@open-captable-protocol/canton 0.2.246 → 0.2.247
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.
|
@@ -89,6 +89,7 @@ export declare function normalizeObjectType<T extends string>(objectType: T): st
|
|
|
89
89
|
* 2. Normalizes quantity_source based on quantity presence (see normalizeQuantitySource)
|
|
90
90
|
* 3. Strips Document fields that the DAML contract does not model (e.g. `date`)
|
|
91
91
|
* 4. Canonicalizes Stakeholder relationships (`current_relationship` -> `current_relationships`)
|
|
92
|
+
* 5. Canonicalizes StockPlan class IDs (`stock_class_id` -> `stock_class_ids`)
|
|
92
93
|
*
|
|
93
94
|
* @param data - The OCF data object that may contain an object_type field
|
|
94
95
|
* @returns The data with normalized fields (shallow copy if modified)
|
|
@@ -103,6 +104,9 @@ export declare function normalizeObjectType<T extends string>(objectType: T): st
|
|
|
103
104
|
*
|
|
104
105
|
* normalizeOcfData({ object_type: 'DOCUMENT', id: 'doc-1', date: '2024-01-15' })
|
|
105
106
|
* // => { object_type: 'DOCUMENT', id: 'doc-1' }
|
|
107
|
+
*
|
|
108
|
+
* normalizeOcfData({ object_type: 'STOCK_PLAN', stock_class_id: 'sc-1', id: 'sp-1', plan_name: 'Plan', initial_shares_reserved: '1000' })
|
|
109
|
+
* // => { object_type: 'STOCK_PLAN', stock_class_id: 'sc-1', stock_class_ids: ['sc-1'], id: 'sp-1', plan_name: 'Plan', initial_shares_reserved: '1000' }
|
|
106
110
|
* ```
|
|
107
111
|
*/
|
|
108
112
|
export declare function normalizeOcfData<T extends Record<string, unknown>>(data: T): T;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planSecurityAliases.d.ts","sourceRoot":"","sources":["../../src/utils/planSecurityAliases.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AAEH;;GAEG;AACH,eAAO,MAAM,wCAAwC;;;;;;;;CAQ3C,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;CAQhC,CAAC;AAEX,4CAA4C;AAC5C,MAAM,MAAM,sBAAsB,GAAG,MAAM,OAAO,wCAAwC,CAAC;AAE3F,4CAA4C;AAC5C,MAAM,MAAM,sBAAsB,GAAG,MAAM,OAAO,6BAA6B,CAAC;AAEhF;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,sBAAsB,CAErF;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,IAAI,sBAAsB,CAEjG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAKrE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,UAAU,EAAE,CAAC,GAAG,MAAM,CAK3E;
|
|
1
|
+
{"version":3,"file":"planSecurityAliases.d.ts","sourceRoot":"","sources":["../../src/utils/planSecurityAliases.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AAEH;;GAEG;AACH,eAAO,MAAM,wCAAwC;;;;;;;;CAQ3C,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;CAQhC,CAAC;AAEX,4CAA4C;AAC5C,MAAM,MAAM,sBAAsB,GAAG,MAAM,OAAO,wCAAwC,CAAC;AAE3F,4CAA4C;AAC5C,MAAM,MAAM,sBAAsB,GAAG,MAAM,OAAO,6BAA6B,CAAC;AAEhF;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,IAAI,sBAAsB,CAErF;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,IAAI,sBAAsB,CAEjG;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,IAAI,EAAE,CAAC,GAAG,MAAM,CAKrE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,EAAE,UAAU,EAAE,CAAC,GAAG,MAAM,CAK3E;AA+LD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAuB9E"}
|
|
@@ -213,6 +213,33 @@ function normalizeStakeholderRelationships(data) {
|
|
|
213
213
|
current_relationships: [legacyRelationship],
|
|
214
214
|
};
|
|
215
215
|
}
|
|
216
|
+
function normalizeStockPlanClassIds(data) {
|
|
217
|
+
const isStockPlanObject = data.object_type === 'STOCK_PLAN' || (0, typeGuards_1.isOcfStockPlan)(data);
|
|
218
|
+
if (!isStockPlanObject)
|
|
219
|
+
return data;
|
|
220
|
+
const classIdsValue = data.stock_class_ids;
|
|
221
|
+
// If modern field is already present as an array, nothing to normalize
|
|
222
|
+
if (Array.isArray(classIdsValue))
|
|
223
|
+
return data;
|
|
224
|
+
// If modern field is present but not an array (including null), that's invalid
|
|
225
|
+
if (classIdsValue !== undefined) {
|
|
226
|
+
throw new Error(`Invalid stock plan stock_class_ids: expected array, got ${typeof classIdsValue}`);
|
|
227
|
+
}
|
|
228
|
+
// Modern field is missing — check for deprecated singular field
|
|
229
|
+
if (data.stock_class_id !== undefined && typeof data.stock_class_id !== 'string') {
|
|
230
|
+
throw new Error(`Invalid stock plan stock_class_id: expected string, got ${typeof data.stock_class_id}`);
|
|
231
|
+
}
|
|
232
|
+
if (typeof data.stock_class_id !== 'string')
|
|
233
|
+
return data;
|
|
234
|
+
const legacyClassId = data.stock_class_id.trim();
|
|
235
|
+
if (legacyClassId.length === 0) {
|
|
236
|
+
throw new Error('Invalid stock plan stock_class_id: empty string');
|
|
237
|
+
}
|
|
238
|
+
return {
|
|
239
|
+
...data,
|
|
240
|
+
stock_class_ids: [legacyClassId],
|
|
241
|
+
};
|
|
242
|
+
}
|
|
216
243
|
/**
|
|
217
244
|
* Normalize OCF data for consistent comparison.
|
|
218
245
|
*
|
|
@@ -221,6 +248,7 @@ function normalizeStakeholderRelationships(data) {
|
|
|
221
248
|
* 2. Normalizes quantity_source based on quantity presence (see normalizeQuantitySource)
|
|
222
249
|
* 3. Strips Document fields that the DAML contract does not model (e.g. `date`)
|
|
223
250
|
* 4. Canonicalizes Stakeholder relationships (`current_relationship` -> `current_relationships`)
|
|
251
|
+
* 5. Canonicalizes StockPlan class IDs (`stock_class_id` -> `stock_class_ids`)
|
|
224
252
|
*
|
|
225
253
|
* @param data - The OCF data object that may contain an object_type field
|
|
226
254
|
* @returns The data with normalized fields (shallow copy if modified)
|
|
@@ -235,6 +263,9 @@ function normalizeStakeholderRelationships(data) {
|
|
|
235
263
|
*
|
|
236
264
|
* normalizeOcfData({ object_type: 'DOCUMENT', id: 'doc-1', date: '2024-01-15' })
|
|
237
265
|
* // => { object_type: 'DOCUMENT', id: 'doc-1' }
|
|
266
|
+
*
|
|
267
|
+
* normalizeOcfData({ object_type: 'STOCK_PLAN', stock_class_id: 'sc-1', id: 'sp-1', plan_name: 'Plan', initial_shares_reserved: '1000' })
|
|
268
|
+
* // => { object_type: 'STOCK_PLAN', stock_class_id: 'sc-1', stock_class_ids: ['sc-1'], id: 'sp-1', plan_name: 'Plan', initial_shares_reserved: '1000' }
|
|
238
269
|
* ```
|
|
239
270
|
*/
|
|
240
271
|
function normalizeOcfData(data) {
|
|
@@ -252,6 +283,8 @@ function normalizeOcfData(data) {
|
|
|
252
283
|
result = stripDocumentNonDamlFields(result);
|
|
253
284
|
// Canonicalize deprecated/current stakeholder relationship fields
|
|
254
285
|
result = normalizeStakeholderRelationships(result);
|
|
286
|
+
// Canonicalize deprecated/current stock plan class ID fields
|
|
287
|
+
result = normalizeStockPlanClassIds(result);
|
|
255
288
|
return result;
|
|
256
289
|
}
|
|
257
290
|
//# sourceMappingURL=planSecurityAliases.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"planSecurityAliases.js","sourceRoot":"","sources":["../../src/utils/planSecurityAliases.ts"],"names":[],"mappings":";;;AAqDA,4DAEC;AAQD,4DAEC;AAgBD,kDAKC;AAgBD,kDAKC;
|
|
1
|
+
{"version":3,"file":"planSecurityAliases.js","sourceRoot":"","sources":["../../src/utils/planSecurityAliases.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@open-captable-protocol/canton",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.247",
|
|
4
4
|
"description": "A TypeScript SDK for interacting with the Open CapTable Protocol (OCP) Factory contract on Canton blockchain",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|