@sap/ux-specification 1.120.36 → 1.120.37
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -1
- package/dist/documentation/runDocu-min.js +1 -1
- package/dist/documentation/runDocu-min.js.map +2 -2
- package/dist/documentation/v2/v2-AnalyticalListPage.html +2 -2
- package/dist/documentation/v2/v2-ApplicationV2.html +2 -2
- package/dist/documentation/v2/v2-ListReport.html +2 -2
- package/dist/documentation/v2/v2-ObjectPage.html +2 -2
- package/dist/documentation/v2/v2-OverviewPage.html +2 -2
- package/dist/documentation/v4/v4-ApplicationV4.html +2 -2
- package/dist/documentation/v4/v4-BuildingBlocks.html +2 -2
- package/dist/documentation/v4/v4-FreestylePage.html +2 -2
- package/dist/documentation/v4/v4-ListReport.html +2 -2
- package/dist/documentation/v4/v4-ObjectPage.html +2 -2
- package/dist/index-min.js +79 -79
- package/dist/index-min.js.map +3 -3
- package/dist/schemas/v2/ApplicationV2.json +2 -1
- package/dist/schemas/v4/ApplicationV4.json +6 -1
- package/dist/specification/package.json +5 -5
- package/dist/specification/scripts/documentation/components/TreeDiagram.d.ts +21 -0
- package/dist/specification/scripts/documentation/components/TreeDiagram.d.ts.map +1 -1
- package/dist/specification/scripts/documentation/components/TreeDiagram.js +21 -0
- package/dist/specification/scripts/documentation/components/TreeDiagram.js.map +1 -1
- package/dist/specification/scripts/documentation/components/filter.d.ts +7 -0
- package/dist/specification/scripts/documentation/components/filter.d.ts.map +1 -1
- package/dist/specification/scripts/documentation/components/filter.js +30 -0
- package/dist/specification/scripts/documentation/components/filter.js.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/TreeUI.d.ts +70 -0
- package/dist/specification/scripts/documentation/components/ui/TreeUI.d.ts.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/TreeUI.js +70 -3
- package/dist/specification/scripts/documentation/components/ui/TreeUI.js.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/keyboardNavigation.d.ts +17 -0
- package/dist/specification/scripts/documentation/components/ui/keyboardNavigation.d.ts.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/keyboardNavigation.js +23 -0
- package/dist/specification/scripts/documentation/components/ui/keyboardNavigation.js.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/search.d.ts +12 -0
- package/dist/specification/scripts/documentation/components/ui/search.d.ts.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/search.js +78 -8
- package/dist/specification/scripts/documentation/components/ui/search.js.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/toggle.d.ts +21 -0
- package/dist/specification/scripts/documentation/components/ui/toggle.d.ts.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/toggle.js +23 -6
- package/dist/specification/scripts/documentation/components/ui/toggle.js.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/tooltip.d.ts +24 -0
- package/dist/specification/scripts/documentation/components/ui/tooltip.d.ts.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/tooltip.js +24 -3
- package/dist/specification/scripts/documentation/components/ui/tooltip.js.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/utils.d.ts +36 -0
- package/dist/specification/scripts/documentation/components/ui/utils.d.ts.map +1 -1
- package/dist/specification/scripts/documentation/components/ui/utils.js +36 -4
- package/dist/specification/scripts/documentation/components/ui/utils.js.map +1 -1
- package/dist/specification/scripts/extractDocu.js +49 -5
- package/dist/specification/scripts/extractDocu.js.map +1 -1
- package/dist/specification/scripts/macros/api.d.ts +4 -1
- package/dist/specification/scripts/macros/api.d.ts.map +1 -1
- package/dist/specification/scripts/macros/api.js +9 -1
- package/dist/specification/scripts/macros/api.js.map +1 -1
- package/dist/specification/scripts/macros/cmd.d.ts +1 -0
- package/dist/specification/scripts/macros/cmd.d.ts.map +1 -1
- package/dist/specification/scripts/macros/cmd.js +1 -0
- package/dist/specification/scripts/macros/cmd.js.map +1 -1
- package/dist/specification/scripts/macros/corrections.d.ts +1 -0
- package/dist/specification/scripts/macros/corrections.d.ts.map +1 -1
- package/dist/specification/scripts/macros/corrections.js +5 -0
- package/dist/specification/scripts/macros/corrections.js.map +1 -1
- package/dist/specification/scripts/macros/i18n.d.ts +1 -0
- package/dist/specification/scripts/macros/i18n.d.ts.map +1 -1
- package/dist/specification/scripts/macros/i18n.js +1 -0
- package/dist/specification/scripts/macros/i18n.js.map +1 -1
- package/dist/specification/scripts/macros/schema.d.ts +1 -0
- package/dist/specification/scripts/macros/schema.d.ts.map +1 -1
- package/dist/specification/scripts/macros/schema.js +18 -5
- package/dist/specification/scripts/macros/schema.js.map +1 -1
- package/dist/specification/scripts/schema/to-json-schema.d.ts +9 -5
- package/dist/specification/scripts/schema/to-json-schema.d.ts.map +1 -1
- package/dist/specification/scripts/schema/to-json-schema.js +32 -5
- package/dist/specification/scripts/schema/to-json-schema.js.map +1 -1
- package/dist/specification/scripts/spec.js +19 -9
- package/dist/specification/scripts/spec.js.map +1 -1
- package/dist/specification/src/api.d.ts +20 -12
- package/dist/specification/src/api.d.ts.map +1 -1
- package/dist/specification/src/api.js +22 -14
- package/dist/specification/src/api.js.map +1 -1
- package/dist/specification/src/extensionLogger.d.ts +3 -2
- package/dist/specification/src/extensionLogger.d.ts.map +1 -1
- package/dist/specification/src/extensionLogger.js +3 -2
- package/dist/specification/src/extensionLogger.js.map +1 -1
- package/dist/specification/src/i18n/i18n.d.ts +5 -0
- package/dist/specification/src/i18n/i18n.d.ts.map +1 -1
- package/dist/specification/src/i18n/i18n.js +5 -0
- package/dist/specification/src/i18n/i18n.js.map +1 -1
- package/dist/specification/src/project.d.ts +3 -1
- package/dist/specification/src/project.d.ts.map +1 -1
- package/dist/specification/src/project.js +3 -1
- package/dist/specification/src/project.js.map +1 -1
- package/dist/specification/src/specification/schemaAccess.d.ts +6 -2
- package/dist/specification/src/specification/schemaAccess.d.ts.map +1 -1
- package/dist/specification/src/specification/schemaAccess.js +10 -4
- package/dist/specification/src/specification/schemaAccess.js.map +1 -1
- package/dist/specification/src/sync/common/appProvider.d.ts +17 -6
- package/dist/specification/src/sync/common/appProvider.d.ts.map +1 -1
- package/dist/specification/src/sync/common/appProvider.js +33 -17
- package/dist/specification/src/sync/common/appProvider.js.map +1 -1
- package/dist/specification/src/sync/common/decoration/control.d.ts +26 -10
- package/dist/specification/src/sync/common/decoration/control.d.ts.map +1 -1
- package/dist/specification/src/sync/common/decoration/control.js +32 -13
- package/dist/specification/src/sync/common/decoration/control.js.map +1 -1
- package/dist/specification/src/sync/common/decoration/decorators.d.ts +14 -0
- package/dist/specification/src/sync/common/decoration/decorators.d.ts.map +1 -1
- package/dist/specification/src/sync/common/decoration/decorators.js +14 -0
- package/dist/specification/src/sync/common/decoration/decorators.js.map +1 -1
- package/dist/specification/src/sync/common/decoration/factory.d.ts +12 -3
- package/dist/specification/src/sync/common/decoration/factory.d.ts.map +1 -1
- package/dist/specification/src/sync/common/decoration/factory.js +6 -3
- package/dist/specification/src/sync/common/decoration/factory.js.map +1 -1
- package/dist/specification/src/sync/common/decoration/flex.d.ts +7 -0
- package/dist/specification/src/sync/common/decoration/flex.d.ts.map +1 -1
- package/dist/specification/src/sync/common/decoration/flex.js +7 -0
- package/dist/specification/src/sync/common/decoration/flex.js.map +1 -1
- package/dist/specification/src/sync/common/distTagEvaluator.d.ts +13 -3
- package/dist/specification/src/sync/common/distTagEvaluator.d.ts.map +1 -1
- package/dist/specification/src/sync/common/distTagEvaluator.js +13 -3
- package/dist/specification/src/sync/common/distTagEvaluator.js.map +1 -1
- package/dist/specification/src/sync/common/flexUtils.d.ts +11 -10
- package/dist/specification/src/sync/common/flexUtils.d.ts.map +1 -1
- package/dist/specification/src/sync/common/flexUtils.js +11 -10
- package/dist/specification/src/sync/common/flexUtils.js.map +1 -1
- package/dist/specification/src/sync/common/generate/objectPage.d.ts +27 -18
- package/dist/specification/src/sync/common/generate/objectPage.d.ts.map +1 -1
- package/dist/specification/src/sync/common/generate/objectPage.js +54 -33
- package/dist/specification/src/sync/common/generate/objectPage.js.map +1 -1
- package/dist/specification/src/sync/common/generate/utils.d.ts +65 -37
- package/dist/specification/src/sync/common/generate/utils.d.ts.map +1 -1
- package/dist/specification/src/sync/common/generate/utils.js +67 -37
- package/dist/specification/src/sync/common/generate/utils.js.map +1 -1
- package/dist/specification/src/sync/common/import/utils.d.ts +9 -3
- package/dist/specification/src/sync/common/import/utils.d.ts.map +1 -1
- package/dist/specification/src/sync/common/import/utils.js +9 -3
- package/dist/specification/src/sync/common/import/utils.js.map +1 -1
- package/dist/specification/src/sync/common/importProject.d.ts +17 -6
- package/dist/specification/src/sync/common/importProject.d.ts.map +1 -1
- package/dist/specification/src/sync/common/importProject.js +60 -30
- package/dist/specification/src/sync/common/importProject.js.map +1 -1
- package/dist/specification/src/sync/common/utils.d.ts +129 -53
- package/dist/specification/src/sync/common/utils.d.ts.map +1 -1
- package/dist/specification/src/sync/common/utils.js +235 -94
- package/dist/specification/src/sync/common/utils.js.map +1 -1
- package/dist/specification/src/sync/i18n.d.ts +5 -0
- package/dist/specification/src/sync/i18n.d.ts.map +1 -1
- package/dist/specification/src/sync/i18n.js +5 -0
- package/dist/specification/src/sync/i18n.js.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/Action.d.ts +3 -3
- package/dist/specification/src/sync/v2/export/controls/Action.js +15 -15
- package/dist/specification/src/sync/v2/export/controls/Card.d.ts +14 -0
- package/dist/specification/src/sync/v2/export/controls/Card.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/Card.js +20 -0
- package/dist/specification/src/sync/v2/export/controls/Card.js.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/Field.js +5 -5
- package/dist/specification/src/sync/v2/export/controls/FilterBar.d.ts +13 -0
- package/dist/specification/src/sync/v2/export/controls/FilterBar.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/FilterBar.js +21 -0
- package/dist/specification/src/sync/v2/export/controls/FilterBar.js.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/FormAction.js +4 -4
- package/dist/specification/src/sync/v2/export/controls/Fragment.d.ts +10 -5
- package/dist/specification/src/sync/v2/export/controls/Fragment.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/Fragment.js +62 -25
- package/dist/specification/src/sync/v2/export/controls/Fragment.js.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/ObjectPageFooterAction.js +6 -6
- package/dist/specification/src/sync/v2/export/controls/ObjectPageHeaderAction.js +6 -6
- package/dist/specification/src/sync/v2/export/controls/ObjectPageHeaderSection.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/ObjectPageHeaderSection.js +20 -16
- package/dist/specification/src/sync/v2/export/controls/ObjectPageHeaderSection.js.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/ObjectPageSection.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/ObjectPageSection.js.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/ObjectPageToolBarAction.js +6 -6
- package/dist/specification/src/sync/v2/export/controls/Table.d.ts +24 -0
- package/dist/specification/src/sync/v2/export/controls/Table.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/Table.js +48 -3
- package/dist/specification/src/sync/v2/export/controls/Table.js.map +1 -1
- package/dist/specification/src/sync/v2/export/controls/TableColumn.js +10 -10
- package/dist/specification/src/sync/v2/export/export.d.ts +7 -3
- package/dist/specification/src/sync/v2/export/export.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/export.js +133 -44
- package/dist/specification/src/sync/v2/export/export.js.map +1 -1
- package/dist/specification/src/sync/v2/export/exportPage.d.ts +18 -10
- package/dist/specification/src/sync/v2/export/exportPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/exportPage.js +34 -20
- package/dist/specification/src/sync/v2/export/exportPage.js.map +1 -1
- package/dist/specification/src/sync/v2/export/exportPageGeneric.d.ts +5 -2
- package/dist/specification/src/sync/v2/export/exportPageGeneric.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/exportPageGeneric.js +27 -17
- package/dist/specification/src/sync/v2/export/exportPageGeneric.js.map +1 -1
- package/dist/specification/src/sync/v2/export/manifest.d.ts +5 -2
- package/dist/specification/src/sync/v2/export/manifest.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/manifest.js +30 -6
- package/dist/specification/src/sync/v2/export/manifest.js.map +1 -1
- package/dist/specification/src/sync/v2/export/pages/OverviewPage.d.ts +21 -0
- package/dist/specification/src/sync/v2/export/pages/OverviewPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/pages/OverviewPage.js +36 -2
- package/dist/specification/src/sync/v2/export/pages/OverviewPage.js.map +1 -1
- package/dist/specification/src/sync/v2/export/view-controller-generator.d.ts +25 -15
- package/dist/specification/src/sync/v2/export/view-controller-generator.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/export/view-controller-generator.js +27 -16
- package/dist/specification/src/sync/v2/export/view-controller-generator.js.map +1 -1
- package/dist/specification/src/sync/v2/generate/analyticalListReport.d.ts +2 -0
- package/dist/specification/src/sync/v2/generate/analyticalListReport.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/generate/analyticalListReport.js +6 -0
- package/dist/specification/src/sync/v2/generate/analyticalListReport.js.map +1 -1
- package/dist/specification/src/sync/v2/generate/generate.d.ts +5 -9
- package/dist/specification/src/sync/v2/generate/generate.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/generate/generate.js +9 -12
- package/dist/specification/src/sync/v2/generate/generate.js.map +1 -1
- package/dist/specification/src/sync/v2/generate/listReport.d.ts +4 -2
- package/dist/specification/src/sync/v2/generate/listReport.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/generate/listReport.js +24 -7
- package/dist/specification/src/sync/v2/generate/listReport.js.map +1 -1
- package/dist/specification/src/sync/v2/generate/objectPage.d.ts +2 -2
- package/dist/specification/src/sync/v2/generate/objectPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/generate/objectPage.js +75 -43
- package/dist/specification/src/sync/v2/generate/objectPage.js.map +1 -1
- package/dist/specification/src/sync/v2/generate/overviewPage.d.ts +2 -2
- package/dist/specification/src/sync/v2/generate/overviewPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/generate/overviewPage.js +2 -2
- package/dist/specification/src/sync/v2/generate/overviewPage.js.map +1 -1
- package/dist/specification/src/sync/v2/generate/schemaAdaptation.js +2 -2
- package/dist/specification/src/sync/v2/generate/utils.d.ts +47 -22
- package/dist/specification/src/sync/v2/generate/utils.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/generate/utils.js +92 -33
- package/dist/specification/src/sync/v2/generate/utils.js.map +1 -1
- package/dist/specification/src/sync/v2/import/app/appProvider.d.ts +7 -0
- package/dist/specification/src/sync/v2/import/app/appProvider.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/import/app/appProvider.js +20 -4
- package/dist/specification/src/sync/v2/import/app/appProvider.js.map +1 -1
- package/dist/specification/src/sync/v2/import/app/ovpProvider.d.ts +4 -0
- package/dist/specification/src/sync/v2/import/app/ovpProvider.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/import/app/ovpProvider.js +4 -0
- package/dist/specification/src/sync/v2/import/app/ovpProvider.js.map +1 -1
- package/dist/specification/src/sync/v2/import/common/index.d.ts +28 -15
- package/dist/specification/src/sync/v2/import/common/index.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/import/common/index.js +91 -35
- package/dist/specification/src/sync/v2/import/common/index.js.map +1 -1
- package/dist/specification/src/sync/v2/import/controls/table.d.ts +6 -2
- package/dist/specification/src/sync/v2/import/controls/table.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/import/controls/table.js +6 -2
- package/dist/specification/src/sync/v2/import/controls/table.js.map +1 -1
- package/dist/specification/src/sync/v2/import/importPage.d.ts +2 -1
- package/dist/specification/src/sync/v2/import/importPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/import/importPage.js +4 -5
- package/dist/specification/src/sync/v2/import/importPage.js.map +1 -1
- package/dist/specification/src/sync/v2/import/pages/analyticalListPage.d.ts +3 -3
- package/dist/specification/src/sync/v2/import/pages/analyticalListPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/import/pages/analyticalListPage.js +9 -10
- package/dist/specification/src/sync/v2/import/pages/analyticalListPage.js.map +1 -1
- package/dist/specification/src/sync/v2/import/pages/listReport.d.ts +8 -7
- package/dist/specification/src/sync/v2/import/pages/listReport.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/import/pages/listReport.js +28 -24
- package/dist/specification/src/sync/v2/import/pages/listReport.js.map +1 -1
- package/dist/specification/src/sync/v2/import/pages/objectPage.d.ts +3 -3
- package/dist/specification/src/sync/v2/import/pages/objectPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/import/pages/objectPage.js +107 -76
- package/dist/specification/src/sync/v2/import/pages/objectPage.js.map +1 -1
- package/dist/specification/src/sync/v2/import/pages/overviewPage.d.ts +2 -1
- package/dist/specification/src/sync/v2/import/pages/overviewPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/import/pages/overviewPage.js +27 -12
- package/dist/specification/src/sync/v2/import/pages/overviewPage.js.map +1 -1
- package/dist/specification/src/sync/v2/import/utils.d.ts +18 -9
- package/dist/specification/src/sync/v2/import/utils.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/import/utils.js +27 -15
- package/dist/specification/src/sync/v2/import/utils.js.map +1 -1
- package/dist/specification/src/sync/v2/utils.d.ts +26 -1
- package/dist/specification/src/sync/v2/utils.d.ts.map +1 -1
- package/dist/specification/src/sync/v2/utils.js +46 -0
- package/dist/specification/src/sync/v2/utils.js.map +1 -1
- package/dist/specification/src/sync/v4/application.d.ts +7 -5
- package/dist/specification/src/sync/v4/application.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/application.js +7 -5
- package/dist/specification/src/sync/v4/application.js.map +1 -1
- package/dist/specification/src/sync/v4/export/controls/FilterBar.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/controls/FilterBar.js +8 -0
- package/dist/specification/src/sync/v4/export/controls/FilterBar.js.map +1 -1
- package/dist/specification/src/sync/v4/export/controls/ObjectPageFooter.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/controls/ObjectPageFooter.js.map +1 -1
- package/dist/specification/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -1
- package/dist/specification/src/sync/v4/export/controls/Table.d.ts +14 -9
- package/dist/specification/src/sync/v4/export/controls/Table.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/controls/Table.js +44 -17
- package/dist/specification/src/sync/v4/export/controls/Table.js.map +1 -1
- package/dist/specification/src/sync/v4/export/controls/TableColumn.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/controls/TableColumn.js.map +1 -1
- package/dist/specification/src/sync/v4/export/export.d.ts +6 -4
- package/dist/specification/src/sync/v4/export/export.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/export.js +136 -58
- package/dist/specification/src/sync/v4/export/export.js.map +1 -1
- package/dist/specification/src/sync/v4/export/exportCustomColumn.d.ts +6 -4
- package/dist/specification/src/sync/v4/export/exportCustomColumn.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/exportCustomColumn.js +6 -4
- package/dist/specification/src/sync/v4/export/exportCustomColumn.js.map +1 -1
- package/dist/specification/src/sync/v4/export/flexibleColumnLayout.d.ts +3 -2
- package/dist/specification/src/sync/v4/export/flexibleColumnLayout.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/flexibleColumnLayout.js +13 -9
- package/dist/specification/src/sync/v4/export/flexibleColumnLayout.js.map +1 -1
- package/dist/specification/src/sync/v4/export/fpmCustomPage.d.ts +6 -4
- package/dist/specification/src/sync/v4/export/fpmCustomPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/fpmCustomPage.js +9 -4
- package/dist/specification/src/sync/v4/export/fpmCustomPage.js.map +1 -1
- package/dist/specification/src/sync/v4/export/manifest.d.ts +6 -2
- package/dist/specification/src/sync/v4/export/manifest.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/manifest.js +46 -17
- package/dist/specification/src/sync/v4/export/manifest.js.map +1 -1
- package/dist/specification/src/sync/v4/export/pages/ListReport.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/pages/ListReport.js +4 -3
- package/dist/specification/src/sync/v4/export/pages/ListReport.js.map +1 -1
- package/dist/specification/src/sync/v4/export/utils.d.ts +6 -4
- package/dist/specification/src/sync/v4/export/utils.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/export/utils.js +6 -4
- package/dist/specification/src/sync/v4/export/utils.js.map +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/annotations.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/annotations.js +4 -0
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/annotations.js.map +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/extensions.d.ts +5 -3
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/extensions.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/extensions.js +14 -5
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/extensions.js.map +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/generator.d.ts +1 -0
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/generator.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/generator.js +18 -0
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/generator.js.map +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/pageExtensions.d.ts +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/pageExtensions.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/pageExtensions.js +2 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/pageExtensions.js.map +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/utils.d.ts +2 -0
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/utils.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/utils.js +2 -0
- package/dist/specification/src/sync/v4/generate/fpm-custom-page/utils.js.map +1 -1
- package/dist/specification/src/sync/v4/generate/freestylePage.d.ts +2 -2
- package/dist/specification/src/sync/v4/generate/freestylePage.js +2 -2
- package/dist/specification/src/sync/v4/generate/generate.d.ts +13 -11
- package/dist/specification/src/sync/v4/generate/generate.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/generate/generate.js +13 -11
- package/dist/specification/src/sync/v4/generate/generate.js.map +1 -1
- package/dist/specification/src/sync/v4/generate/listReport.d.ts +10 -7
- package/dist/specification/src/sync/v4/generate/listReport.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/generate/listReport.js +124 -78
- package/dist/specification/src/sync/v4/generate/listReport.js.map +1 -1
- package/dist/specification/src/sync/v4/generate/objectPage.d.ts +1 -1
- package/dist/specification/src/sync/v4/generate/objectPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/generate/objectPage.js +210 -162
- package/dist/specification/src/sync/v4/generate/objectPage.js.map +1 -1
- package/dist/specification/src/sync/v4/import/app/appProvider.d.ts +18 -4
- package/dist/specification/src/sync/v4/import/app/appProvider.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/import/app/appProvider.js +56 -24
- package/dist/specification/src/sync/v4/import/app/appProvider.js.map +1 -1
- package/dist/specification/src/sync/v4/import/fragment.d.ts +29 -4
- package/dist/specification/src/sync/v4/import/fragment.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/import/fragment.js +46 -7
- package/dist/specification/src/sync/v4/import/fragment.js.map +1 -1
- package/dist/specification/src/sync/v4/import/pages/fpmCustomPage.d.ts +3 -2
- package/dist/specification/src/sync/v4/import/pages/fpmCustomPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/import/pages/fpmCustomPage.js +7 -2
- package/dist/specification/src/sync/v4/import/pages/fpmCustomPage.js.map +1 -1
- package/dist/specification/src/sync/v4/import/pages/listReport.d.ts +12 -10
- package/dist/specification/src/sync/v4/import/pages/listReport.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/import/pages/listReport.js +70 -46
- package/dist/specification/src/sync/v4/import/pages/listReport.js.map +1 -1
- package/dist/specification/src/sync/v4/import/pages/objectPage.d.ts +7 -6
- package/dist/specification/src/sync/v4/import/pages/objectPage.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/import/pages/objectPage.js +52 -39
- package/dist/specification/src/sync/v4/import/pages/objectPage.js.map +1 -1
- package/dist/specification/src/sync/v4/import/utils.d.ts +4 -2
- package/dist/specification/src/sync/v4/import/utils.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/import/utils.js +4 -2
- package/dist/specification/src/sync/v4/import/utils.js.map +1 -1
- package/dist/specification/src/sync/v4/sync-rules/controllerExtensions.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/sync-rules/controllerExtensions.js +5 -2
- package/dist/specification/src/sync/v4/sync-rules/controllerExtensions.js.map +1 -1
- package/dist/specification/src/sync/v4/utils/StableIdHelper.d.ts +12 -0
- package/dist/specification/src/sync/v4/utils/StableIdHelper.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/utils/StableIdHelper.js +18 -0
- package/dist/specification/src/sync/v4/utils/StableIdHelper.js.map +1 -1
- package/dist/specification/src/sync/v4/utils/macros.d.ts +4 -0
- package/dist/specification/src/sync/v4/utils/macros.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/utils/macros.js +17 -1
- package/dist/specification/src/sync/v4/utils/macros.js.map +1 -1
- package/dist/specification/src/sync/v4/utils/utils.d.ts +38 -20
- package/dist/specification/src/sync/v4/utils/utils.d.ts.map +1 -1
- package/dist/specification/src/sync/v4/utils/utils.js +99 -52
- package/dist/specification/src/sync/v4/utils/utils.js.map +1 -1
- package/dist/types/src/common/Application.d.ts +6 -0
- package/dist/types/src/common/Application.d.ts.map +1 -1
- package/dist/types/src/common/Application.js +4 -0
- package/dist/types/src/common/Application.js.map +1 -1
- package/dist/types/src/common/types.d.ts +51 -2
- package/dist/types/src/common/types.d.ts.map +1 -1
- package/dist/types/src/common/types.js +2 -1
- package/dist/types/src/common/types.js.map +1 -1
- package/dist/types/src/common/webapp/manifest/sapUi5.d.ts +3 -2
- package/dist/types/src/common/webapp/manifest/sapUi5.d.ts.map +1 -1
- package/dist/types/src/common/webapp/manifest/sapUi5.js +3 -2
- package/dist/types/src/common/webapp/manifest/sapUi5.js.map +1 -1
- package/dist/types/src/v2/application.d.ts +1 -1
- package/dist/types/src/v2/controls/Action.d.ts +12 -0
- package/dist/types/src/v2/controls/Action.d.ts.map +1 -1
- package/dist/types/src/v2/controls/AnalyticalListPageChart.d.ts +1 -0
- package/dist/types/src/v2/controls/AnalyticalListPageChart.d.ts.map +1 -1
- package/dist/types/src/v2/controls/AnalyticalListPageKPI.d.ts +1 -0
- package/dist/types/src/v2/controls/AnalyticalListPageKPI.d.ts.map +1 -1
- package/dist/types/src/v2/controls/Card.d.ts +13 -0
- package/dist/types/src/v2/controls/Card.d.ts.map +1 -1
- package/dist/types/src/v2/controls/Card.js.map +1 -1
- package/dist/types/src/v2/controls/Field.d.ts +1 -0
- package/dist/types/src/v2/controls/Field.d.ts.map +1 -1
- package/dist/types/src/v2/controls/FilterBar.d.ts +6 -0
- package/dist/types/src/v2/controls/FilterBar.d.ts.map +1 -1
- package/dist/types/src/v2/controls/FilterBar.js.map +1 -1
- package/dist/types/src/v2/controls/Header.d.ts +1 -0
- package/dist/types/src/v2/controls/Header.d.ts.map +1 -1
- package/dist/types/src/v2/controls/ObjectPageChart.d.ts +1 -0
- package/dist/types/src/v2/controls/ObjectPageChart.d.ts.map +1 -1
- package/dist/types/src/v2/controls/ObjectPageFooter.d.ts +2 -0
- package/dist/types/src/v2/controls/ObjectPageFooter.d.ts.map +1 -1
- package/dist/types/src/v2/controls/ObjectPageForm.d.ts +1 -0
- package/dist/types/src/v2/controls/ObjectPageForm.d.ts.map +1 -1
- package/dist/types/src/v2/controls/ObjectPageHeader.d.ts +1 -0
- package/dist/types/src/v2/controls/ObjectPageHeader.d.ts.map +1 -1
- package/dist/types/src/v2/controls/ObjectPageHeaderSection.d.ts +3 -0
- package/dist/types/src/v2/controls/ObjectPageHeaderSection.d.ts.map +1 -1
- package/dist/types/src/v2/controls/ObjectPageLayout.d.ts +1 -0
- package/dist/types/src/v2/controls/ObjectPageLayout.d.ts.map +1 -1
- package/dist/types/src/v2/controls/ObjectPageSection.d.ts +13 -0
- package/dist/types/src/v2/controls/ObjectPageSection.d.ts.map +1 -1
- package/dist/types/src/v2/controls/ObjectPageSection.js.map +1 -1
- package/dist/types/src/v2/controls/ObjectPageTable.d.ts +6 -0
- package/dist/types/src/v2/controls/ObjectPageTable.d.ts.map +1 -1
- package/dist/types/src/v2/controls/ObjectPageToolBar.d.ts +2 -0
- package/dist/types/src/v2/controls/ObjectPageToolBar.d.ts.map +1 -1
- package/dist/types/src/v2/controls/Table.d.ts +28 -0
- package/dist/types/src/v2/controls/Table.d.ts.map +1 -1
- package/dist/types/src/v2/controls/Table.js.map +1 -1
- package/dist/types/src/v2/controls/ToolBar.d.ts +1 -0
- package/dist/types/src/v2/controls/ToolBar.d.ts.map +1 -1
- package/dist/types/src/v2/pages/AnalyticalListPageConfigV2.d.ts +1 -0
- package/dist/types/src/v2/pages/AnalyticalListPageConfigV2.d.ts.map +1 -1
- package/dist/types/src/v2/pages/OverviewPageConfigV2.d.ts +4 -0
- package/dist/types/src/v2/pages/OverviewPageConfigV2.d.ts.map +1 -1
- package/dist/types/src/v4/application.d.ts +1 -1
- package/dist/types/src/v4/controls/CustomAction.d.ts +10 -0
- package/dist/types/src/v4/controls/CustomAction.d.ts.map +1 -1
- package/dist/types/src/v4/controls/FilterBar.d.ts +11 -0
- package/dist/types/src/v4/controls/FilterBar.d.ts.map +1 -1
- package/dist/types/src/v4/controls/FilterBar.js.map +1 -1
- package/dist/types/src/v4/controls/Header.d.ts +1 -0
- package/dist/types/src/v4/controls/Header.d.ts.map +1 -1
- package/dist/types/src/v4/controls/ObjectPageFooter.d.ts +1 -0
- package/dist/types/src/v4/controls/ObjectPageFooter.d.ts.map +1 -1
- package/dist/types/src/v4/controls/ObjectPageForm.d.ts +1 -0
- package/dist/types/src/v4/controls/ObjectPageForm.d.ts.map +1 -1
- package/dist/types/src/v4/controls/ObjectPageHeader.d.ts +2 -0
- package/dist/types/src/v4/controls/ObjectPageHeader.d.ts.map +1 -1
- package/dist/types/src/v4/controls/ObjectPageHeaderSection.d.ts +6 -0
- package/dist/types/src/v4/controls/ObjectPageHeaderSection.d.ts.map +1 -1
- package/dist/types/src/v4/controls/ObjectPageLayout.d.ts +1 -0
- package/dist/types/src/v4/controls/ObjectPageLayout.d.ts.map +1 -1
- package/dist/types/src/v4/controls/ObjectPageSection.d.ts +17 -0
- package/dist/types/src/v4/controls/ObjectPageSection.d.ts.map +1 -1
- package/dist/types/src/v4/controls/ObjectPageSection.js.map +1 -1
- package/dist/types/src/v4/controls/ObjectPageTable.d.ts +9 -0
- package/dist/types/src/v4/controls/ObjectPageTable.d.ts.map +1 -1
- package/dist/types/src/v4/controls/ObjectPageTable.js.map +1 -1
- package/dist/types/src/v4/controls/ObjectPageToolBar.d.ts +4 -0
- package/dist/types/src/v4/controls/ObjectPageToolBar.d.ts.map +1 -1
- package/dist/types/src/v4/controls/Table.d.ts +16 -0
- package/dist/types/src/v4/controls/Table.d.ts.map +1 -1
- package/dist/types/src/v4/controls/ToolBar.d.ts +9 -0
- package/dist/types/src/v4/controls/ToolBar.d.ts.map +1 -1
- package/dist/types/src/v4/page.d.ts +4 -0
- package/dist/types/src/v4/page.d.ts.map +1 -1
- package/dist/types/src/v4/webapp/manifest/ManifestSettings.d.ts +22 -0
- package/dist/types/src/v4/webapp/manifest/ManifestSettings.d.ts.map +1 -1
- package/dist/types/src/v4/webapp/manifest/sapUi5.d.ts +3 -0
- package/dist/types/src/v4/webapp/manifest/sapUi5.d.ts.map +1 -1
- package/dist/types/src/v4/webapp/manifest/sapUi5.js.map +1 -1
- package/dist/types/src/v4/webapp/manifest/sapUiPageV4.d.ts +1 -1
- package/dist/types/src/v4/webapp/manifest/sapUiPageV4.d.ts.map +1 -1
- package/dist/types/src/v4/webapp/manifest/sapUiPageV4.js +2 -2
- package/dist/types/src/v4/webapp/manifest/sapUiPageV4.js.map +1 -1
- package/package.json +6 -6
|
@@ -46,6 +46,7 @@ exports.getJSONPropertyByPath = getJSONPropertyByPath;
|
|
|
46
46
|
exports.removeNamespaces = removeNamespaces;
|
|
47
47
|
exports.replaceNamespaces = replaceNamespaces;
|
|
48
48
|
exports.getRefType = getRefType;
|
|
49
|
+
exports.compareTemplateNames = compareTemplateNames;
|
|
49
50
|
const ux_specification_types_1 = require("@sap/ux-specification-types");
|
|
50
51
|
const i18next_1 = __importDefault(require("i18next"));
|
|
51
52
|
const deepmerge_1 = __importDefault(require("deepmerge"));
|
|
@@ -66,6 +67,7 @@ const arrayIncludes = (arr, target) => target.every((v) => arr.includes(v));
|
|
|
66
67
|
exports.arrayIncludes = arrayIncludes;
|
|
67
68
|
/**
|
|
68
69
|
* Function returns annotation path for schema based on received params.
|
|
70
|
+
*
|
|
69
71
|
* @param entityTypeName - Entity type name.
|
|
70
72
|
* @param term - Annotation term.
|
|
71
73
|
* @param qualifier - Annotation qualifier.
|
|
@@ -83,8 +85,10 @@ const createAnnotationPath = (entityTypeName, term, qualifier) => {
|
|
|
83
85
|
};
|
|
84
86
|
exports.createAnnotationPath = createAnnotationPath;
|
|
85
87
|
/**
|
|
86
|
-
* Parses, merges, and converts a list of annotation files with aid of tools from annotation-vocabularies-tools
|
|
88
|
+
* Parses, merges, and converts a list of annotation files with aid of tools from annotation-vocabularies-tools.
|
|
89
|
+
*
|
|
87
90
|
* @param annotationFiles - The list of all annotation files, in JSON format
|
|
91
|
+
* @param logger - Logger instance used for logging errors or messages during processing
|
|
88
92
|
* @returns the complete service information
|
|
89
93
|
*/
|
|
90
94
|
function parseAndMergeAndConvert(annotationFiles, logger) {
|
|
@@ -114,10 +118,12 @@ function parseAndMergeAndConvert(annotationFiles, logger) {
|
|
|
114
118
|
const getAnnotationPropertyValue = (annotationProperty) => annotationProperty?.value || annotationProperty?.path;
|
|
115
119
|
exports.getAnnotationPropertyValue = getAnnotationPropertyValue;
|
|
116
120
|
/**
|
|
117
|
-
* Checks for Common.Label and overwrites the label from it if present
|
|
121
|
+
* Checks for Common.Label and overwrites the label from it if present.
|
|
122
|
+
*
|
|
118
123
|
* @param {PropertyAnnotations} annotations - property annotations
|
|
119
124
|
* @param {EntityType} entityType - entity type
|
|
120
125
|
* @param {string} label - label, to be actualized
|
|
126
|
+
* @returns label, derived from Common.Label or from property value
|
|
121
127
|
*/
|
|
122
128
|
function evaluateCommonLabel(annotations, entityType, label) {
|
|
123
129
|
if (annotations?.Common?.Label) {
|
|
@@ -140,7 +146,8 @@ function evaluateCommonLabel(annotations, entityType, label) {
|
|
|
140
146
|
return label;
|
|
141
147
|
}
|
|
142
148
|
/**
|
|
143
|
-
* Determines the label for a property path
|
|
149
|
+
* Determines the label for a property path.
|
|
150
|
+
*
|
|
144
151
|
* @param {PropertyPath} propertyPath - property path
|
|
145
152
|
* @param {EntityType} entityType - entity type
|
|
146
153
|
* @returns label, derived from Common.Label or from property value
|
|
@@ -153,9 +160,10 @@ function getLabelForPropertyPath(propertyPath, entityType) {
|
|
|
153
160
|
return label;
|
|
154
161
|
}
|
|
155
162
|
/**
|
|
156
|
-
* Determines the label for a LineItem record
|
|
157
|
-
*
|
|
158
|
-
* @param
|
|
163
|
+
* Determines the label for a LineItem record.
|
|
164
|
+
*
|
|
165
|
+
* @param field - Line item record
|
|
166
|
+
* @param entityType - entity type
|
|
159
167
|
* @returns label, derived from Common.Label or from property value
|
|
160
168
|
*/
|
|
161
169
|
function getLabelForDataField(field, entityType) {
|
|
@@ -185,7 +193,8 @@ function getLabelForDataField(field, entityType) {
|
|
|
185
193
|
return label;
|
|
186
194
|
}
|
|
187
195
|
/**
|
|
188
|
-
* Function to resolve the dataField label
|
|
196
|
+
* Function to resolve the dataField label.
|
|
197
|
+
*
|
|
189
198
|
* @param dataFieldLabel - Given dataField label; might be of type string, or an object in case of a path reference
|
|
190
199
|
* @param entityType - the entity type as part of the AVT ConvertedMetadata
|
|
191
200
|
* @returns undefined or the right string value
|
|
@@ -211,6 +220,14 @@ function getLabel(dataFieldLabel, entityType) {
|
|
|
211
220
|
return undefined;
|
|
212
221
|
}
|
|
213
222
|
}
|
|
223
|
+
/**
|
|
224
|
+
* Retrieves the title for a given data field.
|
|
225
|
+
*
|
|
226
|
+
* @param dataField - The data field object containing metadata.
|
|
227
|
+
* @param entityType - The entity type as part of the AVT ConvertedMetadata.
|
|
228
|
+
* @param dataFieldLabel - The label associated with the data field.
|
|
229
|
+
* @returns The title for the data field as a string.
|
|
230
|
+
*/
|
|
214
231
|
function getTitleForDataField(dataField, entityType, dataFieldLabel) {
|
|
215
232
|
const propertyCommonLabel = getLabelForDataField(dataField, entityType);
|
|
216
233
|
return (dataFieldLabel ||
|
|
@@ -218,9 +235,11 @@ function getTitleForDataField(dataField, entityType, dataFieldLabel) {
|
|
|
218
235
|
(dataField.Value.$target ? dataField.Value.$target.name : dataField.Value.value || dataField.Value.path));
|
|
219
236
|
}
|
|
220
237
|
/**
|
|
221
|
-
* Determines the description of a data field, e.g. for the column header
|
|
238
|
+
* Determines the description of a data field, e.g. for the column header.
|
|
239
|
+
*
|
|
222
240
|
* @param dataFieldAbstract - the given record of the line item annotation
|
|
223
241
|
* @param entityType - the entity type as part of the AVT ConvertedMetadata
|
|
242
|
+
* @returns the description of the data field
|
|
224
243
|
*/
|
|
225
244
|
function getDataFieldDescription(dataFieldAbstract, entityType) {
|
|
226
245
|
let title = '', propertyCommonLabel, dataField, actionName = '';
|
|
@@ -278,17 +297,21 @@ function getDataFieldDescription(dataFieldAbstract, entityType) {
|
|
|
278
297
|
}
|
|
279
298
|
}
|
|
280
299
|
/**
|
|
281
|
-
* Prepare string for reference use in schema
|
|
300
|
+
* Prepare string for reference use in schema.
|
|
301
|
+
*
|
|
282
302
|
* @param refInput string to be character checked and replaced
|
|
283
303
|
* @returns string with replaced characters
|
|
284
304
|
*/
|
|
285
305
|
//@typescript-eslint/no-wrapper-object-types turned off tor prevent conversion String > string; String is used by AVT
|
|
306
|
+
// eslint-disable-next-line @typescript-eslint/no-wrapper-object-types
|
|
286
307
|
function prepareRef(refInput) {
|
|
287
308
|
return refInput.replace('#', '::').replace(/\//g, ':2f');
|
|
288
309
|
}
|
|
289
310
|
/**
|
|
290
|
-
* Return the page type for a given V2 page in manifest
|
|
311
|
+
* Return the page type for a given V2 page in manifest.
|
|
312
|
+
*
|
|
291
313
|
* @param name - page component name
|
|
314
|
+
* @returns page type
|
|
292
315
|
*/
|
|
293
316
|
function getPageTypeV2(name) {
|
|
294
317
|
if (name) {
|
|
@@ -297,28 +320,34 @@ function getPageTypeV2(name) {
|
|
|
297
320
|
}
|
|
298
321
|
}
|
|
299
322
|
/**
|
|
300
|
-
* Return the page type for a given V4 page in manifest
|
|
301
|
-
*
|
|
323
|
+
* Return the page type for a given V4 page in manifest.
|
|
324
|
+
*
|
|
325
|
+
* @param v4Page - The V4 application page or routing target configuration
|
|
326
|
+
* @returns page type
|
|
302
327
|
*/
|
|
303
|
-
function getPageTypeV4(
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
return
|
|
328
|
+
function getPageTypeV4(v4Page) {
|
|
329
|
+
const pageType = 'name' in v4Page && typeof v4Page.name === 'string' ? convertTemplateNameToPageTypeV4(v4Page.name) : undefined;
|
|
330
|
+
if (pageType) {
|
|
331
|
+
return pageType;
|
|
307
332
|
}
|
|
308
|
-
|
|
309
|
-
return ux_specification_types_1.PageTypeV4.FPMCustomPage;
|
|
310
|
-
}
|
|
311
|
-
else if (v4App.viewId ||
|
|
312
|
-
v4App.viewName) {
|
|
333
|
+
if (('viewId' in v4Page && v4Page.viewId) || ('viewName' in v4Page && v4Page.viewName)) {
|
|
313
334
|
return ux_specification_types_1.PageTypeV4.CustomPage;
|
|
314
335
|
}
|
|
315
336
|
}
|
|
337
|
+
/**
|
|
338
|
+
* Retrieves the name of the target annotation based on the provided annotation object and a flag.
|
|
339
|
+
*
|
|
340
|
+
* @param targetAnnotation - The annotation object containing term and qualifier information.
|
|
341
|
+
* @param keyForRelatedFacetKeys - A flag indicating whether to construct the key for related facet keys without the '@' symbol.
|
|
342
|
+
* @returns The name of the target annotation as a string.
|
|
343
|
+
*/
|
|
316
344
|
function getTargetAnnotationName(targetAnnotation, keyForRelatedFacetKeys = false) {
|
|
317
345
|
const termWithQualifier = `${targetAnnotation.term}#${targetAnnotation.qualifier}`;
|
|
318
346
|
return `${!keyForRelatedFacetKeys ? '@' : ''}${targetAnnotation.qualifier ? termWithQualifier : targetAnnotation.term}`;
|
|
319
347
|
}
|
|
320
348
|
/**
|
|
321
|
-
* Finds the alias for a given namespace in the references' section of the converted service metadata
|
|
349
|
+
* Finds the alias for a given namespace in the references' section of the converted service metadata.
|
|
350
|
+
*
|
|
322
351
|
* @param {string} namespace - complete namespace, e.g. 'com.sap.vocabularies.UI.v1'
|
|
323
352
|
* @param {ConvertedMetadata} oDataServiceAVT - combined service metadata, as returned by annotation vocabularies tools
|
|
324
353
|
* @returns alias for the given namespace
|
|
@@ -345,6 +374,7 @@ function findAlias(namespace, oDataServiceAVT) {
|
|
|
345
374
|
}
|
|
346
375
|
/**
|
|
347
376
|
* Method returns annotation from passed meta path.
|
|
377
|
+
*
|
|
348
378
|
* @param metaPath - annotation meta path
|
|
349
379
|
* @returns annotation name
|
|
350
380
|
*/
|
|
@@ -352,7 +382,8 @@ function getAnnotationFromMetaPath(metaPath) {
|
|
|
352
382
|
return metaPath.substring(metaPath.lastIndexOf('.') + 1, metaPath.length);
|
|
353
383
|
}
|
|
354
384
|
/**
|
|
355
|
-
* Determines the target annotation
|
|
385
|
+
* Determines the target annotation.
|
|
386
|
+
*
|
|
356
387
|
* @param navigationParts - parts of the target annotation path
|
|
357
388
|
* @param entityType - entity type
|
|
358
389
|
* @param {ConvertedMetadata} oDataServiceAVT - complete service information, as returned by annotation vocabularies tool
|
|
@@ -365,10 +396,12 @@ function determineTargetAnnotation(navigationParts, entityType, oDataServiceAVT)
|
|
|
365
396
|
return entityType?.annotations?.[alias]?.[annotation];
|
|
366
397
|
}
|
|
367
398
|
/**
|
|
368
|
-
* Adjust key by considering navigation
|
|
399
|
+
* Adjust key by considering navigation.
|
|
400
|
+
*
|
|
369
401
|
* @param key - given key
|
|
370
|
-
* @param keyForRelatedFacetKeys - construct key for 'keyForRelatedFacetKeys' property(used to define custom sections) - we should not add '@' symbol there.
|
|
371
402
|
* @param navigationParts - parts of the target annotation path
|
|
403
|
+
* @param keyForRelatedFacetKeys - construct key for 'keyForRelatedFacetKeys' property(used to define custom sections) - we should not add '@' symbol there.
|
|
404
|
+
* @returns adjusted key
|
|
372
405
|
*/
|
|
373
406
|
function adjustKey(key, navigationParts, keyForRelatedFacetKeys) {
|
|
374
407
|
const uiClass = navigationParts[navigationParts.length - 1].split('#')[0];
|
|
@@ -382,6 +415,17 @@ function adjustKey(key, navigationParts, keyForRelatedFacetKeys) {
|
|
|
382
415
|
}
|
|
383
416
|
return key;
|
|
384
417
|
}
|
|
418
|
+
/**
|
|
419
|
+
* Resolves the key and entity type of a reference facet, adjusting the key based on navigation and annotations.
|
|
420
|
+
*
|
|
421
|
+
* @param oDataServiceAVT - The converted metadata of the OData service.
|
|
422
|
+
* @param key - The initial key for the facet.
|
|
423
|
+
* @param entityType - The entity type associated with the facet.
|
|
424
|
+
* @param propertyValue - The property value of the facet's target.
|
|
425
|
+
* @param oDataVersion - The version of OData (v2 or v4).
|
|
426
|
+
* @param keyForRelatedFacetKeys - A flag indicating whether to construct the key for related facet keys without the '@' symbol.
|
|
427
|
+
* @returns An object containing the adjusted key, entity type, a flag to stop processing, and the namespace.
|
|
428
|
+
*/
|
|
385
429
|
function getKeyAndEntityTypeOfReferenceFacet(oDataServiceAVT, key, entityType, propertyValue, oDataVersion = ux_specification_types_1.FioriElementsVersion.v2, keyForRelatedFacetKeys = false) {
|
|
386
430
|
let stopProcessing = false;
|
|
387
431
|
let namespace;
|
|
@@ -411,12 +455,14 @@ function getKeyAndEntityTypeOfReferenceFacet(oDataServiceAVT, key, entityType, p
|
|
|
411
455
|
}
|
|
412
456
|
/**
|
|
413
457
|
* Resolve page section(get key and label->description).
|
|
458
|
+
*
|
|
414
459
|
* @param facetDefinition - the actual annotation record
|
|
460
|
+
* @param sourceEntityType - The source entity type to be used for resolving facets
|
|
461
|
+
* @param oDataServiceAVT - complete service information, as returned by annotation vocabularies tool
|
|
462
|
+
* @param logger - Logger class for logging messages
|
|
463
|
+
* @param oDataVersion - OData version
|
|
415
464
|
* @param keyForRelatedFacetKeys - construct key for 'keyForRelatedFacetKeys' property(used to define custom sections) - we should not add '@' symbol there.
|
|
416
|
-
* @
|
|
417
|
-
* @param {ConvertedMetadata} oDataServiceAVT - complete service information, as returned by annotation vocabularies tool
|
|
418
|
-
* @param {ExtensionLogger} logger - Logger class for logging messages
|
|
419
|
-
* @returns {FacetSection} - object comprising the relevant facet information
|
|
465
|
+
* @returns - object comprising the relevant facet information
|
|
420
466
|
*/
|
|
421
467
|
function getSectionFacet(facetDefinition, sourceEntityType, oDataServiceAVT, logger, oDataVersion = ux_specification_types_1.FioriElementsVersion.v2, keyForRelatedFacetKeys = false) {
|
|
422
468
|
//Take facet ID as fallback
|
|
@@ -457,7 +503,8 @@ function getSectionFacet(facetDefinition, sourceEntityType, oDataServiceAVT, log
|
|
|
457
503
|
}
|
|
458
504
|
}
|
|
459
505
|
/**
|
|
460
|
-
* Decodes encoded path element and returns it in form as used in manifest settings
|
|
506
|
+
* Decodes encoded path element and returns it in form as used in manifest settings.
|
|
507
|
+
*
|
|
461
508
|
* @param {string} pathElement - path of the property in the manifest
|
|
462
509
|
* @param {string} targetAnnotation - target annotation (optional)
|
|
463
510
|
* @param {string} targetAnnotationEncoded - target annotation in its encoded form, as used in manifest settings (optional)
|
|
@@ -476,6 +523,7 @@ function getDecodedPathElement(pathElement, targetAnnotation, targetAnnotationEn
|
|
|
476
523
|
/**
|
|
477
524
|
* Method prepares value as empty object or array based on passed path.
|
|
478
525
|
* For array path should end with '[]'.
|
|
526
|
+
*
|
|
479
527
|
* @param {string} path - path of the property in the manifest
|
|
480
528
|
* @returns prepared value based on passed path
|
|
481
529
|
*/
|
|
@@ -490,12 +538,13 @@ exports.prepareValueForPath = prepareValueForPath;
|
|
|
490
538
|
* Method find object by given path in format "sap.ui5/extends/extensions".
|
|
491
539
|
* An empty object is created if the path element does not exist yet.
|
|
492
540
|
* Exception: if an empty array is the next element of the 'path' definition, an empty array is created instead of an empty object.
|
|
541
|
+
*
|
|
493
542
|
* @param {object} manifest - manifest that is being modified during export
|
|
494
543
|
* @param {string} path - path of the property in the manifest
|
|
495
544
|
* @param {string} targetAnnotation - target annotation (optional)
|
|
496
545
|
* @param {string} targetAnnotationEncoded - target annotation in its encoded form, as used in manifest settings
|
|
497
546
|
* @param {boolean} value - specific value to apply for unexisting property for given path
|
|
498
|
-
* @param {boolean} [readOnly
|
|
547
|
+
* @param {boolean} [readOnly] - indicates if the function should create object/array if existing value not found by given path
|
|
499
548
|
* @returns returns section of the manifest based on path
|
|
500
549
|
*/
|
|
501
550
|
const resolveManifestPath = (manifest, path, targetAnnotation, targetAnnotationEncoded, value, readOnly = false) => {
|
|
@@ -533,11 +582,12 @@ const resolveManifestPath = (manifest, path, targetAnnotation, targetAnnotationE
|
|
|
533
582
|
* Finds the alias for a given namespace in the references' section of the converted service metadata.
|
|
534
583
|
* An empty object is created if the path element does not exist yet.
|
|
535
584
|
* Exception: if an empty array is the next element of the 'path' definition, an empty array is created instead of an empty object.
|
|
585
|
+
*
|
|
536
586
|
* @param {object} manifest - manifest that is being modified during export
|
|
537
587
|
* @param {string} path - path of the property in the manifest
|
|
538
588
|
* @param {string} targetAnnotation - target annotation (optional)
|
|
539
589
|
* @param {string} targetAnnotationEncoded - target annotation in its encoded form, as used in manifest settings
|
|
540
|
-
* @param {boolean} [readOnly
|
|
590
|
+
* @param {boolean} [readOnly] - indicates if the function should create object/array if existing value not found by given path
|
|
541
591
|
* @returns returns section of the manifest based on path, generates an empty object in case it does not exists
|
|
542
592
|
*/
|
|
543
593
|
const getManifestSectionByPathV4 = (manifest, path, targetAnnotation, targetAnnotationEncoded, readOnly = false) => {
|
|
@@ -546,6 +596,7 @@ const getManifestSectionByPathV4 = (manifest, path, targetAnnotation, targetAnno
|
|
|
546
596
|
exports.getManifestSectionByPathV4 = getManifestSectionByPathV4;
|
|
547
597
|
/**
|
|
548
598
|
* Method sets value for passed path in manifest.
|
|
599
|
+
*
|
|
549
600
|
* @param {object} manifest - manifest that is being modified during export
|
|
550
601
|
* @param {string} path - path of the property in the manifest
|
|
551
602
|
* @param {unknown} value - value to apply
|
|
@@ -556,6 +607,12 @@ const setManifestSectionByPathV4 = (manifest, path, value, targetAnnotation, tar
|
|
|
556
607
|
resolveManifestPath(manifest, path, targetAnnotation, targetAnnotationEncoded, value);
|
|
557
608
|
};
|
|
558
609
|
exports.setManifestSectionByPathV4 = setManifestSectionByPathV4;
|
|
610
|
+
/**
|
|
611
|
+
* Retrieves the schema key for a given line item record based on its type and properties.
|
|
612
|
+
*
|
|
613
|
+
* @param lineItemRecord - The line item record to process.
|
|
614
|
+
* @returns The schema key as a string, or undefined if no key is determined.
|
|
615
|
+
*/
|
|
559
616
|
function getSchemaKeyOfLineItemRecord(lineItemRecord) {
|
|
560
617
|
let schemaKey, target, value;
|
|
561
618
|
switch (lineItemRecord.$Type) {
|
|
@@ -604,7 +661,8 @@ function getSchemaKeyOfLineItemRecord(lineItemRecord) {
|
|
|
604
661
|
return schemaKey;
|
|
605
662
|
}
|
|
606
663
|
/**
|
|
607
|
-
* Determines if type of given annotation term is of UIAnnotationTerm
|
|
664
|
+
* Determines if type of given annotation term is of UIAnnotationTerm.
|
|
665
|
+
*
|
|
608
666
|
* @param {string} path path in manifest
|
|
609
667
|
* @param {string} alias for a given namespace
|
|
610
668
|
* @param {EntityType} entityType - the entity type
|
|
@@ -638,10 +696,10 @@ function getUIAnnotationTerm(path, alias, entityType) {
|
|
|
638
696
|
}
|
|
639
697
|
}
|
|
640
698
|
/**
|
|
641
|
-
* Determines if type of given annotation term is of CommunicationAnnotationTerm
|
|
699
|
+
* Determines if type of given annotation term is of CommunicationAnnotationTerm.
|
|
700
|
+
*
|
|
642
701
|
* @param {string} path path in manifest
|
|
643
702
|
* @param {string} alias for a given namespace
|
|
644
|
-
* @param {EntityType} entityType - the entity type
|
|
645
703
|
* @returns Communication annotation term type
|
|
646
704
|
*/
|
|
647
705
|
function getCommunicationAnnotationTerm(path, alias) {
|
|
@@ -656,7 +714,8 @@ function getCommunicationAnnotationTerm(path, alias) {
|
|
|
656
714
|
}
|
|
657
715
|
}
|
|
658
716
|
/**
|
|
659
|
-
* Determines the type of given annotation term
|
|
717
|
+
* Determines the type of given annotation term.
|
|
718
|
+
*
|
|
660
719
|
* @param {string} path path in manifest
|
|
661
720
|
* @param {string} alias for a given namespace
|
|
662
721
|
* @param {EntityType} entityType - the entity type
|
|
@@ -666,11 +725,13 @@ function getAnnotationTerm(path, alias, entityType) {
|
|
|
666
725
|
return getUIAnnotationTerm(path, alias, entityType) || getCommunicationAnnotationTerm(path, alias);
|
|
667
726
|
}
|
|
668
727
|
/**
|
|
669
|
-
* Evaluates the target annotation of a reference facet and actualizes the facets for the config
|
|
670
|
-
*
|
|
671
|
-
* @param
|
|
672
|
-
* @param
|
|
673
|
-
* @param
|
|
728
|
+
* Evaluates the target annotation of a reference facet and actualizes the facets for the config.
|
|
729
|
+
*
|
|
730
|
+
* @param section - The section object in the app schema to be updated with annotation information.
|
|
731
|
+
* @param annotationRecord - the actual annotation record
|
|
732
|
+
* @param facets - list of facets in config format, to be updated
|
|
733
|
+
* @param entityType - the entity type
|
|
734
|
+
* @param oDataServiceAVT - complete service information, as returned by annotation vocabularies tool
|
|
674
735
|
*/
|
|
675
736
|
function evaluateTargetAnnotation(section, annotationRecord, facets, entityType, oDataServiceAVT) {
|
|
676
737
|
const alias = findAlias(ux_specification_types_1.UIVOCABULARY, oDataServiceAVT);
|
|
@@ -767,6 +828,7 @@ function evaluateTargetAnnotation(section, annotationRecord, facets, entityType,
|
|
|
767
828
|
}
|
|
768
829
|
/**
|
|
769
830
|
* Method returns schema annotation path for passed fullyQualifiedName.
|
|
831
|
+
*
|
|
770
832
|
* @param {EntityType} entityType entity type.
|
|
771
833
|
* @param {string} fullyQualifiedName fully qualifier name.
|
|
772
834
|
* @returns {TemplateType} Schema annotation path.
|
|
@@ -775,14 +837,15 @@ function getAnnotationPathUsingFullyQualifiedName(entityType, fullyQualifiedName
|
|
|
775
837
|
return `/${entityType.fullyQualifiedName}/${fullyQualifiedName.split(entityType.fullyQualifiedName)[1]}`;
|
|
776
838
|
}
|
|
777
839
|
/**
|
|
778
|
-
* Adds the information from facets to the config
|
|
779
|
-
*
|
|
780
|
-
* @param
|
|
781
|
-
* @param
|
|
782
|
-
* @param
|
|
783
|
-
* @param
|
|
784
|
-
* @param
|
|
785
|
-
* @param
|
|
840
|
+
* Adds the information from facets to the config.
|
|
841
|
+
*
|
|
842
|
+
* @param annotationRecord - the actual annotation record
|
|
843
|
+
* @param oDataServiceAVT - complete service information, as returned by annotation vocabularies tool
|
|
844
|
+
* @param serviceName - name of the service of the app
|
|
845
|
+
* @param entityType - The entity type to be used for resolving facets
|
|
846
|
+
* @param facets - list of facets in config format, to be updated
|
|
847
|
+
* @param oDataVersion - OData version
|
|
848
|
+
* @param logger - Logger class for logging messages
|
|
786
849
|
*/
|
|
787
850
|
function addFacetToConfig(annotationRecord, oDataServiceAVT, serviceName, entityType, facets, oDataVersion = ux_specification_types_1.FioriElementsVersion.v2, logger) {
|
|
788
851
|
const section = getSectionFacet(annotationRecord, entityType, oDataServiceAVT, logger, oDataVersion, false);
|
|
@@ -817,11 +880,13 @@ function addFacetToConfig(annotationRecord, oDataServiceAVT, serviceName, entity
|
|
|
817
880
|
}
|
|
818
881
|
}
|
|
819
882
|
/**
|
|
820
|
-
* Retrieve header facet configurations that can be used to generate ObjectPage schemas
|
|
821
|
-
*
|
|
822
|
-
* @param
|
|
823
|
-
* @param
|
|
824
|
-
* @param
|
|
883
|
+
* Retrieve header facet configurations that can be used to generate ObjectPage schemas.
|
|
884
|
+
*
|
|
885
|
+
* @param entityType - The entity type to be used for resolving facets
|
|
886
|
+
* @param oDataServiceAVT - complete service information, as returned by annotation vocabularies tool
|
|
887
|
+
* @param oDataVersion - OData version
|
|
888
|
+
* @param logger - Logger class for logging messages
|
|
889
|
+
* @returns - header facet configurations
|
|
825
890
|
*/
|
|
826
891
|
function getObjectPageHeaderFacets(entityType, oDataServiceAVT, oDataVersion = ux_specification_types_1.FioriElementsVersion.v2, logger) {
|
|
827
892
|
const facets = {};
|
|
@@ -841,11 +906,13 @@ function getObjectPageHeaderFacets(entityType, oDataServiceAVT, oDataVersion = u
|
|
|
841
906
|
return facets;
|
|
842
907
|
}
|
|
843
908
|
/**
|
|
844
|
-
* Retrieve facet configurations that can be used to generate ObjectPage schemas
|
|
845
|
-
*
|
|
846
|
-
* @param
|
|
909
|
+
* Retrieve facet configurations that can be used to generate ObjectPage schemas.
|
|
910
|
+
*
|
|
911
|
+
* @param entityType - The entity type to be used for resolving facets
|
|
912
|
+
* @param oDataServiceAVT - complete service information, as returned by annotation vocabularies tool
|
|
847
913
|
* @param {FioriElementsVersion} oDataVersion - OData version
|
|
848
914
|
* @param {ExtensionLogger} logger - Logger class for logging messages
|
|
915
|
+
* @returns - facet configurations
|
|
849
916
|
*/
|
|
850
917
|
function getObjectPageFacets(entityType, oDataServiceAVT, oDataVersion = ux_specification_types_1.FioriElementsVersion.v2, logger) {
|
|
851
918
|
const facets = {};
|
|
@@ -865,7 +932,8 @@ function getObjectPageFacets(entityType, oDataServiceAVT, oDataVersion = ux_spec
|
|
|
865
932
|
return facets;
|
|
866
933
|
}
|
|
867
934
|
/**
|
|
868
|
-
* Returns the version of Fiori elements (v2/v4) from a given manifest
|
|
935
|
+
* Returns the version of Fiori elements (v2/v4) from a given manifest.
|
|
936
|
+
*
|
|
869
937
|
* @param manifest - the manifest.json file
|
|
870
938
|
* @returns FioriElementsVersion
|
|
871
939
|
*/
|
|
@@ -878,7 +946,10 @@ function getFEVersionFromManifest(manifest) {
|
|
|
878
946
|
const targets = manifest[ux_specification_types_1.ManifestSection.ui5]?.routing?.targets;
|
|
879
947
|
const libs = manifest[ux_specification_types_1.ManifestSection.ui5]?.dependencies?.libs;
|
|
880
948
|
if ((targets &&
|
|
881
|
-
Object.keys(targets).find((targetKey) =>
|
|
949
|
+
Object.keys(targets).find((targetKey) => {
|
|
950
|
+
const name = typeof targets[targetKey].name === 'string' ? targets[targetKey].name : '';
|
|
951
|
+
return exports.V4_TEMPLATES.indexOf(name) > -1 || convertTemplateNameToPageTypeV4(name);
|
|
952
|
+
})) ||
|
|
882
953
|
(libs && Object.keys(libs).find((lib) => exports.V4_LIBS.indexOf(lib) > -1))) {
|
|
883
954
|
return ux_specification_types_1.FioriElementsVersion.v4;
|
|
884
955
|
}
|
|
@@ -904,7 +975,8 @@ function getMainService(manifest) {
|
|
|
904
975
|
: undefined;
|
|
905
976
|
}
|
|
906
977
|
/**
|
|
907
|
-
* Returns the oData version of the service (if any) from a given manifest
|
|
978
|
+
* Returns the oData version of the service (if any) from a given manifest.
|
|
979
|
+
*
|
|
908
980
|
* @param manifest - the manifest.json file
|
|
909
981
|
* @returns the OData version
|
|
910
982
|
*/
|
|
@@ -917,10 +989,11 @@ function getODataVersionFromManifest(manifest) {
|
|
|
917
989
|
return dataSource?.settings?.odataVersion === '4.0' ? ux_specification_types_1.OdataVersion.v4 : ux_specification_types_1.OdataVersion.v2;
|
|
918
990
|
}
|
|
919
991
|
/**
|
|
920
|
-
* Determines the template type of a V2 app
|
|
992
|
+
* Determines the template type of a V2 app.
|
|
993
|
+
*
|
|
921
994
|
* @param manifest - the manifest.json file
|
|
922
995
|
* @param {ExtensionLogger} logger - Logger class for logging messages
|
|
923
|
-
* @returns
|
|
996
|
+
* @returns the template type
|
|
924
997
|
*/
|
|
925
998
|
function determineV2Template(manifest, logger) {
|
|
926
999
|
let templateType;
|
|
@@ -964,7 +1037,8 @@ function determineV2Template(manifest, logger) {
|
|
|
964
1037
|
return templateType;
|
|
965
1038
|
}
|
|
966
1039
|
/**
|
|
967
|
-
* Determines the template type of a single page
|
|
1040
|
+
* Determines the template type of a single page.
|
|
1041
|
+
*
|
|
968
1042
|
* @param v4Page - single page from routing targets
|
|
969
1043
|
* @returns {TemplateType | undefined} the template type
|
|
970
1044
|
*/
|
|
@@ -993,7 +1067,8 @@ function determineV4PageTemplateType(v4Page) {
|
|
|
993
1067
|
return templateType;
|
|
994
1068
|
}
|
|
995
1069
|
/**
|
|
996
|
-
* Determines the template type, based on the given manifest routing target entries of the app
|
|
1070
|
+
* Determines the template type, based on the given manifest routing target entries of the app.
|
|
1071
|
+
*
|
|
997
1072
|
* @param v4Pages - pages from routing targets
|
|
998
1073
|
* @returns {TemplateType | undefined} the template type
|
|
999
1074
|
*/
|
|
@@ -1009,7 +1084,8 @@ function determineV4TemplateFromPages(v4Pages) {
|
|
|
1009
1084
|
return templateType;
|
|
1010
1085
|
}
|
|
1011
1086
|
/**
|
|
1012
|
-
* Determines the template type of a V4 app
|
|
1087
|
+
* Determines the template type of a V4 app.
|
|
1088
|
+
*
|
|
1013
1089
|
* @param manifest - the manifest.json file
|
|
1014
1090
|
* @param {ExtensionLogger} logger - Logger class for logging messages
|
|
1015
1091
|
* @returns {TemplateType} the template type
|
|
@@ -1044,7 +1120,8 @@ function determineV4Template(manifest, logger) {
|
|
|
1044
1120
|
return templateType;
|
|
1045
1121
|
}
|
|
1046
1122
|
/**
|
|
1047
|
-
* Determines the template type, based on the given manifest entries of the app
|
|
1123
|
+
* Determines the template type, based on the given manifest entries of the app.
|
|
1124
|
+
*
|
|
1048
1125
|
* @param manifest - the manifest.json file
|
|
1049
1126
|
* @param {FioriElementsVersion} fioriElementsVersion - OData or FE version
|
|
1050
1127
|
* @param {ExtensionLogger} logger - Logger class for logging messages
|
|
@@ -1064,7 +1141,8 @@ function getTemplateTypeFromManifest(manifest, fioriElementsVersion, logger) {
|
|
|
1064
1141
|
return templateType;
|
|
1065
1142
|
}
|
|
1066
1143
|
/**
|
|
1067
|
-
* Adds title to a section or header section in an app schema
|
|
1144
|
+
* Adds title to a section or header section in an app schema.
|
|
1145
|
+
*
|
|
1068
1146
|
* @param facet - intermediate facet structure comprising annotation information
|
|
1069
1147
|
* @param section - section in the app schema
|
|
1070
1148
|
* @param facetKey - key of the facet
|
|
@@ -1080,7 +1158,8 @@ function addSectionTitle(facet, section, facetKey) {
|
|
|
1080
1158
|
}
|
|
1081
1159
|
}
|
|
1082
1160
|
/**
|
|
1083
|
-
* Adds description to a section or header section in an app schema
|
|
1161
|
+
* Adds description to a section or header section in an app schema.
|
|
1162
|
+
*
|
|
1084
1163
|
* @param facet - intermediate facet structure comprising annotation information
|
|
1085
1164
|
* @param section - section in the app schema
|
|
1086
1165
|
* @param facetKey - key of the facet
|
|
@@ -1097,7 +1176,8 @@ function addSectionDescription(facet, section, facetKey) {
|
|
|
1097
1176
|
}
|
|
1098
1177
|
}
|
|
1099
1178
|
/**
|
|
1100
|
-
* Adds target title or description to a section or header section in an app schema
|
|
1179
|
+
* Adds target title or description to a section or header section in an app schema.
|
|
1180
|
+
*
|
|
1101
1181
|
* @param facet - intermediate facet structure comprising annotation information
|
|
1102
1182
|
* @param section - section in the app schema
|
|
1103
1183
|
* @param facetKey - key of the facet
|
|
@@ -1119,10 +1199,10 @@ function addTargetTitleAndSectionDescription(facet, section, facetKey) {
|
|
|
1119
1199
|
}
|
|
1120
1200
|
}
|
|
1121
1201
|
/**
|
|
1122
|
-
* Adds chart (S)PV header facet ID, in case chart has no title
|
|
1202
|
+
* Adds chart (S)PV header facet ID, in case chart has no title.
|
|
1203
|
+
*
|
|
1123
1204
|
* @param facet - intermediate facet structure comprising annotation information
|
|
1124
1205
|
* @param section - section in the app schema
|
|
1125
|
-
* @param facetKey - key of the facet
|
|
1126
1206
|
*/
|
|
1127
1207
|
function addChartFacetID(facet, section) {
|
|
1128
1208
|
if (facet?.ID && section.description?.startsWith('Chart#')) {
|
|
@@ -1131,7 +1211,10 @@ function addChartFacetID(facet, section) {
|
|
|
1131
1211
|
}
|
|
1132
1212
|
/**
|
|
1133
1213
|
* Creates a default object for a new section or subsection, and adds the ID as title if present.
|
|
1134
|
-
*
|
|
1214
|
+
*
|
|
1215
|
+
* @param appSchema - The application-specific JSON schema.
|
|
1216
|
+
* @param facet - Facet configuration, to be analyzed.
|
|
1217
|
+
* @param facetKey - The key of the facet.
|
|
1135
1218
|
* @returns the new section object
|
|
1136
1219
|
*/
|
|
1137
1220
|
function createDefaultSection(appSchema, facet, facetKey) {
|
|
@@ -1147,12 +1230,13 @@ function createDefaultSection(appSchema, facet, facetKey) {
|
|
|
1147
1230
|
}
|
|
1148
1231
|
/**
|
|
1149
1232
|
* Retrieve page section data(so far id/key and label/description).
|
|
1233
|
+
*
|
|
1150
1234
|
* @param {EntityType} entityType The actual entityType
|
|
1151
1235
|
* @param {ConvertedMetadata} oDataServiceAVT - complete service information, as returned by annotation vocabularies tool
|
|
1152
1236
|
* @param {ExtensionLogger} logger - Logger class for logging messages
|
|
1153
1237
|
* @param {FioriElementsVersion} oDataVersion - OData version
|
|
1154
|
-
* @param {boolean} [checkUnresolvableFacets
|
|
1155
|
-
* @returns
|
|
1238
|
+
* @param {boolean} [checkUnresolvableFacets] - Check and avoid facets and sections without ID and Target.
|
|
1239
|
+
* @returns - Array of facets or sections
|
|
1156
1240
|
*/
|
|
1157
1241
|
function getObjectPageFacetSection(entityType, oDataServiceAVT, logger, oDataVersion = ux_specification_types_1.FioriElementsVersion.v2, checkUnresolvableFacets = false) {
|
|
1158
1242
|
const alias = findAlias(ux_specification_types_1.UIVOCABULARY, oDataServiceAVT);
|
|
@@ -1175,7 +1259,8 @@ function getObjectPageFacetSection(entityType, oDataServiceAVT, logger, oDataVer
|
|
|
1175
1259
|
}
|
|
1176
1260
|
}
|
|
1177
1261
|
/**
|
|
1178
|
-
* Cleans empty sub-structures from the export result for manifest
|
|
1262
|
+
* Cleans empty sub-structures from the export result for manifest.
|
|
1263
|
+
*
|
|
1179
1264
|
* @param {object} manifest - manifest.json part of the export result
|
|
1180
1265
|
* @param {string} path - path in the manifest
|
|
1181
1266
|
* @param {boolean} deletionRequest - if set to true, any manifest setting specified by entityPath gets deleted even if it comprises any unknown property
|
|
@@ -1221,8 +1306,9 @@ const deleteEmptyStructure = (manifest, path, deletionRequest, entityPathArray,
|
|
|
1221
1306
|
exports.deleteEmptyStructure = deleteEmptyStructure;
|
|
1222
1307
|
/**
|
|
1223
1308
|
* Method which returns generic schema file name.
|
|
1309
|
+
*
|
|
1224
1310
|
* @param {SchemaType | PageTypeV2} schemaType Schema type or Page type.
|
|
1225
|
-
* @
|
|
1311
|
+
* @returns {string} File name of generic schema.
|
|
1226
1312
|
*/
|
|
1227
1313
|
const getGenericSchemaFileName = (schemaType) => {
|
|
1228
1314
|
if (schemaType === ux_specification_types_1.SchemaType.FreestylePage) {
|
|
@@ -1236,9 +1322,11 @@ const getGenericSchemaFileName = (schemaType) => {
|
|
|
1236
1322
|
};
|
|
1237
1323
|
/**
|
|
1238
1324
|
* Method which returns schema file name and path depending on passed schema or page type.
|
|
1325
|
+
*
|
|
1239
1326
|
* @param {SchemaType | PageTypeV2} schemaType Schema type or Page type.
|
|
1240
1327
|
* @param {string} [pageId] target page id from manifest.json
|
|
1241
|
-
* @
|
|
1328
|
+
* @param viewId - The view ID for custom pages (optional).
|
|
1329
|
+
* @returns {SchemaFilePath} File path info.
|
|
1242
1330
|
*/
|
|
1243
1331
|
const getSchemaFilePath = (schemaType, pageId, viewId) => {
|
|
1244
1332
|
const schemaFile = {
|
|
@@ -1288,6 +1376,7 @@ const getSchemaFilePath = (schemaType, pageId, viewId) => {
|
|
|
1288
1376
|
exports.getSchemaFilePath = getSchemaFilePath;
|
|
1289
1377
|
/**
|
|
1290
1378
|
* Method which generates id of page according to passed parameters
|
|
1379
|
+
*
|
|
1291
1380
|
* @param appVersion - Fiori Elements version - V2 or V4
|
|
1292
1381
|
* @param pageType - Page type
|
|
1293
1382
|
* @param entitySet - Entity Set
|
|
@@ -1295,6 +1384,15 @@ exports.getSchemaFilePath = getSchemaFilePath;
|
|
|
1295
1384
|
* @param pageName - Page name in manifest. Used if entitySet is empty
|
|
1296
1385
|
* @returns {string} Generated page id
|
|
1297
1386
|
*/
|
|
1387
|
+
/**
|
|
1388
|
+
* Generates a unique page ID based on the provided parameters.
|
|
1389
|
+
*
|
|
1390
|
+
* @param pageType - The type of the page (e.g., ListReport, ObjectPage, etc.).
|
|
1391
|
+
* @param entitySet - The entity set associated with the page.
|
|
1392
|
+
* @param viewId - The view ID for custom pages (optional).
|
|
1393
|
+
* @param pageName - The name of the page in the manifest (used if entitySet is empty).
|
|
1394
|
+
* @returns The generated page ID as a string.
|
|
1395
|
+
*/
|
|
1298
1396
|
function generatePageId(pageType, entitySet, viewId, pageName) {
|
|
1299
1397
|
if (pageType === ux_specification_types_1.PageTypeV2.CustomPage) {
|
|
1300
1398
|
const names = viewId && viewId.split('.');
|
|
@@ -1312,6 +1410,7 @@ function generatePageId(pageType, entitySet, viewId, pageName) {
|
|
|
1312
1410
|
}
|
|
1313
1411
|
/**
|
|
1314
1412
|
* Method finds matching objects against passed interface of 'additionalProperties' and returns array of matching object keys.
|
|
1413
|
+
*
|
|
1315
1414
|
* @param {Definition} appSchema - App-specific JSON schema.
|
|
1316
1415
|
* @param {Definition} additionalProperties - Allowed additional properties.
|
|
1317
1416
|
* @param {object} configObject -Container object to find matching childs.
|
|
@@ -1346,11 +1445,11 @@ function findMatchingKeysByAdditionalProperties(appSchema, additionalProperties,
|
|
|
1346
1445
|
/**
|
|
1347
1446
|
* Populates a given array with definitions from an application's schema that match certain conditions defined by the current configuration object and element reference.
|
|
1348
1447
|
*
|
|
1349
|
-
* @param
|
|
1350
|
-
* @param
|
|
1351
|
-
* @param
|
|
1352
|
-
* @param
|
|
1353
|
-
*
|
|
1448
|
+
* @param element - The element containing a reference ($ref) to a specific definition within the application schema.
|
|
1449
|
+
* @param appSchema - The application's schema object containing all definitions.
|
|
1450
|
+
* @param currentConfigObject - The current configuration object which is evaluated against the schema definitions.
|
|
1451
|
+
* @param definitionArray - The array to which matching definitions are added based on the evaluation.
|
|
1452
|
+
* This function does not return any value but modifies the definitionArray parameter by adding appropriate definitions.
|
|
1354
1453
|
*/
|
|
1355
1454
|
function fillArrayFromAnyOfReference(element, appSchema, currentConfigObject, definitionArray) {
|
|
1356
1455
|
const $ref = element.$ref;
|
|
@@ -1382,7 +1481,8 @@ function fillArrayFromAnyOfReference(element, appSchema, currentConfigObject, de
|
|
|
1382
1481
|
}
|
|
1383
1482
|
}
|
|
1384
1483
|
/**
|
|
1385
|
-
* Fills an array of next definitions from given references in the JSON schema
|
|
1484
|
+
* Fills an array of next definitions from given references in the JSON schema.
|
|
1485
|
+
*
|
|
1386
1486
|
* @param propertyDefinition - Definition of the current property in schema
|
|
1387
1487
|
* @param currentConfigObject - Current object in the config JSON. Evaluated to get the right value of a controlling property,
|
|
1388
1488
|
* for making the right choice in case of multiple options (anyOf)
|
|
@@ -1408,7 +1508,8 @@ function fillArrayFromPropertyDefinition(propertyDefinition, currentConfigObject
|
|
|
1408
1508
|
}
|
|
1409
1509
|
/**
|
|
1410
1510
|
* Determines the next definition to be handled, based on the definition array.
|
|
1411
|
-
* It also creates the Metadata instance for the next definition, to subsequently access metadata like the syncRule
|
|
1511
|
+
* It also creates the Metadata instance for the next definition, to subsequently access metadata like the syncRule.
|
|
1512
|
+
*
|
|
1412
1513
|
* @param definitionArray - Array of definitions, as determined by fillArrayFromNextDefinition
|
|
1413
1514
|
* @param appSchema - app-specific JSON schema
|
|
1414
1515
|
* @param title - default title
|
|
@@ -1460,7 +1561,8 @@ function determineNextDefinitionFromDefinitionArray(definitionArray, appSchema,
|
|
|
1460
1561
|
return nextDefinition;
|
|
1461
1562
|
}
|
|
1462
1563
|
/**
|
|
1463
|
-
* Recursive function to determine the next config part, next definition in the app schema and the title
|
|
1564
|
+
* Recursive function to determine the next config part, next definition in the app schema and the title.
|
|
1565
|
+
*
|
|
1464
1566
|
* @param appSchema - app-specific JSON schema
|
|
1465
1567
|
* @param title - default title
|
|
1466
1568
|
* @param currentConfigObject - current part of the configuration that gets traversed
|
|
@@ -1468,6 +1570,7 @@ function determineNextDefinitionFromDefinitionArray(definitionArray, appSchema,
|
|
|
1468
1570
|
* @param key - actual key
|
|
1469
1571
|
* @param {MetadataInstanceInterface} factory - factory for creating metadata instances
|
|
1470
1572
|
* @param pageType - page type
|
|
1573
|
+
* @returns {NextDefinition} - Next target definition to process
|
|
1471
1574
|
*/
|
|
1472
1575
|
function getNextTargetDefinition(appSchema, title, currentConfigObject, propertyDefinition, key, factory, pageType) {
|
|
1473
1576
|
let nextDefinition;
|
|
@@ -1483,12 +1586,12 @@ function getNextTargetDefinition(appSchema, title, currentConfigObject, property
|
|
|
1483
1586
|
return nextDefinition;
|
|
1484
1587
|
}
|
|
1485
1588
|
/**
|
|
1486
|
-
* Custom array merge function called by deepmerge's merge function
|
|
1589
|
+
* Custom array merge function called by deepmerge's merge function.
|
|
1487
1590
|
*
|
|
1488
1591
|
* @param {*} target Target array
|
|
1489
1592
|
* @param {*} source Source array
|
|
1490
1593
|
* @param {*} options options object provided by deepmerge's merge function
|
|
1491
|
-
* @returns
|
|
1594
|
+
* @returns {string[]} Combined array with unique elements from both target and source arrays.
|
|
1492
1595
|
*/
|
|
1493
1596
|
const arrayCombineMerge = (target, source, options) => {
|
|
1494
1597
|
const destination = target.slice();
|
|
@@ -1507,7 +1610,8 @@ const arrayCombineMerge = (target, source, options) => {
|
|
|
1507
1610
|
};
|
|
1508
1611
|
exports.arrayCombineMerge = arrayCombineMerge;
|
|
1509
1612
|
/**
|
|
1510
|
-
* Converts an enum into a CSV
|
|
1613
|
+
* Converts an enum into a CSV.
|
|
1614
|
+
*
|
|
1511
1615
|
* @param {object} manifestSection - manifestSection where the key exists
|
|
1512
1616
|
* @param {object} configPart - Property as mentioned in config file
|
|
1513
1617
|
* @param {string} key - Property to be exported to manifest
|
|
@@ -1519,7 +1623,8 @@ function convertEnumToCSV(manifestSection, configPart, key) {
|
|
|
1519
1623
|
manifestSection[key] = field.join();
|
|
1520
1624
|
}
|
|
1521
1625
|
/**
|
|
1522
|
-
* Converts an action ID from the internal format (schema, config) to the stable ID representation
|
|
1626
|
+
* Converts an action ID from the internal format (schema, config) to the stable ID representation.
|
|
1627
|
+
*
|
|
1523
1628
|
* @param actionId - the (unique) internal format of the action ID
|
|
1524
1629
|
* @returns the converted action ID
|
|
1525
1630
|
*/
|
|
@@ -1530,7 +1635,8 @@ function convertActionKeyToStableId(actionId) {
|
|
|
1530
1635
|
return (actionId.indexOf('??') > -1 ? actionId.split('??')[1] : actionId).replace(/@/g, '::');
|
|
1531
1636
|
}
|
|
1532
1637
|
/**
|
|
1533
|
-
* Method returns definition key for passed '$ref' property by removing 'definition' prefix
|
|
1638
|
+
* Method returns definition key for passed '$ref' property by removing 'definition' prefix.
|
|
1639
|
+
*
|
|
1534
1640
|
* @param {string} $ref Definition reference.
|
|
1535
1641
|
* @returns Definition key.
|
|
1536
1642
|
*/
|
|
@@ -1539,6 +1645,7 @@ function getDefinitionKey($ref) {
|
|
|
1539
1645
|
}
|
|
1540
1646
|
/**
|
|
1541
1647
|
* Method returns definition $ref' property for passed definition key.
|
|
1648
|
+
*
|
|
1542
1649
|
* @param {string} key Definition key.
|
|
1543
1650
|
* @returns Definition reference.
|
|
1544
1651
|
*/
|
|
@@ -1580,6 +1687,7 @@ function updatePropertyIndices(schema, order) {
|
|
|
1580
1687
|
}
|
|
1581
1688
|
/**
|
|
1582
1689
|
* Method to get value for passed path in passed object.
|
|
1690
|
+
*
|
|
1583
1691
|
* @param obj Object to check.
|
|
1584
1692
|
* @param paths Path for searching property/value.
|
|
1585
1693
|
* @returns Found value for passed path.
|
|
@@ -1601,8 +1709,9 @@ function getJSONPropertyByPath(obj, paths) {
|
|
|
1601
1709
|
return current;
|
|
1602
1710
|
}
|
|
1603
1711
|
/**
|
|
1604
|
-
* Method to remove namespaces
|
|
1605
|
-
*
|
|
1712
|
+
* Method to remove namespaces.
|
|
1713
|
+
*
|
|
1714
|
+
* @param sId - The string identifier to process and remove namespaces from.
|
|
1606
1715
|
* @returns {string} modified string without namespace
|
|
1607
1716
|
*/
|
|
1608
1717
|
function removeNamespaces(sId) {
|
|
@@ -1611,8 +1720,9 @@ function removeNamespaces(sId) {
|
|
|
1611
1720
|
return sId;
|
|
1612
1721
|
}
|
|
1613
1722
|
/**
|
|
1614
|
-
* Method to replace namespaces with short hand form
|
|
1615
|
-
*
|
|
1723
|
+
* Method to replace namespaces with short hand form.
|
|
1724
|
+
*
|
|
1725
|
+
* @param {string } sId - The string identifier to process and replace namespaces with shorthand forms.
|
|
1616
1726
|
* @returns {string} modified string with replaced namespaces
|
|
1617
1727
|
*/
|
|
1618
1728
|
function replaceNamespaces(sId) {
|
|
@@ -1632,4 +1742,35 @@ function getRefType(element) {
|
|
|
1632
1742
|
return reference.substring(exports.DEFINITION_LINK_PREFIX.length);
|
|
1633
1743
|
}
|
|
1634
1744
|
}
|
|
1745
|
+
/**
|
|
1746
|
+
* Converts a template name string from 'manifest.json' to a corresponding `PageTypeV4` enum value.
|
|
1747
|
+
*
|
|
1748
|
+
* @param {string} templateName - The name of the template to convert.
|
|
1749
|
+
* @returns {PageTypeV4 | undefined} The corresponding `PageTypeV4` enum value, or `undefined` if no match is found.
|
|
1750
|
+
*/
|
|
1751
|
+
function convertTemplateNameToPageTypeV4(templateName) {
|
|
1752
|
+
if (templateName === ux_specification_types_1.v4.FE_TEMPLATE_V4_CUSTOM_PAGE) {
|
|
1753
|
+
return ux_specification_types_1.PageTypeV4.FPMCustomPage;
|
|
1754
|
+
}
|
|
1755
|
+
if (templateName?.startsWith(`${ux_specification_types_1.v4.FE_NAMESPACE_V4}.`)) {
|
|
1756
|
+
const pageType = templateName.split('.').at(-1);
|
|
1757
|
+
if (pageType in ux_specification_types_1.PageTypeV4) {
|
|
1758
|
+
return ux_specification_types_1.PageTypeV4[pageType];
|
|
1759
|
+
}
|
|
1760
|
+
}
|
|
1761
|
+
}
|
|
1762
|
+
/**
|
|
1763
|
+
* Determines whether two template names match either directly or by resolving their corresponding page types.
|
|
1764
|
+
*
|
|
1765
|
+
* @param templateName1 The first template name to compare.
|
|
1766
|
+
* @param templateName2 The second template name to compare.
|
|
1767
|
+
* @returns Returns true if the template names match directly or their page types match; otherwise, false.
|
|
1768
|
+
*/
|
|
1769
|
+
function compareTemplateNames(templateName1, templateName2) {
|
|
1770
|
+
if (templateName1 === templateName2) {
|
|
1771
|
+
return true;
|
|
1772
|
+
}
|
|
1773
|
+
const pageType1 = convertTemplateNameToPageTypeV4(templateName1);
|
|
1774
|
+
return pageType1 ? pageType1 === convertTemplateNameToPageTypeV4(templateName2) : false;
|
|
1775
|
+
}
|
|
1635
1776
|
//# sourceMappingURL=utils.js.map
|