@dimensional-innovations/tool-config 4.0.0 → 5.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +7 -120
  3. package/dist/cli/index.js +1812 -0
  4. package/dist/cli/index.js.map +1 -0
  5. package/dist/index.d.ts +401 -0
  6. package/dist/index.js +2644 -0
  7. package/dist/index.js.map +1 -0
  8. package/package.json +22 -15
  9. package/bin/lib/ci-setup.js +0 -142
  10. package/bin/lib/formatting.js +0 -103
  11. package/bin/lib/handlers/eslint.js +0 -61
  12. package/bin/lib/handlers/prettier.js +0 -83
  13. package/bin/lib/handlers/semantic-release.js +0 -60
  14. package/bin/lib/handlers/stylelint.js +0 -85
  15. package/bin/lib/handlers/typescript.js +0 -156
  16. package/bin/lib/package-manager.js +0 -201
  17. package/bin/lib/ui.js +0 -239
  18. package/bin/lib/uninstall.js +0 -199
  19. package/bin/lib/validators.js +0 -28
  20. package/bin/setup-tool-config.js +0 -442
  21. package/src/detectors.js +0 -286
  22. package/src/index.js +0 -69
  23. package/src/tools/eslint/index.js +0 -282
  24. package/src/tools/eslint/presets/base.js +0 -75
  25. package/src/tools/eslint/presets/environments/browser.js +0 -16
  26. package/src/tools/eslint/presets/environments/node.js +0 -21
  27. package/src/tools/eslint/presets/environments/universal.js +0 -18
  28. package/src/tools/eslint/presets/frameworks/angular.js +0 -80
  29. package/src/tools/eslint/presets/frameworks/astro.js +0 -43
  30. package/src/tools/eslint/presets/frameworks/node.js +0 -63
  31. package/src/tools/eslint/presets/frameworks/react.js +0 -81
  32. package/src/tools/eslint/presets/frameworks/solid.js +0 -50
  33. package/src/tools/eslint/presets/frameworks/svelte.js +0 -65
  34. package/src/tools/eslint/presets/frameworks/vanilla.js +0 -22
  35. package/src/tools/eslint/presets/frameworks/vue.js +0 -159
  36. package/src/tools/eslint/presets/imports.js +0 -47
  37. package/src/tools/eslint/presets/typescript.js +0 -142
  38. package/src/tools/prettier/README.md +0 -398
  39. package/src/tools/prettier/index.js +0 -132
  40. package/src/tools/prettier/presets/base.js +0 -36
  41. package/src/tools/prettier/presets/frameworks/astro.js +0 -15
  42. package/src/tools/prettier/presets/frameworks/react.js +0 -15
  43. package/src/tools/prettier/presets/frameworks/svelte.js +0 -22
  44. package/src/tools/prettier/presets/frameworks/vanilla.js +0 -13
  45. package/src/tools/prettier/presets/frameworks/vue.js +0 -21
  46. package/src/tools/prettier/presets/prettierignore.js +0 -57
  47. package/src/tools/semantic-release/CI_SETUP.md +0 -66
  48. package/src/tools/semantic-release/README.md +0 -533
  49. package/src/tools/semantic-release/index.js +0 -130
  50. package/src/tools/semantic-release/presets/default.js +0 -37
  51. package/src/tools/semantic-release/presets/library.js +0 -58
  52. package/src/tools/semantic-release/presets/monorepo.js +0 -48
  53. package/src/tools/semantic-release/templates/.gitlab-ci.yml +0 -89
  54. package/src/tools/semantic-release/templates/bitbucket-pipelines.yml +0 -100
  55. package/src/tools/semantic-release/templates/github-workflow.yml +0 -107
  56. package/src/tools/stylelint/README.md +0 -425
  57. package/src/tools/stylelint/index.js +0 -195
  58. package/src/tools/stylelint/presets/base.js +0 -50
  59. package/src/tools/stylelint/presets/css-modules.js +0 -43
  60. package/src/tools/stylelint/presets/frameworks/react.js +0 -18
  61. package/src/tools/stylelint/presets/frameworks/svelte.js +0 -28
  62. package/src/tools/stylelint/presets/frameworks/vanilla.js +0 -14
  63. package/src/tools/stylelint/presets/frameworks/vue.js +0 -38
  64. package/src/tools/stylelint/presets/scss.js +0 -83
  65. package/src/tools/stylelint/presets/tailwind.js +0 -49
  66. package/src/tools/typescript/README.md +0 -665
  67. package/src/tools/typescript/checker-detection.js +0 -113
  68. package/src/tools/typescript/index.js +0 -202
  69. package/src/tools/typescript/presets/base.js +0 -58
  70. package/src/tools/typescript/presets/environments/browser.js +0 -10
  71. package/src/tools/typescript/presets/environments/node.js +0 -11
  72. package/src/tools/typescript/presets/environments/universal.js +0 -11
  73. package/src/tools/typescript/presets/frameworks/angular.js +0 -11
  74. package/src/tools/typescript/presets/frameworks/astro.js +0 -11
  75. package/src/tools/typescript/presets/frameworks/electron.js +0 -100
  76. package/src/tools/typescript/presets/frameworks/node.js +0 -12
  77. package/src/tools/typescript/presets/frameworks/react.js +0 -10
  78. package/src/tools/typescript/presets/frameworks/solid.js +0 -11
  79. package/src/tools/typescript/presets/frameworks/svelte.js +0 -10
  80. package/src/tools/typescript/presets/frameworks/vanilla.js +0 -9
  81. package/src/tools/typescript/presets/frameworks/vue.js +0 -17
  82. package/src/utils/ignore-patterns.js +0 -157
  83. package/src/utils/package-reader.js +0 -42
@@ -1,157 +0,0 @@
1
- /**
2
- * Shared ignore patterns for all tools
3
- *
4
- * Provides consistent ignore patterns across ESLint, Prettier, and Stylelint
5
- * to prevent processing build outputs, dependencies, and generated files.
6
- */
7
-
8
- /**
9
- * Common directories that should be ignored by all tools
10
- */
11
- export const COMMON_IGNORE_DIRS = [
12
- 'node_modules',
13
- 'dist',
14
- 'build',
15
- 'out',
16
- 'coverage',
17
- '.nyc_output'
18
- ]
19
-
20
- /**
21
- * Framework-specific build outputs
22
- */
23
- export const FRAMEWORK_BUILD_DIRS = [
24
- '.next', // Next.js
25
- '.nuxt', // Nuxt
26
- '.output', // Nitro/Nuxt3
27
- '.vercel', // Vercel
28
- '.netlify', // Netlify
29
- '.cache', // Gatsby/Parcel
30
- '.parcel-cache', // Parcel
31
- '.turbo', // Turborepo
32
- '.vite', // Vite
33
- '.vitepress', // VitePress
34
- '.svelte-kit' // SvelteKit
35
- ]
36
-
37
- /**
38
- * Lock files and generated files
39
- */
40
- export const GENERATED_FILES = [
41
- 'package-lock.json',
42
- 'pnpm-lock.yaml',
43
- 'yarn.lock',
44
- 'bun.lockb',
45
- 'CHANGELOG.md'
46
- ]
47
-
48
- /**
49
- * Minified files
50
- */
51
- export const MINIFIED_FILES = ['*.min.js', '*.min.css', '*.min.mjs']
52
-
53
- /**
54
- * Get ESLint ignore patterns (flat config format)
55
- * @returns {string[]} Array of glob patterns for ESLint ignores array
56
- */
57
- export function getEslintIgnores() {
58
- return [
59
- ...COMMON_IGNORE_DIRS.map(dir => `**/${dir}/**`),
60
- ...FRAMEWORK_BUILD_DIRS.map(dir => `**/${dir}/**`),
61
- ...MINIFIED_FILES.map(pattern => `**/${pattern}`)
62
- ]
63
- }
64
-
65
- /**
66
- * Get Stylelint ignore patterns (ignoreFiles format)
67
- * @returns {string[]} Array of glob patterns for Stylelint ignoreFiles
68
- */
69
- export function getStylelintIgnores() {
70
- return [
71
- ...COMMON_IGNORE_DIRS.map(dir => `**/${dir}/**`),
72
- ...FRAMEWORK_BUILD_DIRS.map(dir => `**/${dir}/**`),
73
- ...MINIFIED_FILES.map(pattern => `**/${pattern}`)
74
- ]
75
- }
76
-
77
- /**
78
- * Get Prettier ignore content (.prettierignore file format)
79
- * @returns {string} .prettierignore file content
80
- */
81
- export function getPrettierIgnoreContent() {
82
- return `# Dependencies
83
- node_modules/
84
- .pnp/
85
- .pnp.js
86
-
87
- # Build outputs
88
- ${COMMON_IGNORE_DIRS.filter(dir => dir !== 'node_modules' && dir !== 'coverage')
89
- .map(dir => `${dir}/`)
90
- .join('\n')}
91
- ${FRAMEWORK_BUILD_DIRS.map(dir => `${dir}/`).join('\n')}
92
-
93
- # Coverage
94
- coverage/
95
- .nyc_output/
96
- *.lcov
97
-
98
- # Lock files
99
- ${GENERATED_FILES.filter(f => f.includes('lock') || f.includes('.lock')).join('\n')}
100
-
101
- # Generated files
102
- CHANGELOG.md
103
-
104
- # Cache directories
105
- .cache/
106
- .parcel-cache/
107
- .turbo/
108
- .vite/
109
-
110
- # Environment files (may contain secrets)
111
- .env
112
- .env.local
113
- .env.*.local
114
-
115
- # IDE
116
- .vscode/
117
- .idea/
118
-
119
- # OS files
120
- .DS_Store
121
- Thumbs.db
122
- `
123
- }
124
-
125
- /**
126
- * Get Stylelint ignore content (.stylelintignore file format)
127
- * @returns {string} .stylelintignore file content
128
- */
129
- export function getStylelintIgnoreContent() {
130
- return `# Dependencies
131
- node_modules/
132
-
133
- # Build outputs
134
- ${COMMON_IGNORE_DIRS.filter(dir => dir !== 'node_modules' && dir !== 'coverage')
135
- .map(dir => `${dir}/`)
136
- .join('\n')}
137
- ${FRAMEWORK_BUILD_DIRS.map(dir => `${dir}/`).join('\n')}
138
-
139
- # Coverage
140
- coverage/
141
- .nyc_output/
142
-
143
- # Minified files
144
- ${MINIFIED_FILES.join('\n')}
145
- `
146
- }
147
-
148
- export default {
149
- COMMON_IGNORE_DIRS,
150
- FRAMEWORK_BUILD_DIRS,
151
- GENERATED_FILES,
152
- MINIFIED_FILES,
153
- getEslintIgnores,
154
- getStylelintIgnores,
155
- getPrettierIgnoreContent,
156
- getStylelintIgnoreContent
157
- }
@@ -1,42 +0,0 @@
1
- import { existsSync, readFileSync } from 'fs'
2
- import { join } from 'path'
3
-
4
- /**
5
- * Read and parse package.json from a directory
6
- * @param {string} cwd - Directory path
7
- * @returns {Object|null} Parsed package.json or null if not found
8
- */
9
- export function readPackageJson(cwd) {
10
- const packagePath = join(cwd, 'package.json')
11
-
12
- if (!existsSync(packagePath)) {
13
- return null
14
- }
15
-
16
- try {
17
- const content = readFileSync(packagePath, 'utf8')
18
- return JSON.parse(content)
19
- } catch (error) {
20
- console.warn(`Warning: Failed to read package.json: ${error.message}`)
21
- return null
22
- }
23
- }
24
-
25
- /**
26
- * Get production dependencies from package.json
27
- * Only returns dependencies, not devDependencies, since devDependencies
28
- * are for tooling/testing and should not influence framework detection.
29
- * @param {Object} pkg - Parsed package.json
30
- * @returns {Object} Production dependencies
31
- */
32
- export function getAllDependencies(pkg) {
33
- if (!pkg) {
34
- return {}
35
- }
36
-
37
- // Only return production dependencies for framework detection
38
- // devDependencies are for tooling/testing, not the actual framework
39
- return {
40
- ...pkg.dependencies
41
- }
42
- }