@houssem__/xxxx 7.0.3

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 (142) hide show
  1. package/OPTIMIZATION_GUIDE.md +122 -0
  2. package/README.md +586 -0
  3. package/dist/common/fast-installer.d.ts +20 -0
  4. package/dist/common/fast-installer.d.ts.map +1 -0
  5. package/dist/common/fast-installer.js +141 -0
  6. package/dist/common/fast-installer.js.map +1 -0
  7. package/dist/common/sync-utils.d.ts +104 -0
  8. package/dist/common/sync-utils.d.ts.map +1 -0
  9. package/dist/common/sync-utils.js +614 -0
  10. package/dist/common/sync-utils.js.map +1 -0
  11. package/dist/dependencies/categories/libs-categories.d.ts +3 -0
  12. package/dist/dependencies/categories/libs-categories.d.ts.map +1 -0
  13. package/dist/dependencies/categories/libs-categories.js +318 -0
  14. package/dist/dependencies/categories/libs-categories.js.map +1 -0
  15. package/dist/dependencies/mfes-libs/index.d.ts +25 -0
  16. package/dist/dependencies/mfes-libs/index.d.ts.map +1 -0
  17. package/dist/dependencies/mfes-libs/index.js +88 -0
  18. package/dist/dependencies/mfes-libs/index.js.map +1 -0
  19. package/dist/dependencies/mfes-libs/mf-account.d.ts +3 -0
  20. package/dist/dependencies/mfes-libs/mf-account.d.ts.map +1 -0
  21. package/dist/dependencies/mfes-libs/mf-account.js +8 -0
  22. package/dist/dependencies/mfes-libs/mf-account.js.map +1 -0
  23. package/dist/dependencies/mfes-libs/mf-add-to-cart.d.ts +3 -0
  24. package/dist/dependencies/mfes-libs/mf-add-to-cart.d.ts.map +1 -0
  25. package/dist/dependencies/mfes-libs/mf-add-to-cart.js +8 -0
  26. package/dist/dependencies/mfes-libs/mf-add-to-cart.js.map +1 -0
  27. package/dist/dependencies/mfes-libs/mf-autocomplete.d.ts +3 -0
  28. package/dist/dependencies/mfes-libs/mf-autocomplete.d.ts.map +1 -0
  29. package/dist/dependencies/mfes-libs/mf-autocomplete.js +8 -0
  30. package/dist/dependencies/mfes-libs/mf-autocomplete.js.map +1 -0
  31. package/dist/dependencies/mfes-libs/mf-cms.d.ts +3 -0
  32. package/dist/dependencies/mfes-libs/mf-cms.d.ts.map +1 -0
  33. package/dist/dependencies/mfes-libs/mf-cms.js +8 -0
  34. package/dist/dependencies/mfes-libs/mf-cms.js.map +1 -0
  35. package/dist/dependencies/mfes-libs/mf-footer.d.ts +3 -0
  36. package/dist/dependencies/mfes-libs/mf-footer.d.ts.map +1 -0
  37. package/dist/dependencies/mfes-libs/mf-footer.js +8 -0
  38. package/dist/dependencies/mfes-libs/mf-footer.js.map +1 -0
  39. package/dist/dependencies/mfes-libs/mf-header.d.ts +3 -0
  40. package/dist/dependencies/mfes-libs/mf-header.d.ts.map +1 -0
  41. package/dist/dependencies/mfes-libs/mf-header.js +8 -0
  42. package/dist/dependencies/mfes-libs/mf-header.js.map +1 -0
  43. package/dist/dependencies/mfes-libs/mf-pdp.d.ts +3 -0
  44. package/dist/dependencies/mfes-libs/mf-pdp.d.ts.map +1 -0
  45. package/dist/dependencies/mfes-libs/mf-pdp.js +8 -0
  46. package/dist/dependencies/mfes-libs/mf-pdp.js.map +1 -0
  47. package/dist/dependencies/mfes-libs/mf-recommendation.d.ts +3 -0
  48. package/dist/dependencies/mfes-libs/mf-recommendation.d.ts.map +1 -0
  49. package/dist/dependencies/mfes-libs/mf-recommendation.js +8 -0
  50. package/dist/dependencies/mfes-libs/mf-recommendation.js.map +1 -0
  51. package/dist/dependencies/mfes-libs/mf-search.d.ts +3 -0
  52. package/dist/dependencies/mfes-libs/mf-search.d.ts.map +1 -0
  53. package/dist/dependencies/mfes-libs/mf-search.js +8 -0
  54. package/dist/dependencies/mfes-libs/mf-search.js.map +1 -0
  55. package/dist/dependencies/mfes-libs/mf-shell.d.ts +3 -0
  56. package/dist/dependencies/mfes-libs/mf-shell.d.ts.map +1 -0
  57. package/dist/dependencies/mfes-libs/mf-shell.js +46 -0
  58. package/dist/dependencies/mfes-libs/mf-shell.js.map +1 -0
  59. package/dist/dependencies/runtime-sync.d.ts +18 -0
  60. package/dist/dependencies/runtime-sync.d.ts.map +1 -0
  61. package/dist/dependencies/runtime-sync.js +105 -0
  62. package/dist/dependencies/runtime-sync.js.map +1 -0
  63. package/dist/dependencies/versions/mfes-versions.d.ts +3 -0
  64. package/dist/dependencies/versions/mfes-versions.d.ts.map +1 -0
  65. package/dist/dependencies/versions/mfes-versions.js +89 -0
  66. package/dist/dependencies/versions/mfes-versions.js.map +1 -0
  67. package/dist/dev-dependencies/categories/dev-libs-categories.d.ts +5 -0
  68. package/dist/dev-dependencies/categories/dev-libs-categories.d.ts.map +1 -0
  69. package/dist/dev-dependencies/categories/dev-libs-categories.js +400 -0
  70. package/dist/dev-dependencies/categories/dev-libs-categories.js.map +1 -0
  71. package/dist/dev-dependencies/dev-sync.d.ts +18 -0
  72. package/dist/dev-dependencies/dev-sync.d.ts.map +1 -0
  73. package/dist/dev-dependencies/dev-sync.js +104 -0
  74. package/dist/dev-dependencies/dev-sync.js.map +1 -0
  75. package/dist/dev-dependencies/mfes-dev-libs/index.d.ts +24 -0
  76. package/dist/dev-dependencies/mfes-dev-libs/index.d.ts.map +1 -0
  77. package/dist/dev-dependencies/mfes-dev-libs/index.js +87 -0
  78. package/dist/dev-dependencies/mfes-dev-libs/index.js.map +1 -0
  79. package/dist/dev-dependencies/mfes-dev-libs/mf-account.d.ts +3 -0
  80. package/dist/dev-dependencies/mfes-dev-libs/mf-account.d.ts.map +1 -0
  81. package/dist/dev-dependencies/mfes-dev-libs/mf-account.js +5 -0
  82. package/dist/dev-dependencies/mfes-dev-libs/mf-account.js.map +1 -0
  83. package/dist/dev-dependencies/mfes-dev-libs/mf-add-to-cart.d.ts +3 -0
  84. package/dist/dev-dependencies/mfes-dev-libs/mf-add-to-cart.d.ts.map +1 -0
  85. package/dist/dev-dependencies/mfes-dev-libs/mf-add-to-cart.js +5 -0
  86. package/dist/dev-dependencies/mfes-dev-libs/mf-add-to-cart.js.map +1 -0
  87. package/dist/dev-dependencies/mfes-dev-libs/mf-autocomplete.d.ts +3 -0
  88. package/dist/dev-dependencies/mfes-dev-libs/mf-autocomplete.d.ts.map +1 -0
  89. package/dist/dev-dependencies/mfes-dev-libs/mf-autocomplete.js +5 -0
  90. package/dist/dev-dependencies/mfes-dev-libs/mf-autocomplete.js.map +1 -0
  91. package/dist/dev-dependencies/mfes-dev-libs/mf-cms.d.ts +3 -0
  92. package/dist/dev-dependencies/mfes-dev-libs/mf-cms.d.ts.map +1 -0
  93. package/dist/dev-dependencies/mfes-dev-libs/mf-cms.js +5 -0
  94. package/dist/dev-dependencies/mfes-dev-libs/mf-cms.js.map +1 -0
  95. package/dist/dev-dependencies/mfes-dev-libs/mf-footer.d.ts +3 -0
  96. package/dist/dev-dependencies/mfes-dev-libs/mf-footer.d.ts.map +1 -0
  97. package/dist/dev-dependencies/mfes-dev-libs/mf-footer.js +5 -0
  98. package/dist/dev-dependencies/mfes-dev-libs/mf-footer.js.map +1 -0
  99. package/dist/dev-dependencies/mfes-dev-libs/mf-header.d.ts +3 -0
  100. package/dist/dev-dependencies/mfes-dev-libs/mf-header.d.ts.map +1 -0
  101. package/dist/dev-dependencies/mfes-dev-libs/mf-header.js +5 -0
  102. package/dist/dev-dependencies/mfes-dev-libs/mf-header.js.map +1 -0
  103. package/dist/dev-dependencies/mfes-dev-libs/mf-pdp.d.ts +3 -0
  104. package/dist/dev-dependencies/mfes-dev-libs/mf-pdp.d.ts.map +1 -0
  105. package/dist/dev-dependencies/mfes-dev-libs/mf-pdp.js +5 -0
  106. package/dist/dev-dependencies/mfes-dev-libs/mf-pdp.js.map +1 -0
  107. package/dist/dev-dependencies/mfes-dev-libs/mf-recommendation.d.ts +3 -0
  108. package/dist/dev-dependencies/mfes-dev-libs/mf-recommendation.d.ts.map +1 -0
  109. package/dist/dev-dependencies/mfes-dev-libs/mf-recommendation.js +5 -0
  110. package/dist/dev-dependencies/mfes-dev-libs/mf-recommendation.js.map +1 -0
  111. package/dist/dev-dependencies/mfes-dev-libs/mf-search.d.ts +3 -0
  112. package/dist/dev-dependencies/mfes-dev-libs/mf-search.d.ts.map +1 -0
  113. package/dist/dev-dependencies/mfes-dev-libs/mf-search.js +5 -0
  114. package/dist/dev-dependencies/mfes-dev-libs/mf-search.js.map +1 -0
  115. package/dist/dev-dependencies/mfes-dev-libs/mf-shell.d.ts +3 -0
  116. package/dist/dev-dependencies/mfes-dev-libs/mf-shell.d.ts.map +1 -0
  117. package/dist/dev-dependencies/mfes-dev-libs/mf-shell.js +54 -0
  118. package/dist/dev-dependencies/mfes-dev-libs/mf-shell.js.map +1 -0
  119. package/dist/dev-dependencies/versions/dev-versions.d.ts +3 -0
  120. package/dist/dev-dependencies/versions/dev-versions.d.ts.map +1 -0
  121. package/dist/dev-dependencies/versions/dev-versions.js +111 -0
  122. package/dist/dev-dependencies/versions/dev-versions.js.map +1 -0
  123. package/dist/performance/perf.d.ts +7 -0
  124. package/dist/performance/perf.d.ts.map +1 -0
  125. package/dist/performance/perf.js +48 -0
  126. package/dist/performance/perf.js.map +1 -0
  127. package/dist/sync-all-deps.d.ts +7 -0
  128. package/dist/sync-all-deps.d.ts.map +1 -0
  129. package/dist/sync-all-deps.js +304 -0
  130. package/dist/sync-all-deps.js.map +1 -0
  131. package/dist/types/interfaces.d.ts +54 -0
  132. package/dist/types/interfaces.d.ts.map +1 -0
  133. package/dist/types/interfaces.js +4 -0
  134. package/dist/types/interfaces.js.map +1 -0
  135. package/dist/types/mfe-projects.d.ts +21 -0
  136. package/dist/types/mfe-projects.d.ts.map +1 -0
  137. package/dist/types/mfe-projects.js +47 -0
  138. package/dist/types/mfe-projects.js.map +1 -0
  139. package/package.json +27 -0
  140. package/test/package-lock.json +26690 -0
  141. package/test/package.json +125 -0
  142. package/todo.md +340 -0
@@ -0,0 +1,304 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ /**
4
+ * Main Dependency Synchronization Orchestrator
5
+ * Clean and focused - delegates to specialized synchronizers
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ const sync_utils_1 = require("./common/sync-utils");
9
+ const runtime_sync_1 = require("./dependencies/runtime-sync");
10
+ const dev_sync_1 = require("./dev-dependencies/dev-sync");
11
+ const mfe_projects_1 = require("./types/mfe-projects");
12
+ class DependencySynchronizer {
13
+ constructor(projectName) {
14
+ this.config = {
15
+ projectName,
16
+ syncFlag: '--sync-deps',
17
+ isRunning: false,
18
+ environment: sync_utils_1.SyncUtils.sanitizeEnvironment(process.env.NODE_ENV),
19
+ timestamp: Date.now(),
20
+ retryCount: 0,
21
+ maxRetries: 3,
22
+ backoffMs: 1000,
23
+ failureThreshold: 5
24
+ };
25
+ }
26
+ /**
27
+ * Sync all dependencies (runtime + dev)
28
+ */
29
+ async syncAll() {
30
+ console.log('🚀 Enhanced Dependency Synchronization Starting...');
31
+ console.log(`📋 Project: ${this.config.projectName}`);
32
+ console.log(`🌍 Environment: ${this.config.environment}`);
33
+ this.config.isRunning = true;
34
+ const results = [];
35
+ try {
36
+ // Pre-sync validation with error boundary
37
+ try {
38
+ const validation = await sync_utils_1.SyncUtils.validateDependencies();
39
+ if (!validation.isValid) {
40
+ console.warn('⚠️ Pre-sync validation issues:');
41
+ validation.issues.forEach(issue => console.warn(` • ${issue}`));
42
+ }
43
+ }
44
+ catch (error) {
45
+ const msg = error instanceof Error ? error.message : String(error);
46
+ console.warn('⚠️ Pre-sync validation failed:', msg);
47
+ // Continue anyway - validation failure shouldn't stop sync
48
+ }
49
+ // 1. Sync runtime dependencies with error boundary
50
+ try {
51
+ const runtimeResult = await sync_utils_1.SyncUtils.syncWithRetry('runtime-dependencies', () => runtime_sync_1.RuntimeDependenciesSync.syncRuntimeDependencies(this.config), this.config);
52
+ results.push(runtimeResult);
53
+ if (!runtimeResult.success) {
54
+ throw new Error(`Runtime dependency sync failed: ${runtimeResult.error || 'Unknown error'}`);
55
+ }
56
+ }
57
+ catch (error) {
58
+ const msg = error instanceof Error ? error.message : String(error);
59
+ console.error('❌ Critical: Runtime dependency sync failed:', msg);
60
+ throw error; // Runtime deps are critical
61
+ }
62
+ // 2. Sync dev dependencies with error boundary
63
+ try {
64
+ const devResult = await sync_utils_1.SyncUtils.syncWithRetry('dev-dependencies', () => dev_sync_1.DevDependenciesSync.syncDevDependencies(this.config), this.config);
65
+ results.push(devResult);
66
+ if (!devResult.success) {
67
+ // Dev deps failure is not critical in production
68
+ if (this.config.environment === 'production') {
69
+ console.warn('⚠️ Dev dependency sync failed (non-critical in production)');
70
+ }
71
+ else {
72
+ throw new Error(`Dev dependency sync failed: ${devResult.error || 'Unknown error'}`);
73
+ }
74
+ }
75
+ }
76
+ catch (error) {
77
+ const msg = error instanceof Error ? error.message : String(error);
78
+ if (this.config.environment === 'production') {
79
+ console.warn('⚠️ Dev dependency sync error (continuing):', msg);
80
+ }
81
+ else {
82
+ console.error('❌ Critical: Dev dependency sync failed:', msg);
83
+ throw error;
84
+ }
85
+ }
86
+ // 3. Post-sync validation with error boundary
87
+ try {
88
+ const postValidation = await sync_utils_1.SyncUtils.validateDependencies();
89
+ const validationResult = {
90
+ success: postValidation.isValid,
91
+ operation: 'post-sync-validation',
92
+ duration: 0,
93
+ error: postValidation.isValid ? undefined : postValidation.issues.join(', ')
94
+ };
95
+ results.push(validationResult);
96
+ }
97
+ catch (error) {
98
+ const msg = error instanceof Error ? error.message : String(error);
99
+ console.warn('⚠️ Post-sync validation failed:', msg);
100
+ // Continue - validation failure is not critical
101
+ }
102
+ // Write and install with error boundaries
103
+ try {
104
+ const counts = await sync_utils_1.SyncUtils.writeQueuedToPackageJson();
105
+ // Use the new fast chunked installation for large dependency sets
106
+ console.log('🚀 Using fast chunked installation for optimal performance...');
107
+ await sync_utils_1.SyncUtils.installQueuedFast();
108
+ }
109
+ catch (error) {
110
+ const msg = error instanceof Error ? error.message : String(error);
111
+ console.error('❌ Failed to write or install dependencies:', msg);
112
+ throw error; // This is critical
113
+ }
114
+ // Summary report
115
+ this.printSummary(results);
116
+ }
117
+ catch (error) {
118
+ const errorMessage = error instanceof Error ? error.message : String(error);
119
+ console.error('💥 Critical error during synchronization:', errorMessage);
120
+ // Attempt to provide recovery suggestions
121
+ console.error('\n📋 Recovery Suggestions:');
122
+ console.error(' 1. Check your network connection');
123
+ console.error(' 2. Verify package.json exists and is valid');
124
+ console.error(' 3. Try running: npm cache clean --force');
125
+ console.error(' 4. Check npm registry accessibility: npm ping');
126
+ process.exit(1);
127
+ }
128
+ finally {
129
+ // Always reset running state
130
+ this.config.isRunning = false;
131
+ }
132
+ }
133
+ /**
134
+ * Sync only runtime dependencies (production mode)
135
+ */
136
+ async syncRuntime() {
137
+ console.log('📦 Runtime Dependencies Sync Starting...');
138
+ this.config.isRunning = true;
139
+ try {
140
+ const result = await sync_utils_1.SyncUtils.syncWithRetry('runtime-dependencies', () => runtime_sync_1.RuntimeDependenciesSync.syncRuntimeDependencies(this.config), this.config);
141
+ if (result.success) {
142
+ try {
143
+ // Batching finalize for runtime only
144
+ const counts = await sync_utils_1.SyncUtils.writeQueuedToPackageJson();
145
+ await sync_utils_1.SyncUtils.installQueuedOnce();
146
+ console.log('✅ Runtime dependencies synchronized successfully!');
147
+ }
148
+ catch (error) {
149
+ const msg = error instanceof Error ? error.message : String(error);
150
+ console.error('❌ Failed to finalize installation:', msg);
151
+ throw error;
152
+ }
153
+ }
154
+ else {
155
+ console.error('❌ Runtime dependency sync failed:', result.error || 'Unknown error');
156
+ // Provide recovery suggestions
157
+ console.error('\n📋 Recovery Suggestions:');
158
+ console.error(' 1. Check network connection and npm registry access');
159
+ console.error(' 2. Verify all package versions are valid');
160
+ console.error(' 3. Try: npm cache clean --force');
161
+ process.exit(1);
162
+ }
163
+ }
164
+ catch (error) {
165
+ const errorMessage = error instanceof Error ? error.message : String(error);
166
+ console.error('💥 Critical error during runtime sync:', errorMessage);
167
+ // Stack trace in development
168
+ if (this.config.environment === 'development' && error instanceof Error && error.stack) {
169
+ console.error('\n📚 Stack trace:');
170
+ console.error(error.stack);
171
+ }
172
+ process.exit(1);
173
+ }
174
+ finally {
175
+ // Always reset running state
176
+ this.config.isRunning = false;
177
+ }
178
+ }
179
+ printSummary(results) {
180
+ const totalTime = results.reduce((sum, r) => sum + r.duration, 0);
181
+ const successCount = results.filter(r => r.success).length;
182
+ const totalPackages = results.reduce((sum, r) => sum + (r.packagesSynced || 0), 0);
183
+ console.log('\n📈 Synchronization Summary:');
184
+ console.log('═'.repeat(40));
185
+ console.log(`✅ Successful operations: ${successCount}/${results.length}`);
186
+ console.log(`⏱️ Total time: ${totalTime.toFixed(2)}ms`);
187
+ console.log(`📦 Total packages processed: ${totalPackages}`);
188
+ if (successCount === results.length) {
189
+ console.log('\n🎉 All operations completed successfully!');
190
+ process.exit(0);
191
+ }
192
+ else {
193
+ console.error('\n❌ Some operations failed. Check logs above.');
194
+ process.exit(1);
195
+ }
196
+ }
197
+ }
198
+ /**
199
+ * Parse arguments to extract project name and mode
200
+ */
201
+ function parseArgs(args) {
202
+ let projectName = null;
203
+ let mode = 'development';
204
+ // Check for production mode flag
205
+ if (args.includes('--production') || args.includes('--runtime')) {
206
+ mode = 'production';
207
+ }
208
+ // Find project name (any arg starting with -- that's a valid MFE project)
209
+ for (const arg of args) {
210
+ if (arg.startsWith('--') && !['--production', '--runtime'].includes(arg)) {
211
+ // Sanitize the argument before processing
212
+ const sanitizedArg = sync_utils_1.SyncUtils.sanitizeArgument(arg);
213
+ const candidateProject = sanitizedArg.slice(2); // Remove --
214
+ if ((0, mfe_projects_1.isValidMFEProject)(candidateProject)) {
215
+ projectName = candidateProject;
216
+ break;
217
+ }
218
+ }
219
+ }
220
+ return { projectName, mode };
221
+ }
222
+ /**
223
+ * Show usage help
224
+ */
225
+ function showHelp() {
226
+ console.log('🚀 Dependency Synchronization Tool\n');
227
+ console.log('Usage:');
228
+ console.log(' sync-all-deps --<project-name> # Development (runtime + all dev tools)');
229
+ console.log(' sync-all-deps --<project-name> --production # Production (runtime only)');
230
+ console.log(' sync-all-deps --help # Show this help');
231
+ console.log(' sync-all-deps --list # List available projects\n');
232
+ console.log('Available Projects:');
233
+ mfe_projects_1.MicroFrontends.forEach(project => {
234
+ console.log(` --${project}`);
235
+ });
236
+ console.log('\n📋 Mode Descriptions:');
237
+ console.log(' Development: Full sync with runtime + all dev tools (linting, testing, etc.)');
238
+ console.log(' Production: Runtime only (for Docker images after build)');
239
+ console.log('\nExamples:');
240
+ console.log(' sync-all-deps --mf-header # Development mode');
241
+ console.log(' sync-all-deps --mf-header --production # Production container');
242
+ }
243
+ /**
244
+ * List available projects
245
+ */
246
+ function listProjects() {
247
+ console.log('📋 Available MFE Projects:\n');
248
+ mfe_projects_1.MicroFrontends.forEach((project, index) => {
249
+ console.log(` ${index + 1}. ${project}`);
250
+ });
251
+ console.log(`\nTotal: ${mfe_projects_1.MicroFrontends.length} projects`);
252
+ }
253
+ // Command line interface
254
+ async function main() {
255
+ const args = process.argv.slice(2);
256
+ // Handle help and list commands first
257
+ if (args.includes('--help') || args.length === 0) {
258
+ showHelp();
259
+ return;
260
+ }
261
+ if (args.includes('--list')) {
262
+ listProjects();
263
+ return;
264
+ }
265
+ try {
266
+ // Parse arguments
267
+ const { projectName, mode } = parseArgs(args);
268
+ if (!projectName) {
269
+ console.error('❌ Invalid or missing project name!\n');
270
+ console.error('Usage: sync-all-deps --<project-name> [--production]');
271
+ console.error('Example: sync-all-deps --mf-header\n');
272
+ console.error('Available projects:');
273
+ mfe_projects_1.MicroFrontends.forEach(project => console.error(` --${project}`));
274
+ process.exit(1);
275
+ }
276
+ console.log(`🎯 Target Project: ${projectName}`);
277
+ console.log(`🔧 Mode: ${mode}`);
278
+ const synchronizer = new DependencySynchronizer(projectName);
279
+ if (mode === 'production') {
280
+ // Production: runtime dependencies only (for containers)
281
+ console.log('📦 Production mode: Runtime dependencies only');
282
+ await synchronizer.syncRuntime();
283
+ }
284
+ else {
285
+ // Development: everything
286
+ console.log('🛠️ Development mode: Full sync (runtime + all dev tools)');
287
+ await synchronizer.syncAll();
288
+ }
289
+ }
290
+ catch (error) {
291
+ const errorMessage = error instanceof Error ? error.message : String(error);
292
+ console.error('💥 Synchronization failed:', errorMessage);
293
+ process.exit(1);
294
+ }
295
+ }
296
+ // Execute if called directly
297
+ if (require.main === module) {
298
+ main().catch(error => {
299
+ const errorMessage = error instanceof Error ? error.message : String(error);
300
+ console.error('💥 Unhandled error:', errorMessage);
301
+ process.exit(1);
302
+ });
303
+ }
304
+ //# sourceMappingURL=sync-all-deps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-all-deps.js","sourceRoot":"","sources":["../src/sync-all-deps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import { ValidMFEProject } from './mfe-projects';
2
+ export type { ValidMFEProject } from './mfe-projects';
3
+ export interface PackageInfo {
4
+ name: string;
5
+ version: string;
6
+ }
7
+ export interface LibraryCategory {
8
+ [key: string]: PackageInfo;
9
+ }
10
+ export interface LibrariesConfig {
11
+ [categoryName: string]: LibraryCategory;
12
+ }
13
+ export interface MFEConfig {
14
+ [packageKey: string]: PackageInfo;
15
+ }
16
+ export type MFEConfigSpread = Record<string, PackageInfo | string>;
17
+ export interface ProjectsConfig {
18
+ [projectName: string]: MFEConfig;
19
+ }
20
+ export interface VersionsConfig {
21
+ [versionKey: string]: string;
22
+ }
23
+ export interface ValidationResult {
24
+ isValid: boolean;
25
+ issues: string[];
26
+ }
27
+ export interface SyncResult {
28
+ success: boolean;
29
+ operation: string;
30
+ duration: number;
31
+ error?: string;
32
+ packagesSynced?: number;
33
+ skippedPackages?: string[];
34
+ }
35
+ export type MFEProjectName = ValidMFEProject;
36
+ export type NodeEnvironment = 'development' | 'production' | 'test';
37
+ export interface SyncConfig {
38
+ projectName: MFEProjectName;
39
+ syncFlag: string;
40
+ isRunning: boolean;
41
+ environment: NodeEnvironment;
42
+ timestamp: number;
43
+ retryCount: number;
44
+ maxRetries: number;
45
+ backoffMs: number;
46
+ failureThreshold: number;
47
+ }
48
+ export interface DependencyError extends Error {
49
+ code: 'INVALID_VERSION' | 'PACKAGE_NOT_FOUND' | 'NETWORK_ERROR' | 'VALIDATION_FAILED';
50
+ packageName?: string;
51
+ timestamp: number;
52
+ recoverable: boolean;
53
+ }
54
+ //# sourceMappingURL=interfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/types/interfaces.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD,YAAY,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEtD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,CAAC;CAC5B;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,YAAY,EAAE,MAAM,GAAG,eAAe,CAAC;CACzC;AAED,MAAM,WAAW,SAAS;IACxB,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CAAC;CACnC;AAGD,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,CAAC,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC7B,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC;AAED,MAAM,WAAW,cAAc;IAC7B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;CAC9B;AAGD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAGD,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAGD,MAAM,MAAM,cAAc,GAAG,eAAe,CAAC;AAG7C,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG,YAAY,GAAG,MAAM,CAAC;AAGpE,MAAM,WAAW,UAAU;IACzB,WAAW,EAAE,cAAc,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,eAAe,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAGD,MAAM,WAAW,eAAgB,SAAQ,KAAK;IAC5C,IAAI,EAAE,iBAAiB,GAAG,mBAAmB,GAAG,eAAe,GAAG,mBAAmB,CAAC;IACtF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACtB"}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ // Core interfaces for dependency management system
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ //# sourceMappingURL=interfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/types/interfaces.ts"],"names":[],"mappings":";AAAA,mDAAmD"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Centralized MicroFrontend Projects Registry
3
+ * This is the single source of truth for all valid MFE project names
4
+ * Used for parameter validation across the dependency management system
5
+ */
6
+ export declare const MicroFrontends: readonly ["mf-footer", "mf-header", "mf-autocomplete", "mf-search", "mf-recommendation", "mf-pdp", "mf-add-to-cart", "mf-account", "mf-cms", "mf-shell"];
7
+ export type ValidMFEProject = typeof MicroFrontends[number];
8
+ export declare const ValidMFESet: Set<"mf-footer" | "mf-header" | "mf-autocomplete" | "mf-search" | "mf-recommendation" | "mf-pdp" | "mf-add-to-cart" | "mf-account" | "mf-cms" | "mf-shell">;
9
+ /**
10
+ * Validates if a project name is a valid MFE
11
+ */
12
+ export declare function isValidMFEProject(projectName: string): projectName is ValidMFEProject;
13
+ /**
14
+ * Gets all available MFE project names
15
+ */
16
+ export declare function getAvailableMFEProjects(): readonly string[];
17
+ /**
18
+ * Validates and throws error if project name is invalid
19
+ */
20
+ export declare function validateMFEProject(projectName: string): ValidMFEProject;
21
+ //# sourceMappingURL=mfe-projects.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mfe-projects.d.ts","sourceRoot":"","sources":["../../src/types/mfe-projects.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,cAAc,0JAWjB,CAAC;AAGX,MAAM,MAAM,eAAe,GAAG,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;AAG5D,eAAO,MAAM,WAAW,6JAA0B,CAAC;AAEnD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,IAAI,eAAe,CAErF;AAED;;GAEG;AACH,wBAAgB,uBAAuB,IAAI,SAAS,MAAM,EAAE,CAE3D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,CAKvE"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ /**
3
+ * Centralized MicroFrontend Projects Registry
4
+ * This is the single source of truth for all valid MFE project names
5
+ * Used for parameter validation across the dependency management system
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ValidMFESet = exports.MicroFrontends = void 0;
9
+ exports.isValidMFEProject = isValidMFEProject;
10
+ exports.getAvailableMFEProjects = getAvailableMFEProjects;
11
+ exports.validateMFEProject = validateMFEProject;
12
+ exports.MicroFrontends = [
13
+ 'mf-footer',
14
+ 'mf-header',
15
+ 'mf-autocomplete', //ok
16
+ 'mf-search',
17
+ 'mf-recommendation', // ok
18
+ 'mf-pdp', // Fiche produit
19
+ 'mf-add-to-cart', // ok
20
+ 'mf-account',
21
+ 'mf-cms', // hybris
22
+ 'mf-shell'
23
+ ];
24
+ // Set for fast lookup validation
25
+ exports.ValidMFESet = new Set(exports.MicroFrontends);
26
+ /**
27
+ * Validates if a project name is a valid MFE
28
+ */
29
+ function isValidMFEProject(projectName) {
30
+ return exports.ValidMFESet.has(projectName);
31
+ }
32
+ /**
33
+ * Gets all available MFE project names
34
+ */
35
+ function getAvailableMFEProjects() {
36
+ return exports.MicroFrontends;
37
+ }
38
+ /**
39
+ * Validates and throws error if project name is invalid
40
+ */
41
+ function validateMFEProject(projectName) {
42
+ if (!isValidMFEProject(projectName)) {
43
+ throw new Error(`Invalid MFE project: ${projectName}. Valid projects: ${exports.MicroFrontends.join(', ')}`);
44
+ }
45
+ return projectName;
46
+ }
47
+ //# sourceMappingURL=mfe-projects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mfe-projects.js","sourceRoot":"","sources":["../../src/types/mfe-projects.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAwBH,8CAEC;AAKD,0DAEC;AAKD,gDAKC;AAzCY,QAAA,cAAc,GAAG;IAC1B,WAAW;IACX,WAAW;IACX,iBAAiB,EAAC,KAAK;IACvB,WAAW;IACX,mBAAmB,EAAC,MAAM;IAC1B,QAAQ,EAAE,iBAAiB;IAC3B,gBAAgB,EAAE,OAAO;IACzB,YAAY;IACZ,QAAQ,EAAE,UAAU;IACpB,UAAU;CACJ,CAAC;AAKX,iCAAiC;AACpB,QAAA,WAAW,GAAG,IAAI,GAAG,CAAC,sBAAc,CAAC,CAAC;AAEnD;;GAEG;AACH,SAAgB,iBAAiB,CAAC,WAAmB;IACjD,OAAO,mBAAW,CAAC,GAAG,CAAC,WAA8B,CAAC,CAAC;AAC3D,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB;IACnC,OAAO,sBAAc,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,WAAmB;IAClD,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,wBAAwB,WAAW,qBAAqB,sBAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzG,CAAC;IACD,OAAO,WAAW,CAAC;AACvB,CAAC"}
package/package.json ADDED
@@ -0,0 +1,27 @@
1
+ {
2
+ "name": "@houssem__/xxxx",
3
+ "version": "7.0.3",
4
+ "description": "Centralized dependency management for micro-frontend projects - TypeScript Edition",
5
+ "main": "./dist/sync-all-deps.js",
6
+ "types": "./dist/sync-all-deps.d.ts",
7
+ "bin": {
8
+ "sync-all-deps": "./dist/sync-all-deps.js",
9
+ "sync-deps": "./dist/dependencies/sync-deps.js",
10
+ "sync-dev-deps": "./dist/dev-deps/sync-dev-deps.js"
11
+ },
12
+ "scripts": {
13
+ "build": "tsc",
14
+ "prebuild": "rimraf dist",
15
+ "prepublishOnly": "npm run build",
16
+ "perf": "npm run build && node dist/performance/perf.js",
17
+ "install:fast": "npm ci --no-audit --no-fund --prefer-offline",
18
+ "cache:optimize": "npm cache verify && npm config set prefer-offline true",
19
+ "deps:clean": "rm -rf node_modules package-lock.json && npm cache clean --force"
20
+ },
21
+ "devDependencies": {
22
+ "@types/node": "^22.19.1",
23
+ "rimraf": "^5.0.10",
24
+ "typescript": "^5.6.3"
25
+ },
26
+ "dependencies": {}
27
+ }