UNPKG

test-lib-audits

Version:
635 lines (545 loc) 21.2 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.FrontEgg = undefined; var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); var _react = require("react"); var _react2 = _interopRequireDefault(_react); var _fronteggClient = require("frontegg-client"); var _Table = require("./components/Table"); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } (function () { var enterModule = (typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal : require('react-hot-loader')).enterModule; enterModule && enterModule(module); })(); function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } function _asyncToGenerator(fn) { return function () { var gen = fn.apply(this, arguments); return new Promise(function (resolve, reject) { function step(key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { return Promise.resolve(value).then(function (value) { step("next", value); }, function (err) { step("throw", err); }); } } return step("next"); }); }; } function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal.default.signature : function (a) { return a; }; var audits = new _fronteggClient.AuditsClient(); var BASE_URL = "https://frontegg.azure-api.net"; var FrontEgg = function (_React$Component) { _inherits(FrontEgg, _React$Component); function FrontEgg(props) { _classCallCheck(this, FrontEgg); var _this = _possibleConstructorReturn(this, (FrontEgg.__proto__ || Object.getPrototypeOf(FrontEgg)).call(this, props)); _this.state = { rowsData: [], headerProps: [], filters: [], sortBy: "time", sortDirection: "desc", error: "", isLoading: true, tenantId: "", token: "" }; FrontEgg.__singletonRef = _this; _this._textSearch = _this._textSearch.bind(_this); _this._filterData = _this._filterData.bind(_this); _this._removeFilter = _this._removeFilter.bind(_this); _this._dataSorting = _this._dataSorting.bind(_this); _this._exportCSV = _this._exportCSV.bind(_this); _this._exportPDF = _this._exportPDF.bind(_this); _this._deleteAudits = _this._deleteAudits.bind(_this); return _this; } _createClass(FrontEgg, [{ key: "__init", value: function () { var _ref = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(clientId, accessKey, tenantId) { var res, json, token, metaData, headerProps, rows, rowsData; return regeneratorRuntime.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: if (!(!clientId || !accessKey || !tenantId)) { _context.next = 4; break; } this.setState({ error: "client-id or access-key or tenant-id is missing", isLoading: false }); console.error("client-id or access-key or tenant-id is missing"); return _context.abrupt("return"); case 4: this.setState({ isLoading: true }); _context.next = 7; return audits.init(clientId, accessKey); case 7: _context.next = 9; return fetch(BASE_URL + "/vendors/auth", { method: "post", headers: { "Content-type": "application/json" }, body: JSON.stringify({ clientId: clientId, secret: accessKey }) }); case 9: res = _context.sent; _context.next = 12; return res.json(); case 12: json = _context.sent; token = json.token; _context.next = 16; return audits.getAuditsMetadata(); case 16: metaData = _context.sent; headerProps = metaData.rows[0].properties; this.setState({ headerProps: headerProps, token: token }); _context.next = 21; return audits.getAudits({ tenantId: tenantId, filter: "", filters: [], sortBy: this.state.sortBy, sortDirection: this.state.sortDirection, offset: 0, count: 50 }); case 21: rows = _context.sent; rowsData = rows.data; console.log({ rowsData: rowsData, headerProps: headerProps }); this.setState({ tenantId: tenantId, rowsData: rowsData, isLoading: false }); case 25: case "end": return _context.stop(); } } }, _callee, this); })); function __init(_x, _x2, _x3) { return _ref.apply(this, arguments); } return __init; }() }, { key: "_textSearch", value: function () { var _ref2 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2(term) { var rows, rowsData; return regeneratorRuntime.wrap(function _callee2$(_context2) { while (1) { switch (_context2.prev = _context2.next) { case 0: this.setState({ isLoading: true, searchText: term }); console.log("searching..."); _context2.next = 4; return audits.getAudits({ tenantId: this.state.tenantId, filter: term, sortBy: this.state.sortBy, sortDirection: this.state.sortDirection, offset: 0, count: 50 }); case 4: rows = _context2.sent; rowsData = rows.data; console.log({ rowsData: rowsData }); this.setState({ rowsData: rowsData, isLoading: false }); case 8: case "end": return _context2.stop(); } } }, _callee2, this); })); function _textSearch(_x4) { return _ref2.apply(this, arguments); } return _textSearch; }() }, { key: "_filterData", value: function () { var _ref3 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3(filter) { var allFilters, filterIndex, updatedFilters, filterObj, rows, rowsData; return regeneratorRuntime.wrap(function _callee3$(_context3) { while (1) { switch (_context3.prev = _context3.next) { case 0: allFilters = this.state.filters; filterIndex = allFilters.findIndex(function (item) { return item.key == filter.key; }); updatedFilters = void 0; if (filterIndex >= 0) { allFilters[filterIndex] = filter; updatedFilters = allFilters; } else { updatedFilters = [].concat(_toConsumableArray(allFilters), [filter]); } filterObj = {}; updatedFilters.map(function (filter) { return filterObj[filter.key] = filter.value; }); this.setState({ isLoading: true, filters: updatedFilters }); console.log("filtering..."); _context3.next = 10; return audits.getAudits({ tenantId: this.state.tenantId, filter: this.state.searchText, filters: filterObj, sortBy: this.state.sortBy, sortDirection: this.state.sortDirection, offset: 0, count: 50 }); case 10: rows = _context3.sent; rowsData = rows.data; console.log({ rowsData: rowsData }); this.setState({ rowsData: rowsData, isLoading: false }); case 14: case "end": return _context3.stop(); } } }, _callee3, this); })); function _filterData(_x5) { return _ref3.apply(this, arguments); } return _filterData; }() }, { key: "_removeFilter", value: function () { var _ref4 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4(removedFilter) { var allFilters, removedFilterIndex, updatedFilters, filterObj, rows, rowsData; return regeneratorRuntime.wrap(function _callee4$(_context4) { while (1) { switch (_context4.prev = _context4.next) { case 0: allFilters = this.state.filters; removedFilterIndex = allFilters.findIndex(function (item) { return item.key == removedFilter.key; }); updatedFilters = void 0; if (removedFilterIndex > -1) { allFilters.splice(removedFilterIndex, 1); } updatedFilters = allFilters; filterObj = {}; updatedFilters.map(function (filter) { return filterObj[filter.key] = filter.value; }); this.setState({ isLoading: true, filters: updatedFilters }); console.log("filtering..."); _context4.next = 11; return audits.getAudits({ tenantId: this.state.tenantId, filter: this.state.searchText, filters: filterObj, sortBy: this.state.sortBy, sortDirection: this.state.sortDirection, offset: 0, count: 50 }); case 11: rows = _context4.sent; rowsData = rows.data; console.log({ rowsData: rowsData }); this.setState({ rowsData: rowsData, isLoading: false }); case 15: case "end": return _context4.stop(); } } }, _callee4, this); })); function _removeFilter(_x6) { return _ref4.apply(this, arguments); } return _removeFilter; }() }, { key: "_dataSorting", value: function () { var _ref5 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee5(colName, direction) { var switcher, directionIdentifier, filterObj, rows, rowsData; return regeneratorRuntime.wrap(function _callee5$(_context5) { while (1) { switch (_context5.prev = _context5.next) { case 0: switcher = { asc: true, desc: false }; directionIdentifier = void 0; if (switcher[direction]) { directionIdentifier = "desc"; } else { directionIdentifier = "asc"; } this.setState({ isLoading: true, sortBy: colName, sortDirection: directionIdentifier }); filterObj = {}; this.state.filters.map(function (filter) { return filterObj[filter.key] = filter.value; }); _context5.next = 8; return audits.getAudits({ tenantId: this.state.tenantId, filter: this.state.searchText, filters: filterObj, sortBy: colName, sortDirection: directionIdentifier, offset: 0, count: 50 }); case 8: rows = _context5.sent; rowsData = rows.data; console.log({ rowsData: rowsData }); this.setState({ rowsData: rowsData, isLoading: false }); case 12: case "end": return _context5.stop(); } } }, _callee5, this); })); function _dataSorting(_x7, _x8) { return _ref5.apply(this, arguments); } return _dataSorting; }() }, { key: "_exportCSV", value: function () { var _ref6 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee6() { var res, json; return regeneratorRuntime.wrap(function _callee6$(_context6) { while (1) { switch (_context6.prev = _context6.next) { case 0: _context6.next = 2; return fetch(BASE_URL + "/audits/export"); case 2: res = _context6.sent; _context6.next = 5; return res.json(); case 5: json = _context6.sent; console.log({ json: json }); case 7: case "end": return _context6.stop(); } } }, _callee6, this); })); function _exportCSV() { return _ref6.apply(this, arguments); } return _exportCSV; }() }, { key: "_exportPDF", value: function () { var _ref7 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee7() { var res, json; return regeneratorRuntime.wrap(function _callee7$(_context7) { while (1) { switch (_context7.prev = _context7.next) { case 0: _context7.next = 2; return fetch(BASE_URL + "/audits/export"); case 2: res = _context7.sent; _context7.next = 5; return res.json(); case 5: json = _context7.sent; console.log({ json: json }); case 7: case "end": return _context7.stop(); } } }, _callee7, this); })); function _exportPDF() { return _ref7.apply(this, arguments); } return _exportPDF; }() }, { key: "_deleteAudits", value: function () { var _ref8 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee8() { var res, json, rows, rowsData; return regeneratorRuntime.wrap(function _callee8$(_context8) { while (1) { switch (_context8.prev = _context8.next) { case 0: this.setState({ isLoading: false }); _context8.next = 3; return fetch(BASE_URL + "/audits?tenantId=" + this.state.tenantId, { method: "delete", headers: { "x-access-token": this.state.token } }); case 3: res = _context8.sent; _context8.next = 6; return res.json(); case 6: json = _context8.sent; console.log({ json: json }); _context8.next = 10; return audits.getAudits({ tenantId: this.state.tenantId, filter: "", filters: [], sortBy: this.state.sortBy, sortDirection: this.state.sortDirection, offset: 0, count: 50 }); case 10: rows = _context8.sent; rowsData = rows.data; console.log({ rowsData: rowsData }); this.setState({ rowsData: rowsData, isLoading: false }); case 14: case "end": return _context8.stop(); } } }, _callee8, this); })); function _deleteAudits() { return _ref8.apply(this, arguments); } return _deleteAudits; }() }, { key: "render", value: function render() { var _state = this.state, headerProps = _state.headerProps, rowsData = _state.rowsData, isLoading = _state.isLoading, error = _state.error, filters = _state.filters; if (headerProps && headerProps.length > 0) { return _react2.default.createElement(_Table.Table, { rowsData: rowsData, headerProps: headerProps, textSearch: this._textSearch, filterData: this._filterData, removeFilter: this._removeFilter, isLoading: isLoading, filters: filters, sortBy: this.state.sortBy, sortDirection: this.state.sortDirection, handleSorting: this._dataSorting, exportCSV: this._exportCSV, exportPDF: this._exportPDF, deleteAudits: this._deleteAudits }); } if (isLoading) { return _react2.default.createElement( "div", null, "loading..." ); } if (error) { return _react2.default.createElement( "div", null, error ); } return _react2.default.createElement( "div", null, "No data was found!" ); } }, { key: "__reactstandin__regenerateByEval", // @ts-ignore value: function __reactstandin__regenerateByEval(key, code) { // @ts-ignore this[key] = eval(code); } }], [{ key: "configureComponent", value: function () { var _ref9 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee9(clientId, accessKey, tenantId) { return regeneratorRuntime.wrap(function _callee9$(_context9) { while (1) { switch (_context9.prev = _context9.next) { case 0: FrontEgg.__singletonRef.__init(clientId, accessKey, tenantId); case 1: case "end": return _context9.stop(); } } }, _callee9, this); })); function configureComponent(_x9, _x10, _x11) { return _ref9.apply(this, arguments); } return configureComponent; }() }]); return FrontEgg; }(_react2.default.Component); exports.FrontEgg = FrontEgg; ; (function () { var reactHotLoader = (typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal : require('react-hot-loader')).default; if (!reactHotLoader) { return; } reactHotLoader.register(audits, "audits", "src/index.js"); reactHotLoader.register(BASE_URL, "BASE_URL", "src/index.js"); reactHotLoader.register(FrontEgg, "FrontEgg", "src/index.js"); })(); ; (function () { var leaveModule = (typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoaderGlobal : require('react-hot-loader')).leaveModule; leaveModule && leaveModule(module); })();