@posiwise/admin-module 0.0.235 → 0.0.237

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/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@posiwise/admin-module",
3
- "version": "0.0.235",
3
+ "version": "0.0.237",
4
4
  "peerDependencies": {
5
- "@angular/common": "^21.2.6",
6
- "@angular/core": "^21.2.6",
5
+ "@angular/common": "^21.2.19",
6
+ "@angular/core": "^21.2.19",
7
7
  "ngx-json-viewer": "^3.2.1",
8
8
  "ngx-quill": "^27.0.0"
9
9
  },
@@ -3,7 +3,8 @@ import { Injector, OnInit, OnDestroy, ChangeDetectorRef, AfterViewInit, QueryLis
3
3
  import { PermissionService, AuthService, CommonService, ProductService, SubscriptionService, NgbDateCustomParserFormatter, TagService, TipsService, GroupService, CustomToastService, WindowService, AhoyService, UserService, FeatureFlagService } from '@posiwise/common-services';
4
4
  import { MenuItem, LazyLoadEvent, SelectItem } from 'primeng/api';
5
5
  import { AppBaseComponent } from '@posiwise/app-base-component';
6
- import { AdminService, McpOauthClient, McpOauthClientService, AdminDataService } from '@posiwise/admin-module-utils';
6
+ import * as _posiwise_admin_module_utils from '@posiwise/admin-module-utils';
7
+ import { AdminService, PayoutProvider, McpOauthClient, McpOauthClientService, AdminDataService } from '@posiwise/admin-module-utils';
7
8
  import * as i127 from '@posiwise/shared-components';
8
9
  import { ConfirmDialogService, PermissionTreeComponent, CollapsibleSidebarService, PasswordValidationComponent } from '@posiwise/shared-components';
9
10
  import * as _angular_forms from '@angular/forms';
@@ -2226,9 +2227,38 @@ declare class AgentDetailsComponent extends AppBaseComponent implements OnInit,
2226
2227
  agentId: number;
2227
2228
  allUsers: any[];
2228
2229
  filteredUsers: any[];
2230
+ readonly payoutProviders: _posiwise_admin_module_utils.PayoutProviderDefinition[];
2231
+ /** False when the API returns a provider this build does not know. */
2232
+ payoutProviderSupported: boolean;
2233
+ /**
2234
+ * AI54 loading gate. The provider control defaults to PayPal, so rendering
2235
+ * it before the agent resolves shows a confident "PayPal" for an ambassador
2236
+ * who is actually on another rail — a blank input reads as "not loaded", a
2237
+ * populated dropdown reads as fact.
2238
+ */
2239
+ payoutLoaded: boolean;
2229
2240
  constructor(adminService: AdminService, groupService: GroupService, config: NgbDatepickerConfig, injector: Injector, cdr: ChangeDetectorRef);
2230
2241
  ngOnInit(): void;
2231
2242
  private getAgentsDetails;
2243
+ /**
2244
+ * Populates the provider dropdown + its destination fields from the API.
2245
+ *
2246
+ * A provider this build does not know (backend shipped a third rail first)
2247
+ * must NOT be coerced to PayPal: doing so would render a blank "PayPal
2248
+ * email" box as if it were the agent's destination and overwrite their real
2249
+ * bank details on save. Instead the payout section is left unvalidated and
2250
+ * excluded from the update payload.
2251
+ */
2252
+ private applyPayoutSelection;
2253
+ /** Re-points `required` at the newly selected provider's fields, so the
2254
+ * hidden provider's inputs can never block submission. */
2255
+ onPayoutProviderChange(provider: PayoutProvider): void;
2256
+ /** Only the selected rail's fields — a SWIFT code and a domestic routing
2257
+ * code are alternatives, never both. */
2258
+ get payoutFields(): _posiwise_admin_module_utils.PayoutFieldDefinition[];
2259
+ /** The rail dropdown changes which fields are required, so validators are
2260
+ * re-pointed exactly as on a provider change. */
2261
+ onTransferMethodChange(): void;
2232
2262
  updateDetails(): void;
2233
2263
  private getUsers;
2234
2264
  search(event: any): void;
@@ -4931,6 +4961,29 @@ declare class SubscriptionAgentsListComponent extends AppBaseComponent implement
4931
4961
  private getAgentsDetails;
4932
4962
  private getUsers;
4933
4963
  search(event: any): void;
4964
+ readonly payoutProviders: _posiwise_admin_module_utils.PayoutProviderDefinition[];
4965
+ /** Only the selected rail's fields — see visiblePayoutFields. */
4966
+ get payoutFields(): _posiwise_admin_module_utils.PayoutFieldDefinition[];
4967
+ /** The rail changes which fields are required, so it re-syncs validators
4968
+ * exactly as a provider change does. */
4969
+ onTransferMethodChange(): void;
4970
+ /**
4971
+ * This form creates ONE agent per selected ambassador, but a payout
4972
+ * destination (a PayPal address, a bank account) belongs to exactly one
4973
+ * person — applying it to a bulk selection would send several people's
4974
+ * commission to the same account. So the destination fields only appear for
4975
+ * a single selection; bulk-added ambassadors get the provider and fill in
4976
+ * their destination on the edit screen.
4977
+ */
4978
+ get isSingleAmbassadorSelected(): boolean;
4979
+ onPayoutProviderChange(_provider: PayoutProvider): void;
4980
+ /**
4981
+ * Validator state depends on BOTH the provider and how many ambassadors are
4982
+ * selected. On a bulk add the destination inputs are not rendered, so
4983
+ * leaving `required` on them would make the form invalid with nothing on
4984
+ * screen to fix — a silent dead end.
4985
+ */
4986
+ private syncPayoutValidators;
4934
4987
  onAddEmbassador(): void;
4935
4988
  onDelete(userId: number): void;
4936
4989
  static ɵfac: i0.ɵɵFactoryDeclaration<SubscriptionAgentsListComponent, never>;