@nmshd/consumption 3.3.2 → 3.4.1
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.
- package/dist/buildInformation.js +5 -5
- package/dist/consumption/ConsumptionBaseController.js.map +1 -1
- package/dist/consumption/ConsumptionController.d.ts +6 -3
- package/dist/consumption/ConsumptionController.js +19 -6
- package/dist/consumption/ConsumptionController.js.map +1 -1
- package/dist/consumption/ConsumptionControllerName.d.ts +2 -1
- package/dist/consumption/ConsumptionControllerName.js +2 -1
- package/dist/consumption/ConsumptionControllerName.js.map +1 -1
- package/dist/consumption/ConsumptionIds.d.ts +1 -0
- package/dist/consumption/ConsumptionIds.js +1 -0
- package/dist/consumption/ConsumptionIds.js.map +1 -1
- package/dist/consumption/CoreErrors.js.map +1 -1
- package/dist/index.d.ts +5 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/modules/attributeListeners/AttributeListenersController.js +2 -2
- package/dist/modules/attributeListeners/AttributeListenersController.js.map +1 -1
- package/dist/modules/attributeListeners/local/CreateLocalAttributeListenerParams.js +2 -2
- package/dist/modules/attributeListeners/local/CreateLocalAttributeListenerParams.js.map +1 -1
- package/dist/modules/attributeListeners/local/LocalAttributeListener.js +2 -2
- package/dist/modules/attributeListeners/local/LocalAttributeListener.js.map +1 -1
- package/dist/modules/attributes/AttributesController.d.ts +1 -1
- package/dist/modules/attributes/AttributesController.js +11 -7
- package/dist/modules/attributes/AttributesController.js.map +1 -1
- package/dist/modules/attributes/local/CreateAttributeParams.js +2 -2
- package/dist/modules/attributes/local/CreateAttributeParams.js.map +1 -1
- package/dist/modules/attributes/local/CreateLocalAttributeParams.js +1 -1
- package/dist/modules/attributes/local/CreateLocalAttributeParams.js.map +1 -1
- package/dist/modules/attributes/local/CreatePeerLocalAttributeParams.js +1 -1
- package/dist/modules/attributes/local/CreatePeerLocalAttributeParams.js.map +1 -1
- package/dist/modules/attributes/local/CreateSharedLocalAttributeCopyParams.js +1 -1
- package/dist/modules/attributes/local/CreateSharedLocalAttributeCopyParams.js.map +1 -1
- package/dist/modules/attributes/local/LocalAttribute.d.ts +1 -1
- package/dist/modules/attributes/local/LocalAttribute.js +4 -4
- package/dist/modules/attributes/local/LocalAttribute.js.map +1 -1
- package/dist/modules/attributes/local/LocalAttributeShareInfo.js +1 -1
- package/dist/modules/attributes/local/LocalAttributeShareInfo.js.map +1 -1
- package/dist/modules/attributes/local/QueryTranslator.js +2 -2
- package/dist/modules/attributes/local/QueryTranslator.js.map +1 -1
- package/dist/modules/attributes/local/SucceedLocalAttributeParams.js +1 -1
- package/dist/modules/attributes/local/SucceedLocalAttributeParams.js.map +1 -1
- package/dist/modules/attributes/local/UpdateLocalAttributeParams.js +1 -1
- package/dist/modules/attributes/local/UpdateLocalAttributeParams.js.map +1 -1
- package/dist/modules/drafts/DraftsController.d.ts +1 -1
- package/dist/modules/drafts/DraftsController.js +8 -5
- package/dist/modules/drafts/DraftsController.js.map +1 -1
- package/dist/modules/drafts/local/Draft.js +2 -2
- package/dist/modules/drafts/local/Draft.js.map +1 -1
- package/dist/modules/index.d.ts +1 -0
- package/dist/modules/index.js +1 -0
- package/dist/modules/index.js.map +1 -1
- package/dist/modules/notifications/NotificationsController.d.ts +21 -0
- package/dist/modules/notifications/NotificationsController.js +123 -0
- package/dist/modules/notifications/NotificationsController.js.map +1 -0
- package/dist/modules/notifications/index.d.ts +8 -0
- package/dist/{consumption → modules/notifications}/index.js +8 -5
- package/dist/modules/notifications/index.js.map +1 -0
- package/dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.d.ts +26 -0
- package/dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.js +12 -0
- package/dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.js.map +1 -0
- package/dist/modules/notifications/itemProcessors/NotificationItemConstructor.d.ts +2 -0
- package/dist/modules/{requests/itemProcessors/ProcessorConstructor.js → notifications/itemProcessors/NotificationItemConstructor.js} +1 -1
- package/dist/modules/notifications/itemProcessors/NotificationItemConstructor.js.map +1 -0
- package/dist/modules/notifications/itemProcessors/NotificationItemProcessorConstructor.d.ts +3 -0
- package/dist/modules/notifications/itemProcessors/NotificationItemProcessorConstructor.js +3 -0
- package/dist/modules/notifications/itemProcessors/NotificationItemProcessorConstructor.js.map +1 -0
- package/dist/modules/notifications/itemProcessors/NotificationItemProcessorRegistry.d.ts +13 -0
- package/dist/modules/notifications/itemProcessors/NotificationItemProcessorRegistry.js +28 -0
- package/dist/modules/notifications/itemProcessors/NotificationItemProcessorRegistry.js.map +1 -0
- package/dist/modules/notifications/itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor.d.ts +8 -0
- package/dist/modules/notifications/itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor.js +18 -0
- package/dist/modules/notifications/itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor.js.map +1 -0
- package/dist/modules/notifications/local/LocalNotification.d.ts +32 -0
- package/dist/modules/notifications/local/LocalNotification.js +97 -0
- package/dist/modules/notifications/local/LocalNotification.js.map +1 -0
- package/dist/modules/notifications/local/LocalNotificationSource.d.ts +11 -0
- package/dist/modules/notifications/local/LocalNotificationSource.js +41 -0
- package/dist/modules/notifications/local/LocalNotificationSource.js.map +1 -0
- package/dist/modules/requests/events/IncomingRequestReceivedEvent.js +2 -2
- package/dist/modules/requests/events/IncomingRequestReceivedEvent.js.map +1 -1
- package/dist/modules/requests/events/IncomingRequestStatusChangedEvent.js +2 -2
- package/dist/modules/requests/events/IncomingRequestStatusChangedEvent.js.map +1 -1
- package/dist/modules/requests/events/OutgoingRequestCreatedAndCompletedEvent.js +2 -2
- package/dist/modules/requests/events/OutgoingRequestCreatedAndCompletedEvent.js.map +1 -1
- package/dist/modules/requests/events/OutgoingRequestCreatedEvent.js +2 -2
- package/dist/modules/requests/events/OutgoingRequestCreatedEvent.js.map +1 -1
- package/dist/modules/requests/events/OutgoingRequestStatusChangedEvent.js +2 -2
- package/dist/modules/requests/events/OutgoingRequestStatusChangedEvent.js.map +1 -1
- package/dist/modules/requests/incoming/DecideRequestParametersValidator.js +9 -9
- package/dist/modules/requests/incoming/DecideRequestParametersValidator.js.map +1 -1
- package/dist/modules/requests/incoming/IncomingRequestsController.d.ts +1 -1
- package/dist/modules/requests/incoming/IncomingRequestsController.js +19 -15
- package/dist/modules/requests/incoming/IncomingRequestsController.js.map +1 -1
- package/dist/modules/requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters.js +2 -2
- package/dist/modules/requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters.js.map +1 -1
- package/dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.js +1 -1
- package/dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.js.map +1 -1
- package/dist/modules/requests/incoming/decide/InternalDecideRequestParameters.js +2 -2
- package/dist/modules/requests/incoming/decide/InternalDecideRequestParameters.js.map +1 -1
- package/dist/modules/requests/incoming/received/ReceivedIncomingRequestParameters.js +2 -2
- package/dist/modules/requests/incoming/received/ReceivedIncomingRequestParameters.js.map +1 -1
- package/dist/modules/requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters.js +1 -1
- package/dist/modules/requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters.js.map +1 -1
- package/dist/modules/requests/index.d.ts +9 -9
- package/dist/modules/requests/index.js +9 -9
- package/dist/modules/requests/index.js.map +1 -1
- package/dist/modules/requests/itemProcessors/{ProcessorConstructor.d.ts → RequestItemProcessorConstructor.d.ts} +1 -1
- package/dist/modules/requests/itemProcessors/RequestItemProcessorConstructor.js +3 -0
- package/dist/modules/requests/itemProcessors/RequestItemProcessorConstructor.js.map +1 -0
- package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.d.ts +4 -4
- package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js +3 -3
- package/dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js.map +1 -1
- package/dist/modules/requests/itemProcessors/ValidationResult.js.map +1 -1
- package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.js +4 -4
- package/dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.js.map +1 -1
- package/dist/modules/requests/itemProcessors/freeText/AcceptFreeTextRequestItemParameters.js +2 -2
- package/dist/modules/requests/itemProcessors/freeText/AcceptFreeTextRequestItemParameters.js.map +1 -1
- package/dist/modules/requests/itemProcessors/freeText/FreeTextRequestItemProcessor.js +2 -2
- package/dist/modules/requests/itemProcessors/freeText/FreeTextRequestItemProcessor.js.map +1 -1
- package/dist/modules/requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters.js +4 -4
- package/dist/modules/requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters.js.map +1 -1
- package/dist/modules/requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor.js +5 -5
- package/dist/modules/requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor.js.map +1 -1
- package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js +4 -4
- package/dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js.map +1 -1
- package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js +3 -3
- package/dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js.map +1 -1
- package/dist/modules/requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor.js +6 -6
- package/dist/modules/requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor.js.map +1 -1
- package/dist/modules/requests/itemProcessors/utility/validateQuery.js +5 -5
- package/dist/modules/requests/itemProcessors/utility/validateQuery.js.map +1 -1
- package/dist/modules/requests/local/LocalRequest.js +7 -7
- package/dist/modules/requests/local/LocalRequest.js.map +1 -1
- package/dist/modules/requests/local/LocalRequestStatus.js +1 -1
- package/dist/modules/requests/local/LocalRequestStatus.js.map +1 -1
- package/dist/modules/requests/local/LocalRequestStatusLogEntry.js +2 -2
- package/dist/modules/requests/local/LocalRequestStatusLogEntry.js.map +1 -1
- package/dist/modules/requests/local/LocalResponse.js +4 -4
- package/dist/modules/requests/local/LocalResponse.js.map +1 -1
- package/dist/modules/requests/outgoing/OutgoingRequestsController.d.ts +1 -1
- package/dist/modules/requests/outgoing/OutgoingRequestsController.js +14 -11
- package/dist/modules/requests/outgoing/OutgoingRequestsController.js.map +1 -1
- package/dist/modules/requests/outgoing/completeOutgoingRequest/CompleteOutgoingRequestParameters.js +2 -2
- package/dist/modules/requests/outgoing/completeOutgoingRequest/CompleteOutgoingRequestParameters.js.map +1 -1
- package/dist/modules/requests/outgoing/createAndCompleteFromRelationshipTemplateResponse/CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters.js +2 -2
- package/dist/modules/requests/outgoing/createAndCompleteFromRelationshipTemplateResponse/CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters.js.map +1 -1
- package/dist/modules/requests/outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters.js +2 -2
- package/dist/modules/requests/outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters.js.map +1 -1
- package/dist/modules/requests/outgoing/createOutgoingRequest/CreateOutgoingRequestParameters.js +2 -2
- package/dist/modules/requests/outgoing/createOutgoingRequest/CreateOutgoingRequestParameters.js.map +1 -1
- package/dist/modules/requests/outgoing/sentOutgoingRequest/SentOutgoingRequestParameters.js +2 -2
- package/dist/modules/requests/outgoing/sentOutgoingRequest/SentOutgoingRequestParameters.js.map +1 -1
- package/dist/modules/settings/SettingsController.d.ts +1 -1
- package/dist/modules/settings/SettingsController.js +7 -5
- package/dist/modules/settings/SettingsController.js.map +1 -1
- package/dist/modules/settings/local/Setting.js +3 -3
- package/dist/modules/settings/local/Setting.js.map +1 -1
- package/lib-web/nmshd.consumption.js +875 -314
- package/lib-web/nmshd.consumption.js.map +1 -1
- package/lib-web/nmshd.consumption.min.js +1 -1
- package/lib-web/nmshd.consumption.min.js.map +1 -1
- package/package.json +22 -21
- package/dist/consumption/index.d.ts +0 -5
- package/dist/consumption/index.js.map +0 -1
- package/dist/modules/requests/itemProcessors/ProcessorConstructor.js.map +0 -1
|
@@ -17,11 +17,11 @@ const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
|
17
17
|
const crypto_1 = __webpack_require__(/*! @nmshd/crypto */ "@nmshd/crypto");
|
|
18
18
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
19
19
|
exports.buildInformation = {
|
|
20
|
-
version: "3.
|
|
21
|
-
build: "
|
|
22
|
-
date: "2023-
|
|
23
|
-
commit: "
|
|
24
|
-
dependencies: {"@js-soft/docdb-querytranslator":"^1.1.
|
|
20
|
+
version: "3.4.1",
|
|
21
|
+
build: "109",
|
|
22
|
+
date: "2023-10-12T13:14:50+00:00",
|
|
23
|
+
commit: "f0f88ace5c1343e2eb1ec422d58342a8676926c4",
|
|
24
|
+
dependencies: {"@js-soft/docdb-querytranslator":"^1.1.1","@nmshd/iql":"^0.0.4","ts-simple-nameof":"^1.3.1"},
|
|
25
25
|
libraries: {
|
|
26
26
|
transport: transport_1.buildInformation,
|
|
27
27
|
crypto: crypto_1.buildInformation,
|
|
@@ -102,20 +102,28 @@ class ConsumptionController {
|
|
|
102
102
|
get attributeListeners() {
|
|
103
103
|
return this._attributeListeners;
|
|
104
104
|
}
|
|
105
|
-
|
|
105
|
+
get notifications() {
|
|
106
|
+
return this._notifications;
|
|
107
|
+
}
|
|
108
|
+
async init(requestItemProcessorOverrides = new Map(), notificationItemProcessorOverrides = new Map()) {
|
|
106
109
|
this._attributes = await new modules_1.AttributesController(this, this.transport.eventBus, this.accountController.identity).init();
|
|
107
110
|
this._drafts = await new modules_1.DraftsController(this).init();
|
|
108
|
-
const
|
|
111
|
+
const requestItemProcessorRegistry = new modules_1.RequestItemProcessorRegistry(this, this.getDefaultRequestItemProcessors());
|
|
109
112
|
for (const [itemConstructor, processorConstructor] of requestItemProcessorOverrides) {
|
|
110
|
-
|
|
113
|
+
requestItemProcessorRegistry.registerOrReplaceProcessor(itemConstructor, processorConstructor);
|
|
114
|
+
}
|
|
115
|
+
this._outgoingRequests = await new modules_1.OutgoingRequestsController(await this.accountController.getSynchronizedCollection("Requests"), requestItemProcessorRegistry, this, this.transport.eventBus, this.accountController.identity, this.accountController.relationships).init();
|
|
116
|
+
this._incomingRequests = await new modules_1.IncomingRequestsController(await this.accountController.getSynchronizedCollection("Requests"), requestItemProcessorRegistry, this, this.transport.eventBus, this.accountController.identity).init();
|
|
117
|
+
const notificationItemProcessorRegistry = new modules_1.NotificationItemProcessorRegistry(this, this.getDefaultNotificationItemProcessors());
|
|
118
|
+
for (const [itemConstructor, processorConstructor] of notificationItemProcessorOverrides) {
|
|
119
|
+
notificationItemProcessorRegistry.registerOrReplaceProcessor(itemConstructor, processorConstructor);
|
|
111
120
|
}
|
|
112
|
-
this.
|
|
113
|
-
this._incomingRequests = await new modules_1.IncomingRequestsController(await this.accountController.getSynchronizedCollection("Requests"), processorRegistry, this, this.transport.eventBus, this.accountController.identity).init();
|
|
121
|
+
this._notifications = await new modules_1.NotificationsController(await this.accountController.getSynchronizedCollection("Notifications"), notificationItemProcessorRegistry, this, this.transport.eventBus, this.accountController.activeDevice).init();
|
|
114
122
|
this._settings = await new modules_1.SettingsController(this).init();
|
|
115
123
|
this._attributeListeners = await new modules_1.AttributeListenersController(this, this.transport.eventBus, this.accountController.identity).init();
|
|
116
124
|
return this;
|
|
117
125
|
}
|
|
118
|
-
|
|
126
|
+
getDefaultRequestItemProcessors() {
|
|
119
127
|
return new Map([
|
|
120
128
|
[content_1.ShareAttributeRequestItem, modules_1.ShareAttributeRequestItemProcessor],
|
|
121
129
|
[content_1.CreateAttributeRequestItem, modules_1.CreateAttributeRequestItemProcessor],
|
|
@@ -127,6 +135,11 @@ class ConsumptionController {
|
|
|
127
135
|
[content_1.FreeTextRequestItem, modules_1.FreeTextRequestItemProcessor]
|
|
128
136
|
]);
|
|
129
137
|
}
|
|
138
|
+
getDefaultNotificationItemProcessors() {
|
|
139
|
+
return new Map([
|
|
140
|
+
[content_1.AttributeSucceededNotificationItem, modules_1.AttributeSucceededNotificationItemProcessor]
|
|
141
|
+
]);
|
|
142
|
+
}
|
|
130
143
|
}
|
|
131
144
|
exports.ConsumptionController = ConsumptionController;
|
|
132
145
|
//# sourceMappingURL=ConsumptionController.js.map
|
|
@@ -155,7 +168,8 @@ var ConsumptionControllerName;
|
|
|
155
168
|
ConsumptionControllerName["RequestsController"] = "Requestsontroller";
|
|
156
169
|
ConsumptionControllerName["SettingsController"] = "SettingsController";
|
|
157
170
|
ConsumptionControllerName["SharedItemsController"] = "SharedItemsController";
|
|
158
|
-
|
|
171
|
+
ConsumptionControllerName["NotificationsController"] = "NotificationsController";
|
|
172
|
+
})(ConsumptionControllerName || (exports.ConsumptionControllerName = ConsumptionControllerName = {}));
|
|
159
173
|
//# sourceMappingURL=ConsumptionControllerName.js.map
|
|
160
174
|
|
|
161
175
|
/***/ }),
|
|
@@ -196,6 +210,7 @@ ConsumptionIds.setting = new transport_1.CoreIdHelper("LCLSET");
|
|
|
196
210
|
ConsumptionIds.attribute = new transport_1.CoreIdHelper("ATT");
|
|
197
211
|
ConsumptionIds.request = new transport_1.CoreIdHelper("REQ");
|
|
198
212
|
ConsumptionIds.attributeListener = new transport_1.CoreIdHelper("ATL");
|
|
213
|
+
ConsumptionIds.notification = new transport_1.CoreIdHelper("NOT");
|
|
199
214
|
//# sourceMappingURL=ConsumptionIds.js.map
|
|
200
215
|
|
|
201
216
|
/***/ }),
|
|
@@ -260,38 +275,6 @@ CoreErrors.requests = new Requests();
|
|
|
260
275
|
|
|
261
276
|
/***/ }),
|
|
262
277
|
|
|
263
|
-
/***/ "./dist/consumption/index.js":
|
|
264
|
-
/*!***********************************!*\
|
|
265
|
-
!*** ./dist/consumption/index.js ***!
|
|
266
|
-
\***********************************/
|
|
267
|
-
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
268
|
-
|
|
269
|
-
"use strict";
|
|
270
|
-
|
|
271
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
272
|
-
if (k2 === undefined) k2 = k;
|
|
273
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
274
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
275
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
276
|
-
}
|
|
277
|
-
Object.defineProperty(o, k2, desc);
|
|
278
|
-
}) : (function(o, m, k, k2) {
|
|
279
|
-
if (k2 === undefined) k2 = k;
|
|
280
|
-
o[k2] = m[k];
|
|
281
|
-
}));
|
|
282
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
283
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
284
|
-
};
|
|
285
|
-
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
286
|
-
__exportStar(__webpack_require__(/*! ./ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js"), exports);
|
|
287
|
-
__exportStar(__webpack_require__(/*! ./ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js"), exports);
|
|
288
|
-
__exportStar(__webpack_require__(/*! ./ConsumptionError */ "./dist/consumption/ConsumptionError.js"), exports);
|
|
289
|
-
__exportStar(__webpack_require__(/*! ./ConsumptionIds */ "./dist/consumption/ConsumptionIds.js"), exports);
|
|
290
|
-
__exportStar(__webpack_require__(/*! ./CoreErrors */ "./dist/consumption/CoreErrors.js"), exports);
|
|
291
|
-
//# sourceMappingURL=index.js.map
|
|
292
|
-
|
|
293
|
-
/***/ }),
|
|
294
|
-
|
|
295
278
|
/***/ "./dist/index.js":
|
|
296
279
|
/*!***********************!*\
|
|
297
280
|
!*** ./dist/index.js ***!
|
|
@@ -316,8 +299,12 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
316
299
|
};
|
|
317
300
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
318
301
|
__exportStar(__webpack_require__(/*! ./buildInformation */ "./dist/buildInformation.js"), exports);
|
|
319
|
-
__exportStar(__webpack_require__(/*! ./consumption */ "./dist/consumption/
|
|
302
|
+
__exportStar(__webpack_require__(/*! ./consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js"), exports);
|
|
320
303
|
__exportStar(__webpack_require__(/*! ./consumption/ConsumptionController */ "./dist/consumption/ConsumptionController.js"), exports);
|
|
304
|
+
__exportStar(__webpack_require__(/*! ./consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js"), exports);
|
|
305
|
+
__exportStar(__webpack_require__(/*! ./consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js"), exports);
|
|
306
|
+
__exportStar(__webpack_require__(/*! ./consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js"), exports);
|
|
307
|
+
__exportStar(__webpack_require__(/*! ./consumption/CoreErrors */ "./dist/consumption/CoreErrors.js"), exports);
|
|
321
308
|
__exportStar(__webpack_require__(/*! ./modules */ "./dist/modules/index.js"), exports);
|
|
322
309
|
//# sourceMappingURL=index.js.map
|
|
323
310
|
|
|
@@ -333,9 +320,9 @@ __exportStar(__webpack_require__(/*! ./modules */ "./dist/modules/index.js"), ex
|
|
|
333
320
|
|
|
334
321
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
335
322
|
exports.AttributeListenersController = void 0;
|
|
336
|
-
const consumption_1 = __webpack_require__(/*! ../../consumption */ "./dist/consumption/index.js");
|
|
337
323
|
const ConsumptionBaseController_1 = __webpack_require__(/*! ../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
338
324
|
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
325
|
+
const ConsumptionIds_1 = __webpack_require__(/*! ../../consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js");
|
|
339
326
|
const events_1 = __webpack_require__(/*! ./events */ "./dist/modules/attributeListeners/events/index.js");
|
|
340
327
|
const CreateLocalAttributeListenerParams_1 = __webpack_require__(/*! ./local/CreateLocalAttributeListenerParams */ "./dist/modules/attributeListeners/local/CreateLocalAttributeListenerParams.js");
|
|
341
328
|
const LocalAttributeListener_1 = __webpack_require__(/*! ./local/LocalAttributeListener */ "./dist/modules/attributeListeners/local/LocalAttributeListener.js");
|
|
@@ -363,7 +350,7 @@ class AttributeListenersController extends ConsumptionBaseController_1.Consumpti
|
|
|
363
350
|
async createAttributeListener(params) {
|
|
364
351
|
const parsedParams = CreateLocalAttributeListenerParams_1.CreateLocalAttributeListenerParams.from(params);
|
|
365
352
|
const listener = LocalAttributeListener_1.LocalAttributeListener.from({
|
|
366
|
-
id: await
|
|
353
|
+
id: await ConsumptionIds_1.ConsumptionIds.attributeListener.generate(),
|
|
367
354
|
query: parsedParams.query,
|
|
368
355
|
peer: parsedParams.peer
|
|
369
356
|
});
|
|
@@ -485,6 +472,7 @@ let CreateLocalAttributeListenerParams = class CreateLocalAttributeListenerParam
|
|
|
485
472
|
return this.fromAny(value);
|
|
486
473
|
}
|
|
487
474
|
};
|
|
475
|
+
exports.CreateLocalAttributeListenerParams = CreateLocalAttributeListenerParams;
|
|
488
476
|
__decorate([
|
|
489
477
|
(0, ts_serval_1.serialize)({ unionTypes: [content_1.IdentityAttributeQuery, content_1.ThirdPartyRelationshipAttributeQuery] }),
|
|
490
478
|
(0, ts_serval_1.validate)(),
|
|
@@ -495,10 +483,9 @@ __decorate([
|
|
|
495
483
|
(0, ts_serval_1.validate)(),
|
|
496
484
|
__metadata("design:type", transport_1.CoreAddress)
|
|
497
485
|
], CreateLocalAttributeListenerParams.prototype, "peer", void 0);
|
|
498
|
-
CreateLocalAttributeListenerParams = __decorate([
|
|
486
|
+
exports.CreateLocalAttributeListenerParams = CreateLocalAttributeListenerParams = __decorate([
|
|
499
487
|
(0, ts_serval_1.type)("CreateLocalAttributeListenerParams")
|
|
500
488
|
], CreateLocalAttributeListenerParams);
|
|
501
|
-
exports.CreateLocalAttributeListenerParams = CreateLocalAttributeListenerParams;
|
|
502
489
|
//# sourceMappingURL=CreateLocalAttributeListenerParams.js.map
|
|
503
490
|
|
|
504
491
|
/***/ }),
|
|
@@ -541,6 +528,7 @@ let LocalAttributeListener = class LocalAttributeListener extends transport_1.Co
|
|
|
541
528
|
return super.toJSON();
|
|
542
529
|
}
|
|
543
530
|
};
|
|
531
|
+
exports.LocalAttributeListener = LocalAttributeListener;
|
|
544
532
|
__decorate([
|
|
545
533
|
(0, ts_serval_1.serialize)({ unionTypes: [content_1.IdentityAttributeQuery, content_1.ThirdPartyRelationshipAttributeQuery] }),
|
|
546
534
|
(0, ts_serval_1.validate)(),
|
|
@@ -551,10 +539,9 @@ __decorate([
|
|
|
551
539
|
(0, ts_serval_1.validate)(),
|
|
552
540
|
__metadata("design:type", transport_1.CoreAddress)
|
|
553
541
|
], LocalAttributeListener.prototype, "peer", void 0);
|
|
554
|
-
LocalAttributeListener = __decorate([
|
|
542
|
+
exports.LocalAttributeListener = LocalAttributeListener = __decorate([
|
|
555
543
|
(0, ts_serval_1.type)("LocalAttributeListener")
|
|
556
544
|
], LocalAttributeListener);
|
|
557
|
-
exports.LocalAttributeListener = LocalAttributeListener;
|
|
558
545
|
//# sourceMappingURL=LocalAttributeListener.js.map
|
|
559
546
|
|
|
560
547
|
/***/ }),
|
|
@@ -596,16 +583,20 @@ const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
|
596
583
|
const Iql = __importStar(__webpack_require__(/*! @nmshd/iql */ "./node_modules/@nmshd/iql/dist/src/index.js"));
|
|
597
584
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
598
585
|
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
599
|
-
const
|
|
586
|
+
const ConsumptionBaseController_1 = __webpack_require__(/*! ../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
587
|
+
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
588
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
589
|
+
const ConsumptionIds_1 = __webpack_require__(/*! ../../consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js");
|
|
590
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
600
591
|
const events_1 = __webpack_require__(/*! ./events */ "./dist/modules/attributes/events/index.js");
|
|
601
592
|
const CreateSharedLocalAttributeCopyParams_1 = __webpack_require__(/*! ./local/CreateSharedLocalAttributeCopyParams */ "./dist/modules/attributes/local/CreateSharedLocalAttributeCopyParams.js");
|
|
602
593
|
const LocalAttribute_1 = __webpack_require__(/*! ./local/LocalAttribute */ "./dist/modules/attributes/local/LocalAttribute.js");
|
|
603
594
|
const LocalAttributeShareInfo_1 = __webpack_require__(/*! ./local/LocalAttributeShareInfo */ "./dist/modules/attributes/local/LocalAttributeShareInfo.js");
|
|
604
595
|
const QueryTranslator_1 = __webpack_require__(/*! ./local/QueryTranslator */ "./dist/modules/attributes/local/QueryTranslator.js");
|
|
605
596
|
const SucceedLocalAttributeParams_1 = __webpack_require__(/*! ./local/SucceedLocalAttributeParams */ "./dist/modules/attributes/local/SucceedLocalAttributeParams.js");
|
|
606
|
-
class AttributesController extends
|
|
597
|
+
class AttributesController extends ConsumptionBaseController_1.ConsumptionBaseController {
|
|
607
598
|
constructor(parent, eventBus, identity) {
|
|
608
|
-
super(
|
|
599
|
+
super(ConsumptionControllerName_1.ConsumptionControllerName.AttributesController, parent);
|
|
609
600
|
this.eventBus = eventBus;
|
|
610
601
|
this.identity = identity;
|
|
611
602
|
}
|
|
@@ -746,7 +737,7 @@ class AttributesController extends consumption_1.ConsumptionBaseController {
|
|
|
746
737
|
}
|
|
747
738
|
async createLocalAttribute(params) {
|
|
748
739
|
const localAttribute = LocalAttribute_1.LocalAttribute.from({
|
|
749
|
-
id: await
|
|
740
|
+
id: await ConsumptionIds_1.ConsumptionIds.attribute.generate(),
|
|
750
741
|
createdAt: transport_1.CoreDate.utc(),
|
|
751
742
|
content: params.content,
|
|
752
743
|
parentId: params.parentId
|
|
@@ -761,7 +752,7 @@ class AttributesController extends consumption_1.ConsumptionBaseController {
|
|
|
761
752
|
}
|
|
762
753
|
async createLocalAttributesForNestedAttributeValues(localAttribute) {
|
|
763
754
|
if (!(localAttribute.content instanceof content_1.IdentityAttribute)) {
|
|
764
|
-
throw new
|
|
755
|
+
throw new ConsumptionError_1.ConsumptionError("Only Identity Attributes are allowed here");
|
|
765
756
|
}
|
|
766
757
|
const nestedAttributeValues = Object.values(localAttribute.content.value).filter((p) => p instanceof content_1.AbstractAttributeValue);
|
|
767
758
|
for (const propertyValue of nestedAttributeValues) {
|
|
@@ -779,7 +770,7 @@ class AttributesController extends consumption_1.ConsumptionBaseController {
|
|
|
779
770
|
});
|
|
780
771
|
const currentAttribute = LocalAttribute_1.LocalAttribute.from(currentAttributeDoc);
|
|
781
772
|
if (currentAttribute.parentId) {
|
|
782
|
-
throw
|
|
773
|
+
throw CoreErrors_1.CoreErrors.attributes.cannotSucceedAttributesWithAParent(parsedParams.succeeds.toString());
|
|
783
774
|
}
|
|
784
775
|
if (!currentAttributeDoc) {
|
|
785
776
|
throw transport_1.CoreErrors.general.recordNotFound(LocalAttribute_1.LocalAttribute, parsedParams.succeeds.toString());
|
|
@@ -817,7 +808,7 @@ class AttributesController extends consumption_1.ConsumptionBaseController {
|
|
|
817
808
|
requestReference: params.requestReference
|
|
818
809
|
});
|
|
819
810
|
const peerLocalAttribute = LocalAttribute_1.LocalAttribute.from({
|
|
820
|
-
id: params.id ?? (await
|
|
811
|
+
id: params.id ?? (await ConsumptionIds_1.ConsumptionIds.attribute.generate()),
|
|
821
812
|
content: params.content,
|
|
822
813
|
shareInfo: shareInfo,
|
|
823
814
|
createdAt: transport_1.CoreDate.utc()
|
|
@@ -1060,6 +1051,7 @@ class CreateLocalAttributeParams extends ts_serval_1.Serializable {
|
|
|
1060
1051
|
return this.fromAny(value);
|
|
1061
1052
|
}
|
|
1062
1053
|
}
|
|
1054
|
+
exports.CreateLocalAttributeParams = CreateLocalAttributeParams;
|
|
1063
1055
|
__decorate([
|
|
1064
1056
|
(0, ts_serval_1.serialize)({ unionTypes: [content_1.IdentityAttribute, content_1.RelationshipAttribute] }),
|
|
1065
1057
|
(0, ts_serval_1.validate)(),
|
|
@@ -1070,7 +1062,6 @@ __decorate([
|
|
|
1070
1062
|
(0, ts_serval_1.validate)(),
|
|
1071
1063
|
__metadata("design:type", transport_1.CoreId)
|
|
1072
1064
|
], CreateLocalAttributeParams.prototype, "parentId", void 0);
|
|
1073
|
-
exports.CreateLocalAttributeParams = CreateLocalAttributeParams;
|
|
1074
1065
|
//# sourceMappingURL=CreateLocalAttributeParams.js.map
|
|
1075
1066
|
|
|
1076
1067
|
/***/ }),
|
|
@@ -1102,6 +1093,7 @@ class CreatePeerLocalAttributeParams extends ts_serval_1.Serializable {
|
|
|
1102
1093
|
return this.fromAny(value);
|
|
1103
1094
|
}
|
|
1104
1095
|
}
|
|
1096
|
+
exports.CreatePeerLocalAttributeParams = CreatePeerLocalAttributeParams;
|
|
1105
1097
|
__decorate([
|
|
1106
1098
|
(0, ts_serval_1.serialize)(),
|
|
1107
1099
|
(0, ts_serval_1.validate)(),
|
|
@@ -1122,7 +1114,6 @@ __decorate([
|
|
|
1122
1114
|
(0, ts_serval_1.validate)(),
|
|
1123
1115
|
__metadata("design:type", transport_1.CoreAddress)
|
|
1124
1116
|
], CreatePeerLocalAttributeParams.prototype, "peer", void 0);
|
|
1125
|
-
exports.CreatePeerLocalAttributeParams = CreatePeerLocalAttributeParams;
|
|
1126
1117
|
//# sourceMappingURL=CreatePeerLocalAttributeParams.js.map
|
|
1127
1118
|
|
|
1128
1119
|
/***/ }),
|
|
@@ -1153,6 +1144,7 @@ class CreateSharedLocalAttributeCopyParams extends ts_serval_1.Serializable {
|
|
|
1153
1144
|
return this.fromAny(value);
|
|
1154
1145
|
}
|
|
1155
1146
|
}
|
|
1147
|
+
exports.CreateSharedLocalAttributeCopyParams = CreateSharedLocalAttributeCopyParams;
|
|
1156
1148
|
__decorate([
|
|
1157
1149
|
(0, ts_serval_1.serialize)(),
|
|
1158
1150
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
@@ -1173,7 +1165,6 @@ __decorate([
|
|
|
1173
1165
|
(0, ts_serval_1.validate)(),
|
|
1174
1166
|
__metadata("design:type", transport_1.CoreId)
|
|
1175
1167
|
], CreateSharedLocalAttributeCopyParams.prototype, "requestReference", void 0);
|
|
1176
|
-
exports.CreateSharedLocalAttributeCopyParams = CreateSharedLocalAttributeCopyParams;
|
|
1177
1168
|
//# sourceMappingURL=CreateSharedLocalAttributeCopyParams.js.map
|
|
1178
1169
|
|
|
1179
1170
|
/***/ }),
|
|
@@ -1201,7 +1192,7 @@ const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-s
|
|
|
1201
1192
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
1202
1193
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1203
1194
|
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
1204
|
-
const
|
|
1195
|
+
const ConsumptionIds_1 = __webpack_require__(/*! ../../../consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js");
|
|
1205
1196
|
const LocalAttributeShareInfo_1 = __webpack_require__(/*! ./LocalAttributeShareInfo */ "./dist/modules/attributes/local/LocalAttributeShareInfo.js");
|
|
1206
1197
|
let LocalAttribute = class LocalAttribute extends transport_1.CoreSynchronizable {
|
|
1207
1198
|
constructor() {
|
|
@@ -1243,7 +1234,7 @@ let LocalAttribute = class LocalAttribute extends transport_1.CoreSynchronizable
|
|
|
1243
1234
|
}
|
|
1244
1235
|
static async fromAttribute(content, succeeds, shareInfo, id, parentId) {
|
|
1245
1236
|
return this.from({
|
|
1246
|
-
id: id ?? (await
|
|
1237
|
+
id: id ?? (await ConsumptionIds_1.ConsumptionIds.attribute.generate()),
|
|
1247
1238
|
createdAt: transport_1.CoreDate.utc(),
|
|
1248
1239
|
content,
|
|
1249
1240
|
succeeds,
|
|
@@ -1252,6 +1243,7 @@ let LocalAttribute = class LocalAttribute extends transport_1.CoreSynchronizable
|
|
|
1252
1243
|
});
|
|
1253
1244
|
}
|
|
1254
1245
|
};
|
|
1246
|
+
exports.LocalAttribute = LocalAttribute;
|
|
1255
1247
|
__decorate([
|
|
1256
1248
|
(0, ts_serval_1.validate)(),
|
|
1257
1249
|
(0, ts_serval_1.serialize)({ unionTypes: [content_1.IdentityAttribute, content_1.RelationshipAttribute] }),
|
|
@@ -1282,10 +1274,9 @@ __decorate([
|
|
|
1282
1274
|
(0, ts_serval_1.serialize)(),
|
|
1283
1275
|
__metadata("design:type", transport_1.CoreId)
|
|
1284
1276
|
], LocalAttribute.prototype, "parentId", void 0);
|
|
1285
|
-
LocalAttribute = __decorate([
|
|
1277
|
+
exports.LocalAttribute = LocalAttribute = __decorate([
|
|
1286
1278
|
(0, ts_serval_1.type)("LocalAttribute")
|
|
1287
1279
|
], LocalAttribute);
|
|
1288
|
-
exports.LocalAttribute = LocalAttribute;
|
|
1289
1280
|
//# sourceMappingURL=LocalAttribute.js.map
|
|
1290
1281
|
|
|
1291
1282
|
/***/ }),
|
|
@@ -1316,6 +1307,7 @@ class LocalAttributeShareInfo extends transport_1.CoreSerializable {
|
|
|
1316
1307
|
return super.fromAny(value);
|
|
1317
1308
|
}
|
|
1318
1309
|
}
|
|
1310
|
+
exports.LocalAttributeShareInfo = LocalAttributeShareInfo;
|
|
1319
1311
|
__decorate([
|
|
1320
1312
|
(0, ts_serval_1.validate)(),
|
|
1321
1313
|
(0, ts_serval_1.serialize)(),
|
|
@@ -1331,7 +1323,6 @@ __decorate([
|
|
|
1331
1323
|
(0, ts_serval_1.serialize)(),
|
|
1332
1324
|
__metadata("design:type", transport_1.CoreId)
|
|
1333
1325
|
], LocalAttributeShareInfo.prototype, "sourceAttribute", void 0);
|
|
1334
|
-
exports.LocalAttributeShareInfo = LocalAttributeShareInfo;
|
|
1335
1326
|
//# sourceMappingURL=LocalAttributeShareInfo.js.map
|
|
1336
1327
|
|
|
1337
1328
|
/***/ }),
|
|
@@ -1349,7 +1340,7 @@ exports.ThirdPartyRelationshipAttributeQueryTranslator = exports.RelationshipAtt
|
|
|
1349
1340
|
const docdb_querytranslator_1 = __webpack_require__(/*! @js-soft/docdb-querytranslator */ "./node_modules/@js-soft/docdb-querytranslator/dist/index.js");
|
|
1350
1341
|
const luxon_1 = __webpack_require__(/*! luxon */ "./node_modules/luxon/build/node/luxon.js");
|
|
1351
1342
|
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
1352
|
-
const
|
|
1343
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1353
1344
|
class IdentityAttributeQueryTranslator {
|
|
1354
1345
|
static translate(query) {
|
|
1355
1346
|
return this.translator.parse({ ...query.toJSON(), attributeType: "IdentityAttribute" });
|
|
@@ -1378,7 +1369,7 @@ IdentityAttributeQueryTranslator.translator = new docdb_querytranslator_1.QueryT
|
|
|
1378
1369
|
if (!input)
|
|
1379
1370
|
return;
|
|
1380
1371
|
if (!Array.isArray(input)) {
|
|
1381
|
-
throw new
|
|
1372
|
+
throw new ConsumptionError_1.ConsumptionError("Invalid input: 'tags' must be an array");
|
|
1382
1373
|
}
|
|
1383
1374
|
const inputAsArray = input;
|
|
1384
1375
|
query["$or"] = inputAsArray.map((t) => ({
|
|
@@ -1543,6 +1534,7 @@ class SucceedLocalAttributeParams extends ts_serval_1.Serializable {
|
|
|
1543
1534
|
return this.fromAny(value);
|
|
1544
1535
|
}
|
|
1545
1536
|
}
|
|
1537
|
+
exports.SucceedLocalAttributeParams = SucceedLocalAttributeParams;
|
|
1546
1538
|
__decorate([
|
|
1547
1539
|
(0, ts_serval_1.serialize)({ unionTypes: [content_1.IdentityAttribute, content_1.RelationshipAttribute] }),
|
|
1548
1540
|
(0, ts_serval_1.validate)(),
|
|
@@ -1553,7 +1545,6 @@ __decorate([
|
|
|
1553
1545
|
(0, ts_serval_1.validate)(),
|
|
1554
1546
|
__metadata("design:type", transport_1.CoreId)
|
|
1555
1547
|
], SucceedLocalAttributeParams.prototype, "succeeds", void 0);
|
|
1556
|
-
exports.SucceedLocalAttributeParams = SucceedLocalAttributeParams;
|
|
1557
1548
|
//# sourceMappingURL=SucceedLocalAttributeParams.js.map
|
|
1558
1549
|
|
|
1559
1550
|
/***/ }),
|
|
@@ -1585,6 +1576,7 @@ class UpdateLocalAttributeParams extends ts_serval_1.Serializable {
|
|
|
1585
1576
|
return this.fromAny(value);
|
|
1586
1577
|
}
|
|
1587
1578
|
}
|
|
1579
|
+
exports.UpdateLocalAttributeParams = UpdateLocalAttributeParams;
|
|
1588
1580
|
__decorate([
|
|
1589
1581
|
(0, ts_serval_1.serialize)(),
|
|
1590
1582
|
(0, ts_serval_1.validate)(),
|
|
@@ -1595,7 +1587,6 @@ __decorate([
|
|
|
1595
1587
|
(0, ts_serval_1.validate)(),
|
|
1596
1588
|
__metadata("design:type", Object)
|
|
1597
1589
|
], UpdateLocalAttributeParams.prototype, "content", void 0);
|
|
1598
|
-
exports.UpdateLocalAttributeParams = UpdateLocalAttributeParams;
|
|
1599
1590
|
//# sourceMappingURL=UpdateLocalAttributeParams.js.map
|
|
1600
1591
|
|
|
1601
1592
|
/***/ }),
|
|
@@ -1611,11 +1602,14 @@ exports.UpdateLocalAttributeParams = UpdateLocalAttributeParams;
|
|
|
1611
1602
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1612
1603
|
exports.DraftsController = void 0;
|
|
1613
1604
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1614
|
-
const
|
|
1605
|
+
const ConsumptionBaseController_1 = __webpack_require__(/*! ../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
1606
|
+
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
1607
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1608
|
+
const ConsumptionIds_1 = __webpack_require__(/*! ../../consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js");
|
|
1615
1609
|
const Draft_1 = __webpack_require__(/*! ./local/Draft */ "./dist/modules/drafts/local/Draft.js");
|
|
1616
|
-
class DraftsController extends
|
|
1610
|
+
class DraftsController extends ConsumptionBaseController_1.ConsumptionBaseController {
|
|
1617
1611
|
constructor(parent) {
|
|
1618
|
-
super(
|
|
1612
|
+
super(ConsumptionControllerName_1.ConsumptionControllerName.DraftsController, parent);
|
|
1619
1613
|
}
|
|
1620
1614
|
async init() {
|
|
1621
1615
|
await super.init();
|
|
@@ -1632,7 +1626,7 @@ class DraftsController extends consumption_1.ConsumptionBaseController {
|
|
|
1632
1626
|
}
|
|
1633
1627
|
async createDraft(content, type = "") {
|
|
1634
1628
|
const draft = Draft_1.Draft.from({
|
|
1635
|
-
id: await
|
|
1629
|
+
id: await ConsumptionIds_1.ConsumptionIds.draft.generate(),
|
|
1636
1630
|
content,
|
|
1637
1631
|
createdAt: new transport_1.CoreDate(),
|
|
1638
1632
|
lastModifiedAt: new transport_1.CoreDate(),
|
|
@@ -1644,7 +1638,7 @@ class DraftsController extends consumption_1.ConsumptionBaseController {
|
|
|
1644
1638
|
async updateDraft(draft) {
|
|
1645
1639
|
const oldDraft = await this.drafts.read(draft.id.toString());
|
|
1646
1640
|
if (!oldDraft) {
|
|
1647
|
-
throw new
|
|
1641
|
+
throw new ConsumptionError_1.ConsumptionError("Draft Not Found");
|
|
1648
1642
|
}
|
|
1649
1643
|
await this.drafts.update(oldDraft, draft);
|
|
1650
1644
|
}
|
|
@@ -1728,6 +1722,7 @@ let Draft = class Draft extends transport_1.CoreSynchronizable {
|
|
|
1728
1722
|
return this.fromAny(value);
|
|
1729
1723
|
}
|
|
1730
1724
|
};
|
|
1725
|
+
exports.Draft = Draft;
|
|
1731
1726
|
__decorate([
|
|
1732
1727
|
(0, ts_serval_1.validate)(),
|
|
1733
1728
|
(0, ts_serval_1.serialize)(),
|
|
@@ -1758,10 +1753,9 @@ __decorate([
|
|
|
1758
1753
|
(0, ts_serval_1.serialize)(),
|
|
1759
1754
|
__metadata("design:type", transport_1.CoreDate)
|
|
1760
1755
|
], Draft.prototype, "metadataModifiedAt", void 0);
|
|
1761
|
-
Draft = __decorate([
|
|
1756
|
+
exports.Draft = Draft = __decorate([
|
|
1762
1757
|
(0, ts_serval_1.type)("Draft")
|
|
1763
1758
|
], Draft);
|
|
1764
|
-
exports.Draft = Draft;
|
|
1765
1759
|
//# sourceMappingURL=Draft.js.map
|
|
1766
1760
|
|
|
1767
1761
|
/***/ }),
|
|
@@ -1792,12 +1786,453 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
1792
1786
|
__exportStar(__webpack_require__(/*! ./attributeListeners */ "./dist/modules/attributeListeners/index.js"), exports);
|
|
1793
1787
|
__exportStar(__webpack_require__(/*! ./attributes */ "./dist/modules/attributes/index.js"), exports);
|
|
1794
1788
|
__exportStar(__webpack_require__(/*! ./drafts */ "./dist/modules/drafts/index.js"), exports);
|
|
1789
|
+
__exportStar(__webpack_require__(/*! ./notifications */ "./dist/modules/notifications/index.js"), exports);
|
|
1795
1790
|
__exportStar(__webpack_require__(/*! ./requests */ "./dist/modules/requests/index.js"), exports);
|
|
1796
1791
|
__exportStar(__webpack_require__(/*! ./settings */ "./dist/modules/settings/index.js"), exports);
|
|
1797
1792
|
//# sourceMappingURL=index.js.map
|
|
1798
1793
|
|
|
1799
1794
|
/***/ }),
|
|
1800
1795
|
|
|
1796
|
+
/***/ "./dist/modules/notifications/NotificationsController.js":
|
|
1797
|
+
/*!***************************************************************!*\
|
|
1798
|
+
!*** ./dist/modules/notifications/NotificationsController.js ***!
|
|
1799
|
+
\***************************************************************/
|
|
1800
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
1801
|
+
|
|
1802
|
+
"use strict";
|
|
1803
|
+
|
|
1804
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1805
|
+
exports.NotificationsController = void 0;
|
|
1806
|
+
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
1807
|
+
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1808
|
+
const ConsumptionBaseController_1 = __webpack_require__(/*! ../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
1809
|
+
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
1810
|
+
const LocalNotification_1 = __webpack_require__(/*! ./local/LocalNotification */ "./dist/modules/notifications/local/LocalNotification.js");
|
|
1811
|
+
const LocalNotificationSource_1 = __webpack_require__(/*! ./local/LocalNotificationSource */ "./dist/modules/notifications/local/LocalNotificationSource.js");
|
|
1812
|
+
class NotificationsController extends ConsumptionBaseController_1.ConsumptionBaseController {
|
|
1813
|
+
constructor(localNotifications, processorRegistry, parent, eventBus, device) {
|
|
1814
|
+
super(ConsumptionControllerName_1.ConsumptionControllerName.NotificationsController, parent);
|
|
1815
|
+
this.localNotifications = localNotifications;
|
|
1816
|
+
this.processorRegistry = processorRegistry;
|
|
1817
|
+
this.eventBus = eventBus;
|
|
1818
|
+
this.device = device;
|
|
1819
|
+
}
|
|
1820
|
+
async sent(message) {
|
|
1821
|
+
if (!message.isOwn)
|
|
1822
|
+
throw new Error("Cannot send a Notification from a foreign message.");
|
|
1823
|
+
const content = this.extractNotificationFromMessage(message);
|
|
1824
|
+
const recipients = message.cache.recipients;
|
|
1825
|
+
if (recipients.length > 1)
|
|
1826
|
+
throw new Error("Message contains more than one recipient.");
|
|
1827
|
+
const notification = LocalNotification_1.LocalNotification.from({
|
|
1828
|
+
id: content.id,
|
|
1829
|
+
content,
|
|
1830
|
+
status: LocalNotification_1.LocalNotificationStatus.Sent,
|
|
1831
|
+
isOwn: true,
|
|
1832
|
+
createdAt: message.cache.createdAt,
|
|
1833
|
+
peer: recipients[0].address,
|
|
1834
|
+
source: LocalNotificationSource_1.LocalNotificationSource.message(message.id)
|
|
1835
|
+
});
|
|
1836
|
+
await this.localNotifications.create(notification);
|
|
1837
|
+
return notification;
|
|
1838
|
+
}
|
|
1839
|
+
async received(message) {
|
|
1840
|
+
if (message.isOwn)
|
|
1841
|
+
throw new Error("Cannot receive a Notification from an own message.");
|
|
1842
|
+
const content = this.extractNotificationFromMessage(message);
|
|
1843
|
+
const notification = LocalNotification_1.LocalNotification.from({
|
|
1844
|
+
id: content.id,
|
|
1845
|
+
content,
|
|
1846
|
+
status: LocalNotification_1.LocalNotificationStatus.Open,
|
|
1847
|
+
isOwn: false,
|
|
1848
|
+
createdAt: message.cache.createdAt,
|
|
1849
|
+
peer: message.cache.createdBy,
|
|
1850
|
+
source: LocalNotificationSource_1.LocalNotificationSource.message(message.id),
|
|
1851
|
+
receivedByDevice: this.device.id
|
|
1852
|
+
});
|
|
1853
|
+
await this.localNotifications.create(notification);
|
|
1854
|
+
return notification;
|
|
1855
|
+
}
|
|
1856
|
+
extractNotificationFromMessage(message) {
|
|
1857
|
+
if (!(message.cache.content instanceof content_1.Notification)) {
|
|
1858
|
+
throw new Error("Message does not contain a Notification.");
|
|
1859
|
+
}
|
|
1860
|
+
return message.cache.content;
|
|
1861
|
+
}
|
|
1862
|
+
async processOpenNotifactionsReceivedByCurrentDevice() {
|
|
1863
|
+
const notifications = await this.localNotifications.find({
|
|
1864
|
+
receivedByDevice: this.device.id.toString(),
|
|
1865
|
+
isOwn: false,
|
|
1866
|
+
status: LocalNotification_1.LocalNotificationStatus.Open
|
|
1867
|
+
});
|
|
1868
|
+
for (const notificationDoc of notifications) {
|
|
1869
|
+
const notification = LocalNotification_1.LocalNotification.from(notificationDoc);
|
|
1870
|
+
await this.process(notificationDoc, notification);
|
|
1871
|
+
}
|
|
1872
|
+
}
|
|
1873
|
+
async processNotificationById(notificationId) {
|
|
1874
|
+
const notificationDoc = await this.localNotifications.findOne({ id: notificationId.toString() });
|
|
1875
|
+
if (!notificationDoc) {
|
|
1876
|
+
throw transport_1.CoreErrors.general.recordNotFound(LocalNotification_1.LocalNotification, notificationId.toString());
|
|
1877
|
+
}
|
|
1878
|
+
const parsed = LocalNotification_1.LocalNotification.from(notificationDoc);
|
|
1879
|
+
return await this.process(notificationDoc, parsed);
|
|
1880
|
+
}
|
|
1881
|
+
async process(oldDoc, notification) {
|
|
1882
|
+
if (notification.isOwn)
|
|
1883
|
+
throw new Error("Cannot process own notification.");
|
|
1884
|
+
if (!notification.receivedByDevice?.equals(this.device.id)) {
|
|
1885
|
+
throw new Error("Notification is not received by current device.");
|
|
1886
|
+
}
|
|
1887
|
+
if (![LocalNotification_1.LocalNotificationStatus.Open, LocalNotification_1.LocalNotificationStatus.Error].includes(notification.status)) {
|
|
1888
|
+
throw new Error(`Cannot process notification with status ${notification.status}.`);
|
|
1889
|
+
}
|
|
1890
|
+
const processedItems = [];
|
|
1891
|
+
const events = [];
|
|
1892
|
+
try {
|
|
1893
|
+
for (const item of notification.content.items) {
|
|
1894
|
+
const processor = this.processorRegistry.getProcessorForItem(item);
|
|
1895
|
+
const prerequisitesMatched = await processor.checkPrerequisitesOfIncomingNotificationItem(item);
|
|
1896
|
+
if (!prerequisitesMatched) {
|
|
1897
|
+
const index = notification.content.items.indexOf(item);
|
|
1898
|
+
throw new Error(`Prerequisites of notificationItem with index '${index}' of Notification ${notification.id} not met.`);
|
|
1899
|
+
}
|
|
1900
|
+
// we should also rollback the item that failed, therefore we need to push before processing
|
|
1901
|
+
processedItems.push(item);
|
|
1902
|
+
const event = await processor.process(item);
|
|
1903
|
+
if (event)
|
|
1904
|
+
events.push(event);
|
|
1905
|
+
}
|
|
1906
|
+
}
|
|
1907
|
+
catch (e) {
|
|
1908
|
+
this._log.error(`Error while processing notification ${notification.id}: ${e}`);
|
|
1909
|
+
for (const item of processedItems.reverse()) {
|
|
1910
|
+
const processor = this.processorRegistry.getProcessorForItem(item);
|
|
1911
|
+
await processor.rollback(item);
|
|
1912
|
+
}
|
|
1913
|
+
notification.status = LocalNotification_1.LocalNotificationStatus.Error;
|
|
1914
|
+
await this.localNotifications.update(oldDoc, notification);
|
|
1915
|
+
return notification;
|
|
1916
|
+
}
|
|
1917
|
+
notification.status = LocalNotification_1.LocalNotificationStatus.Completed;
|
|
1918
|
+
await this.localNotifications.update(oldDoc, notification);
|
|
1919
|
+
for (const event of events)
|
|
1920
|
+
this.eventBus.publish(event);
|
|
1921
|
+
return notification;
|
|
1922
|
+
}
|
|
1923
|
+
}
|
|
1924
|
+
exports.NotificationsController = NotificationsController;
|
|
1925
|
+
//# sourceMappingURL=NotificationsController.js.map
|
|
1926
|
+
|
|
1927
|
+
/***/ }),
|
|
1928
|
+
|
|
1929
|
+
/***/ "./dist/modules/notifications/index.js":
|
|
1930
|
+
/*!*********************************************!*\
|
|
1931
|
+
!*** ./dist/modules/notifications/index.js ***!
|
|
1932
|
+
\*********************************************/
|
|
1933
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
1934
|
+
|
|
1935
|
+
"use strict";
|
|
1936
|
+
|
|
1937
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
1938
|
+
if (k2 === undefined) k2 = k;
|
|
1939
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
1940
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
1941
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
1942
|
+
}
|
|
1943
|
+
Object.defineProperty(o, k2, desc);
|
|
1944
|
+
}) : (function(o, m, k, k2) {
|
|
1945
|
+
if (k2 === undefined) k2 = k;
|
|
1946
|
+
o[k2] = m[k];
|
|
1947
|
+
}));
|
|
1948
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
1949
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
1950
|
+
};
|
|
1951
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1952
|
+
__exportStar(__webpack_require__(/*! ./NotificationsController */ "./dist/modules/notifications/NotificationsController.js"), exports);
|
|
1953
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/AbstractNotificationItemProcessor */ "./dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.js"), exports);
|
|
1954
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/NotificationItemConstructor */ "./dist/modules/notifications/itemProcessors/NotificationItemConstructor.js"), exports);
|
|
1955
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/NotificationItemProcessorConstructor */ "./dist/modules/notifications/itemProcessors/NotificationItemProcessorConstructor.js"), exports);
|
|
1956
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/NotificationItemProcessorRegistry */ "./dist/modules/notifications/itemProcessors/NotificationItemProcessorRegistry.js"), exports);
|
|
1957
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor */ "./dist/modules/notifications/itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor.js"), exports);
|
|
1958
|
+
__exportStar(__webpack_require__(/*! ./local/LocalNotification */ "./dist/modules/notifications/local/LocalNotification.js"), exports);
|
|
1959
|
+
__exportStar(__webpack_require__(/*! ./local/LocalNotificationSource */ "./dist/modules/notifications/local/LocalNotificationSource.js"), exports);
|
|
1960
|
+
//# sourceMappingURL=index.js.map
|
|
1961
|
+
|
|
1962
|
+
/***/ }),
|
|
1963
|
+
|
|
1964
|
+
/***/ "./dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.js":
|
|
1965
|
+
/*!****************************************************************************************!*\
|
|
1966
|
+
!*** ./dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.js ***!
|
|
1967
|
+
\****************************************************************************************/
|
|
1968
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
1969
|
+
|
|
1970
|
+
"use strict";
|
|
1971
|
+
|
|
1972
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1973
|
+
exports.AbstractNotificationItemProcessor = void 0;
|
|
1974
|
+
class AbstractNotificationItemProcessor {
|
|
1975
|
+
constructor(consumptionController) {
|
|
1976
|
+
this.consumptionController = consumptionController;
|
|
1977
|
+
this.accountController = this.consumptionController.accountController;
|
|
1978
|
+
this.currentIdentityAddress = this.accountController.identity.address;
|
|
1979
|
+
}
|
|
1980
|
+
}
|
|
1981
|
+
exports.AbstractNotificationItemProcessor = AbstractNotificationItemProcessor;
|
|
1982
|
+
//# sourceMappingURL=AbstractNotificationItemProcessor.js.map
|
|
1983
|
+
|
|
1984
|
+
/***/ }),
|
|
1985
|
+
|
|
1986
|
+
/***/ "./dist/modules/notifications/itemProcessors/NotificationItemConstructor.js":
|
|
1987
|
+
/*!**********************************************************************************!*\
|
|
1988
|
+
!*** ./dist/modules/notifications/itemProcessors/NotificationItemConstructor.js ***!
|
|
1989
|
+
\**********************************************************************************/
|
|
1990
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
1991
|
+
|
|
1992
|
+
"use strict";
|
|
1993
|
+
|
|
1994
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1995
|
+
//# sourceMappingURL=NotificationItemConstructor.js.map
|
|
1996
|
+
|
|
1997
|
+
/***/ }),
|
|
1998
|
+
|
|
1999
|
+
/***/ "./dist/modules/notifications/itemProcessors/NotificationItemProcessorConstructor.js":
|
|
2000
|
+
/*!*******************************************************************************************!*\
|
|
2001
|
+
!*** ./dist/modules/notifications/itemProcessors/NotificationItemProcessorConstructor.js ***!
|
|
2002
|
+
\*******************************************************************************************/
|
|
2003
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
2004
|
+
|
|
2005
|
+
"use strict";
|
|
2006
|
+
|
|
2007
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2008
|
+
//# sourceMappingURL=NotificationItemProcessorConstructor.js.map
|
|
2009
|
+
|
|
2010
|
+
/***/ }),
|
|
2011
|
+
|
|
2012
|
+
/***/ "./dist/modules/notifications/itemProcessors/NotificationItemProcessorRegistry.js":
|
|
2013
|
+
/*!****************************************************************************************!*\
|
|
2014
|
+
!*** ./dist/modules/notifications/itemProcessors/NotificationItemProcessorRegistry.js ***!
|
|
2015
|
+
\****************************************************************************************/
|
|
2016
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
2017
|
+
|
|
2018
|
+
"use strict";
|
|
2019
|
+
|
|
2020
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2021
|
+
exports.NotificationItemProcessorRegistry = void 0;
|
|
2022
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
2023
|
+
class NotificationItemProcessorRegistry {
|
|
2024
|
+
constructor(consumptionController, processors = new Map()) {
|
|
2025
|
+
this.consumptionController = consumptionController;
|
|
2026
|
+
this.processors = processors;
|
|
2027
|
+
}
|
|
2028
|
+
registerProcessor(itemConstructor, processorConstructor) {
|
|
2029
|
+
if (this.processors.has(itemConstructor)) {
|
|
2030
|
+
throw new ConsumptionError_1.ConsumptionError(`There is already a processor registered for '${itemConstructor.name}'. Use 'replaceProcessorForType' if you want to replace it.`);
|
|
2031
|
+
}
|
|
2032
|
+
this.processors.set(itemConstructor, processorConstructor);
|
|
2033
|
+
}
|
|
2034
|
+
registerOrReplaceProcessor(itemConstructor, processorConstructor) {
|
|
2035
|
+
this.processors.set(itemConstructor, processorConstructor);
|
|
2036
|
+
}
|
|
2037
|
+
getProcessorForItem(item) {
|
|
2038
|
+
const constructor = this.processors.get(item.constructor);
|
|
2039
|
+
if (!constructor) {
|
|
2040
|
+
throw new ConsumptionError_1.ConsumptionError(`There was no processor registered for '${item.constructor.name}'.`);
|
|
2041
|
+
}
|
|
2042
|
+
return new constructor(this.consumptionController);
|
|
2043
|
+
}
|
|
2044
|
+
}
|
|
2045
|
+
exports.NotificationItemProcessorRegistry = NotificationItemProcessorRegistry;
|
|
2046
|
+
//# sourceMappingURL=NotificationItemProcessorRegistry.js.map
|
|
2047
|
+
|
|
2048
|
+
/***/ }),
|
|
2049
|
+
|
|
2050
|
+
/***/ "./dist/modules/notifications/itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor.js":
|
|
2051
|
+
/*!*********************************************************************************************************************!*\
|
|
2052
|
+
!*** ./dist/modules/notifications/itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor.js ***!
|
|
2053
|
+
\*********************************************************************************************************************/
|
|
2054
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
2055
|
+
|
|
2056
|
+
"use strict";
|
|
2057
|
+
|
|
2058
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2059
|
+
exports.AttributeSucceededNotificationItemProcessor = void 0;
|
|
2060
|
+
const AbstractNotificationItemProcessor_1 = __webpack_require__(/*! ../AbstractNotificationItemProcessor */ "./dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.js");
|
|
2061
|
+
class AttributeSucceededNotificationItemProcessor extends AbstractNotificationItemProcessor_1.AbstractNotificationItemProcessor {
|
|
2062
|
+
checkPrerequisitesOfIncomingNotificationItem(_notificationItem) {
|
|
2063
|
+
throw new Error("Method not implemented.");
|
|
2064
|
+
}
|
|
2065
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
2066
|
+
async process(_notificationItem) {
|
|
2067
|
+
throw new Error("Method not implemented.");
|
|
2068
|
+
}
|
|
2069
|
+
rollback() {
|
|
2070
|
+
throw new Error("Method not implemented.");
|
|
2071
|
+
}
|
|
2072
|
+
}
|
|
2073
|
+
exports.AttributeSucceededNotificationItemProcessor = AttributeSucceededNotificationItemProcessor;
|
|
2074
|
+
//# sourceMappingURL=AttributeSucceededNotificationItemProcessor.js.map
|
|
2075
|
+
|
|
2076
|
+
/***/ }),
|
|
2077
|
+
|
|
2078
|
+
/***/ "./dist/modules/notifications/local/LocalNotification.js":
|
|
2079
|
+
/*!***************************************************************!*\
|
|
2080
|
+
!*** ./dist/modules/notifications/local/LocalNotification.js ***!
|
|
2081
|
+
\***************************************************************/
|
|
2082
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2083
|
+
|
|
2084
|
+
"use strict";
|
|
2085
|
+
|
|
2086
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2087
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2088
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2089
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2090
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2091
|
+
};
|
|
2092
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
2093
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2094
|
+
};
|
|
2095
|
+
var LocalNotification_1;
|
|
2096
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2097
|
+
exports.LocalNotification = exports.LocalNotificationStatus = void 0;
|
|
2098
|
+
const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
|
|
2099
|
+
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
2100
|
+
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
2101
|
+
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
2102
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
2103
|
+
const LocalNotificationSource_1 = __webpack_require__(/*! ./LocalNotificationSource */ "./dist/modules/notifications/local/LocalNotificationSource.js");
|
|
2104
|
+
var LocalNotificationStatus;
|
|
2105
|
+
(function (LocalNotificationStatus) {
|
|
2106
|
+
LocalNotificationStatus["Open"] = "Open";
|
|
2107
|
+
LocalNotificationStatus["Sent"] = "Sent";
|
|
2108
|
+
LocalNotificationStatus["Completed"] = "Completed";
|
|
2109
|
+
LocalNotificationStatus["Error"] = "Error";
|
|
2110
|
+
})(LocalNotificationStatus || (exports.LocalNotificationStatus = LocalNotificationStatus = {}));
|
|
2111
|
+
let LocalNotification = LocalNotification_1 = class LocalNotification extends transport_1.CoreSynchronizable {
|
|
2112
|
+
constructor() {
|
|
2113
|
+
super(...arguments);
|
|
2114
|
+
this.technicalProperties = [
|
|
2115
|
+
"@type",
|
|
2116
|
+
"@context",
|
|
2117
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.isOwn),
|
|
2118
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.peer),
|
|
2119
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.createdAt),
|
|
2120
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.receivedByDevice),
|
|
2121
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.status),
|
|
2122
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.source)
|
|
2123
|
+
];
|
|
2124
|
+
this.userdataProperties = [(0, ts_simple_nameof_1.nameof)((r) => r.content)];
|
|
2125
|
+
}
|
|
2126
|
+
static postFrom(value) {
|
|
2127
|
+
if (!(value instanceof LocalNotification_1)) {
|
|
2128
|
+
throw new ConsumptionError_1.ConsumptionError("this should never happen");
|
|
2129
|
+
}
|
|
2130
|
+
if (value.isOwn && typeof value.receivedByDevice !== "undefined") {
|
|
2131
|
+
throw new ts_serval_1.ValidationError(LocalNotification_1.name, (0, ts_simple_nameof_1.nameof)((x) => x.receivedByDevice), `You cannot define ${(0, ts_simple_nameof_1.nameof)((x) => x.receivedByDevice)} for an own message.`);
|
|
2132
|
+
}
|
|
2133
|
+
if (!value.isOwn && typeof value.receivedByDevice === "undefined") {
|
|
2134
|
+
throw new ts_serval_1.ValidationError(LocalNotification_1.name, (0, ts_simple_nameof_1.nameof)((x) => x.receivedByDevice), `You must define ${(0, ts_simple_nameof_1.nameof)((x) => x.receivedByDevice)} for a peer message.`);
|
|
2135
|
+
}
|
|
2136
|
+
return value;
|
|
2137
|
+
}
|
|
2138
|
+
static from(value) {
|
|
2139
|
+
return this.fromAny(value);
|
|
2140
|
+
}
|
|
2141
|
+
};
|
|
2142
|
+
exports.LocalNotification = LocalNotification;
|
|
2143
|
+
__decorate([
|
|
2144
|
+
(0, ts_serval_1.serialize)(),
|
|
2145
|
+
(0, ts_serval_1.validate)(),
|
|
2146
|
+
__metadata("design:type", Boolean)
|
|
2147
|
+
], LocalNotification.prototype, "isOwn", void 0);
|
|
2148
|
+
__decorate([
|
|
2149
|
+
(0, ts_serval_1.serialize)(),
|
|
2150
|
+
(0, ts_serval_1.validate)(),
|
|
2151
|
+
__metadata("design:type", transport_1.CoreAddress)
|
|
2152
|
+
], LocalNotification.prototype, "peer", void 0);
|
|
2153
|
+
__decorate([
|
|
2154
|
+
(0, ts_serval_1.serialize)(),
|
|
2155
|
+
(0, ts_serval_1.validate)(),
|
|
2156
|
+
__metadata("design:type", transport_1.CoreDate)
|
|
2157
|
+
], LocalNotification.prototype, "createdAt", void 0);
|
|
2158
|
+
__decorate([
|
|
2159
|
+
(0, ts_serval_1.serialize)(),
|
|
2160
|
+
(0, ts_serval_1.validate)({ nullable: true }),
|
|
2161
|
+
__metadata("design:type", transport_1.CoreId)
|
|
2162
|
+
], LocalNotification.prototype, "receivedByDevice", void 0);
|
|
2163
|
+
__decorate([
|
|
2164
|
+
(0, ts_serval_1.serialize)(),
|
|
2165
|
+
(0, ts_serval_1.validate)(),
|
|
2166
|
+
__metadata("design:type", content_1.Notification)
|
|
2167
|
+
], LocalNotification.prototype, "content", void 0);
|
|
2168
|
+
__decorate([
|
|
2169
|
+
(0, ts_serval_1.serialize)(),
|
|
2170
|
+
(0, ts_serval_1.validate)(),
|
|
2171
|
+
__metadata("design:type", String)
|
|
2172
|
+
], LocalNotification.prototype, "status", void 0);
|
|
2173
|
+
__decorate([
|
|
2174
|
+
(0, ts_serval_1.serialize)(),
|
|
2175
|
+
(0, ts_serval_1.validate)(),
|
|
2176
|
+
__metadata("design:type", LocalNotificationSource_1.LocalNotificationSource)
|
|
2177
|
+
], LocalNotification.prototype, "source", void 0);
|
|
2178
|
+
exports.LocalNotification = LocalNotification = LocalNotification_1 = __decorate([
|
|
2179
|
+
(0, ts_serval_1.type)("LocalNotification")
|
|
2180
|
+
], LocalNotification);
|
|
2181
|
+
//# sourceMappingURL=LocalNotification.js.map
|
|
2182
|
+
|
|
2183
|
+
/***/ }),
|
|
2184
|
+
|
|
2185
|
+
/***/ "./dist/modules/notifications/local/LocalNotificationSource.js":
|
|
2186
|
+
/*!*********************************************************************!*\
|
|
2187
|
+
!*** ./dist/modules/notifications/local/LocalNotificationSource.js ***!
|
|
2188
|
+
\*********************************************************************/
|
|
2189
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2190
|
+
|
|
2191
|
+
"use strict";
|
|
2192
|
+
|
|
2193
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2194
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2195
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2196
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
2197
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2198
|
+
};
|
|
2199
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
2200
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2201
|
+
};
|
|
2202
|
+
var LocalNotificationSource_1;
|
|
2203
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2204
|
+
exports.LocalNotificationSource = void 0;
|
|
2205
|
+
const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
|
|
2206
|
+
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
2207
|
+
let LocalNotificationSource = LocalNotificationSource_1 = class LocalNotificationSource extends transport_1.CoreSerializable {
|
|
2208
|
+
static from(value) {
|
|
2209
|
+
return this.fromAny(value);
|
|
2210
|
+
}
|
|
2211
|
+
static message(reference) {
|
|
2212
|
+
return LocalNotificationSource_1.from({
|
|
2213
|
+
type: "Message",
|
|
2214
|
+
reference
|
|
2215
|
+
});
|
|
2216
|
+
}
|
|
2217
|
+
};
|
|
2218
|
+
exports.LocalNotificationSource = LocalNotificationSource;
|
|
2219
|
+
__decorate([
|
|
2220
|
+
(0, ts_serval_1.serialize)(),
|
|
2221
|
+
(0, ts_serval_1.validate)(),
|
|
2222
|
+
__metadata("design:type", String)
|
|
2223
|
+
], LocalNotificationSource.prototype, "type", void 0);
|
|
2224
|
+
__decorate([
|
|
2225
|
+
(0, ts_serval_1.serialize)(),
|
|
2226
|
+
(0, ts_serval_1.validate)(),
|
|
2227
|
+
__metadata("design:type", transport_1.CoreId)
|
|
2228
|
+
], LocalNotificationSource.prototype, "reference", void 0);
|
|
2229
|
+
exports.LocalNotificationSource = LocalNotificationSource = LocalNotificationSource_1 = __decorate([
|
|
2230
|
+
(0, ts_serval_1.type)("LocalNotificationSource")
|
|
2231
|
+
], LocalNotificationSource);
|
|
2232
|
+
//# sourceMappingURL=LocalNotificationSource.js.map
|
|
2233
|
+
|
|
2234
|
+
/***/ }),
|
|
2235
|
+
|
|
1801
2236
|
/***/ "./dist/modules/requests/events/IncomingRequestReceivedEvent.js":
|
|
1802
2237
|
/*!**********************************************************************!*\
|
|
1803
2238
|
!*** ./dist/modules/requests/events/IncomingRequestReceivedEvent.js ***!
|
|
@@ -1809,12 +2244,12 @@ __exportStar(__webpack_require__(/*! ./settings */ "./dist/modules/settings/inde
|
|
|
1809
2244
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1810
2245
|
exports.IncomingRequestReceivedEvent = void 0;
|
|
1811
2246
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1812
|
-
const
|
|
2247
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1813
2248
|
class IncomingRequestReceivedEvent extends transport_1.TransportDataEvent {
|
|
1814
2249
|
constructor(eventTargetAddress, data) {
|
|
1815
2250
|
super(IncomingRequestReceivedEvent.namespace, eventTargetAddress, data);
|
|
1816
2251
|
if (data.isOwn)
|
|
1817
|
-
throw new
|
|
2252
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create this event for an outgoing Request");
|
|
1818
2253
|
}
|
|
1819
2254
|
}
|
|
1820
2255
|
exports.IncomingRequestReceivedEvent = IncomingRequestReceivedEvent;
|
|
@@ -1834,12 +2269,12 @@ IncomingRequestReceivedEvent.namespace = "consumption.incomingRequestReceived";
|
|
|
1834
2269
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1835
2270
|
exports.IncomingRequestStatusChangedEvent = void 0;
|
|
1836
2271
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1837
|
-
const
|
|
2272
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1838
2273
|
class IncomingRequestStatusChangedEvent extends transport_1.TransportDataEvent {
|
|
1839
2274
|
constructor(eventTargetAddress, data) {
|
|
1840
2275
|
super(IncomingRequestStatusChangedEvent.namespace, eventTargetAddress, data);
|
|
1841
2276
|
if (data.request.isOwn)
|
|
1842
|
-
throw new
|
|
2277
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create this event for an outgoing Request");
|
|
1843
2278
|
}
|
|
1844
2279
|
}
|
|
1845
2280
|
exports.IncomingRequestStatusChangedEvent = IncomingRequestStatusChangedEvent;
|
|
@@ -1859,12 +2294,12 @@ IncomingRequestStatusChangedEvent.namespace = "consumption.incomingRequestStatus
|
|
|
1859
2294
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1860
2295
|
exports.OutgoingRequestCreatedAndCompletedEvent = void 0;
|
|
1861
2296
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1862
|
-
const
|
|
2297
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1863
2298
|
class OutgoingRequestCreatedAndCompletedEvent extends transport_1.TransportDataEvent {
|
|
1864
2299
|
constructor(eventTargetAddress, data) {
|
|
1865
2300
|
super(OutgoingRequestCreatedAndCompletedEvent.namespace, eventTargetAddress, data);
|
|
1866
2301
|
if (!data.isOwn)
|
|
1867
|
-
throw new
|
|
2302
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create this event for an incoming Request");
|
|
1868
2303
|
}
|
|
1869
2304
|
}
|
|
1870
2305
|
exports.OutgoingRequestCreatedAndCompletedEvent = OutgoingRequestCreatedAndCompletedEvent;
|
|
@@ -1884,12 +2319,12 @@ OutgoingRequestCreatedAndCompletedEvent.namespace = "consumption.outgoingRequest
|
|
|
1884
2319
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1885
2320
|
exports.OutgoingRequestCreatedEvent = void 0;
|
|
1886
2321
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1887
|
-
const
|
|
2322
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1888
2323
|
class OutgoingRequestCreatedEvent extends transport_1.TransportDataEvent {
|
|
1889
2324
|
constructor(eventTargetAddress, data) {
|
|
1890
2325
|
super(OutgoingRequestCreatedEvent.namespace, eventTargetAddress, data);
|
|
1891
2326
|
if (!data.isOwn)
|
|
1892
|
-
throw new
|
|
2327
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create this event for an incoming Request");
|
|
1893
2328
|
}
|
|
1894
2329
|
}
|
|
1895
2330
|
exports.OutgoingRequestCreatedEvent = OutgoingRequestCreatedEvent;
|
|
@@ -1909,12 +2344,12 @@ OutgoingRequestCreatedEvent.namespace = "consumption.outgoingRequestCreated";
|
|
|
1909
2344
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1910
2345
|
exports.OutgoingRequestStatusChangedEvent = void 0;
|
|
1911
2346
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1912
|
-
const
|
|
2347
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1913
2348
|
class OutgoingRequestStatusChangedEvent extends transport_1.TransportDataEvent {
|
|
1914
2349
|
constructor(eventTargetAddress, data) {
|
|
1915
2350
|
super(OutgoingRequestStatusChangedEvent.namespace, eventTargetAddress, data);
|
|
1916
2351
|
if (!data.request.isOwn)
|
|
1917
|
-
throw new
|
|
2352
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create this event for an incoming Request");
|
|
1918
2353
|
}
|
|
1919
2354
|
}
|
|
1920
2355
|
exports.OutgoingRequestStatusChangedEvent = OutgoingRequestStatusChangedEvent;
|
|
@@ -1967,7 +2402,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
1967
2402
|
exports.DecideRequestParametersValidator = void 0;
|
|
1968
2403
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
1969
2404
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1970
|
-
const
|
|
2405
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
1971
2406
|
const ValidationResult_1 = __webpack_require__(/*! ../itemProcessors/ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
1972
2407
|
const DecideRequestItemGroupParameters_1 = __webpack_require__(/*! ./decide/DecideRequestItemGroupParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.js");
|
|
1973
2408
|
const DecideRequestItemParameters_1 = __webpack_require__(/*! ./decide/DecideRequestItemParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemParameters.js");
|
|
@@ -1977,7 +2412,7 @@ class DecideRequestParametersValidator {
|
|
|
1977
2412
|
throw new Error("The response is invalid because the id of the Request does not match the id of the Response.");
|
|
1978
2413
|
}
|
|
1979
2414
|
if (params.items.length !== request.content.items.length) {
|
|
1980
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2415
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.invalidNumberOfItems("Number of items in Request and Response do not match"));
|
|
1981
2416
|
}
|
|
1982
2417
|
const validationResults = request.content.items.map((requestItem, index) => this.checkItemOrGroup(requestItem, params.items[index], params.accept));
|
|
1983
2418
|
return ValidationResult_1.ValidationResult.fromItems(validationResults);
|
|
@@ -1990,29 +2425,29 @@ class DecideRequestParametersValidator {
|
|
|
1990
2425
|
}
|
|
1991
2426
|
checkItem(requestItem, response, isParentAccepted) {
|
|
1992
2427
|
if ((0, DecideRequestItemGroupParameters_1.isDecideRequestItemGroupParametersJSON)(response)) {
|
|
1993
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2428
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.requestItemAnsweredAsRequestItemGroup());
|
|
1994
2429
|
}
|
|
1995
2430
|
if (!isParentAccepted && response.accept) {
|
|
1996
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2431
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.itemAcceptedButParentNotAccepted("The RequestItem was accepted, but the parent was not accepted."));
|
|
1997
2432
|
}
|
|
1998
2433
|
if (isParentAccepted && requestItem.mustBeAccepted && !response.accept) {
|
|
1999
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2434
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.mustBeAcceptedItemNotAccepted("The RequestItem is flagged as 'mustBeAccepted', but it was not accepted."));
|
|
2000
2435
|
}
|
|
2001
2436
|
return ValidationResult_1.ValidationResult.success();
|
|
2002
2437
|
}
|
|
2003
2438
|
checkItemGroup(requestItemGroup, responseItemGroup, isParentAccepted) {
|
|
2004
2439
|
if ((0, DecideRequestItemParameters_1.isDecideRequestItemParametersJSON)(responseItemGroup)) {
|
|
2005
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2440
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.requestItemGroupAnsweredAsRequestItem());
|
|
2006
2441
|
}
|
|
2007
2442
|
if (responseItemGroup.items.length !== requestItemGroup.items.length) {
|
|
2008
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2443
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.invalidNumberOfItems("Number of items in RequestItemGroup and ResponseItemGroup do not match"));
|
|
2009
2444
|
}
|
|
2010
2445
|
const isGroupAccepted = responseItemGroup.items.some((value) => value.accept);
|
|
2011
2446
|
if (!isParentAccepted && isGroupAccepted) {
|
|
2012
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2447
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.itemAcceptedButParentNotAccepted("The RequestItemGroup was accepted, but the parent was not accepted."));
|
|
2013
2448
|
}
|
|
2014
2449
|
if (isParentAccepted && requestItemGroup.mustBeAccepted && !isGroupAccepted) {
|
|
2015
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2450
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.mustBeAcceptedItemNotAccepted("The RequestItemGroup is flagged as 'mustBeAccepted', but it was not accepted. Please accept all 'mustBeAccepted' items in this group."));
|
|
2016
2451
|
}
|
|
2017
2452
|
const validationResults = requestItemGroup.items.map((requestItem, index) => this.checkItem(requestItem, responseItemGroup.items[index], isGroupAccepted));
|
|
2018
2453
|
return ValidationResult_1.ValidationResult.fromItems(validationResults);
|
|
@@ -2036,21 +2471,25 @@ exports.IncomingRequestsController = void 0;
|
|
|
2036
2471
|
const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
|
|
2037
2472
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
2038
2473
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
2039
|
-
const
|
|
2474
|
+
const ConsumptionBaseController_1 = __webpack_require__(/*! ../../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
2475
|
+
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
2476
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
2477
|
+
const ConsumptionIds_1 = __webpack_require__(/*! ../../../consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js");
|
|
2478
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
2040
2479
|
const events_1 = __webpack_require__(/*! ../events */ "./dist/modules/requests/events/index.js");
|
|
2041
2480
|
const ValidationResult_1 = __webpack_require__(/*! ../itemProcessors/ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
2042
2481
|
const LocalRequest_1 = __webpack_require__(/*! ../local/LocalRequest */ "./dist/modules/requests/local/LocalRequest.js");
|
|
2043
2482
|
const LocalRequestStatus_1 = __webpack_require__(/*! ../local/LocalRequestStatus */ "./dist/modules/requests/local/LocalRequestStatus.js");
|
|
2044
2483
|
const LocalResponse_1 = __webpack_require__(/*! ../local/LocalResponse */ "./dist/modules/requests/local/LocalResponse.js");
|
|
2484
|
+
const DecideRequestParametersValidator_1 = __webpack_require__(/*! ./DecideRequestParametersValidator */ "./dist/modules/requests/incoming/DecideRequestParametersValidator.js");
|
|
2045
2485
|
const CheckPrerequisitesOfIncomingRequestParameters_1 = __webpack_require__(/*! ./checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters */ "./dist/modules/requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters.js");
|
|
2046
2486
|
const CompleteIncomingRequestParameters_1 = __webpack_require__(/*! ./complete/CompleteIncomingRequestParameters */ "./dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.js");
|
|
2047
2487
|
const InternalDecideRequestParameters_1 = __webpack_require__(/*! ./decide/InternalDecideRequestParameters */ "./dist/modules/requests/incoming/decide/InternalDecideRequestParameters.js");
|
|
2048
|
-
const DecideRequestParametersValidator_1 = __webpack_require__(/*! ./DecideRequestParametersValidator */ "./dist/modules/requests/incoming/DecideRequestParametersValidator.js");
|
|
2049
2488
|
const ReceivedIncomingRequestParameters_1 = __webpack_require__(/*! ./received/ReceivedIncomingRequestParameters */ "./dist/modules/requests/incoming/received/ReceivedIncomingRequestParameters.js");
|
|
2050
2489
|
const RequireManualDecisionOfIncomingRequestParameters_1 = __webpack_require__(/*! ./requireManualDecision/RequireManualDecisionOfIncomingRequestParameters */ "./dist/modules/requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters.js");
|
|
2051
|
-
class IncomingRequestsController extends
|
|
2490
|
+
class IncomingRequestsController extends ConsumptionBaseController_1.ConsumptionBaseController {
|
|
2052
2491
|
constructor(localRequests, processorRegistry, parent, eventBus, identity) {
|
|
2053
|
-
super(
|
|
2492
|
+
super(ConsumptionControllerName_1.ConsumptionControllerName.RequestsController, parent);
|
|
2054
2493
|
this.localRequests = localRequests;
|
|
2055
2494
|
this.processorRegistry = processorRegistry;
|
|
2056
2495
|
this.eventBus = eventBus;
|
|
@@ -2061,7 +2500,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2061
2500
|
const parsedParams = ReceivedIncomingRequestParameters_1.ReceivedIncomingRequestParameters.from(params);
|
|
2062
2501
|
const infoFromSource = this.extractInfoFromSource(parsedParams.requestSourceObject);
|
|
2063
2502
|
const request = LocalRequest_1.LocalRequest.from({
|
|
2064
|
-
id: parsedParams.receivedRequest.id ?? (await
|
|
2503
|
+
id: parsedParams.receivedRequest.id ?? (await ConsumptionIds_1.ConsumptionIds.request.generate()),
|
|
2065
2504
|
createdAt: transport_1.CoreDate.utc(),
|
|
2066
2505
|
status: LocalRequestStatus_1.LocalRequestStatus.Open,
|
|
2067
2506
|
content: parsedParams.receivedRequest,
|
|
@@ -2082,7 +2521,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2082
2521
|
}
|
|
2083
2522
|
extractInfoFromMessage(message) {
|
|
2084
2523
|
if (message.isOwn)
|
|
2085
|
-
throw new
|
|
2524
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create incoming Request from own Message");
|
|
2086
2525
|
return {
|
|
2087
2526
|
peer: message.cache.createdBy,
|
|
2088
2527
|
source: {
|
|
@@ -2093,7 +2532,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2093
2532
|
}
|
|
2094
2533
|
extractInfoFromRelationshipTemplate(template) {
|
|
2095
2534
|
if (template.isOwn)
|
|
2096
|
-
throw new
|
|
2535
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create incoming Request from own Relationship Template");
|
|
2097
2536
|
return {
|
|
2098
2537
|
peer: template.cache.createdBy,
|
|
2099
2538
|
source: {
|
|
@@ -2192,22 +2631,22 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2192
2631
|
}
|
|
2193
2632
|
catch (e) {
|
|
2194
2633
|
if (e instanceof ts_serval_1.ServalError) {
|
|
2195
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2634
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.servalErrorDuringRequestItemProcessing(e));
|
|
2196
2635
|
}
|
|
2197
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2636
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.unexpectedErrorDuringRequestItemProcessing(e));
|
|
2198
2637
|
}
|
|
2199
2638
|
}
|
|
2200
2639
|
async accept(params) {
|
|
2201
2640
|
const canAccept = await this.canAccept(params);
|
|
2202
2641
|
if (!canAccept.isSuccess()) {
|
|
2203
|
-
throw new
|
|
2642
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot accept the Request with the given parameters. Call 'canAccept' to get more information.");
|
|
2204
2643
|
}
|
|
2205
2644
|
return await this.decide({ ...params, accept: true });
|
|
2206
2645
|
}
|
|
2207
2646
|
async reject(params) {
|
|
2208
2647
|
const canReject = await this.canReject(params);
|
|
2209
2648
|
if (!canReject.isSuccess()) {
|
|
2210
|
-
throw new
|
|
2649
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot reject the Request with the given parameters. Call 'canReject' to get more information.");
|
|
2211
2650
|
}
|
|
2212
2651
|
return await this.decide({ ...params, accept: false });
|
|
2213
2652
|
}
|
|
@@ -2272,14 +2711,14 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2272
2711
|
if (e instanceof Error) {
|
|
2273
2712
|
details = ` Details: ${e.message}`;
|
|
2274
2713
|
}
|
|
2275
|
-
throw new
|
|
2714
|
+
throw new ConsumptionError_1.ConsumptionError(`An error occurred while processing a '${requestItem.constructor.name}'. You should contact the developer of this RequestItem.${details}}`);
|
|
2276
2715
|
}
|
|
2277
2716
|
}
|
|
2278
2717
|
async complete(params) {
|
|
2279
2718
|
const parsedParams = CompleteIncomingRequestParameters_1.CompleteIncomingRequestParameters.from(params);
|
|
2280
2719
|
const request = await this.getOrThrow(parsedParams.requestId);
|
|
2281
2720
|
if (request.isOwn) {
|
|
2282
|
-
throw new
|
|
2721
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot decide own Request");
|
|
2283
2722
|
}
|
|
2284
2723
|
this.assertRequestStatus(request, LocalRequestStatus_1.LocalRequestStatus.Decided);
|
|
2285
2724
|
const requestIsRejected = request.response.content.result === content_1.ResponseResult.Rejected;
|
|
@@ -2291,7 +2730,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2291
2730
|
});
|
|
2292
2731
|
}
|
|
2293
2732
|
else if (!requestIsRejected || !requestIsFromTemplate) {
|
|
2294
|
-
throw new
|
|
2733
|
+
throw new ConsumptionError_1.ConsumptionError("A Request can only be completed without a responseSource if the Request is rejected and the Request is from a Relationship Template");
|
|
2295
2734
|
}
|
|
2296
2735
|
request.changeStatus(LocalRequestStatus_1.LocalRequestStatus.Completed);
|
|
2297
2736
|
await this.update(request);
|
|
@@ -2333,7 +2772,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2333
2772
|
}
|
|
2334
2773
|
assertRequestStatus(request, ...status) {
|
|
2335
2774
|
if (!status.includes(request.status)) {
|
|
2336
|
-
throw new
|
|
2775
|
+
throw new ConsumptionError_1.ConsumptionError(`Local Request has to be in status '${status.join("/")}'.`);
|
|
2337
2776
|
}
|
|
2338
2777
|
}
|
|
2339
2778
|
async updateRequestExpiry(request) {
|
|
@@ -2374,15 +2813,15 @@ let CheckPrerequisitesOfIncomingRequestParameters = class CheckPrerequisitesOfIn
|
|
|
2374
2813
|
return this.fromAny(value);
|
|
2375
2814
|
}
|
|
2376
2815
|
};
|
|
2816
|
+
exports.CheckPrerequisitesOfIncomingRequestParameters = CheckPrerequisitesOfIncomingRequestParameters;
|
|
2377
2817
|
__decorate([
|
|
2378
2818
|
(0, ts_serval_1.serialize)(),
|
|
2379
2819
|
(0, ts_serval_1.validate)(),
|
|
2380
2820
|
__metadata("design:type", transport_1.CoreId)
|
|
2381
2821
|
], CheckPrerequisitesOfIncomingRequestParameters.prototype, "requestId", void 0);
|
|
2382
|
-
CheckPrerequisitesOfIncomingRequestParameters = __decorate([
|
|
2822
|
+
exports.CheckPrerequisitesOfIncomingRequestParameters = CheckPrerequisitesOfIncomingRequestParameters = __decorate([
|
|
2383
2823
|
(0, ts_serval_1.type)("CheckPrerequisitesOfIncomingRequestParameters")
|
|
2384
2824
|
], CheckPrerequisitesOfIncomingRequestParameters);
|
|
2385
|
-
exports.CheckPrerequisitesOfIncomingRequestParameters = CheckPrerequisitesOfIncomingRequestParameters;
|
|
2386
2825
|
//# sourceMappingURL=CheckPrerequisitesOfIncomingRequestParameters.js.map
|
|
2387
2826
|
|
|
2388
2827
|
/***/ }),
|
|
@@ -2413,6 +2852,7 @@ class CompleteIncomingRequestParameters extends ts_serval_1.Serializable {
|
|
|
2413
2852
|
return this.fromAny(value);
|
|
2414
2853
|
}
|
|
2415
2854
|
}
|
|
2855
|
+
exports.CompleteIncomingRequestParameters = CompleteIncomingRequestParameters;
|
|
2416
2856
|
__decorate([
|
|
2417
2857
|
(0, ts_serval_1.serialize)(),
|
|
2418
2858
|
(0, ts_serval_1.validate)(),
|
|
@@ -2423,7 +2863,6 @@ __decorate([
|
|
|
2423
2863
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
2424
2864
|
__metadata("design:type", Object)
|
|
2425
2865
|
], CompleteIncomingRequestParameters.prototype, "responseSourceObject", void 0);
|
|
2426
|
-
exports.CompleteIncomingRequestParameters = CompleteIncomingRequestParameters;
|
|
2427
2866
|
//# sourceMappingURL=CompleteIncomingRequestParameters.js.map
|
|
2428
2867
|
|
|
2429
2868
|
/***/ }),
|
|
@@ -2516,6 +2955,7 @@ let InternalDecideRequestParameters = class InternalDecideRequestParameters exte
|
|
|
2516
2955
|
return this.fromAny(value);
|
|
2517
2956
|
}
|
|
2518
2957
|
};
|
|
2958
|
+
exports.InternalDecideRequestParameters = InternalDecideRequestParameters;
|
|
2519
2959
|
__decorate([
|
|
2520
2960
|
(0, ts_serval_1.serialize)(),
|
|
2521
2961
|
(0, ts_serval_1.validate)(),
|
|
@@ -2531,10 +2971,9 @@ __decorate([
|
|
|
2531
2971
|
(0, ts_serval_1.validate)(),
|
|
2532
2972
|
__metadata("design:type", Boolean)
|
|
2533
2973
|
], InternalDecideRequestParameters.prototype, "accept", void 0);
|
|
2534
|
-
InternalDecideRequestParameters = __decorate([
|
|
2974
|
+
exports.InternalDecideRequestParameters = InternalDecideRequestParameters = __decorate([
|
|
2535
2975
|
(0, ts_serval_1.type)("InternalDecideRequestParameters")
|
|
2536
2976
|
], InternalDecideRequestParameters);
|
|
2537
|
-
exports.InternalDecideRequestParameters = InternalDecideRequestParameters;
|
|
2538
2977
|
//# sourceMappingURL=InternalDecideRequestParameters.js.map
|
|
2539
2978
|
|
|
2540
2979
|
/***/ }),
|
|
@@ -2579,6 +3018,7 @@ let ReceivedIncomingRequestParameters = class ReceivedIncomingRequestParameters
|
|
|
2579
3018
|
return this.fromAny(value);
|
|
2580
3019
|
}
|
|
2581
3020
|
};
|
|
3021
|
+
exports.ReceivedIncomingRequestParameters = ReceivedIncomingRequestParameters;
|
|
2582
3022
|
__decorate([
|
|
2583
3023
|
(0, ts_serval_1.serialize)(),
|
|
2584
3024
|
(0, ts_serval_1.validate)(),
|
|
@@ -2589,10 +3029,9 @@ __decorate([
|
|
|
2589
3029
|
(0, ts_serval_1.validate)(),
|
|
2590
3030
|
__metadata("design:type", Object)
|
|
2591
3031
|
], ReceivedIncomingRequestParameters.prototype, "requestSourceObject", void 0);
|
|
2592
|
-
ReceivedIncomingRequestParameters = __decorate([
|
|
3032
|
+
exports.ReceivedIncomingRequestParameters = ReceivedIncomingRequestParameters = __decorate([
|
|
2593
3033
|
(0, ts_serval_1.type)("ReceivedIncomingRequestParameters")
|
|
2594
3034
|
], ReceivedIncomingRequestParameters);
|
|
2595
|
-
exports.ReceivedIncomingRequestParameters = ReceivedIncomingRequestParameters;
|
|
2596
3035
|
//# sourceMappingURL=ReceivedIncomingRequestParameters.js.map
|
|
2597
3036
|
|
|
2598
3037
|
/***/ }),
|
|
@@ -2623,12 +3062,12 @@ class RequireManualDecisionOfIncomingRequestParameters extends ts_serval_1.Seria
|
|
|
2623
3062
|
return this.fromAny(value);
|
|
2624
3063
|
}
|
|
2625
3064
|
}
|
|
3065
|
+
exports.RequireManualDecisionOfIncomingRequestParameters = RequireManualDecisionOfIncomingRequestParameters;
|
|
2626
3066
|
__decorate([
|
|
2627
3067
|
(0, ts_serval_1.serialize)(),
|
|
2628
3068
|
(0, ts_serval_1.validate)(),
|
|
2629
3069
|
__metadata("design:type", transport_1.CoreId)
|
|
2630
3070
|
], RequireManualDecisionOfIncomingRequestParameters.prototype, "requestId", void 0);
|
|
2631
|
-
exports.RequireManualDecisionOfIncomingRequestParameters = RequireManualDecisionOfIncomingRequestParameters;
|
|
2632
3071
|
//# sourceMappingURL=RequireManualDecisionOfIncomingRequestParameters.js.map
|
|
2633
3072
|
|
|
2634
3073
|
/***/ }),
|
|
@@ -2657,6 +3096,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
2657
3096
|
};
|
|
2658
3097
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2659
3098
|
__exportStar(__webpack_require__(/*! ./events */ "./dist/modules/requests/events/index.js"), exports);
|
|
3099
|
+
__exportStar(__webpack_require__(/*! ./incoming/DecideRequestParametersValidator */ "./dist/modules/requests/incoming/DecideRequestParametersValidator.js"), exports);
|
|
3100
|
+
__exportStar(__webpack_require__(/*! ./incoming/IncomingRequestsController */ "./dist/modules/requests/incoming/IncomingRequestsController.js"), exports);
|
|
2660
3101
|
__exportStar(__webpack_require__(/*! ./incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters */ "./dist/modules/requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters.js"), exports);
|
|
2661
3102
|
__exportStar(__webpack_require__(/*! ./incoming/complete/CompleteIncomingRequestParameters */ "./dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.js"), exports);
|
|
2662
3103
|
__exportStar(__webpack_require__(/*! ./incoming/decide/AcceptRequestItemParameters */ "./dist/modules/requests/incoming/decide/AcceptRequestItemParameters.js"), exports);
|
|
@@ -2664,34 +3105,32 @@ __exportStar(__webpack_require__(/*! ./incoming/decide/DecideRequestItemGroupPar
|
|
|
2664
3105
|
__exportStar(__webpack_require__(/*! ./incoming/decide/DecideRequestItemParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemParameters.js"), exports);
|
|
2665
3106
|
__exportStar(__webpack_require__(/*! ./incoming/decide/DecideRequestParameters */ "./dist/modules/requests/incoming/decide/DecideRequestParameters.js"), exports);
|
|
2666
3107
|
__exportStar(__webpack_require__(/*! ./incoming/decide/RejectRequestItemParameters */ "./dist/modules/requests/incoming/decide/RejectRequestItemParameters.js"), exports);
|
|
2667
|
-
__exportStar(__webpack_require__(/*! ./incoming/DecideRequestParametersValidator */ "./dist/modules/requests/incoming/DecideRequestParametersValidator.js"), exports);
|
|
2668
|
-
__exportStar(__webpack_require__(/*! ./incoming/IncomingRequestsController */ "./dist/modules/requests/incoming/IncomingRequestsController.js"), exports);
|
|
2669
3108
|
__exportStar(__webpack_require__(/*! ./incoming/received/ReceivedIncomingRequestParameters */ "./dist/modules/requests/incoming/received/ReceivedIncomingRequestParameters.js"), exports);
|
|
2670
3109
|
__exportStar(__webpack_require__(/*! ./incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters */ "./dist/modules/requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters.js"), exports);
|
|
2671
3110
|
__exportStar(__webpack_require__(/*! ./itemProcessors/AbstractRequestItemProcessor */ "./dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js"), exports);
|
|
3111
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js"), exports);
|
|
3112
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/IRequestItemProcessor */ "./dist/modules/requests/itemProcessors/IRequestItemProcessor.js"), exports);
|
|
3113
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/RequestItemConstructor */ "./dist/modules/requests/itemProcessors/RequestItemConstructor.js"), exports);
|
|
3114
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/RequestItemProcessorConstructor */ "./dist/modules/requests/itemProcessors/RequestItemProcessorConstructor.js"), exports);
|
|
3115
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/RequestItemProcessorRegistry */ "./dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js"), exports);
|
|
3116
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js"), exports);
|
|
2672
3117
|
__exportStar(__webpack_require__(/*! ./itemProcessors/createAttribute/CreateAttributeRequestItemProcessor */ "./dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.js"), exports);
|
|
2673
3118
|
__exportStar(__webpack_require__(/*! ./itemProcessors/freeText/AcceptFreeTextRequestItemParameters */ "./dist/modules/requests/itemProcessors/freeText/AcceptFreeTextRequestItemParameters.js"), exports);
|
|
2674
3119
|
__exportStar(__webpack_require__(/*! ./itemProcessors/freeText/FreeTextRequestItemProcessor */ "./dist/modules/requests/itemProcessors/freeText/FreeTextRequestItemProcessor.js"), exports);
|
|
2675
|
-
__exportStar(__webpack_require__(/*! ./itemProcessors/GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js"), exports);
|
|
2676
|
-
__exportStar(__webpack_require__(/*! ./itemProcessors/IRequestItemProcessor */ "./dist/modules/requests/itemProcessors/IRequestItemProcessor.js"), exports);
|
|
2677
|
-
__exportStar(__webpack_require__(/*! ./itemProcessors/ProcessorConstructor */ "./dist/modules/requests/itemProcessors/ProcessorConstructor.js"), exports);
|
|
2678
3120
|
__exportStar(__webpack_require__(/*! ./itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters */ "./dist/modules/requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters.js"), exports);
|
|
2679
3121
|
__exportStar(__webpack_require__(/*! ./itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor */ "./dist/modules/requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor.js"), exports);
|
|
2680
3122
|
__exportStar(__webpack_require__(/*! ./itemProcessors/readAttribute/ReadAttributeRequestItemProcessor */ "./dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js"), exports);
|
|
2681
3123
|
__exportStar(__webpack_require__(/*! ./itemProcessors/registerAttributeListener/RegisterAttributeListenerRequestItemProcessor */ "./dist/modules/requests/itemProcessors/registerAttributeListener/RegisterAttributeListenerRequestItemProcessor.js"), exports);
|
|
2682
|
-
__exportStar(__webpack_require__(/*! ./itemProcessors/RequestItemConstructor */ "./dist/modules/requests/itemProcessors/RequestItemConstructor.js"), exports);
|
|
2683
|
-
__exportStar(__webpack_require__(/*! ./itemProcessors/RequestItemProcessorRegistry */ "./dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js"), exports);
|
|
2684
3124
|
__exportStar(__webpack_require__(/*! ./itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor */ "./dist/modules/requests/itemProcessors/shareAttribute/ShareAttributeRequestItemProcessor.js"), exports);
|
|
2685
|
-
__exportStar(__webpack_require__(/*! ./itemProcessors/ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js"), exports);
|
|
2686
3125
|
__exportStar(__webpack_require__(/*! ./local/LocalRequest */ "./dist/modules/requests/local/LocalRequest.js"), exports);
|
|
2687
3126
|
__exportStar(__webpack_require__(/*! ./local/LocalRequestStatus */ "./dist/modules/requests/local/LocalRequestStatus.js"), exports);
|
|
2688
3127
|
__exportStar(__webpack_require__(/*! ./local/LocalRequestStatusLogEntry */ "./dist/modules/requests/local/LocalRequestStatusLogEntry.js"), exports);
|
|
2689
3128
|
__exportStar(__webpack_require__(/*! ./local/LocalResponse */ "./dist/modules/requests/local/LocalResponse.js"), exports);
|
|
3129
|
+
__exportStar(__webpack_require__(/*! ./outgoing/OutgoingRequestsController */ "./dist/modules/requests/outgoing/OutgoingRequestsController.js"), exports);
|
|
2690
3130
|
__exportStar(__webpack_require__(/*! ./outgoing/completeOutgoingRequest/CompleteOutgoingRequestParameters */ "./dist/modules/requests/outgoing/completeOutgoingRequest/CompleteOutgoingRequestParameters.js"), exports);
|
|
2691
3131
|
__exportStar(__webpack_require__(/*! ./outgoing/createAndCompleteFromRelationshipTemplateResponse/CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters */ "./dist/modules/requests/outgoing/createAndCompleteFromRelationshipTemplateResponse/CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters.js"), exports);
|
|
2692
3132
|
__exportStar(__webpack_require__(/*! ./outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters */ "./dist/modules/requests/outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters.js"), exports);
|
|
2693
3133
|
__exportStar(__webpack_require__(/*! ./outgoing/createOutgoingRequest/CreateOutgoingRequestParameters */ "./dist/modules/requests/outgoing/createOutgoingRequest/CreateOutgoingRequestParameters.js"), exports);
|
|
2694
|
-
__exportStar(__webpack_require__(/*! ./outgoing/OutgoingRequestsController */ "./dist/modules/requests/outgoing/OutgoingRequestsController.js"), exports);
|
|
2695
3134
|
__exportStar(__webpack_require__(/*! ./outgoing/sentOutgoingRequest/SentOutgoingRequestParameters */ "./dist/modules/requests/outgoing/sentOutgoingRequest/SentOutgoingRequestParameters.js"), exports);
|
|
2696
3135
|
//# sourceMappingURL=index.js.map
|
|
2697
3136
|
|
|
@@ -2777,29 +3216,29 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
2777
3216
|
|
|
2778
3217
|
/***/ }),
|
|
2779
3218
|
|
|
2780
|
-
/***/ "./dist/modules/requests/itemProcessors/
|
|
2781
|
-
|
|
2782
|
-
!*** ./dist/modules/requests/itemProcessors/
|
|
2783
|
-
|
|
3219
|
+
/***/ "./dist/modules/requests/itemProcessors/RequestItemConstructor.js":
|
|
3220
|
+
/*!************************************************************************!*\
|
|
3221
|
+
!*** ./dist/modules/requests/itemProcessors/RequestItemConstructor.js ***!
|
|
3222
|
+
\************************************************************************/
|
|
2784
3223
|
/***/ ((__unused_webpack_module, exports) => {
|
|
2785
3224
|
|
|
2786
3225
|
"use strict";
|
|
2787
3226
|
|
|
2788
3227
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2789
|
-
//# sourceMappingURL=
|
|
3228
|
+
//# sourceMappingURL=RequestItemConstructor.js.map
|
|
2790
3229
|
|
|
2791
3230
|
/***/ }),
|
|
2792
3231
|
|
|
2793
|
-
/***/ "./dist/modules/requests/itemProcessors/
|
|
2794
|
-
|
|
2795
|
-
!*** ./dist/modules/requests/itemProcessors/
|
|
2796
|
-
|
|
3232
|
+
/***/ "./dist/modules/requests/itemProcessors/RequestItemProcessorConstructor.js":
|
|
3233
|
+
/*!*********************************************************************************!*\
|
|
3234
|
+
!*** ./dist/modules/requests/itemProcessors/RequestItemProcessorConstructor.js ***!
|
|
3235
|
+
\*********************************************************************************/
|
|
2797
3236
|
/***/ ((__unused_webpack_module, exports) => {
|
|
2798
3237
|
|
|
2799
3238
|
"use strict";
|
|
2800
3239
|
|
|
2801
3240
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2802
|
-
//# sourceMappingURL=
|
|
3241
|
+
//# sourceMappingURL=RequestItemProcessorConstructor.js.map
|
|
2803
3242
|
|
|
2804
3243
|
/***/ }),
|
|
2805
3244
|
|
|
@@ -2813,7 +3252,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
2813
3252
|
|
|
2814
3253
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2815
3254
|
exports.RequestItemProcessorRegistry = void 0;
|
|
2816
|
-
const
|
|
3255
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
2817
3256
|
class RequestItemProcessorRegistry {
|
|
2818
3257
|
constructor(consumptionController, processors = new Map()) {
|
|
2819
3258
|
this.consumptionController = consumptionController;
|
|
@@ -2821,7 +3260,7 @@ class RequestItemProcessorRegistry {
|
|
|
2821
3260
|
}
|
|
2822
3261
|
registerProcessor(itemConstructor, processorConstructor) {
|
|
2823
3262
|
if (this.processors.has(itemConstructor)) {
|
|
2824
|
-
throw new
|
|
3263
|
+
throw new ConsumptionError_1.ConsumptionError(`There is already a processor registered for '${itemConstructor.name}'. Use 'replaceProcessorForType' if you want to replace it.`);
|
|
2825
3264
|
}
|
|
2826
3265
|
this.processors.set(itemConstructor, processorConstructor);
|
|
2827
3266
|
}
|
|
@@ -2831,7 +3270,7 @@ class RequestItemProcessorRegistry {
|
|
|
2831
3270
|
getProcessorForItem(item) {
|
|
2832
3271
|
const constructor = this.processors.get(item.constructor);
|
|
2833
3272
|
if (!constructor) {
|
|
2834
|
-
throw new
|
|
3273
|
+
throw new ConsumptionError_1.ConsumptionError(`There was no processor registered for '${item.constructor.name}'.`);
|
|
2835
3274
|
}
|
|
2836
3275
|
return new constructor(this.consumptionController);
|
|
2837
3276
|
}
|
|
@@ -2903,7 +3342,7 @@ exports.ErrorValidationResult = ErrorValidationResult;
|
|
|
2903
3342
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2904
3343
|
exports.CreateAttributeRequestItemProcessor = void 0;
|
|
2905
3344
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
2906
|
-
const
|
|
3345
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
2907
3346
|
const GenericRequestItemProcessor_1 = __webpack_require__(/*! ../GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js");
|
|
2908
3347
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
2909
3348
|
class CreateAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
@@ -2913,17 +3352,17 @@ class CreateAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.
|
|
|
2913
3352
|
const ownerIsEmptyString = requestItem.attribute.owner.toString() === "";
|
|
2914
3353
|
if (requestItem.attribute instanceof content_1.IdentityAttribute) {
|
|
2915
3354
|
if (senderIsAttributeOwner) {
|
|
2916
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3355
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("Cannot create own Attributes with a CreateAttributeRequestItem. Use a ShareAttributeRequestItem instead."));
|
|
2917
3356
|
}
|
|
2918
3357
|
if (recipientIsAttributeOwner || ownerIsEmptyString || recipient === undefined) {
|
|
2919
3358
|
return ValidationResult_1.ValidationResult.success();
|
|
2920
3359
|
}
|
|
2921
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3360
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("The owner of the given `attribute` can only be the recipient's address or an empty string. The latter will default to the recipient's address."));
|
|
2922
3361
|
}
|
|
2923
3362
|
if (recipientIsAttributeOwner || senderIsAttributeOwner || ownerIsEmptyString || recipient === undefined) {
|
|
2924
3363
|
return ValidationResult_1.ValidationResult.success();
|
|
2925
3364
|
}
|
|
2926
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3365
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("The owner of the given 'attribute' can only be the sender's address, the recipient's address or an empty string. The latter will default to the recipient's address."));
|
|
2927
3366
|
}
|
|
2928
3367
|
async accept(requestItem, _params, requestInfo) {
|
|
2929
3368
|
if (requestItem.attribute.owner.toString() === "") {
|
|
@@ -2997,15 +3436,15 @@ let AcceptFreeTextRequestItemParameters = class AcceptFreeTextRequestItemParamet
|
|
|
2997
3436
|
return this.fromAny(value);
|
|
2998
3437
|
}
|
|
2999
3438
|
};
|
|
3439
|
+
exports.AcceptFreeTextRequestItemParameters = AcceptFreeTextRequestItemParameters;
|
|
3000
3440
|
__decorate([
|
|
3001
3441
|
(0, ts_serval_1.serialize)(),
|
|
3002
3442
|
(0, ts_serval_1.validate)(),
|
|
3003
3443
|
__metadata("design:type", String)
|
|
3004
3444
|
], AcceptFreeTextRequestItemParameters.prototype, "freeText", void 0);
|
|
3005
|
-
AcceptFreeTextRequestItemParameters = __decorate([
|
|
3445
|
+
exports.AcceptFreeTextRequestItemParameters = AcceptFreeTextRequestItemParameters = __decorate([
|
|
3006
3446
|
(0, ts_serval_1.type)("FreeTextRequestItemParameters")
|
|
3007
3447
|
], AcceptFreeTextRequestItemParameters);
|
|
3008
|
-
exports.AcceptFreeTextRequestItemParameters = AcceptFreeTextRequestItemParameters;
|
|
3009
3448
|
//# sourceMappingURL=AcceptFreeTextRequestItemParameters.js.map
|
|
3010
3449
|
|
|
3011
3450
|
/***/ }),
|
|
@@ -3024,7 +3463,7 @@ const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-s
|
|
|
3024
3463
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3025
3464
|
const GenericRequestItemProcessor_1 = __webpack_require__(/*! ../GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js");
|
|
3026
3465
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3027
|
-
const
|
|
3466
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
3028
3467
|
const AcceptFreeTextRequestItemParameters_1 = __webpack_require__(/*! ./AcceptFreeTextRequestItemParameters */ "./dist/modules/requests/itemProcessors/freeText/AcceptFreeTextRequestItemParameters.js");
|
|
3029
3468
|
class FreeTextRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
3030
3469
|
canAccept(_requestItem, params) {
|
|
@@ -3034,7 +3473,7 @@ class FreeTextRequestItemProcessor extends GenericRequestItemProcessor_1.Generic
|
|
|
3034
3473
|
catch (error) {
|
|
3035
3474
|
if (!(error instanceof ts_serval_1.ParsingError))
|
|
3036
3475
|
throw error;
|
|
3037
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3476
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidAcceptParameters());
|
|
3038
3477
|
}
|
|
3039
3478
|
return ValidationResult_1.ValidationResult.success();
|
|
3040
3479
|
}
|
|
@@ -3075,7 +3514,7 @@ const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-s
|
|
|
3075
3514
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3076
3515
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3077
3516
|
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
3078
|
-
const
|
|
3517
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
3079
3518
|
let AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters_1 = class AcceptProposeAttributeRequestItemParameters extends ts_serval_1.Serializable {
|
|
3080
3519
|
isWithExistingAttribute() {
|
|
3081
3520
|
return this.attributeId !== undefined;
|
|
@@ -3088,7 +3527,7 @@ let AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestI
|
|
|
3088
3527
|
}
|
|
3089
3528
|
static postFrom(value) {
|
|
3090
3529
|
if (!(value instanceof AcceptProposeAttributeRequestItemParameters_1)) {
|
|
3091
|
-
throw new
|
|
3530
|
+
throw new ConsumptionError_1.ConsumptionError("this should never happen");
|
|
3092
3531
|
}
|
|
3093
3532
|
if (value.attributeId && value.attribute) {
|
|
3094
3533
|
throw new ts_serval_1.ValidationError(AcceptProposeAttributeRequestItemParameters_1.name, (0, ts_simple_nameof_1.nameof)((x) => x.attribute), `You cannot specify both ${(0, ts_simple_nameof_1.nameof)((x) => x.attribute)} and ${(0, ts_simple_nameof_1.nameof)((x) => x.attributeId)}.`);
|
|
@@ -3099,6 +3538,7 @@ let AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestI
|
|
|
3099
3538
|
return value;
|
|
3100
3539
|
}
|
|
3101
3540
|
};
|
|
3541
|
+
exports.AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters;
|
|
3102
3542
|
__decorate([
|
|
3103
3543
|
(0, ts_serval_1.serialize)(),
|
|
3104
3544
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
@@ -3109,10 +3549,9 @@ __decorate([
|
|
|
3109
3549
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
3110
3550
|
__metadata("design:type", Object)
|
|
3111
3551
|
], AcceptProposeAttributeRequestItemParameters.prototype, "attribute", void 0);
|
|
3112
|
-
AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters_1 = __decorate([
|
|
3552
|
+
exports.AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters_1 = __decorate([
|
|
3113
3553
|
(0, ts_serval_1.type)("AcceptProposeAttributeRequestItemParameters")
|
|
3114
3554
|
], AcceptProposeAttributeRequestItemParameters);
|
|
3115
|
-
exports.AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters;
|
|
3116
3555
|
//# sourceMappingURL=AcceptProposeAttributeRequestItemParameters.js.map
|
|
3117
3556
|
|
|
3118
3557
|
/***/ }),
|
|
@@ -3132,11 +3571,11 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
3132
3571
|
exports.ProposeAttributeRequestItemProcessor = void 0;
|
|
3133
3572
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3134
3573
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3135
|
-
const
|
|
3574
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
3136
3575
|
const LocalAttribute_1 = __webpack_require__(/*! ../../../attributes/local/LocalAttribute */ "./dist/modules/attributes/local/LocalAttribute.js");
|
|
3137
3576
|
const GenericRequestItemProcessor_1 = __webpack_require__(/*! ../GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js");
|
|
3138
|
-
const validateQuery_1 = __importDefault(__webpack_require__(/*! ../utility/validateQuery */ "./dist/modules/requests/itemProcessors/utility/validateQuery.js"));
|
|
3139
3577
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3578
|
+
const validateQuery_1 = __importDefault(__webpack_require__(/*! ../utility/validateQuery */ "./dist/modules/requests/itemProcessors/utility/validateQuery.js"));
|
|
3140
3579
|
const AcceptProposeAttributeRequestItemParameters_1 = __webpack_require__(/*! ./AcceptProposeAttributeRequestItemParameters */ "./dist/modules/requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters.js");
|
|
3141
3580
|
class ProposeAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
3142
3581
|
canCreateOutgoingRequestItem(requestItem, _request, recipient) {
|
|
@@ -3152,7 +3591,7 @@ class ProposeAttributeRequestItemProcessor extends GenericRequestItemProcessor_1
|
|
|
3152
3591
|
}
|
|
3153
3592
|
validateAttribute(attribute) {
|
|
3154
3593
|
if (attribute.owner.toString() !== "") {
|
|
3155
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3594
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("The owner of the given `attribute` can only be an empty string. This is because you can only propose Attributes where the recipient of the Request is the owner anyway. And in order to avoid mistakes, the owner will be automatically filled for you."));
|
|
3156
3595
|
}
|
|
3157
3596
|
return ValidationResult_1.ValidationResult.success();
|
|
3158
3597
|
}
|
|
@@ -3162,7 +3601,7 @@ class ProposeAttributeRequestItemProcessor extends GenericRequestItemProcessor_1
|
|
|
3162
3601
|
return commonQueryValidationResult;
|
|
3163
3602
|
}
|
|
3164
3603
|
if (requestItem.query instanceof content_1.RelationshipAttributeQuery && requestItem.query.owner.toString() !== "") {
|
|
3165
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3604
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("The owner of the given `query` can only be an empty string. This is because you can only propose Attributes where the recipient of the Request is the owner anyway. And in order to avoid mistakes, the owner will be automatically filled for you."));
|
|
3166
3605
|
}
|
|
3167
3606
|
return ValidationResult_1.ValidationResult.success();
|
|
3168
3607
|
}
|
|
@@ -3179,7 +3618,7 @@ class ProposeAttributeRequestItemProcessor extends GenericRequestItemProcessor_1
|
|
|
3179
3618
|
const ownerIsEmpty = attribute.owner.equals("");
|
|
3180
3619
|
const ownerIsCurrentIdentity = attribute.owner.equals(this.currentIdentityAddress);
|
|
3181
3620
|
if (!ownerIsEmpty && !ownerIsCurrentIdentity) {
|
|
3182
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3621
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("The given Attribute belongs to someone else. You can only share own Attributes."));
|
|
3183
3622
|
}
|
|
3184
3623
|
return ValidationResult_1.ValidationResult.success();
|
|
3185
3624
|
}
|
|
@@ -3263,7 +3702,7 @@ const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-s
|
|
|
3263
3702
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3264
3703
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3265
3704
|
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
3266
|
-
const
|
|
3705
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
3267
3706
|
let AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters_1 = class AcceptReadAttributeRequestItemParameters extends ts_serval_1.Serializable {
|
|
3268
3707
|
isWithExistingAttribute() {
|
|
3269
3708
|
return this.existingAttributeId !== undefined;
|
|
@@ -3276,7 +3715,7 @@ let AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemPar
|
|
|
3276
3715
|
}
|
|
3277
3716
|
static postFrom(value) {
|
|
3278
3717
|
if (!(value instanceof AcceptReadAttributeRequestItemParameters_1)) {
|
|
3279
|
-
throw new
|
|
3718
|
+
throw new ConsumptionError_1.ConsumptionError("this should never happen");
|
|
3280
3719
|
}
|
|
3281
3720
|
if (value.existingAttributeId && value.newAttribute) {
|
|
3282
3721
|
throw new ts_serval_1.ValidationError(AcceptReadAttributeRequestItemParameters_1.name, (0, ts_simple_nameof_1.nameof)((x) => x.newAttribute), `You cannot specify both ${(0, ts_simple_nameof_1.nameof)((x) => x.newAttribute)} and ${(0, ts_simple_nameof_1.nameof)((x) => x.existingAttributeId)}.`);
|
|
@@ -3287,6 +3726,7 @@ let AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemPar
|
|
|
3287
3726
|
return value;
|
|
3288
3727
|
}
|
|
3289
3728
|
};
|
|
3729
|
+
exports.AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters;
|
|
3290
3730
|
__decorate([
|
|
3291
3731
|
(0, ts_serval_1.serialize)(),
|
|
3292
3732
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
@@ -3297,10 +3737,9 @@ __decorate([
|
|
|
3297
3737
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
3298
3738
|
__metadata("design:type", Object)
|
|
3299
3739
|
], AcceptReadAttributeRequestItemParameters.prototype, "newAttribute", void 0);
|
|
3300
|
-
AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters_1 = __decorate([
|
|
3740
|
+
exports.AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters_1 = __decorate([
|
|
3301
3741
|
(0, ts_serval_1.type)("AcceptReadAttributeRequestItemParameters")
|
|
3302
3742
|
], AcceptReadAttributeRequestItemParameters);
|
|
3303
|
-
exports.AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters;
|
|
3304
3743
|
//# sourceMappingURL=AcceptReadAttributeRequestItemParameters.js.map
|
|
3305
3744
|
|
|
3306
3745
|
/***/ }),
|
|
@@ -3320,11 +3759,11 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
3320
3759
|
exports.ReadAttributeRequestItemProcessor = void 0;
|
|
3321
3760
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3322
3761
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3323
|
-
const
|
|
3762
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
3324
3763
|
const LocalAttribute_1 = __webpack_require__(/*! ../../../attributes/local/LocalAttribute */ "./dist/modules/attributes/local/LocalAttribute.js");
|
|
3325
3764
|
const GenericRequestItemProcessor_1 = __webpack_require__(/*! ../GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js");
|
|
3326
|
-
const validateQuery_1 = __importDefault(__webpack_require__(/*! ../utility/validateQuery */ "./dist/modules/requests/itemProcessors/utility/validateQuery.js"));
|
|
3327
3765
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3766
|
+
const validateQuery_1 = __importDefault(__webpack_require__(/*! ../utility/validateQuery */ "./dist/modules/requests/itemProcessors/utility/validateQuery.js"));
|
|
3328
3767
|
const AcceptReadAttributeRequestItemParameters_1 = __webpack_require__(/*! ./AcceptReadAttributeRequestItemParameters */ "./dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js");
|
|
3329
3768
|
class ReadAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
3330
3769
|
canCreateOutgoingRequestItem(requestItem, _request, recipient) {
|
|
@@ -3343,7 +3782,7 @@ class ReadAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.Ge
|
|
|
3343
3782
|
}
|
|
3344
3783
|
const ownerIsCurrentIdentity = this.accountController.identity.isMe(foundAttribute.content.owner);
|
|
3345
3784
|
if (!ownerIsCurrentIdentity && foundAttribute.content instanceof content_1.IdentityAttribute) {
|
|
3346
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3785
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("The given Attribute belongs to someone else. You can only share own Attributes."));
|
|
3347
3786
|
}
|
|
3348
3787
|
}
|
|
3349
3788
|
return ValidationResult_1.ValidationResult.success();
|
|
@@ -3448,21 +3887,21 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
3448
3887
|
exports.ShareAttributeRequestItemProcessor = void 0;
|
|
3449
3888
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3450
3889
|
const lodash_1 = __importDefault(__webpack_require__(/*! lodash */ "./node_modules/lodash/lodash.js"));
|
|
3451
|
-
const
|
|
3890
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
3452
3891
|
const GenericRequestItemProcessor_1 = __webpack_require__(/*! ../GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js");
|
|
3453
3892
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3454
3893
|
class ShareAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
3455
3894
|
async canCreateOutgoingRequestItem(requestItem, _request, recipient) {
|
|
3456
3895
|
const attribute = await this.consumptionController.attributes.getLocalAttribute(requestItem.sourceAttributeId);
|
|
3457
3896
|
if (!attribute) {
|
|
3458
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3897
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem(`The Attribute with the given sourceAttributeId '${requestItem.sourceAttributeId.toString()}' could not be found.`));
|
|
3459
3898
|
}
|
|
3460
3899
|
const requestItemAttributeJSON = requestItem.attribute.toJSON();
|
|
3461
3900
|
if (requestItemAttributeJSON.owner === "") {
|
|
3462
3901
|
requestItemAttributeJSON.owner = this.currentIdentityAddress.toString();
|
|
3463
3902
|
}
|
|
3464
3903
|
if (!lodash_1.default.isEqual(attribute.content.toJSON(), requestItemAttributeJSON)) {
|
|
3465
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3904
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem(`The Attribute with the given sourceAttributeId '${requestItem.sourceAttributeId.toString()}' does not match the given attribute.`));
|
|
3466
3905
|
}
|
|
3467
3906
|
if (requestItem.attribute instanceof content_1.IdentityAttribute) {
|
|
3468
3907
|
return this.canCreateWithIdentityAttribute(requestItem);
|
|
@@ -3473,16 +3912,16 @@ class ShareAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.G
|
|
|
3473
3912
|
const ownerIsEmpty = requestItem.attribute.owner.toString() === "";
|
|
3474
3913
|
const ownerIsCurrentIdentity = requestItem.attribute.owner.equals(this.currentIdentityAddress);
|
|
3475
3914
|
if (!ownerIsEmpty && !ownerIsCurrentIdentity) {
|
|
3476
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3915
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("The owner of the given `attribute` can only be an empty string. This is because you can only send Attributes where the recipient of the Request is the owner anyway. And in order to avoid mistakes, the owner will be automatically filled for you."));
|
|
3477
3916
|
}
|
|
3478
3917
|
return ValidationResult_1.ValidationResult.success();
|
|
3479
3918
|
}
|
|
3480
3919
|
canCreateWithRelationshipAttribute(attribute, recipient) {
|
|
3481
3920
|
if (attribute.confidentiality === content_1.RelationshipAttributeConfidentiality.Private) {
|
|
3482
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3921
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("The confidentiality of the given `attribute` is private. Therefore you are not allowed to share it."));
|
|
3483
3922
|
}
|
|
3484
3923
|
if (attribute.owner.equals(recipient)) {
|
|
3485
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3924
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("It doesn't make sense to share a RelationshipAttribute with its owner."));
|
|
3486
3925
|
}
|
|
3487
3926
|
return ValidationResult_1.ValidationResult.success();
|
|
3488
3927
|
}
|
|
@@ -3528,7 +3967,7 @@ exports.ShareAttributeRequestItemProcessor = ShareAttributeRequestItemProcessor;
|
|
|
3528
3967
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
3529
3968
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3530
3969
|
const iql_1 = __webpack_require__(/*! @nmshd/iql */ "./node_modules/@nmshd/iql/dist/src/index.js");
|
|
3531
|
-
const
|
|
3970
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
3532
3971
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3533
3972
|
function validateQuery(query, sender, recipient) {
|
|
3534
3973
|
if (query instanceof content_1.ThirdPartyRelationshipAttributeQuery) {
|
|
@@ -3538,13 +3977,13 @@ function validateQuery(query, sender, recipient) {
|
|
|
3538
3977
|
return result;
|
|
3539
3978
|
}
|
|
3540
3979
|
if (query.owner.equals(sender)) {
|
|
3541
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3980
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("Cannot query own Attributes from a third party."));
|
|
3542
3981
|
}
|
|
3543
3982
|
}
|
|
3544
3983
|
else if (query instanceof content_1.IQLQuery) {
|
|
3545
3984
|
const validationResult = (0, iql_1.validate)(query.queryString);
|
|
3546
3985
|
if (!validationResult.isValid) {
|
|
3547
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3986
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem(`IQL query syntax error at character ${validationResult.error.location.start.column}`));
|
|
3548
3987
|
}
|
|
3549
3988
|
}
|
|
3550
3989
|
return ValidationResult_1.ValidationResult.success();
|
|
@@ -3552,10 +3991,10 @@ function validateQuery(query, sender, recipient) {
|
|
|
3552
3991
|
exports["default"] = validateQuery;
|
|
3553
3992
|
function validateThirdParty(thirdParty, sender, recipient) {
|
|
3554
3993
|
if (thirdParty.equals(sender)) {
|
|
3555
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3994
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("Cannot query an Attribute with the own address as third party."));
|
|
3556
3995
|
}
|
|
3557
3996
|
if (thirdParty.equals(recipient)) {
|
|
3558
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3997
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("Cannot query an Attribute with the recipient's address as third party."));
|
|
3559
3998
|
}
|
|
3560
3999
|
return ValidationResult_1.ValidationResult.success();
|
|
3561
4000
|
}
|
|
@@ -3586,7 +4025,7 @@ const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-s
|
|
|
3586
4025
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3587
4026
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3588
4027
|
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
3589
|
-
const
|
|
4028
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
3590
4029
|
const LocalRequestStatus_1 = __webpack_require__(/*! ./LocalRequestStatus */ "./dist/modules/requests/local/LocalRequestStatus.js");
|
|
3591
4030
|
const LocalRequestStatusLogEntry_1 = __webpack_require__(/*! ./LocalRequestStatusLogEntry */ "./dist/modules/requests/local/LocalRequestStatusLogEntry.js");
|
|
3592
4031
|
const LocalResponse_1 = __webpack_require__(/*! ./LocalResponse */ "./dist/modules/requests/local/LocalResponse.js");
|
|
@@ -3595,6 +4034,7 @@ let LocalRequestSource = class LocalRequestSource extends transport_1.CoreSerial
|
|
|
3595
4034
|
return this.fromAny(value);
|
|
3596
4035
|
}
|
|
3597
4036
|
};
|
|
4037
|
+
exports.LocalRequestSource = LocalRequestSource;
|
|
3598
4038
|
__decorate([
|
|
3599
4039
|
(0, ts_serval_1.serialize)(),
|
|
3600
4040
|
(0, ts_serval_1.validate)(),
|
|
@@ -3605,10 +4045,9 @@ __decorate([
|
|
|
3605
4045
|
(0, ts_serval_1.validate)(),
|
|
3606
4046
|
__metadata("design:type", transport_1.CoreId)
|
|
3607
4047
|
], LocalRequestSource.prototype, "reference", void 0);
|
|
3608
|
-
LocalRequestSource = __decorate([
|
|
4048
|
+
exports.LocalRequestSource = LocalRequestSource = __decorate([
|
|
3609
4049
|
(0, ts_serval_1.type)("LocalRequestSource")
|
|
3610
4050
|
], LocalRequestSource);
|
|
3611
|
-
exports.LocalRequestSource = LocalRequestSource;
|
|
3612
4051
|
let LocalRequest = class LocalRequest extends transport_1.CoreSynchronizable {
|
|
3613
4052
|
constructor() {
|
|
3614
4053
|
super(...arguments);
|
|
@@ -3629,7 +4068,7 @@ let LocalRequest = class LocalRequest extends transport_1.CoreSynchronizable {
|
|
|
3629
4068
|
}
|
|
3630
4069
|
changeStatus(newStatus) {
|
|
3631
4070
|
if (this.status === newStatus)
|
|
3632
|
-
throw new
|
|
4071
|
+
throw new ConsumptionError_1.ConsumptionError("cannot change status to the same status");
|
|
3633
4072
|
const logEntry = LocalRequestStatusLogEntry_1.LocalRequestStatusLogEntry.from({
|
|
3634
4073
|
createdAt: transport_1.CoreDate.utc(),
|
|
3635
4074
|
oldStatus: this.status,
|
|
@@ -3640,7 +4079,7 @@ let LocalRequest = class LocalRequest extends transport_1.CoreSynchronizable {
|
|
|
3640
4079
|
}
|
|
3641
4080
|
sent(source) {
|
|
3642
4081
|
if (this.status !== LocalRequestStatus_1.LocalRequestStatus.Draft) {
|
|
3643
|
-
throw new
|
|
4082
|
+
throw new ConsumptionError_1.ConsumptionError("Local Request has to be in status 'Draft'.");
|
|
3644
4083
|
}
|
|
3645
4084
|
this.source = source;
|
|
3646
4085
|
this.changeStatus(LocalRequestStatus_1.LocalRequestStatus.Open);
|
|
@@ -3663,6 +4102,7 @@ let LocalRequest = class LocalRequest extends transport_1.CoreSynchronizable {
|
|
|
3663
4102
|
return false;
|
|
3664
4103
|
}
|
|
3665
4104
|
};
|
|
4105
|
+
exports.LocalRequest = LocalRequest;
|
|
3666
4106
|
__decorate([
|
|
3667
4107
|
(0, ts_serval_1.serialize)(),
|
|
3668
4108
|
(0, ts_serval_1.validate)(),
|
|
@@ -3703,10 +4143,9 @@ __decorate([
|
|
|
3703
4143
|
(0, ts_serval_1.validate)(),
|
|
3704
4144
|
__metadata("design:type", Array)
|
|
3705
4145
|
], LocalRequest.prototype, "statusLog", void 0);
|
|
3706
|
-
LocalRequest = __decorate([
|
|
4146
|
+
exports.LocalRequest = LocalRequest = __decorate([
|
|
3707
4147
|
(0, ts_serval_1.type)("LocalRequest")
|
|
3708
4148
|
], LocalRequest);
|
|
3709
|
-
exports.LocalRequest = LocalRequest;
|
|
3710
4149
|
//# sourceMappingURL=LocalRequest.js.map
|
|
3711
4150
|
|
|
3712
4151
|
/***/ }),
|
|
@@ -3730,7 +4169,7 @@ var LocalRequestStatus;
|
|
|
3730
4169
|
LocalRequestStatus["Decided"] = "Decided";
|
|
3731
4170
|
LocalRequestStatus["Completed"] = "Completed";
|
|
3732
4171
|
LocalRequestStatus["Expired"] = "Expired";
|
|
3733
|
-
})(LocalRequestStatus
|
|
4172
|
+
})(LocalRequestStatus || (exports.LocalRequestStatus = LocalRequestStatus = {}));
|
|
3734
4173
|
//# sourceMappingURL=LocalRequestStatus.js.map
|
|
3735
4174
|
|
|
3736
4175
|
/***/ }),
|
|
@@ -3762,6 +4201,7 @@ let LocalRequestStatusLogEntry = class LocalRequestStatusLogEntry extends transp
|
|
|
3762
4201
|
return this.fromAny(value);
|
|
3763
4202
|
}
|
|
3764
4203
|
};
|
|
4204
|
+
exports.LocalRequestStatusLogEntry = LocalRequestStatusLogEntry;
|
|
3765
4205
|
__decorate([
|
|
3766
4206
|
(0, ts_serval_1.serialize)(),
|
|
3767
4207
|
(0, ts_serval_1.validate)(),
|
|
@@ -3787,10 +4227,9 @@ __decorate([
|
|
|
3787
4227
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
3788
4228
|
__metadata("design:type", String)
|
|
3789
4229
|
], LocalRequestStatusLogEntry.prototype, "code", void 0);
|
|
3790
|
-
LocalRequestStatusLogEntry = __decorate([
|
|
4230
|
+
exports.LocalRequestStatusLogEntry = LocalRequestStatusLogEntry = __decorate([
|
|
3791
4231
|
(0, ts_serval_1.type)("LocalRequestStatusLogEntry")
|
|
3792
4232
|
], LocalRequestStatusLogEntry);
|
|
3793
|
-
exports.LocalRequestStatusLogEntry = LocalRequestStatusLogEntry;
|
|
3794
4233
|
//# sourceMappingURL=LocalRequestStatusLogEntry.js.map
|
|
3795
4234
|
|
|
3796
4235
|
/***/ }),
|
|
@@ -3822,6 +4261,7 @@ let LocalResponseSource = class LocalResponseSource extends transport_1.CoreSeri
|
|
|
3822
4261
|
return this.fromAny(value);
|
|
3823
4262
|
}
|
|
3824
4263
|
};
|
|
4264
|
+
exports.LocalResponseSource = LocalResponseSource;
|
|
3825
4265
|
__decorate([
|
|
3826
4266
|
(0, ts_serval_1.serialize)(),
|
|
3827
4267
|
(0, ts_serval_1.validate)(),
|
|
@@ -3832,15 +4272,15 @@ __decorate([
|
|
|
3832
4272
|
(0, ts_serval_1.validate)(),
|
|
3833
4273
|
__metadata("design:type", transport_1.CoreId)
|
|
3834
4274
|
], LocalResponseSource.prototype, "reference", void 0);
|
|
3835
|
-
LocalResponseSource = __decorate([
|
|
4275
|
+
exports.LocalResponseSource = LocalResponseSource = __decorate([
|
|
3836
4276
|
(0, ts_serval_1.type)("LocalResponseSource")
|
|
3837
4277
|
], LocalResponseSource);
|
|
3838
|
-
exports.LocalResponseSource = LocalResponseSource;
|
|
3839
4278
|
let LocalResponse = class LocalResponse extends transport_1.CoreSerializable {
|
|
3840
4279
|
static from(value) {
|
|
3841
4280
|
return this.fromAny(value);
|
|
3842
4281
|
}
|
|
3843
4282
|
};
|
|
4283
|
+
exports.LocalResponse = LocalResponse;
|
|
3844
4284
|
__decorate([
|
|
3845
4285
|
(0, ts_serval_1.serialize)(),
|
|
3846
4286
|
(0, ts_serval_1.validate)(),
|
|
@@ -3856,10 +4296,9 @@ __decorate([
|
|
|
3856
4296
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
3857
4297
|
__metadata("design:type", LocalResponseSource)
|
|
3858
4298
|
], LocalResponse.prototype, "source", void 0);
|
|
3859
|
-
LocalResponse = __decorate([
|
|
4299
|
+
exports.LocalResponse = LocalResponse = __decorate([
|
|
3860
4300
|
(0, ts_serval_1.type)("LocalResponse")
|
|
3861
4301
|
], LocalResponse);
|
|
3862
|
-
exports.LocalResponse = LocalResponse;
|
|
3863
4302
|
//# sourceMappingURL=LocalResponse.js.map
|
|
3864
4303
|
|
|
3865
4304
|
/***/ }),
|
|
@@ -3876,7 +4315,10 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
3876
4315
|
exports.OutgoingRequestsController = void 0;
|
|
3877
4316
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3878
4317
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3879
|
-
const
|
|
4318
|
+
const ConsumptionBaseController_1 = __webpack_require__(/*! ../../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
4319
|
+
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
4320
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
4321
|
+
const ConsumptionIds_1 = __webpack_require__(/*! ../../../consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js");
|
|
3880
4322
|
const events_1 = __webpack_require__(/*! ../events */ "./dist/modules/requests/events/index.js");
|
|
3881
4323
|
const ValidationResult_1 = __webpack_require__(/*! ../itemProcessors/ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3882
4324
|
const LocalRequest_1 = __webpack_require__(/*! ../local/LocalRequest */ "./dist/modules/requests/local/LocalRequest.js");
|
|
@@ -3887,9 +4329,9 @@ const CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters
|
|
|
3887
4329
|
const CanCreateOutgoingRequestParameters_1 = __webpack_require__(/*! ./createOutgoingRequest/CanCreateOutgoingRequestParameters */ "./dist/modules/requests/outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters.js");
|
|
3888
4330
|
const CreateOutgoingRequestParameters_1 = __webpack_require__(/*! ./createOutgoingRequest/CreateOutgoingRequestParameters */ "./dist/modules/requests/outgoing/createOutgoingRequest/CreateOutgoingRequestParameters.js");
|
|
3889
4331
|
const SentOutgoingRequestParameters_1 = __webpack_require__(/*! ./sentOutgoingRequest/SentOutgoingRequestParameters */ "./dist/modules/requests/outgoing/sentOutgoingRequest/SentOutgoingRequestParameters.js");
|
|
3890
|
-
class OutgoingRequestsController extends
|
|
4332
|
+
class OutgoingRequestsController extends ConsumptionBaseController_1.ConsumptionBaseController {
|
|
3891
4333
|
constructor(localRequests, processorRegistry, parent, eventBus, identity, relationshipResolver) {
|
|
3892
|
-
super(
|
|
4334
|
+
super(ConsumptionControllerName_1.ConsumptionControllerName.RequestsController, parent);
|
|
3893
4335
|
this.localRequests = localRequests;
|
|
3894
4336
|
this.processorRegistry = processorRegistry;
|
|
3895
4337
|
this.eventBus = eventBus;
|
|
@@ -3931,7 +4373,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
3931
4373
|
}
|
|
3932
4374
|
async create(params) {
|
|
3933
4375
|
const parsedParams = CreateOutgoingRequestParameters_1.CreateOutgoingRequestParameters.from(params);
|
|
3934
|
-
const id = await
|
|
4376
|
+
const id = await ConsumptionIds_1.ConsumptionIds.request.generate();
|
|
3935
4377
|
parsedParams.content.id = id;
|
|
3936
4378
|
const request = await this._create(id, parsedParams.content, parsedParams.peer);
|
|
3937
4379
|
this.eventBus.publish(new events_1.OutgoingRequestCreatedEvent(this.identity.address.toString(), request));
|
|
@@ -3963,7 +4405,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
3963
4405
|
const requestId = response.requestId;
|
|
3964
4406
|
const templateContent = parsedParams.template.cache.content;
|
|
3965
4407
|
if (!(templateContent instanceof content_1.RelationshipTemplateContent)) {
|
|
3966
|
-
throw new
|
|
4408
|
+
throw new ConsumptionError_1.ConsumptionError("The content of the template is not supported as it is not type of RelationshipTemplateContent.");
|
|
3967
4409
|
}
|
|
3968
4410
|
const existingRelationship = await this.relationshipResolver.getActiveRelationshipToIdentity(peer);
|
|
3969
4411
|
const requestContent = existingRelationship
|
|
@@ -3999,17 +4441,17 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
3999
4441
|
getSourceType(sourceObject) {
|
|
4000
4442
|
if (sourceObject instanceof transport_1.Message) {
|
|
4001
4443
|
if (!sourceObject.isOwn) {
|
|
4002
|
-
throw new
|
|
4444
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create outgoing Request from a peer Message");
|
|
4003
4445
|
}
|
|
4004
4446
|
return "Message";
|
|
4005
4447
|
}
|
|
4006
4448
|
else if (sourceObject instanceof transport_1.RelationshipTemplate) {
|
|
4007
4449
|
if (!sourceObject.isOwn) {
|
|
4008
|
-
throw new
|
|
4450
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create outgoing Request from a peer Relationship Template");
|
|
4009
4451
|
}
|
|
4010
4452
|
return "RelationshipTemplate";
|
|
4011
4453
|
}
|
|
4012
|
-
throw new
|
|
4454
|
+
throw new ConsumptionError_1.ConsumptionError("The given sourceObject is not of a valid type. Valid types are 'Message' and 'RelationshipTemplate'.");
|
|
4013
4455
|
}
|
|
4014
4456
|
async complete(params) {
|
|
4015
4457
|
const parsedParams = CompleteOutgoingRequestParameters_1.CompleteOutgoingRequestParameters.from(params);
|
|
@@ -4028,7 +4470,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
4028
4470
|
? responseSourceObject.cache.createdAt
|
|
4029
4471
|
: responseSourceObject.request.createdAt;
|
|
4030
4472
|
if (request.status === LocalRequestStatus_1.LocalRequestStatus.Expired && request.isExpired(responseSourceObjectCreationDate)) {
|
|
4031
|
-
throw new
|
|
4473
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot complete an expired request with a response that was created before the expiration date");
|
|
4032
4474
|
}
|
|
4033
4475
|
const canComplete = await this.canComplete(request, receivedResponse);
|
|
4034
4476
|
if (canComplete.isError()) {
|
|
@@ -4043,7 +4485,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
4043
4485
|
responseSource = "RelationshipChange";
|
|
4044
4486
|
}
|
|
4045
4487
|
else {
|
|
4046
|
-
throw new
|
|
4488
|
+
throw new ConsumptionError_1.ConsumptionError("Invalid responseSourceObject");
|
|
4047
4489
|
}
|
|
4048
4490
|
const localResponse = LocalResponse_1.LocalResponse.from({
|
|
4049
4491
|
content: receivedResponse,
|
|
@@ -4134,7 +4576,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
4134
4576
|
}
|
|
4135
4577
|
assertRequestStatus(request, ...status) {
|
|
4136
4578
|
if (!status.includes(request.status)) {
|
|
4137
|
-
throw new
|
|
4579
|
+
throw new ConsumptionError_1.ConsumptionError(`Local Request has to be in status '${status.join("/")}'.`);
|
|
4138
4580
|
}
|
|
4139
4581
|
}
|
|
4140
4582
|
async updateRequestExpiry(request) {
|
|
@@ -4176,6 +4618,7 @@ let CompleteOutgoingRequestParameters = class CompleteOutgoingRequestParameters
|
|
|
4176
4618
|
return this.fromAny(value);
|
|
4177
4619
|
}
|
|
4178
4620
|
};
|
|
4621
|
+
exports.CompleteOutgoingRequestParameters = CompleteOutgoingRequestParameters;
|
|
4179
4622
|
__decorate([
|
|
4180
4623
|
(0, ts_serval_1.serialize)(),
|
|
4181
4624
|
(0, ts_serval_1.validate)(),
|
|
@@ -4191,10 +4634,9 @@ __decorate([
|
|
|
4191
4634
|
(0, ts_serval_1.validate)(),
|
|
4192
4635
|
__metadata("design:type", content_1.Response)
|
|
4193
4636
|
], CompleteOutgoingRequestParameters.prototype, "receivedResponse", void 0);
|
|
4194
|
-
CompleteOutgoingRequestParameters = __decorate([
|
|
4637
|
+
exports.CompleteOutgoingRequestParameters = CompleteOutgoingRequestParameters = __decorate([
|
|
4195
4638
|
(0, ts_serval_1.type)("CompleteOutgoingRequestParameters")
|
|
4196
4639
|
], CompleteOutgoingRequestParameters);
|
|
4197
|
-
exports.CompleteOutgoingRequestParameters = CompleteOutgoingRequestParameters;
|
|
4198
4640
|
//# sourceMappingURL=CompleteOutgoingRequestParameters.js.map
|
|
4199
4641
|
|
|
4200
4642
|
/***/ }),
|
|
@@ -4226,6 +4668,7 @@ let CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters =
|
|
|
4226
4668
|
return this.fromAny(value);
|
|
4227
4669
|
}
|
|
4228
4670
|
};
|
|
4671
|
+
exports.CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters = CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters;
|
|
4229
4672
|
__decorate([
|
|
4230
4673
|
(0, ts_serval_1.serialize)(),
|
|
4231
4674
|
(0, ts_serval_1.validate)(),
|
|
@@ -4241,10 +4684,9 @@ __decorate([
|
|
|
4241
4684
|
(0, ts_serval_1.validate)(),
|
|
4242
4685
|
__metadata("design:type", content_1.Response)
|
|
4243
4686
|
], CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters.prototype, "response", void 0);
|
|
4244
|
-
CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters = __decorate([
|
|
4687
|
+
exports.CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters = CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters = __decorate([
|
|
4245
4688
|
(0, ts_serval_1.type)("CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeParameters")
|
|
4246
4689
|
], CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters);
|
|
4247
|
-
exports.CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters = CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters;
|
|
4248
4690
|
//# sourceMappingURL=CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters.js.map
|
|
4249
4691
|
|
|
4250
4692
|
/***/ }),
|
|
@@ -4276,6 +4718,7 @@ let CanCreateOutgoingRequestParameters = class CanCreateOutgoingRequestParameter
|
|
|
4276
4718
|
return this.fromAny(value);
|
|
4277
4719
|
}
|
|
4278
4720
|
};
|
|
4721
|
+
exports.CanCreateOutgoingRequestParameters = CanCreateOutgoingRequestParameters;
|
|
4279
4722
|
__decorate([
|
|
4280
4723
|
(0, ts_serval_1.serialize)(),
|
|
4281
4724
|
(0, ts_serval_1.validate)(),
|
|
@@ -4286,10 +4729,9 @@ __decorate([
|
|
|
4286
4729
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
4287
4730
|
__metadata("design:type", transport_1.CoreAddress)
|
|
4288
4731
|
], CanCreateOutgoingRequestParameters.prototype, "peer", void 0);
|
|
4289
|
-
CanCreateOutgoingRequestParameters = __decorate([
|
|
4732
|
+
exports.CanCreateOutgoingRequestParameters = CanCreateOutgoingRequestParameters = __decorate([
|
|
4290
4733
|
(0, ts_serval_1.type)("CanCreateOutgoingRequestParameters")
|
|
4291
4734
|
], CanCreateOutgoingRequestParameters);
|
|
4292
|
-
exports.CanCreateOutgoingRequestParameters = CanCreateOutgoingRequestParameters;
|
|
4293
4735
|
//# sourceMappingURL=CanCreateOutgoingRequestParameters.js.map
|
|
4294
4736
|
|
|
4295
4737
|
/***/ }),
|
|
@@ -4321,6 +4763,7 @@ let CreateOutgoingRequestParameters = class CreateOutgoingRequestParameters exte
|
|
|
4321
4763
|
return this.fromAny(value);
|
|
4322
4764
|
}
|
|
4323
4765
|
};
|
|
4766
|
+
exports.CreateOutgoingRequestParameters = CreateOutgoingRequestParameters;
|
|
4324
4767
|
__decorate([
|
|
4325
4768
|
(0, ts_serval_1.serialize)(),
|
|
4326
4769
|
(0, ts_serval_1.validate)(),
|
|
@@ -4331,10 +4774,9 @@ __decorate([
|
|
|
4331
4774
|
(0, ts_serval_1.validate)(),
|
|
4332
4775
|
__metadata("design:type", transport_1.CoreAddress)
|
|
4333
4776
|
], CreateOutgoingRequestParameters.prototype, "peer", void 0);
|
|
4334
|
-
CreateOutgoingRequestParameters = __decorate([
|
|
4777
|
+
exports.CreateOutgoingRequestParameters = CreateOutgoingRequestParameters = __decorate([
|
|
4335
4778
|
(0, ts_serval_1.type)("CreateOutgoingRequestParameters")
|
|
4336
4779
|
], CreateOutgoingRequestParameters);
|
|
4337
|
-
exports.CreateOutgoingRequestParameters = CreateOutgoingRequestParameters;
|
|
4338
4780
|
//# sourceMappingURL=CreateOutgoingRequestParameters.js.map
|
|
4339
4781
|
|
|
4340
4782
|
/***/ }),
|
|
@@ -4365,6 +4807,7 @@ let SentOutgoingRequestParameters = class SentOutgoingRequestParameters extends
|
|
|
4365
4807
|
return this.fromAny(value);
|
|
4366
4808
|
}
|
|
4367
4809
|
};
|
|
4810
|
+
exports.SentOutgoingRequestParameters = SentOutgoingRequestParameters;
|
|
4368
4811
|
__decorate([
|
|
4369
4812
|
(0, ts_serval_1.serialize)(),
|
|
4370
4813
|
(0, ts_serval_1.validate)(),
|
|
@@ -4375,10 +4818,9 @@ __decorate([
|
|
|
4375
4818
|
(0, ts_serval_1.validate)(),
|
|
4376
4819
|
__metadata("design:type", transport_1.Message)
|
|
4377
4820
|
], SentOutgoingRequestParameters.prototype, "requestSourceObject", void 0);
|
|
4378
|
-
SentOutgoingRequestParameters = __decorate([
|
|
4821
|
+
exports.SentOutgoingRequestParameters = SentOutgoingRequestParameters = __decorate([
|
|
4379
4822
|
(0, ts_serval_1.type)("SentOutgoingRequestParameters")
|
|
4380
4823
|
], SentOutgoingRequestParameters);
|
|
4381
|
-
exports.SentOutgoingRequestParameters = SentOutgoingRequestParameters;
|
|
4382
4824
|
//# sourceMappingURL=SentOutgoingRequestParameters.js.map
|
|
4383
4825
|
|
|
4384
4826
|
/***/ }),
|
|
@@ -4404,11 +4846,13 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
4404
4846
|
exports.SettingsController = void 0;
|
|
4405
4847
|
const ts_utils_1 = __webpack_require__(/*! @js-soft/ts-utils */ "./node_modules/@js-soft/ts-utils/dist/index.js");
|
|
4406
4848
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
4407
|
-
const
|
|
4849
|
+
const ConsumptionBaseController_1 = __webpack_require__(/*! ../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
4850
|
+
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
4851
|
+
const ConsumptionIds_1 = __webpack_require__(/*! ../../consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js");
|
|
4408
4852
|
const Setting_1 = __webpack_require__(/*! ./local/Setting */ "./dist/modules/settings/local/Setting.js");
|
|
4409
|
-
class SettingsController extends
|
|
4853
|
+
class SettingsController extends ConsumptionBaseController_1.ConsumptionBaseController {
|
|
4410
4854
|
constructor(parent) {
|
|
4411
|
-
super(
|
|
4855
|
+
super(ConsumptionControllerName_1.ConsumptionControllerName.SettingsController, parent);
|
|
4412
4856
|
}
|
|
4413
4857
|
async init() {
|
|
4414
4858
|
await super.init();
|
|
@@ -4425,7 +4869,7 @@ class SettingsController extends consumption_1.ConsumptionBaseController {
|
|
|
4425
4869
|
}
|
|
4426
4870
|
async createSetting(parameters) {
|
|
4427
4871
|
const setting = Setting_1.Setting.from({
|
|
4428
|
-
id: await
|
|
4872
|
+
id: await ConsumptionIds_1.ConsumptionIds.setting.generate(),
|
|
4429
4873
|
createdAt: transport_1.CoreDate.utc(),
|
|
4430
4874
|
key: parameters.key,
|
|
4431
4875
|
scope: parameters.scope ?? Setting_1.SettingScope.Identity,
|
|
@@ -4447,13 +4891,13 @@ class SettingsController extends consumption_1.ConsumptionBaseController {
|
|
|
4447
4891
|
await this.settings.delete(setting);
|
|
4448
4892
|
}
|
|
4449
4893
|
}
|
|
4894
|
+
exports.SettingsController = SettingsController;
|
|
4450
4895
|
__decorate([
|
|
4451
4896
|
(0, ts_utils_1.log)(),
|
|
4452
4897
|
__metadata("design:type", Function),
|
|
4453
4898
|
__metadata("design:paramtypes", [Setting_1.Setting]),
|
|
4454
4899
|
__metadata("design:returntype", Promise)
|
|
4455
4900
|
], SettingsController.prototype, "updateSetting", null);
|
|
4456
|
-
exports.SettingsController = SettingsController;
|
|
4457
4901
|
//# sourceMappingURL=SettingsController.js.map
|
|
4458
4902
|
|
|
4459
4903
|
/***/ }),
|
|
@@ -4528,7 +4972,7 @@ var SettingScope;
|
|
|
4528
4972
|
SettingScope["Identity"] = "Identity";
|
|
4529
4973
|
SettingScope["Device"] = "Device";
|
|
4530
4974
|
SettingScope["Relationship"] = "Relationship";
|
|
4531
|
-
})(SettingScope
|
|
4975
|
+
})(SettingScope || (exports.SettingScope = SettingScope = {}));
|
|
4532
4976
|
let Setting = class Setting extends transport_1.CoreSynchronizable {
|
|
4533
4977
|
constructor() {
|
|
4534
4978
|
super(...arguments);
|
|
@@ -4552,6 +4996,7 @@ let Setting = class Setting extends transport_1.CoreSynchronizable {
|
|
|
4552
4996
|
return this.fromAny(value);
|
|
4553
4997
|
}
|
|
4554
4998
|
};
|
|
4999
|
+
exports.Setting = Setting;
|
|
4555
5000
|
__decorate([
|
|
4556
5001
|
(0, ts_serval_1.validate)(),
|
|
4557
5002
|
(0, ts_serval_1.serialize)(),
|
|
@@ -4597,10 +5042,9 @@ __decorate([
|
|
|
4597
5042
|
(0, ts_serval_1.serialize)(),
|
|
4598
5043
|
__metadata("design:type", transport_1.CoreDate)
|
|
4599
5044
|
], Setting.prototype, "metadataModifiedAt", void 0);
|
|
4600
|
-
Setting = __decorate([
|
|
5045
|
+
exports.Setting = Setting = __decorate([
|
|
4601
5046
|
(0, ts_serval_1.type)("Setting")
|
|
4602
5047
|
], Setting);
|
|
4603
|
-
exports.Setting = Setting;
|
|
4604
5048
|
//# sourceMappingURL=Setting.js.map
|
|
4605
5049
|
|
|
4606
5050
|
/***/ }),
|
|
@@ -4616,9 +5060,9 @@ exports.Setting = Setting;
|
|
|
4616
5060
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
4617
5061
|
exports.QueryTranslator = void 0;
|
|
4618
5062
|
class QueryTranslator {
|
|
4619
|
-
static defaultKeyRegex = /^[
|
|
5063
|
+
static defaultKeyRegex = /^[a-zA-Z_@][a-zA-Z@0-9-_]*(\.[a-zA-Z_@][a-zA-Z@0-9-_]*)*$/;
|
|
4620
5064
|
static defaultValRegex = undefined;
|
|
4621
|
-
static defaultArrRegex = /^[a-
|
|
5065
|
+
static defaultArrRegex = /^[a-zA-Zæøå0-9-_.]+(\[])?$/i;
|
|
4622
5066
|
ops;
|
|
4623
5067
|
alias;
|
|
4624
5068
|
blacklist;
|
|
@@ -4733,6 +5177,10 @@ class QueryTranslator {
|
|
|
4733
5177
|
}
|
|
4734
5178
|
const res = {};
|
|
4735
5179
|
for (let key of Object.keys(query)) {
|
|
5180
|
+
// if the key is __proto__ it could cause a prototype-polluting assignment
|
|
5181
|
+
// see https://codeql.github.com/codeql-query-help/javascript/js-prototype-polluting-assignment/ for more information
|
|
5182
|
+
if (key === "__proto__")
|
|
5183
|
+
continue;
|
|
4736
5184
|
const val = query[key];
|
|
4737
5185
|
// Normalize array keys
|
|
4738
5186
|
if (Array.isArray(val)) {
|
|
@@ -26522,7 +26970,7 @@ function intlConfigString(localeStr, numberingSystem, outputCalendar) {
|
|
|
26522
26970
|
function mapMonths(f) {
|
|
26523
26971
|
const ms = [];
|
|
26524
26972
|
for (let i = 1; i <= 12; i++) {
|
|
26525
|
-
const dt = DateTime.utc(
|
|
26973
|
+
const dt = DateTime.utc(2009, i, 1);
|
|
26526
26974
|
ms.push(f(dt));
|
|
26527
26975
|
}
|
|
26528
26976
|
return ms;
|
|
@@ -26535,8 +26983,8 @@ function mapWeekdays(f) {
|
|
|
26535
26983
|
}
|
|
26536
26984
|
return ms;
|
|
26537
26985
|
}
|
|
26538
|
-
function listStuff(loc, length,
|
|
26539
|
-
const mode = loc.listingMode(
|
|
26986
|
+
function listStuff(loc, length, englishFn, intlFn) {
|
|
26987
|
+
const mode = loc.listingMode();
|
|
26540
26988
|
if (mode === "error") {
|
|
26541
26989
|
return null;
|
|
26542
26990
|
} else if (mode === "en") {
|
|
@@ -26782,8 +27230,8 @@ class Locale {
|
|
|
26782
27230
|
defaultToEN: false
|
|
26783
27231
|
});
|
|
26784
27232
|
}
|
|
26785
|
-
months(length, format = false
|
|
26786
|
-
return listStuff(this, length,
|
|
27233
|
+
months(length, format = false) {
|
|
27234
|
+
return listStuff(this, length, months, () => {
|
|
26787
27235
|
const intl = format ? {
|
|
26788
27236
|
month: length,
|
|
26789
27237
|
day: "numeric"
|
|
@@ -26797,8 +27245,8 @@ class Locale {
|
|
|
26797
27245
|
return this.monthsCache[formatStr][length];
|
|
26798
27246
|
});
|
|
26799
27247
|
}
|
|
26800
|
-
weekdays(length, format = false
|
|
26801
|
-
return listStuff(this, length,
|
|
27248
|
+
weekdays(length, format = false) {
|
|
27249
|
+
return listStuff(this, length, weekdays, () => {
|
|
26802
27250
|
const intl = format ? {
|
|
26803
27251
|
weekday: length,
|
|
26804
27252
|
year: "numeric",
|
|
@@ -26814,8 +27262,8 @@ class Locale {
|
|
|
26814
27262
|
return this.weekdaysCache[formatStr][length];
|
|
26815
27263
|
});
|
|
26816
27264
|
}
|
|
26817
|
-
meridiems(
|
|
26818
|
-
return listStuff(this, undefined,
|
|
27265
|
+
meridiems() {
|
|
27266
|
+
return listStuff(this, undefined, () => meridiems, () => {
|
|
26819
27267
|
// In theory there could be aribitrary day periods. We're gonna assume there are exactly two
|
|
26820
27268
|
// for AM and PM. This is probably wrong, but it's makes parsing way easier.
|
|
26821
27269
|
if (!this.meridiemCache) {
|
|
@@ -26828,8 +27276,8 @@ class Locale {
|
|
|
26828
27276
|
return this.meridiemCache;
|
|
26829
27277
|
});
|
|
26830
27278
|
}
|
|
26831
|
-
eras(length
|
|
26832
|
-
return listStuff(this, length,
|
|
27279
|
+
eras(length) {
|
|
27280
|
+
return listStuff(this, length, eras, () => {
|
|
26833
27281
|
const intl = {
|
|
26834
27282
|
era: length
|
|
26835
27283
|
};
|
|
@@ -27033,7 +27481,7 @@ function normalizeZone(input, defaultZone) {
|
|
|
27033
27481
|
if (lowered === "default") return defaultZone;else if (lowered === "local" || lowered === "system") return SystemZone.instance;else if (lowered === "utc" || lowered === "gmt") return FixedOffsetZone.utcInstance;else return FixedOffsetZone.parseSpecifier(lowered) || IANAZone.create(input);
|
|
27034
27482
|
} else if (isNumber(input)) {
|
|
27035
27483
|
return FixedOffsetZone.instance(input);
|
|
27036
|
-
} else if (typeof input === "object" &&
|
|
27484
|
+
} else if (typeof input === "object" && "offset" in input && typeof input.offset === "function") {
|
|
27037
27485
|
// This is dumb, but the instanceof check above doesn't seem to really work
|
|
27038
27486
|
// so we're duck checking it
|
|
27039
27487
|
return input;
|
|
@@ -27150,10 +27598,10 @@ class Settings {
|
|
|
27150
27598
|
/**
|
|
27151
27599
|
* Set the cutoff year after which a string encoding a year as two digits is interpreted to occur in the current century.
|
|
27152
27600
|
* @type {number}
|
|
27153
|
-
* @example Settings.twoDigitCutoffYear = 0 // cut-off year is 0, so all 'yy' are
|
|
27601
|
+
* @example Settings.twoDigitCutoffYear = 0 // cut-off year is 0, so all 'yy' are interpreted as current century
|
|
27154
27602
|
* @example Settings.twoDigitCutoffYear = 50 // '49' -> 1949; '50' -> 2050
|
|
27155
|
-
* @example Settings.twoDigitCutoffYear = 1950 //
|
|
27156
|
-
* @example Settings.twoDigitCutoffYear = 2050 // ALSO
|
|
27603
|
+
* @example Settings.twoDigitCutoffYear = 1950 // interpreted as 50
|
|
27604
|
+
* @example Settings.twoDigitCutoffYear = 2050 // ALSO interpreted as 50
|
|
27157
27605
|
*/
|
|
27158
27606
|
static set twoDigitCutoffYear(cutoffYear) {
|
|
27159
27607
|
twoDigitCutoffYear = cutoffYear % 100;
|
|
@@ -27320,7 +27768,7 @@ function daysInMonth(year, month) {
|
|
|
27320
27768
|
}
|
|
27321
27769
|
}
|
|
27322
27770
|
|
|
27323
|
-
//
|
|
27771
|
+
// convert a calendar object to a local timestamp (epoch, but with the offset baked in)
|
|
27324
27772
|
function objToLocalTS(obj) {
|
|
27325
27773
|
let d = Date.UTC(obj.year, obj.month - 1, obj.day, obj.hour, obj.minute, obj.second, obj.millisecond);
|
|
27326
27774
|
|
|
@@ -27622,33 +28070,24 @@ class Formatter {
|
|
|
27622
28070
|
});
|
|
27623
28071
|
return df.format();
|
|
27624
28072
|
}
|
|
27625
|
-
|
|
27626
|
-
|
|
28073
|
+
dtFormatter(dt, opts = {}) {
|
|
28074
|
+
return this.loc.dtFormatter(dt, {
|
|
27627
28075
|
...this.opts,
|
|
27628
28076
|
...opts
|
|
27629
28077
|
});
|
|
27630
|
-
return df.format();
|
|
27631
28078
|
}
|
|
27632
|
-
|
|
27633
|
-
|
|
27634
|
-
...this.opts,
|
|
27635
|
-
...opts
|
|
27636
|
-
});
|
|
27637
|
-
return df.formatToParts();
|
|
28079
|
+
formatDateTime(dt, opts) {
|
|
28080
|
+
return this.dtFormatter(dt, opts).format();
|
|
27638
28081
|
}
|
|
27639
|
-
|
|
27640
|
-
|
|
27641
|
-
|
|
27642
|
-
|
|
27643
|
-
|
|
28082
|
+
formatDateTimeParts(dt, opts) {
|
|
28083
|
+
return this.dtFormatter(dt, opts).formatToParts();
|
|
28084
|
+
}
|
|
28085
|
+
formatInterval(interval, opts) {
|
|
28086
|
+
const df = this.dtFormatter(interval.start, opts);
|
|
27644
28087
|
return df.dtf.formatRange(interval.start.toJSDate(), interval.end.toJSDate());
|
|
27645
28088
|
}
|
|
27646
|
-
resolvedOptions(dt, opts
|
|
27647
|
-
|
|
27648
|
-
...this.opts,
|
|
27649
|
-
...opts
|
|
27650
|
-
});
|
|
27651
|
-
return df.resolvedOptions();
|
|
28089
|
+
resolvedOptions(dt, opts) {
|
|
28090
|
+
return this.dtFormatter(dt, opts).resolvedOptions();
|
|
27652
28091
|
}
|
|
27653
28092
|
num(n, p = 0) {
|
|
27654
28093
|
// we get some perf out of doing this here, annoyingly
|
|
@@ -27702,7 +28141,7 @@ class Formatter {
|
|
|
27702
28141
|
era: length
|
|
27703
28142
|
}, "era"),
|
|
27704
28143
|
tokenToString = token => {
|
|
27705
|
-
// Where possible:
|
|
28144
|
+
// Where possible: https://cldr.unicode.org/translation/date-time/date-time-symbols
|
|
27706
28145
|
switch (token) {
|
|
27707
28146
|
// ms
|
|
27708
28147
|
case "S":
|
|
@@ -28291,27 +28730,61 @@ function clone$1(dur, alts, clear = false) {
|
|
|
28291
28730
|
};
|
|
28292
28731
|
return new Duration(conf);
|
|
28293
28732
|
}
|
|
28294
|
-
function
|
|
28295
|
-
|
|
28296
|
-
|
|
28297
|
-
|
|
28298
|
-
|
|
28299
|
-
|
|
28300
|
-
|
|
28301
|
-
|
|
28302
|
-
|
|
28303
|
-
// ok, so this is wild, but see the matrix in the tests
|
|
28304
|
-
added = !sameSign && toMap[toUnit] !== 0 && Math.abs(raw) <= 1 ? antiTrunc(raw) : Math.trunc(raw);
|
|
28305
|
-
toMap[toUnit] += added;
|
|
28306
|
-
fromMap[fromUnit] -= added * conv;
|
|
28733
|
+
function durationToMillis(matrix, vals) {
|
|
28734
|
+
var _vals$milliseconds;
|
|
28735
|
+
let sum = (_vals$milliseconds = vals.milliseconds) != null ? _vals$milliseconds : 0;
|
|
28736
|
+
for (const unit of reverseUnits.slice(1)) {
|
|
28737
|
+
if (vals[unit]) {
|
|
28738
|
+
sum += vals[unit] * matrix[unit]["milliseconds"];
|
|
28739
|
+
}
|
|
28740
|
+
}
|
|
28741
|
+
return sum;
|
|
28307
28742
|
}
|
|
28308
28743
|
|
|
28309
28744
|
// NB: mutates parameters
|
|
28310
28745
|
function normalizeValues(matrix, vals) {
|
|
28311
|
-
|
|
28746
|
+
// the logic below assumes the overall value of the duration is positive
|
|
28747
|
+
// if this is not the case, factor is used to make it so
|
|
28748
|
+
const factor = durationToMillis(matrix, vals) < 0 ? -1 : 1;
|
|
28749
|
+
orderedUnits$1.reduceRight((previous, current) => {
|
|
28312
28750
|
if (!isUndefined(vals[current])) {
|
|
28313
28751
|
if (previous) {
|
|
28314
|
-
|
|
28752
|
+
const previousVal = vals[previous] * factor;
|
|
28753
|
+
const conv = matrix[current][previous];
|
|
28754
|
+
|
|
28755
|
+
// if (previousVal < 0):
|
|
28756
|
+
// lower order unit is negative (e.g. { years: 2, days: -2 })
|
|
28757
|
+
// normalize this by reducing the higher order unit by the appropriate amount
|
|
28758
|
+
// and increasing the lower order unit
|
|
28759
|
+
// this can never make the higher order unit negative, because this function only operates
|
|
28760
|
+
// on positive durations, so the amount of time represented by the lower order unit cannot
|
|
28761
|
+
// be larger than the higher order unit
|
|
28762
|
+
// else:
|
|
28763
|
+
// lower order unit is positive (e.g. { years: 2, days: 450 } or { years: -2, days: 450 })
|
|
28764
|
+
// in this case we attempt to convert as much as possible from the lower order unit into
|
|
28765
|
+
// the higher order one
|
|
28766
|
+
//
|
|
28767
|
+
// Math.floor takes care of both of these cases, rounding away from 0
|
|
28768
|
+
// if previousVal < 0 it makes the absolute value larger
|
|
28769
|
+
// if previousVal >= it makes the absolute value smaller
|
|
28770
|
+
const rollUp = Math.floor(previousVal / conv);
|
|
28771
|
+
vals[current] += rollUp * factor;
|
|
28772
|
+
vals[previous] -= rollUp * conv * factor;
|
|
28773
|
+
}
|
|
28774
|
+
return current;
|
|
28775
|
+
} else {
|
|
28776
|
+
return previous;
|
|
28777
|
+
}
|
|
28778
|
+
}, null);
|
|
28779
|
+
|
|
28780
|
+
// try to convert any decimals into smaller units if possible
|
|
28781
|
+
// for example for { years: 2.5, days: 0, seconds: 0 } we want to get { years: 2, days: 182, hours: 12 }
|
|
28782
|
+
orderedUnits$1.reduce((previous, current) => {
|
|
28783
|
+
if (!isUndefined(vals[current])) {
|
|
28784
|
+
if (previous) {
|
|
28785
|
+
const fraction = vals[previous] % 1;
|
|
28786
|
+
vals[previous] -= fraction;
|
|
28787
|
+
vals[current] += fraction * matrix[previous][current];
|
|
28315
28788
|
}
|
|
28316
28789
|
return current;
|
|
28317
28790
|
} else {
|
|
@@ -28617,6 +29090,7 @@ class Duration {
|
|
|
28617
29090
|
* ```
|
|
28618
29091
|
*/
|
|
28619
29092
|
toHuman(opts = {}) {
|
|
29093
|
+
if (!this.isValid) return INVALID$2;
|
|
28620
29094
|
const l = orderedUnits$1.map(unit => {
|
|
28621
29095
|
const val = this.values[unit];
|
|
28622
29096
|
if (isUndefined(val)) {
|
|
@@ -28702,21 +29176,13 @@ class Duration {
|
|
|
28702
29176
|
suppressSeconds: false,
|
|
28703
29177
|
includePrefix: false,
|
|
28704
29178
|
format: "extended",
|
|
28705
|
-
...opts
|
|
29179
|
+
...opts,
|
|
29180
|
+
includeOffset: false
|
|
28706
29181
|
};
|
|
28707
|
-
const
|
|
28708
|
-
|
|
28709
|
-
|
|
28710
|
-
|
|
28711
|
-
if (!opts.suppressMilliseconds || value.milliseconds !== 0) {
|
|
28712
|
-
fmt += ".SSS";
|
|
28713
|
-
}
|
|
28714
|
-
}
|
|
28715
|
-
let str = value.toFormat(fmt);
|
|
28716
|
-
if (opts.includePrefix) {
|
|
28717
|
-
str = "T" + str;
|
|
28718
|
-
}
|
|
28719
|
-
return str;
|
|
29182
|
+
const dateTime = DateTime.fromMillis(millis, {
|
|
29183
|
+
zone: "UTC"
|
|
29184
|
+
});
|
|
29185
|
+
return dateTime.toISOTime(opts);
|
|
28720
29186
|
}
|
|
28721
29187
|
|
|
28722
29188
|
/**
|
|
@@ -28740,7 +29206,8 @@ class Duration {
|
|
|
28740
29206
|
* @return {number}
|
|
28741
29207
|
*/
|
|
28742
29208
|
toMillis() {
|
|
28743
|
-
|
|
29209
|
+
if (!this.isValid) return NaN;
|
|
29210
|
+
return durationToMillis(this.matrix, this.values);
|
|
28744
29211
|
}
|
|
28745
29212
|
|
|
28746
29213
|
/**
|
|
@@ -28866,8 +29333,17 @@ class Duration {
|
|
|
28866
29333
|
|
|
28867
29334
|
/**
|
|
28868
29335
|
* Reduce this Duration to its canonical representation in its current units.
|
|
29336
|
+
* Assuming the overall value of the Duration is positive, this means:
|
|
29337
|
+
* - excessive values for lower-order units are converted to higher-order units (if possible, see first and second example)
|
|
29338
|
+
* - negative lower-order units are converted to higher order units (there must be such a higher order unit, otherwise
|
|
29339
|
+
* the overall value would be negative, see second example)
|
|
29340
|
+
* - fractional values for higher-order units are converted to lower-order units (if possible, see fourth example)
|
|
29341
|
+
*
|
|
29342
|
+
* If the overall value is negative, the result of this method is equivalent to `this.negate().normalize().negate()`.
|
|
28869
29343
|
* @example Duration.fromObject({ years: 2, days: 5000 }).normalize().toObject() //=> { years: 15, days: 255 }
|
|
29344
|
+
* @example Duration.fromObject({ days: 5000 }).normalize().toObject() //=> { days: 5000 }
|
|
28870
29345
|
* @example Duration.fromObject({ hours: 12, minutes: -45 }).normalize().toObject() //=> { hours: 11, minutes: 15 }
|
|
29346
|
+
* @example Duration.fromObject({ years: 2.5, days: 0, hours: 0 }).normalize().toObject() //=> { years: 2, days: 182, hours: 12 }
|
|
28871
29347
|
* @return {Duration}
|
|
28872
29348
|
*/
|
|
28873
29349
|
normalize() {
|
|
@@ -28922,16 +29398,13 @@ class Duration {
|
|
|
28922
29398
|
if (isNumber(vals[k])) {
|
|
28923
29399
|
own += vals[k];
|
|
28924
29400
|
}
|
|
29401
|
+
|
|
29402
|
+
// only keep the integer part for now in the hopes of putting any decimal part
|
|
29403
|
+
// into a smaller unit later
|
|
28925
29404
|
const i = Math.trunc(own);
|
|
28926
29405
|
built[k] = i;
|
|
28927
29406
|
accumulated[k] = (own * 1000 - i * 1000) / 1000;
|
|
28928
29407
|
|
|
28929
|
-
// plus anything further down the chain that should be rolled up in to this
|
|
28930
|
-
for (const down in vals) {
|
|
28931
|
-
if (orderedUnits$1.indexOf(down) > orderedUnits$1.indexOf(k)) {
|
|
28932
|
-
convert(this.matrix, vals, down, built, k);
|
|
28933
|
-
}
|
|
28934
|
-
}
|
|
28935
29408
|
// otherwise, keep it in the wings to boil it later
|
|
28936
29409
|
} else if (isNumber(vals[k])) {
|
|
28937
29410
|
accumulated[k] = vals[k];
|
|
@@ -28945,9 +29418,10 @@ class Duration {
|
|
|
28945
29418
|
built[lastUnit] += key === lastUnit ? accumulated[key] : accumulated[key] / this.matrix[lastUnit][key];
|
|
28946
29419
|
}
|
|
28947
29420
|
}
|
|
29421
|
+
normalizeValues(this.matrix, built);
|
|
28948
29422
|
return clone$1(this, {
|
|
28949
29423
|
values: built
|
|
28950
|
-
}, true)
|
|
29424
|
+
}, true);
|
|
28951
29425
|
}
|
|
28952
29426
|
|
|
28953
29427
|
/**
|
|
@@ -29905,14 +30379,35 @@ function highOrderDiffs(cursor, later, units) {
|
|
|
29905
30379
|
const results = {};
|
|
29906
30380
|
const earlier = cursor;
|
|
29907
30381
|
let lowestOrder, highWater;
|
|
30382
|
+
|
|
30383
|
+
/* This loop tries to diff using larger units first.
|
|
30384
|
+
If we overshoot, we backtrack and try the next smaller unit.
|
|
30385
|
+
"cursor" starts out at the earlier timestamp and moves closer and closer to "later"
|
|
30386
|
+
as we use smaller and smaller units.
|
|
30387
|
+
highWater keeps track of where we would be if we added one more of the smallest unit,
|
|
30388
|
+
this is used later to potentially convert any difference smaller than the smallest higher order unit
|
|
30389
|
+
into a fraction of that smallest higher order unit
|
|
30390
|
+
*/
|
|
29908
30391
|
for (const [unit, differ] of differs) {
|
|
29909
30392
|
if (units.indexOf(unit) >= 0) {
|
|
29910
30393
|
lowestOrder = unit;
|
|
29911
30394
|
results[unit] = differ(cursor, later);
|
|
29912
30395
|
highWater = earlier.plus(results);
|
|
29913
30396
|
if (highWater > later) {
|
|
30397
|
+
// we overshot the end point, backtrack cursor by 1
|
|
29914
30398
|
results[unit]--;
|
|
29915
30399
|
cursor = earlier.plus(results);
|
|
30400
|
+
|
|
30401
|
+
// if we are still overshooting now, we need to backtrack again
|
|
30402
|
+
// this happens in certain situations when diffing times in different zones,
|
|
30403
|
+
// because this calculation ignores time zones
|
|
30404
|
+
if (cursor > later) {
|
|
30405
|
+
// keep the "overshot by 1" around as highWater
|
|
30406
|
+
highWater = cursor;
|
|
30407
|
+
// backtrack cursor by 1
|
|
30408
|
+
results[unit]--;
|
|
30409
|
+
cursor = earlier.plus(results);
|
|
30410
|
+
}
|
|
29916
30411
|
} else {
|
|
29917
30412
|
cursor = highWater;
|
|
29918
30413
|
}
|
|
@@ -30061,6 +30556,11 @@ function simple(regex) {
|
|
|
30061
30556
|
function escapeToken(value) {
|
|
30062
30557
|
return value.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$&");
|
|
30063
30558
|
}
|
|
30559
|
+
|
|
30560
|
+
/**
|
|
30561
|
+
* @param token
|
|
30562
|
+
* @param {Locale} loc
|
|
30563
|
+
*/
|
|
30064
30564
|
function unitForToken(token, loc) {
|
|
30065
30565
|
const one = digitRegex(loc),
|
|
30066
30566
|
two = digitRegex(loc, "{2}"),
|
|
@@ -30085,9 +30585,9 @@ function unitForToken(token, loc) {
|
|
|
30085
30585
|
switch (t.val) {
|
|
30086
30586
|
// era
|
|
30087
30587
|
case "G":
|
|
30088
|
-
return oneOf(loc.eras("short"
|
|
30588
|
+
return oneOf(loc.eras("short"), 0);
|
|
30089
30589
|
case "GG":
|
|
30090
|
-
return oneOf(loc.eras("long"
|
|
30590
|
+
return oneOf(loc.eras("long"), 0);
|
|
30091
30591
|
// years
|
|
30092
30592
|
case "y":
|
|
30093
30593
|
return intUnit(oneToSix);
|
|
@@ -30105,17 +30605,17 @@ function unitForToken(token, loc) {
|
|
|
30105
30605
|
case "MM":
|
|
30106
30606
|
return intUnit(two);
|
|
30107
30607
|
case "MMM":
|
|
30108
|
-
return oneOf(loc.months("short", true
|
|
30608
|
+
return oneOf(loc.months("short", true), 1);
|
|
30109
30609
|
case "MMMM":
|
|
30110
|
-
return oneOf(loc.months("long", true
|
|
30610
|
+
return oneOf(loc.months("long", true), 1);
|
|
30111
30611
|
case "L":
|
|
30112
30612
|
return intUnit(oneOrTwo);
|
|
30113
30613
|
case "LL":
|
|
30114
30614
|
return intUnit(two);
|
|
30115
30615
|
case "LLL":
|
|
30116
|
-
return oneOf(loc.months("short", false
|
|
30616
|
+
return oneOf(loc.months("short", false), 1);
|
|
30117
30617
|
case "LLLL":
|
|
30118
|
-
return oneOf(loc.months("long", false
|
|
30618
|
+
return oneOf(loc.months("long", false), 1);
|
|
30119
30619
|
// dates
|
|
30120
30620
|
case "d":
|
|
30121
30621
|
return intUnit(oneOrTwo);
|
|
@@ -30175,13 +30675,13 @@ function unitForToken(token, loc) {
|
|
|
30175
30675
|
case "c":
|
|
30176
30676
|
return intUnit(one);
|
|
30177
30677
|
case "EEE":
|
|
30178
|
-
return oneOf(loc.weekdays("short", false
|
|
30678
|
+
return oneOf(loc.weekdays("short", false), 1);
|
|
30179
30679
|
case "EEEE":
|
|
30180
|
-
return oneOf(loc.weekdays("long", false
|
|
30680
|
+
return oneOf(loc.weekdays("long", false), 1);
|
|
30181
30681
|
case "ccc":
|
|
30182
|
-
return oneOf(loc.weekdays("short", true
|
|
30682
|
+
return oneOf(loc.weekdays("short", true), 1);
|
|
30183
30683
|
case "cccc":
|
|
30184
|
-
return oneOf(loc.weekdays("long", true
|
|
30684
|
+
return oneOf(loc.weekdays("long", true), 1);
|
|
30185
30685
|
// offset/zone
|
|
30186
30686
|
case "Z":
|
|
30187
30687
|
case "ZZ":
|
|
@@ -30227,10 +30727,14 @@ const partTypeStyleToTokenVal = {
|
|
|
30227
30727
|
},
|
|
30228
30728
|
dayperiod: "a",
|
|
30229
30729
|
dayPeriod: "a",
|
|
30230
|
-
|
|
30730
|
+
hour12: {
|
|
30231
30731
|
numeric: "h",
|
|
30232
30732
|
"2-digit": "hh"
|
|
30233
30733
|
},
|
|
30734
|
+
hour24: {
|
|
30735
|
+
numeric: "H",
|
|
30736
|
+
"2-digit": "HH"
|
|
30737
|
+
},
|
|
30234
30738
|
minute: {
|
|
30235
30739
|
numeric: "m",
|
|
30236
30740
|
"2-digit": "mm"
|
|
@@ -30244,7 +30748,7 @@ const partTypeStyleToTokenVal = {
|
|
|
30244
30748
|
short: "ZZZ"
|
|
30245
30749
|
}
|
|
30246
30750
|
};
|
|
30247
|
-
function tokenForPart(part, formatOpts) {
|
|
30751
|
+
function tokenForPart(part, formatOpts, resolvedOpts) {
|
|
30248
30752
|
const {
|
|
30249
30753
|
type,
|
|
30250
30754
|
value
|
|
@@ -30257,7 +30761,27 @@ function tokenForPart(part, formatOpts) {
|
|
|
30257
30761
|
};
|
|
30258
30762
|
}
|
|
30259
30763
|
const style = formatOpts[type];
|
|
30260
|
-
|
|
30764
|
+
|
|
30765
|
+
// The user might have explicitly specified hour12 or hourCycle
|
|
30766
|
+
// if so, respect their decision
|
|
30767
|
+
// if not, refer back to the resolvedOpts, which are based on the locale
|
|
30768
|
+
let actualType = type;
|
|
30769
|
+
if (type === "hour") {
|
|
30770
|
+
if (formatOpts.hour12 != null) {
|
|
30771
|
+
actualType = formatOpts.hour12 ? "hour12" : "hour24";
|
|
30772
|
+
} else if (formatOpts.hourCycle != null) {
|
|
30773
|
+
if (formatOpts.hourCycle === "h11" || formatOpts.hourCycle === "h12") {
|
|
30774
|
+
actualType = "hour12";
|
|
30775
|
+
} else {
|
|
30776
|
+
actualType = "hour24";
|
|
30777
|
+
}
|
|
30778
|
+
} else {
|
|
30779
|
+
// tokens only differentiate between 24 hours or not,
|
|
30780
|
+
// so we do not need to check hourCycle here, which is less supported anyways
|
|
30781
|
+
actualType = resolvedOpts.hour12 ? "hour12" : "hour24";
|
|
30782
|
+
}
|
|
30783
|
+
}
|
|
30784
|
+
let val = partTypeStyleToTokenVal[actualType];
|
|
30261
30785
|
if (typeof val === "object") {
|
|
30262
30786
|
val = val[style];
|
|
30263
30787
|
}
|
|
@@ -30433,8 +30957,10 @@ function formatOptsToTokens(formatOpts, locale) {
|
|
|
30433
30957
|
return null;
|
|
30434
30958
|
}
|
|
30435
30959
|
const formatter = Formatter.create(locale, formatOpts);
|
|
30436
|
-
const
|
|
30437
|
-
|
|
30960
|
+
const df = formatter.dtFormatter(getDummyDateTime());
|
|
30961
|
+
const parts = df.formatToParts();
|
|
30962
|
+
const resolvedOpts = df.resolvedOptions();
|
|
30963
|
+
return parts.map(p => tokenForPart(p, formatOpts, resolvedOpts));
|
|
30438
30964
|
}
|
|
30439
30965
|
|
|
30440
30966
|
const nonLeapLadder = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334],
|
|
@@ -30770,13 +31296,13 @@ function toISOTime(o, extended, suppressSeconds, suppressMilliseconds, includeOf
|
|
|
30770
31296
|
if (extended) {
|
|
30771
31297
|
c += ":";
|
|
30772
31298
|
c += padStart(o.c.minute);
|
|
30773
|
-
if (o.c.second !== 0 || !suppressSeconds) {
|
|
31299
|
+
if (o.c.millisecond !== 0 || o.c.second !== 0 || !suppressSeconds) {
|
|
30774
31300
|
c += ":";
|
|
30775
31301
|
}
|
|
30776
31302
|
} else {
|
|
30777
31303
|
c += padStart(o.c.minute);
|
|
30778
31304
|
}
|
|
30779
|
-
if (o.c.second !== 0 || !suppressSeconds) {
|
|
31305
|
+
if (o.c.millisecond !== 0 || o.c.second !== 0 || !suppressSeconds) {
|
|
30780
31306
|
c += padStart(o.c.second);
|
|
30781
31307
|
if (o.c.millisecond !== 0 || !suppressMilliseconds) {
|
|
30782
31308
|
c += ".";
|
|
@@ -31410,7 +31936,7 @@ class DateTime {
|
|
|
31410
31936
|
|
|
31411
31937
|
/**
|
|
31412
31938
|
* Create an invalid DateTime.
|
|
31413
|
-
* @param {
|
|
31939
|
+
* @param {string} reason - simple string of why this DateTime is invalid. Should not contain parameters or anything else data-dependent.
|
|
31414
31940
|
* @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information
|
|
31415
31941
|
* @return {DateTime}
|
|
31416
31942
|
*/
|
|
@@ -31769,6 +32295,41 @@ class DateTime {
|
|
|
31769
32295
|
}
|
|
31770
32296
|
}
|
|
31771
32297
|
|
|
32298
|
+
/**
|
|
32299
|
+
* Get those DateTimes which have the same local time as this DateTime, but a different offset from UTC
|
|
32300
|
+
* in this DateTime's zone. During DST changes local time can be ambiguous, for example
|
|
32301
|
+
* `2023-10-29T02:30:00` in `Europe/Berlin` can have offset `+01:00` or `+02:00`.
|
|
32302
|
+
* This method will return both possible DateTimes if this DateTime's local time is ambiguous.
|
|
32303
|
+
* @returns {DateTime[]}
|
|
32304
|
+
*/
|
|
32305
|
+
getPossibleOffsets() {
|
|
32306
|
+
if (!this.isValid || this.isOffsetFixed) {
|
|
32307
|
+
return [this];
|
|
32308
|
+
}
|
|
32309
|
+
const dayMs = 86400000;
|
|
32310
|
+
const minuteMs = 60000;
|
|
32311
|
+
const localTS = objToLocalTS(this.c);
|
|
32312
|
+
const oEarlier = this.zone.offset(localTS - dayMs);
|
|
32313
|
+
const oLater = this.zone.offset(localTS + dayMs);
|
|
32314
|
+
const o1 = this.zone.offset(localTS - oEarlier * minuteMs);
|
|
32315
|
+
const o2 = this.zone.offset(localTS - oLater * minuteMs);
|
|
32316
|
+
if (o1 === o2) {
|
|
32317
|
+
return [this];
|
|
32318
|
+
}
|
|
32319
|
+
const ts1 = localTS - o1 * minuteMs;
|
|
32320
|
+
const ts2 = localTS - o2 * minuteMs;
|
|
32321
|
+
const c1 = tsToObj(ts1, o1);
|
|
32322
|
+
const c2 = tsToObj(ts2, o2);
|
|
32323
|
+
if (c1.hour === c2.hour && c1.minute === c2.minute && c1.second === c2.second && c1.millisecond === c2.millisecond) {
|
|
32324
|
+
return [clone(this, {
|
|
32325
|
+
ts: ts1
|
|
32326
|
+
}), clone(this, {
|
|
32327
|
+
ts: ts2
|
|
32328
|
+
})];
|
|
32329
|
+
}
|
|
32330
|
+
return [this];
|
|
32331
|
+
}
|
|
32332
|
+
|
|
31772
32333
|
/**
|
|
31773
32334
|
* Returns true if this DateTime is in a leap year, false otherwise
|
|
31774
32335
|
* @example DateTime.local(2016).isInLeapYear //=> true
|
|
@@ -32775,7 +33336,7 @@ function friendlyDateTime(dateTimeish) {
|
|
|
32775
33336
|
}
|
|
32776
33337
|
}
|
|
32777
33338
|
|
|
32778
|
-
const VERSION = "3.3
|
|
33339
|
+
const VERSION = "3.4.3";
|
|
32779
33340
|
|
|
32780
33341
|
exports.DateTime = DateTime;
|
|
32781
33342
|
exports.Duration = Duration;
|