feat: compose TechLog static and mock adapters
This commit is contained in:
@@ -1,16 +1,23 @@
|
||||
import type { ApplicationFeatureInputs } from "../application/ports/in/application-api.ts";
|
||||
import { createReferenceFeatureInstalledInput } from "./reference-feature/adapters/create-reference-feature-input.ts";
|
||||
import { REFERENCE_FEATURE_ID } from "./reference-feature/contracts/reference-feature-contract.ts";
|
||||
import { createTechLogFeatureInstalledInput } from "./tech-log/adapters/create-tech-log-feature-input.ts";
|
||||
import { TECH_LOG_FEATURE_ID } from "./tech-log/application/tech-log-feature-input.ts";
|
||||
|
||||
type InstalledFeatureInputs = Readonly<
|
||||
Pick<ApplicationFeatureInputs, typeof REFERENCE_FEATURE_ID>
|
||||
Pick<
|
||||
ApplicationFeatureInputs,
|
||||
typeof REFERENCE_FEATURE_ID | typeof TECH_LOG_FEATURE_ID
|
||||
>
|
||||
>;
|
||||
|
||||
export function createInstalledFeatureInputs(
|
||||
context: Parameters<typeof createReferenceFeatureInstalledInput>[0],
|
||||
): InstalledFeatureInputs {
|
||||
const referenceFeature = createReferenceFeatureInstalledInput(context);
|
||||
const techLogFeature = createTechLogFeatureInstalledInput();
|
||||
return Object.freeze({
|
||||
[referenceFeature.featureId]: referenceFeature.input,
|
||||
[techLogFeature.featureId]: techLogFeature.input,
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user