@chevre/factory 10.5.0-alpha.2 → 10.5.0-alpha.3

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.
@@ -1,12 +1,6 @@
1
- import { IAttributes as IBaseAttributes } from '../event';
2
- import { EventType } from '../eventType';
3
- import { IMultilingualString } from '../multilingualString';
4
- import { IAvailableAtOrFrom, ICategory as IOfferCategory, IEligibleQuantity } from '../offer';
1
+ import { IAvailableAtOrFrom, ICategory as IOfferCategory } from '../offer';
5
2
  import { OfferType } from '../offerType';
6
- import { OrganizationType } from '../organizationType';
7
- import { PlaceType } from '../placeType';
8
3
  import { IServiceType as IProductServiceType } from '../product';
9
- import { Identifier as WebAPIIdentifier, IService as IWebAPIService } from '../service/webAPI';
10
4
  import { ISellerMakesOffer } from './sellerMakesOffer';
11
5
  export { ISellerMakesOffer };
12
6
  /**
@@ -27,10 +21,7 @@ export interface IOfferWithAggregateReservation {
27
21
  typeOf: OfferType.Offer;
28
22
  id: string;
29
23
  identifier: string;
30
- aggregateReservation?: Pick<IAggregateReservation, 'typeOf' | 'reservationCount'> & {
31
- attendeeCount?: never;
32
- checkInCount?: never;
33
- };
24
+ aggregateReservation?: Pick<IAggregateReservation, 'typeOf' | 'reservationCount'>;
34
25
  category?: IOfferCategory;
35
26
  maximumAttendeeCapacity?: number;
36
27
  remainingAttendeeCapacity?: number;
@@ -44,130 +35,10 @@ export interface IAggregateOffer {
44
35
  offerCount?: number;
45
36
  offers?: IOfferWithAggregateReservation[];
46
37
  }
47
- /**
48
- * 入場ゲートにおけるオファー集計(オファーカテゴリーごと)
49
- */
50
- export interface IAggregateOfferOfPlace {
51
- typeOf: OfferType.AggregateOffer;
52
- offers?: {
53
- typeOf: OfferType.Offer;
54
- id: string;
55
- identifier?: string;
56
- category?: IOfferCategory;
57
- aggregateReservation?: Pick<IAggregateReservation, 'typeOf' | 'useActionCount'>;
58
- }[];
59
- }
60
38
  export type IServiceType = IProductServiceType & {
61
39
  id?: string;
62
40
  };
63
- export type IOfferedThrough = Pick<IWebAPIService<WebAPIIdentifier.Chevre>, 'identifier' | 'typeOf'>;
64
41
  export type IOfferAvailableAtOrFrom = Pick<IAvailableAtOrFrom, 'id'>;
65
- export interface ISeller {
66
- typeOf: OrganizationType.Corporation;
67
- /**
68
- * 販売者ID
69
- */
70
- id: string;
71
- name?: IMultilingualString;
72
- /**
73
- * アプリケーションごとのオファー
74
- */
75
- makesOffer: ISellerMakesOffer[];
76
- }
77
- export { IEligibleQuantity };
78
- /**
79
- * イベントのルーム
80
- */
81
- export interface ILocation {
82
- typeOf: PlaceType.ScreeningRoom;
83
- /**
84
- * ルームコード
85
- */
86
- branchCode: string;
87
- /**
88
- * ルームの名称を同期
89
- */
90
- name?: IMultilingualString;
91
- /**
92
- * ルームのアドレスを同期
93
- * COAでは値無し
94
- */
95
- address?: IMultilingualString;
96
- /**
97
- * maximumPhysicalAttendeeCapacityへ移行
98
- * 2025-08-24時点で、まだ実態としては属性が残っている
99
- * 2025-08-30: 値をunset
100
- */
101
- maximumAttendeeCapacity?: never;
102
- }
103
- export type IName = IMultilingualString;
104
- export interface IOrganizer {
105
- id: string;
106
- }
107
- /**
108
- * イベント属性
109
- */
110
- export interface IAttributes extends Pick<IBaseAttributes<EventType>, 'additionalProperty' | 'project' | 'identifier' | 'description' | 'eventStatus' | 'name' | 'typeOf'> {
111
- /**
112
- * 予約集計結果としてのキャパシティ
113
- */
114
- maximumAttendeeCapacity?: number;
115
- /**
116
- * イベント固有のキャパシティ
117
- * 施設のキャパシティに依存しない場合に使用
118
- */
119
- maximumPhysicalAttendeeCapacity?: number;
120
- /**
121
- * 残り収容人数
122
- */
123
- remainingAttendeeCapacity?: number;
124
- /**
125
- * ルーム
126
- */
127
- location: ILocation;
128
- /**
129
- * イベント名称
130
- */
131
- name: IName;
132
- /**
133
- * 開場日時
134
- * ISO 8601 date format
135
- */
136
- doorTime?: Date;
137
- /**
138
- * 終了日時(
139
- * ISO 8601 date format
140
- */
141
- endDate: Date;
142
- /**
143
- * 開始日時
144
- * ISO 8601 date format
145
- */
146
- startDate: Date;
147
- /**
148
- * 販売情報
149
- */
150
- /**
151
- * 発券数
152
- */
153
- checkInCount?: number;
154
- /**
155
- * 参加数
156
- */
157
- attendeeCount?: number;
158
- /**
159
- * 予約集計
160
- */
161
- aggregateReservation?: IAggregateReservation;
162
- organizer: IOrganizer;
163
- }
164
42
  export type ISellerMakesOffer4create = Pick<ISellerMakesOffer, 'availabilityEnds' | 'availabilityStarts' | 'validFrom' | 'validThrough' | 'typeOf' | 'identifier'> & {
165
43
  availableAtOrFrom: Pick<IOfferAvailableAtOrFrom, 'id'>;
166
44
  };
167
- export interface ISeller4create {
168
- makesOffer: ISellerMakesOffer4create[];
169
- /**
170
- * POS以外のアプリケーションの共通設定
171
- */
172
- makesOfferDefault?: Pick<ISellerMakesOffer, 'typeOf' | 'availabilityEnds' | 'availabilityStarts' | 'validFrom' | 'validThrough'>;
173
- }
@@ -1,16 +1,19 @@
1
1
  import type { COAFactory } from '@coasystems/factory';
2
- import { IEvent as IBaseEvent, ISearchConditions as IBaseSearchConditions, ISortOrder } from '../event';
2
+ import { IEvent as IBaseEvent, ISearchConditions as IBaseSearchConditions, ISortOrder, IAttributes as IBaseAttributes } from '../event';
3
3
  import { EventStatusType } from '../eventStatusType';
4
4
  import { IEvent as IEventSeries, IUnacceptedPaymentMethodType } from './eventSeries';
5
5
  import { EventType } from '../eventType';
6
+ import { IMultilingualString } from '../multilingualString';
7
+ import { IEligibleQuantity } from '../offer';
6
8
  import { OfferType } from '../offerType';
9
+ import { OrganizationType } from '../organizationType';
7
10
  import { PlaceType } from '../placeType';
8
11
  import { ProductType } from '../product';
9
12
  import { TicketType } from '../reservation';
10
13
  import { ReservationType } from '../reservationType';
11
14
  import { Identifier as WebAPIIdentifier, IService as IWebAPIService } from '../service/webAPI';
12
- import { IAggregateReservation, IOfferWithAggregateReservation, IAggregateOffer, IOfferAvailableAtOrFrom, ISellerMakesOffer, IServiceType, IOfferedThrough, ISeller, IEligibleQuantity, ILocation, IName, ISellerMakesOffer4create, ISeller4create, IAttributes as IAnyEventAttributes } from './anyEvent';
13
- export { IAggregateReservation, IOfferWithAggregateReservation, IAggregateOffer, IOfferAvailableAtOrFrom, ISellerMakesOffer, IServiceType, IOfferedThrough, ISeller, IEligibleQuantity, ILocation, IName, ISellerMakesOffer4create, ISeller4create };
15
+ import { IAggregateReservation, IOfferWithAggregateReservation, IAggregateOffer, IOfferAvailableAtOrFrom, ISellerMakesOffer, IServiceType, ISellerMakesOffer4create } from './anyEvent';
16
+ export { IAggregateReservation, IOfferWithAggregateReservation, IAggregateOffer, IOfferAvailableAtOrFrom, ISellerMakesOffer, IServiceType, IEligibleQuantity, ISellerMakesOffer4create };
14
17
  export interface IServiceOutput {
15
18
  typeOf: ReservationType.EventReservation;
16
19
  reservedTicket?: {
@@ -49,6 +52,26 @@ export interface IItemOffered {
49
52
  typeOf: ProductType.EventService;
50
53
  availableChannel?: never;
51
54
  }
55
+ export type IOfferedThrough = Pick<IWebAPIService<WebAPIIdentifier.Chevre>, 'identifier' | 'typeOf'>;
56
+ export interface ISeller {
57
+ typeOf: OrganizationType.Corporation;
58
+ /**
59
+ * 販売者ID
60
+ */
61
+ id: string;
62
+ name?: IMultilingualString;
63
+ /**
64
+ * アプリケーションごとのオファー
65
+ */
66
+ makesOffer: ISellerMakesOffer[];
67
+ }
68
+ export interface ISeller4create {
69
+ makesOffer: ISellerMakesOffer4create[];
70
+ /**
71
+ * POS以外のアプリケーションの共通設定
72
+ */
73
+ makesOfferDefault?: Pick<ISellerMakesOffer, 'typeOf' | 'availabilityEnds' | 'availabilityStarts' | 'validFrom' | 'validThrough'>;
74
+ }
52
75
  /**
53
76
  * イベントに対するオファー
54
77
  */
@@ -131,10 +154,96 @@ export type ISuperEvent = Pick<IEventSeries, 'typeOf' | 'id' | 'soundFormat' | '
131
154
  startDate?: Date;
132
155
  endDate?: Date;
133
156
  };
157
+ export interface IOrganizer {
158
+ /**
159
+ * 販売者ID
160
+ */
161
+ id: string;
162
+ }
163
+ /**
164
+ * イベントのルーム
165
+ */
166
+ export interface ILocation {
167
+ typeOf: PlaceType.ScreeningRoom;
168
+ /**
169
+ * ルームコード
170
+ */
171
+ branchCode: string;
172
+ /**
173
+ * ルームの名称を同期
174
+ */
175
+ name?: IMultilingualString;
176
+ /**
177
+ * ルームのアドレスを同期
178
+ * COAでは値無し
179
+ */
180
+ address?: IMultilingualString;
181
+ /**
182
+ * maximumPhysicalAttendeeCapacityへ移行
183
+ * 2025-08-24時点で、まだ実態としては属性が残っている
184
+ * 2025-08-30: 値をunset
185
+ */
186
+ maximumAttendeeCapacity?: never;
187
+ }
188
+ export type IName = IMultilingualString;
189
+ /**
190
+ * イベント属性
191
+ */
192
+ interface IAnyEventAttributes extends Pick<IBaseAttributes<EventType.ScreeningEvent>, 'additionalProperty' | 'project' | 'identifier' | 'eventStatus' | 'name' | 'typeOf'> {
193
+ /**
194
+ * 予約集計結果としてのキャパシティ
195
+ */
196
+ maximumAttendeeCapacity?: number;
197
+ /**
198
+ * イベント固有のキャパシティ
199
+ * 施設のキャパシティに依存しない場合に使用
200
+ */
201
+ maximumPhysicalAttendeeCapacity?: number;
202
+ /**
203
+ * 残り収容人数
204
+ */
205
+ remainingAttendeeCapacity?: number;
206
+ /**
207
+ * ルーム
208
+ */
209
+ location: ILocation;
210
+ /**
211
+ * イベント名称
212
+ */
213
+ name: IName;
214
+ /**
215
+ * 開場日時
216
+ * ISO 8601 date format
217
+ */
218
+ doorTime?: Date;
219
+ /**
220
+ * 終了日時(
221
+ * ISO 8601 date format
222
+ */
223
+ endDate: Date;
224
+ /**
225
+ * 開始日時
226
+ * ISO 8601 date format
227
+ */
228
+ startDate: Date;
229
+ /**
230
+ * 発券数
231
+ */
232
+ checkInCount?: number;
233
+ /**
234
+ * 参加数
235
+ */
236
+ attendeeCount?: number;
237
+ /**
238
+ * 予約集計
239
+ */
240
+ aggregateReservation?: IAggregateReservation;
241
+ organizer: IOrganizer;
242
+ }
134
243
  /**
135
244
  * イベント属性
136
245
  */
137
- export interface IAttributes extends Pick<IAnyEventAttributes, 'maximumPhysicalAttendeeCapacity' | 'additionalProperty' | 'project' | 'identifier' | 'description' | 'eventStatus' | 'maximumAttendeeCapacity' | 'remainingAttendeeCapacity' | 'location' | 'name' | 'doorTime' | 'endDate' | 'startDate' | 'aggregateReservation' | 'organizer' | 'checkInCount' | 'attendeeCount'> {
246
+ export interface IAttributes extends Pick<IAnyEventAttributes, 'maximumPhysicalAttendeeCapacity' | 'additionalProperty' | 'project' | 'identifier' | 'eventStatus' | 'maximumAttendeeCapacity' | 'remainingAttendeeCapacity' | 'location' | 'name' | 'doorTime' | 'endDate' | 'startDate' | 'aggregateReservation' | 'organizer' | 'checkInCount' | 'attendeeCount'> {
138
247
  /**
139
248
  * 親イベント
140
249
  * 施設コンテンツに相当
@@ -150,6 +259,7 @@ export interface IAttributes extends Pick<IAnyEventAttributes, 'maximumPhysicalA
150
259
  */
151
260
  coaInfo?: ICOAInfo;
152
261
  typeOf: EventType.ScreeningEvent;
262
+ description?: never;
153
263
  }
154
264
  /**
155
265
  * イベント
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chevre/factory",
3
- "version": "10.5.0-alpha.2",
3
+ "version": "10.5.0-alpha.3",
4
4
  "main": "./lib/index.js",
5
5
  "types": "./lib/index.d.ts",
6
6
  "files": [