@sap/ux-specification 1.71.45 → 1.71.49

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 (120) hide show
  1. package/CHANGELOG.md +77 -7
  2. package/dist/documentation/runDocu-min.js +1 -1
  3. package/dist/documentation/styleDocu.css +4 -5
  4. package/dist/documentation/v2/v2-AnalyticalListPage.html +1 -1
  5. package/dist/documentation/v2/v2-ApplicationV2.html +1 -1
  6. package/dist/documentation/v2/v2-ListReport.html +1 -1
  7. package/dist/documentation/v2/v2-ObjectPage.html +1 -1
  8. package/dist/documentation/v2/v2-OverviewPage.html +1 -1
  9. package/dist/index-min.js +1 -1
  10. package/dist/schemas/v2/AnalyticalListPageConfig.json +35 -38
  11. package/dist/schemas/v2/ListReportConfig.json +36 -28
  12. package/dist/schemas/v2/ObjectPageConfig.json +181 -48
  13. package/dist/schemas/v2/OverviewPageConfig.json +236 -190
  14. package/dist/scripts/extractDocu.js +18 -8
  15. package/dist/scripts/extractDocu.js.map +1 -1
  16. package/dist/scripts/runDocu.js +105 -89
  17. package/dist/scripts/runDocu.js.map +1 -1
  18. package/dist/scripts/to-json-schema.js +9 -1
  19. package/dist/scripts/to-json-schema.js.map +1 -1
  20. package/dist/specification/v2/index-min.js +1 -1
  21. package/dist/src/specification/common/types.d.ts +4 -0
  22. package/dist/src/specification/common/types.js +5 -0
  23. package/dist/src/specification/common/types.js.map +1 -1
  24. package/dist/src/specification/v2/controls/{FormAction.d.ts → Action.d.ts} +29 -2
  25. package/dist/src/specification/v2/controls/{FormAction.js → Action.js} +1 -1
  26. package/dist/src/specification/v2/controls/Action.js.map +1 -0
  27. package/dist/src/specification/v2/controls/Card.d.ts +20 -72
  28. package/dist/src/specification/v2/controls/Card.js.map +1 -1
  29. package/dist/src/specification/v2/controls/FilterBar.d.ts +4 -0
  30. package/dist/src/specification/v2/controls/ObjectPageFooter.d.ts +2 -2
  31. package/dist/src/specification/v2/controls/{ObjectPageHeaderAction.d.ts → ObjectPageFooterAction.d.ts} +4 -3
  32. package/dist/src/specification/v2/controls/{ObjectPageHeaderAction.js → ObjectPageFooterAction.js} +1 -1
  33. package/dist/src/specification/v2/controls/ObjectPageFooterAction.js.map +1 -0
  34. package/dist/src/specification/v2/controls/ObjectPageForm.d.ts +1 -2
  35. package/dist/src/specification/v2/controls/ObjectPageHeader.d.ts +1 -1
  36. package/dist/src/specification/v2/controls/ObjectPageTable.d.ts +5 -0
  37. package/dist/src/specification/v2/controls/ObjectPageTable.js.map +1 -1
  38. package/dist/src/specification/v2/controls/ObjectPageToolBar.d.ts +1 -5
  39. package/dist/src/specification/v2/controls/Table.d.ts +6 -9
  40. package/dist/src/specification/v2/controls/Table.js.map +1 -1
  41. package/dist/src/specification/v2/controls/ToolBar.d.ts +2 -2
  42. package/dist/src/specification/v2/controls/index.d.ts +8 -9
  43. package/dist/src/specification/v2/controls/index.js +3 -3
  44. package/dist/src/specification/v2/controls/index.js.map +1 -1
  45. package/dist/src/sync/common/generate/index.d.ts +1 -0
  46. package/dist/src/sync/common/generate/index.js +1 -0
  47. package/dist/src/sync/common/generate/index.js.map +1 -1
  48. package/dist/src/sync/common/generate/objectPage.js +22 -17
  49. package/dist/src/sync/common/generate/objectPage.js.map +1 -1
  50. package/dist/src/sync/common/generate/utils.d.ts +59 -0
  51. package/dist/src/sync/common/generate/utils.js +192 -0
  52. package/dist/src/sync/common/generate/utils.js.map +1 -0
  53. package/dist/src/sync/common/importProject.js +3 -3
  54. package/dist/src/sync/common/importProject.js.map +1 -1
  55. package/dist/src/sync/common/utils.d.ts +3 -23
  56. package/dist/src/sync/common/utils.js +15 -83
  57. package/dist/src/sync/common/utils.js.map +1 -1
  58. package/dist/src/sync/v2/export/controls/Action.d.ts +13 -0
  59. package/dist/src/sync/v2/export/controls/Action.js +74 -0
  60. package/dist/src/sync/v2/export/controls/Action.js.map +1 -0
  61. package/dist/src/sync/v2/export/controls/Card.d.ts +3 -7
  62. package/dist/src/sync/v2/export/controls/Card.js +15 -43
  63. package/dist/src/sync/v2/export/controls/Card.js.map +1 -1
  64. package/dist/src/sync/v2/export/controls/FilterBar.d.ts +1 -0
  65. package/dist/src/sync/v2/export/controls/FilterBar.js +10 -0
  66. package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -1
  67. package/dist/src/sync/v2/export/controls/Fragment.js +5 -4
  68. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -1
  69. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts +8 -0
  70. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +62 -0
  71. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -0
  72. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +11 -29
  73. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -1
  74. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts +5 -1
  75. package/dist/src/sync/v2/export/controls/ObjectPageTable.js +25 -0
  76. package/dist/src/sync/v2/export/controls/ObjectPageTable.js.map +1 -1
  77. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +8 -0
  78. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +59 -0
  79. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -0
  80. package/dist/src/sync/v2/export/controls/Table.d.ts +5 -4
  81. package/dist/src/sync/v2/export/controls/Table.js +16 -21
  82. package/dist/src/sync/v2/export/controls/Table.js.map +1 -1
  83. package/dist/src/sync/v2/export/controls/ToolBar.d.ts +4 -0
  84. package/dist/src/sync/v2/export/controls/ToolBar.js +6 -0
  85. package/dist/src/sync/v2/export/controls/ToolBar.js.map +1 -0
  86. package/dist/src/sync/v2/export/controls/index.d.ts +11 -7
  87. package/dist/src/sync/v2/export/controls/index.js +11 -7
  88. package/dist/src/sync/v2/export/controls/index.js.map +1 -1
  89. package/dist/src/sync/v2/export/export.js +1 -1
  90. package/dist/src/sync/v2/export/export.js.map +1 -1
  91. package/dist/src/sync/v2/export/exportPage.js +3 -2
  92. package/dist/src/sync/v2/export/exportPage.js.map +1 -1
  93. package/dist/src/sync/v2/generate/analyticalListReport.js +6 -3
  94. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
  95. package/dist/src/sync/v2/generate/listReport.d.ts +8 -0
  96. package/dist/src/sync/v2/generate/listReport.js +18 -4
  97. package/dist/src/sync/v2/generate/listReport.js.map +1 -1
  98. package/dist/src/sync/v2/generate/objectPage.d.ts +0 -1
  99. package/dist/src/sync/v2/generate/objectPage.js +199 -106
  100. package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
  101. package/dist/src/sync/v2/generate/utils.d.ts +3 -3
  102. package/dist/src/sync/v2/generate/utils.js +22 -14
  103. package/dist/src/sync/v2/generate/utils.js.map +1 -1
  104. package/dist/src/sync/v2/import/common/index.d.ts +8 -1
  105. package/dist/src/sync/v2/import/common/index.js +107 -43
  106. package/dist/src/sync/v2/import/common/index.js.map +1 -1
  107. package/dist/src/sync/v2/import/pages/listReport.js +31 -0
  108. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -1
  109. package/dist/src/sync/v2/import/pages/objectPage.d.ts +1 -1
  110. package/dist/src/sync/v2/import/pages/objectPage.js +302 -235
  111. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -1
  112. package/dist/src/sync/v2/import/utils.d.ts +1 -1
  113. package/dist/src/sync/v2/import/utils.js +2 -2
  114. package/dist/src/sync/v2/import/utils.js.map +1 -1
  115. package/dist/src/sync/v2/types.d.ts +21 -2
  116. package/dist/src/sync/v2/types.js +7 -0
  117. package/dist/src/sync/v2/types.js.map +1 -1
  118. package/package.json +6 -4
  119. package/dist/src/specification/v2/controls/FormAction.js.map +0 -1
  120. package/dist/src/specification/v2/controls/ObjectPageHeaderAction.js.map +0 -1
@@ -143,10 +143,6 @@
143
143
  "type": "object",
144
144
  "additionalProperties": {},
145
145
  "properties": {
146
- "entitySet": {
147
- "description": "Represents the dominant entity set that will be displayed in the given card.",
148
- "type": "string"
149
- },
150
146
  "itemText": {
151
147
  "description": "Represents the user defined string in placeholder card.",
152
148
  "type": "string"
@@ -293,6 +289,10 @@
293
289
  }
294
290
  ]
295
291
  },
292
+ "entitySet": {
293
+ "description": "Represents the dominant entity set that will be displayed in the given card.",
294
+ "type": "string"
295
+ },
296
296
  "title": {
297
297
  "description": "The language-dependent title of the card, used in the card header.",
298
298
  "i18nClassification": "TIT: Title of the card, used in the card header",
@@ -361,8 +361,25 @@
361
361
  ]
362
362
  },
363
363
  "requireAppAuthorization": {
364
- "description": "Define an authorization check at card level",
364
+ "description": "Define an authorization check at card level.",
365
365
  "type": "string"
366
+ },
367
+ "tabs": {
368
+ "description": "Represents the card with view switch control.",
369
+ "type": "array",
370
+ "items": [
371
+ {
372
+ "$ref": "#/definitions/TabSetting"
373
+ }
374
+ ],
375
+ "minItems": 1,
376
+ "additionalItems": {
377
+ "$ref": "#/definitions/TabSetting"
378
+ }
379
+ },
380
+ "addODataSelect": {
381
+ "description": "add $Select parameter in data fetch URL",
382
+ "type": "boolean"
366
383
  }
367
384
  },
368
385
  "required": [
@@ -408,6 +425,70 @@
408
425
  },
409
426
  "additionalProperties": false
410
427
  },
428
+ "TabSetting": {
429
+ "type": "object",
430
+ "additionalProperties": {},
431
+ "properties": {
432
+ "annotationPath": {
433
+ "description": "Represents the annotation path.",
434
+ "type": "string"
435
+ },
436
+ "selectionAnnotationPath": {
437
+ "description": "Represents the selection annotation path.",
438
+ "type": "string"
439
+ },
440
+ "chartAnnotationPath": {
441
+ "description": "Represents the chart annotation path.",
442
+ "type": "string"
443
+ },
444
+ "presentationAnnotationPath": {
445
+ "description": "Represents the presentation annotation path.",
446
+ "type": "string"
447
+ },
448
+ "dataPointAnnotationPath": {
449
+ "description": "Represents the data point annotation path.",
450
+ "type": "string"
451
+ },
452
+ "identificationAnnotationPath": {
453
+ "description": "Represents the identification annotation path.",
454
+ "type": "string"
455
+ },
456
+ "dynamicSubtitleAnnotationPath": {
457
+ "description": "Represents the dynamic subtitle annotation path",
458
+ "type": "string"
459
+ },
460
+ "value": {
461
+ "description": "Represents the drop down value to be shown",
462
+ "type": "string"
463
+ },
464
+ "chartProperties": {
465
+ "description": "This property is responsible for setting specific chart settings.",
466
+ "type": "object",
467
+ "properties": {
468
+ "plotArea": {
469
+ "$ref": "#/definitions/PlotAreaDef"
470
+ }
471
+ },
472
+ "additionalProperties": false
473
+ },
474
+ "colorPalette": {
475
+ "description": "Represents the configuration to customize the column stacked chart.",
476
+ "anyOf": [
477
+ {
478
+ "type": "array",
479
+ "items": {
480
+ "type": "object",
481
+ "additionalProperties": {}
482
+ }
483
+ },
484
+ {
485
+ "type": "object",
486
+ "additionalProperties": {}
487
+ }
488
+ ]
489
+ }
490
+ }
491
+ },
411
492
  "ListCard": {
412
493
  "description": "List Card",
413
494
  "isViewNode": true,
@@ -431,20 +512,6 @@
431
512
  "$ref": "#/definitions/ListCardSettings",
432
513
  "description": "Represents the properties that are passed to the list card.",
433
514
  "artifactType": "Manifest"
434
- },
435
- "tabs": {
436
- "description": "Represents the List Card with view switch control.",
437
- "type": "array",
438
- "items": [
439
- {
440
- "$ref": "#/definitions/TabSetting"
441
- }
442
- ],
443
- "minItems": 1,
444
- "additionalItems": {
445
- "$ref": "#/definitions/TabSetting"
446
- },
447
- "artifactType": "Manifest"
448
515
  }
449
516
  },
450
517
  "additionalProperties": false,
@@ -458,10 +525,6 @@
458
525
  "displayName": "settings",
459
526
  "type": "object",
460
527
  "properties": {
461
- "entitySet": {
462
- "description": "Represents the dominant entity set that will be displayed in the given card.",
463
- "type": "string"
464
- },
465
528
  "listFlavor": {
466
529
  "$ref": "#/definitions/ListFlavorType",
467
530
  "description": "Represents the flavor of the list to use in this card. The flavor can be bar chart, carousel or standard."
@@ -486,27 +549,18 @@
486
549
  "$ref": "#/definitions/SortOrderType",
487
550
  "description": "Defines the sort order."
488
551
  },
489
- "addODataSelect": {
490
- "description": "add $Select parameter in data fetch URL",
491
- "type": "boolean"
492
- },
493
- "tabs": {
494
- "description": "Represents the card with view switch control.\nThis property doesn't exist in the app descriptor json schema for settings, but is there on the card level next to the template.\nHowever, in the reference application it is in the settings of a sap.ovp.cards.list.",
495
- "type": "array",
496
- "items": [
497
- {
498
- "$ref": "#/definitions/TabSetting"
499
- }
500
- ],
501
- "minItems": 1,
502
- "additionalItems": {
503
- "$ref": "#/definitions/TabSetting"
504
- }
505
- },
506
552
  "dataPointAnnotationPath": {
507
553
  "description": "Represents the data point annotation path.",
508
554
  "type": "string"
509
555
  },
556
+ "showLineItemDetail": {
557
+ "description": "Flag for show line item detail in list and table card.",
558
+ "type": "boolean"
559
+ },
560
+ "entitySet": {
561
+ "description": "Represents the dominant entity set that will be displayed in the given card.",
562
+ "type": "string"
563
+ },
510
564
  "title": {
511
565
  "description": "The language-dependent title of the card, used in the card header.",
512
566
  "i18nClassification": "TIT: Title of the card, used in the card header",
@@ -575,13 +629,29 @@
575
629
  ]
576
630
  },
577
631
  "requireAppAuthorization": {
578
- "description": "Define an authorization check at card level",
632
+ "description": "Define an authorization check at card level.",
579
633
  "type": "string"
634
+ },
635
+ "tabs": {
636
+ "description": "Represents the card with view switch control.",
637
+ "type": "array",
638
+ "items": [
639
+ {
640
+ "$ref": "#/definitions/TabSetting"
641
+ }
642
+ ],
643
+ "minItems": 1,
644
+ "additionalItems": {
645
+ "$ref": "#/definitions/TabSetting"
646
+ }
647
+ },
648
+ "addODataSelect": {
649
+ "description": "add $Select parameter in data fetch URL",
650
+ "type": "boolean"
580
651
  }
581
652
  },
582
653
  "additionalProperties": false,
583
654
  "required": [
584
- "entitySet",
585
655
  "title"
586
656
  ]
587
657
  },
@@ -607,70 +677,6 @@
607
677
  ],
608
678
  "type": "string"
609
679
  },
610
- "TabSetting": {
611
- "type": "object",
612
- "additionalProperties": {},
613
- "properties": {
614
- "annotationPath": {
615
- "description": "Represents the annotation path.",
616
- "type": "string"
617
- },
618
- "selectionAnnotationPath": {
619
- "description": "Represents the selection annotation path.",
620
- "type": "string"
621
- },
622
- "chartAnnotationPath": {
623
- "description": "Represents the chart annotation path.",
624
- "type": "string"
625
- },
626
- "presentationAnnotationPath": {
627
- "description": "Represents the presentation annotation path.",
628
- "type": "string"
629
- },
630
- "dataPointAnnotationPath": {
631
- "description": "Represents the data point annotation path.",
632
- "type": "string"
633
- },
634
- "identificationAnnotationPath": {
635
- "description": "Represents the identification annotation path.",
636
- "type": "string"
637
- },
638
- "dynamicSubtitleAnnotationPath": {
639
- "description": "Represents the dynamic subtitle annotation path",
640
- "type": "string"
641
- },
642
- "value": {
643
- "description": "Represents the drop down value to be shown",
644
- "type": "string"
645
- },
646
- "chartProperties": {
647
- "description": "This property is responsible for setting specific chart settings.",
648
- "type": "object",
649
- "properties": {
650
- "plotArea": {
651
- "$ref": "#/definitions/PlotAreaDef"
652
- }
653
- },
654
- "additionalProperties": false
655
- },
656
- "colorPalette": {
657
- "description": "Represents the configuration to customize the column stacked chart.",
658
- "anyOf": [
659
- {
660
- "type": "array",
661
- "items": {
662
- "type": "object",
663
- "additionalProperties": {}
664
- }
665
- },
666
- {
667
- "type": "object",
668
- "additionalProperties": {}
669
- }
670
- ]
671
- }
672
- }
673
- },
674
680
  "StackCard": {
675
681
  "description": "Stack Card",
676
682
  "isViewNode": true,
@@ -707,10 +713,6 @@
707
713
  "displayName": "settings",
708
714
  "type": "object",
709
715
  "properties": {
710
- "entitySet": {
711
- "description": "Represents the dominant entity set that will be displayed in the given card.",
712
- "type": "string"
713
- },
714
716
  "itemText": {
715
717
  "description": "Represents the user defined string in placeholder card.",
716
718
  "type": "string"
@@ -734,6 +736,10 @@
734
736
  },
735
737
  "additionalProperties": false
736
738
  },
739
+ "entitySet": {
740
+ "description": "Represents the dominant entity set that will be displayed in the given card.",
741
+ "type": "string"
742
+ },
737
743
  "title": {
738
744
  "description": "The language-dependent title of the card, used in the card header.",
739
745
  "i18nClassification": "TIT: Title of the card, used in the card header",
@@ -802,13 +808,29 @@
802
808
  ]
803
809
  },
804
810
  "requireAppAuthorization": {
805
- "description": "Define an authorization check at card level",
811
+ "description": "Define an authorization check at card level.",
806
812
  "type": "string"
813
+ },
814
+ "tabs": {
815
+ "description": "Represents the card with view switch control.",
816
+ "type": "array",
817
+ "items": [
818
+ {
819
+ "$ref": "#/definitions/TabSetting"
820
+ }
821
+ ],
822
+ "minItems": 1,
823
+ "additionalItems": {
824
+ "$ref": "#/definitions/TabSetting"
825
+ }
826
+ },
827
+ "addODataSelect": {
828
+ "description": "add $Select parameter in data fetch URL",
829
+ "type": "boolean"
807
830
  }
808
831
  },
809
832
  "additionalProperties": false,
810
833
  "required": [
811
- "entitySet",
812
834
  "title"
813
835
  ]
814
836
  },
@@ -847,20 +869,6 @@
847
869
  "displayName": "settings",
848
870
  "type": "object",
849
871
  "properties": {
850
- "entitySet": {
851
- "description": "entitySet represents the entity set that will be displayed in this card.",
852
- "type": "string"
853
- },
854
- "title": {
855
- "description": "title represents the language-dependent title of the card, as used in the card header.",
856
- "i18nClassification": "TIT: Title of the card, used in the card header",
857
- "type": "string"
858
- },
859
- "subTitle": {
860
- "description": "YOu can define the language-dependent subtitle of the card, as used in the card header.",
861
- "i18nClassification": "TIT: Subtitle of the card, used in the card header",
862
- "type": "string"
863
- },
864
872
  "targetUri": {
865
873
  "description": "The targetUri is a URI defining the link to a quick view, related application or external resource.",
866
874
  "type": "string"
@@ -881,8 +889,45 @@
881
889
  "description": "headerAnnotationPath represents the path to a HeaderInfo annotation.",
882
890
  "type": "string"
883
891
  },
892
+ "staticContent": {
893
+ "description": "staticContent represents the static content of a static link list card.",
894
+ "type": "array",
895
+ "items": {
896
+ "$ref": "#/definitions/StaticContent"
897
+ }
898
+ },
899
+ "annotationPath": {
900
+ "description": "Represents the annotation path.",
901
+ "type": "string"
902
+ },
903
+ "entitySet": {
904
+ "description": "Represents the dominant entity set that will be displayed in the given card.",
905
+ "type": "string"
906
+ },
907
+ "title": {
908
+ "description": "The language-dependent title of the card, used in the card header.",
909
+ "i18nClassification": "TIT: Title of the card, used in the card header",
910
+ "type": "string"
911
+ },
912
+ "subTitle": {
913
+ "description": "The language-dependent subtitle of the card, used in the card header.",
914
+ "i18nClassification": "TIT: Subtitle of the card, used in the card header",
915
+ "type": "string"
916
+ },
884
917
  "identificationAnnotationPath": {
885
- "description": "identificationAnnotationPath represents the path to an Identification annotation.",
918
+ "description": "Represents the identification annotation path.",
919
+ "type": "string"
920
+ },
921
+ "selectionAnnotationPath": {
922
+ "description": "Represents the selection annotation path.",
923
+ "type": "string"
924
+ },
925
+ "presentationAnnotationPath": {
926
+ "description": "Represents the presentation annotation path.",
927
+ "type": "string"
928
+ },
929
+ "category": {
930
+ "description": "The category of the card, as used in the card header.",
886
931
  "type": "string"
887
932
  },
888
933
  "defaultSpan": {
@@ -926,20 +971,26 @@
926
971
  }
927
972
  ]
928
973
  },
929
- "staticContent": {
930
- "description": "staticContent represents the static content of a static link list card.",
931
- "type": "array",
932
- "items": {
933
- "$ref": "#/definitions/StaticContent"
934
- }
935
- },
936
974
  "requireAppAuthorization": {
937
- "description": "Define an authorization check at card level",
975
+ "description": "Define an authorization check at card level.",
938
976
  "type": "string"
939
977
  },
940
- "annotationPath": {
941
- "description": "Represents the annotation path.",
942
- "type": "string"
978
+ "tabs": {
979
+ "description": "Represents the card with view switch control.",
980
+ "type": "array",
981
+ "items": [
982
+ {
983
+ "$ref": "#/definitions/TabSetting"
984
+ }
985
+ ],
986
+ "minItems": 1,
987
+ "additionalItems": {
988
+ "$ref": "#/definitions/TabSetting"
989
+ }
990
+ },
991
+ "addODataSelect": {
992
+ "description": "add $Select parameter in data fetch URL",
993
+ "type": "boolean"
943
994
  }
944
995
  },
945
996
  "additionalProperties": false,
@@ -1022,20 +1073,6 @@
1022
1073
  "description": "Represents the properties that are passed to the table card.",
1023
1074
  "artifactType": "Manifest"
1024
1075
  },
1025
- "tabs": {
1026
- "description": "Represents the card with view switch control.",
1027
- "type": "array",
1028
- "items": [
1029
- {
1030
- "$ref": "#/definitions/TabSetting"
1031
- }
1032
- ],
1033
- "minItems": 1,
1034
- "additionalItems": {
1035
- "$ref": "#/definitions/TabSetting"
1036
- },
1037
- "artifactType": "Manifest"
1038
- },
1039
1076
  "disableTableCardFlexibility": {
1040
1077
  "description": "If you set disableTableCardFlexibility to true, then at runtime, DataField records are sorted according to the importance set in the com.sap.vocabularies.UI.v1.ImportanceType annotation, and their order of entry.\nIf you set disableTableCardFlexibility to false, then at runtime, table columns are sorted according to the importance set in the com.sap.vocabularies.UI.v1.ImportanceType annotation, and their order of entry.",
1041
1078
  "type": "boolean",
@@ -1053,10 +1090,6 @@
1053
1090
  "displayName": "settings",
1054
1091
  "type": "object",
1055
1092
  "properties": {
1056
- "entitySet": {
1057
- "description": "Represents the dominant entity set that will be displayed in the given card.",
1058
- "type": "string"
1059
- },
1060
1093
  "annotationPath": {
1061
1094
  "description": "Represents the annotation path.",
1062
1095
  "type": "string"
@@ -1089,18 +1122,13 @@
1089
1122
  "$ref": "#/definitions/SortOrderType",
1090
1123
  "description": "Defines the sort order."
1091
1124
  },
1092
- "tabs": {
1093
- "description": "Represents the card with view switch control.",
1094
- "type": "array",
1095
- "items": [
1096
- {
1097
- "$ref": "#/definitions/TabSetting"
1098
- }
1099
- ],
1100
- "minItems": 1,
1101
- "additionalItems": {
1102
- "$ref": "#/definitions/TabSetting"
1103
- }
1125
+ "showLineItemDetail": {
1126
+ "description": "Flag for show line item detail in list and table card.",
1127
+ "type": "boolean"
1128
+ },
1129
+ "entitySet": {
1130
+ "description": "Represents the dominant entity set that will be displayed in the given card.",
1131
+ "type": "string"
1104
1132
  },
1105
1133
  "title": {
1106
1134
  "description": "The language-dependent title of the card, used in the card header.",
@@ -1170,13 +1198,29 @@
1170
1198
  ]
1171
1199
  },
1172
1200
  "requireAppAuthorization": {
1173
- "description": "Define an authorization check at card level",
1201
+ "description": "Define an authorization check at card level.",
1174
1202
  "type": "string"
1203
+ },
1204
+ "tabs": {
1205
+ "description": "Represents the card with view switch control.",
1206
+ "type": "array",
1207
+ "items": [
1208
+ {
1209
+ "$ref": "#/definitions/TabSetting"
1210
+ }
1211
+ ],
1212
+ "minItems": 1,
1213
+ "additionalItems": {
1214
+ "$ref": "#/definitions/TabSetting"
1215
+ }
1216
+ },
1217
+ "addODataSelect": {
1218
+ "description": "add $Select parameter in data fetch URL",
1219
+ "type": "boolean"
1175
1220
  }
1176
1221
  },
1177
1222
  "additionalProperties": false,
1178
1223
  "required": [
1179
- "entitySet",
1180
1224
  "title"
1181
1225
  ]
1182
1226
  },
@@ -1203,20 +1247,6 @@
1203
1247
  "$ref": "#/definitions/AnalyticalCardSettings",
1204
1248
  "description": "Represents the properties that are passed to the analytical card.",
1205
1249
  "artifactType": "Manifest"
1206
- },
1207
- "tabs": {
1208
- "description": "Represents the Analytical Card with view switch control.",
1209
- "type": "array",
1210
- "items": [
1211
- {
1212
- "$ref": "#/definitions/TabSetting"
1213
- }
1214
- ],
1215
- "minItems": 1,
1216
- "additionalItems": {
1217
- "$ref": "#/definitions/TabSetting"
1218
- },
1219
- "artifactType": "Manifest"
1220
1250
  }
1221
1251
  },
1222
1252
  "additionalProperties": false,
@@ -1229,10 +1259,6 @@
1229
1259
  "displayName": "settings",
1230
1260
  "type": "object",
1231
1261
  "properties": {
1232
- "entitySet": {
1233
- "description": "Represents the dominant entity set that will be displayed in the given card.",
1234
- "type": "string"
1235
- },
1236
1262
  "chartAnnotationPath": {
1237
1263
  "description": "Represents the chart annotation path.",
1238
1264
  "type": "string"
@@ -1245,6 +1271,10 @@
1245
1271
  "description": "Represents things like people, number of items.",
1246
1272
  "type": "string"
1247
1273
  },
1274
+ "entitySet": {
1275
+ "description": "Represents the dominant entity set that will be displayed in the given card.",
1276
+ "type": "string"
1277
+ },
1248
1278
  "title": {
1249
1279
  "description": "The language-dependent title of the card, used in the card header.",
1250
1280
  "i18nClassification": "TIT: Title of the card, used in the card header",
@@ -1313,13 +1343,29 @@
1313
1343
  ]
1314
1344
  },
1315
1345
  "requireAppAuthorization": {
1316
- "description": "Define an authorization check at card level",
1346
+ "description": "Define an authorization check at card level.",
1317
1347
  "type": "string"
1348
+ },
1349
+ "tabs": {
1350
+ "description": "Represents the card with view switch control.",
1351
+ "type": "array",
1352
+ "items": [
1353
+ {
1354
+ "$ref": "#/definitions/TabSetting"
1355
+ }
1356
+ ],
1357
+ "minItems": 1,
1358
+ "additionalItems": {
1359
+ "$ref": "#/definitions/TabSetting"
1360
+ }
1361
+ },
1362
+ "addODataSelect": {
1363
+ "description": "add $Select parameter in data fetch URL",
1364
+ "type": "boolean"
1318
1365
  }
1319
1366
  },
1320
1367
  "additionalProperties": false,
1321
1368
  "required": [
1322
- "entitySet",
1323
1369
  "title"
1324
1370
  ]
1325
1371
  }
@@ -25,6 +25,8 @@ const excel = __importStar(require("excel4node"));
25
25
  * @param reference - Content for the $ref property
26
26
  * @param output - Array of descriptions with assigned hierarchy elements, all separated by ';' (csv like)
27
27
  * @param definition - The current hierarchy element (list of path parts separated by ';')
28
+ * @param description - The description of the current hierarchy element
29
+ * @param additionalMetadata - Additional information about the current hierarchy element, separated by ';'
28
30
  */
29
31
  function dereference(schema, reference, output, definition, description, additionalMetadata) {
30
32
  const currentDefinition = reference.split('#/definitions/')[1];
@@ -39,7 +41,7 @@ function dereference(schema, reference, output, definition, description, additio
39
41
  * Handles one property of a sub-schema
40
42
  * @param schema - Object representing the whole generic schema
41
43
  * @param subSchema - Object representing the current sub-structure of the schema
42
- * @param property - Name of the property ithin the subSchema
44
+ * @param property - Name of the property within the subSchema
43
45
  * @param output - Array of descriptions with assigned hierarchy elements, all separated by ';' (csv like)
44
46
  * @param definition - The current hierarchy element (list of path parts separated by ';')
45
47
  */
@@ -80,7 +82,7 @@ function processElement(schema, subSchema, property, output, definition) {
80
82
  return;
81
83
  }
82
84
  else if (element['anyOf']) {
83
- handleAnyOf(schema, element['anyOf'], output, definition, element['description']);
85
+ handleAnyOf(schema, element['anyOf'], output, definition, element['description'], element, additionalMetadata);
84
86
  return;
85
87
  }
86
88
  if (element['type'] && element['items']) {
@@ -112,20 +114,26 @@ function processElement(schema, subSchema, property, output, definition) {
112
114
  }
113
115
  }
114
116
  /**
115
- * Special handing of anyOf elements of a JSON schema
117
+ * Special handling of anyOf elements of a JSON schema
116
118
  * @param schema - Object representing the whole generic schema
117
119
  * @param anyOfSchema - Object representing the current sub-structure of the schema
118
120
  * @param output - Array of descriptions with assigned hierarchy elements, all separated by ';' (csv like)
119
121
  * @param definition - The current hierarchy element (list of path parts separated by ';')
122
+ * @param description - The description of the current hierarchy element
123
+ * @param element - Object representing the sub-structure of the current hierarchy element
124
+ * @param additionalMetadata - Additional information about the current hierarchy element, separated by ';' (e.g. artifactType)
120
125
  */
121
- function handleAnyOf(schema, anyOfSchema, output, definition, description) {
126
+ function handleAnyOf(schema, anyOfSchema, output, definition, description, element, additionalMetadata) {
122
127
  for (let index = 0; index < anyOfSchema.length; index++) {
123
- const element = anyOfSchema[index];
124
- if (Object.keys(element)[0] === '$ref') {
125
- dereference(schema, element['$ref'], output, definition);
128
+ const anyOfSchemaElement = anyOfSchema[index];
129
+ if ((element === null || element === void 0 ? void 0 : element['pattern']) && anyOfSchemaElement['type'] === 'string') {
130
+ return;
131
+ }
132
+ if (Object.keys(anyOfSchemaElement)[0] === '$ref') {
133
+ dereference(schema, anyOfSchemaElement['$ref'], output, definition, description, additionalMetadata);
126
134
  }
127
135
  else {
128
- parseSchema(schema, element, output, definition, description);
136
+ parseSchema(schema, anyOfSchemaElement, output, definition, description, additionalMetadata);
129
137
  }
130
138
  }
131
139
  }
@@ -135,6 +143,8 @@ function handleAnyOf(schema, anyOfSchema, output, definition, description) {
135
143
  * @param subSchema - Object representing the current sub-structure of the schema
136
144
  * @param output - Array of descriptions with assigned hierarchy elements, all separated by ';' (csv like)
137
145
  * @param definition - The current hierarchy element (list of path parts separated by ';')
146
+ * @param description - The description of the current hierarchy element
147
+ * @param additionalMetadata - Additional information about the current hierarchy element, separated by ';' (e.g. artifactType)
138
148
  */
139
149
  function parseSchema(schema, subSchema, output, definition, description, additionalMetadata) {
140
150
  if (Object.keys(subSchema) && Object.keys(subSchema)[0] === 'anyOf') {