@iapps/d2-web-sdk 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/lib/d2-web-sdk.d.ts +9 -3
- package/src/lib/d2-web-sdk.js +78 -8
- package/src/lib/d2-web-sdk.js.map +1 -1
- package/src/lib/modules/app-manifest/app-manifest.module.d.ts +7 -0
- package/src/lib/modules/app-manifest/app-manifest.module.js +29 -0
- package/src/lib/modules/app-manifest/app-manifest.module.js.map +1 -0
- package/src/lib/modules/app-manifest/index.d.ts +2 -0
- package/src/lib/modules/app-manifest/index.js +9 -0
- package/src/lib/modules/app-manifest/index.js.map +1 -0
- package/src/lib/modules/app-manifest/models/index.d.ts +1 -0
- package/src/lib/modules/app-manifest/models/index.js +8 -0
- package/src/lib/modules/app-manifest/models/index.js.map +1 -0
- package/src/lib/modules/app-manifest/models/manifest.model.d.ts +24 -0
- package/src/lib/modules/app-manifest/models/manifest.model.js +3 -0
- package/src/lib/modules/app-manifest/models/manifest.model.js.map +1 -0
- package/src/lib/modules/index.d.ts +2 -0
- package/src/lib/modules/index.js +2 -0
- package/src/lib/modules/index.js.map +1 -1
- package/src/lib/modules/tracker/queries/base-tracker.query.d.ts +14 -4
- package/src/lib/modules/tracker/queries/base-tracker.query.js +40 -59
- package/src/lib/modules/tracker/queries/base-tracker.query.js.map +1 -1
- package/src/lib/modules/tracker/queries/index.d.ts +1 -0
- package/src/lib/modules/tracker/queries/index.js +1 -0
- package/src/lib/modules/tracker/queries/index.js.map +1 -1
- package/src/lib/modules/tracker/queries/model-base-tracker.query.d.ts +11 -0
- package/src/lib/modules/tracker/queries/model-base-tracker.query.js +60 -0
- package/src/lib/modules/tracker/queries/model-base-tracker.query.js.map +1 -0
- package/src/lib/modules/tracker/tracker.module.d.ts +3 -2
- package/src/lib/modules/tracker/tracker.module.js +4 -1
- package/src/lib/modules/tracker/tracker.module.js.map +1 -1
- package/src/lib/modules/user/index.d.ts +3 -0
- package/src/lib/modules/user/index.js +7 -0
- package/src/lib/modules/user/index.js.map +1 -0
- package/src/lib/modules/user/models/current-user.model.d.ts +4 -0
- package/src/lib/modules/user/models/current-user.model.js +8 -0
- package/src/lib/modules/user/models/current-user.model.js.map +1 -0
- package/src/lib/modules/user/models/index.d.ts +2 -0
- package/src/lib/modules/user/models/index.js +9 -0
- package/src/lib/modules/user/models/index.js.map +1 -0
- package/src/lib/modules/user/models/user.model.d.ts +13 -0
- package/src/lib/modules/user/models/user.model.js +18 -0
- package/src/lib/modules/user/models/user.model.js.map +1 -0
- package/src/lib/modules/user/queries/index.d.ts +1 -0
- package/src/lib/modules/user/queries/index.js +8 -0
- package/src/lib/modules/user/queries/index.js.map +1 -0
- package/src/lib/modules/user/queries/user.query.d.ts +5 -0
- package/src/lib/modules/user/queries/user.query.js +15 -0
- package/src/lib/modules/user/queries/user.query.js.map +1 -0
- package/src/lib/modules/user/user.module.d.ts +9 -0
- package/src/lib/modules/user/user.module.js +38 -0
- package/src/lib/modules/user/user.module.js.map +1 -0
- package/src/lib/shared/models/d2-http-request-config.model.d.ts +13 -0
- package/src/lib/shared/models/d2-http-request-config.model.js +3 -0
- package/src/lib/shared/models/d2-http-request-config.model.js.map +1 -0
- package/src/lib/shared/models/http-client.model.d.ts +3 -2
- package/src/lib/shared/models/http-client.model.js +12 -5
- package/src/lib/shared/models/http-client.model.js.map +1 -1
- package/src/lib/shared/models/index.d.ts +1 -0
- package/src/lib/shared/models/index.js +1 -0
- package/src/lib/shared/models/index.js.map +1 -1
package/package.json
CHANGED
package/src/lib/d2-web-sdk.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AxiosDefaults } from 'axios';
|
|
2
|
-
import { D2EngineModule, DataElementModule, OptionSetModule, ProgramModule, TrackerModule } from './modules';
|
|
2
|
+
import { CurrentUser, D2EngineModule, DataElementModule, Manifest, OptionSetModule, ProgramModule, TrackerModule, UserModule } from './modules';
|
|
3
3
|
import { D2HttpClient, D2WebConfig } from './shared';
|
|
4
4
|
export interface D2Window extends Window {
|
|
5
5
|
d2Web: D2Web;
|
|
@@ -8,12 +8,18 @@ export declare class D2Web {
|
|
|
8
8
|
#private;
|
|
9
9
|
private static instance;
|
|
10
10
|
httpInstance: D2HttpClient;
|
|
11
|
-
|
|
11
|
+
appManifest: Manifest | null;
|
|
12
|
+
currentUser: CurrentUser | null;
|
|
12
13
|
private constructor();
|
|
13
|
-
static
|
|
14
|
+
static initialize(config: D2WebConfig): Promise<D2Web>;
|
|
15
|
+
static getInstance(config: D2WebConfig): Promise<D2Web>;
|
|
14
16
|
setConfig(config: D2WebConfig): void;
|
|
17
|
+
setAppManifest(): Promise<void>;
|
|
18
|
+
setCurrentUser(): Promise<void>;
|
|
15
19
|
setHttpInstance(httpConfig: AxiosDefaults): void;
|
|
20
|
+
get rootUrl(): string;
|
|
16
21
|
get config(): D2WebConfig;
|
|
22
|
+
get userModule(): UserModule;
|
|
17
23
|
get programModule(): ProgramModule;
|
|
18
24
|
get dataElementModule(): DataElementModule;
|
|
19
25
|
get optionSetModule(): OptionSetModule;
|
package/src/lib/d2-web-sdk.js
CHANGED
|
@@ -12,25 +12,95 @@ class D2Web {
|
|
|
12
12
|
constructor() {
|
|
13
13
|
_D2Web_config.set(this, void 0);
|
|
14
14
|
}
|
|
15
|
+
static initialize(config) {
|
|
16
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
if (!D2Web.instance) {
|
|
18
|
+
const instance = new D2Web();
|
|
19
|
+
/**
|
|
20
|
+
* Set configuration
|
|
21
|
+
*/
|
|
22
|
+
instance.setConfig(config);
|
|
23
|
+
/**
|
|
24
|
+
* Initialize http instance to allow http request using axios
|
|
25
|
+
*/
|
|
26
|
+
instance.setHttpInstance(config.httpClientConfig);
|
|
27
|
+
/**
|
|
28
|
+
* Fetch and set app manifest
|
|
29
|
+
*/
|
|
30
|
+
yield instance.setAppManifest();
|
|
31
|
+
/**
|
|
32
|
+
* Update http instance to account for new information from manifest
|
|
33
|
+
*/
|
|
34
|
+
const newWebConfig = new shared_1.D2WebConfig({
|
|
35
|
+
baseUrl: instance.rootUrl,
|
|
36
|
+
});
|
|
37
|
+
instance.setHttpInstance(newWebConfig.httpClientConfig);
|
|
38
|
+
/**
|
|
39
|
+
* Fetch and set current user
|
|
40
|
+
*/
|
|
41
|
+
yield instance.setCurrentUser();
|
|
42
|
+
D2Web.instance = instance;
|
|
43
|
+
window.d2Web = instance;
|
|
44
|
+
}
|
|
45
|
+
return D2Web.instance;
|
|
46
|
+
});
|
|
47
|
+
}
|
|
15
48
|
static getInstance(config) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
D2Web.instance
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
return D2Web.instance;
|
|
49
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
50
|
+
if (!D2Web.instance) {
|
|
51
|
+
return yield D2Web.initialize(config);
|
|
52
|
+
}
|
|
53
|
+
return D2Web.instance;
|
|
54
|
+
});
|
|
24
55
|
}
|
|
25
56
|
setConfig(config) {
|
|
26
57
|
tslib_1.__classPrivateFieldSet(this, _D2Web_config, config, "f");
|
|
27
58
|
}
|
|
59
|
+
setAppManifest() {
|
|
60
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
61
|
+
const appManifestModule = new modules_1.AppManifestModule(this.httpInstance);
|
|
62
|
+
try {
|
|
63
|
+
const manifest = yield appManifestModule.get();
|
|
64
|
+
this.appManifest = manifest;
|
|
65
|
+
}
|
|
66
|
+
catch (e) {
|
|
67
|
+
this.appManifest = null;
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
setCurrentUser() {
|
|
72
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
73
|
+
try {
|
|
74
|
+
const currentUser = yield this.userModule.currentUser();
|
|
75
|
+
if (currentUser) {
|
|
76
|
+
this.currentUser = currentUser;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
catch (e) {
|
|
80
|
+
throw new Error('Current user information could not be found or determined');
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
}
|
|
28
84
|
setHttpInstance(httpConfig) {
|
|
29
85
|
this.httpInstance = new shared_1.D2HttpClient(httpConfig);
|
|
30
86
|
}
|
|
87
|
+
get rootUrl() {
|
|
88
|
+
const defaultRootUrl = '../../..';
|
|
89
|
+
if (!this.appManifest) {
|
|
90
|
+
return defaultRootUrl;
|
|
91
|
+
}
|
|
92
|
+
return this.appManifest.activities &&
|
|
93
|
+
this.appManifest.activities.dhis &&
|
|
94
|
+
this.appManifest.activities.dhis.href
|
|
95
|
+
? this.appManifest.activities.dhis.href
|
|
96
|
+
: defaultRootUrl;
|
|
97
|
+
}
|
|
31
98
|
get config() {
|
|
32
99
|
return tslib_1.__classPrivateFieldGet(this, _D2Web_config, "f");
|
|
33
100
|
}
|
|
101
|
+
get userModule() {
|
|
102
|
+
return new modules_1.UserModule(this.httpInstance);
|
|
103
|
+
}
|
|
34
104
|
get programModule() {
|
|
35
105
|
return new modules_1.ProgramModule(this.httpInstance);
|
|
36
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"d2-web-sdk.js","sourceRoot":"","sources":["../../../../../packages/dhis2-web-sdk/src/lib/d2-web-sdk.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;;;;;AAGjD,
|
|
1
|
+
{"version":3,"file":"d2-web-sdk.js","sourceRoot":"","sources":["../../../../../packages/dhis2-web-sdk/src/lib/d2-web-sdk.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2025 UDSM DHIS2 Lab. All rights reserved.
|
|
3
|
+
// Use of this source code is governed by a BSD-style
|
|
4
|
+
// license that can be found in the LICENSE file.
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.AppManifestModule = void 0;
|
|
7
|
+
const tslib_1 = require("tslib");
|
|
8
|
+
class AppManifestModule {
|
|
9
|
+
constructor(httpClient) {
|
|
10
|
+
this.httpClient = httpClient;
|
|
11
|
+
}
|
|
12
|
+
get() {
|
|
13
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
14
|
+
let manifest = null;
|
|
15
|
+
try {
|
|
16
|
+
const manifestResponse = yield this.httpClient.get('manifest.webapp', {
|
|
17
|
+
useRootUrl: true,
|
|
18
|
+
});
|
|
19
|
+
manifest = manifestResponse.data || null;
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
console.warn('Manifest file could not be loaded, default options have been used instead');
|
|
23
|
+
}
|
|
24
|
+
return manifest;
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.AppManifestModule = AppManifestModule;
|
|
29
|
+
//# sourceMappingURL=app-manifest.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-manifest.module.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/modules/app-manifest/app-manifest.module.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;;;;AAIjD,MAAa,iBAAiB;IAC5B,YAAoB,UAAwB;QAAxB,eAAU,GAAV,UAAU,CAAc;IAAG,CAAC;IAE1C,GAAG;;YACP,IAAI,QAAQ,GAAG,IAAI,CAAC;YAEpB,IAAI,CAAC;gBACH,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,iBAAiB,EAAE;oBACpE,UAAU,EAAE,IAAI;iBACjB,CAAC,CAAC;gBAEH,QAAQ,GAAI,gBAAgB,CAAC,IAA4B,IAAI,IAAI,CAAC;YACpE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CACV,2EAA2E,CAC5E,CAAC;YACJ,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;KAAA;CACF;AApBD,8CAoBC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
// Copyright 2025 UDSM DHIS2 Lab. All rights reserved.
|
|
5
|
+
// Use of this source code is governed by a BSD-style
|
|
6
|
+
// license that can be found in the LICENSE file.
|
|
7
|
+
tslib_1.__exportStar(require("./models"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./app-manifest.module"), exports);
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/modules/app-manifest/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,mDAAyB;AACzB,gEAAsC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './manifest.model';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
// Copyright 2025 UDSM DHIS2 Lab. All rights reserved.
|
|
5
|
+
// Use of this source code is governed by a BSD-style
|
|
6
|
+
// license that can be found in the LICENSE file.
|
|
7
|
+
tslib_1.__exportStar(require("./manifest.model"), exports);
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/app-manifest/models/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,2DAAiC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export interface Manifest {
|
|
2
|
+
name: string;
|
|
3
|
+
version: number | string;
|
|
4
|
+
description: string;
|
|
5
|
+
launch_path: string;
|
|
6
|
+
appType: string;
|
|
7
|
+
icons: {
|
|
8
|
+
16: string;
|
|
9
|
+
48: string;
|
|
10
|
+
128: string;
|
|
11
|
+
};
|
|
12
|
+
developer: {
|
|
13
|
+
name: string;
|
|
14
|
+
url: string;
|
|
15
|
+
};
|
|
16
|
+
default_locale: string;
|
|
17
|
+
activities: {
|
|
18
|
+
dhis: {
|
|
19
|
+
href: string;
|
|
20
|
+
namespace: string;
|
|
21
|
+
};
|
|
22
|
+
};
|
|
23
|
+
authorities: Array<string>;
|
|
24
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manifest.model.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/app-manifest/models/manifest.model.ts"],"names":[],"mappings":""}
|
package/src/lib/modules/index.js
CHANGED
|
@@ -4,6 +4,8 @@ const tslib_1 = require("tslib");
|
|
|
4
4
|
// Copyright 2024 UDSM DHIS2 Lab. All rights reserved.
|
|
5
5
|
// Use of this source code is governed by a BSD-style
|
|
6
6
|
// license that can be found in the LICENSE file.
|
|
7
|
+
tslib_1.__exportStar(require("./app-manifest"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./user"), exports);
|
|
7
9
|
tslib_1.__exportStar(require("./data-element"), exports);
|
|
8
10
|
tslib_1.__exportStar(require("./option-set"), exports);
|
|
9
11
|
tslib_1.__exportStar(require("./program"), exports);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/dhis2-web-sdk/src/lib/modules/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,yDAA+B;AAC/B,uDAA6B;AAC7B,oDAA0B;AAC1B,mDAAyB;AACzB,oDAA0B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/dhis2-web-sdk/src/lib/modules/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,yDAA+B;AAC/B,iDAAuB;AACvB,yDAA+B;AAC/B,uDAA6B;AAC7B,oDAA0B;AAC1B,mDAAyB;AACzB,oDAA0B"}
|
|
@@ -1,15 +1,24 @@
|
|
|
1
1
|
import { Program } from '../../program';
|
|
2
|
-
import { D2HttpClient, Pager } from '../../../shared';
|
|
2
|
+
import { D2HttpClient, D2HttpResponse, Pager } from '../../../shared';
|
|
3
3
|
import { D2TrackerResponse, ITrackedEntityInstance, ProgramDateType, TrackedEntityInstance, TrackerQueryFilter } from '../models';
|
|
4
4
|
export declare class BaseTrackerQuery<T extends TrackedEntityInstance> {
|
|
5
5
|
#private;
|
|
6
|
-
protected identifiable: ITrackedEntityInstance;
|
|
7
6
|
protected httpClient: D2HttpClient;
|
|
7
|
+
protected orgUnit?: string;
|
|
8
|
+
protected ouMode: 'ALL' | 'DESCENDANTS' | 'SELECTED';
|
|
9
|
+
protected program?: string;
|
|
10
|
+
protected trackedEntityType?: string;
|
|
11
|
+
protected filters?: TrackerQueryFilter[];
|
|
12
|
+
protected fields?: string;
|
|
13
|
+
protected enrollmentEnrolledAfter?: string;
|
|
14
|
+
protected enrollmentEnrolledBefore?: string;
|
|
15
|
+
protected trackedEntity?: string;
|
|
8
16
|
event?: string;
|
|
17
|
+
protected pager: Pager;
|
|
9
18
|
[key: string]: unknown;
|
|
10
19
|
instance: T;
|
|
11
|
-
|
|
12
|
-
|
|
20
|
+
identifiable: ITrackedEntityInstance;
|
|
21
|
+
constructor(httpClient: D2HttpClient);
|
|
13
22
|
setOrgUnit(orgUnitValue: string | string[]): BaseTrackerQuery<T>;
|
|
14
23
|
setOuMode(ouMode: 'ALL' | 'DESCENDANTS' | 'SELECTED'): BaseTrackerQuery<T>;
|
|
15
24
|
setProgram(program: string): BaseTrackerQuery<T>;
|
|
@@ -27,6 +36,7 @@ export declare class BaseTrackerQuery<T extends TrackedEntityInstance> {
|
|
|
27
36
|
value: string;
|
|
28
37
|
}[]>;
|
|
29
38
|
get(): Promise<D2TrackerResponse<T>>;
|
|
39
|
+
protected fetchData(): Promise<D2HttpResponse>;
|
|
30
40
|
save(): Promise<D2TrackerResponse<T>>;
|
|
31
41
|
getMetaData(): Promise<Program | null>;
|
|
32
42
|
}
|
|
@@ -2,66 +2,42 @@
|
|
|
2
2
|
// Copyright 2024 UDSM DHIS2 Lab. All rights reserved.
|
|
3
3
|
// Use of this source code is governed by a BSD-style
|
|
4
4
|
// license that can be found in the LICENSE file.
|
|
5
|
-
var _BaseTrackerQuery_instances,
|
|
5
|
+
var _BaseTrackerQuery_instances, _BaseTrackerQuery_saveSelectedEvent, _BaseTrackerQuery_saveAll;
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.BaseTrackerQuery = void 0;
|
|
8
8
|
const tslib_1 = require("tslib");
|
|
9
9
|
const shared_1 = require("../../../shared");
|
|
10
10
|
const models_1 = require("../models");
|
|
11
11
|
class BaseTrackerQuery {
|
|
12
|
-
constructor(
|
|
12
|
+
constructor(httpClient) {
|
|
13
13
|
_BaseTrackerQuery_instances.add(this);
|
|
14
|
-
this.identifiable = identifiable;
|
|
15
14
|
this.httpClient = httpClient;
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
_BaseTrackerQuery_filters.set(this, void 0);
|
|
21
|
-
_BaseTrackerQuery_fields.set(this, void 0);
|
|
22
|
-
_BaseTrackerQuery_enrollmentEnrolledAfter.set(this, void 0);
|
|
23
|
-
_BaseTrackerQuery_enrollmentEnrolledBefore.set(this, void 0);
|
|
24
|
-
_BaseTrackerQuery_trackedEntity.set(this, void 0);
|
|
25
|
-
_BaseTrackerQuery_pager.set(this, new shared_1.Pager());
|
|
26
|
-
this.instance = new identifiable();
|
|
27
|
-
this.setProgram(this.instance.program);
|
|
28
|
-
this.setTrackedEntityType(this.instance.trackedEntityType);
|
|
29
|
-
}
|
|
30
|
-
byId(id) {
|
|
31
|
-
// TODO: This is a hack to make sure attribute ID is dynamically set, find best way around this
|
|
32
|
-
this.instance.id = id;
|
|
33
|
-
const attributeProperty = (this.instance.fields || {})['id'];
|
|
34
|
-
if (!attributeProperty) {
|
|
35
|
-
return this;
|
|
36
|
-
}
|
|
37
|
-
this.setFilters([
|
|
38
|
-
new models_1.TrackerQueryFilter()
|
|
39
|
-
.setAttribute(attributeProperty.id)
|
|
40
|
-
.setCondition('EQ')
|
|
41
|
-
.setValue(id),
|
|
42
|
-
]);
|
|
43
|
-
return this;
|
|
15
|
+
this.ouMode = 'ALL';
|
|
16
|
+
this.pager = new shared_1.Pager();
|
|
17
|
+
this.identifiable =
|
|
18
|
+
models_1.TrackedEntityInstance;
|
|
44
19
|
}
|
|
45
20
|
setOrgUnit(orgUnitValue) {
|
|
46
21
|
if (orgUnitValue) {
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
22
|
+
this.orgUnit =
|
|
23
|
+
typeof orgUnitValue === 'object'
|
|
24
|
+
? orgUnitValue.join(';')
|
|
25
|
+
: orgUnitValue;
|
|
50
26
|
}
|
|
51
27
|
return this;
|
|
52
28
|
}
|
|
53
29
|
setOuMode(ouMode) {
|
|
54
|
-
|
|
30
|
+
this.ouMode = ouMode;
|
|
55
31
|
return this;
|
|
56
32
|
}
|
|
57
33
|
setProgram(program) {
|
|
58
|
-
|
|
34
|
+
this.program = program;
|
|
59
35
|
return this;
|
|
60
36
|
}
|
|
61
37
|
setStartDate(startDate, dateType = 'ENROLLED_ON') {
|
|
62
38
|
switch (dateType) {
|
|
63
39
|
case 'ENROLLED_ON':
|
|
64
|
-
|
|
40
|
+
this.enrollmentEnrolledAfter = startDate;
|
|
65
41
|
break;
|
|
66
42
|
default:
|
|
67
43
|
break;
|
|
@@ -71,7 +47,7 @@ class BaseTrackerQuery {
|
|
|
71
47
|
setEndDate(endDate, dateType = 'ENROLLED_ON') {
|
|
72
48
|
switch (dateType) {
|
|
73
49
|
case 'ENROLLED_ON':
|
|
74
|
-
|
|
50
|
+
this.enrollmentEnrolledBefore = endDate;
|
|
75
51
|
break;
|
|
76
52
|
default:
|
|
77
53
|
break;
|
|
@@ -79,23 +55,23 @@ class BaseTrackerQuery {
|
|
|
79
55
|
return this;
|
|
80
56
|
}
|
|
81
57
|
setTrackedEntity(trackedEntity) {
|
|
82
|
-
|
|
58
|
+
this.trackedEntity = trackedEntity;
|
|
83
59
|
return this;
|
|
84
60
|
}
|
|
85
61
|
setTrackedEntityType(trackedEntityType) {
|
|
86
|
-
|
|
62
|
+
this.trackedEntityType = trackedEntityType;
|
|
87
63
|
return this;
|
|
88
64
|
}
|
|
89
65
|
setFilters(filters) {
|
|
90
|
-
|
|
66
|
+
this.filters = filters;
|
|
91
67
|
return this;
|
|
92
68
|
}
|
|
93
69
|
setFields(fields) {
|
|
94
|
-
|
|
70
|
+
this.fields = fields;
|
|
95
71
|
return this;
|
|
96
72
|
}
|
|
97
73
|
setPagination(pagination) {
|
|
98
|
-
|
|
74
|
+
this.pager = pagination;
|
|
99
75
|
return this;
|
|
100
76
|
}
|
|
101
77
|
setData(data) {
|
|
@@ -133,21 +109,26 @@ class BaseTrackerQuery {
|
|
|
133
109
|
}
|
|
134
110
|
get() {
|
|
135
111
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
136
|
-
const response = yield this.
|
|
137
|
-
program: tslib_1.__classPrivateFieldGet(this, _BaseTrackerQuery_program, "f"),
|
|
138
|
-
trackedEntityType: tslib_1.__classPrivateFieldGet(this, _BaseTrackerQuery_trackedEntityType, "f"),
|
|
139
|
-
orgUnit: tslib_1.__classPrivateFieldGet(this, _BaseTrackerQuery_orgUnit, "f"),
|
|
140
|
-
ouMode: tslib_1.__classPrivateFieldGet(this, _BaseTrackerQuery_ouMode, "f"),
|
|
141
|
-
filters: tslib_1.__classPrivateFieldGet(this, _BaseTrackerQuery_filters, "f"),
|
|
142
|
-
fields: tslib_1.__classPrivateFieldGet(this, _BaseTrackerQuery_fields, "f"),
|
|
143
|
-
enrollmentEnrolledAfter: tslib_1.__classPrivateFieldGet(this, _BaseTrackerQuery_enrollmentEnrolledAfter, "f"),
|
|
144
|
-
enrollmentEnrolledBefore: tslib_1.__classPrivateFieldGet(this, _BaseTrackerQuery_enrollmentEnrolledBefore, "f"),
|
|
145
|
-
trackedEntity: tslib_1.__classPrivateFieldGet(this, _BaseTrackerQuery_trackedEntity, "f"),
|
|
146
|
-
pager: tslib_1.__classPrivateFieldGet(this, _BaseTrackerQuery_pager, "f"),
|
|
147
|
-
}).generate());
|
|
112
|
+
const response = yield this.fetchData();
|
|
148
113
|
return new models_1.D2TrackerResponse(response, this.identifiable);
|
|
149
114
|
});
|
|
150
115
|
}
|
|
116
|
+
fetchData() {
|
|
117
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
118
|
+
return yield this.httpClient.get(new models_1.TrackerUrlGenerator({
|
|
119
|
+
program: this.program,
|
|
120
|
+
trackedEntityType: this.trackedEntityType,
|
|
121
|
+
orgUnit: this.orgUnit,
|
|
122
|
+
ouMode: this.ouMode,
|
|
123
|
+
filters: this.filters,
|
|
124
|
+
fields: this.fields,
|
|
125
|
+
enrollmentEnrolledAfter: this.enrollmentEnrolledAfter,
|
|
126
|
+
enrollmentEnrolledBefore: this.enrollmentEnrolledBefore,
|
|
127
|
+
trackedEntity: this.trackedEntity,
|
|
128
|
+
pager: this.pager,
|
|
129
|
+
}).generate());
|
|
130
|
+
});
|
|
131
|
+
}
|
|
151
132
|
save() {
|
|
152
133
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
153
134
|
if (this.event) {
|
|
@@ -162,7 +143,7 @@ class BaseTrackerQuery {
|
|
|
162
143
|
const d2 = window.d2Web;
|
|
163
144
|
const metaDataResponse = yield Promise.all([
|
|
164
145
|
d2.programModule.program
|
|
165
|
-
.byId(this.
|
|
146
|
+
.byId(this.program)
|
|
166
147
|
.with(d2.programModule.programStage
|
|
167
148
|
.with(d2.programModule.programStageSection)
|
|
168
149
|
.with(d2.programModule.programStageDataElement.with(d2.dataElementModule.dataElement.with(d2.optionSetModule.optionSet.with(d2.optionSetModule.option), 'ToOne'), 'ToOne')))
|
|
@@ -179,7 +160,7 @@ class BaseTrackerQuery {
|
|
|
179
160
|
d2.programModule.programRule
|
|
180
161
|
.where({
|
|
181
162
|
attribute: 'program.id',
|
|
182
|
-
value: this.
|
|
163
|
+
value: this.program,
|
|
183
164
|
})
|
|
184
165
|
.with(d2.programModule.programRuleAction
|
|
185
166
|
.with(d2.dataElementModule.dataElement.select(['id', 'code', 'name']), 'ToOne')
|
|
@@ -202,13 +183,13 @@ class BaseTrackerQuery {
|
|
|
202
183
|
}
|
|
203
184
|
}
|
|
204
185
|
exports.BaseTrackerQuery = BaseTrackerQuery;
|
|
205
|
-
|
|
186
|
+
_BaseTrackerQuery_instances = new WeakSet(), _BaseTrackerQuery_saveSelectedEvent = function _BaseTrackerQuery_saveSelectedEvent() {
|
|
206
187
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
207
188
|
var _a;
|
|
208
189
|
const selectedEvent = (((_a = this.instance.latestEnrollment) === null || _a === void 0 ? void 0 : _a.events) || []).find((event) => event.event === this.event);
|
|
209
190
|
if (selectedEvent) {
|
|
210
191
|
const response = new shared_1.D2HttpResponse({});
|
|
211
|
-
new models_1.D2TrackerResponse(response, this.identifiable);
|
|
192
|
+
return new models_1.D2TrackerResponse(response, this.identifiable);
|
|
212
193
|
}
|
|
213
194
|
const data = yield this.httpClient.post('tracker?async=false', {
|
|
214
195
|
events: [selectedEvent.toObject()],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-tracker.query.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/tracker/queries/base-tracker.query.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;;;;;AAGjD,4CAAsE;AACtE,sCAOmB;AAGnB,MAAa,gBAAgB;
|
|
1
|
+
{"version":3,"file":"base-tracker.query.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/tracker/queries/base-tracker.query.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,5 +2,6 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
tslib_1.__exportStar(require("./base-tracker.query"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./model-base-tracker.query"), exports);
|
|
5
6
|
tslib_1.__exportStar(require("./base-event.query"), exports);
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/tracker/queries/index.ts"],"names":[],"mappings":";;;AAAA,+DAAqC;AACrC,6DAAmC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/tracker/queries/index.ts"],"names":[],"mappings":";;;AAAA,+DAAqC;AACrC,qEAA2C;AAC3C,6DAAmC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { D2HttpClient } from '../../../shared';
|
|
2
|
+
import { ITrackedEntityInstance, TrackedEntityInstance } from '../models';
|
|
3
|
+
import { BaseTrackerQuery } from './base-tracker.query';
|
|
4
|
+
export declare class ModelBaseTrackerQuery<T extends TrackedEntityInstance> extends BaseTrackerQuery<T> {
|
|
5
|
+
constructor(httpClient: D2HttpClient, identifiable: ITrackedEntityInstance);
|
|
6
|
+
byId(id: string): ModelBaseTrackerQuery<T>;
|
|
7
|
+
generateReservedValues(): Promise<{
|
|
8
|
+
ownerUid: string;
|
|
9
|
+
value: string;
|
|
10
|
+
}[]>;
|
|
11
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2024 UDSM DHIS2 Lab. All rights reserved.
|
|
3
|
+
// Use of this source code is governed by a BSD-style
|
|
4
|
+
// license that can be found in the LICENSE file.
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.ModelBaseTrackerQuery = void 0;
|
|
7
|
+
const tslib_1 = require("tslib");
|
|
8
|
+
const models_1 = require("../models");
|
|
9
|
+
const base_tracker_query_1 = require("./base-tracker.query");
|
|
10
|
+
class ModelBaseTrackerQuery extends base_tracker_query_1.BaseTrackerQuery {
|
|
11
|
+
constructor(httpClient, identifiable) {
|
|
12
|
+
super(httpClient);
|
|
13
|
+
this.identifiable = identifiable;
|
|
14
|
+
this.instance = new identifiable();
|
|
15
|
+
this.setProgram(this.instance.program);
|
|
16
|
+
this.setTrackedEntityType(this.instance.trackedEntityType);
|
|
17
|
+
}
|
|
18
|
+
byId(id) {
|
|
19
|
+
// TODO: This is a hack to make sure attribute ID is dynamically set, find best way around this
|
|
20
|
+
this.instance.id = id;
|
|
21
|
+
const attributeProperty = (this.instance.fields || {})['id'];
|
|
22
|
+
if (!attributeProperty) {
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
this.setFilters([
|
|
26
|
+
new models_1.TrackerQueryFilter()
|
|
27
|
+
.setAttribute(attributeProperty.id)
|
|
28
|
+
.setCondition('EQ')
|
|
29
|
+
.setValue(id),
|
|
30
|
+
]);
|
|
31
|
+
return this;
|
|
32
|
+
}
|
|
33
|
+
generateReservedValues() {
|
|
34
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
35
|
+
const fieldEntities = this.instance.fields || {};
|
|
36
|
+
const reservedAttributePromises = Object.keys(fieldEntities)
|
|
37
|
+
.map((key) => {
|
|
38
|
+
const availableValue = this.instance[key];
|
|
39
|
+
if (availableValue && availableValue.length > 0) {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
const field = fieldEntities[key];
|
|
43
|
+
if (!field || !field.generated) {
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
return this.httpClient.get(`trackedEntityAttributes/${field.id}/generate.json`);
|
|
47
|
+
})
|
|
48
|
+
.filter((fieldPromise) => fieldPromise !== null);
|
|
49
|
+
if (reservedAttributePromises.length > 0) {
|
|
50
|
+
const reservedValueResponse = yield Promise.all(reservedAttributePromises);
|
|
51
|
+
return (reservedValueResponse || [])
|
|
52
|
+
.map((response) => response === null || response === void 0 ? void 0 : response.data)
|
|
53
|
+
.filter((data) => data);
|
|
54
|
+
}
|
|
55
|
+
return [];
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.ModelBaseTrackerQuery = ModelBaseTrackerQuery;
|
|
60
|
+
//# sourceMappingURL=model-base-tracker.query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-base-tracker.query.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/tracker/queries/model-base-tracker.query.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;;;;AAIjD,sCAOmB;AAEnB,6DAAwD;AAExD,MAAa,qBAEX,SAAQ,qCAAmB;IAC3B,YAAY,UAAwB,EAAE,YAAoC;QACxE,KAAK,CAAC,UAAU,CAAC,CAAC;QAClB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAK,YAAoB,EAAE,CAAC;QAC5C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC,EAAU;QACb,+FAA+F;QAC9F,IAAI,CAAC,QAAgB,CAAC,EAAE,GAAG,EAAE,CAAC;QAC/B,MAAM,iBAAiB,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QAE7D,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,UAAU,CAAC;YACd,IAAI,2BAAkB,EAAE;iBACrB,YAAY,CAAC,iBAAiB,CAAC,EAAE,CAAC;iBAClC,YAAY,CAAC,IAAW,CAAC;iBACzB,QAAQ,CAAC,EAAE,CAAC;SAChB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC;IACd,CAAC;IAEc,sBAAsB;;YAGnC,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC;YAEjD,MAAM,yBAAyB,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;iBACzD,GAAG,CAAC,CAAC,GAAW,EAAE,EAAE;gBACnB,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBAC1C,IAAI,cAAc,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChD,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;gBAEjC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;oBAC/B,OAAO,IAAI,CAAC;gBACd,CAAC;gBAED,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CACxB,2BAA2B,KAAK,CAAC,EAAE,gBAAgB,CACpD,CAAC;YACJ,CAAC,CAAC;iBACD,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC;YAEnD,IAAI,yBAAyB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM,qBAAqB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC7C,yBAAyB,CAC1B,CAAC;gBAEF,OAAO,CAAC,qBAAqB,IAAI,EAAE,CAAC;qBACjC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAW,CAAC;qBACxC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;YAC5B,CAAC;YAED,OAAO,EAAE,CAAC;QACZ,CAAC;KAAA;CACF;AAlED,sDAkEC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { BaseTrackerQuery } from './queries';
|
|
1
|
+
import { BaseTrackerQuery, ModelBaseTrackerQuery } from './queries';
|
|
2
2
|
import { D2HttpClient } from '../../shared';
|
|
3
3
|
import { TrackedEntityInstance } from './models';
|
|
4
4
|
export declare class TrackerModule {
|
|
5
5
|
private httpClient;
|
|
6
6
|
constructor(httpClient: D2HttpClient);
|
|
7
|
-
|
|
7
|
+
get trackedEntity(): BaseTrackerQuery<TrackedEntityInstance>;
|
|
8
|
+
getTrackedEntityQuery<T extends TrackedEntityInstance>(model: T): ModelBaseTrackerQuery<T>;
|
|
8
9
|
}
|
|
@@ -6,8 +6,11 @@ class TrackerModule {
|
|
|
6
6
|
constructor(httpClient) {
|
|
7
7
|
this.httpClient = httpClient;
|
|
8
8
|
}
|
|
9
|
+
get trackedEntity() {
|
|
10
|
+
return new queries_1.BaseTrackerQuery(this.httpClient);
|
|
11
|
+
}
|
|
9
12
|
getTrackedEntityQuery(model) {
|
|
10
|
-
return new queries_1.
|
|
13
|
+
return new queries_1.ModelBaseTrackerQuery(this.httpClient, model);
|
|
11
14
|
}
|
|
12
15
|
}
|
|
13
16
|
exports.TrackerModule = TrackerModule;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracker.module.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/modules/tracker/tracker.module.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"tracker.module.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/modules/tracker/tracker.module.ts"],"names":[],"mappings":";;;AAAA,uCAAoE;AAIpE,MAAa,aAAa;IACxB,YAAoB,UAAwB;QAAxB,eAAU,GAAV,UAAU,CAAc;IAAG,CAAC;IAEhD,IAAI,aAAa;QACf,OAAO,IAAI,0BAAgB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;IAED,qBAAqB,CACnB,KAAQ;QAER,OAAO,IAAI,+BAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IAC3D,CAAC;CACF;AAZD,sCAYC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./models"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./queries"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./user.module"), exports);
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/modules/user/index.ts"],"names":[],"mappings":";;;AAAA,mDAAyB;AACzB,oDAA0B;AAC1B,wDAA8B"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CurrentUser = void 0;
|
|
4
|
+
const user_model_1 = require("./user.model");
|
|
5
|
+
class CurrentUser extends user_model_1.User {
|
|
6
|
+
}
|
|
7
|
+
exports.CurrentUser = CurrentUser;
|
|
8
|
+
//# sourceMappingURL=current-user.model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"current-user.model.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/user/models/current-user.model.ts"],"names":[],"mappings":";;;AAAA,6CAAoC;AAEpC,MAAa,WAAY,SAAQ,iBAAI;CAEpC;AAFD,kCAEC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
// Copyright 2025 UDSM DHIS2 Lab. All rights reserved.
|
|
5
|
+
// Use of this source code is governed by a BSD-style
|
|
6
|
+
// license that can be found in the LICENSE file.
|
|
7
|
+
tslib_1.__exportStar(require("./current-user.model"), exports);
|
|
8
|
+
tslib_1.__exportStar(require("./user.model"), exports);
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/user/models/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,+DAAqC;AACrC,uDAA6B"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { IdentifiableField, IdentifiableObject } from '../../../shared';
|
|
2
|
+
export type UserField = IdentifiableField;
|
|
3
|
+
export declare class User extends IdentifiableObject<User> {
|
|
4
|
+
static resourceName: string;
|
|
5
|
+
static singularResourceName: string;
|
|
6
|
+
static fields: UserField[];
|
|
7
|
+
email: string;
|
|
8
|
+
dataViewOrganisationUnits: any[];
|
|
9
|
+
organisationUnits: any[];
|
|
10
|
+
userCredentials: any;
|
|
11
|
+
userGroups: any[];
|
|
12
|
+
constructor(user: Partial<User>);
|
|
13
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2024 UDSM DHIS2 Lab. All rights reserved.
|
|
3
|
+
// Use of this source code is governed by a BSD-style
|
|
4
|
+
// license that can be found in the LICENSE file.
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.User = void 0;
|
|
7
|
+
const shared_1 = require("../../../shared");
|
|
8
|
+
class User extends shared_1.IdentifiableObject {
|
|
9
|
+
constructor(user) {
|
|
10
|
+
super(user);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.User = User;
|
|
14
|
+
User.resourceName = 'programs';
|
|
15
|
+
User.singularResourceName = 'program';
|
|
16
|
+
// TODO: Use class reflection
|
|
17
|
+
User.fields = [...shared_1.IDENTIFIABLE_FIELDS];
|
|
18
|
+
//# sourceMappingURL=user.model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.model.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/user/models/user.model.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;;;AAEjD,4CAIyB;AAIzB,MAAa,IAAK,SAAQ,2BAAwB;IAYhD,YAAY,IAAmB;QAC7B,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;;AAdH,oBAeC;AAdQ,iBAAY,GAAG,UAAU,CAAC;AAC1B,yBAAoB,GAAG,SAAS,CAAC;AACxC,6BAA6B;AACtB,WAAM,GAAgB,CAAC,GAAG,4BAAmB,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './user.query';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const tslib_1 = require("tslib");
|
|
4
|
+
// Copyright 2025 UDSM DHIS2 Lab. All rights reserved.
|
|
5
|
+
// Use of this source code is governed by a BSD-style
|
|
6
|
+
// license that can be found in the LICENSE file.
|
|
7
|
+
tslib_1.__exportStar(require("./user.query"), exports);
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/user/queries/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,uDAA6B"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UserQuery = void 0;
|
|
4
|
+
// Copyright 2024 UDSM DHIS2 Lab. All rights reserved.
|
|
5
|
+
// Use of this source code is governed by a BSD-style
|
|
6
|
+
// license that can be found in the LICENSE file.
|
|
7
|
+
const shared_1 = require("../../../shared");
|
|
8
|
+
const models_1 = require("../models");
|
|
9
|
+
class UserQuery extends shared_1.BaseQuery {
|
|
10
|
+
constructor(httpClient) {
|
|
11
|
+
super(models_1.User, httpClient);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
exports.UserQuery = UserQuery;
|
|
15
|
+
//# sourceMappingURL=user.query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.query.js","sourceRoot":"","sources":["../../../../../../../../packages/dhis2-web-sdk/src/lib/modules/user/queries/user.query.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,4CAA0D;AAC1D,sCAA4C;AAE5C,MAAa,SAAU,SAAQ,kBAA0B;IACvD,YAAY,UAAwB;QAClC,KAAK,CAAC,aAAI,EAAE,UAAU,CAAC,CAAC;IAC1B,CAAC;CACF;AAJD,8BAIC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { UserQuery } from './queries';
|
|
2
|
+
import { D2HttpClient } from '../../shared';
|
|
3
|
+
import { CurrentUser } from './models';
|
|
4
|
+
export declare class UserModule {
|
|
5
|
+
private httpClient;
|
|
6
|
+
constructor(httpClient: D2HttpClient);
|
|
7
|
+
currentUser(): Promise<CurrentUser | null>;
|
|
8
|
+
get user(): UserQuery;
|
|
9
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright 2025 UDSM DHIS2 Lab. All rights reserved.
|
|
3
|
+
// Use of this source code is governed by a BSD-style
|
|
4
|
+
// license that can be found in the LICENSE file.
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.UserModule = void 0;
|
|
7
|
+
const tslib_1 = require("tslib");
|
|
8
|
+
const queries_1 = require("./queries");
|
|
9
|
+
const models_1 = require("./models");
|
|
10
|
+
class UserModule {
|
|
11
|
+
constructor(httpClient) {
|
|
12
|
+
this.httpClient = httpClient;
|
|
13
|
+
}
|
|
14
|
+
currentUser() {
|
|
15
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
const [userResponse, authorityResponse] = yield Promise.all([
|
|
17
|
+
this.httpClient.get('me?fields=id,name,displayName,created,' +
|
|
18
|
+
'lastUpdated,email,dataViewOrganisationUnits[id,name,level],' +
|
|
19
|
+
'organisationUnits[id,name,level],userCredentials[username],userGroups[id,name]'),
|
|
20
|
+
this.httpClient.get(`me/authorization`),
|
|
21
|
+
]);
|
|
22
|
+
return new models_1.CurrentUser(Object.assign(Object.assign({}, (userResponse.data || {})), { authorities: authorityResponse.data || [] }));
|
|
23
|
+
// .pipe(
|
|
24
|
+
// map((currentUserResults: any[]) => {
|
|
25
|
+
// return {
|
|
26
|
+
// ...currentUserResults[0],
|
|
27
|
+
// authorities: currentUserResults[1],
|
|
28
|
+
// };
|
|
29
|
+
// })
|
|
30
|
+
// );
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
get user() {
|
|
34
|
+
return new queries_1.UserQuery(this.httpClient);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
exports.UserModule = UserModule;
|
|
38
|
+
//# sourceMappingURL=user.module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"user.module.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/modules/user/user.module.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;;;;AAEjD,uCAAsC;AAEtC,qCAAuC;AAEvC,MAAa,UAAU;IACrB,YAAoB,UAAwB;QAAxB,eAAU,GAAV,UAAU,CAAc;IAAG,CAAC;IAE1C,WAAW;;YACf,MAAM,CAAC,YAAY,EAAE,iBAAiB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC1D,IAAI,CAAC,UAAU,CAAC,GAAG,CACjB,wCAAwC;oBACtC,6DAA6D;oBAC7D,gFAAgF,CACnF;gBACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,kBAAkB,CAAC;aACxC,CAAC,CAAC;YAEH,OAAO,IAAI,oBAAW,iCACjB,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE,CAAC,KAC5B,WAAW,EAAE,iBAAiB,CAAC,IAAI,IAAI,EAAE,IACzC,CAAC;YAEH,SAAS;YACT,yCAAyC;YACzC,eAAe;YACf,kCAAkC;YAClC,4CAA4C;YAC5C,SAAS;YACT,OAAO;YACP,KAAK;QACP,CAAC;KAAA;IAED,IAAI,IAAI;QACN,OAAO,IAAI,mBAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACxC,CAAC;CACF;AA/BD,gCA+BC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface D2HttpRequestConfig {
|
|
2
|
+
includeVersionNumber?: boolean;
|
|
3
|
+
preferPreviousApiVersion?: boolean;
|
|
4
|
+
useRootUrl?: boolean;
|
|
5
|
+
isExternalLink?: boolean;
|
|
6
|
+
useIndexDb?: boolean;
|
|
7
|
+
fetchOnlineIfNotExist?: boolean;
|
|
8
|
+
indexDbConfig?: {
|
|
9
|
+
schema: string;
|
|
10
|
+
};
|
|
11
|
+
httpHeaders?: any;
|
|
12
|
+
allowDataStoreRequestStandardization?: boolean;
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"d2-http-request-config.model.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/d2-http-request-config.model.ts"],"names":[],"mappings":""}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { AxiosDefaults } from 'axios';
|
|
2
2
|
import { D2HttpResponse } from './http-response.model';
|
|
3
|
+
import { D2HttpRequestConfig } from './d2-http-request-config.model';
|
|
3
4
|
export declare class D2HttpClient {
|
|
4
5
|
#private;
|
|
5
6
|
constructor(config: AxiosDefaults);
|
|
6
|
-
get(url: string): Promise<D2HttpResponse>;
|
|
7
|
-
post(url: string, data: Record<string, unknown
|
|
7
|
+
get(url: string, config?: D2HttpRequestConfig): Promise<D2HttpResponse>;
|
|
8
|
+
post(url: string, data: Record<string, unknown>, config?: D2HttpRequestConfig): Promise<D2HttpResponse>;
|
|
8
9
|
}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// Copyright 2024 UDSM DHIS2 Lab. All rights reserved.
|
|
3
3
|
// Use of this source code is governed by a BSD-style
|
|
4
4
|
// license that can be found in the LICENSE file.
|
|
5
|
-
var _D2HttpClient_axiosInstance;
|
|
5
|
+
var _D2HttpClient_instances, _D2HttpClient_axiosInstance, _D2HttpClient_getBaseUrl;
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.D2HttpClient = void 0;
|
|
8
8
|
const tslib_1 = require("tslib");
|
|
@@ -10,13 +10,14 @@ const axios_1 = tslib_1.__importDefault(require("axios"));
|
|
|
10
10
|
const http_response_model_1 = require("./http-response.model");
|
|
11
11
|
class D2HttpClient {
|
|
12
12
|
constructor(config) {
|
|
13
|
+
_D2HttpClient_instances.add(this);
|
|
13
14
|
_D2HttpClient_axiosInstance.set(this, void 0);
|
|
14
15
|
tslib_1.__classPrivateFieldSet(this, _D2HttpClient_axiosInstance, axios_1.default.create(config), "f");
|
|
15
16
|
}
|
|
16
|
-
get(url) {
|
|
17
|
+
get(url, config) {
|
|
17
18
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
18
19
|
try {
|
|
19
|
-
const response = yield tslib_1.__classPrivateFieldGet(this, _D2HttpClient_axiosInstance, "f").get(
|
|
20
|
+
const response = yield tslib_1.__classPrivateFieldGet(this, _D2HttpClient_axiosInstance, "f").get(`${tslib_1.__classPrivateFieldGet(this, _D2HttpClient_instances, "m", _D2HttpClient_getBaseUrl).call(this, config)}/${url}`);
|
|
20
21
|
return new http_response_model_1.D2HttpResponse(response);
|
|
21
22
|
}
|
|
22
23
|
catch (error) {
|
|
@@ -24,7 +25,7 @@ class D2HttpClient {
|
|
|
24
25
|
}
|
|
25
26
|
});
|
|
26
27
|
}
|
|
27
|
-
post(url, data) {
|
|
28
|
+
post(url, data, config) {
|
|
28
29
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
29
30
|
try {
|
|
30
31
|
const response = yield tslib_1.__classPrivateFieldGet(this, _D2HttpClient_axiosInstance, "f").post(`../../../api/${url}`, data);
|
|
@@ -37,5 +38,11 @@ class D2HttpClient {
|
|
|
37
38
|
}
|
|
38
39
|
}
|
|
39
40
|
exports.D2HttpClient = D2HttpClient;
|
|
40
|
-
_D2HttpClient_axiosInstance = new WeakMap()
|
|
41
|
+
_D2HttpClient_axiosInstance = new WeakMap(), _D2HttpClient_instances = new WeakSet(), _D2HttpClient_getBaseUrl = function _D2HttpClient_getBaseUrl(config) {
|
|
42
|
+
const baseUrl = '../../..';
|
|
43
|
+
if (config === null || config === void 0 ? void 0 : config.useRootUrl) {
|
|
44
|
+
return baseUrl;
|
|
45
|
+
}
|
|
46
|
+
return `${baseUrl}/api`;
|
|
47
|
+
};
|
|
41
48
|
//# sourceMappingURL=http-client.model.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http-client.model.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/http-client.model.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;;;;;AAEjD,0DAA4D;AAC5D,+DAAuD;
|
|
1
|
+
{"version":3,"file":"http-client.model.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/http-client.model.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;;;;;AAEjD,0DAA4D;AAC5D,+DAAuD;AAGvD,MAAa,YAAY;IAGvB,YAAY,MAAqB;;QAFjC,8CAA+B;QAG7B,+BAAA,IAAI,+BAAkB,eAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAA,CAAC;IAC7C,CAAC;IAEK,GAAG,CACP,GAAW,EACX,MAA4B;;YAE5B,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,+BAAA,IAAI,mCAAe,CAAC,GAAG,CAC5C,GAAG,+BAAA,IAAI,yDAAY,MAAhB,IAAI,EAAa,MAAM,CAAC,IAAI,GAAG,EAAE,CACrC,CAAC;gBAEF,OAAO,IAAI,oCAAc,CAAC,QAA8C,CAAC,CAAC;YAC5E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,IAAI,oCAAc,CAAC,KAA2C,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;KAAA;IAEK,IAAI,CACR,GAAW,EACX,IAA6B,EAC7B,MAA4B;;YAE5B,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,+BAAA,IAAI,mCAAe,CAAC,IAAI,CAC7C,gBAAgB,GAAG,EAAE,EACrB,IAAI,CACL,CAAC;gBAEF,OAAO,IAAI,oCAAc,CAAC,QAA8C,CAAC,CAAC;YAC5E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,IAAI,oCAAc,CAAC,KAA2C,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;KAAA;CAWF;AAhDD,oCAgDC;mJATa,MAA4B;IACtC,MAAM,OAAO,GAAG,UAAU,CAAC;IAE3B,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,UAAU,EAAE,CAAC;QACvB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,GAAG,OAAO,MAAM,CAAC;AAC1B,CAAC"}
|
|
@@ -17,4 +17,5 @@ tslib_1.__exportStar(require("./d2-response.model"), exports);
|
|
|
17
17
|
tslib_1.__exportStar(require("./relationship-direction.model"), exports);
|
|
18
18
|
tslib_1.__exportStar(require("./http-response.model"), exports);
|
|
19
19
|
tslib_1.__exportStar(require("./http-client-config.model"), exports);
|
|
20
|
+
tslib_1.__exportStar(require("./d2-http-request-config.model"), exports);
|
|
20
21
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/index.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;;;AAEjD,sEAA4C;AAC5C,+DAAqC;AACrC,kEAAwC;AACxC,wDAA8B;AAC9B,uDAA6B;AAC7B,oEAA0C;AAC1C,gEAAsC;AACtC,8DAAoC;AACpC,wDAA8B;AAC9B,8DAAoC;AACpC,yEAA+C;AAC/C,gEAAsC;AACtC,qEAA2C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/index.ts"],"names":[],"mappings":";AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;;;AAEjD,sEAA4C;AAC5C,+DAAqC;AACrC,kEAAwC;AACxC,wDAA8B;AAC9B,uDAA6B;AAC7B,oEAA0C;AAC1C,gEAAsC;AACtC,8DAAoC;AACpC,wDAA8B;AAC9B,8DAAoC;AACpC,yEAA+C;AAC/C,gEAAsC;AACtC,qEAA2C;AAC3C,yEAA+C"}
|