@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.
Files changed (116) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +93 -0
  3. package/dist/constants.d.ts +4 -0
  4. package/dist/constants.d.ts.map +1 -0
  5. package/dist/constants.js +7 -0
  6. package/dist/constants.js.map +1 -0
  7. package/dist/error-handler.d.ts +13 -0
  8. package/dist/error-handler.d.ts.map +1 -0
  9. package/dist/error-handler.js +33 -0
  10. package/dist/error-handler.js.map +1 -0
  11. package/dist/i18n.d.ts +14 -0
  12. package/dist/i18n.d.ts.map +1 -0
  13. package/dist/i18n.js +34 -0
  14. package/dist/i18n.js.map +1 -0
  15. package/dist/index.d.ts +27 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/index.js +52 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/logger-helper.d.ts +20 -0
  20. package/dist/logger-helper.d.ts.map +1 -0
  21. package/dist/logger-helper.js +27 -0
  22. package/dist/logger-helper.js.map +1 -0
  23. package/dist/prompts/conditions.d.ts +117 -0
  24. package/dist/prompts/conditions.d.ts.map +1 -0
  25. package/dist/prompts/conditions.js +299 -0
  26. package/dist/prompts/conditions.js.map +1 -0
  27. package/dist/prompts/defaults.d.ts +45 -0
  28. package/dist/prompts/defaults.d.ts.map +1 -0
  29. package/dist/prompts/defaults.js +91 -0
  30. package/dist/prompts/defaults.js.map +1 -0
  31. package/dist/prompts/helpers.d.ts +54 -0
  32. package/dist/prompts/helpers.d.ts.map +1 -0
  33. package/dist/prompts/helpers.js +234 -0
  34. package/dist/prompts/helpers.js.map +1 -0
  35. package/dist/prompts/index.d.ts +9 -0
  36. package/dist/prompts/index.d.ts.map +1 -0
  37. package/dist/prompts/index.js +30 -0
  38. package/dist/prompts/index.js.map +1 -0
  39. package/dist/prompts/prompt-state.d.ts +38 -0
  40. package/dist/prompts/prompt-state.d.ts.map +1 -0
  41. package/dist/prompts/prompt-state.js +59 -0
  42. package/dist/prompts/prompt-state.js.map +1 -0
  43. package/dist/prompts/questions/abap-target.d.ts +10 -0
  44. package/dist/prompts/questions/abap-target.d.ts.map +1 -0
  45. package/dist/prompts/questions/abap-target.js +219 -0
  46. package/dist/prompts/questions/abap-target.js.map +1 -0
  47. package/dist/prompts/questions/auth.d.ts +10 -0
  48. package/dist/prompts/questions/auth.d.ts.map +1 -0
  49. package/dist/prompts/questions/auth.js +55 -0
  50. package/dist/prompts/questions/auth.js.map +1 -0
  51. package/dist/prompts/questions/config/app.d.ts +10 -0
  52. package/dist/prompts/questions/config/app.d.ts.map +1 -0
  53. package/dist/prompts/questions/config/app.js +68 -0
  54. package/dist/prompts/questions/config/app.js.map +1 -0
  55. package/dist/prompts/questions/config/index.d.ts +4 -0
  56. package/dist/prompts/questions/config/index.d.ts.map +1 -0
  57. package/dist/prompts/questions/config/index.js +20 -0
  58. package/dist/prompts/questions/config/index.js.map +1 -0
  59. package/dist/prompts/questions/config/package.d.ts +10 -0
  60. package/dist/prompts/questions/config/package.d.ts.map +1 -0
  61. package/dist/prompts/questions/config/package.js +91 -0
  62. package/dist/prompts/questions/config/package.js.map +1 -0
  63. package/dist/prompts/questions/config/transport.d.ts +10 -0
  64. package/dist/prompts/questions/config/transport.d.ts.map +1 -0
  65. package/dist/prompts/questions/config/transport.js +91 -0
  66. package/dist/prompts/questions/config/transport.js.map +1 -0
  67. package/dist/prompts/questions/confirm.d.ts +10 -0
  68. package/dist/prompts/questions/confirm.d.ts.map +1 -0
  69. package/dist/prompts/questions/confirm.js +55 -0
  70. package/dist/prompts/questions/confirm.js.map +1 -0
  71. package/dist/prompts/questions/index.d.ts +5 -0
  72. package/dist/prompts/questions/index.d.ts.map +1 -0
  73. package/dist/prompts/questions/index.js +21 -0
  74. package/dist/prompts/questions/index.js.map +1 -0
  75. package/dist/prompts/validators.d.ts +138 -0
  76. package/dist/prompts/validators.d.ts.map +1 -0
  77. package/dist/prompts/validators.js +459 -0
  78. package/dist/prompts/validators.js.map +1 -0
  79. package/dist/service-provider-utils/abap-service-provider.d.ts +19 -0
  80. package/dist/service-provider-utils/abap-service-provider.d.ts.map +1 -0
  81. package/dist/service-provider-utils/abap-service-provider.js +89 -0
  82. package/dist/service-provider-utils/abap-service-provider.js.map +1 -0
  83. package/dist/service-provider-utils/create-transport.d.ts +12 -0
  84. package/dist/service-provider-utils/create-transport.d.ts.map +1 -0
  85. package/dist/service-provider-utils/create-transport.js +35 -0
  86. package/dist/service-provider-utils/create-transport.js.map +1 -0
  87. package/dist/service-provider-utils/index.d.ts +6 -0
  88. package/dist/service-provider-utils/index.d.ts.map +1 -0
  89. package/dist/service-provider-utils/index.js +22 -0
  90. package/dist/service-provider-utils/index.js.map +1 -0
  91. package/dist/service-provider-utils/list-packages.d.ts +11 -0
  92. package/dist/service-provider-utils/list-packages.d.ts.map +1 -0
  93. package/dist/service-provider-utils/list-packages.js +37 -0
  94. package/dist/service-provider-utils/list-packages.js.map +1 -0
  95. package/dist/service-provider-utils/transport-config.d.ts +18 -0
  96. package/dist/service-provider-utils/transport-config.d.ts.map +1 -0
  97. package/dist/service-provider-utils/transport-config.js +211 -0
  98. package/dist/service-provider-utils/transport-config.js.map +1 -0
  99. package/dist/service-provider-utils/transport-list.d.ts +16 -0
  100. package/dist/service-provider-utils/transport-list.d.ts.map +1 -0
  101. package/dist/service-provider-utils/transport-list.js +56 -0
  102. package/dist/service-provider-utils/transport-list.js.map +1 -0
  103. package/dist/translations/abap-deploy-config-inquirer.i18n.json +146 -0
  104. package/dist/types.d.ts +165 -0
  105. package/dist/types.d.ts.map +1 -0
  106. package/dist/types.js +46 -0
  107. package/dist/types.js.map +1 -0
  108. package/dist/utils.d.ts +90 -0
  109. package/dist/utils.d.ts.map +1 -0
  110. package/dist/utils.js +233 -0
  111. package/dist/utils.js.map +1 -0
  112. package/dist/validator-utils.d.ts +75 -0
  113. package/dist/validator-utils.d.ts.map +1 -0
  114. package/dist/validator-utils.js +172 -0
  115. package/dist/validator-utils.js.map +1 -0
  116. 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
+ }