@nmshd/consumption 3.3.1 → 3.4.0
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 +20 -0
- package/dist/modules/notifications/NotificationsController.js +115 -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 +878 -315
- 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 +23 -22
- 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.0",
|
|
21
|
+
build: "108",
|
|
22
|
+
date: "2023-10-12T08:52:05+00:00",
|
|
23
|
+
commit: "1e0773419339aba523c2dd14c4bda254a880e4b7",
|
|
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,445 @@ 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 ConsumptionBaseController_1 = __webpack_require__(/*! ../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
1808
|
+
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
1809
|
+
const LocalNotification_1 = __webpack_require__(/*! ./local/LocalNotification */ "./dist/modules/notifications/local/LocalNotification.js");
|
|
1810
|
+
const LocalNotificationSource_1 = __webpack_require__(/*! ./local/LocalNotificationSource */ "./dist/modules/notifications/local/LocalNotificationSource.js");
|
|
1811
|
+
class NotificationsController extends ConsumptionBaseController_1.ConsumptionBaseController {
|
|
1812
|
+
constructor(localNotifications, processorRegistry, parent, eventBus, device) {
|
|
1813
|
+
super(ConsumptionControllerName_1.ConsumptionControllerName.NotificationsController, parent);
|
|
1814
|
+
this.localNotifications = localNotifications;
|
|
1815
|
+
this.processorRegistry = processorRegistry;
|
|
1816
|
+
this.eventBus = eventBus;
|
|
1817
|
+
this.device = device;
|
|
1818
|
+
}
|
|
1819
|
+
async sent(message) {
|
|
1820
|
+
if (!message.isOwn)
|
|
1821
|
+
throw new Error("Cannot send a Notification from a foreign message.");
|
|
1822
|
+
const content = this.extractNotificationFromMessage(message);
|
|
1823
|
+
const recipients = message.cache.recipients;
|
|
1824
|
+
if (recipients.length > 1)
|
|
1825
|
+
throw new Error("Message contains more than one recipient.");
|
|
1826
|
+
const notification = LocalNotification_1.LocalNotification.from({
|
|
1827
|
+
id: content.id,
|
|
1828
|
+
content,
|
|
1829
|
+
status: LocalNotification_1.LocalNotificationStatus.Sent,
|
|
1830
|
+
isOwn: true,
|
|
1831
|
+
createdAt: message.cache.createdAt,
|
|
1832
|
+
peer: recipients[0].address,
|
|
1833
|
+
source: LocalNotificationSource_1.LocalNotificationSource.message(message.id)
|
|
1834
|
+
});
|
|
1835
|
+
await this.localNotifications.create(notification);
|
|
1836
|
+
return notification;
|
|
1837
|
+
}
|
|
1838
|
+
async received(message) {
|
|
1839
|
+
if (message.isOwn)
|
|
1840
|
+
throw new Error("Cannot receive a Notification from an own message.");
|
|
1841
|
+
const content = this.extractNotificationFromMessage(message);
|
|
1842
|
+
const notification = LocalNotification_1.LocalNotification.from({
|
|
1843
|
+
id: content.id,
|
|
1844
|
+
content,
|
|
1845
|
+
status: LocalNotification_1.LocalNotificationStatus.Open,
|
|
1846
|
+
isOwn: false,
|
|
1847
|
+
createdAt: message.cache.createdAt,
|
|
1848
|
+
peer: message.cache.createdBy,
|
|
1849
|
+
source: LocalNotificationSource_1.LocalNotificationSource.message(message.id),
|
|
1850
|
+
receivedByDevice: this.device.id
|
|
1851
|
+
});
|
|
1852
|
+
await this.localNotifications.create(notification);
|
|
1853
|
+
return notification;
|
|
1854
|
+
}
|
|
1855
|
+
extractNotificationFromMessage(message) {
|
|
1856
|
+
if (!(message.cache.content instanceof content_1.Notification)) {
|
|
1857
|
+
throw new Error("Message does not contain a Notification.");
|
|
1858
|
+
}
|
|
1859
|
+
return message.cache.content;
|
|
1860
|
+
}
|
|
1861
|
+
async processOpenNotifactionsReceivedByCurrentDevice() {
|
|
1862
|
+
const notifications = await this.localNotifications.find({
|
|
1863
|
+
receivedByDevice: this.device.id.toString(),
|
|
1864
|
+
isOwn: false,
|
|
1865
|
+
status: LocalNotification_1.LocalNotificationStatus.Open
|
|
1866
|
+
});
|
|
1867
|
+
const parsed = this.parseArray(notifications, LocalNotification_1.LocalNotification);
|
|
1868
|
+
for (const notification of parsed) {
|
|
1869
|
+
await this.process(notification);
|
|
1870
|
+
}
|
|
1871
|
+
}
|
|
1872
|
+
async process(notification) {
|
|
1873
|
+
if (notification.isOwn)
|
|
1874
|
+
throw new Error("Cannot process own notification.");
|
|
1875
|
+
if (!notification.receivedByDevice?.equals(this.device.id)) {
|
|
1876
|
+
throw new Error("Notification is not received by current device.");
|
|
1877
|
+
}
|
|
1878
|
+
if (![LocalNotification_1.LocalNotificationStatus.Open, LocalNotification_1.LocalNotificationStatus.Error].includes(notification.status)) {
|
|
1879
|
+
throw new Error(`Cannot process notification with status ${notification.status}.`);
|
|
1880
|
+
}
|
|
1881
|
+
const oldDoc = await this.localNotifications.findOne({ id: notification.id.toString() });
|
|
1882
|
+
const processedItems = [];
|
|
1883
|
+
const events = [];
|
|
1884
|
+
try {
|
|
1885
|
+
for (const item of notification.content.items) {
|
|
1886
|
+
const processor = this.processorRegistry.getProcessorForItem(item);
|
|
1887
|
+
const prerequisitesMatched = await processor.checkPrerequisitesOfIncomingNotificationItem(item);
|
|
1888
|
+
if (!prerequisitesMatched) {
|
|
1889
|
+
const index = notification.content.items.indexOf(item);
|
|
1890
|
+
throw new Error(`Prerequisites of notificationItem with index '${index}' of Notification ${notification.id} not met.`);
|
|
1891
|
+
}
|
|
1892
|
+
// we should also rollback the item that failed, therefore we need to push before processing
|
|
1893
|
+
processedItems.push(item);
|
|
1894
|
+
const event = await processor.process(item);
|
|
1895
|
+
if (event)
|
|
1896
|
+
events.push(event);
|
|
1897
|
+
}
|
|
1898
|
+
}
|
|
1899
|
+
catch (e) {
|
|
1900
|
+
this._log.error(`Error while processing notification ${notification.id}: ${e}`);
|
|
1901
|
+
for (const item of processedItems.reverse()) {
|
|
1902
|
+
const processor = this.processorRegistry.getProcessorForItem(item);
|
|
1903
|
+
await processor.rollback(item);
|
|
1904
|
+
}
|
|
1905
|
+
notification.status = LocalNotification_1.LocalNotificationStatus.Error;
|
|
1906
|
+
await this.localNotifications.update(oldDoc, notification);
|
|
1907
|
+
return notification;
|
|
1908
|
+
}
|
|
1909
|
+
notification.status = LocalNotification_1.LocalNotificationStatus.Completed;
|
|
1910
|
+
await this.localNotifications.update(oldDoc, notification);
|
|
1911
|
+
for (const event of events)
|
|
1912
|
+
this.eventBus.publish(event);
|
|
1913
|
+
return notification;
|
|
1914
|
+
}
|
|
1915
|
+
}
|
|
1916
|
+
exports.NotificationsController = NotificationsController;
|
|
1917
|
+
//# sourceMappingURL=NotificationsController.js.map
|
|
1918
|
+
|
|
1919
|
+
/***/ }),
|
|
1920
|
+
|
|
1921
|
+
/***/ "./dist/modules/notifications/index.js":
|
|
1922
|
+
/*!*********************************************!*\
|
|
1923
|
+
!*** ./dist/modules/notifications/index.js ***!
|
|
1924
|
+
\*********************************************/
|
|
1925
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
1926
|
+
|
|
1927
|
+
"use strict";
|
|
1928
|
+
|
|
1929
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
1930
|
+
if (k2 === undefined) k2 = k;
|
|
1931
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
1932
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
1933
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
1934
|
+
}
|
|
1935
|
+
Object.defineProperty(o, k2, desc);
|
|
1936
|
+
}) : (function(o, m, k, k2) {
|
|
1937
|
+
if (k2 === undefined) k2 = k;
|
|
1938
|
+
o[k2] = m[k];
|
|
1939
|
+
}));
|
|
1940
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
1941
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
1942
|
+
};
|
|
1943
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1944
|
+
__exportStar(__webpack_require__(/*! ./NotificationsController */ "./dist/modules/notifications/NotificationsController.js"), exports);
|
|
1945
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/AbstractNotificationItemProcessor */ "./dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.js"), exports);
|
|
1946
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/NotificationItemConstructor */ "./dist/modules/notifications/itemProcessors/NotificationItemConstructor.js"), exports);
|
|
1947
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/NotificationItemProcessorConstructor */ "./dist/modules/notifications/itemProcessors/NotificationItemProcessorConstructor.js"), exports);
|
|
1948
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/NotificationItemProcessorRegistry */ "./dist/modules/notifications/itemProcessors/NotificationItemProcessorRegistry.js"), exports);
|
|
1949
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor */ "./dist/modules/notifications/itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor.js"), exports);
|
|
1950
|
+
__exportStar(__webpack_require__(/*! ./local/LocalNotification */ "./dist/modules/notifications/local/LocalNotification.js"), exports);
|
|
1951
|
+
__exportStar(__webpack_require__(/*! ./local/LocalNotificationSource */ "./dist/modules/notifications/local/LocalNotificationSource.js"), exports);
|
|
1952
|
+
//# sourceMappingURL=index.js.map
|
|
1953
|
+
|
|
1954
|
+
/***/ }),
|
|
1955
|
+
|
|
1956
|
+
/***/ "./dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.js":
|
|
1957
|
+
/*!****************************************************************************************!*\
|
|
1958
|
+
!*** ./dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.js ***!
|
|
1959
|
+
\****************************************************************************************/
|
|
1960
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
1961
|
+
|
|
1962
|
+
"use strict";
|
|
1963
|
+
|
|
1964
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1965
|
+
exports.AbstractNotificationItemProcessor = void 0;
|
|
1966
|
+
class AbstractNotificationItemProcessor {
|
|
1967
|
+
constructor(consumptionController) {
|
|
1968
|
+
this.consumptionController = consumptionController;
|
|
1969
|
+
this.accountController = this.consumptionController.accountController;
|
|
1970
|
+
this.currentIdentityAddress = this.accountController.identity.address;
|
|
1971
|
+
}
|
|
1972
|
+
}
|
|
1973
|
+
exports.AbstractNotificationItemProcessor = AbstractNotificationItemProcessor;
|
|
1974
|
+
//# sourceMappingURL=AbstractNotificationItemProcessor.js.map
|
|
1975
|
+
|
|
1976
|
+
/***/ }),
|
|
1977
|
+
|
|
1978
|
+
/***/ "./dist/modules/notifications/itemProcessors/NotificationItemConstructor.js":
|
|
1979
|
+
/*!**********************************************************************************!*\
|
|
1980
|
+
!*** ./dist/modules/notifications/itemProcessors/NotificationItemConstructor.js ***!
|
|
1981
|
+
\**********************************************************************************/
|
|
1982
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
1983
|
+
|
|
1984
|
+
"use strict";
|
|
1985
|
+
|
|
1986
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1987
|
+
//# sourceMappingURL=NotificationItemConstructor.js.map
|
|
1988
|
+
|
|
1989
|
+
/***/ }),
|
|
1990
|
+
|
|
1991
|
+
/***/ "./dist/modules/notifications/itemProcessors/NotificationItemProcessorConstructor.js":
|
|
1992
|
+
/*!*******************************************************************************************!*\
|
|
1993
|
+
!*** ./dist/modules/notifications/itemProcessors/NotificationItemProcessorConstructor.js ***!
|
|
1994
|
+
\*******************************************************************************************/
|
|
1995
|
+
/***/ ((__unused_webpack_module, exports) => {
|
|
1996
|
+
|
|
1997
|
+
"use strict";
|
|
1998
|
+
|
|
1999
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2000
|
+
//# sourceMappingURL=NotificationItemProcessorConstructor.js.map
|
|
2001
|
+
|
|
2002
|
+
/***/ }),
|
|
2003
|
+
|
|
2004
|
+
/***/ "./dist/modules/notifications/itemProcessors/NotificationItemProcessorRegistry.js":
|
|
2005
|
+
/*!****************************************************************************************!*\
|
|
2006
|
+
!*** ./dist/modules/notifications/itemProcessors/NotificationItemProcessorRegistry.js ***!
|
|
2007
|
+
\****************************************************************************************/
|
|
2008
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
2009
|
+
|
|
2010
|
+
"use strict";
|
|
2011
|
+
|
|
2012
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2013
|
+
exports.NotificationItemProcessorRegistry = void 0;
|
|
2014
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
2015
|
+
class NotificationItemProcessorRegistry {
|
|
2016
|
+
constructor(consumptionController, processors = new Map()) {
|
|
2017
|
+
this.consumptionController = consumptionController;
|
|
2018
|
+
this.processors = processors;
|
|
2019
|
+
}
|
|
2020
|
+
registerProcessor(itemConstructor, processorConstructor) {
|
|
2021
|
+
if (this.processors.has(itemConstructor)) {
|
|
2022
|
+
throw new ConsumptionError_1.ConsumptionError(`There is already a processor registered for '${itemConstructor.name}'. Use 'replaceProcessorForType' if you want to replace it.`);
|
|
2023
|
+
}
|
|
2024
|
+
this.processors.set(itemConstructor, processorConstructor);
|
|
2025
|
+
}
|
|
2026
|
+
registerOrReplaceProcessor(itemConstructor, processorConstructor) {
|
|
2027
|
+
this.processors.set(itemConstructor, processorConstructor);
|
|
2028
|
+
}
|
|
2029
|
+
getProcessorForItem(item) {
|
|
2030
|
+
const constructor = this.processors.get(item.constructor);
|
|
2031
|
+
if (!constructor) {
|
|
2032
|
+
throw new ConsumptionError_1.ConsumptionError(`There was no processor registered for '${item.constructor.name}'.`);
|
|
2033
|
+
}
|
|
2034
|
+
return new constructor(this.consumptionController);
|
|
2035
|
+
}
|
|
2036
|
+
}
|
|
2037
|
+
exports.NotificationItemProcessorRegistry = NotificationItemProcessorRegistry;
|
|
2038
|
+
//# sourceMappingURL=NotificationItemProcessorRegistry.js.map
|
|
2039
|
+
|
|
2040
|
+
/***/ }),
|
|
2041
|
+
|
|
2042
|
+
/***/ "./dist/modules/notifications/itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor.js":
|
|
2043
|
+
/*!*********************************************************************************************************************!*\
|
|
2044
|
+
!*** ./dist/modules/notifications/itemProcessors/attributeSucceeded/AttributeSucceededNotificationItemProcessor.js ***!
|
|
2045
|
+
\*********************************************************************************************************************/
|
|
2046
|
+
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
|
|
2047
|
+
|
|
2048
|
+
"use strict";
|
|
2049
|
+
|
|
2050
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2051
|
+
exports.AttributeSucceededNotificationItemProcessor = void 0;
|
|
2052
|
+
const AbstractNotificationItemProcessor_1 = __webpack_require__(/*! ../AbstractNotificationItemProcessor */ "./dist/modules/notifications/itemProcessors/AbstractNotificationItemProcessor.js");
|
|
2053
|
+
class AttributeSucceededNotificationItemProcessor extends AbstractNotificationItemProcessor_1.AbstractNotificationItemProcessor {
|
|
2054
|
+
checkPrerequisitesOfIncomingNotificationItem(_notificationItem) {
|
|
2055
|
+
throw new Error("Method not implemented.");
|
|
2056
|
+
}
|
|
2057
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
2058
|
+
async process(_notificationItem) {
|
|
2059
|
+
throw new Error("Method not implemented.");
|
|
2060
|
+
}
|
|
2061
|
+
rollback() {
|
|
2062
|
+
throw new Error("Method not implemented.");
|
|
2063
|
+
}
|
|
2064
|
+
}
|
|
2065
|
+
exports.AttributeSucceededNotificationItemProcessor = AttributeSucceededNotificationItemProcessor;
|
|
2066
|
+
//# sourceMappingURL=AttributeSucceededNotificationItemProcessor.js.map
|
|
2067
|
+
|
|
2068
|
+
/***/ }),
|
|
2069
|
+
|
|
2070
|
+
/***/ "./dist/modules/notifications/local/LocalNotification.js":
|
|
2071
|
+
/*!***************************************************************!*\
|
|
2072
|
+
!*** ./dist/modules/notifications/local/LocalNotification.js ***!
|
|
2073
|
+
\***************************************************************/
|
|
2074
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2075
|
+
|
|
2076
|
+
"use strict";
|
|
2077
|
+
|
|
2078
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2079
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2080
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2081
|
+
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;
|
|
2082
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2083
|
+
};
|
|
2084
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
2085
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2086
|
+
};
|
|
2087
|
+
var LocalNotification_1;
|
|
2088
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2089
|
+
exports.LocalNotification = exports.LocalNotificationStatus = void 0;
|
|
2090
|
+
const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
|
|
2091
|
+
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
2092
|
+
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
2093
|
+
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
2094
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
2095
|
+
const LocalNotificationSource_1 = __webpack_require__(/*! ./LocalNotificationSource */ "./dist/modules/notifications/local/LocalNotificationSource.js");
|
|
2096
|
+
var LocalNotificationStatus;
|
|
2097
|
+
(function (LocalNotificationStatus) {
|
|
2098
|
+
LocalNotificationStatus["Open"] = "Open";
|
|
2099
|
+
LocalNotificationStatus["Sent"] = "Sent";
|
|
2100
|
+
LocalNotificationStatus["Completed"] = "Completed";
|
|
2101
|
+
LocalNotificationStatus["Error"] = "Error";
|
|
2102
|
+
})(LocalNotificationStatus || (exports.LocalNotificationStatus = LocalNotificationStatus = {}));
|
|
2103
|
+
let LocalNotification = LocalNotification_1 = class LocalNotification extends transport_1.CoreSynchronizable {
|
|
2104
|
+
constructor() {
|
|
2105
|
+
super(...arguments);
|
|
2106
|
+
this.technicalProperties = [
|
|
2107
|
+
"@type",
|
|
2108
|
+
"@context",
|
|
2109
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.isOwn),
|
|
2110
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.peer),
|
|
2111
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.createdAt),
|
|
2112
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.receivedByDevice),
|
|
2113
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.status),
|
|
2114
|
+
(0, ts_simple_nameof_1.nameof)((r) => r.source)
|
|
2115
|
+
];
|
|
2116
|
+
this.userdataProperties = [(0, ts_simple_nameof_1.nameof)((r) => r.content)];
|
|
2117
|
+
}
|
|
2118
|
+
static postFrom(value) {
|
|
2119
|
+
if (!(value instanceof LocalNotification_1)) {
|
|
2120
|
+
throw new ConsumptionError_1.ConsumptionError("this should never happen");
|
|
2121
|
+
}
|
|
2122
|
+
if (value.isOwn && typeof value.receivedByDevice !== "undefined") {
|
|
2123
|
+
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.`);
|
|
2124
|
+
}
|
|
2125
|
+
if (!value.isOwn && typeof value.receivedByDevice === "undefined") {
|
|
2126
|
+
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.`);
|
|
2127
|
+
}
|
|
2128
|
+
return value;
|
|
2129
|
+
}
|
|
2130
|
+
static from(value) {
|
|
2131
|
+
return this.fromAny(value);
|
|
2132
|
+
}
|
|
2133
|
+
};
|
|
2134
|
+
exports.LocalNotification = LocalNotification;
|
|
2135
|
+
__decorate([
|
|
2136
|
+
(0, ts_serval_1.serialize)(),
|
|
2137
|
+
(0, ts_serval_1.validate)(),
|
|
2138
|
+
__metadata("design:type", Boolean)
|
|
2139
|
+
], LocalNotification.prototype, "isOwn", void 0);
|
|
2140
|
+
__decorate([
|
|
2141
|
+
(0, ts_serval_1.serialize)(),
|
|
2142
|
+
(0, ts_serval_1.validate)(),
|
|
2143
|
+
__metadata("design:type", transport_1.CoreAddress)
|
|
2144
|
+
], LocalNotification.prototype, "peer", void 0);
|
|
2145
|
+
__decorate([
|
|
2146
|
+
(0, ts_serval_1.serialize)(),
|
|
2147
|
+
(0, ts_serval_1.validate)(),
|
|
2148
|
+
__metadata("design:type", transport_1.CoreDate)
|
|
2149
|
+
], LocalNotification.prototype, "createdAt", void 0);
|
|
2150
|
+
__decorate([
|
|
2151
|
+
(0, ts_serval_1.serialize)(),
|
|
2152
|
+
(0, ts_serval_1.validate)({ nullable: true }),
|
|
2153
|
+
__metadata("design:type", transport_1.CoreId)
|
|
2154
|
+
], LocalNotification.prototype, "receivedByDevice", void 0);
|
|
2155
|
+
__decorate([
|
|
2156
|
+
(0, ts_serval_1.serialize)(),
|
|
2157
|
+
(0, ts_serval_1.validate)(),
|
|
2158
|
+
__metadata("design:type", content_1.Notification)
|
|
2159
|
+
], LocalNotification.prototype, "content", void 0);
|
|
2160
|
+
__decorate([
|
|
2161
|
+
(0, ts_serval_1.serialize)(),
|
|
2162
|
+
(0, ts_serval_1.validate)(),
|
|
2163
|
+
__metadata("design:type", String)
|
|
2164
|
+
], LocalNotification.prototype, "status", void 0);
|
|
2165
|
+
__decorate([
|
|
2166
|
+
(0, ts_serval_1.serialize)(),
|
|
2167
|
+
(0, ts_serval_1.validate)(),
|
|
2168
|
+
__metadata("design:type", LocalNotificationSource_1.LocalNotificationSource)
|
|
2169
|
+
], LocalNotification.prototype, "source", void 0);
|
|
2170
|
+
exports.LocalNotification = LocalNotification = LocalNotification_1 = __decorate([
|
|
2171
|
+
(0, ts_serval_1.type)("LocalNotification")
|
|
2172
|
+
], LocalNotification);
|
|
2173
|
+
//# sourceMappingURL=LocalNotification.js.map
|
|
2174
|
+
|
|
2175
|
+
/***/ }),
|
|
2176
|
+
|
|
2177
|
+
/***/ "./dist/modules/notifications/local/LocalNotificationSource.js":
|
|
2178
|
+
/*!*********************************************************************!*\
|
|
2179
|
+
!*** ./dist/modules/notifications/local/LocalNotificationSource.js ***!
|
|
2180
|
+
\*********************************************************************/
|
|
2181
|
+
/***/ (function(__unused_webpack_module, exports, __webpack_require__) {
|
|
2182
|
+
|
|
2183
|
+
"use strict";
|
|
2184
|
+
|
|
2185
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2186
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
2187
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
2188
|
+
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;
|
|
2189
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
2190
|
+
};
|
|
2191
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
2192
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
2193
|
+
};
|
|
2194
|
+
var LocalNotificationSource_1;
|
|
2195
|
+
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2196
|
+
exports.LocalNotificationSource = void 0;
|
|
2197
|
+
const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
|
|
2198
|
+
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
2199
|
+
let LocalNotificationSource = LocalNotificationSource_1 = class LocalNotificationSource extends transport_1.CoreSerializable {
|
|
2200
|
+
static from(value) {
|
|
2201
|
+
return this.fromAny(value);
|
|
2202
|
+
}
|
|
2203
|
+
static message(reference) {
|
|
2204
|
+
return LocalNotificationSource_1.from({
|
|
2205
|
+
type: "Message",
|
|
2206
|
+
reference
|
|
2207
|
+
});
|
|
2208
|
+
}
|
|
2209
|
+
};
|
|
2210
|
+
exports.LocalNotificationSource = LocalNotificationSource;
|
|
2211
|
+
__decorate([
|
|
2212
|
+
(0, ts_serval_1.serialize)(),
|
|
2213
|
+
(0, ts_serval_1.validate)(),
|
|
2214
|
+
__metadata("design:type", String)
|
|
2215
|
+
], LocalNotificationSource.prototype, "type", void 0);
|
|
2216
|
+
__decorate([
|
|
2217
|
+
(0, ts_serval_1.serialize)(),
|
|
2218
|
+
(0, ts_serval_1.validate)(),
|
|
2219
|
+
__metadata("design:type", transport_1.CoreId)
|
|
2220
|
+
], LocalNotificationSource.prototype, "reference", void 0);
|
|
2221
|
+
exports.LocalNotificationSource = LocalNotificationSource = LocalNotificationSource_1 = __decorate([
|
|
2222
|
+
(0, ts_serval_1.type)("LocalNotificationSource")
|
|
2223
|
+
], LocalNotificationSource);
|
|
2224
|
+
//# sourceMappingURL=LocalNotificationSource.js.map
|
|
2225
|
+
|
|
2226
|
+
/***/ }),
|
|
2227
|
+
|
|
1801
2228
|
/***/ "./dist/modules/requests/events/IncomingRequestReceivedEvent.js":
|
|
1802
2229
|
/*!**********************************************************************!*\
|
|
1803
2230
|
!*** ./dist/modules/requests/events/IncomingRequestReceivedEvent.js ***!
|
|
@@ -1809,12 +2236,12 @@ __exportStar(__webpack_require__(/*! ./settings */ "./dist/modules/settings/inde
|
|
|
1809
2236
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1810
2237
|
exports.IncomingRequestReceivedEvent = void 0;
|
|
1811
2238
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1812
|
-
const
|
|
2239
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1813
2240
|
class IncomingRequestReceivedEvent extends transport_1.TransportDataEvent {
|
|
1814
2241
|
constructor(eventTargetAddress, data) {
|
|
1815
2242
|
super(IncomingRequestReceivedEvent.namespace, eventTargetAddress, data);
|
|
1816
2243
|
if (data.isOwn)
|
|
1817
|
-
throw new
|
|
2244
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create this event for an outgoing Request");
|
|
1818
2245
|
}
|
|
1819
2246
|
}
|
|
1820
2247
|
exports.IncomingRequestReceivedEvent = IncomingRequestReceivedEvent;
|
|
@@ -1834,12 +2261,12 @@ IncomingRequestReceivedEvent.namespace = "consumption.incomingRequestReceived";
|
|
|
1834
2261
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1835
2262
|
exports.IncomingRequestStatusChangedEvent = void 0;
|
|
1836
2263
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1837
|
-
const
|
|
2264
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1838
2265
|
class IncomingRequestStatusChangedEvent extends transport_1.TransportDataEvent {
|
|
1839
2266
|
constructor(eventTargetAddress, data) {
|
|
1840
2267
|
super(IncomingRequestStatusChangedEvent.namespace, eventTargetAddress, data);
|
|
1841
2268
|
if (data.request.isOwn)
|
|
1842
|
-
throw new
|
|
2269
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create this event for an outgoing Request");
|
|
1843
2270
|
}
|
|
1844
2271
|
}
|
|
1845
2272
|
exports.IncomingRequestStatusChangedEvent = IncomingRequestStatusChangedEvent;
|
|
@@ -1859,12 +2286,12 @@ IncomingRequestStatusChangedEvent.namespace = "consumption.incomingRequestStatus
|
|
|
1859
2286
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1860
2287
|
exports.OutgoingRequestCreatedAndCompletedEvent = void 0;
|
|
1861
2288
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1862
|
-
const
|
|
2289
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1863
2290
|
class OutgoingRequestCreatedAndCompletedEvent extends transport_1.TransportDataEvent {
|
|
1864
2291
|
constructor(eventTargetAddress, data) {
|
|
1865
2292
|
super(OutgoingRequestCreatedAndCompletedEvent.namespace, eventTargetAddress, data);
|
|
1866
2293
|
if (!data.isOwn)
|
|
1867
|
-
throw new
|
|
2294
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create this event for an incoming Request");
|
|
1868
2295
|
}
|
|
1869
2296
|
}
|
|
1870
2297
|
exports.OutgoingRequestCreatedAndCompletedEvent = OutgoingRequestCreatedAndCompletedEvent;
|
|
@@ -1884,12 +2311,12 @@ OutgoingRequestCreatedAndCompletedEvent.namespace = "consumption.outgoingRequest
|
|
|
1884
2311
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1885
2312
|
exports.OutgoingRequestCreatedEvent = void 0;
|
|
1886
2313
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1887
|
-
const
|
|
2314
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1888
2315
|
class OutgoingRequestCreatedEvent extends transport_1.TransportDataEvent {
|
|
1889
2316
|
constructor(eventTargetAddress, data) {
|
|
1890
2317
|
super(OutgoingRequestCreatedEvent.namespace, eventTargetAddress, data);
|
|
1891
2318
|
if (!data.isOwn)
|
|
1892
|
-
throw new
|
|
2319
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create this event for an incoming Request");
|
|
1893
2320
|
}
|
|
1894
2321
|
}
|
|
1895
2322
|
exports.OutgoingRequestCreatedEvent = OutgoingRequestCreatedEvent;
|
|
@@ -1909,12 +2336,12 @@ OutgoingRequestCreatedEvent.namespace = "consumption.outgoingRequestCreated";
|
|
|
1909
2336
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
1910
2337
|
exports.OutgoingRequestStatusChangedEvent = void 0;
|
|
1911
2338
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1912
|
-
const
|
|
2339
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
1913
2340
|
class OutgoingRequestStatusChangedEvent extends transport_1.TransportDataEvent {
|
|
1914
2341
|
constructor(eventTargetAddress, data) {
|
|
1915
2342
|
super(OutgoingRequestStatusChangedEvent.namespace, eventTargetAddress, data);
|
|
1916
2343
|
if (!data.request.isOwn)
|
|
1917
|
-
throw new
|
|
2344
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create this event for an incoming Request");
|
|
1918
2345
|
}
|
|
1919
2346
|
}
|
|
1920
2347
|
exports.OutgoingRequestStatusChangedEvent = OutgoingRequestStatusChangedEvent;
|
|
@@ -1967,7 +2394,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
1967
2394
|
exports.DecideRequestParametersValidator = void 0;
|
|
1968
2395
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
1969
2396
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
1970
|
-
const
|
|
2397
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
1971
2398
|
const ValidationResult_1 = __webpack_require__(/*! ../itemProcessors/ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
1972
2399
|
const DecideRequestItemGroupParameters_1 = __webpack_require__(/*! ./decide/DecideRequestItemGroupParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemGroupParameters.js");
|
|
1973
2400
|
const DecideRequestItemParameters_1 = __webpack_require__(/*! ./decide/DecideRequestItemParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemParameters.js");
|
|
@@ -1977,7 +2404,7 @@ class DecideRequestParametersValidator {
|
|
|
1977
2404
|
throw new Error("The response is invalid because the id of the Request does not match the id of the Response.");
|
|
1978
2405
|
}
|
|
1979
2406
|
if (params.items.length !== request.content.items.length) {
|
|
1980
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2407
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.invalidNumberOfItems("Number of items in Request and Response do not match"));
|
|
1981
2408
|
}
|
|
1982
2409
|
const validationResults = request.content.items.map((requestItem, index) => this.checkItemOrGroup(requestItem, params.items[index], params.accept));
|
|
1983
2410
|
return ValidationResult_1.ValidationResult.fromItems(validationResults);
|
|
@@ -1990,29 +2417,29 @@ class DecideRequestParametersValidator {
|
|
|
1990
2417
|
}
|
|
1991
2418
|
checkItem(requestItem, response, isParentAccepted) {
|
|
1992
2419
|
if ((0, DecideRequestItemGroupParameters_1.isDecideRequestItemGroupParametersJSON)(response)) {
|
|
1993
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2420
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.requestItemAnsweredAsRequestItemGroup());
|
|
1994
2421
|
}
|
|
1995
2422
|
if (!isParentAccepted && response.accept) {
|
|
1996
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2423
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.itemAcceptedButParentNotAccepted("The RequestItem was accepted, but the parent was not accepted."));
|
|
1997
2424
|
}
|
|
1998
2425
|
if (isParentAccepted && requestItem.mustBeAccepted && !response.accept) {
|
|
1999
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2426
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.mustBeAcceptedItemNotAccepted("The RequestItem is flagged as 'mustBeAccepted', but it was not accepted."));
|
|
2000
2427
|
}
|
|
2001
2428
|
return ValidationResult_1.ValidationResult.success();
|
|
2002
2429
|
}
|
|
2003
2430
|
checkItemGroup(requestItemGroup, responseItemGroup, isParentAccepted) {
|
|
2004
2431
|
if ((0, DecideRequestItemParameters_1.isDecideRequestItemParametersJSON)(responseItemGroup)) {
|
|
2005
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2432
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.requestItemGroupAnsweredAsRequestItem());
|
|
2006
2433
|
}
|
|
2007
2434
|
if (responseItemGroup.items.length !== requestItemGroup.items.length) {
|
|
2008
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2435
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.invalidNumberOfItems("Number of items in RequestItemGroup and ResponseItemGroup do not match"));
|
|
2009
2436
|
}
|
|
2010
2437
|
const isGroupAccepted = responseItemGroup.items.some((value) => value.accept);
|
|
2011
2438
|
if (!isParentAccepted && isGroupAccepted) {
|
|
2012
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2439
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.decideValidation.itemAcceptedButParentNotAccepted("The RequestItemGroup was accepted, but the parent was not accepted."));
|
|
2013
2440
|
}
|
|
2014
2441
|
if (isParentAccepted && requestItemGroup.mustBeAccepted && !isGroupAccepted) {
|
|
2015
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2442
|
+
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
2443
|
}
|
|
2017
2444
|
const validationResults = requestItemGroup.items.map((requestItem, index) => this.checkItem(requestItem, responseItemGroup.items[index], isGroupAccepted));
|
|
2018
2445
|
return ValidationResult_1.ValidationResult.fromItems(validationResults);
|
|
@@ -2036,21 +2463,25 @@ exports.IncomingRequestsController = void 0;
|
|
|
2036
2463
|
const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-serval");
|
|
2037
2464
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
2038
2465
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
2039
|
-
const
|
|
2466
|
+
const ConsumptionBaseController_1 = __webpack_require__(/*! ../../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
2467
|
+
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
2468
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
2469
|
+
const ConsumptionIds_1 = __webpack_require__(/*! ../../../consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js");
|
|
2470
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
2040
2471
|
const events_1 = __webpack_require__(/*! ../events */ "./dist/modules/requests/events/index.js");
|
|
2041
2472
|
const ValidationResult_1 = __webpack_require__(/*! ../itemProcessors/ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
2042
2473
|
const LocalRequest_1 = __webpack_require__(/*! ../local/LocalRequest */ "./dist/modules/requests/local/LocalRequest.js");
|
|
2043
2474
|
const LocalRequestStatus_1 = __webpack_require__(/*! ../local/LocalRequestStatus */ "./dist/modules/requests/local/LocalRequestStatus.js");
|
|
2044
2475
|
const LocalResponse_1 = __webpack_require__(/*! ../local/LocalResponse */ "./dist/modules/requests/local/LocalResponse.js");
|
|
2476
|
+
const DecideRequestParametersValidator_1 = __webpack_require__(/*! ./DecideRequestParametersValidator */ "./dist/modules/requests/incoming/DecideRequestParametersValidator.js");
|
|
2045
2477
|
const CheckPrerequisitesOfIncomingRequestParameters_1 = __webpack_require__(/*! ./checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters */ "./dist/modules/requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters.js");
|
|
2046
2478
|
const CompleteIncomingRequestParameters_1 = __webpack_require__(/*! ./complete/CompleteIncomingRequestParameters */ "./dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.js");
|
|
2047
2479
|
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
2480
|
const ReceivedIncomingRequestParameters_1 = __webpack_require__(/*! ./received/ReceivedIncomingRequestParameters */ "./dist/modules/requests/incoming/received/ReceivedIncomingRequestParameters.js");
|
|
2050
2481
|
const RequireManualDecisionOfIncomingRequestParameters_1 = __webpack_require__(/*! ./requireManualDecision/RequireManualDecisionOfIncomingRequestParameters */ "./dist/modules/requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters.js");
|
|
2051
|
-
class IncomingRequestsController extends
|
|
2482
|
+
class IncomingRequestsController extends ConsumptionBaseController_1.ConsumptionBaseController {
|
|
2052
2483
|
constructor(localRequests, processorRegistry, parent, eventBus, identity) {
|
|
2053
|
-
super(
|
|
2484
|
+
super(ConsumptionControllerName_1.ConsumptionControllerName.RequestsController, parent);
|
|
2054
2485
|
this.localRequests = localRequests;
|
|
2055
2486
|
this.processorRegistry = processorRegistry;
|
|
2056
2487
|
this.eventBus = eventBus;
|
|
@@ -2061,7 +2492,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2061
2492
|
const parsedParams = ReceivedIncomingRequestParameters_1.ReceivedIncomingRequestParameters.from(params);
|
|
2062
2493
|
const infoFromSource = this.extractInfoFromSource(parsedParams.requestSourceObject);
|
|
2063
2494
|
const request = LocalRequest_1.LocalRequest.from({
|
|
2064
|
-
id: parsedParams.receivedRequest.id ?? (await
|
|
2495
|
+
id: parsedParams.receivedRequest.id ?? (await ConsumptionIds_1.ConsumptionIds.request.generate()),
|
|
2065
2496
|
createdAt: transport_1.CoreDate.utc(),
|
|
2066
2497
|
status: LocalRequestStatus_1.LocalRequestStatus.Open,
|
|
2067
2498
|
content: parsedParams.receivedRequest,
|
|
@@ -2082,7 +2513,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2082
2513
|
}
|
|
2083
2514
|
extractInfoFromMessage(message) {
|
|
2084
2515
|
if (message.isOwn)
|
|
2085
|
-
throw new
|
|
2516
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create incoming Request from own Message");
|
|
2086
2517
|
return {
|
|
2087
2518
|
peer: message.cache.createdBy,
|
|
2088
2519
|
source: {
|
|
@@ -2093,7 +2524,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2093
2524
|
}
|
|
2094
2525
|
extractInfoFromRelationshipTemplate(template) {
|
|
2095
2526
|
if (template.isOwn)
|
|
2096
|
-
throw new
|
|
2527
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create incoming Request from own Relationship Template");
|
|
2097
2528
|
return {
|
|
2098
2529
|
peer: template.cache.createdBy,
|
|
2099
2530
|
source: {
|
|
@@ -2192,22 +2623,22 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2192
2623
|
}
|
|
2193
2624
|
catch (e) {
|
|
2194
2625
|
if (e instanceof ts_serval_1.ServalError) {
|
|
2195
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2626
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.servalErrorDuringRequestItemProcessing(e));
|
|
2196
2627
|
}
|
|
2197
|
-
return ValidationResult_1.ValidationResult.error(
|
|
2628
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.unexpectedErrorDuringRequestItemProcessing(e));
|
|
2198
2629
|
}
|
|
2199
2630
|
}
|
|
2200
2631
|
async accept(params) {
|
|
2201
2632
|
const canAccept = await this.canAccept(params);
|
|
2202
2633
|
if (!canAccept.isSuccess()) {
|
|
2203
|
-
throw new
|
|
2634
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot accept the Request with the given parameters. Call 'canAccept' to get more information.");
|
|
2204
2635
|
}
|
|
2205
2636
|
return await this.decide({ ...params, accept: true });
|
|
2206
2637
|
}
|
|
2207
2638
|
async reject(params) {
|
|
2208
2639
|
const canReject = await this.canReject(params);
|
|
2209
2640
|
if (!canReject.isSuccess()) {
|
|
2210
|
-
throw new
|
|
2641
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot reject the Request with the given parameters. Call 'canReject' to get more information.");
|
|
2211
2642
|
}
|
|
2212
2643
|
return await this.decide({ ...params, accept: false });
|
|
2213
2644
|
}
|
|
@@ -2272,14 +2703,14 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2272
2703
|
if (e instanceof Error) {
|
|
2273
2704
|
details = ` Details: ${e.message}`;
|
|
2274
2705
|
}
|
|
2275
|
-
throw new
|
|
2706
|
+
throw new ConsumptionError_1.ConsumptionError(`An error occurred while processing a '${requestItem.constructor.name}'. You should contact the developer of this RequestItem.${details}}`);
|
|
2276
2707
|
}
|
|
2277
2708
|
}
|
|
2278
2709
|
async complete(params) {
|
|
2279
2710
|
const parsedParams = CompleteIncomingRequestParameters_1.CompleteIncomingRequestParameters.from(params);
|
|
2280
2711
|
const request = await this.getOrThrow(parsedParams.requestId);
|
|
2281
2712
|
if (request.isOwn) {
|
|
2282
|
-
throw new
|
|
2713
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot decide own Request");
|
|
2283
2714
|
}
|
|
2284
2715
|
this.assertRequestStatus(request, LocalRequestStatus_1.LocalRequestStatus.Decided);
|
|
2285
2716
|
const requestIsRejected = request.response.content.result === content_1.ResponseResult.Rejected;
|
|
@@ -2291,7 +2722,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2291
2722
|
});
|
|
2292
2723
|
}
|
|
2293
2724
|
else if (!requestIsRejected || !requestIsFromTemplate) {
|
|
2294
|
-
throw new
|
|
2725
|
+
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
2726
|
}
|
|
2296
2727
|
request.changeStatus(LocalRequestStatus_1.LocalRequestStatus.Completed);
|
|
2297
2728
|
await this.update(request);
|
|
@@ -2333,7 +2764,7 @@ class IncomingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
2333
2764
|
}
|
|
2334
2765
|
assertRequestStatus(request, ...status) {
|
|
2335
2766
|
if (!status.includes(request.status)) {
|
|
2336
|
-
throw new
|
|
2767
|
+
throw new ConsumptionError_1.ConsumptionError(`Local Request has to be in status '${status.join("/")}'.`);
|
|
2337
2768
|
}
|
|
2338
2769
|
}
|
|
2339
2770
|
async updateRequestExpiry(request) {
|
|
@@ -2374,15 +2805,15 @@ let CheckPrerequisitesOfIncomingRequestParameters = class CheckPrerequisitesOfIn
|
|
|
2374
2805
|
return this.fromAny(value);
|
|
2375
2806
|
}
|
|
2376
2807
|
};
|
|
2808
|
+
exports.CheckPrerequisitesOfIncomingRequestParameters = CheckPrerequisitesOfIncomingRequestParameters;
|
|
2377
2809
|
__decorate([
|
|
2378
2810
|
(0, ts_serval_1.serialize)(),
|
|
2379
2811
|
(0, ts_serval_1.validate)(),
|
|
2380
2812
|
__metadata("design:type", transport_1.CoreId)
|
|
2381
2813
|
], CheckPrerequisitesOfIncomingRequestParameters.prototype, "requestId", void 0);
|
|
2382
|
-
CheckPrerequisitesOfIncomingRequestParameters = __decorate([
|
|
2814
|
+
exports.CheckPrerequisitesOfIncomingRequestParameters = CheckPrerequisitesOfIncomingRequestParameters = __decorate([
|
|
2383
2815
|
(0, ts_serval_1.type)("CheckPrerequisitesOfIncomingRequestParameters")
|
|
2384
2816
|
], CheckPrerequisitesOfIncomingRequestParameters);
|
|
2385
|
-
exports.CheckPrerequisitesOfIncomingRequestParameters = CheckPrerequisitesOfIncomingRequestParameters;
|
|
2386
2817
|
//# sourceMappingURL=CheckPrerequisitesOfIncomingRequestParameters.js.map
|
|
2387
2818
|
|
|
2388
2819
|
/***/ }),
|
|
@@ -2413,6 +2844,7 @@ class CompleteIncomingRequestParameters extends ts_serval_1.Serializable {
|
|
|
2413
2844
|
return this.fromAny(value);
|
|
2414
2845
|
}
|
|
2415
2846
|
}
|
|
2847
|
+
exports.CompleteIncomingRequestParameters = CompleteIncomingRequestParameters;
|
|
2416
2848
|
__decorate([
|
|
2417
2849
|
(0, ts_serval_1.serialize)(),
|
|
2418
2850
|
(0, ts_serval_1.validate)(),
|
|
@@ -2423,7 +2855,6 @@ __decorate([
|
|
|
2423
2855
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
2424
2856
|
__metadata("design:type", Object)
|
|
2425
2857
|
], CompleteIncomingRequestParameters.prototype, "responseSourceObject", void 0);
|
|
2426
|
-
exports.CompleteIncomingRequestParameters = CompleteIncomingRequestParameters;
|
|
2427
2858
|
//# sourceMappingURL=CompleteIncomingRequestParameters.js.map
|
|
2428
2859
|
|
|
2429
2860
|
/***/ }),
|
|
@@ -2516,6 +2947,7 @@ let InternalDecideRequestParameters = class InternalDecideRequestParameters exte
|
|
|
2516
2947
|
return this.fromAny(value);
|
|
2517
2948
|
}
|
|
2518
2949
|
};
|
|
2950
|
+
exports.InternalDecideRequestParameters = InternalDecideRequestParameters;
|
|
2519
2951
|
__decorate([
|
|
2520
2952
|
(0, ts_serval_1.serialize)(),
|
|
2521
2953
|
(0, ts_serval_1.validate)(),
|
|
@@ -2531,10 +2963,9 @@ __decorate([
|
|
|
2531
2963
|
(0, ts_serval_1.validate)(),
|
|
2532
2964
|
__metadata("design:type", Boolean)
|
|
2533
2965
|
], InternalDecideRequestParameters.prototype, "accept", void 0);
|
|
2534
|
-
InternalDecideRequestParameters = __decorate([
|
|
2966
|
+
exports.InternalDecideRequestParameters = InternalDecideRequestParameters = __decorate([
|
|
2535
2967
|
(0, ts_serval_1.type)("InternalDecideRequestParameters")
|
|
2536
2968
|
], InternalDecideRequestParameters);
|
|
2537
|
-
exports.InternalDecideRequestParameters = InternalDecideRequestParameters;
|
|
2538
2969
|
//# sourceMappingURL=InternalDecideRequestParameters.js.map
|
|
2539
2970
|
|
|
2540
2971
|
/***/ }),
|
|
@@ -2579,6 +3010,7 @@ let ReceivedIncomingRequestParameters = class ReceivedIncomingRequestParameters
|
|
|
2579
3010
|
return this.fromAny(value);
|
|
2580
3011
|
}
|
|
2581
3012
|
};
|
|
3013
|
+
exports.ReceivedIncomingRequestParameters = ReceivedIncomingRequestParameters;
|
|
2582
3014
|
__decorate([
|
|
2583
3015
|
(0, ts_serval_1.serialize)(),
|
|
2584
3016
|
(0, ts_serval_1.validate)(),
|
|
@@ -2589,10 +3021,9 @@ __decorate([
|
|
|
2589
3021
|
(0, ts_serval_1.validate)(),
|
|
2590
3022
|
__metadata("design:type", Object)
|
|
2591
3023
|
], ReceivedIncomingRequestParameters.prototype, "requestSourceObject", void 0);
|
|
2592
|
-
ReceivedIncomingRequestParameters = __decorate([
|
|
3024
|
+
exports.ReceivedIncomingRequestParameters = ReceivedIncomingRequestParameters = __decorate([
|
|
2593
3025
|
(0, ts_serval_1.type)("ReceivedIncomingRequestParameters")
|
|
2594
3026
|
], ReceivedIncomingRequestParameters);
|
|
2595
|
-
exports.ReceivedIncomingRequestParameters = ReceivedIncomingRequestParameters;
|
|
2596
3027
|
//# sourceMappingURL=ReceivedIncomingRequestParameters.js.map
|
|
2597
3028
|
|
|
2598
3029
|
/***/ }),
|
|
@@ -2623,12 +3054,12 @@ class RequireManualDecisionOfIncomingRequestParameters extends ts_serval_1.Seria
|
|
|
2623
3054
|
return this.fromAny(value);
|
|
2624
3055
|
}
|
|
2625
3056
|
}
|
|
3057
|
+
exports.RequireManualDecisionOfIncomingRequestParameters = RequireManualDecisionOfIncomingRequestParameters;
|
|
2626
3058
|
__decorate([
|
|
2627
3059
|
(0, ts_serval_1.serialize)(),
|
|
2628
3060
|
(0, ts_serval_1.validate)(),
|
|
2629
3061
|
__metadata("design:type", transport_1.CoreId)
|
|
2630
3062
|
], RequireManualDecisionOfIncomingRequestParameters.prototype, "requestId", void 0);
|
|
2631
|
-
exports.RequireManualDecisionOfIncomingRequestParameters = RequireManualDecisionOfIncomingRequestParameters;
|
|
2632
3063
|
//# sourceMappingURL=RequireManualDecisionOfIncomingRequestParameters.js.map
|
|
2633
3064
|
|
|
2634
3065
|
/***/ }),
|
|
@@ -2657,6 +3088,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
2657
3088
|
};
|
|
2658
3089
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2659
3090
|
__exportStar(__webpack_require__(/*! ./events */ "./dist/modules/requests/events/index.js"), exports);
|
|
3091
|
+
__exportStar(__webpack_require__(/*! ./incoming/DecideRequestParametersValidator */ "./dist/modules/requests/incoming/DecideRequestParametersValidator.js"), exports);
|
|
3092
|
+
__exportStar(__webpack_require__(/*! ./incoming/IncomingRequestsController */ "./dist/modules/requests/incoming/IncomingRequestsController.js"), exports);
|
|
2660
3093
|
__exportStar(__webpack_require__(/*! ./incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters */ "./dist/modules/requests/incoming/checkPrerequisites/CheckPrerequisitesOfIncomingRequestParameters.js"), exports);
|
|
2661
3094
|
__exportStar(__webpack_require__(/*! ./incoming/complete/CompleteIncomingRequestParameters */ "./dist/modules/requests/incoming/complete/CompleteIncomingRequestParameters.js"), exports);
|
|
2662
3095
|
__exportStar(__webpack_require__(/*! ./incoming/decide/AcceptRequestItemParameters */ "./dist/modules/requests/incoming/decide/AcceptRequestItemParameters.js"), exports);
|
|
@@ -2664,34 +3097,32 @@ __exportStar(__webpack_require__(/*! ./incoming/decide/DecideRequestItemGroupPar
|
|
|
2664
3097
|
__exportStar(__webpack_require__(/*! ./incoming/decide/DecideRequestItemParameters */ "./dist/modules/requests/incoming/decide/DecideRequestItemParameters.js"), exports);
|
|
2665
3098
|
__exportStar(__webpack_require__(/*! ./incoming/decide/DecideRequestParameters */ "./dist/modules/requests/incoming/decide/DecideRequestParameters.js"), exports);
|
|
2666
3099
|
__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
3100
|
__exportStar(__webpack_require__(/*! ./incoming/received/ReceivedIncomingRequestParameters */ "./dist/modules/requests/incoming/received/ReceivedIncomingRequestParameters.js"), exports);
|
|
2670
3101
|
__exportStar(__webpack_require__(/*! ./incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters */ "./dist/modules/requests/incoming/requireManualDecision/RequireManualDecisionOfIncomingRequestParameters.js"), exports);
|
|
2671
3102
|
__exportStar(__webpack_require__(/*! ./itemProcessors/AbstractRequestItemProcessor */ "./dist/modules/requests/itemProcessors/AbstractRequestItemProcessor.js"), exports);
|
|
3103
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js"), exports);
|
|
3104
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/IRequestItemProcessor */ "./dist/modules/requests/itemProcessors/IRequestItemProcessor.js"), exports);
|
|
3105
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/RequestItemConstructor */ "./dist/modules/requests/itemProcessors/RequestItemConstructor.js"), exports);
|
|
3106
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/RequestItemProcessorConstructor */ "./dist/modules/requests/itemProcessors/RequestItemProcessorConstructor.js"), exports);
|
|
3107
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/RequestItemProcessorRegistry */ "./dist/modules/requests/itemProcessors/RequestItemProcessorRegistry.js"), exports);
|
|
3108
|
+
__exportStar(__webpack_require__(/*! ./itemProcessors/ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js"), exports);
|
|
2672
3109
|
__exportStar(__webpack_require__(/*! ./itemProcessors/createAttribute/CreateAttributeRequestItemProcessor */ "./dist/modules/requests/itemProcessors/createAttribute/CreateAttributeRequestItemProcessor.js"), exports);
|
|
2673
3110
|
__exportStar(__webpack_require__(/*! ./itemProcessors/freeText/AcceptFreeTextRequestItemParameters */ "./dist/modules/requests/itemProcessors/freeText/AcceptFreeTextRequestItemParameters.js"), exports);
|
|
2674
3111
|
__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
3112
|
__exportStar(__webpack_require__(/*! ./itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters */ "./dist/modules/requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters.js"), exports);
|
|
2679
3113
|
__exportStar(__webpack_require__(/*! ./itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor */ "./dist/modules/requests/itemProcessors/proposeAttribute/ProposeAttributeRequestItemProcessor.js"), exports);
|
|
2680
3114
|
__exportStar(__webpack_require__(/*! ./itemProcessors/readAttribute/ReadAttributeRequestItemProcessor */ "./dist/modules/requests/itemProcessors/readAttribute/ReadAttributeRequestItemProcessor.js"), exports);
|
|
2681
3115
|
__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
3116
|
__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
3117
|
__exportStar(__webpack_require__(/*! ./local/LocalRequest */ "./dist/modules/requests/local/LocalRequest.js"), exports);
|
|
2687
3118
|
__exportStar(__webpack_require__(/*! ./local/LocalRequestStatus */ "./dist/modules/requests/local/LocalRequestStatus.js"), exports);
|
|
2688
3119
|
__exportStar(__webpack_require__(/*! ./local/LocalRequestStatusLogEntry */ "./dist/modules/requests/local/LocalRequestStatusLogEntry.js"), exports);
|
|
2689
3120
|
__exportStar(__webpack_require__(/*! ./local/LocalResponse */ "./dist/modules/requests/local/LocalResponse.js"), exports);
|
|
3121
|
+
__exportStar(__webpack_require__(/*! ./outgoing/OutgoingRequestsController */ "./dist/modules/requests/outgoing/OutgoingRequestsController.js"), exports);
|
|
2690
3122
|
__exportStar(__webpack_require__(/*! ./outgoing/completeOutgoingRequest/CompleteOutgoingRequestParameters */ "./dist/modules/requests/outgoing/completeOutgoingRequest/CompleteOutgoingRequestParameters.js"), exports);
|
|
2691
3123
|
__exportStar(__webpack_require__(/*! ./outgoing/createAndCompleteFromRelationshipTemplateResponse/CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters */ "./dist/modules/requests/outgoing/createAndCompleteFromRelationshipTemplateResponse/CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters.js"), exports);
|
|
2692
3124
|
__exportStar(__webpack_require__(/*! ./outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters */ "./dist/modules/requests/outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters.js"), exports);
|
|
2693
3125
|
__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
3126
|
__exportStar(__webpack_require__(/*! ./outgoing/sentOutgoingRequest/SentOutgoingRequestParameters */ "./dist/modules/requests/outgoing/sentOutgoingRequest/SentOutgoingRequestParameters.js"), exports);
|
|
2696
3127
|
//# sourceMappingURL=index.js.map
|
|
2697
3128
|
|
|
@@ -2777,29 +3208,29 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
2777
3208
|
|
|
2778
3209
|
/***/ }),
|
|
2779
3210
|
|
|
2780
|
-
/***/ "./dist/modules/requests/itemProcessors/
|
|
2781
|
-
|
|
2782
|
-
!*** ./dist/modules/requests/itemProcessors/
|
|
2783
|
-
|
|
3211
|
+
/***/ "./dist/modules/requests/itemProcessors/RequestItemConstructor.js":
|
|
3212
|
+
/*!************************************************************************!*\
|
|
3213
|
+
!*** ./dist/modules/requests/itemProcessors/RequestItemConstructor.js ***!
|
|
3214
|
+
\************************************************************************/
|
|
2784
3215
|
/***/ ((__unused_webpack_module, exports) => {
|
|
2785
3216
|
|
|
2786
3217
|
"use strict";
|
|
2787
3218
|
|
|
2788
3219
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2789
|
-
//# sourceMappingURL=
|
|
3220
|
+
//# sourceMappingURL=RequestItemConstructor.js.map
|
|
2790
3221
|
|
|
2791
3222
|
/***/ }),
|
|
2792
3223
|
|
|
2793
|
-
/***/ "./dist/modules/requests/itemProcessors/
|
|
2794
|
-
|
|
2795
|
-
!*** ./dist/modules/requests/itemProcessors/
|
|
2796
|
-
|
|
3224
|
+
/***/ "./dist/modules/requests/itemProcessors/RequestItemProcessorConstructor.js":
|
|
3225
|
+
/*!*********************************************************************************!*\
|
|
3226
|
+
!*** ./dist/modules/requests/itemProcessors/RequestItemProcessorConstructor.js ***!
|
|
3227
|
+
\*********************************************************************************/
|
|
2797
3228
|
/***/ ((__unused_webpack_module, exports) => {
|
|
2798
3229
|
|
|
2799
3230
|
"use strict";
|
|
2800
3231
|
|
|
2801
3232
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2802
|
-
//# sourceMappingURL=
|
|
3233
|
+
//# sourceMappingURL=RequestItemProcessorConstructor.js.map
|
|
2803
3234
|
|
|
2804
3235
|
/***/ }),
|
|
2805
3236
|
|
|
@@ -2813,7 +3244,7 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
2813
3244
|
|
|
2814
3245
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2815
3246
|
exports.RequestItemProcessorRegistry = void 0;
|
|
2816
|
-
const
|
|
3247
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
2817
3248
|
class RequestItemProcessorRegistry {
|
|
2818
3249
|
constructor(consumptionController, processors = new Map()) {
|
|
2819
3250
|
this.consumptionController = consumptionController;
|
|
@@ -2821,7 +3252,7 @@ class RequestItemProcessorRegistry {
|
|
|
2821
3252
|
}
|
|
2822
3253
|
registerProcessor(itemConstructor, processorConstructor) {
|
|
2823
3254
|
if (this.processors.has(itemConstructor)) {
|
|
2824
|
-
throw new
|
|
3255
|
+
throw new ConsumptionError_1.ConsumptionError(`There is already a processor registered for '${itemConstructor.name}'. Use 'replaceProcessorForType' if you want to replace it.`);
|
|
2825
3256
|
}
|
|
2826
3257
|
this.processors.set(itemConstructor, processorConstructor);
|
|
2827
3258
|
}
|
|
@@ -2831,7 +3262,7 @@ class RequestItemProcessorRegistry {
|
|
|
2831
3262
|
getProcessorForItem(item) {
|
|
2832
3263
|
const constructor = this.processors.get(item.constructor);
|
|
2833
3264
|
if (!constructor) {
|
|
2834
|
-
throw new
|
|
3265
|
+
throw new ConsumptionError_1.ConsumptionError(`There was no processor registered for '${item.constructor.name}'.`);
|
|
2835
3266
|
}
|
|
2836
3267
|
return new constructor(this.consumptionController);
|
|
2837
3268
|
}
|
|
@@ -2903,7 +3334,7 @@ exports.ErrorValidationResult = ErrorValidationResult;
|
|
|
2903
3334
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
2904
3335
|
exports.CreateAttributeRequestItemProcessor = void 0;
|
|
2905
3336
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
2906
|
-
const
|
|
3337
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
2907
3338
|
const GenericRequestItemProcessor_1 = __webpack_require__(/*! ../GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js");
|
|
2908
3339
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
2909
3340
|
class CreateAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
@@ -2913,17 +3344,17 @@ class CreateAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.
|
|
|
2913
3344
|
const ownerIsEmptyString = requestItem.attribute.owner.toString() === "";
|
|
2914
3345
|
if (requestItem.attribute instanceof content_1.IdentityAttribute) {
|
|
2915
3346
|
if (senderIsAttributeOwner) {
|
|
2916
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3347
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("Cannot create own Attributes with a CreateAttributeRequestItem. Use a ShareAttributeRequestItem instead."));
|
|
2917
3348
|
}
|
|
2918
3349
|
if (recipientIsAttributeOwner || ownerIsEmptyString || recipient === undefined) {
|
|
2919
3350
|
return ValidationResult_1.ValidationResult.success();
|
|
2920
3351
|
}
|
|
2921
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3352
|
+
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
3353
|
}
|
|
2923
3354
|
if (recipientIsAttributeOwner || senderIsAttributeOwner || ownerIsEmptyString || recipient === undefined) {
|
|
2924
3355
|
return ValidationResult_1.ValidationResult.success();
|
|
2925
3356
|
}
|
|
2926
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3357
|
+
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
3358
|
}
|
|
2928
3359
|
async accept(requestItem, _params, requestInfo) {
|
|
2929
3360
|
if (requestItem.attribute.owner.toString() === "") {
|
|
@@ -2997,15 +3428,15 @@ let AcceptFreeTextRequestItemParameters = class AcceptFreeTextRequestItemParamet
|
|
|
2997
3428
|
return this.fromAny(value);
|
|
2998
3429
|
}
|
|
2999
3430
|
};
|
|
3431
|
+
exports.AcceptFreeTextRequestItemParameters = AcceptFreeTextRequestItemParameters;
|
|
3000
3432
|
__decorate([
|
|
3001
3433
|
(0, ts_serval_1.serialize)(),
|
|
3002
3434
|
(0, ts_serval_1.validate)(),
|
|
3003
3435
|
__metadata("design:type", String)
|
|
3004
3436
|
], AcceptFreeTextRequestItemParameters.prototype, "freeText", void 0);
|
|
3005
|
-
AcceptFreeTextRequestItemParameters = __decorate([
|
|
3437
|
+
exports.AcceptFreeTextRequestItemParameters = AcceptFreeTextRequestItemParameters = __decorate([
|
|
3006
3438
|
(0, ts_serval_1.type)("FreeTextRequestItemParameters")
|
|
3007
3439
|
], AcceptFreeTextRequestItemParameters);
|
|
3008
|
-
exports.AcceptFreeTextRequestItemParameters = AcceptFreeTextRequestItemParameters;
|
|
3009
3440
|
//# sourceMappingURL=AcceptFreeTextRequestItemParameters.js.map
|
|
3010
3441
|
|
|
3011
3442
|
/***/ }),
|
|
@@ -3024,7 +3455,7 @@ const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-s
|
|
|
3024
3455
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3025
3456
|
const GenericRequestItemProcessor_1 = __webpack_require__(/*! ../GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js");
|
|
3026
3457
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3027
|
-
const
|
|
3458
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
3028
3459
|
const AcceptFreeTextRequestItemParameters_1 = __webpack_require__(/*! ./AcceptFreeTextRequestItemParameters */ "./dist/modules/requests/itemProcessors/freeText/AcceptFreeTextRequestItemParameters.js");
|
|
3029
3460
|
class FreeTextRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
3030
3461
|
canAccept(_requestItem, params) {
|
|
@@ -3034,7 +3465,7 @@ class FreeTextRequestItemProcessor extends GenericRequestItemProcessor_1.Generic
|
|
|
3034
3465
|
catch (error) {
|
|
3035
3466
|
if (!(error instanceof ts_serval_1.ParsingError))
|
|
3036
3467
|
throw error;
|
|
3037
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3468
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidAcceptParameters());
|
|
3038
3469
|
}
|
|
3039
3470
|
return ValidationResult_1.ValidationResult.success();
|
|
3040
3471
|
}
|
|
@@ -3075,7 +3506,7 @@ const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-s
|
|
|
3075
3506
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3076
3507
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3077
3508
|
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
3078
|
-
const
|
|
3509
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
3079
3510
|
let AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters_1 = class AcceptProposeAttributeRequestItemParameters extends ts_serval_1.Serializable {
|
|
3080
3511
|
isWithExistingAttribute() {
|
|
3081
3512
|
return this.attributeId !== undefined;
|
|
@@ -3088,7 +3519,7 @@ let AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestI
|
|
|
3088
3519
|
}
|
|
3089
3520
|
static postFrom(value) {
|
|
3090
3521
|
if (!(value instanceof AcceptProposeAttributeRequestItemParameters_1)) {
|
|
3091
|
-
throw new
|
|
3522
|
+
throw new ConsumptionError_1.ConsumptionError("this should never happen");
|
|
3092
3523
|
}
|
|
3093
3524
|
if (value.attributeId && value.attribute) {
|
|
3094
3525
|
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 +3530,7 @@ let AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestI
|
|
|
3099
3530
|
return value;
|
|
3100
3531
|
}
|
|
3101
3532
|
};
|
|
3533
|
+
exports.AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters;
|
|
3102
3534
|
__decorate([
|
|
3103
3535
|
(0, ts_serval_1.serialize)(),
|
|
3104
3536
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
@@ -3109,10 +3541,9 @@ __decorate([
|
|
|
3109
3541
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
3110
3542
|
__metadata("design:type", Object)
|
|
3111
3543
|
], AcceptProposeAttributeRequestItemParameters.prototype, "attribute", void 0);
|
|
3112
|
-
AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters_1 = __decorate([
|
|
3544
|
+
exports.AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters_1 = __decorate([
|
|
3113
3545
|
(0, ts_serval_1.type)("AcceptProposeAttributeRequestItemParameters")
|
|
3114
3546
|
], AcceptProposeAttributeRequestItemParameters);
|
|
3115
|
-
exports.AcceptProposeAttributeRequestItemParameters = AcceptProposeAttributeRequestItemParameters;
|
|
3116
3547
|
//# sourceMappingURL=AcceptProposeAttributeRequestItemParameters.js.map
|
|
3117
3548
|
|
|
3118
3549
|
/***/ }),
|
|
@@ -3132,11 +3563,11 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
3132
3563
|
exports.ProposeAttributeRequestItemProcessor = void 0;
|
|
3133
3564
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3134
3565
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3135
|
-
const
|
|
3566
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
3136
3567
|
const LocalAttribute_1 = __webpack_require__(/*! ../../../attributes/local/LocalAttribute */ "./dist/modules/attributes/local/LocalAttribute.js");
|
|
3137
3568
|
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
3569
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3570
|
+
const validateQuery_1 = __importDefault(__webpack_require__(/*! ../utility/validateQuery */ "./dist/modules/requests/itemProcessors/utility/validateQuery.js"));
|
|
3140
3571
|
const AcceptProposeAttributeRequestItemParameters_1 = __webpack_require__(/*! ./AcceptProposeAttributeRequestItemParameters */ "./dist/modules/requests/itemProcessors/proposeAttribute/AcceptProposeAttributeRequestItemParameters.js");
|
|
3141
3572
|
class ProposeAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
3142
3573
|
canCreateOutgoingRequestItem(requestItem, _request, recipient) {
|
|
@@ -3152,7 +3583,7 @@ class ProposeAttributeRequestItemProcessor extends GenericRequestItemProcessor_1
|
|
|
3152
3583
|
}
|
|
3153
3584
|
validateAttribute(attribute) {
|
|
3154
3585
|
if (attribute.owner.toString() !== "") {
|
|
3155
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3586
|
+
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
3587
|
}
|
|
3157
3588
|
return ValidationResult_1.ValidationResult.success();
|
|
3158
3589
|
}
|
|
@@ -3162,7 +3593,7 @@ class ProposeAttributeRequestItemProcessor extends GenericRequestItemProcessor_1
|
|
|
3162
3593
|
return commonQueryValidationResult;
|
|
3163
3594
|
}
|
|
3164
3595
|
if (requestItem.query instanceof content_1.RelationshipAttributeQuery && requestItem.query.owner.toString() !== "") {
|
|
3165
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3596
|
+
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
3597
|
}
|
|
3167
3598
|
return ValidationResult_1.ValidationResult.success();
|
|
3168
3599
|
}
|
|
@@ -3179,7 +3610,7 @@ class ProposeAttributeRequestItemProcessor extends GenericRequestItemProcessor_1
|
|
|
3179
3610
|
const ownerIsEmpty = attribute.owner.equals("");
|
|
3180
3611
|
const ownerIsCurrentIdentity = attribute.owner.equals(this.currentIdentityAddress);
|
|
3181
3612
|
if (!ownerIsEmpty && !ownerIsCurrentIdentity) {
|
|
3182
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3613
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("The given Attribute belongs to someone else. You can only share own Attributes."));
|
|
3183
3614
|
}
|
|
3184
3615
|
return ValidationResult_1.ValidationResult.success();
|
|
3185
3616
|
}
|
|
@@ -3263,7 +3694,7 @@ const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-s
|
|
|
3263
3694
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3264
3695
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3265
3696
|
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
3266
|
-
const
|
|
3697
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
3267
3698
|
let AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters_1 = class AcceptReadAttributeRequestItemParameters extends ts_serval_1.Serializable {
|
|
3268
3699
|
isWithExistingAttribute() {
|
|
3269
3700
|
return this.existingAttributeId !== undefined;
|
|
@@ -3276,7 +3707,7 @@ let AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemPar
|
|
|
3276
3707
|
}
|
|
3277
3708
|
static postFrom(value) {
|
|
3278
3709
|
if (!(value instanceof AcceptReadAttributeRequestItemParameters_1)) {
|
|
3279
|
-
throw new
|
|
3710
|
+
throw new ConsumptionError_1.ConsumptionError("this should never happen");
|
|
3280
3711
|
}
|
|
3281
3712
|
if (value.existingAttributeId && value.newAttribute) {
|
|
3282
3713
|
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 +3718,7 @@ let AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemPar
|
|
|
3287
3718
|
return value;
|
|
3288
3719
|
}
|
|
3289
3720
|
};
|
|
3721
|
+
exports.AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters;
|
|
3290
3722
|
__decorate([
|
|
3291
3723
|
(0, ts_serval_1.serialize)(),
|
|
3292
3724
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
@@ -3297,10 +3729,9 @@ __decorate([
|
|
|
3297
3729
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
3298
3730
|
__metadata("design:type", Object)
|
|
3299
3731
|
], AcceptReadAttributeRequestItemParameters.prototype, "newAttribute", void 0);
|
|
3300
|
-
AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters_1 = __decorate([
|
|
3732
|
+
exports.AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters_1 = __decorate([
|
|
3301
3733
|
(0, ts_serval_1.type)("AcceptReadAttributeRequestItemParameters")
|
|
3302
3734
|
], AcceptReadAttributeRequestItemParameters);
|
|
3303
|
-
exports.AcceptReadAttributeRequestItemParameters = AcceptReadAttributeRequestItemParameters;
|
|
3304
3735
|
//# sourceMappingURL=AcceptReadAttributeRequestItemParameters.js.map
|
|
3305
3736
|
|
|
3306
3737
|
/***/ }),
|
|
@@ -3320,11 +3751,11 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
3320
3751
|
exports.ReadAttributeRequestItemProcessor = void 0;
|
|
3321
3752
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3322
3753
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3323
|
-
const
|
|
3754
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
3324
3755
|
const LocalAttribute_1 = __webpack_require__(/*! ../../../attributes/local/LocalAttribute */ "./dist/modules/attributes/local/LocalAttribute.js");
|
|
3325
3756
|
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
3757
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3758
|
+
const validateQuery_1 = __importDefault(__webpack_require__(/*! ../utility/validateQuery */ "./dist/modules/requests/itemProcessors/utility/validateQuery.js"));
|
|
3328
3759
|
const AcceptReadAttributeRequestItemParameters_1 = __webpack_require__(/*! ./AcceptReadAttributeRequestItemParameters */ "./dist/modules/requests/itemProcessors/readAttribute/AcceptReadAttributeRequestItemParameters.js");
|
|
3329
3760
|
class ReadAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
3330
3761
|
canCreateOutgoingRequestItem(requestItem, _request, recipient) {
|
|
@@ -3343,7 +3774,7 @@ class ReadAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.Ge
|
|
|
3343
3774
|
}
|
|
3344
3775
|
const ownerIsCurrentIdentity = this.accountController.identity.isMe(foundAttribute.content.owner);
|
|
3345
3776
|
if (!ownerIsCurrentIdentity && foundAttribute.content instanceof content_1.IdentityAttribute) {
|
|
3346
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3777
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("The given Attribute belongs to someone else. You can only share own Attributes."));
|
|
3347
3778
|
}
|
|
3348
3779
|
}
|
|
3349
3780
|
return ValidationResult_1.ValidationResult.success();
|
|
@@ -3448,21 +3879,21 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
3448
3879
|
exports.ShareAttributeRequestItemProcessor = void 0;
|
|
3449
3880
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3450
3881
|
const lodash_1 = __importDefault(__webpack_require__(/*! lodash */ "./node_modules/lodash/lodash.js"));
|
|
3451
|
-
const
|
|
3882
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
3452
3883
|
const GenericRequestItemProcessor_1 = __webpack_require__(/*! ../GenericRequestItemProcessor */ "./dist/modules/requests/itemProcessors/GenericRequestItemProcessor.js");
|
|
3453
3884
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3454
3885
|
class ShareAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.GenericRequestItemProcessor {
|
|
3455
3886
|
async canCreateOutgoingRequestItem(requestItem, _request, recipient) {
|
|
3456
3887
|
const attribute = await this.consumptionController.attributes.getLocalAttribute(requestItem.sourceAttributeId);
|
|
3457
3888
|
if (!attribute) {
|
|
3458
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3889
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem(`The Attribute with the given sourceAttributeId '${requestItem.sourceAttributeId.toString()}' could not be found.`));
|
|
3459
3890
|
}
|
|
3460
3891
|
const requestItemAttributeJSON = requestItem.attribute.toJSON();
|
|
3461
3892
|
if (requestItemAttributeJSON.owner === "") {
|
|
3462
3893
|
requestItemAttributeJSON.owner = this.currentIdentityAddress.toString();
|
|
3463
3894
|
}
|
|
3464
3895
|
if (!lodash_1.default.isEqual(attribute.content.toJSON(), requestItemAttributeJSON)) {
|
|
3465
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3896
|
+
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
3897
|
}
|
|
3467
3898
|
if (requestItem.attribute instanceof content_1.IdentityAttribute) {
|
|
3468
3899
|
return this.canCreateWithIdentityAttribute(requestItem);
|
|
@@ -3473,16 +3904,16 @@ class ShareAttributeRequestItemProcessor extends GenericRequestItemProcessor_1.G
|
|
|
3473
3904
|
const ownerIsEmpty = requestItem.attribute.owner.toString() === "";
|
|
3474
3905
|
const ownerIsCurrentIdentity = requestItem.attribute.owner.equals(this.currentIdentityAddress);
|
|
3475
3906
|
if (!ownerIsEmpty && !ownerIsCurrentIdentity) {
|
|
3476
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3907
|
+
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
3908
|
}
|
|
3478
3909
|
return ValidationResult_1.ValidationResult.success();
|
|
3479
3910
|
}
|
|
3480
3911
|
canCreateWithRelationshipAttribute(attribute, recipient) {
|
|
3481
3912
|
if (attribute.confidentiality === content_1.RelationshipAttributeConfidentiality.Private) {
|
|
3482
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3913
|
+
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
3914
|
}
|
|
3484
3915
|
if (attribute.owner.equals(recipient)) {
|
|
3485
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3916
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("It doesn't make sense to share a RelationshipAttribute with its owner."));
|
|
3486
3917
|
}
|
|
3487
3918
|
return ValidationResult_1.ValidationResult.success();
|
|
3488
3919
|
}
|
|
@@ -3528,7 +3959,7 @@ exports.ShareAttributeRequestItemProcessor = ShareAttributeRequestItemProcessor;
|
|
|
3528
3959
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
3529
3960
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3530
3961
|
const iql_1 = __webpack_require__(/*! @nmshd/iql */ "./node_modules/@nmshd/iql/dist/src/index.js");
|
|
3531
|
-
const
|
|
3962
|
+
const CoreErrors_1 = __webpack_require__(/*! ../../../../consumption/CoreErrors */ "./dist/consumption/CoreErrors.js");
|
|
3532
3963
|
const ValidationResult_1 = __webpack_require__(/*! ../ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3533
3964
|
function validateQuery(query, sender, recipient) {
|
|
3534
3965
|
if (query instanceof content_1.ThirdPartyRelationshipAttributeQuery) {
|
|
@@ -3538,13 +3969,13 @@ function validateQuery(query, sender, recipient) {
|
|
|
3538
3969
|
return result;
|
|
3539
3970
|
}
|
|
3540
3971
|
if (query.owner.equals(sender)) {
|
|
3541
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3972
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("Cannot query own Attributes from a third party."));
|
|
3542
3973
|
}
|
|
3543
3974
|
}
|
|
3544
3975
|
else if (query instanceof content_1.IQLQuery) {
|
|
3545
3976
|
const validationResult = (0, iql_1.validate)(query.queryString);
|
|
3546
3977
|
if (!validationResult.isValid) {
|
|
3547
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3978
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem(`IQL query syntax error at character ${validationResult.error.location.start.column}`));
|
|
3548
3979
|
}
|
|
3549
3980
|
}
|
|
3550
3981
|
return ValidationResult_1.ValidationResult.success();
|
|
@@ -3552,10 +3983,10 @@ function validateQuery(query, sender, recipient) {
|
|
|
3552
3983
|
exports["default"] = validateQuery;
|
|
3553
3984
|
function validateThirdParty(thirdParty, sender, recipient) {
|
|
3554
3985
|
if (thirdParty.equals(sender)) {
|
|
3555
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3986
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("Cannot query an Attribute with the own address as third party."));
|
|
3556
3987
|
}
|
|
3557
3988
|
if (thirdParty.equals(recipient)) {
|
|
3558
|
-
return ValidationResult_1.ValidationResult.error(
|
|
3989
|
+
return ValidationResult_1.ValidationResult.error(CoreErrors_1.CoreErrors.requests.invalidRequestItem("Cannot query an Attribute with the recipient's address as third party."));
|
|
3559
3990
|
}
|
|
3560
3991
|
return ValidationResult_1.ValidationResult.success();
|
|
3561
3992
|
}
|
|
@@ -3586,7 +4017,7 @@ const ts_serval_1 = __webpack_require__(/*! @js-soft/ts-serval */ "@js-soft/ts-s
|
|
|
3586
4017
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3587
4018
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3588
4019
|
const ts_simple_nameof_1 = __webpack_require__(/*! ts-simple-nameof */ "./node_modules/ts-simple-nameof/index.js");
|
|
3589
|
-
const
|
|
4020
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
3590
4021
|
const LocalRequestStatus_1 = __webpack_require__(/*! ./LocalRequestStatus */ "./dist/modules/requests/local/LocalRequestStatus.js");
|
|
3591
4022
|
const LocalRequestStatusLogEntry_1 = __webpack_require__(/*! ./LocalRequestStatusLogEntry */ "./dist/modules/requests/local/LocalRequestStatusLogEntry.js");
|
|
3592
4023
|
const LocalResponse_1 = __webpack_require__(/*! ./LocalResponse */ "./dist/modules/requests/local/LocalResponse.js");
|
|
@@ -3595,6 +4026,7 @@ let LocalRequestSource = class LocalRequestSource extends transport_1.CoreSerial
|
|
|
3595
4026
|
return this.fromAny(value);
|
|
3596
4027
|
}
|
|
3597
4028
|
};
|
|
4029
|
+
exports.LocalRequestSource = LocalRequestSource;
|
|
3598
4030
|
__decorate([
|
|
3599
4031
|
(0, ts_serval_1.serialize)(),
|
|
3600
4032
|
(0, ts_serval_1.validate)(),
|
|
@@ -3605,10 +4037,9 @@ __decorate([
|
|
|
3605
4037
|
(0, ts_serval_1.validate)(),
|
|
3606
4038
|
__metadata("design:type", transport_1.CoreId)
|
|
3607
4039
|
], LocalRequestSource.prototype, "reference", void 0);
|
|
3608
|
-
LocalRequestSource = __decorate([
|
|
4040
|
+
exports.LocalRequestSource = LocalRequestSource = __decorate([
|
|
3609
4041
|
(0, ts_serval_1.type)("LocalRequestSource")
|
|
3610
4042
|
], LocalRequestSource);
|
|
3611
|
-
exports.LocalRequestSource = LocalRequestSource;
|
|
3612
4043
|
let LocalRequest = class LocalRequest extends transport_1.CoreSynchronizable {
|
|
3613
4044
|
constructor() {
|
|
3614
4045
|
super(...arguments);
|
|
@@ -3629,7 +4060,7 @@ let LocalRequest = class LocalRequest extends transport_1.CoreSynchronizable {
|
|
|
3629
4060
|
}
|
|
3630
4061
|
changeStatus(newStatus) {
|
|
3631
4062
|
if (this.status === newStatus)
|
|
3632
|
-
throw new
|
|
4063
|
+
throw new ConsumptionError_1.ConsumptionError("cannot change status to the same status");
|
|
3633
4064
|
const logEntry = LocalRequestStatusLogEntry_1.LocalRequestStatusLogEntry.from({
|
|
3634
4065
|
createdAt: transport_1.CoreDate.utc(),
|
|
3635
4066
|
oldStatus: this.status,
|
|
@@ -3640,7 +4071,7 @@ let LocalRequest = class LocalRequest extends transport_1.CoreSynchronizable {
|
|
|
3640
4071
|
}
|
|
3641
4072
|
sent(source) {
|
|
3642
4073
|
if (this.status !== LocalRequestStatus_1.LocalRequestStatus.Draft) {
|
|
3643
|
-
throw new
|
|
4074
|
+
throw new ConsumptionError_1.ConsumptionError("Local Request has to be in status 'Draft'.");
|
|
3644
4075
|
}
|
|
3645
4076
|
this.source = source;
|
|
3646
4077
|
this.changeStatus(LocalRequestStatus_1.LocalRequestStatus.Open);
|
|
@@ -3663,6 +4094,7 @@ let LocalRequest = class LocalRequest extends transport_1.CoreSynchronizable {
|
|
|
3663
4094
|
return false;
|
|
3664
4095
|
}
|
|
3665
4096
|
};
|
|
4097
|
+
exports.LocalRequest = LocalRequest;
|
|
3666
4098
|
__decorate([
|
|
3667
4099
|
(0, ts_serval_1.serialize)(),
|
|
3668
4100
|
(0, ts_serval_1.validate)(),
|
|
@@ -3703,10 +4135,9 @@ __decorate([
|
|
|
3703
4135
|
(0, ts_serval_1.validate)(),
|
|
3704
4136
|
__metadata("design:type", Array)
|
|
3705
4137
|
], LocalRequest.prototype, "statusLog", void 0);
|
|
3706
|
-
LocalRequest = __decorate([
|
|
4138
|
+
exports.LocalRequest = LocalRequest = __decorate([
|
|
3707
4139
|
(0, ts_serval_1.type)("LocalRequest")
|
|
3708
4140
|
], LocalRequest);
|
|
3709
|
-
exports.LocalRequest = LocalRequest;
|
|
3710
4141
|
//# sourceMappingURL=LocalRequest.js.map
|
|
3711
4142
|
|
|
3712
4143
|
/***/ }),
|
|
@@ -3730,7 +4161,7 @@ var LocalRequestStatus;
|
|
|
3730
4161
|
LocalRequestStatus["Decided"] = "Decided";
|
|
3731
4162
|
LocalRequestStatus["Completed"] = "Completed";
|
|
3732
4163
|
LocalRequestStatus["Expired"] = "Expired";
|
|
3733
|
-
})(LocalRequestStatus
|
|
4164
|
+
})(LocalRequestStatus || (exports.LocalRequestStatus = LocalRequestStatus = {}));
|
|
3734
4165
|
//# sourceMappingURL=LocalRequestStatus.js.map
|
|
3735
4166
|
|
|
3736
4167
|
/***/ }),
|
|
@@ -3762,6 +4193,7 @@ let LocalRequestStatusLogEntry = class LocalRequestStatusLogEntry extends transp
|
|
|
3762
4193
|
return this.fromAny(value);
|
|
3763
4194
|
}
|
|
3764
4195
|
};
|
|
4196
|
+
exports.LocalRequestStatusLogEntry = LocalRequestStatusLogEntry;
|
|
3765
4197
|
__decorate([
|
|
3766
4198
|
(0, ts_serval_1.serialize)(),
|
|
3767
4199
|
(0, ts_serval_1.validate)(),
|
|
@@ -3787,10 +4219,9 @@ __decorate([
|
|
|
3787
4219
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
3788
4220
|
__metadata("design:type", String)
|
|
3789
4221
|
], LocalRequestStatusLogEntry.prototype, "code", void 0);
|
|
3790
|
-
LocalRequestStatusLogEntry = __decorate([
|
|
4222
|
+
exports.LocalRequestStatusLogEntry = LocalRequestStatusLogEntry = __decorate([
|
|
3791
4223
|
(0, ts_serval_1.type)("LocalRequestStatusLogEntry")
|
|
3792
4224
|
], LocalRequestStatusLogEntry);
|
|
3793
|
-
exports.LocalRequestStatusLogEntry = LocalRequestStatusLogEntry;
|
|
3794
4225
|
//# sourceMappingURL=LocalRequestStatusLogEntry.js.map
|
|
3795
4226
|
|
|
3796
4227
|
/***/ }),
|
|
@@ -3822,6 +4253,7 @@ let LocalResponseSource = class LocalResponseSource extends transport_1.CoreSeri
|
|
|
3822
4253
|
return this.fromAny(value);
|
|
3823
4254
|
}
|
|
3824
4255
|
};
|
|
4256
|
+
exports.LocalResponseSource = LocalResponseSource;
|
|
3825
4257
|
__decorate([
|
|
3826
4258
|
(0, ts_serval_1.serialize)(),
|
|
3827
4259
|
(0, ts_serval_1.validate)(),
|
|
@@ -3832,15 +4264,15 @@ __decorate([
|
|
|
3832
4264
|
(0, ts_serval_1.validate)(),
|
|
3833
4265
|
__metadata("design:type", transport_1.CoreId)
|
|
3834
4266
|
], LocalResponseSource.prototype, "reference", void 0);
|
|
3835
|
-
LocalResponseSource = __decorate([
|
|
4267
|
+
exports.LocalResponseSource = LocalResponseSource = __decorate([
|
|
3836
4268
|
(0, ts_serval_1.type)("LocalResponseSource")
|
|
3837
4269
|
], LocalResponseSource);
|
|
3838
|
-
exports.LocalResponseSource = LocalResponseSource;
|
|
3839
4270
|
let LocalResponse = class LocalResponse extends transport_1.CoreSerializable {
|
|
3840
4271
|
static from(value) {
|
|
3841
4272
|
return this.fromAny(value);
|
|
3842
4273
|
}
|
|
3843
4274
|
};
|
|
4275
|
+
exports.LocalResponse = LocalResponse;
|
|
3844
4276
|
__decorate([
|
|
3845
4277
|
(0, ts_serval_1.serialize)(),
|
|
3846
4278
|
(0, ts_serval_1.validate)(),
|
|
@@ -3856,10 +4288,9 @@ __decorate([
|
|
|
3856
4288
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
3857
4289
|
__metadata("design:type", LocalResponseSource)
|
|
3858
4290
|
], LocalResponse.prototype, "source", void 0);
|
|
3859
|
-
LocalResponse = __decorate([
|
|
4291
|
+
exports.LocalResponse = LocalResponse = __decorate([
|
|
3860
4292
|
(0, ts_serval_1.type)("LocalResponse")
|
|
3861
4293
|
], LocalResponse);
|
|
3862
|
-
exports.LocalResponse = LocalResponse;
|
|
3863
4294
|
//# sourceMappingURL=LocalResponse.js.map
|
|
3864
4295
|
|
|
3865
4296
|
/***/ }),
|
|
@@ -3876,7 +4307,10 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
3876
4307
|
exports.OutgoingRequestsController = void 0;
|
|
3877
4308
|
const content_1 = __webpack_require__(/*! @nmshd/content */ "@nmshd/content");
|
|
3878
4309
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
3879
|
-
const
|
|
4310
|
+
const ConsumptionBaseController_1 = __webpack_require__(/*! ../../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
4311
|
+
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
4312
|
+
const ConsumptionError_1 = __webpack_require__(/*! ../../../consumption/ConsumptionError */ "./dist/consumption/ConsumptionError.js");
|
|
4313
|
+
const ConsumptionIds_1 = __webpack_require__(/*! ../../../consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js");
|
|
3880
4314
|
const events_1 = __webpack_require__(/*! ../events */ "./dist/modules/requests/events/index.js");
|
|
3881
4315
|
const ValidationResult_1 = __webpack_require__(/*! ../itemProcessors/ValidationResult */ "./dist/modules/requests/itemProcessors/ValidationResult.js");
|
|
3882
4316
|
const LocalRequest_1 = __webpack_require__(/*! ../local/LocalRequest */ "./dist/modules/requests/local/LocalRequest.js");
|
|
@@ -3887,9 +4321,9 @@ const CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters
|
|
|
3887
4321
|
const CanCreateOutgoingRequestParameters_1 = __webpack_require__(/*! ./createOutgoingRequest/CanCreateOutgoingRequestParameters */ "./dist/modules/requests/outgoing/createOutgoingRequest/CanCreateOutgoingRequestParameters.js");
|
|
3888
4322
|
const CreateOutgoingRequestParameters_1 = __webpack_require__(/*! ./createOutgoingRequest/CreateOutgoingRequestParameters */ "./dist/modules/requests/outgoing/createOutgoingRequest/CreateOutgoingRequestParameters.js");
|
|
3889
4323
|
const SentOutgoingRequestParameters_1 = __webpack_require__(/*! ./sentOutgoingRequest/SentOutgoingRequestParameters */ "./dist/modules/requests/outgoing/sentOutgoingRequest/SentOutgoingRequestParameters.js");
|
|
3890
|
-
class OutgoingRequestsController extends
|
|
4324
|
+
class OutgoingRequestsController extends ConsumptionBaseController_1.ConsumptionBaseController {
|
|
3891
4325
|
constructor(localRequests, processorRegistry, parent, eventBus, identity, relationshipResolver) {
|
|
3892
|
-
super(
|
|
4326
|
+
super(ConsumptionControllerName_1.ConsumptionControllerName.RequestsController, parent);
|
|
3893
4327
|
this.localRequests = localRequests;
|
|
3894
4328
|
this.processorRegistry = processorRegistry;
|
|
3895
4329
|
this.eventBus = eventBus;
|
|
@@ -3931,7 +4365,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
3931
4365
|
}
|
|
3932
4366
|
async create(params) {
|
|
3933
4367
|
const parsedParams = CreateOutgoingRequestParameters_1.CreateOutgoingRequestParameters.from(params);
|
|
3934
|
-
const id = await
|
|
4368
|
+
const id = await ConsumptionIds_1.ConsumptionIds.request.generate();
|
|
3935
4369
|
parsedParams.content.id = id;
|
|
3936
4370
|
const request = await this._create(id, parsedParams.content, parsedParams.peer);
|
|
3937
4371
|
this.eventBus.publish(new events_1.OutgoingRequestCreatedEvent(this.identity.address.toString(), request));
|
|
@@ -3963,7 +4397,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
3963
4397
|
const requestId = response.requestId;
|
|
3964
4398
|
const templateContent = parsedParams.template.cache.content;
|
|
3965
4399
|
if (!(templateContent instanceof content_1.RelationshipTemplateContent)) {
|
|
3966
|
-
throw new
|
|
4400
|
+
throw new ConsumptionError_1.ConsumptionError("The content of the template is not supported as it is not type of RelationshipTemplateContent.");
|
|
3967
4401
|
}
|
|
3968
4402
|
const existingRelationship = await this.relationshipResolver.getActiveRelationshipToIdentity(peer);
|
|
3969
4403
|
const requestContent = existingRelationship
|
|
@@ -3999,17 +4433,17 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
3999
4433
|
getSourceType(sourceObject) {
|
|
4000
4434
|
if (sourceObject instanceof transport_1.Message) {
|
|
4001
4435
|
if (!sourceObject.isOwn) {
|
|
4002
|
-
throw new
|
|
4436
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create outgoing Request from a peer Message");
|
|
4003
4437
|
}
|
|
4004
4438
|
return "Message";
|
|
4005
4439
|
}
|
|
4006
4440
|
else if (sourceObject instanceof transport_1.RelationshipTemplate) {
|
|
4007
4441
|
if (!sourceObject.isOwn) {
|
|
4008
|
-
throw new
|
|
4442
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot create outgoing Request from a peer Relationship Template");
|
|
4009
4443
|
}
|
|
4010
4444
|
return "RelationshipTemplate";
|
|
4011
4445
|
}
|
|
4012
|
-
throw new
|
|
4446
|
+
throw new ConsumptionError_1.ConsumptionError("The given sourceObject is not of a valid type. Valid types are 'Message' and 'RelationshipTemplate'.");
|
|
4013
4447
|
}
|
|
4014
4448
|
async complete(params) {
|
|
4015
4449
|
const parsedParams = CompleteOutgoingRequestParameters_1.CompleteOutgoingRequestParameters.from(params);
|
|
@@ -4028,7 +4462,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
4028
4462
|
? responseSourceObject.cache.createdAt
|
|
4029
4463
|
: responseSourceObject.request.createdAt;
|
|
4030
4464
|
if (request.status === LocalRequestStatus_1.LocalRequestStatus.Expired && request.isExpired(responseSourceObjectCreationDate)) {
|
|
4031
|
-
throw new
|
|
4465
|
+
throw new ConsumptionError_1.ConsumptionError("Cannot complete an expired request with a response that was created before the expiration date");
|
|
4032
4466
|
}
|
|
4033
4467
|
const canComplete = await this.canComplete(request, receivedResponse);
|
|
4034
4468
|
if (canComplete.isError()) {
|
|
@@ -4043,7 +4477,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
4043
4477
|
responseSource = "RelationshipChange";
|
|
4044
4478
|
}
|
|
4045
4479
|
else {
|
|
4046
|
-
throw new
|
|
4480
|
+
throw new ConsumptionError_1.ConsumptionError("Invalid responseSourceObject");
|
|
4047
4481
|
}
|
|
4048
4482
|
const localResponse = LocalResponse_1.LocalResponse.from({
|
|
4049
4483
|
content: receivedResponse,
|
|
@@ -4134,7 +4568,7 @@ class OutgoingRequestsController extends consumption_1.ConsumptionBaseController
|
|
|
4134
4568
|
}
|
|
4135
4569
|
assertRequestStatus(request, ...status) {
|
|
4136
4570
|
if (!status.includes(request.status)) {
|
|
4137
|
-
throw new
|
|
4571
|
+
throw new ConsumptionError_1.ConsumptionError(`Local Request has to be in status '${status.join("/")}'.`);
|
|
4138
4572
|
}
|
|
4139
4573
|
}
|
|
4140
4574
|
async updateRequestExpiry(request) {
|
|
@@ -4176,6 +4610,7 @@ let CompleteOutgoingRequestParameters = class CompleteOutgoingRequestParameters
|
|
|
4176
4610
|
return this.fromAny(value);
|
|
4177
4611
|
}
|
|
4178
4612
|
};
|
|
4613
|
+
exports.CompleteOutgoingRequestParameters = CompleteOutgoingRequestParameters;
|
|
4179
4614
|
__decorate([
|
|
4180
4615
|
(0, ts_serval_1.serialize)(),
|
|
4181
4616
|
(0, ts_serval_1.validate)(),
|
|
@@ -4191,10 +4626,9 @@ __decorate([
|
|
|
4191
4626
|
(0, ts_serval_1.validate)(),
|
|
4192
4627
|
__metadata("design:type", content_1.Response)
|
|
4193
4628
|
], CompleteOutgoingRequestParameters.prototype, "receivedResponse", void 0);
|
|
4194
|
-
CompleteOutgoingRequestParameters = __decorate([
|
|
4629
|
+
exports.CompleteOutgoingRequestParameters = CompleteOutgoingRequestParameters = __decorate([
|
|
4195
4630
|
(0, ts_serval_1.type)("CompleteOutgoingRequestParameters")
|
|
4196
4631
|
], CompleteOutgoingRequestParameters);
|
|
4197
|
-
exports.CompleteOutgoingRequestParameters = CompleteOutgoingRequestParameters;
|
|
4198
4632
|
//# sourceMappingURL=CompleteOutgoingRequestParameters.js.map
|
|
4199
4633
|
|
|
4200
4634
|
/***/ }),
|
|
@@ -4226,6 +4660,7 @@ let CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters =
|
|
|
4226
4660
|
return this.fromAny(value);
|
|
4227
4661
|
}
|
|
4228
4662
|
};
|
|
4663
|
+
exports.CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters = CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters;
|
|
4229
4664
|
__decorate([
|
|
4230
4665
|
(0, ts_serval_1.serialize)(),
|
|
4231
4666
|
(0, ts_serval_1.validate)(),
|
|
@@ -4241,10 +4676,9 @@ __decorate([
|
|
|
4241
4676
|
(0, ts_serval_1.validate)(),
|
|
4242
4677
|
__metadata("design:type", content_1.Response)
|
|
4243
4678
|
], CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters.prototype, "response", void 0);
|
|
4244
|
-
CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters = __decorate([
|
|
4679
|
+
exports.CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters = CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters = __decorate([
|
|
4245
4680
|
(0, ts_serval_1.type)("CreateAndCompleteOutgoingRequestFromRelationshipCreationChangeParameters")
|
|
4246
4681
|
], CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters);
|
|
4247
|
-
exports.CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters = CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters;
|
|
4248
4682
|
//# sourceMappingURL=CreateAndCompleteOutgoingRequestFromRelationshipTemplateResponseParameters.js.map
|
|
4249
4683
|
|
|
4250
4684
|
/***/ }),
|
|
@@ -4276,6 +4710,7 @@ let CanCreateOutgoingRequestParameters = class CanCreateOutgoingRequestParameter
|
|
|
4276
4710
|
return this.fromAny(value);
|
|
4277
4711
|
}
|
|
4278
4712
|
};
|
|
4713
|
+
exports.CanCreateOutgoingRequestParameters = CanCreateOutgoingRequestParameters;
|
|
4279
4714
|
__decorate([
|
|
4280
4715
|
(0, ts_serval_1.serialize)(),
|
|
4281
4716
|
(0, ts_serval_1.validate)(),
|
|
@@ -4286,10 +4721,9 @@ __decorate([
|
|
|
4286
4721
|
(0, ts_serval_1.validate)({ nullable: true }),
|
|
4287
4722
|
__metadata("design:type", transport_1.CoreAddress)
|
|
4288
4723
|
], CanCreateOutgoingRequestParameters.prototype, "peer", void 0);
|
|
4289
|
-
CanCreateOutgoingRequestParameters = __decorate([
|
|
4724
|
+
exports.CanCreateOutgoingRequestParameters = CanCreateOutgoingRequestParameters = __decorate([
|
|
4290
4725
|
(0, ts_serval_1.type)("CanCreateOutgoingRequestParameters")
|
|
4291
4726
|
], CanCreateOutgoingRequestParameters);
|
|
4292
|
-
exports.CanCreateOutgoingRequestParameters = CanCreateOutgoingRequestParameters;
|
|
4293
4727
|
//# sourceMappingURL=CanCreateOutgoingRequestParameters.js.map
|
|
4294
4728
|
|
|
4295
4729
|
/***/ }),
|
|
@@ -4321,6 +4755,7 @@ let CreateOutgoingRequestParameters = class CreateOutgoingRequestParameters exte
|
|
|
4321
4755
|
return this.fromAny(value);
|
|
4322
4756
|
}
|
|
4323
4757
|
};
|
|
4758
|
+
exports.CreateOutgoingRequestParameters = CreateOutgoingRequestParameters;
|
|
4324
4759
|
__decorate([
|
|
4325
4760
|
(0, ts_serval_1.serialize)(),
|
|
4326
4761
|
(0, ts_serval_1.validate)(),
|
|
@@ -4331,10 +4766,9 @@ __decorate([
|
|
|
4331
4766
|
(0, ts_serval_1.validate)(),
|
|
4332
4767
|
__metadata("design:type", transport_1.CoreAddress)
|
|
4333
4768
|
], CreateOutgoingRequestParameters.prototype, "peer", void 0);
|
|
4334
|
-
CreateOutgoingRequestParameters = __decorate([
|
|
4769
|
+
exports.CreateOutgoingRequestParameters = CreateOutgoingRequestParameters = __decorate([
|
|
4335
4770
|
(0, ts_serval_1.type)("CreateOutgoingRequestParameters")
|
|
4336
4771
|
], CreateOutgoingRequestParameters);
|
|
4337
|
-
exports.CreateOutgoingRequestParameters = CreateOutgoingRequestParameters;
|
|
4338
4772
|
//# sourceMappingURL=CreateOutgoingRequestParameters.js.map
|
|
4339
4773
|
|
|
4340
4774
|
/***/ }),
|
|
@@ -4365,6 +4799,7 @@ let SentOutgoingRequestParameters = class SentOutgoingRequestParameters extends
|
|
|
4365
4799
|
return this.fromAny(value);
|
|
4366
4800
|
}
|
|
4367
4801
|
};
|
|
4802
|
+
exports.SentOutgoingRequestParameters = SentOutgoingRequestParameters;
|
|
4368
4803
|
__decorate([
|
|
4369
4804
|
(0, ts_serval_1.serialize)(),
|
|
4370
4805
|
(0, ts_serval_1.validate)(),
|
|
@@ -4375,10 +4810,9 @@ __decorate([
|
|
|
4375
4810
|
(0, ts_serval_1.validate)(),
|
|
4376
4811
|
__metadata("design:type", transport_1.Message)
|
|
4377
4812
|
], SentOutgoingRequestParameters.prototype, "requestSourceObject", void 0);
|
|
4378
|
-
SentOutgoingRequestParameters = __decorate([
|
|
4813
|
+
exports.SentOutgoingRequestParameters = SentOutgoingRequestParameters = __decorate([
|
|
4379
4814
|
(0, ts_serval_1.type)("SentOutgoingRequestParameters")
|
|
4380
4815
|
], SentOutgoingRequestParameters);
|
|
4381
|
-
exports.SentOutgoingRequestParameters = SentOutgoingRequestParameters;
|
|
4382
4816
|
//# sourceMappingURL=SentOutgoingRequestParameters.js.map
|
|
4383
4817
|
|
|
4384
4818
|
/***/ }),
|
|
@@ -4404,11 +4838,13 @@ Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
|
4404
4838
|
exports.SettingsController = void 0;
|
|
4405
4839
|
const ts_utils_1 = __webpack_require__(/*! @js-soft/ts-utils */ "./node_modules/@js-soft/ts-utils/dist/index.js");
|
|
4406
4840
|
const transport_1 = __webpack_require__(/*! @nmshd/transport */ "@nmshd/transport");
|
|
4407
|
-
const
|
|
4841
|
+
const ConsumptionBaseController_1 = __webpack_require__(/*! ../../consumption/ConsumptionBaseController */ "./dist/consumption/ConsumptionBaseController.js");
|
|
4842
|
+
const ConsumptionControllerName_1 = __webpack_require__(/*! ../../consumption/ConsumptionControllerName */ "./dist/consumption/ConsumptionControllerName.js");
|
|
4843
|
+
const ConsumptionIds_1 = __webpack_require__(/*! ../../consumption/ConsumptionIds */ "./dist/consumption/ConsumptionIds.js");
|
|
4408
4844
|
const Setting_1 = __webpack_require__(/*! ./local/Setting */ "./dist/modules/settings/local/Setting.js");
|
|
4409
|
-
class SettingsController extends
|
|
4845
|
+
class SettingsController extends ConsumptionBaseController_1.ConsumptionBaseController {
|
|
4410
4846
|
constructor(parent) {
|
|
4411
|
-
super(
|
|
4847
|
+
super(ConsumptionControllerName_1.ConsumptionControllerName.SettingsController, parent);
|
|
4412
4848
|
}
|
|
4413
4849
|
async init() {
|
|
4414
4850
|
await super.init();
|
|
@@ -4425,7 +4861,7 @@ class SettingsController extends consumption_1.ConsumptionBaseController {
|
|
|
4425
4861
|
}
|
|
4426
4862
|
async createSetting(parameters) {
|
|
4427
4863
|
const setting = Setting_1.Setting.from({
|
|
4428
|
-
id: await
|
|
4864
|
+
id: await ConsumptionIds_1.ConsumptionIds.setting.generate(),
|
|
4429
4865
|
createdAt: transport_1.CoreDate.utc(),
|
|
4430
4866
|
key: parameters.key,
|
|
4431
4867
|
scope: parameters.scope ?? Setting_1.SettingScope.Identity,
|
|
@@ -4447,13 +4883,13 @@ class SettingsController extends consumption_1.ConsumptionBaseController {
|
|
|
4447
4883
|
await this.settings.delete(setting);
|
|
4448
4884
|
}
|
|
4449
4885
|
}
|
|
4886
|
+
exports.SettingsController = SettingsController;
|
|
4450
4887
|
__decorate([
|
|
4451
4888
|
(0, ts_utils_1.log)(),
|
|
4452
4889
|
__metadata("design:type", Function),
|
|
4453
4890
|
__metadata("design:paramtypes", [Setting_1.Setting]),
|
|
4454
4891
|
__metadata("design:returntype", Promise)
|
|
4455
4892
|
], SettingsController.prototype, "updateSetting", null);
|
|
4456
|
-
exports.SettingsController = SettingsController;
|
|
4457
4893
|
//# sourceMappingURL=SettingsController.js.map
|
|
4458
4894
|
|
|
4459
4895
|
/***/ }),
|
|
@@ -4528,7 +4964,7 @@ var SettingScope;
|
|
|
4528
4964
|
SettingScope["Identity"] = "Identity";
|
|
4529
4965
|
SettingScope["Device"] = "Device";
|
|
4530
4966
|
SettingScope["Relationship"] = "Relationship";
|
|
4531
|
-
})(SettingScope
|
|
4967
|
+
})(SettingScope || (exports.SettingScope = SettingScope = {}));
|
|
4532
4968
|
let Setting = class Setting extends transport_1.CoreSynchronizable {
|
|
4533
4969
|
constructor() {
|
|
4534
4970
|
super(...arguments);
|
|
@@ -4552,6 +4988,7 @@ let Setting = class Setting extends transport_1.CoreSynchronizable {
|
|
|
4552
4988
|
return this.fromAny(value);
|
|
4553
4989
|
}
|
|
4554
4990
|
};
|
|
4991
|
+
exports.Setting = Setting;
|
|
4555
4992
|
__decorate([
|
|
4556
4993
|
(0, ts_serval_1.validate)(),
|
|
4557
4994
|
(0, ts_serval_1.serialize)(),
|
|
@@ -4597,10 +5034,9 @@ __decorate([
|
|
|
4597
5034
|
(0, ts_serval_1.serialize)(),
|
|
4598
5035
|
__metadata("design:type", transport_1.CoreDate)
|
|
4599
5036
|
], Setting.prototype, "metadataModifiedAt", void 0);
|
|
4600
|
-
Setting = __decorate([
|
|
5037
|
+
exports.Setting = Setting = __decorate([
|
|
4601
5038
|
(0, ts_serval_1.type)("Setting")
|
|
4602
5039
|
], Setting);
|
|
4603
|
-
exports.Setting = Setting;
|
|
4604
5040
|
//# sourceMappingURL=Setting.js.map
|
|
4605
5041
|
|
|
4606
5042
|
/***/ }),
|
|
@@ -4616,9 +5052,9 @@ exports.Setting = Setting;
|
|
|
4616
5052
|
Object.defineProperty(exports, "__esModule", ({ value: true }));
|
|
4617
5053
|
exports.QueryTranslator = void 0;
|
|
4618
5054
|
class QueryTranslator {
|
|
4619
|
-
static defaultKeyRegex = /^[
|
|
5055
|
+
static defaultKeyRegex = /^[a-zA-Z_@][a-zA-Z@0-9-_]*(\.[a-zA-Z_@][a-zA-Z@0-9-_]*)*$/;
|
|
4620
5056
|
static defaultValRegex = undefined;
|
|
4621
|
-
static defaultArrRegex = /^[a-
|
|
5057
|
+
static defaultArrRegex = /^[a-zA-Zæøå0-9-_.]+(\[])?$/i;
|
|
4622
5058
|
ops;
|
|
4623
5059
|
alias;
|
|
4624
5060
|
blacklist;
|
|
@@ -4733,6 +5169,10 @@ class QueryTranslator {
|
|
|
4733
5169
|
}
|
|
4734
5170
|
const res = {};
|
|
4735
5171
|
for (let key of Object.keys(query)) {
|
|
5172
|
+
// if the key is __proto__ it could cause a prototype-polluting assignment
|
|
5173
|
+
// see https://codeql.github.com/codeql-query-help/javascript/js-prototype-polluting-assignment/ for more information
|
|
5174
|
+
if (key === "__proto__")
|
|
5175
|
+
continue;
|
|
4736
5176
|
const val = query[key];
|
|
4737
5177
|
// Normalize array keys
|
|
4738
5178
|
if (Array.isArray(val)) {
|
|
@@ -5710,8 +6150,18 @@ function peg$parse(input, options) {
|
|
|
5710
6150
|
};
|
|
5711
6151
|
var peg$f9 = function (op) {
|
|
5712
6152
|
switch (op) {
|
|
6153
|
+
/* The ?-op checks whether a particular field is defined or not. Empty
|
|
6154
|
+
* arrays and dicts are treated as undefined. */
|
|
5713
6155
|
case "?":
|
|
5714
|
-
return (fieldVal) => {
|
|
6156
|
+
return (fieldVal) => {
|
|
6157
|
+
if (Array.isArray(fieldVal)) {
|
|
6158
|
+
return fieldVal.length > 0;
|
|
6159
|
+
}
|
|
6160
|
+
if (fieldVal.constructor.name === "Object") {
|
|
6161
|
+
return Object.keys(fieldVal).length > 0;
|
|
6162
|
+
}
|
|
6163
|
+
return (fieldVal !== undefined && fieldVal !== null);
|
|
6164
|
+
};
|
|
5715
6165
|
}
|
|
5716
6166
|
};
|
|
5717
6167
|
var peg$f10 = function (val) {
|
|
@@ -26512,7 +26962,7 @@ function intlConfigString(localeStr, numberingSystem, outputCalendar) {
|
|
|
26512
26962
|
function mapMonths(f) {
|
|
26513
26963
|
const ms = [];
|
|
26514
26964
|
for (let i = 1; i <= 12; i++) {
|
|
26515
|
-
const dt = DateTime.utc(
|
|
26965
|
+
const dt = DateTime.utc(2009, i, 1);
|
|
26516
26966
|
ms.push(f(dt));
|
|
26517
26967
|
}
|
|
26518
26968
|
return ms;
|
|
@@ -26525,8 +26975,8 @@ function mapWeekdays(f) {
|
|
|
26525
26975
|
}
|
|
26526
26976
|
return ms;
|
|
26527
26977
|
}
|
|
26528
|
-
function listStuff(loc, length,
|
|
26529
|
-
const mode = loc.listingMode(
|
|
26978
|
+
function listStuff(loc, length, englishFn, intlFn) {
|
|
26979
|
+
const mode = loc.listingMode();
|
|
26530
26980
|
if (mode === "error") {
|
|
26531
26981
|
return null;
|
|
26532
26982
|
} else if (mode === "en") {
|
|
@@ -26772,8 +27222,8 @@ class Locale {
|
|
|
26772
27222
|
defaultToEN: false
|
|
26773
27223
|
});
|
|
26774
27224
|
}
|
|
26775
|
-
months(length, format = false
|
|
26776
|
-
return listStuff(this, length,
|
|
27225
|
+
months(length, format = false) {
|
|
27226
|
+
return listStuff(this, length, months, () => {
|
|
26777
27227
|
const intl = format ? {
|
|
26778
27228
|
month: length,
|
|
26779
27229
|
day: "numeric"
|
|
@@ -26787,8 +27237,8 @@ class Locale {
|
|
|
26787
27237
|
return this.monthsCache[formatStr][length];
|
|
26788
27238
|
});
|
|
26789
27239
|
}
|
|
26790
|
-
weekdays(length, format = false
|
|
26791
|
-
return listStuff(this, length,
|
|
27240
|
+
weekdays(length, format = false) {
|
|
27241
|
+
return listStuff(this, length, weekdays, () => {
|
|
26792
27242
|
const intl = format ? {
|
|
26793
27243
|
weekday: length,
|
|
26794
27244
|
year: "numeric",
|
|
@@ -26804,8 +27254,8 @@ class Locale {
|
|
|
26804
27254
|
return this.weekdaysCache[formatStr][length];
|
|
26805
27255
|
});
|
|
26806
27256
|
}
|
|
26807
|
-
meridiems(
|
|
26808
|
-
return listStuff(this, undefined,
|
|
27257
|
+
meridiems() {
|
|
27258
|
+
return listStuff(this, undefined, () => meridiems, () => {
|
|
26809
27259
|
// In theory there could be aribitrary day periods. We're gonna assume there are exactly two
|
|
26810
27260
|
// for AM and PM. This is probably wrong, but it's makes parsing way easier.
|
|
26811
27261
|
if (!this.meridiemCache) {
|
|
@@ -26818,8 +27268,8 @@ class Locale {
|
|
|
26818
27268
|
return this.meridiemCache;
|
|
26819
27269
|
});
|
|
26820
27270
|
}
|
|
26821
|
-
eras(length
|
|
26822
|
-
return listStuff(this, length,
|
|
27271
|
+
eras(length) {
|
|
27272
|
+
return listStuff(this, length, eras, () => {
|
|
26823
27273
|
const intl = {
|
|
26824
27274
|
era: length
|
|
26825
27275
|
};
|
|
@@ -27023,7 +27473,7 @@ function normalizeZone(input, defaultZone) {
|
|
|
27023
27473
|
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);
|
|
27024
27474
|
} else if (isNumber(input)) {
|
|
27025
27475
|
return FixedOffsetZone.instance(input);
|
|
27026
|
-
} else if (typeof input === "object" &&
|
|
27476
|
+
} else if (typeof input === "object" && "offset" in input && typeof input.offset === "function") {
|
|
27027
27477
|
// This is dumb, but the instanceof check above doesn't seem to really work
|
|
27028
27478
|
// so we're duck checking it
|
|
27029
27479
|
return input;
|
|
@@ -27140,10 +27590,10 @@ class Settings {
|
|
|
27140
27590
|
/**
|
|
27141
27591
|
* Set the cutoff year after which a string encoding a year as two digits is interpreted to occur in the current century.
|
|
27142
27592
|
* @type {number}
|
|
27143
|
-
* @example Settings.twoDigitCutoffYear = 0 // cut-off year is 0, so all 'yy' are
|
|
27593
|
+
* @example Settings.twoDigitCutoffYear = 0 // cut-off year is 0, so all 'yy' are interpreted as current century
|
|
27144
27594
|
* @example Settings.twoDigitCutoffYear = 50 // '49' -> 1949; '50' -> 2050
|
|
27145
|
-
* @example Settings.twoDigitCutoffYear = 1950 //
|
|
27146
|
-
* @example Settings.twoDigitCutoffYear = 2050 // ALSO
|
|
27595
|
+
* @example Settings.twoDigitCutoffYear = 1950 // interpreted as 50
|
|
27596
|
+
* @example Settings.twoDigitCutoffYear = 2050 // ALSO interpreted as 50
|
|
27147
27597
|
*/
|
|
27148
27598
|
static set twoDigitCutoffYear(cutoffYear) {
|
|
27149
27599
|
twoDigitCutoffYear = cutoffYear % 100;
|
|
@@ -27310,7 +27760,7 @@ function daysInMonth(year, month) {
|
|
|
27310
27760
|
}
|
|
27311
27761
|
}
|
|
27312
27762
|
|
|
27313
|
-
//
|
|
27763
|
+
// convert a calendar object to a local timestamp (epoch, but with the offset baked in)
|
|
27314
27764
|
function objToLocalTS(obj) {
|
|
27315
27765
|
let d = Date.UTC(obj.year, obj.month - 1, obj.day, obj.hour, obj.minute, obj.second, obj.millisecond);
|
|
27316
27766
|
|
|
@@ -27612,33 +28062,24 @@ class Formatter {
|
|
|
27612
28062
|
});
|
|
27613
28063
|
return df.format();
|
|
27614
28064
|
}
|
|
27615
|
-
|
|
27616
|
-
|
|
28065
|
+
dtFormatter(dt, opts = {}) {
|
|
28066
|
+
return this.loc.dtFormatter(dt, {
|
|
27617
28067
|
...this.opts,
|
|
27618
28068
|
...opts
|
|
27619
28069
|
});
|
|
27620
|
-
return df.format();
|
|
27621
28070
|
}
|
|
27622
|
-
|
|
27623
|
-
|
|
27624
|
-
...this.opts,
|
|
27625
|
-
...opts
|
|
27626
|
-
});
|
|
27627
|
-
return df.formatToParts();
|
|
28071
|
+
formatDateTime(dt, opts) {
|
|
28072
|
+
return this.dtFormatter(dt, opts).format();
|
|
27628
28073
|
}
|
|
27629
|
-
|
|
27630
|
-
|
|
27631
|
-
|
|
27632
|
-
|
|
27633
|
-
|
|
28074
|
+
formatDateTimeParts(dt, opts) {
|
|
28075
|
+
return this.dtFormatter(dt, opts).formatToParts();
|
|
28076
|
+
}
|
|
28077
|
+
formatInterval(interval, opts) {
|
|
28078
|
+
const df = this.dtFormatter(interval.start, opts);
|
|
27634
28079
|
return df.dtf.formatRange(interval.start.toJSDate(), interval.end.toJSDate());
|
|
27635
28080
|
}
|
|
27636
|
-
resolvedOptions(dt, opts
|
|
27637
|
-
|
|
27638
|
-
...this.opts,
|
|
27639
|
-
...opts
|
|
27640
|
-
});
|
|
27641
|
-
return df.resolvedOptions();
|
|
28081
|
+
resolvedOptions(dt, opts) {
|
|
28082
|
+
return this.dtFormatter(dt, opts).resolvedOptions();
|
|
27642
28083
|
}
|
|
27643
28084
|
num(n, p = 0) {
|
|
27644
28085
|
// we get some perf out of doing this here, annoyingly
|
|
@@ -27692,7 +28133,7 @@ class Formatter {
|
|
|
27692
28133
|
era: length
|
|
27693
28134
|
}, "era"),
|
|
27694
28135
|
tokenToString = token => {
|
|
27695
|
-
// Where possible:
|
|
28136
|
+
// Where possible: https://cldr.unicode.org/translation/date-time/date-time-symbols
|
|
27696
28137
|
switch (token) {
|
|
27697
28138
|
// ms
|
|
27698
28139
|
case "S":
|
|
@@ -28281,27 +28722,61 @@ function clone$1(dur, alts, clear = false) {
|
|
|
28281
28722
|
};
|
|
28282
28723
|
return new Duration(conf);
|
|
28283
28724
|
}
|
|
28284
|
-
function
|
|
28285
|
-
|
|
28286
|
-
|
|
28287
|
-
|
|
28288
|
-
|
|
28289
|
-
|
|
28290
|
-
|
|
28291
|
-
|
|
28292
|
-
|
|
28293
|
-
// ok, so this is wild, but see the matrix in the tests
|
|
28294
|
-
added = !sameSign && toMap[toUnit] !== 0 && Math.abs(raw) <= 1 ? antiTrunc(raw) : Math.trunc(raw);
|
|
28295
|
-
toMap[toUnit] += added;
|
|
28296
|
-
fromMap[fromUnit] -= added * conv;
|
|
28725
|
+
function durationToMillis(matrix, vals) {
|
|
28726
|
+
var _vals$milliseconds;
|
|
28727
|
+
let sum = (_vals$milliseconds = vals.milliseconds) != null ? _vals$milliseconds : 0;
|
|
28728
|
+
for (const unit of reverseUnits.slice(1)) {
|
|
28729
|
+
if (vals[unit]) {
|
|
28730
|
+
sum += vals[unit] * matrix[unit]["milliseconds"];
|
|
28731
|
+
}
|
|
28732
|
+
}
|
|
28733
|
+
return sum;
|
|
28297
28734
|
}
|
|
28298
28735
|
|
|
28299
28736
|
// NB: mutates parameters
|
|
28300
28737
|
function normalizeValues(matrix, vals) {
|
|
28301
|
-
|
|
28738
|
+
// the logic below assumes the overall value of the duration is positive
|
|
28739
|
+
// if this is not the case, factor is used to make it so
|
|
28740
|
+
const factor = durationToMillis(matrix, vals) < 0 ? -1 : 1;
|
|
28741
|
+
orderedUnits$1.reduceRight((previous, current) => {
|
|
28302
28742
|
if (!isUndefined(vals[current])) {
|
|
28303
28743
|
if (previous) {
|
|
28304
|
-
|
|
28744
|
+
const previousVal = vals[previous] * factor;
|
|
28745
|
+
const conv = matrix[current][previous];
|
|
28746
|
+
|
|
28747
|
+
// if (previousVal < 0):
|
|
28748
|
+
// lower order unit is negative (e.g. { years: 2, days: -2 })
|
|
28749
|
+
// normalize this by reducing the higher order unit by the appropriate amount
|
|
28750
|
+
// and increasing the lower order unit
|
|
28751
|
+
// this can never make the higher order unit negative, because this function only operates
|
|
28752
|
+
// on positive durations, so the amount of time represented by the lower order unit cannot
|
|
28753
|
+
// be larger than the higher order unit
|
|
28754
|
+
// else:
|
|
28755
|
+
// lower order unit is positive (e.g. { years: 2, days: 450 } or { years: -2, days: 450 })
|
|
28756
|
+
// in this case we attempt to convert as much as possible from the lower order unit into
|
|
28757
|
+
// the higher order one
|
|
28758
|
+
//
|
|
28759
|
+
// Math.floor takes care of both of these cases, rounding away from 0
|
|
28760
|
+
// if previousVal < 0 it makes the absolute value larger
|
|
28761
|
+
// if previousVal >= it makes the absolute value smaller
|
|
28762
|
+
const rollUp = Math.floor(previousVal / conv);
|
|
28763
|
+
vals[current] += rollUp * factor;
|
|
28764
|
+
vals[previous] -= rollUp * conv * factor;
|
|
28765
|
+
}
|
|
28766
|
+
return current;
|
|
28767
|
+
} else {
|
|
28768
|
+
return previous;
|
|
28769
|
+
}
|
|
28770
|
+
}, null);
|
|
28771
|
+
|
|
28772
|
+
// try to convert any decimals into smaller units if possible
|
|
28773
|
+
// for example for { years: 2.5, days: 0, seconds: 0 } we want to get { years: 2, days: 182, hours: 12 }
|
|
28774
|
+
orderedUnits$1.reduce((previous, current) => {
|
|
28775
|
+
if (!isUndefined(vals[current])) {
|
|
28776
|
+
if (previous) {
|
|
28777
|
+
const fraction = vals[previous] % 1;
|
|
28778
|
+
vals[previous] -= fraction;
|
|
28779
|
+
vals[current] += fraction * matrix[previous][current];
|
|
28305
28780
|
}
|
|
28306
28781
|
return current;
|
|
28307
28782
|
} else {
|
|
@@ -28607,6 +29082,7 @@ class Duration {
|
|
|
28607
29082
|
* ```
|
|
28608
29083
|
*/
|
|
28609
29084
|
toHuman(opts = {}) {
|
|
29085
|
+
if (!this.isValid) return INVALID$2;
|
|
28610
29086
|
const l = orderedUnits$1.map(unit => {
|
|
28611
29087
|
const val = this.values[unit];
|
|
28612
29088
|
if (isUndefined(val)) {
|
|
@@ -28692,21 +29168,13 @@ class Duration {
|
|
|
28692
29168
|
suppressSeconds: false,
|
|
28693
29169
|
includePrefix: false,
|
|
28694
29170
|
format: "extended",
|
|
28695
|
-
...opts
|
|
29171
|
+
...opts,
|
|
29172
|
+
includeOffset: false
|
|
28696
29173
|
};
|
|
28697
|
-
const
|
|
28698
|
-
|
|
28699
|
-
|
|
28700
|
-
|
|
28701
|
-
if (!opts.suppressMilliseconds || value.milliseconds !== 0) {
|
|
28702
|
-
fmt += ".SSS";
|
|
28703
|
-
}
|
|
28704
|
-
}
|
|
28705
|
-
let str = value.toFormat(fmt);
|
|
28706
|
-
if (opts.includePrefix) {
|
|
28707
|
-
str = "T" + str;
|
|
28708
|
-
}
|
|
28709
|
-
return str;
|
|
29174
|
+
const dateTime = DateTime.fromMillis(millis, {
|
|
29175
|
+
zone: "UTC"
|
|
29176
|
+
});
|
|
29177
|
+
return dateTime.toISOTime(opts);
|
|
28710
29178
|
}
|
|
28711
29179
|
|
|
28712
29180
|
/**
|
|
@@ -28730,7 +29198,8 @@ class Duration {
|
|
|
28730
29198
|
* @return {number}
|
|
28731
29199
|
*/
|
|
28732
29200
|
toMillis() {
|
|
28733
|
-
|
|
29201
|
+
if (!this.isValid) return NaN;
|
|
29202
|
+
return durationToMillis(this.matrix, this.values);
|
|
28734
29203
|
}
|
|
28735
29204
|
|
|
28736
29205
|
/**
|
|
@@ -28856,8 +29325,17 @@ class Duration {
|
|
|
28856
29325
|
|
|
28857
29326
|
/**
|
|
28858
29327
|
* Reduce this Duration to its canonical representation in its current units.
|
|
29328
|
+
* Assuming the overall value of the Duration is positive, this means:
|
|
29329
|
+
* - excessive values for lower-order units are converted to higher-order units (if possible, see first and second example)
|
|
29330
|
+
* - negative lower-order units are converted to higher order units (there must be such a higher order unit, otherwise
|
|
29331
|
+
* the overall value would be negative, see second example)
|
|
29332
|
+
* - fractional values for higher-order units are converted to lower-order units (if possible, see fourth example)
|
|
29333
|
+
*
|
|
29334
|
+
* If the overall value is negative, the result of this method is equivalent to `this.negate().normalize().negate()`.
|
|
28859
29335
|
* @example Duration.fromObject({ years: 2, days: 5000 }).normalize().toObject() //=> { years: 15, days: 255 }
|
|
29336
|
+
* @example Duration.fromObject({ days: 5000 }).normalize().toObject() //=> { days: 5000 }
|
|
28860
29337
|
* @example Duration.fromObject({ hours: 12, minutes: -45 }).normalize().toObject() //=> { hours: 11, minutes: 15 }
|
|
29338
|
+
* @example Duration.fromObject({ years: 2.5, days: 0, hours: 0 }).normalize().toObject() //=> { years: 2, days: 182, hours: 12 }
|
|
28861
29339
|
* @return {Duration}
|
|
28862
29340
|
*/
|
|
28863
29341
|
normalize() {
|
|
@@ -28912,16 +29390,13 @@ class Duration {
|
|
|
28912
29390
|
if (isNumber(vals[k])) {
|
|
28913
29391
|
own += vals[k];
|
|
28914
29392
|
}
|
|
29393
|
+
|
|
29394
|
+
// only keep the integer part for now in the hopes of putting any decimal part
|
|
29395
|
+
// into a smaller unit later
|
|
28915
29396
|
const i = Math.trunc(own);
|
|
28916
29397
|
built[k] = i;
|
|
28917
29398
|
accumulated[k] = (own * 1000 - i * 1000) / 1000;
|
|
28918
29399
|
|
|
28919
|
-
// plus anything further down the chain that should be rolled up in to this
|
|
28920
|
-
for (const down in vals) {
|
|
28921
|
-
if (orderedUnits$1.indexOf(down) > orderedUnits$1.indexOf(k)) {
|
|
28922
|
-
convert(this.matrix, vals, down, built, k);
|
|
28923
|
-
}
|
|
28924
|
-
}
|
|
28925
29400
|
// otherwise, keep it in the wings to boil it later
|
|
28926
29401
|
} else if (isNumber(vals[k])) {
|
|
28927
29402
|
accumulated[k] = vals[k];
|
|
@@ -28935,9 +29410,10 @@ class Duration {
|
|
|
28935
29410
|
built[lastUnit] += key === lastUnit ? accumulated[key] : accumulated[key] / this.matrix[lastUnit][key];
|
|
28936
29411
|
}
|
|
28937
29412
|
}
|
|
29413
|
+
normalizeValues(this.matrix, built);
|
|
28938
29414
|
return clone$1(this, {
|
|
28939
29415
|
values: built
|
|
28940
|
-
}, true)
|
|
29416
|
+
}, true);
|
|
28941
29417
|
}
|
|
28942
29418
|
|
|
28943
29419
|
/**
|
|
@@ -29895,14 +30371,35 @@ function highOrderDiffs(cursor, later, units) {
|
|
|
29895
30371
|
const results = {};
|
|
29896
30372
|
const earlier = cursor;
|
|
29897
30373
|
let lowestOrder, highWater;
|
|
30374
|
+
|
|
30375
|
+
/* This loop tries to diff using larger units first.
|
|
30376
|
+
If we overshoot, we backtrack and try the next smaller unit.
|
|
30377
|
+
"cursor" starts out at the earlier timestamp and moves closer and closer to "later"
|
|
30378
|
+
as we use smaller and smaller units.
|
|
30379
|
+
highWater keeps track of where we would be if we added one more of the smallest unit,
|
|
30380
|
+
this is used later to potentially convert any difference smaller than the smallest higher order unit
|
|
30381
|
+
into a fraction of that smallest higher order unit
|
|
30382
|
+
*/
|
|
29898
30383
|
for (const [unit, differ] of differs) {
|
|
29899
30384
|
if (units.indexOf(unit) >= 0) {
|
|
29900
30385
|
lowestOrder = unit;
|
|
29901
30386
|
results[unit] = differ(cursor, later);
|
|
29902
30387
|
highWater = earlier.plus(results);
|
|
29903
30388
|
if (highWater > later) {
|
|
30389
|
+
// we overshot the end point, backtrack cursor by 1
|
|
29904
30390
|
results[unit]--;
|
|
29905
30391
|
cursor = earlier.plus(results);
|
|
30392
|
+
|
|
30393
|
+
// if we are still overshooting now, we need to backtrack again
|
|
30394
|
+
// this happens in certain situations when diffing times in different zones,
|
|
30395
|
+
// because this calculation ignores time zones
|
|
30396
|
+
if (cursor > later) {
|
|
30397
|
+
// keep the "overshot by 1" around as highWater
|
|
30398
|
+
highWater = cursor;
|
|
30399
|
+
// backtrack cursor by 1
|
|
30400
|
+
results[unit]--;
|
|
30401
|
+
cursor = earlier.plus(results);
|
|
30402
|
+
}
|
|
29906
30403
|
} else {
|
|
29907
30404
|
cursor = highWater;
|
|
29908
30405
|
}
|
|
@@ -30051,6 +30548,11 @@ function simple(regex) {
|
|
|
30051
30548
|
function escapeToken(value) {
|
|
30052
30549
|
return value.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, "\\$&");
|
|
30053
30550
|
}
|
|
30551
|
+
|
|
30552
|
+
/**
|
|
30553
|
+
* @param token
|
|
30554
|
+
* @param {Locale} loc
|
|
30555
|
+
*/
|
|
30054
30556
|
function unitForToken(token, loc) {
|
|
30055
30557
|
const one = digitRegex(loc),
|
|
30056
30558
|
two = digitRegex(loc, "{2}"),
|
|
@@ -30075,9 +30577,9 @@ function unitForToken(token, loc) {
|
|
|
30075
30577
|
switch (t.val) {
|
|
30076
30578
|
// era
|
|
30077
30579
|
case "G":
|
|
30078
|
-
return oneOf(loc.eras("short"
|
|
30580
|
+
return oneOf(loc.eras("short"), 0);
|
|
30079
30581
|
case "GG":
|
|
30080
|
-
return oneOf(loc.eras("long"
|
|
30582
|
+
return oneOf(loc.eras("long"), 0);
|
|
30081
30583
|
// years
|
|
30082
30584
|
case "y":
|
|
30083
30585
|
return intUnit(oneToSix);
|
|
@@ -30095,17 +30597,17 @@ function unitForToken(token, loc) {
|
|
|
30095
30597
|
case "MM":
|
|
30096
30598
|
return intUnit(two);
|
|
30097
30599
|
case "MMM":
|
|
30098
|
-
return oneOf(loc.months("short", true
|
|
30600
|
+
return oneOf(loc.months("short", true), 1);
|
|
30099
30601
|
case "MMMM":
|
|
30100
|
-
return oneOf(loc.months("long", true
|
|
30602
|
+
return oneOf(loc.months("long", true), 1);
|
|
30101
30603
|
case "L":
|
|
30102
30604
|
return intUnit(oneOrTwo);
|
|
30103
30605
|
case "LL":
|
|
30104
30606
|
return intUnit(two);
|
|
30105
30607
|
case "LLL":
|
|
30106
|
-
return oneOf(loc.months("short", false
|
|
30608
|
+
return oneOf(loc.months("short", false), 1);
|
|
30107
30609
|
case "LLLL":
|
|
30108
|
-
return oneOf(loc.months("long", false
|
|
30610
|
+
return oneOf(loc.months("long", false), 1);
|
|
30109
30611
|
// dates
|
|
30110
30612
|
case "d":
|
|
30111
30613
|
return intUnit(oneOrTwo);
|
|
@@ -30165,13 +30667,13 @@ function unitForToken(token, loc) {
|
|
|
30165
30667
|
case "c":
|
|
30166
30668
|
return intUnit(one);
|
|
30167
30669
|
case "EEE":
|
|
30168
|
-
return oneOf(loc.weekdays("short", false
|
|
30670
|
+
return oneOf(loc.weekdays("short", false), 1);
|
|
30169
30671
|
case "EEEE":
|
|
30170
|
-
return oneOf(loc.weekdays("long", false
|
|
30672
|
+
return oneOf(loc.weekdays("long", false), 1);
|
|
30171
30673
|
case "ccc":
|
|
30172
|
-
return oneOf(loc.weekdays("short", true
|
|
30674
|
+
return oneOf(loc.weekdays("short", true), 1);
|
|
30173
30675
|
case "cccc":
|
|
30174
|
-
return oneOf(loc.weekdays("long", true
|
|
30676
|
+
return oneOf(loc.weekdays("long", true), 1);
|
|
30175
30677
|
// offset/zone
|
|
30176
30678
|
case "Z":
|
|
30177
30679
|
case "ZZ":
|
|
@@ -30217,10 +30719,14 @@ const partTypeStyleToTokenVal = {
|
|
|
30217
30719
|
},
|
|
30218
30720
|
dayperiod: "a",
|
|
30219
30721
|
dayPeriod: "a",
|
|
30220
|
-
|
|
30722
|
+
hour12: {
|
|
30221
30723
|
numeric: "h",
|
|
30222
30724
|
"2-digit": "hh"
|
|
30223
30725
|
},
|
|
30726
|
+
hour24: {
|
|
30727
|
+
numeric: "H",
|
|
30728
|
+
"2-digit": "HH"
|
|
30729
|
+
},
|
|
30224
30730
|
minute: {
|
|
30225
30731
|
numeric: "m",
|
|
30226
30732
|
"2-digit": "mm"
|
|
@@ -30234,7 +30740,7 @@ const partTypeStyleToTokenVal = {
|
|
|
30234
30740
|
short: "ZZZ"
|
|
30235
30741
|
}
|
|
30236
30742
|
};
|
|
30237
|
-
function tokenForPart(part, formatOpts) {
|
|
30743
|
+
function tokenForPart(part, formatOpts, resolvedOpts) {
|
|
30238
30744
|
const {
|
|
30239
30745
|
type,
|
|
30240
30746
|
value
|
|
@@ -30247,7 +30753,27 @@ function tokenForPart(part, formatOpts) {
|
|
|
30247
30753
|
};
|
|
30248
30754
|
}
|
|
30249
30755
|
const style = formatOpts[type];
|
|
30250
|
-
|
|
30756
|
+
|
|
30757
|
+
// The user might have explicitly specified hour12 or hourCycle
|
|
30758
|
+
// if so, respect their decision
|
|
30759
|
+
// if not, refer back to the resolvedOpts, which are based on the locale
|
|
30760
|
+
let actualType = type;
|
|
30761
|
+
if (type === "hour") {
|
|
30762
|
+
if (formatOpts.hour12 != null) {
|
|
30763
|
+
actualType = formatOpts.hour12 ? "hour12" : "hour24";
|
|
30764
|
+
} else if (formatOpts.hourCycle != null) {
|
|
30765
|
+
if (formatOpts.hourCycle === "h11" || formatOpts.hourCycle === "h12") {
|
|
30766
|
+
actualType = "hour12";
|
|
30767
|
+
} else {
|
|
30768
|
+
actualType = "hour24";
|
|
30769
|
+
}
|
|
30770
|
+
} else {
|
|
30771
|
+
// tokens only differentiate between 24 hours or not,
|
|
30772
|
+
// so we do not need to check hourCycle here, which is less supported anyways
|
|
30773
|
+
actualType = resolvedOpts.hour12 ? "hour12" : "hour24";
|
|
30774
|
+
}
|
|
30775
|
+
}
|
|
30776
|
+
let val = partTypeStyleToTokenVal[actualType];
|
|
30251
30777
|
if (typeof val === "object") {
|
|
30252
30778
|
val = val[style];
|
|
30253
30779
|
}
|
|
@@ -30423,8 +30949,10 @@ function formatOptsToTokens(formatOpts, locale) {
|
|
|
30423
30949
|
return null;
|
|
30424
30950
|
}
|
|
30425
30951
|
const formatter = Formatter.create(locale, formatOpts);
|
|
30426
|
-
const
|
|
30427
|
-
|
|
30952
|
+
const df = formatter.dtFormatter(getDummyDateTime());
|
|
30953
|
+
const parts = df.formatToParts();
|
|
30954
|
+
const resolvedOpts = df.resolvedOptions();
|
|
30955
|
+
return parts.map(p => tokenForPart(p, formatOpts, resolvedOpts));
|
|
30428
30956
|
}
|
|
30429
30957
|
|
|
30430
30958
|
const nonLeapLadder = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334],
|
|
@@ -30760,13 +31288,13 @@ function toISOTime(o, extended, suppressSeconds, suppressMilliseconds, includeOf
|
|
|
30760
31288
|
if (extended) {
|
|
30761
31289
|
c += ":";
|
|
30762
31290
|
c += padStart(o.c.minute);
|
|
30763
|
-
if (o.c.second !== 0 || !suppressSeconds) {
|
|
31291
|
+
if (o.c.millisecond !== 0 || o.c.second !== 0 || !suppressSeconds) {
|
|
30764
31292
|
c += ":";
|
|
30765
31293
|
}
|
|
30766
31294
|
} else {
|
|
30767
31295
|
c += padStart(o.c.minute);
|
|
30768
31296
|
}
|
|
30769
|
-
if (o.c.second !== 0 || !suppressSeconds) {
|
|
31297
|
+
if (o.c.millisecond !== 0 || o.c.second !== 0 || !suppressSeconds) {
|
|
30770
31298
|
c += padStart(o.c.second);
|
|
30771
31299
|
if (o.c.millisecond !== 0 || !suppressMilliseconds) {
|
|
30772
31300
|
c += ".";
|
|
@@ -31400,7 +31928,7 @@ class DateTime {
|
|
|
31400
31928
|
|
|
31401
31929
|
/**
|
|
31402
31930
|
* Create an invalid DateTime.
|
|
31403
|
-
* @param {
|
|
31931
|
+
* @param {string} reason - simple string of why this DateTime is invalid. Should not contain parameters or anything else data-dependent.
|
|
31404
31932
|
* @param {string} [explanation=null] - longer explanation, may include parameters and other useful debugging information
|
|
31405
31933
|
* @return {DateTime}
|
|
31406
31934
|
*/
|
|
@@ -31759,6 +32287,41 @@ class DateTime {
|
|
|
31759
32287
|
}
|
|
31760
32288
|
}
|
|
31761
32289
|
|
|
32290
|
+
/**
|
|
32291
|
+
* Get those DateTimes which have the same local time as this DateTime, but a different offset from UTC
|
|
32292
|
+
* in this DateTime's zone. During DST changes local time can be ambiguous, for example
|
|
32293
|
+
* `2023-10-29T02:30:00` in `Europe/Berlin` can have offset `+01:00` or `+02:00`.
|
|
32294
|
+
* This method will return both possible DateTimes if this DateTime's local time is ambiguous.
|
|
32295
|
+
* @returns {DateTime[]}
|
|
32296
|
+
*/
|
|
32297
|
+
getPossibleOffsets() {
|
|
32298
|
+
if (!this.isValid || this.isOffsetFixed) {
|
|
32299
|
+
return [this];
|
|
32300
|
+
}
|
|
32301
|
+
const dayMs = 86400000;
|
|
32302
|
+
const minuteMs = 60000;
|
|
32303
|
+
const localTS = objToLocalTS(this.c);
|
|
32304
|
+
const oEarlier = this.zone.offset(localTS - dayMs);
|
|
32305
|
+
const oLater = this.zone.offset(localTS + dayMs);
|
|
32306
|
+
const o1 = this.zone.offset(localTS - oEarlier * minuteMs);
|
|
32307
|
+
const o2 = this.zone.offset(localTS - oLater * minuteMs);
|
|
32308
|
+
if (o1 === o2) {
|
|
32309
|
+
return [this];
|
|
32310
|
+
}
|
|
32311
|
+
const ts1 = localTS - o1 * minuteMs;
|
|
32312
|
+
const ts2 = localTS - o2 * minuteMs;
|
|
32313
|
+
const c1 = tsToObj(ts1, o1);
|
|
32314
|
+
const c2 = tsToObj(ts2, o2);
|
|
32315
|
+
if (c1.hour === c2.hour && c1.minute === c2.minute && c1.second === c2.second && c1.millisecond === c2.millisecond) {
|
|
32316
|
+
return [clone(this, {
|
|
32317
|
+
ts: ts1
|
|
32318
|
+
}), clone(this, {
|
|
32319
|
+
ts: ts2
|
|
32320
|
+
})];
|
|
32321
|
+
}
|
|
32322
|
+
return [this];
|
|
32323
|
+
}
|
|
32324
|
+
|
|
31762
32325
|
/**
|
|
31763
32326
|
* Returns true if this DateTime is in a leap year, false otherwise
|
|
31764
32327
|
* @example DateTime.local(2016).isInLeapYear //=> true
|
|
@@ -32765,7 +33328,7 @@ function friendlyDateTime(dateTimeish) {
|
|
|
32765
33328
|
}
|
|
32766
33329
|
}
|
|
32767
33330
|
|
|
32768
|
-
const VERSION = "3.3
|
|
33331
|
+
const VERSION = "3.4.3";
|
|
32769
33332
|
|
|
32770
33333
|
exports.DateTime = DateTime;
|
|
32771
33334
|
exports.Duration = Duration;
|