@el-j/magic-helix-core 4.0.0-beta.2 → 4.0.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index-B88j4AyE.js +13 -0
- package/dist/index-B88j4AyE.js.map +1 -0
- package/dist/index-CY-pQbuu.cjs +2 -0
- package/dist/index-CY-pQbuu.cjs.map +1 -0
- package/dist/index.cjs +75 -1
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.mjs +2214 -51
- package/dist/index.mjs.map +1 -1
- package/dist/pattern-combiner.d.ts +1 -1
- package/dist/plugin-loader.d.ts +2 -1
- package/package.json +4 -4
- package/dist/BasePlugin-6wv0hYJ9.js +0 -98
- package/dist/BasePlugin-6wv0hYJ9.js.map +0 -1
- package/dist/BasePlugin-odQJAKA-.cjs +0 -2
- package/dist/BasePlugin-odQJAKA-.cjs.map +0 -1
- package/dist/builtin-plugins/base/BasePlugin.d.ts +0 -69
- package/dist/builtin-plugins/cpp/index.d.ts +0 -46
- package/dist/builtin-plugins/csharp/index.d.ts +0 -20
- package/dist/builtin-plugins/go/index.d.ts +0 -23
- package/dist/builtin-plugins/index.d.ts +0 -16
- package/dist/builtin-plugins/java/index.d.ts +0 -22
- package/dist/builtin-plugins/nodejs/index.d.ts +0 -44
- package/dist/builtin-plugins/php/index.d.ts +0 -20
- package/dist/builtin-plugins/python/index.d.ts +0 -27
- package/dist/builtin-plugins/ruby/index.d.ts +0 -20
- package/dist/builtin-plugins/rust/index.d.ts +0 -53
- package/dist/builtin-plugins/swift/index.d.ts +0 -22
- package/dist/default_templates/angular/angular-core.md +0 -19
- package/dist/default_templates/architecture/codeowners.md +0 -123
- package/dist/default_templates/architecture/monorepo.md +0 -146
- package/dist/default_templates/architecture/nx.md +0 -122
- package/dist/default_templates/architecture/turborepo.md +0 -114
- package/dist/default_templates/ci/github-actions.md +0 -268
- package/dist/default_templates/ci/gitlab-ci.md +0 -330
- package/dist/default_templates/containers/docker-multistage.md +0 -120
- package/dist/default_templates/containers/kubernetes-deploy.md +0 -210
- package/dist/default_templates/devops/docker-compose.md +0 -111
- package/dist/default_templates/devops/docker-dockerfile.md +0 -94
- package/dist/default_templates/devops/github-actions.md +0 -160
- package/dist/default_templates/devops/gitlab-ci.md +0 -210
- package/dist/default_templates/dotnet/framework-aspnetcore.md +0 -205
- package/dist/default_templates/dotnet/framework-blazor.md +0 -271
- package/dist/default_templates/dotnet/lang-csharp.md +0 -162
- package/dist/default_templates/generic/lang-typescript.md +0 -57
- package/dist/default_templates/generic/state-redux.md +0 -21
- package/dist/default_templates/generic/state-rxjs.md +0 -6
- package/dist/default_templates/generic/style-mui.md +0 -23
- package/dist/default_templates/generic/style-tailwind.md +0 -76
- package/dist/default_templates/generic/test-cypress.md +0 -21
- package/dist/default_templates/generic/test-jest.md +0 -20
- package/dist/default_templates/generic/test-playwright.md +0 -21
- package/dist/default_templates/generic/test-vitest.md +0 -131
- package/dist/default_templates/go/lang-go.md +0 -571
- package/dist/default_templates/java/build-gradle.md +0 -102
- package/dist/default_templates/java/build-maven.md +0 -86
- package/dist/default_templates/java/framework-spring-boot.md +0 -179
- package/dist/default_templates/java/lang-java.md +0 -78
- package/dist/default_templates/java/lang-kotlin.md +0 -88
- package/dist/default_templates/meta/magic-helix-meta.md +0 -213
- package/dist/default_templates/meta/meta-debug.md +0 -459
- package/dist/default_templates/meta/meta-implement.md +0 -450
- package/dist/default_templates/meta/meta-roadmap.md +0 -265
- package/dist/default_templates/nestjs/nestjs-core.md +0 -7
- package/dist/default_templates/patterns/architecture/clean-architecture.md +0 -469
- package/dist/default_templates/patterns/architecture/dependency-injection.md +0 -517
- package/dist/default_templates/patterns/architecture/domain-driven-design.md +0 -621
- package/dist/default_templates/patterns/architecture/layered-architecture.md +0 -382
- package/dist/default_templates/patterns/architecture/repository-pattern.md +0 -408
- package/dist/default_templates/patterns/domain-expertise/nextjs-rules.md +0 -115
- package/dist/default_templates/patterns/domain-expertise/react-patterns.md +0 -181
- package/dist/default_templates/patterns/domain-expertise/server-components.md +0 -212
- package/dist/default_templates/patterns/domain-expertise/shadcn-ui.md +0 -52
- package/dist/default_templates/patterns/domain-expertise/tailwind-patterns.md +0 -52
- package/dist/default_templates/patterns/environment/container-awareness.md +0 -17
- package/dist/default_templates/patterns/environment/ide-features.md +0 -17
- package/dist/default_templates/patterns/environment/os-commands.md +0 -17
- package/dist/default_templates/patterns/organization/heading-hierarchy.md +0 -103
- package/dist/default_templates/patterns/organization/sequential-workflows.md +0 -102
- package/dist/default_templates/patterns/organization/xml-rule-groups.md +0 -64
- package/dist/default_templates/patterns/reasoning/agent-loop.md +0 -151
- package/dist/default_templates/patterns/reasoning/confirmation-gates.md +0 -141
- package/dist/default_templates/patterns/reasoning/dependency-analysis.md +0 -132
- package/dist/default_templates/patterns/reasoning/one-tool-per-iteration.md +0 -152
- package/dist/default_templates/patterns/reasoning/preview-before-action.md +0 -194
- package/dist/default_templates/patterns/reasoning/reflection-checkpoints.md +0 -166
- package/dist/default_templates/patterns/reasoning/result-verification.md +0 -157
- package/dist/default_templates/patterns/reasoning/subtask-breakdown.md +0 -131
- package/dist/default_templates/patterns/reasoning/thinking-tags.md +0 -100
- package/dist/default_templates/patterns/role-definition/capability-declarations.md +0 -72
- package/dist/default_templates/patterns/role-definition/expert-identity.md +0 -45
- package/dist/default_templates/patterns/role-definition/scope-boundaries.md +0 -61
- package/dist/default_templates/patterns/safety/code-safety-rules.md +0 -17
- package/dist/default_templates/patterns/safety/credential-handling.md +0 -17
- package/dist/default_templates/patterns/safety/destructive-warnings.md +0 -17
- package/dist/default_templates/patterns/safety/refusal-messages.md +0 -17
- package/dist/default_templates/patterns/tone/adaptive-tone.md +0 -17
- package/dist/default_templates/patterns/tone/concise-communication.md +0 -17
- package/dist/default_templates/patterns/tone/forbidden-phrases.md +0 -17
- package/dist/default_templates/patterns/tool-guidelines/function-schemas.md +0 -143
- package/dist/default_templates/patterns/tool-guidelines/parameter-examples.md +0 -137
- package/dist/default_templates/patterns/tool-guidelines/usage-policies.md +0 -105
- package/dist/default_templates/php/framework-laravel.md +0 -112
- package/dist/default_templates/php/lang-php.md +0 -94
- package/dist/default_templates/python/lang-python.md +0 -508
- package/dist/default_templates/react/react-core.md +0 -677
- package/dist/default_templates/react/react-zustand.md +0 -7
- package/dist/default_templates/ruby/framework-rails.md +0 -309
- package/dist/default_templates/ruby/framework-sinatra.md +0 -227
- package/dist/default_templates/ruby/lang-ruby.md +0 -216
- package/dist/default_templates/rust/lang-rust.md +0 -89
- package/dist/default_templates/swift/framework-vapor.md +0 -352
- package/dist/default_templates/swift/lang-swift.md +0 -291
- package/dist/default_templates/vue/style-primevue.md +0 -6
- package/dist/default_templates/vue/style-quasar.md +0 -22
- package/dist/default_templates/vue/vue-core.md +0 -108
- package/dist/default_templates/vue/vue-pinia.md +0 -5
- package/dist/index-0GK4RlUx.js +0 -1748
- package/dist/index-0GK4RlUx.js.map +0 -1
- package/dist/index-AkVwRl-r.js +0 -92
- package/dist/index-AkVwRl-r.js.map +0 -1
- package/dist/index-B6BeG1yT.cjs +0 -68
- package/dist/index-B6BeG1yT.cjs.map +0 -1
- package/dist/index-B8pyjKdF.js +0 -94
- package/dist/index-B8pyjKdF.js.map +0 -1
- package/dist/index-BQ6v041y.js +0 -13
- package/dist/index-BQ6v041y.js.map +0 -1
- package/dist/index-Baxb1vI_.js +0 -210
- package/dist/index-Baxb1vI_.js.map +0 -1
- package/dist/index-Bg8DD8ku.js +0 -216
- package/dist/index-Bg8DD8ku.js.map +0 -1
- package/dist/index-BqTqxCpG.cjs +0 -89
- package/dist/index-BqTqxCpG.cjs.map +0 -1
- package/dist/index-Bv4Q1Pr7.cjs +0 -33
- package/dist/index-Bv4Q1Pr7.cjs.map +0 -1
- package/dist/index-CN8J45Nc.cjs +0 -24
- package/dist/index-CN8J45Nc.cjs.map +0 -1
- package/dist/index-CPbv2Od1.js +0 -62
- package/dist/index-CPbv2Od1.js.map +0 -1
- package/dist/index-Cf-MC6Al.js +0 -63
- package/dist/index-Cf-MC6Al.js.map +0 -1
- package/dist/index-DDPXXXDy.cjs +0 -19
- package/dist/index-DDPXXXDy.cjs.map +0 -1
- package/dist/index-DO30AzDe.cjs +0 -19
- package/dist/index-DO30AzDe.cjs.map +0 -1
- package/dist/index-DkvW5yBY.js +0 -2249
- package/dist/index-DkvW5yBY.js.map +0 -1
- package/dist/index-Dn1ehjIj.cjs +0 -80
- package/dist/index-Dn1ehjIj.cjs.map +0 -1
- package/dist/index-DqHvgoXJ.cjs +0 -19
- package/dist/index-DqHvgoXJ.cjs.map +0 -1
- package/dist/index-K39pdw94.cjs +0 -31
- package/dist/index-K39pdw94.cjs.map +0 -1
- package/dist/index-OT2XAJkc.js +0 -117
- package/dist/index-OT2XAJkc.js.map +0 -1
- package/dist/index-TPAX4XKg.cjs +0 -30
- package/dist/index-TPAX4XKg.cjs.map +0 -1
- package/dist/index-WmVSB57y.js +0 -107
- package/dist/index-WmVSB57y.js.map +0 -1
- package/dist/index-mYXvc3Fs.js +0 -68
- package/dist/index-mYXvc3Fs.js.map +0 -1
- package/dist/index-nioXOg4m.cjs +0 -76
- package/dist/index-nioXOg4m.cjs.map +0 -1
- package/dist/index-okhY3fWD.cjs +0 -2
- package/dist/index-okhY3fWD.cjs.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-CN8J45Nc.cjs","sources":["../src/builtin-plugins/java/index.ts"],"sourcesContent":["/**\n * Java Language Plugin\n *\n * Detects Java projects via pom.xml (Maven) or build.gradle (Gradle)\n */\n\nimport type { ProjectMetadata, TemplateDefinition } from '../../types';\nimport { BasePlugin } from '../base/BasePlugin';\n\nexport class JavaPlugin extends BasePlugin {\n name = 'java';\n displayName = 'Java';\n version = '3.0.0';\n priority = 75;\n\n async detect(projectPath: string): Promise<ProjectMetadata | null> {\n // Check for Maven\n if (this.fileExists(projectPath, 'pom.xml')) {\n return this.detectMaven(projectPath);\n }\n\n // Check for Gradle\n if (\n this.fileExists(projectPath, 'build.gradle') ||\n this.fileExists(projectPath, 'build.gradle.kts')\n ) {\n return this.detectGradle(projectPath);\n }\n\n return null;\n }\n\n getTemplates(): TemplateDefinition[] {\n return [\n {\n name: 'java-core',\n tags: ['java'],\n content: `# Java Development Guidelines\n\nThis project uses Java.\n\n## Project Structure\n- Follow Maven/Gradle conventions\n- Organize in packages\n- Use proper dependency management\n\n## Code Style\n- Follow Java naming conventions\n- Use Google Java Style or similar\n- Leverage IDE formatting\n\n## Best Practices\n- Use appropriate design patterns\n- Handle exceptions properly\n- Write Javadoc for public APIs\n\n## Testing\n- Write JUnit tests\n- Use Mockito for mocking\n- Aim for good test coverage`,\n },\n ];\n }\n\n getDependencyTagMap() {\n return {\n 'org.springframework.boot:spring-boot': 'spring-boot',\n 'spring-boot-starter': 'spring-boot',\n junit: 'junit',\n };\n }\n\n private detectMaven(projectPath: string): ProjectMetadata {\n const content = this.readFile(projectPath, 'pom.xml');\n if (!content) {\n return {\n language: 'Java',\n name: this.getProjectName(projectPath),\n dependencies: {},\n manifestFile: 'pom.xml',\n projectPath,\n };\n }\n\n const artifactMatch = content.match(/<artifactId>([^<]+)<\\/artifactId>/);\n const descMatch = content.match(/<description>([^<]+)<\\/description>/);\n const deps: Record<string, string> = {};\n\n const depMatches = content.matchAll(\n /<dependency>[\\s\\S]*?<groupId>([^<]+)<\\/groupId>[\\s\\S]*?<artifactId>([^<]+)<\\/artifactId>[\\s\\S]*?(?:<version>([^<]+)<\\/version>)?/g,\n );\n for (const match of depMatches) {\n deps[`${match[1]}:${match[2]}`] = match[3] || '*';\n }\n\n return {\n language: 'Java',\n name: artifactMatch?.[1] || this.getProjectName(projectPath),\n description: descMatch?.[1],\n dependencies: deps,\n manifestFile: 'pom.xml',\n projectPath,\n };\n }\n\n private detectGradle(projectPath: string): ProjectMetadata {\n const manifestFile = this.fileExists(projectPath, 'build.gradle')\n ? 'build.gradle'\n : 'build.gradle.kts';\n\n const content = this.readFile(projectPath, manifestFile);\n const deps: Record<string, string> = {};\n\n if (content) {\n const depMatches = content.matchAll(\n /(?:implementation|api|testImplementation)\\s*['\"]([^:'\"]+):([^:'\"]+):?([^'\"]*)['\"]/g,\n );\n for (const match of depMatches) {\n deps[`${match[1]}:${match[2]}`] = match[3] || '*';\n }\n }\n\n return {\n language: 'Java/Kotlin',\n name: this.getProjectName(projectPath),\n dependencies: deps,\n manifestFile,\n projectPath,\n };\n }\n}\n"],"names":["JavaPlugin","BasePlugin","projectPath","content","artifactMatch","descMatch","deps","depMatches","match","manifestFile"],"mappings":"6HASO,MAAMA,UAAmBC,EAAAA,UAAW,CAApC,aAAA,CAAA,MAAA,GAAA,SAAA,EACL,KAAA,KAAO,OACP,KAAA,YAAc,OACd,KAAA,QAAU,QACV,KAAA,SAAW,EAAA,CAEX,MAAM,OAAOC,EAAsD,CAEjE,OAAI,KAAK,WAAWA,EAAa,SAAS,EACjC,KAAK,YAAYA,CAAW,EAKnC,KAAK,WAAWA,EAAa,cAAc,GAC3C,KAAK,WAAWA,EAAa,kBAAkB,EAExC,KAAK,aAAaA,CAAW,EAG/B,IACT,CAEA,cAAqC,CACnC,MAAO,CACL,CACE,KAAM,YACN,KAAM,CAAC,MAAM,EACb,QAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,6BAAA,CAuBX,CAEJ,CAEA,qBAAsB,CACpB,MAAO,CACL,uCAAwC,cACxC,sBAAuB,cACvB,MAAO,OAAA,CAEX,CAEQ,YAAYA,EAAsC,CACxD,MAAMC,EAAU,KAAK,SAASD,EAAa,SAAS,EACpD,GAAI,CAACC,EACH,MAAO,CACL,SAAU,OACV,KAAM,KAAK,eAAeD,CAAW,EACrC,aAAc,CAAA,EACd,aAAc,UACd,YAAAA,CAAA,EAIJ,MAAME,EAAgBD,EAAQ,MAAM,mCAAmC,EACjEE,EAAYF,EAAQ,MAAM,qCAAqC,EAC/DG,EAA+B,CAAA,EAE/BC,EAAaJ,EAAQ,SACzB,mIAAA,EAEF,UAAWK,KAASD,EAClBD,EAAK,GAAGE,EAAM,CAAC,CAAC,IAAIA,EAAM,CAAC,CAAC,EAAE,EAAIA,EAAM,CAAC,GAAK,IAGhD,MAAO,CACL,SAAU,OACV,KAAMJ,IAAgB,CAAC,GAAK,KAAK,eAAeF,CAAW,EAC3D,YAAaG,IAAY,CAAC,EAC1B,aAAcC,EACd,aAAc,UACd,YAAAJ,CAAA,CAEJ,CAEQ,aAAaA,EAAsC,CACzD,MAAMO,EAAe,KAAK,WAAWP,EAAa,cAAc,EAC5D,eACA,mBAEEC,EAAU,KAAK,SAASD,EAAaO,CAAY,EACjDH,EAA+B,CAAA,EAErC,GAAIH,EAAS,CACX,MAAMI,EAAaJ,EAAQ,SACzB,oFAAA,EAEF,UAAWK,KAASD,EAClBD,EAAK,GAAGE,EAAM,CAAC,CAAC,IAAIA,EAAM,CAAC,CAAC,EAAE,EAAIA,EAAM,CAAC,GAAK,GAElD,CAEA,MAAO,CACL,SAAU,cACV,KAAM,KAAK,eAAeN,CAAW,EACrC,aAAcI,EACd,aAAAG,EACA,YAAAP,CAAA,CAEJ,CACF"}
|
package/dist/index-CPbv2Od1.js
DELETED
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { B as r } from "./BasePlugin-6wv0hYJ9.js";
|
|
2
|
-
class c extends r {
|
|
3
|
-
constructor() {
|
|
4
|
-
super(...arguments), this.name = "ruby", this.displayName = "Ruby", this.version = "3.0.0", this.priority = 70;
|
|
5
|
-
}
|
|
6
|
-
async detect(e) {
|
|
7
|
-
if (!this.fileExists(e, "Gemfile"))
|
|
8
|
-
return null;
|
|
9
|
-
const t = this.readFile(e, "Gemfile"), s = {};
|
|
10
|
-
if (t) {
|
|
11
|
-
const n = t.matchAll(
|
|
12
|
-
/gem\s+['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"])?/g
|
|
13
|
-
);
|
|
14
|
-
for (const i of n)
|
|
15
|
-
s[i[1]] = i[2] || "*";
|
|
16
|
-
}
|
|
17
|
-
return {
|
|
18
|
-
language: "Ruby",
|
|
19
|
-
name: this.getProjectName(e),
|
|
20
|
-
dependencies: s,
|
|
21
|
-
manifestFile: "Gemfile",
|
|
22
|
-
projectPath: e
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
getTemplates() {
|
|
26
|
-
return [
|
|
27
|
-
{
|
|
28
|
-
name: "ruby-core",
|
|
29
|
-
tags: ["ruby"],
|
|
30
|
-
content: `# Ruby Development Guidelines
|
|
31
|
-
|
|
32
|
-
This project uses Ruby.
|
|
33
|
-
|
|
34
|
-
## Code Style
|
|
35
|
-
- Follow Ruby style guide
|
|
36
|
-
- Use Rubocop for linting
|
|
37
|
-
- Keep code idiomatic
|
|
38
|
-
|
|
39
|
-
## Dependencies
|
|
40
|
-
- Manage with Bundler
|
|
41
|
-
- Keep Gemfile.lock committed
|
|
42
|
-
- Review gem security
|
|
43
|
-
|
|
44
|
-
## Testing
|
|
45
|
-
- Write tests with RSpec/Minitest
|
|
46
|
-
- Use fixtures and factories
|
|
47
|
-
- Aim for good coverage`
|
|
48
|
-
}
|
|
49
|
-
];
|
|
50
|
-
}
|
|
51
|
-
getDependencyTagMap() {
|
|
52
|
-
return {
|
|
53
|
-
rails: "rails",
|
|
54
|
-
rspec: "rspec",
|
|
55
|
-
sinatra: "sinatra"
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
export {
|
|
60
|
-
c as RubyPlugin
|
|
61
|
-
};
|
|
62
|
-
//# sourceMappingURL=index-CPbv2Od1.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-CPbv2Od1.js","sources":["../src/builtin-plugins/ruby/index.ts"],"sourcesContent":["/**\n * Ruby Language Plugin\n *\n * Detects Ruby projects via Gemfile\n */\n\nimport type { ProjectMetadata, TemplateDefinition } from '../../types';\nimport { BasePlugin } from '../base/BasePlugin';\n\nexport class RubyPlugin extends BasePlugin {\n name = 'ruby';\n displayName = 'Ruby';\n version = '3.0.0';\n priority = 70;\n\n async detect(projectPath: string): Promise<ProjectMetadata | null> {\n if (!this.fileExists(projectPath, 'Gemfile')) {\n return null;\n }\n\n const content = this.readFile(projectPath, 'Gemfile');\n const deps: Record<string, string> = {};\n\n if (content) {\n const gemMatches = content.matchAll(\n /gem\\s+['\"]([^'\"]+)['\"](?:,\\s*['\"]([^'\"]+)['\"])?/g,\n );\n for (const match of gemMatches) {\n deps[match[1]] = match[2] || '*';\n }\n }\n\n return {\n language: 'Ruby',\n name: this.getProjectName(projectPath),\n dependencies: deps,\n manifestFile: 'Gemfile',\n projectPath,\n };\n }\n\n getTemplates(): TemplateDefinition[] {\n return [\n {\n name: 'ruby-core',\n tags: ['ruby'],\n content: `# Ruby Development Guidelines\n\nThis project uses Ruby.\n\n## Code Style\n- Follow Ruby style guide\n- Use Rubocop for linting\n- Keep code idiomatic\n\n## Dependencies\n- Manage with Bundler\n- Keep Gemfile.lock committed\n- Review gem security\n\n## Testing\n- Write tests with RSpec/Minitest\n- Use fixtures and factories\n- Aim for good coverage`,\n },\n ];\n }\n\n getDependencyTagMap() {\n return {\n rails: 'rails',\n rspec: 'rspec',\n sinatra: 'sinatra',\n };\n }\n}\n"],"names":["RubyPlugin","BasePlugin","projectPath","content","deps","gemMatches","match"],"mappings":";AASO,MAAMA,UAAmBC,EAAW;AAAA,EAApC,cAAA;AAAA,UAAA,GAAA,SAAA,GACL,KAAA,OAAO,QACP,KAAA,cAAc,QACd,KAAA,UAAU,SACV,KAAA,WAAW;AAAA,EAAA;AAAA,EAEX,MAAM,OAAOC,GAAsD;AACjE,QAAI,CAAC,KAAK,WAAWA,GAAa,SAAS;AACzC,aAAO;AAGT,UAAMC,IAAU,KAAK,SAASD,GAAa,SAAS,GAC9CE,IAA+B,CAAA;AAErC,QAAID,GAAS;AACX,YAAME,IAAaF,EAAQ;AAAA,QACzB;AAAA,MAAA;AAEF,iBAAWG,KAASD;AAClB,QAAAD,EAAKE,EAAM,CAAC,CAAC,IAAIA,EAAM,CAAC,KAAK;AAAA,IAEjC;AAEA,WAAO;AAAA,MACL,UAAU;AAAA,MACV,MAAM,KAAK,eAAeJ,CAAW;AAAA,MACrC,cAAcE;AAAA,MACd,cAAc;AAAA,MACd,aAAAF;AAAA,IAAA;AAAA,EAEJ;AAAA,EAEA,eAAqC;AACnC,WAAO;AAAA,MACL;AAAA,QACE,MAAM;AAAA,QACN,MAAM,CAAC,MAAM;AAAA,QACb,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAAA;AAAA,IAkBX;AAAA,EAEJ;AAAA,EAEA,sBAAsB;AACpB,WAAO;AAAA,MACL,OAAO;AAAA,MACP,OAAO;AAAA,MACP,SAAS;AAAA,IAAA;AAAA,EAEb;AACF;"}
|
package/dist/index-Cf-MC6Al.js
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { B as o } from "./BasePlugin-6wv0hYJ9.js";
|
|
2
|
-
class l extends o {
|
|
3
|
-
constructor() {
|
|
4
|
-
super(...arguments), this.name = "csharp", this.displayName = "C#", this.version = "3.0.0", this.priority = 60;
|
|
5
|
-
}
|
|
6
|
-
async detect(e) {
|
|
7
|
-
const s = await this.findFiles(e, "*.csproj");
|
|
8
|
-
if (s.length === 0)
|
|
9
|
-
return null;
|
|
10
|
-
const t = s[0], n = this.readFile(e, t), r = {};
|
|
11
|
-
if (n) {
|
|
12
|
-
const i = n.matchAll(
|
|
13
|
-
/<PackageReference\s+Include="([^"]+)"(?:\s+Version="([^"]+)")?/g
|
|
14
|
-
);
|
|
15
|
-
for (const a of i)
|
|
16
|
-
r[a[1]] = a[2] || "*";
|
|
17
|
-
}
|
|
18
|
-
return {
|
|
19
|
-
language: "C#",
|
|
20
|
-
name: t.replace(".csproj", ""),
|
|
21
|
-
dependencies: r,
|
|
22
|
-
manifestFile: t,
|
|
23
|
-
projectPath: e
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
getTemplates() {
|
|
27
|
-
return [
|
|
28
|
-
{
|
|
29
|
-
name: "csharp-core",
|
|
30
|
-
tags: ["csharp", "dotnet"],
|
|
31
|
-
content: `# C# / .NET Development Guidelines
|
|
32
|
-
|
|
33
|
-
This project uses C# and .NET.
|
|
34
|
-
|
|
35
|
-
## Code Style
|
|
36
|
-
- Follow C# naming conventions
|
|
37
|
-
- Use proper async/await patterns
|
|
38
|
-
- Leverage LINQ where appropriate
|
|
39
|
-
|
|
40
|
-
## Dependencies
|
|
41
|
-
- Manage with NuGet
|
|
42
|
-
- Review package security
|
|
43
|
-
- Keep packages updated
|
|
44
|
-
|
|
45
|
-
## Testing
|
|
46
|
-
- Write xUnit/NUnit tests
|
|
47
|
-
- Use proper assertions
|
|
48
|
-
- Aim for good coverage`
|
|
49
|
-
}
|
|
50
|
-
];
|
|
51
|
-
}
|
|
52
|
-
getDependencyTagMap() {
|
|
53
|
-
return {
|
|
54
|
-
"Microsoft.AspNetCore": "aspnetcore",
|
|
55
|
-
xunit: "xunit",
|
|
56
|
-
NUnit: "nunit"
|
|
57
|
-
};
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
export {
|
|
61
|
-
l as CSharpPlugin
|
|
62
|
-
};
|
|
63
|
-
//# sourceMappingURL=index-Cf-MC6Al.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-Cf-MC6Al.js","sources":["../src/builtin-plugins/csharp/index.ts"],"sourcesContent":["/**\n * C# / .NET Language Plugin\n *\n * Detects C# projects via .csproj files\n */\n\nimport type { ProjectMetadata, TemplateDefinition } from '../../types';\nimport { BasePlugin } from '../base/BasePlugin';\n\nexport class CSharpPlugin extends BasePlugin {\n name = 'csharp';\n displayName = 'C#';\n version = '3.0.0';\n priority = 60;\n\n async detect(projectPath: string): Promise<ProjectMetadata | null> {\n const csprojFiles = await this.findFiles(projectPath, '*.csproj');\n\n if (csprojFiles.length === 0) {\n return null;\n }\n\n const csprojFile = csprojFiles[0];\n const content = this.readFile(projectPath, csprojFile);\n const deps: Record<string, string> = {};\n\n if (content) {\n const depMatches = content.matchAll(\n /<PackageReference\\s+Include=\"([^\"]+)\"(?:\\s+Version=\"([^\"]+)\")?/g,\n );\n for (const match of depMatches) {\n deps[match[1]] = match[2] || '*';\n }\n }\n\n return {\n language: 'C#',\n name: csprojFile.replace('.csproj', ''),\n dependencies: deps,\n manifestFile: csprojFile,\n projectPath,\n };\n }\n\n getTemplates(): TemplateDefinition[] {\n return [\n {\n name: 'csharp-core',\n tags: ['csharp', 'dotnet'],\n content: `# C# / .NET Development Guidelines\n\nThis project uses C# and .NET.\n\n## Code Style\n- Follow C# naming conventions\n- Use proper async/await patterns\n- Leverage LINQ where appropriate\n\n## Dependencies\n- Manage with NuGet\n- Review package security\n- Keep packages updated\n\n## Testing\n- Write xUnit/NUnit tests\n- Use proper assertions\n- Aim for good coverage`,\n },\n ];\n }\n\n getDependencyTagMap() {\n return {\n 'Microsoft.AspNetCore': 'aspnetcore',\n xunit: 'xunit',\n NUnit: 'nunit',\n };\n }\n}\n"],"names":["CSharpPlugin","BasePlugin","projectPath","csprojFiles","csprojFile","content","deps","depMatches","match"],"mappings":";AASO,MAAMA,UAAqBC,EAAW;AAAA,EAAtC,cAAA;AAAA,UAAA,GAAA,SAAA,GACL,KAAA,OAAO,UACP,KAAA,cAAc,MACd,KAAA,UAAU,SACV,KAAA,WAAW;AAAA,EAAA;AAAA,EAEX,MAAM,OAAOC,GAAsD;AACjE,UAAMC,IAAc,MAAM,KAAK,UAAUD,GAAa,UAAU;AAEhE,QAAIC,EAAY,WAAW;AACzB,aAAO;AAGT,UAAMC,IAAaD,EAAY,CAAC,GAC1BE,IAAU,KAAK,SAASH,GAAaE,CAAU,GAC/CE,IAA+B,CAAA;AAErC,QAAID,GAAS;AACX,YAAME,IAAaF,EAAQ;AAAA,QACzB;AAAA,MAAA;AAEF,iBAAWG,KAASD;AAClB,QAAAD,EAAKE,EAAM,CAAC,CAAC,IAAIA,EAAM,CAAC,KAAK;AAAA,IAEjC;AAEA,WAAO;AAAA,MACL,UAAU;AAAA,MACV,MAAMJ,EAAW,QAAQ,WAAW,EAAE;AAAA,MACtC,cAAcE;AAAA,MACd,cAAcF;AAAA,MACd,aAAAF;AAAA,IAAA;AAAA,EAEJ;AAAA,EAEA,eAAqC;AACnC,WAAO;AAAA,MACL;AAAA,QACE,MAAM;AAAA,QACN,MAAM,CAAC,UAAU,QAAQ;AAAA,QACzB,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,MAAA;AAAA,IAkBX;AAAA,EAEJ;AAAA,EAEA,sBAAsB;AACpB,WAAO;AAAA,MACL,wBAAwB;AAAA,MACxB,OAAO;AAAA,MACP,OAAO;AAAA,IAAA;AAAA,EAEX;AACF;"}
|
package/dist/index-DDPXXXDy.cjs
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("./BasePlugin-odQJAKA-.cjs");class t extends i.BasePlugin{constructor(){super(...arguments),this.name="php",this.displayName="PHP",this.version="3.0.0",this.priority=65}async detect(e){if(!this.fileExists(e,"composer.json"))return null;const s=this.readJSON(e,"composer.json");if(!s)return{language:"PHP",name:this.getProjectName(e),dependencies:{},manifestFile:"composer.json",projectPath:e};const n={...s.require,...s["require-dev"]};return{language:"PHP",name:s.name||this.getProjectName(e),description:s.description,dependencies:n,manifestFile:"composer.json",projectPath:e}}getTemplates(){return[{name:"php-core",tags:["php"],content:`# PHP Development Guidelines
|
|
2
|
-
|
|
3
|
-
This project uses PHP.
|
|
4
|
-
|
|
5
|
-
## Code Style
|
|
6
|
-
- Follow PSR-12 coding standard
|
|
7
|
-
- Use PHP-CS-Fixer
|
|
8
|
-
- Type hint where possible
|
|
9
|
-
|
|
10
|
-
## Dependencies
|
|
11
|
-
- Manage with Composer
|
|
12
|
-
- Keep composer.lock committed
|
|
13
|
-
- Review package security
|
|
14
|
-
|
|
15
|
-
## Testing
|
|
16
|
-
- Write PHPUnit tests
|
|
17
|
-
- Use proper assertions
|
|
18
|
-
- Aim for good coverage`}]}getDependencyTagMap(){return{"laravel/framework":"laravel","symfony/symfony":"symfony","phpunit/phpunit":"phpunit"}}}exports.PHPPlugin=t;
|
|
19
|
-
//# sourceMappingURL=index-DDPXXXDy.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-DDPXXXDy.cjs","sources":["../src/builtin-plugins/php/index.ts"],"sourcesContent":["/**\n * PHP Language Plugin\n *\n * Detects PHP projects via composer.json\n */\n\nimport type { ProjectMetadata, TemplateDefinition } from '../../types';\nimport { BasePlugin } from '../base/BasePlugin';\n\nexport class PHPPlugin extends BasePlugin {\n name = 'php';\n displayName = 'PHP';\n version = '3.0.0';\n priority = 65;\n\n async detect(projectPath: string): Promise<ProjectMetadata | null> {\n if (!this.fileExists(projectPath, 'composer.json')) {\n return null;\n }\n\n const composer = this.readJSON<{\n name?: string;\n description?: string;\n require?: Record<string, string>;\n 'require-dev'?: Record<string, string>;\n }>(projectPath, 'composer.json');\n\n if (!composer) {\n return {\n language: 'PHP',\n name: this.getProjectName(projectPath),\n dependencies: {},\n manifestFile: 'composer.json',\n projectPath,\n };\n }\n\n const deps = {\n ...composer.require,\n ...composer['require-dev'],\n };\n\n return {\n language: 'PHP',\n name: composer.name || this.getProjectName(projectPath),\n description: composer.description,\n dependencies: deps,\n manifestFile: 'composer.json',\n projectPath,\n };\n }\n\n getTemplates(): TemplateDefinition[] {\n return [\n {\n name: 'php-core',\n tags: ['php'],\n content: `# PHP Development Guidelines\n\nThis project uses PHP.\n\n## Code Style\n- Follow PSR-12 coding standard\n- Use PHP-CS-Fixer\n- Type hint where possible\n\n## Dependencies\n- Manage with Composer\n- Keep composer.lock committed\n- Review package security\n\n## Testing\n- Write PHPUnit tests\n- Use proper assertions\n- Aim for good coverage`,\n },\n ];\n }\n\n getDependencyTagMap() {\n return {\n 'laravel/framework': 'laravel',\n 'symfony/symfony': 'symfony',\n 'phpunit/phpunit': 'phpunit',\n };\n }\n}\n"],"names":["PHPPlugin","BasePlugin","projectPath","composer","deps"],"mappings":"6HASO,MAAMA,UAAkBC,EAAAA,UAAW,CAAnC,aAAA,CAAA,MAAA,GAAA,SAAA,EACL,KAAA,KAAO,MACP,KAAA,YAAc,MACd,KAAA,QAAU,QACV,KAAA,SAAW,EAAA,CAEX,MAAM,OAAOC,EAAsD,CACjE,GAAI,CAAC,KAAK,WAAWA,EAAa,eAAe,EAC/C,OAAO,KAGT,MAAMC,EAAW,KAAK,SAKnBD,EAAa,eAAe,EAE/B,GAAI,CAACC,EACH,MAAO,CACL,SAAU,MACV,KAAM,KAAK,eAAeD,CAAW,EACrC,aAAc,CAAA,EACd,aAAc,gBACd,YAAAA,CAAA,EAIJ,MAAME,EAAO,CACX,GAAGD,EAAS,QACZ,GAAGA,EAAS,aAAa,CAAA,EAG3B,MAAO,CACL,SAAU,MACV,KAAMA,EAAS,MAAQ,KAAK,eAAeD,CAAW,EACtD,YAAaC,EAAS,YACtB,aAAcC,EACd,aAAc,gBACd,YAAAF,CAAA,CAEJ,CAEA,cAAqC,CACnC,MAAO,CACL,CACE,KAAM,WACN,KAAM,CAAC,KAAK,EACZ,QAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAA,CAkBX,CAEJ,CAEA,qBAAsB,CACpB,MAAO,CACL,oBAAqB,UACrB,kBAAmB,UACnB,kBAAmB,SAAA,CAEvB,CACF"}
|
package/dist/index-DO30AzDe.cjs
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./BasePlugin-odQJAKA-.cjs");class u extends r.BasePlugin{constructor(){super(...arguments),this.name="ruby",this.displayName="Ruby",this.version="3.0.0",this.priority=70}async detect(e){if(!this.fileExists(e,"Gemfile"))return null;const t=this.readFile(e,"Gemfile"),i={};if(t){const n=t.matchAll(/gem\s+['"]([^'"]+)['"](?:,\s*['"]([^'"]+)['"])?/g);for(const s of n)i[s[1]]=s[2]||"*"}return{language:"Ruby",name:this.getProjectName(e),dependencies:i,manifestFile:"Gemfile",projectPath:e}}getTemplates(){return[{name:"ruby-core",tags:["ruby"],content:`# Ruby Development Guidelines
|
|
2
|
-
|
|
3
|
-
This project uses Ruby.
|
|
4
|
-
|
|
5
|
-
## Code Style
|
|
6
|
-
- Follow Ruby style guide
|
|
7
|
-
- Use Rubocop for linting
|
|
8
|
-
- Keep code idiomatic
|
|
9
|
-
|
|
10
|
-
## Dependencies
|
|
11
|
-
- Manage with Bundler
|
|
12
|
-
- Keep Gemfile.lock committed
|
|
13
|
-
- Review gem security
|
|
14
|
-
|
|
15
|
-
## Testing
|
|
16
|
-
- Write tests with RSpec/Minitest
|
|
17
|
-
- Use fixtures and factories
|
|
18
|
-
- Aim for good coverage`}]}getDependencyTagMap(){return{rails:"rails",rspec:"rspec",sinatra:"sinatra"}}}exports.RubyPlugin=u;
|
|
19
|
-
//# sourceMappingURL=index-DO30AzDe.cjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-DO30AzDe.cjs","sources":["../src/builtin-plugins/ruby/index.ts"],"sourcesContent":["/**\n * Ruby Language Plugin\n *\n * Detects Ruby projects via Gemfile\n */\n\nimport type { ProjectMetadata, TemplateDefinition } from '../../types';\nimport { BasePlugin } from '../base/BasePlugin';\n\nexport class RubyPlugin extends BasePlugin {\n name = 'ruby';\n displayName = 'Ruby';\n version = '3.0.0';\n priority = 70;\n\n async detect(projectPath: string): Promise<ProjectMetadata | null> {\n if (!this.fileExists(projectPath, 'Gemfile')) {\n return null;\n }\n\n const content = this.readFile(projectPath, 'Gemfile');\n const deps: Record<string, string> = {};\n\n if (content) {\n const gemMatches = content.matchAll(\n /gem\\s+['\"]([^'\"]+)['\"](?:,\\s*['\"]([^'\"]+)['\"])?/g,\n );\n for (const match of gemMatches) {\n deps[match[1]] = match[2] || '*';\n }\n }\n\n return {\n language: 'Ruby',\n name: this.getProjectName(projectPath),\n dependencies: deps,\n manifestFile: 'Gemfile',\n projectPath,\n };\n }\n\n getTemplates(): TemplateDefinition[] {\n return [\n {\n name: 'ruby-core',\n tags: ['ruby'],\n content: `# Ruby Development Guidelines\n\nThis project uses Ruby.\n\n## Code Style\n- Follow Ruby style guide\n- Use Rubocop for linting\n- Keep code idiomatic\n\n## Dependencies\n- Manage with Bundler\n- Keep Gemfile.lock committed\n- Review gem security\n\n## Testing\n- Write tests with RSpec/Minitest\n- Use fixtures and factories\n- Aim for good coverage`,\n },\n ];\n }\n\n getDependencyTagMap() {\n return {\n rails: 'rails',\n rspec: 'rspec',\n sinatra: 'sinatra',\n };\n }\n}\n"],"names":["RubyPlugin","BasePlugin","projectPath","content","deps","gemMatches","match"],"mappings":"6HASO,MAAMA,UAAmBC,EAAAA,UAAW,CAApC,aAAA,CAAA,MAAA,GAAA,SAAA,EACL,KAAA,KAAO,OACP,KAAA,YAAc,OACd,KAAA,QAAU,QACV,KAAA,SAAW,EAAA,CAEX,MAAM,OAAOC,EAAsD,CACjE,GAAI,CAAC,KAAK,WAAWA,EAAa,SAAS,EACzC,OAAO,KAGT,MAAMC,EAAU,KAAK,SAASD,EAAa,SAAS,EAC9CE,EAA+B,CAAA,EAErC,GAAID,EAAS,CACX,MAAME,EAAaF,EAAQ,SACzB,kDAAA,EAEF,UAAWG,KAASD,EAClBD,EAAKE,EAAM,CAAC,CAAC,EAAIA,EAAM,CAAC,GAAK,GAEjC,CAEA,MAAO,CACL,SAAU,OACV,KAAM,KAAK,eAAeJ,CAAW,EACrC,aAAcE,EACd,aAAc,UACd,YAAAF,CAAA,CAEJ,CAEA,cAAqC,CACnC,MAAO,CACL,CACE,KAAM,YACN,KAAM,CAAC,MAAM,EACb,QAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,wBAAA,CAkBX,CAEJ,CAEA,qBAAsB,CACpB,MAAO,CACL,MAAO,QACP,MAAO,QACP,QAAS,SAAA,CAEb,CACF"}
|