@zuplo/cli 6.71.19 → 6.71.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10989,6 +10989,52 @@ export declare abstract class TelemetryPlugin extends RuntimePlugin {
10989
10989
 
10990
10990
  /* Excluded from this release type: trackFeature */
10991
10991
 
10992
+ /**
10993
+ * Splits traffic randomly across a set of weighted base paths. On each request
10994
+ * one base path is selected (weighted by `weight`) and written to the request
10995
+ * custom context at `customOutputProperty`. Reference it from a later URL
10996
+ * Rewrite `rewritePattern` or URL Forward `baseUrl`, e.g.
10997
+ * `${context.custom.trafficSplitting.basePath}`.
10998
+ *
10999
+ * @title Traffic Splitting
11000
+ * @product api-gateway
11001
+ * @public
11002
+ * @param request - The ZuploRequest
11003
+ * @param context - The ZuploContext
11004
+ * @param options - The policy options set in policies.json
11005
+ * @param policyName - The name of the policy as set in policies.json
11006
+ * @returns A Request or a Response
11007
+ */
11008
+ export declare const TrafficSplittingInboundPolicy: InboundPolicyHandler<TrafficSplittingInboundPolicyOptions>;
11009
+
11010
+ /**
11011
+ * The options for this policy.
11012
+ * @public
11013
+ */
11014
+ export declare interface TrafficSplittingInboundPolicyOptions {
11015
+ /**
11016
+ * The set of base paths (URLs) to split traffic across. One entry is selected at random per request, weighted by its `weight`.
11017
+ */
11018
+ basePaths: {
11019
+ /**
11020
+ * The base path (URL) to route to when this entry is selected. Supports environment variables, e.g. `$env(BASE_URL)/v2`.
11021
+ */
11022
+ url: string;
11023
+ /**
11024
+ * The relative weight for this base path. Higher weights receive proportionally more traffic. Weights are relative and do not need to add up to 100.
11025
+ */
11026
+ weight: number;
11027
+ }[];
11028
+ /**
11029
+ * A simple dotted property path under the request custom context where the selected URL is written (e.g. `trafficSplitting.basePath`). Reference it later in a URL Rewrite `rewritePattern` or URL Forward `baseUrl` as `${context.custom.trafficSplitting.basePath}`. Only one value is in effect; if multiple Traffic Splitting policies write the same property, the last one to run wins. Array indexes and brackets are not allowed.
11030
+ */
11031
+ customOutputProperty: string;
11032
+ /**
11033
+ * When `true`, logs which base path was selected for each request. Defaults to `false`.
11034
+ */
11035
+ logSelection?: boolean;
11036
+ }
11037
+
10992
11038
  /**
10993
11039
  *
10994
11040
  * @export
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@zuplo/runtime",
3
3
  "type": "module",
4
- "version": "6.71.19",
4
+ "version": "6.71.20",
5
5
  "repository": "https://github.com/zuplo/zuplo",
6
6
  "author": "Zuplo, Inc.",
7
7
  "exports": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zuplo/cli",
3
- "version": "6.71.19",
3
+ "version": "6.71.20",
4
4
  "repository": "https://github.com/zuplo/zuplo",
5
5
  "author": "Zuplo, Inc.",
6
6
  "type": "module",
@@ -27,10 +27,10 @@
27
27
  "@opentelemetry/api": "1.9.0",
28
28
  "@opentelemetry/api-logs": "0.201.1",
29
29
  "@swc/core": "1.10.18",
30
- "@zuplo/core": "6.71.19",
30
+ "@zuplo/core": "6.71.20",
31
31
  "@zuplo/editor": "1.0.20821740935",
32
- "@zuplo/openapi-tools": "6.71.19",
33
- "@zuplo/runtime": "6.71.19",
32
+ "@zuplo/openapi-tools": "6.71.20",
33
+ "@zuplo/runtime": "6.71.20",
34
34
  "chalk": "5.4.1",
35
35
  "chokidar": "3.5.3",
36
36
  "cookie": "1.0.2",
@@ -61,8 +61,8 @@
61
61
  "workerd": "1.20241230.0",
62
62
  "yargs": "17.7.2",
63
63
  "zod": "3.25.76",
64
- "@zuplo/graphql": "6.71.19",
65
- "@zuplo/otel": "6.71.19"
64
+ "@zuplo/graphql": "6.71.20",
65
+ "@zuplo/otel": "6.71.20"
66
66
  },
67
67
  "bundleDependencies": [
68
68
  "@inquirer/prompts",