@thisisagile/easy 15.29.1 → 15.29.3
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-3MOFYE2N.mjs → chunk-2ZUDYGPP.mjs} +5 -5
- package/dist/chunk-2ZUDYGPP.mjs.map +1 -0
- package/dist/{chunk-A5MC57TL.mjs → chunk-3L4RAR24.mjs} +9 -7
- package/dist/chunk-3L4RAR24.mjs.map +1 -0
- package/dist/chunk-45GNHDKA.mjs +27 -0
- package/dist/chunk-45GNHDKA.mjs.map +1 -0
- package/dist/{chunk-BAXNN36F.mjs → chunk-4DJNTF2D.mjs} +5 -3
- package/dist/chunk-4DJNTF2D.mjs.map +1 -0
- package/dist/chunk-4G6AW6D6.mjs +35 -0
- package/dist/chunk-4G6AW6D6.mjs.map +1 -0
- package/dist/{chunk-I5MPU33B.mjs → chunk-5WSP2IYF.mjs} +4 -4
- package/dist/chunk-5WSP2IYF.mjs.map +1 -0
- package/dist/{chunk-GCPVSACZ.mjs → chunk-5YM5CLOG.mjs} +2 -2
- package/dist/{chunk-GUSPHVF2.mjs → chunk-6BQEFLOS.mjs} +5 -3
- package/dist/chunk-6BQEFLOS.mjs.map +1 -0
- package/dist/{chunk-MRIELSWP.mjs → chunk-6VLC4Z4H.mjs} +2 -2
- package/dist/chunk-6VLC4Z4H.mjs.map +1 -0
- package/dist/chunk-6YVMQB26.mjs +94 -0
- package/dist/chunk-6YVMQB26.mjs.map +1 -0
- package/dist/{chunk-YHL2CUBI.mjs → chunk-73UD7JJL.mjs} +2 -2
- package/dist/chunk-73UD7JJL.mjs.map +1 -0
- package/dist/{chunk-2L3GZ6NK.mjs → chunk-7K4QMDUN.mjs} +2 -2
- package/dist/chunk-7K4QMDUN.mjs.map +1 -0
- package/dist/{chunk-S5RHU67S.mjs → chunk-7TJ4VCBE.mjs} +15 -9
- package/dist/chunk-7TJ4VCBE.mjs.map +1 -0
- package/dist/{chunk-NKHZO3ME.mjs → chunk-A2JYVEBB.mjs} +4 -4
- package/dist/chunk-A2JYVEBB.mjs.map +1 -0
- package/dist/{chunk-57QV3J5N.mjs → chunk-A62OK7XE.mjs} +10 -6
- package/dist/{chunk-57QV3J5N.mjs.map → chunk-A62OK7XE.mjs.map} +1 -1
- package/dist/{chunk-TQUDYF6E.mjs → chunk-APYISY5K.mjs} +2 -2
- package/dist/chunk-APYISY5K.mjs.map +1 -0
- package/dist/{chunk-XLFC44Y3.mjs → chunk-ARTSACXM.mjs} +17 -22
- package/dist/chunk-ARTSACXM.mjs.map +1 -0
- package/dist/chunk-ARZEQQW5.mjs +315 -0
- package/dist/chunk-ARZEQQW5.mjs.map +1 -0
- package/dist/chunk-CAHTK3AT.mjs +30 -0
- package/dist/chunk-CAHTK3AT.mjs.map +1 -0
- package/dist/{chunk-ARN4MTMY.mjs → chunk-D4K4MC24.mjs} +3 -3
- package/dist/chunk-D4K4MC24.mjs.map +1 -0
- package/dist/{chunk-624IHTEI.mjs → chunk-D5FLGKVR.mjs} +18 -12
- package/dist/chunk-D5FLGKVR.mjs.map +1 -0
- package/dist/{chunk-UWNXWKBU.mjs → chunk-DEJ7A5PY.mjs} +1 -35
- package/dist/chunk-DEJ7A5PY.mjs.map +1 -0
- package/dist/chunk-DXQSIBC7.mjs +13 -0
- package/dist/chunk-DXQSIBC7.mjs.map +1 -0
- package/dist/{chunk-SG6BDC6T.mjs → chunk-EDVJUOFU.mjs} +18 -12
- package/dist/chunk-EDVJUOFU.mjs.map +1 -0
- package/dist/{chunk-IWLJEAQZ.mjs → chunk-EIJ3GSGG.mjs} +5 -3
- package/dist/chunk-EIJ3GSGG.mjs.map +1 -0
- package/dist/chunk-FHW5K2RR.mjs +150 -0
- package/dist/chunk-FHW5K2RR.mjs.map +1 -0
- package/dist/{chunk-WYT52YAX.mjs → chunk-GSZLYZSW.mjs} +23 -11
- package/dist/chunk-GSZLYZSW.mjs.map +1 -0
- package/dist/{chunk-I3DRDMCS.mjs → chunk-HBJMCX2I.mjs} +3 -3
- package/dist/chunk-HBJMCX2I.mjs.map +1 -0
- package/dist/{chunk-2KKIXOMB.mjs → chunk-HNVAFEZP.mjs} +3 -3
- package/dist/{chunk-QRN4Y2QC.mjs → chunk-HV4CI2QX.mjs} +18 -12
- package/dist/chunk-HV4CI2QX.mjs.map +1 -0
- package/dist/chunk-IAXKOENJ.mjs +55 -0
- package/dist/chunk-IAXKOENJ.mjs.map +1 -0
- package/dist/chunk-J6KN572O.mjs +20 -0
- package/dist/chunk-J6KN572O.mjs.map +1 -0
- package/dist/chunk-J7XKOXMW.mjs +203 -0
- package/dist/chunk-J7XKOXMW.mjs.map +1 -0
- package/dist/{chunk-RFG5LNDQ.mjs → chunk-JBJ2YERG.mjs} +6 -4
- package/dist/{chunk-RFG5LNDQ.mjs.map → chunk-JBJ2YERG.mjs.map} +1 -1
- package/dist/{chunk-J64VE55O.mjs → chunk-JFJLDIJB.mjs} +10 -10
- package/dist/chunk-JFJLDIJB.mjs.map +1 -0
- package/dist/{chunk-F4CWMZCV.mjs → chunk-JFU65NZU.mjs} +11 -9
- package/dist/chunk-JFU65NZU.mjs.map +1 -0
- package/dist/{chunk-PWCGCUT7.mjs → chunk-JSON7A4X.mjs} +6 -4
- package/dist/chunk-JSON7A4X.mjs.map +1 -0
- package/dist/chunk-JTGB3TSZ.mjs +24 -0
- package/dist/chunk-JTGB3TSZ.mjs.map +1 -0
- package/dist/{chunk-NOMZAVQC.mjs → chunk-KRLEHX37.mjs} +12 -6
- package/dist/chunk-KRLEHX37.mjs.map +1 -0
- package/dist/{chunk-H7NDGISC.mjs → chunk-LAR7AT6R.mjs} +2 -2
- package/dist/chunk-LAR7AT6R.mjs.map +1 -0
- package/dist/{chunk-OXVJLJIE.mjs → chunk-LXQQ5N6S.mjs} +2 -2
- package/dist/chunk-LYAPQ4QZ.mjs +40 -0
- package/dist/chunk-LYAPQ4QZ.mjs.map +1 -0
- package/dist/{chunk-QRLGQY7M.mjs → chunk-M47EOYDK.mjs} +6 -4
- package/dist/chunk-M47EOYDK.mjs.map +1 -0
- package/dist/{chunk-CJDDGEEK.mjs → chunk-NFWIUPZU.mjs} +8 -6
- package/dist/chunk-NFWIUPZU.mjs.map +1 -0
- package/dist/{chunk-7Z3YQCXR.mjs → chunk-NYYHRFBW.mjs} +6 -4
- package/dist/chunk-NYYHRFBW.mjs.map +1 -0
- package/dist/{chunk-4ROYPQPC.mjs → chunk-OFGI5FLG.mjs} +2 -2
- package/dist/chunk-PPWHEIZW.mjs +58 -0
- package/dist/chunk-PPWHEIZW.mjs.map +1 -0
- package/dist/chunk-Q5HABVOK.mjs +20 -0
- package/dist/chunk-Q5HABVOK.mjs.map +1 -0
- package/dist/{chunk-TG5IPJOG.mjs → chunk-QQRGOHU6.mjs} +2 -2
- package/dist/chunk-QQRGOHU6.mjs.map +1 -0
- package/dist/{chunk-5J3LAY32.mjs → chunk-QTPKH4PY.mjs} +5 -5
- package/dist/chunk-QTPKH4PY.mjs.map +1 -0
- package/dist/{chunk-65W3AYRE.mjs → chunk-RNROH3VJ.mjs} +6 -4
- package/dist/chunk-RNROH3VJ.mjs.map +1 -0
- package/dist/{chunk-GARRF3U7.mjs → chunk-TMZRZLA2.mjs} +3 -3
- package/dist/chunk-TMZRZLA2.mjs.map +1 -0
- package/dist/{chunk-L7JZMM3J.mjs → chunk-U53FLD4J.mjs} +4 -4
- package/dist/chunk-U53FLD4J.mjs.map +1 -0
- package/dist/{chunk-EB26LF5Z.mjs → chunk-UJEQAXZI.mjs} +4 -4
- package/dist/chunk-UJEQAXZI.mjs.map +1 -0
- package/dist/{chunk-ELFAMVTF.mjs → chunk-UKHDSTTZ.mjs} +5 -5
- package/dist/chunk-UKHDSTTZ.mjs.map +1 -0
- package/dist/chunk-UNHWYQ54.mjs +64 -0
- package/dist/chunk-UNHWYQ54.mjs.map +1 -0
- package/dist/chunk-USGZFNWP.mjs +34 -0
- package/dist/chunk-USGZFNWP.mjs.map +1 -0
- package/dist/{chunk-Y5WPU3ZU.mjs → chunk-UW6S2PNO.mjs} +12 -6
- package/dist/chunk-UW6S2PNO.mjs.map +1 -0
- package/dist/chunk-UYDZZAEK.mjs +11 -0
- package/dist/chunk-UYDZZAEK.mjs.map +1 -0
- package/dist/{chunk-GJFFYHHX.mjs → chunk-VV534JNS.mjs} +5 -3
- package/dist/chunk-VV534JNS.mjs.map +1 -0
- package/dist/{chunk-V7FP66LM.mjs → chunk-WJZFE5NE.mjs} +2 -2
- package/dist/chunk-WJZFE5NE.mjs.map +1 -0
- package/dist/{chunk-ZELLSP3E.mjs → chunk-X7FZPY3P.mjs} +6 -4
- package/dist/{chunk-ZELLSP3E.mjs.map → chunk-X7FZPY3P.mjs.map} +1 -1
- package/dist/{chunk-Q6RSBDMM.mjs → chunk-XBYDAQGZ.mjs} +2 -2
- package/dist/chunk-XBYDAQGZ.mjs.map +1 -0
- package/dist/{chunk-ZJKVMRGU.mjs → chunk-YSBACFUR.mjs} +5 -5
- package/dist/chunk-YSBACFUR.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.d.ts +3 -2
- package/dist/data/Condition.mjs +12 -8
- package/dist/data/Database.d.ts +2 -1
- package/dist/data/Database.mjs +12 -7
- package/dist/data/Field.d.ts +1 -1
- package/dist/data/Field.mjs +15 -11
- package/dist/data/Field.mjs.map +1 -1
- package/dist/data/InMemoryGateway.d.ts +5 -1
- package/dist/data/InMemoryGateway.mjs +25 -10
- package/dist/data/InMemoryGateway.mjs.map +1 -1
- package/dist/data/Query.d.ts +1 -1
- package/dist/data/QueryProvider.d.ts +2 -1
- package/dist/domain/Audit.d.ts +3 -2
- package/dist/domain/Audit.mjs +25 -10
- package/dist/domain/Child.d.ts +2 -1
- package/dist/domain/Child.mjs +25 -10
- package/dist/domain/Child.mjs.map +1 -1
- package/dist/domain/{values/DateTime.d.ts → DateTime.d.ts} +3 -1
- package/dist/domain/DateTime.mjs +35 -0
- package/dist/domain/Entity.d.ts +2 -1
- package/dist/domain/Entity.mjs +29 -14
- package/dist/domain/Entity.mjs.map +1 -1
- package/dist/domain/Repo.d.ts +7 -1
- package/dist/domain/Repo.mjs +31 -12
- package/dist/domain/Repo.mjs.map +1 -1
- package/dist/domain/Struct.d.ts +2 -1
- package/dist/domain/Struct.mjs +22 -7
- package/dist/domain/Typo.d.ts +7 -2
- package/dist/domain/Typo.mjs +23 -8
- package/dist/domain/Typo.mjs.map +1 -1
- package/dist/health/HealthResource.d.ts +2 -2
- package/dist/health/HealthResource.mjs +30 -16
- package/dist/health/HealthResource.mjs.map +1 -1
- package/dist/health/HealthUri.d.ts +2 -2
- package/dist/health/HealthUri.mjs +22 -8
- package/dist/http/CacheControl.d.ts +1 -1
- package/dist/http/CacheControl.mjs +23 -9
- package/dist/http/ContentType.d.ts +2 -1
- package/dist/http/ContentType.mjs +12 -7
- package/dist/http/HttpStatus.d.ts +3 -1
- package/dist/http/HttpStatus.mjs +12 -7
- package/dist/http/HttpVerb.d.ts +1 -1
- package/dist/http/HttpVerb.mjs +12 -7
- package/dist/http/LocalRequestStore.d.ts +2 -1
- package/dist/http/LocalRequestStore.mjs +12 -6
- package/dist/http/LocalRequestStore.mjs.map +1 -1
- package/dist/http/OriginatedError.d.ts +1 -1
- package/dist/http/OriginatedError.mjs +1 -2
- package/dist/http/OriginatedError.mjs.map +1 -1
- package/dist/http/Request.d.ts +1 -1
- package/dist/http/RequestOptions.d.ts +6 -1
- package/dist/http/RequestOptions.mjs +16 -9
- package/dist/http/Response.d.ts +2 -5
- package/dist/http/Response.mjs +7 -13
- package/dist/http/RestResult.d.ts +3 -1
- package/dist/http/RestResult.mjs +23 -8
- package/dist/http/Verb.d.ts +4 -1
- package/dist/http/Verb.mjs +27 -13
- package/dist/http/toResponse.d.ts +6 -0
- package/dist/http/toResponse.mjs +33 -0
- package/dist/index.d.ts +118 -12
- package/dist/index.js +1645 -2904
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +118 -12
- package/dist/index.mjs.map +1 -1
- package/dist/process/App.mjs +13 -7
- package/dist/process/App.mjs.map +1 -1
- package/dist/process/Manage.d.ts +3 -1
- package/dist/process/Manage.mjs +22 -8
- package/dist/process/Manage.mjs.map +1 -1
- package/dist/process/Scope.d.ts +4 -1
- package/dist/process/Scope.mjs +13 -7
- package/dist/process/Search.d.ts +7 -2
- package/dist/process/Search.mjs +22 -8
- package/dist/process/UseCase.d.ts +4 -1
- package/dist/process/UseCase.mjs +19 -10
- package/dist/process/UseCase.mjs.map +1 -1
- package/dist/resources/AppProvider.d.ts +1 -1
- package/dist/resources/Req.d.ts +6 -1
- package/dist/resources/Req.mjs +21 -7
- package/dist/resources/Req.mjs.map +1 -1
- package/dist/resources/Requires.d.ts +2 -1
- package/dist/resources/Requires.mjs +10 -6
- package/dist/resources/Requires.mjs.map +1 -1
- package/dist/resources/Route.d.ts +5 -3
- package/dist/resources/Route.mjs +21 -7
- package/dist/resources/Service.d.ts +3 -1
- package/dist/resources/Service.mjs +24 -8
- package/dist/resources/Service.mjs.map +1 -1
- package/dist/security/Jwt.d.ts +5 -1
- package/dist/security/Jwt.mjs +24 -8
- package/dist/security/Jwt.mjs.map +1 -1
- package/dist/services/Api.d.ts +8 -2
- package/dist/services/Api.mjs +32 -16
- package/dist/services/ApiGateway.d.ts +6 -2
- package/dist/services/ApiGateway.mjs +35 -19
- package/dist/services/AxiosProvider.d.ts +3 -1
- package/dist/services/AxiosProvider.mjs +30 -14
- package/dist/services/MappedRouteGateway.d.ts +7 -3
- package/dist/services/MappedRouteGateway.mjs +41 -24
- package/dist/services/MappedRouteGateway.mjs.map +1 -1
- package/dist/services/RouteGateway.d.ts +7 -1
- package/dist/services/RouteGateway.mjs +36 -20
- package/dist/services/ViewRouteGateway.d.ts +10 -6
- package/dist/services/ViewRouteGateway.mjs +39 -22
- package/dist/services/ViewRouteGateway.mjs.map +1 -1
- package/dist/sql/Clause.d.ts +3 -2
- package/dist/sql/Clause.mjs +7 -8
- package/dist/sql/Column.d.ts +3 -2
- package/dist/sql/Column.mjs +24 -10
- package/dist/sql/Count.mjs +11 -9
- package/dist/sql/Delete.mjs +10 -8
- package/dist/sql/Insert.d.ts +1 -1
- package/dist/sql/Insert.mjs +12 -10
- package/dist/sql/Select.d.ts +1 -1
- package/dist/sql/Select.mjs +10 -8
- package/dist/sql/SqlQuery.d.ts +5 -2
- package/dist/sql/SqlQuery.mjs +9 -7
- package/dist/sql/Table.d.ts +13 -12
- package/dist/sql/Table.mjs +37 -22
- package/dist/sql/Table.mjs.map +1 -1
- package/dist/sql/TableGateway.d.ts +6 -2
- package/dist/sql/TableGateway.mjs +23 -9
- package/dist/sql/TableGateway.mjs.map +1 -1
- package/dist/sql/Update.d.ts +1 -1
- package/dist/sql/Update.mjs +12 -10
- package/dist/types/Array.mjs +4 -2
- package/dist/types/Builder.mjs +2 -6
- package/dist/types/Builder.mjs.map +1 -1
- package/dist/types/Cache.mjs +10 -6
- package/dist/types/Cache.mjs.map +1 -1
- package/dist/types/CacheAge.mjs +22 -8
- package/dist/types/Case.d.ts +3 -1
- package/dist/types/Case.mjs +20 -6
- package/dist/types/Constructor.d.ts +1 -0
- package/dist/types/Constructor.mjs +5 -1
- package/dist/types/Context.mjs +12 -6
- package/dist/types/Enum.mjs +11 -6
- package/dist/{domain/enums → types}/Environment.d.ts +1 -1
- package/dist/types/Environment.mjs +28 -0
- package/dist/types/Environment.mjs.map +1 -0
- package/dist/types/ErrorOrigin.d.ts +1 -1
- package/dist/types/Exception.mjs +13 -6
- package/dist/types/Gateway.mjs +15 -7
- package/dist/types/Id.mjs +3 -4
- package/dist/types/Is.d.ts +0 -4
- package/dist/types/Is.mjs +1 -6
- package/dist/types/IsA.d.ts +2 -0
- package/dist/types/IsA.mjs +8 -4
- package/dist/types/IsEqual.mjs +21 -7
- package/dist/types/Json.mjs +10 -6
- package/dist/types/List.d.ts +3 -3
- package/dist/types/List.mjs +8 -6
- package/dist/types/Meta.d.ts +1 -2
- package/dist/types/Meta.mjs +10 -8
- package/dist/types/Number.mjs +21 -7
- package/dist/types/Object.d.ts +8 -0
- package/dist/types/Object.mjs +20 -0
- package/dist/types/PageList.mjs +21 -7
- package/dist/types/Parser.mjs +25 -10
- package/dist/types/Parser.mjs.map +1 -1
- package/dist/types/Primitive.mjs +2 -2
- package/dist/types/Repository.d.ts +5 -1
- package/dist/types/Repository.mjs +15 -7
- package/dist/types/Result.mjs +13 -6
- package/dist/types/Results.mjs +14 -6
- package/dist/types/Tag.mjs +10 -6
- package/dist/types/Tag.mjs.map +1 -1
- package/dist/types/Template.d.ts +41 -2
- package/dist/types/Template.mjs +19 -8
- package/dist/types/Text.d.ts +0 -38
- package/dist/types/Text.mjs +2 -10
- package/dist/types/Try.mjs +20 -6
- package/dist/types/Uri.mjs +21 -7
- package/dist/types/Uuid.mjs +2 -3
- package/dist/types/Validatable.mjs +5 -3
- package/dist/types/Value.d.ts +2 -1
- package/dist/types/Value.mjs +3 -6
- package/dist/utils/Base64.d.ts +1 -1
- package/dist/utils/Base64.mjs.map +1 -1
- package/dist/utils/Convert.mjs +3 -7
- package/dist/utils/If.d.ts +2 -1
- package/dist/utils/If.mjs +4 -2
- package/dist/utils/Loading.mjs +1 -2
- package/dist/utils/Loading.mjs.map +1 -1
- package/dist/utils/Log.d.ts +1 -1
- package/dist/utils/Log.mjs.map +1 -1
- package/dist/utils/Mapper.d.ts +6 -1
- package/dist/utils/Mapper.mjs +15 -10
- package/dist/utils/Promise.d.ts +2 -1
- package/dist/utils/Promise.mjs +9 -6
- package/dist/utils/Property.d.ts +2 -1
- package/dist/utils/Property.mjs +4 -8
- package/dist/utils/Sentence.d.ts +2 -1
- package/dist/utils/Sentence.mjs +11 -6
- package/dist/utils/Sentence.mjs.map +1 -1
- package/dist/utils/State.d.ts +1 -1
- package/dist/utils/State.mjs +4 -2
- package/dist/utils/View.d.ts +6 -1
- package/dist/utils/View.mjs +24 -9
- package/dist/validation/Contraints.d.ts +3 -1
- package/dist/validation/Contraints.mjs +21 -7
- package/dist/validation/Validate.d.ts +3 -1
- package/dist/validation/Validate.mjs +20 -6
- package/dist/validation/When.d.ts +4 -1
- package/dist/validation/When.mjs +20 -6
- package/package.json +57 -2
- package/src/data/Condition.ts +17 -5
- package/src/data/Database.ts +7 -2
- package/src/data/Field.ts +3 -2
- package/src/data/InMemoryGateway.ts +8 -2
- package/src/data/Query.ts +1 -1
- package/src/data/QueryProvider.ts +2 -1
- package/src/domain/Audit.ts +11 -7
- package/src/domain/Child.ts +3 -2
- package/src/domain/{values/DateTime.ts → DateTime.ts} +8 -2
- package/src/domain/Entity.ts +3 -2
- package/src/domain/Repo.ts +15 -4
- package/src/domain/Struct.ts +4 -2
- package/src/domain/Typo.ts +13 -4
- package/src/health/HealthResource.ts +5 -3
- package/src/health/HealthUri.ts +1 -1
- package/src/http/CacheControl.ts +9 -3
- package/src/http/ContentType.ts +8 -2
- package/src/http/HttpStatus.ts +4 -1
- package/src/http/HttpVerb.ts +1 -1
- package/src/http/LocalRequestStore.ts +3 -1
- package/src/http/OriginatedError.ts +6 -2
- package/src/http/Request.ts +1 -1
- package/src/http/RequestOptions.ts +16 -2
- package/src/http/Response.ts +4 -9
- package/src/http/RestResult.ts +7 -1
- package/src/http/Verb.ts +5 -2
- package/src/http/toResponse.ts +12 -0
- package/src/index.ts +129 -12
- package/src/process/Manage.ts +3 -1
- package/src/process/Scope.ts +12 -2
- package/src/process/Search.ts +9 -3
- package/src/process/UseCase.ts +12 -2
- package/src/resources/AppProvider.ts +1 -1
- package/src/resources/Req.ts +14 -3
- package/src/resources/Requires.ts +3 -2
- package/src/resources/Route.ts +8 -3
- package/src/resources/Service.ts +9 -2
- package/src/security/Jwt.ts +7 -1
- package/src/services/Api.ts +12 -3
- package/src/services/ApiGateway.ts +7 -2
- package/src/services/AxiosProvider.ts +14 -2
- package/src/services/MappedRouteGateway.ts +13 -4
- package/src/services/RouteGateway.ts +14 -3
- package/src/services/ViewRouteGateway.ts +7 -3
- package/src/sql/Clause.ts +10 -3
- package/src/sql/Column.ts +14 -4
- package/src/sql/Count.ts +1 -1
- package/src/sql/Delete.ts +1 -1
- package/src/sql/Insert.ts +5 -2
- package/src/sql/Select.ts +6 -2
- package/src/sql/SqlQuery.ts +9 -3
- package/src/sql/Table.ts +6 -3
- package/src/sql/TableGateway.ts +13 -5
- package/src/sql/Update.ts +6 -2
- package/src/types/CacheAge.ts +3 -1
- package/src/types/Case.ts +14 -4
- package/src/types/Constructor.ts +3 -1
- package/src/types/Context.ts +7 -8
- package/src/{domain/enums → types}/Environment.ts +1 -1
- package/src/types/ErrorOrigin.ts +1 -1
- package/src/types/Exception.ts +7 -2
- package/src/types/Gateway.ts +1 -1
- package/src/types/Is.ts +0 -7
- package/src/types/IsA.ts +4 -0
- package/src/types/Json.ts +2 -2
- package/src/types/List.ts +13 -12
- package/src/types/Meta.ts +12 -9
- package/src/types/Object.ts +16 -0
- package/src/types/Parser.ts +1 -1
- package/src/types/Repository.ts +7 -2
- package/src/types/Template.ts +149 -12
- package/src/types/Text.ts +3 -138
- package/src/types/Try.ts +1 -1
- package/src/types/Uri.ts +2 -1
- package/src/types/Value.ts +4 -1
- package/src/utils/Base64.ts +1 -1
- package/src/utils/Convert.ts +5 -2
- package/src/utils/If.ts +3 -1
- package/src/utils/Loading.ts +1 -1
- package/src/utils/Log.ts +1 -1
- package/src/utils/Mapper.ts +13 -2
- package/src/utils/Promise.ts +3 -1
- package/src/utils/Property.ts +6 -2
- package/src/utils/Sentence.ts +8 -2
- package/src/utils/State.ts +1 -1
- package/src/utils/View.ts +15 -22
- package/src/validation/Contraints.ts +9 -1
- package/src/validation/Validate.ts +26 -29
- package/src/validation/When.ts +13 -3
- package/dist/chunk-2L3GZ6NK.mjs.map +0 -1
- package/dist/chunk-3MOFYE2N.mjs.map +0 -1
- package/dist/chunk-5J3LAY32.mjs.map +0 -1
- package/dist/chunk-624IHTEI.mjs.map +0 -1
- package/dist/chunk-65W3AYRE.mjs.map +0 -1
- package/dist/chunk-7Z3YQCXR.mjs.map +0 -1
- package/dist/chunk-A5MC57TL.mjs.map +0 -1
- package/dist/chunk-ARN4MTMY.mjs.map +0 -1
- package/dist/chunk-BAXNN36F.mjs.map +0 -1
- package/dist/chunk-C7OPGGIF.mjs +0 -21
- package/dist/chunk-C7OPGGIF.mjs.map +0 -1
- package/dist/chunk-CJDDGEEK.mjs.map +0 -1
- package/dist/chunk-DMFWWDUF.mjs +0 -26
- package/dist/chunk-DMFWWDUF.mjs.map +0 -1
- package/dist/chunk-EB26LF5Z.mjs.map +0 -1
- package/dist/chunk-ELFAMVTF.mjs.map +0 -1
- package/dist/chunk-F4CWMZCV.mjs.map +0 -1
- package/dist/chunk-GARRF3U7.mjs.map +0 -1
- package/dist/chunk-GJFFYHHX.mjs.map +0 -1
- package/dist/chunk-GUSPHVF2.mjs.map +0 -1
- package/dist/chunk-H7NDGISC.mjs.map +0 -1
- package/dist/chunk-I2NKUYUM.mjs +0 -272
- package/dist/chunk-I2NKUYUM.mjs.map +0 -1
- package/dist/chunk-I3DRDMCS.mjs.map +0 -1
- package/dist/chunk-I5MPU33B.mjs.map +0 -1
- package/dist/chunk-IWLJEAQZ.mjs.map +0 -1
- package/dist/chunk-J64VE55O.mjs.map +0 -1
- package/dist/chunk-L7JZMM3J.mjs.map +0 -1
- package/dist/chunk-MRIELSWP.mjs.map +0 -1
- package/dist/chunk-NKHZO3ME.mjs.map +0 -1
- package/dist/chunk-NOMZAVQC.mjs.map +0 -1
- package/dist/chunk-PFAEQQXA.mjs +0 -900
- package/dist/chunk-PFAEQQXA.mjs.map +0 -1
- package/dist/chunk-PWCGCUT7.mjs.map +0 -1
- package/dist/chunk-Q5ATL34D.mjs +0 -13
- package/dist/chunk-Q5ATL34D.mjs.map +0 -1
- package/dist/chunk-Q6RSBDMM.mjs.map +0 -1
- package/dist/chunk-QRLGQY7M.mjs.map +0 -1
- package/dist/chunk-QRN4Y2QC.mjs.map +0 -1
- package/dist/chunk-S5RHU67S.mjs.map +0 -1
- package/dist/chunk-SG6BDC6T.mjs.map +0 -1
- package/dist/chunk-TG5IPJOG.mjs.map +0 -1
- package/dist/chunk-TQUDYF6E.mjs.map +0 -1
- package/dist/chunk-UWNXWKBU.mjs.map +0 -1
- package/dist/chunk-V7FP66LM.mjs.map +0 -1
- package/dist/chunk-WX6UP67J.mjs +0 -40
- package/dist/chunk-WX6UP67J.mjs.map +0 -1
- package/dist/chunk-WYT52YAX.mjs.map +0 -1
- package/dist/chunk-XLFC44Y3.mjs.map +0 -1
- package/dist/chunk-Y5WPU3ZU.mjs.map +0 -1
- package/dist/chunk-YHL2CUBI.mjs.map +0 -1
- package/dist/chunk-YUSOGMIJ.mjs +0 -183
- package/dist/chunk-YUSOGMIJ.mjs.map +0 -1
- package/dist/chunk-YXE66GAL.mjs +0 -19
- package/dist/chunk-YXE66GAL.mjs.map +0 -1
- package/dist/chunk-ZJKVMRGU.mjs.map +0 -1
- package/dist/data/index.d.ts +0 -7
- package/dist/data/index.mjs +0 -8
- package/dist/data/index.mjs.map +0 -1
- package/dist/domain/enums/Country.d.ts +0 -256
- package/dist/domain/enums/Country.mjs +0 -16
- package/dist/domain/enums/Currency.d.ts +0 -127
- package/dist/domain/enums/Currency.mjs +0 -19
- package/dist/domain/enums/Environment.mjs +0 -23
- package/dist/domain/enums/Environment.mjs.map +0 -1
- package/dist/domain/enums/Locale.d.ts +0 -571
- package/dist/domain/enums/Locale.mjs +0 -594
- package/dist/domain/enums/Locale.mjs.map +0 -1
- package/dist/domain/enums/UnitOfMeasurement.d.ts +0 -10
- package/dist/domain/enums/UnitOfMeasurement.mjs +0 -16
- package/dist/domain/enums/UnitOfMeasurement.mjs.map +0 -1
- package/dist/domain/enums/UnitOfWeight.d.ts +0 -8
- package/dist/domain/enums/UnitOfWeight.mjs +0 -16
- package/dist/domain/enums/UnitOfWeight.mjs.map +0 -1
- package/dist/domain/enums/index.d.ts +0 -6
- package/dist/domain/enums/index.mjs +0 -7
- package/dist/domain/enums/index.mjs.map +0 -1
- package/dist/domain/index.d.ts +0 -9
- package/dist/domain/index.mjs +0 -10
- package/dist/domain/index.mjs.map +0 -1
- package/dist/domain/structs/Address.d.ts +0 -12
- package/dist/domain/structs/Address.mjs +0 -65
- package/dist/domain/structs/Address.mjs.map +0 -1
- package/dist/domain/structs/Box.d.ts +0 -15
- package/dist/domain/structs/Box.mjs +0 -58
- package/dist/domain/structs/Box.mjs.map +0 -1
- package/dist/domain/structs/Dimension.d.ts +0 -10
- package/dist/domain/structs/Dimension.mjs +0 -20
- package/dist/domain/structs/Dimension.mjs.map +0 -1
- package/dist/domain/structs/Money.d.ts +0 -12
- package/dist/domain/structs/Money.mjs +0 -23
- package/dist/domain/structs/Money.mjs.map +0 -1
- package/dist/domain/structs/Name.d.ts +0 -9
- package/dist/domain/structs/Name.mjs +0 -42
- package/dist/domain/structs/Name.mjs.map +0 -1
- package/dist/domain/structs/Weight.d.ts +0 -13
- package/dist/domain/structs/Weight.mjs +0 -57
- package/dist/domain/structs/Weight.mjs.map +0 -1
- package/dist/domain/structs/index.d.ts +0 -6
- package/dist/domain/structs/index.mjs +0 -7
- package/dist/domain/structs/index.mjs.map +0 -1
- package/dist/domain/values/DateTime.mjs +0 -21
- package/dist/domain/values/EAN.d.ts +0 -5
- package/dist/domain/values/EAN.mjs +0 -30
- package/dist/domain/values/EAN.mjs.map +0 -1
- package/dist/domain/values/Email.d.ts +0 -8
- package/dist/domain/values/Email.mjs +0 -37
- package/dist/domain/values/Email.mjs.map +0 -1
- package/dist/domain/values/IBAN.d.ts +0 -5
- package/dist/domain/values/IBAN.mjs +0 -30
- package/dist/domain/values/IBAN.mjs.map +0 -1
- package/dist/domain/values/PostalCode.d.ts +0 -8
- package/dist/domain/values/PostalCode.mjs +0 -19
- package/dist/domain/values/PostalCode.mjs.map +0 -1
- package/dist/domain/values/Slug.d.ts +0 -6
- package/dist/domain/values/Slug.mjs +0 -31
- package/dist/domain/values/Slug.mjs.map +0 -1
- package/dist/domain/values/Url.d.ts +0 -22
- package/dist/domain/values/Url.mjs +0 -36
- package/dist/domain/values/Url.mjs.map +0 -1
- package/dist/domain/values/index.d.ts +0 -7
- package/dist/domain/values/index.mjs +0 -8
- package/dist/domain/values/index.mjs.map +0 -1
- package/dist/health/index.d.ts +0 -2
- package/dist/health/index.mjs +0 -3
- package/dist/health/index.mjs.map +0 -1
- package/dist/http/index.d.ts +0 -12
- package/dist/http/index.mjs +0 -13
- package/dist/http/index.mjs.map +0 -1
- package/dist/process/index.d.ts +0 -5
- package/dist/process/index.mjs +0 -6
- package/dist/process/index.mjs.map +0 -1
- package/dist/resources/index.d.ts +0 -7
- package/dist/resources/index.mjs +0 -8
- package/dist/resources/index.mjs.map +0 -1
- package/dist/security/index.d.ts +0 -1
- package/dist/security/index.mjs +0 -2
- package/dist/security/index.mjs.map +0 -1
- package/dist/services/index.d.ts +0 -6
- package/dist/services/index.mjs +0 -7
- package/dist/services/index.mjs.map +0 -1
- package/dist/sql/index.d.ts +0 -10
- package/dist/sql/index.mjs +0 -11
- package/dist/sql/index.mjs.map +0 -1
- package/dist/types/index.d.ts +0 -43
- package/dist/types/index.mjs +0 -44
- package/dist/types/index.mjs.map +0 -1
- package/dist/utils/index.d.ts +0 -13
- package/dist/utils/index.mjs +0 -14
- package/dist/utils/index.mjs.map +0 -1
- package/dist/validation/index.d.ts +0 -3
- package/dist/validation/index.mjs +0 -4
- package/dist/validation/index.mjs.map +0 -1
- package/src/data/index.ts +0 -7
- package/src/domain/enums/Country.ts +0 -265
- package/src/domain/enums/Currency.ts +0 -133
- package/src/domain/enums/Locale.ts +0 -579
- package/src/domain/enums/UnitOfMeasurement.ts +0 -13
- package/src/domain/enums/UnitOfWeight.ts +0 -11
- package/src/domain/enums/countries.json +0 -251
- package/src/domain/enums/currencies.json +0 -1073
- package/src/domain/enums/index.ts +0 -6
- package/src/domain/enums/locales.json +0 -565
- package/src/domain/index.ts +0 -9
- package/src/domain/structs/Address.ts +0 -22
- package/src/domain/structs/Box.ts +0 -29
- package/src/domain/structs/Dimension.ts +0 -25
- package/src/domain/structs/Money.ts +0 -31
- package/src/domain/structs/Name.ts +0 -15
- package/src/domain/structs/Weight.ts +0 -35
- package/src/domain/structs/index.ts +0 -6
- package/src/domain/values/EAN.ts +0 -12
- package/src/domain/values/Email.ts +0 -20
- package/src/domain/values/IBAN.ts +0 -12
- package/src/domain/values/PostalCode.ts +0 -14
- package/src/domain/values/Slug.ts +0 -14
- package/src/domain/values/Url.ts +0 -70
- package/src/domain/values/index.ts +0 -7
- package/src/health/index.ts +0 -2
- package/src/http/index.ts +0 -12
- package/src/process/index.ts +0 -5
- package/src/resources/index.ts +0 -7
- package/src/security/index.ts +0 -1
- package/src/services/index.ts +0 -6
- package/src/sql/index.ts +0 -10
- package/src/types/index.ts +0 -43
- package/src/utils/index.ts +0 -13
- package/src/validation/index.ts +0 -3
- /package/dist/{chunk-GCPVSACZ.mjs.map → chunk-5YM5CLOG.mjs.map} +0 -0
- /package/dist/{chunk-2KKIXOMB.mjs.map → chunk-HNVAFEZP.mjs.map} +0 -0
- /package/dist/{chunk-OXVJLJIE.mjs.map → chunk-LXQQ5N6S.mjs.map} +0 -0
- /package/dist/{chunk-4ROYPQPC.mjs.map → chunk-OFGI5FLG.mjs.map} +0 -0
- /package/dist/domain/{values/DateTime.mjs.map → DateTime.mjs.map} +0 -0
- /package/dist/{domain/enums/Country.mjs.map → http/toResponse.mjs.map} +0 -0
- /package/dist/{domain/enums/Currency.mjs.map → types/Object.mjs.map} +0 -0
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Api
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-5WSP2IYF.mjs";
|
|
4
4
|
import {
|
|
5
5
|
Gateway
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-6BQEFLOS.mjs";
|
|
7
7
|
import {
|
|
8
8
|
toPageList
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-A62OK7XE.mjs";
|
|
10
10
|
import {
|
|
11
11
|
use
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-ZPNFXK7Y.mjs";
|
|
13
13
|
|
|
14
14
|
// src/services/ApiGateway.ts
|
|
15
15
|
var ApiGateway = class extends Gateway {
|
|
@@ -43,4 +43,4 @@ var ApiGateway = class extends Gateway {
|
|
|
43
43
|
export {
|
|
44
44
|
ApiGateway
|
|
45
45
|
};
|
|
46
|
-
//# sourceMappingURL=chunk-
|
|
46
|
+
//# sourceMappingURL=chunk-2ZUDYGPP.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/services/ApiGateway.ts"],"sourcesContent":["import { Api, RouteOptions } from './Api';\nimport { FetchOptions, Gateway } from '../types/Gateway';\nimport { Uri } from '../types/Uri';\nimport { PageList, toPageList } from '../types/PageList';\nimport { Json } from '../types/Json';\nimport { use } from '../types/Constructor';\nimport { Optional } from '../types/Types';\nimport { RequestOptions } from '../http/RequestOptions';\n\nexport class ApiGateway extends Gateway<RouteOptions> {\n constructor(readonly api: Api = new Api()) {\n super();\n }\n\n get(uri: Uri, options?: RouteOptions): Promise<PageList<Json>> {\n return this.api.get(uri, options).then(r => use(r.body.data, d => toPageList(d?.items, { total: d?.totalItems, ...d?.meta })));\n }\n\n getOne(uri: Uri, options?: RouteOptions): Promise<Optional<Json>> {\n return this.get(uri, options).then(r => r.first());\n }\n\n post(uri: Uri, item?: Json, options?: RouteOptions): Promise<Json> {\n return this.api.post(uri, item, options).then(r => r.body.data?.items.first() ?? {});\n }\n\n postSearch(uri: Uri, options?: RequestOptions | FetchOptions): Promise<PageList<Json>> {\n return this.api.post(uri, options).then(r => use(r.body.data, d => toPageList(d?.items, { total: d?.totalItems, ...d?.meta })));\n }\n\n patch(uri: Uri, item?: Json, options?: RouteOptions): Promise<Json> {\n return this.api.patch(uri, item, options).then(r => r.body.data?.items.first() ?? {});\n }\n\n put(uri: Uri, item?: Json, options?: RouteOptions): Promise<Json> {\n return this.api.put(uri, item, options).then(r => r.body.data?.items.first() ?? {});\n }\n\n delete(uri: Uri, options?: RouteOptions): Promise<boolean> {\n return this.api.delete(uri, options).then(() => true);\n }\n}\n"],"mappings":";;;;;;;;;;;;;;AASO,IAAM,aAAN,cAAyB,QAAsB;AAAA,EACpD,YAAqB,MAAW,IAAI,IAAI,GAAG;AACzC,UAAM;AADa;AAAA,EAErB;AAAA,EAEA,IAAI,KAAU,SAAiD;AAC7D,WAAO,KAAK,IAAI,IAAI,KAAK,OAAO,EAAE,KAAK,OAAK,IAAI,EAAE,KAAK,MAAM,OAAK,WAAW,GAAG,OAAO,EAAE,OAAO,GAAG,YAAY,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC;AAAA,EAC/H;AAAA,EAEA,OAAO,KAAU,SAAiD;AAChE,WAAO,KAAK,IAAI,KAAK,OAAO,EAAE,KAAK,OAAK,EAAE,MAAM,CAAC;AAAA,EACnD;AAAA,EAEA,KAAK,KAAU,MAAa,SAAuC;AACjE,WAAO,KAAK,IAAI,KAAK,KAAK,MAAM,OAAO,EAAE,KAAK,OAAK,EAAE,KAAK,MAAM,MAAM,MAAM,KAAK,CAAC,CAAC;AAAA,EACrF;AAAA,EAEA,WAAW,KAAU,SAAkE;AACrF,WAAO,KAAK,IAAI,KAAK,KAAK,OAAO,EAAE,KAAK,OAAK,IAAI,EAAE,KAAK,MAAM,OAAK,WAAW,GAAG,OAAO,EAAE,OAAO,GAAG,YAAY,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC;AAAA,EAChI;AAAA,EAEA,MAAM,KAAU,MAAa,SAAuC;AAClE,WAAO,KAAK,IAAI,MAAM,KAAK,MAAM,OAAO,EAAE,KAAK,OAAK,EAAE,KAAK,MAAM,MAAM,MAAM,KAAK,CAAC,CAAC;AAAA,EACtF;AAAA,EAEA,IAAI,KAAU,MAAa,SAAuC;AAChE,WAAO,KAAK,IAAI,IAAI,KAAK,MAAM,OAAO,EAAE,KAAK,OAAK,EAAE,KAAK,MAAM,MAAM,MAAM,KAAK,CAAC,CAAC;AAAA,EACpF;AAAA,EAEA,OAAO,KAAU,SAA0C;AACzD,WAAO,KAAK,IAAI,OAAO,KAAK,OAAO,EAAE,KAAK,MAAM,IAAI;AAAA,EACtD;AACF;","names":[]}
|
|
@@ -2,22 +2,24 @@ import {
|
|
|
2
2
|
isDate
|
|
3
3
|
} from "./chunk-ADJAEGCT.mjs";
|
|
4
4
|
import {
|
|
5
|
-
Value,
|
|
6
5
|
choose
|
|
7
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-ARZEQQW5.mjs";
|
|
7
|
+
import {
|
|
8
|
+
Value
|
|
9
|
+
} from "./chunk-CAHTK3AT.mjs";
|
|
8
10
|
import {
|
|
9
11
|
ifDefined
|
|
10
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-JSON7A4X.mjs";
|
|
11
13
|
import {
|
|
12
14
|
isA
|
|
13
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-ZHXKBOK2.mjs";
|
|
14
16
|
import {
|
|
15
17
|
isDefined,
|
|
16
18
|
isNumber,
|
|
17
19
|
isString
|
|
18
|
-
} from "./chunk-
|
|
20
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
19
21
|
|
|
20
|
-
// src/domain/
|
|
22
|
+
// src/domain/DateTime.ts
|
|
21
23
|
import { DateTime as LuxonDateTime, Settings } from "luxon";
|
|
22
24
|
Settings.defaultZone = "utc";
|
|
23
25
|
var DateTime = class _DateTime extends Value {
|
|
@@ -110,4 +112,4 @@ export {
|
|
|
110
112
|
isDateTime,
|
|
111
113
|
dt
|
|
112
114
|
};
|
|
113
|
-
//# sourceMappingURL=chunk-
|
|
115
|
+
//# sourceMappingURL=chunk-3L4RAR24.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/domain/DateTime.ts"],"sourcesContent":["import { DateTime as LuxonDateTime, DateTimeUnit as LuxonDateTimeUnit, DurationUnit as LuxonDurationUnit, Settings } from 'luxon';\nimport { Value } from '../types/Value';\nimport { Optional } from '../types/Types';\nimport { choose } from '../types/Case';\nimport { isDefined, isNumber, isString } from '../types/Is';\nimport { isDate } from '../types/IsDate';\nimport { isA } from '../types/IsA';\nimport { ifDefined } from '../utils/If';\nimport { JsonValue } from '../types/Json';\n\nSettings.defaultZone = 'utc';\n\nexport type DateTimeUnit = LuxonDateTimeUnit;\nexport type DurationUnit = LuxonDurationUnit;\nexport type Duration = Partial<Record<DurationUnit, number>>;\n\nexport type DiffOptions = {\n rounding: 'floor' | 'ceil' | 'round';\n};\n\nexport class DateTime extends Value<Optional<string>> {\n constructor(value?: string | number | Date | DateTime | null, format?: string) {\n super(\n choose(value)\n .type(isString, v => (format ? LuxonDateTime.fromFormat(v, format, { setZone: true }) : LuxonDateTime.fromISO(v, { setZone: true })))\n .type(isNumber, v => LuxonDateTime.fromMillis(v))\n .type(isDate, v => LuxonDateTime.fromJSDate(v))\n .type(isDateTime, v => LuxonDateTime.fromISO(v.toString()))\n .else(undefined as unknown as LuxonDateTime)\n ?.toISO() as unknown as string\n );\n }\n\n static get now(): DateTime {\n return new DateTime(LuxonDateTime.utc().toISO());\n }\n\n get isValid(): boolean {\n return isDefined(this.value) && this.utc.isValid;\n }\n\n /**\n * @deprecated Deprecated in favor for DateTime.from as that also accepts locales and another DateTime\n */\n get fromNow(): string {\n return this.from();\n }\n\n protected get utc(): LuxonDateTime {\n return this.luxon.setZone('utc');\n }\n\n protected get luxon(): LuxonDateTime {\n return LuxonDateTime.fromISO(this.value as string, { setZone: true });\n }\n\n from(date?: DateTime): string;\n\n from(locale?: string): string;\n\n from(date?: DateTime, locale?: string): string;\n\n from(param?: string | DateTime, other?: string): string {\n const date: Optional<DateTime> = isA<DateTime>(param) ? param : undefined;\n const locale: string = (isString(param) ? param : undefined) ?? other ?? 'en';\n return ifDefined(\n date,\n d => this.utc.setLocale(locale).toRelative({ base: d.utc }),\n () => this.utc.setLocale(locale).toRelative()\n ) as string;\n }\n\n isAfter(dt: DateTime): boolean {\n return this.utc > dt.utc;\n }\n\n isBefore(dt: DateTime): boolean {\n return this.utc < dt.utc;\n }\n\n equals(dt: DateTime): boolean {\n return this.utc.hasSame(dt.utc, 'millisecond');\n }\n\n add(n: number): DateTime;\n add(n: number, unit: DurationUnit): DateTime;\n add(duration: Duration): DateTime;\n add(n: number | Duration, unit?: DurationUnit): DateTime {\n return new DateTime(this.luxon.plus(isNumber(n) ? { [unit ?? ('day' as string)]: n } : n).toISO());\n }\n\n subtract(n: number): DateTime;\n subtract(n: number, unit: DurationUnit): DateTime;\n subtract(duration: Duration): DateTime;\n subtract(n: number | Duration, unit?: DurationUnit): DateTime {\n return new DateTime(this.luxon.minus(isNumber(n) ? { [unit ?? ('day' as string)]: n } : n).toISO());\n }\n\n diff(other: DateTime, unit: DateTimeUnit = 'day', opts?: DiffOptions): number {\n return Math[opts?.rounding ?? 'floor'](this.utc.diff(other.utc).as(unit));\n }\n\n startOf(unit: DateTimeUnit = 'day'): DateTime {\n return new DateTime(this.luxon.startOf(unit).toISO());\n }\n\n endOf(unit: DateTimeUnit = 'day'): DateTime {\n return new DateTime(this.luxon.endOf(unit).toISO());\n }\n\n isWeekend(): boolean {\n return this.luxon.isWeekend;\n }\n\n withZone(zone: string): DateTime {\n return new DateTime(this.utc.setZone(zone).toISO());\n }\n\n toString(): string {\n return this.value ?? '';\n }\n\n toJSON(): JsonValue {\n return this.utc.toISO() as unknown as JsonValue;\n }\n\n toFormat(format: string): string {\n return this.luxon.toFormat(format);\n }\n\n toLocale(locale = 'nl-NL', format = 'D'): string {\n return this.luxon.setLocale(locale).toFormat(format);\n }\n\n toFull(locale?: string): string {\n return this.toLocale(locale, 'DDD');\n }\n\n toDate(): Optional<Date> {\n return this.isValid ? this.utc.toJSDate() : undefined;\n }\n}\n\nexport const isDateTime = (dt?: unknown): dt is DateTime => isDefined(dt) && dt instanceof DateTime;\n\nexport const dt = (dt?: unknown): DateTime => (isString(dt) || isNumber(dt) || dt instanceof Date ? new DateTime(dt) : new DateTime());\n"],"mappings":"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","names":["dt"]}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ofGet
|
|
3
|
+
} from "./chunk-SJGQU3OG.mjs";
|
|
4
|
+
import {
|
|
5
|
+
isFunc
|
|
6
|
+
} from "./chunk-PIRWVOO2.mjs";
|
|
7
|
+
import {
|
|
8
|
+
isDefined
|
|
9
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
10
|
+
|
|
11
|
+
// src/types/Text.ts
|
|
12
|
+
var isText = (t) => isDefined(t) && isFunc(t.toString);
|
|
13
|
+
var asString = (t, alt = "") => (isText(t) ? t : ofGet(alt)).toString();
|
|
14
|
+
var replaceAll = (origin, search, replace = "") => asString(origin).split(asString(search)).join(asString(replace));
|
|
15
|
+
var toWords = (input) => {
|
|
16
|
+
return asString(input).replace(/(\p{Lower})(\p{Upper})/gu, "$1 $2").replace(/(\p{Upper})(\p{Upper}\p{Lower})/gu, "$1 $2").split(/[_\W]+/g).filter(Boolean);
|
|
17
|
+
};
|
|
18
|
+
var kebab = (s = "") => toWords(s).join("-").toLowerCase();
|
|
19
|
+
|
|
20
|
+
export {
|
|
21
|
+
isText,
|
|
22
|
+
asString,
|
|
23
|
+
replaceAll,
|
|
24
|
+
toWords,
|
|
25
|
+
kebab
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=chunk-45GNHDKA.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Text.ts"],"sourcesContent":["import { isDefined } from './Is';\nimport { isFunc } from './Func';\nimport { Get, ofGet } from './Get';\n\nexport type Text = { toString(): string };\n\nexport const isText = (t?: unknown): t is Text => isDefined(t) && isFunc<string, any>((t as any).toString);\n\nexport const asString = (t?: unknown, alt: Get<Text> = ''): string => (isText(t) ? t : ofGet(alt)).toString();\n\nexport const replaceAll = (origin: Text, search: Text, replace: Text = ''): string => asString(origin).split(asString(search)).join(asString(replace));\n\nexport const toWords = (input: unknown): string[] => {\n return asString(input)\n .replace(/(\\p{Lower})(\\p{Upper})/gu, '$1 $2')\n .replace(/(\\p{Upper})(\\p{Upper}\\p{Lower})/gu, '$1 $2')\n .split(/[_\\W]+/g)\n .filter(Boolean);\n};\n\nexport const kebab = (s = ''): string => toWords(s).join('-').toLowerCase();\n"],"mappings":";;;;;;;;;;;AAMO,IAAM,SAAS,CAAC,MAA2B,UAAU,CAAC,KAAK,OAAqB,EAAU,QAAQ;AAElG,IAAM,WAAW,CAAC,GAAa,MAAiB,QAAgB,OAAO,CAAC,IAAI,IAAI,MAAM,GAAG,GAAG,SAAS;AAErG,IAAM,aAAa,CAAC,QAAc,QAAc,UAAgB,OAAe,SAAS,MAAM,EAAE,MAAM,SAAS,MAAM,CAAC,EAAE,KAAK,SAAS,OAAO,CAAC;AAE9I,IAAM,UAAU,CAAC,UAA6B;AACnD,SAAO,SAAS,KAAK,EAClB,QAAQ,4BAA4B,OAAO,EAC3C,QAAQ,qCAAqC,OAAO,EACpD,MAAM,SAAS,EACf,OAAO,OAAO;AACnB;AAEO,IAAM,QAAQ,CAAC,IAAI,OAAe,QAAQ,CAAC,EAAE,KAAK,GAAG,EAAE,YAAY;","names":[]}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
|
-
Enum
|
|
2
|
+
Enum
|
|
3
|
+
} from "./chunk-UNHWYQ54.mjs";
|
|
4
|
+
import {
|
|
3
5
|
asString
|
|
4
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-45GNHDKA.mjs";
|
|
5
7
|
import {
|
|
6
8
|
ofGet
|
|
7
9
|
} from "./chunk-SJGQU3OG.mjs";
|
|
@@ -25,4 +27,4 @@ var ContentType = class _ContentType extends Enum {
|
|
|
25
27
|
export {
|
|
26
28
|
ContentType
|
|
27
29
|
};
|
|
28
|
-
//# sourceMappingURL=chunk-
|
|
30
|
+
//# sourceMappingURL=chunk-4DJNTF2D.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/http/ContentType.ts"],"sourcesContent":["import formUrlEncoded from 'form-urlencoded';\nimport { Enum } from '../types/Enum';\nimport { Get, ofGet } from '../types/Get';\nimport { asString } from '../types/Text';\n\nexport class ContentType extends Enum {\n static Form = new ContentType('form', 'application/x-www-form-urlencoded', b => formUrlEncoded(b));\n static Json = new ContentType('json', 'application/json', b => b);\n static Stream = new ContentType('stream', 'application/octet-stream');\n static Text = new ContentType('text', 'text/plain');\n static Xml = new ContentType('xml', 'application/xml');\n\n private constructor(\n name: string,\n readonly type: string,\n protected readonly encoder: Get<string> = b => asString(b)\n ) {\n super(name, type);\n }\n\n encode = (body?: unknown): string => ofGet(this.encoder, body);\n}\n"],"mappings":";;;;;;;;;;;AAAA,OAAO,oBAAoB;AAKpB,IAAM,cAAN,MAAM,qBAAoB,KAAK;AAAA,EAO5B,YACN,MACS,MACU,UAAuB,OAAK,SAAS,CAAC,GACzD;AACA,UAAM,MAAM,IAAI;AAHP;AACU;AAAA,EAGrB;AAAA,EAZA,OAAO,OAAO,IAAI,aAAY,QAAQ,qCAAqC,OAAK,eAAe,CAAC,CAAC;AAAA,EACjG,OAAO,OAAO,IAAI,aAAY,QAAQ,oBAAoB,OAAK,CAAC;AAAA,EAChE,OAAO,SAAS,IAAI,aAAY,UAAU,0BAA0B;AAAA,EACpE,OAAO,OAAO,IAAI,aAAY,QAAQ,YAAY;AAAA,EAClD,OAAO,MAAM,IAAI,aAAY,OAAO,iBAAiB;AAAA,EAUrD,SAAS,CAAC,SAA2B,MAAM,KAAK,SAAS,IAAI;AAC/D;","names":[]}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import {
|
|
2
|
+
isResult,
|
|
3
|
+
toResult
|
|
4
|
+
} from "./chunk-J6KN572O.mjs";
|
|
5
|
+
import {
|
|
6
|
+
toArray
|
|
7
|
+
} from "./chunk-X7FZPY3P.mjs";
|
|
8
|
+
import {
|
|
9
|
+
isDefined
|
|
10
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
11
|
+
|
|
12
|
+
// src/types/Results.ts
|
|
13
|
+
var parse = (...rs) => toArray(...rs).map((r) => isResult(r) ? r : toResult(r));
|
|
14
|
+
var Results = class {
|
|
15
|
+
results;
|
|
16
|
+
constructor(...rs) {
|
|
17
|
+
this.results = parse(...rs);
|
|
18
|
+
}
|
|
19
|
+
get length() {
|
|
20
|
+
return this.results.length;
|
|
21
|
+
}
|
|
22
|
+
get isValid() {
|
|
23
|
+
return this.results.length === 0;
|
|
24
|
+
}
|
|
25
|
+
add = (...rs) => toResults(...this.results, ...parse(...rs));
|
|
26
|
+
};
|
|
27
|
+
var toResults = (...r) => new Results(...r);
|
|
28
|
+
var isResults = (r) => isDefined(r) && r instanceof Results;
|
|
29
|
+
|
|
30
|
+
export {
|
|
31
|
+
Results,
|
|
32
|
+
toResults,
|
|
33
|
+
isResults
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=chunk-4G6AW6D6.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Results.ts"],"sourcesContent":["import { Text } from './Text';\nimport { isResult, Result, toResult } from './Result';\nimport { Validatable } from './Validatable';\nimport { isDefined } from './Is';\nimport { toArray } from './Array';\n\nconst parse = (...rs: (Text | Result)[]): Result[] => toArray(...rs).map(r => (isResult(r) ? r : toResult(r)));\n\nexport class Results implements Validatable {\n public readonly results: Result[];\n\n constructor(...rs: (Text | Result)[]) {\n this.results = parse(...rs);\n }\n\n get length(): number {\n return this.results.length;\n }\n\n get isValid(): boolean {\n return this.results.length === 0;\n }\n\n add = (...rs: (Text | Result)[]): Results => toResults(...this.results, ...parse(...rs));\n}\n\nexport const toResults = (...r: (Text | Result)[]): Results => new Results(...r);\n\nexport const isResults = (r?: unknown): r is Results => isDefined(r) && r instanceof Results;\n"],"mappings":";;;;;;;;;;;;AAMA,IAAM,QAAQ,IAAI,OAAoC,QAAQ,GAAG,EAAE,EAAE,IAAI,OAAM,SAAS,CAAC,IAAI,IAAI,SAAS,CAAC,CAAE;AAEtG,IAAM,UAAN,MAAqC;AAAA,EAC1B;AAAA,EAEhB,eAAe,IAAuB;AACpC,SAAK,UAAU,MAAM,GAAG,EAAE;AAAA,EAC5B;AAAA,EAEA,IAAI,SAAiB;AACnB,WAAO,KAAK,QAAQ;AAAA,EACtB;AAAA,EAEA,IAAI,UAAmB;AACrB,WAAO,KAAK,QAAQ,WAAW;AAAA,EACjC;AAAA,EAEA,MAAM,IAAI,OAAmC,UAAU,GAAG,KAAK,SAAS,GAAG,MAAM,GAAG,EAAE,CAAC;AACzF;AAEO,IAAM,YAAY,IAAI,MAAkC,IAAI,QAAQ,GAAG,CAAC;AAExE,IAAM,YAAY,CAAC,MAA8B,UAAU,CAAC,KAAK,aAAa;","names":[]}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import {
|
|
2
2
|
AxiosProvider
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-EDVJUOFU.mjs";
|
|
4
4
|
import {
|
|
5
5
|
RequestOptions,
|
|
6
6
|
toPageOptions
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-7TJ4VCBE.mjs";
|
|
8
8
|
import {
|
|
9
9
|
HttpVerb
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-LAR7AT6R.mjs";
|
|
11
11
|
|
|
12
12
|
// src/services/Api.ts
|
|
13
13
|
var Api = class {
|
|
@@ -76,4 +76,4 @@ export {
|
|
|
76
76
|
Api,
|
|
77
77
|
api
|
|
78
78
|
};
|
|
79
|
-
//# sourceMappingURL=chunk-
|
|
79
|
+
//# sourceMappingURL=chunk-5WSP2IYF.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":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
toUuid
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-LXQQ5N6S.mjs";
|
|
4
4
|
|
|
5
5
|
// src/types/Id.ts
|
|
6
6
|
var toId = () => toUuid();
|
|
@@ -8,4 +8,4 @@ var toId = () => toUuid();
|
|
|
8
8
|
export {
|
|
9
9
|
toId
|
|
10
10
|
};
|
|
11
|
-
//# sourceMappingURL=chunk-
|
|
11
|
+
//# sourceMappingURL=chunk-5YM5CLOG.mjs.map
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import {
|
|
2
|
-
Exception,
|
|
3
2
|
reject
|
|
4
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-USGZFNWP.mjs";
|
|
4
|
+
import {
|
|
5
|
+
Exception
|
|
6
|
+
} from "./chunk-LYAPQ4QZ.mjs";
|
|
5
7
|
|
|
6
8
|
// src/types/Gateway.ts
|
|
7
9
|
var Gateway = class {
|
|
@@ -40,4 +42,4 @@ var Gateway = class {
|
|
|
40
42
|
export {
|
|
41
43
|
Gateway
|
|
42
44
|
};
|
|
43
|
-
//# sourceMappingURL=chunk-
|
|
45
|
+
//# sourceMappingURL=chunk-6BQEFLOS.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Gateway.ts"],"sourcesContent":["import { Json, JsonValue } from './Json';\nimport { Id } from './Id';\nimport { Exception } from './Exception';\nimport { PageList, PageOptions } from './PageList';\nimport { List } from './List';\nimport { Optional } from './Types';\nimport { reject } from '../utils/Promise';\n\nexport type FetchOptions = PageOptions;\n\nexport abstract class Gateway<Options = FetchOptions> {\n all(options?: Options): Promise<PageList<Json>> {\n return reject(Exception.IsNotImplemented);\n }\n\n byId(id: Id, options?: Options): Promise<Optional<Json>> {\n return reject(Exception.IsNotImplemented);\n }\n\n by(_key: string, _value: JsonValue, _options?: Options): Promise<PageList<Json>> {\n return reject(Exception.IsNotImplemented);\n }\n\n byIds(..._ids: Id[]): Promise<List<Json>> {\n return reject(Exception.IsNotImplemented);\n }\n\n search(q: JsonValue, options?: Options): Promise<PageList<Json>> {\n return reject(Exception.IsNotImplemented);\n }\n\n filter(options?: Options): Promise<PageList<Json>> {\n return reject(Exception.IsNotImplemented);\n }\n\n exists(id: Id, options?: Options): Promise<boolean> {\n return reject(Exception.IsNotImplemented);\n }\n\n add(item: Json, options?: Options): Promise<Json> {\n return reject(Exception.IsNotImplemented);\n }\n\n update(item: Json, options?: Options): Promise<Json> {\n return reject(Exception.IsNotImplemented);\n }\n\n remove(id: Id, options?: Options): Promise<boolean> {\n return reject(Exception.IsNotImplemented);\n }\n}\n"],"mappings":";;;;;;;;AAUO,IAAe,UAAf,MAA+C;AAAA,EACpD,IAAI,SAA4C;AAC9C,WAAO,OAAO,UAAU,gBAAgB;AAAA,EAC1C;AAAA,EAEA,KAAK,IAAQ,SAA4C;AACvD,WAAO,OAAO,UAAU,gBAAgB;AAAA,EAC1C;AAAA,EAEA,GAAG,MAAc,QAAmB,UAA6C;AAC/E,WAAO,OAAO,UAAU,gBAAgB;AAAA,EAC1C;AAAA,EAEA,SAAS,MAAiC;AACxC,WAAO,OAAO,UAAU,gBAAgB;AAAA,EAC1C;AAAA,EAEA,OAAO,GAAc,SAA4C;AAC/D,WAAO,OAAO,UAAU,gBAAgB;AAAA,EAC1C;AAAA,EAEA,OAAO,SAA4C;AACjD,WAAO,OAAO,UAAU,gBAAgB;AAAA,EAC1C;AAAA,EAEA,OAAO,IAAQ,SAAqC;AAClD,WAAO,OAAO,UAAU,gBAAgB;AAAA,EAC1C;AAAA,EAEA,IAAI,MAAY,SAAkC;AAChD,WAAO,OAAO,UAAU,gBAAgB;AAAA,EAC1C;AAAA,EAEA,OAAO,MAAY,SAAkC;AACnD,WAAO,OAAO,UAAU,gBAAgB;AAAA,EAC1C;AAAA,EAEA,OAAO,IAAQ,SAAqC;AAClD,WAAO,OAAO,UAAU,gBAAgB;AAAA,EAC1C;AACF;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
SqlQuery
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-73UD7JJL.mjs";
|
|
4
4
|
import {
|
|
5
5
|
ifGet
|
|
6
6
|
} from "./chunk-SJGQU3OG.mjs";
|
|
@@ -15,4 +15,4 @@ var Delete = class extends SqlQuery {
|
|
|
15
15
|
export {
|
|
16
16
|
Delete
|
|
17
17
|
};
|
|
18
|
-
//# sourceMappingURL=chunk-
|
|
18
|
+
//# sourceMappingURL=chunk-6VLC4Z4H.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/sql/Delete.ts"],"sourcesContent":["import { SqlQuery } from './SqlQuery';\nimport { ifGet } from '../types/Get';\n\nexport class Delete extends SqlQuery {\n toString(): string {\n return `DELETE FROM ${this.table}` + ifGet(this.clauses.length, ` WHERE ${this.clauses.join(' AND ')};`, ';');\n }\n}\n"],"mappings":";;;;;;;;AAGO,IAAM,SAAN,cAAqB,SAAS;AAAA,EACnC,WAAmB;AACjB,WAAO,eAAe,KAAK,KAAK,KAAK,MAAM,KAAK,QAAQ,QAAQ,UAAU,KAAK,QAAQ,KAAK,OAAO,CAAC,KAAK,GAAG;AAAA,EAC9G;AACF;","names":[]}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import {
|
|
2
|
+
text
|
|
3
|
+
} from "./chunk-FHW5K2RR.mjs";
|
|
4
|
+
|
|
5
|
+
// src/types/Context.ts
|
|
6
|
+
var DotEnvContext = class {
|
|
7
|
+
domain = process.env.DOMAIN ?? "easy";
|
|
8
|
+
name = process.env.ENVIRONMENT_NAME ?? "";
|
|
9
|
+
host = process.env.HOST ?? "";
|
|
10
|
+
port = Number.parseInt(process.env.PORT ?? "8080");
|
|
11
|
+
app = process.env.APP ?? "";
|
|
12
|
+
get = (key, alt) => {
|
|
13
|
+
const k = text(key).map((k2) => k2.replace(/([a-z])([A-Z])/g, "$1 $2")).snake.toString();
|
|
14
|
+
return process.env[k] ?? alt;
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
var BaseRequestContext = class {
|
|
18
|
+
state = {};
|
|
19
|
+
get token() {
|
|
20
|
+
return this.get("token");
|
|
21
|
+
}
|
|
22
|
+
set token(token) {
|
|
23
|
+
this.set("token", token);
|
|
24
|
+
}
|
|
25
|
+
get identity() {
|
|
26
|
+
return this.token;
|
|
27
|
+
}
|
|
28
|
+
get jwt() {
|
|
29
|
+
return this.get("jwt");
|
|
30
|
+
}
|
|
31
|
+
set jwt(jwt) {
|
|
32
|
+
this.set("jwt", jwt);
|
|
33
|
+
}
|
|
34
|
+
get correlationId() {
|
|
35
|
+
return this.get("correlationId");
|
|
36
|
+
}
|
|
37
|
+
set correlationId(id) {
|
|
38
|
+
this.set("correlationId", id);
|
|
39
|
+
}
|
|
40
|
+
get lastError() {
|
|
41
|
+
return this.get("lastError");
|
|
42
|
+
}
|
|
43
|
+
set lastError(error) {
|
|
44
|
+
this.set("lastError", error);
|
|
45
|
+
}
|
|
46
|
+
get(key) {
|
|
47
|
+
return this.state[key];
|
|
48
|
+
}
|
|
49
|
+
set(key, value) {
|
|
50
|
+
return this.state[key] = value;
|
|
51
|
+
}
|
|
52
|
+
create = (f) => f();
|
|
53
|
+
wrap = (f) => f();
|
|
54
|
+
};
|
|
55
|
+
var BaseContext = class extends BaseRequestContext {
|
|
56
|
+
};
|
|
57
|
+
var Context = class {
|
|
58
|
+
constructor(state = {}) {
|
|
59
|
+
this.state = state;
|
|
60
|
+
this.state = {
|
|
61
|
+
...{
|
|
62
|
+
env: new DotEnvContext(),
|
|
63
|
+
request: new BaseRequestContext(),
|
|
64
|
+
other: {}
|
|
65
|
+
},
|
|
66
|
+
...this.state
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
get env() {
|
|
70
|
+
return this.state.env;
|
|
71
|
+
}
|
|
72
|
+
set env(env) {
|
|
73
|
+
this.state.env = env;
|
|
74
|
+
}
|
|
75
|
+
get request() {
|
|
76
|
+
return this.state.request;
|
|
77
|
+
}
|
|
78
|
+
set request(request) {
|
|
79
|
+
this.state.request = request;
|
|
80
|
+
}
|
|
81
|
+
get other() {
|
|
82
|
+
return this.state.other;
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
var ctx = new Context();
|
|
86
|
+
|
|
87
|
+
export {
|
|
88
|
+
DotEnvContext,
|
|
89
|
+
BaseRequestContext,
|
|
90
|
+
BaseContext,
|
|
91
|
+
Context,
|
|
92
|
+
ctx
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=chunk-6YVMQB26.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/types/Context.ts"],"sourcesContent":["import { Uuid } from './Uuid';\nimport { Identity } from './Identity';\nimport { Optional } from './Types';\nimport { text } from './Template';\n\nexport interface EnvContext {\n readonly domain: string;\n readonly name: string;\n readonly host: string;\n readonly port: number;\n readonly app: string;\n\n get(key: string, alt?: string): Optional<string>;\n}\n\nexport class DotEnvContext implements EnvContext {\n readonly domain = process.env.DOMAIN ?? 'easy';\n readonly name = process.env.ENVIRONMENT_NAME ?? '';\n readonly host = process.env.HOST ?? '';\n readonly port = Number.parseInt(process.env.PORT ?? '8080');\n readonly app = process.env.APP ?? '';\n\n readonly get = (key: string, alt?: string): Optional<string> => {\n const k = text(key)\n .map(k => k.replace(/([a-z])([A-Z])/g, '$1 $2'))\n .snake.toString();\n return process.env[k] ?? alt;\n };\n}\n\nexport interface RequestContext {\n token?: any;\n identity?: Identity;\n jwt: string;\n correlationId?: Uuid;\n lastError?: string;\n lastErrorStack?: string;\n get<T>(key: string): T;\n set<T>(key: string, value: T): T;\n create: (f: () => void) => void;\n wrap<T>(f: () => Promise<T>): Promise<T>;\n}\n\nexport class BaseRequestContext implements RequestContext {\n private state: any = {};\n\n get token(): any {\n return this.get('token');\n }\n\n set token(token: any) {\n this.set('token', token);\n }\n\n get identity(): Identity {\n return this.token as Identity;\n }\n\n get jwt(): string {\n return this.get('jwt');\n }\n\n set jwt(jwt: string) {\n this.set('jwt', jwt);\n }\n\n get correlationId(): Uuid {\n return this.get('correlationId');\n }\n\n set correlationId(id: Uuid) {\n this.set('correlationId', id);\n }\n\n get lastError(): Optional<string> {\n return this.get('lastError');\n }\n\n set lastError(error: Optional<string>) {\n this.set('lastError', error);\n }\n\n public get<T>(key: string): T {\n return this.state[key] as T;\n }\n\n public set<T>(key: string, value: T): T {\n return (this.state[key] = value);\n }\n\n public readonly create = (f: () => void): void => f();\n\n public readonly wrap = <T>(f: () => Promise<T>): Promise<T> => f();\n}\n\n/**\n * @deprecated Renamed to BaseRequestContext\n */\nexport class BaseContext extends BaseRequestContext {}\n\nexport interface Contexts {\n env?: EnvContext;\n request?: RequestContext;\n other?: any;\n}\n\nexport class Context {\n constructor(protected state: Contexts = {}) {\n this.state = {\n ...{\n env: new DotEnvContext(),\n request: new BaseRequestContext(),\n other: {},\n },\n ...this.state,\n };\n }\n\n get env(): EnvContext {\n return this.state.env as EnvContext;\n }\n\n set env(env: EnvContext) {\n this.state.env = env;\n }\n\n get request(): RequestContext {\n return this.state.request as RequestContext;\n }\n\n set request(request: RequestContext) {\n this.state.request = request;\n }\n\n get other(): any {\n return this.state.other;\n }\n}\n\nexport const ctx = new Context();\n"],"mappings":";;;;;AAeO,IAAM,gBAAN,MAA0C;AAAA,EACtC,SAAS,QAAQ,IAAI,UAAU;AAAA,EAC/B,OAAO,QAAQ,IAAI,oBAAoB;AAAA,EACvC,OAAO,QAAQ,IAAI,QAAQ;AAAA,EAC3B,OAAO,OAAO,SAAS,QAAQ,IAAI,QAAQ,MAAM;AAAA,EACjD,MAAM,QAAQ,IAAI,OAAO;AAAA,EAEzB,MAAM,CAAC,KAAa,QAAmC;AAC9D,UAAM,IAAI,KAAK,GAAG,EACf,IAAI,CAAAA,OAAKA,GAAE,QAAQ,mBAAmB,OAAO,CAAC,EAC9C,MAAM,SAAS;AAClB,WAAO,QAAQ,IAAI,CAAC,KAAK;AAAA,EAC3B;AACF;AAeO,IAAM,qBAAN,MAAmD;AAAA,EAChD,QAAa,CAAC;AAAA,EAEtB,IAAI,QAAa;AACf,WAAO,KAAK,IAAI,OAAO;AAAA,EACzB;AAAA,EAEA,IAAI,MAAM,OAAY;AACpB,SAAK,IAAI,SAAS,KAAK;AAAA,EACzB;AAAA,EAEA,IAAI,WAAqB;AACvB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAI,MAAc;AAChB,WAAO,KAAK,IAAI,KAAK;AAAA,EACvB;AAAA,EAEA,IAAI,IAAI,KAAa;AACnB,SAAK,IAAI,OAAO,GAAG;AAAA,EACrB;AAAA,EAEA,IAAI,gBAAsB;AACxB,WAAO,KAAK,IAAI,eAAe;AAAA,EACjC;AAAA,EAEA,IAAI,cAAc,IAAU;AAC1B,SAAK,IAAI,iBAAiB,EAAE;AAAA,EAC9B;AAAA,EAEA,IAAI,YAA8B;AAChC,WAAO,KAAK,IAAI,WAAW;AAAA,EAC7B;AAAA,EAEA,IAAI,UAAU,OAAyB;AACrC,SAAK,IAAI,aAAa,KAAK;AAAA,EAC7B;AAAA,EAEO,IAAO,KAAgB;AAC5B,WAAO,KAAK,MAAM,GAAG;AAAA,EACvB;AAAA,EAEO,IAAO,KAAa,OAAa;AACtC,WAAQ,KAAK,MAAM,GAAG,IAAI;AAAA,EAC5B;AAAA,EAEgB,SAAS,CAAC,MAAwB,EAAE;AAAA,EAEpC,OAAO,CAAI,MAAoC,EAAE;AACnE;AAKO,IAAM,cAAN,cAA0B,mBAAmB;AAAC;AAQ9C,IAAM,UAAN,MAAc;AAAA,EACnB,YAAsB,QAAkB,CAAC,GAAG;AAAtB;AACpB,SAAK,QAAQ;AAAA,MACX,GAAG;AAAA,QACD,KAAK,IAAI,cAAc;AAAA,QACvB,SAAS,IAAI,mBAAmB;AAAA,QAChC,OAAO,CAAC;AAAA,MACV;AAAA,MACA,GAAG,KAAK;AAAA,IACV;AAAA,EACF;AAAA,EAEA,IAAI,MAAkB;AACpB,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA,EAEA,IAAI,IAAI,KAAiB;AACvB,SAAK,MAAM,MAAM;AAAA,EACnB;AAAA,EAEA,IAAI,UAA0B;AAC5B,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA,EAEA,IAAI,QAAQ,SAAyB;AACnC,SAAK,MAAM,UAAU;AAAA,EACvB;AAAA,EAEA,IAAI,QAAa;AACf,WAAO,KAAK,MAAM;AAAA,EACpB;AACF;AAEO,IAAM,MAAM,IAAI,QAAQ;","names":["k"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
toList
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-J7XKOXMW.mjs";
|
|
4
4
|
|
|
5
5
|
// src/sql/SqlQuery.ts
|
|
6
6
|
var SqlQuery = class {
|
|
@@ -17,4 +17,4 @@ var SqlQuery = class {
|
|
|
17
17
|
export {
|
|
18
18
|
SqlQuery
|
|
19
19
|
};
|
|
20
|
-
//# sourceMappingURL=chunk-
|
|
20
|
+
//# sourceMappingURL=chunk-73UD7JJL.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/sql/SqlQuery.ts"],"sourcesContent":["import { Query } from '../data/Query';\nimport { Table } from './Table';\nimport { Join } from './Join';\nimport { List, toList } from '../types/List';\nimport { Clause } from './Clause';\n\nexport class SqlQuery implements Query {\n constructor(\n protected table: Table | Join,\n readonly clauses: List<Clause> = toList()\n ) {}\n\n where = (...clauses: Clause[]): this => {\n this.clauses.add(clauses);\n return this;\n };\n}\n"],"mappings":";;;;;AAMO,IAAM,WAAN,MAAgC;AAAA,EACrC,YACY,OACD,UAAwB,OAAO,GACxC;AAFU;AACD;AAAA,EACR;AAAA,EAEH,QAAQ,IAAI,YAA4B;AACtC,SAAK,QAAQ,IAAI,OAAO;AACxB,WAAO;AAAA,EACT;AACF;","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
Select
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-HBJMCX2I.mjs";
|
|
4
4
|
import {
|
|
5
5
|
ifGet
|
|
6
6
|
} from "./chunk-SJGQU3OG.mjs";
|
|
@@ -15,4 +15,4 @@ var Count = class extends Select {
|
|
|
15
15
|
export {
|
|
16
16
|
Count
|
|
17
17
|
};
|
|
18
|
-
//# sourceMappingURL=chunk-
|
|
18
|
+
//# sourceMappingURL=chunk-7K4QMDUN.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/sql/Count.ts"],"sourcesContent":["import { Select } from './Select';\nimport { ifGet } from '../types/Get';\n\nexport class Count extends Select {\n toString(): string {\n return (\n `SELECT COUNT(*)` +\n ifGet(this._top, ` TOP ${this._top}`, '') +\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 ';'\n );\n }\n}\n"],"mappings":";;;;;;;;AAGO,IAAM,QAAN,cAAoB,OAAO;AAAA,EAChC,WAAmB;AACjB,WACE,oBACA,MAAM,KAAK,MAAM,QAAQ,KAAK,IAAI,IAAI,EAAE,IACxC,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;AAAA,EAEJ;AACF;","names":[]}
|
|
@@ -3,20 +3,26 @@ import {
|
|
|
3
3
|
} from "./chunk-SW2OCUH3.mjs";
|
|
4
4
|
import {
|
|
5
5
|
toUuid
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-LXQQ5N6S.mjs";
|
|
7
7
|
import {
|
|
8
8
|
ContentType
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-4DJNTF2D.mjs";
|
|
10
10
|
import {
|
|
11
|
-
Enum,
|
|
12
|
-
asString,
|
|
13
11
|
ctx
|
|
14
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-6YVMQB26.mjs";
|
|
13
|
+
import {
|
|
14
|
+
Enum
|
|
15
|
+
} from "./chunk-UNHWYQ54.mjs";
|
|
16
|
+
import {
|
|
17
|
+
asString
|
|
18
|
+
} from "./chunk-45GNHDKA.mjs";
|
|
15
19
|
import {
|
|
16
|
-
isDefined,
|
|
17
|
-
isNotEmpty,
|
|
18
20
|
on
|
|
19
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-ZPNFXK7Y.mjs";
|
|
22
|
+
import {
|
|
23
|
+
isDefined,
|
|
24
|
+
isNotEmpty
|
|
25
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
20
26
|
|
|
21
27
|
// src/http/RequestOptions.ts
|
|
22
28
|
var toPageOptions = (options) => options instanceof RequestOptions ? options.pageOptions : options;
|
|
@@ -81,4 +87,4 @@ export {
|
|
|
81
87
|
RequestOptions,
|
|
82
88
|
isRequestOptions
|
|
83
89
|
};
|
|
84
|
-
//# sourceMappingURL=chunk-
|
|
90
|
+
//# sourceMappingURL=chunk-7TJ4VCBE.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/http/RequestOptions.ts"],"sourcesContent":["import { HttpHeader } from './HttpHeader';\nimport { ContentType } from './ContentType';\nimport { PageOptions } from '../types/PageList';\nimport { Optional } from '../types/Types';\nimport { Text } from '../types/Text';\nimport { Enum } from '../types/Enum';\nimport { CacheAge } from '../types/CacheAge';\nimport { ctx } from '../types/Context';\nimport { toUuid } from '../types/Uuid';\nimport { Id } from '../types/Id';\nimport { on } from '../types/Constructor';\nimport { asString } from '../types/Text';\nimport { isDefined, isNotEmpty } from '../types/Is';\n\nexport const toPageOptions = (options?: RequestOptions | PageOptions): Optional<PageOptions> =>\n options instanceof RequestOptions ? options.pageOptions : options;\n\nexport class RequestOptions extends Enum {\n public requestOptions: { maxRedirects?: number; validateStatus?: (status: number) => boolean; timeout?: CacheAge } = {};\n\n constructor(\n readonly type: ContentType = ContentType.Json,\n readonly headers: { [key: string]: any } = {},\n public pageOptions?: PageOptions\n ) {\n super(type.name);\n this.headers['Content-Type'] = type.id;\n this.headers[HttpHeader.Correlation] = ctx.request.correlationId ?? toUuid();\n }\n\n static get Form(): RequestOptions {\n return new RequestOptions(ContentType.Form);\n }\n\n static get Json(): RequestOptions {\n return new RequestOptions(ContentType.Json);\n }\n\n static get Stream(): RequestOptions {\n return new RequestOptions(ContentType.Stream);\n }\n\n static get Text(): RequestOptions {\n return new RequestOptions(ContentType.Text);\n }\n\n static get Xml(): RequestOptions {\n return new RequestOptions(ContentType.Xml);\n }\n\n page = (options: PageOptions): this => {\n this.pageOptions = options;\n return this;\n };\n\n authorization = (auth: string): this => this.setHeader('Authorization', auth);\n\n apiKey = (apiKey: string): this => this.setHeader('apiKey', apiKey);\n\n setHeader = (key: Text, value: Id | boolean): this => on(this, t => (t.headers[asString(key)] = value));\n\n setHeaderUnlessPresent = (key: string, value?: Id | boolean): this => (value ? this.setHeader(key, this.headers[key] ?? value) : this);\n\n accept = (type: ContentType): this => this.setHeader('Accept', type.id);\n\n bearer = (jwt: Text): this => {\n return isNotEmpty(jwt) ? this.authorization(`Bearer ${jwt}`) : this;\n };\n\n basic = (username: Text, password: Text): this => {\n const basicAuth = Buffer.from(`${username}:${password}`, 'utf8').toString('base64');\n return this.authorization(`Basic ${basicAuth}`);\n };\n\n maxRedirects = (max?: number): this => {\n this.requestOptions.maxRedirects = max;\n return this;\n };\n\n validateStatus = (validate?: (status: number) => boolean): this => {\n this.requestOptions.validateStatus = validate;\n return this;\n };\n\n timeout = (t?: CacheAge): this => {\n this.requestOptions.timeout = t;\n return this;\n };\n}\n\nexport const isRequestOptions = (o?: unknown): o is RequestOptions => isDefined(o) && o instanceof RequestOptions;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAcO,IAAM,gBAAgB,CAAC,YAC5B,mBAAmB,iBAAiB,QAAQ,cAAc;AAErD,IAAM,iBAAN,MAAM,wBAAuB,KAAK;AAAA,EAGvC,YACW,OAAoB,YAAY,MAChC,UAAkC,CAAC,GACrC,aACP;AACA,UAAM,KAAK,IAAI;AAJN;AACA;AACF;AAGP,SAAK,QAAQ,cAAc,IAAI,KAAK;AACpC,SAAK,QAAQ,WAAW,WAAW,IAAI,IAAI,QAAQ,iBAAiB,OAAO;AAAA,EAC7E;AAAA,EAVO,iBAA8G,CAAC;AAAA,EAYtH,WAAW,OAAuB;AAChC,WAAO,IAAI,gBAAe,YAAY,IAAI;AAAA,EAC5C;AAAA,EAEA,WAAW,OAAuB;AAChC,WAAO,IAAI,gBAAe,YAAY,IAAI;AAAA,EAC5C;AAAA,EAEA,WAAW,SAAyB;AAClC,WAAO,IAAI,gBAAe,YAAY,MAAM;AAAA,EAC9C;AAAA,EAEA,WAAW,OAAuB;AAChC,WAAO,IAAI,gBAAe,YAAY,IAAI;AAAA,EAC5C;AAAA,EAEA,WAAW,MAAsB;AAC/B,WAAO,IAAI,gBAAe,YAAY,GAAG;AAAA,EAC3C;AAAA,EAEA,OAAO,CAAC,YAA+B;AACrC,SAAK,cAAc;AACnB,WAAO;AAAA,EACT;AAAA,EAEA,gBAAgB,CAAC,SAAuB,KAAK,UAAU,iBAAiB,IAAI;AAAA,EAE5E,SAAS,CAAC,WAAyB,KAAK,UAAU,UAAU,MAAM;AAAA,EAElE,YAAY,CAAC,KAAW,UAA8B,GAAG,MAAM,OAAM,EAAE,QAAQ,SAAS,GAAG,CAAC,IAAI,KAAM;AAAA,EAEtG,yBAAyB,CAAC,KAAa,UAAgC,QAAQ,KAAK,UAAU,KAAK,KAAK,QAAQ,GAAG,KAAK,KAAK,IAAI;AAAA,EAEjI,SAAS,CAAC,SAA4B,KAAK,UAAU,UAAU,KAAK,EAAE;AAAA,EAEtE,SAAS,CAAC,QAAoB;AAC5B,WAAO,WAAW,GAAG,IAAI,KAAK,cAAc,UAAU,GAAG,EAAE,IAAI;AAAA,EACjE;AAAA,EAEA,QAAQ,CAAC,UAAgB,aAAyB;AAChD,UAAM,YAAY,OAAO,KAAK,GAAG,QAAQ,IAAI,QAAQ,IAAI,MAAM,EAAE,SAAS,QAAQ;AAClF,WAAO,KAAK,cAAc,SAAS,SAAS,EAAE;AAAA,EAChD;AAAA,EAEA,eAAe,CAAC,QAAuB;AACrC,SAAK,eAAe,eAAe;AACnC,WAAO;AAAA,EACT;AAAA,EAEA,iBAAiB,CAAC,aAAiD;AACjE,SAAK,eAAe,iBAAiB;AACrC,WAAO;AAAA,EACT;AAAA,EAEA,UAAU,CAAC,MAAuB;AAChC,SAAK,eAAe,UAAU;AAC9B,WAAO;AAAA,EACT;AACF;AAEO,IAAM,mBAAmB,CAAC,MAAqC,UAAU,CAAC,KAAK,aAAa;","names":[]}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
toClause
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-U53FLD4J.mjs";
|
|
4
4
|
import {
|
|
5
5
|
Property
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-QQRGOHU6.mjs";
|
|
7
7
|
import {
|
|
8
8
|
tryTo
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-ARZEQQW5.mjs";
|
|
10
10
|
import {
|
|
11
11
|
ofGet
|
|
12
12
|
} from "./chunk-SJGQU3OG.mjs";
|
|
@@ -79,4 +79,4 @@ export {
|
|
|
79
79
|
PatternColumn,
|
|
80
80
|
OrderColumn
|
|
81
81
|
};
|
|
82
|
-
//# sourceMappingURL=chunk-
|
|
82
|
+
//# sourceMappingURL=chunk-A2JYVEBB.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/sql/Column.ts"],"sourcesContent":["import { Clause, toClause } from './Clause';\nimport { Table } from './Table';\nimport { Property, PropertyOptions } from '../utils/Property';\nimport { Json, JsonValue } from '../types/Json';\nimport { tryTo } from '../types/Try';\nimport { ofGet } from '../types/Get';\nimport type { Text } from '../types/Text';\n\nexport class Column extends Property implements Text {\n constructor(\n readonly owner: Table,\n property: string,\n options?: PropertyOptions\n ) {\n super(property, options);\n }\n\n get count(): Column {\n return this.function('COUNT');\n }\n\n get max(): Column {\n return this.function('MAX');\n }\n\n get min(): Column {\n return this.function('MIN');\n }\n\n get sum(): Column {\n return this.function('SUM');\n }\n\n get average(): Column {\n return this.function('AVG');\n }\n\n get length(): Column {\n return this.function('LEN');\n }\n\n get asc(): OrderColumn {\n return this.format('$col ASC') as OrderColumn;\n }\n\n get desc(): OrderColumn {\n return this.format('$col DESC') as OrderColumn;\n }\n\n in = (source: Json = {}): JsonValue =>\n tryTo(source)\n .map(s => s[this.property] ?? ofGet(this.options?.dflt))\n .map(v => this.options?.convert?.to(v))\n .orElse();\n\n out = (source: Json = {}, key = ''): JsonValue =>\n tryTo(source)\n .map(s => this.options?.convert?.from(s[key]))\n .orElse();\n\n function = (func: string): Column => this.format(`${func}($name)`);\n\n format = (pattern: string): Column => new PatternColumn(this, pattern);\n\n is = (value: unknown): Clause => this.clause('=', value);\n\n not = (value: unknown): Clause => this.clause('<>', value);\n\n like = (value: unknown): Clause => this.clause('LIKE', `%${value}%`);\n\n startsLike = (value: unknown): Clause => this.clause('LIKE', `${value}%`);\n\n endsLike = (value: unknown): Clause => this.clause('LIKE', `%${value}`);\n\n unlike = (value: unknown): Clause => this.clause('NOT LIKE', `%${value}%`);\n\n less = (value: unknown): Clause => this.clause('<', value);\n\n lessEqual = (value: unknown): Clause => this.clause('<=', value);\n\n greater = (value: unknown): Clause => this.clause('>', value);\n\n greaterEqual = (value: unknown): Clause => this.clause('>=', value);\n\n as = (as: string): Column => this.format(`$col AS ${as}`);\n\n toString(): string {\n return `${this.owner}.${this.property}`;\n }\n\n protected clause = (operator: string, value: unknown): Clause => toClause(this, operator, value, this?.options?.convert);\n}\n\nexport class PatternColumn extends Column {\n constructor(\n protected col: Column,\n protected pattern: string\n ) {\n super(col.owner, col.property);\n }\n\n toString(): string {\n return this.pattern.replace('$col', this.col.toString()).replace('$table', this.col.owner.toString).replace('$name', this.col.property);\n }\n}\n\nexport class OrderColumn extends PatternColumn {}\n"],"mappings":";;;;;;;;;;;;;;AAQO,IAAM,SAAN,cAAqB,SAAyB;AAAA,EACnD,YACW,OACT,UACA,SACA;AACA,UAAM,UAAU,OAAO;AAJd;AAAA,EAKX;AAAA,EAEA,IAAI,QAAgB;AAClB,WAAO,KAAK,SAAS,OAAO;AAAA,EAC9B;AAAA,EAEA,IAAI,MAAc;AAChB,WAAO,KAAK,SAAS,KAAK;AAAA,EAC5B;AAAA,EAEA,IAAI,MAAc;AAChB,WAAO,KAAK,SAAS,KAAK;AAAA,EAC5B;AAAA,EAEA,IAAI,MAAc;AAChB,WAAO,KAAK,SAAS,KAAK;AAAA,EAC5B;AAAA,EAEA,IAAI,UAAkB;AACpB,WAAO,KAAK,SAAS,KAAK;AAAA,EAC5B;AAAA,EAEA,IAAI,SAAiB;AACnB,WAAO,KAAK,SAAS,KAAK;AAAA,EAC5B;AAAA,EAEA,IAAI,MAAmB;AACrB,WAAO,KAAK,OAAO,UAAU;AAAA,EAC/B;AAAA,EAEA,IAAI,OAAoB;AACtB,WAAO,KAAK,OAAO,WAAW;AAAA,EAChC;AAAA,EAEA,KAAK,CAAC,SAAe,CAAC,MACpB,MAAM,MAAM,EACT,IAAI,OAAK,EAAE,KAAK,QAAQ,KAAK,MAAM,KAAK,SAAS,IAAI,CAAC,EACtD,IAAI,OAAK,KAAK,SAAS,SAAS,GAAG,CAAC,CAAC,EACrC,OAAO;AAAA,EAEZ,MAAM,CAAC,SAAe,CAAC,GAAG,MAAM,OAC9B,MAAM,MAAM,EACT,IAAI,OAAK,KAAK,SAAS,SAAS,KAAK,EAAE,GAAG,CAAC,CAAC,EAC5C,OAAO;AAAA,EAEZ,WAAW,CAAC,SAAyB,KAAK,OAAO,GAAG,IAAI,SAAS;AAAA,EAEjE,SAAS,CAAC,YAA4B,IAAI,cAAc,MAAM,OAAO;AAAA,EAErE,KAAK,CAAC,UAA2B,KAAK,OAAO,KAAK,KAAK;AAAA,EAEvD,MAAM,CAAC,UAA2B,KAAK,OAAO,MAAM,KAAK;AAAA,EAEzD,OAAO,CAAC,UAA2B,KAAK,OAAO,QAAQ,IAAI,KAAK,GAAG;AAAA,EAEnE,aAAa,CAAC,UAA2B,KAAK,OAAO,QAAQ,GAAG,KAAK,GAAG;AAAA,EAExE,WAAW,CAAC,UAA2B,KAAK,OAAO,QAAQ,IAAI,KAAK,EAAE;AAAA,EAEtE,SAAS,CAAC,UAA2B,KAAK,OAAO,YAAY,IAAI,KAAK,GAAG;AAAA,EAEzE,OAAO,CAAC,UAA2B,KAAK,OAAO,KAAK,KAAK;AAAA,EAEzD,YAAY,CAAC,UAA2B,KAAK,OAAO,MAAM,KAAK;AAAA,EAE/D,UAAU,CAAC,UAA2B,KAAK,OAAO,KAAK,KAAK;AAAA,EAE5D,eAAe,CAAC,UAA2B,KAAK,OAAO,MAAM,KAAK;AAAA,EAElE,KAAK,CAAC,OAAuB,KAAK,OAAO,WAAW,EAAE,EAAE;AAAA,EAExD,WAAmB;AACjB,WAAO,GAAG,KAAK,KAAK,IAAI,KAAK,QAAQ;AAAA,EACvC;AAAA,EAEU,SAAS,CAAC,UAAkB,UAA2B,SAAS,MAAM,UAAU,OAAO,MAAM,SAAS,OAAO;AACzH;AAEO,IAAM,gBAAN,cAA4B,OAAO;AAAA,EACxC,YACY,KACA,SACV;AACA,UAAM,IAAI,OAAO,IAAI,QAAQ;AAHnB;AACA;AAAA,EAGZ;AAAA,EAEA,WAAmB;AACjB,WAAO,KAAK,QAAQ,QAAQ,QAAQ,KAAK,IAAI,SAAS,CAAC,EAAE,QAAQ,UAAU,KAAK,IAAI,MAAM,QAAQ,EAAE,QAAQ,SAAS,KAAK,IAAI,QAAQ;AAAA,EACxI;AACF;AAEO,IAAM,cAAN,cAA0B,cAAc;AAAC;","names":[]}
|
|
@@ -1,15 +1,19 @@
|
|
|
1
|
+
import {
|
|
2
|
+
choose
|
|
3
|
+
} from "./chunk-ARZEQQW5.mjs";
|
|
1
4
|
import {
|
|
2
5
|
List,
|
|
3
|
-
choose,
|
|
4
6
|
isList
|
|
5
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-J7XKOXMW.mjs";
|
|
6
8
|
import {
|
|
7
9
|
isA
|
|
8
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-ZHXKBOK2.mjs";
|
|
9
11
|
import {
|
|
10
|
-
isNumber,
|
|
11
12
|
ofConstruct
|
|
12
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-ZPNFXK7Y.mjs";
|
|
14
|
+
import {
|
|
15
|
+
isNumber
|
|
16
|
+
} from "./chunk-DEJ7A5PY.mjs";
|
|
13
17
|
|
|
14
18
|
// src/types/PageList.ts
|
|
15
19
|
var toFilter = (field, value) => toShortFilter(field, field, value);
|
|
@@ -134,4 +138,4 @@ export {
|
|
|
134
138
|
toPageList,
|
|
135
139
|
asPageList
|
|
136
140
|
};
|
|
137
|
-
//# sourceMappingURL=chunk-
|
|
141
|
+
//# sourceMappingURL=chunk-A62OK7XE.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/types/PageList.ts"],"sourcesContent":["import { isList, List } from './List';\nimport { Construct, ofConstruct } from './Constructor';\nimport { isA } from './IsA';\nimport { PlainSort, Sort } from './Sort';\nimport { GetProperty } from './Get';\nimport { ArrayLike } from './Array';\nimport { Optional } from './Types';\nimport { isNumber } from './Is';\nimport { choose } from './Case';\n\nexport type FilterValue = { label?: string; value: any };\nexport type Filter = { label?: string; field: string; shortField?: string; values: FilterValue[] };\n\nexport const toFilter = (field: string, value: any): Filter => toShortFilter(field, field, value);\nexport const toShortFilter = (field: string, shortField: string, value: any): Filter => ({\n field,\n shortField,\n values: [{ value }],\n});\n\nexport type PageOptions = { take?: number; skip?: number; sort?: Sort[]; sorts?: PlainSort; filters?: Filter[] };\nexport type PageListOptions = Exclude<PageOptions, 'sort'> & { total?: number };\n\nexport class PageList<T> extends List<T> {\n private _options?: PageListOptions;\n\n private setPageOptions(options?: PageListOptions): this {\n this._options = options;\n return this;\n }\n get take(): number {\n return this._options?.take ?? 250;\n }\n\n get skip(): number {\n return this._options?.skip ?? 0;\n }\n\n get total(): Optional<number> {\n return this._options?.total;\n }\n\n get sorts(): Optional<PlainSort> {\n return this._options?.sorts;\n }\n\n get filters(): Optional<Filter[]> {\n return this._options?.filters;\n }\n\n get meta(): PageListOptions {\n return {\n take: this.take,\n skip: this.skip,\n total: this.total,\n sorts: this.sorts,\n filters: this.filters,\n };\n }\n\n get options(): Optional<PageListOptions> {\n return this._options;\n }\n\n asc(p: GetProperty<T, any>): PageList<T> {\n return toPageList(super.asc(p), this);\n }\n\n desc(p: GetProperty<T, any>): PageList<T> {\n return toPageList(super.desc(p), this);\n }\n\n diff(others: ArrayLike<T>): PageList<T> {\n return toPageList(super.diff(others), this);\n }\n\n diffByKey(others: ArrayLike<T>, key: keyof T): PageList<T> {\n return toPageList(super.diffByKey(others, key), this);\n }\n\n intersect(others: ArrayLike<T>): PageList<T> {\n return toPageList(super.intersect(others), this);\n }\n\n intersectByKey(others: ArrayLike<T>, key: keyof T): PageList<T> {\n return toPageList(super.intersectByKey(others, key), this);\n }\n\n map<U>(f: (value: T, index: number, array: T[]) => U, params?: unknown): PageList<U> {\n const items = super.map(f, params);\n return toPageList(items, this);\n }\n\n flatMap<U, This = unknown>(f: (this: This, value: T, index: number, array: T[]) => ReadonlyArray<U> | U, params?: This): PageList<U> {\n return toPageList(super.flatMap(f, params), this);\n }\n\n mapDefined<U>(f: (value: T, index: number, array: T[]) => U, params?: unknown): PageList<NonNullable<U>> {\n return toPageList(super.mapDefined(f, params), this);\n }\n\n mapAsync(f: (i: T) => Promise<T>): Promise<PageList<T>> {\n return super.mapAsync(f).then(r => toPageList(r, this));\n }\n\n distinct(): PageList<T> {\n return toPageList(super.distinct(), this);\n }\n\n distinctByKey(key: keyof T): PageList<T> {\n return toPageList(super.distinctByKey(key), this);\n }\n\n filter(p: (value: T, index: number, array: T[]) => unknown, params?: unknown): PageList<T> {\n return toPageList(super.filter(p, params), this);\n }\n\n concat(...items: ConcatArray<T>[]): PageList<T>;\n concat(...items: (T | ConcatArray<T>)[]): PageList<T>;\n concat(...items: (T | ConcatArray<T>)[]): PageList<T> {\n return toPageList(super.concat(...items), this);\n }\n\n reverse(): PageList<T> {\n return toPageList(super.reverse(), this);\n }\n\n splice(start: number, deleteCount?: number): PageList<T>;\n splice(start: number, deleteCount: number, ...items: T[]): PageList<T>;\n splice(start: number, deleteCount: number, ...items: T[]): PageList<T> {\n return toPageList(super.splice(start, deleteCount, ...items), this);\n }\n\n remove(item: T): PageList<T> {\n return toPageList(super.remove(item), this);\n }\n\n replace(key: keyof T, item: T): PageList<T> {\n return toPageList(super.replace(key, item), this);\n }\n\n switch(item: T): PageList<T> {\n return toPageList(super.switch(item), this);\n }\n\n defined(): PageList<NonNullable<T>> {\n return toPageList(super.defined(), this);\n }\n\n orElse(...alt: ArrayLike<T>): Optional<PageList<T>> {\n return toPageList(super.orElse(...alt), this);\n }\n\n slice(start?: number, end?: number): PageList<T> {\n return toPageList(super.slice(start, end), this);\n }\n}\n\nexport const isPageList = <T>(l?: unknown): l is PageList<T> => isList<T>(l) && isA(l, 'total');\n\nexport const toPageList = <T>(items: T[] = [], options?: Omit<PageOptions, 'sort'> & { total?: number }): PageList<T> =>\n (\n choose(items)\n .case(\n i => i.length === 1 && isNumber(i[0]),\n i => new PageList<T>().add(...i)\n )\n .else(i => new PageList<T>(...i)) as any\n ).setPageOptions(options);\n\n/* @deprecated No longer needed as the PageList is now a class that extends from List, use the map function */\nexport const asPageList = <T, U>(c: Construct<T>, items = toPageList<U>()): PageList<T> => items.map(i => ofConstruct(c, i));\n"],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/types/PageList.ts"],"sourcesContent":["import { isList, List } from './List';\nimport { Construct, ofConstruct } from './Constructor';\nimport { isA } from './IsA';\nimport { PlainSort, Sort } from './Sort';\nimport { GetProperty } from './Get';\nimport { ArrayLike } from './Array';\nimport { Optional } from './Types';\nimport { isNumber } from './Is';\nimport { choose } from './Case';\n\nexport type FilterValue = { label?: string; value: any };\nexport type Filter = { label?: string; field: string; shortField?: string; values: FilterValue[] };\n\nexport const toFilter = (field: string, value: any): Filter => toShortFilter(field, field, value);\nexport const toShortFilter = (field: string, shortField: string, value: any): Filter => ({\n field,\n shortField,\n values: [{ value }],\n});\n\nexport type PageOptions = { take?: number; skip?: number; sort?: Sort[]; sorts?: PlainSort; filters?: Filter[] };\nexport type PageListOptions = Exclude<PageOptions, 'sort'> & { total?: number };\n\nexport class PageList<T> extends List<T> {\n private _options?: PageListOptions;\n\n private setPageOptions(options?: PageListOptions): this {\n this._options = options;\n return this;\n }\n get take(): number {\n return this._options?.take ?? 250;\n }\n\n get skip(): number {\n return this._options?.skip ?? 0;\n }\n\n get total(): Optional<number> {\n return this._options?.total;\n }\n\n get sorts(): Optional<PlainSort> {\n return this._options?.sorts;\n }\n\n get filters(): Optional<Filter[]> {\n return this._options?.filters;\n }\n\n get meta(): PageListOptions {\n return {\n take: this.take,\n skip: this.skip,\n total: this.total,\n sorts: this.sorts,\n filters: this.filters,\n };\n }\n\n get options(): Optional<PageListOptions> {\n return this._options;\n }\n\n asc(p: GetProperty<T, any>): PageList<T> {\n return toPageList(super.asc(p), this);\n }\n\n desc(p: GetProperty<T, any>): PageList<T> {\n return toPageList(super.desc(p), this);\n }\n\n diff(others: ArrayLike<T>): PageList<T> {\n return toPageList(super.diff(others), this);\n }\n\n diffByKey(others: ArrayLike<T>, key: keyof T): PageList<T> {\n return toPageList(super.diffByKey(others, key), this);\n }\n\n intersect(others: ArrayLike<T>): PageList<T> {\n return toPageList(super.intersect(others), this);\n }\n\n intersectByKey(others: ArrayLike<T>, key: keyof T): PageList<T> {\n return toPageList(super.intersectByKey(others, key), this);\n }\n\n map<U>(f: (value: T, index: number, array: T[]) => U, params?: unknown): PageList<U> {\n const items = super.map(f, params);\n return toPageList(items, this);\n }\n\n flatMap<U, This = unknown>(f: (this: This, value: T, index: number, array: T[]) => ReadonlyArray<U> | U, params?: This): PageList<U> {\n return toPageList(super.flatMap(f, params), this);\n }\n\n mapDefined<U>(f: (value: T, index: number, array: T[]) => U, params?: unknown): PageList<NonNullable<U>> {\n return toPageList(super.mapDefined(f, params), this);\n }\n\n mapAsync(f: (i: T) => Promise<T>): Promise<PageList<T>> {\n return super.mapAsync(f).then(r => toPageList(r, this));\n }\n\n distinct(): PageList<T> {\n return toPageList(super.distinct(), this);\n }\n\n distinctByKey(key: keyof T): PageList<T> {\n return toPageList(super.distinctByKey(key), this);\n }\n\n filter(p: (value: T, index: number, array: T[]) => unknown, params?: unknown): PageList<T> {\n return toPageList(super.filter(p, params), this);\n }\n\n concat(...items: ConcatArray<T>[]): PageList<T>;\n concat(...items: (T | ConcatArray<T>)[]): PageList<T>;\n concat(...items: (T | ConcatArray<T>)[]): PageList<T> {\n return toPageList(super.concat(...items), this);\n }\n\n reverse(): PageList<T> {\n return toPageList(super.reverse(), this);\n }\n\n splice(start: number, deleteCount?: number): PageList<T>;\n splice(start: number, deleteCount: number, ...items: T[]): PageList<T>;\n splice(start: number, deleteCount: number, ...items: T[]): PageList<T> {\n return toPageList(super.splice(start, deleteCount, ...items), this);\n }\n\n remove(item: T): PageList<T> {\n return toPageList(super.remove(item), this);\n }\n\n replace(key: keyof T, item: T): PageList<T> {\n return toPageList(super.replace(key, item), this);\n }\n\n switch(item: T): PageList<T> {\n return toPageList(super.switch(item), this);\n }\n\n defined(): PageList<NonNullable<T>> {\n return toPageList(super.defined(), this);\n }\n\n orElse(...alt: ArrayLike<T>): Optional<PageList<T>> {\n return toPageList(super.orElse(...alt), this);\n }\n\n slice(start?: number, end?: number): PageList<T> {\n return toPageList(super.slice(start, end), this);\n }\n}\n\nexport const isPageList = <T>(l?: unknown): l is PageList<T> => isList<T>(l) && isA(l, 'total');\n\nexport const toPageList = <T>(items: T[] = [], options?: Omit<PageOptions, 'sort'> & { total?: number }): PageList<T> =>\n (\n choose(items)\n .case(\n i => i.length === 1 && isNumber(i[0]),\n i => new PageList<T>().add(...i)\n )\n .else(i => new PageList<T>(...i)) as any\n ).setPageOptions(options);\n\n/* @deprecated No longer needed as the PageList is now a class that extends from List, use the map function */\nexport const asPageList = <T, U>(c: Construct<T>, items = toPageList<U>()): PageList<T> => items.map(i => ofConstruct(c, i));\n"],"mappings":"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","names":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
asString
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-45GNHDKA.mjs";
|
|
4
4
|
|
|
5
5
|
// src/utils/Convert.ts
|
|
6
6
|
var Convert = class {
|
|
@@ -46,4 +46,4 @@ export {
|
|
|
46
46
|
Convert,
|
|
47
47
|
convert
|
|
48
48
|
};
|
|
49
|
-
//# sourceMappingURL=chunk-
|
|
49
|
+
//# sourceMappingURL=chunk-APYISY5K.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/utils/Convert.ts"],"sourcesContent":["import { asString } from '../types/Text';\n\nexport class Convert<From = unknown, To = unknown> {\n constructor(\n public readonly from: (f: From) => To,\n public readonly to: (t: To) => From\n ) {}\n}\n\nexport const convert = {\n default: new Convert<any, any>(\n a => a,\n a => a\n ),\n ignore: new Convert<any, any>(\n () => undefined,\n () => undefined\n ),\n toBool: {\n fromNumber: new Convert<boolean, number>(\n b => (b ? 1 : 0),\n n => n !== 0\n ),\n fromString: new Convert<boolean, string>(\n b => (b ? 'true' : 'false'),\n s => s === 'true'\n ),\n },\n toDate: {\n fromString: new Convert<string, string>(\n s => new Date(s).toISOString(),\n s => s\n ),\n },\n toNumber: {\n fromString: new Convert<number, string>(\n n => asString(n),\n s => parseInt(s)\n ),\n },\n};\n"],"mappings":";;;;;AAEO,IAAM,UAAN,MAA4C;AAAA,EACjD,YACkB,MACA,IAChB;AAFgB;AACA;AAAA,EACf;AACL;AAEO,IAAM,UAAU;AAAA,EACrB,SAAS,IAAI;AAAA,IACX,OAAK;AAAA,IACL,OAAK;AAAA,EACP;AAAA,EACA,QAAQ,IAAI;AAAA,IACV,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AAAA,EACA,QAAQ;AAAA,IACN,YAAY,IAAI;AAAA,MACd,OAAM,IAAI,IAAI;AAAA,MACd,OAAK,MAAM;AAAA,IACb;AAAA,IACA,YAAY,IAAI;AAAA,MACd,OAAM,IAAI,SAAS;AAAA,MACnB,OAAK,MAAM;AAAA,IACb;AAAA,EACF;AAAA,EACA,QAAQ;AAAA,IACN,YAAY,IAAI;AAAA,MACd,OAAK,IAAI,KAAK,CAAC,EAAE,YAAY;AAAA,MAC7B,OAAK;AAAA,IACP;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR,YAAY,IAAI;AAAA,MACd,OAAK,SAAS,CAAC;AAAA,MACf,OAAK,SAAS,CAAC;AAAA,IACjB;AAAA,EACF;AACF;","names":[]}
|