@toolproof-npm/shared 0.1.102 → 0.1.103

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.
@@ -1,7 +1,16 @@
1
1
  import type { ExecutionIdentityJson, ResourceJson, ResourceRoleIdentityJson, StatefulStrategyJson } from '@toolproof-npm/schema';
2
- export declare function bindInputRes(statefulStrategy: StatefulStrategyJson, executionRef: ExecutionIdentityJson, resourceRoleIdentity: ResourceRoleIdentityJson, resource: ResourceJson): StatefulStrategyJson;
3
- export declare function bindInputRef(statefulStrategy: StatefulStrategyJson, targetExecRef: ExecutionIdentityJson, resourceRoleIdentity: ResourceRoleIdentityJson, source: {
2
+ export declare function bindInputRes(statefulStrategy: StatefulStrategyJson, target: {
3
+ executionRef: ExecutionIdentityJson;
4
+ resourceRoleRef: ResourceRoleIdentityJson;
5
+ }, resource: ResourceJson): StatefulStrategyJson;
6
+ export declare function bindInputRef(statefulStrategy: StatefulStrategyJson, target: {
7
+ executionRef: ExecutionIdentityJson;
8
+ resourceRoleRef: ResourceRoleIdentityJson;
9
+ }, source: {
10
+ executionRef: ExecutionIdentityJson;
11
+ resourceRoleRef: ResourceRoleIdentityJson;
12
+ }): StatefulStrategyJson;
13
+ export declare function clearInputBinding(statefulStrategy: StatefulStrategyJson, target: {
4
14
  executionRef: ExecutionIdentityJson;
5
15
  resourceRoleRef: ResourceRoleIdentityJson;
6
16
  }): StatefulStrategyJson;
7
- export declare function clearInputBinding(statefulStrategy: StatefulStrategyJson, execRef: ExecutionIdentityJson, resourceRoleRef: ResourceRoleIdentityJson): StatefulStrategyJson;
@@ -1,33 +1,33 @@
1
1
  import { resolveResourceChain } from './resourceChain.js';
2
- export function bindInputRes(statefulStrategy, executionRef, resourceRoleIdentity, resource) {
2
+ export function bindInputRes(statefulStrategy, target, resource) {
3
3
  const strategyState = statefulStrategy.strategyState;
4
- const bucket = strategyState[executionRef] ?? {};
4
+ const bucket = strategyState[target.executionRef] ?? {};
5
5
  return {
6
6
  ...statefulStrategy,
7
7
  strategyState: {
8
8
  ...strategyState,
9
- [executionRef]: {
9
+ [target.executionRef]: {
10
10
  ...bucket,
11
- [resourceRoleIdentity]: resource,
11
+ [target.resourceRoleRef]: resource,
12
12
  },
13
13
  },
14
14
  };
15
15
  }
16
- export function bindInputRef(statefulStrategy, targetExecRef, resourceRoleIdentity, source) {
16
+ export function bindInputRef(statefulStrategy, target, source) {
17
17
  const strategyState = statefulStrategy.strategyState;
18
18
  const sourceEntry = strategyState?.[source.executionRef]?.[source.resourceRoleRef];
19
19
  if (!sourceEntry)
20
20
  throw new Error(`resourceEntry not found for source (${source.executionRef}, ${source.resourceRoleRef})`);
21
- const bucket = strategyState[targetExecRef] ?? {};
21
+ const bucket = strategyState[target.executionRef] ?? {};
22
22
  const result = resolveResourceChain(strategyState, { executionRef: source.executionRef, resourceRoleRef: source.resourceRoleRef });
23
23
  if (result.status === 'materialized') {
24
24
  return {
25
25
  ...statefulStrategy,
26
26
  strategyState: {
27
27
  ...strategyState,
28
- [targetExecRef]: {
28
+ [target.executionRef]: {
29
29
  ...bucket,
30
- [resourceRoleIdentity]: result.entry,
30
+ [target.resourceRoleRef]: result.entry,
31
31
  },
32
32
  },
33
33
  };
@@ -43,9 +43,9 @@ export function bindInputRef(statefulStrategy, targetExecRef, resourceRoleIdenti
43
43
  ...statefulStrategy,
44
44
  strategyState: {
45
45
  ...strategyState,
46
- [targetExecRef]: {
46
+ [target.executionRef]: {
47
47
  ...bucket,
48
- [resourceRoleIdentity]: reusedMissing,
48
+ [target.resourceRoleRef]: reusedMissing,
49
49
  },
50
50
  },
51
51
  };
@@ -61,27 +61,27 @@ export function bindInputRef(statefulStrategy, targetExecRef, resourceRoleIdenti
61
61
  ...statefulStrategy,
62
62
  strategyState: {
63
63
  ...strategyState,
64
- [targetExecRef]: {
64
+ [target.executionRef]: {
65
65
  ...bucket,
66
- [resourceRoleIdentity]: potentialInput,
66
+ [target.resourceRoleRef]: potentialInput,
67
67
  },
68
68
  },
69
69
  };
70
70
  }
71
71
  throw new Error(`Failed to resolve resource chain: ${result.reason}`);
72
72
  }
73
- export function clearInputBinding(statefulStrategy, execRef, resourceRoleRef) {
73
+ export function clearInputBinding(statefulStrategy, target) {
74
74
  const strategyState = statefulStrategy.strategyState;
75
- const bucket = strategyState?.[execRef];
76
- if (!bucket?.[resourceRoleRef])
75
+ const bucket = strategyState?.[target.executionRef];
76
+ if (!bucket?.[target.resourceRoleRef])
77
77
  return statefulStrategy;
78
78
  const nextBucket = { ...bucket };
79
- delete nextBucket[resourceRoleRef];
79
+ delete nextBucket[target.resourceRoleRef];
80
80
  return {
81
81
  ...statefulStrategy,
82
82
  strategyState: {
83
83
  ...strategyState,
84
- [execRef]: nextBucket,
84
+ [target.executionRef]: nextBucket,
85
85
  },
86
86
  };
87
87
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toolproof-npm/shared",
3
- "version": "0.1.102",
3
+ "version": "0.1.103",
4
4
  "description": "Core library utilities for ToolProof",
5
5
  "keywords": [
6
6
  "toolproof",