@halospv3/hce.shared-config 3.0.0-develop.2 → 3.0.0-develop.21

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 (188) hide show
  1. package/CHANGELOG.md +164 -0
  2. package/dotnet/.github/workflows/_unit_test.yml +0 -3
  3. package/dotnet/.github/workflows/dotnet-release.yml +0 -3
  4. package/dotnet/.github/workflows/sample-dotnet-build.yml +0 -3
  5. package/dotnet/PublishAll.targets +3 -2
  6. package/dotnet/ZipPublishDir.targets +24 -29
  7. package/mjs/CaseInsensitiveMap.d.ts +12 -0
  8. package/mjs/CaseInsensitiveMap.d.ts.map +1 -0
  9. package/mjs/CaseInsensitiveMap.mjs +33 -0
  10. package/mjs/CaseInsensitiveMap.mjs.map +1 -0
  11. package/mjs/commitlintConfig.d.ts +12 -0
  12. package/mjs/commitlintConfig.d.ts.map +1 -0
  13. package/mjs/commitlintConfig.mjs +13 -0
  14. package/mjs/commitlintConfig.mjs.map +1 -0
  15. package/mjs/debug.d.ts +6 -0
  16. package/mjs/debug.d.ts.map +1 -0
  17. package/mjs/debug.mjs +9 -0
  18. package/mjs/debug.mjs.map +1 -0
  19. package/mjs/dotnet/GithubNugetRegistryInfo.d.ts +38 -0
  20. package/mjs/dotnet/GithubNugetRegistryInfo.d.ts.map +1 -0
  21. package/mjs/dotnet/GithubNugetRegistryInfo.mjs +43 -0
  22. package/mjs/dotnet/GithubNugetRegistryInfo.mjs.map +1 -0
  23. package/mjs/dotnet/GitlabNugetRegistryInfo.d.ts +62 -0
  24. package/mjs/dotnet/GitlabNugetRegistryInfo.d.ts.map +1 -0
  25. package/mjs/dotnet/GitlabNugetRegistryInfo.mjs +99 -0
  26. package/mjs/dotnet/GitlabNugetRegistryInfo.mjs.map +1 -0
  27. package/mjs/dotnet/IsNextVersionAlreadyPublished.cli.d.ts +2 -0
  28. package/mjs/dotnet/IsNextVersionAlreadyPublished.cli.d.ts.map +1 -0
  29. package/mjs/dotnet/IsNextVersionAlreadyPublished.cli.mjs +41 -0
  30. package/mjs/dotnet/IsNextVersionAlreadyPublished.cli.mjs.map +1 -0
  31. package/mjs/dotnet/MSBuildProject.d.ts +256 -0
  32. package/mjs/dotnet/MSBuildProject.d.ts.map +1 -0
  33. package/mjs/dotnet/MSBuildProject.mjs +447 -0
  34. package/mjs/dotnet/MSBuildProject.mjs.map +1 -0
  35. package/mjs/dotnet/MSBuildProjectProperties.d.ts +170 -0
  36. package/mjs/dotnet/MSBuildProjectProperties.d.ts.map +1 -0
  37. package/mjs/dotnet/MSBuildProjectProperties.mjs +260 -0
  38. package/mjs/dotnet/MSBuildProjectProperties.mjs.map +1 -0
  39. package/mjs/dotnet/NugetProjectProperties.d.ts +379 -0
  40. package/mjs/dotnet/NugetProjectProperties.d.ts.map +1 -0
  41. package/mjs/dotnet/NugetProjectProperties.mjs +577 -0
  42. package/mjs/dotnet/NugetProjectProperties.mjs.map +1 -0
  43. package/mjs/dotnet/NugetRegistryInfo.d.ts +384 -0
  44. package/mjs/dotnet/NugetRegistryInfo.d.ts.map +1 -0
  45. package/mjs/dotnet/NugetRegistryInfo.mjs +752 -0
  46. package/mjs/dotnet/NugetRegistryInfo.mjs.map +1 -0
  47. package/mjs/dotnet/helpers.d.ts +63 -0
  48. package/mjs/dotnet/helpers.d.ts.map +1 -0
  49. package/mjs/dotnet/helpers.mjs +354 -0
  50. package/mjs/dotnet/helpers.mjs.map +1 -0
  51. package/mjs/dotnet/index.d.ts +9 -0
  52. package/mjs/dotnet/index.d.ts.map +1 -0
  53. package/mjs/dotnet/index.mjs +9 -0
  54. package/mjs/dotnet/index.mjs.map +1 -0
  55. package/mjs/dotnet.d.ts +2 -0
  56. package/mjs/dotnet.d.ts.map +1 -0
  57. package/mjs/dotnet.mjs +9 -0
  58. package/mjs/dotnet.mjs.map +1 -0
  59. package/mjs/eslintConfig.d.ts +4 -0
  60. package/mjs/eslintConfig.d.ts.map +1 -0
  61. package/mjs/eslintConfig.mjs +98 -0
  62. package/mjs/eslintConfig.mjs.map +1 -0
  63. package/mjs/index.d.ts +3 -0
  64. package/mjs/index.d.ts.map +1 -0
  65. package/mjs/index.mjs +4 -0
  66. package/mjs/index.mjs.map +1 -0
  67. package/mjs/insertPlugins.d.ts +18 -0
  68. package/mjs/insertPlugins.d.ts.map +1 -0
  69. package/mjs/insertPlugins.mjs +73 -0
  70. package/mjs/insertPlugins.mjs.map +1 -0
  71. package/mjs/semantic-release__commit-analyzer.d.mjs +2 -0
  72. package/mjs/semantic-release__commit-analyzer.d.mjs.map +1 -0
  73. package/mjs/semantic-release__exec.d.mjs +2 -0
  74. package/mjs/semantic-release__exec.d.mjs.map +1 -0
  75. package/mjs/semantic-release__git.d.mjs +2 -0
  76. package/mjs/semantic-release__git.d.mjs.map +1 -0
  77. package/mjs/semantic-release__github.d.mjs +2 -0
  78. package/mjs/semantic-release__github.d.mjs.map +1 -0
  79. package/mjs/semanticReleaseConfig.d.ts +97 -0
  80. package/mjs/semanticReleaseConfig.d.ts.map +1 -0
  81. package/mjs/semanticReleaseConfig.mjs +63 -0
  82. package/mjs/semanticReleaseConfig.mjs.map +1 -0
  83. package/mjs/semanticReleaseConfigDotnet.d.ts +109 -0
  84. package/mjs/semanticReleaseConfigDotnet.d.ts.map +1 -0
  85. package/mjs/semanticReleaseConfigDotnet.mjs +268 -0
  86. package/mjs/semanticReleaseConfigDotnet.mjs.map +1 -0
  87. package/mjs/setupGitPluginSpec.d.ts +22 -0
  88. package/mjs/setupGitPluginSpec.d.ts.map +1 -0
  89. package/mjs/setupGitPluginSpec.mjs +144 -0
  90. package/mjs/setupGitPluginSpec.mjs.map +1 -0
  91. package/mjs/utils/Exact.d.ts +20 -0
  92. package/mjs/utils/Exact.d.ts.map +1 -0
  93. package/mjs/utils/Exact.mjs +75 -0
  94. package/mjs/utils/Exact.mjs.map +1 -0
  95. package/mjs/utils/GracefulRecursion.d.mjs +2 -0
  96. package/mjs/utils/GracefulRecursion.d.mjs.map +1 -0
  97. package/mjs/utils/env.d.ts +24 -0
  98. package/mjs/utils/env.d.ts.map +1 -0
  99. package/mjs/utils/env.mjs +39 -0
  100. package/mjs/utils/env.mjs.map +1 -0
  101. package/mjs/utils/execAsync.d.ts +37 -0
  102. package/mjs/utils/execAsync.d.ts.map +1 -0
  103. package/mjs/utils/execAsync.mjs +59 -0
  104. package/mjs/utils/execAsync.mjs.map +1 -0
  105. package/mjs/utils/miscTypes.d.ts +13 -0
  106. package/mjs/utils/miscTypes.d.ts.map +1 -0
  107. package/mjs/utils/miscTypes.mjs +10 -0
  108. package/mjs/utils/miscTypes.mjs.map +1 -0
  109. package/mjs/utils/reflection/FunctionLike.d.mjs +2 -0
  110. package/mjs/utils/reflection/FunctionLike.d.mjs.map +1 -0
  111. package/mjs/utils/reflection/GetterDescriptor.d.mjs +2 -0
  112. package/mjs/utils/reflection/GetterDescriptor.d.mjs.map +1 -0
  113. package/mjs/utils/reflection/InstancePropertyDescriptorMap.d.mjs +2 -0
  114. package/mjs/utils/reflection/InstancePropertyDescriptorMap.d.mjs.map +1 -0
  115. package/mjs/utils/reflection/InstanceTypeOrSelfPropertyDescriptorMap.d.mjs +2 -0
  116. package/mjs/utils/reflection/InstanceTypeOrSelfPropertyDescriptorMap.d.mjs.map +1 -0
  117. package/mjs/utils/reflection/OwnGetterDescriptorMap.d.mjs +2 -0
  118. package/mjs/utils/reflection/OwnGetterDescriptorMap.d.mjs.map +1 -0
  119. package/mjs/utils/reflection/OwnKeyOf.d.mjs +2 -0
  120. package/mjs/utils/reflection/OwnKeyOf.d.mjs.map +1 -0
  121. package/mjs/utils/reflection/OwnPropertyDescriptorMap.d.mjs +2 -0
  122. package/mjs/utils/reflection/OwnPropertyDescriptorMap.d.mjs.map +1 -0
  123. package/mjs/utils/reflection/PropertyDescriptorMap.d.mjs +2 -0
  124. package/mjs/utils/reflection/PropertyDescriptorMap.d.mjs.map +1 -0
  125. package/mjs/utils/reflection/filterForGetters.d.ts +7 -0
  126. package/mjs/utils/reflection/filterForGetters.d.ts.map +1 -0
  127. package/mjs/utils/reflection/filterForGetters.mjs +27 -0
  128. package/mjs/utils/reflection/filterForGetters.mjs.map +1 -0
  129. package/mjs/utils/reflection/getOwnPropertyDescriptors.d.ts +22 -0
  130. package/mjs/utils/reflection/getOwnPropertyDescriptors.d.ts.map +1 -0
  131. package/mjs/utils/reflection/getOwnPropertyDescriptors.mjs +34 -0
  132. package/mjs/utils/reflection/getOwnPropertyDescriptors.mjs.map +1 -0
  133. package/mjs/utils/reflection/getOwnPropertyDescriptorsRecursively.d.ts +56 -0
  134. package/mjs/utils/reflection/getOwnPropertyDescriptorsRecursively.d.ts.map +1 -0
  135. package/mjs/utils/reflection/getOwnPropertyDescriptorsRecursively.mjs +72 -0
  136. package/mjs/utils/reflection/getOwnPropertyDescriptorsRecursively.mjs.map +1 -0
  137. package/mjs/utils/reflection/getPrototypeChainOf.d.ts +16 -0
  138. package/mjs/utils/reflection/getPrototypeChainOf.d.ts.map +1 -0
  139. package/mjs/utils/reflection/getPrototypeChainOf.mjs +55 -0
  140. package/mjs/utils/reflection/getPrototypeChainOf.mjs.map +1 -0
  141. package/mjs/utils/reflection/getPrototypeOf.d.ts +8 -0
  142. package/mjs/utils/reflection/getPrototypeOf.d.ts.map +1 -0
  143. package/mjs/utils/reflection/getPrototypeOf.mjs +10 -0
  144. package/mjs/utils/reflection/getPrototypeOf.mjs.map +1 -0
  145. package/mjs/utils/reflection/inheritance.d.ts +180 -0
  146. package/mjs/utils/reflection/inheritance.d.ts.map +1 -0
  147. package/mjs/utils/reflection/inheritance.mjs +148 -0
  148. package/mjs/utils/reflection/inheritance.mjs.map +1 -0
  149. package/mjs/utils/reflection/isConstructor.d.ts +17 -0
  150. package/mjs/utils/reflection/isConstructor.d.ts.map +1 -0
  151. package/mjs/utils/reflection/isConstructor.mjs +63 -0
  152. package/mjs/utils/reflection/isConstructor.mjs.map +1 -0
  153. package/mjs/utils/reflection/isGetterDescriptor.d.ts +9 -0
  154. package/mjs/utils/reflection/isGetterDescriptor.d.ts.map +1 -0
  155. package/mjs/utils/reflection/isGetterDescriptor.mjs +12 -0
  156. package/mjs/utils/reflection/isGetterDescriptor.mjs.map +1 -0
  157. package/mjs/utils/reflection/listOwnGetters.d.ts +26 -0
  158. package/mjs/utils/reflection/listOwnGetters.d.ts.map +1 -0
  159. package/mjs/utils/reflection/listOwnGetters.mjs +39 -0
  160. package/mjs/utils/reflection/listOwnGetters.mjs.map +1 -0
  161. package/mjs/utils/reflection.d.ts +18 -0
  162. package/mjs/utils/reflection.d.ts.map +1 -0
  163. package/mjs/utils/reflection.mjs +10 -0
  164. package/mjs/utils/reflection.mjs.map +1 -0
  165. package/package.json +17 -17
  166. package/src/debug.ts +5 -4
  167. package/src/dotnet/GithubNugetRegistryInfo.ts +17 -9
  168. package/src/dotnet/GitlabNugetRegistryInfo.ts +19 -5
  169. package/src/dotnet/IsNextVersionAlreadyPublished.cli.ts +53 -36
  170. package/src/dotnet/MSBuildProject.ts +150 -5
  171. package/src/dotnet/MSBuildProjectProperties.ts +2 -1
  172. package/src/dotnet/NugetProjectProperties.ts +3 -2
  173. package/src/dotnet/NugetRegistryInfo.ts +94 -8
  174. package/src/dotnet/helpers.ts +87 -53
  175. package/src/dotnet/index.ts +8 -0
  176. package/src/dotnet.ts +1 -0
  177. package/src/insertPlugins.ts +116 -0
  178. package/src/semantic-release__exec.d.ts +1 -1
  179. package/src/semanticReleaseConfig.ts +8 -3
  180. package/src/semanticReleaseConfigDotnet.ts +90 -88
  181. package/src/setupGitPluginSpec.ts +4 -1
  182. package/src/tsconfig.json +1 -1
  183. package/src/utils/execAsync.ts +13 -1
  184. package/src/utils/miscTypes.ts +4 -3
  185. package/src/utils/reflection/inheritance.ts +1 -1
  186. package/tsconfig.base.json +54 -0
  187. package/tsconfig.json +22 -0
  188. package/tsconfig.mjs.json +8 -0
@@ -0,0 +1,260 @@
1
+ import { strictEqual } from 'node:assert/strict';
2
+ import { existsSync } from 'node:fs';
3
+ import node_path from 'node:path';
4
+ import { CaseInsensitiveMap } from '../CaseInsensitiveMap.mjs';
5
+
6
+ /**
7
+ * Known properties. Additional properties may be added upon request.
8
+ *
9
+ * todo: add Reserved properties, Well-Known properties, Common properties, and more. Maybe as sub classes.
10
+ * See:
11
+ * - {@link https://learn.microsoft.com/en-us/visualstudio/msbuild/msbuild-reserved-and-well-known-properties?view=vs-2022 MSBuild Reserved and Well-known Properties}
12
+ * - {@link https://learn.microsoft.com/en-us/visualstudio/msbuild/common-msbuild-project-properties?view=vs-2022 Common MSBuild project properties}
13
+ * - {@link https://learn.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props Microsoft.NET.Sdk}
14
+ * - {@link https://learn.microsoft.com/en-us/aspnet/core/razor-pages/web-sdk?view=aspnetcore-8.0&toc=%2Fdotnet%2Fnavigate%2Ftools-diagnostics%2Ftoc.json&bc=%2Fdotnet%2Fbreadcrumb%2Ftoc.json#properties Microsoft.NET.Sdk.Web}
15
+ * - {@link https://learn.microsoft.com/en-us/aspnet/core/razor-pages/sdk?view=aspnetcore-8.0&toc=%2Fdotnet%2Fnavigate%2Ftools-diagnostics%2Ftoc.json&bc=%2Fdotnet%2Fbreadcrumb%2Ftoc.json Microsoft.NET.Sdk.Razor}
16
+ * - {@link https://learn.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props-desktop Microsoft.NET.Sdk.Desktop}
17
+ */
18
+ class MSBuildProjectProperties {
19
+ // #region static
20
+
21
+ /**
22
+ * Resolve the given path if it is not absolute. If the path exists, it is returned. Else, an Error is thrown.
23
+ * @param path The full file path of an MSBuild project.
24
+ * @returns The absolute path to the MSBuild project file.
25
+ * @throws {Error} if the path cannot be resolved to an existing file.
26
+ */
27
+ static GetFullPath(path) {
28
+ if (!node_path.isAbsolute(path)) path = node_path.resolve(path);
29
+ if (!existsSync(path)) throw new Error(`${node_path.basename(path)} could not be found at "${path}"`);
30
+ return path;
31
+ }
32
+
33
+ /**
34
+ * Note: This method may remove elements from {@link properties}.\
35
+ * Try to get an element from {@link properties} by its {@link key}.
36
+ * If an element is found, it is removed and the value of the element is returned.
37
+ * Otherwise, `undefined` is returned.
38
+ * @param properties The CaseInsensitiveMap of properties passed to the constructor.
39
+ * @param key The key of the property to get from {@link properties}
40
+ * @returns If found, the value of the `[string, string]` tuple found in {@link properties}. Else, `undefined`.
41
+ */
42
+ static getAndForget(properties, key) {
43
+ const v = properties.get(key);
44
+ if (v !== undefined) properties.delete(key);
45
+ return v;
46
+ }
47
+
48
+ // #endregion static
49
+ // #endregion static
50
+
51
+ // #region private
52
+ _msbuildProjectFullPath;
53
+ _assemblyName;
54
+ _baseIntermediateOutputPath;
55
+ _baseOutputPath;
56
+ _description;
57
+ _intermediateOutputPath;
58
+ _outDir;
59
+ _outputPath;
60
+ _runtimeIdentifier;
61
+ _runtimeIdentifiers;
62
+ _targetFramework;
63
+ _targetFrameworks;
64
+ _version;
65
+ _versionPrefix;
66
+ _versionSuffix;
67
+ // #endregion private
68
+
69
+ constructor(msbuildProjectFullPath, properties) {
70
+ // runtime type checks
71
+ strictEqual(typeof msbuildProjectFullPath, 'string', new TypeError(`msbuildProjectFullPath should be a string, not ${typeof msbuildProjectFullPath}!`));
72
+ strictEqual(properties instanceof CaseInsensitiveMap, true, `arg 'properties' should be instanceof ${CaseInsensitiveMap.name}`);
73
+ strictEqual([...properties.keys()].every(v => typeof v === 'string'), true, 'all keys in arg \'properties\' should be strings');
74
+ this._msbuildProjectFullPath = MPP.GetFullPath(msbuildProjectFullPath);
75
+ this._assemblyName = MPP.getAndForget(properties, 'AssemblyName');
76
+ this._description = MPP.getAndForget(properties, 'Description');
77
+ this._outputPath = MPP.getAndForget(properties, 'OutputPath');
78
+ this._runtimeIdentifier = MPP.getAndForget(properties, 'RuntimeIdentifier');
79
+ this._runtimeIdentifiers = MPP.getAndForget(properties, 'RuntimeIdentifiers');
80
+ this._targetFramework = MPP.getAndForget(properties, 'TargetFramework');
81
+ this._targetFrameworks = MPP.getAndForget(properties, 'TargetFrameworks');
82
+ this._version = MPP.getAndForget(properties, 'Version');
83
+ this._versionPrefix = MPP.getAndForget(properties, 'VersionPrefix');
84
+ this._versionSuffix = MPP.getAndForget(properties, 'VersionSuffix');
85
+ // rest
86
+ for (const key of properties.keys()) {
87
+ const value = MPP.getAndForget(properties, key);
88
+ if (value !== undefined) {
89
+ Object.defineProperty(this, key, {
90
+ value: value,
91
+ writable: false,
92
+ enumerable: true,
93
+ configurable: true
94
+ });
95
+ }
96
+ }
97
+ }
98
+ get MSBuildProjectFullPath() {
99
+ return this._msbuildProjectFullPath ??= '';
100
+ }
101
+
102
+ /**
103
+ * @returns The name of the assembly.
104
+ *
105
+ * Default: {@link https://learn.microsoft.com/en-us/visualstudio/msbuild/msbuild-reserved-and-well-known-properties#:~:text=MSBuildProjectDirectory,-Reserved MSBuildProjectDirectory}
106
+ */
107
+ get AssemblyName() {
108
+ return this._assemblyName ??= '';
109
+ }
110
+
111
+ /**
112
+ * @returns The top-level folder where all configuration-specific intermediate output
113
+ * folders are created. The default value is `obj\`.
114
+ * @example
115
+ * ```xml
116
+ * <BaseIntermediateOutputPath>c:\xyz\obj\</BaseIntermediateOutputPath>
117
+ * ```
118
+ */
119
+ get BaseIntermediateOutputPath() {
120
+ return this._baseIntermediateOutputPath ??= '';
121
+ }
122
+
123
+ /**
124
+ * @returns The base path for the output file.
125
+ * If it's set, MSBuild uses `OutputPath = $(BaseOutputPath)\$(Configuration)\`.
126
+ * @example ```xml
127
+ * <BaseOutputPath>c:\xyz\bin\</BaseOutputPath>
128
+ * ```
129
+ */
130
+ get BaseOutputPath() {
131
+ return this._baseOutputPath ??= '';
132
+ }
133
+
134
+ /**
135
+ * A long description for the assembly.
136
+ * If {@link NugetProperties.PackageDescription} is not specified, then this property is also used as the description of the package.
137
+ * @returns The value of the `Description` property.
138
+ */
139
+ get Description() {
140
+ return this._description ??= '';
141
+ }
142
+
143
+ /**
144
+ * @returns The full intermediate output path as derived from
145
+ * {@link BaseIntermediateOutputPath}, if no path is specified.
146
+ * @example "obj\\debug\\"
147
+ */
148
+ get IntermediateOutput() {
149
+ return this._intermediateOutputPath ??= '';
150
+ }
151
+
152
+ /**
153
+ * @returns The final output location for the project or solution.
154
+ * When you build a solution, OutDir can be used to gather multiple project outputs in one location.
155
+ * In addition, OutDir is included in AssemblySearchPaths used for resolving references.
156
+ * @example
157
+ * `bin/Debug`
158
+ */
159
+ get OutDir() {
160
+ return this._outDir ??= '';
161
+ }
162
+
163
+ /**
164
+ * @returns The path to the output directory, relative to the project
165
+ * directory.
166
+ * @example
167
+ * `bin/Debug`
168
+ * /// non-AnyCPU builds
169
+ * `bin/Debug/${Platform}`
170
+ */
171
+ get OutputPath() {
172
+ return this._outputPath ??= '';
173
+ }
174
+
175
+ /**
176
+ * Set Version -OR- VersionPrefix.
177
+ * @returns The value of the `Version` property.
178
+ *
179
+ * Default: `"1.0.0"`
180
+ */
181
+ get Version() {
182
+ return this._version ??= '1.0.0';
183
+ }
184
+
185
+ /**
186
+ * Set Version -OR- VersionPrefix.\
187
+ * Setting {@link NugetProperties.PackageVersion} overwrites {@link VersionPrefix}
188
+ * @returns The MAJOR.MINOR.PATCH string of the version.
189
+ * @see {@link VersionSuffix}
190
+ */
191
+ get VersionPrefix() {
192
+ return this._versionPrefix ??= '';
193
+ }
194
+
195
+ /**
196
+ * The effect of this property on the package version depends on the values of the Version and VersionPrefix properties, as shown in the following table:
197
+ * | Properties with values | Package version |
198
+ * | ---------------------- | --------------- |
199
+ * | None | 1.0.0 |
200
+ * | Version | $(Version) |
201
+ * | VersionPrefix only | $(VersionPrefix) |
202
+ * | VersionSuffix only | 1.0.0-$(VersionSuffix) |
203
+ * | VersionPrefix and VersionSuffix | $(VersionPrefix)-$(VersionSuffix) |
204
+ * \
205
+ * Setting {@link PackageVersion} overwrites {@link VersionSuffix}
206
+ * @returns The string appended to the end of the MAJOR.MINOR.PATCH semver string (i.e. {@link VersionPrefix})
207
+ */
208
+ get VersionSuffix() {
209
+ return this._versionSuffix ??= '';
210
+ }
211
+
212
+ /**
213
+ * @returns The {@link https://learn.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props#targetframework Target Framework}
214
+ * @see
215
+ * https://learn.microsoft.com/en-us/nuget/reference/target-frameworks#supported-frameworks
216
+ * https://learn.microsoft.com/en-us/dotnet/standard/frameworks
217
+ */
218
+ get TargetFramework() {
219
+ return this._targetFramework ??= '';
220
+ }
221
+
222
+ /**
223
+ * @returns The {@link https://learn.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props#targetframeworks Target Frameworks} (plural)
224
+ * @see
225
+ * https://learn.microsoft.com/en-us/nuget/reference/target-frameworks#supported-frameworks
226
+ * https://learn.microsoft.com/en-us/dotnet/standard/frameworks
227
+ */
228
+ get TargetFrameworks() {
229
+ return this._targetFrameworks ??= '';
230
+ }
231
+
232
+ /**
233
+ * @returns
234
+ * > The {@link https://learn.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props#runtimeidentifier `Runtime Identifier`} property lets you specify a single runtime
235
+ * > identifier (RID) for the project. The RID enables publishing a
236
+ * > self-contained deployment.
237
+ * @see
238
+ * https://learn.microsoft.com/en-us/dotnet/core/rid-catalog
239
+ */
240
+ get RuntimeIdentifier() {
241
+ return this._runtimeIdentifier ??= '';
242
+ }
243
+
244
+ /**
245
+ * @returns
246
+ * > The {@link https://learn.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props#runtimeidentifiers `RuntimeIdentifiers`} property lets you specify a
247
+ * > semicolon-delimited list of runtime identifiers (RIDs) for the project.
248
+ * > Use this property if you need to publish for multiple runtimes.
249
+ * > `RuntimeIdentifiers` is used at restore time to ensure the right assets
250
+ * > are in the graph.
251
+ * @see
252
+ * https://learn.microsoft.com/en-us/dotnet/core/rid-catalog
253
+ */
254
+ get RuntimeIdentifiers() {
255
+ return this._runtimeIdentifiers ??= '';
256
+ }
257
+ }
258
+ const MPP = MSBuildProjectProperties;
259
+ export { MSBuildProjectProperties };
260
+ //# sourceMappingURL=MSBuildProjectProperties.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MSBuildProjectProperties.mjs","sources":["../../src/dotnet/MSBuildProjectProperties.ts"],"sourcesContent":null,"names":[],"mappings":"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"}
@@ -0,0 +1,379 @@
1
+ import { CaseInsensitiveMap } from '../CaseInsensitiveMap.js';
2
+ import { type BooleanString, type EmptyOrBooleanString } from '../utils/miscTypes.js';
3
+ import { type ClassLike, type WithProto } from '../utils/reflection.js';
4
+ import { MSBuildProjectProperties, type Class_MSBPP } from './MSBuildProjectProperties.js';
5
+ import type { StringType } from 'arktype/internal/methods/string.ts';
6
+ declare const Type_RepositoryType: StringType<'' | 'git' | 'tfs'>;
7
+ declare const Type_SymbolPackageFormat: StringType<'symbols.nupkg' | 'snupkg'>;
8
+ /**
9
+ * A readonly record of a .csproj or .fsproj with NuGet configuration properties in
10
+ * addition to those specified by {@link MSBuildProjectProperties}. This record
11
+ * should be considered immutable. A new instance should be constructed from MSBuild's evaluation output.
12
+ * @see https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#pack-target-inputs
13
+ */
14
+ export declare class NugetProjectProperties extends MSBuildProjectProperties {
15
+ private _isPackable;
16
+ private _suppressDependenciesWhenPacking;
17
+ private _packageVersion;
18
+ private _packageId;
19
+ private _packageDescription;
20
+ private _authors;
21
+ private _copyright;
22
+ private _packageRequireLicenseAcceptance;
23
+ private _developmentDependency;
24
+ private _packageLicenseExpression;
25
+ private _packageLicenseFile;
26
+ private _packageProjectUrl;
27
+ private _packageIcon;
28
+ private _packageReleaseNotes;
29
+ private _packageReadmeFile;
30
+ private _packageTags;
31
+ private _packageOutputPath;
32
+ private _includeSymbols;
33
+ private _includeSource;
34
+ private _packageType;
35
+ private _isTool;
36
+ private _repositoryUrl;
37
+ private _repositoryType;
38
+ private _repositoryCommit;
39
+ private _symbolPackageFormat;
40
+ private _noPackageAnalysis;
41
+ private _minClientVersion;
42
+ private _includeBuiltOutput;
43
+ private _includeContentInPack;
44
+ private _buildOutputTargetFolder;
45
+ private _contentTargetFolders;
46
+ private _nuspecFile;
47
+ private _nuspecBasePath;
48
+ private _nuspecProperties;
49
+ private _title;
50
+ private _company;
51
+ private _product;
52
+ /**
53
+ * Initialize a readonly record of an MSBuild project's properties, including those related to NuGet.
54
+ * @param msbuildProjectFullPath @inheritdoc {@link NugetProjectProperties.MSBuildProjectFullPath}
55
+ * @param properties The dictionary returned by MSBuild's `-getProperty:propname,...` argument
56
+ */
57
+ constructor(msbuildProjectFullPath: string, properties: CaseInsensitiveMap<string, string>);
58
+ /**
59
+ * @returns A string-formatted boolean. If 'false', the project's `Pack`
60
+ * Target (if available) will no-op.
61
+ *
62
+ * Default: `"true"`
63
+ */
64
+ get IsPackable(): BooleanString;
65
+ /**
66
+ * @returns `"true"` or `"false"`. If "true", the package's dependencies are
67
+ * excluded from the generated NuGet package.
68
+ *
69
+ * Default: `"false"`
70
+ */
71
+ get SuppressDependenciesWhenPacking(): BooleanString;
72
+ /**
73
+ * @returns A semver-compatible version number in the form
74
+ * Major.Minor.Patch[-Suffix], where -Suffix identifies prerelease versions.
75
+ *
76
+ * Default: {@link Version}
77
+ * @example "1.0.0", "1.0.0-beta", "1.0.0-beta-00345"
78
+ */
79
+ get PackageVersion(): string;
80
+ /**
81
+ * @returns The ID of the resulting NuGet package.
82
+ *
83
+ * Default: {@link AssemblyName}
84
+ */
85
+ get PackageId(): string;
86
+ /**
87
+ * @returns A long description of the package for UI display.
88
+ *
89
+ * Default: {@link Description}
90
+ */
91
+ get PackageDescription(): string;
92
+ /**
93
+ * @returns A semicolon-separated list of the package's authors, matching the
94
+ * profile names on nuget.org. These are displayed in the NuGet Gallery on
95
+ * nuget.org and are used to cross-reference packages by the same authors.
96
+ *
97
+ * Default: {@link AssemblyName `AssemblyName`}
98
+ */
99
+ get Authors(): string;
100
+ /**
101
+ * @returns Copyright details for the package.
102
+ *
103
+ * Default: `''`
104
+ */
105
+ get Copyright(): string;
106
+ /**
107
+ * @returns A string-formatted boolean. If `"true"`, the client must prompt the
108
+ * consumer to accept the package license before installing the package.
109
+ *
110
+ * Default: `"false"`
111
+ */
112
+ get PackageRequireLicenseAcceptance(): BooleanString;
113
+ /**
114
+ * This boolean only affects the package created from the project.
115
+ * @see
116
+ * {@link https://github.com/NuGet/Home/wiki/DevelopmentDependency-support-for-PackageReference DevelopmentDependency support for PackageReference}
117
+ * @returns A string-formatted boolean. If `"true"`, the package is marked as
118
+ * a development-only dependency and is prevented from being included as a
119
+ * dependency in other packages. With PackageReference (NuGet 4.8+), this flag
120
+ * also means that compile-time assets are excluded from compilation.
121
+ *
122
+ * Default: `''` (`false`-y)
123
+ */
124
+ get DevelopmentDependency(): EmptyOrBooleanString;
125
+ /**
126
+ * @returns The {@link https://spdx.org/licenses/ SPDX license identifier} or
127
+ * expression.
128
+ *
129
+ * Default: `''`
130
+ * @see
131
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-a-license-expression-or-a-license-file Packing a license expression or a license file}
132
+ * @example "Apache-2.0"
133
+ */
134
+ get PackageLicenseExpression(): string;
135
+ /**
136
+ * @returns The path to a license file within the package if you're using a
137
+ * custom license or a license that hasn't been assigned an SPDX identifier.
138
+ *
139
+ * Default: `''`
140
+ */
141
+ get PackageLicenseFile(): string;
142
+ /**
143
+ * @returns The package's project URL.
144
+ *
145
+ * Default: `''`
146
+ */
147
+ get PackageProjectUrl(): string;
148
+ /**
149
+ * @returns The package icon path, relative to the root of the package.
150
+ *
151
+ * Default: `''`
152
+ * @description You must pack the referenced icon image file. By default, it
153
+ * is not packed.
154
+ * @see
155
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-an-icon-image-file Packing an icon image file},
156
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/nuspec#icon icon metadata}
157
+ */
158
+ get PackageIcon(): string;
159
+ /**
160
+ * @returns Release notes for the package.
161
+ *
162
+ * Default: `''`
163
+ */
164
+ get PackageReleaseNotes(): string;
165
+ /**
166
+ * @returns The path of the package's README file relative to the package's
167
+ * root.
168
+ *
169
+ * Default: `''`
170
+ * @description You must pack the referenced readme file. By default, it is
171
+ * not packed.
172
+ */
173
+ get PackageReadmeFile(): string;
174
+ /**
175
+ * @returns A semicolon-delimited list of tags that designates the package.
176
+ *
177
+ * Default : `''`
178
+ */
179
+ get PackageTags(): string;
180
+ /**
181
+ * @returns A relative or absolute path determining the where the packed
182
+ * package will be dropped.
183
+ *
184
+ * Default: {@link OutputPath}
185
+ */
186
+ get PackageOutputPath(): string;
187
+ /**
188
+ * @returns A string-formatted boolean indicating whether the package should
189
+ * create an additional symbols package when the project is packed. The
190
+ * symbols package's format is controlled by the `SymbolPackageFormat`
191
+ * property.
192
+ *
193
+ * Default: `''` (false-y)
194
+ * @description When using `MSBuild -t:pack -p:IncludeSymbols=true`, the
195
+ * corresponding .pdb files are copied along with other output files (.dll,
196
+ * .exe, .winmd, .xml, .json, .pri). Note that setting `IncludeSymbols=true`
197
+ * creates a regular package and a symbols package.
198
+ * @see
199
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#includesymbols IncludeSymbols}
200
+ */
201
+ get IncludeSymbols(): EmptyOrBooleanString;
202
+ /**
203
+ * @returns A string-formatted boolean indicating whether the pack process
204
+ * should create a source package. The source package contains the library's
205
+ * source code as well as PDB files. Source files are put under the
206
+ * `src/ProjectName` directory in the resulting package file.
207
+ *
208
+ * Default: `''` (false-y)
209
+ * @see
210
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#includesource IncludeSource}
211
+ */
212
+ get IncludeSource(): EmptyOrBooleanString;
213
+ /**
214
+ * @returns A semicolon-separated list of tags indicating the package's
215
+ * intended use. Custom types are allowed, but cannot be installed via Visual
216
+ * Studio nor nuget.exe. See https://github.com/NuGet/Home/issues/10468.
217
+ *
218
+ * Package types can be version e.g. `PackageType1, 1.0.0.0;PackageType2`
219
+ *
220
+ * Default: `''`
221
+ * @example "Dependency ", "DotnetTool", "MSBuildSdk", "Template"
222
+ * @see {@link https://learn.microsoft.com/en-us/nuget/create-packages/set-package-type?tabs=dotnet Set a NuGet package type}
223
+ */
224
+ get PackageType(): string;
225
+ /**
226
+ * @returns A string-formatted boolean specifying whether all output files are
227
+ * copied to the *tools* folder instead of the *lib* folder.
228
+ *
229
+ * Default: `''` (false-y)
230
+ * @see
231
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#istool IsTool}
232
+ */
233
+ get IsTool(): EmptyOrBooleanString;
234
+ /**
235
+ * @returns The repository URL used to clone or retrieve source code.
236
+ *
237
+ * Default: `''`
238
+ * @example "https://github.com/NuGet/NuGet.Client.git".
239
+ */
240
+ get RepositoryUrl(): string;
241
+ /**
242
+ * @returns The repository type.
243
+ *
244
+ * Default: `''`
245
+ * @example "git", "fts"
246
+ */
247
+ get RepositoryType(): typeof Type_RepositoryType.inferOut;
248
+ /**
249
+ * @returns The (optional) repository commit or changeset to indicate which
250
+ * source the package was built against. {@link RepositoryUrl} must also be
251
+ * specified for this property to be included.
252
+ *
253
+ * Default: `''`
254
+ * @description This is evaluated only during the "Pack" and "Publish"
255
+ * Targets. If using nuget.exe or Visual Studio, NuGet 4.7.0 or later is
256
+ * required.
257
+ * @example "0e4d1b598f350b3dc675018d539114d1328189ef"
258
+ */
259
+ get RepositoryCommit(): string;
260
+ /**
261
+ * @returns A string specifying the format of the symbols package. If
262
+ * "symbols.nupkg", a legacy symbols package is created with a .symbols.nupkg
263
+ * extension containing PDBs, DLLs, and other output files. If "snupkg", a
264
+ * snupkg symbol package is created containing the portable PDBs. The default
265
+ * is "symbols.nupkg".
266
+ *
267
+ * Default: "symbols.nupkg"
268
+ * @example "symbols.nupkg", "snupkg"
269
+ */
270
+ get SymbolPackageFormat(): typeof Type_SymbolPackageFormat.inferOut;
271
+ /**
272
+ * @returns A string-formatted boolean specifying that `pack` should not run
273
+ * package analysis after building the package.
274
+ *
275
+ * Default: `''` (false-y)
276
+ */
277
+ get NoPackageAnalysis(): EmptyOrBooleanString;
278
+ /**
279
+ * @returns A string specifying the minimum version of the NuGet client that
280
+ * can install this package, enforced by nuget.exe and the Visual Studio
281
+ * Package Manager.
282
+ *
283
+ * Default: `''`
284
+ */
285
+ get MinClientVersion(): string;
286
+ /**
287
+ * @returns A string-formatted boolean value specifying whether the build
288
+ * output assemblies should be packed into the .nupkg file or not.
289
+ *
290
+ * Default: `"true"`
291
+ */
292
+ get IncludeBuildOutput(): BooleanString;
293
+ /**
294
+ * @returns A string-formatted boolean specifying whether any items that have
295
+ * a type of Content are included in the resulting package automatically.
296
+ *
297
+ * Default: `"true"`
298
+ */
299
+ get IncludeContentInPack(): BooleanString;
300
+ /**
301
+ * @returns The output directory of the output assemblies relative to the root
302
+ * of the package. The output assemblies (and other output files) are copied
303
+ * into their respective framework folders.
304
+ *
305
+ * Default: `''`
306
+ * @see
307
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#output-assemblies Output assemblies}
308
+ */
309
+ get BuildOutputTargetFolder(): string;
310
+ /**
311
+ * @returns A semicolon-separated list of default locations of where all the
312
+ * content files should go if `PackagePath` is not specified for them.
313
+ *
314
+ * Default: `"content;contentFiles"`
315
+ * @see
316
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#including-content-in-a-package Including content in a package}
317
+ */
318
+ get ContentTargetFolders(): string;
319
+ /**
320
+ * @returns The relative or absolute path to the `*.nuspec` file being used
321
+ * for packing. If specified, it's used **exclusively** for packaging
322
+ * information, and any information in the projects is not used.
323
+ *
324
+ * Default: `''`
325
+ * @see
326
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-using-a-nuspec-file Packing using a .nuspec}
327
+ */
328
+ get NuspecFile(): string;
329
+ /**
330
+ * @returns The base path for the *.nuspec* file.
331
+ *
332
+ * Default: `''`
333
+ * @see
334
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-using-a-nuspec-file Packing using a .nuspec}
335
+ */
336
+ get NuspecBasePath(): string;
337
+ /**
338
+ * @returns A semicolon-separated list of key=value pairs.
339
+ *
340
+ * Default: `''`
341
+ * @see
342
+ * {@link https://learn.microsoft.com/en-us/nuget/reference/msbuild-targets#packing-using-a-nuspec-file Packing using a .nuspec}
343
+ */
344
+ get NuspecProperties(): string;
345
+ /**
346
+ * @returns A human-friendly title of the package, typically used in UI displays as
347
+ * on nuget.org and the Package Manager in Visual Studio.
348
+ * Default: {@link PackageId}
349
+ */
350
+ get Title(): string;
351
+ /**
352
+ * @returns Company name or information.
353
+ *
354
+ * Default: {@link Authors}
355
+ */
356
+ get Company(): string;
357
+ /**
358
+ * @returns Product name or information.
359
+ *
360
+ * Default: {@link AssemblyName}
361
+ */
362
+ get Product(): string;
363
+ }
364
+ export type Class_NPP = ClassLike<typeof NugetProjectProperties & WithProto<Class_MSBPP>>;
365
+ export declare class NPPGetterNames {
366
+ private static _prototypeChain;
367
+ private static get PrototypeChain();
368
+ private static _instanceGetters;
369
+ private static _instanceGettersRecursive;
370
+ private static _StaticGetters;
371
+ private static _StaticGettersRecursive;
372
+ static get InstanceGetters(): Exclude<keyof NugetProjectProperties, keyof MSBuildProjectProperties>[];
373
+ static get InstanceGettersRecursive(): (keyof NugetProjectProperties)[];
374
+ static get StaticGetters(): never[];
375
+ static get StaticGettersRecursive(): ('prototype' | 'GetFullPath')[];
376
+ }
377
+ export {};
378
+ /** @module NugetProjectProperties */
379
+ //# sourceMappingURL=NugetProjectProperties.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NugetProjectProperties.d.ts","sourceRoot":"","sources":["../../src/dotnet/NugetProjectProperties.ts"],"names":[],"mappings":"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"}