@dudousxd/nestjs-filter 1.0.4 → 1.1.0
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.
- package/CHANGELOG.md +15 -0
- package/dist/decorator/filter-for.decorator.d.ts +27 -1
- package/dist/decorator/filter-for.decorator.d.ts.map +1 -1
- package/dist/decorator/filter-for.decorator.js +30 -2
- package/dist/decorator/filter-for.decorator.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/tokens.d.ts +1 -0
- package/dist/tokens.d.ts.map +1 -1
- package/dist/tokens.js +1 -0
- package/dist/tokens.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,20 @@
|
|
|
1
1
|
# @dudousxd/nestjs-filter
|
|
2
2
|
|
|
3
|
+
## 1.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [`d7ecd90`](https://github.com/DavideCarvalho/nestjs-filter/commit/d7ecd9019495aaafdbc1737a1cec20b0f75f91bc) - Type-aware filter operators. The typed client builder (`filterQueryTyped<Fields, Map>`)
|
|
8
|
+
now narrows operators and value types per field: string fields accept only string
|
|
9
|
+
operators, number/Date accept ordering + tuple, enums narrow to their literals, and
|
|
10
|
+
the unary convenience methods (`isEmpty`/`isNotEmpty`) are gated to fields whose type
|
|
11
|
+
allows them. Backward compatible — the single-generic builder stays fully permissive.
|
|
12
|
+
|
|
13
|
+
Adds an optional `@FilterFor('key', { type })` hint (stored in separate metadata, no
|
|
14
|
+
runtime effect) so virtual filter fields with no matching entity column can still get
|
|
15
|
+
precise types in the generated client. Also hardens the type-vs-runtime operator
|
|
16
|
+
drift guard to assert per-group from a single source of truth.
|
|
17
|
+
|
|
3
18
|
## 1.0.4
|
|
4
19
|
|
|
5
20
|
### Patch Changes
|
|
@@ -1,4 +1,30 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* A codegen-only type hint for a virtual filter field declared via `@FilterFor`.
|
|
4
|
+
*
|
|
5
|
+
* Used by the nestjs-inertia codegen to give precise types to virtual filter
|
|
6
|
+
* keys (input keys with no matching entity column / class property). Has NO
|
|
7
|
+
* runtime behavior — it is read statically from the AST at codegen time.
|
|
8
|
+
*
|
|
9
|
+
* - One of the four primitive tokens (`'string' | 'number' | 'boolean' | 'Date'`).
|
|
10
|
+
* - A `readonly string[]` of literal values → emitted as a literal string union,
|
|
11
|
+
* e.g. `['active', 'archived']` → `"active" | "archived"`.
|
|
12
|
+
*/
|
|
13
|
+
export type FilterFieldTypeHint = 'string' | 'number' | 'boolean' | 'Date' | readonly string[];
|
|
14
|
+
/** Options for `@FilterFor`. */
|
|
15
|
+
export interface FilterForOptions {
|
|
16
|
+
/**
|
|
17
|
+
* Codegen-only type hint for the virtual field. No runtime effect — stored in
|
|
18
|
+
* metadata so it is introspectable and future-proof.
|
|
19
|
+
*/
|
|
20
|
+
type?: FilterFieldTypeHint;
|
|
21
|
+
}
|
|
22
|
+
export declare function FilterFor(inputKey?: string, opts?: FilterForOptions): MethodDecorator;
|
|
3
23
|
export declare function getFilterForMap(target: object): Map<string, string>;
|
|
24
|
+
/**
|
|
25
|
+
* Return the per-key `@FilterFor` options map (key → options), walking the
|
|
26
|
+
* prototype chain. Child declarations win over parent for the same key, matching
|
|
27
|
+
* `getFilterForMap`. Keys with no options are absent. Codegen-only metadata.
|
|
28
|
+
*/
|
|
29
|
+
export declare function getFilterForOptsMap(target: object): Map<string, FilterForOptions>;
|
|
4
30
|
//# sourceMappingURL=filter-for.decorator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-for.decorator.d.ts","sourceRoot":"","sources":["../../src/decorator/filter-for.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAG1B,wBAAgB,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,eAAe,
|
|
1
|
+
{"version":3,"file":"filter-for.decorator.d.ts","sourceRoot":"","sources":["../../src/decorator/filter-for.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAG1B;;;;;;;;;;GAUG;AACH,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,MAAM,EAAE,CAAC;AAE/F,gCAAgC;AAChC,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,IAAI,CAAC,EAAE,mBAAmB,CAAC;CAC5B;AAED,wBAAgB,SAAS,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,gBAAgB,GAAG,eAAe,CAmBrF;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAenE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAejF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import 'reflect-metadata';
|
|
2
|
-
import { FILTER_FOR_METADATA } from '../tokens.js';
|
|
3
|
-
export function FilterFor(inputKey) {
|
|
2
|
+
import { FILTER_FOR_METADATA, FILTER_FOR_OPTS_METADATA } from '../tokens.js';
|
|
3
|
+
export function FilterFor(inputKey, opts) {
|
|
4
4
|
return (target, propertyKey) => {
|
|
5
5
|
const methodName = String(propertyKey);
|
|
6
6
|
const key = inputKey ?? methodName;
|
|
@@ -9,6 +9,14 @@ export function FilterFor(inputKey) {
|
|
|
9
9
|
new Map());
|
|
10
10
|
existing.set(key, methodName);
|
|
11
11
|
Reflect.defineMetadata(FILTER_FOR_METADATA, existing, ctor);
|
|
12
|
+
// Store opts separately so the (key → methodName) map keeps its exact shape
|
|
13
|
+
// for all existing runtime consumers. The opts map is purely additive.
|
|
14
|
+
if (opts !== undefined) {
|
|
15
|
+
const existingOpts = (Reflect.getOwnMetadata(FILTER_FOR_OPTS_METADATA, ctor) ??
|
|
16
|
+
new Map());
|
|
17
|
+
existingOpts.set(key, opts);
|
|
18
|
+
Reflect.defineMetadata(FILTER_FOR_OPTS_METADATA, existingOpts, ctor);
|
|
19
|
+
}
|
|
12
20
|
};
|
|
13
21
|
}
|
|
14
22
|
export function getFilterForMap(target) {
|
|
@@ -26,4 +34,24 @@ export function getFilterForMap(target) {
|
|
|
26
34
|
}
|
|
27
35
|
return result;
|
|
28
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* Return the per-key `@FilterFor` options map (key → options), walking the
|
|
39
|
+
* prototype chain. Child declarations win over parent for the same key, matching
|
|
40
|
+
* `getFilterForMap`. Keys with no options are absent. Codegen-only metadata.
|
|
41
|
+
*/
|
|
42
|
+
export function getFilterForOptsMap(target) {
|
|
43
|
+
const result = new Map();
|
|
44
|
+
let current = target;
|
|
45
|
+
while (current && current !== Function.prototype && current !== Object) {
|
|
46
|
+
const own = Reflect.getOwnMetadata(FILTER_FOR_OPTS_METADATA, current);
|
|
47
|
+
if (own) {
|
|
48
|
+
for (const [key, opts] of own) {
|
|
49
|
+
if (!result.has(key))
|
|
50
|
+
result.set(key, opts);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
current = Object.getPrototypeOf(current);
|
|
54
|
+
}
|
|
55
|
+
return result;
|
|
56
|
+
}
|
|
29
57
|
//# sourceMappingURL=filter-for.decorator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filter-for.decorator.js","sourceRoot":"","sources":["../../src/decorator/filter-for.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"filter-for.decorator.js","sourceRoot":"","sources":["../../src/decorator/filter-for.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,CAAC;AAC1B,OAAO,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAwB7E,MAAM,UAAU,SAAS,CAAC,QAAiB,EAAE,IAAuB;IAClE,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;QACvC,MAAM,GAAG,GAAG,QAAQ,IAAI,UAAU,CAAC;QACnC,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC;QAChC,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,IAAI,CAAC;YACjE,IAAI,GAAG,EAAkB,CAAwB,CAAC;QACpD,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC9B,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;QAE5D,4EAA4E;QAC5E,uEAAuE;QACvE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,YAAY,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,wBAAwB,EAAE,IAAI,CAAC;gBAC1E,IAAI,GAAG,EAA4B,CAAkC,CAAC;YACxE,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC5B,OAAO,CAAC,cAAc,CAAC,wBAAwB,EAAE,YAAY,EAAE,IAAI,CAAC,CAAC;QACvE,CAAC;IACH,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,IAAI,OAAO,GAAkB,MAAM,CAAC;IACpC,OAAO,OAAO,IAAI,OAAO,KAAK,QAAQ,CAAC,SAAS,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvE,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,mBAAmB,EAAE,OAAO,CAElD,CAAC;QACd,IAAI,GAAG,EAAE,CAAC;YACR,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC;gBAChC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QACD,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAc;IAChD,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;IACnD,IAAI,OAAO,GAAkB,MAAM,CAAC;IACpC,OAAO,OAAO,IAAI,OAAO,KAAK,QAAQ,CAAC,SAAS,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvE,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC,wBAAwB,EAAE,OAAO,CAEvD,CAAC;QACd,IAAI,GAAG,EAAE,CAAC;YACR,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;gBAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QACD,OAAO,GAAG,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,7 +2,8 @@ export declare const VERSION = "0.0.0";
|
|
|
2
2
|
export { BaseFilter } from './base-filter.js';
|
|
3
3
|
export type { FilterAdapter, EntityFieldInfo, EntityRelationInfo } from './adapter/adapter.js';
|
|
4
4
|
export { Filterable, getFilterableMetadata } from './decorator/filterable.decorator.js';
|
|
5
|
-
export { FilterFor, getFilterForMap } from './decorator/filter-for.decorator.js';
|
|
5
|
+
export { FilterFor, getFilterForMap, getFilterForOptsMap, } from './decorator/filter-for.decorator.js';
|
|
6
|
+
export type { FilterFieldTypeHint, FilterForOptions, } from './decorator/filter-for.decorator.js';
|
|
6
7
|
export { ApplyFilter, getApplyFilterMetadata } from './decorator/apply-filter.decorator.js';
|
|
7
8
|
export { Relations, getRelationsMap, resolveRelation } from './decorator/relations.decorator.js';
|
|
8
9
|
export type { RelationConfig, RelationsMap } from './decorator/relations.decorator.js';
|
|
@@ -11,7 +12,7 @@ export { FilterExceptionFilter } from './filter/filter-exception.filter.js';
|
|
|
11
12
|
export { FilterRunner } from './runner.js';
|
|
12
13
|
export { FilterModule } from './module.js';
|
|
13
14
|
export { FilterException, FilterNotRegisteredException, FilterMissingEntityException, FilterStateUnavailableException, UnknownFilterKeyException, FilterValidationException, FilterMissingAdapterException, FilterMethodException, } from './errors/exceptions.js';
|
|
14
|
-
export { FILTER_MODULE_OPTIONS, FILTER_ADAPTER, FILTERABLE_METADATA, FILTER_FOR_METADATA, FILTER_RELATIONS_METADATA, APPLY_FILTER_METADATA, APPLY_FILTER_REQ_KEY, } from './tokens.js';
|
|
15
|
+
export { FILTER_MODULE_OPTIONS, FILTER_ADAPTER, FILTERABLE_METADATA, FILTER_FOR_METADATA, FILTER_FOR_OPTS_METADATA, FILTER_RELATIONS_METADATA, APPLY_FILTER_METADATA, APPLY_FILTER_REQ_KEY, } from './tokens.js';
|
|
15
16
|
export type { ApplyFilterOptions, CursorPagination, FilterableOptions, FilterContext, FilterInput, FilterInputStrict, FilterInputLoose, FilterMetadata, FilterModuleOptions, FilterModuleOptionsFactory, FilterModuleAsyncOptions, InputNormalizer, InputSource, OffsetPagination, OnUnknownKey, SortItem, StructuredInput, ValidationMode, } from './types.js';
|
|
16
17
|
export { resolveInputFromRequest } from './input/source-resolver.js';
|
|
17
18
|
export { normalizeInput } from './input/normalizer.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EACL,SAAS,EACT,eAAe,EACf,mBAAmB,GACpB,MAAM,qCAAqC,CAAC;AAC7C,YAAY,EACV,mBAAmB,EACnB,gBAAgB,GACjB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACjG,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,eAAe,EACf,4BAA4B,EAC5B,4BAA4B,EAC5B,+BAA+B,EAC/B,yBAAyB,EACzB,yBAAyB,EACzB,6BAA6B,EAC7B,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,gBAAgB,EAChB,cAAc,EACd,mBAAmB,EACnB,0BAA0B,EAC1B,wBAAwB,EACxB,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,YAAY,EACZ,QAAQ,EACR,eAAe,EACf,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,uCAAuC,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export const VERSION = '0.0.0';
|
|
2
2
|
export { BaseFilter } from './base-filter.js';
|
|
3
3
|
export { Filterable, getFilterableMetadata } from './decorator/filterable.decorator.js';
|
|
4
|
-
export { FilterFor, getFilterForMap } from './decorator/filter-for.decorator.js';
|
|
4
|
+
export { FilterFor, getFilterForMap, getFilterForOptsMap, } from './decorator/filter-for.decorator.js';
|
|
5
5
|
export { ApplyFilter, getApplyFilterMetadata } from './decorator/apply-filter.decorator.js';
|
|
6
6
|
export { Relations, getRelationsMap, resolveRelation } from './decorator/relations.decorator.js';
|
|
7
7
|
export { ApplyFilterInterceptor } from './interceptor/apply-filter.interceptor.js';
|
|
@@ -9,7 +9,7 @@ export { FilterExceptionFilter } from './filter/filter-exception.filter.js';
|
|
|
9
9
|
export { FilterRunner } from './runner.js';
|
|
10
10
|
export { FilterModule } from './module.js';
|
|
11
11
|
export { FilterException, FilterNotRegisteredException, FilterMissingEntityException, FilterStateUnavailableException, UnknownFilterKeyException, FilterValidationException, FilterMissingAdapterException, FilterMethodException, } from './errors/exceptions.js';
|
|
12
|
-
export { FILTER_MODULE_OPTIONS, FILTER_ADAPTER, FILTERABLE_METADATA, FILTER_FOR_METADATA, FILTER_RELATIONS_METADATA, APPLY_FILTER_METADATA, APPLY_FILTER_REQ_KEY, } from './tokens.js';
|
|
12
|
+
export { FILTER_MODULE_OPTIONS, FILTER_ADAPTER, FILTERABLE_METADATA, FILTER_FOR_METADATA, FILTER_FOR_OPTS_METADATA, FILTER_RELATIONS_METADATA, APPLY_FILTER_METADATA, APPLY_FILTER_REQ_KEY, } from './tokens.js';
|
|
13
13
|
export { resolveInputFromRequest } from './input/source-resolver.js';
|
|
14
14
|
export { normalizeInput } from './input/normalizer.js';
|
|
15
15
|
export { escapeLike } from './utils/escape-like.js';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AACxF,OAAO,EACL,SAAS,EACT,eAAe,EACf,mBAAmB,GACpB,MAAM,qCAAqC,CAAC;AAK7C,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC5F,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAEjG,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,eAAe,EACf,4BAA4B,EAC5B,4BAA4B,EAC5B,+BAA+B,EAC/B,yBAAyB,EACzB,yBAAyB,EACzB,6BAA6B,EAC7B,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,mBAAmB,EACnB,mBAAmB,EACnB,wBAAwB,EACxB,yBAAyB,EACzB,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,aAAa,CAAC;AAqBrB,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAEpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,uCAAuC,CAAC"}
|
package/dist/tokens.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ export declare const FILTER_MODULE_OPTIONS: unique symbol;
|
|
|
2
2
|
export declare const FILTER_ADAPTER: unique symbol;
|
|
3
3
|
export declare const FILTERABLE_METADATA = "nestjs-filter:filterable";
|
|
4
4
|
export declare const FILTER_FOR_METADATA = "nestjs-filter:filter-for";
|
|
5
|
+
export declare const FILTER_FOR_OPTS_METADATA = "nestjs-filter:filter-for-opts";
|
|
5
6
|
export declare const APPLY_FILTER_METADATA = "nestjs-filter:apply-filter";
|
|
6
7
|
export declare const FILTER_RELATIONS_METADATA = "nestjs-filter:relations";
|
|
7
8
|
export declare const APPLY_FILTER_REQ_KEY: unique symbol;
|
package/dist/tokens.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,eAAgD,CAAC;AACnF,eAAO,MAAM,cAAc,eAAgD,CAAC;AAE5E,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAC9D,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAC9D,eAAO,MAAM,qBAAqB,+BAA+B,CAAC;AAClE,eAAO,MAAM,yBAAyB,4BAA4B,CAAC;AACnE,eAAO,MAAM,oBAAoB,eAAoD,CAAC"}
|
|
1
|
+
{"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,eAAgD,CAAC;AACnF,eAAO,MAAM,cAAc,eAAgD,CAAC;AAE5E,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAC9D,eAAO,MAAM,mBAAmB,6BAA6B,CAAC;AAC9D,eAAO,MAAM,wBAAwB,kCAAkC,CAAC;AACxE,eAAO,MAAM,qBAAqB,+BAA+B,CAAC;AAClE,eAAO,MAAM,yBAAyB,4BAA4B,CAAC;AACnE,eAAO,MAAM,oBAAoB,eAAoD,CAAC"}
|
package/dist/tokens.js
CHANGED
|
@@ -2,6 +2,7 @@ export const FILTER_MODULE_OPTIONS = Symbol.for('@dudousxd/nestjs-filter:options
|
|
|
2
2
|
export const FILTER_ADAPTER = Symbol.for('@dudousxd/nestjs-filter:adapter');
|
|
3
3
|
export const FILTERABLE_METADATA = 'nestjs-filter:filterable';
|
|
4
4
|
export const FILTER_FOR_METADATA = 'nestjs-filter:filter-for';
|
|
5
|
+
export const FILTER_FOR_OPTS_METADATA = 'nestjs-filter:filter-for-opts';
|
|
5
6
|
export const APPLY_FILTER_METADATA = 'nestjs-filter:apply-filter';
|
|
6
7
|
export const FILTER_RELATIONS_METADATA = 'nestjs-filter:relations';
|
|
7
8
|
export const APPLY_FILTER_REQ_KEY = Symbol.for('@dudousxd/nestjs-filter:req-payload');
|
package/dist/tokens.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;AACnF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;AAC9D,MAAM,CAAC,MAAM,qBAAqB,GAAG,4BAA4B,CAAC;AAClE,MAAM,CAAC,MAAM,yBAAyB,GAAG,yBAAyB,CAAC;AACnE,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../src/tokens.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;AACnF,MAAM,CAAC,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;AAC9D,MAAM,CAAC,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;AAC9D,MAAM,CAAC,MAAM,wBAAwB,GAAG,+BAA+B,CAAC;AACxE,MAAM,CAAC,MAAM,qBAAqB,GAAG,4BAA4B,CAAC;AAClE,MAAM,CAAC,MAAM,yBAAyB,GAAG,yBAAyB,CAAC;AACnE,MAAM,CAAC,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC"}
|