@resistdesign/voltra 0.0.0-alpha.0 → 1.2.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/.releaserc +3 -0
- package/README.md +4 -51
- package/api/ORM/CriteriaUtils/CriteriaUtils.d.ts +7 -0
- package/api/ORM/CriteriaUtils/CriteriaUtils.js +140 -0
- package/api/ORM/CriteriaUtils/CriterionDriverResolutionTools.d.ts +4 -0
- package/api/ORM/CriteriaUtils/CriterionDriverResolutionTools.js +23 -0
- package/api/ORM/CriteriaUtils/index.d.ts +2 -0
- package/api/ORM/CriteriaUtils/index.js +18 -0
- package/api/ORM/DataContextService.d.ts +68 -0
- package/api/ORM/DataContextService.js +352 -0
- package/api/ORM/SearchCriteriaTypes.d.ts +83 -0
- package/api/ORM/SearchCriteriaTypes.js +47 -0
- package/api/ORM/ServiceTypes/DBServiceTypes.d.ts +30 -0
- package/api/ORM/ServiceTypes/FileServiceTypes.d.ts +25 -0
- package/api/ORM/ServiceTypes/index.d.ts +2 -0
- package/api/ORM/ServiceTypes/index.js +18 -0
- package/api/ORM/TypeStructureUtils.d.ts +17 -0
- package/api/ORM/TypeStructureUtils.js +120 -0
- package/api/ORM/drivers/db/DynamoDBServiceItem.d.ts +19 -0
- package/api/ORM/drivers/db/DynamoDBServiceItem.js +206 -0
- package/api/ORM/drivers/db/S3DBServiceItem.d.ts +17 -0
- package/api/ORM/drivers/db/S3DBServiceItem.js +118 -0
- package/api/ORM/drivers/db/index.d.ts +2 -0
- package/{src/api/ORM/drivers/common → api/ORM/drivers/db}/index.js +2 -2
- package/api/ORM/drivers/file/S3.d.ts +15 -0
- package/api/ORM/drivers/file/S3.js +97 -0
- package/api/ORM/drivers/file/index.d.ts +1 -0
- package/{src/common/TypeInfoORM → api/ORM/drivers/file}/index.js +1 -1
- package/api/ORM/drivers/index.d.ts +2 -0
- package/{src/common/ItemRelationships → api/ORM/drivers}/index.js +2 -1
- package/api/ORM/index.d.ts +6 -0
- package/api/ORM/index.js +32 -0
- package/{src/api → api}/Router/AWS.js +2 -8
- package/{src/api → api}/Router/CORS.d.ts +1 -1
- package/{src/api → api}/Router/CORS.js +10 -10
- package/{src/api → api}/Router/Types.d.ts +1 -1
- package/{src/api → api}/Router/index.js +18 -22
- package/api/index.d.ts +2 -0
- package/{src/api → api}/index.js +8 -19
- package/app/components/BaseForm.d.ts +9 -0
- package/app/components/BaseForm.js +37 -0
- package/app/components/FormGen/Application.d.ts +10 -0
- package/app/components/FormGen/Application.js +58 -0
- package/app/components/FormGen/Display.d.ts +13 -0
- package/app/components/FormGen/Display.js +69 -0
- package/app/components/FormGen/Editor.d.ts +12 -0
- package/app/components/FormGen/Editor.js +46 -0
- package/app/components/FormGen/Form.d.ts +5 -0
- package/app/components/FormGen/Form.js +25 -0
- package/app/components/FormGen/HelperTypes.d.ts +41 -0
- package/app/components/FormGen/HelperTypes.js +27 -0
- package/app/components/FormGen/IdUtils.d.ts +3 -0
- package/app/components/FormGen/IdUtils.js +22 -0
- package/app/components/FormGen/Input.d.ts +13 -0
- package/app/components/FormGen/Input.js +82 -0
- package/app/components/FormGen/Layout.d.ts +20 -0
- package/app/components/FormGen/Layout.js +107 -0
- package/app/components/FormGen/List.d.ts +12 -0
- package/app/components/FormGen/List.js +134 -0
- package/app/components/FormGen/Navigation.d.ts +27 -0
- package/app/components/FormGen/Navigation.js +82 -0
- package/app/components/FormGen/Storage/LocalJSON.d.ts +8 -0
- package/app/components/FormGen/Storage/LocalJSON.js +35 -0
- package/app/components/FormGen/Storage/index.d.ts +1 -0
- package/{src/common/Logging → app/components/FormGen/Storage}/index.js +1 -1
- package/app/components/FormGen/TypeStructureComponent.d.ts +20 -0
- package/app/components/FormGen/TypeStructureComponent.js +223 -0
- package/app/components/FormGen/ValueProcessing/HashMatrix.d.ts +50 -0
- package/app/components/FormGen/ValueProcessing/HashMatrix.js +268 -0
- package/app/components/FormGen/ValueProcessing/index.d.ts +1 -0
- package/{src/common/IdGeneration → app/components/FormGen/ValueProcessing}/index.js +1 -1
- package/app/components/FormGen/index.d.ts +13 -0
- package/app/components/FormGen/index.js +42 -0
- package/app/components/MaterialSymbol.d.ts +8 -0
- package/app/components/MaterialSymbol.js +22 -0
- package/app/components/Tabs.d.ts +9 -0
- package/app/components/Tabs.js +26 -0
- package/app/components/index.d.ts +4 -0
- package/{src/api/ORM → app/components}/index.js +12 -22
- package/app/index.d.ts +2 -0
- package/{src/app → app}/index.js +9 -18
- package/{src/app → app}/utils/ApplicationState.d.ts +1 -1
- package/{src/app → app}/utils/ApplicationState.js +3 -9
- package/{src/app → app}/utils/ApplicationStateLoader.js +13 -4
- package/{src/app → app}/utils/Controller.js +1 -4
- package/{src/app → app}/utils/Debug.d.ts +0 -3
- package/{src/app → app}/utils/Debug.js +1 -4
- package/{src/app → app}/utils/EasyLayout.d.ts +1 -1
- package/{src/app → app}/utils/EasyLayout.js +2 -5
- package/{src/app → app}/utils/Route.d.ts +1 -1
- package/{src/app → app}/utils/Route.js +4 -8
- package/{src/app → app}/utils/Service.js +14 -5
- package/{src/app → app}/utils/index.d.ts +0 -1
- package/{src/app → app}/utils/index.js +0 -1
- package/common/Routing.d.ts +20 -0
- package/{src/common → common}/Routing.js +10 -32
- package/common/TypeParsing/TypeParsing.d.ts +5 -0
- package/common/TypeParsing/TypeParsing.js +283 -0
- package/common/TypeParsing/TypeUtils.d.ts +86 -0
- package/common/TypeParsing/TypeUtils.js +281 -0
- package/common/TypeParsing/index.d.ts +2 -0
- package/{src/common/Testing → common/TypeParsing}/index.js +2 -2
- package/common/index.d.ts +2 -0
- package/common/index.js +28 -0
- package/{src/iac → iac}/SimpleCFT.d.ts +1 -21
- package/iac/SimpleCFT.js +67 -0
- package/{src/iac → iac}/index.js +7 -17
- package/iac/packs/abstract/user-management/UserPoolAliasTargetCustomResourceCode.d.ts +2 -0
- package/iac/packs/abstract/user-management/UserPoolAliasTargetCustomResourceCode.js +86 -0
- package/{src/iac/packs/auth → iac/packs/abstract}/user-management.js +88 -16
- package/{src/iac → iac}/packs/auth.js +1 -1
- package/{src/iac → iac}/packs/build/utils.d.ts +1 -1
- package/{src/iac → iac}/packs/build.d.ts +2 -7
- package/{src/iac → iac}/packs/cloud-function.d.ts +1 -2
- package/{src/iac → iac}/packs/cloud-function.js +1 -1
- package/iac/packs/database.d.ts +10 -0
- package/{src/iac → iac}/packs/database.js +1 -2
- package/iac/packs/dns.d.ts +11 -0
- package/iac/packs/dns.js +60 -0
- package/{src/iac → iac}/packs/gateway.d.ts +1 -2
- package/{src/iac → iac}/packs/gateway.js +8 -20
- package/{src/iac → iac}/types/CloudFormationResourceSpecification.d.ts +1 -1
- package/iac/types/CloudFormationResourceSpecification.js +196438 -0
- package/{src/iac → iac}/types/Renderers.js +1 -1
- package/{src/iac → iac}/types/Utils.js +2 -7
- package/{src/iac → iac}/types/generate.js +15 -5
- package/{src/iac → iac}/utils/index.d.ts +1 -4
- package/{src/iac → iac}/utils/index.js +10 -27
- package/{src/iac → iac}/utils/patch-utils.js +2 -8
- package/{src/index.d.ts → index.d.ts} +5 -5
- package/{src/index.js → index.js} +12 -22
- package/package.json +11 -69
- package/src/api/DataAccessControl.d.ts +0 -85
- package/src/api/DataAccessControl.js +0 -159
- package/src/api/ORM/DACUtils.d.ts +0 -60
- package/src/api/ORM/DACUtils.js +0 -197
- package/src/api/ORM/ListItemUtils.d.ts +0 -7
- package/src/api/ORM/ListItemUtils.js +0 -22
- package/src/api/ORM/ORMRouteMap.d.ts +0 -19
- package/src/api/ORM/ORMRouteMap.js +0 -82
- package/src/api/ORM/TypeInfoORMService.d.ts +0 -103
- package/src/api/ORM/TypeInfoORMService.js +0 -581
- package/src/api/ORM/drivers/DynamoDBDataItemDBDriver/ConfigTypes.d.ts +0 -63
- package/src/api/ORM/drivers/DynamoDBDataItemDBDriver.d.ts +0 -36
- package/src/api/ORM/drivers/DynamoDBDataItemDBDriver.js +0 -282
- package/src/api/ORM/drivers/S3FileItemDBDriver/ConfigTypes.d.ts +0 -90
- package/src/api/ORM/drivers/S3FileItemDBDriver/S3FileDriver.d.ts +0 -45
- package/src/api/ORM/drivers/S3FileItemDBDriver/S3FileDriver.js +0 -127
- package/src/api/ORM/drivers/S3FileItemDBDriver.d.ts +0 -44
- package/src/api/ORM/drivers/S3FileItemDBDriver.js +0 -182
- package/src/api/ORM/drivers/common/SupportedTypeInfoORMDBDrivers.d.ts +0 -12
- package/src/api/ORM/drivers/common/SupportedTypeInfoORMDBDrivers.js +0 -20
- package/src/api/ORM/drivers/common/Types.d.ts +0 -77
- package/src/api/ORM/drivers/common/Types.js +0 -14
- package/src/api/ORM/drivers/common/index.d.ts +0 -2
- package/src/api/ORM/drivers/index.d.ts +0 -3
- package/src/api/ORM/drivers/index.js +0 -19
- package/src/api/ORM/index.d.ts +0 -4
- package/src/api/index.d.ts +0 -3
- package/src/app/index.d.ts +0 -1
- package/src/app/utils/TypeInfoORMAPIUtils.d.ts +0 -20
- package/src/app/utils/TypeInfoORMAPIUtils.js +0 -62
- package/src/app/utils/TypeInfoORMClient.d.ts +0 -24
- package/src/app/utils/TypeInfoORMClient.js +0 -69
- package/src/common/CommandLine/collectRequiredEnvironmentVariables.d.ts +0 -1
- package/src/common/CommandLine/collectRequiredEnvironmentVariables.js +0 -16
- package/src/common/HelperTypes.d.ts +0 -3
- package/src/common/HelperTypes.js +0 -2
- package/src/common/IdGeneration/getSimpleId.d.ts +0 -4
- package/src/common/IdGeneration/getSimpleId.js +0 -16
- package/src/common/IdGeneration/index.d.ts +0 -1
- package/src/common/ItemRelationshipInfoTypes.d.ts +0 -46
- package/src/common/ItemRelationshipInfoTypes.js +0 -20
- package/src/common/ItemRelationships/ItemRelationshipValidation.d.ts +0 -10
- package/src/common/ItemRelationships/ItemRelationshipValidation.js +0 -43
- package/src/common/ItemRelationships/index.d.ts +0 -1
- package/src/common/Logging/Utils.d.ts +0 -10
- package/src/common/Logging/Utils.js +0 -33
- package/src/common/Logging/index.d.ts +0 -1
- package/src/common/Routing.d.ts +0 -25
- package/src/common/SearchTypes.d.ts +0 -98
- package/src/common/SearchTypes.js +0 -39
- package/src/common/SearchUtils.d.ts +0 -22
- package/src/common/SearchUtils.js +0 -134
- package/src/common/SearchValidation.d.ts +0 -17
- package/src/common/SearchValidation.js +0 -90
- package/src/common/Storyboarding/Types.d.ts +0 -25
- package/src/common/StringTransformers.d.ts +0 -17
- package/src/common/StringTransformers.js +0 -36
- package/src/common/Testing/CLI.d.ts +0 -2
- package/src/common/Testing/CLI.js +0 -56
- package/src/common/Testing/Types.d.ts +0 -117
- package/src/common/Testing/Types.js +0 -19
- package/src/common/Testing/Utils.d.ts +0 -48
- package/src/common/Testing/Utils.js +0 -334
- package/src/common/Testing/index.d.ts +0 -2
- package/src/common/TypeInfoDataItemUtils.d.ts +0 -10
- package/src/common/TypeInfoDataItemUtils.js +0 -55
- package/src/common/TypeInfoORM/Types.d.ts +0 -76
- package/src/common/TypeInfoORM/Types.js +0 -55
- package/src/common/TypeInfoORM/index.d.ts +0 -1
- package/src/common/TypeParsing/Constants.d.ts +0 -1
- package/src/common/TypeParsing/Constants.js +0 -4
- package/src/common/TypeParsing/ParsingUtils/Constants.d.ts +0 -5
- package/src/common/TypeParsing/ParsingUtils/Constants.js +0 -8
- package/src/common/TypeParsing/ParsingUtils/checkType.d.ts +0 -8
- package/src/common/TypeParsing/ParsingUtils/checkType.js +0 -46
- package/src/common/TypeParsing/ParsingUtils/checkUnionType.d.ts +0 -6
- package/src/common/TypeParsing/ParsingUtils/checkUnionType.js +0 -15
- package/src/common/TypeParsing/ParsingUtils/extractCommentTags.d.ts +0 -2
- package/src/common/TypeParsing/ParsingUtils/extractCommentTags.js +0 -105
- package/src/common/TypeParsing/ParsingUtils/extractLiteralValues.d.ts +0 -6
- package/src/common/TypeParsing/ParsingUtils/extractLiteralValues.js +0 -42
- package/src/common/TypeParsing/ParsingUtils/extractTypeDetails.d.ts +0 -8
- package/src/common/TypeParsing/ParsingUtils/extractTypeDetails.js +0 -14
- package/src/common/TypeParsing/ParsingUtils/getPrimaryFieldForTypeInfo.d.ts +0 -5
- package/src/common/TypeParsing/ParsingUtils/getPrimaryFieldForTypeInfo.js +0 -27
- package/src/common/TypeParsing/ParsingUtils/getTypeInfo.d.ts +0 -3
- package/src/common/TypeParsing/ParsingUtils/getTypeInfo.js +0 -27
- package/src/common/TypeParsing/ParsingUtils/getTypeInfoField.d.ts +0 -3
- package/src/common/TypeParsing/ParsingUtils/getTypeInfoField.js +0 -44
- package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromAliasType.d.ts +0 -4
- package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromAliasType.js +0 -28
- package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromFieldFilter.d.ts +0 -4
- package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromFieldFilter.js +0 -105
- package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromTypeAlias.d.ts +0 -4
- package/src/common/TypeParsing/ParsingUtils/getTypeInfoFromTypeAlias.js +0 -20
- package/src/common/TypeParsing/ParsingUtils/getTypeKeyword.d.ts +0 -3
- package/src/common/TypeParsing/ParsingUtils/getTypeKeyword.js +0 -17
- package/src/common/TypeParsing/ParsingUtils/getUnionOrIntersectionTypeInfo.d.ts +0 -4
- package/src/common/TypeParsing/ParsingUtils/getUnionOrIntersectionTypeInfo.js +0 -49
- package/src/common/TypeParsing/ParsingUtils/getUnionOrLiteralStringValues.d.ts +0 -2
- package/src/common/TypeParsing/ParsingUtils/getUnionOrLiteralStringValues.js +0 -24
- package/src/common/TypeParsing/TypeInfo.d.ts +0 -142
- package/src/common/TypeParsing/TypeInfo.js +0 -13
- package/src/common/TypeParsing/TypeMapping.d.ts +0 -9
- package/src/common/TypeParsing/TypeMapping.js +0 -32
- package/src/common/TypeParsing/TypeParsing.d.ts +0 -5
- package/src/common/TypeParsing/TypeParsing.js +0 -39
- package/src/common/TypeParsing/Utils.d.ts +0 -21
- package/src/common/TypeParsing/Utils.js +0 -94
- package/src/common/TypeParsing/Validation.d.ts +0 -92
- package/src/common/TypeParsing/Validation.js +0 -340
- package/src/common/TypeParsing/index.d.ts +0 -5
- package/src/common/TypeParsing/index.js +0 -44
- package/src/common/index.d.ts +0 -11
- package/src/common/index.js +0 -47
- package/src/iac/SimpleCFT.js +0 -82
- package/src/iac/packs/database.d.ts +0 -29
- package/src/iac/packs/dns.d.ts +0 -13
- package/src/iac/packs/dns.js +0 -26
- package/src/iac/types/IaCTypes.d.ts +0 -234994
- package/src/iac/types/IaCTypes.js +0 -14
- package/src/iac/types/Types.js +0 -2
- /package/{src/api/ORM/drivers/DynamoDBDataItemDBDriver/ConfigTypes.js → api/ORM/ServiceTypes/DBServiceTypes.js} +0 -0
- /package/{src/api/ORM/drivers/S3FileItemDBDriver/ConfigTypes.js → api/ORM/ServiceTypes/FileServiceTypes.js} +0 -0
- /package/{src/api → api}/Router/AWS.d.ts +0 -0
- /package/{src/api → api}/Router/Auth.d.ts +0 -0
- /package/{src/api → api}/Router/Auth.js +0 -0
- /package/{src/api → api}/Router/Types.js +0 -0
- /package/{src/api → api}/Router/index.d.ts +0 -0
- /package/{src/app → app}/utils/ApplicationStateLoader.d.ts +0 -0
- /package/{src/app → app}/utils/Controller.d.ts +0 -0
- /package/{src/app → app}/utils/Service.d.ts +0 -0
- /package/{src/iac → iac}/index.d.ts +0 -0
- /package/{src/iac/packs/auth → iac/packs/abstract}/user-management.d.ts +0 -0
- /package/{src/iac → iac}/packs/auth.d.ts +0 -0
- /package/{src/iac → iac}/packs/build/utils.js +0 -0
- /package/{src/iac → iac}/packs/build.js +0 -0
- /package/{src/iac → iac}/packs/cdn.d.ts +0 -0
- /package/{src/iac → iac}/packs/cdn.js +0 -0
- /package/{src/iac → iac}/packs/file-storage.d.ts +0 -0
- /package/{src/iac → iac}/packs/file-storage.js +0 -0
- /package/{src/iac → iac}/packs/index.d.ts +0 -0
- /package/{src/iac → iac}/packs/index.js +0 -0
- /package/{src/iac → iac}/packs/repo.d.ts +0 -0
- /package/{src/iac → iac}/packs/repo.js +0 -0
- /package/{src/iac → iac}/packs/ssl-certificate.d.ts +0 -0
- /package/{src/iac → iac}/packs/ssl-certificate.js +0 -0
- /package/{src/iac → iac}/types/Constants.d.ts +0 -0
- /package/{src/iac → iac}/types/Constants.js +0 -0
- /package/{src/iac → iac}/types/Renderers.d.ts +0 -0
- /package/{src/iac → iac}/types/Types.d.ts +0 -0
- /package/{src/common/Storyboarding → iac/types}/Types.js +0 -0
- /package/{src/iac → iac}/types/Utils.d.ts +0 -0
- /package/{src/iac → iac}/types/generate.d.ts +0 -0
- /package/{src/iac → iac}/utils/patch-utils.d.ts +0 -0
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import { TypeInfo, TypeInfoField, TypeInfoMap, TypeKeyword, TypeOperation } from "./TypeInfo";
|
|
2
|
-
export declare enum RelationshipValidationType {
|
|
3
|
-
INCLUDE = "INCLUDE",
|
|
4
|
-
EXCLUDE = "EXCLUDE",
|
|
5
|
-
STRICT_EXCLUDE = "STRICT_EXCLUDE"
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* A custom type info field validator.
|
|
9
|
-
* */
|
|
10
|
-
export type CustomTypeInfoFieldValidator = (value: any) => boolean;
|
|
11
|
-
/**
|
|
12
|
-
* A map of custom type info field validators.
|
|
13
|
-
* */
|
|
14
|
-
export type CustomTypeInfoFieldValidatorMap = Record<string, CustomTypeInfoFieldValidator>;
|
|
15
|
-
/**
|
|
16
|
-
* A map of errors.
|
|
17
|
-
* */
|
|
18
|
-
export type ErrorMap = {
|
|
19
|
-
[key: string]: string[];
|
|
20
|
-
};
|
|
21
|
-
/**
|
|
22
|
-
* The validation results for type info fields.
|
|
23
|
-
*/
|
|
24
|
-
export type TypeInfoValidationResults = {
|
|
25
|
-
typeName: string | null;
|
|
26
|
-
valid: boolean;
|
|
27
|
-
error: string;
|
|
28
|
-
errorMap: ErrorMap;
|
|
29
|
-
};
|
|
30
|
-
export declare const INVALID_CUSTOM_TYPE = "INVALID_CUSTOM_TYPE";
|
|
31
|
-
export declare const PRIMITIVE_ERROR_MESSAGE_CONSTANTS: Record<TypeKeyword, string>;
|
|
32
|
-
export declare const ERROR_MESSAGE_CONSTANTS: {
|
|
33
|
-
MISSING: string;
|
|
34
|
-
INVALID_OPTION: string;
|
|
35
|
-
INVALID_FIELD: string;
|
|
36
|
-
RELATIONSHIP_VALUES_ARE_STRICTLY_EXCLUDED: string;
|
|
37
|
-
INVALID_TYPE: string;
|
|
38
|
-
NO_UNION_TYPE_MATCHED: string;
|
|
39
|
-
TYPE_DOES_NOT_EXIST: string;
|
|
40
|
-
INVALID_PATTERN: string;
|
|
41
|
-
VALUE_DOES_NOT_MATCH_PATTERN: string;
|
|
42
|
-
};
|
|
43
|
-
export declare const DENIED_TYPE_OPERATIONS: Record<TypeOperation, string>;
|
|
44
|
-
/**
|
|
45
|
-
* Validates a value against a pattern.
|
|
46
|
-
*
|
|
47
|
-
* `value` must be a string or not supplied.
|
|
48
|
-
* `pattern` must be a string or not supplied.
|
|
49
|
-
*
|
|
50
|
-
* If either are not supplied, the result is valid.
|
|
51
|
-
* */
|
|
52
|
-
export declare const validateValueMatchesPattern: (typeName: string, value?: any, pattern?: string) => TypeInfoValidationResults;
|
|
53
|
-
/**
|
|
54
|
-
* Gets the validity value.
|
|
55
|
-
*/
|
|
56
|
-
export declare const getValidityValue: (existing: boolean, pending: boolean) => boolean;
|
|
57
|
-
/**
|
|
58
|
-
* The validators for primitive values.
|
|
59
|
-
*/
|
|
60
|
-
export declare const TYPE_KEYWORD_VALIDATORS: Record<TypeKeyword, (value: any) => boolean>;
|
|
61
|
-
/**
|
|
62
|
-
* Checks if a value has a value.
|
|
63
|
-
*/
|
|
64
|
-
export declare const hasValue: (value: any) => boolean;
|
|
65
|
-
/**
|
|
66
|
-
* Validates a primitive value.
|
|
67
|
-
*/
|
|
68
|
-
export declare const validateKeywordType: (value: any, type: string) => boolean;
|
|
69
|
-
/**
|
|
70
|
-
* Validates a custom type.
|
|
71
|
-
*/
|
|
72
|
-
export declare const validateCustomType: (value: any, customType?: string, customValidators?: CustomTypeInfoFieldValidatorMap) => boolean;
|
|
73
|
-
/**
|
|
74
|
-
* Validates a type info field value.
|
|
75
|
-
*/
|
|
76
|
-
export declare const validateTypeInfoFieldValue: (value: any, typeInfoField: TypeInfoField, typeInfoMap: TypeInfoMap, ignoreArray?: boolean, strict?: boolean, customValidators?: CustomTypeInfoFieldValidatorMap, typeOperation?: TypeOperation, relationshipValidationType?: RelationshipValidationType, itemIsPartial?: boolean) => TypeInfoValidationResults;
|
|
77
|
-
/**
|
|
78
|
-
* Validates an array of type info field values.
|
|
79
|
-
*/
|
|
80
|
-
export declare const validateArrayOfTypeInfoFieldValues: (values: any[] | undefined, typeInfoField: TypeInfoField, typeInfoMap: TypeInfoMap, strict?: boolean, customValidators?: CustomTypeInfoFieldValidatorMap, typeOperation?: TypeOperation, relationshipValidationType?: RelationshipValidationType, itemIsPartial?: boolean) => TypeInfoValidationResults;
|
|
81
|
-
/**
|
|
82
|
-
* Validates a type info field operation.
|
|
83
|
-
* */
|
|
84
|
-
export declare const validateTypeInfoFieldOperationAllowed: (fieldName: string, fieldOperation?: TypeOperation, typeInfoField?: TypeInfoField) => TypeInfoValidationResults;
|
|
85
|
-
/**
|
|
86
|
-
* Validates a type info operation.
|
|
87
|
-
* */
|
|
88
|
-
export declare const validateTypeOperationAllowed: (typeName: string, valueFields: string[], typeOperation: TypeOperation, typeInfo: TypeInfo) => TypeInfoValidationResults;
|
|
89
|
-
/**
|
|
90
|
-
* Validates a type info value.
|
|
91
|
-
*/
|
|
92
|
-
export declare const validateTypeInfoValue: (value: any, typeInfoFullName: string, typeInfoMap: TypeInfoMap, strict?: boolean, customValidators?: CustomTypeInfoFieldValidatorMap, typeOperation?: TypeOperation, relationshipValidationType?: RelationshipValidationType, itemIsPartial?: boolean) => TypeInfoValidationResults;
|
|
@@ -1,340 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.validateTypeInfoValue = exports.validateTypeOperationAllowed = exports.validateTypeInfoFieldOperationAllowed = exports.validateArrayOfTypeInfoFieldValues = exports.validateTypeInfoFieldValue = exports.validateCustomType = exports.validateKeywordType = exports.hasValue = exports.TYPE_KEYWORD_VALIDATORS = exports.getValidityValue = exports.validateValueMatchesPattern = exports.DENIED_TYPE_OPERATIONS = exports.ERROR_MESSAGE_CONSTANTS = exports.PRIMITIVE_ERROR_MESSAGE_CONSTANTS = exports.INVALID_CUSTOM_TYPE = exports.RelationshipValidationType = void 0;
|
|
4
|
-
const TypeInfo_1 = require("./TypeInfo");
|
|
5
|
-
const Routing_1 = require("../Routing");
|
|
6
|
-
var RelationshipValidationType;
|
|
7
|
-
(function (RelationshipValidationType) {
|
|
8
|
-
RelationshipValidationType["INCLUDE"] = "INCLUDE";
|
|
9
|
-
RelationshipValidationType["EXCLUDE"] = "EXCLUDE";
|
|
10
|
-
RelationshipValidationType["STRICT_EXCLUDE"] = "STRICT_EXCLUDE";
|
|
11
|
-
})(RelationshipValidationType || (exports.RelationshipValidationType = RelationshipValidationType = {}));
|
|
12
|
-
exports.INVALID_CUSTOM_TYPE = "INVALID_CUSTOM_TYPE";
|
|
13
|
-
exports.PRIMITIVE_ERROR_MESSAGE_CONSTANTS = {
|
|
14
|
-
string: "NOT_A_STRING",
|
|
15
|
-
number: "NOT_A_NUMBER",
|
|
16
|
-
boolean: "NOT_A_BOOLEAN",
|
|
17
|
-
};
|
|
18
|
-
exports.ERROR_MESSAGE_CONSTANTS = {
|
|
19
|
-
MISSING: "MISSING",
|
|
20
|
-
INVALID_OPTION: "INVALID_OPTION",
|
|
21
|
-
INVALID_FIELD: "INVALID_FIELD",
|
|
22
|
-
RELATIONSHIP_VALUES_ARE_STRICTLY_EXCLUDED: "RELATIONSHIP_VALUES_ARE_STRICTLY_EXCLUDED",
|
|
23
|
-
INVALID_TYPE: "INVALID_TYPE",
|
|
24
|
-
NO_UNION_TYPE_MATCHED: "NO_UNION_TYPE_MATCHED",
|
|
25
|
-
TYPE_DOES_NOT_EXIST: "TYPE_DOES_NOT_EXIST",
|
|
26
|
-
INVALID_PATTERN: "INVALID_PATTERN",
|
|
27
|
-
VALUE_DOES_NOT_MATCH_PATTERN: "VALUE_DOES_NOT_MATCH_PATTERN",
|
|
28
|
-
};
|
|
29
|
-
exports.DENIED_TYPE_OPERATIONS = {
|
|
30
|
-
CREATE: "DENIED_TYPE_OPERATION_CREATE",
|
|
31
|
-
READ: "DENIED_TYPE_OPERATION_READ",
|
|
32
|
-
UPDATE: "DENIED_TYPE_OPERATION_UPDATE",
|
|
33
|
-
DELETE: "DENIED_TYPE_OPERATION_DELETE",
|
|
34
|
-
};
|
|
35
|
-
/**
|
|
36
|
-
* Validates a value against a pattern.
|
|
37
|
-
*
|
|
38
|
-
* `value` must be a string or not supplied.
|
|
39
|
-
* `pattern` must be a string or not supplied.
|
|
40
|
-
*
|
|
41
|
-
* If either are not supplied, the result is valid.
|
|
42
|
-
* */
|
|
43
|
-
const validateValueMatchesPattern = (typeName, value, pattern) => {
|
|
44
|
-
const results = {
|
|
45
|
-
typeName,
|
|
46
|
-
valid: true,
|
|
47
|
-
error: "",
|
|
48
|
-
errorMap: {},
|
|
49
|
-
};
|
|
50
|
-
const valueSupplied = typeof value !== "undefined";
|
|
51
|
-
const patternSupplied = typeof pattern === "string" && pattern.trim() !== "";
|
|
52
|
-
if (!valueSupplied || !patternSupplied) {
|
|
53
|
-
try {
|
|
54
|
-
const regex = new RegExp(pattern);
|
|
55
|
-
const testResult = typeof value === "string" && regex.test(value);
|
|
56
|
-
if (!testResult) {
|
|
57
|
-
results.valid = false;
|
|
58
|
-
results.error = exports.ERROR_MESSAGE_CONSTANTS.VALUE_DOES_NOT_MATCH_PATTERN;
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
catch (e) {
|
|
62
|
-
results.valid = false;
|
|
63
|
-
results.error = exports.ERROR_MESSAGE_CONSTANTS.INVALID_PATTERN;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
return results;
|
|
67
|
-
};
|
|
68
|
-
exports.validateValueMatchesPattern = validateValueMatchesPattern;
|
|
69
|
-
/**
|
|
70
|
-
* Gets the validity value.
|
|
71
|
-
*/
|
|
72
|
-
const getValidityValue = (existing, pending) => (!existing ? false : pending);
|
|
73
|
-
exports.getValidityValue = getValidityValue;
|
|
74
|
-
/**
|
|
75
|
-
* The validators for primitive values.
|
|
76
|
-
*/
|
|
77
|
-
exports.TYPE_KEYWORD_VALIDATORS = {
|
|
78
|
-
string: (value) => typeof value === "string",
|
|
79
|
-
number: (value) => typeof value === "number",
|
|
80
|
-
boolean: (value) => typeof value === "boolean",
|
|
81
|
-
};
|
|
82
|
-
/**
|
|
83
|
-
* Checks if a value has a value.
|
|
84
|
-
*/
|
|
85
|
-
const hasValue = (value) => value ?? false;
|
|
86
|
-
exports.hasValue = hasValue;
|
|
87
|
-
/**
|
|
88
|
-
* Validates a primitive value.
|
|
89
|
-
*/
|
|
90
|
-
const validateKeywordType = (value, type) => {
|
|
91
|
-
const validator = exports.TYPE_KEYWORD_VALIDATORS[type];
|
|
92
|
-
let valid = true;
|
|
93
|
-
if (validator) {
|
|
94
|
-
valid = validator(value);
|
|
95
|
-
}
|
|
96
|
-
return valid;
|
|
97
|
-
};
|
|
98
|
-
exports.validateKeywordType = validateKeywordType;
|
|
99
|
-
/**
|
|
100
|
-
* Validates a custom type.
|
|
101
|
-
*/
|
|
102
|
-
const validateCustomType = (value, customType, customValidators) => {
|
|
103
|
-
let valid = true;
|
|
104
|
-
if (customValidators && customType) {
|
|
105
|
-
const validator = customValidators[customType];
|
|
106
|
-
if (validator) {
|
|
107
|
-
try {
|
|
108
|
-
valid = validator(value);
|
|
109
|
-
}
|
|
110
|
-
catch (e) {
|
|
111
|
-
valid = false;
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
return valid;
|
|
116
|
-
};
|
|
117
|
-
exports.validateCustomType = validateCustomType;
|
|
118
|
-
/**
|
|
119
|
-
* Validates a type info field value.
|
|
120
|
-
*/
|
|
121
|
-
const validateTypeInfoFieldValue = (value, typeInfoField, typeInfoMap, ignoreArray = false, strict = false, customValidators, typeOperation, relationshipValidationType = RelationshipValidationType.STRICT_EXCLUDE, itemIsPartial) => {
|
|
122
|
-
const { type, typeReference, array, optional, possibleValues, tags: { customType, constraints: { pattern = undefined } = {} } = {}, } = typeInfoField;
|
|
123
|
-
const results = {
|
|
124
|
-
typeName: typeReference ?? type,
|
|
125
|
-
valid: true,
|
|
126
|
-
error: "",
|
|
127
|
-
errorMap: {},
|
|
128
|
-
};
|
|
129
|
-
const requiredValueAllowed = !typeReference ||
|
|
130
|
-
relationshipValidationType === RelationshipValidationType.INCLUDE;
|
|
131
|
-
if (requiredValueAllowed && !itemIsPartial && !optional && !(0, exports.hasValue)(value)) {
|
|
132
|
-
results.valid = false;
|
|
133
|
-
results.error = exports.ERROR_MESSAGE_CONSTANTS.MISSING;
|
|
134
|
-
}
|
|
135
|
-
else if (array && !ignoreArray) {
|
|
136
|
-
const { valid: validArray, error: arrayError, errorMap: arrayErrorMap, } = (0, exports.validateArrayOfTypeInfoFieldValues)(value, typeInfoField, typeInfoMap, strict, customValidators, typeOperation, relationshipValidationType, itemIsPartial);
|
|
137
|
-
results.valid = (0, exports.getValidityValue)(results.valid, validArray);
|
|
138
|
-
results.error = arrayError;
|
|
139
|
-
results.errorMap = arrayErrorMap;
|
|
140
|
-
}
|
|
141
|
-
else {
|
|
142
|
-
if (typeReference) {
|
|
143
|
-
if (relationshipValidationType === RelationshipValidationType.INCLUDE) {
|
|
144
|
-
const { valid: validTypeInfo, error: typeInfoError, errorMap: typeInfoErrorMap, } = (0, exports.validateTypeInfoValue)(value, typeReference, typeInfoMap, strict, customValidators, typeOperation, relationshipValidationType, itemIsPartial);
|
|
145
|
-
results.valid = (0, exports.getValidityValue)(results.valid, validTypeInfo);
|
|
146
|
-
results.error = typeInfoError;
|
|
147
|
-
results.errorMap = typeInfoErrorMap;
|
|
148
|
-
}
|
|
149
|
-
else if (relationshipValidationType === RelationshipValidationType.STRICT_EXCLUDE) {
|
|
150
|
-
const valueSupplied = typeof value !== "undefined";
|
|
151
|
-
if (valueSupplied) {
|
|
152
|
-
results.valid = false;
|
|
153
|
-
results.error =
|
|
154
|
-
exports.ERROR_MESSAGE_CONSTANTS.RELATIONSHIP_VALUES_ARE_STRICTLY_EXCLUDED;
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
-
else if (relationshipValidationType === RelationshipValidationType.EXCLUDE) {
|
|
158
|
-
// NOTE: This is just here to explicitly demonstrate the intended outcome.
|
|
159
|
-
results.valid = (0, exports.getValidityValue)(results.valid, true);
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
else if (possibleValues && !possibleValues.includes(value)) {
|
|
163
|
-
results.valid = false;
|
|
164
|
-
results.error = exports.ERROR_MESSAGE_CONSTANTS.INVALID_OPTION;
|
|
165
|
-
}
|
|
166
|
-
else {
|
|
167
|
-
const pendingValid = (0, exports.validateKeywordType)(value, type);
|
|
168
|
-
const customValid = (0, exports.validateCustomType)(value, customType, customValidators);
|
|
169
|
-
results.valid = (0, exports.getValidityValue)(results.valid, pendingValid);
|
|
170
|
-
results.valid = (0, exports.getValidityValue)(results.valid, customValid);
|
|
171
|
-
if (type === "string" && typeof pattern === "string") {
|
|
172
|
-
const { valid: patternValid, error: patternError } = (0, exports.validateValueMatchesPattern)(value, pattern);
|
|
173
|
-
results.valid = (0, exports.getValidityValue)(results.valid, patternValid);
|
|
174
|
-
results.error = patternError;
|
|
175
|
-
}
|
|
176
|
-
if (!customValid) {
|
|
177
|
-
results.error = exports.INVALID_CUSTOM_TYPE;
|
|
178
|
-
}
|
|
179
|
-
else if (!results.valid) {
|
|
180
|
-
results.error = results.error
|
|
181
|
-
? results.error
|
|
182
|
-
: exports.PRIMITIVE_ERROR_MESSAGE_CONSTANTS[type];
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
return results;
|
|
187
|
-
};
|
|
188
|
-
exports.validateTypeInfoFieldValue = validateTypeInfoFieldValue;
|
|
189
|
-
/**
|
|
190
|
-
* Validates an array of type info field values.
|
|
191
|
-
*/
|
|
192
|
-
const validateArrayOfTypeInfoFieldValues = (values = [], typeInfoField, typeInfoMap, strict = false, customValidators, typeOperation, relationshipValidationType, itemIsPartial) => {
|
|
193
|
-
const { type, typeReference } = typeInfoField;
|
|
194
|
-
const results = {
|
|
195
|
-
typeName: typeReference ?? type,
|
|
196
|
-
valid: true,
|
|
197
|
-
error: "",
|
|
198
|
-
errorMap: {},
|
|
199
|
-
};
|
|
200
|
-
for (let i = 0; i < values.length; i++) {
|
|
201
|
-
const v = values[i];
|
|
202
|
-
const { valid: indexValid, error: indexError = "", errorMap: indexErrorMap, } = (0, exports.validateTypeInfoFieldValue)(v, typeInfoField, typeInfoMap, true, strict, customValidators, typeOperation, relationshipValidationType, itemIsPartial);
|
|
203
|
-
results.valid = (0, exports.getValidityValue)(results.valid, indexValid);
|
|
204
|
-
results.errorMap[(0, Routing_1.getPathString)([i])] = [indexError];
|
|
205
|
-
for (const er in indexErrorMap) {
|
|
206
|
-
results.errorMap[(0, Routing_1.getPathString)([i, er])] = indexErrorMap[er];
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
return results;
|
|
210
|
-
};
|
|
211
|
-
exports.validateArrayOfTypeInfoFieldValues = validateArrayOfTypeInfoFieldValues;
|
|
212
|
-
/**
|
|
213
|
-
* Validates a type info field operation.
|
|
214
|
-
* */
|
|
215
|
-
const validateTypeInfoFieldOperationAllowed = (fieldName, fieldOperation, typeInfoField) => {
|
|
216
|
-
const results = {
|
|
217
|
-
typeName: null,
|
|
218
|
-
valid: true,
|
|
219
|
-
error: "",
|
|
220
|
-
errorMap: {},
|
|
221
|
-
};
|
|
222
|
-
if (fieldOperation && typeInfoField) {
|
|
223
|
-
const { type, typeReference, tags = {}, } = typeInfoField || {};
|
|
224
|
-
const { deniedOperations: { [fieldOperation]: denied = false } = {} } = tags;
|
|
225
|
-
results.typeName = typeReference ?? type;
|
|
226
|
-
results.valid = !denied;
|
|
227
|
-
if (!results.valid) {
|
|
228
|
-
results.error = exports.DENIED_TYPE_OPERATIONS[fieldOperation];
|
|
229
|
-
results.errorMap[fieldName] = [results.error];
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
return results;
|
|
233
|
-
};
|
|
234
|
-
exports.validateTypeInfoFieldOperationAllowed = validateTypeInfoFieldOperationAllowed;
|
|
235
|
-
/**
|
|
236
|
-
* Validates a type info operation.
|
|
237
|
-
* */
|
|
238
|
-
const validateTypeOperationAllowed = (typeName, valueFields, typeOperation, typeInfo) => {
|
|
239
|
-
const results = {
|
|
240
|
-
typeName,
|
|
241
|
-
valid: true,
|
|
242
|
-
error: "",
|
|
243
|
-
errorMap: {},
|
|
244
|
-
};
|
|
245
|
-
const { fields = {}, tags = {} } = typeInfo;
|
|
246
|
-
const { deniedOperations: { [typeOperation]: denied = false } = {} } = tags;
|
|
247
|
-
if (denied) {
|
|
248
|
-
results.valid = false;
|
|
249
|
-
results.error = exports.DENIED_TYPE_OPERATIONS[typeOperation];
|
|
250
|
-
}
|
|
251
|
-
else {
|
|
252
|
-
for (const vF of valueFields) {
|
|
253
|
-
const vFieldInfo = fields[vF];
|
|
254
|
-
const { valid: vFValid, error: vFError } = (0, exports.validateTypeInfoFieldOperationAllowed)(vF, typeOperation, vFieldInfo);
|
|
255
|
-
results.valid = (0, exports.getValidityValue)(results.valid, vFValid);
|
|
256
|
-
if (!vFValid) {
|
|
257
|
-
results.errorMap[vF] = [vFError];
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
return results;
|
|
262
|
-
};
|
|
263
|
-
exports.validateTypeOperationAllowed = validateTypeOperationAllowed;
|
|
264
|
-
/**
|
|
265
|
-
* Validates a type info value.
|
|
266
|
-
*/
|
|
267
|
-
const validateTypeInfoValue = (value, typeInfoFullName, typeInfoMap, strict = false, customValidators, typeOperation, relationshipValidationType, itemIsPartial) => {
|
|
268
|
-
const typeInfo = typeInfoMap[typeInfoFullName];
|
|
269
|
-
const results = {
|
|
270
|
-
typeName: typeInfoFullName,
|
|
271
|
-
valid: !!typeInfo,
|
|
272
|
-
error: !!typeInfo ? "" : exports.ERROR_MESSAGE_CONSTANTS.TYPE_DOES_NOT_EXIST,
|
|
273
|
-
errorMap: {},
|
|
274
|
-
};
|
|
275
|
-
if (typeInfo) {
|
|
276
|
-
const { primaryField, fields, unionFieldSets } = typeInfo;
|
|
277
|
-
if (typeOperation) {
|
|
278
|
-
const valueFields = typeof value === "object" ? Object.keys(value ?? {}) : [];
|
|
279
|
-
const { valid: operationValid, error: operationError, errorMap: operationErrorMap, } = (0, exports.validateTypeOperationAllowed)(typeInfoFullName, valueFields, typeOperation, typeInfo);
|
|
280
|
-
results.valid = (0, exports.getValidityValue)(results.valid, operationValid);
|
|
281
|
-
results.error = operationError;
|
|
282
|
-
for (const oE in operationErrorMap) {
|
|
283
|
-
const existingError = results.errorMap[oE] ?? [];
|
|
284
|
-
results.errorMap[oE] = existingError
|
|
285
|
-
? [...existingError, ...operationErrorMap[oE]]
|
|
286
|
-
: operationErrorMap[oE];
|
|
287
|
-
}
|
|
288
|
-
if (!operationValid && operationError) {
|
|
289
|
-
results.error = operationError;
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
if (unionFieldSets) {
|
|
293
|
-
const valueFields = Object.keys(value || {});
|
|
294
|
-
let valid = false;
|
|
295
|
-
for (const uFS of unionFieldSets) {
|
|
296
|
-
// IMPORTANT: One of the union field sets MUST contain all of the value fields.
|
|
297
|
-
valid = valueFields.every((vF) => uFS.includes(vF));
|
|
298
|
-
if (valid) {
|
|
299
|
-
break;
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
if (!valid) {
|
|
303
|
-
results.valid = false;
|
|
304
|
-
results.error = exports.ERROR_MESSAGE_CONSTANTS.NO_UNION_TYPE_MATCHED;
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
else if (strict) {
|
|
308
|
-
const knownFields = Object.keys(fields || {});
|
|
309
|
-
const valueFields = Object.keys(value || {});
|
|
310
|
-
for (const vF of valueFields) {
|
|
311
|
-
if (!knownFields.includes(vF)) {
|
|
312
|
-
results.valid = false;
|
|
313
|
-
results.errorMap[vF] = [exports.ERROR_MESSAGE_CONSTANTS.INVALID_FIELD];
|
|
314
|
-
}
|
|
315
|
-
}
|
|
316
|
-
}
|
|
317
|
-
if (fields) {
|
|
318
|
-
for (const key in fields) {
|
|
319
|
-
// IMPORTANT: Only validate the primary field when not creating.
|
|
320
|
-
if (typeOperation !== TypeInfo_1.TypeOperation.CREATE ||
|
|
321
|
-
typeof primaryField !== "string" ||
|
|
322
|
-
key !== primaryField) {
|
|
323
|
-
const typeInfoField = fields[key];
|
|
324
|
-
const fieldValue = value[key];
|
|
325
|
-
const { valid: fieldValid, error: fieldError, errorMap: fieldErrorMap, } = (0, exports.validateTypeInfoFieldValue)(fieldValue, typeInfoField, typeInfoMap, false, strict, customValidators, typeOperation, relationshipValidationType, itemIsPartial);
|
|
326
|
-
results.valid = (0, exports.getValidityValue)(results.valid, fieldValid);
|
|
327
|
-
results.errorMap[key] = [fieldError];
|
|
328
|
-
for (const fE in fieldErrorMap) {
|
|
329
|
-
results.errorMap[(0, Routing_1.getPathString)([key, fE])] = fieldErrorMap[fE];
|
|
330
|
-
}
|
|
331
|
-
}
|
|
332
|
-
}
|
|
333
|
-
}
|
|
334
|
-
if (!results.valid && !results.error) {
|
|
335
|
-
results.error = exports.ERROR_MESSAGE_CONSTANTS.INVALID_TYPE;
|
|
336
|
-
}
|
|
337
|
-
}
|
|
338
|
-
return results;
|
|
339
|
-
};
|
|
340
|
-
exports.validateTypeInfoValue = validateTypeInfoValue;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
19
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
|
-
};
|
|
21
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
-
var ownKeys = function(o) {
|
|
23
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
-
var ar = [];
|
|
25
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
-
return ar;
|
|
27
|
-
};
|
|
28
|
-
return ownKeys(o);
|
|
29
|
-
};
|
|
30
|
-
return function (mod) {
|
|
31
|
-
if (mod && mod.__esModule) return mod;
|
|
32
|
-
var result = {};
|
|
33
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
-
__setModuleDefault(result, mod);
|
|
35
|
-
return result;
|
|
36
|
-
};
|
|
37
|
-
})();
|
|
38
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
-
exports.Constants = exports.TypeMapping = exports.TypeInfo = exports.Validation = void 0;
|
|
40
|
-
__exportStar(require("./TypeParsing"), exports);
|
|
41
|
-
exports.Validation = __importStar(require("./Validation"));
|
|
42
|
-
exports.TypeInfo = __importStar(require("./TypeInfo"));
|
|
43
|
-
exports.TypeMapping = __importStar(require("./TypeMapping"));
|
|
44
|
-
exports.Constants = __importStar(require("./Constants"));
|
package/src/common/index.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export * as TypeParsing from "./TypeParsing";
|
|
2
|
-
export * as Routing from "./Routing";
|
|
3
|
-
export * as IDGeneration from "./IdGeneration";
|
|
4
|
-
export * as SearchTypes from "./SearchTypes";
|
|
5
|
-
export * as SearchUtils from "./SearchUtils";
|
|
6
|
-
export * as StringTransformers from "./StringTransformers";
|
|
7
|
-
export * as ItemRelationshipInfoTypes from "./ItemRelationshipInfoTypes";
|
|
8
|
-
export * as ItemRelationships from "./ItemRelationships";
|
|
9
|
-
export * as Testing from "./Testing";
|
|
10
|
-
export * as HelperTypes from "./HelperTypes";
|
|
11
|
-
export * as Logging from "./Logging";
|
package/src/common/index.js
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
-
}) : function(o, v) {
|
|
16
|
-
o["default"] = v;
|
|
17
|
-
});
|
|
18
|
-
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
-
var ownKeys = function(o) {
|
|
20
|
-
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
-
var ar = [];
|
|
22
|
-
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
-
return ar;
|
|
24
|
-
};
|
|
25
|
-
return ownKeys(o);
|
|
26
|
-
};
|
|
27
|
-
return function (mod) {
|
|
28
|
-
if (mod && mod.__esModule) return mod;
|
|
29
|
-
var result = {};
|
|
30
|
-
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
-
__setModuleDefault(result, mod);
|
|
32
|
-
return result;
|
|
33
|
-
};
|
|
34
|
-
})();
|
|
35
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.Logging = exports.HelperTypes = exports.Testing = exports.ItemRelationships = exports.ItemRelationshipInfoTypes = exports.StringTransformers = exports.SearchUtils = exports.SearchTypes = exports.IDGeneration = exports.Routing = exports.TypeParsing = void 0;
|
|
37
|
-
exports.TypeParsing = __importStar(require("./TypeParsing"));
|
|
38
|
-
exports.Routing = __importStar(require("./Routing"));
|
|
39
|
-
exports.IDGeneration = __importStar(require("./IdGeneration"));
|
|
40
|
-
exports.SearchTypes = __importStar(require("./SearchTypes"));
|
|
41
|
-
exports.SearchUtils = __importStar(require("./SearchUtils"));
|
|
42
|
-
exports.StringTransformers = __importStar(require("./StringTransformers"));
|
|
43
|
-
exports.ItemRelationshipInfoTypes = __importStar(require("./ItemRelationshipInfoTypes"));
|
|
44
|
-
exports.ItemRelationships = __importStar(require("./ItemRelationships"));
|
|
45
|
-
exports.Testing = __importStar(require("./Testing"));
|
|
46
|
-
exports.HelperTypes = __importStar(require("./HelperTypes"));
|
|
47
|
-
exports.Logging = __importStar(require("./Logging"));
|
package/src/iac/SimpleCFT.js
DELETED
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.SimpleCFT = void 0;
|
|
7
|
-
const utils_1 = require("./utils");
|
|
8
|
-
const yaml_1 = __importDefault(require("yaml"));
|
|
9
|
-
/**
|
|
10
|
-
* The basis for your stack template.
|
|
11
|
-
* Apply packs, patches, parameters and parameter groups.
|
|
12
|
-
* Access the `template` property for the resulting CloudFormation template.
|
|
13
|
-
* */
|
|
14
|
-
class SimpleCFT {
|
|
15
|
-
template;
|
|
16
|
-
constructor(template = {
|
|
17
|
-
AWSTemplateFormatVersion: "2010-09-09",
|
|
18
|
-
}) {
|
|
19
|
-
this.template = template;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Apply a pack with configuration to the stack template.
|
|
23
|
-
* @see {@link IaC} for an example.
|
|
24
|
-
* */
|
|
25
|
-
applyPack = (pack, params) => {
|
|
26
|
-
this.template = pack(params, this.template);
|
|
27
|
-
return this;
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* Apply a patch to the stack template.
|
|
31
|
-
* */
|
|
32
|
-
patch = (patch) => {
|
|
33
|
-
this.template = (0, utils_1.patchTemplate)(patch, this.template);
|
|
34
|
-
return this;
|
|
35
|
-
};
|
|
36
|
-
/**
|
|
37
|
-
* Add a stack parameter including its descriptive info and an optional parameter group.
|
|
38
|
-
* */
|
|
39
|
-
addParameter = (parameter) => {
|
|
40
|
-
this.template = (0, utils_1.addParameter)(parameter, this.template);
|
|
41
|
-
return this;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Add a group of stack parameters including their descriptive info and an optional parameter group.
|
|
45
|
-
* */
|
|
46
|
-
addParameterGroup = ({ Label: Group, Parameters }) => {
|
|
47
|
-
const parameterIds = Object.keys(Parameters);
|
|
48
|
-
const parameterList = parameterIds.map((ParameterId) => {
|
|
49
|
-
const { Label, ...Parameter } = Parameters[ParameterId];
|
|
50
|
-
return {
|
|
51
|
-
Group,
|
|
52
|
-
ParameterId,
|
|
53
|
-
Label,
|
|
54
|
-
Parameter,
|
|
55
|
-
};
|
|
56
|
-
});
|
|
57
|
-
this.template = (0, utils_1.addParameters)(parameterList, this.template);
|
|
58
|
-
return this;
|
|
59
|
-
};
|
|
60
|
-
/**
|
|
61
|
-
* Use a modification to dynamically apply various changes at once.
|
|
62
|
-
* */
|
|
63
|
-
modify = (modification) => {
|
|
64
|
-
modification(this);
|
|
65
|
-
return this;
|
|
66
|
-
};
|
|
67
|
-
/**
|
|
68
|
-
* Convert the stack template to a string.
|
|
69
|
-
* */
|
|
70
|
-
toString = () => JSON.stringify(this.template, null, 2);
|
|
71
|
-
/**
|
|
72
|
-
* Convert the stack template to a JSON object.
|
|
73
|
-
* */
|
|
74
|
-
toJSON = () => this.template;
|
|
75
|
-
/**
|
|
76
|
-
* Convert the stack template to a YAML string.
|
|
77
|
-
* */
|
|
78
|
-
toYAML = () => yaml_1.default.stringify(this.template, {
|
|
79
|
-
aliasDuplicateObjects: false,
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
exports.SimpleCFT = SimpleCFT;
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The configuration for adding a database to a stack.
|
|
3
|
-
* */
|
|
4
|
-
export type AddDatabaseConfig = {
|
|
5
|
-
/**
|
|
6
|
-
* The id of the database table in a stack.
|
|
7
|
-
* */
|
|
8
|
-
tableId: string;
|
|
9
|
-
/**
|
|
10
|
-
* The name of the database table.
|
|
11
|
-
* */
|
|
12
|
-
tableName?: string;
|
|
13
|
-
/**
|
|
14
|
-
* The keys for the database table.
|
|
15
|
-
* */
|
|
16
|
-
keys: Record<string, "HASH" | "RANGE">;
|
|
17
|
-
/**
|
|
18
|
-
* Specific attributes for the database table.
|
|
19
|
-
* */
|
|
20
|
-
attributes: Record<string, "S" | "N" | "B" | "BOOL" | "NULL" | "M" | "L" | "SS" | "NS" | "BS">;
|
|
21
|
-
/**
|
|
22
|
-
* The billing mode for the database table.
|
|
23
|
-
* */
|
|
24
|
-
billingMode?: "PAY_PER_REQUEST" | "PROVISIONED";
|
|
25
|
-
};
|
|
26
|
-
/**
|
|
27
|
-
* Add a highly available key-value database with global scale performance.
|
|
28
|
-
* */
|
|
29
|
-
export declare const addDatabase: import("../utils").ResourcePackApplier<AddDatabaseConfig>;
|
package/src/iac/packs/dns.d.ts
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { CloudFormationPrimitiveValue } from "../types/IaCTypes";
|
|
2
|
-
export type AddDNSConfig = {
|
|
3
|
-
id: string;
|
|
4
|
-
hostedZoneId: CloudFormationPrimitiveValue<string>;
|
|
5
|
-
domainName: CloudFormationPrimitiveValue<string>;
|
|
6
|
-
resourceRecords: CloudFormationPrimitiveValue<string>[];
|
|
7
|
-
recordType?: CloudFormationPrimitiveValue<string>;
|
|
8
|
-
};
|
|
9
|
-
/**
|
|
10
|
-
* Add DNS parameters for reference in other resources.
|
|
11
|
-
* Optionally includes a front-end live development subdomain.
|
|
12
|
-
* */
|
|
13
|
-
export declare const addDNS: import("../utils").ResourcePackApplier<AddDNSConfig>;
|