@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":"eslintConfig.mjs","sources":["../src/eslintConfig.ts"],"sourcesContent":null,"names":[],"mappings":"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"}
package/mjs/index.d.ts ADDED
@@ -0,0 +1,3 @@
1
+ /** Runs HCE.Shared and returns a semantic-release "shareable configuration" object. */
2
+ export { baseConfig as default } from './semanticReleaseConfig.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,OAAO,EAAE,UAAU,IAAI,OAAO,EAAE,MAAM,4BAA4B,CAAC"}
package/mjs/index.mjs ADDED
@@ -0,0 +1,4 @@
1
+ export { baseConfig as default } from './semanticReleaseConfig.mjs';
2
+
3
+ /** Runs HCE.Shared and returns a semantic-release "shareable configuration" object. */
4
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../src/index.ts"],"sourcesContent":null,"names":[],"mappings":";;AAAA"}
@@ -0,0 +1,18 @@
1
+ import type { PluginSpec } from 'semantic-release';
2
+ /**
3
+ * @param plugins {@link SemanticReleaseOptions.plugins}
4
+ * @param afterPluginsIDs The `string` IDs of plugins that the {@link insertPluginIDs} must follow.
5
+ * @param insertPluginIDs The `string` IDs of plugins to insert into a copy of the {@link plugins} array.
6
+ * @param beforePluginsIDs The `string` IDs of plugins that the {@link insertPluginIDs} must precede.
7
+ * @returns
8
+ * A modified copy of {@link plugins} with the given plugins inserted
9
+ * before {@link beforePluginsIDs} and after {@link afterPluginsIDs}.
10
+ *
11
+ * Inserted plugins will be a `[string, {}]` tuple.
12
+ * @throws {ReferenceError} This should never occur. One or more of the
13
+ * {@link afterPluginsIDs} had been found in {@link plugins}, but a `.find` call
14
+ * to get the highest index of the found plugins had returned `undefined`
15
+ * @throws {AggregateError} One or more error occurred when inserting plugins: `insertPlugin was instructed to insert one or more plugins after [${afterPluginsIDs.map(v => '"' + v + '"').join(', ')}] and before [${beforePluginsIDs.map(v => `"${v}"`).join(', ')}], but ${JSON.stringify(pluginIDs[indexOfLastAfter])} comes after ${JSON.stringify(pluginIDs[index])}!`
16
+ */
17
+ export declare function insertPlugin(plugins: Exclude<PluginSpec, string>[], afterPluginsIDs: string[], insertPluginIDs: string[], beforePluginsIDs: string[]): Exclude<PluginSpec, string>[];
18
+ //# sourceMappingURL=insertPlugins.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insertPlugins.d.ts","sourceRoot":"","sources":["../src/insertPlugins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAEX,MAAM,kBAAkB,CAAC;AA0C1B;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,EACtC,eAAe,EAAE,MAAM,EAAE,EACzB,eAAe,EAAE,MAAM,EAAE,EACzB,gBAAgB,EAAE,MAAM,EAAE,GACzB,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAkD/B"}
@@ -0,0 +1,73 @@
1
+ /**
2
+ * @since 3.0.0
3
+ * @deprecated EXPERIMENTAL
4
+ */
5
+
6
+ /**
7
+ * [W.I.P. STUB]
8
+ *
9
+ * Given an array of {@link PluginInsertRuleSet}s, insert plugins into a
10
+ * {@link https://developer.mozilla.org/en-US/docs/Web/API/Window/structuredClone structured clone}
11
+ * (i.e. deep-copy) of the {@link plugins} array, sort the plugin entries, and
12
+ * return the modified array copy.
13
+ * @todo implement
14
+ * @param plugins Your {@link SemanticReleaseOptions.plugins} array.
15
+ * @param inserts An array of {@link PluginInsertRuleSet}s.
16
+ *
17
+ * If a plugin is already in the plugins array, inserting is skipped. The
18
+ * existing entry is sorted according to its ruleset.
19
+ *
20
+ * If any rulesets conflict, an error will be thrown.
21
+ * - error: A must precede B; B must precede A.
22
+ * - pass: C must precede D and E; D must precede E and follow B. Add ruleset
23
+ * interface: {Id:string, BeforeIds:string[], AfterIds:string[] }
24
+ * @returns A deep-cloned, modified copy of {@link plugins} with plugins
25
+ * inserted and sorted where needed.
26
+ * @since 3.0.0
27
+ * @deprecated EXPERIMENTAL
28
+ */
29
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
30
+
31
+ /**
32
+ * @param plugins {@link SemanticReleaseOptions.plugins}
33
+ * @param afterPluginsIDs The `string` IDs of plugins that the {@link insertPluginIDs} must follow.
34
+ * @param insertPluginIDs The `string` IDs of plugins to insert into a copy of the {@link plugins} array.
35
+ * @param beforePluginsIDs The `string` IDs of plugins that the {@link insertPluginIDs} must precede.
36
+ * @returns
37
+ * A modified copy of {@link plugins} with the given plugins inserted
38
+ * before {@link beforePluginsIDs} and after {@link afterPluginsIDs}.
39
+ *
40
+ * Inserted plugins will be a `[string, {}]` tuple.
41
+ * @throws {ReferenceError} This should never occur. One or more of the
42
+ * {@link afterPluginsIDs} had been found in {@link plugins}, but a `.find` call
43
+ * to get the highest index of the found plugins had returned `undefined`
44
+ * @throws {AggregateError} One or more error occurred when inserting plugins: `insertPlugin was instructed to insert one or more plugins after [${afterPluginsIDs.map(v => '"' + v + '"').join(', ')}] and before [${beforePluginsIDs.map(v => `"${v}"`).join(', ')}], but ${JSON.stringify(pluginIDs[indexOfLastAfter])} comes after ${JSON.stringify(pluginIDs[index])}!`
45
+ */
46
+ function insertPlugin(plugins, afterPluginsIDs, insertPluginIDs, beforePluginsIDs) {
47
+ const pluginIDs = plugins.map(v => typeof v === 'string' ? v : v[0]);
48
+
49
+ // if any beforePluginIDs are ordered before the last afterPlugin, throw. Impossible to sort.
50
+
51
+ const indexOfLastAfter = afterPluginsIDs.filter(v => pluginIDs.includes(v)).map(v => pluginIDs.indexOf(v)).sort().find((_v, i, obj) => i === obj.length - 1);
52
+ if (undefined === indexOfLastAfter) throw new ReferenceError('An attempt to get the last element of an array returned undefined.');
53
+ const indicesOfBefore = beforePluginsIDs.filter(v => pluginIDs.includes(v)).map(v => pluginIDs.indexOf(v)).sort();
54
+
55
+ // This for-of collects *all* sorting errors. The resulting AggregateError
56
+ // notifies the API user of *all* errors in the order rather than just the
57
+ // first error encountered.
58
+ const errors = [];
59
+ for (const index of indicesOfBefore) {
60
+ if (index <= indexOfLastAfter) {
61
+ errors.push(new Error(`insertPlugin was instructed to insert one or more plugins after [${afterPluginsIDs.map(v => '"' + v + '"').join(', ')}] and before [${beforePluginsIDs.map(v => `"${v}"`).join(', ')}], but ${JSON.stringify(pluginIDs[indexOfLastAfter])} comes after ${JSON.stringify(pluginIDs[index])}!`));
62
+ }
63
+ }
64
+ if (errors.length > 0) throw new AggregateError(errors, 'One or more errors occurred while inserting plugin configs into the Semantic Release config!');
65
+
66
+ // insert plugin(s)
67
+
68
+ const beforeInsert = plugins.slice(0, indexOfLastAfter + 1);
69
+ const afterInsert = plugins.slice(indexOfLastAfter + 1, plugins.length + 1);
70
+ return [...beforeInsert, ...insertPluginIDs.map(id => [id, {}]), ...afterInsert];
71
+ }
72
+ export { insertPlugin };
73
+ //# sourceMappingURL=insertPlugins.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insertPlugins.mjs","sources":["../src/insertPlugins.ts"],"sourcesContent":null,"names":[],"mappings":"AAAA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAAS,YAAY,CAAC,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE;AAC1F,EAAE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;;AAEtE;;AAEA,EAAE,MAAM,gBAAgB,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;AAC9J,EAAE,IAAI,SAAS,KAAK,gBAAgB,EAAE,MAAM,IAAI,cAAc,CAAC,oEAAoE,CAAC;AACpI,EAAE,MAAM,eAAe,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;;AAEnH;AACA;AACA;AACA,EAAE,MAAM,MAAM,GAAG,EAAE;AACnB,EAAE,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE;AACvC,IAAI,IAAI,KAAK,IAAI,gBAAgB,EAAE;AACnC,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC,iEAAiE,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,gBAAgB,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3T;AACA;AACA,EAAE,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,MAAM,IAAI,cAAc,CAAC,MAAM,EAAE,8FAA8F,CAAC;;AAEzJ;;AAEA,EAAE,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,GAAG,CAAC,CAAC;AAC7D,EAAE,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,gBAAgB,GAAG,CAAC,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;AAC7E,EAAE,OAAO,CAAC,GAAG,YAAY,EAAE,GAAG,eAAe,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC;AAClF;;;;"}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=semantic-release__commit-analyzer.d.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic-release__commit-analyzer.d.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=semantic-release__exec.d.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic-release__exec.d.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=semantic-release__git.d.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic-release__git.d.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=semantic-release__github.d.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic-release__github.d.mjs","sources":[],"sourcesContent":null,"names":[],"mappings":""}
@@ -0,0 +1,97 @@
1
+ import type { Options as SRCommitAnalyzerOptions } from '@semantic-release/commit-analyzer';
2
+ import type { Options as SRExecOptions } from '@semantic-release/exec';
3
+ import type { Options as SRGitOptions } from '@semantic-release/git';
4
+ import type { Options as SRGithubOptions } from '@semantic-release/github';
5
+ import type { PluginSpec } from 'semantic-release';
6
+ import { DefaultOptions } from './setupGitPluginSpec.js';
7
+ export interface SRReleaseNotesGeneratorOptions {
8
+ /**
9
+ * conventional-changelog preset.
10
+ * @default 'angular'
11
+ */
12
+ preset?: 'angular' | 'atom' | 'codemirror' | 'ember' | 'eslint' | 'express' | 'jquery' | 'jscs' | 'jshint' | 'conventionalcommits' | (string & Record<never, never>) | undefined;
13
+ /**
14
+ * Requireable npm package with a custom conventional-changelog preset.
15
+ */
16
+ config?: string | undefined;
17
+ /**
18
+ * Additional `conventional-changelog-parser` options that will overwrite ones loaded by `preset` or `config`.
19
+ */
20
+ parserOpts: object;
21
+ /**
22
+ * Additional `conventional-changelog-writer` options that will overwrite ones loaded by `preset` or `config`.
23
+ */
24
+ writerOpts: object;
25
+ }
26
+ /**
27
+ * A two-type PluginSpec to tie a plugin's name to its Options type. This is
28
+ * intended for use by plugins to associate their Options type with their plugin
29
+ * name.
30
+ */
31
+ export type PluginSpecTuple<P extends string = string, T = unknown> = [P, T];
32
+ export type PluginSpecSRCommitAnalyzer<V extends SRCommitAnalyzerOptions = SRCommitAnalyzerOptions> = PluginSpecTuple<'@semantic-release/commit-analyzer', V>;
33
+ export type PluginSpecSRChangelog<V extends Record<'changelogFile' | 'changelogTitle', string>> = PluginSpecTuple<'@semantic-release/changelog', V>;
34
+ export type PluginSpecExportData<V extends Record<string, unknown> = Record<string, unknown>> = PluginSpecTuple<'semantic-release-export-data', V>;
35
+ export type PluginSpecSRReleaseNotesGen<V extends SRReleaseNotesGeneratorOptions = SRReleaseNotesGeneratorOptions> = PluginSpecTuple<'@semantic-release/release-notes-generator', V>;
36
+ export type PluginSpecSRExec<V extends SRExecOptions = SRExecOptions> = PluginSpecTuple<'@semantic-release/exec', V>;
37
+ export type PluginSpecSRGit<V extends SRGitOptions = SRGitOptions> = PluginSpecTuple<'@semantic-release/git', V>;
38
+ export type PluginSpecSRGithub<V extends SRGithubOptions = SRGithubOptions> = PluginSpecTuple<'@semantic-release/github', V>;
39
+ /**
40
+ * @satisfies { Readonly<PluginSpec[]> }
41
+ */
42
+ export declare const defaultPlugins: readonly [
43
+ '@semantic-release/commit-analyzer',
44
+ '@semantic-release/release-notes-generator',
45
+ '@semantic-release/npm',
46
+ '@semantic-release/github'
47
+ ];
48
+ /**
49
+ * @see baseConfig
50
+ */
51
+ declare const _baseConfig: {
52
+ /** @see https://semantic-release.gitbook.io/semantic-release/usage/plugins#plugin-options-configuration */
53
+ preset: "conventionalcommits";
54
+ branches: ["main", {
55
+ name: "develop";
56
+ channel: "develop";
57
+ prerelease: true;
58
+ }];
59
+ plugins: [PluginSpecSRCommitAnalyzer, PluginSpecExportData, PluginSpecSRReleaseNotesGen, PluginSpecSRChangelog<Record<"changelogFile" | "changelogTitle", string>>, PluginSpecSRGit<typeof DefaultOptions>, PluginSpecSRExec, PluginSpecSRGithub<{
60
+ addReleases: "bottom";
61
+ assets: [{
62
+ path: "./publish/*";
63
+ }];
64
+ }>] | Exclude<PluginSpec, string>[];
65
+ };
66
+ /**
67
+ * The base configuration for various Semantic Release scenarios.
68
+ * - Prefers preset "conventionalcommits"
69
+ * (Conventional-Changelog-ConventionalCommits).
70
+ * - Creates tags and release commits on "main" branch, pre-releases on
71
+ * "develop" branch in "develop" channel.
72
+ * - Creates GitHub Releases.
73
+ * - Exports the following variables as GitHub Actions outputs:
74
+ * - "new-release-published": "true" | "false"
75
+ * - "new-release-version" : string
76
+ * - "new-release-git-tag" : string
77
+ * - includes default plugins (except `@semantic-release/npm`) and more
78
+ * - `@semantic-release/commit-analyzer`
79
+ * - semantic-release-export-data
80
+ * - `@semantic-release/release-notes-generator`
81
+ * - `@semantic-release/changelog`
82
+ * - `@semantic-release/git`
83
+ * - add modified CHANGELOG.md in release commit
84
+ * - `@semantic-release/exec`
85
+ * - does nothing by default. Included for convenience.
86
+ * - `@semantic-release/github`
87
+ * - uploads all files from `./publish/*`. This is non-recursive.
88
+ * - adds a list of links to related release pages (e.g. the release's page on npmjs.com)
89
+ *
90
+ * (OPTIONAL) update static Version strings before Git plugin
91
+ * - https://github.com/jpoehnelt/semantic-release-replace-plugin
92
+ * - https://github.com/droidsolutions/semantic-release-update-file
93
+ * @satisfies {Options}
94
+ */
95
+ export declare const baseConfig: typeof _baseConfig;
96
+ export {};
97
+ //# sourceMappingURL=semanticReleaseConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semanticReleaseConfig.d.ts","sourceRoot":"","sources":["../src/semanticReleaseConfig.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import { DefaultOptions } from './setupGitPluginSpec.mjs';
2
+
3
+ /**
4
+ * A two-type PluginSpec to tie a plugin's name to its Options type. This is
5
+ * intended for use by plugins to associate their Options type with their plugin
6
+ * name.
7
+ */
8
+
9
+ /**
10
+ * @satisfies { Readonly<PluginSpec[]> }
11
+ */
12
+ const defaultPlugins = Object.freeze(['@semantic-release/commit-analyzer', '@semantic-release/release-notes-generator', '@semantic-release/npm', '@semantic-release/github']);
13
+
14
+ // define as const for string literals in type, then...
15
+ /**
16
+ * @see baseConfig
17
+ */
18
+ const _baseConfig = {
19
+ /** @see https://semantic-release.gitbook.io/semantic-release/usage/plugins#plugin-options-configuration */
20
+ preset: 'conventionalcommits',
21
+ branches: ['main', {
22
+ name: 'develop',
23
+ channel: 'develop',
24
+ prerelease: true
25
+ }],
26
+ plugins: [['@semantic-release/commit-analyzer', {}], ['semantic-release-export-data', {}], ['@semantic-release/release-notes-generator', {}], ['@semantic-release/changelog', {}], ['@semantic-release/git', DefaultOptions], ['@semantic-release/exec', {}], ['@semantic-release/github', {
27
+ addReleases: 'bottom',
28
+ assets: ['./publish/*', '!./publish/.gitkeep']
29
+ }]]
30
+ };
31
+
32
+ /**
33
+ * The base configuration for various Semantic Release scenarios.
34
+ * - Prefers preset "conventionalcommits"
35
+ * (Conventional-Changelog-ConventionalCommits).
36
+ * - Creates tags and release commits on "main" branch, pre-releases on
37
+ * "develop" branch in "develop" channel.
38
+ * - Creates GitHub Releases.
39
+ * - Exports the following variables as GitHub Actions outputs:
40
+ * - "new-release-published": "true" | "false"
41
+ * - "new-release-version" : string
42
+ * - "new-release-git-tag" : string
43
+ * - includes default plugins (except `@semantic-release/npm`) and more
44
+ * - `@semantic-release/commit-analyzer`
45
+ * - semantic-release-export-data
46
+ * - `@semantic-release/release-notes-generator`
47
+ * - `@semantic-release/changelog`
48
+ * - `@semantic-release/git`
49
+ * - add modified CHANGELOG.md in release commit
50
+ * - `@semantic-release/exec`
51
+ * - does nothing by default. Included for convenience.
52
+ * - `@semantic-release/github`
53
+ * - uploads all files from `./publish/*`. This is non-recursive.
54
+ * - adds a list of links to related release pages (e.g. the release's page on npmjs.com)
55
+ *
56
+ * (OPTIONAL) update static Version strings before Git plugin
57
+ * - https://github.com/jpoehnelt/semantic-release-replace-plugin
58
+ * - https://github.com/droidsolutions/semantic-release-update-file
59
+ * @satisfies {Options}
60
+ */
61
+ const baseConfig = _baseConfig;
62
+ export { baseConfig, defaultPlugins };
63
+ //# sourceMappingURL=semanticReleaseConfig.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semanticReleaseConfig.mjs","sources":["../src/semanticReleaseConfig.ts"],"sourcesContent":null,"names":[],"mappings":";;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACY,MAAC,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,mCAAmC,EAAE,2CAA2C,EAAE,uBAAuB,EAAE,0BAA0B,CAAC;;AAEnL;AACA;AACA;AACA;AACA,MAAM,WAAW,GAAG;AACpB;AACA,EAAE,MAAM,EAAE,qBAAqB;AAC/B,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE;AACrB,IAAI,IAAI,EAAE,SAAS;AACnB,IAAI,OAAO,EAAE,SAAS;AACtB,IAAI,UAAU,EAAE;AAChB,GAAG,CAAC;AACJ,EAAE,OAAO,EAAE,CAAC,CAAC,mCAAmC,EAAE,EAAE,CAAC,EAAE,CAAC,8BAA8B,EAAE,EAAE,CAAC,EAAE,CAAC,2CAA2C,EAAE,EAAE,CAAC,EAAE,CAAC,6BAA6B,EAAE,EAAE,CAAC,EAAE,CAAC,uBAAuB,EAAE,cAAc,CAAC,EAAE,CAAC,wBAAwB,EAAE,EAAE,CAAC,EAAE,CAAC,0BAA0B,EAAE;AAC7R,IAAI,WAAW,EAAE,QAAQ;AACzB,IAAI,MAAM,EAAE,CAAC,aAAa,EAAE,qBAAqB;AACjD,GAAG,CAAC;AACJ,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,UAAU,GAAG;;;;"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * # Semantic-Release Config Factory (dotnet)
3
+ * A functional Semantic-Release configuration for dotnet projects
4
+ *
5
+ * extends {@link baseConfig }
6
+ *
7
+ * <-- TABLE OF CONTENTS -->
8
+ * - configureDotnetRelease
9
+ * - Insert-Edit Plugins
10
+ * - Append Plugins
11
+ *
12
+ */
13
+ import type { Options } from 'semantic-release';
14
+ import { NugetRegistryInfo } from './dotnet/NugetRegistryInfo.js';
15
+ import { MSBuildProject } from './dotnet/MSBuildProject.js';
16
+ /**
17
+ */
18
+ export declare class SemanticReleaseConfigDotnet {
19
+ private readonly options;
20
+ private readonly _projectsToPublish;
21
+ private _projectsToPackAndPush;
22
+ private readonly _evaluatedProjects;
23
+ /**
24
+ * Creates an instance of SemanticReleaseConfigDotnet.
25
+ * Configures {@link baseConfig} with `@semantic-release/exec` to `dotnet` publish, pack, and push.
26
+ *
27
+ * Note: To sign packages, create a Target in the corresponding project(s) e.g.
28
+ * ```xml
29
+ * <Target Name="SignNupkgs" AfterTargets="Pack">
30
+ * <Exec Command="dotnet nuget sign $(PackageOutputPath) [remaining args]" ConsoleToMsBuild="true" />
31
+ * </Target>
32
+ * ```
33
+ * Alternatively, splice your signing commands into the publishCmd string,
34
+ * inserting them before `dotnet nuget push`.
35
+ * If you sign different signatures depending on the NuGet registry,
36
+ * splice your signing command (with "overwrite signature" enabled, if
37
+ * desired) before the corresponding registry's `dotnet nuget push` command.
38
+ * @param projectsToPublish An array of dotnet projects' relative paths. If
39
+ * empty or unspecified, tries getting projects' semi-colon-separated relative
40
+ * paths from the `PROJECTS_TO_PUBLISH` environment variable. If configured as
41
+ * recommended, the projects' publish outputs will be zipped to '$PWD/publish'
42
+ * for use in the `publish` semantic-release step (typically, GitHub release).
43
+ * @param projectsToPackAndPush An array of dotnet projects' relative paths.
44
+ * If empty or unspecified, tries getting projects' semi-colon-separated
45
+ * relative paths from the `PROJECTS_TO_PACK_AND_PUSH` environment variable.
46
+ * Otherwise, no packages will be packed and pushed.
47
+ * If configured as recommended, `dotnet pack` will output the nupkg/snupkg
48
+ * files to `$PWD/publish` where they will be globbed by `dotnet nuget push`.
49
+ */
50
+ constructor(projectsToPublish: string[] | MSBuildProject[], projectsToPackAndPush: string[] | NugetRegistryInfo[]);
51
+ get ProjectsToPublish(): string[] | MSBuildProject[];
52
+ get ProjectsToPackAndPush(): string[] | NugetRegistryInfo[];
53
+ get EvaluatedProjects(): MSBuildProject[];
54
+ insertPlugin(afterPluginsIDs: string[], insertPluginIDs: string[], beforePluginsIDs: string[]): void;
55
+ /**
56
+ * generate dotnet commands for \@semantic-release/exec, appending commands with ' && ' when necessary.
57
+ *
58
+ * Note: All strings in {@link this.ProjectsToPackAndPush} will be converted to basic {@link NugetRegistryInfo} instances with default values.
59
+ * If you need specific NRI settings or you need to push to GitLab-like or GitHub-like registries, instantiate them instead of passing their paths.
60
+ * @todo change to builder method? e.g. static async SetupDotnetCommands(this: SemanticReleaseConfigDotnet): Promise<SemanticReleaseConfigDotnet>
61
+ * @todo Add options param to allow users to enable pushing to GitLab, GitHub, NuGet.org with default settings -OR- with entirely custom settings.
62
+ * @see https://github.com/semantic-release/exec#usage
63
+ */
64
+ setupDotnetCommands(): Promise<void>;
65
+ /**
66
+ * Insert a plugin into the plugins array.
67
+ * @deprecated EXPERIMENTAL: needs thorough tests implemented before use in production!
68
+ * @param insertAfterPluginIDs Plugins which should appear BEFORE
69
+ * {@link insertPluginIDs}.
70
+ * @param insertPluginIDs The plugin(s) to insert into the plugins array.
71
+ * @param insertBeforePluginsIDs plugins which should appear AFTER the
72
+ * inserted plugin(s).
73
+ */
74
+ splicePlugin(insertAfterPluginIDs: string[], insertPluginIDs: string[], insertBeforePluginsIDs: string[]): void;
75
+ protected getTokenTestingCommands(): Promise<string>;
76
+ toOptions(): Options;
77
+ }
78
+ /**
79
+ * Configures {@link baseConfig} with `@semantic-release/exec` to `dotnet`
80
+ * publish, pack, and nuget-push.
81
+ * @param projectsToPublish
82
+ * An array of dotnet projects' relative paths -OR- an array of
83
+ * {@link MSBuildProject} instances.
84
+ * - If `MSBuildProject[]`, the instances will be used as-is.
85
+ * - If `[]`, tries getting projects' semi-colon-separated relative paths from
86
+ * the `PROJECTS_TO_PUBLISH` environment variable.
87
+ * - If configured as recommended, the projects' publish outputs will be zipped
88
+ * to '$PWD/publish' for use in the `publish` semantic-release step e.g. for a
89
+ * GitHub release.
90
+ * @param projectsToPackAndPush An array of dotnet projects' relative paths -OR-
91
+ * an array of instances of {@link NugetRegistryInfo} and/or derived classes.
92
+ * - If `NugetRegistryInfo[]`, no conversions or modifications will occur.
93
+ * - If `string[]`, the project paths will be converted to
94
+ * {@link NugetRegistryInfo} instances with default values. This may be undesired.
95
+ * - If `[]`, `dotnet pack` and `dotnet nuget push` commands will not be configured.
96
+ * - If `undefined`, tries getting projects' semi-colon-separated relative paths
97
+ * from the `PROJECTS_TO_PACK_AND_PUSH` environment variable.
98
+ * With the recommended configuration, `dotnet pack` will write the nupkg/snupkg
99
+ * files to `$PWD/publish` where they will be globbed by `dotnet nuget push`.
100
+ * @returns a semantic-release Options object, based on
101
+ * `@halospv3/hce.shared-config` (our base config), with the
102
+ * `@semantic-release/exec` plugin configured to `dotnet publish`, `pack`, and
103
+ * `push` the specified projects.
104
+ */
105
+ export declare function getConfig(projectsToPublish: string[] | MSBuildProject[], projectsToPackAndPush?: string[] | NugetRegistryInfo[]): Promise<Options>;
106
+ /**
107
+ * @module semanticReleaseConfigDotnet
108
+ */
109
+ //# sourceMappingURL=semanticReleaseConfigDotnet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semanticReleaseConfigDotnet.d.ts","sourceRoot":"","sources":["../src/semanticReleaseConfigDotnet.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAMhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAQ5D;GACG;AACH,qBAAa,2BAA2B;IACtC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAChD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA8B;IACjE,OAAO,CAAC,sBAAsB,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAmB;IAEtD;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;gBAED,iBAAiB,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,EAC9C,qBAAqB,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE;IAwCvD,IAAI,iBAAiB,IAAI,MAAM,EAAE,GAAG,cAAc,EAAE,CAEnD;IAED,IAAI,qBAAqB,IAAI,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAE1D;IAED,IAAI,iBAAiB,IAAI,cAAc,EAAE,CAExC;IAED,YAAY,CACV,eAAe,EAAE,MAAM,EAAE,EACzB,eAAe,EAAE,MAAM,EAAE,EACzB,gBAAgB,EAAE,MAAM,EAAE,GACzB,IAAI;IAIP;;;;;;;;OAQG;IACG,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IA6F1C;;;;;;;;OAQG;IACH,YAAY,CACV,oBAAoB,EAAE,MAAM,EAAE,EAC9B,eAAe,EAAE,MAAM,EAAE,EACzB,sBAAsB,EAAE,MAAM,EAAE,GAC/B,IAAI;cAmDS,uBAAuB,IAAI,OAAO,CAAC,MAAM,CAAC;IAqC1D,SAAS,IAAI,OAAO;CAGrB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,SAAS,CAC7B,iBAAiB,EAAE,MAAM,EAAE,GAAG,cAAc,EAAE,EAC9C,qBAAqB,CAAC,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,GACrD,OAAO,CAAC,OAAO,CAAC,CAqDlB;AAED;;GAEG"}