UNPKG

1.07 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3exports.Extensions = void 0;
4const lazy_metadata_storage_1 = require("../schema-builder/storages/lazy-metadata.storage");
5const type_metadata_storage_1 = require("../schema-builder/storages/type-metadata.storage");
6/**
7 * Adds arbitrary data accessible through the "extensions" property to specified field, type, or handler.
8 */
9function Extensions(value) {
10 return (target, propertyKey) => {
11 lazy_metadata_storage_1.LazyMetadataStorage.store(() => {
12 if (propertyKey) {
13 type_metadata_storage_1.TypeMetadataStorage.addExtensionsPropertyMetadata({
14 target: target.constructor,
15 fieldName: propertyKey,
16 value,
17 });
18 }
19 else {
20 type_metadata_storage_1.TypeMetadataStorage.addExtensionsMetadata({
21 target: target,
22 value,
23 });
24 }
25 });
26 };
27}
28exports.Extensions = Extensions;