UNPKG

@dolittle/sdk.artifacts

Version:

Dolittle is a decentralized, distributed, event-driven microservice platform built to harness the power of events.

34 lines 2.33 kB
"use strict"; // Copyright (c) Dolittle. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. Object.defineProperty(exports, "__esModule", { value: true }); exports.Artifacts = void 0; const Artifact_1 = require("./Artifact"); const TypeMap_1 = require("./Mappings/TypeMap"); /** * Represents an implementation of {@link IArtifacts}. * @template TArtifact The artifact type to map to a type. * @template TId The id type of the artifact. */ class Artifacts extends TypeMap_1.TypeMap { /** * Initialises a new instance of the {@link Artifacts} class. * @param {Constructor} artifactType - The type of the artifact. */ constructor(artifactType) { super(artifactType, artifact => [artifact.id.value.toString(), artifact.generation.value], 2); } /** @inheritdoc */ resolveFrom(object, input) { if ((0, Artifact_1.isArtifact)(input)) { return super.resolveFrom(object, input); } if (input !== undefined) { const artifact = this.createArtifactFrom(input); return super.resolveFrom(object, artifact); } return super.resolveFrom(object); } } exports.Artifacts = Artifacts; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXJ0aWZhY3RzLmpzIiwic291cmNlUm9vdCI6Ii4uLyIsInNvdXJjZXMiOlsiQXJ0aWZhY3RzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwrQ0FBK0M7QUFDL0MscUdBQXFHOzs7QUFNckcseUNBQWtEO0FBRWxELGdEQUE2QztBQUU3Qzs7OztHQUlHO0FBQ0gsTUFBc0IsU0FBZ0YsU0FBUSxpQkFBb0M7SUFDOUk7OztPQUdHO0lBQ0gsWUFDSSxZQUFvQztRQUVwQyxLQUFLLENBQUMsWUFBWSxFQUFFLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxRQUFRLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ2xHLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsV0FBVyxDQUFDLE1BQVcsRUFBRSxLQUFvQztRQUN6RCxJQUFJLElBQUEscUJBQVUsRUFBQyxLQUFLLENBQUMsRUFBRTtZQUNuQixPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFDO1NBQzNDO1FBRUQsSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFO1lBQ3JCLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNoRCxPQUFPLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1NBQzlDO1FBRUQsT0FBTyxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7Q0FPSjtBQTlCRCw4QkE4QkMifQ==