@or-sdk/users 2.3.0-beta.2114.0 → 2.3.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/CHANGELOG.md +33 -0
- package/dist/cjs/Users.js +13 -0
- package/dist/cjs/Users.js.map +1 -1
- package/dist/cjs/__tests__/Users.spec.js +93 -0
- package/dist/cjs/__tests__/Users.spec.js.map +1 -0
- package/dist/cjs/__tests__/mocks/profile.js +31 -0
- package/dist/cjs/__tests__/mocks/profile.js.map +1 -0
- package/dist/esm/Users.js +8 -0
- package/dist/esm/Users.js.map +1 -1
- package/dist/esm/__tests__/Users.spec.js +47 -0
- package/dist/esm/__tests__/Users.spec.js.map +1 -0
- package/dist/esm/__tests__/mocks/profile.js +24 -0
- package/dist/esm/__tests__/mocks/profile.js.map +1 -0
- package/dist/types/Users.d.ts +2 -1
- package/dist/types/Users.d.ts.map +1 -1
- package/dist/types/__tests__/Users.spec.d.ts +2 -0
- package/dist/types/__tests__/Users.spec.d.ts.map +1 -0
- package/dist/types/__tests__/mocks/profile.d.ts +21 -0
- package/dist/types/__tests__/mocks/profile.d.ts.map +1 -0
- package/dist/types/types.d.ts +12 -0
- package/dist/types/types.d.ts.map +1 -1
- package/package.json +11 -6
- package/src/Users.ts +14 -0
- package/src/__tests__/Users.spec.ts +55 -0
- package/src/__tests__/mocks/profile.ts +28 -0
- package/src/types.ts +23 -1
- package/vitest.config.js +24 -0
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,39 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [2.3.0](https://gitlab.internal.onereach.io/onereach/platform/or-sdk-next/compare/@or-sdk/users@2.2.3...@or-sdk/users@2.3.0) (2024-02-02)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* **users:** add method `getCurrentMultiUserProfile` ([224c38a](https://gitlab.internal.onereach.io/onereach/platform/or-sdk-next/commit/224c38a4040e4fd4afc56041c86cc213e62f99b3))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
## [2.2.3](https://gitlab.internal.onereach.io/onereach/platform/or-sdk-next/compare/@or-sdk/users@2.2.2...@or-sdk/users@2.2.3) (2024-02-01)
|
|
16
|
+
|
|
17
|
+
**Note:** Version bump only for package @or-sdk/users
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
## [2.2.2](https://gitlab.internal.onereach.io/onereach/platform/or-sdk-next/compare/@or-sdk/users@2.2.1...@or-sdk/users@2.2.2) (2024-02-01)
|
|
24
|
+
|
|
25
|
+
**Note:** Version bump only for package @or-sdk/users
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
## [2.2.1](https://gitlab.internal.onereach.io/onereach/platform/or-sdk-next/compare/@or-sdk/users@2.2.0...@or-sdk/users@2.2.1) (2023-12-04)
|
|
32
|
+
|
|
33
|
+
**Note:** Version bump only for package @or-sdk/users
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
6
39
|
## [2.2.0](https://gitlab.internal.onereach.io/onereach/platform/or-sdk-next/compare/@or-sdk/users@2.1.1...@or-sdk/users@2.2.0) (2023-11-13)
|
|
7
40
|
|
|
8
41
|
|
package/dist/cjs/Users.js
CHANGED
|
@@ -111,6 +111,19 @@ var Users = (function (_super) {
|
|
|
111
111
|
});
|
|
112
112
|
});
|
|
113
113
|
};
|
|
114
|
+
Users.prototype.getCurrentMultiUserProfile = function () {
|
|
115
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
116
|
+
return __generator(this, function (_a) {
|
|
117
|
+
switch (_a.label) {
|
|
118
|
+
case 0: return [4, this.sdkApi.makeRequest({
|
|
119
|
+
method: 'GET',
|
|
120
|
+
route: '/user/multi-user',
|
|
121
|
+
})];
|
|
122
|
+
case 1: return [2, _a.sent()];
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
});
|
|
126
|
+
};
|
|
114
127
|
Users.prototype.getAccountInfo = function () {
|
|
115
128
|
return __awaiter(this, void 0, void 0, function () {
|
|
116
129
|
return __generator(this, function (_a) {
|
package/dist/cjs/Users.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Users.js","sourceRoot":"","sources":["../../src/Users.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAoD;AACpD,2CAAyC;AACzC,yCAA0C;
|
|
1
|
+
{"version":3,"file":"Users.js","sourceRoot":"","sources":["../../src/Users.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (_) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
var vitest_1 = require("vitest");
|
|
40
|
+
var msw_1 = require("msw");
|
|
41
|
+
var Users_1 = require("../Users");
|
|
42
|
+
var profile_1 = require("./mocks/profile");
|
|
43
|
+
function buildUsersInstance() {
|
|
44
|
+
return new Users_1.Users({
|
|
45
|
+
token: 'test-token',
|
|
46
|
+
usersUrl: profile_1.USERS_URL,
|
|
47
|
+
sdkUrl: profile_1.SDK_URL,
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
(0, vitest_1.describe)('Users API', function () {
|
|
51
|
+
(0, vitest_1.beforeAll)(function () { return profile_1.mockApiServer.listen(); });
|
|
52
|
+
(0, vitest_1.afterEach)(function () { return profile_1.mockApiServer.resetHandlers(); });
|
|
53
|
+
(0, vitest_1.afterAll)(function () { return profile_1.mockApiServer.close(); });
|
|
54
|
+
(0, vitest_1.describe)('constructor', function () {
|
|
55
|
+
(0, vitest_1.it)('initializes properly', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
56
|
+
var api;
|
|
57
|
+
return __generator(this, function (_a) {
|
|
58
|
+
api = buildUsersInstance();
|
|
59
|
+
(0, vitest_1.expect)(api.serviceUrl).toBe(profile_1.USERS_URL);
|
|
60
|
+
return [2];
|
|
61
|
+
});
|
|
62
|
+
}); });
|
|
63
|
+
});
|
|
64
|
+
(0, vitest_1.describe)('getCurrentMultiUserProfile', function () {
|
|
65
|
+
var url = "".concat(profile_1.SDK_URL, "/user/multi-user");
|
|
66
|
+
(0, vitest_1.it)('should make correct the request via SdkApi', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
67
|
+
var api, res;
|
|
68
|
+
return __generator(this, function (_a) {
|
|
69
|
+
switch (_a.label) {
|
|
70
|
+
case 0:
|
|
71
|
+
profile_1.mockApiServer.use(msw_1.http.get(url, (0, profile_1.okRes)(profile_1.profileFixture)));
|
|
72
|
+
api = buildUsersInstance();
|
|
73
|
+
return [4, api.getCurrentMultiUserProfile()];
|
|
74
|
+
case 1:
|
|
75
|
+
res = _a.sent();
|
|
76
|
+
(0, vitest_1.expect)(res).toEqual(profile_1.profileFixture);
|
|
77
|
+
return [2];
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
}); });
|
|
81
|
+
(0, vitest_1.it)('should return error message if API is not working', function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
82
|
+
var testError, api;
|
|
83
|
+
return __generator(this, function (_a) {
|
|
84
|
+
testError = "Test error ".concat(Date.now());
|
|
85
|
+
profile_1.mockApiServer.use(msw_1.http.get(url, (0, profile_1.errorRes)(testError)));
|
|
86
|
+
api = buildUsersInstance();
|
|
87
|
+
(0, vitest_1.expect)(api.getCurrentMultiUserProfile()).rejects.toThrow(testError);
|
|
88
|
+
return [2];
|
|
89
|
+
});
|
|
90
|
+
}); });
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
//# sourceMappingURL=Users.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Users.spec.js","sourceRoot":"","sources":["../../../src/__tests__/Users.spec.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iCAA8E;AAC9E,2BAA2B;AAE3B,kCAAiC;AACjC,2CAOyB;AAEzB,SAAS,kBAAkB;IACzB,OAAO,IAAI,aAAK,CAAC;QACf,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,mBAAS;QACnB,MAAM,EAAE,iBAAO;KAChB,CAAC,CAAC;AACL,CAAC;AAED,IAAA,iBAAQ,EAAC,WAAW,EAAE;IACpB,IAAA,kBAAS,EAAC,cAAM,OAAA,uBAAa,CAAC,MAAM,EAAE,EAAtB,CAAsB,CAAC,CAAC;IACxC,IAAA,kBAAS,EAAC,cAAM,OAAA,uBAAa,CAAC,aAAa,EAAE,EAA7B,CAA6B,CAAC,CAAC;IAC/C,IAAA,iBAAQ,EAAC,cAAM,OAAA,uBAAa,CAAC,KAAK,EAAE,EAArB,CAAqB,CAAC,CAAC;IAEtC,IAAA,iBAAQ,EAAC,aAAa,EAAE;QACtB,IAAA,WAAE,EAAC,sBAAsB,EAAE;;;gBACnB,GAAG,GAAG,kBAAkB,EAAE,CAAC;gBACjC,IAAA,eAAM,EAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,mBAAS,CAAC,CAAC;;;aACxC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAA,iBAAQ,EAAC,4BAA4B,EAAE;QACrC,IAAM,GAAG,GAAG,UAAG,iBAAO,qBAAkB,CAAC;QAEzC,IAAA,WAAE,EAAC,4CAA4C,EAAE;;;;;wBAC/C,uBAAa,CAAC,GAAG,CACf,UAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAA,eAAK,EAAC,wBAAc,CAAC,CAAQ,CAC5C,CAAC;wBAEI,GAAG,GAAG,kBAAkB,EAAE,CAAC;wBACrB,WAAM,GAAG,CAAC,0BAA0B,EAAE,EAAA;;wBAA5C,GAAG,GAAG,SAAsC;wBAClD,IAAA,eAAM,EAAC,GAAG,CAAC,CAAC,OAAO,CAAC,wBAAc,CAAC,CAAC;;;;aACrC,CAAC,CAAC;QAEH,IAAA,WAAE,EAAC,mDAAmD,EAAE;;;gBAChD,SAAS,GAAG,qBAAc,IAAI,CAAC,GAAG,EAAE,CAAE,CAAC;gBAC7C,uBAAa,CAAC,GAAG,CAAC,UAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAA,kBAAQ,EAAC,SAAS,CAAC,CAAQ,CAAC,CAAC;gBAEvD,GAAG,GAAG,kBAAkB,EAAE,CAAC;gBACjC,IAAA,eAAM,EAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;;;aACrE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.errorRes = exports.okRes = exports.mockApiServer = exports.profileFixture = exports.USERS_URL = exports.SDK_URL = void 0;
|
|
4
|
+
var msw_1 = require("msw");
|
|
5
|
+
var node_1 = require("msw/node");
|
|
6
|
+
exports.SDK_URL = 'http://sdkapi.url';
|
|
7
|
+
exports.USERS_URL = 'https://users.url';
|
|
8
|
+
exports.profileFixture = {
|
|
9
|
+
id: '06ae0b37-13e0-4880-91b7-382d4b56e1fa',
|
|
10
|
+
username: 'test.user@example.com',
|
|
11
|
+
data: {
|
|
12
|
+
profile: {
|
|
13
|
+
icon: 'https://cdn.example.com/profile.jpg',
|
|
14
|
+
phoneNumber: '+12345678901',
|
|
15
|
+
firstName: 'Test',
|
|
16
|
+
lastName: 'User',
|
|
17
|
+
},
|
|
18
|
+
},
|
|
19
|
+
};
|
|
20
|
+
exports.mockApiServer = (0, node_1.setupServer)();
|
|
21
|
+
function okRes(data, status) {
|
|
22
|
+
if (status === void 0) { status = 200; }
|
|
23
|
+
return function () { return msw_1.HttpResponse.json(data, { status: status }); };
|
|
24
|
+
}
|
|
25
|
+
exports.okRes = okRes;
|
|
26
|
+
function errorRes(errorMessage, status) {
|
|
27
|
+
if (status === void 0) { status = 500; }
|
|
28
|
+
return function () { return msw_1.HttpResponse.json({ error: errorMessage }, { status: status }); };
|
|
29
|
+
}
|
|
30
|
+
exports.errorRes = errorRes;
|
|
31
|
+
//# sourceMappingURL=profile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../../../src/__tests__/mocks/profile.ts"],"names":[],"mappings":";;;AAAA,2BAAiD;AACjD,iCAAuC;AAE1B,QAAA,OAAO,GAAG,mBAAmB,CAAC;AAC9B,QAAA,SAAS,GAAG,mBAAmB,CAAC;AAEhC,QAAA,cAAc,GAAG;IAC5B,EAAE,EAAE,sCAAsC;IAC1C,QAAQ,EAAE,uBAAuB;IACjC,IAAI,EAAE;QACJ,OAAO,EAAE;YACP,IAAI,EAAE,qCAAqC;YAC3C,WAAW,EAAE,cAAc;YAC3B,SAAS,EAAE,MAAM;YACjB,QAAQ,EAAE,MAAM;SACjB;KACF;CACF,CAAC;AAEW,QAAA,aAAa,GAAG,IAAA,kBAAW,GAAE,CAAC;AAE3C,SAAgB,KAAK,CAAC,IAAkB,EAAE,MAAY;IAAZ,uBAAA,EAAA,YAAY;IACpD,OAAO,cAAM,OAAA,kBAAY,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC,EAAnC,CAAmC,CAAC;AACnD,CAAC;AAFD,sBAEC;AAED,SAAgB,QAAQ,CAAC,YAAoB,EAAE,MAAY;IAAZ,uBAAA,EAAA,YAAY;IACzD,OAAO,cAAM,OAAA,kBAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,QAAA,EAAE,CAAC,EAAtD,CAAsD,CAAC;AACtE,CAAC;AAFD,4BAEC"}
|
package/dist/esm/Users.js
CHANGED
|
@@ -55,6 +55,14 @@ export class Users extends Base {
|
|
|
55
55
|
});
|
|
56
56
|
});
|
|
57
57
|
}
|
|
58
|
+
getCurrentMultiUserProfile() {
|
|
59
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
return yield this.sdkApi.makeRequest({
|
|
61
|
+
method: 'GET',
|
|
62
|
+
route: '/user/multi-user',
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
}
|
|
58
66
|
getAccountInfo() {
|
|
59
67
|
return __awaiter(this, void 0, void 0, function* () {
|
|
60
68
|
return this.callApiV2({
|
package/dist/esm/Users.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Users.js","sourceRoot":"","sources":["../../src/Users.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAQ,QAAQ,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"Users.js","sourceRoot":"","sources":["../../src/Users.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
import { afterAll, afterEach, beforeAll, describe, expect, it } from 'vitest';
|
|
11
|
+
import { http } from 'msw';
|
|
12
|
+
import { Users } from '../Users';
|
|
13
|
+
import { SDK_URL, USERS_URL, mockApiServer, okRes, errorRes, profileFixture, } from './mocks/profile';
|
|
14
|
+
function buildUsersInstance() {
|
|
15
|
+
return new Users({
|
|
16
|
+
token: 'test-token',
|
|
17
|
+
usersUrl: USERS_URL,
|
|
18
|
+
sdkUrl: SDK_URL,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
describe('Users API', () => {
|
|
22
|
+
beforeAll(() => mockApiServer.listen());
|
|
23
|
+
afterEach(() => mockApiServer.resetHandlers());
|
|
24
|
+
afterAll(() => mockApiServer.close());
|
|
25
|
+
describe('constructor', () => {
|
|
26
|
+
it('initializes properly', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
27
|
+
const api = buildUsersInstance();
|
|
28
|
+
expect(api.serviceUrl).toBe(USERS_URL);
|
|
29
|
+
}));
|
|
30
|
+
});
|
|
31
|
+
describe('getCurrentMultiUserProfile', () => {
|
|
32
|
+
const url = `${SDK_URL}/user/multi-user`;
|
|
33
|
+
it('should make correct the request via SdkApi', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
34
|
+
mockApiServer.use(http.get(url, okRes(profileFixture)));
|
|
35
|
+
const api = buildUsersInstance();
|
|
36
|
+
const res = yield api.getCurrentMultiUserProfile();
|
|
37
|
+
expect(res).toEqual(profileFixture);
|
|
38
|
+
}));
|
|
39
|
+
it('should return error message if API is not working', () => __awaiter(void 0, void 0, void 0, function* () {
|
|
40
|
+
const testError = `Test error ${Date.now()}`;
|
|
41
|
+
mockApiServer.use(http.get(url, errorRes(testError)));
|
|
42
|
+
const api = buildUsersInstance();
|
|
43
|
+
expect(api.getCurrentMultiUserProfile()).rejects.toThrow(testError);
|
|
44
|
+
}));
|
|
45
|
+
});
|
|
46
|
+
});
|
|
47
|
+
//# sourceMappingURL=Users.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Users.spec.js","sourceRoot":"","sources":["../../../src/__tests__/Users.spec.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9E,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAE3B,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EACL,OAAO,EACP,SAAS,EACT,aAAa,EACb,KAAK,EACL,QAAQ,EACR,cAAc,GACf,MAAM,iBAAiB,CAAC;AAEzB,SAAS,kBAAkB;IACzB,OAAO,IAAI,KAAK,CAAC;QACf,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,OAAO;KAChB,CAAC,CAAC;AACL,CAAC;AAED,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACzB,SAAS,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;IACxC,SAAS,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,CAAC;IAC/C,QAAQ,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC,CAAC;IAEtC,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,sBAAsB,EAAE,GAAS,EAAE;YACpC,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACzC,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,MAAM,GAAG,GAAG,GAAG,OAAO,kBAAkB,CAAC;QAEzC,EAAE,CAAC,4CAA4C,EAAE,GAAS,EAAE;YAC1D,aAAa,CAAC,GAAG,CACf,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,cAAc,CAAC,CAAQ,CAC5C,CAAC;YAEF,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;YACjC,MAAM,GAAG,GAAG,MAAM,GAAG,CAAC,0BAA0B,EAAE,CAAC;YACnD,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACtC,CAAC,CAAA,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,GAAS,EAAE;YACjE,MAAM,SAAS,GAAG,cAAc,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAC7C,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAQ,CAAC,CAAC;YAE7D,MAAM,GAAG,GAAG,kBAAkB,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACtE,CAAC,CAAA,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { HttpResponse } from 'msw';
|
|
2
|
+
import { setupServer } from 'msw/node';
|
|
3
|
+
export const SDK_URL = 'http://sdkapi.url';
|
|
4
|
+
export const USERS_URL = 'https://users.url';
|
|
5
|
+
export const profileFixture = {
|
|
6
|
+
id: '06ae0b37-13e0-4880-91b7-382d4b56e1fa',
|
|
7
|
+
username: 'test.user@example.com',
|
|
8
|
+
data: {
|
|
9
|
+
profile: {
|
|
10
|
+
icon: 'https://cdn.example.com/profile.jpg',
|
|
11
|
+
phoneNumber: '+12345678901',
|
|
12
|
+
firstName: 'Test',
|
|
13
|
+
lastName: 'User',
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
export const mockApiServer = setupServer();
|
|
18
|
+
export function okRes(data, status = 200) {
|
|
19
|
+
return () => HttpResponse.json(data, { status });
|
|
20
|
+
}
|
|
21
|
+
export function errorRes(errorMessage, status = 500) {
|
|
22
|
+
return () => HttpResponse.json({ error: errorMessage }, { status });
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=profile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../../../src/__tests__/mocks/profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAgB,MAAM,KAAK,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC,MAAM,CAAC,MAAM,OAAO,GAAG,mBAAmB,CAAC;AAC3C,MAAM,CAAC,MAAM,SAAS,GAAG,mBAAmB,CAAC;AAE7C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,EAAE,EAAE,sCAAsC;IAC1C,QAAQ,EAAE,uBAAuB;IACjC,IAAI,EAAE;QACJ,OAAO,EAAE;YACP,IAAI,EAAE,qCAAqC;YAC3C,WAAW,EAAE,cAAc;YAC3B,SAAS,EAAE,MAAM;YACjB,QAAQ,EAAE,MAAM;SACjB;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,WAAW,EAAE,CAAC;AAE3C,MAAM,UAAU,KAAK,CAAC,IAAkB,EAAE,MAAM,GAAG,GAAG;IACpD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,YAAoB,EAAE,MAAM,GAAG,GAAG;IACzD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AACtE,CAAC"}
|
package/dist/types/Users.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { Base, List } from '@or-sdk/base';
|
|
2
|
-
import { AccountItem, AccountProfile, AttachParams, AttachResponse, ListProfilesParams, ListUsersParams, Profile, ProfileAccountItem, ProfileUserItem, TokenData, User, UserItem, UsersConfig, UserAdvanced, ListUsersAdvancedParams, ListAccountsParams, ListAccountsResponse } from './types';
|
|
2
|
+
import { AccountItem, AccountProfile, AttachParams, AttachResponse, ListProfilesParams, ListUsersParams, Profile, ProfileAccountItem, ProfileUserItem, TokenData, User, UserItem, UsersConfig, UserAdvanced, ListUsersAdvancedParams, ListAccountsParams, ListAccountsResponse, MultiUserProfile } from './types';
|
|
3
3
|
export declare class Users extends Base {
|
|
4
4
|
private readonly sdkApi;
|
|
5
5
|
constructor(params: UsersConfig);
|
|
6
6
|
listUsers(params?: ListUsersParams): Promise<List<UserItem>>;
|
|
7
7
|
getUserById(userId: string, projection?: string[]): Promise<User>;
|
|
8
|
+
getCurrentMultiUserProfile(): Promise<MultiUserProfile>;
|
|
8
9
|
getAccountInfo(): Promise<AccountItem>;
|
|
9
10
|
listAccountProfiles(): Promise<List<AccountProfile>>;
|
|
10
11
|
listProfiles(params?: ListProfilesParams): Promise<List<AccountProfile>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Users.d.ts","sourceRoot":"","sources":["../../src/Users.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAY,MAAM,cAAc,CAAC;AAGpD,OAAO,EACL,WAAW,EACX,cAAc,EACd,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,eAAe,EAAE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EACxF,WAAW,EACX,YAAY,EAAE,uBAAuB,EACrC,kBAAkB,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"Users.d.ts","sourceRoot":"","sources":["../../src/Users.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAY,MAAM,cAAc,CAAC;AAGpD,OAAO,EACL,WAAW,EACX,cAAc,EACd,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,eAAe,EAAE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EACxF,WAAW,EACX,YAAY,EAAE,uBAAuB,EACrC,kBAAkB,EAAE,oBAAoB,EACxC,gBAAgB,EACjB,MAAM,SAAS,CAAC;AAEjB,qBAAa,KAAM,SAAQ,IAAI;IAC7B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;gBAEpB,MAAM,EAAE,WAAW;IAyBlB,SAAS,CAAC,MAAM,kBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAqBlE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,GAAE,MAAM,EAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBrE,0BAA0B,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAavD,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAatC,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAapD,YAAY,CAAC,MAAM,qBAA2B,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAmB9E,iBAAiB,CAAC,MAAM,0BAAgC,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAclF,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAanD,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAkB5D,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAalD,cAAc,IAAI,OAAO,CAAC,SAAS,CAAC;IAapC,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;KAAE,CAAC;IAa1D,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAa7D,uBAAuB,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;IAYxD,YAAY,CAAC,MAAM,GAAE,kBAAuB,GAAG,OAAO,CAAC,oBAAoB,CAAC;CAU1F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Users.spec.d.ts","sourceRoot":"","sources":["../../../src/__tests__/Users.spec.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { JsonBodyType } from 'msw';
|
|
2
|
+
export declare const SDK_URL = "http://sdkapi.url";
|
|
3
|
+
export declare const USERS_URL = "https://users.url";
|
|
4
|
+
export declare const profileFixture: {
|
|
5
|
+
id: string;
|
|
6
|
+
username: string;
|
|
7
|
+
data: {
|
|
8
|
+
profile: {
|
|
9
|
+
icon: string;
|
|
10
|
+
phoneNumber: string;
|
|
11
|
+
firstName: string;
|
|
12
|
+
lastName: string;
|
|
13
|
+
};
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
export declare const mockApiServer: import("msw/lib/node").SetupServer;
|
|
17
|
+
export declare function okRes(data: JsonBodyType, status?: number): () => import("msw/lib/core/RequestHandler-CwjkprZE").e<string | number | boolean | Record<string, any>>;
|
|
18
|
+
export declare function errorRes(errorMessage: string, status?: number): () => import("msw/lib/core/RequestHandler-CwjkprZE").e<{
|
|
19
|
+
error: string;
|
|
20
|
+
}>;
|
|
21
|
+
//# sourceMappingURL=profile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../../../src/__tests__/mocks/profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,YAAY,EAAE,MAAM,KAAK,CAAC;AAGjD,eAAO,MAAM,OAAO,sBAAsB,CAAC;AAC3C,eAAO,MAAM,SAAS,sBAAsB,CAAC;AAE7C,eAAO,MAAM,cAAc;;;;;;;;;;;CAW1B,CAAC;AAEF,eAAO,MAAM,aAAa,oCAAgB,CAAC;AAE3C,wBAAgB,KAAK,CAAC,IAAI,EAAE,YAAY,EAAE,MAAM,SAAM,2GAErD;AAED,wBAAgB,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,SAAM;;GAE1D"}
|
package/dist/types/types.d.ts
CHANGED
|
@@ -34,6 +34,18 @@ export declare type User = {
|
|
|
34
34
|
username: string;
|
|
35
35
|
id: string;
|
|
36
36
|
};
|
|
37
|
+
export declare type MultiUserProfile = {
|
|
38
|
+
id: string;
|
|
39
|
+
username: string;
|
|
40
|
+
data: {
|
|
41
|
+
profile: {
|
|
42
|
+
icon?: string;
|
|
43
|
+
phoneNumber?: string;
|
|
44
|
+
firstName?: string;
|
|
45
|
+
lastName?: string;
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
};
|
|
37
49
|
export declare type TokenData = {
|
|
38
50
|
allow: boolean;
|
|
39
51
|
tokenType: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAEtE,oBAAY,WAAW,GAAG;IAIxB,KAAK,EAAE,KAAK,CAAC;IAKb,YAAY,CAAC,EAAE,MAAM,CAAC;IAKtB,SAAS,CAAC,EAAE,MAAM,CAAC;IAKnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAKlB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,eAAe,GAAG,YAAY,GAAG,iBAAiB,GAAG;IAC/D,KAAK,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KAAC,CAAC;CAC9B,CAAC;AAEF,oBAAY,QAAQ,GAAG;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@or-sdk/users",
|
|
3
|
-
"version": "2.3.0
|
|
3
|
+
"version": "2.3.0",
|
|
4
4
|
"main": "dist/cjs/index.js",
|
|
5
5
|
"module": "dist/esm/index.js",
|
|
6
6
|
"types": "dist/types/index.d.ts",
|
|
@@ -14,17 +14,22 @@
|
|
|
14
14
|
"build:watch:esm": "tsc --project tsconfig.esm.json -w",
|
|
15
15
|
"build:watch:types": "tsc --project tsconfig.types.json -w",
|
|
16
16
|
"clean": "rm -rf ./dist",
|
|
17
|
-
"dev": "pnpm build:watch:esm"
|
|
17
|
+
"dev": "pnpm build:watch:esm",
|
|
18
|
+
"test": "vitest --run",
|
|
19
|
+
"test:watch": "vitest --watch"
|
|
18
20
|
},
|
|
19
21
|
"dependencies": {
|
|
20
|
-
"@or-sdk/base": "^0.
|
|
21
|
-
"@or-sdk/sdk-api": "^0.
|
|
22
|
+
"@or-sdk/base": "^0.31.0",
|
|
23
|
+
"@or-sdk/sdk-api": "^0.25.1"
|
|
22
24
|
},
|
|
23
25
|
"devDependencies": {
|
|
24
26
|
"concurrently": "^6.4.0",
|
|
25
|
-
"
|
|
27
|
+
"msw": "^2.1.5",
|
|
28
|
+
"typescript": "^4.4.4",
|
|
29
|
+
"vitest": "^0.31.1"
|
|
26
30
|
},
|
|
27
31
|
"publishConfig": {
|
|
28
32
|
"access": "public"
|
|
29
|
-
}
|
|
33
|
+
},
|
|
34
|
+
"gitHead": "f6df96ac3713e46a89217bef50ec3865123b32e2"
|
|
30
35
|
}
|
package/src/Users.ts
CHANGED
|
@@ -11,6 +11,7 @@ import {
|
|
|
11
11
|
UsersConfig,
|
|
12
12
|
UserAdvanced, ListUsersAdvancedParams,
|
|
13
13
|
ListAccountsParams, ListAccountsResponse,
|
|
14
|
+
MultiUserProfile,
|
|
14
15
|
} from './types';
|
|
15
16
|
|
|
16
17
|
export class Users extends Base {
|
|
@@ -74,6 +75,19 @@ export class Users extends Base {
|
|
|
74
75
|
});
|
|
75
76
|
}
|
|
76
77
|
|
|
78
|
+
/**
|
|
79
|
+
* Get multi-user profile using user token
|
|
80
|
+
* ```typescript
|
|
81
|
+
* const profile = await instance.getCurrentMultiUserProfile();
|
|
82
|
+
* ```
|
|
83
|
+
*/
|
|
84
|
+
public async getCurrentMultiUserProfile(): Promise<MultiUserProfile> {
|
|
85
|
+
return await this.sdkApi.makeRequest<MultiUserProfile>({
|
|
86
|
+
method: 'GET',
|
|
87
|
+
route: '/user/multi-user',
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
|
|
77
91
|
/**
|
|
78
92
|
* Get account info
|
|
79
93
|
* ```typescript
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { afterAll, afterEach, beforeAll, describe, expect, it } from 'vitest';
|
|
2
|
+
import { http } from 'msw';
|
|
3
|
+
|
|
4
|
+
import { Users } from '../Users';
|
|
5
|
+
import {
|
|
6
|
+
SDK_URL,
|
|
7
|
+
USERS_URL,
|
|
8
|
+
mockApiServer,
|
|
9
|
+
okRes,
|
|
10
|
+
errorRes,
|
|
11
|
+
profileFixture,
|
|
12
|
+
} from './mocks/profile';
|
|
13
|
+
|
|
14
|
+
function buildUsersInstance() {
|
|
15
|
+
return new Users({
|
|
16
|
+
token: 'test-token',
|
|
17
|
+
usersUrl: USERS_URL,
|
|
18
|
+
sdkUrl: SDK_URL,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
describe('Users API', () => {
|
|
23
|
+
beforeAll(() => mockApiServer.listen());
|
|
24
|
+
afterEach(() => mockApiServer.resetHandlers());
|
|
25
|
+
afterAll(() => mockApiServer.close());
|
|
26
|
+
|
|
27
|
+
describe('constructor', () => {
|
|
28
|
+
it('initializes properly', async () => {
|
|
29
|
+
const api = buildUsersInstance();
|
|
30
|
+
expect(api.serviceUrl).toBe(USERS_URL);
|
|
31
|
+
});
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
describe('getCurrentMultiUserProfile', () => {
|
|
35
|
+
const url = `${SDK_URL}/user/multi-user`;
|
|
36
|
+
|
|
37
|
+
it('should make correct the request via SdkApi', async () => {
|
|
38
|
+
mockApiServer.use(
|
|
39
|
+
http.get(url, okRes(profileFixture)) as any,
|
|
40
|
+
);
|
|
41
|
+
|
|
42
|
+
const api = buildUsersInstance();
|
|
43
|
+
const res = await api.getCurrentMultiUserProfile();
|
|
44
|
+
expect(res).toEqual(profileFixture);
|
|
45
|
+
});
|
|
46
|
+
|
|
47
|
+
it('should return error message if API is not working', async () => {
|
|
48
|
+
const testError = `Test error ${Date.now()}`;
|
|
49
|
+
mockApiServer.use(http.get(url, errorRes(testError)) as any);
|
|
50
|
+
|
|
51
|
+
const api = buildUsersInstance();
|
|
52
|
+
expect(api.getCurrentMultiUserProfile()).rejects.toThrow(testError);
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
});
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { HttpResponse, JsonBodyType } from 'msw';
|
|
2
|
+
import { setupServer } from 'msw/node';
|
|
3
|
+
|
|
4
|
+
export const SDK_URL = 'http://sdkapi.url';
|
|
5
|
+
export const USERS_URL = 'https://users.url';
|
|
6
|
+
|
|
7
|
+
export const profileFixture = {
|
|
8
|
+
id: '06ae0b37-13e0-4880-91b7-382d4b56e1fa',
|
|
9
|
+
username: 'test.user@example.com',
|
|
10
|
+
data: {
|
|
11
|
+
profile: {
|
|
12
|
+
icon: 'https://cdn.example.com/profile.jpg',
|
|
13
|
+
phoneNumber: '+12345678901',
|
|
14
|
+
firstName: 'Test',
|
|
15
|
+
lastName: 'User',
|
|
16
|
+
},
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
|
|
20
|
+
export const mockApiServer = setupServer();
|
|
21
|
+
|
|
22
|
+
export function okRes(data: JsonBodyType, status = 200) {
|
|
23
|
+
return () => HttpResponse.json(data, { status });
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
export function errorRes(errorMessage: string, status = 500) {
|
|
27
|
+
return () => HttpResponse.json({ error: errorMessage }, { status });
|
|
28
|
+
}
|
package/src/types.ts
CHANGED
|
@@ -31,7 +31,16 @@ export type ListUsersParams = OrderOptions & PaginationOptions & {
|
|
|
31
31
|
query: {[key: string]: any;};
|
|
32
32
|
};
|
|
33
33
|
|
|
34
|
-
export type UserItem = {
|
|
34
|
+
export type UserItem = {
|
|
35
|
+
id: string;
|
|
36
|
+
email: string;
|
|
37
|
+
username: string;
|
|
38
|
+
data: {
|
|
39
|
+
firstName: string;
|
|
40
|
+
lastName: string;
|
|
41
|
+
contactPhone: string;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
35
44
|
|
|
36
45
|
export type User = {
|
|
37
46
|
dateCreated: number;
|
|
@@ -47,6 +56,19 @@ export type User = {
|
|
|
47
56
|
id: string;
|
|
48
57
|
};
|
|
49
58
|
|
|
59
|
+
export type MultiUserProfile = {
|
|
60
|
+
id: string;
|
|
61
|
+
username: string;
|
|
62
|
+
data: {
|
|
63
|
+
profile: {
|
|
64
|
+
icon?: string;
|
|
65
|
+
phoneNumber?: string;
|
|
66
|
+
firstName?: string;
|
|
67
|
+
lastName?: string;
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
|
|
50
72
|
export type TokenData = {
|
|
51
73
|
allow: boolean;
|
|
52
74
|
tokenType: string;
|
package/vitest.config.js
ADDED
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { defineConfig } from 'vitest/config';
|
|
2
|
+
|
|
3
|
+
export default defineConfig({
|
|
4
|
+
test: {
|
|
5
|
+
reporters: ['junit', 'basic'],
|
|
6
|
+
outputFile: 'test-results/junit.xml',
|
|
7
|
+
coverage: {
|
|
8
|
+
all: true,
|
|
9
|
+
reporter: ['text', 'json', 'html', 'cobertura', 'text-summary'],
|
|
10
|
+
clean: true,
|
|
11
|
+
include: [
|
|
12
|
+
'src/**',
|
|
13
|
+
],
|
|
14
|
+
exclude: [
|
|
15
|
+
'src/types.ts',
|
|
16
|
+
'**/*.spec.ts',
|
|
17
|
+
],
|
|
18
|
+
},
|
|
19
|
+
globals: true,
|
|
20
|
+
environment: 'node',
|
|
21
|
+
clearMocks: true,
|
|
22
|
+
watch: true,
|
|
23
|
+
},
|
|
24
|
+
});
|