@open-captable-protocol/canton 0.2.194 → 0.2.196

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,7 +2,7 @@
2
2
  * Query Canton for the current state of a CapTable contract.
3
3
  *
4
4
  * Provides a snapshot of all OCF entities currently on-chain for an issuer,
5
- * enabling stateless replication by comparing against database state.
5
+ * enabling stateless replication by comparing against a source of truth.
6
6
  *
7
7
  * @module getCapTableState
8
8
  */
@@ -3,7 +3,7 @@
3
3
  * Query Canton for the current state of a CapTable contract.
4
4
  *
5
5
  * Provides a snapshot of all OCF entities currently on-chain for an issuer,
6
- * enabling stateless replication by comparing against database state.
6
+ * enabling stateless replication by comparing against a source of truth.
7
7
  *
8
8
  * @module getCapTableState
9
9
  */
@@ -2,8 +2,8 @@
2
2
  * Replication helpers for cap table synchronization.
3
3
  *
4
4
  * Provides utilities for:
5
- * - Mapping database types to SDK entity types
6
- * - Computing replication diffs between DB and Canton state
5
+ * - Mapping categorized OCF types to SDK entity types
6
+ * - Computing replication diffs between source and Canton state
7
7
  * - Human-readable labels for display
8
8
  *
9
9
  * @module replicationHelpers
@@ -11,25 +11,30 @@
11
11
  import type { OcfEntityType } from '../functions/OpenCapTable/capTable/batchTypes';
12
12
  import type { CapTableState } from '../functions/OpenCapTable/capTable/getCapTableState';
13
13
  /**
14
- * Map database type/subtype to OcfEntityType.
14
+ * Map categorized OCF type/subtype to OcfEntityType.
15
15
  *
16
- * The database schema uses:
17
- * - Direct types: STAKEHOLDER, STOCK_CLASS, STOCK_PLAN stored in `type` column
18
- * - Object subtypes: type='OBJECT', actual type in `subtype` column
19
- * - Transaction subtypes: type='TRANSACTION', actual type in `subtype` column (TX_ prefix)
16
+ * OCF data may be organized into categories:
17
+ * - Direct types: STAKEHOLDER, STOCK_CLASS, STOCK_PLAN as the category
18
+ * - Object subtypes: category='OBJECT', actual type in subtype
19
+ * - Transaction subtypes: category='TRANSACTION', actual type in subtype (TX_ prefix)
20
20
  *
21
- * @param dbType - The database OCF type (STAKEHOLDER, OBJECT, TRANSACTION, etc.)
22
- * @param dbSubtype - The database subtype for OBJECT and TRANSACTION types
21
+ * @param categoryType - The OCF category (STAKEHOLDER, OBJECT, TRANSACTION, etc.)
22
+ * @param subtype - The subtype for OBJECT and TRANSACTION categories
23
23
  * @returns The corresponding OcfEntityType, or null if not supported
24
24
  *
25
25
  * @example
26
26
  * ```typescript
27
- * mapDbTypeToEntityType('STAKEHOLDER', null); // 'stakeholder'
28
- * mapDbTypeToEntityType('OBJECT', 'DOCUMENT'); // 'document'
29
- * mapDbTypeToEntityType('TRANSACTION', 'TX_STOCK_ISSUANCE'); // 'stockIssuance'
27
+ * mapCategorizedTypeToEntityType('STAKEHOLDER', null); // 'stakeholder'
28
+ * mapCategorizedTypeToEntityType('DOCUMENT', null); // 'document' (direct type)
29
+ * mapCategorizedTypeToEntityType('OBJECT', 'DOCUMENT'); // 'document' (categorized)
30
+ * mapCategorizedTypeToEntityType('TRANSACTION', 'TX_STOCK_ISSUANCE'); // 'stockIssuance'
30
31
  * ```
31
32
  */
32
- export declare function mapDbTypeToEntityType(dbType: string, dbSubtype: string | null): OcfEntityType | null;
33
+ export declare function mapCategorizedTypeToEntityType(categoryType: string, subtype: string | null): OcfEntityType | null;
34
+ /**
35
+ * @deprecated Use `mapCategorizedTypeToEntityType` instead. This alias will be removed in a future version.
36
+ */
37
+ export declare const mapDbTypeToEntityType: typeof mapCategorizedTypeToEntityType;
33
38
  /**
34
39
  * Get a human-readable label for an entity type with count.
35
40
  *
@@ -46,7 +51,7 @@ export declare function mapDbTypeToEntityType(dbType: string, dbSubtype: string
46
51
  */
47
52
  export declare function getEntityTypeLabel(type: OcfEntityType, count: number): string;
48
53
  /**
49
- * A single item to be synced from DB to Canton.
54
+ * A single item to be synced to Canton.
50
55
  */
51
56
  export interface ReplicationItem {
52
57
  /** OCF object ID */
@@ -59,14 +64,14 @@ export interface ReplicationItem {
59
64
  data?: unknown;
60
65
  }
61
66
  /**
62
- * Result of comparing DB state (desired) to Canton state (actual).
67
+ * Result of comparing source state (desired) to Canton state (actual).
63
68
  */
64
69
  export interface ReplicationDiff {
65
- /** Items in DB but not in Canton - need to be created */
70
+ /** Items in source but not in Canton - need to be created */
66
71
  creates: ReplicationItem[];
67
72
  /** Items in both - may need to be edited */
68
73
  edits: ReplicationItem[];
69
- /** Items in Canton but not in DB - may need to be deleted */
74
+ /** Items in Canton but not in source - may need to be deleted */
70
75
  deletes: ReplicationItem[];
71
76
  /** Total number of operations */
72
77
  total: number;
@@ -76,7 +81,7 @@ export interface ReplicationDiff {
76
81
  */
77
82
  export interface ComputeReplicationDiffOptions {
78
83
  /**
79
- * Whether to include delete operations for items in Canton but not in DB.
84
+ * Whether to include delete operations for items in Canton but not in source.
80
85
  * Default: false (safer - doesn't delete data)
81
86
  */
82
87
  syncDeletes?: boolean;
@@ -89,29 +94,29 @@ export interface ComputeReplicationDiffOptions {
89
94
  alwaysEdit?: boolean;
90
95
  }
91
96
  /**
92
- * Compute what needs to be synced from DB to Canton.
97
+ * Compute what needs to be synced to Canton.
93
98
  *
94
- * Compares a list of DB items (desired state) against Canton state (actual state)
99
+ * Compares a list of source items (desired state) against Canton state (actual state)
95
100
  * and returns operations needed to synchronize them.
96
101
  *
97
- * @param dbItems - OCF items from database (desired state)
102
+ * @param sourceItems - OCF items from any source (desired state)
98
103
  * @param cantonState - Current Canton state from getCapTableState()
99
104
  * @param options - Sync options
100
105
  * @returns Replication diff with creates, edits, and deletes
101
106
  *
102
107
  * @example
103
108
  * ```typescript
104
- * const dbItems = [
109
+ * const sourceItems = [
105
110
  * { ocfId: 'stakeholder-1', entityType: 'stakeholder', data: {...} },
106
111
  * { ocfId: 'stock-class-1', entityType: 'stockClass', data: {...} },
107
112
  * ];
108
113
  * const cantonState = await getCapTableState(client, issuerPartyId);
109
- * const diff = computeReplicationDiff(dbItems, cantonState, { syncDeletes: true });
110
- * // diff.creates = items in DB but not Canton
111
- * // diff.deletes = items in Canton but not DB
114
+ * const diff = computeReplicationDiff(sourceItems, cantonState, { syncDeletes: true });
115
+ * // diff.creates = items in source but not Canton
116
+ * // diff.deletes = items in Canton but not source
112
117
  * ```
113
118
  */
114
- export declare function computeReplicationDiff(dbItems: Array<{
119
+ export declare function computeReplicationDiff(sourceItems: Array<{
115
120
  ocfId: string;
116
121
  entityType: OcfEntityType;
117
122
  data: unknown;
@@ -1 +1 @@
1
- {"version":3,"file":"replicationHelpers.d.ts","sourceRoot":"","sources":["../../src/utils/replicationHelpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AAqGzF;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,aAAa,GAAG,IAAI,CAiBpG;AA2FD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAI7E;AAMD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,UAAU,EAAE,aAAa,CAAC;IAC1B,2BAA2B;IAC3B,SAAS,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;IACxC,0CAA0C;IAC1C,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,yDAAyD;IACzD,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,4CAA4C;IAC5C,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,6DAA6D;IAC7D,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,EAC3E,WAAW,EAAE,aAAa,EAC1B,OAAO,GAAE,6BAAkC,GAC1C,eAAe,CAiFjB"}
1
+ {"version":3,"file":"replicationHelpers.d.ts","sourceRoot":"","sources":["../../src/utils/replicationHelpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qDAAqD,CAAC;AAuHzF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,8BAA8B,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,aAAa,GAAG,IAAI,CAiBjH;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,uCAAiC,CAAC;AA2FpE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAI7E;AAMD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,+BAA+B;IAC/B,UAAU,EAAE,aAAa,CAAC;IAC1B,2BAA2B;IAC3B,SAAS,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;IACxC,0CAA0C;IAC1C,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,6DAA6D;IAC7D,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,4CAA4C;IAC5C,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,iEAAiE;IACjE,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C;;;OAGG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,KAAK,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,aAAa,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC,EAC/E,WAAW,EAAE,aAAa,EAC1B,OAAO,GAAE,6BAAkC,GAC1C,eAAe,CAiFjB"}
@@ -3,43 +3,61 @@
3
3
  * Replication helpers for cap table synchronization.
4
4
  *
5
5
  * Provides utilities for:
6
- * - Mapping database types to SDK entity types
7
- * - Computing replication diffs between DB and Canton state
6
+ * - Mapping categorized OCF types to SDK entity types
7
+ * - Computing replication diffs between source and Canton state
8
8
  * - Human-readable labels for display
9
9
  *
10
10
  * @module replicationHelpers
11
11
  */
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.mapDbTypeToEntityType = mapDbTypeToEntityType;
13
+ exports.mapDbTypeToEntityType = void 0;
14
+ exports.mapCategorizedTypeToEntityType = mapCategorizedTypeToEntityType;
14
15
  exports.getEntityTypeLabel = getEntityTypeLabel;
15
16
  exports.computeReplicationDiff = computeReplicationDiff;
16
17
  const planSecurityAliases_1 = require("./planSecurityAliases");
17
18
  // ============================================================================
18
- // DB Type Mapping
19
+ // Categorized Type Mapping
19
20
  // ============================================================================
20
21
  /**
21
- * Direct database type to OcfEntityType mappings.
22
- * These types are stored directly in the `type` column.
22
+ * Object type mappings shared between DIRECT_TYPE_MAP and OBJECT_SUBTYPE_MAP.
23
+ * These types can be stored either directly (e.g., type='DOCUMENT') or
24
+ * categorized (e.g., type='OBJECT', subtype='DOCUMENT').
25
+ *
26
+ * IMPORTANT: Add new object types here to ensure both direct and categorized
27
+ * formats are supported consistently.
28
+ */
29
+ const OBJECT_TYPES = {
30
+ DOCUMENT: 'document',
31
+ VESTING_TERMS: 'vestingTerms',
32
+ STOCK_LEGEND_TEMPLATE: 'stockLegendTemplate',
33
+ VALUATION: 'valuation',
34
+ };
35
+ /**
36
+ * Direct category type to OcfEntityType mappings.
37
+ * These types use the category directly as the type identifier.
38
+ *
39
+ * Note: Some databases store object types directly (DOCUMENT, VESTING_TERMS, etc.)
40
+ * rather than using the OBJECT category with subtypes. Both formats are supported.
23
41
  */
24
42
  const DIRECT_TYPE_MAP = {
43
+ // Core entity types
25
44
  STAKEHOLDER: 'stakeholder',
26
45
  STOCK_CLASS: 'stockClass',
27
46
  STOCK_PLAN: 'stockPlan',
47
+ // Object types (some DBs store these directly instead of OBJECT/subtype)
48
+ ...OBJECT_TYPES,
28
49
  };
29
50
  /**
30
51
  * OBJECT subtype to OcfEntityType mappings.
31
- * These are stored with type='OBJECT' and the actual type in subtype.
52
+ * These use category='OBJECT' with the actual type in the subtype field.
32
53
  */
33
54
  const OBJECT_SUBTYPE_MAP = {
34
- DOCUMENT: 'document',
35
- VESTING_TERMS: 'vestingTerms',
36
- STOCK_LEGEND_TEMPLATE: 'stockLegendTemplate',
37
- VALUATION: 'valuation',
55
+ ...OBJECT_TYPES,
38
56
  };
39
57
  /**
40
58
  * TRANSACTION subtype to OcfEntityType mappings.
41
- * These are stored with type='TRANSACTION' and the actual type in subtype.
42
- * DB uses TX_ prefix with UPPER_SNAKE_CASE, SDK uses camelCase.
59
+ * These use category='TRANSACTION' with the actual type in the subtype field.
60
+ * Subtypes use TX_ prefix with UPPER_SNAKE_CASE, SDK uses camelCase.
43
61
  */
44
62
  const TRANSACTION_SUBTYPE_MAP = {
45
63
  // Stock Transactions (9 types)
@@ -101,39 +119,44 @@ const TRANSACTION_SUBTYPE_MAP = {
101
119
  TX_PLAN_SECURITY_RETRACTION: 'planSecurityRetraction',
102
120
  };
103
121
  /**
104
- * Map database type/subtype to OcfEntityType.
122
+ * Map categorized OCF type/subtype to OcfEntityType.
105
123
  *
106
- * The database schema uses:
107
- * - Direct types: STAKEHOLDER, STOCK_CLASS, STOCK_PLAN stored in `type` column
108
- * - Object subtypes: type='OBJECT', actual type in `subtype` column
109
- * - Transaction subtypes: type='TRANSACTION', actual type in `subtype` column (TX_ prefix)
124
+ * OCF data may be organized into categories:
125
+ * - Direct types: STAKEHOLDER, STOCK_CLASS, STOCK_PLAN as the category
126
+ * - Object subtypes: category='OBJECT', actual type in subtype
127
+ * - Transaction subtypes: category='TRANSACTION', actual type in subtype (TX_ prefix)
110
128
  *
111
- * @param dbType - The database OCF type (STAKEHOLDER, OBJECT, TRANSACTION, etc.)
112
- * @param dbSubtype - The database subtype for OBJECT and TRANSACTION types
129
+ * @param categoryType - The OCF category (STAKEHOLDER, OBJECT, TRANSACTION, etc.)
130
+ * @param subtype - The subtype for OBJECT and TRANSACTION categories
113
131
  * @returns The corresponding OcfEntityType, or null if not supported
114
132
  *
115
133
  * @example
116
134
  * ```typescript
117
- * mapDbTypeToEntityType('STAKEHOLDER', null); // 'stakeholder'
118
- * mapDbTypeToEntityType('OBJECT', 'DOCUMENT'); // 'document'
119
- * mapDbTypeToEntityType('TRANSACTION', 'TX_STOCK_ISSUANCE'); // 'stockIssuance'
135
+ * mapCategorizedTypeToEntityType('STAKEHOLDER', null); // 'stakeholder'
136
+ * mapCategorizedTypeToEntityType('DOCUMENT', null); // 'document' (direct type)
137
+ * mapCategorizedTypeToEntityType('OBJECT', 'DOCUMENT'); // 'document' (categorized)
138
+ * mapCategorizedTypeToEntityType('TRANSACTION', 'TX_STOCK_ISSUANCE'); // 'stockIssuance'
120
139
  * ```
121
140
  */
122
- function mapDbTypeToEntityType(dbType, dbSubtype) {
141
+ function mapCategorizedTypeToEntityType(categoryType, subtype) {
123
142
  // Direct mappings
124
- if (dbType in DIRECT_TYPE_MAP) {
125
- return DIRECT_TYPE_MAP[dbType];
143
+ if (categoryType in DIRECT_TYPE_MAP) {
144
+ return DIRECT_TYPE_MAP[categoryType];
126
145
  }
127
146
  // Object subtypes
128
- if (dbType === 'OBJECT' && dbSubtype) {
129
- return OBJECT_SUBTYPE_MAP[dbSubtype] ?? null;
147
+ if (categoryType === 'OBJECT' && subtype) {
148
+ return OBJECT_SUBTYPE_MAP[subtype] ?? null;
130
149
  }
131
150
  // Transaction subtypes
132
- if (dbType === 'TRANSACTION' && dbSubtype) {
133
- return TRANSACTION_SUBTYPE_MAP[dbSubtype] ?? null;
151
+ if (categoryType === 'TRANSACTION' && subtype) {
152
+ return TRANSACTION_SUBTYPE_MAP[subtype] ?? null;
134
153
  }
135
154
  return null;
136
155
  }
156
+ /**
157
+ * @deprecated Use `mapCategorizedTypeToEntityType` instead. This alias will be removed in a future version.
158
+ */
159
+ exports.mapDbTypeToEntityType = mapCategorizedTypeToEntityType;
137
160
  // ============================================================================
138
161
  // Human-Readable Labels
139
162
  // ============================================================================
@@ -232,39 +255,39 @@ function getEntityTypeLabel(type, count) {
232
255
  return `${count} ${count === 1 ? singular : plural}`;
233
256
  }
234
257
  /**
235
- * Compute what needs to be synced from DB to Canton.
258
+ * Compute what needs to be synced to Canton.
236
259
  *
237
- * Compares a list of DB items (desired state) against Canton state (actual state)
260
+ * Compares a list of source items (desired state) against Canton state (actual state)
238
261
  * and returns operations needed to synchronize them.
239
262
  *
240
- * @param dbItems - OCF items from database (desired state)
263
+ * @param sourceItems - OCF items from any source (desired state)
241
264
  * @param cantonState - Current Canton state from getCapTableState()
242
265
  * @param options - Sync options
243
266
  * @returns Replication diff with creates, edits, and deletes
244
267
  *
245
268
  * @example
246
269
  * ```typescript
247
- * const dbItems = [
270
+ * const sourceItems = [
248
271
  * { ocfId: 'stakeholder-1', entityType: 'stakeholder', data: {...} },
249
272
  * { ocfId: 'stock-class-1', entityType: 'stockClass', data: {...} },
250
273
  * ];
251
274
  * const cantonState = await getCapTableState(client, issuerPartyId);
252
- * const diff = computeReplicationDiff(dbItems, cantonState, { syncDeletes: true });
253
- * // diff.creates = items in DB but not Canton
254
- * // diff.deletes = items in Canton but not DB
275
+ * const diff = computeReplicationDiff(sourceItems, cantonState, { syncDeletes: true });
276
+ * // diff.creates = items in source but not Canton
277
+ * // diff.deletes = items in Canton but not source
255
278
  * ```
256
279
  */
257
- function computeReplicationDiff(dbItems, cantonState, options = {}) {
280
+ function computeReplicationDiff(sourceItems, cantonState, options = {}) {
258
281
  const { syncDeletes = false, alwaysEdit = false } = options;
259
282
  const creates = [];
260
283
  const edits = [];
261
284
  const deletes = [];
262
- // Track DB items by type for delete detection
263
- const dbIdsByType = new Map();
285
+ // Track source items by type for delete detection
286
+ const sourceIdsByType = new Map();
264
287
  // Track seen items to prevent duplicate create/edit operations
265
288
  const seenItems = new Set();
266
- // Process each DB item
267
- for (const item of dbItems) {
289
+ // Process each source item
290
+ for (const item of sourceItems) {
268
291
  // Skip duplicate items (same ocfId + entityType)
269
292
  const itemKey = `${item.entityType}:${item.ocfId}`;
270
293
  if (seenItems.has(itemKey)) {
@@ -275,17 +298,17 @@ function computeReplicationDiff(dbItems, cantonState, options = {}) {
275
298
  // Canton stores planSecurity items under equity_compensation_* fields
276
299
  const normalizedType = (0, planSecurityAliases_1.normalizeEntityType)(item.entityType);
277
300
  // Track for delete detection (using normalized type to match Canton's storage)
278
- let typeIds = dbIdsByType.get(normalizedType);
301
+ let typeIds = sourceIdsByType.get(normalizedType);
279
302
  if (!typeIds) {
280
303
  typeIds = new Set();
281
- dbIdsByType.set(normalizedType, typeIds);
304
+ sourceIdsByType.set(normalizedType, typeIds);
282
305
  }
283
306
  typeIds.add(item.ocfId);
284
307
  // Check if exists in Canton (using normalized type)
285
308
  const cantonIds = cantonState.entities.get(normalizedType) ?? new Set();
286
309
  const existsInCanton = cantonIds.has(item.ocfId);
287
310
  if (!existsInCanton) {
288
- // Item in DB but not Canton → CREATE
311
+ // Item in source but not Canton → CREATE
289
312
  creates.push({
290
313
  ocfId: item.ocfId,
291
314
  entityType: item.entityType,
@@ -304,13 +327,13 @@ function computeReplicationDiff(dbItems, cantonState, options = {}) {
304
327
  }
305
328
  // If not alwaysEdit and exists in Canton, skip (already synced)
306
329
  }
307
- // Detect deletes (in Canton but not in DB)
330
+ // Detect deletes (in Canton but not in source)
308
331
  if (syncDeletes) {
309
332
  for (const [entityType, cantonIds] of cantonState.entities) {
310
- const dbIds = dbIdsByType.get(entityType) ?? new Set();
333
+ const sourceIds = sourceIdsByType.get(entityType) ?? new Set();
311
334
  for (const cantonId of cantonIds) {
312
- if (!dbIds.has(cantonId)) {
313
- // Item in Canton but not DB → DELETE
335
+ if (!sourceIds.has(cantonId)) {
336
+ // Item in Canton but not source → DELETE
314
337
  deletes.push({
315
338
  ocfId: cantonId,
316
339
  entityType,
@@ -1 +1 @@
1
- {"version":3,"file":"replicationHelpers.js","sourceRoot":"","sources":["../../src/utils/replicationHelpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"replicationHelpers.js","sourceRoot":"","sources":["../../src/utils/replicationHelpers.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;AA8IH,wEAiBC;AA8GD,gDAIC;AA4ED,wDAqFC;AA9aD,+DAA4D;AAE5D,+EAA+E;AAC/E,2BAA2B;AAC3B,+EAA+E;AAE/E;;;;;;;GAOG;AACH,MAAM,YAAY,GAAkC;IAClD,QAAQ,EAAE,UAAU;IACpB,aAAa,EAAE,cAAc;IAC7B,qBAAqB,EAAE,qBAAqB;IAC5C,SAAS,EAAE,WAAW;CACvB,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,eAAe,GAAkC;IACrD,oBAAoB;IACpB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,YAAY;IACzB,UAAU,EAAE,WAAW;IACvB,yEAAyE;IACzE,GAAG,YAAY;CAChB,CAAC;AAEF;;;GAGG;AACH,MAAM,kBAAkB,GAAkC;IACxD,GAAG,YAAY;CAChB,CAAC;AAEF;;;;GAIG;AACH,MAAM,uBAAuB,GAAkC;IAC7D,+BAA+B;IAC/B,iBAAiB,EAAE,eAAe;IAClC,qBAAqB,EAAE,mBAAmB;IAC1C,iBAAiB,EAAE,eAAe;IAClC,mBAAmB,EAAE,iBAAiB;IACtC,mBAAmB,EAAE,iBAAiB;IACtC,mBAAmB,EAAE,iBAAiB;IACtC,mBAAmB,EAAE,iBAAiB;IACtC,mBAAmB,EAAE,iBAAiB;IACtC,sBAAsB,EAAE,oBAAoB;IAE5C,gCAAgC;IAChC,+BAA+B,EAAE,4BAA4B;IAC7D,mCAAmC,EAAE,gCAAgC;IACrE,+BAA+B,EAAE,4BAA4B;IAC7D,iCAAiC,EAAE,8BAA8B;IACjE,+BAA+B,EAAE,4BAA4B;IAC7D,8BAA8B,EAAE,2BAA2B;IAC3D,gCAAgC,EAAE,6BAA6B;IAC/D,iCAAiC,EAAE,8BAA8B;IAEjE,yBAAyB;IACzB,uBAAuB,EAAE,qBAAqB;IAC9C,2BAA2B,EAAE,yBAAyB;IACtD,uBAAuB,EAAE,qBAAqB;IAC9C,yBAAyB,EAAE,uBAAuB;IAClD,yBAAyB,EAAE,uBAAuB;IAClD,yBAAyB,EAAE,uBAAuB;IAElD,qBAAqB;IACrB,mBAAmB,EAAE,iBAAiB;IACtC,uBAAuB,EAAE,qBAAqB;IAC9C,mBAAmB,EAAE,iBAAiB;IACtC,qBAAqB,EAAE,mBAAmB;IAC1C,mBAAmB,EAAE,iBAAiB;IACtC,qBAAqB,EAAE,mBAAmB;IAE1C,oCAAoC;IACpC,2CAA2C,EAAE,sCAAsC;IACnF,0CAA0C,EAAE,qCAAqC;IACjF,oBAAoB,EAAE,iBAAiB;IACvC,sCAAsC,EAAE,kCAAkC;IAE1E,8BAA8B;IAC9B,6BAA6B,EAAE,yBAAyB;IACxD,4BAA4B,EAAE,uBAAuB;IAErD,2BAA2B;IAC3B,uBAAuB,EAAE,qBAAqB;IAC9C,gBAAgB,EAAE,cAAc;IAChC,gBAAgB,EAAE,cAAc;IAEhC,+BAA+B;IAC/B,wCAAwC,EAAE,oCAAoC;IAC9E,kCAAkC,EAAE,8BAA8B;IAElE,0EAA0E;IAC1E,8EAA8E;IAC9E,yBAAyB,EAAE,sBAAsB;IACjD,6BAA6B,EAAE,0BAA0B;IACzD,yBAAyB,EAAE,sBAAsB;IACjD,2BAA2B,EAAE,wBAAwB;IACrD,yBAAyB,EAAE,sBAAsB;IACjD,wBAAwB,EAAE,qBAAqB;IAC/C,2BAA2B,EAAE,wBAAwB;CACtD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAgB,8BAA8B,CAAC,YAAoB,EAAE,OAAsB;IACzF,kBAAkB;IAClB,IAAI,YAAY,IAAI,eAAe,EAAE,CAAC;QACpC,OAAO,eAAe,CAAC,YAAY,CAAC,CAAC;IACvC,CAAC;IAED,kBAAkB;IAClB,IAAI,YAAY,KAAK,QAAQ,IAAI,OAAO,EAAE,CAAC;QACzC,OAAO,kBAAkB,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;IAC7C,CAAC;IAED,uBAAuB;IACvB,IAAI,YAAY,KAAK,aAAa,IAAI,OAAO,EAAE,CAAC;QAC9C,OAAO,uBAAuB,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;IAClD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACU,QAAA,qBAAqB,GAAG,8BAA8B,CAAC;AAEpE,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,kBAAkB,GAA4C;IAClE,yBAAyB;IACzB,WAAW,EAAE,CAAC,aAAa,EAAE,cAAc,CAAC;IAC5C,UAAU,EAAE,CAAC,aAAa,EAAE,eAAe,CAAC;IAC5C,SAAS,EAAE,CAAC,YAAY,EAAE,aAAa,CAAC;IACxC,YAAY,EAAE,CAAC,eAAe,EAAE,eAAe,CAAC;IAChD,mBAAmB,EAAE,CAAC,uBAAuB,EAAE,wBAAwB,CAAC;IACxE,QAAQ,EAAE,CAAC,UAAU,EAAE,WAAW,CAAC;IACnC,SAAS,EAAE,CAAC,WAAW,EAAE,YAAY,CAAC;IAEtC,+BAA+B;IAC/B,aAAa,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;IACpD,iBAAiB,EAAE,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;IAChE,aAAa,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;IACpD,eAAe,EAAE,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAC1D,eAAe,EAAE,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAC1D,eAAe,EAAE,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAC1D,eAAe,EAAE,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAC1D,eAAe,EAAE,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAC1D,kBAAkB,EAAE,CAAC,qBAAqB,EAAE,sBAAsB,CAAC;IAEnE,gCAAgC;IAChC,0BAA0B,EAAE,CAAC,8BAA8B,EAAE,+BAA+B,CAAC;IAC7F,8BAA8B,EAAE,CAAC,kCAAkC,EAAE,mCAAmC,CAAC;IACzG,0BAA0B,EAAE,CAAC,8BAA8B,EAAE,+BAA+B,CAAC;IAC7F,4BAA4B,EAAE,CAAC,gCAAgC,EAAE,iCAAiC,CAAC;IACnG,0BAA0B,EAAE,CAAC,8BAA8B,EAAE,+BAA+B,CAAC;IAC7F,yBAAyB,EAAE,CAAC,6BAA6B,EAAE,8BAA8B,CAAC;IAC1F,2BAA2B,EAAE,CAAC,+BAA+B,EAAE,gCAAgC,CAAC;IAChG,4BAA4B,EAAE,CAAC,gCAAgC,EAAE,iCAAiC,CAAC;IAEnG,iEAAiE;IACjE,oBAAoB,EAAE,CAAC,wBAAwB,EAAE,yBAAyB,CAAC;IAC3E,wBAAwB,EAAE,CAAC,4BAA4B,EAAE,6BAA6B,CAAC;IACvF,oBAAoB,EAAE,CAAC,wBAAwB,EAAE,yBAAyB,CAAC;IAC3E,sBAAsB,EAAE,CAAC,0BAA0B,EAAE,2BAA2B,CAAC;IACjF,oBAAoB,EAAE,CAAC,wBAAwB,EAAE,yBAAyB,CAAC;IAC3E,mBAAmB,EAAE,CAAC,uBAAuB,EAAE,wBAAwB,CAAC;IACxE,sBAAsB,EAAE,CAAC,0BAA0B,EAAE,2BAA2B,CAAC;IAEjF,yBAAyB;IACzB,mBAAmB,EAAE,CAAC,sBAAsB,EAAE,uBAAuB,CAAC;IACtE,uBAAuB,EAAE,CAAC,0BAA0B,EAAE,2BAA2B,CAAC;IAClF,mBAAmB,EAAE,CAAC,sBAAsB,EAAE,uBAAuB,CAAC;IACtE,qBAAqB,EAAE,CAAC,wBAAwB,EAAE,yBAAyB,CAAC;IAC5E,qBAAqB,EAAE,CAAC,wBAAwB,EAAE,yBAAyB,CAAC;IAC5E,qBAAqB,EAAE,CAAC,wBAAwB,EAAE,yBAAyB,CAAC;IAE5E,qBAAqB;IACrB,eAAe,EAAE,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAC1D,mBAAmB,EAAE,CAAC,sBAAsB,EAAE,uBAAuB,CAAC;IACtE,eAAe,EAAE,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAC1D,iBAAiB,EAAE,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;IAChE,eAAe,EAAE,CAAC,kBAAkB,EAAE,mBAAmB,CAAC;IAC1D,iBAAiB,EAAE,CAAC,oBAAoB,EAAE,qBAAqB,CAAC;IAEhE,oCAAoC;IACpC,oCAAoC,EAAE;QACpC,0CAA0C;QAC1C,2CAA2C;KAC5C;IACD,mCAAmC,EAAE;QACnC,yCAAyC;QACzC,0CAA0C;KAC3C;IACD,eAAe,EAAE,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;IAC5D,gCAAgC,EAAE,CAAC,qCAAqC,EAAE,sCAAsC,CAAC;IAEjH,8BAA8B;IAC9B,uBAAuB,EAAE,CAAC,4BAA4B,EAAE,6BAA6B,CAAC;IACtF,qBAAqB,EAAE,CAAC,2BAA2B,EAAE,4BAA4B,CAAC;IAElF,2BAA2B;IAC3B,mBAAmB,EAAE,CAAC,sBAAsB,EAAE,uBAAuB,CAAC;IACtE,YAAY,EAAE,CAAC,eAAe,EAAE,gBAAgB,CAAC;IACjD,YAAY,EAAE,CAAC,eAAe,EAAE,gBAAgB,CAAC;IAEjD,+BAA+B;IAC/B,kCAAkC,EAAE,CAAC,iCAAiC,EAAE,kCAAkC,CAAC;IAC3G,4BAA4B,EAAE,CAAC,2BAA2B,EAAE,4BAA4B,CAAC;CAC1F,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,SAAgB,kBAAkB,CAAC,IAAmB,EAAE,KAAa;IACnE,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACxC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC;IAClC,OAAO,GAAG,KAAK,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;AACvD,CAAC;AAqDD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,SAAgB,sBAAsB,CACpC,WAA+E,EAC/E,WAA0B,EAC1B,UAAyC,EAAE;IAE3C,MAAM,EAAE,WAAW,GAAG,KAAK,EAAE,UAAU,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IAE5D,MAAM,OAAO,GAAsB,EAAE,CAAC;IACtC,MAAM,KAAK,GAAsB,EAAE,CAAC;IACpC,MAAM,OAAO,GAAsB,EAAE,CAAC;IAEtC,kDAAkD;IAClD,MAAM,eAAe,GAAG,IAAI,GAAG,EAA8B,CAAC;IAE9D,+DAA+D;IAC/D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IAEpC,2BAA2B;IAC3B,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAC/B,iDAAiD;QACjD,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACnD,IAAI,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,SAAS;QACX,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEvB,uEAAuE;QACvE,sEAAsE;QACtE,MAAM,cAAc,GAAG,IAAA,yCAAmB,EAAC,IAAI,CAAC,UAAU,CAAkB,CAAC;QAE7E,+EAA+E;QAC/E,IAAI,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAClD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;YACpB,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAExB,oDAAoD;QACpD,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;QACxE,MAAM,cAAc,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEjD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,yCAAyC;YACzC,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,SAAS,EAAE,QAAQ;gBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,UAAU,EAAE,CAAC;YACtB,qCAAqC;YACrC,KAAK,CAAC,IAAI,CAAC;gBACT,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,SAAS,EAAE,MAAM;gBACjB,IAAI,EAAE,IAAI,CAAC,IAAI;aAChB,CAAC,CAAC;QACL,CAAC;QACD,gEAAgE;IAClE,CAAC;IAED,+CAA+C;IAC/C,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,CAAC;YAC3D,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC;YAC/D,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC7B,yCAAyC;oBACzC,OAAO,CAAC,IAAI,CAAC;wBACX,KAAK,EAAE,QAAQ;wBACf,UAAU;wBACV,SAAS,EAAE,QAAQ;qBACpB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO;QACP,KAAK;QACL,OAAO;QACP,KAAK,EAAE,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM;KACtD,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-captable-protocol/canton",
3
- "version": "0.2.194",
3
+ "version": "0.2.196",
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",