@sapui5/sap.cux.home 1.136.7 → 1.136.9

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.
Files changed (48) hide show
  1. package/package.json +1 -1
  2. package/src/sap/cux/home/.library +4 -1
  3. package/src/sap/cux/home/AdvancedSettingsPanel.d.ts.map +1 -1
  4. package/src/sap/cux/home/AdvancedSettingsPanel.js +3 -0
  5. package/src/sap/cux/home/AdvancedSettingsPanel.js.map +1 -1
  6. package/src/sap/cux/home/AdvancedSettingsPanel.ts +3 -0
  7. package/src/sap/cux/home/App.d.ts.map +1 -1
  8. package/src/sap/cux/home/App.js +3 -0
  9. package/src/sap/cux/home/App.js.map +1 -1
  10. package/src/sap/cux/home/App.ts +3 -0
  11. package/src/sap/cux/home/AppsContainer.d.ts.map +1 -1
  12. package/src/sap/cux/home/AppsContainer.js +3 -2
  13. package/src/sap/cux/home/AppsContainer.js.map +1 -1
  14. package/src/sap/cux/home/AppsContainer.ts +3 -2
  15. package/src/sap/cux/home/BaseAppPanel.d.ts.map +1 -1
  16. package/src/sap/cux/home/BaseAppPanel.js +6 -1
  17. package/src/sap/cux/home/BaseAppPanel.js.map +1 -1
  18. package/src/sap/cux/home/BaseAppPanel.ts +6 -1
  19. package/src/sap/cux/home/ContentAdditionDialog.d.ts.map +1 -1
  20. package/src/sap/cux/home/ContentAdditionDialog.js +2 -3
  21. package/src/sap/cux/home/ContentAdditionDialog.js.map +1 -1
  22. package/src/sap/cux/home/ContentAdditionDialog.ts +2 -3
  23. package/src/sap/cux/home/FavAppPanel.d.ts +3 -0
  24. package/src/sap/cux/home/FavAppPanel.d.ts.map +1 -1
  25. package/src/sap/cux/home/FavAppPanel.js +172 -140
  26. package/src/sap/cux/home/FavAppPanel.js.map +1 -1
  27. package/src/sap/cux/home/FavAppPanel.ts +43 -26
  28. package/src/sap/cux/home/i18n/messagebundle_cnr.properties +6 -6
  29. package/src/sap/cux/home/i18n/messagebundle_de.properties +2 -2
  30. package/src/sap/cux/home/i18n/messagebundle_id.properties +14 -14
  31. package/src/sap/cux/home/i18n/messagebundle_it.properties +4 -4
  32. package/src/sap/cux/home/i18n/messagebundle_sh.properties +6 -6
  33. package/src/sap/cux/home/i18n/messagebundle_sl.properties +1 -1
  34. package/src/sap/cux/home/i18n/messagebundle_sr.properties +6 -6
  35. package/src/sap/cux/home/i18n/messagebundle_uk.properties +4 -4
  36. package/src/sap/cux/home/interface/AppsInterface.d.ts +1 -0
  37. package/src/sap/cux/home/interface/AppsInterface.d.ts.map +1 -1
  38. package/src/sap/cux/home/interface/AppsInterface.js.map +1 -1
  39. package/src/sap/cux/home/interface/AppsInterface.ts +1 -0
  40. package/src/sap/cux/home/library.js +1 -1
  41. package/src/sap/cux/home/library.js.map +1 -1
  42. package/src/sap/cux/home/library.ts +1 -1
  43. package/src/sap/cux/home/utils/AppManager.d.ts +7 -6
  44. package/src/sap/cux/home/utils/AppManager.d.ts.map +1 -1
  45. package/src/sap/cux/home/utils/AppManager.js +1 -1
  46. package/src/sap/cux/home/utils/AppManager.js.map +1 -1
  47. package/src/sap/cux/home/utils/AppManager.ts +9 -10
  48. package/ui5.yaml +1 -0
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAppPanel.js","names":["sap","ui","define","Log","GridContainer","GridContainerSettings","HeaderContainer","IllustratedMessage","IllustratedMessageSize","MessageToast","VBox","sap_m_library","Config","Container","__App","__BasePanel","__AppManager","___utils_DataFormatUtils","___utils_Device","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BackgroundDesign","_finallyRethrows","finalizer","bind","App","BasePanel","AppManager","getLeanURL","recycleId","DeviceType","BaseAppPanel","extend","metadata","library","defaultAggregation","aggregations","apps","type","singularName","multiple","events","persistDialog","supported","parameters","isSupported","properties","tileWidth","group","defaultValue","visibility","constructor","_constructor","id","settings","BasePanel.prototype.constructor.call","_isDirty","_isMobileDirty","_isLoaded","_isSupported","_setAggregation","control","items","aggregationName","forEach","oItem","addAggregation","init","_init","BasePanel.prototype.init.call","appManagerInstance","getInstance","_controlMap","Map","_appsPanelWrapper","_generateWrapper","_addContent","getId","_generateDesktopAppsWrapper","_generateMobileAppsWrapper","_generateErrorMessage","width","addStyleClass","controlId","get","set","_generateAppsWrapper","visible","getDeviceType","Mobile","backgroundDesign","Solid","_appsWrapper","layout","columnSize","getProperty","rowSize","gap","_mobileAppsWrapper","gridLayout","showDividers","height","content","_errorCard","wrap","generateIllustratedMessage","getApps","length","justifyContent","setHeight","generateApps","_generateApps","visualizationsData","map","visualizationData","index","groupId","persConfig","sectionId","defaultSection","isDefaultSection","getKey","app","title","subTitle","subtitle","bgColor","BGColor","key","icon","url","vizId","visualization","status","oldAppId","data","menuItems","menuItem","setApps","_setApps","fetchTileVisualization","_fetchTileVisualization","tiles","cards","getContent","card","concat","getItems","convertActivitiesToVisualizations","_convertActivitiesToVisualizations","activities","_this","Promise","resolve","all","_getAllAvailableVisualizations","getServiceAsync","availableVisualizations","URLParsingService","appActivities","filter","activity","appType","orgAppId","appId","visualizations","_convertToVisualization","undefined","_updateVisualizationAvailability","reject","_this2","_temp2","_allAvailableVisualizations","_temp","_getCatalogApps","catalogApps","reduce","catalogApp","_this3","fetchFavVizs","favoriteVisualizations","addedInFavorites","some","favoriteVisualization","_updateActivityInfo","updatedVizConfig","_catalogVisualizationCache","targetURL","prepareAppsBeforeLoad","_prepareAppsBeforeLoad","_findBestMatchingVisualization","matchingVisualizations","matchedVisualization","find","matchingViz","matchedVisualizationCache","matchedVisualizations","viz","params","parseShellHash","prio","push","filteredVisualizations","_filterMatchingVisualization","sort","val1","val2","parshedShellHash","activityParameters","activityParameterKeys","Object","keys","visualizationParams","visualizationParamKeys","bMatch","every","includes","catalogVisualizations","catalogVisualization","target","semanticObject","action","_addAppToFavorites","event","_this4","setBusy","source","getSource","getParent","getVizId","_temp3","addVisualization","_refreshAllPanels","message","_i18nBundle","getText","getTitle","show","error","_wasThrown","_result","isLoaded","setLoaded","_setLoaded","val","isDirty","setDesktopViewDirty","_setDesktopViewDirty","isMobileDirty","setMobileViewDirty","_setMobileViewDirty","_setBusy","isBusy","oAppsWrapper","_getGroup","groups","getAggregation","getGroupId","setSupported","_setSupported","_attachUserActivityTracking","last","on","do","isTrackingActivityEnabled","fireSupported","refresh","_refresh","_this5","refreshPanel","_generateIllustratedMessage","_errorMessage","illustrationSize","Base","description","_applyUngroupedTileColor","item","color","isA","updatedTileIndex","findIndex","tile","getUrl","setBackgroundColor","exit","_exit","destroy"],"sources":["BaseAppPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport GridContainer from \"sap/f/GridContainer\";\nimport GridContainerSettings from \"sap/f/GridContainerSettings\";\nimport Button from \"sap/m/Button\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport HeaderContainer from \"sap/m/HeaderContainer\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport Panel from \"sap/m/Panel\";\nimport VBox from \"sap/m/VBox\";\nimport { BackgroundDesign } from \"sap/m/library\";\nimport Event from \"sap/ui/base/Event\";\nimport Control from \"sap/ui/core/Control\";\nimport type UI5Element from \"sap/ui/core/Element\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport Config from \"sap/ushell/Config\";\nimport Container from \"sap/ushell/Container\";\nimport URLParsing from \"sap/ushell/services/URLParsing\";\nimport App from \"./App\";\nimport AppsContainer from \"./AppsContainer\";\nimport { $BaseAppPanelSettings } from \"./BaseAppPanel\";\nimport BasePanel from \"./BasePanel\";\nimport Group from \"./Group\";\nimport MenuItem from \"./MenuItem\";\nimport { IActivity, ICustomVisualization, IVisualization } from \"./interface/AppsInterface\";\nimport AppManager from \"./utils/AppManager\";\nimport { getLeanURL, recycleId } from \"./utils/DataFormatUtils\";\nimport { DeviceType } from \"./utils/Device\";\n\n/**\n *\n * Base App Panel class for managing and storing Apps.\n *\n * @extends sap.cux.home.BasePanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121.0\n *\n * @abstract\n * @internal\n * @experimental Since 1.121\n * @private\n *\n * @alias sap.cux.home.BaseAppPanel\n */\n\nexport default abstract class BaseAppPanel extends BasePanel {\n\tprivate _isDirty: boolean = true;\n\tprivate _isMobileDirty: boolean = true;\n\tprivate _isLoaded: boolean = false;\n\tprivate _appsWrapper!: GridContainer;\n\tprivate _errorCard!: VBox;\n\tprivate _errorMessage!: IllustratedMessage;\n\tprivate _appsPanelWrapper!: VBox;\n\tprivate _allAvailableVisualizations!: IVisualization[];\n\tprivate _catalogVisualizationCache!: Map<string, IVisualization>;\n\tprotected appManagerInstance!: AppManager;\n\tprivate _isSupported: boolean = true;\n\tprivate _mobileAppsWrapper!: HeaderContainer;\n\tprotected _menuItems!: MenuItem[];\n\tprotected _actionButtons!: Button[];\n\tprotected _controlMap!: Map<string, Control | UI5Element>;\n\n\tconstructor(idOrSettings?: string | $BaseAppPanelSettings);\n\tconstructor(id?: string, settings?: $BaseAppPanelSettings);\n\tconstructor(id?: string, settings?: $BaseAppPanelSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tdefaultAggregation: \"apps\",\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * Holds the apps aggregation\n\t\t\t */\n\t\t\tapps: { type: \"sap.cux.home.App\", singularName: \"app\", multiple: true }\n\t\t},\n\t\tevents: {\n\t\t\t/**\n\t\t\t * Fired when OnBeforeRendering of container is triggered.\n\t\t\t */\n\t\t\tpersistDialog: {},\n\t\t\t/**\n\t\t\t * Fired when the panel supported property is changed.\n\t\t\t */\n\t\t\tsupported: {\n\t\t\t\tparameters: {\n\t\t\t\t\tisSupported: { type: \"boolean\" }\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Specifies the width of the tile in pixels.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\ttileWidth: { type: \"number\", group: \"Misc\", defaultValue: 304, visibility: \"hidden\" }\n\t\t}\n\t};\n\n\t/**\n\t * This method must be implemented by panel, to set the apps that needs to be shown in the panel.\n\t * @abstract\n\t */\n\tabstract loadApps(): Promise<void>;\n\n\tpublic init() {\n\t\tsuper.init();\n\t\tthis.appManagerInstance = AppManager.getInstance();\n\t\tthis._controlMap = new Map();\n\t\t//Add Wrapper to Panel\n\t\tthis._appsPanelWrapper = this._generateWrapper();\n\t\tthis._addContent(this._appsPanelWrapper);\n\t}\n\n\t/**\n\t * Generates the wrapper for the apps panel, if it doesn't already exist\n\t *\n\t * @private\n\t * @override\n\t * @returns {sap.m.VBox} The apps panel wrapper.\n\t */\n\tprotected _generateWrapper() {\n\t\tif (!this._appsPanelWrapper) {\n\t\t\tthis._appsPanelWrapper = new VBox(`${this.getId()}-appsPanelWrapper`, {\n\t\t\t\titems: [this._generateDesktopAppsWrapper(), this._generateMobileAppsWrapper(), this._generateErrorMessage()],\n\t\t\t\twidth: \"100%\"\n\t\t\t}).addStyleClass(\"sapCuxAppsPanel sapCuxAppsPanelWrapper\");\n\t\t}\n\t\treturn this._appsPanelWrapper;\n\t}\n\n\t/**\n\t * Generates desktop apps wrapper for displaying apps.\n\t * @private\n\t * @returns {sap.m.VBox} The generated apps wrapper.\n\t */\n\tpublic _generateDesktopAppsWrapper() {\n\t\tconst controlId = `${this.getId()}-desktopAppsWrapper`;\n\t\tif (!this._controlMap.get(controlId)) {\n\t\t\tthis._controlMap.set(\n\t\t\t\tcontrolId,\n\t\t\t\tnew VBox({\n\t\t\t\t\tid: `${this.getId()}-desktopAppsWrapper`,\n\t\t\t\t\titems: [this._generateAppsWrapper()],\n\t\t\t\t\tvisible: this.getDeviceType() !== DeviceType.Mobile,\n\t\t\t\t\tbackgroundDesign: BackgroundDesign.Solid\n\t\t\t\t}).addStyleClass(\"sapCuxAppsPanel sapCuxAppsContainerBorder\")\n\t\t\t);\n\t\t}\n\t\treturn this._controlMap.get(controlId) as VBox;\n\t}\n\n\t/**\n\t * Generates app wrapper (GridContainer) for displaying apps.\n\t * @private\n\t * @returns {sap.m.GridContainer} The generated apps wrapper.\n\t */\n\tpublic _generateAppsWrapper(): GridContainer {\n\t\t//create container\n\t\tif (!this._appsWrapper) {\n\t\t\tthis._appsWrapper = new GridContainer({\n\t\t\t\tid: `${this.getId()}-appsWrapper`,\n\t\t\t\tlayout: new GridContainerSettings(`${this.getId()}-appsWrapperLayout`, {\n\t\t\t\t\tcolumnSize: `${this.getProperty(\"tileWidth\") / 16}rem`,\n\t\t\t\t\trowSize: \"4.375rem\",\n\t\t\t\t\tgap: \"0.5rem\"\n\t\t\t\t})\n\t\t\t});\n\t\t}\n\t\treturn this._appsWrapper;\n\t}\n\n\t/**\n\t * Generates wrapper for displaying apps in mobile mode.\n\t * @private\n\t * @returns {sap.m.HeaderContainer} The generated apps wrapper.\n\t */\n\tpublic _generateMobileAppsWrapper() {\n\t\tif (!this._mobileAppsWrapper) {\n\t\t\tthis._mobileAppsWrapper = new HeaderContainer({\n\t\t\t\tid: `${this.getId()}-mobileAppsWrapper`,\n\t\t\t\tgridLayout: true,\n\t\t\t\tshowDividers: false,\n\t\t\t\theight: \"23.5rem\",\n\t\t\t\tcontent: [],\n\t\t\t\tvisible: this.getDeviceType() === DeviceType.Mobile\n\t\t\t}).addStyleClass(\"sapUiMargin-26Bottom sapMHeaderContainerAlign\");\n\t\t}\n\t\treturn this._mobileAppsWrapper;\n\t}\n\n\t/**\n\t * Generates the error message wrapper with illustrated message.\n\t * @private\n\t * @returns {sap.m.VBox} Wrapper with illustrated message.\n\t */\n\tpublic _generateErrorMessage(): VBox {\n\t\tif (!this._errorCard) {\n\t\t\tthis._errorCard = new VBox(`${this.getId()}-errorCard`, {\n\t\t\t\twrap: \"Wrap\",\n\t\t\t\tbackgroundDesign: \"Solid\",\n\t\t\t\titems: [this.generateIllustratedMessage()],\n\t\t\t\tvisible: this.getApps().length === 0,\n\t\t\t\tjustifyContent: \"Center\"\n\t\t\t}).addStyleClass(\"sapCuxAppsPanel\");\n\t\t}\n\t\tthis._errorCard.setHeight(this.getDeviceType() === DeviceType.Mobile ? \"23.5rem\" : \"auto\");\n\t\treturn this._errorCard;\n\t}\n\n\t/**\n\t * Creates and returns app instances for given app objects\n\t * @private\n\t * @param {object[]} appObjects - Array of app object.\n\t * @returns {sap.cux.home.App[]} - Array of app instances\n\t */\n\tpublic generateApps(visualizationsData: ICustomVisualization[]) {\n\t\treturn visualizationsData.map((visualizationData, index) => {\n\t\t\tconst groupId = visualizationData.persConfig?.sectionId;\n\t\t\tconst defaultSection = visualizationData.persConfig?.isDefaultSection;\n\t\t\tconst id =\n\t\t\t\tgroupId && !defaultSection ? recycleId(`${this.getKey()}-groupApp-${index}`) : recycleId(`${this.getKey()}-app-${index}`);\n\t\t\tconst app = new App(id, {\n\t\t\t\ttitle: visualizationData.title,\n\t\t\t\tsubTitle: visualizationData.subtitle,\n\t\t\t\tbgColor: typeof visualizationData.BGColor === \"object\" ? visualizationData.BGColor.key : visualizationData.BGColor,\n\t\t\t\ticon: visualizationData.icon,\n\t\t\t\turl: visualizationData.url,\n\t\t\t\tvizId: visualizationData.vizId || visualizationData.visualization?.vizId,\n\t\t\t\tstatus: visualizationData.status\n\t\t\t});\n\t\t\tif (visualizationData.oldAppId) {\n\t\t\t\tapp.data(\"oldAppId\", visualizationData.oldAppId);\n\t\t\t}\n\t\t\tvisualizationData.menuItems?.forEach((menuItem) => {\n\t\t\t\tapp.addAggregation(\"menuItems\", menuItem, true);\n\t\t\t});\n\t\t\treturn app;\n\t\t});\n\t}\n\n\t/**\n\t * Add multiple apps in the apps aggregation.\n\t * @param {sap.cux.home.App[]} apps - Array of apps.\n\t */\n\tpublic setApps(apps: App[]) {\n\t\tapps.forEach((app) => {\n\t\t\tthis.addAggregation(\"apps\", app, true);\n\t\t});\n\t}\n\n\t/**\n\t * Fetches and returns the tile visualizations for the current device type (Mobile or Desktop).\n\t *\n\t * @public\n\t * @param {GenericTile[]} tiles - This array will be updated with new tile data based on the device type.\n\t *\n\t * @returns {GenericTile[]} - returns updated tiles\n\t */\n\tpublic fetchTileVisualization(tiles: GenericTile[] = []): GenericTile[] {\n\t\tif (this.getDeviceType() === DeviceType.Mobile) {\n\t\t\tconst cards = (this._generateMobileAppsWrapper()?.getContent() || []) as Panel[];\n\t\t\tfor (const card of cards) {\n\t\t\t\ttiles = tiles.concat((card?.getContent() || []) as GenericTile[]);\n\t\t\t}\n\t\t} else {\n\t\t\ttiles = (this._generateAppsWrapper()?.getItems() || []) as GenericTile[];\n\t\t}\n\t\treturn tiles;\n\t}\n\n\t/**\n\t * Convert array of provided activities to app\n\t * @private\n\t * @param {object[]} activities - Array of activities.\n\t * @returns {object[]} - Array of apps\n\t */\n\tprotected async convertActivitiesToVisualizations(activities: IActivity[]) {\n\t\tconst [availableVisualizations, URLParsingService] = await Promise.all([\n\t\t\tthis._getAllAvailableVisualizations(),\n\t\t\tContainer.getServiceAsync<URLParsing>(\"URLParsing\")\n\t\t]);\n\t\tconst appActivities = activities\n\t\t\t.filter((activity) => activity.appType === \"Application\")\n\t\t\t.map((activity) => {\n\t\t\t\tactivity.orgAppId = activity.appId;\n\t\t\t\tactivity.appId = activity.url;\n\t\t\t\treturn activity;\n\t\t\t});\n\t\tconst visualizations = appActivities\n\t\t\t.map((activity) => this._convertToVisualization(activity, availableVisualizations, URLParsingService))\n\t\t\t.filter((activity): activity is IActivity => activity !== undefined);\n\t\tconst updatedVisualizations = await this._updateVisualizationAvailability(visualizations);\n\t\treturn updatedVisualizations;\n\t}\n\n\t/**\n\t * Returns promise that resolves to array of all available visualizations\n\t * @private\n\t * @returns {Promise} A Promise that resolves to array of all available visualizations.\n\t */\n\tprivate async _getAllAvailableVisualizations() {\n\t\tif (!this._allAvailableVisualizations) {\n\t\t\tconst catalogApps = await this.appManagerInstance._getCatalogApps();\n\t\t\tthis._allAvailableVisualizations = catalogApps.reduce((visualizations: IVisualization[], catalogApp) => {\n\t\t\t\treturn visualizations.concat(catalogApp.visualizations || []);\n\t\t\t}, []);\n\t\t}\n\t\treturn this._allAvailableVisualizations;\n\t}\n\n\t/**\n\t * Updates vizualization array with information - if vizualization is present in favorites .\n\t * @private\n\t * @param {object[]} visualizations - Array of vizualizations.\n\t * @returns {object[]} - Array of updated vizualizations.\n\t */\n\tprivate async _updateVisualizationAvailability(visualizations: IActivity[]) {\n\t\tconst favoriteVisualizations: ICustomVisualization[] = await this.appManagerInstance.fetchFavVizs(true, true);\n\t\tvisualizations.forEach((visualization) => {\n\t\t\tvisualization.addedInFavorites = favoriteVisualizations.some(\n\t\t\t\t(favoriteVisualization) => favoriteVisualization.oldAppId === visualization.orgAppId\n\t\t\t);\n\t\t});\n\t\treturn visualizations;\n\t}\n\n\t/**\n\t * Updates user activity with provided vizualization info\n\t * @private\n\t * @param {object} activity - User activity.\n\t * @param {object} updatedVizConfig - Updated vizualization config.\n\t * @returns {object} - Updated user acitvity.\n\t */\n\tprivate _updateActivityInfo(activity: IActivity, updatedVizConfig: IVisualization) {\n\t\tthis._catalogVisualizationCache = this._catalogVisualizationCache || new Map<string, IVisualization>();\n\t\tactivity.targetURL = updatedVizConfig.targetURL;\n\t\tactivity.vizId = updatedVizConfig.vizId;\n\t\tthis._catalogVisualizationCache.set(activity.orgAppId, updatedVizConfig);\n\t\treturn activity;\n\t}\n\n\t/**\n\t * Prepares app and tile data before loading.\n\t * @param {App[]} apps - List of app objects.\n\t * @param {GenericTile[]} tiles - List of tiles.\n\t * @returns {Promise<{ apps: App[], tiles: GenericTile[] }>} A promise resolving with the provided apps and tiles.\n\t */\n\tpublic prepareAppsBeforeLoad(apps: App[], tiles: GenericTile[]): Promise<{ apps: App[]; tiles: GenericTile[] }> {\n\t\treturn Promise.resolve({ apps, tiles });\n\t}\n\n\t/**\n\t * Finds the best matching visualization for a given activity from a list of matching visualizations.\n\t *\n\t * This method first attempts to find an exact match for the target URL of the activity among the matching visualizations.\n\t * If no exact match is found, it uses the URLParsingService to compare parameters of the target URLs to find the best match.\n\t * It then updates the activity information with the best matching visualization.\n\t *\n\t * @private\n\t * @param {IActivity} activity - The activity for which to find the best matching visualization.\n\t * @param {IVisualization[]} matchingVisualizations - A list of visualizations that match the activity.\n\t * @param {URLParsing} URLParsingService - A service used to parse and compare target URLs.\n\t * @returns {IVisualization | undefined} The best matching visualization, or undefined if no match is found.\n\t */\n\tprivate _findBestMatchingVisualization(activity: IActivity, matchingVisualizations: IVisualization[], URLParsingService: URLParsing) {\n\t\t//if there are multiple matching apps, compare the target urls\n\t\tconst matchedVisualization = matchingVisualizations.find((matchingViz) => matchingViz.targetURL === activity.url);\n\t\tif (matchedVisualization) {\n\t\t\treturn this._updateActivityInfo(activity, matchedVisualization);\n\t\t} else {\n\t\t\t//edge cases, when no exact targetUrl match\n\t\t\tconst matchedVisualizationCache = new Map<string, object>();\n\t\t\tconst matchedVisualizations: { viz: IVisualization; params: unknown; prio: number }[] = [];\n\n\t\t\tmatchingVisualizations.forEach((visualization) => {\n\t\t\t\tconst targetURL: string = visualization.targetURL;\n\t\t\t\tif (!matchedVisualizationCache.get(targetURL)) {\n\t\t\t\t\tconst matchedVisualization = {\n\t\t\t\t\t\tviz: visualization,\n\t\t\t\t\t\tparams: (URLParsingService.parseShellHash(visualization.targetURL) as { params: { [key: string]: unknown[] } })\n\t\t\t\t\t\t\t.params,\n\t\t\t\t\t\tprio: 0\n\t\t\t\t\t};\n\t\t\t\t\tmatchedVisualizationCache.set(targetURL, matchedVisualization);\n\t\t\t\t\tmatchedVisualizations.push(matchedVisualization);\n\t\t\t\t}\n\t\t\t});\n\t\t\tconst filteredVisualizations = matchedVisualizations.filter((matchedVisualization) =>\n\t\t\t\tthis._filterMatchingVisualization(activity, matchedVisualization, URLParsingService)\n\t\t\t);\n\t\t\tif (filteredVisualizations.length) {\n\t\t\t\t// more than 1 matching condition for unique targetUrls\n\t\t\t\t// this could be either because there is exact match and/or also allItems true and/or no params in VizData param keys\n\t\t\t\t// then find best match possible, based on prio\n\t\t\t\tfilteredVisualizations.sort((val1, val2) => val1.prio - val2.prio);\n\t\t\t\treturn this._updateActivityInfo(activity, filteredVisualizations[0].viz);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Filters matching visualizations based on activity parameters and assigns priority.\n\t *\n\t * This method compares the parameters of the activity with those of a matched visualization\n\t * to determine if they match.\n\t *\n\t * @private\n\t * @returns {boolean} Returns true if the visualization matches the activity, false otherwise.\n\t */\n\tprivate _filterMatchingVisualization(\n\t\tactivity: IActivity,\n\t\tmatchedVisualization: { viz: IVisualization; params: unknown; prio: number },\n\t\tURLParsingService: URLParsing\n\t) {\n\t\tconst parshedShellHash = URLParsingService.parseShellHash(activity.url) as { params: { [key: string]: unknown[] } };\n\t\tconst activityParameters = parshedShellHash.params;\n\n\t\tconst activityParameterKeys = Object.keys(activityParameters);\n\t\tconst visualizationParams = matchedVisualization.params as { [key: string]: unknown[] };\n\t\t//filter keys other than 'allItems', for myinbox tasks allItems key is a generally common key hence filter that\n\t\tconst visualizationParamKeys = Object.keys(visualizationParams).filter((key) => key !== \"allItems\");\n\t\tif (visualizationParamKeys.length === activityParameterKeys.length) {\n\t\t\tconst bMatch = activityParameterKeys.every(\n\t\t\t\t(key) => visualizationParamKeys.includes(key) && visualizationParams[key][0] === activityParameters[key][0]\n\t\t\t);\n\t\t\tif (bMatch) {\n\t\t\t\tmatchedVisualization.prio = 1;\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t} else if (!visualizationParamKeys.length) {\n\t\t\t//this could mean either visualizationParamKeys did not have any key or the only key present was 'allItems'\n\t\t\t//if 'allItems' present give prio 2 else prio 3\n\t\t\tmatchedVisualization.prio = Object.keys(matchedVisualization.params as { [key: string]: unknown[] }).length ? 2 : 3;\n\t\t\treturn true;\n\t\t}\n\t\t//filtered visualizationParamKeys length doesnt match aAppParamKeys length & visualizationParamKeys length is not 0\n\t\treturn false;\n\t}\n\n\t/**\n\t * Converts given user activity to vizualization\n\t * @private\n\t * @param {object} activity - User Activity.\n\t * @param {object[]} catalogVisualizations - array of all available visualizations in catalog.\n\t * @param {object} URLParsingService - URL parsing service.\n\t * @returns {object} - visualization\n\t */\n\tprivate _convertToVisualization(activity: IActivity, catalogVisualizations: IVisualization[], URLParsingService: URLParsing) {\n\t\tthis._catalogVisualizationCache = this._catalogVisualizationCache || new Map<string, IVisualization>();\n\t\tconst catalogVisualization = this._catalogVisualizationCache.get(activity.orgAppId);\n\t\tif (catalogVisualization) {\n\t\t\treturn this._updateActivityInfo(activity, catalogVisualization);\n\t\t} else {\n\t\t\tconst matchingVisualizations = catalogVisualizations.filter(\n\t\t\t\t(visualization) =>\n\t\t\t\t\tvisualization.vizId && `#${visualization.target?.semanticObject}-${visualization.target?.action}` === activity.orgAppId\n\t\t\t);\n\t\t\tif (matchingVisualizations.length > 1) {\n\t\t\t\treturn this._findBestMatchingVisualization(activity, matchingVisualizations, URLParsingService);\n\t\t\t} else if (matchingVisualizations.length === 1) {\n\t\t\t\treturn this._updateActivityInfo(activity, matchingVisualizations[0]);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Adds visualization to favorite apps\n\t * @private\n\t * @param {sap.ui.base.Event} event - The event object.\n\t */\n\tprotected async _addAppToFavorites(event: Event) {\n\t\tthis.setBusy(true);\n\t\ttry {\n\t\t\tconst source = event.getSource<MenuItem>();\n\t\t\tconst app = source.getParent() as App;\n\t\t\tconst vizId = app.getVizId?.();\n\t\t\tif (vizId) {\n\t\t\t\t//Add Apps to the 'Recently Added Apps' section\n\t\t\t\tawait this.appManagerInstance.addVisualization(vizId);\n\t\t\t\tawait (this.getParent?.() as AppsContainer)._refreshAllPanels();\n\t\t\t\tconst message = this._i18nBundle.getText(\"appMovedToFavorites\", [app.getTitle()]) as string;\n\t\t\t\tMessageToast.show(message);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tLog.error(error as string);\n\t\t} finally {\n\t\t\tthis.setBusy(false);\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the panel is loaded. If the panel is not loaded then placholders are shown otherwise not\n\t * @private\n\t * @returns {boolean} true if the panel is loaded, false otherwise.\n\t */\n\tpublic isLoaded(): boolean {\n\t\treturn this._isLoaded;\n\t}\n\n\t/**\n\t * Set the loaded status of the app panel.\n\t * @private\n\t * @param {boolean} val - The new loaded status to set for the app panel.\n\t */\n\tpublic setLoaded(val: boolean): void {\n\t\tthis._isLoaded = val;\n\t}\n\n\t/**\n\t * Returns the dirty status of the app panel. If the panel is dirty then only re-render the apps\n\t * @private\n\t * @returns {boolean} true if the panel is dirty, false otherwise.\n\t */\n\tpublic isDirty(): boolean {\n\t\treturn this._isDirty;\n\t}\n\n\t/**\n\t * Set the dirty status of the app panel.\n\t * @private\n\t * @param {boolean} val - The new dirty status to set for the app panel.\n\t */\n\tpublic setDesktopViewDirty(val: boolean): void {\n\t\tthis._isDirty = val;\n\t}\n\n\t/**\n\t * Returns the dirty status of the app mobile panel. If the panel is dirty then only re-render the apps\n\t * @private\n\t * @returns {boolean} true if the panel is dirty, false otherwise.\n\t */\n\tpublic isMobileDirty(): boolean {\n\t\treturn this._isMobileDirty;\n\t}\n\n\t/**\n\t * Set the dirty status of the app mobile panel.\n\t * @private\n\t * @param {boolean} val - The new dirty status to set for the app mobile panel.\n\t */\n\tpublic setMobileViewDirty(val: boolean): void {\n\t\tthis._isMobileDirty = val;\n\t}\n\n\t/**\n\t * Sets aggregation for give control.\n\t * @param {Object} control - Control for which aggregation has to be set.\n\t * @param {Object[]} items - Items to be added in aggregation.\n\t * @param {string} aggregationName - Aggregation name\n\t * @private\n\t */\n\tpublic _setAggregation = function (control: Control | Group, items: Control[] | App[] = [], aggregationName = \"items\") {\n\t\titems.forEach((oItem) => {\n\t\t\tcontrol.addAggregation(aggregationName, oItem, true);\n\t\t});\n\t};\n\n\t/**\n\t * Sets the busy state of panel.\n\t * @private\n\t * @param {boolean} isBusy - Indicates whether the panel should be set to busy state.\n\t */\n\tprotected setBusy(isBusy: boolean) {\n\t\tconst oAppsWrapper = this._generateAppsWrapper();\n\t\toAppsWrapper.setBusy(isBusy);\n\t}\n\n\t/**\n\t * Retrieves the group with the specified group Id.\n\t * @private\n\t * @param {string} groupId - The Id of the group.\n\t * @returns {sap.cux.home.Group} The group with the specified group Id, or null if not found.\n\t */\n\tprotected _getGroup(groupId: string) {\n\t\tconst groups = (this.getAggregation(\"groups\") || []) as Group[];\n\t\treturn groups.find((group) => group.getGroupId() === groupId);\n\t}\n\n\t/**\n\t * Checks if the panel is supported.\n\t * @returns {boolean} True if the panel is supported, false otherwise.\n\t * @private\n\t */\n\tpublic isSupported() {\n\t\treturn this._isSupported;\n\t}\n\n\t/**\n\t * Sets panel as supported or unsupported.\n\t * @param {boolean} isSupported true if the panel is supported, false otherwise.\n\t * @private\n\t */\n\tpublic setSupported(isSupported: boolean) {\n\t\tthis._isSupported = isSupported;\n\t}\n\n\t/**\n\t * Attaches user activity tracking based on the configuration.\n\t * If user activity tracking is enabled, it listens to changes in tracking activity configuration\n\t * and fires a 'supported' event accordingly.\n\t * @private\n\t */\n\tprotected _attachUserActivityTracking() {\n\t\tif (Config.last(\"/core/shell/enableRecentActivity\")) {\n\t\t\tConfig.on(\"/core/shell/model/enableTrackingActivity\").do((isTrackingActivityEnabled: boolean) => {\n\t\t\t\tthis.fireSupported({ isSupported: isTrackingActivityEnabled });\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Refreshes the panel.\n\t * @public\n\t */\n\tprotected async refresh() {\n\t\tawait (this.getParent() as AppsContainer).refreshPanel(this);\n\t}\n\n\t/**\n\t * Generates default illustrated message for panel.\n\t * @private\n\t * @returns {sap.m.IllustratedMessage} Illustrated error message for panel.\n\t */\n\tprotected generateIllustratedMessage() {\n\t\tif (!this._errorMessage) {\n\t\t\tthis._errorMessage = new IllustratedMessage(`${this.getId()}-errorMessage`, {\n\t\t\t\tillustrationSize: IllustratedMessageSize.Base,\n\t\t\t\ttitle: this._i18nBundle.getText(\"noAppsTitle\"),\n\t\t\t\tdescription: this._i18nBundle.getText(\"noData\")\n\t\t\t}).addStyleClass(\"appsSectionMessageCard\");\n\t\t}\n\t\treturn this._errorMessage;\n\t}\n\n\t/**\n\t * Applies the selected color to an ungrouped tile.\n\t * @param {sap.cux.home.App | sap.cux.home.Group} item - The item control.\n\t * @param {string} color - The selected color.\n\t * @private\n\t */\n\tprotected _applyUngroupedTileColor(item: App | Group, color: string) {\n\t\tconst tiles: GenericTile[] = this.fetchTileVisualization();\n\t\tconst groupId = item.isA(\"sap.cux.home.Group\") ? (item as Group).getGroupId() : null;\n\t\tconst updatedTileIndex = tiles.findIndex((tile) =>\n\t\t\tgroupId ? tile.data(\"groupId\") === groupId : tile.getUrl() === getLeanURL((item as App).getUrl())\n\t\t);\n\t\ttiles[updatedTileIndex]?.setBackgroundColor(color);\n\t}\n\n\t/**\n\t * Exit lifecycle method.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic exit() {\n\t\tthis._controlMap.forEach((control) => {\n\t\t\tcontrol.destroy();\n\t\t});\n\t}\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AAHAA,GAAA,CAAAC,EAAA,CAAAC,MAAA,qWAAAC,GAAA,EAAAC,aAAA,EAAAC,qBAAA,EAAAC,eAAA,EAAAC,kBAAA,EAAAC,sBAAA,EAAAC,YAAA,EAAAC,IAAA,EAAAC,aAAA,EAAAC,MAAA,EAAAC,SAAA,EAAAC,KAAA,EAAAC,WAAA,EAAAC,YAAA,EAAAC,wBAAA,EAAAC,eAAA;EAAA;;EAAA,SAAAC,uBAAAC,GAAA;IAAA,OAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,WAAAD,GAAA,CAAAE,OAAA,mBAAAF,GAAA,CAAAE,OAAA,GAAAF,GAAA;EAAA;EAkjBO,SAAAG,OAAgBC,IAAI,EAAEC,OAAO,EAAE;IACrC,IAAI;MACH,IAAIC,MAAM,GAAGF,IAAI,CAAC,CAAC;IACpB,CAAC,CAAC,OAAMG,CAAC,EAAE;MACV,OAAOF,OAAO,CAACE,CAAC,CAAC;IAClB;IACA,IAAID,MAAM,IAAIA,MAAM,CAACE,IAAI,EAAE;MAC1B,OAAOF,MAAM,CAACE,IAAI,CAAC,KAAK,CAAC,EAAEH,OAAO,CAAC;IACpC;IACA,OAAOC,MAAM;EACd;EAAC,MA5iBQG,gBAAgB,GAAAlB,aAAA;EA+iBlB,SAASmB,gBAAgBA,CAACN,IAAI,EAAEO,SAAS,EAAE;IACjD,IAAI;MACH,IAAIL,MAAM,GAAGF,IAAI,CAAC,CAAC;IACpB,CAAC,CAAC,OAAOG,CAAC,EAAE;MACX,OAAOI,SAAS,CAAC,IAAI,EAAEJ,CAAC,CAAC;IAC1B;IACA,IAAID,MAAM,IAAIA,MAAM,CAACE,IAAI,EAAE;MAC1B,OAAOF,MAAM,CAACE,IAAI,CAACG,SAAS,CAACC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,EAAED,SAAS,CAACC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5E;IACA,OAAOD,SAAS,CAAC,KAAK,EAAEL,MAAM,CAAC;EAChC;EAAC,MAjjBMO,GAAG,GAAAd,sBAAA,CAAAL,KAAA;EAAA,MAGHoB,SAAS,GAAAf,sBAAA,CAAAJ,WAAA;EAAA,MAIToB,UAAU,GAAAhB,sBAAA,CAAAH,YAAA;EAAA,MACRoB,UAAU,GAAAnB,wBAAA;EAAA,MAAEoB,SAAS,GAAApB,wBAAA;EAAA,MACrBqB,UAAU,GAAApB,eAAA;EAEnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EAhBA,MAkB8BqB,YAAY,GAASL,SAAS,CAAAM,MAAA;IAuB3CC,QAAQ,EAAoB;MAC3CC,OAAO,EAAE,cAAc;MACvBC,kBAAkB,EAAE,MAAM;MAC1BC,YAAY,EAAE;QACb;AACH;AACA;QACGC,IAAI,EAAE;UAAEC,IAAI,EAAE,kBAAkB;UAAEC,YAAY,EAAE,KAAK;UAAEC,QAAQ,EAAE;QAAK;MACvE,CAAC;MACDC,MAAM,EAAE;QACP;AACH;AACA;QACGC,aAAa,EAAE,CAAC,CAAC;QACjB;AACH;AACA;QACGC,SAAS,EAAE;UACVC,UAAU,EAAE;YACXC,WAAW,EAAE;cAAEP,IAAI,EAAE;YAAU;UAChC;QACD;MACD,CAAC;MACDQ,UAAU,EAAE;QACX;AACH;AACA;AACA;AACA;QACGC,SAAS,EAAE;UAAET,IAAI,EAAE,QAAQ;UAAEU,KAAK,EAAE,MAAM;UAAEC,YAAY,EAAE,GAAG;UAAEC,UAAU,EAAE;QAAS;MACrF;IACD,CAAC;IAnCDC,WAAW,WAAAC,aAACC,EAAW,EAAEC,QAAgC,EAAE;MAC1DC,oCAAA,OAAMF,EAAE,EAAEC,QAAQ;MAAE,KAnBbE,QAAQ,GAAY,IAAI;MAAA,KACxBC,cAAc,GAAY,IAAI;MAAA,KAC9BC,SAAS,GAAY,KAAK;MAAA,KAQ1BC,YAAY,GAAY,IAAI;MA4epC;AACD;AACA;AACA;AACA;AACA;AACA;MANC,KAOOC,eAAe,GAAG,UAAUC,OAAwB,EAAEC,KAAwB,GAAG,EAAE,EAAEC,eAAe,GAAG,OAAO,EAAE;QACtHD,KAAK,CAACE,OAAO,CAAEC,KAAK,IAAK;UACxBJ,OAAO,CAACK,cAAc,CAACH,eAAe,EAAEE,KAAK,EAAE,IAAI,CAAC;QACrD,CAAC,CAAC;MACH,CAAC;IA7eD,CAAC;IAyCME,IAAI,WAAAC,MAAA,EAAG;MACbC,6BAAA;MACA,IAAI,CAACC,kBAAkB,GAAG3C,UAAU,CAAC4C,WAAW,CAAC,CAAC;MAClD,IAAI,CAACC,WAAW,GAAG,IAAIC,GAAG,CAAC,CAAC;MAC5B;MACA,IAAI,CAACC,iBAAiB,GAAG,IAAI,CAACC,gBAAgB,CAAC,CAAC;MAChD,IAAI,CAACC,WAAW,CAAC,IAAI,CAACF,iBAAiB,CAAC;IACzC,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;IACWC,gBAAgB,WAAAA,iBAAA,EAAG;MAC5B,IAAI,CAAC,IAAI,CAACD,iBAAiB,EAAE;QAC5B,IAAI,CAACA,iBAAiB,GAAG,IAAIxE,IAAI,CAAC,GAAG,IAAI,CAAC2E,KAAK,CAAC,CAAC,mBAAmB,EAAE;UACrEf,KAAK,EAAE,CAAC,IAAI,CAACgB,2BAA2B,CAAC,CAAC,EAAE,IAAI,CAACC,0BAA0B,CAAC,CAAC,EAAE,IAAI,CAACC,qBAAqB,CAAC,CAAC,CAAC;UAC5GC,KAAK,EAAE;QACR,CAAC,CAAC,CAACC,aAAa,CAAC,wCAAwC,CAAC;MAC3D;MACA,OAAO,IAAI,CAACR,iBAAiB;IAC9B,CAAC;IAED;AACD;AACA;AACA;AACA;IACQI,2BAA2B,WAAAA,4BAAA,EAAG;MACpC,MAAMK,SAAS,GAAG,GAAG,IAAI,CAACN,KAAK,CAAC,CAAC,qBAAqB;MACtD,IAAI,CAAC,IAAI,CAACL,WAAW,CAACY,GAAG,CAACD,SAAS,CAAC,EAAE;QACrC,IAAI,CAACX,WAAW,CAACa,GAAG,CACnBF,SAAS,EACT,IAAIjF,IAAI,CAAC;UACRmD,EAAE,EAAE,GAAG,IAAI,CAACwB,KAAK,CAAC,CAAC,qBAAqB;UACxCf,KAAK,EAAE,CAAC,IAAI,CAACwB,oBAAoB,CAAC,CAAC,CAAC;UACpCC,OAAO,EAAE,IAAI,CAACC,aAAa,CAAC,CAAC,KAAK1D,UAAU,CAAC2D,MAAM;UACnDC,gBAAgB,EAAErE,gBAAgB,CAACsE;QACpC,CAAC,CAAC,CAACT,aAAa,CAAC,2CAA2C,CAC7D,CAAC;MACF;MACA,OAAO,IAAI,CAACV,WAAW,CAACY,GAAG,CAACD,SAAS,CAAC;IACvC,CAAC;IAED;AACD;AACA;AACA;AACA;IACQG,oBAAoB,WAAAA,qBAAA,EAAkB;MAC5C;MACA,IAAI,CAAC,IAAI,CAACM,YAAY,EAAE;QACvB,IAAI,CAACA,YAAY,GAAG,IAAIhG,aAAa,CAAC;UACrCyD,EAAE,EAAE,GAAG,IAAI,CAACwB,KAAK,CAAC,CAAC,cAAc;UACjCgB,MAAM,EAAE,IAAIhG,qBAAqB,CAAC,GAAG,IAAI,CAACgF,KAAK,CAAC,CAAC,oBAAoB,EAAE;YACtEiB,UAAU,EAAE,GAAG,IAAI,CAACC,WAAW,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK;YACtDC,OAAO,EAAE,UAAU;YACnBC,GAAG,EAAE;UACN,CAAC;QACF,CAAC,CAAC;MACH;MACA,OAAO,IAAI,CAACL,YAAY;IACzB,CAAC;IAED;AACD;AACA;AACA;AACA;IACQb,0BAA0B,WAAAA,2BAAA,EAAG;MACnC,IAAI,CAAC,IAAI,CAACmB,kBAAkB,EAAE;QAC7B,IAAI,CAACA,kBAAkB,GAAG,IAAIpG,eAAe,CAAC;UAC7CuD,EAAE,EAAE,GAAG,IAAI,CAACwB,KAAK,CAAC,CAAC,oBAAoB;UACvCsB,UAAU,EAAE,IAAI;UAChBC,YAAY,EAAE,KAAK;UACnBC,MAAM,EAAE,SAAS;UACjBC,OAAO,EAAE,EAAE;UACXf,OAAO,EAAE,IAAI,CAACC,aAAa,CAAC,CAAC,KAAK1D,UAAU,CAAC2D;QAC9C,CAAC,CAAC,CAACP,aAAa,CAAC,+CAA+C,CAAC;MAClE;MACA,OAAO,IAAI,CAACgB,kBAAkB;IAC/B,CAAC;IAED;AACD;AACA;AACA;AACA;IACQlB,qBAAqB,WAAAA,sBAAA,EAAS;MACpC,IAAI,CAAC,IAAI,CAACuB,UAAU,EAAE;QACrB,IAAI,CAACA,UAAU,GAAG,IAAIrG,IAAI,CAAC,GAAG,IAAI,CAAC2E,KAAK,CAAC,CAAC,YAAY,EAAE;UACvD2B,IAAI,EAAE,MAAM;UACZd,gBAAgB,EAAE,OAAO;UACzB5B,KAAK,EAAE,CAAC,IAAI,CAAC2C,0BAA0B,CAAC,CAAC,CAAC;UAC1ClB,OAAO,EAAE,IAAI,CAACmB,OAAO,CAAC,CAAC,CAACC,MAAM,KAAK,CAAC;UACpCC,cAAc,EAAE;QACjB,CAAC,CAAC,CAAC1B,aAAa,CAAC,iBAAiB,CAAC;MACpC;MACA,IAAI,CAACqB,UAAU,CAACM,SAAS,CAAC,IAAI,CAACrB,aAAa,CAAC,CAAC,KAAK1D,UAAU,CAAC2D,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;MAC1F,OAAO,IAAI,CAACc,UAAU;IACvB,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACQO,YAAY,WAAAC,cAACC,kBAA0C,EAAE;MAC/D,OAAOA,kBAAkB,CAACC,GAAG,CAAC,CAACC,iBAAiB,EAAEC,KAAK,KAAK;QAC3D,MAAMC,OAAO,GAAGF,iBAAiB,CAACG,UAAU,EAAEC,SAAS;QACvD,MAAMC,cAAc,GAAGL,iBAAiB,CAACG,UAAU,EAAEG,gBAAgB;QACrE,MAAMnE,EAAE,GACP+D,OAAO,IAAI,CAACG,cAAc,GAAG1F,SAAS,CAAC,GAAG,IAAI,CAAC4F,MAAM,CAAC,CAAC,aAAaN,KAAK,EAAE,CAAC,GAAGtF,SAAS,CAAC,GAAG,IAAI,CAAC4F,MAAM,CAAC,CAAC,QAAQN,KAAK,EAAE,CAAC;QAC1H,MAAMO,GAAG,GAAG,IAAIjG,GAAG,CAAC4B,EAAE,EAAE;UACvBsE,KAAK,EAAET,iBAAiB,CAACS,KAAK;UAC9BC,QAAQ,EAAEV,iBAAiB,CAACW,QAAQ;UACpCC,OAAO,EAAE,OAAOZ,iBAAiB,CAACa,OAAO,KAAK,QAAQ,GAAGb,iBAAiB,CAACa,OAAO,CAACC,GAAG,GAAGd,iBAAiB,CAACa,OAAO;UAClHE,IAAI,EAAEf,iBAAiB,CAACe,IAAI;UAC5BC,GAAG,EAAEhB,iBAAiB,CAACgB,GAAG;UAC1BC,KAAK,EAAEjB,iBAAiB,CAACiB,KAAK,IAAIjB,iBAAiB,CAACkB,aAAa,EAAED,KAAK;UACxEE,MAAM,EAAEnB,iBAAiB,CAACmB;QAC3B,CAAC,CAAC;QACF,IAAInB,iBAAiB,CAACoB,QAAQ,EAAE;UAC/BZ,GAAG,CAACa,IAAI,CAAC,UAAU,EAAErB,iBAAiB,CAACoB,QAAQ,CAAC;QACjD;QACApB,iBAAiB,CAACsB,SAAS,EAAExE,OAAO,CAAEyE,QAAQ,IAAK;UAClDf,GAAG,CAACxD,cAAc,CAAC,WAAW,EAAEuE,QAAQ,EAAE,IAAI,CAAC;QAChD,CAAC,CAAC;QACF,OAAOf,GAAG;MACX,CAAC,CAAC;IACH,CAAC;IAED;AACD;AACA;AACA;IACQgB,OAAO,WAAAC,SAACtG,IAAW,EAAE;MAC3BA,IAAI,CAAC2B,OAAO,CAAE0D,GAAG,IAAK;QACrB,IAAI,CAACxD,cAAc,CAAC,MAAM,EAAEwD,GAAG,EAAE,IAAI,CAAC;MACvC,CAAC,CAAC;IACH,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;AACA;IACQkB,sBAAsB,WAAAC,wBAACC,KAAoB,GAAG,EAAE,EAAiB;MACvE,IAAI,IAAI,CAACtD,aAAa,CAAC,CAAC,KAAK1D,UAAU,CAAC2D,MAAM,EAAE;QAC/C,MAAMsD,KAAK,GAAI,IAAI,CAAChE,0BAA0B,CAAC,CAAC,EAAEiE,UAAU,CAAC,CAAC,IAAI,EAAc;QAChF,KAAK,MAAMC,IAAI,IAAIF,KAAK,EAAE;UACzBD,KAAK,GAAGA,KAAK,CAACI,MAAM,CAAED,IAAI,EAAED,UAAU,CAAC,CAAC,IAAI,EAAoB,CAAC;QAClE;MACD,CAAC,MAAM;QACNF,KAAK,GAAI,IAAI,CAACxD,oBAAoB,CAAC,CAAC,EAAE6D,QAAQ,CAAC,CAAC,IAAI,EAAoB;MACzE;MACA,OAAOL,KAAK;IACb,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACiBM,iCAAiC,WAAAC,mCAACC,UAAuB;MAAA,IAAE;QAAA,MAAAC,KAAA,GAEzE,IAAI;QAAA,OAAAC,OAAA,CAAAC,OAAA,CADsDD,OAAO,CAACE,GAAG,CAAC,CACtEH,KAAA,CAAKI,8BAA8B,CAAC,CAAC,EACrCtJ,SAAS,CAACuJ,eAAe,CAAa,YAAY,CAAC,CACnD,CAAC,EAAAxI,IAAA,WAHI,CAACyI,uBAAuB,EAAEC,iBAAiB,CAAC;UAIlD,MAAMC,aAAa,GAAGT,UAAU,CAC9BU,MAAM,CAAEC,QAAQ,IAAKA,QAAQ,CAACC,OAAO,KAAK,aAAa,CAAC,CACxDjD,GAAG,CAAEgD,QAAQ,IAAK;YAClBA,QAAQ,CAACE,QAAQ,GAAGF,QAAQ,CAACG,KAAK;YAClCH,QAAQ,CAACG,KAAK,GAAGH,QAAQ,CAAC/B,GAAG;YAC7B,OAAO+B,QAAQ;UAChB,CAAC,CAAC;UACH,MAAMI,cAAc,GAAGN,aAAa,CAClC9C,GAAG,CAAEgD,QAAQ,IAAKV,KAAA,CAAKe,uBAAuB,CAACL,QAAQ,EAAEJ,uBAAuB,EAAEC,iBAAiB,CAAC,CAAC,CACrGE,MAAM,CAAEC,QAAQ,IAA4BA,QAAQ,KAAKM,SAAS,CAAC;UAAC,OAAAf,OAAA,CAAAC,OAAA,CAClCF,KAAA,CAAKiB,gCAAgC,CAACH,cAAc,CAAC;QAAA;MAE1F,CAAC,QAAAlJ,CAAA;QAAA,OAAAqI,OAAA,CAAAiB,MAAA,CAAAtJ,CAAA;MAAA;IAAA;IAED;AACD;AACA;AACA;AACA;IACewI,8BAA8B,WAAAA,+BAAA;MAAA,IAAG;QAAA,MAAAe,MAAA,GACzC,IAAI;QAAA,SAAAC,OAAA;UAMT,OAAOD,MAAA,CAAKE,2BAA2B;QAAC;QAAA,MAAAC,KAAA;UAAA,IANpC,CAACH,MAAA,CAAKE,2BAA2B;YAAA,OAAApB,OAAA,CAAAC,OAAA,CACViB,MAAA,CAAKpG,kBAAkB,CAACwG,eAAe,CAAC,CAAC,EAAA1J,IAAA,WAA7D2J,WAAW;cACjBL,MAAA,CAAKE,2BAA2B,GAAGG,WAAW,CAACC,MAAM,CAAC,CAACX,cAAgC,EAAEY,UAAU,KAAK;gBACvG,OAAOZ,cAAc,CAACnB,MAAM,CAAC+B,UAAU,CAACZ,cAAc,IAAI,EAAE,CAAC;cAC9D,CAAC,EAAE,EAAE,CAAC;YAAC;UAAA;QAAA;QAAA,OAAAb,OAAA,CAAAC,OAAA,CAAAoB,KAAA,IAAAA,KAAA,CAAAzJ,IAAA,GAAAyJ,KAAA,CAAAzJ,IAAA,CAAAuJ,MAAA,IAAAA,MAAA,CAAAE,KAAA;MAGT,CAAC,QAAA1J,CAAA;QAAA,OAAAqI,OAAA,CAAAiB,MAAA,CAAAtJ,CAAA;MAAA;IAAA;IAED;AACD;AACA;AACA;AACA;AACA;IACeqJ,gCAAgC,WAAAA,iCAACH,cAA2B;MAAA,IAAE;QAAA,MAAAa,MAAA,GACd,IAAI;QAAA,OAAA1B,OAAA,CAAAC,OAAA,CAAJyB,MAAA,CAAK5G,kBAAkB,CAAC6G,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,EAAA/J,IAAA,WAAvGgK,sBAA8C;UACpDf,cAAc,CAACrG,OAAO,CAAEoE,aAAa,IAAK;YACzCA,aAAa,CAACiD,gBAAgB,GAAGD,sBAAsB,CAACE,IAAI,CAC1DC,qBAAqB,IAAKA,qBAAqB,CAACjD,QAAQ,KAAKF,aAAa,CAAC+B,QAC7E,CAAC;UACF,CAAC,CAAC;UACF,OAAOE,cAAc;QAAC;MACvB,CAAC,QAAAlJ,CAAA;QAAA,OAAAqI,OAAA,CAAAiB,MAAA,CAAAtJ,CAAA;MAAA;IAAA;IAED;AACD;AACA;AACA;AACA;AACA;AACA;IACSqK,mBAAmB,WAAAA,oBAACvB,QAAmB,EAAEwB,gBAAgC,EAAE;MAClF,IAAI,CAACC,0BAA0B,GAAG,IAAI,CAACA,0BAA0B,IAAI,IAAIjH,GAAG,CAAyB,CAAC;MACtGwF,QAAQ,CAAC0B,SAAS,GAAGF,gBAAgB,CAACE,SAAS;MAC/C1B,QAAQ,CAAC9B,KAAK,GAAGsD,gBAAgB,CAACtD,KAAK;MACvC,IAAI,CAACuD,0BAA0B,CAACrG,GAAG,CAAC4E,QAAQ,CAACE,QAAQ,EAAEsB,gBAAgB,CAAC;MACxE,OAAOxB,QAAQ;IAChB,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACQ2B,qBAAqB,WAAAC,uBAACxJ,IAAW,EAAEyG,KAAoB,EAAkD;MAC/G,OAAOU,OAAO,CAACC,OAAO,CAAC;QAAEpH,IAAI;QAAEyG;MAAM,CAAC,CAAC;IACxC,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACSgD,8BAA8B,WAAAA,+BAAC7B,QAAmB,EAAE8B,sBAAwC,EAAEjC,iBAA6B,EAAE;MACpI;MACA,MAAMkC,oBAAoB,GAAGD,sBAAsB,CAACE,IAAI,CAAEC,WAAW,IAAKA,WAAW,CAACP,SAAS,KAAK1B,QAAQ,CAAC/B,GAAG,CAAC;MACjH,IAAI8D,oBAAoB,EAAE;QACzB,OAAO,IAAI,CAACR,mBAAmB,CAACvB,QAAQ,EAAE+B,oBAAoB,CAAC;MAChE,CAAC,MAAM;QACN;QACA,MAAMG,yBAAyB,GAAG,IAAI1H,GAAG,CAAiB,CAAC;QAC3D,MAAM2H,qBAA+E,GAAG,EAAE;QAE1FL,sBAAsB,CAAC/H,OAAO,CAAEoE,aAAa,IAAK;UACjD,MAAMuD,SAAiB,GAAGvD,aAAa,CAACuD,SAAS;UACjD,IAAI,CAACQ,yBAAyB,CAAC/G,GAAG,CAACuG,SAAS,CAAC,EAAE;YAC9C,MAAMK,oBAAoB,GAAG;cAC5BK,GAAG,EAAEjE,aAAa;cAClBkE,MAAM,EAAGxC,iBAAiB,CAACyC,cAAc,CAACnE,aAAa,CAACuD,SAAS,CAAC,CAChEW,MAAM;cACRE,IAAI,EAAE;YACP,CAAC;YACDL,yBAAyB,CAAC9G,GAAG,CAACsG,SAAS,EAAEK,oBAAoB,CAAC;YAC9DI,qBAAqB,CAACK,IAAI,CAACT,oBAAoB,CAAC;UACjD;QACD,CAAC,CAAC;QACF,MAAMU,sBAAsB,GAAGN,qBAAqB,CAACpC,MAAM,CAAEgC,oBAAoB,IAChF,IAAI,CAACW,4BAA4B,CAAC1C,QAAQ,EAAE+B,oBAAoB,EAAElC,iBAAiB,CACpF,CAAC;QACD,IAAI4C,sBAAsB,CAAC/F,MAAM,EAAE;UAClC;UACA;UACA;UACA+F,sBAAsB,CAACE,IAAI,CAAC,CAACC,IAAI,EAAEC,IAAI,KAAKD,IAAI,CAACL,IAAI,GAAGM,IAAI,CAACN,IAAI,CAAC;UAClE,OAAO,IAAI,CAAChB,mBAAmB,CAACvB,QAAQ,EAAEyC,sBAAsB,CAAC,CAAC,CAAC,CAACL,GAAG,CAAC;QACzE;MACD;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;IACSM,4BAA4B,WAAAA,6BACnC1C,QAAmB,EACnB+B,oBAA4E,EAC5ElC,iBAA6B,EAC5B;MACD,MAAMiD,gBAAgB,GAAGjD,iBAAiB,CAACyC,cAAc,CAACtC,QAAQ,CAAC/B,GAAG,CAA6C;MACnH,MAAM8E,kBAAkB,GAAGD,gBAAgB,CAACT,MAAM;MAElD,MAAMW,qBAAqB,GAAGC,MAAM,CAACC,IAAI,CAACH,kBAAkB,CAAC;MAC7D,MAAMI,mBAAmB,GAAGpB,oBAAoB,CAACM,MAAsC;MACvF;MACA,MAAMe,sBAAsB,GAAGH,MAAM,CAACC,IAAI,CAACC,mBAAmB,CAAC,CAACpD,MAAM,CAAEhC,GAAG,IAAKA,GAAG,KAAK,UAAU,CAAC;MACnG,IAAIqF,sBAAsB,CAAC1G,MAAM,KAAKsG,qBAAqB,CAACtG,MAAM,EAAE;QACnE,MAAM2G,MAAM,GAAGL,qBAAqB,CAACM,KAAK,CACxCvF,GAAG,IAAKqF,sBAAsB,CAACG,QAAQ,CAACxF,GAAG,CAAC,IAAIoF,mBAAmB,CAACpF,GAAG,CAAC,CAAC,CAAC,CAAC,KAAKgF,kBAAkB,CAAChF,GAAG,CAAC,CAAC,CAAC,CAC3G,CAAC;QACD,IAAIsF,MAAM,EAAE;UACXtB,oBAAoB,CAACQ,IAAI,GAAG,CAAC;UAC7B,OAAO,IAAI;QACZ;QACA,OAAO,KAAK;MACb,CAAC,MAAM,IAAI,CAACa,sBAAsB,CAAC1G,MAAM,EAAE;QAC1C;QACA;QACAqF,oBAAoB,CAACQ,IAAI,GAAGU,MAAM,CAACC,IAAI,CAACnB,oBAAoB,CAACM,MAAsC,CAAC,CAAC3F,MAAM,GAAG,CAAC,GAAG,CAAC;QACnH,OAAO,IAAI;MACZ;MACA;MACA,OAAO,KAAK;IACb,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;AACA;AACA;IACS2D,uBAAuB,WAAAA,wBAACL,QAAmB,EAAEwD,qBAAuC,EAAE3D,iBAA6B,EAAE;MAC5H,IAAI,CAAC4B,0BAA0B,GAAG,IAAI,CAACA,0BAA0B,IAAI,IAAIjH,GAAG,CAAyB,CAAC;MACtG,MAAMiJ,oBAAoB,GAAG,IAAI,CAAChC,0BAA0B,CAACtG,GAAG,CAAC6E,QAAQ,CAACE,QAAQ,CAAC;MACnF,IAAIuD,oBAAoB,EAAE;QACzB,OAAO,IAAI,CAAClC,mBAAmB,CAACvB,QAAQ,EAAEyD,oBAAoB,CAAC;MAChE,CAAC,MAAM;QACN,MAAM3B,sBAAsB,GAAG0B,qBAAqB,CAACzD,MAAM,CACzD5B,aAAa,IACbA,aAAa,CAACD,KAAK,IAAI,IAAIC,aAAa,CAACuF,MAAM,EAAEC,cAAc,IAAIxF,aAAa,CAACuF,MAAM,EAAEE,MAAM,EAAE,KAAK5D,QAAQ,CAACE,QACjH,CAAC;QACD,IAAI4B,sBAAsB,CAACpF,MAAM,GAAG,CAAC,EAAE;UACtC,OAAO,IAAI,CAACmF,8BAA8B,CAAC7B,QAAQ,EAAE8B,sBAAsB,EAAEjC,iBAAiB,CAAC;QAChG,CAAC,MAAM,IAAIiC,sBAAsB,CAACpF,MAAM,KAAK,CAAC,EAAE;UAC/C,OAAO,IAAI,CAAC6E,mBAAmB,CAACvB,QAAQ,EAAE8B,sBAAsB,CAAC,CAAC,CAAC,CAAC;QACrE;MACD;IACD,CAAC;IAED;AACD;AACA;AACA;AACA;IACiB+B,kBAAkB,WAAAA,mBAACC,KAAY;MAAA,IAAE;QAAA,MAAAC,MAAA,GAChD,IAAI;QAAJA,MAAA,CAAKC,OAAO,CAAC,IAAI,CAAC;QAAC,OAAAzE,OAAA,CAAAC,OAAA,CAAAnI,gBAAA;UAAA,OAAAP,MAAA,aACf;YACH,MAAMmN,MAAM,GAAGH,KAAK,CAACI,SAAS,CAAW,CAAC;YAC1C,MAAMzG,GAAG,GAAGwG,MAAM,CAACE,SAAS,CAAC,CAAQ;YACrC,MAAMjG,KAAK,GAAGT,GAAG,CAAC2G,QAAQ,GAAG,CAAC;YAAC,MAAAC,MAAA;cAAA,IAC3BnG,KAAK;gBACR;gBAAA,OAAAqB,OAAA,CAAAC,OAAA,CACMuE,MAAA,CAAK1J,kBAAkB,CAACiK,gBAAgB,CAACpG,KAAK,CAAC,EAAA/G,IAAA;kBAAA,OAAAoI,OAAA,CAAAC,OAAA,CAC/C,CAACuE,MAAA,CAAKI,SAAS,GAAG,CAAC,EAAmBI,iBAAiB,CAAC,CAAC,EAAApN,IAAA;oBAC/D,MAAMqN,OAAO,GAAGT,MAAA,CAAKU,WAAW,CAACC,OAAO,CAAC,qBAAqB,EAAE,CAACjH,GAAG,CAACkH,QAAQ,CAAC,CAAC,CAAC,CAAW;oBAC3F3O,YAAY,CAAC4O,IAAI,CAACJ,OAAO,CAAC;kBAAC;gBAAA;cAAA;YAAA;YAAA,IAAAH,MAAA,IAAAA,MAAA,CAAAlN,IAAA,SAAAkN,MAAA,CAAAlN,IAAA;UAE7B,CAAC,YAAQ0N,KAAK,EAAE;YACfnP,GAAG,CAACmP,KAAK,CAACA,KAAe,CAAC;UAC3B,CAAC;QAAA,aAAAC,UAAA,EAAAC,OAAA;UACAhB,MAAA,CAAKC,OAAO,CAAC,KAAK,CAAC;UAAC,IAAAc,UAAA,QAAAC,OAAA;UAAA,OAAAA,OAAA;QAAA;MAEtB,CAAC,QAAA7N,CAAA;QAAA,OAAAqI,OAAA,CAAAiB,MAAA,CAAAtJ,CAAA;MAAA;IAAA;IAED;AACD;AACA;AACA;AACA;IACQ8N,QAAQ,WAAAvL,UAAA,EAAY;MAC1B,OAAO,IAAI,CAACA,SAAS;IACtB,CAAC;IAED;AACD;AACA;AACA;AACA;IACQwL,SAAS,WAAAC,WAACC,GAAY,EAAQ;MACpC,IAAI,CAAC1L,SAAS,GAAG0L,GAAG;IACrB,CAAC;IAED;AACD;AACA;AACA;AACA;IACQC,OAAO,WAAA7L,SAAA,EAAY;MACzB,OAAO,IAAI,CAACA,QAAQ;IACrB,CAAC;IAED;AACD;AACA;AACA;AACA;IACQ8L,mBAAmB,WAAAC,qBAACH,GAAY,EAAQ;MAC9C,IAAI,CAAC5L,QAAQ,GAAG4L,GAAG;IACpB,CAAC;IAED;AACD;AACA;AACA;AACA;IACQI,aAAa,WAAA/L,eAAA,EAAY;MAC/B,OAAO,IAAI,CAACA,cAAc;IAC3B,CAAC;IAED;AACD;AACA;AACA;AACA;IACQgM,kBAAkB,WAAAC,oBAACN,GAAY,EAAQ;MAC7C,IAAI,CAAC3L,cAAc,GAAG2L,GAAG;IAC1B,CAAC;IAeD;AACD;AACA;AACA;AACA;IACWnB,OAAO,WAAA0B,SAACC,MAAe,EAAE;MAClC,MAAMC,YAAY,GAAG,IAAI,CAACvK,oBAAoB,CAAC,CAAC;MAChDuK,YAAY,CAAC5B,OAAO,CAAC2B,MAAM,CAAC;IAC7B,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACWE,SAAS,WAAAA,UAAC1I,OAAe,EAAE;MACpC,MAAM2I,MAAM,GAAI,IAAI,CAACC,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAc;MAC/D,OAAOD,MAAM,CAAC9D,IAAI,CAAEjJ,KAAK,IAAKA,KAAK,CAACiN,UAAU,CAAC,CAAC,KAAK7I,OAAO,CAAC;IAC9D,CAAC;IAED;AACD;AACA;AACA;AACA;IACQvE,WAAW,WAAAc,aAAA,EAAG;MACpB,OAAO,IAAI,CAACA,YAAY;IACzB,CAAC;IAED;AACD;AACA;AACA;AACA;IACQuM,YAAY,WAAAC,cAACtN,WAAoB,EAAE;MACzC,IAAI,CAACc,YAAY,GAAGd,WAAW;IAChC,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACWuN,2BAA2B,WAAAA,4BAAA,EAAG;MACvC,IAAIhQ,MAAM,CAACiQ,IAAI,CAAC,kCAAkC,CAAC,EAAE;QACpDjQ,MAAM,CAACkQ,EAAE,CAAC,0CAA0C,CAAC,CAACC,EAAE,CAAEC,yBAAkC,IAAK;UAChG,IAAI,CAACC,aAAa,CAAC;YAAE5N,WAAW,EAAE2N;UAA0B,CAAC,CAAC;QAC/D,CAAC,CAAC;MACH;IACD,CAAC;IAED;AACD;AACA;AACA;IACiBE,OAAO,WAAAC,SAAA;MAAA,IAAG;QAAA,MAAAC,MAAA,GAClB,IAAI;QAAA,OAAApH,OAAA,CAAAC,OAAA,CAAJmH,MAAA,CAAKxC,SAAS,CAAC,CAAC,CAAmByC,YAAY,CAAAD,MAAK,CAAC,EAAAxP,IAAA;MAC7D,CAAC,QAAAD,CAAA;QAAA,OAAAqI,OAAA,CAAAiB,MAAA,CAAAtJ,CAAA;MAAA;IAAA;IAED;AACD;AACA;AACA;AACA;IACWsF,0BAA0B,WAAAqK,4BAAA,EAAG;MACtC,IAAI,CAAC,IAAI,CAACC,aAAa,EAAE;QACxB,IAAI,CAACA,aAAa,GAAG,IAAIhR,kBAAkB,CAAC,GAAG,IAAI,CAAC8E,KAAK,CAAC,CAAC,eAAe,EAAE;UAC3EmM,gBAAgB,EAAEhR,sBAAsB,CAACiR,IAAI;UAC7CtJ,KAAK,EAAE,IAAI,CAAC+G,WAAW,CAACC,OAAO,CAAC,aAAa,CAAC;UAC9CuC,WAAW,EAAE,IAAI,CAACxC,WAAW,CAACC,OAAO,CAAC,QAAQ;QAC/C,CAAC,CAAC,CAACzJ,aAAa,CAAC,wBAAwB,CAAC;MAC3C;MACA,OAAO,IAAI,CAAC6L,aAAa;IAC1B,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACWI,wBAAwB,WAAAA,yBAACC,IAAiB,EAAEC,KAAa,EAAE;MACpE,MAAMvI,KAAoB,GAAG,IAAI,CAACF,sBAAsB,CAAC,CAAC;MAC1D,MAAMxB,OAAO,GAAGgK,IAAI,CAACE,GAAG,CAAC,oBAAoB,CAAC,GAAIF,IAAI,CAAWnB,UAAU,CAAC,CAAC,GAAG,IAAI;MACpF,MAAMsB,gBAAgB,GAAGzI,KAAK,CAAC0I,SAAS,CAAEC,IAAI,IAC7CrK,OAAO,GAAGqK,IAAI,CAAClJ,IAAI,CAAC,SAAS,CAAC,KAAKnB,OAAO,GAAGqK,IAAI,CAACC,MAAM,CAAC,CAAC,KAAK9P,UAAU,CAAEwP,IAAI,CAASM,MAAM,CAAC,CAAC,CACjG,CAAC;MACD5I,KAAK,CAACyI,gBAAgB,CAAC,EAAEI,kBAAkB,CAACN,KAAK,CAAC;IACnD,CAAC;IAED;AACD;AACA;AACA;AACA;AACA;IACQO,IAAI,WAAAC,MAAA,EAAG;MACb,IAAI,CAACrN,WAAW,CAACR,OAAO,CAAEH,OAAO,IAAK;QACrCA,OAAO,CAACiO,OAAO,CAAC,CAAC;MAClB,CAAC,CAAC;IACH;EAAC;EAAA,OA1mB4B/P,YAAY;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"BaseAppPanel.js","names":["sap","ui","define","Log","GridContainer","GridContainerSettings","HeaderContainer","IllustratedMessage","IllustratedMessageSize","MessageToast","VBox","sap_m_library","Config","Container","__App","__BasePanel","__AppManager","___utils_DataFormatUtils","___utils_Device","_interopRequireDefault","obj","__esModule","default","_catch","body","recover","result","e","then","BackgroundDesign","_finallyRethrows","finalizer","bind","App","BasePanel","AppManager","getLeanURL","recycleId","DeviceType","BaseAppPanel","extend","metadata","library","defaultAggregation","aggregations","apps","type","singularName","multiple","events","persistDialog","supported","parameters","isSupported","properties","tileWidth","group","defaultValue","visibility","constructor","_constructor","id","settings","BasePanel.prototype.constructor.call","_isDirty","_isMobileDirty","_isLoaded","_isSupported","_setAggregation","control","items","aggregationName","forEach","oItem","addAggregation","init","_init","BasePanel.prototype.init.call","appManagerInstance","getInstance","_controlMap","Map","_appsPanelWrapper","_generateWrapper","_addContent","getId","_generateDesktopAppsWrapper","_generateMobileAppsWrapper","_generateErrorMessage","width","addStyleClass","controlId","get","set","_generateAppsWrapper","visible","getDeviceType","Mobile","backgroundDesign","Solid","_appsWrapper","layout","columnSize","getProperty","rowSize","gap","_mobileAppsWrapper","gridLayout","showDividers","height","content","_errorCard","wrap","generateIllustratedMessage","getApps","length","justifyContent","setHeight","generateApps","_generateApps","visualizationsData","map","visualizationData","index","groupId","persConfig","sectionId","defaultSection","isDefaultSection","getKey","app","title","subTitle","subtitle","bgColor","BGColor","key","icon","vizId","visualization","status","url","setProperty","oldAppId","data","menuItems","menuItem","setApps","_setApps","fetchTileVisualization","_fetchTileVisualization","tiles","cards","getContent","card","concat","getItems","convertActivitiesToVisualizations","_convertActivitiesToVisualizations","activities","_this","Promise","resolve","all","_getAllAvailableVisualizations","getServiceAsync","availableVisualizations","URLParsingService","appActivities","filter","activity","appType","orgAppId","appId","visualizations","_convertToVisualization","undefined","_updateVisualizationAvailability","reject","_this2","_temp2","_allAvailableVisualizations","_temp","_getCatalogApps","catalogApps","reduce","catalogApp","_this3","fetchFavVizs","favoriteVisualizations","addedInFavorites","some","favoriteVisualization","_updateActivityInfo","updatedVizConfig","_catalogVisualizationCache","targetURL","prepareAppsBeforeLoad","_prepareAppsBeforeLoad","_findBestMatchingVisualization","matchingVisualizations","matchedVisualization","find","matchingViz","matchedVisualizationCache","matchedVisualizations","viz","params","parseShellHash","prio","push","filteredVisualizations","_filterMatchingVisualization","sort","val1","val2","parshedShellHash","activityParameters","activityParameterKeys","Object","keys","visualizationParams","visualizationParamKeys","bMatch","every","includes","catalogVisualizations","catalogVisualization","target","semanticObject","action","_addAppToFavorites","event","_this4","setBusy","source","getSource","getParent","getVizId","_temp3","addVisualization","_refreshAllPanels","message","_i18nBundle","getText","getTitle","show","error","_wasThrown","_result","isLoaded","setLoaded","_setLoaded","val","isDirty","setDesktopViewDirty","_setDesktopViewDirty","isMobileDirty","setMobileViewDirty","_setMobileViewDirty","_setBusy","isBusy","oAppsWrapper","_getGroup","groups","getAggregation","getGroupId","setSupported","_setSupported","_attachUserActivityTracking","last","on","do","isTrackingActivityEnabled","fireSupported","refresh","_refresh","_this5","refreshPanel","_generateIllustratedMessage","_errorMessage","illustrationSize","Base","description","_applyUngroupedTileColor","item","color","isA","updatedTileIndex","findIndex","tile","getUrl","setBackgroundColor","exit","_exit","destroy"],"sources":["BaseAppPanel.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport Log from \"sap/base/Log\";\nimport GridContainer from \"sap/f/GridContainer\";\nimport GridContainerSettings from \"sap/f/GridContainerSettings\";\nimport Button from \"sap/m/Button\";\nimport GenericTile from \"sap/m/GenericTile\";\nimport HeaderContainer from \"sap/m/HeaderContainer\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport MessageToast from \"sap/m/MessageToast\";\nimport Panel from \"sap/m/Panel\";\nimport VBox from \"sap/m/VBox\";\nimport { BackgroundDesign } from \"sap/m/library\";\nimport Event from \"sap/ui/base/Event\";\nimport Control from \"sap/ui/core/Control\";\nimport type UI5Element from \"sap/ui/core/Element\";\nimport type { MetadataOptions } from \"sap/ui/core/Element\";\nimport Config from \"sap/ushell/Config\";\nimport Container from \"sap/ushell/Container\";\nimport URLParsing from \"sap/ushell/services/URLParsing\";\nimport App from \"./App\";\nimport AppsContainer from \"./AppsContainer\";\nimport { $BaseAppPanelSettings } from \"./BaseAppPanel\";\nimport BasePanel from \"./BasePanel\";\nimport Group from \"./Group\";\nimport MenuItem from \"./MenuItem\";\nimport { IActivity, ICustomVisualization, IVisualization } from \"./interface/AppsInterface\";\nimport AppManager from \"./utils/AppManager\";\nimport { getLeanURL, recycleId } from \"./utils/DataFormatUtils\";\nimport { DeviceType } from \"./utils/Device\";\n\n/**\n *\n * Base App Panel class for managing and storing Apps.\n *\n * @extends sap.cux.home.BasePanel\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.121.0\n *\n * @abstract\n * @internal\n * @experimental Since 1.121\n * @private\n *\n * @alias sap.cux.home.BaseAppPanel\n */\n\nexport default abstract class BaseAppPanel extends BasePanel {\n\tprivate _isDirty: boolean = true;\n\tprivate _isMobileDirty: boolean = true;\n\tprivate _isLoaded: boolean = false;\n\tprivate _appsWrapper!: GridContainer;\n\tprivate _errorCard!: VBox;\n\tprivate _errorMessage!: IllustratedMessage;\n\tprivate _appsPanelWrapper!: VBox;\n\tprivate _allAvailableVisualizations!: IVisualization[];\n\tprivate _catalogVisualizationCache!: Map<string, IVisualization>;\n\tprotected appManagerInstance!: AppManager;\n\tprivate _isSupported: boolean = true;\n\tprivate _mobileAppsWrapper!: HeaderContainer;\n\tprotected _menuItems!: MenuItem[];\n\tprotected _actionButtons!: Button[];\n\tprotected _controlMap!: Map<string, Control | UI5Element>;\n\n\tconstructor(idOrSettings?: string | $BaseAppPanelSettings);\n\tconstructor(id?: string, settings?: $BaseAppPanelSettings);\n\tconstructor(id?: string, settings?: $BaseAppPanelSettings) {\n\t\tsuper(id, settings);\n\t}\n\n\tstatic readonly metadata: MetadataOptions = {\n\t\tlibrary: \"sap.cux.home\",\n\t\tdefaultAggregation: \"apps\",\n\t\taggregations: {\n\t\t\t/**\n\t\t\t * Holds the apps aggregation\n\t\t\t */\n\t\t\tapps: { type: \"sap.cux.home.App\", singularName: \"app\", multiple: true }\n\t\t},\n\t\tevents: {\n\t\t\t/**\n\t\t\t * Fired when OnBeforeRendering of container is triggered.\n\t\t\t */\n\t\t\tpersistDialog: {},\n\t\t\t/**\n\t\t\t * Fired when the panel supported property is changed.\n\t\t\t */\n\t\t\tsupported: {\n\t\t\t\tparameters: {\n\t\t\t\t\tisSupported: { type: \"boolean\" }\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tproperties: {\n\t\t\t/**\n\t\t\t * Specifies the width of the tile in pixels.\n\t\t\t *\n\t\t\t * @private\n\t\t\t */\n\t\t\ttileWidth: { type: \"number\", group: \"Misc\", defaultValue: 304, visibility: \"hidden\" }\n\t\t}\n\t};\n\n\t/**\n\t * This method must be implemented by panel, to set the apps that needs to be shown in the panel.\n\t * @abstract\n\t */\n\tabstract loadApps(): Promise<void>;\n\n\tpublic init() {\n\t\tsuper.init();\n\t\tthis.appManagerInstance = AppManager.getInstance();\n\t\tthis._controlMap = new Map();\n\t\t//Add Wrapper to Panel\n\t\tthis._appsPanelWrapper = this._generateWrapper();\n\t\tthis._addContent(this._appsPanelWrapper);\n\t}\n\n\t/**\n\t * Generates the wrapper for the apps panel, if it doesn't already exist\n\t *\n\t * @private\n\t * @override\n\t * @returns {sap.m.VBox} The apps panel wrapper.\n\t */\n\tprotected _generateWrapper() {\n\t\tif (!this._appsPanelWrapper) {\n\t\t\tthis._appsPanelWrapper = new VBox(`${this.getId()}-appsPanelWrapper`, {\n\t\t\t\titems: [this._generateDesktopAppsWrapper(), this._generateMobileAppsWrapper(), this._generateErrorMessage()],\n\t\t\t\twidth: \"100%\"\n\t\t\t}).addStyleClass(\"sapCuxAppsPanel sapCuxAppsPanelWrapper\");\n\t\t}\n\t\treturn this._appsPanelWrapper;\n\t}\n\n\t/**\n\t * Generates desktop apps wrapper for displaying apps.\n\t * @private\n\t * @returns {sap.m.VBox} The generated apps wrapper.\n\t */\n\tpublic _generateDesktopAppsWrapper() {\n\t\tconst controlId = `${this.getId()}-desktopAppsWrapper`;\n\t\tif (!this._controlMap.get(controlId)) {\n\t\t\tthis._controlMap.set(\n\t\t\t\tcontrolId,\n\t\t\t\tnew VBox({\n\t\t\t\t\tid: `${this.getId()}-desktopAppsWrapper`,\n\t\t\t\t\titems: [this._generateAppsWrapper()],\n\t\t\t\t\tvisible: this.getDeviceType() !== DeviceType.Mobile,\n\t\t\t\t\tbackgroundDesign: BackgroundDesign.Solid\n\t\t\t\t}).addStyleClass(\"sapCuxAppsPanel sapCuxAppsContainerBorder\")\n\t\t\t);\n\t\t}\n\t\treturn this._controlMap.get(controlId) as VBox;\n\t}\n\n\t/**\n\t * Generates app wrapper (GridContainer) for displaying apps.\n\t * @private\n\t * @returns {sap.m.GridContainer} The generated apps wrapper.\n\t */\n\tpublic _generateAppsWrapper(): GridContainer {\n\t\t//create container\n\t\tif (!this._appsWrapper) {\n\t\t\tthis._appsWrapper = new GridContainer({\n\t\t\t\tid: `${this.getId()}-appsWrapper`,\n\t\t\t\tlayout: new GridContainerSettings(`${this.getId()}-appsWrapperLayout`, {\n\t\t\t\t\tcolumnSize: `${this.getProperty(\"tileWidth\") / 16}rem`,\n\t\t\t\t\trowSize: \"4.375rem\",\n\t\t\t\t\tgap: \"0.5rem\"\n\t\t\t\t})\n\t\t\t});\n\t\t}\n\t\treturn this._appsWrapper;\n\t}\n\n\t/**\n\t * Generates wrapper for displaying apps in mobile mode.\n\t * @private\n\t * @returns {sap.m.HeaderContainer} The generated apps wrapper.\n\t */\n\tpublic _generateMobileAppsWrapper() {\n\t\tif (!this._mobileAppsWrapper) {\n\t\t\tthis._mobileAppsWrapper = new HeaderContainer({\n\t\t\t\tid: `${this.getId()}-mobileAppsWrapper`,\n\t\t\t\tgridLayout: true,\n\t\t\t\tshowDividers: false,\n\t\t\t\theight: \"23.5rem\",\n\t\t\t\tcontent: [],\n\t\t\t\tvisible: this.getDeviceType() === DeviceType.Mobile\n\t\t\t}).addStyleClass(\"sapUiMargin-26Bottom sapMHeaderContainerAlign\");\n\t\t}\n\t\treturn this._mobileAppsWrapper;\n\t}\n\n\t/**\n\t * Generates the error message wrapper with illustrated message.\n\t * @private\n\t * @returns {sap.m.VBox} Wrapper with illustrated message.\n\t */\n\tpublic _generateErrorMessage(): VBox {\n\t\tif (!this._errorCard) {\n\t\t\tthis._errorCard = new VBox(`${this.getId()}-errorCard`, {\n\t\t\t\twrap: \"Wrap\",\n\t\t\t\tbackgroundDesign: \"Solid\",\n\t\t\t\titems: [this.generateIllustratedMessage()],\n\t\t\t\tvisible: this.getApps().length === 0,\n\t\t\t\tjustifyContent: \"Center\"\n\t\t\t}).addStyleClass(\"sapCuxAppsPanel\");\n\t\t}\n\t\tthis._errorCard.setHeight(this.getDeviceType() === DeviceType.Mobile ? \"23.5rem\" : \"auto\");\n\t\treturn this._errorCard;\n\t}\n\n\t/**\n\t * Creates and returns app instances for given app objects\n\t * @private\n\t * @param {object[]} appObjects - Array of app object.\n\t * @returns {sap.cux.home.App[]} - Array of app instances\n\t */\n\tpublic generateApps(visualizationsData: ICustomVisualization[]) {\n\t\treturn visualizationsData.map((visualizationData, index) => {\n\t\t\tconst groupId = visualizationData.persConfig?.sectionId;\n\t\t\tconst defaultSection = visualizationData.persConfig?.isDefaultSection;\n\t\t\tconst id =\n\t\t\t\tgroupId && !defaultSection ? recycleId(`${this.getKey()}-groupApp-${index}`) : recycleId(`${this.getKey()}-app-${index}`);\n\t\t\tconst app = new App(id, {\n\t\t\t\ttitle: visualizationData.title,\n\t\t\t\tsubTitle: visualizationData.subtitle,\n\t\t\t\tbgColor: typeof visualizationData.BGColor === \"object\" ? visualizationData.BGColor.key : visualizationData.BGColor,\n\t\t\t\ticon: visualizationData.icon,\n\t\t\t\tvizId: visualizationData.vizId || visualizationData.visualization?.vizId,\n\t\t\t\tstatus: visualizationData.status\n\t\t\t});\n\t\t\t// Explicitly set URL property: when a URL is passed in the constructor and contains '{',\n\t\t\t// the UI5 framework treats it as a binding expression and parses it to an empty string.\n\t\t\t// Setting it via setProperty() avoids this issue.\n\t\t\tif (visualizationData.url) {\n\t\t\t\tapp.setProperty(\"url\", visualizationData.url, true);\n\t\t\t}\n\t\t\tif (visualizationData.oldAppId) {\n\t\t\t\tapp.data(\"oldAppId\", visualizationData.oldAppId);\n\t\t\t}\n\t\t\tvisualizationData.menuItems?.forEach((menuItem) => {\n\t\t\t\tapp.addAggregation(\"menuItems\", menuItem, true);\n\t\t\t});\n\t\t\treturn app;\n\t\t});\n\t}\n\n\t/**\n\t * Add multiple apps in the apps aggregation.\n\t * @param {sap.cux.home.App[]} apps - Array of apps.\n\t */\n\tpublic setApps(apps: App[]) {\n\t\tapps.forEach((app) => {\n\t\t\tthis.addAggregation(\"apps\", app, true);\n\t\t});\n\t}\n\n\t/**\n\t * Fetches and returns the tile visualizations for the current device type (Mobile or Desktop).\n\t *\n\t * @public\n\t * @param {GenericTile[]} tiles - This array will be updated with new tile data based on the device type.\n\t *\n\t * @returns {GenericTile[]} - returns updated tiles\n\t */\n\tpublic fetchTileVisualization(tiles: GenericTile[] = []): GenericTile[] {\n\t\tif (this.getDeviceType() === DeviceType.Mobile) {\n\t\t\tconst cards = (this._generateMobileAppsWrapper()?.getContent() || []) as Panel[];\n\t\t\tfor (const card of cards) {\n\t\t\t\ttiles = tiles.concat((card?.getContent() || []) as GenericTile[]);\n\t\t\t}\n\t\t} else {\n\t\t\ttiles = (this._generateAppsWrapper()?.getItems() || []) as GenericTile[];\n\t\t}\n\t\treturn tiles;\n\t}\n\n\t/**\n\t * Convert array of provided activities to app\n\t * @private\n\t * @param {object[]} activities - Array of activities.\n\t * @returns {object[]} - Array of apps\n\t */\n\tprotected async convertActivitiesToVisualizations(activities: IActivity[]) {\n\t\tconst [availableVisualizations, URLParsingService] = await Promise.all([\n\t\t\tthis._getAllAvailableVisualizations(),\n\t\t\tContainer.getServiceAsync<URLParsing>(\"URLParsing\")\n\t\t]);\n\t\tconst appActivities = activities\n\t\t\t.filter((activity) => activity.appType === \"Application\")\n\t\t\t.map((activity) => {\n\t\t\t\tactivity.orgAppId = activity.appId;\n\t\t\t\tactivity.appId = activity.url;\n\t\t\t\treturn activity;\n\t\t\t});\n\t\tconst visualizations = appActivities\n\t\t\t.map((activity) => this._convertToVisualization(activity, availableVisualizations, URLParsingService))\n\t\t\t.filter((activity): activity is IActivity => activity !== undefined);\n\t\tconst updatedVisualizations = await this._updateVisualizationAvailability(visualizations);\n\t\treturn updatedVisualizations;\n\t}\n\n\t/**\n\t * Returns promise that resolves to array of all available visualizations\n\t * @private\n\t * @returns {Promise} A Promise that resolves to array of all available visualizations.\n\t */\n\tprivate async _getAllAvailableVisualizations() {\n\t\tif (!this._allAvailableVisualizations) {\n\t\t\tconst catalogApps = await this.appManagerInstance._getCatalogApps();\n\t\t\tthis._allAvailableVisualizations = catalogApps.reduce((visualizations: IVisualization[], catalogApp) => {\n\t\t\t\treturn visualizations.concat(catalogApp.visualizations || []);\n\t\t\t}, []);\n\t\t}\n\t\treturn this._allAvailableVisualizations;\n\t}\n\n\t/**\n\t * Updates vizualization array with information - if vizualization is present in favorites .\n\t * @private\n\t * @param {object[]} visualizations - Array of vizualizations.\n\t * @returns {object[]} - Array of updated vizualizations.\n\t */\n\tprivate async _updateVisualizationAvailability(visualizations: IActivity[]) {\n\t\tconst favoriteVisualizations: ICustomVisualization[] = await this.appManagerInstance.fetchFavVizs(true, true);\n\t\tvisualizations.forEach((visualization) => {\n\t\t\tvisualization.addedInFavorites = favoriteVisualizations.some(\n\t\t\t\t(favoriteVisualization) => favoriteVisualization.oldAppId === visualization.orgAppId\n\t\t\t);\n\t\t});\n\t\treturn visualizations;\n\t}\n\n\t/**\n\t * Updates user activity with provided vizualization info\n\t * @private\n\t * @param {object} activity - User activity.\n\t * @param {object} updatedVizConfig - Updated vizualization config.\n\t * @returns {object} - Updated user acitvity.\n\t */\n\tprivate _updateActivityInfo(activity: IActivity, updatedVizConfig: IVisualization) {\n\t\tthis._catalogVisualizationCache = this._catalogVisualizationCache || new Map<string, IVisualization>();\n\t\tactivity.targetURL = updatedVizConfig.targetURL;\n\t\tactivity.vizId = updatedVizConfig.vizId;\n\t\tthis._catalogVisualizationCache.set(activity.orgAppId, updatedVizConfig);\n\t\treturn activity;\n\t}\n\n\t/**\n\t * Prepares app and tile data before loading.\n\t * @param {App[]} apps - List of app objects.\n\t * @param {GenericTile[]} tiles - List of tiles.\n\t * @returns {Promise<{ apps: App[], tiles: GenericTile[] }>} A promise resolving with the provided apps and tiles.\n\t */\n\tpublic prepareAppsBeforeLoad(apps: App[], tiles: GenericTile[]): Promise<{ apps: App[]; tiles: GenericTile[] }> {\n\t\treturn Promise.resolve({ apps, tiles });\n\t}\n\n\t/**\n\t * Finds the best matching visualization for a given activity from a list of matching visualizations.\n\t *\n\t * This method first attempts to find an exact match for the target URL of the activity among the matching visualizations.\n\t * If no exact match is found, it uses the URLParsingService to compare parameters of the target URLs to find the best match.\n\t * It then updates the activity information with the best matching visualization.\n\t *\n\t * @private\n\t * @param {IActivity} activity - The activity for which to find the best matching visualization.\n\t * @param {IVisualization[]} matchingVisualizations - A list of visualizations that match the activity.\n\t * @param {URLParsing} URLParsingService - A service used to parse and compare target URLs.\n\t * @returns {IVisualization | undefined} The best matching visualization, or undefined if no match is found.\n\t */\n\tprivate _findBestMatchingVisualization(activity: IActivity, matchingVisualizations: IVisualization[], URLParsingService: URLParsing) {\n\t\t//if there are multiple matching apps, compare the target urls\n\t\tconst matchedVisualization = matchingVisualizations.find((matchingViz) => matchingViz.targetURL === activity.url);\n\t\tif (matchedVisualization) {\n\t\t\treturn this._updateActivityInfo(activity, matchedVisualization);\n\t\t} else {\n\t\t\t//edge cases, when no exact targetUrl match\n\t\t\tconst matchedVisualizationCache = new Map<string, object>();\n\t\t\tconst matchedVisualizations: { viz: IVisualization; params: unknown; prio: number }[] = [];\n\n\t\t\tmatchingVisualizations.forEach((visualization) => {\n\t\t\t\tconst targetURL: string = visualization.targetURL;\n\t\t\t\tif (!matchedVisualizationCache.get(targetURL)) {\n\t\t\t\t\tconst matchedVisualization = {\n\t\t\t\t\t\tviz: visualization,\n\t\t\t\t\t\tparams: (URLParsingService.parseShellHash(visualization.targetURL) as { params: { [key: string]: unknown[] } })\n\t\t\t\t\t\t\t.params,\n\t\t\t\t\t\tprio: 0\n\t\t\t\t\t};\n\t\t\t\t\tmatchedVisualizationCache.set(targetURL, matchedVisualization);\n\t\t\t\t\tmatchedVisualizations.push(matchedVisualization);\n\t\t\t\t}\n\t\t\t});\n\t\t\tconst filteredVisualizations = matchedVisualizations.filter((matchedVisualization) =>\n\t\t\t\tthis._filterMatchingVisualization(activity, matchedVisualization, URLParsingService)\n\t\t\t);\n\t\t\tif (filteredVisualizations.length) {\n\t\t\t\t// more than 1 matching condition for unique targetUrls\n\t\t\t\t// this could be either because there is exact match and/or also allItems true and/or no params in VizData param keys\n\t\t\t\t// then find best match possible, based on prio\n\t\t\t\tfilteredVisualizations.sort((val1, val2) => val1.prio - val2.prio);\n\t\t\t\treturn this._updateActivityInfo(activity, filteredVisualizations[0].viz);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Filters matching visualizations based on activity parameters and assigns priority.\n\t *\n\t * This method compares the parameters of the activity with those of a matched visualization\n\t * to determine if they match.\n\t *\n\t * @private\n\t * @returns {boolean} Returns true if the visualization matches the activity, false otherwise.\n\t */\n\tprivate _filterMatchingVisualization(\n\t\tactivity: IActivity,\n\t\tmatchedVisualization: { viz: IVisualization; params: unknown; prio: number },\n\t\tURLParsingService: URLParsing\n\t) {\n\t\tconst parshedShellHash = URLParsingService.parseShellHash(activity.url) as { params: { [key: string]: unknown[] } };\n\t\tconst activityParameters = parshedShellHash.params;\n\n\t\tconst activityParameterKeys = Object.keys(activityParameters);\n\t\tconst visualizationParams = matchedVisualization.params as { [key: string]: unknown[] };\n\t\t//filter keys other than 'allItems', for myinbox tasks allItems key is a generally common key hence filter that\n\t\tconst visualizationParamKeys = Object.keys(visualizationParams).filter((key) => key !== \"allItems\");\n\t\tif (visualizationParamKeys.length === activityParameterKeys.length) {\n\t\t\tconst bMatch = activityParameterKeys.every(\n\t\t\t\t(key) => visualizationParamKeys.includes(key) && visualizationParams[key][0] === activityParameters[key][0]\n\t\t\t);\n\t\t\tif (bMatch) {\n\t\t\t\tmatchedVisualization.prio = 1;\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t} else if (!visualizationParamKeys.length) {\n\t\t\t//this could mean either visualizationParamKeys did not have any key or the only key present was 'allItems'\n\t\t\t//if 'allItems' present give prio 2 else prio 3\n\t\t\tmatchedVisualization.prio = Object.keys(matchedVisualization.params as { [key: string]: unknown[] }).length ? 2 : 3;\n\t\t\treturn true;\n\t\t}\n\t\t//filtered visualizationParamKeys length doesnt match aAppParamKeys length & visualizationParamKeys length is not 0\n\t\treturn false;\n\t}\n\n\t/**\n\t * Converts given user activity to vizualization\n\t * @private\n\t * @param {object} activity - User Activity.\n\t * @param {object[]} catalogVisualizations - array of all available visualizations in catalog.\n\t * @param {object} URLParsingService - URL parsing service.\n\t * @returns {object} - visualization\n\t */\n\tprivate _convertToVisualization(activity: IActivity, catalogVisualizations: IVisualization[], URLParsingService: URLParsing) {\n\t\tthis._catalogVisualizationCache = this._catalogVisualizationCache || new Map<string, IVisualization>();\n\t\tconst catalogVisualization = this._catalogVisualizationCache.get(activity.orgAppId);\n\t\tif (catalogVisualization) {\n\t\t\treturn this._updateActivityInfo(activity, catalogVisualization);\n\t\t} else {\n\t\t\tconst matchingVisualizations = catalogVisualizations.filter(\n\t\t\t\t(visualization) =>\n\t\t\t\t\tvisualization.vizId && `#${visualization.target?.semanticObject}-${visualization.target?.action}` === activity.orgAppId\n\t\t\t);\n\t\t\tif (matchingVisualizations.length > 1) {\n\t\t\t\treturn this._findBestMatchingVisualization(activity, matchingVisualizations, URLParsingService);\n\t\t\t} else if (matchingVisualizations.length === 1) {\n\t\t\t\treturn this._updateActivityInfo(activity, matchingVisualizations[0]);\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Adds visualization to favorite apps\n\t * @private\n\t * @param {sap.ui.base.Event} event - The event object.\n\t */\n\tprotected async _addAppToFavorites(event: Event) {\n\t\tthis.setBusy(true);\n\t\ttry {\n\t\t\tconst source = event.getSource<MenuItem>();\n\t\t\tconst app = source.getParent() as App;\n\t\t\tconst vizId = app.getVizId?.();\n\t\t\tif (vizId) {\n\t\t\t\t//Add Apps to the 'Recently Added Apps' section\n\t\t\t\tawait this.appManagerInstance.addVisualization(vizId);\n\t\t\t\tawait (this.getParent?.() as AppsContainer)._refreshAllPanels();\n\t\t\t\tconst message = this._i18nBundle.getText(\"appMovedToFavorites\", [app.getTitle()]) as string;\n\t\t\t\tMessageToast.show(message);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tLog.error(error as string);\n\t\t} finally {\n\t\t\tthis.setBusy(false);\n\t\t}\n\t}\n\n\t/**\n\t * Checks if the panel is loaded. If the panel is not loaded then placholders are shown otherwise not\n\t * @private\n\t * @returns {boolean} true if the panel is loaded, false otherwise.\n\t */\n\tpublic isLoaded(): boolean {\n\t\treturn this._isLoaded;\n\t}\n\n\t/**\n\t * Set the loaded status of the app panel.\n\t * @private\n\t * @param {boolean} val - The new loaded status to set for the app panel.\n\t */\n\tpublic setLoaded(val: boolean): void {\n\t\tthis._isLoaded = val;\n\t}\n\n\t/**\n\t * Returns the dirty status of the app panel. If the panel is dirty then only re-render the apps\n\t * @private\n\t * @returns {boolean} true if the panel is dirty, false otherwise.\n\t */\n\tpublic isDirty(): boolean {\n\t\treturn this._isDirty;\n\t}\n\n\t/**\n\t * Set the dirty status of the app panel.\n\t * @private\n\t * @param {boolean} val - The new dirty status to set for the app panel.\n\t */\n\tpublic setDesktopViewDirty(val: boolean): void {\n\t\tthis._isDirty = val;\n\t}\n\n\t/**\n\t * Returns the dirty status of the app mobile panel. If the panel is dirty then only re-render the apps\n\t * @private\n\t * @returns {boolean} true if the panel is dirty, false otherwise.\n\t */\n\tpublic isMobileDirty(): boolean {\n\t\treturn this._isMobileDirty;\n\t}\n\n\t/**\n\t * Set the dirty status of the app mobile panel.\n\t * @private\n\t * @param {boolean} val - The new dirty status to set for the app mobile panel.\n\t */\n\tpublic setMobileViewDirty(val: boolean): void {\n\t\tthis._isMobileDirty = val;\n\t}\n\n\t/**\n\t * Sets aggregation for give control.\n\t * @param {Object} control - Control for which aggregation has to be set.\n\t * @param {Object[]} items - Items to be added in aggregation.\n\t * @param {string} aggregationName - Aggregation name\n\t * @private\n\t */\n\tpublic _setAggregation = function (control: Control | Group, items: Control[] | App[] = [], aggregationName = \"items\") {\n\t\titems.forEach((oItem) => {\n\t\t\tcontrol.addAggregation(aggregationName, oItem, true);\n\t\t});\n\t};\n\n\t/**\n\t * Sets the busy state of panel.\n\t * @private\n\t * @param {boolean} isBusy - Indicates whether the panel should be set to busy state.\n\t */\n\tprotected setBusy(isBusy: boolean) {\n\t\tconst oAppsWrapper = this._generateAppsWrapper();\n\t\toAppsWrapper.setBusy(isBusy);\n\t}\n\n\t/**\n\t * Retrieves the group with the specified group Id.\n\t * @private\n\t * @param {string} groupId - The Id of the group.\n\t * @returns {sap.cux.home.Group} The group with the specified group Id, or null if not found.\n\t */\n\tprotected _getGroup(groupId: string) {\n\t\tconst groups = (this.getAggregation(\"groups\") || []) as Group[];\n\t\treturn groups.find((group) => group.getGroupId() === groupId);\n\t}\n\n\t/**\n\t * Checks if the panel is supported.\n\t * @returns {boolean} True if the panel is supported, false otherwise.\n\t * @private\n\t */\n\tpublic isSupported() {\n\t\treturn this._isSupported;\n\t}\n\n\t/**\n\t * Sets panel as supported or unsupported.\n\t * @param {boolean} isSupported true if the panel is supported, false otherwise.\n\t * @private\n\t */\n\tpublic setSupported(isSupported: boolean) {\n\t\tthis._isSupported = isSupported;\n\t}\n\n\t/**\n\t * Attaches user activity tracking based on the configuration.\n\t * If user activity tracking is enabled, it listens to changes in tracking activity configuration\n\t * and fires a 'supported' event accordingly.\n\t * @private\n\t */\n\tprotected _attachUserActivityTracking() {\n\t\tif (Config.last(\"/core/shell/enableRecentActivity\")) {\n\t\t\tConfig.on(\"/core/shell/model/enableTrackingActivity\").do((isTrackingActivityEnabled: boolean) => {\n\t\t\t\tthis.fireSupported({ isSupported: isTrackingActivityEnabled });\n\t\t\t});\n\t\t}\n\t}\n\n\t/**\n\t * Refreshes the panel.\n\t * @public\n\t */\n\tprotected async refresh() {\n\t\tawait (this.getParent() as AppsContainer).refreshPanel(this);\n\t}\n\n\t/**\n\t * Generates default illustrated message for panel.\n\t * @private\n\t * @returns {sap.m.IllustratedMessage} Illustrated error message for panel.\n\t */\n\tprotected generateIllustratedMessage() {\n\t\tif (!this._errorMessage) {\n\t\t\tthis._errorMessage = new IllustratedMessage(`${this.getId()}-errorMessage`, {\n\t\t\t\tillustrationSize: IllustratedMessageSize.Base,\n\t\t\t\ttitle: this._i18nBundle.getText(\"noAppsTitle\"),\n\t\t\t\tdescription: this._i18nBundle.getText(\"noData\")\n\t\t\t}).addStyleClass(\"appsSectionMessageCard\");\n\t\t}\n\t\treturn this._errorMessage;\n\t}\n\n\t/**\n\t * Applies the selected color to an ungrouped tile.\n\t * @param {sap.cux.home.App | sap.cux.home.Group} item - The item control.\n\t * @param {string} color - The selected color.\n\t * @private\n\t */\n\tprotected _applyUngroupedTileColor(item: App | Group, color: string) {\n\t\tconst tiles: GenericTile[] = this.fetchTileVisualization();\n\t\tconst groupId = item.isA(\"sap.cux.home.Group\") ? (item as Group).getGroupId() : null;\n\t\tconst updatedTileIndex = tiles.findIndex((tile) =>\n\t\t\tgroupId ? tile.data(\"groupId\") === groupId : tile.getUrl() === getLeanURL((item as App).getUrl())\n\t\t);\n\t\ttiles[updatedTileIndex]?.setBackgroundColor(color);\n\t}\n\n\t/**\n\t * Exit lifecycle method.\n\t *\n\t * @private\n\t * @override\n\t */\n\tpublic exit() {\n\t\tthis._controlMap.forEach((control) => {\n\t\t\tcontrol.destroy();\n\t\t});\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -235,10 +235,15 @@ export default abstract class BaseAppPanel extends BasePanel {
235
235
  subTitle: visualizationData.subtitle,
236
236
  bgColor: typeof visualizationData.BGColor === "object" ? visualizationData.BGColor.key : visualizationData.BGColor,
237
237
  icon: visualizationData.icon,
238
- url: visualizationData.url,
239
238
  vizId: visualizationData.vizId || visualizationData.visualization?.vizId,
240
239
  status: visualizationData.status
241
240
  });
241
+ // Explicitly set URL property: when a URL is passed in the constructor and contains '{',
242
+ // the UI5 framework treats it as a binding expression and parses it to an empty string.
243
+ // Setting it via setProperty() avoids this issue.
244
+ if (visualizationData.url) {
245
+ app.setProperty("url", visualizationData.url, true);
246
+ }
242
247
  if (visualizationData.oldAppId) {
243
248
  app.data("oldAppId", visualizationData.oldAppId);
244
249
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ContentAdditionDialog.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/ContentAdditionDialog.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,oCAAoC,CAAC;IACpD;;;OAGG;IAEH,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;IAW9C,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;IAMjE;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,kBAAkB;QACpE,OAAO,CAAC,UAAU,CAAc;QAChC,OAAO,CAAC,YAAY,CAAU;QAC9B,OAAO,CAAC,WAAW,CAAW;QAC9B,OAAO,CAAC,qBAAqB,CAAW;QAExC,MAAM,CAAC,QAAQ;;UAEb;QAEF;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAqBnB;;;;WAIG;QACH,OAAO,CAAC,mBAAmB;QAiC3B;;;;;;WAMG;QACI,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;QAclD;;;;;WAKG;gBACW,sBAAsB;QA8BpC;;;;;;WAMG;QACH,OAAO,CAAC,iBAAiB;QASzB;;;;WAIG;QACI,mBAAmB,IAAI,IAAI;QAuBlC;;;;WAIG;QACH,OAAO,CAAC,aAAa;KAIrB;CAEA"}
1
+ {"version":3,"file":"ContentAdditionDialog.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/ContentAdditionDialog.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,oCAAoC,CAAC;IACpD;;;OAGG;IAEH,OAAO,EAAE,KAAK,IAAI,WAAW,EAAE,MAAM,QAAQ,CAAC;IAW9C,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;IAMjE;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,kBAAkB;QACpE,OAAO,CAAC,UAAU,CAAc;QAChC,OAAO,CAAC,YAAY,CAAU;QAC9B,OAAO,CAAC,WAAW,CAAW;QAC9B,OAAO,CAAC,qBAAqB,CAAW;QAExC,MAAM,CAAC,QAAQ;;UAEb;QAEF;;;;;WAKG;QACI,IAAI,IAAI,IAAI;QAuBnB;;;;WAIG;QACH,OAAO,CAAC,mBAAmB;QAiC3B;;;;;;WAMG;QACI,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;QAWlD;;;;;WAKG;gBACW,sBAAsB;QA8BpC;;;;;;WAMG;QACH,OAAO,CAAC,iBAAiB;QASzB;;;;WAIG;QACI,mBAAmB,IAAI,IAAI;QAuBlC;;;;WAIG;QACH,OAAO,CAAC,aAAa;KAIrB;CAEA"}
@@ -209,6 +209,8 @@ sap.ui.define(["sap/m/Button", "sap/m/FlexBox", "sap/m/IconTabBar", "sap/m/IconT
209
209
  this.addStyleClass("sapCuxContentAdditionDialog");
210
210
  this.attachAfterClose(this.onDialogClose.bind(this));
211
211
  this.setEscapeHandler(this.onDialogClose.bind(this));
212
+ //update action buttons to be displayed before dialog opens
213
+ this.attachBeforeOpen(this.updateActionButtons.bind(this));
212
214
 
213
215
  //setup panels
214
216
  this.addPanel(new AppsAdditionPanel(`${this.getId()}-appsAdditionPanel`));
@@ -266,9 +268,6 @@ sap.ui.define(["sap/m/Button", "sap/m/FlexBox", "sap/m/IconTabBar", "sap/m/IconT
266
268
  //set selected key
267
269
  const selectedKey = this.getProperty("selectedKey") || this.getPanels()[0]?.getProperty("key");
268
270
  this.iconTabBar.setSelectedKey(selectedKey);
269
-
270
- //update action buttons to be displayed
271
- this.updateActionButtons();
272
271
  },
273
272
  /**
274
273
  * Adds supported panels to the icon tab bar.
@@ -1 +1 @@
1
- {"version":3,"file":"ContentAdditionDialog.js","names":["sap","ui","define","Button","FlexBox","IconTabBar","IconTabFilter","IllustratedMessage","IllustratedMessageSize","IllustratedMessageType","sap_m_library","__AppsAdditionPanel","__BaseSettingsDialog","__InsightsAdditionPanel","___utils_Constants","___utils_FESRUtil","_interopRequireDefault","obj","__esModule","default","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","bind","then","observer","prototype","onFulfilled","onRejected","result","callback","e","_this","_isSettledPact","thenable","_forTo","array","body","check","i","reject","_cycle","length","BackgroundDesign","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","ButtonType","IconTabHeaderMode","AppsAdditionPanel","BaseSettingsDialog","InsightsAdditionPanel","FESR_IDS","addFESRSemanticStepName","FESR_EVENTS","ContentAdditionDialog","extend","renderer","apiVersion","init","_init","BaseSettingsDialog.prototype.init.call","setStretch","setContentWidth","setContentHeight","setVerticalScrolling","setTitle","_i18nBundle","getText","addStyleClass","attachAfterClose","onDialogClose","setEscapeHandler","addPanel","getId","_setupDialogContent","iconTabBar","headerMode","Inline","backgroundDesign","Transparent","expandable","select","setProperty","getSelectedKey","updateActionButtons","errorMessageContainer","direction","renderType","height","justifyContent","items","illustrationSize","Auto","illustrationType","NoData","wrapper","addContent","onBeforeRendering","_onBeforeRendering","event","BaseSettingsDialog.prototype.onBeforeRendering.call","_addPanelsToIconTabBar","selectedKey","getProperty","getPanels","setSelectedKey","_temp3","panelsAdded","_temp2","hasItems","getItems","setVisible","panels","_temp","panel","Promise","resolve","isSupported","key","iconTabFilter","text","content","getAggregation","forEach","control","addItem","SELECT","_getSelectedPanel","selectedPanel","find","_updateActionButtons","cancelButton","type","press","close","PRESS","CANCEL_CONTENT_DIALOG","removeAllButtons","getActionButtons","button","addButton","_onDialogClose","fireEvent"],"sources":["ContentAdditionDialog.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport { Event as JQueryEvent } from \"jquery\";\nimport Button from \"sap/m/Button\";\nimport FlexBox from \"sap/m/FlexBox\";\nimport IconTabBar from \"sap/m/IconTabBar\";\nimport IconTabFilter from \"sap/m/IconTabFilter\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport IllustratedMessageType from \"sap/m/IllustratedMessageType\";\nimport { BackgroundDesign, ButtonType, IconTabHeaderMode } from \"sap/m/library\";\nimport Control from \"sap/ui/core/Control\";\nimport AppsAdditionPanel from \"./AppsAdditionPanel\";\nimport BaseSettingsDialog from \"./BaseSettingsDialog\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport InsightsAdditionPanel from \"./InsightsAdditionPanel\";\nimport { FESR_IDS } from \"./utils/Constants\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\n\n/**\n *\n * Dialog class for My Home Content Addition.\n *\n * @extends BaseSettingsDialog\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.136\n *\n * @internal\n * @experimental Since 1.136\n * @private\n *\n * @alias sap.cux.home.ContentAdditionDialog\n */\nexport default class ContentAdditionDialog extends BaseSettingsDialog {\n\tprivate iconTabBar!: IconTabBar;\n\tprivate cancelButton!: Button;\n\tprivate panelsAdded!: boolean;\n\tprivate errorMessageContainer!: FlexBox;\n\n\tstatic renderer = {\n\t\tapiVersion: 2\n\t};\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//setup dialog\n\t\tthis.setStretch(false);\n\t\tthis.setContentWidth(\"59.375rem\");\n\t\tthis.setContentHeight(\"43.75rem\");\n\t\tthis.setVerticalScrolling(false);\n\t\tthis.setTitle(this._i18nBundle.getText(\"addContent\"));\n\t\tthis.addStyleClass(\"sapCuxContentAdditionDialog\");\n\t\tthis.attachAfterClose(this.onDialogClose.bind(this));\n\t\tthis.setEscapeHandler(this.onDialogClose.bind(this));\n\n\t\t//setup panels\n\t\tthis.addPanel(new AppsAdditionPanel(`${this.getId()}-appsAdditionPanel`));\n\t\tthis.addPanel(new InsightsAdditionPanel(`${this.getId()}-cardsAdditionPanel`));\n\n\t\t//setup content\n\t\tthis._setupDialogContent();\n\t}\n\n\t/**\n\t * Sets up the dialog content with an icon tab bar and error message container.\n\t *\n\t * @private\n\t */\n\tprivate _setupDialogContent(): void {\n\t\tthis.iconTabBar = new IconTabBar(`${this.getId()}-iconTabBar`, {\n\t\t\theaderMode: IconTabHeaderMode.Inline,\n\t\t\tbackgroundDesign: BackgroundDesign.Transparent,\n\t\t\texpandable: false,\n\t\t\tselect: () => {\n\t\t\t\tthis.setProperty(\"selectedKey\", this.iconTabBar.getSelectedKey());\n\t\t\t\tthis.updateActionButtons();\n\t\t\t}\n\t\t});\n\t\tthis.errorMessageContainer = new FlexBox(`${this.getId()}-errorMessageContainer`, {\n\t\t\tdirection: \"Column\",\n\t\t\trenderType: \"Bare\",\n\t\t\theight: \"100%\",\n\t\t\tjustifyContent: \"Center\",\n\t\t\titems: [\n\t\t\t\tnew IllustratedMessage(`${this.getId()}-errorMessage`, {\n\t\t\t\t\tillustrationSize: IllustratedMessageSize.Auto,\n\t\t\t\t\tillustrationType: IllustratedMessageType.NoData\n\t\t\t\t})\n\t\t\t]\n\t\t});\n\n\t\tconst wrapper = new FlexBox(`${this.getId()}-wrapper`, {\n\t\t\tdirection: \"Column\",\n\t\t\trenderType: \"Bare\",\n\t\t\theight: \"100%\",\n\t\t\titems: [this.iconTabBar, this.errorMessageContainer]\n\t\t});\n\n\t\tthis.addContent(wrapper);\n\t}\n\n\t/**\n\t * onBeforeRendering lifecycle method.\n\t * Prepares the SettingsDialog content and navigate to the selected settings panel.\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic onBeforeRendering(event: JQueryEvent): void {\n\t\tsuper.onBeforeRendering(event);\n\n\t\t//add panels to icon tab bar\n\t\tvoid this._addPanelsToIconTabBar();\n\n\t\t//set selected key\n\t\tconst selectedKey = (this.getProperty(\"selectedKey\") as string) || (this.getPanels()[0]?.getProperty(\"key\") as string);\n\t\tthis.iconTabBar.setSelectedKey(selectedKey);\n\n\t\t//update action buttons to be displayed\n\t\tthis.updateActionButtons();\n\t}\n\n\t/**\n\t * Adds supported panels to the icon tab bar.\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async _addPanelsToIconTabBar(): Promise<void> {\n\t\tif (!this.panelsAdded) {\n\t\t\tthis.panelsAdded = true;\n\t\t\tconst panels = this.getPanels();\n\n\t\t\tfor (const panel of panels) {\n\t\t\t\tconst isSupported = await panel.isSupported();\n\t\t\t\tif (!isSupported) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tconst key = panel.getProperty(\"key\") as string;\n\t\t\t\tconst iconTabFilter = new IconTabFilter(`${this.getId()}-${key}`, {\n\t\t\t\t\tkey,\n\t\t\t\t\ttext: panel.getProperty(\"title\") as string\n\t\t\t\t});\n\n\t\t\t\tconst content = panel.getAggregation(\"content\") as Control[] | undefined;\n\t\t\t\tcontent?.forEach((control) => iconTabFilter.addContent(control));\n\n\t\t\t\tthis.iconTabBar.addItem(iconTabFilter);\n\t\t\t\taddFESRSemanticStepName(iconTabFilter, FESR_EVENTS.SELECT, panel.getProperty(\"key\") as string);\n\t\t\t}\n\n\t\t\tconst hasItems = this.iconTabBar.getItems().length > 0;\n\t\t\tthis.iconTabBar.setVisible(hasItems);\n\t\t\tthis.errorMessageContainer.setVisible(!hasItems);\n\t\t}\n\t}\n\n\t/**\n\t * Retrieves a panel by its key from the dialog.\n\t *\n\t * @private\n\t * @param {string} key - The key of the panel to retrieve.\n\t * @returns {BaseSettingsPanel} The panel matching the provided key.\n\t */\n\tprivate _getSelectedPanel(key: string): BaseSettingsPanel {\n\t\tlet selectedPanel = this.getPanels().find((panel) => panel.getProperty(\"key\") === key);\n\t\tif (!selectedPanel) {\n\t\t\tselectedPanel = this.getPanels()[0];\n\t\t\tthis.setProperty(\"selectedKey\", selectedPanel?.getProperty(\"key\"));\n\t\t}\n\t\treturn selectedPanel;\n\t}\n\n\t/**\n\t * Updates the action buttons based on the selected panel.\n\t *\n\t * @private\n\t */\n\tpublic updateActionButtons(): void {\n\t\tthis.cancelButton =\n\t\t\tthis.cancelButton ||\n\t\t\tnew Button(`${this.getId()}-close-btn`, {\n\t\t\t\ttext: this._i18nBundle.getText(\"XBUT_CANCEL\"),\n\t\t\t\ttype: ButtonType.Transparent,\n\t\t\t\tpress: () => this.close()\n\t\t\t});\n\t\taddFESRSemanticStepName(this.cancelButton, FESR_EVENTS.PRESS, FESR_IDS.CANCEL_CONTENT_DIALOG);\n\t\tconst selectedKey = this.getProperty(\"selectedKey\") as string;\n\t\tthis.removeAllButtons();\n\n\t\t// add action buttons from the selected panelzz\n\t\tthis._getSelectedPanel(selectedKey)\n\t\t\t?.getActionButtons()\n\t\t\t.forEach((button) => {\n\t\t\t\tthis.addButton(button);\n\t\t\t});\n\n\t\t// add cancel button as common action button\n\t\tthis.addButton(this.cancelButton);\n\t}\n\n\t/**\n\t * Handles the dialog close event and triggers panel cleanup.\n\t *\n\t * @private\n\t */\n\tprivate onDialogClose(): void {\n\t\tthis.getPanels().forEach((panel) => panel.fireEvent(\"onDialogClose\"));\n\t\tthis.close();\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ContentAdditionDialog.js","names":["sap","ui","define","Button","FlexBox","IconTabBar","IconTabFilter","IllustratedMessage","IllustratedMessageSize","IllustratedMessageType","sap_m_library","__AppsAdditionPanel","__BaseSettingsDialog","__InsightsAdditionPanel","___utils_Constants","___utils_FESRUtil","_interopRequireDefault","obj","__esModule","default","_iteratorSymbol","Symbol","iterator","_settle","pact","state","value","s","_Pact","v","o","bind","then","observer","prototype","onFulfilled","onRejected","result","callback","e","_this","_isSettledPact","thenable","_forTo","array","body","check","i","reject","_cycle","length","BackgroundDesign","_forOf","target","step","next","done","return","_fixup","TypeError","values","push","ButtonType","IconTabHeaderMode","AppsAdditionPanel","BaseSettingsDialog","InsightsAdditionPanel","FESR_IDS","addFESRSemanticStepName","FESR_EVENTS","ContentAdditionDialog","extend","renderer","apiVersion","init","_init","BaseSettingsDialog.prototype.init.call","setStretch","setContentWidth","setContentHeight","setVerticalScrolling","setTitle","_i18nBundle","getText","addStyleClass","attachAfterClose","onDialogClose","setEscapeHandler","attachBeforeOpen","updateActionButtons","addPanel","getId","_setupDialogContent","iconTabBar","headerMode","Inline","backgroundDesign","Transparent","expandable","select","setProperty","getSelectedKey","errorMessageContainer","direction","renderType","height","justifyContent","items","illustrationSize","Auto","illustrationType","NoData","wrapper","addContent","onBeforeRendering","_onBeforeRendering","event","BaseSettingsDialog.prototype.onBeforeRendering.call","_addPanelsToIconTabBar","selectedKey","getProperty","getPanels","setSelectedKey","_temp3","panelsAdded","_temp2","hasItems","getItems","setVisible","panels","_temp","panel","Promise","resolve","isSupported","key","iconTabFilter","text","content","getAggregation","forEach","control","addItem","SELECT","_getSelectedPanel","selectedPanel","find","_updateActionButtons","cancelButton","type","press","close","PRESS","CANCEL_CONTENT_DIALOG","removeAllButtons","getActionButtons","button","addButton","_onDialogClose","fireEvent"],"sources":["ContentAdditionDialog.ts"],"sourcesContent":["/*!\n * SAP UI development toolkit for HTML5 (SAPUI5)\n * * (c) Copyright 2009-2025 SAP SE. All rights reserved\n */\n\nimport { Event as JQueryEvent } from \"jquery\";\nimport Button from \"sap/m/Button\";\nimport FlexBox from \"sap/m/FlexBox\";\nimport IconTabBar from \"sap/m/IconTabBar\";\nimport IconTabFilter from \"sap/m/IconTabFilter\";\nimport IllustratedMessage from \"sap/m/IllustratedMessage\";\nimport IllustratedMessageSize from \"sap/m/IllustratedMessageSize\";\nimport IllustratedMessageType from \"sap/m/IllustratedMessageType\";\nimport { BackgroundDesign, ButtonType, IconTabHeaderMode } from \"sap/m/library\";\nimport Control from \"sap/ui/core/Control\";\nimport AppsAdditionPanel from \"./AppsAdditionPanel\";\nimport BaseSettingsDialog from \"./BaseSettingsDialog\";\nimport BaseSettingsPanel from \"./BaseSettingsPanel\";\nimport InsightsAdditionPanel from \"./InsightsAdditionPanel\";\nimport { FESR_IDS } from \"./utils/Constants\";\nimport { addFESRSemanticStepName, FESR_EVENTS } from \"./utils/FESRUtil\";\n\n/**\n *\n * Dialog class for My Home Content Addition.\n *\n * @extends BaseSettingsDialog\n *\n * @author SAP SE\n * @version 0.0.1\n * @since 1.136\n *\n * @internal\n * @experimental Since 1.136\n * @private\n *\n * @alias sap.cux.home.ContentAdditionDialog\n */\nexport default class ContentAdditionDialog extends BaseSettingsDialog {\n\tprivate iconTabBar!: IconTabBar;\n\tprivate cancelButton!: Button;\n\tprivate panelsAdded!: boolean;\n\tprivate errorMessageContainer!: FlexBox;\n\n\tstatic renderer = {\n\t\tapiVersion: 2\n\t};\n\n\t/**\n\t * Init lifecycle method\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic init(): void {\n\t\tsuper.init();\n\n\t\t//setup dialog\n\t\tthis.setStretch(false);\n\t\tthis.setContentWidth(\"59.375rem\");\n\t\tthis.setContentHeight(\"43.75rem\");\n\t\tthis.setVerticalScrolling(false);\n\t\tthis.setTitle(this._i18nBundle.getText(\"addContent\"));\n\t\tthis.addStyleClass(\"sapCuxContentAdditionDialog\");\n\t\tthis.attachAfterClose(this.onDialogClose.bind(this));\n\t\tthis.setEscapeHandler(this.onDialogClose.bind(this));\n\t\t//update action buttons to be displayed before dialog opens\n\t\tthis.attachBeforeOpen(this.updateActionButtons.bind(this));\n\n\t\t//setup panels\n\t\tthis.addPanel(new AppsAdditionPanel(`${this.getId()}-appsAdditionPanel`));\n\t\tthis.addPanel(new InsightsAdditionPanel(`${this.getId()}-cardsAdditionPanel`));\n\n\t\t//setup content\n\t\tthis._setupDialogContent();\n\t}\n\n\t/**\n\t * Sets up the dialog content with an icon tab bar and error message container.\n\t *\n\t * @private\n\t */\n\tprivate _setupDialogContent(): void {\n\t\tthis.iconTabBar = new IconTabBar(`${this.getId()}-iconTabBar`, {\n\t\t\theaderMode: IconTabHeaderMode.Inline,\n\t\t\tbackgroundDesign: BackgroundDesign.Transparent,\n\t\t\texpandable: false,\n\t\t\tselect: () => {\n\t\t\t\tthis.setProperty(\"selectedKey\", this.iconTabBar.getSelectedKey());\n\t\t\t\tthis.updateActionButtons();\n\t\t\t}\n\t\t});\n\t\tthis.errorMessageContainer = new FlexBox(`${this.getId()}-errorMessageContainer`, {\n\t\t\tdirection: \"Column\",\n\t\t\trenderType: \"Bare\",\n\t\t\theight: \"100%\",\n\t\t\tjustifyContent: \"Center\",\n\t\t\titems: [\n\t\t\t\tnew IllustratedMessage(`${this.getId()}-errorMessage`, {\n\t\t\t\t\tillustrationSize: IllustratedMessageSize.Auto,\n\t\t\t\t\tillustrationType: IllustratedMessageType.NoData\n\t\t\t\t})\n\t\t\t]\n\t\t});\n\n\t\tconst wrapper = new FlexBox(`${this.getId()}-wrapper`, {\n\t\t\tdirection: \"Column\",\n\t\t\trenderType: \"Bare\",\n\t\t\theight: \"100%\",\n\t\t\titems: [this.iconTabBar, this.errorMessageContainer]\n\t\t});\n\n\t\tthis.addContent(wrapper);\n\t}\n\n\t/**\n\t * onBeforeRendering lifecycle method.\n\t * Prepares the SettingsDialog content and navigate to the selected settings panel.\n\t *\n\t * @public\n\t * @override\n\t */\n\tpublic onBeforeRendering(event: JQueryEvent): void {\n\t\tsuper.onBeforeRendering(event);\n\n\t\t//add panels to icon tab bar\n\t\tvoid this._addPanelsToIconTabBar();\n\n\t\t//set selected key\n\t\tconst selectedKey = (this.getProperty(\"selectedKey\") as string) || (this.getPanels()[0]?.getProperty(\"key\") as string);\n\t\tthis.iconTabBar.setSelectedKey(selectedKey);\n\t}\n\n\t/**\n\t * Adds supported panels to the icon tab bar.\n\t *\n\t * @private\n\t * @async\n\t */\n\tprivate async _addPanelsToIconTabBar(): Promise<void> {\n\t\tif (!this.panelsAdded) {\n\t\t\tthis.panelsAdded = true;\n\t\t\tconst panels = this.getPanels();\n\n\t\t\tfor (const panel of panels) {\n\t\t\t\tconst isSupported = await panel.isSupported();\n\t\t\t\tif (!isSupported) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tconst key = panel.getProperty(\"key\") as string;\n\t\t\t\tconst iconTabFilter = new IconTabFilter(`${this.getId()}-${key}`, {\n\t\t\t\t\tkey,\n\t\t\t\t\ttext: panel.getProperty(\"title\") as string\n\t\t\t\t});\n\n\t\t\t\tconst content = panel.getAggregation(\"content\") as Control[] | undefined;\n\t\t\t\tcontent?.forEach((control) => iconTabFilter.addContent(control));\n\n\t\t\t\tthis.iconTabBar.addItem(iconTabFilter);\n\t\t\t\taddFESRSemanticStepName(iconTabFilter, FESR_EVENTS.SELECT, panel.getProperty(\"key\") as string);\n\t\t\t}\n\n\t\t\tconst hasItems = this.iconTabBar.getItems().length > 0;\n\t\t\tthis.iconTabBar.setVisible(hasItems);\n\t\t\tthis.errorMessageContainer.setVisible(!hasItems);\n\t\t}\n\t}\n\n\t/**\n\t * Retrieves a panel by its key from the dialog.\n\t *\n\t * @private\n\t * @param {string} key - The key of the panel to retrieve.\n\t * @returns {BaseSettingsPanel} The panel matching the provided key.\n\t */\n\tprivate _getSelectedPanel(key: string): BaseSettingsPanel {\n\t\tlet selectedPanel = this.getPanels().find((panel) => panel.getProperty(\"key\") === key);\n\t\tif (!selectedPanel) {\n\t\t\tselectedPanel = this.getPanels()[0];\n\t\t\tthis.setProperty(\"selectedKey\", selectedPanel?.getProperty(\"key\"));\n\t\t}\n\t\treturn selectedPanel;\n\t}\n\n\t/**\n\t * Updates the action buttons based on the selected panel.\n\t *\n\t * @private\n\t */\n\tpublic updateActionButtons(): void {\n\t\tthis.cancelButton =\n\t\t\tthis.cancelButton ||\n\t\t\tnew Button(`${this.getId()}-close-btn`, {\n\t\t\t\ttext: this._i18nBundle.getText(\"XBUT_CANCEL\"),\n\t\t\t\ttype: ButtonType.Transparent,\n\t\t\t\tpress: () => this.close()\n\t\t\t});\n\t\taddFESRSemanticStepName(this.cancelButton, FESR_EVENTS.PRESS, FESR_IDS.CANCEL_CONTENT_DIALOG);\n\t\tconst selectedKey = this.getProperty(\"selectedKey\") as string;\n\t\tthis.removeAllButtons();\n\n\t\t// add action buttons from the selected panelzz\n\t\tthis._getSelectedPanel(selectedKey)\n\t\t\t?.getActionButtons()\n\t\t\t.forEach((button) => {\n\t\t\t\tthis.addButton(button);\n\t\t\t});\n\n\t\t// add cancel button as common action button\n\t\tthis.addButton(this.cancelButton);\n\t}\n\n\t/**\n\t * Handles the dialog close event and triggers panel cleanup.\n\t *\n\t * @private\n\t */\n\tprivate onDialogClose(): void {\n\t\tthis.getPanels().forEach((panel) => panel.fireEvent(\"onDialogClose\"));\n\t\tthis.close();\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
@@ -64,6 +64,8 @@ export default class ContentAdditionDialog extends BaseSettingsDialog {
64
64
  this.addStyleClass("sapCuxContentAdditionDialog");
65
65
  this.attachAfterClose(this.onDialogClose.bind(this));
66
66
  this.setEscapeHandler(this.onDialogClose.bind(this));
67
+ //update action buttons to be displayed before dialog opens
68
+ this.attachBeforeOpen(this.updateActionButtons.bind(this));
67
69
 
68
70
  //setup panels
69
71
  this.addPanel(new AppsAdditionPanel(`${this.getId()}-appsAdditionPanel`));
@@ -127,9 +129,6 @@ export default class ContentAdditionDialog extends BaseSettingsDialog {
127
129
  //set selected key
128
130
  const selectedKey = (this.getProperty("selectedKey") as string) || (this.getPanels()[0]?.getProperty("key") as string);
129
131
  this.iconTabBar.setSelectedKey(selectedKey);
130
-
131
- //update action buttons to be displayed
132
- this.updateActionButtons();
133
132
  }
134
133
 
135
134
  /**
@@ -614,6 +614,9 @@ declare module "sap/cux/home/FavAppPanel" {
614
614
  * @param {object} oViz.visualization - The visualization object.
615
615
  * @param {boolean} [oViz.visualization.isBookmark=false] - Indicates if the visualization is a bookmark.
616
616
  * @param {string} [oViz.visualization.vizId] - The ID of the visualization if it's not a bookmark.
617
+ * @param {string} [sSectionId] - The ID of the section (group) to which the visualization should be added.
618
+ * If not provided, the visualization will be added to the default section.
619
+ * @param {IMoveConfig} [moveConfig] - Configuration for moving the visualization.
617
620
  * @returns {Promise<void>} A promise that resolves to void after the visualization is added.
618
621
  * @private
619
622
  */
@@ -1 +1 @@
1
- {"version":3,"file":"FavAppPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/FavAppPanel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FavAppPanel.d.ts","sourceRoot":"../../../../..","sources":["src/sap/cux/home/FavAppPanel.ts"],"names":[],"mappings":"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"}