metadatafy 1.0.0 → 1.0.2
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 +239 -0
- package/dist/{chunk-EDHWKZRG.cjs → chunk-5CZ4N6Q2.cjs} +0 -2
- package/dist/{chunk-ECKCIPM5.js → chunk-QXJYOL3O.js} +0 -2
- package/dist/cli.cjs +1 -3
- package/dist/cli.js +1 -3
- package/dist/index.cjs +29 -31
- package/dist/index.js +1 -3
- package/dist/next.cjs +6 -8
- package/dist/next.js +1 -3
- package/dist/vite.cjs +6 -8
- package/dist/vite.js +1 -3
- package/package.json +1 -1
- package/dist/chunk-ECKCIPM5.js.map +0 -1
- package/dist/chunk-EDHWKZRG.cjs.map +0 -1
- package/dist/cli.cjs.map +0 -1
- package/dist/cli.js.map +0 -1
- package/dist/index.cjs.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/next.cjs.map +0 -1
- package/dist/next.js.map +0 -1
- package/dist/vite.cjs.map +0 -1
- package/dist/vite.js.map +0 -1
package/README.md
ADDED
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
# metadatafy
|
|
2
|
+
|
|
3
|
+
A build plugin for extracting project metadata from your codebase. Supports Vite, Next.js, and CLI usage.
|
|
4
|
+
|
|
5
|
+
코드베이스에서 프로젝트 메타데이터를 추출하는 빌드 플러그인입니다. Vite, Next.js, CLI를 지원합니다.
|
|
6
|
+
|
|
7
|
+
## Features / 기능
|
|
8
|
+
|
|
9
|
+
- **AST-based analysis** - Parses TypeScript/JavaScript files using TypeScript compiler API
|
|
10
|
+
- **Import/Export extraction** - Tracks file dependencies and call graphs
|
|
11
|
+
- **Component props detection** - Extracts React component props
|
|
12
|
+
- **Korean keyword mapping** - Automatic English-Korean keyword translation
|
|
13
|
+
- **Multiple output formats** - JSON file or API endpoint
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
- **AST 기반 분석** - TypeScript 컴파일러 API를 사용한 파일 파싱
|
|
18
|
+
- **Import/Export 추출** - 파일 의존성 및 호출 그래프 추적
|
|
19
|
+
- **컴포넌트 Props 감지** - React 컴포넌트 props 추출
|
|
20
|
+
- **한글 키워드 매핑** - 영어-한글 키워드 자동 변환
|
|
21
|
+
- **다양한 출력 형식** - JSON 파일 또는 API 엔드포인트
|
|
22
|
+
|
|
23
|
+
## Installation / 설치
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
npm install metadatafy
|
|
27
|
+
# or
|
|
28
|
+
yarn add metadatafy
|
|
29
|
+
# or
|
|
30
|
+
pnpm add metadatafy
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## Usage / 사용법
|
|
34
|
+
|
|
35
|
+
### CLI
|
|
36
|
+
|
|
37
|
+
```bash
|
|
38
|
+
# Analyze project and generate metadata
|
|
39
|
+
# 프로젝트 분석 및 메타데이터 생성
|
|
40
|
+
npx metadatafy analyze
|
|
41
|
+
|
|
42
|
+
# With options / 옵션과 함께
|
|
43
|
+
npx metadatafy analyze --project-id my-project --output ./metadata.json --verbose
|
|
44
|
+
|
|
45
|
+
# Generate config file / 설정 파일 생성
|
|
46
|
+
npx metadatafy init
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
#### CLI Options / CLI 옵션
|
|
50
|
+
|
|
51
|
+
| Option | Short | Description |
|
|
52
|
+
|--------|-------|-------------|
|
|
53
|
+
| `--project-id` | `-p` | Project ID (default: folder name) |
|
|
54
|
+
| `--output` | `-o` | Output file path (default: project-metadata.json) |
|
|
55
|
+
| `--config` | `-c` | Config file path |
|
|
56
|
+
| `--verbose` | | Enable detailed logging |
|
|
57
|
+
| `--help` | `-h` | Show help |
|
|
58
|
+
| `--version` | `-v` | Show version |
|
|
59
|
+
|
|
60
|
+
### Vite Plugin
|
|
61
|
+
|
|
62
|
+
```typescript
|
|
63
|
+
// vite.config.ts
|
|
64
|
+
import { defineConfig } from 'vite';
|
|
65
|
+
import { metadataPlugin } from 'metadatafy/vite';
|
|
66
|
+
|
|
67
|
+
export default defineConfig({
|
|
68
|
+
plugins: [
|
|
69
|
+
metadataPlugin({
|
|
70
|
+
projectId: 'my-project',
|
|
71
|
+
output: {
|
|
72
|
+
file: {
|
|
73
|
+
enabled: true,
|
|
74
|
+
path: 'project-metadata.json',
|
|
75
|
+
},
|
|
76
|
+
},
|
|
77
|
+
}),
|
|
78
|
+
],
|
|
79
|
+
});
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Next.js Plugin
|
|
83
|
+
|
|
84
|
+
```javascript
|
|
85
|
+
// next.config.js
|
|
86
|
+
const { withMetadata } = require('metadatafy/next');
|
|
87
|
+
|
|
88
|
+
/** @type {import('next').NextConfig} */
|
|
89
|
+
const nextConfig = {
|
|
90
|
+
// your config
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
module.exports = withMetadata({
|
|
94
|
+
projectId: 'my-project',
|
|
95
|
+
})(nextConfig);
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
## Configuration / 설정
|
|
99
|
+
|
|
100
|
+
Create `metadata.config.json` in your project root:
|
|
101
|
+
|
|
102
|
+
프로젝트 루트에 `metadata.config.json` 파일을 생성하세요:
|
|
103
|
+
|
|
104
|
+
```json
|
|
105
|
+
{
|
|
106
|
+
"projectId": "my-project",
|
|
107
|
+
"include": [
|
|
108
|
+
"app/**/*.{ts,tsx}",
|
|
109
|
+
"components/**/*.{ts,tsx}",
|
|
110
|
+
"hooks/**/*.{ts,tsx}",
|
|
111
|
+
"services/**/*.ts",
|
|
112
|
+
"lib/**/*.ts"
|
|
113
|
+
],
|
|
114
|
+
"exclude": [
|
|
115
|
+
"**/node_modules/**",
|
|
116
|
+
"**/*.test.{ts,tsx}",
|
|
117
|
+
"**/*.spec.{ts,tsx}"
|
|
118
|
+
],
|
|
119
|
+
"output": {
|
|
120
|
+
"file": {
|
|
121
|
+
"enabled": true,
|
|
122
|
+
"path": "project-metadata.json"
|
|
123
|
+
},
|
|
124
|
+
"api": {
|
|
125
|
+
"enabled": false,
|
|
126
|
+
"endpoint": "https://your-api.com/metadata",
|
|
127
|
+
"headers": {
|
|
128
|
+
"Authorization": "Bearer YOUR_TOKEN"
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
},
|
|
132
|
+
"koreanKeywords": {
|
|
133
|
+
"attendance": ["출석", "출결"],
|
|
134
|
+
"student": ["학생", "수강생"]
|
|
135
|
+
},
|
|
136
|
+
"verbose": false
|
|
137
|
+
}
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
## Output Format / 출력 형식
|
|
141
|
+
|
|
142
|
+
```json
|
|
143
|
+
{
|
|
144
|
+
"version": "1.0.0",
|
|
145
|
+
"projectId": "my-project",
|
|
146
|
+
"generatedAt": "2025-01-04T12:00:00Z",
|
|
147
|
+
"stats": {
|
|
148
|
+
"totalFiles": 150,
|
|
149
|
+
"byType": {
|
|
150
|
+
"route": 15,
|
|
151
|
+
"component": 80,
|
|
152
|
+
"hook": 20,
|
|
153
|
+
"service": 10,
|
|
154
|
+
"api": 5,
|
|
155
|
+
"table": 8,
|
|
156
|
+
"utility": 12
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
"items": [
|
|
160
|
+
{
|
|
161
|
+
"id": "abc123",
|
|
162
|
+
"type": "component",
|
|
163
|
+
"name": "AttendanceModal",
|
|
164
|
+
"path": "components/attendance/AttendanceModal.tsx",
|
|
165
|
+
"keywords": ["attendance", "modal", "출석", "모달"],
|
|
166
|
+
"searchText": "attendancemodal components attendance ...",
|
|
167
|
+
"calls": ["hooks/useAttendance.ts", "services/attendanceService.ts"],
|
|
168
|
+
"calledBy": ["app/attendance/page.tsx"],
|
|
169
|
+
"metadata": {
|
|
170
|
+
"exports": ["AttendanceModal"],
|
|
171
|
+
"props": ["isOpen", "onClose", "studentId"]
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
]
|
|
175
|
+
}
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
## File Type Detection / 파일 타입 감지
|
|
179
|
+
|
|
180
|
+
| Pattern | Type |
|
|
181
|
+
|---------|------|
|
|
182
|
+
| `app/**/page.tsx` | route |
|
|
183
|
+
| `app/**/route.ts` | api |
|
|
184
|
+
| `components/**/*.tsx` | component |
|
|
185
|
+
| `hooks/**/*.ts` | hook |
|
|
186
|
+
| `services/**/*.ts` | service |
|
|
187
|
+
| `lib/**/*.ts` | utility |
|
|
188
|
+
| `supabase/migrations/*.sql` | table |
|
|
189
|
+
|
|
190
|
+
## API / 프로그래밍 방식 사용
|
|
191
|
+
|
|
192
|
+
```typescript
|
|
193
|
+
import { ProjectAnalyzer, createDefaultConfig } from 'metadatafy';
|
|
194
|
+
|
|
195
|
+
const config = createDefaultConfig({
|
|
196
|
+
projectId: 'my-project',
|
|
197
|
+
verbose: true,
|
|
198
|
+
});
|
|
199
|
+
|
|
200
|
+
const analyzer = new ProjectAnalyzer(config);
|
|
201
|
+
const result = await analyzer.analyze(process.cwd());
|
|
202
|
+
|
|
203
|
+
console.log(result.stats);
|
|
204
|
+
console.log(result.items);
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
## Korean Keyword Mapping / 한글 키워드 매핑
|
|
208
|
+
|
|
209
|
+
Built-in mappings include common development terms:
|
|
210
|
+
|
|
211
|
+
기본 제공되는 매핑에는 일반적인 개발 용어가 포함됩니다:
|
|
212
|
+
|
|
213
|
+
| English | Korean |
|
|
214
|
+
|---------|--------|
|
|
215
|
+
| create | 생성, 만들기, 추가 |
|
|
216
|
+
| update | 수정, 업데이트, 변경 |
|
|
217
|
+
| delete | 삭제, 제거 |
|
|
218
|
+
| search | 검색, 찾기 |
|
|
219
|
+
| login | 로그인 |
|
|
220
|
+
| user | 사용자, 유저, 회원 |
|
|
221
|
+
| button | 버튼 |
|
|
222
|
+
| modal | 모달, 팝업 |
|
|
223
|
+
| ... | ... |
|
|
224
|
+
|
|
225
|
+
You can extend with custom mappings in config.
|
|
226
|
+
|
|
227
|
+
설정에서 커스텀 매핑을 추가할 수 있습니다.
|
|
228
|
+
|
|
229
|
+
## License / 라이선스
|
|
230
|
+
|
|
231
|
+
MIT
|
|
232
|
+
|
|
233
|
+
## Contributing / 기여
|
|
234
|
+
|
|
235
|
+
Issues and pull requests are welcome!
|
|
236
|
+
|
|
237
|
+
이슈와 풀 리퀘스트를 환영합니다!
|
|
238
|
+
|
|
239
|
+
GitHub: https://github.com/rungchan2/get-metadata
|
|
@@ -1380,5 +1380,3 @@ exports.splitPascalCase = splitPascalCase;
|
|
|
1380
1380
|
exports.splitSnakeCase = splitSnakeCase;
|
|
1381
1381
|
exports.toAllCases = toAllCases;
|
|
1382
1382
|
exports.validateConfig = validateConfig;
|
|
1383
|
-
//# sourceMappingURL=chunk-EDHWKZRG.cjs.map
|
|
1384
|
-
//# sourceMappingURL=chunk-EDHWKZRG.cjs.map
|
|
@@ -1325,5 +1325,3 @@ var SupabaseApiSender = class extends ApiSender {
|
|
|
1325
1325
|
};
|
|
1326
1326
|
|
|
1327
1327
|
export { ApiSender, CallGraphBuilder, DEFAULT_EXCLUDE_PATTERNS, DEFAULT_FILE_TYPE_MAPPING, DEFAULT_INCLUDE_PATTERNS, DependencyResolver, ExportExtractor, FileWriter, ImportExtractor, KOREAN_KEYWORD_MAP, KeywordExtractor, ProjectAnalyzer, PropsExtractor, SQLParser, SupabaseApiSender, TypeScriptParser, createDefaultConfig, extendKoreanMap, extractAcronyms, findKoreanKeywords, generateId, splitCamelCase, splitIntoWords, splitKebabCase, splitPascalCase, splitSnakeCase, toAllCases, validateConfig };
|
|
1328
|
-
//# sourceMappingURL=chunk-ECKCIPM5.js.map
|
|
1329
|
-
//# sourceMappingURL=chunk-ECKCIPM5.js.map
|
package/dist/cli.cjs
CHANGED
|
@@ -1276,7 +1276,7 @@ var ApiSender = class {
|
|
|
1276
1276
|
};
|
|
1277
1277
|
|
|
1278
1278
|
// src/cli.ts
|
|
1279
|
-
var VERSION = "1.0.
|
|
1279
|
+
var VERSION = "1.0.1";
|
|
1280
1280
|
var HELP_TEXT = `
|
|
1281
1281
|
metadatafy - \uD504\uB85C\uC81D\uD2B8 \uBA54\uD0C0\uB370\uC774\uD130 \uCD94\uCD9C \uB3C4\uAD6C
|
|
1282
1282
|
|
|
@@ -1474,5 +1474,3 @@ main().catch((error) => {
|
|
|
1474
1474
|
console.error("Fatal error:", error);
|
|
1475
1475
|
process.exit(1);
|
|
1476
1476
|
});
|
|
1477
|
-
//# sourceMappingURL=cli.cjs.map
|
|
1478
|
-
//# sourceMappingURL=cli.cjs.map
|
package/dist/cli.js
CHANGED
|
@@ -1248,7 +1248,7 @@ var ApiSender = class {
|
|
|
1248
1248
|
};
|
|
1249
1249
|
|
|
1250
1250
|
// src/cli.ts
|
|
1251
|
-
var VERSION = "1.0.
|
|
1251
|
+
var VERSION = "1.0.1";
|
|
1252
1252
|
var HELP_TEXT = `
|
|
1253
1253
|
metadatafy - \uD504\uB85C\uC81D\uD2B8 \uBA54\uD0C0\uB370\uC774\uD130 \uCD94\uCD9C \uB3C4\uAD6C
|
|
1254
1254
|
|
|
@@ -1446,5 +1446,3 @@ main().catch((error) => {
|
|
|
1446
1446
|
console.error("Fatal error:", error);
|
|
1447
1447
|
process.exit(1);
|
|
1448
1448
|
});
|
|
1449
|
-
//# sourceMappingURL=cli.js.map
|
|
1450
|
-
//# sourceMappingURL=cli.js.map
|
package/dist/index.cjs
CHANGED
|
@@ -1,120 +1,118 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunk5CZ4N6Q2_cjs = require('./chunk-5CZ4N6Q2.cjs');
|
|
4
4
|
|
|
5
5
|
|
|
6
6
|
|
|
7
7
|
Object.defineProperty(exports, "ApiSender", {
|
|
8
8
|
enumerable: true,
|
|
9
|
-
get: function () { return
|
|
9
|
+
get: function () { return chunk5CZ4N6Q2_cjs.ApiSender; }
|
|
10
10
|
});
|
|
11
11
|
Object.defineProperty(exports, "CallGraphBuilder", {
|
|
12
12
|
enumerable: true,
|
|
13
|
-
get: function () { return
|
|
13
|
+
get: function () { return chunk5CZ4N6Q2_cjs.CallGraphBuilder; }
|
|
14
14
|
});
|
|
15
15
|
Object.defineProperty(exports, "DEFAULT_EXCLUDE_PATTERNS", {
|
|
16
16
|
enumerable: true,
|
|
17
|
-
get: function () { return
|
|
17
|
+
get: function () { return chunk5CZ4N6Q2_cjs.DEFAULT_EXCLUDE_PATTERNS; }
|
|
18
18
|
});
|
|
19
19
|
Object.defineProperty(exports, "DEFAULT_FILE_TYPE_MAPPING", {
|
|
20
20
|
enumerable: true,
|
|
21
|
-
get: function () { return
|
|
21
|
+
get: function () { return chunk5CZ4N6Q2_cjs.DEFAULT_FILE_TYPE_MAPPING; }
|
|
22
22
|
});
|
|
23
23
|
Object.defineProperty(exports, "DEFAULT_INCLUDE_PATTERNS", {
|
|
24
24
|
enumerable: true,
|
|
25
|
-
get: function () { return
|
|
25
|
+
get: function () { return chunk5CZ4N6Q2_cjs.DEFAULT_INCLUDE_PATTERNS; }
|
|
26
26
|
});
|
|
27
27
|
Object.defineProperty(exports, "DependencyResolver", {
|
|
28
28
|
enumerable: true,
|
|
29
|
-
get: function () { return
|
|
29
|
+
get: function () { return chunk5CZ4N6Q2_cjs.DependencyResolver; }
|
|
30
30
|
});
|
|
31
31
|
Object.defineProperty(exports, "ExportExtractor", {
|
|
32
32
|
enumerable: true,
|
|
33
|
-
get: function () { return
|
|
33
|
+
get: function () { return chunk5CZ4N6Q2_cjs.ExportExtractor; }
|
|
34
34
|
});
|
|
35
35
|
Object.defineProperty(exports, "FileWriter", {
|
|
36
36
|
enumerable: true,
|
|
37
|
-
get: function () { return
|
|
37
|
+
get: function () { return chunk5CZ4N6Q2_cjs.FileWriter; }
|
|
38
38
|
});
|
|
39
39
|
Object.defineProperty(exports, "ImportExtractor", {
|
|
40
40
|
enumerable: true,
|
|
41
|
-
get: function () { return
|
|
41
|
+
get: function () { return chunk5CZ4N6Q2_cjs.ImportExtractor; }
|
|
42
42
|
});
|
|
43
43
|
Object.defineProperty(exports, "KOREAN_KEYWORD_MAP", {
|
|
44
44
|
enumerable: true,
|
|
45
|
-
get: function () { return
|
|
45
|
+
get: function () { return chunk5CZ4N6Q2_cjs.KOREAN_KEYWORD_MAP; }
|
|
46
46
|
});
|
|
47
47
|
Object.defineProperty(exports, "KeywordExtractor", {
|
|
48
48
|
enumerable: true,
|
|
49
|
-
get: function () { return
|
|
49
|
+
get: function () { return chunk5CZ4N6Q2_cjs.KeywordExtractor; }
|
|
50
50
|
});
|
|
51
51
|
Object.defineProperty(exports, "ProjectAnalyzer", {
|
|
52
52
|
enumerable: true,
|
|
53
|
-
get: function () { return
|
|
53
|
+
get: function () { return chunk5CZ4N6Q2_cjs.ProjectAnalyzer; }
|
|
54
54
|
});
|
|
55
55
|
Object.defineProperty(exports, "PropsExtractor", {
|
|
56
56
|
enumerable: true,
|
|
57
|
-
get: function () { return
|
|
57
|
+
get: function () { return chunk5CZ4N6Q2_cjs.PropsExtractor; }
|
|
58
58
|
});
|
|
59
59
|
Object.defineProperty(exports, "SQLParser", {
|
|
60
60
|
enumerable: true,
|
|
61
|
-
get: function () { return
|
|
61
|
+
get: function () { return chunk5CZ4N6Q2_cjs.SQLParser; }
|
|
62
62
|
});
|
|
63
63
|
Object.defineProperty(exports, "SupabaseApiSender", {
|
|
64
64
|
enumerable: true,
|
|
65
|
-
get: function () { return
|
|
65
|
+
get: function () { return chunk5CZ4N6Q2_cjs.SupabaseApiSender; }
|
|
66
66
|
});
|
|
67
67
|
Object.defineProperty(exports, "TypeScriptParser", {
|
|
68
68
|
enumerable: true,
|
|
69
|
-
get: function () { return
|
|
69
|
+
get: function () { return chunk5CZ4N6Q2_cjs.TypeScriptParser; }
|
|
70
70
|
});
|
|
71
71
|
Object.defineProperty(exports, "createDefaultConfig", {
|
|
72
72
|
enumerable: true,
|
|
73
|
-
get: function () { return
|
|
73
|
+
get: function () { return chunk5CZ4N6Q2_cjs.createDefaultConfig; }
|
|
74
74
|
});
|
|
75
75
|
Object.defineProperty(exports, "extendKoreanMap", {
|
|
76
76
|
enumerable: true,
|
|
77
|
-
get: function () { return
|
|
77
|
+
get: function () { return chunk5CZ4N6Q2_cjs.extendKoreanMap; }
|
|
78
78
|
});
|
|
79
79
|
Object.defineProperty(exports, "extractAcronyms", {
|
|
80
80
|
enumerable: true,
|
|
81
|
-
get: function () { return
|
|
81
|
+
get: function () { return chunk5CZ4N6Q2_cjs.extractAcronyms; }
|
|
82
82
|
});
|
|
83
83
|
Object.defineProperty(exports, "findKoreanKeywords", {
|
|
84
84
|
enumerable: true,
|
|
85
|
-
get: function () { return
|
|
85
|
+
get: function () { return chunk5CZ4N6Q2_cjs.findKoreanKeywords; }
|
|
86
86
|
});
|
|
87
87
|
Object.defineProperty(exports, "generateId", {
|
|
88
88
|
enumerable: true,
|
|
89
|
-
get: function () { return
|
|
89
|
+
get: function () { return chunk5CZ4N6Q2_cjs.generateId; }
|
|
90
90
|
});
|
|
91
91
|
Object.defineProperty(exports, "splitCamelCase", {
|
|
92
92
|
enumerable: true,
|
|
93
|
-
get: function () { return
|
|
93
|
+
get: function () { return chunk5CZ4N6Q2_cjs.splitCamelCase; }
|
|
94
94
|
});
|
|
95
95
|
Object.defineProperty(exports, "splitIntoWords", {
|
|
96
96
|
enumerable: true,
|
|
97
|
-
get: function () { return
|
|
97
|
+
get: function () { return chunk5CZ4N6Q2_cjs.splitIntoWords; }
|
|
98
98
|
});
|
|
99
99
|
Object.defineProperty(exports, "splitKebabCase", {
|
|
100
100
|
enumerable: true,
|
|
101
|
-
get: function () { return
|
|
101
|
+
get: function () { return chunk5CZ4N6Q2_cjs.splitKebabCase; }
|
|
102
102
|
});
|
|
103
103
|
Object.defineProperty(exports, "splitPascalCase", {
|
|
104
104
|
enumerable: true,
|
|
105
|
-
get: function () { return
|
|
105
|
+
get: function () { return chunk5CZ4N6Q2_cjs.splitPascalCase; }
|
|
106
106
|
});
|
|
107
107
|
Object.defineProperty(exports, "splitSnakeCase", {
|
|
108
108
|
enumerable: true,
|
|
109
|
-
get: function () { return
|
|
109
|
+
get: function () { return chunk5CZ4N6Q2_cjs.splitSnakeCase; }
|
|
110
110
|
});
|
|
111
111
|
Object.defineProperty(exports, "toAllCases", {
|
|
112
112
|
enumerable: true,
|
|
113
|
-
get: function () { return
|
|
113
|
+
get: function () { return chunk5CZ4N6Q2_cjs.toAllCases; }
|
|
114
114
|
});
|
|
115
115
|
Object.defineProperty(exports, "validateConfig", {
|
|
116
116
|
enumerable: true,
|
|
117
|
-
get: function () { return
|
|
117
|
+
get: function () { return chunk5CZ4N6Q2_cjs.validateConfig; }
|
|
118
118
|
});
|
|
119
|
-
//# sourceMappingURL=index.cjs.map
|
|
120
|
-
//# sourceMappingURL=index.cjs.map
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
export { ApiSender, CallGraphBuilder, DEFAULT_EXCLUDE_PATTERNS, DEFAULT_FILE_TYPE_MAPPING, DEFAULT_INCLUDE_PATTERNS, DependencyResolver, ExportExtractor, FileWriter, ImportExtractor, KOREAN_KEYWORD_MAP, KeywordExtractor, ProjectAnalyzer, PropsExtractor, SQLParser, SupabaseApiSender, TypeScriptParser, createDefaultConfig, extendKoreanMap, extractAcronyms, findKoreanKeywords, generateId, splitCamelCase, splitIntoWords, splitKebabCase, splitPascalCase, splitSnakeCase, toAllCases, validateConfig } from './chunk-
|
|
2
|
-
//# sourceMappingURL=index.js.map
|
|
3
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export { ApiSender, CallGraphBuilder, DEFAULT_EXCLUDE_PATTERNS, DEFAULT_FILE_TYPE_MAPPING, DEFAULT_INCLUDE_PATTERNS, DependencyResolver, ExportExtractor, FileWriter, ImportExtractor, KOREAN_KEYWORD_MAP, KeywordExtractor, ProjectAnalyzer, PropsExtractor, SQLParser, SupabaseApiSender, TypeScriptParser, createDefaultConfig, extendKoreanMap, extractAcronyms, findKoreanKeywords, generateId, splitCamelCase, splitIntoWords, splitKebabCase, splitPascalCase, splitSnakeCase, toAllCases, validateConfig } from './chunk-QXJYOL3O.js';
|
package/dist/next.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var chunk5CZ4N6Q2_cjs = require('./chunk-5CZ4N6Q2.cjs');
|
|
6
6
|
var path = require('path');
|
|
7
7
|
|
|
8
8
|
function _interopNamespace(e) {
|
|
@@ -26,9 +26,9 @@ function _interopNamespace(e) {
|
|
|
26
26
|
var path__namespace = /*#__PURE__*/_interopNamespace(path);
|
|
27
27
|
|
|
28
28
|
function withMetadata(options = {}) {
|
|
29
|
-
const pluginConfig =
|
|
29
|
+
const pluginConfig = chunk5CZ4N6Q2_cjs.createDefaultConfig(options);
|
|
30
30
|
const runOn = options.runOn || "build";
|
|
31
|
-
const errors =
|
|
31
|
+
const errors = chunk5CZ4N6Q2_cjs.validateConfig(pluginConfig);
|
|
32
32
|
if (errors.length > 0) {
|
|
33
33
|
throw new Error(
|
|
34
34
|
`[metadata-plugin] Invalid config:
|
|
@@ -82,9 +82,9 @@ var MetadataWebpackPlugin = class {
|
|
|
82
82
|
});
|
|
83
83
|
}
|
|
84
84
|
async runAnalysis(rootDir) {
|
|
85
|
-
const analyzer = new
|
|
86
|
-
const fileWriter = new
|
|
87
|
-
const apiSender = this.config.output.api?.enabled ? new
|
|
85
|
+
const analyzer = new chunk5CZ4N6Q2_cjs.ProjectAnalyzer(this.config);
|
|
86
|
+
const fileWriter = new chunk5CZ4N6Q2_cjs.FileWriter(this.config);
|
|
87
|
+
const apiSender = this.config.output.api?.enabled ? new chunk5CZ4N6Q2_cjs.ApiSender(this.config) : null;
|
|
88
88
|
if (this.config.verbose) {
|
|
89
89
|
console.log("[metadata-plugin] Starting analysis...");
|
|
90
90
|
}
|
|
@@ -107,5 +107,3 @@ var MetadataWebpackPlugin = class {
|
|
|
107
107
|
|
|
108
108
|
exports.default = withMetadata;
|
|
109
109
|
exports.withMetadata = withMetadata;
|
|
110
|
-
//# sourceMappingURL=next.cjs.map
|
|
111
|
-
//# sourceMappingURL=next.cjs.map
|
package/dist/next.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createDefaultConfig, validateConfig, ProjectAnalyzer, FileWriter, ApiSender } from './chunk-
|
|
1
|
+
import { createDefaultConfig, validateConfig, ProjectAnalyzer, FileWriter, ApiSender } from './chunk-QXJYOL3O.js';
|
|
2
2
|
import * as path from 'path';
|
|
3
3
|
|
|
4
4
|
function withMetadata(options = {}) {
|
|
@@ -82,5 +82,3 @@ var MetadataWebpackPlugin = class {
|
|
|
82
82
|
};
|
|
83
83
|
|
|
84
84
|
export { withMetadata as default, withMetadata };
|
|
85
|
-
//# sourceMappingURL=next.js.map
|
|
86
|
-
//# sourceMappingURL=next.js.map
|
package/dist/vite.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var chunk5CZ4N6Q2_cjs = require('./chunk-5CZ4N6Q2.cjs');
|
|
6
6
|
var path = require('path');
|
|
7
7
|
|
|
8
8
|
function _interopNamespace(e) {
|
|
@@ -26,18 +26,18 @@ function _interopNamespace(e) {
|
|
|
26
26
|
var path__namespace = /*#__PURE__*/_interopNamespace(path);
|
|
27
27
|
|
|
28
28
|
function metadataPlugin(options = {}) {
|
|
29
|
-
const config =
|
|
29
|
+
const config = chunk5CZ4N6Q2_cjs.createDefaultConfig(options);
|
|
30
30
|
const runOn = options.runOn || "build";
|
|
31
31
|
let viteConfig;
|
|
32
32
|
let analysisResult = null;
|
|
33
|
-
const analyzer = new
|
|
34
|
-
const fileWriter = new
|
|
35
|
-
const apiSender = config.output.api?.enabled ? new
|
|
33
|
+
const analyzer = new chunk5CZ4N6Q2_cjs.ProjectAnalyzer(config);
|
|
34
|
+
const fileWriter = new chunk5CZ4N6Q2_cjs.FileWriter(config);
|
|
35
|
+
const apiSender = config.output.api?.enabled ? new chunk5CZ4N6Q2_cjs.ApiSender(config) : null;
|
|
36
36
|
return {
|
|
37
37
|
name: "vite-metadata-plugin",
|
|
38
38
|
configResolved(resolvedConfig) {
|
|
39
39
|
viteConfig = resolvedConfig;
|
|
40
|
-
const errors =
|
|
40
|
+
const errors = chunk5CZ4N6Q2_cjs.validateConfig(config);
|
|
41
41
|
if (errors.length > 0) {
|
|
42
42
|
throw new Error(
|
|
43
43
|
`[metadata-plugin] Invalid config:
|
|
@@ -87,5 +87,3 @@ ${errors.join("\n")}`
|
|
|
87
87
|
|
|
88
88
|
exports.default = metadataPlugin;
|
|
89
89
|
exports.metadataPlugin = metadataPlugin;
|
|
90
|
-
//# sourceMappingURL=vite.cjs.map
|
|
91
|
-
//# sourceMappingURL=vite.cjs.map
|
package/dist/vite.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createDefaultConfig, ProjectAnalyzer, FileWriter, ApiSender, validateConfig } from './chunk-
|
|
1
|
+
import { createDefaultConfig, ProjectAnalyzer, FileWriter, ApiSender, validateConfig } from './chunk-QXJYOL3O.js';
|
|
2
2
|
import * as path from 'path';
|
|
3
3
|
|
|
4
4
|
function metadataPlugin(options = {}) {
|
|
@@ -62,5 +62,3 @@ ${errors.join("\n")}`
|
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
export { metadataPlugin as default, metadataPlugin };
|
|
65
|
-
//# sourceMappingURL=vite.js.map
|
|
66
|
-
//# sourceMappingURL=vite.js.map
|