@novasamatech/host-api 0.5.4-9 → 0.5.5

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 CHANGED
@@ -90,7 +90,7 @@ const hostApi = createHostApi(transport);
90
90
 
91
91
  // requesting data
92
92
 
93
- const storageValue = hostApi.storage_read(payload);
93
+ const storageValue = hostApi.localStorageRead(payload);
94
94
 
95
95
  storageValue.match(
96
96
  (data) => console.log('success:', data),
@@ -99,7 +99,7 @@ storageValue.match(
99
99
 
100
100
  // subscribing to events
101
101
 
102
- const subscription = hostApi.chat_action_subscribe(params, (action) => {
102
+ const subscription = hostApi.chatActionSubscribe(params, (action) => {
103
103
  console.log('action received:', action);
104
104
  });
105
105
 
package/dist/helpers.js CHANGED
@@ -20,7 +20,7 @@ export function createRequestId() {
20
20
  }
21
21
  export function extractErrorMessage(err) {
22
22
  if (err instanceof Error) {
23
- return err.toString();
23
+ return err.message;
24
24
  }
25
25
  if (err) {
26
26
  return err.toString();
package/dist/hostApi.d.ts CHANGED
@@ -3,6 +3,7 @@ import type { Codec, CodecType } from 'scale-ts';
3
3
  import type { HostApiProtocol, VersionedProtocolRequest, VersionedProtocolSubscription } from './protocol/impl.js';
4
4
  import type { Subscription, Transport } from './types.js';
5
5
  type SnakeToCamelCase<S extends string> = S extends `${infer T}_${infer U}` ? `${T}${Capitalize<SnakeToCamelCase<U>>}` : S;
6
+ type StripNamespace<S extends string> = S extends `host_${infer Rest}` ? Rest : S extends `remote_${infer Rest}` ? Rest : S;
6
7
  type Value<T extends Codec<any> | Codec<never>> = T extends Codec<any> ? CodecType<T> : unknown;
7
8
  type UnwrapVersionedResult<T> = T extends {
8
9
  tag: infer Tag;
@@ -26,7 +27,7 @@ type InferRequestMethod<Method extends VersionedProtocolRequest> = (args: Value<
26
27
  type InferSubscribeMethod<Method extends VersionedProtocolSubscription> = (args: Value<Method['start']>, callback: (payload: Value<Method['receive']>) => void) => Subscription;
27
28
  type InferMethod<Method extends VersionedProtocolRequest | VersionedProtocolSubscription> = Method extends VersionedProtocolRequest ? InferRequestMethod<Method> : Method extends VersionedProtocolSubscription ? InferSubscribeMethod<Method> : never;
28
29
  export type HostApi = {
29
- [K in keyof HostApiProtocol as SnakeToCamelCase<K>]: InferMethod<HostApiProtocol[K]>;
30
+ [K in keyof HostApiProtocol as SnakeToCamelCase<StripNamespace<K>>]: InferMethod<HostApiProtocol[K]>;
30
31
  };
31
32
  export declare function createHostApi(transport: Transport): HostApi;
32
33
  export {};
package/dist/hostApi.js CHANGED
@@ -2,16 +2,18 @@ import { errAsync, fromPromise, okAsync } from 'neverthrow';
2
2
  import { extractErrorMessage } from './helpers.js';
3
3
  import { GenericError } from './protocol/commonCodecs.js';
4
4
  import { CreateProofErr, RequestCredentialsErr } from './protocol/v1/accounts.js';
5
- import { ChatMessagePostingErr, ChatRoomRegistrationErr } from './protocol/v1/chat.js';
5
+ import { ChatBotRegistrationErr, ChatMessagePostingErr, ChatRoomRegistrationErr } from './protocol/v1/chat.js';
6
6
  import { CreateTransactionErr } from './protocol/v1/createTransaction.js';
7
7
  import { HandshakeErr } from './protocol/v1/handshake.js';
8
+ import { StorageErr } from './protocol/v1/localStorage.js';
9
+ import { NavigateToErr } from './protocol/v1/navigation.js';
10
+ import { PreimageSubmitErr } from './protocol/v1/preimage.js';
8
11
  import { SigningErr } from './protocol/v1/sign.js';
9
12
  import { StatementProofErr } from './protocol/v1/statementStore.js';
10
- import { StorageErr } from './protocol/v1/storage.js';
11
13
  export function createHostApi(transport) {
12
14
  return {
13
15
  handshake(payload) {
14
- const response = fromPromise(transport.request('handshake', payload), e => ({
16
+ const response = fromPromise(transport.request('host_handshake', payload), e => ({
15
17
  tag: payload.tag,
16
18
  value: new HandshakeErr.Unknown({ reason: extractErrorMessage(e) }),
17
19
  }));
@@ -28,8 +30,8 @@ export function createHostApi(transport) {
28
30
  });
29
31
  });
30
32
  },
31
- feature(payload) {
32
- const response = fromPromise(transport.request('feature', payload), e => ({
33
+ featureSupported(payload) {
34
+ const response = fromPromise(transport.request('host_feature_supported', payload), e => ({
33
35
  tag: payload.tag,
34
36
  value: new GenericError({ reason: extractErrorMessage(e) }),
35
37
  }));
@@ -46,8 +48,80 @@ export function createHostApi(transport) {
46
48
  });
47
49
  });
48
50
  },
51
+ devicePermission(payload) {
52
+ const response = fromPromise(transport.request('host_device_permission', payload), e => ({
53
+ tag: payload.tag,
54
+ value: new GenericError({ reason: extractErrorMessage(e) }),
55
+ }));
56
+ return response.andThen(response => {
57
+ if (response.value.success) {
58
+ return okAsync({
59
+ tag: response.tag,
60
+ value: response.value.value,
61
+ });
62
+ }
63
+ return errAsync({
64
+ tag: response.tag,
65
+ value: response.value.value,
66
+ });
67
+ });
68
+ },
69
+ permission(payload) {
70
+ const response = fromPromise(transport.request('remote_permission', payload), e => ({
71
+ tag: payload.tag,
72
+ value: new GenericError({ reason: extractErrorMessage(e) }),
73
+ }));
74
+ return response.andThen(response => {
75
+ if (response.value.success) {
76
+ return okAsync({
77
+ tag: response.tag,
78
+ value: response.value.value,
79
+ });
80
+ }
81
+ return errAsync({
82
+ tag: response.tag,
83
+ value: response.value.value,
84
+ });
85
+ });
86
+ },
87
+ pushNotification(payload) {
88
+ const response = fromPromise(transport.request('host_push_notification', payload), e => ({
89
+ tag: payload.tag,
90
+ value: new GenericError({ reason: extractErrorMessage(e) }),
91
+ }));
92
+ return response.andThen(response => {
93
+ if (response.value.success) {
94
+ return okAsync({
95
+ tag: response.tag,
96
+ value: response.value.value,
97
+ });
98
+ }
99
+ return errAsync({
100
+ tag: response.tag,
101
+ value: response.value.value,
102
+ });
103
+ });
104
+ },
105
+ navigateTo(payload) {
106
+ const response = fromPromise(transport.request('host_navigate_to', payload), e => ({
107
+ tag: payload.tag,
108
+ value: new NavigateToErr.Unknown({ reason: extractErrorMessage(e) }),
109
+ }));
110
+ return response.andThen(response => {
111
+ if (response.value.success) {
112
+ return okAsync({
113
+ tag: response.tag,
114
+ value: response.value.value,
115
+ });
116
+ }
117
+ return errAsync({
118
+ tag: response.tag,
119
+ value: response.value.value,
120
+ });
121
+ });
122
+ },
49
123
  localStorageRead(payload) {
50
- const response = fromPromise(transport.request('local_storage_read', payload), e => ({
124
+ const response = fromPromise(transport.request('host_local_storage_read', payload), e => ({
51
125
  tag: payload.tag,
52
126
  value: new StorageErr.Unknown({ reason: extractErrorMessage(e) }),
53
127
  }));
@@ -65,7 +139,7 @@ export function createHostApi(transport) {
65
139
  });
66
140
  },
67
141
  localStorageWrite(payload) {
68
- const response = fromPromise(transport.request('local_storage_write', payload), e => ({
142
+ const response = fromPromise(transport.request('host_local_storage_write', payload), e => ({
69
143
  tag: payload.tag,
70
144
  value: new StorageErr.Unknown({ reason: extractErrorMessage(e) }),
71
145
  }));
@@ -83,7 +157,7 @@ export function createHostApi(transport) {
83
157
  });
84
158
  },
85
159
  localStorageClear(payload) {
86
- const response = fromPromise(transport.request('local_storage_clear', payload), e => ({
160
+ const response = fromPromise(transport.request('host_local_storage_clear', payload), e => ({
87
161
  tag: payload.tag,
88
162
  value: new StorageErr.Unknown({ reason: extractErrorMessage(e) }),
89
163
  }));
@@ -101,7 +175,7 @@ export function createHostApi(transport) {
101
175
  });
102
176
  },
103
177
  accountGet(payload) {
104
- const response = fromPromise(transport.request('account_get', payload), e => ({
178
+ const response = fromPromise(transport.request('host_account_get', payload), e => ({
105
179
  tag: payload.tag,
106
180
  value: new RequestCredentialsErr.Unknown({ reason: extractErrorMessage(e) }),
107
181
  }));
@@ -119,7 +193,7 @@ export function createHostApi(transport) {
119
193
  });
120
194
  },
121
195
  accountGetAlias(payload) {
122
- const response = fromPromise(transport.request('account_get_alias', payload), e => ({
196
+ const response = fromPromise(transport.request('host_account_get_alias', payload), e => ({
123
197
  tag: payload.tag,
124
198
  value: new RequestCredentialsErr.Unknown({ reason: extractErrorMessage(e) }),
125
199
  }));
@@ -137,7 +211,7 @@ export function createHostApi(transport) {
137
211
  });
138
212
  },
139
213
  accountCreateProof(payload) {
140
- const response = fromPromise(transport.request('account_create_proof', payload), e => ({
214
+ const response = fromPromise(transport.request('host_account_create_proof', payload), e => ({
141
215
  tag: payload.tag,
142
216
  value: new CreateProofErr.Unknown({ reason: extractErrorMessage(e) }),
143
217
  }));
@@ -155,7 +229,7 @@ export function createHostApi(transport) {
155
229
  });
156
230
  },
157
231
  getNonProductAccounts(payload) {
158
- const response = fromPromise(transport.request('get_non_product_accounts', payload), e => ({
232
+ const response = fromPromise(transport.request('host_get_non_product_accounts', payload), e => ({
159
233
  tag: payload.tag,
160
234
  value: new RequestCredentialsErr.Unknown({ reason: extractErrorMessage(e) }),
161
235
  }));
@@ -173,7 +247,7 @@ export function createHostApi(transport) {
173
247
  });
174
248
  },
175
249
  createTransaction(payload) {
176
- const response = fromPromise(transport.request('create_transaction', payload), e => ({
250
+ const response = fromPromise(transport.request('host_create_transaction', payload), e => ({
177
251
  tag: payload.tag,
178
252
  value: new CreateTransactionErr.Unknown({ reason: extractErrorMessage(e) }),
179
253
  }));
@@ -191,7 +265,7 @@ export function createHostApi(transport) {
191
265
  });
192
266
  },
193
267
  createTransactionWithNonProductAccount(payload) {
194
- const response = fromPromise(transport.request('create_transaction_with_non_product_account', payload), e => ({
268
+ const response = fromPromise(transport.request('host_create_transaction_with_non_product_account', payload), e => ({
195
269
  tag: payload.tag,
196
270
  value: new CreateTransactionErr.Unknown({ reason: extractErrorMessage(e) }),
197
271
  }));
@@ -209,7 +283,7 @@ export function createHostApi(transport) {
209
283
  });
210
284
  },
211
285
  signRaw(payload) {
212
- const response = fromPromise(transport.request('sign_raw', payload), e => ({
286
+ const response = fromPromise(transport.request('host_sign_raw', payload), e => ({
213
287
  tag: payload.tag,
214
288
  value: new SigningErr.Unknown({ reason: extractErrorMessage(e) }),
215
289
  }));
@@ -227,7 +301,7 @@ export function createHostApi(transport) {
227
301
  });
228
302
  },
229
303
  signPayload(payload) {
230
- const response = fromPromise(transport.request('sign_payload', payload), e => ({
304
+ const response = fromPromise(transport.request('host_sign_payload', payload), e => ({
231
305
  tag: payload.tag,
232
306
  value: new SigningErr.Unknown({ reason: extractErrorMessage(e) }),
233
307
  }));
@@ -245,10 +319,10 @@ export function createHostApi(transport) {
245
319
  });
246
320
  },
247
321
  chatListSubscribe(args, callback) {
248
- return transport.subscribe('chat_list_subscribe', args, callback);
322
+ return transport.subscribe('host_chat_list_subscribe', args, callback);
249
323
  },
250
324
  chatCreateRoom(payload) {
251
- const response = fromPromise(transport.request('chat_create_room', payload), e => ({
325
+ const response = fromPromise(transport.request('host_chat_create_room', payload), e => ({
252
326
  tag: payload.tag,
253
327
  value: new ChatRoomRegistrationErr.Unknown({ reason: extractErrorMessage(e) }),
254
328
  }));
@@ -265,10 +339,10 @@ export function createHostApi(transport) {
265
339
  });
266
340
  });
267
341
  },
268
- chatPostMessage(payload) {
269
- const response = fromPromise(transport.request('chat_post_message', payload), e => ({
342
+ chatRegisterBot(payload) {
343
+ const response = fromPromise(transport.request('host_chat_register_bot', payload), e => ({
270
344
  tag: payload.tag,
271
- value: new ChatMessagePostingErr.Unknown({ reason: extractErrorMessage(e) }),
345
+ value: new ChatBotRegistrationErr.Unknown({ reason: extractErrorMessage(e) }),
272
346
  }));
273
347
  return response.andThen(response => {
274
348
  if (response.value.success) {
@@ -283,13 +357,10 @@ export function createHostApi(transport) {
283
357
  });
284
358
  });
285
359
  },
286
- chatActionSubscribe(args, callback) {
287
- return transport.subscribe('chat_action_subscribe', args, callback);
288
- },
289
- statementStoreQuery(payload) {
290
- const response = fromPromise(transport.request('statement_store_query', payload), e => ({
360
+ chatPostMessage(payload) {
361
+ const response = fromPromise(transport.request('host_chat_post_message', payload), e => ({
291
362
  tag: payload.tag,
292
- value: new GenericError({ reason: extractErrorMessage(e) }),
363
+ value: new ChatMessagePostingErr.Unknown({ reason: extractErrorMessage(e) }),
293
364
  }));
294
365
  return response.andThen(response => {
295
366
  if (response.value.success) {
@@ -304,11 +375,14 @@ export function createHostApi(transport) {
304
375
  });
305
376
  });
306
377
  },
378
+ chatActionSubscribe(args, callback) {
379
+ return transport.subscribe('host_chat_action_subscribe', args, callback);
380
+ },
307
381
  statementStoreSubscribe(args, callback) {
308
- return transport.subscribe('statement_store_subscribe', args, callback);
382
+ return transport.subscribe('remote_statement_store_subscribe', args, callback);
309
383
  },
310
384
  statementStoreCreateProof(payload) {
311
- const response = fromPromise(transport.request('statement_store_create_proof', payload), e => ({
385
+ const response = fromPromise(transport.request('remote_statement_store_create_proof', payload), e => ({
312
386
  tag: payload.tag,
313
387
  value: new StatementProofErr.Unknown({ reason: extractErrorMessage(e) }),
314
388
  }));
@@ -326,7 +400,7 @@ export function createHostApi(transport) {
326
400
  });
327
401
  },
328
402
  statementStoreSubmit(payload) {
329
- const response = fromPromise(transport.request('statement_store_submit', payload), e => ({
403
+ const response = fromPromise(transport.request('remote_statement_store_submit', payload), e => ({
330
404
  tag: payload.tag,
331
405
  value: new GenericError({ reason: extractErrorMessage(e) }),
332
406
  }));
@@ -343,8 +417,29 @@ export function createHostApi(transport) {
343
417
  });
344
418
  });
345
419
  },
420
+ preimageLookupSubscribe(args, callback) {
421
+ return transport.subscribe('remote_preimage_lookup_subscribe', args, callback);
422
+ },
423
+ preimageSubmit(payload) {
424
+ const response = fromPromise(transport.request('remote_preimage_submit', payload), e => ({
425
+ tag: payload.tag,
426
+ value: new PreimageSubmitErr.Unknown({ reason: extractErrorMessage(e) }),
427
+ }));
428
+ return response.andThen(response => {
429
+ if (response.value.success) {
430
+ return okAsync({
431
+ tag: response.tag,
432
+ value: response.value.value,
433
+ });
434
+ }
435
+ return errAsync({
436
+ tag: response.tag,
437
+ value: response.value.value,
438
+ });
439
+ });
440
+ },
346
441
  jsonrpcMessageSend(payload) {
347
- const response = fromPromise(transport.request('jsonrpc_message_send', payload), e => ({
442
+ const response = fromPromise(transport.request('host_jsonrpc_message_send', payload), e => ({
348
443
  tag: payload.tag,
349
444
  value: new GenericError({ reason: extractErrorMessage(e) }),
350
445
  }));
@@ -362,7 +457,7 @@ export function createHostApi(transport) {
362
457
  });
363
458
  },
364
459
  jsonrpcMessageSubscribe(args, callback) {
365
- return transport.subscribe('jsonrpc_message_subscribe', args, callback);
460
+ return transport.subscribe('host_jsonrpc_message_subscribe', args, callback);
366
461
  },
367
462
  };
368
463
  }
package/dist/index.d.ts CHANGED
@@ -13,8 +13,13 @@ export { assertEnumVariant, enumValue, fromHex, isEnumVariant, resultErr, result
13
13
  export { GenericError } from './protocol/commonCodecs.js';
14
14
  export { CreateTransactionErr, VersionedPublicTxPayload } from './protocol/v1/createTransaction.js';
15
15
  export { Account, AccountId, CreateProofErr, ProductAccountId, RequestCredentialsErr, RingLocation, } from './protocol/v1/accounts.js';
16
- export { ChatActionPayload, ChatMessageContent, ChatMessagePostingErr, ChatRoom, ChatRoomRegistrationErr, ChatRoomRegistrationResult, ReceivedChatAction, } from './protocol/v1/chat.js';
16
+ export { ChatActionPayload, ChatBotRegistrationErr, ChatBotRegistrationStatus, ChatMessageContent, ChatMessagePostingErr, ChatRoom, ChatRoomRegistrationErr, ChatRoomRegistrationResult, ChatRoomRegistrationStatus, ReceivedChatAction, } from './protocol/v1/chat.js';
17
17
  export { HandshakeErr } from './protocol/v1/handshake.js';
18
18
  export { SigningErr } from './protocol/v1/sign.js';
19
19
  export { SignedStatement, Statement, StatementProofErr, Topic } from './protocol/v1/statementStore.js';
20
- export { StorageErr } from './protocol/v1/storage.js';
20
+ export { StorageErr } from './protocol/v1/localStorage.js';
21
+ export { DevicePermissionRequest } from './protocol/v1/devicePermission.js';
22
+ export { RemotePermissionRequest } from './protocol/v1/remotePermission.js';
23
+ export { PushNotification } from './protocol/v1/notification.js';
24
+ export { NavigateToErr } from './protocol/v1/navigation.js';
25
+ export { PreimageKey, PreimageSubmitErr, PreimageValue } from './protocol/v1/preimage.js';
package/dist/index.js CHANGED
@@ -8,8 +8,13 @@ export { assertEnumVariant, enumValue, fromHex, isEnumVariant, resultErr, result
8
8
  export { GenericError } from './protocol/commonCodecs.js';
9
9
  export { CreateTransactionErr, VersionedPublicTxPayload } from './protocol/v1/createTransaction.js';
10
10
  export { Account, AccountId, CreateProofErr, ProductAccountId, RequestCredentialsErr, RingLocation, } from './protocol/v1/accounts.js';
11
- export { ChatActionPayload, ChatMessageContent, ChatMessagePostingErr, ChatRoom, ChatRoomRegistrationErr, ChatRoomRegistrationResult, ReceivedChatAction, } from './protocol/v1/chat.js';
11
+ export { ChatActionPayload, ChatBotRegistrationErr, ChatBotRegistrationStatus, ChatMessageContent, ChatMessagePostingErr, ChatRoom, ChatRoomRegistrationErr, ChatRoomRegistrationResult, ChatRoomRegistrationStatus, ReceivedChatAction, } from './protocol/v1/chat.js';
12
12
  export { HandshakeErr } from './protocol/v1/handshake.js';
13
13
  export { SigningErr } from './protocol/v1/sign.js';
14
14
  export { SignedStatement, Statement, StatementProofErr, Topic } from './protocol/v1/statementStore.js';
15
- export { StorageErr } from './protocol/v1/storage.js';
15
+ export { StorageErr } from './protocol/v1/localStorage.js';
16
+ export { DevicePermissionRequest } from './protocol/v1/devicePermission.js';
17
+ export { RemotePermissionRequest } from './protocol/v1/remotePermission.js';
18
+ export { PushNotification } from './protocol/v1/notification.js';
19
+ export { NavigateToErr } from './protocol/v1/navigation.js';
20
+ export { PreimageKey, PreimageSubmitErr, PreimageValue } from './protocol/v1/preimage.js';