@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 @@
1
+ {"version":3,"file":"NugetRegistryInfo.mjs","sources":["../../src/dotnet/NugetRegistryInfo.ts"],"sourcesContent":null,"names":["configDotenv"],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import { MSBuildProject } from './MSBuildProject.js';
2
+ import { NugetRegistryInfo } from './NugetRegistryInfo.js';
3
+ import type { Default } from 'arktype/internal/attributes.ts';
4
+ import type { ObjectType } from 'arktype/internal/methods/object.ts';
5
+ /**
6
+ * Build a prepareCmd string from .NET projects.\
7
+ * This will include a `dotnet publish` for each project's RID and TFM permutation,\
8
+ * `dotnet pack` for each project with output paths separated by NuGet Source and PackageId,\
9
+ * and `dotnet nuget sign` for each nupkg output directory.
10
+ * @todo parse Solution files to publish all projects with default Publish parameters (as evaluated by MSBuild).
11
+ * @param projectsToPublish An array of relative or full file paths of `.csproj`
12
+ * projects -OR- an array of {@link MSBuildProject} objects.
13
+ * The project paths will be passed to `dotnet publish` commands.
14
+ * @param projectsToPackAndPush
15
+ * Relative and/or full file paths of projects to pass to `dotnet pack`. If
16
+ * string[], only the default NuGet Source will be used. If GitHub, GitLab,
17
+ * etc. are also desired, pass {@link NugetRegistryInfo}[]
18
+ * @param dotnetNugetSignOpts A {@link DotnetNugetSignOptions} object. The value
19
+ * of the `--output` argument will be set to {@link ourDefaultPubDir} if `undefined`.
20
+ * @returns A single string of CLI commands joined by ' && '
21
+ */
22
+ export declare function configurePrepareCmd(projectsToPublish: string[] | MSBuildProject[], projectsToPackAndPush?: string[] | NugetRegistryInfo[], dotnetNugetSignOpts?: typeof DotnetNugetSignOptions.inferIn): Promise<string>;
23
+ /**
24
+ * Prepare the CLI command to push NuGet packages. This should added to the `publishCmd` option of `@semantic-release/exec`
25
+ *
26
+ * Ensure your verifyConditionsCmd is set to prevent releases failing due to bad tokens or packages!
27
+ * See {@link NugetRegistryInfo#PackDummyPackage}, {@link NugetRegistryInfo#GetPushDummyCommand}
28
+ * @param registryInfos an array of {@link NugetRegistryInfo} (or derived classes) instances.
29
+ * @param packageOutputPath Default: `${cwd()}/publish`.\
30
+ * The directory at which dotnet outputs the given projects' packages. Passed to
31
+ * `dotnet pack` via the `--output` argument.
32
+ * @returns a string of `dotnet pack` and `dotnet push` commands, joined by ' && '.
33
+ */
34
+ export declare function configureDotnetNugetPush(registryInfos: NugetRegistryInfo[], packageOutputPath?: string): string;
35
+ declare const DotnetNugetSignOptions: ObjectType<{
36
+ timestamper: Default<string, 'https://rfc3161.ai.moda/'>;
37
+ certificatePassword?: string | undefined;
38
+ hashAlgorithm?: string | undefined;
39
+ output?: string | undefined;
40
+ overwrite?: true | undefined;
41
+ timestampHashAlgorithm?: string | undefined;
42
+ verbosity?: 'q' | 'quiet' | 'm' | 'minimal' | 'n' | 'normal' | 'd' | 'detailed' | 'diag' | 'diagnostic';
43
+ } & ({
44
+ certificatePath: string;
45
+ certificateSubjectName: string;
46
+ } | {
47
+ certificatePath: string;
48
+ certificateFingerprint: string;
49
+ } | {
50
+ certificateStoreName: string;
51
+ certificateSubjectName: string;
52
+ } | {
53
+ certificateStoreName: string;
54
+ certificateFingerprint: string;
55
+ } | {
56
+ certificateStoreLocation: string;
57
+ certificateSubjectName: string;
58
+ } | {
59
+ certificateStoreLocation: string;
60
+ certificateFingerprint: string;
61
+ })>;
62
+ export {};
63
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/dotnet/helpers.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAIrE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,mBAAmB,CACvC,iBAAiB,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,EAC9C,qBAAqB,CAAC,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,EACtD,mBAAmB,CAAC,EAAE,OAAO,sBAAsB,CAAC,OAAO,GAC1D,OAAO,CAAC,MAAM,CAAC,CA0PjB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,iBAAiB,EAAE,EAGlC,iBAAiB,GAAE,MAA2B,GAC7C,MAAM,CAgBR;AAuDD,QAAA,MAAM,sBAAsB,EAAE,UAAU,CACtC;IACE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,0BAA0B,CAAC,CAAC;IACzD,mBAAmB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;IAC7B,sBAAsB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5C,SAAS,CAAC,EAAE,GAAG,GAAG,OAAO,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,QAAQ,GAAG,GAAG,GAAG,UAAU,GAAG,MAAM,GAAG,YAAY,CAAC;CACzG,GAAG,CAAC;IACH,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,MAAM,CAAC;CAChC,GAAG;IACF,eAAe,EAAE,MAAM,CAAC;IACxB,sBAAsB,EAAE,MAAM,CAAC;CAChC,GAAG;IACF,oBAAoB,EAAE,MAAM,CAAC;IAC7B,sBAAsB,EAAE,MAAM,CAAC;CAChC,GAAG;IACF,oBAAoB,EAAE,MAAM,CAAC;IAC7B,sBAAsB,EAAE,MAAM,CAAC;CAChC,GAAG;IACF,wBAAwB,EAAE,MAAM,CAAC;IACjC,sBAAsB,EAAE,MAAM,CAAC;CAChC,GAAG;IACF,wBAAwB,EAAE,MAAM,CAAC;IACjC,sBAAsB,EAAE,MAAM,CAAC;CAChC,CAAC,CAmFD,CAAC"}
@@ -0,0 +1,354 @@
1
+ import { type } from 'arktype';
2
+ import node_path from 'node:path';
3
+ import { cwd } from 'node:process';
4
+ import { MSBuildProject } from './MSBuildProject.mjs';
5
+ import { MSBuildProjectProperties } from './MSBuildProjectProperties.mjs';
6
+ import { NugetRegistryInfo } from './NugetRegistryInfo.mjs';
7
+ const ourDefaultPubDir = node_path.join('.', 'publish');
8
+
9
+ /**
10
+ * Build a prepareCmd string from .NET projects.\
11
+ * This will include a `dotnet publish` for each project's RID and TFM permutation,\
12
+ * `dotnet pack` for each project with output paths separated by NuGet Source and PackageId,\
13
+ * and `dotnet nuget sign` for each nupkg output directory.
14
+ * @todo parse Solution files to publish all projects with default Publish parameters (as evaluated by MSBuild).
15
+ * @param projectsToPublish An array of relative or full file paths of `.csproj`
16
+ * projects -OR- an array of {@link MSBuildProject} objects.
17
+ * The project paths will be passed to `dotnet publish` commands.
18
+ * @param projectsToPackAndPush
19
+ * Relative and/or full file paths of projects to pass to `dotnet pack`. If
20
+ * string[], only the default NuGet Source will be used. If GitHub, GitLab,
21
+ * etc. are also desired, pass {@link NugetRegistryInfo}[]
22
+ * @param dotnetNugetSignOpts A {@link DotnetNugetSignOptions} object. The value
23
+ * of the `--output` argument will be set to {@link ourDefaultPubDir} if `undefined`.
24
+ * @returns A single string of CLI commands joined by ' && '
25
+ */
26
+ async function configurePrepareCmd(projectsToPublish, projectsToPackAndPush, dotnetNugetSignOpts) {
27
+ const evaluatedProjects = [];
28
+
29
+ // append evaluated projects
30
+ for (const p of projectsToPublish.filter(p => p instanceof MSBuildProject)) {
31
+ evaluatedProjects.push(p);
32
+ }
33
+ if (projectsToPackAndPush) {
34
+ for (const p of projectsToPackAndPush.filter(p => p instanceof NugetRegistryInfo)) {
35
+ evaluatedProjects.push(p.project);
36
+ }
37
+ }
38
+ const dotnetPublishCmd = await formatDotnetPublish(projectsToPublish);
39
+ const dotnetPackCmd = await formatDotnetPack(projectsToPackAndPush ?? []);
40
+ const dotnetNugetSignCmd = formatDotnetNugetSign(dotnetNugetSignOpts);
41
+ return [dotnetPublishCmd, dotnetPackCmd, dotnetNugetSignCmd
42
+ // remove no-op commands
43
+ ].filter(v => v !== undefined).join(' && ');
44
+
45
+ /**
46
+ * Create a string of CLI commands to run `dotnet publish` or the Publish
47
+ * MSBuild target for one or more projects.
48
+ * @async
49
+ * @param projectsToPublish An array of one or more projects, either
50
+ * pre-evaluated (see {@link MSBuildProject.Evaluate}) or as full file paths.\
51
+ * NOTE: Although `dotnet publish` allows directory or Solution file (.sln,
52
+ * .slnx) paths, this function expects projects' full or relative file
53
+ * paths.
54
+ * @returns A Promise of a string. This string contains one or more `dotnet publish`
55
+ * commands conjoined by " && ". It may also include one or more
56
+ * `dotnet msbuild ${...} -t:PublishAll -p:Configuration=Release` commands.
57
+ */
58
+ async function formatDotnetPublish(projectsToPublish) {
59
+ /* Fun Fact: You can define a property and get the evaluated value in the same command!
60
+ ```pwsh
61
+ dotnet msbuild .\src\HXE.csproj -property:RuntimeIdentifiers="""place;holder""" -getProperty:RuntimeIdentifiers
62
+ place;holder
63
+ ```
64
+ enclosing with """ is required in pwsh to prevent the semicolon from breaking the string.
65
+ */
66
+ if (!Array.isArray(projectsToPublish) || projectsToPublish.length === 0) {
67
+ throw new Error(`Type of projectsToPublish (${typeof projectsToPublish}) is not allowed. Expected a string[] or MSBuildProject[] where length > 0.`);
68
+ }
69
+
70
+ // each may have TargetFramework OR TargetFrameworks (plural)
71
+ const evaluatedPublishProjects = await Promise.all(projectsToPublish.map(async proj => {
72
+ if (proj instanceof MSBuildProject) return proj;
73
+
74
+ // filter for projects whose full paths match the full path of the given string
75
+ const filteredProjects = evaluatedProjects.filter(p => p.Properties.MSBuildProjectFullPath === MSBuildProjectProperties.GetFullPath(proj));
76
+
77
+ // if no pre-existing MSBuildProject found,
78
+ // evaluate a new one and push it
79
+ if (filteredProjects.length === 0) {
80
+ const _proj = await MSBuildProject.Evaluate({
81
+ FullName: proj,
82
+ GetProperty: MSBuildProject.MatrixProperties,
83
+ GetItem: [],
84
+ GetTargetResult: [],
85
+ Property: {},
86
+ Targets: ['Restore']
87
+ });
88
+ evaluatedProjects.push(_proj);
89
+ return _proj;
90
+ }
91
+
92
+ /**
93
+ * Finds and returns the subjectively "best" project in {@link filteredProjects}
94
+ * @returns the subjective "best" project in {@link filteredProjects}
95
+ */
96
+ function getBest() {
97
+ let best;
98
+ if (filteredProjects.length > 0 && (best = filteredProjects[0]) instanceof MSBuildProject) return best;
99
+ throw new Error('No MSBuildProjects could be found!');
100
+ }
101
+
102
+ /*
103
+ todo: improve filtering to select "optimal" instance.
104
+ Which properties are most-needed?
105
+ For now, we just pray the project has a well-defined publish flow e.g.
106
+ @halospv3/hce.shared-config/dotnet/PublishAll.targets
107
+ */
108
+ return getBest();
109
+ }));
110
+
111
+ /**
112
+ * Returns an array of one or more `dotnet` arguments.
113
+ * @param proj An {@link MSBuildProject} to be published for one or more
114
+ * runtime-framework combinations.
115
+ * @returns If {@link proj} imports {@link ../../dotnet/PublishAll.targets}...
116
+ * ```
117
+ * [`${proj.Properties.MSBuildProjectFullPath} -t:PublishAll -p:Configuration=Release`]
118
+ * ```
119
+ * Else, an array of `dotnet publish` arguments permutations e.g.
120
+ * ```
121
+ * [
122
+ * 'myProj.csproj --runtime win7-x86 --framework net6.0',
123
+ * 'myProj.csproj --runtime win7-x64 --framework net6.0'
124
+ * ]
125
+ * ```
126
+ * @example
127
+ * const publishCmdArray = [];
128
+ * const permutations = getPublishArgsPermutations(msbuildProject);
129
+ * for (const permutation of permutations) {
130
+ * if (permutation[0] === 'PublishAll') {
131
+ * // 'dotnet msbuild full/path/to/myProj.csproj t:PublishAll'
132
+ * publishCmdArray.push(`dotnet msbuild ${permutation[1]}`)
133
+ * }
134
+ * else {
135
+ * publishCmdArray.push(`dotnet publish ${permutation}`)
136
+ * }
137
+ * }
138
+ * // return array as success-chained CLI commands.
139
+ * return publishCmdArray.join(' && ');
140
+ */
141
+ function getPublishArgsPermutations(proj) {
142
+ /**
143
+ * If the project imports PublishAll to publish for each TFM-RID
144
+ * permutation, return the appropriate command line.
145
+ */
146
+ if (proj.Targets.includes('PublishAll')) return [`"${proj.Properties.MSBuildProjectFullPath}" -t:PublishAll -p:Configuration=Release`];
147
+
148
+ // #region formatFrameworksAndRuntimes
149
+ const tfmRidPermutations = []; // forEach, run dotnet [proj.Properties.MSBuildProjectFullPath,...v]
150
+ const RIDs = proj.Properties.RuntimeIdentifiers.split(';').filter(v => v !== '');
151
+ const TFMs = proj.Properties.TargetFrameworks.split(';').filter(v => v !== '');
152
+ if (TFMs.length === 0 && RIDs.length === 0) return [`"${proj.Properties.MSBuildProjectFullPath}"`];
153
+ if (RIDs.length > 0) {
154
+ if (TFMs.length > 0) {
155
+ for (const RID of RIDs) {
156
+ for (const TFM of TFMs) {
157
+ tfmRidPermutations.push(`--runtime ${RID} --framework ${TFM}`);
158
+ }
159
+ }
160
+ } else {
161
+ // assume singular TFM. No need to specify it.
162
+ for (const RID of RIDs) {
163
+ tfmRidPermutations.push(`--runtime ${RID}`);
164
+ }
165
+ }
166
+ } else if (TFMs.length > 0) {
167
+ for (const TFM of TFMs) {
168
+ tfmRidPermutations.push(`--framework ${TFM}`);
169
+ }
170
+ }
171
+
172
+ /** prepend each set of args with the project's path */
173
+ return tfmRidPermutations.map(permArgs => `"${proj.Properties.MSBuildProjectFullPath}" ${permArgs}`);
174
+ // #endregion formatFrameworksAndRuntimes
175
+ }
176
+ const publishCmds = [];
177
+ /** convert {@link evaluatedPublishProjects} to sets of space-separated CLI args. */
178
+ const argsSets = evaluatedPublishProjects.map(proj => getPublishArgsPermutations(proj));
179
+ for (const args of argsSets) {
180
+ if (typeof args === 'string') throw new Error(`\`args\` should not be a string!`);
181
+ for (const permutation of args) {
182
+ if (typeof permutation === 'string' && permutation.length === 1) throw new Error('Something has gone terribly wrong. A `dotnet publish` argument set was split to single characters!');
183
+ if (/".+" -t:PublishAll -p:Configuration=Release/.test(permutation)) publishCmds.push(`dotnet msbuild ${permutation}`);else publishCmds.push(`dotnet publish ${permutation}`);
184
+ }
185
+ }
186
+
187
+ // For each argSet, create a new exec command. Then, join all commands with ' && ' so they are executed serially, synchronously.
188
+ // e.g. `dotnet publish project.csproj --runtime win7-x86 --framework net6.0 && dotnet publish project.csproj --runtime win-x64 --framework net8.0
189
+ return publishCmds.join(' && ');
190
+ }
191
+
192
+ /**
193
+ * @param projectsToPackAndPush a string[] or {@link NugetRegistryInfo}[].
194
+ * If a string[], the string must be the platform-dependent (not file://),
195
+ * full path(s) to one or more projects with the .NET "Pack" MSBuild target.
196
+ * See {@link https://learn.microsoft.com/en-us/dotnet/core/tools/dotnet-pack}
197
+ * for command line usage.
198
+ * @returns one or more command line strings joined with ' && '.
199
+ * Each command line comprises the `dotnet pack` command, a project file path,
200
+ * and a hardcoded output path (`--output ${cwd()}/publish`)
201
+ */
202
+ async function formatDotnetPack(projectsToPackAndPush) {
203
+ if (projectsToPackAndPush.length === 0) return undefined;
204
+ return await Promise.all(projectsToPackAndPush.map(async proj => {
205
+ if (proj instanceof NugetRegistryInfo) return proj;
206
+ const msbpArr = await Promise.all(await MSBuildProject.PackableProjectsToMSBuildProjects([proj]));
207
+ if (msbpArr.length === 0 || msbpArr[0] === undefined) {
208
+ throw new Error('This should be impossible!');
209
+ }
210
+ const msbp = msbpArr[0];
211
+ evaluatedProjects.push(msbp);
212
+ return new NugetRegistryInfo({
213
+ project: msbp
214
+ });
215
+ })).then(nriArray => {
216
+ return nriArray.map(nri => nri.GetPackCommand(NugetRegistryInfo.PackPackagesOptionsType.from({}))).join(' && ');
217
+ });
218
+ }
219
+ }
220
+
221
+ /**
222
+ * Prepare the CLI command to push NuGet packages. This should added to the `publishCmd` option of `@semantic-release/exec`
223
+ *
224
+ * Ensure your verifyConditionsCmd is set to prevent releases failing due to bad tokens or packages!
225
+ * See {@link NugetRegistryInfo#PackDummyPackage}, {@link NugetRegistryInfo#GetPushDummyCommand}
226
+ * @param registryInfos an array of {@link NugetRegistryInfo} (or derived classes) instances.
227
+ * @param packageOutputPath Default: `${cwd()}/publish`.\
228
+ * The directory at which dotnet outputs the given projects' packages. Passed to
229
+ * `dotnet pack` via the `--output` argument.
230
+ * @returns a string of `dotnet pack` and `dotnet push` commands, joined by ' && '.
231
+ */
232
+ function configureDotnetNugetPush(registryInfos,
233
+ // Explicit type required by JSR
234
+ // eslint-disable-next-line @typescript-eslint/no-inferrable-types
235
+ packageOutputPath = `${cwd()}/publish`) {
236
+ if (registryInfos.some(registry => registry.source.trim() === '')) throw new Error('The URL for one of the provided NuGet registries was empty or whitespace.');
237
+ const packCmds = registryInfos.map(nri => nri.GetPackCommand({
238
+ output: packageOutputPath
239
+ }, true, true));
240
+ const pushCmds = registryInfos.map(nri => nri.GetPushCommand({
241
+ root: packageOutputPath
242
+ }, true, true));
243
+ return [...packCmds, ...pushCmds].join(' && ');
244
+ }
245
+
246
+ /**
247
+ * You should try {@link ../../dotnet/SignAfterPack.targets}!.
248
+ * @param opts A {@link DotnetNugetSignOptions} object to be deconstructed and
249
+ * passed to `dotnet nuget sign` as args.
250
+ * @returns `dotnet nuget sign {...}`
251
+ */
252
+ function formatDotnetNugetSign(opts) {
253
+ if (opts === undefined) return undefined;
254
+ const validOpts = DotnetNugetSignOptions.from(opts);
255
+ const args = ['--timestamper', validOpts.timestamper, '-o', validOpts.output ?? ourDefaultPubDir];
256
+ if (validOpts.certificatePassword) args.push('---certificate-password', validOpts.certificatePassword);
257
+ if (validOpts.hashAlgorithm) args.push('--hash-algorithm', validOpts.hashAlgorithm);
258
+ if (validOpts.overwrite) args.push('--overwrite');
259
+ if (validOpts.timestampHashAlgorithm) args.push('--timestamp-hash-algorithm', validOpts.timestampHashAlgorithm);
260
+ if (validOpts.verbosity) args.push('-v', validOpts.verbosity);
261
+ if ('certificatePath' in validOpts) args.push('--certificate-path', validOpts.certificatePath);else if ('certificateStoreName' in validOpts) {
262
+ SetSubjectNameOrFingerprint();
263
+ args.push('--certificate-store-name', validOpts.certificateStoreName);
264
+ } else if ('certificateStoreLocation' in validOpts) {
265
+ SetSubjectNameOrFingerprint();
266
+ args.push('--certificate-store-location', validOpts.certificateStoreLocation);
267
+ } else throw new Error('No code signing certificate was specified!');
268
+ return `dotnet nuget sign ${args.join(' ')} `;
269
+
270
+ // eslint-disable-next-line jsdoc/require-jsdoc
271
+ function SetSubjectNameOrFingerprint() {
272
+ if ('certificateSubjectName' in validOpts) args.push('--certificate-subject-name', validOpts.certificateSubjectName);else if ('certificateFingerprint' in validOpts) args.push('--certificate-fingerprint', validOpts.certificateFingerprint);else throw new Error('If certificateStoreName or certificateStoreLocation is set, either certificateSubjectName or certificateFingerprint must also be set!');
273
+ }
274
+ }
275
+ const DotnetNugetSignOptions = type({
276
+ /**
277
+ * Password for the certificate, if needed. This option can be used to specify
278
+ * the password for the certificate. The command will throw an error message
279
+ * if certificate is password protected but password is not provided as input.
280
+ */
281
+ 'certificatePassword?': 'string',
282
+ /**
283
+ * Hash algorithm to be used to sign the package. Defaults to SHA256.
284
+ */
285
+ 'hashAlgorithm?': 'string | "SHA256"',
286
+ /**
287
+ * Directory where the signed package(s) should be saved. By default the
288
+ * original package is overwritten by the signed package.
289
+ */
290
+ 'output?': 'string',
291
+ /**
292
+ * Switch to indicate if the current signature should be overwritten. By
293
+ * default the command will fail if the package already has a signature.
294
+ */
295
+ 'overwrite?': 'true',
296
+ /**
297
+ * URL to an RFC 3161 timestamping server.
298
+ */
299
+ timestamper: 'string = "https://rfc3161.ai.moda/"',
300
+ /**
301
+ * Hash algorithm to be used to sign the package. Defaults to SHA256.
302
+ */
303
+ 'timestampHashAlgorithm?': 'string | "SHA256"',
304
+ /**
305
+ * Set the verbosity level of the command. Allowed values are q[uiet],
306
+ * m[inimal], n[ormal], d[etailed], and diag[nostic].
307
+ */
308
+ 'verbosity?': '"q"|"quiet"|"m"|"minimal"|"n"|"normal"|"d"|"detailed"|"diag"|"diagnostic"'
309
+ }).and(type({
310
+ /**
311
+ * File path to the certificate to be used while signing the package.
312
+ */
313
+ certificatePath: 'string'
314
+ }).or(type({
315
+ /**
316
+ * Name of the X.509 certificate store to use to search for the
317
+ * certificate. Defaults to "My", the X.509 certificate store for personal
318
+ * certificates.
319
+ *
320
+ * This option should be used when specifying the certificate via
321
+ * --certificate-subject-name or --certificate-fingerprint options.
322
+ */
323
+ certificateStoreName: 'string'
324
+ }).or({
325
+ /**
326
+ * Name of the X.509 certificate store use to search for the
327
+ * certificate. Defaults to "CurrentUser", the X.509 certificate store
328
+ * used by the current user.
329
+ *
330
+ * This option should be used when specifying the certificate via
331
+ * --certificate-subject-name or --certificate-fingerprint options.
332
+ */
333
+ certificateStoreLocation: 'string'
334
+ })).and(type({
335
+ /**
336
+ * Subject name of the certificate used to search a local certificate
337
+ * store for the certificate. The search is a case-insensitive string
338
+ * comparison using the supplied value, which will find all certificates
339
+ * with the subject name containing that string, regardless of other
340
+ * subject values. The certificate store can be specified by
341
+ * --certificate-store-name and --certificate-store-location options.
342
+ */
343
+ certificateSubjectName: 'string'
344
+ }).or({
345
+ /**
346
+ * SHA-256, SHA-384 or SHA-512 fingerprint of the certificate used to
347
+ * search a local certificate store for the certificate. The certificate
348
+ * store can be specified by --certificate-store-name and
349
+ * --certificate-store-location options.
350
+ */
351
+ certificateFingerprint: 'string'
352
+ })));
353
+ export { configureDotnetNugetPush, configurePrepareCmd };
354
+ //# sourceMappingURL=helpers.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.mjs","sources":["../../src/dotnet/helpers.ts"],"sourcesContent":null,"names":["path","MSBPP"],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ export * from './GithubNugetRegistryInfo.js';
2
+ export * from './GitlabNugetRegistryInfo.js';
3
+ export * from './helpers.js';
4
+ export * from './IsNextVersionAlreadyPublished.cli.js';
5
+ export * from './MSBuildProject.js';
6
+ export * from './MSBuildProjectProperties.js';
7
+ export * from './NugetProjectProperties.js';
8
+ export * from './NugetRegistryInfo.js';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/dotnet/index.ts"],"names":[],"mappings":"AAAA,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,cAAc,CAAC;AAC7B,cAAc,wCAAwC,CAAC;AACvD,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,wBAAwB,CAAC"}
@@ -0,0 +1,9 @@
1
+ export { DefaultGithubTokenEnvVars, GHNRIOpts, GithubNugetRegistryInfo } from './GithubNugetRegistryInfo.mjs';
2
+ export { GLNRIOpts, GitlabNugetRegistryInfo } from './GitlabNugetRegistryInfo.mjs';
3
+ export { configureDotnetNugetPush, configurePrepareCmd } from './helpers.mjs';
4
+ import './IsNextVersionAlreadyPublished.cli.mjs';
5
+ export { EvaluationOptions, MSBuildEvaluationOutput, MSBuildProject, _InternalMSBuildEvaluationTypes, catchCsc2012 } from './MSBuildProject.mjs';
6
+ export { MSBuildProjectProperties } from './MSBuildProjectProperties.mjs';
7
+ export { NPPGetterNames, NugetProjectProperties } from './NugetProjectProperties.mjs';
8
+ export { NRIOpts, NRIOptsBase, NugetRegistryInfo, getGithubOutput, getGithubOutputSync } from './NugetRegistryInfo.mjs';
9
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":";;;;;;;"}
@@ -0,0 +1,2 @@
1
+ export * from './dotnet/index.js';
2
+ //# sourceMappingURL=dotnet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dotnet.d.ts","sourceRoot":"","sources":["../src/dotnet.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC"}
package/mjs/dotnet.mjs ADDED
@@ -0,0 +1,9 @@
1
+ import './dotnet/index.mjs';
2
+ export { DefaultGithubTokenEnvVars, GHNRIOpts, GithubNugetRegistryInfo } from './dotnet/GithubNugetRegistryInfo.mjs';
3
+ export { GLNRIOpts, GitlabNugetRegistryInfo } from './dotnet/GitlabNugetRegistryInfo.mjs';
4
+ export { configureDotnetNugetPush, configurePrepareCmd } from './dotnet/helpers.mjs';
5
+ export { EvaluationOptions, MSBuildEvaluationOutput, MSBuildProject, _InternalMSBuildEvaluationTypes, catchCsc2012 } from './dotnet/MSBuildProject.mjs';
6
+ export { MSBuildProjectProperties } from './dotnet/MSBuildProjectProperties.mjs';
7
+ export { NPPGetterNames, NugetProjectProperties } from './dotnet/NugetProjectProperties.mjs';
8
+ export { NRIOpts, NRIOptsBase, NugetRegistryInfo, getGithubOutput, getGithubOutputSync } from './dotnet/NugetRegistryInfo.mjs';
9
+ //# sourceMappingURL=dotnet.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dotnet.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":";;;;;;;"}
@@ -0,0 +1,4 @@
1
+ import type { TSESLint } from '@typescript-eslint/utils';
2
+ declare const config: TSESLint.FlatConfig.ConfigArray;
3
+ export default config;
4
+ //# sourceMappingURL=eslintConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eslintConfig.d.ts","sourceRoot":"","sources":["../src/eslintConfig.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AA+FzD,QAAA,MAAM,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,WA+BjC,CAAC;AACF,eAAe,MAAM,CAAC"}
@@ -0,0 +1,98 @@
1
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
2
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3
+ function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
4
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
5
+ function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
6
+ import eslint from '@eslint/js';
7
+ import stylistic from '@stylistic/eslint-plugin';
8
+ import jsonc from 'eslint-plugin-jsonc';
9
+ import globals from 'globals/globals.json' with { type: 'json' };
10
+ import tseslint from 'typescript-eslint';
11
+
12
+ // https://eslint.org/docs/latest/use/configure/migration-guide#using-eslintrc-configs-in-flat-config
13
+ // https://www.google.com/search?q=javascript+recurse+through+object+and+remove+undefined+properties
14
+
15
+ const globalIgnores = {
16
+ name: 'global ignores',
17
+ ignores: ['_tsout/**/*', '_tsout/*', '_tsout/', 'cjs/**/*', 'cjs/*/*', 'cjs/*', 'mjs/**/*', 'mjs/*', 'mjs/', 'node_modules/**/*', '**/node_modules/**/*', '**/*.tsbuildinfo', '**/bin/**/*', '**/obj/**/*']
18
+ };
19
+ const json_json = _objectSpread(_objectSpread({}, jsonc.configs['flat/recommended-with-json'].map(v => v).flatMap(a => jsonCfgReducer(a, {}))
20
+ // eslint-disable-next-line unicorn/no-array-reduce
21
+ .reduce((accumulator, element) => jsonCfgReducer(accumulator, element), {})), {}, {
22
+ name: 'flat/recommended-with-json - https://github.com/ota-meshi/eslint-plugin-jsonc',
23
+ files: ['*.json', '**/*.json'],
24
+ ignores: globalIgnores.ignores
25
+ });
26
+ const json_json5 = _objectSpread(_objectSpread({}, jsonc.configs['flat/recommended-with-json5'].map(v => v).flatMap(a => jsonCfgReducer(a, {}))
27
+ // eslint-disable-next-line unicorn/no-array-reduce
28
+ .reduce((accumulator, element) => jsonCfgReducer(accumulator, element), {})), {}, {
29
+ name: 'flat/recommended-with-json5 - https://github.com/ota-meshi/eslint-plugin-jsonc',
30
+ files: ['*.json5', '**/*.json5'],
31
+ ignores: globalIgnores.ignores
32
+ });
33
+ const json_jsonc = _objectSpread(_objectSpread({}, jsonc.configs['flat/recommended-with-jsonc'].map(v => v).flatMap(a => jsonCfgReducer(a, {}))
34
+ // eslint-disable-next-line unicorn/no-array-reduce
35
+ .reduce((accumulator, element) => jsonCfgReducer(accumulator, element), {})), {}, {
36
+ name: 'flat/recommended-with-jsonc - https://github.com/ota-meshi/eslint-plugin-jsonc',
37
+ files: ['*.jsonc', '**/*.jsonc'],
38
+ ignores: globalIgnores.ignores
39
+ });
40
+ const stylisticWarn = stylistic.configs.customize({
41
+ quoteProps: 'as-needed',
42
+ semi: true,
43
+ indent: 2
44
+ });
45
+ // change all stylistic error-severity to warn-severity. Style violations should not denote code errors.
46
+ for (const key in stylisticWarn.rules) {
47
+ const element = stylisticWarn.rules[key];
48
+ if (Array.isArray(element) && (element[0] === 2 || element[0] === 'error')) element[0] = 'warn';else if (element === 2 || element === 'error') {
49
+ stylisticWarn.rules[key] = 'warn';
50
+ }
51
+ }
52
+ stylisticWarn.rules['@stylistic/no-extra-parens'] = ['warn', 'all', {
53
+ allowParensAfterCommentPattern: '@type|@satisfies',
54
+ nestedBinaryExpressions: false
55
+ }];
56
+ stylisticWarn.rules['@stylistic/semi'] = ['warn', 'always', {
57
+ omitLastInOneLineBlock: false,
58
+ omitLastInOneLineClassBody: false
59
+ }];
60
+ const config = tseslint.config(json_json, json_json5, json_jsonc, {
61
+ name: 'TSJS',
62
+ extends: [eslint.configs.recommended, ...tseslint.configs.strictTypeChecked, ...tseslint.configs.stylisticTypeChecked, stylisticWarn],
63
+ files: ['**/*.ts', '**/*.cts', '**/*.mts', '**/*.js', '**/*.cjs', '**/*.mjs', '**/*.jsx', '**/*.tsx'],
64
+ ignores: globalIgnores.ignores,
65
+ languageOptions: {
66
+ parserOptions: {
67
+ projectService: true
68
+ },
69
+ globals: globals.node
70
+ }
71
+ }, globalIgnores);
72
+ /**
73
+ * Merge erroneously mutually-exclusive configs from `eslint-plugin-jsonc`.
74
+ * @param a A config exported by `eslint-plugin-jsonc` -OR- the output of this function.
75
+ * @param b A config exported by `eslint-plugin-jsonc` -OR- the output of this function.
76
+ * @returns A merged combination of {@link a} and {@link b}.
77
+ */
78
+ function jsonCfgReducer(a, b) {
79
+ const baseRules = jsonc.configs['flat/base'].find(v => v.rules !== undefined)?.rules ?? (() => {
80
+ throw new Error('Unable to find jsonc base rules');
81
+ })();
82
+ return {
83
+ files: jsonc.configs['flat/base'].filter(v => v.files !== undefined).flatMap(v => v.files),
84
+ plugins: {
85
+ jsonc: jsonc.configs['flat/base'].find(v => v.plugins?.jsonc !== undefined)?.plugins?.jsonc ?? (() => {
86
+ throw new Error('Unable to find jsonc plugin');
87
+ })()
88
+ },
89
+ languageOptions: {
90
+ parser: jsonc.configs['flat/base'].find(v => v.languageOptions?.parser)?.languageOptions?.parser ?? (() => {
91
+ throw new Error('Unable to find jsonc parser');
92
+ })()
93
+ },
94
+ rules: _objectSpread(_objectSpread(_objectSpread({}, a.rules), b.rules), baseRules)
95
+ };
96
+ }
97
+ export { config as default };
98
+ //# sourceMappingURL=eslintConfig.mjs.map