@dolittle/sdk.projections
Version:
Dolittle is a decentralized, distributed, event-driven microservice platform built to harness the power of events.
31 lines • 1.56 kB
JavaScript
;
// 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.Key = void 0;
const concepts_1 = require("@dolittle/concepts");
/**
* Represents a projection key.
*/
class Key extends concepts_1.ConceptAs {
/**
* Initializes a new instance of {@link Key}.
* @param {string} key - The expression that specifices the key selection.
*/
constructor(key) {
super(key, '@dolittle/sdk.projections.Key');
}
/**
* Creates a {@link Key} from a string.
* @param {Key | any} key - The projection key.
* @returns {Key} The projection key concept.
*/
static from(key) {
if (key instanceof Key) {
return key;
}
return new Key(key.toString());
}
}
exports.Key = Key;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiS2V5LmpzIiwic291cmNlUm9vdCI6Ii4uLyIsInNvdXJjZXMiOlsiS2V5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSwrQ0FBK0M7QUFDL0MscUdBQXFHOzs7QUFFckcsaURBQStDO0FBRS9DOztHQUVHO0FBQ0gsTUFBYSxHQUFJLFNBQVEsb0JBQWtEO0lBQ3ZFOzs7T0FHRztJQUNILFlBQVksR0FBVztRQUNuQixLQUFLLENBQUMsR0FBRyxFQUFFLCtCQUErQixDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQWM7UUFDdEIsSUFBSSxHQUFHLFlBQVksR0FBRyxFQUFFO1lBQ3BCLE9BQU8sR0FBRyxDQUFDO1NBQ2Q7UUFDRCxPQUFPLElBQUksR0FBRyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7Q0FDSjtBQXBCRCxrQkFvQkMifQ==