@adobe/spacecat-shared-data-access 1.61.2 → 1.61.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ # [@adobe/spacecat-shared-data-access-v1.61.4](https://github.com/adobe/spacecat-shared/compare/@adobe/spacecat-shared-data-access-v1.61.3...@adobe/spacecat-shared-data-access-v1.61.4) (2024-12-30)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * types & deps ([#510](https://github.com/adobe/spacecat-shared/issues/510)) ([d162c1d](https://github.com/adobe/spacecat-shared/commit/d162c1d75a2052fc07da844923762e9397016b90))
7
+
8
+ # [@adobe/spacecat-shared-data-access-v1.61.3](https://github.com/adobe/spacecat-shared/compare/@adobe/spacecat-shared-data-access-v1.61.2...@adobe/spacecat-shared-data-access-v1.61.3) (2024-12-28)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * cache key ([#507](https://github.com/adobe/spacecat-shared/issues/507)) ([7146bfd](https://github.com/adobe/spacecat-shared/commit/7146bfd908e1bc13076bd58b3c24ca89b7f4c531))
14
+
1
15
  # [@adobe/spacecat-shared-data-access-v1.61.2](https://github.com/adobe/spacecat-shared/compare/@adobe/spacecat-shared-data-access-v1.61.1...@adobe/spacecat-shared-data-access-v1.61.2) (2024-12-27)
2
16
 
3
17
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adobe/spacecat-shared-data-access",
3
- "version": "1.61.2",
3
+ "version": "1.61.4",
4
4
  "description": "Shared modules of the Spacecat Services - Data Access",
5
5
  "type": "module",
6
6
  "engines": {
@@ -34,8 +34,8 @@
34
34
  "access": "public"
35
35
  },
36
36
  "dependencies": {
37
- "@adobe/spacecat-shared-dynamo": "1.4.2",
38
- "@adobe/spacecat-shared-utils": "1.24.1",
37
+ "@adobe/spacecat-shared-dynamo": "1.5.0",
38
+ "@adobe/spacecat-shared-utils": "1.25.0",
39
39
  "@aws-sdk/client-dynamodb": "3.716.0",
40
40
  "@aws-sdk/lib-dynamodb": "3.716.0",
41
41
  "@types/joi": "17.2.3",
@@ -15,7 +15,7 @@ import type {
15
15
  } from '../index';
16
16
 
17
17
  export interface Audit extends BaseModel {
18
- getAuditedAt(): number;
18
+ getAuditedAt(): string;
19
19
  getAuditId(): string;
20
20
  getAuditResult(): object;
21
21
  getAuditType(): string;
@@ -15,23 +15,23 @@ import type { BaseCollection, BaseModel, Site } from '../index';
15
15
  export interface Experiment extends BaseModel {
16
16
  getConversionEventName(): string;
17
17
  getConversionEventValue(): string;
18
- getEndDate(): number;
18
+ getEndDate(): string;
19
19
  getExpId(): string;
20
20
  getName(): string;
21
21
  getSite(): Promise<Site>;
22
22
  getSiteId(): string;
23
- getStartDate(): number;
23
+ getStartDate(): string;
24
24
  getStatus(): string;
25
25
  getType(): string;
26
26
  getUrl(): string;
27
27
  getVariants(): object;
28
28
  setConversionEventName(conversionEventName: string): Experiment;
29
29
  setConversionEventValue(conversionEventValue: string): Experiment;
30
- setEndDate(endDate: number): Experiment;
30
+ setEndDate(endDate: string): Experiment;
31
31
  setExpId(expId: string): Experiment;
32
32
  setName(name: string): Experiment;
33
33
  setSiteId(siteId: string): Experiment;
34
- setStartDate(startDate: number): Experiment;
34
+ setStartDate(startDate: string): Experiment;
35
35
  setStatus(status: string): Experiment;
36
36
  setType(type: string): Experiment;
37
37
  setUrl(url: string): Experiment;
@@ -16,7 +16,7 @@ import type { ImportUrl } from '../import-url';
16
16
  export interface ImportJob extends BaseModel {
17
17
  getBaseURL(): string,
18
18
  getDuration(): number,
19
- getEndedAt(): number,
19
+ getEndedAt(): string,
20
20
  getFailedCount(): number,
21
21
  getHasCustomHeaders(): boolean,
22
22
  getHasCustomImportJs(): boolean,
@@ -27,13 +27,13 @@ export interface ImportJob extends BaseModel {
27
27
  getInitiatedBy(): string,
28
28
  getOptions(): string,
29
29
  getRedirectCount(): number,
30
- getStartedAt(): number,
30
+ getStartedAt(): string,
31
31
  getStatus(): string,
32
32
  getSuccessCount(): number,
33
33
  getUrlCount(): number,
34
34
  setBaseURL(baseURL: string): void,
35
35
  setDuration(duration: number): void,
36
- setEndedAt(endTime: number): void,
36
+ setEndedAt(endTime: string): void,
37
37
  setFailedCount(failedCount: number): void,
38
38
  setHasCustomHeaders(hasCustomHeaders: boolean): void,
39
39
  setHasCustomImportJs(hasCustomImportJs: boolean): void,
@@ -16,7 +16,7 @@ import type {
16
16
 
17
17
  export interface LatestAudit extends BaseModel {
18
18
  getAudit(): Promise<Audit>
19
- getAuditedAt(): number;
19
+ getAuditedAt(): string;
20
20
  getAuditId(): object;
21
21
  getAuditResult(): object;
22
22
  getAuditType(): string;
@@ -48,13 +48,15 @@ class SiteCollection extends BaseCollection {
48
48
 
49
49
  const sitesMap = new Map(sites.map((site) => [site.getId(), site]));
50
50
  const orderedSites = [];
51
+ const cacheKey = `getLatestAuditByAuditType:["${auditType}"]`;
52
+ // getLatestAuditByAuditType:["cwv"]
51
53
 
52
54
  // First, append sites with a latest audit in the sorted order
53
55
  latestAudits.forEach((audit) => {
54
56
  const site = sitesMap.get(audit.getSiteId());
55
57
  if (site) {
56
58
  // eslint-disable-next-line no-underscore-dangle
57
- site._accessorCache['getLatestAuditByAuditType:_'] = audit;
59
+ site._accessorCache[cacheKey] = audit;
58
60
  orderedSites.push(site);
59
61
  sitesMap.delete(site.getId()); // Remove the site from the map to avoid adding it again
60
62
  }
@@ -63,7 +65,7 @@ class SiteCollection extends BaseCollection {
63
65
  // Then, append the remaining sites (without a latest audit)
64
66
  sitesMap.forEach((site) => {
65
67
  // eslint-disable-next-line no-underscore-dangle,no-param-reassign
66
- site._accessorCache['getLatestAuditByAuditType:_'] = null;
68
+ site._accessorCache[cacheKey] = null;
67
69
  orderedSites.push(site);
68
70
  });
69
71
 
@@ -22,7 +22,7 @@ export interface SiteTopPage extends BaseModel {
22
22
  getTraffic(): number;
23
23
  getUrl(): string;
24
24
  setGeo(geo: string): SiteTopPage;
25
- setImportedAt(importedAt: number): SiteTopPage;
25
+ setImportedAt(importedAt: string): SiteTopPage;
26
26
  setSiteId(siteId: string): SiteTopPage;
27
27
  setSource(source: string): SiteTopPage;
28
28
  setTopKeyword(topKeyword: string): SiteTopPage;