@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,230 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.User = void 0;
|
|
4
|
-
// deno-lint-ignore-file no-explicit-any
|
|
5
|
-
const permission_js_1 = require("../permission.js");
|
|
6
|
-
const profile_js_1 = require("./profile.js");
|
|
7
|
-
/**
|
|
8
|
-
* Represents a user in Afloat.
|
|
9
|
-
*
|
|
10
|
-
* This class centralizes user-related logic, simplifying interaction
|
|
11
|
-
* with user-related data and ensuring consistent permission checks across the application.
|
|
12
|
-
*/
|
|
13
|
-
class User {
|
|
14
|
-
/**
|
|
15
|
-
* Creates a new instance of the `User` class.
|
|
16
|
-
*
|
|
17
|
-
* @param userData - An object containing the user's profile, token,
|
|
18
|
-
* permissions (access list), and the `resetPassword` flag.
|
|
19
|
-
*/
|
|
20
|
-
constructor(data) {
|
|
21
|
-
/**
|
|
22
|
-
* Logged-in user name
|
|
23
|
-
*/
|
|
24
|
-
Object.defineProperty(this, "name", {
|
|
25
|
-
enumerable: true,
|
|
26
|
-
configurable: true,
|
|
27
|
-
writable: true,
|
|
28
|
-
value: void 0
|
|
29
|
-
});
|
|
30
|
-
/**
|
|
31
|
-
* Logged-in identity: phone-number or email address
|
|
32
|
-
*/
|
|
33
|
-
Object.defineProperty(this, "identity", {
|
|
34
|
-
enumerable: true,
|
|
35
|
-
configurable: true,
|
|
36
|
-
writable: true,
|
|
37
|
-
value: void 0
|
|
38
|
-
});
|
|
39
|
-
/**
|
|
40
|
-
* The user's Afloat profile, containing personal information such as name, contact details, and account information.
|
|
41
|
-
*/
|
|
42
|
-
Object.defineProperty(this, "profile", {
|
|
43
|
-
enumerable: true,
|
|
44
|
-
configurable: true,
|
|
45
|
-
writable: true,
|
|
46
|
-
value: void 0
|
|
47
|
-
});
|
|
48
|
-
/**
|
|
49
|
-
* The user's authentication token. This token must be passed in the request headers
|
|
50
|
-
* for all authenticated API endpoints.
|
|
51
|
-
*/
|
|
52
|
-
Object.defineProperty(this, "token", {
|
|
53
|
-
enumerable: true,
|
|
54
|
-
configurable: true,
|
|
55
|
-
writable: true,
|
|
56
|
-
value: void 0
|
|
57
|
-
});
|
|
58
|
-
/**
|
|
59
|
-
* Indicates whether the user is required to change their default password.
|
|
60
|
-
*
|
|
61
|
-
* Afloat users are initially provided with a default username and password. After the first
|
|
62
|
-
* successful login, `resetPassword` will be set to `true` to prompt the user to set a new password.
|
|
63
|
-
*/
|
|
64
|
-
Object.defineProperty(this, "resetPassword", {
|
|
65
|
-
enumerable: true,
|
|
66
|
-
configurable: true,
|
|
67
|
-
writable: true,
|
|
68
|
-
value: void 0
|
|
69
|
-
});
|
|
70
|
-
/**
|
|
71
|
-
* A map of permission keys to boolean values, indicating whether the user has access
|
|
72
|
-
* to specific actions or features in the system.
|
|
73
|
-
*/
|
|
74
|
-
Object.defineProperty(this, "permissionsMap", {
|
|
75
|
-
enumerable: true,
|
|
76
|
-
configurable: true,
|
|
77
|
-
writable: true,
|
|
78
|
-
value: void 0
|
|
79
|
-
});
|
|
80
|
-
const { profile, token, access, resetPassword, name, identity } = data;
|
|
81
|
-
this.profile = profile;
|
|
82
|
-
this.token = token;
|
|
83
|
-
this.resetPassword = resetPassword;
|
|
84
|
-
this.name = name;
|
|
85
|
-
this.identity = identity;
|
|
86
|
-
this.permissionsMap = {};
|
|
87
|
-
for (const group of Object.values(permission_js_1.Permissions)) {
|
|
88
|
-
for (const perm of Object.values(group)) {
|
|
89
|
-
this.permissionsMap[perm] = access.includes(perm);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
/**
|
|
94
|
-
* Checks if the user has a specific permission.
|
|
95
|
-
*
|
|
96
|
-
* @param permission - The permission key to check.
|
|
97
|
-
* @returns `true` if the user has the specified permission, otherwise `false`.
|
|
98
|
-
*/
|
|
99
|
-
can(permission) {
|
|
100
|
-
return this.permissionsMap[permission] ?? false;
|
|
101
|
-
}
|
|
102
|
-
/**
|
|
103
|
-
* Serializes the `User` instance to a JSON string.
|
|
104
|
-
*
|
|
105
|
-
* @returns A JSON string representation of the `User` instance, including:
|
|
106
|
-
* - `profile`: The user's profile information. (Requires profile.toJSON() method)
|
|
107
|
-
* - `token`: The user's authentication token.
|
|
108
|
-
* - `resetPassword`: Indicates whether the user must reset their password.
|
|
109
|
-
* - `permissions`: An array of permission keys the user has.
|
|
110
|
-
*/
|
|
111
|
-
toJSON() {
|
|
112
|
-
return JSON.stringify({
|
|
113
|
-
profile: this.profile.toObject(),
|
|
114
|
-
token: this.token,
|
|
115
|
-
resetPassword: this.resetPassword,
|
|
116
|
-
name: this.name,
|
|
117
|
-
identity: this.identity,
|
|
118
|
-
permissions: Object.keys(this.permissionsMap).filter((key) => this.permissionsMap[key]),
|
|
119
|
-
});
|
|
120
|
-
}
|
|
121
|
-
/**
|
|
122
|
-
* Creates a new `User` instance from a JSON string.
|
|
123
|
-
*
|
|
124
|
-
* @param jsonString - A JSON string containing user data.
|
|
125
|
-
* @returns A `User` instance reconstructed from the JSON data, or undefined if jsonString is invalid.
|
|
126
|
-
*/
|
|
127
|
-
static fromJSON(jsonString) {
|
|
128
|
-
try {
|
|
129
|
-
return User.from(JSON.parse(jsonString));
|
|
130
|
-
}
|
|
131
|
-
catch (e) {
|
|
132
|
-
console.error("Invalid JSON string:", e);
|
|
133
|
-
return undefined;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Creates a new `User` instance from a data object, JSON string, or object with a Profile instance/object.
|
|
138
|
-
*
|
|
139
|
-
* @param data - The data object, JSON string, or object with Profile instance/object containing user information.
|
|
140
|
-
* @returns A `User` instance, or undefined if data is invalid.
|
|
141
|
-
*/
|
|
142
|
-
static from(data) {
|
|
143
|
-
let parsedData;
|
|
144
|
-
// Parse JSON string if needed
|
|
145
|
-
if (typeof data === "string") {
|
|
146
|
-
try {
|
|
147
|
-
parsedData = JSON.parse(data);
|
|
148
|
-
}
|
|
149
|
-
catch (error) {
|
|
150
|
-
console.error("Invalid JSON string:", error);
|
|
151
|
-
return undefined;
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
else {
|
|
155
|
-
parsedData = data;
|
|
156
|
-
}
|
|
157
|
-
if (!parsedData) {
|
|
158
|
-
console.error("Data is null or undefined.");
|
|
159
|
-
return undefined;
|
|
160
|
-
}
|
|
161
|
-
// Handle different profile formats
|
|
162
|
-
let profile;
|
|
163
|
-
let rawProfile = parsedData.profile;
|
|
164
|
-
// Handle stringified profile (the case in the provided sample)
|
|
165
|
-
if (typeof rawProfile === "string") {
|
|
166
|
-
try {
|
|
167
|
-
// Attempt to parse the stringified profile
|
|
168
|
-
rawProfile = JSON.parse(rawProfile);
|
|
169
|
-
}
|
|
170
|
-
catch (error) {
|
|
171
|
-
console.error("Failed to parse profile JSON string:", error);
|
|
172
|
-
return undefined;
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
// Create Profile instance based on what we received
|
|
176
|
-
if (profile_js_1.Profile.is(rawProfile)) {
|
|
177
|
-
// Already a Profile instance
|
|
178
|
-
profile = rawProfile;
|
|
179
|
-
}
|
|
180
|
-
else if (typeof rawProfile === "object" && rawProfile !== null) {
|
|
181
|
-
// Convert object to Profile instance
|
|
182
|
-
profile = profile_js_1.Profile.from(rawProfile);
|
|
183
|
-
if (!profile) {
|
|
184
|
-
console.error("Failed to create Profile from data:", rawProfile);
|
|
185
|
-
return undefined;
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
else if (typeof rawProfile === "string") {
|
|
189
|
-
profile = profile_js_1.Profile.fromJSON(rawProfile);
|
|
190
|
-
if (!profile) {
|
|
191
|
-
console.error("Failed to create Profile from JSON data:", rawProfile);
|
|
192
|
-
return undefined;
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
else {
|
|
196
|
-
console.error("Invalid profile format:", typeof rawProfile);
|
|
197
|
-
return undefined;
|
|
198
|
-
}
|
|
199
|
-
// Validate other required fields
|
|
200
|
-
if (!parsedData.token || typeof parsedData.token !== "string" ||
|
|
201
|
-
!parsedData.name || typeof parsedData.name !== "string" ||
|
|
202
|
-
!parsedData.identity || typeof parsedData.identity !== "string" ||
|
|
203
|
-
!Array.isArray(parsedData.permissions) &&
|
|
204
|
-
!Array.isArray(parsedData.access) ||
|
|
205
|
-
typeof parsedData.resetPassword !== "boolean") {
|
|
206
|
-
console.error("Missing or invalid required User fields:", {
|
|
207
|
-
token: typeof parsedData.token,
|
|
208
|
-
name: typeof parsedData.name,
|
|
209
|
-
identity: typeof parsedData.identity,
|
|
210
|
-
permissions: Array.isArray(parsedData.permissions),
|
|
211
|
-
access: Array.isArray(parsedData.access),
|
|
212
|
-
resetPassword: typeof parsedData.resetPassword,
|
|
213
|
-
});
|
|
214
|
-
return undefined;
|
|
215
|
-
}
|
|
216
|
-
// Support both 'permissions' and 'access' field names
|
|
217
|
-
const access = parsedData.access || parsedData.permissions;
|
|
218
|
-
// Create and return the User instance
|
|
219
|
-
const args = {
|
|
220
|
-
profile: profile,
|
|
221
|
-
token: parsedData.token,
|
|
222
|
-
access: access,
|
|
223
|
-
resetPassword: parsedData.resetPassword,
|
|
224
|
-
name: parsedData.name,
|
|
225
|
-
identity: parsedData.identity,
|
|
226
|
-
};
|
|
227
|
-
return new User(args);
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
exports.User = User;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/user/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./profile.js"), exports);
|
|
18
|
-
__exportStar(require("./authenticated-user.js"), exports);
|
|
19
|
-
__exportStar(require("./managed-user.js"), exports);
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { Role, type RoleData } from "../role.js";
|
|
2
|
-
export interface UserEntityData {
|
|
3
|
-
id: string;
|
|
4
|
-
name: string;
|
|
5
|
-
identity: string;
|
|
6
|
-
profileId: string;
|
|
7
|
-
permissions: string[];
|
|
8
|
-
}
|
|
9
|
-
/**
|
|
10
|
-
* Base user entity - represents a user in the system
|
|
11
|
-
*/
|
|
12
|
-
export declare class UserEntity {
|
|
13
|
-
readonly id: string;
|
|
14
|
-
readonly name: string;
|
|
15
|
-
readonly identity: string;
|
|
16
|
-
readonly profileId: string;
|
|
17
|
-
readonly permissions: ReadonlySet<string>;
|
|
18
|
-
constructor(data: UserEntityData);
|
|
19
|
-
/**
|
|
20
|
-
* Check if user has a specific permission
|
|
21
|
-
*/
|
|
22
|
-
can(permission: string): boolean;
|
|
23
|
-
/**
|
|
24
|
-
* Check if user has any of the specified permissions
|
|
25
|
-
*/
|
|
26
|
-
canAny(permissions: string[]): boolean;
|
|
27
|
-
/**
|
|
28
|
-
* Check if user has all of the specified permissions
|
|
29
|
-
*/
|
|
30
|
-
canAll(permissions: string[]): boolean;
|
|
31
|
-
}
|
|
32
|
-
export interface AuthenticatedUserData {
|
|
33
|
-
name: string;
|
|
34
|
-
identity: string;
|
|
35
|
-
profileId: string;
|
|
36
|
-
profile: any;
|
|
37
|
-
token: string;
|
|
38
|
-
resetPassword: boolean;
|
|
39
|
-
permissions: string[];
|
|
40
|
-
sessionId?: string;
|
|
41
|
-
expiresAt?: string;
|
|
42
|
-
}
|
|
43
|
-
export interface ManagedUserData {
|
|
44
|
-
id: string;
|
|
45
|
-
name: string;
|
|
46
|
-
identity: string;
|
|
47
|
-
type: string;
|
|
48
|
-
profileId: string;
|
|
49
|
-
roleId: string;
|
|
50
|
-
resetPassword: boolean;
|
|
51
|
-
isActive: boolean;
|
|
52
|
-
isArchived: boolean;
|
|
53
|
-
role?: RoleData;
|
|
54
|
-
createdAt: string;
|
|
55
|
-
updatedAt: string;
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Represents a user from the admin management perspective.
|
|
59
|
-
* Same person as AuthenticatedUser but with management metadata and capabilities.
|
|
60
|
-
*/
|
|
61
|
-
export declare class ManagedUser extends UserEntity {
|
|
62
|
-
readonly type: string;
|
|
63
|
-
readonly roleId: string;
|
|
64
|
-
readonly resetPassword: boolean;
|
|
65
|
-
readonly isActive: boolean;
|
|
66
|
-
readonly isArchived: boolean;
|
|
67
|
-
readonly role?: Role;
|
|
68
|
-
readonly createdAt: Date;
|
|
69
|
-
readonly updatedAt: Date;
|
|
70
|
-
constructor(data: ManagedUserData);
|
|
71
|
-
/**
|
|
72
|
-
* Check if user account is active
|
|
73
|
-
*/
|
|
74
|
-
isAccountActive(): boolean;
|
|
75
|
-
/**
|
|
76
|
-
* Check if user account is archived
|
|
77
|
-
*/
|
|
78
|
-
isAccountArchived(): boolean;
|
|
79
|
-
/**
|
|
80
|
-
* Check if user needs to reset password
|
|
81
|
-
*/
|
|
82
|
-
needsPasswordReset(): boolean;
|
|
83
|
-
/**
|
|
84
|
-
* Get comprehensive account status
|
|
85
|
-
*/
|
|
86
|
-
getAccountStatus(): {
|
|
87
|
-
status: "active" | "inactive" | "archived" | "password_reset_required";
|
|
88
|
-
label: string;
|
|
89
|
-
color: "success" | "warning" | "error" | "default";
|
|
90
|
-
description: string;
|
|
91
|
-
};
|
|
92
|
-
/**
|
|
93
|
-
* Get role display name
|
|
94
|
-
*/
|
|
95
|
-
getRoleName(): string;
|
|
96
|
-
/**
|
|
97
|
-
* Get formatted creation date
|
|
98
|
-
*/
|
|
99
|
-
getCreatedDate(): string;
|
|
100
|
-
/**
|
|
101
|
-
* Get time since last update
|
|
102
|
-
*/
|
|
103
|
-
getLastUpdateInfo(): string;
|
|
104
|
-
static from(data: any): ManagedUser | undefined;
|
|
105
|
-
static createMany(dataArray: any[]): ManagedUser[];
|
|
106
|
-
toJSON(): any;
|
|
107
|
-
}
|
|
108
|
-
//# sourceMappingURL=managed-user.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"managed-user.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/user/managed-user.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,260 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
// deno-lint-ignore-file no-explicit-any
|
|
3
|
-
// ====================== Base User Entity ====================== //
|
|
4
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
-
exports.ManagedUser = exports.UserEntity = void 0;
|
|
6
|
-
const role_js_1 = require("../role.js");
|
|
7
|
-
/**
|
|
8
|
-
* Base user entity - represents a user in the system
|
|
9
|
-
*/
|
|
10
|
-
class UserEntity {
|
|
11
|
-
constructor(data) {
|
|
12
|
-
Object.defineProperty(this, "id", {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
configurable: true,
|
|
15
|
-
writable: true,
|
|
16
|
-
value: void 0
|
|
17
|
-
});
|
|
18
|
-
Object.defineProperty(this, "name", {
|
|
19
|
-
enumerable: true,
|
|
20
|
-
configurable: true,
|
|
21
|
-
writable: true,
|
|
22
|
-
value: void 0
|
|
23
|
-
});
|
|
24
|
-
Object.defineProperty(this, "identity", {
|
|
25
|
-
enumerable: true,
|
|
26
|
-
configurable: true,
|
|
27
|
-
writable: true,
|
|
28
|
-
value: void 0
|
|
29
|
-
}); // email or phone
|
|
30
|
-
Object.defineProperty(this, "profileId", {
|
|
31
|
-
enumerable: true,
|
|
32
|
-
configurable: true,
|
|
33
|
-
writable: true,
|
|
34
|
-
value: void 0
|
|
35
|
-
});
|
|
36
|
-
Object.defineProperty(this, "permissions", {
|
|
37
|
-
enumerable: true,
|
|
38
|
-
configurable: true,
|
|
39
|
-
writable: true,
|
|
40
|
-
value: void 0
|
|
41
|
-
});
|
|
42
|
-
this.id = data.id;
|
|
43
|
-
this.name = data.name;
|
|
44
|
-
this.identity = data.identity;
|
|
45
|
-
this.profileId = data.profileId;
|
|
46
|
-
this.permissions = new Set(data.permissions);
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Check if user has a specific permission
|
|
50
|
-
*/
|
|
51
|
-
can(permission) {
|
|
52
|
-
return this.permissions.has(permission);
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Check if user has any of the specified permissions
|
|
56
|
-
*/
|
|
57
|
-
canAny(permissions) {
|
|
58
|
-
return permissions.some((p) => this.permissions.has(p));
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Check if user has all of the specified permissions
|
|
62
|
-
*/
|
|
63
|
-
canAll(permissions) {
|
|
64
|
-
return permissions.every((p) => this.permissions.has(p));
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
exports.UserEntity = UserEntity;
|
|
68
|
-
/**
|
|
69
|
-
* Represents a user from the admin management perspective.
|
|
70
|
-
* Same person as AuthenticatedUser but with management metadata and capabilities.
|
|
71
|
-
*/
|
|
72
|
-
class ManagedUser extends UserEntity {
|
|
73
|
-
constructor(data) {
|
|
74
|
-
super({
|
|
75
|
-
id: data.id,
|
|
76
|
-
name: data.name,
|
|
77
|
-
identity: data.identity,
|
|
78
|
-
profileId: data.profileId,
|
|
79
|
-
permissions: data.role?.access ?? [],
|
|
80
|
-
});
|
|
81
|
-
Object.defineProperty(this, "type", {
|
|
82
|
-
enumerable: true,
|
|
83
|
-
configurable: true,
|
|
84
|
-
writable: true,
|
|
85
|
-
value: void 0
|
|
86
|
-
});
|
|
87
|
-
Object.defineProperty(this, "roleId", {
|
|
88
|
-
enumerable: true,
|
|
89
|
-
configurable: true,
|
|
90
|
-
writable: true,
|
|
91
|
-
value: void 0
|
|
92
|
-
});
|
|
93
|
-
Object.defineProperty(this, "resetPassword", {
|
|
94
|
-
enumerable: true,
|
|
95
|
-
configurable: true,
|
|
96
|
-
writable: true,
|
|
97
|
-
value: void 0
|
|
98
|
-
});
|
|
99
|
-
Object.defineProperty(this, "isActive", {
|
|
100
|
-
enumerable: true,
|
|
101
|
-
configurable: true,
|
|
102
|
-
writable: true,
|
|
103
|
-
value: void 0
|
|
104
|
-
});
|
|
105
|
-
Object.defineProperty(this, "isArchived", {
|
|
106
|
-
enumerable: true,
|
|
107
|
-
configurable: true,
|
|
108
|
-
writable: true,
|
|
109
|
-
value: void 0
|
|
110
|
-
});
|
|
111
|
-
Object.defineProperty(this, "role", {
|
|
112
|
-
enumerable: true,
|
|
113
|
-
configurable: true,
|
|
114
|
-
writable: true,
|
|
115
|
-
value: void 0
|
|
116
|
-
});
|
|
117
|
-
Object.defineProperty(this, "createdAt", {
|
|
118
|
-
enumerable: true,
|
|
119
|
-
configurable: true,
|
|
120
|
-
writable: true,
|
|
121
|
-
value: void 0
|
|
122
|
-
});
|
|
123
|
-
Object.defineProperty(this, "updatedAt", {
|
|
124
|
-
enumerable: true,
|
|
125
|
-
configurable: true,
|
|
126
|
-
writable: true,
|
|
127
|
-
value: void 0
|
|
128
|
-
});
|
|
129
|
-
this.type = data.type;
|
|
130
|
-
this.roleId = data.roleId;
|
|
131
|
-
this.resetPassword = data.resetPassword;
|
|
132
|
-
this.isActive = data.isActive;
|
|
133
|
-
this.isArchived = data.isArchived;
|
|
134
|
-
this.createdAt = new Date(data.createdAt);
|
|
135
|
-
this.updatedAt = new Date(data.updatedAt);
|
|
136
|
-
if (data.role) {
|
|
137
|
-
try {
|
|
138
|
-
this.role = new role_js_1.Role(data.role);
|
|
139
|
-
}
|
|
140
|
-
catch (_) {
|
|
141
|
-
//
|
|
142
|
-
}
|
|
143
|
-
}
|
|
144
|
-
}
|
|
145
|
-
/**
|
|
146
|
-
* Check if user account is active
|
|
147
|
-
*/
|
|
148
|
-
isAccountActive() {
|
|
149
|
-
return this.isActive;
|
|
150
|
-
}
|
|
151
|
-
/**
|
|
152
|
-
* Check if user account is archived
|
|
153
|
-
*/
|
|
154
|
-
isAccountArchived() {
|
|
155
|
-
return this.isArchived;
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* Check if user needs to reset password
|
|
159
|
-
*/
|
|
160
|
-
needsPasswordReset() {
|
|
161
|
-
return this.resetPassword;
|
|
162
|
-
}
|
|
163
|
-
/**
|
|
164
|
-
* Get comprehensive account status
|
|
165
|
-
*/
|
|
166
|
-
getAccountStatus() {
|
|
167
|
-
if (this.isArchived) {
|
|
168
|
-
return {
|
|
169
|
-
status: "archived",
|
|
170
|
-
label: "Archived",
|
|
171
|
-
color: "default",
|
|
172
|
-
description: "Account has been archived and is no longer accessible",
|
|
173
|
-
};
|
|
174
|
-
}
|
|
175
|
-
if (!this.isActive) {
|
|
176
|
-
return {
|
|
177
|
-
status: "inactive",
|
|
178
|
-
label: "Inactive",
|
|
179
|
-
color: "error",
|
|
180
|
-
description: "Account has been deactivated by an administrator",
|
|
181
|
-
};
|
|
182
|
-
}
|
|
183
|
-
if (this.resetPassword) {
|
|
184
|
-
return {
|
|
185
|
-
status: "password_reset_required",
|
|
186
|
-
label: "Password Reset Required",
|
|
187
|
-
color: "warning",
|
|
188
|
-
description: "User must reset their password on next login",
|
|
189
|
-
};
|
|
190
|
-
}
|
|
191
|
-
return {
|
|
192
|
-
status: "active",
|
|
193
|
-
label: "Active",
|
|
194
|
-
color: "success",
|
|
195
|
-
description: "Account is active and ready to use",
|
|
196
|
-
};
|
|
197
|
-
}
|
|
198
|
-
/**
|
|
199
|
-
* Get role display name
|
|
200
|
-
*/
|
|
201
|
-
getRoleName() {
|
|
202
|
-
return this.role?.name ?? "";
|
|
203
|
-
}
|
|
204
|
-
/**
|
|
205
|
-
* Get formatted creation date
|
|
206
|
-
*/
|
|
207
|
-
getCreatedDate() {
|
|
208
|
-
return this.createdAt.toLocaleDateString();
|
|
209
|
-
}
|
|
210
|
-
/**
|
|
211
|
-
* Get time since last update
|
|
212
|
-
*/
|
|
213
|
-
getLastUpdateInfo() {
|
|
214
|
-
const now = new Date();
|
|
215
|
-
const diffMs = now.getTime() - this.updatedAt.getTime();
|
|
216
|
-
const diffDays = Math.floor(diffMs / (1000 * 60 * 60 * 24));
|
|
217
|
-
if (diffDays === 0)
|
|
218
|
-
return "Today";
|
|
219
|
-
if (diffDays === 1)
|
|
220
|
-
return "Yesterday";
|
|
221
|
-
if (diffDays < 7)
|
|
222
|
-
return `${diffDays} days ago`;
|
|
223
|
-
if (diffDays < 30)
|
|
224
|
-
return `${Math.floor(diffDays / 7)} weeks ago`;
|
|
225
|
-
return this.updatedAt.toLocaleDateString();
|
|
226
|
-
}
|
|
227
|
-
static from(data) {
|
|
228
|
-
try {
|
|
229
|
-
if (!data?.id || !data?.name || !data?.identity || !data?.roleId) {
|
|
230
|
-
console.error("Missing required ManagedUser fields:", data);
|
|
231
|
-
return undefined;
|
|
232
|
-
}
|
|
233
|
-
return new ManagedUser(data);
|
|
234
|
-
}
|
|
235
|
-
catch (error) {
|
|
236
|
-
console.error("Error creating ManagedUser:", error);
|
|
237
|
-
return undefined;
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
static createMany(dataArray) {
|
|
241
|
-
return dataArray.map((data) => ManagedUser.from(data)).filter(Boolean);
|
|
242
|
-
}
|
|
243
|
-
toJSON() {
|
|
244
|
-
return {
|
|
245
|
-
id: this.id,
|
|
246
|
-
name: this.name,
|
|
247
|
-
identity: this.identity,
|
|
248
|
-
type: this.type,
|
|
249
|
-
profileId: this.profileId,
|
|
250
|
-
roleId: this.roleId,
|
|
251
|
-
resetPassword: this.resetPassword,
|
|
252
|
-
isActive: this.isActive,
|
|
253
|
-
isArchived: this.isArchived,
|
|
254
|
-
role: this.role?.toJSON(),
|
|
255
|
-
createdAt: this.createdAt.toISOString(),
|
|
256
|
-
updatedAt: this.updatedAt.toISOString(),
|
|
257
|
-
};
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
exports.ManagedUser = ManagedUser;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../../../../../src/src/models/user/profile.ts"],"names":[],"mappings":"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"}
|