@postman/sdk-config 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -2544,19 +2544,74 @@ var commonPublishShape2 = {
2544
2544
  * SDK Config IR; the external publisher or orchestrator resolves this reference before use.
2545
2545
  */
2546
2546
  credentialsRef: nonEmptyStringSchema.optional(),
2547
+ /**
2548
+ * Registry-specific package version override. If omitted, the external publisher/orchestrator may
2549
+ * fall back to target.sdkVersion.
2550
+ */
2551
+ version: nonEmptyStringSchema.optional(),
2547
2552
  releaseBranch: nonEmptyStringSchema.optional(),
2548
- tolerateRepublish: zod.z.boolean().optional()
2553
+ tolerateRepublish: zod.z.boolean().optional(),
2554
+ /** Generate registry publishing workflow files when publishing through GitHub delivery. */
2555
+ shouldGeneratePublishWorkflow: zod.z.boolean().optional()
2549
2556
  };
2557
+ var trustedPublishingShape = {
2558
+ /** Use registry trusted publishing / OIDC instead of a static token secret. */
2559
+ trustedPublishing: zod.z.boolean().optional()
2560
+ };
2561
+ var mavenCoordinateSchema = nonEmptyStringSchema.regex(
2562
+ /^[A-Za-z0-9_.-]+:[A-Za-z0-9_.-]+$/,
2563
+ "Maven coordinate must be in groupId:artifactId form"
2564
+ );
2565
+ var mavenSignatureEnvironmentSchema = zod.z.strictObject({
2566
+ keyIdEnvironmentVariable: nonEmptyStringSchema.optional(),
2567
+ passwordEnvironmentVariable: nonEmptyStringSchema.optional(),
2568
+ secretKeyEnvironmentVariable: nonEmptyStringSchema.optional()
2569
+ });
2550
2570
  var publishConfigSchema = zod.z.discriminatedUnion("registry", [
2551
- zod.z.strictObject({ registry: zod.z.literal("npm"), ...commonPublishShape2 }),
2552
- zod.z.strictObject({ registry: zod.z.literal("pypi"), ...commonPublishShape2 }),
2553
- zod.z.strictObject({ registry: zod.z.literal("nuget"), ...commonPublishShape2 }),
2554
- zod.z.strictObject({ registry: zod.z.literal("rubygems"), ...commonPublishShape2 }),
2555
- zod.z.strictObject({ registry: zod.z.literal("crates"), ...commonPublishShape2 }),
2571
+ zod.z.strictObject({
2572
+ registry: zod.z.literal("npm"),
2573
+ /** Environment variable name containing the npm registry token. */
2574
+ tokenEnvironmentVariable: nonEmptyStringSchema.optional(),
2575
+ /** Write npm package metadata as private when the publisher creates/updates package.json. */
2576
+ isPackagePrivate: zod.z.boolean().optional(),
2577
+ /** Also publish the TypeScript package to JSR from the npm publishing path. */
2578
+ publishToJsr: zod.z.boolean().optional(),
2579
+ ...trustedPublishingShape,
2580
+ ...commonPublishShape2
2581
+ }),
2582
+ zod.z.strictObject({
2583
+ registry: zod.z.literal("pypi"),
2584
+ usernameEnvironmentVariable: nonEmptyStringSchema.optional(),
2585
+ passwordEnvironmentVariable: nonEmptyStringSchema.optional(),
2586
+ ...trustedPublishingShape,
2587
+ ...commonPublishShape2
2588
+ }),
2589
+ zod.z.strictObject({
2590
+ registry: zod.z.literal("nuget"),
2591
+ apiKeyEnvironmentVariable: nonEmptyStringSchema.optional(),
2592
+ ...trustedPublishingShape,
2593
+ ...commonPublishShape2
2594
+ }),
2595
+ zod.z.strictObject({
2596
+ registry: zod.z.literal("rubygems"),
2597
+ apiKeyEnvironmentVariable: nonEmptyStringSchema.optional(),
2598
+ ...commonPublishShape2
2599
+ }),
2600
+ zod.z.strictObject({
2601
+ registry: zod.z.literal("crates"),
2602
+ tokenEnvironmentVariable: nonEmptyStringSchema.optional(),
2603
+ ...commonPublishShape2
2604
+ }),
2556
2605
  zod.z.strictObject({ registry: zod.z.literal("go"), ...commonPublishShape2 }),
2557
2606
  zod.z.strictObject({ registry: zod.z.literal("composer"), ...commonPublishShape2 }),
2558
2607
  zod.z.strictObject({
2559
2608
  registry: zod.z.literal("maven"),
2609
+ /** Maven coordinate in groupId:artifactId form when consumers need the combined value. */
2610
+ coordinate: mavenCoordinateSchema.optional(),
2611
+ usernameEnvironmentVariable: nonEmptyStringSchema.optional(),
2612
+ passwordEnvironmentVariable: nonEmptyStringSchema.optional(),
2613
+ mavenUrlEnvironmentVariable: nonEmptyStringSchema.optional(),
2614
+ signatureEnvironmentVariables: mavenSignatureEnvironmentSchema.optional(),
2560
2615
  /**
2561
2616
  * Reference to Maven signing credentials. Raw signing keys are intentionally not part of SDK
2562
2617
  * Config IR; the external publisher or orchestrator resolves this reference before use.
@@ -2796,6 +2851,13 @@ var sdkConfigIrV1Schema = zod.z.strictObject({
2796
2851
  }
2797
2852
  if (output.publish) {
2798
2853
  validatePublishingIdentity2(packageConfig, output.publish.registry, context);
2854
+ if (output.delivery !== "github" && output.publish.shouldGeneratePublishWorkflow === true) {
2855
+ context.addIssue({
2856
+ code: "custom",
2857
+ message: "output.publish.shouldGeneratePublishWorkflow requires GitHub delivery",
2858
+ path: ["output", "publish", "shouldGeneratePublishWorkflow"]
2859
+ });
2860
+ }
2799
2861
  }
2800
2862
  if (compatibility?.legacyInput) {
2801
2863
  const expectedKind = target.sourceOrigin === "postman" ? "postman-build-parameters" : "fern-generator-invocation";