@basecraft/types 1.0.0 → 2.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/dist/entity/omit-generated-fields.type.d.ts.map +1 -1
- package/dist/entity/resolve-generated-fields.type.d.ts.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/query/sort.type.d.ts +1 -1
- package/dist/query/sort.type.d.ts.map +1 -1
- package/dist/repository/create-repository.type.d.ts.map +1 -1
- package/dist/repository/page-result.type.d.ts.map +1 -1
- package/dist/repository/paginated-read-repository.type.d.ts +1 -1
- package/dist/repository/paginated-read-repository.type.d.ts.map +1 -1
- package/dist/repository/read-repository.type.d.ts.map +1 -1
- package/dist/repository/update-repository.type.d.ts.map +1 -1
- package/dist/schema/array-schema.type.d.ts +4 -2
- package/dist/schema/array-schema.type.d.ts.map +1 -1
- package/dist/schema/boolean-schema.type.d.ts +2 -0
- package/dist/schema/boolean-schema.type.d.ts.map +1 -1
- package/dist/schema/brand.type.d.ts.map +1 -1
- package/dist/schema/index.d.ts +2 -1
- package/dist/schema/index.d.ts.map +1 -1
- package/dist/schema/infer-schema.type.d.ts +2 -6
- package/dist/schema/infer-schema.type.d.ts.map +1 -1
- package/dist/schema/infer-shape.type.d.ts +10 -1
- package/dist/schema/infer-shape.type.d.ts.map +1 -1
- package/dist/schema/number-schema.type.d.ts +9 -4
- package/dist/schema/number-schema.type.d.ts.map +1 -1
- package/dist/schema/object-schema.type.d.ts +2 -0
- package/dist/schema/object-schema.type.d.ts.map +1 -1
- package/dist/schema/optional-schema.type.d.ts +5 -0
- package/dist/schema/optional-schema.type.d.ts.map +1 -0
- package/dist/schema/schema.type.d.ts.map +1 -1
- package/dist/schema/shape.type.d.ts +8 -1
- package/dist/schema/shape.type.d.ts.map +1 -1
- package/dist/schema/string-schema.type.d.ts +6 -2
- package/dist/schema/string-schema.type.d.ts.map +1 -1
- package/dist/service/date-service.type.d.ts +16 -0
- package/dist/service/date-service.type.d.ts.map +1 -0
- package/dist/service/index.d.ts +2 -0
- package/dist/service/index.d.ts.map +1 -0
- package/dist/use-case/result.type.d.ts +2 -2
- package/dist/use-case/result.type.d.ts.map +1 -1
- package/dist/use-case/use-case-dependencies.type.d.ts +1 -4
- package/dist/use-case/use-case-dependencies.type.d.ts.map +1 -1
- package/dist/use-case/use-case-error.type.d.ts +1 -1
- package/dist/use-case/use-case-error.type.d.ts.map +1 -1
- package/dist/use-case/use-case-options.type.d.ts +4 -3
- package/dist/use-case/use-case-options.type.d.ts.map +1 -1
- package/dist/use-case/use-case.type.d.ts +1 -1
- package/dist/use-case/use-case.type.d.ts.map +1 -1
- package/dist/util/date-format.type.d.ts +2 -0
- package/dist/util/date-format.type.d.ts.map +1 -0
- package/dist/util/date-unit.type.d.ts +2 -0
- package/dist/util/date-unit.type.d.ts.map +1 -0
- package/dist/util/index.d.ts +2 -0
- package/dist/util/index.d.ts.map +1 -1
- package/dist/util/infer-current-user.type.d.ts +3 -0
- package/dist/util/infer-current-user.type.d.ts.map +1 -0
- package/dist/util/infer-role.type.d.ts +6 -0
- package/dist/util/infer-role.type.d.ts.map +1 -0
- package/package.json +5 -2
- package/dist/require-at-least-one.type.d.ts +0 -4
- package/dist/require-at-least-one.type.d.ts.map +0 -1
- package/dist/schema/field-schemas.type.d.ts +0 -6
- package/dist/schema/field-schemas.type.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"omit-generated-fields.type.d.ts","sourceRoot":"","sources":["../../src/entity/omit-generated-fields.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"omit-generated-fields.type.d.ts","sourceRoot":"","sources":["../../src/entity/omit-generated-fields.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,MAAM,mBAAmB,CAC7B,YAAY,SAAS,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,IACxD;KAEA,KAAK,IAAI,MAAM,YAAY,IAAI,SAAS,SAAS,YAAY,CAAC,KAAK,CAAC,GAChE,KAAK,GACL,KAAK,GACR,YAAY,CAAC,KAAK,CAAC;CACvB,GAAG;KAEA,KAAK,IAAI,MAAM,YAAY,IAAI,SAAS,SAAS,YAAY,CAAC,KAAK,CAAC,GAChE,KAAK,GACL,KAAK,CACV,CAAC,EAAE,KAAK;CACV,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve-generated-fields.type.d.ts","sourceRoot":"","sources":["../../src/entity/resolve-generated-fields.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,MAAM,sBAAsB,
|
|
1
|
+
{"version":3,"file":"resolve-generated-fields.type.d.ts","sourceRoot":"","sources":["../../src/entity/resolve-generated-fields.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAE3D,MAAM,MAAM,sBAAsB,CAChC,YAAY,SAAS,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,IACxD;KACD,KAAK,IAAI,MAAM,YAAY,CAAC,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;CACzE,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
export * from "./entity/index.js";
|
|
2
1
|
export * from "./query/index.js";
|
|
2
|
+
export * from "./entity/index.js";
|
|
3
3
|
export * from "./repository/index.js";
|
|
4
4
|
export * from "./schema/index.js";
|
|
5
|
-
export * from "./use-case/index.js";
|
|
6
5
|
export * from "./util/index.js";
|
|
6
|
+
export * from "./use-case/index.js";
|
|
7
|
+
export * from "./service/index.js";
|
|
7
8
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,uBAAuB,CAAC;AACtC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sort.type.d.ts","sourceRoot":"","sources":["../../src/query/sort.type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,CAAC;AAE3C,MAAM,WAAW,IAAI,CAAC,aAAa,SAAS,MAAM;
|
|
1
|
+
{"version":3,"file":"sort.type.d.ts","sourceRoot":"","sources":["../../src/query/sort.type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,CAAC;AAE3C,MAAM,WAAW,IAAI,CAAC,aAAa,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM;IAClE,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,aAAa,CAAC;CAC1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-repository.type.d.ts","sourceRoot":"","sources":["../../src/repository/create-repository.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,WAAW,gBAAgB,
|
|
1
|
+
{"version":3,"file":"create-repository.type.d.ts","sourceRoot":"","sources":["../../src/repository/create-repository.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,WAAW,gBAAgB,CAC/B,YAAY,SAAS,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,EAC1D,KAAK;IAEL,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;CAC7C;AAED,MAAM,WAAW,oBAAoB,CACnC,YAAY,SAAS,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,EAC1D,KAAK;IAEL,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CACtD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"page-result.type.d.ts","sourceRoot":"","sources":["../../src/repository/page-result.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,WAAW,UAAU,
|
|
1
|
+
{"version":3,"file":"page-result.type.d.ts","sourceRoot":"","sources":["../../src/repository/page-result.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,WAAW,UAAU,CACzB,YAAY,SAAS,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IAE1D,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -2,7 +2,7 @@ import { Entity, IdentifierField } from "../entity/entity.type.js";
|
|
|
2
2
|
import { Pagination } from "../query/pagination.type.js";
|
|
3
3
|
import { Sort } from "../query/sort.type.js";
|
|
4
4
|
import { PageResult } from "./page-result.type.js";
|
|
5
|
-
export interface PaginatedReadRepository<CustomEntity extends Entity<CustomEntity[IdentifierField]>, FindQuery, SortableField extends
|
|
5
|
+
export interface PaginatedReadRepository<CustomEntity extends Entity<CustomEntity[IdentifierField]>, FindQuery, SortableField extends keyof CustomEntity> {
|
|
6
6
|
findById(id: CustomEntity[IdentifierField]): Promise<CustomEntity | null>;
|
|
7
7
|
findMany(query: FindQuery & {
|
|
8
8
|
pagination?: Pagination;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paginated-read-repository.type.d.ts","sourceRoot":"","sources":["../../src/repository/paginated-read-repository.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,MAAM,WAAW,uBAAuB,CACtC,YAAY,SAAS,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,EAC1D,SAAS,EACT,aAAa,SAAS,MAAM;
|
|
1
|
+
{"version":3,"file":"paginated-read-repository.type.d.ts","sourceRoot":"","sources":["../../src/repository/paginated-read-repository.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,MAAM,WAAW,uBAAuB,CACtC,YAAY,SAAS,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC,EAC1D,SAAS,EACT,aAAa,SAAS,MAAM,YAAY;IAExC,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAE1E,QAAQ,CACN,KAAK,EAAE,SAAS,GAAG;QACjB,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,IAAI,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;KACpD,GACA,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;CACtC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-repository.type.d.ts","sourceRoot":"","sources":["../../src/repository/read-repository.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,WAAW,cAAc,
|
|
1
|
+
{"version":3,"file":"read-repository.type.d.ts","sourceRoot":"","sources":["../../src/repository/read-repository.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEnE,MAAM,WAAW,cAAc,CAC7B,YAAY,SAAS,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;IAE1D,QAAQ,CAAC,EAAE,EAAE,YAAY,CAAC,eAAe,CAAC,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAE1E,OAAO,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CACpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-repository.type.d.ts","sourceRoot":"","sources":["../../src/repository/update-repository.type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB,CAAC,UAAU,EAAE,KAAK;IACjD,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,oBAAoB,CAAC,UAAU,EAAE,KAAK;IACrD,UAAU,
|
|
1
|
+
{"version":3,"file":"update-repository.type.d.ts","sourceRoot":"","sources":["../../src/repository/update-repository.type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB,CAAC,UAAU,EAAE,KAAK;IACjD,MAAM,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD;AAED,MAAM,WAAW,oBAAoB,CAAC,UAAU,EAAE,KAAK;IACrD,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,UAAU,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { BaseSchema } from "./base-schema.type.js";
|
|
2
|
+
import { OptionalSchema } from "./optional-schema.type.js";
|
|
2
3
|
export interface ArraySchema<ItemType> extends BaseSchema<ItemType[]> {
|
|
3
4
|
contains(item: ItemType): ArraySchema<ItemType>;
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
min(length: number): ArraySchema<ItemType>;
|
|
6
|
+
max(length: number): ArraySchema<ItemType>;
|
|
7
|
+
optional(): OptionalSchema<ItemType[]>;
|
|
6
8
|
}
|
|
7
9
|
//# sourceMappingURL=array-schema.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/array-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"array-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/array-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,MAAM,WAAW,WAAW,CAAC,QAAQ,CAAE,SAAQ,UAAU,CAAC,QAAQ,EAAE,CAAC;IACnE,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAChD,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC3C,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC3C,QAAQ,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC;CACxC"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { BaseSchema } from "./base-schema.type.js";
|
|
2
|
+
import { OptionalSchema } from "./optional-schema.type.js";
|
|
2
3
|
export interface BooleanSchema extends BaseSchema<boolean> {
|
|
3
4
|
equal(target: boolean): BooleanSchema;
|
|
5
|
+
optional(): OptionalSchema<boolean>;
|
|
4
6
|
}
|
|
5
7
|
//# sourceMappingURL=boolean-schema.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"boolean-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/boolean-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"boolean-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/boolean-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,MAAM,WAAW,aAAc,SAAQ,UAAU,CAAC,OAAO,CAAC;IACxD,KAAK,CAAC,MAAM,EAAE,OAAO,GAAG,aAAa,CAAC;IACtC,QAAQ,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;CACrC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brand.type.d.ts","sourceRoot":"","sources":["../../src/schema/brand.type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"brand.type.d.ts","sourceRoot":"","sources":["../../src/schema/brand.type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,CAAC,IAAI,IAAI,IAAI,SAAS,MAAM,GACzC,QAAQ,GACR,IAAI,SAAS,MAAM,GACjB,QAAQ,GACR,IAAI,SAAS,OAAO,GAClB,SAAS,GACT,IAAI,SAAS,SAAS,OAAO,EAAE,GAC7B,OAAO,GACP,IAAI,SAAS,MAAM,GACjB,QAAQ,GACR,KAAK,CAAC"}
|
package/dist/schema/index.d.ts
CHANGED
|
@@ -5,8 +5,9 @@ export * from "./infer-shape.type.js";
|
|
|
5
5
|
export * from "./infer-schema.type.js";
|
|
6
6
|
export * from "./number-schema.type.js";
|
|
7
7
|
export * from "./object-schema.type.js";
|
|
8
|
+
export * from "./optional-schema.type.js";
|
|
9
|
+
export * from "./string-schema.type.js";
|
|
8
10
|
export * from "./base-schema.type.js";
|
|
9
11
|
export * from "./schema.type.js";
|
|
10
12
|
export * from "./shape.type.js";
|
|
11
|
-
export * from "./string-schema.type.js";
|
|
12
13
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC"}
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
import { BooleanSchema } from "./boolean-schema.type.js";
|
|
4
|
-
import { NumberSchema } from "./number-schema.type.js";
|
|
5
|
-
import { ObjectSchema } from "./object-schema.type.js";
|
|
6
|
-
export type InferSchema<SchemaType> = SchemaType extends StringSchema ? string : SchemaType extends NumberSchema ? number : SchemaType extends BooleanSchema ? boolean : SchemaType extends ArraySchema<infer ItemType> ? ItemType[] : SchemaType extends ObjectSchema<infer ObjectType> ? ObjectType : never;
|
|
1
|
+
import { BaseSchema } from "./base-schema.type.js";
|
|
2
|
+
export type InferSchema<SchemaType> = SchemaType extends BaseSchema<infer Type> ? Type : never;
|
|
7
3
|
//# sourceMappingURL=infer-schema.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infer-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/infer-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"infer-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/infer-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,MAAM,MAAM,WAAW,CAAC,UAAU,IAChC,UAAU,SAAS,UAAU,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,GAAG,KAAK,CAAC"}
|
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
import { InferSchema } from "./infer-schema.type.js";
|
|
2
|
+
type OptionalSchemaMarker = {
|
|
3
|
+
readonly _optional: true;
|
|
4
|
+
};
|
|
5
|
+
type OptionalKeys<Shape> = {
|
|
6
|
+
[Key in keyof Shape]: Shape[Key] extends OptionalSchemaMarker ? Key : never;
|
|
7
|
+
}[keyof Shape];
|
|
2
8
|
export type InferShape<Shape> = {
|
|
3
|
-
[Key in keyof Shape]: InferSchema<Shape[Key]>;
|
|
9
|
+
[Key in Exclude<keyof Shape, OptionalKeys<Shape>>]: InferSchema<Shape[Key]>;
|
|
10
|
+
} & {
|
|
11
|
+
[Key in OptionalKeys<Shape>]?: InferSchema<Shape[Key]>;
|
|
4
12
|
};
|
|
13
|
+
export {};
|
|
5
14
|
//# sourceMappingURL=infer-shape.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"infer-shape.type.d.ts","sourceRoot":"","sources":["../../src/schema/infer-shape.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,MAAM,MAAM,UAAU,CAAC,KAAK,IAAI;KAC7B,GAAG,IAAI,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"infer-shape.type.d.ts","sourceRoot":"","sources":["../../src/schema/infer-shape.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,KAAK,oBAAoB,GAAG;IAC1B,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;CAC1B,CAAC;AAEF,KAAK,YAAY,CAAC,KAAK,IAAI;KACxB,GAAG,IAAI,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,oBAAoB,GAAG,GAAG,GAAG,KAAK;CAC5E,CAAC,MAAM,KAAK,CAAC,CAAC;AAEf,MAAM,MAAM,UAAU,CAAC,KAAK,IAAI;KAC7B,GAAG,IAAI,OAAO,CAAC,MAAM,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;CAC5E,GAAG;KACD,GAAG,IAAI,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;CACvD,CAAC"}
|
|
@@ -1,11 +1,16 @@
|
|
|
1
1
|
import { BaseSchema } from "./base-schema.type.js";
|
|
2
|
+
import { OptionalSchema } from "./optional-schema.type.js";
|
|
2
3
|
export interface NumberSchema extends BaseSchema<number> {
|
|
3
|
-
|
|
4
|
+
int(): NumberSchema;
|
|
4
5
|
positive(): NumberSchema;
|
|
5
6
|
negative(): NumberSchema;
|
|
6
|
-
|
|
7
|
+
decimal(places: number): NumberSchema;
|
|
7
8
|
equal(target: number): NumberSchema;
|
|
8
|
-
|
|
9
|
-
|
|
9
|
+
in(values: readonly [number, ...number[]]): NumberSchema;
|
|
10
|
+
gt(target: number): NumberSchema;
|
|
11
|
+
gte(target: number): NumberSchema;
|
|
12
|
+
lt(target: number): NumberSchema;
|
|
13
|
+
lte(target: number): NumberSchema;
|
|
14
|
+
optional(): OptionalSchema<number>;
|
|
10
15
|
}
|
|
11
16
|
//# sourceMappingURL=number-schema.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"number-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/number-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"number-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/number-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,MAAM,WAAW,YAAa,SAAQ,UAAU,CAAC,MAAM,CAAC;IACtD,GAAG,IAAI,YAAY,CAAC;IACpB,QAAQ,IAAI,YAAY,CAAC;IACzB,QAAQ,IAAI,YAAY,CAAC;IACzB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IACtC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IACpC,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,GAAG,YAAY,CAAC;IACzD,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IACjC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IAClC,EAAE,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IACjC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IAClC,QAAQ,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;CACpC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { BaseSchema } from "./base-schema.type.js";
|
|
2
|
+
import type { OptionalSchema } from "./optional-schema.type.js";
|
|
2
3
|
import type { Shape } from "./shape.type.js";
|
|
3
4
|
export type ObjectSchema<ObjectType extends object> = BaseSchema<ObjectType> & Shape<ObjectType> & {
|
|
4
5
|
strict(): ObjectSchema<ObjectType>;
|
|
6
|
+
optional(): OptionalSchema<ObjectType>;
|
|
5
7
|
};
|
|
6
8
|
//# sourceMappingURL=object-schema.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/object-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,MAAM,YAAY,CAAC,UAAU,SAAS,MAAM,
|
|
1
|
+
{"version":3,"file":"object-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/object-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,MAAM,YAAY,CAAC,UAAU,SAAS,MAAM,IAAI,UAAU,CAAC,UAAU,CAAC,GAC1E,KAAK,CAAC,UAAU,CAAC,GAAG;IAClB,MAAM,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC;IACnC,QAAQ,IAAI,cAAc,CAAC,UAAU,CAAC,CAAC;CACxC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optional-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/optional-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD,MAAM,WAAW,cAAc,CAAC,IAAI,CAAE,SAAQ,UAAU,CAAC,IAAI,GAAG,SAAS,CAAC;IACxE,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;CAC1B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,MAAM,MAAM,MAAM,CAAC,IAAI,
|
|
1
|
+
{"version":3,"file":"schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,MAAM,MAAM,MAAM,CAAC,IAAI,IAAI,IAAI,SAAS,MAAM,GAC1C,YAAY,GACZ,IAAI,SAAS,MAAM,GACjB,YAAY,GACZ,IAAI,SAAS,OAAO,GAClB,aAAa,GACb,IAAI,SAAS,KAAK,CAAC,MAAM,IAAI,CAAC,GAC5B,WAAW,CAAC,IAAI,CAAC,GACjB,IAAI,SAAS,MAAM,GACjB,YAAY,CAAC,IAAI,CAAC,GAClB,KAAK,CAAC"}
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
import { OptionalSchema } from "./optional-schema.type.js";
|
|
1
2
|
import { Schema } from "./schema.type.js";
|
|
3
|
+
type OptionalKeys<ObjectType> = {
|
|
4
|
+
[Key in keyof ObjectType]-?: undefined extends ObjectType[Key] ? Key : never;
|
|
5
|
+
}[keyof ObjectType];
|
|
2
6
|
export type Shape<ObjectType extends object> = {
|
|
3
|
-
[Key in keyof ObjectType]
|
|
7
|
+
[Key in Exclude<keyof ObjectType, OptionalKeys<ObjectType>>]-?: Schema<ObjectType[Key]>;
|
|
8
|
+
} & {
|
|
9
|
+
[Key in OptionalKeys<ObjectType>]-?: OptionalSchema<Exclude<ObjectType[Key], undefined>>;
|
|
4
10
|
};
|
|
11
|
+
export {};
|
|
5
12
|
//# sourceMappingURL=shape.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shape.type.d.ts","sourceRoot":"","sources":["../../src/schema/shape.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,MAAM,MAAM,KAAK,CAAC,UAAU,SAAS,MAAM,IAAI;KAC5C,GAAG,IAAI,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"shape.type.d.ts","sourceRoot":"","sources":["../../src/schema/shape.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,KAAK,YAAY,CAAC,UAAU,IAAI;KAC7B,GAAG,IAAI,MAAM,UAAU,CAAC,CAAC,GAAG,SAAS,SAAS,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK;CAC7E,CAAC,MAAM,UAAU,CAAC,CAAC;AAEpB,MAAM,MAAM,KAAK,CAAC,UAAU,SAAS,MAAM,IAAI;KAC5C,GAAG,IAAI,OAAO,CAAC,MAAM,UAAU,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CACpE,UAAU,CAAC,GAAG,CAAC,CAChB;CACF,GAAG;KACD,GAAG,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,cAAc,CACjD,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,CACpC;CACF,CAAC"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { BaseSchema } from "./base-schema.type.js";
|
|
2
|
+
import { OptionalSchema } from "./optional-schema.type.js";
|
|
2
3
|
export interface StringSchema extends BaseSchema<string> {
|
|
3
4
|
contains(substring: string): StringSchema;
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
email(): StringSchema;
|
|
6
|
+
in(values: readonly [string, ...string[]]): StringSchema;
|
|
7
|
+
min(length: number): StringSchema;
|
|
8
|
+
max(length: number): StringSchema;
|
|
9
|
+
optional(): OptionalSchema<string>;
|
|
6
10
|
}
|
|
7
11
|
//# sourceMappingURL=string-schema.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"string-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/string-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"string-schema.type.d.ts","sourceRoot":"","sources":["../../src/schema/string-schema.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,MAAM,WAAW,YAAa,SAAQ,UAAU,CAAC,MAAM,CAAC;IACtD,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,CAAC;IAC1C,KAAK,IAAI,YAAY,CAAC;IACtB,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,GAAG,YAAY,CAAC;IACzD,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IAClC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAAC;IAClC,QAAQ,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;CACpC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { DateFormat } from "../util/date-format.type.js";
|
|
2
|
+
import { DateUnit } from "../util/date-unit.type.js";
|
|
3
|
+
export interface DateService<CustomDate> {
|
|
4
|
+
now(): CustomDate;
|
|
5
|
+
add(date: CustomDate, amount: number, unit: DateUnit): CustomDate;
|
|
6
|
+
subtract(date: CustomDate, amount: number, unit: DateUnit): CustomDate;
|
|
7
|
+
equal(firstDate: CustomDate, secondDate: CustomDate, unit?: DateUnit): boolean;
|
|
8
|
+
gt(firstDate: CustomDate, secondDate: CustomDate, unit?: DateUnit): boolean;
|
|
9
|
+
lt(firstDate: CustomDate, secondDate: CustomDate, unit?: DateUnit): boolean;
|
|
10
|
+
gte(firstDate: CustomDate, secondDate: CustomDate, unit?: DateUnit): boolean;
|
|
11
|
+
lte(firstDate: CustomDate, secondDate: CustomDate, unit?: DateUnit): boolean;
|
|
12
|
+
between(date: CustomDate, startDate: CustomDate, endDate: CustomDate, unit?: DateUnit): boolean;
|
|
13
|
+
diff(firstDate: CustomDate, secondDate: CustomDate, unit: DateUnit): number;
|
|
14
|
+
format(date: CustomDate, format: DateFormat): string;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=date-service.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-service.type.d.ts","sourceRoot":"","sources":["../../src/service/date-service.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAErD,MAAM,WAAW,WAAW,CAAC,UAAU;IACrC,GAAG,IAAI,UAAU,CAAC;IAElB,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAClE,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,UAAU,CAAC;IAEvE,KAAK,CACH,SAAS,EAAE,UAAU,EACrB,UAAU,EAAE,UAAU,EACtB,IAAI,CAAC,EAAE,QAAQ,GACd,OAAO,CAAC;IACX,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC5E,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC5E,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC7E,GAAG,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC7E,OAAO,CACL,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,UAAU,EACrB,OAAO,EAAE,UAAU,EACnB,IAAI,CAAC,EAAE,QAAQ,GACd,OAAO,CAAC;IAEX,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,CAAC;IAE5E,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,CAAC;CACtD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/service/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { DomainError } from "@basecraft/errors";
|
|
2
|
-
export type Result<Value, CustomError extends DomainError> = Value | CustomError;
|
|
3
|
-
export type AsyncResult<Value, CustomError extends DomainError> = Promise<Result<Value, CustomError>>;
|
|
2
|
+
export type Result<Value, CustomError extends DomainError = never> = Value | CustomError;
|
|
3
|
+
export type AsyncResult<Value, CustomError extends DomainError = never> = Promise<Result<Value, CustomError>>;
|
|
4
4
|
//# sourceMappingURL=result.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.type.d.ts","sourceRoot":"","sources":["../../src/use-case/result.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,MAAM,MAAM,CAAC,KAAK,EAAE,WAAW,SAAS,WAAW,
|
|
1
|
+
{"version":3,"file":"result.type.d.ts","sourceRoot":"","sources":["../../src/use-case/result.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,MAAM,MAAM,MAAM,CAAC,KAAK,EAAE,WAAW,SAAS,WAAW,GAAG,KAAK,IAC/D,KAAK,GAAG,WAAW,CAAC;AAEtB,MAAM,MAAM,WAAW,CACrB,KAAK,EACL,WAAW,SAAS,WAAW,GAAG,KAAK,IACrC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC"}
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
export interface
|
|
2
|
-
role: string;
|
|
3
|
-
}
|
|
4
|
-
export interface UseCaseDependencies<AuthenticatedUser extends BaseUser = BaseUser> {
|
|
1
|
+
export interface UseCaseDependencies<AuthenticatedUser extends object = object> {
|
|
5
2
|
currentUser?: AuthenticatedUser | undefined;
|
|
6
3
|
}
|
|
7
4
|
//# sourceMappingURL=use-case-dependencies.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-case-dependencies.type.d.ts","sourceRoot":"","sources":["../../src/use-case/use-case-dependencies.type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"use-case-dependencies.type.d.ts","sourceRoot":"","sources":["../../src/use-case/use-case-dependencies.type.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,mBAAmB,CAClC,iBAAiB,SAAS,MAAM,GAAG,MAAM;IAEzC,WAAW,CAAC,EAAE,iBAAiB,GAAG,SAAS,CAAC;CAC7C"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { AuthenticationRequiredError, AuthorizationError, DomainError, InvalidRequestError, UnexpectedError } from "@basecraft/errors";
|
|
2
|
-
export type UseCaseError<CustomError extends DomainError> = CustomError | InvalidRequestError | AuthenticationRequiredError | AuthorizationError | UnexpectedError;
|
|
2
|
+
export type UseCaseError<CustomError extends DomainError = never> = CustomError | InvalidRequestError | AuthenticationRequiredError | AuthorizationError | UnexpectedError;
|
|
3
3
|
//# sourceMappingURL=use-case-error.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-case-error.type.d.ts","sourceRoot":"","sources":["../../src/use-case/use-case-error.type.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,WAAW,EACX,mBAAmB,EACnB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,YAAY,CAAC,WAAW,SAAS,WAAW,
|
|
1
|
+
{"version":3,"file":"use-case-error.type.d.ts","sourceRoot":"","sources":["../../src/use-case/use-case-error.type.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,kBAAkB,EAClB,WAAW,EACX,mBAAmB,EACnB,eAAe,EAChB,MAAM,mBAAmB,CAAC;AAE3B,MAAM,MAAM,YAAY,CAAC,WAAW,SAAS,WAAW,GAAG,KAAK,IAC5D,WAAW,GACX,mBAAmB,GACnB,2BAA2B,GAC3B,kBAAkB,GAClB,eAAe,CAAC"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { DomainError } from "@basecraft/errors";
|
|
2
2
|
import { Shape } from "../schema/shape.type.js";
|
|
3
3
|
import { Result } from "./result.type.js";
|
|
4
|
+
import { InferRole } from "../util/infer-role.type.js";
|
|
4
5
|
import { UseCaseDependencies } from "./use-case-dependencies.type.js";
|
|
5
|
-
export interface UseCaseOptions<Dependencies extends UseCaseDependencies, Request extends object, Response, CustomError extends DomainError> {
|
|
6
|
-
|
|
7
|
-
allowedRoles?: readonly
|
|
6
|
+
export interface UseCaseOptions<Dependencies extends UseCaseDependencies, Request extends object, Response, CustomError extends DomainError = never> {
|
|
7
|
+
authRequired?: boolean | undefined;
|
|
8
|
+
allowedRoles?: readonly InferRole<Dependencies>[] | undefined;
|
|
8
9
|
requestShape: Shape<Request>;
|
|
9
10
|
handler: (dependencies: Dependencies, request: Request) => Promise<Result<Response, CustomError>>;
|
|
10
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-case-options.type.d.ts","sourceRoot":"","sources":["../../src/use-case/use-case-options.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE,MAAM,WAAW,cAAc,CAC7B,YAAY,SAAS,mBAAmB,EACxC,OAAO,SAAS,MAAM,EACtB,QAAQ,EACR,WAAW,SAAS,WAAW;
|
|
1
|
+
{"version":3,"file":"use-case-options.type.d.ts","sourceRoot":"","sources":["../../src/use-case/use-case-options.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAEtE,MAAM,WAAW,cAAc,CAC7B,YAAY,SAAS,mBAAmB,EACxC,OAAO,SAAS,MAAM,EACtB,QAAQ,EACR,WAAW,SAAS,WAAW,GAAG,KAAK;IAEvC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAEnC,YAAY,CAAC,EAAE,SAAS,SAAS,CAAC,YAAY,CAAC,EAAE,GAAG,SAAS,CAAC;IAE9D,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAE7B,OAAO,EAAE,CACP,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,KACb,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;CAC7C"}
|
|
@@ -2,7 +2,7 @@ import { DomainError } from "@basecraft/errors";
|
|
|
2
2
|
import { Result } from "./result.type.js";
|
|
3
3
|
import { UseCaseDependencies } from "./use-case-dependencies.type.js";
|
|
4
4
|
import { UseCaseError } from "./use-case-error.type.js";
|
|
5
|
-
export interface UseCase<Dependencies extends UseCaseDependencies, Request extends object, Response, CustomError extends DomainError> {
|
|
5
|
+
export interface UseCase<Dependencies extends UseCaseDependencies, Request extends object, Response, CustomError extends DomainError = never> {
|
|
6
6
|
execute(dependencies: Dependencies, request: Request): Promise<Result<Response, UseCaseError<CustomError>>>;
|
|
7
7
|
}
|
|
8
8
|
//# sourceMappingURL=use-case.type.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-case.type.d.ts","sourceRoot":"","sources":["../../src/use-case/use-case.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,WAAW,OAAO,CACtB,YAAY,SAAS,mBAAmB,EACxC,OAAO,SAAS,MAAM,EACtB,QAAQ,EACR,WAAW,SAAS,WAAW;
|
|
1
|
+
{"version":3,"file":"use-case.type.d.ts","sourceRoot":"","sources":["../../src/use-case/use-case.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,MAAM,WAAW,OAAO,CACtB,YAAY,SAAS,mBAAmB,EACxC,OAAO,SAAS,MAAM,EACtB,QAAQ,EACR,WAAW,SAAS,WAAW,GAAG,KAAK;IAEvC,OAAO,CACL,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;CACzD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-format.type.d.ts","sourceRoot":"","sources":["../../src/util/date-format.type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,UAAU,GAClB,YAAY,GACZ,YAAY,GACZ,UAAU,GACV,UAAU,GACV,qBAAqB,GACrB,qBAAqB,GACrB,mBAAmB,GACnB,mBAAmB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"date-unit.type.d.ts","sourceRoot":"","sources":["../../src/util/date-unit.type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAChB,aAAa,GACb,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,KAAK,GACL,MAAM,GACN,OAAO,GACP,MAAM,CAAC"}
|
package/dist/util/index.d.ts
CHANGED
package/dist/util/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/util/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"infer-current-user.type.d.ts","sourceRoot":"","sources":["../../src/util/infer-current-user.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAEhF,MAAM,MAAM,gBAAgB,CAAC,YAAY,SAAS,mBAAmB,IACnE,WAAW,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { UseCaseDependencies } from "../use-case/use-case-dependencies.type.js";
|
|
2
|
+
import { InferCurrentUser } from "./infer-current-user.type.js";
|
|
3
|
+
export type InferRole<Dependencies extends UseCaseDependencies> = InferCurrentUser<Dependencies> extends {
|
|
4
|
+
role?: infer Role;
|
|
5
|
+
} ? [Extract<Role, string | number>] extends [never] ? string | number : Extract<Role, string | number> : string | number;
|
|
6
|
+
//# sourceMappingURL=infer-role.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"infer-role.type.d.ts","sourceRoot":"","sources":["../../src/util/infer-role.type.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE,MAAM,MAAM,SAAS,CAAC,YAAY,SAAS,mBAAmB,IAC5D,gBAAgB,CAAC,YAAY,CAAC,SAAS;IAAE,IAAI,CAAC,EAAE,MAAM,IAAI,CAAA;CAAE,GACxD,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC9C,MAAM,GAAG,MAAM,GACf,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,GAChC,MAAM,GAAG,MAAM,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@basecraft/types",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"types": "./dist/index.d.ts",
|
|
6
|
-
"files": [
|
|
6
|
+
"files": [
|
|
7
|
+
"dist"
|
|
8
|
+
],
|
|
7
9
|
"scripts": {
|
|
8
10
|
"build": "tsc",
|
|
9
11
|
"clean": "rm -rf dist",
|
|
10
12
|
"check:types": "tsc --noEmit",
|
|
13
|
+
"check:format": "prettier . --check",
|
|
11
14
|
"check:code": "eslint ."
|
|
12
15
|
},
|
|
13
16
|
"dependencies": {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"require-at-least-one.type.d.ts","sourceRoot":"","sources":["../src/require-at-least-one.type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,CAAC,UAAU,SAAS,MAAM,IAAI;KACxD,GAAG,IAAI,MAAM,UAAU,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,GAC1D,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;CACjC,CAAC,MAAM,UAAU,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"field-schemas.type.d.ts","sourceRoot":"","sources":["../../src/schema/field-schemas.type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,CAAC,KAAK,IAAI;IAChC,QAAQ,EAAE,GAAG,IAAI,MAAM,KAAK,GAAG;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE;CAC3D,CAAC"}
|