@decaf-ts/db-decorators 0.6.11 → 0.6.13
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/README.md +23 -3
- package/dist/db-decorators.cjs +2 -2989
- package/dist/db-decorators.cjs.map +1 -0
- package/dist/db-decorators.js +2 -0
- package/dist/db-decorators.js.map +1 -0
- package/lib/esm/identity/decorators.js +1 -1
- package/lib/esm/identity/decorators.js.map +1 -0
- package/lib/esm/identity/index.js +1 -1
- package/lib/esm/identity/index.js.map +1 -0
- package/lib/esm/identity/utils.js +1 -1
- package/lib/esm/identity/utils.js.map +1 -0
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +2 -2
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/interfaces/BulkCrudOperator.js +1 -1
- package/lib/esm/interfaces/BulkCrudOperator.js.map +1 -0
- package/lib/esm/interfaces/Contextual.js +1 -1
- package/lib/esm/interfaces/Contextual.js.map +1 -0
- package/lib/esm/interfaces/CrudOperator.js +1 -1
- package/lib/esm/interfaces/CrudOperator.js.map +1 -0
- package/lib/esm/interfaces/IRepository.js +1 -1
- package/lib/esm/interfaces/IRepository.js.map +1 -0
- package/lib/esm/interfaces/index.js +1 -1
- package/lib/esm/interfaces/index.js.map +1 -0
- package/lib/esm/model/constants.js +1 -1
- package/lib/esm/model/constants.js.map +1 -0
- package/lib/esm/model/decorators.js +1 -1
- package/lib/esm/model/decorators.js.map +1 -0
- package/lib/esm/model/index.js +1 -1
- package/lib/esm/model/index.js.map +1 -0
- package/lib/esm/model/model.js +1 -1
- package/lib/esm/model/model.js.map +1 -0
- package/lib/esm/model/overrides.js +1 -1
- package/lib/esm/model/overrides.js.map +1 -0
- package/lib/esm/model/utils.js +1 -1
- package/lib/esm/model/utils.js.map +1 -0
- package/lib/esm/model/validation.js +1 -1
- package/lib/esm/model/validation.js.map +1 -0
- package/lib/esm/operations/Operations.js +1 -1
- package/lib/esm/operations/Operations.js.map +1 -0
- package/lib/esm/operations/OperationsRegistry.js +1 -1
- package/lib/esm/operations/OperationsRegistry.js.map +1 -0
- package/lib/esm/operations/constants.d.ts +2 -1
- package/lib/esm/operations/constants.js +2 -1
- package/lib/esm/operations/constants.js.map +1 -0
- package/lib/esm/operations/decorators.d.ts +66 -1
- package/lib/esm/operations/decorators.js +73 -1
- package/lib/esm/operations/decorators.js.map +1 -0
- package/lib/esm/operations/index.js +1 -1
- package/lib/esm/operations/index.js.map +1 -0
- package/lib/esm/operations/types.js +1 -1
- package/lib/esm/operations/types.js.map +1 -0
- package/lib/esm/repository/BaseRepository.js +1 -1
- package/lib/esm/repository/BaseRepository.js.map +1 -0
- package/lib/esm/repository/Context.js +1 -1
- package/lib/esm/repository/Context.js.map +1 -0
- package/lib/esm/repository/Repository.js +1 -1
- package/lib/esm/repository/Repository.js.map +1 -0
- package/lib/esm/repository/constants.js +1 -1
- package/lib/esm/repository/constants.js.map +1 -0
- package/lib/esm/repository/errors.js +1 -1
- package/lib/esm/repository/errors.js.map +1 -0
- package/lib/esm/repository/index.js +1 -1
- package/lib/esm/repository/index.js.map +1 -0
- package/lib/esm/repository/types.js +1 -1
- package/lib/esm/repository/types.js.map +1 -0
- package/lib/esm/repository/utils.js +1 -1
- package/lib/esm/repository/utils.js.map +1 -0
- package/lib/esm/repository/wrappers.js +1 -1
- package/lib/esm/repository/wrappers.js.map +1 -0
- package/lib/esm/validation/constants.js +1 -1
- package/lib/esm/validation/constants.js.map +1 -0
- package/lib/esm/validation/decorators.js +1 -1
- package/lib/esm/validation/decorators.js.map +1 -0
- package/lib/esm/validation/index.js +1 -1
- package/lib/esm/validation/index.js.map +1 -0
- package/lib/esm/validation/validation.js +1 -1
- package/lib/esm/validation/validation.js.map +1 -0
- package/lib/esm/validation/validators/ReadOnlyValidator.js +1 -1
- package/lib/esm/validation/validators/ReadOnlyValidator.js.map +1 -0
- package/lib/esm/validation/validators/TimestampValidator.js +1 -1
- package/lib/esm/validation/validators/TimestampValidator.js.map +1 -0
- package/lib/esm/validation/validators/UpdateValidator.js +1 -1
- package/lib/esm/validation/validators/UpdateValidator.js.map +1 -0
- package/lib/esm/validation/validators/index.js +1 -1
- package/lib/esm/validation/validators/index.js.map +1 -0
- package/lib/identity/decorators.cjs +1 -1
- package/lib/identity/decorators.js.map +1 -0
- package/lib/identity/index.cjs +1 -1
- package/lib/identity/index.js.map +1 -0
- package/lib/identity/utils.cjs +1 -1
- package/lib/identity/utils.js.map +1 -0
- package/lib/index.cjs +2 -2
- package/lib/index.d.ts +1 -1
- package/lib/index.js.map +1 -0
- package/lib/interfaces/BulkCrudOperator.cjs +1 -1
- package/lib/interfaces/BulkCrudOperator.js.map +1 -0
- package/lib/interfaces/Contextual.cjs +1 -1
- package/lib/interfaces/Contextual.js.map +1 -0
- package/lib/interfaces/CrudOperator.cjs +1 -1
- package/lib/interfaces/CrudOperator.js.map +1 -0
- package/lib/interfaces/IRepository.cjs +1 -1
- package/lib/interfaces/IRepository.js.map +1 -0
- package/lib/interfaces/index.cjs +1 -1
- package/lib/interfaces/index.js.map +1 -0
- package/lib/model/constants.cjs +1 -1
- package/lib/model/constants.js.map +1 -0
- package/lib/model/decorators.cjs +1 -1
- package/lib/model/decorators.js.map +1 -0
- package/lib/model/index.cjs +1 -1
- package/lib/model/index.js.map +1 -0
- package/lib/model/model.cjs +1 -1
- package/lib/model/model.js.map +1 -0
- package/lib/model/overrides.cjs +1 -1
- package/lib/model/overrides.js.map +1 -0
- package/lib/model/utils.cjs +1 -1
- package/lib/model/utils.js.map +1 -0
- package/lib/model/validation.cjs +1 -1
- package/lib/model/validation.js.map +1 -0
- package/lib/operations/Operations.cjs +1 -1
- package/lib/operations/Operations.js.map +1 -0
- package/lib/operations/OperationsRegistry.cjs +1 -1
- package/lib/operations/OperationsRegistry.js.map +1 -0
- package/lib/operations/constants.cjs +2 -1
- package/lib/operations/constants.d.ts +2 -1
- package/lib/operations/constants.js.map +1 -0
- package/lib/operations/decorators.cjs +76 -1
- package/lib/operations/decorators.d.ts +66 -1
- package/lib/operations/decorators.js.map +1 -0
- package/lib/operations/index.cjs +1 -1
- package/lib/operations/index.js.map +1 -0
- package/lib/operations/types.cjs +1 -1
- package/lib/operations/types.js.map +1 -0
- package/lib/repository/BaseRepository.cjs +1 -1
- package/lib/repository/BaseRepository.js.map +1 -0
- package/lib/repository/Context.cjs +1 -1
- package/lib/repository/Context.js.map +1 -0
- package/lib/repository/Repository.cjs +1 -1
- package/lib/repository/Repository.js.map +1 -0
- package/lib/repository/constants.cjs +1 -1
- package/lib/repository/constants.js.map +1 -0
- package/lib/repository/errors.cjs +1 -1
- package/lib/repository/errors.js.map +1 -0
- package/lib/repository/index.cjs +1 -1
- package/lib/repository/index.js.map +1 -0
- package/lib/repository/types.cjs +1 -1
- package/lib/repository/types.js.map +1 -0
- package/lib/repository/utils.cjs +1 -1
- package/lib/repository/utils.js.map +1 -0
- package/lib/repository/wrappers.cjs +1 -1
- package/lib/repository/wrappers.js.map +1 -0
- package/lib/validation/constants.cjs +1 -1
- package/lib/validation/constants.js.map +1 -0
- package/lib/validation/decorators.cjs +1 -1
- package/lib/validation/decorators.js.map +1 -0
- package/lib/validation/index.cjs +1 -1
- package/lib/validation/index.js.map +1 -0
- package/lib/validation/validation.cjs +1 -1
- package/lib/validation/validation.js.map +1 -0
- package/lib/validation/validators/ReadOnlyValidator.cjs +1 -1
- package/lib/validation/validators/ReadOnlyValidator.js.map +1 -0
- package/lib/validation/validators/TimestampValidator.cjs +1 -1
- package/lib/validation/validators/TimestampValidator.js.map +1 -0
- package/lib/validation/validators/UpdateValidator.cjs +1 -1
- package/lib/validation/validators/UpdateValidator.js.map +1 -0
- package/lib/validation/validators/index.cjs +1 -1
- package/lib/validation/validators/index.js.map +1 -0
- package/package.json +12 -50
- package/dist/db-decorators.esm.cjs +0 -2917
package/README.md
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-

|
|
2
2
|
### DB-Decorators: Database Operations Made Simple
|
|
3
3
|
|
|
4
4
|
The db-decorators library provides a comprehensive set of TypeScript decorators and utilities for database operations. It implements the repository pattern with support for model definition, validation, identity management, and operation hooks. The library enables developers to define database models with decorators, perform CRUD operations with validation, and customize behavior during database operations through operation hooks.
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
|
|
8
7
|

|
|
9
8
|

|
|
10
9
|

|
|
@@ -28,6 +27,9 @@ The db-decorators library provides a comprehensive set of TypeScript decorators
|
|
|
28
27
|
|
|
29
28
|
Documentation available [here](https://decaf-ts.github.io/db-decorators/)
|
|
30
29
|
|
|
30
|
+
Minimal size: 7.1 KB kb gzipped
|
|
31
|
+
|
|
32
|
+
|
|
31
33
|
|
|
32
34
|
### DB-Decorators
|
|
33
35
|
|
|
@@ -607,6 +609,24 @@ console.log("Empty ID:", emptyId);
|
|
|
607
609
|
|
|
608
610
|
|
|
609
611
|
|
|
612
|
+
## Coding Principles
|
|
613
|
+
|
|
614
|
+
- group similar functionality in folders (analog to namespaces but without any namespace declaration)
|
|
615
|
+
- one class per file;
|
|
616
|
+
- one interface per file (unless interface is just used as a type);
|
|
617
|
+
- group types as other interfaces in a types.ts file per folder;
|
|
618
|
+
- group constants or enums in a constants.ts file per folder;
|
|
619
|
+
- group decorators in a decorators.ts file per folder;
|
|
620
|
+
- always import from the specific file, never from a folder or index file (exceptions for dependencies on other packages);
|
|
621
|
+
- prefer the usage of established design patters where applicable:
|
|
622
|
+
- Singleton (can be an anti-pattern. use with care);
|
|
623
|
+
- factory;
|
|
624
|
+
- observer;
|
|
625
|
+
- strategy;
|
|
626
|
+
- builder;
|
|
627
|
+
- etc;
|
|
628
|
+
|
|
629
|
+
|
|
610
630
|
### Related
|
|
611
631
|
|
|
612
632
|
[](https://github.com/decaf-ts/decaf-ts)
|
|
@@ -648,4 +668,4 @@ So if you can, if this project in any way. either by learning something or simpl
|
|
|
648
668
|
|
|
649
669
|
This project is released under the [MIT License](./LICENSE.md).
|
|
650
670
|
|
|
651
|
-
By developers, for developers...
|
|
671
|
+
By developers, for developers...
|