@researchdatabox/redbox-core 5.0.3 → 5.0.4
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/DatastreamService.d.ts +2 -0
- package/dist/DatastreamService.d.ts.map +1 -1
- package/dist/QueueService.d.ts +1 -1
- package/dist/QueueService.d.ts.map +1 -1
- package/dist/RecordWriteOptions.d.ts +21 -0
- package/dist/RecordWriteOptions.d.ts.map +1 -0
- package/dist/RecordWriteOptions.js +17 -0
- package/dist/RecordsService.d.ts +3 -1
- package/dist/RecordsService.d.ts.map +1 -1
- package/dist/StorageService.d.ts +14 -2
- package/dist/StorageService.d.ts.map +1 -1
- package/dist/config/agendaQueue.config.d.ts.map +1 -1
- package/dist/config/agendaQueue.config.js +10 -1
- package/dist/config/i18n.config.d.ts +4 -0
- package/dist/config/i18n.config.d.ts.map +1 -1
- package/dist/config/i18n.config.js +1 -1
- package/dist/configmodels/FigsharePublishing.d.ts +103 -0
- package/dist/configmodels/FigsharePublishing.d.ts.map +1 -1
- package/dist/configmodels/FigsharePublishing.js +36 -2
- package/dist/controllers/RecordAuditController.d.ts.map +1 -1
- package/dist/controllers/RecordAuditController.js +24 -6
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/model/storage/FigshareSyncModel.d.ts +126 -0
- package/dist/model/storage/FigshareSyncModel.d.ts.map +1 -0
- package/dist/model/storage/FigshareSyncModel.js +3 -0
- package/dist/model/storage/RecordAuditModel.d.ts +3 -0
- package/dist/model/storage/RecordAuditModel.d.ts.map +1 -1
- package/dist/model/storage/RecordAuditModel.js +29 -1
- package/dist/model/storage/RecordModel.d.ts +3 -0
- package/dist/model/storage/RecordModel.d.ts.map +1 -1
- package/dist/services/AgendaQueueService.d.ts +1 -1
- package/dist/services/AgendaQueueService.d.ts.map +1 -1
- package/dist/services/AgendaQueueService.js +7 -4
- package/dist/services/FigshareService.d.ts +15 -10
- package/dist/services/FigshareService.d.ts.map +1 -1
- package/dist/services/FigshareService.js +76 -536
- package/dist/services/I18nEntriesService.d.ts +2 -0
- package/dist/services/I18nEntriesService.d.ts.map +1 -1
- package/dist/services/I18nEntriesService.js +40 -5
- package/dist/services/RecordsService.d.ts +5 -1
- package/dist/services/RecordsService.d.ts.map +1 -1
- package/dist/services/RecordsService.js +277 -164
- package/dist/services/StandardDatastreamService.d.ts +5 -0
- package/dist/services/StandardDatastreamService.d.ts.map +1 -1
- package/dist/services/StandardDatastreamService.js +18 -1
- package/dist/services/figshare-v2/admin.d.ts +16 -0
- package/dist/services/figshare-v2/admin.d.ts.map +1 -0
- package/dist/services/figshare-v2/admin.js +283 -0
- package/dist/services/figshare-v2/assets.d.ts +20 -1
- package/dist/services/figshare-v2/assets.d.ts.map +1 -1
- package/dist/services/figshare-v2/assets.js +16 -1
- package/dist/services/figshare-v2/config.d.ts +8 -2
- package/dist/services/figshare-v2/config.d.ts.map +1 -1
- package/dist/services/figshare-v2/config.js +31 -3
- package/dist/services/figshare-v2/execution.d.ts +25 -0
- package/dist/services/figshare-v2/execution.d.ts.map +1 -0
- package/dist/services/figshare-v2/execution.js +49 -0
- package/dist/services/figshare-v2/http.d.ts +6 -1
- package/dist/services/figshare-v2/http.d.ts.map +1 -1
- package/dist/services/figshare-v2/http.js +69 -12
- package/dist/services/figshare-v2/identity.d.ts +12 -0
- package/dist/services/figshare-v2/identity.d.ts.map +1 -0
- package/dist/services/figshare-v2/identity.js +78 -0
- package/dist/services/figshare-v2/managed-assets.d.ts +9 -0
- package/dist/services/figshare-v2/managed-assets.d.ts.map +1 -0
- package/dist/services/figshare-v2/managed-assets.js +229 -0
- package/dist/services/figshare-v2/plan.d.ts.map +1 -1
- package/dist/services/figshare-v2/plan.js +2 -9
- package/dist/services/figshare-v2/source-intent.d.ts +9 -0
- package/dist/services/figshare-v2/source-intent.d.ts.map +1 -0
- package/dist/services/figshare-v2/source-intent.js +93 -0
- package/dist/services/figshare-v2/status.d.ts +4 -0
- package/dist/services/figshare-v2/status.d.ts.map +1 -0
- package/dist/services/figshare-v2/status.js +29 -0
- package/dist/services/figshare-v2/sync-store.d.ts +27 -0
- package/dist/services/figshare-v2/sync-store.d.ts.map +1 -0
- package/dist/services/figshare-v2/sync-store.js +139 -0
- package/dist/services/figshare-v2/types.d.ts +3 -0
- package/dist/services/figshare-v2/types.d.ts.map +1 -1
- package/dist/services/figshare-v2/types.js +1 -1
- package/dist/services/figshare-v2/worker.d.ts +16 -0
- package/dist/services/figshare-v2/worker.d.ts.map +1 -0
- package/dist/services/figshare-v2/worker.js +572 -0
- package/dist/utilities/TranslationHtml.d.ts +3 -0
- package/dist/utilities/TranslationHtml.d.ts.map +1 -0
- package/dist/utilities/TranslationHtml.js +46 -0
- package/dist/waterline-models/FigshareSync.d.ts +41 -0
- package/dist/waterline-models/FigshareSync.d.ts.map +1 -0
- package/dist/waterline-models/FigshareSync.js +168 -0
- package/dist/waterline-models/index.d.ts +2 -0
- package/dist/waterline-models/index.d.ts.map +1 -1
- package/dist/waterline-models/index.js +4 -1
- package/package.json +8 -8
|
@@ -1,22 +1,4 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
// Copyright (c) 2017 Queensland Cyber Infrastructure Foundation (http://www.qcif.edu.au/)
|
|
3
|
-
//
|
|
4
|
-
// GNU GENERAL PUBLIC LICENSE
|
|
5
|
-
// Version 2, June 1991
|
|
6
|
-
//
|
|
7
|
-
// This program is free software; you can redistribute it and/or modify
|
|
8
|
-
// it under the terms of the GNU General Public License as published by
|
|
9
|
-
// the Free Software Foundation; either version 2 of the License, or
|
|
10
|
-
// (at your option) any later version.
|
|
11
|
-
//
|
|
12
|
-
// This program is distributed in the hope that it will be useful,
|
|
13
|
-
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
-
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
15
|
-
// GNU General Public License for more details.
|
|
16
|
-
//
|
|
17
|
-
// You should have received a copy of the GNU General Public License along
|
|
18
|
-
// with this program; if not, write to the Free Software Foundation, Inc.,
|
|
19
|
-
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
20
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
21
3
|
if (k2 === undefined) k2 = k;
|
|
22
4
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -55,6 +37,26 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
55
37
|
};
|
|
56
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
57
39
|
exports.Services = void 0;
|
|
40
|
+
const source_intent_1 = require("./figshare-v2/source-intent");
|
|
41
|
+
const RecordWriteOptions_1 = require("../RecordWriteOptions");
|
|
42
|
+
// Copyright (c) 2017 Queensland Cyber Infrastructure Foundation (http://www.qcif.edu.au/)
|
|
43
|
+
//
|
|
44
|
+
// GNU GENERAL PUBLIC LICENSE
|
|
45
|
+
// Version 2, June 1991
|
|
46
|
+
//
|
|
47
|
+
// This program is free software; you can redistribute it and/or modify
|
|
48
|
+
// it under the terms of the GNU General Public License as published by
|
|
49
|
+
// the Free Software Foundation; either version 2 of the License, or
|
|
50
|
+
// (at your option) any later version.
|
|
51
|
+
//
|
|
52
|
+
// This program is distributed in the hope that it will be useful,
|
|
53
|
+
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
54
|
+
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
55
|
+
// GNU General Public License for more details.
|
|
56
|
+
//
|
|
57
|
+
// You should have received a copy of the GNU General Public License along
|
|
58
|
+
// with this program; if not, write to the Free Software Foundation, Inc.,
|
|
59
|
+
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
|
58
60
|
const rxjs_1 = require("rxjs");
|
|
59
61
|
const operators_1 = require("rxjs/operators");
|
|
60
62
|
const RecordAuditModel_1 = require("../model/storage/RecordAuditModel");
|
|
@@ -288,6 +290,8 @@ var Services;
|
|
|
288
290
|
_exportedMethods = [
|
|
289
291
|
'create',
|
|
290
292
|
'updateMeta',
|
|
293
|
+
'setRecordFields',
|
|
294
|
+
'getFigshareIntentStorage',
|
|
291
295
|
'getMeta',
|
|
292
296
|
'getRecordAudit',
|
|
293
297
|
'getResolvedPermissionsSummary',
|
|
@@ -442,112 +446,156 @@ var Services;
|
|
|
442
446
|
}
|
|
443
447
|
// save the record ...
|
|
444
448
|
sails.log.verbose(`${this.logHeader} create() -> recordObj before save: ${JSON.stringify(recordObj)}`);
|
|
445
|
-
|
|
446
|
-
if (
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
});
|
|
473
|
-
}
|
|
474
|
-
// update the metadata ...
|
|
475
|
-
createResponse = await this.updateMeta(brandObj, oid, recordObj, userObj, false, false);
|
|
476
|
-
}
|
|
477
|
-
if (triggerPostSaveTriggers) {
|
|
478
|
-
// post-save sync
|
|
479
|
-
try {
|
|
480
|
-
createResponse = (await this.triggerPostSaveSyncTriggers(createResponse['oid'], recordObj, recordTypeObj, 'onCreate', userObj, createResponse));
|
|
481
|
-
if (this.hasPostSaveSyncHooks(recordTypeObj, 'onCreate')) {
|
|
482
|
-
await this.storageService.updateMeta(brandObj, oid, recordObj, userObj);
|
|
449
|
+
const figshareIntent = (0, source_intent_1.prepareSourceIntent)(recordObj, recordTypeObj, ['onCreate', ...(targetStep ? ['onTransitionWorkflow'] : [])], userObj, true);
|
|
450
|
+
if (figshareIntent && !this.storageService.readyFigshareIntent)
|
|
451
|
+
throw new Error('Storage adapter does not support durable Figshare intents');
|
|
452
|
+
createResponse = await this.storageService.create(brandObj, recordObj, recordTypeObj, userObj, { figshareIntent });
|
|
453
|
+
const createdOid = createResponse.isSuccessful() ? String(createResponse.oid) : '';
|
|
454
|
+
// A failed save abandons its initialising intent, so stale recovery only promotes interrupted saves.
|
|
455
|
+
let figshareFinalised = !figshareIntent || !createdOid;
|
|
456
|
+
try {
|
|
457
|
+
if (createResponse.isSuccessful()) {
|
|
458
|
+
const oid = createResponse.oid;
|
|
459
|
+
sails.log.verbose(`RecordsService - create - oid ${oid}`);
|
|
460
|
+
const recordMetadata = recordObj.metadata;
|
|
461
|
+
const attachmentFields = (recordObj.metaMetadata?.attachmentFields ?? []);
|
|
462
|
+
if (!_.isEmpty(attachmentFields)) {
|
|
463
|
+
this.bindPendingAttachmentOids(recordMetadata, attachmentFields, oid);
|
|
464
|
+
try {
|
|
465
|
+
// handle datastream update
|
|
466
|
+
// we emtpy the data locations in cloned record so we can reuse the same `handleUpdateDataStream` method call
|
|
467
|
+
const emptyDatastreamRecord = _.cloneDeep(recordObj);
|
|
468
|
+
const emptyMetadata = emptyDatastreamRecord.metadata;
|
|
469
|
+
_.each(attachmentFields, (attFieldName) => {
|
|
470
|
+
const attFieldKey = String(attFieldName ?? '');
|
|
471
|
+
_.set(emptyMetadata, attFieldKey, []);
|
|
472
|
+
});
|
|
473
|
+
// update the datastreams in RB, this is a terminal call
|
|
474
|
+
sails.log.verbose(`RecordsService - create - before handleUpdateDataStream`);
|
|
475
|
+
await (0, rxjs_1.firstValueFrom)(this.handleUpdateDataStream(oid, emptyDatastreamRecord, recordMetadata));
|
|
483
476
|
}
|
|
477
|
+
catch (error) {
|
|
478
|
+
sails.log.error(`RecordsService - create - Failed to save record: ${error}`);
|
|
479
|
+
throw new RBValidationError_1.RBValidationError({
|
|
480
|
+
message: `Failed to save record oid ${oid}`,
|
|
481
|
+
options: { cause: error },
|
|
482
|
+
displayErrors: [{ title: 'Failed to save record', meta: { oid } }],
|
|
483
|
+
});
|
|
484
|
+
}
|
|
485
|
+
// update the metadata ...
|
|
486
|
+
createResponse = await this.updateMeta(brandObj, oid, recordObj, userObj, false, false, {}, {}, { maintenance: true });
|
|
484
487
|
}
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
sails.log.error(JSON.stringify(err));
|
|
488
|
-
createResponse.success = false;
|
|
489
|
-
createResponse.message = RBValidationError_1.RBValidationError.displayMessage({
|
|
490
|
-
t: TranslationService,
|
|
491
|
-
errors: [this.asError(err)],
|
|
492
|
-
defaultMessage: failedMessage,
|
|
493
|
-
});
|
|
494
|
-
const metadata = { postSaveSyncWarning: 'true' };
|
|
495
|
-
createResponse.metadata = metadata;
|
|
496
|
-
sails.log.error('RecordsService create - error - createResponse ' + JSON.stringify(createResponse));
|
|
497
|
-
return createResponse;
|
|
498
|
-
}
|
|
499
|
-
// Fire Post-save hooks async ...
|
|
500
|
-
this.triggerPostSaveTriggers(createResponse['oid'], recordObj, recordTypeObj, 'onCreate', userObj);
|
|
501
|
-
if (!_.isEmpty(targetStep)) {
|
|
488
|
+
if (triggerPostSaveTriggers) {
|
|
489
|
+
// post-save sync
|
|
502
490
|
try {
|
|
503
|
-
createResponse = (await this.
|
|
504
|
-
if (createResponse
|
|
505
|
-
if (this.hasPostSaveSyncHooks(recordTypeObj, 'onTransitionWorkflow')) {
|
|
506
|
-
await this.storageService.updateMeta(brandObj, oid, recordObj, userObj);
|
|
507
|
-
}
|
|
508
|
-
}
|
|
509
|
-
else {
|
|
491
|
+
createResponse = (await this.triggerPostSaveSyncTriggers(createResponse['oid'], recordObj, recordTypeObj, 'onCreate', userObj, createResponse));
|
|
492
|
+
if (!createResponse.isSuccessful())
|
|
510
493
|
return createResponse;
|
|
494
|
+
if (this.hasPostSaveSyncHooks(recordTypeObj, 'onCreate')) {
|
|
495
|
+
const persisted = await this.storageService.updateMeta(brandObj, oid, recordObj, userObj, { maintenance: true });
|
|
496
|
+
if (!persisted.isSuccessful())
|
|
497
|
+
throw new Error('Failed to persist synchronous post-save changes');
|
|
511
498
|
}
|
|
512
499
|
}
|
|
513
|
-
catch (
|
|
514
|
-
sails.log.error(
|
|
515
|
-
sails.log.error(
|
|
500
|
+
catch (err) {
|
|
501
|
+
sails.log.error(`${this.logHeader} Exception while running post save sync hooks when creating: ${createResponse['oid']}`);
|
|
502
|
+
sails.log.error(JSON.stringify(err));
|
|
516
503
|
createResponse.success = false;
|
|
517
504
|
createResponse.message = RBValidationError_1.RBValidationError.displayMessage({
|
|
518
505
|
t: TranslationService,
|
|
519
|
-
errors: [this.asError(
|
|
506
|
+
errors: [this.asError(err)],
|
|
520
507
|
defaultMessage: failedMessage,
|
|
521
508
|
});
|
|
509
|
+
const metadata = { postSaveSyncWarning: 'true' };
|
|
510
|
+
createResponse.metadata = metadata;
|
|
511
|
+
sails.log.error('RecordsService create - error - createResponse ' + JSON.stringify(createResponse));
|
|
522
512
|
return createResponse;
|
|
523
513
|
}
|
|
514
|
+
// Fire Post-save hooks async ...
|
|
515
|
+
this.triggerPostSaveTriggers(createResponse['oid'], recordObj, recordTypeObj, 'onCreate', userObj);
|
|
516
|
+
if (!_.isEmpty(targetStep)) {
|
|
517
|
+
try {
|
|
518
|
+
createResponse = (await this.triggerPostSaveTransitionWorkflowTriggers(createResponse['oid'], recordObj, recordTypeObj, wfStep, userObj, createResponse));
|
|
519
|
+
if (createResponse && createResponse.isSuccessful()) {
|
|
520
|
+
if (this.hasPostSaveSyncHooks(recordTypeObj, 'onTransitionWorkflow')) {
|
|
521
|
+
const persisted = await this.storageService.updateMeta(brandObj, oid, recordObj, userObj, { maintenance: true });
|
|
522
|
+
if (!persisted.isSuccessful())
|
|
523
|
+
throw new Error('Failed to persist synchronous workflow changes');
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
else {
|
|
527
|
+
return createResponse;
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
catch (tErr) {
|
|
531
|
+
sails.log.error('RecordsService - create - Failed to run post-save hooks when onTransitionWorkflow... or Error updating meta:');
|
|
532
|
+
sails.log.error(tErr);
|
|
533
|
+
createResponse.success = false;
|
|
534
|
+
createResponse.message = RBValidationError_1.RBValidationError.displayMessage({
|
|
535
|
+
t: TranslationService,
|
|
536
|
+
errors: [this.asError(tErr)],
|
|
537
|
+
defaultMessage: failedMessage,
|
|
538
|
+
});
|
|
539
|
+
return createResponse;
|
|
540
|
+
}
|
|
541
|
+
}
|
|
524
542
|
}
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
if (recordTypeObj.searchable !== false) {
|
|
530
|
-
this.searchService.index(createResponse['oid'], recordObj);
|
|
543
|
+
if (figshareIntent && createResponse.isSuccessful()) {
|
|
544
|
+
await this.storageService.readyFigshareIntent(oid, figshareIntent.saveToken);
|
|
545
|
+
figshareFinalised = true;
|
|
546
|
+
void FigshareService.wakeFigshareRecord(oid).catch(error => sails.log.error('Figshare wake-up failed; dispatcher will recover', error));
|
|
531
547
|
}
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
548
|
+
const recordOid = String(_.get(recordObj, 'redboxOid', ''));
|
|
549
|
+
if (_.isEmpty(recordOid)) {
|
|
550
|
+
sails.log.warn(`recordOid: '${recordOid}' is empty! Using response oid: ${createResponse['oid']} for solr index.`);
|
|
551
|
+
if (recordTypeObj.searchable !== false) {
|
|
552
|
+
this.searchService.index(createResponse['oid'], recordObj);
|
|
553
|
+
}
|
|
536
554
|
}
|
|
537
|
-
|
|
538
|
-
|
|
555
|
+
else {
|
|
556
|
+
if (createResponse['oid'] !== recordOid) {
|
|
557
|
+
sails.log.warn(`response oid: ${createResponse['oid']} is not the same as recordOid: ${recordOid}.`);
|
|
558
|
+
}
|
|
559
|
+
if (recordTypeObj.searchable !== false) {
|
|
560
|
+
this.searchService.index(recordOid, recordObj);
|
|
561
|
+
}
|
|
539
562
|
}
|
|
563
|
+
await this.auditRecord(createResponse['oid'], recordObj, userObj, RecordAuditModel_1.RecordAuditActionType.created);
|
|
540
564
|
}
|
|
541
|
-
|
|
565
|
+
else {
|
|
566
|
+
sails.log.error(`${this.logHeader} Failed to create record, storage service response:`);
|
|
567
|
+
sails.log.error(JSON.stringify(createResponse));
|
|
568
|
+
createResponse.message = failedMessage;
|
|
569
|
+
}
|
|
570
|
+
return createResponse;
|
|
542
571
|
}
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
572
|
+
finally {
|
|
573
|
+
if (!figshareFinalised)
|
|
574
|
+
await this.abandonFigshareIntent(createdOid, figshareIntent.saveToken);
|
|
575
|
+
}
|
|
576
|
+
}
|
|
577
|
+
getFigshareIntentStorage() { return this.storageService; }
|
|
578
|
+
async abandonFigshareIntent(oid, saveToken) {
|
|
579
|
+
try {
|
|
580
|
+
await this.storageService.abandonFigshareIntent?.(oid, saveToken);
|
|
581
|
+
}
|
|
582
|
+
catch (error) {
|
|
583
|
+
sails.log.error(`Failed to abandon Figshare intent for ${oid}; it remains initialising`, error);
|
|
547
584
|
}
|
|
548
|
-
return createResponse;
|
|
549
585
|
}
|
|
550
|
-
async
|
|
586
|
+
async setRecordFields(oid, fields, expectedVersion, allowedPaths, user) {
|
|
587
|
+
(0, RecordWriteOptions_1.assertRecordFieldPaths)(fields, allowedPaths);
|
|
588
|
+
if (!this.storageService.setRecordFields)
|
|
589
|
+
throw new Error('Storage adapter does not support conditional partial writes');
|
|
590
|
+
const result = await this.storageService.setRecordFields(oid, fields, expectedVersion, allowedPaths);
|
|
591
|
+
if (result.updated) {
|
|
592
|
+
const current = await this.storageService.getMeta(oid);
|
|
593
|
+
await this.searchService.index(oid, current);
|
|
594
|
+
await this.auditRecord(oid, current, user, RecordAuditModel_1.RecordAuditActionType.updated);
|
|
595
|
+
}
|
|
596
|
+
return result;
|
|
597
|
+
}
|
|
598
|
+
async updateMeta(brand, oid, record, user = {}, triggerPreSaveTriggers = true, triggerPostSaveTriggers = true, nextStep = {}, metadata = {}, writeOptions = {}) {
|
|
551
599
|
const brandObj = brand;
|
|
552
600
|
let recordObj = this.normalizeRecord(record);
|
|
553
601
|
const recordMeta = recordObj.metaMetadata;
|
|
@@ -558,6 +606,7 @@ var Services;
|
|
|
558
606
|
updateResponse.oid = oid;
|
|
559
607
|
const failedMessage = 'Failed to update record, please check server logs.';
|
|
560
608
|
let hasPermissionToTransition = true;
|
|
609
|
+
let transitionApplied = false;
|
|
561
610
|
const origRecord = _.cloneDeep(recordObj);
|
|
562
611
|
const origRecordObj = this.normalizeRecord(origRecord);
|
|
563
612
|
sails.log.verbose(`RecordService - updateMeta - origRecord - cloneDeep`);
|
|
@@ -595,8 +644,11 @@ var Services;
|
|
|
595
644
|
sails.log.verbose(`RecordService - updateMeta triggerPreSaveTransitionWorkflowTriggers - before - nextStep ${JSON.stringify(nextStepObj)}`);
|
|
596
645
|
recordObj = await this.triggerPreSaveTransitionWorkflowTriggers(updateResponse['oid'], recordObj, recordType, nextStepObj, userObj);
|
|
597
646
|
this.transitionWorkflowStepMetadata(recordObj, nextStepObj);
|
|
647
|
+
transitionApplied = true;
|
|
598
648
|
}
|
|
599
649
|
catch (err) {
|
|
650
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
651
|
+
throw err;
|
|
600
652
|
sails.log.verbose('RecordService - updateMeta - onTransitionWorkflow triggerPreSaveTriggers error');
|
|
601
653
|
sails.log.error(JSON.stringify(err));
|
|
602
654
|
preTriggerResponse.success = false;
|
|
@@ -620,6 +672,8 @@ var Services;
|
|
|
620
672
|
recordObj = await this.triggerPreSaveTriggers(oid, recordObj, recordType, 'onUpdate', userObj);
|
|
621
673
|
}
|
|
622
674
|
catch (err) {
|
|
675
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
676
|
+
throw err;
|
|
623
677
|
sails.log.error(`${this.logHeader} Failed to run pre-save hooks when onUpdate...`);
|
|
624
678
|
sails.log.error(err);
|
|
625
679
|
updateResponse.success = false;
|
|
@@ -635,7 +689,16 @@ var Services;
|
|
|
635
689
|
JSON.stringify(origRecordObj.metadata?.dataLocations));
|
|
636
690
|
sails.log.verbose(`RecordService - updateMeta - record.metadata.dataLocations ` +
|
|
637
691
|
JSON.stringify(recordObj.metadata?.dataLocations));
|
|
638
|
-
|
|
692
|
+
if (writeOptions.expectedVersion != null) {
|
|
693
|
+
for (const field of (recordMeta.attachmentFields ?? [])) {
|
|
694
|
+
if (!_.isEqual(_.get(origRecordObj.metadata, field), _.get(recordObj.metadata, field))) {
|
|
695
|
+
throw new Error('Conditional background workflow cannot change attachments; apply the attachment change in a source save');
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
}
|
|
699
|
+
else {
|
|
700
|
+
updateResponse = (await (0, rxjs_1.firstValueFrom)(this.handleUpdateDataStream(oid, origRecordObj, recordObj.metadata ?? {})));
|
|
701
|
+
}
|
|
639
702
|
sails.log.verbose(`RecordService - updateMeta - Done with updating streams...`);
|
|
640
703
|
if (!_.isEmpty(recordMeta.attachmentFields)) {
|
|
641
704
|
const recordMetadata = recordObj.metadata;
|
|
@@ -652,82 +715,116 @@ var Services;
|
|
|
652
715
|
}
|
|
653
716
|
recordMeta.lastSaveDate = luxon_1.DateTime.local().toISO();
|
|
654
717
|
// update
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
if (
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
t: TranslationService,
|
|
679
|
-
errors: [this.asError(err)],
|
|
680
|
-
defaultMessage: failedMessage,
|
|
681
|
-
});
|
|
682
|
-
const metadataRes = { postSaveSyncWarning: 'true' };
|
|
683
|
-
updateResponse.metadata = metadataRes;
|
|
684
|
-
sails.log.error('RecordsService - updateMeta - error - updateResponse ' + JSON.stringify(updateResponse));
|
|
685
|
-
return updateResponse;
|
|
718
|
+
const initialising = triggerPostSaveTriggers && (this.hasPostSaveSyncHooks(recordType, 'onUpdate') || (transitionApplied && this.hasPostSaveSyncHooks(recordType, 'onTransitionWorkflow')));
|
|
719
|
+
const figshareIntent = (0, source_intent_1.prepareSourceIntent)({ ...recordObj, redboxOid: oid }, recordType, ['onUpdate', ...(transitionApplied ? ['onTransitionWorkflow'] : [])], userObj, initialising, writeOptions.maintenance);
|
|
720
|
+
if (figshareIntent && !this.storageService.readyFigshareIntent)
|
|
721
|
+
throw new Error('Storage adapter does not support durable Figshare intents');
|
|
722
|
+
updateResponse = await this.storageService.updateMeta(brandObj, oid, recordObj, userObj, { ...writeOptions, figshareIntent });
|
|
723
|
+
// A failed save abandons its initialising intent, so stale recovery only promotes interrupted saves.
|
|
724
|
+
let figshareFinalised = !figshareIntent || !initialising || !updateResponse.isSuccessful();
|
|
725
|
+
try {
|
|
726
|
+
let expectedVersion = Number(updateResponse.metadata?.recordVersion ?? 0);
|
|
727
|
+
const persistSecondary = async () => {
|
|
728
|
+
const result = await this.storageService.updateMeta(brandObj, oid, recordObj, userObj, {
|
|
729
|
+
maintenance: true, ...(writeOptions.expectedVersion != null ? { expectedVersion } : {})
|
|
730
|
+
});
|
|
731
|
+
if (!result.isSuccessful())
|
|
732
|
+
throw new Error('Failed to persist synchronous post-save changes');
|
|
733
|
+
expectedVersion = Number(result.metadata?.recordVersion ?? expectedVersion);
|
|
734
|
+
};
|
|
735
|
+
sails.log.verbose('RecordService - updateMeta - updateResponse.isSuccessful ' + updateResponse.isSuccessful());
|
|
736
|
+
if (updateResponse.isSuccessful()) {
|
|
737
|
+
//if triggerPreSaveTriggers is false recordType will be empty even if triggerPostSaveTriggers is true
|
|
738
|
+
//therefore try to set recordType if triggerPostSaveTriggers is true
|
|
739
|
+
if (_.isEmpty(recordType) && !_.isEmpty(brand) && triggerPostSaveTriggers === true) {
|
|
740
|
+
recordType = await (0, rxjs_1.firstValueFrom)(RecordTypesService.get(brandObj, recordMeta.type));
|
|
686
741
|
}
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
if (hasPermissionToTransition && !_.isEmpty(nextStepObj)) {
|
|
742
|
+
// post-save async
|
|
743
|
+
if (!_.isEmpty(recordType) && triggerPostSaveTriggers === true) {
|
|
744
|
+
// Trigger Post-save sync hooks ...
|
|
691
745
|
try {
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
if (updateResponse && updateResponse.isSuccessful()) {
|
|
696
|
-
sails.log.verbose(`RecordService - updateMeta - triggerPostSaveTransitionWorkflowTriggers ajaxOk`);
|
|
697
|
-
if (this.hasPostSaveSyncHooks(recordType, 'onTransitionWorkflow')) {
|
|
698
|
-
await this.storageService.updateMeta(brandObj, oid, recordObj, userObj);
|
|
699
|
-
}
|
|
700
|
-
}
|
|
701
|
-
else {
|
|
702
|
-
sails.log.verbose(`RecordService - updateMeta - triggerPostSaveTransitionWorkflowTriggers post save hook not successful`);
|
|
746
|
+
sails.log.verbose('RecordService - updateMeta - calling triggerPostSaveSyncTriggers');
|
|
747
|
+
updateResponse = (await this.triggerPostSaveSyncTriggers(updateResponse['oid'], recordObj, recordType, 'onUpdate', userObj, updateResponse));
|
|
748
|
+
if (!updateResponse.isSuccessful())
|
|
703
749
|
return updateResponse;
|
|
750
|
+
if (this.hasPostSaveSyncHooks(recordType, 'onUpdate')) {
|
|
751
|
+
await persistSecondary();
|
|
704
752
|
}
|
|
705
753
|
}
|
|
706
|
-
catch (
|
|
707
|
-
|
|
708
|
-
|
|
754
|
+
catch (err) {
|
|
755
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
756
|
+
throw err;
|
|
757
|
+
sails.log.error(`${this.logHeader} Exception while running post save sync hooks when updating:`);
|
|
758
|
+
sails.log.error(JSON.stringify(err));
|
|
709
759
|
updateResponse.success = false;
|
|
710
760
|
updateResponse.message = RBValidationError_1.RBValidationError.displayMessage({
|
|
711
761
|
t: TranslationService,
|
|
712
|
-
errors: [this.asError(
|
|
762
|
+
errors: [this.asError(err)],
|
|
713
763
|
defaultMessage: failedMessage,
|
|
714
764
|
});
|
|
765
|
+
const metadataRes = { postSaveSyncWarning: 'true' };
|
|
766
|
+
updateResponse.metadata = metadataRes;
|
|
767
|
+
sails.log.error('RecordsService - updateMeta - error - updateResponse ' + JSON.stringify(updateResponse));
|
|
715
768
|
return updateResponse;
|
|
716
769
|
}
|
|
770
|
+
sails.log.verbose('RecordService - updateMeta - calling triggerPostSaveTriggers');
|
|
771
|
+
// Fire Post-save hooks async ...
|
|
772
|
+
this.triggerPostSaveTriggers(updateResponse['oid'], recordObj, recordType, 'onUpdate', userObj);
|
|
773
|
+
if (hasPermissionToTransition && !_.isEmpty(nextStepObj)) {
|
|
774
|
+
try {
|
|
775
|
+
updateResponse = (await this.triggerPostSaveTransitionWorkflowTriggers(updateResponse['oid'], recordObj, recordType, nextStepObj, userObj, updateResponse));
|
|
776
|
+
sails.log.verbose(`RecordService - updateMeta - triggerPostSaveTransitionWorkflowTriggers post save hook enter`);
|
|
777
|
+
sails.log.verbose(JSON.stringify(updateResponse));
|
|
778
|
+
if (updateResponse && updateResponse.isSuccessful()) {
|
|
779
|
+
sails.log.verbose(`RecordService - updateMeta - triggerPostSaveTransitionWorkflowTriggers ajaxOk`);
|
|
780
|
+
if (this.hasPostSaveSyncHooks(recordType, 'onTransitionWorkflow')) {
|
|
781
|
+
await persistSecondary();
|
|
782
|
+
}
|
|
783
|
+
}
|
|
784
|
+
else {
|
|
785
|
+
sails.log.verbose(`RecordService - updateMeta - triggerPostSaveTransitionWorkflowTriggers post save hook not successful`);
|
|
786
|
+
return updateResponse;
|
|
787
|
+
}
|
|
788
|
+
}
|
|
789
|
+
catch (tErr) {
|
|
790
|
+
if (tErr instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
791
|
+
throw tErr;
|
|
792
|
+
sails.log.error('RecordService - updateMeta - Failed to run post-save hooks when onTransitionWorkflow... or Error updating meta:');
|
|
793
|
+
sails.log.error(tErr);
|
|
794
|
+
updateResponse.success = false;
|
|
795
|
+
updateResponse.message = RBValidationError_1.RBValidationError.displayMessage({
|
|
796
|
+
t: TranslationService,
|
|
797
|
+
errors: [this.asError(tErr)],
|
|
798
|
+
defaultMessage: failedMessage,
|
|
799
|
+
});
|
|
800
|
+
return updateResponse;
|
|
801
|
+
}
|
|
802
|
+
}
|
|
803
|
+
}
|
|
804
|
+
if (figshareIntent) {
|
|
805
|
+
if (initialising) {
|
|
806
|
+
await this.storageService.readyFigshareIntent(oid, figshareIntent.saveToken);
|
|
807
|
+
figshareFinalised = true;
|
|
808
|
+
}
|
|
809
|
+
void FigshareService.wakeFigshareRecord(oid).catch(error => sails.log.error('Figshare wake-up failed; dispatcher will recover', error));
|
|
810
|
+
}
|
|
811
|
+
if (recordType?.searchable !== false) {
|
|
812
|
+
this.searchService.index(oid, recordObj);
|
|
717
813
|
}
|
|
814
|
+
await this.auditRecord(updateResponse['oid'], record, user, RecordAuditModel_1.RecordAuditActionType.updated);
|
|
718
815
|
}
|
|
719
|
-
|
|
720
|
-
|
|
816
|
+
else {
|
|
817
|
+
sails.log.error(`${this.logHeader} Failed to update record, storage service response:`);
|
|
818
|
+
sails.log.error(JSON.stringify(updateResponse));
|
|
819
|
+
updateResponse.success = false;
|
|
820
|
+
updateResponse.message = failedMessage;
|
|
721
821
|
}
|
|
722
|
-
|
|
822
|
+
return updateResponse;
|
|
723
823
|
}
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
updateResponse.success = false;
|
|
728
|
-
updateResponse.message = failedMessage;
|
|
824
|
+
finally {
|
|
825
|
+
if (!figshareFinalised)
|
|
826
|
+
await this.abandonFigshareIntent(oid, figshareIntent.saveToken);
|
|
729
827
|
}
|
|
730
|
-
return updateResponse;
|
|
731
828
|
}
|
|
732
829
|
hasPostSaveSyncHooks(recordType, mode) {
|
|
733
830
|
const postSaveSyncHooks = _.get(recordType, `hooks.${mode}.postSync`, []);
|
|
@@ -753,6 +850,8 @@ var Services;
|
|
|
753
850
|
}
|
|
754
851
|
}
|
|
755
852
|
catch (err) {
|
|
853
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
854
|
+
throw err;
|
|
756
855
|
sails.log.error(`${this.logHeader} Failed to create fallback record audit:`);
|
|
757
856
|
sails.log.error(JSON.stringify(err));
|
|
758
857
|
}
|
|
@@ -865,6 +964,8 @@ var Services;
|
|
|
865
964
|
currentRecObj = await this.triggerPreSaveTriggers(oid, currentRecObj, recordTypeObj, 'onDelete', user);
|
|
866
965
|
}
|
|
867
966
|
catch (err) {
|
|
967
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
968
|
+
throw err;
|
|
868
969
|
sails.log.verbose('RecordsService - delete - triggerPreSaveTriggers onDelete error');
|
|
869
970
|
sails.log.error(JSON.stringify(err));
|
|
870
971
|
preTriggerResponse.success = false;
|
|
@@ -887,6 +988,8 @@ var Services;
|
|
|
887
988
|
response = (await this.triggerPostSaveSyncTriggers(oid, currentRecObj, recordTypeObj, 'onDelete', user, response));
|
|
888
989
|
}
|
|
889
990
|
catch (err) {
|
|
991
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
992
|
+
throw err;
|
|
890
993
|
sails.log.error(`RecordsService - delete - Exception while running post delate sync hooks when updating:`);
|
|
891
994
|
sails.log.error(JSON.stringify(err));
|
|
892
995
|
response.success = false;
|
|
@@ -991,6 +1094,8 @@ var Services;
|
|
|
991
1094
|
await storageServiceAny.createRecordAudit(data);
|
|
992
1095
|
}
|
|
993
1096
|
catch (err) {
|
|
1097
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
1098
|
+
throw err;
|
|
994
1099
|
sails.log.error(`${this.logHeader} Failed to create record audit in integrationtest:`);
|
|
995
1100
|
sails.log.error(JSON.stringify(err));
|
|
996
1101
|
}
|
|
@@ -1411,6 +1516,8 @@ var Services;
|
|
|
1411
1516
|
}
|
|
1412
1517
|
}
|
|
1413
1518
|
catch (err) {
|
|
1519
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
1520
|
+
throw err;
|
|
1414
1521
|
sails.log.error(`${this.logHeader} Exception while running post save sync hooks when transitioning workflow: ${JSON.stringify(err)}`);
|
|
1415
1522
|
responseObj.success = false;
|
|
1416
1523
|
responseObj.message = RBValidationError_1.RBValidationError.displayMessage({
|
|
@@ -1449,6 +1556,8 @@ var Services;
|
|
|
1449
1556
|
sails.log.debug(`pre-save sync trigger ${preSaveUpdateHookFunctionString} completed for ${oid}`);
|
|
1450
1557
|
}
|
|
1451
1558
|
catch (err) {
|
|
1559
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
1560
|
+
throw err;
|
|
1452
1561
|
sails.log.error(`pre-save trigger ${preSaveUpdateHookFunctionString} failed to complete for oid ${oid} mode ${mode} user ${user}`);
|
|
1453
1562
|
sails.log.error(err);
|
|
1454
1563
|
throw new RBValidationError_1.RBValidationError({
|
|
@@ -1492,6 +1601,8 @@ var Services;
|
|
|
1492
1601
|
sails.log.debug(`post-save sync trigger ${postSaveSyncHooksFunctionString} completed for ${oid}`);
|
|
1493
1602
|
}
|
|
1494
1603
|
catch (err) {
|
|
1604
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
1605
|
+
throw err;
|
|
1495
1606
|
sails.log.error(`post-save async trigger ${postSaveSyncHooksFunctionString} failed to complete for oid ${oid} mode ${mode} user ${user}`);
|
|
1496
1607
|
sails.log.error(err);
|
|
1497
1608
|
throw new RBValidationError_1.RBValidationError({
|
|
@@ -1540,6 +1651,8 @@ var Services;
|
|
|
1540
1651
|
});
|
|
1541
1652
|
}
|
|
1542
1653
|
catch (err) {
|
|
1654
|
+
if (err instanceof RecordWriteOptions_1.RecordWriteConflict)
|
|
1655
|
+
throw err;
|
|
1543
1656
|
sails.log.error(`post-save trigger external catch ${postSaveCreateHookFunctionString} failed to complete`);
|
|
1544
1657
|
sails.log.error(err);
|
|
1545
1658
|
}
|
|
@@ -1594,4 +1707,4 @@ var Services;
|
|
|
1594
1707
|
}
|
|
1595
1708
|
Services.Records = Records;
|
|
1596
1709
|
})(Services || (exports.Services = Services = {}));
|
|
1597
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVjb3Jkc1NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvUmVjb3Jkc1NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLDBGQUEwRjtBQUMxRixFQUFFO0FBQ0YsNkJBQTZCO0FBQzdCLDBCQUEwQjtBQUMxQixFQUFFO0FBQ0YsdUVBQXVFO0FBQ3ZFLHVFQUF1RTtBQUN2RSxvRUFBb0U7QUFDcEUsc0NBQXNDO0FBQ3RDLEVBQUU7QUFDRixrRUFBa0U7QUFDbEUsaUVBQWlFO0FBQ2pFLGdFQUFnRTtBQUNoRSwrQ0FBK0M7QUFDL0MsRUFBRTtBQUNGLDBFQUEwRTtBQUMxRSwwRUFBMEU7QUFDMUUsOERBQThEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFOUQsK0JBQWlGO0FBQ2pGLDhDQUE2RDtBQUs3RCx3RUFBNEY7QUFHNUYsZ0RBQXNEO0FBSXRELHNFQUFtRTtBQUVuRSxrRUFBK0Q7QUFLL0Qsa0RBQTBCO0FBQzFCLHFEQUF1QztBQUN2QyxnREFBa0M7QUFDbEMsTUFBTSx1QkFBdUIsR0FBRyxPQUFPLENBQUMscUJBQXFCLENBQTBELENBQUM7QUFDeEgsTUFBTSxpQkFBaUIsR0FDckIsT0FBTyx1QkFBdUIsS0FBSyxVQUFVO0lBQzNDLENBQUMsQ0FBQyx1QkFBdUI7SUFDekIsQ0FBQyxDQUFFLENBQUUsdUJBQW1ELENBQUMsTUFBTTtRQUM1RCx1QkFBbUQsQ0FBQyxPQUFPLENBQStCLENBQUM7QUFDbEcsaUNBQWlDO0FBRWpDLCtCQUFvQztBQUlwQyxtRUFBdUU7QUFRdkUsSUFBaUIsUUFBUSxDQXU1RHhCO0FBdjVERCxXQUFpQixRQUFRO0lBU3ZCLE1BQU0sMkJBQTJCLEdBQUcsZ0JBQWdCLENBQUM7SUFDckQ7Ozs7Ozs7O09BUUc7SUFDSCxNQUFhLE9BQVEsU0FBUSxzQkFBUSxDQUFDLElBQUksQ0FBQyxPQUFPO1FBQ2hELGNBQWMsQ0FBa0I7UUFD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
|
|
1710
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVjb3Jkc1NlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2VydmljZXMvUmVjb3Jkc1NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0RBQWtFO0FBQ2xFLDhEQUF3RztBQUN4RywwRkFBMEY7QUFDMUYsRUFBRTtBQUNGLDZCQUE2QjtBQUM3QiwwQkFBMEI7QUFDMUIsRUFBRTtBQUNGLHVFQUF1RTtBQUN2RSx1RUFBdUU7QUFDdkUsb0VBQW9FO0FBQ3BFLHNDQUFzQztBQUN0QyxFQUFFO0FBQ0Ysa0VBQWtFO0FBQ2xFLGlFQUFpRTtBQUNqRSxnRUFBZ0U7QUFDaEUsK0NBQStDO0FBQy9DLEVBQUU7QUFDRiwwRUFBMEU7QUFDMUUsMEVBQTBFO0FBQzFFLDhEQUE4RDtBQUU5RCwrQkFBaUY7QUFDakYsOENBQTZEO0FBSzdELHdFQUE0RjtBQUc1RixnREFBc0Q7QUFJdEQsc0VBQW1FO0FBRW5FLGtFQUErRDtBQUsvRCxrREFBMEI7QUFDMUIscURBQXVDO0FBQ3ZDLGdEQUFrQztBQUNsQyxNQUFNLHVCQUF1QixHQUFHLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBMEQsQ0FBQztBQUN4SCxNQUFNLGlCQUFpQixHQUNyQixPQUFPLHVCQUF1QixLQUFLLFVBQVU7SUFDM0MsQ0FBQyxDQUFDLHVCQUF1QjtJQUN6QixDQUFDLENBQUUsQ0FBRSx1QkFBbUQsQ0FBQyxNQUFNO1FBQzVELHVCQUFtRCxDQUFDLE9BQU8sQ0FBK0IsQ0FBQztBQUNsRyxpQ0FBaUM7QUFFakMsK0JBQW9DO0FBSXBDLG1FQUF1RTtBQVF2RSxJQUFpQixRQUFRLENBMitEeEI7QUEzK0RELFdBQWlCLFFBQVE7SUFTdkIsTUFBTSwyQkFBMkIsR0FBRyxnQkFBZ0IsQ0FBQztJQUNyRDs7Ozs7Ozs7T0FRRztJQUNILE1BQWEsT0FBUSxTQUFRLHNCQUFRLENBQUMsSUFBSSxDQUFD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
|