@zerodev/sdk 4.0.23 → 4.0.24

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.
@@ -9,8 +9,8 @@ const axios_1 = __importDefault(require("axios"));
9
9
  const utils_js_1 = require("./utils.js");
10
10
  const constants_js_1 = require("../../constants.js");
11
11
  async function getAutocompletePasskeyOwner({ projectId, apiUrl = constants_js_1.API_URL, }) {
12
- if (!PublicKeyCredential.isConditionalMediationAvailable ||
13
- !PublicKeyCredential.isConditionalMediationAvailable()) {
12
+ if (!PublicKeyCredential?.isConditionalMediationAvailable ||
13
+ !PublicKeyCredential?.isConditionalMediationAvailable()) {
14
14
  return;
15
15
  }
16
16
  if (typeof window !== "undefined") {
@@ -1 +1 @@
1
- {"version":3,"file":"getAutocompletePasskeyOwner.js","sourceRoot":"","sources":["../../../../../src/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAmE;AACnE,kDAA0B;AAE1B,yCAMoB;AACpB,qDAA6C;AAEtC,KAAK,UAAU,2BAA2B,CAAC,EAChD,SAAS,EACT,MAAM,GAAG,sBAAO,GAKjB;IAEC,IAAI,CAAC,mBAAmB,CAAC,+BAA+B;QAElD,CAAC,mBAAmB,CAAC,+BAA+B,EAAE,EAAE;QAC1D,OAAO;KACR;IAGH,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,MAAM,SAAS,GAAG,IAAA,+BAAoB,GAAE,CAAC;QACzC,IAAI;YACF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAC1B,MAAM,IAAA,+BAAoB,EAAC,IAAA,0BAAe,EAAC,SAAS,CAAC,EAAE;gBACrD,SAAS,EAAE,aAAa;gBACxB,SAAS,EAAE;oBAET,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;oBAC9B,gBAAgB,EAAE,UAAU;iBAC7B;gBACD,MAAM,EAAE,0BAAe,CAAC,UAAU,CAAC,MAAM;aAC1C,CAAC,CACH,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,IAAI,CAC/B,GAAG,MAAM,aAAa,SAAS,YAAY,SAAS,CAAC,YAAY,EAAE,EACnE;gBACE,SAAS,EAAE,IAAA,0BAAe,EAAC,SAAS,CAAC;gBACrC,SAAS;aACV,CACF,CAAC;YACF,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC;YACtD,MAAM,KAAK,GAAuB;gBAChC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO;gBAC/B,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CACnB,IAAA,sBAAW,EACT,GAAG,EACH,EAAE,EACF,QAAQ,EACR,SAAS,EACT,SAAS,CAAC,YAAY,EACtB,MAAM,CACP;gBACH,aAAa,EAAE,CAAC,MAA2B,EAAE,EAAE,CAC7C,IAAA,wBAAa,EACX,MAAM,EACN,EAAE,EACF,QAAQ,EACR,SAAS,EACT,SAAS,CAAC,YAAY,EACtB,MAAM,CACP;aACJ,CAAC;YACF,OAAO,KAAK,CAAC;SACd;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAChB;KACF;IACD,OAAO;AACT,CAAC;AAjED,kEAiEC","sourcesContent":["import { getWebAuthnAssertion } from \"@turnkey/http/dist/webauthn\";\nimport axios from \"axios\";\nimport type { SignTypedDataParams, SmartAccountSigner } from \"@alchemy/aa-core\";\nimport {\n abortController,\n base64UrlEncode,\n generateRandomBuffer,\n signMessage,\n signTypedData,\n} from \"./utils.js\";\nimport { API_URL } from \"../../constants.js\";\n\nexport async function getAutocompletePasskeyOwner({\n projectId,\n apiUrl = API_URL,\n}: {\n projectId: string;\n name?: string;\n apiUrl?: string;\n}): Promise<SmartAccountSigner | undefined> {\n //@ts-ignore\n if (!PublicKeyCredential.isConditionalMediationAvailable ||\n //@ts-ignore\n !PublicKeyCredential.isConditionalMediationAvailable()) {\n return;\n }\n\n //@ts-expect-error\n if (typeof window !== \"undefined\") {\n const challenge = generateRandomBuffer();\n try {\n const assertion = JSON.parse(\n await getWebAuthnAssertion(base64UrlEncode(challenge), {\n mediation: 'conditional',\n publicKey: {\n //@ts-expect-error\n rpId: window.location.hostname,\n userVerification: \"required\",\n },\n signal: abortController.controller.signal\n })\n );\n const response = await axios.post(\n `${apiUrl}/projects/${projectId}/wallets/${assertion.credentialId}`,\n {\n challenge: base64UrlEncode(challenge),\n assertion,\n }\n );\n const { id, walletId, address } = await response.data;\n const owner: SmartAccountSigner = {\n getAddress: async () => address,\n signMessage: (msg) =>\n signMessage(\n msg,\n id,\n walletId,\n projectId,\n assertion.credentialId,\n apiUrl\n ),\n signTypedData: (params: SignTypedDataParams) =>\n signTypedData(\n params,\n id,\n walletId,\n projectId,\n assertion.credentialId,\n apiUrl\n ),\n };\n return owner;\n } catch (e) {\n console.log(e);\n }\n }\n return;\n}\n"]}
1
+ {"version":3,"file":"getAutocompletePasskeyOwner.js","sourceRoot":"","sources":["../../../../../src/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.ts"],"names":[],"mappings":";;;;;;AAAA,0DAAmE;AACnE,kDAA0B;AAE1B,yCAMoB;AACpB,qDAA6C;AAEtC,KAAK,UAAU,2BAA2B,CAAC,EAChD,SAAS,EACT,MAAM,GAAG,sBAAO,GAKjB;IAEC,IAAI,CAAC,mBAAmB,EAAE,+BAA+B;QAEnD,CAAC,mBAAmB,EAAE,+BAA+B,EAAE,EAAE;QAC3D,OAAO;KACR;IAGH,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,MAAM,SAAS,GAAG,IAAA,+BAAoB,GAAE,CAAC;QACzC,IAAI;YACF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAC1B,MAAM,IAAA,+BAAoB,EAAC,IAAA,0BAAe,EAAC,SAAS,CAAC,EAAE;gBACrD,SAAS,EAAE,aAAa;gBACxB,SAAS,EAAE;oBAET,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;oBAC9B,gBAAgB,EAAE,UAAU;iBAC7B;gBACD,MAAM,EAAE,0BAAe,CAAC,UAAU,CAAC,MAAM;aAC1C,CAAC,CACH,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,IAAI,CAC/B,GAAG,MAAM,aAAa,SAAS,YAAY,SAAS,CAAC,YAAY,EAAE,EACnE;gBACE,SAAS,EAAE,IAAA,0BAAe,EAAC,SAAS,CAAC;gBACrC,SAAS;aACV,CACF,CAAC;YACF,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC;YACtD,MAAM,KAAK,GAAuB;gBAChC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO;gBAC/B,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CACnB,IAAA,sBAAW,EACT,GAAG,EACH,EAAE,EACF,QAAQ,EACR,SAAS,EACT,SAAS,CAAC,YAAY,EACtB,MAAM,CACP;gBACH,aAAa,EAAE,CAAC,MAA2B,EAAE,EAAE,CAC7C,IAAA,wBAAa,EACX,MAAM,EACN,EAAE,EACF,QAAQ,EACR,SAAS,EACT,SAAS,CAAC,YAAY,EACtB,MAAM,CACP;aACJ,CAAC;YACF,OAAO,KAAK,CAAC;SACd;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAChB;KACF;IACD,OAAO;AACT,CAAC;AAjED,kEAiEC","sourcesContent":["import { getWebAuthnAssertion } from \"@turnkey/http/dist/webauthn\";\nimport axios from \"axios\";\nimport type { SignTypedDataParams, SmartAccountSigner } from \"@alchemy/aa-core\";\nimport {\n abortController,\n base64UrlEncode,\n generateRandomBuffer,\n signMessage,\n signTypedData,\n} from \"./utils.js\";\nimport { API_URL } from \"../../constants.js\";\n\nexport async function getAutocompletePasskeyOwner({\n projectId,\n apiUrl = API_URL,\n}: {\n projectId: string;\n name?: string;\n apiUrl?: string;\n}): Promise<SmartAccountSigner | undefined> {\n //@ts-ignore\n if (!PublicKeyCredential?.isConditionalMediationAvailable ||\n //@ts-ignore\n !PublicKeyCredential?.isConditionalMediationAvailable()) {\n return;\n }\n\n //@ts-expect-error\n if (typeof window !== \"undefined\") {\n const challenge = generateRandomBuffer();\n try {\n const assertion = JSON.parse(\n await getWebAuthnAssertion(base64UrlEncode(challenge), {\n mediation: 'conditional',\n publicKey: {\n //@ts-expect-error\n rpId: window.location.hostname,\n userVerification: \"required\",\n },\n signal: abortController.controller.signal\n })\n );\n const response = await axios.post(\n `${apiUrl}/projects/${projectId}/wallets/${assertion.credentialId}`,\n {\n challenge: base64UrlEncode(challenge),\n assertion,\n }\n );\n const { id, walletId, address } = await response.data;\n const owner: SmartAccountSigner = {\n getAddress: async () => address,\n signMessage: (msg) =>\n signMessage(\n msg,\n id,\n walletId,\n projectId,\n assertion.credentialId,\n apiUrl\n ),\n signTypedData: (params: SignTypedDataParams) =>\n signTypedData(\n params,\n id,\n walletId,\n projectId,\n assertion.credentialId,\n apiUrl\n ),\n };\n return owner;\n } catch (e) {\n console.log(e);\n }\n }\n return;\n}\n"]}
@@ -3,8 +3,8 @@ import axios from "axios";
3
3
  import { abortController, base64UrlEncode, generateRandomBuffer, signMessage, signTypedData, } from "./utils.js";
4
4
  import { API_URL } from "../../constants.js";
5
5
  export async function getAutocompletePasskeyOwner({ projectId, apiUrl = API_URL, }) {
6
- if (!PublicKeyCredential.isConditionalMediationAvailable ||
7
- !PublicKeyCredential.isConditionalMediationAvailable()) {
6
+ if (!PublicKeyCredential?.isConditionalMediationAvailable ||
7
+ !PublicKeyCredential?.isConditionalMediationAvailable()) {
8
8
  return;
9
9
  }
10
10
  if (typeof window !== "undefined") {
@@ -1 +1 @@
1
- {"version":3,"file":"getAutocompletePasskeyOwner.js","sourceRoot":"","sources":["../../../../../src/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,EAChD,SAAS,EACT,MAAM,GAAG,OAAO,GAKjB;IAEC,IAAI,CAAC,mBAAmB,CAAC,+BAA+B;QAElD,CAAC,mBAAmB,CAAC,+BAA+B,EAAE,EAAE;QAC1D,OAAO;KACR;IAGH,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;QACzC,IAAI;YACF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAC1B,MAAM,oBAAoB,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;gBACrD,SAAS,EAAE,aAAa;gBACxB,SAAS,EAAE;oBAET,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;oBAC9B,gBAAgB,EAAE,UAAU;iBAC7B;gBACD,MAAM,EAAE,eAAe,CAAC,UAAU,CAAC,MAAM;aAC1C,CAAC,CACH,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAC/B,GAAG,MAAM,aAAa,SAAS,YAAY,SAAS,CAAC,YAAY,EAAE,EACnE;gBACE,SAAS,EAAE,eAAe,CAAC,SAAS,CAAC;gBACrC,SAAS;aACV,CACF,CAAC;YACF,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC;YACtD,MAAM,KAAK,GAAuB;gBAChC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO;gBAC/B,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CACnB,WAAW,CACT,GAAG,EACH,EAAE,EACF,QAAQ,EACR,SAAS,EACT,SAAS,CAAC,YAAY,EACtB,MAAM,CACP;gBACH,aAAa,EAAE,CAAC,MAA2B,EAAE,EAAE,CAC7C,aAAa,CACX,MAAM,EACN,EAAE,EACF,QAAQ,EACR,SAAS,EACT,SAAS,CAAC,YAAY,EACtB,MAAM,CACP;aACJ,CAAC;YACF,OAAO,KAAK,CAAC;SACd;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAChB;KACF;IACD,OAAO;AACT,CAAC","sourcesContent":["import { getWebAuthnAssertion } from \"@turnkey/http/dist/webauthn\";\nimport axios from \"axios\";\nimport type { SignTypedDataParams, SmartAccountSigner } from \"@alchemy/aa-core\";\nimport {\n abortController,\n base64UrlEncode,\n generateRandomBuffer,\n signMessage,\n signTypedData,\n} from \"./utils.js\";\nimport { API_URL } from \"../../constants.js\";\n\nexport async function getAutocompletePasskeyOwner({\n projectId,\n apiUrl = API_URL,\n}: {\n projectId: string;\n name?: string;\n apiUrl?: string;\n}): Promise<SmartAccountSigner | undefined> {\n //@ts-ignore\n if (!PublicKeyCredential.isConditionalMediationAvailable ||\n //@ts-ignore\n !PublicKeyCredential.isConditionalMediationAvailable()) {\n return;\n }\n\n //@ts-expect-error\n if (typeof window !== \"undefined\") {\n const challenge = generateRandomBuffer();\n try {\n const assertion = JSON.parse(\n await getWebAuthnAssertion(base64UrlEncode(challenge), {\n mediation: 'conditional',\n publicKey: {\n //@ts-expect-error\n rpId: window.location.hostname,\n userVerification: \"required\",\n },\n signal: abortController.controller.signal\n })\n );\n const response = await axios.post(\n `${apiUrl}/projects/${projectId}/wallets/${assertion.credentialId}`,\n {\n challenge: base64UrlEncode(challenge),\n assertion,\n }\n );\n const { id, walletId, address } = await response.data;\n const owner: SmartAccountSigner = {\n getAddress: async () => address,\n signMessage: (msg) =>\n signMessage(\n msg,\n id,\n walletId,\n projectId,\n assertion.credentialId,\n apiUrl\n ),\n signTypedData: (params: SignTypedDataParams) =>\n signTypedData(\n params,\n id,\n walletId,\n projectId,\n assertion.credentialId,\n apiUrl\n ),\n };\n return owner;\n } catch (e) {\n console.log(e);\n }\n }\n return;\n}\n"]}
1
+ {"version":3,"file":"getAutocompletePasskeyOwner.js","sourceRoot":"","sources":["../../../../../src/kernel-zerodev/owner/passkey/getAutocompletePasskeyOwner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EACL,eAAe,EACf,eAAe,EACf,oBAAoB,EACpB,WAAW,EACX,aAAa,GACd,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,EAChD,SAAS,EACT,MAAM,GAAG,OAAO,GAKjB;IAEC,IAAI,CAAC,mBAAmB,EAAE,+BAA+B;QAEnD,CAAC,mBAAmB,EAAE,+BAA+B,EAAE,EAAE;QAC3D,OAAO;KACR;IAGH,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QACjC,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;QACzC,IAAI;YACF,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAC1B,MAAM,oBAAoB,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;gBACrD,SAAS,EAAE,aAAa;gBACxB,SAAS,EAAE;oBAET,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;oBAC9B,gBAAgB,EAAE,UAAU;iBAC7B;gBACD,MAAM,EAAE,eAAe,CAAC,UAAU,CAAC,MAAM;aAC1C,CAAC,CACH,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAC/B,GAAG,MAAM,aAAa,SAAS,YAAY,SAAS,CAAC,YAAY,EAAE,EACnE;gBACE,SAAS,EAAE,eAAe,CAAC,SAAS,CAAC;gBACrC,SAAS;aACV,CACF,CAAC;YACF,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC;YACtD,MAAM,KAAK,GAAuB;gBAChC,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO;gBAC/B,WAAW,EAAE,CAAC,GAAG,EAAE,EAAE,CACnB,WAAW,CACT,GAAG,EACH,EAAE,EACF,QAAQ,EACR,SAAS,EACT,SAAS,CAAC,YAAY,EACtB,MAAM,CACP;gBACH,aAAa,EAAE,CAAC,MAA2B,EAAE,EAAE,CAC7C,aAAa,CACX,MAAM,EACN,EAAE,EACF,QAAQ,EACR,SAAS,EACT,SAAS,CAAC,YAAY,EACtB,MAAM,CACP;aACJ,CAAC;YACF,OAAO,KAAK,CAAC;SACd;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SAChB;KACF;IACD,OAAO;AACT,CAAC","sourcesContent":["import { getWebAuthnAssertion } from \"@turnkey/http/dist/webauthn\";\nimport axios from \"axios\";\nimport type { SignTypedDataParams, SmartAccountSigner } from \"@alchemy/aa-core\";\nimport {\n abortController,\n base64UrlEncode,\n generateRandomBuffer,\n signMessage,\n signTypedData,\n} from \"./utils.js\";\nimport { API_URL } from \"../../constants.js\";\n\nexport async function getAutocompletePasskeyOwner({\n projectId,\n apiUrl = API_URL,\n}: {\n projectId: string;\n name?: string;\n apiUrl?: string;\n}): Promise<SmartAccountSigner | undefined> {\n //@ts-ignore\n if (!PublicKeyCredential?.isConditionalMediationAvailable ||\n //@ts-ignore\n !PublicKeyCredential?.isConditionalMediationAvailable()) {\n return;\n }\n\n //@ts-expect-error\n if (typeof window !== \"undefined\") {\n const challenge = generateRandomBuffer();\n try {\n const assertion = JSON.parse(\n await getWebAuthnAssertion(base64UrlEncode(challenge), {\n mediation: 'conditional',\n publicKey: {\n //@ts-expect-error\n rpId: window.location.hostname,\n userVerification: \"required\",\n },\n signal: abortController.controller.signal\n })\n );\n const response = await axios.post(\n `${apiUrl}/projects/${projectId}/wallets/${assertion.credentialId}`,\n {\n challenge: base64UrlEncode(challenge),\n assertion,\n }\n );\n const { id, walletId, address } = await response.data;\n const owner: SmartAccountSigner = {\n getAddress: async () => address,\n signMessage: (msg) =>\n signMessage(\n msg,\n id,\n walletId,\n projectId,\n assertion.credentialId,\n apiUrl\n ),\n signTypedData: (params: SignTypedDataParams) =>\n signTypedData(\n params,\n id,\n walletId,\n projectId,\n assertion.credentialId,\n apiUrl\n ),\n };\n return owner;\n } catch (e) {\n console.log(e);\n }\n }\n return;\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zerodev/sdk",
3
- "version": "4.0.23",
3
+ "version": "4.0.24",
4
4
  "description": "A collection of ERC-4337 compliant smart contract account interfaces",
5
5
  "author": "ZeroDev",
6
6
  "license": "MIT",
@@ -19,9 +19,9 @@ export async function getAutocompletePasskeyOwner({
19
19
  apiUrl?: string;
20
20
  }): Promise<SmartAccountSigner | undefined> {
21
21
  //@ts-ignore
22
- if (!PublicKeyCredential.isConditionalMediationAvailable ||
22
+ if (!PublicKeyCredential?.isConditionalMediationAvailable ||
23
23
  //@ts-ignore
24
- !PublicKeyCredential.isConditionalMediationAvailable()) {
24
+ !PublicKeyCredential?.isConditionalMediationAvailable()) {
25
25
  return;
26
26
  }
27
27