vibefast-cli 0.5.0 → 0.5.1

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 (77) hide show
  1. package/FEATURE-DEPENDENCY-SPEC.md +338 -0
  2. package/dist/__tests__/integration.test.d.ts +2 -0
  3. package/dist/__tests__/integration.test.d.ts.map +1 -0
  4. package/dist/__tests__/integration.test.js +219 -0
  5. package/dist/__tests__/integration.test.js.map +1 -0
  6. package/dist/__tests__/recipes.test.d.ts +2 -0
  7. package/dist/__tests__/recipes.test.d.ts.map +1 -0
  8. package/dist/__tests__/recipes.test.js +143 -0
  9. package/dist/__tests__/recipes.test.js.map +1 -0
  10. package/dist/commands/__tests__/init.test.d.ts +2 -0
  11. package/dist/commands/__tests__/init.test.d.ts.map +1 -0
  12. package/dist/commands/__tests__/init.test.js +95 -0
  13. package/dist/commands/__tests__/init.test.js.map +1 -0
  14. package/dist/commands/__tests__/platform.test.d.ts +2 -0
  15. package/dist/commands/__tests__/platform.test.d.ts.map +1 -0
  16. package/dist/commands/__tests__/platform.test.js +123 -0
  17. package/dist/commands/__tests__/platform.test.js.map +1 -0
  18. package/dist/commands/add.d.ts.map +1 -1
  19. package/dist/commands/add.js +4 -5
  20. package/dist/commands/add.js.map +1 -1
  21. package/dist/core/journal.d.ts.map +1 -1
  22. package/dist/core/journal.js +36 -19
  23. package/dist/core/journal.js.map +1 -1
  24. package/dist/core/recipes.d.ts.map +1 -1
  25. package/dist/core/recipes.js +8 -39
  26. package/dist/core/recipes.js.map +1 -1
  27. package/package.json +1 -1
  28. package/recipes/ios-widget/recipe.json +78 -0
  29. package/recipes/ios-widget/targets/widget/AppIntent.swift +46 -0
  30. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-20x20@1x.png +0 -0
  31. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-20x20@2x.png +0 -0
  32. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-20x20@3x.png +0 -0
  33. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-29x29@1x.png +0 -0
  34. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-29x29@2x.png +0 -0
  35. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-29x29@3x.png +0 -0
  36. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-40x40@1x.png +0 -0
  37. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-40x40@2x.png +0 -0
  38. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-40x40@3x.png +0 -0
  39. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-60x60@2x.png +0 -0
  40. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-60x60@3x.png +0 -0
  41. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-76x76@1x.png +0 -0
  42. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-76x76@2x.png +0 -0
  43. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/App-Icon-83.5x83.5@2x.png +0 -0
  44. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/Contents.json +122 -0
  45. package/recipes/ios-widget/targets/widget/Assets.xcassets/AppIcon.appiconset/ItunesArtwork@2x.png +0 -0
  46. package/recipes/ios-widget/targets/widget/CalorieTrackerWidget.swift +424 -0
  47. package/recipes/ios-widget/targets/widget/HabitTrackerWidget.swift +305 -0
  48. package/recipes/ios-widget/targets/widget/Info.plist +11 -0
  49. package/recipes/ios-widget/targets/widget/WidgetLiveActivity.swift +75 -0
  50. package/recipes/ios-widget/targets/widget/expo-target.config.js +10 -0
  51. package/recipes/ios-widget/targets/widget/generated.entitlements +5 -0
  52. package/recipes/ios-widget/targets/widget/index.swift +18 -0
  53. package/recipes/ios-widget/targets/widget/widgets.swift +96 -0
  54. package/recipes/ios-widget@latest.zip +0 -0
  55. package/recipes/payments/apps/native/src/app/(root)/(protected)/paywall/index.tsx +74 -0
  56. package/recipes/payments/apps/native/src/app/(root)/(protected)/paywall/local.tsx +25 -0
  57. package/recipes/payments/apps/native/src/app/(root)/(protected)/paywall/remote.tsx +23 -0
  58. package/recipes/payments/apps/native/src/features/payments/README.md +200 -0
  59. package/recipes/payments/apps/native/src/features/payments/app/local-paywall.tsx +194 -0
  60. package/recipes/payments/apps/native/src/features/payments/app/remote-paywall.tsx +79 -0
  61. package/recipes/payments/apps/native/src/features/payments/components/payment-initializer.tsx +95 -0
  62. package/recipes/payments/apps/native/src/features/payments/components/paywall-error-state.tsx +60 -0
  63. package/recipes/payments/apps/native/src/features/payments/components/paywall-local-mode.tsx +116 -0
  64. package/recipes/payments/apps/native/src/features/payments/components/paywall-product-card.tsx +133 -0
  65. package/recipes/payments/apps/native/src/features/payments/components/paywall-remote-mode.tsx +146 -0
  66. package/recipes/payments/apps/native/src/features/payments/hooks/use-entitlement.ts +63 -0
  67. package/recipes/payments/apps/native/src/features/payments/index.ts +8 -0
  68. package/recipes/payments/apps/native/src/features/payments/services/revenuecat-adapter.ts +407 -0
  69. package/recipes/payments/recipe.json +58 -0
  70. package/recipes/payments@latest.zip +0 -0
  71. package/src/__tests__/integration.test.ts +249 -0
  72. package/src/__tests__/recipes.test.ts +168 -0
  73. package/src/commands/__tests__/init.test.ts +112 -0
  74. package/src/commands/__tests__/platform.test.ts +141 -0
  75. package/src/commands/add.ts +4 -5
  76. package/src/core/journal.ts +42 -25
  77. package/src/core/recipes.ts +8 -40
@@ -0,0 +1,143 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { RECIPES, getRecipesByCategory, getRecipeInfo } from '../core/recipes.js';
3
+ import { existsSync } from 'fs';
4
+ import { join } from 'path';
5
+ describe('Recipe System', () => {
6
+ describe('Recipe Metadata', () => {
7
+ it('should have all 10 features defined', () => {
8
+ const features = getRecipesByCategory('feature');
9
+ expect(features).toHaveLength(10);
10
+ });
11
+ it('should include ios-widget in features', () => {
12
+ const features = getRecipesByCategory('feature');
13
+ const widget = features.find(f => f.name === 'ios-widget');
14
+ expect(widget).toBeDefined();
15
+ expect(widget?.name).toBe('ios-widget');
16
+ expect(widget?.description).toBe('iOS Home Screen widgets with Live Activities');
17
+ expect(widget?.icon).toBe('📱');
18
+ expect(widget?.category).toBe('feature');
19
+ });
20
+ it('should have all expected features', () => {
21
+ const features = getRecipesByCategory('feature');
22
+ const featureNames = features.map(f => f.name);
23
+ expect(featureNames).toContain('audio-recorder');
24
+ expect(featureNames).toContain('charts');
25
+ expect(featureNames).toContain('chatbot');
26
+ expect(featureNames).toContain('image-analysis');
27
+ expect(featureNames).toContain('image-generator');
28
+ expect(featureNames).toContain('quiz');
29
+ expect(featureNames).toContain('tracker-app');
30
+ expect(featureNames).toContain('voice-bot');
31
+ expect(featureNames).toContain('wake-word');
32
+ expect(featureNames).toContain('ios-widget');
33
+ });
34
+ it('should get recipe info by name', () => {
35
+ const widget = getRecipeInfo('ios-widget');
36
+ expect(widget).toBeDefined();
37
+ expect(widget?.name).toBe('ios-widget');
38
+ });
39
+ it('should return undefined for non-existent recipe', () => {
40
+ const fake = getRecipeInfo('non-existent-feature');
41
+ expect(fake).toBeUndefined();
42
+ });
43
+ });
44
+ describe('Recipe Files', () => {
45
+ const getRecipesDir = () => {
46
+ // When running from vibefast-cli directory
47
+ if (existsSync(join(process.cwd(), 'recipes'))) {
48
+ return join(process.cwd(), 'recipes');
49
+ }
50
+ // When running from monorepo root
51
+ return join(process.cwd(), 'vibefast-cli/recipes');
52
+ };
53
+ it('should have recipe.json for ios-widget', () => {
54
+ const recipesDir = getRecipesDir();
55
+ const recipePath = join(recipesDir, 'ios-widget/recipe.json');
56
+ expect(existsSync(recipePath)).toBe(true);
57
+ });
58
+ it('should have zip file for ios-widget', () => {
59
+ const recipesDir = getRecipesDir();
60
+ const zipPath = join(recipesDir, 'ios-widget@latest.zip');
61
+ expect(existsSync(zipPath)).toBe(true);
62
+ });
63
+ it('should have recipe.json for all features', () => {
64
+ const recipesDir = getRecipesDir();
65
+ const features = getRecipesByCategory('feature');
66
+ for (const feature of features) {
67
+ const recipePath = join(recipesDir, `${feature.name}/recipe.json`);
68
+ expect(existsSync(recipePath), `${feature.name} recipe.json should exist`).toBe(true);
69
+ }
70
+ });
71
+ it('should have zip files for all features', () => {
72
+ const recipesDir = getRecipesDir();
73
+ const features = getRecipesByCategory('feature');
74
+ for (const feature of features) {
75
+ const zipPath = join(recipesDir, `${feature.name}@latest.zip`);
76
+ expect(existsSync(zipPath), `${feature.name} zip should exist`).toBe(true);
77
+ }
78
+ });
79
+ });
80
+ describe('Recipe Content', () => {
81
+ const getRecipesDir = () => {
82
+ if (existsSync(join(process.cwd(), 'recipes'))) {
83
+ return join(process.cwd(), 'recipes');
84
+ }
85
+ return join(process.cwd(), 'vibefast-cli/recipes');
86
+ };
87
+ it('should have valid recipe.json for ios-widget', () => {
88
+ const { readFileSync } = require('fs');
89
+ const recipesDir = getRecipesDir();
90
+ const recipePath = join(recipesDir, 'ios-widget/recipe.json');
91
+ const content = readFileSync(recipePath, 'utf-8');
92
+ const recipe = JSON.parse(content);
93
+ expect(recipe.name).toBe('ios-widget');
94
+ expect(recipe.version).toBe('1.0.0');
95
+ expect(recipe.description).toBe('iOS Home Screen widgets with Live Activities');
96
+ expect(recipe.platforms).toContain('native');
97
+ expect(recipe.files).toBeDefined();
98
+ expect(recipe.files.length).toBeGreaterThan(0);
99
+ });
100
+ it('should have dependencies for ios-widget', () => {
101
+ const { readFileSync } = require('fs');
102
+ const recipesDir = getRecipesDir();
103
+ const recipePath = join(recipesDir, 'ios-widget/recipe.json');
104
+ const content = readFileSync(recipePath, 'utf-8');
105
+ const recipe = JSON.parse(content);
106
+ expect(recipe.dependencies).toBeDefined();
107
+ expect(recipe.dependencies.npm).toContain('@bacons/apple-targets');
108
+ });
109
+ it('should have manual steps for ios-widget', () => {
110
+ const { readFileSync } = require('fs');
111
+ const recipesDir = getRecipesDir();
112
+ const recipePath = join(recipesDir, 'ios-widget/recipe.json');
113
+ const content = readFileSync(recipePath, 'utf-8');
114
+ const recipe = JSON.parse(content);
115
+ expect(recipe.manualSteps).toBeDefined();
116
+ expect(recipe.manualSteps.length).toBeGreaterThan(0);
117
+ const pluginStep = recipe.manualSteps.find((s) => s.title.includes('Widget Plugin'));
118
+ expect(pluginStep).toBeDefined();
119
+ expect(pluginStep.file).toBe('apps/native/app.config.ts');
120
+ });
121
+ it('should have post-install instructions for ios-widget', () => {
122
+ const { readFileSync } = require('fs');
123
+ const recipesDir = getRecipesDir();
124
+ const recipePath = join(recipesDir, 'ios-widget/recipe.json');
125
+ const content = readFileSync(recipePath, 'utf-8');
126
+ const recipe = JSON.parse(content);
127
+ expect(recipe.postInstall).toBeDefined();
128
+ expect(recipe.postInstall.instructions).toBeDefined();
129
+ expect(recipe.postInstall.instructions.length).toBeGreaterThan(0);
130
+ });
131
+ });
132
+ describe('Recipe Categories', () => {
133
+ it('should only have feature category (no advanced-ui yet)', () => {
134
+ const advancedUI = getRecipesByCategory('advanced-ui');
135
+ expect(advancedUI).toHaveLength(0);
136
+ });
137
+ it('should have all recipes in RECIPES array', () => {
138
+ expect(RECIPES.length).toBeGreaterThan(0);
139
+ expect(RECIPES.length).toBe(10); // 10 features
140
+ });
141
+ });
142
+ });
143
+ //# sourceMappingURL=recipes.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recipes.test.js","sourceRoot":"","sources":["../../src/__tests__/recipes.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=init.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.test.d.ts","sourceRoot":"","sources":["../../../src/commands/__tests__/init.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,95 @@
1
+ import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
2
+ import { existsSync, rmSync } from 'fs';
3
+ import { join } from 'path';
4
+ import { tmpdir } from 'os';
5
+ // Mock the external dependencies
6
+ vi.mock('simple-git');
7
+ vi.mock('../core/log.js');
8
+ vi.mock('../core/spinner.js');
9
+ vi.mock('../core/prompt.js');
10
+ describe('vf init command', () => {
11
+ let testDir;
12
+ beforeEach(() => {
13
+ testDir = join(tmpdir(), `vibefast-test-${Date.now()}`);
14
+ });
15
+ afterEach(() => {
16
+ if (existsSync(testDir)) {
17
+ rmSync(testDir, { recursive: true, force: true });
18
+ }
19
+ });
20
+ describe('Clean Mode', () => {
21
+ it('should create clean native-only project', async () => {
22
+ // This would be tested with mocked git clone
23
+ // Verify: apps/native exists, apps/web doesn't
24
+ expect(true).toBe(true); // Placeholder
25
+ });
26
+ it('should create clean web-only project', async () => {
27
+ // Verify: apps/web exists, apps/native doesn't
28
+ expect(true).toBe(true);
29
+ });
30
+ it('should create clean both-platforms project', async () => {
31
+ // Verify: both apps/native and apps/web exist
32
+ expect(true).toBe(true);
33
+ });
34
+ });
35
+ describe('Custom Mode', () => {
36
+ it('should select and install features', async () => {
37
+ // Verify: selected features are installed
38
+ // Verify: feature files exist in correct locations
39
+ expect(true).toBe(true);
40
+ });
41
+ it('should handle feature installation failures gracefully', async () => {
42
+ // Verify: continues with other features if one fails
43
+ // Verify: shows error message
44
+ expect(true).toBe(true);
45
+ });
46
+ it('should auto-download Vosk model for wake-word', async () => {
47
+ // Verify: Vosk model is downloaded
48
+ // Verify: model is extracted to correct location
49
+ expect(true).toBe(true);
50
+ });
51
+ });
52
+ describe('Configuration Updates', () => {
53
+ it('should update package.json workspaces correctly', async () => {
54
+ // Verify: workspaces array contains correct platforms
55
+ expect(true).toBe(true);
56
+ });
57
+ it('should update turbo.json with platform tasks', async () => {
58
+ // Verify: turbo.json has correct pipeline tasks
59
+ expect(true).toBe(true);
60
+ });
61
+ it('should remove unwanted platform tasks from turbo.json', async () => {
62
+ // Verify: web tasks removed if web-only
63
+ // Verify: native tasks removed if native-only
64
+ expect(true).toBe(true);
65
+ });
66
+ });
67
+ describe('Environment Setup', () => {
68
+ it('should create .env files from examples', async () => {
69
+ // Verify: .env.local, .env.staging, .env.production created
70
+ expect(true).toBe(true);
71
+ });
72
+ it('should detect missing environment variables', async () => {
73
+ // Verify: shows missing vars for selected features
74
+ expect(true).toBe(true);
75
+ });
76
+ });
77
+ describe('Error Handling', () => {
78
+ it('should handle invalid project names', async () => {
79
+ // Verify: error message shown
80
+ // Verify: process exits gracefully
81
+ expect(true).toBe(true);
82
+ });
83
+ it('should handle existing directory conflicts', async () => {
84
+ // Verify: error message shown
85
+ // Verify: doesn't overwrite
86
+ expect(true).toBe(true);
87
+ });
88
+ it('should handle missing license key', async () => {
89
+ // Verify: prompts for license key
90
+ // Verify: validates key format
91
+ expect(true).toBe(true);
92
+ });
93
+ });
94
+ });
95
+ //# sourceMappingURL=init.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.test.js","sourceRoot":"","sources":["../../../src/commands/__tests__/init.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=platform.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.test.d.ts","sourceRoot":"","sources":["../../../src/commands/__tests__/platform.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,123 @@
1
+ import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
2
+ import { existsSync, rmSync } from 'fs';
3
+ import { join } from 'path';
4
+ import { tmpdir } from 'os';
5
+ vi.mock('simple-git');
6
+ vi.mock('../core/log.js');
7
+ vi.mock('../core/spinner.js');
8
+ vi.mock('../core/prompt.js');
9
+ describe('vf platform command', () => {
10
+ let testDir;
11
+ beforeEach(() => {
12
+ testDir = join(tmpdir(), `vibefast-platform-test-${Date.now()}`);
13
+ });
14
+ afterEach(() => {
15
+ if (existsSync(testDir)) {
16
+ rmSync(testDir, { recursive: true, force: true });
17
+ }
18
+ });
19
+ describe('platform add', () => {
20
+ it('should add web platform to native-only project', async () => {
21
+ // Setup: Create native-only project
22
+ // Action: vf platform add (choose web)
23
+ // Verify: apps/web exists
24
+ // Verify: package.json has both workspaces
25
+ // Verify: turbo.json has web tasks
26
+ expect(true).toBe(true);
27
+ });
28
+ it('should add native platform to web-only project', async () => {
29
+ // Setup: Create web-only project
30
+ // Action: vf platform add (choose native)
31
+ // Verify: apps/native exists
32
+ // Verify: package.json has both workspaces
33
+ // Verify: turbo.json has native tasks
34
+ expect(true).toBe(true);
35
+ });
36
+ it('should show error if both platforms exist', async () => {
37
+ // Setup: Create both-platform project
38
+ // Action: vf platform add
39
+ // Verify: Shows "Both platforms already exist"
40
+ expect(true).toBe(true);
41
+ });
42
+ it('should update configurations correctly', async () => {
43
+ // Verify: package.json workspaces updated
44
+ // Verify: turbo.json pipeline updated
45
+ // Verify: No duplicate entries
46
+ expect(true).toBe(true);
47
+ });
48
+ it('should handle clone failures gracefully', async () => {
49
+ // Verify: Shows error message
50
+ // Verify: No partial files left
51
+ // Verify: Cleans up temp directory
52
+ expect(true).toBe(true);
53
+ });
54
+ });
55
+ describe('platform remove', () => {
56
+ it('should remove web platform from both-platform project', async () => {
57
+ // Setup: Create both-platform project
58
+ // Action: vf platform remove (choose web)
59
+ // Verify: apps/web removed
60
+ // Verify: apps/native still exists
61
+ // Verify: package.json updated
62
+ // Verify: turbo.json updated
63
+ expect(true).toBe(true);
64
+ });
65
+ it('should remove native platform from both-platform project', async () => {
66
+ // Setup: Create both-platform project
67
+ // Action: vf platform remove (choose native)
68
+ // Verify: apps/native removed
69
+ // Verify: apps/web still exists
70
+ // Verify: Configurations updated
71
+ expect(true).toBe(true);
72
+ });
73
+ it('should prevent removing only platform', async () => {
74
+ // Setup: Create native-only project
75
+ // Action: vf platform remove
76
+ // Verify: Shows error "Cannot remove the only platform"
77
+ // Verify: No changes made
78
+ expect(true).toBe(true);
79
+ });
80
+ it('should require confirmation before removing', async () => {
81
+ // Setup: Create both-platform project
82
+ // Action: vf platform remove (choose web, then cancel)
83
+ // Verify: Platform not removed
84
+ // Verify: Shows confirmation prompt
85
+ expect(true).toBe(true);
86
+ });
87
+ it('should skip confirmation with --yes flag', async () => {
88
+ // Setup: Create both-platform project
89
+ // Action: vf platform remove --yes
90
+ // Verify: Platform removed without prompt
91
+ expect(true).toBe(true);
92
+ });
93
+ it('should clean up configurations', async () => {
94
+ // Verify: Removed platform tasks from turbo.json
95
+ // Verify: Removed platform from package.json workspaces
96
+ // Verify: No orphaned entries
97
+ expect(true).toBe(true);
98
+ });
99
+ });
100
+ describe('Error Handling', () => {
101
+ it('should handle non-VibeFast projects', async () => {
102
+ // Setup: Create regular directory
103
+ // Action: vf platform add
104
+ // Verify: Shows "Not a VibeFast project"
105
+ expect(true).toBe(true);
106
+ });
107
+ it('should handle missing .vibefast directory', async () => {
108
+ // Verify: Shows appropriate error
109
+ expect(true).toBe(true);
110
+ });
111
+ it('should handle corrupted package.json', async () => {
112
+ // Verify: Shows error
113
+ // Verify: Doesn't crash
114
+ expect(true).toBe(true);
115
+ });
116
+ it('should handle corrupted turbo.json', async () => {
117
+ // Verify: Shows error
118
+ // Verify: Doesn't crash
119
+ expect(true).toBe(true);
120
+ });
121
+ });
122
+ });
123
+ //# sourceMappingURL=platform.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.test.js","sourceRoot":"","sources":["../../../src/commands/__tests__/platform.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+CpC,eAAO,MAAM,UAAU,SA0HnB,CAAC"}
1
+ {"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA+CpC,eAAO,MAAM,UAAU,SAyHnB,CAAC"}
@@ -26,11 +26,10 @@ export const addCommand = new Command('add')
26
26
  log.plain('');
27
27
  log.info('Examples:');
28
28
  log.plain(' vf add # Interactive menu');
29
- log.plain(' vf add feature # Show all features');
30
- log.plain(' vf add integration # Show all integrations');
31
- log.plain(' vf add charts # Add specific feature');
32
- log.plain(' vf add sentry --target native');
33
- log.plain(' vf add chatbot --dry-run');
29
+ log.plain(' vf add chatbot # Add specific feature');
30
+ log.plain(' vf add chatbot --dry-run # Preview changes');
31
+ log.plain(' vf add chatbot --force # Force reinstall');
32
+ log.plain(' vf add chatbot --yes # Skip prompts');
34
33
  })
35
34
  .action(async (feature, options) => {
36
35
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAa,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAgCjD,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC;KACzC,WAAW,CAAC,uDAAuD,CAAC;KACpE,QAAQ,CAAC,WAAW,EAAE,4EAA4E,CAAC;KACnG,MAAM,CAAC,mBAAmB,EAAE,iCAAiC,EAAE,QAAQ,CAAC;KACxE,MAAM,CAAC,WAAW,EAAE,kCAAkC,CAAC;KACvD,MAAM,CAAC,SAAS,EAAE,yCAAyC,CAAC;KAC5D,MAAM,CAAC,OAAO,EAAE,4CAA4C,CAAC;KAC7D,MAAM,CAAC,uBAAuB,EAAE,+CAA+C,CAAC;KAChF,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IACjB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACd,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtB,GAAG,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;IAC5D,GAAG,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAC7D,GAAG,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACjE,GAAG,CAAC,KAAK,CAAC,oDAAoD,CAAC,CAAC;IAChE,GAAG,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAC7C,GAAG,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;AAC1C,CAAC,CAAC;KACD,MAAM,CAAC,KAAK,EAAE,OAA2B,EAAE,OAAO,EAAE,EAAE;IACrD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;QAEzB,2CAA2C;QAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,EAAE,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;YAC5G,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;YAEtG,gCAAgC;YAChC,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;YAEnC,aAAa;YACb,KAAK,CAAC,+BAA+B,CAAC,CAAC;YAEvC,0BAA0B;YAC1B,MAAM,eAAe,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC/C,KAAK,EAAE,GAAG;gBACV,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC;gBAC1B,WAAW,EAAE,UAAU,cAAc,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;aAC3D,CAAC,CAAC,CAAC;YAEJ,MAAM,gBAAgB,GAAG,MAAM,iBAAiB,CAAC,6BAA6B,EAAE,eAAe,CAAC,CAAC;YAEjG,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,KAAK,CAAC,WAAW,CAAC,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,kCAAkC;YAClC,MAAM,OAAO,GAAG,oBAAoB,CAAC,gBAAgB,CAAC,CAAC;YACvD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxC,KAAK,EAAE,CAAC,CAAC,IAAI;gBACb,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE;gBAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;aAC3B,CAAC,CAAC,CAAC;YAEJ,MAAM,eAAe,GAAG,MAAM,sBAAsB,CAClD,UAAU,cAAc,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE,UAAU,EAClE,aAAa,CACd,CAAC;YAEF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC3B,OAAO;YACT,CAAC;YAED,+BAA+B;YAC/B,KAAK,MAAM,UAAU,IAAI,eAAe,EAAE,CAAC;gBACzC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC1B,MAAM,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACnD,CAAC;YAED,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QAED,sCAAsC;QACtC,MAAM,EAAE,aAAa,EAAE,oBAAoB,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACnG,MAAM,EAAE,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACnF,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;QAEnC,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAc,CAAC,EAAE,CAAC;YACxC,KAAK,CAAC,MAAM,cAAc,CAAC,OAAc,CAAC,EAAE,CAAC,CAAC;YAE9C,8BAA8B;YAC9B,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAc,CAAC,CAAC;YACrD,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACxC,KAAK,EAAE,CAAC,CAAC,IAAI;gBACb,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE;gBAC5B,WAAW,EAAE,CAAC,CAAC,WAAW;aAC3B,CAAC,CAAC,CAAC;YAEJ,MAAM,eAAe,GAAG,MAAM,sBAAsB,CAClD,UAAU,cAAc,CAAC,OAAc,CAAC,CAAC,WAAW,EAAE,UAAU,EAChE,aAAa,CACd,CAAC;YAEF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC3B,OAAO;YACT,CAAC;YAED,+BAA+B;YAC/B,KAAK,MAAM,UAAU,IAAI,eAAe,EAAE,CAAC;gBACzC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC1B,MAAM,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACnD,CAAC;YAED,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAClC,OAAO;QACT,CAAC;QAED,yBAAyB;QACzB,MAAM,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,GAAG,CAAC,KAAK,CAAC,wBAAwB,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACnD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAChB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,KAAK,UAAU,cAAc,CAAC,OAAe,EAAE,OAAY,EAAE,KAAU;IACnE,IAAI,CAAC;QACH,IAAI,MAAM,GAAG,OAAO,CAAC,MAAsC,CAAC;QAE5D,0CAA0C;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/C,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,GAAG,QAAQ,CAAC;gBAClB,GAAG,CAAC,IAAI,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC;YAC9C,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBACvD,GAAG,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;gBAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;QAED,iBAAiB;QACjB,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAC5D,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEvC,aAAa;QACb,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC/B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,GAAG,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,6BAA6B;QAC7B,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACpE,IAAI,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YAC/B,GAAG,CAAC,IAAI,CAAC,GAAG,OAAO,6BAA6B,MAAM,EAAE,CAAC,CAAC;YAC1D,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,GAAG,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QAChD,CAAC;QAED,eAAe;QACf,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAChC,YAAY,OAAO,QAAQ,MAAM,KAAK,EACtC,KAAK,IAAI,EAAE;YACT,OAAO,MAAM,WAAW,CAAC;gBACvB,KAAK;gBACL,MAAM;gBACN,OAAO;gBACP,MAAM;gBACN,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE;aACxD,CAAC,CAAC;QACL,CAAC,EACD;YACE,WAAW,EAAE,kBAAkB;SAChC,CACF,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/D,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,eAAe,CAAC;YAChD,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC;YAEvC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAEd,+BAA+B;YAC/B,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBACtF,GAAG,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;gBAC9C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBACrC,GAAG,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACvC,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBACzB,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;gBACzB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACzB,GAAG,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;gBACpE,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;gBACjC,GAAG,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;gBAC3D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;YACtD,CAAC;iBAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpG,GAAG,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;gBACpC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;gBAC5E,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACzB,GAAG,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;gBAClC,GAAG,CAAC,KAAK,CAAC,uEAAuE,CAAC,CAAC;gBACnF,GAAG,CAAC,KAAK,CAAC,yBAAyB,GAAG,OAAO,CAAC,CAAC;gBAC/C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,IAAI,OAAO,EAAE,CAAC;oBACZ,GAAG,CAAC,KAAK,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;oBACjC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBAClE,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAC7B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;gBAClD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBAC1B,GAAG,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;gBAC1C,GAAG,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;gBACnC,GAAG,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;gBACnC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,IAAI,OAAO,EAAE,CAAC;oBACZ,GAAG,CAAC,KAAK,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;oBACjC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChE,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;gBACjC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,gBAAgB,OAAO,4CAA4C,MAAM,EAAE,CAAC,CAAC;gBACtF,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;gBACvC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBACvB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACN,gBAAgB;gBAChB,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;gBACxB,IAAI,OAAO,EAAE,CAAC;oBACZ,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,KAAK,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;gBACnC,CAAC;gBACD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;YACrE,CAAC;YAED,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,uBAAuB;QACvB,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,MAAM,WAAW,CAC/C,sCAAsC,EACtC,KAAK,IAAI,EAAE;YACT,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO;gBAC9B,CAAC,CAAC,MAAM,WAAW,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC;gBAC3C,CAAC,CAAC,MAAM,WAAW,CAAC,QAAQ,CAAC,SAAU,CAAC,CAAC;YAE3C,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC/C,MAAM,cAAc,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YAE1C,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;QACjC,CAAC,EACD;YACE,WAAW,EAAE,qBAAqB;SACnC,CACF,CAAC;QAEF,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEpC,gBAAgB;QAChB,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QACrD,MAAM,eAAe,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,CAAC;QAC5D,MAAM,QAAQ,GAAmB,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAC7D,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACb,oCAAoC,MAAM,SAAS,QAAQ,CAAC,MAAM,EAAE,CACrE,CAAC;QACJ,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,cAAc,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,OAAO,KAAK,CAAC,CAAC;QAEhE,2CAA2C;QAC3C,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,MAAM,UAAU,GAAa,EAAE,CAAC;QAEhC,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;YACrC,MAAM,OAAO,GAAG,gBAAgB,CAC9B,WAAW,EACX,OAAO,CAAC,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,EACnC,eAAe,QAAQ,CAAC,IAAI,EAAE,CAC/B,CAAC;YACF,MAAM,QAAQ,GAAG,gBAAgB,CAC/B,QAAQ,EACR,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,EAC9B,eAAe,QAAQ,CAAC,EAAE,EAAE,CAC7B,CAAC;YAEF,GAAG,CAAC,IAAI,CAAC,WAAW,QAAQ,CAAC,IAAI,MAAM,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;YACtD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,QAAQ,EAAE;gBAC/C,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG;aAC/D,CAAC,CAAC;YAEH,WAAW,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAClC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;YACvC,UAAU,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;QACrC,CAAC;QAED,yCAAyC;QACzC,IAAI,OAAO,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,GAAG,CAAC,IAAI,CAAC,KAAK,YAAY,CAAC,MAAM,+BAA+B,CAAC,CAAC;YAClE,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;gBACnC,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;gBACpD,GAAG,CAAC,KAAK,CAAC,OAAO,YAAY,EAAE,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;YACH,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,GAAG,CAAC,KAAK,CAAC,aAAa,YAAY,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC;YACzD,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;YAChE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;QAED,qBAAqB;QACrB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,GAAG,CAAC,IAAI,CAAC,aAAa,UAAU,CAAC,MAAM,uCAAuC,CAAC,CAAC;QAClF,CAAC;QAED,4BAA4B;QAC5B,IAAI,QAAQ,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC1C,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAC7E,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;gBAC/B,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;oBACnG,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;oBAC5C,MAAM,WAAW,GAAG,wBAAwB,QAAQ,CAAC,SAAS,KAAK,OAAO,EAAE,CAAC;oBAC7E,MAAM,gBAAgB,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;QACH,CAAC;QAED,kBAAkB;QAClB,IAAI,WAAW,GAAG,KAAK,CAAC;QACxB,IAAI,OAA2B,CAAC;QAChC,IAAI,QAA4B,CAAC;QACjC,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;YAC7E,MAAM,QAAQ,GAAG,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,gBAAgB,CAAC;YAC9E,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC;YAC5B,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC;YAE9B,WAAW,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAChF,IAAI,WAAW,EAAE,CAAC;gBAChB,GAAG,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,gCAAgC;QAChC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACrC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,WAAW,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC,CAAC;YAE3F,MAAM,WAAW,GAAgB,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gBACvF,IAAI;gBACJ,IAAI;aACL,CAAC,CAAC,CAAC;YAEJ,MAAM,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE;gBAChC,OAAO,EAAE,QAAQ,CAAC,IAAI;gBACtB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,KAAK,EAAE,WAAW;gBAClB,WAAW,EAAE,WAAW;gBACxB,OAAO;gBACP,QAAQ;gBACR,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;gBACd,QAAQ,EAAE;oBACR,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,GAAG,EAAE,QAAQ,CAAC,GAAG;iBAClB;aACF,CAAC,CAAC;QACL,CAAC;QAED,GAAG,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,IAAI,0BAA0B,CAAC,CAAC;QACxD,GAAG,CAAC,IAAI,CAAC,gBAAgB,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QAE/C,4BAA4B;QAC5B,IAAI,QAAQ,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC7C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,GAAG,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;YACxD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAEd,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBAC/D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC;gBAE5C,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;gBAClC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBACrB,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBAC1B,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAEd,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,IAAI,MAAM,WAAW,CACpD,sDAAsD,EACtD,IAAI,CACL,CAAC;gBAEF,IAAI,aAAa,EAAE,CAAC;oBAClB,MAAM,WAAW,CACf,kCAAkC,EAClC,KAAK,IAAI,EAAE;wBACT,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;wBACnD,QAAQ,CAAC,oBAAoB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;4BACjD,GAAG,EAAE,KAAK,CAAC,GAAG;4BACd,KAAK,EAAE,SAAS;yBACjB,CAAC,CAAC;oBACL,CAAC,EACD;wBACE,WAAW,EAAE,sBAAsB;qBACpC,CACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;oBACnC,GAAG,CAAC,KAAK,CAAC,sBAAsB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACtD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;oBACd,GAAG,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;gBAClE,CAAC;YAEH,CAAC;iBAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,KAAK,IAAI,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;gBAClE,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC;gBAE3C,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;gBAClC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBACrB,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBAC1B,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAEd,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,IAAI,MAAM,WAAW,CACpD,sDAAsD,EACtD,IAAI,CACL,CAAC;gBAEF,IAAI,aAAa,EAAE,CAAC;oBAClB,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;oBACnE,MAAM,UAAU,GAAG,oBAAoB,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC;oBAE7D,MAAM,WAAW,CACf,4BAA4B,UAAU,KAAK,EAC3C,KAAK,IAAI,EAAE;wBACT,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;wBACnD,MAAM,UAAU,GAAG,UAAU,KAAK,KAAK;4BACrC,CAAC,CAAC,eAAe,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;4BACrC,CAAC,CAAC,GAAG,UAAU,QAAQ,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC9C,QAAQ,CAAC,UAAU,EAAE;4BACnB,GAAG,EAAE,KAAK,CAAC,GAAG;4BACd,KAAK,EAAE,SAAS;yBACjB,CAAC,CAAC;oBACL,CAAC,EACD;wBACE,WAAW,EAAE,sBAAsB;qBACpC,CACF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;oBACnC,GAAG,CAAC,KAAK,CAAC,cAAc,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC9C,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAClB,GAAG,CAAC,KAAK,CAAC,cAAc,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC9C,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;oBAClB,GAAG,CAAC,KAAK,CAAC,iBAAiB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC;YAED,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;QAED,sCAAsC;QACtC,IAAI,QAAQ,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACrD,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAC3D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,MAAM,WAAW,CACf,iCAAiC,EACjC,KAAK,IAAI,EAAE;gBACT,OAAO,MAAM,cAAc,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACrE,CAAC,EACD;gBACE,WAAW,EAAE,oBAAoB;aAClC,CACF,CAAC;QACJ,CAAC;QAED,yCAAyC;QACzC,IAAI,QAAQ,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YAC5C,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;YACnE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;YAEtC,0CAA0C;YAC1C,MAAM,YAAY,GAAgC,EAAE,CAAC;YACrD,MAAM,cAAc,GAAa,EAAE,CAAC;YAEpC,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACxC,IAAI,WAAW,GAAG,KAAK,CAAC;gBAExB,6CAA6C;gBAC7C,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC5C,IAAI,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC3B,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;wBAChD,0DAA0D;wBAC1D,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;wBAChE,MAAM,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;wBAClE,IAAI,qBAAqB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;4BACnD,WAAW,GAAG,IAAI,CAAC;4BACnB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBAClC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;gBACrC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;gBAC9D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAEd,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACnC,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC9C,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;oBACnC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBACd,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBACjC,CAAC;oBACD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;wBACd,GAAG,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBACvC,CAAC;oBACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;wBACjB,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;oBACtC,CAAC;oBACD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;gBAEH,GAAG,CAAC,IAAI,CAAC,wBAAwB,QAAQ,CAAC,IAAI,4BAA4B,CAAC,CAAC;gBAC5E,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;YAED,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,GAAG,CAAC,OAAO,CAAC,yBAAyB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QAED,kDAAkD;QAClD,IAAI,QAAQ,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;YACrD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAExC,MAAM,OAAO,GAAwB,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAa,EAAE,CAAC;YAE9B,iCAAiC;YACjC,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAClC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;gBACpD,IAAI,MAAM,EAAE,CAAC;oBACX,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;YAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;gBAC9C,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAEd,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;oBACvB,GAAG,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;oBAC7B,GAAG,CAAC,KAAK,CAAC,OAAO,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;oBACvC,GAAG,CAAC,KAAK,CAAC,gBAAgB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC5C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;wBAChB,GAAG,CAAC,KAAK,CAAC,eAAe,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC1C,CAAC;oBACD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAChB,CAAC,CAAC,CAAC;gBAEH,GAAG,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;gBACxC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;YAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,GAAG,CAAC,OAAO,CAAC,yBAAyB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC5D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,IAAI,QAAQ,CAAC,WAAW,EAAE,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACrD,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;QAED,6CAA6C;QAC7C,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,cAAc,GAAa,EAAE,CAAC;YAEpC,iBAAiB;YACjB,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACjB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBACrD,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAExC,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAC;oBAClC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;oBACpD,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,cAAc,CAAC,IAAI,CAAC,OAAO,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC;oBACnD,CAAC;gBACH,CAAC;YACH,CAAC;YAED,qBAAqB;YACrB,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;gBACzB,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;gBACnE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,CAAC;gBAEtC,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;oBACxC,IAAI,WAAW,GAAG,KAAK,CAAC;oBAExB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;wBAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC5C,IAAI,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC3B,MAAM,OAAO,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC;4BAChD,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;4BAChE,MAAM,qBAAqB,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;4BAClE,IAAI,qBAAqB,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;gCACnD,WAAW,GAAG,IAAI,CAAC;4BACrB,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,IAAI,CAAC,WAAW,EAAE,CAAC;wBACjB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAClC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,eAAe;YACf,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;gBACxE,GAAG,CAAC,IAAI,CAAC,sBAAsB,cAAc,CAAC,MAAM,8BAA8B,CAAC,CAAC;gBACpF,GAAG,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;gBACxE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,cAAc,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACrC,GAAG,CAAC,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBACvC,CAAC,CAAC,CAAC;gBACH,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,IAAI,CAAC,wBAAwB,QAAQ,CAAC,IAAI,6BAA6B,CAAC,CAAC;gBAC7E,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACd,GAAG,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC;gBAC3D,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACd,GAAG,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"journal.d.ts","sourceRoot":"","sources":["../../src/core/journal.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,QAAQ,GAAG,KAAK,CAAC;IACzB,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;QACpB,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC;KACb,CAAC;CACH;AAED,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,YAAY,EAAE,CAAC;CACzB;AAED,wBAAsB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAiCvE;AAED,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAGvF;AAED,wBAAsB,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAQtF;AAED,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,QAAQ,GAAG,KAAK,GACvB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAU9B;AAED,wBAAsB,QAAQ,CAC5B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,QAAQ,GAAG,KAAK,GACvB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAG9B"}
1
+ {"version":3,"file":"journal.d.ts","sourceRoot":"","sources":["../../src/core/journal.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,QAAQ,GAAG,KAAK,CAAC;IACzB,KAAK,EAAE,SAAS,EAAE,GAAG,MAAM,EAAE,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,GAAG,EAAE,CAAC;QACpB,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC;KACb,CAAC;CACH;AAED,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,YAAY,EAAE,CAAC;CACzB;AAED,wBAAsB,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAkDvE;AAED,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAGvF;AAED,wBAAsB,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAQtF;AAED,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,QAAQ,GAAG,KAAK,GACvB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAU9B;AAED,wBAAsB,QAAQ,CAC5B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,QAAQ,GAAG,KAAK,GACvB,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAG9B"}
@@ -5,29 +5,46 @@ export async function readJournal(journalPath) {
5
5
  if (!(await exists(journalPath))) {
6
6
  return { entries: [] };
7
7
  }
8
- const content = await readFileContent(journalPath);
9
- const journal = JSON.parse(content);
10
- // Migrate old format to new format
11
- let needsMigration = false;
12
- for (const entry of journal.entries) {
13
- if (entry.files.length > 0 && typeof entry.files[0] === 'string') {
14
- needsMigration = true;
15
- // Old format: array of strings
16
- const oldFiles = entry.files;
17
- // Convert to new format with hashes
18
- const newFiles = [];
19
- for (const filePath of oldFiles) {
20
- const hash = await hashFile(filePath);
21
- newFiles.push({ path: filePath, hash });
8
+ try {
9
+ const content = await readFileContent(journalPath);
10
+ const journal = JSON.parse(content);
11
+ // Ensure entries is an array
12
+ if (!journal.entries || !Array.isArray(journal.entries)) {
13
+ console.warn('Invalid journal format, resetting to empty journal');
14
+ return { entries: [] };
15
+ }
16
+ // Migrate old format to new format
17
+ let needsMigration = false;
18
+ for (const entry of journal.entries) {
19
+ if (entry.files && entry.files.length > 0 && typeof entry.files[0] === 'string') {
20
+ needsMigration = true;
21
+ // Old format: array of strings
22
+ const oldFiles = entry.files;
23
+ // Convert to new format with hashes
24
+ const newFiles = [];
25
+ for (const filePath of oldFiles) {
26
+ try {
27
+ const hash = await hashFile(filePath);
28
+ newFiles.push({ path: filePath, hash });
29
+ }
30
+ catch (err) {
31
+ // File might not exist anymore, skip it
32
+ console.warn(`Could not hash file ${filePath}, skipping`);
33
+ }
34
+ }
35
+ entry.files = newFiles;
22
36
  }
23
- entry.files = newFiles;
24
37
  }
38
+ // Save migrated journal
39
+ if (needsMigration) {
40
+ await writeJournal(journalPath, journal);
41
+ }
42
+ return journal;
25
43
  }
26
- // Save migrated journal
27
- if (needsMigration) {
28
- await writeJournal(journalPath, journal);
44
+ catch (err) {
45
+ console.warn('Failed to read journal, resetting to empty journal:', err);
46
+ return { entries: [] };
29
47
  }
30
- return journal;
31
48
  }
32
49
  export async function writeJournal(journalPath, journal) {
33
50
  await ensureDir(dirname(journalPath));