@thisisagile/easy 15.26.2 → 15.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunk-35PSIDGU.mjs +17 -0
- package/dist/chunk-35PSIDGU.mjs.map +1 -0
- package/dist/chunk-3HTSHJPL.mjs +26 -0
- package/dist/chunk-3HTSHJPL.mjs.map +1 -0
- package/dist/chunk-3WOYFN2Q.mjs +18 -0
- package/dist/chunk-3WOYFN2Q.mjs.map +1 -0
- package/dist/chunk-4AP5H3OQ.mjs +46 -0
- package/dist/chunk-4AP5H3OQ.mjs.map +1 -0
- package/dist/chunk-4EVQZKMK.mjs +15 -0
- package/dist/chunk-4EVQZKMK.mjs.map +1 -0
- package/dist/chunk-4QX4EMLL.mjs +13 -0
- package/dist/chunk-4QX4EMLL.mjs.map +1 -0
- package/dist/chunk-5AF55QCJ.mjs +51 -0
- package/dist/chunk-5AF55QCJ.mjs.map +1 -0
- package/dist/chunk-6NOTDYUE.mjs +272 -0
- package/dist/chunk-6NOTDYUE.mjs.map +1 -0
- package/dist/chunk-6OW7KEN5.mjs +94 -0
- package/dist/chunk-6OW7KEN5.mjs.map +1 -0
- package/dist/chunk-74AOBBOZ.mjs +113 -0
- package/dist/chunk-74AOBBOZ.mjs.map +1 -0
- package/dist/chunk-7EP6VCI3.mjs +60 -0
- package/dist/chunk-7EP6VCI3.mjs.map +1 -0
- package/dist/{types/PageList.js → chunk-7NYZAGM3.mjs} +31 -48
- package/dist/chunk-7NYZAGM3.mjs.map +1 -0
- package/dist/chunk-7RIXMU5L.mjs +50 -0
- package/dist/chunk-7RIXMU5L.mjs.map +1 -0
- package/dist/chunk-A7OYYR2S.mjs +48 -0
- package/dist/chunk-A7OYYR2S.mjs.map +1 -0
- package/dist/chunk-ADJAEGCT.mjs +21 -0
- package/dist/chunk-ADJAEGCT.mjs.map +1 -0
- package/dist/chunk-AKYA7FHU.mjs +15 -0
- package/dist/chunk-AKYA7FHU.mjs.map +1 -0
- package/dist/chunk-CLKUH5JA.mjs +42 -0
- package/dist/chunk-CLKUH5JA.mjs.map +1 -0
- package/dist/chunk-CMRS457E.mjs +11 -0
- package/dist/chunk-CMRS457E.mjs.map +1 -0
- package/dist/chunk-D54TPU6G.mjs +43 -0
- package/dist/chunk-D54TPU6G.mjs.map +1 -0
- package/dist/chunk-DICMUQFL.mjs +11 -0
- package/dist/chunk-DICMUQFL.mjs.map +1 -0
- package/dist/chunk-EZC3HAYN.mjs +70 -0
- package/dist/chunk-EZC3HAYN.mjs.map +1 -0
- package/dist/chunk-FAAERRP2.mjs +37 -0
- package/dist/chunk-FAAERRP2.mjs.map +1 -0
- package/dist/chunk-FSK4W6I2.mjs +33 -0
- package/dist/chunk-FSK4W6I2.mjs.map +1 -0
- package/dist/chunk-G7QSW2EB.mjs +23 -0
- package/dist/chunk-G7QSW2EB.mjs.map +1 -0
- package/dist/chunk-GDD652NR.mjs +94 -0
- package/dist/chunk-GDD652NR.mjs.map +1 -0
- package/dist/chunk-GGC4TWMF.mjs +40 -0
- package/dist/chunk-GGC4TWMF.mjs.map +1 -0
- package/dist/chunk-GI5TZOAG.mjs +30 -0
- package/dist/chunk-GI5TZOAG.mjs.map +1 -0
- package/dist/chunk-GVX6S54O.mjs +54 -0
- package/dist/chunk-GVX6S54O.mjs.map +1 -0
- package/dist/chunk-H22IHXDC.mjs +23 -0
- package/dist/chunk-H22IHXDC.mjs.map +1 -0
- package/dist/chunk-H6GKGVYF.mjs +18 -0
- package/dist/chunk-H6GKGVYF.mjs.map +1 -0
- package/dist/chunk-HNB4RM5S.mjs +89 -0
- package/dist/chunk-HNB4RM5S.mjs.map +1 -0
- package/dist/chunk-I3VZW3XF.mjs +46 -0
- package/dist/chunk-I3VZW3XF.mjs.map +1 -0
- package/dist/chunk-IJFQ7PRU.mjs +19 -0
- package/dist/chunk-IJFQ7PRU.mjs.map +1 -0
- package/dist/chunk-JER7KLEK.mjs +82 -0
- package/dist/chunk-JER7KLEK.mjs.map +1 -0
- package/dist/chunk-JXJ5LRH3.mjs +30 -0
- package/dist/chunk-JXJ5LRH3.mjs.map +1 -0
- package/dist/chunk-L2BMMXCX.mjs +79 -0
- package/dist/chunk-L2BMMXCX.mjs.map +1 -0
- package/dist/chunk-LB7OMB5S.mjs +57 -0
- package/dist/chunk-LB7OMB5S.mjs.map +1 -0
- package/dist/chunk-LCDQWW2Y.mjs +18 -0
- package/dist/chunk-LCDQWW2Y.mjs.map +1 -0
- package/dist/chunk-LD64IICE.mjs +28 -0
- package/dist/chunk-LD64IICE.mjs.map +1 -0
- package/dist/chunk-LV7HNQ3N.mjs +183 -0
- package/dist/chunk-LV7HNQ3N.mjs.map +1 -0
- package/dist/chunk-M4UUIOW6.mjs +86 -0
- package/dist/chunk-M4UUIOW6.mjs.map +1 -0
- package/dist/chunk-MDLVDMKY.mjs +11 -0
- package/dist/chunk-MDLVDMKY.mjs.map +1 -0
- package/dist/chunk-NF7FTEE7.mjs +26 -0
- package/dist/chunk-NF7FTEE7.mjs.map +1 -0
- package/dist/chunk-NYTGMBLK.mjs +49 -0
- package/dist/chunk-NYTGMBLK.mjs.map +1 -0
- package/dist/chunk-O62PGEQ7.mjs +20 -0
- package/dist/chunk-O62PGEQ7.mjs.map +1 -0
- package/dist/chunk-OQNZEKWO.mjs +24 -0
- package/dist/chunk-OQNZEKWO.mjs.map +1 -0
- package/dist/chunk-OXBQSJDF.mjs +45 -0
- package/dist/chunk-OXBQSJDF.mjs.map +1 -0
- package/dist/chunk-PIRWVOO2.mjs +7 -0
- package/dist/chunk-PIRWVOO2.mjs.map +1 -0
- package/dist/chunk-PLIJ2CRV.mjs +25 -0
- package/dist/chunk-PLIJ2CRV.mjs.map +1 -0
- package/dist/chunk-PSIJUWZT.mjs +13 -0
- package/dist/chunk-PSIJUWZT.mjs.map +1 -0
- package/dist/chunk-QOGUHAMC.mjs +40 -0
- package/dist/chunk-QOGUHAMC.mjs.map +1 -0
- package/dist/chunk-SGSU4KYT.mjs +49 -0
- package/dist/chunk-SGSU4KYT.mjs.map +1 -0
- package/dist/chunk-SJGDB24D.mjs +41 -0
- package/dist/chunk-SJGDB24D.mjs.map +1 -0
- package/dist/chunk-SJGQU3OG.mjs +15 -0
- package/dist/chunk-SJGQU3OG.mjs.map +1 -0
- package/dist/chunk-SP4KAT3N.mjs +25 -0
- package/dist/chunk-SP4KAT3N.mjs.map +1 -0
- package/dist/chunk-SS3C77DP.mjs +134 -0
- package/dist/chunk-SS3C77DP.mjs.map +1 -0
- package/dist/chunk-SW2OCUH3.mjs +10 -0
- package/dist/chunk-SW2OCUH3.mjs.map +1 -0
- package/dist/chunk-UDLMLGTS.mjs +43 -0
- package/dist/chunk-UDLMLGTS.mjs.map +1 -0
- package/dist/chunk-V62IOKST.mjs +21 -0
- package/dist/chunk-V62IOKST.mjs.map +1 -0
- package/dist/chunk-WEXSGVXZ.mjs +53 -0
- package/dist/chunk-WEXSGVXZ.mjs.map +1 -0
- package/dist/chunk-WUFQM7VZ.mjs +20 -0
- package/dist/chunk-WUFQM7VZ.mjs.map +1 -0
- package/dist/chunk-YTWFWQNB.mjs +866 -0
- package/dist/chunk-YTWFWQNB.mjs.map +1 -0
- package/dist/chunk-ZHAJLP7P.mjs +49 -0
- package/dist/chunk-ZHAJLP7P.mjs.map +1 -0
- package/dist/chunk-ZNWOAXMK.mjs +46 -0
- package/dist/chunk-ZNWOAXMK.mjs.map +1 -0
- package/dist/data/Condition.mjs +19 -35
- package/dist/data/Condition.mjs.map +1 -1
- package/dist/data/Database.mjs +15 -12
- package/dist/data/Database.mjs.map +1 -1
- package/dist/data/Field.mjs +28 -6
- package/dist/data/Field.mjs.map +1 -1
- package/dist/data/InMemoryGateway.mjs +26 -4
- package/dist/data/InMemoryGateway.mjs.map +1 -1
- package/dist/domain/Audit.mjs +18 -24
- package/dist/domain/Audit.mjs.map +1 -1
- package/dist/domain/Child.mjs +28 -5
- package/dist/domain/Child.mjs.map +1 -1
- package/dist/domain/Entity.mjs +32 -6
- package/dist/domain/Entity.mjs.map +1 -1
- package/dist/domain/Repo.mjs +28 -5
- package/dist/domain/Repo.mjs.map +1 -1
- package/dist/domain/Struct.mjs +15 -25
- package/dist/domain/Struct.mjs.map +1 -1
- package/dist/domain/Typo.mjs +21 -4
- package/dist/domain/Typo.mjs.map +1 -1
- package/dist/domain/enums/Country.mjs +14 -262
- package/dist/domain/enums/Country.mjs.map +1 -1
- package/dist/domain/enums/Currency.mjs +17 -131
- package/dist/domain/enums/Currency.mjs.map +1 -1
- package/dist/domain/enums/Environment.mjs +21 -7
- package/dist/domain/enums/Environment.mjs.map +1 -1
- package/dist/domain/enums/Locale.mjs +581 -566
- package/dist/domain/enums/Locale.mjs.map +1 -1
- package/dist/domain/enums/UnitOfMeasurement.mjs +14 -12
- package/dist/domain/enums/UnitOfMeasurement.mjs.map +1 -1
- package/dist/domain/enums/UnitOfWeight.mjs +14 -10
- package/dist/domain/enums/UnitOfWeight.mjs.map +1 -1
- package/dist/domain/structs/Address.mjs +34 -8
- package/dist/domain/structs/Address.mjs.map +1 -1
- package/dist/domain/structs/Box.mjs +26 -5
- package/dist/domain/structs/Box.mjs.map +1 -1
- package/dist/domain/structs/Dimension.mjs +18 -26
- package/dist/domain/structs/Dimension.mjs.map +1 -1
- package/dist/domain/structs/Money.mjs +19 -32
- package/dist/domain/structs/Money.mjs.map +1 -1
- package/dist/domain/structs/Name.mjs +25 -6
- package/dist/domain/structs/Name.mjs.map +1 -1
- package/dist/domain/structs/Weight.mjs +26 -6
- package/dist/domain/structs/Weight.mjs.map +1 -1
- package/dist/domain/values/DateTime.mjs +17 -88
- package/dist/domain/values/DateTime.mjs.map +1 -1
- package/dist/domain/values/EAN.mjs +21 -4
- package/dist/domain/values/EAN.mjs.map +1 -1
- package/dist/domain/values/Email.mjs +23 -5
- package/dist/domain/values/Email.mjs.map +1 -1
- package/dist/domain/values/IBAN.mjs +21 -4
- package/dist/domain/values/IBAN.mjs.map +1 -1
- package/dist/domain/values/PostalCode.mjs +16 -13
- package/dist/domain/values/PostalCode.mjs.map +1 -1
- package/dist/domain/values/Slug.mjs +21 -4
- package/dist/domain/values/Slug.mjs.map +1 -1
- package/dist/domain/values/Url.mjs +22 -5
- package/dist/domain/values/Url.mjs.map +1 -1
- package/dist/health/HealthResource.mjs +32 -4
- package/dist/health/HealthResource.mjs.map +1 -1
- package/dist/health/HealthUri.mjs +15 -5
- package/dist/health/HealthUri.mjs.map +1 -1
- package/dist/http/CacheControl.mjs +16 -28
- package/dist/http/CacheControl.mjs.map +1 -1
- package/dist/http/ContentType.mjs +14 -15
- package/dist/http/ContentType.mjs.map +1 -1
- package/dist/http/HttpHeader.mjs +3 -4
- package/dist/http/HttpHeader.mjs.map +1 -1
- package/dist/http/HttpStatus.mjs +16 -80
- package/dist/http/HttpStatus.mjs.map +1 -1
- package/dist/http/HttpVerb.mjs +14 -11
- package/dist/http/HttpVerb.mjs.map +1 -1
- package/dist/http/LocalRequestStore.mjs +17 -3
- package/dist/http/LocalRequestStore.mjs.map +1 -1
- package/dist/http/OriginatedError.mjs +9 -5
- package/dist/http/OriginatedError.mjs.map +1 -1
- package/dist/http/RequestOptions.mjs +19 -59
- package/dist/http/RequestOptions.mjs.map +1 -1
- package/dist/http/Response.mjs +16 -9
- package/dist/http/Response.mjs.map +1 -1
- package/dist/http/RestResult.mjs +16 -26
- package/dist/http/RestResult.mjs.map +1 -1
- package/dist/http/Verb.mjs +27 -19
- package/dist/http/Verb.mjs.map +1 -1
- package/dist/index.js +4790 -27
- package/dist/index.js.map +1 -1
- package/dist/process/App.mjs +19 -4
- package/dist/process/App.mjs.map +1 -1
- package/dist/process/Manage.mjs +19 -3
- package/dist/process/Manage.mjs.map +1 -1
- package/dist/process/Scope.mjs +14 -18
- package/dist/process/Scope.mjs.map +1 -1
- package/dist/process/Search.mjs +15 -34
- package/dist/process/Search.mjs.map +1 -1
- package/dist/process/UseCase.mjs +24 -4
- package/dist/process/UseCase.mjs.map +1 -1
- package/dist/resources/Req.mjs +20 -4
- package/dist/resources/Req.mjs.map +1 -1
- package/dist/resources/Requires.mjs +18 -4
- package/dist/resources/Requires.mjs.map +1 -1
- package/dist/resources/Route.mjs +15 -32
- package/dist/resources/Route.mjs.map +1 -1
- package/dist/resources/Service.mjs +19 -3
- package/dist/resources/Service.mjs.map +1 -1
- package/dist/security/Jwt.mjs +21 -5
- package/dist/security/Jwt.mjs.map +1 -1
- package/dist/services/Api.mjs +25 -63
- package/dist/services/Api.mjs.map +1 -1
- package/dist/services/ApiGateway.mjs +27 -29
- package/dist/services/ApiGateway.mjs.map +1 -1
- package/dist/services/AxiosProvider.mjs +22 -23
- package/dist/services/AxiosProvider.mjs.map +1 -1
- package/dist/services/MappedRouteGateway.mjs +40 -5
- package/dist/services/MappedRouteGateway.mjs.map +1 -1
- package/dist/services/RouteGateway.mjs +28 -42
- package/dist/services/RouteGateway.mjs.map +1 -1
- package/dist/services/ViewRouteGateway.mjs +39 -5
- package/dist/services/ViewRouteGateway.mjs.map +1 -1
- package/dist/sql/Clause.mjs +19 -22
- package/dist/sql/Clause.mjs.map +1 -1
- package/dist/sql/Column.mjs +19 -64
- package/dist/sql/Column.mjs.map +1 -1
- package/dist/sql/Count.mjs +16 -7
- package/dist/sql/Count.mjs.map +1 -1
- package/dist/sql/Delete.mjs +15 -7
- package/dist/sql/Delete.mjs.map +1 -1
- package/dist/sql/Insert.mjs +17 -12
- package/dist/sql/Insert.mjs.map +1 -1
- package/dist/sql/Join.mjs +3 -18
- package/dist/sql/Join.mjs.map +1 -1
- package/dist/sql/Select.mjs +15 -40
- package/dist/sql/Select.mjs.map +1 -1
- package/dist/sql/SqlQuery.mjs +14 -11
- package/dist/sql/SqlQuery.mjs.map +1 -1
- package/dist/sql/Table.mjs +53 -12
- package/dist/sql/Table.mjs.map +1 -1
- package/dist/sql/TableGateway.mjs +27 -5
- package/dist/sql/TableGateway.mjs.map +1 -1
- package/dist/sql/Update.mjs +17 -13
- package/dist/sql/Update.mjs.map +1 -1
- package/dist/types/Array.mjs +9 -22
- package/dist/types/Array.mjs.map +1 -1
- package/dist/types/Builder.mjs +21 -7
- package/dist/types/Builder.mjs.map +1 -1
- package/dist/types/Cache.mjs +17 -3
- package/dist/types/Cache.mjs.map +1 -1
- package/dist/types/CacheAge.mjs +15 -36
- package/dist/types/CacheAge.mjs.map +1 -1
- package/dist/types/Case.mjs +13 -87
- package/dist/types/Case.mjs.map +1 -1
- package/dist/types/Constructor.mjs +11 -12
- package/dist/types/Constructor.mjs.map +1 -1
- package/dist/types/Context.mjs +17 -81
- package/dist/types/Context.mjs.map +1 -1
- package/dist/types/Enum.mjs +14 -46
- package/dist/types/Enum.mjs.map +1 -1
- package/dist/types/Exception.mjs +15 -22
- package/dist/types/Exception.mjs.map +1 -1
- package/dist/types/Falsy.mjs +4 -2
- package/dist/types/Falsy.mjs.map +1 -1
- package/dist/types/Func.mjs +3 -1
- package/dist/types/Func.mjs.map +1 -1
- package/dist/types/Gateway.mjs +14 -34
- package/dist/types/Gateway.mjs.map +1 -1
- package/dist/types/Get.mjs +6 -4
- package/dist/types/Get.mjs.map +1 -1
- package/dist/types/Id.mjs +5 -2
- package/dist/types/Id.mjs.map +1 -1
- package/dist/types/Is.mjs +21 -21
- package/dist/types/Is.mjs.map +1 -1
- package/dist/types/IsA.mjs +6 -3
- package/dist/types/IsA.mjs.map +1 -1
- package/dist/types/IsDate.mjs +6 -12
- package/dist/types/IsDate.mjs.map +1 -1
- package/dist/types/IsEqual.mjs +14 -11
- package/dist/types/IsEqual.mjs.map +1 -1
- package/dist/types/Json.mjs +14 -31
- package/dist/types/Json.mjs.map +1 -1
- package/dist/types/List.mjs +18 -170
- package/dist/types/List.mjs.map +1 -1
- package/dist/types/Message.mjs +6 -2
- package/dist/types/Message.mjs.map +1 -1
- package/dist/types/Meta.mjs +14 -41
- package/dist/types/Meta.mjs.map +1 -1
- package/dist/types/Nullish.mjs +3 -1
- package/dist/types/Nullish.mjs.map +1 -1
- package/dist/types/Number.mjs +14 -5
- package/dist/types/Number.mjs.map +1 -1
- package/dist/types/PageList.mjs +19 -118
- package/dist/types/PageList.mjs.map +1 -1
- package/dist/types/Parser.mjs +30 -7
- package/dist/types/Parser.mjs.map +1 -1
- package/dist/types/Primitive.mjs +4 -4
- package/dist/types/Primitive.mjs.map +1 -1
- package/dist/types/Repository.mjs +14 -40
- package/dist/types/Repository.mjs.map +1 -1
- package/dist/types/Result.mjs +14 -8
- package/dist/types/Result.mjs.map +1 -1
- package/dist/types/Results.mjs +15 -19
- package/dist/types/Results.mjs.map +1 -1
- package/dist/types/Sort.mjs +4 -2
- package/dist/types/Sort.mjs.map +1 -1
- package/dist/types/Tag.mjs +17 -3
- package/dist/types/Tag.mjs.map +1 -1
- package/dist/types/Template.mjs +14 -35
- package/dist/types/Template.mjs.map +1 -1
- package/dist/types/Text.mjs +19 -97
- package/dist/types/Text.mjs.map +1 -1
- package/dist/types/Try.mjs +14 -107
- package/dist/types/Try.mjs.map +1 -1
- package/dist/types/Uri.mjs +16 -74
- package/dist/types/Uri.mjs.map +1 -1
- package/dist/types/Uuid.mjs +5 -5
- package/dist/types/Uuid.mjs.map +1 -1
- package/dist/types/Validatable.mjs +6 -2
- package/dist/types/Validatable.mjs.map +1 -1
- package/dist/types/Value.mjs +14 -17
- package/dist/types/Value.mjs.map +1 -1
- package/dist/utils/Base64.mjs +3 -1
- package/dist/utils/Base64.mjs.map +1 -1
- package/dist/utils/Convert.mjs +15 -39
- package/dist/utils/Convert.mjs.map +1 -1
- package/dist/utils/If.mjs +10 -13
- package/dist/utils/If.mjs.map +1 -1
- package/dist/utils/Loading.mjs +6 -2
- package/dist/utils/Loading.mjs.map +1 -1
- package/dist/utils/Log.mjs +2 -0
- package/dist/utils/Log.mjs.map +1 -1
- package/dist/utils/Mapper.mjs +19 -101
- package/dist/utils/Mapper.mjs.map +1 -1
- package/dist/utils/Promise.mjs +19 -16
- package/dist/utils/Promise.mjs.map +1 -1
- package/dist/utils/Property.mjs +15 -14
- package/dist/utils/Property.mjs.map +1 -1
- package/dist/utils/Sentence.mjs +28 -14
- package/dist/utils/Sentence.mjs.map +1 -1
- package/dist/utils/State.mjs +7 -8
- package/dist/utils/State.mjs.map +1 -1
- package/dist/utils/Traverse.mjs +3 -5
- package/dist/utils/Traverse.mjs.map +1 -1
- package/dist/utils/View.mjs +21 -64
- package/dist/utils/View.mjs.map +1 -1
- package/dist/utils/Wait.mjs +5 -3
- package/dist/utils/Wait.mjs.map +1 -1
- package/dist/validation/Contraints.mjs +32 -29
- package/dist/validation/Contraints.mjs.map +1 -1
- package/dist/validation/Validate.mjs +16 -28
- package/dist/validation/Validate.mjs.map +1 -1
- package/dist/validation/When.mjs +14 -38
- package/dist/validation/When.mjs.map +1 -1
- package/package.json +4 -3
- package/dist/data/Condition.js +0 -71
- package/dist/data/Condition.js.map +0 -1
- package/dist/data/DataProvider.js +0 -17
- package/dist/data/DataProvider.js.map +0 -1
- package/dist/data/Database.js +0 -42
- package/dist/data/Database.js.map +0 -1
- package/dist/data/Field.js +0 -48
- package/dist/data/Field.js.map +0 -1
- package/dist/data/InMemoryGateway.js +0 -59
- package/dist/data/InMemoryGateway.js.map +0 -1
- package/dist/data/Query.js +0 -17
- package/dist/data/Query.js.map +0 -1
- package/dist/data/QueryProvider.js +0 -17
- package/dist/data/QueryProvider.js.map +0 -1
- package/dist/data/index.js +0 -35
- package/dist/data/index.js.map +0 -1
- package/dist/domain/Audit.js +0 -59
- package/dist/domain/Audit.js.map +0 -1
- package/dist/domain/Child.js +0 -49
- package/dist/domain/Child.js.map +0 -1
- package/dist/domain/Entity.js +0 -62
- package/dist/domain/Entity.js.map +0 -1
- package/dist/domain/Repo.js +0 -81
- package/dist/domain/Repo.js.map +0 -1
- package/dist/domain/Struct.js +0 -55
- package/dist/domain/Struct.js.map +0 -1
- package/dist/domain/Typo.js +0 -62
- package/dist/domain/Typo.js.map +0 -1
- package/dist/domain/enums/Country.js +0 -290
- package/dist/domain/enums/Country.js.map +0 -1
- package/dist/domain/enums/Currency.js +0 -159
- package/dist/domain/enums/Currency.js.map +0 -1
- package/dist/domain/enums/Environment.js +0 -35
- package/dist/domain/enums/Environment.js.map +0 -1
- package/dist/domain/enums/Locale.js +0 -605
- package/dist/domain/enums/Locale.js.map +0 -1
- package/dist/domain/enums/UnitOfMeasurement.js +0 -40
- package/dist/domain/enums/UnitOfMeasurement.js.map +0 -1
- package/dist/domain/enums/UnitOfWeight.js +0 -38
- package/dist/domain/enums/UnitOfWeight.js.map +0 -1
- package/dist/domain/enums/index.js +0 -33
- package/dist/domain/enums/index.js.map +0 -1
- package/dist/domain/index.js +0 -39
- package/dist/domain/index.js.map +0 -1
- package/dist/domain/structs/Address.js +0 -73
- package/dist/domain/structs/Address.js.map +0 -1
- package/dist/domain/structs/Box.js +0 -70
- package/dist/domain/structs/Box.js.map +0 -1
- package/dist/domain/structs/Dimension.js +0 -61
- package/dist/domain/structs/Dimension.js.map +0 -1
- package/dist/domain/structs/Money.js +0 -71
- package/dist/domain/structs/Money.js.map +0 -1
- package/dist/domain/structs/Name.js +0 -57
- package/dist/domain/structs/Name.js.map +0 -1
- package/dist/domain/structs/Weight.js +0 -71
- package/dist/domain/structs/Weight.js.map +0 -1
- package/dist/domain/structs/index.js +0 -33
- package/dist/domain/structs/index.js.map +0 -1
- package/dist/domain/values/DateTime.js +0 -120
- package/dist/domain/values/DateTime.js.map +0 -1
- package/dist/domain/values/EAN.js +0 -50
- package/dist/domain/values/EAN.js.map +0 -1
- package/dist/domain/values/Email.js +0 -57
- package/dist/domain/values/Email.js.map +0 -1
- package/dist/domain/values/IBAN.js +0 -50
- package/dist/domain/values/IBAN.js.map +0 -1
- package/dist/domain/values/PostalCode.js +0 -53
- package/dist/domain/values/PostalCode.js.map +0 -1
- package/dist/domain/values/Slug.js +0 -41
- package/dist/domain/values/Slug.js.map +0 -1
- package/dist/domain/values/Url.js +0 -57
- package/dist/domain/values/Url.js.map +0 -1
- package/dist/domain/values/index.js +0 -35
- package/dist/domain/values/index.js.map +0 -1
- package/dist/health/HealthResource.js +0 -49
- package/dist/health/HealthResource.js.map +0 -1
- package/dist/health/HealthUri.js +0 -33
- package/dist/health/HealthUri.js.map +0 -1
- package/dist/health/index.js +0 -25
- package/dist/health/index.js.map +0 -1
- package/dist/http/CacheControl.js +0 -56
- package/dist/http/CacheControl.js.map +0 -1
- package/dist/http/ContentType.js +0 -53
- package/dist/http/ContentType.js.map +0 -1
- package/dist/http/HttpHeader.js +0 -32
- package/dist/http/HttpHeader.js.map +0 -1
- package/dist/http/HttpStatus.js +0 -112
- package/dist/http/HttpStatus.js.map +0 -1
- package/dist/http/HttpVerb.js +0 -39
- package/dist/http/HttpVerb.js.map +0 -1
- package/dist/http/LocalRequestStore.js +0 -36
- package/dist/http/LocalRequestStore.js.map +0 -1
- package/dist/http/OriginatedError.js +0 -44
- package/dist/http/OriginatedError.js.map +0 -1
- package/dist/http/Request.js +0 -17
- package/dist/http/Request.js.map +0 -1
- package/dist/http/RequestOptions.js +0 -91
- package/dist/http/RequestOptions.js.map +0 -1
- package/dist/http/RequestProvider.js +0 -17
- package/dist/http/RequestProvider.js.map +0 -1
- package/dist/http/Response.js +0 -39
- package/dist/http/Response.js.map +0 -1
- package/dist/http/RestResult.js +0 -56
- package/dist/http/RestResult.js.map +0 -1
- package/dist/http/Verb.js +0 -61
- package/dist/http/Verb.js.map +0 -1
- package/dist/http/index.js +0 -45
- package/dist/http/index.js.map +0 -1
- package/dist/process/App.js +0 -35
- package/dist/process/App.js.map +0 -1
- package/dist/process/Manage.js +0 -43
- package/dist/process/Manage.js.map +0 -1
- package/dist/process/Scope.js +0 -46
- package/dist/process/Scope.js.map +0 -1
- package/dist/process/Search.js +0 -62
- package/dist/process/Search.js.map +0 -1
- package/dist/process/UseCase.js +0 -50
- package/dist/process/UseCase.js.map +0 -1
- package/dist/process/index.js +0 -31
- package/dist/process/index.js.map +0 -1
- package/dist/resources/AppProvider.js +0 -17
- package/dist/resources/AppProvider.js.map +0 -1
- package/dist/resources/Req.js +0 -54
- package/dist/resources/Req.js.map +0 -1
- package/dist/resources/Requires.js +0 -48
- package/dist/resources/Requires.js.map +0 -1
- package/dist/resources/Resource.js +0 -17
- package/dist/resources/Resource.js.map +0 -1
- package/dist/resources/Route.js +0 -62
- package/dist/resources/Route.js.map +0 -1
- package/dist/resources/Service.js +0 -49
- package/dist/resources/Service.js.map +0 -1
- package/dist/resources/index.js +0 -35
- package/dist/resources/index.js.map +0 -1
- package/dist/security/Jwt.js +0 -48
- package/dist/security/Jwt.js.map +0 -1
- package/dist/security/index.js +0 -23
- package/dist/security/index.js.map +0 -1
- package/dist/services/Api.js +0 -93
- package/dist/services/Api.js.map +0 -1
- package/dist/services/ApiGateway.js +0 -57
- package/dist/services/ApiGateway.js.map +0 -1
- package/dist/services/AxiosProvider.js +0 -61
- package/dist/services/AxiosProvider.js.map +0 -1
- package/dist/services/MappedRouteGateway.js +0 -52
- package/dist/services/MappedRouteGateway.js.map +0 -1
- package/dist/services/RouteGateway.js +0 -70
- package/dist/services/RouteGateway.js.map +0 -1
- package/dist/services/ViewRouteGateway.js +0 -55
- package/dist/services/ViewRouteGateway.js.map +0 -1
- package/dist/services/index.js +0 -33
- package/dist/services/index.js.map +0 -1
- package/dist/sql/Clause.js +0 -58
- package/dist/sql/Clause.js.map +0 -1
- package/dist/sql/Column.js +0 -96
- package/dist/sql/Column.js.map +0 -1
- package/dist/sql/Count.js +0 -35
- package/dist/sql/Count.js.map +0 -1
- package/dist/sql/Delete.js +0 -35
- package/dist/sql/Delete.js.map +0 -1
- package/dist/sql/Insert.js +0 -40
- package/dist/sql/Insert.js.map +0 -1
- package/dist/sql/Join.js +0 -46
- package/dist/sql/Join.js.map +0 -1
- package/dist/sql/Select.js +0 -68
- package/dist/sql/Select.js.map +0 -1
- package/dist/sql/SqlQuery.js +0 -39
- package/dist/sql/SqlQuery.js.map +0 -1
- package/dist/sql/Table.js +0 -63
- package/dist/sql/Table.js.map +0 -1
- package/dist/sql/TableGateway.js +0 -62
- package/dist/sql/TableGateway.js.map +0 -1
- package/dist/sql/Update.js +0 -41
- package/dist/sql/Update.js.map +0 -1
- package/dist/sql/index.js +0 -41
- package/dist/sql/index.js.map +0 -1
- package/dist/types/Array.js +0 -54
- package/dist/types/Array.js.map +0 -1
- package/dist/types/Builder.js +0 -43
- package/dist/types/Builder.js.map +0 -1
- package/dist/types/Cache.js +0 -38
- package/dist/types/Cache.js.map +0 -1
- package/dist/types/CacheAge.js +0 -64
- package/dist/types/CacheAge.js.map +0 -1
- package/dist/types/Case.js +0 -115
- package/dist/types/Case.js.map +0 -1
- package/dist/types/Constructor.js +0 -50
- package/dist/types/Constructor.js.map +0 -1
- package/dist/types/Context.js +0 -117
- package/dist/types/Context.js.map +0 -1
- package/dist/types/Enum.js +0 -76
- package/dist/types/Enum.js.map +0 -1
- package/dist/types/ErrorOrigin.js +0 -17
- package/dist/types/ErrorOrigin.js.map +0 -1
- package/dist/types/Exception.js +0 -54
- package/dist/types/Exception.js.map +0 -1
- package/dist/types/Falsy.js +0 -32
- package/dist/types/Falsy.js.map +0 -1
- package/dist/types/Func.js +0 -29
- package/dist/types/Func.js.map +0 -1
- package/dist/types/Gateway.js +0 -62
- package/dist/types/Gateway.js.map +0 -1
- package/dist/types/Get.js +0 -36
- package/dist/types/Get.js.map +0 -1
- package/dist/types/Id.js +0 -30
- package/dist/types/Id.js.map +0 -1
- package/dist/types/Identity.js +0 -17
- package/dist/types/Identity.js.map +0 -1
- package/dist/types/Is.js +0 -85
- package/dist/types/Is.js.map +0 -1
- package/dist/types/IsA.js +0 -33
- package/dist/types/IsA.js.map +0 -1
- package/dist/types/IsDate.js +0 -46
- package/dist/types/IsDate.js.map +0 -1
- package/dist/types/IsEqual.js +0 -39
- package/dist/types/IsEqual.js.map +0 -1
- package/dist/types/Json.js +0 -67
- package/dist/types/Json.js.map +0 -1
- package/dist/types/List.js +0 -208
- package/dist/types/List.js.map +0 -1
- package/dist/types/Message.js +0 -30
- package/dist/types/Message.js.map +0 -1
- package/dist/types/Meta.js +0 -71
- package/dist/types/Meta.js.map +0 -1
- package/dist/types/Nullish.js +0 -29
- package/dist/types/Nullish.js.map +0 -1
- package/dist/types/Number.js +0 -33
- package/dist/types/Number.js.map +0 -1
- package/dist/types/PageList.js.map +0 -1
- package/dist/types/Parser.js +0 -69
- package/dist/types/Parser.js.map +0 -1
- package/dist/types/Primitive.js +0 -32
- package/dist/types/Primitive.js.map +0 -1
- package/dist/types/Repository.js +0 -68
- package/dist/types/Repository.js.map +0 -1
- package/dist/types/Result.js +0 -38
- package/dist/types/Result.js.map +0 -1
- package/dist/types/Results.js +0 -51
- package/dist/types/Results.js.map +0 -1
- package/dist/types/Sort.js +0 -32
- package/dist/types/Sort.js.map +0 -1
- package/dist/types/Tag.js +0 -35
- package/dist/types/Tag.js.map +0 -1
- package/dist/types/Template.js +0 -65
- package/dist/types/Template.js.map +0 -1
- package/dist/types/Text.js +0 -137
- package/dist/types/Text.js.map +0 -1
- package/dist/types/Try.js +0 -137
- package/dist/types/Try.js.map +0 -1
- package/dist/types/TypeGuard.js +0 -17
- package/dist/types/TypeGuard.js.map +0 -1
- package/dist/types/Types.js +0 -17
- package/dist/types/Types.js.map +0 -1
- package/dist/types/Uri.js +0 -106
- package/dist/types/Uri.js.map +0 -1
- package/dist/types/Uuid.js +0 -35
- package/dist/types/Uuid.js.map +0 -1
- package/dist/types/Validatable.js +0 -30
- package/dist/types/Validatable.js.map +0 -1
- package/dist/types/Value.js +0 -47
- package/dist/types/Value.js.map +0 -1
- package/dist/types/index.js +0 -107
- package/dist/types/index.js.map +0 -1
- package/dist/utils/Base64.js +0 -33
- package/dist/utils/Base64.js.map +0 -1
- package/dist/utils/Convert.js +0 -69
- package/dist/utils/Convert.js.map +0 -1
- package/dist/utils/If.js +0 -47
- package/dist/utils/If.js.map +0 -1
- package/dist/utils/Loading.js +0 -30
- package/dist/utils/Loading.js.map +0 -1
- package/dist/utils/Log.js +0 -43
- package/dist/utils/Log.js.map +0 -1
- package/dist/utils/Mapper.js +0 -133
- package/dist/utils/Mapper.js.map +0 -1
- package/dist/utils/Promise.js +0 -56
- package/dist/utils/Promise.js.map +0 -1
- package/dist/utils/Property.js +0 -42
- package/dist/utils/Property.js.map +0 -1
- package/dist/utils/Sentence.js +0 -80
- package/dist/utils/Sentence.js.map +0 -1
- package/dist/utils/State.js +0 -36
- package/dist/utils/State.js.map +0 -1
- package/dist/utils/Traverse.js +0 -33
- package/dist/utils/Traverse.js.map +0 -1
- package/dist/utils/View.js +0 -86
- package/dist/utils/View.js.map +0 -1
- package/dist/utils/Wait.js +0 -39
- package/dist/utils/Wait.js.map +0 -1
- package/dist/utils/index.js +0 -47
- package/dist/utils/index.js.map +0 -1
- package/dist/validation/Contraints.js +0 -91
- package/dist/validation/Contraints.js.map +0 -1
- package/dist/validation/Validate.js +0 -46
- package/dist/validation/Validate.js.map +0 -1
- package/dist/validation/When.js +0 -68
- package/dist/validation/When.js.map +0 -1
- package/dist/validation/index.js +0 -27
- package/dist/validation/index.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/domain/Audit.ts"],"sourcesContent":["import { Struct } from './Struct';\nimport { choose, ctx, Id, Json } from '../types';\nimport { required, valid } from '../validation';\nimport { DateTime } from './values';\n\nexport class Audit extends Struct {\n @required() readonly by: { id: Id; user: string } = { 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({ by: ctx.request?.identity ?? { id: 0, user: 'easy' }, when: DateTime.now.toJSON() })\n );\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAKO,IAAM,QAAN,cAAoB,OAAO;AAAA,EACX,KAA+B,EAAE,IAAI,KAAK,MAAM,GAAG,IAAI,MAAM,KAAK,MAAM,GAAG,KAAK;AAAA,EACnF,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,EAAE,IAAI,IAAI,SAAS,YAAY,EAAE,IAAI,GAAG,MAAM,OAAO,GAAG,MAAM,SAAS,IAAI,OAAO,EAAE,CAAC;AAAA,IAC/F;AAAA,EACF;AACF;AAbuB;AAAA,EAApB,SAAS;AAAA,GADC,MACU;AACH;AAAA,EAAjB,MAAM;AAAA,GAFI,MAEO;","names":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Validatable.ts"],"sourcesContent":["import { isA } from './IsA';\nimport { TypeGuard } from './TypeGuard';\n\nexport interface Validatable {\n isValid: boolean;\n}\n\nexport const isValidatable: TypeGuard<Validatable> = (v?: unknown): v is Validatable => isA<Validatable>(v, 'isValid');\n"],"mappings":";;;;;AAOO,IAAM,gBAAwC,CAAC,MAAkC,IAAiB,GAAG,SAAS;","names":[]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import {
|
|
2
|
+
meta,
|
|
3
|
+
tryTo
|
|
4
|
+
} from "./chunk-YTWFWQNB.mjs";
|
|
5
|
+
|
|
6
|
+
// src/resources/Route.ts
|
|
7
|
+
var route = (uri) => (subject) => {
|
|
8
|
+
meta(subject).set("route", uri);
|
|
9
|
+
};
|
|
10
|
+
var toRoute = (endpoint, requires, verb, middleware) => tryTo(verb).is.defined().map((verb2) => ({ verb: verb2, endpoint, requires, middleware: middleware ?? [] })).orElse();
|
|
11
|
+
var Router = class {
|
|
12
|
+
constructor(resource) {
|
|
13
|
+
this.resource = resource;
|
|
14
|
+
}
|
|
15
|
+
get route() {
|
|
16
|
+
return meta(this.resource).get("route");
|
|
17
|
+
}
|
|
18
|
+
get middleware() {
|
|
19
|
+
return meta(this.resource).get("middleware") ?? [];
|
|
20
|
+
}
|
|
21
|
+
get endpoints() {
|
|
22
|
+
return meta(this.resource).properties("verb").mapDefined(
|
|
23
|
+
(v) => toRoute(
|
|
24
|
+
this.resource[v.property],
|
|
25
|
+
{
|
|
26
|
+
labCoat: v.get("labCoat") ?? false,
|
|
27
|
+
token: v.get("token") ?? false,
|
|
28
|
+
scope: v.get("scope"),
|
|
29
|
+
uc: v.get("uc")
|
|
30
|
+
},
|
|
31
|
+
v.get("verb"),
|
|
32
|
+
v.get("middleware")
|
|
33
|
+
)
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
var routes = (resource) => new Router(resource);
|
|
38
|
+
|
|
39
|
+
export {
|
|
40
|
+
route,
|
|
41
|
+
routes
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=chunk-D54TPU6G.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/resources/Route.ts"],"sourcesContent":["import { List, meta, Optional, tryTo, Uri } from '../types';\nimport { Verb } from '../http';\nimport { Req } from './Req';\nimport { Resource } from './Resource';\nimport { Scope, UseCase } from '../process';\nimport { RequestHandler } from 'express';\n\nexport const route =\n (uri: Uri): ClassDecorator =>\n (subject: unknown): void => {\n meta(subject).set('route', uri);\n };\n\nexport type Endpoint<T = unknown> = (re: Req) => Promise<T | List<T>>;\nexport type RouteRequires = { token: boolean; labCoat: boolean; scope?: Scope; uc?: UseCase };\nexport type Route = { verb: Verb; endpoint: Endpoint; requires: RouteRequires; middleware: RequestHandler[] };\nexport type Routes = { route: Uri; middleware: RequestHandler[]; endpoints: List<Route> };\n\nconst toRoute = (endpoint: Endpoint, requires: RouteRequires, verb?: Verb, middleware?: RequestHandler[]): Optional<Route> =>\n tryTo(verb)\n .is.defined()\n .map(verb => ({ verb, endpoint, requires, middleware: middleware ?? [] }) as Route)\n .orElse();\n\nclass Router implements Routes {\n constructor(readonly resource: Resource) {}\n\n get route(): Uri {\n return meta(this.resource).get('route');\n }\n\n get middleware(): RequestHandler[] {\n return meta(this.resource).get<RequestHandler[]>('middleware') ?? [];\n }\n\n get endpoints(): List<Route> {\n return meta(this.resource)\n .properties('verb')\n .mapDefined(v =>\n toRoute(\n this.resource[v.property],\n {\n labCoat: v.get<boolean>('labCoat') ?? false,\n token: v.get<boolean>('token') ?? false,\n scope: v.get<Scope>('scope'),\n uc: v.get<UseCase>('uc'),\n },\n v.get<Verb>('verb'),\n v.get<RequestHandler[]>('middleware')\n )\n );\n }\n}\n\nexport const routes = (resource: Resource): Routes => new Router(resource);\n"],"mappings":";;;;;;AAOO,IAAM,QACX,CAAC,QACD,CAAC,YAA2B;AAC1B,OAAK,OAAO,EAAE,IAAI,SAAS,GAAG;AAChC;AAOF,IAAM,UAAU,CAAC,UAAoB,UAAyB,MAAa,eACzE,MAAM,IAAI,EACP,GAAG,QAAQ,EACX,IAAI,CAAAA,WAAS,EAAE,MAAAA,OAAM,UAAU,UAAU,YAAY,cAAc,CAAC,EAAE,EAAW,EACjF,OAAO;AAEZ,IAAM,SAAN,MAA+B;AAAA,EAC7B,YAAqB,UAAoB;AAApB;AAAA,EAAqB;AAAA,EAE1C,IAAI,QAAa;AACf,WAAO,KAAK,KAAK,QAAQ,EAAE,IAAI,OAAO;AAAA,EACxC;AAAA,EAEA,IAAI,aAA+B;AACjC,WAAO,KAAK,KAAK,QAAQ,EAAE,IAAsB,YAAY,KAAK,CAAC;AAAA,EACrE;AAAA,EAEA,IAAI,YAAyB;AAC3B,WAAO,KAAK,KAAK,QAAQ,EACtB,WAAW,MAAM,EACjB;AAAA,MAAW,OACV;AAAA,QACE,KAAK,SAAS,EAAE,QAAQ;AAAA,QACxB;AAAA,UACE,SAAS,EAAE,IAAa,SAAS,KAAK;AAAA,UACtC,OAAO,EAAE,IAAa,OAAO,KAAK;AAAA,UAClC,OAAO,EAAE,IAAW,OAAO;AAAA,UAC3B,IAAI,EAAE,IAAa,IAAI;AAAA,QACzB;AAAA,QACA,EAAE,IAAU,MAAM;AAAA,QAClB,EAAE,IAAsB,YAAY;AAAA,MACtC;AAAA,IACF;AAAA,EACJ;AACF;AAEO,IAAM,SAAS,CAAC,aAA+B,IAAI,OAAO,QAAQ;","names":["verb"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
// src/utils/Traverse.ts
|
|
2
|
+
var traverse = (subject = {}, property = "") => {
|
|
3
|
+
const props = property.split(".");
|
|
4
|
+
const p = props.shift();
|
|
5
|
+
return props.length === 0 ? subject[p] : traverse(subject[p], props.join("."));
|
|
6
|
+
};
|
|
7
|
+
|
|
8
|
+
export {
|
|
9
|
+
traverse
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=chunk-DICMUQFL.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/Traverse.ts"],"sourcesContent":["export const traverse = (subject: unknown = {}, property = ''): unknown => {\n const props = property.split('.');\n const p = props.shift() as string;\n return props.length === 0 ? (subject as any)[p] : traverse((subject as any)[p], props.join('.'));\n};\n"],"mappings":";AAAO,IAAM,WAAW,CAAC,UAAmB,CAAC,GAAG,WAAW,OAAgB;AACzE,QAAM,QAAQ,SAAS,MAAM,GAAG;AAChC,QAAM,IAAI,MAAM,MAAM;AACtB,SAAO,MAAM,WAAW,IAAK,QAAgB,CAAC,IAAI,SAAU,QAAgB,CAAC,GAAG,MAAM,KAAK,GAAG,CAAC;AACjG;","names":[]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import {
|
|
2
|
+
inFuture,
|
|
3
|
+
inPast
|
|
4
|
+
} from "./chunk-ADJAEGCT.mjs";
|
|
5
|
+
import {
|
|
6
|
+
meta,
|
|
7
|
+
text,
|
|
8
|
+
toList,
|
|
9
|
+
tryTo,
|
|
10
|
+
validate
|
|
11
|
+
} from "./chunk-YTWFWQNB.mjs";
|
|
12
|
+
import {
|
|
13
|
+
isBoolean,
|
|
14
|
+
isDefined,
|
|
15
|
+
isFunction,
|
|
16
|
+
isIn,
|
|
17
|
+
isNotEmpty,
|
|
18
|
+
isString
|
|
19
|
+
} from "./chunk-OXBQSJDF.mjs";
|
|
20
|
+
|
|
21
|
+
// src/validation/Contraints.ts
|
|
22
|
+
var constraint = (c, message) => (subject, property) => {
|
|
23
|
+
const cs = meta(subject).property(property).get("constraint") ?? toList();
|
|
24
|
+
meta(subject).property(property).set("constraint", cs.add({ property, constraint: c, text: message }));
|
|
25
|
+
};
|
|
26
|
+
var defined = (message) => constraint((v) => isDefined(v), message ?? "Property {property} must be defined.");
|
|
27
|
+
var required = (message) => constraint((v) => isNotEmpty(v), message ?? "Property {property} is required, and may not be empty.");
|
|
28
|
+
var notEmpty = (message) => constraint((v) => isNotEmpty(v), message ?? "Property {property} may not be empty.");
|
|
29
|
+
var valid = () => constraint((v) => validate(v), "");
|
|
30
|
+
var optional = () => constraint((v) => !isDefined(v) || validate(v), "");
|
|
31
|
+
var includes = (sub, message) => constraint((s) => isDefined(s) && isString(s) && s.includes(sub), message ?? `Value {actual} must include '${sub}'.`);
|
|
32
|
+
var inList = (values, message) => constraint((v) => isDefined(v) && isIn(v, values), message ?? "Value {actual} must appear in list.");
|
|
33
|
+
var inOptionalList = (values, message) => constraint((v) => !isDefined(v) || isIn(v, values), message ?? "Value {actual} must appear in list.");
|
|
34
|
+
var gt = (limit, message) => constraint((v) => v > limit, message ?? `Value {actual} must be larger than '${limit}'.`);
|
|
35
|
+
var gte = (limit, message) => constraint((v) => v >= limit, message ?? `Value {actual} must be larger than or equal to ${limit}.`);
|
|
36
|
+
var lt = (limit, message) => constraint((v) => v < limit, message ?? `Value {actual} must be smaller than ${limit}.`);
|
|
37
|
+
var lte = (limit, message) => constraint((v) => v <= limit, message ?? `Value {actual} must be smaller than or equal to ${limit}.`);
|
|
38
|
+
var past = (message) => constraint((v) => inPast(v), message ?? "Value {actual} must lay in the past.");
|
|
39
|
+
var future = (message) => constraint((v) => inFuture(v), message ?? "Value {actual} must lay in the future.");
|
|
40
|
+
var minLength = (length, message) => constraint(
|
|
41
|
+
(v) => tryTo(() => v).is.defined().map((v2) => text(v2).toString().length >= length).orElse(true),
|
|
42
|
+
message ?? `Value {actual} must be at least '${length}' characters long.`
|
|
43
|
+
);
|
|
44
|
+
var maxLength = (length, message) => constraint(
|
|
45
|
+
(v) => tryTo(() => v).is.defined().map((v2) => text(v2).toString().length <= length).orElse(true),
|
|
46
|
+
message ?? `Value {actual} cannot be longer than '${length}' characters.`
|
|
47
|
+
);
|
|
48
|
+
var rule = (message) => constraint((v) => isFunction(v) ? v() : isBoolean(v) ? v : false, message ?? `Value {actual} must be true`);
|
|
49
|
+
|
|
50
|
+
export {
|
|
51
|
+
constraint,
|
|
52
|
+
defined,
|
|
53
|
+
required,
|
|
54
|
+
notEmpty,
|
|
55
|
+
valid,
|
|
56
|
+
optional,
|
|
57
|
+
includes,
|
|
58
|
+
inList,
|
|
59
|
+
inOptionalList,
|
|
60
|
+
gt,
|
|
61
|
+
gte,
|
|
62
|
+
lt,
|
|
63
|
+
lte,
|
|
64
|
+
past,
|
|
65
|
+
future,
|
|
66
|
+
minLength,
|
|
67
|
+
maxLength,
|
|
68
|
+
rule
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=chunk-EZC3HAYN.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/validation/Contraints.ts"],"sourcesContent":["import { Func, inFuture, inPast, isBoolean, isDefined, isFunction, isIn, isNotEmpty, isString, List, meta, Results, text, Text, toList, tryTo } from '../types';\nimport { validate, Validator } from './Validate';\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":";;;;;;;;;;;;;;;;;;;;;AAKO,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,37 @@
|
|
|
1
|
+
import {
|
|
2
|
+
on,
|
|
3
|
+
use
|
|
4
|
+
} from "./chunk-GI5TZOAG.mjs";
|
|
5
|
+
import {
|
|
6
|
+
isArray,
|
|
7
|
+
isDefined
|
|
8
|
+
} from "./chunk-OXBQSJDF.mjs";
|
|
9
|
+
|
|
10
|
+
// src/types/Array.ts
|
|
11
|
+
var toArray = (...items) => items.length > 1 ? items : isArray(items[0]) ? items[0] : isDefined(items[0]) ? [items[0]] : [];
|
|
12
|
+
var toObject = (key, ...items) => toArray(...items).reduce((o, i) => {
|
|
13
|
+
o[i[key]] = i;
|
|
14
|
+
return o;
|
|
15
|
+
}, {});
|
|
16
|
+
var array = {
|
|
17
|
+
merge: (first = [], second = [], firstKey = "id", secondKey = "id") => first.map((f) => ({
|
|
18
|
+
...f,
|
|
19
|
+
...second.find((s) => isDefined(s[secondKey]) && isDefined(f[firstKey]) && s[secondKey] === f[firstKey])
|
|
20
|
+
})),
|
|
21
|
+
switch: (items = [], item) => use([...items], (res) => {
|
|
22
|
+
on(res.indexOf(item), (i) => i !== -1 ? res.splice(i, 1) : res.push(item));
|
|
23
|
+
return res;
|
|
24
|
+
}),
|
|
25
|
+
splitIn: (items = [], length = 2) => {
|
|
26
|
+
const res = Array.from({ length }, () => []);
|
|
27
|
+
items.forEach((i, index) => res[index % length].push(i));
|
|
28
|
+
return res;
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
export {
|
|
33
|
+
toArray,
|
|
34
|
+
toObject,
|
|
35
|
+
array
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=chunk-FAAERRP2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Array.ts"],"sourcesContent":["import { isArray, isDefined } from './Is';\nimport { on, use } from './Constructor';\n\nexport type OneOrMore<T> = T | Array<T>;\nexport type ArrayLike<T> = OneOrMore<T>[];\n\nexport const toArray = <T>(...items: ArrayLike<T>): T[] =>\n items.length > 1 ? (items as T[]) : isArray(items[0]) ? items[0] : isDefined(items[0]) ? [items[0]] : [];\n\nexport const toObject = <T>(key: keyof T, ...items: ArrayLike<T>): Record<string | number | symbol, T> =>\n toArray(...items).reduce((o: any, i) => {\n o[i[key]] = i;\n return o;\n }, {});\n\nexport const array = {\n merge: (first: any[] = [], second: any[] = [], firstKey = 'id', secondKey = 'id'): any[] =>\n first.map(f => ({\n ...f,\n ...second.find(s => isDefined(s[secondKey]) && isDefined(f[firstKey]) && s[secondKey] === f[firstKey]),\n })),\n switch: <T>(items: T[] = [], item: T): T[] =>\n use([...items], res => {\n on(res.indexOf(item), i => (i !== -1 ? res.splice(i, 1) : res.push(item)));\n return res;\n }),\n splitIn: <T>(items: T[] = [], length = 2): T[][] => {\n const res: T[][] = Array.from({ length }, () => []);\n items.forEach((i, index) => res[index % length].push(i));\n return res;\n },\n};\n"],"mappings":";;;;;;;;;;AAMO,IAAM,UAAU,IAAO,UAC5B,MAAM,SAAS,IAAK,QAAgB,QAAQ,MAAM,CAAC,CAAC,IAAI,MAAM,CAAC,IAAI,UAAU,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;AAElG,IAAM,WAAW,CAAI,QAAiB,UAC3C,QAAQ,GAAG,KAAK,EAAE,OAAO,CAAC,GAAQ,MAAM;AACtC,IAAE,EAAE,GAAG,CAAC,IAAI;AACZ,SAAO;AACT,GAAG,CAAC,CAAC;AAEA,IAAM,QAAQ;AAAA,EACnB,OAAO,CAAC,QAAe,CAAC,GAAG,SAAgB,CAAC,GAAG,WAAW,MAAM,YAAY,SAC1E,MAAM,IAAI,QAAM;AAAA,IACd,GAAG;AAAA,IACH,GAAG,OAAO,KAAK,OAAK,UAAU,EAAE,SAAS,CAAC,KAAK,UAAU,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,QAAQ,CAAC;AAAA,EACvG,EAAE;AAAA,EACJ,QAAQ,CAAI,QAAa,CAAC,GAAG,SAC3B,IAAI,CAAC,GAAG,KAAK,GAAG,SAAO;AACrB,OAAG,IAAI,QAAQ,IAAI,GAAG,OAAM,MAAM,KAAK,IAAI,OAAO,GAAG,CAAC,IAAI,IAAI,KAAK,IAAI,CAAE;AACzE,WAAO;AAAA,EACT,CAAC;AAAA,EACH,SAAS,CAAI,QAAa,CAAC,GAAG,SAAS,MAAa;AAClD,UAAM,MAAa,MAAM,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,CAAC;AAClD,UAAM,QAAQ,CAAC,GAAG,UAAU,IAAI,QAAQ,MAAM,EAAE,KAAK,CAAC,CAAC;AACvD,WAAO;AAAA,EACT;AACF;","names":[]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Enum,
|
|
3
|
+
kebab,
|
|
4
|
+
text,
|
|
5
|
+
toList
|
|
6
|
+
} from "./chunk-YTWFWQNB.mjs";
|
|
7
|
+
import {
|
|
8
|
+
isString
|
|
9
|
+
} from "./chunk-OXBQSJDF.mjs";
|
|
10
|
+
|
|
11
|
+
// src/process/Scope.ts
|
|
12
|
+
var Scope = class _Scope extends Enum {
|
|
13
|
+
constructor(name, id = text(name).kebab, subs = toList()) {
|
|
14
|
+
super(name, id.toString());
|
|
15
|
+
this.name = name;
|
|
16
|
+
this.subs = subs;
|
|
17
|
+
}
|
|
18
|
+
for(item) {
|
|
19
|
+
return new _Scope(`${this.name} ${isString(item) ? text(item).title : item.name}`, kebab(`${this.id} ${isString(item) ? item : item.id}`));
|
|
20
|
+
}
|
|
21
|
+
combines(...scopes) {
|
|
22
|
+
this.subs.add(scopes);
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
expand() {
|
|
26
|
+
return this.subs.flatMap((s) => s.expand()).add(this).distinct();
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export {
|
|
31
|
+
Scope
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=chunk-FSK4W6I2.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/process/Scope.ts"],"sourcesContent":["import { Enum, IdName, isString, kebab, List, Text, text, toList } from '../types';\n\nexport class Scope extends Enum {\n protected constructor(readonly name: string, id: Text = text(name).kebab, readonly subs: List<Scope> = toList()) {\n super(name, id.toString());\n }\n\n for(item: string | IdName): 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":";;;;;;;;;;;AAEO,IAAM,QAAN,MAAM,eAAc,KAAK;AAAA,EACpB,YAAqB,MAAc,KAAW,KAAK,IAAI,EAAE,OAAgB,OAAoB,OAAO,GAAG;AAC/G,UAAM,MAAM,GAAG,SAAS,CAAC;AADI;AAAoD;AAAA,EAEnF;AAAA,EAEA,IAAI,MAA8B;AAChC,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,23 @@
|
|
|
1
|
+
import {
|
|
2
|
+
SqlQuery
|
|
3
|
+
} from "./chunk-O62PGEQ7.mjs";
|
|
4
|
+
import {
|
|
5
|
+
quote
|
|
6
|
+
} from "./chunk-SJGDB24D.mjs";
|
|
7
|
+
|
|
8
|
+
// src/sql/Insert.ts
|
|
9
|
+
var Insert = class extends SqlQuery {
|
|
10
|
+
constructor(table, fields) {
|
|
11
|
+
super(table);
|
|
12
|
+
this.table = table;
|
|
13
|
+
this.fields = fields;
|
|
14
|
+
}
|
|
15
|
+
toString() {
|
|
16
|
+
return `INSERT INTO ${this.table} (${Object.keys(this.fields).join(", ")}) OUTPUT INSERTED.* VALUES (${Object.values(this.fields).map((v) => quote(v)).join(", ")});`;
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export {
|
|
21
|
+
Insert
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=chunk-G7QSW2EB.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/sql/Insert.ts"],"sourcesContent":["import { SqlQuery } from './SqlQuery';\nimport { Json } from '../types';\nimport { quote } from './Clause';\nimport { Table } from './Table';\n\nexport class Insert extends SqlQuery {\n constructor(protected table: Table, protected fields: Json) {\n super(table);\n }\n\n toString(): string {\n return (\n `INSERT INTO ${this.table} ` +\n `(${Object.keys(this.fields).join(', ')}) OUTPUT INSERTED.* ` +\n `VALUES (${Object.values(this.fields)\n .map(v => quote(v))\n .join(', ')});`\n );\n }\n}\n"],"mappings":";;;;;;;;AAKO,IAAM,SAAN,cAAqB,SAAS;AAAA,EACnC,YAAsB,OAAwB,QAAc;AAC1D,UAAM,KAAK;AADS;AAAwB;AAAA,EAE9C;AAAA,EAEA,WAAmB;AACjB,WACE,eAAe,KAAK,KAAK,KACrB,OAAO,KAAK,KAAK,MAAM,EAAE,KAAK,IAAI,CAAC,+BAC5B,OAAO,OAAO,KAAK,MAAM,EACjC,IAAI,OAAK,MAAM,CAAC,CAAC,EACjB,KAAK,IAAI,CAAC;AAAA,EAEjB;AACF;","names":[]}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import {
|
|
2
|
+
asString,
|
|
3
|
+
ctx,
|
|
4
|
+
entries,
|
|
5
|
+
meta,
|
|
6
|
+
toList,
|
|
7
|
+
tryTo
|
|
8
|
+
} from "./chunk-YTWFWQNB.mjs";
|
|
9
|
+
import {
|
|
10
|
+
toArray
|
|
11
|
+
} from "./chunk-FAAERRP2.mjs";
|
|
12
|
+
import {
|
|
13
|
+
toName
|
|
14
|
+
} from "./chunk-GI5TZOAG.mjs";
|
|
15
|
+
import {
|
|
16
|
+
isBoolean,
|
|
17
|
+
isNotEmpty,
|
|
18
|
+
isTrue
|
|
19
|
+
} from "./chunk-OXBQSJDF.mjs";
|
|
20
|
+
|
|
21
|
+
// src/types/Uri.ts
|
|
22
|
+
var toSegment = (key, {
|
|
23
|
+
segment,
|
|
24
|
+
query
|
|
25
|
+
} = {}) => ({
|
|
26
|
+
key,
|
|
27
|
+
segment,
|
|
28
|
+
query,
|
|
29
|
+
toString: () => asString(key)
|
|
30
|
+
});
|
|
31
|
+
var uri = {
|
|
32
|
+
host: (key) => toSegment(key, { segment: key ?? ctx.env.host ?? "$host" }),
|
|
33
|
+
resource: (resource) => toSegment(toName(resource, "Uri"), { segment: toName(resource, "Uri") }),
|
|
34
|
+
segment: (key) => toSegment(key, { segment: key }),
|
|
35
|
+
path: (key) => toSegment(key, { segment: `:${key}` }),
|
|
36
|
+
query: (key) => toSegment(key, {
|
|
37
|
+
query: (value) => tryTo(value).is.defined().map((v) => encodeURIComponent(asString(v))).map((v) => `${key}=${v}`).orElse("") ?? ""
|
|
38
|
+
}),
|
|
39
|
+
boolean: (key) => toSegment(key, { query: (value) => isTrue(value) ? `${key}` : "" })
|
|
40
|
+
};
|
|
41
|
+
var toRoute = (...segments) => toList(segments).mapDefined((s) => s.segment).join("/");
|
|
42
|
+
var EasyUri = class _EasyUri {
|
|
43
|
+
constructor(segments = []) {
|
|
44
|
+
this.segments = segments;
|
|
45
|
+
}
|
|
46
|
+
static id = uri.path("id");
|
|
47
|
+
static ids = uri.query("ids");
|
|
48
|
+
static query = uri.query("q");
|
|
49
|
+
static sort = uri.query("s");
|
|
50
|
+
static skip = uri.query("skip");
|
|
51
|
+
static take = uri.query("take");
|
|
52
|
+
host = uri.host();
|
|
53
|
+
resource = uri.resource(this);
|
|
54
|
+
state = {};
|
|
55
|
+
get path() {
|
|
56
|
+
return toRoute(uri.segment(""), this.resource, ...this.segments);
|
|
57
|
+
}
|
|
58
|
+
get complete() {
|
|
59
|
+
return toRoute(this.host, this.resource, ...this.segments);
|
|
60
|
+
}
|
|
61
|
+
get isInternal() {
|
|
62
|
+
return toRoute(this.host) === (ctx.env.host ?? "$host");
|
|
63
|
+
}
|
|
64
|
+
get props() {
|
|
65
|
+
return meta(this.state).values();
|
|
66
|
+
}
|
|
67
|
+
route = (resource = this.resource.key) => toRoute(uri.segment(""), uri.segment(resource?.toLowerCase()), ...this.segments);
|
|
68
|
+
set = (segment, value) => {
|
|
69
|
+
tryTo(value).is.defined().accept((value2) => this.state[segment.key ?? ""] = { segment, value: value2 });
|
|
70
|
+
return this;
|
|
71
|
+
};
|
|
72
|
+
toString() {
|
|
73
|
+
return tryTo(() => this.props).map((ps) => ps.filter((p) => p.segment?.segment)).map((ps) => ps.reduce((r, p) => r.replace(asString(p.segment.segment), asString(p.value)), this.complete)).map((route) => ({
|
|
74
|
+
route,
|
|
75
|
+
query: this.props.mapDefined((p) => p.segment?.query ? p.segment?.query(p.value) : void 0)?.join("&")
|
|
76
|
+
})).map(({ route, query }) => isNotEmpty(query) ? `${route}?${query}` : route).value;
|
|
77
|
+
}
|
|
78
|
+
id = (id) => this.set(_EasyUri.id, id);
|
|
79
|
+
ids = (ids) => this.set(_EasyUri.ids, toArray(ids).join(","));
|
|
80
|
+
query = (q) => this.set(_EasyUri.query, q);
|
|
81
|
+
sort = (s) => this.set(_EasyUri.sort, asString(s));
|
|
82
|
+
skip = (index) => this.set(_EasyUri.skip, index);
|
|
83
|
+
take = (items) => this.set(_EasyUri.take, items);
|
|
84
|
+
expand(props) {
|
|
85
|
+
return entries(props).filter(([_, v]) => isNotEmpty(v)).reduce((u, [k, v]) => isBoolean(v) ? u.set(uri.boolean(k), v) : u.set(uri.query(k), toArray(v).join(",")), this);
|
|
86
|
+
}
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
export {
|
|
90
|
+
toSegment,
|
|
91
|
+
uri,
|
|
92
|
+
EasyUri
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=chunk-GDD652NR.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Uri.ts"],"sourcesContent":["import { isBoolean, isNotEmpty, isTrue } from './Is';\nimport { asString, Text } from './Text';\nimport { toName } from './Constructor';\nimport { ctx } from './Context';\nimport { List, toList } from './List';\nimport { entries, meta } from './Meta';\nimport { tryTo } from './Try';\nimport { Optional } from './Types';\nimport { OneOrMore, toArray } from './Array';\n\nexport type Segment = Text & { key?: string; segment?: string; query?: (value: unknown) => string };\n\nexport const toSegment = (\n key?: Text,\n {\n segment,\n query,\n }: {\n segment?: string;\n query?: (value: unknown) => string;\n } = {}\n): Segment => ({\n key: key as string,\n segment,\n query,\n toString: () => asString(key),\n});\n\nexport const uri = {\n host: (key?: string): Segment => toSegment(key, { segment: key ?? ctx.env.host ?? '$host' }),\n resource: (resource: Uri): Segment => toSegment(toName(resource, 'Uri'), { segment: toName(resource, 'Uri') }),\n segment: (key?: Text): Segment => toSegment(key, { segment: key as string }),\n path: (key: Text): Segment => toSegment(key, { segment: `:${key}` }),\n query: (key: Text): Segment =>\n toSegment(key, {\n query: (value: unknown): string =>\n tryTo(value)\n .is.defined()\n .map(v => encodeURIComponent(asString(v)))\n .map(v => `${key}=${v}`)\n .orElse('') ?? '',\n }),\n boolean: (key: Text): Segment => toSegment(key, { query: (value: unknown): string => (isTrue(value) ? `${key}` : '') }),\n};\n\ntype Prop = { segment: Segment; value: any };\n\nconst toRoute = (...segments: Segment[]): string =>\n toList(segments)\n .mapDefined(s => s.segment)\n .join('/');\n\nexport type Uri = {\n id: (id?: unknown) => Uri;\n ids: (ids: OneOrMore<unknown>) => Uri;\n query: (q?: unknown) => Uri;\n sort: (q?: any) => Uri;\n skip: (n?: number) => Uri;\n take: (n?: number) => Uri;\n path: string;\n route: (resource: string) => string;\n isInternal: boolean;\n toString: () => string;\n};\n\nexport type UriExpandProps = { q: string; s: string };\n\nexport class EasyUri<Props = UriExpandProps> implements Uri {\n static readonly id = uri.path('id');\n static readonly ids = uri.query('ids');\n static readonly query = uri.query('q');\n static readonly sort = uri.query('s');\n static readonly skip = uri.query('skip');\n static readonly take = uri.query('take');\n\n readonly host = uri.host();\n protected resource = uri.resource(this);\n\n protected state: any = {};\n\n constructor(readonly segments: Segment[] = []) {}\n\n get path(): string {\n return toRoute(uri.segment(''), this.resource, ...this.segments);\n }\n\n get complete(): string {\n return toRoute(this.host, this.resource, ...this.segments);\n }\n\n get isInternal(): boolean {\n return toRoute(this.host) === (ctx.env.host ?? '$host');\n }\n\n protected get props(): List<Prop> {\n return meta(this.state).values<Prop>();\n }\n\n route = (resource: Optional<string> = this.resource.key): string => toRoute(uri.segment(''), uri.segment(resource?.toLowerCase()), ...this.segments);\n\n set = (segment: Segment, value?: unknown): this => {\n tryTo(value)\n .is.defined()\n .accept(value => (this.state[segment.key ?? ''] = { segment, value }));\n return this;\n };\n\n toString(): string {\n return tryTo(() => this.props)\n .map(ps => ps.filter(p => p.segment?.segment))\n .map(ps => ps.reduce((r: string, p: Prop) => r.replace(asString(p.segment.segment), asString(p.value)), this.complete))\n .map(route => ({\n route,\n query: this.props.mapDefined(p => (p.segment?.query ? p.segment?.query(p.value) : undefined))?.join('&'),\n }))\n .map(({ route, query }) => (isNotEmpty(query) ? `${route}?${query}` : route)).value;\n }\n\n id = (id?: unknown): this => this.set(EasyUri.id, id);\n ids = (ids: OneOrMore<unknown>): this => this.set(EasyUri.ids, toArray(ids).join(','));\n query = (q?: unknown): this => this.set(EasyUri.query, q);\n sort = (s?: any): this => this.set(EasyUri.sort, asString(s));\n\n skip = (index?: number): this => this.set(EasyUri.skip, index);\n take = (items?: number): this => this.set(EasyUri.take, items);\n\n expand(props: Partial<Props>): this {\n return entries(props)\n .filter(([_, v]) => isNotEmpty(v))\n .reduce((u, [k, v]) => (isBoolean(v) ? u.set(uri.boolean(k), v) : u.set(uri.query(k), toArray(v).join(','))), this);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAYO,IAAM,YAAY,CACvB,KACA;AAAA,EACE;AAAA,EACA;AACF,IAGI,CAAC,OACQ;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA,UAAU,MAAM,SAAS,GAAG;AAC9B;AAEO,IAAM,MAAM;AAAA,EACjB,MAAM,CAAC,QAA0B,UAAU,KAAK,EAAE,SAAS,OAAO,IAAI,IAAI,QAAQ,QAAQ,CAAC;AAAA,EAC3F,UAAU,CAAC,aAA2B,UAAU,OAAO,UAAU,KAAK,GAAG,EAAE,SAAS,OAAO,UAAU,KAAK,EAAE,CAAC;AAAA,EAC7G,SAAS,CAAC,QAAwB,UAAU,KAAK,EAAE,SAAS,IAAc,CAAC;AAAA,EAC3E,MAAM,CAAC,QAAuB,UAAU,KAAK,EAAE,SAAS,IAAI,GAAG,GAAG,CAAC;AAAA,EACnE,OAAO,CAAC,QACN,UAAU,KAAK;AAAA,IACb,OAAO,CAAC,UACN,MAAM,KAAK,EACR,GAAG,QAAQ,EACX,IAAI,OAAK,mBAAmB,SAAS,CAAC,CAAC,CAAC,EACxC,IAAI,OAAK,GAAG,GAAG,IAAI,CAAC,EAAE,EACtB,OAAO,EAAE,KAAK;AAAA,EACrB,CAAC;AAAA,EACH,SAAS,CAAC,QAAuB,UAAU,KAAK,EAAE,OAAO,CAAC,UAA4B,OAAO,KAAK,IAAI,GAAG,GAAG,KAAK,GAAI,CAAC;AACxH;AAIA,IAAM,UAAU,IAAI,aAClB,OAAO,QAAQ,EACZ,WAAW,OAAK,EAAE,OAAO,EACzB,KAAK,GAAG;AAiBN,IAAM,UAAN,MAAM,SAA+C;AAAA,EAa1D,YAAqB,WAAsB,CAAC,GAAG;AAA1B;AAAA,EAA2B;AAAA,EAZhD,OAAgB,KAAK,IAAI,KAAK,IAAI;AAAA,EAClC,OAAgB,MAAM,IAAI,MAAM,KAAK;AAAA,EACrC,OAAgB,QAAQ,IAAI,MAAM,GAAG;AAAA,EACrC,OAAgB,OAAO,IAAI,MAAM,GAAG;AAAA,EACpC,OAAgB,OAAO,IAAI,MAAM,MAAM;AAAA,EACvC,OAAgB,OAAO,IAAI,MAAM,MAAM;AAAA,EAE9B,OAAO,IAAI,KAAK;AAAA,EACf,WAAW,IAAI,SAAS,IAAI;AAAA,EAE5B,QAAa,CAAC;AAAA,EAIxB,IAAI,OAAe;AACjB,WAAO,QAAQ,IAAI,QAAQ,EAAE,GAAG,KAAK,UAAU,GAAG,KAAK,QAAQ;AAAA,EACjE;AAAA,EAEA,IAAI,WAAmB;AACrB,WAAO,QAAQ,KAAK,MAAM,KAAK,UAAU,GAAG,KAAK,QAAQ;AAAA,EAC3D;AAAA,EAEA,IAAI,aAAsB;AACxB,WAAO,QAAQ,KAAK,IAAI,OAAO,IAAI,IAAI,QAAQ;AAAA,EACjD;AAAA,EAEA,IAAc,QAAoB;AAChC,WAAO,KAAK,KAAK,KAAK,EAAE,OAAa;AAAA,EACvC;AAAA,EAEA,QAAQ,CAAC,WAA6B,KAAK,SAAS,QAAgB,QAAQ,IAAI,QAAQ,EAAE,GAAG,IAAI,QAAQ,UAAU,YAAY,CAAC,GAAG,GAAG,KAAK,QAAQ;AAAA,EAEnJ,MAAM,CAAC,SAAkB,UAA0B;AACjD,UAAM,KAAK,EACR,GAAG,QAAQ,EACX,OAAO,CAAAA,WAAU,KAAK,MAAM,QAAQ,OAAO,EAAE,IAAI,EAAE,SAAS,OAAAA,OAAM,CAAE;AACvE,WAAO;AAAA,EACT;AAAA,EAEA,WAAmB;AACjB,WAAO,MAAM,MAAM,KAAK,KAAK,EAC1B,IAAI,QAAM,GAAG,OAAO,OAAK,EAAE,SAAS,OAAO,CAAC,EAC5C,IAAI,QAAM,GAAG,OAAO,CAAC,GAAW,MAAY,EAAE,QAAQ,SAAS,EAAE,QAAQ,OAAO,GAAG,SAAS,EAAE,KAAK,CAAC,GAAG,KAAK,QAAQ,CAAC,EACrH,IAAI,YAAU;AAAA,MACb;AAAA,MACA,OAAO,KAAK,MAAM,WAAW,OAAM,EAAE,SAAS,QAAQ,EAAE,SAAS,MAAM,EAAE,KAAK,IAAI,MAAU,GAAG,KAAK,GAAG;AAAA,IACzG,EAAE,EACD,IAAI,CAAC,EAAE,OAAO,MAAM,MAAO,WAAW,KAAK,IAAI,GAAG,KAAK,IAAI,KAAK,KAAK,KAAM,EAAE;AAAA,EAClF;AAAA,EAEA,KAAK,CAAC,OAAuB,KAAK,IAAI,SAAQ,IAAI,EAAE;AAAA,EACpD,MAAM,CAAC,QAAkC,KAAK,IAAI,SAAQ,KAAK,QAAQ,GAAG,EAAE,KAAK,GAAG,CAAC;AAAA,EACrF,QAAQ,CAAC,MAAsB,KAAK,IAAI,SAAQ,OAAO,CAAC;AAAA,EACxD,OAAO,CAAC,MAAkB,KAAK,IAAI,SAAQ,MAAM,SAAS,CAAC,CAAC;AAAA,EAE5D,OAAO,CAAC,UAAyB,KAAK,IAAI,SAAQ,MAAM,KAAK;AAAA,EAC7D,OAAO,CAAC,UAAyB,KAAK,IAAI,SAAQ,MAAM,KAAK;AAAA,EAE7D,OAAO,OAA6B;AAClC,WAAO,QAAQ,KAAK,EACjB,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,WAAW,CAAC,CAAC,EAChC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAO,UAAU,CAAC,IAAI,EAAE,IAAI,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,MAAM,CAAC,GAAG,QAAQ,CAAC,EAAE,KAAK,GAAG,CAAC,GAAI,IAAI;AAAA,EACtH;AACF;","names":["value"]}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import {
|
|
2
|
+
UnitOfMeasurement
|
|
3
|
+
} from "./chunk-V62IOKST.mjs";
|
|
4
|
+
import {
|
|
5
|
+
required
|
|
6
|
+
} from "./chunk-EZC3HAYN.mjs";
|
|
7
|
+
import {
|
|
8
|
+
Struct
|
|
9
|
+
} from "./chunk-QOGUHAMC.mjs";
|
|
10
|
+
import {
|
|
11
|
+
__decorateClass
|
|
12
|
+
} from "./chunk-4N72FQFX.mjs";
|
|
13
|
+
|
|
14
|
+
// src/domain/structs/Dimension.ts
|
|
15
|
+
var _Dimension = class _Dimension extends Struct {
|
|
16
|
+
value = this.state.value;
|
|
17
|
+
uom = UnitOfMeasurement.byId(this.state.uom, UnitOfMeasurement.MM);
|
|
18
|
+
static with = (value, uom = UnitOfMeasurement.MM) => new _Dimension({ value, uom });
|
|
19
|
+
/**
|
|
20
|
+
@deprecated use inMilliMeters getter instead
|
|
21
|
+
*/
|
|
22
|
+
sizeInMM() {
|
|
23
|
+
return this.inMilliMeters;
|
|
24
|
+
}
|
|
25
|
+
get inMilliMeters() {
|
|
26
|
+
return this.value * this.uom.mmMultiplier;
|
|
27
|
+
}
|
|
28
|
+
gte(dim) {
|
|
29
|
+
return this.inMilliMeters >= dim.inMilliMeters;
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
__decorateClass([
|
|
33
|
+
required()
|
|
34
|
+
], _Dimension.prototype, "value", 2);
|
|
35
|
+
var Dimension = _Dimension;
|
|
36
|
+
|
|
37
|
+
export {
|
|
38
|
+
Dimension
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=chunk-GGC4TWMF.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/domain/structs/Dimension.ts"],"sourcesContent":["import { Struct } from '../Struct';\nimport { required } from '../../validation';\nimport { UnitOfMeasurement } from '../enums';\n\nexport class Dimension extends Struct {\n @required() readonly value = this.state.value as number;\n readonly uom = UnitOfMeasurement.byId<UnitOfMeasurement>(this.state.uom, UnitOfMeasurement.MM);\n\n static with = (value: number, uom: UnitOfMeasurement = UnitOfMeasurement.MM) => new Dimension({ value, uom });\n\n /**\n @deprecated use inMilliMeters getter instead\n */\n sizeInMM(): number {\n return this.inMilliMeters;\n }\n\n get inMilliMeters(): number {\n return this.value * this.uom.mmMultiplier;\n }\n\n gte(dim: Dimension): boolean {\n return this.inMilliMeters >= dim.inMilliMeters;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AAIO,IAAM,aAAN,MAAM,mBAAkB,OAAO;AAAA,EACf,QAAQ,KAAK,MAAM;AAAA,EAC/B,MAAM,kBAAkB,KAAwB,KAAK,MAAM,KAAK,kBAAkB,EAAE;AAAA,EAE7F,OAAO,OAAO,CAAC,OAAe,MAAyB,kBAAkB,OAAO,IAAI,WAAU,EAAE,OAAO,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA,EAK5G,WAAmB;AACjB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAI,gBAAwB;AAC1B,WAAO,KAAK,QAAQ,KAAK,IAAI;AAAA,EAC/B;AAAA,EAEA,IAAI,KAAyB;AAC3B,WAAO,KAAK,iBAAiB,IAAI;AAAA,EACnC;AACF;AAnBuB;AAAA,EAApB,SAAS;AAAA,GADC,WACU;AADhB,IAAM,YAAN;","names":[]}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import {
|
|
2
|
+
isPrimitive
|
|
3
|
+
} from "./chunk-PSIJUWZT.mjs";
|
|
4
|
+
import {
|
|
5
|
+
isFunc
|
|
6
|
+
} from "./chunk-PIRWVOO2.mjs";
|
|
7
|
+
import {
|
|
8
|
+
isDefined
|
|
9
|
+
} from "./chunk-OXBQSJDF.mjs";
|
|
10
|
+
|
|
11
|
+
// src/types/Constructor.ts
|
|
12
|
+
var isConstructor = (c) => (isDefined(c) && isFunc(c) && c.prototype && c.prototype.constructor) === c;
|
|
13
|
+
var ofConstruct = (c, ...args) => isConstructor(c) ? new c(...args) : isFunc(c) ? c(...args) : c;
|
|
14
|
+
var toName = (subject, postfix = "") => subject?.constructor?.name?.replace(postfix, "").toLowerCase() ?? "";
|
|
15
|
+
var on = (t, f) => {
|
|
16
|
+
f(t);
|
|
17
|
+
return t;
|
|
18
|
+
};
|
|
19
|
+
var use = (t, f) => f(t);
|
|
20
|
+
var ifA = (c, t, alt) => !isPrimitive(t) && t instanceof c ? t : alt ? ifA(c, alt) : void 0;
|
|
21
|
+
|
|
22
|
+
export {
|
|
23
|
+
isConstructor,
|
|
24
|
+
ofConstruct,
|
|
25
|
+
toName,
|
|
26
|
+
on,
|
|
27
|
+
use,
|
|
28
|
+
ifA
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=chunk-GI5TZOAG.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Constructor.ts"],"sourcesContent":["import { Get } from './Get';\nimport { isFunc } from './Func';\nimport { isDefined } from './Is';\nimport { isPrimitive } from './Primitive';\nimport { Optional } from './Types';\n\nexport type Constructor<T = unknown> = { new (...args: any[]): T };\n\n// export type Construct<T> = Get<T> | Constructor<T>;\nexport type Construct<Out, In = any> = Get<Out, In> | Constructor<Out>;\n\nexport const isConstructor = <T>(c?: unknown): c is Constructor<T> => (isDefined(c) && isFunc<T, unknown>(c) && c.prototype && c.prototype.constructor) === c;\n\nexport const ofConstruct = <T>(c: Construct<T>, ...args: unknown[]): T => (isConstructor<T>(c) ? new c(...args) : isFunc<T, unknown>(c) ? c(...args) : c);\n\nexport const toName = (subject?: unknown, postfix = ''): string => (subject as any)?.constructor?.name?.replace(postfix, '').toLowerCase() ?? '';\n\nexport const on = <T>(t: T, f: (t: T) => unknown): T => {\n f(t);\n return t;\n};\n\nexport const use = <T, Out>(t: T, f: (t: T) => Out): Out => f(t);\n\nexport const ifA = <T>(c: Constructor<T>, t?: unknown, alt?: unknown): Optional<T> => (!isPrimitive(t) && t instanceof c ? t : alt ? ifA(c, alt) : undefined);\n\nexport type RequireAtLeastOne<T, Keys extends keyof T = keyof T> = Pick<T, Exclude<keyof T, Keys>> &\n {\n [K in Keys]-?: Required<Pick<T, K>> & Partial<Pick<T, Exclude<Keys, K>>>;\n }[Keys];\n"],"mappings":";;;;;;;;;;;AAWO,IAAM,gBAAgB,CAAI,OAAsC,UAAU,CAAC,KAAK,OAAmB,CAAC,KAAK,EAAE,aAAa,EAAE,UAAU,iBAAiB;AAErJ,IAAM,cAAc,CAAI,MAAoB,SAAwB,cAAiB,CAAC,IAAI,IAAI,EAAE,GAAG,IAAI,IAAI,OAAmB,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI;AAEhJ,IAAM,SAAS,CAAC,SAAmB,UAAU,OAAgB,SAAiB,aAAa,MAAM,QAAQ,SAAS,EAAE,EAAE,YAAY,KAAK;AAEvI,IAAM,KAAK,CAAI,GAAM,MAA4B;AACtD,IAAE,CAAC;AACH,SAAO;AACT;AAEO,IAAM,MAAM,CAAS,GAAM,MAA0B,EAAE,CAAC;AAExD,IAAM,MAAM,CAAI,GAAmB,GAAa,QAAgC,CAAC,YAAY,CAAC,KAAK,aAAa,IAAI,IAAI,MAAM,IAAI,GAAG,GAAG,IAAI;","names":[]}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import {
|
|
2
|
+
SqlQuery
|
|
3
|
+
} from "./chunk-O62PGEQ7.mjs";
|
|
4
|
+
import {
|
|
5
|
+
toList
|
|
6
|
+
} from "./chunk-YTWFWQNB.mjs";
|
|
7
|
+
import {
|
|
8
|
+
ifGet
|
|
9
|
+
} from "./chunk-SJGQU3OG.mjs";
|
|
10
|
+
|
|
11
|
+
// src/sql/Select.ts
|
|
12
|
+
var Select = class extends SqlQuery {
|
|
13
|
+
constructor(table, columns = toList()) {
|
|
14
|
+
super(table);
|
|
15
|
+
this.columns = columns;
|
|
16
|
+
}
|
|
17
|
+
ordered = toList();
|
|
18
|
+
grouped = toList();
|
|
19
|
+
_top = 0;
|
|
20
|
+
_limit = 0;
|
|
21
|
+
_offset = 0;
|
|
22
|
+
from(t) {
|
|
23
|
+
this.table = t ?? this.table;
|
|
24
|
+
return this;
|
|
25
|
+
}
|
|
26
|
+
orderBy = (...ordered) => {
|
|
27
|
+
this.ordered.add(ordered);
|
|
28
|
+
return this;
|
|
29
|
+
};
|
|
30
|
+
groupBy(...grouped) {
|
|
31
|
+
this.grouped.add(grouped);
|
|
32
|
+
return this;
|
|
33
|
+
}
|
|
34
|
+
top(t) {
|
|
35
|
+
this._top = t;
|
|
36
|
+
return this;
|
|
37
|
+
}
|
|
38
|
+
limit(l) {
|
|
39
|
+
this._limit = l;
|
|
40
|
+
return this;
|
|
41
|
+
}
|
|
42
|
+
offset(o) {
|
|
43
|
+
this._offset = o;
|
|
44
|
+
return this;
|
|
45
|
+
}
|
|
46
|
+
toString() {
|
|
47
|
+
return `SELECT ` + ifGet(this._top, `TOP ${this._top} `, "") + ifGet(this.columns.length, this.columns.join(", "), "*") + ` FROM ${this.table}` + ifGet(this.clauses.length, ` WHERE ${this.clauses.join(" AND ")}`, "") + ifGet(this.grouped.length, ` GROUP BY ${this.grouped.join(", ")}`, "") + ifGet(this.ordered.length, ` ORDERED BY ${this.ordered.join(", ")}`, "") + ifGet(this._limit, ` LIMIT ${this._limit}`, "") + ifGet(this._offset, ` OFFSET ${this._offset};`, ";");
|
|
48
|
+
}
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export {
|
|
52
|
+
Select
|
|
53
|
+
};
|
|
54
|
+
//# sourceMappingURL=chunk-GVX6S54O.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/sql/Select.ts"],"sourcesContent":["import { ifGet, List, toList } from '../types';\nimport { Column, OrderColumn } from './Column';\nimport { Join } from './Join';\nimport { SqlQuery } from './SqlQuery';\nimport { Table } from './Table';\n\nexport class Select extends SqlQuery {\n protected ordered: List<OrderColumn> = toList();\n protected grouped: List<Column> = toList();\n protected _top = 0;\n protected _limit = 0;\n protected _offset = 0;\n\n constructor(table: Table | Join, readonly columns: List<Column> = toList()) {\n super(table);\n }\n\n from(t?: Table | Join): this {\n this.table = t ?? this.table;\n return this;\n }\n\n orderBy = (...ordered: OrderColumn[]): this => {\n this.ordered.add(ordered);\n return this;\n };\n\n groupBy(...grouped: Column[]): this {\n this.grouped.add(grouped);\n return this;\n }\n\n top(t: number): this {\n this._top = t;\n return this;\n }\n\n limit(l: number): this {\n this._limit = l;\n return this;\n }\n\n offset(o: number): this {\n this._offset = o;\n return this;\n }\n\n toString(): string {\n return (\n `SELECT ` +\n ifGet(this._top, `TOP ${this._top} `, '') +\n ifGet(this.columns.length, this.columns.join(', '), '*') +\n ` FROM ${this.table}` +\n ifGet(this.clauses.length, ` WHERE ${this.clauses.join(' AND ')}`, '') +\n ifGet(this.grouped.length, ` GROUP BY ${this.grouped.join(', ')}`, '') +\n ifGet(this.ordered.length, ` ORDERED BY ${this.ordered.join(', ')}`, '') +\n ifGet(this._limit, ` LIMIT ${this._limit}`, '') +\n ifGet(this._offset, ` OFFSET ${this._offset};`, ';')\n );\n }\n}\n"],"mappings":";;;;;;;;;;;AAMO,IAAM,SAAN,cAAqB,SAAS;AAAA,EAOnC,YAAY,OAA8B,UAAwB,OAAO,GAAG;AAC1E,UAAM,KAAK;AAD6B;AAAA,EAE1C;AAAA,EARU,UAA6B,OAAO;AAAA,EACpC,UAAwB,OAAO;AAAA,EAC/B,OAAO;AAAA,EACP,SAAS;AAAA,EACT,UAAU;AAAA,EAMpB,KAAK,GAAwB;AAC3B,SAAK,QAAQ,KAAK,KAAK;AACvB,WAAO;AAAA,EACT;AAAA,EAEA,UAAU,IAAI,YAAiC;AAC7C,SAAK,QAAQ,IAAI,OAAO;AACxB,WAAO;AAAA,EACT;AAAA,EAEA,WAAW,SAAyB;AAClC,SAAK,QAAQ,IAAI,OAAO;AACxB,WAAO;AAAA,EACT;AAAA,EAEA,IAAI,GAAiB;AACnB,SAAK,OAAO;AACZ,WAAO;AAAA,EACT;AAAA,EAEA,MAAM,GAAiB;AACrB,SAAK,SAAS;AACd,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,GAAiB;AACtB,SAAK,UAAU;AACf,WAAO;AAAA,EACT;AAAA,EAEA,WAAmB;AACjB,WACE,YACA,MAAM,KAAK,MAAM,OAAO,KAAK,IAAI,KAAK,EAAE,IACxC,MAAM,KAAK,QAAQ,QAAQ,KAAK,QAAQ,KAAK,IAAI,GAAG,GAAG,IACvD,SAAS,KAAK,KAAK,KACnB,MAAM,KAAK,QAAQ,QAAQ,UAAU,KAAK,QAAQ,KAAK,OAAO,CAAC,IAAI,EAAE,IACrE,MAAM,KAAK,QAAQ,QAAQ,aAAa,KAAK,QAAQ,KAAK,IAAI,CAAC,IAAI,EAAE,IACrE,MAAM,KAAK,QAAQ,QAAQ,eAAe,KAAK,QAAQ,KAAK,IAAI,CAAC,IAAI,EAAE,IACvE,MAAM,KAAK,QAAQ,UAAU,KAAK,MAAM,IAAI,EAAE,IAC9C,MAAM,KAAK,SAAS,WAAW,KAAK,OAAO,KAAK,GAAG;AAAA,EAEvD;AACF;","names":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import {
|
|
2
|
+
choose
|
|
3
|
+
} from "./chunk-YTWFWQNB.mjs";
|
|
4
|
+
import {
|
|
5
|
+
isArray,
|
|
6
|
+
isObject
|
|
7
|
+
} from "./chunk-OXBQSJDF.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-H22IHXDC.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,18 @@
|
|
|
1
|
+
import {
|
|
2
|
+
asString,
|
|
3
|
+
tryTo
|
|
4
|
+
} from "./chunk-YTWFWQNB.mjs";
|
|
5
|
+
import {
|
|
6
|
+
ofGet
|
|
7
|
+
} from "./chunk-SJGQU3OG.mjs";
|
|
8
|
+
import {
|
|
9
|
+
isNumber
|
|
10
|
+
} from "./chunk-OXBQSJDF.mjs";
|
|
11
|
+
|
|
12
|
+
// src/types/Number.ts
|
|
13
|
+
var asNumber = (n, alt) => tryTo(() => asString(n)).map((s) => parseInt(s)).filter((n2) => isNumber(n2)).or(ofGet(alt) ?? NaN);
|
|
14
|
+
|
|
15
|
+
export {
|
|
16
|
+
asNumber
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=chunk-H6GKGVYF.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Number.ts"],"sourcesContent":["import { Get, ofGet } from './Get';\nimport { tryTo } from './Try';\nimport { isNumber } from './Is';\nimport { asString } from './Text';\n\nexport const asNumber = (n: unknown, alt?: Get<number>): number =>\n tryTo(() => asString(n))\n .map(s => parseInt(s))\n .filter(n => isNumber(n))\n .or(ofGet(alt) ?? NaN);\n"],"mappings":";;;;;;;;;;;;AAKO,IAAM,WAAW,CAAC,GAAY,QACnC,MAAM,MAAM,SAAS,CAAC,CAAC,EACpB,IAAI,OAAK,SAAS,CAAC,CAAC,EACpB,OAAO,CAAAA,OAAK,SAASA,EAAC,CAAC,EACvB,GAAG,MAAM,GAAG,KAAK,GAAG;","names":["n"]}
|