@centrifuge/sdk 1.16.0 → 1.18.0

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.
@@ -29,6 +29,10 @@ export const mockPoolMetadataV2 = {
29
29
  },
30
30
  forum: 'https://gov.centrifuge.io/tag/newsilver',
31
31
  website: 'https://newsilver.com',
32
+ documents: [
33
+ { key: 'prospectus', label: 'Prospectus', file: { uri: 'ipfs://QmProspectusDoc', mime: 'application/pdf' } },
34
+ { key: 'termsOfService', label: 'Terms of Service', href: 'https://example.com/tos' },
35
+ ],
32
36
  },
33
37
  status: 'open',
34
38
  listed: true,
@@ -42,16 +46,66 @@ export const mockPoolMetadataV2 = {
42
46
  ],
43
47
  investorType: 'Fake Investor Type',
44
48
  poolStructure: 'Fake Structure',
45
- poolRatings: [{ agency: 'Fake Agency', value: 'AAA', reportUrl: 'https://example.com/rating' }],
49
+ poolRatings: [
50
+ {
51
+ agency: 'Fake Agency',
52
+ value: 'AAA',
53
+ reportUrl: 'https://example.com/rating',
54
+ reportFile: { uri: 'ipfs://QmRatingReport', mime: 'application/pdf' },
55
+ },
56
+ ],
57
+ geoRestrictions: { regions: ['US', 'KP'] },
46
58
  factsheet: {
47
59
  keyFacts: [
48
- { label: 'Issuer', value: 'Fake Issuer' },
49
- { label: 'Asset type', value: 'Private credit - Fake Subclass' },
50
- { label: 'APY', valueRef: 'apy', tooltip: 'Net of fees' },
51
- { label: 'Secret fact', value: 'hidden value', visibility: 'whitelisted' },
60
+ {
61
+ type: 'keyFactGroup',
62
+ id: 'overview-facts',
63
+ title: 'Overview',
64
+ items: [
65
+ { label: 'Issuer', value: { kind: 'text', text: 'Fake Issuer' } },
66
+ { label: 'Asset type', value: { kind: 'text', text: 'Private credit - Fake Subclass' } },
67
+ { label: 'APY', value: { kind: 'ref', ref: 'apy' }, tooltip: 'Net of fees' },
68
+ { label: 'Networks', value: { kind: 'ref', ref: 'availableNetworks' } },
69
+ { label: 'Ratings', value: { kind: 'ref', ref: 'ratings' } },
70
+ ],
71
+ },
72
+ {
73
+ type: 'keyFactGroup',
74
+ id: 'trust-facts',
75
+ items: [
76
+ {
77
+ label: 'Custody',
78
+ value: {
79
+ kind: 'icons',
80
+ icons: [
81
+ { source: 'app', key: 'fordefi', label: 'Fordefi' },
82
+ { source: 'metadata', file: { uri: 'ipfs://QmRatingIcon', mime: 'image/svg+xml' }, alt: 'Moody’s' },
83
+ ],
84
+ },
85
+ },
86
+ { label: 'Secret fact', value: { kind: 'text', text: 'hidden value' }, visibility: 'whitelisted' },
87
+ // Combined gates: shown only to a whitelisted wallet in an allowed region.
88
+ {
89
+ label: 'Restricted yield',
90
+ value: { kind: 'text', text: '12%' },
91
+ visibility: ['whitelisted', 'geo-restricted'],
92
+ },
93
+ ],
94
+ },
52
95
  ],
53
96
  body: [
54
- { type: 'text', id: 'overview', title: 'Overview', body: 'Fake **overview** with a [link](https://x.io).' },
97
+ {
98
+ type: 'text',
99
+ id: 'overview',
100
+ title: 'Overview',
101
+ body: 'Fake **overview** with a [link](https://x.io).',
102
+ logo: { uri: 'ipfs://QmBrandLogo', mime: 'image/svg+xml' },
103
+ background: '#0b1f3a',
104
+ links: [
105
+ { label: 'Factsheet', target: { kind: 'linkRef', linkRef: 'executiveSummary' } },
106
+ { label: 'Website', target: { kind: 'href', href: 'https://newsilver.com' } },
107
+ ],
108
+ },
55
109
  {
56
110
  type: 'table',
57
111
  id: 'fees',
@@ -69,15 +123,18 @@ export const mockPoolMetadataV2 = {
69
123
  id: 'inline-chart',
70
124
  title: 'Allocation',
71
125
  chartType: 'donut',
72
- series: [
73
- {
74
- name: 'Allocation',
75
- data: [
76
- { label: 'Cash', value: 40 },
77
- { label: 'Loans', value: 60 },
78
- ],
79
- },
80
- ],
126
+ data: {
127
+ kind: 'inline',
128
+ series: [
129
+ {
130
+ name: 'Allocation',
131
+ data: [
132
+ { label: 'Cash', value: 40 },
133
+ { label: 'Loans', value: 60 },
134
+ ],
135
+ },
136
+ ],
137
+ },
81
138
  legend: true,
82
139
  },
83
140
  {
@@ -85,7 +142,7 @@ export const mockPoolMetadataV2 = {
85
142
  id: 'live-chart',
86
143
  title: 'APY vs benchmarks',
87
144
  chartType: 'line',
88
- dataRef: 'apyVsBenchmarks',
145
+ data: { kind: 'ref', dataRef: 'apyVsBenchmarks' },
89
146
  xAxis: { label: 'Date', type: 'time' },
90
147
  yAxis: { label: 'APY', format: 'percent' },
91
148
  },
@@ -129,9 +186,57 @@ export const mockPoolMetadataV2 = {
129
186
  ],
130
187
  caption: 'Recent months',
131
188
  },
189
+ {
190
+ type: 'documents',
191
+ id: 'docs',
192
+ title: 'Documents',
193
+ items: [
194
+ { title: 'Fact Sheet', target: { kind: 'linkRef', linkRef: 'executiveSummary' } },
195
+ {
196
+ title: 'Prospectus',
197
+ target: { kind: 'file', file: { uri: 'ipfs://QmProspectus', mime: 'application/pdf' } },
198
+ },
199
+ { title: 'Terms', target: { kind: 'href', href: 'https://example.com/terms' } },
200
+ ],
201
+ },
202
+ {
203
+ type: 'accordion',
204
+ id: 'details-accordion',
205
+ title: 'Details',
206
+ items: [
207
+ {
208
+ title: 'Overview',
209
+ defaultOpen: true,
210
+ block: { type: 'text', id: 'acc-overview', body: 'Accordion text.' },
211
+ },
212
+ {
213
+ title: 'Characteristics',
214
+ block: { type: 'kpiGroup', id: 'acc-kpis', items: [{ label: 'Duration', value: '0.2y' }] },
215
+ },
216
+ ],
217
+ },
218
+ {
219
+ type: 'text',
220
+ id: 'geo-note',
221
+ title: 'Regional note',
222
+ body: 'Shown only outside restricted regions.',
223
+ visibility: 'geo-restricted',
224
+ },
132
225
  { type: 'section', id: 'performance', ref: 'onchainMetrics' },
133
226
  ],
134
- sections: [{ type: 'section', id: 'contracts', ref: 'smartContracts', visibility: 'public' }],
227
+ sections: [
228
+ {
229
+ type: 'table',
230
+ id: 'holdings',
231
+ title: 'Holdings',
232
+ headers: ['Asset', 'ISIN', 'Amount'],
233
+ rows: [
234
+ ['T-Bill 2026', 'US912796RW0', 1_000_000],
235
+ ['T-Bill 2027', '', 2_500_000],
236
+ ],
237
+ },
238
+ { type: 'section', id: 'contracts', ref: 'smartContracts', visibility: 'public' },
239
+ ],
135
240
  },
136
241
  },
137
242
  shareClasses: {
@@ -1 +1 @@
1
- {"version":3,"file":"mockPoolMetadataV2.js","sourceRoot":"","sources":["../../../src/tests/mocks/mockPoolMetadataV2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mockPoolMetadataV2.js","sourceRoot":"","sources":["../../../src/tests/mocks/mockPoolMetadataV2.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { HexString } from './index.js';
2
- import type { ApyMode, Factsheet, LegacyApyMode, PoolMetadata } from './poolMetadata.js';
2
+ import type { ApyMode, Factsheet, LegacyApyMode, LinkDocument, PoolMetadata } from './poolMetadata.js';
3
3
  export type FileType = {
4
4
  uri: string;
5
5
  mime: string;
@@ -45,6 +45,8 @@ export type PoolMetadataInput = {
45
45
  forum: string;
46
46
  email: string;
47
47
  executiveSummary: FileType | null;
48
+ /** Reusable named documents written to `pool.links.documents` (referenceable via `linkRef`). */
49
+ linkDocuments?: LinkDocument[];
48
50
  /**
49
51
  * @deprecated v2 has no flat `details`; author them via `factsheet` `text` blocks. Ignored by
50
52
  * `createPool`/`update`.
@@ -70,10 +72,6 @@ export type PoolMetadataInput = {
70
72
  underlying?: {
71
73
  poolId?: number;
72
74
  };
73
- holdings?: {
74
- headers: string[];
75
- data: Record<string, unknown>[];
76
- };
77
75
  listed?: boolean;
78
76
  };
79
77
  //# sourceMappingURL=poolInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"poolInput.d.ts","sourceRoot":"","sources":["../../src/types/poolInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAExF,MAAM,MAAM,QAAQ,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpD,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,EAAE,QAAQ,GAAG,IAAI,CAAA;KACxB,CAAA;IACD,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AACD,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,GAAG,CAAC,EAAE,OAAO,GAAG,aAAa,GAAG,IAAI,CAAA;IACpC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,eAAe,CAAC,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,CAAA;CAC7E,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,EAAE,WAAW,CAAA;IAC1B,UAAU,EAAE,eAAe,GAAG,gBAAgB,CAAA;IAC9C,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,eAAe,EAAE,CAAA;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,QAAQ,CAAA;IAClB,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAA;IAC3B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,QAAQ,CAAA;IACpB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,gBAAgB,EAAE,QAAQ,GAAG,IAAI,CAAA;IACjC;;;OAGG;IACH,OAAO,CAAC,EAAE,YAAY,EAAE,CAAA;IACxB;;;OAGG;IACH,gBAAgB,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC1E,WAAW,EAAE;QACX,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,EAAE,CAAA;IACH,+DAA+D;IAC/D,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,UAAU,CAAC,EAAE;QACX,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,QAAQ,CAAC,EAAE;QACT,OAAO,EAAE,MAAM,EAAE,CAAA;QACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;KAChC,CAAA;IACD,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA"}
1
+ {"version":3,"file":"poolInput.d.ts","sourceRoot":"","sources":["../../src/types/poolInput.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAEtG,MAAM,MAAM,QAAQ,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAA;AAEpD,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE;QACN,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,MAAM,EAAE,QAAQ,GAAG,IAAI,CAAA;KACxB,CAAA;IACD,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AACD,MAAM,MAAM,eAAe,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,GAAG,CAAC,EAAE,OAAO,GAAG,aAAa,GAAG,IAAI,CAAA;IACpC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,eAAe,CAAC,EAAE,YAAY,CAAC,cAAc,CAAC,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,CAAA;CAC7E,CAAA;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;CACb,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,EAAE,WAAW,CAAA;IAC1B,UAAU,EAAE,eAAe,GAAG,gBAAgB,CAAA;IAC9C,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,eAAe,EAAE,CAAA;IAC/B,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,QAAQ,EAAE,QAAQ,CAAA;IAClB,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAA;IAC3B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,QAAQ,CAAA;IACpB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,gBAAgB,EAAE,QAAQ,GAAG,IAAI,CAAA;IACjC,gGAAgG;IAChG,aAAa,CAAC,EAAE,YAAY,EAAE,CAAA;IAC9B;;;OAGG;IACH,OAAO,CAAC,EAAE,YAAY,EAAE,CAAA;IACxB;;;OAGG;IACH,gBAAgB,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC1E,WAAW,EAAE;QACX,MAAM,CAAC,EAAE,MAAM,CAAA;QACf,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,SAAS,CAAC,EAAE,MAAM,CAAA;KACnB,EAAE,CAAA;IACH,+DAA+D;IAC/D,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,UAAU,CAAC,EAAE;QACX,MAAM,CAAC,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA"}
@@ -144,6 +144,11 @@ export type PoolMetadataV1 = {
144
144
  executiveSummary: FileType | null;
145
145
  forum?: string;
146
146
  website?: string;
147
+ /**
148
+ * Reusable named documents authored once and referenced anywhere in the factsheet via a
149
+ * {@link LinkTarget} `{ kind: 'linkRef', linkRef: key }`. See {@link LinkDocument}.
150
+ */
151
+ documents?: LinkDocument[];
147
152
  };
148
153
  details?: {
149
154
  title: string;
@@ -220,17 +225,35 @@ export type PoolMetadataV1 = {
220
225
  };
221
226
  addressLabels?: Record<string, string>;
222
227
  workflowPolicies?: WorkflowPolicy[];
228
+ /** Per-share-class withdraw addresses, keyed by share class id. Engine config, carried verbatim. */
229
+ withdrawManagers?: Record<HexString, WithdrawManager[]>;
223
230
  };
231
+ /** A configured withdraw destination for a share class on a given chain/asset. */
232
+ export type WithdrawManager = {
233
+ assetAddress: HexString;
234
+ chainId: string;
235
+ manager: HexString;
236
+ label?: string;
237
+ };
238
+ /**
239
+ * A single audience gate applied to an element. Presentational only, resolved app-side; never a
240
+ * substitute for on-chain / compliance access control.
241
+ * - `whitelisted` — passes only for a wallet in the share class's transfer-hook allowlist;
242
+ * otherwise blurred behind an app-owned overlay that keeps its layout footprint.
243
+ * - `geo-restricted` — passes only when the user's region is NOT in `pool.geoRestrictions.regions`
244
+ * (with no such list, nothing is restricted).
245
+ */
246
+ export type VisibilityGate = 'whitelisted' | 'geo-restricted';
224
247
  /**
225
- * Access gating for any block, key fact, column, or kpi item. Default `'public'`. Resolved app-side
226
- * against the connected wallet's share-class (transfer-hook) membership. Presentational only — never
227
- * a substitute for on-chain access control.
228
- * - `public` — rendered for everyone.
229
- * - `whitelisted` full content only for a whitelisted wallet; otherwise blurred behind an
230
- * app-owned overlay that keeps its layout footprint (no reflow on connect).
231
- * - `hidden` — never rendered, for anyone (not laid out).
248
+ * Access gating for any block, key fact, column, or kpi item. Default `'public'`.
249
+ * - `'public'` (or absent) rendered for everyone.
250
+ * - `'hidden'` — never rendered, for anyone (not laid out).
251
+ * - a single {@link VisibilityGate} or an **array of gates** — rendered only when ALL listed gates
252
+ * pass (AND). e.g. `['whitelisted', 'geo-restricted']` = a whitelisted wallet in an allowed
253
+ * region. `'public'`/`'hidden'` may not appear inside the array. When several gates fail, the app
254
+ * shows the most restrictive overlay (geo before whitelist).
232
255
  */
233
- export type Visibility = 'public' | 'whitelisted' | 'hidden';
256
+ export type Visibility = 'public' | 'hidden' | VisibilityGate | VisibilityGate[];
234
257
  /**
235
258
  * Constrained Markdown subset (paragraphs, hard newlines, `-`/`*` and `1.` lists, `**bold**`,
236
259
  * `_italic_`, `[text](url)`). Raw HTML is stripped; sanitized by the reader on render.
@@ -283,25 +306,108 @@ export type ChartSeries = {
283
306
  }>;
284
307
  };
285
308
  /**
286
- * A right-column key fact. `value` is static text; `valueRef: 'apy'` instead resolves live from
287
- * `shareClasses[scId].apy` (+ `apyTooltip`). The `valueRef` set is closed and grows additively.
309
+ * An icon, optionally with a label (renders as an icon, or an icon+text pill when `label` is set).
310
+ * - `source: 'metadata'` carries the image inline (issuer-supplied).
311
+ * - `source: 'app'` references an app-owned icon by `key` (e.g. `'fordefi'`, `'moodys'`). The icon
312
+ * `key` registry is app-owned; it is not yet enumerated, so the SDK validates it as a string only.
288
313
  */
314
+ export type IconRef = {
315
+ source: 'metadata';
316
+ file: FileType;
317
+ alt?: string;
318
+ label?: string;
319
+ } | {
320
+ source: 'app';
321
+ key: string;
322
+ label?: string;
323
+ };
324
+ /**
325
+ * A key fact's value, discriminated by `kind` so there is no value/valueRef/icons precedence
326
+ * ambiguity. Exactly one kind applies:
327
+ * - `text` — static text.
328
+ * - `icons` — author-chosen icons (each may carry a label).
329
+ * - `ref` — app-owned widget that reads existing data (an indexer query or a typed metadata
330
+ * field) and renders it. The `ref` set is closed and SDK-validated on write (extended
331
+ * via a coordinated SDK release, see {@link DataRef}). `'apy'` renders formatted APY
332
+ * (via the app's `usePoolApy`); `'availableNetworks'` renders the token's deployed
333
+ * chains with the app's built-in network icons; `'ratings'` renders the typed
334
+ * `pool.poolRatings` field as icon+text pills with per-rating links (`agency` → icon,
335
+ * `value` → label, `reportUrl`/`reportFile` → link). None of these produce `IconRef[]`.
336
+ */
337
+ export type KeyFactValue = {
338
+ kind: 'text';
339
+ text: string;
340
+ } | {
341
+ kind: 'icons';
342
+ icons: IconRef[];
343
+ } | {
344
+ kind: 'ref';
345
+ ref: 'apy' | 'availableNetworks' | 'ratings';
346
+ };
347
+ /** A right-column key fact. Its value is a single discriminated {@link KeyFactValue}. */
289
348
  export type KeyFact = {
290
349
  label: string;
291
- value?: string;
292
- valueRef?: 'apy';
350
+ value: KeyFactValue;
293
351
  tooltip?: string;
294
352
  href?: string;
295
353
  visibility?: Visibility;
296
354
  };
355
+ /**
356
+ * A titled right-column group of key facts. Every key fact lives inside a group; there are no
357
+ * top-level bare key facts. An untitled group renders as ungrouped rows.
358
+ */
359
+ export type KeyFactGroup = {
360
+ type: 'keyFactGroup';
361
+ id: string;
362
+ title?: string;
363
+ visibility?: Visibility;
364
+ items: KeyFact[];
365
+ };
297
366
  type BlockBase = {
298
367
  id: string;
299
368
  title?: string;
300
369
  visibility?: Visibility;
301
370
  };
371
+ /**
372
+ * A single link destination, discriminated by `kind` (no competing-optional ambiguity):
373
+ * - `file` — an inline IPFS asset.
374
+ * - `href` — an inline URL.
375
+ * - `linkRef` — a key in the typed `pool.links` (e.g. `'executiveSummary'`, `'website'`), so the
376
+ * URL/file has a single source of truth. The app resolves it; an unknown key hides
377
+ * the tile/button (graceful read).
378
+ */
379
+ export type LinkTarget = {
380
+ kind: 'file';
381
+ file: FileType;
382
+ } | {
383
+ kind: 'href';
384
+ href: string;
385
+ } | {
386
+ kind: 'linkRef';
387
+ linkRef: string;
388
+ };
389
+ /**
390
+ * A reusable named document on `pool.links.documents`, referenced from a {@link LinkTarget} via
391
+ * `{ kind: 'linkRef', linkRef: key }`. Carries exactly one of `file` or `href`.
392
+ */
393
+ export type LinkDocument = {
394
+ /** Unique slug a `linkRef` points at; must not collide with `executiveSummary`/`website`/`forum`. */
395
+ key: string;
396
+ label: string;
397
+ file?: FileType | null;
398
+ href?: string;
399
+ };
302
400
  export type TextBlock = BlockBase & {
303
401
  type: 'text';
304
402
  body: RichText;
403
+ /** Overview-card extras (all optional): a brand logo, a card background, and link buttons. */
404
+ logo?: FileType;
405
+ /** Theme token or hex color for the card background. */
406
+ background?: string;
407
+ links?: Array<{
408
+ label: string;
409
+ target: LinkTarget;
410
+ }>;
305
411
  };
306
412
  export type TableBlock = BlockBase & {
307
413
  type: 'table';
@@ -312,13 +418,22 @@ export type TableBlock = BlockBase & {
312
418
  caption?: string;
313
419
  asOf?: string;
314
420
  };
421
+ /**
422
+ * A chart's data source, discriminated by `kind` (no inline-vs-live ambiguity):
423
+ * - `inline` — metadata-supplied series.
424
+ * - `ref` — an app/indexer-computed dataset, referenced by a closed, SDK-validated {@link DataRef}.
425
+ */
426
+ export type ChartData = {
427
+ kind: 'inline';
428
+ series: ChartSeries[];
429
+ } | {
430
+ kind: 'ref';
431
+ dataRef: DataRef;
432
+ };
315
433
  export type ChartBlock = BlockBase & {
316
434
  type: 'chart';
317
435
  chartType: ChartType;
318
- /** Inline metadata-supplied data ... */
319
- series?: ChartSeries[];
320
- /** ... or an app/indexer-computed dataset (mutually exclusive with `series`). */
321
- dataRef?: DataRef;
436
+ data: ChartData;
322
437
  stacked?: boolean;
323
438
  legend?: boolean;
324
439
  xAxis?: {
@@ -383,7 +498,24 @@ export type TabGroupBlock = BlockBase & {
383
498
  block: TabBlock;
384
499
  }>;
385
500
  };
386
- export type ContentBlock = TextBlock | TableBlock | ChartBlock | ImageBlock | KpiGroupBlock | TabGroupBlock | LiveTableBlock;
501
+ /** A tile list (doc icon + title) opening each item's {@link LinkTarget}, e.g. a "Fact Sheet" tile. */
502
+ export type DocumentsBlock = BlockBase & {
503
+ type: 'documents';
504
+ items: Array<{
505
+ title: string;
506
+ target: LinkTarget;
507
+ }>;
508
+ };
509
+ /** A collapsible stack (accordion UX). Each item holds a {@link TabBlock} leaf, like `tabGroup` tabs. */
510
+ export type AccordionBlock = BlockBase & {
511
+ type: 'accordion';
512
+ items: Array<{
513
+ title: string;
514
+ block: TabBlock;
515
+ defaultOpen?: boolean;
516
+ }>;
517
+ };
518
+ export type ContentBlock = TextBlock | TableBlock | ChartBlock | ImageBlock | KpiGroupBlock | TabGroupBlock | LiveTableBlock | DocumentsBlock | AccordionBlock;
387
519
  /** A pointer to one of the closed, app-owned section units. */
388
520
  export type SectionRefBlock = {
389
521
  type: 'section';
@@ -397,23 +529,30 @@ export type LayoutItem = ContentBlock | SectionRefBlock;
397
529
  export type Factsheet = {
398
530
  /** Top region, left column, ordered (authored blocks + app section refs e.g. `onchainMetrics`). */
399
531
  body: LayoutItem[];
400
- /** Top region, right column, ordered. */
401
- keyFacts: KeyFact[];
532
+ /** Top region, right column, ordered groups of key facts (groups only, no bare key facts). */
533
+ keyFacts: KeyFactGroup[];
402
534
  /** Full-width region below, ordered. Omit to let the app render its default sections. */
403
535
  sections?: LayoutItem[];
404
536
  };
405
- /** A pool rating without the unused `reportFile` PDF (migrated into a Documents block in v2). */
537
+ /**
538
+ * A pool rating, kept as a typed field in v2 (the single source of truth for ratings). The
539
+ * `ratings` {@link KeyFactValue} `ref` widget renders this verbatim: `agency` → icon, `value` →
540
+ * label, `reportUrl`/`reportFile` → the per-rating link.
541
+ */
406
542
  export type PoolRatingV2 = {
407
543
  agency?: string;
408
544
  value?: string;
409
545
  reportUrl?: string;
546
+ reportFile?: FileType | null;
410
547
  };
411
548
  /**
412
549
  * Versioned, factsheet-aware pool metadata. Drops fields unused by every consumer
413
550
  * (`newInvestmentsStatus`, `loanTemplates`, `reports`, `issuer.repName/shortDescription`, onboarding
414
- * extras) and folds the legacy display fields (`details`, `issuer.description/categories`,
415
- * `poolRatings[].reportFile`) into `pool.factsheet`. Engine fields (`shareClasses`,
416
- * `merkleProofManager`, `holdings`, `addressLabels`, `workflowPolicies`) are preserved verbatim.
551
+ * extras) and folds the legacy display fields (`details`, `issuer.description/categories`) and the
552
+ * off-chain `holdings` blob (into a `table` section) into `pool.factsheet`. `poolRatings` stays a
553
+ * typed field (surfaced via the `ratings` key-fact ref). Engine fields (`shareClasses`,
554
+ * `merkleProofManager`, `addressLabels`, `workflowPolicies`, `withdrawManagers`) are preserved
555
+ * verbatim.
417
556
  */
418
557
  export type PoolMetadataV2 = {
419
558
  version: 2;
@@ -421,6 +560,13 @@ export type PoolMetadataV2 = {
421
560
  issuer: Pick<PoolMetadataV1['pool']['issuer'], 'name' | 'email' | 'logo'>;
422
561
  poolRatings?: PoolRatingV2[];
423
562
  factsheet?: Factsheet;
563
+ /**
564
+ * Single pool-level restricted-regions list (ISO 3166-1 alpha-2 codes, e.g. `'US'`). Every
565
+ * `geo-restricted` element is gated against it. Presentational only; not compliance/access control.
566
+ */
567
+ geoRestrictions?: {
568
+ regions: string[];
569
+ };
424
570
  };
425
571
  shareClasses: PoolMetadataV1['shareClasses'];
426
572
  merkleProofManager?: PoolMetadataV1['merkleProofManager'];
@@ -428,14 +574,15 @@ export type PoolMetadataV2 = {
428
574
  kycRestrictedCountries?: string[];
429
575
  kybRestrictedCountries?: string[];
430
576
  };
431
- holdings?: PoolMetadataV1['holdings'];
432
577
  addressLabels?: PoolMetadataV1['addressLabels'];
433
578
  workflowPolicies?: PoolMetadataV1['workflowPolicies'];
579
+ withdrawManagers?: PoolMetadataV1['withdrawManagers'];
434
580
  };
435
581
  /**
436
582
  * Public alias usable for either shape. Reads of common fields (`pool.name`, `shareClasses`,
437
- * `addressLabels`, `onboarding`, `holdings`, …) are valid without narrowing; discriminate on
438
- * `version` (or use {@link isPoolMetadataV2}) before touching v2-only fields like `pool.factsheet`.
583
+ * `addressLabels`, `onboarding`, …) are valid without narrowing; discriminate on `version` (or use
584
+ * {@link isPoolMetadataV2}) before touching v2-only fields like `pool.factsheet`. Note `holdings`
585
+ * exists only on {@link PoolMetadataV1}; in v2 it lives in `pool.factsheet` as a `table` section.
439
586
  */
440
587
  export type PoolMetadata = PoolMetadataV1 | PoolMetadataV2;
441
588
  export declare function isPoolMetadataV2(metadata: PoolMetadata): metadata is PoolMetadataV2;
@@ -1 +1 @@
1
- {"version":3,"file":"poolMetadata.d.ts","sourceRoot":"","sources":["../../src/types/poolMetadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poolMetadata.d.ts","sourceRoot":"","sources":["../../src/types/poolMetadata.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"poolMetadata.js","sourceRoot":"","sources":["../../src/types/poolMetadata.ts"],"names":[],"mappings":"AA0dA,MAAM,UAAU,gBAAgB,CAAC,QAAsB;IACrD,OAAO,QAAQ,CAAC,OAAO,KAAK,CAAC,CAAA;AAC/B,CAAC;AAED,mGAAmG;AACnG,MAAM,UAAU,oBAAoB,CAAC,QAA8B;IACjE,OAAO,QAAQ,CAAC,OAAO,IAAI,IAAI,IAAI,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAA;AACzD,CAAC"}
1
+ {"version":3,"file":"poolMetadata.js","sourceRoot":"","sources":["../../src/types/poolMetadata.ts"],"names":[],"mappings":"AAulBA,MAAM,UAAU,gBAAgB,CAAC,QAAsB;IACrD,OAAO,QAAQ,CAAC,OAAO,KAAK,CAAC,CAAA;AAC/B,CAAC;AAED,mGAAmG;AACnG,MAAM,UAAU,oBAAoB,CAAC,QAA8B;IACjE,OAAO,QAAQ,CAAC,OAAO,IAAI,IAAI,IAAI,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAA;AACzD,CAAC"}
@@ -1,23 +1,36 @@
1
- import { type PoolMetadata, type PoolMetadataV2 } from '../types/poolMetadata.js';
1
+ import { type FileType, type LinkTarget, type PoolMetadata, type PoolMetadataV1, type PoolMetadataV2 } from '../types/poolMetadata.js';
2
2
  /**
3
3
  * Pure, idempotent legacy -> v2 migration. Performs no IPFS/network access so it stays
4
- * unit-testable. Returns the input unchanged when it is already v2.
4
+ * unit-testable. A document already at the current v2 shape is returned unchanged; a v2 document
5
+ * written by an earlier SDK is normalized forward via {@link upgradeLegacyV2}.
5
6
  *
6
7
  * - Strips fields unused by every consumer (`newInvestmentsStatus`, `reports`, `loanTemplates`,
7
- * `issuer.repName/shortDescription`, onboarding extras) and reshapes `issuer`/`poolRatings`.
8
+ * `issuer.repName/shortDescription`, onboarding extras) and reshapes `issuer`. `poolRatings` is
9
+ * preserved verbatim as a typed field (surfaced via the `ratings` key-fact ref).
8
10
  * - Maps legacy APY modes across `shareClasses[*].apy`.
9
- * - Projects the legacy display fields into `pool.factsheet`.
11
+ * - Projects the legacy display fields into `pool.factsheet`, and folds the off-chain `holdings`
12
+ * blob into a `table` section (`id: 'holdings'`); `holdings` is not carried as a top-level field.
10
13
  */
11
14
  export declare function migratePoolMetadataToV2(legacy: PoolMetadata): PoolMetadataV2;
12
15
  /**
13
16
  * Hand-rolled structural validator for v2 pool metadata, in the style of
14
17
  * {@link parseMarketplaceCatalog}. Validates the discriminant (`version === 2`), `pool.name`, and
15
18
  * the full `pool.factsheet` content model (the layout the SDK is responsible for). Engine fields
16
- * (`shareClasses`, `workflowPolicies`, `holdings`, `addressLabels`, …) are passed through
19
+ * (`shareClasses`, `workflowPolicies`, `addressLabels`, …) are passed through
17
20
  * unchecked here — they are validated where they are consumed (e.g. workflows via
18
21
  * {@link parseMarketplaceCatalog}). Throws `pool metadata v2: …` on the first malformed field;
19
22
  * tolerates missing optionals (visibility defaults to `'public'` app-side). Returns the input
20
23
  * narrowed to {@link PoolMetadataV2} on success.
21
24
  */
22
25
  export declare function parsePoolMetadataV2(raw: unknown): PoolMetadataV2;
26
+ /**
27
+ * Resolves a {@link LinkTarget} to a `{ href }` or `{ file }` against a pool's `links`. `linkRef`
28
+ * checks the built-in keys first (`executiveSummary` -> file, `website`/`forum` -> url), then
29
+ * `links.documents` by `key`. Returns `null` on no match (callers self-blank; never throw). Shared
30
+ * so the SDK and the invest app resolve references identically.
31
+ */
32
+ export declare function resolveLinkTarget(links: PoolMetadataV1['pool']['links'] | undefined, target: LinkTarget): {
33
+ href?: string;
34
+ file?: FileType;
35
+ } | null;
23
36
  //# sourceMappingURL=poolMetadataMigration.d.ts.map