@inf-monkeys-tech/monkeys 1.1.10 → 1.1.11
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/README.md +3 -1
- package/lib/esm/index.mjs +56 -14
- package/lib/esm/index.mjs.map +1 -1
- package/lib/esm/runtime/index.mjs +56 -14
- package/lib/esm/runtime/index.mjs.map +1 -1
- package/lib/runtime/declarative-control-compiler.d.ts.map +1 -1
- package/lib/runtime/declarative-control-compiler.js +20 -12
- package/lib/runtime/declarative-control-compiler.js.map +1 -1
- package/lib/runtime/navigation-availability.d.ts +2 -0
- package/lib/runtime/navigation-availability.d.ts.map +1 -1
- package/lib/runtime/navigation-availability.js +39 -1
- package/lib/runtime/navigation-availability.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-availability.d.ts","sourceRoot":"","sources":["../../src/runtime/navigation-availability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,KAAK,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAG/G,eAAO,MAAM,wCAAwC,sCAAsC,CAAC;AAC5F,eAAO,MAAM,iCAAiC,yBAAyB,CAAC;AAExE,qFAAqF;AACrF,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,OAAO,GAAG,uBAAuB,CAKrI"}
|
|
1
|
+
{"version":3,"file":"navigation-availability.d.ts","sourceRoot":"","sources":["../../src/runtime/navigation-availability.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiC,KAAK,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAG/G,eAAO,MAAM,wCAAwC,sCAAsC,CAAC;AAC5F,eAAO,MAAM,iCAAiC,yBAAyB,CAAC;AAExE,qFAAqF;AACrF,wBAAgB,8BAA8B,CAAC,MAAM,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,OAAO,GAAG,uBAAuB,CAKrI;AAED,uFAAuF;AACvF,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,uBAAuB,EAC/B,UAAU,EAAE,OAAO,kCAAkC,EAAE,UAAU,EACjE,OAAO,EAAE,SAAS,OAAO,gCAAgC,EAAE,4BAA4B,EAAE,GACxF,uBAAuB,CAgCzB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.projectNavigationCompatibility = exports.NAVIGATION_UNAVAILABLE_CAPABILITY = exports.NAVIGATION_UNAVAILABLE_CAPABILITY_HEADER = void 0;
|
|
3
|
+
exports.projectCurrentNavigationPages = exports.projectNavigationCompatibility = exports.NAVIGATION_UNAVAILABLE_CAPABILITY = exports.NAVIGATION_UNAVAILABLE_CAPABILITY_HEADER = void 0;
|
|
4
4
|
const declarative_control_1 = require("../contracts/declarative-control");
|
|
5
5
|
const declarative_control_compiler_1 = require("./declarative-control-compiler");
|
|
6
6
|
exports.NAVIGATION_UNAVAILABLE_CAPABILITY_HEADER = 'x-monkeys-navigation-capabilities';
|
|
@@ -14,4 +14,42 @@ function projectNavigationCompatibility(bundle, supportsUnavailable) {
|
|
|
14
14
|
return declarative_control_1.NavigationRuntimeBundleSchema.parse({ ...unsigned, nodes, contentHash: (0, declarative_control_compiler_1.canonicalContentHash)({ ...unsigned, nodes }) });
|
|
15
15
|
}
|
|
16
16
|
exports.projectNavigationCompatibility = projectNavigationCompatibility;
|
|
17
|
+
/** Project Page links against a complete, tenant-authorized current target catalog. */
|
|
18
|
+
function projectCurrentNavigationPages(source, navigation, targets) {
|
|
19
|
+
const currentTargets = new Map(targets.map(target => [(0, declarative_control_compiler_1.canonicalContentHash)(target.stableTargetRef), target]));
|
|
20
|
+
if (currentTargets.size !== targets.length)
|
|
21
|
+
throw new TypeError('DECLARATIVE_TARGET_CATALOG_INVALID');
|
|
22
|
+
const authored = new Map(navigation.nodes.map(node => [node.nodeId, node]));
|
|
23
|
+
const nodes = source.nodes.map(node => {
|
|
24
|
+
if (node.kind !== 'target' || node.targetRef.kind !== 'page')
|
|
25
|
+
return node;
|
|
26
|
+
const original = authored.get(node.nodeId);
|
|
27
|
+
if (original?.kind !== 'target' || (0, declarative_control_compiler_1.canonicalContentHash)(original.targetRef) !== (0, declarative_control_compiler_1.canonicalContentHash)(node.targetRef)) {
|
|
28
|
+
throw new TypeError('DECLARATIVE_TARGET_IDENTITY_MISMATCH');
|
|
29
|
+
}
|
|
30
|
+
const current = currentTargets.get((0, declarative_control_compiler_1.canonicalContentHash)(node.targetRef));
|
|
31
|
+
if (current && (!(0, declarative_control_compiler_1.sameStableRef)(current.stableTargetRef, current.targetRevisionRef) || current.kind !== 'route' || current.surface !== source.surface || current.routeClaim.surface !== source.surface)) {
|
|
32
|
+
throw new TypeError('DECLARATIVE_TARGET_CATALOG_INVALID');
|
|
33
|
+
}
|
|
34
|
+
if (!current || current.kind !== 'route' || !current.routeClaim.matcher.parameters.filter(parameter => current.routeClaim.normalizedPath.split('/').includes(`:${parameter.name}`)).every(parameter => {
|
|
35
|
+
if (!parameter.required)
|
|
36
|
+
return true;
|
|
37
|
+
const binding = original.parameterMapping[parameter.name];
|
|
38
|
+
return binding?.kind === 'constant' && (typeof binding.value === 'string' || typeof binding.value === 'number') && String(binding.value).length > 0;
|
|
39
|
+
})) {
|
|
40
|
+
return { ...node, disabled: true, parameterMapping: {}, resolvedTarget: {
|
|
41
|
+
kind: 'unavailable', nodeId: node.nodeId, stableTargetRef: node.targetRef, accessPolicy: null,
|
|
42
|
+
} };
|
|
43
|
+
}
|
|
44
|
+
return { ...node, disabled: original.disabled, parameterMapping: original.parameterMapping, resolvedTarget: {
|
|
45
|
+
kind: 'route', nodeId: node.nodeId, stableTargetRef: current.stableTargetRef,
|
|
46
|
+
targetRevisionRef: current.targetRevisionRef,
|
|
47
|
+
...(current.releaseRevisionRef ? { releaseRevisionRef: current.releaseRevisionRef } : {}),
|
|
48
|
+
accessPolicy: current.accessPolicy, routeClaim: current.routeClaim,
|
|
49
|
+
} };
|
|
50
|
+
});
|
|
51
|
+
const { contentHash: _hash, ...unsigned } = source;
|
|
52
|
+
return declarative_control_1.NavigationRuntimeBundleSchema.parse({ ...unsigned, nodes, contentHash: (0, declarative_control_compiler_1.canonicalContentHash)({ ...unsigned, nodes }) });
|
|
53
|
+
}
|
|
54
|
+
exports.projectCurrentNavigationPages = projectCurrentNavigationPages;
|
|
17
55
|
//# sourceMappingURL=navigation-availability.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation-availability.js","sourceRoot":"","sources":["../../src/runtime/navigation-availability.ts"],"names":[],"mappings":";;;AAAA,0EAA+G;AAC/G,
|
|
1
|
+
{"version":3,"file":"navigation-availability.js","sourceRoot":"","sources":["../../src/runtime/navigation-availability.ts"],"names":[],"mappings":"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"}
|