@temboplus/afloat 0.1.81 → 0.2.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +246 -42
- package/dist/index.cjs.js +2 -0
- package/dist/index.cjs.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.esm.js +2 -0
- package/dist/index.esm.js.map +1 -0
- package/dist/lib/api/base-repository.d.ts +177 -0
- package/dist/lib/api/index.d.ts +1 -0
- package/{esm/src/errors/api_error.d.ts → dist/lib/error/error.api.d.ts} +0 -1
- package/{script/npm/src/src/errors/permission_error.d.ts → dist/lib/error/error.permission.d.ts} +1 -2
- package/dist/lib/error/error.utils.d.ts +22 -0
- package/dist/lib/error/index.d.ts +3 -0
- package/dist/lib/query/index.d.ts +4 -0
- package/dist/lib/query/pagination/pagination.d.ts +73 -0
- package/dist/lib/query/pagination/pagination.schemas.d.ts +83 -0
- package/dist/lib/query/query.builder.d.ts +75 -0
- package/dist/lib/query/query.types.d.ts +36 -0
- package/{esm/src/features/auth/contract.d.ts → dist/modules/auth/auth.contract.d.ts} +16 -19
- package/dist/modules/auth/auth.repository.d.ts +83 -0
- package/dist/modules/auth/company-membership.model.d.ts +171 -0
- package/dist/modules/auth/index.d.ts +3 -0
- package/dist/modules/auth/user.model.d.ts +363 -0
- package/dist/modules/beneficiary/beneficiary-info.model.d.ts +178 -0
- package/dist/modules/beneficiary/beneficiary-input-handler.d.ts +16 -0
- package/dist/modules/beneficiary/beneficiary.api-contract.d.ts +203 -0
- package/dist/modules/beneficiary/beneficiary.dtos.d.ts +84 -0
- package/dist/modules/beneficiary/beneficiary.model.d.ts +441 -0
- package/dist/modules/beneficiary/beneficiary.repository.d.ts +116 -0
- package/dist/modules/beneficiary/index.d.ts +6 -0
- package/dist/modules/login/index.d.ts +4 -0
- package/dist/modules/login/login.api-contract.d.ts +51 -0
- package/dist/modules/login/login.dtos.d.ts +85 -0
- package/dist/modules/login/login.model.d.ts +168 -0
- package/dist/modules/login/login.repository.d.ts +58 -0
- package/{esm/src/models/permission.d.ts → dist/modules/login/permission.type.d.ts} +9 -10
- package/dist/modules/payout/index.d.ts +5 -0
- package/dist/modules/payout/payout-channel-handler.d.ts +82 -0
- package/{esm/src/features/payout/contract.d.ts → dist/modules/payout/payout.api-contract.d.ts} +350 -207
- package/dist/modules/payout/payout.dtos.d.ts +607 -0
- package/dist/modules/payout/payout.model.d.ts +383 -0
- package/dist/modules/payout/payout.query.d.ts +134 -0
- package/dist/modules/payout/payout.repository.d.ts +204 -0
- package/dist/modules/profile/index.d.ts +3 -0
- package/{script/npm/src/src/features/auth/profile/contract.d.ts → dist/modules/profile/profile.api-contract.d.ts} +8 -6
- package/dist/modules/profile/profile.dtos.d.ts +80 -0
- package/{script/npm/src/src/models/user/profile.d.ts → dist/modules/profile/profile.model.d.ts} +81 -52
- package/dist/modules/profile/profile.repository.d.ts +56 -0
- package/dist/modules/team-member/index.d.ts +4 -0
- package/dist/modules/team-member/role.model.d.ts +61 -0
- package/{esm/src/features/admin/contract.d.ts → dist/modules/team-member/team-member.contract.d.ts} +229 -154
- package/dist/modules/team-member/team-member.dtos.d.ts +261 -0
- package/dist/modules/team-member/team-member.model.d.ts +237 -0
- package/dist/modules/team-member/team-member.repository.d.ts +179 -0
- package/dist/modules/wallet/index.d.ts +6 -0
- package/dist/modules/wallet/narration.model.d.ts +225 -0
- package/dist/modules/wallet/statement-entry.model.d.ts +299 -0
- package/{script/npm/src/src/features/wallet/contract.d.ts → dist/modules/wallet/wallet.contract.d.ts} +17 -15
- package/dist/modules/wallet/wallet.dtos.d.ts +204 -0
- package/{esm/src/models/wallet/wallet.d.ts → dist/modules/wallet/wallet.model.d.ts} +34 -40
- package/dist/modules/wallet/wallet.query.d.ts +95 -0
- package/dist/modules/wallet/wallet.repository.d.ts +205 -0
- package/dist/modules/wallet/wallet.utils.d.ts +17 -0
- package/package.json +49 -23
- package/LICENSE +0 -7
- package/esm/mod.d.ts +0 -8
- package/esm/mod.d.ts.map +0 -1
- package/esm/mod.js +0 -7
- package/esm/package.json +0 -3
- package/esm/src/errors/api_error.d.ts.map +0 -1
- package/esm/src/errors/api_error.js +0 -90
- package/esm/src/errors/index.d.ts +0 -3
- package/esm/src/errors/index.d.ts.map +0 -1
- package/esm/src/errors/index.js +0 -2
- package/esm/src/errors/permission_error.d.ts +0 -48
- package/esm/src/errors/permission_error.d.ts.map +0 -1
- package/esm/src/errors/permission_error.js +0 -70
- package/esm/src/features/admin/contract.d.ts.map +0 -1
- package/esm/src/features/admin/contract.js +0 -210
- package/esm/src/features/admin/index.d.ts +0 -4
- package/esm/src/features/admin/index.d.ts.map +0 -1
- package/esm/src/features/admin/index.js +0 -3
- package/esm/src/features/admin/repository.d.ts +0 -114
- package/esm/src/features/admin/repository.d.ts.map +0 -1
- package/esm/src/features/admin/repository.js +0 -248
- package/esm/src/features/admin/schemas.d.ts +0 -146
- package/esm/src/features/admin/schemas.d.ts.map +0 -1
- package/esm/src/features/admin/schemas.js +0 -206
- package/esm/src/features/auth/access/contract.d.ts +0 -14
- package/esm/src/features/auth/access/contract.d.ts.map +0 -1
- package/esm/src/features/auth/access/contract.js +0 -14
- package/esm/src/features/auth/access/repository.d.ts +0 -11
- package/esm/src/features/auth/access/repository.d.ts.map +0 -1
- package/esm/src/features/auth/access/repository.js +0 -25
- package/esm/src/features/auth/contract.d.ts.map +0 -1
- package/esm/src/features/auth/contract.js +0 -43
- package/esm/src/features/auth/identity/contract.d.ts +0 -23
- package/esm/src/features/auth/identity/contract.d.ts.map +0 -1
- package/esm/src/features/auth/identity/contract.js +0 -17
- package/esm/src/features/auth/identity/repository.d.ts +0 -22
- package/esm/src/features/auth/identity/repository.d.ts.map +0 -1
- package/esm/src/features/auth/identity/repository.js +0 -30
- package/esm/src/features/auth/index.d.ts +0 -6
- package/esm/src/features/auth/index.d.ts.map +0 -1
- package/esm/src/features/auth/index.js +0 -5
- package/esm/src/features/auth/manager.d.ts +0 -105
- package/esm/src/features/auth/manager.d.ts.map +0 -1
- package/esm/src/features/auth/manager.js +0 -181
- package/esm/src/features/auth/profile/contract.d.ts +0 -37
- package/esm/src/features/auth/profile/contract.d.ts.map +0 -1
- package/esm/src/features/auth/profile/contract.js +0 -14
- package/esm/src/features/auth/profile/repository.d.ts +0 -11
- package/esm/src/features/auth/profile/repository.d.ts.map +0 -1
- package/esm/src/features/auth/profile/repository.js +0 -25
- package/esm/src/features/auth/repository.d.ts +0 -30
- package/esm/src/features/auth/repository.d.ts.map +0 -1
- package/esm/src/features/auth/repository.js +0 -69
- package/esm/src/features/auth/storage/client_store.d.ts +0 -30
- package/esm/src/features/auth/storage/client_store.d.ts.map +0 -1
- package/esm/src/features/auth/storage/client_store.js +0 -46
- package/esm/src/features/auth/storage/client_token_handler.d.ts +0 -32
- package/esm/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
- package/esm/src/features/auth/storage/client_token_handler.js +0 -36
- package/esm/src/features/auth/storage/server_store.d.ts +0 -24
- package/esm/src/features/auth/storage/server_store.d.ts.map +0 -1
- package/esm/src/features/auth/storage/server_store.js +0 -34
- package/esm/src/features/auth/storage/server_token_handler.d.ts +0 -36
- package/esm/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
- package/esm/src/features/auth/storage/server_token_handler.js +0 -115
- package/esm/src/features/auth/storage/types.d.ts +0 -42
- package/esm/src/features/auth/storage/types.d.ts.map +0 -1
- package/esm/src/features/auth/storage/types.js +0 -1
- package/esm/src/features/contact/contract.d.ts +0 -170
- package/esm/src/features/contact/contract.d.ts.map +0 -1
- package/esm/src/features/contact/contract.js +0 -49
- package/esm/src/features/contact/index.d.ts +0 -2
- package/esm/src/features/contact/index.d.ts.map +0 -1
- package/esm/src/features/contact/index.js +0 -1
- package/esm/src/features/contact/repository.d.ts +0 -58
- package/esm/src/features/contact/repository.d.ts.map +0 -1
- package/esm/src/features/contact/repository.js +0 -108
- package/esm/src/features/payout/contract.d.ts.map +0 -1
- package/esm/src/features/payout/contract.js +0 -75
- package/esm/src/features/payout/index.d.ts +0 -2
- package/esm/src/features/payout/index.d.ts.map +0 -1
- package/esm/src/features/payout/index.js +0 -1
- package/esm/src/features/payout/repository.d.ts +0 -67
- package/esm/src/features/payout/repository.d.ts.map +0 -1
- package/esm/src/features/payout/repository.js +0 -179
- package/esm/src/features/wallet/contract.d.ts +0 -137
- package/esm/src/features/wallet/contract.d.ts.map +0 -1
- package/esm/src/features/wallet/contract.js +0 -38
- package/esm/src/features/wallet/index.d.ts +0 -2
- package/esm/src/features/wallet/index.d.ts.map +0 -1
- package/esm/src/features/wallet/index.js +0 -1
- package/esm/src/features/wallet/repository.d.ts +0 -57
- package/esm/src/features/wallet/repository.d.ts.map +0 -1
- package/esm/src/features/wallet/repository.js +0 -93
- package/esm/src/models/contact/derivatives/contact.d.ts +0 -172
- package/esm/src/models/contact/derivatives/contact.d.ts.map +0 -1
- package/esm/src/models/contact/derivatives/contact.js +0 -266
- package/esm/src/models/contact/derivatives/contact_info.d.ts +0 -188
- package/esm/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
- package/esm/src/models/contact/derivatives/contact_info.js +0 -255
- package/esm/src/models/contact/index.d.ts +0 -5
- package/esm/src/models/contact/index.d.ts.map +0 -1
- package/esm/src/models/contact/index.js +0 -4
- package/esm/src/models/contact/schemas.d.ts +0 -66
- package/esm/src/models/contact/schemas.d.ts.map +0 -1
- package/esm/src/models/contact/schemas.js +0 -64
- package/esm/src/models/contact/validation.d.ts +0 -37
- package/esm/src/models/contact/validation.d.ts.map +0 -1
- package/esm/src/models/contact/validation.js +0 -146
- package/esm/src/models/index.d.ts +0 -7
- package/esm/src/models/index.d.ts.map +0 -1
- package/esm/src/models/index.js +0 -6
- package/esm/src/models/payout/api.d.ts +0 -29
- package/esm/src/models/payout/api.d.ts.map +0 -1
- package/esm/src/models/payout/api.js +0 -1
- package/esm/src/models/payout/channel.d.ts +0 -58
- package/esm/src/models/payout/channel.d.ts.map +0 -1
- package/esm/src/models/payout/channel.js +0 -53
- package/esm/src/models/payout/derivatives/payout.d.ts +0 -158
- package/esm/src/models/payout/derivatives/payout.d.ts.map +0 -1
- package/esm/src/models/payout/derivatives/payout.js +0 -271
- package/esm/src/models/payout/index.d.ts +0 -7
- package/esm/src/models/payout/index.d.ts.map +0 -1
- package/esm/src/models/payout/index.js +0 -6
- package/esm/src/models/payout/narration.d.ts +0 -164
- package/esm/src/models/payout/narration.d.ts.map +0 -1
- package/esm/src/models/payout/narration.js +0 -308
- package/esm/src/models/payout/schemas.d.ts +0 -156
- package/esm/src/models/payout/schemas.d.ts.map +0 -1
- package/esm/src/models/payout/schemas.js +0 -105
- package/esm/src/models/payout/status.d.ts +0 -33
- package/esm/src/models/payout/status.d.ts.map +0 -1
- package/esm/src/models/payout/status.js +0 -34
- package/esm/src/models/permission.d.ts.map +0 -1
- package/esm/src/models/permission.js +0 -50
- package/esm/src/models/role.d.ts +0 -21
- package/esm/src/models/role.d.ts.map +0 -1
- package/esm/src/models/role.js +0 -73
- package/esm/src/models/user/authenticated-user.d.ts +0 -77
- package/esm/src/models/user/authenticated-user.d.ts.map +0 -1
- package/esm/src/models/user/authenticated-user.js +0 -226
- package/esm/src/models/user/index.d.ts +0 -4
- package/esm/src/models/user/index.d.ts.map +0 -1
- package/esm/src/models/user/index.js +0 -3
- package/esm/src/models/user/managed-user.d.ts +0 -108
- package/esm/src/models/user/managed-user.d.ts.map +0 -1
- package/esm/src/models/user/managed-user.js +0 -255
- package/esm/src/models/user/profile.d.ts +0 -161
- package/esm/src/models/user/profile.d.ts.map +0 -1
- package/esm/src/models/user/profile.js +0 -334
- package/esm/src/models/wallet/index.d.ts +0 -4
- package/esm/src/models/wallet/index.d.ts.map +0 -1
- package/esm/src/models/wallet/index.js +0 -3
- package/esm/src/models/wallet/schemas.d.ts +0 -95
- package/esm/src/models/wallet/schemas.d.ts.map +0 -1
- package/esm/src/models/wallet/schemas.js +0 -35
- package/esm/src/models/wallet/statement_entry.d.ts +0 -160
- package/esm/src/models/wallet/statement_entry.d.ts.map +0 -1
- package/esm/src/models/wallet/statement_entry.js +0 -255
- package/esm/src/models/wallet/wallet.d.ts.map +0 -1
- package/esm/src/models/wallet/wallet.js +0 -279
- package/esm/src/shared/base_repository.d.ts +0 -80
- package/esm/src/shared/base_repository.d.ts.map +0 -1
- package/esm/src/shared/base_repository.js +0 -153
- package/esm/src/shared/common_responses.d.ts +0 -13
- package/esm/src/shared/common_responses.d.ts.map +0 -1
- package/esm/src/shared/common_responses.js +0 -10
- package/esm/src/shared/index.d.ts +0 -3
- package/esm/src/shared/index.d.ts.map +0 -1
- package/esm/src/shared/index.js +0 -2
- package/esm/src/shared/token_required_repository.d.ts +0 -78
- package/esm/src/shared/token_required_repository.d.ts.map +0 -1
- package/esm/src/shared/token_required_repository.js +0 -128
- package/script/mod.d.ts +0 -8
- package/script/mod.d.ts.map +0 -1
- package/script/mod.js +0 -23
- package/script/npm/src/mod.d.ts +0 -8
- package/script/npm/src/mod.d.ts.map +0 -1
- package/script/npm/src/mod.js +0 -23
- package/script/npm/src/src/errors/api_error.d.ts +0 -63
- package/script/npm/src/src/errors/api_error.d.ts.map +0 -1
- package/script/npm/src/src/errors/api_error.js +0 -94
- package/script/npm/src/src/errors/index.d.ts +0 -3
- package/script/npm/src/src/errors/index.d.ts.map +0 -1
- package/script/npm/src/src/errors/index.js +0 -18
- package/script/npm/src/src/errors/permission_error.d.ts.map +0 -1
- package/script/npm/src/src/errors/permission_error.js +0 -74
- package/script/npm/src/src/features/admin/contract.d.ts +0 -842
- package/script/npm/src/src/features/admin/contract.d.ts.map +0 -1
- package/script/npm/src/src/features/admin/contract.js +0 -213
- package/script/npm/src/src/features/admin/index.d.ts +0 -4
- package/script/npm/src/src/features/admin/index.d.ts.map +0 -1
- package/script/npm/src/src/features/admin/index.js +0 -19
- package/script/npm/src/src/features/admin/repository.d.ts +0 -114
- package/script/npm/src/src/features/admin/repository.d.ts.map +0 -1
- package/script/npm/src/src/features/admin/repository.js +0 -252
- package/script/npm/src/src/features/admin/schemas.d.ts +0 -146
- package/script/npm/src/src/features/admin/schemas.d.ts.map +0 -1
- package/script/npm/src/src/features/admin/schemas.js +0 -209
- package/script/npm/src/src/features/auth/access/contract.d.ts +0 -14
- package/script/npm/src/src/features/auth/access/contract.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/access/contract.js +0 -17
- package/script/npm/src/src/features/auth/access/repository.d.ts +0 -11
- package/script/npm/src/src/features/auth/access/repository.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/access/repository.js +0 -29
- package/script/npm/src/src/features/auth/contract.d.ts +0 -112
- package/script/npm/src/src/features/auth/contract.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/contract.js +0 -46
- package/script/npm/src/src/features/auth/identity/contract.d.ts +0 -23
- package/script/npm/src/src/features/auth/identity/contract.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/identity/contract.js +0 -20
- package/script/npm/src/src/features/auth/identity/repository.d.ts +0 -22
- package/script/npm/src/src/features/auth/identity/repository.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/identity/repository.js +0 -34
- package/script/npm/src/src/features/auth/index.d.ts +0 -6
- package/script/npm/src/src/features/auth/index.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/index.js +0 -21
- package/script/npm/src/src/features/auth/manager.d.ts +0 -105
- package/script/npm/src/src/features/auth/manager.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/manager.js +0 -185
- package/script/npm/src/src/features/auth/profile/contract.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/profile/contract.js +0 -17
- package/script/npm/src/src/features/auth/profile/repository.d.ts +0 -11
- package/script/npm/src/src/features/auth/profile/repository.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/profile/repository.js +0 -29
- package/script/npm/src/src/features/auth/repository.d.ts +0 -30
- package/script/npm/src/src/features/auth/repository.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/repository.js +0 -73
- package/script/npm/src/src/features/auth/storage/client_store.d.ts +0 -30
- package/script/npm/src/src/features/auth/storage/client_store.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/storage/client_store.js +0 -51
- package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts +0 -32
- package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/storage/client_token_handler.js +0 -40
- package/script/npm/src/src/features/auth/storage/server_store.d.ts +0 -24
- package/script/npm/src/src/features/auth/storage/server_store.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/storage/server_store.js +0 -38
- package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts +0 -36
- package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/storage/server_token_handler.js +0 -119
- package/script/npm/src/src/features/auth/storage/types.d.ts +0 -42
- package/script/npm/src/src/features/auth/storage/types.d.ts.map +0 -1
- package/script/npm/src/src/features/auth/storage/types.js +0 -2
- package/script/npm/src/src/features/contact/contract.d.ts +0 -170
- package/script/npm/src/src/features/contact/contract.d.ts.map +0 -1
- package/script/npm/src/src/features/contact/contract.js +0 -52
- package/script/npm/src/src/features/contact/index.d.ts +0 -2
- package/script/npm/src/src/features/contact/index.d.ts.map +0 -1
- package/script/npm/src/src/features/contact/index.js +0 -17
- package/script/npm/src/src/features/contact/repository.d.ts +0 -58
- package/script/npm/src/src/features/contact/repository.d.ts.map +0 -1
- package/script/npm/src/src/features/contact/repository.js +0 -112
- package/script/npm/src/src/features/payout/contract.d.ts +0 -623
- package/script/npm/src/src/features/payout/contract.d.ts.map +0 -1
- package/script/npm/src/src/features/payout/contract.js +0 -78
- package/script/npm/src/src/features/payout/index.d.ts +0 -2
- package/script/npm/src/src/features/payout/index.d.ts.map +0 -1
- package/script/npm/src/src/features/payout/index.js +0 -17
- package/script/npm/src/src/features/payout/repository.d.ts +0 -67
- package/script/npm/src/src/features/payout/repository.d.ts.map +0 -1
- package/script/npm/src/src/features/payout/repository.js +0 -183
- package/script/npm/src/src/features/wallet/contract.d.ts.map +0 -1
- package/script/npm/src/src/features/wallet/contract.js +0 -41
- package/script/npm/src/src/features/wallet/index.d.ts +0 -2
- package/script/npm/src/src/features/wallet/index.d.ts.map +0 -1
- package/script/npm/src/src/features/wallet/index.js +0 -17
- package/script/npm/src/src/features/wallet/repository.d.ts +0 -57
- package/script/npm/src/src/features/wallet/repository.d.ts.map +0 -1
- package/script/npm/src/src/features/wallet/repository.js +0 -97
- package/script/npm/src/src/models/contact/derivatives/contact.d.ts +0 -172
- package/script/npm/src/src/models/contact/derivatives/contact.d.ts.map +0 -1
- package/script/npm/src/src/models/contact/derivatives/contact.js +0 -270
- package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts +0 -188
- package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts.map +0 -1
- package/script/npm/src/src/models/contact/derivatives/contact_info.js +0 -260
- package/script/npm/src/src/models/contact/index.d.ts +0 -5
- package/script/npm/src/src/models/contact/index.d.ts.map +0 -1
- package/script/npm/src/src/models/contact/index.js +0 -20
- package/script/npm/src/src/models/contact/schemas.d.ts +0 -66
- package/script/npm/src/src/models/contact/schemas.d.ts.map +0 -1
- package/script/npm/src/src/models/contact/schemas.js +0 -67
- package/script/npm/src/src/models/contact/validation.d.ts +0 -37
- package/script/npm/src/src/models/contact/validation.d.ts.map +0 -1
- package/script/npm/src/src/models/contact/validation.js +0 -153
- package/script/npm/src/src/models/index.d.ts +0 -7
- package/script/npm/src/src/models/index.d.ts.map +0 -1
- package/script/npm/src/src/models/index.js +0 -22
- package/script/npm/src/src/models/payout/api.d.ts +0 -29
- package/script/npm/src/src/models/payout/api.d.ts.map +0 -1
- package/script/npm/src/src/models/payout/api.js +0 -2
- package/script/npm/src/src/models/payout/channel.d.ts +0 -58
- package/script/npm/src/src/models/payout/channel.d.ts.map +0 -1
- package/script/npm/src/src/models/payout/channel.js +0 -56
- package/script/npm/src/src/models/payout/derivatives/payout.d.ts +0 -158
- package/script/npm/src/src/models/payout/derivatives/payout.d.ts.map +0 -1
- package/script/npm/src/src/models/payout/derivatives/payout.js +0 -275
- package/script/npm/src/src/models/payout/index.d.ts +0 -7
- package/script/npm/src/src/models/payout/index.d.ts.map +0 -1
- package/script/npm/src/src/models/payout/index.js +0 -22
- package/script/npm/src/src/models/payout/narration.d.ts +0 -164
- package/script/npm/src/src/models/payout/narration.d.ts.map +0 -1
- package/script/npm/src/src/models/payout/narration.js +0 -312
- package/script/npm/src/src/models/payout/schemas.d.ts +0 -156
- package/script/npm/src/src/models/payout/schemas.d.ts.map +0 -1
- package/script/npm/src/src/models/payout/schemas.js +0 -108
- package/script/npm/src/src/models/payout/status.d.ts +0 -33
- package/script/npm/src/src/models/payout/status.d.ts.map +0 -1
- package/script/npm/src/src/models/payout/status.js +0 -37
- package/script/npm/src/src/models/permission.d.ts +0 -55
- package/script/npm/src/src/models/permission.d.ts.map +0 -1
- package/script/npm/src/src/models/permission.js +0 -53
- package/script/npm/src/src/models/role.d.ts +0 -21
- package/script/npm/src/src/models/role.d.ts.map +0 -1
- package/script/npm/src/src/models/role.js +0 -77
- package/script/npm/src/src/models/user/authenticated-user.d.ts +0 -77
- package/script/npm/src/src/models/user/authenticated-user.d.ts.map +0 -1
- package/script/npm/src/src/models/user/authenticated-user.js +0 -230
- package/script/npm/src/src/models/user/index.d.ts +0 -4
- package/script/npm/src/src/models/user/index.d.ts.map +0 -1
- package/script/npm/src/src/models/user/index.js +0 -19
- package/script/npm/src/src/models/user/managed-user.d.ts +0 -108
- package/script/npm/src/src/models/user/managed-user.d.ts.map +0 -1
- package/script/npm/src/src/models/user/managed-user.js +0 -260
- package/script/npm/src/src/models/user/profile.d.ts.map +0 -1
- package/script/npm/src/src/models/user/profile.js +0 -338
- package/script/npm/src/src/models/wallet/index.d.ts +0 -4
- package/script/npm/src/src/models/wallet/index.d.ts.map +0 -1
- package/script/npm/src/src/models/wallet/index.js +0 -19
- package/script/npm/src/src/models/wallet/schemas.d.ts +0 -95
- package/script/npm/src/src/models/wallet/schemas.d.ts.map +0 -1
- package/script/npm/src/src/models/wallet/schemas.js +0 -38
- package/script/npm/src/src/models/wallet/statement_entry.d.ts +0 -160
- package/script/npm/src/src/models/wallet/statement_entry.d.ts.map +0 -1
- package/script/npm/src/src/models/wallet/statement_entry.js +0 -259
- package/script/npm/src/src/models/wallet/wallet.d.ts +0 -147
- package/script/npm/src/src/models/wallet/wallet.d.ts.map +0 -1
- package/script/npm/src/src/models/wallet/wallet.js +0 -283
- package/script/npm/src/src/shared/base_repository.d.ts +0 -80
- package/script/npm/src/src/shared/base_repository.d.ts.map +0 -1
- package/script/npm/src/src/shared/base_repository.js +0 -157
- package/script/npm/src/src/shared/common_responses.d.ts +0 -13
- package/script/npm/src/src/shared/common_responses.d.ts.map +0 -1
- package/script/npm/src/src/shared/common_responses.js +0 -13
- package/script/npm/src/src/shared/index.d.ts +0 -3
- package/script/npm/src/src/shared/index.d.ts.map +0 -1
- package/script/npm/src/src/shared/index.js +0 -18
- package/script/npm/src/src/shared/token_required_repository.d.ts +0 -78
- package/script/npm/src/src/shared/token_required_repository.d.ts.map +0 -1
- package/script/npm/src/src/shared/token_required_repository.js +0 -132
- package/script/package.json +0 -3
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
// ====================== Custom Schema Definitions ====================== //
|
|
3
|
-
/**
|
|
4
|
-
* Custom password schema that enforces strong password requirements.
|
|
5
|
-
* Password must contain:
|
|
6
|
-
* - At least 8 characters
|
|
7
|
-
* - At least one uppercase letter
|
|
8
|
-
* - At least one lowercase letter
|
|
9
|
-
* - At least one number
|
|
10
|
-
* - At least one special character (!@#$%^&*()_+-=[]{}|;:,.<>?)
|
|
11
|
-
* - No common passwords or sequential patterns
|
|
12
|
-
*/
|
|
13
|
-
const passwordSchema = z
|
|
14
|
-
.string()
|
|
15
|
-
.min(8, "Password must be at least 8 characters long")
|
|
16
|
-
.max(128, "Password must not exceed 128 characters")
|
|
17
|
-
.regex(/[A-Z]/, "Password must contain at least one uppercase letter")
|
|
18
|
-
.regex(/[a-z]/, "Password must contain at least one lowercase letter")
|
|
19
|
-
.regex(/[0-9]/, "Password must contain at least one number")
|
|
20
|
-
.regex(/[!@#$%^&*()_+\-=\[\]{}|;:,.<>?]/, "Password must contain at least one special character (!@#$%^&*()_+-=[]{}|;:,.<>?)")
|
|
21
|
-
.refine((password) => {
|
|
22
|
-
// Check for common weak patterns
|
|
23
|
-
const weakPatterns = [
|
|
24
|
-
/(.)\1{2,}/, // Three or more consecutive identical characters
|
|
25
|
-
/123456|654321|abcdef|qwerty|password|admin|user/i, // Common passwords
|
|
26
|
-
/^[0-9]+$/, // Only numbers
|
|
27
|
-
/^[a-zA-Z]+$/, // Only letters
|
|
28
|
-
];
|
|
29
|
-
return !weakPatterns.some((pattern) => pattern.test(password));
|
|
30
|
-
}, "Password contains weak patterns. Avoid repeated characters, common words, or simple sequences")
|
|
31
|
-
.refine((password) => {
|
|
32
|
-
// Check for sequential characters (e.g., "abcd", "1234")
|
|
33
|
-
const hasSequential = /(?:abc|bcd|cde|def|efg|fgh|ghi|hij|ijk|jkl|klm|lmn|mno|nop|opq|pqr|qrs|rst|stu|tuv|uvw|vwx|wxy|xyz|012|123|234|345|456|567|678|789)/i
|
|
34
|
-
.test(password);
|
|
35
|
-
return !hasSequential;
|
|
36
|
-
}, "Password should not contain sequential characters")
|
|
37
|
-
.refine((password) => {
|
|
38
|
-
// Check for keyboard patterns (e.g., "qwer", "asdf")
|
|
39
|
-
const keyboardPatterns = /(?:qwer|wert|erty|rtyu|tyui|yuio|uiop|asdf|sdfg|dfgh|fghj|ghjk|hjkl|zxcv|xcvb|cvbn|vbnm)/i;
|
|
40
|
-
return !keyboardPatterns.test(password);
|
|
41
|
-
}, "Password should not contain keyboard patterns");
|
|
42
|
-
// ====================== Schema Definitions ====================== //
|
|
43
|
-
/**
|
|
44
|
-
* Schema definition for a role.
|
|
45
|
-
* Represents a user role with permissions in the system.
|
|
46
|
-
*
|
|
47
|
-
* @property {string} id - Unique identifier for the role
|
|
48
|
-
* @property {string} name - Display name of the role
|
|
49
|
-
* @property {string} description - Optional description of the role
|
|
50
|
-
* @property {string[]} access - Array of permission strings
|
|
51
|
-
* @property {string} createdAt - ISO datetime string of role creation
|
|
52
|
-
* @property {string} updatedAt - ISO datetime string of last role update
|
|
53
|
-
*/
|
|
54
|
-
const roleSchema = z.object({
|
|
55
|
-
id: z.string().min(1),
|
|
56
|
-
name: z.string().min(1, "Role name is required"),
|
|
57
|
-
description: z.string().optional(),
|
|
58
|
-
access: z.array(z.string()),
|
|
59
|
-
createdAt: z.string().datetime("Invalid creation timestamp"),
|
|
60
|
-
updatedAt: z.string().datetime("Invalid update timestamp"),
|
|
61
|
-
});
|
|
62
|
-
/**
|
|
63
|
-
* Schema definition for a managed user account.
|
|
64
|
-
* Represents a user account from the admin management perspective.
|
|
65
|
-
*
|
|
66
|
-
* @property {string} id - Unique identifier for the user account
|
|
67
|
-
* @property {string} name - Full name of the user
|
|
68
|
-
* @property {string} identity - User's email address or phone number
|
|
69
|
-
* @property {string} type - Type of user account
|
|
70
|
-
* @property {string} profileId - ID of the associated profile
|
|
71
|
-
* @property {string} roleId - ID of the assigned role
|
|
72
|
-
* @property {boolean} resetPassword - Whether user must reset password on next login
|
|
73
|
-
* @property {boolean} isActive - Whether the account is currently active
|
|
74
|
-
* @property {Role} role - Full role object with permissions
|
|
75
|
-
* @property {string} createdAt - ISO datetime string of account creation
|
|
76
|
-
* @property {string} updatedAt - ISO datetime string of last account update
|
|
77
|
-
*/
|
|
78
|
-
const managedUserSchema = z.object({
|
|
79
|
-
id: z.string().min(1),
|
|
80
|
-
name: z.string().min(1, "User name is required"),
|
|
81
|
-
identity: z.string().email("Invalid email address"),
|
|
82
|
-
type: z.string().min(1, "User type is required"),
|
|
83
|
-
profileId: z.string().min(1, "Profile ID is required"),
|
|
84
|
-
roleId: z.string().min(1, "Role ID is required"),
|
|
85
|
-
resetPassword: z.boolean(),
|
|
86
|
-
isActive: z.boolean(),
|
|
87
|
-
isArchived: z.boolean(),
|
|
88
|
-
role: roleSchema.optional(),
|
|
89
|
-
createdAt: z.string().datetime("Invalid creation timestamp"),
|
|
90
|
-
updatedAt: z.string().datetime("Invalid update timestamp"),
|
|
91
|
-
});
|
|
92
|
-
/**
|
|
93
|
-
* Schema definition for managed user query parameters.
|
|
94
|
-
* Contains all primitive fields from ManagedUserData for filtering/searching users.
|
|
95
|
-
* Excludes complex object fields like 'role' which are not suitable for query parameters.
|
|
96
|
-
*
|
|
97
|
-
* @property {string} id - Optional filter by user ID
|
|
98
|
-
* @property {string} name - Optional filter by user name (partial match)
|
|
99
|
-
* @property {string} identity - Optional filter by user identity (email/phone)
|
|
100
|
-
* @property {string} type - Optional filter by user type
|
|
101
|
-
* @property {string} profileId - Optional filter by profile ID
|
|
102
|
-
* @property {string} roleId - Optional filter by role ID
|
|
103
|
-
* @property {number} resetPassword - Optional filter by password reset requirement
|
|
104
|
-
* @property {number} isActive - Optional filter by account active status
|
|
105
|
-
* @property {number} isArchived - Optional filter by account archived status
|
|
106
|
-
* @property {string} createdAt - Optional filter by creation date (ISO datetime)
|
|
107
|
-
* @property {string} updatedAt - Optional filter by last update date (ISO datetime)
|
|
108
|
-
*/
|
|
109
|
-
const managedUserQueryParamsSchema = z.object({
|
|
110
|
-
id: z.string().min(1).optional(),
|
|
111
|
-
name: z.string().min(1).optional(),
|
|
112
|
-
identity: z.string().email("Invalid email address").optional(),
|
|
113
|
-
type: z.string().min(1).optional(),
|
|
114
|
-
profileId: z.string().min(1).optional(),
|
|
115
|
-
roleId: z.string().min(1).optional(),
|
|
116
|
-
resetPassword: z.number().optional(),
|
|
117
|
-
isActive: z.number().optional(),
|
|
118
|
-
isArchived: z.number().optional(),
|
|
119
|
-
createdAt: z.string().datetime("Invalid creation timestamp").optional(),
|
|
120
|
-
updatedAt: z.string().datetime("Invalid update timestamp").optional(),
|
|
121
|
-
eager: z.string().optional(),
|
|
122
|
-
});
|
|
123
|
-
/**
|
|
124
|
-
* Schema definition for creating a new user account.
|
|
125
|
-
* Defines the required and optional fields for user creation.
|
|
126
|
-
*
|
|
127
|
-
* @property {string} name - Full name of the user
|
|
128
|
-
* @property {string} identity - User's email address
|
|
129
|
-
* @property {string} password - Initial password for the account
|
|
130
|
-
* @property {string} roleId - Optional role ID (defaults to system default)
|
|
131
|
-
* @property {boolean} resetPassword - Optional flag to force password reset (defaults to true)
|
|
132
|
-
*/
|
|
133
|
-
const createUserRequestSchema = z.object({
|
|
134
|
-
name: z.string().min(1, "User name is required"),
|
|
135
|
-
identity: z.string().email("Valid email address is required"),
|
|
136
|
-
password: passwordSchema.optional(),
|
|
137
|
-
roleId: z.string().optional(),
|
|
138
|
-
resetPassword: z.boolean().optional(),
|
|
139
|
-
});
|
|
140
|
-
/**
|
|
141
|
-
* Schema definition for updating a user account.
|
|
142
|
-
* All fields are optional for partial updates.
|
|
143
|
-
*
|
|
144
|
-
* @property {string} name - Optional updated name
|
|
145
|
-
* @property {string} roleId - Optional updated role ID
|
|
146
|
-
* @property {string} password - Optional new password
|
|
147
|
-
* @property {boolean} resetPassword - Optional flag to force password reset
|
|
148
|
-
* @property {boolean} isActive - Optional account activation status
|
|
149
|
-
*/
|
|
150
|
-
const updateUserRequestSchema = z.object({
|
|
151
|
-
name: z.string().min(1, "User name cannot be empty").optional(),
|
|
152
|
-
roleId: z.string().min(1, "Role ID cannot be empty").optional(),
|
|
153
|
-
password: passwordSchema.optional(),
|
|
154
|
-
resetPassword: z.boolean().optional(),
|
|
155
|
-
isActive: z.boolean().optional(),
|
|
156
|
-
});
|
|
157
|
-
/**
|
|
158
|
-
* Schema definition for resetting a user's password.
|
|
159
|
-
* Both fields are optional with system defaults.
|
|
160
|
-
*
|
|
161
|
-
* @property {string} newPassword - Optional new password (random generated if not provided)
|
|
162
|
-
* @property {boolean} sendNotification - Optional flag to send notification to user
|
|
163
|
-
*/
|
|
164
|
-
const resetPasswordRequestSchema = z.object({
|
|
165
|
-
newPassword: passwordSchema.optional(),
|
|
166
|
-
sendNotification: z.boolean().optional(),
|
|
167
|
-
});
|
|
168
|
-
/**
|
|
169
|
-
* Schema definition for the response when creating a user.
|
|
170
|
-
* Returns basic user information without sensitive data.
|
|
171
|
-
*
|
|
172
|
-
* @property {string} id - Unique identifier for the created user
|
|
173
|
-
* @property {string} name - Full name of the user
|
|
174
|
-
* @property {string} identity - User's email address
|
|
175
|
-
* @property {string} type - Type of user account
|
|
176
|
-
* @property {string} profileId - ID of the associated profile
|
|
177
|
-
* @property {string} roleId - ID of the assigned role
|
|
178
|
-
* @property {boolean} isActive - Whether the account is active
|
|
179
|
-
* @property {string} createdAt - ISO datetime string of account creation
|
|
180
|
-
*/
|
|
181
|
-
const createUserResponseSchema = z.object({
|
|
182
|
-
id: z.string(),
|
|
183
|
-
name: z.string(),
|
|
184
|
-
identity: z.string(),
|
|
185
|
-
type: z.string(),
|
|
186
|
-
profileId: z.string(),
|
|
187
|
-
roleId: z.string(),
|
|
188
|
-
isActive: z.boolean(),
|
|
189
|
-
isArchived: z.boolean(),
|
|
190
|
-
createdAt: z.string().datetime(),
|
|
191
|
-
});
|
|
192
|
-
// ====================== Schema Collections ====================== //
|
|
193
|
-
/**
|
|
194
|
-
* Collection of user management schemas for export.
|
|
195
|
-
* Provides access to all user and role validation schemas.
|
|
196
|
-
*/
|
|
197
|
-
export const UserManagementSchemas = {
|
|
198
|
-
role: roleSchema,
|
|
199
|
-
managedUser: managedUserSchema,
|
|
200
|
-
managedUserQueryParams: managedUserQueryParamsSchema,
|
|
201
|
-
createUserRequest: createUserRequestSchema,
|
|
202
|
-
updateUserRequest: updateUserRequestSchema,
|
|
203
|
-
resetPasswordRequest: resetPasswordRequestSchema,
|
|
204
|
-
createUserResponse: createUserResponseSchema,
|
|
205
|
-
password: passwordSchema, // Export password schema for reuse
|
|
206
|
-
};
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
/**
|
|
3
|
-
* Auth API contract
|
|
4
|
-
*/
|
|
5
|
-
export declare const accessContract: {
|
|
6
|
-
getAccessList: {
|
|
7
|
-
method: "GET";
|
|
8
|
-
path: "/access";
|
|
9
|
-
responses: {
|
|
10
|
-
200: z.ZodArray<z.ZodString, "many">;
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
};
|
|
14
|
-
//# sourceMappingURL=contract.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../../../../src/src/features/auth/access/contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;GAEG;AACH,eAAO,MAAM,cAAc;;;;;;;;CAQzB,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
import { initContract } from "@ts-rest/core";
|
|
3
|
-
/**
|
|
4
|
-
* Auth API contract
|
|
5
|
-
*/
|
|
6
|
-
export const accessContract = initContract().router({
|
|
7
|
-
getAccessList: {
|
|
8
|
-
method: "GET",
|
|
9
|
-
path: "/access",
|
|
10
|
-
responses: {
|
|
11
|
-
200: z.string().array(),
|
|
12
|
-
},
|
|
13
|
-
},
|
|
14
|
-
});
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { Profile } from "../../../models/index.js";
|
|
2
|
-
import { TokenRequiredRepository } from "../../../shared/token_required_repository.js";
|
|
3
|
-
import { accessContract } from "./contract.js";
|
|
4
|
-
export declare class AccessRepository extends TokenRequiredRepository<typeof accessContract> {
|
|
5
|
-
/**
|
|
6
|
-
* Initializes an instance of ProfileRepository.
|
|
7
|
-
*/
|
|
8
|
-
constructor();
|
|
9
|
-
getCurrentProfile(token: string): Promise<Profile>;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=repository.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../../src/src/features/auth/access/repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AACvF,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAE/C,qBAAa,gBACX,SAAQ,uBAAuB,CAAC,OAAO,cAAc,CAAC;IACtD;;OAEG;;IAKG,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAazD"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { Profile } from "../../../models/index.js";
|
|
2
|
-
import { APIError } from "../../../errors/api_error.js";
|
|
3
|
-
import { TokenRequiredRepository } from "../../../shared/token_required_repository.js";
|
|
4
|
-
import { accessContract } from "./contract.js";
|
|
5
|
-
export class AccessRepository extends TokenRequiredRepository {
|
|
6
|
-
/**
|
|
7
|
-
* Initializes an instance of ProfileRepository.
|
|
8
|
-
*/
|
|
9
|
-
constructor() {
|
|
10
|
-
super("auth", accessContract, "");
|
|
11
|
-
}
|
|
12
|
-
async getCurrentProfile(token) {
|
|
13
|
-
this.setToken(token);
|
|
14
|
-
const result = await this.client.getAccessList();
|
|
15
|
-
if (result.status === 200) {
|
|
16
|
-
const profile = Profile.from(result.body);
|
|
17
|
-
if (profile)
|
|
18
|
-
return profile;
|
|
19
|
-
}
|
|
20
|
-
throw new APIError({
|
|
21
|
-
message: "An error occurred while trying to get the current access list",
|
|
22
|
-
statusCode: 502,
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../../../src/src/features/auth/contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCvB,CAAC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
import { initContract } from "@ts-rest/core";
|
|
3
|
-
import { Profile } from "../../models/index.js";
|
|
4
|
-
/**
|
|
5
|
-
* Auth API contract
|
|
6
|
-
*/
|
|
7
|
-
export const authContract = initContract().router({
|
|
8
|
-
logIn: {
|
|
9
|
-
method: "POST",
|
|
10
|
-
path: "/login",
|
|
11
|
-
body: z.object({
|
|
12
|
-
type: z.string().default("password"),
|
|
13
|
-
identity: z.string().email(),
|
|
14
|
-
password: z.string(),
|
|
15
|
-
}),
|
|
16
|
-
responses: {
|
|
17
|
-
201: z.object({
|
|
18
|
-
profile: Profile.schema,
|
|
19
|
-
token: z.string(),
|
|
20
|
-
access: z.array(z.string()),
|
|
21
|
-
resetPassword: z.boolean(),
|
|
22
|
-
}),
|
|
23
|
-
400: z.object({}),
|
|
24
|
-
},
|
|
25
|
-
},
|
|
26
|
-
access: {
|
|
27
|
-
method: "GET",
|
|
28
|
-
path: "/access",
|
|
29
|
-
headers: z.object({ token: z.string() }),
|
|
30
|
-
responses: {
|
|
31
|
-
200: z.string().array(),
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
resetPassword: {
|
|
35
|
-
method: "PUT",
|
|
36
|
-
path: "/password",
|
|
37
|
-
body: z.object({
|
|
38
|
-
currentPassword: z.string(),
|
|
39
|
-
newPassword: z.string(),
|
|
40
|
-
}),
|
|
41
|
-
responses: {},
|
|
42
|
-
},
|
|
43
|
-
});
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { z } from "zod";
|
|
2
|
-
/**
|
|
3
|
-
* Identity API contract
|
|
4
|
-
*/
|
|
5
|
-
export declare const identityContract: {
|
|
6
|
-
getUserCredentials: {
|
|
7
|
-
method: "GET";
|
|
8
|
-
path: "/me";
|
|
9
|
-
responses: {
|
|
10
|
-
200: z.ZodObject<{
|
|
11
|
-
name: z.ZodString;
|
|
12
|
-
identity: z.ZodString;
|
|
13
|
-
}, "strip", z.ZodTypeAny, {
|
|
14
|
-
name: string;
|
|
15
|
-
identity: string;
|
|
16
|
-
}, {
|
|
17
|
-
name: string;
|
|
18
|
-
identity: string;
|
|
19
|
-
}>;
|
|
20
|
-
};
|
|
21
|
-
};
|
|
22
|
-
};
|
|
23
|
-
//# sourceMappingURL=contract.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../../../../../src/src/features/auth/identity/contract.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;CAW3B,CAAC"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { initContract } from "@ts-rest/core";
|
|
2
|
-
import { z } from "zod";
|
|
3
|
-
/**
|
|
4
|
-
* Identity API contract
|
|
5
|
-
*/
|
|
6
|
-
export const identityContract = initContract().router({
|
|
7
|
-
getUserCredentials: {
|
|
8
|
-
method: "GET",
|
|
9
|
-
path: "/me",
|
|
10
|
-
responses: {
|
|
11
|
-
200: z.object({
|
|
12
|
-
name: z.string(),
|
|
13
|
-
identity: z.string(),
|
|
14
|
-
}),
|
|
15
|
-
},
|
|
16
|
-
},
|
|
17
|
-
});
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { identityContract } from "./contract.js";
|
|
2
|
-
import type { ClientInferResponseBody } from "@ts-rest/core";
|
|
3
|
-
import { TokenRequiredRepository } from "../../../shared/token_required_repository.js";
|
|
4
|
-
type GetUserIdentityResponse = ClientInferResponseBody<typeof identityContract.getUserCredentials>;
|
|
5
|
-
/**
|
|
6
|
-
* Class representing the LoginRepository.
|
|
7
|
-
* Provides methods to retrieve user identity-related information.
|
|
8
|
-
*/
|
|
9
|
-
export declare class LoginRepository extends TokenRequiredRepository<typeof identityContract> {
|
|
10
|
-
/**
|
|
11
|
-
* Initializes an instance of LoginRepository.
|
|
12
|
-
*/
|
|
13
|
-
constructor();
|
|
14
|
-
/**
|
|
15
|
-
* Retrieves the user's login credentials.
|
|
16
|
-
* @returns A promise that resolves to the user's login credentials on success.
|
|
17
|
-
* @throws {APIError} If an error occurs while retrieving the credentials.
|
|
18
|
-
*/
|
|
19
|
-
getIdentity(token: string): Promise<GetUserIdentityResponse>;
|
|
20
|
-
}
|
|
21
|
-
export {};
|
|
22
|
-
//# sourceMappingURL=repository.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"repository.d.ts","sourceRoot":"","sources":["../../../../../src/src/features/auth/identity/repository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8CAA8C,CAAC;AAEvF,KAAK,uBAAuB,GAAG,uBAAuB,CACpD,OAAO,gBAAgB,CAAC,kBAAkB,CAC3C,CAAC;AAEF;;;GAGG;AACH,qBAAa,eACX,SAAQ,uBAAuB,CAAC,OAAO,gBAAgB,CAAC;IACxD;;OAEG;;IAKH;;;;OAIG;IACG,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC;CAUnE"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { APIError } from "../../../errors/api_error.js";
|
|
2
|
-
import { identityContract } from "./contract.js";
|
|
3
|
-
import { TokenRequiredRepository } from "../../../shared/token_required_repository.js";
|
|
4
|
-
/**
|
|
5
|
-
* Class representing the LoginRepository.
|
|
6
|
-
* Provides methods to retrieve user identity-related information.
|
|
7
|
-
*/
|
|
8
|
-
export class LoginRepository extends TokenRequiredRepository {
|
|
9
|
-
/**
|
|
10
|
-
* Initializes an instance of LoginRepository.
|
|
11
|
-
*/
|
|
12
|
-
constructor() {
|
|
13
|
-
super("login", identityContract, "");
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Retrieves the user's login credentials.
|
|
17
|
-
* @returns A promise that resolves to the user's login credentials on success.
|
|
18
|
-
* @throws {APIError} If an error occurs while retrieving the credentials.
|
|
19
|
-
*/
|
|
20
|
-
async getIdentity(token) {
|
|
21
|
-
this.setToken(token);
|
|
22
|
-
const result = await this.client.getUserCredentials();
|
|
23
|
-
if (result.status === 200)
|
|
24
|
-
return result.body;
|
|
25
|
-
throw new APIError({
|
|
26
|
-
message: "An error occurred while trying to get login credentials",
|
|
27
|
-
statusCode: 502,
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/src/features/auth/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,yBAAyB,CAAA;AACvC,cAAc,0BAA0B,CAAA;AACxC,cAAc,wBAAwB,CAAA"}
|
|
@@ -1,105 +0,0 @@
|
|
|
1
|
-
import type { User } from "../../models/index.js";
|
|
2
|
-
import type { Permission } from "../../models/permission.js";
|
|
3
|
-
/**
|
|
4
|
-
* Global context to hold the current auth instance reference.
|
|
5
|
-
* This provides a way to access the auth instance across the application
|
|
6
|
-
* without directly coupling to the singleton pattern.
|
|
7
|
-
*/
|
|
8
|
-
export declare const AuthContext: {
|
|
9
|
-
current: AfloatAuth | undefined;
|
|
10
|
-
};
|
|
11
|
-
/**
|
|
12
|
-
* Main authentication class that works in both client and server environments.
|
|
13
|
-
* Provides authentication functionality and user management.
|
|
14
|
-
*/
|
|
15
|
-
export declare class AfloatAuth {
|
|
16
|
-
/** The auth store implementation */
|
|
17
|
-
private store;
|
|
18
|
-
/** The token handler implementation */
|
|
19
|
-
private tokenHandler;
|
|
20
|
-
/** client AfloatAuth instance */
|
|
21
|
-
private static _instance;
|
|
22
|
-
/**
|
|
23
|
-
* Private constructor to maintain control over instantiation.
|
|
24
|
-
* @param {AuthStore} store - The auth store implementation to use
|
|
25
|
-
* @param {TokenHandler} tokenHandler - The token handler implementation to use
|
|
26
|
-
*/
|
|
27
|
-
private constructor();
|
|
28
|
-
/**
|
|
29
|
-
* Gets or creates the client-side singleton instance of AfloatAuth.
|
|
30
|
-
* This getter will automatically initialize the client instance if it hasn't been created yet.
|
|
31
|
-
* For server-side usage, use initializeServer() instead.
|
|
32
|
-
*
|
|
33
|
-
* @returns {AfloatAuth} The client-side singleton instance
|
|
34
|
-
* @example
|
|
35
|
-
* // Client-side usage
|
|
36
|
-
* const auth = AfloatAuth.instance;
|
|
37
|
-
*
|
|
38
|
-
* // Server-side usage (don't use .instance)
|
|
39
|
-
* const serverAuth = await AfloatAuth.initializeServer(token);
|
|
40
|
-
*/
|
|
41
|
-
static get instance(): AfloatAuth;
|
|
42
|
-
/**
|
|
43
|
-
* Creates a new server-side instance of AfloatAuth.
|
|
44
|
-
* Unlike the client-side instance getter, this creates a new instance each time.
|
|
45
|
-
*
|
|
46
|
-
* @param {string} token - Authentication token
|
|
47
|
-
* @returns {Promise<AfloatAuth>} A new server-side instance
|
|
48
|
-
* @throws {Error} If token is invalid or required data cannot be fetched
|
|
49
|
-
*/
|
|
50
|
-
static initializeServer(token: string): Promise<AfloatAuth>;
|
|
51
|
-
/**
|
|
52
|
-
* Gets the authentication repository instance.
|
|
53
|
-
* @private
|
|
54
|
-
* @returns {AuthRepository} The repository for auth operations
|
|
55
|
-
*/
|
|
56
|
-
private get repo();
|
|
57
|
-
/**
|
|
58
|
-
* Gets the current authentication token.
|
|
59
|
-
* @returns {string | undefined} The current token or undefined if not authenticated
|
|
60
|
-
*/
|
|
61
|
-
getUserToken(): string | undefined;
|
|
62
|
-
/**
|
|
63
|
-
* Gets the currently authenticated user.
|
|
64
|
-
* @returns {User | undefined} The current user or undefined if not authenticated
|
|
65
|
-
*/
|
|
66
|
-
get currentUser(): User | undefined;
|
|
67
|
-
/**
|
|
68
|
-
* React hook for accessing the current user in client-side code.
|
|
69
|
-
* @throws {Error} If called in a server environment
|
|
70
|
-
* @returns {User | undefined} The current user or undefined if not authenticated
|
|
71
|
-
*/
|
|
72
|
-
useCurrentUser(): User | undefined;
|
|
73
|
-
/**
|
|
74
|
-
* Checks if the current user has a specific permission.
|
|
75
|
-
* @param {Permission} perm - The permission to check
|
|
76
|
-
* @returns {boolean} True if the user has the permission, false otherwise
|
|
77
|
-
*/
|
|
78
|
-
checkPermission(perm: Permission): boolean;
|
|
79
|
-
/**
|
|
80
|
-
* Authenticates a user with email and password.
|
|
81
|
-
* @param {string} email - The user's email
|
|
82
|
-
* @param {string} password - The user's password
|
|
83
|
-
* @returns {Promise<User>} Promise resolving to the authenticated user
|
|
84
|
-
* @throws Will throw an error if authentication fails
|
|
85
|
-
*/
|
|
86
|
-
logIn(email: string, password: string): Promise<User>;
|
|
87
|
-
/**
|
|
88
|
-
* Updates the user's password.
|
|
89
|
-
* @param {string} current - The current password
|
|
90
|
-
* @param {string} updated - The new password
|
|
91
|
-
* @returns {Promise<boolean>} Promise resolving to true if successful
|
|
92
|
-
* @throws Will throw an error if the password update fails
|
|
93
|
-
*/
|
|
94
|
-
resetPassword(current: string, updated: string): Promise<boolean>;
|
|
95
|
-
/**
|
|
96
|
-
* Logs out the current user.
|
|
97
|
-
*/
|
|
98
|
-
logOut(): void;
|
|
99
|
-
/**
|
|
100
|
-
* Clears all authentication data.
|
|
101
|
-
* @private
|
|
102
|
-
*/
|
|
103
|
-
private clearSavedData;
|
|
104
|
-
}
|
|
105
|
-
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../../src/src/features/auth/manager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAU7D;;;;GAIG;AACH,eAAO,MAAM,WAAW;aAEA,UAAU,GAAG,SAAS;CAC7C,CAAC;AAEF;;;GAGG;AACH,qBAAa,UAAU;IACrB,oCAAoC;IACpC,OAAO,CAAC,KAAK,CAAY;IAEzB,uCAAuC;IACvC,OAAO,CAAC,YAAY,CAAe;IAEnC,iCAAiC;IACjC,OAAO,CAAC,MAAM,CAAC,SAAS,CAA2B;IAEnD;;;;OAIG;IACH,OAAO;IAKP;;;;;;;;;;;;OAYG;IACH,WAAkB,QAAQ,IAAI,UAAU,CAYvC;IAED;;;;;;;OAOG;WACiB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IA8BxE;;;;OAIG;IACH,OAAO,KAAK,IAAI,GAEf;IAED;;;OAGG;IACH,YAAY,IAAI,MAAM,GAAG,SAAS;IAIlC;;;OAGG;IACH,IAAI,WAAW,IAAI,IAAI,GAAG,SAAS,CAElC;IAED;;;;OAIG;IACH,cAAc,IAAI,IAAI,GAAG,SAAS;IAIlC;;;;OAIG;IACH,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO;IAI1C;;;;;;OAMG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ3D;;;;;;OAMG;IACG,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAMvE;;OAEG;IACH,MAAM,IAAI,IAAI;IAId;;;OAGG;IACH,OAAO,CAAC,cAAc;CAIvB"}
|