@centrifuge/sdk 0.0.0-alpha.37 → 0.0.0-alpha.40

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.
@@ -2,6 +2,7 @@ import { expect } from 'chai';
2
2
  import { combineLatest, defer, firstValueFrom, interval, map, of, Subject, take, tap, toArray } from 'rxjs';
3
3
  import sinon from 'sinon';
4
4
  import { createClient, custom } from 'viem';
5
+ import { ABI } from './abi/index.js';
5
6
  import { Centrifuge } from './Centrifuge.js';
6
7
  import { Pool } from './entities/Pool.js';
7
8
  import { context } from './tests/setup.js';
@@ -417,8 +418,19 @@ describe('Centrifuge', () => {
417
418
  ]);
418
419
  expect(result.type).to.equal('TransactionConfirmed');
419
420
  expect(result.title).to.equal('Test');
420
- const isNewManager = await pool.isPoolManager(newManager);
421
- const isNewManager2 = await pool.isBalanceSheetManager(chainId, newManager2);
421
+ const { hubRegistry, balanceSheet } = await context.centrifuge._protocolAddresses(chainId);
422
+ const isNewManager = await context.centrifuge.getClient(chainId).readContract({
423
+ address: hubRegistry,
424
+ abi: ABI.HubRegistry,
425
+ functionName: 'manager',
426
+ args: [poolId.raw, newManager],
427
+ });
428
+ const isNewManager2 = await context.centrifuge.getClient(chainId).readContract({
429
+ address: balanceSheet,
430
+ abi: ABI.BalanceSheet,
431
+ functionName: 'manager',
432
+ args: [poolId.raw, newManager2],
433
+ });
422
434
  expect(isNewManager).to.be.true;
423
435
  expect(isNewManager2).to.be.true;
424
436
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Centrifuge.test.js","sourceRoot":"","sources":["../src/Centrifuge.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Centrifuge.test.js","sourceRoot":"","sources":["../src/Centrifuge.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAC7B,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAC3G,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAEhD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAElD,MAAM,OAAO,GAAG,QAAQ,CAAA;AACxB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAChC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAClC,MAAM,WAAW,GAAG,4CAA4C,CAAA;AAEhE,MAAM,SAAS,GAAG,4CAA4C,CAAA;AAE9D,MAAM,YAAY,GAAQ,YAAY,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1F,yBAAyB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;CAC5C,CAAC,CAAC,CAAA;AAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,IAAI,KAA4B,CAAA;IAEhC,UAAU,CAAC,GAAG,EAAE;QACd,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1D,CAAC,CAAC,CAAA;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,CAAC,OAAO,EAAE,CAAA;QACf,KAAK,CAAC,OAAO,EAAE,CAAA;IACjB,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;QAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;QACpD,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAA;QACxC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAA;IACpC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,oBAAoB,GAAG;YAC3B,MAAM;YACN,UAAU;YACV,YAAY;YACZ,SAAS;YACT,cAAc;YACd,kBAAkB;YAClB,mBAAmB;YACnB,aAAa;YACb,YAAY;YACZ,UAAU;YACV,mBAAmB;YACnB,KAAK;YACL,mBAAmB;YACnB,mBAAmB;YACnB,cAAc;YACd,cAAc;YACd,gBAAgB;YAChB,4BAA4B;YAC5B,sBAAsB;YACtB,cAAc;YACd,qBAAqB;YACrB,aAAa;YACb,mBAAmB;YACnB,yBAAyB;YACzB,OAAO;YACP,aAAa;YACb,cAAc;SACuB,CAAA;QAEvC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;QAEnE,KAAK,MAAM,GAAG,IAAI,oBAAoB,EAAE,CAAC;YACvC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,gBAAgB,GAAG,2BAA2B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAA;QACjG,CAAC;IACH,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,2BAA2B,EAAE,KAAK,IAAI,EAAE;YACzC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAClD,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAA;QACvB,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;YACvC,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;YACtE,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACrC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACxC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;YAC1C,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC1C,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAA;YACxE,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAA;QAC5C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,qBAAqB,EAAE,KAAK,IAAI,EAAE;YACnC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;YACvD,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAA;YAChC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;YAC1C,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC9C,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;YACzC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;QAC7C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;YAC/C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YAC3E,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC9B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,WAAW,CAAC,UAAU,CAAC,CAAA;YACjG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAE7B,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,WAAW,CAAC,UAAU,CAAC,CAAA;YACpG,MAAM,CAAC,OAAO,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC7C,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAC9C,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,iBAAiB,EACxE,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,EACzB,OAAO,EACP,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EACpB,OAAO,CACR,CAAA;YACD,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;YACpC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACnC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;QACrB,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;YACtE,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC3B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACpD,MAAM,OAAO,GAAG,EAAE,CAAA;YAClB,MAAM,OAAO,GAAG,EAAE,CAAA;YAClB,IAAI,sBAAsB,GAAG,KAAK,CAAA;YAClC,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;YACpE,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CACrD,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC,CAAC,CAC7D,CAAA;YACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAChC,MAAM,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAChD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,OAAO,GAAG,EAAE,CAAA;YAClB,MAAM,OAAO,GAAG,EAAE,CAAA;YAClB,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;YACvE,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;YACvE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAChC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAClC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,OAAO,GAAG,EAAE,CAAA;YAClB,MAAM,OAAO,GAAG,EAAE,CAAA;YAClB,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;YACjE,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAA;YACjE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAChC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAClC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,IAAI,eAAe,GAAG,CAAC,CAAA;YACvB,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAC7D,KAAK,CAAC,GAAG,EAAE;gBACT,eAAe,EAAE,CAAA;gBACjB,OAAO,IAAI,CAAC,CAAC,CAAC,CAAA;YAChB,CAAC,CAAC,CACH,CAAA;YACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAA;YAC3C,MAAM,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YACnC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAChE,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;YAC/E,MAAM,MAAM,GAAG,MAAM,KAAK,CAAA;YAC1B,MAAM,MAAM,GAAG,MAAM,KAAK,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+FAA+F,EAAE,KAAK,IAAI,EAAE;YAC7G,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;YAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAA;YACxE,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YACrC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YACrC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACd,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAClB,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YACrC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,mEAAmE;QACnE,EAAE,CAAC,IAAI,CAAC,+FAA+F,EAAE,KAAK,IAAI,EAAE;YAClH,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,CAAA;YAClH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACjB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;YACrF,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CACtC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EACf,GAAG,EAAE,CACH,KAAK,CAAC,GAAG,EAAE;gBACT,KAAK,EAAE,CAAA;gBACP,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;YACpB,CAAC,CAAC,EACJ,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAA;YACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAA;YAC3C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,qFAAqF,EAAE,KAAK,IAAI,EAAE;YACnG,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;YAC3E,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CACrD,KAAK,CAAC,GAAG,EAAE;gBACT,KAAK,EAAE,CAAA;gBACP,OAAO,IAAI,CAAC,KAAK,CAAC,CAAA;YACpB,CAAC,CAAC,CACH,CAAA;YACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,MAAM,CAAC,CAAA;YAC3C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC7E,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE;gBAC1F,mBAAmB,EAAE,QAAQ;aAC9B,CAAC,CAAA;YACF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;YACzB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,mEAAmE;QACnE,EAAE,CAAC,IAAI,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAChF,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,EAAE,cAAc,EAAE,CAAC,EAAE,CAAC,CAAA;YAClH,IAAI,SAAS,GAAkB,IAAI,CAAA;YACnC,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAA;YACnE,MAAM,MAAM,CAAA;YACZ,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAClB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC7B,YAAY,CAAC,WAAW,EAAE,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,6BAA6B,EAAE,KAAK,IAAI,EAAE;YAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YACrG,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YAC3G,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,CAClD,aAAa,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CACjE,CAAA;YACD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACd,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAC1B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,mEAAmE;QACnE,EAAE,CAAC,IAAI,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAClF,IAAI,CAAC,GAAG,CAAC,CAAA;YACT,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAA;YACjG,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAA;YAClG,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACnB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAC7B,CAAC,CAAC,CAAA;QAEF,mEAAmE;QACnE,EAAE,CAAC,IAAI,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;YAC3F,IAAI,CAAC,GAAG,CAAC,CAAA;YACT,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,MAAM,CACtC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EACf,GAAG,EAAE,CACH,KAAK,CAAC,KAAK,SAAS,CAAC;gBACnB,MAAM,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;gBAC5B,MAAM,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAClC,CAAC,CAAC,EACJ,EAAE,cAAc,EAAE,CAAC,EAAE,CACtB,CAAA;YACD,IAAI,SAAS,GAAG,EAAE,CAAA;YAClB,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAA;YACpE,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACjB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAA;YAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC9B,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAC9B,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YACjC,aAAa,CAAC,WAAW,EAAE,CAAA;QAC7B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,oBAAoB,EAAE,KAAK,IAAI,EAAE;YAClC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YAC/C,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAA;YAC7D,MAAM,IAAI,GAAG,4CAA4C,CAAA;YACzD,MAAM,IAAI,GAAG,4CAA4C,CAAA;YACzD,MAAM,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;YAC7C,+EAA+E;YAC/E,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAChD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC;gBAC1B,WAAW,EAAE,SAAS;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;YAE9C,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC;gBACvC,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,CAAA;YAC/D,CAAC,EAAE,OAAO,CAAC,CAAA;YACX,IAAI,KAAK,CAAA;YACT,IAAI,CAAC;gBACH,MAAM,EAAE,CAAA;YACV,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,KAAK,GAAG,CAAC,CAAA;YACX,CAAC;YACD,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;QACpC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;YAC3F,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC;gBAC1B,WAAW,EAAE,SAAS;aACvB,CAAC,CAAA;YACF,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAA;YAC3C,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;YACxC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;YAEtB,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC;gBACvC,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,CAAA;YAC/D,CAAC,EAAE,OAAO,CAAC,CAAA;YAEX,MAAM,QAAQ,GAAQ,MAAM,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;YACvE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;gBACzB,IAAI,EAAE,gBAAgB;gBACtB,OAAO;aACR,CAAC,CAAA;YACF,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAA;YAC3E,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC3E,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,gFAAgF,EAAE,KAAK,IAAI,EAAE;YAC9F,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC;gBAC1B,WAAW,EAAE,SAAS;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAA;YAE9B,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC;gBACvC,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,CAAA;YAC/D,CAAC,EAAE,OAAO,CAAC,CAAA;YAEX,MAAM,MAAM,GAAQ,MAAM,cAAc,CAAC,EAAE,CAAC,CAAA;YAC5C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAA;YAClD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QACvC,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC;gBAC1B,WAAW,EAAE,SAAS;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAA;YAC9B,MAAM,YAAY,GAAQ,YAAY,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBAC1F,yBAAyB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;aAC5C,CAAC,CAAC,CAAA;YACH,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAA;YAChG,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;gBACtB,EAAE,EAAE,EAAG,QAAQ,CAAC,CAAC,CAAS,CAAC,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,EAAE;gBAC1E,EAAE,EAAE,EAAG,QAAQ,CAAC,CAAC,CAAS,CAAC,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;gBACvF;oBACE,EAAE,EAAG,QAAQ,CAAC,CAAC,CAAS,CAAC,EAAE;oBAC3B,IAAI,EAAE,sBAAsB;oBAC5B,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,EAAE;iBACZ;aACF,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;YACzE,MAAM,IAAI,GAAG,IAAI,UAAU,CAAC;gBAC1B,WAAW,EAAE,SAAS;aACvB,CAAC,CAAA;YACF,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAA;YAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC;gBACvC,KAAK,CAAC,CAAC,aAAa,CAAC,aAAa,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,CAAA;gBACtD,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,CAAA;YAC/D,CAAC,EAAE,OAAO,CAAC,CAAA;YACX,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;YACzD,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;gBACtB;oBACE,EAAE,EAAG,QAAQ,CAAC,CAAC,CAAS,CAAC,EAAE;oBAC3B,IAAI,EAAE,gBAAgB;oBACtB,KAAK,EAAE,aAAa;iBACrB;gBACD;oBACE,EAAE,EAAG,QAAQ,CAAC,CAAC,CAAS,CAAC,EAAE;oBAC3B,IAAI,EAAE,eAAe;oBACrB,MAAM,EAAE,KAAK;oBACb,KAAK,EAAE,aAAa;iBACrB;gBACD,EAAE,EAAE,EAAG,QAAQ,CAAC,CAAC,CAAS,CAAC,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,EAAE;gBAC1E,EAAE,EAAE,EAAG,QAAQ,CAAC,CAAC,CAAS,CAAC,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;gBACvF;oBACE,EAAE,EAAG,QAAQ,CAAC,CAAC,CAAS,CAAC,EAAE;oBAC3B,IAAI,EAAE,sBAAsB;oBAC5B,KAAK,EAAE,MAAM;oBACb,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,EAAE;iBACZ;aACF,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,OAAO,EAAE,GAAG,EAAE;QACrB,EAAE,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE;YACtC,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;YAC9B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;YAEtD,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEzD,MAAM,UAAU,GAAG,aAAa,EAAE,CAAA;YAClC,MAAM,WAAW,GAAG,aAAa,EAAE,CAAA;YACnC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,mBAAmB,CAAC,MAAM,EAAE;gBAClE,IAAI,CAAC,kBAAkB,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACnE,IAAI,CAAC,0BAA0B,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;aACtF,CAAC,CAAA;YACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;YACpD,MAAM,CAAE,MAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YAE9C,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;YAE1F,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC;gBAC5E,OAAO,EAAE,WAAW;gBACpB,GAAG,EAAE,GAAG,CAAC,WAAW;gBACpB,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC;aAC/B,CAAC,CAAA;YAEF,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC;gBAC7E,OAAO,EAAE,YAAY;gBACrB,GAAG,EAAE,GAAG,CAAC,YAAY;gBACrB,YAAY,EAAE,SAAS;gBACvB,IAAI,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC;aAChC,CAAC,CAAA;YACF,MAAM,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAA;YAC/B,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAA;QAClC,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE;QAC5B,EAAE,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE;YACxC,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC;gBAChC,WAAW,EAAE,SAAS;gBACtB,OAAO,EAAE;oBACP,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM;iBACtC;aACF,CAAC,CAAA;YAEF,MAAM,YAAY,GAAG,4CAA4C,CAAA;YACjE,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,WAAW,CAAA;YACrD,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAEjD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,YAAY,CAAC,CAAA;YAC7E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;YACpC,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;YACzE,MAAM,iBAAiB,GAAG,IAAI,UAAU,CAAC;gBACvC,WAAW,EAAE,SAAS;gBACtB,OAAO,EAAE,KAAK,IAAI,EAAE;oBAClB,OAAO,KAAK,CAAA;gBACd,CAAC;gBACD,OAAO,EAAE;oBACP,QAAQ,EAAE,OAAO,CAAC,YAAY,CAAC,MAAM;iBACtC;aACF,CAAC,CAAA;YAEF,MAAM,OAAO,CAAC,YAAY,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,IAAI,GAAG,CAAC,CAAA;YAE/D,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,QAAQ,CAAA;YAClD,iBAAiB,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;YAExD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAC/C;gBACE,UAAU,EAAE,eAAe;gBAC3B,aAAa,EAAE,eAAe;gBAC9B,QAAQ,EAAE,WAAW;gBACrB,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;gBAC/B,YAAY,EAAE,QAAQ;gBACtB,aAAa,EAAE,WAAW;gBAC1B,QAAQ,EAAE,MAAM;gBAChB,UAAU,EAAE,aAAa;gBACzB,aAAa,EAAE,UAAU;gBACzB,UAAU,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;gBACjC,sBAAsB,EAAE,kBAAkB;gBAC1C,iBAAiB,EAAE,kBAAkB;gBACrC,OAAO,EAAE,EAAE;gBACX,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,EAAE;gBACT,MAAM,EAAE,IAAI;gBACZ,gBAAgB,EAAE,IAAI;gBACtB,OAAO,EAAE,EAAE;gBACX,gBAAgB,EAAE,EAAE;gBACpB,WAAW,EAAE,EAAE;gBACf,MAAM,EAAE,KAAK;gBACb,oBAAoB,EAAE,SAAS;gBAC/B,YAAY,EAAE;oBACZ;wBACE,SAAS,EAAE,YAAY;wBACvB,UAAU,EAAE,KAAK;wBACjB,aAAa,EAAE,IAAI;wBACnB,aAAa,EAAE,CAAC;wBAChB,GAAG,EAAE,QAAQ;wBACb,eAAe,EAAE;4BACf,KAAK,EAAE,IAAI;4BACX,MAAM,EAAE,IAAI;4BACZ,IAAI,EAAE,IAAI;4BACV,IAAI,EAAE,IAAI;4BACV,OAAO,EAAE,IAAI;4BACb,SAAS,EAAE,IAAI;yBAChB;qBACF;iBACF;aACF,EACD,GAAG,EACH,OAAO,CACR,CAAA;YAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACtD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,SAAS,IAAI,CAAI,KAAQ,EAAE,CAAC,GAAG,EAAE;IAC/B,OAAO,IAAI,OAAO,CAAI,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;AACjE,CAAC;AAED,SAAS,YAAY,CAAC,EAAE,OAAO,GAAG,QAAQ,EAAE,QAAQ,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE;IACnE,OAAO;QACL,KAAK,CAAC,OAAO,CAAC,EAAE,MAAM,EAAO;YAC3B,QAAQ,MAAM,EAAE,CAAC;gBACf,KAAK,cAAc;oBACjB,OAAO,QAAQ,CAAA;gBACjB,KAAK,aAAa;oBAChB,OAAO,OAAO,CAAA;gBAChB,KAAK,4BAA4B;oBAC/B,OAAO,IAAI,CAAA;YACf,CAAC;YACD,MAAM,IAAI,KAAK,CAAC,kBAAkB,MAAM,EAAE,CAAC,CAAA;QAC7C,CAAC;KACF,CAAA;AACH,CAAC"}
@@ -21,24 +21,44 @@ describe('BalanceSheet', () => {
21
21
  const shareClass = new ShareClass(centrifuge, pool, scId.raw);
22
22
  balanceSheet = new BalanceSheet(centrifuge, poolNetwork, shareClass);
23
23
  });
24
- it('gets the balances', async () => {
25
- const balances = await balanceSheet.balances();
26
- expect(balances).to.have.length.greaterThan(0);
27
- expect(balances[0].amount).to.be.instanceOf(Balance);
24
+ describe('balances', () => {
25
+ it('gets the balances', async () => {
26
+ const balances = await balanceSheet.balances();
27
+ expect(balances).to.have.length.greaterThan(0);
28
+ expect(balances[0].amount).to.be.instanceOf(Balance);
29
+ });
28
30
  });
29
- it('withdraws and deposits funds', async () => {
30
- context.tenderlyFork.impersonateAddress = poolManager;
31
- context.centrifuge.setSigner(context.tenderlyFork.signer);
32
- const amount = Balance.fromFloat(1, 18);
33
- await balanceSheet.shareClass.setMaxAssetPriceAge(assetId, 9999999999999);
34
- await balanceSheet.shareClass.notifyAssetPrice(assetId);
35
- await balanceSheet.pool.updateBalanceSheetManagers([{ chainId, address: poolManager, canManage: true }]);
36
- await balanceSheet.withdraw(assetId, poolManager, amount);
37
- const result = await firstValueFrom(balanceSheet.deposit(assetId, amount).pipe(toArray()));
38
- expect(result[2].type).to.equal('TransactionConfirmed');
39
- expect(result[2].title).to.equal('Approve');
40
- expect(result[5].type).to.equal('TransactionConfirmed');
41
- expect(result[5].title).to.equal('Deposit');
31
+ describe('deposit and withdraw', () => {
32
+ it('throws an error during deposit if signing address is not a BalanceSheetManager', async () => {
33
+ try {
34
+ await balanceSheet.deposit(assetId, Balance.fromFloat(1, 6));
35
+ }
36
+ catch (error) {
37
+ expect(error.message).to.include('Signing address is not a BalanceSheetManager');
38
+ }
39
+ });
40
+ it('throws an error during withdraw if signing address is not a BalanceSheetManager', async () => {
41
+ try {
42
+ await balanceSheet.withdraw(assetId, '0x', Balance.fromFloat(1, 6));
43
+ }
44
+ catch (error) {
45
+ expect(error.message).to.include('Signing address is not a BalanceSheetManager');
46
+ }
47
+ });
48
+ it('withdraws and deposits funds', async () => {
49
+ context.tenderlyFork.impersonateAddress = poolManager;
50
+ context.centrifuge.setSigner(context.tenderlyFork.signer);
51
+ const amount = Balance.fromFloat(1, 18);
52
+ await balanceSheet.shareClass.setMaxAssetPriceAge(assetId, 9999999999999);
53
+ await balanceSheet.shareClass.notifyAssetPrice(assetId);
54
+ await balanceSheet.pool.updateBalanceSheetManagers([{ chainId, address: poolManager, canManage: true }]);
55
+ await balanceSheet.withdraw(assetId, poolManager, amount);
56
+ const result = await firstValueFrom(balanceSheet.deposit(assetId, amount).pipe(toArray()));
57
+ expect(result[2].type).to.equal('TransactionConfirmed');
58
+ expect(result[2].title).to.equal('Approve');
59
+ expect(result[5].type).to.equal('TransactionConfirmed');
60
+ expect(result[5].title).to.equal('Deposit');
61
+ });
42
62
  });
43
63
  });
44
64
  //# sourceMappingURL=BalanceSheet.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BalanceSheet.test.js","sourceRoot":"","sources":["../../src/entities/BalanceSheet.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BalanceSheet.test.js","sourceRoot":"","sources":["../../src/entities/BalanceSheet.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { HexString } from '../types/index.js';
2
- import { PoolId, ShareClassId } from '../utils/types.js';
2
+ import { AssetId, PoolId, ShareClassId } from '../utils/types.js';
3
3
  import { Entity } from './Entity.js';
4
4
  export declare class Investor extends Entity {
5
5
  address: HexString;
@@ -7,7 +7,7 @@ export declare class Investor extends Entity {
7
7
  balance: import("../index.js").Balance;
8
8
  currency: import("../types/index.js").CurrencyDetails;
9
9
  }[]>;
10
- investment(poolId: PoolId, scId: ShareClassId, asset: HexString, chainId: number): import("../index.js").Query<{
10
+ investment(poolId: PoolId, scId: ShareClassId, asset: HexString | AssetId, chainId: number): import("../index.js").Query<{
11
11
  shareBalance: import("../index.js").Balance;
12
12
  investmentCurrencyBalance: import("../index.js").Balance;
13
13
  investmentCurrencyAllowance: import("../index.js").Balance;
@@ -1 +1 @@
1
- {"version":3,"file":"Investor.d.ts","sourceRoot":"","sources":["../../src/entities/Investor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,qBAAa,QAAS,SAAQ,MAAM;IAClC,OAAO,EAAE,SAAS,CAAA;IASlB,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM;;;;IAqD1B,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;IAShF,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM;CAS7C"}
1
+ {"version":3,"file":"Investor.d.ts","sourceRoot":"","sources":["../../src/entities/Investor.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,qBAAa,QAAS,SAAQ,MAAM;IAClC,OAAO,EAAE,SAAS,CAAA;IASlB,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM;;;;IAqD1B,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;IAS1F,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM;CAS7C"}
@@ -1 +1 @@
1
- {"version":3,"file":"Investor.js","sourceRoot":"","sources":["../../src/entities/Investor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Investor.js","sourceRoot":"","sources":["../../src/entities/Investor.ts"],"names":[],"mappings":"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"}
@@ -1,16 +1,74 @@
1
1
  import { expect } from 'chai';
2
- import { getAddress } from 'viem';
2
+ import { getAddress, parseAbi } from 'viem';
3
3
  import { context } from '../tests/setup.js';
4
+ import { AssetId, PoolId, ShareClassId } from '../utils/types.js';
5
+ import { Pool } from './Pool.js';
6
+ import { ShareClass } from './ShareClass.js';
7
+ import { doTransaction } from '../utils/transaction.js';
8
+ import { Balance } from '../utils/BigInt.js';
9
+ import { randomAddress } from '../tests/utils.js';
4
10
  const investor = '0x423420ae467df6e90291fd0252c0a8a637c1e03f';
11
+ const protocolAdmin = '0x423420Ae467df6e90291fd0252c0A8a637C1e03f';
12
+ const chainId = 11155111;
13
+ const centId = 1;
14
+ const poolId = PoolId.from(centId, 1);
15
+ const scId = ShareClassId.from(poolId, 1);
16
+ const assetId = AssetId.from(centId, 1);
17
+ const defaultAssetsAmount = Balance.fromFloat(100, 6);
5
18
  describe('Investor', () => {
6
- it('should fetch its portfolio', async () => {
7
- const account = await context.centrifuge.investor(investor);
8
- const portfolio = await account.portfolio();
9
- expect(portfolio).to.exist;
19
+ describe('portfolio', () => {
20
+ it('should fetch its portfolio', async () => {
21
+ const account = await context.centrifuge.investor(investor);
22
+ const portfolio = await account.portfolio();
23
+ expect(portfolio).to.exist;
24
+ });
25
+ it('should return its checksum address', async () => {
26
+ const account = await context.centrifuge.investor(investor);
27
+ expect(account.address).to.equal(getAddress(investor));
28
+ });
10
29
  });
11
- it('should return its checksum address', async () => {
12
- const account = await context.centrifuge.investor(investor);
13
- expect(account.address).to.equal(getAddress(investor));
30
+ describe('investment', () => {
31
+ let vault;
32
+ let sc;
33
+ before(async () => {
34
+ const { centrifuge } = context;
35
+ const pool = new Pool(centrifuge, poolId.raw, chainId);
36
+ sc = new ShareClass(centrifuge, pool, scId.raw);
37
+ vault = await pool.vault(chainId, sc.id, assetId);
38
+ });
39
+ it('should fetch an investment', async () => {
40
+ await mint(vault._asset, investor);
41
+ const account = await context.centrifuge.investor(investor);
42
+ const investment = await account.investment(poolId, sc.id, assetId, chainId);
43
+ expect(investment).to.not.be.undefined;
44
+ expect(investment.investmentCurrency.address).to.equal(vault._asset);
45
+ });
46
+ });
47
+ describe('isMember', () => {
48
+ it('should return true for a member', async () => {
49
+ const account = await context.centrifuge.investor(investor);
50
+ const isMember = await account.isMember(scId, chainId);
51
+ expect(isMember).to.be.true;
52
+ });
53
+ it('should return false for a non-member', async () => {
54
+ const account = await context.centrifuge.investor(randomAddress());
55
+ const isMember = await account.isMember(scId, chainId);
56
+ expect(isMember).to.be.false;
57
+ });
14
58
  });
15
59
  });
60
+ async function mint(asset, address) {
61
+ context.tenderlyFork.impersonateAddress = protocolAdmin;
62
+ context.centrifuge.setSigner(context.tenderlyFork.signer);
63
+ await context.centrifuge._transact(async function* (ctx) {
64
+ yield* doTransaction('Mint', ctx.publicClient, async () => {
65
+ return ctx.walletClient.writeContract({
66
+ address: asset,
67
+ abi: parseAbi(['function mint(address, uint256)']),
68
+ functionName: 'mint',
69
+ args: [address, defaultAssetsAmount.toBigInt()],
70
+ });
71
+ });
72
+ }, chainId);
73
+ }
16
74
  //# sourceMappingURL=Investor.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Investor.test.js","sourceRoot":"","sources":["../../src/entities/Investor.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAE3C,MAAM,QAAQ,GAAG,4CAA4C,CAAA;AAE7D,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;QAC1C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAC3D,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,CAAA;QAC3C,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAA;IAC5B,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;QAClD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAC3D,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;IACxD,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"Investor.test.js","sourceRoot":"","sources":["../../src/entities/Investor.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAC7B,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEjE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAA;AACvD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAA;AAEjD,MAAM,QAAQ,GAAG,4CAA4C,CAAA;AAC7D,MAAM,aAAa,GAAG,4CAA4C,CAAA;AAElE,MAAM,OAAO,GAAG,QAAQ,CAAA;AACxB,MAAM,MAAM,GAAG,CAAC,CAAA;AAEhB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AACrC,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AACzC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAEvC,MAAM,mBAAmB,GAAG,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;AAErD,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACxB,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;QACzB,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAC3D,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,CAAA;YAC3C,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAA;QAC5B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,oCAAoC,EAAE,KAAK,IAAI,EAAE;YAClD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAC3D,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,IAAI,KAAY,CAAA;QAChB,IAAI,EAAc,CAAA;QAElB,MAAM,CAAC,KAAK,IAAI,EAAE;YAChB,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAA;YAC9B,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;YACtD,EAAE,GAAG,IAAI,UAAU,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;YAC/C,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;QACnD,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,4BAA4B,EAAE,KAAK,IAAI,EAAE;YAC1C,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YAClC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAC3D,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YAE5E,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,SAAS,CAAA;YACtC,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QACtE,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;QACxB,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;YAC/C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;YAC3D,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YACtD,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAA;QAC7B,CAAC,CAAC,CAAA;QAEF,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACpD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAA;YAClE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;YACtD,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,CAAA;QAC9B,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEF,KAAK,UAAU,IAAI,CAAC,KAAa,EAAE,OAAe;IAChD,OAAO,CAAC,YAAY,CAAC,kBAAkB,GAAG,aAAa,CAAA;IACvD,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;IAEzD,MAAM,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,SAAS,CAAC,EAAE,GAAG;QACrD,KAAK,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,GAAG,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;YACxD,OAAO,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC;gBACpC,OAAO,EAAE,KAAY;gBACrB,GAAG,EAAE,QAAQ,CAAC,CAAC,iCAAiC,CAAC,CAAC;gBAClD,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,CAAC,OAAc,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC;aACvD,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,EAAE,OAAO,CAAC,CAAA;AACb,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import { HexString } from '../types/index.js';
2
+ import { PoolMetadataInput, ShareClassInput } from '../types/poolInput.js';
2
3
  import { PoolMetadata } from '../types/poolMetadata.js';
3
4
  import { AssetId, PoolId, ShareClassId } from '../utils/types.js';
4
5
  import { Entity } from './Entity.js';
5
6
  import { PoolNetwork } from './PoolNetwork.js';
6
7
  import { Reports } from './Reports/index.js';
7
8
  import { ShareClass } from './ShareClass.js';
8
- import { PoolMetadataInput, ShareClassInput } from '../types/poolInput.js';
9
9
  export declare class Pool extends Entity {
10
10
  chainId: number;
11
11
  id: PoolId;
@@ -81,6 +81,21 @@ export declare class Pool extends Entity {
81
81
  liability: number | null;
82
82
  };
83
83
  }[]>;
84
+ /**
85
+ * Get the managers on the Hub.
86
+ * These managers that can manage the pool, approve deposits, update prices, etc.
87
+ */
88
+ poolManagers(): import("../index.js").Query<{
89
+ address: `0x${string}`;
90
+ }[]>;
91
+ /**
92
+ * Get the managers on the Balance Sheet.
93
+ * These managers can transfer funds to and from the balance sheet.
94
+ */
95
+ balanceSheetManagers(): import("../index.js").Query<{
96
+ address: `0x${string}`;
97
+ chainId: number;
98
+ }[]>;
84
99
  /**
85
100
  * Check if an address is a manager of the pool.
86
101
  * @param address - The address to check
@@ -1 +1 @@
1
- {"version":3,"file":"Pool.d.ts","sourceRoot":"","sources":["../../src/entities/Pool.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAMvD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC1E,qBAAa,IAAK,SAAQ,MAAM;IAOrB,OAAO,EAAE,MAAM;IANxB,EAAE,EAAE,MAAM,CAAA;IAYV,IAAI,OAAO,YAEV;IAED;;;OAGG;IACH,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkBP,QAAQ;IAuCR,YAAY;IAMZ,UAAU,CAAC,IAAI,EAAE,YAAY;IAY7B,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;IAWnB;;;OAGG;IACH,aAAa,CAAC,OAAO,EAAE,SAAS;IAehC;;;;OAIG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;IAezD;;OAEG;IACH,QAAQ;IAUR;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM;IAYvB;;OAEG;IACH,cAAc;IAqBd,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO;IAIrE;;OAEG;IACH,QAAQ;;;;;IAmCR,cAAc,CAAC,QAAQ,EAAE,YAAY;IAiBrC,MAAM,CACJ,aAAa,EAAE,OAAO,CAAC,iBAAiB,CAAC,EACzC,mBAAmB,EAAE,CAAC;QAAE,EAAE,EAAE,YAAY,CAAA;KAAE,GAAG,eAAe,CAAC,EAAE,EAC/D,iBAAiB,GAAE,eAAe,EAAO;IA6Q3C;;OAEG;IACH,kBAAkB,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,SAAS,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,EAAE;IA2BxE;;OAEG;IACH,0BAA0B,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,SAAS,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,EAAE;IA6BjG,cAAc,CAAC,QAAQ,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,EAAE;CAqEzE"}
1
+ {"version":3,"file":"Pool.d.ts","sourceRoot":"","sources":["../../src/entities/Pool.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAMvD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,qBAAa,IAAK,SAAQ,MAAM;IAOrB,OAAO,EAAE,MAAM;IANxB,EAAE,EAAE,MAAM,CAAA;IAYV,IAAI,OAAO,YAEV;IAED;;;OAGG;IACH,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAkBP,QAAQ;IAuCR,YAAY;IAMZ,UAAU,CAAC,IAAI,EAAE,YAAY;IAY7B,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;IAWnB;;;OAGG;IACH,YAAY;;;IAgBZ;;;OAGG;IACH,oBAAoB;;;;IAiBpB;;;OAGG;IACH,aAAa,CAAC,OAAO,EAAE,SAAS;IAWhC;;;;OAIG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;IAWzD;;OAEG;IACH,QAAQ;IAUR;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,MAAM;IAYvB;;OAEG;IACH,cAAc;IAqBd,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO;IAIrE;;OAEG;IACH,QAAQ;;;;;IAmCR,cAAc,CAAC,QAAQ,EAAE,YAAY;IAiBrC,MAAM,CACJ,aAAa,EAAE,OAAO,CAAC,iBAAiB,CAAC,EACzC,mBAAmB,EAAE,CAAC;QAAE,EAAE,EAAE,YAAY,CAAA;KAAE,GAAG,eAAe,CAAC,EAAE,EAC/D,iBAAiB,GAAE,eAAe,EAAO;IA6Q3C;;OAEG;IACH,kBAAkB,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,SAAS,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,EAAE;IAmDxE;;OAEG;IACH,0BAA0B,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,SAAS,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,EAAE;IA6BjG,cAAc,CAAC,QAAQ,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,OAAO,CAAA;KAAE,EAAE;CAsHzE"}
@@ -84,19 +84,50 @@ export class Pool extends Entity {
84
84
  }));
85
85
  });
86
86
  }
87
+ /**
88
+ * Get the managers on the Hub.
89
+ * These managers that can manage the pool, approve deposits, update prices, etc.
90
+ */
91
+ poolManagers() {
92
+ return this._query(null, () => {
93
+ return this._managers().pipe(map((managers) => {
94
+ return managers
95
+ .filter((manager) => manager.isHubManager)
96
+ .map((manager) => {
97
+ return {
98
+ address: manager.address,
99
+ };
100
+ });
101
+ }));
102
+ });
103
+ }
104
+ /**
105
+ * Get the managers on the Balance Sheet.
106
+ * These managers can transfer funds to and from the balance sheet.
107
+ */
108
+ balanceSheetManagers() {
109
+ return this._query(null, () => {
110
+ return this._managers().pipe(map((managers) => {
111
+ return managers
112
+ .filter((manager) => manager.isBalancesheetManager)
113
+ .map((manager) => {
114
+ return {
115
+ address: manager.address,
116
+ chainId: manager.chainId,
117
+ };
118
+ });
119
+ }));
120
+ });
121
+ }
87
122
  /**
88
123
  * Check if an address is a manager of the pool.
89
124
  * @param address - The address to check
90
125
  */
91
126
  isPoolManager(address) {
92
- return this._query(['isManager', address.toLowerCase()], () => {
93
- return this._root._protocolAddresses(this.chainId).pipe(switchMap(({ hubRegistry }) => {
94
- return this._root.getClient(this.chainId).readContract({
95
- address: hubRegistry,
96
- abi: ABI.HubRegistry,
97
- functionName: 'manager',
98
- args: [this.id.raw, address],
99
- });
127
+ const addr = address.toLowerCase();
128
+ return this._query(null, () => {
129
+ return this.poolManagers().pipe(map((managers) => {
130
+ return managers.some((manager) => manager.address === addr);
100
131
  }));
101
132
  });
102
133
  }
@@ -106,14 +137,10 @@ export class Pool extends Entity {
106
137
  * @param address - The address to check
107
138
  */
108
139
  isBalanceSheetManager(chainId, address) {
109
- return this._query(['isBSManager', chainId, address.toLowerCase()], () => {
110
- return this._root._protocolAddresses(chainId).pipe(switchMap(({ balanceSheet }) => {
111
- return this._root.getClient(chainId).readContract({
112
- address: balanceSheet,
113
- abi: ABI.BalanceSheet,
114
- functionName: 'manager',
115
- args: [this.id.raw, address],
116
- });
140
+ const addr = address.toLowerCase();
141
+ return this._query(null, () => {
142
+ return this.balanceSheetManagers().pipe(map((managers) => {
143
+ return managers.some((manager) => manager.chainId === chainId && manager.address === addr);
117
144
  }));
118
145
  });
119
146
  }
@@ -417,6 +444,24 @@ export class Pool extends Entity {
417
444
  const self = this;
418
445
  return this._transact(async function* (ctx) {
419
446
  const { hub } = await self._root._protocolAddresses(self.chainId);
447
+ const existingManagers = await self.poolManagers();
448
+ const leftManagers = new Map();
449
+ existingManagers.forEach((manager) => {
450
+ leftManagers.set(manager.address.toLowerCase(), true);
451
+ });
452
+ updates.forEach(({ address, canManage }) => {
453
+ const addr = address.toLowerCase();
454
+ const managerExists = leftManagers.get(addr);
455
+ if (!managerExists && canManage) {
456
+ leftManagers.set(addr, true);
457
+ }
458
+ if (managerExists && !canManage) {
459
+ leftManagers.delete(addr);
460
+ }
461
+ });
462
+ if (leftManagers.size === 0) {
463
+ throw new Error('Cannot remove all pool managers');
464
+ }
420
465
  // Ensure that updating the signer's address is always last in the batch,
421
466
  // to prevent removing the signer from the list of managers, before having added others,
422
467
  // which would cause the other updates to fail.
@@ -510,5 +555,36 @@ export class Pool extends Entity {
510
555
  });
511
556
  }), map((address) => address.toLowerCase())));
512
557
  }
558
+ /** @internal */
559
+ _managers() {
560
+ return this._query(null, () => combineLatest([
561
+ this._root._deployments(),
562
+ this._root._queryIndexer(`query ($poolId: BigInt!) {
563
+ poolManagers(where: { poolId: $poolId }) {
564
+ items {
565
+ isHubManager
566
+ isBalancesheetManager
567
+ address
568
+ centrifugeId
569
+ poolId
570
+ }
571
+ }
572
+ }`, {
573
+ poolId: this.id.toString(),
574
+ }),
575
+ ]).pipe(map(([deployments, { poolManagers }]) => {
576
+ const chainsById = new Map(deployments.blockchains.items.map((chain) => [chain.centrifugeId, chain.id]));
577
+ return poolManagers.items.map((manager) => {
578
+ const chainId = chainsById.get(manager.centrifugeId);
579
+ return {
580
+ address: manager.address.toLowerCase(),
581
+ isHubManager: manager.isHubManager,
582
+ isBalancesheetManager: manager.isBalancesheetManager,
583
+ centrifugeId: Number(manager.centrifugeId),
584
+ chainId: Number(chainId),
585
+ };
586
+ });
587
+ })));
588
+ }
513
589
  }
514
590
  //# sourceMappingURL=Pool.js.map