@bsv/wallet-toolbox 1.1.33 → 1.1.35
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/docs/client.md +215 -213
- package/docs/setup.md +2 -2
- package/docs/storage.md +140 -34
- package/docs/wallet.md +215 -213
- package/out/src/Setup.d.ts.map +1 -1
- package/out/src/Setup.js +2 -2
- package/out/src/Setup.js.map +1 -1
- package/out/src/sdk/WERR_errors.d.ts +1 -1
- package/out/src/sdk/WERR_errors.d.ts.map +1 -1
- package/out/src/sdk/WERR_errors.js +2 -2
- package/out/src/sdk/WERR_errors.js.map +1 -1
- package/out/src/sdk/WalletStorage.interfaces.d.ts +107 -0
- package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
- package/out/src/sdk/index.d.ts +0 -2
- package/out/src/sdk/index.d.ts.map +1 -1
- package/out/src/sdk/index.js +0 -2
- package/out/src/sdk/index.js.map +1 -1
- package/out/src/services/__tests/verifyBeef.test.d.ts +2 -0
- package/out/src/services/__tests/verifyBeef.test.d.ts.map +1 -0
- package/out/src/services/__tests/verifyBeef.test.js +16 -0
- package/out/src/services/__tests/verifyBeef.test.js.map +1 -0
- package/out/src/services/providers/__tests/WhatsOnChain.test.js +11 -0
- package/out/src/services/providers/__tests/WhatsOnChain.test.js.map +1 -1
- package/out/src/storage/StorageReader.d.ts +1 -1
- package/out/src/storage/StorageReader.d.ts.map +1 -1
- package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
- package/out/src/storage/StorageReaderWriter.js +2 -1
- package/out/src/storage/StorageReaderWriter.js.map +1 -1
- package/out/src/storage/StorageSyncReader.d.ts +2 -18
- package/out/src/storage/StorageSyncReader.d.ts.map +1 -1
- package/out/src/storage/StorageSyncReader.js +1 -105
- package/out/src/storage/StorageSyncReader.js.map +1 -1
- package/out/src/storage/WalletStorageManager.d.ts +86 -10
- package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
- package/out/src/storage/WalletStorageManager.js +235 -78
- package/out/src/storage/WalletStorageManager.js.map +1 -1
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js +1 -1
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
- package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
- package/out/src/storage/schema/KnexMigrations.js +19 -0
- package/out/src/storage/schema/KnexMigrations.js.map +1 -1
- package/out/src/storage/schema/entities/User.d.ts +2 -2
- package/out/src/storage/schema/entities/User.d.ts.map +1 -1
- package/out/src/storage/schema/entities/User.js +1 -1
- package/out/src/storage/schema/entities/User.js.map +1 -1
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.js +2 -1
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.js.map +1 -1
- package/out/src/storage/schema/entities/__tests/usersTests.test.js +12 -6
- package/out/src/storage/schema/entities/__tests/usersTests.test.js.map +1 -1
- package/out/src/storage/schema/tables/User.d.ts +1 -1
- package/out/src/storage/schema/tables/User.d.ts.map +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.d.ts +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.js +4 -5
- package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
- package/out/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.js +25 -13
- package/out/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.js.map +1 -1
- package/out/test/Wallet/sync/setActive.test.d.ts +2 -0
- package/out/test/Wallet/sync/setActive.test.d.ts.map +1 -0
- package/out/test/Wallet/sync/setActive.test.js +60 -0
- package/out/test/Wallet/sync/setActive.test.js.map +1 -0
- package/out/test/examples/{backup.test.d.ts → backup.man.test.d.ts} +1 -1
- package/out/test/examples/backup.man.test.d.ts.map +1 -0
- package/out/test/examples/{backup.test.js → backup.man.test.js} +1 -1
- package/out/test/examples/backup.man.test.js.map +1 -0
- package/out/test/storage/StorageMySQLDojoReader.man.test.js.map +1 -1
- package/out/test/storage/count.test.js +1 -0
- package/out/test/storage/count.test.js.map +1 -1
- package/out/test/storage/find.test.js +1 -0
- package/out/test/storage/find.test.js.map +1 -1
- package/out/test/storage/update.test.js +3 -1
- package/out/test/storage/update.test.js.map +1 -1
- package/out/test/storage/update2.test.js +5 -2
- package/out/test/storage/update2.test.js.map +1 -1
- package/out/test/utils/TestUtilsWalletStorage.d.ts.map +1 -1
- package/out/test/utils/TestUtilsWalletStorage.js +5 -4
- package/out/test/utils/TestUtilsWalletStorage.js.map +1 -1
- package/out/test/wallet/sync/Wallet.sync.test.js +1 -3
- package/out/test/wallet/sync/Wallet.sync.test.js.map +1 -1
- package/out/tsconfig.all.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/Setup.ts +3 -2
- package/src/sdk/WERR_errors.ts +3 -2
- package/src/sdk/WalletStorage.interfaces.ts +117 -0
- package/src/sdk/index.ts +0 -2
- package/src/services/__tests/verifyBeef.test.ts +18 -0
- package/src/services/providers/__tests/WhatsOnChain.test.ts +16 -1
- package/src/storage/StorageReader.ts +1 -1
- package/src/storage/StorageReaderWriter.ts +2 -1
- package/src/storage/StorageSyncReader.ts +2 -109
- package/src/storage/WalletStorageManager.ts +307 -86
- package/src/storage/methods/attemptToPostReqsToNetwork.ts +1 -1
- package/src/storage/schema/KnexMigrations.ts +23 -1
- package/src/storage/schema/entities/User.ts +2 -2
- package/src/storage/schema/entities/__tests/SyncStateTests.test.ts +2 -1
- package/src/storage/schema/entities/__tests/usersTests.test.ts +12 -6
- package/src/storage/schema/tables/User.ts +1 -1
- package/src/storage/sync/StorageMySQLDojoReader.ts +8 -6
- package/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.ts +30 -13
- package/test/Wallet/sync/setActive.test.ts +67 -0
- package/test/storage/StorageMySQLDojoReader.man.test.ts +1 -1
- package/test/storage/count.test.ts +1 -0
- package/test/storage/find.test.ts +1 -0
- package/test/storage/update.test.ts +3 -1
- package/test/storage/update2.test.ts +5 -2
- package/test/utils/TestUtilsWalletStorage.ts +5 -4
- package/test/wallet/sync/Wallet.sync.test.ts +1 -3
- package/out/src/sdk/StorageSyncReader.d.ts +0 -121
- package/out/src/sdk/StorageSyncReader.d.ts.map +0 -1
- package/out/src/sdk/StorageSyncReader.js +0 -3
- package/out/src/sdk/StorageSyncReader.js.map +0 -1
- package/out/src/sdk/StorageSyncReaderWriter.d.ts +0 -89
- package/out/src/sdk/StorageSyncReaderWriter.d.ts.map +0 -1
- package/out/src/sdk/StorageSyncReaderWriter.js +0 -3
- package/out/src/sdk/StorageSyncReaderWriter.js.map +0 -1
- package/out/test/examples/backup.test.d.ts.map +0 -1
- package/out/test/examples/backup.test.js.map +0 -1
- package/src/sdk/StorageSyncReader.ts +0 -173
- package/src/sdk/StorageSyncReaderWriter.ts +0 -277
- /package/test/examples/{backup.test.ts → backup.man.test.ts} +0 -0
|
@@ -46,7 +46,10 @@ export interface StorageMySQLDojoReaderOptions extends StorageReaderOptions {
|
|
|
46
46
|
knex: Knex
|
|
47
47
|
}
|
|
48
48
|
|
|
49
|
-
export class StorageMySQLDojoReader
|
|
49
|
+
export class StorageMySQLDojoReader
|
|
50
|
+
extends StorageReader
|
|
51
|
+
implements sdk.WalletStorageSyncReader
|
|
52
|
+
{
|
|
50
53
|
knex: Knex
|
|
51
54
|
|
|
52
55
|
constructor(options: StorageMySQLDojoReaderOptions) {
|
|
@@ -300,13 +303,11 @@ export class StorageMySQLDojoReader extends StorageReader {
|
|
|
300
303
|
outputDescription: (d.description || '').trim(),
|
|
301
304
|
vout: verifyInteger(typeof d.vout !== 'number' ? 9999 : d.vout),
|
|
302
305
|
satoshis: verifyInteger(d.amount),
|
|
303
|
-
providedBy: verifyTruthy(d.providedBy || '')
|
|
306
|
+
providedBy: verifyTruthy(d.providedBy || 'you')
|
|
304
307
|
.trim()
|
|
305
308
|
.toLowerCase()
|
|
306
309
|
.replace('dojo', 'storage'),
|
|
307
|
-
purpose:
|
|
308
|
-
.trim()
|
|
309
|
-
.toLowerCase(),
|
|
310
|
+
purpose: (d.purpose || '').trim().toLowerCase(),
|
|
310
311
|
type: verifyTruthy(d.type).trim(),
|
|
311
312
|
txid: nullToUndefined(d.txid),
|
|
312
313
|
senderIdentityKey: verifyOptionalHexString(d.senderIdentityKey),
|
|
@@ -421,7 +422,8 @@ export class StorageMySQLDojoReader extends StorageReader {
|
|
|
421
422
|
created_at: verifyTruthy(d.created_at),
|
|
422
423
|
updated_at: verifyTruthy(d.updated_at),
|
|
423
424
|
userId: verifyId(d.userId),
|
|
424
|
-
identityKey: verifyTruthy(d.identityKey)
|
|
425
|
+
identityKey: verifyTruthy(d.identityKey),
|
|
426
|
+
activeStorage: this.getSettings().storageIdentityKey
|
|
425
427
|
}
|
|
426
428
|
rs.push(r)
|
|
427
429
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Setup } from '../../../src'
|
|
1
2
|
import { sdk, StorageSyncReader, wait } from '../../../src/index.client'
|
|
2
3
|
import { TaskCheckForProofs } from '../../../src/monitor/tasks/TaskCheckForProofs'
|
|
3
4
|
import { TaskClock } from '../../../src/monitor/tasks/TaskClock'
|
|
@@ -70,20 +71,21 @@ describe('Wallet sync tests', () => {
|
|
|
70
71
|
console.log(
|
|
71
72
|
'Importing from production dojo to local MySQL productiondojotone'
|
|
72
73
|
)
|
|
73
|
-
|
|
74
|
-
const
|
|
74
|
+
// production faucet key
|
|
75
|
+
const identityKey =
|
|
76
|
+
'030b78da8101cd8929ec355c694c275fbaf4f73d4eaa104873463779cac69a2a01' // process.env.MY_MAIN_IDENTITY || ''
|
|
77
|
+
const rootKeyHex = env.devKeys[identityKey]
|
|
75
78
|
const chain: sdk.Chain = 'main'
|
|
76
79
|
const connection = JSON.parse(process.env.MAIN_DOJO_CONNECTION || '')
|
|
77
80
|
const readerKnex = _tu.createMySQLFromConnection(connection)
|
|
78
81
|
const reader = new StorageMySQLDojoReader({ chain, knex: readerKnex })
|
|
79
82
|
const writer = await _tu.createMySQLTestWallet({
|
|
80
|
-
databaseName: '
|
|
83
|
+
databaseName: 'productiondojofaucet',
|
|
81
84
|
chain: 'main',
|
|
82
85
|
rootKeyHex,
|
|
83
86
|
dropAll: true
|
|
84
87
|
})
|
|
85
88
|
|
|
86
|
-
const identityKey = writer.identityKey
|
|
87
89
|
await writer.storage.syncFromReader(
|
|
88
90
|
identityKey,
|
|
89
91
|
new StorageSyncReader({ identityKey }, reader)
|
|
@@ -93,21 +95,23 @@ describe('Wallet sync tests', () => {
|
|
|
93
95
|
await writer.activeStorage.destroy()
|
|
94
96
|
})
|
|
95
97
|
|
|
96
|
-
test('0b sweep mysql dojo sync to new sqlite', async () => {
|
|
97
|
-
const identityKeyTone = process.env.MY_MAIN_IDENTITY || ''
|
|
98
|
-
const rootKeyHex = env.devKeys[identityKeyTone]
|
|
98
|
+
test.skip('0b sweep mysql dojo sync to new sqlite', async () => {
|
|
99
99
|
const chain: sdk.Chain = 'main'
|
|
100
|
+
const identityKey =
|
|
101
|
+
'030b78da8101cd8929ec355c694c275fbaf4f73d4eaa104873463779cac69a2a01' // prod faucet
|
|
102
|
+
//const identityKeyTone = process.env.MY_MAIN_IDENTITY || ''
|
|
103
|
+
const rootKeyHex = env.devKeys[identityKey]
|
|
100
104
|
|
|
101
105
|
const sweepFrom = await _tu.createMySQLTestWallet({
|
|
102
|
-
databaseName: '
|
|
103
|
-
chain
|
|
106
|
+
databaseName: 'productiondojofaucet',
|
|
107
|
+
chain,
|
|
104
108
|
rootKeyHex
|
|
105
109
|
})
|
|
106
110
|
|
|
107
111
|
const sweepTo = await _tu.createSQLiteTestWallet({
|
|
108
112
|
filePath: '/Users/tone/Kz/tone42.sqlite',
|
|
109
113
|
databaseName: 'tone42',
|
|
110
|
-
chain
|
|
114
|
+
chain,
|
|
111
115
|
rootKeyHex
|
|
112
116
|
})
|
|
113
117
|
|
|
@@ -120,7 +124,7 @@ describe('Wallet sync tests', () => {
|
|
|
120
124
|
await sweepFrom.wallet.destroy()
|
|
121
125
|
})
|
|
122
126
|
|
|
123
|
-
test('1 aggressively purge records from MySQL stagingdojotone', async () => {
|
|
127
|
+
test.skip('1 aggressively purge records from MySQL stagingdojotone', async () => {
|
|
124
128
|
await waitFor0()
|
|
125
129
|
|
|
126
130
|
const { monitor, activeStorage } = await _tu.createMySQLTestWallet({
|
|
@@ -148,7 +152,7 @@ describe('Wallet sync tests', () => {
|
|
|
148
152
|
done1 = true
|
|
149
153
|
})
|
|
150
154
|
|
|
151
|
-
test('2 sync pruned MySQL stagingdojotone to SQLite walletLegacyTestData', async () => {
|
|
155
|
+
test.skip('2 sync pruned MySQL stagingdojotone to SQLite walletLegacyTestData', async () => {
|
|
152
156
|
await waitFor1()
|
|
153
157
|
console.log(
|
|
154
158
|
'syncing local MySQL stagingdojotone to local SQLite walletLegacyTestData in tmp folder'
|
|
@@ -180,7 +184,7 @@ describe('Wallet sync tests', () => {
|
|
|
180
184
|
done2 = true
|
|
181
185
|
})
|
|
182
186
|
|
|
183
|
-
test('3 sync pruned MySQL stagingdojotone to MySQL walletLegacyTestData', async () => {
|
|
187
|
+
test.skip('3 sync pruned MySQL stagingdojotone to MySQL walletLegacyTestData', async () => {
|
|
184
188
|
await waitFor2()
|
|
185
189
|
console.log(
|
|
186
190
|
'syncing local MySQL stagingdojotone to local SQLite walletLegacyTestData in tmp folder'
|
|
@@ -206,4 +210,17 @@ describe('Wallet sync tests', () => {
|
|
|
206
210
|
await reader.activeStorage.destroy()
|
|
207
211
|
await writer.activeStorage.destroy()
|
|
208
212
|
})
|
|
213
|
+
|
|
214
|
+
test('8b run monitor mainnet', async () => {
|
|
215
|
+
if (Setup.noEnv('main')) return
|
|
216
|
+
if (!Setup.getEnv('main').filePath) return
|
|
217
|
+
|
|
218
|
+
// Only run if `Setup` style .env is present with a sqlite filePath...
|
|
219
|
+
|
|
220
|
+
const c = await _tu.createWalletSetupEnv('main')
|
|
221
|
+
|
|
222
|
+
await c.monitor.runOnce()
|
|
223
|
+
|
|
224
|
+
await c.wallet.destroy()
|
|
225
|
+
})
|
|
209
226
|
})
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { StorageKnex } from '../../../src'
|
|
2
|
+
import { _tu, TestWalletNoSetup } from '../../utils/TestUtilsWalletStorage'
|
|
3
|
+
|
|
4
|
+
describe('setActive tests', () => {
|
|
5
|
+
jest.setTimeout(99999999)
|
|
6
|
+
|
|
7
|
+
const env = _tu.getEnv('test')
|
|
8
|
+
const chain = env.chain
|
|
9
|
+
const rootKeyHex = env.devKeys[env.identityKey]
|
|
10
|
+
let setup: {
|
|
11
|
+
a: TestWalletNoSetup
|
|
12
|
+
b: TestWalletNoSetup
|
|
13
|
+
c: TestWalletNoSetup
|
|
14
|
+
}
|
|
15
|
+
let store: { a: StorageKnex; b: StorageKnex; c: StorageKnex }
|
|
16
|
+
let storeKey: { a: string; b: string; c: string }
|
|
17
|
+
const testName = () => expect.getState().currentTestName || 'test'
|
|
18
|
+
|
|
19
|
+
beforeEach(async () => {
|
|
20
|
+
const a = await _tu.createSQLiteTestWallet({
|
|
21
|
+
databaseName: `${testName()}_a`,
|
|
22
|
+
chain,
|
|
23
|
+
rootKeyHex,
|
|
24
|
+
dropAll: true
|
|
25
|
+
})
|
|
26
|
+
const b = await _tu.createSQLiteTestWallet({
|
|
27
|
+
databaseName: `${testName()}_b`,
|
|
28
|
+
chain,
|
|
29
|
+
rootKeyHex,
|
|
30
|
+
dropAll: true
|
|
31
|
+
})
|
|
32
|
+
const c = await _tu.createSQLiteTestWallet({
|
|
33
|
+
databaseName: `${testName()}_c`,
|
|
34
|
+
chain,
|
|
35
|
+
rootKeyHex,
|
|
36
|
+
dropAll: true
|
|
37
|
+
})
|
|
38
|
+
setup = { a, b, c }
|
|
39
|
+
store = { a: a.activeStorage, b: b.activeStorage, c: c.activeStorage }
|
|
40
|
+
storeKey = {
|
|
41
|
+
a: store.a._settings!.storageIdentityKey,
|
|
42
|
+
b: store.b._settings!.storageIdentityKey,
|
|
43
|
+
c: store.c._settings!.storageIdentityKey
|
|
44
|
+
}
|
|
45
|
+
})
|
|
46
|
+
|
|
47
|
+
afterEach(async () => {
|
|
48
|
+
await setup.a.wallet.destroy()
|
|
49
|
+
await setup.b.wallet.destroy()
|
|
50
|
+
await setup.c.wallet.destroy()
|
|
51
|
+
})
|
|
52
|
+
|
|
53
|
+
test('0', async () => {
|
|
54
|
+
const s = await _tu.createWalletOnly({
|
|
55
|
+
chain,
|
|
56
|
+
rootKeyHex,
|
|
57
|
+
active: store.a,
|
|
58
|
+
backups: [store.b, store.c]
|
|
59
|
+
})
|
|
60
|
+
expect(s.storage.isAvailable() === true)
|
|
61
|
+
expect(s.storage.isActiveEnabled === false)
|
|
62
|
+
const log = await s.storage.setActive(storeKey.b)
|
|
63
|
+
console.log(log)
|
|
64
|
+
expect(s.storage.getActiveStore()).toBe(storeKey.b)
|
|
65
|
+
expect(s.storage.isActiveEnabled === true)
|
|
66
|
+
})
|
|
67
|
+
})
|
|
@@ -40,6 +40,7 @@ describe('count tests', () => {
|
|
|
40
40
|
for (const storage of storages) {
|
|
41
41
|
await storage.dropAllData()
|
|
42
42
|
await storage.migrate('insert tests', '1'.repeat(64))
|
|
43
|
+
await storage.makeAvailable()
|
|
43
44
|
setups.push({ storage, setup: await _tu.createTestSetup1(storage) })
|
|
44
45
|
}
|
|
45
46
|
})
|
|
@@ -40,6 +40,7 @@ describe('find tests', () => {
|
|
|
40
40
|
for (const storage of storages) {
|
|
41
41
|
await storage.dropAllData()
|
|
42
42
|
await storage.migrate('insert tests', '1'.repeat(64))
|
|
43
|
+
await storage.makeAvailable()
|
|
43
44
|
setups.push({ storage, setup: await _tu.createTestSetup1(storage) })
|
|
44
45
|
}
|
|
45
46
|
})
|
|
@@ -73,6 +73,7 @@ describe('update tests', () => {
|
|
|
73
73
|
for (const storage of storages) {
|
|
74
74
|
await storage.dropAllData()
|
|
75
75
|
await storage.migrate('insert tests', '1'.repeat(64))
|
|
76
|
+
await storage.makeAvailable()
|
|
76
77
|
setups.push({ storage, setup: await _tu.createTestSetup1(storage) })
|
|
77
78
|
}
|
|
78
79
|
})
|
|
@@ -296,7 +297,8 @@ describe('update tests', () => {
|
|
|
296
297
|
userId: record.userId,
|
|
297
298
|
identityKey: `mockUpdatedIdentityKey-${record[primaryKey]}`,
|
|
298
299
|
created_at: new Date('2024-12-30T23:00:00Z'),
|
|
299
|
-
updated_at: new Date('2024-12-30T23:05:00Z')
|
|
300
|
+
updated_at: new Date('2024-12-30T23:05:00Z'),
|
|
301
|
+
activeStorage: storage.getSettings().storageIdentityKey
|
|
300
302
|
}
|
|
301
303
|
const updateResult = await storage.updateUser(
|
|
302
304
|
record[primaryKey],
|
|
@@ -74,6 +74,7 @@ describe('update2 tests', () => {
|
|
|
74
74
|
|
|
75
75
|
await storage.dropAllData()
|
|
76
76
|
await storage.migrate('test setup', '1'.repeat(64))
|
|
77
|
+
await storage.makeAvailable()
|
|
77
78
|
const setup = await _tu.createTestSetup1(storage)
|
|
78
79
|
|
|
79
80
|
setups.push({ setup, storage })
|
|
@@ -540,7 +541,8 @@ describe('update2 tests', () => {
|
|
|
540
541
|
userId: record.userId,
|
|
541
542
|
identityKey: `mockUpdatedIdentityKey-${record[primaryKey]}`,
|
|
542
543
|
created_at: new Date('2024-12-30T23:00:00Z'),
|
|
543
|
-
updated_at: new Date('2024-12-30T23:05:00Z')
|
|
544
|
+
updated_at: new Date('2024-12-30T23:05:00Z'),
|
|
545
|
+
activeStorage: storage.getSettings().storageIdentityKey
|
|
544
546
|
}
|
|
545
547
|
const updateResult = await storage.updateUser(
|
|
546
548
|
record[primaryKey],
|
|
@@ -697,7 +699,8 @@ describe('update2 tests', () => {
|
|
|
697
699
|
userId: 3,
|
|
698
700
|
identityKey: '',
|
|
699
701
|
created_at: new Date(),
|
|
700
|
-
updated_at: new Date()
|
|
702
|
+
updated_at: new Date(),
|
|
703
|
+
activeStorage: storage.getSettings().storageIdentityKey
|
|
701
704
|
}
|
|
702
705
|
try {
|
|
703
706
|
const r = await storage.insertUser(initialRecord)
|
|
@@ -238,7 +238,7 @@ export abstract class TestUtilsWalletStorage {
|
|
|
238
238
|
args.active,
|
|
239
239
|
args.backups
|
|
240
240
|
)
|
|
241
|
-
if (storage.
|
|
241
|
+
if (storage.canMakeAvailable()) await storage.makeAvailable()
|
|
242
242
|
const services = new Services(args.chain)
|
|
243
243
|
const monopts = Monitor.createDefaultWalletMonitorOptions(
|
|
244
244
|
chain,
|
|
@@ -316,7 +316,7 @@ export abstract class TestUtilsWalletStorage {
|
|
|
316
316
|
feeModel: { model: 'sat/kb', value: 1 }
|
|
317
317
|
})
|
|
318
318
|
if (args.dropAll) await activeStorage.dropAllData()
|
|
319
|
-
await activeStorage.migrate(args.databaseName,
|
|
319
|
+
await activeStorage.migrate(args.databaseName, randomBytesHex(33))
|
|
320
320
|
await activeStorage.makeAvailable()
|
|
321
321
|
const setup = await args.insertSetup(activeStorage, wo.identityKey)
|
|
322
322
|
await wo.storage.addWalletStorageProvider(activeStorage)
|
|
@@ -649,7 +649,7 @@ export abstract class TestUtilsWalletStorage {
|
|
|
649
649
|
feeModel: { model: 'sat/kb', value: 1 }
|
|
650
650
|
})
|
|
651
651
|
if (useReader) await activeStorage.dropAllData()
|
|
652
|
-
await activeStorage.migrate(databaseName,
|
|
652
|
+
await activeStorage.migrate(databaseName, randomBytesHex(33))
|
|
653
653
|
await activeStorage.makeAvailable()
|
|
654
654
|
const storage = new WalletStorageManager(identityKey, activeStorage)
|
|
655
655
|
await storage.makeAvailable()
|
|
@@ -773,7 +773,8 @@ export abstract class TestUtilsWalletStorage {
|
|
|
773
773
|
created_at: now,
|
|
774
774
|
updated_at: now,
|
|
775
775
|
userId: 0,
|
|
776
|
-
identityKey: identityKey || randomBytesHex(33)
|
|
776
|
+
identityKey: identityKey || randomBytesHex(33),
|
|
777
|
+
activeStorage: storage.getSettings().storageIdentityKey
|
|
777
778
|
}
|
|
778
779
|
await storage.insertUser(e)
|
|
779
780
|
return e
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
import { StorageKnex } from '../../../src/storage/StorageKnex'
|
|
10
10
|
import { _tu, TestWalletNoSetup } from '../../utils/TestUtilsWalletStorage'
|
|
11
11
|
|
|
12
|
-
describe('Wallet sync tests', () => {
|
|
12
|
+
describe.skip('Wallet sync tests', () => {
|
|
13
13
|
jest.setTimeout(99999999)
|
|
14
14
|
|
|
15
15
|
const env = _tu.getEnv('test')
|
|
@@ -212,8 +212,6 @@ async function setActiveTwice(
|
|
|
212
212
|
})
|
|
213
213
|
).rejects.toThrow('Result must exist and be unique.')
|
|
214
214
|
if (backupWallet) {
|
|
215
|
-
expect(backupWallet?.storage.stores.length === 1)
|
|
216
|
-
expect(backupWallet?.storage.stores[0] === backup)
|
|
217
215
|
await expect(
|
|
218
216
|
backupWallet.relinquishOutput({
|
|
219
217
|
basket: 'xyzzy',
|
|
@@ -1,121 +0,0 @@
|
|
|
1
|
-
import { sdk, TableCertificate, TableCertificateField, TableCertificateX, TableCommission, TableOutput, TableOutputBasket, TableOutputTag, TableOutputTagMap, TableProvenTx, TableProvenTxReq, TableSettings, TableSyncState, TableTransaction, TableTxLabel, TableTxLabelMap, TableUser } from '../index.client';
|
|
2
|
-
/**
|
|
3
|
-
* This is the minimal interface required for a WalletStorageProvider to export data to another provider.
|
|
4
|
-
*/
|
|
5
|
-
export interface StorageSyncReader {
|
|
6
|
-
isAvailable(): boolean;
|
|
7
|
-
makeAvailable(): Promise<TableSettings>;
|
|
8
|
-
destroy(): Promise<void>;
|
|
9
|
-
getSettings(): TableSettings;
|
|
10
|
-
findUserByIdentityKey(key: string): Promise<TableUser | undefined>;
|
|
11
|
-
findSyncStates(args: sdk.FindSyncStatesArgs): Promise<TableSyncState[]>;
|
|
12
|
-
findCertificateFields(args: sdk.FindCertificateFieldsArgs): Promise<TableCertificateField[]>;
|
|
13
|
-
findCertificates(args: sdk.FindCertificatesArgs): Promise<TableCertificateX[]>;
|
|
14
|
-
findCommissions(args: sdk.FindCommissionsArgs): Promise<TableCommission[]>;
|
|
15
|
-
findOutputBaskets(args: sdk.FindOutputBasketsArgs): Promise<TableOutputBasket[]>;
|
|
16
|
-
findOutputs(args: sdk.FindOutputsArgs): Promise<TableOutput[]>;
|
|
17
|
-
findOutputTags(args: sdk.FindOutputTagsArgs): Promise<TableOutputTag[]>;
|
|
18
|
-
findTransactions(args: sdk.FindTransactionsArgs): Promise<TableTransaction[]>;
|
|
19
|
-
findTxLabels(args: sdk.FindTxLabelsArgs): Promise<TableTxLabel[]>;
|
|
20
|
-
getProvenTxsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableProvenTx[]>;
|
|
21
|
-
getProvenTxReqsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableProvenTxReq[]>;
|
|
22
|
-
getTxLabelMapsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableTxLabelMap[]>;
|
|
23
|
-
getOutputTagMapsForUser(args: sdk.FindForUserSincePagedArgs): Promise<TableOutputTagMap[]>;
|
|
24
|
-
getSyncChunk(args: RequestSyncChunkArgs): Promise<SyncChunk>;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* success: Last sync of this user from this storage was successful.
|
|
28
|
-
*
|
|
29
|
-
* error: Last sync protocol operation for this user to this storage threw and error.
|
|
30
|
-
*
|
|
31
|
-
* identified: Configured sync storage has been identified but not sync'ed.
|
|
32
|
-
*
|
|
33
|
-
* unknown: Sync protocol state is unknown.
|
|
34
|
-
*/
|
|
35
|
-
export type SyncStatus = 'success' | 'error' | 'identified' | 'updated' | 'unknown';
|
|
36
|
-
export type SyncProtocolVersion = '0.1.0';
|
|
37
|
-
export interface RequestSyncChunkArgs {
|
|
38
|
-
/**
|
|
39
|
-
* The storageIdentityKey of the storage supplying the update SyncChunk data.
|
|
40
|
-
*/
|
|
41
|
-
fromStorageIdentityKey: string;
|
|
42
|
-
/**
|
|
43
|
-
* The storageIdentityKey of the storage consuming the update SyncChunk data.
|
|
44
|
-
*/
|
|
45
|
-
toStorageIdentityKey: string;
|
|
46
|
-
/**
|
|
47
|
-
* The identity of whose data is being requested
|
|
48
|
-
*/
|
|
49
|
-
identityKey: string;
|
|
50
|
-
/**
|
|
51
|
-
* The max updated_at time received from the storage service receiving the request.
|
|
52
|
-
* Will be undefiend if this is the first request or if no data was previously sync'ed.
|
|
53
|
-
*
|
|
54
|
-
* `since` must include items if 'updated_at' is greater or equal. Thus, when not undefined, a sync request should always return at least one item already seen.
|
|
55
|
-
*/
|
|
56
|
-
since?: Date;
|
|
57
|
-
/**
|
|
58
|
-
* A rough limit on how large the response should be.
|
|
59
|
-
* The item that exceeds the limit is included and ends adding more items.
|
|
60
|
-
*/
|
|
61
|
-
maxRoughSize: number;
|
|
62
|
-
/**
|
|
63
|
-
* The maximum number of items (records) to be returned.
|
|
64
|
-
*/
|
|
65
|
-
maxItems: number;
|
|
66
|
-
/**
|
|
67
|
-
* For each entity in dependency order, the offset at which to start returning items
|
|
68
|
-
* from `since`.
|
|
69
|
-
*
|
|
70
|
-
* The entity order is:
|
|
71
|
-
* 0 ProvenTxs
|
|
72
|
-
* 1 ProvenTxReqs
|
|
73
|
-
* 2 OutputBaskets
|
|
74
|
-
* 3 TxLabels
|
|
75
|
-
* 4 OutputTags
|
|
76
|
-
* 5 Transactions
|
|
77
|
-
* 6 TxLabelMaps
|
|
78
|
-
* 7 Commissions
|
|
79
|
-
* 8 Outputs
|
|
80
|
-
* 9 OutputTagMaps
|
|
81
|
-
* 10 Certificates
|
|
82
|
-
* 11 CertificateFields
|
|
83
|
-
*/
|
|
84
|
-
offsets: {
|
|
85
|
-
name: string;
|
|
86
|
-
offset: number;
|
|
87
|
-
}[];
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Result received from remote `WalletStorage` in response to a `RequestSyncChunkArgs` request.
|
|
91
|
-
*
|
|
92
|
-
* Each property is undefined if there was no attempt to update it. Typically this is caused by size and count limits on this result.
|
|
93
|
-
*
|
|
94
|
-
* If all properties are empty arrays the sync process has received all available new and updated items.
|
|
95
|
-
*/
|
|
96
|
-
export interface SyncChunk {
|
|
97
|
-
fromStorageIdentityKey: string;
|
|
98
|
-
toStorageIdentityKey: string;
|
|
99
|
-
userIdentityKey: string;
|
|
100
|
-
user?: TableUser;
|
|
101
|
-
provenTxs?: TableProvenTx[];
|
|
102
|
-
provenTxReqs?: TableProvenTxReq[];
|
|
103
|
-
outputBaskets?: TableOutputBasket[];
|
|
104
|
-
txLabels?: TableTxLabel[];
|
|
105
|
-
outputTags?: TableOutputTag[];
|
|
106
|
-
transactions?: TableTransaction[];
|
|
107
|
-
txLabelMaps?: TableTxLabelMap[];
|
|
108
|
-
commissions?: TableCommission[];
|
|
109
|
-
outputs?: TableOutput[];
|
|
110
|
-
outputTagMaps?: TableOutputTagMap[];
|
|
111
|
-
certificates?: TableCertificate[];
|
|
112
|
-
certificateFields?: TableCertificateField[];
|
|
113
|
-
}
|
|
114
|
-
export interface ProcessSyncChunkResult {
|
|
115
|
-
done: boolean;
|
|
116
|
-
maxUpdated_at: Date | undefined;
|
|
117
|
-
updates: number;
|
|
118
|
-
inserts: number;
|
|
119
|
-
error?: sdk.WalletError;
|
|
120
|
-
}
|
|
121
|
-
//# sourceMappingURL=StorageSyncReader.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StorageSyncReader.d.ts","sourceRoot":"","sources":["../../../src/sdk/StorageSyncReader.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StorageSyncReader.js","sourceRoot":"","sources":["../../../src/sdk/StorageSyncReader.ts"],"names":[],"mappings":""}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { sdk, TableCertificate, TableCertificateField, TableCommission, TableOutput, TableOutputBasket, TableOutputTag, TableOutputTagMap, TableProvenTx, TableProvenTxReq, TableProvenTxReqDynamics, TableSyncState, TableTransaction, TableTxLabel, TableTxLabelMap, TableUser } from '../index.client';
|
|
2
|
-
/**
|
|
3
|
-
* This is the minimal interface required for a WalletStorageProvider to import and export data to another provider.
|
|
4
|
-
*/
|
|
5
|
-
export interface StorageSyncReaderWriter extends sdk.StorageSyncReader {
|
|
6
|
-
getProvenOrRawTx(txid: string, trx?: sdk.TrxToken): Promise<sdk.ProvenOrRawTx>;
|
|
7
|
-
purgeData(params: sdk.PurgeParams, trx?: sdk.TrxToken): Promise<sdk.PurgeResults>;
|
|
8
|
-
transaction<T>(scope: (trx: sdk.TrxToken) => Promise<T>, trx?: sdk.TrxToken): Promise<T>;
|
|
9
|
-
findOutputTagMaps(args: sdk.FindOutputTagMapsArgs): Promise<TableOutputTagMap[]>;
|
|
10
|
-
findProvenTxReqs(args: sdk.FindProvenTxReqsArgs): Promise<TableProvenTxReq[]>;
|
|
11
|
-
findProvenTxs(args: sdk.FindProvenTxsArgs): Promise<TableProvenTx[]>;
|
|
12
|
-
findTxLabelMaps(args: sdk.FindTxLabelMapsArgs): Promise<TableTxLabelMap[]>;
|
|
13
|
-
countOutputTagMaps(args: sdk.FindOutputTagMapsArgs): Promise<number>;
|
|
14
|
-
countProvenTxReqs(args: sdk.FindProvenTxReqsArgs): Promise<number>;
|
|
15
|
-
countProvenTxs(args: sdk.FindProvenTxsArgs): Promise<number>;
|
|
16
|
-
countTxLabelMaps(args: sdk.FindTxLabelMapsArgs): Promise<number>;
|
|
17
|
-
insertProvenTx(tx: TableProvenTx, trx?: sdk.TrxToken): Promise<number>;
|
|
18
|
-
insertProvenTxReq(tx: TableProvenTxReq, trx?: sdk.TrxToken): Promise<number>;
|
|
19
|
-
insertUser(user: TableUser, trx?: sdk.TrxToken): Promise<number>;
|
|
20
|
-
insertCertificate(certificate: TableCertificate, trx?: sdk.TrxToken): Promise<number>;
|
|
21
|
-
insertCertificateField(certificateField: TableCertificateField, trx?: sdk.TrxToken): Promise<void>;
|
|
22
|
-
insertOutputBasket(basket: TableOutputBasket, trx?: sdk.TrxToken): Promise<number>;
|
|
23
|
-
insertTransaction(tx: TableTransaction, trx?: sdk.TrxToken): Promise<number>;
|
|
24
|
-
insertCommission(commission: TableCommission, trx?: sdk.TrxToken): Promise<number>;
|
|
25
|
-
insertOutput(output: TableOutput, trx?: sdk.TrxToken): Promise<number>;
|
|
26
|
-
insertOutputTag(tag: TableOutputTag, trx?: sdk.TrxToken): Promise<number>;
|
|
27
|
-
insertOutputTagMap(tagMap: TableOutputTagMap, trx?: sdk.TrxToken): Promise<void>;
|
|
28
|
-
insertTxLabel(label: TableTxLabel, trx?: sdk.TrxToken): Promise<number>;
|
|
29
|
-
insertTxLabelMap(labelMap: TableTxLabelMap, trx?: sdk.TrxToken): Promise<void>;
|
|
30
|
-
insertSyncState(syncState: TableSyncState, trx?: sdk.TrxToken): Promise<number>;
|
|
31
|
-
updateCertificateField(certificateId: number, fieldName: string, update: Partial<TableCertificateField>, trx?: sdk.TrxToken): Promise<number>;
|
|
32
|
-
updateCertificate(id: number, update: Partial<TableCertificate>, trx?: sdk.TrxToken): Promise<number>;
|
|
33
|
-
updateCommission(id: number, update: Partial<TableCommission>, trx?: sdk.TrxToken): Promise<number>;
|
|
34
|
-
updateOutputBasket(id: number, update: Partial<TableOutputBasket>, trx?: sdk.TrxToken): Promise<number>;
|
|
35
|
-
updateOutput(id: number, update: Partial<TableOutput>, trx?: sdk.TrxToken): Promise<number>;
|
|
36
|
-
updateOutputTagMap(outputId: number, tagId: number, update: Partial<TableOutputTagMap>, trx?: sdk.TrxToken): Promise<number>;
|
|
37
|
-
updateOutputTag(id: number, update: Partial<TableOutputTag>, trx?: sdk.TrxToken): Promise<number>;
|
|
38
|
-
updateProvenTxReq(id: number | number[], update: Partial<TableProvenTxReq>, trx?: sdk.TrxToken): Promise<number>;
|
|
39
|
-
updateProvenTxReqDynamics(id: number, update: Partial<TableProvenTxReqDynamics>, trx?: sdk.TrxToken): Promise<number>;
|
|
40
|
-
updateProvenTxReqWithNewProvenTx(args: sdk.UpdateProvenTxReqWithNewProvenTxArgs): Promise<sdk.UpdateProvenTxReqWithNewProvenTxResult>;
|
|
41
|
-
updateProvenTx(id: number, update: Partial<TableProvenTx>, trx?: sdk.TrxToken): Promise<number>;
|
|
42
|
-
updateSyncState(id: number, update: Partial<TableSyncState>, trx?: sdk.TrxToken): Promise<number>;
|
|
43
|
-
updateTransaction(id: number | number[], update: Partial<TableTransaction>, trx?: sdk.TrxToken): Promise<number>;
|
|
44
|
-
updateTransactionStatus(status: sdk.TransactionStatus, transactionId?: number, userId?: number, reference?: string, trx?: sdk.TrxToken): Promise<void>;
|
|
45
|
-
updateTransactionsStatus(transactionIds: number[], status: sdk.TransactionStatus): Promise<void>;
|
|
46
|
-
updateTxLabelMap(transactionId: number, txLabelId: number, update: Partial<TableTxLabelMap>, trx?: sdk.TrxToken): Promise<number>;
|
|
47
|
-
updateTxLabel(id: number, update: Partial<TableTxLabel>, trx?: sdk.TrxToken): Promise<number>;
|
|
48
|
-
updateUser(id: number, update: Partial<TableUser>, trx?: sdk.TrxToken): Promise<number>;
|
|
49
|
-
findCertificateById(id: number, trx?: sdk.TrxToken): Promise<TableCertificate | undefined>;
|
|
50
|
-
findCommissionById(id: number, trx?: sdk.TrxToken): Promise<TableCommission | undefined>;
|
|
51
|
-
findOutputById(id: number, trx?: sdk.TrxToken, noScript?: boolean): Promise<TableOutput | undefined>;
|
|
52
|
-
findOutputBasketById(id: number, trx?: sdk.TrxToken): Promise<TableOutputBasket | undefined>;
|
|
53
|
-
findProvenTxById(id: number, trx?: sdk.TrxToken | undefined): Promise<TableProvenTx | undefined>;
|
|
54
|
-
findProvenTxReqById(id: number, trx?: sdk.TrxToken | undefined): Promise<TableProvenTxReq | undefined>;
|
|
55
|
-
findSyncStateById(id: number, trx?: sdk.TrxToken): Promise<TableSyncState | undefined>;
|
|
56
|
-
findTransactionById(id: number, trx?: sdk.TrxToken, noRawTx?: boolean): Promise<TableTransaction | undefined>;
|
|
57
|
-
findTxLabelById(id: number, trx?: sdk.TrxToken): Promise<TableTxLabel | undefined>;
|
|
58
|
-
findOutputTagById(id: number, trx?: sdk.TrxToken): Promise<TableOutputTag | undefined>;
|
|
59
|
-
findUserById(id: number, trx?: sdk.TrxToken): Promise<TableUser | undefined>;
|
|
60
|
-
findOrInsertUser(identityKey: string, trx?: sdk.TrxToken): Promise<{
|
|
61
|
-
user: TableUser;
|
|
62
|
-
isNew: boolean;
|
|
63
|
-
}>;
|
|
64
|
-
findOrInsertTransaction(newTx: TableTransaction, trx?: sdk.TrxToken): Promise<{
|
|
65
|
-
tx: TableTransaction;
|
|
66
|
-
isNew: boolean;
|
|
67
|
-
}>;
|
|
68
|
-
findOrInsertOutputBasket(userId: number, name: string, trx?: sdk.TrxToken): Promise<TableOutputBasket>;
|
|
69
|
-
findOrInsertTxLabel(userId: number, label: string, trx?: sdk.TrxToken): Promise<TableTxLabel>;
|
|
70
|
-
findOrInsertTxLabelMap(transactionId: number, txLabelId: number, trx?: sdk.TrxToken): Promise<TableTxLabelMap>;
|
|
71
|
-
findOrInsertOutputTag(userId: number, tag: string, trx?: sdk.TrxToken): Promise<TableOutputTag>;
|
|
72
|
-
findOrInsertOutputTagMap(outputId: number, outputTagId: number, trx?: sdk.TrxToken): Promise<TableOutputTagMap>;
|
|
73
|
-
findOrInsertSyncStateAuth(auth: sdk.AuthId, storageIdentityKey: string, storageName: string): Promise<{
|
|
74
|
-
syncState: TableSyncState;
|
|
75
|
-
isNew: boolean;
|
|
76
|
-
}>;
|
|
77
|
-
findOrInsertProvenTxReq(newReq: TableProvenTxReq, trx?: sdk.TrxToken): Promise<{
|
|
78
|
-
req: TableProvenTxReq;
|
|
79
|
-
isNew: boolean;
|
|
80
|
-
}>;
|
|
81
|
-
findOrInsertProvenTx(newProven: TableProvenTx, trx?: sdk.TrxToken): Promise<{
|
|
82
|
-
proven: TableProvenTx;
|
|
83
|
-
isNew: boolean;
|
|
84
|
-
}>;
|
|
85
|
-
findUsers(args: sdk.FindUsersArgs): Promise<TableUser[]>;
|
|
86
|
-
tagOutput(partial: Partial<TableOutput>, tag: string, trx?: sdk.TrxToken): Promise<void>;
|
|
87
|
-
processSyncChunk(args: sdk.RequestSyncChunkArgs, chunk: sdk.SyncChunk): Promise<sdk.ProcessSyncChunkResult>;
|
|
88
|
-
}
|
|
89
|
-
//# sourceMappingURL=StorageSyncReaderWriter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StorageSyncReaderWriter.d.ts","sourceRoot":"","sources":["../../../src/sdk/StorageSyncReaderWriter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StorageSyncReaderWriter.js","sourceRoot":"","sources":["../../../src/sdk/StorageSyncReaderWriter.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backup.test.d.ts","sourceRoot":"","sources":["../../../test/examples/backup.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,QAAQ,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AAoBxD;;GAEG;AACH,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAG5C;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,QAAQ,EACb,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;GAEG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,WAAW,EAClB,QAAQ,CAAC,EAAE,MAAM,EACjB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,IAAI,CAAC,CAef"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backup.test.js","sourceRoot":"","sources":["../../../test/examples/backup.test.ts"],"names":[],"mappings":";;;;;AAuBA,wBAGC;AAKD,gDAUC;AAKD,wCAmBC;AAjED,mCAAwD;AACxD,oDAA2B;AAC3B,gBAAM,CAAC,MAAM,EAAE,CAAA;AAEf,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;IAEzB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;IACnB,IAAI,WAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QAAE,OAAM;IAC/B,MAAM,GAAG,GAAG,WAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAEhC,IAAI,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;QAC3C,MAAM,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAA;IACnE,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAA;IACpE,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF;;GAEG;AACI,KAAK,UAAU,MAAM;IAC1B,MAAM,GAAG,GAAG,WAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;IAChC,MAAM,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,WAAW,CAAC,CAAA;AAChD,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,kBAAkB,CACtC,GAAa,EACb,WAAmB;IAEnB,MAAM,KAAK,GAAG,MAAM,WAAK,CAAC,kBAAkB,CAAC;QAC3C,GAAG;QACH,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC;KACrC,CAAC,CAAA;IACF,MAAM,cAAc,CAAC,KAAK,CAAC,CAAA;IAC3B,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAA;AAC9B,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,cAAc,CAClC,KAAkB,EAClB,QAAiB,EACjB,YAAqB;IAErB,MAAM,GAAG,GAAG,WAAK,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACrC,QAAQ,KAAR,QAAQ,GAAK,UAAU,KAAK,CAAC,WAAW,SAAS,EAAA;IACjD,YAAY,KAAZ,YAAY,GAAK,GAAG,KAAK,CAAC,WAAW,SAAS,EAAA;IAE9C,MAAM,MAAM,GAAG,MAAM,WAAK,CAAC,iBAAiB,CAAC;QAC3C,GAAG;QACH,IAAI,EAAE,WAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC;QACtC,YAAY;QACZ,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE;KAC7C,CAAC,CAAA;IAEF,MAAM,KAAK,CAAC,OAAO,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;IAEpD,MAAM,KAAK,CAAC,OAAO,CAAC,aAAa,EAAE,CAAA;AACrC,CAAC"}
|