@supacloud/compiler 0.48.0 → 0.49.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.
@@ -54,6 +54,7 @@ export interface ContractManifest {
54
54
  idempotency?: "required" | "none";
55
55
  audit?: string;
56
56
  job?: string;
57
+ invalidateTags?: string[];
57
58
  jobDetails?: {
58
59
  name: string;
59
60
  className: string;
@@ -76,6 +77,8 @@ export interface ContractManifest {
76
77
  handler: string;
77
78
  command?: string;
78
79
  permission?: string;
80
+ idempotency?: "required" | "none";
81
+ tags?: string[];
79
82
  requestSchemas: Partial<Record<"body" | "params" | "query" | "headers" | "cookie", string>>;
80
83
  responseSchema?: string;
81
84
  /** Status-aware response schemas; legacy responseSchema remains for compatibility. */
@@ -10085,7 +10085,7 @@ function parseDeliveryPlanResult(value) {
10085
10085
  throw new Error("Invalid delivery plan result.");
10086
10086
  return value;
10087
10087
  }
10088
- var objectOptions, reference, references, kind, isolation, DeliveryFilePathSchema, functionTarget, DeliveryOptionsSchema, DeliveryDiagnosticSchema, routeSchema, jobSchema, DeliveryTargetSchema, DeliveryPlanSchema, DeliveryPlanResultSchema, DeliveryConfigurationError;
10088
+ var objectOptions, reference, references, kind, isolation, mode, DeliveryFilePathSchema, functionTarget, DeliveryOptionsSchema, DeliveryDiagnosticSchema, routeSchema, jobSchema, DeliveryTargetSchema, DeliveryPlanSchema, DeliveryPlanResultSchema, DeliveryConfigurationError;
10089
10089
  var init_delivery_schema = __esm(() => {
10090
10090
  init_build2();
10091
10091
  init_value2();
@@ -10095,6 +10095,7 @@ var init_delivery_schema = __esm(() => {
10095
10095
  references = _Array_(reference, { uniqueItems: true });
10096
10096
  kind = Union([Literal("api"), Literal("jobs"), Literal("webhook"), Literal("function")]);
10097
10097
  isolation = Union([Literal("shared"), Literal("process")]);
10098
+ mode = Union([Literal("required"), Literal("none")]);
10098
10099
  DeliveryFilePathSchema = String2({
10099
10100
  maxLength: 512,
10100
10101
  pattern: "^(?:[A-Za-z0-9_-][A-Za-z0-9_.-]*/)*[A-Za-z0-9_-][A-Za-z0-9_.-]*$"
@@ -10168,6 +10169,7 @@ var init_delivery_schema = __esm(() => {
10168
10169
  ]),
10169
10170
  path: String2(),
10170
10171
  command: Optional(String2()),
10172
+ idempotency: Optional(mode),
10171
10173
  reason: Union([Literal("default-http"), Literal("explicit-module")])
10172
10174
  }, objectOptions);
10173
10175
  jobSchema = _Object_({
package/dist/feature.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import type { Diagnostic, FeatureSpecNode, ModuleNode } from "./types";
1
+ import type { ControllerNode, Diagnostic, FeatureSpecNode, ModuleNode, RouteNode } from "./types";
2
+ export declare function featureTransitionForRoute(module: ModuleNode, controller: ControllerNode, route: RouteNode): FeatureSpecNode["transitions"][number] | undefined;
2
3
  /** Validate the declaration itself and its bindings within the owning module. */
3
4
  export declare function validateFeatureSpec(spec: FeatureSpecNode, module?: ModuleNode): Diagnostic[];
4
5
  /**