@sapui5/sap.fe.core 1.135.0 → 1.136.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/sap/fe/core/.library +1 -1
- package/src/sap/fe/core/ActionRuntime.js +3 -2
- package/src/sap/fe/core/ActionRuntime.ts +3 -1
- package/src/sap/fe/core/AppComponent.js +6 -4
- package/src/sap/fe/core/AppComponent.ts +3 -1
- package/src/sap/fe/core/AppStateHandler.js +8 -6
- package/src/sap/fe/core/AppStateHandler.ts +7 -5
- package/src/sap/fe/core/CommonUtils.js +4 -1
- package/src/sap/fe/core/CommonUtils.ts +12 -2
- package/src/sap/fe/core/ExtensionAPI.js +5 -3
- package/src/sap/fe/core/ExtensionAPI.ts +4 -2
- package/src/sap/fe/core/PageController.js +13 -1
- package/src/sap/fe/core/PageController.ts +13 -0
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.js +13 -5
- package/src/sap/fe/core/buildingBlocks/BuildingBlock.ts +19 -6
- package/src/sap/fe/core/controllerextensions/BaseControllerExtension.js +4 -2
- package/src/sap/fe/core/controllerextensions/BaseControllerExtension.ts +3 -1
- package/src/sap/fe/core/controllerextensions/EditFlow.js +58 -14
- package/src/sap/fe/core/controllerextensions/EditFlow.ts +71 -11
- package/src/sap/fe/core/controllerextensions/InlineEditFlow.js +184 -17
- package/src/sap/fe/core/controllerextensions/InlineEditFlow.ts +204 -12
- package/src/sap/fe/core/controllerextensions/InternalRouting.js +12 -3
- package/src/sap/fe/core/controllerextensions/InternalRouting.ts +11 -1
- package/src/sap/fe/core/controllerextensions/MessageHandler.js +35 -5
- package/src/sap/fe/core/controllerextensions/MessageHandler.ts +41 -1
- package/src/sap/fe/core/controllerextensions/Routing.js +6 -6
- package/src/sap/fe/core/controllerextensions/Routing.ts +2 -2
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.js +3 -11
- package/src/sap/fe/core/controllerextensions/collaboration/ActivityBase.ts +2 -10
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.js +11 -1
- package/src/sap/fe/core/controllerextensions/collaboration/CollaborationCommon.ts +12 -0
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.js +21 -6
- package/src/sap/fe/core/controllerextensions/editFlow/TransactionHelper.ts +19 -5
- package/src/sap/fe/core/controllerextensions/editFlow/draft.js +17 -14
- package/src/sap/fe/core/controllerextensions/editFlow/draft.ts +19 -17
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.js +2 -2
- package/src/sap/fe/core/controllerextensions/editFlow/draftDataLossPopup.ts +4 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/ODataOperation.js +10 -2
- package/src/sap/fe/core/controllerextensions/editFlow/operations/ODataOperation.ts +8 -2
- 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/Operation.js +1 -1
- package/src/sap/fe/core/controllerextensions/editFlow/operations/Operation.ts +33 -31
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.js +2 -2
- package/src/sap/fe/core/controllerextensions/editFlow/operations/facade.ts +3 -3
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.js +4 -1
- package/src/sap/fe/core/controllerextensions/editFlow/sticky.ts +2 -1
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.js +2 -2
- package/src/sap/fe/core/controls/DataLossOrDraftDiscard/DraftDataLossDialog.tsx +8 -1
- package/src/sap/fe/core/controls/HideFormGroupAutomatically.js +4 -3
- package/src/sap/fe/core/controls/HideFormGroupAutomatically.ts +7 -2
- package/src/sap/fe/core/controls/inlineEditFlow/BeforeActionDialog.js +68 -0
- package/src/sap/fe/core/controls/inlineEditFlow/BeforeActionDialog.tsx +52 -0
- package/src/sap/fe/core/controls/inlineEditFlow/BeforeNavigationDialog.js +144 -0
- package/src/sap/fe/core/controls/inlineEditFlow/BeforeNavigationDialog.tsx +128 -0
- package/src/sap/fe/core/controls/inlineEditFlow/DraftExistsDialog.js +53 -0
- package/src/sap/fe/core/controls/inlineEditFlow/DraftExistsDialog.tsx +39 -0
- package/src/sap/fe/core/converters/ManifestSettings.js +1 -1
- package/src/sap/fe/core/converters/ManifestSettings.ts +18 -8
- package/src/sap/fe/core/converters/controls/Common/Action.js +54 -5
- package/src/sap/fe/core/converters/controls/Common/Action.ts +59 -3
- package/src/sap/fe/core/converters/controls/Common/Chart.js +22 -4
- package/src/sap/fe/core/converters/controls/Common/Chart.ts +23 -4
- package/src/sap/fe/core/converters/controls/Common/Form.js +13 -4
- package/src/sap/fe/core/converters/controls/Common/Form.ts +13 -3
- package/src/sap/fe/core/converters/controls/Common/Table.js +29 -9
- package/src/sap/fe/core/converters/controls/Common/Table.ts +38 -8
- package/src/sap/fe/core/converters/controls/Common/table/Columns.js +14 -16
- package/src/sap/fe/core/converters/controls/Common/table/Columns.ts +61 -96
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.js +62 -13
- package/src/sap/fe/core/converters/controls/Common/table/StandardActions.ts +75 -13
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.js +4 -33
- package/src/sap/fe/core/converters/controls/ListReport/FilterBar.ts +4 -44
- package/src/sap/fe/core/converters/controls/ListReport/FilterField.js +106 -0
- package/src/sap/fe/core/converters/controls/ListReport/FilterField.ts +129 -0
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.js +9 -4
- package/src/sap/fe/core/converters/controls/ListReport/VisualFilters.ts +8 -3
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.js +7 -2
- package/src/sap/fe/core/converters/controls/ObjectPage/SubSection.ts +5 -1
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.js +29 -7
- package/src/sap/fe/core/converters/objectPage/HeaderAndFooterAction.ts +40 -16
- package/src/sap/fe/core/designtime/AnnotationBasedChanges.js +34 -16
- package/src/sap/fe/core/designtime/AnnotationBasedChanges.ts +35 -16
- package/src/sap/fe/core/designtime/messagebundle_ar.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_bg.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_ca.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_cnr.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_cs.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_cy.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_da.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_de.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_el.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_en.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_en_GB.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_es.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_es_MX.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_et.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_fi.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_fr.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_fr_CA.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_hi.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_hr.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_hu.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_id.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_it.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_iw.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_ja.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_kk.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_ko.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_lt.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_lv.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_mk.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_ms.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_nl.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_no.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_pl.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_pt.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_pt_PT.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_ro.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_ru.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_sh.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_sk.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_sl.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_sr.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_sv.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_th.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_tr.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_uk.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_vi.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_zh_CN.properties +7 -0
- package/src/sap/fe/core/designtime/messagebundle_zh_TW.properties +7 -0
- package/src/sap/fe/core/fpm/manifest.json +1 -1
- package/src/sap/fe/core/helpers/AppStartupHelper.js +24 -3
- package/src/sap/fe/core/helpers/AppStartupHelper.ts +28 -2
- package/src/sap/fe/core/helpers/BindingHelper.js +3 -2
- package/src/sap/fe/core/helpers/BindingHelper.ts +2 -1
- package/src/sap/fe/core/helpers/DeleteHelper.js +4 -9
- package/src/sap/fe/core/helpers/DeleteHelper.ts +3 -8
- package/src/sap/fe/core/helpers/ModelHelper.js +14 -4
- package/src/sap/fe/core/helpers/ModelHelper.ts +15 -4
- package/src/sap/fe/core/helpers/PasteHelper.js +38 -39
- package/src/sap/fe/core/helpers/PasteHelper.ts +49 -51
- package/src/sap/fe/core/helpers/WebSocket.js +10 -1
- package/src/sap/fe/core/helpers/WebSocket.ts +8 -0
- package/src/sap/fe/core/library.js +1 -1
- package/src/sap/fe/core/messagebundle.properties +41 -2
- package/src/sap/fe/core/messagebundle_ar.properties +23 -2
- package/src/sap/fe/core/messagebundle_bg.properties +23 -2
- package/src/sap/fe/core/messagebundle_ca.properties +21 -0
- package/src/sap/fe/core/messagebundle_cnr.properties +23 -2
- package/src/sap/fe/core/messagebundle_cs.properties +21 -0
- package/src/sap/fe/core/messagebundle_cy.properties +21 -0
- package/src/sap/fe/core/messagebundle_da.properties +23 -2
- package/src/sap/fe/core/messagebundle_de.properties +23 -2
- package/src/sap/fe/core/messagebundle_el.properties +21 -0
- package/src/sap/fe/core/messagebundle_en.properties +23 -2
- package/src/sap/fe/core/messagebundle_en_GB.properties +23 -2
- package/src/sap/fe/core/messagebundle_en_US_saprigi.properties +23 -2
- package/src/sap/fe/core/messagebundle_es.properties +21 -0
- package/src/sap/fe/core/messagebundle_es_MX.properties +21 -0
- package/src/sap/fe/core/messagebundle_et.properties +21 -0
- package/src/sap/fe/core/messagebundle_fi.properties +21 -0
- package/src/sap/fe/core/messagebundle_fr.properties +22 -1
- package/src/sap/fe/core/messagebundle_fr_CA.properties +21 -0
- package/src/sap/fe/core/messagebundle_hi.properties +22 -1
- package/src/sap/fe/core/messagebundle_hr.properties +24 -3
- package/src/sap/fe/core/messagebundle_hu.properties +21 -0
- package/src/sap/fe/core/messagebundle_id.properties +21 -0
- package/src/sap/fe/core/messagebundle_it.properties +23 -2
- package/src/sap/fe/core/messagebundle_iw.properties +21 -0
- package/src/sap/fe/core/messagebundle_ja.properties +21 -0
- package/src/sap/fe/core/messagebundle_kk.properties +21 -0
- package/src/sap/fe/core/messagebundle_ko.properties +21 -0
- package/src/sap/fe/core/messagebundle_lt.properties +21 -0
- package/src/sap/fe/core/messagebundle_lv.properties +23 -2
- package/src/sap/fe/core/messagebundle_mk.properties +21 -0
- package/src/sap/fe/core/messagebundle_ms.properties +22 -1
- package/src/sap/fe/core/messagebundle_nl.properties +21 -0
- package/src/sap/fe/core/messagebundle_no.properties +21 -0
- package/src/sap/fe/core/messagebundle_pl.properties +23 -2
- package/src/sap/fe/core/messagebundle_pt.properties +23 -2
- package/src/sap/fe/core/messagebundle_pt_PT.properties +21 -0
- package/src/sap/fe/core/messagebundle_ro.properties +23 -2
- package/src/sap/fe/core/messagebundle_ru.properties +22 -1
- package/src/sap/fe/core/messagebundle_sh.properties +23 -2
- package/src/sap/fe/core/messagebundle_sk.properties +21 -0
- package/src/sap/fe/core/messagebundle_sl.properties +23 -2
- package/src/sap/fe/core/messagebundle_sr.properties +23 -2
- package/src/sap/fe/core/messagebundle_sv.properties +21 -0
- package/src/sap/fe/core/messagebundle_th.properties +21 -0
- package/src/sap/fe/core/messagebundle_tr.properties +21 -0
- package/src/sap/fe/core/messagebundle_uk.properties +23 -2
- package/src/sap/fe/core/messagebundle_vi.properties +23 -2
- package/src/sap/fe/core/messagebundle_zh_CN.properties +23 -2
- package/src/sap/fe/core/messagebundle_zh_TW.properties +21 -0
- package/src/sap/fe/core/rootView/Fcl.controller.js +5 -5
- package/src/sap/fe/core/rootView/Fcl.controller.ts +10 -4
- package/src/sap/fe/core/rootView/NavContainer.controller.js +2 -2
- package/src/sap/fe/core/rootView/NavContainer.controller.ts +1 -1
- package/src/sap/fe/core/rootView/RootViewBaseController.js +61 -9
- package/src/sap/fe/core/rootView/RootViewBaseController.ts +70 -7
- package/src/sap/fe/core/services/CollaborationManagerServiceFactory.js +28 -12
- package/src/sap/fe/core/services/CollaborationManagerServiceFactory.ts +27 -13
- package/src/sap/fe/core/services/EnvironmentServiceFactory.js +7 -1
- package/src/sap/fe/core/services/EnvironmentServiceFactory.ts +6 -0
- package/src/sap/fe/core/services/RoutingServiceFactory.js +3 -2
- package/src/sap/fe/core/services/RoutingServiceFactory.ts +2 -1
- package/src/sap/fe/core/services/ShellServicesFactory.js +4 -3
- package/src/sap/fe/core/services/ShellServicesFactory.ts +5 -3
- package/src/sap/fe/core/services/SideEffectsServiceFactory.js +27 -3
- package/src/sap/fe/core/services/SideEffectsServiceFactory.ts +32 -3
- package/src/sap/fe/core/services/view/TemplatingErrorPage.view.xml +1 -1
- package/src/sap/fe/core/templating/EntitySetHelper.js +198 -58
- package/src/sap/fe/core/templating/EntitySetHelper.ts +221 -61
- package/src/sap/fe/core/templating/SemanticObjectHelper.js +6 -7
- package/src/sap/fe/core/templating/SemanticObjectHelper.ts +9 -7
|
@@ -29,6 +29,7 @@ import AnnotationHelper from "sap/ui/model/odata/v4/AnnotationHelper";
|
|
|
29
29
|
import type { ODataPropertyBinding$ChangeEvent } from "sap/ui/model/odata/v4/ODataPropertyBinding";
|
|
30
30
|
import type ResourceModel from "sap/ui/model/resource/ResourceModel";
|
|
31
31
|
import URI from "sap/ui/thirdparty/URI";
|
|
32
|
+
import type { TitleAdditionalInfo } from "sap/ushell/ui5service/ShellUIService";
|
|
32
33
|
import type AppComponent from "../AppComponent";
|
|
33
34
|
import Any from "../controls/Any";
|
|
34
35
|
|
|
@@ -37,6 +38,7 @@ export type TitleInformation = {
|
|
|
37
38
|
subtitle?: string;
|
|
38
39
|
icon?: string;
|
|
39
40
|
intent?: string;
|
|
41
|
+
description?: string;
|
|
40
42
|
};
|
|
41
43
|
|
|
42
44
|
@defineUI5Class("sap.fe.core.rootView.RootViewBaseController")
|
|
@@ -270,10 +272,11 @@ class RootViewBaseController extends BaseController {
|
|
|
270
272
|
* @param title The application's title
|
|
271
273
|
* @param subtitle The application's subTitle
|
|
272
274
|
* @param sIntent The intent path to be redirected to
|
|
275
|
+
* @param description The application's description
|
|
273
276
|
* @param icon The application's icon
|
|
274
277
|
* @returns The title information
|
|
275
278
|
*/
|
|
276
|
-
_computeTitleInfo(title: string, subtitle: string, sIntent: string, icon = ""): TitleInformation {
|
|
279
|
+
_computeTitleInfo(title: string, subtitle: string, sIntent: string, description?: string, icon = ""): TitleInformation {
|
|
277
280
|
const aParts = sIntent.split("/");
|
|
278
281
|
if (!aParts[aParts.length - 1].includes("?")) {
|
|
279
282
|
sIntent += "?restoreHistory=true";
|
|
@@ -284,7 +287,8 @@ class RootViewBaseController extends BaseController {
|
|
|
284
287
|
title: title,
|
|
285
288
|
subtitle: subtitle,
|
|
286
289
|
intent: sIntent,
|
|
287
|
-
icon: icon
|
|
290
|
+
icon: icon,
|
|
291
|
+
description: description
|
|
288
292
|
};
|
|
289
293
|
}
|
|
290
294
|
|
|
@@ -485,6 +489,58 @@ class RootViewBaseController extends BaseController {
|
|
|
485
489
|
return sTargetType;
|
|
486
490
|
}
|
|
487
491
|
|
|
492
|
+
/**
|
|
493
|
+
* Helper method to determine the format of the browser title based on the current view.
|
|
494
|
+
* @param titleInfoHierarchyShell TitleInformation array
|
|
495
|
+
* @param pageTitleInformation TitleInformation object
|
|
496
|
+
* @returns An object with a header text and an additional context
|
|
497
|
+
*/
|
|
498
|
+
_getBrowserTitle(titleInfoHierarchyShell: TitleInformation[], pageTitleInformation: TitleInformation): { headerText: string } {
|
|
499
|
+
const breadcrumbTexts = [];
|
|
500
|
+
let firstPart = "",
|
|
501
|
+
secondPart = "";
|
|
502
|
+
|
|
503
|
+
const titleInfoHierarchy = [...titleInfoHierarchyShell];
|
|
504
|
+
if (titleInfoHierarchy.length > 1) {
|
|
505
|
+
titleInfoHierarchy.pop();
|
|
506
|
+
titleInfoHierarchy.forEach((titleInfo) => {
|
|
507
|
+
if (titleInfo.subtitle) {
|
|
508
|
+
breadcrumbTexts.push(titleInfo.subtitle);
|
|
509
|
+
}
|
|
510
|
+
});
|
|
511
|
+
}
|
|
512
|
+
if (pageTitleInformation.title) {
|
|
513
|
+
breadcrumbTexts.push(pageTitleInformation.title);
|
|
514
|
+
}
|
|
515
|
+
if (pageTitleInformation.description) {
|
|
516
|
+
firstPart = `${pageTitleInformation.subtitle}(${pageTitleInformation.description})`;
|
|
517
|
+
} else {
|
|
518
|
+
firstPart = `${pageTitleInformation.subtitle}`;
|
|
519
|
+
}
|
|
520
|
+
secondPart = breadcrumbTexts.join(" - ");
|
|
521
|
+
|
|
522
|
+
return {
|
|
523
|
+
headerText: secondPart ? `${firstPart} - ${secondPart}` : firstPart
|
|
524
|
+
};
|
|
525
|
+
}
|
|
526
|
+
|
|
527
|
+
/**
|
|
528
|
+
* Calculate the browser title and menu title, then trigger the set API of the shell.
|
|
529
|
+
* @param appTitle Application title
|
|
530
|
+
* @param titleInfoHierarchyShell An object for title information
|
|
531
|
+
* @param pageTitleInformation TitleInformation object
|
|
532
|
+
*/
|
|
533
|
+
async _setTitles(appTitle: string, titleInfoHierarchyShell: TitleInformation[], pageTitleInformation: TitleInformation): Promise<void> {
|
|
534
|
+
// Get the title of the browser
|
|
535
|
+
let browserTitle;
|
|
536
|
+
const appComponent = this.getAppComponent(),
|
|
537
|
+
title = pageTitleInformation.title ?? "";
|
|
538
|
+
if (titleInfoHierarchyShell.length) {
|
|
539
|
+
browserTitle = this._getBrowserTitle(titleInfoHierarchyShell, pageTitleInformation);
|
|
540
|
+
}
|
|
541
|
+
await this._setShellMenuTitle(appComponent, title, appTitle, browserTitle);
|
|
542
|
+
}
|
|
543
|
+
|
|
488
544
|
/**
|
|
489
545
|
* This function updates the shell title after each navigation.
|
|
490
546
|
* @param view The current view
|
|
@@ -537,7 +593,8 @@ class RootViewBaseController extends BaseController {
|
|
|
537
593
|
pageTitleInformation = this._computeTitleInfo(
|
|
538
594
|
pageTitleInformation.title ?? "",
|
|
539
595
|
pageTitleInformation.subtitle ?? "",
|
|
540
|
-
appSpecificHash + this._getHash()
|
|
596
|
+
appSpecificHash + this._getHash(),
|
|
597
|
+
pageTitleInformation.description
|
|
541
598
|
);
|
|
542
599
|
|
|
543
600
|
if (context && newPath) {
|
|
@@ -556,7 +613,8 @@ class RootViewBaseController extends BaseController {
|
|
|
556
613
|
titleInfoHierarchyShell.reverse();
|
|
557
614
|
await appComponent.getShellServices().setHierarchy(titleInfoHierarchyShell);
|
|
558
615
|
|
|
559
|
-
await this.
|
|
616
|
+
await this._setTitles(appTitle, titleInfoHierarchyShell, pageTitleInformation);
|
|
617
|
+
|
|
560
618
|
return;
|
|
561
619
|
})
|
|
562
620
|
.catch(function (errorMessage: unknown) {
|
|
@@ -590,7 +648,7 @@ class RootViewBaseController extends BaseController {
|
|
|
590
648
|
// The title info is already stored in the cache
|
|
591
649
|
return Promise.resolve(oTitleHierarchyCache[appSpecificHash]);
|
|
592
650
|
} else {
|
|
593
|
-
return Promise.resolve(this._computeTitleInfo(appTitle, appSubTitle, appSpecificHash, appIcon));
|
|
651
|
+
return Promise.resolve(this._computeTitleInfo(appTitle, appSubTitle, appSpecificHash, undefined, appIcon));
|
|
594
652
|
}
|
|
595
653
|
}
|
|
596
654
|
|
|
@@ -649,9 +707,14 @@ class RootViewBaseController extends BaseController {
|
|
|
649
707
|
}
|
|
650
708
|
|
|
651
709
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
652
|
-
async _setShellMenuTitle(
|
|
710
|
+
async _setShellMenuTitle(
|
|
711
|
+
oAppComponent: AppComponent,
|
|
712
|
+
sTitle: string,
|
|
713
|
+
sAppTitle: string,
|
|
714
|
+
additionalInformation?: TitleAdditionalInfo
|
|
715
|
+
): Promise<void> {
|
|
653
716
|
// To be overriden by FclController
|
|
654
|
-
await oAppComponent.getShellServices().setTitle(sTitle);
|
|
717
|
+
await oAppComponent.getShellServices().setTitle(sTitle, additionalInformation);
|
|
655
718
|
}
|
|
656
719
|
|
|
657
720
|
getAppContentContainer(): NavContainer | FlexibleColumnLayout {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
3
|
* (c) Copyright 2009-2025 SAP SE. All rights reserved
|
|
4
4
|
*/
|
|
5
|
-
sap.ui.define(["sap/base/Log", "sap/ui/core/service/Service", "sap/ui/core/service/ServiceFactory"], function (Log, Service, ServiceFactory) {
|
|
5
|
+
sap.ui.define(["sap/base/Log", "sap/ui/core/Lib", "sap/ui/core/service/Service", "sap/ui/core/service/ServiceFactory"], function (Log, Library, Service, ServiceFactory) {
|
|
6
6
|
"use strict";
|
|
7
7
|
|
|
8
8
|
function __ui5_require_async(path) {
|
|
@@ -139,17 +139,33 @@ sap.ui.define(["sap/base/Log", "sap/ui/core/service/Service", "sap/ui/core/servi
|
|
|
139
139
|
}
|
|
140
140
|
};
|
|
141
141
|
_proto.getDesignTimeCard = async function getDesignTimeCard(cardType) {
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
142
|
+
var _this2 = this;
|
|
143
|
+
return new Promise((resolve, reject) => {
|
|
144
|
+
Library.load({
|
|
145
|
+
name: "sap/cards/ap/common"
|
|
146
|
+
}).then(() => {
|
|
147
|
+
sap.ui.require(["sap/cards/ap/common/services/RetrieveCard"], async function () {
|
|
148
|
+
for (var _len2 = arguments.length, params = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
149
|
+
params[_key2] = arguments[_key2];
|
|
150
|
+
}
|
|
151
|
+
const retrieveCard = params[0];
|
|
152
|
+
let generatedManifest;
|
|
153
|
+
const appComponent = _this2.appComponent;
|
|
154
|
+
try {
|
|
155
|
+
generatedManifest = await retrieveCard.getObjectPageCardManifestForPreview(appComponent, {
|
|
156
|
+
cardType: cardType
|
|
157
|
+
});
|
|
158
|
+
} catch (error) {
|
|
159
|
+
Log.error(error);
|
|
160
|
+
}
|
|
161
|
+
resolve(generatedManifest);
|
|
162
|
+
});
|
|
163
|
+
return;
|
|
164
|
+
}).catch(function (error) {
|
|
165
|
+
Log.error(error);
|
|
166
|
+
reject();
|
|
148
167
|
});
|
|
149
|
-
}
|
|
150
|
-
Log.error(error);
|
|
151
|
-
}
|
|
152
|
-
return generatedManifest;
|
|
168
|
+
});
|
|
153
169
|
};
|
|
154
170
|
_proto.publishCard = function publishCard(card) {
|
|
155
171
|
this.channel.publishCard(this.id, {
|
|
@@ -183,4 +199,4 @@ sap.ui.define(["sap/base/Log", "sap/ui/core/service/Service", "sap/ui/core/servi
|
|
|
183
199
|
_exports = CollaborationManagerServiceFactory;
|
|
184
200
|
return _exports;
|
|
185
201
|
}, false);
|
|
186
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2UiLCJfU2VydmljZSIsIl90aGlzIiwiX2xlbiIsImFyZ3VtZW50cyIsImxlbmd0aCIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJjYWxsIiwiX19pbXBsZW1lbnRzX19zYXBfaW5zaWdodHNfSUNhcmRQcm92aWRlciIsInJlZ2lzdGVyZWQiLCJfZXhwb3J0cyIsIl9pbmhlcml0c0xvb3NlIiwiX3Byb3RvIiwicHJvdG90eXBlIiwiaW5pdCIsImluaXRQcm9taXNlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJhcHBDb21wb25lbnQiLCJnZXRDb250ZXh0Iiwic2NvcGVPYmplY3QiLCJnZXRDYXJkc0NoYW5uZWwiLCJkZWZhdWx0IiwiY2FyZEhlbHBlciIsIl9fdWk1X3JlcXVpcmVfYXN5bmMiLCJzZXJ2aWNlIiwiZ2V0U2VydmljZUFzeW5jIiwiY29ubmVjdCIsInByb3ZpZGVySWQiLCJvblJldHJpZXZlQXZhaWxhYmxlQ2FyZHMiLCJjaGFubmVsIiwiaXNFbmFibGVkIiwiaWQiLCJjb25zdW1lcnMiLCJzaGFyZWRDYXJkcyIsInJlZ2lzdGVyUHJvdmlkZXIiLCJ1cGRhdGVDb25zdW1lcnMiLCJlcnJvciIsIkxvZyIsImRlYnVnIiwib25Db25zdW1lckNvbm5lY3RlZCIsInNoYXJlQXZhaWxhYmxlQ2FyZHMiLCJPYmplY3QiLCJrZXlzIiwib25Db25zdW1lckRpc2Nvbm5lY3RlZCIsIm9uQ2FyZFJlcXVlc3RlZCIsImNvbnN1bWVySWQiLCJjYXJkSWQiLCJjYXJkIiwiZmluZCIsImNhbGxiYWNrIiwib25WaWV3VXBkYXRlIiwiYWN0aXZlIiwidW5yZWdpc3RlclByb3ZpZGVyIiwidW5yZWdpc3RlciIsInVuZGVmaW5lZCIsInB1Ymxpc2hBdmFpbGFibGVDYXJkcyIsImFkZENhcmRzVG9Db2xsYWJvcmF0aW9uTWFuYWdlciIsImNhcmRzIiwicGFyZW50QXBwSWQiLCJlbnRyaWVzIiwicHVzaCIsInRpdGxlIiwiZ2V0RGVzaWduVGltZUNhcmQiLCJjYXJkVHlwZSIsInJldHJpZXZlQ2FyZCIsImdlbmVyYXRlZE1hbmlmZXN0IiwiZ2V0T2JqZWN0UGFnZUNhcmRNYW5pZmVzdEZvclByZXZpZXciLCJwdWJsaXNoQ2FyZCIsImRlc2NyaXB0b3JDb250ZW50IiwiU2VydmljZSIsIkNvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZUZhY3RvcnkiLCJfU2VydmljZUZhY3RvcnkiLCJhcHBseSIsIl9wcm90bzIiLCJjcmVhdGVJbnN0YW5jZSIsIm9TZXJ2aWNlQ29udGV4dCIsImluc3RhbmNlIiwiZ2V0SW5zdGFuY2UiLCJTZXJ2aWNlRmFjdG9yeSIsInNlcnZpY2VDbGFzcyJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiQ29sbGFib3JhdGlvbk1hbmFnZXJTZXJ2aWNlRmFjdG9yeS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB0eXBlIHsgQ2FyZE1hbmlmZXN0IH0gZnJvbSBcInNhcC9pbnNpZ2h0cy9DYXJkSGVscGVyXCI7XG5pbXBvcnQgdHlwZSBDYXJkc0NoYW5uZWwgZnJvbSBcInNhcC9pbnNpZ2h0cy9DYXJkc0NoYW5uZWxcIjtcbmltcG9ydCB0eXBlIHsgSUNhcmRQcm92aWRlciwgU2hhcmVkQ2FyZCB9IGZyb20gXCJzYXAvaW5zaWdodHMvQ2FyZHNDaGFubmVsXCI7XG5pbXBvcnQgU2VydmljZSBmcm9tIFwic2FwL3VpL2NvcmUvc2VydmljZS9TZXJ2aWNlXCI7XG5pbXBvcnQgU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC91aS9jb3JlL3NlcnZpY2UvU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCB0eXBlIHsgU2VydmljZUNvbnRleHQgfSBmcm9tIFwidHlwZXMvbWV0YW1vZGVsX3R5cGVzXCI7XG5pbXBvcnQgdHlwZSBBcHBDb21wb25lbnQgZnJvbSBcIi4uL0FwcENvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBSZXRyaWV2ZUNhcmRUeXBlIH0gZnJvbSBcInNhcC9jYXJkcy9hcC9jb21tb24vc2VydmljZXMvUmV0cmlldmVDYXJkXCI7XG5cbnR5cGUgQ29sbGFib3JhdGlvbk1hbmFnZXJTZXR0aW5ncyA9IHt9O1xuXG5leHBvcnQgdHlwZSBXcmFwcGVkQ2FyZCA9IFBpY2s8Tm9uTnVsbGFibGU8U2hhcmVkQ2FyZD4sIFwiY2FyZFwiIHwgXCJ0aXRsZVwiIHwgXCJjYWxsYmFja1wiPjtcblxuZXhwb3J0IGNsYXNzIENvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZSBleHRlbmRzIFNlcnZpY2U8Q29sbGFib3JhdGlvbk1hbmFnZXJTZXR0aW5ncz4gaW1wbGVtZW50cyBJQ2FyZFByb3ZpZGVyIHtcblx0aW5pdFByb21pc2UhOiBQcm9taXNlPENvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZT47XG5cblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIGNhbWVsY2FzZVxuXHRfX2ltcGxlbWVudHNfX3NhcF9pbnNpZ2h0c19JQ2FyZFByb3ZpZGVyID0gdHJ1ZTtcblxuXHRwcml2YXRlIGNoYW5uZWwhOiBDYXJkc0NoYW5uZWw7XG5cblx0cHJpdmF0ZSBpZCE6IHN0cmluZztcblxuXHRwcml2YXRlIGNvbnN1bWVycyE6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+O1xuXG5cdHByaXZhdGUgb25SZXRyaWV2ZUF2YWlsYWJsZUNhcmRzPzogKCkgPT4gUHJvbWlzZTx2b2lkPjtcblxuXHRwcml2YXRlIHNoYXJlZENhcmRzITogU2hhcmVkQ2FyZFtdO1xuXG5cdHByaXZhdGUgcmVnaXN0ZXJlZCA9IGZhbHNlO1xuXG5cdHByaXZhdGUgYXBwQ29tcG9uZW50ITogQXBwQ29tcG9uZW50O1xuXG5cdGluaXQoKTogdm9pZCB7XG5cdFx0dGhpcy5pbml0UHJvbWlzZSA9IG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG5cdFx0XHR0aGlzLmFwcENvbXBvbmVudCA9IHRoaXMuZ2V0Q29udGV4dCgpLnNjb3BlT2JqZWN0IGFzIEFwcENvbXBvbmVudDtcblx0XHRcdHJlc29sdmUodGhpcyk7XG5cdFx0fSk7XG5cdH1cblxuXHRwcml2YXRlIGFzeW5jIGdldENhcmRzQ2hhbm5lbCgpOiBQcm9taXNlPENhcmRzQ2hhbm5lbD4ge1xuXHRcdGNvbnN0IHsgZGVmYXVsdDogY2FyZEhlbHBlciB9ID0gYXdhaXQgaW1wb3J0KFwic2FwL2luc2lnaHRzL0NhcmRIZWxwZXJcIik7XG5cdFx0Y29uc3Qgc2VydmljZSA9IGF3YWl0IGNhcmRIZWxwZXIuZ2V0U2VydmljZUFzeW5jKFwiVUlTZXJ2aWNlXCIpO1xuXHRcdHJldHVybiBzZXJ2aWNlLmdldENhcmRzQ2hhbm5lbCgpO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIGNvbm5lY3QocHJvdmlkZXJJZDogc3RyaW5nLCBvblJldHJpZXZlQXZhaWxhYmxlQ2FyZHM6ICgpID0+IFByb21pc2U8dm9pZD4pOiBQcm9taXNlPENvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZT4ge1xuXHRcdHRyeSB7XG5cdFx0XHRjb25zdCBjaGFubmVsID0gYXdhaXQgdGhpcy5nZXRDYXJkc0NoYW5uZWwoKTtcblx0XHRcdGlmIChjaGFubmVsLmlzRW5hYmxlZCgpKSB7XG5cdFx0XHRcdHRoaXMub25SZXRyaWV2ZUF2YWlsYWJsZUNhcmRzID0gb25SZXRyaWV2ZUF2YWlsYWJsZUNhcmRzO1xuXHRcdFx0XHR0aGlzLmNoYW5uZWwgPSBjaGFubmVsO1xuXHRcdFx0XHR0aGlzLmlkID0gcHJvdmlkZXJJZDtcblx0XHRcdFx0dGhpcy5jb25zdW1lcnMgPSB7fTtcblx0XHRcdFx0dGhpcy5zaGFyZWRDYXJkcyA9IFtdO1xuXHRcdFx0XHRpZiAodGhpcy5yZWdpc3RlcmVkICE9PSB0cnVlKSB7XG5cdFx0XHRcdFx0YXdhaXQgdGhpcy5yZWdpc3RlclByb3ZpZGVyKCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0dGhpcy51cGRhdGVDb25zdW1lcnMoKTtcblx0XHRcdH1cblx0XHR9IGNhdGNoIChlcnJvcjogdW5rbm93bikge1xuXHRcdFx0TG9nLmRlYnVnKFwiQ29sbGFib3JhdGlvbiBNYW5hZ2VyIGNvbm5lY3Rpb24gZmFpbGVkXCIsIGVycm9yIGFzIEVycm9yIHwgc3RyaW5nKTtcblx0XHR9XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cblxuXHRwdWJsaWMgYXN5bmMgb25Db25zdW1lckNvbm5lY3RlZChpZDogc3RyaW5nKTogUHJvbWlzZTxudW1iZXI+IHtcblx0XHRpZiAoIXRoaXMuY29uc3VtZXJzW2lkXSkge1xuXHRcdFx0dGhpcy5jb25zdW1lcnNbaWRdID0gdHJ1ZTtcblx0XHRcdGF3YWl0IHRoaXMub25SZXRyaWV2ZUF2YWlsYWJsZUNhcmRzPy4oKTtcblx0XHRcdHRoaXMuc2hhcmVBdmFpbGFibGVDYXJkcyhpZCk7XG5cdFx0fVxuXHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoT2JqZWN0LmtleXModGhpcy5jb25zdW1lcnMpLmxlbmd0aCk7XG5cdH1cblxuXHRwdWJsaWMgYXN5bmMgb25Db25zdW1lckRpc2Nvbm5lY3RlZChpZDogc3RyaW5nKTogUHJvbWlzZTxudW1iZXI+IHtcblx0XHRpZiAodGhpcy5jb25zdW1lcnNbaWRdKSB7XG5cdFx0XHRkZWxldGUgdGhpcy5jb25zdW1lcnNbaWRdO1xuXHRcdH1cblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKE9iamVjdC5rZXlzKHRoaXMuY29uc3VtZXJzKS5sZW5ndGgpO1xuXHR9XG5cblx0cHVibGljIG9uQ2FyZFJlcXVlc3RlZChjb25zdW1lcklkOiBzdHJpbmcsIGNhcmRJZDogc3RyaW5nKTogU2hhcmVkQ2FyZCB7XG5cdFx0Y29uc3QgY2FyZCA9IHRoaXMuc2hhcmVkQ2FyZHMuZmluZCgoY2FyZCkgPT4gY2FyZD8uaWQgPT09IGNhcmRJZCk7XG5cdFx0Y2FyZD8uY2FsbGJhY2s/LihjYXJkLmNhcmQpO1xuXHRcdHJldHVybiBjYXJkO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIG9uVmlld1VwZGF0ZShhY3RpdmU6IGJvb2xlYW4pOiBQcm9taXNlPHZvaWQ+IHtcblx0XHQvLyByZWdpc3RlciAvIHVucmVnaXN0ZXIgaWYgdGhlIHN0YXR1cyBvZiB0aGUgaG9tZSBwYWdlIGNoYW5nZWRcblx0XHRpZiAodGhpcy5yZWdpc3RlcmVkICE9PSBhY3RpdmUpIHtcblx0XHRcdGlmIChhY3RpdmUpIHtcblx0XHRcdFx0YXdhaXQgdGhpcy5yZWdpc3RlclByb3ZpZGVyKCk7XG5cdFx0XHRcdHRoaXMudXBkYXRlQ29uc3VtZXJzKCk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRhd2FpdCB0aGlzLnVucmVnaXN0ZXJQcm92aWRlcigpO1xuXHRcdFx0fVxuXHRcdH0gZWxzZSBpZiAodGhpcy5yZWdpc3RlcmVkKSB7XG5cdFx0XHR0aGlzLnVwZGF0ZUNvbnN1bWVycygpO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgYXN5bmMgcmVnaXN0ZXJQcm92aWRlcigpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRpZiAodGhpcy5jaGFubmVsKSB7XG5cdFx0XHRhd2FpdCB0aGlzLmNoYW5uZWwucmVnaXN0ZXJQcm92aWRlcih0aGlzLmlkLCB0aGlzKTtcblx0XHRcdHRoaXMucmVnaXN0ZXJlZCA9IHRydWU7XG5cdFx0fVxuXHR9XG5cblx0cHVibGljIGFzeW5jIHVucmVnaXN0ZXJQcm92aWRlcigpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRpZiAodGhpcy5jaGFubmVsKSB7XG5cdFx0XHRhd2FpdCB0aGlzLmNoYW5uZWwudW5yZWdpc3Rlcih0aGlzLmlkKTtcblx0XHRcdHRoaXMucmVnaXN0ZXJlZCA9IGZhbHNlO1xuXHRcdFx0dGhpcy5jb25zdW1lcnMgPSB7fTtcblx0XHRcdHRoaXMuc2hhcmVkQ2FyZHMgPSBbXTtcblx0XHRcdHRoaXMub25SZXRyaWV2ZUF2YWlsYWJsZUNhcmRzID0gdW5kZWZpbmVkO1xuXHRcdH1cblx0fVxuXG5cdHByaXZhdGUgdXBkYXRlQ29uc3VtZXJzKCk6IHZvaWQge1xuXHRcdHRoaXMuc2hhcmVBdmFpbGFibGVDYXJkcygpO1xuXHR9XG5cblx0cHVibGljIHNoYXJlQXZhaWxhYmxlQ2FyZHMoY29uc3VtZXJJZCA9IFwiKlwiKTogdm9pZCB7XG5cdFx0dGhpcz8uY2hhbm5lbD8ucHVibGlzaEF2YWlsYWJsZUNhcmRzKHRoaXMuaWQsIHRoaXMuc2hhcmVkQ2FyZHMsIGNvbnN1bWVySWQpO1xuXHR9XG5cblx0cHVibGljIGFkZENhcmRzVG9Db2xsYWJvcmF0aW9uTWFuYWdlcihjYXJkczogUmVjb3JkPHN0cmluZywgV3JhcHBlZENhcmQ+LCBwYXJlbnRBcHBJZDogc3RyaW5nKTogdm9pZCB7XG5cdFx0dGhpcy5zaGFyZWRDYXJkcyA9IFtdO1xuXHRcdGZvciAoY29uc3QgW2lkLCBjYXJkXSBvZiBPYmplY3QuZW50cmllcyhjYXJkcykpIHtcblx0XHRcdHRoaXMuc2hhcmVkQ2FyZHMucHVzaCh7XG5cdFx0XHRcdGlkOiBpZCxcblx0XHRcdFx0dGl0bGU6IGNhcmQudGl0bGUsXG5cdFx0XHRcdHBhcmVudEFwcElkOiBwYXJlbnRBcHBJZCxcblx0XHRcdFx0Y2FsbGJhY2s6IGNhcmQuY2FsbGJhY2ssXG5cdFx0XHRcdGNhcmQ6IGNhcmQuY2FyZFxuXHRcdFx0fSk7XG5cdFx0fVxuXHR9XG5cblx0cHVibGljIGFzeW5jIGdldERlc2lnblRpbWVDYXJkKGNhcmRUeXBlOiBSZXRyaWV2ZUNhcmRUeXBlKTogUHJvbWlzZTxSZWNvcmQ8c3RyaW5nLHVua25vd24+IHwgdW5kZWZpbmVkPiB7XG5cdFx0Y29uc3QgcmV0cmlldmVDYXJkID0gYXdhaXQgaW1wb3J0KFwic2FwL2NhcmRzL2FwL2NvbW1vbi9zZXJ2aWNlcy9SZXRyaWV2ZUNhcmRcIik7XG5cdFx0bGV0IGdlbmVyYXRlZE1hbmlmZXN0O1xuXHRcdGNvbnN0IGFwcENvbXBvbmVudCA9IHRoaXMuYXBwQ29tcG9uZW50O1xuXHRcdHRyeSB7XG5cdFx0XHRnZW5lcmF0ZWRNYW5pZmVzdCA9IGF3YWl0IHJldHJpZXZlQ2FyZC5nZXRPYmplY3RQYWdlQ2FyZE1hbmlmZXN0Rm9yUHJldmlldyhhcHBDb21wb25lbnQsIHtcblx0XHRcdFx0Y2FyZFR5cGU6IGNhcmRUeXBlXG5cdFx0XHR9KTtcblx0XHR9IGNhdGNoIChlcnJvcikge1xuXHRcdFx0TG9nLmVycm9yKGVycm9yIGFzIHN0cmluZyk7XG5cdFx0fVxuXHRcdHJldHVybiBnZW5lcmF0ZWRNYW5pZmVzdDtcblx0fVxuXG5cdHB1YmxpYyBwdWJsaXNoQ2FyZChjYXJkOiBDYXJkTWFuaWZlc3QpOiB2b2lkIHtcblx0XHR0aGlzLmNoYW5uZWwucHVibGlzaENhcmQodGhpcy5pZCwgeyBpZDogY2FyZFtcInNhcC5hcHBcIl0uaWQsIGRlc2NyaXB0b3JDb250ZW50OiBjYXJkIH0sIFwiKlwiKTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2VGYWN0b3J5IGV4dGVuZHMgU2VydmljZUZhY3Rvcnk8Q29sbGFib3JhdGlvbk1hbmFnZXJTZXR0aW5ncz4ge1xuXHRzdGF0aWMgc2VydmljZUNsYXNzID0gQ29sbGFib3JhdGlvbk1hbmFnZXJTZXJ2aWNlO1xuXG5cdHByaXZhdGUgaW5zdGFuY2UhOiBDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2U7XG5cblx0YXN5bmMgY3JlYXRlSW5zdGFuY2Uob1NlcnZpY2VDb250ZXh0OiBTZXJ2aWNlQ29udGV4dDxDb2xsYWJvcmF0aW9uTWFuYWdlclNldHRpbmdzPik6IFByb21pc2U8Q29sbGFib3JhdGlvbk1hbmFnZXJTZXJ2aWNlPiB7XG5cdFx0dGhpcy5pbnN0YW5jZSA9IG5ldyBDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2Uob1NlcnZpY2VDb250ZXh0KTtcblx0XHRyZXR1cm4gdGhpcy5pbnN0YW5jZS5pbml0UHJvbWlzZTtcblx0fVxuXG5cdGdldEluc3RhbmNlKCk6IENvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZSB7XG5cdFx0cmV0dXJuIHRoaXMuaW5zdGFuY2U7XG5cdH1cblxuXHRzaGFyZUF2YWlsYWJsZUNhcmRzKCk6IHZvaWQge1xuXHRcdHRoaXMuaW5zdGFuY2Uuc2hhcmVBdmFpbGFibGVD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
|
|
202
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2UiLCJfU2VydmljZSIsIl90aGlzIiwiX2xlbiIsImFyZ3VtZW50cyIsImxlbmd0aCIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJjYWxsIiwiX19pbXBsZW1lbnRzX19zYXBfaW5zaWdodHNfSUNhcmRQcm92aWRlciIsInJlZ2lzdGVyZWQiLCJfZXhwb3J0cyIsIl9pbmhlcml0c0xvb3NlIiwiX3Byb3RvIiwicHJvdG90eXBlIiwiaW5pdCIsImluaXRQcm9taXNlIiwiUHJvbWlzZSIsInJlc29sdmUiLCJhcHBDb21wb25lbnQiLCJnZXRDb250ZXh0Iiwic2NvcGVPYmplY3QiLCJnZXRDYXJkc0NoYW5uZWwiLCJkZWZhdWx0IiwiY2FyZEhlbHBlciIsIl9fdWk1X3JlcXVpcmVfYXN5bmMiLCJzZXJ2aWNlIiwiZ2V0U2VydmljZUFzeW5jIiwiY29ubmVjdCIsInByb3ZpZGVySWQiLCJvblJldHJpZXZlQXZhaWxhYmxlQ2FyZHMiLCJjaGFubmVsIiwiaXNFbmFibGVkIiwiaWQiLCJjb25zdW1lcnMiLCJzaGFyZWRDYXJkcyIsInJlZ2lzdGVyUHJvdmlkZXIiLCJ1cGRhdGVDb25zdW1lcnMiLCJlcnJvciIsIkxvZyIsImRlYnVnIiwib25Db25zdW1lckNvbm5lY3RlZCIsInNoYXJlQXZhaWxhYmxlQ2FyZHMiLCJPYmplY3QiLCJrZXlzIiwib25Db25zdW1lckRpc2Nvbm5lY3RlZCIsIm9uQ2FyZFJlcXVlc3RlZCIsImNvbnN1bWVySWQiLCJjYXJkSWQiLCJjYXJkIiwiZmluZCIsImNhbGxiYWNrIiwib25WaWV3VXBkYXRlIiwiYWN0aXZlIiwidW5yZWdpc3RlclByb3ZpZGVyIiwidW5yZWdpc3RlciIsInVuZGVmaW5lZCIsInB1Ymxpc2hBdmFpbGFibGVDYXJkcyIsImFkZENhcmRzVG9Db2xsYWJvcmF0aW9uTWFuYWdlciIsImNhcmRzIiwicGFyZW50QXBwSWQiLCJlbnRyaWVzIiwicHVzaCIsInRpdGxlIiwiZ2V0RGVzaWduVGltZUNhcmQiLCJjYXJkVHlwZSIsIl90aGlzMiIsInJlamVjdCIsIkxpYnJhcnkiLCJsb2FkIiwibmFtZSIsInRoZW4iLCJzYXAiLCJ1aSIsInJlcXVpcmUiLCJfbGVuMiIsInBhcmFtcyIsIl9rZXkyIiwicmV0cmlldmVDYXJkIiwiZ2VuZXJhdGVkTWFuaWZlc3QiLCJnZXRPYmplY3RQYWdlQ2FyZE1hbmlmZXN0Rm9yUHJldmlldyIsImNhdGNoIiwicHVibGlzaENhcmQiLCJkZXNjcmlwdG9yQ29udGVudCIsIlNlcnZpY2UiLCJDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2VGYWN0b3J5IiwiX1NlcnZpY2VGYWN0b3J5IiwiYXBwbHkiLCJfcHJvdG8yIiwiY3JlYXRlSW5zdGFuY2UiLCJvU2VydmljZUNvbnRleHQiLCJpbnN0YW5jZSIsImdldEluc3RhbmNlIiwiU2VydmljZUZhY3RvcnkiLCJzZXJ2aWNlQ2xhc3MiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkNvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZUZhY3RvcnkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgdHlwZSBSZXRyaWV2ZUNhcmQgZnJvbSBcInNhcC9jYXJkcy9hcC9jb21tb24vc2VydmljZXMvUmV0cmlldmVDYXJkXCI7XG5pbXBvcnQgdHlwZSB7IFJldHJpZXZlQ2FyZFR5cGUgfSBmcm9tIFwic2FwL2NhcmRzL2FwL2NvbW1vbi9zZXJ2aWNlcy9SZXRyaWV2ZUNhcmRcIjtcbmltcG9ydCB0eXBlIHsgQ2FyZE1hbmlmZXN0IH0gZnJvbSBcInNhcC9pbnNpZ2h0cy9DYXJkSGVscGVyXCI7XG5pbXBvcnQgdHlwZSBDYXJkc0NoYW5uZWwgZnJvbSBcInNhcC9pbnNpZ2h0cy9DYXJkc0NoYW5uZWxcIjtcbmltcG9ydCB0eXBlIHsgSUNhcmRQcm92aWRlciwgU2hhcmVkQ2FyZCB9IGZyb20gXCJzYXAvaW5zaWdodHMvQ2FyZHNDaGFubmVsXCI7XG5pbXBvcnQgTGlicmFyeSBmcm9tIFwic2FwL3VpL2NvcmUvTGliXCI7XG5pbXBvcnQgU2VydmljZSBmcm9tIFwic2FwL3VpL2NvcmUvc2VydmljZS9TZXJ2aWNlXCI7XG5pbXBvcnQgU2VydmljZUZhY3RvcnkgZnJvbSBcInNhcC91aS9jb3JlL3NlcnZpY2UvU2VydmljZUZhY3RvcnlcIjtcbmltcG9ydCB0eXBlIHsgU2VydmljZUNvbnRleHQgfSBmcm9tIFwidHlwZXMvbWV0YW1vZGVsX3R5cGVzXCI7XG5pbXBvcnQgdHlwZSBBcHBDb21wb25lbnQgZnJvbSBcIi4uL0FwcENvbXBvbmVudFwiO1xuXG50eXBlIENvbGxhYm9yYXRpb25NYW5hZ2VyU2V0dGluZ3MgPSB7fTtcblxuZXhwb3J0IHR5cGUgV3JhcHBlZENhcmQgPSBQaWNrPE5vbk51bGxhYmxlPFNoYXJlZENhcmQ+LCBcImNhcmRcIiB8IFwidGl0bGVcIiB8IFwiY2FsbGJhY2tcIj47XG5cbmV4cG9ydCBjbGFzcyBDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2UgZXh0ZW5kcyBTZXJ2aWNlPENvbGxhYm9yYXRpb25NYW5hZ2VyU2V0dGluZ3M+IGltcGxlbWVudHMgSUNhcmRQcm92aWRlciB7XG5cdGluaXRQcm9taXNlITogUHJvbWlzZTxDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2U+O1xuXG5cdC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBjYW1lbGNhc2Vcblx0X19pbXBsZW1lbnRzX19zYXBfaW5zaWdodHNfSUNhcmRQcm92aWRlciA9IHRydWU7XG5cblx0cHJpdmF0ZSBjaGFubmVsITogQ2FyZHNDaGFubmVsO1xuXG5cdHByaXZhdGUgaWQhOiBzdHJpbmc7XG5cblx0cHJpdmF0ZSBjb25zdW1lcnMhOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPjtcblxuXHRwcml2YXRlIG9uUmV0cmlldmVBdmFpbGFibGVDYXJkcz86ICgpID0+IFByb21pc2U8dm9pZD47XG5cblx0cHJpdmF0ZSBzaGFyZWRDYXJkcyE6IFNoYXJlZENhcmRbXTtcblxuXHRwcml2YXRlIHJlZ2lzdGVyZWQgPSBmYWxzZTtcblxuXHRwcml2YXRlIGFwcENvbXBvbmVudCE6IEFwcENvbXBvbmVudDtcblxuXHRpbml0KCk6IHZvaWQge1xuXHRcdHRoaXMuaW5pdFByb21pc2UgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZSkgPT4ge1xuXHRcdFx0dGhpcy5hcHBDb21wb25lbnQgPSB0aGlzLmdldENvbnRleHQoKS5zY29wZU9iamVjdCBhcyBBcHBDb21wb25lbnQ7XG5cdFx0XHRyZXNvbHZlKHRoaXMpO1xuXHRcdH0pO1xuXHR9XG5cblx0cHJpdmF0ZSBhc3luYyBnZXRDYXJkc0NoYW5uZWwoKTogUHJvbWlzZTxDYXJkc0NoYW5uZWw+IHtcblx0XHRjb25zdCB7IGRlZmF1bHQ6IGNhcmRIZWxwZXIgfSA9IGF3YWl0IGltcG9ydChcInNhcC9pbnNpZ2h0cy9DYXJkSGVscGVyXCIpO1xuXHRcdGNvbnN0IHNlcnZpY2UgPSBhd2FpdCBjYXJkSGVscGVyLmdldFNlcnZpY2VBc3luYyhcIlVJU2VydmljZVwiKTtcblx0XHRyZXR1cm4gc2VydmljZS5nZXRDYXJkc0NoYW5uZWwoKTtcblx0fVxuXG5cdHB1YmxpYyBhc3luYyBjb25uZWN0KHByb3ZpZGVySWQ6IHN0cmluZywgb25SZXRyaWV2ZUF2YWlsYWJsZUNhcmRzOiAoKSA9PiBQcm9taXNlPHZvaWQ+KTogUHJvbWlzZTxDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2U+IHtcblx0XHR0cnkge1xuXHRcdFx0Y29uc3QgY2hhbm5lbCA9IGF3YWl0IHRoaXMuZ2V0Q2FyZHNDaGFubmVsKCk7XG5cdFx0XHRpZiAoY2hhbm5lbC5pc0VuYWJsZWQoKSkge1xuXHRcdFx0XHR0aGlzLm9uUmV0cmlldmVBdmFpbGFibGVDYXJkcyA9IG9uUmV0cmlldmVBdmFpbGFibGVDYXJkcztcblx0XHRcdFx0dGhpcy5jaGFubmVsID0gY2hhbm5lbDtcblx0XHRcdFx0dGhpcy5pZCA9IHByb3ZpZGVySWQ7XG5cdFx0XHRcdHRoaXMuY29uc3VtZXJzID0ge307XG5cdFx0XHRcdHRoaXMuc2hhcmVkQ2FyZHMgPSBbXTtcblx0XHRcdFx0aWYgKHRoaXMucmVnaXN0ZXJlZCAhPT0gdHJ1ZSkge1xuXHRcdFx0XHRcdGF3YWl0IHRoaXMucmVnaXN0ZXJQcm92aWRlcigpO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMudXBkYXRlQ29uc3VtZXJzKCk7XG5cdFx0XHR9XG5cdFx0fSBjYXRjaCAoZXJyb3I6IHVua25vd24pIHtcblx0XHRcdExvZy5kZWJ1ZyhcIkNvbGxhYm9yYXRpb24gTWFuYWdlciBjb25uZWN0aW9uIGZhaWxlZFwiLCBlcnJvciBhcyBFcnJvciB8IHN0cmluZyk7XG5cdFx0fVxuXHRcdHJldHVybiB0aGlzO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIG9uQ29uc3VtZXJDb25uZWN0ZWQoaWQ6IHN0cmluZyk6IFByb21pc2U8bnVtYmVyPiB7XG5cdFx0aWYgKCF0aGlzLmNvbnN1bWVyc1tpZF0pIHtcblx0XHRcdHRoaXMuY29uc3VtZXJzW2lkXSA9IHRydWU7XG5cdFx0XHRhd2FpdCB0aGlzLm9uUmV0cmlldmVBdmFpbGFibGVDYXJkcz8uKCk7XG5cdFx0XHR0aGlzLnNoYXJlQXZhaWxhYmxlQ2FyZHMoaWQpO1xuXHRcdH1cblx0XHRyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKE9iamVjdC5rZXlzKHRoaXMuY29uc3VtZXJzKS5sZW5ndGgpO1xuXHR9XG5cblx0cHVibGljIGFzeW5jIG9uQ29uc3VtZXJEaXNjb25uZWN0ZWQoaWQ6IHN0cmluZyk6IFByb21pc2U8bnVtYmVyPiB7XG5cdFx0aWYgKHRoaXMuY29uc3VtZXJzW2lkXSkge1xuXHRcdFx0ZGVsZXRlIHRoaXMuY29uc3VtZXJzW2lkXTtcblx0XHR9XG5cdFx0cmV0dXJuIFByb21pc2UucmVzb2x2ZShPYmplY3Qua2V5cyh0aGlzLmNvbnN1bWVycykubGVuZ3RoKTtcblx0fVxuXG5cdHB1YmxpYyBvbkNhcmRSZXF1ZXN0ZWQoY29uc3VtZXJJZDogc3RyaW5nLCBjYXJkSWQ6IHN0cmluZyk6IFNoYXJlZENhcmQge1xuXHRcdGNvbnN0IGNhcmQgPSB0aGlzLnNoYXJlZENhcmRzLmZpbmQoKGNhcmQpID0+IGNhcmQ/LmlkID09PSBjYXJkSWQpO1xuXHRcdGNhcmQ/LmNhbGxiYWNrPy4oY2FyZC5jYXJkKTtcblx0XHRyZXR1cm4gY2FyZDtcblx0fVxuXG5cdHB1YmxpYyBhc3luYyBvblZpZXdVcGRhdGUoYWN0aXZlOiBib29sZWFuKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0Ly8gcmVnaXN0ZXIgLyB1bnJlZ2lzdGVyIGlmIHRoZSBzdGF0dXMgb2YgdGhlIGhvbWUgcGFnZSBjaGFuZ2VkXG5cdFx0aWYgKHRoaXMucmVnaXN0ZXJlZCAhPT0gYWN0aXZlKSB7XG5cdFx0XHRpZiAoYWN0aXZlKSB7XG5cdFx0XHRcdGF3YWl0IHRoaXMucmVnaXN0ZXJQcm92aWRlcigpO1xuXHRcdFx0XHR0aGlzLnVwZGF0ZUNvbnN1bWVycygpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0YXdhaXQgdGhpcy51bnJlZ2lzdGVyUHJvdmlkZXIoKTtcblx0XHRcdH1cblx0XHR9IGVsc2UgaWYgKHRoaXMucmVnaXN0ZXJlZCkge1xuXHRcdFx0dGhpcy51cGRhdGVDb25zdW1lcnMoKTtcblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIGFzeW5jIHJlZ2lzdGVyUHJvdmlkZXIoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0aWYgKHRoaXMuY2hhbm5lbCkge1xuXHRcdFx0YXdhaXQgdGhpcy5jaGFubmVsLnJlZ2lzdGVyUHJvdmlkZXIodGhpcy5pZCwgdGhpcyk7XG5cdFx0XHR0aGlzLnJlZ2lzdGVyZWQgPSB0cnVlO1xuXHRcdH1cblx0fVxuXG5cdHB1YmxpYyBhc3luYyB1bnJlZ2lzdGVyUHJvdmlkZXIoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0aWYgKHRoaXMuY2hhbm5lbCkge1xuXHRcdFx0YXdhaXQgdGhpcy5jaGFubmVsLnVucmVnaXN0ZXIodGhpcy5pZCk7XG5cdFx0XHR0aGlzLnJlZ2lzdGVyZWQgPSBmYWxzZTtcblx0XHRcdHRoaXMuY29uc3VtZXJzID0ge307XG5cdFx0XHR0aGlzLnNoYXJlZENhcmRzID0gW107XG5cdFx0XHR0aGlzLm9uUmV0cmlldmVBdmFpbGFibGVDYXJkcyA9IHVuZGVmaW5lZDtcblx0XHR9XG5cdH1cblxuXHRwcml2YXRlIHVwZGF0ZUNvbnN1bWVycygpOiB2b2lkIHtcblx0XHR0aGlzLnNoYXJlQXZhaWxhYmxlQ2FyZHMoKTtcblx0fVxuXG5cdHB1YmxpYyBzaGFyZUF2YWlsYWJsZUNhcmRzKGNvbnN1bWVySWQgPSBcIipcIik6IHZvaWQge1xuXHRcdHRoaXM/LmNoYW5uZWw/LnB1Ymxpc2hBdmFpbGFibGVDYXJkcyh0aGlzLmlkLCB0aGlzLnNoYXJlZENhcmRzLCBjb25zdW1lcklkKTtcblx0fVxuXG5cdHB1YmxpYyBhZGRDYXJkc1RvQ29sbGFib3JhdGlvbk1hbmFnZXIoY2FyZHM6IFJlY29yZDxzdHJpbmcsIFdyYXBwZWRDYXJkPiwgcGFyZW50QXBwSWQ6IHN0cmluZyk6IHZvaWQge1xuXHRcdHRoaXMuc2hhcmVkQ2FyZHMgPSBbXTtcblx0XHRmb3IgKGNvbnN0IFtpZCwgY2FyZF0gb2YgT2JqZWN0LmVudHJpZXMoY2FyZHMpKSB7XG5cdFx0XHR0aGlzLnNoYXJlZENhcmRzLnB1c2goe1xuXHRcdFx0XHRpZDogaWQsXG5cdFx0XHRcdHRpdGxlOiBjYXJkLnRpdGxlLFxuXHRcdFx0XHRwYXJlbnRBcHBJZDogcGFyZW50QXBwSWQsXG5cdFx0XHRcdGNhbGxiYWNrOiBjYXJkLmNhbGxiYWNrLFxuXHRcdFx0XHRjYXJkOiBjYXJkLmNhcmRcblx0XHRcdH0pO1xuXHRcdH1cblx0fVxuXG5cdHB1YmxpYyBhc3luYyBnZXREZXNpZ25UaW1lQ2FyZChjYXJkVHlwZTogUmV0cmlldmVDYXJkVHlwZSk6IFByb21pc2U8UmVjb3JkPHN0cmluZywgdW5rbm93bj4gfCB1bmRlZmluZWQ+IHtcblx0XHRyZXR1cm4gbmV3IFByb21pc2UoKHJlc29sdmUsIHJlamVjdCkgPT4ge1xuXHRcdFx0TGlicmFyeS5sb2FkKHsgbmFtZTogXCJzYXAvY2FyZHMvYXAvY29tbW9uXCIgfSlcblx0XHRcdFx0LnRoZW4oKCk6IHZvaWQgPT4ge1xuXHRcdFx0XHRcdHNhcC51aS5yZXF1aXJlKFtcInNhcC9jYXJkcy9hcC9jb21tb24vc2VydmljZXMvUmV0cmlldmVDYXJkXCJdLCBhc3luYyAoLi4ucGFyYW1zOiB1bmtub3duW10pID0+IHtcblx0XHRcdFx0XHRcdGNvbnN0IHJldHJpZXZlQ2FyZCA9IHBhcmFtc1swXSBhcyB0eXBlb2YgUmV0cmlldmVDYXJkO1xuXHRcdFx0XHRcdFx0bGV0IGdlbmVyYXRlZE1hbmlmZXN0O1xuXHRcdFx0XHRcdFx0Y29uc3QgYXBwQ29tcG9uZW50ID0gdGhpcy5hcHBDb21wb25lbnQ7XG5cdFx0XHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdFx0XHRnZW5lcmF0ZWRNYW5pZmVzdCA9IGF3YWl0IHJldHJpZXZlQ2FyZC5nZXRPYmplY3RQYWdlQ2FyZE1hbmlmZXN0Rm9yUHJldmlldyhhcHBDb21wb25lbnQsIHtcblx0XHRcdFx0XHRcdFx0XHRjYXJkVHlwZTogY2FyZFR5cGVcblx0XHRcdFx0XHRcdFx0fSk7XG5cdFx0XHRcdFx0XHR9IGNhdGNoIChlcnJvcikge1xuXHRcdFx0XHRcdFx0XHRMb2cuZXJyb3IoZXJyb3IgYXMgc3RyaW5nKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdHJlc29sdmUoZ2VuZXJhdGVkTWFuaWZlc3QpO1xuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHRcdHJldHVybjtcblx0XHRcdFx0fSlcblx0XHRcdFx0LmNhdGNoKGZ1bmN0aW9uIChlcnJvcikge1xuXHRcdFx0XHRcdExvZy5lcnJvcihlcnJvciBhcyBzdHJpbmcpO1xuXHRcdFx0XHRcdHJlamVjdCgpO1xuXHRcdFx0XHR9KTtcblx0XHR9KTtcblx0fVxuXG5cdHB1YmxpYyBwdWJsaXNoQ2FyZChjYXJkOiBDYXJkTWFuaWZlc3QpOiB2b2lkIHtcblx0XHR0aGlzLmNoYW5uZWwucHVibGlzaENhcmQodGhpcy5pZCwgeyBpZDogY2FyZFtcInNhcC5hcHBcIl0uaWQsIGRlc2NyaXB0b3JDb250ZW50OiBjYXJkIH0sIFwiKlwiKTtcblx0fVxufVxuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2VGYWN0b3J5IGV4dGVuZHMgU2VydmljZUZhY3Rvcnk8Q29sbGFib3JhdGlvbk1hbmFnZXJTZXR0aW5ncz4ge1xuXHRzdGF0aWMgc2VydmljZUNsYXNzID0gQ29sbGFib3JhdGlvbk1hbmFnZXJTZXJ2aWNlO1xuXG5cdHByaXZhdGUgaW5zdGFuY2UhOiBDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2U7XG5cblx0YXN5bmMgY3JlYXRlSW5zdGFuY2Uob1NlcnZpY2VDb250ZXh0OiBTZXJ2aWNlQ29udGV4dDxDb2xsYWJvcmF0aW9uTWFuYWdlclNldHRpbmdzPik6IFByb21pc2U8Q29sbGFib3JhdGlvbk1hbmFnZXJTZXJ2aWNlPiB7XG5cdFx0dGhpcy5pbnN0YW5jZSA9IG5ldyBDb2xsYWJvcmF0aW9uTWFuYWdlclNlcnZpY2Uob1NlcnZpY2VDb250ZXh0KTtcblx0XHRyZXR1cm4gdGhpcy5pbnN0YW5jZS5pbml0UHJvbWlzZTtcblx0fVxuXG5cdGdldEluc3RhbmNlKCk6IENvbGxhYm9yYXRpb25NYW5hZ2VyU2VydmljZSB7XG5cdFx0cmV0dXJuIHRoaXMuaW5zdGFuY2U7XG5cdH1cblxuXHRzaGFyZUF2YWlsYWJsZUNhcmRzKCk6IHZvaWQge1xuXHRcdHRoaXMuaW5zdGFuY2Uuc2hhcmVBdmFpbGFibGVDYXJkcygpO1xuXHR9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQWdCYUEsMkJBQTJCLDBCQUFBQyxRQUFBO0lBQUEsU0FBQUQsNEJBQUE7TUFBQSxJQUFBRSxLQUFBO01BQUEsU0FBQUMsSUFBQSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsRUFBQUMsSUFBQSxPQUFBQyxLQUFBLENBQUFKLElBQUEsR0FBQUssSUFBQSxNQUFBQSxJQUFB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
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import Log from "sap/base/Log";
|
|
2
|
+
import type RetrieveCard from "sap/cards/ap/common/services/RetrieveCard";
|
|
3
|
+
import type { RetrieveCardType } from "sap/cards/ap/common/services/RetrieveCard";
|
|
2
4
|
import type { CardManifest } from "sap/insights/CardHelper";
|
|
3
5
|
import type CardsChannel from "sap/insights/CardsChannel";
|
|
4
6
|
import type { ICardProvider, SharedCard } from "sap/insights/CardsChannel";
|
|
7
|
+
import Library from "sap/ui/core/Lib";
|
|
5
8
|
import Service from "sap/ui/core/service/Service";
|
|
6
9
|
import ServiceFactory from "sap/ui/core/service/ServiceFactory";
|
|
7
10
|
import type { ServiceContext } from "types/metamodel_types";
|
|
8
11
|
import type AppComponent from "../AppComponent";
|
|
9
|
-
import type { RetrieveCardType } from "sap/cards/ap/common/services/RetrieveCard";
|
|
10
12
|
|
|
11
13
|
type CollaborationManagerSettings = {};
|
|
12
14
|
|
|
@@ -139,18 +141,30 @@ export class CollaborationManagerService extends Service<CollaborationManagerSet
|
|
|
139
141
|
}
|
|
140
142
|
}
|
|
141
143
|
|
|
142
|
-
public async getDesignTimeCard(cardType: RetrieveCardType): Promise<Record<string,unknown> | undefined> {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
144
|
+
public async getDesignTimeCard(cardType: RetrieveCardType): Promise<Record<string, unknown> | undefined> {
|
|
145
|
+
return new Promise((resolve, reject) => {
|
|
146
|
+
Library.load({ name: "sap/cards/ap/common" })
|
|
147
|
+
.then((): void => {
|
|
148
|
+
sap.ui.require(["sap/cards/ap/common/services/RetrieveCard"], async (...params: unknown[]) => {
|
|
149
|
+
const retrieveCard = params[0] as typeof RetrieveCard;
|
|
150
|
+
let generatedManifest;
|
|
151
|
+
const appComponent = this.appComponent;
|
|
152
|
+
try {
|
|
153
|
+
generatedManifest = await retrieveCard.getObjectPageCardManifestForPreview(appComponent, {
|
|
154
|
+
cardType: cardType
|
|
155
|
+
});
|
|
156
|
+
} catch (error) {
|
|
157
|
+
Log.error(error as string);
|
|
158
|
+
}
|
|
159
|
+
resolve(generatedManifest);
|
|
160
|
+
});
|
|
161
|
+
return;
|
|
162
|
+
})
|
|
163
|
+
.catch(function (error) {
|
|
164
|
+
Log.error(error as string);
|
|
165
|
+
reject();
|
|
166
|
+
});
|
|
167
|
+
});
|
|
154
168
|
}
|
|
155
169
|
|
|
156
170
|
public publishCard(card: CardManifest): void {
|
|
@@ -43,6 +43,11 @@ sap.ui.define(["sap/base/Log", "sap/ui/VersionInfo", "sap/ui/core/Lib", "sap/ui/
|
|
|
43
43
|
intent: "IntelligentPrompt-explain",
|
|
44
44
|
library: "ux.eng.fioriai.reuse",
|
|
45
45
|
imports: "ux/eng/fioriai/reuse/errorexplanation/ErrorExplanation"
|
|
46
|
+
},
|
|
47
|
+
EasyEdit: {
|
|
48
|
+
intent: "IntelligentPrompt-fill",
|
|
49
|
+
library: "ux.eng.fioriai.reuse",
|
|
50
|
+
imports: "ux/eng/fioriai/reuse/easyfill/EasyFill"
|
|
46
51
|
}
|
|
47
52
|
};
|
|
48
53
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
@@ -58,6 +63,7 @@ sap.ui.define(["sap/base/Log", "sap/ui/VersionInfo", "sap/ui/core/Lib", "sap/ui/
|
|
|
58
63
|
ContextSharingSupported: false,
|
|
59
64
|
SmartSummarize: false,
|
|
60
65
|
MagicFiltering: false,
|
|
66
|
+
EasyEdit: false,
|
|
61
67
|
ErrorExplanation: false,
|
|
62
68
|
DisableInputAssistance: false,
|
|
63
69
|
HiddenDraft: false,
|
|
@@ -268,4 +274,4 @@ sap.ui.define(["sap/base/Log", "sap/ui/VersionInfo", "sap/ui/core/Lib", "sap/ui/
|
|
|
268
274
|
_exports.getMSTeamsActive = getMSTeamsActive;
|
|
269
275
|
return _exports;
|
|
270
276
|
}, false);
|
|
271
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPcHRpb25hbEZlYXR1cmVzIiwiU21hcnRTdW1tYXJpemUiLCJpbnRlbnQiLCJsaWJyYXJ5IiwiaW1wb3J0cyIsIk1hZ2ljRmlsdGVyaW5nIiwiRXJyb3JFeHBsYW5hdGlvbiIsIkRlZmF1bHRFbnZpcm9ubWVudENhcGFiaWxpdGllcyIsIkNoYXJ0IiwiTWljcm9DaGFydCIsIkNvbGxhYm9yYXRpb24iLCJVU2hlbGwiLCJJbnRlbnRCYXNlZE5hdmlnYXRpb24iLCJBcHBTdGF0ZSIsIkluc2lnaHRzU3VwcG9ydGVkIiwiQ29udGV4dFNoYXJpbmdTdXBwb3J0ZWQiLCJEaXNhYmxlSW5wdXRBc3Npc3RhbmNlIiwiSGlkZGVuRHJhZnQiLCJsb2FkTGlicmFyeSIsImxpYnJhcnlOYW1lIiwiRW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlIiwicmVzb2x2ZUxpYnJhcnkiLCJfZXhwb3J0cyIsIl9TZXJ2aWNlIiwiX3RoaXMiLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiYXJncyIsIkFycmF5IiwiX2tleSIsImNhbGwiLCJvcHRpb25hbEZlYXR1cmVMaWJyYXJpZXMiLCJfaW5oZXJpdHNMb29zZSIsIl9wcm90byIsInByb3RvdHlwZSIsInByZXBhcmVGZWF0dXJlIiwiZmVhdHVyZSIsIkVycm9yIiwiTGlicmFyeSIsImxvYWQiLCJpbml0aWFsaXplIiwib0NvbnRleHQiLCJnZXRDb250ZXh0IiwiZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMiLCJPYmplY3QiLCJhc3NpZ24iLCJzaGVsbENvbnRhaW5lciIsInNhcCIsInVpIiwicmVxdWlyZSIsInZlcnNpb25JbmZvIiwiVmVyc2lvbkluZm8iLCJsaWJyYXJpZXMiLCJzb21lIiwibGliIiwibmFtZSIsImhpZGVEcmFmdCIsInNjb3BlT2JqZWN0IiwiZ2V0TWFuaWZlc3RFbnRyeSIsImFwcCIsImVuYWJsZWQiLCJzdGF5T25DdXJyZW50UGFnZUFmdGVyU2F2ZSIsInN0YXlPbkN1cnJlbnRQYWdlQWZ0ZXJDYW5jZWwiLCJoaWRlQ3JlYXRlTmV4dCIsIm5hdmlnYXRpb25TZXJ2aWNlIiwiZ2V0U2VydmljZUFzeW5jIiwiZmVhdHVyZU5hbWUiLCJlbnRyaWVzIiwidXJsIiwicmVzb2x2ZUludGVudCIsIl9fdWk1X3JlcXVpcmVfYXN5bmMiLCJlIiwiTG9nIiwiaW5mbyIsIm1lc3NhZ2UiLCJzZXR0aW5ncyIsIlByb21pc2UiLCJyZXNvbHZlIiwidGhlbiIsImNhdGNoIiwic2V0Q2FwYWJpbGl0aWVzIiwib0NhcGFiaWxpdGllcyIsInNldENhcGFiaWxpdHkiLCJjYXBhYmlsaXR5IiwidmFsdWUiLCJnZXRDYXBhYmlsaXRpZXMiLCJpc0luc2lnaHRzRW5hYmxlZCIsImlzTGliQXZhaWxhYmxlIiwiQ2FyZEhlbHBlciIsImdldE1TVGVhbXNBY3RpdmUiLCJpc0NvbnRleHRTaGFyaW5nRW5hYmxlZCIsImdldEludGVyZmFjZSIsIlNlcnZpY2UiLCJFbnZpcm9ubWVudFNlcnZpY2VGYWN0b3J5IiwiX1NlcnZpY2VGYWN0b3J5IiwiYXBwbHkiLCJfcHJvdG8yIiwiY3JlYXRlSW5zdGFuY2UiLCJvU2VydmljZUNvbnRleHQiLCJlbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UiLCJTZXJ2aWNlRmFjdG9yeSIsImlzVGVhbXNNb2RlQWN0aXZlIiwiZGVmYXVsdCIsIkNvbGxhYm9yYXRpb25IZWxwZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbIkVudmlyb25tZW50U2VydmljZUZhY3RvcnkudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IExvZyBmcm9tIFwic2FwL2Jhc2UvTG9nXCI7XG5pbXBvcnQgdHlwZSB7IEhpZGRlbkRyYWZ0IH0gZnJvbSBcInNhcC9mZS9jb3JlL2NvbnZlcnRlcnMvTWFuaWZlc3RTZXR0aW5nc1wiO1xuaW1wb3J0IFZlcnNpb25JbmZvIGZyb20gXCJzYXAvdWkvVmVyc2lvbkluZm9cIjtcbmltcG9ydCBMaWJyYXJ5IGZyb20gXCJzYXAvdWkvY29yZS9MaWJcIjtcbmltcG9ydCBTZXJ2aWNlIGZyb20gXCJzYXAvdWkvY29yZS9zZXJ2aWNlL1NlcnZpY2VcIjtcbmltcG9ydCBTZXJ2aWNlRmFjdG9yeSBmcm9tIFwic2FwL3VpL2NvcmUvc2VydmljZS9TZXJ2aWNlRmFjdG9yeVwiO1xuaW1wb3J0IHR5cGUgTmF2aWdhdGlvbiBmcm9tIFwic2FwL3VzaGVsbC9zZXJ2aWNlcy9OYXZpZ2F0aW9uXCI7XG5pbXBvcnQgdHlwZSB7IFNlcnZpY2VDb250ZXh0IH0gZnJvbSBcInR5cGVzL21ldGFtb2RlbF90eXBlc1wiO1xuXG50eXBlIE9wdGlvbmFsRmVhdHVyZURlZmluaXRpb24gPSB7XG5cdGludGVudDogc3RyaW5nO1xuXHRsaWJyYXJ5OiBzdHJpbmc7XG5cdGltcG9ydHM/OiBzdHJpbmc7XG59O1xuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciB0aGUgb3B0aW9uYWwgZmVhdHVyZXMuXG4gKi9cbmNvbnN0IE9wdGlvbmFsRmVhdHVyZXM6IFJlY29yZDxzdHJpbmcsIE9wdGlvbmFsRmVhdHVyZURlZmluaXRpb24+ID0ge1xuXHRTbWFydFN1bW1hcml6ZTogeyBpbnRlbnQ6IFwiSW50ZWxsaWdlbnRQcm9tcHQtc3VtbWFyaXplXCIsIGxpYnJhcnk6IFwidXguZW5nLmZpb3JpYWkucmV1c2VcIiwgaW1wb3J0czogXCJ1eC9lbmcvZmlvcmlhaS9yZXVzZS9saWJyYXJ5XCIgfSxcblx0TWFnaWNGaWx0ZXJpbmc6IHtcblx0XHRpbnRlbnQ6IFwiSW50ZWxsaWdlbnRQcm9tcHQtZmlsdGVyXCIsXG5cdFx0bGlicmFyeTogXCJ1eC5lbmcuZmlvcmlhaS5yZXVzZVwiLFxuXHRcdGltcG9ydHM6IFwidXgvZW5nL2Zpb3JpYWkvcmV1c2UvZWFzeWZpbHRlci9FYXN5RmlsdGVyXCJcblx0fSxcblx0RXJyb3JFeHBsYW5hdGlvbjoge1xuXHRcdGludGVudDogXCJJbnRlbGxpZ2VudFByb21wdC1leHBsYWluXCIsXG5cdFx0bGlicmFyeTogXCJ1eC5lbmcuZmlvcmlhaS5yZXVzZVwiLFxuXHRcdGltcG9ydHM6IFwidXgvZW5nL2Zpb3JpYWkvcmV1c2UvZXJyb3JleHBsYW5hdGlvbi9FcnJvckV4cGxhbmF0aW9uXCJcblx0fVxufTtcbnR5cGUgRmVhdHVyZU5hbWUgPSBrZXlvZiB0eXBlb2YgT3B0aW9uYWxGZWF0dXJlcztcblxuZXhwb3J0IHR5cGUgRW52aXJvbm1lbnRDYXBhYmlsaXRpZXMgPSB7XG5cdENoYXJ0OiBib29sZWFuO1xuXHRNaWNyb0NoYXJ0OiBib29sZWFuO1xuXHRDb2xsYWJvcmF0aW9uOiBib29sZWFuO1xuXHRVU2hlbGw6IGJvb2xlYW47XG5cdEludGVudEJhc2VkTmF2aWdhdGlvbjogYm9vbGVhbjtcblx0QXBwU3RhdGU6IGJvb2xlYW47XG5cdERpc2FibGVJbnB1dEFzc2lzdGFuY2U6IGJvb2xlYW47XG5cdEluc2lnaHRzU3VwcG9ydGVkOiBib29sZWFuO1xuXHRDb250ZXh0U2hhcmluZ1N1cHBvcnRlZDogYm9vbGVhbjtcblx0SGlkZGVuRHJhZnQ6IEhpZGRlbkRyYWZ0IHwgYm9vbGVhbjtcbn0gJiB7XG5cdGxvYWRMaWJyYXJ5PyhsaWJyYXJ5OiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+O1xufSAmIHtcblx0W2ZlYXR1cmVOYW1lOiBzdHJpbmddOiBib29sZWFuO1xufTtcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9iYW4tdHMtY29tbWVudFxuLy8gQHRzLWlnbm9yZVxuZXhwb3J0IGNvbnN0IERlZmF1bHRFbnZpcm9ubWVudENhcGFiaWxpdGllczogUmVhZG9ubHk8RW52aXJvbm1lbnRDYXBhYmlsaXRpZXM+ID0ge1xuXHRDaGFydDogdHJ1ZSxcblx0TWljcm9DaGFydDogdHJ1ZSxcblx0Q29sbGFib3JhdGlvbjogZmFsc2UsXG5cdFVTaGVsbDogdHJ1ZSxcblx0SW50ZW50QmFzZWROYXZpZ2F0aW9uOiB0cnVlLFxuXHRBcHBTdGF0ZTogdHJ1ZSxcblx0SW5zaWdodHNTdXBwb3J0ZWQ6IGZhbHNlLFxuXHRDb250ZXh0U2hhcmluZ1N1cHBvcnRlZDogZmFsc2UsXG5cdFNtYXJ0U3VtbWFyaXplOiBmYWxzZSxcblx0TWFnaWNGaWx0ZXJpbmc6IGZhbHNlLFxuXHRFcnJvckV4cGxhbmF0aW9uOiBmYWxzZSxcblx0RGlzYWJsZUlucHV0QXNzaXN0YW5jZTogZmFsc2UsXG5cdEhpZGRlbkRyYWZ0OiBmYWxzZSxcblx0bG9hZExpYnJhcnk6IGFzeW5jIChsaWJyYXJ5TmFtZSk6IFByb21pc2U8Ym9vbGVhbj4gPT4ge1xuXHRcdHJldHVybiBFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UucmVzb2x2ZUxpYnJhcnkobGlicmFyeU5hbWUpO1xuXHR9XG59O1xuZXhwb3J0IGNsYXNzIEVudmlyb25tZW50Q2FwYWJpbGl0aWVzU2VydmljZSBleHRlbmRzIFNlcnZpY2U8RW52aXJvbm1lbnRDYXBhYmlsaXRpZXM+IHtcblx0cmVqZWN0Rm4hOiAoKSA9PiB2b2lkO1xuXG5cdGluaXRQcm9taXNlITogUHJvbWlzZTx0aGlzPjtcblxuXHRlbnZpcm9ubWVudENhcGFiaWxpdGllcyE6IEVudmlyb25tZW50Q2FwYWJpbGl0aWVzO1xuXG5cdC8vICE6IG1lYW5zIHRoYXQgd2Uga25vdyBpdCB3aWxsIGJlIGFzc2lnbmVkIGJlZm9yZSB1c2FnZVxuXHRwcml2YXRlIG9wdGlvbmFsRmVhdHVyZUxpYnJhcmllczogUGFydGlhbDxSZWNvcmQ8RmVhdHVyZU5hbWUsIHsgdXJsOiBzdHJpbmc7IG5hbWU6IHN0cmluZzsgaW1wb3J0cz86IHN0cmluZyB9Pj4gPSB7fTtcblxuXHQvKipcblx0ICogUHJlcGFyZXMgdGhlIGZlYXR1cmUgZm9yIHVzYWdlLlxuXHQgKlxuXHQgKiBUaGlzIGZ1bmN0aW9uIGxvYWRzIHRoZSBsaWJyYXJ5IHJlZ2lzdGVyZWQgZm9yIHRoZSBmZWF0dXJlLlxuXHQgKiBAcGFyYW0gZmVhdHVyZSBUaGUgZmVhdHVyZSB0byBwcmVwYXJlLlxuXHQgKiBAdGhyb3dzIEVycm9yIGlmIHRoZSBmZWF0dXJlIGlzIHVuYXZhaWxhYmxlLlxuXHQgKi9cblx0YXN5bmMgcHJlcGFyZUZlYXR1cmUoZmVhdHVyZTogRmVhdHVyZU5hbWUpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRjb25zdCBsaWJyYXJ5ID0gdGhpcy5vcHRpb25hbEZlYXR1cmVMaWJyYXJpZXNbZmVhdHVyZV07XG5cdFx0aWYgKCFsaWJyYXJ5KSB7XG5cdFx0XHR0aHJvdyBuZXcgRXJyb3IoYEZlYXR1cmUgJyR7ZmVhdHVyZX0nIGlzIHVuYXZhaWxhYmxlYCk7XG5cdFx0fVxuXG5cdFx0YXdhaXQgTGlicmFyeS5sb2FkKGxpYnJhcnkpO1xuXHR9XG5cblx0YXN5bmMgaW5pdGlhbGl6ZSgpOiBQcm9taXNlPHZvaWQ+IHtcblx0XHRjb25zdCBvQ29udGV4dCA9IHRoaXMuZ2V0Q29udGV4dCgpO1xuXHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMgPSBPYmplY3QuYXNzaWduKHt9LCBEZWZhdWx0RW52aXJvbm1lbnRDYXBhYmlsaXRpZXMpIGFzIEVudmlyb25tZW50Q2FwYWJpbGl0aWVzO1xuXG5cdFx0Y29uc3Qgc2hlbGxDb250YWluZXIgPSBzYXAudWkucmVxdWlyZShcInNhcC91c2hlbGwvQ29udGFpbmVyXCIpO1xuXHRcdGNvbnN0IHZlcnNpb25JbmZvID0gYXdhaXQgVmVyc2lvbkluZm8ubG9hZCgpO1xuXHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMuQ2hhcnQgPSB2ZXJzaW9uSW5mby5saWJyYXJpZXMuc29tZSgobGliKSA9PiBsaWIubmFtZSA9PT0gXCJzYXAudml6XCIpO1xuXHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMuTWljcm9DaGFydCA9IHZlcnNpb25JbmZvLmxpYnJhcmllcy5zb21lKChsaWIpID0+IGxpYi5uYW1lID09PSBcInNhcC5zdWl0ZS51aS5taWNyb2NoYXJ0XCIpO1xuXHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMuQ29sbGFib3JhdGlvbiA9IHZlcnNpb25JbmZvLmxpYnJhcmllcy5zb21lKChsaWIpID0+IGxpYi5uYW1lID09PSBcInNhcC5zdWl0ZS51aS5jb21tb25zXCIpO1xuXHRcdGlmICh0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzLkNvbGxhYm9yYXRpb24pIHtcblx0XHRcdGF3YWl0IEVudmlyb25tZW50Q2FwYWJpbGl0aWVzU2VydmljZS5yZXNvbHZlTGlicmFyeShcInNhcC5zdWl0ZS51aS5jb21tb25zXCIpO1xuXHRcdH1cblx0XHR0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzLlVTaGVsbCA9ICEhc2hlbGxDb250YWluZXI7XG5cdFx0dGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllcy5JbnRlbnRCYXNlZE5hdmlnYXRpb24gPSAhIXNoZWxsQ29udGFpbmVyO1xuXHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMuSW5zaWdodHNTdXBwb3J0ZWQgPSB2ZXJzaW9uSW5mby5saWJyYXJpZXMuc29tZSgobGliKSA9PiBsaWIubmFtZSA9PT0gXCJzYXAuaW5zaWdodHNcIik7XG5cdFx0dGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllcy5Db250ZXh0U2hhcmluZ1N1cHBvcnRlZCA9IHZlcnNpb25JbmZvLmxpYnJhcmllcy5zb21lKChsaWIpID0+IGxpYi5uYW1lID09PSBcInNhcC5pbnNpZ2h0c1wiKTtcblx0XHRjb25zdCBoaWRlRHJhZnQgPSBvQ29udGV4dC5zY29wZU9iamVjdC5nZXRNYW5pZmVzdEVudHJ5KFwic2FwLmZlXCIpPy5hcHA/LmhpZGVEcmFmdDtcblx0XHRpZiAoaGlkZURyYWZ0Py5lbmFibGVkKSB7XG5cdFx0XHR0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzLkhpZGRlbkRyYWZ0ID0ge1xuXHRcdFx0XHRlbmFibGVkOiB0cnVlLFxuXHRcdFx0XHRzdGF5T25DdXJyZW50UGFnZUFmdGVyU2F2ZTogaGlkZURyYWZ0LnN0YXlPbkN1cnJlbnRQYWdlQWZ0ZXJTYXZlLFxuXHRcdFx0XHRzdGF5T25DdXJyZW50UGFnZUFmdGVyQ2FuY2VsOiBoaWRlRHJhZnQuc3RheU9uQ3VycmVudFBhZ2VBZnRlckNhbmNlbCxcblx0XHRcdFx0aGlkZUNyZWF0ZU5leHQ6IGhpZGVEcmFmdC5oaWRlQ3JlYXRlTmV4dFxuXHRcdFx0fTtcblx0XHR9XG5cdFx0Ly8gSW5pdGlhbGl6ZSBvcHRpb25hbCBmZWF0dXJlc1xuXHRcdGNvbnN0IG5hdmlnYXRpb25TZXJ2aWNlOiBOYXZpZ2F0aW9uIHwgdW5kZWZpbmVkID0gYXdhaXQgc2hlbGxDb250YWluZXI/LmdldFNlcnZpY2VBc3luYyhcIk5hdmlnYXRpb25cIik7XG5cblx0XHRmb3IgKGNvbnN0IFtmZWF0dXJlTmFtZSwgZmVhdHVyZV0gb2YgT2JqZWN0LmVudHJpZXMoT3B0aW9uYWxGZWF0dXJlcykpIHtcblx0XHRcdC8vIFRoZSBmZWF0dXJlIGlzIG9mZiBieSBkZWZhdWx0LiBPbmx5IGlmIHRoZXJlIGlzIGEgc2hlbGwgYW5kIHRoZSBpbnRlbnQgcmVzb2x2ZXMsIHRoZSBmZWF0dXJlIGlzIGF2YWlsYWJsZVxuXHRcdFx0dGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllc1tmZWF0dXJlTmFtZV0gPSBmYWxzZTtcblxuXHRcdFx0aWYgKG5hdmlnYXRpb25TZXJ2aWNlKSB7XG5cdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0Ly8gUmVzb2x2ZSBieSBpbnRlbnQ6XG5cdFx0XHRcdFx0Ly8gIC0gaW50ZW50IHJlc29sdmVzIFx0XHQgID09PiBmZWF0dXJlIGF2YWlsYWJsZSwgcHJvdmlkZWQgYnkgdGhlIGxpYnJhcnkgbG9jYXRlZCBhdCB0aGUgcmV0dXJuZWQgVVJMXG5cdFx0XHRcdFx0Ly8gIC0gaW50ZW50IGRvZXMgbm90IHJlc29sdmUgPT0+IHJlc29sdmVJbnRlbnQoKSB0aHJvd3MgYW4gZXJyb3IgPT0+IGZlYXR1cmUgdW5hdmFpbGFibGVcblx0XHRcdFx0XHRjb25zdCB7IHVybCB9ID0gYXdhaXQgbmF2aWdhdGlvblNlcnZpY2UucmVzb2x2ZUludGVudChgIyR7ZmVhdHVyZS5pbnRlbnR9YCk7XG5cdFx0XHRcdFx0dGhpcy5vcHRpb25hbEZlYXR1cmVMaWJyYXJpZXNbZmVhdHVyZU5hbWVdID0geyBuYW1lOiBmZWF0dXJlLmxpYnJhcnksIHVybDogdXJsLCBpbXBvcnRzOiBmZWF0dXJlLmltcG9ydHMgfTtcblxuXHRcdFx0XHRcdGlmIChmZWF0dXJlLmltcG9ydHMpIHtcblx0XHRcdFx0XHRcdHRyeSB7XG5cdFx0XHRcdFx0XHRcdGF3YWl0IExpYnJhcnkubG9hZCh0aGlzLm9wdGlvbmFsRmVhdHVyZUxpYnJhcmllc1tmZWF0dXJlTmFtZV0hKTtcblx0XHRcdFx0XHRcdFx0YXdhaXQgaW1wb3J0KGZlYXR1cmUuaW1wb3J0cyk7XG5cdFx0XHRcdFx0XHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXNbZmVhdHVyZU5hbWVdID0gdHJ1ZTtcblx0XHRcdFx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdFx0XHRcdFx0dGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllc1tmZWF0dXJlTmFtZV0gPSBmYWxzZTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdFx0dGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllc1tmZWF0dXJlTmFtZV0gPSB0cnVlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0XHRcdC8vIEZlYXR1cmUgdW5hdmFpbGFibGVcblx0XHRcdFx0XHRMb2cuaW5mbyhgRmVhdHVyZSB1bmF2YWlsYWJsZSAke2ZlYXR1cmVOYW1lfTogJHsoZSBhcyB7IG1lc3NhZ2U6IHN0cmluZzsgc3RhY2s6IHN0cmluZyB9KT8ubWVzc2FnZX1gKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMgPSBPYmplY3QuYXNzaWduKHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMsIG9Db250ZXh0LnNldHRpbmdzKTtcblx0fVxuXG5cdHN0YXRpYyBhc3luYyByZXNvbHZlTGlicmFyeShsaWJyYXJ5TmFtZTogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG5cdFx0cmV0dXJuIG5ldyBQcm9taXNlKGZ1bmN0aW9uIChyZXNvbHZlKSB7XG5cdFx0XHRMaWJyYXJ5LmxvYWQoeyBuYW1lOiBgJHtsaWJyYXJ5TmFtZX1gIH0pXG5cdFx0XHRcdC50aGVuKGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0XHRyZXNvbHZlKHRydWUpO1xuXHRcdFx0XHRcdHJldHVybjtcblx0XHRcdFx0fSlcblx0XHRcdFx0LmNhdGNoKGZ1bmN0aW9uICgpIHtcblx0XHRcdFx0XHRyZXNvbHZlKGZhbHNlKTtcblx0XHRcdFx0fSk7XG5cdFx0fSk7XG5cdH1cblxuXHRwdWJsaWMgc2V0Q2FwYWJpbGl0aWVzKG9DYXBhYmlsaXRpZXM6IEVudmlyb25tZW50Q2FwYWJpbGl0aWVzKTogdm9pZCB7XG5cdFx0dGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllcyA9IG9DYXBhYmlsaXRpZXM7XG5cdH1cblxuXHRwdWJsaWMgc2V0Q2FwYWJpbGl0eShjYXBhYmlsaXR5OiBrZXlvZiBFbnZpcm9ubWVudENhcGFiaWxpdGllcywgdmFsdWU6IGJvb2xlYW4pOiB2b2lkIHtcblx0XHR0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzW2NhcGFiaWxpdHldID0gdmFsdWU7XG5cdH1cblxuXHRwdWJsaWMgZ2V0Q2FwYWJpbGl0aWVzKCk6IEVudmlyb25tZW50Q2FwYWJpbGl0aWVzIHtcblx0XHRyZXR1cm4gdGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllcztcblx0fVxuXG5cdC8qKlxuXHQgKiBDaGVja3MgaWYgaW5zaWdodHMgYXJlIGVuYWJsZWQgb24gdGhlIGhvbWUgcGFnZS5cblx0ICogQHJldHVybnMgVHJ1ZSBpZiBpbnNpZ2h0cyBhcmUgZW5hYmxlZCBvbiB0aGUgaG9tZSBwYWdlLlxuXHQgKi9cblx0YXN5bmMgaXNJbnNpZ2h0c0VuYWJsZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG5cdFx0Ly8gaW5zaWdodHMgaXMgZW5hYmxlZFxuXHRcdHJldHVybiBuZXcgUHJvbWlzZTxib29sZWFuPihhc3luYyAocmVzb2x2ZSkgPT4ge1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0Ly8gZ2V0U2VydmljZUFzeW5jIGZyb20gc3VpdGUvaW5zaWdodHMgY2hlY2tzIHRvIHNlZSBpZiBteUhvbWUgaXMgY29uZmlndXJlZCB3aXRoIGluc2lnaHRzIGFuZCByZXR1cm5zIGEgY2FyZEhlbHBlckluc3RhbmNlIGlmIHNvLlxuXHRcdFx0XHRjb25zdCBpc0xpYkF2YWlsYWJsZSA9IGF3YWl0IEVudmlyb25tZW50Q2FwYWJpbGl0aWVzU2VydmljZS5yZXNvbHZlTGlicmFyeShcInNhcC5pbnNpZ2h0c1wiKTtcblx0XHRcdFx0aWYgKGlzTGliQXZhaWxhYmxlKSB7XG5cdFx0XHRcdFx0Ly8gd2UgYWxzbyBuZWVkIHRvIHByZWxvYWQgY29tcCBhcyBpbnNpZ2h0cyBpcyB1c2luZyBpdCB3aXRob3V0IGRlY2xhcmluZyBpdCBlX2Vcblx0XHRcdFx0XHRhd2FpdCBFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UucmVzb2x2ZUxpYnJhcnkoXCJzYXAudWkuY29tcFwiKTtcblx0XHRcdFx0XHRzYXAudWkucmVxdWlyZShbXCJzYXAvaW5zaWdodHMvQ2FyZEhlbHBlclwiXSwgYXN5bmMgKENhcmRIZWxwZXI6IHsgZ2V0U2VydmljZUFzeW5jOiBGdW5jdGlvbiB9KSA9PiB7XG5cdFx0XHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdFx0XHRhd2FpdCBDYXJkSGVscGVyLmdldFNlcnZpY2VBc3luYyhcIlVJU2VydmljZVwiKTtcblx0XHRcdFx0XHRcdFx0cmVzb2x2ZSghKGF3YWl0IGdldE1TVGVhbXNBY3RpdmUoKSkpO1xuXHRcdFx0XHRcdFx0fSBjYXRjaCB7XG5cdFx0XHRcdFx0XHRcdHJlc29sdmUoZmFsc2UpO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH0pO1xuXHRcdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRcdHJlc29sdmUoZmFsc2UpO1xuXHRcdFx0XHR9XG5cdFx0XHR9IGNhdGNoIHtcblx0XHRcdFx0cmVzb2x2ZShmYWxzZSk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIGluc2lnaHRzIGNvbnRleHQgY2hhbm5lbCBpcyBlbmFibGVkIC5cblx0ICogQHJldHVybnMgVHJ1ZSBpZiBlbmFibGVkLlxuXHQgKi9cblx0YXN5bmMgaXNDb250ZXh0U2hhcmluZ0VuYWJsZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG5cdFx0Ly8gZ2V0U2VydmljZUFzeW5jIGZyb20gc3VpdGUvaW5zaWdodHMgY2hlY2tzIHRvIHNlZSBpZiBteUhvbWUgaXMgY29uZmlndXJlZCB3aXRoIGluc2lnaHRzIGFuZCByZXR1cm5zIGEgY2FyZEhlbHBlckluc3RhbmNlIGlmIHNvLlxuXHRcdGNvbnN0IGlzTGliQXZhaWxhYmxlID0gYXdhaXQgRW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlLnJlc29sdmVMaWJyYXJ5KFwic2FwLmluc2lnaHRzXCIpO1xuXHRcdGlmIChpc0xpYkF2YWlsYWJsZSkge1xuXHRcdFx0Ly8gd2UgYWxzbyBuZWVkIHRvIHByZWxvYWQgY29tcCBhcyBpbnNpZ2h0cyBpcyB1c2luZyBpdCB3aXRob3V0IGRlY2xhcmluZyBpdCBlX2Vcblx0XHRcdGF3YWl0IEVudmlyb25tZW50Q2FwYWJpbGl0aWVzU2VydmljZS5yZXNvbHZlTGlicmFyeShcInNhcC51aS5jb21wXCIpO1xuXHRcdFx0dHJ5IHtcblx0XHRcdFx0YXdhaXQgaW1wb3J0KFwic2FwL2luc2lnaHRzL2NoYW5uZWxzL0NvbnRleHRDaGFubmVsXCIpO1xuXHRcdFx0fSBjYXRjaCAoZSkge1xuXHRcdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0XHR9XG5cdFx0XHRyZXR1cm4gdHJ1ZTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH1cblx0fVxuXG5cdGdldEludGVyZmFjZSgpOiB0aGlzIHtcblx0XHRyZXR1cm4gdGhpcztcblx0fVxufVxuXG5leHBvcnQgY2xhc3MgRW52aXJvbm1lbnRTZXJ2aWNlRmFjdG9yeSBleHRlbmRzIFNlcnZpY2VGYWN0b3J5PEVudmlyb25tZW50Q2FwYWJpbGl0aWVzPiB7XG5cdGFzeW5jIGNyZWF0ZUluc3RhbmNlKG9TZXJ2aWNlQ29udGV4dDogU2VydmljZUNvbnRleHQ8UGFydGlhbDxFbnZpcm9ubWVudENhcGFiaWxpdGllcz4+KTogUHJvbWlzZTxFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2U+IHtcblx0XHRjb25zdCBlbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UgPSBuZXcgRW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlKG9TZXJ2aWNlQ29udGV4dCk7XG5cdFx0YXdhaXQgZW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlLmluaXRpYWxpemUoKTtcblx0XHRyZXR1cm4gZW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlO1xuXHR9XG59XG5cbi8qKlxuICogQ2hlY2tzIGlmIHRoZSBhcHBsaWNhdGlvbiBpcyBvcGVuZWQgb24gTWljcm9zb2Z0IFRlYW1zLlxuICogQHJldHVybnMgVHJ1ZSBpZiB0aGUgYXBwbGljYXRpb24gaXMgb3BlbmVkIG9uIE1pY3Jvc29mdCBUZWFtcy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldE1TVGVhbXNBY3RpdmUoKTogUHJvbWlzZTxib29sZWFuPiB7XG5cdGxldCBpc1RlYW1zTW9kZUFjdGl2ZSA9IGZhbHNlO1xuXHR0cnkge1xuXHRcdGF3YWl0IEVudmlyb25tZW50Q2FwYWJpbGl0aWVzU2VydmljZS5yZXNvbHZlTGlicmFyeShcInNhcC5zdWl0ZS51aS5jb21tb25zXCIpO1xuXHRcdGNvbnN0IHsgZGVmYXVsdDogQ29sbGFib3JhdGlvbkhlbHBlciB9ID0gYXdhaXQgaW1wb3J0KFwic2FwL3N1aXRlL3VpL2NvbW1vbnMvY29sbGFib3JhdGlvbi9Db2xsYWJvcmF0aW9uSGVscGVyXCIpO1xuXHRcdGlzVGVhbXNNb2RlQWN0aXZlID0gYXdhaXQgQ29sbGFib3JhdGlvbkhlbHBlci5pc1RlYW1zTW9kZUFjdGl2ZSgpO1xuXHR9IGNhdGNoIHtcblx0XHRyZXR1cm4gZmFsc2U7XG5cdH1cblx0cmV0dXJuIGlzVGVhbXNNb2RlQWN0aXZlO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFjQTtBQUNBO0FBQ0E7RUFDQSxNQUFNQSxnQkFBMkQsR0FBRztJQUNuRUMsY0FBYyxFQUFFO01BQUVDLE1BQU0sRUFBRSw2QkFBNkI7TUFBRUMsT0FBTyxFQUFFLHNCQUFzQjtNQUFFQyxPQUFPLEVBQUU7SUFBK0IsQ0FBQztJQUNuSUMsY0FBYyxFQUFFO01BQ2ZILE1BQU0sRUFBRSwwQkFBMEI7TUFDbENDLE9BQU8sRUFBRSxzQkFBc0I7TUFDL0JDLE9BQU8sRUFBRTtJQUNWLENBQUM7SUFDREUsZ0JBQWdCLEVBQUU7TUFDakJKLE1BQU0sRUFBRSwyQkFBMkI7TUFDbkNDLE9BQU8sRUFBRSxzQkFBc0I7TUFDL0JDLE9BQU8sRUFBRTtJQUNWO0VBQ0QsQ0FBQztFQW9CRDtFQUNBO0VBQ08sTUFBTUcsOEJBQWlFLEdBQUc7SUFDaEZDLEtBQUssRUFBRSxJQUFJO0lBQ1hDLFVBQVUsRUFBRSxJQUFJO0lBQ2hCQyxhQUFhLEVBQUUsS0FBSztJQUNwQkMsTUFBTSxFQUFFLElBQUk7SUFDWkMscUJBQXFCLEVBQUUsSUFBSTtJQUMzQkMsUUFBUSxFQUFFLElBQUk7SUFDZEMsaUJBQWlCLEVBQUUsS0FBSztJQUN4QkMsdUJBQXVCLEVBQUUsS0FBSztJQUM5QmQsY0FBYyxFQUFFLEtBQUs7SUFDckJJLGNBQWMsRUFBRSxLQUFLO0lBQ3JCQyxnQkFBZ0IsRUFBRSxLQUFLO0lBQ3ZCVSxzQkFBc0IsRUFBRSxLQUFLO0lBQzdCQyxXQUFXLEVBQUUsS0FBSztJQUNsQkMsV0FBVyxFQUFFLE1BQU9DLFdBQVcsSUFBdUI7TUFDckQsT0FBT0MsOEJBQThCLENBQUNDLGNBQWMsQ0FBQ0YsV0FBVyxDQUFDO0lBQ2xFO0VBQ0QsQ0FBQztFQUFD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
|
|
277
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJPcHRpb25hbEZlYXR1cmVzIiwiU21hcnRTdW1tYXJpemUiLCJpbnRlbnQiLCJsaWJyYXJ5IiwiaW1wb3J0cyIsIk1hZ2ljRmlsdGVyaW5nIiwiRXJyb3JFeHBsYW5hdGlvbiIsIkVhc3lFZGl0IiwiRGVmYXVsdEVudmlyb25tZW50Q2FwYWJpbGl0aWVzIiwiQ2hhcnQiLCJNaWNyb0NoYXJ0IiwiQ29sbGFib3JhdGlvbiIsIlVTaGVsbCIsIkludGVudEJhc2VkTmF2aWdhdGlvbiIsIkFwcFN0YXRlIiwiSW5zaWdodHNTdXBwb3J0ZWQiLCJDb250ZXh0U2hhcmluZ1N1cHBvcnRlZCIsIkRpc2FibGVJbnB1dEFzc2lzdGFuY2UiLCJIaWRkZW5EcmFmdCIsImxvYWRMaWJyYXJ5IiwibGlicmFyeU5hbWUiLCJFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UiLCJyZXNvbHZlTGlicmFyeSIsIl9leHBvcnRzIiwiX1NlcnZpY2UiLCJfdGhpcyIsIl9sZW4iLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJhcmdzIiwiQXJyYXkiLCJfa2V5IiwiY2FsbCIsIm9wdGlvbmFsRmVhdHVyZUxpYnJhcmllcyIsIl9pbmhlcml0c0xvb3NlIiwiX3Byb3RvIiwicHJvdG90eXBlIiwicHJlcGFyZUZlYXR1cmUiLCJmZWF0dXJlIiwiRXJyb3IiLCJMaWJyYXJ5IiwibG9hZCIsImluaXRpYWxpemUiLCJvQ29udGV4dCIsImdldENvbnRleHQiLCJlbnZpcm9ubWVudENhcGFiaWxpdGllcyIsIk9iamVjdCIsImFzc2lnbiIsInNoZWxsQ29udGFpbmVyIiwic2FwIiwidWkiLCJyZXF1aXJlIiwidmVyc2lvbkluZm8iLCJWZXJzaW9uSW5mbyIsImxpYnJhcmllcyIsInNvbWUiLCJsaWIiLCJuYW1lIiwiaGlkZURyYWZ0Iiwic2NvcGVPYmplY3QiLCJnZXRNYW5pZmVzdEVudHJ5IiwiYXBwIiwiZW5hYmxlZCIsInN0YXlPbkN1cnJlbnRQYWdlQWZ0ZXJTYXZlIiwic3RheU9uQ3VycmVudFBhZ2VBZnRlckNhbmNlbCIsImhpZGVDcmVhdGVOZXh0IiwibmF2aWdhdGlvblNlcnZpY2UiLCJnZXRTZXJ2aWNlQXN5bmMiLCJmZWF0dXJlTmFtZSIsImVudHJpZXMiLCJ1cmwiLCJyZXNvbHZlSW50ZW50IiwiX191aTVfcmVxdWlyZV9hc3luYyIsImUiLCJMb2ciLCJpbmZvIiwibWVzc2FnZSIsInNldHRpbmdzIiwiUHJvbWlzZSIsInJlc29sdmUiLCJ0aGVuIiwiY2F0Y2giLCJzZXRDYXBhYmlsaXRpZXMiLCJvQ2FwYWJpbGl0aWVzIiwic2V0Q2FwYWJpbGl0eSIsImNhcGFiaWxpdHkiLCJ2YWx1ZSIsImdldENhcGFiaWxpdGllcyIsImlzSW5zaWdodHNFbmFibGVkIiwiaXNMaWJBdmFpbGFibGUiLCJDYXJkSGVscGVyIiwiZ2V0TVNUZWFtc0FjdGl2ZSIsImlzQ29udGV4dFNoYXJpbmdFbmFibGVkIiwiZ2V0SW50ZXJmYWNlIiwiU2VydmljZSIsIkVudmlyb25tZW50U2VydmljZUZhY3RvcnkiLCJfU2VydmljZUZhY3RvcnkiLCJhcHBseSIsIl9wcm90bzIiLCJjcmVhdGVJbnN0YW5jZSIsIm9TZXJ2aWNlQ29udGV4dCIsImVudmlyb25tZW50Q2FwYWJpbGl0aWVzU2VydmljZSIsIlNlcnZpY2VGYWN0b3J5IiwiaXNUZWFtc01vZGVBY3RpdmUiLCJkZWZhdWx0IiwiQ29sbGFib3JhdGlvbkhlbHBlciJdLCJzb3VyY2VSb290IjoiLiIsInNvdXJjZXMiOlsiRW52aXJvbm1lbnRTZXJ2aWNlRmFjdG9yeS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTG9nIGZyb20gXCJzYXAvYmFzZS9Mb2dcIjtcbmltcG9ydCB0eXBlIHsgSGlkZGVuRHJhZnQgfSBmcm9tIFwic2FwL2ZlL2NvcmUvY29udmVydGVycy9NYW5pZmVzdFNldHRpbmdzXCI7XG5pbXBvcnQgVmVyc2lvbkluZm8gZnJvbSBcInNhcC91aS9WZXJzaW9uSW5mb1wiO1xuaW1wb3J0IExpYnJhcnkgZnJvbSBcInNhcC91aS9jb3JlL0xpYlwiO1xuaW1wb3J0IFNlcnZpY2UgZnJvbSBcInNhcC91aS9jb3JlL3NlcnZpY2UvU2VydmljZVwiO1xuaW1wb3J0IFNlcnZpY2VGYWN0b3J5IGZyb20gXCJzYXAvdWkvY29yZS9zZXJ2aWNlL1NlcnZpY2VGYWN0b3J5XCI7XG5pbXBvcnQgdHlwZSBOYXZpZ2F0aW9uIGZyb20gXCJzYXAvdXNoZWxsL3NlcnZpY2VzL05hdmlnYXRpb25cIjtcbmltcG9ydCB0eXBlIHsgU2VydmljZUNvbnRleHQgfSBmcm9tIFwidHlwZXMvbWV0YW1vZGVsX3R5cGVzXCI7XG5cbnR5cGUgT3B0aW9uYWxGZWF0dXJlRGVmaW5pdGlvbiA9IHtcblx0aW50ZW50OiBzdHJpbmc7XG5cdGxpYnJhcnk6IHN0cmluZztcblx0aW1wb3J0cz86IHN0cmluZztcbn07XG4vKipcbiAqIENvbmZpZ3VyYXRpb24gZm9yIHRoZSBvcHRpb25hbCBmZWF0dXJlcy5cbiAqL1xuY29uc3QgT3B0aW9uYWxGZWF0dXJlczogUmVjb3JkPHN0cmluZywgT3B0aW9uYWxGZWF0dXJlRGVmaW5pdGlvbj4gPSB7XG5cdFNtYXJ0U3VtbWFyaXplOiB7IGludGVudDogXCJJbnRlbGxpZ2VudFByb21wdC1zdW1tYXJpemVcIiwgbGlicmFyeTogXCJ1eC5lbmcuZmlvcmlhaS5yZXVzZVwiLCBpbXBvcnRzOiBcInV4L2VuZy9maW9yaWFpL3JldXNlL2xpYnJhcnlcIiB9LFxuXHRNYWdpY0ZpbHRlcmluZzoge1xuXHRcdGludGVudDogXCJJbnRlbGxpZ2VudFByb21wdC1maWx0ZXJcIixcblx0XHRsaWJyYXJ5OiBcInV4LmVuZy5maW9yaWFpLnJldXNlXCIsXG5cdFx0aW1wb3J0czogXCJ1eC9lbmcvZmlvcmlhaS9yZXVzZS9lYXN5ZmlsdGVyL0Vhc3lGaWx0ZXJcIlxuXHR9LFxuXHRFcnJvckV4cGxhbmF0aW9uOiB7XG5cdFx0aW50ZW50OiBcIkludGVsbGlnZW50UHJvbXB0LWV4cGxhaW5cIixcblx0XHRsaWJyYXJ5OiBcInV4LmVuZy5maW9yaWFpLnJldXNlXCIsXG5cdFx0aW1wb3J0czogXCJ1eC9lbmcvZmlvcmlhaS9yZXVzZS9lcnJvcmV4cGxhbmF0aW9uL0Vycm9yRXhwbGFuYXRpb25cIlxuXHR9LFxuXHRFYXN5RWRpdDoge1xuXHRcdGludGVudDogXCJJbnRlbGxpZ2VudFByb21wdC1maWxsXCIsXG5cdFx0bGlicmFyeTogXCJ1eC5lbmcuZmlvcmlhaS5yZXVzZVwiLFxuXHRcdGltcG9ydHM6IFwidXgvZW5nL2Zpb3JpYWkvcmV1c2UvZWFzeWZpbGwvRWFzeUZpbGxcIlxuXHR9XG59O1xudHlwZSBGZWF0dXJlTmFtZSA9IGtleW9mIHR5cGVvZiBPcHRpb25hbEZlYXR1cmVzO1xuXG5leHBvcnQgdHlwZSBFbnZpcm9ubWVudENhcGFiaWxpdGllcyA9IHtcblx0Q2hhcnQ6IGJvb2xlYW47XG5cdE1pY3JvQ2hhcnQ6IGJvb2xlYW47XG5cdENvbGxhYm9yYXRpb246IGJvb2xlYW47XG5cdFVTaGVsbDogYm9vbGVhbjtcblx0SW50ZW50QmFzZWROYXZpZ2F0aW9uOiBib29sZWFuO1xuXHRBcHBTdGF0ZTogYm9vbGVhbjtcblx0RGlzYWJsZUlucHV0QXNzaXN0YW5jZTogYm9vbGVhbjtcblx0SW5zaWdodHNTdXBwb3J0ZWQ6IGJvb2xlYW47XG5cdENvbnRleHRTaGFyaW5nU3VwcG9ydGVkOiBib29sZWFuO1xuXHRIaWRkZW5EcmFmdDogSGlkZGVuRHJhZnQgfCBib29sZWFuO1xufSAmIHtcblx0bG9hZExpYnJhcnk/KGxpYnJhcnk6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj47XG59ICYge1xuXHRbZmVhdHVyZU5hbWU6IHN0cmluZ106IGJvb2xlYW47XG59O1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L2Jhbi10cy1jb21tZW50XG4vLyBAdHMtaWdub3JlXG5leHBvcnQgY29uc3QgRGVmYXVsdEVudmlyb25tZW50Q2FwYWJpbGl0aWVzOiBSZWFkb25seTxFbnZpcm9ubWVudENhcGFiaWxpdGllcz4gPSB7XG5cdENoYXJ0OiB0cnVlLFxuXHRNaWNyb0NoYXJ0OiB0cnVlLFxuXHRDb2xsYWJvcmF0aW9uOiBmYWxzZSxcblx0VVNoZWxsOiB0cnVlLFxuXHRJbnRlbnRCYXNlZE5hdmlnYXRpb246IHRydWUsXG5cdEFwcFN0YXRlOiB0cnVlLFxuXHRJbnNpZ2h0c1N1cHBvcnRlZDogZmFsc2UsXG5cdENvbnRleHRTaGFyaW5nU3VwcG9ydGVkOiBmYWxzZSxcblx0U21hcnRTdW1tYXJpemU6IGZhbHNlLFxuXHRNYWdpY0ZpbHRlcmluZzogZmFsc2UsXG5cdEVhc3lFZGl0OiBmYWxzZSxcblx0RXJyb3JFeHBsYW5hdGlvbjogZmFsc2UsXG5cdERpc2FibGVJbnB1dEFzc2lzdGFuY2U6IGZhbHNlLFxuXHRIaWRkZW5EcmFmdDogZmFsc2UsXG5cdGxvYWRMaWJyYXJ5OiBhc3luYyAobGlicmFyeU5hbWUpOiBQcm9taXNlPGJvb2xlYW4+ID0+IHtcblx0XHRyZXR1cm4gRW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlLnJlc29sdmVMaWJyYXJ5KGxpYnJhcnlOYW1lKTtcblx0fVxufTtcbmV4cG9ydCBjbGFzcyBFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UgZXh0ZW5kcyBTZXJ2aWNlPEVudmlyb25tZW50Q2FwYWJpbGl0aWVzPiB7XG5cdHJlamVjdEZuITogKCkgPT4gdm9pZDtcblxuXHRpbml0UHJvbWlzZSE6IFByb21pc2U8dGhpcz47XG5cblx0ZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMhOiBFbnZpcm9ubWVudENhcGFiaWxpdGllcztcblxuXHQvLyAhOiBtZWFucyB0aGF0IHdlIGtub3cgaXQgd2lsbCBiZSBhc3NpZ25lZCBiZWZvcmUgdXNhZ2Vcblx0cHJpdmF0ZSBvcHRpb25hbEZlYXR1cmVMaWJyYXJpZXM6IFBhcnRpYWw8UmVjb3JkPEZlYXR1cmVOYW1lLCB7IHVybDogc3RyaW5nOyBuYW1lOiBzdHJpbmc7IGltcG9ydHM/OiBzdHJpbmcgfT4+ID0ge307XG5cblx0LyoqXG5cdCAqIFByZXBhcmVzIHRoZSBmZWF0dXJlIGZvciB1c2FnZS5cblx0ICpcblx0ICogVGhpcyBmdW5jdGlvbiBsb2FkcyB0aGUgbGlicmFyeSByZWdpc3RlcmVkIGZvciB0aGUgZmVhdHVyZS5cblx0ICogQHBhcmFtIGZlYXR1cmUgVGhlIGZlYXR1cmUgdG8gcHJlcGFyZS5cblx0ICogQHRocm93cyBFcnJvciBpZiB0aGUgZmVhdHVyZSBpcyB1bmF2YWlsYWJsZS5cblx0ICovXG5cdGFzeW5jIHByZXBhcmVGZWF0dXJlKGZlYXR1cmU6IEZlYXR1cmVOYW1lKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0Y29uc3QgbGlicmFyeSA9IHRoaXMub3B0aW9uYWxGZWF0dXJlTGlicmFyaWVzW2ZlYXR1cmVdO1xuXHRcdGlmICghbGlicmFyeSkge1xuXHRcdFx0dGhyb3cgbmV3IEVycm9yKGBGZWF0dXJlICcke2ZlYXR1cmV9JyBpcyB1bmF2YWlsYWJsZWApO1xuXHRcdH1cblxuXHRcdGF3YWl0IExpYnJhcnkubG9hZChsaWJyYXJ5KTtcblx0fVxuXG5cdGFzeW5jIGluaXRpYWxpemUoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0Y29uc3Qgb0NvbnRleHQgPSB0aGlzLmdldENvbnRleHQoKTtcblx0XHR0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzID0gT2JqZWN0LmFzc2lnbih7fSwgRGVmYXVsdEVudmlyb25tZW50Q2FwYWJpbGl0aWVzKSBhcyBFbnZpcm9ubWVudENhcGFiaWxpdGllcztcblxuXHRcdGNvbnN0IHNoZWxsQ29udGFpbmVyID0gc2FwLnVpLnJlcXVpcmUoXCJzYXAvdXNoZWxsL0NvbnRhaW5lclwiKTtcblx0XHRjb25zdCB2ZXJzaW9uSW5mbyA9IGF3YWl0IFZlcnNpb25JbmZvLmxvYWQoKTtcblx0XHR0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzLkNoYXJ0ID0gdmVyc2lvbkluZm8ubGlicmFyaWVzLnNvbWUoKGxpYikgPT4gbGliLm5hbWUgPT09IFwic2FwLnZpelwiKTtcblx0XHR0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzLk1pY3JvQ2hhcnQgPSB2ZXJzaW9uSW5mby5saWJyYXJpZXMuc29tZSgobGliKSA9PiBsaWIubmFtZSA9PT0gXCJzYXAuc3VpdGUudWkubWljcm9jaGFydFwiKTtcblx0XHR0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzLkNvbGxhYm9yYXRpb24gPSB2ZXJzaW9uSW5mby5saWJyYXJpZXMuc29tZSgobGliKSA9PiBsaWIubmFtZSA9PT0gXCJzYXAuc3VpdGUudWkuY29tbW9uc1wiKTtcblx0XHRpZiAodGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllcy5Db2xsYWJvcmF0aW9uKSB7XG5cdFx0XHRhd2FpdCBFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UucmVzb2x2ZUxpYnJhcnkoXCJzYXAuc3VpdGUudWkuY29tbW9uc1wiKTtcblx0XHR9XG5cdFx0dGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllcy5VU2hlbGwgPSAhIXNoZWxsQ29udGFpbmVyO1xuXHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMuSW50ZW50QmFzZWROYXZpZ2F0aW9uID0gISFzaGVsbENvbnRhaW5lcjtcblx0XHR0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzLkluc2lnaHRzU3VwcG9ydGVkID0gdmVyc2lvbkluZm8ubGlicmFyaWVzLnNvbWUoKGxpYikgPT4gbGliLm5hbWUgPT09IFwic2FwLmluc2lnaHRzXCIpO1xuXHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMuQ29udGV4dFNoYXJpbmdTdXBwb3J0ZWQgPSB2ZXJzaW9uSW5mby5saWJyYXJpZXMuc29tZSgobGliKSA9PiBsaWIubmFtZSA9PT0gXCJzYXAuaW5zaWdodHNcIik7XG5cdFx0Y29uc3QgaGlkZURyYWZ0ID0gb0NvbnRleHQuc2NvcGVPYmplY3QuZ2V0TWFuaWZlc3RFbnRyeShcInNhcC5mZVwiKT8uYXBwPy5oaWRlRHJhZnQ7XG5cdFx0aWYgKGhpZGVEcmFmdD8uZW5hYmxlZCkge1xuXHRcdFx0dGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllcy5IaWRkZW5EcmFmdCA9IHtcblx0XHRcdFx0ZW5hYmxlZDogdHJ1ZSxcblx0XHRcdFx0c3RheU9uQ3VycmVudFBhZ2VBZnRlclNhdmU6IGhpZGVEcmFmdC5zdGF5T25DdXJyZW50UGFnZUFmdGVyU2F2ZSxcblx0XHRcdFx0c3RheU9uQ3VycmVudFBhZ2VBZnRlckNhbmNlbDogaGlkZURyYWZ0LnN0YXlPbkN1cnJlbnRQYWdlQWZ0ZXJDYW5jZWwsXG5cdFx0XHRcdGhpZGVDcmVhdGVOZXh0OiBoaWRlRHJhZnQuaGlkZUNyZWF0ZU5leHRcblx0XHRcdH07XG5cdFx0fVxuXHRcdC8vIEluaXRpYWxpemUgb3B0aW9uYWwgZmVhdHVyZXNcblx0XHRjb25zdCBuYXZpZ2F0aW9uU2VydmljZTogTmF2aWdhdGlvbiB8IHVuZGVmaW5lZCA9IGF3YWl0IHNoZWxsQ29udGFpbmVyPy5nZXRTZXJ2aWNlQXN5bmMoXCJOYXZpZ2F0aW9uXCIpO1xuXG5cdFx0Zm9yIChjb25zdCBbZmVhdHVyZU5hbWUsIGZlYXR1cmVdIG9mIE9iamVjdC5lbnRyaWVzKE9wdGlvbmFsRmVhdHVyZXMpKSB7XG5cdFx0XHQvLyBUaGUgZmVhdHVyZSBpcyBvZmYgYnkgZGVmYXVsdC4gT25seSBpZiB0aGVyZSBpcyBhIHNoZWxsIGFuZCB0aGUgaW50ZW50IHJlc29sdmVzLCB0aGUgZmVhdHVyZSBpcyBhdmFpbGFibGVcblx0XHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXNbZmVhdHVyZU5hbWVdID0gZmFsc2U7XG5cblx0XHRcdGlmIChuYXZpZ2F0aW9uU2VydmljZSkge1xuXHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdC8vIFJlc29sdmUgYnkgaW50ZW50OlxuXHRcdFx0XHRcdC8vICAtIGludGVudCByZXNvbHZlcyBcdFx0ICA9PT4gZmVhdHVyZSBhdmFpbGFibGUsIHByb3ZpZGVkIGJ5IHRoZSBsaWJyYXJ5IGxvY2F0ZWQgYXQgdGhlIHJldHVybmVkIFVSTFxuXHRcdFx0XHRcdC8vICAtIGludGVudCBkb2VzIG5vdCByZXNvbHZlID09PiByZXNvbHZlSW50ZW50KCkgdGhyb3dzIGFuIGVycm9yID09PiBmZWF0dXJlIHVuYXZhaWxhYmxlXG5cdFx0XHRcdFx0Y29uc3QgeyB1cmwgfSA9IGF3YWl0IG5hdmlnYXRpb25TZXJ2aWNlLnJlc29sdmVJbnRlbnQoYCMke2ZlYXR1cmUuaW50ZW50fWApO1xuXHRcdFx0XHRcdHRoaXMub3B0aW9uYWxGZWF0dXJlTGlicmFyaWVzW2ZlYXR1cmVOYW1lXSA9IHsgbmFtZTogZmVhdHVyZS5saWJyYXJ5LCB1cmw6IHVybCwgaW1wb3J0czogZmVhdHVyZS5pbXBvcnRzIH07XG5cblx0XHRcdFx0XHRpZiAoZmVhdHVyZS5pbXBvcnRzKSB7XG5cdFx0XHRcdFx0XHR0cnkge1xuXHRcdFx0XHRcdFx0XHRhd2FpdCBMaWJyYXJ5LmxvYWQodGhpcy5vcHRpb25hbEZlYXR1cmVMaWJyYXJpZXNbZmVhdHVyZU5hbWVdISk7XG5cdFx0XHRcdFx0XHRcdGF3YWl0IGltcG9ydChmZWF0dXJlLmltcG9ydHMpO1xuXHRcdFx0XHRcdFx0XHR0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzW2ZlYXR1cmVOYW1lXSA9IHRydWU7XG5cdFx0XHRcdFx0XHR9IGNhdGNoIChlKSB7XG5cdFx0XHRcdFx0XHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXNbZmVhdHVyZU5hbWVdID0gZmFsc2U7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXNbZmVhdHVyZU5hbWVdID0gdHJ1ZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdFx0XHQvLyBGZWF0dXJlIHVuYXZhaWxhYmxlXG5cdFx0XHRcdFx0TG9nLmluZm8oYEZlYXR1cmUgdW5hdmFpbGFibGUgJHtmZWF0dXJlTmFtZX06ICR7KGUgYXMgeyBtZXNzYWdlOiBzdHJpbmc7IHN0YWNrOiBzdHJpbmcgfSk/Lm1lc3NhZ2V9YCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHR0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzID0gT2JqZWN0LmFzc2lnbih0aGlzLmVudmlyb25tZW50Q2FwYWJpbGl0aWVzLCBvQ29udGV4dC5zZXR0aW5ncyk7XG5cdH1cblxuXHRzdGF0aWMgYXN5bmMgcmVzb2x2ZUxpYnJhcnkobGlicmFyeU5hbWU6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRcdHJldHVybiBuZXcgUHJvbWlzZShmdW5jdGlvbiAocmVzb2x2ZSkge1xuXHRcdFx0TGlicmFyeS5sb2FkKHsgbmFtZTogYCR7bGlicmFyeU5hbWV9YCB9KVxuXHRcdFx0XHQudGhlbihmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0cmVzb2x2ZSh0cnVlKTtcblx0XHRcdFx0XHRyZXR1cm47XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC5jYXRjaChmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdFx0cmVzb2x2ZShmYWxzZSk7XG5cdFx0XHRcdH0pO1xuXHRcdH0pO1xuXHR9XG5cblx0cHVibGljIHNldENhcGFiaWxpdGllcyhvQ2FwYWJpbGl0aWVzOiBFbnZpcm9ubWVudENhcGFiaWxpdGllcyk6IHZvaWQge1xuXHRcdHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXMgPSBvQ2FwYWJpbGl0aWVzO1xuXHR9XG5cblx0cHVibGljIHNldENhcGFiaWxpdHkoY2FwYWJpbGl0eToga2V5b2YgRW52aXJvbm1lbnRDYXBhYmlsaXRpZXMsIHZhbHVlOiBib29sZWFuKTogdm9pZCB7XG5cdFx0dGhpcy5lbnZpcm9ubWVudENhcGFiaWxpdGllc1tjYXBhYmlsaXR5XSA9IHZhbHVlO1xuXHR9XG5cblx0cHVibGljIGdldENhcGFiaWxpdGllcygpOiBFbnZpcm9ubWVudENhcGFiaWxpdGllcyB7XG5cdFx0cmV0dXJuIHRoaXMuZW52aXJvbm1lbnRDYXBhYmlsaXRpZXM7XG5cdH1cblxuXHQvKipcblx0ICogQ2hlY2tzIGlmIGluc2lnaHRzIGFyZSBlbmFibGVkIG9uIHRoZSBob21lIHBhZ2UuXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgaW5zaWdodHMgYXJlIGVuYWJsZWQgb24gdGhlIGhvbWUgcGFnZS5cblx0ICovXG5cdGFzeW5jIGlzSW5zaWdodHNFbmFibGVkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRcdC8vIGluc2lnaHRzIGlzIGVuYWJsZWRcblx0XHRyZXR1cm4gbmV3IFByb21pc2U8Ym9vbGVhbj4oYXN5bmMgKHJlc29sdmUpID0+IHtcblx0XHRcdHRyeSB7XG5cdFx0XHRcdC8vIGdldFNlcnZpY2VBc3luYyBmcm9tIHN1aXRlL2luc2lnaHRzIGNoZWNrcyB0byBzZWUgaWYgbXlIb21lIGlzIGNvbmZpZ3VyZWQgd2l0aCBpbnNpZ2h0cyBhbmQgcmV0dXJucyBhIGNhcmRIZWxwZXJJbnN0YW5jZSBpZiBzby5cblx0XHRcdFx0Y29uc3QgaXNMaWJBdmFpbGFibGUgPSBhd2FpdCBFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UucmVzb2x2ZUxpYnJhcnkoXCJzYXAuaW5zaWdodHNcIik7XG5cdFx0XHRcdGlmIChpc0xpYkF2YWlsYWJsZSkge1xuXHRcdFx0XHRcdC8vIHdlIGFsc28gbmVlZCB0byBwcmVsb2FkIGNvbXAgYXMgaW5zaWdodHMgaXMgdXNpbmcgaXQgd2l0aG91dCBkZWNsYXJpbmcgaXQgZV9lXG5cdFx0XHRcdFx0YXdhaXQgRW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlLnJlc29sdmVMaWJyYXJ5KFwic2FwLnVpLmNvbXBcIik7XG5cdFx0XHRcdFx0c2FwLnVpLnJlcXVpcmUoW1wic2FwL2luc2lnaHRzL0NhcmRIZWxwZXJcIl0sIGFzeW5jIChDYXJkSGVscGVyOiB7IGdldFNlcnZpY2VBc3luYzogRnVuY3Rpb24gfSkgPT4ge1xuXHRcdFx0XHRcdFx0dHJ5IHtcblx0XHRcdFx0XHRcdFx0YXdhaXQgQ2FyZEhlbHBlci5nZXRTZXJ2aWNlQXN5bmMoXCJVSVNlcnZpY2VcIik7XG5cdFx0XHRcdFx0XHRcdHJlc29sdmUoIShhd2FpdCBnZXRNU1RlYW1zQWN0aXZlKCkpKTtcblx0XHRcdFx0XHRcdH0gY2F0Y2gge1xuXHRcdFx0XHRcdFx0XHRyZXNvbHZlKGZhbHNlKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0XHRyZXNvbHZlKGZhbHNlKTtcblx0XHRcdFx0fVxuXHRcdFx0fSBjYXRjaCB7XG5cdFx0XHRcdHJlc29sdmUoZmFsc2UpO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cblx0LyoqXG5cdCAqIENoZWNrcyBpZiBpbnNpZ2h0cyBjb250ZXh0IGNoYW5uZWwgaXMgZW5hYmxlZCAuXG5cdCAqIEByZXR1cm5zIFRydWUgaWYgZW5hYmxlZC5cblx0ICovXG5cdGFzeW5jIGlzQ29udGV4dFNoYXJpbmdFbmFibGVkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRcdC8vIGdldFNlcnZpY2VBc3luYyBmcm9tIHN1aXRlL2luc2lnaHRzIGNoZWNrcyB0byBzZWUgaWYgbXlIb21lIGlzIGNvbmZpZ3VyZWQgd2l0aCBpbnNpZ2h0cyBhbmQgcmV0dXJucyBhIGNhcmRIZWxwZXJJbnN0YW5jZSBpZiBzby5cblx0XHRjb25zdCBpc0xpYkF2YWlsYWJsZSA9IGF3YWl0IEVudmlyb25tZW50Q2FwYWJpbGl0aWVzU2VydmljZS5yZXNvbHZlTGlicmFyeShcInNhcC5pbnNpZ2h0c1wiKTtcblx0XHRpZiAoaXNMaWJBdmFpbGFibGUpIHtcblx0XHRcdC8vIHdlIGFsc28gbmVlZCB0byBwcmVsb2FkIGNvbXAgYXMgaW5zaWdodHMgaXMgdXNpbmcgaXQgd2l0aG91dCBkZWNsYXJpbmcgaXQgZV9lXG5cdFx0XHRhd2FpdCBFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UucmVzb2x2ZUxpYnJhcnkoXCJzYXAudWkuY29tcFwiKTtcblx0XHRcdHRyeSB7XG5cdFx0XHRcdGF3YWl0IGltcG9ydChcInNhcC9pbnNpZ2h0cy9jaGFubmVscy9Db250ZXh0Q2hhbm5lbFwiKTtcblx0XHRcdH0gY2F0Y2ggKGUpIHtcblx0XHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdFx0fVxuXHRcdFx0cmV0dXJuIHRydWU7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJldHVybiBmYWxzZTtcblx0XHR9XG5cdH1cblxuXHRnZXRJbnRlcmZhY2UoKTogdGhpcyB7XG5cdFx0cmV0dXJuIHRoaXM7XG5cdH1cbn1cblxuZXhwb3J0IGNsYXNzIEVudmlyb25tZW50U2VydmljZUZhY3RvcnkgZXh0ZW5kcyBTZXJ2aWNlRmFjdG9yeTxFbnZpcm9ubWVudENhcGFiaWxpdGllcz4ge1xuXHRhc3luYyBjcmVhdGVJbnN0YW5jZShvU2VydmljZUNvbnRleHQ6IFNlcnZpY2VDb250ZXh0PFBhcnRpYWw8RW52aXJvbm1lbnRDYXBhYmlsaXRpZXM+Pik6IFByb21pc2U8RW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlPiB7XG5cdFx0Y29uc3QgZW52aXJvbm1lbnRDYXBhYmlsaXRpZXNTZXJ2aWNlID0gbmV3IEVudmlyb25tZW50Q2FwYWJpbGl0aWVzU2VydmljZShvU2VydmljZUNvbnRleHQpO1xuXHRcdGF3YWl0IGVudmlyb25tZW50Q2FwYWJpbGl0aWVzU2VydmljZS5pbml0aWFsaXplKCk7XG5cdFx0cmV0dXJuIGVudmlyb25tZW50Q2FwYWJpbGl0aWVzU2VydmljZTtcblx0fVxufVxuXG4vKipcbiAqIENoZWNrcyBpZiB0aGUgYXBwbGljYXRpb24gaXMgb3BlbmVkIG9uIE1pY3Jvc29mdCBUZWFtcy5cbiAqIEByZXR1cm5zIFRydWUgaWYgdGhlIGFwcGxpY2F0aW9uIGlzIG9wZW5lZCBvbiBNaWNyb3NvZnQgVGVhbXMuXG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRNU1RlYW1zQWN0aXZlKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuXHRsZXQgaXNUZWFtc01vZGVBY3RpdmUgPSBmYWxzZTtcblx0dHJ5IHtcblx0XHRhd2FpdCBFbnZpcm9ubWVudENhcGFiaWxpdGllc1NlcnZpY2UucmVzb2x2ZUxpYnJhcnkoXCJzYXAuc3VpdGUudWkuY29tbW9uc1wiKTtcblx0XHRjb25zdCB7IGRlZmF1bHQ6IENvbGxhYm9yYXRpb25IZWxwZXIgfSA9IGF3YWl0IGltcG9ydChcInNhcC9zdWl0ZS91aS9jb21tb25zL2NvbGxhYm9yYXRpb24vQ29sbGFib3JhdGlvbkhlbHBlclwiKTtcblx0XHRpc1RlYW1zTW9kZUFjdGl2ZSA9IGF3YWl0IENvbGxhYm9yYXRpb25IZWxwZXIuaXNUZWFtc01vZGVBY3RpdmUoKTtcblx0fSBjYXRjaCB7XG5cdFx0cmV0dXJuIGZhbHNlO1xuXHR9XG5cdHJldHVybiBpc1RlYW1zTW9kZUFjdGl2ZTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBY0E7QUFDQTtBQUNBO0VBQ0EsTUFBTUEsZ0JBQTJELEdBQUc7SUFDbkVDLGNBQWMsRUFBRTtNQUFFQyxNQUFNLEVBQUUsNkJBQTZCO01BQUVDLE9BQU8sRUFBRSxzQkFBc0I7TUFBRUMsT0FBTyxFQUFFO0lBQStCLENBQUM7SUFDbklDLGNBQWMsRUFBRTtNQUNmSCxNQUFNLEVBQUUsMEJBQTBCO01BQ2xDQyxPQUFPLEVBQUUsc0JBQXNCO01BQy9CQyxPQUFPLEVBQUU7SUFDVixDQUFDO0lBQ0RFLGdCQUFnQixFQUFFO01BQ2pCSixNQUFNLEVBQUUsMkJBQTJCO01BQ25DQyxPQUFPLEVBQUUsc0JBQXNCO01BQy9CQyxPQUFPLEVBQUU7SUFDVixDQUFDO0lBQ0RHLFFBQVEsRUFBRTtNQUNUTCxNQUFNLEVBQUUsd0JBQXdCO01BQ2hDQyxPQUFPLEVBQUUsc0JBQXNCO01BQy9CQyxPQUFPLEVBQUU7SUFDVjtFQUNELENBQUM7RUFvQkQ7RUFDQTtFQUNPLE1BQU1JLDhCQUFpRSxHQUFHO0lBQ2hGQyxLQUFLLEVBQUUsSUFBSTtJQUNYQyxVQUFVLEVBQUUsSUFBSTtJQUNoQkMsYUFBYSxFQUFFLEtBQUs7SUFDcEJDLE1BQU0sRUFBRSxJQUFJO0lBQ1pDLHFCQUFxQixFQUFFLElBQUk7SUFD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
|
|
@@ -26,6 +26,11 @@ const OptionalFeatures: Record<string, OptionalFeatureDefinition> = {
|
|
|
26
26
|
intent: "IntelligentPrompt-explain",
|
|
27
27
|
library: "ux.eng.fioriai.reuse",
|
|
28
28
|
imports: "ux/eng/fioriai/reuse/errorexplanation/ErrorExplanation"
|
|
29
|
+
},
|
|
30
|
+
EasyEdit: {
|
|
31
|
+
intent: "IntelligentPrompt-fill",
|
|
32
|
+
library: "ux.eng.fioriai.reuse",
|
|
33
|
+
imports: "ux/eng/fioriai/reuse/easyfill/EasyFill"
|
|
29
34
|
}
|
|
30
35
|
};
|
|
31
36
|
type FeatureName = keyof typeof OptionalFeatures;
|
|
@@ -60,6 +65,7 @@ export const DefaultEnvironmentCapabilities: Readonly<EnvironmentCapabilities> =
|
|
|
60
65
|
ContextSharingSupported: false,
|
|
61
66
|
SmartSummarize: false,
|
|
62
67
|
MagicFiltering: false,
|
|
68
|
+
EasyEdit: false,
|
|
63
69
|
ErrorExplanation: false,
|
|
64
70
|
DisableInputAssistance: false,
|
|
65
71
|
HiddenDraft: false,
|