@keetanetwork/anchor 0.0.45 → 0.0.47
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.
- package/LICENSE +163 -34
- package/lib/asset.d.ts +30 -0
- package/lib/asset.d.ts.map +1 -0
- package/lib/asset.js +78 -0
- package/lib/asset.js.map +1 -0
- package/lib/certificates.d.ts +15 -44
- package/lib/certificates.d.ts.map +1 -1
- package/lib/certificates.js +32 -342
- package/lib/certificates.js.map +1 -1
- package/lib/resolver.d.ts +9 -2
- package/lib/resolver.d.ts.map +1 -1
- package/lib/resolver.js +195 -159
- package/lib/resolver.js.map +1 -1
- package/lib/sensitive-attribute.d.ts +87 -0
- package/lib/sensitive-attribute.d.ts.map +1 -0
- package/lib/sensitive-attribute.js +419 -0
- package/lib/sensitive-attribute.js.map +1 -0
- package/lib/token-metadata.d.ts +21 -0
- package/lib/token-metadata.d.ts.map +1 -0
- package/lib/token-metadata.generated.d.ts +5 -0
- package/lib/token-metadata.generated.d.ts.map +1 -0
- package/lib/token-metadata.generated.js +70 -0
- package/lib/token-metadata.generated.js.map +1 -0
- package/lib/token-metadata.js +57 -0
- package/lib/token-metadata.js.map +1 -0
- package/lib/utils/pii.d.ts +128 -0
- package/lib/utils/pii.d.ts.map +1 -0
- package/lib/utils/pii.js +198 -0
- package/lib/utils/pii.js.map +1 -0
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
- package/services/asset-movement/common.d.ts +6 -28
- package/services/asset-movement/common.d.ts.map +1 -1
- package/services/asset-movement/common.js +3286 -2142
- package/services/asset-movement/common.js.map +1 -1
- package/services/asset-movement/lib/data/addresses/bank-account/interac.js +1 -1
- package/services/asset-movement/lib/data/addresses/bank-account/interac.js.map +1 -1
- package/services/asset-movement/lib/data/addresses/types.generated.d.ts +39 -31
- package/services/asset-movement/lib/data/addresses/types.generated.d.ts.map +1 -1
- package/services/asset-movement/lib/data/addresses/types.generated.js +37 -24
- package/services/asset-movement/lib/data/addresses/types.generated.js.map +1 -1
- package/services/asset-movement/lib/data/types.d.ts.map +1 -1
- package/services/asset-movement/lib/data/types.js +15 -10
- package/services/asset-movement/lib/data/types.js.map +1 -1
- package/services/fx/client.d.ts.map +1 -1
- package/services/fx/client.js +6 -2
- package/services/fx/client.js.map +1 -1
- package/services/fx/common.d.ts +14 -6
- package/services/fx/common.d.ts.map +1 -1
- package/services/fx/common.js +34 -8
- package/services/fx/common.js.map +1 -1
- package/services/fx/server.d.ts +6 -0
- package/services/fx/server.d.ts.map +1 -1
- package/services/fx/server.js +52 -10
- package/services/fx/server.js.map +1 -1
- package/services/kyc/common.d.ts +7 -0
- package/services/kyc/common.d.ts.map +1 -1
- package/services/kyc/common.generated.js +6 -1
- package/services/kyc/common.generated.js.map +1 -1
- package/services/kyc/common.js.map +1 -1
- package/services/notification/client.d.ts +1 -1
- package/services/notification/client.d.ts.map +1 -1
- package/services/notification/client.js +65 -2
- package/services/notification/client.js.map +1 -1
- package/services/notification/common.d.ts +1 -0
- package/services/notification/common.d.ts.map +1 -1
- package/services/notification/common.js.map +1 -1
- package/services/storage/clients/contacts.generated.js +370 -227
- package/services/storage/clients/contacts.generated.js.map +1 -1
- package/services/storage/server.d.ts +8 -1
- package/services/storage/server.d.ts.map +1 -1
- package/services/storage/server.js +9 -1
- package/services/storage/server.js.map +1 -1
package/LICENSE
CHANGED
|
@@ -1,35 +1,164 @@
|
|
|
1
1
|
Keeta Token Network Community License (v1.0)
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
2
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
3
|
+
|
|
4
|
+
Effective Date: March 31, 2025
|
|
5
|
+
|
|
6
|
+
This License governs use of the Keeta Token Network during its testnet phase. The License
|
|
7
|
+
is versioned and may be updated, amended, or replaced by the Keeta Token Team at its
|
|
8
|
+
sole discretion, including upon the release of the mainnet version of the Keeta Token
|
|
9
|
+
Network.
|
|
10
|
+
|
|
11
|
+
Works created by You under a prior version of this License will continue to be governed
|
|
12
|
+
by the version in effect at the time of their creation, unless not in direct conflict with an
|
|
13
|
+
amended version, in which case the most recent non-conflicting amended version shall
|
|
14
|
+
apply. You are responsible for reviewing updated versions of the License, which will be
|
|
15
|
+
published at https://keeta.com/license.pdf.
|
|
16
|
+
|
|
17
|
+
By continuing to use the Keeta Token Network following publication of an updated
|
|
18
|
+
License, You agree to be bound by its terms.
|
|
19
|
+
|
|
20
|
+
Background
|
|
21
|
+
|
|
22
|
+
Keeta, Inc. (the "Keeta Blockchain Team") has granted Keeta Token Genesis LLC (the
|
|
23
|
+
"Keeta Token Team") an exclusive, worldwide, perpetual, sublicensable, transferable, and
|
|
24
|
+
royalty-free license to use the Keeta Network for the purpose of launching and operating
|
|
25
|
+
the Keeta Token ($KTA) (the "Keeta Token Network").
|
|
26
|
+
|
|
27
|
+
The Keeta Blockchain Team will continue to develop and improve its blockchain
|
|
28
|
+
technology and will provide the Keeta Token Team with relevant updates, upgrades,
|
|
29
|
+
releases, and other modifications necessary for the effective operation and growth of the
|
|
30
|
+
Keeta Token Network.
|
|
31
|
+
|
|
32
|
+
The Keeta Token community is encouraged to use the Keeta Token Network to develop
|
|
33
|
+
beneficial use cases for the Keeta Token. Community members are free to copy, modify,
|
|
34
|
+
and enhance the Keeta Token Network in pursuit of this goal.
|
|
35
|
+
|
|
36
|
+
Both the Keeta Blockchain Team and the Keeta Token Team are committed to realizing
|
|
37
|
+
Keeta's vision of becoming the trusted base layer for global payments. As such, both teams
|
|
38
|
+
reserve the right to take appropriate measures to discourage or prevent any use of the
|
|
39
|
+
Keeta Network that may harm the Keeta Token community or impede the adoption of the
|
|
40
|
+
Keeta Network by payment providers and their customers.
|
|
41
|
+
|
|
42
|
+
Anyone seeking to use the Keeta Network for purposes unrelated to the Keeta Token
|
|
43
|
+
Network must contact the Keeta Blockchain Team to obtain appropriate licensing terms.
|
|
44
|
+
|
|
45
|
+
Terms
|
|
46
|
+
|
|
47
|
+
This Keeta Token Network Community License (the "License") is entered into and made
|
|
48
|
+
effective as of March 31, 2025 (the "Effective Date"), by and between:
|
|
49
|
+
|
|
50
|
+
Keeta Token Genesis LLC, a Wyoming limited liability company, referred to herein as the
|
|
51
|
+
"Licensor" or the "Keeta Token Team", and
|
|
52
|
+
|
|
53
|
+
Any individual or entity that downloads, accesses, uses, copies, modifies, sublicenses, or
|
|
54
|
+
distributes the Licensed Materials (as defined below), referred to herein as "You" or "Your"
|
|
55
|
+
(You and Licensor, each a "Party," and together the "Parties").
|
|
56
|
+
|
|
57
|
+
You agree that Licensor shall have the sole right to amend, restate, and replace this
|
|
58
|
+
License. No portion of such an amendment, however, shall apply retroactively to Your
|
|
59
|
+
prior use of the Licensed Materials if it is in direct conflict with an explicit term in effect at
|
|
60
|
+
the time of Your prior use.
|
|
61
|
+
|
|
62
|
+
1. Definitions
|
|
63
|
+
|
|
64
|
+
* "Licensed Materials": The Keeta Token Network, SDK, tools, APIs, and related
|
|
65
|
+
documentation.
|
|
66
|
+
* "Permitted Use": Any use of the Licensed Materials that promotes, supports,
|
|
67
|
+
develops, tests, or operates use cases for the benefit of the Keeta Token Network
|
|
68
|
+
|
|
69
|
+
2. License Grant
|
|
70
|
+
|
|
71
|
+
Subject to the terms and conditions of this License, the Keeta Token Team grants to You a
|
|
72
|
+
worldwide, royalty-free, non-exclusive, and sublicensable license to:
|
|
73
|
+
|
|
74
|
+
* Use the Keeta Token Network and SDK;
|
|
75
|
+
* Copy and modify the Licensed Materials;
|
|
76
|
+
* Create derivative works based on the Licensed Materials;
|
|
77
|
+
* Distribute and share such modifications and derivatives;
|
|
78
|
+
* Deploy such works for purposes aligned with the Keeta Token Network's mission
|
|
79
|
+
and benefit.
|
|
80
|
+
|
|
81
|
+
This License does not grant any rights in trademarks, logos, or branding of the Licensor or
|
|
82
|
+
its affiliates.
|
|
83
|
+
|
|
84
|
+
Any sublicense granted under this License must be conditioned upon the sublicensee
|
|
85
|
+
agreeing to the terms of this License.
|
|
86
|
+
|
|
87
|
+
3. Restrictions
|
|
88
|
+
|
|
89
|
+
You may not:
|
|
90
|
+
|
|
91
|
+
* Use the Licensed Materials in a manner that is harmful to, competes with, or
|
|
92
|
+
devalues the Keeta Token Network;
|
|
93
|
+
* Operate or fork the Keeta Token Network or its components for unrelated or
|
|
94
|
+
competing networks;
|
|
95
|
+
* Use the Licensed Materials for any unlawful, unethical, or exploitative purposes;
|
|
96
|
+
* Represent that any modification or fork of the Licensed Materials is an official
|
|
97
|
+
version of the Keeta Token Network.
|
|
98
|
+
4. Enforcement
|
|
99
|
+
The Keeta Token Team reserves the right to audit, monitor, revoke and/or terminate Your
|
|
100
|
+
license if Your use of the Licensed Materials:
|
|
101
|
+
* Violates these terms;
|
|
102
|
+
* Harms or impairs the value, integrity, or reputation of the Keeta Token Network;
|
|
103
|
+
* Interferes with the growth, stability, or adoption of the Keeta Token Network.
|
|
104
|
+
|
|
105
|
+
Upon revocation or termination, You must cease all use, reproduction, and distribution of
|
|
106
|
+
the Licensed Materials.
|
|
107
|
+
|
|
108
|
+
5. Third-Party Software and Dependencies
|
|
109
|
+
|
|
110
|
+
The Licensed Materials may incorporate, reference, or rely upon third-party software
|
|
111
|
+
libraries, packages, or dependencies that are subject to separate open-source or
|
|
112
|
+
proprietary license terms ("Third-Party Software"). It is Your sole responsibility to review,
|
|
113
|
+
understand, and comply with any applicable license terms governing the use of such
|
|
114
|
+
Third-Party Software.
|
|
115
|
+
|
|
116
|
+
The Keeta Token Team makes no representations or warranties regarding the licensing or
|
|
117
|
+
availability of any Third-Party Software, and disclaims any liability for Your use thereof.
|
|
118
|
+
Inclusion of any Third-Party Software in the Licensed Materials does not modify or limit
|
|
119
|
+
Your obligations under such third-party licenses.
|
|
120
|
+
|
|
121
|
+
6. Disclaimer of Warranties
|
|
122
|
+
|
|
123
|
+
The Licensed Materials are provided "AS IS" without warranties of any kind, express or
|
|
124
|
+
implied. The Keeta Token Team disclaims all liability for damages arising from Your use of
|
|
125
|
+
the Licensed Materials.
|
|
126
|
+
|
|
127
|
+
7. Limitation of Liability
|
|
128
|
+
|
|
129
|
+
To the maximum extent permitted by law, the Keeta Token Team shall not be liable for
|
|
130
|
+
any direct, indirect, incidental, special, or consequential damages arising from or related
|
|
131
|
+
to Your use of the Licensed Materials.
|
|
132
|
+
|
|
133
|
+
8. Indemnification
|
|
134
|
+
|
|
135
|
+
You agree to indemnify, defend and hold harmless the Keeta Token Team from and
|
|
136
|
+
against any Losses arising out of, relating to, or connected with (i) Your violation of any
|
|
137
|
+
term of this License, (ii) Your use of the Licensed Materials.
|
|
138
|
+
|
|
139
|
+
9. Third-Party Beneficiary Disclaimer: Keeta, Inc.
|
|
140
|
+
|
|
141
|
+
Keeta, Inc. (the "Keeta Blockchain Team") is not a party to this License and makes no
|
|
142
|
+
representations, warranties, or guarantees of any kind regarding the Licensed Materials.
|
|
143
|
+
Keeta, Inc. disclaims all liability for any claims, damages, or losses arising from or related
|
|
144
|
+
to Your use, modification, or distribution of the Licensed Materials, whether directly or
|
|
145
|
+
indirectly.
|
|
146
|
+
|
|
147
|
+
By using the Licensed Materials, You acknowledge that Keeta, Inc. is not responsible for
|
|
148
|
+
any issues arising from such use, and You agree to hold Keeta, Inc. harmless from any and
|
|
149
|
+
all claims, demands, or liabilities resulting therefrom.
|
|
150
|
+
|
|
151
|
+
10. Governing Law and Arbitration
|
|
152
|
+
|
|
153
|
+
This License shall be governed by and construed in accordance with the laws of the State
|
|
154
|
+
of Wyoming, without regard to conflict of law principles. ANY DISPUTE ARISING UNDER
|
|
155
|
+
THIS LICENSE SHALL BE RESOLVED THROUGH BINDING ARBITRATION IN THE
|
|
156
|
+
STATE OF NEW YORK BY THE AMERICAN ARBITRATION ASSOCIATION ADHERING
|
|
157
|
+
TO THEIR PROCEDURAL RULES BEFORE A SINGLE ARBITRATOR ASSIGNED AT
|
|
158
|
+
RANDOM. The Parties shall be entitled to make all appearances by video conference
|
|
159
|
+
including at hearing. The arbitrator's decision is final and not appealable. The prevailing
|
|
160
|
+
Party is entitled to recover its reasonable attorneys' fees and arbitration costs from the
|
|
161
|
+
non-prevailing Party.
|
|
162
|
+
|
|
163
|
+
11. Contact
|
|
164
|
+
|
|
165
|
+
For inquiries about licensing please contact us at legal@keeta.com.
|
package/lib/asset.d.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { TokenAddress, TokenPublicKeyString } from '@keetanetwork/keetanet-client/lib/account.js';
|
|
2
|
+
import { lib as KeetaNetLib } from '@keetanetwork/keetanet-client';
|
|
3
|
+
import * as CurrencyInfo from '@keetanetwork/currency-info';
|
|
4
|
+
export type KeetaNetAccount = InstanceType<typeof KeetaNetLib.Account>;
|
|
5
|
+
export type KeetaNetStorageAccount = InstanceType<typeof KeetaNetLib.Account<typeof KeetaNetLib.Account.AccountKeyAlgorithm.STORAGE>>;
|
|
6
|
+
export type KeetaNetToken = InstanceType<typeof KeetaNetLib.Account<typeof KeetaNetLib.Account.AccountKeyAlgorithm.TOKEN>>;
|
|
7
|
+
export type KeetaNetTokenPublicKeyString = ReturnType<InstanceType<typeof KeetaNetLib.Account<typeof KeetaNetLib.Account.AccountKeyAlgorithm.TOKEN>>['publicKeyString']['get']>;
|
|
8
|
+
export type HexString = `0x${string}`;
|
|
9
|
+
export type CurrencySearchCanonical = CurrencyInfo.ISOCurrencyCode | `$${string}`;
|
|
10
|
+
export type CurrencySearchInput = CurrencySearchCanonical | CurrencyInfo.Currency;
|
|
11
|
+
export type TokenSearchInput = TokenAddress | TokenPublicKeyString;
|
|
12
|
+
export type TokenSearchCanonical = TokenPublicKeyString;
|
|
13
|
+
export type EVMAsset = `evm:${HexString}`;
|
|
14
|
+
export type TronAsset = `tron:${string}`;
|
|
15
|
+
export type SolanaAsset = `solana:${string}`;
|
|
16
|
+
export type ChainAssetString = SolanaAsset | EVMAsset | TronAsset | TokenPublicKeyString;
|
|
17
|
+
export type MovableAssetSearchInput = CurrencySearchInput | TokenSearchInput | ChainAssetString;
|
|
18
|
+
export type MovableAssetSearchCanonical = CurrencySearchCanonical | TokenSearchCanonical | ChainAssetString;
|
|
19
|
+
export type MovableAsset = TokenAddress | TokenPublicKeyString | CurrencySearchInput | ChainAssetString;
|
|
20
|
+
export declare function toEVMAsset(input: HexString): EVMAsset;
|
|
21
|
+
export declare function parseEVMAsset(input: EVMAsset): HexString;
|
|
22
|
+
export declare function isEVMAsset(input: unknown): input is EVMAsset;
|
|
23
|
+
export declare function toTronAsset(input: string): TronAsset;
|
|
24
|
+
export declare function parseTronAsset(input: TronAsset): string;
|
|
25
|
+
export declare function isTronAsset(input: unknown): input is TronAsset;
|
|
26
|
+
export declare function toSolanaAsset(input: string): SolanaAsset;
|
|
27
|
+
export declare function parseSolanaAsset(input: SolanaAsset): string;
|
|
28
|
+
export declare function isSolanaAsset(input: unknown): input is SolanaAsset;
|
|
29
|
+
export declare function convertAssetSearchInputToCanonical(input: MovableAssetSearchInput): MovableAssetSearchCanonical;
|
|
30
|
+
//# sourceMappingURL=asset.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asset.d.ts","sourceRoot":"","sources":["../../src/lib/asset.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,8CAA8C,CAAC;AACvG,OAAO,EAAE,GAAG,IAAI,WAAW,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,YAAY,MAAM,6BAA6B,CAAC;AAE5D,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,CAAC;AACvE,MAAM,MAAM,sBAAsB,GAAG,YAAY,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;AACtI,MAAM,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;AAC3H,MAAM,MAAM,4BAA4B,GAAG,UAAU,CAAC,YAAY,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAEhL,MAAM,MAAM,SAAS,GAAG,KAAK,MAAM,EAAE,CAAC;AAEtC,MAAM,MAAM,uBAAuB,GAAG,YAAY,CAAC,eAAe,GAAG,IAAI,MAAM,EAAE,CAAC;AAClF,MAAM,MAAM,mBAAmB,GAAG,uBAAuB,GAAG,YAAY,CAAC,QAAQ,CAAC;AAElF,MAAM,MAAM,gBAAgB,GAAG,YAAY,GAAG,oBAAoB,CAAC;AACnE,MAAM,MAAM,oBAAoB,GAAG,oBAAoB,CAAC;AAExD,MAAM,MAAM,QAAQ,GAAG,OAAO,SAAS,EAAE,CAAC;AAC1C,MAAM,MAAM,SAAS,GAAG,QAAQ,MAAM,EAAE,CAAC;AACzC,MAAM,MAAM,WAAW,GAAG,UAAU,MAAM,EAAE,CAAC;AAC7C,MAAM,MAAM,gBAAgB,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,oBAAoB,CAAC;AACzF,MAAM,MAAM,uBAAuB,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;AAChG,MAAM,MAAM,2BAA2B,GAAG,uBAAuB,GAAG,oBAAoB,GAAG,gBAAgB,CAAC;AAC5G,MAAM,MAAM,YAAY,GAAG,YAAY,GAAG,oBAAoB,GAAG,mBAAmB,GAAG,gBAAgB,CAAC;AAExG,wBAAgB,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ,CAErD;AAUD,wBAAgB,aAAa,CAAC,KAAK,EAAE,QAAQ,GAAG,SAAS,CAYxD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,QAAQ,CAE5D;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAEpD;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAYvD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,SAAS,CAE9D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAExD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAY3D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,WAAW,CAElE;AAED,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,uBAAuB,GAAG,2BAA2B,CAiB9G"}
|
package/lib/asset.js
ADDED
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { lib as KeetaNetLib } from '@keetanetwork/keetanet-client';
|
|
2
|
+
import * as CurrencyInfo from '@keetanetwork/currency-info';
|
|
3
|
+
export function toEVMAsset(input) {
|
|
4
|
+
return (`evm:${input}`);
|
|
5
|
+
}
|
|
6
|
+
function isHexString(input) {
|
|
7
|
+
if (typeof input === 'string' && input.startsWith('0x')) {
|
|
8
|
+
return (true);
|
|
9
|
+
}
|
|
10
|
+
return (false);
|
|
11
|
+
}
|
|
12
|
+
export function parseEVMAsset(input) {
|
|
13
|
+
const parts = input.split(':');
|
|
14
|
+
if (parts.length !== 2 || parts[0] !== 'evm') {
|
|
15
|
+
throw (new Error('Invalid EVMAsset string'));
|
|
16
|
+
}
|
|
17
|
+
const value = parts[1];
|
|
18
|
+
if (!isHexString(value)) {
|
|
19
|
+
throw (new Error('Invalid hex string in EVMAsset'));
|
|
20
|
+
}
|
|
21
|
+
return (value);
|
|
22
|
+
}
|
|
23
|
+
export function isEVMAsset(input) {
|
|
24
|
+
return (typeof input === 'string' && input.startsWith('evm:0x'));
|
|
25
|
+
}
|
|
26
|
+
export function toTronAsset(input) {
|
|
27
|
+
return (`tron:${input}`);
|
|
28
|
+
}
|
|
29
|
+
export function parseTronAsset(input) {
|
|
30
|
+
const parts = input.split(':');
|
|
31
|
+
if (parts.length !== 2 || parts[0] !== 'tron') {
|
|
32
|
+
throw (new Error('Invalid TronAsset string'));
|
|
33
|
+
}
|
|
34
|
+
const value = parts[1];
|
|
35
|
+
if (!value || typeof value !== 'string' || value.length === 0) {
|
|
36
|
+
throw (new Error('Invalid hex string in TronAsset'));
|
|
37
|
+
}
|
|
38
|
+
return (value);
|
|
39
|
+
}
|
|
40
|
+
export function isTronAsset(input) {
|
|
41
|
+
return (typeof input === 'string' && input.startsWith('tron:'));
|
|
42
|
+
}
|
|
43
|
+
export function toSolanaAsset(input) {
|
|
44
|
+
return (`solana:${input}`);
|
|
45
|
+
}
|
|
46
|
+
export function parseSolanaAsset(input) {
|
|
47
|
+
const parts = input.split(':');
|
|
48
|
+
if (parts.length !== 2 || parts[0] !== 'solana') {
|
|
49
|
+
throw (new Error('Invalid SolanaAsset string'));
|
|
50
|
+
}
|
|
51
|
+
const value = parts[1];
|
|
52
|
+
if (!value || typeof value !== 'string' || value.length === 0) {
|
|
53
|
+
throw (new Error('Invalid string in SolanaAsset'));
|
|
54
|
+
}
|
|
55
|
+
return (value);
|
|
56
|
+
}
|
|
57
|
+
export function isSolanaAsset(input) {
|
|
58
|
+
return (typeof input === 'string' && input.startsWith('solana:'));
|
|
59
|
+
}
|
|
60
|
+
export function convertAssetSearchInputToCanonical(input) {
|
|
61
|
+
if (input instanceof CurrencyInfo.Currency || CurrencyInfo.Currency.isCurrencyCode(input) || CurrencyInfo.Currency.isISOCurrencyNumber(input)) {
|
|
62
|
+
if (CurrencyInfo.Currency.isCurrencyCode(input)) {
|
|
63
|
+
return (input);
|
|
64
|
+
}
|
|
65
|
+
else if (CurrencyInfo.Currency.isISOCurrencyNumber(input)) {
|
|
66
|
+
input = new CurrencyInfo.Currency(input);
|
|
67
|
+
}
|
|
68
|
+
return (input.code);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
if (typeof input === 'string') {
|
|
72
|
+
return (input);
|
|
73
|
+
}
|
|
74
|
+
input.assertKeyType(KeetaNetLib.Account.AccountKeyAlgorithm.TOKEN);
|
|
75
|
+
return (input.publicKeyString.get());
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=asset.js.map
|
package/lib/asset.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asset.js","sourceRoot":"","sources":["../../src/lib/asset.ts"],"names":[],"mappings":"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","sourcesContent":["import type { TokenAddress, TokenPublicKeyString } from '@keetanetwork/keetanet-client/lib/account.js';\nimport { lib as KeetaNetLib } from '@keetanetwork/keetanet-client';\nimport * as CurrencyInfo from '@keetanetwork/currency-info';\n\nexport type KeetaNetAccount = InstanceType<typeof KeetaNetLib.Account>;\nexport type KeetaNetStorageAccount = InstanceType<typeof KeetaNetLib.Account<typeof KeetaNetLib.Account.AccountKeyAlgorithm.STORAGE>>;\nexport type KeetaNetToken = InstanceType<typeof KeetaNetLib.Account<typeof KeetaNetLib.Account.AccountKeyAlgorithm.TOKEN>>;\nexport type KeetaNetTokenPublicKeyString = ReturnType<InstanceType<typeof KeetaNetLib.Account<typeof KeetaNetLib.Account.AccountKeyAlgorithm.TOKEN>>['publicKeyString']['get']>;\n\nexport type HexString = `0x${string}`;\n\nexport type CurrencySearchCanonical = CurrencyInfo.ISOCurrencyCode | `$${string}`; /* XXX:TODO */\nexport type CurrencySearchInput = CurrencySearchCanonical | CurrencyInfo.Currency;\n\nexport type TokenSearchInput = TokenAddress | TokenPublicKeyString;\nexport type TokenSearchCanonical = TokenPublicKeyString;\n\nexport type EVMAsset = `evm:${HexString}`;\nexport type TronAsset = `tron:${string}`;\nexport type SolanaAsset = `solana:${string}`;\nexport type ChainAssetString = SolanaAsset | EVMAsset | TronAsset | TokenPublicKeyString;\nexport type MovableAssetSearchInput = CurrencySearchInput | TokenSearchInput | ChainAssetString;\nexport type MovableAssetSearchCanonical = CurrencySearchCanonical | TokenSearchCanonical | ChainAssetString;\nexport type MovableAsset = TokenAddress | TokenPublicKeyString | CurrencySearchInput | ChainAssetString;\n\nexport function toEVMAsset(input: HexString): EVMAsset {\n\treturn(`evm:${input}`);\n}\n\nfunction isHexString(input: unknown): input is HexString {\n\tif (typeof input === 'string' && input.startsWith('0x')) {\n\t\treturn(true);\n\t}\n\n\treturn(false);\n}\n\nexport function parseEVMAsset(input: EVMAsset): HexString {\n\tconst parts = input.split(':');\n\tif (parts.length !== 2 || parts[0] !== 'evm') {\n\t\tthrow(new Error('Invalid EVMAsset string'));\n\t}\n\n\tconst value = parts[1];\n\tif (!isHexString(value)) {\n\t\tthrow(new Error('Invalid hex string in EVMAsset'));\n\t}\n\n\treturn(value);\n}\n\nexport function isEVMAsset(input: unknown): input is EVMAsset {\n\treturn(typeof input === 'string' && input.startsWith('evm:0x'));\n}\n\nexport function toTronAsset(input: string): TronAsset {\n\treturn(`tron:${input}`);\n}\n\nexport function parseTronAsset(input: TronAsset): string {\n\tconst parts = input.split(':');\n\tif (parts.length !== 2 || parts[0] !== 'tron') {\n\t\tthrow(new Error('Invalid TronAsset string'));\n\t}\n\n\tconst value = parts[1];\n\tif (!value || typeof value !== 'string' || value.length === 0) {\n\t\tthrow(new Error('Invalid hex string in TronAsset'));\n\t}\n\n\treturn(value);\n}\n\nexport function isTronAsset(input: unknown): input is TronAsset {\n\treturn(typeof input === 'string' && input.startsWith('tron:'));\n}\n\nexport function toSolanaAsset(input: string): SolanaAsset {\n\treturn(`solana:${input}`);\n}\n\nexport function parseSolanaAsset(input: SolanaAsset): string {\n\tconst parts = input.split(':');\n\tif (parts.length !== 2 || parts[0] !== 'solana') {\n\t\tthrow(new Error('Invalid SolanaAsset string'));\n\t}\n\n\tconst value = parts[1];\n\tif (!value || typeof value !== 'string' || value.length === 0) {\n\t\tthrow(new Error('Invalid string in SolanaAsset'));\n\t}\n\n\treturn(value);\n}\n\nexport function isSolanaAsset(input: unknown): input is SolanaAsset {\n\treturn(typeof input === 'string' && input.startsWith('solana:'));\n}\n\nexport function convertAssetSearchInputToCanonical(input: MovableAssetSearchInput): MovableAssetSearchCanonical {\n\tif (input instanceof CurrencyInfo.Currency || CurrencyInfo.Currency.isCurrencyCode(input) || CurrencyInfo.Currency.isISOCurrencyNumber(input)) {\n\t\tif (CurrencyInfo.Currency.isCurrencyCode(input)) {\n\t\t\treturn(input);\n\t\t} else if (CurrencyInfo.Currency.isISOCurrencyNumber(input)) {\n\t\t\tinput = new CurrencyInfo.Currency(input);\n\t\t}\n\n\t\treturn(input.code);\n\t} else {\n\t\tif (typeof input === 'string') {\n\t\t\treturn(input);\n\t\t}\n\n\t\tinput.assertKeyType(KeetaNetLib.Account.AccountKeyAlgorithm.TOKEN);\n\t\treturn(input.publicKeyString.get());\n\t}\n}\n"]}
|
package/lib/certificates.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import * as KeetaNetClient from '@keetanetwork/keetanet-client';
|
|
2
2
|
import { Buffer } from './utils/buffer.js';
|
|
3
3
|
import type { CertificateAttributeValue } from '../services/kyc/iso20022.generated.js';
|
|
4
|
-
import {
|
|
4
|
+
import { SensitiveAttribute, type CertificateAttributeNames } from './sensitive-attribute.js';
|
|
5
|
+
export { SensitiveAttribute } from './sensitive-attribute.js';
|
|
6
|
+
export type { CertificateAttributeNames } from './sensitive-attribute.js';
|
|
5
7
|
/**
|
|
6
8
|
* Short alias for the KeetaNetAccount type
|
|
7
9
|
*/
|
|
@@ -18,42 +20,6 @@ type BaseCertificateBuilderClass = typeof KeetaNetClient.lib.Utils.Certificate.C
|
|
|
18
20
|
type BaseCertificateBuilder = InstanceType<BaseCertificateBuilderClass>;
|
|
19
21
|
declare const BaseCertificateBuilder: BaseCertificateBuilderClass;
|
|
20
22
|
declare function assertCertificateAttributeNames(name: string): asserts name is CertificateAttributeNames;
|
|
21
|
-
declare class SensitiveAttribute<T = ArrayBuffer> {
|
|
22
|
-
#private;
|
|
23
|
-
constructor(account: KeetaNetAccount, data: Buffer | ArrayBuffer, decoder?: (data: Buffer | ArrayBuffer) => T);
|
|
24
|
-
private decode;
|
|
25
|
-
/**
|
|
26
|
-
* Get the value of the sensitive attribute
|
|
27
|
-
*
|
|
28
|
-
* This will decrypt the value using the account's private key
|
|
29
|
-
* and return the value as an ArrayBuffer
|
|
30
|
-
*
|
|
31
|
-
* Since sensitive attributes are binary blobs, this returns an
|
|
32
|
-
* ArrayBuffer
|
|
33
|
-
*/
|
|
34
|
-
get(): Promise<ArrayBuffer>;
|
|
35
|
-
getValue(): Promise<T>;
|
|
36
|
-
/**
|
|
37
|
-
* Generate a proof that a sensitive attribute is a given value,
|
|
38
|
-
* which can be validated by a third party using the certificate
|
|
39
|
-
* and the `validateProof` method
|
|
40
|
-
*/
|
|
41
|
-
getProof(): Promise<{
|
|
42
|
-
value: string;
|
|
43
|
-
hash: {
|
|
44
|
-
salt: string;
|
|
45
|
-
};
|
|
46
|
-
}>;
|
|
47
|
-
/**
|
|
48
|
-
* Validate the proof that a sensitive attribute is a given value
|
|
49
|
-
*/
|
|
50
|
-
validateProof(proof: Awaited<ReturnType<this['getProof']>>): Promise<boolean>;
|
|
51
|
-
toJSON(): unknown;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Type for certificate attribute names (derived from generated OID database)
|
|
55
|
-
*/
|
|
56
|
-
type CertificateAttributeNames = keyof typeof CertificateAttributeOIDDB;
|
|
57
23
|
type BaseCertificateBuilderParams = NonNullable<ConstructorParameters<BaseCertificateBuilderClass>[0]>;
|
|
58
24
|
type CertificateBuilderParams = Required<Pick<BaseCertificateBuilderParams, 'issuer' | 'validFrom' | 'validTo' | 'serial' | 'hashLib' | 'issuerDN' | 'subjectDN' | 'isCA'> & {
|
|
59
25
|
/**
|
|
@@ -72,14 +38,20 @@ export declare class CertificateBuilder extends BaseCertificateBuilder {
|
|
|
72
38
|
private static mapParams;
|
|
73
39
|
constructor(params?: Partial<CertificateBuilderParams>);
|
|
74
40
|
/**
|
|
75
|
-
* Set a KYC Attribute to a given value.
|
|
76
|
-
*
|
|
41
|
+
* Set a non-sensitive KYC Attribute to a given value.
|
|
42
|
+
*
|
|
43
|
+
* For sensitive attributes, use `setSensitiveAttribute` with a
|
|
44
|
+
* pre-created `SensitiveAttribute` instance.
|
|
45
|
+
*/
|
|
46
|
+
setAttribute<NAME extends CertificateAttributeNames>(name: NAME, value: CertificateAttributeInput<NAME>): void;
|
|
47
|
+
/**
|
|
48
|
+
* Set a pre-built SensitiveAttribute for a given attribute name.
|
|
49
|
+
*
|
|
50
|
+
* The attribute must have been encrypted for this certificate's subject.
|
|
77
51
|
*
|
|
78
|
-
*
|
|
79
|
-
* into the certificate using a commitment scheme so that the
|
|
80
|
-
* value can be proven later without revealing it.
|
|
52
|
+
* @throws Error if the attribute was encrypted for a different subject
|
|
81
53
|
*/
|
|
82
|
-
|
|
54
|
+
setSensitiveAttribute<NAME extends CertificateAttributeNames>(name: NAME, attribute: SensitiveAttribute<CertificateAttributeValue<NAME>>): void;
|
|
83
55
|
protected addExtensions(...args: Parameters<BaseCertificateBuilder['addExtensions']>): ReturnType<BaseCertificateBuilder['addExtensions']>;
|
|
84
56
|
/**
|
|
85
57
|
* Create a Certificate object from the builder
|
|
@@ -199,5 +171,4 @@ export declare class SharableCertificateAttributes {
|
|
|
199
171
|
}): Promise<string>;
|
|
200
172
|
export(options?: SharableCertificateAttributesExportOptions): Promise<ArrayBuffer | string>;
|
|
201
173
|
}
|
|
202
|
-
export {};
|
|
203
174
|
//# sourceMappingURL=certificates.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"certificates.d.ts","sourceRoot":"","sources":["../../src/lib/certificates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,cAAc,MAAM,+BAA+B,CAAC;AAGhE,OAAO,
|
|
1
|
+
{"version":3,"file":"certificates.d.ts","sourceRoot":"","sources":["../../src/lib/certificates.ts"],"names":[],"mappings":"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"}
|