diff --git a/packages/core/src/store/dealer-aggregate-store.js b/packages/core/src/store/dealer-aggregate-store.js index f5845ff..d208719 100644 --- a/packages/core/src/store/dealer-aggregate-store.js +++ b/packages/core/src/store/dealer-aggregate-store.js @@ -104,6 +104,7 @@ export const decodeRecord = (encodedRecord) => { return { aggregate: parseLink(encodedRecord.aggregate), pieces: parseLink(encodedRecord.pieces), + ...(encodedRecord.group && { group: encodedRecord.group }), status: decodeStatus(encodedRecord.stat), insertedAt: encodedRecord.insertedAt, updatedAt: encodedRecord.updatedAt diff --git a/packages/core/src/store/dealer-offer-store.js b/packages/core/src/store/dealer-offer-store.js index 6580601..cb8341f 100644 --- a/packages/core/src/store/dealer-offer-store.js +++ b/packages/core/src/store/dealer-offer-store.js @@ -29,7 +29,8 @@ const encodeRecord = (record) => { /** @type {DealerOfferStoreRecordValue} */ ({ aggregate: record.value.aggregate.toString(), pieces: record.value.pieces.map((p) => p.toString()), - collection: record.value.issuer, + issuer: record.value.issuer, + collection: record.value.group || record.value.issuer, orderID: Date.now() }) ) @@ -70,7 +71,8 @@ const decodeRecord = (encodedRecord) => { value: { aggregate: parseLink(record.aggregate), pieces: record.pieces.map((p) => parseLink(p)), - issuer: /** @type {`did:${string}:${string}`} */ (record.collection) + issuer: /** @type {`did:${string}:${string}`} */ (record.issuer), + group: record.collection, } } } diff --git a/packages/core/src/store/types.ts b/packages/core/src/store/types.ts index a3d4dd8..470ba35 100644 --- a/packages/core/src/store/types.ts +++ b/packages/core/src/store/types.ts @@ -151,6 +151,8 @@ export interface DealerOfferStoreRecordValue { // PieceCid of sorted pieces used to generate aggregate pieces: string[] // Issuer of the collection of aggregates + issuer: string + // Collection/group the aggregate belongs to collection: string // Order that broker will rely on to prioritize deals. orderID: number