vibefast-cli 1.1.5 → 1.2.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.
- package/CHANGELOG.md +32 -0
- package/README.md +63 -169
- package/dist/commands/add.d.ts +1 -1
- package/dist/commands/add.d.ts.map +1 -1
- package/dist/commands/add.js +547 -589
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/checklist.d.ts +1 -1
- package/dist/commands/checklist.d.ts.map +1 -1
- package/dist/commands/checklist.js +40 -39
- package/dist/commands/checklist.js.map +1 -1
- package/dist/commands/doctor.d.ts +1 -1
- package/dist/commands/doctor.js +22 -22
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/env.d.ts +1 -1
- package/dist/commands/env.d.ts.map +1 -1
- package/dist/commands/env.js +58 -53
- package/dist/commands/env.js.map +1 -1
- package/dist/commands/health.d.ts +1 -1
- package/dist/commands/health.d.ts.map +1 -1
- package/dist/commands/health.js +101 -93
- package/dist/commands/health.js.map +1 -1
- package/dist/commands/init.d.ts +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +416 -296
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/remove.d.ts +1 -1
- package/dist/commands/remove.d.ts.map +1 -1
- package/dist/commands/remove.js +77 -64
- package/dist/commands/remove.js.map +1 -1
- package/dist/commands/status.d.ts +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +15 -14
- package/dist/commands/status.js.map +1 -1
- package/dist/core/__tests__/detect.test.js +68 -34
- package/dist/core/__tests__/detect.test.js.map +1 -1
- package/dist/core/ast.d.ts +14 -0
- package/dist/core/ast.d.ts.map +1 -0
- package/dist/core/ast.js +239 -0
- package/dist/core/ast.js.map +1 -0
- package/dist/core/codemod.d.ts.map +1 -1
- package/dist/core/codemod.js +62 -44
- package/dist/core/codemod.js.map +1 -1
- package/dist/core/config.d.ts +10 -0
- package/dist/core/config.d.ts.map +1 -0
- package/dist/core/config.js +51 -0
- package/dist/core/config.js.map +1 -0
- package/dist/core/detect.d.ts +8 -2
- package/dist/core/detect.d.ts.map +1 -1
- package/dist/core/detect.js +52 -21
- package/dist/core/detect.js.map +1 -1
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +9 -8
- package/dist/core/errors.js.map +1 -1
- package/dist/core/exec.d.ts +16 -0
- package/dist/core/exec.d.ts.map +1 -0
- package/dist/core/exec.js +48 -0
- package/dist/core/exec.js.map +1 -0
- package/dist/core/manualSteps.d.ts +7 -0
- package/dist/core/manualSteps.d.ts.map +1 -0
- package/dist/core/manualSteps.js +59 -0
- package/dist/core/manualSteps.js.map +1 -0
- package/dist/core/paths.d.ts +3 -1
- package/dist/core/paths.d.ts.map +1 -1
- package/dist/core/paths.js +14 -10
- package/dist/core/paths.js.map +1 -1
- package/dist/core/spinner.d.ts +1 -1
- package/dist/core/spinner.d.ts.map +1 -1
- package/dist/core/spinner.js +38 -8
- package/dist/core/spinner.js.map +1 -1
- package/dist/core/vosk.d.ts.map +1 -1
- package/dist/core/vosk.js +50 -39
- package/dist/core/vosk.js.map +1 -1
- package/docs/manual-testing.md +91 -0
- package/package.json +6 -3
- package/recipes/audio-recorder/apps/native/src/app/audio-recorder/index.tsx +5 -0
- package/recipes/audio-recorder/recipe.json +3 -3
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/components/audio-player.tsx +301 -0
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/components/audio-recorder.tsx +373 -0
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/components/audio-waveform.tsx +270 -0
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/components/index.ts +4 -0
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/components/recording-list.tsx +89 -0
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/demo/audio-player-demo.tsx +66 -0
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/demo/audio-recorder-cloud.tsx +68 -0
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/demo/audio-recorder-interview.tsx +102 -0
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/demo/basic.tsx +27 -0
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/demo/index.ts +5 -0
- package/recipes/audio-recorder-supabase/apps/native/src/features/audio-recorder/demo/with-recording-list-demo.tsx +82 -0
- package/recipes/audio-recorder-supabase/packages/backend/src/services/recordings.ts +369 -0
- package/recipes/audio-recorder-supabase/packages/backend/supabase/migrations/recordings.sql +70 -0
- package/recipes/audio-recorder-supabase/recipe.json +35 -0
- package/recipes/audio-recorder-supabase@latest.zip +0 -0
- package/recipes/audio-recorder@latest.zip +0 -0
- package/recipes/charts/apps/native/src/features/charts/components/bar-chart.tsx +3 -3
- package/recipes/charts/apps/native/src/features/charts/components/candlestick-chart.tsx +2 -2
- package/recipes/charts/apps/native/src/features/charts/components/chart-card.tsx +5 -5
- package/recipes/charts/apps/native/src/features/charts/components/column-chart.tsx +3 -3
- package/recipes/charts/apps/native/src/features/charts/components/doughnut-chart.tsx +20 -4
- package/recipes/charts/apps/native/src/features/charts/components/line-chart.tsx +7 -6
- package/recipes/charts/apps/native/src/features/charts/components/radar-chart.tsx +6 -4
- package/recipes/charts/apps/native/src/features/charts/components/radial-bar-chart.tsx +1 -1
- package/recipes/charts/apps/native/src/features/charts/components/stacked-bar-chart.tsx +5 -4
- package/recipes/charts/recipe.json +4 -13
- package/recipes/charts@latest.zip +0 -0
- package/recipes/chatbot/apps/native/src/app/chatbot/index.tsx +1 -0
- package/recipes/chatbot/apps/native/src/features/chatbot/components/chat-markdown.tsx +86 -86
- package/recipes/chatbot/apps/native/src/features/chatbot/components/markdown/code-block.tsx +86 -53
- package/recipes/chatbot/recipe.json +26 -92
- package/recipes/chatbot-supabase/apps/native/src/api-client/supabase/chatbot.ts +515 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/app/index.tsx +257 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/chat-header-buttons.tsx +59 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/chat-input-bar.tsx +485 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/chat-markdown.tsx +575 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/chat-message-bubble.tsx +223 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/chat-settings-modal.tsx +161 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/image-preview-list.tsx +116 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/markdown/code-block.tsx +165 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/markdown/index.ts +10 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/markdown/table-renderer.tsx +129 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/message-error-boundary.tsx +78 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/message-list.tsx +170 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/model-selector.tsx +283 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/report-content-modal.tsx +188 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/components/suggested-messages.tsx +67 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/constants/models.ts +20 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/constants/report-reasons.ts +9 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/hooks/use-attachment-cache.ts +142 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/hooks/use-chat-config.ts +458 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/hooks/use-chat-handlers.ts +429 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/hooks/use-chatbot-settings.ts +89 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/hooks/use-conversation.ts +90 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/hooks/use-image-picker.ts +122 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/hooks/use-keyboard-coordinator.ts +161 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/hooks/use-smart-scroll-manager.ts +213 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/models/index.ts +86 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/models/models.ts +162 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/models/providers.ts +62 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/models/types.ts +40 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/services/file-uploader.ts +287 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/services/message-handler-service.ts +189 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/types/index.ts +70 -0
- package/recipes/chatbot-supabase/apps/native/src/features/chatbot/utils/chat-telemetry.ts +91 -0
- package/recipes/chatbot-supabase/packages/backend/src/services/conversations.ts +243 -0
- package/recipes/chatbot-supabase/packages/backend/src/services/messages.ts +327 -0
- package/recipes/chatbot-supabase/packages/backend/supabase/functions/chat-stream/index.ts +347 -0
- package/recipes/chatbot-supabase/packages/backend/supabase/migrations/chatbot.sql +104 -0
- package/recipes/chatbot-supabase/recipe.json +79 -0
- package/recipes/chatbot-supabase@latest.zip +0 -0
- package/recipes/chatbot.zip +0 -0
- package/recipes/chatbot@latest.zip +0 -0
- package/recipes/image-analysis/packages/backend/convex/imageAnalysis/index.ts +2 -2
- package/recipes/image-analysis/packages/backend/convex/imageAnalysis.ts +0 -1
- package/recipes/image-analysis/recipe.json +15 -55
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/app/analysis-options-screen.tsx +304 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/app/camera.tsx +221 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/app/image-capture-screen.tsx +333 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/app/loading-screen.tsx +214 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/app/loading.tsx +191 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/app/results.tsx +137 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/app/trait-details.tsx +172 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/app/use-analysis-data.ts +160 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/app/use-results-screen.ts +151 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/achievement-badge.tsx +77 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/achievement-card.tsx +75 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/achievement-unlocked-modal.tsx +162 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/achievements-section.tsx +44 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/advice-list.tsx +42 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/circular-progress.tsx +233 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/content-card.tsx +38 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/error-state.tsx +42 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/index.ts +9 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/loading-state.tsx +26 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/profile-image.tsx +60 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/results-header.tsx +62 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/score-display.tsx +54 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/share-options-modal.tsx +110 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/components/results/traits-grid.tsx +74 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/config/analysis-config.ts +80 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/config/master-analysis-config.ts +157 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/hooks/index.ts +1 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/hooks/use-analysis.ts +38 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/hooks/use-image-analysis.ts +208 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/services/analysis-service.ts +262 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/services/share-service.ts +176 -0
- package/recipes/image-analysis-supabase/apps/native/src/features/image-analyzer/services/trait-details-service.ts +289 -0
- package/recipes/image-analysis-supabase/packages/backend/src/services/image-analyses.ts +132 -0
- package/recipes/image-analysis-supabase/packages/backend/supabase/functions/analyze-image/index.ts +312 -0
- package/recipes/image-analysis-supabase/packages/backend/supabase/migrations/image_analysis.sql +42 -0
- package/recipes/image-analysis-supabase/recipe.json +57 -0
- package/recipes/image-analysis-supabase@latest.zip +0 -0
- package/recipes/image-analysis@latest.zip +0 -0
- package/recipes/image-generator/apps/native/src/features/image-generator/app/index.tsx +16 -2
- package/recipes/image-generator/apps/native/src/features/image-generator/components/image-model-selector.tsx +11 -5
- package/recipes/image-generator/apps/native/src/features/image-generator/hooks/use-image-generator.ts +11 -5
- package/recipes/image-generator/packages/backend/convex/imageGeneration/index.ts +2 -2
- package/recipes/image-generator/recipe.json +16 -39
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/app/_layout.tsx +26 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/app/gallery.tsx +217 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/app/index.tsx +251 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/components/gallery-image.tsx +25 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/components/image-detail-modal.tsx +215 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/components/image-model-selector.tsx +216 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/components/image-placeholder.tsx +26 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/hooks/use-image-gallery.ts +71 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/hooks/use-image-generator-settings.ts +152 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/hooks/use-image-generator.ts +103 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/models/models.ts +66 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/services/image-gallery-service.ts +96 -0
- package/recipes/image-generator-supabase/apps/native/src/features/image-generator/services/image-save-service.ts +120 -0
- package/recipes/image-generator-supabase/packages/backend/supabase/functions/generate-image/index.ts +291 -0
- package/recipes/image-generator-supabase/packages/backend/supabase/migrations/image_generator.sql +71 -0
- package/recipes/image-generator-supabase/recipe.json +59 -0
- package/recipes/image-generator-supabase@latest.zip +0 -0
- package/recipes/image-generator@latest.zip +0 -0
- package/recipes/ios-widget/recipe.json +15 -24
- package/recipes/ios-widget@latest.zip +0 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/analytics/index.ts +9 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/components/onboarding-with-analytics.tsx +141 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/components/onboarding.tsx +173 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/config/onboarding-flow-config.ts +189 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/demo-one/app/index.tsx +42 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/demo-one/data.ts +32 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/app/index.tsx +43 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/interactive-onboarding.tsx +222 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/ai-tone-step.tsx +133 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/currency-step.tsx +165 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/feature-ai-step.tsx +199 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/feature-chatbot-step.tsx +154 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/feature-manual-step.tsx +156 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/feature-scan-step.tsx +158 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/main-reason-step.tsx +139 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/notification-step.tsx +129 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/overspend-step.tsx +138 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/personalizing-step.tsx +190 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/rating-step.tsx +98 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/reminder-step.tsx +181 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/safety-step.tsx +110 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/struggle-step.tsx +139 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/steps/welcome-step.tsx +217 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/components/ui/onboarding-header.tsx +58 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/expense-tracker/constants.ts +179 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/hooks/use-onboarding-analytics.ts +323 -0
- package/recipes/onboarding/apps/native/src/features/onboarding/services/onboarding-analytics.ts +432 -0
- package/recipes/onboarding/recipe.json +15 -0
- package/recipes/onboarding@latest.zip +0 -0
- package/recipes/payments/recipe.json +28 -61
- package/recipes/payments-supabase/apps/native/src/features/payments/README.md +200 -0
- package/recipes/payments-supabase/apps/native/src/features/payments/app/local-paywall.tsx +194 -0
- package/recipes/payments-supabase/apps/native/src/features/payments/app/remote-paywall.tsx +79 -0
- package/recipes/payments-supabase/apps/native/src/features/payments/components/payment-initializer.tsx +95 -0
- package/recipes/payments-supabase/apps/native/src/features/payments/components/paywall-error-state.tsx +60 -0
- package/recipes/payments-supabase/apps/native/src/features/payments/components/paywall-local-mode.tsx +116 -0
- package/recipes/payments-supabase/apps/native/src/features/payments/components/paywall-product-card.tsx +133 -0
- package/recipes/payments-supabase/apps/native/src/features/payments/components/paywall-remote-mode.tsx +146 -0
- package/recipes/payments-supabase/apps/native/src/features/payments/hooks/use-entitlement.ts +63 -0
- package/recipes/payments-supabase/apps/native/src/features/payments/index.ts +8 -0
- package/recipes/payments-supabase/apps/native/src/features/payments/services/revenuecat-adapter.ts +407 -0
- package/recipes/payments-supabase/packages/backend/src/services/payments.ts +201 -0
- package/recipes/payments-supabase/packages/backend/supabase/migrations/payments.sql +35 -0
- package/recipes/payments-supabase/recipe.json +51 -0
- package/recipes/payments-supabase@latest.zip +0 -0
- package/recipes/payments@latest.zip +0 -0
- package/recipes/quiz/apps/native/src/features/quiz/index.tsx +1 -2
- package/recipes/quiz/recipe.json +6 -9
- package/recipes/quiz@latest.zip +0 -0
- package/recipes/tracker-app/apps/native/src/features/tracker-app/app/index.tsx +1 -2
- package/recipes/tracker-app/recipe.json +7 -10
- package/recipes/tracker-app@latest.zip +0 -0
- package/recipes/voice-bot/recipe.json +8 -68
- package/recipes/voice-bot.zip +0 -0
- package/recipes/voice-bot@latest.zip +0 -0
- package/recipes/wake-word/recipe.json +10 -9
- package/recipes/wake-word.zip +0 -0
- package/recipes/wake-word@latest.zip +0 -0
- package/recipes/charts/apps/native/src/app/(root)/(protected)/charts/index.tsx +0 -3
- package/recipes/chatbot/packages/backend/convex/lib/rateLimit.ts +0 -100
- package/recipes/chatbot/packages/backend/convex/lib/telemetry.ts +0 -29
- package/recipes/chatbot/packages/backend/convex/ragKnowledge.ts +0 -0
- package/recipes/image-analysis/apps/native/assets/features/image-analyzer/front.jpg +0 -0
- package/recipes/image-analysis/apps/native/assets/features/image-analyzer/side.jpg +0 -0
- package/recipes/image-analysis/apps/native/assets/features/image-analyzer/threeQuarter.jpg +0 -0
- package/recipes/image-analysis/apps/native/src/app/(root)/(protected)/analysis/[type]/_layout.tsx +0 -5
- package/recipes/image-analysis/apps/native/src/app/(root)/(protected)/analysis/[type]/analysis-options.tsx +0 -50
- package/recipes/image-analysis/apps/native/src/app/(root)/(protected)/analysis/[type]/camera.tsx +0 -2
- package/recipes/image-analysis/apps/native/src/app/(root)/(protected)/analysis/[type]/index.tsx +0 -50
- package/recipes/image-analysis/apps/native/src/app/(root)/(protected)/analysis/[type]/loading.tsx +0 -50
- package/recipes/image-analysis/apps/native/src/app/(root)/(protected)/analysis/[type]/results.tsx +0 -2
- package/recipes/image-analysis/apps/native/src/app/(root)/(protected)/analysis/[type]/trait-details.tsx +0 -3
- package/recipes/image-analysis/packages/backend/convex/imageAnalysisFunctions.ts +0 -325
- package/recipes/image-analysis/packages/backend/convex/lib/ai/imageAnalysisAdapter.ts +0 -200
- package/recipes/payments/apps/native/src/app/(root)/(protected)/paywall/index.tsx +0 -74
- package/recipes/payments/apps/native/src/app/(root)/(protected)/paywall/local.tsx +0 -25
- package/recipes/payments/apps/native/src/app/(root)/(protected)/paywall/remote.tsx +0 -23
- package/recipes/quiz/apps/native/src/app/(root)/(protected)/quiz/index.tsx +0 -47
- package/recipes/tracker-app/apps/native/src/app/(root)/(protected)/tracker-app/index.tsx +0 -1
- package/recipes/voice-bot/apps/native/src/app/(root)/(protected)/voice-bot/index.tsx +0 -27
- package/recipes/voice-bot/packages/backend/convex/router.ts +0 -81
- /package/recipes/{chatbot/apps/native/src/app/(root)/(protected) → chatbot-supabase/apps/native/src/app}/chatbot/index.tsx +0 -0
- /package/recipes/{image-generator/apps/native/src/app/(root)/(protected) → image-generator-supabase/apps/native/src/app}/image-generator/gallery.tsx +0 -0
- /package/recipes/{image-generator/apps/native/src/app/(root)/(protected) → image-generator-supabase/apps/native/src/app}/image-generator/index.tsx +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../src/commands/remove.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"remove.d.ts","sourceRoot":"","sources":["../../src/commands/remove.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC,eAAO,MAAM,aAAa,SAuMtB,CAAC"}
|
package/dist/commands/remove.js
CHANGED
|
@@ -1,60 +1,65 @@
|
|
|
1
|
-
import { Command } from
|
|
2
|
-
import { log } from
|
|
3
|
-
import { getPaths } from
|
|
4
|
-
import { validateSignature, validateTarget } from
|
|
5
|
-
import { getEntry, removeEntry } from
|
|
6
|
-
import { deleteFile } from
|
|
7
|
-
import { removeNavLinkNative, removeNavLinkWeb } from
|
|
8
|
-
import { hashFile } from
|
|
9
|
-
import { promptYesNo } from
|
|
10
|
-
import { showCommandHint } from
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
.
|
|
15
|
-
.
|
|
16
|
-
.option(
|
|
17
|
-
.option(
|
|
18
|
-
.
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
log.plain(
|
|
22
|
-
log.
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { log } from "../core/log.js";
|
|
3
|
+
import { getPaths } from "../core/paths.js";
|
|
4
|
+
import { validateSignature, validateTarget } from "../core/validate.js";
|
|
5
|
+
import { getEntry, removeEntry } from "../core/journal.js";
|
|
6
|
+
import { deleteFile } from "../core/fsx.js";
|
|
7
|
+
import { removeNavLinkNative, removeNavLinkWeb } from "../core/codemod.js";
|
|
8
|
+
import { hashFile } from "../core/hash.js";
|
|
9
|
+
import { promptYesNo } from "../core/prompt.js";
|
|
10
|
+
import { showCommandHint } from "../core/errors.js";
|
|
11
|
+
import { ensureWithinBase } from "../core/pathGuard.js";
|
|
12
|
+
import { relative } from "path";
|
|
13
|
+
export const removeCommand = new Command("remove")
|
|
14
|
+
.description("Remove a VibeFast feature from your project")
|
|
15
|
+
.argument("<feature>", "Feature name to remove")
|
|
16
|
+
.option("--target <target>", "Target platform (native or web)", "native")
|
|
17
|
+
.option("--dry-run", "Preview changes without applying")
|
|
18
|
+
.option("--force", "Skip modification check")
|
|
19
|
+
.option("--yes", "Answer yes to all prompts")
|
|
20
|
+
.on("--help", () => {
|
|
21
|
+
log.plain("");
|
|
22
|
+
log.info("Examples:");
|
|
23
|
+
log.plain(" vf remove charts --target native");
|
|
24
|
+
log.plain(" vf remove sentry --target web");
|
|
23
25
|
})
|
|
24
26
|
.action(async (feature, options) => {
|
|
25
27
|
try {
|
|
26
28
|
if (!feature) {
|
|
27
|
-
showCommandHint(
|
|
29
|
+
showCommandHint("remove");
|
|
28
30
|
process.exit(1);
|
|
29
31
|
}
|
|
30
|
-
const paths = getPaths();
|
|
32
|
+
const paths = await getPaths();
|
|
31
33
|
const target = options.target;
|
|
32
34
|
// Validate setup
|
|
33
35
|
const config = await validateSignature(paths.signatureFile);
|
|
34
36
|
validateTarget(target, config.targets);
|
|
35
37
|
if (options.dryRun) {
|
|
36
|
-
log.info(
|
|
38
|
+
log.info("[DRY RUN] No changes will be made");
|
|
37
39
|
}
|
|
38
40
|
// Get journal entry (do not mutate journal yet)
|
|
39
41
|
const entry = await getEntry(paths.journalFile, feature, target);
|
|
40
42
|
if (!entry) {
|
|
41
43
|
log.warn(`${feature} is not installed for ${target}`);
|
|
42
|
-
log.info('Run "vf
|
|
44
|
+
log.info('Run "vf status" to see installed features');
|
|
45
|
+
log.info('Run "vf list" to see available features');
|
|
43
46
|
return;
|
|
44
47
|
}
|
|
45
48
|
log.info(`Removing ${feature} from ${target}...`);
|
|
46
49
|
// Check for modifications (unless --force)
|
|
47
50
|
if (!options.force && !options.dryRun) {
|
|
48
|
-
log.info(
|
|
51
|
+
log.info("Checking for file modifications...");
|
|
49
52
|
const modifiedFiles = [];
|
|
50
53
|
// Get file paths from entry
|
|
51
54
|
const filePaths = Array.isArray(entry.files) && entry.files.length > 0
|
|
52
|
-
? typeof entry.files[0] ===
|
|
55
|
+
? typeof entry.files[0] === "string"
|
|
53
56
|
? entry.files
|
|
54
|
-
: entry.files.map(f => f.path)
|
|
57
|
+
: entry.files.map((f) => f.path)
|
|
55
58
|
: [];
|
|
56
|
-
const fileHashes = Array.isArray(entry.files) &&
|
|
57
|
-
|
|
59
|
+
const fileHashes = Array.isArray(entry.files) &&
|
|
60
|
+
entry.files.length > 0 &&
|
|
61
|
+
typeof entry.files[0] !== "string"
|
|
62
|
+
? new Map(entry.files.map((f) => [f.path, f.hash]))
|
|
58
63
|
: new Map();
|
|
59
64
|
for (const filePath of filePaths) {
|
|
60
65
|
const originalHash = fileHashes.get(filePath);
|
|
@@ -62,26 +67,26 @@ export const removeCommand = new Command('remove')
|
|
|
62
67
|
if (!originalHash)
|
|
63
68
|
continue;
|
|
64
69
|
const currentHash = await hashFile(filePath);
|
|
65
|
-
if (currentHash ===
|
|
70
|
+
if (currentHash === "") {
|
|
66
71
|
// File was deleted by user
|
|
67
|
-
modifiedFiles.push({ path: filePath, status:
|
|
72
|
+
modifiedFiles.push({ path: filePath, status: "deleted" });
|
|
68
73
|
}
|
|
69
74
|
else if (currentHash !== originalHash) {
|
|
70
75
|
// File was modified by user
|
|
71
|
-
modifiedFiles.push({ path: filePath, status:
|
|
76
|
+
modifiedFiles.push({ path: filePath, status: "modified" });
|
|
72
77
|
}
|
|
73
78
|
}
|
|
74
79
|
// Warn about modifications
|
|
75
80
|
if (modifiedFiles.length > 0) {
|
|
76
|
-
log.plain(
|
|
77
|
-
log.warn(
|
|
78
|
-
log.plain(
|
|
79
|
-
const modified = modifiedFiles.filter(f => f.status ===
|
|
80
|
-
const deleted = modifiedFiles.filter(f => f.status ===
|
|
81
|
+
log.plain("");
|
|
82
|
+
log.warn("⚠ WARNING: The following files were changed:");
|
|
83
|
+
log.plain("");
|
|
84
|
+
const modified = modifiedFiles.filter((f) => f.status === "modified");
|
|
85
|
+
const deleted = modifiedFiles.filter((f) => f.status === "deleted");
|
|
81
86
|
if (modified.length > 0) {
|
|
82
|
-
log.plain(
|
|
83
|
-
modified.slice(0, 10).forEach(f => {
|
|
84
|
-
const relativePath =
|
|
87
|
+
log.plain(" Modified by you:");
|
|
88
|
+
modified.slice(0, 10).forEach((f) => {
|
|
89
|
+
const relativePath = relative(paths.cwd, f.path);
|
|
85
90
|
log.plain(` • ${relativePath}`);
|
|
86
91
|
});
|
|
87
92
|
if (modified.length > 10) {
|
|
@@ -89,24 +94,24 @@ export const removeCommand = new Command('remove')
|
|
|
89
94
|
}
|
|
90
95
|
}
|
|
91
96
|
if (deleted.length > 0) {
|
|
92
|
-
log.plain(
|
|
93
|
-
log.plain(
|
|
94
|
-
deleted.slice(0, 5).forEach(f => {
|
|
95
|
-
const relativePath =
|
|
97
|
+
log.plain("");
|
|
98
|
+
log.plain(" Already deleted:");
|
|
99
|
+
deleted.slice(0, 5).forEach((f) => {
|
|
100
|
+
const relativePath = relative(paths.cwd, f.path);
|
|
96
101
|
log.plain(` • ${relativePath}`);
|
|
97
102
|
});
|
|
98
103
|
if (deleted.length > 5) {
|
|
99
104
|
log.plain(` ... and ${deleted.length - 5} more`);
|
|
100
105
|
}
|
|
101
106
|
}
|
|
102
|
-
log.plain(
|
|
103
|
-
log.warn(
|
|
104
|
-
log.info(
|
|
105
|
-
log.plain(
|
|
107
|
+
log.plain("");
|
|
108
|
+
log.warn("⚠ Your changes will be LOST if you continue!");
|
|
109
|
+
log.info("💡 Make sure you have committed to Git.");
|
|
110
|
+
log.plain("");
|
|
106
111
|
if (!options.yes) {
|
|
107
|
-
const shouldContinue = await promptYesNo(
|
|
112
|
+
const shouldContinue = await promptYesNo("Continue with removal? (y/N): ", false);
|
|
108
113
|
if (!shouldContinue) {
|
|
109
|
-
log.info(
|
|
114
|
+
log.info("Removal cancelled");
|
|
110
115
|
return;
|
|
111
116
|
}
|
|
112
117
|
}
|
|
@@ -114,43 +119,51 @@ export const removeCommand = new Command('remove')
|
|
|
114
119
|
}
|
|
115
120
|
// Delete files
|
|
116
121
|
const filePaths = Array.isArray(entry.files) && entry.files.length > 0
|
|
117
|
-
? typeof entry.files[0] ===
|
|
122
|
+
? typeof entry.files[0] === "string"
|
|
118
123
|
? entry.files
|
|
119
|
-
: entry.files.map(f => f.path)
|
|
124
|
+
: entry.files.map((f) => f.path)
|
|
120
125
|
: [];
|
|
121
126
|
for (const file of filePaths) {
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
127
|
+
// Security: Validate that delete path is within project directory
|
|
128
|
+
try {
|
|
129
|
+
const safePath = ensureWithinBase(paths.cwd, file, "Delete path");
|
|
130
|
+
const displayPath = relative(paths.cwd, safePath);
|
|
131
|
+
log.info(`Deleting ${displayPath}`);
|
|
132
|
+
if (!options.dryRun) {
|
|
133
|
+
await deleteFile(safePath);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
catch (e) {
|
|
137
|
+
log.warn(`Skipping unsafe path: ${file} (${e.message})`);
|
|
125
138
|
}
|
|
126
139
|
}
|
|
127
140
|
// Remove nav link
|
|
128
141
|
if (entry.insertedNav) {
|
|
129
|
-
log.info(
|
|
130
|
-
const navFile = target ===
|
|
131
|
-
const removeFn = target ===
|
|
142
|
+
log.info("Removing navigation link...");
|
|
143
|
+
const navFile = target === "native" ? paths.nativeNavFile : paths.webNavFile;
|
|
144
|
+
const removeFn = target === "native" ? removeNavLinkNative : removeNavLinkWeb;
|
|
132
145
|
const href = entry.navHref
|
|
133
146
|
? entry.navHref
|
|
134
|
-
: target ===
|
|
147
|
+
: target === "native"
|
|
135
148
|
? `/(root)/(protected)/${feature}`
|
|
136
149
|
: `/${feature}`;
|
|
137
150
|
if (!options.dryRun) {
|
|
138
151
|
await removeFn(navFile, href);
|
|
139
152
|
}
|
|
140
|
-
log.success(
|
|
153
|
+
log.success("Navigation link removed");
|
|
141
154
|
}
|
|
142
155
|
if (!options.dryRun) {
|
|
143
156
|
await removeEntry(paths.journalFile, entry.feature, entry.target);
|
|
144
157
|
}
|
|
145
158
|
log.success(`${feature} removed successfully!`);
|
|
146
159
|
const fileCount = Array.isArray(entry.files) && entry.files.length > 0
|
|
147
|
-
? typeof entry.files[0] ===
|
|
160
|
+
? typeof entry.files[0] === "string"
|
|
148
161
|
? entry.files.length
|
|
149
162
|
: entry.files.length
|
|
150
163
|
: 0;
|
|
151
164
|
log.info(`Files deleted: ${fileCount}`);
|
|
152
165
|
if (options.dryRun) {
|
|
153
|
-
log.warn(
|
|
166
|
+
log.warn("This was a dry run. Run without --dry-run to apply changes.");
|
|
154
167
|
}
|
|
155
168
|
}
|
|
156
169
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../src/commands/remove.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,WAAW,EAAa,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"remove.js","sourceRoot":"","sources":["../../src/commands/remove.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,eAAO,MAAM,aAAa,
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,eAAO,MAAM,aAAa,SA8CtB,CAAC"}
|
package/dist/commands/status.js
CHANGED
|
@@ -1,34 +1,35 @@
|
|
|
1
|
-
import { Command } from
|
|
2
|
-
import { log } from
|
|
3
|
-
import { getPaths } from
|
|
4
|
-
import { readJournal } from
|
|
5
|
-
export const statusCommand = new Command(
|
|
6
|
-
.description(
|
|
1
|
+
import { Command } from "commander";
|
|
2
|
+
import { log } from "../core/log.js";
|
|
3
|
+
import { getPaths } from "../core/paths.js";
|
|
4
|
+
import { readJournal } from "../core/journal.js";
|
|
5
|
+
export const statusCommand = new Command("status")
|
|
6
|
+
.description("Show installed features and their status")
|
|
7
7
|
.action(async () => {
|
|
8
8
|
try {
|
|
9
|
-
const paths = getPaths();
|
|
9
|
+
const paths = await getPaths();
|
|
10
10
|
const journal = await readJournal(paths.journalFile);
|
|
11
11
|
if (journal.entries.length === 0) {
|
|
12
|
-
log.info(
|
|
12
|
+
log.info("No features installed yet");
|
|
13
13
|
log.info('Run "vf list" to see available features');
|
|
14
14
|
return;
|
|
15
15
|
}
|
|
16
|
-
log.info(
|
|
17
|
-
log.plain(
|
|
16
|
+
log.info("Installed features:");
|
|
17
|
+
log.plain("");
|
|
18
18
|
for (const entry of journal.entries) {
|
|
19
|
-
const version = entry.manifest?.version ||
|
|
19
|
+
const version = entry.manifest?.version || "unknown";
|
|
20
20
|
const fileCount = Array.isArray(entry.files) && entry.files.length > 0
|
|
21
|
-
? typeof entry.files[0] ===
|
|
21
|
+
? typeof entry.files[0] === "string"
|
|
22
22
|
? entry.files.length
|
|
23
23
|
: entry.files.length
|
|
24
24
|
: 0;
|
|
25
25
|
log.plain(` ✓ ${entry.feature} (v${version}) - ${entry.target}`);
|
|
26
26
|
log.plain(` Files: ${fileCount}`);
|
|
27
27
|
log.plain(` Installed: ${new Date(entry.ts).toLocaleDateString()}`);
|
|
28
|
-
if (entry.manifest?.manualSteps &&
|
|
28
|
+
if (entry.manifest?.manualSteps &&
|
|
29
|
+
entry.manifest.manualSteps.length > 0) {
|
|
29
30
|
log.plain(` ⚠ Has manual setup steps (run: vf checklist ${entry.feature})`);
|
|
30
31
|
}
|
|
31
|
-
log.plain(
|
|
32
|
+
log.plain("");
|
|
32
33
|
}
|
|
33
34
|
log.info(`Total: ${journal.entries.length} feature(s) installed`);
|
|
34
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.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,WAAW,EAAa,MAAM,oBAAoB,CAAC;AAE5D,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.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,WAAW,EAAa,MAAM,oBAAoB,CAAC;AAE5D,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,0CAA0C,CAAC;KACvD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,QAAQ,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAErD,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YACtC,GAAG,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;YACpD,OAAO;QACT,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;QAChC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAEd,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,EAAE,OAAO,IAAI,SAAS,CAAC;YACrD,MAAM,SAAS,GACb,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAClD,CAAC,CAAC,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ;oBAClC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM;oBACpB,CAAC,CAAE,KAAK,CAAC,KAAqB,CAAC,MAAM;gBACvC,CAAC,CAAC,CAAC,CAAC;YAER,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,CAAC,OAAO,MAAM,OAAO,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;YAClE,GAAG,CAAC,KAAK,CAAC,cAAc,SAAS,EAAE,CAAC,CAAC;YACrC,GAAG,CAAC,KAAK,CAAC,kBAAkB,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;YAEvE,IACE,KAAK,CAAC,QAAQ,EAAE,WAAW;gBAC3B,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EACrC,CAAC;gBACD,GAAG,CAAC,KAAK,CACP,mDAAmD,KAAK,CAAC,OAAO,GAAG,CACpE,CAAC;YACJ,CAAC;YAED,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChB,CAAC;QAED,GAAG,CAAC,IAAI,CAAC,UAAU,OAAO,CAAC,OAAO,CAAC,MAAM,uBAAuB,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,GAAG,CAAC,KAAK,CAAC,0BAA0B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { describe, it, expect, beforeEach, afterEach } from
|
|
2
|
-
import { detectTarget, detectPackageManager } from
|
|
3
|
-
import { mkdirSync, writeFileSync, rmSync, existsSync } from
|
|
4
|
-
import { join } from
|
|
5
|
-
describe(
|
|
6
|
-
const testDir = join(process.cwd(),
|
|
1
|
+
import { describe, it, expect, beforeEach, afterEach } from "vitest";
|
|
2
|
+
import { detectTarget, detectPackageManager, detectBackendType, } from "../detect.js";
|
|
3
|
+
import { mkdirSync, writeFileSync, rmSync, existsSync } from "fs";
|
|
4
|
+
import { join } from "path";
|
|
5
|
+
describe("detect", () => {
|
|
6
|
+
const testDir = join(process.cwd(), "test-detect-temp");
|
|
7
7
|
beforeEach(() => {
|
|
8
8
|
if (existsSync(testDir)) {
|
|
9
9
|
rmSync(testDir, { recursive: true, force: true });
|
|
@@ -15,59 +15,93 @@ describe('detect', () => {
|
|
|
15
15
|
rmSync(testDir, { recursive: true, force: true });
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
|
-
describe(
|
|
19
|
-
it(
|
|
20
|
-
const nativeDir = join(testDir,
|
|
18
|
+
describe("detectTarget", () => {
|
|
19
|
+
it("should detect native when only native dir exists", async () => {
|
|
20
|
+
const nativeDir = join(testDir, "apps", "native");
|
|
21
21
|
mkdirSync(nativeDir, { recursive: true });
|
|
22
22
|
const result = await detectTarget(testDir);
|
|
23
|
-
expect(result).toBe(
|
|
23
|
+
expect(result).toBe("native");
|
|
24
24
|
});
|
|
25
|
-
it(
|
|
26
|
-
const webDir = join(testDir,
|
|
25
|
+
it("should detect web when only web dir exists", async () => {
|
|
26
|
+
const webDir = join(testDir, "apps", "web");
|
|
27
27
|
mkdirSync(webDir, { recursive: true });
|
|
28
28
|
const result = await detectTarget(testDir);
|
|
29
|
-
expect(result).toBe(
|
|
29
|
+
expect(result).toBe("web");
|
|
30
30
|
});
|
|
31
|
-
it(
|
|
31
|
+
it("should return null when neither exists", async () => {
|
|
32
32
|
const result = await detectTarget(testDir);
|
|
33
33
|
expect(result).toBeNull();
|
|
34
34
|
});
|
|
35
|
-
it(
|
|
36
|
-
const nativeDir = join(testDir,
|
|
37
|
-
const webDir = join(testDir,
|
|
35
|
+
it("should detect native when both exist and native has expo", async () => {
|
|
36
|
+
const nativeDir = join(testDir, "apps", "native");
|
|
37
|
+
const webDir = join(testDir, "apps", "web");
|
|
38
38
|
mkdirSync(nativeDir, { recursive: true });
|
|
39
39
|
mkdirSync(webDir, { recursive: true });
|
|
40
|
-
const nativePkg = join(nativeDir,
|
|
41
|
-
writeFileSync(nativePkg, JSON.stringify({ dependencies: { expo:
|
|
40
|
+
const nativePkg = join(nativeDir, "package.json");
|
|
41
|
+
writeFileSync(nativePkg, JSON.stringify({ dependencies: { expo: "^50.0.0" } }));
|
|
42
42
|
const result = await detectTarget(testDir);
|
|
43
|
-
expect(result).toBe(
|
|
43
|
+
expect(result).toBe("native");
|
|
44
44
|
});
|
|
45
45
|
});
|
|
46
|
-
describe(
|
|
47
|
-
it(
|
|
48
|
-
writeFileSync(join(testDir,
|
|
46
|
+
describe("detectPackageManager", () => {
|
|
47
|
+
it("should detect pnpm", () => {
|
|
48
|
+
writeFileSync(join(testDir, "pnpm-lock.yaml"), "");
|
|
49
49
|
const result = detectPackageManager(testDir);
|
|
50
|
-
expect(result).toBe(
|
|
50
|
+
expect(result).toBe("pnpm");
|
|
51
51
|
});
|
|
52
|
-
it(
|
|
53
|
-
writeFileSync(join(testDir,
|
|
52
|
+
it("should detect npm", () => {
|
|
53
|
+
writeFileSync(join(testDir, "package-lock.json"), "");
|
|
54
54
|
const result = detectPackageManager(testDir);
|
|
55
|
-
expect(result).toBe(
|
|
55
|
+
expect(result).toBe("npm");
|
|
56
56
|
});
|
|
57
|
-
it(
|
|
58
|
-
writeFileSync(join(testDir,
|
|
57
|
+
it("should detect yarn", () => {
|
|
58
|
+
writeFileSync(join(testDir, "yarn.lock"), "");
|
|
59
59
|
const result = detectPackageManager(testDir);
|
|
60
|
-
expect(result).toBe(
|
|
60
|
+
expect(result).toBe("yarn");
|
|
61
61
|
});
|
|
62
|
-
it(
|
|
63
|
-
writeFileSync(join(testDir,
|
|
62
|
+
it("should detect bun", () => {
|
|
63
|
+
writeFileSync(join(testDir, "bun.lockb"), "");
|
|
64
64
|
const result = detectPackageManager(testDir);
|
|
65
|
-
expect(result).toBe(
|
|
65
|
+
expect(result).toBe("bun");
|
|
66
66
|
});
|
|
67
|
-
it(
|
|
67
|
+
it("should return null when no lockfile exists", () => {
|
|
68
68
|
const result = detectPackageManager(testDir);
|
|
69
69
|
expect(result).toBeNull();
|
|
70
70
|
});
|
|
71
71
|
});
|
|
72
|
+
describe("detectBackendType", () => {
|
|
73
|
+
it("should return convex when signature has backend: convex", async () => {
|
|
74
|
+
writeFileSync(join(testDir, ".vibefast-signature.json"), JSON.stringify({ backend: "convex" }));
|
|
75
|
+
const result = await detectBackendType(testDir);
|
|
76
|
+
expect(result).toBe("convex");
|
|
77
|
+
});
|
|
78
|
+
it("should return supabase when signature has backend: supabase", async () => {
|
|
79
|
+
writeFileSync(join(testDir, ".vibefast-signature.json"), JSON.stringify({ backend: "supabase" }));
|
|
80
|
+
const result = await detectBackendType(testDir);
|
|
81
|
+
expect(result).toBe("supabase");
|
|
82
|
+
});
|
|
83
|
+
it("should fall back to supabase when supabase dir exists", async () => {
|
|
84
|
+
const supabaseDir = join(testDir, "packages", "backend", "supabase");
|
|
85
|
+
mkdirSync(supabaseDir, { recursive: true });
|
|
86
|
+
const result = await detectBackendType(testDir);
|
|
87
|
+
expect(result).toBe("supabase");
|
|
88
|
+
});
|
|
89
|
+
it("should default to convex when no indicators found", async () => {
|
|
90
|
+
const result = await detectBackendType(testDir);
|
|
91
|
+
expect(result).toBe("convex");
|
|
92
|
+
});
|
|
93
|
+
it("should ignore invalid backend value in signature and use filesystem", async () => {
|
|
94
|
+
writeFileSync(join(testDir, ".vibefast-signature.json"), JSON.stringify({ backend: "invalid" }));
|
|
95
|
+
const supabaseDir = join(testDir, "packages", "backend", "supabase");
|
|
96
|
+
mkdirSync(supabaseDir, { recursive: true });
|
|
97
|
+
const result = await detectBackendType(testDir);
|
|
98
|
+
expect(result).toBe("supabase");
|
|
99
|
+
});
|
|
100
|
+
it("should ignore malformed JSON in signature file", async () => {
|
|
101
|
+
writeFileSync(join(testDir, ".vibefast-signature.json"), "not json");
|
|
102
|
+
const result = await detectBackendType(testDir);
|
|
103
|
+
expect(result).toBe("convex");
|
|
104
|
+
});
|
|
105
|
+
});
|
|
72
106
|
});
|
|
73
107
|
//# sourceMappingURL=detect.test.js.map
|