@sap/ux-specification 1.96.5 → 1.96.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/CHANGELOG.md +80 -12
  2. package/dist/documentation/v2/v2-AnalyticalListPage.html +1 -1
  3. package/dist/documentation/v2/v2-ApplicationV2.html +1 -1
  4. package/dist/documentation/v2/v2-ListReport.html +1 -1
  5. package/dist/documentation/v2/v2-ObjectPage.html +1 -1
  6. package/dist/documentation/v2/v2-OverviewPage.html +1 -1
  7. package/dist/documentation/v4/v4-ApplicationV4.html +1 -1
  8. package/dist/documentation/v4/v4-ListReport.html +1 -1
  9. package/dist/documentation/v4/v4-ObjectPage.html +1 -1
  10. package/dist/index-min.js +1 -1
  11. package/dist/schemas/v2/ApplicationV2.json +14 -14
  12. package/dist/schemas/v4/ApplicationV4.json +9 -5
  13. package/dist/schemas/v4/ListReportConfig.json +619 -209
  14. package/dist/schemas/v4/ObjectPageConfig.json +6 -38
  15. package/dist/specification/v2/index-min.js +1 -1
  16. package/dist/specification/v4/index-min.js +1 -1
  17. package/dist/src/api.d.ts +3 -3
  18. package/dist/src/apiTypes.d.ts +17 -20
  19. package/dist/src/extensionLogger.d.ts +1 -1
  20. package/dist/src/project.d.ts +1 -1
  21. package/dist/src/specification/common/Application.d.ts +24 -4
  22. package/dist/src/specification/common/page.d.ts +1 -1
  23. package/dist/src/specification/common/webapp/manifest/Manifest.d.ts +6 -6
  24. package/dist/src/specification/common/webapp/manifest/sapUi5.d.ts +1 -1
  25. package/dist/src/specification/schemaAccess.d.ts +1 -1
  26. package/dist/src/specification/v2/ApplicationV2.d.ts +3 -17
  27. package/dist/src/specification/v2/controls/Facets.d.ts +1 -1
  28. package/dist/src/specification/v2/controls/Footer.d.ts +2 -2
  29. package/dist/src/specification/v2/controls/ObjectPageForm.d.ts +1 -1
  30. package/dist/src/specification/v2/controls/ObjectPageHeader.d.ts +1 -1
  31. package/dist/src/specification/v2/controls/ObjectPageSection.d.ts +2 -2
  32. package/dist/src/specification/v2/controls/ObjectPageTable.d.ts +2 -2
  33. package/dist/src/specification/v2/controls/ObjectPageToolBar.d.ts +1 -1
  34. package/dist/src/specification/v2/controls/Table.d.ts +3 -3
  35. package/dist/src/specification/v2/controls/ToolBar.d.ts +1 -1
  36. package/dist/src/specification/v2/page.d.ts +1 -1
  37. package/dist/src/specification/v2/pages/AnalyticalListPageConfig.d.ts +4 -4
  38. package/dist/src/specification/v2/pages/ListReportConfig.d.ts +2 -2
  39. package/dist/src/specification/v2/pages/ObjectPageConfig.d.ts +3 -3
  40. package/dist/src/specification/v2/pages/OverviewPageConfig.d.ts +3 -3
  41. package/dist/src/specification/v2/webapp/manifest/sapUi5.d.ts +2 -2
  42. package/dist/src/specification/v2/webapp/manifest/sapUiPageV2.d.ts +2 -2
  43. package/dist/src/specification/v4/ApplicationV4.d.ts +4 -14
  44. package/dist/src/specification/v4/controls/ObjectPageHeader.d.ts +1 -1
  45. package/dist/src/specification/v4/controls/ObjectPageHeaderSection.d.ts +2 -14
  46. package/dist/src/specification/v4/controls/ObjectPageSection.d.ts +2 -2
  47. package/dist/src/specification/v4/controls/ObjectPageTable.d.ts +3 -3
  48. package/dist/src/specification/v4/controls/ObjectPageToolBar.d.ts +1 -1
  49. package/dist/src/specification/v4/controls/Table.d.ts +166 -25
  50. package/dist/src/specification/v4/controls/ToolBar.d.ts +26 -1
  51. package/dist/src/specification/v4/page.d.ts +2 -2
  52. package/dist/src/specification/v4/pages/ListReportConfig.d.ts +22 -3
  53. package/dist/src/specification/v4/pages/ObjectPageConfig.d.ts +2 -2
  54. package/dist/src/specification/v4/pages/index.d.ts +0 -1
  55. package/dist/src/specification/v4/webapp/manifest/ManifestSettings.d.ts +77 -0
  56. package/dist/src/specification/v4/webapp/manifest/sapUi5.d.ts +12 -3
  57. package/dist/src/specification/v4/webapp/manifest/sapUiPageV4.d.ts +21 -1
  58. package/dist/src/sync/common/appProvider.d.ts +6 -5
  59. package/dist/src/sync/common/decoration/control.d.ts +1 -1
  60. package/dist/src/sync/common/decoration/decorators.d.ts +1 -1
  61. package/dist/src/sync/common/decoration/factory.d.ts +3 -3
  62. package/dist/src/sync/common/decoration/flex.d.ts +3 -3
  63. package/dist/src/sync/common/flexUtils.d.ts +4 -4
  64. package/dist/src/sync/common/generate/objectPage.d.ts +9 -7
  65. package/dist/src/sync/common/generate/utils.d.ts +24 -16
  66. package/dist/src/sync/common/import/utils.d.ts +4 -3
  67. package/dist/src/sync/common/importProject.d.ts +4 -4
  68. package/dist/src/sync/common/types.d.ts +60 -12
  69. package/dist/src/sync/common/utils.d.ts +18 -8
  70. package/dist/src/sync/i18n.d.ts +1 -1
  71. package/dist/src/sync/v2/application.d.ts +2 -2
  72. package/dist/src/sync/v2/export/controls/Action.d.ts +1 -1
  73. package/dist/src/sync/v2/export/controls/AnalyticalListPageChart.d.ts +1 -1
  74. package/dist/src/sync/v2/export/controls/AnalyticalListPageKPI.d.ts +1 -1
  75. package/dist/src/sync/v2/export/controls/Card.d.ts +1 -1
  76. package/dist/src/sync/v2/export/controls/Field.d.ts +1 -1
  77. package/dist/src/sync/v2/export/controls/FilterBar.d.ts +2 -1
  78. package/dist/src/sync/v2/export/controls/FormAction.d.ts +1 -1
  79. package/dist/src/sync/v2/export/controls/Fragment.d.ts +5 -11
  80. package/dist/src/sync/v2/export/controls/ObjectPageChart.d.ts +1 -1
  81. package/dist/src/sync/v2/export/controls/ObjectPageCustomSection.d.ts +3 -3
  82. package/dist/src/sync/v2/export/controls/ObjectPageFooterAction.d.ts +1 -1
  83. package/dist/src/sync/v2/export/controls/ObjectPageHeader.d.ts +1 -1
  84. package/dist/src/sync/v2/export/controls/ObjectPageHeaderAction.d.ts +1 -1
  85. package/dist/src/sync/v2/export/controls/ObjectPageLayout.d.ts +1 -1
  86. package/dist/src/sync/v2/export/controls/ObjectPageSectionsV2.d.ts +6 -6
  87. package/dist/src/sync/v2/export/controls/ObjectPageTable.d.ts +3 -3
  88. package/dist/src/sync/v2/export/controls/ObjectPageToolBarAction.d.ts +1 -1
  89. package/dist/src/sync/v2/export/controls/Table.d.ts +3 -2
  90. package/dist/src/sync/v2/export/controls/TableColumn.d.ts +2 -2
  91. package/dist/src/sync/v2/export/controls/ToolBar.d.ts +1 -1
  92. package/dist/src/sync/v2/export/export.d.ts +3 -3
  93. package/dist/src/sync/v2/export/exportPage.d.ts +2 -2
  94. package/dist/src/sync/v2/export/factory.d.ts +2 -1
  95. package/dist/src/sync/v2/export/manifest.d.ts +17 -1
  96. package/dist/src/sync/v2/export/pages/AnalyticalListPage.d.ts +4 -4
  97. package/dist/src/sync/v2/export/pages/ListReport.d.ts +2 -2
  98. package/dist/src/sync/v2/export/pages/ObjectPage.d.ts +3 -3
  99. package/dist/src/sync/v2/export/pages/OverviewPage.d.ts +2 -2
  100. package/dist/src/sync/v2/export/view-controller-generator.d.ts +2 -2
  101. package/dist/src/sync/v2/generate/analyticalListReport.d.ts +1 -1
  102. package/dist/src/sync/v2/generate/generate.d.ts +2 -2
  103. package/dist/src/sync/v2/generate/listReport.d.ts +7 -4
  104. package/dist/src/sync/v2/generate/objectPage.d.ts +1 -1
  105. package/dist/src/sync/v2/generate/overviewPage.d.ts +1 -1
  106. package/dist/src/sync/v2/generate/utils.d.ts +5 -5
  107. package/dist/src/sync/v2/import/app/appProvider.d.ts +4 -4
  108. package/dist/src/sync/v2/import/app/ovpProvider.d.ts +3 -3
  109. package/dist/src/sync/v2/import/common/index.d.ts +6 -5
  110. package/dist/src/sync/v2/import/controls/table.d.ts +1 -1
  111. package/dist/src/sync/v2/import/pages/analyticalListPage.d.ts +2 -2
  112. package/dist/src/sync/v2/import/pages/listReport.d.ts +2 -2
  113. package/dist/src/sync/v2/import/pages/objectPage.d.ts +1 -1
  114. package/dist/src/sync/v2/import/pages/overviewPage.d.ts +2 -2
  115. package/dist/src/sync/v2/import/utils.d.ts +3 -2
  116. package/dist/src/sync/v2/types.d.ts +7 -7
  117. package/dist/src/sync/v4/application.d.ts +9 -5
  118. package/dist/src/sync/v4/export/controls/FilterBar.d.ts +1 -1
  119. package/dist/src/sync/v4/export/controls/ObjectPageCustomSection.d.ts +2 -1
  120. package/dist/src/sync/v4/export/controls/ObjectPageHeader.d.ts +1 -1
  121. package/dist/src/sync/v4/export/controls/ObjectPageHeaderSection.d.ts +1 -1
  122. package/dist/src/sync/v4/export/controls/ObjectPageLayout.d.ts +1 -1
  123. package/dist/src/sync/v4/export/controls/ObjectPageTable.d.ts +1 -1
  124. package/dist/src/sync/v4/export/controls/ObjectPageTableColumn.d.ts +1 -1
  125. package/dist/src/sync/v4/export/controls/ObjectPageToolBarAction.d.ts +1 -1
  126. package/dist/src/sync/v4/export/controls/Table.d.ts +126 -9
  127. package/dist/src/sync/v4/export/controls/TableColumn.d.ts +39 -1
  128. package/dist/src/sync/v4/export/controls/ToolBar.d.ts +1 -1
  129. package/dist/src/sync/v4/export/controls/ToolBarAction.d.ts +4 -1
  130. package/dist/src/sync/v4/export/export.d.ts +2 -2
  131. package/dist/src/sync/v4/export/exportCustomColumn.d.ts +2 -2
  132. package/dist/src/sync/v4/export/factory.d.ts +2 -1
  133. package/dist/src/sync/v4/export/flexibleColumnLayout.d.ts +1 -1
  134. package/dist/src/sync/v4/export/manifest.d.ts +2 -2
  135. package/dist/src/sync/v4/export/pages/ListReport.d.ts +9 -3
  136. package/dist/src/sync/v4/export/pages/ObjectPage.d.ts +2 -2
  137. package/dist/src/sync/v4/export/pages/index.d.ts +0 -1
  138. package/dist/src/sync/v4/export/types.d.ts +7 -5
  139. package/dist/src/sync/v4/export/utils.d.ts +1 -1
  140. package/dist/src/sync/v4/generate/generate.d.ts +5 -4
  141. package/dist/src/sync/v4/generate/listReport.d.ts +2 -4
  142. package/dist/src/sync/v4/generate/objectPage.d.ts +1 -1
  143. package/dist/src/sync/v4/import/app/appProvider.d.ts +6 -5
  144. package/dist/src/sync/v4/import/fragment.d.ts +2 -2
  145. package/dist/src/sync/v4/import/index.d.ts +0 -1
  146. package/dist/src/sync/v4/import/pages/listReport.d.ts +8 -7
  147. package/dist/src/sync/v4/import/pages/objectPage.d.ts +2 -2
  148. package/dist/src/sync/v4/import/utils.d.ts +2 -2
  149. package/dist/src/sync/v4/types.d.ts +2 -2
  150. package/dist/src/sync/v4/utils/utils.d.ts +22 -13
  151. package/dist/test/test-data/flexChange/v2/stta.prod.man/index.d.ts +1 -1
  152. package/dist/test/test-projects/index.d.ts +1 -1
  153. package/dist/test/test-utils/utils.d.ts +5 -4
  154. package/dist/test/unit/export/manifest.test.d.ts +1 -0
  155. package/package.json +13 -12
  156. package/dist/documentation/v4/v4-AnalyticalListPage.html +0 -49
  157. package/dist/schemas/v4/AnalyticalListPageConfig.json +0 -481
  158. package/dist/src/specification/v4/pages/AnalyticalListPageConfig.d.ts +0 -13
  159. package/dist/src/sync/v4/export/pages/AnalyticalListPage.d.ts +0 -8
  160. package/dist/src/sync/v4/import/pages/analyticalListPage.d.ts +0 -11
@@ -1,3 +1,2 @@
1
1
  export * from './ListReport';
2
2
  export * from './ObjectPage';
3
- export * from './AnalyticalListPage';
@@ -1,8 +1,9 @@
1
- import { ExtensionLogger } from '../../..';
2
- import { PageType } from '../../../specification/common';
3
- import { UI5Version } from '../../../v2';
4
- import { MetadataFactory } from '../../common/decoration/factory';
5
- import { ExportResults, FlexAdapter } from '../../common/types';
1
+ import type { ExtensionLogger } from '../../..';
2
+ import type { PageType } from '../../../specification/common';
3
+ import type { UI5Version } from '../../../v2';
4
+ import type { TemplateType } from '../../common';
5
+ import type { MetadataFactory } from '../../common/decoration/factory';
6
+ import type { ExportResults, FlexAdapter } from '../../common/types';
6
7
  export declare type ManifestPathSection = (path: string, targetAnnotationPath: string) => string;
7
8
  export interface ManifestConverter4Section {
8
9
  path: ManifestPathSection;
@@ -23,4 +24,5 @@ export declare type TransferParameterTypeV4 = {
23
24
  title: string;
24
25
  appRootPath?: string;
25
26
  logger?: ExtensionLogger;
27
+ templateType: TemplateType;
26
28
  };
@@ -1,4 +1,4 @@
1
- import { SapUi5V4 } from '../../../specification/v4';
1
+ import type { SapUi5V4 } from '../../../specification/v4';
2
2
  /**
3
3
  * Method updates passed dependency lib in passed manifest.
4
4
  * @param {SapUi5V4} manifest - Manifest "sap.ui5" object.
@@ -1,5 +1,6 @@
1
- import { FileData } from '../../common/types';
2
- import { ExtensionLogger } from '../../../apiTypes';
1
+ import type { FileData } from '../../common/types';
2
+ import { TemplateType } from '../../common/utils';
3
+ import type { ExtensionLogger } from '../../../apiTypes';
3
4
  /**
4
5
  * Generates the app specific schema of an object page out of the generic schema for the same page.
5
6
  * Generic types are replaced by information from the app specific annotations.
@@ -17,7 +18,7 @@ export declare function generateObjectPageInterfaceV4(genericSchema: object, ent
17
18
  /**
18
19
  * Generates the app specific schema of a list report out of the generic schema.
19
20
  * Generic types are replaced by information from the app specific annotations.
20
- *
21
+ * @param {TemplateType} templateType - the template type allows distinguishing LR and ALP
21
22
  * @param genericSchema - generic JSON schema of a list report
22
23
  * @param entitySetName - the base entity set of the given page
23
24
  * @param annotations - list of all annotation files (file content plus URI as identifier)
@@ -26,4 +27,4 @@ export declare function generateObjectPageInterfaceV4(genericSchema: object, ent
26
27
  *
27
28
  * @returns the app specific JSON schema
28
29
  */
29
- export declare function generateListReportInterfaceV4(genericSchema: object, entitySetName: string, annotations: FileData[], logger?: ExtensionLogger, manifest?: object): object;
30
+ export declare function generateListReportInterfaceV4(templateType: TemplateType, genericSchema: object, entitySetName: string, annotations: FileData[], logger?: ExtensionLogger, manifest?: object): object;
@@ -1,7 +1,5 @@
1
- import { GenerateAppSchemaParameters } from '../../../apiTypes';
2
- import { EntitySet } from '@sap-ux/annotation-converter';
3
- import { ConverterOutput, EntityType } from '@sap-ux/vocabularies-types';
4
- export declare function addEnumForVariantPaths(entityType: EntityType, appSchema: object, oDataServiceAVT: ConverterOutput): void;
1
+ import type { GenerateAppSchemaParameters } from '../../../apiTypes';
2
+ import type { EntitySet } from '@sap-ux/annotation-converter';
5
3
  /**
6
4
  * Generates an app specific schema for the FE V4 Listreport from the generic schema.
7
5
  * Generic types are replaced by information from the app specific annotations.
@@ -1,4 +1,4 @@
1
- import { GenerateAppSchemaParameters } from '../../../v4';
1
+ import type { GenerateAppSchemaParameters } from '../../../v4';
2
2
  /**
3
3
  * Generates an app specific schema out of the generic schema.
4
4
  * Generic types are replaced by information from the app specific annotations.
@@ -1,7 +1,8 @@
1
1
  import { AppProvider } from '../../../common/appProvider';
2
- import { Files } from '../../../common';
3
- import { SapUiAppPagesV4, Manifest, Pages } from '../../../../specification/v4';
4
- import { ExtensionLogger } from '../../../..';
2
+ import type { Files } from '../../../common';
3
+ import { TemplateType } from '../../../common';
4
+ import type { SapUiAppPagesV4, Manifest, Pages } from '../../../../specification/v4';
5
+ import type { ExtensionLogger } from '../../../..';
5
6
  export declare enum Constants {
6
7
  OptionalQuery = ":?query:",
7
8
  Component = "sap/fe/AppComponent",
@@ -12,8 +13,8 @@ export declare enum Constants {
12
13
  * @param manifest - manifest.json of the app
13
14
  * @param schemas - list of JSON schemas of all pages
14
15
  */
15
- export declare function getPagesAndConfigs(manifest: Manifest, schemas: Files, logger?: ExtensionLogger): Pages;
16
+ export declare function getPagesAndConfigs(manifest: Manifest, schemas: Files, templateType: TemplateType, logger?: ExtensionLogger): Pages;
16
17
  export declare class V4AppProvider extends AppProvider {
17
- constructor(manifest: Manifest, schemas: Files, logger?: ExtensionLogger);
18
+ constructor(manifest: Manifest, schemas: Files, templateType: TemplateType, logger?: ExtensionLogger);
18
19
  }
19
20
  export declare function getPages(manifest: Manifest, targetName: string): SapUiAppPagesV4;
@@ -1,5 +1,5 @@
1
- import { FileData } from '../../common';
2
- import { Manifest } from '../../../v4';
1
+ import type { FileData } from '../../common';
2
+ import type { Manifest } from '../../../v4';
3
3
  export interface FragmentData {
4
4
  manifestPart: object;
5
5
  fragmentFileContent: string;
@@ -1,3 +1,2 @@
1
1
  export * from './pages/listReport';
2
2
  export * from './pages/objectPage';
3
- export * from './pages/analyticalListPage';
@@ -1,20 +1,21 @@
1
- import { PageTypeV4 } from '../../../../specification/common';
2
- import { ListReportConfig as ListReportConfigV4, SapUiAppPageV4, AnalyticalListPageConfig as AnalyticalListPageConfigV4 } from '../../../../specification/v4';
3
- import { ImportListReportV4Parameters } from '../../../../apiTypes';
4
- import { MetadataInstanceInterface } from '../../../common/decoration/factory';
1
+ import { PageTypeV4, SchemaType } from '../../../../specification/common';
2
+ import type { ListReportConfig as ListReportConfigV4 } from '../../../../specification/v4';
3
+ import type { ImportListReportV4Parameters } from '../../../../apiTypes';
4
+ import type { MetadataInstanceInterface } from '../../../common/decoration/factory';
5
5
  /**
6
6
  * Adds manifest settings to the config.json of LR or ALP V4
7
7
  * @param {ImportListReportV4Parameters} importParameters - object comprising all input data
8
8
  * @param {ListReportConfig | AnalyticalListPageConfig} config - the configuration to be filled
9
9
  * @param {MetadataInstanceInterface} factory - factory, for generating the access to reflect-metadata
10
- * @param {SapUiAppPageV4} page - page in manifest
11
10
  * @param {PageTypeV4} pageType - page type
11
+ * @param {string} routingId - page key in manifest
12
+ * @param {SchemaType} schemaType - allows distinction of LR and ALP scenario
12
13
  */
13
- export declare function addSettings(importParameters: ImportListReportV4Parameters, config: ListReportConfigV4 | AnalyticalListPageConfigV4, factory: MetadataInstanceInterface, page: SapUiAppPageV4, pageType: PageTypeV4): void;
14
+ export declare function addSettings(importParameters: ImportListReportV4Parameters, config: ListReportConfigV4, factory: MetadataInstanceInterface, pageType: PageTypeV4, routingId: string, schemaType: SchemaType): void;
14
15
  /**
15
16
  * Creates the configuration file content for a list report V4
16
17
  * @param {ImportListReportV4Parameters} importParameters - object comprising all input data
17
18
  *
18
19
  * @returns {ListReportConfig} - the configuration (JSON) for the list report
19
20
  */
20
- export declare function createListReportConfig(importParameters: ImportListReportV4Parameters): ListReportConfigV4 | undefined;
21
+ export declare function createListReportConfig(importParameters: ImportListReportV4Parameters, schemaType: SchemaType): ListReportConfigV4 | undefined;
@@ -1,5 +1,5 @@
1
- import { ObjectPageConfig as ObjectPageConfigV4 } from '../../../../specification/v4/';
2
- import { ImportObjectPageV4Parameters } from '../../../../apiTypes';
1
+ import type { ObjectPageConfig as ObjectPageConfigV4 } from '../../../../specification/v4/';
2
+ import type { ImportObjectPageV4Parameters } from '../../../../apiTypes';
3
3
  /**
4
4
  * External API: Create configuration (file content) for a V4 object page
5
5
  * @param {ImportObjectPageV4Parameters} importParameters - object comprising all input data
@@ -1,5 +1,5 @@
1
- import { Manifest } from '../../../specification/common/webapp/manifest/Manifest';
2
- import { ExtensionLogger } from '../../..';
1
+ import type { Manifest } from '../../../specification/common/webapp/manifest/Manifest';
2
+ import type { ExtensionLogger } from '../../..';
3
3
  /**
4
4
  * Transfers settings from manifest to object page config
5
5
  * @param configPart - part of the configuration to be filled
@@ -1,4 +1,4 @@
1
- import * as v4controls from './export/controls';
2
- import * as v4pages from './export/pages';
1
+ import type * as v4controls from './export/controls';
2
+ import type * as v4pages from './export/pages';
3
3
  export declare type V4Controls = typeof v4controls;
4
4
  export declare type V4Pages = typeof v4pages;
@@ -1,7 +1,9 @@
1
- import { AnnotationTerm, ConverterOutput, EntityType, LineItem, DataFieldForActionAbstractTypes } from '@sap-ux/vocabularies-types';
2
- import { EntitySet } from '@sap-ux/annotation-converter';
3
- import { ExtensionLogger } from '../../..';
4
- import { DefinitionName, SapUiAppPageV4 } from '../../../v4';
1
+ import type { AnnotationTerm, ConverterOutput, EntityType, LineItem, DataFieldForActionAbstractTypes } from '@sap-ux/vocabularies-types';
2
+ import type { EntitySet } from '@sap-ux/annotation-converter';
3
+ import type { ExtensionLogger } from '../../..';
4
+ import type { GenerateAppSchemaParameters, SapUiAppPageV4 } from '../../../v4';
5
+ import { DefinitionName } from '../../../v4';
6
+ import type { Definition } from 'typescript-json-schema';
5
7
  /**
6
8
  * Common function for enhancing the LineItems definiton of app schema by custom columns
7
9
  * @param appSchema - app-specific JSON schema
@@ -13,7 +15,7 @@ import { DefinitionName, SapUiAppPageV4 } from '../../../v4';
13
15
  */
14
16
  export declare function addCustomColumnDefinition(appSchema: object, v4Page: SapUiAppPageV4, logger: ExtensionLogger, customColumnDefinitionName?: string, sectionId?: string, sectionIdInManfest?: string): void;
15
17
  /**
16
- * Processes a LineItem record of type DataFieldForCation during app schema generation
18
+ * Processes a LineItem record of type DataFieldForAction during app schema generation
17
19
  * @param appSchema - the app specific schema that shall get enhanced
18
20
  * @param entityType - the entity type as part of the AVT ConverterOutput
19
21
  * @param actions - actions definition in schema, parent object
@@ -21,20 +23,20 @@ export declare function addCustomColumnDefinition(appSchema: object, v4Page: Sap
21
23
  * @param lineItemRecord - actual record of the line item collection
22
24
  * @param recordIndex - record index in the collection
23
25
  */
24
- export declare function handleActionRecord(appSchema: object, entityType: EntityType, actions: object, lineItemPath: string, lineItemRecord: DataFieldForActionAbstractTypes, lineItemId: string, recordIndex: number): void;
26
+ export declare function handleActionRecord(appSchema: Definition, entityType: EntityType, actions: Definition, lineItemPath: string, lineItemRecord: DataFieldForActionAbstractTypes, lineItemId: string, recordIndex: number): void;
25
27
  /**
26
28
  * Adds the line item definition, columns and actions to the app schema (for the list report or an object page section comprising a table)
27
29
  * @param appSchema - the app specific schema that shall get enhanced
28
30
  * @param lineItemAnnotation - the UI.LineItem annotation, comprising all records
29
31
  * @param entityType - the entity type as part of the AVT ConverterOutput
30
32
  * @param {ConverterOutput} oDataServiceAVT - complete service information, as returned by Annotation Vocabularies Tool
31
- * @param columnDefinitionName - name of the column definition, i.e. TableColumn or ObjectPageTableColumn
32
33
  * @param actionDefinitionName - indicates the prefix for the definition, dpending on the page type
33
- * @param lineItemId - optional: in case of OP the paramter must be passed to distinguish the OP tables;
34
- * in case of LR or ALP no ID is passed, 'LineItems' is taken then.
35
- * @param customColumnRef - schema reference to custom column definition.
34
+ * @param lineItemId - in case of OP the paramter must be passed to distinguish the OP tables;
35
+ * in case of LR or ALP 'LineItems' is passed.
36
+ * @param columnDefinitionName - name of the column definition, i.e. TableColumn or ObjectPageTableColumn
37
+ * @param customColumnDefinitionName - name of the custom column definition
36
38
  */
37
- export declare function addLineItemsType(appSchema: object, lineItemAnnotation: AnnotationTerm<LineItem>, entityType: EntityType, oDataServiceAVT: ConverterOutput, columnDefinitionName?: string, customColumnDefinitionName?: string, lineItemId?: string): void;
39
+ export declare function addLineItemsType(appSchema: Definition, lineItemAnnotation: AnnotationTerm<LineItem>, entityType: EntityType, oDataServiceAVT: ConverterOutput, lineItemId: string, columnDefinitionName?: string, customColumnDefinitionName?: string): void;
38
40
  /**
39
41
  * Adds an enum or value help to position > anchor of custom column
40
42
  * @param appSchema - app specific JSON schema
@@ -42,13 +44,20 @@ export declare function addLineItemsType(appSchema: object, lineItemAnnotation:
42
44
  * @param v4Page - current page in manifest
43
45
  * @param positionName - ID of the definition of custom column position in schema
44
46
  */
45
- export declare function addFragmentEnumForAnchor(appSchema: object, lineItemId: string, v4Page: SapUiAppPageV4, positionName?: DefinitionName, sectionIdInManifest?: string): void;
47
+ export declare function addFragmentEnumForAnchor(appSchema: Definition, lineItemId: string, v4Page: SapUiAppPageV4, positionName?: DefinitionName, sectionIdInManifest?: string): void;
46
48
  /**
47
49
  * Find the relevant V4 page under the routing targets of manifest,json
48
50
  * @param pages - list of all pages in manifest
49
51
  * @param pageName - search criterion: page name
50
- * @param entitySet - search criterion: entty set
52
+ * @param entitySet - search criterion: entity set
51
53
  * @param logger - logger for messages
52
54
  * @returns the page definition in manifest (if found)
53
55
  */
54
56
  export declare function findPageV4(pages: SapUiAppPageV4[], pageName: string, entitySet: EntitySet, logger: ExtensionLogger): SapUiAppPageV4 | undefined;
57
+ /**
58
+ * Depending on the template type, strip down the app schema so that only the relevant views are part of it
59
+ * @param {Definition} appSchema - app specific JSON schema, to be adjusted
60
+ * @param {GenerateAppSchemaParameters} generateParameters - object comprising all input parameters
61
+ * @returns the right definition name for the table in the schema
62
+ */
63
+ export declare function alignSchemaWithTemplateType(appSchema: Definition, generateParameters: GenerateAppSchemaParameters): string;
@@ -1,4 +1,4 @@
1
- import { Manifest } from '../../../../../src';
1
+ import type { Manifest } from '../../../../../src';
2
2
  interface ChangeData {
3
3
  manifest: Manifest;
4
4
  changes: string[];
@@ -1,2 +1,2 @@
1
- import { Project } from '../../src/project';
1
+ import type { Project } from '../../src/project';
2
2
  export declare const getProjects: () => Promise<Project[]>;
@@ -1,7 +1,7 @@
1
- import { FileData } from '../../src';
2
- import { ExtensionLogger } from '../../src';
3
- import { Location } from '../../src/extensionLogger';
4
- import { ExportResults } from '../../src/sync/common';
1
+ import type { FileData } from '../../src';
2
+ import type { ExtensionLogger } from '../../src';
3
+ import type { Location } from '../../src/extensionLogger';
4
+ import type { ExportResults } from '../../src/sync/common';
5
5
  export declare class Logger implements ExtensionLogger {
6
6
  logInfo: string[];
7
7
  logWarning: string[];
@@ -22,6 +22,7 @@ export declare function getSDV4Annotations(): FileData[];
22
22
  export declare function getSTTAAnnotationsProdMan2(): FileData[];
23
23
  export declare function getExtensionsProdMan2(): FileData[];
24
24
  export declare function getSEPMRAAnnotations(): FileData[];
25
+ export declare function getExtensionsForS2pMmPurSrcgprojMaintains1(specificFiles?: string[]): FileData[];
25
26
  export declare function findFlexChangeBySelector(exportResult: ExportResults, selectorId: string, property: string): object;
26
27
  /**
27
28
  * Function to find out the flexChange from a list. Uses global variable exportResult
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sap/ux-specification",
3
- "version": "1.96.5",
3
+ "version": "1.96.10",
4
4
  "displayName": "SAP Fiori tools - Specification",
5
5
  "description": "SAP Fiori tools - Specification",
6
6
  "files": [
@@ -28,11 +28,12 @@
28
28
  "test": "jest && node ../../scripts/scov.js reports/test/unit/coverage/lcov.info",
29
29
  "test:ci": "jest --ci --forceExit --detectOpenHandles && node ../../scripts/scov.js reports/test/unit/coverage/lcov.info",
30
30
  "update-snapshots": "jest --updateSnapshot",
31
+ "build:snap": "yarn build:dev && yarn update-snapshots",
31
32
  "lint": "eslint . --ext .ts",
32
33
  "lint:summary": "eslint . --ext .ts -f summary",
33
- "lint:fix": "eslint . --report-unused-disable-directives --ext .ts --fix",
34
- "lint:report": "eslint . --report-unused-disable-directives --ext .ts -f multiple",
35
- "lint:report:jslint": "eslint . --report-unused-disable-directives --ext .ts -o reports/lint/eslint.jslint.xml -f jslint-xml",
34
+ "lint:fix": "eslint . --ext .ts --fix",
35
+ "lint:report": "eslint . --ext .ts -f multiple",
36
+ "lint:report:jslint": "eslint . --ext .ts -o reports/lint/eslint.jslint.xml -f jslint-xml",
36
37
  "docuV2": "ts-node ./scripts/extractDocu.ts --version=v2 format=excel",
37
38
  "docuV4": "ts-node ./scripts/extractDocu.ts --version=v4 format=excel",
38
39
  "iXiaSoftV2": "ts-node ./scripts/extractDocu.ts --version=v2 --format=iXiaSoft",
@@ -45,7 +46,7 @@
45
46
  "publisher": "SAPSE",
46
47
  "license": "SEE LICENSE IN LICENSE",
47
48
  "dependencies": {
48
- "@sap-ux/fe-fpm-writer": "0.4.0"
49
+ "@sap-ux/fe-fpm-writer": "0.5.0"
49
50
  },
50
51
  "devDependencies": {
51
52
  "@sap-ux/annotation-converter": "0.3.39",
@@ -57,28 +58,28 @@
57
58
  "@types/jquery": "3.5.6",
58
59
  "@types/mem-fs-editor": "7.0.1",
59
60
  "@types/sax": "1.2.1",
60
- "@typescript-eslint/eslint-plugin": "4.14.1",
61
- "@typescript-eslint/parser": "4.14.1",
61
+ "@typescript-eslint/eslint-plugin": "5.12.1",
62
+ "@typescript-eslint/parser": "5.12.1",
62
63
  "@ui5/flexibility-utils": "0.1.3",
63
64
  "ajv": "6.12.6",
64
- "copy-webpack-plugin": "9.1.0",
65
65
  "cpy-cli": "3.1.1",
66
66
  "d3": "7.1.1",
67
67
  "deepmerge": "4.2.2",
68
68
  "ejs": "3.1.6",
69
- "eslint": "7.18.0",
69
+ "eslint": "7.32.0",
70
70
  "eslint-formatter-multiple": "1.0.0",
71
- "eslint-plugin-prettier": "3.3.1",
71
+ "eslint-plugin-prettier": "3.4.1",
72
+ "eslint-config-prettier": "8.3.0",
72
73
  "excel4node": "1.7.2",
73
- "http-server": "13.0.1",
74
74
  "i18next": "20.3.1",
75
75
  "jest": "26.6.3",
76
+ "jest-file-snapshot": "0.5.0",
76
77
  "jest-sonar-reporter": "2.0.0",
77
78
  "jquery": "3.6.0",
78
79
  "lodash.unset": "4.5.2",
79
80
  "mem-fs-editor": "9.3.0",
80
81
  "path": "0.12.7",
81
- "prettier": "1.19.1",
82
+ "prettier": "2.5.1",
82
83
  "reflect-metadata": "0.1.13",
83
84
  "rimraf": "3.0.2",
84
85
  "sax": "1.2.4",
@@ -1,49 +0,0 @@
1
- <!DOCTYPE html>
2
- <head>
3
- <meta charset="utf-8" />
4
- <link href="../styleDocu.css" rel="stylesheet" />
5
- </head>
6
- <body>
7
- <div id="button-container">
8
- <input type="button" id="resetTree" value="Reset" /><input type="button" value="Expand" id="expandTree" />
9
- </div>
10
- <div id="search-container">
11
- <div id="search-input-container">
12
- <svg
13
- id="search-icon"
14
- width="14"
15
- height="14"
16
- viewBox="0 0 16 16"
17
- fill="none"
18
- xmlns="http://www.w3.org/2000/svg"
19
- >
20
- <g>
21
- <path
22
- fill-rule="evenodd"
23
- clip-rule="evenodd"
24
- d="M9.50249 10C7.02149 10 5.00249 7.981 5.00249 5.5C5.00249 3.019 7.02149 1 9.50249 1C11.9835 1 14.0025 3.019 14.0025 5.5C14.0025 7.981 11.9835 10 9.50249 10ZM9.50249 0C6.47049 0 4.00249 2.468 4.00249 5.5C4.00249 6.947 4.56849 8.261 5.48549 9.244L0.000488281 15.331L0.743488 16.001L6.23149 9.911C7.14749 10.592 8.27649 11 9.50249 11C12.5355 11 15.0025 8.532 15.0025 5.5C15.0025 2.468 12.5355 0 9.50249 0Z"
25
- fill="#C5C5C5"
26
- />
27
- </g>
28
- </svg>
29
- <input type="search" data-type="search" placeholder="Search" id="search-input" />
30
- </div>
31
- <ul
32
- id="search-result"
33
- data-role="listview"
34
- data-filter="true"
35
- data-filter-reveal="true"
36
- data-input="#search-input"
37
- data-inset="true"
38
- ></ul>
39
- </div>
40
- <svg id="tree-container"></svg>
41
- </body>
42
- <script>
43
- // placeholder for data
44
- var exports = {},
45
- floorPlanIcon = `<svg id="floorPlan-icon" width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
46
- <g><path fill-rule="evenodd" clip-rule="evenodd" fill="#C5C5C5"d="M9 13V14H6V13H9ZM5 13V14H2V13H5ZM13 13V14H10V13H13ZM9 11V12H6V11H9ZM5 11V12H2V11H5ZM13 11V12H10V11H13ZM5 9V10H2V9H5ZM9 9V10H6V9H9ZM13 9V10H10V9H13ZM3.986 1.998V6.024H1.965V1.998H3.986ZM6.99 4.01V6.01H4.99V4.01H6.99ZM10.008 3.019V6.01H8.008V3.019H10.008ZM13.005 1.998V6.011H11.005V1.998H13.005ZM1 14.988H14.988V7.995H1V14.988ZM1.001 6.994H14.989V1H1.001V6.994ZM1.00169 0C0.449309 0 0 0.448336 0 1.00075V14.9992C0 15.5517 0.449309 16 1.00169 16H14.9993C15.5517 16 16 15.5517 16 14.9992V1.00075C16 0.448336 15.5517 0 14.9993 0H1.00169Z"/></g></svg>`;
47
- var treeData = {"name":"AnalyticalListPage","description":"SAP Fiori elements v4<br>Specification Version: 1.96.5","type":"schema","children":[{"name":"table","children":[{"name":"initialLoad","children":[],"type":"Auto|Disabled|Enabled","artifact":"Manifest","description":"initialLoad defines whether or not the data in the table is automatically loaded.\n- Disabled - Data is never loaded when opening the app without an app state.\n- Enabled - Data is always loaded when opening the app.\n- Auto - Data is only loaded, if initial/preset filters are available (e.g. defined by \"SelectionVariant\" definition, URL parameters or user defaults)."},{"name":"views","children":[{"name":"paths","children":[{"name":"key","children":[],"type":"string"},{"name":"annotationPath","children":[],"type":"string"},{"name":"entitySet","children":[],"type":"string"}],"type":"object","artifact":"Manifest","description":"List of annotation paths referring to SelectionVariant annotations"},{"name":"showCounts","children":[],"type":"boolean","artifact":"Manifest","description":"You can show the counts of entries of each view. To do so, add the showCounts option and set it to true."}],"type":"object","artifact":"Manifest","description":"With the views property you can switch on the multiple view feature. Contrary to quickVariantSelection, each view will be rendered in a different instance of table). It links to SelectionVariant (filters) or SelectionPresentationVariant (filters and sorters) you must have added to your annotations beforehand."},{"name":"toolBar","children":[{"name":"actions","children":[{"name":"enableOnSelect","children":[],"type":"multi|single","artifact":"Manifest","description":"Enables single selection for a bound action"}]}],"type":"object","description":"Tool Bar"},{"name":"type","children":[],"type":"AnalyticalTable|GridTable|ResponsiveTable","artifact":"Manifest","description":"Use type to define the table type. Note: Grid tables, analytical tables, and tree tables cannot be rendered on smartphones. Instead, responsive tables always show on smartphones."},{"name":"creationMode","children":[{"name":"name","children":[],"type":"CreationRow|Inline|NewPage","artifact":"Manifest","description":" possible values are:\n- NewPage: The create action leads to a new page.\n- Inline: The create action leads to a new row at the table.\n- CreationRow: No create button will be rendered, an empty row is directly given.\nThe default is \"NewPage\"."},{"name":"createAtEnd","children":[],"type":"boolean","artifact":"Manifest","description":"In case of inline creation mode you can decide if the new row will be created at the end of the table, or direcly after the currently selected table. The default value is \"true\""}],"type":"object","artifact":"Manifest","description":"Defines the page behavior when a new record is created."},{"name":"personalization","children":[{"name":"column","children":[],"type":"boolean","artifact":"Manifest","description":"Defines whether the user can add and remove columns to a given table."},{"name":"sort","children":[],"type":"boolean","artifact":"Manifest","description":"Defines whether the user can sort a given table."},{"name":"filter","children":[],"type":"boolean","artifact":"Manifest","description":"Defines whether the user can filter data of a given table."}],"type":"object","artifact":"Manifest","description":"Defines the personalization mode, currently only effective if variant management on page is either set to Page or Control.\nBy default all table settings are enabled. You can change this for the different parts of the table by setting the properties \"Column\", \"Sort\" and \"Filter\" accordingly.\nOmitting a property is treated as false, this allows apps to avoid getting new features like grouping in upcoming releases."},{"name":"selectionMode","children":[],"type":"Auto|Multi|None|Single","artifact":"Manifest","description":"Applications can influence whether the table rows are selectable or not, and whether it allows for single selection or multiple selection. It can take the following values:\n- \"Auto\": This is the default value. In this mode, Fiori Elements first checks if there are any custom actions or IBN buttons in the table toolbar that require a context. If no such buttons are found, then no table selection is allowed in display mode. In edit mode too a selection is not allowed unless there is a Delete button in the table toolbar in which case multiple row selection will be allowed.\n- \"Multi\": This will allow end users to select multiple table records (in both display and edit mode)\n- \"Single\" This will allow end user to select only a single table record (in both display and edit mode)\n- \"None\": This will not allow the end user to select any table record in display mode. This will also be the case in edit mode unless the table has a delete button enabled, in which multiple selection is allowed in delete mode."},{"name":"selectAll","children":[],"type":"boolean","artifact":"Manifest","description":"The selectAll configuration overrides the selectionLimit and allows the user to select all the items. When set to true, the select all feature is enabled: a checkbox in the table header is displayed which selects all items when clicked."},{"name":"selectionLimit","children":[],"type":"number","artifact":"Manifest","description":"With the selectionLimit you can define how many items can be selected at a time,"},{"name":"enableExport","children":[],"type":"boolean","artifact":"Manifest","description":" otherwise it is disabled.\nTo disable the export in List Report or to enable it in Object Page, use the \"enableExport\" property and set it to false or true."},{"name":"quickVariantSelection","children":[{"name":"paths","children":[{"name":"annotationPath","children":[],"type":"string"}],"type":"object","artifact":"Manifest","description":"List of annotation paths referring to SelectionVariant annotations"},{"name":"hideTableTitle","children":[],"type":"boolean","artifact":"Manifest","description":"You can hide the table and display only the titles of the tabs. To do so, add the hideTableTitle option and set it to true."},{"name":"showCounts","children":[],"type":"boolean","artifact":"Manifest","description":"You can show the counts of entries of each view. To do so, add the showCounts option and set it to true."}],"type":"object","artifact":"Manifest","description":"With quickVariantSelection you can switch on the multiple view feature (single table mode). It links to SelectionVariant (filters) or SelectionPresentationVariant (filters and sorters) you must have added to your annotations beforehand."},{"name":"condensedTableLayout","children":[],"type":"boolean","artifact":"Manifest","description":"You can set the content density to condensed for ui.table on the list report and object page applications."},{"name":"columns","children":[{"name":"columnId","children":[{"name":"width","children":[],"type":"string","artifact":"Manifest","description":"A string type that represents CSS size values.\nRefer to https://openui5.hana.ondemand.com/api/sap.ui.core.CSSSize."},{"name":"availability","children":[],"type":"Adaptation|Default|Hidden","artifact":"Manifest","description":"Defines where the column should be shown.\n- Default: it will be shown by default in the table.\n- Adaptation: it will initially not shown in the table but be available via end user adaptation\n- Hidden: the column is neither available in the table nor in adaptation"},{"name":"afterExecution","children":[{"name":"navigateToInstance","children":[],"type":"boolean","artifact":"Manifest","description":"By default, a navigation is automatically triggered after an action execution. If applications want to disable the navigation, they can do so using the manifest setting “navigateToInstance”."},{"name":"enableAutoScroll","children":[],"type":"boolean","artifact":"Manifest","description":"The \"enableAutoScroll\" allows you to scroll to the newly created or change item after execution of an action"}],"type":"object","artifact":"Manifest","description":"Settings that are only relevant for actions (associated with a UI.DataFieldForAction annotation)"},{"name":"position","children":[{"name":"anchor","children":[],"type":"string","artifact":"Manifest","description":"The key of another column to be used as placement anchor."},{"name":"placement","children":[],"type":"After|Before|End","artifact":"Manifest","description":"Define the placement, either before or after the anchor column."}],"type":"object","artifact":"Manifest","description":"Defines the position of the column relative to other columns."},{"name":"header","children":[],"type":"string","artifact":"Manifest","description":"The header is shown on the table as header, as well as in the add/remove dialog."},{"name":"template","children":[],"type":"string","artifact":"Manifest","description":" allows the definition of a target fragment."},{"name":"horizontalAlign","children":[],"type":"Begin|Center|End","artifact":"Manifest","description":"Aligns the header as well as the content horizontally."},{"name":"properties","children":[],"type":"array","artifact":"Manifest","description":"If provided and sorting is enabled for the table the custom column header can be clicked. This will lead to a list of properties (or one) that can be sorted by, they are displayed as the labels of the properties, corresponding to their definition in the annotations."}]}]}]},{"name":"variantManagement","children":[],"type":"Control|None|Page","artifact":"Manifest","description":"variantManagement defines how the variant management of page personalizations is controlled.\n- None - No variant management by default.\n- Control - Individual personalizations for each control."}]};
48
- </script>
49
- <script type="module" src="./../runDocu-min.js"></script>