fs/index.js

  1. /**
  2. * @module @ui5/fs
  3. * @public
  4. */
  5. module.exports = {
  6. /**
  7. * @public
  8. * @alias module:@ui5/fs.adapters
  9. * @namespace
  10. */
  11. adapters: {
  12. /**
  13. * @type {typeof import('./lib/adapters/AbstractAdapter')}
  14. */
  15. AbstractAdapter: "./lib/adapters/AbstractAdapter",
  16. /**
  17. * @type {typeof import('./lib/adapters/FileSystem')}
  18. */
  19. FileSystem: "./lib/adapters/FileSystem",
  20. /**
  21. * @type {typeof import('./lib/adapters/Memory')}
  22. */
  23. Memory: "./lib/adapters/Memory"
  24. },
  25. /**
  26. * @type {typeof import('./lib/AbstractReader')}
  27. */
  28. AbstractReader: "./lib/AbstractReader",
  29. /**
  30. * @type {typeof import('./lib/AbstractReaderWriter')}
  31. */
  32. AbstractReaderWriter: "./lib/AbstractReaderWriter",
  33. /**
  34. * @type {typeof import('./lib/DuplexCollection')}
  35. */
  36. DuplexCollection: "./lib/DuplexCollection",
  37. /**
  38. * @type {import('./lib/fsInterface')}
  39. */
  40. fsInterface: "./lib/fsInterface",
  41. /**
  42. * @type {typeof import('./lib/ReaderCollection')}
  43. */
  44. ReaderCollection: "./lib/ReaderCollection",
  45. /**
  46. * @type {typeof import('./lib/ReaderCollectionPrioritized')}
  47. */
  48. ReaderCollectionPrioritized: "./lib/ReaderCollectionPrioritized",
  49. /**
  50. * @type {typeof import('./lib/Resource')}
  51. */
  52. Resource: "./lib/Resource",
  53. /**
  54. * @type {typeof import('./lib/ResourceTagCollection')}
  55. */
  56. ResourceTagCollection: "./lib/ResourceTagCollection",
  57. /**
  58. * @type {import('./lib/resourceFactory')}
  59. */
  60. resourceFactory: "./lib/resourceFactory"
  61. };
  62. function exportModules(exportRoot, modulePaths) {
  63. for (const moduleName of Object.keys(modulePaths)) {
  64. if (typeof modulePaths[moduleName] === "object") {
  65. exportRoot[moduleName] = {};
  66. exportModules(exportRoot[moduleName], modulePaths[moduleName]);
  67. } else {
  68. Object.defineProperty(exportRoot, moduleName, {
  69. get() {
  70. return require(modulePaths[moduleName]);
  71. }
  72. });
  73. }
  74. }
  75. }
  76. exportModules(module.exports, JSON.parse(JSON.stringify(module.exports)));