Documentation / @cashconnect-js/dapp / dapp
DialogCallback()
type DialogCallback = () => void;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:36
Returns
void
CashConnectDappEvents
type CashConnectDappEvents = object;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:96
Properties
updated
updated: undefined;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:97
disconnected
disconnected: undefined;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:98
sessionEvent
sessionEvent: SignClientTypes.EventArguments["session_event"];Defined in: cashconnect-js/packages/dapp/src/dapp.ts:99
balancesChanged
balancesChanged: SpendableUTXOsBalance;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:100
BaseNewSessionDialog
Defined in: cashconnect-js/packages/dapp/src/dapp.ts:38
Constructors
Constructor
new BaseNewSessionDialog(url, cancelCallback): BaseNewSessionDialog;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:39
Parameters
| Parameter | Type |
|---|---|
url | string |
cancelCallback | DialogCallback |
Returns
Methods
cancel()
cancel(): void;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:44
Returns
void
close()
close(): void;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:48
Returns
void
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
url | readonly | string | cashconnect-js/packages/dapp/src/dapp.ts:40 |
cancelCallback | readonly | DialogCallback | cashconnect-js/packages/dapp/src/dapp.ts:41 |
BaseReconnectSessionDialog
Defined in: cashconnect-js/packages/dapp/src/dapp.ts:54
Constructors
Constructor
new BaseReconnectSessionDialog(cancelCallback, newSessionCallback): BaseReconnectSessionDialog;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:55
Parameters
| Parameter | Type |
|---|---|
cancelCallback | DialogCallback |
newSessionCallback | DialogCallback |
Returns
Methods
cancel()
cancel(): void;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:60
Returns
void
newConnection()
newConnection(): void;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:64
Returns
void
close()
close(): void;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:68
Returns
void
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
cancelCallback | readonly | DialogCallback | cashconnect-js/packages/dapp/src/dapp.ts:56 |
newSessionCallback | readonly | DialogCallback | cashconnect-js/packages/dapp/src/dapp.ts:57 |
BaseRequestDialog
Defined in: cashconnect-js/packages/dapp/src/dapp.ts:74
Constructors
Constructor
new BaseRequestDialog(opts, cancelCallback): BaseRequestDialog;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:75
Parameters
| Parameter | Type |
|---|---|
opts | RequestOpts |
cancelCallback | DialogCallback |
Returns
Methods
cancel()
cancel(): void;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:80
Returns
void
close()
close(): void;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:84
Returns
void
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
opts | public | RequestOpts | cashconnect-js/packages/dapp/src/dapp.ts:76 |
cancelCallback | public | DialogCallback | cashconnect-js/packages/dapp/src/dapp.ts:77 |
ErrorWalletRejected
Defined in: cashconnect-js/packages/dapp/src/dapp.ts:103
Extends
Error
Constructors
Constructor
new ErrorWalletRejected(message?): ErrorWalletRejected;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:104
Parameters
| Parameter | Type |
|---|---|
message? | string |
Returns
Overrides
Error.constructorMethods
captureStackTrace()
static captureStackTrace(targetObject, constructorOpt?): void;Defined in: cashconnect-js/node_modules/@types/node/globals.d.ts:52
Creates a .stack property on targetObject, which when accessed returns a string representing the location in the code at which Error.captureStackTrace() was called.
const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack; // Similar to `new Error().stack`The first line of the trace will be prefixed with ${myObject.name}: ${myObject.message}.
The optional constructorOpt argument accepts a function. If given, all frames above constructorOpt, including constructorOpt, will be omitted from the generated stack trace.
The constructorOpt argument is useful for hiding implementation details of error generation from the user. For instance:
function a() {
b();
}
function b() {
c();
}
function c() {
// Create an error without stack trace to avoid calculating the stack trace twice.
const { stackTraceLimit } = Error;
Error.stackTraceLimit = 0;
const error = new Error();
Error.stackTraceLimit = stackTraceLimit;
// Capture the stack trace above function b
Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
throw error;
}
a();Parameters
| Parameter | Type |
|---|---|
targetObject | object |
constructorOpt? | Function |
Returns
void
Inherited from
Error.captureStackTraceprepareStackTrace()
static prepareStackTrace(err, stackTraces): any;Defined in: cashconnect-js/node_modules/@types/node/globals.d.ts:56
Parameters
| Parameter | Type |
|---|---|
err | Error |
stackTraces | CallSite[] |
Returns
any
See
https://v8.dev/docs/stack-trace-api#customizing-stack-traces
Inherited from
Error.prepareStackTraceProperties
CashConnectDapp
Defined in: cashconnect-js/packages/dapp/src/dapp.ts:111
Extends
EventEmitter<CashConnectDappEvents>
Extended by
Type Parameters
| Type Parameter |
|---|
T extends Template |
Constructors
Constructor
new CashConnectDapp<T>(
options,
chain,
template,
allowedTokens,
dialogs): CashConnectDapp<T>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:120
Parameters
| Parameter | Type |
|---|---|
options | Options |
chain | string |
template | T |
allowedTokens | string[] |
dialogs | DappDialogs |
Returns
Overrides
EventEmitter<CashConnectDappEvents>.constructorMethods
start()
start(): Promise<void>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:130
Returns
Promise<void>
connect()
connect(): Promise<boolean>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:141
Returns
Promise<boolean>
newSession()
newSession(): Promise<"CONNECTED" | "CANCELLED">;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:177
Returns
Promise<"CONNECTED" | "CANCELLED">
reconnectSession()
reconnectSession(silent): Promise<"CONNECTED" | "CANCELLED" | "NEW_SESSION">;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:264
Parameters
| Parameter | Type | Default value |
|---|---|---|
silent | boolean | false |
Returns
Promise<"CONNECTED" | "CANCELLED" | "NEW_SESSION">
disconnect()
disconnect(): Promise<void>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:347
Returns
Promise<void>
executeAction()
executeAction<A>(
actionName,
params,
opts): Promise<ActionResult<T, A>>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:374
Type Parameters
| Type Parameter |
|---|
A extends string |
Parameters
| Parameter | Type |
|---|---|
actionName | A |
params | { [K in string | number | symbol]: ({ [K in string | number | symbol as T["actions"][A]["params"][K] extends { required: false } ? never : K]: ProcessVariable<T["actions"][A]["params"][K]> } & { [K in string | number | symbol as T["actions"][A]["params"][K] extends { required: false } ? K : never]?: ProcessVariable<T["actions"][A]["params"][K]> })[K] } |
opts | RequestOpts |
Returns
Promise<ActionResult<T, A>>
getBalances()
getBalances(): Promise<any>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:438
Returns
Promise<any>
getTokens()
getTokens(): Promise<any>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:459
Returns
Promise<any>
disconnectInactiveSessions()
disconnectInactiveSessions(): Promise<void>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:480
Returns
Promise<void>
onSessionDisconnect()
onSessionDisconnect(): Promise<void>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:501
Returns
Promise<void>
onSessionUpdate()
onSessionUpdate(): Promise<void>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:505
Returns
Promise<void>
onSessionEvent()
onSessionEvent(event): Promise<void>;Defined in: cashconnect-js/packages/dapp/src/dapp.ts:509
Parameters
| Parameter | Type |
|---|---|
event | BaseEventArgs<{ event: { name: string; data: any; }; chainId: string; }> |
Returns
Promise<void>
on()
on<K>(
type,
listener,
debounceMilliseconds?): OffCallback;Defined in: cashconnect-js/packages/core/dist/primitives.d.ts:593
Registers a listener for the specified event type.
Type Parameters
| Type Parameter | Description |
|---|---|
K extends keyof CashConnectDappEvents | The event type key |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | K | The event type to listen for |
listener | Listener<CashConnectDappEvents[K]> | The function to call when the event is emitted |
debounceMilliseconds? | number | Optional debounce time in milliseconds |
Returns
OffCallback
A callback function that can be used to unregister this listener
Example
const off = emitter.on('data-change', (data) => {
console.log('Data updated:', data);
}, 300); // Debounce for 300ms
// Later, unregister the listener
off();Inherited from
EventEmitter.ononce()
once<K>(
type,
listener,
debounceMilliseconds?): OffCallback;Defined in: cashconnect-js/packages/core/dist/primitives.d.ts:611
Registers a one-time listener for the specified event type. The listener will be automatically removed after being called once.
Type Parameters
| Type Parameter | Description |
|---|---|
K extends keyof CashConnectDappEvents | The event type key |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | K | The event type to listen for |
listener | Listener<CashConnectDappEvents[K]> | The function to call when the event is emitted |
debounceMilliseconds? | number | Optional debounce time in milliseconds |
Returns
OffCallback
A callback function that can be used to unregister this listener before it fires
Example
emitter.once('user-login', ({ userId }) => {
console.log(`Welcome ${userId}! This will only show once.`);
});Inherited from
EventEmitter.onceoff()
off<K>(type, listener): void;Defined in: cashconnect-js/packages/core/dist/primitives.d.ts:626
Removes a specific listener for the given event type.
Type Parameters
| Type Parameter | Description |
|---|---|
K extends keyof CashConnectDappEvents | The event type key |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | K | The event type to remove the listener from |
listener | Listener<CashConnectDappEvents[K]> | The listener function to remove |
Returns
void
Example
const handler = (data) => console.log(data);
emitter.on('test', handler);
emitter.off('test', handler); // Removes the listenerInherited from
EventEmitter.offemit()
emit<K>(type, payload): boolean;Defined in: cashconnect-js/packages/core/dist/primitives.d.ts:648
Emits an event of the specified type with the given payload. All registered listeners for this event type will be called.
Type Parameters
| Type Parameter | Description |
|---|---|
K extends keyof CashConnectDappEvents | The event type key |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | K | The event type to emit |
payload | CashConnectDappEvents[K] | The data to pass to all listeners |
Returns
boolean
true if there were listeners for this event, false otherwise
Example
const hasListeners = emitter.emit('user-login', {
userId: '123',
timestamp: Date.now()
});
if (!hasListeners) {
console.log('No one was listening for user-login events');
}Inherited from
EventEmitter.emitremoveAllListeners()
removeAllListeners(): void;Defined in: cashconnect-js/packages/core/dist/primitives.d.ts:659
Removes all listeners for all events. This effectively resets the EventEmitter to its initial state.
Returns
void
Example
emitter.removeAllListeners();
// All previously registered listeners are now goneInherited from
EventEmitter.removeAllListenerswaitFor()
waitFor<K>(
type,
predicate,
timeoutMs?): Promise<CashConnectDappEvents[K]>;Defined in: cashconnect-js/packages/core/dist/primitives.d.ts:685
Returns a Promise that resolves when an event of the specified type is emitted and matches the given predicate.
Type Parameters
| Type Parameter | Description |
|---|---|
K extends keyof CashConnectDappEvents | The event type key |
Parameters
| Parameter | Type | Description |
|---|---|---|
type | K | The event type to wait for |
predicate | (payload) => boolean | A function that determines if the event payload matches what we're waiting for |
timeoutMs? | number | Optional timeout in milliseconds. If specified, the promise will reject after this time |
Returns
Promise<CashConnectDappEvents[K]>
A Promise that resolves with the event payload when the condition is met
Throws
If the timeout is reached before a matching event occurs
Example
try {
const loginData = await emitter.waitFor(
'user-login',
({ userId }) => userId === 'admin',
5000 // Wait up to 5 seconds
);
console.log('Admin logged in:', loginData);
} catch (error) {
console.log('Timeout: Admin never logged in');
}Inherited from
EventEmitter.waitForProperties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
client | public | SignClient | cashconnect-js/packages/dapp/src/dapp.ts:114 |
session? | public | Struct | cashconnect-js/packages/dapp/src/dapp.ts:115 |
onConnected? | public | (session) => Promise<void> | cashconnect-js/packages/dapp/src/dapp.ts:118 |
options | readonly | Options | cashconnect-js/packages/dapp/src/dapp.ts:121 |
chain | readonly | string | cashconnect-js/packages/dapp/src/dapp.ts:122 |
template | readonly | T | cashconnect-js/packages/dapp/src/dapp.ts:123 |
allowedTokens | readonly | string[] | cashconnect-js/packages/dapp/src/dapp.ts:124 |
dialogs | readonly | DappDialogs | cashconnect-js/packages/dapp/src/dapp.ts:125 |
RequestOpts
Defined in: cashconnect-js/packages/dapp/src/dapp.ts:30
Properties
| Property | Type | Defined in |
|---|---|---|
hide? | true | cashconnect-js/packages/dapp/src/dapp.ts:31 |
message? | string | cashconnect-js/packages/dapp/src/dapp.ts:32 |
debug? | true | cashconnect-js/packages/dapp/src/dapp.ts:33 |
DappDialogs
Defined in: cashconnect-js/packages/dapp/src/dapp.ts:90
Properties
| Property | Type | Defined in |
|---|---|---|
newSession | typeof BaseNewSessionDialog | cashconnect-js/packages/dapp/src/dapp.ts:91 |
reconnectSession | typeof BaseReconnectSessionDialog | cashconnect-js/packages/dapp/src/dapp.ts:92 |
request | typeof BaseRequestDialog | cashconnect-js/packages/dapp/src/dapp.ts:93 |