@sap/ux-specification 1.96.20 → 1.96.24
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/dist/documentation/runDocu-min.js +5 -9623
- package/dist/documentation/runDocu-min.js.map +1 -1
- package/dist/documentation/v2/v2-AnalyticalListPage.html +1 -1
- package/dist/documentation/v2/v2-ApplicationV2.html +1 -1
- package/dist/documentation/v2/v2-ListReport.html +1 -1
- package/dist/documentation/v2/v2-ObjectPage.html +1 -1
- package/dist/documentation/v2/v2-OverviewPage.html +1 -1
- package/dist/documentation/v4/v4-ApplicationV4.html +1 -1
- package/dist/documentation/v4/v4-FreestylePage.html +1 -1
- package/dist/documentation/v4/v4-ListReport.html +1 -1
- package/dist/documentation/v4/v4-ObjectPage.html +1 -1
- package/dist/index-min.js +83 -30542
- package/dist/index-min.js.map +3 -3
- package/dist/schemas/v2/AnalyticalListPageConfig.json +11 -8
- package/dist/schemas/v2/ListReportConfig.json +132 -129
- package/dist/schemas/v4/ApplicationV4.json +26 -0
- package/dist/schemas/v4/ListReportConfig.json +21 -22
- package/dist/schemas/v4/ObjectPageConfig.json +1 -2
- package/dist/scripts/extractDocu.d.ts +2 -0
- package/dist/scripts/extractDocu.d.ts.map +1 -0
- package/dist/scripts/extractDocu.js +507 -0
- package/dist/scripts/extractDocu.js.map +1 -0
- package/dist/scripts/runDocu.d.ts +2 -0
- package/dist/scripts/runDocu.d.ts.map +1 -0
- package/dist/scripts/runDocu.js +579 -0
- package/dist/scripts/runDocu.js.map +1 -0
- package/dist/scripts/spec.d.ts +2 -0
- package/dist/scripts/spec.d.ts.map +1 -0
- package/dist/scripts/spec.js +113 -0
- package/dist/scripts/spec.js.map +1 -0
- package/dist/scripts/to-json-schema.d.ts +11 -0
- package/dist/scripts/to-json-schema.d.ts.map +1 -0
- package/dist/scripts/to-json-schema.js +146 -0
- package/dist/scripts/to-json-schema.js.map +1 -0
- package/dist/{types → src}/api.d.ts +1 -1
- package/dist/{types → src}/api.d.ts.map +1 -1
- package/dist/src/api.js +191 -0
- package/dist/src/api.js.map +1 -0
- package/dist/{types → src}/apiTypes.d.ts +17 -21
- package/dist/src/apiTypes.d.ts.map +1 -0
- package/dist/src/apiTypes.js +25 -0
- package/dist/src/apiTypes.js.map +1 -0
- package/dist/{types → src}/extensionLogger.d.ts +1 -1
- package/dist/{types → src}/extensionLogger.d.ts.map +1 -1
- package/dist/src/extensionLogger.js +41 -0
- package/dist/src/extensionLogger.js.map +1 -0
- package/dist/{types → src}/i18n/i18n.d.ts +0 -0
- package/dist/{types → src}/i18n/i18n.d.ts.map +0 -0
- package/dist/src/i18n/i18n.js +26 -0
- package/dist/src/i18n/i18n.js.map +1 -0
- package/dist/{types → src}/index.d.ts +2 -2
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +20 -0
- package/dist/src/index.js.map +1 -0
- package/dist/{types → src}/project.d.ts +2 -1
- package/dist/src/project.d.ts.map +1 -0
- package/dist/src/project.js +153 -0
- package/dist/src/project.js.map +1 -0
- package/dist/{types → src}/specification/schemaAccess.d.ts +3 -13
- package/dist/src/specification/schemaAccess.d.ts.map +1 -0
- package/dist/src/specification/schemaAccess.js +63 -0
- package/dist/src/specification/schemaAccess.js.map +1 -0
- package/dist/{types → src}/sync/common/appProvider.d.ts +3 -5
- package/dist/src/sync/common/appProvider.d.ts.map +1 -0
- package/dist/src/sync/common/appProvider.js +124 -0
- package/dist/src/sync/common/appProvider.js.map +1 -0
- package/dist/{types → src}/sync/common/decoration/control.d.ts +2 -2
- package/dist/src/sync/common/decoration/control.d.ts.map +1 -0
- package/dist/src/sync/common/decoration/control.js +219 -0
- package/dist/src/sync/common/decoration/control.js.map +1 -0
- package/dist/{types → src}/sync/common/decoration/decorators.d.ts +0 -0
- package/dist/src/sync/common/decoration/decorators.d.ts.map +1 -0
- package/dist/src/sync/common/decoration/decorators.js +52 -0
- package/dist/src/sync/common/decoration/decorators.js.map +1 -0
- package/dist/{types → src}/sync/common/decoration/factory.d.ts +1 -1
- package/dist/{types → src}/sync/common/decoration/factory.d.ts.map +1 -1
- package/dist/src/sync/common/decoration/factory.js +49 -0
- package/dist/src/sync/common/decoration/factory.js.map +1 -0
- package/dist/src/sync/common/decoration/flex.d.ts +4 -0
- package/dist/src/sync/common/decoration/flex.d.ts.map +1 -0
- package/dist/src/sync/common/decoration/flex.js +9 -0
- package/dist/src/sync/common/decoration/flex.js.map +1 -0
- package/dist/{types → src}/sync/common/decoration/index.d.ts +0 -0
- package/dist/{types → src}/sync/common/decoration/index.d.ts.map +0 -0
- package/dist/src/sync/common/decoration/index.js +16 -0
- package/dist/src/sync/common/decoration/index.js.map +1 -0
- package/dist/{types → src}/sync/common/flexUtils.d.ts +2 -4
- package/dist/src/sync/common/flexUtils.d.ts.map +1 -0
- package/dist/src/sync/common/flexUtils.js +107 -0
- package/dist/src/sync/common/flexUtils.js.map +1 -0
- package/dist/{types → src}/sync/common/generate/index.d.ts +0 -0
- package/dist/{types → src}/sync/common/generate/index.d.ts.map +0 -0
- package/dist/src/sync/common/generate/index.js +15 -0
- package/dist/src/sync/common/generate/index.js.map +1 -0
- package/dist/{types → src}/sync/common/generate/objectPage.d.ts +1 -2
- package/dist/src/sync/common/generate/objectPage.d.ts.map +1 -0
- package/dist/src/sync/common/generate/objectPage.js +380 -0
- package/dist/src/sync/common/generate/objectPage.js.map +1 -0
- package/dist/{types → src}/sync/common/generate/utils.d.ts +2 -1
- package/dist/src/sync/common/generate/utils.d.ts.map +1 -0
- package/dist/src/sync/common/generate/utils.js +490 -0
- package/dist/src/sync/common/generate/utils.js.map +1 -0
- package/dist/src/sync/common/i18n.json +23 -0
- package/dist/{types → src}/sync/common/import/utils.d.ts +0 -0
- package/dist/{types → src}/sync/common/import/utils.d.ts.map +0 -0
- package/dist/src/sync/common/import/utils.js +107 -0
- package/dist/src/sync/common/import/utils.js.map +1 -0
- package/dist/{types → src}/sync/common/importProject.d.ts +0 -0
- package/dist/src/sync/common/importProject.d.ts.map +1 -0
- package/dist/src/sync/common/importProject.js +336 -0
- package/dist/src/sync/common/importProject.js.map +1 -0
- package/dist/{types → src}/sync/common/index.d.ts +0 -0
- package/dist/{types → src}/sync/common/index.d.ts.map +0 -0
- package/dist/src/sync/common/index.js +23 -0
- package/dist/src/sync/common/index.js.map +1 -0
- package/dist/{types → src}/sync/common/types.d.ts +6 -56
- package/dist/src/sync/common/types.d.ts.map +1 -0
- package/dist/src/sync/common/types.js +176 -0
- package/dist/src/sync/common/types.js.map +1 -0
- package/dist/{types → src}/sync/common/utils.d.ts +8 -10
- package/dist/src/sync/common/utils.d.ts.map +1 -0
- package/dist/src/sync/common/utils.js +1263 -0
- package/dist/src/sync/common/utils.js.map +1 -0
- package/dist/{types → src}/sync/i18n.d.ts +0 -0
- package/dist/{types → src}/sync/i18n.d.ts.map +0 -0
- package/dist/src/sync/i18n.js +28 -0
- package/dist/src/sync/i18n.js.map +1 -0
- package/dist/{types → src}/sync/v2/application.d.ts +7 -7
- package/dist/src/sync/v2/application.d.ts.map +1 -0
- package/dist/src/sync/v2/application.js +206 -0
- package/dist/src/sync/v2/application.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/controls/Action.d.ts +4 -4
- package/dist/src/sync/v2/export/controls/Action.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/Action.js +129 -0
- package/dist/src/sync/v2/export/controls/Action.js.map +1 -0
- package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts +10 -0
- package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.js +75 -0
- package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.js.map +1 -0
- package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +10 -0
- package/dist/{types → src}/sync/v2/export/controls/AnalyticalListPageKPI.d.ts.map +1 -1
- package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.js +57 -0
- package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/controls/Card.d.ts +30 -30
- package/dist/src/sync/v2/export/controls/Card.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/Card.js +656 -0
- package/dist/src/sync/v2/export/controls/Card.js.map +1 -0
- package/dist/src/sync/v2/export/controls/Field.d.ts +5 -0
- package/dist/src/sync/v2/export/controls/Field.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/Field.js +42 -0
- package/dist/src/sync/v2/export/controls/Field.js.map +1 -0
- package/dist/src/sync/v2/export/controls/FilterBar.d.ts +41 -0
- package/dist/src/sync/v2/export/controls/FilterBar.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/FilterBar.js +289 -0
- package/dist/src/sync/v2/export/controls/FilterBar.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/controls/FormAction.d.ts +3 -3
- package/dist/src/sync/v2/export/controls/FormAction.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/FormAction.js +97 -0
- package/dist/src/sync/v2/export/controls/FormAction.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/controls/Fragment.d.ts +5 -5
- package/dist/src/sync/v2/export/controls/Fragment.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/Fragment.js +580 -0
- package/dist/src/sync/v2/export/controls/Fragment.js.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageChart.d.ts +8 -0
- package/dist/src/sync/v2/export/controls/ObjectPageChart.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageChart.js +38 -0
- package/dist/src/sync/v2/export/controls/ObjectPageChart.js.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts +18 -0
- package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.js +111 -0
- package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/controls/ObjectPageFooterAction.d.ts +2 -2
- package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js +63 -0
- package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.js.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts +11 -0
- package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageHeader.js +62 -0
- package/dist/src/sync/v2/export/controls/ObjectPageHeader.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +2 -2
- package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js +63 -0
- package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.js.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts +8 -0
- package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageLayout.js +60 -0
- package/dist/src/sync/v2/export/controls/ObjectPageLayout.js.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +45 -0
- package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js +200 -0
- package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.js.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts +52 -0
- package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageTable.js +337 -0
- package/dist/src/sync/v2/export/controls/ObjectPageTable.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +2 -2
- package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js +62 -0
- package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/controls/Table.d.ts +24 -24
- package/dist/src/sync/v2/export/controls/Table.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/Table.js +709 -0
- package/dist/src/sync/v2/export/controls/Table.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/controls/TableColumn.d.ts +5 -6
- package/dist/src/sync/v2/export/controls/TableColumn.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/TableColumn.js +173 -0
- package/dist/src/sync/v2/export/controls/TableColumn.js.map +1 -0
- package/dist/src/sync/v2/export/controls/ToolBar.d.ts +5 -0
- package/dist/src/sync/v2/export/controls/ToolBar.d.ts.map +1 -0
- package/dist/src/sync/v2/export/controls/ToolBar.js +7 -0
- package/dist/src/sync/v2/export/controls/ToolBar.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/controls/index.d.ts +0 -0
- package/dist/{types → src}/sync/v2/export/controls/index.d.ts.map +0 -0
- package/dist/src/sync/v2/export/controls/index.js +33 -0
- package/dist/src/sync/v2/export/controls/index.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/export.d.ts +1 -1
- package/dist/{types → src}/sync/v2/export/export.d.ts.map +1 -1
- package/dist/src/sync/v2/export/export.js +678 -0
- package/dist/src/sync/v2/export/export.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/exportPage.d.ts +2 -1
- package/dist/src/sync/v2/export/exportPage.d.ts.map +1 -0
- package/dist/src/sync/v2/export/exportPage.js +304 -0
- package/dist/src/sync/v2/export/exportPage.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/factory.d.ts +0 -0
- package/dist/{types → src}/sync/v2/export/factory.d.ts.map +1 -1
- package/dist/src/sync/v2/export/factory.js +71 -0
- package/dist/src/sync/v2/export/factory.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/manifest.d.ts +3 -3
- package/dist/src/sync/v2/export/manifest.d.ts.map +1 -0
- package/dist/src/sync/v2/export/manifest.js +159 -0
- package/dist/src/sync/v2/export/manifest.js.map +1 -0
- package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts +13 -0
- package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts.map +1 -0
- package/dist/src/sync/v2/export/pages/AnalyticalListPage.js +43 -0
- package/dist/src/sync/v2/export/pages/AnalyticalListPage.js.map +1 -0
- package/dist/src/sync/v2/export/pages/ListReport.d.ts +11 -0
- package/dist/src/sync/v2/export/pages/ListReport.d.ts.map +1 -0
- package/dist/src/sync/v2/export/pages/ListReport.js +40 -0
- package/dist/src/sync/v2/export/pages/ListReport.js.map +1 -0
- package/dist/src/sync/v2/export/pages/ObjectPage.d.ts +18 -0
- package/dist/src/sync/v2/export/pages/ObjectPage.d.ts.map +1 -0
- package/dist/src/sync/v2/export/pages/ObjectPage.js +101 -0
- package/dist/src/sync/v2/export/pages/ObjectPage.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/pages/OverviewPage.d.ts +7 -7
- package/dist/src/sync/v2/export/pages/OverviewPage.d.ts.map +1 -0
- package/dist/src/sync/v2/export/pages/OverviewPage.js +214 -0
- package/dist/src/sync/v2/export/pages/OverviewPage.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/pages/index.d.ts +0 -0
- package/dist/{types → src}/sync/v2/export/pages/index.d.ts.map +0 -0
- package/dist/src/sync/v2/export/pages/index.js +17 -0
- package/dist/src/sync/v2/export/pages/index.js.map +1 -0
- package/dist/{types → src}/sync/v2/export/view-controller-generator.d.ts +4 -4
- package/dist/src/sync/v2/export/view-controller-generator.d.ts.map +1 -0
- package/dist/src/sync/v2/export/view-controller-generator.js +149 -0
- package/dist/src/sync/v2/export/view-controller-generator.js.map +1 -0
- package/dist/{types → src}/sync/v2/generate/analyticalListReport.d.ts +1 -1
- package/dist/src/sync/v2/generate/analyticalListReport.d.ts.map +1 -0
- package/dist/src/sync/v2/generate/analyticalListReport.js +86 -0
- package/dist/src/sync/v2/generate/analyticalListReport.js.map +1 -0
- package/dist/{types → src}/sync/v2/generate/generate.d.ts +1 -1
- package/dist/src/sync/v2/generate/generate.d.ts.map +1 -0
- package/dist/src/sync/v2/generate/generate.js +100 -0
- package/dist/src/sync/v2/generate/generate.js.map +1 -0
- package/dist/{types → src}/sync/v2/generate/index.d.ts +0 -0
- package/dist/{types → src}/sync/v2/generate/index.d.ts.map +0 -0
- package/dist/src/sync/v2/generate/index.js +15 -0
- package/dist/src/sync/v2/generate/index.js.map +1 -0
- package/dist/{types → src}/sync/v2/generate/listReport.d.ts +2 -2
- package/dist/src/sync/v2/generate/listReport.d.ts.map +1 -0
- package/dist/src/sync/v2/generate/listReport.js +121 -0
- package/dist/src/sync/v2/generate/listReport.js.map +1 -0
- package/dist/{types → src}/sync/v2/generate/objectPage.d.ts +1 -1
- package/dist/src/sync/v2/generate/objectPage.d.ts.map +1 -0
- package/dist/src/sync/v2/generate/objectPage.js +547 -0
- package/dist/src/sync/v2/generate/objectPage.js.map +1 -0
- package/dist/{types → src}/sync/v2/generate/overviewPage.d.ts +1 -1
- package/dist/{types → src}/sync/v2/generate/overviewPage.d.ts.map +1 -1
- package/dist/src/sync/v2/generate/overviewPage.js +71 -0
- package/dist/src/sync/v2/generate/overviewPage.js.map +1 -0
- package/dist/{types → src}/sync/v2/generate/utils.d.ts +3 -4
- package/dist/src/sync/v2/generate/utils.d.ts.map +1 -0
- package/dist/src/sync/v2/generate/utils.js +540 -0
- package/dist/src/sync/v2/generate/utils.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/app/appProvider.d.ts +4 -4
- package/dist/src/sync/v2/import/app/appProvider.d.ts.map +1 -0
- package/dist/src/sync/v2/import/app/appProvider.js +142 -0
- package/dist/src/sync/v2/import/app/appProvider.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/app/ovpProvider.d.ts +1 -1
- package/dist/src/sync/v2/import/app/ovpProvider.d.ts.map +1 -0
- package/dist/src/sync/v2/import/app/ovpProvider.js +33 -0
- package/dist/src/sync/v2/import/app/ovpProvider.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/common/index.d.ts +6 -9
- package/dist/src/sync/v2/import/common/index.d.ts.map +1 -0
- package/dist/src/sync/v2/import/common/index.js +420 -0
- package/dist/src/sync/v2/import/common/index.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/controls/table.d.ts +2 -2
- package/dist/src/sync/v2/import/controls/table.d.ts.map +1 -0
- package/dist/src/sync/v2/import/controls/table.js +34 -0
- package/dist/src/sync/v2/import/controls/table.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/getPageType.d.ts +0 -0
- package/dist/{types → src}/sync/v2/import/getPageType.d.ts.map +0 -0
- package/dist/src/sync/v2/import/getPageType.js +1 -0
- package/dist/src/sync/v2/import/getPageType.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/index.d.ts +0 -0
- package/dist/{types → src}/sync/v2/import/index.d.ts.map +0 -0
- package/dist/src/sync/v2/import/index.js +18 -0
- package/dist/src/sync/v2/import/index.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/pages/analyticalListPage.d.ts +2 -2
- package/dist/src/sync/v2/import/pages/analyticalListPage.d.ts.map +1 -0
- package/dist/src/sync/v2/import/pages/analyticalListPage.js +129 -0
- package/dist/src/sync/v2/import/pages/analyticalListPage.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/pages/listReport.d.ts +2 -2
- package/dist/src/sync/v2/import/pages/listReport.d.ts.map +1 -0
- package/dist/src/sync/v2/import/pages/listReport.js +160 -0
- package/dist/src/sync/v2/import/pages/listReport.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/pages/objectPage.d.ts +3 -2
- package/dist/src/sync/v2/import/pages/objectPage.d.ts.map +1 -0
- package/dist/src/sync/v2/import/pages/objectPage.js +746 -0
- package/dist/src/sync/v2/import/pages/objectPage.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/pages/overviewPage.d.ts +2 -3
- package/dist/src/sync/v2/import/pages/overviewPage.d.ts.map +1 -0
- package/dist/src/sync/v2/import/pages/overviewPage.js +112 -0
- package/dist/src/sync/v2/import/pages/overviewPage.js.map +1 -0
- package/dist/{types → src}/sync/v2/import/utils.d.ts +5 -5
- package/dist/src/sync/v2/import/utils.d.ts.map +1 -0
- package/dist/src/sync/v2/import/utils.js +169 -0
- package/dist/src/sync/v2/import/utils.js.map +1 -0
- package/dist/{types → src}/sync/v2/types.d.ts +5 -6
- package/dist/src/sync/v2/types.d.ts.map +1 -0
- package/dist/src/sync/v2/types.js +38 -0
- package/dist/src/sync/v2/types.js.map +1 -0
- package/dist/{types → src}/sync/v4/application.d.ts +6 -9
- package/dist/src/sync/v4/application.d.ts.map +1 -0
- package/dist/src/sync/v4/application.js +171 -0
- package/dist/src/sync/v4/application.js.map +1 -0
- package/dist/src/sync/v4/export/controls/FilterBar.d.ts +6 -0
- package/dist/src/sync/v4/export/controls/FilterBar.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/FilterBar.js +25 -0
- package/dist/src/sync/v4/export/controls/FilterBar.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts +11 -0
- package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js +136 -0
- package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts +9 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeader.js +55 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeader.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.d.ts +22 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.js +66 -0
- package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageLayout.d.ts +5 -0
- package/dist/src/sync/v4/export/controls/ObjectPageLayout.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageLayout.js +25 -0
- package/dist/src/sync/v4/export/controls/ObjectPageLayout.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageTable.d.ts +29 -0
- package/dist/src/sync/v4/export/controls/ObjectPageTable.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageTable.js +234 -0
- package/dist/src/sync/v4/export/controls/ObjectPageTable.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +26 -0
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js +161 -0
- package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +20 -0
- package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js +114 -0
- package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.js.map +1 -0
- package/dist/{types → src}/sync/v4/export/controls/Table.d.ts +49 -35
- package/dist/src/sync/v4/export/controls/Table.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/Table.js +847 -0
- package/dist/src/sync/v4/export/controls/Table.js.map +1 -0
- package/dist/src/sync/v4/export/controls/TableColumn.d.ts +64 -0
- package/dist/src/sync/v4/export/controls/TableColumn.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/TableColumn.js +311 -0
- package/dist/src/sync/v4/export/controls/TableColumn.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ToolBar.d.ts +9 -0
- package/dist/src/sync/v4/export/controls/ToolBar.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ToolBar.js +10 -0
- package/dist/src/sync/v4/export/controls/ToolBar.js.map +1 -0
- package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts +38 -0
- package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts.map +1 -0
- package/dist/src/sync/v4/export/controls/ToolBarAction.js +215 -0
- package/dist/src/sync/v4/export/controls/ToolBarAction.js.map +1 -0
- package/dist/{types → src}/sync/v4/export/controls/index.d.ts +0 -0
- package/dist/{types → src}/sync/v4/export/controls/index.d.ts.map +0 -0
- package/dist/src/sync/v4/export/controls/index.js +25 -0
- package/dist/src/sync/v4/export/controls/index.js.map +1 -0
- package/dist/{types → src}/sync/v4/export/export.d.ts +3 -2
- package/dist/src/sync/v4/export/export.d.ts.map +1 -0
- package/dist/src/sync/v4/export/export.js +854 -0
- package/dist/src/sync/v4/export/export.js.map +1 -0
- package/dist/{types → src}/sync/v4/export/exportCustomColumn.d.ts +0 -0
- package/dist/{types → src}/sync/v4/export/exportCustomColumn.d.ts.map +0 -0
- package/dist/src/sync/v4/export/exportCustomColumn.js +59 -0
- package/dist/src/sync/v4/export/exportCustomColumn.js.map +1 -0
- package/dist/{types → src}/sync/v4/export/factory.d.ts +0 -0
- package/dist/{types → src}/sync/v4/export/factory.d.ts.map +0 -0
- package/dist/src/sync/v4/export/factory.js +57 -0
- package/dist/src/sync/v4/export/factory.js.map +1 -0
- package/dist/src/sync/v4/export/flexibleColumnLayout.d.ts +9 -0
- package/dist/src/sync/v4/export/flexibleColumnLayout.d.ts.map +1 -0
- package/dist/src/sync/v4/export/flexibleColumnLayout.js +126 -0
- package/dist/src/sync/v4/export/flexibleColumnLayout.js.map +1 -0
- package/dist/{types → src}/sync/v4/export/manifest.d.ts +2 -2
- package/dist/src/sync/v4/export/manifest.d.ts.map +1 -0
- package/dist/src/sync/v4/export/manifest.js +280 -0
- package/dist/src/sync/v4/export/manifest.js.map +1 -0
- package/dist/{types → src}/sync/v4/export/pages/FreestylePage.d.ts +0 -0
- package/dist/{types → src}/sync/v4/export/pages/FreestylePage.d.ts.map +0 -0
- package/dist/src/sync/v4/export/pages/FreestylePage.js +10 -0
- package/dist/src/sync/v4/export/pages/FreestylePage.js.map +1 -0
- package/dist/src/sync/v4/export/pages/ListReport.d.ts +14 -0
- package/dist/src/sync/v4/export/pages/ListReport.d.ts.map +1 -0
- package/dist/src/sync/v4/export/pages/ListReport.js +82 -0
- package/dist/src/sync/v4/export/pages/ListReport.js.map +1 -0
- package/dist/src/sync/v4/export/pages/ObjectPage.d.ts +9 -0
- package/dist/src/sync/v4/export/pages/ObjectPage.d.ts.map +1 -0
- package/dist/src/sync/v4/export/pages/ObjectPage.js +41 -0
- package/dist/src/sync/v4/export/pages/ObjectPage.js.map +1 -0
- package/dist/{types → src}/sync/v4/export/pages/index.d.ts +0 -0
- package/dist/{types → src}/sync/v4/export/pages/index.d.ts.map +0 -0
- package/dist/src/sync/v4/export/pages/index.js +16 -0
- package/dist/src/sync/v4/export/pages/index.js.map +1 -0
- package/dist/{types → src}/sync/v4/export/types.d.ts +1 -1
- package/dist/{types → src}/sync/v4/export/types.d.ts.map +1 -1
- package/dist/src/sync/v4/export/types.js +3 -0
- package/dist/src/sync/v4/export/types.js.map +1 -0
- package/dist/{types → src}/sync/v4/export/utils.d.ts +2 -2
- package/dist/src/sync/v4/export/utils.d.ts.map +1 -0
- package/dist/src/sync/v4/export/utils.js +44 -0
- package/dist/src/sync/v4/export/utils.js.map +1 -0
- package/dist/{types → src}/sync/v4/generate/freestylePage.d.ts +0 -0
- package/dist/{types → src}/sync/v4/generate/freestylePage.d.ts.map +0 -0
- package/dist/src/sync/v4/generate/freestylePage.js +16 -0
- package/dist/src/sync/v4/generate/freestylePage.js.map +1 -0
- package/dist/{types → src}/sync/v4/generate/generate.d.ts +1 -1
- package/dist/src/sync/v4/generate/generate.d.ts.map +1 -0
- package/dist/src/sync/v4/generate/generate.js +82 -0
- package/dist/src/sync/v4/generate/generate.js.map +1 -0
- package/dist/{types → src}/sync/v4/generate/index.d.ts +0 -0
- package/dist/{types → src}/sync/v4/generate/index.d.ts.map +0 -0
- package/dist/src/sync/v4/generate/index.js +14 -0
- package/dist/src/sync/v4/generate/index.js.map +1 -0
- package/dist/{types → src}/sync/v4/generate/listReport.d.ts +0 -0
- package/dist/{types → src}/sync/v4/generate/listReport.d.ts.map +1 -1
- package/dist/src/sync/v4/generate/listReport.js +712 -0
- package/dist/src/sync/v4/generate/listReport.js.map +1 -0
- package/dist/{types → src}/sync/v4/generate/objectPage.d.ts +0 -0
- package/dist/src/sync/v4/generate/objectPage.d.ts.map +1 -0
- package/dist/src/sync/v4/generate/objectPage.js +628 -0
- package/dist/src/sync/v4/generate/objectPage.js.map +1 -0
- package/dist/{types → src}/sync/v4/import/app/appProvider.d.ts +2 -2
- package/dist/{types → src}/sync/v4/import/app/appProvider.d.ts.map +1 -1
- package/dist/src/sync/v4/import/app/appProvider.js +11 -0
- package/dist/src/sync/v4/import/app/appProvider.js.map +1 -0
- package/dist/{types → src}/sync/v4/import/app/baseAppProvider.d.ts +9 -9
- package/dist/src/sync/v4/import/app/baseAppProvider.d.ts.map +1 -0
- package/dist/src/sync/v4/import/app/baseAppProvider.js +358 -0
- package/dist/src/sync/v4/import/app/baseAppProvider.js.map +1 -0
- package/dist/{types → src}/sync/v4/import/app/freestyleProvider.d.ts +2 -2
- package/dist/src/sync/v4/import/app/freestyleProvider.d.ts.map +1 -0
- package/dist/src/sync/v4/import/app/freestyleProvider.js +12 -0
- package/dist/src/sync/v4/import/app/freestyleProvider.js.map +1 -0
- package/dist/{types → src}/sync/v4/import/app/index.d.ts +0 -0
- package/dist/{types → src}/sync/v4/import/app/index.d.ts.map +0 -0
- package/dist/src/sync/v4/import/app/index.js +13 -0
- package/dist/src/sync/v4/import/app/index.js.map +1 -0
- package/dist/{types → src}/sync/v4/import/fragment.d.ts +1 -1
- package/dist/src/sync/v4/import/fragment.d.ts.map +1 -0
- package/dist/src/sync/v4/import/fragment.js +128 -0
- package/dist/src/sync/v4/import/fragment.js.map +1 -0
- package/dist/{types → src}/sync/v4/import/index.d.ts +0 -0
- package/dist/{types → src}/sync/v4/import/index.d.ts.map +0 -0
- package/dist/src/sync/v4/import/index.js +15 -0
- package/dist/src/sync/v4/import/index.js.map +1 -0
- package/dist/{types → src}/sync/v4/import/pages/listReport.d.ts +4 -4
- package/dist/src/sync/v4/import/pages/listReport.d.ts.map +1 -0
- package/dist/src/sync/v4/import/pages/listReport.js +287 -0
- package/dist/src/sync/v4/import/pages/listReport.js.map +1 -0
- package/dist/{types → src}/sync/v4/import/pages/objectPage.d.ts +2 -2
- package/dist/src/sync/v4/import/pages/objectPage.d.ts.map +1 -0
- package/dist/src/sync/v4/import/pages/objectPage.js +265 -0
- package/dist/src/sync/v4/import/pages/objectPage.js.map +1 -0
- package/dist/{types → src}/sync/v4/import/utils.d.ts +1 -1
- package/dist/{types → src}/sync/v4/import/utils.d.ts.map +1 -1
- package/dist/src/sync/v4/import/utils.js +35 -0
- package/dist/src/sync/v4/import/utils.js.map +1 -0
- package/dist/src/sync/v4/sync-rules/controllerExtensions.d.ts +9 -0
- package/dist/src/sync/v4/sync-rules/controllerExtensions.d.ts.map +1 -0
- package/dist/src/sync/v4/sync-rules/controllerExtensions.js +104 -0
- package/dist/src/sync/v4/sync-rules/controllerExtensions.js.map +1 -0
- package/dist/{types → src}/sync/v4/types.d.ts +0 -0
- package/dist/{types → src}/sync/v4/types.d.ts.map +0 -0
- package/dist/src/sync/v4/types.js +3 -0
- package/dist/src/sync/v4/types.js.map +1 -0
- package/dist/{types → src}/sync/v4/utils/StableIdHelper.d.ts +1 -1
- package/dist/{types → src}/sync/v4/utils/StableIdHelper.d.ts.map +1 -1
- package/dist/src/sync/v4/utils/StableIdHelper.js +145 -0
- package/dist/src/sync/v4/utils/StableIdHelper.js.map +1 -0
- package/dist/{types → src}/sync/v4/utils/utils.d.ts +23 -25
- package/dist/src/sync/v4/utils/utils.d.ts.map +1 -0
- package/dist/src/sync/v4/utils/utils.js +432 -0
- package/dist/src/sync/v4/utils/utils.js.map +1 -0
- package/package.json +15 -15
- package/CHANGELOG.md +0 -458
- package/dist/types/apiTypes.d.ts.map +0 -1
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/project.d.ts.map +0 -1
- package/dist/types/specification/common/Application.d.ts +0 -37
- package/dist/types/specification/common/Application.d.ts.map +0 -1
- package/dist/types/specification/common/index.d.ts +0 -6
- package/dist/types/specification/common/index.d.ts.map +0 -1
- package/dist/types/specification/common/page.d.ts +0 -51
- package/dist/types/specification/common/page.d.ts.map +0 -1
- package/dist/types/specification/common/types.d.ts +0 -17
- package/dist/types/specification/common/types.d.ts.map +0 -1
- package/dist/types/specification/common/webapp/manifest/Manifest.d.ts +0 -50
- package/dist/types/specification/common/webapp/manifest/Manifest.d.ts.map +0 -1
- package/dist/types/specification/common/webapp/manifest/index.d.ts +0 -4
- package/dist/types/specification/common/webapp/manifest/index.d.ts.map +0 -1
- package/dist/types/specification/common/webapp/manifest/sapOvp.d.ts +0 -376
- package/dist/types/specification/common/webapp/manifest/sapOvp.d.ts.map +0 -1
- package/dist/types/specification/common/webapp/manifest/sapUi5.d.ts +0 -36
- package/dist/types/specification/common/webapp/manifest/sapUi5.d.ts.map +0 -1
- package/dist/types/specification/schemaAccess.d.ts.map +0 -1
- package/dist/types/specification/v2/ApplicationV2.d.ts +0 -47
- package/dist/types/specification/v2/ApplicationV2.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/Action.d.ts +0 -74
- package/dist/types/specification/v2/controls/Action.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/AnalyticalListPageChart.d.ts +0 -59
- package/dist/types/specification/v2/controls/AnalyticalListPageChart.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/AnalyticalListPageKPI.d.ts +0 -31
- package/dist/types/specification/v2/controls/AnalyticalListPageKPI.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/Card.d.ts +0 -658
- package/dist/types/specification/v2/controls/Card.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/Facets.d.ts +0 -18
- package/dist/types/specification/v2/controls/Facets.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/Field.d.ts +0 -11
- package/dist/types/specification/v2/controls/Field.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/FilterBar.d.ts +0 -235
- package/dist/types/specification/v2/controls/FilterBar.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/Footer.d.ts +0 -21
- package/dist/types/specification/v2/controls/Footer.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/ObjectPageChart.d.ts +0 -17
- package/dist/types/specification/v2/controls/ObjectPageChart.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/ObjectPageForm.d.ts +0 -16
- package/dist/types/specification/v2/controls/ObjectPageForm.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/ObjectPageHeader.d.ts +0 -33
- package/dist/types/specification/v2/controls/ObjectPageHeader.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/ObjectPageLayout.d.ts +0 -23
- package/dist/types/specification/v2/controls/ObjectPageLayout.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/ObjectPageSection.d.ts +0 -121
- package/dist/types/specification/v2/controls/ObjectPageSection.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/ObjectPageTable.d.ts +0 -187
- package/dist/types/specification/v2/controls/ObjectPageTable.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/ObjectPageToolBar.d.ts +0 -16
- package/dist/types/specification/v2/controls/ObjectPageToolBar.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/Table.d.ts +0 -483
- package/dist/types/specification/v2/controls/Table.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/ToolBar.d.ts +0 -9
- package/dist/types/specification/v2/controls/ToolBar.d.ts.map +0 -1
- package/dist/types/specification/v2/controls/index.d.ts +0 -18
- package/dist/types/specification/v2/controls/index.d.ts.map +0 -1
- package/dist/types/specification/v2/index.d.ts +0 -6
- package/dist/types/specification/v2/index.d.ts.map +0 -1
- package/dist/types/specification/v2/page.d.ts +0 -8
- package/dist/types/specification/v2/page.d.ts.map +0 -1
- package/dist/types/specification/v2/pages/AnalyticalListPageConfig.d.ts +0 -22
- package/dist/types/specification/v2/pages/AnalyticalListPageConfig.d.ts.map +0 -1
- package/dist/types/specification/v2/pages/ListReportConfig.d.ts +0 -13
- package/dist/types/specification/v2/pages/ListReportConfig.d.ts.map +0 -1
- package/dist/types/specification/v2/pages/ObjectPageConfig.d.ts +0 -34
- package/dist/types/specification/v2/pages/ObjectPageConfig.d.ts.map +0 -1
- package/dist/types/specification/v2/pages/OverviewPageConfig.d.ts +0 -132
- package/dist/types/specification/v2/pages/OverviewPageConfig.d.ts.map +0 -1
- package/dist/types/specification/v2/pages/index.d.ts +0 -5
- package/dist/types/specification/v2/pages/index.d.ts.map +0 -1
- package/dist/types/specification/v2/webapp/index.d.ts +0 -2
- package/dist/types/specification/v2/webapp/index.d.ts.map +0 -1
- package/dist/types/specification/v2/webapp/manifest/index.d.ts +0 -3
- package/dist/types/specification/v2/webapp/manifest/index.d.ts.map +0 -1
- package/dist/types/specification/v2/webapp/manifest/sapUi.d.ts +0 -11
- package/dist/types/specification/v2/webapp/manifest/sapUi.d.ts.map +0 -1
- package/dist/types/specification/v2/webapp/manifest/sapUi5.d.ts +0 -99
- package/dist/types/specification/v2/webapp/manifest/sapUi5.d.ts.map +0 -1
- package/dist/types/specification/v2/webapp/manifest/sapUiPageV2.d.ts +0 -32
- package/dist/types/specification/v2/webapp/manifest/sapUiPageV2.d.ts.map +0 -1
- package/dist/types/specification/v4/ApplicationV4.d.ts +0 -36
- package/dist/types/specification/v4/ApplicationV4.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/FilterBar.d.ts +0 -19
- package/dist/types/specification/v4/controls/FilterBar.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/ObjectPageFooter.d.ts +0 -12
- package/dist/types/specification/v4/controls/ObjectPageFooter.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/ObjectPageHeader.d.ts +0 -30
- package/dist/types/specification/v4/controls/ObjectPageHeader.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/ObjectPageHeaderSection.d.ts +0 -47
- package/dist/types/specification/v4/controls/ObjectPageHeaderSection.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/ObjectPageLayout.d.ts +0 -15
- package/dist/types/specification/v4/controls/ObjectPageLayout.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/ObjectPageSection.d.ts +0 -99
- package/dist/types/specification/v4/controls/ObjectPageSection.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/ObjectPageTable.d.ts +0 -107
- package/dist/types/specification/v4/controls/ObjectPageTable.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/ObjectPageToolBar.d.ts +0 -38
- package/dist/types/specification/v4/controls/ObjectPageToolBar.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/Table.d.ts +0 -352
- package/dist/types/specification/v4/controls/Table.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/ToolBar.d.ts +0 -111
- package/dist/types/specification/v4/controls/ToolBar.d.ts.map +0 -1
- package/dist/types/specification/v4/controls/index.d.ts +0 -11
- package/dist/types/specification/v4/controls/index.d.ts.map +0 -1
- package/dist/types/specification/v4/index.d.ts +0 -6
- package/dist/types/specification/v4/index.d.ts.map +0 -1
- package/dist/types/specification/v4/page.d.ts +0 -21
- package/dist/types/specification/v4/page.d.ts.map +0 -1
- package/dist/types/specification/v4/pages/FreestylePageConfig.d.ts +0 -3
- package/dist/types/specification/v4/pages/FreestylePageConfig.d.ts.map +0 -1
- package/dist/types/specification/v4/pages/ListReportConfig.d.ts +0 -37
- package/dist/types/specification/v4/pages/ListReportConfig.d.ts.map +0 -1
- package/dist/types/specification/v4/pages/ObjectPageConfig.d.ts +0 -19
- package/dist/types/specification/v4/pages/ObjectPageConfig.d.ts.map +0 -1
- package/dist/types/specification/v4/pages/index.d.ts +0 -4
- package/dist/types/specification/v4/pages/index.d.ts.map +0 -1
- package/dist/types/specification/v4/webapp/index.d.ts +0 -2
- package/dist/types/specification/v4/webapp/index.d.ts.map +0 -1
- package/dist/types/specification/v4/webapp/manifest/ManifestSettings.d.ts +0 -225
- package/dist/types/specification/v4/webapp/manifest/ManifestSettings.d.ts.map +0 -1
- package/dist/types/specification/v4/webapp/manifest/index.d.ts +0 -5
- package/dist/types/specification/v4/webapp/manifest/index.d.ts.map +0 -1
- package/dist/types/specification/v4/webapp/manifest/sapUi5.d.ts +0 -110
- package/dist/types/specification/v4/webapp/manifest/sapUi5.d.ts.map +0 -1
- package/dist/types/specification/v4/webapp/manifest/sapUiPageV4.d.ts +0 -84
- package/dist/types/specification/v4/webapp/manifest/sapUiPageV4.d.ts.map +0 -1
- package/dist/types/sync/common/appProvider.d.ts.map +0 -1
- package/dist/types/sync/common/decoration/control.d.ts.map +0 -1
- package/dist/types/sync/common/decoration/decorators.d.ts.map +0 -1
- package/dist/types/sync/common/decoration/flex.d.ts +0 -7
- package/dist/types/sync/common/decoration/flex.d.ts.map +0 -1
- package/dist/types/sync/common/flexUtils.d.ts.map +0 -1
- package/dist/types/sync/common/generate/objectPage.d.ts.map +0 -1
- package/dist/types/sync/common/generate/utils.d.ts.map +0 -1
- package/dist/types/sync/common/importProject.d.ts.map +0 -1
- package/dist/types/sync/common/types.d.ts.map +0 -1
- package/dist/types/sync/common/utils.d.ts.map +0 -1
- package/dist/types/sync/v2/application.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/Action.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/AnalyticalListPageChart.d.ts +0 -10
- package/dist/types/sync/v2/export/controls/AnalyticalListPageChart.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +0 -10
- package/dist/types/sync/v2/export/controls/Card.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/Field.d.ts +0 -5
- package/dist/types/sync/v2/export/controls/Field.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/FilterBar.d.ts +0 -42
- package/dist/types/sync/v2/export/controls/FilterBar.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/FormAction.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/Fragment.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/ObjectPageChart.d.ts +0 -8
- package/dist/types/sync/v2/export/controls/ObjectPageChart.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/ObjectPageCustomSection.d.ts +0 -20
- package/dist/types/sync/v2/export/controls/ObjectPageCustomSection.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/ObjectPageFooterAction.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/ObjectPageHeader.d.ts +0 -11
- package/dist/types/sync/v2/export/controls/ObjectPageHeader.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/ObjectPageHeaderAction.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/ObjectPageLayout.d.ts +0 -8
- package/dist/types/sync/v2/export/controls/ObjectPageLayout.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +0 -45
- package/dist/types/sync/v2/export/controls/ObjectPageSectionsV2.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/ObjectPageTable.d.ts +0 -53
- package/dist/types/sync/v2/export/controls/ObjectPageTable.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/ObjectPageToolBarAction.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/Table.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/TableColumn.d.ts.map +0 -1
- package/dist/types/sync/v2/export/controls/ToolBar.d.ts +0 -5
- package/dist/types/sync/v2/export/controls/ToolBar.d.ts.map +0 -1
- package/dist/types/sync/v2/export/exportPage.d.ts.map +0 -1
- package/dist/types/sync/v2/export/manifest.d.ts.map +0 -1
- package/dist/types/sync/v2/export/pages/AnalyticalListPage.d.ts +0 -15
- package/dist/types/sync/v2/export/pages/AnalyticalListPage.d.ts.map +0 -1
- package/dist/types/sync/v2/export/pages/ListReport.d.ts +0 -11
- package/dist/types/sync/v2/export/pages/ListReport.d.ts.map +0 -1
- package/dist/types/sync/v2/export/pages/ObjectPage.d.ts +0 -19
- package/dist/types/sync/v2/export/pages/ObjectPage.d.ts.map +0 -1
- package/dist/types/sync/v2/export/pages/OverviewPage.d.ts.map +0 -1
- package/dist/types/sync/v2/export/view-controller-generator.d.ts.map +0 -1
- package/dist/types/sync/v2/generate/analyticalListReport.d.ts.map +0 -1
- package/dist/types/sync/v2/generate/generate.d.ts.map +0 -1
- package/dist/types/sync/v2/generate/listReport.d.ts.map +0 -1
- package/dist/types/sync/v2/generate/objectPage.d.ts.map +0 -1
- package/dist/types/sync/v2/generate/utils.d.ts.map +0 -1
- package/dist/types/sync/v2/import/app/appProvider.d.ts.map +0 -1
- package/dist/types/sync/v2/import/app/ovpProvider.d.ts.map +0 -1
- package/dist/types/sync/v2/import/common/index.d.ts.map +0 -1
- package/dist/types/sync/v2/import/controls/table.d.ts.map +0 -1
- package/dist/types/sync/v2/import/pages/analyticalListPage.d.ts.map +0 -1
- package/dist/types/sync/v2/import/pages/listReport.d.ts.map +0 -1
- package/dist/types/sync/v2/import/pages/objectPage.d.ts.map +0 -1
- package/dist/types/sync/v2/import/pages/overviewPage.d.ts.map +0 -1
- package/dist/types/sync/v2/import/utils.d.ts.map +0 -1
- package/dist/types/sync/v2/types.d.ts.map +0 -1
- package/dist/types/sync/v4/application.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/FilterBar.d.ts +0 -5
- package/dist/types/sync/v4/export/controls/FilterBar.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/ObjectPageCustomSection.d.ts +0 -13
- package/dist/types/sync/v4/export/controls/ObjectPageCustomSection.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/ObjectPageHeader.d.ts +0 -9
- package/dist/types/sync/v4/export/controls/ObjectPageHeader.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/ObjectPageHeaderSection.d.ts +0 -22
- package/dist/types/sync/v4/export/controls/ObjectPageHeaderSection.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/ObjectPageLayout.d.ts +0 -5
- package/dist/types/sync/v4/export/controls/ObjectPageLayout.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/ObjectPageTable.d.ts +0 -29
- package/dist/types/sync/v4/export/controls/ObjectPageTable.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/ObjectPageTableColumn.d.ts +0 -26
- package/dist/types/sync/v4/export/controls/ObjectPageTableColumn.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +0 -20
- package/dist/types/sync/v4/export/controls/ObjectPageToolBarAction.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/Table.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/TableColumn.d.ts +0 -64
- package/dist/types/sync/v4/export/controls/TableColumn.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/ToolBar.d.ts +0 -9
- package/dist/types/sync/v4/export/controls/ToolBar.d.ts.map +0 -1
- package/dist/types/sync/v4/export/controls/ToolBarAction.d.ts +0 -38
- package/dist/types/sync/v4/export/controls/ToolBarAction.d.ts.map +0 -1
- package/dist/types/sync/v4/export/export.d.ts.map +0 -1
- package/dist/types/sync/v4/export/flexibleColumnLayout.d.ts +0 -8
- package/dist/types/sync/v4/export/flexibleColumnLayout.d.ts.map +0 -1
- package/dist/types/sync/v4/export/manifest.d.ts.map +0 -1
- package/dist/types/sync/v4/export/pages/ListReport.d.ts +0 -14
- package/dist/types/sync/v4/export/pages/ListReport.d.ts.map +0 -1
- package/dist/types/sync/v4/export/pages/ObjectPage.d.ts +0 -9
- package/dist/types/sync/v4/export/pages/ObjectPage.d.ts.map +0 -1
- package/dist/types/sync/v4/export/utils.d.ts.map +0 -1
- package/dist/types/sync/v4/generate/generate.d.ts.map +0 -1
- package/dist/types/sync/v4/generate/objectPage.d.ts.map +0 -1
- package/dist/types/sync/v4/import/app/baseAppProvider.d.ts.map +0 -1
- package/dist/types/sync/v4/import/app/freestyleProvider.d.ts.map +0 -1
- package/dist/types/sync/v4/import/fragment.d.ts.map +0 -1
- package/dist/types/sync/v4/import/pages/listReport.d.ts.map +0 -1
- package/dist/types/sync/v4/import/pages/objectPage.d.ts.map +0 -1
- package/dist/types/sync/v4/utils/utils.d.ts.map +0 -1
- package/dist/types/v2.d.ts +0 -3
- package/dist/types/v2.d.ts.map +0 -1
- package/dist/types/v4.d.ts +0 -3
- package/dist/types/v4.d.ts.map +0 -1
|
@@ -0,0 +1,746 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createObjectPageConfigV2 = void 0;
|
|
7
|
+
const ux_specification_types_1 = require("@sap/ux-specification-types");
|
|
8
|
+
const table_1 = require("../controls/table");
|
|
9
|
+
const extensionLogger_1 = require("../../../../extensionLogger");
|
|
10
|
+
const utils_1 = require("../utils");
|
|
11
|
+
const common_1 = require("../../../common");
|
|
12
|
+
const manifest_1 = require("../../export/manifest");
|
|
13
|
+
const i18next_1 = __importDefault(require("i18next"));
|
|
14
|
+
const i18n_1 = require("../../../../i18n/i18n");
|
|
15
|
+
const factory_1 = require("../../export/factory");
|
|
16
|
+
const types_1 = require("../../types");
|
|
17
|
+
const common_2 = require("../common");
|
|
18
|
+
// Comprises list of flexChanges that do not require a facet id
|
|
19
|
+
const SupportedFlexChangesWithoutFacetId = [ux_specification_types_1.ControlType.Avatar, ux_specification_types_1.ControlType.ObjectPageLayout, ux_specification_types_1.ControlType.DynamicPage];
|
|
20
|
+
/**
|
|
21
|
+
* Determines Facet ID from single string selector Id
|
|
22
|
+
* @param {string} selectorId Selector ID
|
|
23
|
+
* @returns {string} FacetID
|
|
24
|
+
*/
|
|
25
|
+
function getSingleSelectorIdPart(selectorIdParts, facetID) {
|
|
26
|
+
const lastIdParts = selectorIdParts[0].split('-');
|
|
27
|
+
const id = lastIdParts[lastIdParts.length - 1];
|
|
28
|
+
if (selectorIdParts[0].indexOf('::action::') >= 0 || selectorIdParts[0].startsWith('action::')) {
|
|
29
|
+
// Object Page ToolBar Actions
|
|
30
|
+
facetID =
|
|
31
|
+
lastIdParts[0].split('::action::')[0] ||
|
|
32
|
+
lastIdParts[0].split(`${"com.sap.vocabularies.UI.v1.LineItem" /* LineItem */}::`)[1].split('::')[0];
|
|
33
|
+
facetID = `${common_1.ActionTitlePrefix}${facetID}`;
|
|
34
|
+
}
|
|
35
|
+
else if (selectorIdParts[0].indexOf("com.sap.vocabularies.UI.v1.LineItem" /* LineItem */) >= 0 ||
|
|
36
|
+
selectorIdParts[0].indexOf('UI.LineItem') >= 0 ||
|
|
37
|
+
selectorIdParts[0].indexOf('::Table') >= 0) {
|
|
38
|
+
facetID = lastIdParts[0].split('::Table')[0].split('::responsiveTable')[0];
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
const idParts = id.split('::');
|
|
42
|
+
if (idParts.length > 1) {
|
|
43
|
+
facetID = idParts[0];
|
|
44
|
+
}
|
|
45
|
+
else if (lastIdParts[0].indexOf('::') > -1) {
|
|
46
|
+
facetID = lastIdParts[0].split('::')[0];
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return facetID;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Determines Facet ID of flex change
|
|
53
|
+
* @param {string} selectorId Control ID of flex change
|
|
54
|
+
* @returns {string} FacetID
|
|
55
|
+
*/
|
|
56
|
+
function getFacetID(selectorId) {
|
|
57
|
+
let facetID;
|
|
58
|
+
const selectorIdParts = selectorId.split(':::');
|
|
59
|
+
if (selectorIdParts.length === 1) {
|
|
60
|
+
facetID = getSingleSelectorIdPart(selectorIdParts, facetID);
|
|
61
|
+
}
|
|
62
|
+
else if (selectorId.indexOf('sSmartTableId') >= 0) {
|
|
63
|
+
for (const element of selectorIdParts) {
|
|
64
|
+
if (element.startsWith('sSmartTableId')) {
|
|
65
|
+
facetID = element
|
|
66
|
+
.split('sSmartTableId::')[1]
|
|
67
|
+
.split('::Table')[0]
|
|
68
|
+
.split('/responsiveTable')[0]
|
|
69
|
+
.replace(`::${"com.sap.vocabularies.UI.v1.LineItem" /* LineItem */}`, `/@${"com.sap.vocabularies.UI.v1.LineItem" /* LineItem */}`);
|
|
70
|
+
break;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
facetID = selectorIdParts[0];
|
|
76
|
+
}
|
|
77
|
+
return facetID;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Prepares the list of flex changes
|
|
81
|
+
* @param change - the flex change (UI Adaptation)
|
|
82
|
+
* @returns {FlexChangesForTransfer} - list of prepared flex changes
|
|
83
|
+
*/
|
|
84
|
+
function prepareFlexChanges(changes, entitySet, logger) {
|
|
85
|
+
const result = {};
|
|
86
|
+
const complexIdMatch = /.+DataField.+:::sSmartTableId::.+/;
|
|
87
|
+
changes.forEach((changeString) => {
|
|
88
|
+
try {
|
|
89
|
+
const change = common_1.parseChangeString(changeString);
|
|
90
|
+
if (change &&
|
|
91
|
+
change.controlId?.includes(ux_specification_types_1.v2.FE_TEMPLATE_V2_OBJECT_PAGE) &&
|
|
92
|
+
change.controlId?.includes(entitySet)) {
|
|
93
|
+
let selectorId = change.controlId.split('--')[1].replace(/:3a:3a/g, '::');
|
|
94
|
+
if (complexIdMatch.exec(selectorId) !== null) {
|
|
95
|
+
selectorId = selectorId.split('template:::TableColumn:::')[1];
|
|
96
|
+
}
|
|
97
|
+
const facetID = getFacetID(selectorId);
|
|
98
|
+
selectorId = common_2.convertSelector(selectorId)
|
|
99
|
+
.replace(/:3a:3a/g, '::')
|
|
100
|
+
.replace(/\/@com.sap.vocabularies/g, '::com.sap.vocabularies');
|
|
101
|
+
result[`${selectorId}::${change.content.property}`] = {
|
|
102
|
+
controlId: selectorId,
|
|
103
|
+
propertyId: change.content.property,
|
|
104
|
+
facetId: facetID,
|
|
105
|
+
newValue: change.content.newBinding !== undefined ? change.content.newBinding : change.content.newValue,
|
|
106
|
+
controlType: change.controlType,
|
|
107
|
+
creation: change.creation
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
extensionLogger_1.log(logger, {
|
|
113
|
+
severity: "error" /* Error */,
|
|
114
|
+
message: i18next_1.default.t('FLEXERROR')
|
|
115
|
+
}, ...error);
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
const sortedList = Object.entries(result).sort((a, b) => a[1].creation - b[1].creation);
|
|
119
|
+
return sortedList.reduce((accum, [k, v]) => {
|
|
120
|
+
accum[k] = v;
|
|
121
|
+
return accum;
|
|
122
|
+
}, {});
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Returns the type of a given section
|
|
126
|
+
* @param schemaSection - current section
|
|
127
|
+
* @returns {SectionTypeV2} - type of section, differentiated by level (Sub/Section)
|
|
128
|
+
*/
|
|
129
|
+
const getSectionType = (schemaSection) => {
|
|
130
|
+
let reference;
|
|
131
|
+
if (schemaSection['$ref']) {
|
|
132
|
+
reference = schemaSection['$ref'].includes('<') ? schemaSection['$ref'].split('<')[0] : schemaSection['$ref'];
|
|
133
|
+
return reference.replace(common_1.DEFINITION_LINK_PREFIX, '');
|
|
134
|
+
}
|
|
135
|
+
else if (schemaSection['properties']?.['subsections']?.['$ref']) {
|
|
136
|
+
reference = schemaSection['properties']['subsections']['$ref'];
|
|
137
|
+
reference = reference.includes('<') ? reference.split('<')[0] : reference;
|
|
138
|
+
return reference.replace(common_1.DEFINITION_LINK_PREFIX, '');
|
|
139
|
+
}
|
|
140
|
+
else if (schemaSection['properties']?.['subsections']) {
|
|
141
|
+
return types_1.SectionTypeV2.SubSection;
|
|
142
|
+
}
|
|
143
|
+
};
|
|
144
|
+
/**
|
|
145
|
+
* Import of flex changes of a table to the config JSON of OP
|
|
146
|
+
* @param flexChanges - list of flex changes (pre-processed by prepareFlexChanges)
|
|
147
|
+
* @param propertyKey - key of the current property in the app schema
|
|
148
|
+
* @param configPart - part of the configuration to be filled
|
|
149
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
150
|
+
* @param sectionTitle - title of the section (optional)
|
|
151
|
+
* @param sectionId - ID of the given section (optional)
|
|
152
|
+
*/
|
|
153
|
+
function importFlexChangesOfTable(flexChanges, propertyKey, configPart, importParameters, sectionTitle, sectionId) {
|
|
154
|
+
let facetIds;
|
|
155
|
+
if (sectionTitle) {
|
|
156
|
+
facetIds = [sectionTitle.replace(/@/g, '')];
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
facetIds = [sectionId.replace(/@/g, ''), sectionId?.replace(/::@com.sap.vocabularies/g, common_1.VOCWITHSLASH)];
|
|
160
|
+
}
|
|
161
|
+
for (const selector in flexChanges) {
|
|
162
|
+
const flexChange = flexChanges[selector];
|
|
163
|
+
const propertyIdMatch = flexChange.propertyId === propertyKey;
|
|
164
|
+
const isTableColumn = propertyKey === 'columns' && flexChange.controlType === ux_specification_types_1.ControlType.TableColumn;
|
|
165
|
+
if ((propertyIdMatch || isTableColumn) && facetIds.indexOf(flexChange?.facetId) > -1) {
|
|
166
|
+
table_1.addFlexForTable(configPart, flexChange, importParameters.jsonSchema);
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* RegEx check of the control Id and/or the section Id against the selector of a flex change
|
|
172
|
+
* @param schemaDefinition - current section of the app specific schema
|
|
173
|
+
* @param flexChange - flex change
|
|
174
|
+
* @param controlIdChecker - RegEx for the controlId
|
|
175
|
+
* @param selectionIdChecker - RegEx for the selectionId
|
|
176
|
+
* @param sectionId - title of the section (optional)
|
|
177
|
+
* @param controlId - ID of the given control, for e.g. GroupElement, Action (optional)
|
|
178
|
+
* @returns the result of all checks
|
|
179
|
+
*/
|
|
180
|
+
function matchSelector(schemaDefinition, flexChange, controlIdChecker, selectionIdChecker, sectionId, controlId) {
|
|
181
|
+
let idMatch = false, controlIdMatch = false;
|
|
182
|
+
const idElementChecker = (arr, target) => target.every((v) => arr.includes(v));
|
|
183
|
+
if (controlId) {
|
|
184
|
+
idMatch = controlIdMatch = controlIdChecker.test(flexChange.controlId);
|
|
185
|
+
if (sectionId) {
|
|
186
|
+
idMatch = controlIdMatch && selectionIdChecker.test(flexChange.controlId);
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
else if (sectionId) {
|
|
190
|
+
idMatch = selectionIdChecker.test(flexChange.controlId);
|
|
191
|
+
}
|
|
192
|
+
const controlIdParts = flexChange.controlId.split('::');
|
|
193
|
+
return ((flexChange.controlType === ux_specification_types_1.ControlType.GroupElement && controlIdMatch) ||
|
|
194
|
+
(flexChange.facetId?.includes(common_1.ActionTitlePrefix) && !sectionId && idMatch) ||
|
|
195
|
+
(sectionId && idElementChecker(controlIdParts, sectionId.split('::')) && idMatch) ||
|
|
196
|
+
(schemaDefinition.title && idElementChecker(controlIdParts, schemaDefinition.title.split('::'))) ||
|
|
197
|
+
(!flexChange.facetId && SupportedFlexChangesWithoutFacetId.includes(flexChange.controlType)));
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Import of (regular) flex changes to the config JSON of OP
|
|
201
|
+
* @param schemaDefinition - current section of the app specific schema
|
|
202
|
+
* @param configPart - part of the configuration to be filled
|
|
203
|
+
* @param flexChanges - list of flex changes (pre-processed by prepareFlexChanges)
|
|
204
|
+
* @param propertyKey - key of the current property in the app schema
|
|
205
|
+
* @param sectionId - title of the section (optional)
|
|
206
|
+
* @param elementId - stable ID part of the given element, for e.g. GroupElement, Action (optional)
|
|
207
|
+
*/
|
|
208
|
+
function importFlexChanges(schemaDefinition, configPart, flexChanges, propertyKey, sectionId, elementId) {
|
|
209
|
+
const controlIdChecker = new RegExp(`.*${elementId}`);
|
|
210
|
+
const selectionIdChecker = new RegExp(`.*${sectionId}`);
|
|
211
|
+
for (const selector in flexChanges) {
|
|
212
|
+
const flexChange = flexChanges[selector];
|
|
213
|
+
//Property match?
|
|
214
|
+
if (flexChange.propertyId !== propertyKey) {
|
|
215
|
+
continue;
|
|
216
|
+
}
|
|
217
|
+
//Control type match?
|
|
218
|
+
if (flexChange.controlType !== schemaDefinition.properties[flexChange.propertyId]?.[common_1.SchemaTag.controlType]) {
|
|
219
|
+
continue;
|
|
220
|
+
}
|
|
221
|
+
const match = matchSelector(schemaDefinition, flexChange, controlIdChecker, selectionIdChecker, sectionId, elementId);
|
|
222
|
+
if (match) {
|
|
223
|
+
configPart[propertyKey] = flexChange.newValue;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
/**
|
|
228
|
+
* Checks for deprecated properties and writes them to the log
|
|
229
|
+
* @param manifestSection - given section in the manifest
|
|
230
|
+
* @param deprecatedProperties - list of deperecated properties
|
|
231
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
232
|
+
* @param manifestPath - manifest path, as calcualted by the sync rule
|
|
233
|
+
*/
|
|
234
|
+
function checkDeprecatedProperties(manifestSection, deprecatedProperties, importParameters, manifestPath) {
|
|
235
|
+
if (manifestSection && deprecatedProperties) {
|
|
236
|
+
for (const key in manifestSection) {
|
|
237
|
+
const deprecated = deprecatedProperties[key];
|
|
238
|
+
if (deprecated) {
|
|
239
|
+
extensionLogger_1.log(importParameters.logger, {
|
|
240
|
+
severity: "warning" /* Warning */,
|
|
241
|
+
message: common_1.getTextForDeprecated(key, deprecated),
|
|
242
|
+
location: {
|
|
243
|
+
path: 'webapp/manifest.json/',
|
|
244
|
+
range: manifestPath.split('/')
|
|
245
|
+
}
|
|
246
|
+
});
|
|
247
|
+
delete deprecatedProperties[key];
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Imports manifest settings to the object page config
|
|
254
|
+
* @param syncRule - sync rule for accessing the reflect-metadata
|
|
255
|
+
* @param pageKeys - list of page keys (comprises the one entry describing the given page)
|
|
256
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
257
|
+
* @param configPart - part of the configuration to be filled
|
|
258
|
+
* @param propertyKey - key of the current property of the schema definition
|
|
259
|
+
* @param deprecatedProperties - list od deperecated properties
|
|
260
|
+
* @param sectionId - ID of the given section (optional)
|
|
261
|
+
* @param sectionTitle - title of the section (optional)
|
|
262
|
+
*/
|
|
263
|
+
function importManifestSetting(syncRule, pageKeys, importParameters, configPart, propertyKey, deprecatedProperties, sectionPart) {
|
|
264
|
+
const sectionIdInManifest = sectionPart?.id
|
|
265
|
+
? sectionPart.id.replace(/\/@/g, '::').replace(/@com.sap/g, 'com.sap')
|
|
266
|
+
: undefined;
|
|
267
|
+
let manifestPath;
|
|
268
|
+
let manifestSection;
|
|
269
|
+
if (sectionPart?.title) {
|
|
270
|
+
manifestPath = syncRule.manifest.path(pageKeys, {}, sectionPart.title);
|
|
271
|
+
manifestSection = manifest_1.ensureManifestSectionByPathV2(importParameters.manifest, manifestPath);
|
|
272
|
+
if (Object.values(manifestSection).length === 0) {
|
|
273
|
+
manifestPath = syncRule.manifest.path(pageKeys, {}, sectionIdInManifest);
|
|
274
|
+
manifestSection = manifest_1.ensureManifestSectionByPathV2(importParameters.manifest, manifestPath);
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
else {
|
|
278
|
+
manifestPath = syncRule.manifest.path(pageKeys, {}, sectionIdInManifest);
|
|
279
|
+
manifestSection = manifest_1.ensureManifestSectionByPathV2(importParameters.manifest, manifestPath);
|
|
280
|
+
}
|
|
281
|
+
const importHandler = syncRule.manifest.import;
|
|
282
|
+
if (importHandler && typeof importHandler === 'function') {
|
|
283
|
+
const value = importHandler(manifestSection, sectionPart?.id);
|
|
284
|
+
if (value !== undefined) {
|
|
285
|
+
configPart[propertyKey] = value;
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
else {
|
|
289
|
+
const manifestKey = syncRule.manifest.key || propertyKey;
|
|
290
|
+
if (manifestKey in manifestSection) {
|
|
291
|
+
configPart[propertyKey] = manifestSection[manifestKey];
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
// Check for deprecated properties.
|
|
295
|
+
checkDeprecatedProperties(manifestSection, deprecatedProperties, importParameters, manifestPath);
|
|
296
|
+
return manifestSection;
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* Transfers settings from manifest and flexChanges to object page config
|
|
300
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
301
|
+
* @param configPart - part of the configuration to be filled
|
|
302
|
+
* @param schemaDefinition - current section of the app specific schema
|
|
303
|
+
* @param configParameters - comprises page keys and flex changes
|
|
304
|
+
* @param sectionPart - structure comprising the section information
|
|
305
|
+
* @param elementId - stable ID part of the given element (action, column, ...) (optional)
|
|
306
|
+
*/
|
|
307
|
+
function transferSettingsAndFlexChanges(importParameters, configPart, schemaDefinition, configParameters, sectionPart, elementId) {
|
|
308
|
+
if (!schemaDefinition) {
|
|
309
|
+
return;
|
|
310
|
+
}
|
|
311
|
+
const deprecatedProperties = configPart?.getDeprecated ? configPart.getDeprecated() : {};
|
|
312
|
+
for (const propertyKey in schemaDefinition.properties || schemaDefinition) {
|
|
313
|
+
const syncRule = common_1.getReflectMetadata(configPart, propertyKey);
|
|
314
|
+
if (propertyKey === 'columns' || syncRule?.flex) {
|
|
315
|
+
if (sectionPart?.type?.startsWith('ObjectPageSectionTableV2') ||
|
|
316
|
+
sectionPart?.type?.startsWith('ObjectPageSubSectionTableV2')) {
|
|
317
|
+
importFlexChangesOfTable(configParameters.flexChanges, propertyKey, configPart, importParameters, sectionPart.title, sectionPart.id);
|
|
318
|
+
}
|
|
319
|
+
else {
|
|
320
|
+
const facetId = sectionPart?.title || sectionPart?.id;
|
|
321
|
+
importFlexChanges(schemaDefinition, configPart, configParameters.flexChanges, propertyKey, facetId, elementId);
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
else if (syncRule?.manifest) {
|
|
325
|
+
importManifestSetting(syncRule, configParameters.pageKeys, importParameters, configPart, propertyKey, deprecatedProperties, sectionPart);
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
/**
|
|
330
|
+
*
|
|
331
|
+
* @param actionType - type of action
|
|
332
|
+
* @param configActionId - id of action in config
|
|
333
|
+
* @param {ActionTypeV2|string} importTypeId - type of action that was be initiated
|
|
334
|
+
* @returns {string} actionId - to be used for import of flex changes
|
|
335
|
+
*/
|
|
336
|
+
function getActionId(actionType, configActionId, importTypeId, facetId) {
|
|
337
|
+
let actionId = common_1.convertActionKeyToStableId(configActionId);
|
|
338
|
+
if (actionType === types_1.ActionTypeV2.Form) {
|
|
339
|
+
actionId = `action::${actionId}::${facetId}::${importTypeId}`;
|
|
340
|
+
}
|
|
341
|
+
else if (actionType === types_1.ActionTypeV2.OPFooter) {
|
|
342
|
+
actionId = `action::${actionId}::Determining`;
|
|
343
|
+
}
|
|
344
|
+
else if (actionType === types_1.ActionTypeV2.OPToolBar) {
|
|
345
|
+
actionId = actionId.includes('sAction::')
|
|
346
|
+
? `action::${actionId.split('sAction::')[1]}`
|
|
347
|
+
: `action::${actionId.replace(':2f', '::')}`;
|
|
348
|
+
}
|
|
349
|
+
return actionId.replace(/@/g, '');
|
|
350
|
+
}
|
|
351
|
+
/**
|
|
352
|
+
* Fills the action of the configuration
|
|
353
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
354
|
+
* @param {object} actionProperties - current properties' list (of action)
|
|
355
|
+
* @param {object} configPart - the given part of the object page config
|
|
356
|
+
* @param {ObjectPageV2ConfigParameters} configParameters - container for factory, pageKeys, flexChanges, v2Page, ObjectPageConfig
|
|
357
|
+
* @param {ActionTypeV2|string} importTypeId - type of action that should be initiated
|
|
358
|
+
*/
|
|
359
|
+
function fillActions(importParameters, actionProperties, configPart, configParameters, importTypeId, facetId) {
|
|
360
|
+
configPart[common_1.PropertyName.actions] = {};
|
|
361
|
+
const actionType = importTypeId.split('::').pop();
|
|
362
|
+
if (configParameters.flexChanges && Object.keys(configParameters.flexChanges).length > 0) {
|
|
363
|
+
const sectionPart = {};
|
|
364
|
+
if (facetId) {
|
|
365
|
+
sectionPart.id = facetId;
|
|
366
|
+
}
|
|
367
|
+
for (const actionProperty in actionProperties) {
|
|
368
|
+
const configActionId = common_2.convertActionKey(actionProperty);
|
|
369
|
+
const actionId = getActionId(actionType, configActionId, importTypeId, facetId);
|
|
370
|
+
if (actionId) {
|
|
371
|
+
configPart[common_1.PropertyName.actions][configActionId] = configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, actionType);
|
|
372
|
+
transferSettingsAndFlexChanges(importParameters, configPart[common_1.PropertyName.actions][configActionId], importParameters.jsonSchema.definitions[actionType], configParameters, sectionPart, actionId);
|
|
373
|
+
}
|
|
374
|
+
if (configPart[common_1.PropertyName.actions]?.[configActionId] &&
|
|
375
|
+
Object.keys(configPart[common_1.PropertyName.actions][configActionId]).length === 0) {
|
|
376
|
+
delete configPart[common_1.PropertyName.actions][configActionId];
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
if (Object.keys(configPart[common_1.PropertyName.actions]).length === 0) {
|
|
381
|
+
delete configPart[common_1.PropertyName.actions];
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
/**
|
|
385
|
+
* Fills the fields of an object page form
|
|
386
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
387
|
+
* @param {sectionPartProperties} sectionPart - current properties' list of form section
|
|
388
|
+
* @param fieldProperties - current properties' list (of fields)
|
|
389
|
+
* @param configPart - the given part of the object page config
|
|
390
|
+
* @param {ObjectPageV2ConfigParameters} configParameters - container for factory, pageKeys, flexChanges, v2Page, ObjectPageConfig
|
|
391
|
+
*/
|
|
392
|
+
function fillFields(importParameters, sectionPart, fieldProperties, configPart, configParameters) {
|
|
393
|
+
let fieldId;
|
|
394
|
+
configPart[sectionPart.id]['form']['fields'] = {};
|
|
395
|
+
for (const fieldProperty in fieldProperties) {
|
|
396
|
+
fieldId = `${fieldProperty}::GroupElement`;
|
|
397
|
+
configPart[sectionPart.id]['form']['fields'][fieldProperty] = configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, 'Field');
|
|
398
|
+
const elementId = sectionPart.title.includes(common_1.UIVOCABULARYALPHADOT)
|
|
399
|
+
? `${sectionPart.id.replace(/@/g, '')}::${fieldId}`
|
|
400
|
+
: `${sectionPart.title}::${fieldId}`;
|
|
401
|
+
transferSettingsAndFlexChanges(importParameters, configPart[sectionPart.id]['form']['fields'][fieldProperty], importParameters.jsonSchema.definitions[common_1.DefinitionName.Field], configParameters, {}, elementId);
|
|
402
|
+
if (Object.keys(configPart[sectionPart.id]['form']['fields'][fieldProperty]).length === 0) {
|
|
403
|
+
delete configPart[sectionPart.id]['form']['fields'][fieldProperty];
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
if (Object.keys(configPart[sectionPart.id]['form']['fields']).length === 0) {
|
|
407
|
+
delete configPart[sectionPart.id]['form']['fields'];
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
/**
|
|
411
|
+
* Adjusts the app schema by choosing the right table definition, depending on the table type
|
|
412
|
+
* @param tableType - the type of the given table
|
|
413
|
+
* @param {SectionPartProperties} sectionPart - current properties' list
|
|
414
|
+
* @param schemaDefinitions - definitions' section of the app schema
|
|
415
|
+
* @returns the right schema definition for the given table
|
|
416
|
+
*/
|
|
417
|
+
function prepareTableSchema(tableType, sectionPart, schemaDefinitions) {
|
|
418
|
+
let tableSchema;
|
|
419
|
+
if (tableType === 'TreeTable' || tableType === 'AnalyticalTable' || tableType === 'GridTable') {
|
|
420
|
+
tableSchema = schemaDefinitions[`ObjectPage${tableType}<${sectionPart.id}>`];
|
|
421
|
+
}
|
|
422
|
+
else if (schemaDefinitions[`ObjectPageResponsiveTableWithMultiSelect<${sectionPart.id}>`] &&
|
|
423
|
+
schemaDefinitions[`ObjectPageResponsiveTableWithInlineDelete<${sectionPart.id}>`]) {
|
|
424
|
+
tableSchema = JSON.parse(JSON.stringify(schemaDefinitions[`ObjectPageResponsiveTableWithMultiSelect<${sectionPart.id}>`]));
|
|
425
|
+
tableSchema['properties'] = {
|
|
426
|
+
...tableSchema['properties'],
|
|
427
|
+
...schemaDefinitions[`ObjectPageResponsiveTableWithInlineDelete<${sectionPart.id}>`]['properties']
|
|
428
|
+
};
|
|
429
|
+
}
|
|
430
|
+
return tableSchema;
|
|
431
|
+
}
|
|
432
|
+
/**
|
|
433
|
+
* Fills the table section of the object page config
|
|
434
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
435
|
+
* @param {SectionPartProperties} sectionPart - current properties' list
|
|
436
|
+
* @param {Settings} manifestSettings - object page settings section of the manifest
|
|
437
|
+
* @param {object} configPart - the given part of the object page config
|
|
438
|
+
* @param {ObjectPageV2ConfigParameters} configParameters - container for factory, pageKeys, flexChanges, v2Page, ObjectPageConfig
|
|
439
|
+
*/
|
|
440
|
+
function fillTableInConfig(importParameters, sectionPart, manifestSettings, configPart, configParameters) {
|
|
441
|
+
const manifestKey = sectionPart.title || sectionPart.id.replace('@com.sap', 'com.sap');
|
|
442
|
+
const manifestSection = manifestSettings && manifestSettings.sections && manifestSettings.sections[manifestKey];
|
|
443
|
+
if (manifestSection || configParameters.flexChanges) {
|
|
444
|
+
const tableType = manifestSection?.tableSettings?.type || 'ResponsiveTable';
|
|
445
|
+
//Instantiate metadata
|
|
446
|
+
const OPtable = configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, `ObjectPage${tableType}`, {
|
|
447
|
+
toolBar: {}
|
|
448
|
+
});
|
|
449
|
+
configPart[sectionPart.id] = configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, sectionPart.type, {
|
|
450
|
+
table: {}
|
|
451
|
+
});
|
|
452
|
+
configPart[sectionPart.id][common_1.PropertyName.table] = OPtable;
|
|
453
|
+
const schemaDefinitions = importParameters.jsonSchema.definitions;
|
|
454
|
+
const tableSchema = prepareTableSchema(tableType, sectionPart, schemaDefinitions);
|
|
455
|
+
//Transfer settings of (sub)section
|
|
456
|
+
transferSettingsAndFlexChanges(importParameters, configPart[sectionPart.id], sectionPart.schema, configParameters, { title: sectionPart.title });
|
|
457
|
+
//Transfer settings of table
|
|
458
|
+
transferSettingsAndFlexChanges(importParameters, configPart[sectionPart.id][common_1.PropertyName.table], tableSchema, configParameters, sectionPart);
|
|
459
|
+
//Transfer settings of table toolbar actions
|
|
460
|
+
const toolBarActions = JSON.parse(JSON.stringify(schemaDefinitions))[`Actions<${sectionPart.id}>`];
|
|
461
|
+
if (toolBarActions?.properties) {
|
|
462
|
+
const facetId = sectionPart?.title
|
|
463
|
+
? sectionPart.title.replace(/@/g, '::').replace(/::com/g, 'com')
|
|
464
|
+
: sectionPart?.id?.replace(/@/g, '::').replace(/::com/g, 'com');
|
|
465
|
+
fillActions(importParameters, toolBarActions.properties, configPart[sectionPart.id][common_1.PropertyName.table]['toolBar'], configParameters, types_1.ActionTypeV2.OPToolBar, facetId);
|
|
466
|
+
}
|
|
467
|
+
if (Object.keys(configPart[sectionPart.id][common_1.PropertyName.table]['toolBar']).length === 0) {
|
|
468
|
+
delete configPart[sectionPart.id][common_1.PropertyName.table]['toolBar'];
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
/**
|
|
473
|
+
* Fills custom columns in a V2 object page config JSON
|
|
474
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
475
|
+
* @param {string} escapedSectionId - escaped version of the section ID
|
|
476
|
+
* @param {string} sectionTitle - title of current section, if available
|
|
477
|
+
* @param {object} configPart - the given part of the object page config
|
|
478
|
+
* @param {SapUiAppPageV2} v2Page - v2 page from manifest.
|
|
479
|
+
*/
|
|
480
|
+
function fillCustomColumnsInConfig(importParameters, escapedSectionId, configPart, v2Page) {
|
|
481
|
+
const customColumnSchemaProp = importParameters.jsonSchema.definitions[escapedSectionId].properties.custom;
|
|
482
|
+
const customColumnTarget = customColumnSchemaProp
|
|
483
|
+
? common_1.getTargetFromCustomColumnRef(customColumnSchemaProp.$ref)
|
|
484
|
+
: undefined;
|
|
485
|
+
if (customColumnTarget) {
|
|
486
|
+
const objectPageSectionData = {
|
|
487
|
+
key: escapedSectionId.replace('@', ''),
|
|
488
|
+
target: customColumnTarget
|
|
489
|
+
};
|
|
490
|
+
common_2.addFragments(configPart[escapedSectionId], importParameters.manifest, v2Page, ux_specification_types_1.PageType.ObjectPage, importParameters.fragments, objectPageSectionData);
|
|
491
|
+
}
|
|
492
|
+
}
|
|
493
|
+
/**
|
|
494
|
+
* Fills the sections and subsections of the object page config (recursive function)
|
|
495
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
496
|
+
* @param {sectionPartProperties} sectionPart - current properties' list of chart section
|
|
497
|
+
* @param {Settings} manifestSettings - object page settings section of the manifest
|
|
498
|
+
* @param {object} configPart - the given part of the object page config
|
|
499
|
+
* @param {ObjectPageV2ConfigParameters} configParameters - container for factory, pageKeys, flexChanges, v2Page, ObjectPageConfig
|
|
500
|
+
*/
|
|
501
|
+
function fillChartSection(importParameters, sectionPart, manifestSettings, configPart, configParameters) {
|
|
502
|
+
const manifestKey = sectionPart.id.replace('@com.sap', 'com.sap');
|
|
503
|
+
const manifestSection = manifestSettings && manifestSettings.sections && manifestSettings.sections[manifestKey];
|
|
504
|
+
configPart[sectionPart.id] = configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, sectionPart.type, {
|
|
505
|
+
chart: {}
|
|
506
|
+
});
|
|
507
|
+
configPart[sectionPart.id][common_1.PropertyName.chart] = configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, 'ObjectPageChart');
|
|
508
|
+
if (manifestSection || configParameters.flexChanges) {
|
|
509
|
+
transferSettingsAndFlexChanges(importParameters, configPart[sectionPart.id], sectionPart.schema, configParameters, { title: sectionPart.title });
|
|
510
|
+
transferSettingsAndFlexChanges(importParameters, configPart[sectionPart.id][common_1.PropertyName.chart], importParameters.jsonSchema.definitions[common_1.DefinitionName.ObjectPageChart], configParameters, sectionPart);
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
/**
|
|
514
|
+
* Fills the form section of the object page config
|
|
515
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
516
|
+
* @param {sectionPartProperties} sectionPart - current properties' list of form section
|
|
517
|
+
* @param {object} configPart - the given part of the object page config
|
|
518
|
+
* @param {ObjectPageV2ConfigParameters} configParameters - container for factory, pageKeys, flexChanges, v2Page, ObjectPageConfig
|
|
519
|
+
*/
|
|
520
|
+
function fillFormSection(importParameters, sectionPart, configPart, configParameters) {
|
|
521
|
+
const formId = sectionPart.schema['properties']['form']['$ref'].split('SectionForm')[1];
|
|
522
|
+
configPart[sectionPart.id] = configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, sectionPart.type, {
|
|
523
|
+
form: {}
|
|
524
|
+
});
|
|
525
|
+
if (configParameters.flexChanges) {
|
|
526
|
+
transferSettingsAndFlexChanges(importParameters, configPart[sectionPart.id], sectionPart.schema, configParameters, { title: sectionPart.title });
|
|
527
|
+
}
|
|
528
|
+
const formActions = importParameters.jsonSchema.definitions[`SectionActions${formId}`];
|
|
529
|
+
const facetId = sectionPart?.title
|
|
530
|
+
? sectionPart.title.replace(/@/g, '::').replace(/::com/g, 'com')
|
|
531
|
+
: sectionPart?.id?.replace(/@/g, '::').replace(/::com/g, 'com');
|
|
532
|
+
if (formActions?.properties) {
|
|
533
|
+
fillActions(importParameters, formActions.properties, configPart[sectionPart.id]['form'], configParameters, types_1.ActionTypeV2.Form, facetId);
|
|
534
|
+
}
|
|
535
|
+
const formFields = importParameters.jsonSchema.definitions[`SectionFields${formId}`];
|
|
536
|
+
if (formFields.properties) {
|
|
537
|
+
fillFields(importParameters, sectionPart, formFields.properties, configPart, configParameters);
|
|
538
|
+
}
|
|
539
|
+
if (Object.keys(configPart[sectionPart.id]['form']).length === 0) {
|
|
540
|
+
delete configPart[sectionPart.id]['form'];
|
|
541
|
+
}
|
|
542
|
+
if (Object.keys(configPart[sectionPart.id]).length === 0) {
|
|
543
|
+
delete configPart[sectionPart.id];
|
|
544
|
+
}
|
|
545
|
+
}
|
|
546
|
+
/**
|
|
547
|
+
* Fills the subsection of the object page config
|
|
548
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
549
|
+
* @param {sectionPartProperties} sectionPart - current properties' list of subsection
|
|
550
|
+
* @param {Settings} manifestSettings - object page settings section of the manifest
|
|
551
|
+
* @param {object} configPart - the given part of the object page config
|
|
552
|
+
* @param {ObjectPageV2ConfigParameters} configParameters - container for factory, pageKeys, flexChanges, v2Page, ObjectPageConfig
|
|
553
|
+
*/
|
|
554
|
+
function fillSubSection(importParameters, sectionPart, manifestSettings, configPart, configParameters) {
|
|
555
|
+
configPart[sectionPart.id] = configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, sectionPart.type, {
|
|
556
|
+
subsections: {}
|
|
557
|
+
});
|
|
558
|
+
if (configParameters.flexChanges) {
|
|
559
|
+
transferSettingsAndFlexChanges(importParameters, configPart[sectionPart.id], sectionPart.schema, configParameters, sectionPart);
|
|
560
|
+
}
|
|
561
|
+
let currentSchemaSection;
|
|
562
|
+
const schemaProperties = sectionPart.schema.properties;
|
|
563
|
+
if (schemaProperties?.subsections?.properties) {
|
|
564
|
+
currentSchemaSection = schemaProperties.subsections.properties;
|
|
565
|
+
}
|
|
566
|
+
else {
|
|
567
|
+
currentSchemaSection = schemaProperties;
|
|
568
|
+
}
|
|
569
|
+
// eslint-disable-next-line @typescript-eslint/no-use-before-define
|
|
570
|
+
fillSectionsInConfig(importParameters, currentSchemaSection, manifestSettings, configPart[sectionPart.id]['subsections'], configParameters);
|
|
571
|
+
if (Object.keys(configPart[sectionPart.id]['subsections']).length < 1) {
|
|
572
|
+
delete configPart[sectionPart.id]['subsections'];
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
/**
|
|
576
|
+
* Fills the sections and subsections of the object page config (recursive function)
|
|
577
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
578
|
+
* @param {object} sectionProperties - current properties' list (of sections or subsections)
|
|
579
|
+
* @param {Settings} manifestSettings - object page settings section of the manifest
|
|
580
|
+
* @param {object} configPart - the given part of the object page config
|
|
581
|
+
* @param {ObjectPageV2ConfigParameters} configParameters - container for factory, pageKeys, flexChanges, v2Page, ObjectPageConfig.
|
|
582
|
+
*/
|
|
583
|
+
function fillSectionsInConfig(importParameters, sectionProperties, manifestSettings, configPart, configParameters) {
|
|
584
|
+
const appSchemaDefinitions = importParameters.jsonSchema.definitions;
|
|
585
|
+
for (const sectionId in sectionProperties) {
|
|
586
|
+
const escapedSectionId = sectionId.replace(/\/@/g, '::');
|
|
587
|
+
const sectionPart = {
|
|
588
|
+
id: escapedSectionId,
|
|
589
|
+
type: getSectionType(sectionProperties[sectionId]),
|
|
590
|
+
schema: sectionProperties[sectionId],
|
|
591
|
+
title: common_1.getSectionTitle(sectionProperties[sectionId], importParameters.jsonSchema)
|
|
592
|
+
};
|
|
593
|
+
if (sectionPart.schema['$ref'] && sectionPart.type) {
|
|
594
|
+
switch (sectionPart.type) {
|
|
595
|
+
case types_1.SectionTypeV2.SectionTable:
|
|
596
|
+
case types_1.SectionTypeV2.SubSectionTable: {
|
|
597
|
+
sectionPart.schema = appSchemaDefinitions[`${sectionPart.type}<${sectionId}>`];
|
|
598
|
+
fillTableInConfig(importParameters, sectionPart, manifestSettings, configPart, configParameters);
|
|
599
|
+
// Custom column ref
|
|
600
|
+
fillCustomColumnsInConfig(importParameters, escapedSectionId, configPart, configParameters.v2Page);
|
|
601
|
+
break;
|
|
602
|
+
}
|
|
603
|
+
case types_1.SectionTypeV2.SectionChart:
|
|
604
|
+
case types_1.SectionTypeV2.SubSectionChart: {
|
|
605
|
+
// Section without subsections
|
|
606
|
+
sectionPart.schema = appSchemaDefinitions[`${sectionPart.type}<${sectionId}>`];
|
|
607
|
+
fillChartSection(importParameters, sectionPart, manifestSettings, configPart, configParameters);
|
|
608
|
+
break;
|
|
609
|
+
}
|
|
610
|
+
case types_1.SectionTypeV2.SectionForm:
|
|
611
|
+
case types_1.SectionTypeV2.SubSectionForm: {
|
|
612
|
+
sectionPart.schema = appSchemaDefinitions[`${sectionPart.type}<${sectionId}>`];
|
|
613
|
+
fillFormSection(importParameters, sectionPart, configPart, configParameters);
|
|
614
|
+
break;
|
|
615
|
+
}
|
|
616
|
+
case types_1.SectionTypeV2.Section:
|
|
617
|
+
case types_1.SectionTypeV2.SectionAddress:
|
|
618
|
+
case types_1.SectionTypeV2.SubSectionAddress:
|
|
619
|
+
case types_1.SectionTypeV2.SectionContact:
|
|
620
|
+
case types_1.SectionTypeV2.SubSectionContact:
|
|
621
|
+
case types_1.SectionTypeV2.SubSection: {
|
|
622
|
+
// Section with subsections
|
|
623
|
+
sectionPart.schema = appSchemaDefinitions[`${sectionPart.type}<${sectionId}>`];
|
|
624
|
+
fillSubSection(importParameters, sectionPart, manifestSettings, configPart, configParameters);
|
|
625
|
+
break;
|
|
626
|
+
}
|
|
627
|
+
}
|
|
628
|
+
}
|
|
629
|
+
else if (sectionPart.schema.properties?.['subsections']) {
|
|
630
|
+
sectionPart.schema = appSchemaDefinitions[`${sectionPart.type}<${sectionId}>`];
|
|
631
|
+
fillSubSection(importParameters, sectionPart, manifestSettings, configPart, configParameters);
|
|
632
|
+
}
|
|
633
|
+
}
|
|
634
|
+
}
|
|
635
|
+
/**
|
|
636
|
+
* Fill properties of object page confg based on manifest settings
|
|
637
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
638
|
+
* @param pageKeys - list of page keys (comprises the one entry describing the given page)
|
|
639
|
+
* @param flexChangesForTransfer - list of flex changes (pre-processed by prepareFlexChanges)
|
|
640
|
+
* @param v2Page - page definition in manifest.json
|
|
641
|
+
* @param {MetadataInstanceInterface} factory - factory, for generating the access to reflect-metadata
|
|
642
|
+
* @returns {ObjectPageConfig} - the object page configuration (JSON)
|
|
643
|
+
*/
|
|
644
|
+
function fillConfig(importParameters, configParameters) {
|
|
645
|
+
const objectPageConfig = configParameters.factory.createPageInstance(ux_specification_types_1.PageType.ObjectPage);
|
|
646
|
+
const manifestSettings = configParameters.v2Page.component.settings;
|
|
647
|
+
// Transfer page information
|
|
648
|
+
transferSettingsAndFlexChanges(importParameters, objectPageConfig, importParameters.jsonSchema['properties'], configParameters);
|
|
649
|
+
// Transfer header information
|
|
650
|
+
objectPageConfig.header = configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, common_1.DefinitionName.ObjectPageHeader);
|
|
651
|
+
const definitions = importParameters.jsonSchema.definitions;
|
|
652
|
+
const schemaDefinition = definitions[common_1.DefinitionName.ObjectPageHeader]
|
|
653
|
+
? definitions[common_1.DefinitionName.ObjectPageHeader]
|
|
654
|
+
: definitions['ObjectPageHeader<GenericActions>'];
|
|
655
|
+
transferSettingsAndFlexChanges(importParameters, objectPageConfig.header, schemaDefinition, configParameters);
|
|
656
|
+
const headerAction = definitions[common_1.DefinitionName.HeaderActions];
|
|
657
|
+
if (headerAction) {
|
|
658
|
+
fillActions(importParameters, headerAction.properties, objectPageConfig.header, configParameters, types_1.ActionTypeV2.Header);
|
|
659
|
+
}
|
|
660
|
+
objectPageConfig.footer = {};
|
|
661
|
+
const footerAction = definitions[common_1.DefinitionName.FooterActions];
|
|
662
|
+
if (footerAction) {
|
|
663
|
+
fillActions(importParameters, footerAction.properties, objectPageConfig.footer, configParameters, types_1.ActionTypeV2.OPFooter);
|
|
664
|
+
}
|
|
665
|
+
// Transfer Layout information
|
|
666
|
+
objectPageConfig.layout = configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, 'ObjectPageLayout');
|
|
667
|
+
transferSettingsAndFlexChanges(importParameters, objectPageConfig.layout, definitions[common_1.DefinitionName.ObjectPageLayout], configParameters);
|
|
668
|
+
if (Object.keys(objectPageConfig.layout).length === 0) {
|
|
669
|
+
delete objectPageConfig.layout;
|
|
670
|
+
}
|
|
671
|
+
// Fill sections and subsections
|
|
672
|
+
objectPageConfig.sections = {};
|
|
673
|
+
const sections = definitions[common_1.DefinitionName.Sections];
|
|
674
|
+
if (sections) {
|
|
675
|
+
fillSectionsInConfig(importParameters, sections.properties, manifestSettings, objectPageConfig.sections, configParameters);
|
|
676
|
+
}
|
|
677
|
+
// Find custom sections
|
|
678
|
+
const customSections = utils_1.findCustomSectionExtensions(importParameters.manifest, importParameters.entitySet);
|
|
679
|
+
if (Object.keys(customSections).length > 0) {
|
|
680
|
+
objectPageConfig.sections.custom = [];
|
|
681
|
+
for (const sectionId in customSections) {
|
|
682
|
+
const customSection = 'fragmentName' in customSections[sectionId]
|
|
683
|
+
? configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, 'ObjectPageCustomSectionFragment')
|
|
684
|
+
: configParameters.factory.createInstance(ux_specification_types_1.PageType.ObjectPage, 'ObjectPageCustomSectionView');
|
|
685
|
+
const customSectionDefinition = definitions['fragmentName' in customSections[sectionId]
|
|
686
|
+
? 'ObjectPageCustomSectionFragment'
|
|
687
|
+
: 'ObjectPageCustomSectionView'];
|
|
688
|
+
transferSettingsAndFlexChanges(importParameters, customSection, customSectionDefinition, configParameters, { id: sectionId });
|
|
689
|
+
objectPageConfig.sections.custom.push(customSection);
|
|
690
|
+
}
|
|
691
|
+
}
|
|
692
|
+
return objectPageConfig;
|
|
693
|
+
}
|
|
694
|
+
/**
|
|
695
|
+
* Creates the configuration (file content) for a V2 object page
|
|
696
|
+
* @param {ImportObjectPageV2Parameters} importParameters - object comprising all input data
|
|
697
|
+
*
|
|
698
|
+
* @returns {ObjectPageConfig} - the object page configuration (JSON)
|
|
699
|
+
*/
|
|
700
|
+
function createObjectPageConfigV2(importParameters) {
|
|
701
|
+
// Initialize i18next
|
|
702
|
+
i18n_1.initI18n();
|
|
703
|
+
if (!importParameters.manifest[ux_specification_types_1.ManifestSection.generic]) {
|
|
704
|
+
extensionLogger_1.log(importParameters.logger, {
|
|
705
|
+
severity: "error" /* Error */,
|
|
706
|
+
message: i18next_1.default.t('NOFE'),
|
|
707
|
+
location: {
|
|
708
|
+
path: common_1.MANIFESTPATH,
|
|
709
|
+
range: [ux_specification_types_1.ManifestSection.generic]
|
|
710
|
+
}
|
|
711
|
+
});
|
|
712
|
+
return;
|
|
713
|
+
}
|
|
714
|
+
const pageKeys = [];
|
|
715
|
+
const v2Pages = importParameters.manifest[ux_specification_types_1.ManifestSection.generic].pages;
|
|
716
|
+
if (!v2Pages) {
|
|
717
|
+
extensionLogger_1.log(importParameters.logger, {
|
|
718
|
+
severity: "error" /* Error */,
|
|
719
|
+
message: i18next_1.default.t('NOPAGES', { appId: importParameters.manifest['sap.app']['id'] }),
|
|
720
|
+
location: {
|
|
721
|
+
path: common_1.MANIFESTPATH,
|
|
722
|
+
range: [ux_specification_types_1.ManifestSection.generic]
|
|
723
|
+
}
|
|
724
|
+
});
|
|
725
|
+
return;
|
|
726
|
+
}
|
|
727
|
+
const entitySet = importParameters.entitySet;
|
|
728
|
+
const v2Page = utils_1.findObjectPageV2(v2Pages, importParameters.entitySet, pageKeys);
|
|
729
|
+
if (!v2Page) {
|
|
730
|
+
extensionLogger_1.log(importParameters.logger, {
|
|
731
|
+
severity: "error" /* Error */,
|
|
732
|
+
message: i18next_1.default.t('NOENTITYSET', { entitySet }),
|
|
733
|
+
location: {
|
|
734
|
+
path: common_1.MANIFESTPATH,
|
|
735
|
+
range: [ux_specification_types_1.ManifestSection.generic]
|
|
736
|
+
}
|
|
737
|
+
});
|
|
738
|
+
return;
|
|
739
|
+
}
|
|
740
|
+
const flexChangesForTransfer = prepareFlexChanges(importParameters.flex, entitySet);
|
|
741
|
+
const factory = new factory_1.MetadataInstanceFactoryV2();
|
|
742
|
+
//Fill config.json with manifest settings and flex changes
|
|
743
|
+
return fillConfig(importParameters, { pageKeys, flexChanges: flexChangesForTransfer, v2Page, factory });
|
|
744
|
+
}
|
|
745
|
+
exports.createObjectPageConfigV2 = createObjectPageConfigV2;
|
|
746
|
+
//# sourceMappingURL=objectPage.js.map
|