@schorts/shared-kernel 2.5.9 → 3.0.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 +12 -0
- package/dist/cjs/criteria/criteria.js +2 -2
- package/dist/cjs/criteria/criteria.js.map +1 -1
- package/dist/cjs/criteria/index.js.map +1 -1
- package/dist/esm/criteria/criteria.js +2 -2
- package/dist/esm/criteria/criteria.js.map +1 -1
- package/dist/esm/criteria/index.js.map +1 -1
- package/dist/types/criteria/criteria.d.ts +5 -2
- package/dist/types/criteria/criteria.d.ts.map +1 -1
- package/dist/types/criteria/index.d.ts +0 -1
- package/dist/types/criteria/index.d.ts.map +1 -1
- package/dist/types/dao/dao.d.ts +1 -0
- package/dist/types/dao/dao.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/criteria/criteria.ts +3 -8
- package/src/criteria/index.ts +0 -1
- package/src/dao/dao.ts +1 -0
- package/src/criteria/filter-criterion.ts +0 -6
package/CHANGELOG
CHANGED
|
@@ -5,6 +5,18 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [3.0.0] - 2025-10-15
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- Update how filters are stored in the `Criteria` to allow multiple filters over one field.
|
|
13
|
+
|
|
14
|
+
## [2.6.0] - 2025-10-14
|
|
15
|
+
|
|
16
|
+
### Added
|
|
17
|
+
|
|
18
|
+
- Added `countBy` to `DAO`.
|
|
19
|
+
|
|
8
20
|
## [2.5.9] - 2025-10-14
|
|
9
21
|
|
|
10
22
|
### Fixed
|
|
@@ -3,12 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Criteria = void 0;
|
|
4
4
|
const exceptions_1 = require("./exceptions");
|
|
5
5
|
class Criteria {
|
|
6
|
-
filters =
|
|
6
|
+
filters = [];
|
|
7
7
|
orders = [];
|
|
8
8
|
limit;
|
|
9
9
|
offset;
|
|
10
10
|
where(field, operator, value) {
|
|
11
|
-
this.filters
|
|
11
|
+
this.filters.push({ field, operator, value });
|
|
12
12
|
return this;
|
|
13
13
|
}
|
|
14
14
|
orderBy(field, direction = "ASC") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"criteria.js","sourceRoot":"","sources":["../../../src/criteria/criteria.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"criteria.js","sourceRoot":"","sources":["../../../src/criteria/criteria.ts"],"names":[],"mappings":";;;AAGA,6CAA6D;AAE7D,MAAa,QAAQ;IACV,OAAO,GAA6D,EAAE,CAAC;IACvE,MAAM,GAAiB,EAAE,CAAC;IACnC,KAAK,CAAU;IACf,MAAM,CAAU;IAEhB,KAAK,CAAC,KAAa,EAAE,QAAkB,EAAE,KAAU;QACjD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAE9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,KAAa,EACb,YAAuB,KAAK;QAE5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAEvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,KAAa;QACxB,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,MAAM,IAAI,0BAAa,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,MAAc;QAC1B,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACf,MAAM,IAAI,2BAAc,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAxCD,4BAwCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/criteria/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/criteria/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAGA,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,+CAA6B"}
|
|
@@ -3,12 +3,12 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Criteria = void 0;
|
|
4
4
|
const exceptions_1 = require("./exceptions");
|
|
5
5
|
class Criteria {
|
|
6
|
-
filters =
|
|
6
|
+
filters = [];
|
|
7
7
|
orders = [];
|
|
8
8
|
limit;
|
|
9
9
|
offset;
|
|
10
10
|
where(field, operator, value) {
|
|
11
|
-
this.filters
|
|
11
|
+
this.filters.push({ field, operator, value });
|
|
12
12
|
return this;
|
|
13
13
|
}
|
|
14
14
|
orderBy(field, direction = "ASC") {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"criteria.js","sourceRoot":"","sources":["../../../src/criteria/criteria.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"criteria.js","sourceRoot":"","sources":["../../../src/criteria/criteria.ts"],"names":[],"mappings":";;;AAGA,6CAA6D;AAE7D,MAAa,QAAQ;IACV,OAAO,GAA6D,EAAE,CAAC;IACvE,MAAM,GAAiB,EAAE,CAAC;IACnC,KAAK,CAAU;IACf,MAAM,CAAU;IAEhB,KAAK,CAAC,KAAa,EAAE,QAAkB,EAAE,KAAU;QACjD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAE9C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,KAAa,EACb,YAAuB,KAAK;QAE5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAEvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,KAAa;QACxB,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,MAAM,IAAI,0BAAa,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QAEnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,MAAc;QAC1B,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;YACf,MAAM,IAAI,2BAAc,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAxCD,4BAwCC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/criteria/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/criteria/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAGA,uCAAsC;AAA7B,oGAAA,QAAQ,OAAA;AACjB,+CAA6B"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
|
-
import { FilterCriterion } from "./filter-criterion";
|
|
2
1
|
import { Order } from "./order";
|
|
3
2
|
import { Operator } from "./operator";
|
|
4
3
|
import { Direction } from "./direction";
|
|
5
4
|
export declare class Criteria {
|
|
6
|
-
readonly filters:
|
|
5
|
+
readonly filters: Array<{
|
|
6
|
+
field: string;
|
|
7
|
+
operator: Operator;
|
|
8
|
+
value: any;
|
|
9
|
+
}>;
|
|
7
10
|
readonly orders: Array<Order>;
|
|
8
11
|
limit?: number;
|
|
9
12
|
offset?: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"criteria.d.ts","sourceRoot":"","sources":["../../../src/criteria/criteria.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"criteria.d.ts","sourceRoot":"","sources":["../../../src/criteria/criteria.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,qBAAa,QAAQ;IACnB,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,KAAK,EAAE,GAAG,CAAA;KAAE,CAAC,CAAM;IAChF,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAM;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,GAAG,QAAQ;IAM9D,OAAO,CACL,KAAK,EAAE,MAAM,EACb,SAAS,GAAE,SAAiB,GAC3B,QAAQ;IAMX,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAUrC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ;CASxC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/criteria/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/criteria/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC3C,YAAY,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AACrC,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,cAAc,cAAc,CAAC"}
|
package/dist/types/dao/dao.d.ts
CHANGED
|
@@ -8,6 +8,7 @@ export interface DAO<Model extends BaseModel, Entity extends BaseEntity<ValueObj
|
|
|
8
8
|
findByID(id: Entity["id"]["value"]): Promise<Entity | null>;
|
|
9
9
|
findOneBy(criteria: Criteria): Promise<Entity | null>;
|
|
10
10
|
search(criteria: Criteria): Promise<Entity[]>;
|
|
11
|
+
countBy(criteria: Criteria): Promise<number>;
|
|
11
12
|
create(entity: Entity, uow?: UnitOfWork): Promise<Entity>;
|
|
12
13
|
update(entity: Entity, uow?: UnitOfWork): Promise<Entity>;
|
|
13
14
|
delete(entity: Entity, uow?: UnitOfWork): Promise<Entity>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dao.d.ts","sourceRoot":"","sources":["../../../src/dao/dao.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,WAAW,GAAG,CAAC,KAAK,SAAS,SAAS,EAAE,MAAM,SAAS,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;IACzF,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5D,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtD,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9C,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3D"}
|
|
1
|
+
{"version":3,"file":"dao.d.ts","sourceRoot":"","sources":["../../../src/dao/dao.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,WAAW,GAAG,CAAC,KAAK,SAAS,SAAS,EAAE,MAAM,SAAS,UAAU,CAAC,WAAW,EAAE,KAAK,CAAC;IACzF,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC5D,SAAS,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACtD,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1D,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3D"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@schorts/shared-kernel",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "3.0.0",
|
|
4
4
|
"description": "A modular, type-safe foundation for building expressive, maintainable applications. This package provides core abstractions for domain modeling, HTTP integration, authentication, state management, and more — designed to be framework-agnostic and highly extensible.",
|
|
5
5
|
"main": "./dist/cjs/index.js",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
package/src/criteria/criteria.ts
CHANGED
|
@@ -1,21 +1,16 @@
|
|
|
1
|
-
import { FilterCriterion } from "./filter-criterion";
|
|
2
1
|
import { Order } from "./order";
|
|
3
2
|
import { Operator } from "./operator";
|
|
4
3
|
import { Direction } from "./direction";
|
|
5
4
|
import { OffsetNotValid, LimitNotValid } from "./exceptions";
|
|
6
5
|
|
|
7
6
|
export class Criteria {
|
|
8
|
-
readonly filters:
|
|
7
|
+
readonly filters: Array<{ field: string; operator: Operator; value: any }> = [];
|
|
9
8
|
readonly orders: Array<Order> = [];
|
|
10
9
|
limit?: number;
|
|
11
10
|
offset?: number;
|
|
12
11
|
|
|
13
|
-
where(
|
|
14
|
-
field
|
|
15
|
-
operator: Operator,
|
|
16
|
-
value: any,
|
|
17
|
-
): Criteria {
|
|
18
|
-
this.filters[field] = { value, operator };
|
|
12
|
+
where(field: string, operator: Operator, value: any): Criteria {
|
|
13
|
+
this.filters.push({ field, operator, value });
|
|
19
14
|
|
|
20
15
|
return this;
|
|
21
16
|
}
|
package/src/criteria/index.ts
CHANGED
package/src/dao/dao.ts
CHANGED
|
@@ -9,6 +9,7 @@ export interface DAO<Model extends BaseModel, Entity extends BaseEntity<ValueObj
|
|
|
9
9
|
findByID(id: Entity["id"]["value"]): Promise<Entity | null>;
|
|
10
10
|
findOneBy(criteria: Criteria): Promise<Entity | null>;
|
|
11
11
|
search(criteria: Criteria): Promise<Entity[]>;
|
|
12
|
+
countBy(criteria: Criteria): Promise<number>;
|
|
12
13
|
create(entity: Entity, uow?: UnitOfWork): Promise<Entity>;
|
|
13
14
|
update(entity: Entity, uow?: UnitOfWork): Promise<Entity>;
|
|
14
15
|
delete(entity: Entity, uow?: UnitOfWork): Promise<Entity>;
|