@centrifuge/sdk 1.15.2 → 1.16.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.
- package/dist/Centrifuge.d.ts.map +1 -1
- package/dist/Centrifuge.js +7 -26
- package/dist/Centrifuge.js.map +1 -1
- package/dist/Centrifuge.test.js +0 -3
- package/dist/Centrifuge.test.js.map +1 -1
- package/dist/entities/Pool.d.ts +12 -1
- package/dist/entities/Pool.d.ts.map +1 -1
- package/dist/entities/Pool.js +51 -27
- package/dist/entities/Pool.js.map +1 -1
- package/dist/entities/Pool.metadataGate.test.d.ts +2 -0
- package/dist/entities/Pool.metadataGate.test.d.ts.map +1 -0
- package/dist/entities/Pool.metadataGate.test.js +23 -0
- package/dist/entities/Pool.metadataGate.test.js.map +1 -0
- package/dist/entities/Pool.test.js +26 -3
- package/dist/entities/Pool.test.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/tests/mocks/mockPoolMetadataV2.d.ts +7 -0
- package/dist/tests/mocks/mockPoolMetadataV2.d.ts.map +1 -0
- package/dist/tests/mocks/mockPoolMetadataV2.js +153 -0
- package/dist/tests/mocks/mockPoolMetadataV2.js.map +1 -0
- package/dist/types/poolInput.d.ts +17 -17
- package/dist/types/poolInput.d.ts.map +1 -1
- package/dist/types/poolMetadata.d.ts +229 -1
- package/dist/types/poolMetadata.d.ts.map +1 -1
- package/dist/types/poolMetadata.js +7 -1
- package/dist/types/poolMetadata.js.map +1 -1
- package/dist/utils/poolMetadataMigration.d.ts +23 -0
- package/dist/utils/poolMetadataMigration.d.ts.map +1 -0
- package/dist/utils/poolMetadataMigration.js +389 -0
- package/dist/utils/poolMetadataMigration.js.map +1 -0
- package/dist/utils/poolMetadataMigration.test.d.ts +2 -0
- package/dist/utils/poolMetadataMigration.test.d.ts.map +1 -0
- package/dist/utils/poolMetadataMigration.test.js +240 -0
- package/dist/utils/poolMetadataMigration.test.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A v2 fixture exercising every content block type, a `liveTable`, a `section` ref, a
|
|
3
|
+
* `valueRef: 'apy'` key fact, and `visibility` at block / key-fact / column granularity.
|
|
4
|
+
*/
|
|
5
|
+
export const mockPoolMetadataV2 = {
|
|
6
|
+
version: 2,
|
|
7
|
+
pool: {
|
|
8
|
+
name: 'Fake Pool',
|
|
9
|
+
icon: {
|
|
10
|
+
uri: 'ipfs://QmVxA2MaBMUsZMgxBcfg5VdrF4FJAVW26U9s3mY9oH7wMs',
|
|
11
|
+
mime: 'image/svg+xml',
|
|
12
|
+
},
|
|
13
|
+
asset: {
|
|
14
|
+
class: 'Private credit',
|
|
15
|
+
subClass: 'Fake Subclass',
|
|
16
|
+
},
|
|
17
|
+
issuer: {
|
|
18
|
+
name: 'Fake Issuer',
|
|
19
|
+
email: 'fake@issuer.com',
|
|
20
|
+
logo: {
|
|
21
|
+
uri: 'ipfs://QmZB95usKnoSHEwG9s61gYWqgxbYyq7NAdo24XEowqJtFS',
|
|
22
|
+
mime: 'image/png',
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
links: {
|
|
26
|
+
executiveSummary: {
|
|
27
|
+
uri: 'ipfs://QmRQqb11SnqpSHwPcsgmgGWCv8GKfALgX53KLbvf6iur5Y',
|
|
28
|
+
mime: 'application/pdf',
|
|
29
|
+
},
|
|
30
|
+
forum: 'https://gov.centrifuge.io/tag/newsilver',
|
|
31
|
+
website: 'https://newsilver.com',
|
|
32
|
+
},
|
|
33
|
+
status: 'open',
|
|
34
|
+
listed: true,
|
|
35
|
+
poolFees: [
|
|
36
|
+
{
|
|
37
|
+
name: 'Protocol fee (Private Credit & Securities)',
|
|
38
|
+
id: 3,
|
|
39
|
+
feePosition: 'Top of waterfall',
|
|
40
|
+
feeType: 'fixed',
|
|
41
|
+
},
|
|
42
|
+
],
|
|
43
|
+
investorType: 'Fake Investor Type',
|
|
44
|
+
poolStructure: 'Fake Structure',
|
|
45
|
+
poolRatings: [{ agency: 'Fake Agency', value: 'AAA', reportUrl: 'https://example.com/rating' }],
|
|
46
|
+
factsheet: {
|
|
47
|
+
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' },
|
|
52
|
+
],
|
|
53
|
+
body: [
|
|
54
|
+
{ type: 'text', id: 'overview', title: 'Overview', body: 'Fake **overview** with a [link](https://x.io).' },
|
|
55
|
+
{
|
|
56
|
+
type: 'table',
|
|
57
|
+
id: 'fees',
|
|
58
|
+
title: 'Fees',
|
|
59
|
+
headers: ['Name', 'Amount'],
|
|
60
|
+
rows: [
|
|
61
|
+
['Management', '0.5%'],
|
|
62
|
+
['Performance', '10%'],
|
|
63
|
+
],
|
|
64
|
+
columnVisibility: ['public', 'whitelisted'],
|
|
65
|
+
caption: 'Fee schedule',
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
type: 'chart',
|
|
69
|
+
id: 'inline-chart',
|
|
70
|
+
title: 'Allocation',
|
|
71
|
+
chartType: 'donut',
|
|
72
|
+
series: [
|
|
73
|
+
{
|
|
74
|
+
name: 'Allocation',
|
|
75
|
+
data: [
|
|
76
|
+
{ label: 'Cash', value: 40 },
|
|
77
|
+
{ label: 'Loans', value: 60 },
|
|
78
|
+
],
|
|
79
|
+
},
|
|
80
|
+
],
|
|
81
|
+
legend: true,
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
type: 'chart',
|
|
85
|
+
id: 'live-chart',
|
|
86
|
+
title: 'APY vs benchmarks',
|
|
87
|
+
chartType: 'line',
|
|
88
|
+
dataRef: 'apyVsBenchmarks',
|
|
89
|
+
xAxis: { label: 'Date', type: 'time' },
|
|
90
|
+
yAxis: { label: 'APY', format: 'percent' },
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
type: 'image',
|
|
94
|
+
id: 'diagram',
|
|
95
|
+
file: { uri: 'ipfs://QmFakeImage', mime: 'image/png' },
|
|
96
|
+
alt: 'Structure diagram',
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
type: 'kpiGroup',
|
|
100
|
+
id: 'kpis',
|
|
101
|
+
columns: 3,
|
|
102
|
+
items: [
|
|
103
|
+
{ label: 'TVL', value: '$10M' },
|
|
104
|
+
{ label: 'Investors', value: '120', trend: 'up' },
|
|
105
|
+
{ label: 'Hidden KPI', value: 'secret', visibility: 'hidden' },
|
|
106
|
+
],
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
type: 'tabGroup',
|
|
110
|
+
id: 'tabs',
|
|
111
|
+
tabs: [
|
|
112
|
+
{ label: 'Summary', block: { type: 'text', id: 'tab-summary', body: 'Tab body text.' } },
|
|
113
|
+
{
|
|
114
|
+
label: 'Numbers',
|
|
115
|
+
block: { type: 'kpiGroup', id: 'tab-kpis', items: [{ label: 'NAV', value: '$1.02' }] },
|
|
116
|
+
},
|
|
117
|
+
],
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
type: 'liveTable',
|
|
121
|
+
id: 'monthly',
|
|
122
|
+
title: 'Monthly summary',
|
|
123
|
+
dataRef: 'monthlySummary',
|
|
124
|
+
columns: [
|
|
125
|
+
{ header: 'Month', source: 'static', values: ['Jan', 'Feb', 'Mar'] },
|
|
126
|
+
{ header: 'Token price', source: 'indexer', metric: 'tokenPrice', format: 'currency' },
|
|
127
|
+
{ header: 'NAV', source: 'indexer', metric: 'nav', format: 'currency', visibility: 'whitelisted' },
|
|
128
|
+
{ header: 'Note', source: 'hardcoded', key: 'note' },
|
|
129
|
+
],
|
|
130
|
+
caption: 'Recent months',
|
|
131
|
+
},
|
|
132
|
+
{ type: 'section', id: 'performance', ref: 'onchainMetrics' },
|
|
133
|
+
],
|
|
134
|
+
sections: [{ type: 'section', id: 'contracts', ref: 'smartContracts', visibility: 'public' }],
|
|
135
|
+
},
|
|
136
|
+
},
|
|
137
|
+
shareClasses: {
|
|
138
|
+
'0x6756e091ae798a8e51e12e27ee8facdf': {
|
|
139
|
+
minInitialInvestment: 2500,
|
|
140
|
+
apyPercentage: 16,
|
|
141
|
+
apy: 'fixed',
|
|
142
|
+
},
|
|
143
|
+
'0xda64aae939e4d3a981004619f1709d8f': {
|
|
144
|
+
minInitialInvestment: 5000,
|
|
145
|
+
apy: '30d365',
|
|
146
|
+
},
|
|
147
|
+
},
|
|
148
|
+
onboarding: {
|
|
149
|
+
kycRestrictedCountries: [],
|
|
150
|
+
kybRestrictedCountries: [],
|
|
151
|
+
},
|
|
152
|
+
};
|
|
153
|
+
//# sourceMappingURL=mockPoolMetadataV2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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 { ApyMode, LegacyApyMode, PoolMetadata } from './poolMetadata.js';
|
|
2
|
+
import type { ApyMode, Factsheet, LegacyApyMode, PoolMetadata } from './poolMetadata.js';
|
|
3
3
|
export type FileType = {
|
|
4
4
|
uri: string;
|
|
5
5
|
mime: string;
|
|
@@ -35,16 +35,26 @@ export type PoolMetadataInput = {
|
|
|
35
35
|
poolIcon: FileType;
|
|
36
36
|
poolType: 'open' | 'closed';
|
|
37
37
|
issuerName: string;
|
|
38
|
-
issuerRepName: string;
|
|
39
38
|
issuerLogo: FileType;
|
|
40
|
-
|
|
41
|
-
|
|
39
|
+
/**
|
|
40
|
+
* @deprecated v2 has no flat issuer description; author it via `factsheet` (e.g. an Overview
|
|
41
|
+
* `text` block). Ignored by `createPool`/`update` — kept only so legacy callers still compile.
|
|
42
|
+
*/
|
|
43
|
+
issuerDescription?: string;
|
|
42
44
|
website: string;
|
|
43
45
|
forum: string;
|
|
44
46
|
email: string;
|
|
45
47
|
executiveSummary: FileType | null;
|
|
48
|
+
/**
|
|
49
|
+
* @deprecated v2 has no flat `details`; author them via `factsheet` `text` blocks. Ignored by
|
|
50
|
+
* `createPool`/`update`.
|
|
51
|
+
*/
|
|
46
52
|
details?: IssuerDetail[];
|
|
47
|
-
|
|
53
|
+
/**
|
|
54
|
+
* @deprecated v2 has no flat issuer categories; author them via `factsheet` key facts. Ignored by
|
|
55
|
+
* `createPool`/`update`.
|
|
56
|
+
*/
|
|
57
|
+
issuerCategories?: {
|
|
48
58
|
type: string;
|
|
49
59
|
value: string;
|
|
50
60
|
description?: string;
|
|
@@ -53,20 +63,10 @@ export type PoolMetadataInput = {
|
|
|
53
63
|
agency?: string;
|
|
54
64
|
value?: string;
|
|
55
65
|
reportUrl?: string;
|
|
56
|
-
reportFile?: FileType | null;
|
|
57
66
|
}[];
|
|
58
|
-
|
|
67
|
+
/** v2 factsheet content model (centrifuge/apps-invest#200). */
|
|
68
|
+
factsheet?: Factsheet;
|
|
59
69
|
onboardingExperience: string;
|
|
60
|
-
onboarding?: {
|
|
61
|
-
shareClasses: {
|
|
62
|
-
[scId: string]: {
|
|
63
|
-
agreement: FileType | undefined;
|
|
64
|
-
openForOnboarding: boolean;
|
|
65
|
-
};
|
|
66
|
-
};
|
|
67
|
-
taxInfoRequired?: boolean;
|
|
68
|
-
externalOnboardingUrl?: string;
|
|
69
|
-
};
|
|
70
70
|
underlying?: {
|
|
71
71
|
poolId?: number;
|
|
72
72
|
};
|
|
@@ -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,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,mBAAmB,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,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"}
|
|
@@ -101,7 +101,12 @@ export interface WorkflowPolicy {
|
|
|
101
101
|
createdAt: string;
|
|
102
102
|
updatedAt?: string;
|
|
103
103
|
}
|
|
104
|
-
|
|
104
|
+
/**
|
|
105
|
+
* Legacy ("current state") pool metadata: the flat shape written by all pools to date. Any document
|
|
106
|
+
* with no `version` or `version < 2` is legacy and read as `PoolMetadataV1`. New writes are
|
|
107
|
+
* `PoolMetadataV2`; the management app migrates legacy pools forward before editing.
|
|
108
|
+
*/
|
|
109
|
+
export type PoolMetadataV1 = {
|
|
105
110
|
version?: number;
|
|
106
111
|
pool: {
|
|
107
112
|
name: string;
|
|
@@ -216,4 +221,227 @@ export type PoolMetadata = {
|
|
|
216
221
|
addressLabels?: Record<string, string>;
|
|
217
222
|
workflowPolicies?: WorkflowPolicy[];
|
|
218
223
|
};
|
|
224
|
+
/**
|
|
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).
|
|
232
|
+
*/
|
|
233
|
+
export type Visibility = 'public' | 'whitelisted' | 'hidden';
|
|
234
|
+
/**
|
|
235
|
+
* Constrained Markdown subset (paragraphs, hard newlines, `-`/`*` and `1.` lists, `**bold**`,
|
|
236
|
+
* `_italic_`, `[text](url)`). Raw HTML is stripped; sanitized by the reader on render.
|
|
237
|
+
*/
|
|
238
|
+
export type RichText = string;
|
|
239
|
+
export type ChartType = 'line' | 'area' | 'bar' | 'donut';
|
|
240
|
+
export type AxisFormat = 'number' | 'percent' | 'currency';
|
|
241
|
+
/**
|
|
242
|
+
* Live-chart datasets whose config is authored in metadata but whose data the app fetches live.
|
|
243
|
+
*
|
|
244
|
+
* Closed, app-owned registry — the SDK is the alignment point. The current values are PROVISIONAL
|
|
245
|
+
* placeholders and the set is expected to grow (centrifuge/apps-invest#200), but growth is
|
|
246
|
+
* deliberately gated: the SDK rejects unknown keys on write, so adding a key is a coordinated change
|
|
247
|
+
* across the management app, SDK, and invest app (and ships in an SDK release). Reads are not
|
|
248
|
+
* validated, so a newer document never breaks an older reader. The metadata only references a key;
|
|
249
|
+
* the app resolves it.
|
|
250
|
+
*/
|
|
251
|
+
export type DataRef = 'apyVsBenchmarks' | 'maturityDistribution';
|
|
252
|
+
/**
|
|
253
|
+
* App-owned section units rendered by the invest app (structure + content + data). Closed and
|
|
254
|
+
* SDK-validated on write; expected to grow additively via coordinated SDK releases (see
|
|
255
|
+
* {@link DataRef}). Current mapping: `onchainMetrics` = performance charts, `smartContracts` =
|
|
256
|
+
* addresses & smart contracts.
|
|
257
|
+
*/
|
|
258
|
+
export type SectionRef = 'onchainMetrics' | 'smartContracts';
|
|
259
|
+
/**
|
|
260
|
+
* App-owned indexer query/aggregation registry referenced by `liveTable` columns. Closed and
|
|
261
|
+
* SDK-validated on write. The current keys are PROVISIONAL: each is its own query and the set is
|
|
262
|
+
* expected to split into more granular per-series / per-date-pair keys (`monthlyReturn` is not yet
|
|
263
|
+
* defined). Adding or renaming a key is a coordinated SDK release — see {@link DataRef}.
|
|
264
|
+
*/
|
|
265
|
+
export type LiveMetric = 'tokenPrice' | 'nav' | 'apy30d' | 'navChange' | 'monthlyReturn';
|
|
266
|
+
/**
|
|
267
|
+
* App-owned dataset (row dimension) for `liveTable`. Closed and SDK-validated on write; grows via
|
|
268
|
+
* coordinated SDK releases — see {@link DataRef}.
|
|
269
|
+
*/
|
|
270
|
+
export type LiveDataset = 'monthlySummary';
|
|
271
|
+
export type ColumnFormat = 'text' | 'number' | 'percent' | 'currency';
|
|
272
|
+
export type ChartSeries = {
|
|
273
|
+
name: string;
|
|
274
|
+
/** Optional brand override; defaults to the theme palette. */
|
|
275
|
+
color?: string;
|
|
276
|
+
/** Categorical (bar/donut): `{ label, value }`; xy (line/area): `{ x, y }`. */
|
|
277
|
+
data: Array<{
|
|
278
|
+
label: string;
|
|
279
|
+
value: number;
|
|
280
|
+
} | {
|
|
281
|
+
x: string | number;
|
|
282
|
+
y: number;
|
|
283
|
+
}>;
|
|
284
|
+
};
|
|
285
|
+
/**
|
|
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.
|
|
288
|
+
*/
|
|
289
|
+
export type KeyFact = {
|
|
290
|
+
label: string;
|
|
291
|
+
value?: string;
|
|
292
|
+
valueRef?: 'apy';
|
|
293
|
+
tooltip?: string;
|
|
294
|
+
href?: string;
|
|
295
|
+
visibility?: Visibility;
|
|
296
|
+
};
|
|
297
|
+
type BlockBase = {
|
|
298
|
+
id: string;
|
|
299
|
+
title?: string;
|
|
300
|
+
visibility?: Visibility;
|
|
301
|
+
};
|
|
302
|
+
export type TextBlock = BlockBase & {
|
|
303
|
+
type: 'text';
|
|
304
|
+
body: RichText;
|
|
305
|
+
};
|
|
306
|
+
export type TableBlock = BlockBase & {
|
|
307
|
+
type: 'table';
|
|
308
|
+
headers: string[];
|
|
309
|
+
rows: Array<Array<string | number>>;
|
|
310
|
+
/** Optional, index-aligned to `headers`; per-column gating for static tables. */
|
|
311
|
+
columnVisibility?: Visibility[];
|
|
312
|
+
caption?: string;
|
|
313
|
+
asOf?: string;
|
|
314
|
+
};
|
|
315
|
+
export type ChartBlock = BlockBase & {
|
|
316
|
+
type: 'chart';
|
|
317
|
+
chartType: ChartType;
|
|
318
|
+
/** Inline metadata-supplied data ... */
|
|
319
|
+
series?: ChartSeries[];
|
|
320
|
+
/** ... or an app/indexer-computed dataset (mutually exclusive with `series`). */
|
|
321
|
+
dataRef?: DataRef;
|
|
322
|
+
stacked?: boolean;
|
|
323
|
+
legend?: boolean;
|
|
324
|
+
xAxis?: {
|
|
325
|
+
label?: string;
|
|
326
|
+
type?: 'category' | 'time' | 'number';
|
|
327
|
+
};
|
|
328
|
+
yAxis?: {
|
|
329
|
+
label?: string;
|
|
330
|
+
format?: AxisFormat;
|
|
331
|
+
currency?: string;
|
|
332
|
+
};
|
|
333
|
+
asOf?: string;
|
|
334
|
+
sourceNote?: string;
|
|
335
|
+
};
|
|
336
|
+
export type ImageBlock = BlockBase & {
|
|
337
|
+
type: 'image';
|
|
338
|
+
file: FileType;
|
|
339
|
+
alt?: string;
|
|
340
|
+
caption?: string;
|
|
341
|
+
};
|
|
342
|
+
export type KpiGroupBlock = BlockBase & {
|
|
343
|
+
type: 'kpiGroup';
|
|
344
|
+
columns?: 1 | 2 | 3 | 4;
|
|
345
|
+
items: Array<{
|
|
346
|
+
label: string;
|
|
347
|
+
value: string;
|
|
348
|
+
tooltip?: string;
|
|
349
|
+
trend?: 'up' | 'down' | 'neutral';
|
|
350
|
+
visibility?: Visibility;
|
|
351
|
+
}>;
|
|
352
|
+
};
|
|
353
|
+
/** A metadata-authored column over an app-defined live dataset. */
|
|
354
|
+
export type LiveColumn = {
|
|
355
|
+
/** Issuer-authored label + order. */
|
|
356
|
+
header: string;
|
|
357
|
+
format?: ColumnFormat;
|
|
358
|
+
visibility?: Visibility;
|
|
359
|
+
} & ({
|
|
360
|
+
source: 'indexer';
|
|
361
|
+
metric: LiveMetric;
|
|
362
|
+
} | {
|
|
363
|
+
source: 'hardcoded';
|
|
364
|
+
key: string;
|
|
365
|
+
} | {
|
|
366
|
+
source: 'static';
|
|
367
|
+
values: Array<string | number>;
|
|
368
|
+
});
|
|
369
|
+
export type LiveTableBlock = BlockBase & {
|
|
370
|
+
type: 'liveTable';
|
|
371
|
+
/** App owns the row dimension (e.g. recent months) + available metrics. */
|
|
372
|
+
dataRef: LiveDataset;
|
|
373
|
+
columns: LiveColumn[];
|
|
374
|
+
caption?: string;
|
|
375
|
+
asOf?: string;
|
|
376
|
+
};
|
|
377
|
+
/** Tabs hold a leaf block only (no nested section/tabGroup) to keep nesting bounded. */
|
|
378
|
+
export type TabBlock = TextBlock | TableBlock | ChartBlock | KpiGroupBlock;
|
|
379
|
+
export type TabGroupBlock = BlockBase & {
|
|
380
|
+
type: 'tabGroup';
|
|
381
|
+
tabs: Array<{
|
|
382
|
+
label: string;
|
|
383
|
+
block: TabBlock;
|
|
384
|
+
}>;
|
|
385
|
+
};
|
|
386
|
+
export type ContentBlock = TextBlock | TableBlock | ChartBlock | ImageBlock | KpiGroupBlock | TabGroupBlock | LiveTableBlock;
|
|
387
|
+
/** A pointer to one of the closed, app-owned section units. */
|
|
388
|
+
export type SectionRefBlock = {
|
|
389
|
+
type: 'section';
|
|
390
|
+
id: string;
|
|
391
|
+
ref: SectionRef;
|
|
392
|
+
/** Optional label override; the app supplies a sensible default. */
|
|
393
|
+
title?: string;
|
|
394
|
+
visibility?: Visibility;
|
|
395
|
+
};
|
|
396
|
+
export type LayoutItem = ContentBlock | SectionRefBlock;
|
|
397
|
+
export type Factsheet = {
|
|
398
|
+
/** Top region, left column, ordered (authored blocks + app section refs e.g. `onchainMetrics`). */
|
|
399
|
+
body: LayoutItem[];
|
|
400
|
+
/** Top region, right column, ordered. */
|
|
401
|
+
keyFacts: KeyFact[];
|
|
402
|
+
/** Full-width region below, ordered. Omit to let the app render its default sections. */
|
|
403
|
+
sections?: LayoutItem[];
|
|
404
|
+
};
|
|
405
|
+
/** A pool rating without the unused `reportFile` PDF (migrated into a Documents block in v2). */
|
|
406
|
+
export type PoolRatingV2 = {
|
|
407
|
+
agency?: string;
|
|
408
|
+
value?: string;
|
|
409
|
+
reportUrl?: string;
|
|
410
|
+
};
|
|
411
|
+
/**
|
|
412
|
+
* Versioned, factsheet-aware pool metadata. Drops fields unused by every consumer
|
|
413
|
+
* (`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.
|
|
417
|
+
*/
|
|
418
|
+
export type PoolMetadataV2 = {
|
|
419
|
+
version: 2;
|
|
420
|
+
pool: Omit<PoolMetadataV1['pool'], 'newInvestmentsStatus' | 'reports' | 'details' | 'issuer' | 'poolRatings'> & {
|
|
421
|
+
issuer: Pick<PoolMetadataV1['pool']['issuer'], 'name' | 'email' | 'logo'>;
|
|
422
|
+
poolRatings?: PoolRatingV2[];
|
|
423
|
+
factsheet?: Factsheet;
|
|
424
|
+
};
|
|
425
|
+
shareClasses: PoolMetadataV1['shareClasses'];
|
|
426
|
+
merkleProofManager?: PoolMetadataV1['merkleProofManager'];
|
|
427
|
+
onboarding?: {
|
|
428
|
+
kycRestrictedCountries?: string[];
|
|
429
|
+
kybRestrictedCountries?: string[];
|
|
430
|
+
};
|
|
431
|
+
holdings?: PoolMetadataV1['holdings'];
|
|
432
|
+
addressLabels?: PoolMetadataV1['addressLabels'];
|
|
433
|
+
workflowPolicies?: PoolMetadataV1['workflowPolicies'];
|
|
434
|
+
};
|
|
435
|
+
/**
|
|
436
|
+
* 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`.
|
|
439
|
+
*/
|
|
440
|
+
export type PoolMetadata = PoolMetadataV1 | PoolMetadataV2;
|
|
441
|
+
export declare function isPoolMetadataV2(metadata: PoolMetadata): metadata is PoolMetadataV2;
|
|
442
|
+
/** A document with no `version` or `version < 2` is legacy and must be migrated before editing. */
|
|
443
|
+
export declare function isLegacyPoolMetadata(metadata: {
|
|
444
|
+
version?: number;
|
|
445
|
+
}): boolean;
|
|
446
|
+
export {};
|
|
219
447
|
//# sourceMappingURL=poolMetadata.d.ts.map
|
|
@@ -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,2 +1,8 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export function isPoolMetadataV2(metadata) {
|
|
2
|
+
return metadata.version === 2;
|
|
3
|
+
}
|
|
4
|
+
/** A document with no `version` or `version < 2` is legacy and must be migrated before editing. */
|
|
5
|
+
export function isLegacyPoolMetadata(metadata) {
|
|
6
|
+
return metadata.version == null || metadata.version < 2;
|
|
7
|
+
}
|
|
2
8
|
//# sourceMappingURL=poolMetadata.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"poolMetadata.js","sourceRoot":"","sources":["../../src/types/poolMetadata.ts"],"names":[],"mappings":""}
|
|
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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type PoolMetadata, type PoolMetadataV2 } from '../types/poolMetadata.js';
|
|
2
|
+
/**
|
|
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.
|
|
5
|
+
*
|
|
6
|
+
* - Strips fields unused by every consumer (`newInvestmentsStatus`, `reports`, `loanTemplates`,
|
|
7
|
+
* `issuer.repName/shortDescription`, onboarding extras) and reshapes `issuer`/`poolRatings`.
|
|
8
|
+
* - Maps legacy APY modes across `shareClasses[*].apy`.
|
|
9
|
+
* - Projects the legacy display fields into `pool.factsheet`.
|
|
10
|
+
*/
|
|
11
|
+
export declare function migratePoolMetadataToV2(legacy: PoolMetadata): PoolMetadataV2;
|
|
12
|
+
/**
|
|
13
|
+
* Hand-rolled structural validator for v2 pool metadata, in the style of
|
|
14
|
+
* {@link parseMarketplaceCatalog}. Validates the discriminant (`version === 2`), `pool.name`, and
|
|
15
|
+
* the full `pool.factsheet` content model (the layout the SDK is responsible for). Engine fields
|
|
16
|
+
* (`shareClasses`, `workflowPolicies`, `holdings`, `addressLabels`, …) are passed through
|
|
17
|
+
* unchecked here — they are validated where they are consumed (e.g. workflows via
|
|
18
|
+
* {@link parseMarketplaceCatalog}). Throws `pool metadata v2: …` on the first malformed field;
|
|
19
|
+
* tolerates missing optionals (visibility defaults to `'public'` app-side). Returns the input
|
|
20
|
+
* narrowed to {@link PoolMetadataV2} on success.
|
|
21
|
+
*/
|
|
22
|
+
export declare function parsePoolMetadataV2(raw: unknown): PoolMetadataV2;
|
|
23
|
+
//# sourceMappingURL=poolMetadataMigration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"poolMetadataMigration.d.ts","sourceRoot":"","sources":["../../src/utils/poolMetadataMigration.ts"],"names":[],"mappings":"AACA,OAAO,EAaL,KAAK,YAAY,EAEjB,KAAK,cAAc,EAGpB,MAAM,0BAA0B,CAAA;AAkGjC;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,YAAY,GAAG,cAAc,CAqC5E;AAqOD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,cAAc,CAOhE"}
|