@kando-env/kando-ui 1.2.396 → 1.2.397-alpha.0
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/lib/Router.js +6 -1
- package/lib/Widgets/Map/MapUtils.js +2 -1
- package/lib/i18n/en.json +6 -3
- package/lib/macros/getVersion.js +2 -2
- package/lib/pages/EventsPage/EventsMapContainer/EventsMapContainer.js +3 -3
- package/lib/pages/OperationsPage/LeftPanel.js +28 -0
- package/lib/pages/OperationsPage/Map/Map.js +30 -0
- package/lib/pages/OperationsPage/Map/useMap.js +232 -0
- package/lib/pages/OperationsPage/OperationsPage.js +149 -0
- package/lib/pages/OperationsPage/OperationsPage.scss +64 -0
- package/lib/pages/OperationsPage/RightPanel.js +35 -0
- package/lib/pages/OperationsPage/index.js +11 -0
- package/package.json +1 -1
package/lib/Router.js
CHANGED
|
@@ -50,6 +50,7 @@ var _AssessmentPage = _interopRequireDefault(require("./pages/AssessmentPage/Ass
|
|
|
50
50
|
var _PollutionRiskAssessment = _interopRequireDefault(require("./pages/PollutionRiskAssessment"));
|
|
51
51
|
var _VirtualAreaDashboardPage = require("./pages/UtilityDashboardPage/VirtualAreaDashboardPage");
|
|
52
52
|
var _WWTPMap = _interopRequireDefault(require("./pages/DashboardMap/WWTPMap"));
|
|
53
|
+
var _OperationsPage = _interopRequireDefault(require("./pages/OperationsPage"));
|
|
53
54
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
54
55
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
55
56
|
var queryClient = new _reactQuery.QueryClient();
|
|
@@ -211,6 +212,10 @@ var Router = function Router() {
|
|
|
211
212
|
path: "/pollution-risk-assessment/index",
|
|
212
213
|
component: _PollutionRiskAssessment.default,
|
|
213
214
|
exact: true
|
|
215
|
+
}), /*#__PURE__*/_react.default.createElement(_reactRouterDom.Route, {
|
|
216
|
+
path: "/operations/index",
|
|
217
|
+
component: _OperationsPage.default,
|
|
218
|
+
exact: true
|
|
214
219
|
})))))));
|
|
215
220
|
};
|
|
216
221
|
var _default = Router;
|
|
@@ -223,4 +228,4 @@ var AppSpinner = (0, _styledComponents.default)(_Spinner.Spinner).withConfig({
|
|
|
223
228
|
displayName: "Router__AppSpinner",
|
|
224
229
|
componentId: "sc-6ilswc-1"
|
|
225
230
|
})(["height:100vh;"]);
|
|
226
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfYXhpb3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JlYWN0UXVlcnkiLCJfcmVhY3RSb3V0ZXJEb20iLCJfcmVhY3RUb2FzdGlmeSIsIl9yZWFjdFJlZHV4IiwiX05vdGlmaWNhdGlvbnNQYWdlIiwiX1NhbXBsaW5nc1BhZ2UiLCJfU3R5bGVzTGF5b3V0IiwiX1VybEhpc3RvcnlQcm92aWRlciIsIl91c2VRdWVyeVVSTCIsIl9wZXJtaXNzaW9uc1NsaWNlIiwiX1NhbXBsaW5nUHJvcGVydGllcyIsIl9JbXBvcnRHaXNDb250YWluZXIiLCJfSW1wb3J0R2lzUHJvY2VzcyIsIl9FdmVudHNQYWdlIiwiX0ZlZWRiYWNrIiwiX0FyZWFQYWdlIiwiX1d3dHBQYWdlIiwiX1Byb2ZpbGVQYWdlIiwiX1NpdGVQYWdlIiwiX1V0aWxpdHlEYXNoYm9hcmRQYWdlIiwiX1diZURhc2hib2FyZFBhZ2UiLCJfYWN0aW9ucyIsIl9hY3Rpb25zMiIsIl9HZXREaXIiLCJfaTE4biIsIl9TcGlubmVyIiwiX1Rvb2xiYXIiLCJfVXBsb2FkTGFiUmVzdWx0IiwiX1NsaWRlc2hvd1J1bm5lciIsIl9TbGlkZXNob3dQcm92aWRlciIsIl9Bc3Nlc3NtZW50UGFnZSIsIl9Qb2xsdXRpb25SaXNrQXNzZXNzbWVudCIsIl9WaXJ0dWFsQXJlYURhc2hib2FyZFBhZ2UiLCJfV1dUUE1hcCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwicXVlcnlDbGllbnQiLCJRdWVyeUNsaWVudCIsIlJvdXRlciIsInF1ZXJ5VXJsIiwidXNlUXVlcnlVUkwiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwibG9jYWxlUHJlZml4Iiwic2V0TG9jYWxlUHJlZml4IiwicXVlcnkiLCJ3YXRlckF1dGhvcml0eUlkRnJvbVVybCIsInBhcnNlSW50IiwidXNlRWZmZWN0IiwiRmV0Y2hQZXJtaXNzaW9ucyIsIl9yZWYiLCJfYXN5bmNUb0dlbmVyYXRvcjIiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsIl9yZXMkZGF0YSIsInJlcyIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJheGlvcyIsInBhcmFtcyIsIndhdGVyX2F1dGhvcml0eV9pZCIsInNlbnQiLCJkYXRhIiwic2V0V2F0ZXJBdXRob3JpdHkiLCJpZCIsIm5hbWUiLCJ3YXRlcl9hdXRob3JpdHlfbmFtZSIsImlzX2NhcGFjaXR5Iiwid2F0ZXJfYXV0aG9yaXR5X2lzX2NhcGFjaXR5IiwiUGVybWlzc2lvbnNTbGljZSIsImFjdGlvbnMiLCJzZXREYXNoYm9hcmRQZXJtaXNzaW9uIiwic3RvcCIsImFwcGx5IiwiYXJndW1lbnRzIiwidXBkYXRlTGFuZ3VhZ2UiLCJsb2NhbGUiLCJfY2FsbGVlMiIsInByZWZpeCIsIl9jYWxsZWUyJCIsIl9jb250ZXh0MiIsImkxOG4iLCJjaGFuZ2VMYW5ndWFnZSIsImNyZWF0ZUVsZW1lbnQiLCJBcHBMb2FkZXIiLCJBcHBTcGlubmVyIiwibGVuZ3RoIiwiUXVlcnlDbGllbnRQcm92aWRlciIsImNsaWVudCIsImNsYXNzTmFtZSIsIlRvb2xiYXIiLCJoYXNTZWFyY2giLCJUb2FzdENvbnRhaW5lciIsIlN3aXRjaCIsIlJvdXRlIiwicGF0aCIsImNvbXBvbmVudCIsIlV0aWxpdHlEYXNoYm9hcmRQYWdlIiwiV3d0cFBhZ2UiLCJleGFjdCIsIlZpcnR1YWxBcmVhRGFzaGJvYXJkUGFnZSIsIkFyZWFQYWdlIiwiV1dUUE1hcCIsIlNpdGVQYWdlIiwiUHJvZmlsZVBhZ2UiLCJGZWVkYmFjayIsIkV2ZW50c1BhZ2UiLCJJbXBvcnRQbGFubmluZ3MiLCJVcGxvYWRMYWJSZXN1bHQiLCJJbXBvcnRHaXNQcm9jZXNzIiwiV2JlRGFzaGJvYXJkUGFnZSIsIlNhbXBsaW5nc1BhZ2UiLCJTYW1wbGluZ1Byb3BlcnRpZXMiLCJOb3RpZmljYXRpb25zUGFnZSIsIkFzc2Vzc21lbnRQYWdlIiwiU2xpZGVzaG93UnVubmVyIiwiUG9sbHV0aW9uUmlza0Fzc2Vzc21lbnQiLCJfZGVmYXVsdCIsImV4cG9ydHMiLCJzdHlsZWQiLCJkaXYiLCJ3aXRoQ29uZmlnIiwiZGlzcGxheU5hbWUiLCJjb21wb25lbnRJZCIsIlNwaW5uZXIiXSwic291cmNlcyI6WyIuLi9zcmMvUm91dGVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJ2xlYWZsZXQvZGlzdC9sZWFmbGV0LmNzcyc7XG5pbXBvcnQgJ3JlYWN0LXRvYXN0aWZ5L2Rpc3QvUmVhY3RUb2FzdGlmeS5jc3MnO1xuaW1wb3J0IFJlYWN0LCB7IHVzZUVmZmVjdCwgdXNlU3RhdGUgfSBmcm9tICdyZWFjdCc7XG5pbXBvcnQgYXhpb3MgZnJvbSAnYXhpb3MnO1xuaW1wb3J0IHN0eWxlZCBmcm9tICdzdHlsZWQtY29tcG9uZW50cy9tYWNybyc7XG5pbXBvcnQgeyBRdWVyeUNsaWVudCwgUXVlcnlDbGllbnRQcm92aWRlciB9IGZyb20gJ3JlYWN0LXF1ZXJ5JztcbmltcG9ydCB7IFJvdXRlLCBTd2l0Y2ggfSBmcm9tICdyZWFjdC1yb3V0ZXItZG9tJztcbmltcG9ydCB7IFRvYXN0Q29udGFpbmVyIH0gZnJvbSAncmVhY3QtdG9hc3RpZnknO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2ggfSBmcm9tICdyZWFjdC1yZWR1eCc7XG5cbmltcG9ydCBOb3RpZmljYXRpb25zUGFnZSBmcm9tICdzcmMvcGFnZXMvTm90aWZpY2F0aW9uc1BhZ2VWMi9Ob3RpZmljYXRpb25zUGFnZSc7XG5pbXBvcnQgU2FtcGxpbmdzUGFnZSBmcm9tICdzcmMvcGFnZXMvU2FtcGxpbmdzUGFnZSc7XG5pbXBvcnQgU3R5bGVzTGF5b3V0IGZyb20gJ3NyYy9zdHlsZXMvU3R5bGVzTGF5b3V0JztcbmltcG9ydCBVcmxIaXN0b3J5UHJvdmlkZXIgZnJvbSAnc3JjL3Byb3ZpZGVycy9VcmxIaXN0b3J5L1VybEhpc3RvcnlQcm92aWRlcic7XG5pbXBvcnQgdXNlUXVlcnlVUkwgZnJvbSAnc3JjL2hvb2tzL3VzZVF1ZXJ5VVJMJztcbmltcG9ydCB7IFBlcm1pc3Npb25zU2xpY2UgfSBmcm9tICdzcmMvc3RvcmUvcGVybWlzc2lvbnMvcGVybWlzc2lvbnNTbGljZSc7XG5pbXBvcnQgeyBTYW1wbGluZ1Byb3BlcnRpZXMgfSBmcm9tICdzcmMvcGFnZXMvU2FtcGxpbmdzUGFnZS9TYW1wbGluZ1Byb3BlcnRpZXMvU2FtcGxpbmdQcm9wZXJ0aWVzJztcblxuaW1wb3J0IEltcG9ydFBsYW5uaW5ncyBmcm9tICcuL3BhZ2VzL0ltcG9ydEdpc1BhZ2UvSW1wb3J0R2lzQ29udGFpbmVyJztcbmltcG9ydCBJbXBvcnRHaXNQcm9jZXNzIGZyb20gJy4vcGFnZXMvSW1wb3J0R2lzUHJvY2Vzcyc7XG5pbXBvcnQgRXZlbnRzUGFnZSBmcm9tICcuL3BhZ2VzL0V2ZW50c1BhZ2UvRXZlbnRzUGFnZSc7XG5pbXBvcnQgRmVlZGJhY2sgZnJvbSAnLi9wYWdlcy9DYW5ueVdpZGdldC9GZWVkYmFjayc7XG5pbXBvcnQgeyBBcmVhUGFnZSB9IGZyb20gJy4vcGFnZXMvQXJlYVBhZ2UvQXJlYVBhZ2UnO1xuaW1wb3J0IFd3dHBQYWdlIGZyb20gJy4vcGFnZXMvV3d0cFBhZ2UnO1xuaW1wb3J0IHsgUHJvZmlsZVBhZ2UgfSBmcm9tICcuL3BhZ2VzL1Byb2ZpbGVQYWdlL1Byb2ZpbGVQYWdlJztcbmltcG9ydCB7IFNpdGVQYWdlIH0gZnJvbSAnLi9wYWdlcy9TaXRlUGFnZS9TaXRlUGFnZSc7XG5pbXBvcnQgeyBVdGlsaXR5RGFzaGJvYXJkUGFnZSB9IGZyb20gJy4vcGFnZXMvVXRpbGl0eURhc2hib2FyZFBhZ2UvVXRpbGl0eURhc2hib2FyZFBhZ2UnO1xuaW1wb3J0IHsgV2JlRGFzaGJvYXJkUGFnZSB9IGZyb20gJy4vcGFnZXMvV2JlRGFzaGJvYXJkL1diZURhc2hib2FyZFBhZ2UnO1xuXG5pbXBvcnQgeyBzZXRXYXRlckF1dGhvcml0eSB9IGZyb20gJy4vc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IHsgdXBkYXRlTGFuZ3VhZ2UgfSBmcm9tICcuL3N0b3JlL2NvbnRleHQvYWN0aW9ucyc7XG5cbmltcG9ydCBHZXREaXIgZnJvbSAnLi91dGlsaXRpZXMvR2V0RGlyJztcbmltcG9ydCBpMThuIGZyb20gJy4vdXRpbGl0aWVzL2kxOG4nO1xuXG5pbXBvcnQgJy4vbWFjcm9zL2dldFZlcnNpb24nO1xuaW1wb3J0ICcuL3N0eWxlcy5zY3NzJztcbmltcG9ydCB7IFNwaW5uZXIgfSBmcm9tICcuL2NvbXBvbmVudHMvU3Bpbm5lci9TcGlubmVyJztcbmltcG9ydCB7IFRvb2xiYXIgfSBmcm9tICcuL2NvbXBvbmVudHMvSGVhZGVyL1Rvb2xiYXIvVG9vbGJhcic7XG5pbXBvcnQgVXBsb2FkTGFiUmVzdWx0IGZyb20gJy4vcGFnZXMvVXBsb2FkTGFiUmVzdWx0JztcbmltcG9ydCBTbGlkZXNob3dSdW5uZXIgZnJvbSAnLi9wcm92aWRlcnMvU2xpZGVzaG93L1NsaWRlc2hvd1J1bm5lcic7XG5pbXBvcnQgU2xpZGVzaG93UHJvdmlkZXIgZnJvbSAnLi9wcm92aWRlcnMvU2xpZGVzaG93L1NsaWRlc2hvd1Byb3ZpZGVyJztcbmltcG9ydCBBc3Nlc3NtZW50UGFnZSBmcm9tICcuL3BhZ2VzL0Fzc2Vzc21lbnRQYWdlL0Fzc2Vzc21lbnRQYWdlJztcbmltcG9ydCBQb2xsdXRpb25SaXNrQXNzZXNzbWVudCBmcm9tICcuL3BhZ2VzL1BvbGx1dGlvblJpc2tBc3Nlc3NtZW50JztcbmltcG9ydCB7IFZpcnR1YWxBcmVhRGFzaGJvYXJkUGFnZSB9IGZyb20gJy4vcGFnZXMvVXRpbGl0eURhc2hib2FyZFBhZ2UvVmlydHVhbEFyZWFEYXNoYm9hcmRQYWdlJztcbmltcG9ydCBXV1RQTWFwIGZyb20gJy4vcGFnZXMvRGFzaGJvYXJkTWFwL1dXVFBNYXAnO1xuXG5jb25zdCBxdWVyeUNsaWVudCA9IG5ldyBRdWVyeUNsaWVudCgpO1xuXG5jb25zdCBSb3V0ZXIgPSAoKSA9PiB7XG4gIGNvbnN0IHF1ZXJ5VXJsID0gdXNlUXVlcnlVUkwoKTtcbiAgY29uc3QgZGlzcGF0Y2ggPSB1c2VEaXNwYXRjaCgpO1xuICBjb25zdCBbbG9jYWxlUHJlZml4LCBzZXRMb2NhbGVQcmVmaXhdID0gdXNlU3RhdGU8c3RyaW5nPigpO1xuICBjb25zdCBxdWVyeSA9IHVzZVF1ZXJ5VVJMKCk7XG4gIGNvbnN0IHdhdGVyQXV0aG9yaXR5SWRGcm9tVXJsID0gcGFyc2VJbnQoXG4gICAgcXVlcnkuZ2V0KCd3YXRlcl9hdXRob3JpdHlfaWQnKSB8fCAnMCcsXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBjb25zdCBGZXRjaFBlcm1pc3Npb25zID0gYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcmVzID0gYXdhaXQgYXhpb3MuZ2V0KCcvcGVybWlzc2lvbnMnLCB7XG4gICAgICAgIHBhcmFtczogeyB3YXRlcl9hdXRob3JpdHlfaWQ6IHdhdGVyQXV0aG9yaXR5SWRGcm9tVXJsIH0sXG4gICAgICB9KTtcblxuICAgICAgaWYgKHJlcz8uZGF0YT8uZGF0YSkge1xuICAgICAgICBkaXNwYXRjaChcbiAgICAgICAgICBzZXRXYXRlckF1dGhvcml0eSh7XG4gICAgICAgICAgICBpZDogd2F0ZXJBdXRob3JpdHlJZEZyb21VcmwsXG4gICAgICAgICAgICBuYW1lOiByZXMuZGF0YS5kYXRhLndhdGVyX2F1dGhvcml0eV9uYW1lLFxuICAgICAgICAgICAgaXNfY2FwYWNpdHk6IHJlcy5kYXRhLmRhdGEud2F0ZXJfYXV0aG9yaXR5X2lzX2NhcGFjaXR5LFxuICAgICAgICAgIH0pLFxuICAgICAgICApO1xuXG4gICAgICAgIGRpc3BhdGNoKFxuICAgICAgICAgIFBlcm1pc3Npb25zU2xpY2UuYWN0aW9ucy5zZXREYXNoYm9hcmRQZXJtaXNzaW9uKHJlcy5kYXRhLmRhdGEpLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH07XG5cbiAgICBpZiAod2F0ZXJBdXRob3JpdHlJZEZyb21VcmwpIHtcbiAgICAgIEZldGNoUGVybWlzc2lvbnMoKTtcbiAgICB9XG4gIH0sIFt3YXRlckF1dGhvcml0eUlkRnJvbVVybF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgZGlzcGF0Y2godXBkYXRlTGFuZ3VhZ2UoeyBsb2NhbGU6IGxvY2FsZVByZWZpeCB9KSk7XG4gIH0sIFtkaXNwYXRjaCwgbG9jYWxlUHJlZml4XSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgY29uc3QgcHJlZml4ID0gcXVlcnlVcmwuaGFzKCdsb2NhbGUnKVxuICAgICAgICA/IChxdWVyeVVybC5nZXQoJ2xvY2FsZScpIGFzIHN0cmluZylcbiAgICAgICAgOiAnZW4nO1xuXG4gICAgICBpMThuLmNoYW5nZUxhbmd1YWdlKHByZWZpeCk7XG4gICAgICBzZXRMb2NhbGVQcmVmaXgocHJlZml4KTtcbiAgICB9KSgpO1xuICB9LCBbcXVlcnlVcmxdKTtcblxuICBpZiAoIWxvY2FsZVByZWZpeCkge1xuICAgIHJldHVybiAoXG4gICAgICA8QXBwTG9hZGVyPlxuICAgICAgICA8QXBwU3Bpbm5lciBsZW5ndGg9XCI4MHB4XCIgLz5cbiAgICAgIDwvQXBwTG9hZGVyPlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxRdWVyeUNsaWVudFByb3ZpZGVyIGNsaWVudD17cXVlcnlDbGllbnR9PlxuICAgICAgPFVybEhpc3RvcnlQcm92aWRlcj5cbiAgICAgICAgPFNsaWRlc2hvd1Byb3ZpZGVyPlxuICAgICAgICAgIDxTdHlsZXNMYXlvdXQ+XG4gICAgICAgICAgICA8R2V0RGlyIGxvY2FsZT17bG9jYWxlUHJlZml4fSBjbGFzc05hbWU9e2xvY2FsZVByZWZpeH0+XG4gICAgICAgICAgICAgIDxUb29sYmFyIGhhc1NlYXJjaD17dHJ1ZX0gLz5cbiAgICAgICAgICAgICAgPFRvYXN0Q29udGFpbmVyIC8+XG4gICAgICAgICAgICAgIDxTd2l0Y2g+XG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL2Rhc2hib2FyZF92Mi9pbmRleFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1V0aWxpdHlEYXNoYm9hcmRQYWdlfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL2Rhc2hib2FyZF92Mi93d3RwLzppZFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1d3dHBQYWdlfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD17Jy9kYXNoYm9hcmRfdjIvdmFyZWEvOmFyZWFJRCd9XG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1ZpcnR1YWxBcmVhRGFzaGJvYXJkUGFnZX1cbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9kYXNoYm9hcmRfdjIvYXJlYS86YXJlYUlEXCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17QXJlYVBhZ2V9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPFJvdXRlIHBhdGg9XCIvY2FwYWNpdHlNYXAvaW5kZXhcIiBjb21wb25lbnQ9e1dXVFBNYXB9IC8+XG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL2Rhc2hib2FyZF92Mi9zaXRlLzpzaXRlSURcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtTaXRlUGFnZX1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZSBwYXRoPVwiL3Byb2ZpbGVzL2luZGV4XCIgY29tcG9uZW50PXtQcm9maWxlUGFnZX0gZXhhY3QgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZSBwYXRoPVwiL2ZlZWRiYWNrXCI+XG4gICAgICAgICAgICAgICAgICA8Um91dGUgcGF0aD1cIipcIiBjb21wb25lbnQ9e0ZlZWRiYWNrfSAvPlxuICAgICAgICAgICAgICAgIDwvUm91dGU+XG5cbiAgICAgICAgICAgICAgICA8Um91dGUgcGF0aD1cIi9ldmVudHNfdmlldy9pbmRleFwiIGNvbXBvbmVudD17RXZlbnRzUGFnZX0gZXhhY3QgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9pbXBvcnRfcGxhbm5pbmdzL2luZGV4XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17SW1wb3J0UGxhbm5pbmdzfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL3NhbXBsaW5ncy1saXN0L3VwbG9hZF9sYWJfcmVzdWx0XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17VXBsb2FkTGFiUmVzdWx0fVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL2ltcG9ydF9naXNfcHJvY2Vzcy9pbmRleFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e0ltcG9ydEdpc1Byb2Nlc3N9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvd2JlX2Rhc2hib2FyZC9pbmRleFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1diZURhc2hib2FyZFBhZ2V9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvc2FtcGxpbmdzLWxpc3QvaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtTYW1wbGluZ3NQYWdlfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL3NhbXBsaW5nLXByb3BlcnRpZXMvOnNhbXBsZUlkXCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17U2FtcGxpbmdQcm9wZXJ0aWVzfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL25vdGlmaWNhdGlvbnMvaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtOb3RpZmljYXRpb25zUGFnZX1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZSBwYXRoPVwiL21hcC9pbmRleFwiIGNvbXBvbmVudD17QXNzZXNzbWVudFBhZ2V9IGV4YWN0IC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvc3RhcnQvc2xpZGVzaG93XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17U2xpZGVzaG93UnVubmVyfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL3BvbGx1dGlvbi1yaXNrLWFzc2Vzc21lbnQvaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtQb2xsdXRpb25SaXNrQXNzZXNzbWVudH1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9Td2l0Y2g+XG4gICAgICAgICAgICA8L0dldERpcj5cbiAgICAgICAgICA8L1N0eWxlc0xheW91dD5cbiAgICAgICAgPC9TbGlkZXNob3dQcm92aWRlcj5cbiAgICAgIDwvVXJsSGlzdG9yeVByb3ZpZGVyPlxuICAgIDwvUXVlcnlDbGllbnRQcm92aWRlcj5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFJvdXRlcjtcblxuY29uc3QgQXBwTG9hZGVyID0gc3R5bGVkLmRpdmBcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgd2lkdGg6IDEwMHZ3O1xuYDtcblxuY29uc3QgQXBwU3Bpbm5lciA9IHN0eWxlZChTcGlubmVyKWBcbiAgaGVpZ2h0OiAxMDB2aDtcbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBQSxPQUFBO0FBQ0FBLE9BQUE7QUFDQSxJQUFBQyxNQUFBLEdBQUFDLHVCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxNQUFBLEdBQUFDLHNCQUFBLENBQUFKLE9BQUE7QUFFQSxJQUFBSyxXQUFBLEdBQUFMLE9BQUE7QUFDQSxJQUFBTSxlQUFBLEdBQUFOLE9BQUE7QUFDQSxJQUFBTyxjQUFBLEdBQUFQLE9BQUE7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
|
|
231
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfYXhpb3MiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX3JlYWN0UXVlcnkiLCJfcmVhY3RSb3V0ZXJEb20iLCJfcmVhY3RUb2FzdGlmeSIsIl9yZWFjdFJlZHV4IiwiX05vdGlmaWNhdGlvbnNQYWdlIiwiX1NhbXBsaW5nc1BhZ2UiLCJfU3R5bGVzTGF5b3V0IiwiX1VybEhpc3RvcnlQcm92aWRlciIsIl91c2VRdWVyeVVSTCIsIl9wZXJtaXNzaW9uc1NsaWNlIiwiX1NhbXBsaW5nUHJvcGVydGllcyIsIl9JbXBvcnRHaXNDb250YWluZXIiLCJfSW1wb3J0R2lzUHJvY2VzcyIsIl9FdmVudHNQYWdlIiwiX0ZlZWRiYWNrIiwiX0FyZWFQYWdlIiwiX1d3dHBQYWdlIiwiX1Byb2ZpbGVQYWdlIiwiX1NpdGVQYWdlIiwiX1V0aWxpdHlEYXNoYm9hcmRQYWdlIiwiX1diZURhc2hib2FyZFBhZ2UiLCJfYWN0aW9ucyIsIl9hY3Rpb25zMiIsIl9HZXREaXIiLCJfaTE4biIsIl9TcGlubmVyIiwiX1Rvb2xiYXIiLCJfVXBsb2FkTGFiUmVzdWx0IiwiX1NsaWRlc2hvd1J1bm5lciIsIl9TbGlkZXNob3dQcm92aWRlciIsIl9Bc3Nlc3NtZW50UGFnZSIsIl9Qb2xsdXRpb25SaXNrQXNzZXNzbWVudCIsIl9WaXJ0dWFsQXJlYURhc2hib2FyZFBhZ2UiLCJfV1dUUE1hcCIsIl9PcGVyYXRpb25zUGFnZSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwicXVlcnlDbGllbnQiLCJRdWVyeUNsaWVudCIsIlJvdXRlciIsInF1ZXJ5VXJsIiwidXNlUXVlcnlVUkwiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJfdXNlU3RhdGUyIiwiX3NsaWNlZFRvQXJyYXkyIiwibG9jYWxlUHJlZml4Iiwic2V0TG9jYWxlUHJlZml4IiwicXVlcnkiLCJ3YXRlckF1dGhvcml0eUlkRnJvbVVybCIsInBhcnNlSW50IiwidXNlRWZmZWN0IiwiRmV0Y2hQZXJtaXNzaW9ucyIsIl9yZWYiLCJfYXN5bmNUb0dlbmVyYXRvcjIiLCJfcmVnZW5lcmF0b3IiLCJtYXJrIiwiX2NhbGxlZSIsIl9yZXMkZGF0YSIsInJlcyIsIndyYXAiLCJfY2FsbGVlJCIsIl9jb250ZXh0IiwicHJldiIsIm5leHQiLCJheGlvcyIsInBhcmFtcyIsIndhdGVyX2F1dGhvcml0eV9pZCIsInNlbnQiLCJkYXRhIiwic2V0V2F0ZXJBdXRob3JpdHkiLCJpZCIsIm5hbWUiLCJ3YXRlcl9hdXRob3JpdHlfbmFtZSIsImlzX2NhcGFjaXR5Iiwid2F0ZXJfYXV0aG9yaXR5X2lzX2NhcGFjaXR5IiwiUGVybWlzc2lvbnNTbGljZSIsImFjdGlvbnMiLCJzZXREYXNoYm9hcmRQZXJtaXNzaW9uIiwic3RvcCIsImFwcGx5IiwiYXJndW1lbnRzIiwidXBkYXRlTGFuZ3VhZ2UiLCJsb2NhbGUiLCJfY2FsbGVlMiIsInByZWZpeCIsIl9jYWxsZWUyJCIsIl9jb250ZXh0MiIsImkxOG4iLCJjaGFuZ2VMYW5ndWFnZSIsImNyZWF0ZUVsZW1lbnQiLCJBcHBMb2FkZXIiLCJBcHBTcGlubmVyIiwibGVuZ3RoIiwiUXVlcnlDbGllbnRQcm92aWRlciIsImNsaWVudCIsImNsYXNzTmFtZSIsIlRvb2xiYXIiLCJoYXNTZWFyY2giLCJUb2FzdENvbnRhaW5lciIsIlN3aXRjaCIsIlJvdXRlIiwicGF0aCIsImNvbXBvbmVudCIsIlV0aWxpdHlEYXNoYm9hcmRQYWdlIiwiV3d0cFBhZ2UiLCJleGFjdCIsIlZpcnR1YWxBcmVhRGFzaGJvYXJkUGFnZSIsIkFyZWFQYWdlIiwiV1dUUE1hcCIsIlNpdGVQYWdlIiwiUHJvZmlsZVBhZ2UiLCJGZWVkYmFjayIsIkV2ZW50c1BhZ2UiLCJJbXBvcnRQbGFubmluZ3MiLCJVcGxvYWRMYWJSZXN1bHQiLCJJbXBvcnRHaXNQcm9jZXNzIiwiV2JlRGFzaGJvYXJkUGFnZSIsIlNhbXBsaW5nc1BhZ2UiLCJTYW1wbGluZ1Byb3BlcnRpZXMiLCJOb3RpZmljYXRpb25zUGFnZSIsIkFzc2Vzc21lbnRQYWdlIiwiU2xpZGVzaG93UnVubmVyIiwiUG9sbHV0aW9uUmlza0Fzc2Vzc21lbnQiLCJPcGVyYXRpb25zUGFnZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyIsInN0eWxlZCIsImRpdiIsIndpdGhDb25maWciLCJkaXNwbGF5TmFtZSIsImNvbXBvbmVudElkIiwiU3Bpbm5lciJdLCJzb3VyY2VzIjpbIi4uL3NyYy9Sb3V0ZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnbGVhZmxldC9kaXN0L2xlYWZsZXQuY3NzJztcbmltcG9ydCAncmVhY3QtdG9hc3RpZnkvZGlzdC9SZWFjdFRvYXN0aWZ5LmNzcyc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCBheGlvcyBmcm9tICdheGlvcyc7XG5pbXBvcnQgc3R5bGVkIGZyb20gJ3N0eWxlZC1jb21wb25lbnRzL21hY3JvJztcbmltcG9ydCB7IFF1ZXJ5Q2xpZW50LCBRdWVyeUNsaWVudFByb3ZpZGVyIH0gZnJvbSAncmVhY3QtcXVlcnknO1xuaW1wb3J0IHsgUm91dGUsIFN3aXRjaCB9IGZyb20gJ3JlYWN0LXJvdXRlci1kb20nO1xuaW1wb3J0IHsgVG9hc3RDb250YWluZXIgfSBmcm9tICdyZWFjdC10b2FzdGlmeSc7XG5pbXBvcnQgeyB1c2VEaXNwYXRjaCB9IGZyb20gJ3JlYWN0LXJlZHV4JztcblxuaW1wb3J0IE5vdGlmaWNhdGlvbnNQYWdlIGZyb20gJ3NyYy9wYWdlcy9Ob3RpZmljYXRpb25zUGFnZVYyL05vdGlmaWNhdGlvbnNQYWdlJztcbmltcG9ydCBTYW1wbGluZ3NQYWdlIGZyb20gJ3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlJztcbmltcG9ydCBTdHlsZXNMYXlvdXQgZnJvbSAnc3JjL3N0eWxlcy9TdHlsZXNMYXlvdXQnO1xuaW1wb3J0IFVybEhpc3RvcnlQcm92aWRlciBmcm9tICdzcmMvcHJvdmlkZXJzL1VybEhpc3RvcnkvVXJsSGlzdG9yeVByb3ZpZGVyJztcbmltcG9ydCB1c2VRdWVyeVVSTCBmcm9tICdzcmMvaG9va3MvdXNlUXVlcnlVUkwnO1xuaW1wb3J0IHsgUGVybWlzc2lvbnNTbGljZSB9IGZyb20gJ3NyYy9zdG9yZS9wZXJtaXNzaW9ucy9wZXJtaXNzaW9uc1NsaWNlJztcbmltcG9ydCB7IFNhbXBsaW5nUHJvcGVydGllcyB9IGZyb20gJ3NyYy9wYWdlcy9TYW1wbGluZ3NQYWdlL1NhbXBsaW5nUHJvcGVydGllcy9TYW1wbGluZ1Byb3BlcnRpZXMnO1xuXG5pbXBvcnQgSW1wb3J0UGxhbm5pbmdzIGZyb20gJy4vcGFnZXMvSW1wb3J0R2lzUGFnZS9JbXBvcnRHaXNDb250YWluZXInO1xuaW1wb3J0IEltcG9ydEdpc1Byb2Nlc3MgZnJvbSAnLi9wYWdlcy9JbXBvcnRHaXNQcm9jZXNzJztcbmltcG9ydCBFdmVudHNQYWdlIGZyb20gJy4vcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNQYWdlJztcbmltcG9ydCBGZWVkYmFjayBmcm9tICcuL3BhZ2VzL0Nhbm55V2lkZ2V0L0ZlZWRiYWNrJztcbmltcG9ydCB7IEFyZWFQYWdlIH0gZnJvbSAnLi9wYWdlcy9BcmVhUGFnZS9BcmVhUGFnZSc7XG5pbXBvcnQgV3d0cFBhZ2UgZnJvbSAnLi9wYWdlcy9Xd3RwUGFnZSc7XG5pbXBvcnQgeyBQcm9maWxlUGFnZSB9IGZyb20gJy4vcGFnZXMvUHJvZmlsZVBhZ2UvUHJvZmlsZVBhZ2UnO1xuaW1wb3J0IHsgU2l0ZVBhZ2UgfSBmcm9tICcuL3BhZ2VzL1NpdGVQYWdlL1NpdGVQYWdlJztcbmltcG9ydCB7IFV0aWxpdHlEYXNoYm9hcmRQYWdlIH0gZnJvbSAnLi9wYWdlcy9VdGlsaXR5RGFzaGJvYXJkUGFnZS9VdGlsaXR5RGFzaGJvYXJkUGFnZSc7XG5pbXBvcnQgeyBXYmVEYXNoYm9hcmRQYWdlIH0gZnJvbSAnLi9wYWdlcy9XYmVEYXNoYm9hcmQvV2JlRGFzaGJvYXJkUGFnZSc7XG5cbmltcG9ydCB7IHNldFdhdGVyQXV0aG9yaXR5IH0gZnJvbSAnLi9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgeyB1cGRhdGVMYW5ndWFnZSB9IGZyb20gJy4vc3RvcmUvY29udGV4dC9hY3Rpb25zJztcblxuaW1wb3J0IEdldERpciBmcm9tICcuL3V0aWxpdGllcy9HZXREaXInO1xuaW1wb3J0IGkxOG4gZnJvbSAnLi91dGlsaXRpZXMvaTE4bic7XG5cbmltcG9ydCAnLi9tYWNyb3MvZ2V0VmVyc2lvbic7XG5pbXBvcnQgJy4vc3R5bGVzLnNjc3MnO1xuaW1wb3J0IHsgU3Bpbm5lciB9IGZyb20gJy4vY29tcG9uZW50cy9TcGlubmVyL1NwaW5uZXInO1xuaW1wb3J0IHsgVG9vbGJhciB9IGZyb20gJy4vY29tcG9uZW50cy9IZWFkZXIvVG9vbGJhci9Ub29sYmFyJztcbmltcG9ydCBVcGxvYWRMYWJSZXN1bHQgZnJvbSAnLi9wYWdlcy9VcGxvYWRMYWJSZXN1bHQnO1xuaW1wb3J0IFNsaWRlc2hvd1J1bm5lciBmcm9tICcuL3Byb3ZpZGVycy9TbGlkZXNob3cvU2xpZGVzaG93UnVubmVyJztcbmltcG9ydCBTbGlkZXNob3dQcm92aWRlciBmcm9tICcuL3Byb3ZpZGVycy9TbGlkZXNob3cvU2xpZGVzaG93UHJvdmlkZXInO1xuaW1wb3J0IEFzc2Vzc21lbnRQYWdlIGZyb20gJy4vcGFnZXMvQXNzZXNzbWVudFBhZ2UvQXNzZXNzbWVudFBhZ2UnO1xuaW1wb3J0IFBvbGx1dGlvblJpc2tBc3Nlc3NtZW50IGZyb20gJy4vcGFnZXMvUG9sbHV0aW9uUmlza0Fzc2Vzc21lbnQnO1xuaW1wb3J0IHsgVmlydHVhbEFyZWFEYXNoYm9hcmRQYWdlIH0gZnJvbSAnLi9wYWdlcy9VdGlsaXR5RGFzaGJvYXJkUGFnZS9WaXJ0dWFsQXJlYURhc2hib2FyZFBhZ2UnO1xuaW1wb3J0IFdXVFBNYXAgZnJvbSAnLi9wYWdlcy9EYXNoYm9hcmRNYXAvV1dUUE1hcCc7XG5pbXBvcnQgT3BlcmF0aW9uc1BhZ2UgZnJvbSAnLi9wYWdlcy9PcGVyYXRpb25zUGFnZSc7XG5cbmNvbnN0IHF1ZXJ5Q2xpZW50ID0gbmV3IFF1ZXJ5Q2xpZW50KCk7XG5cbmNvbnN0IFJvdXRlciA9ICgpID0+IHtcbiAgY29uc3QgcXVlcnlVcmwgPSB1c2VRdWVyeVVSTCgpO1xuICBjb25zdCBkaXNwYXRjaCA9IHVzZURpc3BhdGNoKCk7XG4gIGNvbnN0IFtsb2NhbGVQcmVmaXgsIHNldExvY2FsZVByZWZpeF0gPSB1c2VTdGF0ZTxzdHJpbmc+KCk7XG4gIGNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnlVUkwoKTtcbiAgY29uc3Qgd2F0ZXJBdXRob3JpdHlJZEZyb21VcmwgPSBwYXJzZUludChcbiAgICBxdWVyeS5nZXQoJ3dhdGVyX2F1dGhvcml0eV9pZCcpIHx8ICcwJyxcbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGNvbnN0IEZldGNoUGVybWlzc2lvbnMgPSBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCByZXMgPSBhd2FpdCBheGlvcy5nZXQoJy9wZXJtaXNzaW9ucycsIHtcbiAgICAgICAgcGFyYW1zOiB7IHdhdGVyX2F1dGhvcml0eV9pZDogd2F0ZXJBdXRob3JpdHlJZEZyb21VcmwgfSxcbiAgICAgIH0pO1xuXG4gICAgICBpZiAocmVzPy5kYXRhPy5kYXRhKSB7XG4gICAgICAgIGRpc3BhdGNoKFxuICAgICAgICAgIHNldFdhdGVyQXV0aG9yaXR5KHtcbiAgICAgICAgICAgIGlkOiB3YXRlckF1dGhvcml0eUlkRnJvbVVybCxcbiAgICAgICAgICAgIG5hbWU6IHJlcy5kYXRhLmRhdGEud2F0ZXJfYXV0aG9yaXR5X25hbWUsXG4gICAgICAgICAgICBpc19jYXBhY2l0eTogcmVzLmRhdGEuZGF0YS53YXRlcl9hdXRob3JpdHlfaXNfY2FwYWNpdHksXG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG5cbiAgICAgICAgZGlzcGF0Y2goXG4gICAgICAgICAgUGVybWlzc2lvbnNTbGljZS5hY3Rpb25zLnNldERhc2hib2FyZFBlcm1pc3Npb24ocmVzLmRhdGEuZGF0YSksXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfTtcblxuICAgIGlmICh3YXRlckF1dGhvcml0eUlkRnJvbVVybCkge1xuICAgICAgRmV0Y2hQZXJtaXNzaW9ucygpO1xuICAgIH1cbiAgfSwgW3dhdGVyQXV0aG9yaXR5SWRGcm9tVXJsXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBkaXNwYXRjaCh1cGRhdGVMYW5ndWFnZSh7IGxvY2FsZTogbG9jYWxlUHJlZml4IH0pKTtcbiAgfSwgW2Rpc3BhdGNoLCBsb2NhbGVQcmVmaXhdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIChhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBwcmVmaXggPSBxdWVyeVVybC5oYXMoJ2xvY2FsZScpXG4gICAgICAgID8gKHF1ZXJ5VXJsLmdldCgnbG9jYWxlJykgYXMgc3RyaW5nKVxuICAgICAgICA6ICdlbic7XG5cbiAgICAgIGkxOG4uY2hhbmdlTGFuZ3VhZ2UocHJlZml4KTtcbiAgICAgIHNldExvY2FsZVByZWZpeChwcmVmaXgpO1xuICAgIH0pKCk7XG4gIH0sIFtxdWVyeVVybF0pO1xuXG4gIGlmICghbG9jYWxlUHJlZml4KSB7XG4gICAgcmV0dXJuIChcbiAgICAgIDxBcHBMb2FkZXI+XG4gICAgICAgIDxBcHBTcGlubmVyIGxlbmd0aD1cIjgwcHhcIiAvPlxuICAgICAgPC9BcHBMb2FkZXI+XG4gICAgKTtcbiAgfVxuXG4gIHJldHVybiAoXG4gICAgPFF1ZXJ5Q2xpZW50UHJvdmlkZXIgY2xpZW50PXtxdWVyeUNsaWVudH0+XG4gICAgICA8VXJsSGlzdG9yeVByb3ZpZGVyPlxuICAgICAgICA8U2xpZGVzaG93UHJvdmlkZXI+XG4gICAgICAgICAgPFN0eWxlc0xheW91dD5cbiAgICAgICAgICAgIDxHZXREaXIgbG9jYWxlPXtsb2NhbGVQcmVmaXh9IGNsYXNzTmFtZT17bG9jYWxlUHJlZml4fT5cbiAgICAgICAgICAgICAgPFRvb2xiYXIgaGFzU2VhcmNoPXt0cnVlfSAvPlxuICAgICAgICAgICAgICA8VG9hc3RDb250YWluZXIgLz5cbiAgICAgICAgICAgICAgPFN3aXRjaD5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvZGFzaGJvYXJkX3YyL2luZGV4XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17VXRpbGl0eURhc2hib2FyZFBhZ2V9XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvZGFzaGJvYXJkX3YyL3d3dHAvOmlkXCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17V3d0cFBhZ2V9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPXsnL2Rhc2hib2FyZF92Mi92YXJlYS86YXJlYUlEJ31cbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17VmlydHVhbEFyZWFEYXNoYm9hcmRQYWdlfVxuICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL2Rhc2hib2FyZF92Mi9hcmVhLzphcmVhSURcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtBcmVhUGFnZX1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICA8Um91dGUgcGF0aD1cIi9jYXBhY2l0eU1hcC9pbmRleFwiIGNvbXBvbmVudD17V1dUUE1hcH0gLz5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvZGFzaGJvYXJkX3YyL3NpdGUvOnNpdGVJRFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1NpdGVQYWdlfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlIHBhdGg9XCIvcHJvZmlsZXMvaW5kZXhcIiBjb21wb25lbnQ9e1Byb2ZpbGVQYWdlfSBleGFjdCAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlIHBhdGg9XCIvZmVlZGJhY2tcIj5cbiAgICAgICAgICAgICAgICAgIDxSb3V0ZSBwYXRoPVwiKlwiIGNvbXBvbmVudD17RmVlZGJhY2t9IC8+XG4gICAgICAgICAgICAgICAgPC9Sb3V0ZT5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZSBwYXRoPVwiL2V2ZW50c192aWV3L2luZGV4XCIgY29tcG9uZW50PXtFdmVudHNQYWdlfSBleGFjdCAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL2ltcG9ydF9wbGFubmluZ3MvaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtJbXBvcnRQbGFubmluZ3N9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvc2FtcGxpbmdzLWxpc3QvdXBsb2FkX2xhYl9yZXN1bHRcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtVcGxvYWRMYWJSZXN1bHR9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvaW1wb3J0X2dpc19wcm9jZXNzL2luZGV4XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17SW1wb3J0R2lzUHJvY2Vzc31cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi93YmVfZGFzaGJvYXJkL2luZGV4XCJcbiAgICAgICAgICAgICAgICAgIGNvbXBvbmVudD17V2JlRGFzaGJvYXJkUGFnZX1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9zYW1wbGluZ3MtbGlzdC9pbmRleFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1NhbXBsaW5nc1BhZ2V9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvc2FtcGxpbmctcHJvcGVydGllcy86c2FtcGxlSWRcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtTYW1wbGluZ1Byb3BlcnRpZXN9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvbm90aWZpY2F0aW9ucy9pbmRleFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e05vdGlmaWNhdGlvbnNQYWdlfVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlIHBhdGg9XCIvbWFwL2luZGV4XCIgY29tcG9uZW50PXtBc3Nlc3NtZW50UGFnZX0gZXhhY3QgLz5cblxuICAgICAgICAgICAgICAgIDxSb3V0ZVxuICAgICAgICAgICAgICAgICAgcGF0aD1cIi9zdGFydC9zbGlkZXNob3dcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtTbGlkZXNob3dSdW5uZXJ9XG4gICAgICAgICAgICAgICAgICBleGFjdFxuICAgICAgICAgICAgICAgIC8+XG5cbiAgICAgICAgICAgICAgICA8Um91dGVcbiAgICAgICAgICAgICAgICAgIHBhdGg9XCIvcG9sbHV0aW9uLXJpc2stYXNzZXNzbWVudC9pbmRleFwiXG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQ9e1BvbGx1dGlvblJpc2tBc3Nlc3NtZW50fVxuICAgICAgICAgICAgICAgICAgZXhhY3RcbiAgICAgICAgICAgICAgICAvPlxuXG4gICAgICAgICAgICAgICAgPFJvdXRlXG4gICAgICAgICAgICAgICAgICBwYXRoPVwiL29wZXJhdGlvbnMvaW5kZXhcIlxuICAgICAgICAgICAgICAgICAgY29tcG9uZW50PXtPcGVyYXRpb25zUGFnZX1cbiAgICAgICAgICAgICAgICAgIGV4YWN0XG4gICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgPC9Td2l0Y2g+XG4gICAgICAgICAgICA8L0dldERpcj5cbiAgICAgICAgICA8L1N0eWxlc0xheW91dD5cbiAgICAgICAgPC9TbGlkZXNob3dQcm92aWRlcj5cbiAgICAgIDwvVXJsSGlzdG9yeVByb3ZpZGVyPlxuICAgIDwvUXVlcnlDbGllbnRQcm92aWRlcj5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IFJvdXRlcjtcblxuY29uc3QgQXBwTG9hZGVyID0gc3R5bGVkLmRpdmBcbiAgaGVpZ2h0OiAxMDB2aDtcbiAgd2lkdGg6IDEwMHZ3O1xuYDtcblxuY29uc3QgQXBwU3Bpbm5l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
|
|
@@ -215,6 +215,7 @@ var toggleMonitoredPointsVisibility = function toggleMonitoredPointsVisibility(v
|
|
|
215
215
|
exports.toggleMonitoredPointsVisibility = toggleMonitoredPointsVisibility;
|
|
216
216
|
var edgesSpecificLogic = function edgesSpecificLogic(defaultOn, map) {
|
|
217
217
|
var checkbox = document.querySelector('#edges-checkbox');
|
|
218
|
+
if (checkbox == null) return;
|
|
218
219
|
checkbox.checked = defaultOn;
|
|
219
220
|
};
|
|
220
221
|
exports.edgesSpecificLogic = edgesSpecificLogic;
|
|
@@ -401,4 +402,4 @@ var setupCheckboxListener = function setupCheckboxListener(selector, onChange) {
|
|
|
401
402
|
});
|
|
402
403
|
};
|
|
403
404
|
exports.setupCheckboxListener = setupCheckboxListener;
|
|
404
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGVhZmxldCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2FjdGlvbnMiLCJfaTE4biIsIl9XV1RQRGFzaGJvYXJkU2xpY2UiLCJhcmVhRm9jdXNMb2dpYyIsIm1hcFJlZiIsImlzVmFsaWRBcmVhIiwiYXJlYVRvQ2VudGVyQnkiLCJtYXBJbnN0YW5jZSIsImN1cnJlbnQiLCJmaXRCb3VuZHMiLCJwYWRkaW5nIiwiZ3JvdXAiLCJwcm9wZXJ0eSIsIl9sYXllcnMiLCJrYW5kb19vYmplY3QiLCJwdXNoIiwiT2JqZWN0Iiwia2V5cyIsIkwiLCJmZWF0dXJlR3JvdXAiLCJnZXRCb3VuZHMiLCJsZW5ndGgiLCJleHBvcnRzIiwiYXJlYSIsInNob3VsZExvYWRNYXBPYmplY3RzIiwiZ2xvYmFsX2RhdGEiLCJwb2ludHMiLCJlZGdlcyIsIm1hcCIsInVuZGVmaW5lZCIsInNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMiLCJhcmVhcyIsImdsb2JhbCIsImZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAiLCJsYXllcnNUb0ZpbmQiLCJjdXJyZW50TGF5ZXIiLCJpbmNsdWRlcyIsImthbmRvX3BvaW50X3R5cGUiLCJldmVudHNDb3VudGVySWNvbnMiLCJsYXllciIsInpvb21MZXZlbCIsImljb24iLCJvcHRpb25zIiwiaWNvblNpemUiLCJldmVudHNDb3VudEljb24iLCJpY29uQW5jaG9yIiwic2V0SWNvbiIsInNldE9wYWNpdHkiLCJtdWx0aXBsZUxheWVyZWRJY29ucyIsImlzQUZld0xheWVySWNvbiIsImthbmRvX2Zld19sYXllcl9pY29uIiwibWluaUljb24iLCJwcmVzZW50Iiwia2FuZG9fc2Vjb25kYXJ5Iiwia2FuZG9fdGhpcmQiLCJzZWNvbmRhcnkiLCJ0aGlyZCIsImthbmRvX2luZGV4X29iamVjdCIsImJ1YmJsZUljb25PcHRpb25zIiwib25lTGF5ZXJJY29uT3B0aW9ucyIsIm1pZGRsZUljb25PcHRpb25zIiwidG9wSWNvbk9wdGlvbnMiLCJpY29uWm9vbUNvbnRyb2wiLCJsYXllcnMiLCJfem9vbSIsIm1hcFN0eWxlIiwibWFwQm94U3R5bGUiLCJ0aWxlTGF5ZXIiLCJjb25jYXQiLCJhdHRyaWJ1dGlvbiIsIm1heFpvb20iLCJtaW5ab29tIiwiaWQiLCJ0aWxlU2l6ZSIsInpvb21PZmZzZXQiLCJ1cGRhdGVXaGVuWm9vbWluZyIsInVwZGF0ZVdoZW5JZGxlIiwiYmFzZU1hcHMiLCJtYXBCb3hTYXRlbGxpdGVTdHlsZSIsIl9yZWYiLCJkZWZhdWx0TWFwIiwiaTE4biIsInQiLCJzYXRlbGxpdGUiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGVmYXVsdCIsInRvZ2dsZUVkZ2VzVmlzaWJpbGl0eSIsInZpc2libGUiLCJlYWNoTGF5ZXIiLCJQb2x5bGluZSIsIlN5bWJvbCIsImFycm93SGVhZCIsInNldFN0eWxlIiwib3BhY2l0eSIsInRvZ2dsZU1vbml0b3JlZFBvaW50c1Zpc2liaWxpdHkiLCJjb25zb2xlIiwid2FybiIsImVkZ2VzU3BlY2lmaWNMb2dpYyIsImRlZmF1bHRPbiIsImNoZWNrYm94IiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwiY2hlY2tlZCIsImN1c3RvbUNvbnRyb2xzIiwibGFiZWwiLCJpbnB1dFR5cGUiLCJkZW55Rm9yV2EiLCJvbkNoYW5nZSIsImlzQ2hlY2tlZCIsImFwcGVuZEN1c3RvbUNoZWNrYm94VG9MZWFmbGV0c0xheWVyQm94IiwibGVhZmxldHNDb250YWluZXIiLCJjdXN0b21Db250YWluZXIiLCJEb21FdmVudCIsIm9uIiwic3R5bGUiLCJkaXNwbGF5IiwiY3JlYXRlQ3VzdG9tQ29udHJvbCIsImNvbnRyb2wiLCJjb250YWluZXIiLCJjb250cm9sQ29udGFpbmVyIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsImlubmVySFRNTCIsImFkZEV2ZW50TGlzdGVuZXIiLCJlIiwidGFyZ2V0IiwiYXBwZW5kQ2hpbGQiLCJjdXN0b21GdW5jdGlvbmFsaXR5Rm9yTWFwTGF5ZXJzIiwibWFwVHlwZXMiLCJhcmd1bWVudHMiLCJ3YUlkIiwiZm9yV1dUUERhc2hib2FyZCIsImNvbnRyb2xsZXIiLCJwb3NpdGlvbiIsImFkZFRvIiwiZ2V0Q29udGFpbmVyIiwiZm9yRWFjaCIsImluaXRpYWxpemVNYXAiLCJtYXBab29tTGV2ZWwiLCJkaXNwYXRjaCIsInNldE1hcFpvb21MZXZlbCIsInNob3dFZGdlc0J5RGVmYXVsdCIsIk1hcCIsImNlbnRlciIsInpvb21TbmFwIiwiem9vbSIsImF0dHJpYnV0aW9uQ29udHJvbCIsInByZWZlckNhbnZhcyIsInNldE1hcCIsIndoZW5SZWFkeSIsInZhbHVlcyIsInNldFRpbWVvdXQiLCJpbnZhbGlkYXRlU2l6ZSIsImVyciIsImVycm9yIiwic3RvcmVNYXAiLCJzaWRlTmF2RXhwYW5kZWQiLCJldmVudCIsIm9yaWdpbmFsRXZlbnQiLCJrZXkiLCJjbG9zZVBvcHVwIiwiYm9keSIsImZvY3VzIiwiZ2V0Wm9vbSIsImNsdXN0ZXJHcm91cE9wdGlvbnMiLCJzcGlkZXJmeU9uTWF4Wm9vbSIsInNob3dDb3ZlcmFnZU9uSG92ZXIiLCJ6b29tVG9Cb3VuZHNPbkNsaWNrIiwiYW5pbWF0ZSIsImRpc2FibGVDbHVzdGVyaW5nQXRab29tIiwicmVtb3ZlT3V0c2lkZVZpc2libGVCb3VuZHMiLCJjaHVua2VkTG9hZGluZyIsImljb25DcmVhdGVGdW5jdGlvbiIsImNsdXN0ZXIiLCJEaXZJY29uIiwiaHRtbCIsIl9jaGlsZENvdW50IiwiUG9pbnQiLCJ6b29tTGV2ZWxzIiwiZmlsdGVyUG9pbnRzIiwiaGFzRGV2aWNlIiwiZmlsdGVyIiwicG9pbnQiLCJoYXNfZGV2aWNlIiwiZmluZFBvaW50IiwicG9pbnRJZCIsImhhc0RldmljZUNoZWNrIiwiZmluZCIsImZpbHRlckVkZ2VzIiwiaXNNb25pdG9yZWQiLCJlZGdlIiwic291cmNlUG9pbnQiLCJzb3VyY2VfcG9pbnRfaWQiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwicGFyZW50UG9pbnQiLCJ0YXJnZXRfcG9pbnRfaWQiLCJzZXR1cENoZWNrYm94TGlzdGVuZXIiLCJzZWxlY3RvciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9NYXBVdGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTCwgeyBQb2ludFR1cGxlIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBzaWRlTmF2RXhwYW5kZWQsIHN0b3JlTWFwIH0gZnJvbSAnLi4vLi4vc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IHNldE1hcCB9IGZyb20gJy4uLy4uL3N0b3JlL1dXVFBEYXNoYm9hcmQvV1dUUERhc2hib2FyZFNsaWNlJztcblxuZXhwb3J0IGNvbnN0IGFyZWFGb2N1c0xvZ2ljID0gKG1hcFJlZiwgaXNWYWxpZEFyZWEsIGFyZWFUb0NlbnRlckJ5KSA9PiB7XG4gIGxldCBtYXBJbnN0YW5jZTogYW55ID0gbWFwUmVmLmN1cnJlbnQ7XG4gIGlmIChpc1ZhbGlkQXJlYShhcmVhVG9DZW50ZXJCeSkpIHtcbiAgICBtYXBJbnN0YW5jZS5maXRCb3VuZHMoYXJlYVRvQ2VudGVyQnksIHsgcGFkZGluZzogWzAsIDBdIH0pO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IGdyb3VwOiBhbnlbXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBtYXBJbnN0YW5jZS5fbGF5ZXJzKSB7XG4gICAgICBpZiAoXG4gICAgICAgIG1hcEluc3RhbmNlLl9sYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCA9PT0gJ0FyZWEnIHx8XG4gICAgICAgIG1hcEluc3RhbmNlLl9sYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCA9PT0gJ1BvaW50J1xuICAgICAgKSB7XG4gICAgICAgIGdyb3VwLnB1c2gobWFwSW5zdGFuY2UuX2xheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChPYmplY3Qua2V5cyhMLmZlYXR1cmVHcm91cChncm91cCkuZ2V0Qm91bmRzKCkpLmxlbmd0aCAhPT0gMCkge1xuICAgICAgbWFwSW5zdGFuY2UuZml0Qm91bmRzKEwuZmVhdHVyZUdyb3VwKGdyb3VwKS5nZXRCb3VuZHMoKSwge1xuICAgICAgICBwYWRkaW5nOiBbMTAwLCAxMDBdLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG4gIC8vIG1hcEluc3RhbmNlLmludmFsaWRhdGVTaXplKHRydWUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzVmFsaWRBcmVhID0gKGFyZWEpID0+IHtcbiAgcmV0dXJuIGFyZWEgJiYgYXJlYS5sZW5ndGggPiAwICYmIE9iamVjdC5rZXlzKGFyZWFbMF0pLmxlbmd0aCA+IDA7XG59O1xuXG5leHBvcnQgY29uc3Qgc2hvdWxkTG9hZE1hcE9iamVjdHMgPSAoZ2xvYmFsX2RhdGEsIG1hcFJlZiwgcG9pbnRzLCBlZGdlcykgPT4ge1xuICByZXR1cm4gKFxuICAgIGdsb2JhbF9kYXRhLm1hcCAhPT0gdW5kZWZpbmVkICYmXG4gICAgbWFwUmVmLmN1cnJlbnQgIT09IG51bGwgJiZcbiAgICBlZGdlcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgcG9pbnRzICE9PSB1bmRlZmluZWRcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzID0gKFxuICBlZGdlcyxcbiAgYXJlYXMsXG4gIGdsb2JhbCxcbiAgbWFwUmVmLFxuICBwb2ludHMsXG4pID0+IHtcbiAgcmV0dXJuIChcbiAgICBnbG9iYWwubWFwICE9PSB1bmRlZmluZWQgJiZcbiAgICBtYXBSZWYuY3VycmVudCAhPT0gbnVsbCAmJlxuICAgIC8vIGVkZ2VzLmxlbmd0aCAhPT0gMCAmJlxuICAgIC8vIGFyZWFzLmxlbmd0aCAhPT0gMCAmJlxuICAgIHBvaW50cy5sZW5ndGggIT09IDBcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaW5kU3BlY2lmaWNMYXllcnNGcm9tTWFwID0gKFxuICBsYXllcnNUb0ZpbmQ6IHN0cmluZ1tdLFxuICBjdXJyZW50TGF5ZXIsXG4pID0+IHtcbiAgcmV0dXJuIChcbiAgICBsYXllcnNUb0ZpbmQuaW5jbHVkZXMoY3VycmVudExheWVyLmthbmRvX29iamVjdCkgJiZcbiAgICBjdXJyZW50TGF5ZXIua2FuZG9fcG9pbnRfdHlwZSAhPT0gJ01hbmhvbGUnXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgZXZlbnRzQ291bnRlckljb25zID0gKGxheWVyLCB6b29tTGV2ZWwpID0+IHtcbiAgbGV0IGljb24gPSBsYXllci5vcHRpb25zLmljb247XG4gIGljb24ub3B0aW9ucy5pY29uU2l6ZSA9IGV2ZW50c0NvdW50SWNvbih6b29tTGV2ZWwpLmljb25TaXplO1xuICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IGV2ZW50c0NvdW50SWNvbih6b29tTGV2ZWwpLmljb25BbmNob3I7XG4gIGxheWVyLnNldEljb24oaWNvbik7XG4gIGxheWVyLnNldE9wYWNpdHkoMSk7XG59O1xuXG5leHBvcnQgY29uc3QgbXVsdGlwbGVMYXllcmVkSWNvbnMgPSAobGF5ZXIsIHpvb21MZXZlbCkgPT4ge1xuICBsZXQgaWNvbiA9IGxheWVyLm9wdGlvbnMuaWNvbjtcbiAgbGV0IGlzQUZld0xheWVySWNvbiA9IGxheWVyLmthbmRvX2Zld19sYXllcl9pY29uO1xuICBsZXQgbWluaUljb24gPSB7XG4gICAgcHJlc2VudDogbGF5ZXIua2FuZG9fc2Vjb25kYXJ5IHx8IGxheWVyLmthbmRvX3RoaXJkLFxuICAgIHNlY29uZGFyeTogbGF5ZXIua2FuZG9fc2Vjb25kYXJ5LFxuICAgIHRoaXJkOiBsYXllci5rYW5kb190aGlyZCxcbiAgfTtcblxuICBpZiAobGF5ZXIua2FuZG9faW5kZXhfb2JqZWN0ID09PSAwKSB7XG4gICAgaWYgKGlzQUZld0xheWVySWNvbikge1xuICAgICAgaWNvbi5vcHRpb25zLmljb25TaXplID0gYnViYmxlSWNvbk9wdGlvbnMoem9vbUxldmVsLCBtaW5pSWNvbikuaWNvblNpemU7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IGJ1YmJsZUljb25PcHRpb25zKFxuICAgICAgICB6b29tTGV2ZWwsXG4gICAgICAgIG1pbmlJY29uLFxuICAgICAgKS5pY29uQW5jaG9yO1xuICAgIH0gZWxzZSB7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSBvbmVMYXllckljb25PcHRpb25zKHpvb21MZXZlbCkuaWNvblNpemU7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IG9uZUxheWVySWNvbk9wdGlvbnMoem9vbUxldmVsKS5pY29uQW5jaG9yO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBpZiAobGF5ZXIua2FuZG9faW5kZXhfb2JqZWN0ID09PSAxKSB7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSBtaWRkbGVJY29uT3B0aW9ucyh6b29tTGV2ZWwsIG1pbmlJY29uKS5pY29uU2l6ZTtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uQW5jaG9yID0gbWlkZGxlSWNvbk9wdGlvbnMoXG4gICAgICAgIHpvb21MZXZlbCxcbiAgICAgICAgbWluaUljb24sXG4gICAgICApLmljb25BbmNob3I7XG4gICAgfSBlbHNlIHtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uU2l6ZSA9IHRvcEljb25PcHRpb25zKHpvb21MZXZlbCwgbWluaUljb24pLmljb25TaXplO1xuICAgICAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSB0b3BJY29uT3B0aW9ucyh6b29tTGV2ZWwsIG1pbmlJY29uKS5pY29uQW5jaG9yO1xuICAgIH1cbiAgfVxuXG4gIGxheWVyLnNldEljb24oaWNvbik7XG59O1xuXG5jb25zdCBvbmVMYXllckljb25PcHRpb25zID0gKHpvb21MZXZlbCkgPT4ge1xuICByZXR1cm4ge1xuICAgIGljb25TaXplOiBbem9vbUxldmVsICogMy4zLCB6b29tTGV2ZWwgKiAzLjNdIGFzIFBvaW50VHVwbGUsXG4gICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDEuNywgem9vbUxldmVsICogMy43XSBhcyBQb2ludFR1cGxlLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGV2ZW50c0NvdW50SWNvbiA9ICh6b29tTGV2ZWwpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDIuNSwgem9vbUxldmVsICogMi41XSBhcyBQb2ludFR1cGxlLFxuICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAwLCB6b29tTGV2ZWwgKiA0XSBhcyBQb2ludFR1cGxlLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGJ1YmJsZUljb25PcHRpb25zID0gKHpvb21MZXZlbCwgbWluaUljb24pID0+IHtcbiAgaWYgKG1pbmlJY29uLnByZXNlbnQpIHtcbiAgICBpZiAobWluaUljb24uc2Vjb25kYXJ5KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuOTgsIHpvb21MZXZlbCAqIDIuM10gYXMgUG9pbnRUdXBsZSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDAsIHpvb21MZXZlbCAqIDRdIGFzIFBvaW50VHVwbGUsXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuOTgsIHpvb21MZXZlbCAqIDIuM10gYXMgUG9pbnRUdXBsZSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDAsIHpvb21MZXZlbCAqIDJdIGFzIFBvaW50VHVwbGUsXG4gICAgICB9O1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAzLjk4LCB6b29tTGV2ZWwgKiA0LjNdIGFzIFBvaW50VHVwbGUsXG4gICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogMiwgem9vbUxldmVsICogNF0gYXMgUG9pbnRUdXBsZSxcbiAgICB9O1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgbWlkZGxlSWNvbk9wdGlvbnMgPSAoem9vbUxldmVsLCBtaW5pSWNvbikgPT4ge1xuICBpZiAobWluaUljb24ucHJlc2VudCkge1xuICAgIGlmIChtaW5pSWNvbi5zZWNvbmRhcnkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMS4xLCB6b29tTGV2ZWwgKiAxLjFdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuNDUsIHpvb21MZXZlbCAqIDMuNV0sXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuMSwgem9vbUxldmVsICogMS4xXSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIC0wLjQ1LCB6b29tTGV2ZWwgKiAxLjVdLFxuICAgICAgfTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMi41LCB6b29tTGV2ZWwgKiAyLjVdLFxuICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDEuMjk1LCB6b29tTGV2ZWwgKiAzLjM1XSxcbiAgICB9O1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9wSWNvbk9wdGlvbnMgPSAoem9vbUxldmVsLCBtaW5pSWNvbikgPT4ge1xuICBpZiAobWluaUljb24ucHJlc2VudCkge1xuICAgIGlmIChtaW5pSWNvbi5zZWNvbmRhcnkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMC45LCB6b29tTGV2ZWwgKiAxLjhdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuNSwgem9vbUxldmVsICogMy44XSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMS42LCB6b29tTGV2ZWwgKiAyLjVdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuMiwgem9vbUxldmVsICogMi4xXSxcbiAgICAgIH07XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHJldHVybiB7XG4gICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDMuOSwgem9vbUxldmVsICogMy44XSxcbiAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAyLCB6b29tTGV2ZWwgKiAzLjhdLFxuICAgIH07XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBpY29uWm9vbUNvbnRyb2wgPSAobWFwKSA9PiB7XG4gIGxldCBsYXllcnMgPSBtYXAuX2xheWVycztcbiAgbGV0IHpvb21MZXZlbCA9IG1hcC5fem9vbTtcblxuICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGxheWVycykge1xuICAgIGlmIChmaW5kU3BlY2lmaWNMYXllcnNGcm9tTWFwKFsnSWNvbk51bWJlciddLCBsYXllcnNbcHJvcGVydHldKSkge1xuICAgICAgZXZlbnRzQ291bnRlckljb25zKGxheWVyc1twcm9wZXJ0eV0sIHpvb21MZXZlbCk7XG4gICAgfVxuXG4gICAgaWYgKGZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAoWydQb2ludCcsICdJY29uJ10sIGxheWVyc1twcm9wZXJ0eV0pKSB7XG4gICAgICBtdWx0aXBsZUxheWVyZWRJY29ucyhsYXllcnNbcHJvcGVydHldLCB6b29tTGV2ZWwpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAoWydTYW1wbGluZycsICdPYnNlcnZhdGlvbiddLCBsYXllcnNbcHJvcGVydHldKVxuICAgICkge1xuICAgICAgbXVsdGlwbGVMYXllcmVkSWNvbnMobGF5ZXJzW3Byb3BlcnR5XSwgem9vbUxldmVsKTtcbiAgICB9XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBtYXBTdHlsZSA9IChtYXBCb3hTdHlsZSkgPT4ge1xuICByZXR1cm4gTC50aWxlTGF5ZXIoXG4gICAgYGh0dHBzOi8vYXBpLm1hcGJveC5jb20vc3R5bGVzL3YxL25hZGF2LWthbmRvLyR7bWFwQm94U3R5bGV9L3RpbGVzLzI1Ni97en0ve3h9L3t5fUAyeD9hY2Nlc3NfdG9rZW49cGsuZXlKMUlqb2libUZrWVhZdGEyRnVaRzhpTENKaElqb2lZMnB2ZUhwcmRHUnhNSGxtZERONGJEZzBkekp4T1hjNGRTSjkuSi0yb2hxN2o0eUtOYm00Tl8tUDZxd2AsXG4gICAge1xuICAgICAgYXR0cmlidXRpb246XG4gICAgICAgICdNYXAgZGF0YSAmY29weTsgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL1wiPk9wZW5TdHJlZXRNYXA8L2E+IGNvbnRyaWJ1dG9ycywgPGEgaHJlZj1cImh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1zYS8yLjAvXCI+Q0MtQlktU0E8L2E+LCBJbWFnZXJ5IMKpIDxhIGhyZWY9XCJodHRwczovL3d3dy5tYXBib3guY29tL1wiPk1hcGJveDwvYT4nLFxuICAgICAgbWF4Wm9vbTogMTgsXG4gICAgICBtaW5ab29tOiAyLFxuICAgICAgaWQ6ICdtYXBib3gvc3RyZWV0cy12MTEnLFxuICAgICAgdGlsZVNpemU6IDUxMixcbiAgICAgIHpvb21PZmZzZXQ6IC0xLFxuICAgICAgdXBkYXRlV2hlblpvb21pbmc6IGZhbHNlLFxuICAgICAgdXBkYXRlV2hlbklkbGU6IGZhbHNlLFxuICAgIH0sXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgYmFzZU1hcHMgPSAobWFwQm94U3R5bGUsIG1hcEJveFNhdGVsbGl0ZVN0eWxlKSA9PiB7XG4gIGxldCBkZWZhdWx0TWFwID0gaTE4bi50KCdtYXAubGF5ZXJzLmRlZmF1bHQnKTtcbiAgbGV0IHNhdGVsbGl0ZSA9IGkxOG4udCgnbWFwLmxheWVycy5zYXRlbGxpdGUnKTtcbiAgcmV0dXJuIHtcbiAgICBbZGVmYXVsdE1hcF06IG1hcFN0eWxlKG1hcEJveFN0eWxlKSxcbiAgICBbc2F0ZWxsaXRlXTogbWFwU3R5bGUobWFwQm94U2F0ZWxsaXRlU3R5bGUpLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IHRvZ2dsZUVkZ2VzVmlzaWJpbGl0eSA9ICh2aXNpYmxlLCBtYXApID0+IHtcbiAgbWFwLmVhY2hMYXllcigobGF5ZXIpID0+IHtcbiAgICBpZiAoXG4gICAgICAobGF5ZXIgaW5zdGFuY2VvZiBMLlBvbHlsaW5lICYmIGxheWVyLmthbmRvX29iamVjdCAhPT0gJ0FyZWEnKSB8fFxuICAgICAgbGF5ZXIgaW5zdGFuY2VvZiBMLlN5bWJvbC5hcnJvd0hlYWRcbiAgICApIHtcbiAgICAgIGxheWVyLnNldFN0eWxlKHsgb3BhY2l0eTogdmlzaWJsZSA/IDEgOiAwIH0pO1xuICAgIH1cbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgdG9nZ2xlTW9uaXRvcmVkUG9pbnRzVmlzaWJpbGl0eSA9ICh2aXNpYmxlKSA9PiB7XG4gIGNvbnNvbGUud2FybigndG9nZ2xlTW9uaXRvcmVkUG9pbnRzVmlzaWJpbGl0eScsIHZpc2libGUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGVkZ2VzU3BlY2lmaWNMb2dpYyA9IChkZWZhdWx0T24sIG1hcCkgPT4ge1xuICBsZXQgY2hlY2tib3ggPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjZWRnZXMtY2hlY2tib3gnKTtcbiAgY2hlY2tib3guY2hlY2tlZCA9IGRlZmF1bHRPbjtcbn07XG5cbmNvbnN0IGN1c3RvbUNvbnRyb2xzID0gKG1hcCkgPT4ge1xuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIGxhYmVsOiBpMThuLnQoJ21hcC5sYXllcnMubmV0d29ya19saW5lcycpLFxuICAgICAgaWQ6ICdlZGdlcy1jaGVja2JveCcsXG4gICAgICBpbnB1dFR5cGU6ICdjaGVja2JveCcsXG4gICAgICBkZW55Rm9yV2E6IFs1MThdLFxuICAgICAgb25DaGFuZ2U6IChpc0NoZWNrZWQpID0+IHRvZ2dsZUVkZ2VzVmlzaWJpbGl0eShpc0NoZWNrZWQsIG1hcCksXG4gICAgfSxcblxuICAgIHtcbiAgICAgIGxhYmVsOiAnU2hvdyBvbmx5IG1vbml0b3JlZCBwb2ludHMnLFxuICAgICAgaWQ6ICdtb25pdG9yZWQtcG9pbnRzLWNoZWNrYm94JyxcbiAgICAgIGlucHV0VHlwZTogJ2NoZWNrYm94JyxcbiAgICAgIG9uQ2hhbmdlOiAoaXNDaGVja2VkKSA9PiB0b2dnbGVNb25pdG9yZWRQb2ludHNWaXNpYmlsaXR5KGlzQ2hlY2tlZCksXG4gICAgfSxcblxuICAgIC8vIHtcbiAgICAvLyAgIGxhYmVsOiAnQW5vdGhlciBjdXN0b20gZmVhdHVyZScsXG4gICAgLy8gICBpZDogJ2N1c3RvbS1mZWF0dXJlLWNoZWNrYm94JyxcbiAgICAvLyAgIGlucHV0VHlwZTogJ2NoZWNrYm94JyxcbiAgICAvLyAgIG9uQ2hhbmdlOiAoaXNDaGVja2VkKSA9PiBjb25zb2xlLmxvZyhgQW5vdGhlciBmZWF0dXJlIGlzIG5vdyAke2lzQ2hlY2tlZCA/ICdlbmFibGVkJyA6ICdkaXNhYmxlZCd9YCksXG4gICAgLy8gfSxcbiAgXTtcbn07XG5cbmNvbnN0IGFwcGVuZEN1c3RvbUNoZWNrYm94VG9MZWFmbGV0c0xheWVyQm94ID0gKFxuICBsZWFmbGV0c0NvbnRhaW5lcixcbiAgY3VzdG9tQ29udGFpbmVyLFxuKSA9PiB7XG4gIEwuRG9tRXZlbnQub24obGVhZmxldHNDb250YWluZXIsICdtb3VzZW92ZXInLCBmdW5jdGlvbiAoKSB7XG4gICAgY3VzdG9tQ29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuICB9KTtcblxuICBMLkRvbUV2ZW50Lm9uKGxlYWZsZXRzQ29udGFpbmVyLCAnbW91c2VvdXQnLCBmdW5jdGlvbiAoKSB7XG4gICAgY3VzdG9tQ29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gIH0pO1xufTtcblxuY29uc3QgY3JlYXRlQ3VzdG9tQ29udHJvbCA9IChjb250cm9sLCBjb250YWluZXIpID0+IHtcbiAgbGV0IGNvbnRyb2xDb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgY29udHJvbENvbnRhaW5lci5jbGFzc05hbWUgPSAnbGVhZmxldC1jb250cm9sLWxheWVycy1vdmVybGF5cyc7XG4gIGNvbnRyb2xDb250YWluZXIuaW5uZXJIVE1MID0gYFxuICAgICAgPGxhYmVsPlxuICAgICAgICA8aW5wdXQgdHlwZT1cIiR7Y29udHJvbC5pbnB1dFR5cGV9XCIgaWQ9XCIke2NvbnRyb2wuaWR9XCIgLz4gJHtjb250cm9sLmxhYmVsfVxuICAgICAgPC9sYWJlbD5cbiAgICBgO1xuXG4gIGNvbnRyb2xDb250YWluZXJcbiAgICAucXVlcnlTZWxlY3RvcihgIyR7Y29udHJvbC5pZH1gKVxuICAgIC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBmdW5jdGlvbiAoZSkge1xuICAgICAgY29uc3QgaXNDaGVja2VkID0gZS50YXJnZXQuY2hlY2tlZDtcbiAgICAgIGNvbnRyb2wub25DaGFuZ2UoaXNDaGVja2VkKTtcbiAgICB9KTtcblxuICBjb250cm9sQ29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gIGNvbnRhaW5lcj8uYXBwZW5kQ2hpbGQoY29udHJvbENvbnRhaW5lcik7XG5cbiAgYXBwZW5kQ3VzdG9tQ2hlY2tib3hUb0xlYWZsZXRzTGF5ZXJCb3goY29udGFpbmVyLCBjb250cm9sQ29udGFpbmVyKTtcbn07XG5cbmV4cG9ydCBjb25zdCBjdXN0b21GdW5jdGlvbmFsaXR5Rm9yTWFwTGF5ZXJzID0gKFxuICBtYXAsXG4gIG1hcFR5cGVzLFxuICBkZWZhdWx0T24gPSB0cnVlLFxuICB3YUlkLFxuICBmb3JXV1RQRGFzaGJvYXJkLFxuKSA9PiB7XG4gIGxldCBjb250cm9sbGVyID0gTC5jb250cm9sXG4gICAgLmxheWVycyhtYXBUeXBlcywge30sIHsgcG9zaXRpb246ICdib3R0b21yaWdodCcgfSlcbiAgICAuYWRkVG8obWFwKTtcbiAgbGV0IGNvbnRhaW5lciA9IGNvbnRyb2xsZXIuZ2V0Q29udGFpbmVyKCk7XG5cbiAgaWYgKGZvcldXVFBEYXNoYm9hcmQpIHtcbiAgICBjdXN0b21Db250cm9scyhtYXApLmZvckVhY2goKGNvbnRyb2wpID0+IHtcbiAgICAgIGlmIChjb250cm9sLmRlbnlGb3JXYSAmJiBjb250cm9sLmRlbnlGb3JXYS5pbmNsdWRlcyh3YUlkKSkgcmV0dXJuO1xuXG4gICAgICBjcmVhdGVDdXN0b21Db250cm9sKGNvbnRyb2wsIGNvbnRhaW5lcik7XG4gICAgICBlZGdlc1NwZWNpZmljTG9naWMoZGVmYXVsdE9uLCBtYXApO1xuICAgIH0pO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgaW5pdGlhbGl6ZU1hcCA9IChcbiAgbWFwWm9vbUxldmVsLFxuICBtYXBCb3hTdHlsZSxcbiAgbWFwQm94U2F0ZWxsaXRlU3R5bGUsXG4gIG1hcFJlZixcbiAgZGlzcGF0Y2gsXG4gIGlzVmFsaWRBcmVhLFxuICBhcmVhVG9DZW50ZXJCeSxcbiAgc2V0TWFwWm9vbUxldmVsLFxuICBmb3JXV1RQRGFzaGJvYXJkLFxuICBzaG93RWRnZXNCeURlZmF1bHQsXG4gIHdhSWQgPSAwLFxuKSA9PiB7XG4gIC8vIEB0cy1pZ25vcmVcbiAgbWFwUmVmLmN1cnJlbnQgPSBuZXcgTC5NYXAoJ21hcCcsIHtcbiAgICBjZW50ZXI6IFswLCAwXSxcbiAgICB6b29tU25hcDogMSxcbiAgICB6b29tOiBtYXBab29tTGV2ZWwsXG4gICAgYXR0cmlidXRpb25Db250cm9sOiBmYWxzZSxcbiAgICBwcmVmZXJDYW52YXM6IGZhbHNlLFxuICB9KTtcblxuICBpZiAoZm9yV1dUUERhc2hib2FyZCkgZGlzcGF0Y2goc2V0TWFwKG1hcFJlZi5jdXJyZW50KSk7XG5cbiAgbWFwUmVmLmN1cnJlbnQud2hlblJlYWR5KCgpID0+IHtcbiAgICBsZXQgbWFwID0gbWFwUmVmLmN1cnJlbnQ7XG4gICAgY29uc3QgbWFwVHlwZXMgPSBiYXNlTWFwcyhtYXBCb3hTdHlsZSwgbWFwQm94U2F0ZWxsaXRlU3R5bGUpO1xuXG4gICAgY3VzdG9tRnVuY3Rpb25hbGl0eUZvck1hcExheWVycyhcbiAgICAgIG1hcCxcbiAgICAgIG1hcFR5cGVzLFxuICAgICAgc2hvd0VkZ2VzQnlEZWZhdWx0LFxuICAgICAgd2FJZCxcbiAgICAgIGZvcldXVFBEYXNoYm9hcmQsXG4gICAgKTtcblxuICAgIC8vIFRoZSBuYW1lIG9mIHRoZSBsYXllciBjaGFuZ2VzIGJldHdlZW4gbGFuZ3VhZ2VzIHNvIHRoZXJlIHdhcyBhIG5lZWQgdG8gZ2V0IHRvIHRoZSBmaXJzdCBsYXllclxuICAgIE9iamVjdC52YWx1ZXMobWFwVHlwZXMpWzBdLmFkZFRvKG1hcCk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghbWFwUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0cnkge1xuICAgICAgICBtYXBSZWYuY3VycmVudC5pbnZhbGlkYXRlU2l6ZSh0cnVlKTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdlcnInLCBlcnIpO1xuICAgICAgfVxuXG4gICAgICBkaXNwYXRjaChzdG9yZU1hcChtYXBSZWYuY3VycmVudCkpO1xuICAgICAgZGlzcGF0Y2goc2lkZU5hdkV4cGFuZGVkKHRydWUpKTtcblxuICAgICAgbWFwLm9uKCdrZXlkb3duJywgKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5vcmlnaW5hbEV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgICBtYXAuY2xvc2VQb3B1cCgpO1xuICAgICAgICAgIGRvY3VtZW50LmJvZHkuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSwgMCk7XG4gICAgaWYgKG1hcFJlZi5jdXJyZW50ICYmIGlzVmFsaWRBcmVhKGFyZWFUb0NlbnRlckJ5KSkge1xuICAgICAgbWFwUmVmLmN1cnJlbnQuZml0Qm91bmRzKGFyZWFUb0NlbnRlckJ5KTtcbiAgICB9XG4gIH0pO1xuXG4gIG1hcFJlZi5jdXJyZW50Lm9uKCd6b29tZW5kJywgZnVuY3Rpb24gKGUpIHtcbiAgICBpZiAoIW1hcFJlZi5jdXJyZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGxldCB6b29tID0gbWFwUmVmLmN1cnJlbnQuZ2V0Wm9vbSgpO1xuICAgIHNldE1hcFpvb21MZXZlbCh6b29tKTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY2x1c3Rlckdyb3VwT3B0aW9ucyA9IHtcbiAgc3BpZGVyZnlPbk1heFpvb206IGZhbHNlLFxuICBzaG93Q292ZXJhZ2VPbkhvdmVyOiBmYWxzZSxcbiAgem9vbVRvQm91bmRzT25DbGljazogdHJ1ZSxcbiAgYW5pbWF0ZTogdHJ1ZSxcbiAgZGlzYWJsZUNsdXN0ZXJpbmdBdFpvb206IDE1LFxuICByZW1vdmVPdXRzaWRlVmlzaWJsZUJvdW5kczogZmFsc2UsXG4gIGNodW5rZWRMb2FkaW5nOiB0cnVlLFxuICBpY29uQ3JlYXRlRnVuY3Rpb246IChjbHVzdGVyKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBMLkRpdkljb24oe1xuICAgICAgaHRtbDogYDxkaXY+PHNwYW4+JHtjbHVzdGVyLl9jaGlsZENvdW50fTwvc3Bhbj48L2Rpdj5cbiAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdtYXJrZXItY2x1c3Rlci1uYW1lJz4ke2kxOG4udCgnaW5kdXN0cmllcycpfTwvZGl2PmAsXG4gICAgICBjbGFzc05hbWU6ICdtYXJrZXItY2x1c3RlcicsXG4gICAgICBpY29uU2l6ZTogbmV3IEwuUG9pbnQoNDAsIDQwKSxcbiAgICB9KTtcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCB6b29tTGV2ZWxzID0ge1xuICAxOiAnWExhcmdlJyxcbiAgMjogJ1hMYXJnZScsXG4gIDM6ICdYTGFyZ2UnLFxuICA0OiAnWExhcmdlJyxcbiAgNTogJ1hMYXJnZScsXG4gIDY6ICdYTGFyZ2UnLFxuICA3OiAnTGFyZ2UnLFxuICA4OiAnTGFyZ2UnLFxuICA5OiAnTGFyZ2UnLFxuICAxMDogJ0xhcmdlJyxcbiAgMTE6ICdNTGFyZ2UnLFxuICAxMjogJ01MYXJnZScsXG4gIDEzOiAnTUxhcmdlJyxcbiAgMTQ6ICdNTGFyZ2UnLFxuICAxNTogJ01lZGl1bScsXG4gIDE2OiAnTWVkaXVtJyxcbiAgMTc6ICdTbWFsbCcsXG4gIDE4OiAnU21hbGwnLFxufTtcblxuZXhwb3J0IGNvbnN0IGZpbHRlclBvaW50cyA9IChwb2ludHMsIGhhc0RldmljZSkgPT5cbiAgcG9pbnRzLmZpbHRlcigocG9pbnQpID0+IHBvaW50Lmhhc19kZXZpY2UgPT09IGhhc0RldmljZSk7XG5cbmV4cG9ydCBjb25zdCBmaW5kUG9pbnQgPSAocG9pbnRzLCBwb2ludElkLCBoYXNEZXZpY2VDaGVjaykgPT5cbiAgcG9pbnRzLmZpbmQoKHBvaW50KSA9PiBwb2ludC5pZCA9PT0gcG9pbnRJZCAmJiBoYXNEZXZpY2VDaGVjayhwb2ludCkpO1xuXG5leHBvcnQgY29uc3QgZmlsdGVyRWRnZXMgPSAoZWRnZXMsIHBvaW50cywgaXNNb25pdG9yZWQpID0+XG4gIGVkZ2VzLmZpbHRlcigoZWRnZSkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZVBvaW50ID0gZmluZFBvaW50KHBvaW50cywgZWRnZS5zb3VyY2VfcG9pbnRfaWQsIChwb2ludCkgPT5cbiAgICAgIGlzTW9uaXRvcmVkXG4gICAgICAgID8gcG9pbnQuaGFzX2RldmljZSB8fCBlZGdlLmRlc2NlbmRhbnRzX2hhc19kZXZpY2VcbiAgICAgICAgOiAhcG9pbnQuZGVzY2VuZGFudHNfaGFzX2RldmljZSxcbiAgICApO1xuXG4gICAgY29uc3QgcGFyZW50UG9pbnQgPSBmaW5kUG9pbnQocG9pbnRzLCBlZGdlLnRhcmdldF9wb2ludF9pZCwgKHBvaW50KSA9PlxuICAgICAgaXNNb25pdG9yZWRcbiAgICAgICAgPyBlZGdlLmRlc2NlbmRhbnRzX2hhc19kZXZpY2UgfHwgc291cmNlUG9pbnQgIT09IHVuZGVmaW5lZFxuICAgICAgICA6ICFwb2ludC5kZXNjZW5kYW50c19oYXNfZGV2aWNlLFxuICAgICk7XG5cbiAgICByZXR1cm4gc291cmNlUG9pbnQgJiYgcGFyZW50UG9pbnQ7XG4gIH0pO1xuXG5leHBvcnQgY29uc3Qgc2V0dXBDaGVja2JveExpc3RlbmVyID0gKHNlbGVjdG9yLCBvbkNoYW5nZSkgPT4ge1xuICBjb25zdCBjaGVja2JveCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpO1xuICBpZiAoY2hlY2tib3ggPT09IG51bGwpIHJldHVybjtcbiAgY2hlY2tib3guYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgKCkgPT4gb25DaGFuZ2UoY2hlY2tib3guY2hlY2tlZCkpO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxRQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxRQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxLQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRyxtQkFBQSxHQUFBSCxPQUFBO0FBRU8sSUFBTUksY0FBYyxHQUFHLFNBQWpCQSxjQUFjQSxDQUFJQyxNQUFNLEVBQUVDLFdBQVcsRUFBRUMsY0FBYyxFQUFLO0VBQ3JFLElBQUlDLFdBQWdCLEdBQUdILE1BQU0sQ0FBQ0ksT0FBTztFQUNyQyxJQUFJSCxXQUFXLENBQUNDLGNBQWMsQ0FBQyxFQUFFO0lBQy9CQyxXQUFXLENBQUNFLFNBQVMsQ0FBQ0gsY0FBYyxFQUFFO01BQUVJLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQUUsQ0FBQyxDQUFDO0VBQzVELENBQUMsTUFBTTtJQUNMLElBQU1DLEtBQVksR0FBRyxFQUFFO0lBRXZCLEtBQUssSUFBTUMsUUFBUSxJQUFJTCxXQUFXLENBQUNNLE9BQU8sRUFBRTtNQUMxQyxJQUNFTixXQUFXLENBQUNNLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUNFLFlBQVksS0FBSyxNQUFNLElBQ3JEUCxXQUFXLENBQUNNLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUNFLFlBQVksS0FBSyxPQUFPLEVBQ3REO1FBQ0FILEtBQUssQ0FBQ0ksSUFBSSxDQUFDUixXQUFXLENBQUNNLE9B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
|
|
405
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGVhZmxldCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX2FjdGlvbnMiLCJfaTE4biIsIl9XV1RQRGFzaGJvYXJkU2xpY2UiLCJhcmVhRm9jdXNMb2dpYyIsIm1hcFJlZiIsImlzVmFsaWRBcmVhIiwiYXJlYVRvQ2VudGVyQnkiLCJtYXBJbnN0YW5jZSIsImN1cnJlbnQiLCJmaXRCb3VuZHMiLCJwYWRkaW5nIiwiZ3JvdXAiLCJwcm9wZXJ0eSIsIl9sYXllcnMiLCJrYW5kb19vYmplY3QiLCJwdXNoIiwiT2JqZWN0Iiwia2V5cyIsIkwiLCJmZWF0dXJlR3JvdXAiLCJnZXRCb3VuZHMiLCJsZW5ndGgiLCJleHBvcnRzIiwiYXJlYSIsInNob3VsZExvYWRNYXBPYmplY3RzIiwiZ2xvYmFsX2RhdGEiLCJwb2ludHMiLCJlZGdlcyIsIm1hcCIsInVuZGVmaW5lZCIsInNob3VkTG9hZERlcGVuZGVudE1hcE9iamVjdHMiLCJhcmVhcyIsImdsb2JhbCIsImZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAiLCJsYXllcnNUb0ZpbmQiLCJjdXJyZW50TGF5ZXIiLCJpbmNsdWRlcyIsImthbmRvX3BvaW50X3R5cGUiLCJldmVudHNDb3VudGVySWNvbnMiLCJsYXllciIsInpvb21MZXZlbCIsImljb24iLCJvcHRpb25zIiwiaWNvblNpemUiLCJldmVudHNDb3VudEljb24iLCJpY29uQW5jaG9yIiwic2V0SWNvbiIsInNldE9wYWNpdHkiLCJtdWx0aXBsZUxheWVyZWRJY29ucyIsImlzQUZld0xheWVySWNvbiIsImthbmRvX2Zld19sYXllcl9pY29uIiwibWluaUljb24iLCJwcmVzZW50Iiwia2FuZG9fc2Vjb25kYXJ5Iiwia2FuZG9fdGhpcmQiLCJzZWNvbmRhcnkiLCJ0aGlyZCIsImthbmRvX2luZGV4X29iamVjdCIsImJ1YmJsZUljb25PcHRpb25zIiwib25lTGF5ZXJJY29uT3B0aW9ucyIsIm1pZGRsZUljb25PcHRpb25zIiwidG9wSWNvbk9wdGlvbnMiLCJpY29uWm9vbUNvbnRyb2wiLCJsYXllcnMiLCJfem9vbSIsIm1hcFN0eWxlIiwibWFwQm94U3R5bGUiLCJ0aWxlTGF5ZXIiLCJjb25jYXQiLCJhdHRyaWJ1dGlvbiIsIm1heFpvb20iLCJtaW5ab29tIiwiaWQiLCJ0aWxlU2l6ZSIsInpvb21PZmZzZXQiLCJ1cGRhdGVXaGVuWm9vbWluZyIsInVwZGF0ZVdoZW5JZGxlIiwiYmFzZU1hcHMiLCJtYXBCb3hTYXRlbGxpdGVTdHlsZSIsIl9yZWYiLCJkZWZhdWx0TWFwIiwiaTE4biIsInQiLCJzYXRlbGxpdGUiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGVmYXVsdCIsInRvZ2dsZUVkZ2VzVmlzaWJpbGl0eSIsInZpc2libGUiLCJlYWNoTGF5ZXIiLCJQb2x5bGluZSIsIlN5bWJvbCIsImFycm93SGVhZCIsInNldFN0eWxlIiwib3BhY2l0eSIsInRvZ2dsZU1vbml0b3JlZFBvaW50c1Zpc2liaWxpdHkiLCJjb25zb2xlIiwid2FybiIsImVkZ2VzU3BlY2lmaWNMb2dpYyIsImRlZmF1bHRPbiIsImNoZWNrYm94IiwiZG9jdW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwiY2hlY2tlZCIsImN1c3RvbUNvbnRyb2xzIiwibGFiZWwiLCJpbnB1dFR5cGUiLCJkZW55Rm9yV2EiLCJvbkNoYW5nZSIsImlzQ2hlY2tlZCIsImFwcGVuZEN1c3RvbUNoZWNrYm94VG9MZWFmbGV0c0xheWVyQm94IiwibGVhZmxldHNDb250YWluZXIiLCJjdXN0b21Db250YWluZXIiLCJEb21FdmVudCIsIm9uIiwic3R5bGUiLCJkaXNwbGF5IiwiY3JlYXRlQ3VzdG9tQ29udHJvbCIsImNvbnRyb2wiLCJjb250YWluZXIiLCJjb250cm9sQ29udGFpbmVyIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsImlubmVySFRNTCIsImFkZEV2ZW50TGlzdGVuZXIiLCJlIiwidGFyZ2V0IiwiYXBwZW5kQ2hpbGQiLCJjdXN0b21GdW5jdGlvbmFsaXR5Rm9yTWFwTGF5ZXJzIiwibWFwVHlwZXMiLCJhcmd1bWVudHMiLCJ3YUlkIiwiZm9yV1dUUERhc2hib2FyZCIsImNvbnRyb2xsZXIiLCJwb3NpdGlvbiIsImFkZFRvIiwiZ2V0Q29udGFpbmVyIiwiZm9yRWFjaCIsImluaXRpYWxpemVNYXAiLCJtYXBab29tTGV2ZWwiLCJkaXNwYXRjaCIsInNldE1hcFpvb21MZXZlbCIsInNob3dFZGdlc0J5RGVmYXVsdCIsIk1hcCIsImNlbnRlciIsInpvb21TbmFwIiwiem9vbSIsImF0dHJpYnV0aW9uQ29udHJvbCIsInByZWZlckNhbnZhcyIsInNldE1hcCIsIndoZW5SZWFkeSIsInZhbHVlcyIsInNldFRpbWVvdXQiLCJpbnZhbGlkYXRlU2l6ZSIsImVyciIsImVycm9yIiwic3RvcmVNYXAiLCJzaWRlTmF2RXhwYW5kZWQiLCJldmVudCIsIm9yaWdpbmFsRXZlbnQiLCJrZXkiLCJjbG9zZVBvcHVwIiwiYm9keSIsImZvY3VzIiwiZ2V0Wm9vbSIsImNsdXN0ZXJHcm91cE9wdGlvbnMiLCJzcGlkZXJmeU9uTWF4Wm9vbSIsInNob3dDb3ZlcmFnZU9uSG92ZXIiLCJ6b29tVG9Cb3VuZHNPbkNsaWNrIiwiYW5pbWF0ZSIsImRpc2FibGVDbHVzdGVyaW5nQXRab29tIiwicmVtb3ZlT3V0c2lkZVZpc2libGVCb3VuZHMiLCJjaHVua2VkTG9hZGluZyIsImljb25DcmVhdGVGdW5jdGlvbiIsImNsdXN0ZXIiLCJEaXZJY29uIiwiaHRtbCIsIl9jaGlsZENvdW50IiwiUG9pbnQiLCJ6b29tTGV2ZWxzIiwiZmlsdGVyUG9pbnRzIiwiaGFzRGV2aWNlIiwiZmlsdGVyIiwicG9pbnQiLCJoYXNfZGV2aWNlIiwiZmluZFBvaW50IiwicG9pbnRJZCIsImhhc0RldmljZUNoZWNrIiwiZmluZCIsImZpbHRlckVkZ2VzIiwiaXNNb25pdG9yZWQiLCJlZGdlIiwic291cmNlUG9pbnQiLCJzb3VyY2VfcG9pbnRfaWQiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwicGFyZW50UG9pbnQiLCJ0YXJnZXRfcG9pbnRfaWQiLCJzZXR1cENoZWNrYm94TGlzdGVuZXIiLCJzZWxlY3RvciJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9XaWRnZXRzL01hcC9NYXBVdGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgTCwgeyBQb2ludFR1cGxlIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgeyBzaWRlTmF2RXhwYW5kZWQsIHN0b3JlTWFwIH0gZnJvbSAnLi4vLi4vc3RvcmUvZ2xvYmFsL2FjdGlvbnMnO1xuaW1wb3J0IGkxOG4gZnJvbSAnc3JjL3V0aWxpdGllcy9pMThuJztcbmltcG9ydCB7IHNldE1hcCB9IGZyb20gJy4uLy4uL3N0b3JlL1dXVFBEYXNoYm9hcmQvV1dUUERhc2hib2FyZFNsaWNlJztcblxuZXhwb3J0IGNvbnN0IGFyZWFGb2N1c0xvZ2ljID0gKG1hcFJlZiwgaXNWYWxpZEFyZWEsIGFyZWFUb0NlbnRlckJ5KSA9PiB7XG4gIGxldCBtYXBJbnN0YW5jZTogYW55ID0gbWFwUmVmLmN1cnJlbnQ7XG4gIGlmIChpc1ZhbGlkQXJlYShhcmVhVG9DZW50ZXJCeSkpIHtcbiAgICBtYXBJbnN0YW5jZS5maXRCb3VuZHMoYXJlYVRvQ2VudGVyQnksIHsgcGFkZGluZzogWzAsIDBdIH0pO1xuICB9IGVsc2Uge1xuICAgIGNvbnN0IGdyb3VwOiBhbnlbXSA9IFtdO1xuXG4gICAgZm9yIChjb25zdCBwcm9wZXJ0eSBpbiBtYXBJbnN0YW5jZS5fbGF5ZXJzKSB7XG4gICAgICBpZiAoXG4gICAgICAgIG1hcEluc3RhbmNlLl9sYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCA9PT0gJ0FyZWEnIHx8XG4gICAgICAgIG1hcEluc3RhbmNlLl9sYXllcnNbcHJvcGVydHldLmthbmRvX29iamVjdCA9PT0gJ1BvaW50J1xuICAgICAgKSB7XG4gICAgICAgIGdyb3VwLnB1c2gobWFwSW5zdGFuY2UuX2xheWVyc1twcm9wZXJ0eV0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlmIChPYmplY3Qua2V5cyhMLmZlYXR1cmVHcm91cChncm91cCkuZ2V0Qm91bmRzKCkpLmxlbmd0aCAhPT0gMCkge1xuICAgICAgbWFwSW5zdGFuY2UuZml0Qm91bmRzKEwuZmVhdHVyZUdyb3VwKGdyb3VwKS5nZXRCb3VuZHMoKSwge1xuICAgICAgICBwYWRkaW5nOiBbMTAwLCAxMDBdLFxuICAgICAgfSk7XG4gICAgfVxuICB9XG4gIC8vIG1hcEluc3RhbmNlLmludmFsaWRhdGVTaXplKHRydWUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzVmFsaWRBcmVhID0gKGFyZWEpID0+IHtcbiAgcmV0dXJuIGFyZWEgJiYgYXJlYS5sZW5ndGggPiAwICYmIE9iamVjdC5rZXlzKGFyZWFbMF0pLmxlbmd0aCA+IDA7XG59O1xuXG5leHBvcnQgY29uc3Qgc2hvdWxkTG9hZE1hcE9iamVjdHMgPSAoZ2xvYmFsX2RhdGEsIG1hcFJlZiwgcG9pbnRzLCBlZGdlcykgPT4ge1xuICByZXR1cm4gKFxuICAgIGdsb2JhbF9kYXRhLm1hcCAhPT0gdW5kZWZpbmVkICYmXG4gICAgbWFwUmVmLmN1cnJlbnQgIT09IG51bGwgJiZcbiAgICBlZGdlcyAhPT0gdW5kZWZpbmVkICYmXG4gICAgcG9pbnRzICE9PSB1bmRlZmluZWRcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBzaG91ZExvYWREZXBlbmRlbnRNYXBPYmplY3RzID0gKFxuICBlZGdlcyxcbiAgYXJlYXMsXG4gIGdsb2JhbCxcbiAgbWFwUmVmLFxuICBwb2ludHMsXG4pID0+IHtcbiAgcmV0dXJuIChcbiAgICBnbG9iYWwubWFwICE9PSB1bmRlZmluZWQgJiZcbiAgICBtYXBSZWYuY3VycmVudCAhPT0gbnVsbCAmJlxuICAgIC8vIGVkZ2VzLmxlbmd0aCAhPT0gMCAmJlxuICAgIC8vIGFyZWFzLmxlbmd0aCAhPT0gMCAmJlxuICAgIHBvaW50cy5sZW5ndGggIT09IDBcbiAgKTtcbn07XG5cbmV4cG9ydCBjb25zdCBmaW5kU3BlY2lmaWNMYXllcnNGcm9tTWFwID0gKFxuICBsYXllcnNUb0ZpbmQ6IHN0cmluZ1tdLFxuICBjdXJyZW50TGF5ZXIsXG4pID0+IHtcbiAgcmV0dXJuIChcbiAgICBsYXllcnNUb0ZpbmQuaW5jbHVkZXMoY3VycmVudExheWVyLmthbmRvX29iamVjdCkgJiZcbiAgICBjdXJyZW50TGF5ZXIua2FuZG9fcG9pbnRfdHlwZSAhPT0gJ01hbmhvbGUnXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgZXZlbnRzQ291bnRlckljb25zID0gKGxheWVyLCB6b29tTGV2ZWwpID0+IHtcbiAgbGV0IGljb24gPSBsYXllci5vcHRpb25zLmljb247XG4gIGljb24ub3B0aW9ucy5pY29uU2l6ZSA9IGV2ZW50c0NvdW50SWNvbih6b29tTGV2ZWwpLmljb25TaXplO1xuICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IGV2ZW50c0NvdW50SWNvbih6b29tTGV2ZWwpLmljb25BbmNob3I7XG4gIGxheWVyLnNldEljb24oaWNvbik7XG4gIGxheWVyLnNldE9wYWNpdHkoMSk7XG59O1xuXG5leHBvcnQgY29uc3QgbXVsdGlwbGVMYXllcmVkSWNvbnMgPSAobGF5ZXIsIHpvb21MZXZlbCkgPT4ge1xuICBsZXQgaWNvbiA9IGxheWVyLm9wdGlvbnMuaWNvbjtcbiAgbGV0IGlzQUZld0xheWVySWNvbiA9IGxheWVyLmthbmRvX2Zld19sYXllcl9pY29uO1xuICBsZXQgbWluaUljb24gPSB7XG4gICAgcHJlc2VudDogbGF5ZXIua2FuZG9fc2Vjb25kYXJ5IHx8IGxheWVyLmthbmRvX3RoaXJkLFxuICAgIHNlY29uZGFyeTogbGF5ZXIua2FuZG9fc2Vjb25kYXJ5LFxuICAgIHRoaXJkOiBsYXllci5rYW5kb190aGlyZCxcbiAgfTtcblxuICBpZiAobGF5ZXIua2FuZG9faW5kZXhfb2JqZWN0ID09PSAwKSB7XG4gICAgaWYgKGlzQUZld0xheWVySWNvbikge1xuICAgICAgaWNvbi5vcHRpb25zLmljb25TaXplID0gYnViYmxlSWNvbk9wdGlvbnMoem9vbUxldmVsLCBtaW5pSWNvbikuaWNvblNpemU7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IGJ1YmJsZUljb25PcHRpb25zKFxuICAgICAgICB6b29tTGV2ZWwsXG4gICAgICAgIG1pbmlJY29uLFxuICAgICAgKS5pY29uQW5jaG9yO1xuICAgIH0gZWxzZSB7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSBvbmVMYXllckljb25PcHRpb25zKHpvb21MZXZlbCkuaWNvblNpemU7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvbkFuY2hvciA9IG9uZUxheWVySWNvbk9wdGlvbnMoem9vbUxldmVsKS5pY29uQW5jaG9yO1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICBpZiAobGF5ZXIua2FuZG9faW5kZXhfb2JqZWN0ID09PSAxKSB7XG4gICAgICBpY29uLm9wdGlvbnMuaWNvblNpemUgPSBtaWRkbGVJY29uT3B0aW9ucyh6b29tTGV2ZWwsIG1pbmlJY29uKS5pY29uU2l6ZTtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uQW5jaG9yID0gbWlkZGxlSWNvbk9wdGlvbnMoXG4gICAgICAgIHpvb21MZXZlbCxcbiAgICAgICAgbWluaUljb24sXG4gICAgICApLmljb25BbmNob3I7XG4gICAgfSBlbHNlIHtcbiAgICAgIGljb24ub3B0aW9ucy5pY29uU2l6ZSA9IHRvcEljb25PcHRpb25zKHpvb21MZXZlbCwgbWluaUljb24pLmljb25TaXplO1xuICAgICAgaWNvbi5vcHRpb25zLmljb25BbmNob3IgPSB0b3BJY29uT3B0aW9ucyh6b29tTGV2ZWwsIG1pbmlJY29uKS5pY29uQW5jaG9yO1xuICAgIH1cbiAgfVxuXG4gIGxheWVyLnNldEljb24oaWNvbik7XG59O1xuXG5jb25zdCBvbmVMYXllckljb25PcHRpb25zID0gKHpvb21MZXZlbCkgPT4ge1xuICByZXR1cm4ge1xuICAgIGljb25TaXplOiBbem9vbUxldmVsICogMy4zLCB6b29tTGV2ZWwgKiAzLjNdIGFzIFBvaW50VHVwbGUsXG4gICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDEuNywgem9vbUxldmVsICogMy43XSBhcyBQb2ludFR1cGxlLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGV2ZW50c0NvdW50SWNvbiA9ICh6b29tTGV2ZWwpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDIuNSwgem9vbUxldmVsICogMi41XSBhcyBQb2ludFR1cGxlLFxuICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAwLCB6b29tTGV2ZWwgKiA0XSBhcyBQb2ludFR1cGxlLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IGJ1YmJsZUljb25PcHRpb25zID0gKHpvb21MZXZlbCwgbWluaUljb24pID0+IHtcbiAgaWYgKG1pbmlJY29uLnByZXNlbnQpIHtcbiAgICBpZiAobWluaUljb24uc2Vjb25kYXJ5KSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuOTgsIHpvb21MZXZlbCAqIDIuM10gYXMgUG9pbnRUdXBsZSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDAsIHpvb21MZXZlbCAqIDRdIGFzIFBvaW50VHVwbGUsXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuOTgsIHpvb21MZXZlbCAqIDIuM10gYXMgUG9pbnRUdXBsZSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDAsIHpvb21MZXZlbCAqIDJdIGFzIFBvaW50VHVwbGUsXG4gICAgICB9O1xuICAgIH1cbiAgfSBlbHNlIHtcbiAgICByZXR1cm4ge1xuICAgICAgaWNvblNpemU6IFt6b29tTGV2ZWwgKiAzLjk4LCB6b29tTGV2ZWwgKiA0LjNdIGFzIFBvaW50VHVwbGUsXG4gICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogMiwgem9vbUxldmVsICogNF0gYXMgUG9pbnRUdXBsZSxcbiAgICB9O1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgbWlkZGxlSWNvbk9wdGlvbnMgPSAoem9vbUxldmVsLCBtaW5pSWNvbikgPT4ge1xuICBpZiAobWluaUljb24ucHJlc2VudCkge1xuICAgIGlmIChtaW5pSWNvbi5zZWNvbmRhcnkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMS4xLCB6b29tTGV2ZWwgKiAxLjFdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuNDUsIHpvb21MZXZlbCAqIDMuNV0sXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDEuMSwgem9vbUxldmVsICogMS4xXSxcbiAgICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIC0wLjQ1LCB6b29tTGV2ZWwgKiAxLjVdLFxuICAgICAgfTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIHtcbiAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMi41LCB6b29tTGV2ZWwgKiAyLjVdLFxuICAgICAgaWNvbkFuY2hvcjogW3pvb21MZXZlbCAqIDEuMjk1LCB6b29tTGV2ZWwgKiAzLjM1XSxcbiAgICB9O1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9wSWNvbk9wdGlvbnMgPSAoem9vbUxldmVsLCBtaW5pSWNvbikgPT4ge1xuICBpZiAobWluaUljb24ucHJlc2VudCkge1xuICAgIGlmIChtaW5pSWNvbi5zZWNvbmRhcnkpIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMC45LCB6b29tTGV2ZWwgKiAxLjhdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuNSwgem9vbUxldmVsICogMy44XSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGljb25TaXplOiBbem9vbUxldmVsICogMS42LCB6b29tTGV2ZWwgKiAyLjVdLFxuICAgICAgICBpY29uQW5jaG9yOiBbem9vbUxldmVsICogLTAuMiwgem9vbUxldmVsICogMi4xXSxcbiAgICAgIH07XG4gICAgfVxuICB9IGVsc2Uge1xuICAgIHJldHVybiB7XG4gICAgICBpY29uU2l6ZTogW3pvb21MZXZlbCAqIDMuOSwgem9vbUxldmVsICogMy44XSxcbiAgICAgIGljb25BbmNob3I6IFt6b29tTGV2ZWwgKiAyLCB6b29tTGV2ZWwgKiAzLjhdLFxuICAgIH07XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBpY29uWm9vbUNvbnRyb2wgPSAobWFwKSA9PiB7XG4gIGxldCBsYXllcnMgPSBtYXAuX2xheWVycztcbiAgbGV0IHpvb21MZXZlbCA9IG1hcC5fem9vbTtcblxuICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGxheWVycykge1xuICAgIGlmIChmaW5kU3BlY2lmaWNMYXllcnNGcm9tTWFwKFsnSWNvbk51bWJlciddLCBsYXllcnNbcHJvcGVydHldKSkge1xuICAgICAgZXZlbnRzQ291bnRlckljb25zKGxheWVyc1twcm9wZXJ0eV0sIHpvb21MZXZlbCk7XG4gICAgfVxuXG4gICAgaWYgKGZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAoWydQb2ludCcsICdJY29uJ10sIGxheWVyc1twcm9wZXJ0eV0pKSB7XG4gICAgICBtdWx0aXBsZUxheWVyZWRJY29ucyhsYXllcnNbcHJvcGVydHldLCB6b29tTGV2ZWwpO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGZpbmRTcGVjaWZpY0xheWVyc0Zyb21NYXAoWydTYW1wbGluZycsICdPYnNlcnZhdGlvbiddLCBsYXllcnNbcHJvcGVydHldKVxuICAgICkge1xuICAgICAgbXVsdGlwbGVMYXllcmVkSWNvbnMobGF5ZXJzW3Byb3BlcnR5XSwgem9vbUxldmVsKTtcbiAgICB9XG4gIH1cbn07XG5cbmV4cG9ydCBjb25zdCBtYXBTdHlsZSA9IChtYXBCb3hTdHlsZSkgPT4ge1xuICByZXR1cm4gTC50aWxlTGF5ZXIoXG4gICAgYGh0dHBzOi8vYXBpLm1hcGJveC5jb20vc3R5bGVzL3YxL25hZGF2LWthbmRvLyR7bWFwQm94U3R5bGV9L3RpbGVzLzI1Ni97en0ve3h9L3t5fUAyeD9hY2Nlc3NfdG9rZW49cGsuZXlKMUlqb2libUZrWVhZdGEyRnVaRzhpTENKaElqb2lZMnB2ZUhwcmRHUnhNSGxtZERONGJEZzBkekp4T1hjNGRTSjkuSi0yb2hxN2o0eUtOYm00Tl8tUDZxd2AsXG4gICAge1xuICAgICAgYXR0cmlidXRpb246XG4gICAgICAgICdNYXAgZGF0YSAmY29weTsgPGEgaHJlZj1cImh0dHBzOi8vd3d3Lm9wZW5zdHJlZXRtYXAub3JnL1wiPk9wZW5TdHJlZXRNYXA8L2E+IGNvbnRyaWJ1dG9ycywgPGEgaHJlZj1cImh0dHBzOi8vY3JlYXRpdmVjb21tb25zLm9yZy9saWNlbnNlcy9ieS1zYS8yLjAvXCI+Q0MtQlktU0E8L2E+LCBJbWFnZXJ5IMKpIDxhIGhyZWY9XCJodHRwczovL3d3dy5tYXBib3guY29tL1wiPk1hcGJveDwvYT4nLFxuICAgICAgbWF4Wm9vbTogMTgsXG4gICAgICBtaW5ab29tOiAyLFxuICAgICAgaWQ6ICdtYXBib3gvc3RyZWV0cy12MTEnLFxuICAgICAgdGlsZVNpemU6IDUxMixcbiAgICAgIHpvb21PZmZzZXQ6IC0xLFxuICAgICAgdXBkYXRlV2hlblpvb21pbmc6IGZhbHNlLFxuICAgICAgdXBkYXRlV2hlbklkbGU6IGZhbHNlLFxuICAgIH0sXG4gICk7XG59O1xuXG5leHBvcnQgY29uc3QgYmFzZU1hcHMgPSAobWFwQm94U3R5bGUsIG1hcEJveFNhdGVsbGl0ZVN0eWxlKSA9PiB7XG4gIGxldCBkZWZhdWx0TWFwID0gaTE4bi50KCdtYXAubGF5ZXJzLmRlZmF1bHQnKTtcbiAgbGV0IHNhdGVsbGl0ZSA9IGkxOG4udCgnbWFwLmxheWVycy5zYXRlbGxpdGUnKTtcbiAgcmV0dXJuIHtcbiAgICBbZGVmYXVsdE1hcF06IG1hcFN0eWxlKG1hcEJveFN0eWxlKSxcbiAgICBbc2F0ZWxsaXRlXTogbWFwU3R5bGUobWFwQm94U2F0ZWxsaXRlU3R5bGUpLFxuICB9O1xufTtcblxuZXhwb3J0IGNvbnN0IHRvZ2dsZUVkZ2VzVmlzaWJpbGl0eSA9ICh2aXNpYmxlLCBtYXApID0+IHtcbiAgbWFwLmVhY2hMYXllcigobGF5ZXIpID0+IHtcbiAgICBpZiAoXG4gICAgICAobGF5ZXIgaW5zdGFuY2VvZiBMLlBvbHlsaW5lICYmIGxheWVyLmthbmRvX29iamVjdCAhPT0gJ0FyZWEnKSB8fFxuICAgICAgbGF5ZXIgaW5zdGFuY2VvZiBMLlN5bWJvbC5hcnJvd0hlYWRcbiAgICApIHtcbiAgICAgIGxheWVyLnNldFN0eWxlKHsgb3BhY2l0eTogdmlzaWJsZSA/IDEgOiAwIH0pO1xuICAgIH1cbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgdG9nZ2xlTW9uaXRvcmVkUG9pbnRzVmlzaWJpbGl0eSA9ICh2aXNpYmxlKSA9PiB7XG4gIGNvbnNvbGUud2FybigndG9nZ2xlTW9uaXRvcmVkUG9pbnRzVmlzaWJpbGl0eScsIHZpc2libGUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGVkZ2VzU3BlY2lmaWNMb2dpYyA9IChkZWZhdWx0T24sIG1hcCkgPT4ge1xuICBsZXQgY2hlY2tib3ggPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCcjZWRnZXMtY2hlY2tib3gnKTtcbiAgaWYgKGNoZWNrYm94ID09IG51bGwpIHJldHVybjtcbiAgY2hlY2tib3guY2hlY2tlZCA9IGRlZmF1bHRPbjtcbn07XG5cbmNvbnN0IGN1c3RvbUNvbnRyb2xzID0gKG1hcCkgPT4ge1xuICByZXR1cm4gW1xuICAgIHtcbiAgICAgIGxhYmVsOiBpMThuLnQoJ21hcC5sYXllcnMubmV0d29ya19saW5lcycpLFxuICAgICAgaWQ6ICdlZGdlcy1jaGVja2JveCcsXG4gICAgICBpbnB1dFR5cGU6ICdjaGVja2JveCcsXG4gICAgICBkZW55Rm9yV2E6IFs1MThdLFxuICAgICAgb25DaGFuZ2U6IChpc0NoZWNrZWQpID0+IHRvZ2dsZUVkZ2VzVmlzaWJpbGl0eShpc0NoZWNrZWQsIG1hcCksXG4gICAgfSxcblxuICAgIHtcbiAgICAgIGxhYmVsOiAnU2hvdyBvbmx5IG1vbml0b3JlZCBwb2ludHMnLFxuICAgICAgaWQ6ICdtb25pdG9yZWQtcG9pbnRzLWNoZWNrYm94JyxcbiAgICAgIGlucHV0VHlwZTogJ2NoZWNrYm94JyxcbiAgICAgIG9uQ2hhbmdlOiAoaXNDaGVja2VkKSA9PiB0b2dnbGVNb25pdG9yZWRQb2ludHNWaXNpYmlsaXR5KGlzQ2hlY2tlZCksXG4gICAgfSxcblxuICAgIC8vIHtcbiAgICAvLyAgIGxhYmVsOiAnQW5vdGhlciBjdXN0b20gZmVhdHVyZScsXG4gICAgLy8gICBpZDogJ2N1c3RvbS1mZWF0dXJlLWNoZWNrYm94JyxcbiAgICAvLyAgIGlucHV0VHlwZTogJ2NoZWNrYm94JyxcbiAgICAvLyAgIG9uQ2hhbmdlOiAoaXNDaGVja2VkKSA9PiBjb25zb2xlLmxvZyhgQW5vdGhlciBmZWF0dXJlIGlzIG5vdyAke2lzQ2hlY2tlZCA/ICdlbmFibGVkJyA6ICdkaXNhYmxlZCd9YCksXG4gICAgLy8gfSxcbiAgXTtcbn07XG5cbmNvbnN0IGFwcGVuZEN1c3RvbUNoZWNrYm94VG9MZWFmbGV0c0xheWVyQm94ID0gKFxuICBsZWFmbGV0c0NvbnRhaW5lcixcbiAgY3VzdG9tQ29udGFpbmVyLFxuKSA9PiB7XG4gIEwuRG9tRXZlbnQub24obGVhZmxldHNDb250YWluZXIsICdtb3VzZW92ZXInLCBmdW5jdGlvbiAoKSB7XG4gICAgY3VzdG9tQ29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSAnYmxvY2snO1xuICB9KTtcblxuICBMLkRvbUV2ZW50Lm9uKGxlYWZsZXRzQ29udGFpbmVyLCAnbW91c2VvdXQnLCBmdW5jdGlvbiAoKSB7XG4gICAgY3VzdG9tQ29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gIH0pO1xufTtcblxuY29uc3QgY3JlYXRlQ3VzdG9tQ29udHJvbCA9IChjb250cm9sLCBjb250YWluZXIpID0+IHtcbiAgbGV0IGNvbnRyb2xDb250YWluZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdkaXYnKTtcbiAgY29udHJvbENvbnRhaW5lci5jbGFzc05hbWUgPSAnbGVhZmxldC1jb250cm9sLWxheWVycy1vdmVybGF5cyc7XG4gIGNvbnRyb2xDb250YWluZXIuaW5uZXJIVE1MID0gYFxuICAgICAgPGxhYmVsPlxuICAgICAgICA8aW5wdXQgdHlwZT1cIiR7Y29udHJvbC5pbnB1dFR5cGV9XCIgaWQ9XCIke2NvbnRyb2wuaWR9XCIgLz4gJHtjb250cm9sLmxhYmVsfVxuICAgICAgPC9sYWJlbD5cbiAgICBgO1xuXG4gIGNvbnRyb2xDb250YWluZXJcbiAgICAucXVlcnlTZWxlY3RvcihgIyR7Y29udHJvbC5pZH1gKVxuICAgIC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBmdW5jdGlvbiAoZSkge1xuICAgICAgY29uc3QgaXNDaGVja2VkID0gZS50YXJnZXQuY2hlY2tlZDtcbiAgICAgIGNvbnRyb2wub25DaGFuZ2UoaXNDaGVja2VkKTtcbiAgICB9KTtcblxuICBjb250cm9sQ29udGFpbmVyLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gIGNvbnRhaW5lcj8uYXBwZW5kQ2hpbGQoY29udHJvbENvbnRhaW5lcik7XG5cbiAgYXBwZW5kQ3VzdG9tQ2hlY2tib3hUb0xlYWZsZXRzTGF5ZXJCb3goY29udGFpbmVyLCBjb250cm9sQ29udGFpbmVyKTtcbn07XG5cbmV4cG9ydCBjb25zdCBjdXN0b21GdW5jdGlvbmFsaXR5Rm9yTWFwTGF5ZXJzID0gKFxuICBtYXAsXG4gIG1hcFR5cGVzLFxuICBkZWZhdWx0T24gPSB0cnVlLFxuICB3YUlkLFxuICBmb3JXV1RQRGFzaGJvYXJkLFxuKSA9PiB7XG4gIGxldCBjb250cm9sbGVyID0gTC5jb250cm9sXG4gICAgLmxheWVycyhtYXBUeXBlcywge30sIHsgcG9zaXRpb246ICdib3R0b21yaWdodCcgfSlcbiAgICAuYWRkVG8obWFwKTtcbiAgbGV0IGNvbnRhaW5lciA9IGNvbnRyb2xsZXIuZ2V0Q29udGFpbmVyKCk7XG5cbiAgaWYgKGZvcldXVFBEYXNoYm9hcmQpIHtcbiAgICBjdXN0b21Db250cm9scyhtYXApLmZvckVhY2goKGNvbnRyb2wpID0+IHtcbiAgICAgIGlmIChjb250cm9sLmRlbnlGb3JXYSAmJiBjb250cm9sLmRlbnlGb3JXYS5pbmNsdWRlcyh3YUlkKSkgcmV0dXJuO1xuXG4gICAgICBjcmVhdGVDdXN0b21Db250cm9sKGNvbnRyb2wsIGNvbnRhaW5lcik7XG4gICAgICBlZGdlc1NwZWNpZmljTG9naWMoZGVmYXVsdE9uLCBtYXApO1xuICAgIH0pO1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgaW5pdGlhbGl6ZU1hcCA9IChcbiAgbWFwWm9vbUxldmVsLFxuICBtYXBCb3hTdHlsZSxcbiAgbWFwQm94U2F0ZWxsaXRlU3R5bGUsXG4gIG1hcFJlZixcbiAgZGlzcGF0Y2gsXG4gIGlzVmFsaWRBcmVhLFxuICBhcmVhVG9DZW50ZXJCeSxcbiAgc2V0TWFwWm9vbUxldmVsLFxuICBmb3JXV1RQRGFzaGJvYXJkLFxuICBzaG93RWRnZXNCeURlZmF1bHQsXG4gIHdhSWQgPSAwLFxuKSA9PiB7XG4gIC8vIEB0cy1pZ25vcmVcbiAgbWFwUmVmLmN1cnJlbnQgPSBuZXcgTC5NYXAoJ21hcCcsIHtcbiAgICBjZW50ZXI6IFswLCAwXSxcbiAgICB6b29tU25hcDogMSxcbiAgICB6b29tOiBtYXBab29tTGV2ZWwsXG4gICAgYXR0cmlidXRpb25Db250cm9sOiBmYWxzZSxcbiAgICBwcmVmZXJDYW52YXM6IGZhbHNlLFxuICB9KTtcblxuICBpZiAoZm9yV1dUUERhc2hib2FyZCkgZGlzcGF0Y2goc2V0TWFwKG1hcFJlZi5jdXJyZW50KSk7XG5cbiAgbWFwUmVmLmN1cnJlbnQud2hlblJlYWR5KCgpID0+IHtcbiAgICBsZXQgbWFwID0gbWFwUmVmLmN1cnJlbnQ7XG4gICAgY29uc3QgbWFwVHlwZXMgPSBiYXNlTWFwcyhtYXBCb3hTdHlsZSwgbWFwQm94U2F0ZWxsaXRlU3R5bGUpO1xuXG4gICAgY3VzdG9tRnVuY3Rpb25hbGl0eUZvck1hcExheWVycyhcbiAgICAgIG1hcCxcbiAgICAgIG1hcFR5cGVzLFxuICAgICAgc2hvd0VkZ2VzQnlEZWZhdWx0LFxuICAgICAgd2FJZCxcbiAgICAgIGZvcldXVFBEYXNoYm9hcmQsXG4gICAgKTtcblxuICAgIC8vIFRoZSBuYW1lIG9mIHRoZSBsYXllciBjaGFuZ2VzIGJldHdlZW4gbGFuZ3VhZ2VzIHNvIHRoZXJlIHdhcyBhIG5lZWQgdG8gZ2V0IHRvIHRoZSBmaXJzdCBsYXllclxuICAgIE9iamVjdC52YWx1ZXMobWFwVHlwZXMpWzBdLmFkZFRvKG1hcCk7XG5cbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICghbWFwUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0cnkge1xuICAgICAgICBtYXBSZWYuY3VycmVudC5pbnZhbGlkYXRlU2l6ZSh0cnVlKTtcbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICBjb25zb2xlLmVycm9yKCdlcnInLCBlcnIpO1xuICAgICAgfVxuXG4gICAgICBkaXNwYXRjaChzdG9yZU1hcChtYXBSZWYuY3VycmVudCkpO1xuICAgICAgZGlzcGF0Y2goc2lkZU5hdkV4cGFuZGVkKHRydWUpKTtcblxuICAgICAgbWFwLm9uKCdrZXlkb3duJywgKGV2ZW50KSA9PiB7XG4gICAgICAgIGlmIChldmVudC5vcmlnaW5hbEV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcbiAgICAgICAgICBtYXAuY2xvc2VQb3B1cCgpO1xuICAgICAgICAgIGRvY3VtZW50LmJvZHkuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSwgMCk7XG4gICAgaWYgKG1hcFJlZi5jdXJyZW50ICYmIGlzVmFsaWRBcmVhKGFyZWFUb0NlbnRlckJ5KSkge1xuICAgICAgbWFwUmVmLmN1cnJlbnQuZml0Qm91bmRzKGFyZWFUb0NlbnRlckJ5KTtcbiAgICB9XG4gIH0pO1xuXG4gIG1hcFJlZi5jdXJyZW50Lm9uKCd6b29tZW5kJywgZnVuY3Rpb24gKGUpIHtcbiAgICBpZiAoIW1hcFJlZi5jdXJyZW50KSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGxldCB6b29tID0gbWFwUmVmLmN1cnJlbnQuZ2V0Wm9vbSgpO1xuICAgIHNldE1hcFpvb21MZXZlbCh6b29tKTtcbiAgfSk7XG59O1xuXG5leHBvcnQgY29uc3QgY2x1c3Rlckdyb3VwT3B0aW9ucyA9IHtcbiAgc3BpZGVyZnlPbk1heFpvb206IGZhbHNlLFxuICBzaG93Q292ZXJhZ2VPbkhvdmVyOiBmYWxzZSxcbiAgem9vbVRvQm91bmRzT25DbGljazogdHJ1ZSxcbiAgYW5pbWF0ZTogdHJ1ZSxcbiAgZGlzYWJsZUNsdXN0ZXJpbmdBdFpvb206IDE1LFxuICByZW1vdmVPdXRzaWRlVmlzaWJsZUJvdW5kczogZmFsc2UsXG4gIGNodW5rZWRMb2FkaW5nOiB0cnVlLFxuICBpY29uQ3JlYXRlRnVuY3Rpb246IChjbHVzdGVyKSA9PiB7XG4gICAgcmV0dXJuIG5ldyBMLkRpdkljb24oe1xuICAgICAgaHRtbDogYDxkaXY+PHNwYW4+JHtjbHVzdGVyLl9jaGlsZENvdW50fTwvc3Bhbj48L2Rpdj5cbiAgICAgICAgICAgICA8ZGl2IGNsYXNzPSdtYXJrZXItY2x1c3Rlci1uYW1lJz4ke2kxOG4udCgnaW5kdXN0cmllcycpfTwvZGl2PmAsXG4gICAgICBjbGFzc05hbWU6ICdtYXJrZXItY2x1c3RlcicsXG4gICAgICBpY29uU2l6ZTogbmV3IEwuUG9pbnQoNDAsIDQwKSxcbiAgICB9KTtcbiAgfSxcbn07XG5cbmV4cG9ydCBjb25zdCB6b29tTGV2ZWxzID0ge1xuICAxOiAnWExhcmdlJyxcbiAgMjogJ1hMYXJnZScsXG4gIDM6ICdYTGFyZ2UnLFxuICA0OiAnWExhcmdlJyxcbiAgNTogJ1hMYXJnZScsXG4gIDY6ICdYTGFyZ2UnLFxuICA3OiAnTGFyZ2UnLFxuICA4OiAnTGFyZ2UnLFxuICA5OiAnTGFyZ2UnLFxuICAxMDogJ0xhcmdlJyxcbiAgMTE6ICdNTGFyZ2UnLFxuICAxMjogJ01MYXJnZScsXG4gIDEzOiAnTUxhcmdlJyxcbiAgMTQ6ICdNTGFyZ2UnLFxuICAxNTogJ01lZGl1bScsXG4gIDE2OiAnTWVkaXVtJyxcbiAgMTc6ICdTbWFsbCcsXG4gIDE4OiAnU21hbGwnLFxufTtcblxuZXhwb3J0IGNvbnN0IGZpbHRlclBvaW50cyA9IChwb2ludHMsIGhhc0RldmljZSkgPT5cbiAgcG9pbnRzLmZpbHRlcigocG9pbnQpID0+IHBvaW50Lmhhc19kZXZpY2UgPT09IGhhc0RldmljZSk7XG5cbmV4cG9ydCBjb25zdCBmaW5kUG9pbnQgPSAocG9pbnRzLCBwb2ludElkLCBoYXNEZXZpY2VDaGVjaykgPT5cbiAgcG9pbnRzLmZpbmQoKHBvaW50KSA9PiBwb2ludC5pZCA9PT0gcG9pbnRJZCAmJiBoYXNEZXZpY2VDaGVjayhwb2ludCkpO1xuXG5leHBvcnQgY29uc3QgZmlsdGVyRWRnZXMgPSAoZWRnZXMsIHBvaW50cywgaXNNb25pdG9yZWQpID0+XG4gIGVkZ2VzLmZpbHRlcigoZWRnZSkgPT4ge1xuICAgIGNvbnN0IHNvdXJjZVBvaW50ID0gZmluZFBvaW50KHBvaW50cywgZWRnZS5zb3VyY2VfcG9pbnRfaWQsIChwb2ludCkgPT5cbiAgICAgIGlzTW9uaXRvcmVkXG4gICAgICAgID8gcG9pbnQuaGFzX2RldmljZSB8fCBlZGdlLmRlc2NlbmRhbnRzX2hhc19kZXZpY2VcbiAgICAgICAgOiAhcG9pbnQuZGVzY2VuZGFudHNfaGFzX2RldmljZSxcbiAgICApO1xuXG4gICAgY29uc3QgcGFyZW50UG9pbnQgPSBmaW5kUG9pbnQocG9pbnRzLCBlZGdlLnRhcmdldF9wb2ludF9pZCwgKHBvaW50KSA9PlxuICAgICAgaXNNb25pdG9yZWRcbiAgICAgICAgPyBlZGdlLmRlc2NlbmRhbnRzX2hhc19kZXZpY2UgfHwgc291cmNlUG9pbnQgIT09IHVuZGVmaW5lZFxuICAgICAgICA6ICFwb2ludC5kZXNjZW5kYW50c19oYXNfZGV2aWNlLFxuICAgICk7XG5cbiAgICByZXR1cm4gc291cmNlUG9pbnQgJiYgcGFyZW50UG9pbnQ7XG4gIH0pO1xuXG5leHBvcnQgY29uc3Qgc2V0dXBDaGVja2JveExpc3RlbmVyID0gKHNlbGVjdG9yLCBvbkNoYW5nZSkgPT4ge1xuICBjb25zdCBjaGVja2JveCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3Ioc2VsZWN0b3IpO1xuICBpZiAoY2hlY2tib3ggPT09IG51bGwpIHJldHVybjtcbiAgY2hlY2tib3guYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgKCkgPT4gb25DaGFuZ2UoY2hlY2tib3guY2hlY2tlZCkpO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFBQSxJQUFBQSxRQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxRQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSxLQUFBLEdBQUFILHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRyxtQkFBQSxHQUFBSCxPQUFBO0FBRU8sSUFBTUksY0FBYyxHQUFHLFNBQWpCQSxjQUFjQSxDQUFJQyxNQUFNLEVBQUVDLFdBQVcsRUFBRUMsY0FBYyxFQUFLO0VBQ3JFLElBQUlDLFdBQWdCLEdBQUdILE1BQU0sQ0FBQ0ksT0FBTztFQUNyQyxJQUFJSCxXQUFXLENBQUNDLGNBQWMsQ0FBQyxFQUFFO0lBQy9CQyxXQUFXLENBQUNFLFNBQVMsQ0FBQ0gsY0FBYyxFQUFFO01BQUVJLE9BQU8sRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQUUsQ0FBQyxDQUFDO0VBQzVELENBQUMsTUFBTTtJQUNMLElBQU1DLEtBQVksR0FBRyxFQUFFO0lBRXZCLEtBQUssSUFBTUMsUUFBUSxJQUFJTCxXQUFXLENBQUNNLE9BQU8sRUFBRTtNQUMxQyxJQUNFTixXQUFXLENBQUNNLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUNFLFlBQVksS0FBSyxNQUFNLElBQ3JEUCxXQUFXLENBQUNNLE9BQU8sQ0FBQ0QsUUFBUSxDQUFDLENBQUNFLFlBQVksS0FBSyxPQUFPLEVBQ3REO1FBQ0FILEtB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
|
package/lib/i18n/en.json
CHANGED
|
@@ -128,7 +128,7 @@
|
|
|
128
128
|
"monitors": "Dataloggers",
|
|
129
129
|
"systems": "Systems Management",
|
|
130
130
|
"project_management": "Deployment Management",
|
|
131
|
-
"
|
|
131
|
+
"streami_data": "STREAMi Data",
|
|
132
132
|
"view_map": "View Map",
|
|
133
133
|
"logic_parameters_sets": "Pollution weights",
|
|
134
134
|
"admin_info": "Developers",
|
|
@@ -150,7 +150,9 @@
|
|
|
150
150
|
"aeye_control": "Aeye Operations",
|
|
151
151
|
"assistant_demo": "Chat Assistance (STREAMi) - demo",
|
|
152
152
|
"assistant": "STREAMi (Chat Assistance)",
|
|
153
|
-
"pollution_risk_assessment": "View Assessment Map"
|
|
153
|
+
"pollution_risk_assessment": "View Assessment Map",
|
|
154
|
+
"assistant_regulation": "STREAMi Regulation",
|
|
155
|
+
"operations": "Operations Map"
|
|
154
156
|
},
|
|
155
157
|
"edit": {
|
|
156
158
|
"fota_requests_dl": "Editing Datalogger Fota Request",
|
|
@@ -463,7 +465,8 @@
|
|
|
463
465
|
"overview": "Overview",
|
|
464
466
|
"new_ui": "Events View",
|
|
465
467
|
"covid_view": "WBE",
|
|
466
|
-
"covid_report": "Community Health"
|
|
468
|
+
"covid_report": "Community Health",
|
|
469
|
+
"operations": "Operations"
|
|
467
470
|
},
|
|
468
471
|
"water_authority_selector_screen": {
|
|
469
472
|
"select_water_authority": "Please Select Client",
|
package/lib/macros/getVersion.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var packageJsonVersion = "1.2.
|
|
3
|
+
var packageJsonVersion = "1.2.397-alpha.0";
|
|
4
4
|
if (typeof packageJsonVersion === 'string') {
|
|
5
5
|
// eslint-disable-next-line no-console
|
|
6
6
|
console.log("%c Kando UI %c v".concat(packageJsonVersion, " "), 'font-size: 15px; background-color: #fff; color: #e20f53;', 'font-weight: bold; font-size: 15px; background-color: #e20f53; color: #fff;', "with NODE_ENV=".concat(process.env.NODE_ENV));
|
|
7
7
|
} else {
|
|
8
8
|
console.error('getVersion.js got bad version from package.json, expected string.');
|
|
9
9
|
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
10
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJwYWNrYWdlSnNvblZlcnNpb24iLCJjb25zb2xlIiwibG9nIiwiY29uY2F0IiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiZXJyb3IiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbWFjcm9zL2dldFZlcnNpb24uanMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHByZXZhbCBmcm9tICdwcmV2YWwubWFjcm8nO1xuXG5jb25zdCBwYWNrYWdlSnNvblZlcnNpb24gPSBwcmV2YWxgbW9kdWxlLmV4cG9ydHMgPSByZXF1aXJlKCcuLi8uLi9iaW4vZ2V0VmVyc2lvbkZyb21QYWNrYWdlSnNvbi5qcycpYDtcbmlmICh0eXBlb2YgcGFja2FnZUpzb25WZXJzaW9uID09PSAnc3RyaW5nJykge1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZVxuICBjb25zb2xlLmxvZyhcbiAgICBgJWMgS2FuZG8gVUkgJWMgdiR7cGFja2FnZUpzb25WZXJzaW9ufSBgLFxuICAgICdmb250LXNpemU6IDE1cHg7IGJhY2tncm91bmQtY29sb3I6ICNmZmY7IGNvbG9yOiAjZTIwZjUzOycsXG4gICAgJ2ZvbnQtd2VpZ2h0OiBib2xkOyBmb250LXNpemU6IDE1cHg7IGJhY2tncm91bmQtY29sb3I6ICNlMjBmNTM7IGNvbG9yOiAjZmZmOycsXG4gICAgYHdpdGggTk9ERV9FTlY9JHtwcm9jZXNzLmVudi5OT0RFX0VOVn1gLFxuICApO1xufSBlbHNlIHtcbiAgY29uc29sZS5lcnJvcihcbiAgICAnZ2V0VmVyc2lvbi5qcyBnb3QgYmFkIHZlcnNpb24gZnJvbSBwYWNrYWdlLmpzb24sIGV4cGVjdGVkIHN0cmluZy4nLFxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiOztBQUVBLElBQU1BLGtCQUFrQixvQkFBNkU7QUFDckcsSUFBSSxPQUFPQSxrQkFBa0IsS0FBSyxRQUFRLEVBQUU7RUFDMUM7RUFDQUMsT0FBTyxDQUFDQyxHQUFHLG9CQUFBQyxNQUFBLENBQ1VILGtCQUFrQixRQUNyQywwREFBMEQsRUFDMUQsNkVBQTZFLG1CQUFBRyxNQUFBLENBQzVEQyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsUUFBUSxDQUN2QyxDQUFDO0FBQ0gsQ0FBQyxNQUFNO0VBQ0xMLE9BQU8sQ0FBQ00sS0FBSyxDQUNYLG1FQUNGLENBQUM7QUFDSCJ9
|
|
@@ -78,7 +78,7 @@ var EventsMapContainer = function EventsMapContainer(props) {
|
|
|
78
78
|
var mappedPoints = (0, _react.useMemo)(function () {
|
|
79
79
|
return points_data.items.map(function (point) {
|
|
80
80
|
var newPoint = (0, _objectSpread2.default)({}, point);
|
|
81
|
-
if (!EventsPerSite[point.id] || (0, _EventUtils.isCollectorUnmonitored)(point)) {
|
|
81
|
+
if (EventsPerSite === undefined || !EventsPerSite[point.id] || (0, _EventUtils.isCollectorUnmonitored)(point)) {
|
|
82
82
|
newPoint.hide = true;
|
|
83
83
|
}
|
|
84
84
|
if (events_data.focusedEvent) {
|
|
@@ -94,7 +94,7 @@ var EventsMapContainer = function EventsMapContainer(props) {
|
|
|
94
94
|
newPoint.hide = false;
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
|
-
newPoint.relatedEventsAmount = EventsPerSite[point.id]
|
|
97
|
+
newPoint.relatedEventsAmount = EventsPerSite ? EventsPerSite[point.id] : 0;
|
|
98
98
|
newPoint.eventsViewHovered = true;
|
|
99
99
|
return newPoint;
|
|
100
100
|
});
|
|
@@ -149,4 +149,4 @@ var EventsMapContainer = function EventsMapContainer(props) {
|
|
|
149
149
|
}));
|
|
150
150
|
};
|
|
151
151
|
exports.EventsMapContainer = EventsMapContainer;
|
|
152
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzIiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfYWN0aW9uczMiLCJfTWFwIiwiX0Zsb2F0aW5nR3JhcGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0dyYXBoVXRpbHMiLCJfYWN0aW9uczQiLCJfRHJhZ0FuZERyb3BBcmVhIiwiX0V2ZW50VXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkV2ZW50c01hcENvbnRhaW5lciIsInByb3BzIiwiX2dsb2JhbF9kYXRhJGZsb2F0aW5nIiwiX2dsb2JhbF9kYXRhJGZsb2F0aW5nMiIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImFyZWFzX2RhdGEiLCJnbG9iYWxfZGF0YSIsInBvaW50c19kYXRhIiwiZXZlbnRzX2RhdGEiLCJlZGdlc19kYXRhIiwiaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQiLCJ1c2VNZW1vIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpIiwiZmlsdGVycyIsImFjdGl2ZUZpbHRlciIsImZpbHRlcl9pdGVtcyIsImxlbmd0aCIsImluZGV4IiwidHlwZSIsIm1hcHBlZEFyZWFzIiwiYXJlYXNNYXBwZXIiLCJnZXRBY3RpdmVUaW1lRmlsdGVyUGVyaW9kIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpMiIsIml0ZW1zIiwiYWN0aXZlVGltZUZpbHRlciIsInNlbGVjdGVkX29wdGlvbnMiLCJKU09OIiwicGFyc2UiLCJFdmVudHNQZXJTaXRlIiwiQ291bnRFdmVudHNQZXJTaXRlSUQiLCJNdXN0U2VlblNpdGVzIiwiZm9jdXNlZEV2ZW50IiwiZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyIsImhvdmVyZWRFdmVudCIsIm1hcHBlZFBvaW50cyIsIm1hcCIsInBvaW50IiwibmV3UG9pbnQiLCJfb2JqZWN0U3ByZWFkMiIsImlkIiwiaXNDb2xsZWN0b3JVbm1vbml0b3JlZCIsImhpZGUiLCJyZWxhdGVkRXZlbnRzQW1vdW50IiwiZXZlbnRzVmlld0hvdmVyZWQiLCJtYXBwZWRFZGdlcyIsImZpbHRlciIsImVkZ2UiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwiZGVzY2VuZGFudHNfaGFzX25vbmVfY29sbGVjdG9ycyIsImFyZWFUb0NlbnRlckJ5IiwiZ2V0QXJlYXNUb0NlbnRlckJ5IiwidXNlRWZmZWN0Iiwid2F0ZXJBdXRob3JpdHlJZCIsInBlcmlvZCIsImZldGNoUG9pbnRzIiwiZmV0Y2hFZGdlcyIsImZldGNoQXJlYXMiLCJjcmVhdGVFbGVtZW50IiwiTWFwIiwiYXNzaWduIiwiYXJlYXMiLCJwb2ludHMiLCJlZGdlcyIsImV2ZW50cyIsImhpZGVFZGdlcyIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsImluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMiLCJmb3JFdmVudHNWaWV3IiwiZm9jdXNlZEV2ZW50UGF0aCIsImZvY3VzZWRFdmVudFBhdGhzIiwiZmxvYXRpbmdHcmFwaCIsImlzT3BlbiIsIm9wZW4iLCJjdXN0b21IaWdoQ2hhcnRPcHRpb25zIiwiZG5kR3JhcGhJbml0T3B0aW9ucyIsImNsb3NlR3JhcGhIYW5kbGVyIiwiY2xvc2VGbG9hdGluZ0dyYXBoIiwiZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGgiLCJldmVudF9kYXRhIiwiZ3JhcGhJZCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNNYXBDb250YWluZXIvRXZlbnRzTWFwQ29udGFpbmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIENvdW50RXZlbnRzUGVyU2l0ZUlELFxuICBnZXRBcmVhc1RvQ2VudGVyQnksXG4gIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMsXG59IGZyb20gJ3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzJztcbmltcG9ydCB7IGZldGNoQXJlYXMgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEVkZ2VzIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgRmxvYXRpbmdHcmFwaCBmcm9tICdzcmMvcGFnZXMvRXZlbnRzUGFnZS9GbG9hdGluZ0dyYXBoL0Zsb2F0aW5nR3JhcGgnO1xuaW1wb3J0IHsgZG5kR3JhcGhJbml0T3B0aW9ucyB9IGZyb20gJ3NyYy9XaWRnZXRzL01hcC9HcmFwaFV0aWxzJztcbmltcG9ydCB7IGNsb3NlRmxvYXRpbmdHcmFwaCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgRHJhZ0FuZERyb3BBcmVhIGZyb20gJy4uL0RyYWdBbmREcm9wQXJlYSc7XG5pbXBvcnQgeyBpc0NvbGxlY3RvclVubW9uaXRvcmVkIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL2V2ZW50cy9FdmVudFV0aWxzJztcbmludGVyZmFjZSBFdmVudHNNYXBDb250YWluZXJQcm9wcyB7XG4gIHNob3dTZWNvbmRNYXA6IGJvb2xlYW47XG59XG5leHBvcnQgY29uc3QgRXZlbnRzTWFwQ29udGFpbmVyOiBSZWFjdC5GQzxFdmVudHNNYXBDb250YWluZXJQcm9wcz4gPSAoXG4gIHByb3BzLFxuKSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEsIGdsb2JhbF9kYXRhLCBwb2ludHNfZGF0YSwgZXZlbnRzX2RhdGEsIGVkZ2VzX2RhdGEgfSA9XG4gICAgUmVkdXhTdGF0ZTtcblxuICBjb25zdCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyPy5maWx0ZXJfaXRlbXM7XG5cbiAgICBpZiAoIWZpbHRlcnMgfHwgZmlsdGVycy5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZmlsdGVycy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChmaWx0ZXJzW2luZGV4XS50eXBlID09PSAnVGltZUZpbHRlckl0ZW0nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSwgW2dsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXJdKTtcblxuICBjb25zdCBtYXBwZWRBcmVhcyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gYXJlYXNNYXBwZXIoYXJlYXNfZGF0YSwgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQpLFxuICAgIFthcmVhc19kYXRhLCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0QWN0aXZlVGltZUZpbHRlclBlcmlvZCA9ICgpID0+IHtcbiAgICBjb25zdCBpdGVtcyA9IGdsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXI/LmZpbHRlcl9pdGVtcztcbiAgICBsZXQgYWN0aXZlVGltZUZpbHRlciA9ICcxbSc7XG5cbiAgICBpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA8IDEpIHtcbiAgICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICAgIH1cblxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBpdGVtcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChpdGVtc1tpbmRleF0udHlwZSA9PT0gJ1RpbWVGaWx0ZXJJdGVtJykge1xuICAgICAgICBpZiAodHlwZW9mIGl0ZW1zW2luZGV4XS5zZWxlY3RlZF9vcHRpb25zID09PSAnc3RyaW5nJylcbiAgICAgICAgICBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9ucyA9IEpTT04ucGFyc2UoXG4gICAgICAgICAgICBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9ucyxcbiAgICAgICAgICApO1xuXG4gICAgICAgIGFjdGl2ZVRpbWVGaWx0ZXIgPSBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9uc1swXTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICB9O1xuXG4gIGNvbnN0IEV2ZW50c1BlclNpdGUgPSB1c2VNZW1vKFxuICAgICgpID0+IENvdW50RXZlbnRzUGVyU2l0ZUlEKGV2ZW50c19kYXRhLml0ZW1zKSxcbiAgICBbZXZlbnRzX2RhdGEuaXRlbXNdLFxuICApO1xuXG4gIGNvbnN0IE11c3RTZWVuU2l0ZXMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQpO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH0sIFtFdmVudHNQZXJTaXRlLCBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsIGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudF0pO1xuXG4gIGNvbnN0IG1hcHBlZFBvaW50cyA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLm1hcCgocG9pbnQpID0+IHtcbiAgICAgICAgY29uc3QgbmV3UG9pbnQgPSB7IC4uLnBvaW50IH07XG5cbiAgICAgICAgaWYgKCFFdmVudHNQZXJTaXRlW3BvaW50LmlkXSB8fCBpc0NvbGxlY3RvclVubW9uaXRvcmVkKHBvaW50KSkge1xuICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0pIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0gJiYgaXNDb2xsZWN0b3JVbm1vbml0b3JlZChwb2ludCkpIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbmV3UG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA9IEV2ZW50c1BlclNpdGVbcG9pbnQuaWRdIHx8IDA7XG4gICAgICAgIG5ld1BvaW50LmV2ZW50c1ZpZXdIb3ZlcmVkID0gdHJ1ZTtcbiAgICAgICAgcmV0dXJuIG5ld1BvaW50O1xuICAgICAgfSksXG4gICAgW1xuICAgICAgcG9pbnRzX2RhdGEsXG4gICAgICBFdmVudHNQZXJTaXRlLFxuICAgICAgZXZlbnRzX2RhdGEuaXRlbXMsXG4gICAgICBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsXG4gICAgICBldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQsXG4gICAgXSxcbiAgKTtcblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmVcbiAgY29uc3QgbWFwcGVkRWRnZXMgPSBlZGdlc19kYXRhLml0ZW1zLmZpbHRlcihcbiAgICAoZWRnZSkgPT5cbiAgICAgIC8vIChOdW1iZXIoRXZlbnRzUGVyU2l0ZVtlZGdlLnNvdXJjZV9wb2ludF9pZF0pID4gMCB8fFxuICAgICAgLy8gTnVtYmVyKEV2ZW50c1BlclNpdGVbZWRnZS50YXJnZXRfcG9pbnRfaWRdKSA+IDApXG4gICAgICAvLyAgJiZcbiAgICAgIGVkZ2UuZGVzY2VuZGFudHNfaGFzX2RldmljZSA9PT0gdHJ1ZSB8fFxuICAgICAgZWRnZS5kZXNjZW5kYW50c19oYXNfbm9uZV9jb2xsZWN0b3JzID09PSB0cnVlLFxuICApO1xuXG4gIGNvbnN0IGFyZWFUb0NlbnRlckJ5ID0gdXNlTWVtbyhcbiAgICAoKSA9PiBnZXRBcmVhc1RvQ2VudGVyQnkoZ2xvYmFsX2RhdGEsIG1hcHBlZEFyZWFzKSxcbiAgICBbZ2xvYmFsX2RhdGE/LmFjdGl2ZUZpbHRlciwgbWFwcGVkQXJlYXNdLFxuICApO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpIHtcbiAgICAgIGNvbnN0IHBlcmlvZCA9IGdldEFjdGl2ZVRpbWVGaWx0ZXJQZXJpb2QoKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoUG9pbnRzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIHBlcmlvZCkpO1xuICAgICAgZGlzcGF0Y2goZmV0Y2hFZGdlcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICBkaXNwYXRjaChmZXRjaEFyZWFzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIHBlcmlvZCwgdHJ1ZSkpO1xuICAgIH1cbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQsIGdsb2JhbF9kYXRhLmFjdGl2ZUZpbHRlcl0pO1xuXG4gIHJldHVybiAoXG4gICAgPE1hcFxuICAgICAgey4uLlJlZHV4U3RhdGV9XG4gICAgICBhcmVhcz17bWFwcGVkQXJlYXN9XG4gICAgICBnbG9iYWxfZGF0YT17Z2xvYmFsX2RhdGF9XG4gICAgICBwb2ludHM9e21hcHBlZFBvaW50c31cbiAgICAgIGVkZ2VzPXttYXBwZWRFZGdlc31cbiAgICAgIGV2ZW50cz17ZXZlbnRzX2RhdGEuaXRlbXN9XG4gICAgICBmb2N1c2VkRXZlbnQ9e2V2ZW50c19kYXRhLmZvY3VzZWRFdmVudH1cbiAgICAgIGhvdmVyZWRFdmVudD17ZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50fVxuICAgICAgYXJlYVRvQ2VudGVyQnk9e2FyZWFUb0NlbnRlckJ5fVxuICAgICAgaGlkZUVkZ2VzPXt0cnVlfVxuICAgICAgaW5jbHVkZVVubW9uaXRvcmVkUG9pbnRzPXtmYWxzZX1cbiAgICAgIGluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXM9e3RydWV9XG4gICAgICBmb3JFdmVudHNWaWV3PXt0cnVlfVxuICAgICAgey4uLnByb3BzfVxuICAgID5cbiAgICAgIHtcbiAgICAgICAgPERyYWdBbmREcm9wQXJlYSBmb2N1c2VkRXZlbnRQYXRoPXtldmVudHNfZGF0YT8uZm9jdXNlZEV2ZW50UGF0aHN9PlxuICAgICAgICAgIHt7XG4gICAgICAgICAgICBmbG9hdGluZ0dyYXBoOiAoXG4gICAgICAgICAgICAgIDxGbG9hdGluZ0dyYXBoXG4gICAgICAgICAgICAgICAgaXNPcGVuPXtnbG9iYWxfZGF0YT8uZmxvYXRpbmdHcmFwaC5vcGVufVxuICAgICAgICAgICAgICAgIGN1c3RvbUhpZ2hDaGFydE9wdGlvbnM9e2RuZEdyYXBoSW5pdE9wdGlvbnN9XG4gICAgICAgICAgICAgICAgY2xvc2VHcmFwaEhhbmRsZXI9eygpID0+IHtcbiAgICAgICAgICAgICAgICAgIGRpc3BhdGNoKGNsb3NlRmxvYXRpbmdHcmFwaCgpKTtcbiAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgIGdsb2JhbERhdGFGbG9hdGluZ0dyYXBoPXtnbG9iYWxfZGF0YS5mbG9hdGluZ0dyYXBofVxuICAgICAgICAgICAgICAgIGV2ZW50X2RhdGE9e2V2ZW50c19kYXRhPy5mb2N1c2VkRXZlbnR9XG4gICAgICAgICAgICAgICAgZ3JhcGhJZD17Z2xvYmFsX2RhdGE/LmZsb2F0aW5nR3JhcGg/LnBvaW50Py5pZH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICksXG4gICAgICAgICAgfX1cbiAgICAgICAgPC9EcmFnQW5kRHJvcEFyZWE+XG4gICAgICB9XG4gICAgPC9NYXA+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxXQUFBLEdBQUFELE9BQUE7QUFDQSxJQUFBRSwwQkFBQSxHQUFBRixPQUFBO0FBTUEsSUFBQUcsUUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksU0FBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssU0FBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sSUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sY0FB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
|
|
152
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfcmVhY3RSZWR1eCIsIl9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzIiwiX2FjdGlvbnMiLCJfYWN0aW9uczIiLCJfYWN0aW9uczMiLCJfTWFwIiwiX0Zsb2F0aW5nR3JhcGgiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX0dyYXBoVXRpbHMiLCJfYWN0aW9uczQiLCJfRHJhZ0FuZERyb3BBcmVhIiwiX0V2ZW50VXRpbHMiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiX3R5cGVvZiIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIkV2ZW50c01hcENvbnRhaW5lciIsInByb3BzIiwiX2dsb2JhbF9kYXRhJGZsb2F0aW5nIiwiX2dsb2JhbF9kYXRhJGZsb2F0aW5nMiIsImRpc3BhdGNoIiwidXNlRGlzcGF0Y2giLCJSZWR1eFN0YXRlIiwidXNlU2VsZWN0b3IiLCJzdGF0ZSIsImFyZWFzX2RhdGEiLCJnbG9iYWxfZGF0YSIsInBvaW50c19kYXRhIiwiZXZlbnRzX2RhdGEiLCJlZGdlc19kYXRhIiwiaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQiLCJ1c2VNZW1vIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpIiwiZmlsdGVycyIsImFjdGl2ZUZpbHRlciIsImZpbHRlcl9pdGVtcyIsImxlbmd0aCIsImluZGV4IiwidHlwZSIsIm1hcHBlZEFyZWFzIiwiYXJlYXNNYXBwZXIiLCJnZXRBY3RpdmVUaW1lRmlsdGVyUGVyaW9kIiwiX2dsb2JhbF9kYXRhJGFjdGl2ZUZpMiIsIml0ZW1zIiwiYWN0aXZlVGltZUZpbHRlciIsInNlbGVjdGVkX29wdGlvbnMiLCJKU09OIiwicGFyc2UiLCJFdmVudHNQZXJTaXRlIiwiQ291bnRFdmVudHNQZXJTaXRlSUQiLCJNdXN0U2VlblNpdGVzIiwiZm9jdXNlZEV2ZW50IiwiZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyIsImhvdmVyZWRFdmVudCIsIm1hcHBlZFBvaW50cyIsIm1hcCIsInBvaW50IiwibmV3UG9pbnQiLCJfb2JqZWN0U3ByZWFkMiIsInVuZGVmaW5lZCIsImlkIiwiaXNDb2xsZWN0b3JVbm1vbml0b3JlZCIsImhpZGUiLCJyZWxhdGVkRXZlbnRzQW1vdW50IiwiZXZlbnRzVmlld0hvdmVyZWQiLCJtYXBwZWRFZGdlcyIsImZpbHRlciIsImVkZ2UiLCJkZXNjZW5kYW50c19oYXNfZGV2aWNlIiwiZGVzY2VuZGFudHNfaGFzX25vbmVfY29sbGVjdG9ycyIsImFyZWFUb0NlbnRlckJ5IiwiZ2V0QXJlYXNUb0NlbnRlckJ5IiwidXNlRWZmZWN0Iiwid2F0ZXJBdXRob3JpdHlJZCIsInBlcmlvZCIsImZldGNoUG9pbnRzIiwiZmV0Y2hFZGdlcyIsImZldGNoQXJlYXMiLCJjcmVhdGVFbGVtZW50IiwiTWFwIiwiYXNzaWduIiwiYXJlYXMiLCJwb2ludHMiLCJlZGdlcyIsImV2ZW50cyIsImhpZGVFZGdlcyIsImluY2x1ZGVVbm1vbml0b3JlZFBvaW50cyIsImluY2x1ZGVVbm1vbml0b3JlZERlc2NlbmRhbnRzRm9yRWRnZXMiLCJmb3JFdmVudHNWaWV3IiwiZm9jdXNlZEV2ZW50UGF0aCIsImZvY3VzZWRFdmVudFBhdGhzIiwiZmxvYXRpbmdHcmFwaCIsImlzT3BlbiIsIm9wZW4iLCJjdXN0b21IaWdoQ2hhcnRPcHRpb25zIiwiZG5kR3JhcGhJbml0T3B0aW9ucyIsImNsb3NlR3JhcGhIYW5kbGVyIiwiY2xvc2VGbG9hdGluZ0dyYXBoIiwiZ2xvYmFsRGF0YUZsb2F0aW5nR3JhcGgiLCJldmVudF9kYXRhIiwiZ3JhcGhJZCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvRXZlbnRzUGFnZS9FdmVudHNNYXBDb250YWluZXIvRXZlbnRzTWFwQ29udGFpbmVyLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgdXNlRGlzcGF0Y2gsIHVzZVNlbGVjdG9yIH0gZnJvbSAncmVhY3QtcmVkdXgnO1xuaW1wb3J0IHtcbiAgYXJlYXNNYXBwZXIsXG4gIENvdW50RXZlbnRzUGVyU2l0ZUlELFxuICBnZXRBcmVhc1RvQ2VudGVyQnksXG4gIGdldEZvY3VzZWRFdmVudE11c3RTZWVuU2l0ZXMsXG59IGZyb20gJ3NyYy9wYWdlcy9FdmVudHNQYWdlL0V2ZW50c01hcENvbnRhaW5lci9FdmVudHNNYXBDb250YWluZXJIZWxwZXJzJztcbmltcG9ydCB7IGZldGNoQXJlYXMgfSBmcm9tICdzcmMvc3RvcmUvYXJlYXMvYWN0aW9ucyc7XG5pbXBvcnQgeyBmZXRjaEVkZ2VzIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgTWFwIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL01hcCc7XG5pbXBvcnQgRmxvYXRpbmdHcmFwaCBmcm9tICdzcmMvcGFnZXMvRXZlbnRzUGFnZS9GbG9hdGluZ0dyYXBoL0Zsb2F0aW5nR3JhcGgnO1xuaW1wb3J0IHsgZG5kR3JhcGhJbml0T3B0aW9ucyB9IGZyb20gJ3NyYy9XaWRnZXRzL01hcC9HcmFwaFV0aWxzJztcbmltcG9ydCB7IGNsb3NlRmxvYXRpbmdHcmFwaCB9IGZyb20gJ3NyYy9zdG9yZS9nbG9iYWwvYWN0aW9ucyc7XG5pbXBvcnQgRHJhZ0FuZERyb3BBcmVhIGZyb20gJy4uL0RyYWdBbmREcm9wQXJlYSc7XG5pbXBvcnQgeyBpc0NvbGxlY3RvclVubW9uaXRvcmVkIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL2V2ZW50cy9FdmVudFV0aWxzJztcbmludGVyZmFjZSBFdmVudHNNYXBDb250YWluZXJQcm9wcyB7XG4gIHNob3dTZWNvbmRNYXA6IGJvb2xlYW47XG59XG5leHBvcnQgY29uc3QgRXZlbnRzTWFwQ29udGFpbmVyOiBSZWFjdC5GQzxFdmVudHNNYXBDb250YWluZXJQcm9wcz4gPSAoXG4gIHByb3BzLFxuKSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgUmVkdXhTdGF0ZSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUpO1xuICBjb25zdCB7IGFyZWFzX2RhdGEsIGdsb2JhbF9kYXRhLCBwb2ludHNfZGF0YSwgZXZlbnRzX2RhdGEsIGVkZ2VzX2RhdGEgfSA9XG4gICAgUmVkdXhTdGF0ZTtcblxuICBjb25zdCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZCA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIGNvbnN0IGZpbHRlcnMgPSBnbG9iYWxfZGF0YT8uYWN0aXZlRmlsdGVyPy5maWx0ZXJfaXRlbXM7XG5cbiAgICBpZiAoIWZpbHRlcnMgfHwgZmlsdGVycy5sZW5ndGggPCAxKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpbmRleCA9IDA7IGluZGV4IDwgZmlsdGVycy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChmaWx0ZXJzW2luZGV4XS50eXBlID09PSAnVGltZUZpbHRlckl0ZW0nKSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSwgW2dsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXJdKTtcblxuICBjb25zdCBtYXBwZWRBcmVhcyA9IHVzZU1lbW8oXG4gICAgKCkgPT4gYXJlYXNNYXBwZXIoYXJlYXNfZGF0YSwgaXNUaW1lRmlsdGVyTm90U2VsZWN0ZWQpLFxuICAgIFthcmVhc19kYXRhLCBpc1RpbWVGaWx0ZXJOb3RTZWxlY3RlZF0sXG4gICk7XG5cbiAgY29uc3QgZ2V0QWN0aXZlVGltZUZpbHRlclBlcmlvZCA9ICgpID0+IHtcbiAgICBjb25zdCBpdGVtcyA9IGdsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXI/LmZpbHRlcl9pdGVtcztcbiAgICBsZXQgYWN0aXZlVGltZUZpbHRlciA9ICcxbSc7XG5cbiAgICBpZiAoIWl0ZW1zIHx8IGl0ZW1zLmxlbmd0aCA8IDEpIHtcbiAgICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICAgIH1cblxuICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBpdGVtcy5sZW5ndGg7IGluZGV4KyspIHtcbiAgICAgIGlmIChpdGVtc1tpbmRleF0udHlwZSA9PT0gJ1RpbWVGaWx0ZXJJdGVtJykge1xuICAgICAgICBpZiAodHlwZW9mIGl0ZW1zW2luZGV4XS5zZWxlY3RlZF9vcHRpb25zID09PSAnc3RyaW5nJylcbiAgICAgICAgICBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9ucyA9IEpTT04ucGFyc2UoXG4gICAgICAgICAgICBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9ucyxcbiAgICAgICAgICApO1xuXG4gICAgICAgIGFjdGl2ZVRpbWVGaWx0ZXIgPSBpdGVtc1tpbmRleF0uc2VsZWN0ZWRfb3B0aW9uc1swXTtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBhY3RpdmVUaW1lRmlsdGVyO1xuICB9O1xuXG4gIGNvbnN0IEV2ZW50c1BlclNpdGUgPSB1c2VNZW1vKFxuICAgICgpID0+IENvdW50RXZlbnRzUGVyU2l0ZUlEKGV2ZW50c19kYXRhLml0ZW1zKSxcbiAgICBbZXZlbnRzX2RhdGEuaXRlbXNdLFxuICApO1xuXG4gIGNvbnN0IE11c3RTZWVuU2l0ZXMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAoZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQpO1xuICAgIH0gZWxzZSBpZiAoZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50KSB7XG4gICAgICByZXR1cm4gZ2V0Rm9jdXNlZEV2ZW50TXVzdFNlZW5TaXRlcyhldmVudHNfZGF0YS5ob3ZlcmVkRXZlbnQpO1xuICAgIH1cbiAgICByZXR1cm4ge307XG4gIH0sIFtFdmVudHNQZXJTaXRlLCBldmVudHNfZGF0YS5mb2N1c2VkRXZlbnQsIGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudF0pO1xuXG4gIGNvbnN0IG1hcHBlZFBvaW50cyA9IHVzZU1lbW8oXG4gICAgKCkgPT5cbiAgICAgIHBvaW50c19kYXRhLml0ZW1zLm1hcCgocG9pbnQpID0+IHtcbiAgICAgICAgY29uc3QgbmV3UG9pbnQgPSB7IC4uLnBvaW50IH07XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgIEV2ZW50c1BlclNpdGUgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICFFdmVudHNQZXJTaXRlW3BvaW50LmlkXSB8fFxuICAgICAgICAgIGlzQ29sbGVjdG9yVW5tb25pdG9yZWQocG9pbnQpXG4gICAgICAgICkge1xuICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV2ZW50c19kYXRhLmZvY3VzZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0pIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50c19kYXRhLmhvdmVyZWRFdmVudCkge1xuICAgICAgICAgIGlmICghTXVzdFNlZW5TaXRlc1twb2ludC5pZF0gJiYgaXNDb2xsZWN0b3JVbm1vbml0b3JlZChwb2ludCkpIHtcbiAgICAgICAgICAgIG5ld1BvaW50LmhpZGUgPSB0cnVlO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBuZXdQb2ludC5oaWRlID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbmV3UG9pbnQucmVsYXRlZEV2ZW50c0Ftb3VudCA9IEV2ZW50c1BlclNpdGVcbiAgICAgICAgICA/IEV2ZW50c1BlclNpdGVbcG9pbnQuaWRdXG4gICAgICAgICAgOiAwO1xuICAgICAgICBuZXdQb2ludC5ldmVudHNWaWV3SG92ZXJlZCA9IHRydWU7XG4gICAgICAgIHJldHVybiBuZXdQb2ludDtcbiAgICAgIH0pLFxuICAgIFtcbiAgICAgIHBvaW50c19kYXRhLFxuICAgICAgRXZlbnRzUGVyU2l0ZSxcbiAgICAgIGV2ZW50c19kYXRhLml0ZW1zLFxuICAgICAgZXZlbnRzX2RhdGEuZm9jdXNlZEV2ZW50LFxuICAgICAgZXZlbnRzX2RhdGEuaG92ZXJlZEV2ZW50LFxuICAgIF0sXG4gICk7XG5cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lXG4gIGNvbnN0IG1hcHBlZEVkZ2VzID0gZWRnZXNfZGF0YS5pdGVtcy5maWx0ZXIoXG4gICAgKGVkZ2UpID0+XG4gICAgICAvLyAoTnVtYmVyKEV2ZW50c1BlclNpdGVbZWRnZS5zb3VyY2VfcG9pbnRfaWRdKSA+IDAgfHxcbiAgICAgIC8vIE51bWJlcihFdmVudHNQZXJTaXRlW2VkZ2UudGFyZ2V0X3BvaW50X2lkXSkgPiAwKVxuICAgICAgLy8gICYmXG4gICAgICBlZGdlLmRlc2NlbmRhbnRzX2hhc19kZXZpY2UgPT09IHRydWUgfHxcbiAgICAgIGVkZ2UuZGVzY2VuZGFudHNfaGFzX25vbmVfY29sbGVjdG9ycyA9PT0gdHJ1ZSxcbiAgKTtcblxuICBjb25zdCBhcmVhVG9DZW50ZXJCeSA9IHVzZU1lbW8oXG4gICAgKCkgPT4gZ2V0QXJlYXNUb0NlbnRlckJ5KGdsb2JhbF9kYXRhLCBtYXBwZWRBcmVhcyksXG4gICAgW2dsb2JhbF9kYXRhPy5hY3RpdmVGaWx0ZXIsIG1hcHBlZEFyZWFzXSxcbiAgKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSB7XG4gICAgICBjb25zdCBwZXJpb2QgPSBnZXRBY3RpdmVUaW1lRmlsdGVyUGVyaW9kKCk7XG4gICAgICBkaXNwYXRjaChmZXRjaFBvaW50cyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLCBwZXJpb2QpKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoRWRnZXMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAgICAgZGlzcGF0Y2goZmV0Y2hBcmVhcyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLCBwZXJpb2QsIHRydWUpKTtcbiAgICB9XG4gIH0sIFtnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkLCBnbG9iYWxfZGF0YS5hY3RpdmVGaWx0ZXJdKTtcblxuICByZXR1cm4gKFxuICAgIDxNYXBcbiAgICAgIHsuLi5SZWR1eFN0YXRlfVxuICAgICAgYXJlYXM9e21hcHBlZEFyZWFzfVxuICAgICAgZ2xvYmFsX2RhdGE9e2dsb2JhbF9kYXRhfVxuICAgICAgcG9pbnRzPXttYXBwZWRQb2ludHN9XG4gICAgICBlZGdlcz17bWFwcGVkRWRnZXN9XG4gICAgICBldmVudHM9e2V2ZW50c19kYXRhLml0ZW1zfVxuICAgICAgZm9jdXNlZEV2ZW50PXtldmVudHNfZGF0YS5mb2N1c2VkRXZlbnR9XG4gICAgICBob3ZlcmVkRXZlbnQ9e2V2ZW50c19kYXRhLmhvdmVyZWRFdmVudH1cbiAgICAgIGFyZWFUb0NlbnRlckJ5PXthcmVhVG9DZW50ZXJCeX1cbiAgICAgIGhpZGVFZGdlcz17dHJ1ZX1cbiAgICAgIGluY2x1ZGVVbm1vbml0b3JlZFBvaW50cz17ZmFsc2V9XG4gICAgICBpbmNsdWRlVW5tb25pdG9yZWREZXNjZW5kYW50c0ZvckVkZ2VzPXt0cnVlfVxuICAgICAgZm9yRXZlbnRzVmlldz17dHJ1ZX1cbiAgICAgIHsuLi5wcm9wc31cbiAgICA+XG4gICAgICB7XG4gICAgICAgIDxEcmFnQW5kRHJvcEFyZWEgZm9jdXNlZEV2ZW50UGF0aD17ZXZlbnRzX2RhdGE/LmZvY3VzZWRFdmVudFBhdGhzfT5cbiAgICAgICAgICB7e1xuICAgICAgICAgICAgZmxvYXRpbmdHcmFwaDogKFxuICAgICAgICAgICAgICA8RmxvYXRpbmdHcmFwaFxuICAgICAgICAgICAgICAgIGlzT3Blbj17Z2xvYmFsX2RhdGE/LmZsb2F0aW5nR3JhcGgub3Blbn1cbiAgICAgICAgICAgICAgICBjdXN0b21IaWdoQ2hhcnRPcHRpb25zPXtkbmRHcmFwaEluaXRPcHRpb25zfVxuICAgICAgICAgICAgICAgIGNsb3NlR3JhcGhIYW5kbGVyPXsoKSA9PiB7XG4gICAgICAgICAgICAgICAgICBkaXNwYXRjaChjbG9zZUZsb2F0aW5nR3JhcGgoKSk7XG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICBnbG9iYWxEYXRhRmxvYXRpbmdHcmFwaD17Z2xvYmFsX2RhdGEuZmxvYXRpbmdHcmFwaH1cbiAgICAgICAgICAgICAgICBldmVudF9kYXRhPXtldmVudHNfZGF0YT8uZm9jdXNlZEV2ZW50fVxuICAgICAgICAgICAgICAgIGdyYXBoSWQ9e2dsb2JhbF9kYXRhPy5mbG9hdGluZ0dyYXBoPy5wb2ludD8uaWR9XG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICApLFxuICAgICAgICAgIH19XG4gICAgICAgIDwvRHJhZ0FuZERyb3BBcmVhPlxuICAgICAgfVxuICAgIDwvTWFwPlxuICApO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsV0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsMEJBQUEsR0FBQUYsT0FB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
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _reactBootstrap = require("react-bootstrap");
|
|
10
|
+
var LeftPanel = function LeftPanel(_ref) {
|
|
11
|
+
var points = _ref.points,
|
|
12
|
+
selectedPoint = _ref.selectedPoint,
|
|
13
|
+
setSelectedPoint = _ref.setSelectedPoint;
|
|
14
|
+
return /*#__PURE__*/_react.default.createElement(_reactBootstrap.Container, {
|
|
15
|
+
className: "mt-4"
|
|
16
|
+
}, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Row, null, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Col, null, /*#__PURE__*/_react.default.createElement("h4", null, "Monitored Points(".concat(points.length, ")")), /*#__PURE__*/_react.default.createElement(_reactBootstrap.ListGroup, null, points.length > 0 && points.map(function (point) {
|
|
17
|
+
return /*#__PURE__*/_react.default.createElement(_reactBootstrap.ListGroup.Item, {
|
|
18
|
+
className: (selectedPoint === null || selectedPoint === void 0 ? void 0 : selectedPoint.id) === point.id ? 'list-item list-item-selected' : 'list-item',
|
|
19
|
+
key: point.id,
|
|
20
|
+
onClick: function onClick() {
|
|
21
|
+
return setSelectedPoint(point);
|
|
22
|
+
}
|
|
23
|
+
}, point.name);
|
|
24
|
+
})))));
|
|
25
|
+
};
|
|
26
|
+
var _default = LeftPanel;
|
|
27
|
+
exports.default = _default;
|
|
28
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9yZWFjdEJvb3RzdHJhcCIsIkxlZnRQYW5lbCIsIl9yZWYiLCJwb2ludHMiLCJzZWxlY3RlZFBvaW50Iiwic2V0U2VsZWN0ZWRQb2ludCIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50IiwiQ29udGFpbmVyIiwiY2xhc3NOYW1lIiwiUm93IiwiQ29sIiwiY29uY2F0IiwibGVuZ3RoIiwiTGlzdEdyb3VwIiwibWFwIiwicG9pbnQiLCJJdGVtIiwiaWQiLCJrZXkiLCJvbkNsaWNrIiwibmFtZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9PcGVyYXRpb25zUGFnZS9MZWZ0UGFuZWwudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgeyBDb250YWluZXIsIFJvdywgQ29sLCBMaXN0R3JvdXAgfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcblxuZXhwb3J0IGludGVyZmFjZSBMZWZ0UGFuZWxQcm9wcyB7XG4gIHBvaW50czogSVBvaW50W107XG4gIHNlbGVjdGVkUG9pbnQ6IElQb2ludCB8IG51bGw7XG4gIHNldFNlbGVjdGVkUG9pbnQ6IChwb2ludDogSVBvaW50KSA9PiB2b2lkO1xufVxuXG5jb25zdCBMZWZ0UGFuZWw6IFJlYWN0LkZDPExlZnRQYW5lbFByb3BzPiA9ICh7XG4gIHBvaW50cyxcbiAgc2VsZWN0ZWRQb2ludCxcbiAgc2V0U2VsZWN0ZWRQb2ludCxcbn0pID0+IHtcbiAgcmV0dXJuIChcbiAgICA8Q29udGFpbmVyIGNsYXNzTmFtZT1cIm10LTRcIj5cbiAgICAgIDxSb3c+XG4gICAgICAgIDxDb2w+XG4gICAgICAgICAgPGg0PntgTW9uaXRvcmVkIFBvaW50cygke3BvaW50cy5sZW5ndGh9KWB9PC9oND5cbiAgICAgICAgICA8TGlzdEdyb3VwPlxuICAgICAgICAgICAge3BvaW50cy5sZW5ndGggPiAwICYmXG4gICAgICAgICAgICAgIHBvaW50cy5tYXAoKHBvaW50KSA9PiAoXG4gICAgICAgICAgICAgICAgPExpc3RHcm91cC5JdGVtXG4gICAgICAgICAgICAgICAgICBjbGFzc05hbWU9e1xuICAgICAgICAgICAgICAgICAgICBzZWxlY3RlZFBvaW50Py5pZCA9PT0gcG9pbnQuaWRcbiAgICAgICAgICAgICAgICAgICAgICA/ICdsaXN0LWl0ZW0gbGlzdC1pdGVtLXNlbGVjdGVkJ1xuICAgICAgICAgICAgICAgICAgICAgIDogJ2xpc3QtaXRlbSdcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIGtleT17cG9pbnQuaWR9XG4gICAgICAgICAgICAgICAgICBvbkNsaWNrPXsoKSA9PiBzZXRTZWxlY3RlZFBvaW50KHBvaW50KX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICB7cG9pbnQubmFtZX1cbiAgICAgICAgICAgICAgICA8L0xpc3RHcm91cC5JdGVtPlxuICAgICAgICAgICAgICApKX1cbiAgICAgICAgICA8L0xpc3RHcm91cD5cbiAgICAgICAgPC9Db2w+XG4gICAgICA8L1Jvdz5cbiAgICA8L0NvbnRhaW5lcj5cbiAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IExlZnRQYW5lbDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLGVBQUEsR0FBQUQsT0FBQTtBQVNBLElBQU1FLFNBQW1DLEdBQUcsU0FBdENBLFNBQW1DQSxDQUFBQyxJQUFBLEVBSW5DO0VBQUEsSUFISkMsTUFBTSxHQUFBRCxJQUFBLENBQU5DLE1BQU07SUFDTkMsYUFBYSxHQUFBRixJQUFBLENBQWJFLGFBQWE7SUFDYkMsZ0JBQWdCLEdBQUFILElBQUEsQ0FBaEJHLGdCQUFnQjtFQUVoQixvQkFDRVIsTUFBQSxDQUFBUyxPQUFBLENBQUFDLGFBQUEsQ0FBQ1AsZUFBQSxDQUFBUSxTQUFTO0lBQUNDLFNBQVMsRUFBQztFQUFNLGdCQUN6QlosTUFBQSxDQUFBUyxPQUFBLENBQUFDLGFBQUEsQ0FBQ1AsZUFBQSxDQUFBVSxHQUFHLHFCQUNGYixNQUFBLENBQUFTLE9BQUEsQ0FBQUMsYUFBQSxDQUFDUCxlQUFBLENBQUFXLEdBQUcscUJBQ0ZkLE1BQUEsQ0FBQVMsT0FBQSxDQUFBQyxhQUFBLGlDQUFBSyxNQUFBLENBQXlCVCxNQUFNLENBQUNVLE1BQU0sTUFBUSxDQUFDLGVBQy9DaEIsTUFBQSxDQUFBUyxPQUFBLENBQUFDLGFBQUEsQ0FBQ1AsZUFBQSxDQUFBYyxTQUFTLFFBQ1BYLE1BQU0sQ0FBQ1UsTUFBTSxHQUFHLENBQUMsSUFDaEJWLE1BQU0sQ0FBQ1ksR0FBRyxDQUFDLFVBQUNDLEtBQUs7SUFBQSxvQkFDZm5CLE1BQUEsQ0FBQVMsT0FBQSxDQUFBQyxhQUFBLENBQUNQLGVBQUEsQ0FBQWMsU0FBUyxDQUFDRyxJQUFJO01BQ2JSLFNBQVMsRUFDUCxDQUFBTCxhQUFhLGFBQWJBLGFBQWEsdUJBQWJBLGFBQWEsQ0FBRWMsRUFBRSxNQUFLRixLQUFLLENBQUNFLEVBQUUsR0FDMUIsOEJBQThCLEdBQzlCLFdBQ0w7TUFDREMsR0FBRyxFQUFFSCxLQUFLLENBQUNFLEVBQUc7TUFDZEUsT0FBTyxFQUFFLFNBQUFBLFFBQUE7UUFBQSxPQUFNZixnQkFBZ0IsQ0FBQ1csS0FBSyxDQUFDO01BQUE7SUFBQyxHQUV0Q0EsS0FBSyxDQUFDSyxJQUNPLENBQUM7RUFBQSxDQUNsQixDQUNNLENBQ1IsQ0FDRixDQUNJLENBQUM7QUFFaEIsQ0FBQztBQUFDLElBQUFDLFFBQUEsR0FFYXJCLFNBQVM7QUFBQXNCLE9BQUEsQ0FBQWpCLE9BQUEsR0FBQWdCLFFBQUEifQ==
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.Map = void 0;
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _useMap = require("./useMap");
|
|
11
|
+
var _ErrorBoundary = _interopRequireDefault(require("utilities/ErrorBoundary"));
|
|
12
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
13
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
14
|
+
var Map = function Map(_ref) {
|
|
15
|
+
var points = _ref.points,
|
|
16
|
+
edges = _ref.edges,
|
|
17
|
+
areas = _ref.areas,
|
|
18
|
+
selectedPoint = _ref.selectedPoint,
|
|
19
|
+
updateSelectedPoint = _ref.updateSelectedPoint;
|
|
20
|
+
var mapRef = (0, _react.useRef)(null);
|
|
21
|
+
(0, _useMap.useMap)(mapRef, points, edges, areas, selectedPoint, updateSelectedPoint);
|
|
22
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
23
|
+
className: "map-container"
|
|
24
|
+
}, /*#__PURE__*/_react.default.createElement(_ErrorBoundary.default, null, /*#__PURE__*/_react.default.createElement("div", {
|
|
25
|
+
ref: mapRef,
|
|
26
|
+
className: "map-heights"
|
|
27
|
+
})));
|
|
28
|
+
};
|
|
29
|
+
exports.Map = Map;
|
|
30
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfdXNlTWFwIiwiX0Vycm9yQm91bmRhcnkiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsIl90eXBlb2YiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJNYXAiLCJfcmVmIiwicG9pbnRzIiwiZWRnZXMiLCJhcmVhcyIsInNlbGVjdGVkUG9pbnQiLCJ1cGRhdGVTZWxlY3RlZFBvaW50IiwibWFwUmVmIiwidXNlUmVmIiwidXNlTWFwIiwiY3JlYXRlRWxlbWVudCIsImNsYXNzTmFtZSIsInJlZiIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvT3BlcmF0aW9uc1BhZ2UvTWFwL01hcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7IHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZU1hcCB9IGZyb20gJy4vdXNlTWFwJztcbmltcG9ydCBFcnJvckJvdW5kYXJ5IGZyb20gJ3NyYy91dGlsaXRpZXMvRXJyb3JCb3VuZGFyeSc7XG5pbXBvcnQgeyBJUG9pbnQgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL21vZGVscy9JUG9pbnQnO1xuaW1wb3J0IHsgSUVkZ2UgfSBmcm9tICdzcmMvc3RvcmUvZWRnZXMvbW9kZWxzL0lFZGdlJztcbmltcG9ydCB7IElBcmVhIH0gZnJvbSAnc3JjL3N0b3JlL2FyZWFzL21vZGVscy9JQXJlYSc7XG5cbmludGVyZmFjZSBNYXBQcm9wcyB7XG4gIHBvaW50czogSVBvaW50W107XG4gIGVkZ2VzOiBJRWRnZVtdO1xuICBhcmVhczogSUFyZWFbXTtcbiAgc2VsZWN0ZWRQb2ludDogSVBvaW50IHwgbnVsbDtcbiAgdXBkYXRlU2VsZWN0ZWRQb2ludDogKHBvaW50OiBJUG9pbnQpID0+IHZvaWQ7XG59XG5cbmV4cG9ydCBjb25zdCBNYXA6IFJlYWN0LkZDPE1hcFByb3BzPiA9ICh7XG4gIHBvaW50cyxcbiAgZWRnZXMsXG4gIGFyZWFzLFxuICBzZWxlY3RlZFBvaW50LFxuICB1cGRhdGVTZWxlY3RlZFBvaW50LFxufSkgPT4ge1xuICBjb25zdCBtYXBSZWYgPSB1c2VSZWY8SFRNTERpdkVsZW1lbnQ+KG51bGwpO1xuICB1c2VNYXAobWFwUmVmLCBwb2ludHMsIGVkZ2VzLCBhcmVhcywgc2VsZWN0ZWRQb2ludCwgdXBkYXRlU2VsZWN0ZWRQb2ludCk7XG5cbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT1cIm1hcC1jb250YWluZXJcIj5cbiAgICAgIDxFcnJvckJvdW5kYXJ5PlxuICAgICAgICA8ZGl2IHJlZj17bWFwUmVmfSBjbGFzc05hbWU9XCJtYXAtaGVpZ2h0c1wiIC8+XG4gICAgICA8L0Vycm9yQm91bmRhcnk+XG4gICAgPC9kaXY+XG4gICk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FBQTtBQUNBLElBQUFFLGNBQUEsR0FBQUMsc0JBQUEsQ0FBQUgsT0FBQTtBQUF3RCxTQUFBSSx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEseUJBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQU4sd0JBQUFVLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxhQUFBRSxPQUFBLENBQUFGLEdBQUEseUJBQUFBLEdBQUEsNEJBQUFHLE9BQUEsRUFBQUgsR0FBQSxVQUFBSSxLQUFBLEdBQUFULHdCQUFBLENBQUFDLFdBQUEsT0FBQVEsS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUwsR0FBQSxZQUFBSSxLQUFBLENBQUFFLEdBQUEsQ0FBQU4sR0FBQSxTQUFBTyxNQUFBLFdBQUFDLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUMsY0FBQSxJQUFBRCxNQUFBLENBQUFFLHdCQUFBLFdBQUFDLEdBQUEsSUFBQVosR0FBQSxRQUFBWSxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFmLEdBQUEsRUFBQVksR0FBQSxTQUFBSSxJQUFBLEdBQUFSLHFCQUFBLEdBQUFDLE1BQUEsQ0FBQUUsd0JBQUEsQ0FBQVgsR0FBQSxFQUFBWSxHQUFBLGNBQUFJLElBQUEsS0FBQUEsSUFBQSxDQUFBVixHQUFBLElBQUFVLElBQUEsQ0FBQUMsR0FBQSxLQUFBUixNQUFBLENBQUFDLGNBQUEsQ0FBQUgsTUFBQSxFQUFBSyxHQUFBLEVBQUFJLElBQUEsWUFBQVQsTUFBQSxDQUFBSyxHQUFBLElBQUFaLEdBQUEsQ0FBQVksR0FBQSxTQUFBTCxNQUFBLENBQUFKLE9BQUEsR0FBQUgsR0FBQSxNQUFBSSxLQUFBLElBQUFBLEtBQUEsQ0FBQWEsR0FBQSxDQUFBakIsR0FBQSxFQUFBTyxNQUFBLFlBQUFBLE1BQUE7QUFhakQsSUFBTVcsR0FBdUIsR0FBRyxTQUExQkEsR0FBdUJBLENBQUFDLElBQUEsRUFNOUI7RUFBQSxJQUxKQyxNQUFNLEdBQUFELElBQUEsQ0FBTkMsTUFBTTtJQUNOQyxLQUFLLEdBQUFGLElBQUEsQ0FBTEUsS0FBSztJQUNMQyxLQUFLLEdBQUFILElBQUEsQ0FBTEcsS0FBSztJQUNMQyxhQUFhLEdBQUFKLElBQUEsQ0FBYkksYUFBYTtJQUNiQyxtQkFBbUIsR0FBQUwsSUFBQSxDQUFuQkssbUJBQW1CO0VBRW5CLElBQU1DLE1BQU0sR0FBRyxJQUFBQyxhQUFNLEVBQWlCLElBQUksQ0FBQztFQUMzQyxJQUFBQyxjQUFNLEVBQUNGLE1BQU0sRUFBRUwsTUFBTSxFQUFFQyxLQUFLLEVBQUVDLEtBQUssRUFBRUMsYUFBYSxFQUFFQyxtQkFBbUIsQ0FBQztFQUV4RSxvQkFDRW5DLE1BQUEsQ0FBQWMsT0FBQSxDQUFBeUIsYUFBQTtJQUFLQyxTQUFTLEVBQUM7RUFBZSxnQkFDNUJ4QyxNQUFBLENBQUFjLE9BQUEsQ0FBQXlCLGFBQUEsQ0FBQ25DLGNBQUEsQ0FBQVUsT0FBYSxxQkFDWmQsTUFBQSxDQUFBYyxPQUFBLENBQUF5QixhQUFBO0lBQUtFLEdBQUcsRUFBRUwsTUFBTztJQUFDSSxTQUFTLEVBQUM7RUFBYSxDQUFFLENBQzlCLENBQ1osQ0FBQztBQUVWLENBQUM7QUFBQ0UsT0FBQSxDQUFBYixHQUFBLEdBQUFBLEdBQUEifQ==
|
|
@@ -0,0 +1,232 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.useMap = void 0;
|
|
8
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
9
|
+
var _leaflet = _interopRequireDefault(require("leaflet"));
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
var _PointIcon = require("Widgets/Map/points/PointIcon");
|
|
12
|
+
var _theme = require("styles/theme/theme");
|
|
13
|
+
var _MapUtils = require("Widgets/Map/MapUtils");
|
|
14
|
+
var useMap = function useMap(mapRef, points, edges, areas, selectedPoint, updateSelectedPoint) {
|
|
15
|
+
var _useState = (0, _react.useState)(),
|
|
16
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
17
|
+
map = _useState2[0],
|
|
18
|
+
setMap = _useState2[1];
|
|
19
|
+
var _useState3 = (0, _react.useState)(null),
|
|
20
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
21
|
+
focusedMarker = _useState4[0],
|
|
22
|
+
setFocusedMarker = _useState4[1];
|
|
23
|
+
var pointsLayerRef = (0, _react.useRef)();
|
|
24
|
+
var edgesLayerRef = (0, _react.useRef)();
|
|
25
|
+
var areasLayerRef = (0, _react.useRef)();
|
|
26
|
+
(0, _react.useEffect)(function () {
|
|
27
|
+
if (!mapRef.current) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
var mapTypes = (0, _MapUtils.baseMaps)(_theme.leafletMap.mapDefault, _theme.leafletMap.satellite);
|
|
31
|
+
var mapTemp = _leaflet.default.map(mapRef.current, {
|
|
32
|
+
renderer: _leaflet.default.canvas()
|
|
33
|
+
});
|
|
34
|
+
Object.values(mapTypes)[0].addTo(mapTemp);
|
|
35
|
+
_leaflet.default.control.layers(mapTypes, {}, {
|
|
36
|
+
position: 'bottomright'
|
|
37
|
+
}).addTo(mapTemp);
|
|
38
|
+
setMap(mapTemp);
|
|
39
|
+
return function () {
|
|
40
|
+
if (!mapTemp) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
mapTemp.off();
|
|
44
|
+
mapTemp.remove();
|
|
45
|
+
};
|
|
46
|
+
}, []);
|
|
47
|
+
(0, _react.useEffect)(function () {
|
|
48
|
+
var _pointsLayerRef$curre;
|
|
49
|
+
if (focusedMarker) {
|
|
50
|
+
focusedMarker.fire('mouseout');
|
|
51
|
+
}
|
|
52
|
+
(_pointsLayerRef$curre = pointsLayerRef.current) === null || _pointsLayerRef$curre === void 0 ? void 0 : _pointsLayerRef$curre.eachLayer(function (marker) {
|
|
53
|
+
if (selectedPoint && marker.options.kando_object_id === (selectedPoint === null || selectedPoint === void 0 ? void 0 : selectedPoint.id)) {
|
|
54
|
+
marker.fire('mouseover');
|
|
55
|
+
setFocusedMarker(marker);
|
|
56
|
+
return;
|
|
57
|
+
}
|
|
58
|
+
});
|
|
59
|
+
}, [selectedPoint]);
|
|
60
|
+
var handleMarkerClick = function handleMarkerClick(point) {
|
|
61
|
+
updateSelectedPoint(point);
|
|
62
|
+
};
|
|
63
|
+
var addMarkers = function addMarkers() {
|
|
64
|
+
if (!map || !points) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
if (pointsLayerRef.current) {
|
|
68
|
+
if (map.hasLayer(pointsLayerRef.current)) {
|
|
69
|
+
map.removeLayer(pointsLayerRef.current);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
pointsLayerRef.current = _leaflet.default.featureGroup();
|
|
73
|
+
pointsLayerRef.current.addTo(map);
|
|
74
|
+
if (!pointsLayerRef.current.getLayers().length) {
|
|
75
|
+
points.forEach(function (point) {
|
|
76
|
+
var _pointsLayerRef$curre2;
|
|
77
|
+
var icon = (0, _PointIcon.getPointIconByType)(point.group.type, point.name, '', false, true);
|
|
78
|
+
var focusedIcon = (0, _PointIcon.getPointIconByType)(point.group.type, point.name, '', true, false);
|
|
79
|
+
var marker = getMarker(point);
|
|
80
|
+
if (marker instanceof _leaflet.default.Marker) {
|
|
81
|
+
marker.setIcon(icon);
|
|
82
|
+
// The use of marker._isInside is to overcome the issue that mouseover is endlessly triggered
|
|
83
|
+
// and we need it onley once
|
|
84
|
+
marker.on('mouseover', function () {
|
|
85
|
+
if (!marker._isInside) {
|
|
86
|
+
marker._isInside = true;
|
|
87
|
+
marker.setIcon(focusedIcon);
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
marker.on('mouseout', function () {
|
|
91
|
+
marker._isInside = false;
|
|
92
|
+
marker.setIcon(icon);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
marker.on('click', function () {
|
|
96
|
+
handleMarkerClick(point);
|
|
97
|
+
});
|
|
98
|
+
(_pointsLayerRef$curre2 = pointsLayerRef.current) === null || _pointsLayerRef$curre2 === void 0 ? void 0 : _pointsLayerRef$curre2.addLayer(marker);
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
if (pointsLayerRef.current.getLayers().length) {
|
|
102
|
+
map.fitBounds(pointsLayerRef.current.getBounds());
|
|
103
|
+
} else {
|
|
104
|
+
map.setView([32.219157, 34.982481], 12);
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
var getMarker = function getMarker(point) {
|
|
108
|
+
if (point.has_device === true || point.group.type === 'Groups::WastewaterTreatmentPlant') {
|
|
109
|
+
return _leaflet.default.marker([point.latitude, point.longitude], {
|
|
110
|
+
kando_object_id: point.id
|
|
111
|
+
});
|
|
112
|
+
} else {
|
|
113
|
+
return _leaflet.default.circleMarker([point.latitude, point.longitude], {
|
|
114
|
+
radius: 4,
|
|
115
|
+
// circle radius in pixels
|
|
116
|
+
color: '#000000',
|
|
117
|
+
// border (stroke) color
|
|
118
|
+
weight: 1,
|
|
119
|
+
// border (stroke) width
|
|
120
|
+
fillColor: '#ffffff',
|
|
121
|
+
// fill color (white)
|
|
122
|
+
fillOpacity: 1,
|
|
123
|
+
// fully opaque
|
|
124
|
+
kando_object_id: point.id
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
var addEdges = function addEdges() {
|
|
129
|
+
// console.log('edges', edges);
|
|
130
|
+
if (!map || !edges) {
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
var pointLookup = new Map();
|
|
134
|
+
points.forEach(function (p) {
|
|
135
|
+
return pointLookup.set(p.id, p);
|
|
136
|
+
});
|
|
137
|
+
if (edgesLayerRef.current) {
|
|
138
|
+
if (map.hasLayer(edgesLayerRef.current)) {
|
|
139
|
+
map.removeLayer(edgesLayerRef.current);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
edgesLayerRef.current = _leaflet.default.featureGroup();
|
|
143
|
+
edgesLayerRef.current.addTo(map);
|
|
144
|
+
edges.forEach(function (edge) {
|
|
145
|
+
var _edgesLayerRef$curren;
|
|
146
|
+
var sourcePoint = pointLookup.get(edge.source_point_id);
|
|
147
|
+
var targetPoint = pointLookup.get(edge.target_point_id);
|
|
148
|
+
// console.log('sourcePoint', sourcePoint);
|
|
149
|
+
// console.log('targetPoint', targetPoint);
|
|
150
|
+
|
|
151
|
+
if (!sourcePoint || !targetPoint) {
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
154
|
+
var latlngs = [[sourcePoint === null || sourcePoint === void 0 ? void 0 : sourcePoint.latitude, sourcePoint === null || sourcePoint === void 0 ? void 0 : sourcePoint.longitude], [targetPoint === null || targetPoint === void 0 ? void 0 : targetPoint.latitude, targetPoint === null || targetPoint === void 0 ? void 0 : targetPoint.longitude]];
|
|
155
|
+
var polyline = _leaflet.default.polyline(latlngs, {
|
|
156
|
+
color: 'black',
|
|
157
|
+
weight: 1,
|
|
158
|
+
opacity: 0.5,
|
|
159
|
+
smoothFactor: 1
|
|
160
|
+
});
|
|
161
|
+
(_edgesLayerRef$curren = edgesLayerRef.current) === null || _edgesLayerRef$curren === void 0 ? void 0 : _edgesLayerRef$curren.addLayer(polyline);
|
|
162
|
+
var decorator = _leaflet.default.polylineDecorator(polyline, {
|
|
163
|
+
patterns: [{
|
|
164
|
+
offset: 20,
|
|
165
|
+
repeat: 60,
|
|
166
|
+
symbol: _leaflet.default.Symbol.arrowHead({
|
|
167
|
+
pixelSize: 4,
|
|
168
|
+
polygon: false,
|
|
169
|
+
pathOptions: {
|
|
170
|
+
stroke: true,
|
|
171
|
+
color: '#555',
|
|
172
|
+
weight: 1,
|
|
173
|
+
opacity: 0.8
|
|
174
|
+
}
|
|
175
|
+
})
|
|
176
|
+
}]
|
|
177
|
+
});
|
|
178
|
+
decorator.addTo(map);
|
|
179
|
+
});
|
|
180
|
+
};
|
|
181
|
+
var addAreas = function addAreas() {
|
|
182
|
+
if (!map || !areas) {
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
185
|
+
if (areasLayerRef.current) {
|
|
186
|
+
if (map.hasLayer(areasLayerRef.current)) {
|
|
187
|
+
map.removeLayer(areasLayerRef.current);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
areasLayerRef.current = _leaflet.default.featureGroup();
|
|
191
|
+
areasLayerRef.current.addTo(map);
|
|
192
|
+
var flattenAreas = function flattenAreas() {
|
|
193
|
+
var areas = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
|
|
194
|
+
var allAreas = [];
|
|
195
|
+
areas.forEach(function (area) {
|
|
196
|
+
allAreas.push(area);
|
|
197
|
+
|
|
198
|
+
// If there are sub_areas, recurse and concatenate
|
|
199
|
+
if (Array.isArray(area.sub_areas) && area.sub_areas.length > 0) {
|
|
200
|
+
allAreas = allAreas.concat(flattenAreas(area.sub_areas));
|
|
201
|
+
}
|
|
202
|
+
});
|
|
203
|
+
return allAreas;
|
|
204
|
+
};
|
|
205
|
+
var allAreas = flattenAreas(areas);
|
|
206
|
+
allAreas.forEach(function (area) {
|
|
207
|
+
var _areasLayerRef$curren;
|
|
208
|
+
var polygon = _leaflet.default.polygon(area.shape_data, {
|
|
209
|
+
color: 'black',
|
|
210
|
+
weight: 1,
|
|
211
|
+
opacity: 0.8,
|
|
212
|
+
smoothFactor: 1,
|
|
213
|
+
interactive: false,
|
|
214
|
+
kando_object_id: area.area_id
|
|
215
|
+
});
|
|
216
|
+
polygon.bindTooltip(area.area_name, {
|
|
217
|
+
permanent: true,
|
|
218
|
+
direction: 'center',
|
|
219
|
+
className: 'area-tooltip'
|
|
220
|
+
});
|
|
221
|
+
(_areasLayerRef$curren = areasLayerRef.current) === null || _areasLayerRef$curren === void 0 ? void 0 : _areasLayerRef$curren.addLayer(polygon);
|
|
222
|
+
});
|
|
223
|
+
};
|
|
224
|
+
(0, _react.useEffect)(function () {
|
|
225
|
+
addAreas();
|
|
226
|
+
addMarkers();
|
|
227
|
+
addEdges();
|
|
228
|
+
}, [points, map]);
|
|
229
|
+
return map;
|
|
230
|
+
};
|
|
231
|
+
exports.useMap = useMap;
|
|
232
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbGVhZmxldCIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwiX3JlYWN0IiwiX1BvaW50SWNvbiIsIl90aGVtZSIsIl9NYXBVdGlscyIsInVzZU1hcCIsIm1hcFJlZiIsInBvaW50cyIsImVkZ2VzIiwiYXJlYXMiLCJzZWxlY3RlZFBvaW50IiwidXBkYXRlU2VsZWN0ZWRQb2ludCIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsImRlZmF1bHQiLCJtYXAiLCJzZXRNYXAiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsImZvY3VzZWRNYXJrZXIiLCJzZXRGb2N1c2VkTWFya2VyIiwicG9pbnRzTGF5ZXJSZWYiLCJ1c2VSZWYiLCJlZGdlc0xheWVyUmVmIiwiYXJlYXNMYXllclJlZiIsInVzZUVmZmVjdCIsImN1cnJlbnQiLCJtYXBUeXBlcyIsImJhc2VNYXBzIiwibGVhZmxldE1hcCIsIm1hcERlZmF1bHQiLCJzYXRlbGxpdGUiLCJtYXBUZW1wIiwiTCIsInJlbmRlcmVyIiwiY2FudmFzIiwiT2JqZWN0IiwidmFsdWVzIiwiYWRkVG8iLCJjb250cm9sIiwibGF5ZXJzIiwicG9zaXRpb24iLCJvZmYiLCJyZW1vdmUiLCJfcG9pbnRzTGF5ZXJSZWYkY3VycmUiLCJmaXJlIiwiZWFjaExheWVyIiwibWFya2VyIiwib3B0aW9ucyIsImthbmRvX29iamVjdF9pZCIsImlkIiwiaGFuZGxlTWFya2VyQ2xpY2siLCJwb2ludCIsImFkZE1hcmtlcnMiLCJoYXNMYXllciIsInJlbW92ZUxheWVyIiwiZmVhdHVyZUdyb3VwIiwiZ2V0TGF5ZXJzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9wb2ludHNMYXllclJlZiRjdXJyZTIiLCJpY29uIiwiZ2V0UG9pbnRJY29uQnlUeXBlIiwiZ3JvdXAiLCJ0eXBlIiwibmFtZSIsImZvY3VzZWRJY29uIiwiZ2V0TWFya2VyIiwiTWFya2VyIiwic2V0SWNvbiIsIm9uIiwiX2lzSW5zaWRlIiwiYWRkTGF5ZXIiLCJmaXRCb3VuZHMiLCJnZXRCb3VuZHMiLCJzZXRWaWV3IiwiaGFzX2RldmljZSIsImxhdGl0dWRlIiwibG9uZ2l0dWRlIiwiY2lyY2xlTWFya2VyIiwicmFkaXVzIiwiY29sb3IiLCJ3ZWlnaHQiLCJmaWxsQ29sb3IiLCJmaWxsT3BhY2l0eSIsImFkZEVkZ2VzIiwicG9pbnRMb29rdXAiLCJNYXAiLCJwIiwic2V0IiwiZWRnZSIsIl9lZGdlc0xheWVyUmVmJGN1cnJlbiIsInNvdXJjZVBvaW50IiwiZ2V0Iiwic291cmNlX3BvaW50X2lkIiwidGFyZ2V0UG9pbnQiLCJ0YXJnZXRfcG9pbnRfaWQiLCJsYXRsbmdzIiwicG9seWxpbmUiLCJvcGFjaXR5Iiwic21vb3RoRmFjdG9yIiwiZGVjb3JhdG9yIiwicG9seWxpbmVEZWNvcmF0b3IiLCJwYXR0ZXJucyIsIm9mZnNldCIsInJlcGVhdCIsInN5bWJvbCIsIlN5bWJvbCIsImFycm93SGVhZCIsInBpeGVsU2l6ZSIsInBvbHlnb24iLCJwYXRoT3B0aW9ucyIsInN0cm9rZSIsImFkZEFyZWFzIiwiZmxhdHRlbkFyZWFzIiwiYXJndW1lbnRzIiwidW5kZWZpbmVkIiwiYWxsQXJlYXMiLCJhcmVhIiwicHVzaCIsIkFycmF5IiwiaXNBcnJheSIsInN1Yl9hcmVhcyIsImNvbmNhdCIsIl9hcmVhc0xheWVyUmVmJGN1cnJlbiIsInNoYXBlX2RhdGEiLCJpbnRlcmFjdGl2ZSIsImFyZWFfaWQiLCJiaW5kVG9vbHRpcCIsImFyZWFfbmFtZSIsInBlcm1hbmVudCIsImRpcmVjdGlvbiIsImNsYXNzTmFtZSIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvcGFnZXMvT3BlcmF0aW9uc1BhZ2UvTWFwL3VzZU1hcC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IEwsIHsgTWFya2VyIH0gZnJvbSAnbGVhZmxldCc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VSZWYsIHVzZVN0YXRlIH0gZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgZ2V0UG9pbnRJY29uQnlUeXBlIH0gZnJvbSAnc3JjL1dpZGdldHMvTWFwL3BvaW50cy9Qb2ludEljb24nO1xuaW1wb3J0IHsgbGVhZmxldE1hcCB9IGZyb20gJ3NyYy9zdHlsZXMvdGhlbWUvdGhlbWUnO1xuaW1wb3J0IHsgYmFzZU1hcHMgfSBmcm9tICdzcmMvV2lkZ2V0cy9NYXAvTWFwVXRpbHMnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCB7IElFZGdlIH0gZnJvbSAnc3JjL3N0b3JlL2VkZ2VzL21vZGVscy9JRWRnZSc7XG5pbXBvcnQgeyBJQXJlYSB9IGZyb20gJ3NyYy9zdG9yZS9hcmVhcy9tb2RlbHMvSUFyZWEnO1xuXG5leHBvcnQgY29uc3QgdXNlTWFwID0gKFxuICBtYXBSZWY6IFJlYWN0LlJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD4sXG4gIHBvaW50czogSVBvaW50W10sXG4gIGVkZ2VzOiBJRWRnZVtdLFxuICBhcmVhczogSUFyZWFbXSxcbiAgc2VsZWN0ZWRQb2ludDogSVBvaW50IHwgbnVsbCxcbiAgdXBkYXRlU2VsZWN0ZWRQb2ludDogKHBvaW50OiBJUG9pbnQpID0+IHZvaWQsXG4pOiBMLk1hcCB8IHVuZGVmaW5lZCA9PiB7XG4gIGNvbnN0IFttYXAsIHNldE1hcF0gPSB1c2VTdGF0ZTxMLk1hcD4oKTtcbiAgY29uc3QgW2ZvY3VzZWRNYXJrZXIsIHNldEZvY3VzZWRNYXJrZXJdID0gdXNlU3RhdGU8TWFya2VyIHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IHBvaW50c0xheWVyUmVmID0gdXNlUmVmPEwuRmVhdHVyZUdyb3VwPigpO1xuICBjb25zdCBlZGdlc0xheWVyUmVmID0gdXNlUmVmPEwuRmVhdHVyZUdyb3VwPigpO1xuICBjb25zdCBhcmVhc0xheWVyUmVmID0gdXNlUmVmPEwuRmVhdHVyZUdyb3VwPigpO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKCFtYXBSZWYuY3VycmVudCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IG1hcFR5cGVzID0gYmFzZU1hcHMobGVhZmxldE1hcC5tYXBEZWZhdWx0LCBsZWFmbGV0TWFwLnNhdGVsbGl0ZSk7XG4gICAgY29uc3QgbWFwVGVtcCA9IEwubWFwKG1hcFJlZi5jdXJyZW50LCB7IHJlbmRlcmVyOiBMLmNhbnZhcygpIH0pO1xuXG4gICAgT2JqZWN0LnZhbHVlcyhtYXBUeXBlcylbMF0uYWRkVG8obWFwVGVtcCk7XG5cbiAgICBMLmNvbnRyb2wubGF5ZXJzKG1hcFR5cGVzLCB7fSwgeyBwb3NpdGlvbjogJ2JvdHRvbXJpZ2h0JyB9KS5hZGRUbyhtYXBUZW1wKTtcblxuICAgIHNldE1hcChtYXBUZW1wKTtcblxuICAgIHJldHVybiAoKSA9PiB7XG4gICAgICBpZiAoIW1hcFRlbXApIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgbWFwVGVtcC5vZmYoKTtcbiAgICAgIG1hcFRlbXAucmVtb3ZlKCk7XG4gICAgfTtcbiAgfSwgW10pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKGZvY3VzZWRNYXJrZXIpIHtcbiAgICAgIGZvY3VzZWRNYXJrZXIuZmlyZSgnbW91c2VvdXQnKTtcbiAgICB9XG5cbiAgICBwb2ludHNMYXllclJlZi5jdXJyZW50Py5lYWNoTGF5ZXIoKG1hcmtlcikgPT4ge1xuICAgICAgaWYgKFxuICAgICAgICBzZWxlY3RlZFBvaW50ICYmXG4gICAgICAgIG1hcmtlci5vcHRpb25zLmthbmRvX29iamVjdF9pZCA9PT0gc2VsZWN0ZWRQb2ludD8uaWRcbiAgICAgICkge1xuICAgICAgICBtYXJrZXIuZmlyZSgnbW91c2VvdmVyJyk7XG4gICAgICAgIHNldEZvY3VzZWRNYXJrZXIobWFya2VyKTtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgIH0pO1xuICB9LCBbc2VsZWN0ZWRQb2ludF0pO1xuXG4gIGNvbnN0IGhhbmRsZU1hcmtlckNsaWNrID0gKHBvaW50KSA9PiB7XG4gICAgdXBkYXRlU2VsZWN0ZWRQb2ludChwb2ludCk7XG4gIH07XG5cbiAgY29uc3QgYWRkTWFya2VycyA9ICgpID0+IHtcbiAgICBpZiAoIW1hcCB8fCAhcG9pbnRzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgaWYgKHBvaW50c0xheWVyUmVmLmN1cnJlbnQpIHtcbiAgICAgIGlmIChtYXAuaGFzTGF5ZXIocG9pbnRzTGF5ZXJSZWYuY3VycmVudCkpIHtcbiAgICAgICAgbWFwLnJlbW92ZUxheWVyKHBvaW50c0xheWVyUmVmLmN1cnJlbnQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIHBvaW50c0xheWVyUmVmLmN1cnJlbnQgPSBMLmZlYXR1cmVHcm91cCgpO1xuICAgIHBvaW50c0xheWVyUmVmLmN1cnJlbnQuYWRkVG8obWFwKTtcblxuICAgIGlmICghcG9pbnRzTGF5ZXJSZWYuY3VycmVudC5nZXRMYXllcnMoKS5sZW5ndGgpIHtcbiAgICAgIHBvaW50cy5mb3JFYWNoKChwb2ludCkgPT4ge1xuICAgICAgICBjb25zdCBpY29uID0gZ2V0UG9pbnRJY29uQnlUeXBlKFxuICAgICAgICAgIHBvaW50Lmdyb3VwLnR5cGUsXG4gICAgICAgICAgcG9pbnQubmFtZSxcbiAgICAgICAgICAnJyxcbiAgICAgICAgICBmYWxzZSxcbiAgICAgICAgICB0cnVlLFxuICAgICAgICApO1xuXG4gICAgICAgIGNvbnN0IGZvY3VzZWRJY29uID0gZ2V0UG9pbnRJY29uQnlUeXBlKFxuICAgICAgICAgIHBvaW50Lmdyb3VwLnR5cGUsXG4gICAgICAgICAgcG9pbnQubmFtZSxcbiAgICAgICAgICAnJyxcbiAgICAgICAgICB0cnVlLFxuICAgICAgICAgIGZhbHNlLFxuICAgICAgICApO1xuXG4gICAgICAgIGxldCBtYXJrZXIgPSBnZXRNYXJrZXIocG9pbnQpO1xuXG4gICAgICAgIGlmIChtYXJrZXIgaW5zdGFuY2VvZiBMLk1hcmtlcikge1xuICAgICAgICAgIG1hcmtlci5zZXRJY29uKGljb24pO1xuICAgICAgICAgIC8vIFRoZSB1c2Ugb2YgbWFya2VyLl9pc0luc2lkZSBpcyB0byBvdmVyY29tZSB0aGUgaXNzdWUgdGhhdCBtb3VzZW92ZXIgaXMgZW5kbGVzc2x5IHRyaWdnZXJlZFxuICAgICAgICAgIC8vIGFuZCB3ZSBuZWVkIGl0IG9ubGV5IG9uY2VcbiAgICAgICAgICBtYXJrZXIub24oJ21vdXNlb3ZlcicsICgpID0+IHtcbiAgICAgICAgICAgIGlmICghbWFya2VyLl9pc0luc2lkZSkge1xuICAgICAgICAgICAgICBtYXJrZXIuX2lzSW5zaWRlID0gdHJ1ZTtcbiAgICAgICAgICAgICAgbWFya2VyLnNldEljb24oZm9jdXNlZEljb24pO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIG1hcmtlci5vbignbW91c2VvdXQnLCAoKSA9PiB7XG4gICAgICAgICAgICBtYXJrZXIuX2lzSW5zaWRlID0gZmFsc2U7XG4gICAgICAgICAgICBtYXJrZXIuc2V0SWNvbihpY29uKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIG1hcmtlci5vbignY2xpY2snLCAoKSA9PiB7XG4gICAgICAgICAgaGFuZGxlTWFya2VyQ2xpY2socG9pbnQpO1xuICAgICAgICB9KTtcblxuICAgICAgICBwb2ludHNMYXllclJlZi5jdXJyZW50Py5hZGRMYXllcihtYXJrZXIpO1xuICAgICAgfSk7XG4gICAgfVxuXG4gICAgaWYgKHBvaW50c0xheWVyUmVmLmN1cnJlbnQuZ2V0TGF5ZXJzKCkubGVuZ3RoKSB7XG4gICAgICBtYXAuZml0Qm91bmRzKHBvaW50c0xheWVyUmVmLmN1cnJlbnQuZ2V0Qm91bmRzKCkpO1xuICAgIH0gZWxzZSB7XG4gICAgICBtYXAuc2V0VmlldyhbMzIuMjE5MTU3LCAzNC45ODI0ODFdLCAxMik7XG4gICAgfVxuICB9O1xuXG4gIGNvbnN0IGdldE1hcmtlciA9IChwb2ludDogSVBvaW50KSA9PiB7XG4gICAgaWYgKFxuICAgICAgcG9pbnQuaGFzX2RldmljZSA9PT0gdHJ1ZSB8fFxuICAgICAgcG9pbnQuZ3JvdXAudHlwZSA9PT0gJ0dyb3Vwczo6V2FzdGV3YXRlclRyZWF0bWVudFBsYW50J1xuICAgICkge1xuICAgICAgcmV0dXJuIEwubWFya2VyKFtwb2ludC5sYXRpdHVkZSwgcG9pbnQubG9uZ2l0dWRlXSwge1xuICAgICAgICBrYW5kb19vYmplY3RfaWQ6IHBvaW50LmlkLFxuICAgICAgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBMLmNpcmNsZU1hcmtlcihbcG9pbnQubGF0aXR1ZGUsIHBvaW50LmxvbmdpdHVkZV0sIHtcbiAgICAgICAgcmFkaXVzOiA0LCAvLyBjaXJjbGUgcmFkaXVzIGluIHBpeGVsc1xuICAgICAgICBjb2xvcjogJyMwMDAwMDAnLCAvLyBib3JkZXIgKHN0cm9rZSkgY29sb3JcbiAgICAgICAgd2VpZ2h0OiAxLCAvLyBib3JkZXIgKHN0cm9rZSkgd2lkdGhcbiAgICAgICAgZmlsbENvbG9yOiAnI2ZmZmZmZicsIC8vIGZpbGwgY29sb3IgKHdoaXRlKVxuICAgICAgICBmaWxsT3BhY2l0eTogMSwgLy8gZnVsbHkgb3BhcXVlXG4gICAgICAgIGthbmRvX29iamVjdF9pZDogcG9pbnQuaWQsXG4gICAgICB9KTtcbiAgICB9XG4gIH07XG5cbiAgY29uc3QgYWRkRWRnZXMgPSAoKSA9PiB7XG4gICAgLy8gY29uc29sZS5sb2coJ2VkZ2VzJywgZWRnZXMpO1xuICAgIGlmICghbWFwIHx8ICFlZGdlcykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHBvaW50TG9va3VwID0gbmV3IE1hcCgpO1xuICAgIHBvaW50cy5mb3JFYWNoKChwKSA9PiBwb2ludExvb2t1cC5zZXQocC5pZCwgcCkpO1xuXG4gICAgaWYgKGVkZ2VzTGF5ZXJSZWYuY3VycmVudCkge1xuICAgICAgaWYgKG1hcC5oYXNMYXllcihlZGdlc0xheWVyUmVmLmN1cnJlbnQpKSB7XG4gICAgICAgIG1hcC5yZW1vdmVMYXllcihlZGdlc0xheWVyUmVmLmN1cnJlbnQpO1xuICAgICAgfVxuICAgIH1cblxuICAgIGVkZ2VzTGF5ZXJSZWYuY3VycmVudCA9IEwuZmVhdHVyZUdyb3VwKCk7XG4gICAgZWRnZXNMYXllclJlZi5jdXJyZW50LmFkZFRvKG1hcCk7XG5cbiAgICBlZGdlcy5mb3JFYWNoKChlZGdlKSA9PiB7XG4gICAgICBjb25zdCBzb3VyY2VQb2ludCA9IHBvaW50TG9va3VwLmdldChlZGdlLnNvdXJjZV9wb2ludF9pZCk7XG4gICAgICBjb25zdCB0YXJnZXRQb2ludCA9IHBvaW50TG9va3VwLmdldChlZGdlLnRhcmdldF9wb2ludF9pZCk7XG4gICAgICAvLyBjb25zb2xlLmxvZygnc291cmNlUG9pbnQnLCBzb3VyY2VQb2ludCk7XG4gICAgICAvLyBjb25zb2xlLmxvZygndGFyZ2V0UG9pbnQnLCB0YXJnZXRQb2ludCk7XG5cbiAgICAgIGlmICghc291cmNlUG9pbnQgfHwgIXRhcmdldFBvaW50KSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgY29uc3QgbGF0bG5ncyA9IFtcbiAgICAgICAgW3NvdXJjZVBvaW50Py5sYXRpdHVkZSwgc291cmNlUG9pbnQ/LmxvbmdpdHVkZV0sXG4gICAgICAgIFt0YXJnZXRQb2ludD8ubGF0aXR1ZGUsIHRhcmdldFBvaW50Py5sb25naXR1ZGVdLFxuICAgICAgXTtcblxuICAgICAgY29uc3QgcG9seWxpbmUgPSBMLnBvbHlsaW5lKGxhdGxuZ3MsIHtcbiAgICAgICAgY29sb3I6ICdibGFjaycsXG4gICAgICAgIHdlaWdodDogMSxcbiAgICAgICAgb3BhY2l0eTogMC41LFxuICAgICAgICBzbW9vdGhGYWN0b3I6IDEsXG4gICAgICB9KTtcblxuICAgICAgZWRnZXNMYXllclJlZi5jdXJyZW50Py5hZGRMYXllcihwb2x5bGluZSk7XG5cbiAgICAgIGNvbnN0IGRlY29yYXRvciA9IEwucG9seWxpbmVEZWNvcmF0b3IocG9seWxpbmUsIHtcbiAgICAgICAgcGF0dGVybnM6IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBvZmZzZXQ6IDIwLFxuICAgICAgICAgICAgcmVwZWF0OiA2MCxcbiAgICAgICAgICAgIHN5bWJvbDogTC5TeW1ib2wuYXJyb3dIZWFkKHtcbiAgICAgICAgICAgICAgcGl4ZWxTaXplOiA0LFxuICAgICAgICAgICAgICBwb2x5Z29uOiBmYWxzZSxcbiAgICAgICAgICAgICAgcGF0aE9wdGlvbnM6IHtcbiAgICAgICAgICAgICAgICBzdHJva2U6IHRydWUsXG4gICAgICAgICAgICAgICAgY29sb3I6ICcjNTU1JyxcbiAgICAgICAgICAgICAgICB3ZWlnaHQ6IDEsXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMC44LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgfSxcbiAgICAgICAgXSxcbiAgICAgIH0pO1xuXG4gICAgICBkZWNvcmF0b3IuYWRkVG8obWFwKTtcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdCBhZGRBcmVhcyA9ICgpID0+IHtcbiAgICBpZiAoIW1hcCB8fCAhYXJlYXMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBpZiAoYXJlYXNMYXllclJlZi5jdXJyZW50KSB7XG4gICAgICBpZiAobWFwLmhhc0xheWVyKGFyZWFzTGF5ZXJSZWYuY3VycmVudCkpIHtcbiAgICAgICAgbWFwLnJlbW92ZUxheWVyKGFyZWFzTGF5ZXJSZWYuY3VycmVudCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgYXJlYXNMYXllclJlZi5jdXJyZW50ID0gTC5mZWF0dXJlR3JvdXAoKTtcbiAgICBhcmVhc0xheWVyUmVmLmN1cnJlbnQuYWRkVG8obWFwKTtcblxuICAgIGNvbnN0IGZsYXR0ZW5BcmVhcyA9IChhcmVhczogSUFyZWFbXSA9IFtdKTogSUFyZWFbXSA9PiB7XG4gICAgICBsZXQgYWxsQXJlYXM6IElBcmVhW10gPSBbXTtcblxuICAgICAgYXJlYXMuZm9yRWFjaCgoYXJlYTogSUFyZWEpID0+IHtcbiAgICAgICAgYWxsQXJlYXMucHVzaChhcmVhKTtcblxuICAgICAgICAvLyBJZiB0aGVyZSBhcmUgc3ViX2FyZWFzLCByZWN1cnNlIGFuZCBjb25jYXRlbmF0ZVxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhcmVhLnN1Yl9hcmVhcykgJiYgYXJlYS5zdWJfYXJlYXMubGVuZ3RoID4gMCkge1xuICAgICAgICAgIGFsbEFyZWFzID0gYWxsQXJlYXMuY29uY2F0KGZsYXR0ZW5BcmVhcyhhcmVhLnN1Yl9hcmVhcykpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIGFsbEFyZWFzO1xuICAgIH07XG5cbiAgICBjb25zdCBhbGxBcmVhcyA9IGZsYXR0ZW5BcmVhcyhhcmVhcyk7XG5cbiAgICBhbGxBcmVhcy5mb3JFYWNoKChhcmVhKSA9PiB7XG4gICAgICBjb25zdCBwb2x5Z29uID0gTC5wb2x5Z29uKGFyZWEuc2hhcGVfZGF0YSwge1xuICAgICAgICBjb2xvcjogJ2JsYWNrJyxcbiAgICAgICAgd2VpZ2h0OiAxLFxuICAgICAgICBvcGFjaXR5OiAwLjgsXG4gICAgICAgIHNtb290aEZhY3RvcjogMSxcbiAgICAgICAgaW50ZXJhY3RpdmU6IGZhbHNlLFxuICAgICAgICBrYW5kb19vYmplY3RfaWQ6IGFyZWEuYXJlYV9pZCxcbiAgICAgIH0pO1xuXG4gICAgICBwb2x5Z29uLmJpbmRUb29sdGlwKGFyZWEuYXJlYV9uYW1lLCB7XG4gICAgICAgIHBlcm1hbmVudDogdHJ1ZSxcbiAgICAgICAgZGlyZWN0aW9uOiAnY2VudGVyJyxcbiAgICAgICAgY2xhc3NOYW1lOiAnYXJlYS10b29sdGlwJyxcbiAgICAgIH0pO1xuXG4gICAgICBhcmVhc0xheWVyUmVmLmN1cnJlbnQ/LmFkZExheWVyKHBvbHlnb24pO1xuICAgIH0pO1xuICB9O1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgYWRkQXJlYXMoKTtcbiAgICBhZGRNYXJrZXJzKCk7XG4gICAgYWRkRWRn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
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/esm/slicedToArray"));
|
|
10
|
+
require("./OperationsPage.scss");
|
|
11
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
12
|
+
var _reactRedux = require("react-redux");
|
|
13
|
+
var _reactBootstrap = require("react-bootstrap");
|
|
14
|
+
var _actions = require("store/context/actions");
|
|
15
|
+
var _actions2 = require("store/points/actions");
|
|
16
|
+
var _actions3 = require("store/edges/actions");
|
|
17
|
+
var _Map = require("./Map/Map");
|
|
18
|
+
var _LeftPanel = _interopRequireDefault(require("./LeftPanel"));
|
|
19
|
+
var _RightPanel = _interopRequireDefault(require("./RightPanel"));
|
|
20
|
+
var _actions4 = require("store/areas/actions");
|
|
21
|
+
var _KandoAlert = require("ui-kit/Alert/KandoAlert");
|
|
22
|
+
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
|
+
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
24
|
+
var OperationsPage = function OperationsPage() {
|
|
25
|
+
var dispatch = (0, _reactRedux.useDispatch)();
|
|
26
|
+
var points_data = (0, _reactRedux.useSelector)(function (state) {
|
|
27
|
+
return state.points_data;
|
|
28
|
+
});
|
|
29
|
+
var edges_data = (0, _reactRedux.useSelector)(function (state) {
|
|
30
|
+
return state.edges_data;
|
|
31
|
+
});
|
|
32
|
+
var areas_data = (0, _reactRedux.useSelector)(function (state) {
|
|
33
|
+
return state.areas_data;
|
|
34
|
+
});
|
|
35
|
+
var global_data = (0, _reactRedux.useSelector)(function (state) {
|
|
36
|
+
return state.global_data;
|
|
37
|
+
});
|
|
38
|
+
var _useState = (0, _react.useState)(false),
|
|
39
|
+
_useState2 = (0, _slicedToArray2.default)(_useState, 2),
|
|
40
|
+
showRightPanel = _useState2[0],
|
|
41
|
+
setShowRightPanel = _useState2[1];
|
|
42
|
+
var _useState3 = (0, _react.useState)(null),
|
|
43
|
+
_useState4 = (0, _slicedToArray2.default)(_useState3, 2),
|
|
44
|
+
selectedPoint = _useState4[0],
|
|
45
|
+
setSelectedPoint = _useState4[1];
|
|
46
|
+
var _useState5 = (0, _react.useState)(false),
|
|
47
|
+
_useState6 = (0, _slicedToArray2.default)(_useState5, 2),
|
|
48
|
+
isSmallScreen = _useState6[0],
|
|
49
|
+
setIsSmallScreen = _useState6[1];
|
|
50
|
+
var handleSelectPoint = function handleSelectPoint(newPoint) {
|
|
51
|
+
if (selectedPoint && newPoint.id === selectedPoint.id) {
|
|
52
|
+
setSelectedPoint(null);
|
|
53
|
+
} else {
|
|
54
|
+
setSelectedPoint(newPoint);
|
|
55
|
+
}
|
|
56
|
+
};
|
|
57
|
+
(0, _react.useEffect)(function () {
|
|
58
|
+
dispatch((0, _actions.updateNavContext)({
|
|
59
|
+
name: 'operations'
|
|
60
|
+
}));
|
|
61
|
+
var checkScreenSize = function checkScreenSize() {
|
|
62
|
+
setIsSmallScreen(window.innerWidth < 768); // or any breakpoint
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
// Run on mount:
|
|
66
|
+
checkScreenSize();
|
|
67
|
+
|
|
68
|
+
// Also update if the user resizes the browser:
|
|
69
|
+
window.addEventListener('resize', checkScreenSize);
|
|
70
|
+
return function () {
|
|
71
|
+
window.removeEventListener('resize', checkScreenSize);
|
|
72
|
+
};
|
|
73
|
+
}, []);
|
|
74
|
+
(0, _react.useEffect)(function () {
|
|
75
|
+
if (global_data.waterAuthorityId) {
|
|
76
|
+
dispatch((0, _actions2.fetchPoints)(global_data.waterAuthorityId));
|
|
77
|
+
dispatch((0, _actions3.fetchEdges)(global_data.waterAuthorityId));
|
|
78
|
+
dispatch((0, _actions4.fetchAreas)(global_data.waterAuthorityId));
|
|
79
|
+
}
|
|
80
|
+
}, [global_data.waterAuthorityId]);
|
|
81
|
+
var monitoredPoints = (0, _react.useMemo)(function () {
|
|
82
|
+
var _points_data$items;
|
|
83
|
+
return ((_points_data$items = points_data.items) === null || _points_data$items === void 0 ? void 0 : _points_data$items.filter(function (point) {
|
|
84
|
+
return point.has_device;
|
|
85
|
+
})) || [];
|
|
86
|
+
}, [points_data.items]);
|
|
87
|
+
var points = (0, _react.useMemo)(function () {
|
|
88
|
+
var _points_data$items2;
|
|
89
|
+
return ((_points_data$items2 = points_data.items) === null || _points_data$items2 === void 0 ? void 0 : _points_data$items2.filter(function (point) {
|
|
90
|
+
return point.latitude && point.longitude;
|
|
91
|
+
})) || [];
|
|
92
|
+
}, [points_data.items]);
|
|
93
|
+
var showLeftPanel = (0, _react.useMemo)(function () {
|
|
94
|
+
return /*#__PURE__*/_react.default.createElement(_LeftPanel.default, {
|
|
95
|
+
points: monitoredPoints,
|
|
96
|
+
selectedPoint: selectedPoint,
|
|
97
|
+
setSelectedPoint: setSelectedPoint
|
|
98
|
+
});
|
|
99
|
+
}, [monitoredPoints, selectedPoint]);
|
|
100
|
+
(0, _react.useEffect)(function () {
|
|
101
|
+
if (selectedPoint) {
|
|
102
|
+
setShowRightPanel(true);
|
|
103
|
+
} else {
|
|
104
|
+
setShowRightPanel(false);
|
|
105
|
+
}
|
|
106
|
+
}, [selectedPoint]);
|
|
107
|
+
var onRightPanelClose = function onRightPanelClose() {
|
|
108
|
+
setSelectedPoint(null);
|
|
109
|
+
};
|
|
110
|
+
var getDistance = function getDistance() {
|
|
111
|
+
if (selectedPoint && edges_data.items) {
|
|
112
|
+
var edge = edges_data.items.find(function (edge) {
|
|
113
|
+
return edge.source_point_id === selectedPoint.id;
|
|
114
|
+
});
|
|
115
|
+
return (edge === null || edge === void 0 ? void 0 : edge.distance) || 0;
|
|
116
|
+
}
|
|
117
|
+
return 0;
|
|
118
|
+
};
|
|
119
|
+
if (isSmallScreen) {
|
|
120
|
+
return /*#__PURE__*/_react.default.createElement(_KandoAlert.KandoAlert, {
|
|
121
|
+
variant: "success",
|
|
122
|
+
header: "Notice"
|
|
123
|
+
}, /*#__PURE__*/_react.default.createElement("h5", null, 'This page is not supported on small screens'), /*#__PURE__*/_react.default.createElement("p", null, 'Please use a larger screen for the best experience.'));
|
|
124
|
+
}
|
|
125
|
+
return /*#__PURE__*/_react.default.createElement(_reactBootstrap.Container, {
|
|
126
|
+
fluid: true,
|
|
127
|
+
className: "vh-90 p-0"
|
|
128
|
+
}, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Row, null, /*#__PURE__*/_react.default.createElement(_reactBootstrap.Col, {
|
|
129
|
+
sm: 3,
|
|
130
|
+
className: "left-panel"
|
|
131
|
+
}, showLeftPanel), /*#__PURE__*/_react.default.createElement(_reactBootstrap.Col, {
|
|
132
|
+
className: "map-column",
|
|
133
|
+
sm: 9
|
|
134
|
+
}, !edges_data.isFetching && !areas_data.isFetching && /*#__PURE__*/_react.default.createElement(_Map.Map, {
|
|
135
|
+
points: points,
|
|
136
|
+
edges: edges_data.items,
|
|
137
|
+
areas: areas_data.newAreas,
|
|
138
|
+
selectedPoint: selectedPoint,
|
|
139
|
+
updateSelectedPoint: handleSelectPoint
|
|
140
|
+
}), /*#__PURE__*/_react.default.createElement(_RightPanel.default, {
|
|
141
|
+
className: "right-panel ".concat(showRightPanel ? 'open' : ''),
|
|
142
|
+
point: selectedPoint,
|
|
143
|
+
distance: getDistance(),
|
|
144
|
+
onClose: onRightPanelClose
|
|
145
|
+
}))));
|
|
146
|
+
};
|
|
147
|
+
var _default = OperationsPage;
|
|
148
|
+
exports.default = _default;
|
|
149
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJyZXF1aXJlIiwiX3JlYWN0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJfcmVhY3RSZWR1eCIsIl9yZWFjdEJvb3RzdHJhcCIsIl9hY3Rpb25zIiwiX2FjdGlvbnMyIiwiX2FjdGlvbnMzIiwiX01hcCIsIl9MZWZ0UGFuZWwiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX1JpZ2h0UGFuZWwiLCJfYWN0aW9uczQiLCJfS2FuZG9BbGVydCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0IiwiT3BlcmF0aW9uc1BhZ2UiLCJkaXNwYXRjaCIsInVzZURpc3BhdGNoIiwicG9pbnRzX2RhdGEiLCJ1c2VTZWxlY3RvciIsInN0YXRlIiwiZWRnZXNfZGF0YSIsImFyZWFzX2RhdGEiLCJnbG9iYWxfZGF0YSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsIl9zbGljZWRUb0FycmF5MiIsInNob3dSaWdodFBhbmVsIiwic2V0U2hvd1JpZ2h0UGFuZWwiLCJfdXNlU3RhdGUzIiwiX3VzZVN0YXRlNCIsInNlbGVjdGVkUG9pbnQiLCJzZXRTZWxlY3RlZFBvaW50IiwiX3VzZVN0YXRlNSIsIl91c2VTdGF0ZTYiLCJpc1NtYWxsU2NyZWVuIiwic2V0SXNTbWFsbFNjcmVlbiIsImhhbmRsZVNlbGVjdFBvaW50IiwibmV3UG9pbnQiLCJpZCIsInVzZUVmZmVjdCIsInVwZGF0ZU5hdkNvbnRleHQiLCJuYW1lIiwiY2hlY2tTY3JlZW5TaXplIiwid2luZG93IiwiaW5uZXJXaWR0aCIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwid2F0ZXJBdXRob3JpdHlJZCIsImZldGNoUG9pbnRzIiwiZmV0Y2hFZGdlcyIsImZldGNoQXJlYXMiLCJtb25pdG9yZWRQb2ludHMiLCJ1c2VNZW1vIiwiX3BvaW50c19kYXRhJGl0ZW1zIiwiaXRlbXMiLCJmaWx0ZXIiLCJwb2ludCIsImhhc19kZXZpY2UiLCJwb2ludHMiLCJfcG9pbnRzX2RhdGEkaXRlbXMyIiwibGF0aXR1ZGUiLCJsb25naXR1ZGUiLCJzaG93TGVmdFBhbmVsIiwiY3JlYXRlRWxlbWVudCIsIm9uUmlnaHRQYW5lbENsb3NlIiwiZ2V0RGlzdGFuY2UiLCJlZGdlIiwiZmluZCIsInNvdXJjZV9wb2ludF9pZCIsImRpc3RhbmNlIiwiS2FuZG9BbGVydCIsInZhcmlhbnQiLCJoZWFkZXIiLCJDb250YWluZXIiLCJmbHVpZCIsImNsYXNzTmFtZSIsIlJvdyIsIkNvbCIsInNtIiwiaXNGZXRjaGluZyIsIk1hcCIsImVkZ2VzIiwiYXJlYXMiLCJuZXdBcmVhcyIsInVwZGF0ZVNlbGVjdGVkUG9pbnQiLCJjb25jYXQiLCJvbkNsb3NlIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3BhZ2VzL09wZXJhdGlvbnNQYWdlL09wZXJhdGlvbnNQYWdlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgJy4vT3BlcmF0aW9uc1BhZ2Uuc2Nzcyc7XG5pbXBvcnQgUmVhY3QsIHsgdXNlRWZmZWN0LCB1c2VNZW1vLCB1c2VTdGF0ZSB9IGZyb20gJ3JlYWN0JztcbmltcG9ydCB7IHVzZURpc3BhdGNoLCB1c2VTZWxlY3RvciB9IGZyb20gJ3JlYWN0LXJlZHV4JztcbmltcG9ydCB7IENvbCwgQ29udGFpbmVyLCBSb3cgfSBmcm9tICdyZWFjdC1ib290c3RyYXAnO1xuaW1wb3J0IHsgdXBkYXRlTmF2Q29udGV4dCB9IGZyb20gJ3NyYy9zdG9yZS9jb250ZXh0L2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hQb2ludHMgfSBmcm9tICdzcmMvc3RvcmUvcG9pbnRzL2FjdGlvbnMnO1xuaW1wb3J0IHsgZmV0Y2hFZGdlcyB9IGZyb20gJ3NyYy9zdG9yZS9lZGdlcy9hY3Rpb25zJztcbmltcG9ydCB7IElQb2ludCB9IGZyb20gJ3NyYy9zdG9yZS9wb2ludHMvbW9kZWxzL0lQb2ludCc7XG5pbXBvcnQgeyBNYXAgfSBmcm9tICcuL01hcC9NYXAnO1xuaW1wb3J0IExlZnRQYW5lbCBmcm9tICcuL0xlZnRQYW5lbCc7XG5pbXBvcnQgUmlnaHRQYW5lbCBmcm9tICcuL1JpZ2h0UGFuZWwnO1xuaW1wb3J0IHsgZmV0Y2hBcmVhcyB9IGZyb20gJ3NyYy9zdG9yZS9hcmVhcy9hY3Rpb25zJztcbmltcG9ydCB7IEthbmRvQWxlcnQgfSBmcm9tICdzcmMvdWkta2l0L0FsZXJ0L0thbmRvQWxlcnQnO1xuXG5jb25zdCBPcGVyYXRpb25zUGFnZTogUmVhY3QuRkMgPSAoKSA9PiB7XG4gIGNvbnN0IGRpc3BhdGNoID0gdXNlRGlzcGF0Y2goKTtcbiAgY29uc3QgcG9pbnRzX2RhdGEgPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlLnBvaW50c19kYXRhKTtcbiAgY29uc3QgZWRnZXNfZGF0YSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUuZWRnZXNfZGF0YSk7XG4gIGNvbnN0IGFyZWFzX2RhdGEgPSB1c2VTZWxlY3Rvcigoc3RhdGUpID0+IHN0YXRlLmFyZWFzX2RhdGEpO1xuICBjb25zdCBnbG9iYWxfZGF0YSA9IHVzZVNlbGVjdG9yKChzdGF0ZSkgPT4gc3RhdGUuZ2xvYmFsX2RhdGEpO1xuICBjb25zdCBbc2hvd1JpZ2h0UGFuZWwsIHNldFNob3dSaWdodFBhbmVsXSA9IHVzZVN0YXRlKGZhbHNlKTtcbiAgY29uc3QgW3NlbGVjdGVkUG9pbnQsIHNldFNlbGVjdGVkUG9pbnRdID0gdXNlU3RhdGU8SVBvaW50IHwgbnVsbD4obnVsbCk7XG4gIGNvbnN0IFtpc1NtYWxsU2NyZWVuLCBzZXRJc1NtYWxsU2NyZWVuXSA9IHVzZVN0YXRlKGZhbHNlKTtcblxuICBjb25zdCBoYW5kbGVTZWxlY3RQb2ludCA9IChuZXdQb2ludDogSVBvaW50KSA9PiB7XG4gICAgaWYgKHNlbGVjdGVkUG9pbnQgJiYgbmV3UG9pbnQuaWQgPT09IHNlbGVjdGVkUG9pbnQuaWQpIHtcbiAgICAgIHNldFNlbGVjdGVkUG9pbnQobnVsbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHNldFNlbGVjdGVkUG9pbnQobmV3UG9pbnQpO1xuICAgIH1cbiAgfTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGRpc3BhdGNoKHVwZGF0ZU5hdkNvbnRleHQoeyBuYW1lOiAnb3BlcmF0aW9ucycgfSkpO1xuXG4gICAgY29uc3QgY2hlY2tTY3JlZW5TaXplID0gKCkgPT4ge1xuICAgICAgc2V0SXNTbWFsbFNjcmVlbih3aW5kb3cuaW5uZXJXaWR0aCA8IDc2OCk7IC8vIG9yIGFueSBicmVha3BvaW50XG4gICAgfTtcblxuICAgIC8vIFJ1biBvbiBtb3VudDpcbiAgICBjaGVja1NjcmVlblNpemUoKTtcblxuICAgIC8vIEFsc28gdXBkYXRlIGlmIHRoZSB1c2VyIHJlc2l6ZXMgdGhlIGJyb3dzZXI6XG4gICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Jlc2l6ZScsIGNoZWNrU2NyZWVuU2l6ZSk7XG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHdpbmRvdy5yZW1vdmVFdmVudExpc3RlbmVyKCdyZXNpemUnLCBjaGVja1NjcmVlblNpemUpO1xuICAgIH07XG4gIH0sIFtdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSB7XG4gICAgICBkaXNwYXRjaChmZXRjaFBvaW50cyhnbG9iYWxfZGF0YS53YXRlckF1dGhvcml0eUlkKSk7XG4gICAgICBkaXNwYXRjaChmZXRjaEVkZ2VzKGdsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWQpKTtcbiAgICAgIGRpc3BhdGNoKGZldGNoQXJlYXMoZ2xvYmFsX2RhdGEud2F0ZXJBdXRob3JpdHlJZCkpO1xuICAgIH1cbiAgfSwgW2dsb2JhbF9kYXRhLndhdGVyQXV0aG9yaXR5SWRdKTtcblxuICBjb25zdCBtb25pdG9yZWRQb2ludHMgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gcG9pbnRzX2RhdGEuaXRlbXM/LmZpbHRlcigocG9pbnQ6IElQb2ludCkgPT4gcG9pbnQuaGFzX2RldmljZSkgfHwgW107XG4gIH0sIFtwb2ludHNfZGF0YS5pdGVtc10pO1xuXG4gIGNvbnN0IHBvaW50cyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiAoXG4gICAgICBwb2ludHNfZGF0YS5pdGVtcz8uZmlsdGVyKFxuICAgICAgICAocG9pbnQ6IElQb2ludCkgPT4gcG9pbnQubGF0aXR1ZGUgJiYgcG9pbnQubG9uZ2l0dWRlLFxuICAgICAgKSB8fCBbXVxuICAgICk7XG4gIH0sIFtwb2ludHNfZGF0YS5pdGVtc10pO1xuXG4gIGNvbnN0IHNob3dMZWZ0UGFuZWwgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gKFxuICAgICAgPExlZnRQYW5lbFxuICAgICAgICBwb2ludHM9e21vbml0b3JlZFBvaW50c31cbiAgICAgICAgc2VsZWN0ZWRQb2ludD17c2VsZWN0ZWRQb2ludH1cbiAgICAgICAgc2V0U2VsZWN0ZWRQb2ludD17c2V0U2VsZWN0ZWRQb2ludH1cbiAgICAgIC8+XG4gICAgKTtcbiAgfSwgW21vbml0b3JlZFBvaW50cywgc2VsZWN0ZWRQb2ludF0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKHNlbGVjdGVkUG9pbnQpIHtcbiAgICAgIHNldFNob3dSaWdodFBhbmVsKHRydWUpO1xuICAgIH0gZWxzZSB7XG4gICAgICBzZXRTaG93UmlnaHRQYW5lbChmYWxzZSk7XG4gICAgfVxuICB9LCBbc2VsZWN0ZWRQb2ludF0pO1xuXG4gIGNvbnN0IG9uUmlnaHRQYW5lbENsb3NlID0gKCkgPT4ge1xuICAgIHNldFNlbGVjdGVkUG9pbnQobnVsbCk7XG4gIH07XG5cbiAgY29uc3QgZ2V0RGlzdGFuY2UgPSAoKSA9PiB7XG4gICAgaWYgKHNlbGVjdGVkUG9pbnQgJiYgZWRnZXNfZGF0YS5pdGVtcykge1xuICAgICAgY29uc3QgZWRnZSA9IGVkZ2VzX2RhdGEuaXRlbXMuZmluZChcbiAgICAgICAgKGVkZ2UpID0+IGVkZ2Uuc291cmNlX3BvaW50X2lkID09PSBzZWxlY3RlZFBvaW50LmlkLFxuICAgICAgKTtcbiAgICAgIHJldHVybiBlZGdlPy5kaXN0YW5jZSB8fCAwO1xuICAgIH1cbiAgICByZXR1cm4gMDtcbiAgfTtcblxuICBpZiAoaXNTbWFsbFNjcmVlbikge1xuICAgIHJldHVybiAoXG4gICAgICA8S2FuZG9BbGVydCB2YXJpYW50PVwic3VjY2Vzc1wiIGhlYWRlcj1cIk5vdGljZVwiPlxuICAgICAgICA8aDU+eydUaGlzIHBhZ2UgaXMgbm90IHN1cHBvcnRlZCBvbiBzbWFsbCBzY3JlZW5zJ308L2g1PlxuICAgICAgICA8cD57J1BsZWFzZSB1c2UgYSBsYXJnZXIgc2NyZWVuIGZvciB0aGUgYmVzdCBleHBlcmllbmNlLid9PC9wPlxuICAgICAgPC9LYW5kb0FsZXJ0PlxuICAgICk7XG4gIH1cblxuICByZXR1cm4gKFxuICAgIDxDb250YWluZXIgZmx1aWQgY2xhc3NOYW1lPVwidmgtOTAgcC0wXCI+XG4gICAgICA8Um93PlxuICAgICAgICA8Q29sIHNtPXszfSBjbGFzc05hbWU9XCJsZWZ0LXBhbmVsXCI+XG4gICAgICAgICAge3Nob3dMZWZ0UGFuZWx9XG4gICAgICAgIDwvQ29sPlxuICAgICAgICA8Q29sIGNsYXNzTmFtZT1cIm1hcC1jb2x1bW5cIiBzbT17OX0+XG4gICAgICAgICAgeyFlZGdlc19kYXRhLmlzRmV0Y2hpbmcgJiYgIWFyZWFzX2RhdGEuaXNGZXRjaGluZyAmJiAoXG4gICAgICAgICAgICA8TWFwXG4gICAgICAgICAgICAgIHBvaW50cz17cG9pbnRzfVxuICAgICAgICAgICAgICBlZGdlcz17ZWRnZXNfZGF0YS5pdGVtc31cbiAgICAgICAgICAgICAgYXJlYXM9e2FyZWFzX2RhdGEubmV3QXJlYXN9XG4gICAgICAgICAgICAgIHNlbGVjdGVkUG9pbnQ9e3NlbGVjdGVkUG9pbnR9XG4gICAgICAgICAgICAgIHVwZGF0ZVNlbGVjdGVkUG9pbnQ9e2hhbmRsZVNlbGVjdFBvaW50fVxuICAgICAgICAgICAgLz5cbiAgICAgICAgICApfVxuICAgICAgICAgIDxSaWdodFBhbmVsXG4gICAgICAgICAgICBjbGFzc05hbWU9e2ByaWdodC1wYW5lbCAke3Nob3dSaWdodFBhbmVsID8gJ29wZW4nIDogJyd9YH1cbiAgICAgICAgICAgIHBvaW50PXtzZWxlY3RlZFBvaW50fVxuICAgICAgICAgICAgZGlzdGFuY2U9e2dldERpc3RhbmNlKCl9XG4gICAgICAgICAgICBvbkNsb3NlPXtvblJpZ2h0UGFuZWxDbG9zZX1cbiAgICAgICAgICAvPlxuICAgICAgICA8L0NvbD5cbiAgICAgIDwvUm93PlxuICAgIDwvQ29udGFpbmVyPlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgT3BlcmF0aW9uc1BhZ2U7XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBQSxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBQyx1QkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsV0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksZUFBQSxHQUFBSixPQUFBO0FBQ0EsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBQ0EsSUFBQU0sU0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sU0FBQSxHQUFBUCxPQUFBO0FBRUEsSUFBQVEsSUFBQSxHQUFBUixPQUFBO0FBQ0EsSUFBQVMsVUFBQSxHQUFBQyxzQkFBQSxDQUFBVixPQUFBO0FBQ0EsSUFBQVcsV0FBQSxHQUFBRCxzQkFBQSxDQUFBVixPQUFBO0FBQ0EsSUFBQVksU0FBQSxHQUFBWixP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
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
.map-column {
|
|
2
|
+
position: relative;
|
|
3
|
+
.kd-map-container {
|
|
4
|
+
position: relative;
|
|
5
|
+
height: calc(100vh - 68px);
|
|
6
|
+
width: 100wh;
|
|
7
|
+
|
|
8
|
+
#map {
|
|
9
|
+
height: 100%;
|
|
10
|
+
width: 100%;
|
|
11
|
+
|
|
12
|
+
*,
|
|
13
|
+
*:focus,
|
|
14
|
+
*:hover {
|
|
15
|
+
outline: none;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.right-panel {
|
|
21
|
+
position: absolute;
|
|
22
|
+
top: 0;
|
|
23
|
+
right: 0;
|
|
24
|
+
width: 350px;
|
|
25
|
+
height: 100%;
|
|
26
|
+
background-color: #fff;
|
|
27
|
+
box-shadow: -2px 0 8px rgba(0, 0, 0, 0.2);
|
|
28
|
+
transition: transform 0.3s ease-in-out;
|
|
29
|
+
transform: translateX(100%);
|
|
30
|
+
z-index: 1000;
|
|
31
|
+
display: flex;
|
|
32
|
+
flex-direction: column; /* to have header, body, footer stacked */
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
.right-panel.open {
|
|
36
|
+
transform: translateX(0);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.left-panel {
|
|
41
|
+
height: calc(100vh - 68px);
|
|
42
|
+
overflow-y: auto;
|
|
43
|
+
overflow-x: hidden;
|
|
44
|
+
background-color: #f5f5f5;
|
|
45
|
+
|
|
46
|
+
.list-item {
|
|
47
|
+
padding: 10px;
|
|
48
|
+
border-bottom: 1px solid #e0e0e0;
|
|
49
|
+
cursor: pointer;
|
|
50
|
+
transition: background-color 0.3s;
|
|
51
|
+
|
|
52
|
+
&:hover {
|
|
53
|
+
background-color: #e0e0e0;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
&.list-item-selected {
|
|
57
|
+
background-color: #e0e0e0;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.area-tooltip {
|
|
63
|
+
font-weight: 600;
|
|
64
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
var _Card = _interopRequireDefault(require("react-bootstrap/Card"));
|
|
10
|
+
var _ListGroup = _interopRequireDefault(require("react-bootstrap/ListGroup"));
|
|
11
|
+
var RightPanel = function RightPanel(_ref) {
|
|
12
|
+
var _point$name, _point$description;
|
|
13
|
+
var point = _ref.point,
|
|
14
|
+
distance = _ref.distance,
|
|
15
|
+
className = _ref.className,
|
|
16
|
+
onClose = _ref.onClose;
|
|
17
|
+
return /*#__PURE__*/_react.default.createElement("div", {
|
|
18
|
+
className: className
|
|
19
|
+
}, /*#__PURE__*/_react.default.createElement("div", {
|
|
20
|
+
className: "drawer-body p-3"
|
|
21
|
+
}, /*#__PURE__*/_react.default.createElement(_Card.default, {
|
|
22
|
+
style: {
|
|
23
|
+
maxWidth: '600px',
|
|
24
|
+
margin: '0 auto'
|
|
25
|
+
}
|
|
26
|
+
}, /*#__PURE__*/_react.default.createElement(_Card.default.Header, null, 'Point Details', /*#__PURE__*/_react.default.createElement("button", {
|
|
27
|
+
className: "close",
|
|
28
|
+
onClick: onClose
|
|
29
|
+
}, /*#__PURE__*/_react.default.createElement("span", null, "\xD7"))), /*#__PURE__*/_react.default.createElement(_ListGroup.default, {
|
|
30
|
+
variant: "flush"
|
|
31
|
+
}, /*#__PURE__*/_react.default.createElement(_ListGroup.default.Item, null, /*#__PURE__*/_react.default.createElement("strong", null, 'Name:'), " ", (_point$name = point === null || point === void 0 ? void 0 : point.name) !== null && _point$name !== void 0 ? _point$name : '-'), /*#__PURE__*/_react.default.createElement(_ListGroup.default.Item, null, /*#__PURE__*/_react.default.createElement("strong", null, 'Description:'), " ", (_point$description = point === null || point === void 0 ? void 0 : point.description) !== null && _point$description !== void 0 ? _point$description : '-'), /*#__PURE__*/_react.default.createElement(_ListGroup.default.Item, null, /*#__PURE__*/_react.default.createElement("strong", null, 'Monitored:'), " ", (point === null || point === void 0 ? void 0 : point.has_device) ? 'Yes' : 'No'), /*#__PURE__*/_react.default.createElement(_ListGroup.default.Item, null, /*#__PURE__*/_react.default.createElement("strong", null, 'Was Monitored:'), (point === null || point === void 0 ? void 0 : point.device_status) !== 'regular' ? 'Yes' : 'No'), /*#__PURE__*/_react.default.createElement(_ListGroup.default.Item, null, /*#__PURE__*/_react.default.createElement("strong", null, 'Sector:'), " ", point === null || point === void 0 ? void 0 : point.group.sector_name), /*#__PURE__*/_react.default.createElement(_ListGroup.default.Item, null, /*#__PURE__*/_react.default.createElement("strong", null, 'Type:'), " ", point === null || point === void 0 ? void 0 : point.group.type.split('::')[1]), /*#__PURE__*/_react.default.createElement(_ListGroup.default.Item, null, /*#__PURE__*/_react.default.createElement("strong", null, 'Water Discharge:'), ' ', point === null || point === void 0 ? void 0 : point.group.water_discharge), /*#__PURE__*/_react.default.createElement(_ListGroup.default.Item, null, /*#__PURE__*/_react.default.createElement("strong", null, 'Distance:'), " ", distance)))));
|
|
32
|
+
};
|
|
33
|
+
var _default = RightPanel;
|
|
34
|
+
exports.default = _default;
|
|
35
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9DYXJkIiwiX0xpc3RHcm91cCIsIlJpZ2h0UGFuZWwiLCJfcmVmIiwiX3BvaW50JG5hbWUiLCJfcG9pbnQkZGVzY3JpcHRpb24iLCJwb2ludCIsImRpc3RhbmNlIiwiY2xhc3NOYW1lIiwib25DbG9zZSIsImRlZmF1bHQiLCJjcmVhdGVFbGVtZW50Iiwic3R5bGUiLCJtYXhXaWR0aCIsIm1hcmdpbiIsIkhlYWRlciIsIm9uQ2xpY2siLCJ2YXJpYW50IiwiSXRlbSIsIm5hbWUiLCJkZXNjcmlwdGlvbiIsImhhc19kZXZpY2UiLCJkZXZpY2Vfc3RhdHVzIiwiZ3JvdXAiLCJzZWN0b3JfbmFtZSIsInR5cGUiLCJzcGxpdCIsIndhdGVyX2Rpc2NoYXJnZSIsIl9kZWZhdWx0IiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9PcGVyYXRpb25zUGFnZS9SaWdodFBhbmVsLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IHsgSVBvaW50IH0gZnJvbSAnc3JjL3N0b3JlL3BvaW50cy9tb2RlbHMvSVBvaW50JztcbmltcG9ydCBDYXJkIGZyb20gJ3JlYWN0LWJvb3RzdHJhcC9DYXJkJztcbmltcG9ydCBMaXN0R3JvdXAgZnJvbSAncmVhY3QtYm9vdHN0cmFwL0xpc3RHcm91cCc7XG5cbnR5cGUgUmlnaHRQYW5lbFByb3BzID0ge1xuICBwb2ludDogSVBvaW50IHwgbnVsbDtcbiAgZGlzdGFuY2U6IG51bWJlcjtcbiAgY2xhc3NOYW1lPzogc3RyaW5nO1xuICBvbkNsb3NlPzogKCkgPT4gdm9pZDtcbn07XG5cbmNvbnN0IFJpZ2h0UGFuZWw6IFJlYWN0LkZDPFJpZ2h0UGFuZWxQcm9wcz4gPSAoe1xuICBwb2ludCxcbiAgZGlzdGFuY2UsXG4gIGNsYXNzTmFtZSxcbiAgb25DbG9zZSxcbn0pID0+IHtcbiAgcmV0dXJuIChcbiAgICA8ZGl2IGNsYXNzTmFtZT17Y2xhc3NOYW1lfT5cbiAgICAgIDxkaXYgY2xhc3NOYW1lPVwiZHJhd2VyLWJvZHkgcC0zXCI+XG4gICAgICAgIDxDYXJkIHN0eWxlPXt7IG1heFdpZHRoOiAnNjAwcHgnLCBtYXJnaW46ICcwIGF1dG8nIH19PlxuICAgICAgICAgIDxDYXJkLkhlYWRlcj5cbiAgICAgICAgICAgIHsnUG9pbnQgRGV0YWlscyd9XG4gICAgICAgICAgICA8YnV0dG9uIGNsYXNzTmFtZT1cImNsb3NlXCIgb25DbGljaz17b25DbG9zZX0+XG4gICAgICAgICAgICAgIDxzcGFuPiZ0aW1lczs8L3NwYW4+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L0NhcmQuSGVhZGVyPlxuICAgICAgICAgIDxMaXN0R3JvdXAgdmFyaWFudD1cImZsdXNoXCI+XG4gICAgICAgICAgICA8TGlzdEdyb3VwLkl0ZW0+XG4gICAgICAgICAgICAgIDxzdHJvbmc+eydOYW1lOid9PC9zdHJvbmc+IHtwb2ludD8ubmFtZSA/PyAnLSd9XG4gICAgICAgICAgICA8L0xpc3RHcm91cC5JdGVtPlxuICAgICAgICAgICAgPExpc3RHcm91cC5JdGVtPlxuICAgICAgICAgICAgICA8c3Ryb25nPnsnRGVzY3JpcHRpb246J308L3N0cm9uZz4ge3BvaW50Py5kZXNjcmlwdGlvbiA/PyAnLSd9XG4gICAgICAgICAgICA8L0xpc3RHcm91cC5JdGVtPlxuICAgICAgICAgICAgPExpc3RHcm91cC5JdGVtPlxuICAgICAgICAgICAgICA8c3Ryb25nPnsnTW9uaXRvcmVkOid9PC9zdHJvbmc+IHtwb2ludD8uaGFzX2RldmljZSA/ICdZZXMnIDogJ05vJ31cbiAgICAgICAgICAgIDwvTGlzdEdyb3VwLkl0ZW0+XG4gICAgICAgICAgICA8TGlzdEdyb3VwLkl0ZW0+XG4gICAgICAgICAgICAgIDxzdHJvbmc+eydXYXMgTW9uaXRvcmVkOid9PC9zdHJvbmc+XG4gICAgICAgICAgICAgIHtwb2ludD8uZGV2aWNlX3N0YXR1cyAhPT0gJ3JlZ3VsYXInID8gJ1llcycgOiAnTm8nfVxuICAgICAgICAgICAgPC9MaXN0R3JvdXAuSXRlbT5cbiAgICAgICAgICAgIDxMaXN0R3JvdXAuSXRlbT5cbiAgICAgICAgICAgICAgPHN0cm9uZz57J1NlY3RvcjonfTwvc3Ryb25nPiB7cG9pbnQ/Lmdyb3VwLnNlY3Rvcl9uYW1lfVxuICAgICAgICAgICAgPC9MaXN0R3JvdXAuSXRlbT5cbiAgICAgICAgICAgIDxMaXN0R3JvdXAuSXRlbT5cbiAgICAgICAgICAgICAgPHN0cm9uZz57J1R5cGU6J308L3N0cm9uZz4ge3BvaW50Py5ncm91cC50eXBlLnNwbGl0KCc6OicpWzFdfVxuICAgICAgICAgICAgPC9MaXN0R3JvdXAuSXRlbT5cbiAgICAgICAgICAgIDxMaXN0R3JvdXAuSXRlbT5cbiAgICAgICAgICAgICAgPHN0cm9uZz57J1dhdGVyIERpc2NoYXJnZTonfTwvc3Ryb25nPnsnICd9XG4gICAgICAgICAgICAgIHtwb2ludD8uZ3JvdXAud2F0ZXJfZGlzY2hhcmdlfVxuICAgICAgICAgICAgPC9MaXN0R3JvdXAuSXRlbT5cbiAgICAgICAgICAgIDxMaXN0R3JvdXAuSXRlbT5cbiAgICAgICAgICAgICAgPHN0cm9uZz57J0Rpc3RhbmNlOid9PC9zdHJvbmc+IHtkaXN0YW5jZX1cbiAgICAgICAgICAgIDwvTGlzdEdyb3VwLkl0ZW0+XG4gICAgICAgICAgPC9MaXN0R3JvdXA+XG4gICAgICAgIDwvQ2FyZD5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICApO1xufTtcblxuZXhwb3J0IGRlZmF1bHQgUmlnaHRQYW5lbDtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQUFDLEtBQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLFVBQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQVNBLElBQU1HLFVBQXFDLEdBQUcsU0FB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
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = void 0;
|
|
8
|
+
var _OperationsPage = _interopRequireDefault(require("./OperationsPage"));
|
|
9
|
+
var _default = _OperationsPage.default;
|
|
10
|
+
exports.default = _default;
|
|
11
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfT3BlcmF0aW9uc1BhZ2UiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9kZWZhdWx0IiwiT3BlcmF0aW9uc1BhZ2UiLCJleHBvcnRzIiwiZGVmYXVsdCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9wYWdlcy9PcGVyYXRpb25zUGFnZS9pbmRleC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgT3BlcmF0aW9uc1BhZ2UgZnJvbSAnLi9PcGVyYXRpb25zUGFnZSc7XG5leHBvcnQgZGVmYXVsdCBPcGVyYXRpb25zUGFnZTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLGVBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUE4QyxJQUFBQyxRQUFBLEdBQy9CQyx1QkFBYztBQUFBQyxPQUFBLENBQUFDLE9BQUEsR0FBQUgsUUFBQSJ9
|