@thisisagile/easy 17.26.1 → 17.26.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/dist/chunk-2AB6ZQHC.mjs +26 -0
- package/dist/chunk-2AB6ZQHC.mjs.map +1 -0
- package/dist/chunk-4DJUHTQO.mjs +55 -0
- package/dist/chunk-4DJUHTQO.mjs.map +1 -0
- package/dist/chunk-4HWEQEHM.mjs +20 -0
- package/dist/chunk-4HWEQEHM.mjs.map +1 -0
- package/dist/chunk-4N72FQFX.mjs +16 -0
- package/dist/chunk-4N72FQFX.mjs.map +1 -0
- package/dist/chunk-4SWYJEN5.mjs +82 -0
- package/dist/chunk-4SWYJEN5.mjs.map +1 -0
- package/dist/chunk-4VZHB642.mjs +37 -0
- package/dist/chunk-4VZHB642.mjs.map +1 -0
- package/dist/chunk-ADJAEGCT.mjs +21 -0
- package/dist/chunk-ADJAEGCT.mjs.map +1 -0
- package/dist/chunk-AGTB4HMP.mjs +11 -0
- package/dist/chunk-AGTB4HMP.mjs.map +1 -0
- package/dist/chunk-BDA5LB4S.mjs +29 -0
- package/dist/chunk-BDA5LB4S.mjs.map +1 -0
- package/dist/chunk-BZOYP6X7.mjs +134 -0
- package/dist/chunk-BZOYP6X7.mjs.map +1 -0
- package/dist/chunk-CO2AFYVD.mjs +43 -0
- package/dist/chunk-CO2AFYVD.mjs.map +1 -0
- package/dist/chunk-D7UFAVDX.mjs +54 -0
- package/dist/chunk-D7UFAVDX.mjs.map +1 -0
- package/dist/chunk-DEFTEK45.mjs +40 -0
- package/dist/chunk-DEFTEK45.mjs.map +1 -0
- package/dist/chunk-DEJ7A5PY.mjs +43 -0
- package/dist/chunk-DEJ7A5PY.mjs.map +1 -0
- package/dist/chunk-DLA22ZCC.mjs +20 -0
- package/dist/chunk-DLA22ZCC.mjs.map +1 -0
- package/dist/chunk-DXQSIBC7.mjs +13 -0
- package/dist/chunk-DXQSIBC7.mjs.map +1 -0
- package/dist/chunk-ELDS3NWV.mjs +23 -0
- package/dist/chunk-ELDS3NWV.mjs.map +1 -0
- package/dist/chunk-ELUKCMQZ.mjs +50 -0
- package/dist/chunk-ELUKCMQZ.mjs.map +1 -0
- package/dist/chunk-FN7HN3YK.mjs +58 -0
- package/dist/chunk-FN7HN3YK.mjs.map +1 -0
- package/dist/chunk-GCY5A63A.mjs +25 -0
- package/dist/chunk-GCY5A63A.mjs.map +1 -0
- package/dist/chunk-GO66AIDJ.mjs +76 -0
- package/dist/chunk-GO66AIDJ.mjs.map +1 -0
- package/dist/chunk-GVTADDU5.mjs +39 -0
- package/dist/chunk-GVTADDU5.mjs.map +1 -0
- package/dist/chunk-GZIULZH2.mjs +79 -0
- package/dist/chunk-GZIULZH2.mjs.map +1 -0
- package/dist/chunk-HOVTNDHS.mjs +297 -0
- package/dist/chunk-HOVTNDHS.mjs.map +1 -0
- package/dist/chunk-HPM4L4MH.mjs +20 -0
- package/dist/chunk-HPM4L4MH.mjs.map +1 -0
- package/dist/chunk-HSOXY623.mjs +53 -0
- package/dist/chunk-HSOXY623.mjs.map +1 -0
- package/dist/chunk-IH4VU7UP.mjs +31 -0
- package/dist/chunk-IH4VU7UP.mjs.map +1 -0
- package/dist/chunk-JPWRHLXY.mjs +51 -0
- package/dist/chunk-JPWRHLXY.mjs.map +1 -0
- package/dist/chunk-L5KXXMUH.mjs +46 -0
- package/dist/chunk-L5KXXMUH.mjs.map +1 -0
- package/dist/chunk-L5ZI7SPN.mjs +90 -0
- package/dist/chunk-L5ZI7SPN.mjs.map +1 -0
- package/dist/chunk-LGLRWA42.mjs +324 -0
- package/dist/chunk-LGLRWA42.mjs.map +1 -0
- package/dist/chunk-LKTTPV6U.mjs +70 -0
- package/dist/chunk-LKTTPV6U.mjs.map +1 -0
- package/dist/chunk-LONFFS5R.mjs +107 -0
- package/dist/chunk-LONFFS5R.mjs.map +1 -0
- package/dist/chunk-LUHR6633.mjs +54 -0
- package/dist/chunk-LUHR6633.mjs.map +1 -0
- package/dist/chunk-MDXL65W4.mjs +49 -0
- package/dist/chunk-MDXL65W4.mjs.map +1 -0
- package/dist/chunk-N22QIDIK.mjs +25 -0
- package/dist/chunk-N22QIDIK.mjs.map +1 -0
- package/dist/chunk-NBYO2U6Q.mjs +48 -0
- package/dist/chunk-NBYO2U6Q.mjs.map +1 -0
- package/dist/chunk-NPCTXURR.mjs +23 -0
- package/dist/chunk-NPCTXURR.mjs.map +1 -0
- package/dist/chunk-OFGI5FLG.mjs +11 -0
- package/dist/chunk-OFGI5FLG.mjs.map +1 -0
- package/dist/chunk-OGLPG6DF.mjs +18 -0
- package/dist/chunk-OGLPG6DF.mjs.map +1 -0
- package/dist/chunk-OKPGJD64.mjs +41 -0
- package/dist/chunk-OKPGJD64.mjs.map +1 -0
- package/dist/chunk-OQNZEKWO.mjs +24 -0
- package/dist/chunk-OQNZEKWO.mjs.map +1 -0
- package/dist/chunk-OWLQ6U7M.mjs +57 -0
- package/dist/chunk-OWLQ6U7M.mjs.map +1 -0
- package/dist/chunk-P5MN5NGC.mjs +24 -0
- package/dist/chunk-P5MN5NGC.mjs.map +1 -0
- package/dist/chunk-PIRWVOO2.mjs +7 -0
- package/dist/chunk-PIRWVOO2.mjs.map +1 -0
- package/dist/chunk-PR6DFFCE.mjs +94 -0
- package/dist/chunk-PR6DFFCE.mjs.map +1 -0
- package/dist/chunk-QMASVXTD.mjs +40 -0
- package/dist/chunk-QMASVXTD.mjs.map +1 -0
- package/dist/chunk-QNNYTOR7.mjs +142 -0
- package/dist/chunk-QNNYTOR7.mjs.map +1 -0
- package/dist/chunk-RHOK5QZR.mjs +175 -0
- package/dist/chunk-RHOK5QZR.mjs.map +1 -0
- package/dist/chunk-RS7CT7BU.mjs +20 -0
- package/dist/chunk-RS7CT7BU.mjs.map +1 -0
- package/dist/chunk-RUFO75IB.mjs +18 -0
- package/dist/chunk-RUFO75IB.mjs.map +1 -0
- package/dist/chunk-RWGCMC6L.mjs +164 -0
- package/dist/chunk-RWGCMC6L.mjs.map +1 -0
- package/dist/chunk-SCVGZWV7.mjs +35 -0
- package/dist/chunk-SCVGZWV7.mjs.map +1 -0
- package/dist/chunk-SJ4YFZKO.mjs +21 -0
- package/dist/chunk-SJ4YFZKO.mjs.map +1 -0
- package/dist/chunk-SJGQU3OG.mjs +15 -0
- package/dist/chunk-SJGQU3OG.mjs.map +1 -0
- package/dist/chunk-SSROJBD5.mjs +30 -0
- package/dist/chunk-SSROJBD5.mjs.map +1 -0
- package/dist/chunk-SW2OCUH3.mjs +10 -0
- package/dist/chunk-SW2OCUH3.mjs.map +1 -0
- package/dist/chunk-TNZJKUDY.mjs +45 -0
- package/dist/chunk-TNZJKUDY.mjs.map +1 -0
- package/dist/chunk-UXADDXCJ.mjs +68 -0
- package/dist/chunk-UXADDXCJ.mjs.map +1 -0
- package/dist/chunk-UYDZZAEK.mjs +11 -0
- package/dist/chunk-UYDZZAEK.mjs.map +1 -0
- package/dist/chunk-VBZTERRM.mjs +94 -0
- package/dist/chunk-VBZTERRM.mjs.map +1 -0
- package/dist/chunk-WJZFE5NE.mjs +17 -0
- package/dist/chunk-WJZFE5NE.mjs.map +1 -0
- package/dist/chunk-WLTLSV2I.mjs +20 -0
- package/dist/chunk-WLTLSV2I.mjs.map +1 -0
- package/dist/chunk-WOSYMEQL.mjs +60 -0
- package/dist/chunk-WOSYMEQL.mjs.map +1 -0
- package/dist/chunk-WSBULPUZ.mjs +30 -0
- package/dist/chunk-WSBULPUZ.mjs.map +1 -0
- package/dist/chunk-WVTNXVBL.mjs +56 -0
- package/dist/chunk-WVTNXVBL.mjs.map +1 -0
- package/dist/chunk-ZHXKBOK2.mjs +22 -0
- package/dist/chunk-ZHXKBOK2.mjs.map +1 -0
- package/dist/chunk-ZPNFXK7Y.mjs +36 -0
- package/dist/chunk-ZPNFXK7Y.mjs.map +1 -0
- package/dist/data/Condition.mjs +29 -0
- package/dist/data/Condition.mjs.map +1 -0
- package/dist/data/DataProvider.mjs +1 -0
- package/dist/data/DataProvider.mjs.map +1 -0
- package/dist/data/Database.mjs +23 -0
- package/dist/data/Database.mjs.map +1 -0
- package/dist/data/Field.mjs +47 -0
- package/dist/data/Field.mjs.map +1 -0
- package/dist/data/InMemoryGateway.mjs +70 -0
- package/dist/data/InMemoryGateway.mjs.map +1 -0
- package/dist/data/Query.mjs +1 -0
- package/dist/data/Query.mjs.map +1 -0
- package/dist/data/QueryProvider.mjs +1 -0
- package/dist/data/QueryProvider.mjs.map +1 -0
- package/dist/domain/Audit.mjs +36 -0
- package/dist/domain/Audit.mjs.map +1 -0
- package/dist/domain/Child.mjs +54 -0
- package/dist/domain/Child.mjs.map +1 -0
- package/dist/domain/DateTime.mjs +36 -0
- package/dist/domain/DateTime.mjs.map +1 -0
- package/dist/domain/Entity.mjs +71 -0
- package/dist/domain/Entity.mjs.map +1 -0
- package/dist/domain/Repo.mjs +96 -0
- package/dist/domain/Repo.mjs.map +1 -0
- package/dist/domain/Struct.mjs +33 -0
- package/dist/domain/Struct.mjs.map +1 -0
- package/dist/domain/Typo.mjs +114 -0
- package/dist/domain/Typo.mjs.map +1 -0
- package/dist/http/CacheControl.mjs +66 -0
- package/dist/http/CacheControl.mjs.map +1 -0
- package/dist/http/ContentType.mjs +21 -0
- package/dist/http/ContentType.mjs.map +1 -0
- package/dist/http/HttpHeader.mjs +8 -0
- package/dist/http/HttpHeader.mjs.map +1 -0
- package/dist/http/HttpStatus.mjs +25 -0
- package/dist/http/HttpStatus.mjs.map +1 -0
- package/dist/http/HttpVerb.mjs +21 -0
- package/dist/http/HttpVerb.mjs.map +1 -0
- package/dist/http/LocalRequestStore.mjs +29 -0
- package/dist/http/LocalRequestStore.mjs.map +1 -0
- package/dist/http/Request.mjs +1 -0
- package/dist/http/Request.mjs.map +1 -0
- package/dist/http/RequestOptions.mjs +30 -0
- package/dist/http/RequestOptions.mjs.map +1 -0
- package/dist/http/RequestProvider.mjs +1 -0
- package/dist/http/RequestProvider.mjs.map +1 -0
- package/dist/http/Response.mjs +13 -0
- package/dist/http/Response.mjs.map +1 -0
- package/dist/http/RestResult.mjs +34 -0
- package/dist/http/RestResult.mjs.map +1 -0
- package/dist/http/toResponse.mjs +33 -0
- package/dist/http/toResponse.mjs.map +1 -0
- package/dist/index.mjs +115 -3476
- package/dist/index.mjs.map +1 -1
- package/dist/process/App.mjs +30 -0
- package/dist/process/App.mjs.map +1 -0
- package/dist/process/Manage.mjs +47 -0
- package/dist/process/Manage.mjs.map +1 -0
- package/dist/process/Scope.mjs +22 -0
- package/dist/process/Scope.mjs.map +1 -0
- package/dist/process/Search.mjs +31 -0
- package/dist/process/Search.mjs.map +1 -0
- package/dist/process/UseCase.mjs +53 -0
- package/dist/process/UseCase.mjs.map +1 -0
- package/dist/resources/Req.mjs +57 -0
- package/dist/resources/Req.mjs.map +1 -0
- package/dist/security/Jwt.mjs +77 -0
- package/dist/security/Jwt.mjs.map +1 -0
- package/dist/services/Api.mjs +44 -0
- package/dist/services/Api.mjs.map +1 -0
- package/dist/services/ApiGateway.mjs +45 -0
- package/dist/services/ApiGateway.mjs.map +1 -0
- package/dist/services/AxiosProvider.mjs +40 -0
- package/dist/services/AxiosProvider.mjs.map +1 -0
- package/dist/services/MappedRouteGateway.mjs +78 -0
- package/dist/services/MappedRouteGateway.mjs.map +1 -0
- package/dist/services/RouteGateway.mjs +46 -0
- package/dist/services/RouteGateway.mjs.map +1 -0
- package/dist/services/ViewRouteGateway.mjs +79 -0
- package/dist/services/ViewRouteGateway.mjs.map +1 -0
- package/dist/sql/Clause.mjs +24 -0
- package/dist/sql/Clause.mjs.map +1 -0
- package/dist/sql/Column.mjs +37 -0
- package/dist/sql/Column.mjs.map +1 -0
- package/dist/sql/Count.mjs +20 -0
- package/dist/sql/Count.mjs.map +1 -0
- package/dist/sql/Delete.mjs +19 -0
- package/dist/sql/Delete.mjs.map +1 -0
- package/dist/sql/Insert.mjs +21 -0
- package/dist/sql/Insert.mjs.map +1 -0
- package/dist/sql/Join.mjs +8 -0
- package/dist/sql/Join.mjs.map +1 -0
- package/dist/sql/Select.mjs +19 -0
- package/dist/sql/Select.mjs.map +1 -0
- package/dist/sql/SqlQuery.mjs +18 -0
- package/dist/sql/SqlQuery.mjs.map +1 -0
- package/dist/sql/Table.mjs +93 -0
- package/dist/sql/Table.mjs.map +1 -0
- package/dist/sql/TableGateway.mjs +72 -0
- package/dist/sql/TableGateway.mjs.map +1 -0
- package/dist/sql/Update.mjs +21 -0
- package/dist/sql/Update.mjs.map +1 -0
- package/dist/types/AnyKey.mjs +1 -0
- package/dist/types/AnyKey.mjs.map +1 -0
- package/dist/types/Array.mjs +16 -0
- package/dist/types/Array.mjs.map +1 -0
- package/dist/types/Builder.mjs +26 -0
- package/dist/types/Builder.mjs.map +1 -0
- package/dist/types/Cache.mjs +29 -0
- package/dist/types/Cache.mjs.map +1 -0
- package/dist/types/CacheAge.mjs +33 -0
- package/dist/types/CacheAge.mjs.map +1 -0
- package/dist/types/Case.mjs +29 -0
- package/dist/types/Case.mjs.map +1 -0
- package/dist/types/Constructor.mjs +23 -0
- package/dist/types/Constructor.mjs.map +1 -0
- package/dist/types/Context.mjs +28 -0
- package/dist/types/Context.mjs.map +1 -0
- package/dist/types/Currency.mjs +15 -0
- package/dist/types/Currency.mjs.map +1 -0
- package/dist/types/Enum.mjs +24 -0
- package/dist/types/Enum.mjs.map +1 -0
- package/dist/types/Environment.mjs +28 -0
- package/dist/types/Environment.mjs.map +1 -0
- package/dist/types/ErrorOrigin.mjs +1 -0
- package/dist/types/ErrorOrigin.mjs.map +1 -0
- package/dist/types/Exception.mjs +26 -0
- package/dist/types/Exception.mjs.map +1 -0
- package/dist/types/Falsy.mjs +10 -0
- package/dist/types/Falsy.mjs.map +1 -0
- package/dist/types/Func.mjs +8 -0
- package/dist/types/Func.mjs.map +1 -0
- package/dist/types/Gateway.mjs +24 -0
- package/dist/types/Gateway.mjs.map +1 -0
- package/dist/types/Get.mjs +13 -0
- package/dist/types/Get.mjs.map +1 -0
- package/dist/types/Id.mjs +13 -0
- package/dist/types/Id.mjs.map +1 -0
- package/dist/types/IdName.mjs +1 -0
- package/dist/types/IdName.mjs.map +1 -0
- package/dist/types/Identity.mjs +1 -0
- package/dist/types/Identity.mjs.map +1 -0
- package/dist/types/Indexed.mjs +15 -0
- package/dist/types/Indexed.mjs.map +1 -0
- package/dist/types/Is.mjs +42 -0
- package/dist/types/Is.mjs.map +1 -0
- package/dist/types/IsA.mjs +16 -0
- package/dist/types/IsA.mjs.map +1 -0
- package/dist/types/IsDate.mjs +14 -0
- package/dist/types/IsDate.mjs.map +1 -0
- package/dist/types/IsEqual.mjs +30 -0
- package/dist/types/IsEqual.mjs.map +1 -0
- package/dist/types/Json.mjs +29 -0
- package/dist/types/Json.mjs.map +1 -0
- package/dist/types/List.mjs +27 -0
- package/dist/types/List.mjs.map +1 -0
- package/dist/types/Message.mjs +11 -0
- package/dist/types/Message.mjs.map +1 -0
- package/dist/types/Meta.mjs +19 -0
- package/dist/types/Meta.mjs.map +1 -0
- package/dist/types/Nullish.mjs +8 -0
- package/dist/types/Nullish.mjs.map +1 -0
- package/dist/types/Number.mjs +30 -0
- package/dist/types/Number.mjs.map +1 -0
- package/dist/types/Object.mjs +24 -0
- package/dist/types/Object.mjs.map +1 -0
- package/dist/types/PageList.mjs +40 -0
- package/dist/types/PageList.mjs.map +1 -0
- package/dist/types/Parser.mjs +80 -0
- package/dist/types/Parser.mjs.map +1 -0
- package/dist/types/Primitive.mjs +9 -0
- package/dist/types/Primitive.mjs.map +1 -0
- package/dist/types/Repository.mjs +24 -0
- package/dist/types/Repository.mjs.map +1 -0
- package/dist/types/Result.mjs +23 -0
- package/dist/types/Result.mjs.map +1 -0
- package/dist/types/Results.mjs +26 -0
- package/dist/types/Results.mjs.map +1 -0
- package/dist/types/Sort.mjs +10 -0
- package/dist/types/Sort.mjs.map +1 -0
- package/dist/types/Tag.mjs +26 -0
- package/dist/types/Tag.mjs.map +1 -0
- package/dist/types/Template.mjs +21 -0
- package/dist/types/Template.mjs.map +1 -0
- package/dist/types/Text.mjs +21 -0
- package/dist/types/Text.mjs.map +1 -0
- package/dist/types/ToText.mjs +23 -0
- package/dist/types/ToText.mjs.map +1 -0
- package/dist/types/Try.mjs +31 -0
- package/dist/types/Try.mjs.map +1 -0
- package/dist/types/TypeGuard.mjs +1 -0
- package/dist/types/TypeGuard.mjs.map +1 -0
- package/dist/types/Types.mjs +1 -0
- package/dist/types/Types.mjs.map +1 -0
- package/dist/types/Uri.mjs +119 -0
- package/dist/types/Uri.mjs.map +1 -0
- package/dist/types/Uuid.mjs +16 -0
- package/dist/types/Uuid.mjs.map +1 -0
- package/dist/types/Validatable.mjs +13 -0
- package/dist/types/Validatable.mjs.map +1 -0
- package/dist/types/Value.mjs +14 -0
- package/dist/types/Value.mjs.map +1 -0
- package/dist/utils/Base64.mjs +12 -0
- package/dist/utils/Base64.mjs.map +1 -0
- package/dist/utils/Convert.mjs +14 -0
- package/dist/utils/Convert.mjs.map +1 -0
- package/dist/utils/If.mjs +25 -0
- package/dist/utils/If.mjs.map +1 -0
- package/dist/utils/Loading.mjs +11 -0
- package/dist/utils/Loading.mjs.map +1 -0
- package/dist/utils/Log.mjs +21 -0
- package/dist/utils/Log.mjs.map +1 -0
- package/dist/utils/Mapper.mjs +28 -0
- package/dist/utils/Mapper.mjs.map +1 -0
- package/dist/utils/Promise.mjs +35 -0
- package/dist/utils/Promise.mjs.map +1 -0
- package/dist/utils/Property.mjs +13 -0
- package/dist/utils/Property.mjs.map +1 -0
- package/dist/utils/Seconds.mjs +18 -0
- package/dist/utils/Seconds.mjs.map +1 -0
- package/dist/utils/Sentence.mjs +71 -0
- package/dist/utils/Sentence.mjs.map +1 -0
- package/dist/utils/State.mjs +12 -0
- package/dist/utils/State.mjs.map +1 -0
- package/dist/utils/Traverse.mjs +12 -0
- package/dist/utils/Traverse.mjs.map +1 -0
- package/dist/utils/View.mjs +41 -0
- package/dist/utils/View.mjs.map +1 -0
- package/dist/utils/Wait.mjs +17 -0
- package/dist/utils/Wait.mjs.map +1 -0
- package/dist/validation/Contraints.mjs +65 -0
- package/dist/validation/Contraints.mjs.map +1 -0
- package/dist/validation/Validate.mjs +35 -0
- package/dist/validation/Validate.mjs.map +1 -0
- package/dist/validation/When.mjs +31 -0
- package/dist/validation/When.mjs.map +1 -0
- package/package.json +4 -13
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import {
|
|
2
|
+
text
|
|
3
|
+
} from "./chunk-RWGCMC6L.mjs";
|
|
4
|
+
import {
|
|
5
|
+
Enum
|
|
6
|
+
} from "./chunk-UXADDXCJ.mjs";
|
|
7
|
+
import {
|
|
8
|
+
asString
|
|
9
|
+
} from "./chunk-BDA5LB4S.mjs";
|
|
10
|
+
import {
|
|
11
|
+
isDefined
|
|
12
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
13
|
+
|
|
14
|
+
// src/types/Exception.ts
|
|
15
|
+
var Exception = class _Exception extends Enum {
|
|
16
|
+
constructor(message, id, reason) {
|
|
17
|
+
super(message, id ?? text(message).pascal.toString());
|
|
18
|
+
this.message = message;
|
|
19
|
+
this.reason = reason;
|
|
20
|
+
}
|
|
21
|
+
static AlreadyExists = new _Exception("Subject already exists");
|
|
22
|
+
static DoesNotExist = new _Exception("Does not exist");
|
|
23
|
+
static IsMissingId = new _Exception("Subject is missing an id");
|
|
24
|
+
static IsNotImplemented = new _Exception("Is not implemented");
|
|
25
|
+
static IsNotValid = new _Exception("Is not valid");
|
|
26
|
+
static Unknown = new _Exception("Unknown error");
|
|
27
|
+
static CouldNotExecute = (target) => new _Exception(`Could not execute ${target}.`, "CouldNotExecute");
|
|
28
|
+
static CouldNotValidate = (target) => new _Exception(`Could not validate ${target}.`, "CouldNotValidate");
|
|
29
|
+
static EnvironmentVariableNotFound = (variable) => new _Exception(`Environment variable ${text(variable).upper} could not be found.`, "EnvironmentVariableNotFound");
|
|
30
|
+
because = (reason) => new _Exception(this.message, this.id, reason);
|
|
31
|
+
};
|
|
32
|
+
var isException = (e, t) => e instanceof Exception && (isDefined(t) ? e.equals(asString(t)) : true);
|
|
33
|
+
var isDoesNotExist = (e) => e instanceof Exception && Exception.DoesNotExist.equals(e);
|
|
34
|
+
|
|
35
|
+
export {
|
|
36
|
+
Exception,
|
|
37
|
+
isException,
|
|
38
|
+
isDoesNotExist
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=chunk-DEFTEK45.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Exception.ts"],"sourcesContent":["import { asString, Text } from './Text';\nimport { Enum } from './Enum';\nimport { isDefined } from './Is';\nimport { Id } from './Id';\n\nimport { text } from './ToText';\n\nexport class Exception extends Enum {\n static readonly AlreadyExists = new Exception('Subject already exists');\n static readonly DoesNotExist = new Exception('Does not exist');\n static readonly IsMissingId = new Exception('Subject is missing an id');\n static readonly IsNotImplemented = new Exception('Is not implemented');\n static readonly IsNotValid = new Exception('Is not valid');\n static readonly Unknown = new Exception('Unknown error');\n\n constructor(\n readonly message: string,\n id?: Id,\n readonly reason?: Text\n ) {\n super(message, id ?? text(message).pascal.toString());\n }\n\n static readonly CouldNotExecute = (target: Text): Exception => new Exception(`Could not execute ${target}.`, 'CouldNotExecute');\n\n static readonly CouldNotValidate = (target: Text): Exception => new Exception(`Could not validate ${target}.`, 'CouldNotValidate');\n\n static readonly EnvironmentVariableNotFound = (variable: Text): Exception =>\n new Exception(`Environment variable ${text(variable).upper} could not be found.`, 'EnvironmentVariableNotFound');\n\n because = (reason: Text): Exception => new Exception(this.message, this.id, reason);\n}\n\nexport const isException = (e?: unknown, t?: Text): e is Exception => e instanceof Exception && (isDefined(t) ? e.equals(asString(t)) : true);\nexport const isDoesNotExist = (e?: unknown): e is Exception => e instanceof Exception && Exception.DoesNotExist.equals(e);\n"],"mappings":";;;;;;;;;;;;;;AAOO,IAAM,YAAN,MAAM,mBAAkB,KAAK;AAAA,EAQlC,YACW,SACT,IACS,QACT;AACA,UAAM,SAAS,MAAM,KAAK,OAAO,EAAE,OAAO,SAAS,CAAC;AAJ3C;AAEA;AAAA,EAGX;AAAA,EAbA,OAAgB,gBAAgB,IAAI,WAAU,wBAAwB;AAAA,EACtE,OAAgB,eAAe,IAAI,WAAU,gBAAgB;AAAA,EAC7D,OAAgB,cAAc,IAAI,WAAU,0BAA0B;AAAA,EACtE,OAAgB,mBAAmB,IAAI,WAAU,oBAAoB;AAAA,EACrE,OAAgB,aAAa,IAAI,WAAU,cAAc;AAAA,EACzD,OAAgB,UAAU,IAAI,WAAU,eAAe;AAAA,EAUvD,OAAgB,kBAAkB,CAAC,WAA4B,IAAI,WAAU,qBAAqB,MAAM,KAAK,iBAAiB;AAAA,EAE9H,OAAgB,mBAAmB,CAAC,WAA4B,IAAI,WAAU,sBAAsB,MAAM,KAAK,kBAAkB;AAAA,EAEjI,OAAgB,8BAA8B,CAAC,aAC7C,IAAI,WAAU,wBAAwB,KAAK,QAAQ,EAAE,KAAK,wBAAwB,6BAA6B;AAAA,EAEjH,UAAU,CAAC,WAA4B,IAAI,WAAU,KAAK,SAAS,KAAK,IAAI,MAAM;AACpF;AAEO,IAAM,cAAc,CAAC,GAAa,MAA6B,aAAa,cAAc,UAAU,CAAC,IAAI,EAAE,OAAO,SAAS,CAAC,CAAC,IAAI;AACjI,IAAM,iBAAiB,CAAC,MAAgC,aAAa,aAAa,UAAU,aAAa,OAAO,CAAC;","names":[]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
// src/types/Is.ts
|
|
2
|
+
var isDefined = (o) => o !== void 0 && o !== null;
|
|
3
|
+
var isUndefined = (v) => v === void 0 || v === null;
|
|
4
|
+
var isEmpty = (o) => o === "" || o === null || o === void 0 || isArray(o) && o.length === 0;
|
|
5
|
+
var isNotEmpty = (o) => o !== "" && o !== null && o !== void 0 && (!isArray(o) || o.length > 0);
|
|
6
|
+
var isString = (o) => o instanceof String || typeof o === "string";
|
|
7
|
+
var isIsoDateString = (o) => isString(o) && /^\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z)$/.test(o);
|
|
8
|
+
var isBoolean = (o) => isDefined(o) && typeof o === "boolean";
|
|
9
|
+
var isTrue = (o) => isFunction(o) ? isTrue(o()) : isBoolean(o) ? o : !!o;
|
|
10
|
+
var isNumber = (o) => isDefined(o) && typeof o === "number" && !Number.isNaN(o);
|
|
11
|
+
var isObject = (o) => o != null && typeof o === "object" && !isArray(o);
|
|
12
|
+
var isEmptyObject = (o) => isObject(o) && Object.getOwnPropertyNames(o).length === 0;
|
|
13
|
+
var isFunction = (o) => isDefined(o) && typeof o === "function";
|
|
14
|
+
var isArray = (o) => isDefined(o) && o instanceof Array;
|
|
15
|
+
var isIn = (o, values) => isArray(values) && values.some((v) => v === o);
|
|
16
|
+
var isIntersecting = (o, values) => isArray(o) && isArray(values) && o.some((ov) => isIn(ov, values));
|
|
17
|
+
var isError = (e) => isDefined(e) && e instanceof Error;
|
|
18
|
+
var isNotPresent = (...os) => os.some(
|
|
19
|
+
(o) => o === null || o === void 0 || o === "" || o instanceof Array && o.length === 0 || typeof o === "object" && Object.getOwnPropertyNames(o).length === 0
|
|
20
|
+
);
|
|
21
|
+
var isPresent = (...os) => !isNotPresent(...os);
|
|
22
|
+
|
|
23
|
+
export {
|
|
24
|
+
isDefined,
|
|
25
|
+
isUndefined,
|
|
26
|
+
isEmpty,
|
|
27
|
+
isNotEmpty,
|
|
28
|
+
isString,
|
|
29
|
+
isIsoDateString,
|
|
30
|
+
isBoolean,
|
|
31
|
+
isTrue,
|
|
32
|
+
isNumber,
|
|
33
|
+
isObject,
|
|
34
|
+
isEmptyObject,
|
|
35
|
+
isFunction,
|
|
36
|
+
isArray,
|
|
37
|
+
isIn,
|
|
38
|
+
isIntersecting,
|
|
39
|
+
isError,
|
|
40
|
+
isNotPresent,
|
|
41
|
+
isPresent
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=chunk-DEJ7A5PY.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Is.ts"],"sourcesContent":["export const isDefined = <T = unknown>(o?: T): o is NonNullable<T> => o !== undefined && o !== null;\n\nexport const isUndefined = (v?: unknown): v is never => v === undefined || v === null;\n\nexport const isEmpty = (o?: unknown): boolean => o === '' || o === null || o === undefined || (isArray(o) && o.length === 0);\n\nexport const isNotEmpty = <T = unknown>(o?: unknown): o is NonNullable<T> => o !== '' && o !== null && o !== undefined && (!isArray(o) || o.length > 0);\n\nexport const isString = (o?: unknown): o is string => o instanceof String || typeof o === 'string';\n\nexport const isIsoDateString = (o?: unknown): o is string =>\n isString(o) && /^\\d{4}-[01]\\d-[0-3]\\dT[0-2]\\d:[0-5]\\d:[0-5]\\d\\.\\d+([+-][0-2]\\d:[0-5]\\d|Z)$/.test(o);\n\nexport const isBoolean = (o?: unknown): o is boolean => isDefined(o) && typeof o === 'boolean';\n\nexport const isTrue = (o?: unknown): o is true => (isFunction(o) ? isTrue(o()) : isBoolean(o) ? o : !!o);\n\nexport const isNumber = (o?: unknown): o is number => isDefined(o) && typeof o === 'number' && !Number.isNaN(o);\n\nexport const isObject = (o?: unknown): o is Record<string, unknown> => o != null && typeof o === 'object' && !isArray(o);\n\nexport const isEmptyObject = (o?: unknown): boolean => isObject(o) && Object.getOwnPropertyNames(o).length === 0;\n\nexport const isFunction = (o?: unknown): o is (...params: unknown[]) => unknown => isDefined(o) && typeof o === 'function';\n\nexport const isArray = <T = any>(o?: unknown): o is Array<T> => isDefined(o) && o instanceof Array;\n\nexport const isIn = (o: unknown, values: unknown[]): boolean => isArray(values) && values.some(v => v === o);\n\nexport const isIntersecting = (o?: unknown[], values?: unknown[]): boolean => isArray(o) && isArray(values) && o.some(ov => isIn(ov, values));\n\nexport const isError = (e: unknown): e is Error => isDefined(e) && e instanceof Error;\n\nexport const isNotPresent = (...os: unknown[]): boolean =>\n os.some(\n o =>\n o === null ||\n o === undefined ||\n o === '' ||\n (o instanceof Array && o.length === 0) ||\n (typeof o === 'object' && Object.getOwnPropertyNames(o).length === 0)\n );\n\nexport const isPresent = (...os: unknown[]): boolean => !isNotPresent(...os);\n"],"mappings":";AAAO,IAAM,YAAY,CAAc,MAA+B,MAAM,UAAa,MAAM;AAExF,IAAM,cAAc,CAAC,MAA4B,MAAM,UAAa,MAAM;AAE1E,IAAM,UAAU,CAAC,MAAyB,MAAM,MAAM,MAAM,QAAQ,MAAM,UAAc,QAAQ,CAAC,KAAK,EAAE,WAAW;AAEnH,IAAM,aAAa,CAAc,MAAqC,MAAM,MAAM,MAAM,QAAQ,MAAM,WAAc,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS;AAE9I,IAAM,WAAW,CAAC,MAA6B,aAAa,UAAU,OAAO,MAAM;AAEnF,IAAM,kBAAkB,CAAC,MAC9B,SAAS,CAAC,KAAK,6EAA6E,KAAK,CAAC;AAE7F,IAAM,YAAY,CAAC,MAA8B,UAAU,CAAC,KAAK,OAAO,MAAM;AAE9E,IAAM,SAAS,CAAC,MAA4B,WAAW,CAAC,IAAI,OAAO,EAAE,CAAC,IAAI,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC;AAE/F,IAAM,WAAW,CAAC,MAA6B,UAAU,CAAC,KAAK,OAAO,MAAM,YAAY,CAAC,OAAO,MAAM,CAAC;AAEvG,IAAM,WAAW,CAAC,MAA8C,KAAK,QAAQ,OAAO,MAAM,YAAY,CAAC,QAAQ,CAAC;AAEhH,IAAM,gBAAgB,CAAC,MAAyB,SAAS,CAAC,KAAK,OAAO,oBAAoB,CAAC,EAAE,WAAW;AAExG,IAAM,aAAa,CAAC,MAAwD,UAAU,CAAC,KAAK,OAAO,MAAM;AAEzG,IAAM,UAAU,CAAU,MAA+B,UAAU,CAAC,KAAK,aAAa;AAEtF,IAAM,OAAO,CAAC,GAAY,WAA+B,QAAQ,MAAM,KAAK,OAAO,KAAK,OAAK,MAAM,CAAC;AAEpG,IAAM,iBAAiB,CAAC,GAAe,WAAgC,QAAQ,CAAC,KAAK,QAAQ,MAAM,KAAK,EAAE,KAAK,QAAM,KAAK,IAAI,MAAM,CAAC;AAErI,IAAM,UAAU,CAAC,MAA2B,UAAU,CAAC,KAAK,aAAa;AAEzE,IAAM,eAAe,IAAI,OAC9B,GAAG;AAAA,EACD,OACE,MAAM,QACN,MAAM,UACN,MAAM,MACL,aAAa,SAAS,EAAE,WAAW,KACnC,OAAO,MAAM,YAAY,OAAO,oBAAoB,CAAC,EAAE,WAAW;AACvE;AAEK,IAAM,YAAY,IAAI,OAA2B,CAAC,aAAa,GAAG,EAAE;","names":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import {
|
|
2
|
+
rest
|
|
3
|
+
} from "./chunk-4DJUHTQO.mjs";
|
|
4
|
+
import {
|
|
5
|
+
toHttpStatus
|
|
6
|
+
} from "./chunk-VBZTERRM.mjs";
|
|
7
|
+
|
|
8
|
+
// src/http/toResponse.ts
|
|
9
|
+
function toResponse(status, body, headers) {
|
|
10
|
+
return {
|
|
11
|
+
status: toHttpStatus(status),
|
|
12
|
+
headers,
|
|
13
|
+
body: rest.to(body)
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export {
|
|
18
|
+
toResponse
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=chunk-DLA22ZCC.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/http/toResponse.ts"],"sourcesContent":["import { HttpStatus, toHttpStatus } from './HttpStatus';\nimport { rest } from './RestResult';\nimport { Response } from './Response';\nimport { Code } from '../types/Id';\n\nexport function toResponse(status: HttpStatus | Code, body?: unknown, headers?: { [key: string]: any }): Response {\n return {\n status: toHttpStatus(status),\n headers,\n body: rest.to(body),\n };\n}\n"],"mappings":";;;;;;;;AAKO,SAAS,WAAW,QAA2B,MAAgB,SAA4C;AAChH,SAAO;AAAA,IACL,QAAQ,aAAa,MAAM;AAAA,IAC3B;AAAA,IACA,MAAM,KAAK,GAAG,IAAI;AAAA,EACpB;AACF;","names":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import {
|
|
2
|
+
isIn
|
|
3
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
4
|
+
|
|
5
|
+
// src/types/Primitive.ts
|
|
6
|
+
var isPrimitive = (v) => {
|
|
7
|
+
return v === null || v === void 0 || isIn(typeof v, ["string", "number", "bigint", "boolean", "symbol"]);
|
|
8
|
+
};
|
|
9
|
+
|
|
10
|
+
export {
|
|
11
|
+
isPrimitive
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=chunk-DXQSIBC7.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Primitive.ts"],"sourcesContent":["import { isIn } from './Is';\n\nexport type Primitive = string | number | bigint | boolean | symbol | null | undefined;\n\nexport const isPrimitive = (v?: unknown): v is Primitive => {\n return v === null || v === undefined || isIn(typeof v, ['string', 'number', 'bigint', 'boolean', 'symbol']);\n};\n"],"mappings":";;;;;AAIO,IAAM,cAAc,CAAC,MAAgC;AAC1D,SAAO,MAAM,QAAQ,MAAM,UAAa,KAAK,OAAO,GAAG,CAAC,UAAU,UAAU,UAAU,WAAW,QAAQ,CAAC;AAC5G;","names":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import {
|
|
2
|
+
choose
|
|
3
|
+
} from "./chunk-LGLRWA42.mjs";
|
|
4
|
+
import {
|
|
5
|
+
isArray,
|
|
6
|
+
isObject
|
|
7
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
8
|
+
|
|
9
|
+
// src/types/IsEqual.ts
|
|
10
|
+
var isEqualArray = (one, another) => choose([one, another]).case(([o, a]) => !isArray(o) || !isArray(a), false).case(([o, a]) => o?.length !== a?.length, false).else(([o, a]) => !o.some((v, i) => !isEqual(v, a[i])));
|
|
11
|
+
var isEqualObject = (one, another) => choose([Object.keys(one), Object.keys(another)]).case(([keysO, keysA]) => keysO.length !== keysA.length, false).case(([keysO, keysA]) => keysO.some((k) => !keysA.includes(k)), false).case(([keysO]) => keysO.some((k) => !isEqual(one[k], another[k])), false).else(true);
|
|
12
|
+
var isEqual = (one, another) => choose([one, another]).case(([o, a]) => o === a, true).case(
|
|
13
|
+
([o, a]) => isArray(o) || isArray(a),
|
|
14
|
+
([o, a]) => isEqualArray(o, a)
|
|
15
|
+
).case(
|
|
16
|
+
([o, a]) => o == null || a == null || !isObject(o) && !isObject(a),
|
|
17
|
+
([o, a]) => o !== o && a !== a
|
|
18
|
+
).else(([o, a]) => isEqualObject(o, a));
|
|
19
|
+
|
|
20
|
+
export {
|
|
21
|
+
isEqual
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=chunk-ELDS3NWV.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/IsEqual.ts"],"sourcesContent":["import { isArray, isObject } from './Is';\nimport { choose } from './Case';\n\nconst isEqualArray = (one: unknown[], another: unknown[]): boolean =>\n choose([one, another])\n .case(([o, a]) => !isArray(o) || !isArray(a), false)\n .case(([o, a]) => o?.length !== a?.length, false)\n .else(([o, a]) => !o.some((v, i) => !isEqual(v, a[i])));\n\nconst isEqualObject = (one: any, another: any): boolean =>\n choose([Object.keys(one), Object.keys(another)])\n .case(([keysO, keysA]) => keysO.length !== keysA.length, false)\n .case(([keysO, keysA]) => keysO.some(k => !keysA.includes(k)), false)\n .case(([keysO]) => keysO.some(k => !isEqual(one[k], another[k])), false)\n .else(true);\n\nexport const isEqual = (one?: unknown, another?: unknown): boolean =>\n choose([one, another])\n .case(([o, a]) => o === a, true)\n .case(\n ([o, a]) => isArray(o) || isArray(a),\n ([o, a]) => isEqualArray(o as [], a as [])\n )\n .case(\n ([o, a]) => o == null || a == null || (!isObject(o) && !isObject(a)),\n ([o, a]) => o !== o && a !== a\n )\n .else(([o, a]) => isEqualObject(o, a));\n"],"mappings":";;;;;;;;;AAGA,IAAM,eAAe,CAAC,KAAgB,YACpC,OAAO,CAAC,KAAK,OAAO,CAAC,EAClB,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,EAClD,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,WAAW,GAAG,QAAQ,KAAK,EAC/C,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;AAE1D,IAAM,gBAAgB,CAAC,KAAU,YAC/B,OAAO,CAAC,OAAO,KAAK,GAAG,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,EAC5C,KAAK,CAAC,CAAC,OAAO,KAAK,MAAM,MAAM,WAAW,MAAM,QAAQ,KAAK,EAC7D,KAAK,CAAC,CAAC,OAAO,KAAK,MAAM,MAAM,KAAK,OAAK,CAAC,MAAM,SAAS,CAAC,CAAC,GAAG,KAAK,EACnE,KAAK,CAAC,CAAC,KAAK,MAAM,MAAM,KAAK,OAAK,CAAC,QAAQ,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,EACtE,KAAK,IAAI;AAEP,IAAM,UAAU,CAAC,KAAe,YACrC,OAAO,CAAC,KAAK,OAAO,CAAC,EAClB,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,MAAM,GAAG,IAAI,EAC9B;AAAA,EACC,CAAC,CAAC,GAAG,CAAC,MAAM,QAAQ,CAAC,KAAK,QAAQ,CAAC;AAAA,EACnC,CAAC,CAAC,GAAG,CAAC,MAAM,aAAa,GAAS,CAAO;AAC3C,EACC;AAAA,EACC,CAAC,CAAC,GAAG,CAAC,MAAM,KAAK,QAAQ,KAAK,QAAS,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC;AAAA,EAClE,CAAC,CAAC,GAAG,CAAC,MAAM,MAAM,KAAK,MAAM;AAC/B,EACC,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC;","names":[]}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import {
|
|
2
|
+
required,
|
|
3
|
+
valid
|
|
4
|
+
} from "./chunk-GO66AIDJ.mjs";
|
|
5
|
+
import {
|
|
6
|
+
DateTime
|
|
7
|
+
} from "./chunk-QNNYTOR7.mjs";
|
|
8
|
+
import {
|
|
9
|
+
Struct
|
|
10
|
+
} from "./chunk-QMASVXTD.mjs";
|
|
11
|
+
import {
|
|
12
|
+
choose
|
|
13
|
+
} from "./chunk-LGLRWA42.mjs";
|
|
14
|
+
import {
|
|
15
|
+
ctx
|
|
16
|
+
} from "./chunk-PR6DFFCE.mjs";
|
|
17
|
+
import {
|
|
18
|
+
isIdentity
|
|
19
|
+
} from "./chunk-ZHXKBOK2.mjs";
|
|
20
|
+
import {
|
|
21
|
+
__decorateClass
|
|
22
|
+
} from "./chunk-4N72FQFX.mjs";
|
|
23
|
+
|
|
24
|
+
// src/domain/Audit.ts
|
|
25
|
+
var Audit = class extends Struct {
|
|
26
|
+
by = { id: this.state.by?.id, user: this.state.by?.user };
|
|
27
|
+
when = new DateTime(this.state.when);
|
|
28
|
+
constructor(json) {
|
|
29
|
+
super(
|
|
30
|
+
choose(json).is.defined(
|
|
31
|
+
(j) => j,
|
|
32
|
+
(j) => j
|
|
33
|
+
).else({
|
|
34
|
+
by: isIdentity(ctx.request?.identity) ? ctx.request?.identity : { id: 0, user: "easy" },
|
|
35
|
+
when: DateTime.now.toJSON()
|
|
36
|
+
})
|
|
37
|
+
);
|
|
38
|
+
}
|
|
39
|
+
};
|
|
40
|
+
__decorateClass([
|
|
41
|
+
required()
|
|
42
|
+
], Audit.prototype, "by", 2);
|
|
43
|
+
__decorateClass([
|
|
44
|
+
valid()
|
|
45
|
+
], Audit.prototype, "when", 2);
|
|
46
|
+
|
|
47
|
+
export {
|
|
48
|
+
Audit
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=chunk-ELUKCMQZ.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/domain/Audit.ts"],"sourcesContent":["import { Struct } from './Struct';\nimport { DateTime } from './DateTime';\nimport { required, valid } from '../validation/Contraints';\nimport { Identity } from '../types/Identity';\nimport { Json } from '../types/Json';\nimport { choose } from '../types/Case';\nimport { isIdentity } from '../types/IsA';\nimport { ctx } from '../types/Context';\n\nexport class Audit extends Struct {\n @required() readonly by: Identity = { id: this.state.by?.id, user: this.state.by?.user };\n @valid() readonly when: DateTime = new DateTime(this.state.when);\n\n constructor(json?: Json) {\n super(\n choose(json)\n .is.defined(\n j => j,\n j => j\n )\n .else({\n by: isIdentity(ctx.request?.identity) ? ctx.request?.identity : { id: 0, user: 'easy' },\n when: DateTime.now.toJSON(),\n })\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AASO,IAAM,QAAN,cAAoB,OAAO;AAAA,EACX,KAAe,EAAE,IAAI,KAAK,MAAM,IAAI,IAAI,MAAM,KAAK,MAAM,IAAI,KAAK;AAAA,EACrE,OAAiB,IAAI,SAAS,KAAK,MAAM,IAAI;AAAA,EAE/D,YAAY,MAAa;AACvB;AAAA,MACE,OAAO,IAAI,EACR,GAAG;AAAA,QACF,OAAK;AAAA,QACL,OAAK;AAAA,MACP,EACC,KAAK;AAAA,QACJ,IAAI,WAAW,IAAI,SAAS,QAAQ,IAAI,IAAI,SAAS,WAAW,EAAE,IAAI,GAAG,MAAM,OAAO;AAAA,QACtF,MAAM,SAAS,IAAI,OAAO;AAAA,MAC5B,CAAC;AAAA,IACL;AAAA,EACF;AACF;AAhBuB;AAAA,EAApB,SAAS;AAAA,GADC,MACU;AACH;AAAA,EAAjB,MAAM;AAAA,GAFI,MAEO;","names":[]}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import {
|
|
2
|
+
entries,
|
|
3
|
+
values
|
|
4
|
+
} from "./chunk-4VZHB642.mjs";
|
|
5
|
+
import {
|
|
6
|
+
toList
|
|
7
|
+
} from "./chunk-HOVTNDHS.mjs";
|
|
8
|
+
import {
|
|
9
|
+
on,
|
|
10
|
+
use
|
|
11
|
+
} from "./chunk-ZPNFXK7Y.mjs";
|
|
12
|
+
import {
|
|
13
|
+
isDefined
|
|
14
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
15
|
+
|
|
16
|
+
// src/types/Meta.ts
|
|
17
|
+
import "reflect-metadata";
|
|
18
|
+
var ClassMeta = class {
|
|
19
|
+
constructor(subject, data = (subject.prototype ?? subject).constructor) {
|
|
20
|
+
this.subject = subject;
|
|
21
|
+
this.data = data;
|
|
22
|
+
}
|
|
23
|
+
get = (key) => Reflect.getMetadata(key, this.data);
|
|
24
|
+
set = (key, value) => {
|
|
25
|
+
Reflect.defineMetadata(key, value, this.data);
|
|
26
|
+
return value;
|
|
27
|
+
};
|
|
28
|
+
entries = () => entries(this.subject);
|
|
29
|
+
parse = (f, options = {}) => {
|
|
30
|
+
const { initial = {}, skipUndefined = false } = options;
|
|
31
|
+
return this.entries().reduce((a, [k, val]) => use(f(val), (v) => isDefined(v) || !skipUndefined ? on(a, (a2) => a2[k] = v) : a), initial);
|
|
32
|
+
};
|
|
33
|
+
properties = (key) => toList([...Object.getOwnPropertyNames(this.subject), ...Object.getOwnPropertyNames(Object.getPrototypeOf(this.subject))]).map((p) => this.property(p)).filter((p) => key ? p.get(key) : p);
|
|
34
|
+
keys = (key) => this.properties().map((p) => p.get(key)).reduce((list, u) => u ? list.add(u) : list, toList());
|
|
35
|
+
values = () => values(this.subject);
|
|
36
|
+
property = (property) => new PropertyMeta(this.subject, property);
|
|
37
|
+
};
|
|
38
|
+
var PropertyMeta = class {
|
|
39
|
+
constructor(subject, property, data = Reflect.getMetadata(property, subject)) {
|
|
40
|
+
this.subject = subject;
|
|
41
|
+
this.property = property;
|
|
42
|
+
this.data = data;
|
|
43
|
+
}
|
|
44
|
+
get value() {
|
|
45
|
+
return this.subject[this.property];
|
|
46
|
+
}
|
|
47
|
+
get = (key) => isDefined(this.data) && isDefined(this.data[key]) ? this.data[key] : void 0;
|
|
48
|
+
set = (key, value) => {
|
|
49
|
+
Reflect.defineMetadata(this.property, { ...this.data, [key]: value }, this.subject);
|
|
50
|
+
return value;
|
|
51
|
+
};
|
|
52
|
+
};
|
|
53
|
+
var meta = (subject) => new ClassMeta(subject ?? {});
|
|
54
|
+
|
|
55
|
+
export {
|
|
56
|
+
meta
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=chunk-FN7HN3YK.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Meta.ts"],"sourcesContent":["import 'reflect-metadata';\nimport { List, toList } from './List';\nimport { isDefined } from './Is';\nimport { on, use } from './Constructor';\nimport { Optional } from './Types';\nimport { Entry, entries, values } from './Object';\n\ntype MetaParseOptions = { initial?: any; skipUndefined?: boolean };\n\nclass ClassMeta {\n constructor(\n readonly subject: any,\n private readonly data: any = (subject.prototype ?? subject).constructor\n ) {}\n\n get = <T>(key: string): T => Reflect.getMetadata(key, this.data) as T;\n\n set = <T>(key: string, value: T): T => {\n Reflect.defineMetadata(key, value, this.data);\n return value;\n };\n\n entries = <T = unknown>(): List<Entry<T>> => entries<T>(this.subject);\n\n parse = <Out, Value>(f: (v: Value) => Out, options: MetaParseOptions = {}): Record<string, Out> => {\n const { initial = {}, skipUndefined = false } = options;\n return this.entries<Value>().reduce((a, [k, val]) => use(f(val), v => (isDefined(v) || !skipUndefined ? on(a, a => (a[k] = v)) : a)), initial);\n };\n\n properties = (key?: string): List<PropertyMeta> =>\n toList([...Object.getOwnPropertyNames(this.subject), ...Object.getOwnPropertyNames(Object.getPrototypeOf(this.subject))])\n .map(p => this.property(p))\n .filter(p => (key ? p.get(key) : p));\n\n keys = <T = any>(key: string): List<T> =>\n this.properties()\n .map(p => p.get<T>(key))\n .reduce((list, u) => (u ? list.add(u) : list), toList<T>());\n\n values = <T = unknown>(): List<T> => values<T>(this.subject);\n\n property = (property: string | symbol): PropertyMeta => new PropertyMeta(this.subject, property);\n}\n\nclass PropertyMeta {\n constructor(\n readonly subject: any,\n readonly property: string | symbol,\n private readonly data = Reflect.getMetadata(property, subject)\n ) {}\n\n get value(): any {\n return this.subject[this.property];\n }\n\n get = <T>(key: string): Optional<T> => (isDefined(this.data) && isDefined(this.data[key]) ? (this.data[key] as T) : undefined);\n\n set = <T>(key: string, value: T): T => {\n Reflect.defineMetadata(this.property, { ...this.data, [key]: value }, this.subject);\n return value;\n };\n}\n\nexport const meta = (subject: unknown): ClassMeta => new ClassMeta(subject ?? {});\n"],"mappings":";;;;;;;;;;;;;;;;AAAA,OAAO;AASP,IAAM,YAAN,MAAgB;AAAA,EACd,YACW,SACQ,QAAa,QAAQ,aAAa,SAAS,aAC5D;AAFS;AACQ;AAAA,EAChB;AAAA,EAEH,MAAM,CAAI,QAAmB,QAAQ,YAAY,KAAK,KAAK,IAAI;AAAA,EAE/D,MAAM,CAAI,KAAa,UAAgB;AACrC,YAAQ,eAAe,KAAK,OAAO,KAAK,IAAI;AAC5C,WAAO;AAAA,EACT;AAAA,EAEA,UAAU,MAAmC,QAAW,KAAK,OAAO;AAAA,EAEpE,QAAQ,CAAa,GAAsB,UAA4B,CAAC,MAA2B;AACjG,UAAM,EAAE,UAAU,CAAC,GAAG,gBAAgB,MAAM,IAAI;AAChD,WAAO,KAAK,QAAe,EAAE,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,MAAM,IAAI,EAAE,GAAG,GAAG,OAAM,UAAU,CAAC,KAAK,CAAC,gBAAgB,GAAG,GAAG,CAAAA,OAAMA,GAAE,CAAC,IAAI,CAAE,IAAI,CAAE,GAAG,OAAO;AAAA,EAC/I;AAAA,EAEA,aAAa,CAAC,QACZ,OAAO,CAAC,GAAG,OAAO,oBAAoB,KAAK,OAAO,GAAG,GAAG,OAAO,oBAAoB,OAAO,eAAe,KAAK,OAAO,CAAC,CAAC,CAAC,EACrH,IAAI,OAAK,KAAK,SAAS,CAAC,CAAC,EACzB,OAAO,OAAM,MAAM,EAAE,IAAI,GAAG,IAAI,CAAE;AAAA,EAEvC,OAAO,CAAU,QACf,KAAK,WAAW,EACb,IAAI,OAAK,EAAE,IAAO,GAAG,CAAC,EACtB,OAAO,CAAC,MAAM,MAAO,IAAI,KAAK,IAAI,CAAC,IAAI,MAAO,OAAU,CAAC;AAAA,EAE9D,SAAS,MAA4B,OAAU,KAAK,OAAO;AAAA,EAE3D,WAAW,CAAC,aAA4C,IAAI,aAAa,KAAK,SAAS,QAAQ;AACjG;AAEA,IAAM,eAAN,MAAmB;AAAA,EACjB,YACW,SACA,UACQ,OAAO,QAAQ,YAAY,UAAU,OAAO,GAC7D;AAHS;AACA;AACQ;AAAA,EAChB;AAAA,EAEH,IAAI,QAAa;AACf,WAAO,KAAK,QAAQ,KAAK,QAAQ;AAAA,EACnC;AAAA,EAEA,MAAM,CAAI,QAA8B,UAAU,KAAK,IAAI,KAAK,UAAU,KAAK,KAAK,GAAG,CAAC,IAAK,KAAK,KAAK,GAAG,IAAU;AAAA,EAEpH,MAAM,CAAI,KAAa,UAAgB;AACrC,YAAQ,eAAe,KAAK,UAAU,EAAE,GAAG,KAAK,MAAM,CAAC,GAAG,GAAG,MAAM,GAAG,KAAK,OAAO;AAClF,WAAO;AAAA,EACT;AACF;AAEO,IAAM,OAAO,CAAC,YAAgC,IAAI,UAAU,WAAW,CAAC,CAAC;","names":["a"]}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import {
|
|
2
|
+
convert
|
|
3
|
+
} from "./chunk-MDXL65W4.mjs";
|
|
4
|
+
import {
|
|
5
|
+
ofGet
|
|
6
|
+
} from "./chunk-SJGQU3OG.mjs";
|
|
7
|
+
|
|
8
|
+
// src/utils/Property.ts
|
|
9
|
+
var Property = class {
|
|
10
|
+
constructor(property, options) {
|
|
11
|
+
this.property = property;
|
|
12
|
+
this.options = options;
|
|
13
|
+
this.options = { ...options, convert: options?.convert ?? convert.default };
|
|
14
|
+
}
|
|
15
|
+
in = (source = {}) => this.options?.convert?.to(source[this.property] ?? ofGet(this.options?.dflt));
|
|
16
|
+
out = (source = {}, key = "") => this.options?.convert?.from(source[key]);
|
|
17
|
+
toString() {
|
|
18
|
+
return this.property;
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
export {
|
|
23
|
+
Property
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=chunk-GCY5A63A.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/Property.ts"],"sourcesContent":["import { convert, Convert } from './Convert';\nimport { Mapping } from './Mapper';\nimport { Get, ofGet } from '../types/Get';\nimport { Json, JsonValue } from '../types/Json';\n\nexport type PropertyOptions<T = unknown> = {\n convert?: Convert<any, any>;\n dflt?: Get<T>;\n format?: string;\n};\n\nexport class Property<T = unknown> implements Mapping {\n constructor(\n readonly property: string,\n readonly options?: PropertyOptions\n ) {\n this.options = { ...options, convert: options?.convert ?? convert.default };\n }\n\n in = (source: Json = {}): JsonValue => this.options?.convert?.to(source[this.property] ?? ofGet(this.options?.dflt));\n out = (source: Json = {}, key = ''): JsonValue => this.options?.convert?.from(source[key]);\n\n toString() {\n return this.property;\n }\n}\n"],"mappings":";;;;;;;;AAWO,IAAM,WAAN,MAA+C;AAAA,EACpD,YACW,UACA,SACT;AAFS;AACA;AAET,SAAK,UAAU,EAAE,GAAG,SAAS,SAAS,SAAS,WAAW,QAAQ,QAAQ;AAAA,EAC5E;AAAA,EAEA,KAAK,CAAC,SAAe,CAAC,MAAiB,KAAK,SAAS,SAAS,GAAG,OAAO,KAAK,QAAQ,KAAK,MAAM,KAAK,SAAS,IAAI,CAAC;AAAA,EACnH,MAAM,CAAC,SAAe,CAAC,GAAG,MAAM,OAAkB,KAAK,SAAS,SAAS,KAAK,OAAO,GAAG,CAAC;AAAA,EAEzF,WAAW;AACT,WAAO,KAAK;AAAA,EACd;AACF;","names":[]}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import {
|
|
2
|
+
inFuture,
|
|
3
|
+
inPast
|
|
4
|
+
} from "./chunk-ADJAEGCT.mjs";
|
|
5
|
+
import {
|
|
6
|
+
tryTo,
|
|
7
|
+
validate
|
|
8
|
+
} from "./chunk-LGLRWA42.mjs";
|
|
9
|
+
import {
|
|
10
|
+
text
|
|
11
|
+
} from "./chunk-RWGCMC6L.mjs";
|
|
12
|
+
import {
|
|
13
|
+
meta
|
|
14
|
+
} from "./chunk-FN7HN3YK.mjs";
|
|
15
|
+
import {
|
|
16
|
+
toList
|
|
17
|
+
} from "./chunk-HOVTNDHS.mjs";
|
|
18
|
+
import {
|
|
19
|
+
isBoolean,
|
|
20
|
+
isDefined,
|
|
21
|
+
isFunction,
|
|
22
|
+
isIn,
|
|
23
|
+
isNotEmpty,
|
|
24
|
+
isString
|
|
25
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
26
|
+
|
|
27
|
+
// src/validation/Contraints.ts
|
|
28
|
+
var constraint = (c, message) => (subject, property) => {
|
|
29
|
+
const cs = meta(subject).property(property).get("constraint") ?? toList();
|
|
30
|
+
meta(subject).property(property).set("constraint", cs.add({ property, constraint: c, text: message }));
|
|
31
|
+
};
|
|
32
|
+
var defined = (message) => constraint((v) => isDefined(v), message ?? "Property {property} must be defined.");
|
|
33
|
+
var required = (message) => constraint((v) => isNotEmpty(v), message ?? "Property {property} is required, and may not be empty.");
|
|
34
|
+
var notEmpty = (message) => constraint((v) => isNotEmpty(v), message ?? "Property {property} may not be empty.");
|
|
35
|
+
var valid = () => constraint((v) => validate(v), "");
|
|
36
|
+
var optional = () => constraint((v) => !isDefined(v) || validate(v), "");
|
|
37
|
+
var includes = (sub, message) => constraint((s) => isDefined(s) && isString(s) && s.includes(sub), message ?? `Value {actual} must include '${sub}'.`);
|
|
38
|
+
var inList = (values, message) => constraint((v) => isDefined(v) && isIn(v, values), message ?? "Value {actual} must appear in list.");
|
|
39
|
+
var inOptionalList = (values, message) => constraint((v) => !isDefined(v) || isIn(v, values), message ?? "Value {actual} must appear in list.");
|
|
40
|
+
var gt = (limit, message) => constraint((v) => v > limit, message ?? `Value {actual} must be larger than '${limit}'.`);
|
|
41
|
+
var gte = (limit, message) => constraint((v) => v >= limit, message ?? `Value {actual} must be larger than or equal to ${limit}.`);
|
|
42
|
+
var lt = (limit, message) => constraint((v) => v < limit, message ?? `Value {actual} must be smaller than ${limit}.`);
|
|
43
|
+
var lte = (limit, message) => constraint((v) => v <= limit, message ?? `Value {actual} must be smaller than or equal to ${limit}.`);
|
|
44
|
+
var past = (message) => constraint((v) => inPast(v), message ?? "Value {actual} must lay in the past.");
|
|
45
|
+
var future = (message) => constraint((v) => inFuture(v), message ?? "Value {actual} must lay in the future.");
|
|
46
|
+
var minLength = (length, message) => constraint(
|
|
47
|
+
(v) => tryTo(() => v).is.defined().map((v2) => text(v2).toString().length >= length).orElse(true),
|
|
48
|
+
message ?? `Value {actual} must be at least '${length}' characters long.`
|
|
49
|
+
);
|
|
50
|
+
var maxLength = (length, message) => constraint(
|
|
51
|
+
(v) => tryTo(() => v).is.defined().map((v2) => text(v2).toString().length <= length).orElse(true),
|
|
52
|
+
message ?? `Value {actual} cannot be longer than '${length}' characters.`
|
|
53
|
+
);
|
|
54
|
+
var rule = (message) => constraint((v) => isFunction(v) ? v() : isBoolean(v) ? v : false, message ?? `Value {actual} must be true`);
|
|
55
|
+
|
|
56
|
+
export {
|
|
57
|
+
constraint,
|
|
58
|
+
defined,
|
|
59
|
+
required,
|
|
60
|
+
notEmpty,
|
|
61
|
+
valid,
|
|
62
|
+
optional,
|
|
63
|
+
includes,
|
|
64
|
+
inList,
|
|
65
|
+
inOptionalList,
|
|
66
|
+
gt,
|
|
67
|
+
gte,
|
|
68
|
+
lt,
|
|
69
|
+
lte,
|
|
70
|
+
past,
|
|
71
|
+
future,
|
|
72
|
+
minLength,
|
|
73
|
+
maxLength,
|
|
74
|
+
rule
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=chunk-GO66AIDJ.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/validation/Contraints.ts"],"sourcesContent":["import { validate, Validator } from './Validate';\nimport { Func } from '../types/Func';\nimport { Results } from '../types/Results';\nimport { meta } from '../types/Meta';\nimport { List, toList } from '../types/List';\nimport { isBoolean, isDefined, isFunction, isIn, isNotEmpty, isString } from '../types/Is';\nimport { tryTo } from '../types/Try';\nimport { inFuture, inPast } from '../types/IsDate';\nimport type { Text } from '../types/Text';\nimport { text } from '../types/ToText';\n\nexport type Constraint = Func<boolean | Results, any>;\n\nexport const constraint =\n <T>(c: Constraint, message: Text): PropertyDecorator =>\n (subject: unknown, property: string | symbol): void => {\n const cs = meta(subject).property(property).get<List<Validator>>('constraint') ?? toList<Validator>();\n meta(subject)\n .property(property)\n .set('constraint', cs.add({ property, constraint: c, text: message }));\n };\n\nexport const defined = (message?: Text): PropertyDecorator => constraint(v => isDefined(v), message ?? 'Property {property} must be defined.');\n\nexport const required = (message?: Text): PropertyDecorator =>\n constraint(v => isNotEmpty(v), message ?? 'Property {property} is required, and may not be empty.');\n\nexport const notEmpty = (message?: Text): PropertyDecorator => constraint(v => isNotEmpty(v), message ?? 'Property {property} may not be empty.');\n\nexport const valid = (): PropertyDecorator => constraint(v => validate(v), '');\n\nexport const optional = (): PropertyDecorator => constraint(v => !isDefined(v) || validate(v), '');\n\nexport const includes = (sub: string, message?: string): PropertyDecorator =>\n constraint(s => isDefined(s) && isString(s) && s.includes(sub), message ?? `Value {actual} must include '${sub}'.`);\n\nexport const inList = (values: unknown[], message?: Text): PropertyDecorator =>\n constraint(v => isDefined(v) && isIn(v, values), message ?? 'Value {actual} must appear in list.');\n\nexport const inOptionalList = (values: unknown[], message?: Text): PropertyDecorator =>\n constraint(v => !isDefined(v) || isIn(v, values), message ?? 'Value {actual} must appear in list.');\n\nexport const gt = (limit: number, message?: Text): PropertyDecorator => constraint(v => v > limit, message ?? `Value {actual} must be larger than '${limit}'.`);\n\nexport const gte = (limit: number, message?: Text): PropertyDecorator =>\n constraint(v => v >= limit, message ?? `Value {actual} must be larger than or equal to ${limit}.`);\n\nexport const lt = (limit: number, message?: Text): PropertyDecorator => constraint(v => v < limit, message ?? `Value {actual} must be smaller than ${limit}.`);\n\nexport const lte = (limit: number, message?: Text): PropertyDecorator =>\n constraint(v => v <= limit, message ?? `Value {actual} must be smaller than or equal to ${limit}.`);\n\nexport const past = (message?: Text): PropertyDecorator => constraint(v => inPast(v), message ?? 'Value {actual} must lay in the past.');\n\nexport const future = (message?: Text): PropertyDecorator => constraint(v => inFuture(v), message ?? 'Value {actual} must lay in the future.');\n\nexport const minLength = (length: number, message?: Text): PropertyDecorator =>\n constraint(\n v =>\n tryTo(() => v)\n .is.defined()\n .map(v => text(v).toString().length >= length)\n .orElse(true) as boolean,\n message ?? `Value {actual} must be at least '${length}' characters long.`\n );\n\nexport const maxLength = (length: number, message?: Text): PropertyDecorator =>\n constraint(\n v =>\n tryTo(() => v)\n .is.defined()\n .map(v => text(v).toString().length <= length)\n .orElse(true) as boolean,\n message ?? `Value {actual} cannot be longer than '${length}' characters.`\n );\n\nexport const rule = (message?: Text): PropertyDecorator =>\n constraint(v => (isFunction(v) ? (v() as boolean | Results) : isBoolean(v) ? v : false), message ?? `Value {actual} must be true`);\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAaO,IAAM,aACX,CAAI,GAAe,YACnB,CAAC,SAAkB,aAAoC;AACrD,QAAM,KAAK,KAAK,OAAO,EAAE,SAAS,QAAQ,EAAE,IAAqB,YAAY,KAAK,OAAkB;AACpG,OAAK,OAAO,EACT,SAAS,QAAQ,EACjB,IAAI,cAAc,GAAG,IAAI,EAAE,UAAU,YAAY,GAAG,MAAM,QAAQ,CAAC,CAAC;AACzE;AAEK,IAAM,UAAU,CAAC,YAAsC,WAAW,OAAK,UAAU,CAAC,GAAG,WAAW,sCAAsC;AAEtI,IAAM,WAAW,CAAC,YACvB,WAAW,OAAK,WAAW,CAAC,GAAG,WAAW,wDAAwD;AAE7F,IAAM,WAAW,CAAC,YAAsC,WAAW,OAAK,WAAW,CAAC,GAAG,WAAW,uCAAuC;AAEzI,IAAM,QAAQ,MAAyB,WAAW,OAAK,SAAS,CAAC,GAAG,EAAE;AAEtE,IAAM,WAAW,MAAyB,WAAW,OAAK,CAAC,UAAU,CAAC,KAAK,SAAS,CAAC,GAAG,EAAE;AAE1F,IAAM,WAAW,CAAC,KAAa,YACpC,WAAW,OAAK,UAAU,CAAC,KAAK,SAAS,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG,WAAW,gCAAgC,GAAG,IAAI;AAE7G,IAAM,SAAS,CAAC,QAAmB,YACxC,WAAW,OAAK,UAAU,CAAC,KAAK,KAAK,GAAG,MAAM,GAAG,WAAW,qCAAqC;AAE5F,IAAM,iBAAiB,CAAC,QAAmB,YAChD,WAAW,OAAK,CAAC,UAAU,CAAC,KAAK,KAAK,GAAG,MAAM,GAAG,WAAW,qCAAqC;AAE7F,IAAM,KAAK,CAAC,OAAe,YAAsC,WAAW,OAAK,IAAI,OAAO,WAAW,uCAAuC,KAAK,IAAI;AAEvJ,IAAM,MAAM,CAAC,OAAe,YACjC,WAAW,OAAK,KAAK,OAAO,WAAW,kDAAkD,KAAK,GAAG;AAE5F,IAAM,KAAK,CAAC,OAAe,YAAsC,WAAW,OAAK,IAAI,OAAO,WAAW,uCAAuC,KAAK,GAAG;AAEtJ,IAAM,MAAM,CAAC,OAAe,YACjC,WAAW,OAAK,KAAK,OAAO,WAAW,mDAAmD,KAAK,GAAG;AAE7F,IAAM,OAAO,CAAC,YAAsC,WAAW,OAAK,OAAO,CAAC,GAAG,WAAW,sCAAsC;AAEhI,IAAM,SAAS,CAAC,YAAsC,WAAW,OAAK,SAAS,CAAC,GAAG,WAAW,wCAAwC;AAEtI,IAAM,YAAY,CAAC,QAAgB,YACxC;AAAA,EACE,OACE,MAAM,MAAM,CAAC,EACV,GAAG,QAAQ,EACX,IAAI,CAAAA,OAAK,KAAKA,EAAC,EAAE,SAAS,EAAE,UAAU,MAAM,EAC5C,OAAO,IAAI;AAAA,EAChB,WAAW,oCAAoC,MAAM;AACvD;AAEK,IAAM,YAAY,CAAC,QAAgB,YACxC;AAAA,EACE,OACE,MAAM,MAAM,CAAC,EACV,GAAG,QAAQ,EACX,IAAI,CAAAA,OAAK,KAAKA,EAAC,EAAE,SAAS,EAAE,UAAU,MAAM,EAC5C,OAAO,IAAI;AAAA,EAChB,WAAW,yCAAyC,MAAM;AAC5D;AAEK,IAAM,OAAO,CAAC,YACnB,WAAW,OAAM,WAAW,CAAC,IAAK,EAAE,IAA0B,UAAU,CAAC,IAAI,IAAI,OAAQ,WAAW,6BAA6B;","names":["v"]}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import {
|
|
2
|
+
text
|
|
3
|
+
} from "./chunk-RWGCMC6L.mjs";
|
|
4
|
+
import {
|
|
5
|
+
Enum
|
|
6
|
+
} from "./chunk-UXADDXCJ.mjs";
|
|
7
|
+
import {
|
|
8
|
+
toList
|
|
9
|
+
} from "./chunk-HOVTNDHS.mjs";
|
|
10
|
+
import {
|
|
11
|
+
kebab
|
|
12
|
+
} from "./chunk-BDA5LB4S.mjs";
|
|
13
|
+
import {
|
|
14
|
+
isString
|
|
15
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
16
|
+
|
|
17
|
+
// src/process/Scope.ts
|
|
18
|
+
var Scope = class _Scope extends Enum {
|
|
19
|
+
constructor(name, id = text(name).kebab, subs = toList()) {
|
|
20
|
+
super(name, id.toString());
|
|
21
|
+
this.name = name;
|
|
22
|
+
this.subs = subs;
|
|
23
|
+
}
|
|
24
|
+
for(item) {
|
|
25
|
+
return new _Scope(`${this.name} ${isString(item) ? text(item).title : item.name}`, kebab(`${this.id} ${isString(item) ? item : item.id}`));
|
|
26
|
+
}
|
|
27
|
+
combines(...scopes) {
|
|
28
|
+
this.subs.add(scopes);
|
|
29
|
+
return this;
|
|
30
|
+
}
|
|
31
|
+
expand() {
|
|
32
|
+
return this.subs.flatMap((s) => s.expand()).add(this).distinct();
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
export {
|
|
37
|
+
Scope
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=chunk-GVTADDU5.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/process/Scope.ts"],"sourcesContent":["import { Enum } from '../types/Enum';\nimport type { Text } from '../types/Text';\nimport { kebab } from '../types/Text';\nimport { List, toList } from '../types/List';\nimport { isString } from '../types/Is';\nimport { IdNamePlain } from '../types/IdName';\nimport { text } from '../types/ToText';\n\nexport class Scope extends Enum {\n protected constructor(\n readonly name: string,\n id: Text = text(name).kebab,\n readonly subs: List<Scope> = toList()\n ) {\n super(name, id.toString());\n }\n\n for(item: string | IdNamePlain): Scope {\n return new Scope(`${this.name} ${isString(item) ? text(item).title : item.name}`, kebab(`${this.id} ${isString(item) ? item : item.id}`));\n }\n\n combines(...scopes: Scope[]): this {\n this.subs.add(scopes);\n return this;\n }\n\n expand(): List<Scope> {\n return this.subs\n .flatMap(s => s.expand())\n .add(this)\n .distinct();\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;AAQO,IAAM,QAAN,MAAM,eAAc,KAAK;AAAA,EACpB,YACC,MACT,KAAW,KAAK,IAAI,EAAE,OACb,OAAoB,OAAO,GACpC;AACA,UAAM,MAAM,GAAG,SAAS,CAAC;AAJhB;AAEA;AAAA,EAGX;AAAA,EAEA,IAAI,MAAmC;AACrC,WAAO,IAAI,OAAM,GAAG,KAAK,IAAI,IAAI,SAAS,IAAI,IAAI,KAAK,IAAI,EAAE,QAAQ,KAAK,IAAI,IAAI,MAAM,GAAG,KAAK,EAAE,IAAI,SAAS,IAAI,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;AAAA,EAC1I;AAAA,EAEA,YAAY,QAAuB;AACjC,SAAK,KAAK,IAAI,MAAM;AACpB,WAAO;AAAA,EACT;AAAA,EAEA,SAAsB;AACpB,WAAO,KAAK,KACT,QAAQ,OAAK,EAAE,OAAO,CAAC,EACvB,IAAI,IAAI,EACR,SAAS;AAAA,EACd;AACF;","names":[]}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import {
|
|
2
|
+
AxiosProvider
|
|
3
|
+
} from "./chunk-WVTNXVBL.mjs";
|
|
4
|
+
import {
|
|
5
|
+
HttpVerb
|
|
6
|
+
} from "./chunk-4HWEQEHM.mjs";
|
|
7
|
+
import {
|
|
8
|
+
RequestOptions,
|
|
9
|
+
toPageOptions
|
|
10
|
+
} from "./chunk-L5ZI7SPN.mjs";
|
|
11
|
+
|
|
12
|
+
// src/services/Api.ts
|
|
13
|
+
var Api = class {
|
|
14
|
+
constructor(provider = new AxiosProvider(), store) {
|
|
15
|
+
this.provider = provider;
|
|
16
|
+
this.store = store;
|
|
17
|
+
}
|
|
18
|
+
get(uri, options, transform, transformError = (r) => r) {
|
|
19
|
+
return this.execute({
|
|
20
|
+
uri: uri.skip(toPageOptions(options)?.skip).take(toPageOptions(options)?.take),
|
|
21
|
+
verb: HttpVerb.Get,
|
|
22
|
+
transform,
|
|
23
|
+
transformError,
|
|
24
|
+
options: this.options(HttpVerb.Get, options)
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
post(uri, body, options = RequestOptions.Json, transform, transformError = (r) => r) {
|
|
28
|
+
return this.execute({
|
|
29
|
+
uri,
|
|
30
|
+
verb: HttpVerb.Post,
|
|
31
|
+
body,
|
|
32
|
+
transform,
|
|
33
|
+
transformError,
|
|
34
|
+
options: this.options(HttpVerb.Post, options)
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
put(uri, body, options = RequestOptions.Json, transform, transformError = (r) => r) {
|
|
38
|
+
return this.execute({
|
|
39
|
+
uri,
|
|
40
|
+
verb: HttpVerb.Put,
|
|
41
|
+
body,
|
|
42
|
+
transform,
|
|
43
|
+
transformError,
|
|
44
|
+
options: this.options(HttpVerb.Put, options)
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
patch(uri, body, options = RequestOptions.Json, transform, transformError = (r) => r) {
|
|
48
|
+
return this.execute({
|
|
49
|
+
uri,
|
|
50
|
+
verb: HttpVerb.Patch,
|
|
51
|
+
body,
|
|
52
|
+
transform,
|
|
53
|
+
transformError,
|
|
54
|
+
options: this.options(HttpVerb.Patch, options)
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
delete(uri, options = RequestOptions.Json, transform, transformError = (r) => r) {
|
|
58
|
+
return this.execute({
|
|
59
|
+
uri,
|
|
60
|
+
verb: HttpVerb.Delete,
|
|
61
|
+
transform,
|
|
62
|
+
transformError,
|
|
63
|
+
options: this.options(HttpVerb.Delete, options)
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
options(verb, options) {
|
|
67
|
+
return options instanceof RequestOptions ? options : RequestOptions.Json;
|
|
68
|
+
}
|
|
69
|
+
execute(req) {
|
|
70
|
+
return this.store ? this.store.execute(req, () => this.provider.execute(req)) : this.provider.execute(req);
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
var api = new Api();
|
|
74
|
+
|
|
75
|
+
export {
|
|
76
|
+
Api,
|
|
77
|
+
api
|
|
78
|
+
};
|
|
79
|
+
//# sourceMappingURL=chunk-GZIULZH2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/services/Api.ts"],"sourcesContent":["import { AxiosProvider } from './AxiosProvider';\nimport { RequestOptions, toPageOptions } from '../http/RequestOptions';\nimport { FetchOptions } from '../types/Gateway';\nimport { RequestProvider } from '../http/RequestProvider';\nimport { Store } from '../types/Cache';\nimport { Uri } from '../types/Uri';\nimport { HttpVerb } from '../http/HttpVerb';\nimport { Request } from '../http/Request';\nimport { Response } from '../http/Response';\n\nexport type RouteOptions = RequestOptions | FetchOptions;\n\nexport class Api {\n constructor(\n readonly provider: RequestProvider = new AxiosProvider(),\n protected store?: Store<Response, Request>\n ) {}\n\n get(uri: Uri, options?: RouteOptions, transform?: (r: any) => any, transformError = (r: any) => r): Promise<Response> {\n return this.execute({\n uri: uri.skip(toPageOptions(options)?.skip).take(toPageOptions(options)?.take),\n verb: HttpVerb.Get,\n transform,\n transformError,\n options: this.options(HttpVerb.Get, options),\n });\n }\n\n post(uri: Uri, body?: unknown, options: RouteOptions = RequestOptions.Json, transform?: (r: any) => any, transformError = (r: any) => r): Promise<Response> {\n return this.execute({\n uri,\n verb: HttpVerb.Post,\n body,\n transform,\n transformError,\n options: this.options(HttpVerb.Post, options),\n });\n }\n\n put(uri: Uri, body?: unknown, options: RouteOptions = RequestOptions.Json, transform?: (r: any) => any, transformError = (r: any) => r): Promise<Response> {\n return this.execute({\n uri,\n verb: HttpVerb.Put,\n body,\n transform,\n transformError,\n options: this.options(HttpVerb.Put, options),\n });\n }\n\n patch(uri: Uri, body?: unknown, options: RouteOptions = RequestOptions.Json, transform?: (r: any) => any, transformError = (r: any) => r): Promise<Response> {\n return this.execute({\n uri,\n verb: HttpVerb.Patch,\n body,\n transform,\n transformError,\n options: this.options(HttpVerb.Patch, options),\n });\n }\n\n delete(uri: Uri, options: RouteOptions = RequestOptions.Json, transform?: (b: any) => any, transformError = (r: any) => r): Promise<Response> {\n return this.execute({\n uri,\n verb: HttpVerb.Delete,\n transform,\n transformError,\n options: this.options(HttpVerb.Delete, options),\n });\n }\n\n options(verb: HttpVerb, options?: RouteOptions): RequestOptions {\n return options instanceof RequestOptions ? options : RequestOptions.Json;\n }\n\n execute(req: Request): Promise<Response> {\n return this.store ? this.store.execute(req, () => this.provider.execute(req)) : this.provider.execute(req);\n }\n}\n\nexport const api: Api = new Api();\n"],"mappings":";;;;;;;;;;;;AAYO,IAAM,MAAN,MAAU;AAAA,EACf,YACW,WAA4B,IAAI,cAAc,GAC7C,OACV;AAFS;AACC;AAAA,EACT;AAAA,EAEH,IAAI,KAAU,SAAwB,WAA6B,iBAAiB,CAAC,MAAW,GAAsB;AACpH,WAAO,KAAK,QAAQ;AAAA,MAClB,KAAK,IAAI,KAAK,cAAc,OAAO,GAAG,IAAI,EAAE,KAAK,cAAc,OAAO,GAAG,IAAI;AAAA,MAC7E,MAAM,SAAS;AAAA,MACf;AAAA,MACA;AAAA,MACA,SAAS,KAAK,QAAQ,SAAS,KAAK,OAAO;AAAA,IAC7C,CAAC;AAAA,EACH;AAAA,EAEA,KAAK,KAAU,MAAgB,UAAwB,eAAe,MAAM,WAA6B,iBAAiB,CAAC,MAAW,GAAsB;AAC1J,WAAO,KAAK,QAAQ;AAAA,MAClB;AAAA,MACA,MAAM,SAAS;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA,SAAS,KAAK,QAAQ,SAAS,MAAM,OAAO;AAAA,IAC9C,CAAC;AAAA,EACH;AAAA,EAEA,IAAI,KAAU,MAAgB,UAAwB,eAAe,MAAM,WAA6B,iBAAiB,CAAC,MAAW,GAAsB;AACzJ,WAAO,KAAK,QAAQ;AAAA,MAClB;AAAA,MACA,MAAM,SAAS;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA,SAAS,KAAK,QAAQ,SAAS,KAAK,OAAO;AAAA,IAC7C,CAAC;AAAA,EACH;AAAA,EAEA,MAAM,KAAU,MAAgB,UAAwB,eAAe,MAAM,WAA6B,iBAAiB,CAAC,MAAW,GAAsB;AAC3J,WAAO,KAAK,QAAQ;AAAA,MAClB;AAAA,MACA,MAAM,SAAS;AAAA,MACf;AAAA,MACA;AAAA,MACA;AAAA,MACA,SAAS,KAAK,QAAQ,SAAS,OAAO,OAAO;AAAA,IAC/C,CAAC;AAAA,EACH;AAAA,EAEA,OAAO,KAAU,UAAwB,eAAe,MAAM,WAA6B,iBAAiB,CAAC,MAAW,GAAsB;AAC5I,WAAO,KAAK,QAAQ;AAAA,MAClB;AAAA,MACA,MAAM,SAAS;AAAA,MACf;AAAA,MACA;AAAA,MACA,SAAS,KAAK,QAAQ,SAAS,QAAQ,OAAO;AAAA,IAChD,CAAC;AAAA,EACH;AAAA,EAEA,QAAQ,MAAgB,SAAwC;AAC9D,WAAO,mBAAmB,iBAAiB,UAAU,eAAe;AAAA,EACtE;AAAA,EAEA,QAAQ,KAAiC;AACvC,WAAO,KAAK,QAAQ,KAAK,MAAM,QAAQ,KAAK,MAAM,KAAK,SAAS,QAAQ,GAAG,CAAC,IAAI,KAAK,SAAS,QAAQ,GAAG;AAAA,EAC3G;AACF;AAEO,IAAM,MAAW,IAAI,IAAI;","names":[]}
|