mage-obsidian 1.1.2 → 2.1.0

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 (180) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +1 -0
  3. package/dist/cli/buildThemes.d.ts +3 -0
  4. package/dist/cli/buildThemes.d.ts.map +1 -0
  5. package/dist/cli/buildThemes.js +219 -0
  6. package/dist/cli/buildThemes.js.map +1 -0
  7. package/dist/config/default.d.ts +16 -0
  8. package/dist/config/default.d.ts.map +1 -0
  9. package/dist/config/default.js +22 -0
  10. package/dist/config/default.js.map +1 -0
  11. package/dist/config/eslint.js +60 -0
  12. package/dist/core/configResolver.d.ts +38 -0
  13. package/dist/core/configResolver.d.ts.map +1 -0
  14. package/dist/core/configResolver.js +102 -0
  15. package/dist/core/configResolver.js.map +1 -0
  16. package/dist/core/contractValidator.d.ts +16 -0
  17. package/dist/core/contractValidator.d.ts.map +1 -0
  18. package/dist/core/contractValidator.js +49 -0
  19. package/dist/core/contractValidator.js.map +1 -0
  20. package/dist/core/cssResolver.d.ts +5 -0
  21. package/dist/core/cssResolver.d.ts.map +1 -0
  22. package/dist/core/cssResolver.js +126 -0
  23. package/dist/core/cssResolver.js.map +1 -0
  24. package/dist/core/generateInterceptors.d.ts +10 -0
  25. package/dist/core/generateInterceptors.d.ts.map +1 -0
  26. package/{src/service → dist/core}/generateInterceptors.js +72 -93
  27. package/dist/core/generateInterceptors.js.map +1 -0
  28. package/dist/core/generateJsconfig.d.ts +45 -0
  29. package/dist/core/generateJsconfig.d.ts.map +1 -0
  30. package/dist/core/generateJsconfig.js +145 -0
  31. package/dist/core/generateJsconfig.js.map +1 -0
  32. package/dist/core/moduleResolver.d.ts +22 -0
  33. package/dist/core/moduleResolver.d.ts.map +1 -0
  34. package/dist/core/moduleResolver.js +177 -0
  35. package/dist/core/moduleResolver.js.map +1 -0
  36. package/dist/core/preCompileFiles.d.ts +6 -0
  37. package/dist/core/preCompileFiles.d.ts.map +1 -0
  38. package/dist/core/preCompileFiles.js +79 -0
  39. package/dist/core/preCompileFiles.js.map +1 -0
  40. package/dist/core/preCompileMagentoFiles.d.ts +3 -0
  41. package/dist/core/preCompileMagentoFiles.d.ts.map +1 -0
  42. package/dist/core/preCompileMagentoFiles.js +28 -0
  43. package/dist/core/preCompileMagentoFiles.js.map +1 -0
  44. package/dist/core/themeResolverSync.d.ts +6 -0
  45. package/dist/core/themeResolverSync.d.ts.map +1 -0
  46. package/dist/core/themeResolverSync.js +65 -0
  47. package/dist/core/themeResolverSync.js.map +1 -0
  48. package/dist/runtime/i18nCore.d.ts +55 -0
  49. package/dist/runtime/i18nCore.d.ts.map +1 -0
  50. package/dist/runtime/i18nCore.js +77 -0
  51. package/dist/runtime/i18nCore.js.map +1 -0
  52. package/dist/runtime/interceptorManager.d.ts +45 -0
  53. package/dist/runtime/interceptorManager.d.ts.map +1 -0
  54. package/{src/service → dist/runtime}/interceptorManager.js +43 -52
  55. package/dist/runtime/interceptorManager.js.map +1 -0
  56. package/dist/runtime/islands.d.ts +45 -0
  57. package/dist/runtime/islands.d.ts.map +1 -0
  58. package/dist/runtime/islands.js +59 -0
  59. package/dist/runtime/islands.js.map +1 -0
  60. package/dist/runtime/sectionStoreCore.d.ts +108 -0
  61. package/dist/runtime/sectionStoreCore.d.ts.map +1 -0
  62. package/dist/runtime/sectionStoreCore.js +189 -0
  63. package/dist/runtime/sectionStoreCore.js.map +1 -0
  64. package/dist/utils/findComponents.d.ts +17 -0
  65. package/dist/utils/findComponents.d.ts.map +1 -0
  66. package/dist/utils/findComponents.js +66 -0
  67. package/dist/utils/findComponents.js.map +1 -0
  68. package/dist/utils/runWithConcurrency.d.ts +10 -0
  69. package/dist/utils/runWithConcurrency.d.ts.map +1 -0
  70. package/dist/utils/runWithConcurrency.js +29 -0
  71. package/dist/utils/runWithConcurrency.js.map +1 -0
  72. package/dist/vite/defaultNodeResolver.d.ts +9 -0
  73. package/dist/vite/defaultNodeResolver.d.ts.map +1 -0
  74. package/dist/vite/defaultNodeResolver.js +19 -0
  75. package/dist/vite/defaultNodeResolver.js.map +1 -0
  76. package/dist/vite/inheritAssetsModuleResolver.d.ts +8 -0
  77. package/dist/vite/inheritAssetsModuleResolver.d.ts.map +1 -0
  78. package/{src/service → dist/vite}/inheritAssetsModuleResolver.js +10 -20
  79. package/dist/vite/inheritAssetsModuleResolver.js.map +1 -0
  80. package/dist/vite/inheritModuleResolver.d.ts +8 -0
  81. package/dist/vite/inheritModuleResolver.d.ts.map +1 -0
  82. package/{src/service → dist/vite}/inheritModuleResolver.js +8 -17
  83. package/dist/vite/inheritModuleResolver.js.map +1 -0
  84. package/dist/vite/interceptorsPlugin.d.ts +10 -0
  85. package/dist/vite/interceptorsPlugin.d.ts.map +1 -0
  86. package/{src/service → dist/vite}/interceptorsPlugin.js +17 -28
  87. package/dist/vite/interceptorsPlugin.js.map +1 -0
  88. package/dist/vite/magentoHrmRewrite.d.ts +6 -0
  89. package/dist/vite/magentoHrmRewrite.d.ts.map +1 -0
  90. package/dist/vite/magentoHrmRewrite.js +45 -0
  91. package/dist/vite/magentoHrmRewrite.js.map +1 -0
  92. package/dist/vite/sharedPlugins.d.ts +35 -0
  93. package/dist/vite/sharedPlugins.d.ts.map +1 -0
  94. package/dist/vite/sharedPlugins.js +52 -0
  95. package/dist/vite/sharedPlugins.js.map +1 -0
  96. package/dist/vite/themeSourceWatcher.d.ts +16 -0
  97. package/dist/vite/themeSourceWatcher.d.ts.map +1 -0
  98. package/dist/vite/themeSourceWatcher.js +91 -0
  99. package/dist/vite/themeSourceWatcher.js.map +1 -0
  100. package/dist/vite/unresolvedModuleGuard.d.ts +17 -0
  101. package/dist/vite/unresolvedModuleGuard.d.ts.map +1 -0
  102. package/dist/vite/unresolvedModuleGuard.js +87 -0
  103. package/dist/vite/unresolvedModuleGuard.js.map +1 -0
  104. package/package.json +89 -13
  105. package/.github/workflows/publish.yml +0 -35
  106. package/jest.config.js +0 -5
  107. package/src/__tests__/__mocks__/configResolver.js +0 -35
  108. package/src/__tests__/fixtures/interceptors/emptyTarget.js +0 -2
  109. package/src/__tests__/fixtures/interceptors/pluginForNonFunction.js +0 -7
  110. package/src/__tests__/fixtures/interceptors/pluginModule.js +0 -13
  111. package/src/__tests__/fixtures/interceptors/targetModule.js +0 -12
  112. package/src/__tests__/fixtures/interceptors/targetNonFunction.js +0 -7
  113. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameA/view/frontend/web/components/ComponentA.vue +0 -0
  114. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameA/view/frontend/web/components/ComponentB.vue +0 -0
  115. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameA/view/frontend/web/css/module.extend.css +0 -0
  116. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameA/view/frontend/web/js/main.js +0 -0
  117. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameA/view/frontend/web/main.js +0 -0
  118. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameA/view/frontend/web/module.config.js +0 -9
  119. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameB/view/frontend/web/components/ComponentA.vue +0 -0
  120. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameB/view/frontend/web/components/ComponentB.vue +0 -0
  121. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameB/view/frontend/web/css/module.extend.css +0 -2
  122. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameB/view/frontend/web/js/main.js +0 -0
  123. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameB/view/frontend/web/module.config.js +0 -7
  124. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameC/view/frontend/web/components/ComponentA.vue +0 -0
  125. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameC/view/frontend/web/components/ComponentB.vue +0 -0
  126. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameC/view/frontend/web/css/module.extend.css +0 -2
  127. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameC/view/frontend/web/js/main.js +0 -0
  128. package/src/__tests__/magento_scenarios/app/code/Vendor/ModuleNameC/view/frontend/web/module.config.js +0 -7
  129. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameA/web/components/ComponentA.vue +0 -0
  130. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameA/web/components/ComponentB.vue +0 -0
  131. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameA/web/css/module.extend.css +0 -0
  132. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameA/web/js/main.js +0 -0
  133. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameA/web/module.config.js +0 -2
  134. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameB/web/components/ComponentA.vue +0 -0
  135. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameB/web/components/ComponentB.vue +0 -0
  136. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameB/web/css/module.extend.css +0 -0
  137. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameB/web/js/main.js +0 -0
  138. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameB/web/module.config.js +0 -2
  139. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameNoConfig/web/components/ComponentA.vue +0 -0
  140. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameNoConfig/web/components/ComponentB.vue +0 -0
  141. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameNoConfig/web/css/module.extend.css +0 -0
  142. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameNoConfig/web/js/main.js +0 -0
  143. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/Vendor_ModuleNameNoConfig/web/module.config.js +0 -2
  144. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/web/components/ComponentA.vue +0 -0
  145. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/web/components/ComponentB.vue +0 -0
  146. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/web/css/theme.source.css +0 -6
  147. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/web/js/main.js +0 -0
  148. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-a/web/theme.config.js +0 -5
  149. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-b/web/css/theme.source.css +0 -6
  150. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-b/web/theme.config.js +0 -5
  151. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-c/Vendor_ModuleNameB/web/components/ComponentA.vue +0 -0
  152. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-c/Vendor_ModuleNameB/web/components/ComponentB.vue +0 -0
  153. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-c/Vendor_ModuleNameB/web/css/module.extend.css +0 -0
  154. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-c/Vendor_ModuleNameB/web/js/main.js +0 -0
  155. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-c/Vendor_ModuleNameB/web/module.config.js +0 -2
  156. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-c/web/css/theme.source.css +0 -6
  157. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-c/web/theme.config.js +0 -2
  158. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-d/web/css/theme.source.css +0 -6
  159. package/src/__tests__/magento_scenarios/app/design/frontend/Vendor/theme-d/web/theme.config.js +0 -3
  160. package/src/__tests__/magento_scenarios/app/etc/mage_obsidian_frontend_modules_a.json +0 -53
  161. package/src/__tests__/magento_scenarios/app/etc/mage_obsidian_frontend_modules_b.json +0 -50
  162. package/src/__tests__/service/generateInterceptors.test.js +0 -196
  163. package/src/__tests__/service/inheritModuleResolver.test.js +0 -61
  164. package/src/__tests__/service/interceptorManager_magento_behavior.test.js +0 -137
  165. package/src/__tests__/service/moduleResolver.test.js +0 -194
  166. package/src/__tests__/service/themeResolverSync.test.js +0 -97
  167. package/src/__tests__/vite-plugins/interceptorsPlugin.test.js +0 -121
  168. package/src/config/default.js +0 -27
  169. package/src/scripts/buildThemes.js +0 -132
  170. package/src/service/configResolver.js +0 -63
  171. package/src/service/cssResolver.js +0 -73
  172. package/src/service/defaultNodeResolver.js +0 -16
  173. package/src/service/magentoHrmRewrite.js +0 -43
  174. package/src/service/moduleResolver.js +0 -178
  175. package/src/service/preCompileFiles.js +0 -37
  176. package/src/service/preCompileMagentoFiles.js +0 -16
  177. package/src/service/setupGlobals.js +0 -19
  178. package/src/service/themeResolverSync.js +0 -67
  179. package/src/utils/findComponents.js +0 -70
  180. /package/{src → dist}/templates/base_main_js_file.js +0 -0
@@ -1,70 +0,0 @@
1
- import fs from "fs";
2
- import path from "path";
3
-
4
- /**
5
- * Recursively searches for `.vue` and `.js` files in the `components` directory
6
- * of a given module and organizes them into an object.
7
- *
8
- * @param {string} moduleName - The name of the module to associate the files with.
9
- * @param moduleDir
10
- * @param directories
11
- * @returns {Promise<Object>} - A promise that resolves to an object where:
12
- * - The keys are unique identifiers for the files, formed by combining
13
- * subdirectories and file names (e.g., `Vendor_ModuleName/FilePath`).
14
- * - The values are the full relative paths to the files within the `components` folder.
15
- * @throws {Error} - Throws an error if duplicate file names (with different extensions) are found.
16
- */
17
- async function getFilesFromFolders(
18
- moduleName,
19
- moduleDir,
20
- directories
21
- ) {
22
- const componentsDir = path.resolve(moduleDir);
23
- const getFilesFromFolderWithExt = async (dir, folderToSearch, extArr, baseDir = "") => {
24
- // console.log(moduleName, dir, folderToSearch, extArr, baseDir = "");
25
- if (!fs.existsSync(dir)) return [];
26
- const entries = await fs.promises.readdir(dir, { withFileTypes: true });
27
- const keyRegistered = [];
28
-
29
- const files = await Promise.all(
30
- entries.map(async (entry) => {
31
- const fullPath = path.join(dir, entry.name);
32
- const relativePath = path.join(baseDir, entry.name);
33
- if (entry.isDirectory()) {
34
- return await getFilesFromFolderWithExt(fullPath, folderToSearch, extArr, relativePath);
35
- } else if (entry.isFile() && (entry.name.endsWith(".vue") || entry.name.endsWith(".js"))) {
36
- const fileName = path.parse(entry.name).name;
37
- let key =
38
- baseDir === ""
39
- ? fileName
40
- : `${baseDir}/${fileName}`;
41
- key = `${moduleName}/${folderToSearch}/${key}`;
42
- const filePath = path.join(dir, entry.name);
43
- if (keyRegistered.includes(key)) {
44
- throw new Error(`Duplicate file names detected: The file "${filePath}".`);
45
- }
46
- keyRegistered.push(key);
47
- return { [key]: filePath };
48
- }
49
- return null;
50
- })
51
- );
52
- return files.filter(Boolean).flat();
53
- };
54
-
55
- try {
56
- let result = [];
57
- for (const directory of directories) {
58
- const folderPath = path.resolve(componentsDir, directory.src);
59
- const filesArray = await getFilesFromFolderWithExt(folderPath, directory.src, directory.ext);
60
- result.push(...filesArray);
61
- }
62
- result = result.reduce((acc, item) => Object.assign(acc, item), {});
63
-
64
- return result;
65
- } catch (err) {
66
- throw new Error(`Error while processing JavaScript or Vue files in the components folder of module "${moduleName}": ${err.message}`);
67
- }
68
- }
69
-
70
- export default getFilesFromFolders;
File without changes