@pulsar.money/atlas-sdk 0.5.0 → 0.5.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.
@@ -2,4 +2,5 @@ export declare class ApiConfigService {
2
2
  static getAtlasBaseUrl(): string;
3
3
  static getAtlasJwtSecret(): string;
4
4
  static getServiceType(): "multiversx" | "starknet" | "evm";
5
+ static getMoonpayApiKey(): string;
5
6
  }
@@ -24,6 +24,13 @@ class ApiConfigService {
24
24
  }
25
25
  return process.env.SERVICE_TYPE;
26
26
  }
27
+ static getMoonpayApiKey() {
28
+ const apiKey = process.env.MOONPAY_API_KEY;
29
+ if (!apiKey) {
30
+ throw new Error("MOONPAY_API_KEY environment variable is not set");
31
+ }
32
+ return apiKey;
33
+ }
27
34
  }
28
35
  exports.ApiConfigService = ApiConfigService;
29
36
  //# sourceMappingURL=api-config.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"api-config.service.js","sourceRoot":"","sources":["../../src/config/api-config.service.ts"],"names":[],"mappings":";;;AAAA,MAAa,gBAAgB;IAC3B,MAAM,CAAC,eAAe;QACpB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC9C;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,iBAAiB;QACtB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE;YACjC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAChD;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACtC,CAAC;IAED,MAAM,CAAC,cAAc;QACnB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC5C;QAED,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YACzD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC9C;QAED,OAAO,OAAO,CAAC,GAAG,CAAC,YAAiD,CAAC;IACvE,CAAC;CACF;AA3BD,4CA2BC"}
1
+ {"version":3,"file":"api-config.service.js","sourceRoot":"","sources":["../../src/config/api-config.service.ts"],"names":[],"mappings":";;;AAAA,MAAa,gBAAgB;IAC3B,MAAM,CAAC,eAAe;QACpB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC9C;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,iBAAiB;QACtB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE;YACjC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;SAChD;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;IACtC,CAAC;IAED,MAAM,CAAC,cAAc;QACnB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC5C;QAED,MAAM,iBAAiB,GAAG,CAAC,YAAY,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;QAC5D,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;YACzD,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;SAC9C;QAED,OAAO,OAAO,CAAC,GAAG,CAAC,YAAiD,CAAC;IACvE,CAAC;IAED,MAAM,CAAC,gBAAgB;QACrB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;QAC3C,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;SACpE;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAnCD,4CAmCC"}
@@ -2,3 +2,4 @@ export * from "./profiles";
2
2
  export * from "./payments";
3
3
  export * from "./public-profiles";
4
4
  export * from "./messages";
5
+ export * from "./moonpay";
@@ -18,4 +18,5 @@ __exportStar(require("./profiles"), exports);
18
18
  __exportStar(require("./payments"), exports);
19
19
  __exportStar(require("./public-profiles"), exports);
20
20
  __exportStar(require("./messages"), exports);
21
+ __exportStar(require("./moonpay"), exports);
21
22
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,6CAA2B;AAC3B,oDAAkC;AAClC,6CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/modules/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,6CAA2B;AAC3B,oDAAkC;AAClC,6CAA2B;AAC3B,4CAA0B"}
@@ -0,0 +1,2 @@
1
+ export * from "./moonpay.service";
2
+ export * from "./moonpay.types";
@@ -0,0 +1,19 @@
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("./moonpay.service"), exports);
18
+ __exportStar(require("./moonpay.types"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/modules/moonpay/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAkC;AAClC,kDAAgC"}
@@ -0,0 +1,8 @@
1
+ import { MoonpayTransaction } from "./moonpay.types";
2
+ export declare class MoonpayService {
3
+ private readonly axiosInstance;
4
+ private readonly apiKey;
5
+ constructor();
6
+ getTransaction(transactionId: string): Promise<MoonpayTransaction>;
7
+ private handleAxiosError;
8
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MoonpayService = void 0;
13
+ const common_1 = require("@nestjs/common");
14
+ const axios_1 = require("axios");
15
+ const api_config_service_1 = require("../../config/api-config.service");
16
+ let MoonpayService = class MoonpayService {
17
+ constructor() {
18
+ this.apiKey = api_config_service_1.ApiConfigService.getMoonpayApiKey();
19
+ this.axiosInstance = axios_1.default.create({
20
+ baseURL: "https://api.moonpay.com",
21
+ headers: {
22
+ Authorization: `Api-Key ${this.apiKey}`,
23
+ },
24
+ });
25
+ }
26
+ async getTransaction(transactionId) {
27
+ if (!transactionId) {
28
+ throw new common_1.BadRequestException("Transaction ID is required");
29
+ }
30
+ try {
31
+ const response = await this.axiosInstance.get(`/v1/transactions/${transactionId}`);
32
+ return response.data;
33
+ }
34
+ catch (error) {
35
+ this.handleAxiosError(error);
36
+ }
37
+ }
38
+ handleAxiosError(error) {
39
+ var _a, _b;
40
+ const errorMessage = ((_b = (_a = error.response) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.message) || "An error occurred with Moonpay";
41
+ throw new common_1.BadRequestException(errorMessage);
42
+ }
43
+ };
44
+ exports.MoonpayService = MoonpayService;
45
+ exports.MoonpayService = MoonpayService = __decorate([
46
+ (0, common_1.Injectable)(),
47
+ __metadata("design:paramtypes", [])
48
+ ], MoonpayService);
49
+ //# sourceMappingURL=moonpay.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"moonpay.service.js","sourceRoot":"","sources":["../../../src/modules/moonpay/moonpay.service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAAiE;AACjE,iCAA6C;AAC7C,wEAAmE;AAI5D,IAAM,cAAc,GAApB,MAAM,cAAc;IAIzB;QACE,IAAI,CAAC,MAAM,GAAG,qCAAgB,CAAC,gBAAgB,EAAE,CAAC;QAElD,IAAI,CAAC,aAAa,GAAG,eAAK,CAAC,MAAM,CAAC;YAChC,OAAO,EAAE,yBAAyB;YAClC,OAAO,EAAE;gBACP,aAAa,EAAE,WAAW,IAAI,CAAC,MAAM,EAAE;aACxC;SACF,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,aAAqB;QACxC,IAAI,CAAC,aAAa,EAAE;YAClB,MAAM,IAAI,4BAAmB,CAAC,4BAA4B,CAAC,CAAC;SAC7D;QAED,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CAC3C,oBAAoB,aAAa,EAAE,CACpC,CAAC;YACF,OAAO,QAAQ,CAAC,IAAI,CAAC;SACtB;QAAC,OAAO,KAAK,EAAE;YACd,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;SAC9B;IACH,CAAC;IAEO,gBAAgB,CAAC,KAAU;;QACjC,MAAM,YAAY,GAChB,CAAA,MAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,IAAI,0CAAE,OAAO,KAAI,gCAAgC,CAAC;QACpE,MAAM,IAAI,4BAAmB,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC;CACF,CAAA;AAnCY,wCAAc;yBAAd,cAAc;IAD1B,IAAA,mBAAU,GAAE;;GACA,cAAc,CAmC1B"}
@@ -0,0 +1,72 @@
1
+ export interface MoonpayCurrency {
2
+ id: string;
3
+ createdAt: string;
4
+ updatedAt: string;
5
+ type: 'crypto' | 'fiat';
6
+ name: string;
7
+ code: string;
8
+ precision: number;
9
+ minBuyAmount: number;
10
+ maxBuyAmount: number;
11
+ minSellAmount?: number;
12
+ maxSellAmount?: number;
13
+ addressRegex?: string;
14
+ testnetAddressRegex?: string;
15
+ supportsAddressTag: boolean;
16
+ addressTagRegex: string | null;
17
+ supportsTestMode: boolean;
18
+ isSuspended: boolean;
19
+ isSupportedInUs: boolean;
20
+ isSellSupported: boolean;
21
+ notAllowedUSStates?: string[];
22
+ notAllowedCountries?: string[];
23
+ metadata?: {
24
+ contractAddress: number;
25
+ chainId: string;
26
+ networkCode: string;
27
+ };
28
+ }
29
+ export interface MoonpayStage {
30
+ stage: string;
31
+ status: string;
32
+ failureReason: string | null;
33
+ actions: any[];
34
+ }
35
+ export interface MoonpayTransaction {
36
+ id: string;
37
+ createdAt: string;
38
+ updatedAt: string;
39
+ baseCurrencyAmount: number;
40
+ quoteCurrencyAmount: number;
41
+ feeAmount: number;
42
+ extraFeeAmount: number;
43
+ networkFeeAmount: number;
44
+ areFeesIncluded: boolean;
45
+ status: string;
46
+ failureReason: string | null;
47
+ walletAddress: number;
48
+ walletAddressTag: string | null;
49
+ cryptoTransactionId: number;
50
+ redirectUrl: string;
51
+ returnUrl: string;
52
+ widgetRedirectUrl: string | null;
53
+ eurRate: number;
54
+ usdRate: number;
55
+ gbpRate: number;
56
+ bankDepositInformation: string | null;
57
+ bankTransferReference: string | null;
58
+ currencyId: string;
59
+ currency: MoonpayCurrency;
60
+ baseCurrencyId: string;
61
+ baseCurrency: MoonpayCurrency;
62
+ customerId: string;
63
+ cardId: string;
64
+ bankAccountId: string | null;
65
+ externalCustomerId: string;
66
+ externalTransactionId: string;
67
+ country: string;
68
+ state: string | null;
69
+ cardType: string;
70
+ cardPaymentType: string;
71
+ stages: MoonpayStage[];
72
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=moonpay.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"moonpay.types.js","sourceRoot":"","sources":["../../../src/modules/moonpay/moonpay.types.ts"],"names":[],"mappings":""}
@@ -9,8 +9,8 @@ export interface ResendVerificationInput {
9
9
  export interface UserProfile {
10
10
  id: string;
11
11
  email: string;
12
- phoneNumber: string;
13
12
  username: string;
13
+ isVerified: boolean;
14
14
  profileImage: string;
15
15
  kycApplicant?: KycApplicant;
16
16
  profile?: Profile;
@@ -10,4 +10,6 @@ export declare class PublicProfilesAtlasService {
10
10
  getPublicProfile(username: string): Promise<Profile>;
11
11
  searchProfiles(query: string, limit?: number): Promise<Profile[]>;
12
12
  getTrendingProfiles(period?: TrendingPeriod, limit?: number): Promise<Profile[]>;
13
+ getPublicProfileByAddress(address: string): Promise<Profile>;
14
+ checkTokensSent(senderAddress: string): Promise<boolean>;
13
15
  }
@@ -87,6 +87,37 @@ let PublicProfilesAtlasService = class PublicProfilesAtlasService {
87
87
  this.handleAxiosError(error);
88
88
  }
89
89
  }
90
+ async getPublicProfileByAddress(address) {
91
+ var _a;
92
+ if (!address) {
93
+ throw new common_1.BadRequestException("Address is required");
94
+ }
95
+ try {
96
+ const response = await this.axiosInstance.get(`/public-profiles/address/${address}`);
97
+ if (!response.data) {
98
+ throw new common_1.NotFoundException("Profile not found or not public");
99
+ }
100
+ return response.data;
101
+ }
102
+ catch (error) {
103
+ if (((_a = error.response) === null || _a === void 0 ? void 0 : _a.status) === 404) {
104
+ throw new common_1.NotFoundException("Profile not found or not public");
105
+ }
106
+ this.handleAxiosError(error);
107
+ }
108
+ }
109
+ async checkTokensSent(senderAddress) {
110
+ if (!senderAddress) {
111
+ throw new common_1.BadRequestException("Sender address is required");
112
+ }
113
+ try {
114
+ const response = await this.axiosInstance.get(`/public-profiles/check-tokens-sent/${senderAddress}`);
115
+ return response.data.has_sent_tokens;
116
+ }
117
+ catch (error) {
118
+ this.handleAxiosError(error);
119
+ }
120
+ }
90
121
  };
91
122
  exports.PublicProfilesAtlasService = PublicProfilesAtlasService;
92
123
  exports.PublicProfilesAtlasService = PublicProfilesAtlasService = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"public-profile.service.js","sourceRoot":"","sources":["../../../src/modules/public-profiles/public-profile.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-profile.service.js","sourceRoot":"","sources":["../../../src/modules/public-profiles/public-profile.service.ts"],"names":[],"mappings":"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"}