@sapui5/sap.fe.plugins.managecache 1.121.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.txt +35 -0
- package/README.md +19 -0
- package/package.json +12 -0
- package/src/sap/fe/plugins/managecache/.library +41 -0
- package/src/sap/fe/plugins/managecache/Component.js +115 -0
- package/src/sap/fe/plugins/managecache/Component.ts +186 -0
- package/src/sap/fe/plugins/managecache/controller/settings.controller.js +51 -0
- package/src/sap/fe/plugins/managecache/controller/settings.controller.ts +44 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle.properties +18 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_ar.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_bg.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_ca.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_cnr.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_cs.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_cy.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_da.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_de.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_el.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_en.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_en_GB.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_en_US_saprigi.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_es.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_es_MX.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_et.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_fi.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_fr.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_fr_CA.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_hi.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_hr.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_hu.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_id.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_it.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_iw.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_ja.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_kk.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_ko.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_lt.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_lv.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_mk.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_ms.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_nl.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_no.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_pl.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_pt.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_pt_PT.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_ro.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_ru.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_sh.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_sk.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_sl.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_sr.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_sv.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_th.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_tr.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_uk.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_vi.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_zh_CN.properties +8 -0
- package/src/sap/fe/plugins/managecache/i18n/messagebundle_zh_TW.properties +8 -0
- package/src/sap/fe/plugins/managecache/library.js +32 -0
- package/src/sap/fe/plugins/managecache/library.ts +27 -0
- package/src/sap/fe/plugins/managecache/manifest.json +63 -0
- package/src/sap/fe/plugins/managecache/view/settings.view.xml +32 -0
- package/ui5.yaml +20 -0
package/LICENSE.txt
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
SAP DEVELOPER LICENSE AGREEMENT
|
|
2
|
+
|
|
3
|
+
Please scroll down and read the following Developer License Agreement carefully ("Developer Agreement"). By clicking "I Accept" or by attempting to download, or install, or use the SAP software and other materials that accompany this Developer Agreement ("SAP Materials"), You agree that this Developer Agreement forms a legally binding agreement between You ("You" or "Your") and SAP SE, for and on behalf of itself and its subsidiaries and affiliates (as defined in Section 15 of the German Stock Corporation Act) and You agree to be bound by all of the terms and conditions stated in this Developer Agreement. If You are trying to access or download the SAP Materials on behalf of Your employer or as a consultant or agent of a third party (either "Your Company"), You represent and warrant that You have the authority to act on behalf of and bind Your Company to the terms of this Developer Agreement and everywhere in this Developer Agreement that refers to 'You' or 'Your' shall also include Your Company. If You do not agree to these terms, do not click "I Accept", and do not attempt to access or use the SAP Materials.
|
|
4
|
+
|
|
5
|
+
1. LICENSE: SAP grants You a non-exclusive, non-transferable, non-sublicensable, revocable, limited use license to copy, reproduce and distribute the application programming interfaces ("API"), documentation, plug-ins, templates, scripts and sample code ("Tools") on a desktop, laptop, tablet, smart phone, or other appropriate computer device that You own or control (any, a "Computer") to create new applications ("Customer Applications"). You agree that the Customer Applications will not: (a) unreasonably impair, degrade or reduce the performance or security of any SAP software applications, services or related technology ("Software"); (b) enable the bypassing or circumventing of SAP's license restrictions and/or provide users with access to the Software to which such users are not licensed; (c) render or provide, without prior written consent from SAP, any information concerning SAP software license terms, Software, or any other information related to SAP products; or (d) permit mass data extraction from an SAP product to a non-SAP product, including use, modification, saving or other processing of such data in the non-SAP product. In exchange for the right to develop Customer Applications under this Agreement, You covenant not to assert any Intellectual Property Rights in Customer Applications created by You against any SAP product, service, or future SAP development.
|
|
6
|
+
|
|
7
|
+
2. INTELLECTUAL PROPERTY: (a) SAP or its licensors retain all ownership and intellectual property rights in the APIs, Tools and Software. You may not: a) remove or modify any marks or proprietary notices of SAP, b) provide or make the APIs, Tools or Software available to any third party, c) assign this Developer Agreement or give or transfer the APIs, Tools or Software or an interest in them to another individual or entity, d) decompile, disassemble or reverse engineer (except to the extent permitted by applicable law) the APIs Tools or Software, (e) create derivative works of or based on the APIs, Tools or Software, (f) use any SAP name, trademark or logo, or (g) use the APIs or Tools to modify existing Software or other SAP product functionality or to access the Software or other SAP products' source code or metadata.
|
|
8
|
+
(b) Subject to SAP's underlying rights in any part of the APIs, Tools or Software, You retain all ownership and intellectual property rights in Your Customer Applications.
|
|
9
|
+
|
|
10
|
+
3. FREE AND OPEN SOURCE COMPONENTS: The SAP Materials may include certain third party free or open source components ("FOSS Components"). You may have additional rights in such FOSS Components that are provided by the third party licensors of those components.
|
|
11
|
+
|
|
12
|
+
4. THIRD PARTY DEPENDENCIES: The SAP Materials may require certain third party software dependencies ("Dependencies") for the use or operation of such SAP Materials. These dependencies may be identified by SAP in Maven POM files, product documentation or by other means. SAP does not grant You any rights in or to such Dependencies under this Developer Agreement. You are solely responsible for the acquisition, installation and use of Dependencies. SAP DOES NOT MAKE ANY REPRESENTATIONS OR WARRANTIES IN RESPECT OF DEPENDENCIES, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY AND OF FITNESS FOR A PARTICULAR PURPOSE. IN PARTICULAR, SAP DOES NOT WARRANT THAT DEPENDENCIES WILL BE AVAILABLE, ERROR FREE, INTEROPERABLE WITH THE SAP MATERIALS, SUITABLE FOR ANY PARTICULAR PURPOSE OR NON-INFRINGING. YOU ASSUME ALL RISKS ASSOCIATED WITH THE USE OF DEPENDENCIES, INCLUDING WITHOUT LIMITATION RISKS RELATING TO QUALITY, AVAILABILITY, PERFORMANCE, DATA LOSS, UTILITY IN A PRODUCTION ENVIRONMENT, AND NON-INFRINGEMENT. IN NO EVENT WILL SAP BE LIABLE DIRECTLY OR INDIRECTLY IN RESPECT OF ANY USE OF DEPENDENCIES BY YOU.
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
5. WARRANTY:
|
|
16
|
+
a) If You are located outside the US or Canada: AS THE API AND TOOLS ARE PROVIDED TO YOU FREE OF CHARGE, SAP DOES NOT GUARANTEE OR WARRANT ANY FEATURES OR QUALITIES OF THE TOOLS OR API OR GIVE ANY UNDERTAKING WITH REGARD TO ANY OTHER QUALITY. NO SUCH WARRANTY OR UNDERTAKING SHALL BE IMPLIED BY YOU FROM ANY DESCRIPTION IN THE API OR TOOLS OR ANY AVAILABLE DOCUMENTATION OR ANY OTHER COMMUNICATION OR ADVERTISEMENT. IN PARTICULAR, SAP DOES NOT WARRANT THAT THE SOFTWARE WILL BE AVAILABLE UNINTERRUPTED, ERROR FREE, OR PERMANENTLY AVAILABLE. FOR THE TOOLS AND API ALL WARRANTY CLAIMS ARE SUBJECT TO THE LIMITATION OF LIABILITY STIPULATED IN SECTION 4 BELOW.
|
|
17
|
+
b) If You are located in the US or Canada: THE API AND TOOLS ARE LICENSED TO YOU "AS IS", WITHOUT ANY WARRANTY, ESCROW, TRAINING, MAINTENANCE, OR SERVICE OBLIGATIONS WHATSOEVER ON THE PART OF SAP. SAP MAKES NO EXPRESS OR IMPLIED WARRANTIES OR CONDITIONS OF SALE OF ANY TYPE WHATSOEVER, INCLUDING BUT NOT LIMITED TO IMPLIED WARRANTIES OF MERCHANTABILITY AND OF FITNESS FOR A PARTICULAR PURPOSE. IN PARTICULAR, SAP DOES NOT WARRANT THAT THE SOFTWARE WILL BE AVAILABLE UNINTERRUPTED, ERROR FREE, OR PERMANENTLY AVAILABLE. YOU ASSUME ALL RISKS ASSOCIATED WITH THE USE OF THE API AND TOOLS, INCLUDING WITHOUT LIMITATION RISKS RELATING TO QUALITY, AVAILABILITY, PERFORMANCE, DATA LOSS, AND UTILITY IN A PRODUCTION ENVIRONMENT.
|
|
18
|
+
|
|
19
|
+
6. LIMITATION OF LIABILITY:
|
|
20
|
+
a) If You are located outside the US or Canada: IRRESPECTIVE OF THE LEGAL REASONS, SAP SHALL ONLY BE LIABLE FOR DAMAGES UNDER THIS AGREEMENT IF SUCH DAMAGE (I) CAN BE CLAIMED UNDER THE GERMAN PRODUCT LIABILITY ACT OR (II) IS CAUSED BY INTENTIONAL MISCONDUCT OF SAP OR (III) CONSISTS OF PERSONAL INJURY. IN ALL OTHER CASES, NEITHER SAP NOR ITS EMPLOYEES, AGENTS AND SUBCONTRACTORS SHALL BE LIABLE FOR ANY KIND OF DAMAGE OR CLAIMS HEREUNDER.
|
|
21
|
+
b) If You are located in the US or Canada: IN NO EVENT SHALL SAP BE LIABLE TO YOU, YOUR COMPANY OR TO ANY THIRD PARTY FOR ANY DAMAGES IN AN AMOUNT IN EXCESS OF $100 ARISING IN CONNECTION WITH YOUR USE OF OR INABILITY TO USE THE TOOLS OR API OR IN CONNECTION WITH SAP'S PROVISION OF OR FAILURE TO PROVIDE SERVICES PERTAINING TO THE TOOLS OR API, OR AS A RESULT OF ANY DEFECT IN THE API OR TOOLS. THIS DISCLAIMER OF LIABILITY SHALL APPLY REGARDLESS OF THE FORM OF ACTION THAT MAY BE BROUGHT AGAINST SAP, WHETHER IN CONTRACT OR TORT, INCLUDING WITHOUT LIMITATION ANY ACTION FOR NEGLIGENCE. YOUR SOLE REMEDY IN THE EVENT OF BREACH OF THIS DEVELOPER AGREEMENT BY SAP OR FOR ANY OTHER CLAIM RELATED TO THE API OR TOOLS SHALL BE TERMINATION OF THIS AGREEMENT. NOTWITHSTANDING ANYTHING TO THE CONTRARY HEREIN, UNDER NO CIRCUMSTANCES SHALL SAP AND ITS LICENSORS BE LIABLE TO YOU OR ANY OTHER PERSON OR ENTITY FOR ANY SPECIAL, INCIDENTAL, CONSEQUENTIAL, OR INDIRECT DAMAGES, LOSS OF GOOD WILL OR BUSINESS PROFITS, WORK STOPPAGE, DATA LOSS, COMPUTER FAILURE OR MALFUNCTION, ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSS, OR EXEMPLARY OR PUNITIVE DAMAGES.
|
|
22
|
+
|
|
23
|
+
7. INDEMNITY: You will fully indemnify, hold harmless and defend SAP against law suits based on any claim: (a) that any Customer Application created by You infringes or misappropriates any patent, copyright, trademark, trade secrets, or other proprietary rights of a third party, or (b) related to Your alleged violation of the terms of this Developer Agreement.
|
|
24
|
+
|
|
25
|
+
8. EXPORT: The Tools and API are subject to German, EU and US export control regulations. You confirm that: a) You will not use the Tools or API for, and will not allow the Tools or API to be used for, any purposes prohibited by German, EU and US law, including, without limitation, for the development, design, manufacture or production of nuclear, chemical or biological weapons of mass destruction; b) You are not located in Cuba, Iran, Sudan, Iraq, North Korea, Syria, nor any other country to which the United States has prohibited export or that has been designated by the U.S. Government as a "terrorist supporting" country (any, an "US Embargoed Country"); c) You are not a citizen, national or resident of, and are not under the control of, a US Embargoed Country; d) You will not download or otherwise export or re-export the API or Tools, directly or indirectly, to a US Embargoed Country nor to citizens, nationals or residents of a US Embargoed Country; e) You are not listed on the United States Department of Treasury lists of Specially Designated Nationals, Specially Designated Terrorists, and Specially Designated Narcotic Traffickers, nor listed on the United States Department of Commerce Table of Denial Orders or any other U.S. government list of prohibited or restricted parties and f) You will not download or otherwise export or re-export the API or Tools , directly or indirectly, to persons on the above-mentioned lists.
|
|
26
|
+
|
|
27
|
+
9. SUPPORT: Other than what is made available on the SAP Community Website (SCN) by SAP at its sole discretion and by SCN members, SAP does not offer support for the API or Tools which are the subject of this Developer Agreement.
|
|
28
|
+
|
|
29
|
+
10. TERM AND TERMINATION: You may terminate this Developer Agreement by destroying all copies of the API and Tools on Your Computer(s). SAP may terminate Your license to use the API and Tools immediately if You fail to comply with any of the terms of this Developer Agreement, or, for SAP's convenience by providing you with ten (10) day's written notice of termination (including email). In case of termination or expiration of this Developer Agreement, You must destroy all copies of the API and Tools immediately. In the event Your Company or any of the intellectual property you create using the API, Tools or Software are acquired (by merger, purchase of stock, assets or intellectual property or exclusive license), or You become employed, by a direct competitor of SAP, then this Development Agreement and all licenses granted in this Developer Agreement shall immediately terminate upon the date of such acquisition.
|
|
30
|
+
|
|
31
|
+
11. LAW/VENUE:
|
|
32
|
+
a) If You are located outside the US or Canada: This Developer Agreement is governed by and construed in accordance with the laws of the Germany. You and SAP agree to submit to the exclusive jurisdiction of, and venue in, the courts of Karlsruhe in Germany in any dispute arising out of or relating to this Developer Agreement.
|
|
33
|
+
b) If You are located in the US or Canada: This Developer Agreement shall be governed by and construed under the Commonwealth of Pennsylvania law without reference to its conflicts of law principles. In the event of any conflicts between foreign law, rules, and regulations, and United States of America law, rules, and regulations, United States of America law, rules, and regulations shall prevail and govern. The United Nations Convention on Contracts for the International Sale of Goods shall not apply to this Developer Agreement. The Uniform Computer Information Transactions Act as enacted shall not apply.
|
|
34
|
+
|
|
35
|
+
12. MISCELLANEOUS: This Developer Agreement is the complete agreement for the API and Tools licensed (including reference to information/documentation contained in a URL). This Developer Agreement supersedes all prior or contemporaneous agreements or representations with regards to the subject matter of this Developer Agreement. If any term of this Developer Agreement is found to be invalid or unenforceable, the surviving provisions shall remain effective. SAP's failure to enforce any right or provisions stipulated in this Developer Agreement will not constitute a waiver of such provision, or any other provision of this Developer Agreement.
|
package/README.md
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+

|
|
2
|
+
|
|
3
|
+
# @sapui5/sap.fe.plugins.managecache
|
|
4
|
+
|
|
5
|
+
Runtime resources of the [SAPUI5](https://sapui5.hana.ondemand.com) Library **sap.fe.plugins.managecache**.
|
|
6
|
+
|
|
7
|
+
## SAP Internal
|
|
8
|
+
|
|
9
|
+
**This library is restricted for use by SAP internal projects only.**
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
Refrain from installing this package using npm, Yarn or similar package managers.
|
|
14
|
+
It is meant to be consumed using the [UI5 Tooling](https://sap.github.io/ui5-tooling/).
|
|
15
|
+
For details please refer to our documentation on [Consuming SAPUI5 Libraries](https://sap.github.io/ui5-tooling/pages/SAPUI5/).
|
|
16
|
+
|
|
17
|
+
## License
|
|
18
|
+
|
|
19
|
+
This package is provided under the terms of the [SAP Developer License Agreement](https://tools.hana.ondemand.com/developer-license-3.1.txt).
|
package/package.json
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@sapui5/sap.fe.plugins.managecache",
|
|
3
|
+
"version": "1.121.0",
|
|
4
|
+
"description": "SAPUI5 Library sap.fe.plugins.managecache",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"sapui5",
|
|
7
|
+
"ui5"
|
|
8
|
+
],
|
|
9
|
+
"homepage": "https://sap.github.io/ui5-tooling/pages/SAPUI5/",
|
|
10
|
+
"license": "SEE LICENSE IN LICENSE.txt",
|
|
11
|
+
"author": "SAP SE (https://www.sap.com)"
|
|
12
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" ?>
|
|
2
|
+
<library xmlns="http://www.sap.com/sap.ui.library.xsd">
|
|
3
|
+
<name>sap.fe.plugins.managecache</name>
|
|
4
|
+
<vendor>SAP SE</vendor>
|
|
5
|
+
<copyright>
|
|
6
|
+
SAP UI development toolkit for HTML5 (SAPUI5)
|
|
7
|
+
(c) Copyright 2009-2021 SAP SE. All rights reserved
|
|
8
|
+
</copyright>
|
|
9
|
+
<version>1.121.0</version>
|
|
10
|
+
|
|
11
|
+
<documentation>UI5 library: sap.fe.plugins.managecache</documentation>
|
|
12
|
+
|
|
13
|
+
<dependencies>
|
|
14
|
+
<dependency>
|
|
15
|
+
<libraryName>sap.m</libraryName>
|
|
16
|
+
</dependency>
|
|
17
|
+
<dependency>
|
|
18
|
+
<libraryName>sap.ui.core</libraryName>
|
|
19
|
+
</dependency>
|
|
20
|
+
</dependencies>
|
|
21
|
+
|
|
22
|
+
<appData>
|
|
23
|
+
<!-- excludes for the JSDoc -->
|
|
24
|
+
<jsdoc xmlns="http://www.sap.com/ui5/buildext/jsdoc">
|
|
25
|
+
<exclude name="sap.fe.plugins.managecache.js." />
|
|
26
|
+
</jsdoc>
|
|
27
|
+
<!-- excludes for the JSCoverage -->
|
|
28
|
+
<jscoverage xmlns="http://www.sap.com/ui5/buildext/jscoverage">
|
|
29
|
+
<exclude name="sap.fe.plugins.managecache.js." />
|
|
30
|
+
</jscoverage>
|
|
31
|
+
<releasenotes
|
|
32
|
+
xmlns="http://www.sap.com/ui5/buildext/releasenotes"
|
|
33
|
+
url="../../../../test-resources/sap/fe/plugins/managecache/relnotes/changes-{major}.{minor}.json"
|
|
34
|
+
resolve="lib"
|
|
35
|
+
/>
|
|
36
|
+
<ownership xmlns="http://www.sap.com/ui5/buildext/ownership">
|
|
37
|
+
<component>CA-UI5-FE</component>
|
|
38
|
+
<!-- default component for library, embedded text as a shortcut for <name>text</name> -->
|
|
39
|
+
</ownership>
|
|
40
|
+
</appData>
|
|
41
|
+
</library>
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
+
* (c) Copyright 2009-2024 SAP SE. All rights reserved
|
|
4
|
+
*/
|
|
5
|
+
sap.ui.define(["sap/ui/core/UIComponent", "sap/ui/core/cache/CacheManager", "sap/ui/core/mvc/View", "sap/ui/core/mvc/ViewType", "sap/ui/model/json/JSONModel", "sap/ui/model/resource/ResourceModel"], function (UIComponent, CacheManager, View, ViewType, JSONModel, i18nModel) {
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
9
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
10
|
+
let RequestSettingsComponent = /*#__PURE__*/function (_UIComponent) {
|
|
11
|
+
_inheritsLoose(RequestSettingsComponent, _UIComponent);
|
|
12
|
+
function RequestSettingsComponent() {
|
|
13
|
+
return _UIComponent.apply(this, arguments) || this;
|
|
14
|
+
}
|
|
15
|
+
var _proto = RequestSettingsComponent.prototype;
|
|
16
|
+
_proto.getWaitInit = async function getWaitInit() {
|
|
17
|
+
return this.waitInit;
|
|
18
|
+
};
|
|
19
|
+
_proto.init = async function init() {
|
|
20
|
+
let resolveFunction;
|
|
21
|
+
_UIComponent.prototype.init.call(this);
|
|
22
|
+
this.waitInit = new Promise(resolve => {
|
|
23
|
+
resolveFunction = resolve;
|
|
24
|
+
});
|
|
25
|
+
const personalizationService = await sap.ushell.Container.getServiceAsync("Personalization");
|
|
26
|
+
this.model = new JSONModel({});
|
|
27
|
+
this.personalizationService = personalizationService;
|
|
28
|
+
this.scope = {
|
|
29
|
+
clientStorageAllowed: false,
|
|
30
|
+
keyCategory: personalizationService.constants.keyCategory.FIXED_KEY,
|
|
31
|
+
validity: "Infinity",
|
|
32
|
+
writeFrequency: personalizationService.constants.writeFrequency.LOW
|
|
33
|
+
};
|
|
34
|
+
this.personalizationId = {
|
|
35
|
+
container: "sap.ushell.optimisticreq.personalization",
|
|
36
|
+
item: "data"
|
|
37
|
+
};
|
|
38
|
+
const period = await this._getPersonalizedPeriod(personalizationService);
|
|
39
|
+
// Remove old managecache entries via cache manager
|
|
40
|
+
const timeStamp = new Date(Date.now() - period * 86400000);
|
|
41
|
+
const filters = {
|
|
42
|
+
olderThan: timeStamp,
|
|
43
|
+
prefix: "sap.ui.model.odata.v4.managecache"
|
|
44
|
+
};
|
|
45
|
+
CacheManager.delWithFilters(filters);
|
|
46
|
+
// Enhance user activities section with optimistic batch settings
|
|
47
|
+
await this._createActivitiesSection();
|
|
48
|
+
resolveFunction();
|
|
49
|
+
};
|
|
50
|
+
_proto._getPersonalizedPeriod = async function _getPersonalizedPeriod(personalizationService) {
|
|
51
|
+
let period;
|
|
52
|
+
return new Promise((resolve, reject) => {
|
|
53
|
+
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
54
|
+
personalizationService.getPersonalizer(this.personalizationId, this.scope).getPersData()
|
|
55
|
+
// Use personalization service to get/set period
|
|
56
|
+
.done(personalizationContainer => {
|
|
57
|
+
period = (personalizationContainer === null || personalizationContainer === void 0 ? void 0 : personalizationContainer.period) ?? 30;
|
|
58
|
+
this.model.setProperty("/period", period);
|
|
59
|
+
this.model.setProperty("/oldperiod", period);
|
|
60
|
+
resolve(period);
|
|
61
|
+
}).fail(function (error) {
|
|
62
|
+
reject(error);
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
_proto._setPersonalizedPeriod = async function _setPersonalizedPeriod(personalizationService, period) {
|
|
67
|
+
const personalizer = personalizationService.getPersonalizer(this.personalizationId, this.scope);
|
|
68
|
+
return personalizer.setPersData(period);
|
|
69
|
+
};
|
|
70
|
+
_proto._createActivitiesSection = async function _createActivitiesSection() {
|
|
71
|
+
const i18n = new i18nModel({
|
|
72
|
+
bundleName: "sap.fe.plugins.managecache.i18n.messagebundle"
|
|
73
|
+
});
|
|
74
|
+
const viewType = ViewType.XML;
|
|
75
|
+
const viewSettings = {
|
|
76
|
+
type: viewType,
|
|
77
|
+
id: "requestCacheView",
|
|
78
|
+
viewName: "sap.fe.plugins.managecache.view.settings"
|
|
79
|
+
};
|
|
80
|
+
await sap.ushell.Container.getRenderer().addUserPreferencesGroupedEntry({
|
|
81
|
+
title: i18n.getResourceBundle().getText("T_GROUP"),
|
|
82
|
+
icon: "sap-icon://laptop",
|
|
83
|
+
entryHelpId: "userActivitiesEntry",
|
|
84
|
+
groupingId: "userActivities",
|
|
85
|
+
groupingTabTitle: i18n.getResourceBundle().getText("title"),
|
|
86
|
+
groupingTabHelpId: "requestCacheUserActivities-helpId",
|
|
87
|
+
value: async function () {
|
|
88
|
+
return Promise.resolve("Request Cache"); //check
|
|
89
|
+
},
|
|
90
|
+
|
|
91
|
+
content: async () => {
|
|
92
|
+
return View.create(viewSettings).then(view => {
|
|
93
|
+
view.setModel(this.model);
|
|
94
|
+
view.setModel(i18n, "i18n");
|
|
95
|
+
this.viewInstance = view;
|
|
96
|
+
return this.viewInstance;
|
|
97
|
+
});
|
|
98
|
+
},
|
|
99
|
+
onSave: async () => {
|
|
100
|
+
const period = this.model.getProperty("/period");
|
|
101
|
+
await this._setPersonalizedPeriod(this.personalizationService, {
|
|
102
|
+
period: period
|
|
103
|
+
});
|
|
104
|
+
return this.viewInstance.getController().onSave(period);
|
|
105
|
+
},
|
|
106
|
+
onCancel: () => {
|
|
107
|
+
return this.viewInstance.getController().onCancel();
|
|
108
|
+
}
|
|
109
|
+
});
|
|
110
|
+
};
|
|
111
|
+
return RequestSettingsComponent;
|
|
112
|
+
}(UIComponent);
|
|
113
|
+
return RequestSettingsComponent;
|
|
114
|
+
}, false);
|
|
115
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZXF1ZXN0U2V0dGluZ3NDb21wb25lbnQiLCJnZXRXYWl0SW5pdCIsIndhaXRJbml0IiwiaW5pdCIsInJlc29sdmVGdW5jdGlvbiIsIlByb21pc2UiLCJyZXNvbHZlIiwicGVyc29uYWxpemF0aW9uU2VydmljZSIsInNhcCIsInVzaGVsbCIsIkNvbnRhaW5lciIsImdldFNlcnZpY2VBc3luYyIsIm1vZGVsIiwiSlNPTk1vZGVsIiwic2NvcGUiLCJjbGllbnRTdG9yYWdlQWxsb3dlZCIsImtleUNhdGVnb3J5IiwiY29uc3RhbnRzIiwiRklYRURfS0VZIiwidmFsaWRpdHkiLCJ3cml0ZUZyZXF1ZW5jeSIsIkxPVyIsInBlcnNvbmFsaXphdGlvbklkIiwiY29udGFpbmVyIiwiaXRlbSIsInBlcmlvZCIsIl9nZXRQZXJzb25hbGl6ZWRQZXJpb2QiLCJ0aW1lU3RhbXAiLCJEYXRlIiwibm93IiwiZmlsdGVycyIsIm9sZGVyVGhhbiIsInByZWZpeCIsIkNhY2hlTWFuYWdlciIsImRlbFdpdGhGaWx0ZXJzIiwiX2NyZWF0ZUFjdGl2aXRpZXNTZWN0aW9uIiwicmVqZWN0IiwiZ2V0UGVyc29uYWxpemVyIiwiZ2V0UGVyc0RhdGEiLCJkb25lIiwicGVyc29uYWxpemF0aW9uQ29udGFpbmVyIiwic2V0UHJvcGVydHkiLCJmYWlsIiwiZXJyb3IiLCJfc2V0UGVyc29uYWxpemVkUGVyaW9kIiwicGVyc29uYWxpemVyIiwic2V0UGVyc0RhdGEiLCJpMThuIiwiaTE4bk1vZGVsIiwiYnVuZGxlTmFtZSIsInZpZXdUeXBlIiwiVmlld1R5cGUiLCJYTUwiLCJ2aWV3U2V0dGluZ3MiLCJ0eXBlIiwiaWQiLCJ2aWV3TmFtZSIsImdldFJlbmRlcmVyIiwiYWRkVXNlclByZWZlcmVuY2VzR3JvdXBlZEVudHJ5IiwidGl0bGUiLCJnZXRSZXNvdXJjZUJ1bmRsZSIsImdldFRleHQiLCJpY29uIiwiZW50cnlIZWxwSWQiLCJncm91cGluZ0lkIiwiZ3JvdXBpbmdUYWJUaXRsZSIsImdyb3VwaW5nVGFiSGVscElkIiwidmFsdWUiLCJjb250ZW50IiwiVmlldyIsImNyZWF0ZSIsInRoZW4iLCJ2aWV3Iiwic2V0TW9kZWwiLCJ2aWV3SW5zdGFuY2UiLCJvblNhdmUiLCJnZXRQcm9wZXJ0eSIsImdldENvbnRyb2xsZXIiLCJvbkNhbmNlbCIsIlVJQ29tcG9uZW50Il0sInNvdXJjZVJvb3QiOiIuIiwic291cmNlcyI6WyJDb21wb25lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgUmVzb3VyY2VCdW5kbGUgZnJvbSBcInNhcC9iYXNlL2kxOG4vUmVzb3VyY2VCdW5kbGVcIjtcbmltcG9ydCBVSUNvbXBvbmVudCBmcm9tIFwic2FwL3VpL2NvcmUvVUlDb21wb25lbnRcIjtcbmltcG9ydCBDYWNoZU1hbmFnZXIgZnJvbSBcInNhcC91aS9jb3JlL2NhY2hlL0NhY2hlTWFuYWdlclwiO1xuaW1wb3J0IFZpZXcgZnJvbSBcInNhcC91aS9jb3JlL212Yy9WaWV3XCI7XG5pbXBvcnQgVmlld1R5cGUgZnJvbSBcInNhcC91aS9jb3JlL212Yy9WaWV3VHlwZVwiO1xuaW1wb3J0IEpTT05Nb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL2pzb24vSlNPTk1vZGVsXCI7XG5pbXBvcnQgaTE4bk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvcmVzb3VyY2UvUmVzb3VyY2VNb2RlbFwiO1xuaW1wb3J0IHR5cGUgUmVxdWVzdFNldHRpbmdzQ29udHJvbGxlciBmcm9tIFwiLi9jb250cm9sbGVyL3NldHRpbmdzLmNvbnRyb2xsZXJcIjtcblxuZXhwb3J0IHR5cGUgU2NvcGUgPSB7XG5cdHZhbGlkaXR5OiBzdHJpbmc7XG5cdGtleUNhdGVnb3J5OiBzdHJpbmc7XG5cdHdyaXRlRnJlcXVlbmN5OiBzdHJpbmc7XG5cdGNsaWVudFN0b3JhZ2VBbGxvd2VkOiBib29sZWFuO1xufTtcbmV4cG9ydCB0eXBlIFBlcnNvbmFsaXphdGlvbklkID0ge1xuXHRjb250YWluZXI6IHN0cmluZztcblx0aXRlbTogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIEN1c3RvbVNjb3BlQ29uc3RhbnRzID0ge1xuXHRjb25zdGFudHM6IHtcblx0XHRrZXlDYXRlZ29yeToge1xuXHRcdFx0RklYRURfS0VZOiBzdHJpbmc7XG5cdFx0XHRHRU5FUkFURURfS0VZOiBzdHJpbmc7XG5cdFx0fTtcblx0XHR3cml0ZUZyZXF1ZW5jeToge1xuXHRcdFx0SElHSDogc3RyaW5nO1xuXHRcdFx0TE9XOiBzdHJpbmc7XG5cdFx0fTtcblx0fTtcblx0Z2V0UGVyc29uYWxpemVyOiAoXG5cdFx0cGVyc29uYWxpemF0aW9uSWQ6IFBlcnNvbmFsaXphdGlvbklkLFxuXHRcdHNjb3BlOiBTY29wZVxuXHQpID0+IHtcblx0XHRnZXRQZXJzRGF0YTogKCkgPT4gSlF1ZXJ5RGVmZXJyZWQ8eyBwZXJpb2Q6IG51bWJlciB9Pjtcblx0XHRzZXRQZXJzRGF0YTogKGFyZzogb2JqZWN0KSA9PiBKUXVlcnlEZWZlcnJlZDxvYmplY3Q+O1xuXHR9O1xufTtcblxuZXhwb3J0IHR5cGUgUGVyc29uYWxpemF0aW9uQ29uc3RhbnRzID0ge1xuXHRrZXlDYXRlZ29yeToge1xuXHRcdEZJWEVEX0tFWTogc3RyaW5nO1xuXHRcdEdFTkVSQVRFRF9LRVk6IHN0cmluZztcblx0fTtcblx0d3JpdGVGcmVxdWVuY3k6IHtcblx0XHRISUdIOiBzdHJpbmc7XG5cdFx0TE9XOiBzdHJpbmc7XG5cdH07XG59O1xuXG5leHBvcnQgdHlwZSBTaGVsbENvbnRhaW5lciA9IHtcblx0Z2V0U2VydmljZUFzeW5jKGFyZzogc3RyaW5nKTogUHJvbWlzZTxDdXN0b21TY29wZUNvbnN0YW50cz47XG5cdGdldFJlbmRlcmVyKCk6IHtcblx0XHRhZGRVc2VyUHJlZmVyZW5jZXNHcm91cGVkRW50cnkoYXJnOiB7XG5cdFx0XHRvblNhdmU6ICgpID0+IFByb21pc2U8dm9pZD47XG5cdFx0XHRncm91cGluZ0lkOiBzdHJpbmc7XG5cdFx0XHRvbkNhbmNlbDogKCkgPT4gdm9pZDtcblx0XHRcdGljb246IHN0cmluZztcblx0XHRcdGdyb3VwaW5nVGFiSGVscElkOiBzdHJpbmc7XG5cdFx0XHR0aXRsZTogc3RyaW5nO1xuXHRcdFx0ZW50cnlIZWxwSWQ6IHN0cmluZztcblx0XHRcdGdyb3VwaW5nVGFiVGl0bGU6IHN0cmluZztcblx0XHRcdHZhbHVlOiAoKSA9PiBQcm9taXNlPEF3YWl0ZWQ8c3RyaW5nPj47XG5cdFx0XHRjb250ZW50OiAoKSA9PiBQcm9taXNlPFZpZXc+O1xuXHRcdH0pOiBQcm9taXNlPHZvaWQ+O1xuXHR9O1xufTtcblxuY2xhc3MgUmVxdWVzdFNldHRpbmdzQ29tcG9uZW50IGV4dGVuZHMgVUlDb21wb25lbnQge1xuXHR2aWV3SW5zdGFuY2UhOiBWaWV3O1xuXG5cdHBlcnNvbmFsaXphdGlvblNlcnZpY2UhOiBDdXN0b21TY29wZUNvbnN0YW50cztcblxuXHRtb2RlbCE6IEpTT05Nb2RlbDtcblxuXHRwZXJzb25hbGl6YXRpb25JZCE6IFBlcnNvbmFsaXphdGlvbklkO1xuXG5cdHNjb3BlITogU2NvcGU7XG5cblx0cHJpdmF0ZSB3YWl0SW5pdCE6IFByb21pc2U8dm9pZD47XG5cblx0cHVibGljIGFzeW5jIGdldFdhaXRJbml0KCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdHJldHVybiB0aGlzLndhaXRJbml0O1xuXHR9XG5cblx0cHVibGljIGFzeW5jIGluaXQoKTogUHJvbWlzZTx2b2lkPiB7XG5cdFx0bGV0IHJlc29sdmVGdW5jdGlvbiE6ICgpID0+IHZvaWQ7XG5cdFx0c3VwZXIuaW5pdCgpO1xuXHRcdHRoaXMud2FpdEluaXQgPSBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSkgPT4ge1xuXHRcdFx0cmVzb2x2ZUZ1bmN0aW9uID0gcmVzb2x2ZTtcblx0XHR9KTtcblx0XHRjb25zdCBwZXJzb25hbGl6YXRpb25TZXJ2aWNlID0gKGF3YWl0IChzYXAudXNoZWxsLkNvbnRhaW5lciBhcyBTaGVsbENvbnRhaW5lcikuZ2V0U2VydmljZUFzeW5jKFxuXHRcdFx0XCJQZXJzb25hbGl6YXRpb25cIlxuXHRcdCkpIGFzIHVua25vd24gYXMgQ3VzdG9tU2NvcGVDb25zdGFudHM7XG5cdFx0dGhpcy5tb2RlbCA9IG5ldyBKU09OTW9kZWwoe30pO1xuXHRcdHRoaXMucGVyc29uYWxpemF0aW9uU2VydmljZSA9IHBlcnNvbmFsaXphdGlvblNlcnZpY2U7XG5cdFx0dGhpcy5zY29wZSA9IHtcblx0XHRcdGNsaWVudFN0b3JhZ2VBbGxvd2VkOiBmYWxzZSxcblx0XHRcdGtleUNhdGVnb3J5OiAocGVyc29uYWxpemF0aW9uU2VydmljZS5jb25zdGFudHMgYXMgUGVyc29uYWxpemF0aW9uQ29uc3RhbnRzKS5rZXlDYXRlZ29yeS5GSVhFRF9LRVksXG5cdFx0XHR2YWxpZGl0eTogXCJJbmZpbml0eVwiLFxuXHRcdFx0d3JpdGVGcmVxdWVuY3k6IChwZXJzb25hbGl6YXRpb25TZXJ2aWNlLmNvbnN0YW50cyBhcyBQZXJzb25hbGl6YXRpb25Db25zdGFudHMpLndyaXRlRnJlcXVlbmN5LkxPV1xuXHRcdH07XG5cdFx0dGhpcy5wZXJzb25hbGl6YXRpb25JZCA9IHtcblx0XHRcdGNvbnRhaW5lcjogXCJzYXAudXNoZWxsLm9wdGltaXN0aWNyZXEucGVyc29uYWxpemF0aW9uXCIsXG5cdFx0XHRpdGVtOiBcImRhdGFcIlxuXHRcdH07XG5cdFx0Y29uc3QgcGVyaW9kID0gYXdhaXQgdGhpcy5fZ2V0UGVyc29uYWxpemVkUGVyaW9kKHBlcnNvbmFsaXphdGlvblNlcnZpY2UpO1xuXHRcdC8vIFJlbW92ZSBvbGQgbWFuYWdlY2FjaGUgZW50cmllcyB2aWEgY2FjaGUgbWFuYWdlclxuXHRcdGNvbnN0IHRpbWVTdGFtcCA9IG5ldyBEYXRlKERhdGUubm93KCkgLSBwZXJpb2QgKiA4NjQwMDAwMCk7XG5cdFx0Y29uc3QgZmlsdGVyczogeyBvbGRlclRoYW46IERhdGU7IHByZWZpeDogc3RyaW5nIH0gPSB7XG5cdFx0XHRvbGRlclRoYW46IHRpbWVTdGFtcCxcblx0XHRcdHByZWZpeDogXCJzYXAudWkubW9kZWwub2RhdGEudjQubWFuYWdlY2FjaGVcIlxuXHRcdH07XG5cdFx0Q2FjaGVNYW5hZ2VyLmRlbFdpdGhGaWx0ZXJzKGZpbHRlcnMpO1xuXHRcdC8vIEVuaGFuY2UgdXNlciBhY3Rpdml0aWVzIHNlY3Rpb24gd2l0aCBvcHRpbWlzdGljIGJhdGNoIHNldHRpbmdzXG5cdFx0YXdhaXQgdGhpcy5fY3JlYXRlQWN0aXZpdGllc1NlY3Rpb24oKTtcblx0XHRyZXNvbHZlRnVuY3Rpb24oKTtcblx0fVxuXG5cdGFzeW5jIF9nZXRQZXJzb25hbGl6ZWRQZXJpb2QocGVyc29uYWxpemF0aW9uU2VydmljZTogQ3VzdG9tU2NvcGVDb25zdGFudHMpOiBQcm9taXNlPG51bWJlcj4ge1xuXHRcdGxldCBwZXJpb2Q6IG51bWJlcjtcblxuXHRcdHJldHVybiBuZXcgUHJvbWlzZSgocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG5cdFx0XHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWZsb2F0aW5nLXByb21pc2VzXG5cdFx0XHRwZXJzb25hbGl6YXRpb25TZXJ2aWNlXG5cdFx0XHRcdC5nZXRQZXJzb25hbGl6ZXIodGhpcy5wZXJzb25hbGl6YXRpb25JZCwgdGhpcy5zY29wZSlcblx0XHRcdFx0LmdldFBlcnNEYXRhKClcblx0XHRcdFx0Ly8gVXNlIHBlcnNvbmFsaXphdGlvbiBzZXJ2aWNlIHRvIGdldC9zZXQgcGVyaW9kXG5cdFx0XHRcdC5kb25lKChwZXJzb25hbGl6YXRpb25Db250YWluZXI6IHsgcGVyaW9kOiBudW1iZXIgfSB8IHVuZGVmaW5lZCkgPT4ge1xuXHRcdFx0XHRcdHBlcmlvZCA9IHBlcnNvbmFsaXphdGlvbkNvbnRhaW5lcj8ucGVyaW9kID8/IDMwO1xuXHRcdFx0XHRcdHRoaXMubW9kZWwuc2V0UHJvcGVydHkoXCIvcGVyaW9kXCIsIHBlcmlvZCk7XG5cdFx0XHRcdFx0dGhpcy5tb2RlbC5zZXRQcm9wZXJ0eShcIi9vbGRwZXJpb2RcIiwgcGVyaW9kKTtcblx0XHRcdFx0XHRyZXNvbHZlKHBlcmlvZCk7XG5cdFx0XHRcdH0pXG5cdFx0XHRcdC5mYWlsKGZ1bmN0aW9uIChlcnJvcjogdW5rbm93bikge1xuXHRcdFx0XHRcdHJlamVjdChlcnJvciBhcyBzdHJpbmcpO1xuXHRcdFx0XHR9KTtcblx0XHR9KTtcblx0fVxuXG5cdGFzeW5jIF9zZXRQZXJzb25hbGl6ZWRQZXJpb2QoXG5cdFx0cGVyc29uYWxpemF0aW9uU2VydmljZTogQ3VzdG9tU2NvcGVDb25zdGFudHMsXG5cdFx0cGVyaW9kOiB7IHBlcmlvZDogbnVtYmVyIH1cblx0KTogUHJvbWlzZTxKUXVlcnlEZWZlcnJlZDxvYmplY3Q+PiB7XG5cdFx0Y29uc3QgcGVyc29uYWxpemVyID0gcGVyc29uYWxpemF0aW9uU2VydmljZS5nZXRQZXJzb25hbGl6ZXIodGhpcy5wZXJzb25hbGl6YXRpb25JZCwgdGhpcy5zY29wZSk7XG5cdFx0cmV0dXJuIHBlcnNvbmFsaXplci5zZXRQZXJzRGF0YShwZXJpb2QpO1xuXHR9XG5cblx0YXN5bmMgX2NyZWF0ZUFjdGl2aXRpZXNTZWN0aW9uKCk6IFByb21pc2U8dm9pZD4ge1xuXHRcdGNvbnN0IGkxOG4gPSBuZXcgaTE4bk1vZGVsKHsgYnVuZGxlTmFtZTogXCJzYXAuZmUucGx1Z2lucy5tYW5hZ2VjYWNoZS5pMThuLm1lc3NhZ2VidW5kbGVcIiB9KTtcblx0XHRjb25zdCB2aWV3VHlwZSA9IFZpZXdUeXBlLlhNTDtcblx0XHRjb25zdCB2aWV3U2V0dGluZ3MgPSB7XG5cdFx0XHR0eXBlOiB2aWV3VHlwZSxcblx0XHRcdGlkOiBcInJlcXVlc3RDYWNoZVZpZXdcIixcblx0XHRcdHZpZXdOYW1lOiBcInNhcC5mZS5wbHVnaW5zLm1hbmFnZWNhY2hlLnZpZXcuc2V0dGluZ3NcIlxuXHRcdH07XG5cdFx0YXdhaXQgKHNhcC51c2hlbGwuQ29udGFpbmVyIGFzIFNoZWxsQ29udGFpbmVyKS5nZXRSZW5kZXJlcigpLmFkZFVzZXJQcmVmZXJlbmNlc0dyb3VwZWRFbnRyeSh7XG5cdFx0XHR0aXRsZTogKGkxOG4uZ2V0UmVzb3VyY2VCdW5kbGUoKSBhcyBSZXNvdXJjZUJ1bmRsZSkuZ2V0VGV4dChcIlRfR1JPVVBcIiksXG5cdFx0XHRpY29uOiBcInNhcC1pY29uOi8vbGFwdG9wXCIsXG5cdFx0XHRlbnRyeUhlbHBJZDogXCJ1c2VyQWN0aXZpdGllc0VudHJ5XCIsXG5cdFx0XHRncm91cGluZ0lkOiBcInVzZXJBY3Rpdml0aWVzXCIsXG5cdFx0XHRncm91cGluZ1RhYlRpdGxlOiAoaTE4bi5nZXRSZXNvdXJjZUJ1bmRsZSgpIGFzIFJlc291cmNlQnVuZGxlKS5nZXRUZXh0KFwidGl0bGVcIiksXG5cdFx0XHRncm91cGluZ1RhYkhlbHBJZDogXCJyZXF1ZXN0Q2FjaGVVc2VyQWN0aXZpdGllcy1oZWxwSWRcIixcblx0XHRcdHZhbHVlOiBhc3luYyBmdW5jdGlvbiAoKSB7XG5cdFx0XHRcdHJldHVybiBQcm9taXNlLnJlc29sdmUoXCJSZXF1ZXN0IENhY2hlXCIpOyAvL2NoZWNrXG5cdFx0XHR9LFxuXHRcdFx0Y29udGVudDogYXN5bmMgKCkgPT4ge1xuXHRcdFx0XHRyZXR1cm4gVmlldy5jcmVhdGUodmlld1NldHRpbmdzKS50aGVuKCh2aWV3OiBWaWV3KSA9PiB7XG5cdFx0XHRcdFx0dmlldy5zZXRNb2RlbCh0aGlzLm1vZGVsKTtcblx0XHRcdFx0XHR2aWV3LnNldE1vZGVsKGkxOG4sIFwiaTE4blwiKTtcblx0XHRcdFx0XHR0aGlzLnZpZXdJbnN0YW5jZSA9IHZpZXc7XG5cdFx0XHRcdFx0cmV0dXJuIHRoaXMudmlld0luc3RhbmNlO1xuXHRcdFx0XHR9KTtcblx0XHRcdH0sXG5cdFx0XHRvblNhdmU6IGFzeW5jICgpID0+IHtcblx0XHRcdFx0Y29uc3QgcGVyaW9kID0gdGhpcy5tb2RlbC5nZXRQcm9wZXJ0eShcIi9wZXJpb2RcIikgYXMgdW5rbm93biBhcyBudW1iZXI7XG5cdFx0XHRcdGF3YWl0IHRoaXMuX3NldFBlcnNvbmFsaXplZFBlcmlvZCh0aGlzLnBlcnNvbmFsaXphdGlvblNlcnZpY2UsIHsgcGVyaW9kOiBwZXJpb2QgfSk7XG5cdFx0XHRcdHJldHVybiAodGhpcy52aWV3SW5zdGFuY2UuZ2V0Q29udHJvbGxlcigpIGFzIFJlcXVlc3RTZXR0aW5nc0NvbnRyb2xsZXIpLm9uU2F2ZShwZXJpb2QpO1xuXHRcdFx0fSxcblx0XHRcdG9uQ2FuY2VsOiAoKSA9PiB7XG5cdFx0XHRcdHJldHVybiAodGhpcy52aWV3SW5zdGFuY2UuZ2V0Q29udHJvbGxlcigpIGFzIFJlcXVlc3RTZXR0aW5nc0NvbnRyb2xsZXIpLm9uQ2FuY2VsKCk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cbn1cbmV4cG9ydCBkZWZhdWx0IFJlcXVlc3RTZXR0aW5nc0NvbXBvbmVudDtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBO0FBQUE7QUFBQTs7Ozs7O01Bb0VNQSx3QkFBd0I7SUFBQTtJQUFBO01BQUE7SUFBQTtJQUFBO0lBQUEsT0FhaEJDLFdBQVcsR0FBeEIsNkJBQTBDO01BQ3pDLE9BQU8sSUFBSSxDQUFDQyxRQUFRO0lBQ3JCLENBQUM7SUFBQSxPQUVZQyxJQUFJLEdBQWpCLHNCQUFtQztNQUNsQyxJQUFJQyxlQUE0QjtNQUNoQyx1QkFBTUQsSUFBSTtNQUNWLElBQUksQ0FBQ0QsUUFBUSxHQUFHLElBQUlHLE9BQU8sQ0FBUUMsT0FBTyxJQUFLO1FBQzlDRixlQUFlLEdBQUdFLE9BQU87TUFDMUIsQ0FBQyxDQUFDO01BQ0YsTUFBTUMsc0JBQXNCLEdBQUksTUFBT0MsR0FBRyxDQUFDQyxNQUFNLENBQUNDLFNBQVMsQ0FBb0JDLGVBQWUsQ0FDN0YsaUJBQWlCLENBQ21CO01BQ3JDLElBQUksQ0FBQ0MsS0FBSyxHQUFHLElBQUlDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztNQUM5QixJQUFJLENBQUNOLHNCQUFzQixHQUFHQSxzQkFBc0I7TUFDcEQsSUFBSSxDQUFDTyxLQUFLLEdBQUc7UUFDWkMsb0JBQW9CLEVBQUUsS0FBSztRQUMzQkMsV0FBVyxFQUFHVCxzQkFBc0IsQ0FBQ1UsU0FBUyxDQUE4QkQs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
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import type ResourceBundle from "sap/base/i18n/ResourceBundle";
|
|
2
|
+
import UIComponent from "sap/ui/core/UIComponent";
|
|
3
|
+
import CacheManager from "sap/ui/core/cache/CacheManager";
|
|
4
|
+
import View from "sap/ui/core/mvc/View";
|
|
5
|
+
import ViewType from "sap/ui/core/mvc/ViewType";
|
|
6
|
+
import JSONModel from "sap/ui/model/json/JSONModel";
|
|
7
|
+
import i18nModel from "sap/ui/model/resource/ResourceModel";
|
|
8
|
+
import type RequestSettingsController from "./controller/settings.controller";
|
|
9
|
+
|
|
10
|
+
export type Scope = {
|
|
11
|
+
validity: string;
|
|
12
|
+
keyCategory: string;
|
|
13
|
+
writeFrequency: string;
|
|
14
|
+
clientStorageAllowed: boolean;
|
|
15
|
+
};
|
|
16
|
+
export type PersonalizationId = {
|
|
17
|
+
container: string;
|
|
18
|
+
item: string;
|
|
19
|
+
};
|
|
20
|
+
export type CustomScopeConstants = {
|
|
21
|
+
constants: {
|
|
22
|
+
keyCategory: {
|
|
23
|
+
FIXED_KEY: string;
|
|
24
|
+
GENERATED_KEY: string;
|
|
25
|
+
};
|
|
26
|
+
writeFrequency: {
|
|
27
|
+
HIGH: string;
|
|
28
|
+
LOW: string;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
getPersonalizer: (
|
|
32
|
+
personalizationId: PersonalizationId,
|
|
33
|
+
scope: Scope
|
|
34
|
+
) => {
|
|
35
|
+
getPersData: () => JQueryDeferred<{ period: number }>;
|
|
36
|
+
setPersData: (arg: object) => JQueryDeferred<object>;
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
export type PersonalizationConstants = {
|
|
41
|
+
keyCategory: {
|
|
42
|
+
FIXED_KEY: string;
|
|
43
|
+
GENERATED_KEY: string;
|
|
44
|
+
};
|
|
45
|
+
writeFrequency: {
|
|
46
|
+
HIGH: string;
|
|
47
|
+
LOW: string;
|
|
48
|
+
};
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export type ShellContainer = {
|
|
52
|
+
getServiceAsync(arg: string): Promise<CustomScopeConstants>;
|
|
53
|
+
getRenderer(): {
|
|
54
|
+
addUserPreferencesGroupedEntry(arg: {
|
|
55
|
+
onSave: () => Promise<void>;
|
|
56
|
+
groupingId: string;
|
|
57
|
+
onCancel: () => void;
|
|
58
|
+
icon: string;
|
|
59
|
+
groupingTabHelpId: string;
|
|
60
|
+
title: string;
|
|
61
|
+
entryHelpId: string;
|
|
62
|
+
groupingTabTitle: string;
|
|
63
|
+
value: () => Promise<Awaited<string>>;
|
|
64
|
+
content: () => Promise<View>;
|
|
65
|
+
}): Promise<void>;
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
class RequestSettingsComponent extends UIComponent {
|
|
70
|
+
viewInstance!: View;
|
|
71
|
+
|
|
72
|
+
personalizationService!: CustomScopeConstants;
|
|
73
|
+
|
|
74
|
+
model!: JSONModel;
|
|
75
|
+
|
|
76
|
+
personalizationId!: PersonalizationId;
|
|
77
|
+
|
|
78
|
+
scope!: Scope;
|
|
79
|
+
|
|
80
|
+
private waitInit!: Promise<void>;
|
|
81
|
+
|
|
82
|
+
public async getWaitInit(): Promise<void> {
|
|
83
|
+
return this.waitInit;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
public async init(): Promise<void> {
|
|
87
|
+
let resolveFunction!: () => void;
|
|
88
|
+
super.init();
|
|
89
|
+
this.waitInit = new Promise<void>((resolve) => {
|
|
90
|
+
resolveFunction = resolve;
|
|
91
|
+
});
|
|
92
|
+
const personalizationService = (await (sap.ushell.Container as ShellContainer).getServiceAsync(
|
|
93
|
+
"Personalization"
|
|
94
|
+
)) as unknown as CustomScopeConstants;
|
|
95
|
+
this.model = new JSONModel({});
|
|
96
|
+
this.personalizationService = personalizationService;
|
|
97
|
+
this.scope = {
|
|
98
|
+
clientStorageAllowed: false,
|
|
99
|
+
keyCategory: (personalizationService.constants as PersonalizationConstants).keyCategory.FIXED_KEY,
|
|
100
|
+
validity: "Infinity",
|
|
101
|
+
writeFrequency: (personalizationService.constants as PersonalizationConstants).writeFrequency.LOW
|
|
102
|
+
};
|
|
103
|
+
this.personalizationId = {
|
|
104
|
+
container: "sap.ushell.optimisticreq.personalization",
|
|
105
|
+
item: "data"
|
|
106
|
+
};
|
|
107
|
+
const period = await this._getPersonalizedPeriod(personalizationService);
|
|
108
|
+
// Remove old managecache entries via cache manager
|
|
109
|
+
const timeStamp = new Date(Date.now() - period * 86400000);
|
|
110
|
+
const filters: { olderThan: Date; prefix: string } = {
|
|
111
|
+
olderThan: timeStamp,
|
|
112
|
+
prefix: "sap.ui.model.odata.v4.managecache"
|
|
113
|
+
};
|
|
114
|
+
CacheManager.delWithFilters(filters);
|
|
115
|
+
// Enhance user activities section with optimistic batch settings
|
|
116
|
+
await this._createActivitiesSection();
|
|
117
|
+
resolveFunction();
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
async _getPersonalizedPeriod(personalizationService: CustomScopeConstants): Promise<number> {
|
|
121
|
+
let period: number;
|
|
122
|
+
|
|
123
|
+
return new Promise((resolve, reject) => {
|
|
124
|
+
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
125
|
+
personalizationService
|
|
126
|
+
.getPersonalizer(this.personalizationId, this.scope)
|
|
127
|
+
.getPersData()
|
|
128
|
+
// Use personalization service to get/set period
|
|
129
|
+
.done((personalizationContainer: { period: number } | undefined) => {
|
|
130
|
+
period = personalizationContainer?.period ?? 30;
|
|
131
|
+
this.model.setProperty("/period", period);
|
|
132
|
+
this.model.setProperty("/oldperiod", period);
|
|
133
|
+
resolve(period);
|
|
134
|
+
})
|
|
135
|
+
.fail(function (error: unknown) {
|
|
136
|
+
reject(error as string);
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
async _setPersonalizedPeriod(
|
|
142
|
+
personalizationService: CustomScopeConstants,
|
|
143
|
+
period: { period: number }
|
|
144
|
+
): Promise<JQueryDeferred<object>> {
|
|
145
|
+
const personalizer = personalizationService.getPersonalizer(this.personalizationId, this.scope);
|
|
146
|
+
return personalizer.setPersData(period);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
async _createActivitiesSection(): Promise<void> {
|
|
150
|
+
const i18n = new i18nModel({ bundleName: "sap.fe.plugins.managecache.i18n.messagebundle" });
|
|
151
|
+
const viewType = ViewType.XML;
|
|
152
|
+
const viewSettings = {
|
|
153
|
+
type: viewType,
|
|
154
|
+
id: "requestCacheView",
|
|
155
|
+
viewName: "sap.fe.plugins.managecache.view.settings"
|
|
156
|
+
};
|
|
157
|
+
await (sap.ushell.Container as ShellContainer).getRenderer().addUserPreferencesGroupedEntry({
|
|
158
|
+
title: (i18n.getResourceBundle() as ResourceBundle).getText("T_GROUP"),
|
|
159
|
+
icon: "sap-icon://laptop",
|
|
160
|
+
entryHelpId: "userActivitiesEntry",
|
|
161
|
+
groupingId: "userActivities",
|
|
162
|
+
groupingTabTitle: (i18n.getResourceBundle() as ResourceBundle).getText("title"),
|
|
163
|
+
groupingTabHelpId: "requestCacheUserActivities-helpId",
|
|
164
|
+
value: async function () {
|
|
165
|
+
return Promise.resolve("Request Cache"); //check
|
|
166
|
+
},
|
|
167
|
+
content: async () => {
|
|
168
|
+
return View.create(viewSettings).then((view: View) => {
|
|
169
|
+
view.setModel(this.model);
|
|
170
|
+
view.setModel(i18n, "i18n");
|
|
171
|
+
this.viewInstance = view;
|
|
172
|
+
return this.viewInstance;
|
|
173
|
+
});
|
|
174
|
+
},
|
|
175
|
+
onSave: async () => {
|
|
176
|
+
const period = this.model.getProperty("/period") as unknown as number;
|
|
177
|
+
await this._setPersonalizedPeriod(this.personalizationService, { period: period });
|
|
178
|
+
return (this.viewInstance.getController() as RequestSettingsController).onSave(period);
|
|
179
|
+
},
|
|
180
|
+
onCancel: () => {
|
|
181
|
+
return (this.viewInstance.getController() as RequestSettingsController).onCancel();
|
|
182
|
+
}
|
|
183
|
+
});
|
|
184
|
+
}
|
|
185
|
+
}
|
|
186
|
+
export default RequestSettingsComponent;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* SAP UI development toolkit for HTML5 (SAPUI5)
|
|
3
|
+
* (c) Copyright 2009-2024 SAP SE. All rights reserved
|
|
4
|
+
*/
|
|
5
|
+
sap.ui.define(["sap/m/MessageToast", "sap/ui/core/cache/CacheManager", "sap/ui/core/mvc/Controller", "sap/ui/model/resource/ResourceModel"], function (MessageToast, CacheManager, Controller, i18nModel) {
|
|
6
|
+
"use strict";
|
|
7
|
+
|
|
8
|
+
function _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; _setPrototypeOf(subClass, superClass); }
|
|
9
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
10
|
+
let RequestSettingsController = /*#__PURE__*/function (_Controller) {
|
|
11
|
+
_inheritsLoose(RequestSettingsController, _Controller);
|
|
12
|
+
function RequestSettingsController() {
|
|
13
|
+
return _Controller.apply(this, arguments) || this;
|
|
14
|
+
}
|
|
15
|
+
var _proto = RequestSettingsController.prototype;
|
|
16
|
+
_proto.onInit = function onInit() {
|
|
17
|
+
this.viewInstance = this.getView();
|
|
18
|
+
};
|
|
19
|
+
_proto.onSave = function onSave(period) {
|
|
20
|
+
var _this$viewInstance;
|
|
21
|
+
const internalModel = (_this$viewInstance = this.viewInstance) === null || _this$viewInstance === void 0 ? void 0 : _this$viewInstance.getModel();
|
|
22
|
+
internalModel.setProperty("/oldperiod", period);
|
|
23
|
+
};
|
|
24
|
+
_proto.onCancel = function onCancel() {
|
|
25
|
+
var _this$viewInstance2;
|
|
26
|
+
const internalModel = (_this$viewInstance2 = this.viewInstance) === null || _this$viewInstance2 === void 0 ? void 0 : _this$viewInstance2.getModel();
|
|
27
|
+
const oldPeriod = internalModel.getProperty("/oldperiod");
|
|
28
|
+
if (oldPeriod) {
|
|
29
|
+
internalModel.setProperty("/period", oldPeriod);
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
_proto.onChange = function onChange(event) {
|
|
33
|
+
var _this$viewInstance3;
|
|
34
|
+
const internalModel = (_this$viewInstance3 = this.viewInstance) === null || _this$viewInstance3 === void 0 ? void 0 : _this$viewInstance3.getModel();
|
|
35
|
+
const period = event.getParameter("value");
|
|
36
|
+
internalModel.setProperty("/period", period);
|
|
37
|
+
};
|
|
38
|
+
_proto.onCleanup = function onCleanup() {
|
|
39
|
+
// Remove all optimistic batch entries via cache manager
|
|
40
|
+
CacheManager.delWithFilters();
|
|
41
|
+
const i18n = new i18nModel({
|
|
42
|
+
bundleName: "sap.fe.plugins.managecache.i18n.messagebundle"
|
|
43
|
+
});
|
|
44
|
+
const successToast = i18n.getResourceBundle().getText("M_CLEANUP_SUCCESS");
|
|
45
|
+
MessageToast.show(successToast);
|
|
46
|
+
};
|
|
47
|
+
return RequestSettingsController;
|
|
48
|
+
}(Controller);
|
|
49
|
+
return RequestSettingsController;
|
|
50
|
+
}, false);
|
|
51
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZXF1ZXN0U2V0dGluZ3NDb250cm9sbGVyIiwib25Jbml0Iiwidmlld0luc3RhbmNlIiwiZ2V0VmlldyIsIm9uU2F2ZSIsInBlcmlvZCIsImludGVybmFsTW9kZWwiLCJnZXRNb2RlbCIsInNldFByb3BlcnR5Iiwib25DYW5jZWwiLCJvbGRQZXJpb2QiLCJnZXRQcm9wZXJ0eSIsIm9uQ2hhbmdlIiwiZXZlbnQiLCJnZXRQYXJhbWV0ZXIiLCJvbkNsZWFudXAiLCJDYWNoZU1hbmFnZXIiLCJkZWxXaXRoRmlsdGVycyIsImkxOG4iLCJpMThuTW9kZWwiLCJidW5kbGVOYW1lIiwic3VjY2Vzc1RvYXN0IiwiZ2V0UmVzb3VyY2VCdW5kbGUiLCJnZXRUZXh0IiwiTWVzc2FnZVRvYXN0Iiwic2hvdyIsIkNvbnRyb2xsZXIiXSwic291cmNlUm9vdCI6Ii4iLCJzb3VyY2VzIjpbInNldHRpbmdzLmNvbnRyb2xsZXIudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgUmVzb3VyY2VCdW5kbGUgZnJvbSBcInNhcC9iYXNlL2kxOG4vUmVzb3VyY2VCdW5kbGVcIjtcbmltcG9ydCBNZXNzYWdlVG9hc3QgZnJvbSBcInNhcC9tL01lc3NhZ2VUb2FzdFwiO1xuaW1wb3J0IHR5cGUgRXZlbnQgZnJvbSBcInNhcC91aS9iYXNlL0V2ZW50XCI7XG5pbXBvcnQgQ2FjaGVNYW5hZ2VyIGZyb20gXCJzYXAvdWkvY29yZS9jYWNoZS9DYWNoZU1hbmFnZXJcIjtcbmltcG9ydCBDb250cm9sbGVyIGZyb20gXCJzYXAvdWkvY29yZS9tdmMvQ29udHJvbGxlclwiO1xuaW1wb3J0IHR5cGUgVmlldyBmcm9tIFwic2FwL3VpL2NvcmUvbXZjL1ZpZXdcIjtcbmltcG9ydCB0eXBlIEpTT05Nb2RlbCBmcm9tIFwic2FwL3VpL21vZGVsL2pzb24vSlNPTk1vZGVsXCI7XG5pbXBvcnQgaTE4bk1vZGVsIGZyb20gXCJzYXAvdWkvbW9kZWwvcmVzb3VyY2UvUmVzb3VyY2VNb2RlbFwiO1xuXG5jbGFzcyBSZXF1ZXN0U2V0dGluZ3NDb250cm9sbGVyIGV4dGVuZHMgQ29udHJvbGxlciB7XG5cdHZpZXdJbnN0YW5jZSE6IFZpZXcgfCB1bmRlZmluZWQ7XG5cblx0b25Jbml0KCk6IHZvaWQge1xuXHRcdHRoaXMudmlld0luc3RhbmNlID0gdGhpcy5nZXRWaWV3KCk7XG5cdH1cblxuXHRvblNhdmUocGVyaW9kOiBudW1iZXIpOiB2b2lkIHtcblx0XHRjb25zdCBpbnRlcm5hbE1vZGVsID0gdGhpcy52aWV3SW5zdGFuY2U/LmdldE1vZGVsKCkgYXMgSlNPTk1vZGVsO1xuXHRcdGludGVybmFsTW9kZWwuc2V0UHJvcGVydHkoXCIvb2xkcGVyaW9kXCIsIHBlcmlvZCk7XG5cdH1cblxuXHRvbkNhbmNlbCgpOiB2b2lkIHtcblx0XHRjb25zdCBpbnRlcm5hbE1vZGVsID0gdGhpcy52aWV3SW5zdGFuY2U/LmdldE1vZGVsKCkgYXMgSlNPTk1vZGVsO1xuXHRcdGNvbnN0IG9sZFBlcmlvZCA9IGludGVybmFsTW9kZWwuZ2V0UHJvcGVydHkoXCIvb2xkcGVyaW9kXCIpIGFzIG51bWJlcjtcblx0XHRpZiAob2xkUGVyaW9kKSB7XG5cdFx0XHRpbnRlcm5hbE1vZGVsLnNldFByb3BlcnR5KFwiL3BlcmlvZFwiLCBvbGRQZXJpb2QpO1xuXHRcdH1cblx0fVxuXG5cdG9uQ2hhbmdlKGV2ZW50OiBFdmVudDx7IHZhbHVlOiBzdHJpbmcgfT4pOiB2b2lkIHtcblx0XHRjb25zdCBpbnRlcm5hbE1vZGVsID0gdGhpcy52aWV3SW5zdGFuY2U/LmdldE1vZGVsKCkgYXMgSlNPTk1vZGVsO1xuXHRcdGNvbnN0IHBlcmlvZCA9IGV2ZW50LmdldFBhcmFtZXRlcihcInZhbHVlXCIpO1xuXHRcdGludGVybmFsTW9kZWwuc2V0UHJvcGVydHkoXCIvcGVyaW9kXCIsIHBlcmlvZCk7XG5cdH1cblxuXHRvbkNsZWFudXAoKTogdm9pZCB7XG5cdFx0Ly8gUmVtb3ZlIGFsbCBvcHRpbWlzdGljIGJhdGNoIGVudHJpZXMgdmlhIGNhY2hlIG1hbmFnZXJcblx0XHRDYWNoZU1hbmFnZXIuZGVsV2l0aEZpbHRlcnMoKTtcblx0XHRjb25zdCBpMThuID0gbmV3IGkxOG5Nb2RlbCh7IGJ1bmRsZU5hbWU6IFwic2FwLmZlLnBsdWdpbnMubWFuYWdlY2FjaGUuaTE4bi5tZXNzYWdlYnVuZGxlXCIgfSk7XG5cdFx0Y29uc3Qgc3VjY2Vzc1RvYXN0ID0gKGkxOG4uZ2V0UmVzb3VyY2VCdW5kbGUoKSBhcyBSZXNvdXJjZUJ1bmRsZSkuZ2V0VGV4dChcIk1fQ0xFQU5VUF9TVUNDRVNTXCIpO1xuXHRcdE1lc3NhZ2VUb2FzdC5zaG93KHN1Y2Nlc3NUb2FzdCk7XG5cdH1cbn1cbmV4cG9ydCBkZWZhdWx0IFJlcXVlc3RTZXR0aW5nc0NvbnRyb2xsZXI7XG4iXSwibWFwcGluZ3MiOiI7QUFBQTtBQUFBO0FBQUE7Ozs7OztNQVNNQSx5QkFBeUI7SUFBQTtJQUFBO01BQUE7SUFBQTtJQUFBO0lBQUEsT0FHOUJDLE1BQU0sR0FBTixrQkFBZTtNQUNkLElBQUksQ0FBQ0MsWUFBWSxHQUFHLElBQUksQ0FBQ0MsT0FBTyxFQUFFO0lBQ25DLENBQUM7SUFBQSxPQUVEQyxNQUFNLEdBQU4sZ0JBQU9DLE1BQWMsRUFBUTtNQUFBO01BQzVCLE1BQU1DLGFBQWEseUJBQUcsSUFBSSxDQUFDSixZQUFZLHVEQUFqQixtQkFBbUJLLFFBQVEsRUFBZTtNQUNoRUQsYUFBYSxDQUFDRSxXQUFXLENBQUMsWUFBWSxFQUFFSCxNQUFNLENBQUM7SUFDaEQsQ0FBQztJQUFBLE9BRURJLFFBQVEsR0FBUixvQkFBaUI7TUFBQTtNQUNoQixNQUFNSCxhQUFhLDBCQUFHLElBQUksQ0FBQ0osWUFBWSx3REFBakIsb0JBQW1CSyxRQUFRLEVBQWU7TUFDaEUsTUFBTUcsU0FBUyxHQUFHSixhQUFhLENBQUNLLFdBQVcsQ0FBQyxZQUFZLENBQVc7TUFDbkUsSUFBSUQsU0FBUyxFQUFFO1FBQ2RKLGFBQWEsQ0FBQ0UsV0FBVyxDQUFDLFNBQVMsRUFBRUUsU0FBUyxDQUFDO01BQ2hEO0lBQ0QsQ0FBQztJQUFBLE9BRURFLFFBQVEsR0FBUixrQkFBU0MsS0FBK0IsRUFBUTtNQUFBO01BQy9DLE1BQU1QLGFBQWEsMEJBQUcsSUFBSSxDQUFDSixZQUFZLHdEQUFqQixvQkFBbUJLLFFBQVEsRUFBZTtNQUNoRSxNQUFNRixNQUFNLEdBQUdRLEtBQUssQ0FBQ0MsWUFBWSxDQUFDLE9BQU8sQ0FBQztNQUMxQ1IsYUFBYSxDQUFDRSxXQUFXLENBQUMsU0FBUyxFQUFFSCxNQUFNLENBQUM7SUFDN0MsQ0FBQztJQUFBLE9BRURVLFNBQVMsR0FBVCxxQkFBa0I7TUFDakI7TUFDQUMsWUFBWSxDQUFDQyxjQUFjLEVBQUU7TUFDN0IsTUFBTUMsSUFBSSxHQUFHLElBQUlDLFNBQVMsQ0FBQztRQUFFQyxVQUFVLEVBQUU7TUFBZ0QsQ0FBQyxDQUFDO01BQzNGLE1BQU1DLFlBQVksR0FBSUgsSUFBSSxDQUFDSSxpQkFBaUIsRUFBRSxDQUFvQkMsT0FBTyxDQUFDLG1CQUFtQixDQUFDO01BQzlGQyxZQUFZLENBQUNDLElBQUksQ0FBQ0osWUFBWSxDQUFDO0lBQ2hDLENBQUM7SUFBQTtFQUFBLEVBaENzQ0ssVUFBVTtFQUFBLE9Ba0NuQzFCLHlCQUF5QjtBQUFBIn0=
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type ResourceBundle from "sap/base/i18n/ResourceBundle";
|
|
2
|
+
import MessageToast from "sap/m/MessageToast";
|
|
3
|
+
import type Event from "sap/ui/base/Event";
|
|
4
|
+
import CacheManager from "sap/ui/core/cache/CacheManager";
|
|
5
|
+
import Controller from "sap/ui/core/mvc/Controller";
|
|
6
|
+
import type View from "sap/ui/core/mvc/View";
|
|
7
|
+
import type JSONModel from "sap/ui/model/json/JSONModel";
|
|
8
|
+
import i18nModel from "sap/ui/model/resource/ResourceModel";
|
|
9
|
+
|
|
10
|
+
class RequestSettingsController extends Controller {
|
|
11
|
+
viewInstance!: View | undefined;
|
|
12
|
+
|
|
13
|
+
onInit(): void {
|
|
14
|
+
this.viewInstance = this.getView();
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
onSave(period: number): void {
|
|
18
|
+
const internalModel = this.viewInstance?.getModel() as JSONModel;
|
|
19
|
+
internalModel.setProperty("/oldperiod", period);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
onCancel(): void {
|
|
23
|
+
const internalModel = this.viewInstance?.getModel() as JSONModel;
|
|
24
|
+
const oldPeriod = internalModel.getProperty("/oldperiod") as number;
|
|
25
|
+
if (oldPeriod) {
|
|
26
|
+
internalModel.setProperty("/period", oldPeriod);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
onChange(event: Event<{ value: string }>): void {
|
|
31
|
+
const internalModel = this.viewInstance?.getModel() as JSONModel;
|
|
32
|
+
const period = event.getParameter("value");
|
|
33
|
+
internalModel.setProperty("/period", period);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
onCleanup(): void {
|
|
37
|
+
// Remove all optimistic batch entries via cache manager
|
|
38
|
+
CacheManager.delWithFilters();
|
|
39
|
+
const i18n = new i18nModel({ bundleName: "sap.fe.plugins.managecache.i18n.messagebundle" });
|
|
40
|
+
const successToast = (i18n.getResourceBundle() as ResourceBundle).getText("M_CLEANUP_SUCCESS");
|
|
41
|
+
MessageToast.show(successToast);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
export default RequestSettingsController;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# These are the texts for the "User Activities - Request Cache" FLP plugin
|
|
2
|
+
# __ldi.translation.uuid=767a7240-bc38-11ed-a901-0800200c9a66
|
|
3
|
+
# Texts for manifest.json
|
|
4
|
+
# JCI app descriptor contains lower case TITLE
|
|
5
|
+
title=Clear Batch Cache
|
|
6
|
+
# JCI app descriptor contains lower case DESCRIPTION
|
|
7
|
+
description=Request Batch Setting
|
|
8
|
+
# UI Texte for User Activities dialog (fallback)
|
|
9
|
+
T_GROUP=User Activities
|
|
10
|
+
# UI Texte within User Activities dialog
|
|
11
|
+
T_CACHE_INFORMATION_MSG=Define the expiration in days of the batch cache on the browser side\n\
|
|
12
|
+
This cache will be used to optimize the opening of the application\n\
|
|
13
|
+
The expiration should be set between 0 and 360 days\n\
|
|
14
|
+
You can clear it by using the Clear Batch Cache button.
|
|
15
|
+
T_EXPIRY=Expiration:
|
|
16
|
+
T_DAYS=Days
|
|
17
|
+
B_CLEANUP_CACHE=Clear Batch cache
|
|
18
|
+
M_CLEANUP_SUCCESS=Request Cache was cleared successfully
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
title=\u0645\u0633\u062D \u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u062A\u062E\u0632\u064A\u0646 \u0627\u0644\u0645\u0624\u0642\u062A \u0644\u0644\u062F\u064F\u0641\u0639\u0629
|
|
2
|
+
description=\u0625\u0639\u062F\u0627\u062F \u062F\u064F\u0641\u0639\u0629 \u0627\u0644\u0637\u0644\u0628
|
|
3
|
+
T_GROUP=\u0623\u0646\u0634\u0637\u0629 \u0627\u0644\u0645\u0633\u062A\u062E\u062F\u0645
|
|
4
|
+
T_CACHE_INFORMATION_MSG=\u062D\u062F\u062F \u0627\u0646\u062A\u0647\u0627\u0621 \u0627\u0644\u0635\u0644\u0627\u062D\u064A\u0629 \u0628\u0627\u0644\u0623\u064A\u0627\u0645 \u0644\u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u062A\u062E\u0632\u064A\u0646 \u0627\u0644\u0645\u0624\u0642\u062A \u0644\u0644\u062F\u064F\u0641\u0639\u0629 \u0639\u0644\u0649 \u062C\u0627\u0646\u0628 \u0627\u0644\u0645\u0633\u062A\u0639\u0631\u0636\n\u0633\u062A\u064F\u0633\u062A\u062E\u062F\u0645 \u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u062A\u062E\u0632\u064A\u0646 \u0627\u0644\u0645\u0624\u0642\u062A \u0647\u0630\u0647 \u0644\u062A\u062D\u0633\u064A\u0646 \u0641\u062A\u062D \u0627\u0644\u062A\u0637\u0628\u064A\u0642\n\u064A\u062C\u0628 \u062A\u0639\u064A\u064A\u0646 \u0627\u0646\u062A\u0647\u0627\u0621 \u0627\u0644\u0635\u0644\u0627\u062D\u064A\u0629 \u0628\u064A\u0646 0 \u0648360 \u064A\u0648\u0645\u064B\u0627\n\u064A\u0645\u0643\u0646\u0643 \u0645\u0633\u062D\u0647 \u0628\u0627\u0633\u062A\u062E\u062F\u0627\u0645 \u0632\u0631 \u0645\u0633\u062D \u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u062A\u062E\u0632\u064A\u0646 \u0627\u0644\u0645\u0624\u0642\u062A \u0644\u0644\u062F\u064F\u0641\u0639\u0629.
|
|
5
|
+
T_EXPIRY=\u0627\u0646\u062A\u0647\u0627\u0621 \u0627\u0644\u0635\u0644\u0627\u062D\u064A\u0629\:
|
|
6
|
+
T_DAYS=\u0623\u064A\u0627\u0645
|
|
7
|
+
B_CLEANUP_CACHE=\u0645\u0633\u062D \u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u062A\u062E\u0632\u064A\u0646 \u0627\u0644\u0645\u0624\u0642\u062A \u0644\u0644\u062F\u064F\u0641\u0639\u0629
|
|
8
|
+
M_CLEANUP_SUCCESS=\u062A\u0645 \u0645\u0633\u062D \u0630\u0627\u0643\u0631\u0629 \u0627\u0644\u062A\u062E\u0632\u064A\u0646 \u0627\u0644\u0645\u0624\u0642\u062A \u0644\u0644\u0637\u0644\u0628 \u0628\u0646\u062C\u0627\u062D
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
title=\u0418\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043D\u0435 \u043D\u0430 \u043F\u0430\u043A\u0435\u0442\u043D\u0438\u044F \u043A\u0435\u0448
|
|
2
|
+
description=\u041D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0430 \u043D\u0430 \u0437\u0430\u044F\u0432\u043A\u0430 \u043D\u0430 \u043F\u0430\u043A\u0435\u0442
|
|
3
|
+
T_GROUP=\u041F\u043E\u0442\u0440\u0435\u0431\u0438\u0442\u0435\u043B\u0441\u043A\u0438 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044F
|
|
4
|
+
T_CACHE_INFORMATION_MSG=\u041E\u043F\u0440\u0435\u0434\u0435\u043B\u044F\u043D\u0435 \u043D\u0430 \u0441\u0440\u043E\u043A\u0430 \u043D\u0430 \u0432\u0430\u043B\u0438\u0434\u043D\u043E\u0441\u0442 \u0432 \u0434\u043D\u0438 \u043D\u0430 \u043F\u0430\u043A\u0435\u0442\u043D\u0438\u044F \u043A\u0435\u0448 \u043E\u0442 \u0441\u0442\u0440\u0430\u043D\u0430 \u043D\u0430 \u0431\u0440\u0430\u0443\u0437\u044A\u0440\u0430. \u0422\u043E\u0437\u0438 \u043A\u0435\u0448 \u0449\u0435 \u0441\u0435 \u0438\u0437\u043F\u043E\u043B\u0437\u0432\u0430 \u0437\u0430 \u043E\u043F\u0442\u0438\u043C\u0438\u0437\u0438\u0440\u0430\u043D\u0435 \u043D\u0430 \u043E\u0442\u0432\u0430\u0440\u044F\u043D\u0435\u0442\u043E \u043D\u0430 \u043F\u0440\u0438\u043B\u043E\u0436\u0435\u043D\u0438\u0435\u0442\u043E. \u0421\u0440\u043E\u043A\u044A\u0442 \u043D\u0430 \u0432\u0430\u043B\u0438\u0434\u043D\u043E\u0441\u0442 \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0431\u044A\u0434\u0435 \u0437\u0430\u0434\u0430\u0434\u0435\u043D \u043C\u0435\u0436\u0434\u0443 0 \u0438 360 \u0434\u043D\u0438. \u041C\u043E\u0436\u0435 \u0434\u0430 \u0433\u043E \u0438\u0437\u0447\u0438\u0441\u0442\u0438\u0442\u0435, \u043A\u0430\u0442\u043E \u0438\u0437\u043F\u043E\u043B\u0437\u0432\u0430\u0442\u0435 \u0431\u0443\u0442\u043E\u043D\u0430 \u201E\u0418\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043D\u0435 \u043D\u0430 \u043F\u0430\u043A\u0435\u0442\u043D\u0438\u044F \u043A\u0435\u0448\u201C.
|
|
5
|
+
T_EXPIRY=\u0421\u0440\u043E\u043A \u043D\u0430 \u0432\u0430\u043B\u0438\u0434\u043D\u043E\u0441\u0442\:
|
|
6
|
+
T_DAYS=\u0414\u043D\u0438
|
|
7
|
+
B_CLEANUP_CACHE=\u0418\u0437\u0447\u0438\u0441\u0442\u0432\u0430\u043D\u0435 \u043D\u0430 \u043F\u0430\u043A\u0435\u0442\u043D\u0438\u044F \u043A\u0435\u0448
|
|
8
|
+
M_CLEANUP_SUCCESS=\u041A\u0435\u0448\u044A\u0442 \u043D\u0430 \u0437\u0430\u044F\u0432\u043A\u0430\u0442\u0430 \u0435 \u0438\u0437\u0447\u0438\u0441\u0442\u0435\u043D \u0443\u0441\u043F\u0435\u0448\u043D\u043E.
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
title=Esborrar mem\u00F2ria cau de lots
|
|
2
|
+
description=Sol\u00B7licitar configuraci\u00F3 de lot
|
|
3
|
+
T_GROUP=Activitats d'usuari
|
|
4
|
+
T_CACHE_INFORMATION_MSG=Definiu la caducitat en dies de la mem\u00F2ria cau de lots al navegador\nAquesta mem\u00F2ria cau s'utilitzar\u00E0 per optimitzar l'obertura de l'aplicaci\u00F3\nLa caducitat s'ha d'establir entre 0 i 360 dies\nPodeu esborrar-la fent servir el bot\u00F3 "Esborrar mem\u00F2ria cau de lots".
|
|
5
|
+
T_EXPIRY=Caducitat\:
|
|
6
|
+
T_DAYS=Dies
|
|
7
|
+
B_CLEANUP_CACHE=Esborrar mem\u00F2ria cau de lots
|
|
8
|
+
M_CLEANUP_SUCCESS=La mem\u00F2ria cau de la sol\u00B7licitud s'ha esborrat correctament
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
title=Obri\u0161i ke\u0161 memoriju grupe
|
|
2
|
+
description=Zahtijevaj pode\u0161avanje grupe
|
|
3
|
+
T_GROUP=Aktivnosti korisnika
|
|
4
|
+
T_CACHE_INFORMATION_MSG=Defini\u0161ite istek u danima ke\u0161 memorije grupe na strani pregleda\u010Da\nTa ke\u0161 memorija \u0107e biti kori\u0161\u0107ena da optimizuje otvaranje aplikacije\nIstek treba da bude postavljen izme\u0111u 0 i 360 dana\nMo\u017Eete da uklonite to pomo\u0107u dugmeta Obri\u0161i ke\u0161 memoriju
|
|
5
|
+
T_EXPIRY=Istek\:
|
|
6
|
+
T_DAYS=Dani
|
|
7
|
+
B_CLEANUP_CACHE=Obri\u0161i ke\u0161 memoriju grupe
|
|
8
|
+
M_CLEANUP_SUCCESS=Ke\u0161 memorija zahtjeva je uspje\u0161no izbrisana
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
title=Vymazat mezipam\u011B\u0165 d\u00E1vky
|
|
2
|
+
description=Po\u017Eadavek nastaven\u00ED d\u00E1vky
|
|
3
|
+
T_GROUP=\u010Cinnosti u\u017Eivatele
|
|
4
|
+
T_CACHE_INFORMATION_MSG=Definujte expiraci ve dnech d\u00E1vkov\u00E9 mezipam\u011Bti na stran\u011B prohl\u00ED\u017Ee\u010De Tato mezipam\u011B\u0165 bude pou\u017Eita k optimalizaci otev\u00EDr\u00E1n\u00ED aplikace. Expirace by m\u011Bla b\u00FDt nastavena mezi 0 a 360 dny. M\u016F\u017Eete ji vymazat pomoc\u00ED tla\u010D\u00EDtka Vymazat mezipam\u011B\u0165 d\u00E1vky.
|
|
5
|
+
T_EXPIRY=Expirace\:
|
|
6
|
+
T_DAYS=Dny
|
|
7
|
+
B_CLEANUP_CACHE=Vymazat mezipam\u011B\u0165 d\u00E1vky
|
|
8
|
+
M_CLEANUP_SUCCESS=Mezipam\u011B\u0165 po\u017Eadavku byla \u00FAsp\u011B\u0161n\u011B vymaz\u00E1na
|