@sap-ux/abap-deploy-config-inquirer 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +93 -0
- package/dist/constants.d.ts +4 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +7 -0
- package/dist/constants.js.map +1 -0
- package/dist/error-handler.d.ts +13 -0
- package/dist/error-handler.d.ts.map +1 -0
- package/dist/error-handler.js +33 -0
- package/dist/error-handler.js.map +1 -0
- package/dist/i18n.d.ts +14 -0
- package/dist/i18n.d.ts.map +1 -0
- package/dist/i18n.js +34 -0
- package/dist/i18n.js.map +1 -0
- package/dist/index.d.ts +27 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +52 -0
- package/dist/index.js.map +1 -0
- package/dist/logger-helper.d.ts +20 -0
- package/dist/logger-helper.d.ts.map +1 -0
- package/dist/logger-helper.js +27 -0
- package/dist/logger-helper.js.map +1 -0
- package/dist/prompts/conditions.d.ts +117 -0
- package/dist/prompts/conditions.d.ts.map +1 -0
- package/dist/prompts/conditions.js +299 -0
- package/dist/prompts/conditions.js.map +1 -0
- package/dist/prompts/defaults.d.ts +45 -0
- package/dist/prompts/defaults.d.ts.map +1 -0
- package/dist/prompts/defaults.js +91 -0
- package/dist/prompts/defaults.js.map +1 -0
- package/dist/prompts/helpers.d.ts +54 -0
- package/dist/prompts/helpers.d.ts.map +1 -0
- package/dist/prompts/helpers.js +234 -0
- package/dist/prompts/helpers.js.map +1 -0
- package/dist/prompts/index.d.ts +9 -0
- package/dist/prompts/index.d.ts.map +1 -0
- package/dist/prompts/index.js +30 -0
- package/dist/prompts/index.js.map +1 -0
- package/dist/prompts/prompt-state.d.ts +38 -0
- package/dist/prompts/prompt-state.d.ts.map +1 -0
- package/dist/prompts/prompt-state.js +59 -0
- package/dist/prompts/prompt-state.js.map +1 -0
- package/dist/prompts/questions/abap-target.d.ts +10 -0
- package/dist/prompts/questions/abap-target.d.ts.map +1 -0
- package/dist/prompts/questions/abap-target.js +219 -0
- package/dist/prompts/questions/abap-target.js.map +1 -0
- package/dist/prompts/questions/auth.d.ts +10 -0
- package/dist/prompts/questions/auth.d.ts.map +1 -0
- package/dist/prompts/questions/auth.js +55 -0
- package/dist/prompts/questions/auth.js.map +1 -0
- package/dist/prompts/questions/config/app.d.ts +10 -0
- package/dist/prompts/questions/config/app.d.ts.map +1 -0
- package/dist/prompts/questions/config/app.js +68 -0
- package/dist/prompts/questions/config/app.js.map +1 -0
- package/dist/prompts/questions/config/index.d.ts +4 -0
- package/dist/prompts/questions/config/index.d.ts.map +1 -0
- package/dist/prompts/questions/config/index.js +20 -0
- package/dist/prompts/questions/config/index.js.map +1 -0
- package/dist/prompts/questions/config/package.d.ts +10 -0
- package/dist/prompts/questions/config/package.d.ts.map +1 -0
- package/dist/prompts/questions/config/package.js +91 -0
- package/dist/prompts/questions/config/package.js.map +1 -0
- package/dist/prompts/questions/config/transport.d.ts +10 -0
- package/dist/prompts/questions/config/transport.d.ts.map +1 -0
- package/dist/prompts/questions/config/transport.js +91 -0
- package/dist/prompts/questions/config/transport.js.map +1 -0
- package/dist/prompts/questions/confirm.d.ts +10 -0
- package/dist/prompts/questions/confirm.d.ts.map +1 -0
- package/dist/prompts/questions/confirm.js +55 -0
- package/dist/prompts/questions/confirm.js.map +1 -0
- package/dist/prompts/questions/index.d.ts +5 -0
- package/dist/prompts/questions/index.d.ts.map +1 -0
- package/dist/prompts/questions/index.js +21 -0
- package/dist/prompts/questions/index.js.map +1 -0
- package/dist/prompts/validators.d.ts +138 -0
- package/dist/prompts/validators.d.ts.map +1 -0
- package/dist/prompts/validators.js +459 -0
- package/dist/prompts/validators.js.map +1 -0
- package/dist/service-provider-utils/abap-service-provider.d.ts +19 -0
- package/dist/service-provider-utils/abap-service-provider.d.ts.map +1 -0
- package/dist/service-provider-utils/abap-service-provider.js +89 -0
- package/dist/service-provider-utils/abap-service-provider.js.map +1 -0
- package/dist/service-provider-utils/create-transport.d.ts +12 -0
- package/dist/service-provider-utils/create-transport.d.ts.map +1 -0
- package/dist/service-provider-utils/create-transport.js +35 -0
- package/dist/service-provider-utils/create-transport.js.map +1 -0
- package/dist/service-provider-utils/index.d.ts +6 -0
- package/dist/service-provider-utils/index.d.ts.map +1 -0
- package/dist/service-provider-utils/index.js +22 -0
- package/dist/service-provider-utils/index.js.map +1 -0
- package/dist/service-provider-utils/list-packages.d.ts +11 -0
- package/dist/service-provider-utils/list-packages.d.ts.map +1 -0
- package/dist/service-provider-utils/list-packages.js +37 -0
- package/dist/service-provider-utils/list-packages.js.map +1 -0
- package/dist/service-provider-utils/transport-config.d.ts +18 -0
- package/dist/service-provider-utils/transport-config.d.ts.map +1 -0
- package/dist/service-provider-utils/transport-config.js +211 -0
- package/dist/service-provider-utils/transport-config.js.map +1 -0
- package/dist/service-provider-utils/transport-list.d.ts +16 -0
- package/dist/service-provider-utils/transport-list.d.ts.map +1 -0
- package/dist/service-provider-utils/transport-list.js +56 -0
- package/dist/service-provider-utils/transport-list.js.map +1 -0
- package/dist/translations/abap-deploy-config-inquirer.i18n.json +146 -0
- package/dist/types.d.ts +165 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +46 -0
- package/dist/types.js.map +1 -0
- package/dist/utils.d.ts +90 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +233 -0
- package/dist/utils.js.map +1 -0
- package/dist/validator-utils.d.ts +75 -0
- package/dist/validator-utils.d.ts.map +1 -0
- package/dist/validator-utils.js +172 -0
- package/dist/validator-utils.js.map +1 -0
- package/package.json +48 -0
package/dist/utils.js
ADDED
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.reconcileAnswers = exports.useCreateTrDuringDeploy = exports.getPackageAnswer = exports.queryPackages = exports.initTransportConfig = exports.isSameSystem = exports.findBackendSystemByUrl = exports.findDestination = exports.getAbapSystems = void 0;
|
|
7
|
+
const btp_utils_1 = require("@sap-ux/btp-utils");
|
|
8
|
+
const store_1 = require("@sap-ux/store");
|
|
9
|
+
const types_1 = require("./types");
|
|
10
|
+
const service_provider_utils_1 = require("./service-provider-utils");
|
|
11
|
+
const i18n_1 = require("./i18n");
|
|
12
|
+
const logger_helper_1 = __importDefault(require("./logger-helper"));
|
|
13
|
+
const validator_utils_1 = require("./validator-utils");
|
|
14
|
+
const constants_1 = require("./constants");
|
|
15
|
+
const prompt_state_1 = require("./prompts/prompt-state");
|
|
16
|
+
let cachedDestinations = {};
|
|
17
|
+
let cachedBackendSystems = [];
|
|
18
|
+
/**
|
|
19
|
+
* Retrieve the ABAP systems from the store or the destinations from BTP.
|
|
20
|
+
*
|
|
21
|
+
* @returns destinations or backend systems from the store
|
|
22
|
+
*/
|
|
23
|
+
async function getAbapSystems() {
|
|
24
|
+
let destinations;
|
|
25
|
+
let backendSystems;
|
|
26
|
+
if ((0, btp_utils_1.isAppStudio)()) {
|
|
27
|
+
destinations = await (0, btp_utils_1.listDestinations)();
|
|
28
|
+
cachedDestinations = destinations;
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
const systemStore = await (0, store_1.getService)({
|
|
32
|
+
logger: logger_helper_1.default.logger,
|
|
33
|
+
entityName: 'system'
|
|
34
|
+
});
|
|
35
|
+
backendSystems = await systemStore.getAll();
|
|
36
|
+
cachedBackendSystems = backendSystems;
|
|
37
|
+
}
|
|
38
|
+
return { destinations, backendSystems };
|
|
39
|
+
}
|
|
40
|
+
exports.getAbapSystems = getAbapSystems;
|
|
41
|
+
/**
|
|
42
|
+
* Retrieve a specific Destination, based on the destination name.
|
|
43
|
+
*
|
|
44
|
+
* @param destination - destination name
|
|
45
|
+
* @returns destination if found
|
|
46
|
+
*/
|
|
47
|
+
function findDestination(destination) {
|
|
48
|
+
return cachedDestinations?.[destination];
|
|
49
|
+
}
|
|
50
|
+
exports.findDestination = findDestination;
|
|
51
|
+
/**
|
|
52
|
+
* Retrieve a specific BackendSystem, based on the URL.
|
|
53
|
+
*
|
|
54
|
+
* @param backendUrl - backend system URL
|
|
55
|
+
* @returns backend system if found
|
|
56
|
+
*/
|
|
57
|
+
function findBackendSystemByUrl(backendUrl) {
|
|
58
|
+
return cachedBackendSystems?.find((backend) => backend.url === backendUrl);
|
|
59
|
+
}
|
|
60
|
+
exports.findBackendSystemByUrl = findBackendSystemByUrl;
|
|
61
|
+
/**
|
|
62
|
+
* Check if the current system is the same as the one in the answers.
|
|
63
|
+
*
|
|
64
|
+
* @param abapSystem - system configuration
|
|
65
|
+
* @param url - url
|
|
66
|
+
* @param client - client
|
|
67
|
+
* @param destination - destination
|
|
68
|
+
* @returns true if the system is the same
|
|
69
|
+
*/
|
|
70
|
+
function isSameSystem(abapSystem, url, client, destination) {
|
|
71
|
+
return Boolean((abapSystem?.url &&
|
|
72
|
+
abapSystem.url.trim()?.replace(/\/$/, '') === url?.trim()?.replace(/\/$/, '') &&
|
|
73
|
+
abapSystem.client === client) ??
|
|
74
|
+
(!!abapSystem?.destination && destination === abapSystem?.destination));
|
|
75
|
+
}
|
|
76
|
+
exports.isSameSystem = isSameSystem;
|
|
77
|
+
/**
|
|
78
|
+
* Get transport configuration from the backend.
|
|
79
|
+
*
|
|
80
|
+
* @param transportConfigParams - transport configuration parameters
|
|
81
|
+
* @param transportConfigParams.backendTarget - backend target from prompt options
|
|
82
|
+
* @param transportConfigParams.scp - scp
|
|
83
|
+
* @param transportConfigParams.url - url
|
|
84
|
+
* @param transportConfigParams.client - client
|
|
85
|
+
* @param transportConfigParams.destination - destination
|
|
86
|
+
* @param transportConfigParams.errorHandler - error handler
|
|
87
|
+
* @param transportConfigParams.credentials - user credentials
|
|
88
|
+
* @returns transport configuration
|
|
89
|
+
*/
|
|
90
|
+
async function initTransportConfig({ backendTarget, scp, url, client, destination, credentials, errorHandler }) {
|
|
91
|
+
let result = {};
|
|
92
|
+
if (!url && !destination) {
|
|
93
|
+
return result;
|
|
94
|
+
}
|
|
95
|
+
const systemConfig = {
|
|
96
|
+
url,
|
|
97
|
+
client,
|
|
98
|
+
destination
|
|
99
|
+
};
|
|
100
|
+
try {
|
|
101
|
+
result = await (0, service_provider_utils_1.getTransportConfigInstance)({
|
|
102
|
+
backendTarget,
|
|
103
|
+
scp,
|
|
104
|
+
credentials,
|
|
105
|
+
systemConfig
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
catch (e) {
|
|
109
|
+
result.error = e;
|
|
110
|
+
}
|
|
111
|
+
if (result.error) {
|
|
112
|
+
errorHandler(result.error);
|
|
113
|
+
logger_helper_1.default.logger.debug((0, i18n_1.t)('errors.debugAbapTargetSystem', { method: 'initTransportConfig', error: result.error }));
|
|
114
|
+
}
|
|
115
|
+
return result;
|
|
116
|
+
}
|
|
117
|
+
exports.initTransportConfig = initTransportConfig;
|
|
118
|
+
/**
|
|
119
|
+
* Querying package names that match the user input.
|
|
120
|
+
*
|
|
121
|
+
* @param input - user input
|
|
122
|
+
* @param inputSystemConfig System configuration extracted from user answers for establishing backend connection
|
|
123
|
+
* @param backendTarget - backend target from abap deploy config prompt options
|
|
124
|
+
* @returns list of package names
|
|
125
|
+
*/
|
|
126
|
+
async function queryPackages(input, inputSystemConfig, backendTarget) {
|
|
127
|
+
const uppercaseInput = (input ?? '').toUpperCase();
|
|
128
|
+
return (0, validator_utils_1.listPackages)(uppercaseInput, inputSystemConfig, backendTarget);
|
|
129
|
+
}
|
|
130
|
+
exports.queryPackages = queryPackages;
|
|
131
|
+
/**
|
|
132
|
+
* Determines the package from the various package related prompts.
|
|
133
|
+
*
|
|
134
|
+
* @param previousAnswers - previous answers
|
|
135
|
+
* @returns package name
|
|
136
|
+
*/
|
|
137
|
+
function getPackageAnswer(previousAnswers) {
|
|
138
|
+
// Older versions of YUI do not have a packageInputChoice question
|
|
139
|
+
return prompt_state_1.PromptState.abapDeployConfig.package ??
|
|
140
|
+
previousAnswers?.packageInputChoice === types_1.PackageInputChoices.ListExistingChoice
|
|
141
|
+
? previousAnswers?.packageAutocomplete ?? ''
|
|
142
|
+
: previousAnswers?.packageManual ?? '';
|
|
143
|
+
}
|
|
144
|
+
exports.getPackageAnswer = getPackageAnswer;
|
|
145
|
+
/**
|
|
146
|
+
* Determines the transport request from the various transport related prompts.
|
|
147
|
+
*
|
|
148
|
+
* @param previousAnswers - previous answers
|
|
149
|
+
* @returns transport request
|
|
150
|
+
*/
|
|
151
|
+
function getTransportAnswer(previousAnswers) {
|
|
152
|
+
return (previousAnswers?.transportManual ||
|
|
153
|
+
previousAnswers?.transportFromList ||
|
|
154
|
+
previousAnswers?.transportCreated ||
|
|
155
|
+
(previousAnswers?.transportInputChoice === types_1.TransportChoices.CreateDuringDeployChoice
|
|
156
|
+
? constants_1.CREATE_TR_DURING_DEPLOY
|
|
157
|
+
: ''));
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* If a deploy config already exists in the project, check if the config
|
|
161
|
+
* uses option to create transport request number during actual deploy process.
|
|
162
|
+
*
|
|
163
|
+
* @param existingDeployTaskConfig - existing deploy task config
|
|
164
|
+
* @returns true if transport setting is set to 'CreateDuringDeployChoice'.
|
|
165
|
+
*/
|
|
166
|
+
function useCreateTrDuringDeploy(existingDeployTaskConfig) {
|
|
167
|
+
return existingDeployTaskConfig?.transport === constants_1.CREATE_TR_DURING_DEPLOY;
|
|
168
|
+
}
|
|
169
|
+
exports.useCreateTrDuringDeploy = useCreateTrDuringDeploy;
|
|
170
|
+
/**
|
|
171
|
+
* Determines the url from the various sources.
|
|
172
|
+
*
|
|
173
|
+
* @param answers - internal abap deploy config answers
|
|
174
|
+
* @returns url if found
|
|
175
|
+
*/
|
|
176
|
+
function getUrlAnswer(answers) {
|
|
177
|
+
let url;
|
|
178
|
+
if (answers.targetSystem && answers.targetSystem === "Url" /* TargetSystemType.Url */ && answers.url) {
|
|
179
|
+
url = answers.url;
|
|
180
|
+
}
|
|
181
|
+
else if (prompt_state_1.PromptState.abapDeployConfig.url) {
|
|
182
|
+
url = prompt_state_1.PromptState.abapDeployConfig.url;
|
|
183
|
+
}
|
|
184
|
+
return url;
|
|
185
|
+
}
|
|
186
|
+
/**
|
|
187
|
+
* Convert internal answers to external answers to be used for writing deploy config.
|
|
188
|
+
*
|
|
189
|
+
* @param answers - internal abap deploy config answers
|
|
190
|
+
* @returns - external abap deploy config answers
|
|
191
|
+
*/
|
|
192
|
+
function reconcileAnswers(answers) {
|
|
193
|
+
const reconciledAnswers = {};
|
|
194
|
+
if (answers.destination) {
|
|
195
|
+
reconciledAnswers.destination = answers.destination;
|
|
196
|
+
}
|
|
197
|
+
if (answers.targetSystem && answers.targetSystem !== "Url" /* TargetSystemType.Url */) {
|
|
198
|
+
reconciledAnswers.url = answers.targetSystem;
|
|
199
|
+
}
|
|
200
|
+
const url = getUrlAnswer(answers);
|
|
201
|
+
if (url) {
|
|
202
|
+
reconciledAnswers.url = url;
|
|
203
|
+
}
|
|
204
|
+
if (answers.client || prompt_state_1.PromptState.abapDeployConfig.client) {
|
|
205
|
+
reconciledAnswers.client = answers.client || prompt_state_1.PromptState.abapDeployConfig.client;
|
|
206
|
+
}
|
|
207
|
+
if (answers.scp || prompt_state_1.PromptState.abapDeployConfig.scp) {
|
|
208
|
+
reconciledAnswers.scp = true;
|
|
209
|
+
}
|
|
210
|
+
if (answers.ui5AbapRepo) {
|
|
211
|
+
reconciledAnswers.ui5AbapRepo = answers.ui5AbapRepo;
|
|
212
|
+
}
|
|
213
|
+
if (answers.description) {
|
|
214
|
+
reconciledAnswers.description = answers.description;
|
|
215
|
+
}
|
|
216
|
+
const packageAnswer = getPackageAnswer(answers);
|
|
217
|
+
if (packageAnswer) {
|
|
218
|
+
reconciledAnswers.package = packageAnswer;
|
|
219
|
+
}
|
|
220
|
+
const transportAnswer = getTransportAnswer(answers);
|
|
221
|
+
if (transportAnswer) {
|
|
222
|
+
reconciledAnswers.transport = transportAnswer;
|
|
223
|
+
}
|
|
224
|
+
if (answers.index !== undefined) {
|
|
225
|
+
reconciledAnswers.index = answers.index;
|
|
226
|
+
}
|
|
227
|
+
if (answers.overwrite !== undefined) {
|
|
228
|
+
reconciledAnswers.overwrite = answers.overwrite;
|
|
229
|
+
}
|
|
230
|
+
return reconciledAnswers;
|
|
231
|
+
}
|
|
232
|
+
exports.reconcileAnswers = reconcileAnswers;
|
|
233
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import type { BackendTarget, SystemConfig, TransportListItem } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Checks if the input is an empty string.
|
|
4
|
+
*
|
|
5
|
+
* @param urlString - input string
|
|
6
|
+
* @returns boolean
|
|
7
|
+
*/
|
|
8
|
+
export declare function isEmptyString(urlString: string): boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Determines if the input is a valid URL.
|
|
11
|
+
*
|
|
12
|
+
* @param input - input string
|
|
13
|
+
* @returns boolean
|
|
14
|
+
*/
|
|
15
|
+
export declare function isValidUrl(input: string): boolean;
|
|
16
|
+
/**
|
|
17
|
+
* Returns true if the input is valid for the client. If the input is empty, it is considered valid.
|
|
18
|
+
*
|
|
19
|
+
* @param client - client string input
|
|
20
|
+
* @returns boolean
|
|
21
|
+
*/
|
|
22
|
+
export declare function isValidClient(client: string): boolean;
|
|
23
|
+
/**
|
|
24
|
+
* Returns true if the input does not exist, or if it exists but it is invalid.
|
|
25
|
+
*
|
|
26
|
+
* @param client - input string
|
|
27
|
+
* @returns boolean
|
|
28
|
+
*/
|
|
29
|
+
export declare function clientDoesNotExistOrInvalid(client?: string): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Returns the list of packages for the given input.
|
|
32
|
+
*
|
|
33
|
+
* @param input - input string
|
|
34
|
+
* @param systemConfig - system configuration
|
|
35
|
+
* @param backendTarget - backend target from abap deploy config prompt options
|
|
36
|
+
* @returns list of packages
|
|
37
|
+
*/
|
|
38
|
+
export declare function listPackages(input: string, systemConfig: SystemConfig, backendTarget?: BackendTarget): Promise<string[]>;
|
|
39
|
+
/**
|
|
40
|
+
* Determines if the app name is valid.
|
|
41
|
+
*
|
|
42
|
+
* @param name - name provided for the app
|
|
43
|
+
* @returns valid: boolean, errorMessage: string | undefined
|
|
44
|
+
*/
|
|
45
|
+
export declare function isAppNameValid(name: string): {
|
|
46
|
+
valid: boolean;
|
|
47
|
+
errorMessage: string | undefined;
|
|
48
|
+
} | undefined;
|
|
49
|
+
/**
|
|
50
|
+
* Returns the list of transport numbers.
|
|
51
|
+
*
|
|
52
|
+
* @param packageName - package name
|
|
53
|
+
* @param appName - app name
|
|
54
|
+
* @param systemConfig - system configuration
|
|
55
|
+
* @param backendTarget - backend target
|
|
56
|
+
* @returns list of transport numbers
|
|
57
|
+
*/
|
|
58
|
+
export declare function getTransportList(packageName: string, appName: string, systemConfig: SystemConfig, backendTarget?: BackendTarget): Promise<TransportListItem[] | undefined>;
|
|
59
|
+
/**
|
|
60
|
+
* Create a transport number from the service.
|
|
61
|
+
*
|
|
62
|
+
* @param createTransportParams - input parameters for creating a new transport request for an UI5 app object
|
|
63
|
+
* @param createTransportParams.packageName - package name
|
|
64
|
+
* @param createTransportParams.ui5AppName - UI5 app name
|
|
65
|
+
* @param createTransportParams.description - transport request description
|
|
66
|
+
* @param systemConfig - system configuration
|
|
67
|
+
* @param backendTarget - backend target
|
|
68
|
+
* @returns transport number if created successfully, otherwise undefined
|
|
69
|
+
*/
|
|
70
|
+
export declare function createTransportNumber(createTransportParams: {
|
|
71
|
+
packageName: string;
|
|
72
|
+
ui5AppName: string;
|
|
73
|
+
description: string;
|
|
74
|
+
}, systemConfig: SystemConfig, backendTarget?: BackendTarget): Promise<string | undefined>;
|
|
75
|
+
//# sourceMappingURL=validator-utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validator-utils.d.ts","sourceRoot":"","sources":["../src/validator-utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE9E;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAExD;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAOjD;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAGrD;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAEpE;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAC9B,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,YAAY,EAC1B,aAAa,CAAC,EAAE,aAAa,GAC9B,OAAO,CAAC,MAAM,EAAE,CAAC,CAMnB;AA+CD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,GAAG,SAAS,CAmB7G;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAClC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,YAAY,EAC1B,aAAa,CAAC,EAAE,aAAa,GAC9B,OAAO,CAAC,iBAAiB,EAAE,GAAG,SAAS,CAAC,CAO1C;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,qBAAqB,CACvC,qBAAqB,EAAE;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACvB,EACD,YAAY,EAAE,YAAY,EAC1B,aAAa,CAAC,EAAE,aAAa,GAC9B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAM7B"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createTransportNumber = exports.getTransportList = exports.isAppNameValid = exports.listPackages = exports.clientDoesNotExistOrInvalid = exports.isValidClient = exports.isValidUrl = exports.isEmptyString = void 0;
|
|
4
|
+
const i18n_1 = require("./i18n");
|
|
5
|
+
const prompt_state_1 = require("./prompts/prompt-state");
|
|
6
|
+
const service_provider_utils_1 = require("./service-provider-utils");
|
|
7
|
+
/**
|
|
8
|
+
* Checks if the input is an empty string.
|
|
9
|
+
*
|
|
10
|
+
* @param urlString - input string
|
|
11
|
+
* @returns boolean
|
|
12
|
+
*/
|
|
13
|
+
function isEmptyString(urlString) {
|
|
14
|
+
return !urlString || !/\S/.test(urlString);
|
|
15
|
+
}
|
|
16
|
+
exports.isEmptyString = isEmptyString;
|
|
17
|
+
/**
|
|
18
|
+
* Determines if the input is a valid URL.
|
|
19
|
+
*
|
|
20
|
+
* @param input - input string
|
|
21
|
+
* @returns boolean
|
|
22
|
+
*/
|
|
23
|
+
function isValidUrl(input) {
|
|
24
|
+
try {
|
|
25
|
+
const url = new URL(input);
|
|
26
|
+
return !!url.protocol && !!url.host;
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
exports.isValidUrl = isValidUrl;
|
|
33
|
+
/**
|
|
34
|
+
* Returns true if the input is valid for the client. If the input is empty, it is considered valid.
|
|
35
|
+
*
|
|
36
|
+
* @param client - client string input
|
|
37
|
+
* @returns boolean
|
|
38
|
+
*/
|
|
39
|
+
function isValidClient(client) {
|
|
40
|
+
const regex = /^\d{3}$/;
|
|
41
|
+
return !!regex.exec(client);
|
|
42
|
+
}
|
|
43
|
+
exports.isValidClient = isValidClient;
|
|
44
|
+
/**
|
|
45
|
+
* Returns true if the input does not exist, or if it exists but it is invalid.
|
|
46
|
+
*
|
|
47
|
+
* @param client - input string
|
|
48
|
+
* @returns boolean
|
|
49
|
+
*/
|
|
50
|
+
function clientDoesNotExistOrInvalid(client) {
|
|
51
|
+
return Boolean(!client || (client && !isValidClient(client)));
|
|
52
|
+
}
|
|
53
|
+
exports.clientDoesNotExistOrInvalid = clientDoesNotExistOrInvalid;
|
|
54
|
+
/**
|
|
55
|
+
* Returns the list of packages for the given input.
|
|
56
|
+
*
|
|
57
|
+
* @param input - input string
|
|
58
|
+
* @param systemConfig - system configuration
|
|
59
|
+
* @param backendTarget - backend target from abap deploy config prompt options
|
|
60
|
+
* @returns list of packages
|
|
61
|
+
*/
|
|
62
|
+
async function listPackages(input, systemConfig, backendTarget) {
|
|
63
|
+
if (!systemConfig.url && !systemConfig.destination) {
|
|
64
|
+
return [];
|
|
65
|
+
}
|
|
66
|
+
return (0, service_provider_utils_1.listPackagesFromService)(input, systemConfig, backendTarget);
|
|
67
|
+
}
|
|
68
|
+
exports.listPackages = listPackages;
|
|
69
|
+
/**
|
|
70
|
+
* Temporary duplication of `validateAppName` from `@sap-ux/project-input-validator` until i18n loading issue is resolved.
|
|
71
|
+
* Validator Fiori app name is compatible with Fiori project requirements.
|
|
72
|
+
*
|
|
73
|
+
* @param name Fiori app name
|
|
74
|
+
* @param prefix Prefix required by backend system
|
|
75
|
+
* @returns True or error message
|
|
76
|
+
*/
|
|
77
|
+
function validateAppName(name, prefix) {
|
|
78
|
+
const length = name ? name.trim().length : 0;
|
|
79
|
+
if (!length) {
|
|
80
|
+
return (0, i18n_1.t)('errors.validators.appNameRequired');
|
|
81
|
+
}
|
|
82
|
+
if (name.split('/').length > 3) {
|
|
83
|
+
return (0, i18n_1.t)('errors.validators.abapInvalidNamespace');
|
|
84
|
+
}
|
|
85
|
+
else if (/^\/.*\/\w*$/g.test(name)) {
|
|
86
|
+
const splitNames = name.split('/');
|
|
87
|
+
let accumulatedMsg = '';
|
|
88
|
+
if (splitNames[1].length > 10) {
|
|
89
|
+
const errMsg = (0, i18n_1.t)('errors.validators.abapInvalidNamespaceLength', { length: splitNames[1].length });
|
|
90
|
+
accumulatedMsg += `${errMsg}, `;
|
|
91
|
+
}
|
|
92
|
+
if (splitNames[2].length > 15) {
|
|
93
|
+
const errMsg = (0, i18n_1.t)('errors.validators.abapInvalidAppNameLength', { length: splitNames[2].length });
|
|
94
|
+
accumulatedMsg += `${errMsg}, `;
|
|
95
|
+
}
|
|
96
|
+
if (accumulatedMsg) {
|
|
97
|
+
accumulatedMsg = accumulatedMsg.substring(0, accumulatedMsg.length - 2);
|
|
98
|
+
return accumulatedMsg;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
else if (length > 15) {
|
|
102
|
+
return (0, i18n_1.t)('errors.validators.abapInvalidAppNameLength', { length });
|
|
103
|
+
}
|
|
104
|
+
if (prefix && !name.toUpperCase().startsWith(prefix.toUpperCase())) {
|
|
105
|
+
return (0, i18n_1.t)('errors.validators.abapInvalidAppName', { prefix });
|
|
106
|
+
}
|
|
107
|
+
if (!/^[A-Za-z0-9_/]*$/.test(name)) {
|
|
108
|
+
return (0, i18n_1.t)('errors.validators.charactersForbiddenInAppName');
|
|
109
|
+
}
|
|
110
|
+
return true;
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Determines if the app name is valid.
|
|
114
|
+
*
|
|
115
|
+
* @param name - name provided for the app
|
|
116
|
+
* @returns valid: boolean, errorMessage: string | undefined
|
|
117
|
+
*/
|
|
118
|
+
function isAppNameValid(name) {
|
|
119
|
+
const prefix = prompt_state_1.PromptState.transportAnswers.transportConfig?.getApplicationPrefix();
|
|
120
|
+
const appValidation = validateAppName(name, prefix);
|
|
121
|
+
let result;
|
|
122
|
+
if (appValidation === true) {
|
|
123
|
+
result = {
|
|
124
|
+
valid: true,
|
|
125
|
+
errorMessage: undefined
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
if (typeof appValidation === 'string') {
|
|
129
|
+
result = {
|
|
130
|
+
valid: false,
|
|
131
|
+
errorMessage: appValidation
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
return result;
|
|
135
|
+
}
|
|
136
|
+
exports.isAppNameValid = isAppNameValid;
|
|
137
|
+
/**
|
|
138
|
+
* Returns the list of transport numbers.
|
|
139
|
+
*
|
|
140
|
+
* @param packageName - package name
|
|
141
|
+
* @param appName - app name
|
|
142
|
+
* @param systemConfig - system configuration
|
|
143
|
+
* @param backendTarget - backend target
|
|
144
|
+
* @returns list of transport numbers
|
|
145
|
+
*/
|
|
146
|
+
async function getTransportList(packageName, appName, systemConfig, backendTarget) {
|
|
147
|
+
if (!systemConfig.url && !systemConfig.destination) {
|
|
148
|
+
return undefined;
|
|
149
|
+
}
|
|
150
|
+
const transportList = await (0, service_provider_utils_1.getTransportListFromService)(packageName, appName, systemConfig, backendTarget);
|
|
151
|
+
return transportList?.length === 1 && transportList[0].transportReqNumber === '' ? [] : transportList;
|
|
152
|
+
}
|
|
153
|
+
exports.getTransportList = getTransportList;
|
|
154
|
+
/**
|
|
155
|
+
* Create a transport number from the service.
|
|
156
|
+
*
|
|
157
|
+
* @param createTransportParams - input parameters for creating a new transport request for an UI5 app object
|
|
158
|
+
* @param createTransportParams.packageName - package name
|
|
159
|
+
* @param createTransportParams.ui5AppName - UI5 app name
|
|
160
|
+
* @param createTransportParams.description - transport request description
|
|
161
|
+
* @param systemConfig - system configuration
|
|
162
|
+
* @param backendTarget - backend target
|
|
163
|
+
* @returns transport number if created successfully, otherwise undefined
|
|
164
|
+
*/
|
|
165
|
+
async function createTransportNumber(createTransportParams, systemConfig, backendTarget) {
|
|
166
|
+
if (!systemConfig.url && !systemConfig.destination) {
|
|
167
|
+
return undefined;
|
|
168
|
+
}
|
|
169
|
+
return (0, service_provider_utils_1.createTransportNumberFromService)(createTransportParams, systemConfig, backendTarget);
|
|
170
|
+
}
|
|
171
|
+
exports.createTransportNumber = createTransportNumber;
|
|
172
|
+
//# sourceMappingURL=validator-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validator-utils.js","sourceRoot":"","sources":["../src/validator-utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@sap-ux/abap-deploy-config-inquirer",
|
|
3
|
+
"description": "Prompts module that can provide prompts for the abap deployment config writer",
|
|
4
|
+
"repository": {
|
|
5
|
+
"type": "git",
|
|
6
|
+
"url": "https://github.com/SAP/open-ux-tools.git",
|
|
7
|
+
"directory": "packages/abap-deploy-config-inquirer"
|
|
8
|
+
},
|
|
9
|
+
"version": "0.0.1",
|
|
10
|
+
"license": "Apache-2.0",
|
|
11
|
+
"main": "dist/index.js",
|
|
12
|
+
"files": [
|
|
13
|
+
"LICENSE",
|
|
14
|
+
"dist"
|
|
15
|
+
],
|
|
16
|
+
"engines": {
|
|
17
|
+
"node": ">=18.x"
|
|
18
|
+
},
|
|
19
|
+
"dependencies": {
|
|
20
|
+
"i18next": "23.5.1",
|
|
21
|
+
"@sap-ux/axios-extension": "1.16.4",
|
|
22
|
+
"@sap-ux/btp-utils": "0.15.1",
|
|
23
|
+
"@sap-ux/feature-toggle": "0.2.0",
|
|
24
|
+
"@sap-ux/fiori-generator-shared": "0.3.14",
|
|
25
|
+
"@sap-ux/inquirer-common": "0.4.6",
|
|
26
|
+
"@sap-ux/logger": "0.6.0",
|
|
27
|
+
"@sap-ux/store": "0.9.1",
|
|
28
|
+
"@sap-ux/system-access": "0.5.9",
|
|
29
|
+
"@sap-ux/ui5-config": "0.24.0"
|
|
30
|
+
},
|
|
31
|
+
"devDependencies": {
|
|
32
|
+
"@types/inquirer": "8.2.6",
|
|
33
|
+
"@types/inquirer-autocomplete-prompt": "2.0.1",
|
|
34
|
+
"@sap-devx/yeoman-ui-types": "1.14.4"
|
|
35
|
+
},
|
|
36
|
+
"scripts": {
|
|
37
|
+
"build": "tsc --build",
|
|
38
|
+
"watch": "tsc --watch",
|
|
39
|
+
"clean": "rimraf --glob dist test/test-output coverage *.tsbuildinfo",
|
|
40
|
+
"format": "prettier --write '**/*.{js,json,ts,yaml,yml}' --ignore-path ../../.prettierignore",
|
|
41
|
+
"lint": "eslint . --ext .ts",
|
|
42
|
+
"lint:fix": "eslint . --ext .ts --fix",
|
|
43
|
+
"test": "jest --ci --forceExit --detectOpenHandles --colors",
|
|
44
|
+
"test-u": "jest --ci --forceExit --detectOpenHandles --colors -u",
|
|
45
|
+
"link": "pnpm link --global",
|
|
46
|
+
"unlink": "pnpm unlink --global"
|
|
47
|
+
}
|
|
48
|
+
}
|