@temboplus/afloat 0.1.77-beta.9 → 0.1.79
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/LICENSE +7 -0
- package/README.md +42 -246
- package/esm/mod.d.ts +8 -0
- package/esm/mod.d.ts.map +1 -0
- package/esm/mod.js +7 -0
- package/esm/package.json +3 -0
- package/{dist/lib/error/error.api.d.ts → esm/src/errors/api_error.d.ts} +1 -0
- package/esm/src/errors/api_error.d.ts.map +1 -0
- package/esm/src/errors/api_error.js +90 -0
- package/esm/src/errors/index.d.ts +3 -0
- package/esm/src/errors/index.d.ts.map +1 -0
- package/esm/src/errors/index.js +2 -0
- package/{dist/lib/error/error.permission.d.ts → esm/src/errors/permission_error.d.ts} +2 -1
- package/esm/src/errors/permission_error.d.ts.map +1 -0
- package/esm/src/errors/permission_error.js +70 -0
- package/{dist/modules/team-member/team-member.contract.d.ts → esm/src/features/admin/contract.d.ts} +158 -233
- package/esm/src/features/admin/contract.d.ts.map +1 -0
- package/esm/src/features/admin/contract.js +210 -0
- package/esm/src/features/admin/index.d.ts +4 -0
- package/esm/src/features/admin/index.d.ts.map +1 -0
- package/esm/src/features/admin/index.js +3 -0
- package/esm/src/features/admin/repository.d.ts +114 -0
- package/esm/src/features/admin/repository.d.ts.map +1 -0
- package/esm/src/features/admin/repository.js +248 -0
- package/esm/src/features/admin/schemas.d.ts +146 -0
- package/esm/src/features/admin/schemas.d.ts.map +1 -0
- package/esm/src/features/admin/schemas.js +206 -0
- package/esm/src/features/auth/access/contract.d.ts +14 -0
- package/esm/src/features/auth/access/contract.d.ts.map +1 -0
- package/esm/src/features/auth/access/contract.js +14 -0
- package/esm/src/features/auth/access/repository.d.ts +11 -0
- package/esm/src/features/auth/access/repository.d.ts.map +1 -0
- package/esm/src/features/auth/access/repository.js +25 -0
- package/{dist/modules/auth/auth.contract.d.ts → esm/src/features/auth/contract.d.ts} +19 -16
- package/esm/src/features/auth/contract.d.ts.map +1 -0
- package/esm/src/features/auth/contract.js +43 -0
- package/esm/src/features/auth/identity/contract.d.ts +23 -0
- package/esm/src/features/auth/identity/contract.d.ts.map +1 -0
- package/esm/src/features/auth/identity/contract.js +17 -0
- package/esm/src/features/auth/identity/repository.d.ts +22 -0
- package/esm/src/features/auth/identity/repository.d.ts.map +1 -0
- package/esm/src/features/auth/identity/repository.js +30 -0
- package/esm/src/features/auth/index.d.ts +6 -0
- package/esm/src/features/auth/index.d.ts.map +1 -0
- package/esm/src/features/auth/index.js +5 -0
- package/esm/src/features/auth/manager.d.ts +105 -0
- package/esm/src/features/auth/manager.d.ts.map +1 -0
- package/esm/src/features/auth/manager.js +181 -0
- package/{dist/modules/profile/profile.api-contract.d.ts → esm/src/features/auth/profile/contract.d.ts} +6 -8
- package/esm/src/features/auth/profile/contract.d.ts.map +1 -0
- package/esm/src/features/auth/profile/contract.js +14 -0
- package/esm/src/features/auth/profile/repository.d.ts +11 -0
- package/esm/src/features/auth/profile/repository.d.ts.map +1 -0
- package/esm/src/features/auth/profile/repository.js +25 -0
- package/esm/src/features/auth/repository.d.ts +30 -0
- package/esm/src/features/auth/repository.d.ts.map +1 -0
- package/esm/src/features/auth/repository.js +69 -0
- package/{dist/modules/auth/storage/client-store.d.ts → esm/src/features/auth/storage/client_store.d.ts} +2 -1
- package/esm/src/features/auth/storage/client_store.d.ts.map +1 -0
- package/esm/src/features/auth/storage/client_store.js +46 -0
- package/{dist/modules/auth/storage/client-token-handler.d.ts → esm/src/features/auth/storage/client_token_handler.d.ts} +1 -0
- package/esm/src/features/auth/storage/client_token_handler.d.ts.map +1 -0
- package/esm/src/features/auth/storage/client_token_handler.js +36 -0
- package/esm/src/features/auth/storage/server_store.d.ts +24 -0
- package/esm/src/features/auth/storage/server_store.d.ts.map +1 -0
- package/esm/src/features/auth/storage/server_store.js +34 -0
- package/esm/src/features/auth/storage/server_token_handler.d.ts +36 -0
- package/esm/src/features/auth/storage/server_token_handler.d.ts.map +1 -0
- package/esm/src/features/auth/storage/server_token_handler.js +115 -0
- package/{dist/modules → esm/src/features}/auth/storage/types.d.ts +2 -1
- package/esm/src/features/auth/storage/types.d.ts.map +1 -0
- package/esm/src/features/auth/storage/types.js +1 -0
- package/{dist/modules/contact/contact.api-contract.d.ts → esm/src/features/contact/contract.d.ts} +55 -88
- package/esm/src/features/contact/contract.d.ts.map +1 -0
- package/esm/src/features/contact/contract.js +49 -0
- package/esm/src/features/contact/index.d.ts +2 -0
- package/esm/src/features/contact/index.d.ts.map +1 -0
- package/esm/src/features/contact/index.js +1 -0
- package/esm/src/features/contact/repository.d.ts +58 -0
- package/esm/src/features/contact/repository.d.ts.map +1 -0
- package/esm/src/features/contact/repository.js +108 -0
- package/{dist/modules/payout/payout.api-contract.d.ts → esm/src/features/payout/contract.d.ts} +197 -340
- package/esm/src/features/payout/contract.d.ts.map +1 -0
- package/esm/src/features/payout/contract.js +75 -0
- package/esm/src/features/payout/index.d.ts +2 -0
- package/esm/src/features/payout/index.d.ts.map +1 -0
- package/esm/src/features/payout/index.js +1 -0
- package/esm/src/features/payout/repository.d.ts +67 -0
- package/esm/src/features/payout/repository.d.ts.map +1 -0
- package/esm/src/features/payout/repository.js +163 -0
- package/{dist/modules/wallet/wallet.contract.d.ts → esm/src/features/wallet/contract.d.ts} +11 -13
- package/esm/src/features/wallet/contract.d.ts.map +1 -0
- package/esm/src/features/wallet/contract.js +38 -0
- package/esm/src/features/wallet/index.d.ts +2 -0
- package/esm/src/features/wallet/index.d.ts.map +1 -0
- package/esm/src/features/wallet/index.js +1 -0
- package/esm/src/features/wallet/repository.d.ts +57 -0
- package/esm/src/features/wallet/repository.d.ts.map +1 -0
- package/esm/src/features/wallet/repository.js +93 -0
- package/esm/src/models/contact/derivatives/contact.d.ts +172 -0
- package/esm/src/models/contact/derivatives/contact.d.ts.map +1 -0
- package/esm/src/models/contact/derivatives/contact.js +266 -0
- package/esm/src/models/contact/derivatives/contact_info.d.ts +188 -0
- package/esm/src/models/contact/derivatives/contact_info.d.ts.map +1 -0
- package/esm/src/models/contact/derivatives/contact_info.js +255 -0
- package/esm/src/models/contact/index.d.ts +5 -0
- package/esm/src/models/contact/index.d.ts.map +1 -0
- package/esm/src/models/contact/index.js +4 -0
- package/esm/src/models/contact/schemas.d.ts +66 -0
- package/esm/src/models/contact/schemas.d.ts.map +1 -0
- package/esm/src/models/contact/schemas.js +64 -0
- package/esm/src/models/contact/validation.d.ts +37 -0
- package/esm/src/models/contact/validation.d.ts.map +1 -0
- package/esm/src/models/contact/validation.js +146 -0
- package/esm/src/models/index.d.ts +7 -0
- package/esm/src/models/index.d.ts.map +1 -0
- package/esm/src/models/index.js +6 -0
- package/esm/src/models/payout/api.d.ts +29 -0
- package/esm/src/models/payout/api.d.ts.map +1 -0
- package/esm/src/models/payout/api.js +1 -0
- package/esm/src/models/payout/channel.d.ts +58 -0
- package/esm/src/models/payout/channel.d.ts.map +1 -0
- package/esm/src/models/payout/channel.js +53 -0
- package/esm/src/models/payout/derivatives/payout.d.ts +158 -0
- package/esm/src/models/payout/derivatives/payout.d.ts.map +1 -0
- package/esm/src/models/payout/derivatives/payout.js +271 -0
- package/esm/src/models/payout/index.d.ts +7 -0
- package/esm/src/models/payout/index.d.ts.map +1 -0
- package/esm/src/models/payout/index.js +6 -0
- package/esm/src/models/payout/narration.d.ts +164 -0
- package/esm/src/models/payout/narration.d.ts.map +1 -0
- package/esm/src/models/payout/narration.js +308 -0
- package/esm/src/models/payout/schemas.d.ts +156 -0
- package/esm/src/models/payout/schemas.d.ts.map +1 -0
- package/esm/src/models/payout/schemas.js +105 -0
- package/esm/src/models/payout/status.d.ts +33 -0
- package/esm/src/models/payout/status.d.ts.map +1 -0
- package/esm/src/models/payout/status.js +34 -0
- package/{dist/modules/login/permission.type.d.ts → esm/src/models/permission.d.ts} +9 -8
- package/esm/src/models/permission.d.ts.map +1 -0
- package/esm/src/models/permission.js +50 -0
- package/esm/src/models/role.d.ts +21 -0
- package/esm/src/models/role.d.ts.map +1 -0
- package/esm/src/models/role.js +73 -0
- package/esm/src/models/user/authenticated-user.d.ts +77 -0
- package/esm/src/models/user/authenticated-user.d.ts.map +1 -0
- package/esm/src/models/user/authenticated-user.js +226 -0
- package/esm/src/models/user/index.d.ts +4 -0
- package/esm/src/models/user/index.d.ts.map +1 -0
- package/esm/src/models/user/index.js +3 -0
- package/esm/src/models/user/managed-user.d.ts +108 -0
- package/esm/src/models/user/managed-user.d.ts.map +1 -0
- package/esm/src/models/user/managed-user.js +255 -0
- package/{dist/modules/profile/profile.model.d.ts → esm/src/models/user/profile.d.ts} +52 -81
- package/esm/src/models/user/profile.d.ts.map +1 -0
- package/esm/src/models/user/profile.js +334 -0
- package/esm/src/models/wallet/index.d.ts +4 -0
- package/esm/src/models/wallet/index.d.ts.map +1 -0
- package/esm/src/models/wallet/index.js +3 -0
- package/esm/src/models/wallet/schemas.d.ts +95 -0
- package/esm/src/models/wallet/schemas.d.ts.map +1 -0
- package/esm/src/models/wallet/schemas.js +35 -0
- package/esm/src/models/wallet/statement_entry.d.ts +160 -0
- package/esm/src/models/wallet/statement_entry.d.ts.map +1 -0
- package/esm/src/models/wallet/statement_entry.js +255 -0
- package/{dist/modules/wallet/wallet.model.d.ts → esm/src/models/wallet/wallet.d.ts} +37 -31
- package/esm/src/models/wallet/wallet.d.ts.map +1 -0
- package/esm/src/models/wallet/wallet.js +279 -0
- package/esm/src/shared/base_repository.d.ts +80 -0
- package/esm/src/shared/base_repository.d.ts.map +1 -0
- package/esm/src/shared/base_repository.js +153 -0
- package/esm/src/shared/common_responses.d.ts +13 -0
- package/esm/src/shared/common_responses.d.ts.map +1 -0
- package/esm/src/shared/common_responses.js +10 -0
- package/esm/src/shared/index.d.ts +3 -0
- package/esm/src/shared/index.d.ts.map +1 -0
- package/esm/src/shared/index.js +2 -0
- package/esm/src/shared/token_required_repository.d.ts +78 -0
- package/esm/src/shared/token_required_repository.d.ts.map +1 -0
- package/esm/src/shared/token_required_repository.js +128 -0
- package/package.json +23 -49
- package/script/mod.d.ts +8 -0
- package/script/mod.d.ts.map +1 -0
- package/script/mod.js +23 -0
- package/script/npm/src/mod.d.ts +8 -0
- package/script/npm/src/mod.d.ts.map +1 -0
- package/script/npm/src/mod.js +23 -0
- package/script/npm/src/src/errors/api_error.d.ts +63 -0
- package/script/npm/src/src/errors/api_error.d.ts.map +1 -0
- package/script/npm/src/src/errors/api_error.js +94 -0
- package/script/npm/src/src/errors/index.d.ts +3 -0
- package/script/npm/src/src/errors/index.d.ts.map +1 -0
- package/script/npm/src/src/errors/index.js +18 -0
- package/script/npm/src/src/errors/permission_error.d.ts +48 -0
- package/script/npm/src/src/errors/permission_error.d.ts.map +1 -0
- package/script/npm/src/src/errors/permission_error.js +74 -0
- package/script/npm/src/src/features/admin/contract.d.ts +842 -0
- package/script/npm/src/src/features/admin/contract.d.ts.map +1 -0
- package/script/npm/src/src/features/admin/contract.js +213 -0
- package/script/npm/src/src/features/admin/index.d.ts +4 -0
- package/script/npm/src/src/features/admin/index.d.ts.map +1 -0
- package/script/npm/src/src/features/admin/index.js +19 -0
- package/script/npm/src/src/features/admin/repository.d.ts +114 -0
- package/script/npm/src/src/features/admin/repository.d.ts.map +1 -0
- package/script/npm/src/src/features/admin/repository.js +252 -0
- package/script/npm/src/src/features/admin/schemas.d.ts +146 -0
- package/script/npm/src/src/features/admin/schemas.d.ts.map +1 -0
- package/script/npm/src/src/features/admin/schemas.js +209 -0
- package/script/npm/src/src/features/auth/access/contract.d.ts +14 -0
- package/script/npm/src/src/features/auth/access/contract.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/access/contract.js +17 -0
- package/script/npm/src/src/features/auth/access/repository.d.ts +11 -0
- package/script/npm/src/src/features/auth/access/repository.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/access/repository.js +29 -0
- package/script/npm/src/src/features/auth/contract.d.ts +112 -0
- package/script/npm/src/src/features/auth/contract.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/contract.js +46 -0
- package/script/npm/src/src/features/auth/identity/contract.d.ts +23 -0
- package/script/npm/src/src/features/auth/identity/contract.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/identity/contract.js +20 -0
- package/script/npm/src/src/features/auth/identity/repository.d.ts +22 -0
- package/script/npm/src/src/features/auth/identity/repository.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/identity/repository.js +34 -0
- package/script/npm/src/src/features/auth/index.d.ts +6 -0
- package/script/npm/src/src/features/auth/index.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/index.js +21 -0
- package/script/npm/src/src/features/auth/manager.d.ts +105 -0
- package/script/npm/src/src/features/auth/manager.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/manager.js +185 -0
- package/script/npm/src/src/features/auth/profile/contract.d.ts +37 -0
- package/script/npm/src/src/features/auth/profile/contract.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/profile/contract.js +17 -0
- package/script/npm/src/src/features/auth/profile/repository.d.ts +11 -0
- package/script/npm/src/src/features/auth/profile/repository.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/profile/repository.js +29 -0
- package/script/npm/src/src/features/auth/repository.d.ts +30 -0
- package/script/npm/src/src/features/auth/repository.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/repository.js +73 -0
- package/script/npm/src/src/features/auth/storage/client_store.d.ts +30 -0
- package/script/npm/src/src/features/auth/storage/client_store.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/storage/client_store.js +51 -0
- package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts +32 -0
- package/script/npm/src/src/features/auth/storage/client_token_handler.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/storage/client_token_handler.js +40 -0
- package/script/npm/src/src/features/auth/storage/server_store.d.ts +24 -0
- package/script/npm/src/src/features/auth/storage/server_store.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/storage/server_store.js +38 -0
- package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts +36 -0
- package/script/npm/src/src/features/auth/storage/server_token_handler.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/storage/server_token_handler.js +119 -0
- package/script/npm/src/src/features/auth/storage/types.d.ts +42 -0
- package/script/npm/src/src/features/auth/storage/types.d.ts.map +1 -0
- package/script/npm/src/src/features/auth/storage/types.js +2 -0
- package/script/npm/src/src/features/contact/contract.d.ts +170 -0
- package/script/npm/src/src/features/contact/contract.d.ts.map +1 -0
- package/script/npm/src/src/features/contact/contract.js +52 -0
- package/script/npm/src/src/features/contact/index.d.ts +2 -0
- package/script/npm/src/src/features/contact/index.d.ts.map +1 -0
- package/script/npm/src/src/features/contact/index.js +17 -0
- package/script/npm/src/src/features/contact/repository.d.ts +58 -0
- package/script/npm/src/src/features/contact/repository.d.ts.map +1 -0
- package/script/npm/src/src/features/contact/repository.js +112 -0
- package/script/npm/src/src/features/payout/contract.d.ts +623 -0
- package/script/npm/src/src/features/payout/contract.d.ts.map +1 -0
- package/script/npm/src/src/features/payout/contract.js +78 -0
- package/script/npm/src/src/features/payout/index.d.ts +2 -0
- package/script/npm/src/src/features/payout/index.d.ts.map +1 -0
- package/script/npm/src/src/features/payout/index.js +17 -0
- package/script/npm/src/src/features/payout/repository.d.ts +67 -0
- package/script/npm/src/src/features/payout/repository.d.ts.map +1 -0
- package/script/npm/src/src/features/payout/repository.js +167 -0
- package/script/npm/src/src/features/wallet/contract.d.ts +137 -0
- package/script/npm/src/src/features/wallet/contract.d.ts.map +1 -0
- package/script/npm/src/src/features/wallet/contract.js +41 -0
- package/script/npm/src/src/features/wallet/index.d.ts +2 -0
- package/script/npm/src/src/features/wallet/index.d.ts.map +1 -0
- package/script/npm/src/src/features/wallet/index.js +17 -0
- package/script/npm/src/src/features/wallet/repository.d.ts +57 -0
- package/script/npm/src/src/features/wallet/repository.d.ts.map +1 -0
- package/script/npm/src/src/features/wallet/repository.js +97 -0
- package/script/npm/src/src/models/contact/derivatives/contact.d.ts +172 -0
- package/script/npm/src/src/models/contact/derivatives/contact.d.ts.map +1 -0
- package/script/npm/src/src/models/contact/derivatives/contact.js +270 -0
- package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts +188 -0
- package/script/npm/src/src/models/contact/derivatives/contact_info.d.ts.map +1 -0
- package/script/npm/src/src/models/contact/derivatives/contact_info.js +260 -0
- package/script/npm/src/src/models/contact/index.d.ts +5 -0
- package/script/npm/src/src/models/contact/index.d.ts.map +1 -0
- package/script/npm/src/src/models/contact/index.js +20 -0
- package/script/npm/src/src/models/contact/schemas.d.ts +66 -0
- package/script/npm/src/src/models/contact/schemas.d.ts.map +1 -0
- package/script/npm/src/src/models/contact/schemas.js +67 -0
- package/script/npm/src/src/models/contact/validation.d.ts +37 -0
- package/script/npm/src/src/models/contact/validation.d.ts.map +1 -0
- package/script/npm/src/src/models/contact/validation.js +153 -0
- package/script/npm/src/src/models/index.d.ts +7 -0
- package/script/npm/src/src/models/index.d.ts.map +1 -0
- package/script/npm/src/src/models/index.js +22 -0
- package/script/npm/src/src/models/payout/api.d.ts +29 -0
- package/script/npm/src/src/models/payout/api.d.ts.map +1 -0
- package/script/npm/src/src/models/payout/api.js +2 -0
- package/script/npm/src/src/models/payout/channel.d.ts +58 -0
- package/script/npm/src/src/models/payout/channel.d.ts.map +1 -0
- package/script/npm/src/src/models/payout/channel.js +56 -0
- package/script/npm/src/src/models/payout/derivatives/payout.d.ts +158 -0
- package/script/npm/src/src/models/payout/derivatives/payout.d.ts.map +1 -0
- package/script/npm/src/src/models/payout/derivatives/payout.js +275 -0
- package/script/npm/src/src/models/payout/index.d.ts +7 -0
- package/script/npm/src/src/models/payout/index.d.ts.map +1 -0
- package/script/npm/src/src/models/payout/index.js +22 -0
- package/script/npm/src/src/models/payout/narration.d.ts +164 -0
- package/script/npm/src/src/models/payout/narration.d.ts.map +1 -0
- package/script/npm/src/src/models/payout/narration.js +312 -0
- package/script/npm/src/src/models/payout/schemas.d.ts +156 -0
- package/script/npm/src/src/models/payout/schemas.d.ts.map +1 -0
- package/script/npm/src/src/models/payout/schemas.js +108 -0
- package/script/npm/src/src/models/payout/status.d.ts +33 -0
- package/script/npm/src/src/models/payout/status.d.ts.map +1 -0
- package/script/npm/src/src/models/payout/status.js +37 -0
- package/script/npm/src/src/models/permission.d.ts +55 -0
- package/script/npm/src/src/models/permission.d.ts.map +1 -0
- package/script/npm/src/src/models/permission.js +53 -0
- package/script/npm/src/src/models/role.d.ts +21 -0
- package/script/npm/src/src/models/role.d.ts.map +1 -0
- package/script/npm/src/src/models/role.js +77 -0
- package/script/npm/src/src/models/user/authenticated-user.d.ts +77 -0
- package/script/npm/src/src/models/user/authenticated-user.d.ts.map +1 -0
- package/script/npm/src/src/models/user/authenticated-user.js +230 -0
- package/script/npm/src/src/models/user/index.d.ts +4 -0
- package/script/npm/src/src/models/user/index.d.ts.map +1 -0
- package/script/npm/src/src/models/user/index.js +19 -0
- package/script/npm/src/src/models/user/managed-user.d.ts +108 -0
- package/script/npm/src/src/models/user/managed-user.d.ts.map +1 -0
- package/script/npm/src/src/models/user/managed-user.js +260 -0
- package/script/npm/src/src/models/user/profile.d.ts +161 -0
- package/script/npm/src/src/models/user/profile.d.ts.map +1 -0
- package/script/npm/src/src/models/user/profile.js +338 -0
- package/script/npm/src/src/models/wallet/index.d.ts +4 -0
- package/script/npm/src/src/models/wallet/index.d.ts.map +1 -0
- package/script/npm/src/src/models/wallet/index.js +19 -0
- package/script/npm/src/src/models/wallet/schemas.d.ts +95 -0
- package/script/npm/src/src/models/wallet/schemas.d.ts.map +1 -0
- package/script/npm/src/src/models/wallet/schemas.js +38 -0
- package/script/npm/src/src/models/wallet/statement_entry.d.ts +160 -0
- package/script/npm/src/src/models/wallet/statement_entry.d.ts.map +1 -0
- package/script/npm/src/src/models/wallet/statement_entry.js +259 -0
- package/script/npm/src/src/models/wallet/wallet.d.ts +147 -0
- package/script/npm/src/src/models/wallet/wallet.d.ts.map +1 -0
- package/script/npm/src/src/models/wallet/wallet.js +283 -0
- package/script/npm/src/src/shared/base_repository.d.ts +80 -0
- package/script/npm/src/src/shared/base_repository.d.ts.map +1 -0
- package/script/npm/src/src/shared/base_repository.js +157 -0
- package/script/npm/src/src/shared/common_responses.d.ts +13 -0
- package/script/npm/src/src/shared/common_responses.d.ts.map +1 -0
- package/script/npm/src/src/shared/common_responses.js +13 -0
- package/script/npm/src/src/shared/index.d.ts +3 -0
- package/script/npm/src/src/shared/index.d.ts.map +1 -0
- package/script/npm/src/src/shared/index.js +18 -0
- package/script/npm/src/src/shared/token_required_repository.d.ts +78 -0
- package/script/npm/src/src/shared/token_required_repository.d.ts.map +1 -0
- package/script/npm/src/src/shared/token_required_repository.js +132 -0
- package/script/package.json +3 -0
- package/dist/index.cjs.js +0 -2
- package/dist/index.cjs.js.map +0 -1
- package/dist/index.d.ts +0 -10
- package/dist/index.esm.js +0 -2
- package/dist/index.esm.js.map +0 -1
- package/dist/lib/api/base-repository.d.ts +0 -175
- package/dist/lib/api/index.d.ts +0 -1
- package/dist/lib/error/error.utils.d.ts +0 -22
- package/dist/lib/error/index.d.ts +0 -3
- package/dist/lib/query/index.d.ts +0 -4
- package/dist/lib/query/pagination/pagination.d.ts +0 -73
- package/dist/lib/query/pagination/pagination.schemas.d.ts +0 -83
- package/dist/lib/query/query.builder.d.ts +0 -71
- package/dist/lib/query/query.types.d.ts +0 -36
- package/dist/modules/auth/auth.manager.d.ts +0 -249
- package/dist/modules/auth/auth.repository.d.ts +0 -83
- package/dist/modules/auth/auth.store.d.ts +0 -139
- package/dist/modules/auth/company-membership.model.d.ts +0 -171
- package/dist/modules/auth/index.d.ts +0 -4
- package/dist/modules/auth/user.model.d.ts +0 -363
- package/dist/modules/contact/contact-info.model.d.ts +0 -485
- package/dist/modules/contact/contact-input-handler.d.ts +0 -16
- package/dist/modules/contact/contact.dtos.d.ts +0 -84
- package/dist/modules/contact/contact.model.d.ts +0 -441
- package/dist/modules/contact/contact.repository.d.ts +0 -116
- package/dist/modules/contact/index.d.ts +0 -4
- package/dist/modules/login/index.d.ts +0 -4
- package/dist/modules/login/login.api-contract.d.ts +0 -51
- package/dist/modules/login/login.dtos.d.ts +0 -85
- package/dist/modules/login/login.model.d.ts +0 -168
- package/dist/modules/login/login.repository.d.ts +0 -58
- package/dist/modules/payout/index.d.ts +0 -5
- package/dist/modules/payout/payout-channel-handler.d.ts +0 -82
- package/dist/modules/payout/payout.dtos.d.ts +0 -605
- package/dist/modules/payout/payout.model.d.ts +0 -379
- package/dist/modules/payout/payout.query.d.ts +0 -133
- package/dist/modules/payout/payout.repository.d.ts +0 -181
- package/dist/modules/profile/index.d.ts +0 -3
- package/dist/modules/profile/profile.dtos.d.ts +0 -80
- package/dist/modules/profile/profile.repository.d.ts +0 -56
- package/dist/modules/team-member/index.d.ts +0 -4
- package/dist/modules/team-member/role.model.d.ts +0 -61
- package/dist/modules/team-member/team-member.dtos.d.ts +0 -261
- package/dist/modules/team-member/team-member.model.d.ts +0 -237
- package/dist/modules/team-member/team-member.repository.d.ts +0 -179
- package/dist/modules/wallet/index.d.ts +0 -7
- package/dist/modules/wallet/narration.model.d.ts +0 -225
- package/dist/modules/wallet/statement-entry.model.d.ts +0 -299
- package/dist/modules/wallet/wallet-manager.session.d.ts +0 -143
- package/dist/modules/wallet/wallet.dtos.d.ts +0 -204
- package/dist/modules/wallet/wallet.query.d.ts +0 -95
- package/dist/modules/wallet/wallet.repository.d.ts +0 -205
- package/dist/modules/wallet/wallet.utils.d.ts +0 -17
|
@@ -1,179 +0,0 @@
|
|
|
1
|
-
import { BaseRepository } from "@/lib/api/base-repository.js";
|
|
2
|
-
import { teamManagementContract } from "./team-member.contract.js";
|
|
3
|
-
import { Role } from "./role.model.js";
|
|
4
|
-
import { CreateTeamMemberRequestDTO, CreateTeamMemberResponseDTO, UpdateTeamMemberRequestDTO, ResetPasswordRequestDTO, TeamMemberQueryParamsDTO } from "./team-member.dtos.js";
|
|
5
|
-
import { TeamMember } from "./team-member.model.js";
|
|
6
|
-
/**
|
|
7
|
-
* Repository class for managing team members through API interactions.
|
|
8
|
-
* Handles team member creation, updates, archiving, and role management.
|
|
9
|
-
*
|
|
10
|
-
* This repository handles pure API communication without permission checking.
|
|
11
|
-
* Permission validation should be handled at the service layer or route handlers.
|
|
12
|
-
*
|
|
13
|
-
* @extends {BaseRepository<typeof teamManagementContract>}
|
|
14
|
-
*
|
|
15
|
-
* @example
|
|
16
|
-
* ```typescript
|
|
17
|
-
* const repo = new TeamMemberRepository({ token: adminToken });
|
|
18
|
-
* const members = await repo.getAllTeamMembers();
|
|
19
|
-
* ```
|
|
20
|
-
*/
|
|
21
|
-
export declare class TeamMemberRepository extends BaseRepository<typeof teamManagementContract> {
|
|
22
|
-
/**
|
|
23
|
-
* Creates an instance of TeamMemberRepository using the team management contract.
|
|
24
|
-
*
|
|
25
|
-
* @param options - Optional configuration
|
|
26
|
-
* @param options.token - Authentication token for API calls
|
|
27
|
-
* @param options.root - Custom API root URL
|
|
28
|
-
*
|
|
29
|
-
* @example
|
|
30
|
-
* ```typescript
|
|
31
|
-
* const repo = new TeamMemberRepository({
|
|
32
|
-
* token: "admin-auth-token",
|
|
33
|
-
* root: "https://api-staging.afloat.money/v1"
|
|
34
|
-
* });
|
|
35
|
-
* ```
|
|
36
|
-
*/
|
|
37
|
-
constructor(options?: {
|
|
38
|
-
token?: string;
|
|
39
|
-
root?: string;
|
|
40
|
-
});
|
|
41
|
-
/**
|
|
42
|
-
* Creates a new team member account.
|
|
43
|
-
*
|
|
44
|
-
* @param input - The data required to create a new team member
|
|
45
|
-
* @returns Promise that resolves to the newly created team member response
|
|
46
|
-
* @throws {APIError} If the creation operation fails
|
|
47
|
-
*
|
|
48
|
-
* @example
|
|
49
|
-
* ```typescript
|
|
50
|
-
* const newMember = await repo.createTeamMember({
|
|
51
|
-
* identity: "newmember@example.com",
|
|
52
|
-
* name: "New Member",
|
|
53
|
-
* roleId: "role-id"
|
|
54
|
-
* });
|
|
55
|
-
* ```
|
|
56
|
-
*/
|
|
57
|
-
createTeamMember(input: CreateTeamMemberRequestDTO): Promise<CreateTeamMemberResponseDTO>;
|
|
58
|
-
/**
|
|
59
|
-
* Updates an existing team member by ID.
|
|
60
|
-
*
|
|
61
|
-
* @param id - The unique identifier of the team member to update
|
|
62
|
-
* @param input - The data to update the team member with
|
|
63
|
-
* @returns Promise that resolves to the updated team member
|
|
64
|
-
* @throws {APIError} If the update operation fails
|
|
65
|
-
*
|
|
66
|
-
* @example
|
|
67
|
-
* ```typescript
|
|
68
|
-
* const updatedMember = await repo.updateTeamMember("member-id", {
|
|
69
|
-
* name: "Updated Name",
|
|
70
|
-
* roleId: "new-role-id"
|
|
71
|
-
* });
|
|
72
|
-
* ```
|
|
73
|
-
*/
|
|
74
|
-
updateTeamMember(id: string, input: UpdateTeamMemberRequestDTO): Promise<TeamMember>;
|
|
75
|
-
/**
|
|
76
|
-
* Archives (soft deletes) a team member by ID.
|
|
77
|
-
*
|
|
78
|
-
* @param id - The unique identifier of the team member to archive
|
|
79
|
-
* @returns Promise that resolves to the updated team member object
|
|
80
|
-
* @throws {APIError} If the archive operation fails
|
|
81
|
-
*
|
|
82
|
-
* @example
|
|
83
|
-
* ```typescript
|
|
84
|
-
* const archivedMember = await repo.archiveTeamMember("member-id");
|
|
85
|
-
* ```
|
|
86
|
-
*/
|
|
87
|
-
archiveTeamMember(id: string): Promise<TeamMember>;
|
|
88
|
-
/**
|
|
89
|
-
* Unarchives a previously archived team member by ID.
|
|
90
|
-
*
|
|
91
|
-
* @param id - The unique identifier of the team member to unarchive
|
|
92
|
-
* @returns Promise that resolves to the updated team member object
|
|
93
|
-
* @throws {APIError} If the unarchive operation fails
|
|
94
|
-
*
|
|
95
|
-
* @example
|
|
96
|
-
* ```typescript
|
|
97
|
-
* const restoredMember = await repo.unArchiveTeamMember("member-id");
|
|
98
|
-
* ```
|
|
99
|
-
*/
|
|
100
|
-
unArchiveTeamMember(id: string): Promise<TeamMember>;
|
|
101
|
-
/**
|
|
102
|
-
* Resets a team member's password.
|
|
103
|
-
*
|
|
104
|
-
* @param id - The unique identifier of the team member
|
|
105
|
-
* @param input - Optional password reset configuration
|
|
106
|
-
* @returns Promise that resolves to success status
|
|
107
|
-
* @throws {APIError} If the password reset operation fails
|
|
108
|
-
*
|
|
109
|
-
* @example
|
|
110
|
-
* ```typescript
|
|
111
|
-
* const result = await repo.resetTeamMemberPassword("member-id", {
|
|
112
|
-
* sendNotification: true
|
|
113
|
-
* });
|
|
114
|
-
* ```
|
|
115
|
-
*/
|
|
116
|
-
resetTeamMemberPassword(id: string, input?: ResetPasswordRequestDTO): Promise<{
|
|
117
|
-
success: boolean;
|
|
118
|
-
}>;
|
|
119
|
-
/**
|
|
120
|
-
* Retrieves all team members.
|
|
121
|
-
* Results are ordered in descending order by creation date by default.
|
|
122
|
-
*
|
|
123
|
-
* @param query - Optional query parameters for filtering and eager loading
|
|
124
|
-
* @returns Promise that resolves to an array of team members
|
|
125
|
-
* @throws {APIError} If the fetch operation fails
|
|
126
|
-
*
|
|
127
|
-
* @example
|
|
128
|
-
* ```typescript
|
|
129
|
-
* // Get all team members with role information
|
|
130
|
-
* const members = await repo.getAllTeamMembers({ eager: "role" });
|
|
131
|
-
*
|
|
132
|
-
* // Get team members with custom query
|
|
133
|
-
* const activeMembers = await repo.getAllTeamMembers({ isActive: 1 });
|
|
134
|
-
* ```
|
|
135
|
-
*/
|
|
136
|
-
getAllTeamMembers(query?: TeamMemberQueryParamsDTO): Promise<TeamMember[]>;
|
|
137
|
-
/**
|
|
138
|
-
* Retrieves a specific team member by ID.
|
|
139
|
-
*
|
|
140
|
-
* @param id - The unique identifier of the team member to retrieve
|
|
141
|
-
* @param query - Optional query parameters for eager loading
|
|
142
|
-
* @returns Promise that resolves to the team member
|
|
143
|
-
* @throws {APIError} If the team member is not found or fetch operation fails
|
|
144
|
-
*
|
|
145
|
-
* @example
|
|
146
|
-
* ```typescript
|
|
147
|
-
* const member = await repo.getTeamMember("member-id", { eager: "role" });
|
|
148
|
-
* console.log(`Member: ${member.name}, Role: ${member.role?.name}`);
|
|
149
|
-
* ```
|
|
150
|
-
*/
|
|
151
|
-
getTeamMember(id: string, query?: TeamMemberQueryParamsDTO): Promise<TeamMember>;
|
|
152
|
-
/**
|
|
153
|
-
* Retrieves all available roles in the system.
|
|
154
|
-
*
|
|
155
|
-
* @returns Promise that resolves to an array of roles
|
|
156
|
-
* @throws {APIError} If the fetch operation fails
|
|
157
|
-
*
|
|
158
|
-
* @example
|
|
159
|
-
* ```typescript
|
|
160
|
-
* const roles = await repo.getAllRoles();
|
|
161
|
-
* roles.forEach(role => console.log(`Role: ${role.name}`));
|
|
162
|
-
* ```
|
|
163
|
-
*/
|
|
164
|
-
getAllRoles(): Promise<Role[]>;
|
|
165
|
-
/**
|
|
166
|
-
* Retrieves a specific role by ID.
|
|
167
|
-
*
|
|
168
|
-
* @param id - The unique identifier of the role to retrieve
|
|
169
|
-
* @returns Promise that resolves to the role
|
|
170
|
-
* @throws {APIError} If the role is not found or fetch operation fails
|
|
171
|
-
*
|
|
172
|
-
* @example
|
|
173
|
-
* ```typescript
|
|
174
|
-
* const role = await repo.getRole("role-id");
|
|
175
|
-
* console.log(`Role: ${role.name}, Permissions: ${role.permissions.size}`);
|
|
176
|
-
* ```
|
|
177
|
-
*/
|
|
178
|
-
getRole(id: string): Promise<Role>;
|
|
179
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export * from "./wallet.dtos.js";
|
|
2
|
-
export * from "./wallet.model.js";
|
|
3
|
-
export * from "./statement-entry.model.js";
|
|
4
|
-
export * from "./narration.model.js";
|
|
5
|
-
export * from "./wallet.repository.js";
|
|
6
|
-
export * from "./wallet.utils.js";
|
|
7
|
-
export * from "./wallet-manager.session.js";
|
|
@@ -1,225 +0,0 @@
|
|
|
1
|
-
import { ContactInfo, MobileContactInfo, BankContactInfo } from "../contact/contact-info.model.js";
|
|
2
|
-
import z from "zod";
|
|
3
|
-
/** Prefix for Ecobank mobile transfer narrations */
|
|
4
|
-
export declare const ECOBANK_PREFIX = "MOBILE TRANSFER ";
|
|
5
|
-
/** V2 format prefix for payout narrations using contact details */
|
|
6
|
-
export declare const NARR_V2_PREFIX: string;
|
|
7
|
-
/** V1 format prefix for bank payout narrations */
|
|
8
|
-
export declare const BANK_NARR_PREFIX: string;
|
|
9
|
-
/** Legacy format prefix for bank payout narrations */
|
|
10
|
-
export declare const LEGACY_BANK_NARR_PREFIX: string;
|
|
11
|
-
/** V1 format prefix for mobile money payout narrations */
|
|
12
|
-
export declare const MOBILE_NARR_PREFIX: string;
|
|
13
|
-
/** Legacy format prefix for mobile money payout narrations */
|
|
14
|
-
export declare const LEGACY_MOBILE_NARR_PREFIX: string;
|
|
15
|
-
/**
|
|
16
|
-
* Zod schema for Narration JSON serialization
|
|
17
|
-
*/
|
|
18
|
-
export declare const NarrationJSONSchema: z.ZodObject<{
|
|
19
|
-
text: z.ZodString;
|
|
20
|
-
version: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
21
|
-
}, "strip", z.ZodTypeAny, {
|
|
22
|
-
version: string;
|
|
23
|
-
text: string;
|
|
24
|
-
}, {
|
|
25
|
-
text: string;
|
|
26
|
-
version?: string | undefined;
|
|
27
|
-
}>;
|
|
28
|
-
export type NarrationJSON = z.infer<typeof NarrationJSONSchema>;
|
|
29
|
-
/**
|
|
30
|
-
* Handles payout narration generation and parsing for the Afloat platform.
|
|
31
|
-
*
|
|
32
|
-
* This class provides functionality to:
|
|
33
|
-
* - Generate standardized payout narrations using contact details (V2 format)
|
|
34
|
-
* - Parse existing narrations to extract contact information
|
|
35
|
-
* - Format narration text for different display contexts
|
|
36
|
-
* - Handle V2 (PAY format), V1, and legacy narration formats for backward compatibility
|
|
37
|
-
* - Serialize/deserialize to/from JSON format
|
|
38
|
-
*
|
|
39
|
-
* @example
|
|
40
|
-
* ```typescript
|
|
41
|
-
* // Generate V2 narration using contact info
|
|
42
|
-
* const mobileContact = new MobileContactInfo("John Doe", phoneNumber);
|
|
43
|
-
* const narration = Narration.generateDefaultPayoutNarration(mobileContact);
|
|
44
|
-
* // Result: "PAYOUT +255123456789 JOHN DOE"
|
|
45
|
-
*
|
|
46
|
-
* const bankContact = new BankContactInfo("Jane Smith", bank, "1234567890");
|
|
47
|
-
* const narration = Narration.generateDefaultPayoutNarration(bankContact);
|
|
48
|
-
* // Result: "PAYOUT CORUTZTZ 1234567890 JANE SMITH"
|
|
49
|
-
*
|
|
50
|
-
* // Extract contact details from narration
|
|
51
|
-
* const existingNarration = new Narration("PAYOUT +255123456789 JOHN DOE");
|
|
52
|
-
* const contactInfo = existingNarration.getContactDetails();
|
|
53
|
-
* // Returns: MobileContactInfo instance
|
|
54
|
-
* ```
|
|
55
|
-
*/
|
|
56
|
-
export declare class Narration {
|
|
57
|
-
/** The raw narration text */
|
|
58
|
-
text: string;
|
|
59
|
-
/**
|
|
60
|
-
* Creates a new Narration instance.
|
|
61
|
-
*
|
|
62
|
-
* @param text - The narration text to wrap
|
|
63
|
-
*/
|
|
64
|
-
constructor(text: string);
|
|
65
|
-
/**
|
|
66
|
-
* Returns a medium-length version of the narration text suitable for table columns.
|
|
67
|
-
* Truncates to 47 characters + "..." if longer than 50 characters.
|
|
68
|
-
*
|
|
69
|
-
* @returns Truncated narration text for medium-width displays
|
|
70
|
-
*/
|
|
71
|
-
get mediumText(): string;
|
|
72
|
-
/**
|
|
73
|
-
* Returns a short version of the narration text suitable for compact displays.
|
|
74
|
-
* Truncates to 32 characters + "..." if longer than 35 characters.
|
|
75
|
-
*
|
|
76
|
-
* @returns Truncated narration text for narrow displays
|
|
77
|
-
*/
|
|
78
|
-
get shortText(): string;
|
|
79
|
-
/**
|
|
80
|
-
* Generates the default payout narration based on contact information using the V2 format.
|
|
81
|
-
* Automatically determines whether to generate mobile or bank narration based on contact type.
|
|
82
|
-
*
|
|
83
|
-
* @param data - Contact information (either MobileContactInfo or BankContactInfo)
|
|
84
|
-
* @returns Formatted default narration string in uppercase using V2 format, or empty string if contact type is unrecognized
|
|
85
|
-
*
|
|
86
|
-
* @example
|
|
87
|
-
* ```typescript
|
|
88
|
-
* const mobileContact = new MobileContactInfo("John Doe", phoneNumber);
|
|
89
|
-
* const narration = Narration.generateDefaultPayoutNarration(mobileContact);
|
|
90
|
-
* // Returns: "PAYOUT +255123456789 JOHN DOE"
|
|
91
|
-
*
|
|
92
|
-
* const bankContact = new BankContactInfo("Jane Smith", bank, "1234567890");
|
|
93
|
-
* const narration = Narration.generateDefaultPayoutNarration(bankContact);
|
|
94
|
-
* // Returns: "PAYOUT CORUTZTZ 1234567890 JANE SMITH"
|
|
95
|
-
* ```
|
|
96
|
-
*/
|
|
97
|
-
static generateDefaultPayoutNarration(data: ContactInfo): string;
|
|
98
|
-
/**
|
|
99
|
-
* Generates a V2 standardized mobile money payout narration with contact details.
|
|
100
|
-
* Format: "PAY {phone_number} {name}"
|
|
101
|
-
*
|
|
102
|
-
* @param data - Mobile contact information containing phone number and name
|
|
103
|
-
* @returns Formatted V2 mobile payout narration in uppercase
|
|
104
|
-
*
|
|
105
|
-
* @example
|
|
106
|
-
* ```typescript
|
|
107
|
-
* const contact = new MobileContactInfo("John Doe", phoneNumber);
|
|
108
|
-
* const narration = Narration.generateMobilePayoutNarrationV2(contact);
|
|
109
|
-
* // Returns: "PAYOUT +255123456789 JOHN DOE"
|
|
110
|
-
* ```
|
|
111
|
-
*/
|
|
112
|
-
static generateMobilePayoutNarrationV2(data: MobileContactInfo): string;
|
|
113
|
-
/**
|
|
114
|
-
* Generates a V2 standardized bank payout narration with contact details.
|
|
115
|
-
* Format: "PAY {swift_code} {account_number} {account_name}"
|
|
116
|
-
*
|
|
117
|
-
* @param data - Bank contact information containing bank details, account number, and account name
|
|
118
|
-
* @returns Formatted V2 bank payout narration in uppercase
|
|
119
|
-
*
|
|
120
|
-
* @example
|
|
121
|
-
* ```typescript
|
|
122
|
-
* const contact = new BankContactInfo("Jane Smith", bank, "1234567890");
|
|
123
|
-
* const narration = Narration.generateBankPayoutNarrationV2(contact);
|
|
124
|
-
* // Returns: "PAYOUT CORUTZTZ 1234567890 JANE SMITH"
|
|
125
|
-
* ```
|
|
126
|
-
*/
|
|
127
|
-
static generateBankPayoutNarrationV2(data: BankContactInfo): string;
|
|
128
|
-
/**
|
|
129
|
-
* Extracts contact information from the narration text.
|
|
130
|
-
* Supports V2 (PAY format), V1, and legacy formats for comprehensive contact detection.
|
|
131
|
-
*
|
|
132
|
-
* @returns Parsed ContactInfo (BankContactInfo or MobileContactInfo) if successful, undefined otherwise
|
|
133
|
-
*
|
|
134
|
-
* @example
|
|
135
|
-
* ```typescript
|
|
136
|
-
* // V2 format
|
|
137
|
-
* const v2Narration = new Narration("PAYOUT +255123456789 JOHN DOE");
|
|
138
|
-
* const v2Contact = v2Narration.getContactDetails();
|
|
139
|
-
* // Returns: MobileContactInfo instance
|
|
140
|
-
*
|
|
141
|
-
* // V1 format
|
|
142
|
-
* const v1Narration = new Narration("PAYOUT TO BANK CRDB 1234567890 Jane Smith");
|
|
143
|
-
* const v1Contact = v1Narration.getContactDetails();
|
|
144
|
-
* // Returns: BankContactInfo instance
|
|
145
|
-
* ```
|
|
146
|
-
*/
|
|
147
|
-
getContactDetails: () => ContactInfo | undefined;
|
|
148
|
-
/**
|
|
149
|
-
* Extracts bank contact information from the narration text.
|
|
150
|
-
* Handles V2 format (PAY with SWIFT code and details), V1 format, and legacy format.
|
|
151
|
-
* Also handles Ecobank-prefixed narrations by stripping the prefix.
|
|
152
|
-
*
|
|
153
|
-
* V2 format: "PAYOUT {swift_code} {account_number} {account_name}"
|
|
154
|
-
* V1 format: "PAYOUT TO BANK {bank_name} {account_number} {account_name}"
|
|
155
|
-
* Legacy format: "TO_BANK => {json_object}"
|
|
156
|
-
*
|
|
157
|
-
* @returns BankContactInfo if parsing is successful, undefined otherwise
|
|
158
|
-
*
|
|
159
|
-
* @example
|
|
160
|
-
* ```typescript
|
|
161
|
-
* // V2 format
|
|
162
|
-
* const v2Narration = new Narration("PAYOUT CORUTZTZ 1234567890 JANE SMITH");
|
|
163
|
-
* const v2Contact = v2Narration.getBankContactDetails();
|
|
164
|
-
*
|
|
165
|
-
* // V1 format
|
|
166
|
-
* const v1Narration = new Narration("PAYOUT TO BANK CRDB 1234567890 Jane Smith");
|
|
167
|
-
* const v1Contact = v1Narration.getBankContactDetails();
|
|
168
|
-
* ```
|
|
169
|
-
*/
|
|
170
|
-
getBankContactDetails: () => BankContactInfo | undefined;
|
|
171
|
-
/**
|
|
172
|
-
* Extracts mobile contact information from the narration text.
|
|
173
|
-
* Handles V2 format (PAY with phone number and name), V1 format, and legacy format.
|
|
174
|
-
* Also handles Ecobank-prefixed narrations by stripping the prefix.
|
|
175
|
-
*
|
|
176
|
-
* V2 format: "PAYOUT {phone_number} {name}"
|
|
177
|
-
* V1 format: "PAYOUT TO MOBILE {phone_number} {name}"
|
|
178
|
-
* Legacy format: "TO_MOMO => {json_object}"
|
|
179
|
-
*
|
|
180
|
-
* @returns MobileContactInfo if parsing is successful, undefined otherwise
|
|
181
|
-
*
|
|
182
|
-
* @example
|
|
183
|
-
* ```typescript
|
|
184
|
-
* // V2 format
|
|
185
|
-
* const v2Narration = new Narration("PAYOUT +255123456789 JOHN DOE");
|
|
186
|
-
* const v2Contact = v2Narration.getMobileContactDetails();
|
|
187
|
-
*
|
|
188
|
-
* // V1 format
|
|
189
|
-
* const v1Narration = new Narration("PAYOUT TO MOBILE +255123456789 John Doe");
|
|
190
|
-
* const v1Contact = v1Narration.getMobileContactDetails();
|
|
191
|
-
* ```
|
|
192
|
-
*/
|
|
193
|
-
getMobileContactDetails: () => MobileContactInfo | undefined;
|
|
194
|
-
/**
|
|
195
|
-
* Type guard to check if an unknown object is a valid Narration instance.
|
|
196
|
-
*
|
|
197
|
-
* @param obj - The object to check
|
|
198
|
-
* @returns Type predicate indicating if the object is a Narration instance
|
|
199
|
-
*/
|
|
200
|
-
static is(obj: unknown): obj is Narration;
|
|
201
|
-
/**
|
|
202
|
-
* Serializes the Narration instance to a JSON-compatible object
|
|
203
|
-
*/
|
|
204
|
-
toJSON(): NarrationJSON;
|
|
205
|
-
/**
|
|
206
|
-
* Serializes the Narration instance to a JSON string
|
|
207
|
-
*/
|
|
208
|
-
toJSONString(): string;
|
|
209
|
-
/**
|
|
210
|
-
* Creates a Narration instance from a JSON-compatible object or string
|
|
211
|
-
*/
|
|
212
|
-
static fromJSON(json: NarrationJSON | string): Narration | undefined;
|
|
213
|
-
/**
|
|
214
|
-
* Type guard using Zod schema validation
|
|
215
|
-
*/
|
|
216
|
-
static isNarrationJSON(obj: unknown): obj is NarrationJSON;
|
|
217
|
-
/**
|
|
218
|
-
* @deprecated Use toJSON() instead
|
|
219
|
-
*/
|
|
220
|
-
toJson(): NarrationJSON;
|
|
221
|
-
/**
|
|
222
|
-
* @deprecated Use fromJSON() instead
|
|
223
|
-
*/
|
|
224
|
-
static fromJson(json: NarrationJSON | string): Narration | undefined;
|
|
225
|
-
}
|