@inf-monkeys-tech/monkeys 1.0.68 → 1.0.69

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 (37) hide show
  1. package/lib/contracts/declarative-control-http.d.ts +1681 -369
  2. package/lib/contracts/declarative-control-http.d.ts.map +1 -1
  3. package/lib/contracts/declarative-control.d.ts +740 -23
  4. package/lib/contracts/declarative-control.d.ts.map +1 -1
  5. package/lib/contracts/declarative-control.js +22 -3
  6. package/lib/contracts/declarative-control.js.map +1 -1
  7. package/lib/esm/contracts/index.mjs +22 -3
  8. package/lib/esm/contracts/index.mjs.map +1 -1
  9. package/lib/esm/index.mjs +98 -3
  10. package/lib/esm/index.mjs.map +1 -1
  11. package/lib/esm/runtime/index.mjs +97 -3
  12. package/lib/esm/runtime/index.mjs.map +1 -1
  13. package/lib/esm/schemas/index.mjs +22 -3
  14. package/lib/esm/schemas/index.mjs.map +1 -1
  15. package/lib/json-schema/navigation-release.schema.json +582 -0
  16. package/lib/json-schema/navigation-runtime-bundle.schema.json +579 -0
  17. package/lib/runtime/declarative-control-compiler.d.ts.map +1 -1
  18. package/lib/runtime/declarative-control-compiler.js +26 -0
  19. package/lib/runtime/declarative-control-compiler.js.map +1 -1
  20. package/lib/runtime/index.d.ts +1 -0
  21. package/lib/runtime/index.d.ts.map +1 -1
  22. package/lib/runtime/index.js +1 -0
  23. package/lib/runtime/index.js.map +1 -1
  24. package/lib/runtime/menu-compiler.d.ts +19 -1
  25. package/lib/runtime/menu-compiler.d.ts.map +1 -1
  26. package/lib/runtime/menu-compiler.js +34 -0
  27. package/lib/runtime/menu-compiler.js.map +1 -1
  28. package/lib/runtime/navigation-availability.d.ts +6 -0
  29. package/lib/runtime/navigation-availability.d.ts.map +1 -0
  30. package/lib/runtime/navigation-availability.js +17 -0
  31. package/lib/runtime/navigation-availability.js.map +1 -0
  32. package/lib/schemas/index.d.ts +240 -1
  33. package/lib/schemas/index.d.ts.map +1 -1
  34. package/lib/schemas/index.js +5 -4
  35. package/lib/schemas/index.js.map +1 -1
  36. package/package.json +1 -1
  37. package/test/fixtures/navigation-three-roots-topology.json +275 -0
@@ -9122,6 +9122,12 @@ var ResolvedNavigationTargetSchema = z10.object({
9122
9122
  targetRevisionRef: RevisionRefSchema,
9123
9123
  releaseRevisionRef: RevisionRefSchema.optional()
9124
9124
  }).strict();
9125
+ var UnavailableNavigationTargetSchema = z10.object({
9126
+ nodeId: ContractIdentifierSchema,
9127
+ stableTargetRef: StableRefSchema.refine((reference) => reference.kind === "page", "Only missing Pages can be isolated."),
9128
+ reason: z10.literal("page-missing"),
9129
+ accessPolicy: AccessPolicySchema.nullable()
9130
+ }).strict();
9125
9131
  var NavigationReleaseSchema = z10.object({
9126
9132
  contract: z10.literal("NavigationRelease"),
9127
9133
  ...ReleaseBaseShape,
@@ -9131,13 +9137,17 @@ var NavigationReleaseSchema = z10.object({
9131
9137
  surface: ProductSurfaceSchema,
9132
9138
  placement: ContractIdentifierSchema
9133
9139
  }).strict(),
9134
- resolvedTargets: z10.array(ResolvedNavigationTargetSchema)
9140
+ resolvedTargets: z10.array(ResolvedNavigationTargetSchema),
9141
+ unavailableTargets: z10.array(UnavailableNavigationTargetSchema).optional()
9135
9142
  }).strict().superRefine((value, context) => {
9136
9143
  validateDependencySnapshot(value.dependencySnapshot, context);
9137
9144
  validateReleaseExpectedHead(value, "navigation-release", context);
9138
9145
  if (value.navigationRevisionRef.kind !== "navigation") context.addIssue({ code: "custom", path: ["navigationRevisionRef", "kind"], message: "Expected a navigation revision." });
9139
9146
  if (value.target.environmentRef.kind !== "environment") context.addIssue({ code: "custom", path: ["target", "environmentRef", "kind"], message: "Navigation release target requires an environment reference." });
9140
9147
  if (uniqueArray(value.resolvedTargets, (target) => target.nodeId)) context.addIssue({ code: "custom", path: ["resolvedTargets"], message: "Resolved Navigation node IDs must be unique." });
9148
+ if (uniqueArray([...value.resolvedTargets, ...value.unavailableTargets ?? []], (target) => target.nodeId)) {
9149
+ context.addIssue({ code: "custom", path: ["unavailableTargets"], message: "Navigation target resolutions must have unique node IDs." });
9150
+ }
9141
9151
  });
9142
9152
  var RuntimeDiagnosticSchema = z10.object({
9143
9153
  code: ContractIdentifierSchema,
@@ -9225,7 +9235,8 @@ var CompiledNavigationDomainCommandTargetSchema = ResolvedNavigationTargetSchema
9225
9235
  var CompiledNavigationResolvedTargetSchema = z10.discriminatedUnion("kind", [
9226
9236
  CompiledNavigationTargetSchema,
9227
9237
  CompiledNavigationRegisteredMenuActionTargetSchema,
9228
- CompiledNavigationDomainCommandTargetSchema
9238
+ CompiledNavigationDomainCommandTargetSchema,
9239
+ UnavailableNavigationTargetSchema.omit({ reason: true }).extend({ kind: z10.literal("unavailable") }).strict()
9229
9240
  ]);
9230
9241
  var CompiledNavigationGroupNodeSchema = NavigationGroupNodeSchema.extend({
9231
9242
  ancestorAccessPolicies: z10.array(AccessPolicySchema)
@@ -9233,7 +9244,14 @@ var CompiledNavigationGroupNodeSchema = NavigationGroupNodeSchema.extend({
9233
9244
  var CompiledNavigationTargetNodeSchema = NavigationTargetNodeSchema.extend({
9234
9245
  ancestorAccessPolicies: z10.array(AccessPolicySchema),
9235
9246
  resolvedTarget: CompiledNavigationResolvedTargetSchema
9236
- }).strict();
9247
+ }).strict().superRefine((node, context) => {
9248
+ if (node.resolvedTarget.nodeId !== node.nodeId || stableRefIdentity(node.resolvedTarget.stableTargetRef) !== stableRefIdentity(node.targetRef)) {
9249
+ context.addIssue({ code: "custom", path: ["resolvedTarget"], message: "Resolved target identity must match the source node." });
9250
+ }
9251
+ if (node.resolvedTarget.kind === "unavailable" && (node.disabled !== true || Object.keys(node.parameterMapping).length > 0)) {
9252
+ context.addIssue({ code: "custom", path: ["resolvedTarget"], message: "Unavailable targets must be disabled and contain no executable input." });
9253
+ }
9254
+ });
9237
9255
  var CompiledNavigationSeparatorNodeSchema = NavigationSeparatorNodeSchema.extend({
9238
9256
  ancestorAccessPolicies: z10.array(AccessPolicySchema)
9239
9257
  }).strict();
@@ -14249,6 +14267,7 @@ export {
14249
14267
  TrendRadarCollectionSubjectRefSchema,
14250
14268
  TrendSourceRecordSchema,
14251
14269
  TrendSourceSchema,
14270
+ UnavailableNavigationTargetSchema,
14252
14271
  ViewProviderDescriptorSchema,
14253
14272
  WorkbenchAppInstanceSchema,
14254
14273
  WorkbenchGroupSchema,