@propxchain/core-client 0.1.0-canary.3
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/README.md +115 -0
- package/dist/canisters/document_storage/document_storage.did.d.ts +7 -0
- package/dist/canisters/document_storage/document_storage.did.d.ts.map +1 -0
- package/dist/canisters/document_storage/document_storage.did.js +82 -0
- package/dist/canisters/document_storage/document_storage.did.js.map +1 -0
- package/dist/canisters/document_storage/index.d.ts +4 -0
- package/dist/canisters/document_storage/index.d.ts.map +1 -0
- package/dist/canisters/document_storage/index.js +2 -0
- package/dist/canisters/document_storage/index.js.map +1 -0
- package/dist/canisters/ledger_manager/index.d.ts +4 -0
- package/dist/canisters/ledger_manager/index.d.ts.map +1 -0
- package/dist/canisters/ledger_manager/index.js +2 -0
- package/dist/canisters/ledger_manager/index.js.map +1 -0
- package/dist/canisters/ledger_manager/ledger_manager.did.d.ts +7 -0
- package/dist/canisters/ledger_manager/ledger_manager.did.d.ts.map +1 -0
- package/dist/canisters/ledger_manager/ledger_manager.did.js +138 -0
- package/dist/canisters/ledger_manager/ledger_manager.did.js.map +1 -0
- package/dist/canisters/transaction_manager/index.d.ts +4 -0
- package/dist/canisters/transaction_manager/index.d.ts.map +1 -0
- package/dist/canisters/transaction_manager/index.js +2 -0
- package/dist/canisters/transaction_manager/index.js.map +1 -0
- package/dist/canisters/transaction_manager/transaction_manager.did.d.ts +7 -0
- package/dist/canisters/transaction_manager/transaction_manager.did.d.ts.map +1 -0
- package/dist/canisters/transaction_manager/transaction_manager.did.js +515 -0
- package/dist/canisters/transaction_manager/transaction_manager.did.js.map +1 -0
- package/dist/canisters/user_management/index.d.ts +4 -0
- package/dist/canisters/user_management/index.d.ts.map +1 -0
- package/dist/canisters/user_management/index.js +2 -0
- package/dist/canisters/user_management/index.js.map +1 -0
- package/dist/canisters/user_management/user_management.did.d.ts +7 -0
- package/dist/canisters/user_management/user_management.did.d.ts.map +1 -0
- package/dist/canisters/user_management/user_management.did.js +137 -0
- package/dist/canisters/user_management/user_management.did.js.map +1 -0
- package/dist/client.d.ts +13 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +41 -0
- package/dist/client.js.map +1 -0
- package/dist/errors.d.ts +8 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +22 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +7 -0
- package/dist/index.js.map +1 -0
- package/dist/mock.d.ts +22 -0
- package/dist/mock.d.ts.map +1 -0
- package/dist/mock.js +94 -0
- package/dist/mock.js.map +1 -0
- package/dist/retry.d.ts +11 -0
- package/dist/retry.d.ts.map +1 -0
- package/dist/retry.js +22 -0
- package/dist/retry.js.map +1 -0
- package/dist/stubs.d.ts +34 -0
- package/dist/stubs.d.ts.map +1 -0
- package/dist/stubs.js +17 -0
- package/dist/stubs.js.map +1 -0
- package/dist/types.d.ts +30 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +7 -0
- package/dist/types.js.map +1 -0
- package/package.json +58 -0
- package/src/canisters/document_storage/document_storage.did +89 -0
- package/src/canisters/document_storage/document_storage.did.d.ts +82 -0
- package/src/canisters/document_storage/document_storage.did.js +121 -0
- package/src/canisters/document_storage/index.ts +5 -0
- package/src/canisters/ledger_manager/index.ts +5 -0
- package/src/canisters/ledger_manager/ledger_manager.did +154 -0
- package/src/canisters/ledger_manager/ledger_manager.did.d.ts +139 -0
- package/src/canisters/ledger_manager/ledger_manager.did.js +181 -0
- package/src/canisters/transaction_manager/index.ts +5 -0
- package/src/canisters/transaction_manager/transaction_manager.did +599 -0
- package/src/canisters/transaction_manager/transaction_manager.did.d.ts +517 -0
- package/src/canisters/transaction_manager/transaction_manager.did.js +638 -0
- package/src/canisters/user_management/index.ts +5 -0
- package/src/canisters/user_management/user_management.did +147 -0
- package/src/canisters/user_management/user_management.did.d.ts +148 -0
- package/src/canisters/user_management/user_management.did.js +192 -0
- package/src/client.ts +77 -0
- package/src/errors.ts +31 -0
- package/src/index.ts +30 -0
- package/src/mock.ts +120 -0
- package/src/retry.ts +44 -0
- package/src/stubs.ts +60 -0
- package/src/types.ts +44 -0
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
export const idlFactory = ({ IDL }) => {
|
|
2
|
+
const UserType = IDL.Variant({
|
|
3
|
+
'solicitor_platform_only': IDL.Null,
|
|
4
|
+
'admin': IDL.Null,
|
|
5
|
+
'diy_buyer': IDL.Null,
|
|
6
|
+
'solicitor_transparent': IDL.Null,
|
|
7
|
+
'platform_admin': IDL.Null,
|
|
8
|
+
'solicitor_client_linked': IDL.Null,
|
|
9
|
+
'estate_agent': IDL.Null,
|
|
10
|
+
'platform_support': IDL.Null,
|
|
11
|
+
'mortgage_broker': IDL.Null,
|
|
12
|
+
'seller': IDL.Null,
|
|
13
|
+
'conveyancer_managed': IDL.Null,
|
|
14
|
+
'diy_seller': IDL.Null,
|
|
15
|
+
'assisted_seller': IDL.Null,
|
|
16
|
+
'conveyancer_transparent': IDL.Null,
|
|
17
|
+
'buyer': IDL.Null,
|
|
18
|
+
'property_developer': IDL.Null,
|
|
19
|
+
'solicitor_managed': IDL.Null,
|
|
20
|
+
'assisted_buyer': IDL.Null,
|
|
21
|
+
});
|
|
22
|
+
const Permission = IDL.Variant({
|
|
23
|
+
'ViewTransactionProgress': IDL.Text,
|
|
24
|
+
'ViewSharedTransaction': IDL.Text,
|
|
25
|
+
'ViewDevelopmentUnits': IDL.Text,
|
|
26
|
+
'ManageClientAccess': IDL.Principal,
|
|
27
|
+
'InvitePartyToTransaction': IDL.Text,
|
|
28
|
+
'AdminViewAllTransactions': IDL.Null,
|
|
29
|
+
'AdminManageUsers': IDL.Null,
|
|
30
|
+
'UpdateMemberDocuments': IDL.Tuple(IDL.Text, IDL.Principal),
|
|
31
|
+
});
|
|
32
|
+
const Time = IDL.Int;
|
|
33
|
+
const UserRole = IDL.Variant({
|
|
34
|
+
'admin': IDL.Null,
|
|
35
|
+
'solicitor': IDL.Null,
|
|
36
|
+
'seller': IDL.Null,
|
|
37
|
+
'guest': IDL.Null,
|
|
38
|
+
'buyer': IDL.Null,
|
|
39
|
+
});
|
|
40
|
+
const UserProfile = IDL.Record({
|
|
41
|
+
'isPlatformOnlySolicitor': IDL.Bool,
|
|
42
|
+
'userType': UserType,
|
|
43
|
+
'principal': IDL.Principal,
|
|
44
|
+
'managedBySolicitor': IDL.Opt(IDL.Principal),
|
|
45
|
+
'emailVerified': IDL.Bool,
|
|
46
|
+
'name': IDL.Text,
|
|
47
|
+
'createdAt': Time,
|
|
48
|
+
'role': IDL.Opt(UserRole),
|
|
49
|
+
'email': IDL.Text,
|
|
50
|
+
'lawFirmName': IDL.Opt(IDL.Text),
|
|
51
|
+
'isVerified': IDL.Bool,
|
|
52
|
+
'clientPrincipals': IDL.Vec(IDL.Principal),
|
|
53
|
+
'emailVerificationSentAt': IDL.Opt(Time),
|
|
54
|
+
'emailVerificationToken': IDL.Opt(IDL.Text),
|
|
55
|
+
'mobile': IDL.Text,
|
|
56
|
+
'solicitorLicenseNumber': IDL.Opt(IDL.Text),
|
|
57
|
+
'lawFirmAddress': IDL.Opt(IDL.Text),
|
|
58
|
+
});
|
|
59
|
+
const AuditLog = IDL.Record({
|
|
60
|
+
'id': IDL.Nat,
|
|
61
|
+
'action': IDL.Text,
|
|
62
|
+
'metadata': IDL.Text,
|
|
63
|
+
'targetPrincipal': IDL.Opt(IDL.Principal),
|
|
64
|
+
'timestamp': Time,
|
|
65
|
+
'success': IDL.Bool,
|
|
66
|
+
'actorPrincipal': IDL.Principal,
|
|
67
|
+
'transactionId': IDL.Opt(IDL.Text),
|
|
68
|
+
});
|
|
69
|
+
const TransactionMember = IDL.Record({
|
|
70
|
+
'uploadedDocuments': IDL.Vec(IDL.Text),
|
|
71
|
+
'principal': IDL.Principal,
|
|
72
|
+
'requiredDocuments': IDL.Vec(IDL.Text),
|
|
73
|
+
'joinedAt': Time,
|
|
74
|
+
'role': UserType,
|
|
75
|
+
'documentsComplete': IDL.Bool,
|
|
76
|
+
'canViewProgress': IDL.Bool,
|
|
77
|
+
'canInviteOthers': IDL.Bool,
|
|
78
|
+
'lastActivityAt': Time,
|
|
79
|
+
'transactionId': IDL.Text,
|
|
80
|
+
});
|
|
81
|
+
const TransactionProgress = IDL.Record({
|
|
82
|
+
'members': IDL.Vec(TransactionMember),
|
|
83
|
+
'completionPercentage': IDL.Nat,
|
|
84
|
+
'readyToExchange': IDL.Bool,
|
|
85
|
+
'membersComplete': IDL.Nat,
|
|
86
|
+
'totalMembers': IDL.Nat,
|
|
87
|
+
'blockingParties': IDL.Vec(IDL.Principal),
|
|
88
|
+
'transactionId': IDL.Text,
|
|
89
|
+
});
|
|
90
|
+
return IDL.Service({
|
|
91
|
+
'addTransactionMember': IDL.Func([IDL.Text, IDL.Principal, UserType, IDL.Bool, IDL.Bool, IDL.Text], [IDL.Bool], []),
|
|
92
|
+
'amIAdmin': IDL.Func([], [IDL.Bool], ['query']),
|
|
93
|
+
'bootstrapAdmin': IDL.Func([IDL.Text, IDL.Text], [IDL.Bool], []),
|
|
94
|
+
'canUserAccessTransaction': IDL.Func([IDL.Principal, IDL.Text], [IDL.Bool], ['query']),
|
|
95
|
+
'checkPermissionWithAudit': IDL.Func([Permission], [IDL.Bool], []),
|
|
96
|
+
'createUserForPrincipal': IDL.Func([IDL.Principal, IDL.Text, IDL.Text, IDL.Text, IDL.Text, IDL.Text], [IDL.Bool], []),
|
|
97
|
+
'deleteUserByPrincipal': IDL.Func([IDL.Principal, IDL.Text], [IDL.Bool], []),
|
|
98
|
+
'generateCSRFToken': IDL.Func([], [IDL.Text], []),
|
|
99
|
+
'getAllUsers': IDL.Func([], [IDL.Vec(UserProfile)], ['query']),
|
|
100
|
+
'getAuditLogs': IDL.Func([IDL.Nat], [IDL.Vec(AuditLog)], ['query']),
|
|
101
|
+
'getCSRFToken': IDL.Func([], [IDL.Opt(IDL.Text)], ['query']),
|
|
102
|
+
'getCycles': IDL.Func([], [IDL.Nat], ['query']),
|
|
103
|
+
'getMyManagingSolicitor': IDL.Func([], [IDL.Opt(UserProfile)], ['query']),
|
|
104
|
+
'getMyProfile': IDL.Func([], [IDL.Opt(UserProfile)], ['query']),
|
|
105
|
+
'getMyProfileUpdate': IDL.Func([], [IDL.Opt(UserProfile)], []),
|
|
106
|
+
'getMySolicitorClients': IDL.Func([], [IDL.Vec(UserProfile)], ['query']),
|
|
107
|
+
'getTransactionMembers': IDL.Func([IDL.Text], [IDL.Opt(IDL.Vec(TransactionMember))], ['query']),
|
|
108
|
+
'getTransactionProgress': IDL.Func([IDL.Text], [IDL.Opt(TransactionProgress)], ['query']),
|
|
109
|
+
'getUserProfile': IDL.Func([IDL.Principal], [IDL.Opt(UserProfile)], ['query']),
|
|
110
|
+
'hasPermission': IDL.Func([Permission], [IDL.Bool], ['query']),
|
|
111
|
+
'initializeKnownAdmin': IDL.Func([IDL.Text, IDL.Text, IDL.Text], [IDL.Bool], []),
|
|
112
|
+
'linkSolicitorToClient': IDL.Func([IDL.Principal, IDL.Bool, IDL.Text], [IDL.Bool], []),
|
|
113
|
+
'registerUser': IDL.Func([IDL.Text, IDL.Text, IDL.Text, IDL.Text], [IDL.Bool], []),
|
|
114
|
+
'registerUserV2': IDL.Func([
|
|
115
|
+
IDL.Text,
|
|
116
|
+
IDL.Text,
|
|
117
|
+
IDL.Text,
|
|
118
|
+
UserType,
|
|
119
|
+
IDL.Opt(IDL.Text),
|
|
120
|
+
IDL.Opt(IDL.Text),
|
|
121
|
+
IDL.Opt(IDL.Text),
|
|
122
|
+
IDL.Text,
|
|
123
|
+
], [IDL.Bool], []),
|
|
124
|
+
'resendVerificationEmail': IDL.Func([IDL.Text], [IDL.Bool], []),
|
|
125
|
+
'revokeSolicitorAccess': IDL.Func([IDL.Principal, IDL.Text], [IDL.Bool], []),
|
|
126
|
+
'updateMemberDocuments': IDL.Func([IDL.Text, IDL.Text, IDL.Text], [IDL.Bool], []),
|
|
127
|
+
'updateTransactionMemberRequiredDocs': IDL.Func([IDL.Text, IDL.Vec(IDL.Text), IDL.Text], [IDL.Bool], []),
|
|
128
|
+
'upgradeToAdmin': IDL.Func([IDL.Principal, IDL.Text], [IDL.Bool], []),
|
|
129
|
+
'validateAdmin': IDL.Func([IDL.Principal], [IDL.Bool], ['query']),
|
|
130
|
+
'validateCSRFToken': IDL.Func([IDL.Text], [IDL.Bool], []),
|
|
131
|
+
'verifyEmail': IDL.Func([IDL.Text, IDL.Text], [IDL.Bool], []),
|
|
132
|
+
'verifyUser': IDL.Func([IDL.Principal, IDL.Text], [IDL.Bool], []),
|
|
133
|
+
'whoAmI': IDL.Func([], [IDL.Principal], ['query']),
|
|
134
|
+
});
|
|
135
|
+
};
|
|
136
|
+
export const init = ({ IDL }) => { return []; };
|
|
137
|
+
//# sourceMappingURL=user_management.did.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user_management.did.js","sourceRoot":"","sources":["../../../src/canisters/user_management/user_management.did.js"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { TransactionManagerService, DocumentStorageService, UserManagementService, LedgerManagerService } from "./types.js";
|
|
2
|
+
import { type PropXchainClientOptions, type IPropXchainClient } from "./types.js";
|
|
3
|
+
import { type AuditTrailStub, type AgentHarnessStub } from "./stubs.js";
|
|
4
|
+
export declare class PropXchainClient implements IPropXchainClient {
|
|
5
|
+
readonly transactionManager: TransactionManagerService;
|
|
6
|
+
readonly documentStorage: DocumentStorageService;
|
|
7
|
+
readonly userManagement: UserManagementService;
|
|
8
|
+
readonly ledgerManager: LedgerManagerService;
|
|
9
|
+
readonly auditTrail: AuditTrailStub;
|
|
10
|
+
readonly agentHarness: AgentHarnessStub;
|
|
11
|
+
constructor(options?: PropXchainClientOptions);
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EAGL,KAAK,uBAAuB,EAC5B,KAAK,iBAAiB,EACvB,MAAM,YAAY,CAAC;AACpB,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAKpB,qBAAa,gBAAiB,YAAW,iBAAiB;IACxD,QAAQ,CAAC,kBAAkB,EAAE,yBAAyB,CAAC;IACvD,QAAQ,CAAC,eAAe,EAAE,sBAAsB,CAAC;IACjD,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;IAC7C,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;gBAE5B,OAAO,GAAE,uBAA4B;CAyClD"}
|
package/dist/client.js
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Actor, HttpAgent } from "@dfinity/agent";
|
|
2
|
+
import { idlFactory as transactionManagerIdl } from "./canisters/transaction_manager/index.js";
|
|
3
|
+
import { idlFactory as documentStorageIdl } from "./canisters/document_storage/index.js";
|
|
4
|
+
import { idlFactory as userManagementIdl } from "./canisters/user_management/index.js";
|
|
5
|
+
import { idlFactory as ledgerManagerIdl } from "./canisters/ledger_manager/index.js";
|
|
6
|
+
import { MAINNET_CANISTER_IDS, } from "./types.js";
|
|
7
|
+
import { createAuditTrailStub, createAgentHarnessStub, } from "./stubs.js";
|
|
8
|
+
import { wrapAgentError } from "./errors.js";
|
|
9
|
+
const DEFAULT_HOST = "https://icp-api.io";
|
|
10
|
+
export class PropXchainClient {
|
|
11
|
+
transactionManager;
|
|
12
|
+
documentStorage;
|
|
13
|
+
userManagement;
|
|
14
|
+
ledgerManager;
|
|
15
|
+
auditTrail;
|
|
16
|
+
agentHarness;
|
|
17
|
+
constructor(options = {}) {
|
|
18
|
+
const canisterIds = {
|
|
19
|
+
...MAINNET_CANISTER_IDS,
|
|
20
|
+
...options.canisterIds,
|
|
21
|
+
};
|
|
22
|
+
const agent = options.agent ??
|
|
23
|
+
HttpAgent.createSync({
|
|
24
|
+
host: options.host ?? DEFAULT_HOST,
|
|
25
|
+
identity: options.identity,
|
|
26
|
+
});
|
|
27
|
+
const isLocal = options.fetchRootKey ?? /127\.0\.0\.1|localhost/.test(options.host ?? "");
|
|
28
|
+
if (isLocal) {
|
|
29
|
+
agent.fetchRootKey().catch((err) => {
|
|
30
|
+
throw wrapAgentError(err);
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
this.transactionManager = Actor.createActor(transactionManagerIdl, { agent, canisterId: canisterIds.transactionManager });
|
|
34
|
+
this.documentStorage = Actor.createActor(documentStorageIdl, { agent, canisterId: canisterIds.documentStorage });
|
|
35
|
+
this.userManagement = Actor.createActor(userManagementIdl, { agent, canisterId: canisterIds.userManagement });
|
|
36
|
+
this.ledgerManager = Actor.createActor(ledgerManagerIdl, { agent, canisterId: canisterIds.ledgerManager });
|
|
37
|
+
this.auditTrail = createAuditTrailStub();
|
|
38
|
+
this.agentHarness = createAgentHarnessStub();
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,UAAU,IAAI,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAC/F,OAAO,EAAE,UAAU,IAAI,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AACzF,OAAO,EAAE,UAAU,IAAI,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,UAAU,IAAI,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AAOrF,OAAO,EACL,oBAAoB,GAIrB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oBAAoB,EACpB,sBAAsB,GAGvB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C,MAAM,YAAY,GAAG,oBAAoB,CAAC;AAE1C,MAAM,OAAO,gBAAgB;IAClB,kBAAkB,CAA4B;IAC9C,eAAe,CAAyB;IACxC,cAAc,CAAwB;IACtC,aAAa,CAAuB;IACpC,UAAU,CAAiB;IAC3B,YAAY,CAAmB;IAExC,YAAY,UAAmC,EAAE;QAC/C,MAAM,WAAW,GAAgB;YAC/B,GAAG,oBAAoB;YACvB,GAAG,OAAO,CAAC,WAAW;SACvB,CAAC;QAEF,MAAM,KAAK,GACT,OAAO,CAAC,KAAK;YACb,SAAS,CAAC,UAAU,CAAC;gBACnB,IAAI,EAAE,OAAO,CAAC,IAAI,IAAI,YAAY;gBAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;aAC3B,CAAC,CAAC;QAEL,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,IAAI,wBAAwB,CAAC,IAAI,CACnE,OAAO,CAAC,IAAI,IAAI,EAAE,CACnB,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACjC,MAAM,cAAc,CAAC,GAAG,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,WAAW,CACzC,qBAAqB,EACrB,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC,kBAAkB,EAAE,CACtD,CAAC;QACF,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,WAAW,CACtC,kBAAkB,EAClB,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC,eAAe,EAAE,CACnD,CAAC;QACF,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC,WAAW,CACrC,iBAAiB,EACjB,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC,cAAc,EAAE,CAClD,CAAC;QACF,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,WAAW,CACpC,gBAAgB,EAChB,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC,aAAa,EAAE,CACjD,CAAC;QACF,IAAI,CAAC,UAAU,GAAG,oBAAoB,EAAE,CAAC;QACzC,IAAI,CAAC,YAAY,GAAG,sBAAsB,EAAE,CAAC;IAC/C,CAAC;CACF"}
|
package/dist/errors.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type CoreClientErrorCode = "NETWORK" | "CANISTER_REJECT" | "UNAUTHENTICATED" | "TIMEOUT" | "INVALID_ARGUMENT" | "UNKNOWN";
|
|
2
|
+
export declare class CoreClientError extends Error {
|
|
3
|
+
readonly code: CoreClientErrorCode;
|
|
4
|
+
readonly cause?: unknown;
|
|
5
|
+
constructor(code: CoreClientErrorCode, message: string, cause?: unknown);
|
|
6
|
+
}
|
|
7
|
+
export declare function wrapAgentError(err: unknown): CoreClientError;
|
|
8
|
+
//# sourceMappingURL=errors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,mBAAmB,GAC3B,SAAS,GACT,iBAAiB,GACjB,iBAAiB,GACjB,SAAS,GACT,kBAAkB,GAClB,SAAS,CAAC;AAEd,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,CAAC;IACnC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;gBAEb,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO;CAMxE;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,eAAe,CAU5D"}
|
package/dist/errors.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export class CoreClientError extends Error {
|
|
2
|
+
code;
|
|
3
|
+
cause;
|
|
4
|
+
constructor(code, message, cause) {
|
|
5
|
+
super(message);
|
|
6
|
+
this.name = "CoreClientError";
|
|
7
|
+
this.code = code;
|
|
8
|
+
this.cause = cause;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export function wrapAgentError(err) {
|
|
12
|
+
if (err instanceof CoreClientError)
|
|
13
|
+
return err;
|
|
14
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
15
|
+
const code = /reject|trapped/i.test(message) ? "CANISTER_REJECT" :
|
|
16
|
+
/timeout|timed out/i.test(message) ? "TIMEOUT" :
|
|
17
|
+
/unauthoriz|unauthent|anonymous/i.test(message) ? "UNAUTHENTICATED" :
|
|
18
|
+
/network|fetch/i.test(message) ? "NETWORK" :
|
|
19
|
+
"UNKNOWN";
|
|
20
|
+
return new CoreClientError(code, message, err);
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAQA,MAAM,OAAO,eAAgB,SAAQ,KAAK;IAC/B,IAAI,CAAsB;IAC1B,KAAK,CAAW;IAEzB,YAAY,IAAyB,EAAE,OAAe,EAAE,KAAe;QACrE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CACF;AAED,MAAM,UAAU,cAAc,CAAC,GAAY;IACzC,IAAI,GAAG,YAAY,eAAe;QAAE,OAAO,GAAG,CAAC;IAC/C,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjE,MAAM,IAAI,GACR,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;QACrD,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAChD,iCAAiC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC;gBACrE,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;oBAC5C,SAAS,CAAC;IACZ,OAAO,IAAI,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;AACjD,CAAC"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { PropXchainClient } from "./client.js";
|
|
2
|
+
export { MockPropXchainClient, isMockEnabled, MOCK_ENV_FLAG, } from "./mock.js";
|
|
3
|
+
export { CoreClientError, wrapAgentError, type CoreClientErrorCode, } from "./errors.js";
|
|
4
|
+
export { withRetry, type RetryOptions } from "./retry.js";
|
|
5
|
+
export { createAuditTrailStub, createAgentHarnessStub, type AuditTrailStub, type AgentHarnessStub, type AuditEvent, type AuditFilter, } from "./stubs.js";
|
|
6
|
+
export { MAINNET_CANISTER_IDS, type CanisterIds, type IPropXchainClient, type PropXchainClientOptions, type TransactionManagerService, type DocumentStorageService, type UserManagementService, type LedgerManagerService, } from "./types.js";
|
|
7
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,eAAe,EACf,cAAc,EACd,KAAK,mBAAmB,GACzB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,SAAS,EAAE,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1D,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EACf,KAAK,WAAW,GACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oBAAoB,EACpB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,GAC1B,MAAM,YAAY,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { PropXchainClient } from "./client.js";
|
|
2
|
+
export { MockPropXchainClient, isMockEnabled, MOCK_ENV_FLAG, } from "./mock.js";
|
|
3
|
+
export { CoreClientError, wrapAgentError, } from "./errors.js";
|
|
4
|
+
export { withRetry } from "./retry.js";
|
|
5
|
+
export { createAuditTrailStub, createAgentHarnessStub, } from "./stubs.js";
|
|
6
|
+
export { MAINNET_CANISTER_IDS, } from "./types.js";
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,aAAa,GACd,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,eAAe,EACf,cAAc,GAEf,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,SAAS,EAAqB,MAAM,YAAY,CAAC;AAC1D,OAAO,EACL,oBAAoB,EACpB,sBAAsB,GAKvB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oBAAoB,GAQrB,MAAM,YAAY,CAAC"}
|
package/dist/mock.d.ts
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { IPropXchainClient, TransactionManagerService, DocumentStorageService, UserManagementService, LedgerManagerService } from "./types.js";
|
|
2
|
+
import { type AuditTrailStub, type AgentHarnessStub } from "./stubs.js";
|
|
3
|
+
export declare const MOCK_ENV_FLAG = "NEXT_PUBLIC_USE_MOCK";
|
|
4
|
+
export declare function createMockTransactionManager(): TransactionManagerService;
|
|
5
|
+
export declare function createMockDocumentStorage(): DocumentStorageService;
|
|
6
|
+
export declare function createMockUserManagement(): UserManagementService;
|
|
7
|
+
export declare function createMockLedgerManager(): LedgerManagerService;
|
|
8
|
+
export declare class MockPropXchainClient implements IPropXchainClient {
|
|
9
|
+
readonly transactionManager: TransactionManagerService;
|
|
10
|
+
readonly documentStorage: DocumentStorageService;
|
|
11
|
+
readonly userManagement: UserManagementService;
|
|
12
|
+
readonly ledgerManager: LedgerManagerService;
|
|
13
|
+
readonly auditTrail: AuditTrailStub;
|
|
14
|
+
readonly agentHarness: AgentHarnessStub;
|
|
15
|
+
constructor();
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* True when NEXT_PUBLIC_USE_MOCK is set to "true" (case-insensitive).
|
|
19
|
+
* Consumers decide at construction time which client to use.
|
|
20
|
+
*/
|
|
21
|
+
export declare function isMockEnabled(env?: Record<string, string | undefined>): boolean;
|
|
22
|
+
//# sourceMappingURL=mock.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock.d.ts","sourceRoot":"","sources":["../src/mock.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,iBAAiB,EACjB,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,EACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACtB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,aAAa,yBAAyB,CAAC;AAwBpD,wBAAgB,4BAA4B,IAAI,yBAAyB,CAsBxE;AAED,wBAAgB,yBAAyB,IAAI,sBAAsB,CAYlE;AAED,wBAAgB,wBAAwB,IAAI,qBAAqB,CAIhE;AAED,wBAAgB,uBAAuB,IAAI,oBAAoB,CAI9D;AAED,qBAAa,oBAAqB,YAAW,iBAAiB;IAC5D,QAAQ,CAAC,kBAAkB,EAAE,yBAAyB,CAAC;IACvD,QAAQ,CAAC,eAAe,EAAE,sBAAsB,CAAC;IACjD,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;IAC7C,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;;CAUzC;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,GAAG,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAa,GAAG,OAAO,CAG1F"}
|
package/dist/mock.js
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { Principal } from "@dfinity/principal";
|
|
2
|
+
import { createAuditTrailStub, createAgentHarnessStub, } from "./stubs.js";
|
|
3
|
+
export const MOCK_ENV_FLAG = "NEXT_PUBLIC_USE_MOCK";
|
|
4
|
+
const MOCK_PRINCIPAL = Principal.fromText("2vxsx-fae");
|
|
5
|
+
const NOW = 1735689600000000000n; // 2026-01-01 as ns bigint for determinism
|
|
6
|
+
/**
|
|
7
|
+
* Build a Proxy that returns a deterministic mock for any method call.
|
|
8
|
+
* Specific methods listed in `overrides` take precedence. Anything else
|
|
9
|
+
* returns a harmless default matching typical Candid shapes.
|
|
10
|
+
*/
|
|
11
|
+
function mockService(overrides) {
|
|
12
|
+
return new Proxy({}, {
|
|
13
|
+
get(_target, prop) {
|
|
14
|
+
const override = overrides[prop];
|
|
15
|
+
if (typeof override === "function")
|
|
16
|
+
return override;
|
|
17
|
+
return async () => ({ ok: null });
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
export function createMockTransactionManager() {
|
|
22
|
+
return mockService({
|
|
23
|
+
getMyTransactions: async () => [],
|
|
24
|
+
getAllTransactions: async () => [],
|
|
25
|
+
getCycles: async () => 1000000000000n,
|
|
26
|
+
getTransaction: async (id) => typeof id === "string" && id === "mock-tx-001"
|
|
27
|
+
? [{
|
|
28
|
+
id: "mock-tx-001",
|
|
29
|
+
propertyAddress: "1 Mock Street, Sandy, SG19 0AA",
|
|
30
|
+
buyer: MOCK_PRINCIPAL,
|
|
31
|
+
seller: MOCK_PRINCIPAL,
|
|
32
|
+
price: 350000n,
|
|
33
|
+
status: { pending: null },
|
|
34
|
+
createdAt: NOW,
|
|
35
|
+
}]
|
|
36
|
+
: [],
|
|
37
|
+
doesTransactionExist: async (id) => id === "mock-tx-001",
|
|
38
|
+
getUnreadNotificationCount: async () => 0n,
|
|
39
|
+
getMyNotifications: async () => [],
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
export function createMockDocumentStorage() {
|
|
43
|
+
return mockService({
|
|
44
|
+
getCycles: async () => 500000000000n,
|
|
45
|
+
getStorageStats: async () => ({
|
|
46
|
+
averageFileSizeBytes: 0n,
|
|
47
|
+
totalSizeBytes: 0n,
|
|
48
|
+
verifiedDocuments: 0n,
|
|
49
|
+
totalDocuments: 0n,
|
|
50
|
+
}),
|
|
51
|
+
getTransactionDocuments: async () => [],
|
|
52
|
+
getAuditLogs: async () => [],
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
export function createMockUserManagement() {
|
|
56
|
+
return mockService({
|
|
57
|
+
getCycles: async () => 400000000000n,
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
export function createMockLedgerManager() {
|
|
61
|
+
return mockService({
|
|
62
|
+
getCycles: async () => 600000000000n,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
export class MockPropXchainClient {
|
|
66
|
+
transactionManager;
|
|
67
|
+
documentStorage;
|
|
68
|
+
userManagement;
|
|
69
|
+
ledgerManager;
|
|
70
|
+
auditTrail;
|
|
71
|
+
agentHarness;
|
|
72
|
+
constructor() {
|
|
73
|
+
this.transactionManager = createMockTransactionManager();
|
|
74
|
+
this.documentStorage = createMockDocumentStorage();
|
|
75
|
+
this.userManagement = createMockUserManagement();
|
|
76
|
+
this.ledgerManager = createMockLedgerManager();
|
|
77
|
+
this.auditTrail = createAuditTrailStub();
|
|
78
|
+
this.agentHarness = createAgentHarnessStub();
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* True when NEXT_PUBLIC_USE_MOCK is set to "true" (case-insensitive).
|
|
83
|
+
* Consumers decide at construction time which client to use.
|
|
84
|
+
*/
|
|
85
|
+
export function isMockEnabled(env = readEnv()) {
|
|
86
|
+
const raw = env[MOCK_ENV_FLAG];
|
|
87
|
+
return typeof raw === "string" && raw.toLowerCase() === "true";
|
|
88
|
+
}
|
|
89
|
+
function readEnv() {
|
|
90
|
+
if (typeof process !== "undefined" && process.env)
|
|
91
|
+
return process.env;
|
|
92
|
+
return {};
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=mock.js.map
|
package/dist/mock.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock.js","sourceRoot":"","sources":["../src/mock.ts"],"names":[],"mappings":"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"}
|
package/dist/retry.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { CoreClientError } from "./errors.js";
|
|
2
|
+
export interface RetryOptions {
|
|
3
|
+
retries?: number;
|
|
4
|
+
initialDelayMs?: number;
|
|
5
|
+
maxDelayMs?: number;
|
|
6
|
+
factor?: number;
|
|
7
|
+
shouldRetry?: (err: CoreClientError, attempt: number) => boolean;
|
|
8
|
+
sleep?: (ms: number) => Promise<void>;
|
|
9
|
+
}
|
|
10
|
+
export declare function withRetry<T>(fn: () => Promise<T>, options?: RetryOptions): Promise<T>;
|
|
11
|
+
//# sourceMappingURL=retry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAkB,MAAM,aAAa,CAAC;AAE9D,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IACjE,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAQD,wBAAsB,SAAS,CAAC,CAAC,EAC/B,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACpB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,CAAC,CAAC,CAuBZ"}
|
package/dist/retry.js
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { wrapAgentError } from "./errors.js";
|
|
2
|
+
const defaultShouldRetry = (err) => err.code === "NETWORK" || err.code === "TIMEOUT";
|
|
3
|
+
const defaultSleep = (ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
4
|
+
export async function withRetry(fn, options = {}) {
|
|
5
|
+
const { retries = 3, initialDelayMs = 200, maxDelayMs = 2000, factor = 2, shouldRetry = defaultShouldRetry, sleep = defaultSleep, } = options;
|
|
6
|
+
let attempt = 0;
|
|
7
|
+
let delay = initialDelayMs;
|
|
8
|
+
while (true) {
|
|
9
|
+
try {
|
|
10
|
+
return await fn();
|
|
11
|
+
}
|
|
12
|
+
catch (raw) {
|
|
13
|
+
const err = wrapAgentError(raw);
|
|
14
|
+
if (attempt >= retries || !shouldRetry(err, attempt))
|
|
15
|
+
throw err;
|
|
16
|
+
await sleep(delay);
|
|
17
|
+
delay = Math.min(delay * factor, maxDelayMs);
|
|
18
|
+
attempt += 1;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=retry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../src/retry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,cAAc,EAAE,MAAM,aAAa,CAAC;AAW9D,MAAM,kBAAkB,GAAG,CAAC,GAAoB,EAAE,EAAE,CAClD,GAAG,CAAC,IAAI,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC;AAEnD,MAAM,YAAY,GAAG,CAAC,EAAU,EAAE,EAAE,CAClC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAE1D,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,EAAoB,EACpB,UAAwB,EAAE;IAE1B,MAAM,EACJ,OAAO,GAAG,CAAC,EACX,cAAc,GAAG,GAAG,EACpB,UAAU,GAAG,IAAI,EACjB,MAAM,GAAG,CAAC,EACV,WAAW,GAAG,kBAAkB,EAChC,KAAK,GAAG,YAAY,GACrB,GAAG,OAAO,CAAC;IAEZ,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,KAAK,GAAG,cAAc,CAAC;IAC3B,OAAO,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,OAAO,IAAI,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC;gBAAE,MAAM,GAAG,CAAC;YAChE,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;YACnB,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,EAAE,UAAU,CAAC,CAAC;YAC7C,OAAO,IAAI,CAAC,CAAC;QACf,CAAC;IACH,CAAC;AACH,CAAC"}
|
package/dist/stubs.d.ts
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Audit trail canister is not yet deployed. This stub exists so consumers can
|
|
3
|
+
* depend on a stable surface area now; real methods land when the canister ships.
|
|
4
|
+
*/
|
|
5
|
+
export interface AuditTrailStub {
|
|
6
|
+
readonly __stub: true;
|
|
7
|
+
append(event: AuditEvent): Promise<never>;
|
|
8
|
+
query(filter: AuditFilter): Promise<never>;
|
|
9
|
+
}
|
|
10
|
+
export interface AuditEvent {
|
|
11
|
+
transactionId: string;
|
|
12
|
+
actor: string;
|
|
13
|
+
action: string;
|
|
14
|
+
timestamp: bigint;
|
|
15
|
+
metadata?: Record<string, unknown>;
|
|
16
|
+
}
|
|
17
|
+
export interface AuditFilter {
|
|
18
|
+
transactionId?: string;
|
|
19
|
+
actor?: string;
|
|
20
|
+
since?: bigint;
|
|
21
|
+
until?: bigint;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Agent harness is a sandboxed interface for AI agents. Stubbed per A2 scope;
|
|
25
|
+
* the real harness lands in Phase 5+.
|
|
26
|
+
*/
|
|
27
|
+
export interface AgentHarnessStub {
|
|
28
|
+
readonly __stub: true;
|
|
29
|
+
listCapabilities(): Promise<never>;
|
|
30
|
+
invoke(capability: string, payload: unknown): Promise<never>;
|
|
31
|
+
}
|
|
32
|
+
export declare function createAuditTrailStub(): AuditTrailStub;
|
|
33
|
+
export declare function createAgentHarnessStub(): AgentHarnessStub;
|
|
34
|
+
//# sourceMappingURL=stubs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stubs.d.ts","sourceRoot":"","sources":["../src/stubs.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;IACtB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC1C,KAAK,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;CAC5C;AAED,MAAM,WAAW,UAAU;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,WAAW;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC;IACtB,gBAAgB,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;CAC9D;AAUD,wBAAgB,oBAAoB,IAAI,cAAc,CAMrD;AAED,wBAAgB,sBAAsB,IAAI,gBAAgB,CAMzD"}
|
package/dist/stubs.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { CoreClientError } from "./errors.js";
|
|
2
|
+
const notImplemented = (name) => Promise.reject(new CoreClientError("UNKNOWN", `${name} is stubbed in @propxchain/core-client v0.1.0 — canister not yet deployed`));
|
|
3
|
+
export function createAuditTrailStub() {
|
|
4
|
+
return {
|
|
5
|
+
__stub: true,
|
|
6
|
+
append: () => notImplemented("AuditTrail.append"),
|
|
7
|
+
query: () => notImplemented("AuditTrail.query"),
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
export function createAgentHarnessStub() {
|
|
11
|
+
return {
|
|
12
|
+
__stub: true,
|
|
13
|
+
listCapabilities: () => notImplemented("AgentHarness.listCapabilities"),
|
|
14
|
+
invoke: () => notImplemented("AgentHarness.invoke"),
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=stubs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stubs.js","sourceRoot":"","sources":["../src/stubs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAqC9C,MAAM,cAAc,GAAG,CAAC,IAAY,EAAkB,EAAE,CACtD,OAAO,CAAC,MAAM,CACZ,IAAI,eAAe,CACjB,SAAS,EACT,GAAG,IAAI,2EAA2E,CACnF,CACF,CAAC;AAEJ,MAAM,UAAU,oBAAoB;IAClC,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,mBAAmB,CAAC;QACjD,KAAK,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,kBAAkB,CAAC;KAChD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO;QACL,MAAM,EAAE,IAAI;QACZ,gBAAgB,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,+BAA+B,CAAC;QACvE,MAAM,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,qBAAqB,CAAC;KACpD,CAAC;AACJ,CAAC"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { HttpAgent, Identity } from "@dfinity/agent";
|
|
2
|
+
import type { TransactionManagerService } from "./canisters/transaction_manager/index.js";
|
|
3
|
+
import type { DocumentStorageService } from "./canisters/document_storage/index.js";
|
|
4
|
+
import type { UserManagementService } from "./canisters/user_management/index.js";
|
|
5
|
+
import type { LedgerManagerService } from "./canisters/ledger_manager/index.js";
|
|
6
|
+
import type { AuditTrailStub, AgentHarnessStub } from "./stubs.js";
|
|
7
|
+
export interface CanisterIds {
|
|
8
|
+
transactionManager: string;
|
|
9
|
+
documentStorage: string;
|
|
10
|
+
userManagement: string;
|
|
11
|
+
ledgerManager: string;
|
|
12
|
+
}
|
|
13
|
+
export declare const MAINNET_CANISTER_IDS: CanisterIds;
|
|
14
|
+
export interface PropXchainClientOptions {
|
|
15
|
+
canisterIds?: Partial<CanisterIds>;
|
|
16
|
+
host?: string;
|
|
17
|
+
agent?: HttpAgent;
|
|
18
|
+
identity?: Identity;
|
|
19
|
+
fetchRootKey?: boolean;
|
|
20
|
+
}
|
|
21
|
+
export interface IPropXchainClient {
|
|
22
|
+
readonly transactionManager: TransactionManagerService;
|
|
23
|
+
readonly documentStorage: DocumentStorageService;
|
|
24
|
+
readonly userManagement: UserManagementService;
|
|
25
|
+
readonly ledgerManager: LedgerManagerService;
|
|
26
|
+
readonly auditTrail: AuditTrailStub;
|
|
27
|
+
readonly agentHarness: AgentHarnessStub;
|
|
28
|
+
}
|
|
29
|
+
export type { TransactionManagerService, DocumentStorageService, UserManagementService, LedgerManagerService, };
|
|
30
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AAC1F,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AACpF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnE,MAAM,WAAW,WAAW;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,oBAAoB,EAAE,WAKlC,CAAC;AAEF,MAAM,WAAW,uBAAuB;IACtC,WAAW,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,kBAAkB,EAAE,yBAAyB,CAAC;IACvD,QAAQ,CAAC,eAAe,EAAE,sBAAsB,CAAC;IACjD,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,CAAC,aAAa,EAAE,oBAAoB,CAAC;IAC7C,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;CACzC;AAED,YAAY,EACV,yBAAyB,EACzB,sBAAsB,EACtB,qBAAqB,EACrB,oBAAoB,GACrB,CAAC"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export const MAINNET_CANISTER_IDS = {
|
|
2
|
+
transactionManager: "llj73-cqaaa-aaaaa-qcwwa-cai",
|
|
3
|
+
documentStorage: "646az-pqaaa-aaaaa-qczja-cai",
|
|
4
|
+
userManagement: "lmizp-piaaa-aaaaa-qcwwq-cai",
|
|
5
|
+
ledgerManager: "hty74-maaaa-aaaaa-qcxza-cai",
|
|
6
|
+
};
|
|
7
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAcA,MAAM,CAAC,MAAM,oBAAoB,GAAgB;IAC/C,kBAAkB,EAAE,6BAA6B;IACjD,eAAe,EAAE,6BAA6B;IAC9C,cAAc,EAAE,6BAA6B;IAC7C,aAAa,EAAE,6BAA6B;CAC7C,CAAC"}
|
package/package.json
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@propxchain/core-client",
|
|
3
|
+
"version": "0.1.0-canary.3",
|
|
4
|
+
"description": "Typed TypeScript client for the PropXchain core canisters on the Internet Computer. Includes a deterministic mock mode for local development and tests.",
|
|
5
|
+
"license": "UNLICENSED",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"import": "./dist/index.js"
|
|
13
|
+
},
|
|
14
|
+
"./mock": {
|
|
15
|
+
"types": "./dist/mock.d.ts",
|
|
16
|
+
"import": "./dist/mock.js"
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
"files": [
|
|
20
|
+
"dist",
|
|
21
|
+
"src",
|
|
22
|
+
"README.md"
|
|
23
|
+
],
|
|
24
|
+
"publishConfig": {
|
|
25
|
+
"access": "public"
|
|
26
|
+
},
|
|
27
|
+
"scripts": {
|
|
28
|
+
"build": "tsc -p tsconfig.json",
|
|
29
|
+
"clean": "rm -rf dist",
|
|
30
|
+
"test": "node --import tsx --test tests/*.test.ts",
|
|
31
|
+
"typecheck": "tsc -p tsconfig.json --noEmit"
|
|
32
|
+
},
|
|
33
|
+
"dependencies": {
|
|
34
|
+
"@dfinity/agent": "^2.1.3",
|
|
35
|
+
"@dfinity/candid": "^2.1.3",
|
|
36
|
+
"@dfinity/principal": "^2.1.3"
|
|
37
|
+
},
|
|
38
|
+
"devDependencies": {
|
|
39
|
+
"@types/node": "^22.10.2",
|
|
40
|
+
"tsx": "^4.21.0",
|
|
41
|
+
"typescript": "^5.6.3"
|
|
42
|
+
},
|
|
43
|
+
"engines": {
|
|
44
|
+
"node": ">=20"
|
|
45
|
+
},
|
|
46
|
+
"repository": {
|
|
47
|
+
"type": "git",
|
|
48
|
+
"url": "https://github.com/madhatt4/propxchain",
|
|
49
|
+
"directory": "packages/core-client"
|
|
50
|
+
},
|
|
51
|
+
"keywords": [
|
|
52
|
+
"internet-computer",
|
|
53
|
+
"icp",
|
|
54
|
+
"propxchain",
|
|
55
|
+
"conveyancing",
|
|
56
|
+
"canister-client"
|
|
57
|
+
]
|
|
58
|
+
}
|