@decaf-ts/decorator-validation 1.7.22 → 1.8.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/README.md +23 -1
- package/dist/decorator-validation.cjs +2 -5079
- package/dist/decorator-validation.cjs.map +1 -0
- package/dist/decorator-validation.js +2 -0
- package/dist/decorator-validation.js.map +1 -0
- package/lib/constants/errors.cjs +1 -1
- package/lib/constants/errors.js.map +1 -0
- package/lib/constants/index.cjs +1 -1
- package/lib/constants/index.js.map +1 -0
- package/lib/constants/validation.cjs +1 -1
- package/lib/constants/validation.js.map +1 -0
- package/lib/esm/constants/errors.js +1 -1
- package/lib/esm/constants/errors.js.map +1 -0
- package/lib/esm/constants/index.js +1 -1
- package/lib/esm/constants/index.js.map +1 -0
- package/lib/esm/constants/validation.js +1 -1
- package/lib/esm/constants/validation.js.map +1 -0
- package/lib/esm/index.d.ts +2 -2
- package/lib/esm/index.js +3 -3
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/mcp/ModelContextProtocol.js +1 -1
- package/lib/esm/mcp/ModelContextProtocol.js.map +1 -0
- package/lib/esm/mcp/mcp1.js +1 -1
- package/lib/esm/mcp/mcp1.js.map +1 -0
- package/lib/esm/mcp/tools/createModel.tool.js +1 -1
- package/lib/esm/mcp/tools/createModel.tool.js.map +1 -0
- package/lib/esm/mcp/tools/validateModel.tool.js +1 -1
- package/lib/esm/mcp/tools/validateModel.tool.js.map +1 -0
- package/lib/esm/mcp/types.js +1 -1
- package/lib/esm/mcp/types.js.map +1 -0
- package/lib/esm/model/Builder.js +1 -1
- package/lib/esm/model/Builder.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/ModelErrorDefinition.js +1 -1
- package/lib/esm/model/ModelErrorDefinition.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/construction.js +1 -1
- package/lib/esm/model/construction.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/types.js +1 -1
- package/lib/esm/model/types.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/types/index.js +1 -1
- package/lib/esm/types/index.js.map +1 -0
- package/lib/esm/types/validation.js +1 -1
- package/lib/esm/types/validation.js.map +1 -0
- package/lib/esm/utils/Decoration.js +1 -1
- package/lib/esm/utils/Decoration.js.map +1 -0
- package/lib/esm/utils/PathProxy.js +1 -1
- package/lib/esm/utils/PathProxy.js.map +1 -0
- package/lib/esm/utils/constants.js +1 -1
- package/lib/esm/utils/constants.js.map +1 -0
- package/lib/esm/utils/dates.js +1 -1
- package/lib/esm/utils/dates.js.map +1 -0
- package/lib/esm/utils/decorators.js +1 -1
- package/lib/esm/utils/decorators.js.map +1 -0
- package/lib/esm/utils/hashing.js +1 -1
- package/lib/esm/utils/hashing.js.map +1 -0
- package/lib/esm/utils/index.js +1 -1
- package/lib/esm/utils/index.js.map +1 -0
- package/lib/esm/utils/registry.js +1 -1
- package/lib/esm/utils/registry.js.map +1 -0
- package/lib/esm/utils/serialization.js +1 -1
- package/lib/esm/utils/serialization.js.map +1 -0
- package/lib/esm/utils/strings.js +1 -1
- package/lib/esm/utils/strings.js.map +1 -0
- package/lib/esm/utils/types.js +1 -1
- package/lib/esm/utils/types.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/AsyncValidator.js +1 -1
- package/lib/esm/validation/Validators/AsyncValidator.js.map +1 -0
- package/lib/esm/validation/Validators/BaseValidator.js +1 -1
- package/lib/esm/validation/Validators/BaseValidator.js.map +1 -0
- package/lib/esm/validation/Validators/DateValidator.js +1 -1
- package/lib/esm/validation/Validators/DateValidator.js.map +1 -0
- package/lib/esm/validation/Validators/DiffValidator.js +1 -1
- package/lib/esm/validation/Validators/DiffValidator.js.map +1 -0
- package/lib/esm/validation/Validators/EmailValidator.js +1 -1
- package/lib/esm/validation/Validators/EmailValidator.js.map +1 -0
- package/lib/esm/validation/Validators/EqualsValidator.js +1 -1
- package/lib/esm/validation/Validators/EqualsValidator.js.map +1 -0
- package/lib/esm/validation/Validators/GreaterThanOrEqualValidator.js +1 -1
- package/lib/esm/validation/Validators/GreaterThanOrEqualValidator.js.map +1 -0
- package/lib/esm/validation/Validators/GreaterThanValidator.js +1 -1
- package/lib/esm/validation/Validators/GreaterThanValidator.js.map +1 -0
- package/lib/esm/validation/Validators/LessThanOrEqualValidator.js +1 -1
- package/lib/esm/validation/Validators/LessThanOrEqualValidator.js.map +1 -0
- package/lib/esm/validation/Validators/LessThanValidator.js +1 -1
- package/lib/esm/validation/Validators/LessThanValidator.js.map +1 -0
- package/lib/esm/validation/Validators/ListValidator.js +1 -1
- package/lib/esm/validation/Validators/ListValidator.js.map +1 -0
- package/lib/esm/validation/Validators/MaxLengthValidator.js +1 -1
- package/lib/esm/validation/Validators/MaxLengthValidator.js.map +1 -0
- package/lib/esm/validation/Validators/MaxValidator.js +1 -1
- package/lib/esm/validation/Validators/MaxValidator.js.map +1 -0
- package/lib/esm/validation/Validators/MinLengthValidator.js +1 -1
- package/lib/esm/validation/Validators/MinLengthValidator.js.map +1 -0
- package/lib/esm/validation/Validators/MinValidator.js +1 -1
- package/lib/esm/validation/Validators/MinValidator.js.map +1 -0
- package/lib/esm/validation/Validators/PasswordValidator.js +1 -1
- package/lib/esm/validation/Validators/PasswordValidator.js.map +1 -0
- package/lib/esm/validation/Validators/PatternValidator.js +1 -1
- package/lib/esm/validation/Validators/PatternValidator.js.map +1 -0
- package/lib/esm/validation/Validators/RequiredValidator.js +1 -1
- package/lib/esm/validation/Validators/RequiredValidator.js.map +1 -0
- package/lib/esm/validation/Validators/StepValidator.js +1 -1
- package/lib/esm/validation/Validators/StepValidator.js.map +1 -0
- package/lib/esm/validation/Validators/TypeValidator.js +1 -1
- package/lib/esm/validation/Validators/TypeValidator.js.map +1 -0
- package/lib/esm/validation/Validators/URLValidator.js +1 -1
- package/lib/esm/validation/Validators/URLValidator.js.map +1 -0
- package/lib/esm/validation/Validators/Validator.js +1 -1
- package/lib/esm/validation/Validators/Validator.js.map +1 -0
- package/lib/esm/validation/Validators/ValidatorRegistry.js +1 -1
- package/lib/esm/validation/Validators/ValidatorRegistry.js.map +1 -0
- package/lib/esm/validation/Validators/constants.js +1 -1
- package/lib/esm/validation/Validators/constants.js.map +1 -0
- package/lib/esm/validation/Validators/decorators.js +1 -1
- package/lib/esm/validation/Validators/decorators.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/esm/validation/Validators/utils.js +1 -1
- package/lib/esm/validation/Validators/utils.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/types.js +1 -1
- package/lib/esm/validation/types.js.map +1 -0
- package/lib/index.cjs +3 -3
- package/lib/index.d.ts +2 -2
- package/lib/index.js.map +1 -0
- package/lib/mcp/ModelContextProtocol.cjs +1 -1
- package/lib/mcp/ModelContextProtocol.js.map +1 -0
- package/lib/mcp/mcp1.cjs +1 -1
- package/lib/mcp/mcp1.js.map +1 -0
- package/lib/mcp/tools/createModel.tool.cjs +1 -1
- package/lib/mcp/tools/createModel.tool.js.map +1 -0
- package/lib/mcp/tools/validateModel.tool.cjs +1 -1
- package/lib/mcp/tools/validateModel.tool.js.map +1 -0
- package/lib/mcp/types.cjs +1 -1
- package/lib/mcp/types.js.map +1 -0
- package/lib/model/Builder.cjs +1 -1
- package/lib/model/Builder.js.map +1 -0
- package/lib/model/Model.cjs +1 -1
- package/lib/model/Model.js.map +1 -0
- package/lib/model/ModelErrorDefinition.cjs +1 -1
- package/lib/model/ModelErrorDefinition.js.map +1 -0
- package/lib/model/constants.cjs +1 -1
- package/lib/model/constants.js.map +1 -0
- package/lib/model/construction.cjs +1 -1
- package/lib/model/construction.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/types.cjs +1 -1
- package/lib/model/types.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/types/index.cjs +1 -1
- package/lib/types/index.js.map +1 -0
- package/lib/types/validation.cjs +1 -1
- package/lib/types/validation.js.map +1 -0
- package/lib/utils/Decoration.cjs +1 -1
- package/lib/utils/Decoration.js.map +1 -0
- package/lib/utils/PathProxy.cjs +1 -1
- package/lib/utils/PathProxy.js.map +1 -0
- package/lib/utils/constants.cjs +1 -1
- package/lib/utils/constants.js.map +1 -0
- package/lib/utils/dates.cjs +1 -1
- package/lib/utils/dates.js.map +1 -0
- package/lib/utils/decorators.cjs +1 -1
- package/lib/utils/decorators.js.map +1 -0
- package/lib/utils/hashing.cjs +1 -1
- package/lib/utils/hashing.js.map +1 -0
- package/lib/utils/index.cjs +1 -1
- package/lib/utils/index.js.map +1 -0
- package/lib/utils/registry.cjs +1 -1
- package/lib/utils/registry.js.map +1 -0
- package/lib/utils/serialization.cjs +1 -1
- package/lib/utils/serialization.js.map +1 -0
- package/lib/utils/strings.cjs +1 -1
- package/lib/utils/strings.js.map +1 -0
- package/lib/utils/types.cjs +1 -1
- package/lib/utils/types.js.map +1 -0
- package/lib/validation/Validation.cjs +1 -1
- package/lib/validation/Validation.js.map +1 -0
- package/lib/validation/Validators/AsyncValidator.cjs +1 -1
- package/lib/validation/Validators/AsyncValidator.js.map +1 -0
- package/lib/validation/Validators/BaseValidator.cjs +1 -1
- package/lib/validation/Validators/BaseValidator.js.map +1 -0
- package/lib/validation/Validators/DateValidator.cjs +1 -1
- package/lib/validation/Validators/DateValidator.js.map +1 -0
- package/lib/validation/Validators/DiffValidator.cjs +1 -1
- package/lib/validation/Validators/DiffValidator.js.map +1 -0
- package/lib/validation/Validators/EmailValidator.cjs +1 -1
- package/lib/validation/Validators/EmailValidator.js.map +1 -0
- package/lib/validation/Validators/EqualsValidator.cjs +1 -1
- package/lib/validation/Validators/EqualsValidator.js.map +1 -0
- package/lib/validation/Validators/GreaterThanOrEqualValidator.cjs +1 -1
- package/lib/validation/Validators/GreaterThanOrEqualValidator.js.map +1 -0
- package/lib/validation/Validators/GreaterThanValidator.cjs +1 -1
- package/lib/validation/Validators/GreaterThanValidator.js.map +1 -0
- package/lib/validation/Validators/LessThanOrEqualValidator.cjs +1 -1
- package/lib/validation/Validators/LessThanOrEqualValidator.js.map +1 -0
- package/lib/validation/Validators/LessThanValidator.cjs +1 -1
- package/lib/validation/Validators/LessThanValidator.js.map +1 -0
- package/lib/validation/Validators/ListValidator.cjs +1 -1
- package/lib/validation/Validators/ListValidator.js.map +1 -0
- package/lib/validation/Validators/MaxLengthValidator.cjs +1 -1
- package/lib/validation/Validators/MaxLengthValidator.js.map +1 -0
- package/lib/validation/Validators/MaxValidator.cjs +1 -1
- package/lib/validation/Validators/MaxValidator.js.map +1 -0
- package/lib/validation/Validators/MinLengthValidator.cjs +1 -1
- package/lib/validation/Validators/MinLengthValidator.js.map +1 -0
- package/lib/validation/Validators/MinValidator.cjs +1 -1
- package/lib/validation/Validators/MinValidator.js.map +1 -0
- package/lib/validation/Validators/PasswordValidator.cjs +1 -1
- package/lib/validation/Validators/PasswordValidator.js.map +1 -0
- package/lib/validation/Validators/PatternValidator.cjs +1 -1
- package/lib/validation/Validators/PatternValidator.js.map +1 -0
- package/lib/validation/Validators/RequiredValidator.cjs +1 -1
- package/lib/validation/Validators/RequiredValidator.js.map +1 -0
- package/lib/validation/Validators/StepValidator.cjs +1 -1
- package/lib/validation/Validators/StepValidator.js.map +1 -0
- package/lib/validation/Validators/TypeValidator.cjs +1 -1
- package/lib/validation/Validators/TypeValidator.js.map +1 -0
- package/lib/validation/Validators/URLValidator.cjs +1 -1
- package/lib/validation/Validators/URLValidator.js.map +1 -0
- package/lib/validation/Validators/Validator.cjs +1 -1
- package/lib/validation/Validators/Validator.js.map +1 -0
- package/lib/validation/Validators/ValidatorRegistry.cjs +1 -1
- package/lib/validation/Validators/ValidatorRegistry.js.map +1 -0
- package/lib/validation/Validators/constants.cjs +1 -1
- package/lib/validation/Validators/constants.js.map +1 -0
- package/lib/validation/Validators/decorators.cjs +1 -1
- package/lib/validation/Validators/decorators.js.map +1 -0
- package/lib/validation/Validators/index.cjs +1 -1
- package/lib/validation/Validators/index.js.map +1 -0
- package/lib/validation/Validators/utils.cjs +1 -1
- package/lib/validation/Validators/utils.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/types.cjs +1 -1
- package/lib/validation/types.js.map +1 -0
- package/package.json +9 -13
- package/dist/decorator-validation.esm.cjs +0 -4993
package/README.md
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+

|
|
2
|
+
|
|
1
3
|
# Decorator Validation
|
|
2
4
|
|
|
3
5
|
A TypeScript decorator-driven validation and model framework. It lets you:
|
|
@@ -7,7 +9,6 @@ A TypeScript decorator-driven validation and model framework. It lets you:
|
|
|
7
9
|
- Optionally expose validation as MCP tools for automation workflows.
|
|
8
10
|
|
|
9
11
|
|
|
10
|
-
|
|
11
12
|

|
|
12
13
|

|
|
13
14
|

|
|
@@ -31,6 +32,9 @@ A TypeScript decorator-driven validation and model framework. It lets you:
|
|
|
31
32
|
|
|
32
33
|
Documentation available [here](https://decaf-ts.github.io/decorator-validation/)
|
|
33
34
|
|
|
35
|
+
Minimal size: 11.7 KB kb gzipped
|
|
36
|
+
|
|
37
|
+
|
|
34
38
|
# Decorator Validation – Detailed Description
|
|
35
39
|
|
|
36
40
|
Decorator Validation is a TypeScript library that centers on two complementary pillars:
|
|
@@ -547,6 +551,24 @@ const allKeys = Validation.keys();
|
|
|
547
551
|
- Each snippet is valid TypeScript and aligns with the re-exports provided by the package entry.
|
|
548
552
|
|
|
549
553
|
|
|
554
|
+
## Coding Principles
|
|
555
|
+
|
|
556
|
+
- group similar functionality in folders (analog to namespaces but without any namespace declaration)
|
|
557
|
+
- one class per file;
|
|
558
|
+
- one interface per file (unless interface is just used as a type);
|
|
559
|
+
- group types as other interfaces in a types.ts file per folder;
|
|
560
|
+
- group constants or enums in a constants.ts file per folder;
|
|
561
|
+
- group decorators in a decorators.ts file per folder;
|
|
562
|
+
- always import from the specific file, never from a folder or index file (exceptions for dependencies on other packages);
|
|
563
|
+
- prefer the usage of established design patters where applicable:
|
|
564
|
+
- Singleton (can be an anti-pattern. use with care);
|
|
565
|
+
- factory;
|
|
566
|
+
- observer;
|
|
567
|
+
- strategy;
|
|
568
|
+
- builder;
|
|
569
|
+
- etc;
|
|
570
|
+
|
|
571
|
+
|
|
550
572
|
### Related
|
|
551
573
|
|
|
552
574
|
[](https://github.com/decaf-ts/decaf-ts)
|