@chevre/factory 11.1.0-alpha.0 → 11.1.0-alpha.10

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.
Files changed (30) hide show
  1. package/lib/chevre/acceptedOffer.d.ts +173 -0
  2. package/lib/chevre/{event.js → acceptedOffer.js} +1 -0
  3. package/lib/chevre/action/accept/coaOffer.d.ts +1 -1
  4. package/lib/chevre/action/transfer/send/message/email.d.ts +15 -4
  5. package/lib/chevre/action/update/delete.d.ts +1 -1
  6. package/lib/chevre/action/update/update/object.d.ts +1 -1
  7. package/lib/chevre/action/update/update/result.d.ts +1 -1
  8. package/lib/chevre/action/update/update/targetCollection.d.ts +1 -1
  9. package/lib/chevre/assetTransaction/reserve.d.ts +1 -16
  10. package/lib/chevre/creativeWork/message/email.d.ts +9 -1
  11. package/lib/chevre/event/anyEvent.d.ts +0 -5
  12. package/lib/chevre/event/screeningEvent.d.ts +90 -35
  13. package/lib/chevre/event/sellerMakesOffer.d.ts +7 -6
  14. package/lib/chevre/{event/eventSeries.d.ts → eventSeries.d.ts} +91 -32
  15. package/lib/chevre/index.d.ts +3 -1
  16. package/lib/chevre/index.js +5 -3
  17. package/lib/chevre/invoice.d.ts +2 -1
  18. package/lib/chevre/issuer.d.ts +0 -8
  19. package/lib/chevre/notification/eventSeries.d.ts +10 -3
  20. package/lib/chevre/notification/offer.d.ts +7 -1
  21. package/lib/chevre/notification/order.d.ts +22 -7
  22. package/lib/chevre/offer/eventOffer.d.ts +0 -1
  23. package/lib/chevre/order.d.ts +1 -176
  24. package/lib/chevre/project.d.ts +21 -6
  25. package/lib/chevre/reservation/event.d.ts +1 -2
  26. package/lib/chevre/role/organizationRole.d.ts +6 -1
  27. package/lib/chevre/role/organizationRole.js +5 -0
  28. package/package.json +1 -1
  29. package/lib/chevre/event.d.ts +0 -94
  30. /package/lib/chevre/{event/eventSeries.js → eventSeries.js} +0 -0
@@ -0,0 +1,173 @@
1
+ import type { COAFactory } from '@coasystems/factory';
2
+ import { ICategoryChargePriceComponent, IMovieTicketTypeChargePriceComponent, IUnitPriceComponent, IIssuedThrough, ITicketType, IOptimizedSuperEventLegacy, IOptimizedWorkPerformedLegacy, IReservationForLegacy } from './assetTransaction/reserve';
3
+ import { ICOAInfo, ISuperEvent as IEventSeries } from './event/screeningEvent';
4
+ import { OfferType } from './offerType';
5
+ import { IPriceSpecification as ICompoundPriceSpecification } from './priceSpecification/compoundPriceSpecification';
6
+ import { ProductType } from './product';
7
+ import { IPropertyValue } from './propertyValue';
8
+ import { IReservation as IRawReservation, IReservedTicket as IRawReservedTicket } from './reservation/event';
9
+ import { Identifier } from './service/webAPI';
10
+ export type IWorkPerformed = Pick<IOptimizedWorkPerformedLegacy, 'typeOf' | 'id' | 'identifier' | 'name' | 'duration'>;
11
+ export type ISuperEvent = Pick<IOptimizedSuperEventLegacy, 'id' | 'location' | 'name' | 'typeOf' | 'headline'> & {
12
+ workPerformed: IWorkPerformed;
13
+ identifier?: never;
14
+ alternativeHeadline?: never;
15
+ duration?: never;
16
+ coaInfo?: never;
17
+ };
18
+ /**
19
+ * COAの場合の施設コンテンツ
20
+ */
21
+ export type ICOASuperEvent = Pick<IOptimizedSuperEventLegacy, 'id' | 'location' | 'name' | 'typeOf' | 'headline'> & Pick<IEventSeries, 'identifier' | 'alternativeHeadline' | 'duration' | 'coaInfo'> & {
22
+ workPerformed: IWorkPerformed;
23
+ };
24
+ export type IEventAsReservationFor = Omit<IReservationForLegacy, 'superEvent' | 'identifier' | 'coaInfo'> & {
25
+ superEvent: ISuperEvent;
26
+ /**
27
+ * COA予約でのみ使用されている
28
+ */
29
+ identifier?: never;
30
+ /**
31
+ * その他COA情報
32
+ * 基本的にsskts対応
33
+ */
34
+ coaInfo?: never;
35
+ };
36
+ /**
37
+ * COAの場合のイベント
38
+ */
39
+ export type ICOAEventAsReservationFor = Omit<IReservationForLegacy, 'superEvent' | 'identifier' | 'coaInfo'> & {
40
+ superEvent: ICOASuperEvent;
41
+ /**
42
+ * COA予約でのみ使用されている
43
+ */
44
+ identifier?: string;
45
+ /**
46
+ * その他COA情報
47
+ * 基本的にsskts対応
48
+ */
49
+ coaInfo?: ICOAInfo;
50
+ };
51
+ /**
52
+ * COA券種情報
53
+ */
54
+ export type ICOATicketInfoWithDetails = COAFactory.reserve.IUpdReserveTicket & {
55
+ /**
56
+ * チケット名
57
+ */
58
+ ticketName: string;
59
+ /**
60
+ * チケット名(カナ)
61
+ */
62
+ ticketNameKana: string;
63
+ /**
64
+ * チケット名(英)
65
+ */
66
+ ticketNameEng: string;
67
+ /**
68
+ * ポイント割引の場合の消費ポイント
69
+ */
70
+ usePoint: number;
71
+ };
72
+ export type ITicketTypeInOrder = Pick<ITicketType, 'id' | 'identifier' | 'name' | 'typeOf' | 'additionalProperty' | 'description'>;
73
+ export type IReservedTicket = Pick<IRawReservedTicket, 'typeOf' | 'ticketedSeat' | 'identifier'> & {
74
+ ticketType: ITicketTypeInOrder;
75
+ ticketNumber?: never;
76
+ dateIssued?: never;
77
+ ticketToken?: never;
78
+ coaTicketInfo?: never;
79
+ coaReserveAmount?: never;
80
+ };
81
+ export type ICOATicketType = Pick<ITicketType, 'id' | 'identifier' | 'name' | 'typeOf'>;
82
+ /**
83
+ * COAの場合の予約チケット
84
+ */
85
+ export type ICOAReservedTicket = Pick<IRawReservedTicket, 'typeOf' | 'ticketedSeat' | 'identifier' | // 追加(2024-04-15~)
86
+ 'dateIssued'> & {
87
+ ticketType: ICOATicketType;
88
+ /**
89
+ * COA券種情報
90
+ */
91
+ coaTicketInfo?: ICOATicketInfoWithDetails;
92
+ coaReserveAmount?: number;
93
+ /**
94
+ * The unique identifier for the ticket.
95
+ */
96
+ ticketNumber?: string;
97
+ /**
98
+ * If the barcode image is hosted on your site, the value of the field is URL of the image, or a barcode or QR URI,
99
+ * such as "barcode128:AB34" (ISO-15417 barcodes), "qrCode:AB34" (QR codes),
100
+ * "aztecCode:AB34" (Aztec codes), "barcodeEAN:1234" (EAN codes) and "barcodeUPCA:1234" (UPCA codes).
101
+ */
102
+ ticketToken?: string;
103
+ };
104
+ export interface ICOAIssuedThrough {
105
+ typeOf: ProductType.EventService;
106
+ serviceType?: never;
107
+ /**
108
+ * 興行管理をしていないためid未定義
109
+ */
110
+ id?: never;
111
+ }
112
+ /**
113
+ * オファー提供アイテムとしての予約
114
+ */
115
+ export type IEventReservation = Pick<IRawReservation, 'additionalProperty' | 'additionalTicketText' | 'id' | 'programMembershipUsed' | 'reservationNumber' | 'typeOf'> & {
116
+ issuedThrough: IIssuedThrough;
117
+ reservationFor: IEventAsReservationFor;
118
+ reservedTicket: IReservedTicket;
119
+ };
120
+ /**
121
+ * オファー提供アイテムとしてのCOAの場合の予約
122
+ */
123
+ export type ICOAEventReservation = Pick<IRawReservation, 'additionalTicketText' | 'id' | 'programMembershipUsed' | 'reservationNumber' | 'typeOf'> & {
124
+ issuedThrough: ICOAIssuedThrough;
125
+ reservationFor: ICOAEventAsReservationFor;
126
+ reservedTicket: ICOAReservedTicket;
127
+ additionalProperty?: IPropertyValue<string>[];
128
+ };
129
+ export { ICategoryChargePriceComponent };
130
+ export { IMovieTicketTypeChargePriceComponent };
131
+ export { IUnitPriceComponent };
132
+ export type ITicketPriceComponent = ICategoryChargePriceComponent | IMovieTicketTypeChargePriceComponent | IUnitPriceComponent;
133
+ /**
134
+ * 注文オファーの価格仕様
135
+ */
136
+ export type ITicketPriceSpecification = Pick<ICompoundPriceSpecification<ITicketPriceComponent>, 'priceComponent' | 'priceCurrency' | 'typeOf' | 'valueAddedTaxIncluded'>;
137
+ export interface IOfferOptimized4acceptedOffer {
138
+ typeOf: OfferType.Offer;
139
+ id?: string;
140
+ /**
141
+ * 資産取引番号
142
+ * 2024-01-30~
143
+ */
144
+ serialNumber: string;
145
+ priceSpecification?: ITicketPriceSpecification;
146
+ name?: never;
147
+ }
148
+ export type ICOAAcceptedOffer = IOfferOptimized4acceptedOffer & {
149
+ /**
150
+ * オファー対象アイテム
151
+ */
152
+ itemOffered: ICOAEventReservation;
153
+ offeredThrough: {
154
+ typeOf: 'WebAPI';
155
+ identifier: Identifier.COA;
156
+ };
157
+ };
158
+ export type IOptimizedAcceptedOffer = IOfferOptimized4acceptedOffer & {
159
+ /**
160
+ * オファー対象アイテム
161
+ */
162
+ itemOffered: IEventReservation;
163
+ offeredThrough: {
164
+ typeOf: 'WebAPI';
165
+ identifier: Identifier.Chevre;
166
+ };
167
+ };
168
+ /**
169
+ * 注文オファー
170
+ * 予約取引の情報を結合した上でのオファー
171
+ * 注文ドキュメント内のacceptedOffersについては、schemasに定義
172
+ */
173
+ export type IAcceptedOffer = ICOAAcceptedOffer | IOptimizedAcceptedOffer;
@@ -1,2 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ ;
@@ -5,7 +5,7 @@ import { IItemOfferedServiceOutput, IAcceptedTicketOfferItemOffered, IAcceptedTi
5
5
  import { AssetTransactionType } from '../../assetTransactionType';
6
6
  import { IOffer } from '../../offer';
7
7
  import { OfferType } from '../../offerType';
8
- import { ITicketPriceSpecification } from '../../order';
8
+ import { ITicketPriceSpecification } from '../../acceptedOffer';
9
9
  import { IPropertyValue } from '../../propertyValue';
10
10
  import { IRecipe, IUpdTmpReserveSeatArgs, IUpdTmpReserveSeatResult } from '../../recipe/acceptCOAOffer';
11
11
  import { TransactionType } from '../../transactionType';
@@ -1,12 +1,23 @@
1
1
  import { IParticipantAsProject } from '../../../../action';
2
- import { ICreativeWork as IEmailMessage } from '../../../../creativeWork/message/email';
2
+ import { ICreativeWork as IEmailMessage, ISender } from '../../../../creativeWork/message/email';
3
3
  import { ISimpleOrder } from '../../../../order';
4
4
  import { IRecipe, ISendMultipleArgs, ISendMultipleResult } from '../../../../recipe/sendEmailMessage';
5
5
  import { IAction as IBaseAction, IAttributes as IBaseAttributes } from '../../send';
6
6
  export { IRecipe, ISendMultipleArgs, ISendMultipleResult };
7
7
  export type IAgent = IParticipantAsProject;
8
- export type IObjectAsEmailMessage = Pick<IEmailMessage, 'about' | 'identifier' | 'name' | 'sender' | 'text' | 'toRecipient' | 'typeOf'>;
9
- export type IOptimizedObject = Pick<IEmailMessage, 'identifier' | 'typeOf'> & {
8
+ /**
9
+ * 生のメッセージ指定
10
+ */
11
+ export type IObjectAsEmailMessage = Pick<IEmailMessage, 'about' | 'identifier' | 'name' | 'text' | 'toRecipient' | 'typeOf'> & {
12
+ sender: Pick<ISender, 'name' | 'typeOf' | 'email'> & {};
13
+ };
14
+ /**
15
+ * メッセージリポジトリに対応(2024-04-29~)
16
+ */
17
+ export type IObjectByIdentifier = Pick<IEmailMessage, 'identifier' | 'typeOf'> & {
18
+ /**
19
+ * メッセージ識別子
20
+ */
10
21
  identifier: string;
11
22
  text?: never;
12
23
  };
@@ -14,7 +25,7 @@ export type IObject =
14
25
  /**
15
26
  * @deprecated use IOptimizedObject
16
27
  */
17
- IObjectAsEmailMessage | IOptimizedObject;
28
+ IObjectAsEmailMessage | IObjectByIdentifier;
18
29
  export interface IResult {
19
30
  statusCode?: number;
20
31
  statusMessage?: string;
@@ -1,6 +1,6 @@
1
1
  import { IParticipantAsProject, IAction as IBaseAction, IAttributes as IBaseAttributes } from '../../action';
2
2
  import { ActionType } from '../../actionType';
3
- import { IEvent as IEventSeries } from '../../event/eventSeries';
3
+ import { IEvent as IEventSeries } from '../../eventSeries';
4
4
  import { IAggregateOffer } from '../../offer/aggregateOffer';
5
5
  import { IOfferCatalog } from '../../offerCatalog';
6
6
  import { IPlace as IMovieTheater } from '../../place/movieTheater';
@@ -1,6 +1,6 @@
1
1
  import { ICreativeWork as IMovie } from '../../../creativeWork/movie';
2
2
  import { CreativeWorkType } from '../../../creativeWorkType';
3
- import { IEvent as IEventSeries } from '../../../event/eventSeries';
3
+ import { IEvent as IEventSeries } from '../../../eventSeries';
4
4
  import { EventType } from '../../../eventType';
5
5
  import { IOfferCatalog } from '../../../offerCatalog';
6
6
  import { IOrder } from '../../../order';
@@ -1,6 +1,6 @@
1
1
  import { ICreativeWork as IMovie } from '../../../creativeWork/movie';
2
2
  import { CreativeWorkType } from '../../../creativeWorkType';
3
- import { IEvent as IEventSeries } from '../../../event/eventSeries';
3
+ import { IEvent as IEventSeries } from '../../../eventSeries';
4
4
  import { EventType } from '../../../eventType';
5
5
  import { IOfferCatalog } from '../../../offerCatalog';
6
6
  import { IOrder } from '../../../order';
@@ -1,7 +1,7 @@
1
1
  import { ICreativeWork as IMovie } from '../../../creativeWork/movie';
2
2
  import { IAbout as INoteAbout } from '../../../creativeWork/noteDigitalDocument';
3
3
  import { CreativeWorkType } from '../../../creativeWorkType';
4
- import { IEvent as IEventSeries } from '../../../event/eventSeries';
4
+ import { IEvent as IEventSeries } from '../../../eventSeries';
5
5
  import { EventType } from '../../../eventType';
6
6
  import { IOfferCatalog } from '../../../offerCatalog';
7
7
  import { OrderType } from '../../../order';
@@ -2,7 +2,7 @@ import { IInstrument as IReserveActionInstrument } from '../action/reserve';
2
2
  import { IAgent, ISearchConditions as IBaseSearchConditions, IStartParams as IBaseStartParams, IAttributes as IBaseAttributes } from '../assetTransaction';
3
3
  import { AssetTransactionType } from '../assetTransactionType';
4
4
  import { IExtendId } from '../autoGenerated';
5
- import { IWorkPerformed } from '../event/eventSeries';
5
+ import { IWorkPerformed } from '../eventSeries';
6
6
  import { ILocation as IEventLocation, IName as IEventName, ISuperEvent } from '../event/screeningEvent';
7
7
  import { EventType } from '../eventType';
8
8
  import { IMultilingualString } from '../multilingualString';
@@ -265,21 +265,6 @@ export interface IResult {
265
265
  * エラー
266
266
  */
267
267
  export type IError = any;
268
- /**
269
- * トークン化されたメンバープログラムティア
270
- */
271
- export interface ITokenizedMemberProgramTier {
272
- /**
273
- * ティアトークン
274
- */
275
- token: string;
276
- isTierOf: {
277
- /**
278
- * メンバープログラムコード
279
- */
280
- identifier: string;
281
- };
282
- }
283
268
  /**
284
269
  * イベントオファートークンの中身
285
270
  * 予約対象イベント、オファー有効期間、イベントオファーコード、対象数量を定義する
@@ -7,6 +7,14 @@ export interface IParticipant {
7
7
  name: string;
8
8
  email: string;
9
9
  }
10
+ export interface ISender {
11
+ typeOf?: string;
12
+ name: string;
13
+ /**
14
+ * optional(2026-10-20~)
15
+ */
16
+ email?: string;
17
+ }
10
18
  export declare enum AboutIdentifier {
11
19
  OnOrderSent = "OnOrderSent",
12
20
  OnOrderRefunded = "OnOrderRefunded",
@@ -24,7 +32,7 @@ export interface IAbout extends Pick<IThing, 'name'> {
24
32
  export interface ICreativeWork extends Pick<IBaseCreativeWork, 'id' | 'identifier' | 'name' | 'typeOf'> {
25
33
  project?: Pick<IProject, 'id' | 'typeOf'>;
26
34
  typeOf: CreativeWorkType.EmailMessage;
27
- sender: IParticipant;
35
+ sender: ISender;
28
36
  toRecipient: IParticipant[];
29
37
  about: IAbout;
30
38
  text: string;
@@ -1,8 +1,6 @@
1
1
  import { IAvailableAtOrFrom, ICategory as IOfferCategory } from '../offer';
2
2
  import { OfferType } from '../offerType';
3
3
  import { IServiceType as IProductServiceType } from '../product';
4
- import { ISellerMakesOffer } from './sellerMakesOffer';
5
- export { ISellerMakesOffer };
6
4
  /**
7
5
  * 予約集計
8
6
  */
@@ -39,6 +37,3 @@ export type IServiceType = IProductServiceType & {
39
37
  id?: string;
40
38
  };
41
39
  export type IOfferAvailableAtOrFrom = Pick<IAvailableAtOrFrom, 'id'>;
42
- export type ISellerMakesOffer4create = Pick<ISellerMakesOffer, 'availabilityEnds' | 'availabilityStarts' | 'validFrom' | 'validThrough' | 'typeOf' | 'identifier'> & {
43
- availableAtOrFrom: Pick<IOfferAvailableAtOrFrom, 'id'>;
44
- };
@@ -1,7 +1,6 @@
1
1
  import type { COAFactory } from '@coasystems/factory';
2
- import { IEvent as IBaseEvent, ISearchConditions as IBaseSearchConditions, ISortOrder, IAttributes as IBaseAttributes } from '../event';
3
2
  import { EventStatusType } from '../eventStatusType';
4
- import { IEvent as IEventSeries, IUnacceptedPaymentMethodType } from './eventSeries';
3
+ import { IEvent as IEventSeries, IUnacceptedPaymentMethodType } from '../eventSeries';
5
4
  import { EventType } from '../eventType';
6
5
  import { IMultilingualString } from '../multilingualString';
7
6
  import { IEligibleQuantity } from '../offer';
@@ -9,11 +8,15 @@ import { OfferType } from '../offerType';
9
8
  import { OrganizationType } from '../organizationType';
10
9
  import { PlaceType } from '../placeType';
11
10
  import { ProductType } from '../product';
11
+ import { IProject } from '../project';
12
+ import { IPropertyValue } from '../propertyValue';
12
13
  import { TicketType } from '../reservation';
13
14
  import { ReservationType } from '../reservationType';
14
15
  import { Identifier as WebAPIIdentifier, IService as IWebAPIService } from '../service/webAPI';
15
- import { IAggregateReservation, IOfferWithAggregateReservation, IAggregateOffer, IOfferAvailableAtOrFrom, ISellerMakesOffer, IServiceType, ISellerMakesOffer4create } from './anyEvent';
16
- export { IAggregateReservation, IOfferWithAggregateReservation, IAggregateOffer, IOfferAvailableAtOrFrom, ISellerMakesOffer, IServiceType, IEligibleQuantity, ISellerMakesOffer4create };
16
+ import { SortType } from '../sortType';
17
+ import { IAggregateReservation, IOfferWithAggregateReservation, IAggregateOffer, IOfferAvailableAtOrFrom, IServiceType } from './anyEvent';
18
+ import { ISellerMakesOffer, ISellerMakesOffer4create } from './sellerMakesOffer';
19
+ export { IAggregateReservation, IOfferWithAggregateReservation, IAggregateOffer, IOfferAvailableAtOrFrom, IServiceType, IEligibleQuantity, ISellerMakesOffer, ISellerMakesOffer4create };
17
20
  export interface IServiceOutput {
18
21
  typeOf: ReservationType.EventReservation;
19
22
  reservedTicket?: {
@@ -50,7 +53,6 @@ export interface IItemOffered {
50
53
  */
51
54
  serviceOutput?: IServiceOutput;
52
55
  typeOf: ProductType.EventService;
53
- availableChannel?: never;
54
56
  }
55
57
  export type IOfferedThrough = Pick<IWebAPIService<WebAPIIdentifier.Chevre>, 'identifier' | 'typeOf'>;
56
58
  export interface ISeller {
@@ -61,11 +63,14 @@ export interface ISeller {
61
63
  id: string;
62
64
  name?: IMultilingualString;
63
65
  /**
64
- * アプリケーションごとのオファー
66
+ * アプリケーションごとのオファー(max:10)
65
67
  */
66
68
  makesOffer: ISellerMakesOffer[];
67
69
  }
68
70
  export interface ISeller4create {
71
+ /**
72
+ * アプリケーションごとのオファー(max:10)
73
+ */
69
74
  makesOffer: ISellerMakesOffer4create[];
70
75
  /**
71
76
  * POS以外のアプリケーションの共通設定
@@ -85,7 +90,6 @@ export interface IOffer {
85
90
  unacceptedPaymentMethod?: IUnacceptedPaymentMethodType[];
86
91
  seller: ISeller;
87
92
  itemOffered: IItemOffered;
88
- identifier?: never;
89
93
  }
90
94
  /**
91
95
  * 拡張可能なイベントオファー
@@ -101,7 +105,6 @@ export interface IExtensibleEventOffer {
101
105
  seller: ISeller;
102
106
  itemOffered: IItemOffered;
103
107
  offeredThrough?: never;
104
- identifier?: never;
105
108
  }
106
109
  export type ISeller4COA = Pick<ISeller, 'id' | 'makesOffer' | 'typeOf'>;
107
110
  export type IOffer4COA = Pick<IOffer, 'typeOf' | 'eligibleQuantity'> & {
@@ -114,7 +117,6 @@ export type IOffer4COA = Pick<IOffer, 'typeOf' | 'eligibleQuantity'> & {
114
117
  availableChannel?: never;
115
118
  };
116
119
  unacceptedPaymentMethod?: never;
117
- identifier?: never;
118
120
  };
119
121
  export type ICOAKubun = COAFactory.master.IKubunNameResult;
120
122
  export type ICOAInfo = Pick<COAFactory.master.IScheduleResult, 'dateJouei' | 'titleCode' | 'titleBranchNum' | 'timeBegin' | 'timeEnd' | 'screenCode' | 'trailerTime' | 'nameServiceDay' | 'availableNum' | 'rsvStartDate' | 'rsvEndDate' | 'flgEarlyBooking'> & {
@@ -150,7 +152,7 @@ export type ICOAOffer = COAFactory.reserve.IUpdReserveTicket & {
150
152
  */
151
153
  usePoint: number;
152
154
  };
153
- export type ISuperEvent = Pick<IEventSeries, 'typeOf' | 'id' | 'soundFormat' | 'workPerformed' | 'location' | 'kanaName' | 'name' | 'additionalProperty' | 'description' | 'headline' | 'dubLanguage' | 'subtitleLanguage' | 'identifier' | 'alternativeHeadline' | 'duration' | 'coaInfo'> & {
155
+ export type ISuperEvent = Pick<IEventSeries, 'typeOf' | 'id' | 'workPerformed' | 'location' | 'kanaName' | 'name' | 'additionalProperty' | 'description' | 'headline' | 'dubLanguage' | 'subtitleLanguage' | 'identifier' | 'alternativeHeadline' | 'duration' | 'coaInfo'> & {
154
156
  startDate?: Date;
155
157
  endDate?: Date;
156
158
  };
@@ -178,18 +180,28 @@ export interface ILocation {
178
180
  * COAでは値無し
179
181
  */
180
182
  address?: IMultilingualString;
181
- /**
182
- * maximumPhysicalAttendeeCapacityへ移行
183
- * 2025-08-24時点で、まだ実態としては属性が残っている
184
- * 2025-08-30: 値をunset
185
- */
186
- maximumAttendeeCapacity?: never;
187
183
  }
188
184
  export type IName = IMultilingualString;
189
185
  /**
190
186
  * イベント属性
191
187
  */
192
- interface IAnyEventAttributes extends Pick<IBaseAttributes<EventType.ScreeningEvent>, 'additionalProperty' | 'project' | 'identifier' | 'eventStatus' | 'name' | 'typeOf'> {
188
+ interface IAnyEventAttributes {
189
+ project: Pick<IProject, 'id' | 'typeOf'>;
190
+ /**
191
+ * イベントタイプ
192
+ */
193
+ typeOf: EventType.ScreeningEvent;
194
+ /**
195
+ * イベント識別子
196
+ * プロジェクト内でユニーク必須
197
+ */
198
+ identifier?: string;
199
+ /**
200
+ * イベントステータス
201
+ * イベントがキャンセル、あるいは、延期された場合に主に使用されます。
202
+ */
203
+ eventStatus: EventStatusType;
204
+ additionalProperty?: IPropertyValue<string>[];
193
205
  /**
194
206
  * 予約集計結果としてのキャパシティ
195
207
  */
@@ -264,8 +276,10 @@ export interface IAttributes extends Pick<IAnyEventAttributes, 'maximumPhysicalA
264
276
  /**
265
277
  * イベント
266
278
  */
267
- export type IEvent = IBaseEvent<IAttributes>;
268
- export type IOffers4create = Pick<IOffer, 'unacceptedPaymentMethod' | 'identifier'> & {
279
+ export type IEvent = IAttributes & {
280
+ id: string;
281
+ };
282
+ export type IOffers4create = Pick<IOffer, 'unacceptedPaymentMethod'> & {
269
283
  /**
270
284
  * 最大予約数を指定
271
285
  */
@@ -280,24 +294,18 @@ export type IOffers4create = Pick<IOffer, 'unacceptedPaymentMethod' | 'identifie
280
294
  seller: ISeller4create;
281
295
  };
282
296
  export type ICreateParams = Pick<IAttributes, 'doorTime' | 'startDate' | 'endDate' | 'eventStatus' | 'additionalProperty' | 'identifier' | 'maximumPhysicalAttendeeCapacity'> & {
283
- location?: never;
284
- superEvent?: never;
285
297
  offers: IOffers4create;
286
298
  };
287
- export type IOffer4update = Pick<IOffers4create, 'eligibleQuantity' | 'identifier' | 'unacceptedPaymentMethod'> & {
299
+ export type IOffer4update = Pick<IOffers4create, 'eligibleQuantity' | 'unacceptedPaymentMethod'> & {
288
300
  /**
289
301
  * 興行IDを指定
290
302
  */
291
- itemOffered: Pick<IItemOffered, 'id'> & {
292
- serviceOutput?: never;
293
- };
294
- seller?: never;
303
+ itemOffered: Pick<IItemOffered, 'id'> & {};
295
304
  };
296
305
  /**
297
306
  * 単一イベント編集パラメータ
298
307
  */
299
308
  export type IUpdateByIdParams = Pick<ICreateParams, 'additionalProperty' | 'doorTime' | 'endDate' | 'eventStatus' | 'startDate' | 'maximumPhysicalAttendeeCapacity'> & {
300
- location?: never;
301
309
  offers: IOffer4update;
302
310
  };
303
311
  /**
@@ -314,19 +322,12 @@ export type IUpdateByIdentifierParams = Pick<IUpdateByIdParams, 'additionalPrope
314
322
  */
315
323
  seller: Pick<ISeller4create, 'makesOffer'>;
316
324
  };
317
- location?: never;
318
- superEvent?: never;
319
325
  };
320
- /**
321
- * ソート条件
322
- */
323
- export { ISortOrder };
324
326
  export interface IOfferSearchConditions {
325
327
  itemOffered?: {
326
328
  id?: {
327
329
  $in?: string[];
328
330
  };
329
- serviceType?: never;
330
331
  serviceOutput?: {
331
332
  reservedTicket?: {
332
333
  ticketedSeat?: {
@@ -361,10 +362,64 @@ export interface IOfferSearchConditions {
361
362
  };
362
363
  };
363
364
  }
365
+ /**
366
+ * ソート条件
367
+ */
368
+ export interface ISortOrder {
369
+ startDate?: SortType;
370
+ }
364
371
  /**
365
372
  * イベント検索条件
366
373
  */
367
- export interface ISearchConditions extends IBaseSearchConditions {
374
+ export interface ISearchConditions {
375
+ limit?: number;
376
+ page?: number;
377
+ sort?: ISortOrder;
378
+ id?: {
379
+ $eq?: string;
380
+ $in?: string[];
381
+ };
382
+ identifiers?: string[];
383
+ organizer?: {
384
+ id?: {
385
+ $eq?: string;
386
+ };
387
+ };
388
+ project?: {
389
+ id?: {
390
+ $eq?: string;
391
+ };
392
+ };
393
+ /**
394
+ * 開催中 from
395
+ * ISO 8601 date format
396
+ */
397
+ inSessionFrom?: Date;
398
+ /**
399
+ * 開催中 through
400
+ * ISO 8601 date format
401
+ */
402
+ inSessionThrough?: Date;
403
+ /**
404
+ * 開始日時 from
405
+ * ISO 8601 date format
406
+ */
407
+ startFrom?: Date;
408
+ /**
409
+ * 開始日時 through
410
+ * ISO 8601 date format
411
+ */
412
+ startThrough?: Date;
413
+ /**
414
+ * 終了日時 from
415
+ * ISO 8601 date format
416
+ */
417
+ endFrom?: Date;
418
+ /**
419
+ * 終了日時 through
420
+ * ISO 8601 date format
421
+ */
422
+ endThrough?: Date;
368
423
  additionalProperty?: {
369
424
  $elemMatch?: {
370
425
  name?: {
@@ -1,11 +1,12 @@
1
- import { IAvailableAtOrFrom, IOffer } from '../offer';
1
+ import { IAvailableAtOrFrom } from '../offer';
2
2
  import { OfferType } from '../offerType';
3
3
  type IOfferAvailableAtOrFrom = Pick<IAvailableAtOrFrom, 'id'>;
4
4
  /**
5
5
  * イベントに対する単一オファー
6
6
  * 利用可能アプリケーションのみ定義
7
+ * 基本的にこれ以上拡張はしない(2026-10-11)
7
8
  */
8
- interface ISingleEventOffer extends Pick<IOffer, 'typeOf' | 'availabilityEnds' | 'availabilityStarts' | 'validFrom' | 'validThrough'> {
9
+ interface ISingleEventOffer {
9
10
  typeOf: OfferType.Offer;
10
11
  /**
11
12
  * いつまで表示可能か
@@ -24,13 +25,13 @@ interface ISingleEventOffer extends Pick<IOffer, 'typeOf' | 'availabilityEnds' |
24
25
  */
25
26
  validThrough: Date;
26
27
  availableAtOrFrom: IOfferAvailableAtOrFrom;
27
- identifier?: never;
28
- validForMemberTier?: never;
29
- offeredBy?: never;
30
28
  }
31
29
  /**
32
30
  * アプリケーションごとのイベントに対するオファー
33
31
  * 基本的に有効期間を定義
34
32
  */
35
33
  type ISellerMakesOffer = ISingleEventOffer;
36
- export { ISellerMakesOffer, };
34
+ export type ISellerMakesOffer4create = Pick<ISellerMakesOffer, 'availabilityEnds' | 'availabilityStarts' | 'validFrom' | 'validThrough' | 'typeOf'> & {
35
+ availableAtOrFrom: Pick<IOfferAvailableAtOrFrom, 'id'>;
36
+ };
37
+ export { ISellerMakesOffer };