@siyavuyachagi/typesharp 0.1.0 β 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +158 -48
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/core/index.d.ts +1 -1
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +3 -3
- package/dist/core/index.js.map +1 -1
- package/dist/generator/index.d.ts.map +1 -1
- package/dist/generator/index.js +74 -51
- package/dist/generator/index.js.map +1 -1
- package/dist/parser/index.js +33 -19
- package/dist/parser/index.js.map +1 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/typesharp-config.d.ts +19 -8
- package/dist/types/typesharp-config.d.ts.map +1 -1
- package/package.json +2 -1
package/README.md
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
# TypeSharp
|
|
2
2
|
|
|
3
|
+
[](https://opensource.org/licenses/MIT)
|
|
4
|
+
[](https://www.npmjs.com/package/@siyavuyachagi/typesharp)
|
|
5
|
+
[](https://github.com/sponsors/siyavuyachagi)
|
|
6
|
+
|
|
3
7
|
Generate TypeScript types from C# models with ease! TypeSharp scans your ASP.NET Core projects and automatically generates TypeScript interfaces from your C# classes decorated with the `[TypeSharp]` attribute.
|
|
4
8
|
|
|
5
9
|
## Features
|
|
@@ -8,29 +12,32 @@ Generate TypeScript types from C# models with ease! TypeSharp scans your ASP.NET
|
|
|
8
12
|
π― **Custom Attribute Targeting** β Use `[TypeSharp]` or any custom attribute
|
|
9
13
|
π **Nullable Support** β `string?` β `string | null`
|
|
10
14
|
π¦ **Collection Handling** β Supports `List<T>`, `IEnumerable<T>`, arrays **and generic collections**
|
|
15
|
+
πΊοΈ **Dictionary Mapping** β `Dictionary<K, V>` β `Record<K, V>`
|
|
11
16
|
𧬠**Generic Types** β Preserves generic type definitions like `Response<T>` β `Response<T>`
|
|
12
17
|
𧬠**Inheritance** β Preserves class inheritance using `extends`
|
|
18
|
+
ποΈ **Computed Properties** β Expression-bodied and block getter properties are included
|
|
13
19
|
π¨ **Naming Conventions** β Convert property names (camel, pascal, snake, kebab)
|
|
14
20
|
π **Flexible Output** β Single file or multiple files
|
|
15
21
|
π’ **Enum Support** β Converts C# enums to TypeScript string enums
|
|
16
|
-
ποΈ **File Grouping** β Preserves C# file organization (multiple classes per file stay together)
|
|
22
|
+
ποΈ **File Grouping** β Preserves C# file organization (multiple classes per file stay together)
|
|
23
|
+
π **Auto Imports** β Automatically generates `import type` statements between output files
|
|
24
|
+
π’ **Multi-Project** β Scan multiple `.csproj` files in a single run
|
|
17
25
|
|
|
26
|
+
## How TypeSharp Compares
|
|
18
27
|
|
|
19
|
-
## How TypeSharp Compares
|
|
20
28
|
This is not an OpenApi-based tool !
|
|
21
|
-
| Feature
|
|
29
|
+
| Feature | TypeSharp | NSwag | openapi-typescript | TypeGen |
|
|
22
30
|
| --------------------- | --------- | ----- | ------------------ | ------- |
|
|
23
|
-
| Direct C# parsing
|
|
24
|
-
| Attribute targeting
|
|
25
|
-
| Non-API models
|
|
26
|
-
| Generics preserved
|
|
27
|
-
| File grouping
|
|
28
|
-
| Naming control
|
|
29
|
-
| API client generation | β
|
|
31
|
+
| Direct C# parsing | β
| β | β | β
|
|
|
32
|
+
| Attribute targeting | β
| β οΈ | β | β οΈ |
|
|
33
|
+
| Non-API models | β
| β | β | β
|
|
|
34
|
+
| Generics preserved | β
| β οΈ | β οΈ | β οΈ |
|
|
35
|
+
| File grouping | β
| β | β | β |
|
|
36
|
+
| Naming control | β
| β οΈ | β οΈ | β |
|
|
37
|
+
| API client generation | β | β
| β | β |
|
|
30
38
|
|
|
31
39
|
For more [docs/why-typesharp](docs/why-typesharp.md)
|
|
32
40
|
|
|
33
|
-
|
|
34
41
|
## Installation
|
|
35
42
|
|
|
36
43
|
```bash
|
|
@@ -85,7 +92,7 @@ public class ApiResponse<T>
|
|
|
85
92
|
|
|
86
93
|
### 3. Create a configuration file
|
|
87
94
|
|
|
88
|
-
In your frontend
|
|
95
|
+
In your frontend project run the following script
|
|
89
96
|
|
|
90
97
|
```bash
|
|
91
98
|
# Create TypeScript config
|
|
@@ -93,29 +100,27 @@ npx typesharp init
|
|
|
93
100
|
|
|
94
101
|
# ----- OR -------
|
|
95
102
|
|
|
96
|
-
# Create JSON config
|
|
103
|
+
# Create JSON config
|
|
97
104
|
npx typesharp init --format json
|
|
98
105
|
|
|
99
|
-
# Create TypeScript config
|
|
106
|
+
# Create TypeScript config (default)
|
|
100
107
|
npx typesharp init --format ts
|
|
101
108
|
|
|
102
109
|
# Create JavaScript config
|
|
103
110
|
npx typesharp init --format js
|
|
104
|
-
|
|
105
111
|
```
|
|
106
112
|
|
|
107
113
|
This creates `typesharp.config.json`:
|
|
108
114
|
|
|
109
115
|
```json
|
|
110
116
|
{
|
|
111
|
-
"
|
|
117
|
+
"projectFiles": [
|
|
112
118
|
"C:/Users/User/Desktop/MyApp/Api/Api.csproj",
|
|
113
119
|
"C:/Users/User/Desktop/MyApp/Domain/Domain.csproj"
|
|
114
120
|
],
|
|
115
121
|
"outputPath": "./app/types",
|
|
116
122
|
"targetAnnotation": "TypeSharp",
|
|
117
123
|
"singleOutputFile": false,
|
|
118
|
-
"fileNamingConvention": "kebab",
|
|
119
124
|
"namingConvention": "camel"
|
|
120
125
|
}
|
|
121
126
|
```
|
|
@@ -183,23 +188,40 @@ export interface ApiResponse<T> {
|
|
|
183
188
|
errors: string[];
|
|
184
189
|
}
|
|
185
190
|
```
|
|
191
|
+
|
|
186
192
|
For more advanced usage [docs/usage](docs/usage.md)
|
|
187
193
|
|
|
188
194
|
## Configuration
|
|
189
195
|
|
|
190
196
|
### 1. Configuration Options
|
|
191
197
|
|
|
192
|
-
| Option
|
|
193
|
-
|
|
|
194
|
-
| `projectFiles`
|
|
195
|
-
| `outputPath`
|
|
196
|
-
| `targetAnnotation`
|
|
197
|
-
| `singleOutputFile`
|
|
198
|
-
| `
|
|
199
|
-
| `
|
|
200
|
-
| `fileSuffix` | `string` | `optional` | Suffix for file names: `user-dto.ts` |
|
|
198
|
+
| Option | Type | Default | Description |
|
|
199
|
+
| ------------------ | ----------------------------------------- | ------------- | ------------------------------------------------------------- |
|
|
200
|
+
| `projectFiles` | `string \| string[]` | _required_ | Full path(s) to your C# .csproj file(s) |
|
|
201
|
+
| `outputPath` | `string` | _required_ | Where to generate TypeScript files |
|
|
202
|
+
| `targetAnnotation` | `string` | `'TypeSharp'` | C# attribute name to look for |
|
|
203
|
+
| `singleOutputFile` | `boolean` | `false` | Generate one file or multiple files (see below) |
|
|
204
|
+
| `namingConvention` | `string \| { dir: string, file: string }` | `'camel'` | Property/file/dir naming: `kebab`, `camel`, `pascal`, `snake` |
|
|
205
|
+
| `fileSuffix` | `string` | _optional_ | Suffix appended to generated file names: `user-dto.ts` |
|
|
201
206
|
|
|
202
|
-
### 2.
|
|
207
|
+
### 2. Naming Convention
|
|
208
|
+
|
|
209
|
+
`namingConvention` accepts either a simple string that applies to everything, or a config object for separate control over directories and files:
|
|
210
|
+
|
|
211
|
+
```json
|
|
212
|
+
// Simple β applies to both dirs and files
|
|
213
|
+
{ "namingConvention": "kebab" }
|
|
214
|
+
|
|
215
|
+
// Advanced β separate control
|
|
216
|
+
{
|
|
217
|
+
"namingConvention": {
|
|
218
|
+
"dir": "kebab",
|
|
219
|
+
"file": "camel"
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
### 3. Output File Behavior
|
|
203
225
|
|
|
204
226
|
TypeSharp preserves your C# file organization. Here's how it works:
|
|
205
227
|
|
|
@@ -226,7 +248,7 @@ Backend/ src/types/
|
|
|
226
248
|
|
|
227
249
|
**This means if you organize related DTOs in one C# file, they'll stay together in the generated TypeScript file!** π―
|
|
228
250
|
|
|
229
|
-
###
|
|
251
|
+
### 4. Configuration File Formats
|
|
230
252
|
|
|
231
253
|
TypeSharp supports multiple configuration formats:
|
|
232
254
|
|
|
@@ -311,44 +333,136 @@ export interface Product extends BaseEntity {
|
|
|
311
333
|
}
|
|
312
334
|
```
|
|
313
335
|
|
|
314
|
-
### 2.
|
|
336
|
+
### 2. Computed Properties
|
|
337
|
+
|
|
338
|
+
TypeSharp includes expression-bodied and block getter properties in the generated output:
|
|
339
|
+
|
|
340
|
+
**C#:**
|
|
341
|
+
|
|
342
|
+
```csharp
|
|
343
|
+
[TypeSharp]
|
|
344
|
+
public class PollOptionUserLinkDto
|
|
345
|
+
{
|
|
346
|
+
public int Id { get; set; }
|
|
347
|
+
public int UserId { get; set; }
|
|
348
|
+
public UserDto User { get; set; }
|
|
349
|
+
|
|
350
|
+
// Expression-bodied
|
|
351
|
+
public string? Avatar => User?.Avatar;
|
|
352
|
+
|
|
353
|
+
// Block getter
|
|
354
|
+
public string UserFirstName { get { return User.FirstName; } }
|
|
355
|
+
|
|
356
|
+
// Init-only (Planned)
|
|
357
|
+
// public string Slug { get; init; }
|
|
358
|
+
}
|
|
359
|
+
```
|
|
360
|
+
|
|
361
|
+
**Generated TypeScript:**
|
|
362
|
+
|
|
363
|
+
```typescript
|
|
364
|
+
export interface PollOptionUserLinkDto {
|
|
365
|
+
id: number;
|
|
366
|
+
userId: number;
|
|
367
|
+
user: UserDto;
|
|
368
|
+
avatar: string | null;
|
|
369
|
+
userFirstName: string;
|
|
370
|
+
slug: string;
|
|
371
|
+
}
|
|
372
|
+
```
|
|
373
|
+
|
|
374
|
+
### 3. Dictionary Types
|
|
375
|
+
|
|
376
|
+
**C#:**
|
|
377
|
+
|
|
378
|
+
```csharp
|
|
379
|
+
[TypeSharp]
|
|
380
|
+
public class PermissionMap
|
|
381
|
+
{
|
|
382
|
+
public Dictionary<string, bool> Flags { get; set; }
|
|
383
|
+
public IReadOnlyDictionary<string, List<string>> RolePermissions { get; set; }
|
|
384
|
+
}
|
|
385
|
+
```
|
|
386
|
+
|
|
387
|
+
**Generated TypeScript:**
|
|
388
|
+
|
|
389
|
+
```typescript
|
|
390
|
+
export interface PermissionMap {
|
|
391
|
+
flags: Record<string, boolean>;
|
|
392
|
+
rolePermissions: Record<string, string[]>;
|
|
393
|
+
}
|
|
394
|
+
```
|
|
395
|
+
|
|
396
|
+
### 4. Multi-Project
|
|
397
|
+
|
|
398
|
+
Scan multiple C# projects at once:
|
|
399
|
+
|
|
400
|
+
```json
|
|
401
|
+
{
|
|
402
|
+
"projectFiles": [
|
|
403
|
+
"C:/MyApp/Api/Api.csproj",
|
|
404
|
+
"C:/MyApp/Domain/Domain.csproj",
|
|
405
|
+
"C:/MyApp/Contracts/Contracts.csproj"
|
|
406
|
+
],
|
|
407
|
+
"outputPath": "./src/types"
|
|
408
|
+
}
|
|
409
|
+
```
|
|
410
|
+
|
|
411
|
+
### 5. Single Output File
|
|
315
412
|
|
|
316
413
|
**Config:**
|
|
317
414
|
|
|
318
415
|
```typescript
|
|
319
416
|
const config: TypeSharpConfig = {
|
|
320
|
-
|
|
417
|
+
projectFiles: "./Backend/Backend.csproj",
|
|
321
418
|
outputPath: "./src/types",
|
|
322
419
|
singleOutputFile: true,
|
|
323
420
|
};
|
|
324
421
|
```
|
|
325
422
|
|
|
326
|
-
All types will be generated in `src/types/
|
|
423
|
+
All types will be generated in `src/types/types.ts`
|
|
327
424
|
|
|
328
|
-
###
|
|
425
|
+
### 6. Custom Naming Conventions
|
|
329
426
|
|
|
330
427
|
**Config:**
|
|
331
428
|
|
|
332
429
|
```typescript
|
|
333
430
|
const config: TypeSharpConfig = {
|
|
334
|
-
|
|
431
|
+
projectFiles: "./Backend/Backend.csproj",
|
|
335
432
|
outputPath: "./src/types",
|
|
336
|
-
|
|
337
|
-
|
|
433
|
+
namingConvention: {
|
|
434
|
+
dir: "kebab", // ./src/types/my-feature/
|
|
435
|
+
file: "camel", // myFeatureDto.ts
|
|
436
|
+
},
|
|
338
437
|
};
|
|
339
438
|
```
|
|
340
439
|
|
|
341
440
|
## Type Mappings
|
|
342
441
|
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
|
346
|
-
|
|
|
347
|
-
| `bool`
|
|
348
|
-
| `
|
|
349
|
-
| `
|
|
350
|
-
| `
|
|
351
|
-
| `
|
|
442
|
+
### Primitives & Common Types
|
|
443
|
+
|
|
444
|
+
| C# Type | TypeScript Type |
|
|
445
|
+
| --------------------------------------------------- | --------------- |
|
|
446
|
+
| `bool` | `boolean` |
|
|
447
|
+
| `byte`, `decimal`, `double`, `float`, `int`, `long` | `number` |
|
|
448
|
+
| `DateTime`, `DateOnly`, `TimeOnly` | `string` |
|
|
449
|
+
| `Guid`, `string` | `string` |
|
|
450
|
+
| `object` | `any` |
|
|
451
|
+
|
|
452
|
+
### Collections
|
|
453
|
+
|
|
454
|
+
| C# Type | TypeScript Type |
|
|
455
|
+
| -------------------------------------------------------------------- | --------------- |
|
|
456
|
+
| `List<T>`, `ICollection<T>`, `IEnumerable<T>`, `T[]` | `T[]` |
|
|
457
|
+
| `Dictionary<K, V>`, `IDictionary<K, V>`, `IReadOnlyDictionary<K, V>` | `Record<K, V>` |
|
|
458
|
+
|
|
459
|
+
### ASP.NET / File Types
|
|
460
|
+
|
|
461
|
+
| C# Type | TypeScript Type |
|
|
462
|
+
| -------------------------------------- | --------------- |
|
|
463
|
+
| `IFormFile`, `FormFile` | `File` |
|
|
464
|
+
| `IFormFileCollection` | `File[]` |
|
|
465
|
+
| `FileStream`, `MemoryStream`, `Stream` | `Blob` |
|
|
352
466
|
|
|
353
467
|
## Programmatic Usage
|
|
354
468
|
|
|
@@ -369,10 +483,6 @@ generateTypes();
|
|
|
369
483
|
- Node.js >= 14
|
|
370
484
|
- TypeScript >= 4.5 (if using TypeScript config)
|
|
371
485
|
|
|
372
|
-
<!-- ## Contributing
|
|
373
|
-
|
|
374
|
-
Contributions are welcome! Please feel free to submit a Pull Request. -->
|
|
375
|
-
|
|
376
486
|
## License
|
|
377
487
|
|
|
378
488
|
MIT Β© Siyavuya Chagi
|
package/dist/cli/index.js
CHANGED
|
@@ -31,7 +31,7 @@ program
|
|
|
31
31
|
program
|
|
32
32
|
.command('init')
|
|
33
33
|
.description('Create a sample configuration file')
|
|
34
|
-
.option('-f, --format <format>', 'Configuration file format (ts, js, json)', '
|
|
34
|
+
.option('-f, --format <format>', 'Configuration file format (ts, js, json)', 'ts') // default to 'ts'
|
|
35
35
|
.action((options) => {
|
|
36
36
|
try {
|
|
37
37
|
const format = options.format;
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;;;;AAEA,yCAAoC;AACpC,kCAAuD;AACvD,kDAA0B;AAE1B,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,mEAAmE,CAAC;KAChF,OAAO,CAAC,OAAO,CAAC;KAChB,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAEhC,6BAA6B;AAC7B,OAAO;KACJ,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;KACxC,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,qBAAqB,EAAE,4BAA4B,CAAC;KAC3D,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,CAAC;QACH,MAAM,IAAA,eAAQ,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,eAAe;AACf,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,uBAAuB,EAAE,0CAA0C,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;;;;;AAEA,yCAAoC;AACpC,kCAAuD;AACvD,kDAA0B;AAE1B,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,mEAAmE,CAAC;KAChF,OAAO,CAAC,OAAO,CAAC;KAChB,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAEhC,6BAA6B;AAC7B,OAAO;KACJ,OAAO,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;KACxC,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,qBAAqB,EAAE,4BAA4B,CAAC;KAC3D,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,IAAI,CAAC;QACH,MAAM,IAAA,eAAQ,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,eAAe;AACf,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,uBAAuB,EAAE,0CAA0C,EAAE,IAAI,CAAC,CAAC,kBAAkB;KACpG,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;IAClB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,CAAC,MAA8B,CAAC;QAEtD,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,QAAQ,GAAG,eAAK,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,IAAI,GAAG,eAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACxH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAA,yBAAkB,EAAC,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,eAAK,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACxE,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,KAAK,EAAE,CAAC"}
|
package/dist/core/index.d.ts
CHANGED
|
@@ -12,5 +12,5 @@ export declare function loadConfig(configPath?: string): TypeSharpConfig;
|
|
|
12
12
|
/**
|
|
13
13
|
* Create a sample configuration file
|
|
14
14
|
*/
|
|
15
|
-
export declare function createSampleConfig(format
|
|
15
|
+
export declare function createSampleConfig(format: 'ts' | 'js' | 'json'): void;
|
|
16
16
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAuD5D,wBAAsB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiEjE;AASD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,QAiB/C;AAUD;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,eAAe,CAqB/D;AA2CD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAuD5D,wBAAsB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiEjE;AASD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,QAiB/C;AAUD;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,eAAe,CAqB/D;AA2CD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,IAAI,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAwCrE"}
|
package/dist/core/index.js
CHANGED
|
@@ -51,7 +51,7 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
51
51
|
const DEFAULT_CONFIG = {
|
|
52
52
|
targetAnnotation: 'TypeSharp',
|
|
53
53
|
singleOutputFile: false,
|
|
54
|
-
fileNamingConvention: 'kebab',
|
|
54
|
+
// fileNamingConvention: 'kebab',
|
|
55
55
|
namingConvention: 'camel'
|
|
56
56
|
};
|
|
57
57
|
/**
|
|
@@ -221,7 +221,7 @@ function validateConfig(config) {
|
|
|
221
221
|
/**
|
|
222
222
|
* Create a sample configuration file
|
|
223
223
|
*/
|
|
224
|
-
function createSampleConfig(format
|
|
224
|
+
function createSampleConfig(format) {
|
|
225
225
|
const sampleConfig = {
|
|
226
226
|
// Show array format as example
|
|
227
227
|
projectFiles: [
|
|
@@ -231,8 +231,8 @@ function createSampleConfig(format = 'json') {
|
|
|
231
231
|
outputPath: './app/types',
|
|
232
232
|
targetAnnotation: 'TypeSharp',
|
|
233
233
|
singleOutputFile: false,
|
|
234
|
-
fileNamingConvention: 'kebab',
|
|
235
234
|
namingConvention: 'camel',
|
|
235
|
+
fileSuffix: ''
|
|
236
236
|
};
|
|
237
237
|
let fileName;
|
|
238
238
|
let content;
|
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4DA,4BAiEC;AAaD,oDAiBC;AAaD,gCAqBC;AA8CD,gDAwCC;AAnRD,uCAAyB;AACzB,2CAA6B;AAC7B,sCAA6C;AAC7C,4CAAuD;AACvD,kDAA0B;AAG1B;;GAEG;AACH,MAAM,cAAc,GAA6B;IAC/C,gBAAgB,EAAE,WAAW;IAC7B,gBAAgB,EAAE,KAAK;IACvB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG7D;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,eAAe,EACvB,YAAY,EAAE,WAAW,EAAE,GAC1B,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG7D;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,eAAe,EACvB,YAAY,EAAE,WAAW,EAAE,GAC1B,IAAI,CAgBN"}
|
package/dist/generator/index.js
CHANGED
|
@@ -45,12 +45,14 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
45
45
|
*/
|
|
46
46
|
function generateTypeScriptFiles(config, parseResults) {
|
|
47
47
|
const outputPath = config.outputPath;
|
|
48
|
+
// Convention output type
|
|
49
|
+
const fileConvention = typeof config.namingConvention === 'string' ? config.namingConvention : config.namingConvention?.file ?? 'camel';
|
|
48
50
|
if (!fs.existsSync(outputPath)) {
|
|
49
51
|
fs.mkdirSync(outputPath, { recursive: true });
|
|
50
52
|
}
|
|
51
53
|
if (config.singleOutputFile) {
|
|
52
54
|
const allClasses = parseResults.flatMap(r => r.classes);
|
|
53
|
-
generateSingleFile(allClasses, outputPath
|
|
55
|
+
generateSingleFile(allClasses, outputPath);
|
|
54
56
|
}
|
|
55
57
|
else {
|
|
56
58
|
// Generate one TypeScript file per C# file (preserves grouping)
|
|
@@ -60,9 +62,10 @@ function generateTypeScriptFiles(config, parseResults) {
|
|
|
60
62
|
/**
|
|
61
63
|
* Generate a single file with all types
|
|
62
64
|
*/
|
|
63
|
-
function generateSingleFile(classes, outputPath
|
|
65
|
+
function generateSingleFile(classes, outputPath) {
|
|
64
66
|
const content = classes
|
|
65
|
-
.
|
|
67
|
+
.sort((a, b) => (a.isEnum ? -1 : 1) - (b.isEnum ? -1 : 1) || a.name.localeCompare(b.name)) // Sort by type or name - Asc order
|
|
68
|
+
.map(cls => generateTypeScriptClass(cls))
|
|
66
69
|
.join('\n\n');
|
|
67
70
|
const header = generateFileHeader();
|
|
68
71
|
const fullContent = `${header}\n\n${content}\n`;
|
|
@@ -72,20 +75,27 @@ function generateSingleFile(classes, outputPath, config) {
|
|
|
72
75
|
console.log(chalk_1.default.whiteBright(` - Generated:`), chalk_1.default.blue(filePath));
|
|
73
76
|
}
|
|
74
77
|
/**
|
|
75
|
-
* Generate multiple files - one TypeScript file per C# source file
|
|
78
|
+
* Generate multiple files - one TypeScript file per C# source file.
|
|
76
79
|
* This preserves the original grouping of classes
|
|
77
80
|
*/
|
|
78
81
|
function generateMultipleFiles(outputPath, config, parseResults) {
|
|
82
|
+
// Convention output type
|
|
83
|
+
const dirConvention = typeof config.namingConvention === 'string' ? config.namingConvention : config.namingConvention?.dir ?? 'snake';
|
|
84
|
+
const fileConvention = typeof config.namingConvention === 'string' ? config.namingConvention : config.namingConvention?.file ?? 'camel';
|
|
79
85
|
// Build a map of class names to their file paths for import resolution
|
|
80
|
-
const classToFileMap = buildClassToFileMap(parseResults, config, outputPath);
|
|
81
|
-
|
|
86
|
+
const classToFileMap = buildClassToFileMap(parseResults, config, outputPath, fileConvention);
|
|
87
|
+
// Sort results by path - Asc order
|
|
88
|
+
const parseResultsSorted = parseResults.sort((a, b) => a.relativePath.localeCompare(b.relativePath));
|
|
89
|
+
for (const result of parseResultsSorted) {
|
|
82
90
|
// Generate content for all classes in this C# file
|
|
83
91
|
const content = result.classes
|
|
84
|
-
.map(cls => generateTypeScriptClass(cls
|
|
92
|
+
.map(cls => generateTypeScriptClass(cls))
|
|
85
93
|
.join('\n\n');
|
|
86
94
|
// Preserve folder structure
|
|
87
95
|
const relativeDir = path.dirname(result.relativePath);
|
|
88
|
-
const
|
|
96
|
+
const appDir = path.join(outputPath, relativeDir);
|
|
97
|
+
// Convert dir with configued conventions
|
|
98
|
+
const targetDir = convertDirName(appDir, dirConvention);
|
|
89
99
|
// Create directory if needed
|
|
90
100
|
if (!fs.existsSync(targetDir)) {
|
|
91
101
|
fs.mkdirSync(targetDir, { recursive: true });
|
|
@@ -95,28 +105,28 @@ function generateMultipleFiles(outputPath, config, parseResults) {
|
|
|
95
105
|
// Apply file suffix if configured
|
|
96
106
|
let baseName = originalFileName;
|
|
97
107
|
if (config.fileSuffix) {
|
|
98
|
-
|
|
99
|
-
const suffix =
|
|
100
|
-
baseName = `${baseName}
|
|
108
|
+
// Capitalize the 1st character for better convention
|
|
109
|
+
const suffix = config.fileSuffix.charAt(0).toUpperCase() + config.fileSuffix.slice(1);
|
|
110
|
+
baseName = `${baseName}${suffix}`;
|
|
101
111
|
}
|
|
102
112
|
// Apply naming convention to the filename
|
|
103
|
-
const fileName = convertFileName(baseName,
|
|
113
|
+
const fileName = convertFileName(baseName, fileConvention);
|
|
104
114
|
const filePath = path.join(targetDir, `${fileName}.ts`);
|
|
105
115
|
// Generate imports for this file
|
|
106
116
|
const currentClassNames = result.classes.map(c => c.name);
|
|
107
|
-
const imports = generateImports(result.classes, classToFileMap, filePath, currentClassNames);
|
|
117
|
+
const imports = generateImports(result.classes, classToFileMap, filePath, currentClassNames, dirConvention);
|
|
108
118
|
const header = generateFileHeader();
|
|
109
119
|
const fullContent = imports
|
|
110
|
-
? `${
|
|
120
|
+
? `${imports}\n\n${header}\n\n${content}\n`
|
|
111
121
|
: `${header}\n\n${content}\n`;
|
|
112
122
|
fs.writeFileSync(filePath, fullContent, 'utf-8');
|
|
113
|
-
console.log(chalk_1.default.
|
|
123
|
+
console.log(chalk_1.default.blue(` β³`), chalk_1.default.blue(filePath));
|
|
114
124
|
}
|
|
115
125
|
}
|
|
116
126
|
/**
|
|
117
127
|
* Build a map of class names to their output file paths
|
|
118
128
|
*/
|
|
119
|
-
function buildClassToFileMap(parseResults, config, outputPath) {
|
|
129
|
+
function buildClassToFileMap(parseResults, config, outputPath, namingConvension) {
|
|
120
130
|
const map = new Map();
|
|
121
131
|
for (const result of parseResults) {
|
|
122
132
|
const relativeDir = path.dirname(result.relativePath);
|
|
@@ -124,11 +134,10 @@ function buildClassToFileMap(parseResults, config, outputPath) {
|
|
|
124
134
|
const originalFileName = path.basename(result.relativePath, '.cs');
|
|
125
135
|
let baseName = originalFileName;
|
|
126
136
|
if (config.fileSuffix) {
|
|
127
|
-
const
|
|
128
|
-
const suffix = convertFileName(config.fileSuffix, convention);
|
|
137
|
+
const suffix = convertFileName(config.fileSuffix, namingConvension);
|
|
129
138
|
baseName = `${baseName}-${suffix}`;
|
|
130
139
|
}
|
|
131
|
-
const fileName = convertFileName(baseName,
|
|
140
|
+
const fileName = convertFileName(baseName, namingConvension);
|
|
132
141
|
const filePath = path.join(targetDir, `${fileName}.ts`);
|
|
133
142
|
// Map all classes in this file to this file path
|
|
134
143
|
for (const cls of result.classes) {
|
|
@@ -140,7 +149,7 @@ function buildClassToFileMap(parseResults, config, outputPath) {
|
|
|
140
149
|
/**
|
|
141
150
|
* Generate import statements for referenced types
|
|
142
151
|
*/
|
|
143
|
-
function generateImports(classes, classToFileMap, currentFilePath, currentClassNames) {
|
|
152
|
+
function generateImports(classes, classToFileMap, currentFilePath, currentClassNames, namingConvension) {
|
|
144
153
|
const imports = new Map(); // filePath -> Set of class names
|
|
145
154
|
for (const cls of classes) {
|
|
146
155
|
// Skip enums as they don't have properties
|
|
@@ -178,7 +187,7 @@ function generateImports(classes, classToFileMap, currentFilePath, currentClassN
|
|
|
178
187
|
// Generate import statements
|
|
179
188
|
const importStatements = [];
|
|
180
189
|
for (const [filePath, classNames] of imports.entries()) {
|
|
181
|
-
const relativePath = getRelativeImportPath(currentFilePath, filePath);
|
|
190
|
+
const relativePath = getRelativeImportPath(currentFilePath, filePath, namingConvension);
|
|
182
191
|
const sortedNames = Array.from(classNames).sort();
|
|
183
192
|
importStatements.push(`import type { ${sortedNames.join(', ')} } from '${relativePath}';`);
|
|
184
193
|
}
|
|
@@ -187,7 +196,7 @@ function generateImports(classes, classToFileMap, currentFilePath, currentClassN
|
|
|
187
196
|
/**
|
|
188
197
|
* Get relative import path from one file to another
|
|
189
198
|
*/
|
|
190
|
-
function getRelativeImportPath(fromFile, toFile) {
|
|
199
|
+
function getRelativeImportPath(fromFile, toFile, namingConvension) {
|
|
191
200
|
const fromDir = path.dirname(fromFile);
|
|
192
201
|
let relativePath = path.relative(fromDir, toFile);
|
|
193
202
|
// Remove .ts extension
|
|
@@ -196,6 +205,8 @@ function getRelativeImportPath(fromFile, toFile) {
|
|
|
196
205
|
if (!relativePath.startsWith('.')) {
|
|
197
206
|
relativePath = './' + relativePath;
|
|
198
207
|
}
|
|
208
|
+
// Convert dir naming
|
|
209
|
+
relativePath = convertDirName(relativePath, namingConvension);
|
|
199
210
|
// Convert Windows backslashes to forward slashes
|
|
200
211
|
relativePath = relativePath.replace(/\\/g, '/');
|
|
201
212
|
return relativePath;
|
|
@@ -210,11 +221,11 @@ function isPrimitiveType(type) {
|
|
|
210
221
|
/**
|
|
211
222
|
* Generate TypeScript interface or enum from C# class
|
|
212
223
|
*/
|
|
213
|
-
function generateTypeScriptClass(cls
|
|
224
|
+
function generateTypeScriptClass(cls) {
|
|
214
225
|
if (cls.isEnum) {
|
|
215
226
|
return generateEnum(cls);
|
|
216
227
|
}
|
|
217
|
-
return generateInterface(cls
|
|
228
|
+
return generateInterface(cls);
|
|
218
229
|
}
|
|
219
230
|
/**
|
|
220
231
|
* Generate TypeScript enum
|
|
@@ -229,9 +240,9 @@ function generateEnum(cls) {
|
|
|
229
240
|
/**
|
|
230
241
|
* Generate TypeScript interface
|
|
231
242
|
*/
|
|
232
|
-
function generateInterface(cls
|
|
243
|
+
function generateInterface(cls) {
|
|
233
244
|
const properties = cls.properties
|
|
234
|
-
.map(prop => generateProperty(prop
|
|
245
|
+
.map(prop => generateProperty(prop))
|
|
235
246
|
.join('\n');
|
|
236
247
|
// Build generic parameters for the interface
|
|
237
248
|
const genericParams = cls.genericParameters && cls.genericParameters.length > 0
|
|
@@ -250,8 +261,8 @@ function generateInterface(cls, config) {
|
|
|
250
261
|
/**
|
|
251
262
|
* Generate a single property
|
|
252
263
|
*/
|
|
253
|
-
function generateProperty(prop
|
|
254
|
-
const propertyName = convertPropertyName(prop.name
|
|
264
|
+
function generateProperty(prop) {
|
|
265
|
+
const propertyName = convertPropertyName(prop.name);
|
|
255
266
|
let type = prop.type;
|
|
256
267
|
// Handle arrays: append [] only when prop.isArray is true and the type does not already look like a Record or an array
|
|
257
268
|
const alreadyArrayLike = /\[\]$/.test(type);
|
|
@@ -268,37 +279,51 @@ function generateProperty(prop, convention) {
|
|
|
268
279
|
/**
|
|
269
280
|
* Convert property name to specified convention
|
|
270
281
|
*/
|
|
271
|
-
function convertPropertyName(name
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
}
|
|
282
|
+
function convertPropertyName(name) {
|
|
283
|
+
return toCamelCase(name);
|
|
284
|
+
// switch (convention) {
|
|
285
|
+
// case 'camel':
|
|
286
|
+
// return toCamelCase(name);
|
|
287
|
+
// case 'pascal':
|
|
288
|
+
// return toPascalCase(name);
|
|
289
|
+
// case 'snake':
|
|
290
|
+
// return toSnakeCase(name);
|
|
291
|
+
// default:
|
|
292
|
+
// return name;
|
|
293
|
+
// }
|
|
284
294
|
}
|
|
285
295
|
/**
|
|
286
296
|
* Convert file name to specified convention
|
|
287
297
|
*/
|
|
288
298
|
function convertFileName(name, convention) {
|
|
289
299
|
switch (convention) {
|
|
290
|
-
case 'kebab':
|
|
291
|
-
return toKebabCase(name);
|
|
292
|
-
case 'snake':
|
|
293
|
-
return toSnakeCase(name);
|
|
294
300
|
case 'camel':
|
|
295
301
|
return toCamelCase(name);
|
|
302
|
+
case 'kebab':
|
|
303
|
+
return toKebabCase(name);
|
|
296
304
|
case 'pascal':
|
|
297
305
|
return toPascalCase(name);
|
|
306
|
+
case 'snake':
|
|
307
|
+
return toSnakeCase(name);
|
|
298
308
|
default:
|
|
299
309
|
return name;
|
|
300
310
|
}
|
|
301
311
|
}
|
|
312
|
+
const convertDirName = (dir, convension) => {
|
|
313
|
+
try {
|
|
314
|
+
const splitter = path.sep;
|
|
315
|
+
const segments = dir.split(splitter);
|
|
316
|
+
const formatted = segments.map((segment) => {
|
|
317
|
+
return convertFileName(segment, convension);
|
|
318
|
+
});
|
|
319
|
+
const joined = formatted.join(splitter);
|
|
320
|
+
return joined;
|
|
321
|
+
}
|
|
322
|
+
catch (error) {
|
|
323
|
+
console.error('Error converting dir name', error);
|
|
324
|
+
throw error;
|
|
325
|
+
}
|
|
326
|
+
};
|
|
302
327
|
/**
|
|
303
328
|
* Convert string to camelCase
|
|
304
329
|
*/
|
|
@@ -319,18 +344,16 @@ function toPascalCase(str) {
|
|
|
319
344
|
*/
|
|
320
345
|
function toSnakeCase(str) {
|
|
321
346
|
return str
|
|
322
|
-
.replace(/([A-Z])/g, '
|
|
323
|
-
.toLowerCase()
|
|
324
|
-
.replace(/^_/, '');
|
|
347
|
+
.replace(/([a-z])([A-Z])/g, '$1_$2')
|
|
348
|
+
.toLowerCase();
|
|
325
349
|
}
|
|
326
350
|
/**
|
|
327
351
|
* Convert string to kebab-case
|
|
328
352
|
*/
|
|
329
353
|
function toKebabCase(str) {
|
|
330
354
|
return str
|
|
331
|
-
.replace(/([A-Z])/g, '-$
|
|
332
|
-
.toLowerCase()
|
|
333
|
-
.replace(/^-/, '');
|
|
355
|
+
.replace(/([a-z])([A-Z])/g, '$1-$2')
|
|
356
|
+
.toLowerCase();
|
|
334
357
|
}
|
|
335
358
|
/**
|
|
336
359
|
* Generate file header comment
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/generator/index.ts"],"names":[],"mappings":"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"}
|
package/dist/parser/index.js
CHANGED
|
@@ -75,7 +75,8 @@ function parseClassesFromFile(content, targetAnnotation) {
|
|
|
75
75
|
// Remove comments
|
|
76
76
|
const cleanContent = removeComments(content);
|
|
77
77
|
// Find all classes/enums with the target annotation
|
|
78
|
-
const annotationRegex = new RegExp(`\\[${targetAnnotation}
|
|
78
|
+
const annotationRegex = new RegExp(`\\[${targetAnnotation}(Attribute)?\\]`, // support 'Attribute; suffix
|
|
79
|
+
'g');
|
|
79
80
|
const matches = [...cleanContent.matchAll(annotationRegex)];
|
|
80
81
|
for (const match of matches) {
|
|
81
82
|
const startIndex = match.index;
|
|
@@ -165,26 +166,31 @@ function extractClassBody(content) {
|
|
|
165
166
|
*/
|
|
166
167
|
function parseProperties(classBody) {
|
|
167
168
|
const properties = [];
|
|
169
|
+
let match;
|
|
168
170
|
// Match property declarations with get/set
|
|
169
171
|
const propertyRegex = /public\s+([\w<>[\]?]+)\s+(\w+)\s*\{\s*get;\s*set;\s*\}/g;
|
|
170
|
-
let match;
|
|
171
172
|
while ((match = propertyRegex.exec(classBody)) !== null) {
|
|
172
173
|
const type = match[1];
|
|
173
174
|
const name = match[2];
|
|
174
175
|
properties.push(parsePropertyType(name, type));
|
|
175
176
|
}
|
|
176
177
|
// Also match computed/expression-bodied properties (with =>)
|
|
177
|
-
// These are read-only, so we'll skip them for now since they don't have set;
|
|
178
|
-
// If you want to include them, uncomment below:
|
|
179
|
-
/*
|
|
180
178
|
const computedPropertyRegex = /public\s+([\w<>[\]?]+)\s+(\w+)\s*=>/g;
|
|
181
179
|
while ((match = computedPropertyRegex.exec(classBody)) !== null) {
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
180
|
+
const type = match[1];
|
|
181
|
+
const name = match[2];
|
|
182
|
+
properties.push(parsePropertyType(name, type));
|
|
183
|
+
}
|
|
184
|
+
// { get { return ...; } }
|
|
185
|
+
const getBlockRegex = /public\s+([\w<>[\]?]+)\s+(\w+)\s*\{\s*get\s*\{[^}]*\}\s*\}/g;
|
|
186
|
+
while ((match = getBlockRegex.exec(classBody)) !== null) {
|
|
187
|
+
properties.push(parsePropertyType(match[2], match[1]));
|
|
186
188
|
}
|
|
187
|
-
|
|
189
|
+
// { get; set; } and { get; init; }
|
|
190
|
+
// const autoPropertyRegex = /public\s+([\w<>[\]?]+)\s+(\w+)\s*\{\s*get;\s*(?:set|init);\s*\}/g;
|
|
191
|
+
// while ((match = autoPropertyRegex.exec(classBody)) !== null) {
|
|
192
|
+
// properties.push(parsePropertyType(match[2]!, match[1]!));
|
|
193
|
+
// }
|
|
188
194
|
return properties;
|
|
189
195
|
}
|
|
190
196
|
/**
|
|
@@ -312,18 +318,26 @@ function parsePropertyType(name, csType) {
|
|
|
312
318
|
*/
|
|
313
319
|
function mapCSharpTypeToTypeScript(csType) {
|
|
314
320
|
const typeMap = {
|
|
315
|
-
'string': 'string',
|
|
316
|
-
'int': 'number',
|
|
317
|
-
'long': 'number',
|
|
318
|
-
'double': 'number',
|
|
319
|
-
'float': 'number',
|
|
320
|
-
'decimal': 'number',
|
|
321
321
|
'bool': 'boolean',
|
|
322
|
-
'
|
|
322
|
+
'byte': 'number',
|
|
323
|
+
'byte[]': 'Blob',
|
|
324
|
+
'decimal': 'number',
|
|
325
|
+
'double': 'number',
|
|
323
326
|
'DateOnly': 'string',
|
|
324
|
-
'
|
|
327
|
+
'DateTime': 'string',
|
|
328
|
+
'float': 'number',
|
|
329
|
+
'FileStream': 'Blob',
|
|
330
|
+
'FormFile': 'File',
|
|
325
331
|
'Guid': 'string',
|
|
326
|
-
'
|
|
332
|
+
'int': 'number',
|
|
333
|
+
'IFormFile': 'File',
|
|
334
|
+
'IFormFileCollection': 'File[]',
|
|
335
|
+
'long': 'number',
|
|
336
|
+
'MemoryStream': 'Blob',
|
|
337
|
+
'object': 'any',
|
|
338
|
+
'string': 'string',
|
|
339
|
+
'Stream': 'Blob',
|
|
340
|
+
'TimeOnly': 'string',
|
|
327
341
|
};
|
|
328
342
|
return typeMap[csType] || csType;
|
|
329
343
|
}
|
package/dist/parser/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,4CAiCC;AA9CD,uCAAyB;AACzB,2CAA6B;AAC7B,+BAA4B;AAQ5B;;GAEG;AACI,KAAK,UAAU,gBAAgB,CAAC,MAAuB;IAC5D,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,IAAI,WAAW,CAAC;IAEhE,uDAAuD;IACvD,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;QACrD,CAAC,CAAC,MAAM,CAAC,YAAY;QACrB,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAE1B,MAAM,UAAU,GAAkB,EAAE,CAAC;IAErC,uBAAuB;IACvB,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE7C,MAAM,OAAO,GAAG,MAAM,IAAA,WAAI,EAAC,SAAS,EAAE;YACpC,GAAG,EAAE,UAAU;YACf,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,oBAAoB,CAAC;SACzD,CAAC,CAAC;QAEH,KAAK,MAAM,QAAQ,IAAI,OAAO,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnD,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;YAEhE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,4DAA4D;gBAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;gBACzD,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAQD;;GAEG;AACH,SAAS,oBAAoB,CAAC,OAAe,EAAE,gBAAwB;IACrE,MAAM,OAAO,GAAkB,EAAE,CAAC;IAElC,kBAAkB;IAClB,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAE7C,oDAAoD;IACpD,MAAM,eAAe,GAAG,IAAI,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/parser/index.ts"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { NamingConvention } from "./typesharp-config";
|
|
1
|
+
import { NamingConvention, NamingConventionConfig } from "./typesharp-config";
|
|
2
2
|
import { TypeSharpConfig } from "./typesharp-config";
|
|
3
3
|
/**
|
|
4
4
|
* Parsed C# property
|
|
@@ -40,4 +40,5 @@ export interface GenerationOptions {
|
|
|
40
40
|
}
|
|
41
41
|
export type { TypeSharpConfig };
|
|
42
42
|
export type { NamingConvention };
|
|
43
|
+
export type { NamingConventionConfig };
|
|
43
44
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,WAAW,EAAE,CAAC;CACxB;AAGD,YAAY,EAAE,eAAe,EAAE,CAAA;AAC/B,YAAY,EAAE,gBAAgB,EAAE,CAAA;AAChC,YAAY,EAAE,sBAAsB,EAAE,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* TypeSharp configuration
|
|
3
|
+
* @see https://github.com/siyavuyachagi/typesharp
|
|
3
4
|
*/
|
|
4
5
|
export interface TypeSharpConfig {
|
|
5
6
|
/**
|
|
@@ -28,23 +29,26 @@ export interface TypeSharpConfig {
|
|
|
28
29
|
* Controls whether generated types are written to one file or multiple files.
|
|
29
30
|
*
|
|
30
31
|
* - true β All generated types go into a single file: "index.ts"
|
|
31
|
-
* - false β Each
|
|
32
|
+
* - false β Each file is written separately, using the naming convention.
|
|
32
33
|
* The original folder structure is preserved in the output.
|
|
33
34
|
*/
|
|
34
35
|
singleOutputFile?: boolean;
|
|
35
|
-
/**
|
|
36
|
-
* Naming convention for generated file names
|
|
37
|
-
*/
|
|
38
|
-
fileNamingConvention?: NamingConvention;
|
|
39
36
|
/**
|
|
40
37
|
* Naming convention for property names in generated types
|
|
38
|
+
* @example
|
|
39
|
+
* "namingConvention": "camel",
|
|
40
|
+
* // or
|
|
41
|
+
* "namingConvention": {
|
|
42
|
+
* dir: 'kebab',
|
|
43
|
+
* file: 'camel',
|
|
44
|
+
* }
|
|
41
45
|
*/
|
|
42
|
-
namingConvention?: NamingConvention;
|
|
46
|
+
namingConvention?: NamingConvention | NamingConventionConfig;
|
|
43
47
|
/**
|
|
44
48
|
* Suffix appended to generated TypeScript type names.
|
|
45
49
|
* The suffix is formatted based on the selected naming convention.
|
|
46
50
|
* ```
|
|
47
|
-
* Examples (suffix = "
|
|
51
|
+
* Examples (suffix = "dto"):
|
|
48
52
|
* camel : User -> userDto
|
|
49
53
|
* pascal: User -> UserDto
|
|
50
54
|
* snake : User -> user_dto
|
|
@@ -54,7 +58,14 @@ export interface TypeSharpConfig {
|
|
|
54
58
|
fileSuffix?: string;
|
|
55
59
|
}
|
|
56
60
|
/**
|
|
57
|
-
* Naming convention options for file and property names
|
|
61
|
+
* Naming convention options for path, file and property names
|
|
58
62
|
*/
|
|
59
63
|
export type NamingConvention = 'kebab' | 'snake' | 'camel' | 'pascal';
|
|
64
|
+
/**
|
|
65
|
+
* More specific naming convension configuration
|
|
66
|
+
*/
|
|
67
|
+
export type NamingConventionConfig = {
|
|
68
|
+
file: NamingConvention;
|
|
69
|
+
dir: NamingConvention;
|
|
70
|
+
};
|
|
60
71
|
//# sourceMappingURL=typesharp-config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typesharp-config.d.ts","sourceRoot":"","sources":["../../src/types/typesharp-config.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"typesharp-config.d.ts","sourceRoot":"","sources":["../../src/types/typesharp-config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,eAAe;IAE5B;;;;;;;;;;;;OAYG;IACH,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAEhC;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAO3B;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,GAAG,sBAAsB,CAAC;IAE7D;;;;;;;;;;OAUG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAID;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,OAAO,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEtE;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACjC,IAAI,EAAE,gBAAgB,CAAC;IACvB,GAAG,EAAE,gBAAgB,CAAC;CACzB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@siyavuyachagi/typesharp",
|
|
3
3
|
"description": "Generate TypeScript types from C# models with TypeSharp attribute",
|
|
4
|
-
"version": "0.1.
|
|
4
|
+
"version": "0.1.1",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Siyavuya Chagi <syavuya08@gmail.com>",
|
|
7
7
|
"repository": {
|
|
@@ -16,6 +16,7 @@
|
|
|
16
16
|
},
|
|
17
17
|
"type": "commonjs",
|
|
18
18
|
"files": [
|
|
19
|
+
"bin",
|
|
19
20
|
"dist",
|
|
20
21
|
"README.md",
|
|
21
22
|
"LICENSE"
|