ioc-manifest 1.4.0 → 1.4.1
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.
|
@@ -68,7 +68,7 @@ const buildExternalsAssertionLines = (specs) => {
|
|
|
68
68
|
const suffix = externalKeyToAssertionSuffix(externalKey);
|
|
69
69
|
const keyAccess = tsPropertyAccessKey(externalKey);
|
|
70
70
|
const satisfied = `_${cap}_${suffix}`;
|
|
71
|
-
lines.push(`type ${satisfied} = ${
|
|
71
|
+
lines.push(`type ${satisfied} = ${pickAlias}[${keyAccess}] extends ${cap}Externals[${keyAccess}] ? true : false;`, `type ${satisfied}Assert = _IocExpect<${satisfied}>;`);
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
return lines;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeComposedManifest.js","sourceRoot":"","sources":["../../src/generator/writeComposedManifest.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"writeComposedManifest.js","sourceRoot":"","sources":["../../src/generator/writeComposedManifest.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createValidateTypeChecker, findFirstMismatchedPropertyAcrossSuppliers, formatCheckerType, formatSupplierTypes, getInterfacePropertyType, getSupplierPropertyTypes,
|
|
1
|
+
import { createValidateTypeChecker, findFirstMismatchedPropertyAcrossSuppliers, formatCheckerType, formatSupplierTypes, getInterfacePropertyType, getSupplierPropertyTypes, isSuppliedAssignableToDemandedTypes, } from "../externalsTypeChecker.js";
|
|
2
2
|
export const CHECKER_UNAVAILABLE_CAVEAT = "Type compatibility not verified (no TypeScript checker available) — run `tsc` for the authoritative result.";
|
|
3
3
|
export const TYPE_NOT_RESOLVED_CAVEAT = "Type compatibility could not be verified for this key — run `tsc` for the authoritative result.";
|
|
4
4
|
const formatSupplierLabel = (slice) => slice.sourceId === "local"
|
|
@@ -61,7 +61,7 @@ const isExternalKeySatisfied = (ctx, suppliers, slice, externalKey, demandedText
|
|
|
61
61
|
if (supplierTypes.length === 0 || demandedType === undefined) {
|
|
62
62
|
return undefined;
|
|
63
63
|
}
|
|
64
|
-
return
|
|
64
|
+
return isSuppliedAssignableToDemandedTypes(ctx.checker, demandedType, supplierTypes);
|
|
65
65
|
};
|
|
66
66
|
const buildTypeMismatchDetails = (ctx, suppliers, slice, externalKey, demandedText) => {
|
|
67
67
|
const supplierLabels = suppliers.map((s) => formatSupplierLabel(s)).join(", ");
|
|
@@ -12,7 +12,7 @@ export declare const getInterfacePropertyType: (ctx: ValidateTypeCheckerContext,
|
|
|
12
12
|
export declare const getSupplierPropertyTypes: (ctx: ValidateTypeCheckerContext, suppliers: readonly {
|
|
13
13
|
readonly typesPath: string;
|
|
14
14
|
}[], interfaceName: string, propertyKey: string) => ts.Type[];
|
|
15
|
-
export declare const
|
|
15
|
+
export declare const isSuppliedAssignableToDemandedTypes: (checker: ts.TypeChecker, demanded: ts.Type, supplierTypes: readonly ts.Type[]) => boolean;
|
|
16
16
|
export declare const formatSupplierTypes: (checker: ts.TypeChecker, supplierTypes: readonly ts.Type[]) => string;
|
|
17
17
|
export declare const findFirstMismatchedPropertyAcrossSuppliers: (checker: ts.TypeChecker, demanded: ts.Type, supplierTypes: readonly ts.Type[]) => string | undefined;
|
|
18
18
|
export declare const findFirstMismatchedProperty: (checker: ts.TypeChecker, supplied: ts.Type, demanded: ts.Type) => string | undefined;
|
|
@@ -71,7 +71,7 @@ export const getInterfacePropertyType = (ctx, typesPath, interfaceName, property
|
|
|
71
71
|
export const getSupplierPropertyTypes = (ctx, suppliers, interfaceName, propertyKey) => suppliers
|
|
72
72
|
.map((slice) => getInterfacePropertyType(ctx, slice.typesPath, interfaceName, propertyKey))
|
|
73
73
|
.filter((type) => type !== undefined);
|
|
74
|
-
export const
|
|
74
|
+
export const isSuppliedAssignableToDemandedTypes = (checker, demanded, supplierTypes) => supplierTypes.every((supplied) => checker.isTypeAssignableTo(supplied, demanded));
|
|
75
75
|
export const formatSupplierTypes = (checker, supplierTypes) => {
|
|
76
76
|
if (supplierTypes.length === 0) {
|
|
77
77
|
return "unknown";
|
|
@@ -85,7 +85,7 @@ export const formatSupplierTypes = (checker, supplierTypes) => {
|
|
|
85
85
|
};
|
|
86
86
|
export const findFirstMismatchedPropertyAcrossSuppliers = (checker, demanded, supplierTypes) => {
|
|
87
87
|
for (const supplied of supplierTypes) {
|
|
88
|
-
if (!checker.isTypeAssignableTo(
|
|
88
|
+
if (!checker.isTypeAssignableTo(supplied, demanded)) {
|
|
89
89
|
return findFirstMismatchedProperty(checker, supplied, demanded);
|
|
90
90
|
}
|
|
91
91
|
}
|
|
@@ -98,7 +98,7 @@ export const findFirstMismatchedProperty = (checker, supplied, demanded) => {
|
|
|
98
98
|
const suppliedProp = getPropertyType(checker, supplied, propName);
|
|
99
99
|
if (demandedProp !== undefined &&
|
|
100
100
|
(suppliedProp === undefined ||
|
|
101
|
-
!checker.isTypeAssignableTo(
|
|
101
|
+
!checker.isTypeAssignableTo(suppliedProp, demandedProp))) {
|
|
102
102
|
return propName;
|
|
103
103
|
}
|
|
104
104
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ioc-manifest",
|
|
3
|
-
"version": "1.4.
|
|
3
|
+
"version": "1.4.1",
|
|
4
4
|
"description": "Build-time factory discovery and codegen: generates a typed Awilix (PROXY) registration manifest from TypeScript sources with ioc.config as the single policy surface.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|