@chevre/factory 5.3.0-alpha.0 → 5.3.0-alpha.2

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.
@@ -23,6 +23,14 @@ export interface IPurpose {
23
23
  typeOf: TransactionType.PlaceOrder;
24
24
  id: string;
25
25
  }
26
+ /**
27
+ * 決済方法チケット
28
+ */
29
+ export interface ITicketAsInstrument {
30
+ ticketToken: string;
31
+ typeOf: 'Ticket';
32
+ }
33
+ export type IInstrument = ITicketAsInstrument;
26
34
  /**
27
35
  * 決済採用アクション属性
28
36
  */
@@ -36,6 +44,11 @@ export interface IAttributes extends Pick<AcceptActionFactory.IAttributes<IObjec
36
44
  * authorize payment action identifier
37
45
  */
38
46
  identifier?: string;
47
+ /**
48
+ * 決済採用に使用されるチケット
49
+ * 2025-11-22まではinstrument自体存在しない
50
+ */
51
+ instrument?: IInstrument[];
39
52
  }
40
53
  /**
41
54
  * 決済採用アクション
@@ -4,7 +4,7 @@ import { AvailablePaymentMethodType, IMovieTicket } from '../../../action/trade/
4
4
  import { ActionType } from '../../../actionType';
5
5
  import { ICreditCard, IFromLocation, ITokenizedPaymentCard } from '../../../assetTransaction/pay';
6
6
  import { AssetTransactionType } from '../../../assetTransactionType';
7
- import { IOrderPaymentMethodIssuedThrough, ITotalPaymentDue } from '../../../order';
7
+ import { IEventServiceAsOrderedItem, IOrder, IOrderPaymentMethodIssuedThrough, IReservationFor4EventServiceOrderedItem, ITotalPaymentDue } from '../../../order';
8
8
  import { PaymentStatusType } from '../../../paymentStatusType';
9
9
  import { IPropertyValue } from '../../../propertyValue';
10
10
  import { IPermitAsServiceOutput } from '../../../service/paymentService';
@@ -77,8 +77,9 @@ export interface IObjectIncludingPaymentMethodDetails {
77
77
  */
78
78
  movieTickets?: IMovieTicket[];
79
79
  /**
80
- * メンバーシップチケット指定の場合
81
- * 2024-08-13~
80
+ * 決済方法チケット
81
+ * 当初はメンバーシップチケットとして使用(2024-08-13~)
82
+ * メンバーシップチケットに限らず、承認前に発行された決済方法チケットを指定すると、paymentMethodIdはチケットに依存する
82
83
  */
83
84
  ticketToken?: string;
84
85
  }
@@ -132,6 +133,34 @@ export interface IResultPaymentMethod {
132
133
  currency?: string;
133
134
  };
134
135
  }
136
+ /**
137
+ * 決済承認結果としての請求書に関連する注文アイテムとしての興行
138
+ */
139
+ export type IEventServiceAsInvoiceOrderedItem = Pick<IEventServiceAsOrderedItem, 'typeOf'> & {
140
+ serviceOutput: {
141
+ /**
142
+ * 請求書に関連するイベント
143
+ * 興行オファー承認のイベントリストと完全に一致する必要がある
144
+ */
145
+ reservationFor: Pick<IReservationFor4EventServiceOrderedItem, 'id' | 'typeOf'>;
146
+ };
147
+ };
148
+ /**
149
+ * 決済承認結果としての請求書に関連する注文アイテム
150
+ */
151
+ export interface IInvoiceOrderedItem {
152
+ typeOf: 'OrderItem';
153
+ orderedItem: IEventServiceAsInvoiceOrderedItem;
154
+ }
155
+ /**
156
+ * 決済承認結果としての請求書に関連する注文
157
+ */
158
+ export interface IInvoiceReferenceOrder extends Pick<IOrder, 'typeOf'> {
159
+ /**
160
+ * 決済承認プロセスにおいて注文アイテムを指定された場合のみ定義される
161
+ */
162
+ orderedItem?: IInvoiceOrderedItem[];
163
+ }
135
164
  export interface IResultAsInvoice {
136
165
  /**
137
166
  * The identifier for the account the payment will be applied to.
@@ -166,6 +195,11 @@ export interface IResultAsInvoice {
166
195
  additionalProperty?: IPropertyValue<string>[];
167
196
  typeOf: ResultType;
168
197
  issuedThrough: IOrderPaymentMethodIssuedThrough;
198
+ /**
199
+ * 請求の関連注文
200
+ * support(2025-11-23~)
201
+ */
202
+ referencesOrder?: IInvoiceReferenceOrder;
169
203
  }
170
204
  export type IResultAsPermit = Pick<IPermitAsServiceOutput, 'typeOf' | 'issuedThrough'> & {
171
205
  /**
@@ -181,17 +215,12 @@ export interface IPurpose {
181
215
  export declare enum ServiceIdentifier {
182
216
  Chevre = "Chevre"
183
217
  }
184
- export interface IInstrumentAsService {
185
- typeOf: 'WebAPI';
186
- transactionNumber: never;
187
- identifier: ServiceIdentifier;
188
- }
189
218
  export interface IInstrumentAsAssetTransaction {
190
219
  typeOf: AssetTransactionType.Pay;
191
220
  transactionNumber: string;
192
221
  identifier: ServiceIdentifier;
193
222
  }
194
- export type IInstrument = IInstrumentAsAssetTransaction | IInstrumentAsService;
223
+ export type IInstrument = IInstrumentAsAssetTransaction;
195
224
  export interface IAttributes extends AuthorizeActionFactory.IAttributes<IObject, IResult> {
196
225
  typeOf: ActionType.AuthorizeAction;
197
226
  object: IObject;
@@ -1,6 +1,6 @@
1
+ import { IResultAsInvoice } from './action/authorize/paymentMethod/any';
1
2
  import { IEventOfferToken } from './assetTransaction/reserve';
2
3
  import { CreativeWorkType } from './creativeWorkType';
3
- import { IMember, IMemberOfRole } from './iam';
4
4
  import { IInvoice } from './invoice';
5
5
  import { OfferType } from './offerType';
6
6
  import { IOrder } from './order';
@@ -13,11 +13,20 @@ import { ReservationType } from './reservationType';
13
13
  import { PaymentServiceType } from './service/paymentService';
14
14
  import { SortType } from './sortType';
15
15
  import { TransactionType } from './transactionType';
16
+ /**
17
+ * 発券対象の注文
18
+ */
16
19
  export type IOrderAsObject = Pick<IOrder, 'orderNumber' | 'typeOf'>;
17
20
  export type IPermitIssuedThroughOfObjectTypeOfGood = Pick<IPermitIssuedThroughAsProduct, 'id' | 'typeOf'>;
18
21
  export type IPermitAsTypeOfGood = Pick<IPermitAsGood, 'identifier' | 'typeOf'> & {
19
22
  issuedThrough?: IPermitIssuedThroughOfObjectTypeOfGood;
20
23
  };
24
+ /**
25
+ * 決済方法チケットの請求情報
26
+ */
27
+ export interface IInvoiceAsPaymentMethodServiceOutput extends Pick<IResultAsInvoice, 'paymentMethodId' | 'referencesOrder'> {
28
+ typeOf: IInvoice['typeOf'];
29
+ }
21
30
  /**
22
31
  * 決済サービス発行のチケット
23
32
  * new(2025-11-11~)
@@ -25,7 +34,7 @@ export type IPermitAsTypeOfGood = Pick<IPermitAsGood, 'identifier' | 'typeOf'> &
25
34
  export interface IPaymentMethodAsTypeOfGood {
26
35
  id: string;
27
36
  typeOf: PaymentServiceType.CreditCard | PaymentServiceType.MovieTicket;
28
- serviceOutput: Pick<IInvoice, 'paymentMethodId' | 'typeOf'>;
37
+ serviceOutput: IInvoiceAsPaymentMethodServiceOutput;
29
38
  issuedThrough?: never;
30
39
  }
31
40
  /**
@@ -37,7 +46,7 @@ export interface IFaceToFacePaymentMethodAsTypeOfGood {
37
46
  */
38
47
  id?: never;
39
48
  typeOf: PaymentServiceType.FaceToFace;
40
- serviceOutput: Pick<IInvoice, 'paymentMethodId' | 'typeOf'>;
49
+ serviceOutput: IInvoiceAsPaymentMethodServiceOutput;
41
50
  issuedThrough?: never;
42
51
  }
43
52
  export type IPermitOwnershipInfo = Pick<IOwnershipInfo<IPermitAsTypeOfGood>, 'typeOf' | 'typeOfGood'>;
@@ -51,13 +60,10 @@ export type IPaymentMethodOwnershipInfo = Pick<IOwnershipInfo<IPaymentMethodAsTy
51
60
  * support(2025-11-12~)
52
61
  */
53
62
  export type IFaceToFacePaymentMethodOwnershipInfo = Pick<IOwnershipInfo<IFaceToFacePaymentMethodAsTypeOfGood>, 'typeOf' | 'typeOfGood'>;
54
- export type IOwnershipInfoAsObject = IPermitOwnershipInfo | IPaymentMethodOwnershipInfo | IFaceToFacePaymentMethodOwnershipInfo;
55
63
  /**
56
- * 承認対象としてのIAMメンバー
64
+ * Permit所有権あるいは決済方法所有権
57
65
  */
58
- export type IRoleAsObject = Pick<IMember, 'member' | 'typeOf'> & {
59
- member: Pick<IMemberOfRole, 'hasRole' | 'id' | 'memberOf' | 'typeOf'>;
60
- };
66
+ export type IOwnershipInfoAsObject = IPermitOwnershipInfo | IPaymentMethodOwnershipInfo | IFaceToFacePaymentMethodOwnershipInfo;
61
67
  /**
62
68
  * トークン化されたメンバープログラムティア
63
69
  */
@@ -106,7 +112,7 @@ export interface IOfferAsObject {
106
112
  */
107
113
  validForMemberTier?: ITokenizedMemberProgramTier;
108
114
  }
109
- export type IObject = IOrderAsObject | IOwnershipInfoAsObject | IRoleAsObject | IOfferAsObject;
115
+ export type IObject = IOrderAsObject | IOwnershipInfoAsObject | IOfferAsObject;
110
116
  export interface IAudienceAsPlaceOrder {
111
117
  /**
112
118
  * 取引ID
@@ -122,16 +128,24 @@ export interface IAudienceAsApplication {
122
128
  typeOf: CreativeWorkType.SoftwareApplication | CreativeWorkType.WebApplication;
123
129
  }
124
130
  export type IAudience = IAudienceAsApplication | IAudienceAsPlaceOrder;
131
+ /**
132
+ * 承認作成者
133
+ * 現時点でSoftwareApplicationは認めない
134
+ */
125
135
  export interface IAuthor {
126
136
  id: string;
127
137
  typeOf: PersonType.Person | CreativeWorkType.WebApplication;
128
138
  }
139
+ /**
140
+ * 承認発行組織
141
+ */
129
142
  export interface IIssuedBy {
130
143
  id: string;
131
144
  typeOf: OrganizationType.Corporation | OrganizationType.Project;
132
145
  }
133
146
  /**
134
147
  * 承認
148
+ * 任意の情報をチケット化するために使用
135
149
  */
136
150
  export interface IAuthorization {
137
151
  project: Pick<IProject, 'id' | 'typeOf'>;
@@ -154,8 +168,14 @@ export interface IAuthorization {
154
168
  */
155
169
  validUntil: Date;
156
170
  audience?: IAudience;
157
- author?: IAuthor;
158
- issuedBy?: IIssuedBy;
171
+ /**
172
+ * 承認作成者
173
+ */
174
+ author: IAuthor;
175
+ /**
176
+ * 承認発行組織
177
+ */
178
+ issuedBy: IIssuedBy;
159
179
  }
160
180
  /**
161
181
  * ソート条件
package/lib/invoice.d.ts CHANGED
@@ -11,9 +11,6 @@ import { ISeller } from './seller';
11
11
  import { PaymentServiceType } from './service/paymentService';
12
12
  export type IBroker = Pick<ISeller, 'id' | 'typeOf'> | IPerson;
13
13
  export type IProvider = Pick<ISeller, 'id' | 'typeOf'> | IPerson;
14
- export interface IReferenceOrder extends OrderFactory.IOrder {
15
- acceptedOffers: OrderFactory.IAcceptedOffer<OrderFactory.IItemOffered>[];
16
- }
17
14
  export type IReservationPriceAccounting = Pick<IAccounting, 'accountsReceivable'>;
18
15
  export type IAppliesToAddOn = Pick<IUnitPriceSpecAppliesToAddOn, 'typeOf'>;
19
16
  export type IMinimizedCategoryCodeChargeSpecification = Pick<ICategoryCodeChargeSpecification, 'typeOf' | 'price'>;
@@ -126,7 +123,6 @@ export interface IInvoice {
126
123
  /**
127
124
  * The Order(s) related to this Invoice. One or more Orders may be combined into a single Invoice.
128
125
  */
129
- referencesOrder?: IReferenceOrder;
130
126
  /**
131
127
  * The date the invoice is scheduled to be paid.
132
128
  */
package/lib/order.d.ts CHANGED
@@ -85,6 +85,7 @@ export interface IReferencedInvoice {
85
85
  */
86
86
  additionalProperty: IPropertyValue<string>[];
87
87
  issuedThrough: IOrderPaymentMethodIssuedThrough;
88
+ referencesOrder?: never;
88
89
  }
89
90
  export type IWorkPerformed = Pick<EventReservationFactory.IOptimizedWorkPerformed, 'typeOf' | 'id' | 'identifier' | 'name' | 'duration'>;
90
91
  export type ISuperEvent = Pick<EventReservationFactory.IOptimizedSuperEvent, 'id' | 'location' | 'name' | 'soundFormat' | 'typeOf' | 'videoFormat' | 'headline' | 'identifier' | 'alternativeHeadline' | 'duration' | 'coaInfo'> & {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chevre/factory",
3
- "version": "5.3.0-alpha.0",
3
+ "version": "5.3.0-alpha.2",
4
4
  "description": "Chevre Factory Library for Javascript",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",