@maioradv/nestjs-core 2.3.2 → 2.3.3
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.
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { ValidatorConstraintInterface, ValidationArguments } from "class-validator";
|
|
2
1
|
export declare const IsMetafieldClause: () => <TFunction extends Function, Y>(target: TFunction | object, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
|
|
3
2
|
export declare const IsTranslationClause: () => <TFunction extends Function, Y>(target: TFunction | object, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
|
|
4
3
|
declare const METADATA_OPERATORS: readonly ["equals", "not", "gt", "gte", "lt", "lte", "string_contains", "string_starts_with", "string_ends_with", "array_contains"];
|
|
@@ -9,8 +8,4 @@ export type MetadataFilter = {
|
|
|
9
8
|
value: null | string | boolean | number;
|
|
10
9
|
};
|
|
11
10
|
export declare const IsMetadataClause: () => <TFunction extends Function, Y>(target: TFunction | object, propertyKey?: string | symbol, descriptor?: TypedPropertyDescriptor<Y>) => void;
|
|
12
|
-
export declare class IsMetadata implements ValidatorConstraintInterface {
|
|
13
|
-
validate(value: MetadataFilter[]): boolean;
|
|
14
|
-
defaultMessage(args: ValidationArguments): string;
|
|
15
|
-
}
|
|
16
11
|
export {};
|
|
@@ -1,12 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.
|
|
3
|
+
exports.IsMetadataClause = exports.IsTranslationClause = exports.IsMetafieldClause = void 0;
|
|
10
4
|
const common_1 = require("@nestjs/common");
|
|
11
5
|
const swagger_1 = require("@nestjs/swagger");
|
|
12
6
|
const class_transformer_1 = require("class-transformer");
|
|
@@ -44,7 +38,7 @@ const IsTranslationClause = () => {
|
|
|
44
38
|
};
|
|
45
39
|
exports.IsTranslationClause = IsTranslationClause;
|
|
46
40
|
const parseValue = (raw) => {
|
|
47
|
-
const trimmed = raw
|
|
41
|
+
const trimmed = raw?.trim();
|
|
48
42
|
if (trimmed === 'true')
|
|
49
43
|
return true;
|
|
50
44
|
if (trimmed === 'false')
|
|
@@ -86,10 +80,10 @@ const IsMetadataClause = () => {
|
|
|
86
80
|
return (0, common_1.applyDecorators)((0, swagger_1.ApiPropertyOptional)({
|
|
87
81
|
type: String,
|
|
88
82
|
description: 'Metadata filter format: path:operator:value, multiple with ,. Example: user.id:equals:1,tags:array_contains:vip',
|
|
89
|
-
}), (0, class_transformer_1.Transform)(({ value }) => {
|
|
83
|
+
}), (0, class_transformer_1.Transform)(({ value, key }) => {
|
|
90
84
|
if (!value)
|
|
91
85
|
return [];
|
|
92
|
-
|
|
86
|
+
const clauses = value
|
|
93
87
|
.split(',')
|
|
94
88
|
.map(c => c.trim())
|
|
95
89
|
.filter(Boolean)
|
|
@@ -105,22 +99,10 @@ const IsMetadataClause = () => {
|
|
|
105
99
|
value: (isNull ? null : parseValue(value))
|
|
106
100
|
};
|
|
107
101
|
});
|
|
108
|
-
|
|
102
|
+
const errors = clauses.flatMap((item, index) => getMetadataClauseErrors(item, index, key));
|
|
103
|
+
if (errors.length)
|
|
104
|
+
throw new common_1.BadRequestException(errors);
|
|
105
|
+
return clauses;
|
|
106
|
+
}), (0, class_validator_1.IsOptional)(), (0, class_validator_1.IsArray)());
|
|
109
107
|
};
|
|
110
108
|
exports.IsMetadataClause = IsMetadataClause;
|
|
111
|
-
let IsMetadata = class IsMetadata {
|
|
112
|
-
validate(value) {
|
|
113
|
-
if (!value?.length)
|
|
114
|
-
return true;
|
|
115
|
-
return value.every((item, index) => getMetadataClauseErrors(item, index, 'metadata').length === 0);
|
|
116
|
-
}
|
|
117
|
-
defaultMessage(args) {
|
|
118
|
-
const value = args.value;
|
|
119
|
-
const errors = value?.flatMap((item, index) => getMetadataClauseErrors(item, index, args.property)) ?? [];
|
|
120
|
-
return errors.join(', ');
|
|
121
|
-
}
|
|
122
|
-
};
|
|
123
|
-
exports.IsMetadata = IsMetadata;
|
|
124
|
-
exports.IsMetadata = IsMetadata = __decorate([
|
|
125
|
-
(0, class_validator_1.ValidatorConstraint)({ name: 'IsMetadataConstraint', async: false })
|
|
126
|
-
], IsMetadata);
|