@astrox/connection 0.0.16 → 0.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/lib/tsconfig.tsbuildinfo +1 -2838
  2. package/package.json +2 -2
  3. package/lib/cjs/canisters/internet_identity_idl.d.ts +0 -7
  4. package/lib/cjs/canisters/internet_identity_idl.js +0 -101
  5. package/lib/cjs/canisters/internet_identity_idl.js.map +0 -1
  6. package/lib/cjs/canisters/ledger.idl.d.ts +0 -7
  7. package/lib/cjs/canisters/ledger.idl.js +0 -81
  8. package/lib/cjs/canisters/ledger.idl.js.map +0 -1
  9. package/lib/cjs/canisters/me.idl.d.ts +0 -7
  10. package/lib/cjs/canisters/me.idl.js +0 -125
  11. package/lib/cjs/canisters/me.idl.js.map +0 -1
  12. package/lib/cjs/canisters/nns-dapp-cert.idl.d.ts +0 -7
  13. package/lib/cjs/canisters/nns-dapp-cert.idl.js +0 -86
  14. package/lib/cjs/canisters/nns-dapp-cert.idl.js.map +0 -1
  15. package/lib/cjs/canisters/nns-dapp.idl.d.ts +0 -7
  16. package/lib/cjs/canisters/nns-dapp.idl.js +0 -184
  17. package/lib/cjs/canisters/nns-dapp.idl.js.map +0 -1
  18. package/lib/cjs/connections/baseConnection.d.ts +0 -23
  19. package/lib/cjs/connections/baseConnection.js +0 -87
  20. package/lib/cjs/connections/baseConnection.js.map +0 -1
  21. package/lib/cjs/connections/ledgerConnection.d.ts +0 -53
  22. package/lib/cjs/connections/ledgerConnection.js +0 -137
  23. package/lib/cjs/connections/ledgerConnection.js.map +0 -1
  24. package/lib/cjs/connections/nnsConnection.d.ts +0 -63
  25. package/lib/cjs/connections/nnsConnection.js +0 -166
  26. package/lib/cjs/connections/nnsConnection.js.map +0 -1
  27. package/lib/cjs/ic/icAuthClient.d.ts +0 -31
  28. package/lib/cjs/ic/icAuthClient.js +0 -233
  29. package/lib/cjs/ic/icAuthClient.js.map +0 -1
  30. package/lib/cjs/ic/icConnect.d.ts +0 -34
  31. package/lib/cjs/ic/icConnect.js +0 -184
  32. package/lib/cjs/ic/icConnect.js.map +0 -1
  33. package/lib/cjs/ic/icStorage.d.ts +0 -16
  34. package/lib/cjs/ic/icStorage.js +0 -49
  35. package/lib/cjs/ic/icStorage.js.map +0 -1
  36. package/lib/cjs/ic/icWindow.d.ts +0 -7
  37. package/lib/cjs/ic/icWindow.js +0 -20
  38. package/lib/cjs/ic/icWindow.js.map +0 -1
  39. package/lib/cjs/ic/index.d.ts +0 -2
  40. package/lib/cjs/ic/index.js +0 -7
  41. package/lib/cjs/ic/index.js.map +0 -1
  42. package/lib/cjs/ic/types.d.ts +0 -129
  43. package/lib/cjs/ic/types.js +0 -17
  44. package/lib/cjs/ic/types.js.map +0 -1
  45. package/lib/cjs/index.d.ts +0 -5
  46. package/lib/cjs/index.js +0 -18
  47. package/lib/cjs/index.js.map +0 -1
  48. package/lib/cjs/types/index.d.ts +0 -166
  49. package/lib/cjs/types/index.js +0 -17
  50. package/lib/cjs/types/index.js.map +0 -1
  51. package/lib/cjs/utils/common/types.d.ts +0 -15
  52. package/lib/cjs/utils/common/types.js +0 -12
  53. package/lib/cjs/utils/common/types.js.map +0 -1
  54. package/lib/cjs/utils/constants.d.ts +0 -6
  55. package/lib/cjs/utils/constants.js +0 -13
  56. package/lib/cjs/utils/constants.js.map +0 -1
  57. package/lib/cjs/utils/converter.d.ts +0 -32
  58. package/lib/cjs/utils/converter.js +0 -130
  59. package/lib/cjs/utils/converter.js.map +0 -1
  60. package/lib/cjs/utils/index.d.ts +0 -3
  61. package/lib/cjs/utils/index.js +0 -16
  62. package/lib/cjs/utils/index.js.map +0 -1
  63. package/lib/esm/canisters/internet_identity_idl.d.ts +0 -7
  64. package/lib/esm/canisters/internet_identity_idl.js +0 -98
  65. package/lib/esm/canisters/internet_identity_idl.js.map +0 -1
  66. package/lib/esm/canisters/ledger.idl.d.ts +0 -7
  67. package/lib/esm/canisters/ledger.idl.js +0 -78
  68. package/lib/esm/canisters/ledger.idl.js.map +0 -1
  69. package/lib/esm/canisters/me.idl.d.ts +0 -7
  70. package/lib/esm/canisters/me.idl.js +0 -122
  71. package/lib/esm/canisters/me.idl.js.map +0 -1
  72. package/lib/esm/canisters/nns-dapp-cert.idl.d.ts +0 -7
  73. package/lib/esm/canisters/nns-dapp-cert.idl.js +0 -83
  74. package/lib/esm/canisters/nns-dapp-cert.idl.js.map +0 -1
  75. package/lib/esm/canisters/nns-dapp.idl.d.ts +0 -7
  76. package/lib/esm/canisters/nns-dapp.idl.js +0 -181
  77. package/lib/esm/canisters/nns-dapp.idl.js.map +0 -1
  78. package/lib/esm/connections/baseConnection.d.ts +0 -23
  79. package/lib/esm/connections/baseConnection.js +0 -80
  80. package/lib/esm/connections/baseConnection.js.map +0 -1
  81. package/lib/esm/connections/ledgerConnection.d.ts +0 -53
  82. package/lib/esm/connections/ledgerConnection.js +0 -130
  83. package/lib/esm/connections/ledgerConnection.js.map +0 -1
  84. package/lib/esm/connections/nnsConnection.d.ts +0 -63
  85. package/lib/esm/connections/nnsConnection.js +0 -159
  86. package/lib/esm/connections/nnsConnection.js.map +0 -1
  87. package/lib/esm/ic/icAuthClient.d.ts +0 -31
  88. package/lib/esm/ic/icAuthClient.js +0 -229
  89. package/lib/esm/ic/icAuthClient.js.map +0 -1
  90. package/lib/esm/ic/icConnect.d.ts +0 -34
  91. package/lib/esm/ic/icConnect.js +0 -180
  92. package/lib/esm/ic/icConnect.js.map +0 -1
  93. package/lib/esm/ic/icStorage.d.ts +0 -16
  94. package/lib/esm/ic/icStorage.js +0 -44
  95. package/lib/esm/ic/icStorage.js.map +0 -1
  96. package/lib/esm/ic/icWindow.d.ts +0 -7
  97. package/lib/esm/ic/icWindow.js +0 -16
  98. package/lib/esm/ic/icWindow.js.map +0 -1
  99. package/lib/esm/ic/index.d.ts +0 -2
  100. package/lib/esm/ic/index.js +0 -3
  101. package/lib/esm/ic/index.js.map +0 -1
  102. package/lib/esm/ic/types.d.ts +0 -129
  103. package/lib/esm/ic/types.js +0 -14
  104. package/lib/esm/ic/types.js.map +0 -1
  105. package/lib/esm/index.d.ts +0 -5
  106. package/lib/esm/index.js +0 -6
  107. package/lib/esm/index.js.map +0 -1
  108. package/lib/esm/types/index.d.ts +0 -166
  109. package/lib/esm/types/index.js +0 -14
  110. package/lib/esm/types/index.js.map +0 -1
  111. package/lib/esm/utils/common/types.d.ts +0 -15
  112. package/lib/esm/utils/common/types.js +0 -9
  113. package/lib/esm/utils/common/types.js.map +0 -1
  114. package/lib/esm/utils/constants.d.ts +0 -6
  115. package/lib/esm/utils/constants.js +0 -10
  116. package/lib/esm/utils/constants.js.map +0 -1
  117. package/lib/esm/utils/converter.d.ts +0 -32
  118. package/lib/esm/utils/converter.js +0 -124
  119. package/lib/esm/utils/converter.js.map +0 -1
  120. package/lib/esm/utils/index.d.ts +0 -3
  121. package/lib/esm/utils/index.js +0 -4
  122. package/lib/esm/utils/index.js.map +0 -1
  123. package/lib/tsconfig-cjs.tsbuildinfo +0 -2839
@@ -1,180 +0,0 @@
1
- var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, privateMap, value) {
2
- if (!privateMap.has(receiver)) {
3
- throw new TypeError("attempted to set private field on non-instance");
4
- }
5
- privateMap.set(receiver, value);
6
- return value;
7
- };
8
- var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, privateMap) {
9
- if (!privateMap.has(receiver)) {
10
- throw new TypeError("attempted to get private field on non-instance");
11
- }
12
- return privateMap.get(receiver);
13
- };
14
- var _authClient, _agent, _localLedger;
15
- /* eslint-disable @typescript-eslint/no-explicit-any */
16
- /* eslint-disable @typescript-eslint/no-non-null-assertion */
17
- import { Actor, HttpAgent } from '@dfinity/agent';
18
- import { AuthClient } from './icAuthClient';
19
- import { IDENTITY_PROVIDER_DEFAULT } from './icStorage';
20
- import { ICWindow } from './icWindow';
21
- import { LedgerConnection } from '../connections/ledgerConnection';
22
- import { PermissionsType, TransactionMessageKind, } from '../types';
23
- const days = BigInt(1);
24
- const hours = BigInt(24);
25
- const nanoseconds = BigInt(3600000000000);
26
- const WALLET_PROVIDER_DEFAULT = 'http://localhost:8080/transaction';
27
- const WALLET_PROVIDER_ENDPOINT = '#transaction';
28
- export class IC extends ICWindow {
29
- constructor(authClient) {
30
- super();
31
- _authClient.set(this, void 0);
32
- _agent.set(this, void 0);
33
- _localLedger.set(this, void 0); // a local ledger to query balance only
34
- this.disconnect = async (options = {}) => {
35
- await this.getAuthClient().logout(options);
36
- };
37
- this.queryBalance = async () => {
38
- var _a;
39
- if (this.wallet === undefined) {
40
- throw Error('Wallet address is not found');
41
- }
42
- if (__classPrivateFieldGet(this, _localLedger) === undefined) {
43
- throw Error('Ledger connection faild');
44
- }
45
- const result = await ((_a = __classPrivateFieldGet(this, _localLedger)) === null || _a === void 0 ? void 0 : _a.getBalance(this.wallet));
46
- return result;
47
- };
48
- this.handleAuthenticated = async (ic, { ledgerCanisterId }) => {
49
- const identity = ic.getAuthClient().getIdentity();
50
- __classPrivateFieldSet(this, _agent, new HttpAgent({ identity }));
51
- if (!process.env.isProduction) {
52
- await __classPrivateFieldGet(this, _agent).fetchRootKey();
53
- }
54
- const actorResult = await LedgerConnection.createActor(ic.getAuthClient().getDelegationIdentity(), ledgerCanisterId);
55
- __classPrivateFieldSet(this, _localLedger, LedgerConnection.createConnection(ic.getAuthClient().getInnerKey(), ic.getAuthClient().getDelegationIdentity(), ledgerCanisterId, actorResult.actor, actorResult.agent));
56
- this.injectWindow(ic);
57
- return new IC(ic.getAuthClient());
58
- };
59
- this.createActor = (idlFactory, canisterId) => {
60
- return Actor.createActor(idlFactory, {
61
- agent: __classPrivateFieldGet(this, _agent),
62
- canisterId,
63
- });
64
- };
65
- // requestTransfer
66
- this.requestTransfer = async (options) => {
67
- var _a;
68
- const walletProviderUrl = new URL(((_a = options === null || options === void 0 ? void 0 : options.walletProvider) === null || _a === void 0 ? void 0 : _a.toString()) || WALLET_PROVIDER_DEFAULT);
69
- walletProviderUrl.hash = WALLET_PROVIDER_ENDPOINT;
70
- this._openWindow(walletProviderUrl.toString(), 'icWindow', 'height=600, width=480, top=0, right=0, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no');
71
- return new Promise((resolve, reject) => {
72
- this._eventHandler = this._getEventHandler(walletProviderUrl, resolve, reject, options);
73
- window.addEventListener('message', this._eventHandler);
74
- });
75
- };
76
- __classPrivateFieldSet(this, _authClient, authClient);
77
- this.injectWindow();
78
- }
79
- static async connect(connectOptions) {
80
- var _a, _b, _c, _d;
81
- const authClient = await AuthClient.create(connectOptions);
82
- const newIC = new this(authClient);
83
- const provider = (_a = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.identityProvider) !== null && _a !== void 0 ? _a : IDENTITY_PROVIDER_DEFAULT;
84
- if (await newIC.isAuthenticated()) {
85
- await newIC.handleAuthenticated(newIC, { ledgerCanisterId: connectOptions.ledgerCanisterId });
86
- await ((_b = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.onAuthenticated) === null || _b === void 0 ? void 0 : _b.call(connectOptions, newIC));
87
- return newIC;
88
- }
89
- await newIC.getAuthClient().login({
90
- identityProvider: provider,
91
- // Maximum authorization expiration is 8 days
92
- maxTimeToLive: (_c = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.maxTimeToLive) !== null && _c !== void 0 ? _c : days * hours * nanoseconds,
93
- permissions: (_d = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.permissions) !== null && _d !== void 0 ? _d : [PermissionsType.identity],
94
- onSuccess: async () => {
95
- var _a, _b, _c;
96
- await newIC.handleAuthenticated(newIC, {
97
- ledgerCanisterId: connectOptions.ledgerCanisterId,
98
- });
99
- (_b = (await ((_a = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.onSuccess) === null || _a === void 0 ? void 0 : _a.call(connectOptions)))) !== null && _b !== void 0 ? _b : (await ((_c = connectOptions === null || connectOptions === void 0 ? void 0 : connectOptions.onAuthenticated) === null || _c === void 0 ? void 0 : _c.call(connectOptions, newIC)));
100
- },
101
- onError: newIC.handleError,
102
- });
103
- return newIC;
104
- }
105
- async isAuthenticated() {
106
- const result = await __classPrivateFieldGet(this, _authClient).isAuthenticated();
107
- return result;
108
- }
109
- get identity() {
110
- return __classPrivateFieldGet(this, _authClient).getIdentity();
111
- }
112
- get principal() {
113
- return this.identity.getPrincipal();
114
- }
115
- get wallet() {
116
- return __classPrivateFieldGet(this, _authClient).wallet;
117
- }
118
- getAuthClient() {
119
- return __classPrivateFieldGet(this, _authClient);
120
- }
121
- injectWindow(ic) {
122
- if (window.ic !== undefined) {
123
- let plug;
124
- if (window.ic.plug !== undefined) {
125
- plug = window.ic.plug;
126
- }
127
- window.ic = ic !== null && ic !== void 0 ? ic : this;
128
- window.ic.plug = plug;
129
- }
130
- else {
131
- window.ic = ic !== null && ic !== void 0 ? ic : this;
132
- }
133
- }
134
- handleError(error) {
135
- throw new Error(error);
136
- }
137
- _getEventHandler(walletProviderUrl, resolve, reject, options) {
138
- return async (event) => {
139
- var _a;
140
- if (event.origin !== walletProviderUrl.origin) {
141
- return;
142
- }
143
- const message = event.data;
144
- switch (message.kind) {
145
- case TransactionMessageKind.ready: {
146
- // IDP is ready. Send a message to request authorization.
147
- const request = Object.assign({ kind: TransactionMessageKind.client }, options);
148
- (_a = this._window) === null || _a === void 0 ? void 0 : _a.postMessage(request, walletProviderUrl.origin);
149
- break;
150
- }
151
- case TransactionMessageKind.success:
152
- // Create the delegation chain and store it.
153
- try {
154
- resolve(null);
155
- // Setting the storage is moved out of _handleSuccess to make
156
- // it a sync function. Having _handleSuccess as an async function
157
- // messes up the jest tests for some reason.
158
- }
159
- catch (err) {
160
- reject(this._handleFailure(err.message, options === null || options === void 0 ? void 0 : options.onError));
161
- }
162
- break;
163
- case TransactionMessageKind.fail:
164
- reject(this._handleFailure(message.text, options === null || options === void 0 ? void 0 : options.onError));
165
- break;
166
- default:
167
- break;
168
- }
169
- };
170
- }
171
- _handleFailure(errorMessage, onError) {
172
- var _a;
173
- (_a = this._window) === null || _a === void 0 ? void 0 : _a.close();
174
- onError === null || onError === void 0 ? void 0 : onError(errorMessage);
175
- this._removeEventListener();
176
- return errorMessage;
177
- }
178
- }
179
- _authClient = new WeakMap(), _agent = new WeakMap(), _localLedger = new WeakMap();
180
- //# sourceMappingURL=icConnect.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"icConnect.js","sourceRoot":"","sources":["../../../src/ic/icConnect.ts"],"names":[],"mappings":"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"}
@@ -1,16 +0,0 @@
1
- import { AuthClientStorage } from '../types';
2
- export declare const KEY_SESSIONSTORAGE_KEY = "identity";
3
- export declare const KEY_SESSIONSTORAGE_DELEGATION = "delegation";
4
- export declare const KEY_SESSIONSTORAGE_WALLET = "wallet";
5
- export declare const IDENTITY_PROVIDER_DEFAULT = "https://identity.ic0.app";
6
- export declare const IDENTITY_PROVIDER_ENDPOINT = "#authorize";
7
- export declare function _deleteStorage(storage: AuthClientStorage): Promise<void>;
8
- export declare class SessionStorage implements AuthClientStorage {
9
- readonly prefix: string;
10
- private readonly _sessionStorage?;
11
- constructor(prefix?: string, _sessionStorage?: Storage | undefined);
12
- get(key: string): Promise<string | null>;
13
- set(key: string, value: string): Promise<void>;
14
- remove(key: string): Promise<void>;
15
- private _getSessionStorage;
16
- }
@@ -1,44 +0,0 @@
1
- export const KEY_SESSIONSTORAGE_KEY = 'identity';
2
- export const KEY_SESSIONSTORAGE_DELEGATION = 'delegation';
3
- export const KEY_SESSIONSTORAGE_WALLET = 'wallet';
4
- export const IDENTITY_PROVIDER_DEFAULT = 'https://identity.ic0.app';
5
- export const IDENTITY_PROVIDER_ENDPOINT = '#authorize';
6
- export async function _deleteStorage(storage) {
7
- await storage.remove(KEY_SESSIONSTORAGE_KEY);
8
- await storage.remove(KEY_SESSIONSTORAGE_DELEGATION);
9
- await storage.remove(KEY_SESSIONSTORAGE_WALLET);
10
- }
11
- export class SessionStorage {
12
- constructor(prefix = 'ic-', _sessionStorage) {
13
- this.prefix = prefix;
14
- this._sessionStorage = _sessionStorage;
15
- }
16
- get(key) {
17
- return Promise.resolve(this._getSessionStorage().getItem(this.prefix + key));
18
- }
19
- set(key, value) {
20
- this._getSessionStorage().setItem(this.prefix + key, value);
21
- return Promise.resolve();
22
- }
23
- remove(key) {
24
- this._getSessionStorage().removeItem(this.prefix + key);
25
- return Promise.resolve();
26
- }
27
- _getSessionStorage() {
28
- if (this._sessionStorage) {
29
- return this._sessionStorage;
30
- }
31
- const ls = typeof window === 'undefined'
32
- ? typeof global === 'undefined'
33
- ? typeof self === 'undefined'
34
- ? undefined
35
- : self.sessionStorage
36
- : global.sessionStorage
37
- : window.sessionStorage;
38
- if (!ls) {
39
- throw new Error('Could not find local storage.');
40
- }
41
- return ls;
42
- }
43
- }
44
- //# sourceMappingURL=icStorage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"icStorage.js","sourceRoot":"","sources":["../../../src/ic/icStorage.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,sBAAsB,GAAG,UAAU,CAAC;AACjD,MAAM,CAAC,MAAM,6BAA6B,GAAG,YAAY,CAAC;AAC1D,MAAM,CAAC,MAAM,yBAAyB,GAAG,QAAQ,CAAC;AAClD,MAAM,CAAC,MAAM,yBAAyB,GAAG,0BAA0B,CAAC;AACpE,MAAM,CAAC,MAAM,0BAA0B,GAAG,YAAY,CAAC;AAEvD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAA0B;IAC7D,MAAM,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC7C,MAAM,OAAO,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC;IACpD,MAAM,OAAO,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,OAAO,cAAc;IACzB,YAA4B,SAAS,KAAK,EAAmB,eAAyB;QAA1D,WAAM,GAAN,MAAM,CAAQ;QAAmB,oBAAe,GAAf,eAAe,CAAU;IAAG,CAAC;IAEnF,GAAG,CAAC,GAAW;QACpB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC;IAC/E,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,KAAa;QACnC,IAAI,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,KAAK,CAAC,CAAC;QAC5D,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEM,MAAM,CAAC,GAAW;QACvB,IAAI,CAAC,kBAAkB,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QACxD,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAEO,kBAAkB;QACxB,IAAI,IAAI,CAAC,eAAe,EAAE;YACxB,OAAO,IAAI,CAAC,eAAe,CAAC;SAC7B;QAED,MAAM,EAAE,GACN,OAAO,MAAM,KAAK,WAAW;YAC3B,CAAC,CAAC,OAAO,MAAM,KAAK,WAAW;gBAC7B,CAAC,CAAC,OAAO,IAAI,KAAK,WAAW;oBAC3B,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,IAAI,CAAC,cAAc;gBACvB,CAAC,CAAC,MAAM,CAAC,cAAc;YACzB,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC;QAE5B,IAAI,CAAC,EAAE,EAAE;YACP,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;SAClD;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;CACF"}
@@ -1,7 +0,0 @@
1
- import { EventHandler } from '../types';
2
- export declare class ICWindow {
3
- protected _window?: Window;
4
- protected _eventHandler?: EventHandler;
5
- protected _removeEventListener(): void;
6
- protected _openWindow(url: string, target?: string, feature?: string): void;
7
- }
@@ -1,16 +0,0 @@
1
- export class ICWindow {
2
- _removeEventListener() {
3
- if (this._eventHandler) {
4
- window.removeEventListener('message', this._eventHandler);
5
- }
6
- this._eventHandler = undefined;
7
- }
8
- _openWindow(url, target, feature) {
9
- var _a, _b;
10
- (_a = this._window) === null || _a === void 0 ? void 0 : _a.close();
11
- this._removeEventListener();
12
- // Open a new window with the IDP provider.
13
- this._window = (_b = window.open(url, target !== null && target !== void 0 ? target : 'icWindow', feature)) !== null && _b !== void 0 ? _b : undefined;
14
- }
15
- }
16
- //# sourceMappingURL=icWindow.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"icWindow.js","sourceRoot":"","sources":["../../../src/ic/icWindow.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,QAAQ;IAIT,oBAAoB;QAC5B,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,MAAM,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;SAC3D;QACD,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;IACjC,CAAC;IAES,WAAW,CAAC,GAAW,EAAE,MAAe,EAAE,OAAgB;;QAClE,MAAA,IAAI,CAAC,OAAO,0CAAE,KAAK,GAAG;QACtB,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAC5B,2CAA2C;QAC3C,IAAI,CAAC,OAAO,SAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,aAAN,MAAM,cAAN,MAAM,GAAI,UAAU,EAAE,OAAO,CAAC,mCAAI,SAAS,CAAC;IAC9E,CAAC;CACF"}
@@ -1,2 +0,0 @@
1
- export { AuthClient as ICAuthClient } from './icAuthClient';
2
- export { IC } from './icConnect';
@@ -1,3 +0,0 @@
1
- export { AuthClient as ICAuthClient } from './icAuthClient';
2
- export { IC } from './icConnect';
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ic/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC"}
@@ -1,129 +0,0 @@
1
- import { SignIdentity } from '@dfinity/agent';
2
- import { Principal } from '@dfinity/principal';
3
- import { IC } from './icConnect';
4
- import { AccountIdentifier } from '../utils/common/types';
5
- import { SendOpts } from '../connections/ledgerConnection';
6
- /**
7
- * List of options for creating an {@link AuthClient}.
8
- */
9
- export interface AuthClientCreateOptions {
10
- /**
11
- * An identity to use as the base
12
- */
13
- identity?: SignIdentity;
14
- /**
15
- * Optional storage with get, set, and remove. Uses SessionStorage by default
16
- */
17
- storage?: AuthClientStorage;
18
- appId?: string;
19
- idpWindowOption?: string;
20
- }
21
- export interface AuthClientLoginOptions extends AuthClientCreateOptions {
22
- /**
23
- * Identity provider. By default, use the identity service.
24
- */
25
- identityProvider?: string | URL;
26
- permissions?: PermissionsType[];
27
- /**
28
- * Experiation of the authentication
29
- */
30
- maxTimeToLive?: bigint;
31
- /**
32
- * Callback once login has completed
33
- */
34
- onSuccess?: () => void | Promise<void>;
35
- /**
36
- * Callback in case authentication fails
37
- */
38
- onError?: (error?: string) => void;
39
- /**
40
- * Callback once is authenticated
41
- */
42
- onAuthenticated?: (ic: IC) => void | Promise<void>;
43
- }
44
- export interface TransactionOptions {
45
- /**
46
- * Identity provider. By default, use the identity service.
47
- */
48
- walletProvider?: string | URL;
49
- from: AccountIdentifier;
50
- to: AccountIdentifier;
51
- amount: bigint;
52
- sendOpts: SendOpts;
53
- /**
54
- * Callback once login has completed
55
- */
56
- onSuccess?: () => void | Promise<void>;
57
- /**
58
- * Callback in case authentication fails
59
- */
60
- onError?: (error?: string) => void;
61
- }
62
- /**
63
- * Interface for persisting user authentication data
64
- */
65
- export interface AuthClientStorage {
66
- get(key: string): Promise<string | null>;
67
- set(key: string, value: string): Promise<void>;
68
- remove(key: string): Promise<void>;
69
- }
70
- export interface InternetIdentityAuthRequest {
71
- kind: 'authorize-client';
72
- sessionPublicKey: Uint8Array;
73
- permissions?: PermissionsType[];
74
- maxTimeToLive?: bigint;
75
- appId?: string;
76
- }
77
- export interface DelegationResult {
78
- delegations: {
79
- delegation: {
80
- pubkey: Uint8Array;
81
- expiration: bigint;
82
- targets?: Principal[];
83
- };
84
- signature: Uint8Array;
85
- }[];
86
- userPublicKey: Uint8Array;
87
- }
88
- export interface MeAuthResponseSuccess {
89
- kind: 'authorize-client-success';
90
- identity: DelegationResult;
91
- wallet?: string;
92
- }
93
- export interface IIAuthResponseSuccess extends DelegationResult {
94
- kind: 'authorize-client-success';
95
- }
96
- export declare type AuthResponseSuccess = MeAuthResponseSuccess | IIAuthResponseSuccess;
97
- export declare type EventHandler = (event: MessageEvent) => Promise<void>;
98
- export declare enum PermissionsType {
99
- identity = "permissions-identity",
100
- wallet = "permissions-wallet"
101
- }
102
- export declare type ConnectOptions = AuthClientLoginOptions;
103
- export declare enum TransactionMessageKind {
104
- client = "transaction-client",
105
- ready = "transaction-ready",
106
- success = "transaction-client-success",
107
- fail = "transaction-client-failure"
108
- }
109
- export interface TransactionReadyMessage {
110
- kind: TransactionMessageKind.ready;
111
- }
112
- export interface TransactionResponseFailure {
113
- kind: TransactionMessageKind.fail;
114
- text: string;
115
- }
116
- export interface TransactionResponseSuccess {
117
- kind: TransactionMessageKind.success;
118
- }
119
- export declare type TransactionResponseMessage = TransactionReadyMessage | TransactionResponse;
120
- export declare type TransactionResponse = TransactionResponseSuccess | TransactionResponseFailure;
121
- export interface AuthReadyMessage {
122
- kind: 'authorize-ready';
123
- }
124
- export interface AuthResponseFailure {
125
- kind: 'authorize-client-failure';
126
- text: string;
127
- }
128
- export declare type IdentityServiceResponseMessage = AuthReadyMessage | AuthResponse;
129
- export declare type AuthResponse = AuthResponseSuccess | AuthResponseFailure;
@@ -1,14 +0,0 @@
1
- export var PermissionsType;
2
- (function (PermissionsType) {
3
- PermissionsType["identity"] = "permissions-identity";
4
- PermissionsType["wallet"] = "permissions-wallet";
5
- })(PermissionsType || (PermissionsType = {}));
6
- // Transaction Types
7
- export var TransactionMessageKind;
8
- (function (TransactionMessageKind) {
9
- TransactionMessageKind["client"] = "transaction-client";
10
- TransactionMessageKind["ready"] = "transaction-ready";
11
- TransactionMessageKind["success"] = "transaction-client-success";
12
- TransactionMessageKind["fail"] = "transaction-client-failure";
13
- })(TransactionMessageKind || (TransactionMessageKind = {}));
14
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/ic/types.ts"],"names":[],"mappings":"AAkHA,MAAM,CAAN,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,oDAAiC,CAAA;IACjC,gDAA6B,CAAA;AAC/B,CAAC,EAHW,eAAe,KAAf,eAAe,QAG1B;AAID,oBAAoB;AACpB,MAAM,CAAN,IAAY,sBAKX;AALD,WAAY,sBAAsB;IAChC,uDAA6B,CAAA;IAC7B,qDAA2B,CAAA;IAC3B,gEAAsC,CAAA;IACtC,6DAAmC,CAAA;AACrC,CAAC,EALW,sBAAsB,KAAtB,sBAAsB,QAKjC"}
@@ -1,5 +0,0 @@
1
- export * from './connections/baseConnection';
2
- export * from './connections/ledgerConnection';
3
- export * from './connections/nnsConnection';
4
- export * from './utils';
5
- export * from './ic';
package/lib/esm/index.js DELETED
@@ -1,6 +0,0 @@
1
- export * from './connections/baseConnection';
2
- export * from './connections/ledgerConnection';
3
- export * from './connections/nnsConnection';
4
- export * from './utils';
5
- export * from './ic';
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,SAAS,CAAC;AACxB,cAAc,MAAM,CAAC"}
@@ -1,166 +0,0 @@
1
- import { ActorSubclass, HttpAgent, SignIdentity } from '@dfinity/agent';
2
- import { Principal } from '@dfinity/principal';
3
- import { AccountIdentifier, Memo } from '../utils/common/types';
4
- import { DelegationChain, DelegationIdentity } from '@dfinity/identity';
5
- import { IC } from 'src/ic';
6
- export interface IIDelegationResult {
7
- delegation: {
8
- pubkey: Uint8Array;
9
- expiration: bigint;
10
- targets?: Principal[];
11
- };
12
- signature: Uint8Array;
13
- }
14
- export interface DelegationMessage {
15
- kind: string;
16
- delegations: IIDelegationResult[];
17
- userPublicKey: Uint8Array;
18
- }
19
- export interface HandleDelegationResult {
20
- delegationChain: DelegationChain;
21
- delegationIdentity: DelegationIdentity;
22
- }
23
- export interface AbstractConnection<T> {
24
- identity: SignIdentity;
25
- delegationIdentity: DelegationIdentity;
26
- actor?: ActorSubclass<T>;
27
- agent?: HttpAgent;
28
- canisterId?: string;
29
- getActor(): Promise<ActorSubclass<T>>;
30
- }
31
- export interface CreateActorResult<T> {
32
- actor: ActorSubclass<T>;
33
- agent: HttpAgent;
34
- }
35
- export interface SendOpts {
36
- fee?: bigint;
37
- memo?: Memo;
38
- from_subaccount?: number;
39
- created_at_time?: Date;
40
- }
41
- /**
42
- * List of options for creating an {@link AuthClient}.
43
- */
44
- export interface AuthClientCreateOptions {
45
- /**
46
- * An identity to use as the base
47
- */
48
- identity?: SignIdentity;
49
- /**
50
- * Optional storage with get, set, and remove. Uses SessionStorage by default
51
- */
52
- storage?: AuthClientStorage;
53
- appId?: string;
54
- idpWindowOption?: string;
55
- }
56
- export interface AuthClientLoginOptions extends AuthClientCreateOptions {
57
- /**
58
- * Identity provider. By default, use the identity service.
59
- */
60
- identityProvider?: string | URL;
61
- permissions?: PermissionsType[];
62
- /**
63
- * Experiation of the authentication
64
- */
65
- maxTimeToLive?: bigint;
66
- /**
67
- * Callback once login has completed
68
- */
69
- onSuccess?: () => void | Promise<void>;
70
- /**
71
- * Callback in case authentication fails
72
- */
73
- onError?: (error?: string) => void;
74
- /**
75
- * Callback once is authenticated
76
- */
77
- onAuthenticated?: (ic: IC) => void | Promise<void>;
78
- }
79
- export interface ConnectOptions extends AuthClientLoginOptions {
80
- ledgerCanisterId?: string;
81
- }
82
- export interface TransactionOptions {
83
- /**
84
- * Identity provider. By default, use the identity service.
85
- */
86
- walletProvider?: string | URL;
87
- from: AccountIdentifier;
88
- to: AccountIdentifier;
89
- amount: bigint;
90
- sendOpts: SendOpts;
91
- /**
92
- * Callback once login has completed
93
- */
94
- onSuccess?: () => void | Promise<void>;
95
- /**
96
- * Callback in case authentication fails
97
- */
98
- onError?: (error?: string) => void;
99
- }
100
- /**
101
- * Interface for persisting user authentication data
102
- */
103
- export interface AuthClientStorage {
104
- get(key: string): Promise<string | null>;
105
- set(key: string, value: string): Promise<void>;
106
- remove(key: string): Promise<void>;
107
- }
108
- export interface InternetIdentityAuthRequest {
109
- kind: 'authorize-client';
110
- sessionPublicKey: Uint8Array;
111
- permissions?: PermissionsType[];
112
- maxTimeToLive?: bigint;
113
- appId?: string;
114
- }
115
- export interface DelegationResult {
116
- delegations: {
117
- delegation: {
118
- pubkey: Uint8Array;
119
- expiration: bigint;
120
- targets?: Principal[];
121
- };
122
- signature: Uint8Array;
123
- }[];
124
- userPublicKey: Uint8Array;
125
- }
126
- export interface MeAuthResponseSuccess {
127
- kind: 'authorize-client-success';
128
- identity: DelegationResult;
129
- wallet?: string;
130
- }
131
- export interface IIAuthResponseSuccess extends DelegationResult {
132
- kind: 'authorize-client-success';
133
- }
134
- export declare type AuthResponseSuccess = MeAuthResponseSuccess | IIAuthResponseSuccess;
135
- export declare type EventHandler = (event: MessageEvent) => Promise<void>;
136
- export declare enum PermissionsType {
137
- identity = "permissions-identity",
138
- wallet = "permissions-wallet"
139
- }
140
- export declare enum TransactionMessageKind {
141
- client = "transaction-client",
142
- ready = "transaction-ready",
143
- success = "transaction-client-success",
144
- fail = "transaction-client-failure"
145
- }
146
- export interface TransactionReadyMessage {
147
- kind: TransactionMessageKind.ready;
148
- }
149
- export interface TransactionResponseFailure {
150
- kind: TransactionMessageKind.fail;
151
- text: string;
152
- }
153
- export interface TransactionResponseSuccess {
154
- kind: TransactionMessageKind.success;
155
- }
156
- export declare type TransactionResponseMessage = TransactionReadyMessage | TransactionResponse;
157
- export declare type TransactionResponse = TransactionResponseSuccess | TransactionResponseFailure;
158
- export interface AuthReadyMessage {
159
- kind: 'authorize-ready';
160
- }
161
- export interface AuthResponseFailure {
162
- kind: 'authorize-client-failure';
163
- text: string;
164
- }
165
- export declare type IdentityServiceResponseMessage = AuthReadyMessage | AuthResponse;
166
- export declare type AuthResponse = AuthResponseSuccess | AuthResponseFailure;
@@ -1,14 +0,0 @@
1
- export var PermissionsType;
2
- (function (PermissionsType) {
3
- PermissionsType["identity"] = "permissions-identity";
4
- PermissionsType["wallet"] = "permissions-wallet";
5
- })(PermissionsType || (PermissionsType = {}));
6
- // Transaction Types
7
- export var TransactionMessageKind;
8
- (function (TransactionMessageKind) {
9
- TransactionMessageKind["client"] = "transaction-client";
10
- TransactionMessageKind["ready"] = "transaction-ready";
11
- TransactionMessageKind["success"] = "transaction-client-success";
12
- TransactionMessageKind["fail"] = "transaction-client-failure";
13
- })(TransactionMessageKind || (TransactionMessageKind = {}));
14
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AA8JA,MAAM,CAAN,IAAY,eAGX;AAHD,WAAY,eAAe;IACzB,oDAAiC,CAAA;IACjC,gDAA6B,CAAA;AAC/B,CAAC,EAHW,eAAe,KAAf,eAAe,QAG1B;AAED,oBAAoB;AACpB,MAAM,CAAN,IAAY,sBAKX;AALD,WAAY,sBAAsB;IAChC,uDAA6B,CAAA;IAC7B,qDAA2B,CAAA;IAC3B,gEAAsC,CAAA;IACtC,6DAAmC,CAAA;AACrC,CAAC,EALW,sBAAsB,KAAtB,sBAAsB,QAKjC"}