@studyportals/crm-data-processor-interface 0.2.11 → 0.2.14

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/index.d.ts CHANGED
@@ -8,4 +8,7 @@ import { ProjectProduct } from "./src/data/project-product";
8
8
  import { ProjectProductState } from "./src/data/project-product-state";
9
9
  import { ProjectProductStateType } from "./src/data/project-product-state-type";
10
10
  import { GrantAccessPayload } from "./src/data/grant-access-payload";
11
- export { CrmDataProcessorClient, ProductsResponseBody, ActProduct, ActClientProduct, ActClientFreeProduct, ActClientPaidProduct, ActClientProductType, ProjectDetailsResponseBody, ProjectDetails, ProjectProduct, ProjectProductState, ProjectProductStateType, GrantAccessPayload };
11
+ import { ProjectProductAccess } from "./src/data/project-product-access";
12
+ import { TableauDashboardAccessResponseBody } from "./src/data/tableau-dashboard-access-reponse-body";
13
+ import { TableauDashboardAccess } from "./src/data/tableau-dashboard-access";
14
+ export { CrmDataProcessorClient, ProductsResponseBody, ActProduct, ActClientProduct, ActClientFreeProduct, ActClientPaidProduct, ActClientProductType, ProjectDetailsResponseBody, ProjectDetails, ProjectProduct, ProjectProductState, ProjectProductStateType, GrantAccessPayload, ProjectProductAccess, TableauDashboardAccessResponseBody, TableauDashboardAccess };
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,uFAAiF;AAYhF,uGAZQ,kDAAsB,OAYR;AAVvB,sEAAmI;AAiBlI,qGAjBsE,yCAAoB,OAiBtE;AAZrB,4EAAuE;AAkBtE,oGAlBQ,2CAAmB,OAkBR"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,uFAAiF;AAehF,uGAfQ,kDAAsB,OAeR;AAbvB,sEAAmI;AAoBlI,qGApBsE,yCAAoB,OAoBtE;AAfrB,4EAAuE;AAqBtE,oGArBQ,2CAAmB,OAqBR"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@studyportals/crm-data-processor-interface",
3
- "version": "0.2.11",
3
+ "version": "0.2.14",
4
4
  "scripts": {
5
5
  "compile": "rm -fR dist && npx tsc",
6
6
  "prepare-deployment": "npm run compile && cp package.json dist/package.json && rm -fR dist/tests",
@@ -18,7 +18,7 @@
18
18
  "@types/node": "^25.0.3",
19
19
  "ts-node": "^10.9.2",
20
20
  "typescript": "^5.9.3",
21
- "vitest": "^4.0.16"
21
+ "vitest": "^4.0.18"
22
22
  },
23
23
  "dependencies": {},
24
24
  "engines": {
@@ -1,6 +1,7 @@
1
1
  import { ProjectDetailsResponseBody } from "../data/project-details-response-body";
2
2
  import { ProductsResponseBody } from "../data/products-response-body";
3
3
  import { GrantAccessPayload } from "../data/grant-access-payload";
4
+ import { TableauDashboardAccessResponseBody } from "../data/tableau-dashboard-access-reponse-body";
4
5
  export declare class CrmDataProcessorClient {
5
6
  private readonly baseUrl;
6
7
  private readonly jwtTokenProvider;
@@ -17,6 +18,7 @@ export declare class CrmDataProcessorClient {
17
18
  * @returns Array of Project Details objects
18
19
  */
19
20
  retrieveProjectDetails(): Promise<ProjectDetailsResponseBody>;
21
+ retrieveDashboardAccess(): Promise<TableauDashboardAccessResponseBody>;
20
22
  /**
21
23
  * Grants product access to users based on the provided payload.
22
24
  *
@@ -39,6 +39,20 @@ class CrmDataProcessorClient {
39
39
  }
40
40
  return response;
41
41
  }
42
+ async retrieveDashboardAccess() {
43
+ const jwt = await this.jwtTokenProvider();
44
+ const url = new URL(this.baseUrl + `/dashboards/access`);
45
+ const response = await this.sendGetRequest(url, jwt);
46
+ for (const item of response) {
47
+ if (item.startDate) {
48
+ item.startDate = new Date(item.startDate);
49
+ }
50
+ if (item.endDate) {
51
+ item.endDate = new Date(item.endDate);
52
+ }
53
+ }
54
+ return response;
55
+ }
42
56
  /**
43
57
  * Grants product access to users based on the provided payload.
44
58
  *
@@ -1 +1 @@
1
- {"version":3,"file":"crm-data-processor-client.js","sourceRoot":"","sources":["../../../src/clients/crm-data-processor-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"crm-data-processor-client.js","sourceRoot":"","sources":["../../../src/clients/crm-data-processor-client.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { ProjectProduct } from "./project-product";
1
+ import { ProjectProductAccess } from "./project-product-access";
2
2
  export type GrantAccessPayload = {
3
3
  emailAddresses: string[];
4
- products: ProjectProduct[];
4
+ products: ProjectProductAccess[];
5
5
  };
@@ -0,0 +1,6 @@
1
+ export type ProjectProductAccess = {
2
+ projectId: string;
3
+ productId: string;
4
+ productStartDate: Date;
5
+ productEndDate: Date;
6
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=project-product-access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-product-access.js","sourceRoot":"","sources":["../../../src/data/project-product-access.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import { TableauDashboardAccess } from "./tableau-dashboard-access";
2
+ export type TableauDashboardAccessResponseBody = TableauDashboardAccess[];
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=tableau-dashboard-access-reponse-body.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableau-dashboard-access-reponse-body.js","sourceRoot":"","sources":["../../../src/data/tableau-dashboard-access-reponse-body.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ export type TableauDashboardAccess = {
2
+ startDate?: Date;
3
+ endDate?: Date;
4
+ active: boolean;
5
+ dashboardName: string;
6
+ dashboardDescription: string;
7
+ dashboardUrl: string;
8
+ dashboardTag: string;
9
+ dashboardImageCount: number;
10
+ dashboardDemoUrl: string;
11
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=tableau-dashboard-access.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tableau-dashboard-access.js","sourceRoot":"","sources":["../../../src/data/tableau-dashboard-access.ts"],"names":[],"mappings":""}