@ui5/builder 3.0.0-alpha.9 → 3.0.0-beta.2

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 (83) hide show
  1. package/.reuse/dep5 +2 -2
  2. package/CHANGELOG.md +59 -1
  3. package/CONTRIBUTING.md +1 -1
  4. package/README.md +4 -4
  5. package/jsdoc.json +2 -2
  6. package/lib/lbt/UI5ClientConstants.js +7 -8
  7. package/lib/lbt/analyzer/ComponentAnalyzer.js +60 -22
  8. package/lib/lbt/analyzer/FioriElementsAnalyzer.js +31 -20
  9. package/lib/lbt/analyzer/JSModuleAnalyzer.js +119 -77
  10. package/lib/lbt/analyzer/SmartTemplateAnalyzer.js +31 -20
  11. package/lib/lbt/analyzer/XMLCompositeAnalyzer.js +35 -25
  12. package/lib/lbt/analyzer/XMLTemplateAnalyzer.js +71 -18
  13. package/lib/lbt/analyzer/analyzeLibraryJS.js +22 -6
  14. package/lib/lbt/bundle/AutoSplitter.js +10 -11
  15. package/lib/lbt/bundle/Builder.js +33 -36
  16. package/lib/lbt/bundle/BundleDefinition.js +1 -5
  17. package/lib/lbt/bundle/BundleWriter.js +1 -2
  18. package/lib/lbt/bundle/ResolvedBundleDefinition.js +6 -7
  19. package/lib/lbt/bundle/Resolver.js +11 -12
  20. package/lib/lbt/calls/SapUiDefine.js +16 -11
  21. package/lib/lbt/graph/dependencyGraph.js +3 -4
  22. package/lib/lbt/graph/dominatorTree.js +3 -3
  23. package/lib/lbt/graph/topologicalSort.js +3 -3
  24. package/lib/lbt/resources/LibraryFileAnalyzer.js +6 -9
  25. package/lib/lbt/resources/LocatorResource.js +2 -2
  26. package/lib/lbt/resources/LocatorResourcePool.js +3 -3
  27. package/lib/lbt/resources/ModuleInfo.js +2 -3
  28. package/lib/lbt/resources/Resource.js +3 -4
  29. package/lib/lbt/resources/ResourceCollector.js +8 -9
  30. package/lib/lbt/resources/ResourceFilterList.js +38 -40
  31. package/lib/lbt/resources/ResourceInfo.js +1 -1
  32. package/lib/lbt/resources/ResourceInfoList.js +5 -3
  33. package/lib/lbt/resources/ResourcePool.js +15 -21
  34. package/lib/lbt/utils/ASTUtils.js +60 -44
  35. package/lib/lbt/utils/JSTokenizer.js +4 -4
  36. package/lib/lbt/utils/ModuleName.js +10 -20
  37. package/lib/lbt/utils/escapePropertiesFile.js +4 -4
  38. package/lib/lbt/utils/parseUtils.js +5 -11
  39. package/lib/processors/bootstrapHtmlTransformer.js +15 -7
  40. package/lib/processors/bundlers/flexChangesBundler.js +16 -8
  41. package/lib/processors/bundlers/moduleBundler.js +26 -15
  42. package/lib/processors/jsdoc/apiIndexGenerator.js +16 -9
  43. package/lib/processors/jsdoc/jsdocGenerator.js +37 -25
  44. package/lib/processors/jsdoc/lib/{createIndexFiles.js → createIndexFiles.cjs} +0 -0
  45. package/lib/processors/jsdoc/lib/{transformApiJson.js → transformApiJson.cjs} +59 -2
  46. package/lib/processors/jsdoc/lib/ui5/{plugin.js → plugin.cjs} +310 -119
  47. package/lib/processors/jsdoc/lib/ui5/template/{publish.js → publish.cjs} +6 -2
  48. package/lib/processors/jsdoc/lib/ui5/template/utils/{versionUtil.js → versionUtil.cjs} +0 -0
  49. package/lib/processors/jsdoc/sdkTransformer.js +18 -11
  50. package/lib/processors/libraryLessGenerator.js +28 -16
  51. package/lib/processors/manifestCreator.js +15 -14
  52. package/lib/processors/minifier.js +22 -16
  53. package/lib/processors/nonAsciiEscaper.js +17 -7
  54. package/lib/processors/resourceListCreator.js +13 -13
  55. package/lib/processors/stringReplacer.js +13 -6
  56. package/lib/processors/themeBuilder.js +33 -24
  57. package/lib/processors/versionInfoGenerator.js +40 -30
  58. package/lib/tasks/buildThemes.js +18 -11
  59. package/lib/tasks/bundlers/generateBundle.js +23 -12
  60. package/lib/tasks/bundlers/generateComponentPreload.js +23 -12
  61. package/lib/tasks/bundlers/generateFlexChangesBundle.js +16 -8
  62. package/lib/tasks/bundlers/generateLibraryPreload.js +33 -17
  63. package/lib/tasks/bundlers/generateStandaloneAppBundle.js +21 -13
  64. package/lib/tasks/bundlers/utils/createModuleNameMapping.js +7 -7
  65. package/lib/tasks/escapeNonAsciiCharacters.js +12 -5
  66. package/lib/tasks/generateCachebusterInfo.js +17 -9
  67. package/lib/tasks/generateLibraryManifest.js +14 -8
  68. package/lib/tasks/generateResourcesJson.js +15 -9
  69. package/lib/tasks/generateThemeDesignerResources.js +19 -9
  70. package/lib/tasks/generateVersionInfo.js +12 -5
  71. package/lib/tasks/jsdoc/executeJsdocSdkTransformation.js +17 -9
  72. package/lib/tasks/jsdoc/generateApiIndex.js +16 -10
  73. package/lib/tasks/jsdoc/generateJsdoc.js +131 -119
  74. package/lib/tasks/minify.js +13 -6
  75. package/lib/tasks/replaceBuildtime.js +12 -5
  76. package/lib/tasks/replaceCopyright.js +12 -5
  77. package/lib/tasks/replaceVersion.js +12 -5
  78. package/lib/tasks/taskRepository.js +24 -30
  79. package/lib/tasks/transformBootstrapHtml.js +6 -5
  80. package/package.json +44 -31
  81. package/index.js +0 -173
  82. package/lib/processors/bundlers/manifestBundler.js +0 -172
  83. package/lib/tasks/bundlers/generateManifestBundle.js +0 -49
@@ -1,18 +1,25 @@
1
- const nonAsciiEscaper = require("../processors/nonAsciiEscaper");
1
+ import nonAsciiEscaper from "../processors/nonAsciiEscaper.js";
2
+
3
+ /**
4
+ * @public
5
+ * @module @ui5/builder/tasks/escapeNonAsciiCharacters
6
+ */
2
7
 
3
8
  /**
4
9
  * Task to escape non ascii characters in properties files resources.
5
10
  *
6
11
  * @public
7
- * @alias module:@ui5/builder.tasks.escapeNonAsciiCharacters
12
+ * @function default
13
+ * @static
14
+ *
8
15
  * @param {object} parameters Parameters
9
- * @param {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files
16
+ * @param {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files
10
17
  * @param {object} parameters.options Options
11
18
  * @param {string} parameters.options.pattern Glob pattern to locate the files to be processed
12
19
  * @param {string} parameters.options.encoding source file encoding either "UTF-8" or "ISO-8859-1"
13
20
  * @returns {Promise<undefined>} Promise resolving with <code>undefined</code> once data has been written
14
21
  */
15
- module.exports = async function({workspace, options: {pattern, encoding}}) {
22
+ export default async function({workspace, options: {pattern, encoding}}) {
16
23
  if (!encoding) {
17
24
  throw new Error("[escapeNonAsciiCharacters] Mandatory option 'encoding' not provided");
18
25
  }
@@ -27,4 +34,4 @@ module.exports = async function({workspace, options: {pattern, encoding}}) {
27
34
  });
28
35
 
29
36
  await Promise.all(processedResources.map((resource) => workspace.write(resource)));
30
- };
37
+ }
@@ -1,6 +1,12 @@
1
- const crypto = require("crypto");
2
- const resourceFactory = require("@ui5/fs").resourceFactory;
3
- const log = require("@ui5/logger").getLogger("builder:tasks:generateCachebusterInfo");
1
+ import crypto from "node:crypto";
2
+ import {createResource} from "@ui5/fs/resourceFactory";
3
+ import logger from "@ui5/logger";
4
+ const log = logger.getLogger("builder:tasks:generateCachebusterInfo");
5
+
6
+ /**
7
+ * @public
8
+ * @module @ui5/builder/tasks/generateCachebusterInfo
9
+ */
4
10
 
5
11
  async function signByTime(resource) {
6
12
  return resource.getStatInfo().mtime.getTime();
@@ -33,15 +39,17 @@ function getSigner(type) {
33
39
  * Task to generate the application cachebuster info file.
34
40
  *
35
41
  * @public
36
- * @alias module:@ui5/builder.tasks.generateCachebusterInfo
42
+ * @function default
43
+ * @static
44
+ *
37
45
  * @param {object} parameters Parameters
38
- * @param {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files
46
+ * @param {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files
39
47
  * @param {object} parameters.options Options
40
48
  * @param {string} parameters.options.projectNamespace Namespace of the application
41
49
  * @param {string} [parameters.options.signatureType='time'] Type of signature to be used ('time' or 'hash')
42
50
  * @returns {Promise<undefined>} Promise resolving with <code>undefined</code> once data has been written
43
51
  */
44
- module.exports = function({workspace, options}) {
52
+ export default function({workspace, options}) {
45
53
  const {signatureType} = options;
46
54
  // Backward compatibility: "namespace" option got renamed to "projectNamespace"
47
55
  const namespace = options.projectNamespace || options.namespace;
@@ -49,7 +57,7 @@ module.exports = function({workspace, options}) {
49
57
  const basePath = `/resources/${namespace}/`;
50
58
  return workspace.byGlob(`/resources/${namespace}/**/*`)
51
59
  .then(async (resources) => {
52
- const cachebusterInfo = {};
60
+ const cachebusterInfo = Object.create(null);
53
61
  const signer = getSigner(signatureType);
54
62
 
55
63
  await Promise.all(resources.map(async (resource) => {
@@ -63,10 +71,10 @@ module.exports = function({workspace, options}) {
63
71
  resourcePath = resourcePath.replace(basePath, "");
64
72
  cachebusterInfo[resourcePath] = await signer(resource);
65
73
  }));
66
- const cachebusterInfoResource = resourceFactory.createResource({
74
+ const cachebusterInfoResource = createResource({
67
75
  path: `/resources/${namespace}/sap-ui-cachebuster-info.json`,
68
76
  string: JSON.stringify(cachebusterInfo, null, 2)
69
77
  });
70
78
  return workspace.write(cachebusterInfoResource);
71
79
  });
72
- };
80
+ }
@@ -1,22 +1,28 @@
1
- "use strict";
2
1
 
3
- const log = require("@ui5/logger").getLogger("builder:tasks:generateLibraryManifest");
4
- const manifestCreator = require("../processors/manifestCreator");
2
+ import logger from "@ui5/logger";
3
+ const log = logger.getLogger("builder:tasks:generateLibraryManifest");
4
+ import manifestCreator from "../processors/manifestCreator.js";
5
5
 
6
+ /**
7
+ * @public
8
+ * @module @ui5/builder/tasks/generateLibraryManifest
9
+ */
6
10
 
7
11
  /**
8
12
  * Task for creating a library manifest.json from its .library file.
9
13
  *
10
14
  * @public
11
- * @alias module:@ui5/builder.tasks.generateLibraryManifest
15
+ * @function default
16
+ * @static
17
+ *
12
18
  * @param {object} parameters Parameters
13
- * @param {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files
14
- * @param {module:@ui5/project.build.helpers.TaskUtil|object} [parameters.taskUtil] TaskUtil
19
+ * @param {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files
20
+ * @param {@ui5/project/build/helpers/TaskUtil|object} [parameters.taskUtil] TaskUtil
15
21
  * @param {object} parameters.options Options
16
22
  * @param {string} parameters.options.projectName Project name
17
23
  * @returns {Promise<undefined>} Promise resolving with <code>undefined</code> once data has been written
18
24
  */
19
- module.exports = function({workspace, taskUtil, options: {projectName}}) {
25
+ export default function({workspace, taskUtil, options: {projectName}}) {
20
26
  // Note:
21
27
  // *.library files are needed to identify libraries
22
28
  // *.json files are needed to avoid overwriting them
@@ -64,4 +70,4 @@ module.exports = function({workspace, taskUtil, options: {projectName}}) {
64
70
  }));
65
71
  });
66
72
  });
67
- };
73
+ }
@@ -1,6 +1,5 @@
1
- "use strict";
2
1
 
3
- const resourceListCreator = require("../processors/resourceListCreator");
2
+ import resourceListCreator from "../processors/resourceListCreator.js";
4
3
 
5
4
  const DEFAULT_EXCLUDES = [
6
5
  /*
@@ -38,6 +37,11 @@ function getCreatorOptions(projectName) {
38
37
  return creatorOptions;
39
38
  }
40
39
 
40
+ /**
41
+ * @public
42
+ * @module @ui5/builder/tasks/generateResourcesJson
43
+ */
44
+
41
45
  /**
42
46
  * Task for creating a resources.json file, describing all productive build resources.
43
47
  *
@@ -47,7 +51,7 @@ function getCreatorOptions(projectName) {
47
51
  * </p>
48
52
  *
49
53
  * <p>
50
- * Not supported in combination with task {@link module:@ui5/builder.tasks.generateStandaloneAppBundle}.
54
+ * Not supported in combination with task {@link @ui5/builder/tasks/bundlers/generateStandaloneAppBundle}.
51
55
  * Therefore it is also not supported in combination with self-contained build.
52
56
  * </p>
53
57
  *
@@ -93,16 +97,18 @@ function getCreatorOptions(projectName) {
93
97
  * };
94
98
  *
95
99
  * @public
96
- * @alias module:@ui5/builder.tasks.generateResourcesJson
100
+ * @function default
101
+ * @static
102
+ *
97
103
  * @param {object} parameters Parameters
98
- * @param {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files
99
- * @param {module:@ui5/fs.AbstractReader} parameters.dependencies Reader or Collection to read dependency files
100
- * @param {module:@ui5/project.build.helpers.TaskUtil|object} [parameters.taskUtil] TaskUtil
104
+ * @param {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files
105
+ * @param {@ui5/fs/AbstractReader} parameters.dependencies Reader or Collection to read dependency files
106
+ * @param {@ui5/project/build/helpers/TaskUtil|object} [parameters.taskUtil] TaskUtil
101
107
  * @param {object} parameters.options Options
102
108
  * @param {string} parameters.options.projectName Project name
103
109
  * @returns {Promise<undefined>} Promise resolving with <code>undefined</code> once data has been written
104
110
  */
105
- module.exports = async function({workspace, dependencies, taskUtil, options: {projectName}}) {
111
+ export default async function({workspace, dependencies, taskUtil, options: {projectName}}) {
106
112
  let resources = await workspace.byGlob(["/resources/**/*"].concat(DEFAULT_EXCLUDES));
107
113
  let dependencyResources =
108
114
  await dependencies.byGlob("/resources/**/*.{js,json,xml,html,properties,library,js.map}");
@@ -125,4 +131,4 @@ module.exports = async function({workspace, dependencies, taskUtil, options: {pr
125
131
  await Promise.all(
126
132
  resourceLists.map((resourceList) => workspace.write(resourceList))
127
133
  );
128
- };
134
+ }
@@ -1,7 +1,10 @@
1
- const posixPath = require("path").posix;
2
- const log = require("@ui5/logger").getLogger("builder:tasks:generateThemeDesignerResources");
3
- const libraryLessGenerator = require("../processors/libraryLessGenerator");
4
- const {ReaderCollectionPrioritized, Resource, fsInterface} = require("@ui5/fs");
1
+ import posixPath from "node:path/posix";
2
+ import logger from "@ui5/logger";
3
+ const log = logger.getLogger("builder:tasks:generateThemeDesignerResources");
4
+ import libraryLessGenerator from "../processors/libraryLessGenerator.js";
5
+ import ReaderCollectionPrioritized from "@ui5/fs/ReaderCollectionPrioritized";
6
+ import Resource from "@ui5/fs/Resource";
7
+ import fsInterface from "@ui5/fs/fsInterface";
5
8
 
6
9
  /**
7
10
  * Returns a relative path from the given themeFolder to the root namespace.
@@ -187,15 +190,22 @@ async function generateCssVariablesLess({workspace, combo, namespace}) {
187
190
  }
188
191
  }
189
192
 
193
+ /**
194
+ * @public
195
+ * @module @ui5/builder/tasks/generateThemeDesignerResources
196
+ */
197
+
190
198
  /* eslint "jsdoc/check-param-names": ["error", {"disableExtraPropertyReporting":true}] */
191
199
  /**
192
200
  * Generates resources required for integration with the SAP Theme Designer.
193
201
  *
194
202
  * @public
195
- * @alias module:@ui5/builder.tasks.generateThemeDesignerResources
203
+ * @function default
204
+ * @static
205
+ *
196
206
  * @param {object} parameters Parameters
197
- * @param {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files
198
- * @param {module:@ui5/fs.AbstractReader} parameters.dependencies Reader or Collection to read dependency files
207
+ * @param {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files
208
+ * @param {@ui5/fs/AbstractReader} parameters.dependencies Reader or Collection to read dependency files
199
209
  * @param {object} parameters.options Options
200
210
  * @param {string} parameters.options.projectName Project name
201
211
  * @param {string} parameters.options.version Project version
@@ -204,7 +214,7 @@ async function generateCssVariablesLess({workspace, combo, namespace}) {
204
214
  * Omit for type <code>theme-library</code>
205
215
  * @returns {Promise<undefined>} Promise resolving with <code>undefined</code> once data has been written
206
216
  */
207
- module.exports = async function({workspace, dependencies, options}) {
217
+ export default async function({workspace, dependencies, options}) {
208
218
  const {projectName, version} = options;
209
219
  // Backward compatibility: "namespace" option got renamed to "projectNamespace"
210
220
  const namespace = options.projectNamespace || options.namespace;
@@ -279,4 +289,4 @@ module.exports = async function({workspace, dependencies, options}) {
279
289
 
280
290
  // css_variables.less
281
291
  await generateCssVariablesLess({workspace, combo, namespace});
282
- };
292
+ }
@@ -1,21 +1,28 @@
1
- const versionInfoGenerator = require("../processors/versionInfoGenerator");
1
+ import versionInfoGenerator from "../processors/versionInfoGenerator.js";
2
2
 
3
3
  const MANIFEST_JSON = "manifest.json";
4
4
 
5
+ /**
6
+ * @public
7
+ * @module @ui5/builder/tasks/generateVersionInfo
8
+ */
9
+
5
10
  /**
6
11
  * Task to create sap-ui-version.json
7
12
  *
8
13
  * @public
9
- * @alias module:@ui5/builder.tasks.generateVersionInfo
14
+ * @function default
15
+ * @static
16
+ *
10
17
  * @param {object} parameters Parameters
11
- * @param {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files
12
- * @param {module:@ui5/fs.AbstractReader} parameters.dependencies Reader or Collection to read dependency files
18
+ * @param {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files
19
+ * @param {@ui5/fs/AbstractReader} parameters.dependencies Reader or Collection to read dependency files
13
20
  * @param {object} parameters.options Options
14
21
  * @param {string} parameters.options.pattern Glob pattern for .library resources
15
22
  * @param {object} parameters.options.rootProject DuplexCollection to read and write files
16
23
  * @returns {Promise<undefined>} Promise resolving with <code>undefined</code> once data has been written
17
24
  */
18
- module.exports = async ({workspace, dependencies, options: {rootProject, pattern}}) => {
25
+ export default async ({workspace, dependencies, options: {rootProject, pattern}}) => {
19
26
  const resources = await dependencies.byGlob(pattern);
20
27
 
21
28
  const libraryInfosPromises = resources.map((dotLibResource) => {
@@ -1,18 +1,26 @@
1
- const log = require("@ui5/logger").getLogger("builder:tasks:jsdoc:executeJsdocSdkTransformation");
2
- const ReaderCollectionPrioritized = require("@ui5/fs").ReaderCollectionPrioritized;
3
- const fsInterface = require("@ui5/fs").fsInterface;
4
- const sdkTransformer = require("../../processors/jsdoc/sdkTransformer");
1
+ import logger from "@ui5/logger";
2
+ const log = logger.getLogger("builder:tasks:jsdoc:executeJsdocSdkTransformation");
3
+ import ReaderCollectionPrioritized from "@ui5/fs/ReaderCollectionPrioritized";
4
+ import fsInterface from "@ui5/fs/fsInterface";
5
+ import sdkTransformer from "../../processors/jsdoc/sdkTransformer.js";
6
+
7
+ /**
8
+ * @public
9
+ * @module @ui5/builder/tasks/jsdoc/executeJsdocSdkTransformation
10
+ */
5
11
 
6
12
  /**
7
13
  * Task to transform the api.json file as created by the
8
- * [generateJsdoc]{@link module:@ui5/builder.tasks.generateJsdoc} task into a pre-processed api.json
14
+ * [generateJsdoc]{@link @ui5/builder/tasks/jsdoc/generateJsdoc} task into a pre-processed api.json
9
15
  * file suitable for the SDK.
10
16
  *
11
17
  * @public
12
- * @alias module:@ui5/builder.tasks.executeJsdocSdkTransformation
18
+ * @function default
19
+ * @static
20
+ *
13
21
  * @param {object} parameters Parameters
14
- * @param {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files
15
- * @param {module:@ui5/fs.AbstractReader} parameters.dependencies Reader or Collection to read dependency files
22
+ * @param {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files
23
+ * @param {@ui5/fs/AbstractReader} parameters.dependencies Reader or Collection to read dependency files
16
24
  * @param {object} parameters.options Options
17
25
  * @param {string|Array} parameters.options.dotLibraryPattern Pattern to locate the .library resource to be processed
18
26
  * @param {string} parameters.options.projectName Project name
@@ -73,4 +81,4 @@ const executeJsdocSdkTransformation = async function(
73
81
  }));
74
82
  };
75
83
 
76
- module.exports = executeJsdocSdkTransformation;
84
+ export default executeJsdocSdkTransformation;
@@ -1,23 +1,29 @@
1
- const ui5Fs = require("@ui5/fs");
2
- const ReaderCollectionPrioritized = ui5Fs.ReaderCollectionPrioritized;
3
- const fsInterface = ui5Fs.fsInterface;
4
- const apiIndexGenerator = require("../../processors/jsdoc/apiIndexGenerator");
1
+ import ReaderCollectionPrioritized from "@ui5/fs/ReaderCollectionPrioritized";
2
+ import fsInterface from "@ui5/fs/fsInterface";
3
+ import apiIndexGenerator from "../../processors/jsdoc/apiIndexGenerator.js";
4
+
5
+ /**
6
+ * @public
7
+ * @module @ui5/builder/tasks/jsdoc/generateApiIndex
8
+ */
5
9
 
6
10
  /**
7
11
  * Compiles an api-index.json resource from all available api.json resources as created by the
8
- * [executeJsdocSdkTransformation]{@link module:@ui5/builder.tasks.executeJsdocSdkTransformation} task.
12
+ * [executeJsdocSdkTransformation]{@link @ui5/builder/tasks/jsdoc/executeJsdocSdkTransformation} task.
9
13
  * The resulting api-index.json resource is mainly to be used in the SDK.
10
14
  *
11
15
  * @public
12
- * @alias module:@ui5/builder.tasks.generateApiIndex
16
+ * @function default
17
+ * @static
18
+ *
13
19
  * @param {object} parameters Parameters
14
- * @param {module:@ui5/fs.DuplexCollection} parameters.workspace DuplexCollection to read and write files
15
- * @param {module:@ui5/fs.AbstractReader} parameters.dependencies Reader or Collection to read dependency files
20
+ * @param {@ui5/fs/DuplexCollection} parameters.workspace DuplexCollection to read and write files
21
+ * @param {@ui5/fs/AbstractReader} parameters.dependencies Reader or Collection to read dependency files
16
22
  * @param {object} parameters.options Options
17
23
  * @param {string} parameters.options.projectName Project name
18
24
  * @returns {Promise<undefined>} Promise resolving with <code>undefined</code> once data has been written
19
25
  */
20
- module.exports = async function({
26
+ export default async function({
21
27
  workspace,
22
28
  dependencies,
23
29
  options: {projectName}
@@ -47,4 +53,4 @@ module.exports = async function({
47
53
  await Promise.all(createdResources.map((resource) => {
48
54
  return workspace.write(resource);
49
55
  }));
50
- };
56
+ }