logicstamp-context 0.3.2 → 0.3.4

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 (43) hide show
  1. package/LLM_CONTEXT.md +3 -3
  2. package/README.md +60 -59
  3. package/dist/cli/commands/context/bundleFormatter.d.ts +2 -2
  4. package/dist/cli/commands/context/bundleFormatter.d.ts.map +1 -1
  5. package/dist/cli/commands/context/bundleFormatter.js +10 -1
  6. package/dist/cli/commands/context/bundleFormatter.js.map +1 -1
  7. package/dist/cli/commands/context/fileWriter.d.ts +1 -1
  8. package/dist/cli/commands/context/fileWriter.d.ts.map +1 -1
  9. package/dist/cli/commands/context/fileWriter.js +6 -3
  10. package/dist/cli/commands/context/fileWriter.js.map +1 -1
  11. package/dist/cli/commands/context/statsCalculator.d.ts +1 -1
  12. package/dist/cli/commands/context/statsCalculator.d.ts.map +1 -1
  13. package/dist/cli/commands/context/tokenEstimator.d.ts +1 -1
  14. package/dist/cli/commands/context/tokenEstimator.d.ts.map +1 -1
  15. package/dist/cli/commands/context.d.ts +1 -1
  16. package/dist/cli/commands/context.d.ts.map +1 -1
  17. package/dist/cli/commands/init.d.ts.map +1 -1
  18. package/dist/cli/commands/init.js +2 -0
  19. package/dist/cli/commands/init.js.map +1 -1
  20. package/dist/cli/index.js.map +1 -1
  21. package/dist/cli/parser/argumentParser.js.map +1 -1
  22. package/dist/cli/parser/helpText.d.ts.map +1 -1
  23. package/dist/cli/parser/helpText.js +4 -2
  24. package/dist/cli/parser/helpText.js.map +1 -1
  25. package/dist/core/astParser/detectors.d.ts.map +1 -1
  26. package/dist/core/astParser/detectors.js +141 -0
  27. package/dist/core/astParser/detectors.js.map +1 -1
  28. package/dist/core/astParser/extractors/vueComponentExtractor.d.ts +38 -0
  29. package/dist/core/astParser/extractors/vueComponentExtractor.d.ts.map +1 -0
  30. package/dist/core/astParser/extractors/vueComponentExtractor.js +630 -0
  31. package/dist/core/astParser/extractors/vueComponentExtractor.js.map +1 -0
  32. package/dist/core/astParser.d.ts.map +1 -1
  33. package/dist/core/astParser.js +23 -5
  34. package/dist/core/astParser.js.map +1 -1
  35. package/dist/core/pack.d.ts +1 -1
  36. package/dist/core/pack.d.ts.map +1 -1
  37. package/dist/types/UIFContract.d.ts +1 -1
  38. package/dist/types/UIFContract.d.ts.map +1 -1
  39. package/dist/utils/gitignore.d.ts.map +1 -1
  40. package/dist/utils/gitignore.js +2 -0
  41. package/dist/utils/gitignore.js.map +1 -1
  42. package/package.json +9 -8
  43. package/schema/logicstamp.context.schema.json +3 -3
@@ -89,6 +89,122 @@ export function extractNextJsMetadata(source, filePath) {
89
89
  }
90
90
  return undefined;
91
91
  }
92
+ /**
93
+ * Check if the main export is a Vue composable function (starts with "use")
94
+ */
95
+ function isMainExportAVueComposable(source, imports) {
96
+ // Must have Vue imports
97
+ const hasVueImport = imports.some(imp => imp === 'vue' || imp.startsWith('vue/'));
98
+ if (!hasVueImport)
99
+ return false;
100
+ try {
101
+ const statements = source.getStatements();
102
+ for (const stmt of statements) {
103
+ const kind = stmt.getKind();
104
+ const modifiers = stmt.getModifiers?.() || [];
105
+ let hasExport = false;
106
+ let isDefault = false;
107
+ for (const mod of modifiers) {
108
+ const modKind = mod.getKind();
109
+ if (modKind === SyntaxKind.ExportKeyword)
110
+ hasExport = true;
111
+ if (modKind === SyntaxKind.DefaultKeyword)
112
+ isDefault = true;
113
+ }
114
+ // Check default export first (highest priority)
115
+ if (isDefault && hasExport) {
116
+ if (kind === SyntaxKind.FunctionDeclaration) {
117
+ const func = stmt;
118
+ const name = func.getName();
119
+ if (name && /^use[A-Z]/.test(name)) {
120
+ return true;
121
+ }
122
+ }
123
+ else if (kind === SyntaxKind.VariableStatement) {
124
+ const varStmt = stmt;
125
+ const declarations = varStmt.getDeclarationList().getDeclarations();
126
+ for (const decl of declarations) {
127
+ const name = decl.getName();
128
+ const initializer = decl.getInitializer();
129
+ if (name && /^use[A-Z]/.test(name)) {
130
+ if (initializer && (initializer.getKind() === SyntaxKind.ArrowFunction ||
131
+ initializer.getKind() === SyntaxKind.FunctionExpression)) {
132
+ return true;
133
+ }
134
+ }
135
+ }
136
+ }
137
+ }
138
+ // Check named exports
139
+ if (hasExport && !isDefault) {
140
+ if (kind === SyntaxKind.FunctionDeclaration) {
141
+ const func = stmt;
142
+ const name = func.getName();
143
+ if (name && /^use[A-Z]/.test(name)) {
144
+ return true;
145
+ }
146
+ }
147
+ else if (kind === SyntaxKind.VariableStatement) {
148
+ const varStmt = stmt;
149
+ const declarations = varStmt.getDeclarationList().getDeclarations();
150
+ for (const decl of declarations) {
151
+ const name = decl.getName();
152
+ const initializer = decl.getInitializer();
153
+ if (name && /^use[A-Z]/.test(name)) {
154
+ if (initializer && (initializer.getKind() === SyntaxKind.ArrowFunction ||
155
+ initializer.getKind() === SyntaxKind.FunctionExpression)) {
156
+ return true;
157
+ }
158
+ }
159
+ }
160
+ }
161
+ }
162
+ }
163
+ return false;
164
+ }
165
+ catch (error) {
166
+ return false;
167
+ }
168
+ }
169
+ /**
170
+ * Check if file has Vue composables (ref, reactive, etc.)
171
+ */
172
+ function hasVueComposables(source) {
173
+ try {
174
+ const sourceText = source.getFullText();
175
+ // Check for common Vue composables
176
+ const vueComposablePatterns = [
177
+ /\bref\s*\(/,
178
+ /\breactive\s*\(/,
179
+ /\bcomputed\s*\(/,
180
+ /\bwatch\s*\(/,
181
+ /\bwatchEffect\s*\(/,
182
+ /\bonMounted\s*\(/,
183
+ /\bonUnmounted\s*\(/,
184
+ /\bdefineProps\s*[(<]/,
185
+ /\bdefineEmits\s*[(<]/,
186
+ ];
187
+ return vueComposablePatterns.some(pattern => pattern.test(sourceText));
188
+ }
189
+ catch (error) {
190
+ return false;
191
+ }
192
+ }
193
+ /**
194
+ * Check if file has Vue component registration
195
+ */
196
+ function hasVueComponentRegistration(source) {
197
+ try {
198
+ const sourceText = source.getFullText();
199
+ // Check for defineComponent, component registration, or SFC script setup
200
+ return /defineComponent\s*\(/.test(sourceText) ||
201
+ /components\s*:\s*\{/.test(sourceText) ||
202
+ /<script\s+setup/.test(sourceText);
203
+ }
204
+ catch (error) {
205
+ return false;
206
+ }
207
+ }
92
208
  /**
93
209
  * Check if the main export is a hook function (starts with "use")
94
210
  */
@@ -171,6 +287,31 @@ function isMainExportAHook(source) {
171
287
  export function detectKind(hooks, components, imports, filePath, source) {
172
288
  const resolvedPath = source.getFilePath?.() ?? filePath;
173
289
  try {
290
+ // Vue detection (highest priority after hooks)
291
+ const hasVueImport = imports.some(imp => imp === 'vue' || imp.startsWith('vue/'));
292
+ if (hasVueImport) {
293
+ // Check if main export is a Vue composable
294
+ const mainExportIsVueComposable = isMainExportAVueComposable(source, imports);
295
+ if (mainExportIsVueComposable && components.length === 0) {
296
+ // Double-check: no JSX elements in the file
297
+ try {
298
+ const hasJsxElements = source.getDescendantsOfKind(SyntaxKind.JsxElement).length > 0 ||
299
+ source.getDescendantsOfKind(SyntaxKind.JsxSelfClosingElement).length > 0 ||
300
+ source.getDescendantsOfKind(SyntaxKind.JsxFragment).length > 0;
301
+ if (!hasJsxElements) {
302
+ return 'vue:composable';
303
+ }
304
+ }
305
+ catch (error) {
306
+ // If JSX check fails, still classify as composable if main export is composable
307
+ return 'vue:composable';
308
+ }
309
+ }
310
+ // Check for Vue component patterns
311
+ if (hasVueComposables(source) || hasVueComponentRegistration(source) || components.length > 0) {
312
+ return 'vue:component';
313
+ }
314
+ }
174
315
  // Check if main export is a hook BEFORE checking for components
175
316
  // This ensures hook files are classified correctly even if they use hooks internally
176
317
  const mainExportIsHook = isMainExportAHook(source);
@@ -1 +1 @@
1
- {"version":3,"file":"detectors.js","sourceRoot":"","sources":["../../../src/core/astParser/detectors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detectors.js","sourceRoot":"","sources":["../../../src/core/astParser/detectors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Vue Component Extractor - Extracts Vue composables, components, and reactive state from AST
3
+ */
4
+ import { SourceFile } from 'ts-morph';
5
+ import type { PropType, EventType } from '../../../types/UIFContract.js';
6
+ /**
7
+ * Extract all Vue composables (ref, computed, custom composables)
8
+ * Matches the pattern: useXxx or Vue's built-in composables
9
+ */
10
+ export declare function extractVueComposables(source: SourceFile): string[];
11
+ /**
12
+ * Extract all components used in Vue templates or JSX
13
+ * Handles both PascalCase components and kebab-case components
14
+ */
15
+ export declare function extractVueComponents(source: SourceFile): string[];
16
+ /**
17
+ * Extract Vue reactive state (ref, reactive, computed)
18
+ */
19
+ export declare function extractVueState(source: SourceFile): Record<string, string>;
20
+ /**
21
+ * Extract Vue props (from defineProps)
22
+ */
23
+ export declare function extractVuePropsCall(source: SourceFile): string | null;
24
+ /**
25
+ * Extract Vue emits (from defineEmits)
26
+ */
27
+ export declare function extractVueEmitsCall(source: SourceFile): string[];
28
+ /**
29
+ * Extract Vue props from defineProps into structured Record<string, PropType>
30
+ * Handles both type-based and runtime props definitions
31
+ */
32
+ export declare function extractVueProps(source: SourceFile): Record<string, PropType>;
33
+ /**
34
+ * Extract Vue emits from defineEmits into structured Record<string, EventType>
35
+ * Handles both type-based and runtime emits definitions
36
+ */
37
+ export declare function extractVueEmits(source: SourceFile): Record<string, EventType>;
38
+ //# sourceMappingURL=vueComponentExtractor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vueComponentExtractor.d.ts","sourceRoot":"","sources":["../../../../src/core/astParser/extractors/vueComponentExtractor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAoB,MAAM,UAAU,CAAC;AACxD,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,+BAA+B,CAAC;AAIzE;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,EAAE,CAiDlE;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,EAAE,CA6IjE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA2D1E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,GAAG,IAAI,CA4CrE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,EAAE,CAqDhE;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAkJ5E;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CA6F7E"}