vita-playwright 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.prettierrc +9 -0
- package/README.md +617 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -0
- package/dist/src/helpers/api-helpers.d.ts +5 -0
- package/dist/src/helpers/api-helpers.js +52 -0
- package/dist/src/helpers/api-helpers.js.map +1 -0
- package/dist/src/helpers/ui-helpers.d.ts +24 -0
- package/dist/src/helpers/ui-helpers.js +172 -0
- package/dist/src/helpers/ui-helpers.js.map +1 -0
- package/dist/src/utils/api_axios.d.ts +5 -0
- package/dist/src/utils/api_axios.js +35 -0
- package/dist/src/utils/api_axios.js.map +1 -0
- package/dist/src/utils/azure_storage_methods.d.ts +4 -0
- package/dist/src/utils/azure_storage_methods.js +130 -0
- package/dist/src/utils/azure_storage_methods.js.map +1 -0
- package/dist/src/utils/comparisions.d.ts +12 -0
- package/dist/src/utils/comparisions.js +98 -0
- package/dist/src/utils/comparisions.js.map +1 -0
- package/dist/src/utils/date_utilitites.d.ts +9 -0
- package/dist/src/utils/date_utilitites.js +30 -0
- package/dist/src/utils/date_utilitites.js.map +1 -0
- package/dist/src/utils/document_utility.d.ts +8 -0
- package/dist/src/utils/document_utility.js +77 -0
- package/dist/src/utils/document_utility.js.map +1 -0
- package/dist/src/utils/email_sender.d.ts +14 -0
- package/dist/src/utils/email_sender.js +58 -0
- package/dist/src/utils/email_sender.js.map +1 -0
- package/dist/src/utils/keyvault_methods.d.ts +3 -0
- package/dist/src/utils/keyvault_methods.js +30 -0
- package/dist/src/utils/keyvault_methods.js.map +1 -0
- package/dist/src/utils/lighhouse_utility.d.ts +12 -0
- package/dist/src/utils/lighhouse_utility.js +132 -0
- package/dist/src/utils/lighhouse_utility.js.map +1 -0
- package/dist/src/utils/test_data.d.ts +9 -0
- package/dist/src/utils/test_data.js +142 -0
- package/dist/src/utils/test_data.js.map +1 -0
- package/dist/src/utils/xmlToJson.d.ts +3 -0
- package/dist/src/utils/xmlToJson.js +57 -0
- package/dist/src/utils/xmlToJson.js.map +1 -0
- package/index.ts +25 -0
- package/package.json +58 -0
- package/src/helpers/api-helpers.ts +38 -0
- package/src/helpers/ui-helpers.ts +148 -0
- package/src/utils/api_axios.ts +16 -0
- package/src/utils/azure_storage_methods.ts +171 -0
- package/src/utils/comparisions.ts +99 -0
- package/src/utils/date_utilitites.ts +39 -0
- package/src/utils/document_utility.ts +81 -0
- package/src/utils/email_sender.ts +36 -0
- package/src/utils/keyvault_methods.ts +15 -0
- package/src/utils/lighhouse_utility.ts +123 -0
- package/src/utils/test_data.ts +121 -0
- package/src/utils/xmlToJson.ts +41 -0
- package/tsconfig.json +106 -0
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.DocumentUtility = void 0;
|
|
16
|
+
const xlsx_1 = __importDefault(require("xlsx"));
|
|
17
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
18
|
+
const promises_1 = __importDefault(require("node:fs/promises"));
|
|
19
|
+
const node_path_1 = __importDefault(require("node:path"));
|
|
20
|
+
// import { PdfReader } from 'pdfreader';
|
|
21
|
+
class DocumentUtility {
|
|
22
|
+
static readData(filePath) {
|
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
return xlsx_1.default.readFile(filePath, {
|
|
25
|
+
cellDates: true,
|
|
26
|
+
bookVBA: true,
|
|
27
|
+
sheetStubs: true,
|
|
28
|
+
cellNF: true,
|
|
29
|
+
});
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
static readDataFromExcelorCSV(filePath, sheetname) {
|
|
33
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
const jsonOpts = {
|
|
35
|
+
raw: false,
|
|
36
|
+
dateNF: `yyyy/mm/dd`, // <--- need dateNF in sheet_to_json options (note the escape chars)
|
|
37
|
+
};
|
|
38
|
+
const workbook = yield DocumentUtility.readData(filePath);
|
|
39
|
+
const sheet_name_list = workbook.SheetNames;
|
|
40
|
+
sheetname = sheetname === undefined ? sheet_name_list[0] : sheetname;
|
|
41
|
+
return xlsx_1.default.utils.sheet_to_json(workbook.Sheets[sheet_name_list[0]], jsonOpts);
|
|
42
|
+
// const tempTwoDimentionalArr = new Array(_.keys(excelData[0]).length);
|
|
43
|
+
// for (const i = 0; i < tempTwoDimentionalArr.length; i++) {
|
|
44
|
+
// tempTwoDimentionalArr[i] = new Array();
|
|
45
|
+
// }
|
|
46
|
+
// return _.map(excelData, (obj)=> {
|
|
47
|
+
// return _.reduce(_.keys(excelData[0]), (result, columnName, index) =>{
|
|
48
|
+
// tempTwoDimentionalArr[index].push(obj[columnName])
|
|
49
|
+
// result[columnName] = tempTwoDimentionalArr[index];
|
|
50
|
+
// return result;
|
|
51
|
+
// }, {})
|
|
52
|
+
// })[0];
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
static filterData(filePath, sheetName, filterObject) {
|
|
56
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
57
|
+
let fileData = yield DocumentUtility.readData(filePath);
|
|
58
|
+
return lodash_1.default.filter(xlsx_1.default.utils.sheet_to_json(fileData.Sheets[sheetName]), filterObject);
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
static updateExcelData(filePath, sheetName, exportData) {
|
|
62
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
const workbook = yield DocumentUtility.readData(filePath);
|
|
64
|
+
workbook.Sheets[sheetName] = xlsx_1.default.utils.json_to_sheet(exportData);
|
|
65
|
+
xlsx_1.default.writeFile(workbook, filePath);
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
static deleteAllFilesUnderDir(dirPath) {
|
|
69
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
70
|
+
for (const file of yield promises_1.default.readdir(dirPath)) {
|
|
71
|
+
yield promises_1.default.unlink(node_path_1.default.join(dirPath, file));
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
exports.DocumentUtility = DocumentUtility;
|
|
77
|
+
//# sourceMappingURL=document_utility.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document_utility.js","sourceRoot":"","sources":["../../../src/utils/document_utility.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,gDAAwB;AACxB,oDAAuB;AACvB,gEAAkC;AAClC,0DAA6B;AAC7B,yCAAyC;AAEzC,MAAa,eAAe;IACxB,MAAM,CAAO,QAAQ,CAAC,QAAgB;;YAClC,OAAO,cAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;gBAC3B,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,IAAI;gBAChB,MAAM,EAAE,IAAI;aACf,CAAC,CAAC;QACP,CAAC;KAAA;IAED,MAAM,CAAO,sBAAsB,CAAC,QAAgB,EAAE,SAAiB;;YACnE,MAAM,QAAQ,GAAG;gBACb,GAAG,EAAE,KAAK;gBACV,MAAM,EAAE,YAAY,EAAE,oEAAoE;aAC7F,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC1D,MAAM,eAAe,GAAG,QAAQ,CAAC,UAAU,CAAC;YAC5C,SAAS,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACrE,OAAO,cAAI,CAAC,KAAK,CAAC,aAAa,CAC3B,QAAQ,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,EACnC,QAAQ,CACX,CAAC;YAEF,wEAAwE;YACxE,6DAA6D;YAC7D,8CAA8C;YAC9C,IAAI;YACJ,qCAAqC;YACrC,6EAA6E;YAC7E,6DAA6D;YAC7D,6DAA6D;YAC7D,yBAAyB;YACzB,aAAa;YACb,SAAS;QACb,CAAC;KAAA;IAED,MAAM,CAAO,UAAU,CACnB,QAAgB,EAChB,SAAiB,EACjB,YAAoB;;YAEpB,IAAI,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACxD,OAAO,gBAAC,CAAC,MAAM,CACX,cAAI,CAAC,KAAK,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EACpD,YAAY,CACf,CAAC;QACN,CAAC;KAAA;IAED,MAAM,CAAO,eAAe,CACxB,QAAgB,EAChB,SAAiB,EACjB,UAAyB;;YAEzB,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAC1D,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,cAAI,CAAC,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YAClE,cAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACvC,CAAC;KAAA;IAED,MAAM,CAAO,sBAAsB,CAAC,OAAe;;YAC/C,KAAK,MAAM,IAAI,IAAI,MAAM,kBAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;gBAC1C,MAAM,kBAAE,CAAC,MAAM,CAAC,mBAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;aAC7C;QACL,CAAC;KAAA;CAYJ;AA1ED,0CA0EC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare class EmailSender {
|
|
2
|
+
static transporter(): Promise<any>;
|
|
3
|
+
static getMailOptions(): Promise<{
|
|
4
|
+
from: string;
|
|
5
|
+
to: string;
|
|
6
|
+
subject: string;
|
|
7
|
+
html: string;
|
|
8
|
+
attachments: {
|
|
9
|
+
filename: string;
|
|
10
|
+
path: string;
|
|
11
|
+
}[];
|
|
12
|
+
}>;
|
|
13
|
+
static sendMail(): Promise<void>;
|
|
14
|
+
}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.EmailSender = void 0;
|
|
16
|
+
const nodemailer_1 = __importDefault(require("nodemailer"));
|
|
17
|
+
class EmailSender {
|
|
18
|
+
static transporter() {
|
|
19
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
return nodemailer_1.default.createTransport({
|
|
21
|
+
service: 'Gmail',
|
|
22
|
+
host: 'smtp.gmail.com',
|
|
23
|
+
secure: false,
|
|
24
|
+
auth: {
|
|
25
|
+
user: '***********',
|
|
26
|
+
pass: '***********',
|
|
27
|
+
},
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
static getMailOptions() {
|
|
32
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
33
|
+
return {
|
|
34
|
+
from: 'durgaprasad555555@gmail',
|
|
35
|
+
to: 'vemula.d.prasad.tpr@vialto.com',
|
|
36
|
+
subject: 'this testing mail from automation',
|
|
37
|
+
html: `<h2 style="color:#ff6600;">Hello People!,
|
|
38
|
+
Welcome to Vialto!</h2>`,
|
|
39
|
+
attachments: [{ filename: 'test.js', path: './resources/test.js' }],
|
|
40
|
+
};
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
static sendMail() {
|
|
44
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
const transporter = yield this.transporter();
|
|
46
|
+
transporter.sendMail(this.getMailOptions(), (error, info) => {
|
|
47
|
+
if (error) {
|
|
48
|
+
console.log(error);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
console.log('email sent: ' + info.message);
|
|
52
|
+
}
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
exports.EmailSender = EmailSender;
|
|
58
|
+
//# sourceMappingURL=email_sender.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"email_sender.js","sourceRoot":"","sources":["../../../src/utils/email_sender.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4DAAoC;AACpC,MAAa,WAAW;IACpB,MAAM,CAAO,WAAW;;YACpB,OAAO,oBAAU,CAAC,eAAe,CAAC;gBAC9B,OAAO,EAAE,OAAO;gBAChB,IAAI,EAAE,gBAAgB;gBACtB,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE;oBACF,IAAI,EAAE,aAAa;oBACnB,IAAI,EAAE,aAAa;iBACtB;aACJ,CAAC,CAAC;QACP,CAAC;KAAA;IAED,MAAM,CAAO,cAAc;;YACvB,OAAO;gBACH,IAAI,EAAE,yBAAyB;gBAC/B,EAAE,EAAE,gCAAgC;gBACpC,OAAO,EAAE,mCAAmC;gBAC5C,IAAI,EAAE;8CAC4B;gBAClC,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC;aACtE,CAAC;QACN,CAAC;KAAA;IAED,MAAM,CAAO,QAAQ;;YACjB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7C,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACxD,IAAI,KAAK,EAAE;oBACP,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;iBACtB;qBAAM;oBACH,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;iBAC9C;YACL,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;CACJ;AAlCD,kCAkCC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.KeyVaultMethods = void 0;
|
|
13
|
+
const api_axios_1 = require("./api_axios");
|
|
14
|
+
class KeyVaultMethods {
|
|
15
|
+
static getSecrets(secretName) {
|
|
16
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
const keyvault = `${process.env.subscription}conm${process.env.env}${process.env.locationshortcut}securekv`;
|
|
18
|
+
const token = yield api_axios_1.TokenGenerators.generateKeyVaultAccessToken();
|
|
19
|
+
const config = {
|
|
20
|
+
method: 'get',
|
|
21
|
+
url: `https://${keyvault}.vault.azure.net/secrets/${secretName}?api-version=2016-10-01`,
|
|
22
|
+
headers: { Authorization: `Bearer ${token}` },
|
|
23
|
+
};
|
|
24
|
+
const response = yield api_axios_1.TokenGenerators.request(config);
|
|
25
|
+
return response.data;
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.KeyVaultMethods = KeyVaultMethods;
|
|
30
|
+
//# sourceMappingURL=keyvault_methods.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"keyvault_methods.js","sourceRoot":"","sources":["../../../src/utils/keyvault_methods.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAA8C;AAE9C,MAAa,eAAe;IACxB,MAAM,CAAO,UAAU,CAAC,UAAe;;YACnC,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,UAAU,CAAC;YAC5G,MAAM,KAAK,GAAG,MAAM,2BAAe,CAAC,2BAA2B,EAAE,CAAC;YAClE,MAAM,MAAM,GAAG;gBACX,MAAM,EAAE,KAAK;gBACb,GAAG,EAAE,WAAW,QAAQ,4BAA4B,UAAU,yBAAyB;gBACvF,OAAO,EAAE,EAAE,aAAa,EAAE,UAAU,KAAK,EAAE,EAAE;aAChD,CAAC;YACF,MAAM,QAAQ,GAAG,MAAM,2BAAe,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACvD,OAAO,QAAQ,CAAC,IAAI,CAAC;QACzB,CAAC;KAAA;CACJ;AAZD,0CAYC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare class LightHouseUtility {
|
|
2
|
+
static auditLightHouse(pageurl: string, deviceType: any, filename: any, customThresholds?: {
|
|
3
|
+
performance: number;
|
|
4
|
+
accessibility: number;
|
|
5
|
+
'best-practices': number;
|
|
6
|
+
seo: number;
|
|
7
|
+
pwa: number;
|
|
8
|
+
}, format?: {
|
|
9
|
+
html: boolean;
|
|
10
|
+
}): Promise<void>;
|
|
11
|
+
static createLightHouseReport(dirPath: string, savefilepath: string, applicationName: any): Promise<void>;
|
|
12
|
+
}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.LightHouseUtility = void 0;
|
|
16
|
+
const lr_desktop_config_1 = __importDefault(require("lighthouse/lighthouse-core/config/lr-desktop-config"));
|
|
17
|
+
const lr_mobile_config_1 = __importDefault(require("lighthouse/lighthouse-core/config/lr-mobile-config"));
|
|
18
|
+
const playwright_lighthouse_1 = require("playwright-lighthouse");
|
|
19
|
+
const fs_1 = __importDefault(require("fs"));
|
|
20
|
+
class LightHouseUtility {
|
|
21
|
+
static auditLightHouse(pageurl, deviceType, filename, customThresholds = {
|
|
22
|
+
performance: 80,
|
|
23
|
+
accessibility: 70,
|
|
24
|
+
'best-practices': 70,
|
|
25
|
+
seo: 70,
|
|
26
|
+
pwa: 70,
|
|
27
|
+
}, format = { html: true }) {
|
|
28
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
+
deviceType =
|
|
30
|
+
deviceType === 'mobile'
|
|
31
|
+
? lr_mobile_config_1.default
|
|
32
|
+
: lr_desktop_config_1.default;
|
|
33
|
+
const options = {
|
|
34
|
+
loglevel: 'info',
|
|
35
|
+
};
|
|
36
|
+
yield (0, playwright_lighthouse_1.playAudit)({
|
|
37
|
+
url: pageurl,
|
|
38
|
+
opts: options,
|
|
39
|
+
config: deviceType,
|
|
40
|
+
thresholds: customThresholds,
|
|
41
|
+
ignoreError: true,
|
|
42
|
+
port: 9222,
|
|
43
|
+
reports: {
|
|
44
|
+
formats: format,
|
|
45
|
+
name: filename,
|
|
46
|
+
directory: `${process.cwd()}/lighthouse/pages/`,
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
static createLightHouseReport(dirPath, savefilepath, applicationName) {
|
|
52
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
53
|
+
let str = ``;
|
|
54
|
+
let sno = 0;
|
|
55
|
+
fs_1.default.readdir(dirPath, (err, filenames) => {
|
|
56
|
+
if (err) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
filenames.forEach((file) => {
|
|
60
|
+
sno = sno + 1;
|
|
61
|
+
str =
|
|
62
|
+
str +
|
|
63
|
+
'<tr class="center"><td> ' +
|
|
64
|
+
sno +
|
|
65
|
+
' </td><td>' +
|
|
66
|
+
file.split('.')[0] +
|
|
67
|
+
'</td><td>\n<iframe src="./' +
|
|
68
|
+
dirPath.split('/')[dirPath.split('/').length - 1] +
|
|
69
|
+
'/' +
|
|
70
|
+
file +
|
|
71
|
+
'" width="100%" height="300" scrolling="no"></iframe></td><td>\n<p> <a href="./' +
|
|
72
|
+
dirPath.split('/')[dirPath.split('/').length - 1] +
|
|
73
|
+
'/' +
|
|
74
|
+
file +
|
|
75
|
+
'" target="_blank">open in new tab</a></p></td></tr>';
|
|
76
|
+
});
|
|
77
|
+
str =
|
|
78
|
+
`<html>
|
|
79
|
+
<head>
|
|
80
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
81
|
+
<style>
|
|
82
|
+
table, th, td {
|
|
83
|
+
border: 1px solid black;
|
|
84
|
+
border-collapse: collapse;
|
|
85
|
+
}
|
|
86
|
+
table {
|
|
87
|
+
width: 55%;
|
|
88
|
+
}
|
|
89
|
+
td, th {
|
|
90
|
+
text-align: center;
|
|
91
|
+
color: #080;
|
|
92
|
+
}
|
|
93
|
+
h1 {
|
|
94
|
+
text-align: center;
|
|
95
|
+
color: #fa3
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
.center {
|
|
99
|
+
margin-left: auto;
|
|
100
|
+
margin-right: auto;
|
|
101
|
+
}
|
|
102
|
+
div{
|
|
103
|
+
overflow-x:auto;
|
|
104
|
+
}
|
|
105
|
+
</style>
|
|
106
|
+
</head>
|
|
107
|
+
<body>
|
|
108
|
+
|
|
109
|
+
<h1><u>` +
|
|
110
|
+
applicationName +
|
|
111
|
+
` Performance Testing Status</u></h1>
|
|
112
|
+
<div>
|
|
113
|
+
<table class='center'>
|
|
114
|
+
<tr class='center'>
|
|
115
|
+
<th> Sno </th>
|
|
116
|
+
<th>Pagename</th>
|
|
117
|
+
<th>Status</th>
|
|
118
|
+
<th> Link </th>
|
|
119
|
+
</tr>` +
|
|
120
|
+
str +
|
|
121
|
+
`
|
|
122
|
+
</table>
|
|
123
|
+
</div>
|
|
124
|
+
</body>
|
|
125
|
+
</html>`;
|
|
126
|
+
fs_1.default.writeFileSync(savefilepath, str);
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
exports.LightHouseUtility = LightHouseUtility;
|
|
132
|
+
//# sourceMappingURL=lighhouse_utility.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lighhouse_utility.js","sourceRoot":"","sources":["../../../src/utils/lighhouse_utility.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,4GAA0F;AAC1F,0GAAwF;AACxF,iEAAkD;AAClD,4CAAoB;AAEpB,MAAa,iBAAiB;IAC1B,MAAM,CAAO,eAAe,CACxB,OAAe,EACf,UAAU,EACV,QAAQ,EACR,gBAAgB,GAAG;QACf,WAAW,EAAE,EAAE;QACf,aAAa,EAAE,EAAE;QACjB,gBAAgB,EAAE,EAAE;QACpB,GAAG,EAAE,EAAE;QACP,GAAG,EAAE,EAAE;KACV,EACD,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE;;YAEvB,UAAU;gBACN,UAAU,KAAK,QAAQ;oBACnB,CAAC,CAAC,0BAAsB;oBACxB,CAAC,CAAC,2BAAuB,CAAC;YAClC,MAAM,OAAO,GAAG;gBACZ,QAAQ,EAAE,MAAM;aACnB,CAAC;YACF,MAAM,IAAA,iCAAS,EAAC;gBACZ,GAAG,EAAE,OAAO;gBACZ,IAAI,EAAE,OAAO;gBACb,MAAM,EAAE,UAAU;gBAClB,UAAU,EAAE,gBAAgB;gBAC5B,WAAW,EAAE,IAAI;gBACjB,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE;oBACL,OAAO,EAAE,MAAM;oBACf,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,oBAAoB;iBAClD;aACJ,CAAC,CAAC;QACP,CAAC;KAAA;IAED,MAAM,CAAO,sBAAsB,CAC/B,OAAe,EACf,YAAoB,EACpB,eAAe;;YAEf,IAAI,GAAG,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,YAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;gBACnC,IAAI,GAAG,EAAE;oBACL,OAAO;iBACV;gBACD,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;oBACvB,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;oBACd,GAAG;wBACC,GAAG;4BACH,6BAA6B;4BAC7B,GAAG;4BACH,eAAe;4BACf,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;4BAClB,4BAA4B;4BAC5B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;4BACjD,GAAG;4BACH,IAAI;4BACJ,gFAAgF;4BAChF,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;4BACjD,GAAG;4BACH,IAAI;4BACJ,qDAAqD,CAAC;gBAC9D,CAAC,CAAC,CAAC;gBACH,GAAG;oBACC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wBA+BQ;wBACR,eAAe;wBACf;;;;;;;;sBAQM;wBACN,GAAG;wBACH;;;;wBAIQ,CAAC;gBACb,YAAE,CAAC,aAAa,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;YACxC,CAAC,CAAC,CAAC;QACP,CAAC;KAAA;CACJ;AArHD,8CAqHC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare class TestData {
|
|
2
|
+
static sqlDBConnection(configuration: any): Promise<any>;
|
|
3
|
+
static executeSqlQuery(connectionObj: any, queryString: any): Promise<any>;
|
|
4
|
+
static generateRandomUniqeIDNumber(): Promise<string>;
|
|
5
|
+
static getUTCTimeCustom24hrs(localTime: string): Promise<string>;
|
|
6
|
+
static waitFortimeOut(waitTime: any): Promise<void>;
|
|
7
|
+
static executeCosmosQuery(queryString: any): Promise<void>;
|
|
8
|
+
static getUTCTimeCustom(localTime: any): Promise<string>;
|
|
9
|
+
}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.TestData = void 0;
|
|
16
|
+
const mssql_1 = __importDefault(require("mssql"));
|
|
17
|
+
class TestData {
|
|
18
|
+
static sqlDBConnection(configuration) {
|
|
19
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
20
|
+
// const server = "zwetrvl2sqd001.database.windows.net";
|
|
21
|
+
// const database ="zwetrvl2sqd001-DB002";
|
|
22
|
+
const config = {
|
|
23
|
+
server: configuration.server,
|
|
24
|
+
// user: "zwetrvl2sqd001-admin",
|
|
25
|
+
// password: "SADJ+zyhcj2l(SY9",
|
|
26
|
+
user: configuration.user,
|
|
27
|
+
password: configuration.password,
|
|
28
|
+
database: configuration.database,
|
|
29
|
+
requestTimeout: 600000,
|
|
30
|
+
port: 1433,
|
|
31
|
+
options: {
|
|
32
|
+
encrypt: true, // Use this if you're on Windows Azure
|
|
33
|
+
},
|
|
34
|
+
authentication: {
|
|
35
|
+
// type: "azure-active-directory-service-principal-secret",
|
|
36
|
+
type: 'default',
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
const conn = new mssql_1.default.ConnectionPool(config);
|
|
40
|
+
return conn;
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
static executeSqlQuery(connectionObj, queryString) {
|
|
44
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
const pool1Connect = yield connectionObj.connect();
|
|
46
|
+
connectionObj.on('error', (err) => {
|
|
47
|
+
console.log(err);
|
|
48
|
+
return;
|
|
49
|
+
});
|
|
50
|
+
yield pool1Connect;
|
|
51
|
+
try {
|
|
52
|
+
const request = connectionObj.request(); // or: new sql.Request(pool1)
|
|
53
|
+
const result = yield request.query(queryString);
|
|
54
|
+
return result;
|
|
55
|
+
}
|
|
56
|
+
catch (err) {
|
|
57
|
+
console.error('SQL error', err);
|
|
58
|
+
return null;
|
|
59
|
+
}
|
|
60
|
+
connectionObj.close();
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
static generateRandomUniqeIDNumber() {
|
|
64
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
65
|
+
const d = new Date();
|
|
66
|
+
let minutes = d.getMinutes();
|
|
67
|
+
let seconds = d.getSeconds();
|
|
68
|
+
let hour = d.getHours();
|
|
69
|
+
const result = Math.random().toString(36).substring(2, 5).toUpperCase();
|
|
70
|
+
let localUid = 'SNO' + result + hour + minutes.toString() + seconds;
|
|
71
|
+
return localUid;
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
static getUTCTimeCustom24hrs(localTime) {
|
|
75
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
76
|
+
console.log(localTime);
|
|
77
|
+
const localDate = new Date();
|
|
78
|
+
localDate.setHours(parseInt(localTime.split(':')[0].trim()));
|
|
79
|
+
localDate.setMinutes(parseInt(localTime.split(':')[1].substring(0, 2).trim()));
|
|
80
|
+
localDate.setSeconds(0, 0);
|
|
81
|
+
console.log('**** Returning time ' + localDate.toISOString());
|
|
82
|
+
return localDate.toISOString();
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
static waitFortimeOut(waitTime) {
|
|
86
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
87
|
+
const sleep = (waitTimeInMs) => new Promise((resolve) => setTimeout(resolve, waitTimeInMs));
|
|
88
|
+
yield sleep(waitTime);
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
static executeCosmosQuery(queryString) {
|
|
92
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
93
|
+
/*const endpoint = process.env.cosmosConfig.endpoint;
|
|
94
|
+
const key = process.env.cosmosConfig.key;
|
|
95
|
+
const databaseId = process.env.cosmosConfig.databaseId;
|
|
96
|
+
const containerId = process.env.cosmosConfig.containerId;
|
|
97
|
+
const client = new cosmosClient({ endpoint, key });
|
|
98
|
+
|
|
99
|
+
const database = client.database(databaseId);
|
|
100
|
+
const container = database.container(containerId);
|
|
101
|
+
console.log(`Querying container: Items`);
|
|
102
|
+
|
|
103
|
+
// query to return all items
|
|
104
|
+
const querySpec = {
|
|
105
|
+
query: queryString
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
// read all items in the Items container
|
|
109
|
+
const {resources: items} = await container.items.query(querySpec).fetchAll();
|
|
110
|
+
return items;*/
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
static getUTCTimeCustom(localTime) {
|
|
114
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
115
|
+
console.log(localTime);
|
|
116
|
+
const localDate = new Date();
|
|
117
|
+
const hours = parseInt(localTime.split(':')[0].trim());
|
|
118
|
+
if (localTime.includes('PM')) {
|
|
119
|
+
if (hours == 12) {
|
|
120
|
+
localDate.setHours(parseInt(localTime.split(':')[0].trim()));
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
localDate.setHours(parseInt(localTime.split(':')[0].trim()) + 12);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
if (hours == 12) {
|
|
128
|
+
localDate.setHours(0);
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
localDate.setHours(parseInt(localTime.split(':')[0].trim()));
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
localDate.setMinutes(parseInt(localTime.split(':')[1].substring(0, 2).trim()));
|
|
135
|
+
localDate.setSeconds(0, 0);
|
|
136
|
+
console.log('**** Returning time ' + localDate.toISOString());
|
|
137
|
+
return localDate.toISOString();
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
exports.TestData = TestData;
|
|
142
|
+
//# sourceMappingURL=test_data.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test_data.js","sourceRoot":"","sources":["../../../src/utils/test_data.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.XmlToJson = void 0;
|
|
13
|
+
class XmlToJson {
|
|
14
|
+
static xmlToJson(xml) {
|
|
15
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
16
|
+
// Create the return object
|
|
17
|
+
let obj = {};
|
|
18
|
+
if (xml.nodeType == 1) {
|
|
19
|
+
// element
|
|
20
|
+
// do attributes
|
|
21
|
+
if (xml.attributes.length > 0) {
|
|
22
|
+
obj['@attributes'] = {};
|
|
23
|
+
for (let j = 0; j < xml.attributes.length; j++) {
|
|
24
|
+
const attribute = xml.attributes.item(j);
|
|
25
|
+
obj['@attributes'][attribute.nodeName] =
|
|
26
|
+
attribute.nodeValue;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
else if (xml.nodeType == 3) {
|
|
31
|
+
// text
|
|
32
|
+
obj = xml.nodeValue;
|
|
33
|
+
}
|
|
34
|
+
// do children
|
|
35
|
+
if (xml.hasChildNodes()) {
|
|
36
|
+
for (let i = 0; i < xml.childNodes.length; i++) {
|
|
37
|
+
const item = xml.childNodes.item(i);
|
|
38
|
+
const nodeName = item.nodeName;
|
|
39
|
+
if (typeof obj[nodeName] == 'undefined') {
|
|
40
|
+
obj[nodeName] = this.xmlToJson(item);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
if (typeof obj[nodeName].push == 'undefined') {
|
|
44
|
+
const old = obj[nodeName];
|
|
45
|
+
obj[nodeName] = [];
|
|
46
|
+
obj[nodeName].push(old);
|
|
47
|
+
}
|
|
48
|
+
obj[nodeName].push(this.xmlToJson(item));
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return obj;
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.XmlToJson = XmlToJson;
|
|
57
|
+
//# sourceMappingURL=xmlToJson.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xmlToJson.js","sourceRoot":"","sources":["../../../src/utils/xmlToJson.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,MAAa,SAAS;IAClB,MAAM,CAAO,SAAS,CAAC,GAAQ;;YAC3B,2BAA2B;YAC3B,IAAI,GAAG,GAAQ,EAAE,CAAC;YAElB,IAAI,GAAG,CAAC,QAAQ,IAAI,CAAC,EAAE;gBACnB,UAAU;gBACV,gBAAgB;gBAChB,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC3B,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;oBACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC5C,MAAM,SAAS,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACzC,GAAG,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC;4BAClC,SAAS,CAAC,SAAS,CAAC;qBAC3B;iBACJ;aACJ;iBAAM,IAAI,GAAG,CAAC,QAAQ,IAAI,CAAC,EAAE;gBAC1B,OAAO;gBACP,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC;aACvB;YAED,cAAc;YACd,IAAI,GAAG,CAAC,aAAa,EAAE,EAAE;gBACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;oBAC/B,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,WAAW,EAAE;wBACrC,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;qBACxC;yBAAM;wBACH,IAAI,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,IAAI,WAAW,EAAE;4BAC1C,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC;4BAC1B,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;4BACnB,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;yBAC3B;wBACD,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;qBAC5C;iBACJ;aACJ;YACD,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;CACJ;AAxCD,8BAwCC"}
|
package/index.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { UIHelper } from './src/helpers/ui-helpers';
|
|
2
|
+
import { ApiHelper } from './src/helpers/api-helpers';
|
|
3
|
+
import { TokenGenerators } from './src/utils/api_axios';
|
|
4
|
+
import { AzureStorageMethods } from './src/utils/azure_storage_methods';
|
|
5
|
+
import { Comparisions } from './src/utils/comparisions';
|
|
6
|
+
import { DocumentUtility } from './src/utils/document_utility';
|
|
7
|
+
import { KeyVaultMethods } from './src/utils/keyvault_methods';
|
|
8
|
+
import { TestData } from './src/utils/test_data';
|
|
9
|
+
import { XmlToJson } from './src/utils/xmlToJson';
|
|
10
|
+
import { LightHouseUtility } from './src/utils/lighhouse_utility';
|
|
11
|
+
import { Dateutility } from './src/utils/date_utilitites';
|
|
12
|
+
|
|
13
|
+
export {
|
|
14
|
+
UIHelper,
|
|
15
|
+
ApiHelper,
|
|
16
|
+
TokenGenerators,
|
|
17
|
+
AzureStorageMethods,
|
|
18
|
+
Comparisions,
|
|
19
|
+
DocumentUtility,
|
|
20
|
+
KeyVaultMethods,
|
|
21
|
+
TestData,
|
|
22
|
+
XmlToJson,
|
|
23
|
+
LightHouseUtility,
|
|
24
|
+
Dateutility,
|
|
25
|
+
};
|