@iapps/d2-web-sdk 1.0.30 → 1.1.1

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.
Files changed (49) hide show
  1. package/package.json +1 -1
  2. package/src/lib/d2-web-sdk.d.ts +4 -4
  3. package/src/lib/d2-web-sdk.js +11 -10
  4. package/src/lib/d2-web-sdk.js.map +1 -1
  5. package/src/lib/modules/app-manifest/app-manifest.module.d.ts +3 -0
  6. package/src/lib/modules/app-manifest/app-manifest.module.js +4 -2
  7. package/src/lib/modules/app-manifest/app-manifest.module.js.map +1 -1
  8. package/src/lib/shared/constants/index.d.ts +1 -0
  9. package/src/lib/shared/constants/index.js +5 -0
  10. package/src/lib/shared/constants/index.js.map +1 -0
  11. package/src/lib/shared/constants/resources.constant.d.ts +70 -0
  12. package/src/lib/shared/constants/resources.constant.js +71 -0
  13. package/src/lib/shared/constants/resources.constant.js.map +1 -0
  14. package/src/lib/shared/index.d.ts +1 -0
  15. package/src/lib/shared/index.js +1 -0
  16. package/src/lib/shared/index.js.map +1 -1
  17. package/src/lib/shared/interfaces/index-db-config.interface.d.ts +5 -0
  18. package/src/lib/shared/interfaces/index-db-config.interface.js +3 -0
  19. package/src/lib/shared/interfaces/index-db-config.interface.js.map +1 -0
  20. package/src/lib/shared/interfaces/index-db-params.interface.d.ts +7 -0
  21. package/src/lib/shared/interfaces/index-db-params.interface.js +3 -0
  22. package/src/lib/shared/interfaces/index-db-params.interface.js.map +1 -0
  23. package/src/lib/shared/interfaces/index.d.ts +2 -0
  24. package/src/lib/shared/interfaces/index.js +2 -0
  25. package/src/lib/shared/interfaces/index.js.map +1 -1
  26. package/src/lib/shared/models/d2-web-config.model.d.ts +2 -0
  27. package/src/lib/shared/models/d2-web-config.model.js +2 -0
  28. package/src/lib/shared/models/d2-web-config.model.js.map +1 -1
  29. package/src/lib/shared/models/http-client.model.d.ts +4 -3
  30. package/src/lib/shared/models/http-client.model.js +73 -11
  31. package/src/lib/shared/models/http-client.model.js.map +1 -1
  32. package/src/lib/shared/models/index-db-config.model.d.ts +8 -0
  33. package/src/lib/shared/models/index-db-config.model.js +25 -0
  34. package/src/lib/shared/models/index-db-config.model.js.map +1 -0
  35. package/src/lib/shared/models/index-db-query-schema.model.d.ts +9 -0
  36. package/src/lib/shared/models/index-db-query-schema.model.js +19 -0
  37. package/src/lib/shared/models/index-db-query-schema.model.js.map +1 -0
  38. package/src/lib/shared/models/index-db.model.d.ts +11 -0
  39. package/src/lib/shared/models/index-db.model.js +83 -0
  40. package/src/lib/shared/models/index-db.model.js.map +1 -0
  41. package/src/lib/shared/models/index.d.ts +3 -0
  42. package/src/lib/shared/models/index.js +3 -0
  43. package/src/lib/shared/models/index.js.map +1 -1
  44. package/src/lib/shared/utils/index-db.util.d.ts +16 -0
  45. package/src/lib/shared/utils/index-db.util.js +99 -0
  46. package/src/lib/shared/utils/index-db.util.js.map +1 -0
  47. package/src/lib/shared/utils/index.d.ts +1 -0
  48. package/src/lib/shared/utils/index.js +1 -0
  49. package/src/lib/shared/utils/index.js.map +1 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iapps/d2-web-sdk",
3
- "version": "1.0.30",
3
+ "version": "1.1.1",
4
4
  "dependencies": {
5
5
  "axios": "^1.8.1",
6
6
  "date-fns": "^4.1.0",
@@ -1,6 +1,6 @@
1
- import { AxiosDefaults } from 'axios';
1
+ import { AxiosInstance } from 'axios';
2
2
  import { CurrentUser, D2EngineModule, DataElementModule, Manifest, OptionSetModule, ProgramModule, TrackerModule, UserModule, SystemInfo, SystemModule, EventModule } from './modules';
3
- import { D2HttpClient, D2WebConfig } from './shared';
3
+ import { D2HttpClient, D2IndexDb, D2WebConfig } from './shared';
4
4
  export interface D2Window extends Window {
5
5
  d2Web: D2Web;
6
6
  }
@@ -15,10 +15,10 @@ export declare class D2Web {
15
15
  static initialize(config: D2WebConfig): Promise<D2Web>;
16
16
  static getInstance(config: D2WebConfig): Promise<D2Web>;
17
17
  setConfig(config: D2WebConfig): void;
18
- setAppManifest(): Promise<void>;
18
+ setAppManifest(axiosInstance: AxiosInstance): Promise<void>;
19
19
  setCurrentUser(): Promise<void>;
20
20
  setSystemInfo(): Promise<void>;
21
- setHttpInstance(httpConfig: AxiosDefaults): void;
21
+ setHttpInstance(axiosInstance: AxiosInstance, indexDb: D2IndexDb): void;
22
22
  get rootUrl(): string;
23
23
  get config(): D2WebConfig;
24
24
  get userModule(): UserModule;
@@ -6,6 +6,7 @@ var _D2Web_config;
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.D2Web = void 0;
8
8
  const tslib_1 = require("tslib");
9
+ const axios_1 = tslib_1.__importDefault(require("axios"));
9
10
  const modules_1 = require("./modules");
10
11
  const shared_1 = require("./shared");
11
12
  class D2Web {
@@ -20,21 +21,21 @@ class D2Web {
20
21
  * Set configuration
21
22
  */
22
23
  instance.setConfig(config);
23
- /**
24
- * Initialize http instance to allow http request using axios
25
- */
26
- instance.setHttpInstance(config.httpClientConfig);
24
+ let axiosInstance = axios_1.default.create(config.httpClientConfig);
27
25
  /**
28
26
  * Fetch and set app manifest
29
27
  */
30
- yield instance.setAppManifest();
28
+ yield instance.setAppManifest(axiosInstance);
31
29
  /**
32
30
  * Update http instance to account for new information from manifest
33
31
  */
34
32
  const newWebConfig = new shared_1.D2WebConfig({
35
33
  baseUrl: instance.rootUrl,
34
+ indexDBConfig: config.indexDBConfig,
36
35
  });
37
- instance.setHttpInstance(newWebConfig.httpClientConfig);
36
+ const indexDb = new shared_1.D2IndexDb(newWebConfig.indexDBConfig);
37
+ axiosInstance = axios_1.default.create(newWebConfig.httpClientConfig);
38
+ instance.setHttpInstance(axiosInstance, indexDb);
38
39
  /**
39
40
  * Fetch and set current user
40
41
  */
@@ -60,9 +61,9 @@ class D2Web {
60
61
  setConfig(config) {
61
62
  tslib_1.__classPrivateFieldSet(this, _D2Web_config, config, "f");
62
63
  }
63
- setAppManifest() {
64
+ setAppManifest(axiosInstance) {
64
65
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
65
- const appManifestModule = new modules_1.AppManifestModule();
66
+ const appManifestModule = new modules_1.AppManifestModule(axiosInstance);
66
67
  try {
67
68
  const manifest = yield appManifestModule.get();
68
69
  this.appManifest = manifest;
@@ -98,8 +99,8 @@ class D2Web {
98
99
  }
99
100
  });
100
101
  }
101
- setHttpInstance(httpConfig) {
102
- this.httpInstance = new shared_1.D2HttpClient(httpConfig);
102
+ setHttpInstance(axiosInstance, indexDb) {
103
+ this.httpInstance = new shared_1.D2HttpClient(axiosInstance, indexDb);
103
104
  }
104
105
  get rootUrl() {
105
106
  const defaultRootUrl = '../../..';
@@ -1 +1 @@
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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"}
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;;;;;AAEjD,0DAA4D;AAC5D,uCAamB;AACnB,qCAKkB;AAMlB,MAAa,KAAK;IAOhB;QALA,gCAAsB;IAKC,CAAC;IAEjB,MAAM,CAAO,UAAU,CAAC,MAAmB;;YAChD,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACpB,MAAM,QAAQ,GAAG,IAAI,KAAK,EAAE,CAAC;gBAE7B;;mBAEG;gBACH,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAE3B,IAAI,aAAa,GAAG,eAAK,CAAC,MAAM,CAC9B,MAAM,CAAC,gBAAiC,CACzC,CAAC;gBAEF;;mBAEG;gBACH,MAAM,QAAQ,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;gBAE7C;;mBAEG;gBACH,MAAM,YAAY,GAAG,IAAI,oBAAW,CAAC;oBACnC,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,aAAa,EAAE,MAAM,CAAC,aAAa;iBACpC,CAAC,CAAC;gBAEH,MAAM,OAAO,GAAG,IAAI,kBAAS,CAC3B,YAAY,CAAC,aAAiC,CAC/C,CAAC;gBAEF,aAAa,GAAG,eAAK,CAAC,MAAM,CAC1B,YAAY,CAAC,gBAAiC,CAC/C,CAAC;gBAEF,QAAQ,CAAC,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;gBAEjD;;mBAEG;gBACH,MAAM,QAAQ,CAAC,cAAc,EAAE,CAAC;gBAEhC;;mBAEG;gBACH,MAAM,QAAQ,CAAC,aAAa,EAAE,CAAC;gBAE/B,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBAEzB,MAA8B,CAAC,KAAK,GAAG,QAAQ,CAAC;YACnD,CAAC;YAED,OAAO,KAAK,CAAC,QAAQ,CAAC;QACxB,CAAC;KAAA;IAEM,MAAM,CAAO,WAAW,CAAC,MAAmB;;YACjD,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACpB,OAAO,MAAM,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACxC,CAAC;YACD,OAAO,KAAK,CAAC,QAAQ,CAAC;QACxB,CAAC;KAAA;IAED,SAAS,CAAC,MAAmB;QAC3B,+BAAA,IAAI,iBAAW,MAAM,MAAA,CAAC;IACxB,CAAC;IAEK,cAAc,CAAC,aAA4B;;YAC/C,MAAM,iBAAiB,GAAG,IAAI,2BAAiB,CAAC,aAAa,CAAC,CAAC;YAE/D,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,GAAG,EAAE,CAAC;gBAC/C,IAAI,CAAC,WAAW,GAAG,QAAQ,CAAC;YAC9B,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAC1B,CAAC;QACH,CAAC;KAAA;IAEK,cAAc;;YAClB,IAAI,CAAC;gBACH,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;gBAExD,IAAI,WAAW,EAAE,CAAC;oBAChB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;gBACjC,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CACb,2DAA2D,CAC5D,CAAC;YACJ,CAAC;QACH,CAAC;KAAA;IAEK,aAAa;;YACjB,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;gBAE3D,IAAI,UAAU,EAAE,CAAC;oBACf,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;gBAC/B,CAAC;YACH,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;KAAA;IAED,eAAe,CAAC,aAA4B,EAAE,OAAkB;QAC9D,IAAI,CAAC,YAAY,GAAG,IAAI,qBAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,OAAO;QACT,MAAM,cAAc,GAAG,UAAU,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,cAAc,CAAC;QACxB,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU;YAChC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI;YAChC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI;YACrC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI;YACvC,CAAC,CAAC,cAAc,CAAC;IACrB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,+BAAA,IAAI,qBAAQ,CAAC;IACtB,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,oBAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,sBAAY,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,uBAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,iBAAiB;QACnB,OAAO,IAAI,2BAAiB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,yBAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,wBAAc,EAAE,CAAC;IAC9B,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,qBAAW,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,aAAa;QACf,OAAO,IAAI,uBAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC;CACF;AAlKD,sBAkKC"}
@@ -1,4 +1,7 @@
1
+ import { AxiosInstance } from 'axios';
1
2
  import { Manifest } from './models';
2
3
  export declare class AppManifestModule {
4
+ private axiosInstance;
5
+ constructor(axiosInstance: AxiosInstance);
3
6
  get(): Promise<Manifest | null>;
4
7
  }
@@ -5,13 +5,15 @@
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.AppManifestModule = void 0;
7
7
  const tslib_1 = require("tslib");
8
- const axios_1 = tslib_1.__importDefault(require("axios"));
9
8
  class AppManifestModule {
9
+ constructor(axiosInstance) {
10
+ this.axiosInstance = axiosInstance;
11
+ }
10
12
  get() {
11
13
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
12
14
  let manifest = null;
13
15
  try {
14
- const manifestResponse = yield axios_1.default.get('./manifest.webapp');
16
+ const manifestResponse = yield this.axiosInstance.get('./manifest.webapp');
15
17
  manifest = manifestResponse.data || null;
16
18
  }
17
19
  catch (error) {
@@ -1 +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;;;;AAEjD,0DAA0B;AAE1B,MAAa,iBAAiB;IACtB,GAAG;;YACP,IAAI,QAAQ,GAAG,IAAI,CAAC;YAEpB,IAAI,CAAC;gBACH,MAAM,gBAAgB,GAAG,MAAM,eAAK,CAAC,GAAG,CAAW,mBAAmB,CAAC,CAAC;gBAExE,QAAQ,GAAG,gBAAgB,CAAC,IAAI,IAAI,IAAI,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CACV,2EAA2E,CAC5E,CAAC;YACJ,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;KAAA;CACF;AAhBD,8CAgBC"}
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,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;IAAG,CAAC;IAC9C,GAAG;;YACP,IAAI,QAAQ,GAAG,IAAI,CAAC;YAEpB,IAAI,CAAC;gBACH,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,CACnD,mBAAmB,CACpB,CAAC;gBAEF,QAAQ,GAAG,gBAAgB,CAAC,IAAI,IAAI,IAAI,CAAC;YAC3C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,IAAI,CACV,2EAA2E,CAC5E,CAAC;YACJ,CAAC;YAED,OAAO,QAAQ,CAAC;QAClB,CAAC;KAAA;CACF;AAnBD,8CAmBC"}
@@ -0,0 +1 @@
1
+ export * from './resources.constant';
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./resources.constant"), exports);
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/constants/index.ts"],"names":[],"mappings":";;;AAAA,+DAAqC"}
@@ -0,0 +1,70 @@
1
+ export declare const D2_RESOURCES: {
2
+ organisationUnit: {
3
+ name: string;
4
+ indexDbIndices: string;
5
+ };
6
+ organisationUnitGroup: {
7
+ name: string;
8
+ indexDbIndices: string;
9
+ };
10
+ organisationUnitLevel: {
11
+ name: string;
12
+ indexDbIndices: string;
13
+ };
14
+ organisationUnitGroupSet: {
15
+ name: string;
16
+ indexDbIndices: string;
17
+ };
18
+ dataElement: {
19
+ name: string;
20
+ indexDbIndices: string;
21
+ };
22
+ dataElementGroup: {
23
+ name: string;
24
+ indexDbIndices: string;
25
+ };
26
+ indicator: {
27
+ name: string;
28
+ indexDbIndices: string;
29
+ };
30
+ indicatorGroup: {
31
+ name: string;
32
+ indexDbIndices: string;
33
+ };
34
+ trackedEntityAttribute: {
35
+ name: string;
36
+ indexDbIndices: string;
37
+ };
38
+ program: {
39
+ name: string;
40
+ indexDbIndices: string;
41
+ };
42
+ programRule: {
43
+ name: string;
44
+ indexDbIndices: string;
45
+ };
46
+ dataSet: {
47
+ name: string;
48
+ indexDbIndices: string;
49
+ };
50
+ dashboard: {
51
+ name: string;
52
+ indexDbIndices: string;
53
+ };
54
+ visualization: {
55
+ name: string;
56
+ indexDbIndices: string;
57
+ };
58
+ map: {
59
+ name: string;
60
+ indexDbIndices: string;
61
+ };
62
+ optionSet: {
63
+ name: string;
64
+ indexDbIndices: string;
65
+ };
66
+ dataStore: {
67
+ name: string;
68
+ indexDbIndices: string;
69
+ };
70
+ };
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.D2_RESOURCES = void 0;
4
+ exports.D2_RESOURCES = {
5
+ organisationUnit: {
6
+ name: 'organisationUnits',
7
+ indexDbIndices: 'id,code,name,parent.id',
8
+ },
9
+ organisationUnitGroup: {
10
+ name: 'organisationUnitGroups',
11
+ indexDbIndices: 'id,code,name',
12
+ },
13
+ organisationUnitLevel: {
14
+ name: 'organisationUnitLevels',
15
+ indexDbIndices: 'id,code,name',
16
+ },
17
+ organisationUnitGroupSet: {
18
+ name: 'organisationUnitGroupSets',
19
+ indexDbIndices: 'id,code,name',
20
+ },
21
+ dataElement: {
22
+ name: 'dataElements',
23
+ indexDbIndices: 'id,code,name',
24
+ },
25
+ dataElementGroup: {
26
+ name: 'dataElementGroups',
27
+ indexDbIndices: 'id,code,name',
28
+ },
29
+ indicator: {
30
+ name: 'indicators',
31
+ indexDbIndices: 'id,code,name',
32
+ },
33
+ indicatorGroup: {
34
+ name: 'indicatorGroups',
35
+ indexDbIndices: 'id,code,name',
36
+ },
37
+ trackedEntityAttribute: {
38
+ name: 'trackedEntityAttributes',
39
+ indexDbIndices: 'id,code,name',
40
+ },
41
+ program: {
42
+ name: 'programs',
43
+ indexDbIndices: 'id,code,name',
44
+ },
45
+ programRule: {
46
+ name: 'programRules',
47
+ indexDbIndices: 'id,code,name',
48
+ },
49
+ dataSet: {
50
+ name: 'dataSets',
51
+ indexDbIndices: 'id,code,name',
52
+ },
53
+ dashboard: {
54
+ name: 'dashboards',
55
+ indexDbIndices: 'id,code,name',
56
+ },
57
+ visualization: {
58
+ name: 'visualizations',
59
+ indexDbIndices: 'id,code,name',
60
+ },
61
+ map: { name: 'maps', indexDbIndices: 'id,code,name' },
62
+ optionSet: {
63
+ name: 'optionSets',
64
+ indexDbIndices: 'id,code,name',
65
+ },
66
+ dataStore: {
67
+ name: 'dataStore',
68
+ indexDbIndices: 'referenceKey,key',
69
+ },
70
+ };
71
+ //# sourceMappingURL=resources.constant.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resources.constant.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/constants/resources.constant.ts"],"names":[],"mappings":";;;AAAa,QAAA,YAAY,GAAG;IAC1B,gBAAgB,EAAE;QAChB,IAAI,EAAE,mBAAmB;QACzB,cAAc,EAAE,wBAAwB;KACzC;IACD,qBAAqB,EAAE;QACrB,IAAI,EAAE,wBAAwB;QAC9B,cAAc,EAAE,cAAc;KAC/B;IACD,qBAAqB,EAAE;QACrB,IAAI,EAAE,wBAAwB;QAC9B,cAAc,EAAE,cAAc;KAC/B;IACD,wBAAwB,EAAE;QACxB,IAAI,EAAE,2BAA2B;QACjC,cAAc,EAAE,cAAc;KAC/B;IACD,WAAW,EAAE;QACX,IAAI,EAAE,cAAc;QACpB,cAAc,EAAE,cAAc;KAC/B;IACD,gBAAgB,EAAE;QAChB,IAAI,EAAE,mBAAmB;QACzB,cAAc,EAAE,cAAc;KAC/B;IACD,SAAS,EAAE;QACT,IAAI,EAAE,YAAY;QAClB,cAAc,EAAE,cAAc;KAC/B;IACD,cAAc,EAAE;QACd,IAAI,EAAE,iBAAiB;QACvB,cAAc,EAAE,cAAc;KAC/B;IACD,sBAAsB,EAAE;QACtB,IAAI,EAAE,yBAAyB;QAC/B,cAAc,EAAE,cAAc;KAC/B;IACD,OAAO,EAAE;QACP,IAAI,EAAE,UAAU;QAChB,cAAc,EAAE,cAAc;KAC/B;IACD,WAAW,EAAE;QACX,IAAI,EAAE,cAAc;QACpB,cAAc,EAAE,cAAc;KAC/B;IACD,OAAO,EAAE;QACP,IAAI,EAAE,UAAU;QAChB,cAAc,EAAE,cAAc;KAC/B;IACD,SAAS,EAAE;QACT,IAAI,EAAE,YAAY;QAClB,cAAc,EAAE,cAAc;KAC/B;IACD,aAAa,EAAE;QACb,IAAI,EAAE,gBAAgB;QACtB,cAAc,EAAE,cAAc;KAC/B;IACD,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,cAAc,EAAE;IACrD,SAAS,EAAE;QACT,IAAI,EAAE,YAAY;QAClB,cAAc,EAAE,cAAc;KAC/B;IACD,SAAS,EAAE;QACT,IAAI,EAAE,WAAW;QACjB,cAAc,EAAE,kBAAkB;KACnC;CACF,CAAC"}
@@ -3,3 +3,4 @@ export * from './queries';
3
3
  export * from './utils';
4
4
  export * from './decorators';
5
5
  export * from './interfaces';
6
+ export * from './constants';
@@ -9,4 +9,5 @@ tslib_1.__exportStar(require("./queries"), exports);
9
9
  tslib_1.__exportStar(require("./utils"), exports);
10
10
  tslib_1.__exportStar(require("./decorators"), exports);
11
11
  tslib_1.__exportStar(require("./interfaces"), exports);
12
+ tslib_1.__exportStar(require("./constants"), exports);
12
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/dhis2-web-sdk/src/lib/shared/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,mDAAyB;AACzB,oDAA0B;AAC1B,kDAAwB;AACxB,uDAA6B;AAC7B,uDAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../packages/dhis2-web-sdk/src/lib/shared/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,mDAAyB;AACzB,oDAA0B;AAC1B,kDAAwB;AACxB,uDAA6B;AAC7B,uDAA6B;AAC7B,sDAA4B"}
@@ -0,0 +1,5 @@
1
+ export interface ID2IndexDbConfig {
2
+ namespace: string;
3
+ version: number;
4
+ models: Record<string, string>;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index-db-config.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-db-config.interface.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/interfaces/index-db-config.interface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ export interface IndexDBParams {
2
+ page?: number;
3
+ pageSize?: number;
4
+ fields?: string;
5
+ filter?: string[];
6
+ order?: string[];
7
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index-db-params.interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-db-params.interface.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/interfaces/index-db-params.interface.ts"],"names":[],"mappings":""}
@@ -6,3 +6,5 @@ export * from './data-order-criteria.interface';
6
6
  export * from './data-order-field.interface';
7
7
  export * from './data-order.interface';
8
8
  export * from './tracker-status.interface';
9
+ export * from './index-db-params.interface';
10
+ export * from './index-db-config.interface';
@@ -12,4 +12,6 @@ tslib_1.__exportStar(require("./data-order-criteria.interface"), exports);
12
12
  tslib_1.__exportStar(require("./data-order-field.interface"), exports);
13
13
  tslib_1.__exportStar(require("./data-order.interface"), exports);
14
14
  tslib_1.__exportStar(require("./tracker-status.interface"), exports);
15
+ tslib_1.__exportStar(require("./index-db-params.interface"), exports);
16
+ tslib_1.__exportStar(require("./index-db-config.interface"), exports);
15
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/interfaces/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,4EAAkD;AAClD,wEAA8C;AAC9C,8DAAoC;AACpC,wEAA8C;AAC9C,0EAAgD;AAChD,uEAA6C;AAC7C,iEAAuC;AACvC,qEAA2C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/interfaces/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,4EAAkD;AAClD,wEAA8C;AAC9C,8DAAoC;AACpC,wEAA8C;AAC9C,0EAAgD;AAChD,uEAA6C;AAC7C,iEAAuC;AACvC,qEAA2C;AAC3C,sEAA4C;AAC5C,sEAA4C"}
@@ -1,7 +1,9 @@
1
1
  import { AxiosDefaults } from 'axios';
2
+ import { ID2IndexDbConfig } from '../interfaces';
2
3
  export declare class D2WebConfig {
3
4
  baseUrl?: string;
4
5
  locale?: string;
5
6
  httpClientConfig?: Partial<AxiosDefaults>;
7
+ indexDBConfig?: ID2IndexDbConfig;
6
8
  constructor(config: Partial<D2WebConfig>);
7
9
  }
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.D2WebConfig = void 0;
4
+ const index_db_config_model_1 = require("./index-db-config.model");
4
5
  class D2WebConfig {
5
6
  constructor(config) {
6
7
  this.baseUrl = (config === null || config === void 0 ? void 0 : config.baseUrl) || '../../..';
7
8
  this.locale = config === null || config === void 0 ? void 0 : config.locale;
8
9
  this.httpClientConfig = (config === null || config === void 0 ? void 0 : config.httpClientConfig) || {};
10
+ this.indexDBConfig = new index_db_config_model_1.D2IndexDbConfig(config === null || config === void 0 ? void 0 : config.indexDBConfig);
9
11
  }
10
12
  }
11
13
  exports.D2WebConfig = D2WebConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"d2-web-config.model.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/d2-web-config.model.ts"],"names":[],"mappings":";;;AAIA,MAAa,WAAW;IAKtB,YAAY,MAA4B;QACtC,IAAI,CAAC,OAAO,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,KAAI,UAAU,CAAC;QAC7C,IAAI,CAAC,MAAM,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC;QAC7B,IAAI,CAAC,gBAAgB,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,KAAI,EAAE,CAAC;IACzD,CAAC;CACF;AAVD,kCAUC"}
1
+ {"version":3,"file":"d2-web-config.model.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/d2-web-config.model.ts"],"names":[],"mappings":";;;AAKA,mEAA0D;AAC1D,MAAa,WAAW;IAMtB,YAAY,MAA4B;QACtC,IAAI,CAAC,OAAO,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,KAAI,UAAU,CAAC;QAC7C,IAAI,CAAC,MAAM,GAAG,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,CAAC;QAC7B,IAAI,CAAC,gBAAgB,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,gBAAgB,KAAI,EAAE,CAAC;QACvD,IAAI,CAAC,aAAa,GAAG,IAAI,uCAAe,CAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,aAAa,CAAC,CAAC;IAClE,CAAC;CACF;AAZD,kCAYC"}
@@ -1,9 +1,10 @@
1
- import { AxiosDefaults } from 'axios';
2
- import { D2HttpResponse } from './http-response.model';
1
+ import { AxiosInstance } from 'axios';
3
2
  import { D2HttpRequestConfig } from './d2-http-request-config.model';
3
+ import { D2HttpResponse } from './http-response.model';
4
+ import { D2IndexDb } from './index-db.model';
4
5
  export declare class D2HttpClient {
5
6
  #private;
6
- constructor(config: AxiosDefaults);
7
+ constructor(axiosInstance: AxiosInstance, indexDb: D2IndexDb);
7
8
  get(url: string, config?: D2HttpRequestConfig): Promise<D2HttpResponse>;
8
9
  post(url: string, data: Record<string, unknown>, config?: D2HttpRequestConfig): Promise<D2HttpResponse>;
9
10
  put(url: string, data: Record<string, unknown>, config?: D2HttpRequestConfig): Promise<D2HttpResponse>;
@@ -2,27 +2,27 @@
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_instances, _D2HttpClient_axiosInstance, _D2HttpClient_getBaseUrl;
5
+ var _D2HttpClient_instances, _D2HttpClient_axiosInstance, _D2HttpClient_indexDb, _D2HttpClient_fetchFromApi, _D2HttpClient_fetchFromIndexDb, _D2HttpClient_saveToIndexDb, _D2HttpClient_handleDataStoreResponse, _D2HttpClient_getBaseUrl;
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.D2HttpClient = void 0;
8
8
  const tslib_1 = require("tslib");
9
- const axios_1 = tslib_1.__importDefault(require("axios"));
9
+ const lodash_1 = require("lodash");
10
10
  const http_response_model_1 = require("./http-response.model");
11
+ const index_db_query_schema_model_1 = require("./index-db-query-schema.model");
11
12
  class D2HttpClient {
12
- constructor(config) {
13
+ constructor(axiosInstance, indexDb) {
13
14
  _D2HttpClient_instances.add(this);
14
15
  _D2HttpClient_axiosInstance.set(this, void 0);
15
- tslib_1.__classPrivateFieldSet(this, _D2HttpClient_axiosInstance, axios_1.default.create(config), "f");
16
+ _D2HttpClient_indexDb.set(this, void 0);
17
+ tslib_1.__classPrivateFieldSet(this, _D2HttpClient_axiosInstance, axiosInstance, "f");
18
+ tslib_1.__classPrivateFieldSet(this, _D2HttpClient_indexDb, indexDb, "f");
16
19
  }
17
20
  get(url, config) {
18
21
  return tslib_1.__awaiter(this, void 0, void 0, function* () {
19
- try {
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}`);
21
- return new http_response_model_1.D2HttpResponse(response);
22
- }
23
- catch (error) {
24
- return new http_response_model_1.D2HttpResponse(error);
22
+ if (config === null || config === void 0 ? void 0 : config.useIndexDb) {
23
+ return tslib_1.__classPrivateFieldGet(this, _D2HttpClient_instances, "m", _D2HttpClient_fetchFromIndexDb).call(this, url, config);
25
24
  }
25
+ return tslib_1.__classPrivateFieldGet(this, _D2HttpClient_instances, "m", _D2HttpClient_fetchFromApi).call(this, url, config);
26
26
  });
27
27
  }
28
28
  post(url, data, config) {
@@ -71,7 +71,69 @@ class D2HttpClient {
71
71
  }
72
72
  }
73
73
  exports.D2HttpClient = D2HttpClient;
74
- _D2HttpClient_axiosInstance = new WeakMap(), _D2HttpClient_instances = new WeakSet(), _D2HttpClient_getBaseUrl = function _D2HttpClient_getBaseUrl(config) {
74
+ _D2HttpClient_axiosInstance = new WeakMap(), _D2HttpClient_indexDb = new WeakMap(), _D2HttpClient_instances = new WeakSet(), _D2HttpClient_fetchFromApi = function _D2HttpClient_fetchFromApi(url, config) {
75
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
76
+ try {
77
+ const response = yield tslib_1.__classPrivateFieldGet(this, _D2HttpClient_axiosInstance, "f").get(`${tslib_1.__classPrivateFieldGet(this, _D2HttpClient_instances, "m", _D2HttpClient_getBaseUrl).call(this, config)}/${url}`);
78
+ return new http_response_model_1.D2HttpResponse(response);
79
+ }
80
+ catch (error) {
81
+ return new http_response_model_1.D2HttpResponse(error);
82
+ }
83
+ });
84
+ }, _D2HttpClient_fetchFromIndexDb = function _D2HttpClient_fetchFromIndexDb(url, config) {
85
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
86
+ var _a, _b;
87
+ const indexDbQuerySchema = index_db_query_schema_model_1.IndexDbQuerySchema.fromUrl(url);
88
+ const { schema, dataId } = indexDbQuerySchema;
89
+ if (!schema) {
90
+ console.warn('index db operations failed, Error: Schema is not supplied');
91
+ return tslib_1.__classPrivateFieldGet(this, _D2HttpClient_instances, "m", _D2HttpClient_fetchFromApi).call(this, url, config);
92
+ }
93
+ const indexDbResponse = yield (dataId
94
+ ? tslib_1.__classPrivateFieldGet(this, _D2HttpClient_indexDb, "f").findById(dataId, indexDbQuerySchema)
95
+ : tslib_1.__classPrivateFieldGet(this, _D2HttpClient_indexDb, "f").findAll(indexDbQuerySchema));
96
+ if (!indexDbResponse ||
97
+ ((_a = indexDbResponse[schema]) === null || _a === void 0 ? void 0 : _a.length) === 0 ||
98
+ ((_b = indexDbResponse['entries']) === null || _b === void 0 ? void 0 : _b.length) === 0) {
99
+ const apiResponse = yield tslib_1.__classPrivateFieldGet(this, _D2HttpClient_instances, "m", _D2HttpClient_fetchFromApi).call(this, url, config);
100
+ if (!(apiResponse === null || apiResponse === void 0 ? void 0 : apiResponse.data)) {
101
+ return apiResponse;
102
+ }
103
+ yield tslib_1.__classPrivateFieldGet(this, _D2HttpClient_instances, "m", _D2HttpClient_saveToIndexDb).call(this, apiResponse, indexDbQuerySchema);
104
+ return apiResponse;
105
+ }
106
+ return new http_response_model_1.D2HttpResponse({ data: indexDbResponse, status: 200 });
107
+ });
108
+ }, _D2HttpClient_saveToIndexDb = function _D2HttpClient_saveToIndexDb(apiResponse, IndexDbQuerySchema) {
109
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
110
+ var _a, _b;
111
+ const { schema, dataId, isDataStoreResource, namespace } = IndexDbQuerySchema;
112
+ const responseData = isDataStoreResource
113
+ ? tslib_1.__classPrivateFieldGet(this, _D2HttpClient_instances, "m", _D2HttpClient_handleDataStoreResponse).call(this, apiResponse, namespace, dataId)
114
+ : (_b = (_a = apiResponse === null || apiResponse === void 0 ? void 0 : apiResponse.data) === null || _a === void 0 ? void 0 : _a[schema]) !== null && _b !== void 0 ? _b : apiResponse === null || apiResponse === void 0 ? void 0 : apiResponse.data;
115
+ (yield dataId)
116
+ ? tslib_1.__classPrivateFieldGet(this, _D2HttpClient_indexDb, "f").saveOne(schema, responseData)
117
+ : tslib_1.__classPrivateFieldGet(this, _D2HttpClient_indexDb, "f").saveBulk(schema, responseData);
118
+ });
119
+ }, _D2HttpClient_handleDataStoreResponse = function _D2HttpClient_handleDataStoreResponse(apiResponse, namespace, key) {
120
+ var _a, _b, _c;
121
+ if ((0, lodash_1.isArray)(apiResponse === null || apiResponse === void 0 ? void 0 : apiResponse.data) || ((_a = apiResponse === null || apiResponse === void 0 ? void 0 : apiResponse.data) === null || _a === void 0 ? void 0 : _a['entries'])) {
122
+ return ((_c = (_b = apiResponse === null || apiResponse === void 0 ? void 0 : apiResponse.data) === null || _b === void 0 ? void 0 : _b['entries']) !== null && _c !== void 0 ? _c : apiResponse === null || apiResponse === void 0 ? void 0 : apiResponse.data).map((entry) => {
123
+ const referenceKey = (0, lodash_1.isPlainObject)(entry)
124
+ ? `${namespace}-${entry['key']}`
125
+ : undefined;
126
+ return {
127
+ referenceKey,
128
+ entry,
129
+ };
130
+ });
131
+ }
132
+ return {
133
+ entry: apiResponse.data,
134
+ referenceKey: `${namespace}-${key}`,
135
+ };
136
+ }, _D2HttpClient_getBaseUrl = function _D2HttpClient_getBaseUrl(config) {
75
137
  const baseUrl = '../../..';
76
138
  if (config === null || config === void 0 ? void 0 : config.useRootUrl) {
77
139
  return baseUrl;
@@ -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;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;IAEK,GAAG,CACP,GAAW,EACX,IAA6B,EAC7B,MAA4B;;YAE5B,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,+BAAA,IAAI,mCAAe,CAAC,GAAG,CAC5C,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;IAEK,KAAK,CACT,GAAW,EACX,IAA6B,EAC7B,MAA4B;;YAE5B,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,+BAAA,IAAI,mCAAe,CAAC,KAAK,CAC9C,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;IAEK,MAAM,CACV,GAAW,EACX,MAA4B;;YAE5B,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,+BAAA,IAAI,mCAAe,CAAC,MAAM,CAAC,gBAAgB,GAAG,EAAE,CAAC,CAAC;gBAEzE,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;AA/FD,oCA+FC;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"}
1
+ {"version":3,"file":"http-client.model.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/http-client.model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import { ID2IndexDbConfig } from '../interfaces';
2
+ export declare class D2IndexDbConfig implements ID2IndexDbConfig {
3
+ #private;
4
+ namespace: string;
5
+ version: number;
6
+ models: Record<string, string>;
7
+ constructor(config?: Partial<ID2IndexDbConfig>);
8
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ var _D2IndexDbConfig_instances, _D2IndexDbConfig_setModels, _D2IndexDbConfig_getDefaultModels;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.D2IndexDbConfig = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const constants_1 = require("../constants");
7
+ class D2IndexDbConfig {
8
+ constructor(config) {
9
+ _D2IndexDbConfig_instances.add(this);
10
+ this.namespace = (config === null || config === void 0 ? void 0 : config.namespace) || 'd2-web-sdk-db';
11
+ this.version = (config === null || config === void 0 ? void 0 : config.version) || 1;
12
+ this.models = tslib_1.__classPrivateFieldGet(this, _D2IndexDbConfig_instances, "m", _D2IndexDbConfig_setModels).call(this, (config === null || config === void 0 ? void 0 : config.models) || {});
13
+ }
14
+ }
15
+ exports.D2IndexDbConfig = D2IndexDbConfig;
16
+ _D2IndexDbConfig_instances = new WeakSet(), _D2IndexDbConfig_setModels = function _D2IndexDbConfig_setModels(models) {
17
+ return Object.assign(Object.assign({}, tslib_1.__classPrivateFieldGet(this, _D2IndexDbConfig_instances, "m", _D2IndexDbConfig_getDefaultModels).call(this)), (models || {}));
18
+ }, _D2IndexDbConfig_getDefaultModels = function _D2IndexDbConfig_getDefaultModels() {
19
+ const resources = constants_1.D2_RESOURCES;
20
+ return Object.keys(resources).reduce((models, resourceKey) => {
21
+ const resource = resources[resourceKey];
22
+ return Object.assign(Object.assign({}, models), { [resource.name]: resource.indexDbIndices });
23
+ }, {});
24
+ };
25
+ //# sourceMappingURL=index-db-config.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-db-config.model.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/index-db-config.model.ts"],"names":[],"mappings":";;;;;AAAA,4CAA4C;AAG5C,MAAa,eAAe;IAK1B,YAAY,MAAkC;;QAC5C,IAAI,CAAC,SAAS,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,KAAI,eAAe,CAAC;QACtD,IAAI,CAAC,OAAO,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,KAAI,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,GAAG,+BAAA,IAAI,8DAAW,MAAf,IAAI,EAAY,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,KAAI,EAAE,CAAC,CAAC;IACtD,CAAC;CAuBF;AAhCD,0CAgCC;6GArBY,MAA8B;IACvC,uCACK,+BAAA,IAAI,qEAAkB,MAAtB,IAAI,CAAoB,GACxB,CAAC,MAAM,IAAI,EAAE,CAAC,EACjB;AACJ,CAAC;IAGC,MAAM,SAAS,GAAG,wBAGjB,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE;QAC3D,MAAM,QAAQ,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;QAExC,uCACK,MAAM,KACT,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,cAAc,IACxC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { IndexDBParams } from '../interfaces';
2
+ export declare class IndexDbQuerySchema {
3
+ dataId?: string;
4
+ schema: string;
5
+ namespace?: string;
6
+ params: IndexDBParams;
7
+ isDataStoreResource?: boolean;
8
+ static fromUrl(url: string): IndexDbQuerySchema;
9
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IndexDbQuerySchema = void 0;
4
+ const utils_1 = require("../utils");
5
+ class IndexDbQuerySchema {
6
+ static fromUrl(url) {
7
+ var _a, _b, _c;
8
+ const urlContent = utils_1.IndexDbUtil.deduceUrlContent(url);
9
+ return {
10
+ dataId: (_a = urlContent === null || urlContent === void 0 ? void 0 : urlContent.schema) === null || _a === void 0 ? void 0 : _a.id,
11
+ schema: (_b = urlContent === null || urlContent === void 0 ? void 0 : urlContent.schema) === null || _b === void 0 ? void 0 : _b.name,
12
+ namespace: (_c = urlContent === null || urlContent === void 0 ? void 0 : urlContent.schema) === null || _c === void 0 ? void 0 : _c.namespace,
13
+ params: (urlContent === null || urlContent === void 0 ? void 0 : urlContent.params) || {},
14
+ isDataStoreResource: url.includes('dataStore'),
15
+ };
16
+ }
17
+ }
18
+ exports.IndexDbQuerySchema = IndexDbQuerySchema;
19
+ //# sourceMappingURL=index-db-query-schema.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-db-query-schema.model.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/index-db-query-schema.model.ts"],"names":[],"mappings":";;;AACA,oCAAuC;AAEvC,MAAa,kBAAkB;IAO7B,MAAM,CAAC,OAAO,CAAC,GAAW;;QACxB,MAAM,UAAU,GAAG,mBAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAErD,OAAO;YACL,MAAM,EAAE,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,0CAAE,EAAE;YAC9B,MAAM,EAAE,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,0CAAE,IAAI;YAChC,SAAS,EAAE,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,0CAAE,SAAS;YACxC,MAAM,EAAE,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,KAAI,EAAE;YAChC,mBAAmB,EAAE,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC;SAC/C,CAAC;IACJ,CAAC;CACF;AAlBD,gDAkBC"}
@@ -0,0 +1,11 @@
1
+ import Dexie from 'dexie';
2
+ import { ID2IndexDbConfig } from '../interfaces';
3
+ import { IndexDbQuerySchema } from './index-db-query-schema.model';
4
+ export declare class D2IndexDb extends Dexie {
5
+ #private;
6
+ constructor(config: ID2IndexDbConfig);
7
+ findById(id: string, indexDbQuerySchema: IndexDbQuerySchema): Promise<any>;
8
+ findAll(indexDbQuerySchema: IndexDbQuerySchema): Promise<any>;
9
+ saveOne(schemaName: string, data: any): import("dexie").PromiseExtended<import("dexie").IndexableType>;
10
+ saveBulk(schemaName: string, data: any[]): Promise<any>;
11
+ }
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ var _D2IndexDb_instances, _D2IndexDb_getTableSchema;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.D2IndexDb = void 0;
5
+ const tslib_1 = require("tslib");
6
+ const dexie_1 = tslib_1.__importDefault(require("dexie"));
7
+ const utils_1 = require("../utils");
8
+ class D2IndexDb extends dexie_1.default {
9
+ constructor(config) {
10
+ super(config.namespace);
11
+ _D2IndexDb_instances.add(this);
12
+ this.version(config.version).stores(config.models);
13
+ }
14
+ findById(id, indexDbQuerySchema) {
15
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
16
+ const { schema, isDataStoreResource } = indexDbQuerySchema;
17
+ if (isDataStoreResource) {
18
+ const data = yield this.table(schema).where({ key: id }).first();
19
+ return data === null || data === void 0 ? void 0 : data['entry'];
20
+ }
21
+ return this.table(schema).where({ id }).first();
22
+ });
23
+ }
24
+ findAll(indexDbQuerySchema) {
25
+ return tslib_1.__awaiter(this, void 0, void 0, function* () {
26
+ const { schema, isDataStoreResource, params } = indexDbQuerySchema;
27
+ const dataArray = yield tslib_1.__classPrivateFieldGet(this, _D2IndexDb_instances, "m", _D2IndexDb_getTableSchema).call(this, schema, params).toArray();
28
+ const filteredData = utils_1.IndexDbUtil.filterIndexDBData(dataArray, params.filter);
29
+ if (isDataStoreResource) {
30
+ return {
31
+ entries: filteredData.map((dataItem) => {
32
+ return dataItem['entry'];
33
+ }),
34
+ };
35
+ }
36
+ return {
37
+ [schema]: filteredData,
38
+ };
39
+ });
40
+ }
41
+ saveOne(schemaName, data) {
42
+ return this.table(schemaName).put(data);
43
+ }
44
+ saveBulk(schemaName, data) {
45
+ return this.table(schemaName).bulkPut(data);
46
+ }
47
+ }
48
+ exports.D2IndexDb = D2IndexDb;
49
+ _D2IndexDb_instances = new WeakSet(), _D2IndexDb_getTableSchema = function _D2IndexDb_getTableSchema(schemaName, params) {
50
+ const tableSchema = this.table(schemaName);
51
+ if (!params) {
52
+ return tableSchema;
53
+ }
54
+ // TODO: Find best way to simplify this code
55
+ if (params.pageSize) {
56
+ const page = params.page || 1;
57
+ const pagedTableSchema = tableSchema
58
+ .offset(page * params.pageSize)
59
+ .limit(params.pageSize);
60
+ if (params.order) {
61
+ const orderByColumns = utils_1.IndexDbUtil.getOrderByColumns(params.order);
62
+ if (orderByColumns.length === 0) {
63
+ return pagedTableSchema;
64
+ }
65
+ // TODO: Need to find a way to order by more than one column, currently dexie does not support this
66
+ return tableSchema
67
+ .orderBy(orderByColumns[0])
68
+ .offset(page === 1 ? 0 : page * params.pageSize)
69
+ .limit(params.pageSize);
70
+ }
71
+ return pagedTableSchema;
72
+ }
73
+ else if (params.order) {
74
+ const orderByColumns = utils_1.IndexDbUtil.getOrderByColumns(params.order);
75
+ if (orderByColumns.length === 0) {
76
+ return tableSchema;
77
+ }
78
+ // TODO: Need to find a way to order by more than one column, currently dexie does not support this
79
+ return tableSchema.orderBy(orderByColumns[0]);
80
+ }
81
+ return tableSchema;
82
+ };
83
+ //# sourceMappingURL=index-db.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-db.model.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/models/index-db.model.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,7 @@ export * from './base.model';
6
6
  export * from './junction-operator.model';
7
7
  export * from './d2-web-config.model';
8
8
  export * from './http-client.model';
9
+ export * from './index-db.model';
9
10
  export * from './pager.model';
10
11
  export * from './d2-response.model';
11
12
  export * from './relationship-direction.model';
@@ -15,3 +16,5 @@ export * from './d2-http-request-config.model';
15
16
  export * from './data-query-filter.model';
16
17
  export * from './data-url-generator.model';
17
18
  export * from './data-order-criteria.model';
19
+ export * from './index-db-config.model';
20
+ export * from './index-db-query-schema.model';
@@ -12,6 +12,7 @@ tslib_1.__exportStar(require("./base.model"), exports);
12
12
  tslib_1.__exportStar(require("./junction-operator.model"), exports);
13
13
  tslib_1.__exportStar(require("./d2-web-config.model"), exports);
14
14
  tslib_1.__exportStar(require("./http-client.model"), exports);
15
+ tslib_1.__exportStar(require("./index-db.model"), exports);
15
16
  tslib_1.__exportStar(require("./pager.model"), exports);
16
17
  tslib_1.__exportStar(require("./d2-response.model"), exports);
17
18
  tslib_1.__exportStar(require("./relationship-direction.model"), exports);
@@ -21,4 +22,6 @@ tslib_1.__exportStar(require("./d2-http-request-config.model"), exports);
21
22
  tslib_1.__exportStar(require("./data-query-filter.model"), exports);
22
23
  tslib_1.__exportStar(require("./data-url-generator.model"), exports);
23
24
  tslib_1.__exportStar(require("./data-order-criteria.model"), exports);
25
+ tslib_1.__exportStar(require("./index-db-config.model"), exports);
26
+ tslib_1.__exportStar(require("./index-db-query-schema.model"), exports);
24
27
  //# 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;AAC3C,yEAA+C;AAC/C,oEAA0C;AAC1C,qEAA2C;AAC3C,sEAA4C"}
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,2DAAiC;AACjC,wDAA8B;AAC9B,8DAAoC;AACpC,yEAA+C;AAC/C,gEAAsC;AACtC,qEAA2C;AAC3C,yEAA+C;AAC/C,oEAA0C;AAC1C,qEAA2C;AAC3C,sEAA4C;AAC5C,kEAAwC;AACxC,wEAA8C"}
@@ -0,0 +1,16 @@
1
+ import { IndexDBParams } from '../interfaces';
2
+ export declare class IndexDbUtil {
3
+ static getUrlParams(splitedUrl: string[]): IndexDBParams | null;
4
+ static sanitizeParams(params: any): IndexDBParams | null;
5
+ static deduceUrlContent(url: string): {
6
+ schema: {
7
+ name: string;
8
+ namespace: string;
9
+ id: string;
10
+ };
11
+ params: IndexDBParams | null;
12
+ };
13
+ static getOrderByColumns(orderParams: string[]): string[];
14
+ static filterIndexDBData(data: Record<string, object>[], filterParams: string[]): Record<string, object>[];
15
+ static filterDataItem(dataItem: any, filterList: any[]): boolean;
16
+ }
@@ -0,0 +1,99 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IndexDbUtil = void 0;
4
+ class IndexDbUtil {
5
+ static getUrlParams(splitedUrl) {
6
+ const params = {};
7
+ ((splitedUrl[1] || '').split('&') || []).forEach((param) => {
8
+ const splitedParams = param.split('=');
9
+ if (splitedParams[0] || splitedParams[0] !== '') {
10
+ params[splitedParams[0]] = [
11
+ ...(params[splitedParams[0]] || []),
12
+ splitedParams[1],
13
+ ];
14
+ }
15
+ });
16
+ return IndexDbUtil.sanitizeParams(params);
17
+ }
18
+ static sanitizeParams(params) {
19
+ if (!params) {
20
+ return null;
21
+ }
22
+ return {
23
+ page: params.page ? parseInt(params.page[0], 10) : undefined,
24
+ pageSize: params.pageSize ? parseInt(params.pageSize[0], 10) : undefined,
25
+ fields: params.fields ? params.fields[0] : undefined,
26
+ filter: params.filter,
27
+ order: params.order,
28
+ };
29
+ }
30
+ static deduceUrlContent(url) {
31
+ const splitedUrl = (url || '').split('?');
32
+ const schemaPart = (splitedUrl[0] || '').split('/') || [];
33
+ const schemaName = ((schemaPart[0] || '').split('.') || [])[0];
34
+ const schema = {
35
+ name: schemaName,
36
+ namespace: ((schemaPart[1] || '').split('.') || [])[0],
37
+ id: schemaName === 'dataStore'
38
+ ? (schemaPart[2] || '').replace('.json', '')
39
+ : (schemaPart[1] || '').replace('.json', ''),
40
+ };
41
+ const params = IndexDbUtil.getUrlParams(splitedUrl);
42
+ return { schema, params };
43
+ }
44
+ static getOrderByColumns(orderParams) {
45
+ return (orderParams || [])
46
+ .map((orderString) => (orderString || '').split(':')[0])
47
+ .filter((orderString) => orderString);
48
+ }
49
+ static filterIndexDBData(data, filterParams) {
50
+ if (!filterParams) {
51
+ return data;
52
+ }
53
+ const filterList = filterParams.map((filterString) => {
54
+ const splitedFilterString = filterString.split(':');
55
+ return {
56
+ attribute: splitedFilterString[0],
57
+ condition: splitedFilterString[1],
58
+ filterValue: splitedFilterString[2],
59
+ };
60
+ });
61
+ return data.filter((dataItem) => IndexDbUtil.filterDataItem(dataItem, filterList));
62
+ }
63
+ static filterDataItem(dataItem, filterList) {
64
+ return (filterList || []).some((filterItem) => {
65
+ const { attribute, condition, filterValue } = filterItem;
66
+ let dataValue;
67
+ (attribute || '')
68
+ .split('.')
69
+ .forEach((attributeKey, index) => {
70
+ if (index > 0 && !dataValue) {
71
+ return undefined;
72
+ }
73
+ dataValue = dataValue
74
+ ? dataValue[attributeKey]
75
+ : dataItem[attributeKey];
76
+ });
77
+ switch (condition) {
78
+ case 'ilike':
79
+ return (dataValue || '').indexOf(filterValue) !== -1;
80
+ case 'eq':
81
+ return dataValue === filterValue;
82
+ case 'le':
83
+ return (parseInt(dataValue, 10) <= parseInt(filterValue, 10));
84
+ case 'lt':
85
+ return parseInt(dataValue, 10) < parseInt(filterValue, 10);
86
+ case 'ge':
87
+ return (parseInt(dataValue, 10) >= parseInt(filterValue, 10));
88
+ case 'gt':
89
+ return parseInt(dataValue, 10) > parseInt(filterValue, 10);
90
+ case 'in':
91
+ return (filterValue || '').indexOf(dataValue) !== -1;
92
+ default:
93
+ return false;
94
+ }
95
+ });
96
+ }
97
+ }
98
+ exports.IndexDbUtil = IndexDbUtil;
99
+ //# sourceMappingURL=index-db.util.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-db.util.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/utils/index-db.util.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export * from './query-filter.util';
2
2
  export * from './dhis-url-generator.util';
3
3
  export * from './generate-uid.util';
4
+ export * from './index-db.util';
@@ -7,4 +7,5 @@ const tslib_1 = require("tslib");
7
7
  tslib_1.__exportStar(require("./query-filter.util"), exports);
8
8
  tslib_1.__exportStar(require("./dhis-url-generator.util"), exports);
9
9
  tslib_1.__exportStar(require("./generate-uid.util"), exports);
10
+ tslib_1.__exportStar(require("./index-db.util"), exports);
10
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/utils/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,8DAAoC;AACpC,oEAA0C;AAC1C,8DAAoC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../../packages/dhis2-web-sdk/src/lib/shared/utils/index.ts"],"names":[],"mappings":";;;AAAA,sDAAsD;AACtD,qDAAqD;AACrD,iDAAiD;AACjD,8DAAoC;AACpC,oEAA0C;AAC1C,8DAAoC;AACpC,0DAAgC"}