@chevre/domain 22.11.0-alpha.3 → 22.11.0-alpha.30

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 (155) hide show
  1. package/example/src/chevre/aggregation/aggregateTasks.ts +41 -0
  2. package/example/src/chevre/assetTransaction/processReserve.ts +0 -1
  3. package/example/src/chevre/notifyAbortedTasksByEmail.ts +1 -1
  4. package/example/src/chevre/reIndex.ts +1 -1
  5. package/example/src/chevre/roles/addAdminPermissionIfNotExists.ts +132 -0
  6. package/example/src/chevre/roles/addDefaultPermissionIfNotExists.ts +37 -0
  7. package/example/src/chevre/roles/addEventOfferPermissionIfNotExists.ts +27 -0
  8. package/example/src/chevre/roles/addPermissionIfNotExists.ts +39 -6
  9. package/example/src/chevre/roles/addProjectCreatorRole.ts +48 -0
  10. package/example/src/chevre/roles/assignGlobalRoles.ts +72 -0
  11. package/example/src/chevre/roles/findPermissions.ts +84 -0
  12. package/example/src/chevre/roles/findRoleNames.ts +117 -0
  13. package/example/src/chevre/roles/removeConsolePermissionIfExists.ts +38 -0
  14. package/example/src/chevre/roles/removePermissionFromAPIRoles.ts +46 -0
  15. package/example/src/chevre/roles/removePermissionIfExists.ts +39 -0
  16. package/example/src/chevre/settings/addSettings.ts +31 -17
  17. package/example/src/chevre/stockHolder/checkRedisKeyCount.ts +11 -20
  18. package/example/src/chevre/task/countPotentiallyRunning.ts +41 -0
  19. package/example/src/chevre/task/countTasks.ts +51 -0
  20. package/example/src/chevre/unsetUnnecessaryFields.ts +8 -5
  21. package/example/src/idaas/auth0/adminApplications.ts +183 -0
  22. package/example/src/idaas/auth0/getToken.ts +55 -0
  23. package/example/src/idaas/auth0/getTokenByPrivateKeyJWT.ts +84 -0
  24. package/example/src/regex.ts +31 -0
  25. package/lib/chevre/eventEmitter/task.d.ts +29 -6
  26. package/lib/chevre/index.d.ts +0 -2
  27. package/lib/chevre/index.js +0 -10
  28. package/lib/chevre/repo/confirmationNumber.d.ts +0 -11
  29. package/lib/chevre/repo/confirmationNumber.js +15 -54
  30. package/lib/chevre/repo/identity.d.ts +11 -33
  31. package/lib/chevre/repo/identity.js +10 -15
  32. package/lib/chevre/repo/member.d.ts +22 -4
  33. package/lib/chevre/repo/member.js +81 -27
  34. package/lib/chevre/repo/mongoose/schemas/identity.d.ts +1 -1
  35. package/lib/chevre/repo/mongoose/schemas/member/global.d.ts +14 -0
  36. package/lib/chevre/repo/mongoose/schemas/member/global.js +82 -0
  37. package/lib/chevre/repo/mongoose/schemas/setting.d.ts +15 -0
  38. package/lib/chevre/repo/mongoose/schemas/setting.js +1 -0
  39. package/lib/chevre/repo/mongoose/schemas/task.js +9 -0
  40. package/lib/chevre/repo/orderNumber.d.ts +0 -11
  41. package/lib/chevre/repo/orderNumber.js +13 -51
  42. package/lib/chevre/repo/role.d.ts +16 -4
  43. package/lib/chevre/repo/role.js +71 -32
  44. package/lib/chevre/repo/serviceOutputIdentifier.d.ts +0 -4
  45. package/lib/chevre/repo/serviceOutputIdentifier.js +13 -38
  46. package/lib/chevre/repo/setting.d.ts +5 -10
  47. package/lib/chevre/repo/setting.js +4 -7
  48. package/lib/chevre/repo/stockHolder.js +0 -11
  49. package/lib/chevre/repo/task.d.ts +47 -34
  50. package/lib/chevre/repo/task.js +116 -292
  51. package/lib/chevre/repo/transaction.js +10 -10
  52. package/lib/chevre/repo/transactionNumber.d.ts +0 -11
  53. package/lib/chevre/repo/transactionNumber.js +13 -51
  54. package/lib/chevre/repo/transactionNumberCounter.d.ts +0 -10
  55. package/lib/chevre/repo/transactionNumberCounter.js +34 -29
  56. package/lib/chevre/service/assetTransaction/cancelReservation/start.d.ts +1 -1
  57. package/lib/chevre/service/code.d.ts +5 -28
  58. package/lib/chevre/service/code.js +3 -79
  59. package/lib/chevre/service/iam.d.ts +17 -7
  60. package/lib/chevre/service/iam.js +26 -6
  61. package/lib/chevre/service/notification/notifyAbortedTasksByEmail.d.ts +15 -0
  62. package/lib/chevre/service/notification/notifyAbortedTasksByEmail.js +38 -0
  63. package/lib/chevre/service/notification.d.ts +2 -1
  64. package/lib/chevre/service/notification.js +3 -1
  65. package/lib/chevre/service/task/acceptCOAOffer.d.ts +1 -1
  66. package/lib/chevre/service/task/acceptCOAOffer.js +6 -5
  67. package/lib/chevre/service/task/aggregateOffers.d.ts +1 -1
  68. package/lib/chevre/service/task/aggregateOnSystem.d.ts +4 -2
  69. package/lib/chevre/service/task/aggregateScreeningEvent.d.ts +1 -1
  70. package/lib/chevre/service/task/authorizePayment.d.ts +1 -1
  71. package/lib/chevre/service/task/authorizePayment.js +7 -6
  72. package/lib/chevre/service/task/cancelMoneyTransfer.d.ts +1 -1
  73. package/lib/chevre/service/task/cancelPendingReservation.d.ts +1 -1
  74. package/lib/chevre/service/task/cancelReservation.d.ts +1 -1
  75. package/lib/chevre/service/task/checkMovieTicket.d.ts +1 -1
  76. package/lib/chevre/service/task/checkMovieTicket.js +4 -3
  77. package/lib/chevre/service/task/checkResource.d.ts +1 -1
  78. package/lib/chevre/service/task/confirmMoneyTransfer.d.ts +1 -1
  79. package/lib/chevre/service/task/confirmPayTransaction.d.ts +1 -1
  80. package/lib/chevre/service/task/confirmRegisterService.d.ts +1 -1
  81. package/lib/chevre/service/task/confirmRegisterServiceTransaction.d.ts +1 -1
  82. package/lib/chevre/service/task/confirmReserveTransaction.d.ts +1 -1
  83. package/lib/chevre/service/task/createAccountingReport.d.ts +1 -1
  84. package/lib/chevre/service/task/createEvent.d.ts +1 -1
  85. package/lib/chevre/service/task/deletePerson.d.ts +1 -1
  86. package/lib/chevre/service/task/deleteTransaction.d.ts +1 -1
  87. package/lib/chevre/service/task/givePointAward.d.ts +1 -1
  88. package/lib/chevre/service/task/givePointAward.js +1 -1
  89. package/lib/chevre/service/task/handleNotification.d.ts +4 -2
  90. package/lib/chevre/service/task/importEventCapacitiesFromCOA.d.ts +1 -1
  91. package/lib/chevre/service/task/importEventsFromCOA.d.ts +1 -1
  92. package/lib/chevre/service/task/importOffersFromCOA.d.ts +1 -1
  93. package/lib/chevre/service/task/invalidatePaymentUrl.d.ts +1 -1
  94. package/lib/chevre/service/task/moneyTransfer.d.ts +1 -1
  95. package/lib/chevre/service/task/moneyTransfer.js +1 -1
  96. package/lib/chevre/service/task/onAssetTransactionStatusChanged.d.ts +1 -1
  97. package/lib/chevre/service/task/onAuthorizationCreated.d.ts +1 -1
  98. package/lib/chevre/service/task/onEventChanged.d.ts +1 -1
  99. package/lib/chevre/service/task/onOrderPaymentCompleted.d.ts +1 -1
  100. package/lib/chevre/service/task/onResourceUpdated.d.ts +1 -1
  101. package/lib/chevre/service/task/pay.d.ts +1 -1
  102. package/lib/chevre/service/task/placeOrder.d.ts +1 -1
  103. package/lib/chevre/service/task/publishPaymentUrl.d.ts +1 -1
  104. package/lib/chevre/service/task/publishPaymentUrl.js +6 -7
  105. package/lib/chevre/service/task/refund.d.ts +1 -1
  106. package/lib/chevre/service/task/refund.js +1 -1
  107. package/lib/chevre/service/task/registerService.d.ts +1 -1
  108. package/lib/chevre/service/task/reserve.d.ts +1 -1
  109. package/lib/chevre/service/task/returnMoneyTransfer.d.ts +1 -1
  110. package/lib/chevre/service/task/returnMoneyTransfer.js +1 -1
  111. package/lib/chevre/service/task/returnOrder.d.ts +1 -1
  112. package/lib/chevre/service/task/returnPayTransaction.d.ts +1 -1
  113. package/lib/chevre/service/task/returnPayTransaction.js +1 -1
  114. package/lib/chevre/service/task/returnPointAward.d.ts +1 -1
  115. package/lib/chevre/service/task/returnPointAward.js +1 -1
  116. package/lib/chevre/service/task/returnReserveTransaction.d.ts +1 -1
  117. package/lib/chevre/service/task/returnReserveTransaction.js +1 -1
  118. package/lib/chevre/service/task/sendEmailMessage.d.ts +1 -1
  119. package/lib/chevre/service/task/sendOrder.d.ts +1 -1
  120. package/lib/chevre/service/task/triggerWebhook.d.ts +1 -1
  121. package/lib/chevre/service/task/useReservation.d.ts +1 -1
  122. package/lib/chevre/service/task/voidMoneyTransferTransaction.d.ts +1 -1
  123. package/lib/chevre/service/task/voidPayTransaction.d.ts +1 -1
  124. package/lib/chevre/service/task/voidPayment.d.ts +1 -1
  125. package/lib/chevre/service/task/voidRegisterServiceTransaction.d.ts +1 -1
  126. package/lib/chevre/service/task/voidReserveTransaction.d.ts +1 -1
  127. package/lib/chevre/service/task/voidReserveTransaction.js +4 -3
  128. package/lib/chevre/service/task.d.ts +7 -29
  129. package/lib/chevre/service/task.js +9 -114
  130. package/lib/chevre/service/taskHandler/onOperationFailed/informTaskIfNeeded.d.ts +11 -0
  131. package/lib/chevre/service/taskHandler/onOperationFailed/informTaskIfNeeded.js +105 -0
  132. package/lib/chevre/service/taskHandler/onOperationFailed.d.ts +17 -0
  133. package/lib/chevre/service/taskHandler/onOperationFailed.js +70 -0
  134. package/lib/chevre/service/taskHandler.d.ts +26 -0
  135. package/lib/chevre/service/taskHandler.js +96 -0
  136. package/lib/chevre/service/validation/validateOrder.js +55 -37
  137. package/lib/chevre/service.d.ts +0 -4
  138. package/lib/chevre/service.js +10 -14
  139. package/lib/chevre/settings/aggregation.d.ts +6 -1
  140. package/lib/chevre/settings/aggregation.js +2 -1
  141. package/package.json +5 -3
  142. package/example/src/chevre/adminAuth/adminIdentity.ts +0 -38
  143. package/example/src/chevre/executeOneTask.ts +0 -41
  144. package/example/src/chevre/executeTaskIfExists.ts +0 -80
  145. package/example/src/chevre/findExecutableTask.ts +0 -50
  146. package/example/src/chevre/findSetting.ts +0 -79
  147. package/example/src/chevre/roles/addRoleMembers.ts +0 -75
  148. package/example/src/chevre/searchPermissions.ts +0 -46
  149. package/example/src/chevre/transactionNumber/publishConfimationNumber.ts +0 -37
  150. package/example/src/chevre/transactionNumber/publishOrderNumber.ts +0 -40
  151. package/example/src/chevre/transactionNumber/setUseMongo4confirmationNumberFrom.ts +0 -45
  152. package/example/src/chevre/transactionNumber/setUseMongo4orderNumberFrom.ts +0 -41
  153. package/example/src/chevre/transactionNumber/setUseMongo4transactionNumberFrom.ts +0 -41
  154. package/lib/chevre/adminAuth.d.ts +0 -2
  155. package/lib/chevre/adminAuth.js +0 -6
@@ -23,7 +23,9 @@ interface IOptionOnCreate {
23
23
  emitImmediately: boolean;
24
24
  }
25
25
  export type IExecutableTaskKeys = 'data' | 'id' | 'name' | 'status' | 'numberOfTried' | 'project' | 'remainingNumberOfTries' | 'runsAt' | 'expires';
26
- export type IExecutableTask<T extends factory.taskName> = Pick<factory.task.ITask<T>, IExecutableTaskKeys>;
26
+ export type IExecutableTask<T extends factory.taskName> = Pick<factory.task.ITask<T>, IExecutableTaskKeys> & {
27
+ status: factory.taskStatus.Running;
28
+ };
27
29
  type IKeyOfProjection = keyof factory.task.ITask<factory.taskName>;
28
30
  type ICreatingTask = Pick<factory.task.IAttributes<factory.taskName>, 'data' | 'executionResults' | 'name' | 'numberOfTried' | 'project' | 'remainingNumberOfTries' | 'runsAt' | 'status' | 'identifier' | 'description'>;
29
31
  /**
@@ -68,6 +70,10 @@ export declare class TaskRepo {
68
70
  */
69
71
  createDeleteTransactionTaskIfNotExist(params: Pick<factory.task.IAttributes<factory.taskName.DeleteTransaction>, 'data' | 'executionResults' | 'name' | 'numberOfTried' | 'project' | 'remainingNumberOfTries' | 'runsAt' | 'status'>, options: IOptionOnCreate): Promise<void>;
70
72
  createOnAssetTransactionStatusChangedTaskIfNotExist(params: Pick<factory.task.IAttributes<factory.taskName.OnAssetTransactionStatusChanged>, 'data' | 'executionResults' | 'name' | 'numberOfTried' | 'project' | 'remainingNumberOfTries' | 'runsAt' | 'status'>, options: IOptionOnCreate): Promise<void>;
73
+ /**
74
+ * Ready -> remainingNumberOfTriesが1減る
75
+ * Running -> findOneするだけ
76
+ */
71
77
  executeOneById(params: {
72
78
  id: string;
73
79
  status: factory.taskStatus.Ready | factory.taskStatus.Running;
@@ -77,12 +83,11 @@ export declare class TaskRepo {
77
83
  expires?: Date;
78
84
  }): Promise<IExecutableTask<factory.taskName> | null>;
79
85
  /**
80
- * support no name(2025-03-04~)
86
+ * Readyのタスクをname指定でひとつRunningに変更する
81
87
  */
82
88
  executeOneIfExists(params: {
83
- name?: {
84
- $eq?: factory.taskName;
85
- $nin?: factory.taskName[];
89
+ name: {
90
+ $eq: factory.taskName;
86
91
  };
87
92
  executor: {
88
93
  name: string;
@@ -90,6 +95,10 @@ export declare class TaskRepo {
90
95
  runsAt: {
91
96
  $lt: Date;
92
97
  };
98
+ sort: {
99
+ numberOfTried?: factory.sortType;
100
+ runsAt?: factory.sortType;
101
+ };
93
102
  }): Promise<IExecutableTask<factory.taskName> | null>;
94
103
  /**
95
104
  * add(2025-03-16~)
@@ -97,7 +106,7 @@ export declare class TaskRepo {
97
106
  countPotentiallyRunning(params: {
98
107
  name?: {
99
108
  $eq?: factory.taskName;
100
- $nin?: factory.taskName[];
109
+ $in?: factory.taskName[];
101
110
  };
102
111
  runsAt: {
103
112
  $lt: Date;
@@ -106,10 +115,13 @@ export declare class TaskRepo {
106
115
  }): Promise<{
107
116
  count: number;
108
117
  }>;
118
+ /**
119
+ * 実行日時を一定期間過ぎたReadyタスクについて、Runningスタータスに変更した上で、Runningイベントを発生させる
120
+ */
109
121
  emitRunningIfExists(params: {
110
122
  name?: {
111
123
  $eq?: factory.taskName;
112
- $nin?: factory.taskName[];
124
+ $in?: factory.taskName[];
113
125
  };
114
126
  executor: {
115
127
  name: string;
@@ -119,32 +131,31 @@ export declare class TaskRepo {
119
131
  };
120
132
  sort: {
121
133
  numberOfTried?: factory.sortType;
122
- runsAt: factory.sortType;
123
- };
124
- }): Promise<Pick<factory.task.ITask<factory.taskName>, 'id' | 'name'> | null>;
125
- findExecutableOne(params: {
126
- name?: {
127
- $eq?: factory.taskName;
128
- $nin?: factory.taskName[];
129
- };
130
- runsAt: {
131
- $lt: Date;
134
+ runsAt?: factory.sortType;
132
135
  };
133
- }): Promise<IExecutableTask<factory.taskName> | null>;
134
- /**
135
- * emit OnTaskStatusChanged on delayed tasks
136
- */
136
+ }, next?: INextFunction): Promise<Pick<factory.task.ITask<factory.taskName>, 'id' | 'name'> | null>;
137
137
  /**
138
- * make tasks expired
138
+ * Readyのままで期限切れのタスクをExpiredに変更する
139
139
  */
140
140
  makeExpiredMany(params: {
141
141
  expiresLt: Date;
142
142
  }): Promise<UpdateWriteOpResult>;
143
143
  /**
144
- * 実行中ステータスのままになっているタスクをリトライする
144
+ * Runningのまま一定期間超過し、かつ、remainingNumberOfTries>0のタスクをReadyに変更する
145
145
  */
146
- retry(params: {
146
+ retryMany(params: {
147
147
  intervalInMinutes: number;
148
+ /**
149
+ * リトライ条件に残り試行回数条件を追加する
150
+ * 十分に小さい数値を指定すれば、実質残り試行回数に関係なくRunningがReadyに変更されることになる
151
+ */
152
+ remainingNumberOfTries: {
153
+ $gte?: number;
154
+ $lte?: number;
155
+ };
156
+ name: {
157
+ $in?: factory.taskName[];
158
+ };
148
159
  }): Promise<UpdateWriteOpResult>;
149
160
  /**
150
161
  * 実行中止済タスクを強制的にリトライ
@@ -154,25 +165,27 @@ export declare class TaskRepo {
154
165
  id: string;
155
166
  remainingNumberOfTries: number;
156
167
  }): Promise<UpdateWriteOpResult>;
157
- abortOne(params: {
158
- intervalInMinutes: number;
159
- }): Promise<factory.task.ITask<factory.taskName> | null>;
160
168
  abortMany(params: {
161
169
  intervalInMinutes: number;
170
+ name: {
171
+ $in?: factory.taskName[];
172
+ };
162
173
  }): Promise<UpdateWriteOpResult>;
163
174
  /**
164
- * 実行結果を保管する
175
+ * タスクIDから実行結果とステータスを保管する
176
+ * Abortedの場合、dateAbortedもセットする
165
177
  */
166
- pushExecutionResultById(params: {
178
+ setExecutionResultAndStatus(params: {
167
179
  /**
168
180
  * タスクID
169
181
  */
170
182
  id: string;
171
- status: factory.taskStatus;
172
- }, executionResult: factory.task.IExecutionResult, next?: INextFunction): Promise<void>;
173
- /**
174
- * 特定タスク検索
175
- */
183
+ remainingNumberOfTries: number;
184
+ name: factory.taskName;
185
+ }, update: {
186
+ status: factory.taskStatus.Executed | factory.taskStatus.Running | factory.taskStatus.Aborted;
187
+ executionResult: factory.task.IExecutionResult;
188
+ }, next?: INextFunction): Promise<void>;
176
189
  count(params: factory.task.ISearchConditions): Promise<{
177
190
  count: number;
178
191
  }>;