@marqeta/ux-toolkit-sdk-javascript 2.29.0 → 2.30.0

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.
@@ -2512,6 +2512,123 @@ function _getPinByCardToken() {
2512
2512
  return _getPinByCardToken.apply(this, arguments);
2513
2513
  }
2514
2514
  __name(getPinByCardToken, "getPinByCardToken");
2515
+ function orderCard(orderRequest) {
2516
+ return _orderCard.apply(this, arguments);
2517
+ }
2518
+ function _orderCard() {
2519
+ _orderCard = // src/cards/base/interactors/orderCard.ts
2520
+ _async_to_generator(function(orderRequest) {
2521
+ var container2, cardRepository, result, error2;
2522
+ return _ts_generator(this, function(_state) {
2523
+ switch(_state.label){
2524
+ case 0:
2525
+ logDebug("Ordering card", {
2526
+ idType: orderRequest.idType,
2527
+ interactor: "orderCard"
2528
+ });
2529
+ _state.label = 1;
2530
+ case 1:
2531
+ _state.trys.push([
2532
+ 1,
2533
+ 3,
2534
+ ,
2535
+ 4
2536
+ ]);
2537
+ container2 = getActiveIocContainer();
2538
+ cardRepository = container2.get(ITF_CARD_REPOSITORY);
2539
+ return [
2540
+ 4,
2541
+ cardRepository.orderCard(orderRequest)
2542
+ ];
2543
+ case 2:
2544
+ result = _state.sent();
2545
+ logInfo("Card ordered successfully", {
2546
+ cardToken: result.token,
2547
+ state: result.state,
2548
+ interactor: "orderCard"
2549
+ });
2550
+ return [
2551
+ 2,
2552
+ result
2553
+ ];
2554
+ case 3:
2555
+ error2 = _state.sent();
2556
+ logError("Failed to order card", {
2557
+ error: error2,
2558
+ idType: orderRequest.idType,
2559
+ interactor: "orderCard"
2560
+ });
2561
+ throw error2;
2562
+ case 4:
2563
+ return [
2564
+ 2
2565
+ ];
2566
+ }
2567
+ });
2568
+ });
2569
+ return _orderCard.apply(this, arguments);
2570
+ }
2571
+ __name(orderCard, "orderCard");
2572
+ function replaceCardV2(replaceRequest) {
2573
+ return _replaceCardV2.apply(this, arguments);
2574
+ }
2575
+ function _replaceCardV2() {
2576
+ _replaceCardV2 = // src/cards/base/interactors/replaceCardV2.ts
2577
+ _async_to_generator(function(replaceRequest) {
2578
+ var container2, cardRepository, result, error2;
2579
+ return _ts_generator(this, function(_state) {
2580
+ switch(_state.label){
2581
+ case 0:
2582
+ logDebug("Replacing card v2", {
2583
+ cardToken: replaceRequest.cardToken,
2584
+ reason: replaceRequest.request.replacement_reason,
2585
+ interactor: "replaceCardV2"
2586
+ });
2587
+ _state.label = 1;
2588
+ case 1:
2589
+ _state.trys.push([
2590
+ 1,
2591
+ 3,
2592
+ ,
2593
+ 4
2594
+ ]);
2595
+ container2 = getActiveIocContainer();
2596
+ cardRepository = container2.get(ITF_CARD_REPOSITORY);
2597
+ return [
2598
+ 4,
2599
+ cardRepository.replaceCardV2(replaceRequest)
2600
+ ];
2601
+ case 2:
2602
+ result = _state.sent();
2603
+ logInfo("Card replaced successfully", {
2604
+ originalCardToken: replaceRequest.cardToken,
2605
+ newCardToken: result.replacement_card_token,
2606
+ terminatedCardToken: result.terminated_card_token,
2607
+ interactor: "replaceCardV2"
2608
+ });
2609
+ return [
2610
+ 2,
2611
+ result
2612
+ ];
2613
+ case 3:
2614
+ error2 = _state.sent();
2615
+ logError("Failed to replace card", {
2616
+ error: error2,
2617
+ cardToken: replaceRequest.cardToken,
2618
+ reason: replaceRequest.request.replacement_reason,
2619
+ interactor: "replaceCardV2"
2620
+ });
2621
+ throw error2;
2622
+ case 4:
2623
+ return [
2624
+ 2
2625
+ ];
2626
+ }
2627
+ });
2628
+ });
2629
+ return _replaceCardV2.apply(this, arguments);
2630
+ }
2631
+ __name(replaceCardV2, "replaceCardV2");
2515
2632
  // src/cards/base/repositories/iCardRepository.ts
2516
2633
  function _ts_decorate13(decorators, target, key, desc) {
2517
2634
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -3427,6 +3544,40 @@ var _MockCardRepository = /*#__PURE__*/ function() {
3427
3544
  });
3428
3545
  })();
3429
3546
  }
3547
+ },
3548
+ {
3549
+ key: "orderCard",
3550
+ value: function orderCard(orderRequest) {
3551
+ return _async_to_generator(function() {
3552
+ return _ts_generator(this, function(_state) {
3553
+ return [
3554
+ 2,
3555
+ {
3556
+ token: "mock-new-card-token",
3557
+ state: "UNACTIVATED",
3558
+ last_four: "5678",
3559
+ user_token: "mock-user-token"
3560
+ }
3561
+ ];
3562
+ });
3563
+ })();
3564
+ }
3565
+ },
3566
+ {
3567
+ key: "replaceCardV2",
3568
+ value: function replaceCardV2(replaceRequest) {
3569
+ return _async_to_generator(function() {
3570
+ return _ts_generator(this, function(_state) {
3571
+ return [
3572
+ 2,
3573
+ {
3574
+ replacement_card_token: "mock-replacement-card-token",
3575
+ terminated_card_token: replaceRequest.cardToken
3576
+ }
3577
+ ];
3578
+ });
3579
+ })();
3580
+ }
3430
3581
  }
3431
3582
  ]);
3432
3583
  return _MockCardRepository;
@@ -11405,6 +11556,144 @@ var _RestCardRepository = /*#__PURE__*/ function() {
11405
11556
  });
11406
11557
  })();
11407
11558
  }
11559
+ },
11560
+ {
11561
+ key: "orderCard",
11562
+ value: function orderCard(orderRequest) {
11563
+ var _this = this;
11564
+ return _async_to_generator(function() {
11565
+ var cuiApiBaseUrl, queryParams, path, params, result, error2;
11566
+ return _ts_generator(this, function(_state) {
11567
+ switch(_state.label){
11568
+ case 0:
11569
+ logDebug("Ordering card", {
11570
+ idType: orderRequest.idType,
11571
+ adapter: "RestCardRepository"
11572
+ });
11573
+ _state.label = 1;
11574
+ case 1:
11575
+ _state.trys.push([
11576
+ 1,
11577
+ 3,
11578
+ ,
11579
+ 4
11580
+ ]);
11581
+ cuiApiBaseUrl = getEnvConfigValueByName("CUI_API_BASE_URL");
11582
+ queryParams = new URLSearchParams();
11583
+ if (orderRequest.idType) {
11584
+ queryParams.append("id_type", orderRequest.idType);
11585
+ }
11586
+ path = "".concat(cuiApiBaseUrl, "/api/v2/users/cards").concat(queryParams.toString() ? "?".concat(queryParams.toString()) : "");
11587
+ params = {
11588
+ body: JSON.stringify(orderRequest.request),
11589
+ headers: _object_spread({
11590
+ "Content-Type": "application/json"
11591
+ }, getCommonApiHeaders())
11592
+ };
11593
+ return [
11594
+ 4,
11595
+ _this.httpClient.post(path, params)
11596
+ ];
11597
+ case 2:
11598
+ result = _state.sent();
11599
+ logInfo("Card ordered successfully", {
11600
+ cardToken: result.token,
11601
+ state: result.state,
11602
+ adapter: "RestCardRepository"
11603
+ });
11604
+ return [
11605
+ 2,
11606
+ result
11607
+ ];
11608
+ case 3:
11609
+ error2 = _state.sent();
11610
+ logError("Unable to order card", {
11611
+ error: error2,
11612
+ idType: orderRequest.idType,
11613
+ adapter: "RestCardRepository"
11614
+ });
11615
+ throw new MqSDKError("Unable to order card", error2);
11616
+ case 4:
11617
+ return [
11618
+ 2
11619
+ ];
11620
+ }
11621
+ });
11622
+ })();
11623
+ }
11624
+ },
11625
+ {
11626
+ key: "replaceCardV2",
11627
+ value: function replaceCardV2(replaceRequest) {
11628
+ var _this = this;
11629
+ return _async_to_generator(function() {
11630
+ var cuiApiBaseUrl, queryParams, path, params, result, error2;
11631
+ return _ts_generator(this, function(_state) {
11632
+ switch(_state.label){
11633
+ case 0:
11634
+ logDebug("Replacing card", {
11635
+ cardToken: replaceRequest.cardToken,
11636
+ reason: replaceRequest.request.replacement_reason,
11637
+ adapter: "RestCardRepository"
11638
+ });
11639
+ _state.label = 1;
11640
+ case 1:
11641
+ _state.trys.push([
11642
+ 1,
11643
+ 3,
11644
+ ,
11645
+ 4
11646
+ ]);
11647
+ cuiApiBaseUrl = getEnvConfigValueByName("CUI_API_BASE_URL");
11648
+ queryParams = new URLSearchParams([
11649
+ [
11650
+ "card_token",
11651
+ replaceRequest.cardToken
11652
+ ]
11653
+ ]);
11654
+ if (replaceRequest.idType) {
11655
+ queryParams.append("id_type", replaceRequest.idType);
11656
+ }
11657
+ path = "".concat(cuiApiBaseUrl, "/api/v2/users/cards/replacements?").concat(queryParams.toString());
11658
+ params = {
11659
+ body: JSON.stringify(replaceRequest.request),
11660
+ headers: _object_spread({
11661
+ "Content-Type": "application/json"
11662
+ }, getCommonApiHeaders())
11663
+ };
11664
+ return [
11665
+ 4,
11666
+ _this.httpClient.post(path, params)
11667
+ ];
11668
+ case 2:
11669
+ result = _state.sent();
11670
+ logInfo("Card replaced successfully", {
11671
+ originalCardToken: replaceRequest.cardToken,
11672
+ newCardToken: result.replacement_card_token,
11673
+ terminatedCardToken: result.terminated_card_token,
11674
+ adapter: "RestCardRepository"
11675
+ });
11676
+ return [
11677
+ 2,
11678
+ result
11679
+ ];
11680
+ case 3:
11681
+ error2 = _state.sent();
11682
+ logError("Unable to replace card", {
11683
+ error: error2,
11684
+ cardToken: replaceRequest.cardToken,
11685
+ reason: replaceRequest.request.replacement_reason,
11686
+ adapter: "RestCardRepository"
11687
+ });
11688
+ throw new MqSDKError("Unable to replace card", error2);
11689
+ case 4:
11690
+ return [
11691
+ 2
11692
+ ];
11693
+ }
11694
+ });
11695
+ })();
11696
+ }
11408
11697
  }
11409
11698
  ]);
11410
11699
  return _RestCardRepository;
@@ -12225,6 +12514,59 @@ function _getDepositAccounts() {
12225
12514
  return _getDepositAccounts.apply(this, arguments);
12226
12515
  }
12227
12516
  __name(getDepositAccounts, "getDepositAccounts");
12517
+ function getUserAccounts() {
12518
+ return _getUserAccounts.apply(this, arguments);
12519
+ }
12520
+ function _getUserAccounts() {
12521
+ _getUserAccounts = // src/accounts/base/interactors/getUserAccounts.ts
12522
+ _async_to_generator(function() {
12523
+ var container2, accountRepository, result, error2;
12524
+ return _ts_generator(this, function(_state) {
12525
+ switch(_state.label){
12526
+ case 0:
12527
+ logDebug("Getting user accounts", {
12528
+ interactor: "getUserAccounts"
12529
+ });
12530
+ _state.label = 1;
12531
+ case 1:
12532
+ _state.trys.push([
12533
+ 1,
12534
+ 3,
12535
+ ,
12536
+ 4
12537
+ ]);
12538
+ container2 = getActiveIocContainer();
12539
+ accountRepository = container2.get(ITF_ACCOUNT_REPOSITORY);
12540
+ return [
12541
+ 4,
12542
+ accountRepository.getUserAccounts()
12543
+ ];
12544
+ case 2:
12545
+ result = _state.sent();
12546
+ logInfo("User accounts retrieved successfully", {
12547
+ interactor: "getUserAccounts"
12548
+ });
12549
+ return [
12550
+ 2,
12551
+ result
12552
+ ];
12553
+ case 3:
12554
+ error2 = _state.sent();
12555
+ logError("Failed to get user accounts", {
12556
+ error: error2,
12557
+ interactor: "getUserAccounts"
12558
+ });
12559
+ throw error2;
12560
+ case 4:
12561
+ return [
12562
+ 2
12563
+ ];
12564
+ }
12565
+ });
12566
+ });
12567
+ return _getUserAccounts.apply(this, arguments);
12568
+ }
12569
+ __name(getUserAccounts, "getUserAccounts");
12228
12570
  // src/accounts/base/repositories/iAccountRepository.ts
12229
12571
  function _ts_decorate35(decorators, target, key, desc) {
12230
12572
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -12242,6 +12584,23 @@ iAccountRepository = exports.iAccountRepository = _ts_decorate35([
12242
12584
  _inversify.injectable.call(void 0)
12243
12585
  ], iAccountRepository);
12244
12586
  // src/accounts/base/repositories/MockAccountRepository.ts
12587
+ // src/accounts/base/types/UserAccountsResponse.ts
12588
+ var UserAccountStatus;
12589
+ (function(UserAccountStatus2) {
12590
+ UserAccountStatus2["Active"] = "ACTIVE";
12591
+ UserAccountStatus2["Suspended"] = "SUSPENDED";
12592
+ UserAccountStatus2["Terminated"] = "TERMINATED";
12593
+ UserAccountStatus2["Unactivated"] = "UNACTIVATED";
12594
+ UserAccountStatus2["ChargeOff"] = "CHARGE_OFF";
12595
+ })(UserAccountStatus || (UserAccountStatus = exports.UserAccountStatus = {}));
12596
+ var UserAccountType;
12597
+ (function(UserAccountType2) {
12598
+ UserAccountType2["Checking"] = "CHECKING";
12599
+ UserAccountType2["Savings"] = "SAVINGS";
12600
+ UserAccountType2["SecuredDepositAccount"] = "SECURED_DEPOSIT_ACCOUNT";
12601
+ UserAccountType2["Credit"] = "CREDIT";
12602
+ })(UserAccountType || (UserAccountType = exports.UserAccountType = {}));
12603
+ // src/accounts/base/repositories/MockAccountRepository.ts
12245
12604
  function _ts_decorate36(decorators, target, key, desc) {
12246
12605
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
12247
12606
  if ((typeof Reflect === "undefined" ? "undefined" : _type_of(Reflect)) === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -12260,6 +12619,50 @@ var TEST_DEPOSIT_ACCOUNT = {
12260
12619
  created_time: "",
12261
12620
  last_modified_time: ""
12262
12621
  };
12622
+ var TEST_USER_ACCOUNTS = {
12623
+ count: 2,
12624
+ start_index: 0,
12625
+ end_index: 1,
12626
+ is_more: false,
12627
+ data: [
12628
+ {
12629
+ token: "3d0cbd5d-a535-11f0-bd53-1dbc2894964f",
12630
+ type: UserAccountType.Credit,
12631
+ currency_code: "USD",
12632
+ balance: 0,
12633
+ last_four: "000",
12634
+ routing_number: "routing_number",
12635
+ account_number: "account_numer",
12636
+ branch_code: "branch_code",
12637
+ account_holder_name: "Sample Name",
12638
+ spendable_balance: 0,
12639
+ ledger_balance: 10,
12640
+ credit_balance_details: {
12641
+ credit_limit: 0,
12642
+ owed_balance: -2520,
12643
+ remaining_statement_owed_balance: 0,
12644
+ remaining_min_payment_owed: 0,
12645
+ payment_due_day: 31
12646
+ },
12647
+ status: UserAccountStatus.Active
12648
+ },
12649
+ {
12650
+ token: "3b425d72-a535-11f0-932e-19b50114b91f",
12651
+ type: UserAccountType.SecuredDepositAccount,
12652
+ currency_code: "USD",
12653
+ balance: 0,
12654
+ last_four: "0000",
12655
+ routing_number: "routing_number",
12656
+ account_number: "account_number",
12657
+ branch_code: "branch_code",
12658
+ account_holder_name: "Sample",
12659
+ spendable_balance: 0,
12660
+ ledger_balance: 0,
12661
+ credit_balance_details: {},
12662
+ status: UserAccountStatus.Active
12663
+ }
12664
+ ]
12665
+ };
12263
12666
  var _MockAccountRepository = /*#__PURE__*/ function() {
12264
12667
  function _MockAccountRepository() {
12265
12668
  _class_call_check(this, _MockAccountRepository);
@@ -12268,6 +12671,7 @@ var _MockAccountRepository = /*#__PURE__*/ function() {
12268
12671
  __publicField(this, "_depositAccountsResponse", [
12269
12672
  new DepositAccountEntity(TEST_DEPOSIT_ACCOUNT)
12270
12673
  ]);
12674
+ __publicField(this, "_userAccountsListResponse", TEST_USER_ACCOUNTS);
12271
12675
  }
12272
12676
  _create_class(_MockAccountRepository, [
12273
12677
  {
@@ -12288,6 +12692,12 @@ var _MockAccountRepository = /*#__PURE__*/ function() {
12288
12692
  this._depositAccountsResponse = response;
12289
12693
  }
12290
12694
  },
12695
+ {
12696
+ key: "setUserAccountsResponse",
12697
+ value: function setUserAccountsResponse(response) {
12698
+ this._userAccountsListResponse = response;
12699
+ }
12700
+ },
12291
12701
  {
12292
12702
  key: "getAccountHolderGroup",
12293
12703
  value: function getAccountHolderGroup(shortCode) {
@@ -12341,6 +12751,23 @@ var _MockAccountRepository = /*#__PURE__*/ function() {
12341
12751
  });
12342
12752
  })();
12343
12753
  }
12754
+ },
12755
+ {
12756
+ key: "getUserAccounts",
12757
+ value: function getUserAccounts() {
12758
+ var _this = this;
12759
+ return _async_to_generator(function() {
12760
+ return _ts_generator(this, function(_state) {
12761
+ if (_instanceof(_this._userAccountsListResponse, Error)) {
12762
+ throw _this._userAccountsListResponse;
12763
+ }
12764
+ return [
12765
+ 2,
12766
+ _this._userAccountsListResponse
12767
+ ];
12768
+ });
12769
+ })();
12770
+ }
12344
12771
  }
12345
12772
  ]);
12346
12773
  return _MockAccountRepository;
@@ -12589,6 +13016,61 @@ var _RestAccountRepository = /*#__PURE__*/ function() {
12589
13016
  });
12590
13017
  })();
12591
13018
  }
13019
+ },
13020
+ {
13021
+ key: "getUserAccounts",
13022
+ value: function getUserAccounts() {
13023
+ var _this = this;
13024
+ return _async_to_generator(function() {
13025
+ var cuiApiBaseUrl, path, params, data, err;
13026
+ return _ts_generator(this, function(_state) {
13027
+ switch(_state.label){
13028
+ case 0:
13029
+ logDebug("Getting user accounts", {
13030
+ adapter: "RestAccountRepository"
13031
+ });
13032
+ _state.label = 1;
13033
+ case 1:
13034
+ _state.trys.push([
13035
+ 1,
13036
+ 3,
13037
+ ,
13038
+ 4
13039
+ ]);
13040
+ cuiApiBaseUrl = getEnvConfigValueByName("CUI_API_BASE_URL");
13041
+ path = "".concat(cuiApiBaseUrl, "/api/v2/users/accounts");
13042
+ params = {
13043
+ method: "GET",
13044
+ headers: getCommonApiHeaders()
13045
+ };
13046
+ return [
13047
+ 4,
13048
+ _this.httpClient.get(path, params)
13049
+ ];
13050
+ case 2:
13051
+ data = _state.sent();
13052
+ logInfo("User accounts retrieved successfully", {
13053
+ adapter: "RestAccountRepository"
13054
+ });
13055
+ return [
13056
+ 2,
13057
+ data
13058
+ ];
13059
+ case 3:
13060
+ err = _state.sent();
13061
+ logError("Unable to retrieve user accounts", {
13062
+ err: err,
13063
+ adapter: "RestAccountRepository"
13064
+ });
13065
+ throw new MqSDKError("Unable to retrieve user accounts", err);
13066
+ case 4:
13067
+ return [
13068
+ 2
13069
+ ];
13070
+ }
13071
+ });
13072
+ })();
13073
+ }
12592
13074
  }
12593
13075
  ]);
12594
13076
  return _RestAccountRepository;
@@ -12619,6 +13101,30 @@ var ACCOUNT_UNVERIFIED_CUI_AUTH_TOKEN = "ACCOUNT_UNVERIFIED_CUI_AUTH_TOKEN";
12619
13101
  var ACCOUNT_SUSPENDED_CUI_AUTH_TOKEN = "ACCOUNT_SUSPENDED_CUI_AUTH_TOKEN";
12620
13102
  var ACCOUNT_CLOSED_CUI_AUTH_TOKEN = "ACCOUNT_CLOSED_CUI_AUTH_TOKEN";
12621
13103
  // src/accounts/adapters/rest/httpMocks.ts
13104
+ var mockUserAccounts = {
13105
+ count: 2,
13106
+ start_index: 0,
13107
+ end_index: 1,
13108
+ is_more: false,
13109
+ data: [
13110
+ {
13111
+ token: "account_token_1",
13112
+ type: UserAccountType.Checking,
13113
+ balance: 1000.5,
13114
+ currency_code: "USD",
13115
+ last_four: "1234",
13116
+ account_number: "1234567890",
13117
+ routing_number: "123456789"
13118
+ },
13119
+ {
13120
+ token: "account_token_2",
13121
+ type: UserAccountType.Savings,
13122
+ balance: 5e3,
13123
+ currency_code: "USD",
13124
+ last_four: "5678"
13125
+ }
13126
+ ]
13127
+ };
12622
13128
  var mswAccountHandlers = [
12623
13129
  // Simulate account holder group statuses by different user tokens
12624
13130
  http.get("".concat(mockMode_exports.CUI_API_BASE_URL, "/api/v1/accountholdergroup"), function() {
@@ -12784,6 +13290,9 @@ var mswAccountHandlers = [
12784
13290
  ok: true,
12785
13291
  status: 200
12786
13292
  });
13293
+ }),
13294
+ http.get("".concat(mockMode_exports.CUI_API_BASE_URL, "/api/v2/users/accounts"), function() {
13295
+ return HttpResponse.json(mockUserAccounts);
12787
13296
  })
12788
13297
  ];
12789
13298
  // src/analytics/ioc/symbols.ts
@@ -23113,6 +23622,7 @@ var _MockTransactionsRepository = /*#__PURE__*/ function() {
23113
23622
  function _MockTransactionsRepository() {
23114
23623
  _class_call_check(this, _MockTransactionsRepository);
23115
23624
  __publicField(this, "transactionDetailsIndex", {});
23625
+ __publicField(this, "transactionByTokenIndex", {});
23116
23626
  __publicField(this, "transactionsStore", {
23117
23627
  pending: [],
23118
23628
  transactions: []
@@ -23233,6 +23743,36 @@ var _MockTransactionsRepository = /*#__PURE__*/ function() {
23233
23743
  });
23234
23744
  })();
23235
23745
  }
23746
+ },
23747
+ {
23748
+ key: "loadTransactionByToken",
23749
+ value: function loadTransactionByToken(transactionToken, transaction) {
23750
+ this.transactionByTokenIndex[transactionToken] = transaction;
23751
+ }
23752
+ },
23753
+ {
23754
+ key: "getTransactionByToken",
23755
+ value: function getTransactionByToken(request) {
23756
+ var _this = this;
23757
+ return _async_to_generator(function() {
23758
+ var transaction;
23759
+ return _ts_generator(this, function(_state) {
23760
+ try {
23761
+ transaction = _this.transactionByTokenIndex[request.transaction_token];
23762
+ if (!transaction) throw new Error("Transaction not found");
23763
+ return [
23764
+ 2,
23765
+ transaction
23766
+ ];
23767
+ } catch (err) {
23768
+ throw new MqSDKError("Unable to get transaction by token", err);
23769
+ }
23770
+ return [
23771
+ 2
23772
+ ];
23773
+ });
23774
+ })();
23775
+ }
23236
23776
  }
23237
23777
  ]);
23238
23778
  return _MockTransactionsRepository;
@@ -23507,6 +24047,62 @@ function _getUserTransactionsV2() {
23507
24047
  return _getUserTransactionsV2.apply(this, arguments);
23508
24048
  }
23509
24049
  __name(getUserTransactionsV2, "getUserTransactionsV2");
24050
+ function getTransactionByToken(request) {
24051
+ return _getTransactionByToken.apply(this, arguments);
24052
+ }
24053
+ function _getTransactionByToken() {
24054
+ _getTransactionByToken = // src/transactions/base/interactors/getTransactionByToken.ts
24055
+ _async_to_generator(function(request) {
24056
+ var container2, transactionsRepository, transaction, error2;
24057
+ return _ts_generator(this, function(_state) {
24058
+ switch(_state.label){
24059
+ case 0:
24060
+ logDebug("Getting transaction by token", {
24061
+ transaction_token: request.transaction_token,
24062
+ interactor: "getTransactionByToken"
24063
+ });
24064
+ _state.label = 1;
24065
+ case 1:
24066
+ _state.trys.push([
24067
+ 1,
24068
+ 3,
24069
+ ,
24070
+ 4
24071
+ ]);
24072
+ container2 = getActiveIocContainer();
24073
+ transactionsRepository = container2.get(ITF_TRANSACTIONS);
24074
+ return [
24075
+ 4,
24076
+ transactionsRepository.getTransactionByToken(request)
24077
+ ];
24078
+ case 2:
24079
+ transaction = _state.sent();
24080
+ logInfo("Transaction retrieved successfully by token", {
24081
+ transaction_token: request.transaction_token,
24082
+ interactor: "getTransactionByToken"
24083
+ });
24084
+ return [
24085
+ 2,
24086
+ transaction
24087
+ ];
24088
+ case 3:
24089
+ error2 = _state.sent();
24090
+ logError("Failed to get transaction by token", {
24091
+ error: error2,
24092
+ transaction_token: request.transaction_token,
24093
+ interactor: "getTransactionByToken"
24094
+ });
24095
+ throw error2;
24096
+ case 4:
24097
+ return [
24098
+ 2
24099
+ ];
24100
+ }
24101
+ });
24102
+ });
24103
+ return _getTransactionByToken.apply(this, arguments);
24104
+ }
24105
+ __name(getTransactionByToken, "getTransactionByToken");
23510
24106
  // src/transactions/base/types/transactionV2Types.ts
23511
24107
  var TransactionDetailIconTypeEnum;
23512
24108
  (function(TransactionDetailIconTypeEnum2) {
@@ -23810,6 +24406,71 @@ var _RestTransactionsRepository = /*#__PURE__*/ function() {
23810
24406
  });
23811
24407
  })();
23812
24408
  }
24409
+ },
24410
+ {
24411
+ key: "getTransactionByToken",
24412
+ value: function getTransactionByToken(request) {
24413
+ var _this = this;
24414
+ return _async_to_generator(function() {
24415
+ var cuiApiBaseUrl, queryParams, queryString, path, params, response, err;
24416
+ return _ts_generator(this, function(_state) {
24417
+ switch(_state.label){
24418
+ case 0:
24419
+ logDebug("Getting transaction by token", {
24420
+ transaction_token: request.transaction_token,
24421
+ adapter: "RestTransactionsRepository"
24422
+ });
24423
+ _state.label = 1;
24424
+ case 1:
24425
+ _state.trys.push([
24426
+ 1,
24427
+ 3,
24428
+ ,
24429
+ 4
24430
+ ]);
24431
+ cuiApiBaseUrl = getEnvConfigValueByName("CUI_API_BASE_URL");
24432
+ queryParams = new URLSearchParams();
24433
+ if (request.transaction_account_type) {
24434
+ queryParams.append("transaction_account_type", request.transaction_account_type);
24435
+ }
24436
+ if (request.account_token) {
24437
+ queryParams.append("account_token", request.account_token);
24438
+ }
24439
+ queryString = queryParams.toString();
24440
+ path = "".concat(cuiApiBaseUrl, "/api/v2/transactions/").concat(request.transaction_token).concat(queryString ? "?".concat(queryString) : "");
24441
+ params = {
24442
+ headers: getCommonApiHeaders()
24443
+ };
24444
+ return [
24445
+ 4,
24446
+ _this.httpClient.get(path, params)
24447
+ ];
24448
+ case 2:
24449
+ response = _state.sent();
24450
+ logInfo("Transaction retrieved successfully by token", {
24451
+ transaction_token: request.transaction_token,
24452
+ adapter: "RestTransactionsRepository"
24453
+ });
24454
+ return [
24455
+ 2,
24456
+ response
24457
+ ];
24458
+ case 3:
24459
+ err = _state.sent();
24460
+ logError("Unable to get transaction by token", {
24461
+ err: err,
24462
+ transaction_token: request.transaction_token,
24463
+ adapter: "RestTransactionsRepository"
24464
+ });
24465
+ throw new MqSDKError("Unable to get transaction by token", err);
24466
+ case 4:
24467
+ return [
24468
+ 2
24469
+ ];
24470
+ }
24471
+ });
24472
+ })();
24473
+ }
23813
24474
  }
23814
24475
  ]);
23815
24476
  return _RestTransactionsRepository;
@@ -24457,6 +25118,51 @@ var mswTransactionsHandlers = [
24457
25118
  })
24458
25119
  });
24459
25120
  }),
25121
+ http.get("".concat(mockMode_exports.CUI_API_BASE_URL, "/api/v2/transactions/:token"), function(param) {
25122
+ var request = param.request, params = param.params;
25123
+ var authorization = request.headers.get("authorization");
25124
+ var token = params.token;
25125
+ var url = new URL(request.url);
25126
+ var transactionAccountType = url.searchParams.get("transaction_account_type");
25127
+ var accountToken = url.searchParams.get("account_token");
25128
+ if (authorization === "DPoP ".concat(NOT_OK_CUI_AUTH_TOKEN)) {
25129
+ return new HttpResponse(null, {
25130
+ status: 500,
25131
+ statusText: "Internal Error"
25132
+ });
25133
+ }
25134
+ if (authorization !== "DPoP ".concat(VALID_CUI_AUTH_TOKEN) && authorization !== "DPoP ".concat(REFRESHED_CUI_AUTH_TOKEN)) {
25135
+ return new HttpResponse(null, {
25136
+ status: 403,
25137
+ statusText: "Forbidden"
25138
+ });
25139
+ }
25140
+ var mockTransaction = {
25141
+ token: token,
25142
+ amount: 25.5,
25143
+ description: "Coffee Shop Purchase",
25144
+ merchant_name: "Local Coffee Shop",
25145
+ merchant_category_code: "5814",
25146
+ merchant_category: "Fast Food Restaurants",
25147
+ merchant_id: "merchant_456",
25148
+ card_last_four: "1234",
25149
+ created_on: "2024-01-15T10:30:00Z",
25150
+ updated_on: "2024-01-15T10:31:00Z",
25151
+ type: "PURCHASE",
25152
+ response: null,
25153
+ status: "FULFILLED",
25154
+ currency_code: "USD",
25155
+ icon_type: "FOOD_AND_DRINK",
25156
+ has_associated_rewards: false,
25157
+ can_file_more_disputes: true,
25158
+ banner_data: transactionAccountType ? {
25159
+ title: "Test Banner",
25160
+ description: "Test banner description",
25161
+ banner_type: "INFO"
25162
+ } : void 0
25163
+ };
25164
+ return HttpResponse.json(mockTransaction);
25165
+ }),
24460
25166
  http.get("".concat(mockMode_exports.CDN_ICONS_BASE_URL, "/icons/txnIcons.json"), function(param) {
24461
25167
  var request = param.request;
24462
25168
  return HttpResponse.json(txnIcons_default);
@@ -29365,6 +30071,8 @@ exports.replaceCardByToken = replaceCardByToken;
29365
30071
  exports.unlockCardByToken = unlockCardByToken;
29366
30072
  exports.updatePinByCardToken = updatePinByCardToken;
29367
30073
  exports.getPinByCardToken = getPinByCardToken;
30074
+ exports.orderCard = orderCard;
30075
+ exports.replaceCardV2 = replaceCardV2;
29368
30076
  exports.iCardRepository = iCardRepository;
29369
30077
  exports.TEST_CARD_PRODUCT_TOKEN = TEST_CARD_PRODUCT_TOKEN;
29370
30078
  exports.TEST_CARD_TOKEN = TEST_CARD_TOKEN;
@@ -29481,9 +30189,13 @@ exports.ITF_ACCOUNT_REPOSITORY = ITF_ACCOUNT_REPOSITORY;
29481
30189
  exports.getAccountHolderGroup = getAccountHolderGroup;
29482
30190
  exports.getAccountBalances = getAccountBalances;
29483
30191
  exports.getDepositAccounts = getDepositAccounts;
30192
+ exports.getUserAccounts = getUserAccounts;
29484
30193
  exports.iAccountRepository = iAccountRepository;
30194
+ exports.UserAccountStatus = UserAccountStatus;
30195
+ exports.UserAccountType = UserAccountType;
29485
30196
  exports.TEST_USER_TOKEN = TEST_USER_TOKEN;
29486
30197
  exports.TEST_DEPOSIT_ACCOUNT = TEST_DEPOSIT_ACCOUNT;
30198
+ exports.TEST_USER_ACCOUNTS = TEST_USER_ACCOUNTS;
29487
30199
  exports.MockAccountRepository = MockAccountRepository;
29488
30200
  exports.accountsIOCModule = accountsIOCModule;
29489
30201
  exports.mockAccountsIOCModule = mockAccountsIOCModule;
@@ -29694,6 +30406,7 @@ exports.ITF_TRANSACTIONS = ITF_TRANSACTIONS;
29694
30406
  exports.getTransactions = getTransactions;
29695
30407
  exports.getTransactionDetails = getTransactionDetails;
29696
30408
  exports.getUserTransactionsV2 = getUserTransactionsV2;
30409
+ exports.getTransactionByToken = getTransactionByToken;
29697
30410
  exports.TransactionDetailIconTypeEnum = TransactionDetailIconTypeEnum;
29698
30411
  exports.Direction = Direction;
29699
30412
  exports.transactionsIOCModule = transactionsIOCModule;