@sap-ux/preview-middleware 0.21.7 → 0.22.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/dist/client/adp/quick-actions/common/add-new-annotation-file.js +2 -17
- package/dist/client/adp/quick-actions/common/add-new-annotation-file.ts +1 -14
- package/dist/client/cpe/documentation.js +10 -8
- package/dist/client/cpe/documentation.ts +13 -8
- package/dist/client/cpe/init.js +22 -44
- package/dist/client/cpe/init.ts +14 -35
- package/dist/client/cpe/outline/service.js +3 -12
- package/dist/client/cpe/outline/service.ts +3 -10
- package/dist/client/cpe/selection.js +7 -18
- package/dist/client/cpe/selection.ts +11 -21
- package/dist/client/flp/init.js +0 -15
- package/dist/client/flp/init.ts +0 -15
- package/dist/client/messagebundle.properties +0 -9
- package/dist/client/utils/error.js +7 -0
- package/dist/client/utils/error.ts +9 -0
- package/package.json +5 -5
|
@@ -4,23 +4,18 @@ sap.ui.define([
|
|
|
4
4
|
'sap/ui/dt/OverlayRegistry',
|
|
5
5
|
'sap/ui/rta/command/CommandFactory',
|
|
6
6
|
'../../../utils/application',
|
|
7
|
-
'../../../utils/error',
|
|
8
7
|
'../../../utils/fe-v4',
|
|
9
|
-
'../../../utils/info-center-message',
|
|
10
8
|
'../../../utils/version',
|
|
11
9
|
'../../api-handler',
|
|
12
10
|
'../../dialog-factory',
|
|
13
11
|
'../dialog-enablement-validator',
|
|
14
12
|
'../fe-v2/utils',
|
|
15
13
|
'../quick-action-base'
|
|
16
|
-
], function (___sap_ux_private_control_property_editor_common, OverlayRegistry, CommandFactory, _____utils_application,
|
|
14
|
+
], function (___sap_ux_private_control_property_editor_common, OverlayRegistry, CommandFactory, _____utils_application, _____utils_fe_v4, _____utils_version, ____api_handler, ____dialog_factory, ___dialog_enablement_validator, ___fe_v2_utils, ___quick_action_base) {
|
|
17
15
|
'use strict';
|
|
18
|
-
const MessageBarType = ___sap_ux_private_control_property_editor_common['MessageBarType'];
|
|
19
16
|
const NESTED_QUICK_ACTION_KIND = ___sap_ux_private_control_property_editor_common['NESTED_QUICK_ACTION_KIND'];
|
|
20
17
|
const getApplicationType = _____utils_application['getApplicationType'];
|
|
21
|
-
const getError = _____utils_error['getError'];
|
|
22
18
|
const getV4AppComponent = _____utils_fe_v4['getV4AppComponent'];
|
|
23
|
-
const sendInfoCenterMessage = _____utils_info_center_message['sendInfoCenterMessage'];
|
|
24
19
|
const getUi5Version = _____utils_version['getUi5Version'];
|
|
25
20
|
const isLowerThanMinimalUi5Version = _____utils_version['isLowerThanMinimalUi5Version'];
|
|
26
21
|
const getDataSourceAnnotationFileMap = ____api_handler['getDataSourceAnnotationFileMap'];
|
|
@@ -57,17 +52,7 @@ sap.ui.define([
|
|
|
57
52
|
this.isApplicable = false;
|
|
58
53
|
return;
|
|
59
54
|
}
|
|
60
|
-
|
|
61
|
-
this.annotationDataSourceData = await getDataSourceAnnotationFileMap();
|
|
62
|
-
} catch (e) {
|
|
63
|
-
const error = getError(e);
|
|
64
|
-
await sendInfoCenterMessage({
|
|
65
|
-
title: { key: 'ADP_GET_ANNOTATION_ERROR_TITLE' },
|
|
66
|
-
description: error.message,
|
|
67
|
-
type: MessageBarType.error
|
|
68
|
-
});
|
|
69
|
-
throw error;
|
|
70
|
-
}
|
|
55
|
+
this.annotationDataSourceData = await getDataSourceAnnotationFileMap();
|
|
71
56
|
const {annotationDataSourceMap} = this.annotationDataSourceData;
|
|
72
57
|
if (!Object.keys(this.annotationDataSourceData.annotationDataSourceMap).length) {
|
|
73
58
|
throw new Error('No data sources found in the manifest');
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import FlexCommand from 'sap/ui/rta/command/FlexCommand';
|
|
2
2
|
|
|
3
3
|
import {
|
|
4
|
-
MessageBarType,
|
|
5
4
|
NESTED_QUICK_ACTION_KIND,
|
|
6
5
|
NestedQuickAction,
|
|
7
6
|
NestedQuickActionChild
|
|
@@ -10,9 +9,7 @@ import OverlayRegistry from 'sap/ui/dt/OverlayRegistry';
|
|
|
10
9
|
import CommandFactory from 'sap/ui/rta/command/CommandFactory';
|
|
11
10
|
import { NestedQuickActionDefinition, QuickActionContext } from '../../../cpe/quick-actions/quick-action-definition';
|
|
12
11
|
import { getApplicationType } from '../../../utils/application';
|
|
13
|
-
import { getError } from '../../../utils/error';
|
|
14
12
|
import { getV4AppComponent } from '../../../utils/fe-v4';
|
|
15
|
-
import { sendInfoCenterMessage } from '../../../utils/info-center-message';
|
|
16
13
|
import { getUi5Version, isLowerThanMinimalUi5Version } from '../../../utils/version';
|
|
17
14
|
import type { AnnotationDataSourceResponse } from '../../api-handler';
|
|
18
15
|
import { getDataSourceAnnotationFileMap } from '../../api-handler';
|
|
@@ -53,17 +50,7 @@ export class AddNewAnnotationFile
|
|
|
53
50
|
this.isApplicable = false;
|
|
54
51
|
return;
|
|
55
52
|
}
|
|
56
|
-
|
|
57
|
-
this.annotationDataSourceData = await getDataSourceAnnotationFileMap();
|
|
58
|
-
} catch (e) {
|
|
59
|
-
const error = getError(e);
|
|
60
|
-
await sendInfoCenterMessage({
|
|
61
|
-
title: { key: 'ADP_GET_ANNOTATION_ERROR_TITLE' },
|
|
62
|
-
description: error.message,
|
|
63
|
-
type: MessageBarType.error
|
|
64
|
-
});
|
|
65
|
-
throw error;
|
|
66
|
-
}
|
|
53
|
+
this.annotationDataSourceData = await getDataSourceAnnotationFileMap();
|
|
67
54
|
const { annotationDataSourceMap } = this.annotationDataSourceData;
|
|
68
55
|
if (!Object.keys(this.annotationDataSourceData.annotationDataSourceMap).length) {
|
|
69
56
|
throw new Error('No data sources found in the manifest');
|
|
@@ -10,10 +10,14 @@ sap.ui.define([
|
|
|
10
10
|
const getLibrary = ___utils['getLibrary'];
|
|
11
11
|
const MessageBarType = ___sap_ux_private_control_property_editor_common['MessageBarType'];
|
|
12
12
|
const sendInfoCenterMessage = ___utils_info_center_message['sendInfoCenterMessage'];
|
|
13
|
-
const
|
|
13
|
+
const FetchError = ___utils_error['FetchError'];
|
|
14
14
|
async function getUi5ApiDtMetadata(libName) {
|
|
15
15
|
const libUrl = '/test-resources/' + libName.split('.').join('/') + '/designtime/api.json';
|
|
16
|
-
|
|
16
|
+
const response = await fetch(libUrl);
|
|
17
|
+
if (!response.ok) {
|
|
18
|
+
throw new FetchError(response);
|
|
19
|
+
}
|
|
20
|
+
return response.json();
|
|
17
21
|
}
|
|
18
22
|
const ui5ApiDtMetadata = new Map();
|
|
19
23
|
function loadDefaultLibraries() {
|
|
@@ -31,11 +35,6 @@ sap.ui.define([
|
|
|
31
35
|
});
|
|
32
36
|
}).catch(reason => {
|
|
33
37
|
Log.error('Loading Library Failed: ' + reason);
|
|
34
|
-
return sendInfoCenterMessage({
|
|
35
|
-
title: { key: 'LIBRARY_ERROR_TITLE' },
|
|
36
|
-
description: getError(reason).message,
|
|
37
|
-
type: MessageBarType.error
|
|
38
|
-
});
|
|
39
38
|
});
|
|
40
39
|
}
|
|
41
40
|
function formatHtmlText(sHtml) {
|
|
@@ -111,8 +110,11 @@ sap.ui.define([
|
|
|
111
110
|
let doc;
|
|
112
111
|
try {
|
|
113
112
|
doc = await getControlPropertyDocumentation(controlName, contLibName);
|
|
114
|
-
} catch (
|
|
113
|
+
} catch (error) {
|
|
115
114
|
Log.error(`Error in getting documentation for ${ contLibName }`);
|
|
115
|
+
if (error instanceof FetchError && error.status === 404) {
|
|
116
|
+
return undefined;
|
|
117
|
+
}
|
|
116
118
|
await sendInfoCenterMessage({
|
|
117
119
|
title: { key: 'DOCUMENTATION_ERROR_TITLE' },
|
|
118
120
|
description: {
|
|
@@ -4,7 +4,7 @@ import type { Properties } from './utils';
|
|
|
4
4
|
import Log from 'sap/base/Log';
|
|
5
5
|
import { MessageBarType, PropertiesInfo } from '@sap-ux-private/control-property-editor-common';
|
|
6
6
|
import { sendInfoCenterMessage } from '../utils/info-center-message';
|
|
7
|
-
import { getError } from '../utils/error';
|
|
7
|
+
import { FetchError, getError } from '../utils/error';
|
|
8
8
|
|
|
9
9
|
export interface ControlMetadata {
|
|
10
10
|
baseType: string | undefined;
|
|
@@ -20,7 +20,11 @@ export interface ControlMetadata {
|
|
|
20
20
|
*/
|
|
21
21
|
export async function getUi5ApiDtMetadata(libName: string): Promise<SchemaForApiJsonFiles> {
|
|
22
22
|
const libUrl = '/test-resources/' + libName.split('.').join('/') + '/designtime/api.json';
|
|
23
|
-
|
|
23
|
+
const response = await fetch(libUrl);
|
|
24
|
+
if (!response.ok) {
|
|
25
|
+
throw new FetchError(response);
|
|
26
|
+
}
|
|
27
|
+
return response.json();
|
|
24
28
|
}
|
|
25
29
|
|
|
26
30
|
/**
|
|
@@ -47,11 +51,6 @@ export function loadDefaultLibraries(): void {
|
|
|
47
51
|
})
|
|
48
52
|
.catch((reason) => {
|
|
49
53
|
Log.error('Loading Library Failed: ' + reason);
|
|
50
|
-
return sendInfoCenterMessage({
|
|
51
|
-
title: { key: 'LIBRARY_ERROR_TITLE' },
|
|
52
|
-
description: getError(reason).message,
|
|
53
|
-
type: MessageBarType.error
|
|
54
|
-
});
|
|
55
54
|
});
|
|
56
55
|
}
|
|
57
56
|
|
|
@@ -170,8 +169,14 @@ export async function getDocumentation(controlName: string, contLibName: string)
|
|
|
170
169
|
let doc: Properties | undefined;
|
|
171
170
|
try {
|
|
172
171
|
doc = await getControlPropertyDocumentation(controlName, contLibName);
|
|
173
|
-
} catch (
|
|
172
|
+
} catch (error) {
|
|
174
173
|
Log.error(`Error in getting documentation for ${contLibName}`);
|
|
174
|
+
// For some UI5 components we do not have an api.json provided instead 404, not found,
|
|
175
|
+
// response is retuned from the server. For such components we do not want to
|
|
176
|
+
// flood the info center with errors.
|
|
177
|
+
if (error instanceof FetchError && error.status === 404) {
|
|
178
|
+
return undefined;
|
|
179
|
+
}
|
|
175
180
|
await sendInfoCenterMessage({
|
|
176
181
|
title: { key: 'DOCUMENTATION_ERROR_TITLE' },
|
|
177
182
|
description: { key: 'DOCUMENTATION_ERROR_DESCRIPTION', params: [contLibName] },
|
package/dist/client/cpe/init.js
CHANGED
|
@@ -2,36 +2,33 @@
|
|
|
2
2
|
sap.ui.define([
|
|
3
3
|
'sap/base/Log',
|
|
4
4
|
'open/ux/preview/client/thirdparty/@sap-ux-private/control-property-editor-common',
|
|
5
|
-
'./outline/service',
|
|
6
|
-
'./selection',
|
|
7
|
-
'./changes/service',
|
|
8
|
-
'./documentation',
|
|
9
|
-
'./ui5-utils',
|
|
10
|
-
'./connector-service',
|
|
11
|
-
'./rta-service',
|
|
12
5
|
'../utils/error',
|
|
13
|
-
'./
|
|
6
|
+
'./changes/service',
|
|
14
7
|
'./communication-service',
|
|
8
|
+
'./connector-service',
|
|
15
9
|
'./context-menu-service',
|
|
16
|
-
'
|
|
17
|
-
|
|
10
|
+
'./documentation',
|
|
11
|
+
'./outline/service',
|
|
12
|
+
'./quick-actions/quick-action-service',
|
|
13
|
+
'./rta-service',
|
|
14
|
+
'./selection',
|
|
15
|
+
'./ui5-utils'
|
|
16
|
+
], function (Log, ___sap_ux_private_control_property_editor_common, ___utils_error, ___changes_service, ___communication_service, ___connector_service, ___context_menu_service, ___documentation, ___outline_service, ___quick_actions_quick_action_service, ___rta_service, ___selection, ___ui5_utils) {
|
|
18
17
|
'use strict';
|
|
19
|
-
const iconsLoaded = ___sap_ux_private_control_property_editor_common['iconsLoaded'];
|
|
20
|
-
const enableTelemetry = ___sap_ux_private_control_property_editor_common['enableTelemetry'];
|
|
21
18
|
const appLoaded = ___sap_ux_private_control_property_editor_common['appLoaded'];
|
|
22
|
-
const
|
|
23
|
-
const
|
|
24
|
-
const SelectionService = ___selection['SelectionService'];
|
|
25
|
-
const ChangeService = ___changes_service['ChangeService'];
|
|
26
|
-
const loadDefaultLibraries = ___documentation['loadDefaultLibraries'];
|
|
27
|
-
const getIcons = ___ui5_utils['getIcons'];
|
|
28
|
-
const WorkspaceConnectorService = ___connector_service['WorkspaceConnectorService'];
|
|
29
|
-
const RtaService = ___rta_service['RtaService'];
|
|
19
|
+
const enableTelemetry = ___sap_ux_private_control_property_editor_common['enableTelemetry'];
|
|
20
|
+
const iconsLoaded = ___sap_ux_private_control_property_editor_common['iconsLoaded'];
|
|
30
21
|
const getError = ___utils_error['getError'];
|
|
31
|
-
const
|
|
22
|
+
const ChangeService = ___changes_service['ChangeService'];
|
|
32
23
|
const CommunicationService = ___communication_service['CommunicationService'];
|
|
24
|
+
const WorkspaceConnectorService = ___connector_service['WorkspaceConnectorService'];
|
|
33
25
|
const ContextMenuService = ___context_menu_service['ContextMenuService'];
|
|
34
|
-
const
|
|
26
|
+
const loadDefaultLibraries = ___documentation['loadDefaultLibraries'];
|
|
27
|
+
const OutlineService = ___outline_service['OutlineService'];
|
|
28
|
+
const QuickActionService = ___quick_actions_quick_action_service['QuickActionService'];
|
|
29
|
+
const RtaService = ___rta_service['RtaService'];
|
|
30
|
+
const SelectionService = ___selection['SelectionService'];
|
|
31
|
+
const getIcons = ___ui5_utils['getIcons'];
|
|
35
32
|
function init(rta) {
|
|
36
33
|
let registries = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
|
|
37
34
|
Log.info('Initializing Control Property Editor');
|
|
@@ -62,35 +59,16 @@ sap.ui.define([
|
|
|
62
59
|
loadDefaultLibraries();
|
|
63
60
|
const allPromises = services.map(service => {
|
|
64
61
|
return service.init(CommunicationService.sendAction, subscribe)?.catch(error => {
|
|
65
|
-
|
|
66
|
-
Log.error('Service Initialization Failed: ', extendedError);
|
|
67
|
-
return sendInfoCenterMessage({
|
|
68
|
-
title: { key: 'INIT_ERROR_TITLE' },
|
|
69
|
-
description: extendedError.message,
|
|
70
|
-
type: MessageBarType.error
|
|
71
|
-
});
|
|
62
|
+
Log.error('Service Initialization Failed: ', getError(error));
|
|
72
63
|
});
|
|
73
64
|
});
|
|
74
65
|
Promise.all(allPromises).then(() => {
|
|
75
66
|
CommunicationService.sendAction(appLoaded());
|
|
76
|
-
}).catch(error
|
|
77
|
-
Log.error(error);
|
|
78
|
-
return sendInfoCenterMessage({
|
|
79
|
-
title: { key: 'INIT_ERROR_TITLE' },
|
|
80
|
-
description: getError(error).message,
|
|
81
|
-
type: MessageBarType.error
|
|
82
|
-
});
|
|
83
|
-
});
|
|
67
|
+
}).catch(Log.error);
|
|
84
68
|
const icons = getIcons();
|
|
85
69
|
CommunicationService.sendAction(iconsLoaded(icons));
|
|
86
70
|
} catch (error) {
|
|
87
|
-
|
|
88
|
-
Log.error('Error during initialization of Control Property Editor', extendedError);
|
|
89
|
-
void sendInfoCenterMessage({
|
|
90
|
-
title: { key: 'INIT_ERROR_TITLE' },
|
|
91
|
-
description: extendedError.message,
|
|
92
|
-
type: MessageBarType.error
|
|
93
|
-
});
|
|
71
|
+
Log.error('Error during initialization of Control Property Editor', getError(error));
|
|
94
72
|
}
|
|
95
73
|
return Promise.resolve();
|
|
96
74
|
}
|
package/dist/client/cpe/init.ts
CHANGED
|
@@ -2,26 +2,24 @@ import Log from 'sap/base/Log';
|
|
|
2
2
|
import type RuntimeAuthoring from 'sap/ui/rta/RuntimeAuthoring';
|
|
3
3
|
|
|
4
4
|
import {
|
|
5
|
-
iconsLoaded,
|
|
6
|
-
enableTelemetry,
|
|
7
5
|
appLoaded,
|
|
8
|
-
|
|
6
|
+
enableTelemetry,
|
|
7
|
+
iconsLoaded
|
|
9
8
|
} from '@sap-ux-private/control-property-editor-common';
|
|
10
9
|
|
|
11
|
-
import
|
|
12
|
-
import { OutlineService } from './outline/service';
|
|
13
|
-
import { SelectionService } from './selection';
|
|
10
|
+
import { getError } from '../utils/error';
|
|
14
11
|
import { ChangeService } from './changes/service';
|
|
15
|
-
import {
|
|
16
|
-
import { getIcons } from './ui5-utils';
|
|
12
|
+
import { CommunicationService } from './communication-service';
|
|
17
13
|
import { WorkspaceConnectorService } from './connector-service';
|
|
18
|
-
import {
|
|
19
|
-
import {
|
|
14
|
+
import { ContextMenuService } from './context-menu-service';
|
|
15
|
+
import { loadDefaultLibraries } from './documentation';
|
|
16
|
+
import { OutlineService } from './outline/service';
|
|
20
17
|
import { QuickActionService } from './quick-actions/quick-action-service';
|
|
21
18
|
import type { QuickActionDefinitionRegistry } from './quick-actions/registry';
|
|
22
|
-
import {
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
19
|
+
import { RtaService } from './rta-service';
|
|
20
|
+
import { SelectionService } from './selection';
|
|
21
|
+
import type { ActionHandler, Service } from './types';
|
|
22
|
+
import { getIcons } from './ui5-utils';
|
|
25
23
|
|
|
26
24
|
export default function init(
|
|
27
25
|
rta: RuntimeAuthoring,
|
|
@@ -65,13 +63,7 @@ export default function init(
|
|
|
65
63
|
loadDefaultLibraries();
|
|
66
64
|
const allPromises = services.map((service) => {
|
|
67
65
|
return service.init(CommunicationService.sendAction, subscribe)?.catch((error) => {
|
|
68
|
-
|
|
69
|
-
Log.error('Service Initialization Failed: ', extendedError);
|
|
70
|
-
return sendInfoCenterMessage({
|
|
71
|
-
title: { key: 'INIT_ERROR_TITLE' },
|
|
72
|
-
description: extendedError.message,
|
|
73
|
-
type: MessageBarType.error
|
|
74
|
-
});
|
|
66
|
+
Log.error('Service Initialization Failed: ', getError(error));
|
|
75
67
|
});
|
|
76
68
|
});
|
|
77
69
|
Promise.all(allPromises)
|
|
@@ -79,24 +71,11 @@ export default function init(
|
|
|
79
71
|
CommunicationService.sendAction(appLoaded());
|
|
80
72
|
})
|
|
81
73
|
// eslint-disable-next-line @typescript-eslint/unbound-method
|
|
82
|
-
.catch(
|
|
83
|
-
Log.error(error);
|
|
84
|
-
return sendInfoCenterMessage({
|
|
85
|
-
title: { key: 'INIT_ERROR_TITLE' },
|
|
86
|
-
description: getError(error).message,
|
|
87
|
-
type: MessageBarType.error
|
|
88
|
-
});
|
|
89
|
-
});
|
|
74
|
+
.catch(Log.error);
|
|
90
75
|
const icons = getIcons();
|
|
91
76
|
CommunicationService.sendAction(iconsLoaded(icons));
|
|
92
77
|
} catch (error) {
|
|
93
|
-
|
|
94
|
-
Log.error('Error during initialization of Control Property Editor', extendedError);
|
|
95
|
-
void sendInfoCenterMessage({
|
|
96
|
-
title: { key: 'INIT_ERROR_TITLE' },
|
|
97
|
-
description: extendedError.message,
|
|
98
|
-
type: MessageBarType.error
|
|
99
|
-
});
|
|
78
|
+
Log.error('Error during initialization of Control Property Editor', getError(error));
|
|
100
79
|
}
|
|
101
80
|
|
|
102
81
|
// * This is returned immediately to avoid promise deadlock, preventing services from waiting indefinitely.
|
|
@@ -3,15 +3,12 @@ sap.ui.define([
|
|
|
3
3
|
'sap/base/Log',
|
|
4
4
|
'open/ux/preview/client/thirdparty/@sap-ux-private/control-property-editor-common',
|
|
5
5
|
'../../utils/error',
|
|
6
|
-
'./nodes'
|
|
7
|
-
|
|
8
|
-
], function (Log, ___sap_ux_private_control_property_editor_common, ____utils_error, ___nodes, ____utils_info_center_message) {
|
|
6
|
+
'./nodes'
|
|
7
|
+
], function (Log, ___sap_ux_private_control_property_editor_common, ____utils_error, ___nodes) {
|
|
9
8
|
'use strict';
|
|
10
|
-
const MessageBarType = ___sap_ux_private_control_property_editor_common['MessageBarType'];
|
|
11
9
|
const outlineChanged = ___sap_ux_private_control_property_editor_common['outlineChanged'];
|
|
12
10
|
const getError = ____utils_error['getError'];
|
|
13
11
|
const transformNodes = ___nodes['transformNodes'];
|
|
14
|
-
const sendInfoCenterMessage = ____utils_info_center_message['sendInfoCenterMessage'];
|
|
15
12
|
const OUTLINE_CHANGE_EVENT = 'OUTLINE_CHANGED';
|
|
16
13
|
class OutlineService extends EventTarget {
|
|
17
14
|
constructor(rta, changeService) {
|
|
@@ -33,13 +30,7 @@ sap.ui.define([
|
|
|
33
30
|
sendAction(outlineChanged(outlineNodes));
|
|
34
31
|
await this.changeService.updateConfigurationProps(configPropertyIdMap);
|
|
35
32
|
} catch (error) {
|
|
36
|
-
|
|
37
|
-
Log.error('Outline sync failed!', extendError);
|
|
38
|
-
await sendInfoCenterMessage({
|
|
39
|
-
title: { key: 'OUTLINE_ERROR_TITLE' },
|
|
40
|
-
description: extendError.message,
|
|
41
|
-
type: MessageBarType.error
|
|
42
|
-
});
|
|
33
|
+
Log.error('Outline sync failed!', getError(error));
|
|
43
34
|
}
|
|
44
35
|
};
|
|
45
36
|
await syncOutline();
|
|
@@ -3,13 +3,12 @@ import type RuntimeAuthoring from 'sap/ui/rta/RuntimeAuthoring';
|
|
|
3
3
|
import type RTAOutlineService from 'sap/ui/rta/command/OutlineService';
|
|
4
4
|
|
|
5
5
|
import type { ExternalAction } from '@sap-ux-private/control-property-editor-common';
|
|
6
|
-
import {
|
|
6
|
+
import { outlineChanged } from '@sap-ux-private/control-property-editor-common';
|
|
7
7
|
|
|
8
8
|
import { getError } from '../../utils/error';
|
|
9
|
+
import { ChangeService } from '../changes';
|
|
9
10
|
import { ControlTreeIndex } from '../types';
|
|
10
11
|
import { transformNodes } from './nodes';
|
|
11
|
-
import { ChangeService } from '../changes';
|
|
12
|
-
import { sendInfoCenterMessage } from '../../utils/info-center-message';
|
|
13
12
|
|
|
14
13
|
export const OUTLINE_CHANGE_EVENT = 'OUTLINE_CHANGED';
|
|
15
14
|
|
|
@@ -54,13 +53,7 @@ export class OutlineService extends EventTarget {
|
|
|
54
53
|
sendAction(outlineChanged(outlineNodes));
|
|
55
54
|
await this.changeService.updateConfigurationProps(configPropertyIdMap);
|
|
56
55
|
} catch (error) {
|
|
57
|
-
|
|
58
|
-
Log.error('Outline sync failed!', extendError);
|
|
59
|
-
await sendInfoCenterMessage({
|
|
60
|
-
title: { key: 'OUTLINE_ERROR_TITLE' },
|
|
61
|
-
description: extendError.message,
|
|
62
|
-
type: MessageBarType.error
|
|
63
|
-
});
|
|
56
|
+
Log.error('Outline sync failed!', getError(error));
|
|
64
57
|
}
|
|
65
58
|
};
|
|
66
59
|
await syncOutline();
|
|
@@ -4,29 +4,26 @@ sap.ui.define([
|
|
|
4
4
|
'./control-data',
|
|
5
5
|
'./utils',
|
|
6
6
|
'sap/base/Log',
|
|
7
|
-
'./documentation',
|
|
8
7
|
'sap/ui/dt/OverlayRegistry',
|
|
9
8
|
'sap/ui/dt/OverlayUtil',
|
|
10
9
|
'../utils/core',
|
|
11
10
|
'../utils/error',
|
|
12
|
-
'
|
|
13
|
-
], function (___sap_ux_private_control_property_editor_common, ___control_data, ___utils, Log,
|
|
11
|
+
'./documentation'
|
|
12
|
+
], function (___sap_ux_private_control_property_editor_common, ___control_data, ___utils, Log, OverlayRegistry, OverlayUtil, ___utils_core, ___utils_error, ___documentation) {
|
|
14
13
|
'use strict';
|
|
14
|
+
const changeProperty = ___sap_ux_private_control_property_editor_common['changeProperty'];
|
|
15
15
|
const controlSelected = ___sap_ux_private_control_property_editor_common['controlSelected'];
|
|
16
16
|
const propertyChanged = ___sap_ux_private_control_property_editor_common['propertyChanged'];
|
|
17
|
-
const selectControl = ___sap_ux_private_control_property_editor_common['selectControl'];
|
|
18
|
-
const reportTelemetry = ___sap_ux_private_control_property_editor_common['reportTelemetry'];
|
|
19
|
-
const changeProperty = ___sap_ux_private_control_property_editor_common['changeProperty'];
|
|
20
17
|
const PropertyType = ___sap_ux_private_control_property_editor_common['PropertyType'];
|
|
21
|
-
const
|
|
18
|
+
const reportTelemetry = ___sap_ux_private_control_property_editor_common['reportTelemetry'];
|
|
19
|
+
const selectControl = ___sap_ux_private_control_property_editor_common['selectControl'];
|
|
22
20
|
const buildControlData = ___control_data['buildControlData'];
|
|
23
21
|
const getOverlay = ___utils['getOverlay'];
|
|
24
22
|
const getRuntimeControl = ___utils['getRuntimeControl'];
|
|
25
|
-
const getDocumentation = ___documentation['getDocumentation'];
|
|
26
23
|
const getComponent = ___utils_core['getComponent'];
|
|
27
24
|
const getControlById = ___utils_core['getControlById'];
|
|
28
25
|
const getError = ___utils_error['getError'];
|
|
29
|
-
const
|
|
26
|
+
const getDocumentation = ___documentation['getDocumentation'];
|
|
30
27
|
function propertyChangeId(controlId, propertyName) {
|
|
31
28
|
return [
|
|
32
29
|
controlId,
|
|
@@ -70,15 +67,7 @@ sap.ui.define([
|
|
|
70
67
|
const eventOrigin = new Set();
|
|
71
68
|
const onselectionChange = this.createOnSelectionChangeHandler(sendAction, eventOrigin);
|
|
72
69
|
this.rta.attachSelectionChange(event => {
|
|
73
|
-
onselectionChange(event).catch(error =>
|
|
74
|
-
const extendedError = getError(error);
|
|
75
|
-
Log.error('Event interrupted: ', extendedError);
|
|
76
|
-
return sendInfoCenterMessage({
|
|
77
|
-
title: { key: 'CHANGE_SELECTION_ERROR_TITLE' },
|
|
78
|
-
description: extendedError.message,
|
|
79
|
-
type: MessageBarType.error
|
|
80
|
-
});
|
|
81
|
-
});
|
|
70
|
+
onselectionChange(event).catch(error => Log.error('Event interrupted: ', getError(error)));
|
|
82
71
|
});
|
|
83
72
|
subscribe(async action => {
|
|
84
73
|
if (changeProperty.match(action)) {
|
|
@@ -1,31 +1,29 @@
|
|
|
1
1
|
import type { Control, ExternalAction } from '@sap-ux-private/control-property-editor-common';
|
|
2
2
|
import {
|
|
3
|
+
changeProperty,
|
|
3
4
|
controlSelected,
|
|
4
|
-
propertyChanged,
|
|
5
|
-
selectControl,
|
|
6
|
-
reportTelemetry,
|
|
7
5
|
Properties,
|
|
8
|
-
|
|
6
|
+
propertyChanged,
|
|
9
7
|
PropertyType,
|
|
10
|
-
|
|
8
|
+
reportTelemetry,
|
|
9
|
+
selectControl
|
|
11
10
|
} from '@sap-ux-private/control-property-editor-common';
|
|
12
11
|
import { buildControlData } from './control-data';
|
|
13
|
-
import { getOverlay, getRuntimeControl, ManagedObjectMetadataProperties, PropertiesInfo } from './utils';
|
|
14
12
|
import type { ActionSenderFunction, Service, SubscribeFunction } from './types';
|
|
13
|
+
import { getOverlay, getRuntimeControl, ManagedObjectMetadataProperties, PropertiesInfo } from './utils';
|
|
15
14
|
|
|
15
|
+
import Log from 'sap/base/Log';
|
|
16
16
|
import type Event from 'sap/ui/base/Event';
|
|
17
|
-
import type ElementOverlay from 'sap/ui/dt/ElementOverlay';
|
|
18
17
|
import type ManagedObject from 'sap/ui/base/ManagedObject';
|
|
19
|
-
import type
|
|
20
|
-
import type RuntimeAuthoring from 'sap/ui/rta/RuntimeAuthoring';
|
|
21
|
-
import Log from 'sap/base/Log';
|
|
22
|
-
import { getDocumentation } from './documentation';
|
|
18
|
+
import type ElementOverlay from 'sap/ui/dt/ElementOverlay';
|
|
23
19
|
import OverlayRegistry from 'sap/ui/dt/OverlayRegistry';
|
|
24
20
|
import OverlayUtil from 'sap/ui/dt/OverlayUtil';
|
|
21
|
+
import type RuntimeAuthoring from 'sap/ui/rta/RuntimeAuthoring';
|
|
22
|
+
import type { SelectionChangeEvent } from 'sap/ui/rta/RuntimeAuthoring';
|
|
25
23
|
import { getComponent, getControlById } from '../utils/core';
|
|
26
24
|
import { getError } from '../utils/error';
|
|
27
25
|
import { ChangeService } from './changes';
|
|
28
|
-
import {
|
|
26
|
+
import { getDocumentation } from './documentation';
|
|
29
27
|
|
|
30
28
|
export interface PropertyChangeParams {
|
|
31
29
|
name: string;
|
|
@@ -114,15 +112,7 @@ export class SelectionService implements Service {
|
|
|
114
112
|
const eventOrigin: Set<string> = new Set();
|
|
115
113
|
const onselectionChange = this.createOnSelectionChangeHandler(sendAction, eventOrigin);
|
|
116
114
|
this.rta.attachSelectionChange((event) => {
|
|
117
|
-
onselectionChange(event).catch((error) =>
|
|
118
|
-
const extendedError = getError(error);
|
|
119
|
-
Log.error('Event interrupted: ', extendedError);
|
|
120
|
-
return sendInfoCenterMessage({
|
|
121
|
-
title: { key: 'CHANGE_SELECTION_ERROR_TITLE' },
|
|
122
|
-
description: extendedError.message,
|
|
123
|
-
type: MessageBarType.error
|
|
124
|
-
});
|
|
125
|
-
});
|
|
115
|
+
onselectionChange(event).catch((error) => Log.error('Event interrupted: ', getError(error)));
|
|
126
116
|
});
|
|
127
117
|
subscribe(async (action: ExternalAction): Promise<void> => {
|
|
128
118
|
if (changeProperty.match(action)) {
|
package/dist/client/flp/init.js
CHANGED
|
@@ -142,11 +142,6 @@ sap.ui.define([
|
|
|
142
142
|
registerModules(await response.json());
|
|
143
143
|
} catch (error) {
|
|
144
144
|
Log.error(`Registering of reuse libs failed. Error:${ error }`);
|
|
145
|
-
await sendInfoCenterMessage({
|
|
146
|
-
title: { key: 'FLP_REGISTER_LIBS_FAILED_TITLE' },
|
|
147
|
-
description: getError(error).message,
|
|
148
|
-
type: MessageBarType.error
|
|
149
|
-
});
|
|
150
145
|
}
|
|
151
146
|
}
|
|
152
147
|
}
|
|
@@ -259,11 +254,6 @@ sap.ui.define([
|
|
|
259
254
|
});
|
|
260
255
|
} else {
|
|
261
256
|
Log.warning('Card generator is not supported for the current UI5 version.');
|
|
262
|
-
await sendInfoCenterMessage({
|
|
263
|
-
title: { key: 'FLP_CARD_GENERATOR_NOT_SUPPORTED_TITLE' },
|
|
264
|
-
description: { key: 'FLP_CARD_GENERATOR_NOT_SUPPORTED_DESCRIPTION' },
|
|
265
|
-
type: MessageBarType.warning
|
|
266
|
-
});
|
|
267
257
|
}
|
|
268
258
|
if (urlParams.get('fiori-tools-iapp-state')?.toLocaleLowerCase() !== 'true') {
|
|
269
259
|
await resetAppState(container);
|
|
@@ -295,11 +285,6 @@ sap.ui.define([
|
|
|
295
285
|
}).catch(e => {
|
|
296
286
|
const error = getError(e);
|
|
297
287
|
Log.error('Sandbox initialization failed: ' + error.message);
|
|
298
|
-
return sendInfoCenterMessage({
|
|
299
|
-
title: { key: 'FLP_SANDBOX_INIT_FAILED_TITLE' },
|
|
300
|
-
description: error.message,
|
|
301
|
-
type: MessageBarType.error
|
|
302
|
-
});
|
|
303
288
|
});
|
|
304
289
|
}
|
|
305
290
|
async function handleHigherLayerChanges(error, ui5VersionInfo) {
|
package/dist/client/flp/init.ts
CHANGED
|
@@ -196,11 +196,6 @@ export async function registerComponentDependencyPaths(appUrls: string[], urlPar
|
|
|
196
196
|
registerModules((await response.json()) as AppIndexData);
|
|
197
197
|
} catch (error) {
|
|
198
198
|
Log.error(`Registering of reuse libs failed. Error:${error}`);
|
|
199
|
-
await sendInfoCenterMessage({
|
|
200
|
-
title: { key: 'FLP_REGISTER_LIBS_FAILED_TITLE' },
|
|
201
|
-
description: getError(error).message,
|
|
202
|
-
type: MessageBarType.error
|
|
203
|
-
});
|
|
204
199
|
}
|
|
205
200
|
}
|
|
206
201
|
}
|
|
@@ -377,11 +372,6 @@ export async function init({
|
|
|
377
372
|
});
|
|
378
373
|
} else {
|
|
379
374
|
Log.warning('Card generator is not supported for the current UI5 version.');
|
|
380
|
-
await sendInfoCenterMessage({
|
|
381
|
-
title: { key: 'FLP_CARD_GENERATOR_NOT_SUPPORTED_TITLE' },
|
|
382
|
-
description: { key: 'FLP_CARD_GENERATOR_NOT_SUPPORTED_DESCRIPTION' },
|
|
383
|
-
type: MessageBarType.warning
|
|
384
|
-
});
|
|
385
375
|
}
|
|
386
376
|
|
|
387
377
|
// reset app state if requested
|
|
@@ -430,11 +420,6 @@ if (bootstrapConfig) {
|
|
|
430
420
|
}).catch((e) => {
|
|
431
421
|
const error = getError(e);
|
|
432
422
|
Log.error('Sandbox initialization failed: ' + error.message);
|
|
433
|
-
return sendInfoCenterMessage({
|
|
434
|
-
title: { key: 'FLP_SANDBOX_INIT_FAILED_TITLE' },
|
|
435
|
-
description: error.message,
|
|
436
|
-
type: MessageBarType.error
|
|
437
|
-
});
|
|
438
423
|
});
|
|
439
424
|
}
|
|
440
425
|
|
|
@@ -63,28 +63,19 @@ ADP_ADD_FRAGMENT_FAILURE_TITLE = Add Fragment Failed
|
|
|
63
63
|
ADP_GET_FRAGMENTS_FAILURE_TITLE = Get Fragments Failed
|
|
64
64
|
ADP_CONTROLLER_ERROR_TITLE = Controller Error
|
|
65
65
|
ADP_EXTENSION_POINT_ERROR_TITLE = Extension Point Error
|
|
66
|
-
ADP_GET_ANNOTATION_ERROR_TITLE = Get Annotation Error
|
|
67
66
|
ADP_CREATE_CONTROLLER_EXTENSION_TITLE = Create Controller Extension
|
|
68
67
|
ADP_CREATE_CONTROLLER_EXTENSION_DESCRIPTION = Controller extension with name ''{0}'' was created.
|
|
69
68
|
CHANGES_VISIBLE_AFTER_SAVE_AND_RELOAD_TITLE = Save and Reload Required
|
|
70
69
|
CHANGES_VISIBLE_AFTER_SAVE_AND_RELOAD_DESCRIPTION = Note: The change will be visible after save and reload.
|
|
71
70
|
CHANGE_CREATION_FAILED_TITLE = Change Creation Failed
|
|
72
|
-
OUTLINE_ERROR_TITLE = Outline Update Failed
|
|
73
71
|
DOCUMENTATION_ERROR_TITLE = Documentation Error
|
|
74
72
|
DOCUMENTATION_ERROR_DESCRIPTION = An error occurred in getting documentation for {0}. Check the control exists and try again.
|
|
75
|
-
LIBRARY_ERROR_TITLE = Library Error
|
|
76
|
-
INIT_ERROR_TITLE = Control Property Editor Initialization Failed
|
|
77
|
-
CHANGE_SELECTION_ERROR_TITLE = Change Selection Error
|
|
78
|
-
FLP_REGISTER_LIBS_FAILED_TITLE = Registering of Reuse Libraries Failed
|
|
79
73
|
FLP_ADAPTATION_START_FAILED_TITLE = Adaptation Initialization Failed
|
|
80
|
-
FLP_SANDBOX_INIT_FAILED_TITLE = Sandbox Initialization Failed
|
|
81
74
|
FLP_UI_VERSION_RETRIEVAL_FAILURE_TITLE = SAPUI5 Version Retrieval Failed
|
|
82
75
|
FLP_UI_INVALID_UI5_VERSION_DESCRIPTION = Invalid version info
|
|
83
76
|
FLP_UI_VERSION_RETRIEVAL_FAILURE_DESCRIPTION = Could not get the SAPUI5 version of the application. Using {0} as fallback.
|
|
84
77
|
FLP_UI5_VERSION_WARNING_TITLE = SAPUI5 Version Warning
|
|
85
78
|
FLP_UI5_VERSION_WARNING_DESCRIPTION = The current SAPUI5 version set for this adaptation project is {0}. The minimum version for SAPUI5 Adaptation Project and its SAPUI5 Adaptation Editor is {1}. Install version {1} or higher.
|
|
86
|
-
FLP_CARD_GENERATOR_NOT_SUPPORTED_TITLE = Card Generator Not Supported
|
|
87
|
-
FLP_CARD_GENERATOR_NOT_SUPPORTED_DESCRIPTION = The card generator is not supported by the SAPUI5 version you have installed. Install a supported version.
|
|
88
79
|
|
|
89
80
|
TABLE_ROWS_NEEDED_TO_CREATE_CUSTOM_COLUMN=At least one table row is required to create a new custom column. Make sure the table data is loaded and try again.
|
|
90
81
|
|
|
@@ -12,10 +12,17 @@ sap.ui.define([], function () {
|
|
|
12
12
|
function getError(error) {
|
|
13
13
|
return error instanceof Error ? error : new Error(JSON.stringify(error));
|
|
14
14
|
}
|
|
15
|
+
class FetchError extends Error {
|
|
16
|
+
constructor(response) {
|
|
17
|
+
super(`Fetch error: ${response.url}, ${response.status} - ${response.statusText}`);
|
|
18
|
+
this.status = response.status;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
15
21
|
var __exports = {
|
|
16
22
|
__esModule: true
|
|
17
23
|
};
|
|
18
24
|
__exports.getError = getError;
|
|
25
|
+
__exports.FetchError = FetchError;
|
|
19
26
|
return __exports;
|
|
20
27
|
});
|
|
21
28
|
//# sourceMappingURL=error.js.map
|
|
@@ -7,3 +7,12 @@
|
|
|
7
7
|
export function getError(error: unknown): Error {
|
|
8
8
|
return error instanceof Error ? error : new Error(JSON.stringify(error));
|
|
9
9
|
}
|
|
10
|
+
|
|
11
|
+
export class FetchError extends Error {
|
|
12
|
+
readonly status: number;
|
|
13
|
+
|
|
14
|
+
constructor(response: Response) {
|
|
15
|
+
super(`Fetch error: ${response.url}, ${response.status} - ${response.statusText}`);
|
|
16
|
+
this.status = response.status;
|
|
17
|
+
}
|
|
18
|
+
}
|
package/package.json
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"bugs": {
|
|
10
10
|
"url": "https://github.com/SAP/open-ux-tools/issues?q=is%3Aopen+is%3Aissue+label%3Abug+label%3Apreview-middleware"
|
|
11
11
|
},
|
|
12
|
-
"version": "0.
|
|
12
|
+
"version": "0.22.0",
|
|
13
13
|
"license": "Apache-2.0",
|
|
14
14
|
"author": "@SAP/ux-tools-team",
|
|
15
15
|
"main": "dist/index.js",
|
|
@@ -28,8 +28,8 @@
|
|
|
28
28
|
"@sap-ux/adp-tooling": "0.15.18",
|
|
29
29
|
"@sap-ux/btp-utils": "1.1.0",
|
|
30
30
|
"@sap-ux/control-property-editor-sources": "npm:@sap-ux/control-property-editor@0.7.0",
|
|
31
|
-
"@sap-ux/feature-toggle": "0.3.0",
|
|
32
31
|
"@sap-ux/logger": "0.7.0",
|
|
32
|
+
"@sap-ux/feature-toggle": "0.3.0",
|
|
33
33
|
"@sap-ux/project-access": "1.30.12",
|
|
34
34
|
"@sap-ux/system-access": "0.6.12",
|
|
35
35
|
"@sap-ux/i18n": "0.3.3"
|
|
@@ -50,10 +50,10 @@
|
|
|
50
50
|
"nock": "13.4.0",
|
|
51
51
|
"npm-run-all2": "6.2.0",
|
|
52
52
|
"supertest": "7.1.4",
|
|
53
|
-
"@private/preview-middleware-client": "npm:@sap-ux-private/preview-middleware-client@0.
|
|
53
|
+
"@private/preview-middleware-client": "npm:@sap-ux-private/preview-middleware-client@0.16.0",
|
|
54
54
|
"@sap-ux/axios-extension": "1.22.5",
|
|
55
|
-
"@sap-ux/
|
|
56
|
-
"@sap-ux/
|
|
55
|
+
"@sap-ux/ui5-info": "0.12.1",
|
|
56
|
+
"@sap-ux/store": "1.1.2"
|
|
57
57
|
},
|
|
58
58
|
"peerDependencies": {
|
|
59
59
|
"express": "4"
|