viz-js-lib 0.11.0 → 0.12.4

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 (60) hide show
  1. package/.qoder/docs/spec/viz-dns-nameserver-spec.md +982 -0
  2. package/.qoder/docs/viz-cpp-node-docs/data-types.md +322 -0
  3. package/.qoder/docs/viz-cpp-node-docs/index.md +160 -0
  4. package/.qoder/docs/viz-cpp-node-docs/op-account-market.md +236 -0
  5. package/.qoder/docs/viz-cpp-node-docs/op-account.md +199 -0
  6. package/.qoder/docs/viz-cpp-node-docs/op-award.md +162 -0
  7. package/.qoder/docs/viz-cpp-node-docs/op-committee.md +193 -0
  8. package/.qoder/docs/viz-cpp-node-docs/op-content.md +157 -0
  9. package/.qoder/docs/viz-cpp-node-docs/op-escrow.md +224 -0
  10. package/.qoder/docs/viz-cpp-node-docs/op-invite.md +219 -0
  11. package/.qoder/docs/viz-cpp-node-docs/op-proposal.md +229 -0
  12. package/.qoder/docs/viz-cpp-node-docs/op-recovery.md +188 -0
  13. package/.qoder/docs/viz-cpp-node-docs/op-subscription.md +146 -0
  14. package/.qoder/docs/viz-cpp-node-docs/op-transfer-vesting.md +224 -0
  15. package/.qoder/docs/viz-cpp-node-docs/op-witness.md +252 -0
  16. package/.qoder/docs/viz-cpp-node-docs/plugins.md +887 -0
  17. package/.qoder/docs/viz-cpp-node-docs/virtual-operations.md +513 -0
  18. package/.qoder/repowiki/en/content/API Reference/API Reference.md +724 -0
  19. package/.qoder/repowiki/en/content/API Reference/Configuration Options.md +410 -0
  20. package/.qoder/repowiki/en/content/API Reference/Core API Methods.md +547 -0
  21. package/.qoder/repowiki/en/content/API Reference/Streaming APIs.md +380 -0
  22. package/.qoder/repowiki/en/content/API Reference/Transport Layer.md +341 -0
  23. package/.qoder/repowiki/en/content/API Reference/VIZ Blockchain Operations Coverage Status.md +427 -0
  24. package/.qoder/repowiki/en/content/Authentication & Cryptography/Authentication & Cryptography.md +430 -0
  25. package/.qoder/repowiki/en/content/Authentication & Cryptography/Digital Signatures.md +462 -0
  26. package/.qoder/repowiki/en/content/Authentication & Cryptography/Key Management.md +456 -0
  27. package/.qoder/repowiki/en/content/Authentication & Cryptography/Memo Encryption.md +331 -0
  28. package/.qoder/repowiki/en/content/Authentication & Cryptography/Security Practices.md +488 -0
  29. package/.qoder/repowiki/en/content/Broadcast Transactions/Broadcast Transactions.md +432 -0
  30. package/.qoder/repowiki/en/content/Broadcast Transactions/Network Broadcasting.md +418 -0
  31. package/.qoder/repowiki/en/content/Broadcast Transactions/Operation Construction.md +352 -0
  32. package/.qoder/repowiki/en/content/Broadcast Transactions/Transaction Preparation.md +353 -0
  33. package/.qoder/repowiki/en/content/Broadcast Transactions/Transaction Signing.md +404 -0
  34. package/.qoder/repowiki/en/content/Data Serialization/Data Serialization.md +540 -0
  35. package/.qoder/repowiki/en/content/Data Serialization/Encoding & Decoding.md +463 -0
  36. package/.qoder/repowiki/en/content/Data Serialization/Object Templates.md +413 -0
  37. package/.qoder/repowiki/en/content/Data Serialization/Type System.md +514 -0
  38. package/.qoder/repowiki/en/content/Data Serialization/Validation Rules.md +439 -0
  39. package/.qoder/repowiki/en/content/Examples & Tutorials.md +485 -0
  40. package/.qoder/repowiki/en/content/Getting Started.md +345 -0
  41. package/.qoder/repowiki/en/content/Testing & Development.md +637 -0
  42. package/.qoder/repowiki/en/content/Utilities & Helpers.md +557 -0
  43. package/.qoder/repowiki/en/meta/repowiki-metadata.json +1 -0
  44. package/VIZ-JS-LIB-COVERAGE-STATUS.md +356 -0
  45. package/config.json +3 -1
  46. package/dist/statistics.html +1 -1
  47. package/dist/viz-tests.min.js +32 -42
  48. package/dist/viz-tests.min.js.gz +0 -0
  49. package/dist/viz.min.js +8 -18
  50. package/dist/viz.min.js.gz +0 -0
  51. package/lib/api/methods.js +24 -0
  52. package/lib/auth/serializer/src/ChainTypes.js +2 -1
  53. package/lib/auth/serializer/src/operations.js +35 -2
  54. package/lib/broadcast/index.js +29 -15
  55. package/lib/broadcast/operations.js +4 -0
  56. package/lib/dns.js +658 -0
  57. package/lib/index.js +3 -1
  58. package/package.json +3 -2
  59. package/test/dns.test.js +395 -0
  60. package/webpack/makeConfig.js +3 -0
@@ -0,0 +1,356 @@
1
+ # VIZ-JS-LIB Coverage Status
2
+
3
+ **Date:** 03.03.2026
4
+ **Based on:** viz-cpp-node documentation
5
+
6
+ ---
7
+
8
+ ## Summary
9
+
10
+ | Category | Total | Implemented | Missing | Coverage |
11
+ |----------|-------|-------------|---------|----------|
12
+ | **Regular Operations** | 31 | 31 | 0 | 100% |
13
+ | **Virtual Operations** | 22 | 22 | 0 | 100% |
14
+ | **Plugin API Methods** | 88 | 86 | 2 | 98% |
15
+
16
+ **Overall Status:** ✅ **FULL COVERAGE**
17
+
18
+ ---
19
+
20
+ ## Regular Operations (Broadcastable)
21
+
22
+ All user-broadcastable operations are implemented.
23
+
24
+ | ID | Operation | Auth | Status | Serializer | Broadcast |
25
+ |----|-----------|------|--------|------------|-----------|
26
+ | 0 | `vote` *(deprecated)* | regular | ✅ Complete | ✅ | ✅ |
27
+ | 1 | `content` *(deprecated)* | regular | ✅ Complete | ✅ | ✅ |
28
+ | 2 | `transfer` | active/master | ✅ Complete | ✅ | ✅ |
29
+ | 3 | `transfer_to_vesting` | active | ✅ Complete | ✅ | ✅ |
30
+ | 4 | `withdraw_vesting` | active | ✅ Complete | ✅ | ✅ |
31
+ | 5 | `account_update` | master/active | ✅ Complete | ✅ | ✅ |
32
+ | 6 | `witness_update` | active | ✅ Complete | ✅ | ✅ |
33
+ | 7 | `account_witness_vote` | active | ✅ Complete | ✅ | ✅ |
34
+ | 8 | `account_witness_proxy` | active | ✅ Complete | ✅ | ✅ |
35
+ | 9 | `delete_content` *(deprecated)* | regular | ✅ Complete | ✅ | ✅ |
36
+ | 10 | `custom` | active/regular | ✅ Complete | ✅ | ✅ |
37
+ | 11 | `set_withdraw_vesting_route` | active | ✅ Complete | ✅ | ✅ |
38
+ | 12 | `request_account_recovery` | active | ✅ Complete | ✅ | ✅ |
39
+ | 13 | `recover_account` | master×2 | ✅ Complete | ✅ | ✅ |
40
+ | 14 | `change_recovery_account` | master | ✅ Complete | ✅ | ✅ |
41
+ | 15 | `escrow_transfer` | active | ✅ Complete | ✅ | ✅ |
42
+ | 16 | `escrow_dispute` | active | ✅ Complete | ✅ | ✅ |
43
+ | 17 | `escrow_release` | active | ✅ Complete | ✅ | ✅ |
44
+ | 18 | `escrow_approve` | active | ✅ Complete | ✅ | ✅ |
45
+ | 19 | `delegate_vesting_shares` | active | ✅ Complete | ✅ | ✅ |
46
+ | 20 | `account_create` | active | ✅ Complete | ✅ | ✅ |
47
+ | 21 | `account_metadata` | regular | ✅ Complete | ✅ | ✅ |
48
+ | 22 | `proposal_create` | active | ✅ Complete | ✅ | ✅ |
49
+ | 23 | `proposal_update` | varies | ✅ Complete | ✅ | ✅ |
50
+ | 24 | `proposal_delete` | active | ✅ Complete | ✅ | ✅ |
51
+ | 25 | `chain_properties_update` | active | ✅ Complete | ✅ | ✅ |
52
+ | 35 | `committee_worker_create_request` | regular | ✅ Complete | ✅ | ✅ |
53
+ | 36 | `committee_worker_cancel_request` | regular | ✅ Complete | ✅ | ✅ |
54
+ | 37 | `committee_vote_request` | regular | ✅ Complete | ✅ | ✅ |
55
+ | 43 | `create_invite` | active | ✅ Complete | ✅ | ✅ |
56
+ | 44 | `claim_invite_balance` | active | ✅ Complete | ✅ | ✅ |
57
+ | 45 | `invite_registration` | active | ✅ Complete | ✅ | ✅ |
58
+ | 46 | `versioned_chain_properties_update` | active | ✅ Complete | ✅ | ✅ |
59
+ | 47 | `award` | regular | ✅ Complete | ✅ | ✅ |
60
+ | 50 | `set_paid_subscription` | active | ✅ Complete | ✅ | ✅ |
61
+ | 51 | `paid_subscribe` | active | ✅ Complete | ✅ | ✅ |
62
+ | 54 | `set_account_price` | master | ✅ Complete | ✅ | ✅ |
63
+ | 55 | `set_subaccount_price` | master | ✅ Complete | ✅ | ✅ |
64
+ | 56 | `buy_account` | active | ✅ Complete | ✅ | ✅ |
65
+ | 58 | `use_invite_balance` | active | ✅ Complete | ✅ | ✅ |
66
+ | 60 | `fixed_award` | regular | ✅ Complete | ✅ | ✅ |
67
+ | 61 | `target_account_sale` | master | ✅ Complete | ✅ | ✅ |
68
+
69
+ ---
70
+
71
+ ## Virtual Operations (Read-Only)
72
+
73
+ All virtual operations have serializer definitions for parsing.
74
+
75
+ | ID | Operation | Trigger | Status | Serializer |
76
+ |----|-----------|---------|--------|------------|
77
+ | 26 | `author_reward` | Content payout | ✅ Complete | ✅ |
78
+ | 27 | `curation_reward` | Content payout | ✅ Complete | ✅ |
79
+ | 28 | `content_reward` | Content payout | ✅ Complete | ✅ |
80
+ | 29 | `fill_vesting_withdraw` | Withdrawal interval | ✅ Complete | ✅ |
81
+ | 30 | `shutdown_witness` | Witness deactivated | ✅ Complete | ✅ |
82
+ | 31 | `hardfork` | Hardfork activation | ✅ Complete | ✅ |
83
+ | 32 | `content_payout_update` | Content payout update | ✅ Complete | ✅ |
84
+ | 33 | `content_benefactor_reward` | Content payout | ✅ Complete | ✅ |
85
+ | 34 | `return_vesting_delegation` | Delegation limbo ends | ✅ Complete | ✅ |
86
+ | 38 | `committee_cancel_request` | Request expires | ✅ Complete | ✅ |
87
+ | 39 | `committee_approve_request` | Request approved | ✅ Complete | ✅ |
88
+ | 40 | `committee_payout_request` | Payout processed | ✅ Complete | ✅ |
89
+ | 41 | `committee_pay_request` | Worker paid | ✅ Complete | ✅ |
90
+ | 42 | `witness_reward` | Block produced | ✅ Complete | ✅ |
91
+ | 48 | `receive_award` | Award given | ✅ Complete | ✅ |
92
+ | 49 | `benefactor_award` | Award with beneficiary | ✅ Complete | ✅ |
93
+ | 52 | `paid_subscription_action` | Subscription payment | ✅ Complete | ✅ |
94
+ | 53 | `cancel_paid_subscription` | Subscription ends | ✅ Complete | ✅ |
95
+ | 57 | `account_sale` | Account sold | ✅ Complete | ✅ |
96
+ | 59 | `expire_escrow_ratification` | Escrow deadline missed | ✅ Complete | ✅ |
97
+ | 62 | `bid` | Bid placed (HF11) | ✅ Complete | ✅ |
98
+ | 63 | `outbid` | Outbid (HF11) | ✅ Complete | ✅ |
99
+
100
+ ---
101
+
102
+ ## Plugin API Coverage
103
+
104
+ ### database_api (Active)
105
+
106
+ | Method | Status | Notes |
107
+ |--------|--------|-------|
108
+ | `get_block_header` | ✅ | |
109
+ | `get_block` | ✅ | |
110
+ | `get_irreversible_block_header` | ✅ | |
111
+ | `get_irreversible_block` | ✅ | |
112
+ | `set_block_applied_callback` | ✅ | WebSocket subscription |
113
+ | `get_config` | ✅ | |
114
+ | `get_dynamic_global_properties` | ✅ | |
115
+ | `get_chain_properties` | ✅ | |
116
+ | `get_hardfork_version` | ✅ | |
117
+ | `get_next_scheduled_hardfork` | ✅ | |
118
+ | `get_accounts` | ✅ | |
119
+ | `lookup_account_names` | ✅ | |
120
+ | `lookup_accounts` | ✅ | |
121
+ | `get_account_count` | ✅ | |
122
+ | `get_owner_history` | ✅ | Legacy naming |
123
+ | `get_master_history` | ✅ | Current naming |
124
+ | `get_recovery_request` | ✅ | |
125
+ | `get_escrow` | ✅ | |
126
+ | `get_withdraw_routes` | ✅ | |
127
+ | `get_vesting_delegations` | ✅ | |
128
+ | `get_expiring_vesting_delegations` | ✅ | |
129
+ | `get_transaction_hex` | ✅ | |
130
+ | `get_required_signatures` | ✅ | |
131
+ | `get_potential_signatures` | ✅ | |
132
+ | `verify_authority` | ✅ | |
133
+ | `verify_account_authority` | ✅ | |
134
+ | `get_database_info` | ✅ | |
135
+ | `get_proposed_transaction` | ✅ | |
136
+ | `get_proposed_transactions` | ✅ | |
137
+ | `get_accounts_on_sale` | ✅ | |
138
+ | `get_accounts_on_auction` | ✅ | |
139
+ | `get_subaccounts_on_sale` | ✅ | |
140
+
141
+ ### network_broadcast_api (Active)
142
+
143
+ | Method | Status | Notes |
144
+ |--------|--------|-------|
145
+ | `broadcast_transaction` | ✅ | Async broadcast |
146
+ | `broadcast_transaction_synchronous` | ✅ | Wait for inclusion |
147
+ | `broadcast_transaction_with_callback` | ✅ | Callback on confirm |
148
+ | `broadcast_block` | ✅ | For witnesses |
149
+
150
+ ### witness_api (Active)
151
+
152
+ | Method | Status | Notes |
153
+ |--------|--------|-------|
154
+ | `get_active_witnesses` | ✅ | |
155
+ | `get_witness_schedule` | ✅ | |
156
+ | `get_witnesses` | ✅ | |
157
+ | `get_witness_by_account` | ✅ | |
158
+ | `get_witnesses_by_vote` | ✅ | |
159
+ | `get_witnesses_by_counted_vote` | ✅ | |
160
+ | `get_witness_count` | ✅ | |
161
+ | `lookup_witness_accounts` | ✅ | |
162
+ | `get_miner_queue` | ✅ | |
163
+
164
+ ### account_by_key (Active)
165
+
166
+ | Method | Status | Notes |
167
+ |--------|--------|-------|
168
+ | `get_key_references` | ✅ | |
169
+
170
+ ### account_history (Active)
171
+
172
+ | Method | Status | Notes |
173
+ |--------|--------|-------|
174
+ | `get_account_history` | ✅ | |
175
+
176
+ ### operation_history (Active)
177
+
178
+ | Method | Status | Notes |
179
+ |--------|--------|-------|
180
+ | `get_ops_in_block` | ✅ | |
181
+ | `get_transaction` | ✅ | |
182
+
183
+ ### committee_api (Active)
184
+
185
+ | Method | Status | Notes |
186
+ |--------|--------|-------|
187
+ | `get_committee_request` | ✅ | |
188
+ | `get_committee_request_votes` | ✅ | |
189
+ | `get_committee_requests_list` | ✅ | |
190
+
191
+ ### invite_api (Active)
192
+
193
+ | Method | Status | Notes |
194
+ |--------|--------|-------|
195
+ | `get_invites_list` | ✅ | |
196
+ | `get_invite_by_id` | ✅ | |
197
+ | `get_invite_by_key` | ✅ | |
198
+
199
+ ### paid_subscription_api (Active)
200
+
201
+ | Method | Status | Notes |
202
+ |--------|--------|-------|
203
+ | `get_paid_subscriptions` | ✅ | |
204
+ | `get_paid_subscription_options` | ✅ | |
205
+ | `get_paid_subscription_status` | ✅ | |
206
+ | `get_active_paid_subscriptions` | ✅ | |
207
+ | `get_inactive_paid_subscriptions` | ✅ | |
208
+
209
+ ### custom_protocol_api (Active)
210
+
211
+ | Method | Status | Notes |
212
+ |--------|--------|-------|
213
+ | `get_account` | ✅ | |
214
+
215
+ ### auth_util (Active)
216
+
217
+ | Method | Status | Notes |
218
+ |--------|--------|-------|
219
+ | `check_authority_signature` | ✅ | |
220
+
221
+ ### block_info (Active)
222
+
223
+ | Method | Status | Notes |
224
+ |--------|--------|-------|
225
+ | `get_block_info` | ✅ | |
226
+ | `get_blocks_with_info` | ✅ | |
227
+
228
+ ### raw_block (Active)
229
+
230
+ | Method | Status | Notes |
231
+ |--------|--------|-------|
232
+ | `get_raw_block` | ✅ | |
233
+
234
+ ### follow (Deprecated)
235
+
236
+ | Method | Status | Notes |
237
+ |--------|--------|-------|
238
+ | `get_followers` | ✅ | |
239
+ | `get_following` | ✅ | |
240
+ | `get_follow_count` | ✅ | |
241
+ | `get_feed_entries` | ✅ | |
242
+ | `get_feed` | ✅ | |
243
+ | `get_blog_entries` | ✅ | |
244
+ | `get_blog` | ✅ | |
245
+ | `get_reblogged_by` | ✅ | |
246
+ | `get_blog_authors` | ✅ | |
247
+
248
+ ### tags (Deprecated)
249
+
250
+ | Method | Status | Notes |
251
+ |--------|--------|-------|
252
+ | `get_trending_tags` | ✅ | |
253
+ | `get_tags_used_by_author` | ✅ | |
254
+ | `get_discussions_by_payout` | ✅ | |
255
+ | `get_discussions_by_trending` | ✅ | |
256
+ | `get_discussions_by_created` | ✅ | |
257
+ | `get_discussions_by_active` | ✅ | |
258
+ | `get_discussions_by_cashout` | ✅ | |
259
+ | `get_discussions_by_votes` | ✅ | |
260
+ | `get_discussions_by_children` | ✅ | |
261
+ | `get_discussions_by_hot` | ✅ | |
262
+ | `get_discussions_by_feed` | ✅ | |
263
+ | `get_discussions_by_blog` | ✅ | |
264
+ | `get_discussions_by_contents` | ✅ | |
265
+ | `get_discussions_by_author_before_date` | ✅ | |
266
+ | `get_languages` | ✅ | |
267
+
268
+ ### social_network (Deprecated)
269
+
270
+ | Method | Status | Notes |
271
+ |--------|--------|-------|
272
+ | `get_replies_by_last_update` | ✅ | |
273
+ | `get_content` | ✅ | |
274
+ | `get_content_replies` | ✅ | |
275
+ | `get_all_content_replies` | ✅ | |
276
+ | `get_active_votes` | ✅ | |
277
+ | `get_account_votes` | ✅ | |
278
+
279
+ ### private_message (Deprecated - Not Implemented)
280
+
281
+ | Method | Status | Notes |
282
+ |--------|--------|-------|
283
+ | `get_inbox` | ⚠️ N/A | Deprecated plugin, not implemented |
284
+ | `get_outbox` | ⚠️ N/A | Deprecated plugin, not implemented |
285
+
286
+ ---
287
+
288
+ ## Plugin Status Summary
289
+
290
+ | Plugin | Status | API Methods | Category |
291
+ |--------|--------|-------------|----------|
292
+ | `chain` | Active | None | Core |
293
+ | `json_rpc` | Active | None | Core |
294
+ | `webserver` | Active | None | Infrastructure |
295
+ | `p2p` | Active | None | Infrastructure |
296
+ | `database_api` | ✅ Active | 32 | API |
297
+ | `network_broadcast_api` | ✅ Active | 4 | API |
298
+ | `witness_api` | ✅ Active | 9 | API |
299
+ | `account_by_key` | ✅ Active | 1 | Index/API |
300
+ | `account_history` | ✅ Active | 1 | Index/API |
301
+ | `operation_history` | ✅ Active | 2 | Index/API |
302
+ | `committee_api` | ✅ Active | 3 | API |
303
+ | `invite_api` | ✅ Active | 3 | API |
304
+ | `paid_subscription_api` | ✅ Active | 5 | API |
305
+ | `custom_protocol_api` | ✅ Active | 1 | API |
306
+ | `auth_util` | ✅ Active | 1 | API |
307
+ | `block_info` | ✅ Active | 2 | API |
308
+ | `raw_block` | ✅ Active | 1 | API |
309
+ | `follow` | ⚠️ Deprecated | 9 | Index/API |
310
+ | `tags` | ⚠️ Deprecated | 15 | Index/API |
311
+ | `social_network` | ⚠️ Deprecated | 6 | API |
312
+ | `private_message` | ⚠️ Deprecated | 0 (N/A) | Index/API |
313
+ | `witness` | Active | None | Producer |
314
+ | `debug_node` | Dev only | N/A | Debug |
315
+ | `mongo_db` | Active | None | External |
316
+
317
+ ---
318
+
319
+ ## Files Reference
320
+
321
+ | File | Description |
322
+ |------|-------------|
323
+ | `src/broadcast/operations.js` | Broadcast operation definitions with params and auth roles |
324
+ | `src/api/methods.js` | API method definitions for all plugins |
325
+ | `src/auth/serializer/src/operations.js` | Binary serialization definitions for all operations |
326
+
327
+ ---
328
+
329
+ ## Legend
330
+
331
+ - ✅ **Complete** - Fully implemented and working
332
+ - ⚠️ **Deprecated** - Working but deprecated in VIZ protocol
333
+ - ❌ **Missing** - Not implemented
334
+ - N/A - Not applicable
335
+
336
+ ---
337
+
338
+ ## Changes Made (03.03.2026)
339
+
340
+ Added missing API methods to `src/api/methods.js`:
341
+
342
+ 1. **database_api**
343
+ - `get_master_history` - Current naming for master key history
344
+ - `set_block_applied_callback` - WebSocket block subscription
345
+
346
+ 2. **auth_util**
347
+ - `check_authority_signature` - Verify signature against authority
348
+
349
+ 3. **block_info**
350
+ - `get_block_info` - Extended block information
351
+ - `get_blocks_with_info` - Multiple blocks with info
352
+
353
+ 4. **raw_block**
354
+ - `get_raw_block` - Raw serialized block data
355
+
356
+ **Note:** `private_message` plugin methods (`get_inbox`, `get_outbox`) are deprecated and intentionally not implemented.
package/config.json CHANGED
@@ -2,5 +2,7 @@
2
2
  "websocket": "",
3
3
  "address_prefix": "VIZ",
4
4
  "chain_id": "2040effda178d4fffff5eab7a915d4019879f5205cc5392e4bcced2b6edda0cd",
5
- "broadcast_transaction_with_callback": false
5
+ "broadcast_transaction_with_callback": false,
6
+ "reference_irreversible_block": false,
7
+ "tx_expiration_seconds": 60
6
8
  }