@sapui5/sap.fe.core 1.141.2 → 1.142.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/sap/fe/core/.library +4 -1
- package/src/sap/fe/core/ActionRuntime.js +48 -23
- package/src/sap/fe/core/ActionRuntime.ts +61 -35
- package/src/sap/fe/core/AppComponent.js +76 -6
- package/src/sap/fe/core/AppComponent.ts +94 -8
- package/src/sap/fe/core/AppStateHandler.js +9 -8
- package/src/sap/fe/core/AppStateHandler.ts +13 -9
- package/src/sap/fe/core/BaseController.js +8 -5
- package/src/sap/fe/core/BaseController.ts +6 -1
- package/src/sap/fe/core/CommonUtils.js +4 -123
- package/src/sap/fe/core/CommonUtils.ts +3 -172
- package/src/sap/fe/core/ExtensionAPI.js +3 -10
- package/src/sap/fe/core/ExtensionAPI.ts +2 -14
- package/src/sap/fe/core/PageController.js +64 -43
- package/src/sap/fe/core/PageController.ts +62 -47
- package/src/sap/fe/core/TemplateComponent.js +20 -1
- package/src/sap/fe/core/TemplateComponent.ts +24 -2
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +37 -24
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +47 -31
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockSupport.js +1 -1
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockSupport.ts +4 -0
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplateProcessor.js +4 -1
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplateProcessor.ts +3 -0
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplatingBase.js +4 -1
- package/src/sap/fe/core/buildingBlocks/templating/BuildingBlockTemplatingBase.ts +4 -0
- package/src/sap/fe/core/controllerextensions/BaseControllerExtension.js +7 -5
- package/src/sap/fe/core/controllerextensions/BaseControllerExtension.ts +22 -2
- package/src/sap/fe/core/controllerextensions/CollaborativeDraft.js +82 -39
- package/src/sap/fe/core/controllerextensions/CollaborativeDraft.ts +91 -54
- package/src/sap/fe/core/controllerextensions/EditFlow.js +25 -3
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +27 -3
- package/src/sap/fe/core/controllerextensions/InlineEditFlow.js +9 -7
- package/src/sap/fe/core/controllerextensions/InlineEditFlow.ts +17 -5
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +37 -18
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +49 -17
- package/src/sap/fe/core/controllerextensions/KPIManagement.js +30 -15
- package/src/sap/fe/core/controllerextensions/KPIManagement.ts +32 -14
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +9 -10
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +8 -9
- package/src/sap/fe/core/controllerextensions/Paginator.js +2 -2
- package/src/sap/fe/core/controllerextensions/Paginator.ts +1 -1
- package/src/sap/fe/core/controllerextensions/Placeholder.js +10 -2
- package/src/sap/fe/core/controllerextensions/Placeholder.ts +5 -1
- package/src/sap/fe/core/controllerextensions/Recommendations.js +3 -3
- package/src/sap/fe/core/controllerextensions/Recommendations.ts +2 -2
- package/src/sap/fe/core/controllerextensions/Routing.js +9 -5
- package/src/sap/fe/core/controllerextensions/Routing.ts +7 -7
- package/src/sap/fe/core/controllerextensions/Share.js +5 -5
- package/src/sap/fe/core/controllerextensions/Share.ts +4 -4
- package/src/sap/fe/core/controllerextensions/SideEffects.js +1 -1
- package/src/sap/fe/core/controllerextensions/SideEffects.ts +17 -2
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +2 -2
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.ts +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.js +3 -3
- package/src/sap/fe/core/controllerextensions/editFlow/NotApplicableContextDialog.tsx +3 -2
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +33 -11
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +45 -14
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js +37 -3
- package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +41 -8
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +10 -4
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.ts +6 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/ODataOperation.js +7 -7
- package/src/sap/fe/core/controllerextensions/editFlow/operations/ODataOperation.ts +6 -5
- package/src/sap/fe/core/controllerextensions/editFlow/operations/ODataStrictHandling.js +2 -2
- package/src/sap/fe/core/controllerextensions/editFlow/operations/ODataStrictHandling.ts +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/OperationParameters.js +2 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/OperationParameters.ts +1 -0
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.js +10 -6
- package/src/sap/fe/core/controllerextensions/messageHandler/messageHandling.ts +6 -5
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.js +11 -9
- package/src/sap/fe/core/controllerextensions/routing/RouterProxy.ts +22 -9
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.js +9 -4
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.tsx +10 -4
- package/src/sap/fe/core/controls/Recommendations/ConfirmRecommendationDialog.js +31 -2
- package/src/sap/fe/core/controls/Recommendations/ConfirmRecommendationDialog.tsx +34 -1
- package/src/sap/fe/core/converters/ManifestSettings.js +7 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +37 -0
- package/src/sap/fe/core/converters/ManifestWrapper.js +29 -9
- package/src/sap/fe/core/converters/ManifestWrapper.ts +29 -11
- package/src/sap/fe/core/converters/annotations/DataField.js +46 -19
- package/src/sap/fe/core/converters/annotations/DataField.ts +93 -19
- package/src/sap/fe/core/converters/common/AnnotationConverter.js +88 -35
- package/src/sap/fe/core/converters/controls/Common/Action.js +57 -20
- package/src/sap/fe/core/converters/controls/Common/Action.ts +71 -21
- package/src/sap/fe/core/converters/controls/Common/Chart.js +13 -3
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +20 -4
- package/src/sap/fe/core/converters/controls/Common/Form.js +18 -3
- package/src/sap/fe/core/converters/controls/Common/Form.ts +23 -1
- package/src/sap/fe/core/converters/controls/Common/Table.js +89 -57
- package/src/sap/fe/core/converters/controls/Common/Table.ts +110 -56
- package/src/sap/fe/core/converters/controls/Common/filter/FilterRestrictions.js +243 -0
- package/src/sap/fe/core/converters/controls/Common/filter/FilterRestrictions.ts +309 -0
- package/src/sap/fe/core/converters/controls/Common/table/Columns.js +142 -58
- package/src/sap/fe/core/converters/controls/Common/table/Columns.ts +172 -78
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +12 -18
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +13 -27
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +7 -16
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +6 -17
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +16 -5
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +16 -5
- package/src/sap/fe/core/converters/helpers/Aggregation.js +12 -2
- package/src/sap/fe/core/converters/helpers/Aggregation.ts +11 -1
- package/src/sap/fe/core/converters/helpers/DataFieldHelper.js +27 -3
- package/src/sap/fe/core/converters/helpers/DataFieldHelper.ts +28 -1
- package/src/sap/fe/core/converters/helpers/ID.js +3 -1
- package/src/sap/fe/core/converters/helpers/ID.ts +1 -0
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +5 -2
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +7 -1
- package/src/sap/fe/core/converters/templates/ListReportConverter.js +11 -3
- package/src/sap/fe/core/converters/templates/ListReportConverter.ts +12 -4
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.js +19 -8
- package/src/sap/fe/core/converters/templates/ObjectPageConverter.ts +18 -7
- package/src/sap/fe/core/designtime/AnnotationBasedChanges.js +8 -3
- package/src/sap/fe/core/designtime/AnnotationBasedChanges.ts +7 -2
- package/src/sap/fe/core/formatters/FPMFormatter.js +2 -2
- package/src/sap/fe/core/formatters/FPMFormatter.ts +1 -1
- package/src/sap/fe/core/fpm/Component.js +8 -1
- package/src/sap/fe/core/fpm/Component.ts +8 -0
- package/src/sap/fe/core/fpm/manifest.json +1 -1
- package/src/sap/fe/core/helpers/AppStartupHelper.js +79 -25
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +91 -32
- package/src/sap/fe/core/helpers/ManifestHelper.js +6 -3
- package/src/sap/fe/core/helpers/ManifestHelper.ts +3 -0
- package/src/sap/fe/core/helpers/MetaModelFunction.js +12 -3
- package/src/sap/fe/core/helpers/MetaModelFunction.ts +11 -3
- package/src/sap/fe/core/helpers/ModelHelper.js +48 -9
- package/src/sap/fe/core/helpers/ModelHelper.ts +55 -10
- package/src/sap/fe/core/helpers/TypeGuards.js +12 -2
- package/src/sap/fe/core/helpers/TypeGuards.ts +10 -1
- package/src/sap/fe/core/helpers/WebSocket.js +6 -7
- package/src/sap/fe/core/helpers/WebSocket.ts +10 -6
- package/src/sap/fe/core/library.js +30 -3
- package/src/sap/fe/core/library.ts +28 -1
- package/src/sap/fe/core/messagebundle.properties +8 -1
- package/src/sap/fe/core/messagebundle_ar.properties +7 -0
- package/src/sap/fe/core/messagebundle_bg.properties +10 -3
- package/src/sap/fe/core/messagebundle_ca.properties +7 -0
- package/src/sap/fe/core/messagebundle_cnr.properties +7 -0
- package/src/sap/fe/core/messagebundle_cs.properties +7 -0
- package/src/sap/fe/core/messagebundle_cy.properties +8 -1
- package/src/sap/fe/core/messagebundle_da.properties +7 -0
- package/src/sap/fe/core/messagebundle_de.properties +7 -0
- package/src/sap/fe/core/messagebundle_el.properties +7 -0
- package/src/sap/fe/core/messagebundle_en.properties +8 -1
- package/src/sap/fe/core/messagebundle_en_GB.properties +7 -0
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +5 -0
- package/src/sap/fe/core/messagebundle_es.properties +8 -1
- package/src/sap/fe/core/messagebundle_es_MX.properties +7 -0
- package/src/sap/fe/core/messagebundle_et.properties +7 -0
- package/src/sap/fe/core/messagebundle_fi.properties +7 -0
- package/src/sap/fe/core/messagebundle_fr.properties +16 -9
- package/src/sap/fe/core/messagebundle_fr_CA.properties +7 -0
- package/src/sap/fe/core/messagebundle_hi.properties +8 -1
- package/src/sap/fe/core/messagebundle_hr.properties +7 -0
- package/src/sap/fe/core/messagebundle_hu.properties +7 -0
- package/src/sap/fe/core/messagebundle_id.properties +7 -0
- package/src/sap/fe/core/messagebundle_it.properties +7 -0
- package/src/sap/fe/core/messagebundle_iw.properties +7 -0
- package/src/sap/fe/core/messagebundle_ja.properties +8 -1
- package/src/sap/fe/core/messagebundle_kk.properties +7 -0
- package/src/sap/fe/core/messagebundle_ko.properties +7 -0
- package/src/sap/fe/core/messagebundle_lt.properties +7 -0
- package/src/sap/fe/core/messagebundle_lv.properties +7 -0
- package/src/sap/fe/core/messagebundle_mk.properties +7 -0
- package/src/sap/fe/core/messagebundle_ms.properties +7 -0
- package/src/sap/fe/core/messagebundle_nl.properties +7 -0
- package/src/sap/fe/core/messagebundle_no.properties +7 -0
- package/src/sap/fe/core/messagebundle_pl.properties +7 -0
- package/src/sap/fe/core/messagebundle_pt.properties +7 -0
- package/src/sap/fe/core/messagebundle_pt_PT.properties +7 -0
- package/src/sap/fe/core/messagebundle_ro.properties +7 -0
- package/src/sap/fe/core/messagebundle_ru.properties +7 -0
- package/src/sap/fe/core/messagebundle_sh.properties +7 -0
- package/src/sap/fe/core/messagebundle_sk.properties +7 -0
- package/src/sap/fe/core/messagebundle_sl.properties +7 -0
- package/src/sap/fe/core/messagebundle_sr.properties +7 -0
- package/src/sap/fe/core/messagebundle_sv.properties +7 -0
- package/src/sap/fe/core/messagebundle_th.properties +7 -0
- package/src/sap/fe/core/messagebundle_tr.properties +7 -0
- package/src/sap/fe/core/messagebundle_uk.properties +7 -0
- package/src/sap/fe/core/messagebundle_vi.properties +7 -0
- package/src/sap/fe/core/messagebundle_zh_CN.properties +8 -1
- package/src/sap/fe/core/messagebundle_zh_TW.properties +7 -0
- package/src/sap/fe/core/rootView/Fcl.controller.js +21 -7
- package/src/sap/fe/core/rootView/Fcl.controller.ts +28 -6
- package/src/sap/fe/core/rootView/RootViewBaseController.js +96 -88
- package/src/sap/fe/core/rootView/RootViewBaseController.ts +106 -96
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +14 -10
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +15 -10
- package/src/sap/fe/core/services/RoutingServiceFactory.js +16 -7
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +23 -10
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +9 -7
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +13 -8
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.js +62 -6
- package/src/sap/fe/core/services/TemplatedViewServiceFactory.ts +74 -11
- package/src/sap/fe/core/services/collaborativeDraftServiceFactory.js +33 -15
- package/src/sap/fe/core/services/collaborativeDraftServiceFactory.ts +31 -11
- package/src/sap/fe/core/templating/DisplayModeFormatter.js +4 -5
- package/src/sap/fe/core/templating/DisplayModeFormatter.ts +4 -6
- package/src/sap/fe/core/templating/UIFormatters.js +17 -2
- package/src/sap/fe/core/templating/UIFormatters.ts +25 -1
- package/src/sap/fe/core/types/sap.fe.core-auto-ext.d.js +10 -0
- package/src/sap/fe/core/types/sap.fe.core-auto-ext.d.ts +369 -0
- package/src/sap/fe/core/types/sap.fe.core-manual-ext.d.js +9 -0
- package/src/sap/fe/core/types/sap.fe.core-manual-ext.d.ts +49 -0
- package/ui5.yaml +2 -0
|
@@ -183,7 +183,7 @@ const ModelHelper = {
|
|
|
183
183
|
const oMetaModel = oContext.getModel().getMetaModel();
|
|
184
184
|
const getRootPath = function (sPath: string, model: ODataModel, firstIteration = true): string | undefined {
|
|
185
185
|
const sIterationPath = firstIteration ? sPath : new RegExp(/.*(?=\/)/).exec(sPath)?.[0]; // *Regex to get the ancestor
|
|
186
|
-
if (sIterationPath && sIterationPath !== "/") {
|
|
186
|
+
if (oMetaModel && sIterationPath && sIterationPath !== "/") {
|
|
187
187
|
const sEntityPath = oMetaModel.getMetaPath(sIterationPath);
|
|
188
188
|
const mDataModel = MetaModelConverter.getInvolvedDataModelObjects(oMetaModel.getContext(sEntityPath));
|
|
189
189
|
if (
|
|
@@ -286,6 +286,30 @@ const ModelHelper = {
|
|
|
286
286
|
*/
|
|
287
287
|
|
|
288
288
|
enhanceInternalJSONModel: function (oInternalModel: JSONModel): void {
|
|
289
|
+
const fnSetProperty = oInternalModel.setProperty.bind(oInternalModel);
|
|
290
|
+
oInternalModel.setProperty = function (
|
|
291
|
+
propertyPath: string,
|
|
292
|
+
value: unknown,
|
|
293
|
+
oContext: Context | undefined,
|
|
294
|
+
bAsyncUpdate: boolean
|
|
295
|
+
): boolean {
|
|
296
|
+
if (oContext && oContext.getObject() === undefined) {
|
|
297
|
+
// initialize
|
|
298
|
+
fnSetProperty(oContext.getPath(), {});
|
|
299
|
+
}
|
|
300
|
+
const propertyPathSplit = propertyPath.split("/");
|
|
301
|
+
let path = oContext?.getPath().replace(/\/$/, "") ?? ""; // Remove slash if it is at the end
|
|
302
|
+
// let's ensure that sub objects are initialized
|
|
303
|
+
const startIndex = propertyPath.startsWith("/") ? 1 : 0;
|
|
304
|
+
for (let i = startIndex; i < propertyPathSplit.length - 1; i++) {
|
|
305
|
+
path = `${path}/${propertyPathSplit[i]}`;
|
|
306
|
+
if (this.getProperty(path, oContext) === undefined) {
|
|
307
|
+
// initialize
|
|
308
|
+
fnSetProperty(path, {});
|
|
309
|
+
}
|
|
310
|
+
}
|
|
311
|
+
return fnSetProperty(propertyPath, value, oContext, bAsyncUpdate);
|
|
312
|
+
};
|
|
289
313
|
const fnBindContext = oInternalModel.bindContext;
|
|
290
314
|
oInternalModel.bindContext = function (
|
|
291
315
|
sPath: string,
|
|
@@ -573,7 +597,12 @@ const ModelHelper = {
|
|
|
573
597
|
localAnnotationModel.getProperty = function (path, context: ODataV4Context): unknown {
|
|
574
598
|
const [propertyName, annotationType] = path.split("@$ui5.fe.");
|
|
575
599
|
|
|
576
|
-
if (
|
|
600
|
+
if (
|
|
601
|
+
context &&
|
|
602
|
+
context.isTransient() !== true &&
|
|
603
|
+
(context.getIndex() === undefined || context.getIndex()! >= 0) &&
|
|
604
|
+
annotationType === "@Common/ExternalID"
|
|
605
|
+
) {
|
|
577
606
|
const contextObject = context.getObject();
|
|
578
607
|
if (contextObject) {
|
|
579
608
|
const metaPath = new MetaPath<EntitySet>(
|
|
@@ -624,11 +653,17 @@ const ModelHelper = {
|
|
|
624
653
|
const propertiesToRequest = [externalIdPropPath.substring(0, externalIdPropPath.lastIndexOf("/"))];
|
|
625
654
|
const textProperty = metaPath.getMetaPathForPath<Property>(metaPath.getPath() + "/" + externalIdPropPath)?.getTarget()
|
|
626
655
|
.annotations.Common?.Text;
|
|
656
|
+
if (value === null) {
|
|
657
|
+
context.setProperty(externalIdPropPath, {});
|
|
658
|
+
}
|
|
627
659
|
if (isPathAnnotationExpression(textProperty)) {
|
|
628
660
|
const textPropPath = textProperty.path;
|
|
629
661
|
if (textPropPath.includes("/")) {
|
|
630
662
|
propertiesToRequest.push(textPropPath);
|
|
631
663
|
}
|
|
664
|
+
if (value === null) {
|
|
665
|
+
context.setProperty(textPropPath, {});
|
|
666
|
+
}
|
|
632
667
|
}
|
|
633
668
|
(context as ODataV4Context)
|
|
634
669
|
.requestSideEffects(propertiesToRequest)
|
|
@@ -1015,14 +1050,13 @@ const ModelHelper = {
|
|
|
1015
1050
|
const placeholderDescriptionKey = localModelPath + "@$ui5.fe.recommendations.placeholderDescription";
|
|
1016
1051
|
const typeAheadValuesKey = localModelPath + "@$ui5.fe.recommendations.typeAheadValues";
|
|
1017
1052
|
|
|
1018
|
-
recommendationObj[typeAheadValuesKey] = [];
|
|
1019
|
-
|
|
1020
1053
|
for (const propertyRecommendation of propertyRecommendations) {
|
|
1021
1054
|
if (propertyRecommendation.RecommendedFieldIsSuggestion) {
|
|
1022
1055
|
recommendationObj[placeholderValueKey] = propertyRecommendation.RecommendedFieldValue;
|
|
1023
1056
|
recommendationObj[placeholderDescriptionKey] = propertyRecommendation.RecommendedFieldDescription;
|
|
1024
1057
|
}
|
|
1025
1058
|
if (propertyRecommendation.RecommendedFieldValue) {
|
|
1059
|
+
recommendationObj[typeAheadValuesKey] = recommendationObj[typeAheadValuesKey] || [];
|
|
1026
1060
|
(recommendationObj[typeAheadValuesKey] as string[]).push(propertyRecommendation.RecommendedFieldValue);
|
|
1027
1061
|
}
|
|
1028
1062
|
}
|
|
@@ -1033,11 +1067,22 @@ const ModelHelper = {
|
|
|
1033
1067
|
}
|
|
1034
1068
|
recommendationObj["recommendationContext"] = currentContext;
|
|
1035
1069
|
if (!this._compareRecommendations(recommendationObj, rejectedRecommendations[currentContext.getPath()] || {})) {
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
}
|
|
1070
|
+
// Get existing data from the local annotation model for the current context path
|
|
1071
|
+
const existingData = localAnnotationModel.getProperty(currentContext.getPath()) || {};
|
|
1072
|
+
|
|
1073
|
+
// Remove all keys that include "@$ui5.fe.recommendations" from existing data
|
|
1074
|
+
const cleanedExistingData: Record<string, unknown> = {};
|
|
1075
|
+
for (const key in existingData) {
|
|
1076
|
+
if (!key.includes("@$ui5.fe.recommendations")) {
|
|
1077
|
+
cleanedExistingData[key] = existingData[key];
|
|
1078
|
+
}
|
|
1079
|
+
}
|
|
1080
|
+
|
|
1081
|
+
// Merge cleaned existing data with new recommendation data
|
|
1082
|
+
const mergedData = { ...cleanedExistingData, ...recommendationObj };
|
|
1083
|
+
|
|
1084
|
+
// make sure to set the recommendations on the current context path so that old recommendations are overridden and some stale data is not shown.
|
|
1085
|
+
localAnnotationModel.setProperty(currentContext.getPath(), mergedData, currentContext, false);
|
|
1041
1086
|
}
|
|
1042
1087
|
}
|
|
1043
1088
|
},
|
|
@@ -1111,7 +1156,7 @@ type RecommendationDetails = {
|
|
|
1111
1156
|
};
|
|
1112
1157
|
|
|
1113
1158
|
export type InternalModelContext = { getModel(): JSONModel } & BaseContext & {
|
|
1114
|
-
setProperty(sPath: string, vValue: unknown): void;
|
|
1159
|
+
setProperty(sPath: string, vValue: unknown, context?: Context, asyncUpdate?: boolean): void;
|
|
1115
1160
|
};
|
|
1116
1161
|
|
|
1117
1162
|
export default ModelHelper;
|
|
@@ -130,6 +130,16 @@ sap.ui.define([], function () {
|
|
|
130
130
|
return serviceObject?._type === "Property";
|
|
131
131
|
}
|
|
132
132
|
|
|
133
|
+
/**
|
|
134
|
+
* Checks whether the argument is an {@link ActionParameter}.
|
|
135
|
+
* @param serviceObject The object to be checked.
|
|
136
|
+
* @returns Whether the argument is a {@link ActionParameter}.
|
|
137
|
+
*/
|
|
138
|
+
_exports.isProperty = isProperty;
|
|
139
|
+
function isActionParameter(serviceObject) {
|
|
140
|
+
return serviceObject?._type === "ActionParameter";
|
|
141
|
+
}
|
|
142
|
+
|
|
133
143
|
/**
|
|
134
144
|
* Checks whether the argument is a {@link NavigationProperty}.
|
|
135
145
|
*
|
|
@@ -138,7 +148,7 @@ sap.ui.define([], function () {
|
|
|
138
148
|
* @param serviceObject The object to be checked.
|
|
139
149
|
* @returns Whether the argument is a {@link NavigationProperty}.
|
|
140
150
|
*/
|
|
141
|
-
_exports.
|
|
151
|
+
_exports.isActionParameter = isActionParameter;
|
|
142
152
|
function isNavigationProperty(serviceObject) {
|
|
143
153
|
return serviceObject?._type === "NavigationProperty";
|
|
144
154
|
}
|
|
@@ -205,4 +215,4 @@ sap.ui.define([], function () {
|
|
|
205
215
|
_exports.isAction = isAction;
|
|
206
216
|
return _exports;
|
|
207
217
|
}, false);
|
|
208
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpc0Z1bGZpbGxlZCIsInAiLCJzdGF0dXMiLCJfZXhwb3J0cyIsImlzUmVqZWN0ZWQiLCJpc0NvbnRleHQiLCJwb3RlbnRpYWxDb250ZXh0IiwiaXNBIiwiaXNGdW5jdGlvbkFycmF5IiwicG90ZW50aWFsRnVuY3Rpb25BcnJheSIsIkFycmF5IiwiaXNBcnJheSIsImxlbmd0aCIsImV2ZXJ5IiwiaXRlbSIsImlzQW5ub3RhdGlvbk9mVHlwZSIsInBvdGVudGlhbEFubm90YXRpb25UeXBlIiwidHlwZU5hbWUiLCJpbmNsdWRlcyIsIiRUeXBlIiwiaXNBbm5vdGF0aW9uT2ZUZXJtIiwicG90ZW50aWFsQW5ub3RhdGlvbiIsInRlcm1OYW1lIiwidGVybSIsImlzQW5ub3RhdGlvblRlcm0iLCJoYXNPd25Qcm9wZXJ0eSIsImlzU2VydmljZU9iamVjdCIsInNlcnZpY2VPYmplY3QiLCJpc0NvbXBsZXhUeXBlIiwiX3R5cGUiLCJpc1R5cGVEZWZpbml0aW9uIiwiaXNFbnRpdHlDb250YWluZXIiLCJpc0VudGl0eVNldCIsImlzU2luZ2xldG9uIiwiaXNFbnRpdHlUeXBlIiwiaXNQcm9wZXJ0eSIsImlzTmF2aWdhdGlvblByb3BlcnR5IiwiaXNTaW5nbGVOYXZpZ2F0aW9uUHJvcGVydHkiLCJpc0NvbGxlY3Rpb24iLCJpc011bHRpcGxlTmF2aWdhdGlvblByb3BlcnR5IiwiaXNQYXRoQW5ub3RhdGlvbkV4cHJlc3Npb24iLCJleHByZXNzaW9uIiwidHlwZSIsImlzQW5ub3RhdGlvblBhdGgiLCJpc1Byb3BlcnR5UGF0aEV4cHJlc3Npb24iLCJpc0FjdGlvbiJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiVHlwZUd1YXJkcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7XG5cdEFubm90YXRpb25UZXJtLFxuXHRDb21wbGV4VHlwZSxcblx0RW50aXR5Q29udGFpbmVyLFxuXHRFbnRpdHlTZXQsXG5cdEVudGl0eVR5cGUsXG5cdE11bHRpcGxlTmF2aWdhdGlvblByb3BlcnR5LFxuXHROYXZpZ2F0aW9uUHJvcGVydHksXG5cdFBhdGhBbm5vdGF0aW9uRXhwcmVzc2lvbixcblx0UHJvcGVydHksXG5cdFByb3BlcnR5UGF0aCxcblx0U2VydmljZU9iamVjdCxcblx0U2luZ2xlTmF2aWdhdGlvblByb3BlcnR5LFxuXHRTaW5nbGV0b24sXG5cdFR5cGVEZWZpbml0aW9uXG59IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlc1wiO1xuaW1wb3J0IHR5cGUgeyBBY3Rpb24sIEFubm90YXRpb25QYXRoIH0gZnJvbSBcIkBzYXAtdXgvdm9jYWJ1bGFyaWVzLXR5cGVzL0VkbVwiO1xuaW1wb3J0IHR5cGUgQ29udGV4dCBmcm9tIFwic2FwL3VpL21vZGVsL29kYXRhL3Y0L0NvbnRleHRcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIGlzRnVsZmlsbGVkPFQ+KHA6IFByb21pc2VTZXR0bGVkUmVzdWx0PFQ+KTogcCBpcyBQcm9taXNlRnVsZmlsbGVkUmVzdWx0PFQ+IHtcblx0cmV0dXJuIHAuc3RhdHVzID09PSBcImZ1bGZpbGxlZFwiO1xufVxuZXhwb3J0IGZ1bmN0aW9uIGlzUmVqZWN0ZWQ8VD4ocDogUHJvbWlzZVNldHRsZWRSZXN1bHQ8VD4pOiBwIGlzIFByb21pc2VSZWplY3RlZFJlc3VsdCB7XG5cdHJldHVybiBwLnN0YXR1cyA9PT0gXCJyZWplY3RlZFwiO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNDb250ZXh0KHBvdGVudGlhbENvbnRleHQ6IENvbnRleHQgfCB1bmtub3duIHwgdW5kZWZpbmVkKTogcG90ZW50aWFsQ29udGV4dCBpcyBDb250ZXh0IHtcblx0cmV0dXJuIChwb3RlbnRpYWxDb250ZXh0IGFzIENvbnRleHQpPy5pc0E/LjxDb250ZXh0PihcInNhcC51aS5tb2RlbC5Db250ZXh0XCIpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNGdW5jdGlvbkFycmF5KHBvdGVudGlhbEZ1bmN0aW9uQXJyYXk6IEZ1bmN0aW9uW10gfCB1bmtub3duKTogcG90ZW50aWFsRnVuY3Rpb25BcnJheSBpcyBGdW5jdGlvbltdIHtcblx0cmV0dXJuIChcblx0XHRBcnJheS5pc0FycmF5KHBvdGVudGlhbEZ1bmN0aW9uQXJyYXkpICYmXG5cdFx0cG90ZW50aWFsRnVuY3Rpb25BcnJheS5sZW5ndGggPiAwICYmXG5cdFx0cG90ZW50aWFsRnVuY3Rpb25BcnJheS5ldmVyeSgoaXRlbSkgPT4gdHlwZW9mIGl0ZW0gPT09IFwiZnVuY3Rpb25cIilcblx0KTtcbn1cblxudHlwZSBBbm5vdGF0aW9uVHlwZSA9IHtcblx0JFR5cGU/OiBzdHJpbmc7XG5cdGZ1bGx5UXVhbGlmaWVkTmFtZT86IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBfQW5ub3RhdGlvblRlcm0gPSB7XG5cdHRlcm06IHN0cmluZztcblx0cXVhbGlmaWVyPzogc3RyaW5nO1xufTtcblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4gYW5ub3RhdGlvbiBvZiB0aGUgZ2l2ZW4gdHlwZS5cbiAqIEBwYXJhbSBwb3RlbnRpYWxBbm5vdGF0aW9uVHlwZSBUaGUgYW5ub3RhdGlvbiB0byBjaGVja1xuICogQHBhcmFtIHR5cGVOYW1lIFRoZSB0eXBlIHRvIGNoZWNrIGZvclxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4gYW5ub3RhdGlvbiBvZiB0aGUgZ2l2ZW4gdHlwZVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNBbm5vdGF0aW9uT2ZUeXBlPFQgZXh0ZW5kcyBvYmplY3QgJiBBbm5vdGF0aW9uVHlwZT4oXG5cdHBvdGVudGlhbEFubm90YXRpb25UeXBlOiB1bmtub3duLFxuXHR0eXBlTmFtZTogVFtcIiRUeXBlXCJdIHwgVFtcIiRUeXBlXCJdW11cbik6IHBvdGVudGlhbEFubm90YXRpb25UeXBlIGlzIFQge1xuXHRpZiAoQXJyYXkuaXNBcnJheSh0eXBlTmFtZSkpIHtcblx0XHRyZXR1cm4gdHlwZU5hbWUuaW5jbHVkZXMoKHBvdGVudGlhbEFubm90YXRpb25UeXBlIGFzIEFubm90YXRpb25UeXBlKT8uJFR5cGUpO1xuXHR9XG5cdHJldHVybiAocG90ZW50aWFsQW5ub3RhdGlvblR5cGUgYXMgQW5ub3RhdGlvblR5cGUpPy4kVHlwZSA9PT0gdHlwZU5hbWU7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIGFubm90YXRpb24gb2YgdGhlIGdpdmVuIHRlcm0uXG4gKiBAcGFyYW0gcG90ZW50aWFsQW5ub3RhdGlvbiBUaGUgYW5ub3RhdGlvbiB0byBjaGVja1xuICogQHBhcmFtIHRlcm1OYW1lIFRoZSB0ZXJtIHRvIGNoZWNrIGZvclxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4gYW5ub3RhdGlvbiBvZiB0aGUgZ2l2ZW4gdGVybVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNBbm5vdGF0aW9uT2ZUZXJtPFQgZXh0ZW5kcyBvYmplY3QgJiBfQW5ub3RhdGlvblRlcm0+KFxuXHRwb3RlbnRpYWxBbm5vdGF0aW9uOiB1bmtub3duLFxuXHR0ZXJtTmFtZTogVFtcInRlcm1cIl1cbik6IHBvdGVudGlhbEFubm90YXRpb24gaXMgQW5ub3RhdGlvblRlcm08VD4ge1xuXHRyZXR1cm4gKHBvdGVudGlhbEFubm90YXRpb24gYXMgX0Fubm90YXRpb25UZXJtKT8udGVybSA9PT0gdGVybU5hbWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Fubm90YXRpb25UZXJtKHBvdGVudGlhbEFubm90YXRpb246IHVua25vd24pOiBwb3RlbnRpYWxBbm5vdGF0aW9uIGlzIF9Bbm5vdGF0aW9uVGVybSB7XG5cdHJldHVybiAocG90ZW50aWFsQW5ub3RhdGlvbiBhcyBfQW5ub3RhdGlvblRlcm0pLmhhc093blByb3BlcnR5KFwidGVybVwiKTtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgU2VydmljZU9iamVjdH0uXG4gKiBAcGFyYW0gc2VydmljZU9iamVjdCBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBTZXJ2aWNlT2JqZWN0fS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzU2VydmljZU9iamVjdChzZXJ2aWNlT2JqZWN0OiB1bmtub3duIHwgdW5kZWZpbmVkKTogc2VydmljZU9iamVjdCBpcyBTZXJ2aWNlT2JqZWN0IHtcblx0cmV0dXJuIHNlcnZpY2VPYmplY3Q/Lmhhc093blByb3BlcnR5KFwiX3R5cGVcIikgPz8gZmFsc2U7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIENvbXBsZXhUeXBlfS5cbiAqIEBwYXJhbSBzZXJ2aWNlT2JqZWN0IFRoZSBvYmplY3QgdG8gYmUgY2hlY2tlZC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIENvbXBsZXhUeXBlfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQ29tcGxleFR5cGUoc2VydmljZU9iamVjdDogdW5rbm93bik6IHNlcnZpY2VPYmplY3QgaXMgQ29tcGxleFR5cGUge1xuXHRyZXR1cm4gKHNlcnZpY2VPYmplY3QgYXMgQ29tcGxleFR5cGUpPy5fdHlwZSA9PT0gXCJDb21wbGV4VHlwZVwiO1xufVxuXG4vKipcbiAqIENoZWNrcyB3aGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBUeXBlRGVmaW5pdGlvbn0uXG4gKiBAcGFyYW0gc2VydmljZU9iamVjdCBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBUeXBlRGVmaW5pdGlvbn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1R5cGVEZWZpbml0aW9uKHNlcnZpY2VPYmplY3Q6IHVua25vd24pOiBzZXJ2aWNlT2JqZWN0IGlzIFR5cGVEZWZpbml0aW9uIHtcblx0cmV0dXJuIChzZXJ2aWNlT2JqZWN0IGFzIFR5cGVEZWZpbml0aW9uKT8uX3R5cGUgPT09IFwiVHlwZURlZmluaXRpb25cIjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4ge0BsaW5rIEVudGl0eUNvbnRhaW5lcn0uXG4gKiBAcGFyYW0gc2VydmljZU9iamVjdCBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhbiB7QGxpbmsgRW50aXR5Q29udGFpbmVyfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRW50aXR5Q29udGFpbmVyKHNlcnZpY2VPYmplY3Q6IHVua25vd24pOiBzZXJ2aWNlT2JqZWN0IGlzIEVudGl0eUNvbnRhaW5lciB7XG5cdHJldHVybiAoc2VydmljZU9iamVjdCBhcyBFbnRpdHlDb250YWluZXIpPy5fdHlwZSA9PT0gXCJFbnRpdHlDb250YWluZXJcIjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4ge0BsaW5rIEVudGl0eVNldH0uXG4gKiBAcGFyYW0gc2VydmljZU9iamVjdCBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhbiB7QGxpbmsgRW50aXR5U2V0fS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzRW50aXR5U2V0KHNlcnZpY2VPYmplY3Q6IHVua25vd24pOiBzZXJ2aWNlT2JqZWN0IGlzIEVudGl0eVNldCB7XG5cdHJldHVybiAoc2VydmljZU9iamVjdCBhcyBFbnRpdHlTZXQpPy5fdHlwZSA9PT0gXCJFbnRpdHlTZXRcIjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgU2luZ2xldG9ufS5cbiAqIEBwYXJhbSBzZXJ2aWNlT2JqZWN0IFRoZSBvYmplY3QgdG8gYmUgY2hlY2tlZC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIFNpbmdsZXRvbn1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzU2luZ2xldG9uKHNlcnZpY2VPYmplY3Q6IHVua25vd24pOiBzZXJ2aWNlT2JqZWN0IGlzIFNpbmdsZXRvbiB7XG5cdHJldHVybiAoc2VydmljZU9iamVjdCBhcyBTaW5nbGV0b24pPy5fdHlwZSA9PT0gXCJTaW5nbGV0b25cIjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4ge0BsaW5rIEVudGl0eVR5cGV9LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4ge0BsaW5rIEVudGl0eVR5cGV9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0VudGl0eVR5cGUoc2VydmljZU9iamVjdDogdW5rbm93bik6IHNlcnZpY2VPYmplY3QgaXMgRW50aXR5VHlwZSB7XG5cdHJldHVybiAoc2VydmljZU9iamVjdCBhcyBFbnRpdHlUeXBlKT8uX3R5cGUgPT09IFwiRW50aXR5VHlwZVwiO1xufVxuXG4vKipcbiAqIENoZWNrcyB3aGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBQcm9wZXJ0eX0uXG4gKiBAcGFyYW0gc2VydmljZU9iamVjdCBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBQcm9wZXJ0eX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1Byb3BlcnR5KHNlcnZpY2VPYmplY3Q6IHVua25vd24pOiBzZXJ2aWNlT2JqZWN0IGlzIFByb3BlcnR5IHtcblx0cmV0dXJuIChzZXJ2aWNlT2JqZWN0IGFzIFByb3BlcnR5KT8uX3R5cGUgPT09IFwiUHJvcGVydHlcIjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgTmF2aWdhdGlvblByb3BlcnR5fS5cbiAqXG4gKiBIaW50OiBUaGVyZSBhcmUgYWxzbyB0aGUgbW9yZSBzcGVjaWZpYyBmdW5jdGlvbnMge0BsaW5rIGlzU2luZ2xlTmF2aWdhdGlvblByb3BlcnR5fSBhbmQge0BsaW5rIGlzTXVsdGlwbGVOYXZpZ2F0aW9uUHJvcGVydHl9LiBUaGVzZSBjYW4gYmVcbiAqIHVzZWQgdG8gY2hlY2sgZm9yIHRvLW9uZSBhbmQgdG8tbWFueSBuYXZpZ2F0aW9uIHByb3BlcnRpZXMsIHJlc3BlY3RpdmVseS5cbiAqIEBwYXJhbSBzZXJ2aWNlT2JqZWN0IFRoZSBvYmplY3QgdG8gYmUgY2hlY2tlZC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIE5hdmlnYXRpb25Qcm9wZXJ0eX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc05hdmlnYXRpb25Qcm9wZXJ0eShzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBOYXZpZ2F0aW9uUHJvcGVydHkge1xuXHRyZXR1cm4gKHNlcnZpY2VPYmplY3QgYXMgTmF2aWdhdGlvblByb3BlcnR5KT8uX3R5cGUgPT09IFwiTmF2aWdhdGlvblByb3BlcnR5XCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIFNpbmdsZU5hdmlnYXRpb25Qcm9wZXJ0eX0uXG4gKiBAcGFyYW0gc2VydmljZU9iamVjdCBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBTaW5nbGVOYXZpZ2F0aW9uUHJvcGVydHl9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNTaW5nbGVOYXZpZ2F0aW9uUHJvcGVydHkoc2VydmljZU9iamVjdDogdW5rbm93bik6IHNlcnZpY2VPYmplY3QgaXMgU2luZ2xlTmF2aWdhdGlvblByb3BlcnR5IHtcblx0cmV0dXJuIGlzTmF2aWdhdGlvblByb3BlcnR5KHNlcnZpY2VPYmplY3QpICYmICFzZXJ2aWNlT2JqZWN0LmlzQ29sbGVjdGlvbjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgTXVsdGlwbGVOYXZpZ2F0aW9uUHJvcGVydHl9LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgTXVsdGlwbGVOYXZpZ2F0aW9uUHJvcGVydHl9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNNdWx0aXBsZU5hdmlnYXRpb25Qcm9wZXJ0eShzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBNdWx0aXBsZU5hdmlnYXRpb25Qcm9wZXJ0eSB7XG5cdHJldHVybiBpc05hdmlnYXRpb25Qcm9wZXJ0eShzZXJ2aWNlT2JqZWN0KSAmJiBzZXJ2aWNlT2JqZWN0LmlzQ29sbGVjdGlvbjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgUGF0aEFubm90YXRpb25FeHByZXNzaW9ufS5cbiAqIEBwYXJhbSBleHByZXNzaW9uIFRoZSBvYmplY3QgdG8gYmUgY2hlY2tlZC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIFBhdGhBbm5vdGF0aW9uRXhwcmVzc2lvbn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1BhdGhBbm5vdGF0aW9uRXhwcmVzc2lvbjxUPihleHByZXNzaW9uOiB1bmtub3duKTogZXhwcmVzc2lvbiBpcyBQYXRoQW5ub3RhdGlvbkV4cHJlc3Npb248VD4ge1xuXHRyZXR1cm4gKGV4cHJlc3Npb24gYXMgUGF0aEFubm90YXRpb25FeHByZXNzaW9uPFQ+KT8udHlwZSA9PT0gXCJQYXRoXCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIEFubm90YXRpb25QYXRoRXhwcmVzc2lvbn0uXG4gKiBAcGFyYW0gZXhwcmVzc2lvbiBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBBbm5vdGF0aW9uUGF0aEV4cHJlc3Npb259LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNBbm5vdGF0aW9uUGF0aDxUPihleHByZXNzaW9uOiB1bmtub3duKTogZXhwcmVzc2lvbiBpcyBBbm5vdGF0aW9uUGF0aDxUPiB7XG5cdHJldHVybiAoZXhwcmVzc2lvbiBhcyBBbm5vdGF0aW9uUGF0aDxUPik/LnR5cGUgPT09IFwiQW5ub3RhdGlvblBhdGhcIjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgUHJvcGVydHlQYXRofS5cbiAqIEBwYXJhbSBleHByZXNzaW9uIFRoZSBvYmplY3QgdG8gYmUgY2hlY2tlZC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIFByb3BlcnR5UGF0aH0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1Byb3BlcnR5UGF0aEV4cHJlc3Npb24oZXhwcmVzc2lvbjogdW5rbm93bik6IGV4cHJlc3Npb24gaXMgUHJvcGVydHlQYXRoIHtcblx0cmV0dXJuIChleHByZXNzaW9uIGFzIFByb3BlcnR5UGF0aCk/LnR5cGUgPT09IFwiUHJvcGVydHlQYXRoXCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIHtAbGluayBBY3Rpb259LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4ge0BsaW5rIEFjdGlvbn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0FjdGlvbihzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBBY3Rpb24ge1xuXHRyZXR1cm4gKHNlcnZpY2VPYmplY3QgYXMgQWN0aW9uKT8uX3R5cGUgPT09IFwiQWN0aW9uXCI7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0VBbUJPLFNBQVNBLFdBQVdBLENBQUlDLENBQTBCLEVBQWtDO0lBQzFGLE9BQU9BLENBQUMsQ0FBQ0MsTUFBTSxLQUFLLFdBQVc7RUFDaEM7RUFBQ0MsUUFBQSxDQUFBSCxXQUFBLEdBQUFBLFdBQUE7RUFDTSxTQUFTSSxVQUFVQSxDQUFJSCxDQUEwQixFQUE4QjtJQUNyRixPQUFPQSxDQUFDLENBQUNDLE1BQU0sS0FBSyxVQUFVO0VBQy9CO0VBQUNDLFFBQUEsQ0FBQUMsVUFBQSxHQUFBQSxVQUFBO0VBRU0sU0FBU0MsU0FBU0EsQ0FBQ0MsZ0JBQStDLEVBQStCO0lBQ3ZHLE9BQVFBLGdCQUFnQixFQUFjQyxHQUFHLEdBQVksc0JBQXNCLENBQUM7RUFDN0U7RUFBQ0osUUFBQSxDQUFBRSxTQUFBLEdBQUFBLFNBQUE7RUFFTSxTQUFTRyxlQUFlQSxDQUFDQyxzQkFBNEMsRUFBd0M7SUFDbkgsT0FDQ0MsS0FBSyxDQUFDQyxPQUFPLENBQUNGLHNCQUFzQixDQUFDLElBQ3JDQSxzQkFBc0IsQ0FBQ0csTUFBTSxHQUFHLENBQUMsSUFDakNILHNCQUFzQixDQUFDSSxLQUFLLENBQUVDLElBQUksSUFBSyxPQUFPQSxJQUFJLEtBQUssVUFBVSxDQUFDO0VBRXBFO0VBQUNYLFFBQUEsQ0FBQUssZUFBQSxHQUFBQSxlQUFBO0VBV0Q7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBQ08sU0FBU08sa0JBQWtCQSxDQUNqQ0MsdUJBQWdDLEVBQ2hDQyxRQUFtQyxFQUNKO0lBQy9CLElBQUlQLEtBQUssQ0FBQ0MsT0FBTyxDQUFDTSxRQUFRLENBQUMsRUFBRTtNQUM1QixPQUFPQSxRQUFRLENBQUNDLFFBQVEsQ0FBRUYsdUJBQXVCLEVBQXFCRyxLQUFLLENBQUM7SUFDN0U7SUFDQSxPQUFRSCx1QkFBdUIsRUFBcUJHLEtBQUssS0FB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
|
|
218
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJpc0Z1bGZpbGxlZCIsInAiLCJzdGF0dXMiLCJfZXhwb3J0cyIsImlzUmVqZWN0ZWQiLCJpc0NvbnRleHQiLCJwb3RlbnRpYWxDb250ZXh0IiwiaXNBIiwiaXNGdW5jdGlvbkFycmF5IiwicG90ZW50aWFsRnVuY3Rpb25BcnJheSIsIkFycmF5IiwiaXNBcnJheSIsImxlbmd0aCIsImV2ZXJ5IiwiaXRlbSIsImlzQW5ub3RhdGlvbk9mVHlwZSIsInBvdGVudGlhbEFubm90YXRpb25UeXBlIiwidHlwZU5hbWUiLCJpbmNsdWRlcyIsIiRUeXBlIiwiaXNBbm5vdGF0aW9uT2ZUZXJtIiwicG90ZW50aWFsQW5ub3RhdGlvbiIsInRlcm1OYW1lIiwidGVybSIsImlzQW5ub3RhdGlvblRlcm0iLCJoYXNPd25Qcm9wZXJ0eSIsImlzU2VydmljZU9iamVjdCIsInNlcnZpY2VPYmplY3QiLCJpc0NvbXBsZXhUeXBlIiwiX3R5cGUiLCJpc1R5cGVEZWZpbml0aW9uIiwiaXNFbnRpdHlDb250YWluZXIiLCJpc0VudGl0eVNldCIsImlzU2luZ2xldG9uIiwiaXNFbnRpdHlUeXBlIiwiaXNQcm9wZXJ0eSIsImlzQWN0aW9uUGFyYW1ldGVyIiwiaXNOYXZpZ2F0aW9uUHJvcGVydHkiLCJpc1NpbmdsZU5hdmlnYXRpb25Qcm9wZXJ0eSIsImlzQ29sbGVjdGlvbiIsImlzTXVsdGlwbGVOYXZpZ2F0aW9uUHJvcGVydHkiLCJpc1BhdGhBbm5vdGF0aW9uRXhwcmVzc2lvbiIsImV4cHJlc3Npb24iLCJ0eXBlIiwiaXNBbm5vdGF0aW9uUGF0aCIsImlzUHJvcGVydHlQYXRoRXhwcmVzc2lvbiIsImlzQWN0aW9uIl0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJUeXBlR3VhcmRzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHtcblx0QW5ub3RhdGlvblRlcm0sXG5cdENvbXBsZXhUeXBlLFxuXHRFbnRpdHlDb250YWluZXIsXG5cdEVudGl0eVNldCxcblx0RW50aXR5VHlwZSxcblx0TXVsdGlwbGVOYXZpZ2F0aW9uUHJvcGVydHksXG5cdE5hdmlnYXRpb25Qcm9wZXJ0eSxcblx0UGF0aEFubm90YXRpb25FeHByZXNzaW9uLFxuXHRQcm9wZXJ0eSxcblx0UHJvcGVydHlQYXRoLFxuXHRTZXJ2aWNlT2JqZWN0LFxuXHRTaW5nbGVOYXZpZ2F0aW9uUHJvcGVydHksXG5cdFNpbmdsZXRvbixcblx0VHlwZURlZmluaXRpb25cbn0gZnJvbSBcIkBzYXAtdXgvdm9jYWJ1bGFyaWVzLXR5cGVzXCI7XG5pbXBvcnQgdHlwZSB7IEFjdGlvbiwgQWN0aW9uUGFyYW1ldGVyLCBBbm5vdGF0aW9uUGF0aCB9IGZyb20gXCJAc2FwLXV4L3ZvY2FidWxhcmllcy10eXBlcy9FZG1cIjtcbmltcG9ydCB0eXBlIENvbnRleHQgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9Db250ZXh0XCI7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Z1bGZpbGxlZDxUPihwOiBQcm9taXNlU2V0dGxlZFJlc3VsdDxUPik6IHAgaXMgUHJvbWlzZUZ1bGZpbGxlZFJlc3VsdDxUPiB7XG5cdHJldHVybiBwLnN0YXR1cyA9PT0gXCJmdWxmaWxsZWRcIjtcbn1cbmV4cG9ydCBmdW5jdGlvbiBpc1JlamVjdGVkPFQ+KHA6IFByb21pc2VTZXR0bGVkUmVzdWx0PFQ+KTogcCBpcyBQcm9taXNlUmVqZWN0ZWRSZXN1bHQge1xuXHRyZXR1cm4gcC5zdGF0dXMgPT09IFwicmVqZWN0ZWRcIjtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQ29udGV4dChwb3RlbnRpYWxDb250ZXh0OiBDb250ZXh0IHwgdW5rbm93biB8IHVuZGVmaW5lZCk6IHBvdGVudGlhbENvbnRleHQgaXMgQ29udGV4dCB7XG5cdHJldHVybiAocG90ZW50aWFsQ29udGV4dCBhcyBDb250ZXh0KT8uaXNBPy48Q29udGV4dD4oXCJzYXAudWkubW9kZWwuQ29udGV4dFwiKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzRnVuY3Rpb25BcnJheShwb3RlbnRpYWxGdW5jdGlvbkFycmF5OiBGdW5jdGlvbltdIHwgdW5rbm93bik6IHBvdGVudGlhbEZ1bmN0aW9uQXJyYXkgaXMgRnVuY3Rpb25bXSB7XG5cdHJldHVybiAoXG5cdFx0QXJyYXkuaXNBcnJheShwb3RlbnRpYWxGdW5jdGlvbkFycmF5KSAmJlxuXHRcdHBvdGVudGlhbEZ1bmN0aW9uQXJyYXkubGVuZ3RoID4gMCAmJlxuXHRcdHBvdGVudGlhbEZ1bmN0aW9uQXJyYXkuZXZlcnkoKGl0ZW0pID0+IHR5cGVvZiBpdGVtID09PSBcImZ1bmN0aW9uXCIpXG5cdCk7XG59XG5cbnR5cGUgQW5ub3RhdGlvblR5cGUgPSB7XG5cdCRUeXBlPzogc3RyaW5nO1xuXHRmdWxseVF1YWxpZmllZE5hbWU/OiBzdHJpbmc7XG59O1xuZXhwb3J0IHR5cGUgX0Fubm90YXRpb25UZXJtID0ge1xuXHR0ZXJtOiBzdHJpbmc7XG5cdHF1YWxpZmllcj86IHN0cmluZztcbn07XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIGFubm90YXRpb24gb2YgdGhlIGdpdmVuIHR5cGUuXG4gKiBAcGFyYW0gcG90ZW50aWFsQW5ub3RhdGlvblR5cGUgVGhlIGFubm90YXRpb24gdG8gY2hlY2tcbiAqIEBwYXJhbSB0eXBlTmFtZSBUaGUgdHlwZSB0byBjaGVjayBmb3JcbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIGFubm90YXRpb24gb2YgdGhlIGdpdmVuIHR5cGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQW5ub3RhdGlvbk9mVHlwZTxUIGV4dGVuZHMgb2JqZWN0ICYgQW5ub3RhdGlvblR5cGU+KFxuXHRwb3RlbnRpYWxBbm5vdGF0aW9uVHlwZTogdW5rbm93bixcblx0dHlwZU5hbWU6IFRbXCIkVHlwZVwiXSB8IFRbXCIkVHlwZVwiXVtdXG4pOiBwb3RlbnRpYWxBbm5vdGF0aW9uVHlwZSBpcyBUIHtcblx0aWYgKEFycmF5LmlzQXJyYXkodHlwZU5hbWUpKSB7XG5cdFx0cmV0dXJuIHR5cGVOYW1lLmluY2x1ZGVzKChwb3RlbnRpYWxBbm5vdGF0aW9uVHlwZSBhcyBBbm5vdGF0aW9uVHlwZSk/LiRUeXBlKTtcblx0fVxuXHRyZXR1cm4gKHBvdGVudGlhbEFubm90YXRpb25UeXBlIGFzIEFubm90YXRpb25UeXBlKT8uJFR5cGUgPT09IHR5cGVOYW1lO1xufVxuXG4vKipcbiAqIENoZWNrcyB3aGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhbiBhbm5vdGF0aW9uIG9mIHRoZSBnaXZlbiB0ZXJtLlxuICogQHBhcmFtIHBvdGVudGlhbEFubm90YXRpb24gVGhlIGFubm90YXRpb24gdG8gY2hlY2tcbiAqIEBwYXJhbSB0ZXJtTmFtZSBUaGUgdGVybSB0byBjaGVjayBmb3JcbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIGFubm90YXRpb24gb2YgdGhlIGdpdmVuIHRlcm1cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQW5ub3RhdGlvbk9mVGVybTxUIGV4dGVuZHMgb2JqZWN0ICYgX0Fubm90YXRpb25UZXJtPihcblx0cG90ZW50aWFsQW5ub3RhdGlvbjogdW5rbm93bixcblx0dGVybU5hbWU6IFRbXCJ0ZXJtXCJdXG4pOiBwb3RlbnRpYWxBbm5vdGF0aW9uIGlzIEFubm90YXRpb25UZXJtPFQ+IHtcblx0cmV0dXJuIChwb3RlbnRpYWxBbm5vdGF0aW9uIGFzIF9Bbm5vdGF0aW9uVGVybSk/LnRlcm0gPT09IHRlcm1OYW1lO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBbm5vdGF0aW9uVGVybShwb3RlbnRpYWxBbm5vdGF0aW9uOiB1bmtub3duKTogcG90ZW50aWFsQW5ub3RhdGlvbiBpcyBfQW5ub3RhdGlvblRlcm0ge1xuXHRyZXR1cm4gKHBvdGVudGlhbEFubm90YXRpb24gYXMgX0Fubm90YXRpb25UZXJtKS5oYXNPd25Qcm9wZXJ0eShcInRlcm1cIik7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIFNlcnZpY2VPYmplY3R9LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgU2VydmljZU9iamVjdH0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1NlcnZpY2VPYmplY3Qoc2VydmljZU9iamVjdDogdW5rbm93biB8IHVuZGVmaW5lZCk6IHNlcnZpY2VPYmplY3QgaXMgU2VydmljZU9iamVjdCB7XG5cdHJldHVybiBzZXJ2aWNlT2JqZWN0Py5oYXNPd25Qcm9wZXJ0eShcIl90eXBlXCIpID8/IGZhbHNlO1xufVxuXG4vKipcbiAqIENoZWNrcyB3aGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBDb21wbGV4VHlwZX0uXG4gKiBAcGFyYW0gc2VydmljZU9iamVjdCBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBDb21wbGV4VHlwZX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0NvbXBsZXhUeXBlKHNlcnZpY2VPYmplY3Q6IHVua25vd24pOiBzZXJ2aWNlT2JqZWN0IGlzIENvbXBsZXhUeXBlIHtcblx0cmV0dXJuIChzZXJ2aWNlT2JqZWN0IGFzIENvbXBsZXhUeXBlKT8uX3R5cGUgPT09IFwiQ29tcGxleFR5cGVcIjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgVHlwZURlZmluaXRpb259LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgVHlwZURlZmluaXRpb259LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNUeXBlRGVmaW5pdGlvbihzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBUeXBlRGVmaW5pdGlvbiB7XG5cdHJldHVybiAoc2VydmljZU9iamVjdCBhcyBUeXBlRGVmaW5pdGlvbik/Ll90eXBlID09PSBcIlR5cGVEZWZpbml0aW9uXCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIHtAbGluayBFbnRpdHlDb250YWluZXJ9LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4ge0BsaW5rIEVudGl0eUNvbnRhaW5lcn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0VudGl0eUNvbnRhaW5lcihzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBFbnRpdHlDb250YWluZXIge1xuXHRyZXR1cm4gKHNlcnZpY2VPYmplY3QgYXMgRW50aXR5Q29udGFpbmVyKT8uX3R5cGUgPT09IFwiRW50aXR5Q29udGFpbmVyXCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIHtAbGluayBFbnRpdHlTZXR9LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4ge0BsaW5rIEVudGl0eVNldH0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0VudGl0eVNldChzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBFbnRpdHlTZXQge1xuXHRyZXR1cm4gKHNlcnZpY2VPYmplY3QgYXMgRW50aXR5U2V0KT8uX3R5cGUgPT09IFwiRW50aXR5U2V0XCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIFNpbmdsZXRvbn0uXG4gKiBAcGFyYW0gc2VydmljZU9iamVjdCBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBTaW5nbGV0b259XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1NpbmdsZXRvbihzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBTaW5nbGV0b24ge1xuXHRyZXR1cm4gKHNlcnZpY2VPYmplY3QgYXMgU2luZ2xldG9uKT8uX3R5cGUgPT09IFwiU2luZ2xldG9uXCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIHtAbGluayBFbnRpdHlUeXBlfS5cbiAqIEBwYXJhbSBzZXJ2aWNlT2JqZWN0IFRoZSBvYmplY3QgdG8gYmUgY2hlY2tlZC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIHtAbGluayBFbnRpdHlUeXBlfVxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNFbnRpdHlUeXBlKHNlcnZpY2VPYmplY3Q6IHVua25vd24pOiBzZXJ2aWNlT2JqZWN0IGlzIEVudGl0eVR5cGUge1xuXHRyZXR1cm4gKHNlcnZpY2VPYmplY3QgYXMgRW50aXR5VHlwZSk/Ll90eXBlID09PSBcIkVudGl0eVR5cGVcIjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgUHJvcGVydHl9LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgUHJvcGVydHl9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNQcm9wZXJ0eShzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBQcm9wZXJ0eSB7XG5cdHJldHVybiAoc2VydmljZU9iamVjdCBhcyBQcm9wZXJ0eSk/Ll90eXBlID09PSBcIlByb3BlcnR5XCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIHtAbGluayBBY3Rpb25QYXJhbWV0ZXJ9LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgQWN0aW9uUGFyYW1ldGVyfS5cbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGlzQWN0aW9uUGFyYW1ldGVyKHNlcnZpY2VPYmplY3Q6IHVua25vd24pOiBzZXJ2aWNlT2JqZWN0IGlzIEFjdGlvblBhcmFtZXRlciB7XG5cdHJldHVybiAoc2VydmljZU9iamVjdCBhcyBBY3Rpb25QYXJhbWV0ZXIpPy5fdHlwZSA9PT0gXCJBY3Rpb25QYXJhbWV0ZXJcIjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgTmF2aWdhdGlvblByb3BlcnR5fS5cbiAqXG4gKiBIaW50OiBUaGVyZSBhcmUgYWxzbyB0aGUgbW9yZSBzcGVjaWZpYyBmdW5jdGlvbnMge0BsaW5rIGlzU2luZ2xlTmF2aWdhdGlvblByb3BlcnR5fSBhbmQge0BsaW5rIGlzTXVsdGlwbGVOYXZpZ2F0aW9uUHJvcGVydHl9LiBUaGVzZSBjYW4gYmVcbiAqIHVzZWQgdG8gY2hlY2sgZm9yIHRvLW9uZSBhbmQgdG8tbWFueSBuYXZpZ2F0aW9uIHByb3BlcnRpZXMsIHJlc3BlY3RpdmVseS5cbiAqIEBwYXJhbSBzZXJ2aWNlT2JqZWN0IFRoZSBvYmplY3QgdG8gYmUgY2hlY2tlZC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIE5hdmlnYXRpb25Qcm9wZXJ0eX0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc05hdmlnYXRpb25Qcm9wZXJ0eShzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBOYXZpZ2F0aW9uUHJvcGVydHkge1xuXHRyZXR1cm4gKHNlcnZpY2VPYmplY3QgYXMgTmF2aWdhdGlvblByb3BlcnR5KT8uX3R5cGUgPT09IFwiTmF2aWdhdGlvblByb3BlcnR5XCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIFNpbmdsZU5hdmlnYXRpb25Qcm9wZXJ0eX0uXG4gKiBAcGFyYW0gc2VydmljZU9iamVjdCBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBTaW5nbGVOYXZpZ2F0aW9uUHJvcGVydHl9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNTaW5nbGVOYXZpZ2F0aW9uUHJvcGVydHkoc2VydmljZU9iamVjdDogdW5rbm93bik6IHNlcnZpY2VPYmplY3QgaXMgU2luZ2xlTmF2aWdhdGlvblByb3BlcnR5IHtcblx0cmV0dXJuIGlzTmF2aWdhdGlvblByb3BlcnR5KHNlcnZpY2VPYmplY3QpICYmICFzZXJ2aWNlT2JqZWN0LmlzQ29sbGVjdGlvbjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgTXVsdGlwbGVOYXZpZ2F0aW9uUHJvcGVydHl9LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgTXVsdGlwbGVOYXZpZ2F0aW9uUHJvcGVydHl9LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNNdWx0aXBsZU5hdmlnYXRpb25Qcm9wZXJ0eShzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBNdWx0aXBsZU5hdmlnYXRpb25Qcm9wZXJ0eSB7XG5cdHJldHVybiBpc05hdmlnYXRpb25Qcm9wZXJ0eShzZXJ2aWNlT2JqZWN0KSAmJiBzZXJ2aWNlT2JqZWN0LmlzQ29sbGVjdGlvbjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgUGF0aEFubm90YXRpb25FeHByZXNzaW9ufS5cbiAqIEBwYXJhbSBleHByZXNzaW9uIFRoZSBvYmplY3QgdG8gYmUgY2hlY2tlZC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIFBhdGhBbm5vdGF0aW9uRXhwcmVzc2lvbn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1BhdGhBbm5vdGF0aW9uRXhwcmVzc2lvbjxUPihleHByZXNzaW9uOiB1bmtub3duKTogZXhwcmVzc2lvbiBpcyBQYXRoQW5ub3RhdGlvbkV4cHJlc3Npb248VD4ge1xuXHRyZXR1cm4gKGV4cHJlc3Npb24gYXMgUGF0aEFubm90YXRpb25FeHByZXNzaW9uPFQ+KT8udHlwZSA9PT0gXCJQYXRoXCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIEFubm90YXRpb25QYXRoRXhwcmVzc2lvbn0uXG4gKiBAcGFyYW0gZXhwcmVzc2lvbiBUaGUgb2JqZWN0IHRvIGJlIGNoZWNrZWQuXG4gKiBAcmV0dXJucyBXaGV0aGVyIHRoZSBhcmd1bWVudCBpcyBhIHtAbGluayBBbm5vdGF0aW9uUGF0aEV4cHJlc3Npb259LlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNBbm5vdGF0aW9uUGF0aDxUPihleHByZXNzaW9uOiB1bmtub3duKTogZXhwcmVzc2lvbiBpcyBBbm5vdGF0aW9uUGF0aDxUPiB7XG5cdHJldHVybiAoZXhwcmVzc2lvbiBhcyBBbm5vdGF0aW9uUGF0aDxUPik/LnR5cGUgPT09IFwiQW5ub3RhdGlvblBhdGhcIjtcbn1cblxuLyoqXG4gKiBDaGVja3Mgd2hldGhlciB0aGUgYXJndW1lbnQgaXMgYSB7QGxpbmsgUHJvcGVydHlQYXRofS5cbiAqIEBwYXJhbSBleHByZXNzaW9uIFRoZSBvYmplY3QgdG8gYmUgY2hlY2tlZC5cbiAqIEByZXR1cm5zIFdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGEge0BsaW5rIFByb3BlcnR5UGF0aH0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc1Byb3BlcnR5UGF0aEV4cHJlc3Npb24oZXhwcmVzc2lvbjogdW5rbm93bik6IGV4cHJlc3Npb24gaXMgUHJvcGVydHlQYXRoIHtcblx0cmV0dXJuIChleHByZXNzaW9uIGFzIFByb3BlcnR5UGF0aCk/LnR5cGUgPT09IFwiUHJvcGVydHlQYXRoXCI7XG59XG5cbi8qKlxuICogQ2hlY2tzIHdoZXRoZXIgdGhlIGFyZ3VtZW50IGlzIGFuIHtAbGluayBBY3Rpb259LlxuICogQHBhcmFtIHNlcnZpY2VPYmplY3QgVGhlIG9iamVjdCB0byBiZSBjaGVja2VkLlxuICogQHJldHVybnMgV2hldGhlciB0aGUgYXJndW1lbnQgaXMgYW4ge0BsaW5rIEFjdGlvbn0uXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc0FjdGlvbihzZXJ2aWNlT2JqZWN0OiB1bmtub3duKTogc2VydmljZU9iamVjdCBpcyBBY3Rpb24ge1xuXHRyZXR1cm4gKHNlcnZpY2VPYmplY3QgYXMgQWN0aW9uKT8uX3R5cGUgPT09IFwiQWN0aW9uXCI7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0VBbUJPLFNBQVNBLFdBQVdBLENBQUlDLENBQTBCLEVBQWtDO0lBQzFGLE9BQU9BLENBQUMsQ0FBQ0MsTUFBTSxLQUFLLFdBQVc7RUFDaEM7RUFBQ0MsUUFBQSxDQUFBSCxXQUFBLEdBQUFBLFdBQUE7RUFDTSxTQUFTSSxVQUFVQSxDQUFJSCxDQUEwQixFQUE4QjtJQUNyRixPQUFPQSxDQUFDLENBQUNDLE1BQU0sS0FBSyxVQUFVO0VBQy9CO0VBQUNDLFFBQUEsQ0FBQUMsVUFBQSxHQUFBQSxVQUFBO0VBRU0sU0FBU0MsU0FBU0EsQ0FBQ0MsZ0JBQStDLEVBQStCO0lBQ3ZHLE9BQVFBLGdCQUFnQixFQUFjQyxHQUFHLEdBQVksc0JBQXNCLENBQUM7RUFDN0U7RUFBQ0osUUFBQSxDQUFBRSxTQUFBLEdBQUFBLFNBQUE7RUFFTSxTQUFTRyxlQUFlQSxDQUFDQyxzQkFBNEMsRUFBd0M7SUFDbkgsT0FDQ0Ms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
|
|
@@ -14,7 +14,7 @@ import type {
|
|
|
14
14
|
Singleton,
|
|
15
15
|
TypeDefinition
|
|
16
16
|
} from "@sap-ux/vocabularies-types";
|
|
17
|
-
import type { Action, AnnotationPath } from "@sap-ux/vocabularies-types/Edm";
|
|
17
|
+
import type { Action, ActionParameter, AnnotationPath } from "@sap-ux/vocabularies-types/Edm";
|
|
18
18
|
import type Context from "sap/ui/model/odata/v4/Context";
|
|
19
19
|
|
|
20
20
|
export function isFulfilled<T>(p: PromiseSettledResult<T>): p is PromiseFulfilledResult<T> {
|
|
@@ -150,6 +150,15 @@ export function isProperty(serviceObject: unknown): serviceObject is Property {
|
|
|
150
150
|
return (serviceObject as Property)?._type === "Property";
|
|
151
151
|
}
|
|
152
152
|
|
|
153
|
+
/**
|
|
154
|
+
* Checks whether the argument is an {@link ActionParameter}.
|
|
155
|
+
* @param serviceObject The object to be checked.
|
|
156
|
+
* @returns Whether the argument is a {@link ActionParameter}.
|
|
157
|
+
*/
|
|
158
|
+
export function isActionParameter(serviceObject: unknown): serviceObject is ActionParameter {
|
|
159
|
+
return (serviceObject as ActionParameter)?._type === "ActionParameter";
|
|
160
|
+
}
|
|
161
|
+
|
|
153
162
|
/**
|
|
154
163
|
* Checks whether the argument is a {@link NavigationProperty}.
|
|
155
164
|
*
|
|
@@ -22,8 +22,8 @@ sap.ui.define(["sap/ui/core/ws/SapPcpWebSocket"], function (SapPcpWebSocket) {
|
|
|
22
22
|
return ChannelType;
|
|
23
23
|
}({});
|
|
24
24
|
_exports.ChannelType = ChannelType;
|
|
25
|
-
function createWebSocket(channelType,
|
|
26
|
-
const
|
|
25
|
+
function createWebSocket(channelType, appComponent, additionalParameters) {
|
|
26
|
+
const model = appComponent.getModel();
|
|
27
27
|
const serviceUrl = model.getServiceUrl();
|
|
28
28
|
const socketBaseURL = getWebSocketBaseUrl(model);
|
|
29
29
|
if (!socketBaseURL) {
|
|
@@ -35,12 +35,11 @@ sap.ui.define(["sap/ui/core/ws/SapPcpWebSocket"], function (SapPcpWebSocket) {
|
|
|
35
35
|
// Support useBackendUrl for local testing
|
|
36
36
|
const useBackendUrl = new URLSearchParams(window.location.search).get("useBackendUrl");
|
|
37
37
|
if (useBackendUrl) {
|
|
38
|
-
socketURI = useBackendUrl.replace("https", "wss")
|
|
38
|
+
socketURI = `${useBackendUrl.replace("https", "wss")}${(socketBaseURL.startsWith("/") ? "" : "/") + socketBaseURL}`;
|
|
39
39
|
} else {
|
|
40
|
-
socketURI =
|
|
41
|
-
socketURI += `//${hostLocation.host}`;
|
|
40
|
+
socketURI = appComponent.getManifestObject().resolveUri(socketBaseURL);
|
|
42
41
|
}
|
|
43
|
-
socketURI +=
|
|
42
|
+
socketURI += `?${channelUrl}relatedService=${serviceUrl}`;
|
|
44
43
|
if (additionalParameters) {
|
|
45
44
|
for (const p in additionalParameters) {
|
|
46
45
|
socketURI += `&${p}=${encodeURI(additionalParameters[p])}`;
|
|
@@ -70,4 +69,4 @@ sap.ui.define(["sap/ui/core/ws/SapPcpWebSocket"], function (SapPcpWebSocket) {
|
|
|
70
69
|
_exports.getWebSocketChannelUrl = getWebSocketChannelUrl;
|
|
71
70
|
return _exports;
|
|
72
71
|
}, false);
|
|
73
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
72
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJXRUJTT0NLRVRfU1RBVFVTIiwiX2V4cG9ydHMiLCJDaGFubmVsVHlwZSIsImNyZWF0ZVdlYlNvY2tldCIsImNoYW5uZWxUeXBlIiwiYXBwQ29tcG9uZW50IiwiYWRkaXRpb25hbFBhcmFtZXRlcnMiLCJtb2RlbCIsImdldE1vZGVsIiwic2VydmljZVVybCIsImdldFNlcnZpY2VVcmwiLCJzb2NrZXRCYXNlVVJMIiwiZ2V0V2ViU29ja2V0QmFzZVVybCIsIkVycm9yIiwiY2hhbm5lbFVybCIsImdldFdlYlNvY2tldENoYW5uZWxVcmwiLCJzb2NrZXRVUkkiLCJ1c2VCYWNrZW5kVXJsIiwiVVJMU2VhcmNoUGFyYW1zIiwid2luZG93IiwibG9jYXRpb24iLCJzZWFyY2giLCJnZXQiLCJyZXBsYWNlIiwic3RhcnRzV2l0aCIsImdldE1hbmlmZXN0T2JqZWN0IiwicmVzb2x2ZVVyaSIsInAiLCJlbmNvZGVVUkkiLCJTYXBQY3BXZWJTb2NrZXQiLCJTVVBQT1JURURfUFJPVE9DT0xTIiwidjEwIiwiZ2V0TWV0YU1vZGVsIiwiZ2V0T2JqZWN0IiwiQ29sbGFib3JhdGlvbkRyYWZ0IiwiU2lkZUVmZmVjdHNFdmVudHMiLCJjaGFubmVsTmFtZSJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiV2ViU29ja2V0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBTYXBQY3BXZWJTb2NrZXQsIHsgU1VQUE9SVEVEX1BST1RPQ09MUyB9IGZyb20gXCJzYXAvdWkvY29yZS93cy9TYXBQY3BXZWJTb2NrZXRcIjtcbmltcG9ydCB0eXBlIE9EYXRhTW9kZWwgZnJvbSBcInNhcC91aS9tb2RlbC9vZGF0YS92NC9PRGF0YU1vZGVsXCI7XG5pbXBvcnQgdHlwZSBBcHBDb21wb25lbnQgZnJvbSBcIi4uL0FwcENvbXBvbmVudFwiO1xuXG5leHBvcnQgZW51bSBXRUJTT0NLRVRfU1RBVFVTIHtcblx0Q0xPU0VEID0gMCxcblx0Q0xPU0lORyA9IDEsXG5cdENPTk5FQ1RJTkcgPSAyLFxuXHRDT05ORUNURUQgPSAzLFxuXHRFUlJPUiA9IDRcbn1cblxuZXhwb3J0IGVudW0gQ2hhbm5lbFR5cGUge1xuXHRDb2xsYWJvcmF0aW9uRHJhZnQgPSBcIkNvbGxhYm9yYXRpb25EcmFmdFwiLFxuXHRTaWRlRWZmZWN0c0V2ZW50cyA9IFwiU2lkZUVmZmVjdHNFdmVudHNcIlxufVxuXG5leHBvcnQgdHlwZSBXZWJTb2NrZXRQYXJhbWV0ZXIgPSBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlV2ViU29ja2V0KFxuXHRjaGFubmVsVHlwZTogQ2hhbm5lbFR5cGUsXG5cdGFwcENvbXBvbmVudDogQXBwQ29tcG9uZW50LFxuXHRhZGRpdGlvbmFsUGFyYW1ldGVycz86IFdlYlNvY2tldFBhcmFtZXRlclxuKTogU2FwUGNwV2ViU29ja2V0IHtcblx0Y29uc3QgbW9kZWwgPSBhcHBDb21wb25lbnQuZ2V0TW9kZWwoKTtcblx0Y29uc3Qgc2VydmljZVVybCA9IG1vZGVsLmdldFNlcnZpY2VVcmwoKTtcblx0Y29uc3Qgc29ja2V0QmFzZVVSTCA9IGdldFdlYlNvY2tldEJhc2VVcmwobW9kZWwpO1xuXHRpZiAoIXNvY2tldEJhc2VVUkwpIHtcblx0XHR0aHJvdyBFcnJvcihcIldlYlNvY2tldCBCYXNlIFVSTCBhbm5vdGF0aW9uIG5vdCBmb3VuZFwiKTtcblx0fVxuXG5cdGNvbnN0IGNoYW5uZWxVcmwgPSBnZXRXZWJTb2NrZXRDaGFubmVsVXJsKGNoYW5uZWxUeXBlLCBtb2RlbCk7XG5cdGxldCBzb2NrZXRVUkk7XG5cblx0Ly8gU3VwcG9ydCB1c2VCYWNrZW5kVXJsIGZvciBsb2NhbCB0ZXN0aW5nXG5cdGNvbnN0IHVzZUJhY2tlbmRVcmwgPSBuZXcgVVJMU2VhcmNoUGFyYW1zKHdpbmRvdy5sb2NhdGlvbi5zZWFyY2gpLmdldChcInVzZUJhY2tlbmRVcmxcIik7XG5cdGlmICh1c2VCYWNrZW5kVXJsKSB7XG5cdFx0c29ja2V0VVJJID0gYCR7dXNlQmFja2VuZFVybC5yZXBsYWNlKFwiaHR0cHNcIiwgXCJ3c3NcIil9JHsoc29ja2V0QmFzZVVSTC5zdGFydHNXaXRoKFwiL1wiKSA/IFwiXCIgOiBcIi9cIikgKyBzb2NrZXRCYXNlVVJMfWA7XG5cdH0gZWxzZSB7XG5cdFx0c29ja2V0VVJJID0gYXBwQ29tcG9uZW50LmdldE1hbmlmZXN0T2JqZWN0KCkucmVzb2x2ZVVyaShzb2NrZXRCYXNlVVJMKTtcblx0fVxuXG5cdHNvY2tldFVSSSArPSBgPyR7Y2hhbm5lbFVybH1yZWxhdGVkU2VydmljZT0ke3NlcnZpY2VVcmx9YDtcblxuXHRpZiAoYWRkaXRpb25hbFBhcmFtZXRlcnMpIHtcblx0XHRmb3IgKGNvbnN0IHAgaW4gYWRkaXRpb25hbFBhcmFtZXRlcnMpIHtcblx0XHRcdHNvY2tldFVSSSArPSBgJiR7cH09JHtlbmNvZGVVUkkoYWRkaXRpb25hbFBhcmFtZXRlcnNbcF0pfWA7XG5cdFx0fVxuXHR9XG5cdHJldHVybiBuZXcgU2FwUGNwV2ViU29ja2V0KHNvY2tldFVSSSwgW1NVUFBPUlRFRF9QUk9UT0NPTFMudjEwXSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRXZWJTb2NrZXRCYXNlVXJsKG1vZGVsOiBPRGF0YU1vZGVsKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcblx0cmV0dXJuIG1vZGVsLmdldE1ldGFNb2RlbCgpLmdldE9iamVjdChcIi9AY29tLnNhcC52b2NhYnVsYXJpZXMuQ29tbW9uLnYxLldlYlNvY2tldEJhc2VVUkxcIik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRXZWJTb2NrZXRDaGFubmVsVXJsKGNoYW5uZWxUeXBlOiBDaGFubmVsVHlwZSwgbW9kZWw6IE9EYXRhTW9kZWwpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuXHRpZiAoIWdldFdlYlNvY2tldEJhc2VVcmwobW9kZWwpKSB7XG5cdFx0cmV0dXJuIFwiXCI7XG5cdH1cblxuXHRzd2l0Y2ggKGNoYW5uZWxUeXBlKSB7XG5cdFx0Y2FzZSBDaGFubmVsVHlwZS5Db2xsYWJvcmF0aW9uRHJhZnQ6XG5cdFx0XHQvLyBjdXJyZW50bHkgY29sbGFib3JhdGlvbiBkcmFmdCBkb2VzIG5vdCBuZWVkIGEgY2hhbm5lbCAobWlnaHQgY2hhbmdlIGxhdGVyKVxuXHRcdFx0cmV0dXJuIFwiXCI7XG5cdFx0Y2FzZSBDaGFubmVsVHlwZS5TaWRlRWZmZWN0c0V2ZW50czpcblx0XHRcdC8vIHRoZSBzZXJ2aWNlIG5lZWQgYSBXZWJTb2NrZXRDaGFubmVsIGFubm90YXRlZCB3aXRoIGEgI3NpZGVFZmZlY3RzIHF1YWxpZmllclxuXHRcdFx0Y29uc3QgY2hhbm5lbE5hbWUgPSBtb2RlbC5nZXRNZXRhTW9kZWwoKS5nZXRPYmplY3QoXCIvQGNvbS5zYXAudm9jYWJ1bGFyaWVzLkNvbW1vbi52MS5XZWJTb2NrZXRDaGFubmVsI3NpZGVFZmZlY3RzXCIpO1xuXHRcdFx0cmV0dXJuIGBzaWRlRWZmZWN0cz0ke2NoYW5uZWxOYW1lfSZgO1xuXHR9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztNQUlZQSxnQkFBZ0IsMEJBQWhCQSxnQkFBZ0I7SUFBaEJBLGdCQUFnQixDQUFoQkEsZ0JBQWdCO0lBQWhCQSxnQkFBZ0IsQ0FBaEJBLGdCQUFnQjtJQUFoQkEsZ0JBQWdCLENBQWhCQSxnQkFBZ0I7SUFBaEJBLGdCQUFnQixDQUFoQkEsZ0JBQWdCO0lBQWhCQSxnQkFBZ0IsQ0FBaEJBLGdCQUFnQjtJQUFBLE9BQWhCQSxnQkFBZ0I7RUFBQTtFQUFBQyxRQUFBLENBQUFELGdCQUFBLEdBQUFBLGdCQUFBO0VBQUEsSUFRaEJFLFdBQVcsMEJBQVhBLFdBQVc7SUFBWEEsV0FBVztJQUFYQSxXQUFXO0lBQUEsT0FBWEEsV0FBVztFQUFBO0VBQUFELFFBQUEsQ0FBQUMsV0FBQSxHQUFBQSxXQUFBO0VBT2hCLFNBQVNDLGVBQWVBLENBQzlCQyxXQUF3QixFQUN4QkMsWUFBMEIsRUFDMUJDLG9CQUF5QyxFQUN2QjtJQUNsQixNQUFNQyxLQUFLLEdBQUdGLFlBQVksQ0FBQ0csUUFBUSxDQUFDLENBQUM7SUFDckMsTUFBTUMsVUFBVSxHQUFHRixLQUFLLENBQUNHLGFBQWEsQ0FBQyxDQUFDO0lBQ3hDLE1BQU1DLGFBQWEsR0FBR0MsbUJBQW1CLENBQUNMLEtBQUssQ0FBQztJQUNoRCxJQUFJLENBQUNJLGFBQWEsRUFBRTtNQUNuQixNQUFNRSxLQUFLLENBQUMseUNBQXlDLENBQUM7SUFDdkQ7SUFFQSxNQUFNQyxVQUFVLEdBQUdDLHNCQUFzQixDQUFDWCxXQUFXLEVBQUVHLEtBQUssQ0FBQztJQUM3RCxJQUFJUyxTQUFTOztJQUViO0lBQ0EsTUFBTUMsYUFBYSxHQUFHLElBQUlDLGVBQWUsQ0FBQ0MsTUFBTSxDQUFDQyxRQUFRLENBQUNDLE1BQU0sQ0FBQyxDQUFDQyxHQUFHLENBQUMsZUFBZSxDQUFDO0lBQ3RGLElBQUlMLGFBQWEsRUFBRTtNQUNsQkQsU0FBUyxHQUFHLEdBQUdDLGFBQWEsQ0FBQ00sT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsR0FBRyxDQUFDWixhQUFhLENBQUNhLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEdBQUcsR0FBRyxJQUFJYixhQUFhLEVBQUU7SUFDcEgsQ0FBQyxNQUFNO01BQ05LLFNBQVMsR0FBR1gsWUFBWSxDQUFDb0IsaUJBQWlCLENBQUMsQ0FBQyxDQUFDQyxVQUFVLENBQUNmLGFBQWEsQ0FBQztJQUN2RTtJQUVBSyxTQUFTLElBQUksSUFBSUYsVUFBVSxrQkFBa0JMLFVBQVUsRUFBRTtJQUV6RCxJQUFJSCxvQkFBb0IsRUFBRTtNQUN6QixLQUFLLE1BQU1xQixDQUFDLElBQUlyQixvQkFBb0IsRUFBRTtRQUNyQ1UsU0FBUyxJQUFJLElBQUlXLENBQUMsSUFBSUMsU0FBUyxDQUFDdEIsb0JBQW9CLENBQUNxQixDQUFDLENBQUMsQ0FBQyxFQUFFO01BQzNEO0lBQ0Q7SUFDQSxPQUFPLElBQUlFLGVBQWUsQ0FBQ2IsU0FBUyxFQUFFLENBQUNjLG1CQUFtQixDQUFDQyxHQUFHLENBQUMsQ0FBQztFQUNqRTtFQUFDOUIsUUFBQSxDQUFBRSxlQUFBLEdBQUFBLGVBQUE7RUFFTSxTQUFTUyxtQkFBbUJBLENBQUNMLEtBQWlCLEVBQXNCO0lBQzFFLE9BQU9BLEtBQUssQ0FBQ3lCLFlBQVksQ0FBQyxDQUFDLENBQUNDLFNBQVMsQ0FBQyxtREFBbUQsQ0FBQztFQUMzRjtFQUFDaEMsUUFBQSxDQUFBVyxtQkFBQSxHQUFBQSxtQkFBQTtFQUVNLFNBQVNHLHNCQUFzQkEsQ0FBQ1gsV0FBd0IsRUFBRUcsS0FBaUIsRUFBc0I7SUFDdkcsSUFBSSxDQUFDSyxtQkFBbUIsQ0FBQ0wsS0FBSyxDQUFDLEVBQUU7TUFDaEMsT0FBTyxFQUFFO0lBQ1Y7SUFFQSxRQUFRSCxXQUFXO01BQ2xCLEtBQUtGLFdBQVcsQ0FBQ2dDLGtCQUFrQjtRQUNsQztRQUNBLE9BQU8sRUFBRTtNQUNWLEtBQUtoQyxXQUFXLENBQUNpQyxpQkFBaUI7UUFDakM7UUFDQSxNQUFNQyxXQUFXLEdBQUc3QixLQUFLLENBQUN5QixZQUFZLENBQUMsQ0FBQyxDQUFDQyxTQUFTLENBQUMsK0RBQStELENBQUM7UUFDbkgsT0FBTyxlQUFlRyxXQUFXLEdBQUc7SUFDdEM7RUFDRDtFQUFDbkMsUUFBQSxDQUFBYyxzQkFBQSxHQUFBQSxzQkFBQTtFQUFBLE9BQUFkLFFBQUE7QUFBQSIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import SapPcpWebSocket, { SUPPORTED_PROTOCOLS } from "sap/ui/core/ws/SapPcpWebSocket";
|
|
2
2
|
import type ODataModel from "sap/ui/model/odata/v4/ODataModel";
|
|
3
|
+
import type AppComponent from "../AppComponent";
|
|
3
4
|
|
|
4
5
|
export enum WEBSOCKET_STATUS {
|
|
5
6
|
CLOSED = 0,
|
|
@@ -16,8 +17,12 @@ export enum ChannelType {
|
|
|
16
17
|
|
|
17
18
|
export type WebSocketParameter = Record<string, string>;
|
|
18
19
|
|
|
19
|
-
export function createWebSocket(
|
|
20
|
-
|
|
20
|
+
export function createWebSocket(
|
|
21
|
+
channelType: ChannelType,
|
|
22
|
+
appComponent: AppComponent,
|
|
23
|
+
additionalParameters?: WebSocketParameter
|
|
24
|
+
): SapPcpWebSocket {
|
|
25
|
+
const model = appComponent.getModel();
|
|
21
26
|
const serviceUrl = model.getServiceUrl();
|
|
22
27
|
const socketBaseURL = getWebSocketBaseUrl(model);
|
|
23
28
|
if (!socketBaseURL) {
|
|
@@ -30,13 +35,12 @@ export function createWebSocket(channelType: ChannelType, model: ODataModel, add
|
|
|
30
35
|
// Support useBackendUrl for local testing
|
|
31
36
|
const useBackendUrl = new URLSearchParams(window.location.search).get("useBackendUrl");
|
|
32
37
|
if (useBackendUrl) {
|
|
33
|
-
socketURI = useBackendUrl.replace("https", "wss")
|
|
38
|
+
socketURI = `${useBackendUrl.replace("https", "wss")}${(socketBaseURL.startsWith("/") ? "" : "/") + socketBaseURL}`;
|
|
34
39
|
} else {
|
|
35
|
-
socketURI =
|
|
36
|
-
socketURI += `//${hostLocation.host}`;
|
|
40
|
+
socketURI = appComponent.getManifestObject().resolveUri(socketBaseURL);
|
|
37
41
|
}
|
|
38
42
|
|
|
39
|
-
socketURI +=
|
|
43
|
+
socketURI += `?${channelUrl}relatedService=${serviceUrl}`;
|
|
40
44
|
|
|
41
45
|
if (additionalParameters) {
|
|
42
46
|
for (const p in additionalParameters) {
|
|
@@ -40,13 +40,13 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/formatters/CriticalityFormatter", "s
|
|
|
40
40
|
const thisLib = Library.init({
|
|
41
41
|
name: "sap.fe.core",
|
|
42
42
|
apiVersion: 2,
|
|
43
|
-
dependencies: ["sap.ui.core", "sap.fe.base", "sap.fe.navigation", "sap.fe.placeholder", "sap.f"],
|
|
43
|
+
dependencies: ["sap.ui.core", "sap.fe.base", "sap.fe.navigation", "sap.fe.placeholder", "sap.f", "sap.ui.fl"],
|
|
44
44
|
types: ["sap.fe.core.CreationMode", "sap.fe.core.VariantManagement"],
|
|
45
45
|
interfaces: [],
|
|
46
46
|
controls: [],
|
|
47
47
|
elements: [],
|
|
48
48
|
// eslint-disable-next-line no-template-curly-in-string
|
|
49
|
-
version: "1.
|
|
49
|
+
version: "1.142.1",
|
|
50
50
|
noLibraryCSS: true,
|
|
51
51
|
extensions: {
|
|
52
52
|
//Configuration used for rule loading of Support Assistant
|
|
@@ -226,6 +226,33 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/formatters/CriticalityFormatter", "s
|
|
|
226
226
|
*/
|
|
227
227
|
OnBeforeCreateFailed: "onBeforeCreateFailed"
|
|
228
228
|
};
|
|
229
|
+
|
|
230
|
+
/**
|
|
231
|
+
* Preferred action status values.
|
|
232
|
+
* @readonly
|
|
233
|
+
* @enum {string}
|
|
234
|
+
*/
|
|
235
|
+
thisLib.PreferredActionStatusType = {
|
|
236
|
+
/**
|
|
237
|
+
* Initial state, no preferred action has been evaluated.
|
|
238
|
+
* @constant
|
|
239
|
+
* @type {string}
|
|
240
|
+
*/
|
|
241
|
+
NotSet: "notSet",
|
|
242
|
+
/**
|
|
243
|
+
* Preferred action can be performed (conditions are met).
|
|
244
|
+
* @constant
|
|
245
|
+
* @type {string}
|
|
246
|
+
*/
|
|
247
|
+
CanPerform: "canPerform",
|
|
248
|
+
/**
|
|
249
|
+
* Preferred action has been executed and should not be triggered again.
|
|
250
|
+
* @constant
|
|
251
|
+
* @type {string}
|
|
252
|
+
*/
|
|
253
|
+
AlreadyPerformed: "alreadyPerformed"
|
|
254
|
+
};
|
|
255
|
+
|
|
229
256
|
/**
|
|
230
257
|
* Available values for programming model.
|
|
231
258
|
* @readonly
|
|
@@ -454,4 +481,4 @@ sap.ui.define(["sap/base/Log", "sap/fe/core/formatters/CriticalityFormatter", "s
|
|
|
454
481
|
ServiceFactoryRegistry.register("sap.fe.core.services.InlineEditService", new InlineEditServiceFactory());
|
|
455
482
|
return thisLib;
|
|
456
483
|
}, false);
|
|
457
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZU5hbWVzcGFjZSIsIl9leHBvcnRzIiwiZmVDb3JlTmFtZXNwYWNlIiwiZmVDZXh0TmFtZXNwYWNlIiwiZmVGcG1OYW1lc3BhY2UiLCJ0aGlzTGliIiwiTGlicmFyeSIsImluaXQiLCJuYW1lIiwiYXBpVmVyc2lvbiIsImRlcGVuZGVuY2llcyIsInR5cGVzIiwiaW50ZXJmYWNlcyIsImNvbnRyb2xzIiwiZWxlbWVudHMiLCJ2ZXJzaW9uIiwibm9MaWJyYXJ5Q1NTIiwiZXh0ZW5zaW9ucyIsInB1YmxpY1J1bGVzIiwiaW50ZXJuYWxSdWxlcyIsIkludm9jYXRpb25Hcm91cGluZyIsIklzb2xhdGVkIiwiQ2hhbmdlU2V0IiwiQ3JlYXRpb25Nb2RlIiwiTmV3UGFnZSIsIlN5bmMiLCJBc3luYyIsIkRlZmVycmVkIiwiSW5saW5lIiwiQ3JlYXRpb25Sb3ciLCJJbmxpbmVDcmVhdGlvblJvd3MiLCJFeHRlcm5hbCIsIkNyZWF0aW9uRGlhbG9nIiwiRGF0YVR5cGUiLCJyZWdpc3RlckVudW0iLCJWYXJpYW50TWFuYWdlbWVudCIsIk5vbmUiLCJQYWdlIiwiQ29udHJvbCIsIkNvbnN0YW50cyIsIkNhbmNlbEFjdGlvbkRpYWxvZyIsIkNhbmNlbERpc2NhcmREcmFmdCIsIkFjdGlvbkV4ZWN1dGlvbkZhaWxlZCIsIkNyZWF0aW9uRmFpbGVkIiwiT25CZWZvcmVDcmVhdGVGYWlsZWQiLCJQcm9ncmFtbWluZ01vZGVsIiwiRHJhZnQiLCJTdGlja3kiLCJOb25EcmFmdCIsIkRyYWZ0U3RhdHVzIiwiU2F2aW5nIiwiU2F2ZWQiLCJDbGVhciIsIkVkaXRNb2RlIiwiRGlzcGxheSIsIkVkaXRhYmxlIiwiVGVtcGxhdGVDb250ZW50VmlldyIsIkh5YnJpZCIsIkNoYXJ0IiwiVGFibGUiLCJJbml0aWFsTG9hZE1vZGUiLCJTdGFydHVwTW9kZSIsIk5vcm1hbCIsIkRlZXBsaW5rIiwiQ3JlYXRlIiwiQXV0b0NyZWF0ZSIsIkNvbnRleHROYXZpZ2F0aW9uVHlwZSIsIkluaXRpYWxMb2FkVHlwZSIsImNyZWF0ZVR5cGUiLCJkZWZhdWx0VmFsdWUiLCJBdXRvIiwiaXNWYWxpZCIsInZWYWx1ZSIsIkxvZyIsIndhcm5pbmciLCJ1bmRlZmluZWQiLCJoYXNPd25Qcm9wZXJ0eSIsInNldE5vcm1hbGl6ZXIiLCJEaXNhYmxlZCIsIkVuYWJsZWQiLCJTZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5IiwicmVnaXN0ZXIiLCJUZW1wbGF0ZWRWaWV3U2VydmljZUZhY3RvcnkiLCJSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkiLCJDYWNoZUhhbmRsZXJTZXJ2aWNlRmFjdG9yeSIsIkNvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZUZhY3RvcnkiLCJWaWV3UHJlbG9hZGVyU2VydmljZUZhY3RvcnkiLCJOYXZpZ2F0aW9uU2VydmljZSIsIlJvdXRpbmdTZXJ2aWNlRmFjdG9yeSIsIlNpZGVFZmZlY3RzU2VydmljZUZhY3RvcnkiLCJTaGVsbFNlcnZpY2VzRmFjdG9yeSIsIkVudmlyb25tZW50U2VydmljZUZhY3RvcnkiLCJBc3luY0NvbXBvbmVudFNlcnZpY2VGYWN0b3J5IiwiQ29sbGFib3JhdGl2ZVRvb2xzU2VydmljZUZhY3RvcnkiLCJUZWxlbWV0cnlTZXJ2aWNlRmFjdG9yeSIsIlZhbHVlSGVscEhpc3RvcnlTZXJ2aWNlRmFjdG9yeSIsIkNvbGxhYm9yYXRpdmVEcmFmdFNlcnZpY2VGYWN0b3J5IiwiQ29udGV4dFNoYXJpbmdTZXJ2aWNlRmFjdG9yeSIsIklubGluZUVkaXRTZXJ2aWNlRmFjdG9yeSJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsibGlicmFyeS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBcInNhcC9mZS9jb3JlL2Zvcm1hdHRlcnMvQ3JpdGljYWxpdHlGb3JtYXR0ZXJcIjtcbmltcG9ydCBcInNhcC9mZS9jb3JlL2Zvcm1hdHRlcnMvRlBNRm9ybWF0dGVyXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS9mb3JtYXR0ZXJzL1Njb3BlXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS9mb3JtYXR0ZXJzL1N0YW5kYXJkRm9ybWF0dGVyXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS9mb3JtYXR0ZXJzL1ZhbHVlRm9ybWF0dGVyXCI7XG5cbmltcG9ydCBcInNhcC9mZS9iYXNlL2xpYnJhcnlcIjtcbmltcG9ydCBBc3luY0NvbXBvbmVudFNlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9Bc3luY0NvbXBvbmVudFNlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgQ2FjaGVIYW5kbGVyU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0NhY2hlSGFuZGxlclNlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgQ29sbGFib3JhdGl2ZVRvb2xzU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0NvbGxhYm9yYXRpdmVUb29sc1NlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2VGYWN0b3J5IH0gZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0Vudmlyb25tZW50U2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBJbmxpbmVFZGl0U2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0lubGluZUVkaXRTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IE5hdmlnYXRpb25TZXJ2aWNlIGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9OYXZpZ2F0aW9uU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL1Jlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFJvdXRpbmdTZXJ2aWNlRmFjdG9yeSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvUm91dGluZ1NlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgU2hlbGxTZXJ2aWNlc0ZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL1NoZWxsU2VydmljZXNGYWN0b3J5XCI7XG5pbXBvcnQgU2lkZUVmZmVjdHNTZXJ2aWNlRmFjdG9yeSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvU2lkZUVmZmVjdHNTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFRlbGVtZXRyeVNlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9UZWxlbWV0cnlTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IHsgVGVtcGxhdGVkVmlld1NlcnZpY2VGYWN0b3J5IH0gZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL1RlbXBsYXRlZFZpZXdTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFwic2FwL2ZlL2NvcmUvdHlwZS9EYXRlXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS90eXBlL0RhdGVUaW1lV2l0aFRpbWV6b25lXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS90eXBlL0VtYWlsXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS90eXBlL0Zpc2NhbERhdGVcIjtcbmltcG9ydCBcInNhcC9mZS9jb3JlL3R5cGUvSW5wdXRNYXNrXCI7XG5pbXBvcnQgXCJzYXAvZmUvbmF2aWdhdGlvbi9saWJyYXJ5XCI7XG5pbXBvcnQgXCJzYXAvZmUvcGxhY2Vob2xkZXIvbGlicmFyeVwiO1xuaW1wb3J0IERhdGFUeXBlIGZyb20gXCJzYXAvdWkvYmFzZS9EYXRhVHlwZVwiO1xuaW1wb3J0IExpYnJhcnkgZnJvbSBcInNhcC91aS9jb3JlL0xpYlwiO1xuaW1wb3J0IFwic2FwL3VpL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IFNlcnZpY2VGYWN0b3J5UmVnaXN0cnkgZnJvbSBcInNhcC91aS9jb3JlL3NlcnZpY2UvU2VydmljZUZhY3RvcnlSZWdpc3RyeVwiO1xuaW1wb3J0IENvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZUZhY3RvcnkgZnJvbSBcIi4vc2VydmljZXMvQ29sbGFib3JhdGlvbk1hbmFnZXJTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IENvbnRleHRTaGFyaW5nU2VydmljZUZhY3RvcnkgZnJvbSBcIi4vc2VydmljZXMvQ29udGV4dFNoYXJpbmdTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFZhbHVlSGVscEhpc3RvcnlTZXJ2aWNlRmFjdG9yeSBmcm9tIFwiLi9zZXJ2aWNlcy9WYWx1ZUhlbHBIaXN0b3J5U2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCB7IFZpZXdQcmVsb2FkZXJTZXJ2aWNlRmFjdG9yeSB9IGZyb20gXCIuL3NlcnZpY2VzL1ZpZXdQcmVsb2FkZXJTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IENvbGxhYm9yYXRpdmVEcmFmdFNlcnZpY2VGYWN0b3J5IGZyb20gXCIuL3NlcnZpY2VzL2NvbGxhYm9yYXRpdmVEcmFmdFNlcnZpY2VGYWN0b3J5XCI7XG5cbi8qKlxuICogUm9vdCBuYW1lc3BhY2UgZm9yIGFsbCB0aGUgbGlicmFyaWVzIHJlbGF0ZWQgdG8gU0FQIEZpb3JpIGVsZW1lbnRzLlxuICogQG5hbWVzcGFjZVxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgZmVOYW1lc3BhY2UgPSBcInNhcC5mZVwiO1xuLyoqXG4gKiBMaWJyYXJ5IHByb3ZpZGluZyB0aGUgY29yZSBmdW5jdGlvbmFsaXR5IG9mIHRoZSBydW50aW1lIGZvciBTQVAgRmlvcmkgZWxlbWVudHMgZm9yIE9EYXRhIFY0LlxuICogQG5hbWVzcGFjZVxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgZmVDb3JlTmFtZXNwYWNlID0gXCJzYXAuZmUuY29yZVwiO1xuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGNvbnRyb2xsZXIgZXh0ZW5zaW9ucyB1c2VkIGludGVybmFsbHkgaW4gU0FQIEZpb3JpIGVsZW1lbnRzIGV4cG9zaW5nIGEgbWV0aG9kIHRoYXQgeW91IGNhbiBvdmVycmlkZSB0byBhbGxvdyBtb3JlIGZsZXhpYmlsaXR5LlxuICogQG5hbWVzcGFjZVxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgZmVDZXh0TmFtZXNwYWNlID0gXCJzYXAuZmUuY29yZS5jb250cm9sbGVyZXh0ZW5zaW9uc1wiO1xuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGNsYXNzZXMgcHJvdmlkZWQgYnkgU0FQIEZpb3JpIGVsZW1lbnRzIGZvciB0aGUgRmxleGlibGUgUHJvZ3JhbW1pbmcgTW9kZWxcbiAqIEBuYW1lc3BhY2VcbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGNvbnN0IGZlRnBtTmFtZXNwYWNlID0gXCJzYXAuZmUuY29yZS5mcG1cIjtcblxuY29uc3QgdGhpc0xpYiA9IExpYnJhcnkuaW5pdCh7XG5cdG5hbWU6IFwic2FwLmZlLmNvcmVcIixcblx0YXBpVmVyc2lvbjogMixcblx0ZGVwZW5kZW5jaWVzOiBbXCJzYXAudWkuY29yZVwiLCBcInNhcC5mZS5iYXNlXCIsIFwic2FwLmZlLm5hdmlnYXRpb25cIiwgXCJzYXAuZmUucGxhY2Vob2xkZXJcIiwgXCJzYXAuZlwiXSxcblx0dHlwZXM6IFtcInNhcC5mZS5jb3JlLkNyZWF0aW9uTW9kZVwiLCBcInNhcC5mZS5jb3JlLlZhcmlhbnRNYW5hZ2VtZW50XCJdLFxuXHRpbnRlcmZhY2VzOiBbXSxcblx0Y29udHJvbHM6IFtdLFxuXHRlbGVtZW50czogW10sXG5cdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby10ZW1wbGF0ZS1jdXJseS1pbi1zdHJpbmdcblx0dmVyc2lvbjogXCIke3ZlcnNpb259XCIsXG5cdG5vTGlicmFyeUNTUzogdHJ1ZSxcblx0ZXh0ZW5zaW9uczoge1xuXHRcdC8vQ29uZmlndXJhdGlvbiB1c2VkIGZvciBydWxlIGxvYWRpbmcgb2YgU3VwcG9ydCBBc3Npc3RhbnRcblx0XHRcInNhcC51aS5zdXBwb3J0XCI6IHtcblx0XHRcdHB1YmxpY1J1bGVzOiB0cnVlLFxuXHRcdFx0aW50ZXJuYWxSdWxlczogdHJ1ZVxuXHRcdH1cblx0fVxuXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxufSkgYXMgYW55O1xuXG4vKipcbiAqIEF2YWlsYWJsZSB2YWx1ZXMgZm9yIGludm9jYXRpb24gZ3JvdXBpbmcuXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKi9cbnRoaXNMaWIuSW52b2NhdGlvbkdyb3VwaW5nID0ge1xuXHQvKipcblx0ICogSXNvbGF0ZWQuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRJc29sYXRlZDogXCJJc29sYXRlZFwiLFxuXHQvKipcblx0ICogQ2hhbmdlU2V0LlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Q2hhbmdlU2V0OiBcIkNoYW5nZVNldFwiXG59O1xuLyoqXG4gKiBBdmFpbGFibGUgdmFsdWVzIGZvciBjcmVhdGlvbiBtb2RlLlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICovXG50aGlzTGliLkNyZWF0aW9uTW9kZSA9IHtcblx0LyoqXG5cdCAqIE5ldyBQYWdlLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0TmV3UGFnZTogXCJOZXdQYWdlXCIsXG5cdC8qKlxuXHQgKiBTeW5jLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0U3luYzogXCJTeW5jXCIsXG5cdC8qKlxuXHQgKiBBc3luYy5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEFzeW5jOiBcIkFzeW5jXCIsXG5cdC8qKlxuXHQgKiBEZWZlcnJlZC5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdERlZmVycmVkOiBcIkRlZmVycmVkXCIsXG5cdC8qKlxuXHQgKiBJbmxpbmUuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRJbmxpbmU6IFwiSW5saW5lXCIsXG5cdC8qKlxuXHQgKiBDcmVhdGlvbiByb3cuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRDcmVhdGlvblJvdzogXCJDcmVhdGlvblJvd1wiLFxuXHQvKipcblx0ICogSW5saW5lIGNyZWF0aW9uIHJvd3MuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRJbmxpbmVDcmVhdGlvblJvd3M6IFwiSW5saW5lQ3JlYXRpb25Sb3dzXCIsXG5cdC8qKlxuXHQgKiBFeHRlcm5hbCAoYnkgb3V0Ym91bmQgbmF2aWdhdGlvbikuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRFeHRlcm5hbDogXCJFeHRlcm5hbFwiLFxuXHQvKipcblx0ICogQ3JlYXRpb24gZGlhbG9nLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Q3JlYXRpb25EaWFsb2c6IFwiQ3JlYXRpb25EaWFsb2dcIlxufTtcblxuRGF0YVR5cGUucmVnaXN0ZXJFbnVtKFwic2FwLmZlLmNvcmUuQ3JlYXRpb25Nb2RlXCIsIHRoaXNMaWIuQ3JlYXRpb25Nb2RlKTtcbi8qKlxuICogQXZhaWxhYmxlIHZhbHVlcyBmb3IgVmFyaWFudCBNYW5hZ2VtZW50LlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICovXG50aGlzTGliLlZhcmlhbnRNYW5hZ2VtZW50ID0ge1xuXHQvKipcblx0ICogTm8gdmFyaWFudCBtYW5hZ2VtZW50IGF0IGFsbC5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdE5vbmU6IFwiTm9uZVwiLFxuXG5cdC8qKlxuXHQgKiBPbmUgdmFyaWFudCBjb25maWd1cmF0aW9uIGZvciB0aGUgd2hvbGUgcGFnZS5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdFBhZ2U6IFwiUGFnZVwiLFxuXG5cdC8qKlxuXHQgKiBWYXJpYW50IG1hbmFnZW1lbnQgb24gY29udHJvbCBsZXZlbC5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdENvbnRyb2w6IFwiQ29udHJvbFwiXG59O1xuRGF0YVR5cGUucmVnaXN0ZXJFbnVtKFwic2FwLmZlLmNvcmUuVmFyaWFudE1hbmFnZW1lbnRcIiwgdGhpc0xpYi5WYXJpYW50TWFuYWdlbWVudCk7XG4vKipcbiAqIEF2YWlsYWJsZSBjb25zdGFudHMuXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKi9cbnRoaXNMaWIuQ29uc3RhbnRzID0ge1xuXHQvKlxuXHQgKiBJbmRpY2F0ZXMgY2FuY2VsbGluZyBvZiBhbiBhY3Rpb24gZGlhbG9nLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Q2FuY2VsQWN0aW9uRGlhbG9nOiBcImNhbmNlbFwiLFxuXHQvKlxuXHQgKiBJbmRpY2F0ZXMgY2FuY2VsbGluZyB0aGUgZGlzY2FyZCBkcmFmdC5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdENhbmNlbERpc2NhcmREcmFmdDogXCJjYW5jZWxEaXNjYXJkRHJhZnRcIixcblx0Lypcblx0ICogSW5kaWNhdGVzIGZhaWx1cmUgcmV0dXJuZWQgZnJvbSBiYWNrZW5kIGR1cmluZyB0aGUgZXhlY3V0aW9uIG9mIGFuIGFjdGlvblxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QWN0aW9uRXhlY3V0aW9uRmFpbGVkOiBcImFjdGlvbkV4ZWN1dGlvbkZhaWxlZFwiLFxuXHQvKlxuXHQgKiBJbmRpY2F0ZXMgZmFpbHVyZSByZXR1cm5lZCBmcm9tIGJhY2tlbmQgZHVyaW5nIGNyZWF0aW9uIG9mIGEgYnVzaW5lc3Mgb2JqZWN0ICh2aWEgZGlyZWN0IFBPU1QpXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRDcmVhdGlvbkZhaWxlZDogXCJjcmVhdGlvbkZhaWxlZFwiLFxuXHQvKlxuXHQgKiBJbmRpY2F0ZXMgZmFpbHVyZSByZXR1cm5lZCBmcm9tIG9uQmVmb3JlQ3JlYXRlIEVkaXQgRmxvdyBob29rIGNhbGxlZCBiZWZvcmUgY3JlYXRpb24gb2YgYSBidXNpbmVzcyBvYmplY3Rcblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdE9uQmVmb3JlQ3JlYXRlRmFpbGVkOiBcIm9uQmVmb3JlQ3JlYXRlRmFpbGVkXCJcbn07XG4vKipcbiAqIEF2YWlsYWJsZSB2YWx1ZXMgZm9yIHByb2dyYW1taW5nIG1vZGVsLlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICovXG50aGlzTGliLlByb2dyYW1taW5nTW9kZWwgPSB7XG5cdC8qXG5cdCAqIERyYWZ0LlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0RHJhZnQ6IFwiRHJhZnRcIixcblx0LyoqXG5cdCAqIFN0aWNreS5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdFN0aWNreTogXCJTdGlja3lcIixcblx0LyoqXG5cdCAqIE5vbkRyYWZ0LlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Tm9uRHJhZnQ6IFwiTm9uRHJhZnRcIlxufTtcbi8qKlxuICogQXZhaWxhYmxlIHZhbHVlcyBmb3IgZHJhZnQgc3RhdHVzLlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICovXG50aGlzTGliLkRyYWZ0U3RhdHVzID0ge1xuXHQvKipcblx0ICogU2F2aW5nLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0U2F2aW5nOiBcIlNhdmluZ1wiLFxuXHQvKipcblx0ICogU2F2ZWQuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRTYXZlZDogXCJTYXZlZFwiLFxuXHQvKipcblx0ICogQ2xlYXIuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRDbGVhcjogXCJDbGVhclwiXG59O1xuLyoqXG4gKiBFZGl0IG1vZGUgdmFsdWVzLlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICovXG50aGlzTGliLkVkaXRNb2RlID0ge1xuXHQvKipcblx0ICogVmlldyBpcyBjdXJyZW50bHkgZGlzcGxheWluZyBvbmx5LlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0RGlzcGxheTogXCJEaXNwbGF5XCIsXG5cdC8qKlxuXHQgKiBWaWV3IGlzIGN1cnJlbnRseSBlZGl0YWJsZS5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEVkaXRhYmxlOiBcIkVkaXRhYmxlXCJcbn07XG4vKipcbiAqIFRlbXBsYXRlIHZpZXdzLlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICovXG50aGlzTGliLlRlbXBsYXRlQ29udGVudFZpZXcgPSB7XG5cdC8qKlxuXHQgKiBIeWJyaWQuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0SHlicmlkOiBcIkh5YnJpZFwiLFxuXHQvKipcblx0ICogQ2hhcnQuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0Q2hhcnQ6IFwiQ2hhcnRcIixcblx0LyoqXG5cdCAqIFRhYmxlLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICovXG5cdFRhYmxlOiBcIlRhYmxlXCJcbn07XG4vKipcbiAqIFBvc3NpYmxlIGluaXRpYWwgbG9hZCAoZmlyc3QgYXBwIHN0YXJ0dXApIG1vZGVzIGZvciBhIExpc3RSZXBvcnQuXG4gKiBAZW51bSB7c3RyaW5nfVxuICogQHJlYWRvbmx5XG4gKiBAcHVibGljXG4gKiBAc2luY2UgMS44Ni4wXG4gKi9cbmV4cG9ydCBlbnVtIEluaXRpYWxMb2FkTW9kZSB7XG5cdC8qKlxuXHQgKiBEYXRhIHdpbGwgYmUgbG9hZGVkIGluaXRpYWxseS5cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0RW5hYmxlZCA9IFwiRW5hYmxlZFwiLFxuXG5cdC8qKlxuXHQgKiBEYXRhIHdpbGwgbm90IGJlIGxvYWRlZCBpbml0aWFsbHkuXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdERpc2FibGVkID0gXCJEaXNhYmxlZFwiLFxuXG5cdC8qKlxuXHQgKiBEYXRhIHdpbGwgYmUgbG9hZGVkIGluaXRpYWxseSBpZiBmaWx0ZXJzIGFyZSBzZXQuXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEF1dG8gPSBcIkF1dG9cIlxufVxudGhpc0xpYi5Jbml0aWFsTG9hZE1vZGUgPSBJbml0aWFsTG9hZE1vZGU7XG5cbi8qKlxuICogVmFsdWUgb2YgdGhlIHN0YXJ0dXAgbW9kZVxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICovXG50aGlzTGliLlN0YXJ0dXBNb2RlID0ge1xuXHQvKipcblx0ICogQXBwIGhhcyBiZWVuIHN0YXJ0ZWQgbm9ybWFsbHkuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0Tm9ybWFsOiBcIk5vcm1hbFwiLFxuXHQvKipcblx0ICogQXBwIGhhcyBiZWVuIHN0YXJ0ZWQgd2l0aCBzdGFydHVwIGtleXMgKGRlZXBsaW5rKS5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqL1xuXHREZWVwbGluazogXCJEZWVwbGlua1wiLFxuXHQvKipcblx0ICogQXBwIGhhcyBiZWVuIHN0YXJ0ZWQgaW4gJ2NyZWF0ZScgbW9kZS5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqL1xuXHRDcmVhdGU6IFwiQ3JlYXRlXCIsXG5cdC8qKlxuXHQgKiBBcHAgaGFzIGJlZW4gc3RhcnRlZCBpbiAnYXV0byBjcmVhdGUnIG1vZGUgd2hpY2ggbWVhbnMgdG8gc2tpcCBhbnkgZGlhbG9ncyBvbiBzdGFydHVwXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0QXV0b0NyZWF0ZTogXCJBdXRvQ3JlYXRlXCJcbn07XG5cbi8qKlxuICogUG9zc2libGUgbmF2aWdhdGlvbiBtb2RlcyBmb3IgYSBwYWdpbmF0aW9uLlxuICogQGVudW0ge3N0cmluZ31cbiAqIEByZWFkb25seVxuICogQHB1YmxpY1xuICogQHNpbmNlIDEuMTM4LjBcbiAqL1xuXG5leHBvcnQgZW51bSBDb250ZXh0TmF2aWdhdGlvblR5cGUge1xuXHQvKipcblx0ICogSW5kaWNhdGVzIHRoYXQgdGhlcmUgaXMgbm8gbmF2aWdhdGlvbi5cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Tm9uZSA9IFwiTm9uZVwiLFxuXG5cdC8qKlxuXHQgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgbmF2aWdhdGlvbiBpcyB0byBhIHN1Ym9iamVjdCBwYWdlIHdpdGhpbiB0aGUgc2FtZSBhcHBsaWNhdGlvbi5cblx0ICogIEBwdWJsaWNcblx0ICovXG5cdEludGVybmFsID0gXCJJbnRlcm5hbFwiLFxuXG5cdC8qKlxuXHQgKiBJbmRpY2F0ZXMgdGhhdCB0aGUgbmF2aWdhdGlvbiBpcyB0byBhbiBleHRlcm5hbCBhcHBsaWNhdGlvbi5cblx0ICogIEBwdWJsaWNcblx0ICovXG5cdEV4dGVybmFsID0gXCJFeHRlcm5hbFwiXG59XG5cbnRoaXNMaWIuQ29udGV4dE5hdmlnYXRpb25UeXBlID0gQ29udGV4dE5hdmlnYXRpb25UeXBlO1xuXG4vLyBleHBsaWNpdCB0eXBlIHRvIGhhbmRsZSBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IHdpdGggYm9vbGVhbiB2YWx1ZXNcbmNvbnN0IEluaXRpYWxMb2FkVHlwZSA9IERhdGFUeXBlLmNyZWF0ZVR5cGUoXCJzYXAuZmUuY29yZS5Jbml0aWFsTG9hZE1vZGVcIiwge1xuXHRkZWZhdWx0VmFsdWU6IHRoaXNMaWIuSW5pdGlhbExvYWRNb2RlLkF1dG8sXG5cdGlzVmFsaWQ6IGZ1bmN0aW9uICh2VmFsdWU6IHN0cmluZyB8IGJvb2xlYW4gfCB1bmRlZmluZWQpIHtcblx0XHRpZiAodHlwZW9mIHZWYWx1ZSA9PT0gXCJib29sZWFuXCIpIHtcblx0XHRcdExvZy53YXJuaW5nKFxuXHRcdFx0XHRcIkRFUFJFQ0FURUQ6IGJvb2xlYW4gdmFsdWUgbm90IGFsbG93ZWQgZm9yICdpbml0aWFsTG9hZCcgbWFuaWZlc3Qgc2V0dGluZyAtIHN1cHBvcnRlZCB2YWx1ZXMgYXJlOiBEaXNhYmxlZHxFbmFibGVkfEF1dG9cIlxuXHRcdFx0KTtcblx0XHR9XG5cdFx0cmV0dXJuIHZWYWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZWYWx1ZSA9PT0gbnVsbCB8fCB0eXBlb2YgdlZhbHVlID09PSBcImJvb2xlYW5cIiB8fCB0aGlzTGliLkluaXRpYWxMb2FkTW9kZS5oYXNPd25Qcm9wZXJ0eSh2VmFsdWUpO1xuXHR9XG59KTtcbi8vIG5vcm1hbGl6ZSBhIHZhbHVlLCB0YWtpbmcgY2FyZSBvZiBib29sZWFuIHR5cGVcbkluaXRpYWxMb2FkVHlwZS5zZXROb3JtYWxpemVyKGZ1bmN0aW9uICh2VmFsdWU6IHN0cmluZyB8IGJvb2xlYW4gfCB1bmRlZmluZWQpIHtcblx0aWYgKCF2VmFsdWUpIHtcblx0XHQvLyB1bmRlZmluZWQsIG51bGwgb3IgZmFsc2Vcblx0XHRyZXR1cm4gdGhpc0xpYi5Jbml0aWFsTG9hZE1vZGUuRGlzYWJsZWQ7XG5cdH1cblx0cmV0dXJuIHZWYWx1ZSA9PT0gdHJ1ZSA/IHRoaXNMaWIuSW5pdGlhbExvYWRNb2RlLkVuYWJsZWQgOiB2VmFsdWU7XG59KTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5UZW1wbGF0ZWRWaWV3U2VydmljZVwiLCBuZXcgVGVtcGxhdGVkVmlld1NlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlJlc291cmNlTW9kZWxTZXJ2aWNlXCIsIG5ldyBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuQ2FjaGVIYW5kbGVyU2VydmljZVwiLCBuZXcgQ2FjaGVIYW5kbGVyU2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuQ29sbGFib3JhdGlvbk1hbmFnZXJTZXJ2aWNlXCIsIG5ldyBDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlZpZXdQcmVsb2FkZXJTZXJ2aWNlXCIsIG5ldyBWaWV3UHJlbG9hZGVyU2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuTmF2aWdhdGlvblNlcnZpY2VcIiwgbmV3IE5hdmlnYXRpb25TZXJ2aWNlKCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlJvdXRpbmdTZXJ2aWNlXCIsIG5ldyBSb3V0aW5nU2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuU2lkZUVmZmVjdHNTZXJ2aWNlXCIsIG5ldyBTaWRlRWZmZWN0c1NlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlNoZWxsU2VydmljZXNcIiwgbmV3IFNoZWxsU2VydmljZXNGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLkVudmlyb25tZW50U2VydmljZVwiLCBuZXcgRW52aXJvbm1lbnRTZXJ2aWNlRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5Bc3luY0NvbXBvbmVudFNlcnZpY2VcIiwgbmV3IEFzeW5jQ29tcG9uZW50U2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuQ29sbGFib3JhdGl2ZVRvb2xzU2VydmljZVwiLCBuZXcgQ29sbGFib3JhdGl2ZVRvb2xzU2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuVGVsZW1ldHJ5U2VydmljZVwiLCBuZXcgVGVsZW1ldHJ5U2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuVmFsdWVIZWxwSGlzdG9yeVNlcnZpY2VcIiwgbmV3IFZhbHVlSGVscEhpc3RvcnlTZXJ2aWNlRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5Db2xsYWJvcmF0aXZlRHJhZnRTZXJ2aWNlXCIsIG5ldyBDb2xsYWJvcmF0aXZlRHJhZnRTZXJ2aWNlRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5Db250ZXh0U2hhcmluZ1NlcnZpY2VcIiwgbmV3IENvbnRleHRTaGFyaW5nU2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuSW5saW5lRWRpdFNlcnZpY2VcIiwgbmV3IElubGluZUVkaXRTZXJ2aWNlRmFjdG9yeSgpKTtcblxuZXhwb3J0IHR5cGUgQ29yZUxpYiA9IHtcblx0SW52b2NhdGlvbkdyb3VwaW5nOiB7XG5cdFx0Q2hhbmdlU2V0OiBcIkNoYW5nZVNldFwiO1xuXHRcdElzb2xhdGVkOiBcIklzb2xhdGVkXCI7XG5cdH07XG59O1xuZXhwb3J0IGRlZmF1bHQgdGhpc0xpYjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7RUFxQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUNPLE1BQU1BLFdBQVcsR0FBRyxRQUFRO0VBQ25DO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFKQUMsUUFBQSxDQUFBRCxXQUFBLEdBQUFBLFdBQUE7RUFLTyxNQUFNRSxlQUFlLEdBQUcsYUFBYTtFQUM1QztBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBSkFELFFBQUEsQ0FBQUMsZUFBQSxHQUFBQSxlQUFBO0VBS08sTUFBTUMsZUFBZSxHQUFHLGtDQUFrQztFQUNqRTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBSkFGLFFBQUEsQ0FBQUUsZUFBQSxH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
|
|
484
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJmZU5hbWVzcGFjZSIsIl9leHBvcnRzIiwiZmVDb3JlTmFtZXNwYWNlIiwiZmVDZXh0TmFtZXNwYWNlIiwiZmVGcG1OYW1lc3BhY2UiLCJ0aGlzTGliIiwiTGlicmFyeSIsImluaXQiLCJuYW1lIiwiYXBpVmVyc2lvbiIsImRlcGVuZGVuY2llcyIsInR5cGVzIiwiaW50ZXJmYWNlcyIsImNvbnRyb2xzIiwiZWxlbWVudHMiLCJ2ZXJzaW9uIiwibm9MaWJyYXJ5Q1NTIiwiZXh0ZW5zaW9ucyIsInB1YmxpY1J1bGVzIiwiaW50ZXJuYWxSdWxlcyIsIkludm9jYXRpb25Hcm91cGluZyIsIklzb2xhdGVkIiwiQ2hhbmdlU2V0IiwiQ3JlYXRpb25Nb2RlIiwiTmV3UGFnZSIsIlN5bmMiLCJBc3luYyIsIkRlZmVycmVkIiwiSW5saW5lIiwiQ3JlYXRpb25Sb3ciLCJJbmxpbmVDcmVhdGlvblJvd3MiLCJFeHRlcm5hbCIsIkNyZWF0aW9uRGlhbG9nIiwiRGF0YVR5cGUiLCJyZWdpc3RlckVudW0iLCJWYXJpYW50TWFuYWdlbWVudCIsIk5vbmUiLCJQYWdlIiwiQ29udHJvbCIsIkNvbnN0YW50cyIsIkNhbmNlbEFjdGlvbkRpYWxvZyIsIkNhbmNlbERpc2NhcmREcmFmdCIsIkFjdGlvbkV4ZWN1dGlvbkZhaWxlZCIsIkNyZWF0aW9uRmFpbGVkIiwiT25CZWZvcmVDcmVhdGVGYWlsZWQiLCJQcmVmZXJyZWRBY3Rpb25TdGF0dXNUeXBlIiwiTm90U2V0IiwiQ2FuUGVyZm9ybSIsIkFscmVhZHlQZXJmb3JtZWQiLCJQcm9ncmFtbWluZ01vZGVsIiwiRHJhZnQiLCJTdGlja3kiLCJOb25EcmFmdCIsIkRyYWZ0U3RhdHVzIiwiU2F2aW5nIiwiU2F2ZWQiLCJDbGVhciIsIkVkaXRNb2RlIiwiRGlzcGxheSIsIkVkaXRhYmxlIiwiVGVtcGxhdGVDb250ZW50VmlldyIsIkh5YnJpZCIsIkNoYXJ0IiwiVGFibGUiLCJJbml0aWFsTG9hZE1vZGUiLCJTdGFydHVwTW9kZSIsIk5vcm1hbCIsIkRlZXBsaW5rIiwiQ3JlYXRlIiwiQXV0b0NyZWF0ZSIsIkNvbnRleHROYXZpZ2F0aW9uVHlwZSIsIkluaXRpYWxMb2FkVHlwZSIsImNyZWF0ZVR5cGUiLCJkZWZhdWx0VmFsdWUiLCJBdXRvIiwiaXNWYWxpZCIsInZWYWx1ZSIsIkxvZyIsIndhcm5pbmciLCJ1bmRlZmluZWQiLCJoYXNPd25Qcm9wZXJ0eSIsInNldE5vcm1hbGl6ZXIiLCJEaXNhYmxlZCIsIkVuYWJsZWQiLCJTZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5IiwicmVnaXN0ZXIiLCJUZW1wbGF0ZWRWaWV3U2VydmljZUZhY3RvcnkiLCJSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkiLCJDYWNoZUhhbmRsZXJTZXJ2aWNlRmFjdG9yeSIsIkNvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZUZhY3RvcnkiLCJWaWV3UHJlbG9hZGVyU2VydmljZUZhY3RvcnkiLCJOYXZpZ2F0aW9uU2VydmljZSIsIlJvdXRpbmdTZXJ2aWNlRmFjdG9yeSIsIlNpZGVFZmZlY3RzU2VydmljZUZhY3RvcnkiLCJTaGVsbFNlcnZpY2VzRmFjdG9yeSIsIkVudmlyb25tZW50U2VydmljZUZhY3RvcnkiLCJBc3luY0NvbXBvbmVudFNlcnZpY2VGYWN0b3J5IiwiQ29sbGFib3JhdGl2ZVRvb2xzU2VydmljZUZhY3RvcnkiLCJUZWxlbWV0cnlTZXJ2aWNlRmFjdG9yeSIsIlZhbHVlSGVscEhpc3RvcnlTZXJ2aWNlRmFjdG9yeSIsIkNvbGxhYm9yYXRpdmVEcmFmdFNlcnZpY2VGYWN0b3J5IiwiQ29udGV4dFNoYXJpbmdTZXJ2aWNlRmFjdG9yeSIsIklubGluZUVkaXRTZXJ2aWNlRmFjdG9yeSJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsibGlicmFyeS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCBcInNhcC9mZS9jb3JlL2Zvcm1hdHRlcnMvQ3JpdGljYWxpdHlGb3JtYXR0ZXJcIjtcbmltcG9ydCBcInNhcC9mZS9jb3JlL2Zvcm1hdHRlcnMvRlBNRm9ybWF0dGVyXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS9mb3JtYXR0ZXJzL1Njb3BlXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS9mb3JtYXR0ZXJzL1N0YW5kYXJkRm9ybWF0dGVyXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS9mb3JtYXR0ZXJzL1ZhbHVlRm9ybWF0dGVyXCI7XG5cbmltcG9ydCBcInNhcC9mZS9iYXNlL2xpYnJhcnlcIjtcbmltcG9ydCBBc3luY0NvbXBvbmVudFNlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9Bc3luY0NvbXBvbmVudFNlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgQ2FjaGVIYW5kbGVyU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0NhY2hlSGFuZGxlclNlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgQ29sbGFib3JhdGl2ZVRvb2xzU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0NvbGxhYm9yYXRpdmVUb29sc1NlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgeyBFbnZpcm9ubWVudFNlcnZpY2VGYWN0b3J5IH0gZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0Vudmlyb25tZW50U2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBJbmxpbmVFZGl0U2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL0lubGluZUVkaXRTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IE5hdmlnYXRpb25TZXJ2aWNlIGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9OYXZpZ2F0aW9uU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCBSZXNvdXJjZU1vZGVsU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL1Jlc291cmNlTW9kZWxTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFJvdXRpbmdTZXJ2aWNlRmFjdG9yeSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvUm91dGluZ1NlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgU2hlbGxTZXJ2aWNlc0ZhY3RvcnkgZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL1NoZWxsU2VydmljZXNGYWN0b3J5XCI7XG5pbXBvcnQgU2lkZUVmZmVjdHNTZXJ2aWNlRmFjdG9yeSBmcm9tIFwic2FwL2ZlL2NvcmUvc2VydmljZXMvU2lkZUVmZmVjdHNTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFRlbGVtZXRyeVNlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvZmUvY29yZS9zZXJ2aWNlcy9UZWxlbWV0cnlTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IHsgVGVtcGxhdGVkVmlld1NlcnZpY2VGYWN0b3J5IH0gZnJvbSBcInNhcC9mZS9jb3JlL3NlcnZpY2VzL1RlbXBsYXRlZFZpZXdTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFwic2FwL2ZlL2NvcmUvdHlwZS9EYXRlXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS90eXBlL0RhdGVUaW1lV2l0aFRpbWV6b25lXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS90eXBlL0VtYWlsXCI7XG5pbXBvcnQgXCJzYXAvZmUvY29yZS90eXBlL0Zpc2NhbERhdGVcIjtcbmltcG9ydCBcInNhcC9mZS9jb3JlL3R5cGUvSW5wdXRNYXNrXCI7XG5pbXBvcnQgXCJzYXAvZmUvbmF2aWdhdGlvbi9saWJyYXJ5XCI7XG5pbXBvcnQgXCJzYXAvZmUvcGxhY2Vob2xkZXIvbGlicmFyeVwiO1xuaW1wb3J0IERhdGFUeXBlIGZyb20gXCJzYXAvdWkvYmFzZS9EYXRhVHlwZVwiO1xuaW1wb3J0IExpYnJhcnkgZnJvbSBcInNhcC91aS9jb3JlL0xpYlwiO1xuaW1wb3J0IFwic2FwL3VpL2NvcmUvbGlicmFyeVwiO1xuaW1wb3J0IFNlcnZpY2VGYWN0b3J5UmVnaXN0cnkgZnJvbSBcInNhcC91aS9jb3JlL3NlcnZpY2UvU2VydmljZUZhY3RvcnlSZWdpc3RyeVwiO1xuaW1wb3J0IENvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZUZhY3RvcnkgZnJvbSBcIi4vc2VydmljZXMvQ29sbGFib3JhdGlvbk1hbmFnZXJTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IENvbnRleHRTaGFyaW5nU2VydmljZUZhY3RvcnkgZnJvbSBcIi4vc2VydmljZXMvQ29udGV4dFNoYXJpbmdTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IFZhbHVlSGVscEhpc3RvcnlTZXJ2aWNlRmFjdG9yeSBmcm9tIFwiLi9zZXJ2aWNlcy9WYWx1ZUhlbHBIaXN0b3J5U2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCB7IFZpZXdQcmVsb2FkZXJTZXJ2aWNlRmFjdG9yeSB9IGZyb20gXCIuL3NlcnZpY2VzL1ZpZXdQcmVsb2FkZXJTZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IENvbGxhYm9yYXRpdmVEcmFmdFNlcnZpY2VGYWN0b3J5IGZyb20gXCIuL3NlcnZpY2VzL2NvbGxhYm9yYXRpdmVEcmFmdFNlcnZpY2VGYWN0b3J5XCI7XG5cbi8qKlxuICogUm9vdCBuYW1lc3BhY2UgZm9yIGFsbCB0aGUgbGlicmFyaWVzIHJlbGF0ZWQgdG8gU0FQIEZpb3JpIGVsZW1lbnRzLlxuICogQG5hbWVzcGFjZVxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgZmVOYW1lc3BhY2UgPSBcInNhcC5mZVwiO1xuLyoqXG4gKiBMaWJyYXJ5IHByb3ZpZGluZyB0aGUgY29yZSBmdW5jdGlvbmFsaXR5IG9mIHRoZSBydW50aW1lIGZvciBTQVAgRmlvcmkgZWxlbWVudHMgZm9yIE9EYXRhIFY0LlxuICogQG5hbWVzcGFjZVxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgZmVDb3JlTmFtZXNwYWNlID0gXCJzYXAuZmUuY29yZVwiO1xuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGNvbnRyb2xsZXIgZXh0ZW5zaW9ucyB1c2VkIGludGVybmFsbHkgaW4gU0FQIEZpb3JpIGVsZW1lbnRzIGV4cG9zaW5nIGEgbWV0aG9kIHRoYXQgeW91IGNhbiBvdmVycmlkZSB0byBhbGxvdyBtb3JlIGZsZXhpYmlsaXR5LlxuICogQG5hbWVzcGFjZVxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgZmVDZXh0TmFtZXNwYWNlID0gXCJzYXAuZmUuY29yZS5jb250cm9sbGVyZXh0ZW5zaW9uc1wiO1xuLyoqXG4gKiBDb2xsZWN0aW9uIG9mIGNsYXNzZXMgcHJvdmlkZWQgYnkgU0FQIEZpb3JpIGVsZW1lbnRzIGZvciB0aGUgRmxleGlibGUgUHJvZ3JhbW1pbmcgTW9kZWxcbiAqIEBuYW1lc3BhY2VcbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGNvbnN0IGZlRnBtTmFtZXNwYWNlID0gXCJzYXAuZmUuY29yZS5mcG1cIjtcblxuY29uc3QgdGhpc0xpYiA9IExpYnJhcnkuaW5pdCh7XG5cdG5hbWU6IFwic2FwLmZlLmNvcmVcIixcblx0YXBpVmVyc2lvbjogMixcblx0ZGVwZW5kZW5jaWVzOiBbXCJzYXAudWkuY29yZVwiLCBcInNhcC5mZS5iYXNlXCIsIFwic2FwLmZlLm5hdmlnYXRpb25cIiwgXCJzYXAuZmUucGxhY2Vob2xkZXJcIiwgXCJzYXAuZlwiLCBcInNhcC51aS5mbFwiXSxcblx0dHlwZXM6IFtcInNhcC5mZS5jb3JlLkNyZWF0aW9uTW9kZVwiLCBcInNhcC5mZS5jb3JlLlZhcmlhbnRNYW5hZ2VtZW50XCJdLFxuXHRpbnRlcmZhY2VzOiBbXSxcblx0Y29udHJvbHM6IFtdLFxuXHRlbGVtZW50czogW10sXG5cdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby10ZW1wbGF0ZS1jdXJseS1pbi1zdHJpbmdcblx0dmVyc2lvbjogXCIke3ZlcnNpb259XCIsXG5cdG5vTGlicmFyeUNTUzogdHJ1ZSxcblx0ZXh0ZW5zaW9uczoge1xuXHRcdC8vQ29uZmlndXJhdGlvbiB1c2VkIGZvciBydWxlIGxvYWRpbmcgb2YgU3VwcG9ydCBBc3Npc3RhbnRcblx0XHRcInNhcC51aS5zdXBwb3J0XCI6IHtcblx0XHRcdHB1YmxpY1J1bGVzOiB0cnVlLFxuXHRcdFx0aW50ZXJuYWxSdWxlczogdHJ1ZVxuXHRcdH1cblx0fVxuXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWV4cGxpY2l0LWFueVxufSkgYXMgYW55O1xuXG4vKipcbiAqIEF2YWlsYWJsZSB2YWx1ZXMgZm9yIGludm9jYXRpb24gZ3JvdXBpbmcuXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKi9cbnRoaXNMaWIuSW52b2NhdGlvbkdyb3VwaW5nID0ge1xuXHQvKipcblx0ICogSXNvbGF0ZWQuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRJc29sYXRlZDogXCJJc29sYXRlZFwiLFxuXHQvKipcblx0ICogQ2hhbmdlU2V0LlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Q2hhbmdlU2V0OiBcIkNoYW5nZVNldFwiXG59O1xuLyoqXG4gKiBBdmFpbGFibGUgdmFsdWVzIGZvciBjcmVhdGlvbiBtb2RlLlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICovXG50aGlzTGliLkNyZWF0aW9uTW9kZSA9IHtcblx0LyoqXG5cdCAqIE5ldyBQYWdlLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0TmV3UGFnZTogXCJOZXdQYWdlXCIsXG5cdC8qKlxuXHQgKiBTeW5jLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0U3luYzogXCJTeW5jXCIsXG5cdC8qKlxuXHQgKiBBc3luYy5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEFzeW5jOiBcIkFzeW5jXCIsXG5cdC8qKlxuXHQgKiBEZWZlcnJlZC5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdERlZmVycmVkOiBcIkRlZmVycmVkXCIsXG5cdC8qKlxuXHQgKiBJbmxpbmUuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRJbmxpbmU6IFwiSW5saW5lXCIsXG5cdC8qKlxuXHQgKiBDcmVhdGlvbiByb3cuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRDcmVhdGlvblJvdzogXCJDcmVhdGlvblJvd1wiLFxuXHQvKipcblx0ICogSW5saW5lIGNyZWF0aW9uIHJvd3MuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRJbmxpbmVDcmVhdGlvblJvd3M6IFwiSW5saW5lQ3JlYXRpb25Sb3dzXCIsXG5cdC8qKlxuXHQgKiBFeHRlcm5hbCAoYnkgb3V0Ym91bmQgbmF2aWdhdGlvbikuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRFeHRlcm5hbDogXCJFeHRlcm5hbFwiLFxuXHQvKipcblx0ICogQ3JlYXRpb24gZGlhbG9nLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Q3JlYXRpb25EaWFsb2c6IFwiQ3JlYXRpb25EaWFsb2dcIlxufTtcblxuRGF0YVR5cGUucmVnaXN0ZXJFbnVtKFwic2FwLmZlLmNvcmUuQ3JlYXRpb25Nb2RlXCIsIHRoaXNMaWIuQ3JlYXRpb25Nb2RlKTtcbi8qKlxuICogQXZhaWxhYmxlIHZhbHVlcyBmb3IgVmFyaWFudCBNYW5hZ2VtZW50LlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICovXG50aGlzTGliLlZhcmlhbnRNYW5hZ2VtZW50ID0ge1xuXHQvKipcblx0ICogTm8gdmFyaWFudCBtYW5hZ2VtZW50IGF0IGFsbC5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdE5vbmU6IFwiTm9uZVwiLFxuXG5cdC8qKlxuXHQgKiBPbmUgdmFyaWFudCBjb25maWd1cmF0aW9uIGZvciB0aGUgd2hvbGUgcGFnZS5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdFBhZ2U6IFwiUGFnZVwiLFxuXG5cdC8qKlxuXHQgKiBWYXJpYW50IG1hbmFnZW1lbnQgb24gY29udHJvbCBsZXZlbC5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdENvbnRyb2w6IFwiQ29udHJvbFwiXG59O1xuRGF0YVR5cGUucmVnaXN0ZXJFbnVtKFwic2FwLmZlLmNvcmUuVmFyaWFudE1hbmFnZW1lbnRcIiwgdGhpc0xpYi5WYXJpYW50TWFuYWdlbWVudCk7XG4vKipcbiAqIEF2YWlsYWJsZSBjb25zdGFudHMuXG4gKiBAcmVhZG9ubHlcbiAqIEBlbnVtIHtzdHJpbmd9XG4gKi9cbnRoaXNMaWIuQ29uc3RhbnRzID0ge1xuXHQvKlxuXHQgKiBJbmRpY2F0ZXMgY2FuY2VsbGluZyBvZiBhbiBhY3Rpb24gZGlhbG9nLlxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Q2FuY2VsQWN0aW9uRGlhbG9nOiBcImNhbmNlbFwiLFxuXHQvKlxuXHQgKiBJbmRpY2F0ZXMgY2FuY2VsbGluZyB0aGUgZGlzY2FyZCBkcmFmdC5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdENhbmNlbERpc2NhcmREcmFmdDogXCJjYW5jZWxEaXNjYXJkRHJhZnRcIixcblx0Lypcblx0ICogSW5kaWNhdGVzIGZhaWx1cmUgcmV0dXJuZWQgZnJvbSBiYWNrZW5kIGR1cmluZyB0aGUgZXhlY3V0aW9uIG9mIGFuIGFjdGlvblxuXHQgKlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0QWN0aW9uRXhlY3V0aW9uRmFpbGVkOiBcImFjdGlvbkV4ZWN1dGlvbkZhaWxlZFwiLFxuXHQvKlxuXHQgKiBJbmRpY2F0ZXMgZmFpbHVyZSByZXR1cm5lZCBmcm9tIGJhY2tlbmQgZHVyaW5nIGNyZWF0aW9uIG9mIGEgYnVzaW5lc3Mgb2JqZWN0ICh2aWEgZGlyZWN0IFBPU1QpXG5cdCAqXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRDcmVhdGlvbkZhaWxlZDogXCJjcmVhdGlvbkZhaWxlZFwiLFxuXHQvKlxuXHQgKiBJbmRpY2F0ZXMgZmFpbHVyZSByZXR1cm5lZCBmcm9tIG9uQmVmb3JlQ3JlYXRlIEVkaXQgRmxvdyBob29rIGNhbGxlZCBiZWZvcmUgY3JlYXRpb24gb2YgYSBidXNpbmVzcyBvYmplY3Rcblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdE9uQmVmb3JlQ3JlYXRlRmFpbGVkOiBcIm9uQmVmb3JlQ3JlYXRlRmFpbGVkXCJcbn07XG5cbi8qKlxuICogUHJlZmVycmVkIGFjdGlvbiBzdGF0dXMgdmFsdWVzLlxuICogQHJlYWRvbmx5XG4gKiBAZW51bSB7c3RyaW5nfVxuICovXG50aGlzTGliLlByZWZlcnJlZEFjdGlvblN0YXR1c1R5cGUgPSB7XG5cdC8qKlxuXHQgKiBJbml0aWFsIHN0YXRlLCBubyBwcmVmZXJyZWQgYWN0aW9uIGhhcyBiZWVuIGV2YWx1YXRlZC5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqL1xuXHROb3RTZXQ6IFwibm90U2V0XCIsXG5cdC8qKlxuXHQgKiBQcmVmZXJyZWQgYWN0aW9uIGNhbiBiZSBwZXJmb3JtZWQgKGNvbmRpdGlvbnMgYXJlIG1ldCkuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0Q2FuUGVyZm9ybTogXCJjYW5QZXJmb3JtXCIsXG5cdC8qKlxuXHQgKiBQcmVmZXJyZWQgYWN0aW9uIGhhcyBiZWVuIGV4ZWN1dGVkIGFuZCBzaG91bGQgbm90IGJlIHRyaWdnZXJlZCBhZ2Fpbi5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqL1xuXHRBbHJlYWR5UGVyZm9ybWVkOiBcImFscmVhZHlQZXJmb3JtZWRcIlxufTtcblxuLyoqXG4gKiBBdmFpbGFibGUgdmFsdWVzIGZvciBwcm9ncmFtbWluZyBtb2RlbC5cbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqL1xudGhpc0xpYi5Qcm9ncmFtbWluZ01vZGVsID0ge1xuXHQvKlxuXHQgKiBEcmFmdC5cblx0ICpcblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdERyYWZ0OiBcIkRyYWZ0XCIsXG5cdC8qKlxuXHQgKiBTdGlja3kuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRTdGlja3k6IFwiU3RpY2t5XCIsXG5cdC8qKlxuXHQgKiBOb25EcmFmdC5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdE5vbkRyYWZ0OiBcIk5vbkRyYWZ0XCJcbn07XG4vKipcbiAqIEF2YWlsYWJsZSB2YWx1ZXMgZm9yIGRyYWZ0IHN0YXR1cy5cbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqL1xudGhpc0xpYi5EcmFmdFN0YXR1cyA9IHtcblx0LyoqXG5cdCAqIFNhdmluZy5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdFNhdmluZzogXCJTYXZpbmdcIixcblx0LyoqXG5cdCAqIFNhdmVkLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0U2F2ZWQ6IFwiU2F2ZWRcIixcblx0LyoqXG5cdCAqIENsZWFyLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICogQHB1YmxpY1xuXHQgKi9cblx0Q2xlYXI6IFwiQ2xlYXJcIlxufTtcbi8qKlxuICogRWRpdCBtb2RlIHZhbHVlcy5cbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqL1xudGhpc0xpYi5FZGl0TW9kZSA9IHtcblx0LyoqXG5cdCAqIFZpZXcgaXMgY3VycmVudGx5IGRpc3BsYXlpbmcgb25seS5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdERpc3BsYXk6IFwiRGlzcGxheVwiLFxuXHQvKipcblx0ICogVmlldyBpcyBjdXJyZW50bHkgZWRpdGFibGUuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRFZGl0YWJsZTogXCJFZGl0YWJsZVwiXG59O1xuLyoqXG4gKiBUZW1wbGF0ZSB2aWV3cy5cbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqL1xudGhpc0xpYi5UZW1wbGF0ZUNvbnRlbnRWaWV3ID0ge1xuXHQvKipcblx0ICogSHlicmlkLlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICovXG5cdEh5YnJpZDogXCJIeWJyaWRcIixcblx0LyoqXG5cdCAqIENoYXJ0LlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICovXG5cdENoYXJ0OiBcIkNoYXJ0XCIsXG5cdC8qKlxuXHQgKiBUYWJsZS5cblx0ICogQGNvbnN0YW50XG5cdCAqIEB0eXBlIHtzdHJpbmd9XG5cdCAqL1xuXHRUYWJsZTogXCJUYWJsZVwiXG59O1xuLyoqXG4gKiBQb3NzaWJsZSBpbml0aWFsIGxvYWQgKGZpcnN0IGFwcCBzdGFydHVwKSBtb2RlcyBmb3IgYSBMaXN0UmVwb3J0LlxuICogQGVudW0ge3N0cmluZ31cbiAqIEByZWFkb25seVxuICogQHB1YmxpY1xuICogQHNpbmNlIDEuODYuMFxuICovXG5leHBvcnQgZW51bSBJbml0aWFsTG9hZE1vZGUge1xuXHQvKipcblx0ICogRGF0YSB3aWxsIGJlIGxvYWRlZCBpbml0aWFsbHkuXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdEVuYWJsZWQgPSBcIkVuYWJsZWRcIixcblxuXHQvKipcblx0ICogRGF0YSB3aWxsIG5vdCBiZSBsb2FkZWQgaW5pdGlhbGx5LlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHREaXNhYmxlZCA9IFwiRGlzYWJsZWRcIixcblxuXHQvKipcblx0ICogRGF0YSB3aWxsIGJlIGxvYWRlZCBpbml0aWFsbHkgaWYgZmlsdGVycyBhcmUgc2V0LlxuXHQgKiBAcHVibGljXG5cdCAqL1xuXHRBdXRvID0gXCJBdXRvXCJcbn1cbnRoaXNMaWIuSW5pdGlhbExvYWRNb2RlID0gSW5pdGlhbExvYWRNb2RlO1xuXG4vKipcbiAqIFZhbHVlIG9mIHRoZSBzdGFydHVwIG1vZGVcbiAqIEByZWFkb25seVxuICogQGVudW0ge3N0cmluZ31cbiAqL1xudGhpc0xpYi5TdGFydHVwTW9kZSA9IHtcblx0LyoqXG5cdCAqIEFwcCBoYXMgYmVlbiBzdGFydGVkIG5vcm1hbGx5LlxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICovXG5cdE5vcm1hbDogXCJOb3JtYWxcIixcblx0LyoqXG5cdCAqIEFwcCBoYXMgYmVlbiBzdGFydGVkIHdpdGggc3RhcnR1cCBrZXlzIChkZWVwbGluaykuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0RGVlcGxpbms6IFwiRGVlcGxpbmtcIixcblx0LyoqXG5cdCAqIEFwcCBoYXMgYmVlbiBzdGFydGVkIGluICdjcmVhdGUnIG1vZGUuXG5cdCAqIEBjb25zdGFudFxuXHQgKiBAdHlwZSB7c3RyaW5nfVxuXHQgKi9cblx0Q3JlYXRlOiBcIkNyZWF0ZVwiLFxuXHQvKipcblx0ICogQXBwIGhhcyBiZWVuIHN0YXJ0ZWQgaW4gJ2F1dG8gY3JlYXRlJyBtb2RlIHdoaWNoIG1lYW5zIHRvIHNraXAgYW55IGRpYWxvZ3Mgb24gc3RhcnR1cFxuXHQgKiBAY29uc3RhbnRcblx0ICogQHR5cGUge3N0cmluZ31cblx0ICovXG5cdEF1dG9DcmVhdGU6IFwiQXV0b0NyZWF0ZVwiXG59O1xuXG4vKipcbiAqIFBvc3NpYmxlIG5hdmlnYXRpb24gbW9kZXMgZm9yIGEgcGFnaW5hdGlvbi5cbiAqIEBlbnVtIHtzdHJpbmd9XG4gKiBAcmVhZG9ubHlcbiAqIEBwdWJsaWNcbiAqIEBzaW5jZSAxLjEzOC4wXG4gKi9cblxuZXhwb3J0IGVudW0gQ29udGV4dE5hdmlnYXRpb25UeXBlIHtcblx0LyoqXG5cdCAqIEluZGljYXRlcyB0aGF0IHRoZXJlIGlzIG5vIG5hdmlnYXRpb24uXG5cdCAqIEBwdWJsaWNcblx0ICovXG5cdE5vbmUgPSBcIk5vbmVcIixcblxuXHQvKipcblx0ICogSW5kaWNhdGVzIHRoYXQgdGhlIG5hdmlnYXRpb24gaXMgdG8gYSBzdWJvYmplY3QgcGFnZSB3aXRoaW4gdGhlIHNhbWUgYXBwbGljYXRpb24uXG5cdCAqICBAcHVibGljXG5cdCAqL1xuXHRJbnRlcm5hbCA9IFwiSW50ZXJuYWxcIixcblxuXHQvKipcblx0ICogSW5kaWNhdGVzIHRoYXQgdGhlIG5hdmlnYXRpb24gaXMgdG8gYW4gZXh0ZXJuYWwgYXBwbGljYXRpb24uXG5cdCAqICBAcHVibGljXG5cdCAqL1xuXHRFeHRlcm5hbCA9IFwiRXh0ZXJuYWxcIlxufVxuXG50aGlzTGliLkNvbnRleHROYXZpZ2F0aW9uVHlwZSA9IENvbnRleHROYXZpZ2F0aW9uVHlwZTtcblxuLy8gZXhwbGljaXQgdHlwZSB0byBoYW5kbGUgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aXRoIGJvb2xlYW4gdmFsdWVzXG5jb25zdCBJbml0aWFsTG9hZFR5cGUgPSBEYXRhVHlwZS5jcmVhdGVUeXBlKFwic2FwLmZlLmNvcmUuSW5pdGlhbExvYWRNb2RlXCIsIHtcblx0ZGVmYXVsdFZhbHVlOiB0aGlzTGliLkluaXRpYWxMb2FkTW9kZS5BdXRvLFxuXHRpc1ZhbGlkOiBmdW5jdGlvbiAodlZhbHVlOiBzdHJpbmcgfCBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG5cdFx0aWYgKHR5cGVvZiB2VmFsdWUgPT09IFwiYm9vbGVhblwiKSB7XG5cdFx0XHRMb2cud2FybmluZyhcblx0XHRcdFx0XCJERVBSRUNBVEVEOiBib29sZWFuIHZhbHVlIG5vdCBhbGxvd2VkIGZvciAnaW5pdGlhbExvYWQnIG1hbmlmZXN0IHNldHRpbmcgLSBzdXBwb3J0ZWQgdmFsdWVzIGFyZTogRGlzYWJsZWR8RW5hYmxlZHxBdXRvXCJcblx0XHRcdCk7XG5cdFx0fVxuXHRcdHJldHVybiB2VmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2VmFsdWUgPT09IG51bGwgfHwgdHlwZW9mIHZWYWx1ZSA9PT0gXCJib29sZWFuXCIgfHwgdGhpc0xpYi5Jbml0aWFsTG9hZE1vZGUuaGFzT3duUHJvcGVydHkodlZhbHVlKTtcblx0fVxufSk7XG4vLyBub3JtYWxpemUgYSB2YWx1ZSwgdGFraW5nIGNhcmUgb2YgYm9vbGVhbiB0eXBlXG5Jbml0aWFsTG9hZFR5cGUuc2V0Tm9ybWFsaXplcihmdW5jdGlvbiAodlZhbHVlOiBzdHJpbmcgfCBib29sZWFuIHwgdW5kZWZpbmVkKSB7XG5cdGlmICghdlZhbHVlKSB7XG5cdFx0Ly8gdW5kZWZpbmVkLCBudWxsIG9yIGZhbHNlXG5cdFx0cmV0dXJuIHRoaXNMaWIuSW5pdGlhbExvYWRNb2RlLkRpc2FibGVkO1xuXHR9XG5cdHJldHVybiB2VmFsdWUgPT09IHRydWUgPyB0aGlzTGliLkluaXRpYWxMb2FkTW9kZS5FbmFibGVkIDogdlZhbHVlO1xufSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuVGVtcGxhdGVkVmlld1NlcnZpY2VcIiwgbmV3IFRlbXBsYXRlZFZpZXdTZXJ2aWNlRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5SZXNvdXJjZU1vZGVsU2VydmljZVwiLCBuZXcgUmVzb3VyY2VNb2RlbFNlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLkNhY2hlSGFuZGxlclNlcnZpY2VcIiwgbmV3IENhY2hlSGFuZGxlclNlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLkNvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZVwiLCBuZXcgQ29sbGFib3JhdGlvbk1hbmFnZXJTZXJ2aWNlRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5WaWV3UHJlbG9hZGVyU2VydmljZVwiLCBuZXcgVmlld1ByZWxvYWRlclNlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLk5hdmlnYXRpb25TZXJ2aWNlXCIsIG5ldyBOYXZpZ2F0aW9uU2VydmljZSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5Sb3V0aW5nU2VydmljZVwiLCBuZXcgUm91dGluZ1NlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlNpZGVFZmZlY3RzU2VydmljZVwiLCBuZXcgU2lkZUVmZmVjdHNTZXJ2aWNlRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5TaGVsbFNlcnZpY2VzXCIsIG5ldyBTaGVsbFNlcnZpY2VzRmFjdG9yeSgpKTtcblNlcnZpY2VGYWN0b3J5UmVnaXN0cnkucmVnaXN0ZXIoXCJzYXAuZmUuY29yZS5zZXJ2aWNlcy5FbnZpcm9ubWVudFNlcnZpY2VcIiwgbmV3IEVudmlyb25tZW50U2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuQXN5bmNDb21wb25lbnRTZXJ2aWNlXCIsIG5ldyBBc3luY0NvbXBvbmVudFNlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLkNvbGxhYm9yYXRpdmVUb29sc1NlcnZpY2VcIiwgbmV3IENvbGxhYm9yYXRpdmVUb29sc1NlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlRlbGVtZXRyeVNlcnZpY2VcIiwgbmV3IFRlbGVtZXRyeVNlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLlZhbHVlSGVscEhpc3RvcnlTZXJ2aWNlXCIsIG5ldyBWYWx1ZUhlbHBIaXN0b3J5U2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuQ29sbGFib3JhdGl2ZURyYWZ0U2VydmljZVwiLCBuZXcgQ29sbGFib3JhdGl2ZURyYWZ0U2VydmljZUZhY3RvcnkoKSk7XG5TZXJ2aWNlRmFjdG9yeVJlZ2lzdHJ5LnJlZ2lzdGVyKFwic2FwLmZlLmNvcmUuc2VydmljZXMuQ29udGV4dFNoYXJpbmdTZXJ2aWNlXCIsIG5ldyBDb250ZXh0U2hhcmluZ1NlcnZpY2VGYWN0b3J5KCkpO1xuU2VydmljZUZhY3RvcnlSZWdpc3RyeS5yZWdpc3RlcihcInNhcC5mZS5jb3JlLnNlcnZpY2VzLklubGluZUVkaXRTZXJ2aWNlXCIsIG5ldyBJbmxpbmVFZGl0U2VydmljZUZhY3RvcnkoKSk7XG5cbmV4cG9ydCB0eXBlIENvcmVMaWIgPSB7XG5cdEludm9jYXRpb25Hcm91cGluZzoge1xuXHRcdENoYW5nZVNldDogXCJDaGFuZ2VTZXRcIjtcblx0XHRJc29sYXRlZDogXCJJc29sYXRlZFwiO1xuXHR9O1xufTtcbmV4cG9ydCBkZWZhdWx0IHRoaXNMaWI7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0VBcUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFDTyxNQUFNQSxXQUFXLEdBQUcsUUFBUTtFQUNuQztBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBSkFDLFFBQUEsQ0FBQUQsV0FBQSxHQUFBQSxXQUFBO0VBS08sTUFBTUUsZUFBZSxHQUFHLGFBQWE7RUFDNUM7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUpBRCxRQUFBLENBQUFDLGVBQUEsR0FBQUEsZUFBQTtFQUtPLE1BQU1DLGVBQWUsR0FBRyxrQ0FBa0M7RUFDakU7QUFDQTtBQUNBO0FBQ0E7QUFDQTtFQUpBRixRQUFBLENBQUFFLGVBQUEsR0FBQUEsZUFBQTtFQUtPLE1BQU1DLGNBQWMsR0FBRyxpQkFBaUI7RUFBQ0gsUUFBQSxDQUFBRyxjQUFBLEdBQUFBLGNBQUE7RUFFaEQsTUFBTUMsT0FBTyxHQUFHQyxPQUFPLENBQUNDLElBQUksQ0FBQztJQUM1QkMsSUFBSSxFQUFFLGFBQWE7SUFDbkJDLFVBQVUsRUFBRSxDQUFDO0lBQ2JDLFlBQVksRUFBRSxDQUFDLGFBQWEsRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQUUsb0JBQW9CLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FB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
|
|
@@ -63,7 +63,7 @@ export const feFpmNamespace = "sap.fe.core.fpm";
|
|
|
63
63
|
const thisLib = Library.init({
|
|
64
64
|
name: "sap.fe.core",
|
|
65
65
|
apiVersion: 2,
|
|
66
|
-
dependencies: ["sap.ui.core", "sap.fe.base", "sap.fe.navigation", "sap.fe.placeholder", "sap.f"],
|
|
66
|
+
dependencies: ["sap.ui.core", "sap.fe.base", "sap.fe.navigation", "sap.fe.placeholder", "sap.f", "sap.ui.fl"],
|
|
67
67
|
types: ["sap.fe.core.CreationMode", "sap.fe.core.VariantManagement"],
|
|
68
68
|
interfaces: [],
|
|
69
69
|
controls: [],
|
|
@@ -252,6 +252,33 @@ thisLib.Constants = {
|
|
|
252
252
|
*/
|
|
253
253
|
OnBeforeCreateFailed: "onBeforeCreateFailed"
|
|
254
254
|
};
|
|
255
|
+
|
|
256
|
+
/**
|
|
257
|
+
* Preferred action status values.
|
|
258
|
+
* @readonly
|
|
259
|
+
* @enum {string}
|
|
260
|
+
*/
|
|
261
|
+
thisLib.PreferredActionStatusType = {
|
|
262
|
+
/**
|
|
263
|
+
* Initial state, no preferred action has been evaluated.
|
|
264
|
+
* @constant
|
|
265
|
+
* @type {string}
|
|
266
|
+
*/
|
|
267
|
+
NotSet: "notSet",
|
|
268
|
+
/**
|
|
269
|
+
* Preferred action can be performed (conditions are met).
|
|
270
|
+
* @constant
|
|
271
|
+
* @type {string}
|
|
272
|
+
*/
|
|
273
|
+
CanPerform: "canPerform",
|
|
274
|
+
/**
|
|
275
|
+
* Preferred action has been executed and should not be triggered again.
|
|
276
|
+
* @constant
|
|
277
|
+
* @type {string}
|
|
278
|
+
*/
|
|
279
|
+
AlreadyPerformed: "alreadyPerformed"
|
|
280
|
+
};
|
|
281
|
+
|
|
255
282
|
/**
|
|
256
283
|
* Available values for programming model.
|
|
257
284
|
* @readonly
|
|
@@ -363,7 +363,7 @@ C_TRANSACTION_HELPER_SAPFE_ACTION_CREATE_BUTTON_CREATE=Create
|
|
|
363
363
|
C_ACTION_PARTIAL_FRAGMENT_SAPFE_CONTINUE_ANYWAY=Continue Anyway
|
|
364
364
|
|
|
365
365
|
# XFLD,100: Text for Partial Processing
|
|
366
|
-
C_ACTION_PARTIAL_FRAGMENT_SAPFE_BOUND_ACTION=One selected object can'
|
|
366
|
+
C_ACTION_PARTIAL_FRAGMENT_SAPFE_BOUND_ACTION=One selected object can't be processed.
|
|
367
367
|
|
|
368
368
|
# XFLD,100: Text for Partial Processing
|
|
369
369
|
C_ACTION_PARTIAL_FRAGMENT_SAPFE_BOUND_ACTION_PLURAL={0} selected objects can''t be processed.
|
|
@@ -862,3 +862,10 @@ C_INLINE_EDIT_DRAFT_EXISTS=You can't edit this object at the moment. \n\
|
|
|
862
862
|
|
|
863
863
|
# Aria Text for the Form
|
|
864
864
|
C_FORM_ARIA_TEXT={0} form
|
|
865
|
+
# ----------------------Accessibility----------------------
|
|
866
|
+
|
|
867
|
+
# AI Actions Suffix
|
|
868
|
+
C_ACCESSIBILITY_AI_ACTION_ARIA_TEXT=AI generated response
|
|
869
|
+
|
|
870
|
+
# YMSG: view details link text for message strip
|
|
871
|
+
C_MESSAGE_HANDLING_SAPFE_ERROR_MESSAGE_STRIP_LINK_TEXT=View details
|
|
@@ -547,3 +547,10 @@ C_INLINE_EDIT_BEFORENAVIGATION_DISCARD_TOL=\u0633\u064A\u062A\u0645 \u0641\u0642
|
|
|
547
547
|
C_INLINE_EDIT_BEFORENAVIGATION_MESSAGE=\u0644\u0642\u062F \u0623\u062C\u0631\u064A\u062A \u062A\u063A\u064A\u064A\u0631\u0627\u062A \u0639\u0644\u0649 \u062D\u0642\u0644 \u0648\u0627\u062D\u062F \u0639\u0644\u0649 \u0627\u0644\u0623\u0642\u0644. \u0645\u0627 \u0627\u0644\u0630\u064A \u062A\u0631\u064A\u062F \u0641\u0639\u0644\u0647\u061F
|
|
548
548
|
|
|
549
549
|
C_INLINE_EDIT_DRAFT_EXISTS=\u0644\u0627 \u064A\u0645\u0643\u0646\u0643 \u062A\u062D\u0631\u064A\u0631 \u0647\u0630\u0627 \u0627\u0644\u0643\u0627\u0626\u0646 \u0641\u064A \u0627\u0644\u0648\u0642\u062A \u0627\u0644\u062D\u0627\u0644\u064A.\n\u064A\u062A\u0645 \u062A\u062D\u0631\u064A\u0631\u0647 \u0628\u0627\u0644\u0641\u0639\u0644. \u0627\u0644\u0631\u062C\u0627\u0621 \u0627\u0644\u0645\u062D\u0627\u0648\u0644\u0629 \u0645\u0631\u0629 \u0623\u062E\u0631\u0649 \u0644\u0627\u062D\u0642\u064B\u0627.
|
|
550
|
+
|
|
551
|
+
|
|
552
|
+
C_FORM_ARIA_TEXT=\u0627\u0644\u0646\u0645\u0648\u0630\u062C {0}
|
|
553
|
+
|
|
554
|
+
C_ACCESSIBILITY_AI_ACTION_ARIA_TEXT=\u0627\u0644\u0627\u0633\u062A\u062C\u0627\u0628\u0629 \u0645\u064F\u0646\u0634\u0623\u0629 \u0628\u0648\u0627\u0633\u0637\u0629 \u0627\u0644\u0630\u0643\u0627\u0621 \u0627\u0644\u0627\u0635\u0637\u0646\u0627\u0639\u064A
|
|
555
|
+
|
|
556
|
+
C_MESSAGE_HANDLING_SAPFE_ERROR_MESSAGE_STRIP_LINK_TEXT=\u0639\u0631\u0636 \u0627\u0644\u062A\u0641\u0627\u0635\u064A\u0644
|