@etainabl/nodejs-sdk 1.2.1 → 1.2.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.
@@ -0,0 +1,98 @@
1
+ import type { AxiosRequestConfig, AxiosInstance, CreateAxiosDefaults } from 'axios';
2
+ export interface ETNPagedResponse {
3
+ data: any[];
4
+ total: number;
5
+ limit: number;
6
+ skip: number;
7
+ }
8
+ export interface ETNReq {
9
+ method: string;
10
+ url: string;
11
+ }
12
+ interface AuthOptions {
13
+ key?: string;
14
+ token?: string;
15
+ }
16
+ declare const _default: (auth: AuthOptions, instanceOptions?: CreateAxiosDefaults) => {
17
+ instance: AxiosInstance;
18
+ getAccount: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
19
+ listAccounts: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
20
+ updateAccount: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
21
+ createAccount: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
22
+ removeAccount: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
23
+ getAccountSchema: (options?: AxiosRequestConfig<any>) => Promise<any>;
24
+ getAsset: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
25
+ listAssets: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
26
+ updateAsset: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
27
+ createAsset: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
28
+ removeAsset: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
29
+ getAssetSchema: (options?: AxiosRequestConfig<any>) => Promise<any>;
30
+ getAssetGroup: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
31
+ listAssetGroups: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
32
+ updateAssetGroup: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
33
+ createAssetGroup: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
34
+ removeAssetGroup: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
35
+ getAssetGroupAssets: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
36
+ getAssetGroupSchema: (options?: AxiosRequestConfig<any>) => Promise<any>;
37
+ getAutomation: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
38
+ listAutomations: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
39
+ updateAutomation: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
40
+ createAutomation: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
41
+ removeAutomation: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
42
+ createAutomationLog: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
43
+ updateAutomationLog: (id: string, subId: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
44
+ removeAutomationLog: (id: string, subId: string, options?: AxiosRequestConfig<any>) => Promise<any>;
45
+ getCompany: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
46
+ getConsumption: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
47
+ listConsumptions: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
48
+ updateConsumption: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
49
+ createConsumption: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
50
+ removeConsumption: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
51
+ getConsumptionSchema: (options?: AxiosRequestConfig<any>) => Promise<any>;
52
+ getEmail: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
53
+ listEmails: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
54
+ updateEmail: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
55
+ createEmail: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
56
+ removeEmail: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
57
+ getEmissionFactor: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
58
+ listEmissionFactors: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
59
+ updateEmissionFactor: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
60
+ createEmissionFactor: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
61
+ removeEmissionFactor: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
62
+ getLog: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
63
+ listLogs: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
64
+ updateLog: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
65
+ createLog: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
66
+ removeLog: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
67
+ getReading: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
68
+ listReadings: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
69
+ updateReading: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
70
+ createReading: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
71
+ removeReading: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
72
+ getReadingSchema: (options?: AxiosRequestConfig<any>) => Promise<any>;
73
+ getReport: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
74
+ listReports: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
75
+ updateReport: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
76
+ createReport: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
77
+ removeReport: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
78
+ sendReport: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
79
+ getReportTemplate: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
80
+ listReportTemplates: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
81
+ updateReportTemplate: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
82
+ createReportTemplate: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
83
+ removeReportTemplate: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
84
+ getScheduledReport: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
85
+ listScheduledReports: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
86
+ updateScheduledReport: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
87
+ createScheduledReport: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
88
+ removeScheduledReport: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
89
+ sendScheduledReport: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
90
+ getInvoice: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
91
+ listInvoices: (options?: AxiosRequestConfig<any>) => Promise<ETNPagedResponse>;
92
+ updateInvoice: (id: string, data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
93
+ createInvoice: (data: any, options?: AxiosRequestConfig<any>) => Promise<any>;
94
+ removeInvoice: (id: string, options?: AxiosRequestConfig<any>) => Promise<any>;
95
+ getInvoiceSchema: (options?: AxiosRequestConfig<any>) => Promise<any>;
96
+ getSupplierSchema: (options?: AxiosRequestConfig<any>) => Promise<any>;
97
+ };
98
+ export default _default;
@@ -0,0 +1,14 @@
1
+ import moment from 'moment';
2
+ interface ConsumptionData {
3
+ date: Date;
4
+ consumption: number;
5
+ }
6
+ export declare const dayNightConsumption: (data: ConsumptionData[]) => {
7
+ dayConsumption: number;
8
+ nightConsumption: number;
9
+ consumption: number;
10
+ };
11
+ export declare const calcMaxConsumptionValue: (data: ConsumptionData[]) => number;
12
+ export declare const calcMaxDemand: (data: ConsumptionData[]) => number;
13
+ export declare const calcPeakLoad: (consumption: number, maxDemand: number, startDate: string | moment.Moment, endDate: string | moment.Moment) => number;
14
+ export {};
@@ -0,0 +1,6 @@
1
+ import { Db } from 'mongodb';
2
+ declare function connectToDatabase(): Promise<Db>;
3
+ declare const _default: {
4
+ connectToDatabase: typeof connectToDatabase;
5
+ };
6
+ export default _default;
@@ -0,0 +1,10 @@
1
+ export interface AuthorizerContext {
2
+ companyId: string;
3
+ isAdmin: boolean;
4
+ isKiosk: boolean;
5
+ isPublicApiRequest: boolean;
6
+ isService: boolean;
7
+ scope: string;
8
+ sub: string;
9
+ token: string;
10
+ }
@@ -0,0 +1,9 @@
1
+ import api from './api.js';
2
+ import logger from './logger.js';
3
+ import db from './db.js';
4
+ import slack from './slack.js';
5
+ import * as units from './units.js';
6
+ import * as consumption from './consumption.js';
7
+ import * as monitoring from './monitoring.js';
8
+ import * as reporting from './reporting.js';
9
+ export { api, logger, consumption, monitoring, db, slack, units, reporting };
@@ -0,0 +1,3 @@
1
+ import winston from 'winston';
2
+ declare const _default: (namespace: string) => winston.Logger;
3
+ export default _default;
@@ -0,0 +1 @@
1
+ export declare const sendHeartbeat: () => Promise<boolean>;
@@ -0,0 +1,2 @@
1
+ import moment from 'moment';
2
+ export declare const getScheduledReportRunTimes: (schedule: any, limit?: number, taskTime?: moment.Moment) => moment.Moment[];
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ postMessage: (message: string) => Promise<import("axios").AxiosResponse<any, any>>;
3
+ };
4
+ export default _default;
@@ -0,0 +1,22 @@
1
+ interface Item {
2
+ units?: string | null;
3
+ unit?: string | null;
4
+ factor?: number | null;
5
+ value: number;
6
+ [key: string]: any;
7
+ }
8
+ export declare type AccountType = 'electricity' | 'gas' | 'water' | 'waste' | 'solar' | 'heating' | 'flow' | 'cooling' | 'temperature' | 'other';
9
+ export declare type ETNUnit = 'kwh' | 'kg' | 'm3' | 'lbs' | 'tonnes' | 'wh' | 'mwh' | 'ft3' | 'hcf' | 'm3/h' | 'qty' | 'l' | 'C';
10
+ export declare type BaseUnit = 'kwh' | 'm3' | 'C' | 'kg' | 'm3/h';
11
+ export declare const accountTypeMap: {
12
+ [key: string]: BaseUnit;
13
+ };
14
+ export declare const accountTypeUnitMap: {
15
+ [key: string]: ETNUnit[];
16
+ };
17
+ export declare const convertItems: (items: Item[], type: AccountType, defaultUnits: ETNUnit | undefined, accountFactor: number | undefined) => any;
18
+ export declare const checkAccountTypeVsUnits: (type: string, unit: string, additionalLog?: number | '') => {
19
+ type: AccountType;
20
+ unit: ETNUnit;
21
+ };
22
+ export {};
package/dist/mjs/api.js CHANGED
@@ -291,4 +291,3 @@ export default (auth, instanceOptions = {}) => {
291
291
  throw e;
292
292
  }
293
293
  };
294
- //# sourceMappingURL=api.js.map
@@ -20,4 +20,3 @@ export const calcPeakLoad = (consumption, maxDemand, startDate, endDate) => {
20
20
  const days = Math.ceil(moment(endDate).diff(moment(startDate), 'days', true));
21
21
  return maxDemand === 0 ? 0 : ((consumption / (maxDemand * 24 * days)) * 100);
22
22
  };
23
- //# sourceMappingURL=consumption.js.map
package/dist/mjs/db.js CHANGED
@@ -31,4 +31,3 @@ async function connectToDatabase() {
31
31
  export default {
32
32
  connectToDatabase
33
33
  };
34
- //# sourceMappingURL=db.js.map
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=etainabl.js.map
package/dist/mjs/index.js CHANGED
@@ -7,4 +7,3 @@ import * as consumption from './consumption.js';
7
7
  import * as monitoring from './monitoring.js';
8
8
  import * as reporting from './reporting.js';
9
9
  export { api, logger, consumption, monitoring, db, slack, units, reporting };
10
- //# sourceMappingURL=index.js.map
@@ -7,4 +7,3 @@ export default (namespace) => winston.createLogger({
7
7
  new winston.transports.Console()
8
8
  ]
9
9
  });
10
- //# sourceMappingURL=logger.js.map
@@ -13,4 +13,3 @@ export const sendHeartbeat = async () => {
13
13
  return false;
14
14
  }
15
15
  };
16
- //# sourceMappingURL=monitoring.js.map
@@ -49,4 +49,3 @@ export const getScheduledReportRunTimes = (schedule, limit = 1, taskTime = momen
49
49
  });
50
50
  return runTimes;
51
51
  };
52
- //# sourceMappingURL=reporting.js.map
package/dist/mjs/slack.js CHANGED
@@ -12,4 +12,3 @@ const postMessage = async (message) => {
12
12
  export default {
13
13
  postMessage
14
14
  };
15
- //# sourceMappingURL=slack.js.map
package/dist/mjs/units.js CHANGED
@@ -85,4 +85,3 @@ export const checkAccountTypeVsUnits = (type, unit, additionalLog = '') => {
85
85
  }
86
86
  return { type: parsedType, unit: parsedUnit };
87
87
  };
88
- //# sourceMappingURL=units.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etainabl/nodejs-sdk",
3
- "version": "1.2.1",
3
+ "version": "1.2.4",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/mjs/index.js",
6
6
  "author": "Jonathan Lambert <jonathan@etainabl.com>",
package/src/reporting.ts CHANGED
@@ -48,7 +48,15 @@ export const getScheduledReportRunTimes = (schedule: any, limit = 1, taskTime =
48
48
 
49
49
  let startDate = originalStartDate;
50
50
 
51
- const runTimes = Array.from(Array(limit).keys()).map(() => {
51
+ const includeStartDate = taskTime.isSameOrBefore(originalStartDate, 'minute');
52
+
53
+ let runTimes = [] as moment.Moment[];
54
+
55
+ if (includeStartDate) {
56
+ runTimes = [originalStartDate];
57
+ }
58
+
59
+ const scheduleRunTimes = Array.from(Array(includeStartDate ? limit - 1 : limit).keys()).map(() => {
52
60
  const nextRunTime = getNextRunTime(startDate, schedule, taskTime);
53
61
 
54
62
  startDate = nextRunTime.hour(originalStartDate.hour()).minute(originalStartDate.minute());
@@ -56,5 +64,5 @@ export const getScheduledReportRunTimes = (schedule: any, limit = 1, taskTime =
56
64
  return nextRunTime;
57
65
  });
58
66
 
59
- return runTimes;
67
+ return [...runTimes, ...scheduleRunTimes];
60
68
  };
@@ -1,18 +1,23 @@
1
1
  {
2
2
  "compilerOptions": {
3
- "strict": true,
4
- "rootDir": "./src",
5
- "preserveConstEnums": true,
6
- "sourceMap": true,
7
- "moduleResolution": "NodeNext",
8
- "esModuleInterop": true,
9
- "skipLibCheck": true,
10
- "forceConsistentCasingInFileNames": true,
11
- "isolatedModules": true,
3
+ "allowJs": true,
4
+ "allowSyntheticDefaultImports": true,
5
+ "baseUrl": "src",
6
+ "declaration": true,
7
+ "esModuleInterop": true,
8
+ "inlineSourceMap": false,
9
+ "lib": ["esnext"],
10
+ "listEmittedFiles": false,
11
+ "listFiles": false,
12
+ "moduleResolution": "node",
13
+ "noFallthroughCasesInSwitch": true,
12
14
  "pretty": true,
13
15
  "resolveJsonModule": true,
14
- "allowJs": true,
15
- "declaration": true
16
+ "rootDir": "src",
17
+ "skipLibCheck": true,
18
+ "strict": true,
19
+ "traceResolution": false,
20
+ "types": ["node"]
16
21
  },
17
22
  "watchOptions": {
18
23
  // Use native file system events for files and directories
@@ -26,7 +31,7 @@
26
31
  // Finally, two additional settings for reducing the amount of possible
27
32
  // files to track work from these directories
28
33
  },
29
- "exclude": [],
30
- "include": ["./src/*.ts"],
34
+ "exclude": ["node_modules", "dist"],
35
+ "include": ["src"],
31
36
  "compileOnSave": true
32
37
  }
package/tsconfig.cjs.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
+ "extends": "./tsconfig.base.json",
2
3
  "compilerOptions": {
3
4
  "module": "CommonJS",
4
5
  "outDir": "./dist/cjs",
5
6
  "target": "es2015",
6
- "esModuleInterop": true,
7
7
  }
8
8
  }
package/tsconfig.json CHANGED
@@ -2,6 +2,7 @@
2
2
  "extends": "./tsconfig.base.json",
3
3
  "compilerOptions": {
4
4
  "module": "NodeNext",
5
+ "moduleResolution": "NodeNext",
5
6
  "target": "es2022",
6
7
  "outDir": "./dist/mjs"
7
8
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"consumption.js","sourceRoot":"","sources":["../../src/consumption.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAa5B,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAuB,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAwB,EAAE,IAAqB,EAAuB,EAAE;IACnJ,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,oCAAoC;IAE/E,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE;QACzB,GAAG,CAAC,gBAAgB,IAAI,IAAI,CAAC,WAAW,CAAC;KAC1C;SAAM;QACL,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC,WAAW,CAAC;KACxC;IAED,GAAG,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC;IAEpC,OAAO,GAAG,CAAC;AACb,CAAC,EAAE;IACD,cAAc,EAAE,CAAC;IACjB,gBAAgB,EAAE,CAAC;IACnB,WAAW,EAAE,CAAC;CACf,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,IAAuB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAqB,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;AAEvI,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAuB,EAAE,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE5F,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,WAAmB,EAAE,SAAiB,EAAE,SAAiC,EAAE,OAA+B,EAAE,EAAE;IACzI,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IAE9E,OAAO,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,GAAG,CAAC,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;AAC/E,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../src/db.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAM,MAAM,SAAS,CAAC;AAC1C,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AAEhC,IAAI,QAAY,CAAC;AAEjB,KAAK,UAAU,iBAAiB;IAC9B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe;QAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;IAChF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAAE,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IACpF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IAE5F,IAAI,QAAQ,EAAE;QACZ,GAAG,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAC9C,OAAO,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;KAClC;IAED,GAAG,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAE7C,MAAM,GAAG,GAAG,iBAAiB,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC;IAE3D,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE;QAClC,IAAI,EAAE;YACJ,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;YACvC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB;SAC5C;QACD,UAAU,EAAE,WAAW;QACvB,aAAa,EAAE,aAAa;KAC7B,CAAC,CAAC;IAEH,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;IAEvB,GAAG,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAEvD,QAAQ,GAAG,MAAM,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IAEjC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,eAAe;IACb,iBAAiB;CAClB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"etainabl.js","sourceRoot":"","sources":["../../src/etainabl.ts"],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,UAAU,CAAC;AAC3B,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,KAAK,MAAM,YAAY,CAAC;AAC/B,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAC;AAC9C,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAE5C,OAAO,EACL,GAAG,EACH,MAAM,EACN,WAAW,EACX,UAAU,EACV,EAAE,EACF,KAAK,EACL,KAAK,EACL,SAAS,EACV,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,eAAe,CAAC,SAAiB,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC;IACzD,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,OAAO,CAC5B,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,EAC1B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CACtB;IACD,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,MAAM,EAAE,SAAS,EAAE;IACjF,UAAU,EAAE;QACV,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE;KACjC;CACF,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"monitoring.js","sourceRoot":"","sources":["../../src/monitoring.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;AAEjC,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,IAAI,EAAE;IACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAExF,IAAI;QACA,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAE5C,OAAO,IAAI,CAAC;KACf;IAAC,OAAO,CAAM,EAAE;QACb,GAAG,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;QACxD,OAAO,KAAK,CAAC;KAChB;AACL,CAAC,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"reporting.js","sourceRoot":"","sources":["../../src/reporting.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"slack.js","sourceRoot":"","sources":["../../src/slack.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,GAAG,KAAK,EAAE,OAAe,EAAE,EAAE;IAC5C,MAAM,GAAG,GAAG,mFAAmF,CAAC;IAChG,MAAM,IAAI,GAAG;QACX,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,OAAO,EAAE;KACvG,CAAC;IACF,MAAM,OAAO,GAAG;QACd,cAAc,EAAE,kBAAkB;KACnC,CAAC;IACF,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,eAAe;IACb,WAAW;CACZ,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"units.js","sourceRoot":"","sources":["../../src/units.ts"],"names":[],"mappings":"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"}