@n1xyz/wallet-widget 0.0.33-alpha.3 → 0.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.
Files changed (216) hide show
  1. package/dist/animations/N1Loader.js +8 -14
  2. package/dist/animations/N1Loader.js.map +1 -1
  3. package/dist/animations/Processing.js +8 -14
  4. package/dist/animations/Processing.js.map +1 -1
  5. package/dist/components/LoadingFallback.js +2 -6
  6. package/dist/components/LoadingFallback.js.map +1 -1
  7. package/dist/components/Logo.js +22 -25
  8. package/dist/components/Logo.js.map +1 -1
  9. package/dist/components/N1ConnectButton.js +12 -18
  10. package/dist/components/N1ConnectButton.js.map +1 -1
  11. package/dist/components/logos/ArbitrumLogo.js +3 -7
  12. package/dist/components/logos/ArbitrumLogo.js.map +1 -1
  13. package/dist/components/logos/BaseLogo.js +3 -7
  14. package/dist/components/logos/BaseLogo.js.map +1 -1
  15. package/dist/components/logos/BeraLogo.js +3 -7
  16. package/dist/components/logos/BeraLogo.js.map +1 -1
  17. package/dist/components/logos/BitcoinLogo.js +3 -7
  18. package/dist/components/logos/BitcoinLogo.js.map +1 -1
  19. package/dist/components/logos/EthereumLogo.js +3 -7
  20. package/dist/components/logos/EthereumLogo.js.map +1 -1
  21. package/dist/components/logos/HyperliquidLogo.js +3 -7
  22. package/dist/components/logos/HyperliquidLogo.js.map +1 -1
  23. package/dist/components/logos/OptimismLogo.js +3 -7
  24. package/dist/components/logos/OptimismLogo.js.map +1 -1
  25. package/dist/components/logos/SolanaLogo.js +3 -7
  26. package/dist/components/logos/SolanaLogo.js.map +1 -1
  27. package/dist/components/logos/ZeroOneLogo.js +3 -7
  28. package/dist/components/logos/ZeroOneLogo.js.map +1 -1
  29. package/dist/components/logos/index.js +9 -25
  30. package/dist/components/logos/index.js.map +1 -1
  31. package/dist/config/dynamic.d.ts +1 -0
  32. package/dist/config/dynamic.js +13 -0
  33. package/dist/config/dynamic.js.map +1 -0
  34. package/dist/config/solana.js +3 -7
  35. package/dist/config/solana.js.map +1 -1
  36. package/dist/config/turnkey.d.ts +2 -0
  37. package/dist/config/turnkey.js +35 -0
  38. package/dist/config/turnkey.js.map +1 -0
  39. package/dist/config.js +2 -5
  40. package/dist/config.js.map +1 -1
  41. package/dist/context/n1-wallet-context.js +4 -8
  42. package/dist/context/n1-wallet-context.js.map +1 -1
  43. package/dist/errors/types.js +3 -6
  44. package/dist/errors/types.js.map +1 -1
  45. package/dist/features/onboarding-flow/N1WalletModal.js +23 -59
  46. package/dist/features/onboarding-flow/N1WalletModal.js.map +1 -1
  47. package/dist/features/onboarding-flow/OnboardingFlow.js +46 -50
  48. package/dist/features/onboarding-flow/OnboardingFlow.js.map +1 -1
  49. package/dist/features/onboarding-flow/components/ChainButton.js +4 -7
  50. package/dist/features/onboarding-flow/components/ChainButton.js.map +1 -1
  51. package/dist/features/onboarding-flow/components/Header.js +11 -15
  52. package/dist/features/onboarding-flow/components/Header.js.map +1 -1
  53. package/dist/features/onboarding-flow/components/ImageWithFallback.js +6 -10
  54. package/dist/features/onboarding-flow/components/ImageWithFallback.js.map +1 -1
  55. package/dist/features/onboarding-flow/components/TransactionTable.js +10 -13
  56. package/dist/features/onboarding-flow/components/TransactionTable.js.map +1 -1
  57. package/dist/features/onboarding-flow/components/WaitingMessage.js +8 -14
  58. package/dist/features/onboarding-flow/components/WaitingMessage.js.map +1 -1
  59. package/dist/features/onboarding-flow/components/index.js +5 -21
  60. package/dist/features/onboarding-flow/components/index.js.map +1 -1
  61. package/dist/features/onboarding-flow/index.js +1 -5
  62. package/dist/features/onboarding-flow/index.js.map +1 -1
  63. package/dist/features/onboarding-flow/providers/DepositFlowProvider.js +55 -60
  64. package/dist/features/onboarding-flow/providers/DepositFlowProvider.js.map +1 -1
  65. package/dist/features/onboarding-flow/providers/OnboardingStateProvider.js +43 -48
  66. package/dist/features/onboarding-flow/providers/OnboardingStateProvider.js.map +1 -1
  67. package/dist/features/onboarding-flow/providers/StateProvider.js +7 -11
  68. package/dist/features/onboarding-flow/providers/StateProvider.js.map +1 -1
  69. package/dist/features/onboarding-flow/providers/WalletConnectionProvider.js +69 -74
  70. package/dist/features/onboarding-flow/providers/WalletConnectionProvider.js.map +1 -1
  71. package/dist/features/onboarding-flow/providers/debug.js +18 -21
  72. package/dist/features/onboarding-flow/providers/debug.js.map +1 -1
  73. package/dist/features/onboarding-flow/providers/index.js +5 -16
  74. package/dist/features/onboarding-flow/providers/index.js.map +1 -1
  75. package/dist/features/onboarding-flow/providers/onboardingStateMachine.js +15 -20
  76. package/dist/features/onboarding-flow/providers/onboardingStateMachine.js.map +1 -1
  77. package/dist/features/onboarding-flow/screens/01-ConnectWalletScreen.js +8 -11
  78. package/dist/features/onboarding-flow/screens/01-ConnectWalletScreen.js.map +1 -1
  79. package/dist/features/onboarding-flow/screens/02-ChainSelectionScreen.js +34 -38
  80. package/dist/features/onboarding-flow/screens/02-ChainSelectionScreen.js.map +1 -1
  81. package/dist/features/onboarding-flow/screens/02-TurnkeyAuthScreen.d.ts +1 -0
  82. package/dist/features/onboarding-flow/screens/02-TurnkeyAuthScreen.js +18 -0
  83. package/dist/features/onboarding-flow/screens/02-TurnkeyAuthScreen.js.map +1 -0
  84. package/dist/features/onboarding-flow/screens/03-AmountInputScreen.js +47 -51
  85. package/dist/features/onboarding-flow/screens/03-AmountInputScreen.js.map +1 -1
  86. package/dist/features/onboarding-flow/screens/03-TurnkeyPreparingScreen.d.ts +1 -0
  87. package/dist/features/onboarding-flow/screens/03-TurnkeyPreparingScreen.js +18 -0
  88. package/dist/features/onboarding-flow/screens/03-TurnkeyPreparingScreen.js.map +1 -0
  89. package/dist/features/onboarding-flow/screens/04-ChainSelectionScreen.d.ts +31 -0
  90. package/dist/features/onboarding-flow/screens/04-ChainSelectionScreen.js +100 -0
  91. package/dist/features/onboarding-flow/screens/04-ChainSelectionScreen.js.map +1 -0
  92. package/dist/features/onboarding-flow/screens/04-DepositProgressScreen.js +8 -12
  93. package/dist/features/onboarding-flow/screens/04-DepositProgressScreen.js.map +1 -1
  94. package/dist/features/onboarding-flow/screens/05-AmountInputScreen.d.ts +6 -0
  95. package/dist/features/onboarding-flow/screens/05-AmountInputScreen.js +360 -0
  96. package/dist/features/onboarding-flow/screens/05-AmountInputScreen.js.map +1 -0
  97. package/dist/features/onboarding-flow/screens/05-DepositSuccessScreen.js +25 -28
  98. package/dist/features/onboarding-flow/screens/05-DepositSuccessScreen.js.map +1 -1
  99. package/dist/features/onboarding-flow/screens/06-AuthLoadingScreen.js +10 -13
  100. package/dist/features/onboarding-flow/screens/06-AuthLoadingScreen.js.map +1 -1
  101. package/dist/features/onboarding-flow/screens/06-DepositProgressScreen.d.ts +3 -0
  102. package/dist/features/onboarding-flow/screens/06-DepositProgressScreen.js +31 -0
  103. package/dist/features/onboarding-flow/screens/06-DepositProgressScreen.js.map +1 -0
  104. package/dist/features/onboarding-flow/screens/07-DepositSuccessScreen.d.ts +1 -0
  105. package/dist/features/onboarding-flow/screens/07-DepositSuccessScreen.js +136 -0
  106. package/dist/features/onboarding-flow/screens/07-DepositSuccessScreen.js.map +1 -0
  107. package/dist/features/onboarding-flow/screens/07-ErrorScreen.js +7 -10
  108. package/dist/features/onboarding-flow/screens/07-ErrorScreen.js.map +1 -1
  109. package/dist/features/onboarding-flow/screens/08-AuthLoadingScreen.d.ts +1 -0
  110. package/dist/features/onboarding-flow/screens/08-AuthLoadingScreen.js +31 -0
  111. package/dist/features/onboarding-flow/screens/08-AuthLoadingScreen.js.map +1 -0
  112. package/dist/features/onboarding-flow/screens/08-TurnkeyAuthScreen.d.ts +1 -0
  113. package/dist/features/onboarding-flow/screens/08-TurnkeyAuthScreen.js +18 -0
  114. package/dist/features/onboarding-flow/screens/08-TurnkeyAuthScreen.js.map +1 -0
  115. package/dist/features/onboarding-flow/screens/09-ErrorScreen.d.ts +1 -0
  116. package/dist/features/onboarding-flow/screens/09-ErrorScreen.js +14 -0
  117. package/dist/features/onboarding-flow/screens/09-ErrorScreen.js.map +1 -0
  118. package/dist/features/onboarding-flow/screens/09-TurnkeyPreparingScreen.d.ts +1 -0
  119. package/dist/features/onboarding-flow/screens/09-TurnkeyPreparingScreen.js +18 -0
  120. package/dist/features/onboarding-flow/screens/09-TurnkeyPreparingScreen.js.map +1 -0
  121. package/dist/features/onboarding-flow/screens/TurnkeyAuthScreen.d.ts +1 -0
  122. package/dist/features/onboarding-flow/screens/TurnkeyAuthScreen.js +18 -0
  123. package/dist/features/onboarding-flow/screens/TurnkeyAuthScreen.js.map +1 -0
  124. package/dist/features/onboarding-flow/screens/TurnkeyPreparingScreen.d.ts +1 -0
  125. package/dist/features/onboarding-flow/screens/TurnkeyPreparingScreen.js +18 -0
  126. package/dist/features/onboarding-flow/screens/TurnkeyPreparingScreen.js.map +1 -0
  127. package/dist/features/onboarding-flow/screens/index.js +7 -23
  128. package/dist/features/onboarding-flow/screens/index.js.map +1 -1
  129. package/dist/features/onboarding-flow/types.js +3 -6
  130. package/dist/features/onboarding-flow/types.js.map +1 -1
  131. package/dist/features/onboarding-flow/utils/depositStorage.js +3 -8
  132. package/dist/features/onboarding-flow/utils/depositStorage.js.map +1 -1
  133. package/dist/features/onboarding-flow/utils/imageUtils.js +3 -9
  134. package/dist/features/onboarding-flow/utils/imageUtils.js.map +1 -1
  135. package/dist/features/onboarding-flow/utils/nordUser.js +2 -38
  136. package/dist/features/onboarding-flow/utils/nordUser.js.map +1 -1
  137. package/dist/features/onboarding-flow/utils/nordUtils.js +5 -12
  138. package/dist/features/onboarding-flow/utils/nordUtils.js.map +1 -1
  139. package/dist/features/onboarding-flow/utils/session.js +14 -17
  140. package/dist/features/onboarding-flow/utils/session.js.map +1 -1
  141. package/dist/features/onboarding-flow/utils/transaction.js +1 -4
  142. package/dist/features/onboarding-flow/utils/transaction.js.map +1 -1
  143. package/dist/features/onboarding-flow/utils/utils.js +8 -16
  144. package/dist/features/onboarding-flow/utils/utils.js.map +1 -1
  145. package/dist/features/onboarding-flow/utils/withImageFallback.js +9 -15
  146. package/dist/features/onboarding-flow/utils/withImageFallback.js.map +1 -1
  147. package/dist/features/turnkey/createTurnkeyWallet.d.ts +25 -0
  148. package/dist/features/turnkey/createTurnkeyWallet.js +119 -0
  149. package/dist/features/turnkey/createTurnkeyWallet.js.map +1 -0
  150. package/dist/hooks/index.js +2 -18
  151. package/dist/hooks/index.js.map +1 -1
  152. package/dist/hooks/useN1Wallet.js +6 -10
  153. package/dist/hooks/useN1Wallet.js.map +1 -1
  154. package/dist/hooks/useNordUserInitialization.js +31 -34
  155. package/dist/hooks/useNordUserInitialization.js.map +1 -1
  156. package/dist/index.js +7 -21
  157. package/dist/index.js.map +1 -1
  158. package/dist/{styles/main.css → main.css} +2 -2
  159. package/dist/polyfills/windowEthereumGuard.js +1 -2
  160. package/dist/polyfills/windowEthereumGuard.js.map +1 -1
  161. package/dist/providers/LazyWalletProvider.js +38 -74
  162. package/dist/providers/LazyWalletProvider.js.map +1 -1
  163. package/dist/providers/N1WalletProvider.js +70 -109
  164. package/dist/providers/N1WalletProvider.js.map +1 -1
  165. package/dist/providers/ShadowRootWrapper.js +4 -10
  166. package/dist/providers/ShadowRootWrapper.js.map +1 -1
  167. package/dist/providers/TurnkeyProviderBridge.d.ts +7 -0
  168. package/dist/providers/TurnkeyProviderBridge.js +20 -0
  169. package/dist/providers/TurnkeyProviderBridge.js.map +1 -0
  170. package/dist/providers/WalletErrorBoundary.js +6 -11
  171. package/dist/providers/WalletErrorBoundary.js.map +1 -1
  172. package/dist/styles/embedded-main-css.d.ts +1 -1
  173. package/dist/styles/embedded-main-css.js +1 -3
  174. package/dist/styles/embedded-main-css.js.map +1 -1
  175. package/dist/turnkey/TurnkeyProvider.d.ts +9 -0
  176. package/dist/turnkey/TurnkeyProvider.js +378 -0
  177. package/dist/turnkey/TurnkeyProvider.js.map +1 -0
  178. package/dist/turnkey/createWalletProvider.d.ts +3 -0
  179. package/dist/turnkey/createWalletProvider.js +180 -0
  180. package/dist/turnkey/createWalletProvider.js.map +1 -0
  181. package/dist/turnkey/index.d.ts +3 -0
  182. package/dist/turnkey/index.js +3 -0
  183. package/dist/turnkey/index.js.map +1 -0
  184. package/dist/turnkey/types.d.ts +48 -0
  185. package/dist/turnkey/types.js +8 -0
  186. package/dist/turnkey/types.js.map +1 -0
  187. package/dist/types/wallet.js +4 -7
  188. package/dist/types/wallet.js.map +1 -1
  189. package/dist/utils/ed25519.js +14 -20
  190. package/dist/utils/ed25519.js.map +1 -1
  191. package/dist/utils/getPseudoName.js +7 -10
  192. package/dist/utils/getPseudoName.js.map +1 -1
  193. package/dist/utils/logger.js +3 -5
  194. package/dist/utils/logger.js.map +1 -1
  195. package/dist/utils/shortenString.js +2 -6
  196. package/dist/utils/shortenString.js.map +1 -1
  197. package/dist/utils/turnkeySessionStorage.d.ts +3 -0
  198. package/dist/utils/turnkeySessionStorage.js +33 -0
  199. package/dist/utils/turnkeySessionStorage.js.map +1 -0
  200. package/dist/utils/words.js +1 -4
  201. package/dist/utils/words.js.map +1 -1
  202. package/package.json +3 -3
  203. package/dist/assets/fonts/apk-galeria/APK-Galeria-Bold-Italic-Trial.otf +0 -0
  204. package/dist/assets/fonts/apk-galeria/APK-Galeria-Bold-Trial.otf +0 -0
  205. package/dist/assets/fonts/apk-galeria/APK-Galeria-Extra-Bold-Italic-Trial.otf +0 -0
  206. package/dist/assets/fonts/apk-galeria/APK-Galeria-Extra-Bold-Trial.otf +0 -0
  207. package/dist/assets/fonts/apk-galeria/APK-Galeria-Light-Italic-Trial.otf +0 -0
  208. package/dist/assets/fonts/apk-galeria/APK-Galeria-Light-Trial.otf +0 -0
  209. package/dist/assets/fonts/apk-galeria/APK-Galeria-Medium-Italic-Trial.otf +0 -0
  210. package/dist/assets/fonts/apk-galeria/APK-Galeria-Medium-Trial.otf +0 -0
  211. package/dist/assets/fonts/apk-galeria/APK-Galeria-Regular-Italic-Trial.otf +0 -0
  212. package/dist/assets/fonts/apk-galeria/APK-Galeria-Regular-Trial.otf +0 -0
  213. package/dist/assets/fonts/apk-galeria/APK-Galeria-Semi-Bold-Italic-Trial.otf +0 -0
  214. package/dist/assets/fonts/apk-galeria/APK-Galeria-Semi-Bold-Trial.otf +0 -0
  215. package/dist/assets/fonts/apk-galeria/APK-Galeria-Thin-Italic-Trial.otf +0 -0
  216. package/dist/assets/fonts/apk-galeria/APK-Galeria-Thin-Trial.otf +0 -0
@@ -0,0 +1,48 @@
1
+ import type { CreateWalletParams, SignMessageParams, Wallet } from "@turnkey/core";
2
+ import type { Session, v1SignRawPayloadResult } from "@turnkey/sdk-types";
3
+ export interface TurnkeyProviderConfig {
4
+ organizationId: string;
5
+ authProxyConfigId: string;
6
+ authProxyUrl?: string;
7
+ apiBaseUrl?: string;
8
+ /**
9
+ * Optional session length to use when stamping logins,
10
+ * expressed in seconds (string per Turnkey API expectations).
11
+ */
12
+ sessionExpirationSeconds?: string;
13
+ }
14
+ export declare enum AuthState {
15
+ Unauthenticated = "unauthenticated",
16
+ Authenticating = "authenticating",
17
+ Authenticated = "authenticated"
18
+ }
19
+ export interface TurnkeySession extends Session {
20
+ sessionKey: string;
21
+ }
22
+ export interface DynamicEvmWallet {
23
+ id?: string;
24
+ key?: string;
25
+ address?: string | null;
26
+ chain?: string | null;
27
+ signMessage?: (message: string) => Promise<string | undefined>;
28
+ connector?: {
29
+ name?: string;
30
+ key?: string;
31
+ metadata?: {
32
+ icon?: string;
33
+ };
34
+ getNetwork?: () => Promise<string | number | undefined>;
35
+ signMessage?: (message: string, withAddress?: string) => Promise<string | undefined>;
36
+ };
37
+ }
38
+ export interface TurnkeyContextValue {
39
+ authState: AuthState;
40
+ session: TurnkeySession | null;
41
+ wallets: Wallet[];
42
+ createWallet: (params: CreateWalletParams) => Promise<unknown>;
43
+ refreshWallets: () => Promise<Wallet[]>;
44
+ signMessage: (params: SignMessageParams) => Promise<v1SignRawPayloadResult>;
45
+ loginWithWallet: (wallet: DynamicEvmWallet, options?: {
46
+ sessionKey?: string;
47
+ }) => Promise<void>;
48
+ }
@@ -0,0 +1,8 @@
1
+ "use client";
2
+ export var AuthState;
3
+ (function (AuthState) {
4
+ AuthState["Unauthenticated"] = "unauthenticated";
5
+ AuthState["Authenticating"] = "authenticating";
6
+ AuthState["Authenticated"] = "authenticated";
7
+ })(AuthState || (AuthState = {}));
8
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/turnkey/types.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAqBb,MAAM,CAAN,IAAY,SAIX;AAJD,WAAY,SAAS;IACnB,gDAAmC,CAAA;IACnC,8CAAiC,CAAA;IACjC,4CAA+B,CAAA;AACjC,CAAC,EAJW,SAAS,KAAT,SAAS,QAIpB","sourcesContent":["\"use client\";\n\nimport type {\n CreateWalletParams,\n SignMessageParams,\n Wallet,\n} from \"@turnkey/core\";\nimport type { Session, v1SignRawPayloadResult } from \"@turnkey/sdk-types\";\n\nexport interface TurnkeyProviderConfig {\n organizationId: string;\n authProxyConfigId: string;\n authProxyUrl?: string;\n apiBaseUrl?: string;\n /**\n * Optional session length to use when stamping logins,\n * expressed in seconds (string per Turnkey API expectations).\n */\n sessionExpirationSeconds?: string;\n}\n\nexport enum AuthState {\n Unauthenticated = \"unauthenticated\",\n Authenticating = \"authenticating\",\n Authenticated = \"authenticated\",\n}\n\nexport interface TurnkeySession extends Session {\n sessionKey: string;\n}\n\nexport interface DynamicEvmWallet {\n id?: string;\n key?: string;\n address?: string | null;\n chain?: string | null;\n signMessage?: (message: string) => Promise<string | undefined>;\n connector?: {\n name?: string;\n key?: string;\n metadata?: {\n icon?: string;\n };\n getNetwork?: () => Promise<string | number | undefined>;\n signMessage?: (\n message: string,\n withAddress?: string,\n ) => Promise<string | undefined>;\n };\n}\n\nexport interface TurnkeyContextValue {\n authState: AuthState;\n session: TurnkeySession | null;\n wallets: Wallet[];\n createWallet: (params: CreateWalletParams) => Promise<unknown>;\n refreshWallets: () => Promise<Wallet[]>;\n signMessage: (params: SignMessageParams) => Promise<v1SignRawPayloadResult>;\n loginWithWallet: (\n wallet: DynamicEvmWallet,\n options?: { sessionKey?: string },\n ) => Promise<void>;\n}\n"]}
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.N1SessionMode = exports.N1ModalViewMode = void 0;
4
- var N1ModalViewMode;
1
+ export var N1ModalViewMode;
5
2
  (function (N1ModalViewMode) {
6
3
  N1ModalViewMode[N1ModalViewMode["Connect"] = 0] = "Connect";
7
4
  N1ModalViewMode[N1ModalViewMode["CreateSession"] = 1] = "CreateSession";
@@ -16,9 +13,9 @@ var N1ModalViewMode;
16
13
  N1ModalViewMode[N1ModalViewMode["AuthLoading"] = 1] = "AuthLoading";
17
14
  N1ModalViewMode[N1ModalViewMode["FinalSuccess"] = 4] = "FinalSuccess";
18
15
  N1ModalViewMode[N1ModalViewMode["Automatic"] = 99] = "Automatic";
19
- })(N1ModalViewMode || (exports.N1ModalViewMode = N1ModalViewMode = {}));
20
- var N1SessionMode;
16
+ })(N1ModalViewMode || (N1ModalViewMode = {}));
17
+ export var N1SessionMode;
21
18
  (function (N1SessionMode) {
22
19
  N1SessionMode[N1SessionMode["Nord"] = 0] = "Nord";
23
- })(N1SessionMode || (exports.N1SessionMode = N1SessionMode = {}));
20
+ })(N1SessionMode || (N1SessionMode = {}));
24
21
  //# sourceMappingURL=wallet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/types/wallet.ts"],"names":[],"mappings":";;;AAGA,IAAY,eAcX;AAdD,WAAY,eAAe;IACzB,2DAAW,CAAA;IACX,uEAAiB,CAAA;IACjB,2DAAW,CAAA;IACX,qEAAgB,CAAA;IAChB,2DAAW,CAAA;IACX,yEAAkB,CAAA;IAClB,yEAAkB,CAAA;IAClB,uDAAS,CAAA;IACT,mEAA0B,CAAA;IAC1B,2EAAyB,CAAA;IACzB,mEAA2B,CAAA;IAC3B,qEAAsB,CAAA;IACtB,gEAAc,CAAA;AAChB,CAAC,EAdW,eAAe,+BAAf,eAAe,QAc1B;AAED,IAAY,aAEX;AAFD,WAAY,aAAa;IACvB,iDAAI,CAAA;AACN,CAAC,EAFW,aAAa,6BAAb,aAAa,QAExB","sourcesContent":["import type { WalletError } from '../errors/types';\nimport type { Nord } from '@n1xyz/nord-ts';\n\nexport enum N1ModalViewMode {\n Connect = 0,\n CreateSession = 1,\n Signing = 2,\n CreatingUser = 3,\n Success = 4,\n ChainSelection = 6,\n DepositSuccess = 7,\n Error = 8,\n AmountInput = CreatingUser,\n DepositProgress = Signing,\n AuthLoading = CreateSession,\n FinalSuccess = Success,\n Automatic = 99,\n}\n\nexport enum N1SessionMode {\n Nord,\n}\n\nexport interface CssColorOverride {\n color: string; // Color to find in CSS (e.g. '#3b82f6')\n replacement: string; // Replacement color (e.g. '#afafaf')\n}\n\nexport interface N1WalletProviderProps {\n children: React.ReactNode;\n providedSessionMode: N1SessionMode;\n onError?: (error: WalletError) => void;\n nord?: Nord | null;\n /**\n * Optional array of color overrides: [{color: '#original', replacement: '#new'}]\n */\n colorOverrides?: CssColorOverride[];\n /**\n * If true, skip the final success screen and immediately call onDone\n */\n skipFinalScreen?: boolean;\n}\n\nexport interface Balance {\n mint: string;\n balance: bigint;\n appType: string;\n}\n\nexport interface N1NordFunctions {\n // Market information functions\n getMarkets: () => Promise<any[]>;\n getOrderbook: (symbol: string) => Promise<any>;\n getTrades: (params: any) => Promise<any>;\n getMarketsStats: () => Promise<any>;\n\n // Trading functions\n placeOrder: (params: {\n sessionId: bigint | string;\n marketId: number;\n side: 'BUY' | 'SELL';\n fillMode: 'GTC' | 'IOC' | 'FOK' | 'POST_ONLY';\n isReduceOnly: boolean;\n size?: number | string;\n price?: number | string;\n quoteSize?: number | string;\n clientOrderId?: bigint | string;\n }) => Promise<bigint | undefined>;\n\n cancelOrder: (params: {\n sessionId: bigint | string;\n orderId: bigint | string;\n }) => Promise<bigint>;\n\n // Account management\n createSession: (params: {\n userPubkey: Uint8Array;\n sessionPubkey: Uint8Array;\n expiryTimestamp?: bigint;\n }) => Promise<bigint>;\n\n revokeSession: (params: { sessionId: bigint | string }) => Promise<void>;\n\n withdraw: (params: {\n sessionId: bigint | string;\n tokenId: number;\n amount: number;\n }) => Promise<void>;\n\n transfer: (params: {\n sessionId: bigint | string;\n fromAccountId: number;\n toAccountId?: number;\n tokenId: number;\n tokenDecimals: number;\n amount: number | string;\n }) => Promise<number | undefined>;\n\n // Blockchain information\n getTimestamp: () => Promise<bigint>;\n getActionNonce: () => Promise<number>;\n\n // Block and action queries\n queryBlock: (query: any) => Promise<any>;\n queryLastNBlocks: () => Promise<any>;\n queryRecentBlocks: (last_n: number) => Promise<any>;\n queryAction: (query: any) => Promise<any>;\n queryRecentActions: (last_n: number) => Promise<any>;\n getActions: (fromActionId: number, toActionId: number) => Promise<any>;\n}\n\nexport interface N1WalletState {\n address: string;\n balances: Balance[];\n chain: string;\n isConnected: boolean;\n sessionMode: N1SessionMode;\n sessionPubKey: Uint8Array | null;\n setShowLogin: (show: boolean) => void;\n startDepositFlow: () => boolean;\n setViewMode: (mode: N1ModalViewMode) => void;\n showLogin: boolean;\n signMessageWithSessionKey: ((message: any) => Promise<any>) | null;\n signMessageWithWalletKey: ((message: any) => Promise<any>) | null;\n signTransactionWithWalletKey: ((transaction: any) => Promise<any>) | null;\n userChain: string | null;\n username: string;\n viewMode: N1ModalViewMode;\n walletPubKey: Uint8Array | null;\n throwTestError: () => Promise<void>;\n nord?: Nord | null;\n nordUser?: any;\n disconnectWallet: () => void;\n}\n\nexport interface N1InternalWalletState {\n dynamicHandleLogOut: any;\n dynamicWallet: any;\n loading: boolean;\n dynamicSdkHasLoaded: any;\n handleError: (error: WalletError) => void;\n setDynamicSdkHasLoaded: (loaded: any) => void;\n setAddress: (address: string) => void;\n setBalances: (balances: Balance[]) => void;\n setChain: (chain: string) => void;\n setDynamicHandleLogOut: (handler: any) => void;\n setDynamicWallet: (wallet: any) => void;\n setIsConnected: (connected: boolean) => void;\n setLoading: (loading: boolean) => void;\n blockModalReopen: (duration?: number) => void;\n setSessionPubKey: (key: Uint8Array | null) => void;\n setSignMessageWithSessionKey: React.Dispatch<\n React.SetStateAction<((message: any) => Promise<any>) | null>\n >;\n setSignMessageWithWalletKey: React.Dispatch<\n React.SetStateAction<((message: any) => Promise<any>) | null>\n >;\n setSignTransactionWithWalletKey: React.Dispatch<\n React.SetStateAction<((transaction: any) => Promise<any>) | null>\n >;\n setStartClosingLogin: (closing: boolean) => void;\n setUsername: (username: string) => void;\n setUserChain: (chain: string | null) => void;\n setViewMode: (mode: N1ModalViewMode) => void;\n setWalletPubKey: (key: Uint8Array | null) => void;\n setNordUser: (user: any) => void;\n setDisconnectWalletHandler: (handler: () => void) => void;\n startClosingLogin: boolean;\n showDynamicWidget: any;\n setShowDynamicWidget: (show: any) => void;\n sessionMode: N1SessionMode;\n skipFinalScreen?: boolean;\n depositFlowRequestId: number;\n}\n"]}
1
+ {"version":3,"file":"wallet.js","sourceRoot":"","sources":["../../src/types/wallet.ts"],"names":[],"mappings":"AAGA,MAAM,CAAN,IAAY,eAcX;AAdD,WAAY,eAAe;IACzB,2DAAW,CAAA;IACX,uEAAiB,CAAA;IACjB,2DAAW,CAAA;IACX,qEAAgB,CAAA;IAChB,2DAAW,CAAA;IACX,yEAAkB,CAAA;IAClB,yEAAkB,CAAA;IAClB,uDAAS,CAAA;IACT,mEAA0B,CAAA;IAC1B,2EAAyB,CAAA;IACzB,mEAA2B,CAAA;IAC3B,qEAAsB,CAAA;IACtB,gEAAc,CAAA;AAChB,CAAC,EAdW,eAAe,KAAf,eAAe,QAc1B;AAED,MAAM,CAAN,IAAY,aAEX;AAFD,WAAY,aAAa;IACvB,iDAAI,CAAA;AACN,CAAC,EAFW,aAAa,KAAb,aAAa,QAExB","sourcesContent":["import type { WalletError } from '../errors/types';\nimport type { Nord } from '@n1xyz/nord-ts';\n\nexport enum N1ModalViewMode {\n Connect = 0,\n CreateSession = 1,\n Signing = 2,\n CreatingUser = 3,\n Success = 4,\n ChainSelection = 6,\n DepositSuccess = 7,\n Error = 8,\n AmountInput = CreatingUser,\n DepositProgress = Signing,\n AuthLoading = CreateSession,\n FinalSuccess = Success,\n Automatic = 99,\n}\n\nexport enum N1SessionMode {\n Nord,\n}\n\nexport interface CssColorOverride {\n color: string; // Color to find in CSS (e.g. '#3b82f6')\n replacement: string; // Replacement color (e.g. '#afafaf')\n}\n\nexport interface N1WalletProviderProps {\n children: React.ReactNode;\n providedSessionMode: N1SessionMode;\n onError?: (error: WalletError) => void;\n nord?: Nord | null;\n /**\n * Optional array of color overrides: [{color: '#original', replacement: '#new'}]\n */\n colorOverrides?: CssColorOverride[];\n /**\n * If true, skip the final success screen and immediately call onDone\n */\n skipFinalScreen?: boolean;\n}\n\nexport interface Balance {\n mint: string;\n balance: bigint;\n appType: string;\n}\n\nexport interface N1NordFunctions {\n // Market information functions\n getMarkets: () => Promise<any[]>;\n getOrderbook: (symbol: string) => Promise<any>;\n getTrades: (params: any) => Promise<any>;\n getMarketsStats: () => Promise<any>;\n\n // Trading functions\n placeOrder: (params: {\n sessionId: bigint | string;\n marketId: number;\n side: 'BUY' | 'SELL';\n fillMode: 'GTC' | 'IOC' | 'FOK' | 'POST_ONLY';\n isReduceOnly: boolean;\n size?: number | string;\n price?: number | string;\n quoteSize?: number | string;\n clientOrderId?: bigint | string;\n }) => Promise<bigint | undefined>;\n\n cancelOrder: (params: {\n sessionId: bigint | string;\n orderId: bigint | string;\n }) => Promise<bigint>;\n\n // Account management\n createSession: (params: {\n userPubkey: Uint8Array;\n sessionPubkey: Uint8Array;\n expiryTimestamp?: bigint;\n }) => Promise<bigint>;\n\n revokeSession: (params: { sessionId: bigint | string }) => Promise<void>;\n\n withdraw: (params: {\n sessionId: bigint | string;\n tokenId: number;\n amount: number;\n }) => Promise<void>;\n\n transfer: (params: {\n sessionId: bigint | string;\n fromAccountId: number;\n toAccountId?: number;\n tokenId: number;\n tokenDecimals: number;\n amount: number | string;\n }) => Promise<number | undefined>;\n\n // Blockchain information\n getTimestamp: () => Promise<bigint>;\n getActionNonce: () => Promise<number>;\n\n // Block and action queries\n queryBlock: (query: any) => Promise<any>;\n queryLastNBlocks: () => Promise<any>;\n queryRecentBlocks: (last_n: number) => Promise<any>;\n queryAction: (query: any) => Promise<any>;\n queryRecentActions: (last_n: number) => Promise<any>;\n getActions: (fromActionId: number, toActionId: number) => Promise<any>;\n}\n\nexport interface N1WalletState {\n address: string;\n balances: Balance[];\n chain: string;\n isConnected: boolean;\n sessionMode: N1SessionMode;\n sessionPubKey: Uint8Array | null;\n setShowLogin: (show: boolean) => void;\n startDepositFlow: () => boolean;\n setViewMode: (mode: N1ModalViewMode) => void;\n showLogin: boolean;\n signMessageWithSessionKey: ((message: any) => Promise<any>) | null;\n signMessageWithWalletKey: ((message: any) => Promise<any>) | null;\n signTransactionWithWalletKey: ((transaction: any) => Promise<any>) | null;\n userChain: string | null;\n username: string;\n viewMode: N1ModalViewMode;\n walletPubKey: Uint8Array | null;\n throwTestError: () => Promise<void>;\n nord?: Nord | null;\n nordUser?: any;\n disconnectWallet: () => void;\n}\n\nexport interface N1InternalWalletState {\n dynamicHandleLogOut: any;\n dynamicWallet: any;\n loading: boolean;\n dynamicSdkHasLoaded: any;\n handleError: (error: WalletError) => void;\n setDynamicSdkHasLoaded: (loaded: any) => void;\n setAddress: (address: string) => void;\n setBalances: (balances: Balance[]) => void;\n setChain: (chain: string) => void;\n setDynamicHandleLogOut: (handler: any) => void;\n setDynamicWallet: (wallet: any) => void;\n setIsConnected: (connected: boolean) => void;\n setLoading: (loading: boolean) => void;\n blockModalReopen: (duration?: number) => void;\n setSessionPubKey: (key: Uint8Array | null) => void;\n setSignMessageWithSessionKey: React.Dispatch<\n React.SetStateAction<((message: any) => Promise<any>) | null>\n >;\n setSignMessageWithWalletKey: React.Dispatch<\n React.SetStateAction<((message: any) => Promise<any>) | null>\n >;\n setSignTransactionWithWalletKey: React.Dispatch<\n React.SetStateAction<((transaction: any) => Promise<any>) | null>\n >;\n setStartClosingLogin: (closing: boolean) => void;\n setUsername: (username: string) => void;\n setUserChain: (chain: string | null) => void;\n setViewMode: (mode: N1ModalViewMode) => void;\n setWalletPubKey: (key: Uint8Array | null) => void;\n setNordUser: (user: any) => void;\n setDisconnectWalletHandler: (handler: () => void) => void;\n startClosingLogin: boolean;\n showDynamicWidget: any;\n setShowDynamicWidget: (show: any) => void;\n sessionMode: N1SessionMode;\n skipFinalScreen?: boolean;\n depositFlowRequestId: number;\n}\n"]}
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
2
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
3
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -35,28 +34,23 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
34
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
35
  }
37
36
  };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.generateEd25519KeyPair = generateEd25519KeyPair;
40
- exports.signEd25519Message = signEd25519Message;
41
- exports.getEd25519PublicKeyFromPrivate = getEd25519PublicKeyFromPrivate;
42
- exports.generateRandomUint8Array = generateRandomUint8Array;
43
- var ed25519_1 = require("@noble/ed25519");
44
- var sha2_1 = require("@noble/hashes/sha2");
37
+ import { getPublicKey, sign, utils, hashes } from '@noble/ed25519';
38
+ import { sha512 } from '@noble/hashes/sha2';
45
39
  // Configure hashing dependency for @noble/ed25519 v3
46
- if (!ed25519_1.hashes.sha512) {
47
- ed25519_1.hashes.sha512 = sha2_1.sha512;
40
+ if (!hashes.sha512) {
41
+ hashes.sha512 = sha512;
48
42
  }
49
- if (!ed25519_1.utils.sha512) {
50
- ed25519_1.utils.sha512 = sha2_1.sha512;
43
+ if (!utils.sha512) {
44
+ utils.sha512 = sha512;
51
45
  }
52
- function generateEd25519KeyPair() {
46
+ export function generateEd25519KeyPair() {
53
47
  return __awaiter(this, void 0, void 0, function () {
54
48
  var privateKey, publicKey;
55
49
  return __generator(this, function (_a) {
56
50
  switch (_a.label) {
57
51
  case 0:
58
- privateKey = ed25519_1.utils.randomSecretKey();
59
- return [4 /*yield*/, (0, ed25519_1.getPublicKey)(privateKey)];
52
+ privateKey = utils.randomSecretKey();
53
+ return [4 /*yield*/, getPublicKey(privateKey)];
60
54
  case 1:
61
55
  publicKey = _a.sent();
62
56
  return [2 /*return*/, { privateKey: privateKey, publicKey: publicKey }];
@@ -64,21 +58,21 @@ function generateEd25519KeyPair() {
64
58
  });
65
59
  });
66
60
  }
67
- function signEd25519Message(message, privateKey) {
61
+ export function signEd25519Message(message, privateKey) {
68
62
  return __awaiter(this, void 0, void 0, function () {
69
63
  return __generator(this, function (_a) {
70
- return [2 /*return*/, (0, ed25519_1.sign)(message, privateKey)];
64
+ return [2 /*return*/, sign(message, privateKey)];
71
65
  });
72
66
  });
73
67
  }
74
- function getEd25519PublicKeyFromPrivate(privateKey) {
68
+ export function getEd25519PublicKeyFromPrivate(privateKey) {
75
69
  return __awaiter(this, void 0, void 0, function () {
76
70
  return __generator(this, function (_a) {
77
- return [2 /*return*/, (0, ed25519_1.getPublicKey)(privateKey)];
71
+ return [2 /*return*/, getPublicKey(privateKey)];
78
72
  });
79
73
  });
80
74
  }
81
- function generateRandomUint8Array(length) {
75
+ export function generateRandomUint8Array(length) {
82
76
  var buffer = new Uint8Array(length);
83
77
  if (typeof crypto !== 'undefined' && typeof crypto.getRandomValues === 'function') {
84
78
  crypto.getRandomValues(buffer);
@@ -1 +1 @@
1
- {"version":3,"file":"ed25519.js","sourceRoot":"","sources":["../../src/utils/ed25519.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgBA,wDAIC;AAED,gDAKC;AAED,wEAIC;AAED,4DAYC;AA/CD,0CAAmE;AACnE,2CAA4C;AAE5C,qDAAqD;AACrD,IAAI,CAAC,gBAAM,CAAC,MAAM,EAAE,CAAC;IACnB,gBAAM,CAAC,MAAM,GAAG,aAAM,CAAC;AACzB,CAAC;AACD,IAAI,CAAE,eAAa,CAAC,MAAM,EAAE,CAAC;IAC1B,eAAa,CAAC,MAAM,GAAG,aAAM,CAAC;AACjC,CAAC;AAOD,SAAsB,sBAAsB;;;;;;oBACpC,UAAU,GAAG,eAAK,CAAC,eAAe,EAAE,CAAC;oBACzB,qBAAM,IAAA,sBAAY,EAAC,UAAU,CAAC,EAAA;;oBAA1C,SAAS,GAAG,SAA8B;oBAChD,sBAAO,EAAE,UAAU,YAAA,EAAE,SAAS,WAAA,EAAE,EAAC;;;;CAClC;AAED,SAAsB,kBAAkB,CACtC,OAAmB,EACnB,UAAsB;;;YAEtB,sBAAO,IAAA,cAAI,EAAC,OAAO,EAAE,UAAU,CAAC,EAAC;;;CAClC;AAED,SAAsB,8BAA8B,CAClD,UAAsB;;;YAEtB,sBAAO,IAAA,sBAAY,EAAC,UAAU,CAAC,EAAC;;;CACjC;AAED,SAAgB,wBAAwB,CAAC,MAAc;IACrD,IAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;QAClF,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,+CAA+C;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { getPublicKey, sign, utils, hashes } from '@noble/ed25519';\nimport { sha512 } from '@noble/hashes/sha2';\n\n// Configure hashing dependency for @noble/ed25519 v3\nif (!hashes.sha512) {\n hashes.sha512 = sha512;\n}\nif (!(utils as any).sha512) {\n (utils as any).sha512 = sha512;\n}\n\nexport interface Ed25519KeyPair {\n privateKey: Uint8Array;\n publicKey: Uint8Array;\n}\n\nexport async function generateEd25519KeyPair(): Promise<Ed25519KeyPair> {\n const privateKey = utils.randomSecretKey();\n const publicKey = await getPublicKey(privateKey);\n return { privateKey, publicKey };\n}\n\nexport async function signEd25519Message(\n message: Uint8Array,\n privateKey: Uint8Array\n): Promise<Uint8Array> {\n return sign(message, privateKey);\n}\n\nexport async function getEd25519PublicKeyFromPrivate(\n privateKey: Uint8Array\n): Promise<Uint8Array> {\n return getPublicKey(privateKey);\n}\n\nexport function generateRandomUint8Array(length: number): Uint8Array {\n const buffer = new Uint8Array(length);\n if (typeof crypto !== 'undefined' && typeof crypto.getRandomValues === 'function') {\n crypto.getRandomValues(buffer);\n return buffer;\n }\n\n // Fallback for environments without Web Crypto\n for (let i = 0; i < length; i++) {\n buffer[i] = Math.floor(Math.random() * 256);\n }\n return buffer;\n}\n"]}
1
+ {"version":3,"file":"ed25519.js","sourceRoot":"","sources":["../../src/utils/ed25519.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,qDAAqD;AACrD,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;AACzB,CAAC;AACD,IAAI,CAAE,KAAa,CAAC,MAAM,EAAE,CAAC;IAC1B,KAAa,CAAC,MAAM,GAAG,MAAM,CAAC;AACjC,CAAC;AAOD,MAAM,UAAgB,sBAAsB;;;;;;oBACpC,UAAU,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC;oBACzB,qBAAM,YAAY,CAAC,UAAU,CAAC,EAAA;;oBAA1C,SAAS,GAAG,SAA8B;oBAChD,sBAAO,EAAE,UAAU,YAAA,EAAE,SAAS,WAAA,EAAE,EAAC;;;;CAClC;AAED,MAAM,UAAgB,kBAAkB,CACtC,OAAmB,EACnB,UAAsB;;;YAEtB,sBAAO,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,EAAC;;;CAClC;AAED,MAAM,UAAgB,8BAA8B,CAClD,UAAsB;;;YAEtB,sBAAO,YAAY,CAAC,UAAU,CAAC,EAAC;;;CACjC;AAED,MAAM,UAAU,wBAAwB,CAAC,MAAc;IACrD,IAAM,MAAM,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,OAAO,MAAM,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;QAClF,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,+CAA+C;IAC/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC","sourcesContent":["import { getPublicKey, sign, utils, hashes } from '@noble/ed25519';\nimport { sha512 } from '@noble/hashes/sha2';\n\n// Configure hashing dependency for @noble/ed25519 v3\nif (!hashes.sha512) {\n hashes.sha512 = sha512;\n}\nif (!(utils as any).sha512) {\n (utils as any).sha512 = sha512;\n}\n\nexport interface Ed25519KeyPair {\n privateKey: Uint8Array;\n publicKey: Uint8Array;\n}\n\nexport async function generateEd25519KeyPair(): Promise<Ed25519KeyPair> {\n const privateKey = utils.randomSecretKey();\n const publicKey = await getPublicKey(privateKey);\n return { privateKey, publicKey };\n}\n\nexport async function signEd25519Message(\n message: Uint8Array,\n privateKey: Uint8Array\n): Promise<Uint8Array> {\n return sign(message, privateKey);\n}\n\nexport async function getEd25519PublicKeyFromPrivate(\n privateKey: Uint8Array\n): Promise<Uint8Array> {\n return getPublicKey(privateKey);\n}\n\nexport function generateRandomUint8Array(length: number): Uint8Array {\n const buffer = new Uint8Array(length);\n if (typeof crypto !== 'undefined' && typeof crypto.getRandomValues === 'function') {\n crypto.getRandomValues(buffer);\n return buffer;\n }\n\n // Fallback for environments without Web Crypto\n for (let i = 0; i < length; i++) {\n buffer[i] = Math.floor(Math.random() * 256);\n }\n return buffer;\n}\n"]}
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getPseudoName = getPseudoName;
4
- var words_1 = require("./words");
1
+ import { words } from './words';
5
2
  function capitalizeFirst(str) {
6
3
  return str.charAt(0).toUpperCase() + str.slice(1);
7
4
  }
8
- function getPseudoName(pk) {
9
- var maxNouns = words_1.words.N.length - 1; // 47004
10
- var maxAdj = words_1.words.A.length - 1; // 14903
5
+ export function getPseudoName(pk) {
6
+ var maxNouns = words.N.length - 1; // 47004
7
+ var maxAdj = words.A.length - 1; // 14903
11
8
  // split pubkey into 3 parts
12
9
  var _a = [
13
10
  pk.slice(1, 12),
@@ -20,16 +17,16 @@ function getPseudoName(pk) {
20
17
  Math.abs(getHash(third)) % maxNouns,
21
18
  ];
22
19
  // generate random number from the 3 parts, in the ranges of the english dictionary
23
- var wordList = [words_1.words.A[hashes[0]], words_1.words.A[hashes[1]], words_1.words.N[hashes[2]]];
20
+ var wordList = [words.A[hashes[0]], words.A[hashes[1]], words.N[hashes[2]]];
24
21
  var _loop_1 = function (i) {
25
22
  var word = wordList[i];
26
23
  while (CENSORED_WORDS.some(function (v) { return word.startsWith(v.toLowerCase()); })) {
27
24
  hashes[i] += 1;
28
25
  if (parseInt(i) != 2) {
29
- wordList[i] = words_1.words.A[hashes[i] % maxAdj];
26
+ wordList[i] = words.A[hashes[i] % maxAdj];
30
27
  }
31
28
  else {
32
- wordList[i] = words_1.words.N[hashes[i] % maxNouns];
29
+ wordList[i] = words.N[hashes[i] % maxNouns];
33
30
  }
34
31
  word = wordList[i];
35
32
  }