@sweepbright/api-client 0.36.1 → 0.37.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.
- package/dist/client.d.ts +154 -0
- package/dist/client.js +114 -0
- package/dist/client.js.map +1 -0
- package/dist/common/sleep.js +1 -2
- package/dist/common/sleep.js.map +1 -1
- package/dist/entities/property.d.ts +0 -1
- package/dist/index.d.ts +1 -23
- package/dist/index.js +4 -115
- package/dist/index.js.map +1 -1
- package/dist/oauth-manager/AuthenticationService_PrivateAPI.js +1 -1
- package/dist/oauth-manager/AuthenticationService_PrivateAPI.js.map +1 -1
- package/dist/oauth-manager/SweepbrightOAuthManager.js.map +1 -1
- package/dist/oauth-manager/TokensRepository_Memory.js.map +1 -1
- package/dist/oauth-manager/TokensRepository_Redis.js.map +1 -1
- package/dist/oauth-manager/TokensRepository_RedisWithMemoryFallback.js.map +1 -1
- package/dist/oauth-manager/factories/createOAuthManager.js +24 -20
- package/dist/oauth-manager/factories/createOAuthManager.js.map +1 -1
- package/dist/oauth-manager/playground/one.js.map +1 -1
- package/dist/resources/channel_accounts.d.ts +2 -2
- package/dist/resources/channel_accounts.js +1 -1
- package/dist/resources/channel_accounts.js.map +1 -1
- package/dist/resources/channels.d.ts +1 -1
- package/dist/resources/channels.js +1 -1
- package/dist/resources/channels.js.map +1 -1
- package/dist/resources/companies.d.ts +1 -1
- package/dist/resources/companies.js +1 -1
- package/dist/resources/companies.js.map +1 -1
- package/dist/resources/contact_preferences.d.ts +1 -1
- package/dist/resources/contact_preferences.js +1 -1
- package/dist/resources/contact_preferences.js.map +1 -1
- package/dist/resources/contacts.d.ts +3 -3
- package/dist/resources/contacts.js +1 -1
- package/dist/resources/contacts.js.map +1 -1
- package/dist/resources/estates.d.ts +5 -5
- package/dist/resources/estates.js +1 -1
- package/dist/resources/estates.js.map +1 -1
- package/dist/resources/leads.d.ts +4 -4
- package/dist/resources/leads.js +1 -1
- package/dist/resources/leads.js.map +1 -1
- package/dist/resources/negotiators.js +1 -1
- package/dist/resources/negotiators.js.map +1 -1
- package/dist/resources/offices.js +1 -1
- package/dist/resources/offices.js.map +1 -1
- package/dist/schemas/officeSchema.d.ts +346 -346
- package/dist/types.d.ts +27 -0
- package/dist/types.js.map +1 -1
- package/dist/utils.js +2 -3
- package/dist/utils.js.map +1 -1
- package/package.json +17 -22
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { Client, ClientConf, InitConf } from './types';
|
|
2
|
+
export declare class ClientImpl implements Client {
|
|
3
|
+
private conf;
|
|
4
|
+
private _auth;
|
|
5
|
+
private httpClient;
|
|
6
|
+
private ctx;
|
|
7
|
+
constructor(conf: ClientConf);
|
|
8
|
+
private authorizeWithOAuthManager;
|
|
9
|
+
authorize(config?: InitConf): Promise<Client>;
|
|
10
|
+
withUserToken(accessToken: string): Promise<Client>;
|
|
11
|
+
get leads(): {
|
|
12
|
+
createLead: (attributes: {
|
|
13
|
+
firstName?: string;
|
|
14
|
+
lastName: string;
|
|
15
|
+
propertyId: string;
|
|
16
|
+
email?: string;
|
|
17
|
+
phone?: string;
|
|
18
|
+
message: string;
|
|
19
|
+
portal: string;
|
|
20
|
+
location_preference?: {
|
|
21
|
+
country: string;
|
|
22
|
+
postal_codes: string[];
|
|
23
|
+
};
|
|
24
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
25
|
+
createUnassignedLead: (companyId: string, attributes: {
|
|
26
|
+
first_name: string;
|
|
27
|
+
last_name: string;
|
|
28
|
+
phone: string;
|
|
29
|
+
email: string;
|
|
30
|
+
message: string;
|
|
31
|
+
source_type: "channel";
|
|
32
|
+
external_source: string;
|
|
33
|
+
preferences?: {
|
|
34
|
+
types: string[];
|
|
35
|
+
negotiation: "sale" | "let";
|
|
36
|
+
condition: string;
|
|
37
|
+
min_price?: number;
|
|
38
|
+
max_price?: number;
|
|
39
|
+
wishes: string[];
|
|
40
|
+
min_rooms: number;
|
|
41
|
+
locale: string;
|
|
42
|
+
};
|
|
43
|
+
location_preference?: {
|
|
44
|
+
country: string;
|
|
45
|
+
postal_codes: string[];
|
|
46
|
+
};
|
|
47
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
48
|
+
};
|
|
49
|
+
get negotiators(): {
|
|
50
|
+
getNegotiatorsByIdCompanyId: (attributes: {
|
|
51
|
+
ids: string;
|
|
52
|
+
companyId: string;
|
|
53
|
+
}) => Promise<{
|
|
54
|
+
data: import("./types").NegotiatorInfo[];
|
|
55
|
+
}>;
|
|
56
|
+
};
|
|
57
|
+
get offices(): {
|
|
58
|
+
getOffice: (attributes: {
|
|
59
|
+
officeId: string;
|
|
60
|
+
includes?: string[];
|
|
61
|
+
}) => Promise<import("./entities/office").OfficeData>;
|
|
62
|
+
};
|
|
63
|
+
get contacts(): {
|
|
64
|
+
getOne: (attributes: {
|
|
65
|
+
contactId: string;
|
|
66
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
67
|
+
getOneWithNegotiators: (attributes: {
|
|
68
|
+
contactId: string;
|
|
69
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
70
|
+
getAll: (attributes: {
|
|
71
|
+
companyId: string;
|
|
72
|
+
page?: number;
|
|
73
|
+
limit?: number;
|
|
74
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
75
|
+
};
|
|
76
|
+
get channelAccounts(): {
|
|
77
|
+
readonly getAll: ({ companyId }: {
|
|
78
|
+
companyId: string;
|
|
79
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
80
|
+
readonly get: ({ channelAccountId }: {
|
|
81
|
+
channelAccountId: string;
|
|
82
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
83
|
+
readonly getEstateHash: ({ estateId, channelAccountId, }: {
|
|
84
|
+
estateId: string;
|
|
85
|
+
channelAccountId: string;
|
|
86
|
+
}) => Promise<{
|
|
87
|
+
hash: string;
|
|
88
|
+
}>;
|
|
89
|
+
};
|
|
90
|
+
get channels(): {
|
|
91
|
+
getPropertyIdFromReference: (channel: string, referenceId: string) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
92
|
+
resolveReferences: (channel_id: string, reference_code: string, company_id?: string) => Promise<import("./resources/channels").ChannelsResolveReferencesResult>;
|
|
93
|
+
};
|
|
94
|
+
get companies(): {
|
|
95
|
+
get: (attributes: {
|
|
96
|
+
companyId: string;
|
|
97
|
+
includes?: string[];
|
|
98
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
99
|
+
};
|
|
100
|
+
get contactPreferences(): {
|
|
101
|
+
getAll: (attributes: {
|
|
102
|
+
contactId: string;
|
|
103
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
104
|
+
};
|
|
105
|
+
get estates(): {
|
|
106
|
+
getOne: (attributes: {
|
|
107
|
+
estateId: string;
|
|
108
|
+
companyId: string;
|
|
109
|
+
includes?: import("./types").EstateInclude[];
|
|
110
|
+
}) => Promise<import("./entities/property").Property>;
|
|
111
|
+
getAll: (attributes: {
|
|
112
|
+
companyId: string;
|
|
113
|
+
page?: number;
|
|
114
|
+
limit?: number;
|
|
115
|
+
archived?: boolean;
|
|
116
|
+
}) => Promise<import("./types").PropertiesOutput>;
|
|
117
|
+
getUnits: (projectId: string, { page, limit, includes }?: import("./types").GetUnitsInput) => Promise<import("./types").UnitsOutput>;
|
|
118
|
+
createPublication: (attributes: {
|
|
119
|
+
estateId: string;
|
|
120
|
+
channelAccountId: string;
|
|
121
|
+
config: Record<string, any>;
|
|
122
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
123
|
+
updatePublication: (attributes: {
|
|
124
|
+
estateId: string;
|
|
125
|
+
channelAccountId: string;
|
|
126
|
+
config: Record<string, any>;
|
|
127
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
128
|
+
unpublishPublication: (attributes: {
|
|
129
|
+
estateId: string;
|
|
130
|
+
channelAccountId: string;
|
|
131
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
132
|
+
scheduleVisit: (estateId: string, attributes: {
|
|
133
|
+
first_name: string;
|
|
134
|
+
last_name: string;
|
|
135
|
+
email: string;
|
|
136
|
+
phone: string;
|
|
137
|
+
preferences?: {
|
|
138
|
+
locale: string;
|
|
139
|
+
};
|
|
140
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
141
|
+
updateGeoLocation: ({ companyId, estateId, geoJson, }: {
|
|
142
|
+
companyId: string;
|
|
143
|
+
estateId: string;
|
|
144
|
+
geoJson: {
|
|
145
|
+
latitude: number;
|
|
146
|
+
longitude: number;
|
|
147
|
+
};
|
|
148
|
+
}) => Promise<void>;
|
|
149
|
+
unstable_setPublicationUrl: ({ estateId, url, }: {
|
|
150
|
+
estateId: string;
|
|
151
|
+
url: string;
|
|
152
|
+
}) => Promise<import("axios").AxiosResponse<any, any>>;
|
|
153
|
+
};
|
|
154
|
+
}
|
package/dist/client.js
ADDED
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ClientImpl = void 0;
|
|
7
|
+
const axios_1 = __importDefault(require("axios"));
|
|
8
|
+
const tiny_invariant_1 = __importDefault(require("tiny-invariant"));
|
|
9
|
+
const envHosts_1 = require("./common/envHosts");
|
|
10
|
+
const SessionDataImpl_1 = require("./oauth-manager/SessionDataImpl");
|
|
11
|
+
const channel_accounts_1 = __importDefault(require("./resources/channel_accounts"));
|
|
12
|
+
const channels_1 = __importDefault(require("./resources/channels"));
|
|
13
|
+
const companies_1 = __importDefault(require("./resources/companies"));
|
|
14
|
+
const contact_preferences_1 = __importDefault(require("./resources/contact_preferences"));
|
|
15
|
+
const contacts_1 = __importDefault(require("./resources/contacts"));
|
|
16
|
+
const estates_1 = __importDefault(require("./resources/estates"));
|
|
17
|
+
const leads_1 = __importDefault(require("./resources/leads"));
|
|
18
|
+
const negotiators_1 = __importDefault(require("./resources/negotiators"));
|
|
19
|
+
const offices_1 = __importDefault(require("./resources/offices"));
|
|
20
|
+
const types_1 = require("./types");
|
|
21
|
+
const utils_1 = require("./utils");
|
|
22
|
+
class ClientImpl {
|
|
23
|
+
constructor(conf) {
|
|
24
|
+
this.conf = conf;
|
|
25
|
+
this._auth = null;
|
|
26
|
+
const { env = types_1.Env.PRODUCTION, version } = conf;
|
|
27
|
+
this.httpClient = axios_1.default.create({ baseURL: envHosts_1.envHosts[env] });
|
|
28
|
+
this.httpClient.interceptors.response.use(utils_1.getData, utils_1.handleRequestFailure);
|
|
29
|
+
if (version) {
|
|
30
|
+
this.httpClient.defaults.headers.common['Accept'] = `application/vnd.sweepbright.${version}+json`;
|
|
31
|
+
}
|
|
32
|
+
this.ctx = {
|
|
33
|
+
httpClient: this.httpClient,
|
|
34
|
+
checkAuth: (tokenType) => {
|
|
35
|
+
if (!this._auth) {
|
|
36
|
+
throw new Error('Client is not authenticated');
|
|
37
|
+
}
|
|
38
|
+
if (this._auth.type !== tokenType) {
|
|
39
|
+
throw new Error('Authenticated with invalid token type');
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
async authorizeWithOAuthManager(oauthManager, clientId, clientSecret, scopes, options) {
|
|
45
|
+
const accessToken = await oauthManager.getAccessTokenBySessionData(new SessionDataImpl_1.SessionDataImpl({ clientId, clientSecret, scopes }), options);
|
|
46
|
+
if (!accessToken) {
|
|
47
|
+
throw new Error('Authentication failed');
|
|
48
|
+
}
|
|
49
|
+
this._auth = { token: accessToken, type: types_1.TokenType.API_TOKEN };
|
|
50
|
+
this.httpClient.defaults.headers.common['Authorization'] = `Bearer ${accessToken}`;
|
|
51
|
+
}
|
|
52
|
+
async authorize(config = {}) {
|
|
53
|
+
const { scopes = ['companies:read', 'properties:download', 'lead_info:write'], } = config;
|
|
54
|
+
const { clientId, clientSecret, oauthManager } = this.conf;
|
|
55
|
+
(0, tiny_invariant_1.default)(clientId, 'Missing client ID');
|
|
56
|
+
(0, tiny_invariant_1.default)(clientSecret, 'Missing client secret');
|
|
57
|
+
if (oauthManager) {
|
|
58
|
+
const oAuthManagerInvalidateInterceptor = async (error) => {
|
|
59
|
+
if (error.response?.status === 401) {
|
|
60
|
+
await this.authorizeWithOAuthManager(oauthManager, clientId, clientSecret, scopes, { forceInvalidate: true });
|
|
61
|
+
}
|
|
62
|
+
return Promise.reject(error);
|
|
63
|
+
};
|
|
64
|
+
this.httpClient.interceptors.response.use(undefined, oAuthManagerInvalidateInterceptor);
|
|
65
|
+
await this.authorizeWithOAuthManager(oauthManager, clientId, clientSecret, scopes);
|
|
66
|
+
return this;
|
|
67
|
+
}
|
|
68
|
+
const response = await this.httpClient.post('/oauth/token', {
|
|
69
|
+
client_id: clientId,
|
|
70
|
+
client_secret: clientSecret,
|
|
71
|
+
grant_type: 'client_credentials',
|
|
72
|
+
scope: scopes.join(','),
|
|
73
|
+
});
|
|
74
|
+
const { access_token } = response;
|
|
75
|
+
(0, tiny_invariant_1.default)(access_token, 'Access token should be defined');
|
|
76
|
+
this._auth = { token: access_token, type: types_1.TokenType.API_TOKEN };
|
|
77
|
+
this.httpClient.defaults.headers.common['Authorization'] = `Bearer ${access_token}`;
|
|
78
|
+
return this;
|
|
79
|
+
}
|
|
80
|
+
async withUserToken(accessToken) {
|
|
81
|
+
this._auth = { token: accessToken, type: types_1.TokenType.USER_TOKEN };
|
|
82
|
+
this.httpClient.defaults.headers.common['Authorization'] = `Bearer ${accessToken}`;
|
|
83
|
+
return this;
|
|
84
|
+
}
|
|
85
|
+
get leads() {
|
|
86
|
+
return (0, leads_1.default)(this.ctx);
|
|
87
|
+
}
|
|
88
|
+
get negotiators() {
|
|
89
|
+
return (0, negotiators_1.default)(this.ctx);
|
|
90
|
+
}
|
|
91
|
+
get offices() {
|
|
92
|
+
return (0, offices_1.default)(this.ctx);
|
|
93
|
+
}
|
|
94
|
+
get contacts() {
|
|
95
|
+
return (0, contacts_1.default)(this.ctx);
|
|
96
|
+
}
|
|
97
|
+
get channelAccounts() {
|
|
98
|
+
return (0, channel_accounts_1.default)(this.ctx);
|
|
99
|
+
}
|
|
100
|
+
get channels() {
|
|
101
|
+
return (0, channels_1.default)(this.ctx);
|
|
102
|
+
}
|
|
103
|
+
get companies() {
|
|
104
|
+
return (0, companies_1.default)(this.ctx);
|
|
105
|
+
}
|
|
106
|
+
get contactPreferences() {
|
|
107
|
+
return (0, contact_preferences_1.default)(this.ctx);
|
|
108
|
+
}
|
|
109
|
+
get estates() {
|
|
110
|
+
return (0, estates_1.default)(this.ctx);
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
exports.ClientImpl = ClientImpl;
|
|
114
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/common/sleep.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.sleep =
|
|
3
|
+
exports.sleep = sleep;
|
|
4
4
|
async function sleep(ms) {
|
|
5
5
|
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
6
6
|
}
|
|
7
|
-
exports.sleep = sleep;
|
|
8
7
|
//# sourceMappingURL=sleep.js.map
|
package/dist/common/sleep.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sleep.js","sourceRoot":"","sources":["../../src/common/sleep.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sleep.js","sourceRoot":"","sources":["../../src/common/sleep.ts"],"names":[],"mappings":";;AAAA,sBAEC;AAFM,KAAK,UAAU,KAAK,CAAC,EAAU;IACpC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,26 +1,4 @@
|
|
|
1
1
|
import { createOAuthManager } from './oauth-manager/factories/createOAuthManager';
|
|
2
|
-
import
|
|
3
|
-
import channels from './resources/channels';
|
|
4
|
-
import companies from './resources/companies';
|
|
5
|
-
import contact_preferences from './resources/contact_preferences';
|
|
6
|
-
import contacts from './resources/contacts';
|
|
7
|
-
import estates from './resources/estates';
|
|
8
|
-
import leads from './resources/leads';
|
|
9
|
-
import negotiators from './resources/negotiators';
|
|
10
|
-
import offices from './resources/offices';
|
|
11
|
-
import { ClientConf, Env, InitConf } from './types';
|
|
12
|
-
interface Client {
|
|
13
|
-
authorize(config?: InitConf): Promise<Client>;
|
|
14
|
-
withUserToken(accessToken: string): Promise<Client>;
|
|
15
|
-
leads: ReturnType<typeof leads>;
|
|
16
|
-
negotiators: ReturnType<typeof negotiators>;
|
|
17
|
-
offices: ReturnType<typeof offices>;
|
|
18
|
-
contacts: ReturnType<typeof contacts>;
|
|
19
|
-
channelAccounts: ReturnType<typeof channelAccounts>;
|
|
20
|
-
channels: ReturnType<typeof channels>;
|
|
21
|
-
companies: ReturnType<typeof companies>;
|
|
22
|
-
contactPreferences: ReturnType<typeof contact_preferences>;
|
|
23
|
-
estates: ReturnType<typeof estates>;
|
|
24
|
-
}
|
|
2
|
+
import { Client, ClientConf, Env } from './types';
|
|
25
3
|
declare function createClient(conf: ClientConf): Client;
|
|
26
4
|
export { Client, Env, createClient, createOAuthManager };
|
package/dist/index.js
CHANGED
|
@@ -1,124 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.createOAuthManager = exports.
|
|
7
|
-
|
|
8
|
-
const
|
|
9
|
-
const envHosts_1 = require("./common/envHosts");
|
|
10
|
-
const SessionDataImpl_1 = require("./oauth-manager/SessionDataImpl");
|
|
3
|
+
exports.createOAuthManager = exports.Env = void 0;
|
|
4
|
+
exports.createClient = createClient;
|
|
5
|
+
const client_1 = require("./client");
|
|
11
6
|
const createOAuthManager_1 = require("./oauth-manager/factories/createOAuthManager");
|
|
12
7
|
Object.defineProperty(exports, "createOAuthManager", { enumerable: true, get: function () { return createOAuthManager_1.createOAuthManager; } });
|
|
13
|
-
const channel_accounts_1 = __importDefault(require("./resources/channel_accounts"));
|
|
14
|
-
const channels_1 = __importDefault(require("./resources/channels"));
|
|
15
|
-
const companies_1 = __importDefault(require("./resources/companies"));
|
|
16
|
-
const contact_preferences_1 = __importDefault(require("./resources/contact_preferences"));
|
|
17
|
-
const contacts_1 = __importDefault(require("./resources/contacts"));
|
|
18
|
-
const estates_1 = __importDefault(require("./resources/estates"));
|
|
19
|
-
const leads_1 = __importDefault(require("./resources/leads"));
|
|
20
|
-
const negotiators_1 = __importDefault(require("./resources/negotiators"));
|
|
21
|
-
const offices_1 = __importDefault(require("./resources/offices"));
|
|
22
8
|
const types_1 = require("./types");
|
|
23
9
|
Object.defineProperty(exports, "Env", { enumerable: true, get: function () { return types_1.Env; } });
|
|
24
|
-
const utils_1 = require("./utils");
|
|
25
10
|
function createClient(conf) {
|
|
26
|
-
|
|
27
|
-
let _auth = null;
|
|
28
|
-
let _oAuthManagerInvalidateInterceptor;
|
|
29
|
-
const httpClient = axios_1.default.create({
|
|
30
|
-
baseURL: envHosts_1.envHosts[env],
|
|
31
|
-
});
|
|
32
|
-
//TODO: getData here is an antipattern. Interceptor should not change a type of response
|
|
33
|
-
httpClient.interceptors.response.use(utils_1.getData, utils_1.handleRequestFailure);
|
|
34
|
-
httpClient.interceptors.response.use(undefined, (e) => {
|
|
35
|
-
if (_oAuthManagerInvalidateInterceptor) {
|
|
36
|
-
return _oAuthManagerInvalidateInterceptor(e);
|
|
37
|
-
}
|
|
38
|
-
return e;
|
|
39
|
-
});
|
|
40
|
-
if (version) {
|
|
41
|
-
httpClient.defaults.headers.common['Accept'] = `application/vnd.sweepbright.${version}+json`;
|
|
42
|
-
}
|
|
43
|
-
const ctx = {
|
|
44
|
-
httpClient,
|
|
45
|
-
checkAuth(tokenType) {
|
|
46
|
-
if (!_auth) {
|
|
47
|
-
throw new Error('client is not authenticated');
|
|
48
|
-
}
|
|
49
|
-
if (_auth.type !== tokenType) {
|
|
50
|
-
throw new Error('authenticated with invalid token type');
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
};
|
|
54
|
-
async function authorizeWithOAuthManager(oauthManager, clientId, clientSecret, scopes, options) {
|
|
55
|
-
const accessToken = await oauthManager.getAccessTokenBySessionData(new SessionDataImpl_1.SessionDataImpl({
|
|
56
|
-
clientId,
|
|
57
|
-
clientSecret,
|
|
58
|
-
scopes,
|
|
59
|
-
}), options);
|
|
60
|
-
if (!accessToken) {
|
|
61
|
-
throw new Error('Authentication failed');
|
|
62
|
-
}
|
|
63
|
-
_auth = {
|
|
64
|
-
token: accessToken,
|
|
65
|
-
type: types_1.TokenType.API_TOKEN,
|
|
66
|
-
};
|
|
67
|
-
httpClient.defaults.headers.common['Authorization'] = `Bearer ${accessToken}`;
|
|
68
|
-
}
|
|
69
|
-
const client = {
|
|
70
|
-
async authorize(config = {}) {
|
|
71
|
-
const { scopes = ['companies:read', 'properties:download', 'lead_info:write'], } = config;
|
|
72
|
-
(0, tiny_invariant_1.default)(clientId, 'missing client id');
|
|
73
|
-
(0, tiny_invariant_1.default)(clientSecret, 'missing client secret');
|
|
74
|
-
if (oauthManager) {
|
|
75
|
-
await authorizeWithOAuthManager(oauthManager, clientId, clientSecret, scopes);
|
|
76
|
-
_oAuthManagerInvalidateInterceptor = async (e) => {
|
|
77
|
-
// If the token is invalid, try to re-authorize
|
|
78
|
-
if (e.status && e.status === 401) {
|
|
79
|
-
await authorizeWithOAuthManager(oauthManager, clientId, clientSecret, scopes, { forceInvalidate: true });
|
|
80
|
-
}
|
|
81
|
-
return e;
|
|
82
|
-
};
|
|
83
|
-
return client;
|
|
84
|
-
}
|
|
85
|
-
return httpClient
|
|
86
|
-
.post('/auth/access-token', {
|
|
87
|
-
client_id: clientId,
|
|
88
|
-
client_secret: clientSecret,
|
|
89
|
-
grant_type: 'client_credentials',
|
|
90
|
-
scope: scopes.join(','),
|
|
91
|
-
})
|
|
92
|
-
.then(({ access_token }) => {
|
|
93
|
-
(0, tiny_invariant_1.default)(access_token, 'access token should be defined');
|
|
94
|
-
_auth = {
|
|
95
|
-
token: access_token,
|
|
96
|
-
type: types_1.TokenType.API_TOKEN,
|
|
97
|
-
};
|
|
98
|
-
// https://github.com/axios/axios#custom-instance-defaults
|
|
99
|
-
httpClient.defaults.headers.common['Authorization'] = `Bearer ${_auth.token}`;
|
|
100
|
-
return client;
|
|
101
|
-
});
|
|
102
|
-
},
|
|
103
|
-
withUserToken: async (accessToken) => {
|
|
104
|
-
_auth = {
|
|
105
|
-
token: accessToken,
|
|
106
|
-
type: types_1.TokenType.USER_TOKEN,
|
|
107
|
-
};
|
|
108
|
-
httpClient.defaults.headers.common['Authorization'] = `Bearer ${_auth.token}`;
|
|
109
|
-
return client;
|
|
110
|
-
},
|
|
111
|
-
leads: (0, leads_1.default)(ctx),
|
|
112
|
-
channels: (0, channels_1.default)(ctx),
|
|
113
|
-
estates: (0, estates_1.default)(ctx),
|
|
114
|
-
channelAccounts: (0, channel_accounts_1.default)(ctx),
|
|
115
|
-
companies: (0, companies_1.default)(ctx),
|
|
116
|
-
contacts: (0, contacts_1.default)(ctx),
|
|
117
|
-
contactPreferences: (0, contact_preferences_1.default)(ctx),
|
|
118
|
-
negotiators: (0, negotiators_1.default)(ctx),
|
|
119
|
-
offices: (0, offices_1.default)(ctx),
|
|
120
|
-
};
|
|
121
|
-
return client;
|
|
11
|
+
return new client_1.ClientImpl(conf);
|
|
122
12
|
}
|
|
123
|
-
exports.createClient = createClient;
|
|
124
13
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAQsB,oCAAY;AARlC,qCAAsC;AACtC,qFAAkF;AAO9C,mGAP3B,uCAAkB,OAO2B;AANtD,mCAAkD;AAMjC,oFANY,WAAG,OAMZ;AAJpB,SAAS,YAAY,CAAC,IAAgB;IACpC,OAAO,IAAI,mBAAU,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC"}
|
|
@@ -31,7 +31,7 @@ class AuthenticationService_PrivateAPI {
|
|
|
31
31
|
scope: sessionData.getScopes().join(','),
|
|
32
32
|
grant_type: 'client_credentials',
|
|
33
33
|
};
|
|
34
|
-
const response = await this.httpClient.post('/
|
|
34
|
+
const response = await this.httpClient.post('/oauth/token', request, {
|
|
35
35
|
validateStatus(status) {
|
|
36
36
|
return status === 200 || status === 401;
|
|
37
37
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthenticationService_PrivateAPI.js","sourceRoot":"","sources":["../../src/oauth-manager/AuthenticationService_PrivateAPI.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAyC;AACzC,kDAA6C;AAQ7C;;;;;;;;GAQG;AACH,MAAa,gCAAgC;IAG3C,YAAY,OAA+C;QACzD,IAAI,CAAC,UAAU,GAAG,eAAK,CAAC,MAAM,CAAC;YAC7B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE;gBACP,MAAM,EAAE,+BAA+B,OAAO,CAAC,UAAU,OAAO;aACjE;SACF,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,WAAwB;QAChD,MAAM,OAAO,GAAG;YACd,SAAS,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,QAAQ;YAChD,aAAa,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,YAAY;YACxD,KAAK,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;YACxC,UAAU,EAAE,oBAAoB;SACjC,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"AuthenticationService_PrivateAPI.js","sourceRoot":"","sources":["../../src/oauth-manager/AuthenticationService_PrivateAPI.ts"],"names":[],"mappings":";;;;;;AAAA,mCAAyC;AACzC,kDAA6C;AAQ7C;;;;;;;;GAQG;AACH,MAAa,gCAAgC;IAG3C,YAAY,OAA+C;QACzD,IAAI,CAAC,UAAU,GAAG,eAAK,CAAC,MAAM,CAAC;YAC7B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,OAAO,EAAE;gBACP,MAAM,EAAE,+BAA+B,OAAO,CAAC,UAAU,OAAO;aACjE;SACF,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,WAAwB;QAChD,MAAM,OAAO,GAAG;YACd,SAAS,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,QAAQ;YAChD,aAAa,EAAE,WAAW,CAAC,cAAc,EAAE,CAAC,YAAY;YACxD,KAAK,EAAE,WAAW,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;YACxC,UAAU,EAAE,oBAAoB;SACjC,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE;YACnE,cAAc,CAAC,MAAM;gBACnB,OAAO,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,CAAC;YAC1C,CAAC;SACF,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,EACJ,IAAI,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,GAC/C,GAAG,QAAQ,CAAC;QACb,IAAA,WAAE,EAAC,YAAY,EAAE,gCAAgC,CAAC,CAAC;QACnD,IAAA,WAAE,EAAC,UAAU,EAAE,8BAA8B,CAAC,CAAC;QAC/C,IAAA,oBAAW,EAAC,UAAU,EAAE,QAAQ,EAAE,6BAA6B,CAAC,CAAC;QAEjE,MAAM,MAAM,GAAW;YACrB,WAAW,EAAE,YAAY;YACzB,SAAS,EAAE,UAAU;SACtB,CAAC;QAEF,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AA1CD,4EA0CC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SweepbrightOAuthManager.js","sourceRoot":"","sources":["../../src/oauth-manager/SweepbrightOAuthManager.ts"],"names":[],"mappings":";;;AAAA,gCAAgC;AAChC,2CAAwC;AAYxC,MAAM,MAAM,GAAG,IAAI,CAAC;AAEpB,MAAM,QAAQ,GAAG,EAAE,GAAG,MAAM,CAAC;AAC7B,MAAM,wBAAwB,GAAG,CAAC,GAAG,MAAM,CAAC;AAC5C,MAAM,uBAAuB,GAAG,EAAE,GAAG,MAAM,CAAC;AAE5C,MAAa,uBAAuB;IAClC,YACmB,gBAAkC,EAClC,qBAA4C,EAC5C,GAAW;QAFX,qBAAgB,GAAhB,gBAAgB,CAAkB;QAClC,0BAAqB,GAArB,qBAAqB,CAAuB;QAC5C,QAAG,GAAH,GAAG,CAAQ;IAC3B,CAAC;IAEI,0BAA0B,CAAC,WAAiB;QAClD,OAAO,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,QAAQ,CAAC,CAAC;IACpD,CAAC;IAEO,oBAAoB,CAAC,SAAiB,EAAE,QAAc;QAC5D,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,SAAS,GAAG,MAAM,CAAC,CAAC;IAC3D,CAAC;IAEO,WAAW,CAAC,MAAc,EAAE,UAAkB;QACpD,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,MAAM,EAAE;YAC/C,kBAAkB,EAAE,KAAK;YACzB,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,4BAA4B,CACxC,MAAc,EACd,WAAwB,EACxB,eAAyB;QAEzB,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACrB,IAAI,MAAM,GAAkB,IAAI,CAAC;QACjC,MAAM,UAAU,GAAG,WAAW,CAAC,aAAa,EAAE,CAAC;QAE/C,IAAI;
|
|
1
|
+
{"version":3,"file":"SweepbrightOAuthManager.js","sourceRoot":"","sources":["../../src/oauth-manager/SweepbrightOAuthManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokensRepository_Memory.js","sourceRoot":"","sources":["../../src/oauth-manager/TokensRepository_Memory.ts"],"names":[],"mappings":";;;AAAA,gCAAgC;AAChC,+BAA0B;AAgB1B,MAAM,aAAa,GAA8B,IAAI,GAAG,EAAE,CAAC;AAE3D,MAAa,uBAAuB;IAGlC,YAA6B,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;QAFhC,YAAO,GAA8B,aAAa,CAAC;IAEhB,CAAC;IAErC,KAAK,CAAC,qBAAqB,CAChC,UAAkB,EAClB,WAAiB;QAEjB,+BAA+B;QAC/B,qDAAqD;QACrD,kCAAkC;QAClC,sCAAsC;QAEtC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5C,IAAI,CAAC,MAAM,EAAE;
|
|
1
|
+
{"version":3,"file":"TokensRepository_Memory.js","sourceRoot":"","sources":["../../src/oauth-manager/TokensRepository_Memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokensRepository_Redis.js","sourceRoot":"","sources":["../../src/oauth-manager/TokensRepository_Redis.ts"],"names":[],"mappings":";;;AAEA,+BAA0B;AAU1B,MAAM,0BAA0B,GAAG,IAAI,CAAC;AACxC,MAAM,gCAAgC,GAAG,IAAI,CAAC;AAE9C,MAAa,sBAAsB;IAGjC,YACmB,KAAsB,EACtB,GAAW;QADX,UAAK,GAAL,KAAK,CAAiB;QACtB,QAAG,GAAH,GAAG,CAAQ;QAGtB,sBAAiB,GAAG,KAAK,CAAC;QAC1B,cAAS,GAAG,KAAK,CAAC;QAkBT,YAAO,GAAG,IAAI,CAAC;IArB7B,CAAC;IAIG,KAAK,CAAC,WAAW;QACtB,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE;
|
|
1
|
+
{"version":3,"file":"TokensRepository_Redis.js","sourceRoot":"","sources":["../../src/oauth-manager/TokensRepository_Redis.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokensRepository_RedisWithMemoryFallback.js","sourceRoot":"","sources":["../../src/oauth-manager/TokensRepository_RedisWithMemoryFallback.ts"],"names":[],"mappings":";;;AAUA,MAAa,wCAAwC;IAGnD,YACmB,SAAgD,EAChD,UAA4B,EAC5B,GAAW;QAFX,cAAS,GAAT,SAAS,CAAuC;QAChD,eAAU,GAAV,UAAU,CAAkB;QAC5B,QAAG,GAAH,GAAG,CAAQ;QAGtB,eAAU,GAAqB,IAAI,CAAC,SAAS,CAAC;QAC9C,uBAAkB,GAAG,KAAK,CAAC;IAHhC,CAAC;IAKI,KAAK,CAAC,OAAO;QACnB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE;
|
|
1
|
+
{"version":3,"file":"TokensRepository_RedisWithMemoryFallback.js","sourceRoot":"","sources":["../../src/oauth-manager/TokensRepository_RedisWithMemoryFallback.ts"],"names":[],"mappings":";;;AAUA,MAAa,wCAAwC;IAGnD,YACmB,SAAgD,EAChD,UAA4B,EAC5B,GAAW;QAFX,cAAS,GAAT,SAAS,CAAuC;QAChD,eAAU,GAAV,UAAU,CAAkB;QAC5B,QAAG,GAAH,GAAG,CAAQ;QAGtB,eAAU,GAAqB,IAAI,CAAC,SAAS,CAAC;QAC9C,uBAAkB,GAAG,KAAK,CAAC;IAHhC,CAAC;IAKI,KAAK,CAAC,OAAO;QACnB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC7B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;YACvD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;YACzE,CAAC;YACD,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC;YACjE,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;QACjC,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAEM,KAAK,CAAC,qBAAqB,CAChC,UAAkB,EAClB,WAAiB;QAEjB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,qBAAqB,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC7D,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC5B,MAAc,EACd,UAAkB;QAElB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACpD,CAAC;IAEM,KAAK,CAAC,WAAW,CACtB,OAA2B;QAE3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAEM,KAAK,CAAC,WAAW,CACtB,MAAc,EACd,OAA2B;QAE3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;CACF;AAtDD,4FAsDC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createOAuthManager =
|
|
3
|
+
exports.createOAuthManager = createOAuthManager;
|
|
4
4
|
const assert_1 = require("assert");
|
|
5
5
|
const url_1 = require("url");
|
|
6
6
|
const ioredis_1 = require("ioredis");
|
|
@@ -11,29 +11,34 @@ const TokensRepository_Memory_1 = require("../TokensRepository_Memory");
|
|
|
11
11
|
const TokensRepository_Redis_1 = require("../TokensRepository_Redis");
|
|
12
12
|
const TokensRepository_RedisWithMemoryFallback_1 = require("../TokensRepository_RedisWithMemoryFallback");
|
|
13
13
|
function createRedisClient(redisURL) {
|
|
14
|
-
const url =
|
|
15
|
-
const useTLS = url.protocol
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
], {
|
|
22
|
-
clusterRetryStrategy: (times) => {
|
|
23
|
-
if (times > 2) {
|
|
24
|
-
return 0;
|
|
25
|
-
}
|
|
26
|
-
return 1000;
|
|
27
|
-
},
|
|
28
|
-
// recommended for ioredis + ElastiCache
|
|
29
|
-
dnsLookup(hostname, callback) {
|
|
30
|
-
callback(null, hostname);
|
|
14
|
+
const url = new url_1.URL(redisURL);
|
|
15
|
+
const useTLS = url.protocol.startsWith('rediss');
|
|
16
|
+
const host = url.hostname;
|
|
17
|
+
const port = Number(url.port) ?? (0, assert_1.fail)(`Invalid port ${url.port}`);
|
|
18
|
+
const client = new ioredis_1.Cluster([{ host, port }], {
|
|
19
|
+
dnsLookup(hostname, cb) {
|
|
20
|
+
cb(null, hostname);
|
|
31
21
|
},
|
|
32
22
|
redisOptions: {
|
|
33
23
|
tls: useTLS ? {} : undefined,
|
|
34
|
-
commandTimeout:
|
|
24
|
+
commandTimeout: 3000,
|
|
35
25
|
},
|
|
26
|
+
slotsRefreshInterval: 2 ** 30,
|
|
27
|
+
slotsRefreshTimeout: 3000,
|
|
36
28
|
});
|
|
29
|
+
// Failed to refresh slots cache.
|
|
30
|
+
client.on('error', (err) => {
|
|
31
|
+
if (err &&
|
|
32
|
+
typeof err === 'object' &&
|
|
33
|
+
'message' in err &&
|
|
34
|
+
err.message === 'Failed to refresh slots cache.') {
|
|
35
|
+
console.warn('Failed to refresh slots cache.', { error: err });
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
console.error('Unhandled Redis error', { error: err });
|
|
39
|
+
}
|
|
40
|
+
});
|
|
41
|
+
return client;
|
|
37
42
|
}
|
|
38
43
|
function createTokenStorage(opt, logger) {
|
|
39
44
|
let tokensRepository;
|
|
@@ -58,5 +63,4 @@ function createOAuthManager(opt) {
|
|
|
58
63
|
(0, assert_1.ok)(baseUrl, 'baseUrl should be defined');
|
|
59
64
|
return new SweepbrightOAuthManager_1.SweepbrightOAuthManager(createTokenStorage(opt, logger), new AuthenticationService_PrivateAPI_1.AuthenticationService_PrivateAPI({ baseUrl, apiVersion }), logger);
|
|
60
65
|
}
|
|
61
|
-
exports.createOAuthManager = createOAuthManager;
|
|
62
66
|
//# sourceMappingURL=createOAuthManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createOAuthManager.js","sourceRoot":"","sources":["../../../src/oauth-manager/factories/createOAuthManager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"createOAuthManager.js","sourceRoot":"","sources":["../../../src/oauth-manager/factories/createOAuthManager.ts"],"names":[],"mappings":"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"}
|