@alloy-js/csharp 0.20.0-dev.2 → 0.20.0-dev.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/src/components/Declaration.d.ts +2 -2
- package/dist/src/components/Declaration.d.ts.map +1 -1
- package/dist/src/components/Declaration.js +3 -13
- package/dist/src/components/Reference.d.ts.map +1 -1
- package/dist/src/components/Reference.js +5 -1
- package/dist/src/components/SourceFile.d.ts +8 -9
- package/dist/src/components/SourceFile.d.ts.map +1 -1
- package/dist/src/components/SourceFile.js +69 -45
- package/dist/src/components/UsingDirective.d.ts +5 -1
- package/dist/src/components/UsingDirective.d.ts.map +1 -1
- package/dist/src/components/UsingDirective.js +3 -1
- package/dist/src/components/class/declaration.d.ts +2 -2
- package/dist/src/components/class/declaration.d.ts.map +1 -1
- package/dist/src/components/class/declaration.js +19 -33
- package/dist/src/components/class/declaration.test.js +192 -193
- package/dist/src/components/constructor/constructor.d.ts.map +1 -1
- package/dist/src/components/constructor/constructor.js +11 -19
- package/dist/src/components/constructor/constructor.test.js +10 -19
- package/dist/src/components/{EnumDeclaration.d.ts → enum/declaration.d.ts} +6 -11
- package/dist/src/components/enum/declaration.d.ts.map +1 -0
- package/dist/src/components/enum/declaration.js +54 -0
- package/dist/src/components/enum/declaration.ref.test.d.ts +2 -0
- package/dist/src/components/enum/declaration.ref.test.d.ts.map +1 -0
- package/dist/src/components/enum/declaration.ref.test.js +120 -0
- package/dist/src/components/enum/declaration.test.d.ts +2 -0
- package/dist/src/components/enum/declaration.test.d.ts.map +1 -0
- package/dist/src/components/enum/declaration.test.js +39 -0
- package/dist/src/components/enum/member.d.ts +7 -0
- package/dist/src/components/enum/member.d.ts.map +1 -0
- package/dist/src/components/enum/member.js +29 -0
- package/dist/src/components/enum/member.test.d.ts +2 -0
- package/dist/src/components/enum/member.test.d.ts.map +1 -0
- package/dist/src/components/enum/member.test.js +28 -0
- package/dist/src/components/field/field.d.ts.map +1 -1
- package/dist/src/components/field/field.js +9 -17
- package/dist/src/components/field/field.test.js +7 -7
- package/dist/src/components/index.d.ts +5 -2
- package/dist/src/components/index.d.ts.map +1 -1
- package/dist/src/components/index.js +5 -2
- package/dist/src/components/interface/declaration.d.ts.map +1 -1
- package/dist/src/components/interface/declaration.js +19 -21
- package/dist/src/components/interface/declaration.test.js +26 -35
- package/dist/src/components/interface/method.d.ts.map +1 -1
- package/dist/src/components/interface/method.js +7 -18
- package/dist/src/components/interface/method.test.js +38 -47
- package/dist/src/components/interface/property.d.ts.map +1 -1
- package/dist/src/components/interface/property.js +21 -39
- package/dist/src/components/interface/property.test.js +11 -11
- package/dist/src/components/lexical-scope.d.ts +8 -0
- package/dist/src/components/lexical-scope.d.ts.map +1 -0
- package/dist/src/components/lexical-scope.js +24 -0
- package/dist/src/components/method/method.d.ts +5 -2
- package/dist/src/components/method/method.d.ts.map +1 -1
- package/dist/src/components/method/method.js +7 -16
- package/dist/src/components/method/method.test.js +11 -11
- package/dist/src/components/method-scope.d.ts +8 -0
- package/dist/src/components/method-scope.d.ts.map +1 -0
- package/dist/src/components/method-scope.js +24 -0
- package/dist/src/components/namespace-scopes.d.ts +13 -0
- package/dist/src/components/namespace-scopes.d.ts.map +1 -0
- package/dist/src/components/namespace-scopes.js +44 -0
- package/dist/src/components/namespace.d.ts +7 -0
- package/dist/src/components/namespace.d.ts.map +1 -0
- package/dist/src/components/namespace.js +46 -0
- package/dist/src/components/namespace.ref.test.d.ts +2 -0
- package/dist/src/components/namespace.ref.test.d.ts.map +1 -0
- package/dist/src/components/namespace.ref.test.js +181 -0
- package/dist/src/components/namespace.test.d.ts.map +1 -0
- package/dist/src/components/namespace.test.js +78 -0
- package/dist/src/components/parameters/parameters.d.ts +2 -2
- package/dist/src/components/parameters/parameters.d.ts.map +1 -1
- package/dist/src/components/parameters/parameters.js +12 -14
- package/dist/src/components/parameters/parameters.test.d.ts +2 -0
- package/dist/src/components/parameters/parameters.test.d.ts.map +1 -0
- package/dist/src/components/parameters/parameters.test.js +87 -0
- package/dist/src/components/property/property.d.ts.map +1 -1
- package/dist/src/components/property/property.js +21 -39
- package/dist/src/components/property/property.test.js +14 -14
- package/dist/src/components/record/declaration.d.ts +18 -0
- package/dist/src/components/record/declaration.d.ts.map +1 -1
- package/dist/src/components/record/declaration.js +19 -13
- package/dist/src/components/record/declaration.test.js +50 -3
- package/dist/src/components/struct/declaration.d.ts.map +1 -1
- package/dist/src/components/struct/declaration.js +4 -6
- package/dist/src/components/struct/declaration.test.js +30 -39
- package/dist/src/components/type-parameters/type-parameter.d.ts.map +1 -1
- package/dist/src/components/type-parameters/type-parameter.js +7 -10
- package/dist/src/components/type-parameters/type-parameters.test.js +3 -3
- package/dist/src/components/var/declaration.d.ts.map +1 -1
- package/dist/src/components/var/declaration.js +6 -8
- package/dist/src/components/var/declaration.test.js +11 -20
- package/dist/src/contexts/global-namespace.d.ts +5 -0
- package/dist/src/contexts/global-namespace.d.ts.map +1 -0
- package/dist/src/contexts/global-namespace.js +24 -0
- package/dist/src/contexts/namespace.d.ts +8 -0
- package/dist/src/contexts/namespace.d.ts.map +1 -0
- package/dist/src/contexts/namespace.js +5 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +1 -0
- package/dist/src/modifiers.d.ts +11 -0
- package/dist/src/modifiers.d.ts.map +1 -1
- package/dist/src/scopes/class.d.ts +10 -0
- package/dist/src/scopes/class.d.ts.map +1 -0
- package/dist/src/scopes/class.js +10 -0
- package/dist/src/scopes/contexts.d.ts +9 -0
- package/dist/src/scopes/contexts.d.ts.map +1 -0
- package/dist/src/scopes/contexts.js +33 -0
- package/dist/src/scopes/csharp.d.ts +8 -0
- package/dist/src/scopes/csharp.d.ts.map +1 -0
- package/dist/src/scopes/csharp.js +11 -0
- package/dist/src/scopes/factories.d.ts +9 -0
- package/dist/src/scopes/factories.d.ts.map +1 -0
- package/dist/src/scopes/factories.js +23 -0
- package/dist/src/scopes/index.d.ts +10 -0
- package/dist/src/scopes/index.d.ts.map +1 -0
- package/dist/src/scopes/index.js +9 -0
- package/dist/src/scopes/lexical.d.ts +7 -0
- package/dist/src/scopes/lexical.d.ts.map +1 -0
- package/dist/src/scopes/lexical.js +7 -0
- package/dist/src/scopes/method.d.ts +9 -0
- package/dist/src/scopes/method.d.ts.map +1 -0
- package/dist/src/scopes/method.js +13 -0
- package/dist/src/scopes/named-type.d.ts +22 -0
- package/dist/src/scopes/named-type.d.ts.map +1 -0
- package/dist/src/scopes/named-type.js +32 -0
- package/dist/src/scopes/namespace.d.ts +11 -0
- package/dist/src/scopes/namespace.d.ts.map +1 -0
- package/dist/src/scopes/namespace.js +38 -0
- package/dist/src/scopes/source-file.d.ts +16 -0
- package/dist/src/scopes/source-file.d.ts.map +1 -0
- package/dist/src/scopes/source-file.js +43 -0
- package/dist/src/symbols/csharp.d.ts +76 -0
- package/dist/src/symbols/csharp.d.ts.map +1 -0
- package/dist/src/symbols/csharp.js +222 -0
- package/dist/src/symbols/factories.d.ts +25 -0
- package/dist/src/symbols/factories.d.ts.map +1 -0
- package/dist/src/symbols/factories.js +86 -0
- package/dist/src/symbols/index.d.ts +5 -2
- package/dist/src/symbols/index.d.ts.map +1 -1
- package/dist/src/symbols/index.js +6 -3
- package/dist/src/symbols/method.d.ts +13 -0
- package/dist/src/symbols/method.d.ts.map +1 -0
- package/dist/src/symbols/method.js +15 -0
- package/dist/src/symbols/named-type.d.ts +19 -0
- package/dist/src/symbols/named-type.d.ts.map +1 -0
- package/dist/src/symbols/named-type.js +30 -0
- package/dist/src/symbols/namespace.d.ts +22 -0
- package/dist/src/symbols/namespace.d.ts.map +1 -0
- package/dist/src/symbols/namespace.js +44 -0
- package/dist/src/symbols/reference.d.ts +2 -2
- package/dist/src/symbols/reference.d.ts.map +1 -1
- package/dist/src/symbols/reference.js +36 -43
- package/dist/test/project-directory.test.js +12 -16
- package/dist/test/sourcefile.test.js +7 -19
- package/dist/test/using.test.js +18 -16
- package/dist/test/utils.js +2 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -4
- package/src/components/Declaration.tsx +3 -6
- package/src/components/Reference.tsx +3 -1
- package/src/components/SourceFile.tsx +68 -55
- package/src/components/UsingDirective.tsx +12 -2
- package/src/components/class/declaration.test.tsx +138 -143
- package/src/components/class/declaration.tsx +20 -33
- package/src/components/constructor/constructor.test.tsx +10 -16
- package/src/components/constructor/constructor.tsx +13 -32
- package/src/components/enum/declaration.ref.test.tsx +93 -0
- package/src/components/enum/declaration.test.tsx +34 -0
- package/src/components/enum/declaration.tsx +65 -0
- package/src/components/enum/member.test.tsx +24 -0
- package/src/components/enum/member.tsx +36 -0
- package/src/components/field/field.test.tsx +7 -7
- package/src/components/field/field.tsx +12 -22
- package/src/components/index.ts +5 -2
- package/src/components/interface/declaration.test.tsx +26 -32
- package/src/components/interface/declaration.tsx +16 -18
- package/src/components/interface/method.test.tsx +38 -44
- package/src/components/interface/method.tsx +7 -20
- package/src/components/interface/property.test.tsx +11 -11
- package/src/components/interface/property.tsx +15 -34
- package/src/components/lexical-scope.tsx +29 -0
- package/src/components/method/method.test.tsx +11 -11
- package/src/components/method/method.tsx +12 -23
- package/src/components/method-scope.tsx +27 -0
- package/src/components/namespace-scopes.tsx +44 -0
- package/src/components/namespace.ref.test.tsx +139 -0
- package/src/components/namespace.test.tsx +52 -0
- package/src/components/namespace.tsx +45 -0
- package/src/components/parameters/parameters.test.tsx +71 -0
- package/src/components/parameters/parameters.tsx +9 -21
- package/src/components/property/property.test.tsx +14 -14
- package/src/components/property/property.tsx +17 -41
- package/src/components/record/declaration.test.tsx +47 -3
- package/src/components/record/declaration.tsx +34 -11
- package/src/components/struct/declaration.test.tsx +16 -22
- package/src/components/struct/declaration.tsx +4 -6
- package/src/components/type-parameters/type-parameter.tsx +14 -11
- package/src/components/type-parameters/type-parameters.test.tsx +4 -4
- package/src/components/var/declaration.test.tsx +8 -14
- package/src/components/var/declaration.tsx +12 -6
- package/src/contexts/global-namespace.ts +29 -0
- package/src/contexts/namespace.ts +13 -0
- package/src/index.ts +1 -0
- package/src/modifiers.ts +14 -0
- package/src/scopes/class.ts +12 -0
- package/src/scopes/contexts.ts +45 -0
- package/src/scopes/csharp.ts +18 -0
- package/src/scopes/factories.ts +45 -0
- package/src/scopes/index.ts +9 -0
- package/src/scopes/lexical.ts +10 -0
- package/src/scopes/method.ts +22 -0
- package/src/scopes/named-type.ts +44 -0
- package/src/scopes/namespace.ts +59 -0
- package/src/scopes/source-file.ts +67 -0
- package/src/symbols/csharp.ts +307 -0
- package/src/symbols/factories.ts +199 -0
- package/src/symbols/index.ts +5 -2
- package/src/symbols/method.ts +26 -0
- package/src/symbols/named-type.ts +54 -0
- package/src/symbols/namespace.ts +62 -0
- package/src/symbols/reference.ts +47 -50
- package/temp/api.json +6152 -2151
- package/test/project-directory.test.tsx +12 -16
- package/test/sourcefile.test.tsx +7 -21
- package/test/using.test.tsx +18 -16
- package/test/utils.tsx +1 -1
- package/tsdoc-metadata.json +1 -1
- package/dist/src/components/EnumDeclaration.d.ts.map +0 -1
- package/dist/src/components/EnumDeclaration.js +0 -85
- package/dist/src/components/Namespace.d.ts +0 -11
- package/dist/src/components/Namespace.d.ts.map +0 -1
- package/dist/src/components/Namespace.js +0 -33
- package/dist/src/symbols/csharp-output-symbol.d.ts +0 -8
- package/dist/src/symbols/csharp-output-symbol.d.ts.map +0 -1
- package/dist/src/symbols/csharp-output-symbol.js +0 -19
- package/dist/src/symbols/scopes.d.ts +0 -14
- package/dist/src/symbols/scopes.d.ts.map +0 -1
- package/dist/src/symbols/scopes.js +0 -31
- package/dist/test/enum.test.d.ts +0 -2
- package/dist/test/enum.test.d.ts.map +0 -1
- package/dist/test/enum.test.js +0 -178
- package/dist/test/namespace.test.d.ts.map +0 -1
- package/dist/test/namespace.test.js +0 -81
- package/src/components/EnumDeclaration.tsx +0 -99
- package/src/components/Namespace.tsx +0 -35
- package/src/symbols/csharp-output-symbol.ts +0 -22
- package/src/symbols/scopes.ts +0 -41
- package/test/enum.test.tsx +0 -149
- package/test/namespace.test.tsx +0 -55
- /package/dist/{test → src/components}/namespace.test.d.ts +0 -0
|
@@ -53,17 +53,15 @@ it("defines a project directory file with multiple source files", () => {
|
|
|
53
53
|
const srcDir = projDir.contents[1];
|
|
54
54
|
expect(srcDir.contents[0].path).equals("~/projects/TestProject/src/Test1.cs");
|
|
55
55
|
expect(srcDir.contents[0].contents).toBe(coretest.d`
|
|
56
|
-
namespace TestCode
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
}
|
|
56
|
+
namespace TestCode;
|
|
57
|
+
|
|
58
|
+
public class TestClass1;
|
|
60
59
|
`);
|
|
61
60
|
expect(srcDir.contents[1].path).equals("~/projects/TestProject/src/Test2.cs");
|
|
62
61
|
expect(srcDir.contents[1].contents).toBe(coretest.d`
|
|
63
|
-
namespace TestCode
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}
|
|
62
|
+
namespace TestCode;
|
|
63
|
+
|
|
64
|
+
public class TestClass2;
|
|
67
65
|
`);
|
|
68
66
|
});
|
|
69
67
|
it("defines a project directory file with multiple source files and a custom TFM", () => {
|
|
@@ -117,16 +115,14 @@ it("defines a project directory file with multiple source files and a custom TFM
|
|
|
117
115
|
const srcDir = projDir.contents[1];
|
|
118
116
|
expect(srcDir.contents[0].path).equals("~/projects/TestProject/src/Test1.cs");
|
|
119
117
|
expect(srcDir.contents[0].contents).toBe(coretest.d`
|
|
120
|
-
namespace TestCode
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
}
|
|
118
|
+
namespace TestCode;
|
|
119
|
+
|
|
120
|
+
public class TestClass1;
|
|
124
121
|
`);
|
|
125
122
|
expect(srcDir.contents[1].path).equals("~/projects/TestProject/src/Test2.cs");
|
|
126
123
|
expect(srcDir.contents[1].contents).toBe(coretest.d`
|
|
127
|
-
namespace TestCode
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
}
|
|
124
|
+
namespace TestCode;
|
|
125
|
+
|
|
126
|
+
public class TestClass2;
|
|
131
127
|
`);
|
|
132
128
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
|
|
2
2
|
import * as core from "@alloy-js/core";
|
|
3
3
|
import * as coretest from "@alloy-js/core/testing";
|
|
4
|
-
import {
|
|
4
|
+
import { it } from "vitest";
|
|
5
5
|
import * as csharp from "../src/index.js";
|
|
6
6
|
import { assertFileContents } from "./utils.js";
|
|
7
7
|
it("defines multiple source files with unique content", () => {
|
|
@@ -33,26 +33,14 @@ it("defines multiple source files with unique content", () => {
|
|
|
33
33
|
}));
|
|
34
34
|
assertFileContents(res, {
|
|
35
35
|
"Test1.cs": coretest.d`
|
|
36
|
-
namespace TestCode
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
}
|
|
36
|
+
namespace TestCode;
|
|
37
|
+
|
|
38
|
+
public class TestClass1;
|
|
40
39
|
`,
|
|
41
40
|
"Test2.cs": coretest.d`
|
|
42
|
-
namespace TestCode
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
41
|
+
namespace TestCode;
|
|
42
|
+
|
|
43
|
+
public class TestClass2;
|
|
46
44
|
`
|
|
47
45
|
});
|
|
48
|
-
});
|
|
49
|
-
it("throws when declaring a source file outside a namespace", () => {
|
|
50
|
-
const decl = _$createComponent(core.Output, {
|
|
51
|
-
get children() {
|
|
52
|
-
return _$createComponent(csharp.SourceFile, {
|
|
53
|
-
path: "Test.cs"
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
});
|
|
57
|
-
expect(() => core.render(decl)).toThrow("SourceFile must be declared inside a namespace");
|
|
58
46
|
});
|
package/dist/test/using.test.js
CHANGED
|
@@ -21,7 +21,9 @@ it("uses a single namespace", () => {
|
|
|
21
21
|
expect(findFile(res, "Test1.cs").contents).toBe(coretest.d`
|
|
22
22
|
using Foo;
|
|
23
23
|
|
|
24
|
-
namespace TestCode
|
|
24
|
+
namespace TestCode;
|
|
25
|
+
|
|
26
|
+
|
|
25
27
|
`);
|
|
26
28
|
});
|
|
27
29
|
it("uses multiple namespaces", () => {
|
|
@@ -42,7 +44,9 @@ it("uses multiple namespaces", () => {
|
|
|
42
44
|
using Bar.Baz;
|
|
43
45
|
using Foo;
|
|
44
46
|
|
|
45
|
-
namespace TestCode
|
|
47
|
+
namespace TestCode;
|
|
48
|
+
|
|
49
|
+
|
|
46
50
|
`);
|
|
47
51
|
});
|
|
48
52
|
it("adds using statement across namespaces", () => {
|
|
@@ -114,29 +118,27 @@ it("adds using statement across namespaces", () => {
|
|
|
114
118
|
}));
|
|
115
119
|
assertFileContents(res, {
|
|
116
120
|
"Models.cs": coretest.d`
|
|
117
|
-
namespace Models
|
|
121
|
+
namespace Models;
|
|
122
|
+
|
|
123
|
+
public class Input;
|
|
124
|
+
public class Output;
|
|
125
|
+
public enum TestEnum
|
|
118
126
|
{
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
public enum TestEnum
|
|
122
|
-
{
|
|
123
|
-
One,
|
|
124
|
-
Two
|
|
125
|
-
}
|
|
127
|
+
One,
|
|
128
|
+
Two
|
|
126
129
|
}
|
|
127
130
|
`,
|
|
128
131
|
"Client.cs": coretest.d`
|
|
129
132
|
using Models;
|
|
130
133
|
using System;
|
|
131
134
|
|
|
132
|
-
namespace Client
|
|
135
|
+
namespace Client;
|
|
136
|
+
|
|
137
|
+
public class Client
|
|
133
138
|
{
|
|
134
|
-
public
|
|
135
|
-
{
|
|
136
|
-
public Output MethodOne(Input bodyParam) {}
|
|
137
|
-
}
|
|
138
|
-
TestEnum.Two;
|
|
139
|
+
public Output MethodOne(Input bodyParam) {}
|
|
139
140
|
}
|
|
141
|
+
TestEnum.Two;
|
|
140
142
|
`
|
|
141
143
|
});
|
|
142
144
|
});
|
package/dist/test/utils.js
CHANGED
|
@@ -9,8 +9,8 @@ export function TestNamespace(props) {
|
|
|
9
9
|
return csharp.createCSharpNamePolicy();
|
|
10
10
|
},
|
|
11
11
|
get children() {
|
|
12
|
-
return _$createComponent(csharp.
|
|
13
|
-
|
|
12
|
+
return _$createComponent(csharp.SourceFile, {
|
|
13
|
+
path: "Test.cs",
|
|
14
14
|
get children() {
|
|
15
15
|
return props.children;
|
|
16
16
|
}
|