appiq-solution 1.4.7 → 1.4.9
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/README.md +172 -48
- package/bmad-core/agent-teams/team-fullstack.yaml +1 -11
- package/bmad-core/agents/analyst.md +3 -7
- package/bmad-core/agents/architect.md +0 -6
- package/bmad-core/agents/dev.md +5 -24
- package/bmad-core/agents/pm.md +3 -7
- package/bmad-core/agents/qa.md +0 -17
- package/bmad-core/agents/sm.md +3 -8
- package/bmad-core/agents/ux-expert.md +3 -8
- package/bmad-core/data/technical-preferences.md +1 -147
- package/bmad-core/templates/fullstack-architecture-tmpl.yaml +5 -12
- package/bmad-core/workflows/brownfield-fullstack.yaml +1 -15
- package/bmad-core/workflows/greenfield-fullstack.yaml +5 -49
- package/bmad-core/working-in-the-brownfield.md +10 -19
- package/dist/agents/bmad-orchestrator.txt +0 -111
- package/dist/agents/pm.txt +2 -0
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +0 -111
- package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +0 -111
- package/dist/teams/team-all.txt +2 -111
- package/dist/teams/team-fullstack.txt +2 -111
- package/dist/teams/team-ide-minimal.txt +0 -111
- package/dist/teams/team-no-ui.txt +2 -111
- package/package.json +60 -18
- package/tools/cli.js +3 -3
- package/tools/installer/package-lock.json +2 -2
- package/#NEW APP PROMPT/ARCHITECTURE.md +0 -279
- package/#NEW APP PROMPT/ARCHITECTURE_UNIFIED.md +0 -414
- package/#NEW APP PROMPT/accesibility_prompt.md +0 -103
- package/#NEW APP PROMPT/clean-code.mdc +0 -55
- package/#NEW APP PROMPT/codequality.mdc +0 -47
- package/#NEW APP PROMPT/flutter-ai-rules/LICENSE +0 -21
- package/#NEW APP PROMPT/flutter-ai-rules/README.md +0 -104
- package/#NEW APP PROMPT/flutter-ai-rules/combined/README.md +0 -25
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart.md +0 -192
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart__under_6K.md +0 -99
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_bloc_mocktail.md +0 -308
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_bloc_mocktail__under_6K.md +0 -87
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_change_notifier.md +0 -254
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_change_notifier__under_6K.md +0 -98
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_provider.md +0 -261
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_provider__under_6K.md +0 -105
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_riverpod_mockito.md +0 -371
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_dart_riverpod_mockito__under_6K.md +0 -92
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_bloc.md +0 -287
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_bloc__under_6K.md +0 -68
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_riverpod.md +0 -375
- package/#NEW APP PROMPT/flutter-ai-rules/combined/flutter_with_riverpod__under_6K.md +0 -106
- package/#NEW APP PROMPT/flutter-ai-rules/media/flutter_ai_rules.png +0 -0
- package/#NEW APP PROMPT/flutter-ai-rules/media/mocktail_md_01.png +0 -0
- package/#NEW APP PROMPT/flutter-ai-rules/media/mocktail_md_02.png +0 -0
- package/#NEW APP PROMPT/flutter-ai-rules/rules/bloc.md +0 -94
- package/#NEW APP PROMPT/flutter-ai-rules/rules/dart_3_updates.md +0 -93
- package/#NEW APP PROMPT/flutter-ai-rules/rules/effective_dart.md +0 -105
- package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_app_architecture.md +0 -57
- package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_change_notifier.md +0 -62
- package/#NEW APP PROMPT/flutter-ai-rules/rules/flutter_errors.md +0 -11
- package/#NEW APP PROMPT/flutter-ai-rules/rules/mockito.md +0 -31
- package/#NEW APP PROMPT/flutter-ai-rules/rules/mocktail.md +0 -24
- package/#NEW APP PROMPT/flutter-ai-rules/rules/provider.md +0 -69
- package/#NEW APP PROMPT/flutter-ai-rules/rules/riverpod.md +0 -188
- package/#NEW APP PROMPT/generate ssh.md +0 -4
- package/#NEW APP PROMPT/project_ai_prompt.md +0 -544
- package/#Tools/APPIQ-METHOD/.bmad-config.json +0 -13
- package/#Tools/APPIQ-METHOD/.cursor/commands/analyze.md +0 -27
- package/#Tools/APPIQ-METHOD/.cursor/commands/appiq.md +0 -27
- package/#Tools/APPIQ-METHOD/.cursor/commands/help.md +0 -27
- package/#Tools/APPIQ-METHOD/.cursor/commands/story.md +0 -27
- package/#Tools/APPIQ-METHOD/DEVELOPMENT_GUIDE.md +0 -855
- package/#Tools/APPIQ-METHOD/NPM-README.md +0 -138
- package/#Tools/APPIQ-METHOD/README.md +0 -107
- package/#Tools/APPIQ-METHOD/SMART_WORKFLOW_GUIDE.md +0 -401
- package/#Tools/APPIQ-METHOD/activate-appiq.js +0 -81
- package/#Tools/APPIQ-METHOD/appiq-solution/README.md +0 -226
- package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-all.yaml +0 -14
- package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-flutter-mobile.yaml +0 -114
- package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-fullstack.yaml +0 -28
- package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-ide-minimal.yaml +0 -10
- package/#Tools/APPIQ-METHOD/bmad-core/agent-teams/team-no-ui.yaml +0 -13
- package/#Tools/APPIQ-METHOD/bmad-core/agents/analyst.md +0 -85
- package/#Tools/APPIQ-METHOD/bmad-core/agents/architect.md +0 -90
- package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-master.md +0 -108
- package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-orchestrator.md +0 -150
- package/#Tools/APPIQ-METHOD/bmad-core/agents/bmad-smart-launcher.md +0 -170
- package/#Tools/APPIQ-METHOD/bmad-core/agents/dev.md +0 -95
- package/#Tools/APPIQ-METHOD/bmad-core/agents/init-flow-po.md +0 -143
- package/#Tools/APPIQ-METHOD/bmad-core/agents/pm.md +0 -85
- package/#Tools/APPIQ-METHOD/bmad-core/agents/po.md +0 -76
- package/#Tools/APPIQ-METHOD/bmad-core/agents/qa.md +0 -86
- package/#Tools/APPIQ-METHOD/bmad-core/agents/sm.md +0 -67
- package/#Tools/APPIQ-METHOD/bmad-core/agents/ux-expert.md +0 -71
- package/#Tools/APPIQ-METHOD/bmad-core/bmad-core/user-guide.md +0 -0
- package/#Tools/APPIQ-METHOD/bmad-core/checklists/architect-checklist.md +0 -443
- package/#Tools/APPIQ-METHOD/bmad-core/checklists/change-checklist.md +0 -182
- package/#Tools/APPIQ-METHOD/bmad-core/checklists/pm-checklist.md +0 -375
- package/#Tools/APPIQ-METHOD/bmad-core/checklists/po-master-checklist.md +0 -441
- package/#Tools/APPIQ-METHOD/bmad-core/checklists/security-validation-checklist.md +0 -332
- package/#Tools/APPIQ-METHOD/bmad-core/checklists/story-dod-checklist.md +0 -101
- package/#Tools/APPIQ-METHOD/bmad-core/checklists/story-draft-checklist.md +0 -156
- package/#Tools/APPIQ-METHOD/bmad-core/core-config.yaml +0 -20
- package/#Tools/APPIQ-METHOD/bmad-core/core-config.yaml.bak +0 -20
- package/#Tools/APPIQ-METHOD/bmad-core/data/backend-services-integration.md +0 -686
- package/#Tools/APPIQ-METHOD/bmad-core/data/bmad-kb.md +0 -803
- package/#Tools/APPIQ-METHOD/bmad-core/data/brainstorming-techniques.md +0 -36
- package/#Tools/APPIQ-METHOD/bmad-core/data/elicitation-methods.md +0 -134
- package/#Tools/APPIQ-METHOD/bmad-core/data/shadcn-ui-integration.md +0 -388
- package/#Tools/APPIQ-METHOD/bmad-core/data/technical-preferences.md +0 -149
- package/#Tools/APPIQ-METHOD/bmad-core/enhanced-ide-development-workflow.md +0 -43
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/advanced-elicitation.md +0 -117
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/brownfield-create-epic.md +0 -160
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/brownfield-create-story.md +0 -147
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/correct-course.md +0 -70
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-brownfield-story.md +0 -304
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-deep-research-prompt.md +0 -289
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-flutter-story.md +0 -197
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/create-next-story.md +0 -112
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/document-project.md +0 -341
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/facilitate-brainstorming-session.md +0 -136
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/generate-ai-frontend-prompt.md +0 -51
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/index-docs.md +0 -179
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/intelligent-epic-creation.md +0 -234
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/kb-mode-interaction.md +0 -75
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/review-story.md +0 -145
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/shard-doc.md +0 -187
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/smart-project-analysis.md +0 -289
- package/#Tools/APPIQ-METHOD/bmad-core/tasks/validate-next-story.md +0 -134
- package/#Tools/APPIQ-METHOD/bmad-core/templates/architecture-tmpl.yaml +0 -650
- package/#Tools/APPIQ-METHOD/bmad-core/templates/brainstorming-output-tmpl.yaml +0 -156
- package/#Tools/APPIQ-METHOD/bmad-core/templates/brownfield-architecture-tmpl.yaml +0 -476
- package/#Tools/APPIQ-METHOD/bmad-core/templates/brownfield-prd-tmpl.yaml +0 -280
- package/#Tools/APPIQ-METHOD/bmad-core/templates/competitor-analysis-tmpl.yaml +0 -293
- package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-mobile-prd-tmpl.yaml +0 -330
- package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-story-tmpl.yaml +0 -376
- package/#Tools/APPIQ-METHOD/bmad-core/templates/flutter-ui-spec-tmpl.yaml +0 -415
- package/#Tools/APPIQ-METHOD/bmad-core/templates/front-end-architecture-tmpl.yaml +0 -206
- package/#Tools/APPIQ-METHOD/bmad-core/templates/front-end-spec-tmpl.yaml +0 -349
- package/#Tools/APPIQ-METHOD/bmad-core/templates/fullstack-architecture-tmpl.yaml +0 -812
- package/#Tools/APPIQ-METHOD/bmad-core/templates/market-research-tmpl.yaml +0 -252
- package/#Tools/APPIQ-METHOD/bmad-core/templates/prd-tmpl.yaml +0 -202
- package/#Tools/APPIQ-METHOD/bmad-core/templates/project-brief-tmpl.yaml +0 -221
- package/#Tools/APPIQ-METHOD/bmad-core/templates/story-tmpl.yaml +0 -137
- package/#Tools/APPIQ-METHOD/bmad-core/user-guide.md +0 -251
- package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-fullstack.yaml +0 -311
- package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-service.yaml +0 -187
- package/#Tools/APPIQ-METHOD/bmad-core/workflows/brownfield-ui.yaml +0 -197
- package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-fullstack.yaml +0 -284
- package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-service.yaml +0 -206
- package/#Tools/APPIQ-METHOD/bmad-core/workflows/greenfield-ui.yaml +0 -235
- package/#Tools/APPIQ-METHOD/bmad-core/working-in-the-brownfield.md +0 -373
- package/#Tools/APPIQ-METHOD/commands/README.md +0 -28
- package/#Tools/APPIQ-METHOD/commands/analyze.md +0 -27
- package/#Tools/APPIQ-METHOD/commands/appiq.md +0 -27
- package/#Tools/APPIQ-METHOD/commands/help.md +0 -27
- package/#Tools/APPIQ-METHOD/commands/story.md +0 -27
- package/#Tools/APPIQ-METHOD/dist/agents/analyst.txt +0 -2882
- package/#Tools/APPIQ-METHOD/dist/agents/architect.txt +0 -3543
- package/#Tools/APPIQ-METHOD/dist/agents/bmad-master.txt +0 -8756
- package/#Tools/APPIQ-METHOD/dist/agents/bmad-orchestrator.txt +0 -1490
- package/#Tools/APPIQ-METHOD/dist/agents/dev.txt +0 -428
- package/#Tools/APPIQ-METHOD/dist/agents/pm.txt +0 -2229
- package/#Tools/APPIQ-METHOD/dist/agents/po.txt +0 -1364
- package/#Tools/APPIQ-METHOD/dist/agents/qa.txt +0 -386
- package/#Tools/APPIQ-METHOD/dist/agents/sm.txt +0 -668
- package/#Tools/APPIQ-METHOD/dist/agents/ux-expert.txt +0 -701
- package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +0 -2408
- package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +0 -1631
- package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +0 -822
- package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +0 -10989
- package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +0 -4047
- package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +0 -3744
- package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +0 -465
- package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +0 -990
- package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +0 -15467
- package/#Tools/APPIQ-METHOD/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +0 -2077
- package/#Tools/APPIQ-METHOD/dist/teams/team-all.txt +0 -11062
- package/#Tools/APPIQ-METHOD/dist/teams/team-fullstack.txt +0 -10392
- package/#Tools/APPIQ-METHOD/dist/teams/team-ide-minimal.txt +0 -3507
- package/#Tools/APPIQ-METHOD/dist/teams/team-no-ui.txt +0 -8951
- package/#Tools/APPIQ-METHOD/install-appiq.sh +0 -41
- package/#Tools/APPIQ-METHOD/package-lock.json +0 -631
- package/#Tools/APPIQ-METHOD/package.json +0 -44
- package/#Tools/APPIQ-METHOD/tasks/todo.md +0 -275
- package/#Tools/APPIQ-METHOD/tools/appiq-installer.js +0 -2711
- package/#Tools/APPIQ-METHOD/tools/bmad-npx-wrapper.js +0 -39
- package/#Tools/APPIQ-METHOD/tools/builders/web-builder.js +0 -681
- package/#Tools/APPIQ-METHOD/tools/bump-all-versions.js +0 -106
- package/#Tools/APPIQ-METHOD/tools/bump-expansion-version.js +0 -83
- package/#Tools/APPIQ-METHOD/tools/cli.js +0 -152
- package/#Tools/APPIQ-METHOD/tools/epic-solution-installer.js +0 -536
- package/#Tools/APPIQ-METHOD/tools/flattener/main.js +0 -570
- package/#Tools/APPIQ-METHOD/tools/installer/README.md +0 -8
- package/#Tools/APPIQ-METHOD/tools/installer/bin/bmad.js +0 -483
- package/#Tools/APPIQ-METHOD/tools/installer/config/ide-agent-config.yaml +0 -58
- package/#Tools/APPIQ-METHOD/tools/installer/config/install.config.yaml +0 -92
- package/#Tools/APPIQ-METHOD/tools/installer/lib/config-loader.js +0 -253
- package/#Tools/APPIQ-METHOD/tools/installer/lib/file-manager.js +0 -411
- package/#Tools/APPIQ-METHOD/tools/installer/lib/ide-base-setup.js +0 -227
- package/#Tools/APPIQ-METHOD/tools/installer/lib/ide-setup.js +0 -1096
- package/#Tools/APPIQ-METHOD/tools/installer/lib/installer.js +0 -1772
- package/#Tools/APPIQ-METHOD/tools/installer/lib/memory-profiler.js +0 -224
- package/#Tools/APPIQ-METHOD/tools/installer/lib/module-manager.js +0 -110
- package/#Tools/APPIQ-METHOD/tools/installer/lib/resource-locator.js +0 -310
- package/#Tools/APPIQ-METHOD/tools/installer/package-lock.json +0 -906
- package/#Tools/APPIQ-METHOD/tools/installer/package.json +0 -43
- package/#Tools/APPIQ-METHOD/tools/lib/dependency-resolver.js +0 -179
- package/#Tools/APPIQ-METHOD/tools/lib/yaml-utils.js +0 -29
- package/#Tools/APPIQ-METHOD/tools/md-assets/web-agent-startup-instructions.md +0 -39
- package/#Tools/APPIQ-METHOD/tools/semantic-release-sync-installer.js +0 -30
- package/#Tools/APPIQ-METHOD/tools/setup-ide-commands.js +0 -348
- package/#Tools/APPIQ-METHOD/tools/smart-installer.js +0 -592
- package/#Tools/APPIQ-METHOD/tools/sync-installer-version.js +0 -34
- package/#Tools/APPIQ-METHOD/tools/update-expansion-version.js +0 -54
- package/#Tools/APPIQ-METHOD/tools/upgraders/v3-to-v4-upgrader.js +0 -763
- package/#Tools/APPIQ-METHOD/tools/version-bump.js +0 -79
- package/#Tools/APPIQ-METHOD/tools/yaml-format.js +0 -240
- package/#Tools/SkyReels-V2/.pre-commit-config.yaml +0 -25
- package/#Tools/SkyReels-V2/LICENSE.txt +0 -38
- package/#Tools/SkyReels-V2/README.md +0 -766
- package/#Tools/SkyReels-V2/generate_video.py +0 -161
- package/#Tools/SkyReels-V2/generate_video_df.py +0 -220
- package/#Tools/SkyReels-V2/requirements.txt +0 -16
- package/#Tools/SkyReels-V2/skycaptioner_v1/README.md +0 -278
- package/#Tools/SkyReels-V2/skycaptioner_v1/examples/test.csv +0 -5
- package/#Tools/SkyReels-V2/skycaptioner_v1/examples/test_result.csv +0 -5
- package/#Tools/SkyReels-V2/skycaptioner_v1/infer_fusion_caption.sh +0 -9
- package/#Tools/SkyReels-V2/skycaptioner_v1/infer_struct_caption.sh +0 -8
- package/#Tools/SkyReels-V2/skycaptioner_v1/requirements.txt +0 -3
- package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/gradio_fusion_caption.py +0 -146
- package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/gradio_struct_caption.py +0 -92
- package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/utils.py +0 -19
- package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/vllm_fusion_caption.py +0 -256
- package/#Tools/SkyReels-V2/skycaptioner_v1/scripts/vllm_struct_caption.py +0 -156
- package/#Tools/SkyReels-V2/skyreels_v2_infer/__init__.py +0 -1
- package/#Tools/SkyReels-V2/skyreels_v2_infer/distributed/__init__.py +0 -0
- package/#Tools/SkyReels-V2/skyreels_v2_infer/distributed/xdit_context_parallel.py +0 -286
- package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/__init__.py +0 -69
- package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/attention.py +0 -179
- package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/clip.py +0 -525
- package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/t5.py +0 -454
- package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/tokenizers.py +0 -78
- package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/transformer.py +0 -839
- package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/vae.py +0 -639
- package/#Tools/SkyReels-V2/skyreels_v2_infer/modules/xlm_roberta.py +0 -165
- package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/__init__.py +0 -5
- package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/diffusion_forcing_pipeline.py +0 -659
- package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/image2video_pipeline.py +0 -156
- package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/prompt_enhancer.py +0 -65
- package/#Tools/SkyReels-V2/skyreels_v2_infer/pipelines/text2video_pipeline.py +0 -110
- package/#Tools/SkyReels-V2/skyreels_v2_infer/scheduler/__init__.py +0 -0
- package/#Tools/SkyReels-V2/skyreels_v2_infer/scheduler/fm_solvers_unipc.py +0 -759
- package/#Tools/SuperClaude/.claude/commands/analyze.md +0 -36
- package/#Tools/SuperClaude/.claude/commands/build.md +0 -35
- package/#Tools/SuperClaude/.claude/commands/cleanup.md +0 -46
- package/#Tools/SuperClaude/.claude/commands/deploy.md +0 -55
- package/#Tools/SuperClaude/.claude/commands/design.md +0 -91
- package/#Tools/SuperClaude/.claude/commands/dev-setup.md +0 -37
- package/#Tools/SuperClaude/.claude/commands/document.md +0 -99
- package/#Tools/SuperClaude/.claude/commands/estimate.md +0 -69
- package/#Tools/SuperClaude/.claude/commands/explain.md +0 -85
- package/#Tools/SuperClaude/.claude/commands/git.md +0 -47
- package/#Tools/SuperClaude/.claude/commands/improve.md +0 -162
- package/#Tools/SuperClaude/.claude/commands/index.md +0 -159
- package/#Tools/SuperClaude/.claude/commands/load.md +0 -65
- package/#Tools/SuperClaude/.claude/commands/migrate.md +0 -76
- package/#Tools/SuperClaude/.claude/commands/scan.md +0 -163
- package/#Tools/SuperClaude/.claude/commands/shared/ambiguity-check.yml +0 -40
- package/#Tools/SuperClaude/.claude/commands/shared/audit.yml +0 -21
- package/#Tools/SuperClaude/.claude/commands/shared/checkpoint.yml +0 -28
- package/#Tools/SuperClaude/.claude/commands/shared/cleanup-patterns.yml +0 -107
- package/#Tools/SuperClaude/.claude/commands/shared/command-memory.yml +0 -52
- package/#Tools/SuperClaude/.claude/commands/shared/command-templates.yml +0 -167
- package/#Tools/SuperClaude/.claude/commands/shared/config-validator.yml +0 -206
- package/#Tools/SuperClaude/.claude/commands/shared/constants.yml +0 -311
- package/#Tools/SuperClaude/.claude/commands/shared/documentation-dirs.yml +0 -134
- package/#Tools/SuperClaude/.claude/commands/shared/error-handling.yml +0 -341
- package/#Tools/SuperClaude/.claude/commands/shared/evidence.yml +0 -75
- package/#Tools/SuperClaude/.claude/commands/shared/execution-lifecycle.yml +0 -277
- package/#Tools/SuperClaude/.claude/commands/shared/git-operations.yml +0 -217
- package/#Tools/SuperClaude/.claude/commands/shared/git-workflow.yml +0 -37
- package/#Tools/SuperClaude/.claude/commands/shared/implementation.yml +0 -199
- package/#Tools/SuperClaude/.claude/commands/shared/loading-config.yml +0 -73
- package/#Tools/SuperClaude/.claude/commands/shared/mcp-flags.yml +0 -109
- package/#Tools/SuperClaude/.claude/commands/shared/migration-report.md +0 -165
- package/#Tools/SuperClaude/.claude/commands/shared/patterns.yml +0 -155
- package/#Tools/SuperClaude/.claude/commands/shared/performance.yml +0 -317
- package/#Tools/SuperClaude/.claude/commands/shared/planning-mode.yml +0 -51
- package/#Tools/SuperClaude/.claude/commands/shared/research-first.yml +0 -278
- package/#Tools/SuperClaude/.claude/commands/shared/session-recovery.yml +0 -144
- package/#Tools/SuperClaude/.claude/commands/shared/severity-levels.yml +0 -252
- package/#Tools/SuperClaude/.claude/commands/shared/task-system.yml +0 -380
- package/#Tools/SuperClaude/.claude/commands/shared/task-ultracompressed.yml +0 -88
- package/#Tools/SuperClaude/.claude/commands/shared/templates/feature-template.md +0 -59
- package/#Tools/SuperClaude/.claude/commands/shared/templates/task-ultracompressed.md +0 -26
- package/#Tools/SuperClaude/.claude/commands/shared/thinking-modes.yml +0 -61
- package/#Tools/SuperClaude/.claude/commands/shared/ultracompressed.yml +0 -97
- package/#Tools/SuperClaude/.claude/commands/shared/user-experience.yml +0 -208
- package/#Tools/SuperClaude/.claude/commands/shared/validation.yml +0 -54
- package/#Tools/SuperClaude/.claude/commands/shared/workflow-chains.yml +0 -138
- package/#Tools/SuperClaude/.claude/commands/spawn.md +0 -106
- package/#Tools/SuperClaude/.claude/commands/task.md +0 -110
- package/#Tools/SuperClaude/.claude/commands/test.md +0 -67
- package/#Tools/SuperClaude/.claude/commands/troubleshoot.md +0 -93
- package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/bug_report.yml +0 -114
- package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/feature_request.yml +0 -119
- package/#Tools/SuperClaude/.github/ISSUE_TEMPLATE/question.yml +0 -87
- package/#Tools/SuperClaude/.github/pull_request_template.md +0 -62
- package/#Tools/SuperClaude/CHANGELOG.md +0 -109
- package/#Tools/SuperClaude/CLAUDE.md +0 -95
- package/#Tools/SuperClaude/CODE_OF_CONDUCT.md +0 -45
- package/#Tools/SuperClaude/CONTRIBUTING.md +0 -225
- package/#Tools/SuperClaude/Commands_Cheat_Sheet.md +0 -160
- package/#Tools/SuperClaude/LICENSE +0 -21
- package/#Tools/SuperClaude/MCP.md +0 -117
- package/#Tools/SuperClaude/PERSONAS.md +0 -115
- package/#Tools/SuperClaude/README.md +0 -249
- package/#Tools/SuperClaude/RULES.md +0 -220
- package/#Tools/SuperClaude/SECURITY.md +0 -91
- package/#Tools/SuperClaude/install.sh +0 -296
- package/#Tools/claude-talk-to-figma-mcp/.github/workflows/test.yml +0 -36
- package/#Tools/claude-talk-to-figma-mcp/CHANGELOG.md +0 -88
- package/#Tools/claude-talk-to-figma-mcp/Dockerfile +0 -16
- package/#Tools/claude-talk-to-figma-mcp/LICENSE +0 -22
- package/#Tools/claude-talk-to-figma-mcp/TESTING.md +0 -216
- package/#Tools/claude-talk-to-figma-mcp/bun.lock +0 -964
- package/#Tools/claude-talk-to-figma-mcp/context/01/00-analisis.md +0 -151
- package/#Tools/claude-talk-to-figma-mcp/context/01/01-tools-refactor.md +0 -370
- package/#Tools/claude-talk-to-figma-mcp/context/01/02-tools-refactor-backlog.md +0 -253
- package/#Tools/claude-talk-to-figma-mcp/context/01/03-tools-refactor-test.md +0 -138
- package/#Tools/claude-talk-to-figma-mcp/context/01/04-tools-refactor-channel-error.md +0 -133
- package/#Tools/claude-talk-to-figma-mcp/context/01/04-tools-refactor-test-backlog.md +0 -0
- package/#Tools/claude-talk-to-figma-mcp/context/01/05-tools-refactor-four-tools-error.md +0 -356
- package/#Tools/claude-talk-to-figma-mcp/context/01/06-tools-refactor-four-tools-error-backlog.md +0 -425
- package/#Tools/claude-talk-to-figma-mcp/context/01/prompt-dev-nodejs-bun.md +0 -105
- package/#Tools/claude-talk-to-figma-mcp/context/01-prompt.md +0 -135
- package/#Tools/claude-talk-to-figma-mcp/context/02/00-analisis.md +0 -131
- package/#Tools/claude-talk-to-figma-mcp/context/02/01-plan.md +0 -162
- package/#Tools/claude-talk-to-figma-mcp/context/02/02-backlog.md +0 -241
- package/#Tools/claude-talk-to-figma-mcp/context/02-analisis.md +0 -202
- package/#Tools/claude-talk-to-figma-mcp/context/99-notas.md +0 -139
- package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-analisis.md +0 -221
- package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-claude-tests.md +0 -152
- package/#Tools/claude-talk-to-figma-mcp/context/pr-14/pr-14-npm-publishing.md +0 -272
- package/#Tools/claude-talk-to-figma-mcp/images/claude-talk-to-figma.png +0 -0
- package/#Tools/claude-talk-to-figma-mcp/images/mcp-figma-plugin-configuration.png +0 -0
- package/#Tools/claude-talk-to-figma-mcp/jest.config.cjs +0 -25
- package/#Tools/claude-talk-to-figma-mcp/package.json +0 -67
- package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-es.md +0 -82
- package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-gal.md +0 -80
- package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-especialista-pt.md +0 -80
- package/#Tools/claude-talk-to-figma-mcp/prompts/prompt-ux-ui-specialist.md +0 -80
- package/#Tools/claude-talk-to-figma-mcp/readme.md +0 -307
- package/#Tools/claude-talk-to-figma-mcp/scripts/configure-claude.js +0 -90
- package/#Tools/claude-talk-to-figma-mcp/scripts/setup.sh +0 -30
- package/#Tools/claude-talk-to-figma-mcp/scripts/test-integration.js +0 -339
- package/#Tools/claude-talk-to-figma-mcp/smithery.yaml +0 -26
- package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/code.js +0 -3295
- package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/manifest.json +0 -24
- package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/setcharacters.js +0 -215
- package/#Tools/claude-talk-to-figma-mcp/src/claude_mcp_plugin/ui.html +0 -656
- package/#Tools/claude-talk-to-figma-mcp/src/socket.ts +0 -349
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/bun.lock +0 -246
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/config/config.ts +0 -22
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/package.json +0 -31
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/prompts/index.ts +0 -297
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/server.ts +0 -62
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/component-tools.ts +0 -48
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/creation-tools.ts +0 -620
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/document-tools.ts +0 -390
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/index.ts +0 -28
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/modification-tools.ts +0 -408
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tools/text-tools.ts +0 -531
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/tsconfig.json +0 -18
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/types/color.ts +0 -13
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/types/index.ts +0 -87
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/defaults.ts +0 -23
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/figma-helpers.ts +0 -142
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/logger.ts +0 -8
- package/#Tools/claude-talk-to-figma-mcp/src/talk_to_figma_mcp/utils/websocket.ts +0 -258
- package/#Tools/claude-talk-to-figma-mcp/tests/fixtures/test-data.ts +0 -32
- package/#Tools/claude-talk-to-figma-mcp/tests/integration/set-fill-color.test.ts +0 -309
- package/#Tools/claude-talk-to-figma-mcp/tests/integration/set-stroke-color.test.ts +0 -387
- package/#Tools/claude-talk-to-figma-mcp/tests/setup.ts +0 -7
- package/#Tools/claude-talk-to-figma-mcp/tests/unit/utils/defaults.test.ts +0 -131
- package/#Tools/claude-talk-to-figma-mcp/tsconfig.json +0 -17
- package/#Tools/claude-talk-to-figma-mcp/tsup.config.ts +0 -14
- package/#Tools/jwt creator/AuthKey_MZ7UQGFV2Q.p8 +0 -6
- package/#Tools/jwt creator/generate_apple_jwt.js +0 -18
- package/#Tools/jwt creator/node_modules/.package-lock.json +0 -145
- package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/.travis.yml +0 -4
- package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/LICENSE.txt +0 -12
- package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/README.md +0 -50
- package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/index.js +0 -41
- package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/package.json +0 -21
- package/#Tools/jwt creator/node_modules/buffer-equal-constant-time/test.js +0 -42
- package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/CODEOWNERS +0 -1
- package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/LICENSE +0 -201
- package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/README.md +0 -65
- package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/package.json +0 -46
- package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.d.ts +0 -17
- package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/ecdsa-sig-formatter.js +0 -187
- package/#Tools/jwt creator/node_modules/ecdsa-sig-formatter/src/param-bytes-for-alg.js +0 -23
- package/#Tools/jwt creator/node_modules/jsonwebtoken/LICENSE +0 -21
- package/#Tools/jwt creator/node_modules/jsonwebtoken/README.md +0 -396
- package/#Tools/jwt creator/node_modules/jsonwebtoken/decode.js +0 -30
- package/#Tools/jwt creator/node_modules/jsonwebtoken/index.js +0 -8
- package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/JsonWebTokenError.js +0 -14
- package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/NotBeforeError.js +0 -13
- package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/TokenExpiredError.js +0 -13
- package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/asymmetricKeyDetailsSupported.js +0 -3
- package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/psSupported.js +0 -3
- package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/rsaPssKeyDetailsSupported.js +0 -3
- package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/timespan.js +0 -18
- package/#Tools/jwt creator/node_modules/jsonwebtoken/lib/validateAsymmetricKey.js +0 -66
- package/#Tools/jwt creator/node_modules/jsonwebtoken/package.json +0 -71
- package/#Tools/jwt creator/node_modules/jsonwebtoken/sign.js +0 -253
- package/#Tools/jwt creator/node_modules/jsonwebtoken/verify.js +0 -263
- package/#Tools/jwt creator/node_modules/jwa/LICENSE +0 -17
- package/#Tools/jwt creator/node_modules/jwa/README.md +0 -150
- package/#Tools/jwt creator/node_modules/jwa/index.js +0 -266
- package/#Tools/jwt creator/node_modules/jwa/package.json +0 -37
- package/#Tools/jwt creator/node_modules/jws/CHANGELOG.md +0 -34
- package/#Tools/jwt creator/node_modules/jws/LICENSE +0 -17
- package/#Tools/jwt creator/node_modules/jws/index.js +0 -22
- package/#Tools/jwt creator/node_modules/jws/lib/data-stream.js +0 -55
- package/#Tools/jwt creator/node_modules/jws/lib/sign-stream.js +0 -78
- package/#Tools/jwt creator/node_modules/jws/lib/tostring.js +0 -10
- package/#Tools/jwt creator/node_modules/jws/lib/verify-stream.js +0 -120
- package/#Tools/jwt creator/node_modules/jws/package.json +0 -34
- package/#Tools/jwt creator/node_modules/jws/readme.md +0 -255
- package/#Tools/jwt creator/node_modules/lodash.includes/LICENSE +0 -47
- package/#Tools/jwt creator/node_modules/lodash.includes/README.md +0 -18
- package/#Tools/jwt creator/node_modules/lodash.includes/index.js +0 -745
- package/#Tools/jwt creator/node_modules/lodash.includes/package.json +0 -17
- package/#Tools/jwt creator/node_modules/lodash.isboolean/LICENSE +0 -22
- package/#Tools/jwt creator/node_modules/lodash.isboolean/README.md +0 -18
- package/#Tools/jwt creator/node_modules/lodash.isboolean/index.js +0 -70
- package/#Tools/jwt creator/node_modules/lodash.isboolean/package.json +0 -17
- package/#Tools/jwt creator/node_modules/lodash.isinteger/LICENSE +0 -47
- package/#Tools/jwt creator/node_modules/lodash.isinteger/README.md +0 -18
- package/#Tools/jwt creator/node_modules/lodash.isinteger/index.js +0 -265
- package/#Tools/jwt creator/node_modules/lodash.isinteger/package.json +0 -17
- package/#Tools/jwt creator/node_modules/lodash.isnumber/LICENSE +0 -22
- package/#Tools/jwt creator/node_modules/lodash.isnumber/README.md +0 -18
- package/#Tools/jwt creator/node_modules/lodash.isnumber/index.js +0 -79
- package/#Tools/jwt creator/node_modules/lodash.isnumber/package.json +0 -17
- package/#Tools/jwt creator/node_modules/lodash.isplainobject/LICENSE +0 -47
- package/#Tools/jwt creator/node_modules/lodash.isplainobject/README.md +0 -18
- package/#Tools/jwt creator/node_modules/lodash.isplainobject/index.js +0 -139
- package/#Tools/jwt creator/node_modules/lodash.isplainobject/package.json +0 -17
- package/#Tools/jwt creator/node_modules/lodash.isstring/LICENSE +0 -22
- package/#Tools/jwt creator/node_modules/lodash.isstring/README.md +0 -18
- package/#Tools/jwt creator/node_modules/lodash.isstring/index.js +0 -95
- package/#Tools/jwt creator/node_modules/lodash.isstring/package.json +0 -17
- package/#Tools/jwt creator/node_modules/lodash.once/LICENSE +0 -47
- package/#Tools/jwt creator/node_modules/lodash.once/README.md +0 -18
- package/#Tools/jwt creator/node_modules/lodash.once/index.js +0 -294
- package/#Tools/jwt creator/node_modules/lodash.once/package.json +0 -17
- package/#Tools/jwt creator/node_modules/ms/index.js +0 -162
- package/#Tools/jwt creator/node_modules/ms/license.md +0 -21
- package/#Tools/jwt creator/node_modules/ms/package.json +0 -38
- package/#Tools/jwt creator/node_modules/ms/readme.md +0 -59
- package/#Tools/jwt creator/node_modules/safe-buffer/LICENSE +0 -21
- package/#Tools/jwt creator/node_modules/safe-buffer/README.md +0 -584
- package/#Tools/jwt creator/node_modules/safe-buffer/index.d.ts +0 -187
- package/#Tools/jwt creator/node_modules/safe-buffer/index.js +0 -65
- package/#Tools/jwt creator/node_modules/safe-buffer/package.json +0 -51
- package/#Tools/jwt creator/node_modules/semver/LICENSE +0 -15
- package/#Tools/jwt creator/node_modules/semver/README.md +0 -664
- package/#Tools/jwt creator/node_modules/semver/bin/semver.js +0 -191
- package/#Tools/jwt creator/node_modules/semver/classes/comparator.js +0 -143
- package/#Tools/jwt creator/node_modules/semver/classes/index.js +0 -7
- package/#Tools/jwt creator/node_modules/semver/classes/range.js +0 -556
- package/#Tools/jwt creator/node_modules/semver/classes/semver.js +0 -319
- package/#Tools/jwt creator/node_modules/semver/functions/clean.js +0 -8
- package/#Tools/jwt creator/node_modules/semver/functions/cmp.js +0 -54
- package/#Tools/jwt creator/node_modules/semver/functions/coerce.js +0 -62
- package/#Tools/jwt creator/node_modules/semver/functions/compare-build.js +0 -9
- package/#Tools/jwt creator/node_modules/semver/functions/compare-loose.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/compare.js +0 -7
- package/#Tools/jwt creator/node_modules/semver/functions/diff.js +0 -60
- package/#Tools/jwt creator/node_modules/semver/functions/eq.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/gt.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/gte.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/inc.js +0 -21
- package/#Tools/jwt creator/node_modules/semver/functions/lt.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/lte.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/major.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/minor.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/neq.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/parse.js +0 -18
- package/#Tools/jwt creator/node_modules/semver/functions/patch.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/prerelease.js +0 -8
- package/#Tools/jwt creator/node_modules/semver/functions/rcompare.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/rsort.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/satisfies.js +0 -12
- package/#Tools/jwt creator/node_modules/semver/functions/sort.js +0 -5
- package/#Tools/jwt creator/node_modules/semver/functions/valid.js +0 -8
- package/#Tools/jwt creator/node_modules/semver/index.js +0 -91
- package/#Tools/jwt creator/node_modules/semver/internal/constants.js +0 -37
- package/#Tools/jwt creator/node_modules/semver/internal/debug.js +0 -11
- package/#Tools/jwt creator/node_modules/semver/internal/identifiers.js +0 -25
- package/#Tools/jwt creator/node_modules/semver/internal/lrucache.js +0 -42
- package/#Tools/jwt creator/node_modules/semver/internal/parse-options.js +0 -17
- package/#Tools/jwt creator/node_modules/semver/internal/re.js +0 -223
- package/#Tools/jwt creator/node_modules/semver/package.json +0 -78
- package/#Tools/jwt creator/node_modules/semver/preload.js +0 -4
- package/#Tools/jwt creator/node_modules/semver/range.bnf +0 -16
- package/#Tools/jwt creator/node_modules/semver/ranges/gtr.js +0 -6
- package/#Tools/jwt creator/node_modules/semver/ranges/intersects.js +0 -9
- package/#Tools/jwt creator/node_modules/semver/ranges/ltr.js +0 -6
- package/#Tools/jwt creator/node_modules/semver/ranges/max-satisfying.js +0 -27
- package/#Tools/jwt creator/node_modules/semver/ranges/min-satisfying.js +0 -26
- package/#Tools/jwt creator/node_modules/semver/ranges/min-version.js +0 -63
- package/#Tools/jwt creator/node_modules/semver/ranges/outside.js +0 -82
- package/#Tools/jwt creator/node_modules/semver/ranges/simplify.js +0 -49
- package/#Tools/jwt creator/node_modules/semver/ranges/subset.js +0 -249
- package/#Tools/jwt creator/node_modules/semver/ranges/to-comparators.js +0 -10
- package/#Tools/jwt creator/node_modules/semver/ranges/valid.js +0 -13
- package/#Tools/jwt creator/package-lock.json +0 -150
- package/#Tools/jwt creator/package.json +0 -5
- package/#Tools/package.json +0 -94
- package/SuperClaude/.claude/commands/analyze.md +0 -36
- package/SuperClaude/.claude/commands/build.md +0 -35
- package/SuperClaude/.claude/commands/cleanup.md +0 -46
- package/SuperClaude/.claude/commands/deploy.md +0 -55
- package/SuperClaude/.claude/commands/design.md +0 -91
- package/SuperClaude/.claude/commands/dev-setup.md +0 -37
- package/SuperClaude/.claude/commands/document.md +0 -99
- package/SuperClaude/.claude/commands/estimate.md +0 -69
- package/SuperClaude/.claude/commands/explain.md +0 -85
- package/SuperClaude/.claude/commands/git.md +0 -47
- package/SuperClaude/.claude/commands/improve.md +0 -162
- package/SuperClaude/.claude/commands/index.md +0 -159
- package/SuperClaude/.claude/commands/load.md +0 -65
- package/SuperClaude/.claude/commands/migrate.md +0 -76
- package/SuperClaude/.claude/commands/scan.md +0 -163
- package/SuperClaude/.claude/commands/shared/ambiguity-check.yml +0 -40
- package/SuperClaude/.claude/commands/shared/audit.yml +0 -21
- package/SuperClaude/.claude/commands/shared/checkpoint.yml +0 -28
- package/SuperClaude/.claude/commands/shared/cleanup-patterns.yml +0 -107
- package/SuperClaude/.claude/commands/shared/command-memory.yml +0 -52
- package/SuperClaude/.claude/commands/shared/command-templates.yml +0 -167
- package/SuperClaude/.claude/commands/shared/config-validator.yml +0 -206
- package/SuperClaude/.claude/commands/shared/constants.yml +0 -311
- package/SuperClaude/.claude/commands/shared/documentation-dirs.yml +0 -134
- package/SuperClaude/.claude/commands/shared/error-handling.yml +0 -341
- package/SuperClaude/.claude/commands/shared/evidence.yml +0 -75
- package/SuperClaude/.claude/commands/shared/execution-lifecycle.yml +0 -277
- package/SuperClaude/.claude/commands/shared/git-operations.yml +0 -217
- package/SuperClaude/.claude/commands/shared/git-workflow.yml +0 -37
- package/SuperClaude/.claude/commands/shared/implementation.yml +0 -199
- package/SuperClaude/.claude/commands/shared/loading-config.yml +0 -73
- package/SuperClaude/.claude/commands/shared/mcp-flags.yml +0 -109
- package/SuperClaude/.claude/commands/shared/migration-report.md +0 -165
- package/SuperClaude/.claude/commands/shared/patterns.yml +0 -155
- package/SuperClaude/.claude/commands/shared/performance.yml +0 -317
- package/SuperClaude/.claude/commands/shared/planning-mode.yml +0 -51
- package/SuperClaude/.claude/commands/shared/research-first.yml +0 -278
- package/SuperClaude/.claude/commands/shared/session-recovery.yml +0 -144
- package/SuperClaude/.claude/commands/shared/severity-levels.yml +0 -252
- package/SuperClaude/.claude/commands/shared/task-system.yml +0 -380
- package/SuperClaude/.claude/commands/shared/task-ultracompressed.yml +0 -88
- package/SuperClaude/.claude/commands/shared/templates/feature-template.md +0 -59
- package/SuperClaude/.claude/commands/shared/templates/task-ultracompressed.md +0 -26
- package/SuperClaude/.claude/commands/shared/thinking-modes.yml +0 -61
- package/SuperClaude/.claude/commands/shared/ultracompressed.yml +0 -97
- package/SuperClaude/.claude/commands/shared/user-experience.yml +0 -208
- package/SuperClaude/.claude/commands/shared/validation.yml +0 -54
- package/SuperClaude/.claude/commands/shared/workflow-chains.yml +0 -138
- package/SuperClaude/.claude/commands/spawn.md +0 -106
- package/SuperClaude/.claude/commands/task.md +0 -110
- package/SuperClaude/.claude/commands/test.md +0 -67
- package/SuperClaude/.claude/commands/troubleshoot.md +0 -93
- package/SuperClaude/.github/ISSUE_TEMPLATE/bug_report.yml +0 -114
- package/SuperClaude/.github/ISSUE_TEMPLATE/feature_request.yml +0 -119
- package/SuperClaude/.github/ISSUE_TEMPLATE/question.yml +0 -87
- package/SuperClaude/.github/pull_request_template.md +0 -62
- package/SuperClaude/CHANGELOG.md +0 -109
- package/SuperClaude/CLAUDE.md +0 -95
- package/SuperClaude/CODE_OF_CONDUCT.md +0 -45
- package/SuperClaude/CONTRIBUTING.md +0 -225
- package/SuperClaude/Commands_Cheat_Sheet.md +0 -160
- package/SuperClaude/LICENSE +0 -21
- package/SuperClaude/MCP.md +0 -117
- package/SuperClaude/PERSONAS.md +0 -115
- package/SuperClaude/README.md +0 -249
- package/SuperClaude/RULES.md +0 -220
- package/SuperClaude/SECURITY.md +0 -91
- package/SuperClaude/install.sh +0 -296
- package/appiq-mcp installer/How-to.md +0 -250
- package/appiq-mcp installer/LICENSE +0 -21
- package/appiq-mcp installer/README.md +0 -235
- package/appiq-mcp installer/index.js +0 -672
- package/appiq-mcp installer/my_mcps.md +0 -105
- package/appiq-mcp installer/package-lock.json +0 -708
- package/appiq-mcp installer/package.json +0 -46
- package/appiq-mcp installer/test-install.bat +0 -60
- package/appiq-mcp installer/test-install.sh +0 -55
- package/appiq-mcp installer/test-load.js +0 -40
- package/bmad-core/agent-teams/team-flutter-mobile.yaml +0 -114
- package/bmad-core/agents/bmad-smart-launcher.md +0 -170
- package/bmad-core/agents/init-flow-po.md +0 -143
- package/bmad-core/checklists/security-validation-checklist.md +0 -332
- package/bmad-core/core-config.yaml.bak +0 -20
- package/bmad-core/data/backend-services-integration.md +0 -686
- package/bmad-core/data/shadcn-ui-integration.md +0 -388
- package/bmad-core/tasks/create-flutter-story.md +0 -197
- package/bmad-core/tasks/intelligent-epic-creation.md +0 -234
- package/bmad-core/tasks/smart-project-analysis.md +0 -289
- package/bmad-core/templates/flutter-mobile-prd-tmpl.yaml +0 -330
- package/bmad-core/templates/flutter-story-tmpl.yaml +0 -376
- package/bmad-core/templates/flutter-ui-spec-tmpl.yaml +0 -415
- package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-analytics.txt +0 -1530
- package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-architect.txt +0 -322
- package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-developer.txt +0 -692
- package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-pm.txt +0 -382
- package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-qa.txt +0 -665
- package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-security.txt +0 -1070
- package/dist/expansion-packs/bmad-mobile-app-dev/agents/mobile-ux-expert.txt +0 -1494
- package/dist/expansion-packs/bmad-mobile-app-dev/teams/mobile-team-cross-platform.txt +0 -15613
- package/flutter/CLAUDE.md +0 -58
- package/flutter/punkt.claude/New Folder With Items/channel.md +0 -221
- package/flutter/punkt.claude/New Folder With Items/commands/add-translations.md +0 -12
- package/flutter/punkt.claude/New Folder With Items/commands/create-feature.md +0 -168
- package/flutter/punkt.claude/New Folder With Items/commands/explain-codebase.md +0 -1
- package/flutter/punkt.claude/New Folder With Items/commands/feature-business-logic.md +0 -551
- package/flutter/punkt.claude/New Folder With Items/commands/feature-data-layer.md +0 -924
- package/flutter/punkt.claude/New Folder With Items/commands/feature-domain-layer.md +0 -540
- package/flutter/punkt.claude/New Folder With Items/commands/feature-integration.md +0 -493
- package/flutter/punkt.claude/New Folder With Items/commands/feature-localization.md +0 -427
- package/flutter/punkt.claude/New Folder With Items/commands/feature-ui-layer.md +0 -300
- package/flutter/punkt.claude/New Folder With Items/commands/git-commit.md +0 -3
- package/flutter/punkt.claude/New Folder With Items/commands/search-web.md +0 -1
- package/flutter/punkt.claude/punkt.claude/channel.md +0 -225
- package/flutter/punkt.claude/punkt.claude/commands/add-translations.md +0 -60
- package/flutter/punkt.claude/punkt.claude/commands/bug-fix.md +0 -32
- package/flutter/punkt.claude/punkt.claude/commands/checkdev.md +0 -122
- package/flutter/punkt.claude/punkt.claude/commands/create-feature.md +0 -174
- package/flutter/punkt.claude/punkt.claude/commands/dev.md +0 -79
- package/flutter/punkt.claude/punkt.claude/commands/explain-codebase.md +0 -1
- package/flutter/punkt.claude/punkt.claude/commands/feature-business-logic.md +0 -430
- package/flutter/punkt.claude/punkt.claude/commands/feature-data-layer.md +0 -572
- package/flutter/punkt.claude/punkt.claude/commands/feature-domain-layer.md +0 -537
- package/flutter/punkt.claude/punkt.claude/commands/feature-integration.md +0 -493
- package/flutter/punkt.claude/punkt.claude/commands/feature-localization.md +0 -427
- package/flutter/punkt.claude/punkt.claude/commands/feature-ui-layer.md +0 -831
- package/flutter/punkt.claude/punkt.claude/commands/git-commit.md +0 -3
- package/flutter/punkt.claude/punkt.claude/commands/manage-translations.md +0 -433
- package/flutter/punkt.claude/punkt.claude/commands/search-web.md +0 -1
- package/flutter/punkt.claude/punkt.claude/developer_check.md +0 -121
- package/tools/appiq-installer.js +0 -2711
- package/tools/epic-solution-installer.js +0 -536
- package/tools/setup-ide-commands.js +0 -348
- package/tools/smart-installer.js +0 -592
- package/web/CLAUDE.md +0 -58
- /package/{#Tools/APPIQ-METHOD/.github → .github}/FUNDING.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/.github → .github}/ISSUE_TEMPLATE/bug_report.md +0 -0
- /package/{#Tools/APPIQ-METHOD/.github → .github}/ISSUE_TEMPLATE/feature_request.md +0 -0
- /package/{#Tools/APPIQ-METHOD/.github → .github}/workflows/release.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/.releaserc.json → .releaserc.json} +0 -0
- /package/{#Tools/APPIQ-METHOD/.vscode → .vscode}/settings.json +0 -0
- /package/{#Tools/APPIQ-METHOD/CHANGELOG.md → CHANGELOG.md} +0 -0
- /package/{#Tools/APPIQ-METHOD/CONTRIBUTING.md → CONTRIBUTING.md} +0 -0
- /package/{#Tools/APPIQ-METHOD/LICENSE → LICENSE} +0 -0
- /package/{#Tools/APPIQ-METHOD/common → common}/tasks/create-doc.md +0 -0
- /package/{#Tools/APPIQ-METHOD/common → common}/tasks/execute-checklist.md +0 -0
- /package/{#Tools/APPIQ-METHOD/common → common}/utils/bmad-doc-template.md +0 -0
- /package/{#Tools/APPIQ-METHOD/common → common}/utils/workflow-management.md +0 -0
- /package/{#Tools/APPIQ-METHOD/docs → docs}/GUIDING-PRINCIPLES.md +0 -0
- /package/{#Tools/APPIQ-METHOD/docs → docs}/core-architecture.md +0 -0
- /package/{#Tools/APPIQ-METHOD/docs → docs}/expansion-packs.md +0 -0
- /package/{#Tools/APPIQ-METHOD/docs → docs}/how-to-contribute-with-pull-requests.md +0 -0
- /package/{#Tools/APPIQ-METHOD/docs → docs}/versioning-and-releases.md +0 -0
- /package/{#Tools/APPIQ-METHOD/docs → docs}/versions.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/README.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agent-teams/flutter-mobile-team.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-cubit-agent.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-data-agent.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-domain-agent.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/flutter-ui-agent.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/agents/shared-components-agent.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/checklists/flutter-story-dod-checklist.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/config.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/data/flutter-development-guidelines.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/templates/flutter-mobile-architecture-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs/bmad-flutter-mobile-dev → expansion-packs/appiq-flutter-mobile-dev}/workflows/flutter-ui-first-development.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agents/game-designer.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agents/game-developer.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/agents/game-sm.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/config.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/data/bmad-kb.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/data/development-guidelines.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/tasks/create-game-story.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-architect.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-designer.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-developer.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/agents/game-sm.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/config.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/data/bmad-kb.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/data/development-guidelines.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/correct-course-game.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/create-game-story.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/tasks/validate-game-story.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/README.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/agents/infra-devops-platform.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/checklists/infrastructure-checklist.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/config.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/data/bmad-kb.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/tasks/review-infrastructure.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/tasks/validate-infrastructure.md +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +0 -0
- /package/{#Tools/APPIQ-METHOD/expansion-packs → expansion-packs}/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +0 -0
@@ -1,572 +0,0 @@
|
|
1
|
-
# Data Layer Development Command
|
2
|
-
|
3
|
-
Develops the data layer (Freezed DTOs, Mappers, Repository Implementations) for a feature following AiGo architectural patterns with JSON annotations.
|
4
|
-
|
5
|
-
**Usage:** `feature-data-layer [FEATURE_NAME] [FEATURE_DESCRIPTION]`
|
6
|
-
|
7
|
-
**Example:** `feature-data-layer user-favorites "Allow users to mark places as favorites and view them in a separate list"`
|
8
|
-
|
9
|
-
## Pre-Execution Checklist
|
10
|
-
|
11
|
-
1. **Check Channel Status**: Read `/Users/vapps-it/Projects/AiGo/sourceCode/mobile_app/.claude/channel.md`
|
12
|
-
2. **Verify Dependencies**: Ensure domain layer is completed
|
13
|
-
3. **Update Channel**: Mark Data Layer status as "IN_PROGRESS" and assign agent
|
14
|
-
4. **Check Blockers**: Verify domain layer provides all necessary interfaces
|
15
|
-
|
16
|
-
## Implementation Process
|
17
|
-
|
18
|
-
### Phase 1: Analysis & Planning
|
19
|
-
|
20
|
-
1. **Study Existing Data Patterns**:
|
21
|
-
- Analyze `lib/data/dtos/` Freezed implementation patterns
|
22
|
-
- Study existing mappers in `lib/data/mappers/` for DTO <-> Domain conversion
|
23
|
-
- Review repository implementations in `lib/data/repositories/`
|
24
|
-
- Check JSON annotation patterns and custom converters
|
25
|
-
- Understand service locator registration patterns
|
26
|
-
|
27
|
-
2. **Define Data Requirements**:
|
28
|
-
- Plan API endpoints and data structures
|
29
|
-
- Design DTO structure with Freezed and JSON annotations
|
30
|
-
- Plan mapper implementations for bidirectional conversion
|
31
|
-
- Define repository implementation with error handling
|
32
|
-
- Plan service locator integration
|
33
|
-
|
34
|
-
3. **Update Channel**: Add data layer requirements to channel.md
|
35
|
-
|
36
|
-
### Phase 2: Freezed DTO Implementation
|
37
|
-
|
38
|
-
1. **Create DTO File** (`lib/data/dtos/[feature]_dto.dart`):
|
39
|
-
```dart
|
40
|
-
import 'package:freezed_annotation/freezed_annotation.dart';
|
41
|
-
import '../../domain/models/[feature].dart';
|
42
|
-
|
43
|
-
part '[feature]_dto.freezed.dart';
|
44
|
-
part '[feature]_dto.g.dart';
|
45
|
-
|
46
|
-
@freezed
|
47
|
-
abstract class [FeatureName]DTO with _$[FeatureName]DTO {
|
48
|
-
factory [FeatureName]DTO({
|
49
|
-
required String id,
|
50
|
-
required String title,
|
51
|
-
String? description,
|
52
|
-
@JsonKey(name: 'created_at') DateTime? createdAt,
|
53
|
-
@JsonKey(name: 'updated_at') DateTime? updatedAt,
|
54
|
-
@Default(true) bool isActive,
|
55
|
-
Map<String, dynamic>? metadata,
|
56
|
-
@JsonKey(name: 'user_id') String? userId,
|
57
|
-
List<String>? tags,
|
58
|
-
@JsonKey(name: 'sort_order') int? sortOrder,
|
59
|
-
}) = _[FeatureName]DTO;
|
60
|
-
|
61
|
-
factory [FeatureName]DTO.fromJson(Map<String, dynamic> json) =>
|
62
|
-
_$[FeatureName]DTOFromJson(json);
|
63
|
-
}
|
64
|
-
```
|
65
|
-
|
66
|
-
2. **Add Custom Converters** (if needed):
|
67
|
-
```dart
|
68
|
-
// For complex data types like Position, DateTime with specific formats, etc.
|
69
|
-
@JsonKey(name: 'location', fromJson: _positionFromJson, toJson: _positionToJson)
|
70
|
-
Position? location,
|
71
|
-
|
72
|
-
static Position? _positionFromJson(Map<String, dynamic>? json) {
|
73
|
-
if (json == null) return null;
|
74
|
-
return Position(
|
75
|
-
latitude: json['latitude']?.toDouble() ?? 0.0,
|
76
|
-
longitude: json['longitude']?.toDouble() ?? 0.0,
|
77
|
-
timestamp: DateTime.now(),
|
78
|
-
accuracy: json['accuracy']?.toDouble() ?? 0.0,
|
79
|
-
altitude: json['altitude']?.toDouble() ?? 0.0,
|
80
|
-
altitudeAccuracy: json['altitudeAccuracy']?.toDouble() ?? 0.0,
|
81
|
-
heading: json['heading']?.toDouble() ?? 0.0,
|
82
|
-
headingAccuracy: json['headingAccuracy']?.toDouble() ?? 0.0,
|
83
|
-
speed: json['speed']?.toDouble() ?? 0.0,
|
84
|
-
speedAccuracy: json['speedAccuracy']?.toDouble() ?? 0.0,
|
85
|
-
);
|
86
|
-
}
|
87
|
-
|
88
|
-
static Map<String, dynamic>? _positionToJson(Position? position) {
|
89
|
-
if (position == null) return null;
|
90
|
-
return {
|
91
|
-
'latitude': position.latitude,
|
92
|
-
'longitude': position.longitude,
|
93
|
-
'accuracy': position.accuracy,
|
94
|
-
'altitude': position.altitude,
|
95
|
-
'altitudeAccuracy': position.altitudeAccuracy,
|
96
|
-
'heading': position.heading,
|
97
|
-
'headingAccuracy': position.headingAccuracy,
|
98
|
-
'speed': position.speed,
|
99
|
-
'speedAccuracy': position.speedAccuracy,
|
100
|
-
};
|
101
|
-
}
|
102
|
-
```
|
103
|
-
|
104
|
-
### Phase 3: Mapper Implementation
|
105
|
-
|
106
|
-
1. **Create Mapper File** (`lib/data/mappers/[feature]_mapper.dart`):
|
107
|
-
```dart
|
108
|
-
import '../dtos/[feature]_dto.dart';
|
109
|
-
import '../../domain/models/[feature].dart';
|
110
|
-
|
111
|
-
class [FeatureName]Mapper {
|
112
|
-
/// Convert DTO to Domain Model
|
113
|
-
static [FeatureName] toDomain([FeatureName]DTO dto) {
|
114
|
-
return [FeatureName](
|
115
|
-
id: dto.id,
|
116
|
-
title: dto.title,
|
117
|
-
description: dto.description,
|
118
|
-
createdAt: dto.createdAt ?? DateTime.now(),
|
119
|
-
updatedAt: dto.updatedAt ?? DateTime.now(),
|
120
|
-
isActive: dto.isActive,
|
121
|
-
metadata: dto.metadata,
|
122
|
-
userId: dto.userId,
|
123
|
-
tags: dto.tags ?? [],
|
124
|
-
sortOrder: dto.sortOrder ?? 0,
|
125
|
-
);
|
126
|
-
}
|
127
|
-
|
128
|
-
/// Convert Domain Model to DTO
|
129
|
-
static [FeatureName]DTO fromDomain([FeatureName] domain) {
|
130
|
-
return [FeatureName]DTO(
|
131
|
-
id: domain.id,
|
132
|
-
title: domain.title,
|
133
|
-
description: domain.description,
|
134
|
-
createdAt: domain.createdAt,
|
135
|
-
updatedAt: domain.updatedAt,
|
136
|
-
isActive: domain.isActive,
|
137
|
-
metadata: domain.metadata,
|
138
|
-
userId: domain.userId,
|
139
|
-
tags: domain.tags,
|
140
|
-
sortOrder: domain.sortOrder,
|
141
|
-
);
|
142
|
-
}
|
143
|
-
|
144
|
-
/// Convert list of DTOs to Domain Models
|
145
|
-
static List<[FeatureName]> toDomainList(List<[FeatureName]DTO> dtos) {
|
146
|
-
return dtos.map((dto) => toDomain(dto)).toList();
|
147
|
-
}
|
148
|
-
|
149
|
-
/// Convert list of Domain Models to DTOs
|
150
|
-
static List<[FeatureName]DTO> fromDomainList(List<[FeatureName]> domains) {
|
151
|
-
return domains.map((domain) => fromDomain(domain)).toList();
|
152
|
-
}
|
153
|
-
|
154
|
-
/// Convert JSON Map to Domain Model (direct conversion)
|
155
|
-
static [FeatureName] fromJson(Map<String, dynamic> json) {
|
156
|
-
return toDomain([FeatureName]DTO.fromJson(json));
|
157
|
-
}
|
158
|
-
|
159
|
-
/// Convert Domain Model to JSON Map (direct conversion)
|
160
|
-
static Map<String, dynamic> toJson([FeatureName] domain) {
|
161
|
-
return fromDomain(domain).toJson();
|
162
|
-
}
|
163
|
-
}
|
164
|
-
```
|
165
|
-
|
166
|
-
### Phase 4: Repository Implementation
|
167
|
-
|
168
|
-
1. **Create Repository Implementation** (`lib/data/repositories/[feature]_repository_impl.dart`):
|
169
|
-
```dart
|
170
|
-
import 'package:cloud_firestore/cloud_firestore.dart';
|
171
|
-
import 'package:firebase_auth/firebase_auth.dart';
|
172
|
-
import 'package:logger/logger.dart';
|
173
|
-
|
174
|
-
import '../../domain/models/[feature].dart';
|
175
|
-
import '../../domain/repositories/[feature]_repository.dart';
|
176
|
-
import '../dtos/[feature]_dto.dart';
|
177
|
-
import '../mappers/[feature]_mapper.dart';
|
178
|
-
import '../../core/network/app_exception.dart';
|
179
|
-
import '../../service_locator.dart';
|
180
|
-
|
181
|
-
class [FeatureName]RepositoryImpl implements [FeatureName]Repository {
|
182
|
-
final FirebaseFirestore _firestore;
|
183
|
-
final FirebaseAuth _auth;
|
184
|
-
final Logger _logger;
|
185
|
-
|
186
|
-
[FeatureName]RepositoryImpl({
|
187
|
-
FirebaseFirestore? firestore,
|
188
|
-
FirebaseAuth? auth,
|
189
|
-
Logger? logger,
|
190
|
-
}) : _firestore = firestore ?? getIt<FirebaseFirestore>(),
|
191
|
-
_auth = auth ?? getIt<FirebaseAuth>(),
|
192
|
-
_logger = logger ?? getIt<Logger>();
|
193
|
-
|
194
|
-
String get _collectionPath => '[feature]s';
|
195
|
-
|
196
|
-
CollectionReference get _collection => _firestore.collection(_collectionPath);
|
197
|
-
|
198
|
-
String? get _currentUserId => _auth.currentUser?.uid;
|
199
|
-
|
200
|
-
@override
|
201
|
-
Future<List<[FeatureName]>> getItems({
|
202
|
-
int page = 1,
|
203
|
-
int limit = 20,
|
204
|
-
bool forceRefresh = false,
|
205
|
-
}) async {
|
206
|
-
try {
|
207
|
-
if (_currentUserId == null) {
|
208
|
-
throw const AuthException('User not authenticated');
|
209
|
-
}
|
210
|
-
|
211
|
-
Query query = _collection
|
212
|
-
.where('userId', isEqualTo: _currentUserId)
|
213
|
-
.where('isActive', isEqualTo: true)
|
214
|
-
.orderBy('createdAt', descending: true)
|
215
|
-
.limit(limit);
|
216
|
-
|
217
|
-
if (page > 1) {
|
218
|
-
// For pagination, you'd need to implement cursor-based pagination
|
219
|
-
// This is a simplified version
|
220
|
-
query = query.startAfter([(page - 1) * limit]);
|
221
|
-
}
|
222
|
-
|
223
|
-
final querySnapshot = await query.get();
|
224
|
-
|
225
|
-
final dtos = querySnapshot.docs
|
226
|
-
.map((doc) => [FeatureName]DTO.fromJson({
|
227
|
-
'id': doc.id,
|
228
|
-
...doc.data() as Map<String, dynamic>,
|
229
|
-
}))
|
230
|
-
.toList();
|
231
|
-
|
232
|
-
return [FeatureName]Mapper.toDomainList(dtos);
|
233
|
-
} catch (error, stackTrace) {
|
234
|
-
_logger.e('Error fetching [feature] items', error, stackTrace);
|
235
|
-
if (error is FirebaseException) {
|
236
|
-
throw ServerException(error.message ?? 'Failed to fetch items');
|
237
|
-
}
|
238
|
-
rethrow;
|
239
|
-
}
|
240
|
-
}
|
241
|
-
|
242
|
-
@override
|
243
|
-
Future<[FeatureName]?> getItemById(String itemId) async {
|
244
|
-
try {
|
245
|
-
if (_currentUserId == null) {
|
246
|
-
throw const AuthException('User not authenticated');
|
247
|
-
}
|
248
|
-
|
249
|
-
final doc = await _collection.doc(itemId).get();
|
250
|
-
|
251
|
-
if (!doc.exists) {
|
252
|
-
return null;
|
253
|
-
}
|
254
|
-
|
255
|
-
final data = doc.data() as Map<String, dynamic>;
|
256
|
-
|
257
|
-
// Check if user owns this item
|
258
|
-
if (data['userId'] != _currentUserId) {
|
259
|
-
throw const PermissionException('Access denied');
|
260
|
-
}
|
261
|
-
|
262
|
-
final dto = [FeatureName]DTO.fromJson({
|
263
|
-
'id': doc.id,
|
264
|
-
...data,
|
265
|
-
});
|
266
|
-
|
267
|
-
return [FeatureName]Mapper.toDomain(dto);
|
268
|
-
} catch (error, stackTrace) {
|
269
|
-
_logger.e('Error fetching [feature] item by ID: $itemId', error, stackTrace);
|
270
|
-
if (error is FirebaseException) {
|
271
|
-
throw ServerException(error.message ?? 'Failed to fetch item');
|
272
|
-
}
|
273
|
-
rethrow;
|
274
|
-
}
|
275
|
-
}
|
276
|
-
|
277
|
-
@override
|
278
|
-
Future<[FeatureName]> createItem({
|
279
|
-
required String title,
|
280
|
-
String? description,
|
281
|
-
Map<String, dynamic>? metadata,
|
282
|
-
Map<String, dynamic>? additionalData,
|
283
|
-
}) async {
|
284
|
-
try {
|
285
|
-
if (_currentUserId == null) {
|
286
|
-
throw const AuthException('User not authenticated');
|
287
|
-
}
|
288
|
-
|
289
|
-
final now = DateTime.now();
|
290
|
-
final dto = [FeatureName]DTO(
|
291
|
-
id: '', // Will be set by Firestore
|
292
|
-
title: title,
|
293
|
-
description: description,
|
294
|
-
createdAt: now,
|
295
|
-
updatedAt: now,
|
296
|
-
isActive: true,
|
297
|
-
metadata: metadata,
|
298
|
-
userId: _currentUserId!,
|
299
|
-
tags: additionalData?['tags']?.cast<String>() ?? [],
|
300
|
-
sortOrder: additionalData?['sortOrder'] ?? 0,
|
301
|
-
);
|
302
|
-
|
303
|
-
final docRef = await _collection.add(dto.toJson()..remove('id'));
|
304
|
-
|
305
|
-
final createdDto = dto.copyWith(id: docRef.id);
|
306
|
-
return [FeatureName]Mapper.toDomain(createdDto);
|
307
|
-
} catch (error, stackTrace) {
|
308
|
-
_logger.e('Error creating [feature] item', error, stackTrace);
|
309
|
-
if (error is FirebaseException) {
|
310
|
-
throw ServerException(error.message ?? 'Failed to create item');
|
311
|
-
}
|
312
|
-
rethrow;
|
313
|
-
}
|
314
|
-
}
|
315
|
-
|
316
|
-
@override
|
317
|
-
Future<[FeatureName]> updateItem([FeatureName] item) async {
|
318
|
-
try {
|
319
|
-
if (_currentUserId == null) {
|
320
|
-
throw const AuthException('User not authenticated');
|
321
|
-
}
|
322
|
-
|
323
|
-
// Ensure user owns this item
|
324
|
-
if (item.userId != _currentUserId) {
|
325
|
-
throw const PermissionException('Access denied');
|
326
|
-
}
|
327
|
-
|
328
|
-
final dto = [FeatureName]Mapper.fromDomain(item).copyWith(
|
329
|
-
updatedAt: DateTime.now(),
|
330
|
-
);
|
331
|
-
|
332
|
-
await _collection.doc(item.id).update(dto.toJson()..remove('id'));
|
333
|
-
|
334
|
-
return [FeatureName]Mapper.toDomain(dto);
|
335
|
-
} catch (error, stackTrace) {
|
336
|
-
_logger.e('Error updating [feature] item: ${item.id}', error, stackTrace);
|
337
|
-
if (error is FirebaseException) {
|
338
|
-
throw ServerException(error.message ?? 'Failed to update item');
|
339
|
-
}
|
340
|
-
rethrow;
|
341
|
-
}
|
342
|
-
}
|
343
|
-
|
344
|
-
@override
|
345
|
-
Future<void> deleteItem(String itemId) async {
|
346
|
-
try {
|
347
|
-
if (_currentUserId == null) {
|
348
|
-
throw const AuthException('User not authenticated');
|
349
|
-
}
|
350
|
-
|
351
|
-
// Soft delete - mark as inactive
|
352
|
-
await _collection.doc(itemId).update({
|
353
|
-
'isActive': false,
|
354
|
-
'updatedAt': DateTime.now().toIso8601String(),
|
355
|
-
});
|
356
|
-
} catch (error, stackTrace) {
|
357
|
-
_logger.e('Error deleting [feature] item: $itemId', error, stackTrace);
|
358
|
-
if (error is FirebaseException) {
|
359
|
-
throw ServerException(error.message ?? 'Failed to delete item');
|
360
|
-
}
|
361
|
-
rethrow;
|
362
|
-
}
|
363
|
-
}
|
364
|
-
|
365
|
-
@override
|
366
|
-
Future<List<[FeatureName]>> searchItems(String query, {int limit = 20}) async {
|
367
|
-
try {
|
368
|
-
if (_currentUserId == null) {
|
369
|
-
throw const AuthException('User not authenticated');
|
370
|
-
}
|
371
|
-
|
372
|
-
if (query.isEmpty) {
|
373
|
-
return await getItems(limit: limit);
|
374
|
-
}
|
375
|
-
|
376
|
-
// Firestore text search is limited, so we'll do client-side filtering
|
377
|
-
// For production, consider using Algolia or similar service
|
378
|
-
final allItems = await getItems(limit: 100); // Get more items for search
|
379
|
-
|
380
|
-
final searchResults = allItems.where((item) {
|
381
|
-
final titleMatch = item.title.toLowerCase().contains(query.toLowerCase());
|
382
|
-
final descriptionMatch = item.description?.toLowerCase().contains(query.toLowerCase()) ?? false;
|
383
|
-
return titleMatch || descriptionMatch;
|
384
|
-
}).take(limit).toList();
|
385
|
-
|
386
|
-
return searchResults;
|
387
|
-
} catch (error, stackTrace) {
|
388
|
-
_logger.e('Error searching [feature] items with query: $query', error, stackTrace);
|
389
|
-
rethrow;
|
390
|
-
}
|
391
|
-
}
|
392
|
-
|
393
|
-
@override
|
394
|
-
Future<List<[FeatureName]>> filterItems({
|
395
|
-
bool? isActive,
|
396
|
-
DateTime? createdAfter,
|
397
|
-
DateTime? createdBefore,
|
398
|
-
List<String>? tags,
|
399
|
-
Map<String, dynamic>? customFilters,
|
400
|
-
}) async {
|
401
|
-
try {
|
402
|
-
if (_currentUserId == null) {
|
403
|
-
throw const AuthException('User not authenticated');
|
404
|
-
}
|
405
|
-
|
406
|
-
Query query = _collection.where('userId', isEqualTo: _currentUserId);
|
407
|
-
|
408
|
-
if (isActive != null) {
|
409
|
-
query = query.where('isActive', isEqualTo: isActive);
|
410
|
-
}
|
411
|
-
|
412
|
-
if (createdAfter != null) {
|
413
|
-
query = query.where('createdAt', isGreaterThanOrEqualTo: createdAfter);
|
414
|
-
}
|
415
|
-
|
416
|
-
if (createdBefore != null) {
|
417
|
-
query = query.where('createdAt', isLessThanOrEqualTo: createdBefore);
|
418
|
-
}
|
419
|
-
|
420
|
-
if (tags != null && tags.isNotEmpty) {
|
421
|
-
query = query.where('tags', arrayContainsAny: tags);
|
422
|
-
}
|
423
|
-
|
424
|
-
// Add custom filters
|
425
|
-
if (customFilters != null) {
|
426
|
-
for (final filter in customFilters.entries) {
|
427
|
-
query = query.where(filter.key, isEqualTo: filter.value);
|
428
|
-
}
|
429
|
-
}
|
430
|
-
|
431
|
-
final querySnapshot = await query.get();
|
432
|
-
|
433
|
-
final dtos = querySnapshot.docs
|
434
|
-
.map((doc) => [FeatureName]DTO.fromJson({
|
435
|
-
'id': doc.id,
|
436
|
-
...doc.data() as Map<String, dynamic>,
|
437
|
-
}))
|
438
|
-
.toList();
|
439
|
-
|
440
|
-
return [FeatureName]Mapper.toDomainList(dtos);
|
441
|
-
} catch (error, stackTrace) {
|
442
|
-
_logger.e('Error filtering [feature] items', error, stackTrace);
|
443
|
-
if (error is FirebaseException) {
|
444
|
-
throw ServerException(error.message ?? 'Failed to filter items');
|
445
|
-
}
|
446
|
-
rethrow;
|
447
|
-
}
|
448
|
-
}
|
449
|
-
}
|
450
|
-
```
|
451
|
-
|
452
|
-
### Phase 5: Service Locator Registration
|
453
|
-
|
454
|
-
1. **Update Service Locator** (`lib/service_locator.dart`):
|
455
|
-
```dart
|
456
|
-
// Add to setupServiceLocator() function
|
457
|
-
|
458
|
-
// Register [FeatureName] Repository
|
459
|
-
..registerLazySingleton<[FeatureName]Repository>(
|
460
|
-
() => [FeatureName]RepositoryImpl(
|
461
|
-
firestore: getIt<FirebaseFirestore>(),
|
462
|
-
auth: getIt<FirebaseAuth>(),
|
463
|
-
logger: getIt<Logger>(),
|
464
|
-
),
|
465
|
-
)
|
466
|
-
```
|
467
|
-
|
468
|
-
### Phase 6: Error Handling Enhancement
|
469
|
-
|
470
|
-
1. **Add comprehensive error handling patterns**:
|
471
|
-
```dart
|
472
|
-
// Add to repository implementation
|
473
|
-
|
474
|
-
Future<T> _handleFirebaseOperation<T>(
|
475
|
-
Future<T> Function() operation,
|
476
|
-
String operationName,
|
477
|
-
) async {
|
478
|
-
try {
|
479
|
-
return await operation();
|
480
|
-
} on FirebaseAuthException catch (error) {
|
481
|
-
_logger.e('Auth error in $operationName', error);
|
482
|
-
throw AuthException(error.message ?? 'Authentication failed');
|
483
|
-
} on FirebaseException catch (error) {
|
484
|
-
_logger.e('Firebase error in $operationName', error);
|
485
|
-
throw ServerException(error.message ?? 'Server error occurred');
|
486
|
-
} catch (error, stackTrace) {
|
487
|
-
_logger.e('Unexpected error in $operationName', error, stackTrace);
|
488
|
-
rethrow;
|
489
|
-
}
|
490
|
-
}
|
491
|
-
```
|
492
|
-
|
493
|
-
## Quality Checklist
|
494
|
-
|
495
|
-
### DTO Implementation
|
496
|
-
- [ ] Uses Freezed for immutability and code generation
|
497
|
-
- [ ] Proper JSON annotations for API mapping
|
498
|
-
- [ ] Custom converters for complex types
|
499
|
-
- [ ] Proper null safety implementation
|
500
|
-
- [ ] Factory constructors for JSON conversion
|
501
|
-
|
502
|
-
### Mapper Implementation
|
503
|
-
- [ ] Bidirectional conversion (DTO ↔ Domain)
|
504
|
-
- [ ] List conversion methods
|
505
|
-
- [ ] Direct JSON conversion helpers
|
506
|
-
- [ ] Null safety handling
|
507
|
-
- [ ] Performance optimization
|
508
|
-
|
509
|
-
### Repository Implementation
|
510
|
-
- [ ] Implements all domain repository interface methods
|
511
|
-
- [ ] Proper error handling with custom exceptions
|
512
|
-
- [ ] Authentication and authorization checks
|
513
|
-
- [ ] Logging for debugging and monitoring
|
514
|
-
- [ ] Firestore best practices (queries, indexing)
|
515
|
-
|
516
|
-
### Service Integration
|
517
|
-
- [ ] Proper dependency injection registration
|
518
|
-
- [ ] Service locator integration
|
519
|
-
- [ ] Interface-based implementation
|
520
|
-
- [ ] Singleton pattern for repositories
|
521
|
-
|
522
|
-
## Channel Communication
|
523
|
-
|
524
|
-
### Before Starting
|
525
|
-
Update channel.md:
|
526
|
-
```markdown
|
527
|
-
### 💾 Data Layer Status
|
528
|
-
- **Status:** IN_PROGRESS
|
529
|
-
- **Assigned Agent:** [YOUR_ID]
|
530
|
-
- **Progress:** 0%
|
531
|
-
```
|
532
|
-
|
533
|
-
### During Development
|
534
|
-
Update progress regularly:
|
535
|
-
```markdown
|
536
|
-
- **Progress:** [PERCENTAGE]%
|
537
|
-
- **Files Created:** [LIST_OF_FILES]
|
538
|
-
- **Next Steps:** [CURRENT_WORK]
|
539
|
-
```
|
540
|
-
|
541
|
-
### After Completion
|
542
|
-
Mark as completed:
|
543
|
-
```markdown
|
544
|
-
### 💾 Data Layer Status
|
545
|
-
- **Status:** COMPLETED
|
546
|
-
- **Progress:** 100%
|
547
|
-
- **Files Created:** [COMPLETE_LIST]
|
548
|
-
```
|
549
|
-
|
550
|
-
## Dependencies
|
551
|
-
|
552
|
-
### Must be completed first:
|
553
|
-
- Domain layer models and repository interfaces
|
554
|
-
|
555
|
-
### Can work in parallel with:
|
556
|
-
- Business logic layer (with coordination)
|
557
|
-
|
558
|
-
### Enables after completion:
|
559
|
-
- Business logic layer can use repository implementations
|
560
|
-
- Complete feature integration
|
561
|
-
|
562
|
-
## Output Deliverables
|
563
|
-
|
564
|
-
1. **DTO**: `lib/data/dtos/[feature]_dto.dart`
|
565
|
-
2. **Generated DTO Files**: `[feature]_dto.freezed.dart` and `[feature]_dto.g.dart`
|
566
|
-
3. **Mapper**: `lib/data/mappers/[feature]_mapper.dart`
|
567
|
-
4. **Repository Implementation**: `lib/data/repositories/[feature]_repository_impl.dart`
|
568
|
-
5. **Updated Service Locator**: Registration in `lib/service_locator.dart`
|
569
|
-
6. **Updated Channel**: Progress and completion status in channel.md
|
570
|
-
7. **Code Generation**: Run `dart run build_runner build` after implementation
|
571
|
-
|
572
|
-
All data components must follow AiGo's patterns with Freezed DTOs, proper JSON annotations, comprehensive error handling, and clean architecture principles.
|