@sap-ux/annotation-generator 0.1.0 → 0.1.2

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.
@@ -1,13 +1,4 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
3
  exports.generateAnnotations = void 0;
13
4
  const fiori_annotation_api_1 = require("@sap-ux/fiori-annotation-api");
@@ -37,62 +28,56 @@ const VALUE_LIST_PROP_NAME_VALUE_LIST_PROPERTY = 'ValueListProperty';
37
28
  * @param options - Annotation generation options.
38
29
  * @returns true if annotations were generated.
39
30
  */
40
- function generateAnnotations(fs, annotationServiceParams, options) {
41
- return __awaiter(this, void 0, void 0, function* () {
42
- let annotationsGenerated = false;
43
- const { entitySetName, annotationFilePath, addFacets, addLineItems, addValueHelps } = options;
44
- const context = yield getContext(fs, entitySetName, annotationFilePath, annotationServiceParams);
45
- if (addFacets) {
46
- const generated = yield generateDefaultFacets(context);
47
- annotationsGenerated = annotationsGenerated || generated;
48
- }
49
- if (addLineItems) {
50
- const generated = yield generateDefaultLineItem(context);
51
- annotationsGenerated = annotationsGenerated || generated;
52
- }
53
- if (addValueHelps) {
54
- const generated = yield generateValueHelps(context);
55
- annotationsGenerated = annotationsGenerated || generated;
56
- }
57
- return annotationsGenerated;
58
- });
31
+ async function generateAnnotations(fs, annotationServiceParams, options) {
32
+ let annotationsGenerated = false;
33
+ const { entitySetName, annotationFilePath, addFacets, addLineItems, addValueHelps } = options;
34
+ const context = await getContext(fs, entitySetName, annotationFilePath, annotationServiceParams);
35
+ if (addFacets) {
36
+ const generated = await generateDefaultFacets(context);
37
+ annotationsGenerated = annotationsGenerated || generated;
38
+ }
39
+ if (addLineItems) {
40
+ const generated = await generateDefaultLineItem(context);
41
+ annotationsGenerated = annotationsGenerated || generated;
42
+ }
43
+ if (addValueHelps) {
44
+ const generated = await generateValueHelps(context);
45
+ annotationsGenerated = annotationsGenerated || generated;
46
+ }
47
+ return annotationsGenerated;
59
48
  }
60
49
  exports.generateAnnotations = generateAnnotations;
61
- function adaptProject(projectOrRoot) {
62
- return __awaiter(this, void 0, void 0, function* () {
63
- if (typeof projectOrRoot === 'string') {
64
- // On Windows platform when called from the Application Wizard the root path may contain lowercase drive letter
65
- // This causes annotation generation error in Fiori annotation API, thus needs adaptation
66
- const root = (0, utils_1.adaptFilePath)(projectOrRoot);
67
- return yield (0, project_access_1.getProject)(root);
68
- }
69
- else {
70
- return projectOrRoot;
71
- }
72
- });
50
+ async function adaptProject(projectOrRoot) {
51
+ if (typeof projectOrRoot === 'string') {
52
+ // On Windows platform when called from the Application Wizard the root path may contain lowercase drive letter
53
+ // This causes annotation generation error in Fiori annotation API, thus needs adaptation
54
+ const root = (0, utils_1.adaptFilePath)(projectOrRoot);
55
+ return await (0, project_access_1.getProject)(root);
56
+ }
57
+ else {
58
+ return projectOrRoot;
59
+ }
73
60
  }
74
- function getContext(fs, entitySetName, annotationFilePath, annotationServiceParams) {
75
- return __awaiter(this, void 0, void 0, function* () {
76
- const { project, serviceName, appName } = annotationServiceParams;
77
- const projectInstance = yield adaptProject(project);
78
- const annotationService = yield fiori_annotation_api_1.FioriAnnotationService.createService(projectInstance, serviceName, appName !== null && appName !== void 0 ? appName : '', fs, {
79
- commitOnSave: false,
80
- clearFileResolutionCache: true
81
- });
82
- yield annotationService.sync();
83
- const convertedSchema = (0, annotation_converter_1.convert)(annotationService.getSchema());
84
- const metadataService = annotationService.getMetadataService();
85
- const { entityType, entityTypeName } = findEntityType(convertedSchema, entitySetName);
86
- return {
87
- annotationService,
88
- annotationFilePath,
89
- project: projectInstance,
90
- metadataService,
91
- convertedSchema,
92
- entityTypeName,
93
- entityType
94
- };
61
+ async function getContext(fs, entitySetName, annotationFilePath, annotationServiceParams) {
62
+ const { project, serviceName, appName } = annotationServiceParams;
63
+ const projectInstance = await adaptProject(project);
64
+ const annotationService = await fiori_annotation_api_1.FioriAnnotationService.createService(projectInstance, serviceName, appName ?? '', fs, {
65
+ commitOnSave: false,
66
+ clearFileResolutionCache: true
95
67
  });
68
+ await annotationService.sync();
69
+ const convertedSchema = (0, annotation_converter_1.convert)(annotationService.getSchema());
70
+ const metadataService = annotationService.getMetadataService();
71
+ const { entityType, entityTypeName } = findEntityType(convertedSchema, entitySetName);
72
+ return {
73
+ annotationService,
74
+ annotationFilePath,
75
+ project: projectInstance,
76
+ metadataService,
77
+ convertedSchema,
78
+ entityTypeName,
79
+ entityType
80
+ };
96
81
  }
97
82
  /**
98
83
  * Generate UI.Facets annotation:
@@ -104,78 +89,73 @@ function getContext(fs, entitySetName, annotationFilePath, annotationServicePara
104
89
  * @param context - Generation context.
105
90
  * @returns True if annotations were generated successfully and false if they already exist.
106
91
  */
107
- function generateDefaultFacets(context) {
108
- var _a;
109
- return __awaiter(this, void 0, void 0, function* () {
110
- let exception;
111
- try {
112
- const { annotationService, annotationFilePath, project, entityType, entityTypeName } = context;
113
- const existingFacets = (_a = entityType.annotations.UI) === null || _a === void 0 ? void 0 : _a.Facets;
114
- if (existingFacets) {
115
- return false; // UI.Facets already exist
116
- }
117
- const fieldGroup = generateFieldGroup(context);
118
- const facetsAnnotation = {
119
- term: "com.sap.vocabularies.UI.v1.Facets" /* UIAnnotationTerms.Facets */,
120
- collection: []
121
- };
122
- // add new facet to UI.Facets
123
- const facet = {
124
- type: "com.sap.vocabularies.UI.v1.ReferenceFacet" /* UIAnnotationTypes.ReferenceFacet */,
125
- propertyValues: [
126
- { name: FACETS_PROP_NAME_ID, value: { type: 'String', String: 'GeneratedFacet1' } },
127
- { name: FACETS_PROP_NAME_LABEL, value: { type: 'String', String: 'General Information' } },
128
- {
129
- name: FACETS_PROP_NAME_TARGET,
130
- value: {
131
- type: 'AnnotationPath',
132
- AnnotationPath: `@${fieldGroup.term}#${fieldGroup.qualifier}`
133
- }
134
- }
135
- ]
136
- };
137
- facetsAnnotation.collection.push(facet);
138
- const uri = (0, url_1.pathToFileURL)((0, path_1.join)(project.root, annotationFilePath)).toString();
139
- const changes = [
140
- {
141
- uri,
142
- kind: fiori_annotation_api_1.ChangeType.InsertAnnotation,
143
- content: {
144
- target: entityTypeName,
145
- type: 'annotation',
146
- value: fieldGroup
147
- }
148
- },
92
+ async function generateDefaultFacets(context) {
93
+ let exception;
94
+ try {
95
+ const { annotationService, annotationFilePath, project, entityType, entityTypeName } = context;
96
+ const existingFacets = entityType.annotations.UI?.Facets;
97
+ if (existingFacets) {
98
+ return false; // UI.Facets already exist
99
+ }
100
+ const fieldGroup = generateFieldGroup(context);
101
+ const facetsAnnotation = {
102
+ term: "com.sap.vocabularies.UI.v1.Facets" /* UIAnnotationTerms.Facets */,
103
+ collection: []
104
+ };
105
+ // add new facet to UI.Facets
106
+ const facet = {
107
+ type: "com.sap.vocabularies.UI.v1.ReferenceFacet" /* UIAnnotationTypes.ReferenceFacet */,
108
+ propertyValues: [
109
+ { name: FACETS_PROP_NAME_ID, value: { type: 'String', String: 'GeneratedFacet1' } },
110
+ { name: FACETS_PROP_NAME_LABEL, value: { type: 'String', String: 'General Information' } },
149
111
  {
150
- uri,
151
- kind: fiori_annotation_api_1.ChangeType.InsertAnnotation,
152
- content: {
153
- target: entityTypeName,
154
- type: 'annotation',
155
- value: facetsAnnotation
112
+ name: FACETS_PROP_NAME_TARGET,
113
+ value: {
114
+ type: 'AnnotationPath',
115
+ AnnotationPath: `@${fieldGroup.term}#${fieldGroup.qualifier}`
156
116
  }
157
117
  }
158
- ];
159
- annotationService.edit(changes);
160
- yield annotationService.save();
161
- return true;
162
- }
163
- catch (e) {
164
- exception = e instanceof fiori_annotation_api_1.ApiError ? e : new fiori_annotation_api_1.ApiError(`Generating sections failed. ${e}`);
165
- throw exception;
166
- }
167
- });
118
+ ]
119
+ };
120
+ facetsAnnotation.collection.push(facet);
121
+ const uri = (0, url_1.pathToFileURL)((0, path_1.join)(project.root, annotationFilePath)).toString();
122
+ const changes = [
123
+ {
124
+ uri,
125
+ kind: fiori_annotation_api_1.ChangeType.InsertAnnotation,
126
+ content: {
127
+ target: entityTypeName,
128
+ type: 'annotation',
129
+ value: fieldGroup
130
+ }
131
+ },
132
+ {
133
+ uri,
134
+ kind: fiori_annotation_api_1.ChangeType.InsertAnnotation,
135
+ content: {
136
+ target: entityTypeName,
137
+ type: 'annotation',
138
+ value: facetsAnnotation
139
+ }
140
+ }
141
+ ];
142
+ annotationService.edit(changes);
143
+ await annotationService.save();
144
+ return true;
145
+ }
146
+ catch (e) {
147
+ exception = e instanceof fiori_annotation_api_1.ApiError ? e : new fiori_annotation_api_1.ApiError(`Generating sections failed. ${e}`);
148
+ throw exception;
149
+ }
168
150
  }
169
151
  function findEntitySet(convertedSchema, entityTypeName) {
170
- var _a;
171
152
  const entitySet = convertedSchema.entitySets.find((entitySet) => {
172
153
  return entitySet.entityTypeName === entityTypeName;
173
154
  });
174
- return (_a = entitySet === null || entitySet === void 0 ? void 0 : entitySet.name) !== null && _a !== void 0 ? _a : '';
155
+ return entitySet?.name ?? '';
175
156
  }
176
157
  function findEntityType(convertedSchema, entitySetName) {
177
- var _a, _b;
178
- const entityTypeName = (_b = (_a = convertedSchema.entitySets.by_name(entitySetName)) === null || _a === void 0 ? void 0 : _a.entityTypeName) !== null && _b !== void 0 ? _b : '';
158
+ const entityTypeName = convertedSchema.entitySets.by_name(entitySetName)?.entityTypeName ?? '';
179
159
  if (!entityTypeName) {
180
160
  throw new fiori_annotation_api_1.ApiError(`Entity set not found: ${entitySetName}`, fiori_annotation_api_1.ApiErrorCode.General);
181
161
  }
@@ -186,7 +166,6 @@ function findEntityType(convertedSchema, entitySetName) {
186
166
  return { entityType, entityTypeName };
187
167
  }
188
168
  function generateFieldGroup(context) {
189
- var _a, _b;
190
169
  const dataFieldRecords = getDataFieldRecordCollection(context);
191
170
  const fieldGroupAnnotation = {
192
171
  term: "com.sap.vocabularies.UI.v1.FieldGroup" /* UIAnnotationTerms.FieldGroup */,
@@ -198,7 +177,7 @@ function generateFieldGroup(context) {
198
177
  ]
199
178
  }
200
179
  };
201
- const existingFieldGroupQualifiers = Object.keys((_b = (_a = context.entityType) === null || _a === void 0 ? void 0 : _a.annotations.UI) !== null && _b !== void 0 ? _b : {})
180
+ const existingFieldGroupQualifiers = Object.keys(context.entityType?.annotations.UI ?? {})
202
181
  .filter((termQualifier) => termQualifier.startsWith('FieldGroup#'))
203
182
  .map((termQualifier) => termQualifier.split('#')[1]);
204
183
  const generatedQualifier = generateId(existingFieldGroupQualifiers, 'GeneratedGroup');
@@ -206,7 +185,6 @@ function generateFieldGroup(context) {
206
185
  return fieldGroupAnnotation;
207
186
  }
208
187
  function getDataFieldRecordCollection(context, isListReport = false) {
209
- var _a, _b, _c;
210
188
  const { project, metadataService, entityType } = context;
211
189
  const properties = entityType.entityProperties.filter((property) => !draftSpecificFields.includes(property.name));
212
190
  const keyCount = moveKeysToBeginning(isListReport, entityType, properties);
@@ -215,26 +193,25 @@ function getDataFieldRecordCollection(context, isListReport = false) {
215
193
  const targetPath = `${entityType.fullyQualifiedName}/${property.name}`;
216
194
  const targetElement = property;
217
195
  const mdElement = metadataService.getMetadataElement(targetPath);
218
- const type = mdElement === null || mdElement === void 0 ? void 0 : mdElement.edmPrimitiveType;
196
+ const type = mdElement?.edmPrimitiveType;
219
197
  if (type === 'Edm.Guid' ||
220
- !(type === null || type === void 0 ? void 0 : type.startsWith('Edm')) ||
221
- (
198
+ !type?.startsWith('Edm') ||
222
199
  // can't use nullish coalescing for boolean values
223
200
  // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
224
- mdElement === null || mdElement === void 0 ? void 0 : mdElement.isCollectionValued) ||
201
+ mdElement?.isCollectionValued ||
225
202
  // for CDS: no fields from sap.cds.common
226
203
  ((project.projectType === 'CAPJava' || project.projectType === 'CAPNodejs') &&
227
- isPropertyFromCommonNodeModule(property.name, (_a = mdElement === null || mdElement === void 0 ? void 0 : mdElement.location) === null || _a === void 0 ? void 0 : _a.uri))) {
204
+ isPropertyFromCommonNodeModule(property.name, mdElement?.location?.uri))) {
228
205
  continue;
229
206
  }
230
207
  const annotations = getAnnotations(project, entityType, property, targetPath, targetElement, mdElement);
231
- const annotationHidden = (_b = annotations.UI) === null || _b === void 0 ? void 0 : _b.Hidden;
208
+ const annotationHidden = annotations.UI?.Hidden;
232
209
  if (isHidden(annotationHidden)) {
233
210
  continue;
234
211
  }
235
- const annotationLabel = (_c = annotations.Common) === null || _c === void 0 ? void 0 : _c.Label;
236
- const annotationTitle = annotations === null || annotations === void 0 ? void 0 : annotations['title'];
237
- const hasLabel = annotationLabel !== null && annotationLabel !== void 0 ? annotationLabel : annotationTitle;
212
+ const annotationLabel = annotations.Common?.Label;
213
+ const annotationTitle = annotations?.['title'];
214
+ const hasLabel = annotationLabel ?? annotationTitle;
238
215
  const record = {
239
216
  type: "com.sap.vocabularies.UI.v1.DataField" /* UIAnnotationTypes.DataField */,
240
217
  propertyValues: []
@@ -257,14 +234,13 @@ function getDataFieldRecordCollection(context, isListReport = false) {
257
234
  return recordCollection;
258
235
  }
259
236
  function getAnnotations(project, entityType, property, targetPath, targetElement, mdElement) {
260
- var _a;
261
237
  let target = targetElement;
262
238
  if (project.projectType === 'CAPJava' || project.projectType === 'CAPNodejs') {
263
239
  const generatedProperty = property.name.split('_');
264
240
  if (generatedProperty.length > 1) {
265
- const assocName = ((_a = mdElement === null || mdElement === void 0 ? void 0 : mdElement.originalName) !== null && _a !== void 0 ? _a : '').split('.').pop();
241
+ const assocName = (mdElement?.originalName ?? '').split('.').pop();
266
242
  targetPath = `${entityType.fullyQualifiedName}/${assocName}`;
267
- const associationElement = entityType.navigationProperties.by_name(assocName !== null && assocName !== void 0 ? assocName : '');
243
+ const associationElement = entityType.navigationProperties.by_name(assocName ?? '');
268
244
  if (associationElement) {
269
245
  target = associationElement.targetType;
270
246
  }
@@ -276,12 +252,11 @@ function getAnnotations(project, entityType, property, targetPath, targetElement
276
252
  return target.annotations;
277
253
  }
278
254
  function moveKeysToBeginning(isListReport, entityType, properties) {
279
- var _a, _b;
280
255
  // for list report: move all key properties to the beginning
281
256
  let keys = []; // contains semantic key properties and entities primary keys
282
257
  if (isListReport) {
283
258
  keys = entityType.keys.filter((key) => key.isKey).map((key) => key.name);
284
- (_b = (_a = entityType.annotations.Common) === null || _a === void 0 ? void 0 : _a.SemanticKey) === null || _b === void 0 ? void 0 : _b.forEach((key) => (key.value ? keys.push(key.value) : undefined));
259
+ entityType.annotations.Common?.SemanticKey?.forEach((key) => (key.value ? keys.push(key.value) : undefined));
285
260
  keys = Array.from(new Set([...keys])); // to remove duplicates?
286
261
  keys.forEach((key) => {
287
262
  const index = properties.map((sE) => sE.name).indexOf(key);
@@ -319,36 +294,33 @@ function isHidden(hiddenAnno) {
319
294
  * @param context - Generation context.
320
295
  * @returns True if annotations were generated successfully and false if they already exist.
321
296
  */
322
- function generateDefaultLineItem(context) {
323
- var _a;
324
- return __awaiter(this, void 0, void 0, function* () {
325
- let exception;
326
- try {
327
- const { annotationService, project, annotationFilePath, entityType, entityTypeName } = context;
328
- const existingList = (_a = entityType.annotations.UI) === null || _a === void 0 ? void 0 : _a.LineItem;
329
- if (existingList) {
330
- return false; // UI.LineItem already exists
331
- }
332
- const lineItem = generateLineItem(context);
333
- const uri = (0, url_1.pathToFileURL)((0, path_1.join)(project.root, annotationFilePath)).toString();
334
- const change = {
335
- uri,
336
- kind: fiori_annotation_api_1.ChangeType.InsertAnnotation,
337
- content: {
338
- target: entityTypeName,
339
- type: 'annotation',
340
- value: lineItem
341
- }
342
- };
343
- annotationService.edit(change);
344
- yield annotationService.save();
345
- return true;
346
- }
347
- catch (e) {
348
- exception = e instanceof fiori_annotation_api_1.ApiError ? e : new fiori_annotation_api_1.ApiError(`Generating LineItem failed. ${e}`);
349
- throw exception;
297
+ async function generateDefaultLineItem(context) {
298
+ let exception;
299
+ try {
300
+ const { annotationService, project, annotationFilePath, entityType, entityTypeName } = context;
301
+ const existingList = entityType.annotations.UI?.LineItem;
302
+ if (existingList) {
303
+ return false; // UI.LineItem already exists
350
304
  }
351
- });
305
+ const lineItem = generateLineItem(context);
306
+ const uri = (0, url_1.pathToFileURL)((0, path_1.join)(project.root, annotationFilePath)).toString();
307
+ const change = {
308
+ uri,
309
+ kind: fiori_annotation_api_1.ChangeType.InsertAnnotation,
310
+ content: {
311
+ target: entityTypeName,
312
+ type: 'annotation',
313
+ value: lineItem
314
+ }
315
+ };
316
+ annotationService.edit(change);
317
+ await annotationService.save();
318
+ return true;
319
+ }
320
+ catch (e) {
321
+ exception = e instanceof fiori_annotation_api_1.ApiError ? e : new fiori_annotation_api_1.ApiError(`Generating LineItem failed. ${e}`);
322
+ throw exception;
323
+ }
352
324
  }
353
325
  function generateLineItem(context) {
354
326
  const dataFieldRecords = getDataFieldRecordCollection(context, true);
@@ -367,72 +339,68 @@ function generateLineItem(context) {
367
339
  * @param context - Generation Context.
368
340
  * @returns True if annotations were generated successfully and false if they already exist.
369
341
  */
370
- function generateValueHelps(context) {
371
- return __awaiter(this, void 0, void 0, function* () {
372
- let exception;
373
- try {
374
- const { project, entityType } = context;
375
- if (project.projectType === 'EDMXBackend') {
376
- return false;
377
- }
378
- const navProperties = entityType.navigationProperties.filter((navProp) => {
379
- return canGenerateValueListAnnotationForNavigationProperty(context, entityType, navProp);
380
- });
381
- if (navProperties.length === 0) {
382
- return false;
383
- }
384
- yield generateValueList(context, navProperties);
385
- return true;
342
+ async function generateValueHelps(context) {
343
+ let exception;
344
+ try {
345
+ const { project, entityType } = context;
346
+ if (project.projectType === 'EDMXBackend') {
347
+ return false;
386
348
  }
387
- catch (e) {
388
- exception = e instanceof fiori_annotation_api_1.ApiError ? e : new fiori_annotation_api_1.ApiError(`Generating ValueList failed. ${e}`);
389
- throw exception;
349
+ const navProperties = entityType.navigationProperties.filter((navProp) => {
350
+ return canGenerateValueListAnnotationForNavigationProperty(context, entityType, navProp);
351
+ });
352
+ if (navProperties.length === 0) {
353
+ return false;
390
354
  }
391
- });
355
+ await generateValueList(context, navProperties);
356
+ return true;
357
+ }
358
+ catch (e) {
359
+ exception = e instanceof fiori_annotation_api_1.ApiError ? e : new fiori_annotation_api_1.ApiError(`Generating ValueList failed. ${e}`);
360
+ throw exception;
361
+ }
392
362
  }
393
- function generateValueList(context, navProperties) {
394
- return __awaiter(this, void 0, void 0, function* () {
395
- const { annotationService, project, convertedSchema, annotationFilePath } = context;
396
- navProperties.forEach((navProp) => {
397
- const collectionPath = findEntitySet(convertedSchema, navProp.targetTypeName);
398
- const { record: inOutParameter, key } = getValueListParameterInOut(context, navProp);
399
- const valueListValue = {
400
- type: "com.sap.vocabularies.Common.v1.ValueListType" /* CommonAnnotationTypes.ValueListType */,
401
- propertyValues: [
402
- {
403
- name: VALUE_LIST_PROP_NAME_COLLECTION_PATH,
404
- value: { type: fiori_annotation_api_1.ExpressionType.String, String: collectionPath }
405
- },
406
- {
407
- name: VALUE_LIST_PROP_NAME_PARAMETERS,
408
- value: {
409
- type: fiori_annotation_api_1.ExpressionType.Collection,
410
- Collection: [
411
- inOutParameter,
412
- //limit the vhp to 5 including mandatory, If associated entity has a lot of properties, this crashes the app at runtime.
413
- ...getValueListParameterDisplayOnly(context, navProp.targetType, key).slice(0, 4)
414
- ]
415
- }
416
- }
417
- ]
418
- };
419
- const annotation = { term: "com.sap.vocabularies.Common.v1.ValueList" /* CommonAnnotationTerms.ValueList */, record: valueListValue };
420
- const uri = (0, url_1.pathToFileURL)((0, path_1.join)(project.root, annotationFilePath)).toString();
421
- const changes = [
363
+ async function generateValueList(context, navProperties) {
364
+ const { annotationService, project, convertedSchema, annotationFilePath } = context;
365
+ navProperties.forEach((navProp) => {
366
+ const collectionPath = findEntitySet(convertedSchema, navProp.targetTypeName);
367
+ const { record: inOutParameter, key } = getValueListParameterInOut(context, navProp);
368
+ const valueListValue = {
369
+ type: "com.sap.vocabularies.Common.v1.ValueListType" /* CommonAnnotationTypes.ValueListType */,
370
+ propertyValues: [
422
371
  {
423
- uri,
424
- kind: fiori_annotation_api_1.ChangeType.InsertAnnotation,
425
- content: {
426
- target: navProp.fullyQualifiedName,
427
- type: 'annotation',
428
- value: annotation
372
+ name: VALUE_LIST_PROP_NAME_COLLECTION_PATH,
373
+ value: { type: fiori_annotation_api_1.ExpressionType.String, String: collectionPath }
374
+ },
375
+ {
376
+ name: VALUE_LIST_PROP_NAME_PARAMETERS,
377
+ value: {
378
+ type: fiori_annotation_api_1.ExpressionType.Collection,
379
+ Collection: [
380
+ inOutParameter,
381
+ //limit the vhp to 5 including mandatory, If associated entity has a lot of properties, this crashes the app at runtime.
382
+ ...getValueListParameterDisplayOnly(context, navProp.targetType, key).slice(0, 4)
383
+ ]
429
384
  }
430
385
  }
431
- ];
432
- annotationService.edit(changes);
433
- });
434
- yield annotationService.save();
386
+ ]
387
+ };
388
+ const annotation = { term: "com.sap.vocabularies.Common.v1.ValueList" /* CommonAnnotationTerms.ValueList */, record: valueListValue };
389
+ const uri = (0, url_1.pathToFileURL)((0, path_1.join)(project.root, annotationFilePath)).toString();
390
+ const changes = [
391
+ {
392
+ uri,
393
+ kind: fiori_annotation_api_1.ChangeType.InsertAnnotation,
394
+ content: {
395
+ target: navProp.fullyQualifiedName,
396
+ type: 'annotation',
397
+ value: annotation
398
+ }
399
+ }
400
+ ];
401
+ annotationService.edit(changes);
435
402
  });
403
+ await annotationService.save();
436
404
  }
437
405
  function getValueListParameterInOut(context, navProp) {
438
406
  const { metadataService } = context;
@@ -475,9 +443,8 @@ function getValueListParameterDisplayOnly(context, targetType, valueListParamete
475
443
  const mdElement = metadataService.getMetadataElement(targetEntityTypeName);
476
444
  return mdElement.content
477
445
  .filter((prop) => {
478
- var _a, _b;
479
446
  const convertedProp = targetType.entityProperties.by_name(prop.name);
480
- const annotationHidden = (_a = convertedProp === null || convertedProp === void 0 ? void 0 : convertedProp.annotations.UI) === null || _a === void 0 ? void 0 : _a.Hidden;
447
+ const annotationHidden = convertedProp?.annotations.UI?.Hidden;
481
448
  const hidden = isHidden(annotationHidden);
482
449
  const isOmit = prop.name === valueListParameterInOutPropName ||
483
450
  // can't use nullish coalescing for boolean values
@@ -490,7 +457,7 @@ function getValueListParameterDisplayOnly(context, targetType, valueListParamete
490
457
  hidden ||
491
458
  prop.edmPrimitiveType === 'Edm.Guid' ||
492
459
  draftSpecificFields.includes(prop.name) ||
493
- isPropertyFromCommonNodeModule(prop.name, (_b = prop.location) === null || _b === void 0 ? void 0 : _b.uri);
460
+ isPropertyFromCommonNodeModule(prop.name, prop.location?.uri);
494
461
  return !isOmit;
495
462
  })
496
463
  .map((prop) => ({
@@ -525,13 +492,12 @@ function canGenerateValueListAnnotationForNavigationProperty(context, entityType
525
492
  return !existingValueList;
526
493
  }
527
494
  function getLocalDataPropertyName(context, mdElement) {
528
- var _a, _b, _c;
529
495
  const { metadataService } = context;
530
496
  let currentElementName = mdElement.name;
531
497
  let keyName = '';
532
498
  if (mdElement.isEntityType && mdElement.structuredType) {
533
499
  // build generated element name by adding first key field name of associated entity
534
- keyName = (_c = (_b = (_a = metadataService.getMetadataElement(mdElement.structuredType)) === null || _a === void 0 ? void 0 : _a.keys) === null || _b === void 0 ? void 0 : _b[0]) !== null && _c !== void 0 ? _c : '';
500
+ keyName = metadataService.getMetadataElement(mdElement.structuredType)?.keys?.[0] ?? '';
535
501
  currentElementName = keyName ? `${currentElementName}_${keyName}` : currentElementName;
536
502
  }
537
503
  return {
@@ -540,10 +506,9 @@ function getLocalDataPropertyName(context, mdElement) {
540
506
  };
541
507
  }
542
508
  function isValueListAlreadyExist(navPropTargetEntityType, navProp) {
543
- var _a, _b, _c;
544
509
  const existingAnnotations = navProp.annotations;
545
- const existingCommonValueList = (_a = existingAnnotations.Common) === null || _a === void 0 ? void 0 : _a.ValueList;
546
- const existingCDSValueList = (_c = (_b = navPropTargetEntityType.annotations) === null || _b === void 0 ? void 0 : _b['cds.odata']) === null || _c === void 0 ? void 0 : _c['valuelist'];
510
+ const existingCommonValueList = existingAnnotations.Common?.ValueList;
511
+ const existingCDSValueList = navPropTargetEntityType.annotations?.['cds.odata']?.['valuelist'];
547
512
  return !!existingCommonValueList || !!existingCDSValueList;
548
513
  }
549
514
  function generateId(existingIds = [], label = '') {
@@ -1 +1 @@
1
- {"version":3,"file":"generation.js","sourceRoot":"","sources":["../src/generation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generation.js","sourceRoot":"","sources":["../src/generation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sap-ux/annotation-generator",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Library that provides API for generation of annotations by SAP Fiori App Generator",
5
5
  "publisher": "SAPSE",
6
6
  "author": "SAP SE",
@@ -10,10 +10,10 @@
10
10
  "@sap-ux/annotation-converter": "0.8.0",
11
11
  "@sap-ux/vocabularies-types": "0.10.0",
12
12
  "mem-fs-editor": "9.4.0",
13
- "@sap-ux/fiori-annotation-api": "0.1.10",
14
- "@sap-ux/odata-annotation-core-types": "0.3.1",
15
- "@sap-ux/odata-entity-model": "0.2.1",
16
- "@sap-ux/project-access": "1.22.4"
13
+ "@sap-ux/fiori-annotation-api": "0.1.12",
14
+ "@sap-ux/odata-annotation-core-types": "0.4.0",
15
+ "@sap-ux/odata-entity-model": "0.3.0",
16
+ "@sap-ux/project-access": "1.24.0"
17
17
  },
18
18
  "devDependencies": {
19
19
  "mem-fs": "2.1.0",