@explorins/pers-signer 1.0.32 → 1.0.34

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.
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Signing status types for type-safe status updates
5
+ * Using const pattern instead of enum for better bundling compatibility
6
+ */
7
+ const SigningStatus = {
8
+ INITIALIZING: 'initializing',
9
+ AUTHENTICATING: 'authenticating',
10
+ PREPARING: 'preparing',
11
+ SIGNING: 'signing',
12
+ SUBMITTING: 'submitting',
13
+ COMPLETED: 'completed',
14
+ ERROR: 'error',
15
+ EXPIRED: 'expired'
16
+ };
17
+
18
+ /**
19
+ * Error codes for transaction signing operations
20
+ */
21
+ exports.TransactionSigningErrorCode = void 0;
22
+ (function (TransactionSigningErrorCode) {
23
+ TransactionSigningErrorCode["INVALID_TOKENS"] = "INVALID_TOKENS";
24
+ TransactionSigningErrorCode["TRANSACTION_NOT_FOUND"] = "TRANSACTION_NOT_FOUND";
25
+ TransactionSigningErrorCode["TRANSACTION_NOT_PENDING"] = "TRANSACTION_NOT_PENDING";
26
+ TransactionSigningErrorCode["WALLET_NOT_AVAILABLE"] = "WALLET_NOT_AVAILABLE";
27
+ TransactionSigningErrorCode["WEBAUTHN_OPERATION_IN_PROGRESS"] = "WEBAUTHN_OPERATION_IN_PROGRESS";
28
+ TransactionSigningErrorCode["SIGNING_CANCELLED"] = "SIGNING_CANCELLED";
29
+ TransactionSigningErrorCode["PERS_AUTH_FAILED"] = "PERS_AUTH_FAILED";
30
+ TransactionSigningErrorCode["AUTH_FAILED"] = "AUTH_FAILED";
31
+ TransactionSigningErrorCode["TRANSACTION_NOT_READY"] = "TRANSACTION_NOT_READY";
32
+ TransactionSigningErrorCode["SUBMISSION_FAILED"] = "SUBMISSION_FAILED";
33
+ TransactionSigningErrorCode["SERVER_ERROR"] = "SERVER_ERROR";
34
+ TransactionSigningErrorCode["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
35
+ })(exports.TransactionSigningErrorCode || (exports.TransactionSigningErrorCode = {}));
36
+
37
+ exports.SigningStatus = SigningStatus;
38
+ //# sourceMappingURL=types.cjs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.cjs.js","sources":["../src/types/status.ts","../src/types/error-types.ts"],"sourcesContent":["/**\r\n * Signing status types for type-safe status updates\r\n * Using const pattern instead of enum for better bundling compatibility\r\n */\r\nexport const SigningStatus = {\r\n INITIALIZING: 'initializing',\r\n AUTHENTICATING: 'authenticating',\r\n PREPARING: 'preparing',\r\n SIGNING: 'signing',\r\n SUBMITTING: 'submitting',\r\n COMPLETED: 'completed',\r\n ERROR: 'error',\r\n EXPIRED: 'expired'\r\n} as const;\r\n\r\n/**\r\n * Type for signing status values\r\n */\r\nexport type SigningStatus = typeof SigningStatus[keyof typeof SigningStatus];\r\n\r\n/**\r\n * Status update data interface\r\n */\r\nexport interface StatusUpdateData {\r\n transactionId?: string;\r\n transactionHash?: string;\r\n error?: string;\r\n [key: string]: any;\r\n}\r\n\r\n/**\r\n * Status update callback interface for tracking transaction progress\r\n * \r\n * @interface StatusCallback\r\n * @property {function} onStatusUpdate - Callback function that receives type-safe status updates\r\n */\r\nexport interface StatusCallback {\r\n onStatusUpdate?: (status: SigningStatus, message: string, data?: StatusUpdateData) => void;\r\n}","/**\r\n * Error codes for transaction signing operations\r\n */\r\nexport enum TransactionSigningErrorCode {\r\n INVALID_TOKENS = 'INVALID_TOKENS',\r\n TRANSACTION_NOT_FOUND = 'TRANSACTION_NOT_FOUND',\r\n TRANSACTION_NOT_PENDING = 'TRANSACTION_NOT_PENDING',\r\n WALLET_NOT_AVAILABLE = 'WALLET_NOT_AVAILABLE',\r\n WEBAUTHN_OPERATION_IN_PROGRESS = 'WEBAUTHN_OPERATION_IN_PROGRESS',\r\n SIGNING_CANCELLED = 'SIGNING_CANCELLED',\r\n PERS_AUTH_FAILED = 'PERS_AUTH_FAILED',\r\n AUTH_FAILED = 'AUTH_FAILED',\r\n TRANSACTION_NOT_READY = 'TRANSACTION_NOT_READY',\r\n SUBMISSION_FAILED = 'SUBMISSION_FAILED',\r\n SERVER_ERROR = 'SERVER_ERROR',\r\n UNKNOWN_ERROR = 'UNKNOWN_ERROR'\r\n}\r\n\r\n/**\r\n * Structured error for transaction signing operations\r\n */\r\nexport interface TransactionSigningError extends Error {\r\n code: TransactionSigningErrorCode;\r\n transactionId?: string;\r\n originalError?: unknown;\r\n}"],"names":["TransactionSigningErrorCode"],"mappings":";;AAAA;;;AAGG;AACU,MAAA,aAAa,GAAG;AAC3B,IAAA,YAAY,EAAE,cAAc;AAC5B,IAAA,cAAc,EAAE,gBAAgB;AAChC,IAAA,SAAS,EAAE,WAAW;AACtB,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,UAAU,EAAE,YAAY;AACxB,IAAA,SAAS,EAAE,WAAW;AACtB,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,OAAO,EAAE;;;ACZX;;AAEG;AACSA;AAAZ,CAAA,UAAY,2BAA2B,EAAA;AACrC,IAAA,2BAAA,CAAA,gBAAA,CAAA,GAAA,gBAAiC;AACjC,IAAA,2BAAA,CAAA,uBAAA,CAAA,GAAA,uBAA+C;AAC/C,IAAA,2BAAA,CAAA,yBAAA,CAAA,GAAA,yBAAmD;AACnD,IAAA,2BAAA,CAAA,sBAAA,CAAA,GAAA,sBAA6C;AAC7C,IAAA,2BAAA,CAAA,gCAAA,CAAA,GAAA,gCAAiE;AACjE,IAAA,2BAAA,CAAA,mBAAA,CAAA,GAAA,mBAAuC;AACvC,IAAA,2BAAA,CAAA,kBAAA,CAAA,GAAA,kBAAqC;AACrC,IAAA,2BAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,2BAAA,CAAA,uBAAA,CAAA,GAAA,uBAA+C;AAC/C,IAAA,2BAAA,CAAA,mBAAA,CAAA,GAAA,mBAAuC;AACvC,IAAA,2BAAA,CAAA,cAAA,CAAA,GAAA,cAA6B;AAC7B,IAAA,2BAAA,CAAA,eAAA,CAAA,GAAA,eAA+B;AACjC,CAAC,EAbWA,mCAA2B,KAA3BA,mCAA2B,GAatC,EAAA,CAAA,CAAA;;;;"}
@@ -0,0 +1,130 @@
1
+ /**
2
+ * Signing status types for type-safe status updates
3
+ * Using const pattern instead of enum for better bundling compatibility
4
+ */
5
+ declare const SigningStatus: {
6
+ readonly INITIALIZING: "initializing";
7
+ readonly AUTHENTICATING: "authenticating";
8
+ readonly PREPARING: "preparing";
9
+ readonly SIGNING: "signing";
10
+ readonly SUBMITTING: "submitting";
11
+ readonly COMPLETED: "completed";
12
+ readonly ERROR: "error";
13
+ readonly EXPIRED: "expired";
14
+ };
15
+ /**
16
+ * Type for signing status values
17
+ */
18
+ type SigningStatus = typeof SigningStatus[keyof typeof SigningStatus];
19
+ /**
20
+ * Status update data interface
21
+ */
22
+ interface StatusUpdateData {
23
+ transactionId?: string;
24
+ transactionHash?: string;
25
+ error?: string;
26
+ [key: string]: any;
27
+ }
28
+ /**
29
+ * Status update callback interface for tracking transaction progress
30
+ *
31
+ * @interface StatusCallback
32
+ * @property {function} onStatusUpdate - Callback function that receives type-safe status updates
33
+ */
34
+ interface StatusCallback {
35
+ onStatusUpdate?: (status: SigningStatus, message: string, data?: StatusUpdateData) => void;
36
+ }
37
+
38
+ /**
39
+ * Error codes for transaction signing operations
40
+ */
41
+ declare enum TransactionSigningErrorCode {
42
+ INVALID_TOKENS = "INVALID_TOKENS",
43
+ TRANSACTION_NOT_FOUND = "TRANSACTION_NOT_FOUND",
44
+ TRANSACTION_NOT_PENDING = "TRANSACTION_NOT_PENDING",
45
+ WALLET_NOT_AVAILABLE = "WALLET_NOT_AVAILABLE",
46
+ WEBAUTHN_OPERATION_IN_PROGRESS = "WEBAUTHN_OPERATION_IN_PROGRESS",
47
+ SIGNING_CANCELLED = "SIGNING_CANCELLED",
48
+ PERS_AUTH_FAILED = "PERS_AUTH_FAILED",
49
+ AUTH_FAILED = "AUTH_FAILED",
50
+ TRANSACTION_NOT_READY = "TRANSACTION_NOT_READY",
51
+ SUBMISSION_FAILED = "SUBMISSION_FAILED",
52
+ SERVER_ERROR = "SERVER_ERROR",
53
+ UNKNOWN_ERROR = "UNKNOWN_ERROR"
54
+ }
55
+ /**
56
+ * Structured error for transaction signing operations
57
+ */
58
+ interface TransactionSigningError extends Error {
59
+ code: TransactionSigningErrorCode;
60
+ transactionId?: string;
61
+ originalError?: unknown;
62
+ }
63
+
64
+ /**
65
+ * Types entry point for the blockchain signer shared library
66
+ *
67
+ * This module exports ONLY types, interfaces, and const enums without
68
+ * any runtime code that would load native modules. Use this for:
69
+ * - React Native apps that need types at compile time
70
+ * - Any environment where early loading of native modules causes issues
71
+ *
72
+ * @example
73
+ * // In React Native SDK (compile-time only, no runtime side effects)
74
+ * import type { SigningStatus, StatusUpdateData, PersSignerConfig } from '@explorins/pers-signer/types';
75
+ *
76
+ * // For the actual SigningStatus const object at runtime:
77
+ * import { SigningStatus } from '@explorins/pers-signer/types';
78
+ *
79
+ * @example
80
+ * // For full SDK (lazy-load from /react-native when native modules are ready)
81
+ * const { createPersSignerSDK } = require('@explorins/pers-signer/react-native');
82
+ */
83
+
84
+ /**
85
+ * Configuration options for the PERS Signer SDK
86
+ */
87
+ interface PersSignerConfig {
88
+ /** Ethereum JSON-RPC provider URL for blockchain interactions */
89
+ ethersProviderUrl?: string;
90
+ /** Name of the relying party for WebAuthn (displayed during passkey prompts) */
91
+ relyingPartyName?: string;
92
+ /** Custom API base URL (defaults to production) */
93
+ apiUrl?: string;
94
+ /** Global status callback for all operations */
95
+ globalStatusCallback?: StatusCallback;
96
+ }
97
+ /**
98
+ * Transaction signing result
99
+ */
100
+ interface TransactionSigningResult {
101
+ success: boolean;
102
+ transactionId: string;
103
+ signature?: string;
104
+ signingData?: unknown;
105
+ error?: string;
106
+ shouldShowStatus?: boolean;
107
+ }
108
+ /**
109
+ * Transaction submission result
110
+ */
111
+ interface SubmissionResult {
112
+ success: boolean;
113
+ transactionHash: string | null;
114
+ shouldRedirect: boolean;
115
+ redirectUrl?: string;
116
+ error?: string;
117
+ submitResult?: unknown;
118
+ }
119
+ /**
120
+ * Authenticated user session data
121
+ */
122
+ interface AuthenticatedUser {
123
+ identifier: string;
124
+ signerAuthToken: string;
125
+ persAccessToken: string;
126
+ expiresAt: number;
127
+ }
128
+
129
+ export { SigningStatus, TransactionSigningErrorCode };
130
+ export type { AuthenticatedUser, PersSignerConfig, StatusCallback, StatusUpdateData, SubmissionResult, TransactionSigningError, TransactionSigningResult };
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Signing status types for type-safe status updates
3
+ * Using const pattern instead of enum for better bundling compatibility
4
+ */
5
+ const SigningStatus = {
6
+ INITIALIZING: 'initializing',
7
+ AUTHENTICATING: 'authenticating',
8
+ PREPARING: 'preparing',
9
+ SIGNING: 'signing',
10
+ SUBMITTING: 'submitting',
11
+ COMPLETED: 'completed',
12
+ ERROR: 'error',
13
+ EXPIRED: 'expired'
14
+ };
15
+
16
+ /**
17
+ * Error codes for transaction signing operations
18
+ */
19
+ var TransactionSigningErrorCode;
20
+ (function (TransactionSigningErrorCode) {
21
+ TransactionSigningErrorCode["INVALID_TOKENS"] = "INVALID_TOKENS";
22
+ TransactionSigningErrorCode["TRANSACTION_NOT_FOUND"] = "TRANSACTION_NOT_FOUND";
23
+ TransactionSigningErrorCode["TRANSACTION_NOT_PENDING"] = "TRANSACTION_NOT_PENDING";
24
+ TransactionSigningErrorCode["WALLET_NOT_AVAILABLE"] = "WALLET_NOT_AVAILABLE";
25
+ TransactionSigningErrorCode["WEBAUTHN_OPERATION_IN_PROGRESS"] = "WEBAUTHN_OPERATION_IN_PROGRESS";
26
+ TransactionSigningErrorCode["SIGNING_CANCELLED"] = "SIGNING_CANCELLED";
27
+ TransactionSigningErrorCode["PERS_AUTH_FAILED"] = "PERS_AUTH_FAILED";
28
+ TransactionSigningErrorCode["AUTH_FAILED"] = "AUTH_FAILED";
29
+ TransactionSigningErrorCode["TRANSACTION_NOT_READY"] = "TRANSACTION_NOT_READY";
30
+ TransactionSigningErrorCode["SUBMISSION_FAILED"] = "SUBMISSION_FAILED";
31
+ TransactionSigningErrorCode["SERVER_ERROR"] = "SERVER_ERROR";
32
+ TransactionSigningErrorCode["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
33
+ })(TransactionSigningErrorCode || (TransactionSigningErrorCode = {}));
34
+
35
+ export { SigningStatus, TransactionSigningErrorCode };
36
+ //# sourceMappingURL=types.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.esm.js","sources":["../src/types/status.ts","../src/types/error-types.ts"],"sourcesContent":["/**\r\n * Signing status types for type-safe status updates\r\n * Using const pattern instead of enum for better bundling compatibility\r\n */\r\nexport const SigningStatus = {\r\n INITIALIZING: 'initializing',\r\n AUTHENTICATING: 'authenticating',\r\n PREPARING: 'preparing',\r\n SIGNING: 'signing',\r\n SUBMITTING: 'submitting',\r\n COMPLETED: 'completed',\r\n ERROR: 'error',\r\n EXPIRED: 'expired'\r\n} as const;\r\n\r\n/**\r\n * Type for signing status values\r\n */\r\nexport type SigningStatus = typeof SigningStatus[keyof typeof SigningStatus];\r\n\r\n/**\r\n * Status update data interface\r\n */\r\nexport interface StatusUpdateData {\r\n transactionId?: string;\r\n transactionHash?: string;\r\n error?: string;\r\n [key: string]: any;\r\n}\r\n\r\n/**\r\n * Status update callback interface for tracking transaction progress\r\n * \r\n * @interface StatusCallback\r\n * @property {function} onStatusUpdate - Callback function that receives type-safe status updates\r\n */\r\nexport interface StatusCallback {\r\n onStatusUpdate?: (status: SigningStatus, message: string, data?: StatusUpdateData) => void;\r\n}","/**\r\n * Error codes for transaction signing operations\r\n */\r\nexport enum TransactionSigningErrorCode {\r\n INVALID_TOKENS = 'INVALID_TOKENS',\r\n TRANSACTION_NOT_FOUND = 'TRANSACTION_NOT_FOUND',\r\n TRANSACTION_NOT_PENDING = 'TRANSACTION_NOT_PENDING',\r\n WALLET_NOT_AVAILABLE = 'WALLET_NOT_AVAILABLE',\r\n WEBAUTHN_OPERATION_IN_PROGRESS = 'WEBAUTHN_OPERATION_IN_PROGRESS',\r\n SIGNING_CANCELLED = 'SIGNING_CANCELLED',\r\n PERS_AUTH_FAILED = 'PERS_AUTH_FAILED',\r\n AUTH_FAILED = 'AUTH_FAILED',\r\n TRANSACTION_NOT_READY = 'TRANSACTION_NOT_READY',\r\n SUBMISSION_FAILED = 'SUBMISSION_FAILED',\r\n SERVER_ERROR = 'SERVER_ERROR',\r\n UNKNOWN_ERROR = 'UNKNOWN_ERROR'\r\n}\r\n\r\n/**\r\n * Structured error for transaction signing operations\r\n */\r\nexport interface TransactionSigningError extends Error {\r\n code: TransactionSigningErrorCode;\r\n transactionId?: string;\r\n originalError?: unknown;\r\n}"],"names":[],"mappings":"AAAA;;;AAGG;AACU,MAAA,aAAa,GAAG;AAC3B,IAAA,YAAY,EAAE,cAAc;AAC5B,IAAA,cAAc,EAAE,gBAAgB;AAChC,IAAA,SAAS,EAAE,WAAW;AACtB,IAAA,OAAO,EAAE,SAAS;AAClB,IAAA,UAAU,EAAE,YAAY;AACxB,IAAA,SAAS,EAAE,WAAW;AACtB,IAAA,KAAK,EAAE,OAAO;AACd,IAAA,OAAO,EAAE;;;ACZX;;AAEG;IACS;AAAZ,CAAA,UAAY,2BAA2B,EAAA;AACrC,IAAA,2BAAA,CAAA,gBAAA,CAAA,GAAA,gBAAiC;AACjC,IAAA,2BAAA,CAAA,uBAAA,CAAA,GAAA,uBAA+C;AAC/C,IAAA,2BAAA,CAAA,yBAAA,CAAA,GAAA,yBAAmD;AACnD,IAAA,2BAAA,CAAA,sBAAA,CAAA,GAAA,sBAA6C;AAC7C,IAAA,2BAAA,CAAA,gCAAA,CAAA,GAAA,gCAAiE;AACjE,IAAA,2BAAA,CAAA,mBAAA,CAAA,GAAA,mBAAuC;AACvC,IAAA,2BAAA,CAAA,kBAAA,CAAA,GAAA,kBAAqC;AACrC,IAAA,2BAAA,CAAA,aAAA,CAAA,GAAA,aAA2B;AAC3B,IAAA,2BAAA,CAAA,uBAAA,CAAA,GAAA,uBAA+C;AAC/C,IAAA,2BAAA,CAAA,mBAAA,CAAA,GAAA,mBAAuC;AACvC,IAAA,2BAAA,CAAA,cAAA,CAAA,GAAA,cAA6B;AAC7B,IAAA,2BAAA,CAAA,eAAA,CAAA,GAAA,eAA+B;AACjC,CAAC,EAbW,2BAA2B,KAA3B,2BAA2B,GAatC,EAAA,CAAA,CAAA;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@explorins/pers-signer",
3
- "version": "1.0.32",
3
+ "version": "1.0.34",
4
4
  "description": "PERS blockchain signer SDK with WebAuthn authentication and transaction signing",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs.js",
@@ -56,6 +56,11 @@
56
56
  "import": "./dist/react-native.esm.js",
57
57
  "require": "./dist/react-native.cjs.js",
58
58
  "types": "./dist/react-native.d.ts"
59
+ },
60
+ "./types": {
61
+ "import": "./dist/types.esm.js",
62
+ "require": "./dist/types.cjs.js",
63
+ "types": "./dist/types.d.ts"
59
64
  }
60
65
  },
61
66
  "files": [