@nr1e/commons 0.1.1-alpha.0 → 0.1.2
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/package.json +1 -1
- package/.editorconfig +0 -19
- package/.eslintignore +0 -3
- package/.eslintrc.json +0 -4
- package/.git/COMMIT_EDITMSG +0 -5
- package/.git/FETCH_HEAD +0 -1
- package/.git/HEAD +0 -1
- package/.git/config +0 -18
- package/.git/config.worktree +0 -5
- package/.git/description +0 -1
- package/.git/hooks/applypatch-msg.sample +0 -15
- package/.git/hooks/commit-msg.sample +0 -24
- package/.git/hooks/fsmonitor-watchman.sample +0 -174
- package/.git/hooks/post-update.sample +0 -8
- package/.git/hooks/pre-applypatch.sample +0 -14
- package/.git/hooks/pre-commit.sample +0 -49
- package/.git/hooks/pre-merge-commit.sample +0 -13
- package/.git/hooks/pre-push.sample +0 -53
- package/.git/hooks/pre-rebase.sample +0 -169
- package/.git/hooks/pre-receive.sample +0 -24
- package/.git/hooks/prepare-commit-msg.sample +0 -42
- package/.git/hooks/push-to-checkout.sample +0 -78
- package/.git/hooks/sendemail-validate.sample +0 -77
- package/.git/hooks/update.sample +0 -128
- package/.git/index +0 -0
- package/.git/info/exclude +0 -6
- package/.git/logs/HEAD +0 -2
- package/.git/logs/refs/heads/develop +0 -2
- package/.git/logs/refs/remotes/origin/develop +0 -2
- package/.git/objects/07/c0af7cd711cab6a55ad3dc349ac8c70775623c +0 -0
- package/.git/objects/09/8fb5a5ff070a1ee3ea11db1a3568af3fea6fa2 +0 -0
- package/.git/objects/0d/698432e2c44311c17b845cc63093a898972b95 +0 -0
- package/.git/objects/10/ba4a7d64968326293182d571a9c73f5e041fb6 +0 -3
- package/.git/objects/12/069a5aa45479564e00749f730582627a276a55 +0 -3
- package/.git/objects/14/5ab9cf82c40696a07ab42f117ba199acb2a50b +0 -4
- package/.git/objects/17/7b0dc4bf884f8ae0403b4aad053e76baafd632 +0 -2
- package/.git/objects/1d/a517ce3527df45a4f28e52ff2c0d9d1c8179f6 +0 -0
- package/.git/objects/26/d9a4912af870ce319f5cb5102651d49baac4ab +0 -1
- package/.git/objects/27/50076ed23b5211a52ef834f40f183ddecb917a +0 -0
- package/.git/objects/2a/96e4bb57fa4bd69c719dca224b17b569e94e82 +0 -2
- package/.git/objects/2b/38c26b4ec43b8f5574acb164d2ba64bca8e230 +0 -0
- package/.git/objects/2c/61d463bee185f04e7c2bd1d2a15ad1117c589e +0 -0
- package/.git/objects/2d/22dbc836cfd75c8d7640ebe5a4fe90bd2c23c6 +0 -0
- package/.git/objects/38/0be191ee415827a1217f46626fea4fefba48e5 +0 -0
- package/.git/objects/4c/bb28de66d7aaeb4d7737cc2be955adc0c886b5 +0 -0
- package/.git/objects/50/150b739272269be2ede552448013eba65323da +0 -0
- package/.git/objects/53/2b7b796ffd3223f913a5a5e1e17743ee3591fe +0 -0
- package/.git/objects/54/f13d9d62fbedd19b41134ba17153c4328de95b +0 -0
- package/.git/objects/5d/4aa0709f62f1bc1fa80251208b570cb3b89d9c +0 -0
- package/.git/objects/63/1c43e00d4c34ba914c510f4fe2e6df15b8b06e +0 -0
- package/.git/objects/63/9900d13c6182e452e33a3bd638e70a0146c785 +0 -2
- package/.git/objects/64/3fa02661c3a1b54205729a75d2fb5f013833af +0 -0
- package/.git/objects/6c/59086d862516d2fffa5da2035e5003100fb5c7 +0 -0
- package/.git/objects/6c/b74f90a0c799eea1c54a04d8d6a8a9e9691cca +0 -2
- package/.git/objects/6d/f39e776d6a89628ce4a005a011911298651635 +0 -0
- package/.git/objects/70/0e093acb1c1e55d523507411b7940a01a3bb65 +0 -0
- package/.git/objects/74/c82ffe8eb71efecbccfdf67b590949c944dd1a +0 -0
- package/.git/objects/76/1413a07839108abb46ef0e4490bd1c1444b4fc +0 -0
- package/.git/objects/77/96f8282f2c553ecdde72bc976478eb3a8a948e +0 -0
- package/.git/objects/79/ee123c2b23e069e35ed634d687e17f731cc702 +0 -0
- package/.git/objects/7d/80af9735f0527db35ecc79ae3c887e445cb3e0 +0 -0
- package/.git/objects/85/1d8d26c2a946ccfd5461a2573665c1fb7d71f7 +0 -0
- package/.git/objects/85/c5f24b8c55496f82a2680f94a7d3fa32887ea0 +0 -0
- package/.git/objects/87/00b3833597b600e6f0ffcfbaf622fd8cfaa9c3 +0 -1
- package/.git/objects/87/f31d3df8e7edbf96e45d80126f878b8e0c243f +0 -0
- package/.git/objects/8d/d819967bdc8457f04c1b5498bce89380d6552b +0 -7
- package/.git/objects/92/608c4e069a4301d466d8d18daecbe7abc9500e +0 -0
- package/.git/objects/94/a25f7f4cb416c083d265558da75d457237d671 +0 -0
- package/.git/objects/9c/69411050eac81b5dce09314516a30b38c41a20 +0 -3
- package/.git/objects/9f/54b5b21769da383f12fb9c7bd364bdb05e13a9 +0 -0
- package/.git/objects/a5/886c22eb68b152bb95ec5151504676d8e78ae1 +0 -0
- package/.git/objects/a6/582c9510e264f3b46fc3b20597a16923a03523 +0 -0
- package/.git/objects/a9/d7db9c0a81b2db47ca92e4e180b30090b27632 +0 -0
- package/.git/objects/aa/8ae6a0af7014d738cc551d1ffebeb4e19e6b73 +0 -0
- package/.git/objects/ad/c418f9105db9ec488de6831584b82e3929eaef +0 -0
- package/.git/objects/ae/14b04cdf65ade0f70577cdea2f85203f4c1bde +0 -0
- package/.git/objects/b0/c1c68fbbad6b190434cd2bb0e807796bd56fca +0 -0
- package/.git/objects/b1/0f0d0ef3bc5aaf3a91be0b991cb6fe0fcadc40 +0 -0
- package/.git/objects/b1/3c15806ef3856ecd8660b0bb36f39830daa3c2 +0 -0
- package/.git/objects/b6/3b642cfb4254fc0f7058903abc5b481895c4ef +0 -0
- package/.git/objects/b8/a2c461d7ffed9d4ba242c58a52341832b99e0a +0 -0
- package/.git/objects/bc/91e0079eb00d56dcde16714748f36a10dbd525 +0 -0
- package/.git/objects/c1/beeb895b71b709e48560460199db11b3fc18af +0 -0
- package/.git/objects/c5/166c2aeebaeb0a0f7654223c843c50cd4c8953 +0 -0
- package/.git/objects/d4/0a2096fc36c1fd9c7a9263c458d5e8a4a5bee7 +0 -0
- package/.git/objects/e8/019be9e978a8e2f094e748cbb6ce0c7163adee +0 -0
- package/.git/objects/eb/1d744c4e9b47bc902647298424320078e32980 +0 -0
- package/.git/objects/ee/15af38be7f3c3862229e59c6b5688f8e0f6099 +0 -0
- package/.git/objects/f1/9e0f429f231c34432784f9e33b92ac1d598c17 +0 -0
- package/.git/objects/f9/86f2fe82493e85651396b6d5886316d1c890dd +0 -0
- package/.git/refs/heads/develop +0 -1
- package/.git/refs/remotes/origin/develop +0 -1
- package/.git/shallow +0 -1
- package/.github/dependabot.yml +0 -10
- package/.github/workflows/ci.yml +0 -12
- package/.github/workflows/issues.yml +0 -13
- package/.github/workflows/publish.yml +0 -20
- package/.gitignore +0 -13
- package/.idea/.gitignore +0 -10
- package/.idea/aws.xml +0 -11
- package/.idea/codeStyles/Project.xml +0 -58
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/commons-js.iml +0 -14
- package/.idea/inspectionProfiles/Project_Default.xml +0 -7
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/prettier.xml +0 -6
- package/.idea/vcs.xml +0 -6
- package/.npmrc +0 -1
- package/.prettierignore +0 -7
- package/.prettierrc.cjs +0 -3
- package/LICENSE +0 -26
- package/README.md +0 -14
- package/coverage/base.css +0 -224
- package/coverage/bitsnbytes/b64.mts.html +0 -559
- package/coverage/bitsnbytes/index.html +0 -131
- package/coverage/bitsnbytes/index.mts.html +0 -88
- package/coverage/clover.xml +0 -1003
- package/coverage/coverage-final.json +0 -15
- package/coverage/errors/errors.mts.html +0 -898
- package/coverage/errors/index.html +0 -131
- package/coverage/errors/index.mts.html +0 -88
- package/coverage/favicon.png +0 -0
- package/coverage/http/http-method.mts.html +0 -112
- package/coverage/http/http-status-code.mts.html +0 -211
- package/coverage/http/index.html +0 -146
- package/coverage/http/index.mts.html +0 -91
- package/coverage/index.html +0 -191
- package/coverage/lang/index.html +0 -146
- package/coverage/lang/index.mts.html +0 -91
- package/coverage/lang/sleep.mts.html +0 -109
- package/coverage/lang/type-functions.mts.html +0 -124
- package/coverage/oauth/crypto-functions.mts.html +0 -217
- package/coverage/oauth/index.html +0 -131
- package/coverage/oauth/index.mts.html +0 -88
- package/coverage/prettify.css +0 -1
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/validator/index.html +0 -131
- package/coverage/validator/index.mts.html +0 -88
- package/coverage/validator/validators.mts.html +0 -1237
- package/dist/package.json +0 -72
- package/node_modules/@eslint/eslintrc/LICENSE +0 -19
- package/node_modules/@eslint/eslintrc/README.md +0 -115
- package/node_modules/@eslint/eslintrc/dist/eslintrc-universal.cjs +0 -1104
- package/node_modules/@eslint/eslintrc/dist/eslintrc-universal.cjs.map +0 -1
- package/node_modules/@eslint/eslintrc/dist/eslintrc.cjs +0 -4344
- package/node_modules/@eslint/eslintrc/dist/eslintrc.cjs.map +0 -1
- package/node_modules/@eslint/eslintrc/package.json +0 -82
- package/node_modules/@eslint/eslintrc/universal.js +0 -9
- package/node_modules/@eslint/js/LICENSE +0 -19
- package/node_modules/@eslint/js/README.md +0 -57
- package/node_modules/@eslint/js/package.json +0 -31
- package/node_modules/@eslint/js/src/index.js +0 -17
- package/node_modules/@eslint-community/eslint-utils/LICENSE +0 -21
- package/node_modules/@eslint-community/eslint-utils/README.md +0 -37
- package/node_modules/@eslint-community/eslint-utils/index.js +0 -2068
- package/node_modules/@eslint-community/eslint-utils/index.js.map +0 -1
- package/node_modules/@eslint-community/eslint-utils/index.mjs +0 -2027
- package/node_modules/@eslint-community/eslint-utils/index.mjs.map +0 -1
- package/node_modules/@eslint-community/eslint-utils/package.json +0 -73
- package/node_modules/@eslint-community/regexpp/LICENSE +0 -21
- package/node_modules/@eslint-community/regexpp/README.md +0 -177
- package/node_modules/@eslint-community/regexpp/index.d.ts +0 -1065
- package/node_modules/@eslint-community/regexpp/index.js +0 -2747
- package/node_modules/@eslint-community/regexpp/index.js.map +0 -1
- package/node_modules/@eslint-community/regexpp/index.mjs +0 -2737
- package/node_modules/@eslint-community/regexpp/index.mjs.map +0 -1
- package/node_modules/@eslint-community/regexpp/package.json +0 -93
- package/node_modules/@types/node/LICENSE +0 -21
- package/node_modules/@types/node/README.md +0 -15
- package/node_modules/@types/node/package.json +0 -217
- package/node_modules/@typescript-eslint/eslint-plugin/LICENSE +0 -21
- package/node_modules/@typescript-eslint/eslint-plugin/README.md +0 -10
- package/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +0 -23
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/README.md +0 -23
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/TEMPLATE.md +0 -26
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/adjacent-overload-signatures.md +0 -93
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/array-type.md +0 -103
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/await-thenable.md +0 -40
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-ts-comment.md +0 -148
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-tslint-comment.md +0 -39
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/ban-types.md +0 -183
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/block-spacing.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/brace-style.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/camelcase.md +0 -10
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/class-literal-property-style.md +0 -114
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-dangle.md +0 -22
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/comma-spacing.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-generic-constructors.md +0 -73
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-indexed-object-style.md +0 -80
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-assertions.md +0 -108
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-definitions.md +0 -82
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-exports.md +0 -100
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/consistent-type-imports.md +0 -105
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/default-param-last.md +0 -48
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/dot-notation.md +0 -77
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-function-return-type.md +0 -319
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-member-accessibility.md +0 -331
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/explicit-module-boundary-types.md +0 -250
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/func-call-spacing.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/indent.md +0 -20
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/init-declarations.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/key-spacing.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/keyword-spacing.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-around-comment.md +0 -37
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/lines-between-class-members.md +0 -63
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-delimiter-style.md +0 -161
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/member-ordering.md +0 -1360
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/method-signature-style.md +0 -110
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/naming-convention.md +0 -706
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-array-constructor.md +0 -35
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-base-to-string.md +0 -88
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-non-null-assertion.md +0 -56
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-confusing-void-expression.md +0 -116
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dupe-class-members.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-enum-values.md +0 -50
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-imports.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-duplicate-type-constituents.md +0 -61
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-dynamic-delete.md +0 -53
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-function.md +0 -88
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-empty-interface.md +0 -70
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-explicit-any.md +0 -174
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-non-null-assertion.md +0 -52
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-parens.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extra-semi.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-extraneous-class.md +0 -294
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-floating-promises.md +0 -106
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-for-in-array.md +0 -56
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implicit-any-catch.md +0 -73
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-implied-eval.md +0 -101
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-import-type-side-effects.md +0 -75
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-inferrable-types.md +0 -103
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-this.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-invalid-void-type.md +0 -113
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loop-func.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-loss-of-precision.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-magic-numbers.md +0 -131
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-meaningless-void-operator.md +0 -47
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-misused-new.md +0 -46
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-misused-promises.md +0 -245
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-mixed-enums.md +0 -88
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-namespace.md +0 -129
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.md +0 -49
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.md +0 -35
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-non-null-assertion.md +0 -42
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-parameter-properties.md +0 -406
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redeclare.md +0 -73
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-redundant-type-constituents.md +0 -78
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-require-imports.md +0 -37
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-restricted-imports.md +0 -63
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-shadow.md +0 -101
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-this-alias.md +0 -38
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-throw-literal.md +0 -111
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-type-alias.md +0 -602
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.md +0 -133
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-condition.md +0 -103
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-qualifier.md +0 -51
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-arguments.md +0 -73
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-assertion.md +0 -77
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unnecessary-type-constraint.md +0 -55
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-argument.md +0 -83
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-assignment.md +0 -86
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-call.md +0 -58
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-declaration-merging.md +0 -54
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-enum-comparison.md +0 -75
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-member-access.md +0 -64
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unsafe-return.md +0 -103
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-expressions.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-unused-vars.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-use-before-define.md +0 -97
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-constructor.md +0 -21
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-useless-empty-export.md +0 -43
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/no-var-requires.md +0 -37
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/non-nullable-type-assertion-style.md +0 -41
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/object-curly-spacing.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/padding-line-between-statements.md +0 -35
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/parameter-properties.md +0 -485
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-as-const.md +0 -44
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-enum-initializers.md +0 -62
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-for-of.md +0 -46
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-function-type.md +0 -92
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-includes.md +0 -77
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-literal-enum-member.md +0 -101
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-namespace-keyword.md +0 -47
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-nullish-coalescing.md +0 -164
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-optional-chain.md +0 -71
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly-parameter-types.md +0 -268
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-readonly.md +0 -87
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-reduce-type-parameter.md +0 -58
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-regexp-exec.md +0 -46
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-return-this-type.md +0 -87
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-string-starts-ends-with.md +0 -57
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/prefer-ts-expect-error.md +0 -69
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/promise-function-async.md +0 -59
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/quotes.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-array-sort-compare.md +0 -78
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/require-await.md +0 -24
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-plus-operands.md +0 -208
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/restrict-template-expressions.md +0 -117
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/return-await.md +0 -216
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/semi.md +0 -16
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/sort-type-constituents.md +0 -101
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/sort-type-union-intersection-members.md +0 -106
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-blocks.md +0 -42
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-before-function-paren.md +0 -12
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/space-infix-ops.md +0 -16
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/strict-boolean-expressions.md +0 -183
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/switch-exhaustiveness-check.md +0 -106
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/triple-slash-reference.md +0 -61
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/type-annotation-spacing.md +0 -303
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/typedef.md +0 -320
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/unbound-method.md +0 -103
- package/node_modules/@typescript-eslint/eslint-plugin/docs/rules/unified-signatures.md +0 -70
- package/node_modules/@typescript-eslint/eslint-plugin/index.d.ts +0 -4
- package/node_modules/@typescript-eslint/eslint-plugin/package.json +0 -87
- package/node_modules/@typescript-eslint/parser/LICENSE +0 -22
- package/node_modules/@typescript-eslint/parser/README.md +0 -10
- package/node_modules/@typescript-eslint/parser/dist/index.js +0 -17
- package/node_modules/@typescript-eslint/parser/package.json +0 -75
- package/node_modules/@typescript-eslint/scope-manager/LICENSE +0 -21
- package/node_modules/@typescript-eslint/scope-manager/README.md +0 -8
- package/node_modules/@typescript-eslint/scope-manager/dist/index.js +0 -31
- package/node_modules/@typescript-eslint/scope-manager/package.json +0 -67
- package/node_modules/@typescript-eslint/type-utils/LICENSE +0 -21
- package/node_modules/@typescript-eslint/type-utils/README.md +0 -12
- package/node_modules/@typescript-eslint/type-utils/dist/index.js +0 -36
- package/node_modules/@typescript-eslint/type-utils/package.json +0 -71
- package/node_modules/@typescript-eslint/types/LICENSE +0 -21
- package/node_modules/@typescript-eslint/types/README.md +0 -12
- package/node_modules/@typescript-eslint/types/dist/index.js +0 -24
- package/node_modules/@typescript-eslint/types/package.json +0 -84
- package/node_modules/@typescript-eslint/typescript-estree/LICENSE +0 -26
- package/node_modules/@typescript-eslint/typescript-estree/README.md +0 -10
- package/node_modules/@typescript-eslint/typescript-estree/dist/index.js +0 -38
- package/node_modules/@typescript-eslint/typescript-estree/package.json +0 -85
- package/node_modules/@typescript-eslint/utils/LICENSE +0 -21
- package/node_modules/@typescript-eslint/utils/README.md +0 -10
- package/node_modules/@typescript-eslint/utils/dist/index.js +0 -41
- package/node_modules/@typescript-eslint/utils/package.json +0 -70
- package/node_modules/@typescript-eslint/visitor-keys/LICENSE +0 -21
- package/node_modules/@typescript-eslint/visitor-keys/README.md +0 -10
- package/node_modules/@typescript-eslint/visitor-keys/dist/index.js +0 -8
- package/node_modules/@typescript-eslint/visitor-keys/package.json +0 -60
- package/node_modules/@vitest/coverage-v8/LICENSE +0 -21
- package/node_modules/@vitest/coverage-v8/dist/index.js +0 -54
- package/node_modules/@vitest/coverage-v8/package.json +0 -72
- package/pnpm-lock.yaml +0 -3277
- package/src/bitsnbytes/b64.mts +0 -158
- package/src/bitsnbytes/b64.test.mts +0 -78
- package/src/bitsnbytes/index.mts +0 -1
- package/src/errors/errors.mts +0 -271
- package/src/errors/errors.test.mts +0 -74
- package/src/errors/index.mts +0 -1
- package/src/http/http-method.mts +0 -9
- package/src/http/http-status-code.mts +0 -42
- package/src/http/index.mts +0 -2
- package/src/lang/index.mts +0 -2
- package/src/lang/sleep.mts +0 -8
- package/src/lang/type-functions.mts +0 -13
- package/src/oauth/crypto-functions.mts +0 -44
- package/src/oauth/crypto-functions.test.mts +0 -48
- package/src/oauth/index.mts +0 -1
- package/src/validator/index.mts +0 -1
- package/src/validator/validators.mts +0 -384
- package/src/validator/validators.test.mts +0 -245
- package/tsconfig.json +0 -18
- /package/{dist/bitsnbytes → bitsnbytes}/b64.d.mts +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/b64.d.mts.map +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/b64.mjs +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/b64.mjs.map +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/b64.test.d.mts +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/b64.test.d.mts.map +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/b64.test.mjs +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/b64.test.mjs.map +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/index.d.mts +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/index.d.mts.map +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/index.mjs +0 -0
- /package/{dist/bitsnbytes → bitsnbytes}/index.mjs.map +0 -0
- /package/{dist/errors → errors}/errors.d.mts +0 -0
- /package/{dist/errors → errors}/errors.d.mts.map +0 -0
- /package/{dist/errors → errors}/errors.mjs +0 -0
- /package/{dist/errors → errors}/errors.mjs.map +0 -0
- /package/{dist/errors → errors}/errors.test.d.mts +0 -0
- /package/{dist/errors → errors}/errors.test.d.mts.map +0 -0
- /package/{dist/errors → errors}/errors.test.mjs +0 -0
- /package/{dist/errors → errors}/errors.test.mjs.map +0 -0
- /package/{dist/errors → errors}/index.d.mts +0 -0
- /package/{dist/errors → errors}/index.d.mts.map +0 -0
- /package/{dist/errors → errors}/index.mjs +0 -0
- /package/{dist/errors → errors}/index.mjs.map +0 -0
- /package/{dist/http → http}/http-method.d.mts +0 -0
- /package/{dist/http → http}/http-method.d.mts.map +0 -0
- /package/{dist/http → http}/http-method.mjs +0 -0
- /package/{dist/http → http}/http-method.mjs.map +0 -0
- /package/{dist/http → http}/http-status-code.d.mts +0 -0
- /package/{dist/http → http}/http-status-code.d.mts.map +0 -0
- /package/{dist/http → http}/http-status-code.mjs +0 -0
- /package/{dist/http → http}/http-status-code.mjs.map +0 -0
- /package/{dist/http → http}/index.d.mts +0 -0
- /package/{dist/http → http}/index.d.mts.map +0 -0
- /package/{dist/http → http}/index.mjs +0 -0
- /package/{dist/http → http}/index.mjs.map +0 -0
- /package/{dist/lang → lang}/index.d.mts +0 -0
- /package/{dist/lang → lang}/index.d.mts.map +0 -0
- /package/{dist/lang → lang}/index.mjs +0 -0
- /package/{dist/lang → lang}/index.mjs.map +0 -0
- /package/{dist/lang → lang}/sleep.d.mts +0 -0
- /package/{dist/lang → lang}/sleep.d.mts.map +0 -0
- /package/{dist/lang → lang}/sleep.mjs +0 -0
- /package/{dist/lang → lang}/sleep.mjs.map +0 -0
- /package/{dist/lang → lang}/type-functions.d.mts +0 -0
- /package/{dist/lang → lang}/type-functions.d.mts.map +0 -0
- /package/{dist/lang → lang}/type-functions.mjs +0 -0
- /package/{dist/lang → lang}/type-functions.mjs.map +0 -0
- /package/{dist/oauth → oauth}/crypto-functions.d.mts +0 -0
- /package/{dist/oauth → oauth}/crypto-functions.d.mts.map +0 -0
- /package/{dist/oauth → oauth}/crypto-functions.mjs +0 -0
- /package/{dist/oauth → oauth}/crypto-functions.mjs.map +0 -0
- /package/{dist/oauth → oauth}/crypto-functions.test.d.mts +0 -0
- /package/{dist/oauth → oauth}/crypto-functions.test.d.mts.map +0 -0
- /package/{dist/oauth → oauth}/crypto-functions.test.mjs +0 -0
- /package/{dist/oauth → oauth}/crypto-functions.test.mjs.map +0 -0
- /package/{dist/oauth → oauth}/index.d.mts +0 -0
- /package/{dist/oauth → oauth}/index.d.mts.map +0 -0
- /package/{dist/oauth → oauth}/index.mjs +0 -0
- /package/{dist/oauth → oauth}/index.mjs.map +0 -0
- /package/{dist/validator → validator}/index.d.mts +0 -0
- /package/{dist/validator → validator}/index.d.mts.map +0 -0
- /package/{dist/validator → validator}/index.mjs +0 -0
- /package/{dist/validator → validator}/index.mjs.map +0 -0
- /package/{dist/validator → validator}/validators.d.mts +0 -0
- /package/{dist/validator → validator}/validators.d.mts.map +0 -0
- /package/{dist/validator → validator}/validators.mjs +0 -0
- /package/{dist/validator → validator}/validators.mjs.map +0 -0
- /package/{dist/validator → validator}/validators.test.d.mts +0 -0
- /package/{dist/validator → validator}/validators.test.d.mts.map +0 -0
- /package/{dist/validator → validator}/validators.test.mjs +0 -0
- /package/{dist/validator → validator}/validators.test.mjs.map +0 -0
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import * as crypto from 'crypto';
|
|
2
|
-
import {tob64s} from '../bitsnbytes/index.mjs';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Generates a state string for use with OAuth2.0 authorization requests.
|
|
6
|
-
*
|
|
7
|
-
* @param len The length of the state string in bytes. Defaults to 16 bytes.
|
|
8
|
-
*/
|
|
9
|
-
export function generateState(len?: number): string {
|
|
10
|
-
if (len && len < 16) {
|
|
11
|
-
throw new Error('State must be at least 16 bytes');
|
|
12
|
-
}
|
|
13
|
-
return tob64s(crypto.randomBytes(len ?? 16), {
|
|
14
|
-
b64chars: 'url',
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Generates a nonce string for use with OAuth2.0 authorization requests.
|
|
20
|
-
*
|
|
21
|
-
* @param len The length of the state string in bytes. Defaults to 16 bytes.
|
|
22
|
-
*/
|
|
23
|
-
export function generateNonce(len?: number): string {
|
|
24
|
-
if (len && len < 16) {
|
|
25
|
-
throw new Error('Nonce must be at least 16 bytes');
|
|
26
|
-
}
|
|
27
|
-
return tob64s(crypto.randomBytes(len ?? 16), {
|
|
28
|
-
b64chars: 'url',
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Generates a secret string for use with OAuth2.0 authorization requests.
|
|
34
|
-
*
|
|
35
|
-
* @param len The length of the state string in bytes. Defaults to 32 bytes.
|
|
36
|
-
*/
|
|
37
|
-
export function generateSecret(len?: number): string {
|
|
38
|
-
if (len && len < 32) {
|
|
39
|
-
throw new Error('Secret must be at least 32 bytes');
|
|
40
|
-
}
|
|
41
|
-
return tob64s(crypto.randomBytes(len ?? 32), {
|
|
42
|
-
b64chars: 'url',
|
|
43
|
-
});
|
|
44
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import {test, expect} from 'vitest';
|
|
2
|
-
import {
|
|
3
|
-
generateNonce,
|
|
4
|
-
generateSecret,
|
|
5
|
-
generateState,
|
|
6
|
-
} from './crypto-functions.mjs';
|
|
7
|
-
|
|
8
|
-
test('Test generateState', () => {
|
|
9
|
-
const state = generateState();
|
|
10
|
-
expect(state).toMatch(/^[A-Za-z0-9_-]{22}$/);
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
test('Test generateState with custom length', () => {
|
|
14
|
-
const state = generateState(32);
|
|
15
|
-
expect(state).toMatch(/^[A-Za-z0-9_-]{43}$/);
|
|
16
|
-
});
|
|
17
|
-
|
|
18
|
-
test('Test generateState with invalid length', () => {
|
|
19
|
-
expect(() => generateState(10)).toThrow('State must be at least 16 bytes');
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
test('Test generateNonce', () => {
|
|
23
|
-
const nonce = generateNonce();
|
|
24
|
-
expect(nonce).toMatch(/^[A-Za-z0-9_-]{22}$/);
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
test('Test generateNonce with custom length', () => {
|
|
28
|
-
const nonce = generateNonce(32);
|
|
29
|
-
expect(nonce).toMatch(/^[A-Za-z0-9_-]{43}$/);
|
|
30
|
-
});
|
|
31
|
-
|
|
32
|
-
test('Test generateNonce with invalid length', () => {
|
|
33
|
-
expect(() => generateNonce(10)).toThrow('Nonce must be at least 16 bytes');
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
test('Test generateSecret', () => {
|
|
37
|
-
const secret = generateSecret();
|
|
38
|
-
expect(secret).toMatch(/^[A-Za-z0-9_-]{43}$/);
|
|
39
|
-
});
|
|
40
|
-
|
|
41
|
-
test('Test generateSecret with custom length', () => {
|
|
42
|
-
const secret = generateSecret(64);
|
|
43
|
-
expect(secret).toMatch(/^[A-Za-z0-9_-]{86}$/);
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
test('Test generateSecret with invalid length', () => {
|
|
47
|
-
expect(() => generateSecret(10)).toThrow('Secret must be at least 32 bytes');
|
|
48
|
-
});
|
package/src/oauth/index.mts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './crypto-functions.mjs';
|
package/src/validator/index.mts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './validators.mjs';
|
|
@@ -1,384 +0,0 @@
|
|
|
1
|
-
import {ValidationError} from '../errors/index.mjs';
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Tests if a value is null or undefined.
|
|
5
|
-
*
|
|
6
|
-
* @param o the value to check
|
|
7
|
-
*/
|
|
8
|
-
export function isNotNull(o?: unknown): o is NonNullable<unknown> {
|
|
9
|
-
return o !== undefined && o !== null;
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Throws a ValidationError if the value is null or undefined.
|
|
14
|
-
* This function also asserts the value to be NonNullable if the check passes.
|
|
15
|
-
*
|
|
16
|
-
* @param name the name of the variable
|
|
17
|
-
* @param o the value to check
|
|
18
|
-
*/
|
|
19
|
-
export function notNull(
|
|
20
|
-
name: string,
|
|
21
|
-
o?: unknown
|
|
22
|
-
): asserts o is NonNullable<unknown> {
|
|
23
|
-
if (!isNotNull(o)) {
|
|
24
|
-
throw new ValidationError(`${name} may not be null or undefined`);
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
/**
|
|
29
|
-
* Tests if a value is empty, null, undefined or has a length of 0.
|
|
30
|
-
*
|
|
31
|
-
* @param o the value to check
|
|
32
|
-
*/
|
|
33
|
-
export function isNotEmpty(o?: unknown): o is NonNullable<unknown> {
|
|
34
|
-
return !(o === undefined || o === null || o.toString().length === 0);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* Throws a ValidationError if the value is null, undefined or the length is 0.
|
|
39
|
-
* This function also asserts the value to be NonNullable if the check passes.
|
|
40
|
-
*
|
|
41
|
-
* @param name the name of the variable
|
|
42
|
-
* @param o the value to check
|
|
43
|
-
*/
|
|
44
|
-
export function notEmpty(
|
|
45
|
-
name: string,
|
|
46
|
-
o?: unknown
|
|
47
|
-
): asserts o is NonNullable<unknown> {
|
|
48
|
-
if (!isNotEmpty(o)) {
|
|
49
|
-
throw new ValidationError(`${name} may not be empty`);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
/**
|
|
54
|
-
* Tests if a value is null, undefined, has a length of 0 or contains only whitespace.
|
|
55
|
-
*
|
|
56
|
-
* @param o the value to check
|
|
57
|
-
*/
|
|
58
|
-
export function isNotBlank(o?: unknown): o is NonNullable<unknown> {
|
|
59
|
-
return !(o === undefined || o === null || o.toString().trim().length === 0);
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Throws a ValidationError if the value is null, undefined, has a length of 0 or contains only whitespace.
|
|
64
|
-
* This function also asserts the value to be NonNullable if the check passes.
|
|
65
|
-
*
|
|
66
|
-
* @param name the name of the variable
|
|
67
|
-
* @param o the value to check
|
|
68
|
-
*/
|
|
69
|
-
export function notBlank(
|
|
70
|
-
name: string,
|
|
71
|
-
o?: unknown
|
|
72
|
-
): asserts o is NonNullable<unknown> {
|
|
73
|
-
if (!isNotBlank(o)) {
|
|
74
|
-
throw new ValidationError(`${name} may not be blank`);
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
/**
|
|
79
|
-
* Tests if a value does not match the regular expression provided.
|
|
80
|
-
* Undefined and null values are skipped and not tested.
|
|
81
|
-
*
|
|
82
|
-
* @param regex the regular expression to test with
|
|
83
|
-
* @param o the value to check
|
|
84
|
-
*/
|
|
85
|
-
export function isMatch(regex: RegExp, o?: string | null): o is string {
|
|
86
|
-
if (o === undefined || o === null) {
|
|
87
|
-
return true;
|
|
88
|
-
}
|
|
89
|
-
return o.match(regex) !== null;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* Throws a ValidationError if the value matches the regular expression provided.
|
|
94
|
-
* Undefined and null values are skipped and not validated.
|
|
95
|
-
*
|
|
96
|
-
* @param name the name of the variable
|
|
97
|
-
* @param regex the regular expression to validate with
|
|
98
|
-
* @param o the value to check
|
|
99
|
-
*/
|
|
100
|
-
export function match(name: string, regex: RegExp, o?: string | null) {
|
|
101
|
-
if (!isMatch(regex, o)) {
|
|
102
|
-
throw new ValidationError(`${name} must match ${regex}`);
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
/**
|
|
107
|
-
* Tests if a value is a valid email address.
|
|
108
|
-
* Undefined and null values are skipped and not validated.
|
|
109
|
-
*
|
|
110
|
-
* @param o the value to check
|
|
111
|
-
*/
|
|
112
|
-
export function isEmail(o?: string | null): o is string {
|
|
113
|
-
const expression =
|
|
114
|
-
/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/;
|
|
115
|
-
return !(o !== undefined && o !== null && !expression.test(o));
|
|
116
|
-
}
|
|
117
|
-
|
|
118
|
-
/**
|
|
119
|
-
* Throws a ValidationError if the value provided is not an email.
|
|
120
|
-
* Undefined and null values are skipped and not validated.
|
|
121
|
-
*
|
|
122
|
-
* @param name the name of the variable
|
|
123
|
-
* @param o the value to check
|
|
124
|
-
*/
|
|
125
|
-
export function email(name: string, o?: string | null) {
|
|
126
|
-
if (!isEmail(o)) {
|
|
127
|
-
throw new ValidationError(`${name} is not a valid email address`);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
/**
|
|
132
|
-
* Tests if a value has a length that is less than the provided length.
|
|
133
|
-
* Undefined and null values are skipped and not validated.
|
|
134
|
-
*
|
|
135
|
-
* @param length the maximum length of the variable
|
|
136
|
-
* @param o the value to check
|
|
137
|
-
*/
|
|
138
|
-
export function isMaxLength(length: number, o?: string | unknown[] | null) {
|
|
139
|
-
return !(o !== undefined && o !== null && o.length > length);
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
/**
|
|
143
|
-
* Throws a ValidationError if the value provided has a length that exceeds the provided length.
|
|
144
|
-
* Undefined and null values are skipped and not validated.
|
|
145
|
-
*
|
|
146
|
-
* @param name the name of the variable
|
|
147
|
-
* @param length the maximum length of the variable
|
|
148
|
-
* @param o the value to check
|
|
149
|
-
*/
|
|
150
|
-
export function maxLength(
|
|
151
|
-
name: string,
|
|
152
|
-
length: number,
|
|
153
|
-
o?: string | unknown[] | null
|
|
154
|
-
) {
|
|
155
|
-
if (!isMaxLength(length, o)) {
|
|
156
|
-
throw new ValidationError(`length of ${name} may not exceed ${length}`);
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
/**
|
|
161
|
-
* Tests if a value has a length that is greater than the provided length.
|
|
162
|
-
* Undefined and null values are skipped and not validated.
|
|
163
|
-
*
|
|
164
|
-
* @param length the minimum length of the variable
|
|
165
|
-
* @param o the value to check
|
|
166
|
-
*/
|
|
167
|
-
export function isMinLength(length: number, o?: string | unknown[] | null) {
|
|
168
|
-
return !(o !== undefined && o !== null && o.length < length);
|
|
169
|
-
}
|
|
170
|
-
|
|
171
|
-
/**
|
|
172
|
-
* Throws a ValidationError if the value provided has a length that is less than the provided length.
|
|
173
|
-
* Undefined and null values are skipped and not validated.
|
|
174
|
-
*
|
|
175
|
-
* @param name the name of the variable
|
|
176
|
-
* @param length the minimum length of the variable
|
|
177
|
-
* @param o the value to check
|
|
178
|
-
*/
|
|
179
|
-
export function minLength(
|
|
180
|
-
name: string,
|
|
181
|
-
length: number,
|
|
182
|
-
o?: string | unknown[] | null
|
|
183
|
-
) {
|
|
184
|
-
if (!isMinLength(length, o)) {
|
|
185
|
-
throw new ValidationError(
|
|
186
|
-
`length of ${name} may not be less than ${length}`
|
|
187
|
-
);
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
/**
|
|
192
|
-
* Tests if a value provided is a number.
|
|
193
|
-
* Undefined and null values are skipped and not validated.
|
|
194
|
-
*
|
|
195
|
-
* @param o the value to check
|
|
196
|
-
*/
|
|
197
|
-
export function isNumber(o?: string | null | number): boolean {
|
|
198
|
-
return o === undefined || o === null || !isNaN(+o);
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
/**
|
|
202
|
-
* Throws a ValidationError if the value provided is not a number.
|
|
203
|
-
* Undefined and null values are skipped and not validated.
|
|
204
|
-
*
|
|
205
|
-
* @param name the name of the variable
|
|
206
|
-
* @param o the value to check
|
|
207
|
-
*/
|
|
208
|
-
export function number(name: string, o?: string | null | number) {
|
|
209
|
-
if (!isNumber(o)) {
|
|
210
|
-
throw new ValidationError(`${name} is not a number`);
|
|
211
|
-
}
|
|
212
|
-
}
|
|
213
|
-
|
|
214
|
-
/**
|
|
215
|
-
* Tests if a value is less than the provided minimum value.
|
|
216
|
-
* Undefined and null values are skipped and not validated.
|
|
217
|
-
*
|
|
218
|
-
* @param minValue the minimum value allowed
|
|
219
|
-
* @param o the value to check
|
|
220
|
-
*/
|
|
221
|
-
export function isMinValue(minValue: number, o?: string | number | null) {
|
|
222
|
-
return o === undefined || o === null || +o >= minValue;
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
/**
|
|
226
|
-
* Throws a ValidationError if the value is less than the provided minimum value.
|
|
227
|
-
* Undefined and null values are skipped and not validated.
|
|
228
|
-
*
|
|
229
|
-
* @param name the name of the variable
|
|
230
|
-
* @param minValue the minimum value allowed
|
|
231
|
-
* @param o the value to check
|
|
232
|
-
*/
|
|
233
|
-
export function minValue(
|
|
234
|
-
name: string,
|
|
235
|
-
minValue: number,
|
|
236
|
-
o?: number | string | null
|
|
237
|
-
) {
|
|
238
|
-
if (!isMinValue(minValue, o)) {
|
|
239
|
-
throw new ValidationError(`${name} may not be less than ${minValue}`);
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
|
|
243
|
-
/**
|
|
244
|
-
* Tests if a value is more than the provided maximum value.
|
|
245
|
-
* Undefined and null values are skipped and not validated.
|
|
246
|
-
*
|
|
247
|
-
* @param maxValue the maximum value allowed
|
|
248
|
-
* @param o the value to check
|
|
249
|
-
*/
|
|
250
|
-
export function isMaxValue(
|
|
251
|
-
maxValue: number,
|
|
252
|
-
o?: string | number | null
|
|
253
|
-
): boolean {
|
|
254
|
-
return !(o !== undefined && o !== null && +o > maxValue);
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
/**
|
|
258
|
-
* Throws a ValidationError if the value is more than the provided maximum value.
|
|
259
|
-
* Undefined and null values are skipped and not validated.
|
|
260
|
-
*
|
|
261
|
-
* @param name the name of the variable
|
|
262
|
-
* @param maxValue the maximum value allowed
|
|
263
|
-
* @param o the value to check
|
|
264
|
-
*/
|
|
265
|
-
export function maxValue(
|
|
266
|
-
name: string,
|
|
267
|
-
maxValue: number,
|
|
268
|
-
o?: number | string | null
|
|
269
|
-
) {
|
|
270
|
-
if (!isMaxValue(maxValue, o)) {
|
|
271
|
-
throw new ValidationError(`${name} may not be greater than ${maxValue}`);
|
|
272
|
-
}
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
/**
|
|
276
|
-
* Tests if the value is between the provided minimum and maximum values inclusive.
|
|
277
|
-
* Undefined and null values are skipped and not validated.
|
|
278
|
-
*
|
|
279
|
-
* @param minValue the minimum value allowed
|
|
280
|
-
* @param maxValue the maximum value allowed
|
|
281
|
-
* @param o the value to check
|
|
282
|
-
*/
|
|
283
|
-
export function isBetweenValues(
|
|
284
|
-
minValue: number,
|
|
285
|
-
maxValue: number,
|
|
286
|
-
o?: string | number | null
|
|
287
|
-
): boolean {
|
|
288
|
-
return !(o !== undefined && o !== null && (+o < minValue || +o > maxValue));
|
|
289
|
-
}
|
|
290
|
-
|
|
291
|
-
/**
|
|
292
|
-
* Throws a ValidationError if the value is not between the provided minimum and maximum values inclusive.
|
|
293
|
-
* Undefined and null values are skipped and not validated.
|
|
294
|
-
*
|
|
295
|
-
* @param name the name of the variable
|
|
296
|
-
* @param minValue the minimum value allowed
|
|
297
|
-
* @param maxValue the maximum value allowed
|
|
298
|
-
* @param o the value to check
|
|
299
|
-
*/
|
|
300
|
-
export function betweenValues(
|
|
301
|
-
name: string,
|
|
302
|
-
minValue: number,
|
|
303
|
-
maxValue: number,
|
|
304
|
-
o?: string | number | null
|
|
305
|
-
) {
|
|
306
|
-
if (!isBetweenValues(minValue, maxValue, o)) {
|
|
307
|
-
throw new ValidationError(
|
|
308
|
-
`${name} must be between ${minValue} and ${maxValue}`
|
|
309
|
-
);
|
|
310
|
-
}
|
|
311
|
-
}
|
|
312
|
-
|
|
313
|
-
const isString = (value: unknown): value is string => typeof value === 'string';
|
|
314
|
-
|
|
315
|
-
export interface StringValidationOptions {
|
|
316
|
-
readonly required: boolean;
|
|
317
|
-
readonly minLength?: number;
|
|
318
|
-
readonly maxLength?: number;
|
|
319
|
-
readonly regex?: RegExp;
|
|
320
|
-
readonly notBlank?: boolean;
|
|
321
|
-
readonly notEmpty?: boolean;
|
|
322
|
-
readonly email?: boolean;
|
|
323
|
-
readonly number?: boolean;
|
|
324
|
-
}
|
|
325
|
-
|
|
326
|
-
export function isValidString(
|
|
327
|
-
options: StringValidationOptions,
|
|
328
|
-
value?: unknown
|
|
329
|
-
): value is string {
|
|
330
|
-
if (options.required) {
|
|
331
|
-
if (!isNotNull(value)) {
|
|
332
|
-
return false;
|
|
333
|
-
}
|
|
334
|
-
} else if (value === undefined || value === null) {
|
|
335
|
-
return true;
|
|
336
|
-
}
|
|
337
|
-
if (!isString(value)) {
|
|
338
|
-
return false;
|
|
339
|
-
}
|
|
340
|
-
if (options.minLength && !isMinLength(options.minLength, value)) {
|
|
341
|
-
return false;
|
|
342
|
-
}
|
|
343
|
-
if (options.maxLength && !isMaxLength(options.maxLength, value)) {
|
|
344
|
-
return false;
|
|
345
|
-
}
|
|
346
|
-
if (options.regex && !isMatch(options.regex, value)) {
|
|
347
|
-
return false;
|
|
348
|
-
}
|
|
349
|
-
if (options.notBlank && !isNotBlank(value)) {
|
|
350
|
-
return false;
|
|
351
|
-
}
|
|
352
|
-
if (options.notEmpty && !isNotEmpty(value)) {
|
|
353
|
-
return false;
|
|
354
|
-
}
|
|
355
|
-
if (options.email && !isEmail(value)) {
|
|
356
|
-
return false;
|
|
357
|
-
}
|
|
358
|
-
if (options.number && !isNumber(value)) {
|
|
359
|
-
return false;
|
|
360
|
-
}
|
|
361
|
-
return true;
|
|
362
|
-
}
|
|
363
|
-
|
|
364
|
-
export function validString(
|
|
365
|
-
name: string,
|
|
366
|
-
options: StringValidationOptions,
|
|
367
|
-
value?: unknown
|
|
368
|
-
): void {
|
|
369
|
-
if (options.required) {
|
|
370
|
-
notNull(name, value);
|
|
371
|
-
} else if (value === undefined || value === null) {
|
|
372
|
-
return;
|
|
373
|
-
}
|
|
374
|
-
if (!isString(value)) {
|
|
375
|
-
throw new ValidationError(`${name} must be a string`);
|
|
376
|
-
}
|
|
377
|
-
options.minLength && minLength(name, options.minLength, value);
|
|
378
|
-
options.maxLength && maxLength(name, options.maxLength, value);
|
|
379
|
-
options.regex && match(name, options.regex, value);
|
|
380
|
-
options.notBlank && notBlank(name, value);
|
|
381
|
-
options.notEmpty && notEmpty(name, value);
|
|
382
|
-
options.email && email(name, value);
|
|
383
|
-
options.number && number(name, value);
|
|
384
|
-
}
|