entkapp 5.5.0 → 5.6.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 (62) hide show
  1. package/README.md +1 -1
  2. package/bin/cli.js +2 -2
  3. package/bin/cli.mjs +175 -0
  4. package/index.cjs +18 -0
  5. package/index.mjs +51 -0
  6. package/package.json +7 -6
  7. package/src/EngineContext.mjs +428 -0
  8. package/src/Initializer.mjs +82 -0
  9. package/src/analyzers/CodeSmellAnalyzer.mjs +106 -0
  10. package/src/analyzers/OxcAnalyzer.mjs +11 -0
  11. package/src/api/HeadlessAPI.js +31 -16
  12. package/src/api/HeadlessAPI.mjs +369 -0
  13. package/src/api/PluginSDK.mjs +135 -0
  14. package/src/ast/ASTAnalyzer.js +17 -3
  15. package/src/ast/ASTAnalyzer.mjs +742 -0
  16. package/src/ast/AdvancedAnalysis.mjs +586 -0
  17. package/src/ast/BarrelParser.mjs +230 -0
  18. package/src/ast/DeadCodeDetector.js +7 -5
  19. package/src/ast/DeadCodeDetector.mjs +92 -0
  20. package/src/ast/MagicDetector.mjs +203 -0
  21. package/src/ast/OxcAnalyzer.mjs +188 -0
  22. package/src/ast/SecretScanner.mjs +374 -0
  23. package/src/healing/GitSandbox.mjs +82 -0
  24. package/src/healing/SelfHealer.mjs +48 -0
  25. package/src/index.js +37 -1
  26. package/src/index.mjs +1176 -0
  27. package/src/performance/GraphCache.mjs +108 -0
  28. package/src/performance/SupplyChainGuard.mjs +92 -0
  29. package/src/performance/WorkerPool.mjs +132 -0
  30. package/src/performance/WorkerTaskRunner.mjs +144 -0
  31. package/src/plugins/BasePlugin.mjs +240 -0
  32. package/src/plugins/PluginRegistry.mjs +203 -0
  33. package/src/plugins/ecosystems/BackendServices.mjs +197 -0
  34. package/src/plugins/ecosystems/GenericPlugins.mjs +142 -0
  35. package/src/plugins/ecosystems/ModernFrameworks.mjs +162 -0
  36. package/src/plugins/ecosystems/MorePlugins.mjs +562 -0
  37. package/src/plugins/ecosystems/NewPlugins.mjs +526 -0
  38. package/src/plugins/ecosystems/NextJsPlugin.mjs +45 -0
  39. package/src/plugins/ecosystems/PluginLoader.mjs +193 -0
  40. package/src/plugins/ecosystems/TypeScriptPlugin.mjs +56 -0
  41. package/src/plugins/ecosystems/UltimateBundle.mjs +1182 -0
  42. package/src/refractor/ImpactAnalyzer.mjs +92 -0
  43. package/src/refractor/SourceRewriter.mjs +86 -0
  44. package/src/refractor/TransactionManager.mjs +5 -0
  45. package/src/refractor/TypeIntegrity.mjs +4 -0
  46. package/src/resolution/BuildOrchestrator.mjs +46 -0
  47. package/src/resolution/CircularDetector.mjs +91 -0
  48. package/src/resolution/ConfigGenerator.mjs +83 -0
  49. package/src/resolution/ConfigLoader.mjs +94 -0
  50. package/src/resolution/DepencyResolver.mjs +66 -0
  51. package/src/resolution/DependencyFixer.mjs +88 -0
  52. package/src/resolution/DependencyProfiler.mjs +286 -0
  53. package/src/resolution/EntryPointDetector.mjs +134 -0
  54. package/src/resolution/FrameworkConfigParser.mjs +119 -0
  55. package/src/resolution/GraphAnalyzer.mjs +80 -0
  56. package/src/resolution/MigrationAnalyzer.mjs +60 -0
  57. package/src/resolution/PathMapper.mjs +82 -0
  58. package/src/resolution/TSConfigLoader.mjs +162 -0
  59. package/src/resolution/WorkSpaceGraph.mjs +183 -0
  60. package/src/resolution/WorkspaceDiagnostic.mjs +139 -0
  61. package/test.js +76 -0
  62. package/wrangler.toml +6 -0
@@ -0,0 +1,193 @@
1
+ /**
2
+ * ============================================================================
3
+ * Plugin Loader for entkapp v5.0.0
4
+ * ============================================================================
5
+ * Registers all built-in plugins from all ecosystem bundles.
6
+ * v5.0.0: Added 40+ new plugins with full dependency detection support.
7
+ */
8
+ import {
9
+ TailwindPlugin, PostcssPlugin, UnoCSSPlugin, StylelintPlugin,
10
+ JestPlugin, VitestPlugin, PlaywrightPlugin, CypressPlugin, StorybookPlugin, MswPlugin,
11
+ EslintPlugin, PrettierPlugin, BiomePlugin, OxlintPlugin,
12
+ HuskyPlugin, LintStagedPlugin, CommitlintPlugin, ChangesetPlugin,
13
+ BabelPlugin, SWCPlugin,
14
+ VitePlugin, EsbuildPlugin, RollupPlugin, WebpackPlugin, ParcelPlugin,
15
+ TurboPlugin, NxPlugin,
16
+ GithubActionsPlugin, DockerPlugin, TerraformPlugin,
17
+ EditorConfigPlugin, NvmPlugin, VoltaPlugin, DotenvPlugin,
18
+ PnpmPlugin, YarnPlugin, BunPlugin,
19
+ SwiperPlugin, QuillPlugin, EnvelopPlugin,
20
+ } from './MorePlugins.mjs';
21
+
22
+ import {
23
+ ReduxPlugin, ZustandPlugin, JotaiPlugin, RecoilPlugin, MobXPlugin, PiniaPlugin, TanStackQueryPlugin,
24
+ ReactRouterPlugin, TanStackRouterPlugin, VueRouterPlugin,
25
+ AntdPlugin, MuiPlugin, ShadcnPlugin, RadixUIPlugin, ChakraUIPlugin,
26
+ FramerMotionPlugin, GSAPPlugin,
27
+ ZodPlugin, YupPlugin, ValibotPlugin,
28
+ I18nextPlugin, VueI18nPlugin,
29
+ SentryPlugin, OpenTelemetryPlugin,
30
+ ExpressPlugin, FastifyPlugin, NestJsPlugin, HonoPlugin, KoaPlugin, ElysiaPlugin,
31
+ SocketIoPlugin,
32
+ } from './NewPlugins.mjs';
33
+
34
+ import {
35
+ GraphQLPlugin, ApolloPlugin, DatabasePlugin, PrismaPlugin, DrizzlePlugin, MongoosePlugin,
36
+ SupabasePlugin, FirebasePlugin, ClerkPlugin, TRPCPlugin,
37
+ } from './BackendServices.mjs';
38
+
39
+ import {
40
+ NuxtPlugin, RemixPlugin, SvelteKitPlugin, AstroPlugin, VitepressPlugin, GatsbyPlugin, RedwoodPlugin,
41
+ } from './GenericPlugins.mjs';
42
+
43
+ import {
44
+ ReactPlugin, VuePlugin, SveltePlugin, AngularPlugin, PreactPlugin, SolidPlugin, QwikPlugin, LitPlugin,
45
+ } from './ModernFrameworks.mjs';
46
+
47
+ export function loadAdditionalPlugins(registry) {
48
+ const ctx = registry.context;
49
+
50
+ // ── Frontend Frameworks ──────────────────────────────────────────────────
51
+ registry.register(new ReactPlugin(ctx));
52
+ registry.register(new VuePlugin(ctx));
53
+ registry.register(new SveltePlugin(ctx));
54
+ registry.register(new AngularPlugin(ctx));
55
+ registry.register(new PreactPlugin(ctx));
56
+ registry.register(new SolidPlugin(ctx));
57
+ registry.register(new QwikPlugin(ctx));
58
+ registry.register(new LitPlugin(ctx));
59
+
60
+ // ── Meta-Frameworks ──────────────────────────────────────────────────────
61
+ registry.register(new NuxtPlugin(ctx));
62
+ registry.register(new RemixPlugin(ctx));
63
+ registry.register(new SvelteKitPlugin(ctx));
64
+ registry.register(new AstroPlugin(ctx));
65
+ registry.register(new VitepressPlugin(ctx));
66
+ registry.register(new GatsbyPlugin(ctx));
67
+ registry.register(new RedwoodPlugin(ctx));
68
+
69
+ // ── Backend Frameworks ───────────────────────────────────────────────────
70
+ registry.register(new ExpressPlugin(ctx));
71
+ registry.register(new FastifyPlugin(ctx));
72
+ registry.register(new NestJsPlugin(ctx));
73
+ registry.register(new HonoPlugin(ctx));
74
+ registry.register(new KoaPlugin(ctx));
75
+ registry.register(new ElysiaPlugin(ctx));
76
+
77
+ // ── Data / API ───────────────────────────────────────────────────────────
78
+ registry.register(new GraphQLPlugin(ctx));
79
+ registry.register(new ApolloPlugin(ctx));
80
+ registry.register(new TRPCPlugin(ctx));
81
+ registry.register(new DatabasePlugin(ctx));
82
+ registry.register(new PrismaPlugin(ctx));
83
+ registry.register(new DrizzlePlugin(ctx));
84
+ registry.register(new MongoosePlugin(ctx));
85
+
86
+ // ── BaaS / Auth ──────────────────────────────────────────────────────────
87
+ registry.register(new SupabasePlugin(ctx));
88
+ registry.register(new FirebasePlugin(ctx));
89
+ registry.register(new ClerkPlugin(ctx));
90
+
91
+ // ── State Management ─────────────────────────────────────────────────────
92
+ registry.register(new ReduxPlugin(ctx));
93
+ registry.register(new ZustandPlugin(ctx));
94
+ registry.register(new JotaiPlugin(ctx));
95
+ registry.register(new RecoilPlugin(ctx));
96
+ registry.register(new MobXPlugin(ctx));
97
+ registry.register(new PiniaPlugin(ctx));
98
+ registry.register(new TanStackQueryPlugin(ctx));
99
+
100
+ // ── Routing ──────────────────────────────────────────────────────────────
101
+ registry.register(new ReactRouterPlugin(ctx));
102
+ registry.register(new TanStackRouterPlugin(ctx));
103
+ registry.register(new VueRouterPlugin(ctx));
104
+
105
+ // ── UI Components ────────────────────────────────────────────────────────
106
+ registry.register(new AntdPlugin(ctx));
107
+ registry.register(new MuiPlugin(ctx));
108
+ registry.register(new ShadcnPlugin(ctx));
109
+ registry.register(new RadixUIPlugin(ctx));
110
+ registry.register(new ChakraUIPlugin(ctx));
111
+
112
+ // ── Animation ────────────────────────────────────────────────────────────
113
+ registry.register(new FramerMotionPlugin(ctx));
114
+ registry.register(new GSAPPlugin(ctx));
115
+
116
+ // ── Validation ───────────────────────────────────────────────────────────
117
+ registry.register(new ZodPlugin(ctx));
118
+ registry.register(new YupPlugin(ctx));
119
+ registry.register(new ValibotPlugin(ctx));
120
+
121
+ // ── Internationalisation ─────────────────────────────────────────────────
122
+ registry.register(new I18nextPlugin(ctx));
123
+ registry.register(new VueI18nPlugin(ctx));
124
+
125
+ // ── Monitoring ───────────────────────────────────────────────────────────
126
+ registry.register(new SentryPlugin(ctx));
127
+ registry.register(new OpenTelemetryPlugin(ctx));
128
+
129
+ // ── Real-time ────────────────────────────────────────────────────────────
130
+ registry.register(new SocketIoPlugin(ctx));
131
+
132
+ // ── CSS / Styling ────────────────────────────────────────────────────────
133
+ registry.register(new TailwindPlugin(ctx));
134
+ registry.register(new PostcssPlugin(ctx));
135
+ registry.register(new UnoCSSPlugin(ctx));
136
+ registry.register(new StylelintPlugin(ctx));
137
+
138
+ // ── Linting / Formatting ─────────────────────────────────────────────────
139
+ registry.register(new EslintPlugin(ctx));
140
+ registry.register(new PrettierPlugin(ctx));
141
+ registry.register(new BiomePlugin(ctx));
142
+ registry.register(new OxlintPlugin(ctx));
143
+
144
+ // ── Git Hooks / Commit ───────────────────────────────────────────────────
145
+ registry.register(new HuskyPlugin(ctx));
146
+ registry.register(new LintStagedPlugin(ctx));
147
+ registry.register(new CommitlintPlugin(ctx));
148
+ registry.register(new ChangesetPlugin(ctx));
149
+
150
+ // ── Transpilers ──────────────────────────────────────────────────────────
151
+ registry.register(new BabelPlugin(ctx));
152
+ registry.register(new SWCPlugin(ctx));
153
+
154
+ // ── Build Tools ──────────────────────────────────────────────────────────
155
+ registry.register(new VitePlugin(ctx));
156
+ registry.register(new EsbuildPlugin(ctx));
157
+ registry.register(new RollupPlugin(ctx));
158
+ registry.register(new WebpackPlugin(ctx));
159
+ registry.register(new ParcelPlugin(ctx));
160
+
161
+ // ── Monorepo ─────────────────────────────────────────────────────────────
162
+ registry.register(new TurboPlugin(ctx));
163
+ registry.register(new NxPlugin(ctx));
164
+
165
+ // ── Testing ──────────────────────────────────────────────────────────────
166
+ registry.register(new JestPlugin(ctx));
167
+ registry.register(new VitestPlugin(ctx));
168
+ registry.register(new PlaywrightPlugin(ctx));
169
+ registry.register(new CypressPlugin(ctx));
170
+ registry.register(new StorybookPlugin(ctx));
171
+ registry.register(new MswPlugin(ctx));
172
+
173
+ // ── CI / Infra ───────────────────────────────────────────────────────────
174
+ registry.register(new GithubActionsPlugin(ctx));
175
+ registry.register(new DockerPlugin(ctx));
176
+ registry.register(new TerraformPlugin(ctx));
177
+
178
+ // ── Dev Environment ──────────────────────────────────────────────────────
179
+ registry.register(new EditorConfigPlugin(ctx));
180
+ registry.register(new NvmPlugin(ctx));
181
+ registry.register(new VoltaPlugin(ctx));
182
+ registry.register(new DotenvPlugin(ctx));
183
+
184
+ // ── Package Managers ─────────────────────────────────────────────────────
185
+ registry.register(new PnpmPlugin(ctx));
186
+ registry.register(new YarnPlugin(ctx));
187
+ registry.register(new BunPlugin(ctx));
188
+
189
+ // ── Misc Utilities ───────────────────────────────────────────────────────
190
+ registry.register(new SwiperPlugin(ctx));
191
+ registry.register(new QuillPlugin(ctx));
192
+ registry.register(new EnvelopPlugin(ctx));
193
+ }
@@ -0,0 +1,56 @@
1
+ import path from 'path';
2
+ import fs from 'fs/promises';
3
+ import { BasePlugin } from '../BasePlugin.mjs';
4
+
5
+ /**
6
+ * TypeScript Plugin for entkapp v5.0.0.
7
+ * Handles tsconfig.json detection, TypeScript-specific entry points,
8
+ * and missing dependency detection.
9
+ */
10
+ export class TypeScriptPlugin extends BasePlugin {
11
+ get name() {
12
+ return 'typescript';
13
+ }
14
+ getConfigFiles() {
15
+ return ['tsconfig.json', 'tsconfig.base.json', 'tsconfig.eslint.json', 'tsconfig.node.json', 'tsconfig.app.json'];
16
+ }
17
+ getRequiredPackages() {
18
+ return [
19
+ { name: 'typescript', dev: true },
20
+ { name: '@types/node', dev: true, optional: true },
21
+ ];
22
+ }
23
+ getRoutePatterns() {
24
+ return [
25
+ /src\/index\.ts$/,
26
+ /src\/main\.ts$/,
27
+ /src\/lib\.ts$/,
28
+ /.*\.d\.ts$/
29
+ ];
30
+ }
31
+ getRequiredSystemContracts() {
32
+ return ['default'];
33
+ }
34
+ /**
35
+ * Custom Getter for v3.2.0: Get the compiler version from the project.
36
+ */
37
+ async getCompilerVersion() {
38
+ try {
39
+ const packageJsonPath = path.join(this.context.cwd, 'package.json');
40
+ const content = await fs.readFile(packageJsonPath, 'utf8');
41
+ const pkg = JSON.parse(content);
42
+ return pkg.devDependencies?.typescript || pkg.dependencies?.typescript || 'unknown';
43
+ } catch {
44
+ return 'not installed';
45
+ }
46
+ }
47
+ async isActive(baseDir) {
48
+ for (const file of this.getConfigFiles()) {
49
+ try {
50
+ await fs.access(path.join(baseDir, file));
51
+ return true;
52
+ } catch {}
53
+ }
54
+ return false;
55
+ }
56
+ }