diff --git a/report/schemas.api.md b/report/schemas.api.md index fe4cd4d..8440a1d 100644 --- a/report/schemas.api.md +++ b/report/schemas.api.md @@ -261,7 +261,7 @@ export type BaseBid = { // @public (undocumented) export type BaseEvent = { type: Events.Type; - subType: Events.SubType.Blockchain | Events.SubType.CatalystDeployment | Events.SubType.Client; + subType: Events.SubType.Blockchain | Events.SubType.CatalystDeployment | Events.SubType.Client | Events.SubType.Marketplace; key: string; timestamp: number; }; @@ -296,7 +296,7 @@ export namespace Bid { export type BidAcceptedEvent = BaseEvent & { type: Events.Type.BLOCKCHAIN; subType: Events.SubType.Blockchain.BID_ACCEPTED; - metadata: BidMetadata; + metadata: BidEventMetadata; }; // @public (undocumented) @@ -307,6 +307,23 @@ export namespace BidAcceptedEvent { validate: ValidateFunction; } +// Warning: (ae-missing-release-tag) "BidEventMetadata" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal) +// +// @public (undocumented) +export type BidEventMetadata = { + address: string; + image: string; + seller: string; + category: string; + rarity?: string; + link: string; + nftName?: string; + price: string; + title: string; + description: string; + network: string; +}; + // Warning: (ae-missing-release-tag) "BidFilters" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) @@ -323,24 +340,6 @@ export type BidFilters = { network?: Network; }; -// Warning: (ae-missing-release-tag) "BidReceivedEvent" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// Warning: (ae-missing-release-tag) "BidReceivedEvent" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal) -// -// @public (undocumented) -export type BidReceivedEvent = BaseEvent & { - type: Events.Type.BLOCKCHAIN; - subType: Events.SubType.Blockchain.BID_RECEIVED; - metadata: BidMetadata; -}; - -// @public (undocumented) -export namespace BidReceivedEvent { - const // (undocumented) - schema: JSONSchema; - const // (undocumented) - validate: ValidateFunction; -} - // Warning: (ae-missing-release-tag) "BidSortBy" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) @@ -937,6 +936,7 @@ export namespace EthAddress { validate: ValidateFunction; } +// Warning: (ae-forgotten-export) The symbol "BidReceivedEvent" needs to be exported by the entry point index.d.ts // Warning: (ae-missing-release-tag) "Event" is part of the package's API, but it is missing a release tag (@alpha, @beta, @public, or @internal) // // @public (undocumented) @@ -953,8 +953,6 @@ export namespace Events { // (undocumented) BID_ACCEPTED = "bid-accepted", // (undocumented) - BID_RECEIVED = "bid-received", - // (undocumented) COLLECTION_CREATED = "collection-created", // (undocumented) ITEM_SOLD = "item-sold", @@ -985,6 +983,11 @@ export namespace Events { // (undocumented) MOVE_TO_PARCEL = "move-to-parcel" } + // (undocumented) + export enum Marketplace { + // (undocumented) + BID_RECEIVED = "bid-received" + } } // (undocumented) export enum Type { @@ -993,7 +996,9 @@ export namespace Events { // (undocumented) CATALYST_DEPLOYMENT = "catalyst-deployment", // (undocumented) - CLIENT = "client" + CLIENT = "client", + // (undocumented) + MARKETPLACE = "marketplace" } } @@ -3383,8 +3388,7 @@ export namespace WorldConfiguration { // src/dapps/trade.ts:79:3 - (ae-incompatible-release-tags) The symbol "chainId" is marked as @public, but its signature references "ChainId" which is marked as @alpha // src/dapps/trade.ts:90:3 - (ae-incompatible-release-tags) The symbol "network" is marked as @public, but its signature references "Network" which is marked as @alpha // src/dapps/trade.ts:91:3 - (ae-incompatible-release-tags) The symbol "chainId" is marked as @public, but its signature references "ChainId" which is marked as @alpha -// src/platform/events/blockchain.ts:21:3 - (ae-forgotten-export) The symbol "BidMetadata" needs to be exported by the entry point index.d.ts -// src/platform/events/blockchain.ts:163:3 - (ae-forgotten-export) The symbol "RentalMetadata" needs to be exported by the entry point index.d.ts +// src/platform/events/blockchain.ts:124:3 - (ae-forgotten-export) The symbol "RentalMetadata" needs to be exported by the entry point index.d.ts // src/platform/item/emote/adr74/emote-data-adr74.ts:7:3 - (ae-incompatible-release-tags) The symbol "representations" is marked as @public, but its signature references "EmoteRepresentationADR74" which is marked as @alpha // src/platform/item/linked-wearable-mappings.ts:251:3 - (ae-incompatible-release-tags) The symbol "getMappings" is marked as @public, but its signature references "Mappings" which is marked as @alpha // src/platform/item/linked-wearable-mappings.ts:252:3 - (ae-incompatible-release-tags) The symbol "addMapping" is marked as @public, but its signature references "ContractNetwork" which is marked as @alpha diff --git a/src/platform/events/base.ts b/src/platform/events/base.ts index 17511cc..7703c49 100644 --- a/src/platform/events/base.ts +++ b/src/platform/events/base.ts @@ -1,6 +1,5 @@ import { BidAcceptedEvent, - BidReceivedEvent, CollectionCreatedEvent, ItemSoldEvent, RentalEndedEvent, @@ -9,18 +8,19 @@ import { } from './blockchain' import { CatalystDeploymentEvent } from './catalyst' import { MoveToParcelEvent } from './client' +import { BidReceivedEvent } from './marketplace' export namespace Events { export enum Type { BLOCKCHAIN = 'blockchain', CATALYST_DEPLOYMENT = 'catalyst-deployment', - CLIENT = 'client' + CLIENT = 'client', + MARKETPLACE = 'marketplace' } export namespace SubType { export enum Blockchain { BID_ACCEPTED = 'bid-accepted', - BID_RECEIVED = 'bid-received', ITEM_SOLD = 'item-sold', RENTAL_ENDED = 'land-rental-ended', RENTAL_STARTED = 'land-rental-started', @@ -28,6 +28,10 @@ export namespace Events { COLLECTION_CREATED = 'collection-created' } + export enum Marketplace { + BID_RECEIVED = 'bid-received' + } + export enum CatalystDeployment { SCENE = 'scene', PROFILE = 'profile', @@ -45,7 +49,11 @@ export namespace Events { export type BaseEvent = { type: Events.Type - subType: Events.SubType.Blockchain | Events.SubType.CatalystDeployment | Events.SubType.Client + subType: + | Events.SubType.Blockchain + | Events.SubType.CatalystDeployment + | Events.SubType.Client + | Events.SubType.Marketplace key: string timestamp: number } diff --git a/src/platform/events/blockchain.ts b/src/platform/events/blockchain.ts index f51fc09..ff5b42a 100644 --- a/src/platform/events/blockchain.ts +++ b/src/platform/events/blockchain.ts @@ -1,7 +1,7 @@ import { generateLazyValidator, JSONSchema, ValidateFunction } from '../../validation' import { BaseEvent, Events } from './base' -type BidMetadata = { +export type BidEventMetadata = { address: string image: string seller: string @@ -18,7 +18,7 @@ type BidMetadata = { export type BidAcceptedEvent = BaseEvent & { type: Events.Type.BLOCKCHAIN subType: Events.SubType.Blockchain.BID_ACCEPTED - metadata: BidMetadata + metadata: BidEventMetadata } export namespace BidAcceptedEvent { @@ -54,45 +54,6 @@ export namespace BidAcceptedEvent { export const validate: ValidateFunction = generateLazyValidator(schema) } -export type BidReceivedEvent = BaseEvent & { - type: Events.Type.BLOCKCHAIN - subType: Events.SubType.Blockchain.BID_RECEIVED - metadata: BidMetadata -} - -export namespace BidReceivedEvent { - export const schema: JSONSchema = { - type: 'object', - properties: { - type: { type: 'string', const: Events.Type.BLOCKCHAIN }, - subType: { type: 'string', const: Events.SubType.Blockchain.BID_RECEIVED }, - key: { type: 'string' }, - timestamp: { type: 'number', minimum: 0 }, - metadata: { - type: 'object', - properties: { - address: { type: 'string' }, - image: { type: 'string' }, - seller: { type: 'string' }, - category: { type: 'string' }, - rarity: { type: 'string', nullable: true }, - link: { type: 'string' }, - nftName: { type: 'string', nullable: true }, - price: { type: 'string' }, - title: { type: 'string' }, - description: { type: 'string' }, - network: { type: 'string' } - }, - required: ['address', 'image', 'seller', 'category', 'link', 'price', 'title', 'network'] - } - }, - required: ['type', 'subType', 'key', 'timestamp', 'metadata'], - additionalProperties: false - } - - export const validate: ValidateFunction = generateLazyValidator(schema) -} - export type ItemSoldEvent = BaseEvent & { type: Events.Type.BLOCKCHAIN subType: Events.SubType.Blockchain.ITEM_SOLD diff --git a/src/platform/events/marketplace.ts b/src/platform/events/marketplace.ts new file mode 100644 index 0000000..a8a9284 --- /dev/null +++ b/src/platform/events/marketplace.ts @@ -0,0 +1,42 @@ +import { generateLazyValidator, JSONSchema, ValidateFunction } from '../../validation' +import { BaseEvent, Events } from './base' +import { BidEventMetadata } from './blockchain' + +export type BidReceivedEvent = BaseEvent & { + type: Events.Type.MARKETPLACE + subType: Events.SubType.Marketplace.BID_RECEIVED + metadata: BidEventMetadata +} + +export namespace BidReceivedEvent { + export const schema: JSONSchema = { + type: 'object', + properties: { + type: { type: 'string', const: Events.Type.MARKETPLACE }, + subType: { type: 'string', const: Events.SubType.Marketplace.BID_RECEIVED }, + key: { type: 'string' }, + timestamp: { type: 'number', minimum: 0 }, + metadata: { + type: 'object', + properties: { + address: { type: 'string' }, + image: { type: 'string' }, + seller: { type: 'string' }, + category: { type: 'string' }, + rarity: { type: 'string', nullable: true }, + link: { type: 'string' }, + nftName: { type: 'string', nullable: true }, + price: { type: 'string' }, + title: { type: 'string' }, + description: { type: 'string' }, + network: { type: 'string' } + }, + required: ['address', 'image', 'seller', 'category', 'link', 'price', 'title', 'network'] + } + }, + required: ['type', 'subType', 'key', 'timestamp', 'metadata'], + additionalProperties: false + } + + export const validate: ValidateFunction = generateLazyValidator(schema) +}