@alloy-js/csharp 0.21.0-dev.19 → 0.21.0-dev.20

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 (34) hide show
  1. package/dist/src/components/csproj-file/csproj-file.d.ts +15 -0
  2. package/dist/src/components/csproj-file/csproj-file.d.ts.map +1 -0
  3. package/dist/src/components/csproj-file/csproj-file.js +24 -0
  4. package/dist/src/components/csproj-file/csproj-file.js.map +1 -0
  5. package/dist/src/components/csproj-file/csproj-file.test.d.ts +2 -0
  6. package/dist/src/components/csproj-file/csproj-file.test.d.ts.map +1 -0
  7. package/dist/src/components/csproj-file/csproj-file.test.js +21 -0
  8. package/dist/src/components/csproj-file/csproj-file.test.js.map +1 -0
  9. package/dist/src/components/index.d.ts +1 -1
  10. package/dist/src/components/index.d.ts.map +1 -1
  11. package/dist/src/components/index.js +1 -1
  12. package/dist/src/components/index.js.map +1 -1
  13. package/dist/src/components/stc/index.d.ts +0 -1
  14. package/dist/src/components/stc/index.d.ts.map +1 -1
  15. package/dist/src/components/stc/index.js +0 -1
  16. package/dist/src/components/stc/index.js.map +1 -1
  17. package/dist/tsconfig.tsbuildinfo +1 -1
  18. package/package.json +2 -1
  19. package/src/components/csproj-file/csproj-file.test.tsx +19 -0
  20. package/src/components/csproj-file/csproj-file.tsx +32 -0
  21. package/src/components/index.ts +1 -1
  22. package/src/components/stc/index.ts +0 -1
  23. package/temp/api.json +176 -291
  24. package/tsdoc.json +4 -0
  25. package/dist/src/components/ProjectDirectory.d.ts +0 -12
  26. package/dist/src/components/ProjectDirectory.d.ts.map +0 -1
  27. package/dist/src/components/ProjectDirectory.js +0 -47
  28. package/dist/src/components/ProjectDirectory.js.map +0 -1
  29. package/dist/test/project-directory.test.d.ts +0 -2
  30. package/dist/test/project-directory.test.d.ts.map +0 -1
  31. package/dist/test/project-directory.test.js +0 -133
  32. package/dist/test/project-directory.test.js.map +0 -1
  33. package/src/components/ProjectDirectory.tsx +0 -56
  34. package/test/project-directory.test.tsx +0 -121
@@ -1,133 +0,0 @@
1
- import { createComponent as _$createComponent } from "@alloy-js/core/jsx-runtime";
2
- import * as core from "@alloy-js/core";
3
- import * as coretest from "@alloy-js/core/testing";
4
- import { expect, it } from "vitest";
5
- import * as csharp from "../src/index.js";
6
- it("defines a project directory file with multiple source files", () => {
7
- const res = core.render(_$createComponent(core.Output, {
8
- get children() {
9
- return _$createComponent(csharp.ProjectDirectory, {
10
- name: "TestProject",
11
- path: "~/projects",
12
- version: "0.1.0",
13
- description: "a test project",
14
- get children() {
15
- return _$createComponent(csharp.Namespace, {
16
- name: "TestCode",
17
- get children() {
18
- return [_$createComponent(csharp.SourceFile, {
19
- path: "Test1.cs",
20
- get children() {
21
- return _$createComponent(csharp.ClassDeclaration, {
22
- "public": true,
23
- name: "TestClass1"
24
- });
25
- }
26
- }), _$createComponent(csharp.SourceFile, {
27
- path: "Test2.cs",
28
- get children() {
29
- return _$createComponent(csharp.ClassDeclaration, {
30
- "public": true,
31
- name: "TestClass2"
32
- });
33
- }
34
- })];
35
- }
36
- });
37
- }
38
- });
39
- }
40
- }), {
41
- insertFinalNewLine: false
42
- });
43
- const projDir = res.contents[0];
44
- expect(projDir.path).equals("~/projects/TestProject");
45
- expect(projDir.contents[0].path).equals("~/projects/TestProject/TestProject.csproj");
46
- expect(projDir.contents[0].contents).toBe(coretest.d`
47
- <Project Sdk="Microsoft.NET.Sdk">
48
- <PropertyGroup>
49
- <Version>0.1.0</Version>
50
- <Description>a test project</Description>
51
- <TargetFramework>net8.0</TargetFramework>
52
- </PropertyGroup>
53
- </Project>
54
- `);
55
- const srcDir = projDir.contents[1];
56
- expect(srcDir.contents[0].path).equals("~/projects/TestProject/src/Test1.cs");
57
- expect(srcDir.contents[0].contents).toBe(coretest.d`
58
- namespace TestCode;
59
-
60
- public class TestClass1;
61
- `);
62
- expect(srcDir.contents[1].path).equals("~/projects/TestProject/src/Test2.cs");
63
- expect(srcDir.contents[1].contents).toBe(coretest.d`
64
- namespace TestCode;
65
-
66
- public class TestClass2;
67
- `);
68
- });
69
- it("defines a project directory file with multiple source files and a custom TFM", () => {
70
- const res = core.render(_$createComponent(core.Output, {
71
- get children() {
72
- return _$createComponent(csharp.ProjectDirectory, {
73
- name: "TestProject",
74
- path: "~/projects",
75
- version: "0.1.0",
76
- description: "a test project",
77
- targetFrameworkMoniker: "netstandard2.1",
78
- get children() {
79
- return _$createComponent(csharp.Namespace, {
80
- name: "TestCode",
81
- get children() {
82
- return [_$createComponent(csharp.SourceFile, {
83
- path: "Test1.cs",
84
- get children() {
85
- return _$createComponent(csharp.ClassDeclaration, {
86
- "public": true,
87
- name: "TestClass1"
88
- });
89
- }
90
- }), _$createComponent(csharp.SourceFile, {
91
- path: "Test2.cs",
92
- get children() {
93
- return _$createComponent(csharp.ClassDeclaration, {
94
- "public": true,
95
- name: "TestClass2"
96
- });
97
- }
98
- })];
99
- }
100
- });
101
- }
102
- });
103
- }
104
- }), {
105
- insertFinalNewLine: false
106
- });
107
- const projDir = res.contents[0];
108
- expect(projDir.path).equals("~/projects/TestProject");
109
- expect(projDir.contents[0].path).equals("~/projects/TestProject/TestProject.csproj");
110
- expect(projDir.contents[0].contents).toBe(coretest.d`
111
- <Project Sdk="Microsoft.NET.Sdk">
112
- <PropertyGroup>
113
- <Version>0.1.0</Version>
114
- <Description>a test project</Description>
115
- <TargetFramework>netstandard2.1</TargetFramework>
116
- </PropertyGroup>
117
- </Project>
118
- `);
119
- const srcDir = projDir.contents[1];
120
- expect(srcDir.contents[0].path).equals("~/projects/TestProject/src/Test1.cs");
121
- expect(srcDir.contents[0].contents).toBe(coretest.d`
122
- namespace TestCode;
123
-
124
- public class TestClass1;
125
- `);
126
- expect(srcDir.contents[1].path).equals("~/projects/TestProject/src/Test2.cs");
127
- expect(srcDir.contents[1].contents).toBe(coretest.d`
128
- namespace TestCode;
129
-
130
- public class TestClass2;
131
- `);
132
- });
133
- //# sourceMappingURL=project-directory.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["core","coretest","expect","it","csharp","res","render","_$createComponent","Output","children","ProjectDirectory","name","path","version","description","Namespace","SourceFile","ClassDeclaration","insertFinalNewLine","projDir","contents","equals","toBe","d","srcDir","targetFrameworkMoniker"],"sources":["../../test/project-directory.test.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,56 +0,0 @@
1
- import * as core from "@alloy-js/core";
2
- import { join } from "pathe";
3
-
4
- // properties for creating the project directory
5
- export interface ProjectDirectoryProps {
6
- // the name of the project directory
7
- name: string;
8
-
9
- // the semver of the project
10
- version: string;
11
-
12
- // project description
13
- description: string;
14
-
15
- // parent path where the project directory will be created
16
- path: string;
17
-
18
- // directory name for source files. defaults to "src"
19
- srcDir?: string;
20
-
21
- // the .NET TFM for this project. defaults to net8.0
22
- targetFrameworkMoniker?: string;
23
-
24
- // child components of the project
25
- children?: core.Children;
26
- }
27
-
28
- // the top-level C# project directory. includes a csproj file
29
- export function ProjectDirectory(props: ProjectDirectoryProps) {
30
- if (!props.srcDir) {
31
- props.srcDir = "src";
32
- }
33
-
34
- if (!props.targetFrameworkMoniker) {
35
- props.targetFrameworkMoniker = "net8.0";
36
- }
37
-
38
- return (
39
- <core.SourceDirectory path={join(props.path, props.name)}>
40
- <core.SourceFile path={props.name + ".csproj"} filetype="xml">
41
- {core.code`
42
- <Project Sdk="Microsoft.NET.Sdk">
43
- <PropertyGroup>
44
- <Version>${props.version}</Version>
45
- <Description>${props.description}</Description>
46
- <TargetFramework>${props.targetFrameworkMoniker}</TargetFramework>
47
- </PropertyGroup>
48
- </Project>
49
- `}
50
- </core.SourceFile>
51
- <core.SourceDirectory path={props.srcDir}>
52
- {props.children}
53
- </core.SourceDirectory>
54
- </core.SourceDirectory>
55
- );
56
- }
@@ -1,121 +0,0 @@
1
- import * as core from "@alloy-js/core";
2
- import * as coretest from "@alloy-js/core/testing";
3
- import { expect, it } from "vitest";
4
- import * as csharp from "../src/index.js";
5
-
6
- it("defines a project directory file with multiple source files", () => {
7
- const res = core.render(
8
- <core.Output>
9
- <csharp.ProjectDirectory
10
- name="TestProject"
11
- path="~/projects"
12
- version="0.1.0"
13
- description="a test project"
14
- >
15
- <csharp.Namespace name="TestCode">
16
- <csharp.SourceFile path="Test1.cs">
17
- <csharp.ClassDeclaration public name="TestClass1" />
18
- </csharp.SourceFile>
19
- <csharp.SourceFile path="Test2.cs">
20
- <csharp.ClassDeclaration public name="TestClass2" />
21
- </csharp.SourceFile>
22
- </csharp.Namespace>
23
- </csharp.ProjectDirectory>
24
- </core.Output>,
25
- { insertFinalNewLine: false },
26
- );
27
-
28
- const projDir = res.contents[0] as core.OutputDirectory;
29
-
30
- expect(projDir.path).equals("~/projects/TestProject");
31
- expect(projDir.contents[0].path).equals(
32
- "~/projects/TestProject/TestProject.csproj",
33
- );
34
- expect((projDir.contents[0] as core.ContentOutputFile).contents)
35
- .toBe(coretest.d`
36
- <Project Sdk="Microsoft.NET.Sdk">
37
- <PropertyGroup>
38
- <Version>0.1.0</Version>
39
- <Description>a test project</Description>
40
- <TargetFramework>net8.0</TargetFramework>
41
- </PropertyGroup>
42
- </Project>
43
- `);
44
-
45
- const srcDir = projDir.contents[1] as core.OutputDirectory;
46
-
47
- expect(srcDir.contents[0].path).equals("~/projects/TestProject/src/Test1.cs");
48
- expect((srcDir.contents[0] as core.ContentOutputFile).contents)
49
- .toBe(coretest.d`
50
- namespace TestCode;
51
-
52
- public class TestClass1;
53
- `);
54
-
55
- expect(srcDir.contents[1].path).equals("~/projects/TestProject/src/Test2.cs");
56
- expect((srcDir.contents[1] as core.ContentOutputFile).contents)
57
- .toBe(coretest.d`
58
- namespace TestCode;
59
-
60
- public class TestClass2;
61
- `);
62
- });
63
-
64
- it("defines a project directory file with multiple source files and a custom TFM", () => {
65
- const res = core.render(
66
- <core.Output>
67
- <csharp.ProjectDirectory
68
- name="TestProject"
69
- path="~/projects"
70
- version="0.1.0"
71
- description="a test project"
72
- targetFrameworkMoniker="netstandard2.1"
73
- >
74
- <csharp.Namespace name="TestCode">
75
- <csharp.SourceFile path="Test1.cs">
76
- <csharp.ClassDeclaration public name="TestClass1" />
77
- </csharp.SourceFile>
78
- <csharp.SourceFile path="Test2.cs">
79
- <csharp.ClassDeclaration public name="TestClass2" />
80
- </csharp.SourceFile>
81
- </csharp.Namespace>
82
- </csharp.ProjectDirectory>
83
- </core.Output>,
84
- { insertFinalNewLine: false },
85
- );
86
-
87
- const projDir = res.contents[0] as core.OutputDirectory;
88
-
89
- expect(projDir.path).equals("~/projects/TestProject");
90
- expect(projDir.contents[0].path).equals(
91
- "~/projects/TestProject/TestProject.csproj",
92
- );
93
- expect((projDir.contents[0] as core.ContentOutputFile).contents)
94
- .toBe(coretest.d`
95
- <Project Sdk="Microsoft.NET.Sdk">
96
- <PropertyGroup>
97
- <Version>0.1.0</Version>
98
- <Description>a test project</Description>
99
- <TargetFramework>netstandard2.1</TargetFramework>
100
- </PropertyGroup>
101
- </Project>
102
- `);
103
-
104
- const srcDir = projDir.contents[1] as core.OutputDirectory;
105
-
106
- expect(srcDir.contents[0].path).equals("~/projects/TestProject/src/Test1.cs");
107
- expect((srcDir.contents[0] as core.ContentOutputFile).contents)
108
- .toBe(coretest.d`
109
- namespace TestCode;
110
-
111
- public class TestClass1;
112
- `);
113
-
114
- expect(srcDir.contents[1].path).equals("~/projects/TestProject/src/Test2.cs");
115
- expect((srcDir.contents[1] as core.ContentOutputFile).contents)
116
- .toBe(coretest.d`
117
- namespace TestCode;
118
-
119
- public class TestClass2;
120
- `);
121
- });