@overkill-dev/resources 0.0.5 → 0.0.7
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/package.json +10 -2
- package/packages/resources/resources.entry-point.d.ts +4 -2
- package/packages/resources/resources.entry-point.d.ts.map +1 -1
- package/packages/resources/resources.entry-point.js +1 -1
- package/packages/resources/resources.entry-point.js.map +1 -1
- package/readme.md +16 -3
- package/resources/resource-definition-brand.d.ts +2 -0
- package/resources/resource-definition-brand.d.ts.map +1 -0
- package/resources/resource-definition-brand.js +2 -0
- package/resources/resource-definition-brand.js.map +1 -0
- package/resources/resource-definition-shape.d.ts +3 -0
- package/resources/resource-definition-shape.d.ts.map +1 -1
- package/resources/resource-definition-types.d.ts +104 -0
- package/resources/resource-definition-types.d.ts.map +1 -0
- package/resources/resource-definition.js +52 -0
- package/resources/resource-definition.js.map +1 -0
- package/resources/resource-graph.d.ts +4 -3
- package/resources/resource-graph.d.ts.map +1 -1
- package/resources/resource-graph.js +2 -2
- package/resources/resource-graph.js.map +1 -1
- package/resources/resource-scenario-binding.d.ts +37 -0
- package/resources/resource-scenario-binding.d.ts.map +1 -0
- package/resources/resource-scenario-binding.js +99 -0
- package/resources/resource-scenario-binding.js.map +1 -0
- package/resources/resource-scenario.d.ts +31 -0
- package/resources/resource-scenario.d.ts.map +1 -0
- package/resources/resource-scenario.js +68 -0
- package/resources/resource-scenario.js.map +1 -0
- package/resources/resource-session.d.ts +3 -2
- package/resources/resource-session.d.ts.map +1 -1
- package/resources/resource-session.js +24 -17
- package/resources/resource-session.js.map +1 -1
- package/resources/resources.d.ts +46 -76
- package/resources/resources.d.ts.map +1 -1
- package/resources/resources.js +19 -23
- package/resources/resources.js.map +1 -1
- package/resources/runtime-definition.d.ts +11 -2
- package/resources/runtime-definition.d.ts.map +1 -1
- package/resources/runtime-definition.js +50 -2
- package/resources/runtime-definition.js.map +1 -1
- package/resources/runtime-lifecycle.d.ts.map +1 -1
- package/resources/runtime-lifecycle.js +39 -2
- package/resources/runtime-lifecycle.js.map +1 -1
- package/resources/runtime-matrix-definition.d.ts +25 -6
- package/resources/runtime-matrix-definition.d.ts.map +1 -1
- package/resources/runtime-matrix-definition.js +78 -8
- package/resources/runtime-matrix-definition.js.map +1 -1
- package/resources/simulated-http-server-resource.d.ts +3 -2
- package/resources/simulated-http-server-resource.d.ts.map +1 -1
- package/resources/simulated-http-server-resource.js +66 -6
- package/resources/simulated-http-server-resource.js.map +1 -1
- package/sbom.cdx.json +22 -5
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export type ScenarioTiming = 'acquire' | 'request-routed';
|
|
2
|
+
export type ResourceScenarioSlot<Scenario extends string = string, Timing extends ScenarioTiming = ScenarioTiming> = {
|
|
3
|
+
readonly default: Scenario;
|
|
4
|
+
readonly timing: Timing;
|
|
5
|
+
readonly values: readonly [Scenario, ...(readonly Scenario[])];
|
|
6
|
+
};
|
|
7
|
+
export type ResourceScenarioSlotInput<Scenario extends string = string, Timing extends ScenarioTiming = ScenarioTiming> = {
|
|
8
|
+
readonly default: Scenario;
|
|
9
|
+
readonly timing: Timing;
|
|
10
|
+
readonly values: readonly Scenario[];
|
|
11
|
+
};
|
|
12
|
+
export type ResourceScenarioSlotInputs = Readonly<Record<string, ResourceScenarioSlotInput>>;
|
|
13
|
+
export type ResourceScenarioSlotsFromInputs<Inputs extends ResourceScenarioSlotInputs> = {
|
|
14
|
+
readonly [Slot in keyof Inputs]: ResourceScenarioSlot<Inputs[Slot]['default'] | Inputs[Slot]['values'][number], Inputs[Slot]['timing']>;
|
|
15
|
+
};
|
|
16
|
+
export type ResourceScenarioSlots = Readonly<Record<string, ResourceScenarioSlot>>;
|
|
17
|
+
export type EmptyResourceScenarioSlots = Readonly<Record<PropertyKey, never>>;
|
|
18
|
+
export type ResourceScenarioBindings<Scenarios extends ResourceScenarioSlots> = {
|
|
19
|
+
readonly [Slot in keyof Scenarios]: Scenarios[Slot]['values'][number];
|
|
20
|
+
};
|
|
21
|
+
export type ResourceScenarioBindingsForTiming<Scenarios extends ResourceScenarioSlots, Timing extends ScenarioTiming> = {
|
|
22
|
+
readonly [Slot in keyof Scenarios as Timing extends Scenarios[Slot]['timing'] ? Slot : never]: Scenarios[Slot]['values'][number];
|
|
23
|
+
};
|
|
24
|
+
export type ScenarioBindingInput<Scenarios extends ResourceScenarioSlots, Bindings extends Readonly<Record<string, string>>> = {
|
|
25
|
+
readonly [Slot in keyof Bindings]: Slot extends keyof Scenarios ? Bindings[Slot] extends Scenarios[Slot]['values'][number] ? Bindings[Slot] : never : never;
|
|
26
|
+
};
|
|
27
|
+
export type ResolvedResourceScenarioBindings = Readonly<Record<string, string>>;
|
|
28
|
+
export declare function freezeResourceScenarioSlots(scenarios: unknown): ResourceScenarioSlots;
|
|
29
|
+
export declare function defaultScenarioBindings(scenarios: ResourceScenarioSlots): ResolvedResourceScenarioBindings;
|
|
30
|
+
export declare function scenarioBindingsForTiming(scenarios: ResourceScenarioSlots, bindings: ResolvedResourceScenarioBindings, timing: ScenarioTiming): ResolvedResourceScenarioBindings;
|
|
31
|
+
//# sourceMappingURL=resource-scenario.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-scenario.d.ts","sourceRoot":"","sources":["../../../../source/resources/resource-scenario.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
const descriptorNamePattern = /^[A-Za-z0-9._-]+$/u;
|
|
2
|
+
function isScenarioTiming(value) {
|
|
3
|
+
return value === 'acquire' || value === 'request-routed';
|
|
4
|
+
}
|
|
5
|
+
function isScenarioValues(value) {
|
|
6
|
+
return Array.isArray(value) && value.length > 0 && value.every(function valueIsString(item) {
|
|
7
|
+
return typeof item === 'string';
|
|
8
|
+
});
|
|
9
|
+
}
|
|
10
|
+
function isResourceScenarioSlot(value) {
|
|
11
|
+
if (typeof value !== 'object' || value === null) {
|
|
12
|
+
return false;
|
|
13
|
+
}
|
|
14
|
+
const defaultValue = Reflect.get(value, 'default');
|
|
15
|
+
const timing = Reflect.get(value, 'timing');
|
|
16
|
+
const values = Reflect.get(value, 'values');
|
|
17
|
+
return typeof defaultValue === 'string' && isScenarioTiming(timing) && isScenarioValues(values);
|
|
18
|
+
}
|
|
19
|
+
function assertScenarioSlotName(name) {
|
|
20
|
+
if (!descriptorNamePattern.test(name)) {
|
|
21
|
+
throw new TypeError(`Scenario slot "${name}" must match ${descriptorNamePattern.source}.`);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
function assertScenarioSlot(name, slot) {
|
|
25
|
+
assertScenarioSlotName(name);
|
|
26
|
+
const values = new Set(slot.values);
|
|
27
|
+
if (values.size !== slot.values.length) {
|
|
28
|
+
throw new TypeError(`Scenario slot "${name}" contains duplicate values.`);
|
|
29
|
+
}
|
|
30
|
+
if (!values.has(slot.default)) {
|
|
31
|
+
throw new TypeError(`Scenario slot "${name}" default "${slot.default}" is not declared.`);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export function freezeResourceScenarioSlots(scenarios) {
|
|
35
|
+
if (typeof scenarios !== 'object' || scenarios === null) {
|
|
36
|
+
throw new TypeError('Resource scenarios must be an object.');
|
|
37
|
+
}
|
|
38
|
+
const entries = Object.entries(scenarios).map(function freezeScenarioEntry([name, slot]) {
|
|
39
|
+
if (!isResourceScenarioSlot(slot)) {
|
|
40
|
+
throw new TypeError(`Scenario slot "${name}" is invalid.`);
|
|
41
|
+
}
|
|
42
|
+
assertScenarioSlot(name, slot);
|
|
43
|
+
const [firstValue, ...remainingValues] = slot.values;
|
|
44
|
+
return [
|
|
45
|
+
name,
|
|
46
|
+
Object.freeze({
|
|
47
|
+
default: slot.default,
|
|
48
|
+
timing: slot.timing,
|
|
49
|
+
values: Object.freeze([firstValue, ...remainingValues])
|
|
50
|
+
})
|
|
51
|
+
];
|
|
52
|
+
});
|
|
53
|
+
return Object.freeze(Object.fromEntries(entries));
|
|
54
|
+
}
|
|
55
|
+
export function defaultScenarioBindings(scenarios) {
|
|
56
|
+
return Object.freeze(Object.fromEntries(Object.entries(scenarios).map(function defaultScenarioEntry([name, slot]) {
|
|
57
|
+
return [name, slot.default];
|
|
58
|
+
})));
|
|
59
|
+
}
|
|
60
|
+
export function scenarioBindingsForTiming(scenarios, bindings, timing) {
|
|
61
|
+
return Object.freeze(Object.fromEntries(Object.entries(scenarios).flatMap(function bindingForMatchingTiming([name, slot]) {
|
|
62
|
+
if (slot.timing !== timing) {
|
|
63
|
+
return [];
|
|
64
|
+
}
|
|
65
|
+
return [[name, bindings[name] ?? slot.default]];
|
|
66
|
+
})));
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=resource-scenario.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-scenario.js","sourceRoot":"","sources":["../../../../source/resources/resource-scenario.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,12 +16,13 @@ export type ResourceSession<Resources extends ResourceDependencies> = AsyncDispo
|
|
|
16
16
|
readonly context: ResourceContext<Resources>;
|
|
17
17
|
readonly disposeOnce: (context: ResourceSessionDisposalContext) => Promise<void>;
|
|
18
18
|
};
|
|
19
|
-
export declare function disposeResources(order: readonly ResourceNode[],
|
|
19
|
+
export declare function disposeResources(order: readonly ResourceNode[], ownerHandles: ReadonlyMap<AnyResourceDefinition, unknown>, resourceHandles: ReadonlyMap<AnyResourceDefinition, unknown>, signal: AbortSignal): Promise<readonly ResourceLifecycleFailure[]>;
|
|
20
20
|
export declare function runtimeAsyncDisposeSymbol(): symbol;
|
|
21
21
|
export declare function acquireResourceGraph<Resources extends ResourceDependencies>(request: StartResourcesRequest<Resources>, context: ResourceAcquisitionContext): Promise<{
|
|
22
22
|
readonly context: ResourceContext<Resources>;
|
|
23
|
-
readonly
|
|
23
|
+
readonly ownerHandles: ReadonlyMap<AnyResourceDefinition, unknown>;
|
|
24
24
|
readonly order: readonly ResourceNode[];
|
|
25
|
+
readonly resourceHandles: ReadonlyMap<AnyResourceDefinition, unknown>;
|
|
25
26
|
}>;
|
|
26
27
|
export declare function startResources<Resources extends ResourceDependencies>(request: StartResourcesRequest<Resources>): Promise<ResourceSession<Resources>>;
|
|
27
28
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-session.d.ts","sourceRoot":"","sources":["../../../../source/resources/resource-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,qBAAqB,EAErB,eAAe,EAEf,oBAAoB,
|
|
1
|
+
{"version":3,"file":"resource-session.d.ts","sourceRoot":"","sources":["../../../../source/resources/resource-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,qBAAqB,EAErB,eAAe,EAEf,oBAAoB,EAGvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAMH,KAAK,YAAY,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGH,KAAK,wBAAwB,EAChC,MAAM,+BAA+B,CAAC;AAcvC,KAAK,0BAA0B,GAAG;IAC9B,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;IAC3C,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;CACzC,CAAC;AAiBF,MAAM,MAAM,qBAAqB,CAAC,SAAS,SAAS,oBAAoB,IAAI;IACxE,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IACzC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,eAAe,CAAC,SAAS,SAAS,oBAAoB,IAAI,eAAe,GAAG;IACpF,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IAC7C,QAAQ,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,8BAA8B,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpF,CAAC;AAwDF,wBAAsB,gBAAgB,CAClC,KAAK,EAAE,SAAS,YAAY,EAAE,EAC9B,YAAY,EAAE,WAAW,CAAC,qBAAqB,EAAE,OAAO,CAAC,EACzD,eAAe,EAAE,WAAW,CAAC,qBAAqB,EAAE,OAAO,CAAC,EAC5D,MAAM,EAAE,WAAW,GACpB,OAAO,CAAC,SAAS,wBAAwB,EAAE,CAAC,CAY9C;AA4ID,wBAAgB,yBAAyB,IAAI,MAAM,CAQlD;AAQD,wBAAsB,oBAAoB,CAAC,SAAS,SAAS,oBAAoB,EAC7E,OAAO,EAAE,qBAAqB,CAAC,SAAS,CAAC,EACzC,OAAO,EAAE,0BAA0B,GACpC,OAAO,CAAC;IACP,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;IAC7C,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;IACnE,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IACxC,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;CACzE,CAAC,CAUD;AAED,wBAAsB,cAAc,CAAC,SAAS,SAAS,oBAAoB,EACvE,OAAO,EAAE,qBAAqB,CAAC,SAAS,CAAC,GAC1C,OAAO,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,CAiCrC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { callableResourceDefinition, createResourceGraph, resourceEntries } from "./resource-graph.js";
|
|
2
2
|
import { lifecycleFailures, resourceLifecycleError } from "./resource-lifecycle-error.js";
|
|
3
|
+
import { acquisitionResourceScenarioBindings, exposeResourceHandle } from "./resource-scenario-binding.js";
|
|
3
4
|
const directResourceAcquisitionContext = {
|
|
4
5
|
acquisitionFailureMessage: 'Resource acquisition failed.',
|
|
5
6
|
fallbackResourceName: 'resource'
|
|
@@ -17,15 +18,16 @@ function acquireResourceHandle(resource, context) {
|
|
|
17
18
|
function disposeResourceHandle(dispose, handle, context) {
|
|
18
19
|
return dispose(handle, context);
|
|
19
20
|
}
|
|
20
|
-
async function disposeResource(node,
|
|
21
|
-
const handle =
|
|
21
|
+
async function disposeResource(node, ownerHandles, resourceHandles, signal) {
|
|
22
|
+
const handle = ownerHandles.get(node.descriptor);
|
|
22
23
|
const { dispose } = callableResourceDefinition(node.descriptor);
|
|
23
24
|
if (handle === undefined || dispose === null) {
|
|
24
25
|
return null;
|
|
25
26
|
}
|
|
26
27
|
try {
|
|
27
28
|
await disposeResourceHandle(dispose, handle, {
|
|
28
|
-
dependencies: acquiredDependencyHandles(node.descriptor.dependencies,
|
|
29
|
+
dependencies: acquiredDependencyHandles(node.descriptor.dependencies, resourceHandles),
|
|
30
|
+
scenarios: acquisitionResourceScenarioBindings(node.descriptor),
|
|
29
31
|
signal
|
|
30
32
|
});
|
|
31
33
|
return null;
|
|
@@ -34,18 +36,18 @@ async function disposeResource(node, handles, signal) {
|
|
|
34
36
|
return { cause: error, phase: 'dispose', resourceName: node.descriptor.name };
|
|
35
37
|
}
|
|
36
38
|
}
|
|
37
|
-
export async function disposeResources(order,
|
|
39
|
+
export async function disposeResources(order, ownerHandles, resourceHandles, signal) {
|
|
38
40
|
const failures = [];
|
|
39
41
|
for (const node of order.toReversed()) {
|
|
40
|
-
const failure = await disposeResource(node,
|
|
42
|
+
const failure = await disposeResource(node, ownerHandles, resourceHandles, signal);
|
|
41
43
|
if (failure !== null) {
|
|
42
44
|
failures.push(failure);
|
|
43
45
|
}
|
|
44
46
|
}
|
|
45
47
|
return failures;
|
|
46
48
|
}
|
|
47
|
-
async function disposeResourceSession(order,
|
|
48
|
-
const failures = await disposeResources(order,
|
|
49
|
+
async function disposeResourceSession(order, ownerHandles, resourceHandles, signal) {
|
|
50
|
+
const failures = await disposeResources(order, ownerHandles, resourceHandles, signal);
|
|
49
51
|
if (failures.length > 0) {
|
|
50
52
|
throw resourceLifecycleError('Resource disposal failed.', failures, failures[0]?.cause);
|
|
51
53
|
}
|
|
@@ -54,7 +56,8 @@ function createResourceAcquisition(signal, acquisitionContext) {
|
|
|
54
56
|
const abortController = new AbortController();
|
|
55
57
|
const acquisitionSignal = AbortSignal.any([signal, abortController.signal]);
|
|
56
58
|
const acquisitions = new Map();
|
|
57
|
-
const
|
|
59
|
+
const ownerHandles = new Map();
|
|
60
|
+
const resourceHandles = new Map();
|
|
58
61
|
const acquisition = {
|
|
59
62
|
async acquire(graph) {
|
|
60
63
|
const results = await Promise.allSettled(graph.topLevelEntries.map(async function acquireTopLevel([, resource]) {
|
|
@@ -64,7 +67,7 @@ function createResourceAcquisition(signal, acquisitionContext) {
|
|
|
64
67
|
if (failures.length > 0) {
|
|
65
68
|
return await acquisition.failStartup(graph, failures);
|
|
66
69
|
}
|
|
67
|
-
return {
|
|
70
|
+
return { ownerHandles, resourceHandles };
|
|
68
71
|
},
|
|
69
72
|
async dependencies(dependencies) {
|
|
70
73
|
const context = {};
|
|
@@ -75,7 +78,7 @@ function createResourceAcquisition(signal, acquisitionContext) {
|
|
|
75
78
|
},
|
|
76
79
|
async failStartup(graph, failures) {
|
|
77
80
|
abortController.abort(failures[0]?.cause);
|
|
78
|
-
const disposalFailures = await disposeResources(graph.order,
|
|
81
|
+
const disposalFailures = await disposeResources(graph.order, ownerHandles, resourceHandles, signal);
|
|
79
82
|
throw resourceLifecycleError(acquisitionContext.acquisitionFailureMessage, [
|
|
80
83
|
...failures,
|
|
81
84
|
...disposalFailures
|
|
@@ -93,12 +96,15 @@ function createResourceAcquisition(signal, acquisitionContext) {
|
|
|
93
96
|
async start(resource) {
|
|
94
97
|
const dependencies = await acquisition.dependencies(resource.dependencies);
|
|
95
98
|
try {
|
|
96
|
-
const
|
|
99
|
+
const ownerHandle = await acquireResourceHandle(resource, {
|
|
97
100
|
dependencies,
|
|
101
|
+
scenarios: acquisitionResourceScenarioBindings(resource),
|
|
98
102
|
signal: acquisitionSignal
|
|
99
103
|
});
|
|
100
|
-
|
|
101
|
-
|
|
104
|
+
ownerHandles.set(resource, ownerHandle);
|
|
105
|
+
const resourceHandle = exposeResourceHandle(resource, ownerHandle);
|
|
106
|
+
resourceHandles.set(resource, resourceHandle);
|
|
107
|
+
return resourceHandle;
|
|
102
108
|
}
|
|
103
109
|
catch (error) {
|
|
104
110
|
abortController.abort(error);
|
|
@@ -149,9 +155,10 @@ export async function acquireResourceGraph(request, context) {
|
|
|
149
155
|
const graph = createResourceGraph(request.resources);
|
|
150
156
|
const acquisition = await createResourceAcquisition(request.signal, context).acquire(graph);
|
|
151
157
|
return {
|
|
152
|
-
context: resourceContext(request.resources, acquisition.
|
|
153
|
-
|
|
154
|
-
order: graph.order
|
|
158
|
+
context: resourceContext(request.resources, acquisition.resourceHandles),
|
|
159
|
+
ownerHandles: acquisition.ownerHandles,
|
|
160
|
+
order: graph.order,
|
|
161
|
+
resourceHandles: acquisition.resourceHandles
|
|
155
162
|
};
|
|
156
163
|
}
|
|
157
164
|
export async function startResources(request) {
|
|
@@ -161,7 +168,7 @@ export async function startResources(request) {
|
|
|
161
168
|
context: acquisition.context,
|
|
162
169
|
async disposeOnce(disposalContext) {
|
|
163
170
|
if (disposal === null) {
|
|
164
|
-
disposal = disposeResourceSession(acquisition.order, acquisition.
|
|
171
|
+
disposal = disposeResourceSession(acquisition.order, acquisition.ownerHandles, acquisition.resourceHandles, disposalContext.signal);
|
|
165
172
|
}
|
|
166
173
|
await disposal;
|
|
167
174
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resource-session.js","sourceRoot":"","sources":["../../../../source/resources/resource-session.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"resource-session.js","sourceRoot":"","sources":["../../../../source/resources/resource-session.ts"],"names":[],"mappings":"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"}
|
package/resources/resources.d.ts
CHANGED
|
@@ -1,6 +1,38 @@
|
|
|
1
|
-
import
|
|
2
|
-
import {
|
|
3
|
-
import type
|
|
1
|
+
import type { Except } from 'type-fest';
|
|
2
|
+
import { defineRuntime as createRuntimeDefinition, isDefinedRuntime as isRuntimeDefinition, resolvedRuntimeScenarioOwners as readRuntimeScenarioOwners, type RuntimeDefinition as RuntimeDefinitionDescriptor, type RuntimeDefinitionInput as RuntimeDefinitionDescriptorInput, type RuntimeDimensions as RuntimeDimensionMap, type RuntimeId as RuntimeIdentity, type RuntimeScenarioOwner as RuntimeScenarioOwnerShape } from './runtime-definition.ts';
|
|
3
|
+
import { type ComposedRuntimeGraph as ComposedRuntimeGraphDescriptor, type RuntimeGraph as RuntimeGraphDescriptor, type RuntimeGraphLeaf as RuntimeGraphLeafDescriptor, type RuntimeMatrixDefinition as RuntimeMatrixDescriptor, type RuntimeMatrixDefinitionInput as RuntimeMatrixDescriptorInput, type SharedRuntimeMatrixDefinitionInput as SharedRuntimeMatrixDescriptorInput, type RuntimeMatrixVariant as RuntimeMatrixVariantDescriptor } from './runtime-matrix-definition.ts';
|
|
4
|
+
import type { AnyResourceDefinition as AnyResourceDefinitionShape, Awaitable as AwaitableShape, EmptyResourceDependencies as EmptyResourceDependenciesShape, ExecutionRequirement as ExecutionRequirementShape, ResourceDependencies as ResourceDependenciesShape, ResourceProjectionPayload as ResourceProjectionPayloadShape, ResourceScope as ResourceScopeShape, RuntimeResourceMap as RuntimeResourceMapShape } from './resource-definition-shape.ts';
|
|
5
|
+
import type { DefineResource as DefineResourceShape, LocalOnlyResourceDefinitionInput as LocalOnlyResourceDefinitionInputShape, ProjectedResourceDefinitionInput as ProjectedResourceDefinitionInputShape, ResourceContext as ResourceContextShape, ResourceCreationContext as ResourceCreationContextShape, ResourceDefinition as ResourceDefinitionShape, ResourceDefinitionInput as ResourceDefinitionInputShape, ResourceDisposalContext as ResourceDisposalContextShape, ResourceHandle as ResourceHandleShape, ResourceProjectionContext as ResourceProjectionContextShape, ScenarioLocalInput as ScenarioLocalInputShape, ScenarioProjectedInput as ScenarioProjectedInputShape, WithDependencies as WithDependenciesShape } from './resource-definition-types.ts';
|
|
6
|
+
import type { ResourceScenarioBindings as ResourceScenarioBindingsShape, ResourceScenarioSlot as ResourceScenarioSlotShape, ResourceScenarioSlotInput as ResourceScenarioSlotInputShape, ResourceScenarioSlotInputs as ResourceScenarioSlotInputsShape, ResourceScenarioSlots as ResourceScenarioSlotsShape, ResourceScenarioSlotsFromInputs as ResourceScenarioSlotsFromInputsShape, ScenarioTiming as ScenarioTimingShape } from './resource-scenario.ts';
|
|
7
|
+
import { resolvedResourceScenarioBindings as readResourceScenarioBindings } from './resource-scenario-binding.ts';
|
|
8
|
+
declare const composeRuntimeGraphs: <const Runtimes extends readonly [RuntimeGraphDescriptor, ...RuntimeGraphDescriptor[]]>(...runtimes: Runtimes) => ComposedRuntimeGraphDescriptor<{ readonly [Key in keyof Runtimes]: Runtimes[Key] extends infer T ? T extends Runtimes[Key] ? T extends ComposedRuntimeGraphDescriptor<infer Runtimes_1 extends readonly RuntimeGraphLeafDescriptor[]> ? Runtimes_1[number] : Extract<T, RuntimeGraphLeafDescriptor> : never : never; }>;
|
|
9
|
+
declare const createRuntimeMatrixDefinition: {
|
|
10
|
+
<const Name extends string, const Dimensions extends RuntimeDimensionMap, const Resources extends RuntimeResourceMapShape, const Variants extends Readonly<Record<string, RuntimeDefinitionDescriptor<string, Dimensions, Resources>>>>(definition: RuntimeMatrixDescriptorInput<Name, Variants>): RuntimeMatrixDescriptor<Name, { readonly [VariantId in keyof Variants]: RuntimeMatrixVariantDescriptor<VariantId & string, Extract<Variants[VariantId], RuntimeDefinitionDescriptor> | Extract<Variants[VariantId] extends infer T ? T extends Variants[VariantId] ? T extends (shared: never) => infer Runtime ? Runtime : never : never : never, RuntimeDefinitionDescriptor>>; }>;
|
|
11
|
+
<const Name extends string, Shared, const Dimensions extends RuntimeDimensionMap, const Resources extends RuntimeResourceMapShape, const Variants extends Readonly<Record<string, RuntimeDefinitionDescriptor<string, Dimensions, Resources> | ((shared: Shared) => RuntimeDefinitionDescriptor<string, Dimensions, Resources>)>>>(definition: SharedRuntimeMatrixDescriptorInput<Name, Shared, Variants>): RuntimeMatrixDescriptor<Name, { readonly [VariantId in keyof Variants]: RuntimeMatrixVariantDescriptor<VariantId & string, Extract<Variants[VariantId], RuntimeDefinitionDescriptor> | Extract<Variants[VariantId] extends infer T ? T extends Variants[VariantId] ? T extends (shared: Shared) => infer Runtime ? Runtime : never : never : never, RuntimeDefinitionDescriptor>>; }>;
|
|
12
|
+
};
|
|
13
|
+
export type ProjectedResourceScope = 'per-file' | 'per-run' | 'per-suite';
|
|
14
|
+
export type WithDependencies<Input, Dependencies extends ResourceDependencies> = WithDependenciesShape<Input, Dependencies>;
|
|
15
|
+
export type LocalOnlyResourceDefinitionInput<Name extends string, Handle, Scope extends ResourceScope, Dependencies extends ResourceDependencies = EmptyResourceDependencies, Scenarios extends ResourceScenarioSlots = Readonly<Record<PropertyKey, never>>> = LocalOnlyResourceDefinitionInputShape<Name, Handle, Scope, Dependencies, Scenarios>;
|
|
16
|
+
export type ProjectedResourceDefinitionInput<Name extends string, OwnerHandle, Projection extends ResourceProjectionPayload, ConsumerHandle, Scope extends ProjectedResourceScope, Dependencies extends ResourceDependencies = EmptyResourceDependencies, Scenarios extends ResourceScenarioSlots = Readonly<Record<PropertyKey, never>>> = ProjectedResourceDefinitionInputShape<Name, OwnerHandle, Projection, ConsumerHandle, Scope, Dependencies, Scenarios>;
|
|
17
|
+
export type ScenarioLocalInput<Name extends string, Handle, Scope extends Exclude<ResourceScope, 'per-run'>, Dependencies extends ResourceDependencies, ScenarioInputs extends ResourceScenarioSlotInputs> = ScenarioLocalInputShape<Name, Handle, Scope, Dependencies, ScenarioInputs>;
|
|
18
|
+
export type ScenarioProjectedInput<Name extends string, OwnerHandle, Projection extends ResourceProjectionPayload, ConsumerHandle, Scope extends ProjectedResourceScope, Dependencies extends ResourceDependencies, ScenarioInputs extends ResourceScenarioSlotInputs> = ScenarioProjectedInputShape<Name, OwnerHandle, Projection, ConsumerHandle, Scope, Dependencies, ScenarioInputs>;
|
|
19
|
+
export declare const isDefinedResource: (resource: unknown) => resource is ResourceDefinitionShape, resolvedResourceScenarioBindings: typeof readResourceScenarioBindings, resolvedRuntimeScenarioOwners: typeof readRuntimeScenarioOwners;
|
|
20
|
+
export declare function defineResource<const Name extends string, Handle, Scope extends Exclude<ResourceScope, 'per-run'>, const Dependencies extends ResourceDependencies, const ScenarioInputs extends ResourceScenarioSlotInputs>(definition: WithDependencies<ScenarioLocalInput<Name, Handle, Scope, Dependencies, ScenarioInputs>, Dependencies>): ResourceDefinition<Name, Handle, Dependencies, Handle, ResourceScenarioSlotsFromInputs<ScenarioInputs>>;
|
|
21
|
+
export declare function defineResource<const Name extends string, OwnerHandle, Projection extends ResourceProjectionPayload, ConsumerHandle, Scope extends ProjectedResourceScope, const Dependencies extends ResourceDependencies, const ScenarioInputs extends ResourceScenarioSlotInputs>(definition: WithDependencies<ScenarioProjectedInput<Name, OwnerHandle, Projection, ConsumerHandle, Scope, Dependencies, ScenarioInputs>, Dependencies>): ResourceDefinition<Name, OwnerHandle, Dependencies, ConsumerHandle, ResourceScenarioSlotsFromInputs<ScenarioInputs>>;
|
|
22
|
+
export declare function defineResource<const Name extends string, Handle, Scope extends Exclude<ResourceScope, 'per-run'>, const ScenarioInputs extends ResourceScenarioSlotInputs>(definition: Except<ScenarioLocalInput<Name, Handle, Scope, EmptyResourceDependencies, ScenarioInputs>, 'dependencies'>): ResourceDefinition<Name, Handle, EmptyResourceDependencies, Handle, ResourceScenarioSlotsFromInputs<ScenarioInputs>>;
|
|
23
|
+
export declare function defineResource<const Name extends string, OwnerHandle, Projection extends ResourceProjectionPayload, ConsumerHandle, Scope extends ProjectedResourceScope, const ScenarioInputs extends ResourceScenarioSlotInputs>(definition: Except<ScenarioProjectedInput<Name, OwnerHandle, Projection, ConsumerHandle, Scope, EmptyResourceDependencies, ScenarioInputs>, 'dependencies'>): ResourceDefinition<Name, OwnerHandle, EmptyResourceDependencies, ConsumerHandle, ResourceScenarioSlotsFromInputs<ScenarioInputs>>;
|
|
24
|
+
export declare function defineResource<const Name extends string, Handle, Scope extends Exclude<ResourceScope, 'per-run'>>(definition: Except<LocalOnlyResourceDefinitionInput<Name, Handle, Scope>, 'scenarios'>): ResourceDefinition<Name, Handle, EmptyResourceDependencies, Handle>;
|
|
25
|
+
export declare function defineResource<const Name extends string, OwnerHandle, Projection extends ResourceProjectionPayload, ConsumerHandle, Scope extends ProjectedResourceScope>(definition: Except<ProjectedResourceDefinitionInput<Name, OwnerHandle, Projection, ConsumerHandle, Scope>, 'scenarios'>): ResourceDefinition<Name, OwnerHandle, EmptyResourceDependencies, ConsumerHandle>;
|
|
26
|
+
export declare function defineResource<const Name extends string, Handle, Scope extends Exclude<ResourceScope, 'per-run'>, const Dependencies extends ResourceDependencies>(definition: WithDependencies<Except<LocalOnlyResourceDefinitionInput<Name, Handle, Scope, Dependencies>, 'scenarios'>, Dependencies>): ResourceDefinition<Name, Handle, Dependencies, Handle>;
|
|
27
|
+
export declare function defineResource<const Name extends string, OwnerHandle, Projection extends ResourceProjectionPayload, ConsumerHandle, Scope extends ProjectedResourceScope, const Dependencies extends ResourceDependencies>(definition: WithDependencies<Except<ProjectedResourceDefinitionInput<Name, OwnerHandle, Projection, ConsumerHandle, Scope, Dependencies>, 'scenarios'>, Dependencies>): ResourceDefinition<Name, OwnerHandle, Dependencies, ConsumerHandle>;
|
|
28
|
+
export type RuntimeScenarioOwner = RuntimeScenarioOwnerShape;
|
|
29
|
+
export type ResourceScenarioBindings<Scenarios extends ResourceScenarioSlots> = ResourceScenarioBindingsShape<Scenarios>;
|
|
30
|
+
export type ResourceScenarioSlot<Scenario extends string = string> = ResourceScenarioSlotShape<Scenario>;
|
|
31
|
+
export type ResourceScenarioSlotInput<Scenario extends string = string> = ResourceScenarioSlotInputShape<Scenario>;
|
|
32
|
+
export type ResourceScenarioSlotInputs = ResourceScenarioSlotInputsShape;
|
|
33
|
+
export type ResourceScenarioSlots = ResourceScenarioSlotsShape;
|
|
34
|
+
export type ResourceScenarioSlotsFromInputs<Inputs extends ResourceScenarioSlotInputs> = ResourceScenarioSlotsFromInputsShape<Inputs>;
|
|
35
|
+
export type ScenarioTiming = ScenarioTimingShape;
|
|
4
36
|
export type AnyResourceDefinition = AnyResourceDefinitionShape;
|
|
5
37
|
export type Awaitable<Value> = AwaitableShape<Value>;
|
|
6
38
|
export type EmptyResourceDependencies = EmptyResourceDependenciesShape;
|
|
@@ -9,11 +41,18 @@ export type ResourceDependencies = ResourceDependenciesShape;
|
|
|
9
41
|
export type ResourceProjectionPayload = ResourceProjectionPayloadShape;
|
|
10
42
|
export type ResourceScope = ResourceScopeShape;
|
|
11
43
|
export type RuntimeResourceMap = RuntimeResourceMapShape;
|
|
44
|
+
export type ResourceContext<Resources extends ResourceDependencies> = ResourceContextShape<Resources>;
|
|
45
|
+
export type ResourceCreationContext<Dependencies extends ResourceDependencies = EmptyResourceDependencies, Scenarios extends ResourceScenarioSlots = Readonly<Record<PropertyKey, never>>> = ResourceCreationContextShape<Dependencies, Scenarios>;
|
|
46
|
+
export type ResourceDefinition<Name extends string = string, OwnerHandle = unknown, Dependencies extends ResourceDependencies = ResourceDependencies, ConsumerHandle = OwnerHandle, Scenarios extends ResourceScenarioSlots = Readonly<Record<PropertyKey, never>>> = ResourceDefinitionShape<Name, OwnerHandle, Dependencies, ConsumerHandle, Scenarios>;
|
|
47
|
+
export type ResourceDefinitionInput<Name extends string, Handle, Dependencies extends ResourceDependencies = EmptyResourceDependencies, Projection extends ResourceProjectionPayload = ResourceProjectionPayload, ConsumerHandle = Handle> = ResourceDefinitionInputShape<Name, Handle, Dependencies, Projection, ConsumerHandle>;
|
|
48
|
+
export type ResourceDisposalContext<Dependencies extends ResourceDependencies = EmptyResourceDependencies, Scenarios extends ResourceScenarioSlots = Readonly<Record<PropertyKey, never>>> = ResourceDisposalContextShape<Dependencies, Scenarios>;
|
|
49
|
+
export type ResourceHandle<Resource extends AnyResourceDefinition> = ResourceHandleShape<Resource>;
|
|
50
|
+
export type ResourceProjectionContext<Dependencies extends ResourceDependencies = EmptyResourceDependencies> = ResourceProjectionContextShape<Dependencies>;
|
|
12
51
|
export declare const defineRuntime: typeof createRuntimeDefinition;
|
|
13
52
|
export declare const isDefinedRuntime: typeof isRuntimeDefinition;
|
|
14
|
-
export declare const isDefinedRuntimeMatrix:
|
|
15
|
-
export declare const composeRuntimes:
|
|
16
|
-
export type RuntimeDefinition<Name extends string = string, Dimensions extends RuntimeDimensionMap = RuntimeDimensionMap, Resources extends RuntimeResourceMap = RuntimeResourceMap> = RuntimeDefinitionDescriptor<Name, Dimensions, Resources>;
|
|
53
|
+
export declare const isDefinedRuntimeMatrix: (runtime: unknown) => runtime is RuntimeMatrixDescriptor;
|
|
54
|
+
export declare const composeRuntimes: <const Runtimes extends readonly [RuntimeGraphDescriptor, ...RuntimeGraphDescriptor[]]>(...runtimes: Runtimes) => ComposedRuntimeGraphDescriptor<{ readonly [Key in keyof Runtimes]: Runtimes[Key] extends infer T ? T extends Runtimes[Key] ? T extends ComposedRuntimeGraphDescriptor<infer Runtimes_1 extends readonly RuntimeGraphLeafDescriptor[]> ? Runtimes_1[number] : Extract<T, RuntimeGraphLeafDescriptor> : never : never; }>;
|
|
55
|
+
export type RuntimeDefinition<Name extends string = string, Dimensions extends RuntimeDimensionMap = RuntimeDimensionMap, Resources extends RuntimeResourceMap = RuntimeResourceMap, Scenarios extends ResourceScenarioSlots = ResourceScenarioSlots> = RuntimeDefinitionDescriptor<Name, Dimensions, Resources, Scenarios>;
|
|
17
56
|
export type RuntimeDefinitionInput<Name extends string, Dimensions extends RuntimeDimensionMap, Resources extends RuntimeResourceMap> = RuntimeDefinitionDescriptorInput<Name, Dimensions, Resources>;
|
|
18
57
|
export type RuntimeDimensions = RuntimeDimensionMap;
|
|
19
58
|
export type RuntimeGraph = RuntimeGraphDescriptor;
|
|
@@ -25,66 +64,6 @@ export type RuntimeMatrixDefinitionInput<Name extends string, Variants extends R
|
|
|
25
64
|
export type SharedRuntimeMatrixDefinitionInput<Name extends string, Shared, Variants extends Readonly<Record<string, RuntimeDefinition | ((shared: Shared) => RuntimeDefinition)>>> = SharedRuntimeMatrixDescriptorInput<Name, Shared, Variants>;
|
|
26
65
|
export type RuntimeMatrixVariant<VariantId extends string = string, Runtime extends RuntimeDefinition = RuntimeDefinition> = RuntimeMatrixVariantDescriptor<VariantId, Runtime>;
|
|
27
66
|
export type RuntimeMatrixVariantMap = Readonly<Record<string, RuntimeMatrixVariant>>;
|
|
28
|
-
declare const resourceDefinitionBrand: unique symbol;
|
|
29
|
-
export type ResourceProjectionContext<Dependencies extends ResourceDependencies = EmptyResourceDependencies> = {
|
|
30
|
-
readonly dependencies: ResourceContext<Dependencies>;
|
|
31
|
-
};
|
|
32
|
-
export type ResourceHandle<Resource extends AnyResourceDefinition> = Resource extends {
|
|
33
|
-
readonly deserializeHandle?: ((payload: never, context: never) => infer ConsumerHandle) | undefined;
|
|
34
|
-
} ? ConsumerHandle : Awaited<ReturnType<Resource['acquire']>>;
|
|
35
|
-
export type ResourceContext<Resources extends ResourceDependencies> = {
|
|
36
|
-
readonly [Key in keyof Resources]: ResourceHandle<Resources[Key]>;
|
|
37
|
-
};
|
|
38
|
-
export type ResourceCreationContext<Dependencies extends ResourceDependencies = EmptyResourceDependencies> = {
|
|
39
|
-
readonly dependencies: ResourceContext<Dependencies>;
|
|
40
|
-
readonly signal: AbortSignal;
|
|
41
|
-
};
|
|
42
|
-
export type ResourceDisposalContext<Dependencies extends ResourceDependencies = EmptyResourceDependencies> = {
|
|
43
|
-
readonly dependencies: ResourceContext<Dependencies>;
|
|
44
|
-
readonly signal: AbortSignal;
|
|
45
|
-
};
|
|
46
|
-
type ResourceDefinitionBaseInput<Name extends string, Handle, Scope extends ResourceScope, Dependencies extends ResourceDependencies = EmptyResourceDependencies> = {
|
|
47
|
-
readonly acquire: (context: ResourceCreationContext<Dependencies>) => Awaitable<Handle>;
|
|
48
|
-
readonly dependencies?: Dependencies;
|
|
49
|
-
readonly dispose: ((handle: Handle, context: ResourceDisposalContext<Dependencies>) => Awaitable<void>) | null;
|
|
50
|
-
readonly name: Name;
|
|
51
|
-
readonly requirements: readonly ExecutionRequirement[];
|
|
52
|
-
readonly scope: Scope;
|
|
53
|
-
};
|
|
54
|
-
type LocalOnlyResourceDefinitionInput<Name extends string, Handle, Scope extends ResourceScope, Dependencies extends ResourceDependencies = EmptyResourceDependencies> = ResourceDefinitionBaseInput<Name, Handle, Scope, Dependencies> & {
|
|
55
|
-
readonly deserializeHandle?: never;
|
|
56
|
-
readonly serializeHandle?: never;
|
|
57
|
-
};
|
|
58
|
-
type ProjectedResourceDefinitionInput<Name extends string, OwnerHandle, Projection extends ResourceProjectionPayload, ConsumerHandle, Scope extends 'per-file' | 'per-run' | 'per-suite', Dependencies extends ResourceDependencies = EmptyResourceDependencies> = ResourceDefinitionBaseInput<Name, OwnerHandle, Scope, Dependencies> & {
|
|
59
|
-
readonly deserializeHandle: (payload: Projection, context: ResourceProjectionContext<Dependencies>) => ConsumerHandle;
|
|
60
|
-
readonly serializeHandle: (handle: OwnerHandle, context: ResourceProjectionContext<Dependencies>) => Projection;
|
|
61
|
-
};
|
|
62
|
-
export type ResourceDefinitionInput<Name extends string, Handle, Dependencies extends ResourceDependencies = EmptyResourceDependencies, Projection extends ResourceProjectionPayload = ResourceProjectionPayload, ConsumerHandle = Handle> = ValueOf<ResourceDefinitionInputOptions<Name, Handle, Dependencies, Projection, ConsumerHandle>>;
|
|
63
|
-
type ResourceDefinitionInputOptions<Name extends string, Handle, Dependencies extends ResourceDependencies, Projection extends ResourceProjectionPayload, ConsumerHandle> = {
|
|
64
|
-
readonly local: LocalResourceDefinitionInput<Name, Handle, Dependencies>;
|
|
65
|
-
readonly projected: ProjectedResourceInput<Name, Handle, Projection, ConsumerHandle, Dependencies>;
|
|
66
|
-
};
|
|
67
|
-
type LocalResourceDefinitionInput<Name extends string, Handle, Dependencies extends ResourceDependencies> = LocalCaseResourceInput<Name, Handle, Dependencies> | LocalFileResourceInput<Name, Handle, Dependencies>;
|
|
68
|
-
type LocalCaseResourceInput<Name extends string, Handle, Dependencies extends ResourceDependencies> = LocalOnlyResourceDefinitionInput<Name, Handle, 'per-case' | 'shared-per-worker', Dependencies>;
|
|
69
|
-
type LocalFileResourceInput<Name extends string, Handle, Dependencies extends ResourceDependencies> = LocalOnlyResourceDefinitionInput<Name, Handle, 'per-file' | 'per-suite', Dependencies>;
|
|
70
|
-
type ProjectedResourceInput<Name extends string, Handle, Projection extends ResourceProjectionPayload, ConsumerHandle, Dependencies extends ResourceDependencies> = ValueOf<ProjectedResourceInputOptions<Name, Handle, Projection, ConsumerHandle, Dependencies>>;
|
|
71
|
-
type ProjectedResourceInputOptions<Name extends string, Handle, Projection extends ResourceProjectionPayload, ConsumerHandle, Dependencies extends ResourceDependencies> = {
|
|
72
|
-
readonly file: ProjectedFileResourceInput<Name, Handle, Projection, ConsumerHandle, Dependencies>;
|
|
73
|
-
readonly run: ProjectedRunResourceInput<Name, Handle, Projection, ConsumerHandle, Dependencies>;
|
|
74
|
-
};
|
|
75
|
-
type ProjectedFileResourceInput<Name extends string, Handle, Projection extends ResourceProjectionPayload, ConsumerHandle, Dependencies extends ResourceDependencies> = ProjectedResourceDefinitionInput<Name, Handle, Projection, ConsumerHandle, 'per-file' | 'per-suite', Dependencies>;
|
|
76
|
-
type ProjectedRunResourceInput<Name extends string, Handle, Projection extends ResourceProjectionPayload, ConsumerHandle, Dependencies extends ResourceDependencies> = ProjectedResourceDefinitionInput<Name, Handle, Projection, ConsumerHandle, 'per-run', Dependencies>;
|
|
77
|
-
export type ResourceDefinition<Name extends string = string, OwnerHandle = unknown, Dependencies extends ResourceDependencies = ResourceDependencies, ConsumerHandle = OwnerHandle> = {
|
|
78
|
-
readonly acquire: (context: ResourceCreationContext<Dependencies>) => Awaitable<OwnerHandle>;
|
|
79
|
-
readonly dependencies: Dependencies;
|
|
80
|
-
readonly deserializeHandle?: (payload: ResourceProjectionPayload, context: ResourceProjectionContext<Dependencies>) => ConsumerHandle;
|
|
81
|
-
readonly dispose: ((handle: OwnerHandle, context: ResourceDisposalContext<Dependencies>) => Awaitable<void>) | null;
|
|
82
|
-
readonly name: Name;
|
|
83
|
-
readonly requirements: readonly ExecutionRequirement[];
|
|
84
|
-
readonly scope: ResourceScope;
|
|
85
|
-
readonly serializeHandle?: (handle: OwnerHandle, context: ResourceProjectionContext<Dependencies>) => ResourceProjectionPayload;
|
|
86
|
-
readonly [resourceDefinitionBrand]: true;
|
|
87
|
-
};
|
|
88
67
|
type UnionToIntersection<Value> = (Value extends unknown ? (value: Value) => void : never) extends (value: infer Intersection) => void ? Intersection : never;
|
|
89
68
|
type RuntimeGraphName<Graph extends RuntimeGraph> = ComposedRuntimeNames<Graph> | NamedRuntimeGraphName<Graph>;
|
|
90
69
|
type ComposedRuntimeNames<Graph extends RuntimeGraph> = Graph extends ComposedRuntimeGraph<infer Runtimes> ? RuntimeGraphName<Runtimes[number]> : never;
|
|
@@ -127,22 +106,13 @@ type CreateTemporaryDirectoryResource = <const Name extends string>(name: Name)
|
|
|
127
106
|
export type ResourcesModule = {
|
|
128
107
|
readonly composeRuntimeContext: typeof composeRuntimeContext;
|
|
129
108
|
readonly createTemporaryDirectoryResource: CreateTemporaryDirectoryResource;
|
|
130
|
-
readonly defineResource:
|
|
109
|
+
readonly defineResource: DefineResourceShape;
|
|
131
110
|
readonly defineRuntime: typeof defineRuntime;
|
|
132
111
|
readonly defineRuntimeMatrix: typeof createRuntimeMatrixDefinition;
|
|
133
112
|
readonly composeRuntimes: typeof composeRuntimeGraphs;
|
|
134
113
|
};
|
|
135
|
-
export declare function defineResource<const Name extends string, Handle, Scope extends Exclude<ResourceScope, 'per-run'>>(definition: LocalOnlyResourceDefinitionInput<Name, Handle, Scope>): ResourceDefinition<Name, Handle, EmptyResourceDependencies>;
|
|
136
|
-
export declare function defineResource<const Name extends string, OwnerHandle, Projection extends ResourceProjectionPayload, ConsumerHandle, Scope extends 'per-file' | 'per-run' | 'per-suite'>(definition: ProjectedResourceDefinitionInput<Name, OwnerHandle, Projection, ConsumerHandle, Scope>): ResourceDefinition<Name, OwnerHandle, EmptyResourceDependencies, ConsumerHandle>;
|
|
137
|
-
export declare function defineResource<const Name extends string, Handle, Scope extends Exclude<ResourceScope, 'per-run'>, const Dependencies extends ResourceDependencies>(definition: LocalOnlyResourceDefinitionInput<Name, Handle, Scope, Dependencies> & {
|
|
138
|
-
readonly dependencies: Dependencies;
|
|
139
|
-
}): ResourceDefinition<Name, Handle, Dependencies>;
|
|
140
|
-
export declare function defineResource<const Name extends string, OwnerHandle, Projection extends ResourceProjectionPayload, ConsumerHandle, Scope extends 'per-file' | 'per-run' | 'per-suite', const Dependencies extends ResourceDependencies>(definition: ProjectedResourceDefinitionInput<Name, OwnerHandle, Projection, ConsumerHandle, Scope, Dependencies> & {
|
|
141
|
-
readonly dependencies: Dependencies;
|
|
142
|
-
}): ResourceDefinition<Name, OwnerHandle, Dependencies, ConsumerHandle>;
|
|
143
114
|
declare function composeRuntimeContext<BaseContext extends Readonly<Record<string, unknown>>, Runtime extends RuntimeGraph>(context: BaseContext & RuntimeScopeGuard<BaseContext, Runtime>, runtime: Runtime, resourceHandles: RuntimeGraphContext<Runtime>): RuntimeContextComposition<BaseContext, Runtime>;
|
|
144
115
|
export declare function createResourcesModule(dependencies: ResourcesModuleDependencies): ResourcesModule;
|
|
145
|
-
export declare function isDefinedResource(resource: unknown): resource is AnyResourceDefinition;
|
|
146
116
|
export declare function isDefinedRuntimeGraph(runtime: unknown): runtime is RuntimeGraph;
|
|
147
117
|
export declare function runtimeGraphLeaves(runtime: RuntimeGraph): readonly RuntimeGraphLeaf[];
|
|
148
118
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../../source/resources/resources.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../../source/resources/resources.ts"],"names":[],"mappings":"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"}
|
package/resources/resources.js
CHANGED
|
@@ -1,10 +1,26 @@
|
|
|
1
|
-
import { defineRuntime as createRuntimeDefinition, isDefinedRuntime as isRuntimeDefinition } from "./runtime-definition.js";
|
|
2
|
-
import {
|
|
1
|
+
import { defineRuntime as createRuntimeDefinition, isDefinedRuntime as isRuntimeDefinition, resolvedRuntimeScenarioOwners as readRuntimeScenarioOwners } from "./runtime-definition.js";
|
|
2
|
+
import { runtimeMatrixDefinitionApi } from "./runtime-matrix-definition.js";
|
|
3
|
+
import { resourceDefinitionApi } from "./resource-definition.js";
|
|
4
|
+
import { resolvedResourceScenarioBindings as readResourceScenarioBindings } from "./resource-scenario-binding.js";
|
|
5
|
+
const composeRuntimeGraphs = runtimeMatrixDefinitionApi.composeRuntimes;
|
|
6
|
+
const createRuntimeMatrixDefinition = runtimeMatrixDefinitionApi.defineRuntimeMatrix;
|
|
7
|
+
const { isComposedRuntimeGraph } = runtimeMatrixDefinitionApi;
|
|
8
|
+
const isRuntimeMatrixDefinition = runtimeMatrixDefinitionApi.isDefinedRuntimeMatrix;
|
|
9
|
+
const runtimeGraphLeafDescriptors = runtimeMatrixDefinitionApi.runtimeGraphLeaves;
|
|
10
|
+
const createResourceDescriptor = resourceDefinitionApi.defineResource;
|
|
11
|
+
const isResourceDefinition = resourceDefinitionApi.isDefinedResource;
|
|
12
|
+
export const { isDefinedResource, resolvedResourceScenarioBindings, resolvedRuntimeScenarioOwners } = Object.freeze({
|
|
13
|
+
isDefinedResource: isResourceDefinition,
|
|
14
|
+
resolvedResourceScenarioBindings: readResourceScenarioBindings,
|
|
15
|
+
resolvedRuntimeScenarioOwners: readRuntimeScenarioOwners
|
|
16
|
+
});
|
|
17
|
+
export function defineResource(definition) {
|
|
18
|
+
return Reflect.apply(createResourceDescriptor, undefined, [definition]);
|
|
19
|
+
}
|
|
3
20
|
export const defineRuntime = createRuntimeDefinition;
|
|
4
21
|
export const isDefinedRuntime = isRuntimeDefinition;
|
|
5
22
|
export const isDefinedRuntimeMatrix = isRuntimeMatrixDefinition;
|
|
6
23
|
export const composeRuntimes = composeRuntimeGraphs;
|
|
7
|
-
const resourceDefinitionBrand = Symbol('overkill.resourceDefinition');
|
|
8
24
|
function assertRuntimeContextHandles(runtime, nextRuntimes) {
|
|
9
25
|
if (!isComposedRuntimeGraph(runtime)) {
|
|
10
26
|
return;
|
|
@@ -20,21 +36,6 @@ function runtimeContextHandles(runtime, resourceHandles) {
|
|
|
20
36
|
? resourceHandles
|
|
21
37
|
: { [runtime.name]: resourceHandles };
|
|
22
38
|
}
|
|
23
|
-
export function defineResource(definition) {
|
|
24
|
-
if (definition.dependencies === undefined) {
|
|
25
|
-
const dependencies = Object.freeze({});
|
|
26
|
-
return Object.freeze({
|
|
27
|
-
...definition,
|
|
28
|
-
dependencies,
|
|
29
|
-
[resourceDefinitionBrand]: true
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
return Object.freeze({
|
|
33
|
-
...definition,
|
|
34
|
-
dependencies: Object.freeze(definition.dependencies),
|
|
35
|
-
[resourceDefinitionBrand]: true
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
39
|
function createTemporaryDirectoryResource(dependencies, name) {
|
|
39
40
|
return defineResource({
|
|
40
41
|
name,
|
|
@@ -84,11 +85,6 @@ export function createResourcesModule(dependencies) {
|
|
|
84
85
|
defineRuntimeMatrix: createRuntimeMatrixDefinition
|
|
85
86
|
});
|
|
86
87
|
}
|
|
87
|
-
export function isDefinedResource(resource) {
|
|
88
|
-
return typeof resource === 'object' &&
|
|
89
|
-
resource !== null &&
|
|
90
|
-
Reflect.get(resource, resourceDefinitionBrand) === true;
|
|
91
|
-
}
|
|
92
88
|
export function isDefinedRuntimeGraph(runtime) {
|
|
93
89
|
return isDefinedRuntime(runtime) || isDefinedRuntimeMatrix(runtime) || isComposedRuntimeGraph(runtime);
|
|
94
90
|
}
|