@betterview/integration-toolkit 7.5.6 → 7.5.8

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 (62) hide show
  1. package/lib/TestHarness/index.d.ts +3 -1
  2. package/lib/TestHarness/index.d.ts.map +1 -1
  3. package/lib/TestHarness/index.js +9 -0
  4. package/lib/TestHarness/index.js.map +1 -1
  5. package/lib/classes/TimelineIntegration.d.ts +15 -0
  6. package/lib/classes/TimelineIntegration.d.ts.map +1 -0
  7. package/lib/classes/TimelineIntegration.js +127 -0
  8. package/lib/classes/TimelineIntegration.js.map +1 -0
  9. package/lib/classes/index.d.ts +2 -0
  10. package/lib/classes/index.d.ts.map +1 -0
  11. package/lib/classes/index.js +18 -0
  12. package/lib/classes/index.js.map +1 -0
  13. package/lib/types/Enrichment.d.ts +79 -26
  14. package/lib/types/Enrichment.d.ts.map +1 -1
  15. package/lib/types/IPartnerDataSchema.d.ts +4 -10
  16. package/lib/types/IPartnerDataSchema.d.ts.map +1 -1
  17. package/lib/types/IPartnerDataSchema.js +0 -10
  18. package/lib/types/IPartnerDataSchema.js.map +1 -1
  19. package/lib/types/Integration.d.ts.map +1 -1
  20. package/lib/types/Integration.js +5 -1
  21. package/lib/types/Integration.js.map +1 -1
  22. package/lib/types/formatters/functions/arrayToString.d.ts +7 -0
  23. package/lib/types/formatters/functions/arrayToString.d.ts.map +1 -0
  24. package/lib/types/formatters/functions/arrayToString.js +7 -0
  25. package/lib/types/formatters/functions/arrayToString.js.map +1 -0
  26. package/lib/types/formatters/functions/capitalize.d.ts +6 -0
  27. package/lib/types/formatters/functions/capitalize.d.ts.map +1 -0
  28. package/lib/types/formatters/functions/capitalize.js +11 -0
  29. package/lib/types/formatters/functions/capitalize.js.map +1 -0
  30. package/lib/types/formatters/functions/date.d.ts +4 -0
  31. package/lib/types/formatters/functions/date.d.ts.map +1 -0
  32. package/lib/types/formatters/functions/date.js +15 -0
  33. package/lib/types/formatters/functions/date.js.map +1 -0
  34. package/lib/types/formatters/functions/decimalToPercentage.d.ts +4 -0
  35. package/lib/types/formatters/functions/decimalToPercentage.d.ts.map +1 -0
  36. package/lib/types/formatters/functions/decimalToPercentage.js +16 -0
  37. package/lib/types/formatters/functions/decimalToPercentage.js.map +1 -0
  38. package/lib/types/formatters/functions/index.d.ts +8 -0
  39. package/lib/types/formatters/functions/index.d.ts.map +1 -0
  40. package/lib/types/formatters/functions/index.js +19 -0
  41. package/lib/types/formatters/functions/index.js.map +1 -0
  42. package/lib/types/formatters/functions/numberToString.d.ts +4 -0
  43. package/lib/types/formatters/functions/numberToString.d.ts.map +1 -0
  44. package/lib/types/formatters/functions/numberToString.js +32 -0
  45. package/lib/types/formatters/functions/numberToString.js.map +1 -0
  46. package/lib/types/formatters/functions/scoreLetterToLowMedHigh.d.ts +4 -0
  47. package/lib/types/formatters/functions/scoreLetterToLowMedHigh.d.ts.map +1 -0
  48. package/lib/types/formatters/functions/scoreLetterToLowMedHigh.js +22 -0
  49. package/lib/types/formatters/functions/scoreLetterToLowMedHigh.js.map +1 -0
  50. package/lib/types/formatters/index.d.ts +3 -0
  51. package/lib/types/formatters/index.d.ts.map +1 -0
  52. package/lib/types/formatters/index.js +19 -0
  53. package/lib/types/formatters/index.js.map +1 -0
  54. package/lib/types/formatters/types/index.d.ts +39 -0
  55. package/lib/types/formatters/types/index.d.ts.map +1 -0
  56. package/lib/types/formatters/types/index.js +30 -0
  57. package/lib/types/formatters/types/index.js.map +1 -0
  58. package/lib/types/index.d.ts +1 -0
  59. package/lib/types/index.d.ts.map +1 -1
  60. package/lib/types/index.js +1 -0
  61. package/lib/types/index.js.map +1 -1
  62. package/package.json +4 -1
@@ -1,9 +1,11 @@
1
- import { Enrichment, IEnrichmentIntegrationRequestData } from '../types';
1
+ import { Enrichment, IEnrichmentGetTimelineMarkerDetailsRequest, IEnrichmentGetTimelineMarkerDetailsResponse, IEnrichmentIntegrationRequestData } from '../types';
2
2
  export default class TestHarness {
3
3
  integration: Enrichment;
4
4
  requestData: IEnrichmentIntegrationRequestData | undefined;
5
+ timelineMarkerData: IEnrichmentGetTimelineMarkerDetailsRequest;
5
6
  constructor(integration: Enrichment, requestData?: IEnrichmentIntegrationRequestData);
6
7
  runGetData(): Promise<Record<string, any> | undefined>;
8
+ runGetTimelineMarkerDetails(): IEnrichmentGetTimelineMarkerDetailsResponse | undefined;
7
9
  setMockRequestData(): void;
8
10
  }
9
11
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/TestHarness/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,iCAAiC,EAAE,MAAM,UAAU,CAAC;AAGzE,MAAM,CAAC,OAAO,OAAO,WAAW;IACvB,WAAW,EAAE,UAAU,CAAC;IACxB,WAAW,EAAE,iCAAiC,GAAG,SAAS,CAAC;gBAEtD,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,iCAAiC;IAKvE,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC;IAU5D,kBAAkB;CAa1B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/TestHarness/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,0CAA0C,EAC1C,2CAA2C,EAC3C,iCAAiC,EAElC,MAAM,UAAU,CAAC;AAGlB,MAAM,CAAC,OAAO,OAAO,WAAW;IACvB,WAAW,EAAE,UAAU,CAAC;IACxB,WAAW,EAAE,iCAAiC,GAAG,SAAS,CAAC;IAC3D,kBAAkB,EAAE,0CAA0C,CAAC;gBAE1D,WAAW,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,iCAAiC;IAKvE,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC;IAU5D,2BAA2B,IAAI,2CAA2C,GAAG,SAAS;IAStF,kBAAkB;CAa1B"}
@@ -2,6 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const utils_1 = require("../utils");
4
4
  class TestHarness {
5
+ integration;
6
+ requestData;
7
+ timelineMarkerData;
5
8
  constructor(integration, requestData) {
6
9
  this.integration = integration;
7
10
  this.requestData = requestData;
@@ -15,6 +18,12 @@ class TestHarness {
15
18
  console.log(`Result:`, (0, utils_1.jsonLog)(result));
16
19
  return result;
17
20
  }
21
+ runGetTimelineMarkerDetails() {
22
+ console.log('Timeline marker data set to: ', (0, utils_1.jsonLog)(this.timelineMarkerData));
23
+ const result = this.integration.getTimelineMarkerDetails?.(this.timelineMarkerData);
24
+ console.log(`Timeline marker Result:`, (0, utils_1.jsonLog)(result));
25
+ return result;
26
+ }
18
27
  setMockRequestData() {
19
28
  this.requestData = {
20
29
  full_address: '100 Pringle Ave. Walnut Creek, CA 94596',
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/TestHarness/index.ts"],"names":[],"mappings":";;AACA,oCAAmC;AAEnC,MAAqB,WAAW;IAI9B,YAAY,WAAuB,EAAE,WAA+C;QAClF,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC;SAC3B;QACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,IAAA,eAAO,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,WAAY,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAA,eAAO,EAAC,MAAM,CAAC,CAAC,CAAC;QACxC,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,kBAAkB;QACvB,IAAI,CAAC,WAAW,GAAG;YACjB,YAAY,EAAE,yCAAyC;YACvD,MAAM,EAAE,kBAAkB;YAC1B,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,OAAO;YACZ,KAAK,EAAE,IAAI;YACX,UAAU,EAAE,WAAW;YACvB,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,iBAAiB;YAC3B,SAAS,EAAE,CAAC,gBAAgB;SAC7B,CAAC;IACJ,CAAC;CACF;AAhCD,8BAgCC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/TestHarness/index.ts"],"names":[],"mappings":";;AAOA,oCAAmC;AAEnC,MAAqB,WAAW;IACvB,WAAW,CAAa;IACxB,WAAW,CAAgD;IAC3D,kBAAkB,CAA6C;IAEtE,YAAY,WAAuB,EAAE,WAA+C;QAClF,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;YACrB,IAAI,CAAC,kBAAkB,EAAE,CAAC;SAC3B;QACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,IAAA,eAAO,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC,IAAI,CAAC,WAAY,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAA,eAAO,EAAC,MAAM,CAAC,CAAC,CAAC;QACxC,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,2BAA2B;QAChC,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,IAAA,eAAO,EAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;QAC/E,MAAM,MAAM,GAAI,IAAI,CAAC,WAA+C,CAAC,wBAAwB,EAAE,CAC7F,IAAI,CAAC,kBAAmB,CACzB,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,IAAA,eAAO,EAAC,MAAM,CAAC,CAAC,CAAC;QACxD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,kBAAkB;QACvB,IAAI,CAAC,WAAW,GAAG;YACjB,YAAY,EAAE,yCAAyC;YACvD,MAAM,EAAE,kBAAkB;YAC1B,IAAI,EAAE,cAAc;YACpB,GAAG,EAAE,OAAO;YACZ,KAAK,EAAE,IAAI;YACX,UAAU,EAAE,WAAW;YACvB,WAAW,EAAE,UAAU;YACvB,QAAQ,EAAE,iBAAiB;YAC3B,SAAS,EAAE,CAAC,gBAAgB;SAC7B,CAAC;IACJ,CAAC;CACF;AA1CD,8BA0CC"}
@@ -0,0 +1,15 @@
1
+ import { Span } from '@opentelemetry/api';
2
+ import { EnrichmentTimelineMarker, EnrichmentTimelineMarkerIcon, EnrichmentTimelineMarkerMeta, EnrichmentTimelineTemporalData, Formatter, IDataSchemaField, IEnrichmentGetTimelineMarkerDetailsRequest, IEnrichmentGetTimelineMarkerDetailsResponse, Integration, TimelineEnrichment } from '../types';
3
+ /**
4
+ * Base class for integrations that enrich data with timeline markers.
5
+ */
6
+ export declare class TimelineIntegration extends Integration implements TimelineEnrichment {
7
+ formatters: Record<string, Formatter>;
8
+ getTimelineMarkerDetails(requestData: IEnrichmentGetTimelineMarkerDetailsRequest, tracingSpan?: Span): IEnrichmentGetTimelineMarkerDetailsResponse;
9
+ getIcon(e?: Record<string, any>): EnrichmentTimelineMarkerIcon;
10
+ processFields(fields: IDataSchemaField[], contextData: Record<string, any>, tracingSpan?: Span): EnrichmentTimelineTemporalData<Record<string, import("../types").EnrichmentTimelineMarkerValue<string | number | string[] | null | undefined, "string" | "number" | "boolean" | "object" | "date" | "stringArray" | "objectArray" | "wkt" | "geojson" | "imgSrc" | "downloadSrc" | "coordinates" | "coordinatesLatLngCSV" | "coordinatesLngLatCSV" | "imageUrlList" | "temporalObjectArray" | "imageObjectArray">>>[];
11
+ groupTimelineByDate(timelineMarkers: EnrichmentTimelineTemporalData[], meta: EnrichmentTimelineMarkerMeta): EnrichmentTimelineMarker[];
12
+ createValues(fields: IDataSchemaField[] | undefined, temporalData: Record<string, any> | undefined, tracingSpan?: Span): Record<string, any>;
13
+ warnNotImplemented(type: string, tracingSpan?: Span): void;
14
+ }
15
+ //# sourceMappingURL=TimelineIntegration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimelineIntegration.d.ts","sourceRoot":"","sources":["../../src/classes/TimelineIntegration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAG1C,OAAO,EACL,wBAAwB,EACxB,4BAA4B,EAC5B,4BAA4B,EAC5B,8BAA8B,EAC9B,SAAS,EAET,gBAAgB,EAChB,0CAA0C,EAC1C,2CAA2C,EAC3C,WAAW,EACX,kBAAkB,EACnB,MAAM,UAAU,CAAC;AAElB;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,WAAY,YAAW,kBAAkB;IACzE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAsB;IAE3D,wBAAwB,CAC7B,WAAW,EAAE,0CAA0C,EACvD,WAAW,CAAC,EAAE,IAAI,GACjB,2CAA2C;IA0BvC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,4BAA4B;IAQ9D,aAAa,CAAC,MAAM,EAAE,gBAAgB,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,EAAE,IAAI;IA+BrG,mBAAmB,CACjB,eAAe,EAAE,8BAA8B,EAAE,EACjD,IAAI,EAAE,4BAA4B,GACjC,wBAAwB,EAAE;IA4B7B,YAAY,CACV,MAAM,EAAE,gBAAgB,EAAE,GAAG,SAAS,EACtC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EAC7C,WAAW,CAAC,EAAE,IAAI;IA+BpB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,IAAI;CAGpD"}
@@ -0,0 +1,127 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.TimelineIntegration = void 0;
7
+ const get_1 = __importDefault(require("lodash/get"));
8
+ const moment_1 = __importDefault(require("moment"));
9
+ const types_1 = require("../types");
10
+ /**
11
+ * Base class for integrations that enrich data with timeline markers.
12
+ */
13
+ class TimelineIntegration extends types_1.Integration {
14
+ formatters = types_1.FormatterFunctions;
15
+ getTimelineMarkerDetails(requestData, tracingSpan) {
16
+ const { data, markerType, offeringId, schema, version } = requestData;
17
+ let timelineMarkerData = [];
18
+ try {
19
+ timelineMarkerData = this.processFields(schema.fields, data, tracingSpan);
20
+ }
21
+ catch (err) {
22
+ tracingSpan?.recordException(err);
23
+ }
24
+ return {
25
+ markerType,
26
+ name: schema.name,
27
+ offering: schema.offering,
28
+ offeringId,
29
+ partner: schema.partner,
30
+ timelineMarkers: this.groupTimelineByDate(timelineMarkerData, {
31
+ name: schema.name,
32
+ offering: schema.offering,
33
+ offeringId,
34
+ partner: schema.partner
35
+ }),
36
+ version
37
+ };
38
+ }
39
+ getIcon(e) {
40
+ return {
41
+ prefix: '',
42
+ iconName: '',
43
+ color: ''
44
+ };
45
+ }
46
+ processFields(fields, contextData, tracingSpan) {
47
+ const timelineMarkerData = [];
48
+ for (const field of fields) {
49
+ const currentData = field.jsonPath === '.' ? contextData : (0, get_1.default)(contextData, field.jsonPath);
50
+ if (!currentData)
51
+ continue;
52
+ const dataArray = !Array.isArray(currentData) ? [currentData] : currentData;
53
+ for (const d of dataArray) {
54
+ const date = (0, get_1.default)(d, field.temporalObjectKey || '', null);
55
+ if (!(0, moment_1.default)(date).isValid())
56
+ continue;
57
+ const values = this.createValues(field.fields, d, tracingSpan);
58
+ const marker = {
59
+ title: field.title,
60
+ description: field.description,
61
+ icon: this.getIcon(d),
62
+ date,
63
+ popoverData: values,
64
+ tooltipData: {}
65
+ };
66
+ timelineMarkerData.push(marker);
67
+ }
68
+ }
69
+ return timelineMarkerData;
70
+ }
71
+ groupTimelineByDate(timelineMarkers, meta) {
72
+ const grouped = {};
73
+ const timelineData = [];
74
+ for (const marker of timelineMarkers) {
75
+ const date = new Date(marker.date);
76
+ const yearMonthKey = `${date.getFullYear()}-${String(date.getMonth() + 1).padStart(2, '0')}`; // Month is 0-indexed, add 1 to normalize
77
+ if (!grouped[yearMonthKey])
78
+ grouped[yearMonthKey] = [];
79
+ grouped[yearMonthKey].push(marker);
80
+ }
81
+ for (const markerData of Object.values(grouped)) {
82
+ const earliestMarker = markerData.sort((a, b) => (0, moment_1.default)(a.date).diff(b.date))?.[0];
83
+ if ((0, moment_1.default)(earliestMarker.date).isValid()) {
84
+ const temporalMarker = {
85
+ ...meta,
86
+ date: earliestMarker.date,
87
+ icon: earliestMarker.icon,
88
+ data: markerData.sort((a, b) => (0, moment_1.default)(a.date).diff(b.date))
89
+ };
90
+ timelineData.push(temporalMarker);
91
+ }
92
+ }
93
+ return timelineData.sort((a, b) => (0, moment_1.default)(a.date).diff(b.date));
94
+ }
95
+ createValues(fields, temporalData, tracingSpan) {
96
+ return (fields ?? []).reduce((acc, field) => {
97
+ // Handle nested fields recursively
98
+ if (field.fields && field.fields.length > 0) {
99
+ const nestedValues = this.createValues(field.fields, (0, get_1.default)(temporalData, field.jsonPath));
100
+ acc[field.jsonPath.replaceAll('.', '_')] = nestedValues;
101
+ return acc;
102
+ }
103
+ let value = (0, get_1.default)(temporalData, field.jsonPath, null);
104
+ const formatter = this.formatters?.[field.formatter ?? ''];
105
+ if (formatter) {
106
+ value = formatter({ data: value, options: field.formatOptions, temporalData });
107
+ }
108
+ else if (field.formatter) {
109
+ this.warnNotImplemented(field.formatter, tracingSpan);
110
+ }
111
+ const obj = {
112
+ jsonPath: field.jsonPath,
113
+ title: field.title,
114
+ description: field.description,
115
+ dataType: field.data_type,
116
+ value
117
+ };
118
+ acc[field.jsonPath.replaceAll('.', '_')] = obj;
119
+ return acc;
120
+ }, {});
121
+ }
122
+ warnNotImplemented(type, tracingSpan) {
123
+ tracingSpan?.recordException(`Formatter ${type} not implemented`);
124
+ }
125
+ }
126
+ exports.TimelineIntegration = TimelineIntegration;
127
+ //# sourceMappingURL=TimelineIntegration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimelineIntegration.js","sourceRoot":"","sources":["../../src/classes/TimelineIntegration.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export * from './TimelineIntegration';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/classes/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./TimelineIntegration"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/classes/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wDAAsC"}
@@ -1,4 +1,31 @@
1
- import { IPartnerDataSchema } from './IPartnerDataSchema';
1
+ import { Span } from '@opentelemetry/api';
2
+ import { IDataSchemaField, IPartnerDataSchema } from './IPartnerDataSchema';
3
+ export interface TimelineEnrichment {
4
+ /**
5
+ * Constructs the timelineMarkers.
6
+ */
7
+ getTimelineMarkerDetails?(requestData: IEnrichmentGetTimelineMarkerDetailsRequest, tracingSpan?: Span): IEnrichmentGetTimelineMarkerDetailsResponse;
8
+ /**
9
+ * Returns the icon for the timeline marker.
10
+ */
11
+ getIcon(e?: Record<string, any>): EnrichmentTimelineMarkerIcon;
12
+ /**
13
+ * Processes the schema fields and returns the timeline data.
14
+ */
15
+ processFields(fields: IDataSchemaField[], contextData: Record<string, any>, tracingSpan?: Span): EnrichmentTimelineTemporalData[];
16
+ /**
17
+ * Groups the timeline data by date.
18
+ */
19
+ groupTimelineByDate(timelineMarkers: EnrichmentTimelineTemporalData[], meta: EnrichmentTimelineMarkerMeta): EnrichmentTimelineMarker[];
20
+ /**
21
+ * Creates the popoverData values for the timeline marker.
22
+ */
23
+ createValues(fields: IDataSchemaField[] | undefined, temporalData: Record<string, any> | undefined, tracingSpan?: Span): Record<string, any>;
24
+ /**
25
+ * Warns that a formatter is not implemented.
26
+ */
27
+ warnNotImplemented(type: string, tracingSpan?: Span): void;
28
+ }
2
29
  export interface Enrichment {
3
30
  /**
4
31
  * Pulls data from the vendor and returns the data graph in JSON format.
@@ -12,7 +39,6 @@ export interface Enrichment {
12
39
  title?: string;
13
40
  description?: string;
14
41
  }[]>;
15
- getTimelineMarkerDetails?(requestData: IEnrichmentGetTimelineMarkerDetailsRequest): IEnrichmentGetTimelineMarkerDetailsResponse;
16
42
  /**
17
43
  * Pulls data from the vendor and returns the data graph in JSON format.
18
44
  * Deprecated as of manifest version 2. Please use `getEnrichmentData`.
@@ -21,37 +47,64 @@ export interface Enrichment {
21
47
  */
22
48
  getData?(requestData: IEnrichmentIntegrationRequestData): Promise<EnrichmentIntegrationResult>;
23
49
  }
24
- export interface IEnrichmentGetPhotoDetailsRequest {
25
- credentials?: Record<any, string>;
26
- key: string;
27
- data: Record<string, any>;
28
- width?: string;
29
- height?: string;
30
- }
50
+ export declare type EnrichmentTimelineMarkerMeta = {
51
+ name: string;
52
+ offering: string;
53
+ offeringId: string;
54
+ partner: string;
55
+ };
56
+ export declare type EnrichmentTimelineMarkerValue<T = string | number | null | undefined | string[], D = IDataSchemaField['data_type']> = {
57
+ jsonPath: string;
58
+ title: string;
59
+ description: string;
60
+ dataType: D;
61
+ value: T;
62
+ };
63
+ export declare type EnrichmentTimelineMarkerIcon = {
64
+ color: string;
65
+ iconName: string;
66
+ prefix: string;
67
+ };
68
+ export declare type EnrichmentTimelineTemporalData<T = Record<string, EnrichmentTimelineMarkerValue>> = {
69
+ date: string;
70
+ description: string;
71
+ icon: EnrichmentTimelineMarkerIcon;
72
+ popoverData: T;
73
+ title: string;
74
+ tooltipData: Record<string, string | number | string[] | number[]>;
75
+ };
76
+ export declare type EnrichmentTimelineMarker<T = Record<string, EnrichmentTimelineMarkerValue>> = {
77
+ data: EnrichmentTimelineTemporalData<T>[];
78
+ date: string;
79
+ icon: EnrichmentTimelineMarkerIcon;
80
+ name: string;
81
+ offering: string;
82
+ offeringId: string;
83
+ partner: string;
84
+ };
31
85
  export interface IEnrichmentGetTimelineMarkerDetailsRequest {
32
86
  credentials?: Record<any, string>;
33
- markerType?: string;
34
87
  data: Record<string, any>;
88
+ markerType: string;
89
+ offeringId: string;
35
90
  schema: IPartnerDataSchema;
91
+ version: string;
36
92
  }
37
- export declare type EnrichmentTimelineMarkerValue = {
38
- title: string;
39
- description: string;
40
- dataType: string;
41
- value: string | number | null | undefined | string[];
42
- };
43
- export interface IEnrichmentGetTimelineMarkerDetailsResponse {
93
+ export interface IEnrichmentGetTimelineMarkerDetailsResponse<T = Record<string, EnrichmentTimelineMarkerValue>> {
94
+ markerType: string;
44
95
  name: string;
45
- partner: string;
46
96
  offering: string;
47
- timelineMarkers: {
48
- title: string;
49
- description: string;
50
- icon: string;
51
- date: string;
52
- popoverData: EnrichmentTimelineMarkerValue[];
53
- tooltipData: Record<string, string | number | string[] | number[]>;
54
- }[];
97
+ offeringId: string;
98
+ partner: string;
99
+ timelineMarkers: EnrichmentTimelineMarker<T>[];
100
+ version: string;
101
+ }
102
+ export interface IEnrichmentGetPhotoDetailsRequest {
103
+ credentials?: Record<any, string>;
104
+ key: string;
105
+ data: Record<string, any>;
106
+ width?: string;
107
+ height?: string;
55
108
  }
56
109
  export interface IEnrichmentIntegrationRequestData {
57
110
  credentials?: Record<any, string>;
@@ -1 +1 @@
1
- {"version":3,"file":"Enrichment.d.ts","sourceRoot":"","sources":["../../src/types/Enrichment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Enrichment.d.ts","sourceRoot":"","sources":["../../src/types/Enrichment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE5E,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,wBAAwB,CAAC,CACvB,WAAW,EAAE,0CAA0C,EACvD,WAAW,CAAC,EAAE,IAAI,GACjB,2CAA2C,CAAC;IAE/C;;OAEG;IACH,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,4BAA4B,CAAC;IAE/D;;OAEG;IACH,aAAa,CACX,MAAM,EAAE,gBAAgB,EAAE,EAC1B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAChC,WAAW,CAAC,EAAE,IAAI,GACjB,8BAA8B,EAAE,CAAC;IAEpC;;OAEG;IACH,mBAAmB,CACjB,eAAe,EAAE,8BAA8B,EAAE,EACjD,IAAI,EAAE,4BAA4B,GACjC,wBAAwB,EAAE,CAAC;IAE9B;;OAEG;IACH,YAAY,CACV,MAAM,EAAE,gBAAgB,EAAE,GAAG,SAAS,EACtC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS,EAC7C,WAAW,CAAC,EAAE,IAAI,GACjB,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAEvB;;OAEG;IACH,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CAC5D;AAED,MAAM,WAAW,UAAU;IACzB;;OAEG;IACH,iBAAiB,CAAC,WAAW,EAAE,iCAAiC,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAExG;;OAEG;IACH,yBAAyB,CAAC,CACxB,WAAW,EAAE,iCAAiC,GAC7C,OAAO,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAC;IAEpE;;;;;OAKG;IACH,OAAO,CAAC,CAAC,WAAW,EAAE,iCAAiC,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;CAChG;AAED,oBAAY,4BAA4B,GAAG;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,oBAAY,6BAA6B,CACvC,CAAC,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,MAAM,EAAE,EACjD,CAAC,GAAG,gBAAgB,CAAC,WAAW,CAAC,IAC/B;IACF,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,CAAC,CAAC;IACZ,KAAK,EAAE,CAAC,CAAC;CACV,CAAC;AAEF,oBAAY,4BAA4B,GAAG;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,oBAAY,8BAA8B,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,IAAI;IAC9F,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,4BAA4B,CAAC;IACnC,WAAW,EAAE,CAAC,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;CACpE,CAAC;AAEF,oBAAY,wBAAwB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC,IAAI;IACxF,IAAI,EAAE,8BAA8B,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,4BAA4B,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,WAAW,0CAA0C;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAClC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,2CAA2C,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,6BAA6B,CAAC;IAC5G,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,wBAAwB,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/C,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iCAAiC;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iCAAiC;IAChD,WAAW,CAAC,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,oBAAY,2BAA2B,GAAG;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE;QACN,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC3B,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC3B,CAAC;CACH,CAAC"}
@@ -1,11 +1,13 @@
1
+ import { FormatOptions, Formatters } from './formatters';
1
2
  export interface IDataSchemaField {
2
3
  description: string;
3
4
  formatter?: Formatters;
5
+ formatOptions?: FormatOptions;
4
6
  jsonPath: string;
5
7
  required?: boolean;
6
- sample?: string | number | boolean;
8
+ sample?: string | number | boolean | string[];
7
9
  title: string;
8
- data_type: 'string' | 'number' | 'date' | 'stringArray' | 'objectArray' | 'boolean' | 'wkt' | 'geojson' | 'imgSrc' | 'downloadSrc' | 'coordinates' | 'coordinatesLatLngCSV' | 'coordinatesLngLatCSV' | 'imageUrlList' | 'temporalObjectArray' | 'imageObjectArray';
10
+ data_type: 'string' | 'number' | 'date' | 'stringArray' | 'objectArray' | 'object' | 'boolean' | 'wkt' | 'geojson' | 'imgSrc' | 'downloadSrc' | 'coordinates' | 'coordinatesLatLngCSV' | 'coordinatesLngLatCSV' | 'imageUrlList' | 'temporalObjectArray' | 'imageObjectArray';
9
11
  fields?: IDataSchemaField[];
10
12
  imageObjectKey?: string;
11
13
  temporalObjectKey?: string;
@@ -21,12 +23,4 @@ export interface IPartnerDataSchema {
21
23
  export interface IPartnerDataSchemas {
22
24
  [name: string]: IPartnerDataSchema;
23
25
  }
24
- export declare enum Formatters {
25
- numberWithCommas = "numberWithCommas",
26
- currencyWithCommas = "currencyWithCommas",
27
- scoreLetterToLowMedHigh = "scoreLetterToLowMedHigh",
28
- roundTwoDecimalPlaces = "roundTwoDecimalPlaces",
29
- decimalToPercentage = "decimalToPercentage",
30
- roundAndFormatWithCommas = "roundAndFormatWithCommasFn"
31
- }
32
26
  //# sourceMappingURL=IPartnerDataSchema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IPartnerDataSchema.d.ts","sourceRoot":"","sources":["../../src/types/IPartnerDataSchema.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EACL,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,aAAa,GACb,aAAa,GACb,SAAS,GACT,KAAK,GACL,SAAS,GACT,QAAQ,GACR,aAAa,GACb,aAAa,GACb,sBAAsB,GACtB,sBAAsB,GACtB,cAAc,GACd,qBAAqB,GACrB,kBAAkB,CAAC;IACvB,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B;AACD,MAAM,WAAW,mBAAmB;IAClC,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAAC;CACpC;AAED,oBAAY,UAAU;IACpB,gBAAgB,qBAAqB;IACrC,kBAAkB,uBAAuB;IACzC,uBAAuB,4BAA4B;IACnD,qBAAqB,0BAA0B;IAC/C,mBAAmB,wBAAwB;IAC3C,wBAAwB,+BAA+B;CACxD"}
1
+ {"version":3,"file":"IPartnerDataSchema.d.ts","sourceRoot":"","sources":["../../src/types/IPartnerDataSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAEzD,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,EAAE,CAAC;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EACL,QAAQ,GACR,QAAQ,GACR,MAAM,GACN,aAAa,GACb,aAAa,GACb,QAAQ,GACR,SAAS,GACT,KAAK,GACL,SAAS,GACT,QAAQ,GACR,aAAa,GACb,aAAa,GACb,sBAAsB,GACtB,sBAAsB,GACtB,cAAc,GACd,qBAAqB,GACrB,kBAAkB,CAAC;IACvB,MAAM,CAAC,EAAE,gBAAgB,EAAE,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,gBAAgB,EAAE,CAAC;CAC5B;AACD,MAAM,WAAW,mBAAmB;IAClC,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CAAC;CACpC"}
@@ -1,13 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Formatters = void 0;
4
- var Formatters;
5
- (function (Formatters) {
6
- Formatters["numberWithCommas"] = "numberWithCommas";
7
- Formatters["currencyWithCommas"] = "currencyWithCommas";
8
- Formatters["scoreLetterToLowMedHigh"] = "scoreLetterToLowMedHigh";
9
- Formatters["roundTwoDecimalPlaces"] = "roundTwoDecimalPlaces";
10
- Formatters["decimalToPercentage"] = "decimalToPercentage";
11
- Formatters["roundAndFormatWithCommas"] = "roundAndFormatWithCommasFn";
12
- })(Formatters = exports.Formatters || (exports.Formatters = {}));
13
3
  //# sourceMappingURL=IPartnerDataSchema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IPartnerDataSchema.js","sourceRoot":"","sources":["../../src/types/IPartnerDataSchema.ts"],"names":[],"mappings":";;;AAyCA,IAAY,UAOX;AAPD,WAAY,UAAU;IACpB,mDAAqC,CAAA;IACrC,uDAAyC,CAAA;IACzC,iEAAmD,CAAA;IACnD,6DAA+C,CAAA;IAC/C,yDAA2C,CAAA;IAC3C,qEAAuD,CAAA;AACzD,CAAC,EAPW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAOrB"}
1
+ {"version":3,"file":"IPartnerDataSchema.js","sourceRoot":"","sources":["../../src/types/IPartnerDataSchema.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"Integration.d.ts","sourceRoot":"","sources":["../../src/types/Integration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;AAElD,oBAAY,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;AAEvF;;GAEG;AACH,qBAAa,WAAW;IAKpB,SAAS,CAAC,WAAW,CAAC;IACtB,SAAS,CAAC,OAAO,CAAC;IAClB,SAAS,CAAC,OAAO,CAAC;IANpB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,QAAQ,CAAyC;gBAG7C,WAAW,CAAC,oCAAwB,EACpC,OAAO,CAAC,oCAAwB,EAChC,OAAO,CAAC,qBAAS;IAI7B;;;;OAIG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAK7G,SAAS,CAAC,eAAe,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAIjF,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,oBAAoB,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACrH,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAMtF,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,cAAc,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO;IAC7F,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;CAI7E"}
1
+ {"version":3,"file":"Integration.d.ts","sourceRoot":"","sources":["../../src/types/Integration.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;AAElD,oBAAY,OAAO,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;AAEvF;;GAEG;AAEH,qBAAa,WAAW;IAKpB,SAAS,CAAC,WAAW,CAAC;IACtB,SAAS,CAAC,OAAO,CAAC;IAClB,SAAS,CAAC,OAAO,CAAC;IANpB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,QAAQ,CAAyC;gBAG7C,WAAW,CAAC,oCAAwB,EACpC,OAAO,CAAC,oCAAwB,EAChC,OAAO,CAAC,qBAAS;IAI7B;;;;OAIG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAK7G,SAAS,CAAC,eAAe,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;IAIjF,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,oBAAoB,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IACrH,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAMtF,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,cAAc,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO;IAC7F,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO;CAI7E"}
@@ -6,11 +6,15 @@ const events_1 = require("events");
6
6
  * Base class for integrations. All integrations should default export a class that extends this class.
7
7
  */
8
8
  class Integration {
9
+ credentials;
10
+ options;
11
+ storage;
12
+ events;
13
+ commands = {};
9
14
  constructor(credentials, options, storage) {
10
15
  this.credentials = credentials;
11
16
  this.options = options;
12
17
  this.storage = storage;
13
- this.commands = {};
14
18
  this.events = new events_1.EventEmitter();
15
19
  }
16
20
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Integration.js","sourceRoot":"","sources":["../../src/types/Integration.ts"],"names":[],"mappings":";;;AAAA,mCAAsC;AAKtC;;GAEG;AACH,MAAa,WAAW;IAItB,YACY,WAAoC,EACpC,OAAgC,EAChC,OAAiB;QAFjB,gBAAW,GAAX,WAAW,CAAyB;QACpC,YAAO,GAAP,OAAO,CAAyB;QAChC,YAAO,GAAP,OAAO,CAAU;QALrB,aAAQ,GAAsC,EAAE,CAAC;QAOvD,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAY,EAAE,CAAC;IACnC,CAAC;IACD;;;;OAIG;IACI,KAAK,CAAC,IAAI;QACf,OAAO;IACT,CAAC;IAEM,KAAK,CAAC,OAAO,CAAmB,KAAa,EAAE,IAAQ,EAAE,OAAgC;QAC9F,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAES,eAAe,CAAmB,KAAa,EAAE,OAAsB;QAC/E,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;IACjC,CAAC;IAIS,EAAE,CAAC,SAA+B,EAAE,OAAiC;QAC7E,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAIM,IAAI,CAAC,SAA+B,EAAE,GAAG,IAAW;QACzD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC;IAC9C,CAAC;CACF;AAzCD,kCAyCC"}
1
+ {"version":3,"file":"Integration.js","sourceRoot":"","sources":["../../src/types/Integration.ts"],"names":[],"mappings":";;;AAAA,mCAAsC;AAKtC;;GAEG;AAEH,MAAa,WAAW;IAKV;IACA;IACA;IANJ,MAAM,CAAe;IACrB,QAAQ,GAAsC,EAAE,CAAC;IAEzD,YACY,WAAoC,EACpC,OAAgC,EAChC,OAAiB;QAFjB,gBAAW,GAAX,WAAW,CAAyB;QACpC,YAAO,GAAP,OAAO,CAAyB;QAChC,YAAO,GAAP,OAAO,CAAU;QAE3B,IAAI,CAAC,MAAM,GAAG,IAAI,qBAAY,EAAE,CAAC;IACnC,CAAC;IACD;;;;OAIG;IACI,KAAK,CAAC,IAAI;QACf,OAAO;IACT,CAAC;IAEM,KAAK,CAAC,OAAO,CAAmB,KAAa,EAAE,IAAQ,EAAE,OAAgC;QAC9F,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IAES,eAAe,CAAmB,KAAa,EAAE,OAAsB;QAC/E,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC;IACjC,CAAC;IAIS,EAAE,CAAC,SAA+B,EAAE,OAAiC;QAC7E,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAIM,IAAI,CAAC,SAA+B,EAAE,GAAG,IAAW;QACzD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,CAAC;IAC9C,CAAC;CACF;AAzCD,kCAyCC"}
@@ -0,0 +1,7 @@
1
+ import { IDataFormatterRequest } from '..';
2
+ export declare const arrayToString: ({ data, separator, emptyResponse }: IDataFormatterRequest<Record<string, any>> & {
3
+ data: string[];
4
+ separator: string;
5
+ }) => string;
6
+ export default arrayToString;
7
+ //# sourceMappingURL=arrayToString.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arrayToString.d.ts","sourceRoot":"","sources":["../../../../src/types/formatters/functions/arrayToString.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,IAAI,CAAC;AAE3C,eAAO,MAAM,aAAa;UAIS,MAAM,EAAE;eAAa,MAAM;YAAmD,CAAC;AAElH,eAAe,aAAa,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.arrayToString = void 0;
4
+ const arrayToString = ({ data, separator = ',', emptyResponse = '-' }) => data?.join(`${separator} `) ?? emptyResponse;
5
+ exports.arrayToString = arrayToString;
6
+ exports.default = exports.arrayToString;
7
+ //# sourceMappingURL=arrayToString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arrayToString.js","sourceRoot":"","sources":["../../../../src/types/formatters/functions/arrayToString.ts"],"names":[],"mappings":";;;AAEO,MAAM,aAAa,GAAG,CAAC,EAC5B,IAAI,EACJ,SAAS,GAAG,GAAG,EACf,aAAa,GAAG,GAAG,EAC2C,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,SAAS,GAAG,CAAC,IAAI,aAAa,CAAC;AAJrG,QAAA,aAAa,iBAIwF;AAElH,kBAAe,qBAAa,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { IDataFormatterRequest } from '..';
2
+ export declare const capitalize: ({ data, emptyResponse }: IDataFormatterRequest<Record<string, any>> & {
3
+ data: string;
4
+ }) => string;
5
+ export default capitalize;
6
+ //# sourceMappingURL=capitalize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capitalize.d.ts","sourceRoot":"","sources":["../../../../src/types/formatters/functions/capitalize.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,IAAI,CAAC;AAE3C,eAAO,MAAM,UAAU;UAAmE,MAAM;MAAK,MAGpG,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.capitalize = void 0;
4
+ const capitalize = ({ data, emptyResponse = '-' }) => {
5
+ if (!data)
6
+ return emptyResponse;
7
+ return data.charAt(0).toUpperCase() + data.slice(1);
8
+ };
9
+ exports.capitalize = capitalize;
10
+ exports.default = exports.capitalize;
11
+ //# sourceMappingURL=capitalize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capitalize.js","sourceRoot":"","sources":["../../../../src/types/formatters/functions/capitalize.ts"],"names":[],"mappings":";;;AAEO,MAAM,UAAU,GAAG,CAAC,EAAE,IAAI,EAAE,aAAa,GAAG,GAAG,EAA4C,EAAU,EAAE;IAC5G,IAAI,CAAC,IAAI;QAAE,OAAO,aAAa,CAAC;IAChC,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACtD,CAAC,CAAC;AAHW,QAAA,UAAU,cAGrB;AAEF,kBAAe,kBAAU,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { IDataFormatterRequest } from '..';
2
+ export declare const date: ({ data, emptyResponse, options }: IDataFormatterRequest) => string;
3
+ export default date;
4
+ //# sourceMappingURL=date.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date.d.ts","sourceRoot":"","sources":["../../../../src/types/formatters/functions/date.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,IAAI,CAAC;AAE3C,eAAO,MAAM,IAAI,qCAId,qBAAqB,KAAG,MAG1B,CAAC;AAEF,eAAe,IAAI,CAAC"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.date = void 0;
7
+ const moment_1 = __importDefault(require("moment"));
8
+ const date = ({ data, emptyResponse = '-', options = { dateFormat: 'MMM D, YYYY' } }) => {
9
+ if (!data || !(0, moment_1.default)(data).isValid())
10
+ return emptyResponse; // return the original string if it's empty
11
+ return (0, moment_1.default)(data).format(options.dateFormat);
12
+ };
13
+ exports.date = date;
14
+ exports.default = exports.date;
15
+ //# sourceMappingURL=date.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date.js","sourceRoot":"","sources":["../../../../src/types/formatters/functions/date.ts"],"names":[],"mappings":";;;;;;AAAA,oDAA4B;AAGrB,MAAM,IAAI,GAAG,CAAC,EACnB,IAAI,EACJ,aAAa,GAAG,GAAG,EACnB,OAAO,GAAG,EAAE,UAAU,EAAE,aAAa,EAAE,EACjB,EAAU,EAAE;IAClC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAA,gBAAM,EAAC,IAAc,CAAC,CAAC,OAAO,EAAE;QAAE,OAAO,aAAa,CAAC,CAAC,2CAA2C;IACjH,OAAO,IAAA,gBAAM,EAAC,IAAc,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAC3D,CAAC,CAAC;AAPW,QAAA,IAAI,QAOf;AAEF,kBAAe,YAAI,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { IDataFormatterRequest } from '..';
2
+ declare const decimalToPercentage: ({ data, emptyResponse }: IDataFormatterRequest) => string;
3
+ export default decimalToPercentage;
4
+ //# sourceMappingURL=decimalToPercentage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decimalToPercentage.d.ts","sourceRoot":"","sources":["../../../../src/types/formatters/functions/decimalToPercentage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,IAAI,CAAC;AAC3C,QAAA,MAAM,mBAAmB,4BAAmC,qBAAqB,KAAG,MAWnF,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const decimalToPercentage = ({ data, emptyResponse = '-' }) => {
4
+ if (!data && data !== 0) {
5
+ return emptyResponse;
6
+ }
7
+ if (typeof data !== 'number' && typeof data !== 'string')
8
+ return `${data}`;
9
+ if (isNaN(data))
10
+ return `${data}`;
11
+ const num = Number(data);
12
+ const strNum = `${(num * 100).toFixed(2)}%`;
13
+ return strNum;
14
+ };
15
+ exports.default = decimalToPercentage;
16
+ //# sourceMappingURL=decimalToPercentage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decimalToPercentage.js","sourceRoot":"","sources":["../../../../src/types/formatters/functions/decimalToPercentage.ts"],"names":[],"mappings":";;AACA,MAAM,mBAAmB,GAAG,CAAC,EAAE,IAAI,EAAE,aAAa,GAAG,GAAG,EAAyB,EAAU,EAAE;IAC3F,IAAI,CAAC,IAAI,IAAI,IAAI,KAAK,CAAC,EAAE;QACvB,OAAO,aAAa,CAAC;KACtB;IACD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,GAAG,IAAI,EAAE,CAAC;IAC3E,IAAI,KAAK,CAAC,IAAc,CAAC;QAAE,OAAO,GAAG,IAAI,EAAE,CAAC;IAE5C,MAAM,GAAG,GAAG,MAAM,CAAC,IAAc,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAE5C,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,kBAAe,mBAAmB,CAAC"}
@@ -0,0 +1,8 @@
1
+ import arrayToStringFn from '../functions/arrayToString';
2
+ import capitalizeFn from '../functions/capitalize';
3
+ import dateFn from '../functions/date';
4
+ import decimalToPercentage from './decimalToPercentage';
5
+ import numberToString from './numberToString';
6
+ import scoreLetterToLowMedHigh from './scoreLetterToLowMedHigh';
7
+ export { arrayToStringFn, capitalizeFn, dateFn, decimalToPercentage, numberToString, scoreLetterToLowMedHigh };
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/formatters/functions/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,4BAA4B,CAAC;AACzD,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,mBAAmB,MAAM,uBAAuB,CAAC;AACxD,OAAO,cAAc,MAAM,kBAAkB,CAAC;AAC9C,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAEhE,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,EAAE,mBAAmB,EAAE,cAAc,EAAE,uBAAuB,EAAE,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.scoreLetterToLowMedHigh = exports.numberToString = exports.decimalToPercentage = exports.dateFn = exports.capitalizeFn = exports.arrayToStringFn = void 0;
7
+ const arrayToString_1 = __importDefault(require("../functions/arrayToString"));
8
+ exports.arrayToStringFn = arrayToString_1.default;
9
+ const capitalize_1 = __importDefault(require("../functions/capitalize"));
10
+ exports.capitalizeFn = capitalize_1.default;
11
+ const date_1 = __importDefault(require("../functions/date"));
12
+ exports.dateFn = date_1.default;
13
+ const decimalToPercentage_1 = __importDefault(require("./decimalToPercentage"));
14
+ exports.decimalToPercentage = decimalToPercentage_1.default;
15
+ const numberToString_1 = __importDefault(require("./numberToString"));
16
+ exports.numberToString = numberToString_1.default;
17
+ const scoreLetterToLowMedHigh_1 = __importDefault(require("./scoreLetterToLowMedHigh"));
18
+ exports.scoreLetterToLowMedHigh = scoreLetterToLowMedHigh_1.default;
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/types/formatters/functions/index.ts"],"names":[],"mappings":";;;;;;AAAA,+EAAyD;AAOhD,0BAPF,uBAAe,CAOE;AANxB,yEAAmD;AAMzB,uBANnB,oBAAY,CAMmB;AALtC,6DAAuC;AAKC,iBALjC,cAAM,CAKiC;AAJ9C,gFAAwD;AAIR,8BAJzC,6BAAmB,CAIyC;AAHnE,sEAA8C;AAGuB,yBAH9D,wBAAc,CAG8D;AAFnF,wFAAgE;AAEqB,kCAF9E,iCAAuB,CAE8E"}
@@ -0,0 +1,4 @@
1
+ import { IDataFormatterRequest } from '..';
2
+ export declare const numberToString: ({ data, emptyResponse, options }: IDataFormatterRequest) => string;
3
+ export default numberToString;
4
+ //# sourceMappingURL=numberToString.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numberToString.d.ts","sourceRoot":"","sources":["../../../../src/types/formatters/functions/numberToString.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,IAAI,CAAC;AAE3C,eAAO,MAAM,cAAc,qCAA4C,qBAAqB,KAAG,MA0B9F,CAAC;AAEF,eAAe,cAAc,CAAC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.numberToString = void 0;
4
+ const numberToString = ({ data, emptyResponse = '-', options }) => {
5
+ if (typeof data !== 'number' && typeof data !== 'string')
6
+ return emptyResponse;
7
+ let num = Number(data);
8
+ if (isNaN(num))
9
+ return `${data}`;
10
+ const { prefix, round, suffix } = options ?? {};
11
+ if (round) {
12
+ num = typeof round === 'number' ? parseFloat(num.toFixed(round)) : Math.round(num);
13
+ }
14
+ let str = `${num}`;
15
+ if (options?.round) {
16
+ str = `${Math.round(num * 100) / 100}`;
17
+ }
18
+ if (options?.includeCommas) {
19
+ num = parseFloat(str);
20
+ str = num.toLocaleString('en-US');
21
+ }
22
+ if (prefix) {
23
+ str = `${prefix}${str}`;
24
+ }
25
+ if (suffix) {
26
+ str = `${str}${num === 1 ? suffix.single : suffix.multiple}`;
27
+ }
28
+ return str;
29
+ };
30
+ exports.numberToString = numberToString;
31
+ exports.default = exports.numberToString;
32
+ //# sourceMappingURL=numberToString.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"numberToString.js","sourceRoot":"","sources":["../../../../src/types/formatters/functions/numberToString.ts"],"names":[],"mappings":";;;AAEO,MAAM,cAAc,GAAG,CAAC,EAAE,IAAI,EAAE,aAAa,GAAG,GAAG,EAAE,OAAO,EAAyB,EAAU,EAAE;IACtG,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,aAAa,CAAC;IAC/E,IAAI,GAAG,GAAW,MAAM,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,KAAK,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,IAAI,EAAE,CAAC;IAEjC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;IAChD,IAAI,KAAK,EAAE;QACT,GAAG,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;KACpF;IAED,IAAI,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC;IACnB,IAAI,OAAO,EAAE,KAAK,EAAE;QAClB,GAAG,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC;KACxC;IACD,IAAI,OAAO,EAAE,aAAa,EAAE;QAC1B,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;QACtB,GAAG,GAAG,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;KACnC;IACD,IAAI,MAAM,EAAE;QACV,GAAG,GAAG,GAAG,MAAM,GAAG,GAAG,EAAE,CAAC;KACzB;IACD,IAAI,MAAM,EAAE;QACV,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;KAC9D;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AA1BW,QAAA,cAAc,kBA0BzB;AAEF,kBAAe,sBAAc,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { IDataFormatterRequest } from '..';
2
+ declare const scoreLetterToLowMedHigh: ({ data }: IDataFormatterRequest) => string;
3
+ export default scoreLetterToLowMedHigh;
4
+ //# sourceMappingURL=scoreLetterToLowMedHigh.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoreLetterToLowMedHigh.d.ts","sourceRoot":"","sources":["../../../../src/types/formatters/functions/scoreLetterToLowMedHigh.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,IAAI,CAAC;AAE3C,QAAA,MAAM,uBAAuB,aAAc,qBAAqB,KAAG,MAiBlE,CAAC;AAEF,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const scoreLetterToLowMedHigh = ({ data }) => {
4
+ let text = 'Low';
5
+ switch (data || 'A') {
6
+ case 'C':
7
+ text = 'Moderate';
8
+ break;
9
+ case 'D':
10
+ text = 'Moderate-High';
11
+ break;
12
+ case 'F':
13
+ text = 'High';
14
+ break;
15
+ default:
16
+ text = `Low`;
17
+ break;
18
+ }
19
+ return text;
20
+ };
21
+ exports.default = scoreLetterToLowMedHigh;
22
+ //# sourceMappingURL=scoreLetterToLowMedHigh.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoreLetterToLowMedHigh.js","sourceRoot":"","sources":["../../../../src/types/formatters/functions/scoreLetterToLowMedHigh.ts"],"names":[],"mappings":";;AAEA,MAAM,uBAAuB,GAAG,CAAC,EAAE,IAAI,EAAyB,EAAU,EAAE;IAC1E,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,QAAQ,IAAI,IAAI,GAAG,EAAE;QACnB,KAAK,GAAG;YACN,IAAI,GAAG,UAAU,CAAC;YAClB,MAAM;QACR,KAAK,GAAG;YACN,IAAI,GAAG,eAAe,CAAC;YACvB,MAAM;QACR,KAAK,GAAG;YACN,IAAI,GAAG,MAAM,CAAC;YACd,MAAM;QACR;YACE,IAAI,GAAG,KAAK,CAAC;YACb,MAAM;KACT;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,kBAAe,uBAAuB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './functions';
2
+ export * from './types';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/formatters/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./functions"), exports);
18
+ __exportStar(require("./types"), exports);
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/formatters/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA4B;AAC5B,0CAAwB"}
@@ -0,0 +1,39 @@
1
+ export declare enum Formatters {
2
+ scoreLetterToLowMedHigh = "scoreLetterToLowMedHigh",
3
+ decimalToPercentage = "decimalToPercentage",
4
+ numberToString = "numberToString",
5
+ capitalize = "capitalize",
6
+ arrayToString = "arrayToString",
7
+ date = "date"
8
+ }
9
+ export declare const FormatterFunctions: {
10
+ scoreLetterToLowMedHigh: ({ data }: IDataFormatterRequest<Record<string, any>>) => string;
11
+ decimalToPercentage: ({ data, emptyResponse }: IDataFormatterRequest<Record<string, any>>) => string;
12
+ numberToString: ({ data, emptyResponse, options }: IDataFormatterRequest<Record<string, any>>) => string;
13
+ capitalize: ({ data, emptyResponse }: IDataFormatterRequest<Record<string, any>> & {
14
+ data: string;
15
+ }) => string;
16
+ arrayToString: ({ data, separator, emptyResponse }: IDataFormatterRequest<Record<string, any>> & {
17
+ data: string[];
18
+ separator: string;
19
+ }) => string;
20
+ date: ({ data, emptyResponse, options }: IDataFormatterRequest<Record<string, any>>) => string;
21
+ };
22
+ export declare type FormatOptions = {
23
+ dateFormat?: string;
24
+ includeCommas?: boolean;
25
+ prefix?: string;
26
+ round?: true | number;
27
+ suffix?: {
28
+ single: string;
29
+ multiple: string;
30
+ };
31
+ };
32
+ export interface IDataFormatterRequest<T = Record<string, any>> {
33
+ data: string | number | null | boolean | undefined;
34
+ emptyResponse?: string;
35
+ options?: FormatOptions;
36
+ temporalData?: T;
37
+ }
38
+ export declare type Formatter = (request: IDataFormatterRequest) => string;
39
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/formatters/types/index.ts"],"names":[],"mappings":"AAOA,oBAAY,UAAU;IACpB,uBAAuB,4BAA4B;IACnD,mBAAmB,wBAAwB;IAC3C,cAAc,mBAAmB;IACjC,UAAU,eAAe;IACzB,aAAa,kBAAkB;IAC/B,IAAI,SAAS;CACd;AAED,eAAO,MAAM,kBAAkB;;;;;;;;;;;;CAO9B,CAAC;AAEF,oBAAY,aAAa,GAAG;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH,CAAC;AAEF,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;IAC5D,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,GAAG,SAAS,CAAC;IACnD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,aAAa,CAAC;IAIxB,YAAY,CAAC,EAAE,CAAC,CAAC;CAClB;AAED,oBAAY,SAAS,GAAG,CAAC,OAAO,EAAE,qBAAqB,KAAK,MAAM,CAAC"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.FormatterFunctions = exports.Formatters = void 0;
7
+ const arrayToString_1 = __importDefault(require("../functions/arrayToString"));
8
+ const capitalize_1 = __importDefault(require("../functions/capitalize"));
9
+ const date_1 = __importDefault(require("../functions/date"));
10
+ const decimalToPercentage_1 = __importDefault(require("../functions/decimalToPercentage"));
11
+ const numberToString_1 = __importDefault(require("../functions/numberToString"));
12
+ const scoreLetterToLowMedHigh_1 = __importDefault(require("../functions/scoreLetterToLowMedHigh"));
13
+ var Formatters;
14
+ (function (Formatters) {
15
+ Formatters["scoreLetterToLowMedHigh"] = "scoreLetterToLowMedHigh";
16
+ Formatters["decimalToPercentage"] = "decimalToPercentage";
17
+ Formatters["numberToString"] = "numberToString";
18
+ Formatters["capitalize"] = "capitalize";
19
+ Formatters["arrayToString"] = "arrayToString";
20
+ Formatters["date"] = "date";
21
+ })(Formatters = exports.Formatters || (exports.Formatters = {}));
22
+ exports.FormatterFunctions = {
23
+ [Formatters.scoreLetterToLowMedHigh]: scoreLetterToLowMedHigh_1.default,
24
+ [Formatters.decimalToPercentage]: decimalToPercentage_1.default,
25
+ [Formatters.numberToString]: numberToString_1.default,
26
+ [Formatters.capitalize]: capitalize_1.default,
27
+ [Formatters.arrayToString]: arrayToString_1.default,
28
+ [Formatters.date]: date_1.default
29
+ };
30
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/types/formatters/types/index.ts"],"names":[],"mappings":";;;;;;AAAA,+EAAyD;AACzD,yEAAmD;AACnD,6DAAuC;AACvC,2FAAqE;AACrE,iFAA2D;AAC3D,mGAA6E;AAE7E,IAAY,UAOX;AAPD,WAAY,UAAU;IACpB,iEAAmD,CAAA;IACnD,yDAA2C,CAAA;IAC3C,+CAAiC,CAAA;IACjC,uCAAyB,CAAA;IACzB,6CAA+B,CAAA;IAC/B,2BAAa,CAAA;AACf,CAAC,EAPW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAOrB;AAEY,QAAA,kBAAkB,GAAG;IAChC,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,iCAAyB;IAC/D,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,6BAAqB;IACvD,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,wBAAgB;IAC7C,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,oBAAY;IACrC,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,uBAAe;IAC3C,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,cAAM;CAC1B,CAAC"}
@@ -5,4 +5,5 @@ export * from './Integration';
5
5
  export * from './IntegrationManifest';
6
6
  export * from './IPartnerDataSchema';
7
7
  export * from './Storage';
8
+ export * from './formatters';
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC"}
@@ -21,4 +21,5 @@ __exportStar(require("./Integration"), exports);
21
21
  __exportStar(require("./IntegrationManifest"), exports);
22
22
  __exportStar(require("./IPartnerDataSchema"), exports);
23
23
  __exportStar(require("./Storage"), exports);
24
+ __exportStar(require("./formatters"), exports);
24
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,4DAA0C;AAC1C,2CAAyB;AACzB,gDAA8B;AAC9B,wDAAsC;AACtC,uDAAqC;AACrC,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,4DAA0C;AAC1C,2CAAyB;AACzB,gDAA8B;AAC9B,wDAAsC;AACtC,uDAAqC;AACrC,4CAA0B;AAC1B,+CAA6B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@betterview/integration-toolkit",
3
- "version": "7.5.6",
3
+ "version": "7.5.8",
4
4
  "description": "Supports integration packages. This should be the only import from our integrations",
5
5
  "scripts": {
6
6
  "prebuild": "rm -rf ./lib",
@@ -20,6 +20,7 @@
20
20
  "geojson": "0.5.0",
21
21
  "json-colorizer": "2.2.2",
22
22
  "lodash": "4.17.21",
23
+ "moment": "^2.30.1",
23
24
  "xml2js": "0.6.2"
24
25
  },
25
26
  "peerDependencies": {
@@ -27,8 +28,10 @@
27
28
  },
28
29
  "devDependencies": {
29
30
  "@babel/eslint-parser": "7.18.9",
31
+ "@opentelemetry/api": "^1.8.0",
30
32
  "@testing-library/react": "^14.0.0",
31
33
  "@types/jest": "^29.5.0",
34
+ "@types/lodash": "^4.17.0",
32
35
  "@types/xml2js": "0.4.13",
33
36
  "@typescript-eslint/eslint-plugin": "5.59.0",
34
37
  "@typescript-eslint/eslint-plugin-tslint": "5.59.0",