@sap/ux-specification 1.71.49 → 1.71.52

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 (128) hide show
  1. package/CHANGELOG.md +53 -2
  2. package/dist/documentation/runDocu-min.js +1 -1
  3. package/dist/documentation/styleDocu.css +7 -14
  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 +86 -2
  11. package/dist/schemas/v2/ListReportConfig.json +88 -4
  12. package/dist/schemas/v2/ObjectPageConfig.json +89 -33
  13. package/dist/scripts/runDocu.js +30 -7
  14. package/dist/scripts/runDocu.js.map +1 -1
  15. package/dist/scripts/to-json-schema.js +27 -32
  16. package/dist/scripts/to-json-schema.js.map +1 -1
  17. package/dist/src/api.js +3 -3
  18. package/dist/src/api.js.map +1 -1
  19. package/dist/src/apiTypes.d.ts +1 -2
  20. package/dist/src/specification/schemaAccess.js +1 -3
  21. package/dist/src/specification/schemaAccess.js.map +1 -1
  22. package/dist/src/specification/v2/controls/Action.d.ts +19 -2
  23. package/dist/src/specification/v2/controls/FilterBar.d.ts +19 -2
  24. package/dist/src/specification/v2/controls/Footer.d.ts +20 -0
  25. package/dist/src/specification/v2/controls/{ObjectPageFooter.js → Footer.js} +1 -1
  26. package/dist/src/specification/v2/controls/Footer.js.map +1 -0
  27. package/dist/src/specification/v2/controls/Table.d.ts +8 -1
  28. package/dist/src/specification/v2/controls/Table.js.map +1 -1
  29. package/dist/src/specification/v2/controls/ToolBar.d.ts +1 -8
  30. package/dist/src/specification/v2/controls/index.d.ts +1 -2
  31. package/dist/src/specification/v2/controls/index.js.map +1 -1
  32. package/dist/src/specification/v2/pages/AnalyticalListPageConfig.d.ts +2 -1
  33. package/dist/src/specification/v2/pages/ListReportConfig.d.ts +3 -2
  34. package/dist/src/sync/common/appProvider.js.map +1 -1
  35. package/dist/src/sync/common/decoration/control.d.ts +11 -1
  36. package/dist/src/sync/common/decoration/control.js +29 -3
  37. package/dist/src/sync/common/decoration/control.js.map +1 -1
  38. package/dist/src/sync/common/decoration/factory.js +2 -4
  39. package/dist/src/sync/common/decoration/factory.js.map +1 -1
  40. package/dist/src/sync/common/generate/objectPage.d.ts +9 -0
  41. package/dist/src/sync/common/generate/objectPage.js +87 -20
  42. package/dist/src/sync/common/generate/objectPage.js.map +1 -1
  43. package/dist/src/sync/common/generate/utils.d.ts +27 -0
  44. package/dist/src/sync/common/generate/utils.js +118 -3
  45. package/dist/src/sync/common/generate/utils.js.map +1 -1
  46. package/dist/src/sync/common/i18n.json +2 -0
  47. package/dist/src/sync/common/import/utils.d.ts +8 -1
  48. package/dist/src/sync/common/import/utils.js +15 -4
  49. package/dist/src/sync/common/import/utils.js.map +1 -1
  50. package/dist/src/sync/common/importProject.js +10 -17
  51. package/dist/src/sync/common/importProject.js.map +1 -1
  52. package/dist/src/sync/common/types.d.ts +31 -17
  53. package/dist/src/sync/common/types.js +25 -1
  54. package/dist/src/sync/common/types.js.map +1 -1
  55. package/dist/src/sync/common/utils.d.ts +10 -1
  56. package/dist/src/sync/common/utils.js +26 -23
  57. package/dist/src/sync/common/utils.js.map +1 -1
  58. package/dist/src/sync/v2/export/controls/Action.d.ts +15 -0
  59. package/dist/src/sync/v2/export/controls/Action.js +68 -15
  60. package/dist/src/sync/v2/export/controls/Action.js.map +1 -1
  61. package/dist/src/sync/v2/export/controls/FilterBar.d.ts +3 -3
  62. package/dist/src/sync/v2/export/controls/FilterBar.js +20 -27
  63. package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -1
  64. package/dist/src/sync/v2/export/controls/FormAction.js +3 -2
  65. package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -1
  66. package/dist/src/sync/v2/export/controls/Fragment.d.ts +1 -1
  67. package/dist/src/sync/v2/export/controls/Fragment.js +239 -164
  68. package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -1
  69. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts +2 -2
  70. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +9 -9
  71. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -1
  72. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +4 -4
  73. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +12 -15
  74. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -1
  75. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +6 -4
  76. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -1
  77. package/dist/src/sync/v2/export/controls/TableColumn.d.ts +18 -2
  78. package/dist/src/sync/v2/export/controls/TableColumn.js +126 -1
  79. package/dist/src/sync/v2/export/controls/TableColumn.js.map +1 -1
  80. package/dist/src/sync/v2/export/export.js +140 -112
  81. package/dist/src/sync/v2/export/export.js.map +1 -1
  82. package/dist/src/sync/v2/export/manifest.js +2 -5
  83. package/dist/src/sync/v2/export/manifest.js.map +1 -1
  84. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts +2 -1
  85. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js +3 -0
  86. package/dist/src/sync/v2/export/pages/AnalyticalListPage.js.map +1 -1
  87. package/dist/src/sync/v2/export/pages/ListReport.d.ts +3 -2
  88. package/dist/src/sync/v2/export/pages/ListReport.js +3 -0
  89. package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -1
  90. package/dist/src/sync/v2/export/view-controller-generator.d.ts +16 -21
  91. package/dist/src/sync/v2/export/view-controller-generator.js +20 -36
  92. package/dist/src/sync/v2/export/view-controller-generator.js.map +1 -1
  93. package/dist/src/sync/v2/generate/analyticalListReport.js +14 -6
  94. package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -1
  95. package/dist/src/sync/v2/generate/listReport.js +12 -3
  96. package/dist/src/sync/v2/generate/listReport.js.map +1 -1
  97. package/dist/src/sync/v2/generate/objectPage.d.ts +1 -5
  98. package/dist/src/sync/v2/generate/objectPage.js +16 -42
  99. package/dist/src/sync/v2/generate/objectPage.js.map +1 -1
  100. package/dist/src/sync/v2/generate/utils.d.ts +22 -11
  101. package/dist/src/sync/v2/generate/utils.js +277 -110
  102. package/dist/src/sync/v2/generate/utils.js.map +1 -1
  103. package/dist/src/sync/v2/import/common/index.d.ts +22 -4
  104. package/dist/src/sync/v2/import/common/index.js +237 -17
  105. package/dist/src/sync/v2/import/common/index.js.map +1 -1
  106. package/dist/src/sync/v2/import/controls/table.js +3 -2
  107. package/dist/src/sync/v2/import/controls/table.js.map +1 -1
  108. package/dist/src/sync/v2/import/pages/analyticalListPage.js +27 -5
  109. package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -1
  110. package/dist/src/sync/v2/import/pages/listReport.d.ts +0 -5
  111. package/dist/src/sync/v2/import/pages/listReport.js +14 -124
  112. package/dist/src/sync/v2/import/pages/listReport.js.map +1 -1
  113. package/dist/src/sync/v2/import/pages/objectPage.js +200 -107
  114. package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -1
  115. package/dist/src/sync/v2/import/utils.d.ts +4 -6
  116. package/dist/src/sync/v2/import/utils.js +43 -11
  117. package/dist/src/sync/v2/import/utils.js.map +1 -1
  118. package/dist/src/sync/v2/types.d.ts +8 -1
  119. package/dist/src/sync/v2/types.js +8 -1
  120. package/dist/src/sync/v2/types.js.map +1 -1
  121. package/dist/test/unit/utils.test.d.ts +1 -1
  122. package/package.json +7 -10
  123. package/dist/src/specification/v2/controls/ObjectPageFooter.d.ts +0 -11
  124. package/dist/src/specification/v2/controls/ObjectPageFooter.js.map +0 -1
  125. package/dist/src/specification/v2/controls/ObjectPageFooterAction.d.ts +0 -28
  126. package/dist/src/specification/v2/controls/ObjectPageFooterAction.js +0 -3
  127. package/dist/src/specification/v2/controls/ObjectPageFooterAction.js.map +0 -1
  128. package/dist/test/test-utils/metadataParser.d.ts +0 -19
@@ -26,6 +26,9 @@
26
26
  "chart": {
27
27
  "$ref": "#/definitions/ChartSettings"
28
28
  },
29
+ "footer": {
30
+ "$ref": "#/definitions/GenericFooter"
31
+ },
29
32
  "keyPerformanceIndicators": {
30
33
  "description": "Key Performance Indicators",
31
34
  "isViewNode": true,
@@ -319,13 +322,13 @@
319
322
  "controlType": "sap.m.Button"
320
323
  },
321
324
  "icon": {
322
- "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font, represented as RFC 3986 conformant URI.",
325
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
323
326
  "type": "string",
324
327
  "artifactType": "FlexChange",
325
328
  "controlType": "sap.m.Button"
326
329
  },
327
330
  "activeIcon": {
328
- "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
331
+ "description": "Alternative icon for the active (depressed) state of the button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
329
332
  "type": "string",
330
333
  "artifactType": "FlexChange",
331
334
  "controlType": "sap.m.Button"
@@ -360,6 +363,9 @@
360
363
  {
361
364
  "$ref": "#/definitions/TableColumn"
362
365
  },
366
+ {
367
+ "$ref": "#/definitions/TableColumnAction"
368
+ },
363
369
  {
364
370
  "description": "Custom Columns",
365
371
  "isViewNode": true,
@@ -410,6 +416,59 @@
410
416
  ],
411
417
  "type": "string"
412
418
  },
419
+ "TableColumnAction": {
420
+ "description": "Column Action",
421
+ "isViewNode": true,
422
+ "type": "object",
423
+ "properties": {
424
+ "tooltip": {
425
+ "description": "The text of the button tooltip, preferably as an i18n key.",
426
+ "i18nClassification": "ACT: Text for tooltip of button.",
427
+ "type": "string",
428
+ "artifactType": "FlexChange",
429
+ "controlType": "sap.m.Button"
430
+ },
431
+ "icon": {
432
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
433
+ "type": "string",
434
+ "artifactType": "FlexChange",
435
+ "controlType": "sap.m.Button"
436
+ },
437
+ "activeIcon": {
438
+ "description": "Alternative icon for the active (depressed) state of the button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
439
+ "type": "string",
440
+ "artifactType": "FlexChange",
441
+ "controlType": "sap.m.Button"
442
+ },
443
+ "type": {
444
+ "$ref": "#/definitions/ButtonType",
445
+ "description": "Defines the Button type.",
446
+ "artifactType": "FlexChange",
447
+ "controlType": "sap.m.Button"
448
+ },
449
+ "width": {
450
+ "description": "The width property defines the width of the column.",
451
+ "type": "string",
452
+ "artifactType": "FlexChange",
453
+ "controlType": "sap.m.Column"
454
+ },
455
+ "hAlign": {
456
+ "pattern": "^(Begin|Center|End|Initial|Left|Right)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
457
+ "anyOf": [
458
+ {
459
+ "$ref": "#/definitions/HAlign"
460
+ },
461
+ {
462
+ "type": "string"
463
+ }
464
+ ],
465
+ "description": "The hAlign property defines the horizontal alignment of the column content.",
466
+ "artifactType": "FlexChange",
467
+ "controlType": "sap.m.Column"
468
+ }
469
+ },
470
+ "additionalProperties": false
471
+ },
413
472
  "TableCustomColumn": {
414
473
  "description": "Custom Column",
415
474
  "isViewNode": true,
@@ -763,10 +822,24 @@
763
822
  "type": "boolean",
764
823
  "artifactType": "FlexChange",
765
824
  "controlType": "sap.ui.comp.smartfilterbar.SmartFilterBar"
825
+ },
826
+ "selectionFields": {
827
+ "$ref": "#/definitions/SelectionFields"
766
828
  }
767
829
  },
768
830
  "additionalProperties": false
769
831
  },
832
+ "SelectionFields": {
833
+ "description": "Filter Fields",
834
+ "isViewNode": true,
835
+ "type": "object",
836
+ "additionalProperties": {
837
+ "description": "Filter Field",
838
+ "isViewNode": true,
839
+ "type": "object",
840
+ "properties": {}
841
+ }
842
+ },
770
843
  "ChartSettings": {
771
844
  "description": "Chart",
772
845
  "isViewNode": true,
@@ -834,6 +907,17 @@
834
907
  },
835
908
  "additionalProperties": false
836
909
  },
910
+ "GenericFooter": {
911
+ "description": "Footer",
912
+ "isViewNode": true,
913
+ "type": "object",
914
+ "properties": {
915
+ "actions": {
916
+ "$ref": "#/definitions/Actions"
917
+ }
918
+ },
919
+ "additionalProperties": false
920
+ },
837
921
  "KPISettings": {
838
922
  "description": "KPI Settings",
839
923
  "isViewNode": true,
@@ -24,7 +24,10 @@
24
24
  ]
25
25
  },
26
26
  "filterBar": {
27
- "$ref": "#/definitions/FilterBar"
27
+ "$ref": "#/definitions/ListReportFilterBar"
28
+ },
29
+ "footer": {
30
+ "$ref": "#/definitions/GenericFooter"
28
31
  },
29
32
  "$schema": {
30
33
  "type": "string"
@@ -323,13 +326,13 @@
323
326
  "controlType": "sap.m.Button"
324
327
  },
325
328
  "icon": {
326
- "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font, represented as RFC 3986 conformant URI.",
329
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
327
330
  "type": "string",
328
331
  "artifactType": "FlexChange",
329
332
  "controlType": "sap.m.Button"
330
333
  },
331
334
  "activeIcon": {
332
- "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
335
+ "description": "Alternative icon for the active (depressed) state of the button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
333
336
  "type": "string",
334
337
  "artifactType": "FlexChange",
335
338
  "controlType": "sap.m.Button"
@@ -364,6 +367,9 @@
364
367
  {
365
368
  "$ref": "#/definitions/TableColumn"
366
369
  },
370
+ {
371
+ "$ref": "#/definitions/TableColumnAction"
372
+ },
367
373
  {
368
374
  "description": "Custom Columns",
369
375
  "isViewNode": true,
@@ -414,6 +420,59 @@
414
420
  ],
415
421
  "type": "string"
416
422
  },
423
+ "TableColumnAction": {
424
+ "description": "Column Action",
425
+ "isViewNode": true,
426
+ "type": "object",
427
+ "properties": {
428
+ "tooltip": {
429
+ "description": "The text of the button tooltip, preferably as an i18n key.",
430
+ "i18nClassification": "ACT: Text for tooltip of button.",
431
+ "type": "string",
432
+ "artifactType": "FlexChange",
433
+ "controlType": "sap.m.Button"
434
+ },
435
+ "icon": {
436
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
437
+ "type": "string",
438
+ "artifactType": "FlexChange",
439
+ "controlType": "sap.m.Button"
440
+ },
441
+ "activeIcon": {
442
+ "description": "Alternative icon for the active (depressed) state of the button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
443
+ "type": "string",
444
+ "artifactType": "FlexChange",
445
+ "controlType": "sap.m.Button"
446
+ },
447
+ "type": {
448
+ "$ref": "#/definitions/ButtonType",
449
+ "description": "Defines the Button type.",
450
+ "artifactType": "FlexChange",
451
+ "controlType": "sap.m.Button"
452
+ },
453
+ "width": {
454
+ "description": "The width property defines the width of the column.",
455
+ "type": "string",
456
+ "artifactType": "FlexChange",
457
+ "controlType": "sap.m.Column"
458
+ },
459
+ "hAlign": {
460
+ "pattern": "^(Begin|Center|End|Initial|Left|Right)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
461
+ "anyOf": [
462
+ {
463
+ "$ref": "#/definitions/HAlign"
464
+ },
465
+ {
466
+ "type": "string"
467
+ }
468
+ ],
469
+ "description": "The hAlign property defines the horizontal alignment of the column content.",
470
+ "artifactType": "FlexChange",
471
+ "controlType": "sap.m.Column"
472
+ }
473
+ },
474
+ "additionalProperties": false
475
+ },
417
476
  "TableCustomColumn": {
418
477
  "description": "Custom Column",
419
478
  "isViewNode": true,
@@ -812,7 +871,7 @@
812
871
  },
813
872
  "additionalProperties": false
814
873
  },
815
- "FilterBar": {
874
+ "ListReportFilterBar": {
816
875
  "description": "Filter Bar",
817
876
  "isViewNode": true,
818
877
  "type": "object",
@@ -856,6 +915,31 @@
856
915
  "type": "boolean",
857
916
  "artifactType": "FlexChange",
858
917
  "controlType": "sap.ui.comp.smartfilterbar.SmartFilterBar"
918
+ },
919
+ "selectionFields": {
920
+ "$ref": "#/definitions/SelectionFields"
921
+ }
922
+ },
923
+ "additionalProperties": false
924
+ },
925
+ "SelectionFields": {
926
+ "description": "Filter Fields",
927
+ "isViewNode": true,
928
+ "type": "object",
929
+ "additionalProperties": {
930
+ "description": "Filter Field",
931
+ "isViewNode": true,
932
+ "type": "object",
933
+ "properties": {}
934
+ }
935
+ },
936
+ "GenericFooter": {
937
+ "description": "Footer",
938
+ "isViewNode": true,
939
+ "type": "object",
940
+ "properties": {
941
+ "actions": {
942
+ "$ref": "#/definitions/Actions"
859
943
  }
860
944
  },
861
945
  "additionalProperties": false
@@ -38,7 +38,7 @@
38
38
  ]
39
39
  },
40
40
  "footer": {
41
- "$ref": "#/definitions/ObjectPageFooter<GenericFooterActions>"
41
+ "$ref": "#/definitions/ObjectPageFooter<ObjectPageFooterActions>"
42
42
  },
43
43
  "$schema": {
44
44
  "type": "string"
@@ -132,13 +132,13 @@
132
132
  "controlType": "sap.uxap.ObjectPageHeaderActionButton"
133
133
  },
134
134
  "icon": {
135
- "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font, represented as RFC 3986 conformant URI.",
135
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
136
136
  "type": "string",
137
137
  "artifactType": "FlexChange",
138
138
  "controlType": "sap.uxap.ObjectPageHeaderActionButton"
139
139
  },
140
140
  "activeIcon": {
141
- "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
141
+ "description": "Alternative icon for the active (depressed) state of the button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
142
142
  "type": "string",
143
143
  "artifactType": "FlexChange",
144
144
  "controlType": "sap.uxap.ObjectPageHeaderActionButton"
@@ -329,13 +329,13 @@
329
329
  "controlType": "sap.m.Button"
330
330
  },
331
331
  "icon": {
332
- "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font, represented as RFC 3986 conformant URI.",
332
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
333
333
  "type": "string",
334
334
  "artifactType": "FlexChange",
335
335
  "controlType": "sap.m.Button"
336
336
  },
337
337
  "activeIcon": {
338
- "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
338
+ "description": "Alternative icon for the active (depressed) state of the button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
339
339
  "type": "string",
340
340
  "artifactType": "FlexChange",
341
341
  "controlType": "sap.m.Button"
@@ -604,13 +604,13 @@
604
604
  "controlType": "sap.m.Button"
605
605
  },
606
606
  "icon": {
607
- "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font, represented as RFC 3986 conformant URI.",
607
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
608
608
  "type": "string",
609
609
  "artifactType": "FlexChange",
610
610
  "controlType": "sap.m.Button"
611
611
  },
612
612
  "activeIcon": {
613
- "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
613
+ "description": "Alternative icon for the active (depressed) state of the button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
614
614
  "type": "string",
615
615
  "artifactType": "FlexChange",
616
616
  "controlType": "sap.m.Button"
@@ -631,6 +631,9 @@
631
631
  {
632
632
  "$ref": "#/definitions/TableColumn"
633
633
  },
634
+ {
635
+ "$ref": "#/definitions/TableColumnAction"
636
+ },
634
637
  {
635
638
  "description": "Custom Columns",
636
639
  "isViewNode": true,
@@ -681,6 +684,59 @@
681
684
  ],
682
685
  "type": "string"
683
686
  },
687
+ "TableColumnAction": {
688
+ "description": "Column Action",
689
+ "isViewNode": true,
690
+ "type": "object",
691
+ "properties": {
692
+ "tooltip": {
693
+ "description": "The text of the button tooltip, preferably as an i18n key.",
694
+ "i18nClassification": "ACT: Text for tooltip of button.",
695
+ "type": "string",
696
+ "artifactType": "FlexChange",
697
+ "controlType": "sap.m.Button"
698
+ },
699
+ "icon": {
700
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
701
+ "type": "string",
702
+ "artifactType": "FlexChange",
703
+ "controlType": "sap.m.Button"
704
+ },
705
+ "activeIcon": {
706
+ "description": "Alternative icon for the active (depressed) state of the button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
707
+ "type": "string",
708
+ "artifactType": "FlexChange",
709
+ "controlType": "sap.m.Button"
710
+ },
711
+ "type": {
712
+ "$ref": "#/definitions/ButtonType",
713
+ "description": "Defines the Button type.",
714
+ "artifactType": "FlexChange",
715
+ "controlType": "sap.m.Button"
716
+ },
717
+ "width": {
718
+ "description": "The width property defines the width of the column.",
719
+ "type": "string",
720
+ "artifactType": "FlexChange",
721
+ "controlType": "sap.m.Column"
722
+ },
723
+ "hAlign": {
724
+ "pattern": "^(Begin|Center|End|Initial|Left|Right)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
725
+ "anyOf": [
726
+ {
727
+ "$ref": "#/definitions/HAlign"
728
+ },
729
+ {
730
+ "type": "string"
731
+ }
732
+ ],
733
+ "description": "The hAlign property defines the horizontal alignment of the column content.",
734
+ "artifactType": "FlexChange",
735
+ "controlType": "sap.m.Column"
736
+ }
737
+ },
738
+ "additionalProperties": false
739
+ },
684
740
  "TableCustomColumn": {
685
741
  "description": "Custom Column",
686
742
  "isViewNode": true,
@@ -1142,28 +1198,47 @@
1142
1198
  "type"
1143
1199
  ]
1144
1200
  },
1145
- "ObjectPageFooter<GenericFooterActions>": {
1201
+ "ObjectPageFooter<ObjectPageFooterActions>": {
1146
1202
  "description": "Footer",
1147
1203
  "isViewNode": true,
1148
1204
  "type": "object",
1149
1205
  "properties": {
1150
1206
  "actions": {
1151
- "$ref": "#/definitions/GenericFooterActions"
1207
+ "$ref": "#/definitions/ObjectPageFooterActions"
1152
1208
  }
1153
1209
  },
1154
1210
  "additionalProperties": false
1155
1211
  },
1156
- "GenericFooterActions": {
1212
+ "ObjectPageFooterActions": {
1157
1213
  "type": "object",
1158
1214
  "additionalProperties": {
1159
- "$ref": "#/definitions/FooterAction"
1215
+ "$ref": "#/definitions/ObjectPageFooterAction"
1160
1216
  }
1161
1217
  },
1162
- "FooterAction": {
1218
+ "ObjectPageFooterAction": {
1163
1219
  "description": "Footer Action",
1164
1220
  "isViewNode": true,
1165
1221
  "type": "object",
1166
1222
  "properties": {
1223
+ "visible": {
1224
+ "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
1225
+ "anyOf": [
1226
+ {
1227
+ "enum": [
1228
+ false,
1229
+ true,
1230
+ "{ui>/editable}",
1231
+ "{= !${ui>/editable}}"
1232
+ ]
1233
+ },
1234
+ {
1235
+ "type": "string"
1236
+ }
1237
+ ],
1238
+ "description": "Whether the button should be visible on the screen.",
1239
+ "artifactType": "FlexChange",
1240
+ "controlType": "sap.m.Button"
1241
+ },
1167
1242
  "tooltip": {
1168
1243
  "description": "The text of the button tooltip, preferably as an i18n key.",
1169
1244
  "i18nClassification": "ACT: Text for tooltip of button.",
@@ -1172,13 +1247,13 @@
1172
1247
  "controlType": "sap.m.Button"
1173
1248
  },
1174
1249
  "icon": {
1175
- "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font, represented as RFC 3986 conformant URI.",
1250
+ "description": "Icon to be displayed as graphical element within the Button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
1176
1251
  "type": "string",
1177
1252
  "artifactType": "FlexChange",
1178
1253
  "controlType": "sap.m.Button"
1179
1254
  },
1180
1255
  "activeIcon": {
1181
- "description": "Alternative icon for the active (depressed) state of the button, represented as RFC 3986 conformant URI.",
1256
+ "description": "Alternative icon for the active (depressed) state of the button. Can be an image or icon from the icon font (https://sapui5.hana.ondemand.com/test-resources/sap/m/demokit/iconExplorer/webapp/index.html#/overview/SAP-icons), represented as RFC 3986 conformant URI.",
1182
1257
  "type": "string",
1183
1258
  "artifactType": "FlexChange",
1184
1259
  "controlType": "sap.m.Button"
@@ -1188,25 +1263,6 @@
1188
1263
  "description": "Defines the Button type.",
1189
1264
  "artifactType": "FlexChange",
1190
1265
  "controlType": "sap.m.Button"
1191
- },
1192
- "visible": {
1193
- "pattern": "^(false|true)$|^{[A-Za-z0-9{}&$!@#? _|,<>'()[\\]\\/:=.]+}$",
1194
- "anyOf": [
1195
- {
1196
- "enum": [
1197
- false,
1198
- true,
1199
- "{ui>/editable}",
1200
- "{= !${ui>/editable}}"
1201
- ]
1202
- },
1203
- {
1204
- "type": "string"
1205
- }
1206
- ],
1207
- "description": "Whether the button should be visible on the screen.",
1208
- "artifactType": "FlexChange",
1209
- "controlType": "sap.m.Button"
1210
1266
  }
1211
1267
  },
1212
1268
  "additionalProperties": false
@@ -91,7 +91,7 @@ function split(elem) {
91
91
  }
92
92
  // function to create the elements used in the tooltip depending on given data
93
93
  const tooltipElements = function (d) {
94
- const closeButton = '<div id="b2">' + closeIcon + '</div>', learnButton = '<div id="b1">Learn more</div>', name = '<div class="tip_prop">' + d.data.name + ' </div>', description = '<div class="tip_desc">' + d.data.description + '</div>', type = '<div class="tip_type">' + d.data.type + '</div>', enums = '<div class="tip_enums">' + d.data.type.replaceAll('|', ' | ') + '</div>', controlType = '<div class="tip_control">' + d.data.control + '</div>';
94
+ const closeButton = '<div id="b1">' + closeIcon + '</div>', name = '<div class="tip_prop">' + d.data.name + ' </div>', description = '<div class="tip_desc">' + d.data.description + '</div>', type = '<div class="tip_type">' + d.data.type + '</div>', enums = '<div class="tip_enums">' + d.data.type.replaceAll('|', ' | ') + '</div>', controlType = '<div class="tip_control">' + d.data.control + '</div>';
95
95
  let elements = closeButton;
96
96
  elements += name;
97
97
  // checks which data exist
@@ -112,7 +112,6 @@ const tooltipElements = function (d) {
112
112
  elements += controlType;
113
113
  if (d.data.type)
114
114
  elements += '</div>';
115
- elements += learnButton;
116
115
  return elements;
117
116
  };
118
117
  // function for collapsing nodes
@@ -186,6 +185,8 @@ function centerNode(source, ratio) {
186
185
  function resize() {
187
186
  innerWidth = jquery_1.default(window).width();
188
187
  innerHeight = jquery_1.default(window).height();
188
+ svg.attr('width', innerWidth);
189
+ svg.attr('height', innerHeight);
189
190
  centerNode(root, 5);
190
191
  }
191
192
  // function to draw the links between the nodes
@@ -240,17 +241,39 @@ function clickTitle(event, d) {
240
241
  .style('display', 'flex');
241
242
  tooltipDiv.html(tooltipElements(d));
242
243
  d3.select('#b1').on('click', function () {
243
- window.location.href = 'https://sapui5.hana.ondemand.com/#/topic/03265b0408e2432c9571d6b3feb6b1fd';
244
- });
245
- d3.select('#b2').on('click', function () {
246
244
  removeTooltip();
247
245
  });
248
246
  }
249
247
  else if (!d.data.type) {
250
248
  removeTooltip();
251
249
  }
252
- // recover the mouse position to control position of tooltip
253
- tooltipDiv.style('left', event.pageX + 20 + 'px').style('top', event.pageY + 20 + 'px');
250
+ // get dimensions of svg container to position tooltip
251
+ const out_width = svg.node().getBoundingClientRect().width - 420;
252
+ const out_height = svg.node().getBoundingClientRect().height - 220;
253
+ if (event.pageX > out_width && event.pageY > out_height) {
254
+ tooltipDiv
255
+ .style('top', event.pageY - 20 + 'px')
256
+ .style('left', event.pageX - 20 + 'px')
257
+ .style('transform', 'translate(-100%, -100%)');
258
+ }
259
+ else if (event.pageX > out_width && !(event.pageY > out_height)) {
260
+ tooltipDiv
261
+ .style('top', event.pageY + 20 + 'px')
262
+ .style('left', event.pageX - 20 + 'px')
263
+ .style('transform', 'translate(-100%, 0)');
264
+ }
265
+ else if (!(event.pageX > out_width) && event.pageY > out_height) {
266
+ tooltipDiv
267
+ .style('top', event.pageY - 20 + 'px')
268
+ .style('left', event.pageX + 20 + 'px')
269
+ .style('transform', 'translate(0, -100%)');
270
+ }
271
+ else {
272
+ tooltipDiv
273
+ .style('top', event.pageY + 20 + 'px')
274
+ .style('left', event.pageX + 20 + 'px')
275
+ .style('transform', 'translate(0, 0)');
276
+ }
254
277
  }
255
278
  // function to draw the tree
256
279
  function update(source) {