From e7e070638c185ab3670043b2b64cf8537ea9cf21 Mon Sep 17 00:00:00 2001 From: Romit Mohane <69901221+Reckadon@users.noreply.github.com> Date: Fri, 15 Dec 2023 01:00:05 +0530 Subject: [PATCH] patch fix1 build --- build/asset-manifest.json | 18 +++++++++--------- build/index.html | 2 +- build/static/css/570.9b0054ab.chunk.css.map | 1 - ...0054ab.chunk.css => 570.b10c7c69.chunk.css} | 4 ++-- build/static/css/570.b10c7c69.chunk.css.map | 1 + build/static/js/570.1fd32405.chunk.js | 2 -- build/static/js/570.1fd32405.chunk.js.map | 1 - build/static/js/570.63cc8567.chunk.js | 2 ++ build/static/js/570.63cc8567.chunk.js.map | 1 + build/static/js/748.35c1458e.chunk.js.map | 1 - ...35c1458e.chunk.js => 748.3f529355.chunk.js} | 4 ++-- build/static/js/748.3f529355.chunk.js.map | 1 + .../js/{main.f862480d.js => main.f2ed9a2a.js} | 6 +++--- ...ICENSE.txt => main.f2ed9a2a.js.LICENSE.txt} | 0 ...in.f862480d.js.map => main.f2ed9a2a.js.map} | 2 +- 15 files changed, 23 insertions(+), 23 deletions(-) delete mode 100644 build/static/css/570.9b0054ab.chunk.css.map rename build/static/css/{570.9b0054ab.chunk.css => 570.b10c7c69.chunk.css} (95%) create mode 100644 build/static/css/570.b10c7c69.chunk.css.map delete mode 100644 build/static/js/570.1fd32405.chunk.js delete mode 100644 build/static/js/570.1fd32405.chunk.js.map create mode 100644 build/static/js/570.63cc8567.chunk.js create mode 100644 build/static/js/570.63cc8567.chunk.js.map delete mode 100644 build/static/js/748.35c1458e.chunk.js.map rename build/static/js/{748.35c1458e.chunk.js => 748.3f529355.chunk.js} (54%) create mode 100644 build/static/js/748.3f529355.chunk.js.map rename build/static/js/{main.f862480d.js => main.f2ed9a2a.js} (99%) rename build/static/js/{main.f862480d.js.LICENSE.txt => main.f2ed9a2a.js.LICENSE.txt} (100%) rename build/static/js/{main.f862480d.js.map => main.f2ed9a2a.js.map} (99%) diff --git a/build/asset-manifest.json b/build/asset-manifest.json index 85b61bc..7ddb9ec 100644 --- a/build/asset-manifest.json +++ b/build/asset-manifest.json @@ -1,13 +1,13 @@ { "files": { "main.css": "/static/css/main.1cd2f0e6.css", - "main.js": "/static/js/main.f862480d.js", + "main.js": "/static/js/main.f2ed9a2a.js", "static/css/748.05defaec.chunk.css": "/static/css/748.05defaec.chunk.css", - "static/js/748.35c1458e.chunk.js": "/static/js/748.35c1458e.chunk.js", + "static/js/748.3f529355.chunk.js": "/static/js/748.3f529355.chunk.js", "static/css/87.4afd3fce.chunk.css": "/static/css/87.4afd3fce.chunk.css", "static/js/87.ba46b9e9.chunk.js": "/static/js/87.ba46b9e9.chunk.js", - "static/css/570.9b0054ab.chunk.css": "/static/css/570.9b0054ab.chunk.css", - "static/js/570.1fd32405.chunk.js": "/static/js/570.1fd32405.chunk.js", + "static/css/570.b10c7c69.chunk.css": "/static/css/570.b10c7c69.chunk.css", + "static/js/570.63cc8567.chunk.js": "/static/js/570.63cc8567.chunk.js", "static/js/787.5386b26c.chunk.js": "/static/js/787.5386b26c.chunk.js", "static/js/227.d6db06c7.chunk.js": "/static/js/227.d6db06c7.chunk.js", "static/js/945.b1cdf865.chunk.js": "/static/js/945.b1cdf865.chunk.js", @@ -15,19 +15,19 @@ "static/media/interIIT-logo.webp": "/static/media/interIIT-logo.64643f9264c74ee86959.webp", "index.html": "/index.html", "main.1cd2f0e6.css.map": "/static/css/main.1cd2f0e6.css.map", - "main.f862480d.js.map": "/static/js/main.f862480d.js.map", + "main.f2ed9a2a.js.map": "/static/js/main.f2ed9a2a.js.map", "748.05defaec.chunk.css.map": "/static/css/748.05defaec.chunk.css.map", - "748.35c1458e.chunk.js.map": "/static/js/748.35c1458e.chunk.js.map", + "748.3f529355.chunk.js.map": "/static/js/748.3f529355.chunk.js.map", "87.4afd3fce.chunk.css.map": "/static/css/87.4afd3fce.chunk.css.map", "87.ba46b9e9.chunk.js.map": "/static/js/87.ba46b9e9.chunk.js.map", - "570.9b0054ab.chunk.css.map": "/static/css/570.9b0054ab.chunk.css.map", - "570.1fd32405.chunk.js.map": "/static/js/570.1fd32405.chunk.js.map", + "570.b10c7c69.chunk.css.map": "/static/css/570.b10c7c69.chunk.css.map", + "570.63cc8567.chunk.js.map": "/static/js/570.63cc8567.chunk.js.map", "787.5386b26c.chunk.js.map": "/static/js/787.5386b26c.chunk.js.map", "227.d6db06c7.chunk.js.map": "/static/js/227.d6db06c7.chunk.js.map", "945.b1cdf865.chunk.js.map": "/static/js/945.b1cdf865.chunk.js.map" }, "entrypoints": [ "static/css/main.1cd2f0e6.css", - "static/js/main.f862480d.js" + "static/js/main.f2ed9a2a.js" ] } \ No newline at end of file diff --git a/build/index.html b/build/index.html index 4cfc3fc..551e1f9 100644 --- a/build/index.html +++ b/build/index.html @@ -1 +1 @@ -InterIIT Live Scores
\ No newline at end of file +InterIIT Live Scores
\ No newline at end of file diff --git a/build/static/css/570.9b0054ab.chunk.css.map b/build/static/css/570.9b0054ab.chunk.css.map deleted file mode 100644 index 7f457a4..0000000 --- a/build/static/css/570.9b0054ab.chunk.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/css/570.9b0054ab.chunk.css","mappings":"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","sources":["components/Sidebar.css","Screens/Admin/AdminDashboard.css","Screens/Admin/Users.css","components/UserRoleChip.css","Screens/Admin/EditScores.css","components/LiveEventBoxes/LiveEventBox.css","../node_modules/handsontable/dist/handsontable.full.min.css","Screens/Admin/ScheduleEditor.css","components/LogItem.css"],"sourcesContent":[".sidebar {\r\n\theight: 100dvh;\r\n\twidth: 100px;\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tbox-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\r\n\r\n\t.items {\r\n\t\tflex-grow: 1;\r\n\t}\r\n\r\n\t.item {\r\n\t\tcursor: pointer;\r\n\t\tpadding: 10px;\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\r\n\t\t.title {\r\n\t\t\ttext-align: center;\r\n\t\t}\r\n\t}\r\n\t.item:hover {\r\n\t\tbackground-color: #ebebeb;\r\n\t}\r\n}\r\n\r\n@media screen and (max-width: 600px) {\r\n\t.sidebar {\r\n\t\tposition: fixed;\r\n\t\tbottom: 0;\r\n\t\tz-index: 999;\r\n\t\tbackground-color: white;\r\n\t\theight: min-content;\r\n\t\twidth: 100vw;\r\n\r\n\t\t.items {\r\n\t\t\tdisplay: flex;\r\n\r\n\t\t\t.item {\r\n\t\t\t\tflex-grow: 1;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n",".admin-container {\r\n\tdisplay: flex;\r\n\r\n\t.admin-content {\r\n\t\tflex-grow: 1;\r\n\t\theight: 100vh;\r\n\t\toverflow-y: scroll;\r\n\t}\r\n\t.floatingDialogBox {\r\n\t\tz-index: 1000;\r\n\t\tposition: fixed;\r\n\t\tright: 15px;\r\n\t\ttop: 15px;\r\n\t\tbackground-color: white;\r\n\t\tbox-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\r\n\t\tborder-radius: 5px;\r\n\r\n\t\t.styledButton {\r\n\t\t\tdisplay: flex;\r\n\t\t\talign-items: center;\r\n\t\t}\r\n\r\n\t\t.user-name-text {\r\n\t\t\tmargin-right: 10px;\r\n\t\t}\r\n\t}\r\n\t.floatingDialogBox > div {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t}\r\n}\r\n",".usersContainer {\r\n\tmargin: 20px;\r\n\r\n\t.main {\r\n\t\tpadding: 5px;\r\n\t\tmargin-top: 5px;\r\n\t}\r\n\r\n\t.top {\r\n\t\tborder-radius: 5px;\r\n\t\tbackground-color: color-mix(in srgb, var(--light_blue) 50%, white 50%);\r\n\t\tpadding: 10px;\r\n\t}\r\n}\r\n\r\n.usersContainer > .top > dialog {\r\n\twidth: 40vw;\r\n\tmin-width: 320px;\r\n\tborder-radius: 10px;\r\n\tborder: 2px solid var(--dark_blue);\r\n\r\n\t.dropdown {\r\n\t\tfont-size: 14px;\r\n\t\tpadding: 5px 10px;\r\n\t}\r\n}\r\n.usersContainer > .top > dialog > .styledButton {\r\n\tposition: absolute;\r\n\ttop: 10px;\r\n\tright: 10px;\r\n\tpadding: 5px 10px;\r\n\tfont-size: 12px;\r\n}\r\n.usersContainer > .top > dialog > h3 {\r\n\ttext-align: center;\r\n}\r\n.usersContainer > .top > dialog > form {\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\talign-items: center;\r\n\tpadding: 10px;\r\n}\r\n.usersContainer > .top > dialog > form label {\r\n\tdisplay: block;\r\n}\r\n.usersContainer > .top > dialog > form input {\r\n\twidth: 100%;\r\n}\r\n.usersContainer > .top > dialog > form div {\r\n\tmargin-bottom: 15px;\r\n\twidth: 100%;\r\n\tmax-width: 300px;\r\n}\r\n\r\n.usersContainer > .main > table {\r\n\tborder-collapse: collapse;\r\n\twidth: 100%;\r\n}\r\n.usersContainer > .main > table thead > tr {\r\n\tborder-bottom: 2px solid rgba(0, 0, 0, 0.5);\r\n\r\n\tfont-weight: 600;\r\n}\r\n.usersContainer > .main > table tr {\r\n\ttext-transform: capitalize;\r\n\tborder-bottom: 2px solid rgba(0, 0, 0, 0.2);\r\n}\r\n.usersContainer > .main > table td {\r\n\tpadding: 4px;\r\n}\r\n.usersContainer > .main > table .chipCell {\r\n\tpadding-top: 0px;\r\n}\r\n.usersContainer > .main > table .styledButton {\r\n\tfont-size: 12px;\r\n\tpadding: 5px 10px;\r\n}\r\n\r\n@media screen and (max-width: 900px) {\r\n\t.usersContainer {\r\n\t\tmargin: 10px;\r\n\t}\r\n}\r\n",".chip {\r\n\tfont-size: 11px;\r\n\tcolor: white;\r\n\tpadding: 5px;\r\n\tborder-radius: 15px;\r\n\tbackground-color: red;\r\n}\r\n",".main > .liveAbleEvents {\r\n\tmargin-top: 1em;\r\n}\r\n.main > .liveAbleEvents > div {\r\n\tpadding: 10px;\r\n\tbox-shadow: 0 0 2px 0 rgb(106, 106, 106);\r\n\tmargin-block-end: 1px;\r\n}\r\n.main > .liveAbleEvents > div > ul {\r\n\tmargin-block-start: 0.5em;\r\n\tmargin-block-end: 0.5em;\r\n\tlist-style-type: upper-alpha;\r\n}\r\n",".liveEventBox.chess {\r\n\t--theme_color: rgb(52, 52, 52);\r\n}\r\n.liveEventBox.cricket {\r\n\t--theme_color: #2255a4;\r\n}\r\n.liveEventBox.squash {\r\n\t--theme_color: rgb(233, 73, 15);\r\n}\r\n.liveEventBox.tennis {\r\n\t--theme_color: #9cd10b;\r\n}\r\n.liveEventBox {\r\n\tmargin: 5px;\r\n\tpadding: 5px;\r\n\tmin-width: 370px;\r\n\t--theme_color: #04aa6d;\r\n\tborder-radius: 10px;\r\n\tscroll-snap-align: center;\r\n\tbox-shadow: 0 5px 10px rgba(0, 57, 111, 0.15);\r\n\tpadding-bottom: 12px;\r\n\tborder: 1px solid gainsboro;\r\n\r\n\t.VS {\r\n\t\tfont-size: 1.3rem;\r\n\t\tcolor: var(--theme_color);\r\n\t\tmargin-block-start: 0.5em;\r\n\t\tmargin-block-end: 0.5em;\r\n\t}\r\n\r\n\t.eventCategory {\r\n\t\tbackground-color: color-mix(in srgb, var(--theme_color) 80%, white 20%);\r\n\t\tcolor: white;\r\n\t\tfont-size: 18px;\r\n\t\tmargin: 5px;\r\n\t\tpadding: 2px;\r\n\t\tpadding-right: 5px;\r\n\t\tborder-radius: 5px;\r\n\t\tdisplay: flex;\r\n\t\twidth: min-content;\r\n\t\talign-items: center;\r\n\t\tgap: 3px;\r\n\t}\r\n\t.hr {\r\n\t\tmargin-top: 1rem;\r\n\t\tmargin-bottom: 1rem;\r\n\t\tborder: 0;\r\n\t\tborder-top: 1px solid rgba(0, 0, 0, 0.1);\r\n\t}\r\n\t.footballScoresContainer {\r\n\t\ttext-transform: uppercase;\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: space-around;\r\n\t\talign-items: center;\r\n\t\tbackground-color: white;\r\n\t\tcolor: black;\r\n\t\tmargin-bottom: 10px;\r\n\t}\r\n}\r\n\r\n.liveEventBox h3 {\r\n\tmargin: 0px;\r\n\tfont-weight: 500;\r\n\ttext-align: center;\r\n}\r\n.eventCategory > span {\r\n\twhite-space: nowrap;\r\n}\r\n.footballScoresContainer h3 {\r\n\tdisplay: inline;\r\n}\r\n.footballScoresContainer > div {\r\n\tdisplay: flex;\r\n\tborder-radius: 5px;\r\n\tflex-direction: column;\r\n\talign-items: center;\r\n}\r\n.footballScoresContainer > div > p {\r\n\tmargin: 0.5em;\r\n\tpadding: 7px;\r\n\tborder-top: groove black 3px;\r\n\tborder-bottom-left-radius: 5px;\r\n\tborder-bottom-right-radius: 5px;\r\n\tfont-size: 1.7rem;\r\n\tfont-weight: 600;\r\n\tbackground-color: var(--theme_color);\r\n\tcolor: white;\r\n}\r\n\r\n.footballScoresContainer h3 {\r\n\tfont-size: 1.4rem;\r\n}\r\n\r\n.footballScoresContainer > div > span {\r\n\tfont-size: 1.4rem;\r\n}\r\n","/*!\n * Copyright (c) HANDSONCODE sp. z o. o.\n *\n * HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in\n * Gdynia, Poland, at Aleja Zwyciestwa 96-98, registered by the District Court in Gdansk under number\n * 538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.\n *\n * This software is protected by applicable copyright laws, including international treaties, and dual-\n * licensed - depending on whether your use for commercial purposes, meaning intended for or\n * resulting in commercial advantage or monetary compensation, or not.\n *\n * If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing\n * the suitability, performance, and usefulness of this software outside the production environment,\n * you agree to be bound by the terms included in the \"handsontable-non-commercial-license.pdf\" file.\n *\n * Your use of this software for commercial purposes is subject to the terms included in an applicable\n * license agreement.\n *\n * In any case, you must not make any such use of this software as to develop software which may be\n * considered competitive with this software.\n *\n * UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN \"AS IS\"\n * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO\n * LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,\n * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM\n * USE OR INABILITY TO USE THIS SOFTWARE.\n *\n * Version: 13.1.0\n * Release date: 31/08/2023 (built at 31/08/2023 08:24:01)\n */.handsontable .table td,.handsontable .table th{border-top:none}.handsontable tr{background:#fff}.handsontable td{background-color:inherit}.handsontable .table caption+thead tr:first-child td,.handsontable .table caption+thead tr:first-child th,.handsontable .table colgroup+thead tr:first-child td,.handsontable .table colgroup+thead tr:first-child th,.handsontable .table thead:first-child tr:first-child td,.handsontable .table thead:first-child tr:first-child th{border-top:1px solid #ccc}.handsontable .table-bordered{border:0;border-collapse:separate}.handsontable .table-bordered td,.handsontable .table-bordered th{border-left:none}.handsontable .table-bordered td:first-child,.handsontable .table-bordered th:first-child{border-left:1px solid #ccc}.handsontable .table>tbody>tr>td,.handsontable .table>tbody>tr>th,.handsontable .table>tfoot>tr>td,.handsontable .table>tfoot>tr>th,.handsontable .table>thead>tr>td,.handsontable .table>thead>tr>th{line-height:21px;padding:0}.col-lg-1.handsontable,.col-lg-10.handsontable,.col-lg-11.handsontable,.col-lg-12.handsontable,.col-lg-2.handsontable,.col-lg-3.handsontable,.col-lg-4.handsontable,.col-lg-5.handsontable,.col-lg-6.handsontable,.col-lg-7.handsontable,.col-lg-8.handsontable,.col-lg-9.handsontable,.col-md-1.handsontable,.col-md-10.handsontable,.col-md-11.handsontable,.col-md-12.handsontable,.col-md-2.handsontable,.col-md-3.handsontable,.col-md-4.handsontable,.col-md-5.handsontable,.col-md-6.handsontable,.col-md-7.handsontable,.col-md-8.handsontable,.col-md-9.handsontable .col-sm-1.handsontable,.col-sm-10.handsontable,.col-sm-11.handsontable,.col-sm-12.handsontable,.col-sm-2.handsontable,.col-sm-3.handsontable,.col-sm-4.handsontable,.col-sm-5.handsontable,.col-sm-6.handsontable,.col-sm-7.handsontable,.col-sm-8.handsontable,.col-sm-9.handsontable .col-xs-1.handsontable,.col-xs-10.handsontable,.col-xs-11.handsontable,.col-xs-12.handsontable,.col-xs-2.handsontable,.col-xs-3.handsontable,.col-xs-4.handsontable,.col-xs-5.handsontable,.col-xs-6.handsontable,.col-xs-7.handsontable,.col-xs-8.handsontable,.col-xs-9.handsontable{padding-left:0;padding-right:0}.handsontable .table-striped>tbody>tr:nth-of-type(2n){background-color:#fff}.handsontable{position:relative}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable .wtHider{width:0}.handsontable .wtSpreader{height:auto;position:relative;width:0}.handsontable div,.handsontable input,.handsontable table,.handsontable tbody,.handsontable td,.handsontable textarea,.handsontable th,.handsontable thead{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:auto}.handsontable table.htCore{border-collapse:separate;border-spacing:0;border-width:0;cursor:default;margin:0;max-height:none;max-width:none;outline-width:0;table-layout:fixed;width:0}.handsontable col,.handsontable col.rowHeader{width:50px}.handsontable td,.handsontable th{background-color:#fff;border-bottom:1px solid #ccc;border-left-width:0;border-right:1px solid #ccc;border-top-width:0;empty-cells:show;height:22px;line-height:21px;outline-width:0;overflow:hidden;padding:0 4px;vertical-align:top;white-space:pre-wrap}[dir=rtl].handsontable td,[dir=rtl].handsontable th{border-left:1px solid #ccc;border-right-width:0}.handsontable th:last-child{border-bottom:1px solid #ccc;border-left:none;border-right:1px solid #ccc}[dir=rtl].handsontable th:last-child{border-left:1px solid #ccc;border-right:none}.handsontable td:first-of-type,.handsontable th:first-child,.handsontable th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable td:first-of-type,[dir=rtl].handsontable th:first-child,[dir=rtl].handsontable th:nth-child(2){border-right:1px solid #ccc}.handsontable .ht_clone_top th:nth-child(2){border-left-width:0;border-right:1px solid #ccc}[dir=rtl].handsontable .ht_clone_top th:nth-child(2){border-left:1px solid #ccc;border-right-width:0}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2){border-right:1px solid #ccc}.handsontable tr:first-child td,.handsontable tr:first-child th{border-top:1px solid #ccc}.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top) thead tr th:first-child{border-left:1px solid #ccc;border-right-width:0}[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top) thead tr th:first-child{border-left-width:0;border-right:1px solid #ccc}.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr:last-child th{border-bottom-width:0}.handsontable th{background-color:#f0f0f0;color:#222;font-weight:400;text-align:center;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#ccc}.handsontable thead th .relative{padding:2px 4px}.handsontable span.colHeader{display:inline-block;line-height:1.1}.handsontable .wtBorder{font-size:0;position:absolute}.handsontable .wtBorder.hidden{display:none!important}.handsontable .wtBorder.current{z-index:10}.handsontable .wtBorder.area{z-index:8}.handsontable .wtBorder.fill{z-index:6}.handsontable .wtBorder.corner{cursor:crosshair;font-size:0}.ht_clone_master{z-index:100}.ht_clone_inline_start{z-index:120}.ht_clone_bottom{z-index:130}.ht_clone_bottom_inline_start_corner{z-index:150}.ht_clone_top{z-index:160}.ht_clone_top_inline_start_corner{z-index:180}.handsontable col.hidden{width:0!important}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_clone_bottom,.ht_clone_inline_start,.ht_clone_top,.ht_master{overflow:hidden}.ht_master .wtHolder{overflow:auto}.handsontable .ht_clone_inline_start thead,.handsontable .ht_master thead,.handsontable .ht_master tr th{visibility:hidden}.ht_clone_bottom .wtHolder,.ht_clone_inline_start .wtHolder,.ht_clone_top .wtHolder{overflow:hidden}.handsontable{color:#373737;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;font-weight:400;touch-action:manipulation}.handsontable a{color:#104acc}.handsontable.htAutoSize{left:-99000px;position:absolute;top:-99000px;visibility:hidden}.handsontable td.htInvalid{background-color:#ff4c42!important}.handsontable td.htNoWrap{white-space:nowrap}.hot-display-license-info{color:#373737;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:400;padding:5px 0 3px;text-align:left}.hot-display-license-info a{color:#104acc;font-size:10px}.handsontable .manualColumnResizer{cursor:col-resize;height:25px;position:absolute;top:0;width:5px;z-index:210}.handsontable .manualRowResizer{cursor:row-resize;height:5px;left:0;position:absolute;width:50px;z-index:210}.handsontable .manualColumnResizer.active,.handsontable .manualColumnResizer:hover,.handsontable .manualRowResizer.active,.handsontable .manualRowResizer:hover{background-color:#34a9db}.handsontable .manualColumnResizerGuide{background-color:#34a9db;border-left:none;border-right:1px dashed #777;display:none;margin-left:5px;margin-right:unset;position:absolute;right:unset;top:0;width:0}[dir=rtl].handsontable .manualColumnResizerGuide{border-left:1px dashed #777;border-right:none;left:unset;margin-left:unset;margin-right:5px}.handsontable .manualRowResizerGuide{background-color:#34a9db;border-bottom:1px dashed #777;bottom:0;display:none;height:0;left:0;margin-top:5px;position:absolute}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block;z-index:209}.handsontable .columnSorting{position:relative}.handsontable .columnSorting.sortAction:hover{cursor:pointer;text-decoration:underline}.handsontable span.colHeader.columnSorting:before{background-position-x:right;background-repeat:no-repeat;background-size:contain;content:\"\";height:10px;left:unset;margin-top:-6px;padding-left:8px;padding-right:0;position:absolute;right:-9px;top:50%;width:5px}[dir=rtl].handsontable span.colHeader.columnSorting:before{background-position-x:left;left:-9px;padding-left:0;padding-right:8px;right:unset}.handsontable span.colHeader.columnSorting.ascending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFNJREFUeAHtzjkSgCAUBNHPgsoy97+ulGXRqJE5L+xkxoYt2UdsLb5bqFINz+aLuuLn5rIu2RkO3fZpWENimNgiw6iBYRTPMLJjGFxQZ1hxxb/xBI1qC8k39CdKAAAAAElFTkSuQmCC)}.handsontable span.colHeader.columnSorting.descending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFJJREFUeAHtzjkSgCAQRNFmQYUZ7n9dKUvru0TmvPAn3br0QfgdZ5xx6x+rQn23GqTYnq1FDcnuzZIO2WmedVqIRVxgGKEyjNgYRjKGkZ1hFIZ3I70LyM0VtU8AAAAASUVORK5CYII=)}.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled):after{content:\"*\";display:inline-block;padding-right:20px;position:relative}.handsontable td.area,.handsontable td.area-1,.handsontable td.area-2,.handsontable td.area-3,.handsontable td.area-4,.handsontable td.area-5,.handsontable td.area-6,.handsontable td.area-7{position:relative}.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before,.handsontable td.area:before{background:#005eff;bottom:0;bottom:-100%\\9;content:\"\";left:0;position:absolute;right:0;top:0}@media (-ms-high-contrast:none),screen and (-ms-high-contrast:active){.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before,.handsontable td.area:before{bottom:-100%}}.handsontable td.area:before{opacity:.1}.handsontable td.area-1:before{opacity:.2}.handsontable td.area-2:before{opacity:.27}.handsontable td.area-3:before{opacity:.35}.handsontable td.area-4:before{opacity:.41}.handsontable td.area-5:before{opacity:.47}.handsontable td.area-6:before{opacity:.54}.handsontable td.area-7:before{opacity:.58}.handsontable tbody th.ht__highlight,.handsontable thead th.ht__highlight{background-color:#dcdcdc}.handsontable tbody th.ht__active_highlight,.handsontable thead th.ht__active_highlight{background-color:#8eb0e7;color:#000}.handsontableInput{background-color:#fff;border:none;border-radius:0;box-shadow:inset 0 0 0 2px #5292f7;color:#000;display:block;font-family:inherit;font-size:inherit;line-height:21px;margin:0;outline-width:0;padding:1px 5px 0;resize:none}.handsontableInput:focus{outline:none}.handsontableInputHolder{left:0;position:absolute;top:0}.htSelectEditor{-webkit-appearance:menulist-button!important;position:absolute;width:auto}.htSelectEditor:focus{outline:none}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{color:#777;content:\"▶\";font-size:9px;position:absolute;right:5px}[dir=rtl].handsontable .htSubmenu :after{content:\"\"}[dir=rtl].handsontable .htSubmenu :before{color:#777;content:\"◀\";font-size:9px;left:5px;position:absolute}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable.listbox{margin:0}.handsontable.listbox .ht_master table{background:#fff;border:1px solid #ccc;border-collapse:separate}.handsontable.listbox td,.handsontable.listbox th,.handsontable.listbox tr:first-child td,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th{border-color:transparent!important}.handsontable.listbox td,.handsontable.listbox th{text-overflow:ellipsis;white-space:nowrap}.handsontable.listbox td.htDimmed{color:inherit;cursor:default;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_editor_hidden{z-index:-1}.ht_editor_visible{z-index:200}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.handsontable .collapsibleIndicator{background:#eee;border:1px solid #a6a6a6;border-radius:10px;-webkit-box-shadow:0 0 0 6px #eee;-moz-box-shadow:0 0 0 6px #eee;box-shadow:0 0 0 6px #eee;color:#222;cursor:pointer;font-size:10px;height:10px;left:unset;line-height:8px;position:absolute;right:5px;text-align:center;top:50%;transform:translateY(-50%);width:10px}[dir=rtl].handsontable .collapsibleIndicator{left:5px;right:unset}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.handsontable.mobile .handsontableInput:focus{-webkit-appearance:none;-webkit-box-shadow:inset 0 0 0 2px #5292f7;-moz-box-shadow:inset 0 0 0 2px #5292f7;box-shadow:inset 0 0 0 2px #5292f7}.handsontable .bottomSelectionHandle,.handsontable .bottomSelectionHandle-HitArea,.handsontable .topSelectionHandle,.handsontable .topSelectionHandle-HitArea{left:-10000px;right:unset;top:-10000px;z-index:9999}[dir=rtl].handsontable .bottomSelectionHandle,[dir=rtl].handsontable .bottomSelectionHandle-HitArea,[dir=rtl].handsontable .topSelectionHandle,[dir=rtl].handsontable .topSelectionHandle-HitArea{left:unset;right:-10000px}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}\n/*!\n * Pikaday\n * Copyright © 2014 David Bushell | BSD & MIT license | https://dbushell.com/\n */.pika-single{background:#fff;border:1px solid;border-color:#ccc #ccc #bbb;color:#333;display:block;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;position:relative;z-index:9999}.pika-single:after,.pika-single:before{content:\" \";display:table}.pika-single:after{clear:both}.pika-single.is-hidden{display:none}.pika-single.is-bound{box-shadow:0 5px 15px -5px rgba(0,0,0,.5);position:absolute}.pika-lendar{float:left;margin:8px;width:240px}.pika-title{position:relative;text-align:center}.pika-label{background-color:#fff;display:inline-block;font-size:14px;font-weight:700;line-height:20px;margin:0;overflow:hidden;padding:5px 3px;position:relative;z-index:9999}.pika-title select{cursor:pointer;left:0;margin:0;opacity:0;position:absolute;top:5px;z-index:9998}.pika-next,.pika-prev{background-color:transparent;background-position:50%;background-repeat:no-repeat;background-size:75% 75%;border:0;cursor:pointer;display:block;height:30px;opacity:.5;outline:none;overflow:hidden;padding:0;position:relative;text-indent:20px;white-space:nowrap;width:20px}.pika-next:hover,.pika-prev:hover{opacity:1}.is-rtl .pika-next,.pika-prev{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==);float:left}.is-rtl .pika-prev,.pika-next{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=);float:right}.pika-next.is-disabled,.pika-prev.is-disabled{cursor:default;opacity:.2}.pika-select{display:inline-block}.pika-table{border:0;border-collapse:collapse;border-spacing:0;width:100%}.pika-table td,.pika-table th{padding:0;width:14.2857142857%}.pika-table th{color:#999;font-size:12px;font-weight:700;line-height:25px;text-align:center}.pika-button{background:#f5f5f5;border:0;box-sizing:border-box;-moz-box-sizing:border-box;color:#666;cursor:pointer;display:block;font-size:12px;height:auto;line-height:15px;margin:0;outline:none;padding:5px;text-align:right;width:100%}.pika-week{color:#999;font-size:11px}.is-today .pika-button{color:#3af;font-weight:700}.has-event .pika-button,.is-selected .pika-button{background:#3af;border-radius:3px;box-shadow:inset 0 1px 3px #178fe5;color:#fff;font-weight:700}.has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.is-disabled .pika-button,.is-inrange .pika-button{background:#d5e9f7}.is-startrange .pika-button{background:#6cb31d;border-radius:3px;box-shadow:none;color:#fff}.is-endrange .pika-button{background:#3af;border-radius:3px;box-shadow:none;color:#fff}.is-disabled .pika-button{color:#999;cursor:default;opacity:.3;pointer-events:none}.is-outside-current-month .pika-button{color:#999;opacity:.3}.is-selection-disabled{cursor:default;pointer-events:none}.pika-button:hover,.pika-row.pick-whole-week:hover .pika-button{background:#ff8000;border-radius:3px;box-shadow:none;color:#fff}.pika-table abbr{border-bottom:none;cursor:help}.handsontable .htAutocompleteArrow{color:#eee;cursor:default;float:right;font-size:10px;text-align:center;width:16px}[dir=rtl].handsontable .htAutocompleteArrow{float:left}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput{display:inline-block}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htCheckboxRendererLabel{cursor:pointer;display:inline-block;font-size:inherit;vertical-align:middle}.handsontable .htCheckboxRendererLabel.fullWidth{width:100%}.handsontable .htCommentCell{position:relative}.handsontable .htCommentCell:after{border-left:6px solid transparent;border-right:none;border-top:6px solid #000;content:\"\";left:unset;position:absolute;right:0;top:0}[dir=rtl].handsontable .htCommentCell:after{border-left:none;border-right:6px solid transparent;left:0;right:unset}.htCommentsContainer .htComments{display:none;position:absolute;z-index:1059}.htCommentsContainer .htCommentTextArea{-webkit-appearance:none;background-color:#fff;border:none;border-left:3px solid #ccc;box-shadow:0 1px 3px rgba(0,0,0,.118),0 1px 2px rgba(0,0,0,.239);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-size:12px;height:90px;outline:0!important;padding:5px;width:215px}[dir=rtl].htCommentsContainer .htCommentTextArea{border-left:none;border-right:3px solid #ccc}.htCommentsContainer .htCommentTextArea:focus{border-left:3px solid #5292f7;border-right:none;box-shadow:0 1px 3px rgba(0,0,0,.118),0 1px 2px rgba(0,0,0,.239),inset 0 0 0 1px #5292f7}[dir=rtl].htCommentsContainer .htCommentTextArea:focus{border-left:none;border-right:3px solid #5292f7}\n/*!\n * Handsontable ContextMenu\n */.htContextMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_bottom,.htContextMenu .ht_clone_bottom_inline_start_corner,.htContextMenu .ht_clone_inline_start,.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_top_inline_start_corner{display:none}.htContextMenu .ht_master table.htCore{border-color:#ccc;border-style:solid;border-width:1px 2px 2px 1px}[dir=rtl].htContextMenu .ht_master table.htCore{border-left-width:2px;border-right-width:1px}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:#fff;border-width:0;cursor:pointer;overflow:hidden;padding:4px 6px 0;text-overflow:ellipsis;white-space:nowrap}.htContextMenu table tbody tr td:first-child{border-width:0}[dir=rtl].htContextMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htContextMenu table tbody tr td.htDimmed{color:#323232;font-style:normal}.htContextMenu table tbody tr td.current,.htContextMenu table tbody tr td.zeroclipboard-is-hover{background:#f3f3f3}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;cursor:default;height:0;padding:0}.htContextMenu table tbody tr td.htDisabled{color:#999;cursor:default}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr.htHidden{display:none}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}[dir=rtl].htContextMenu table tbody tr td .htItemWrapper{margin-left:6px;margin-right:10px}.htContextMenu table tbody tr td div span.selected{left:4px;margin-top:-2px;position:absolute;right:0}[dir=rtl].htContextMenu table tbody tr td div span.selected{left:0;right:4px}.htContextMenu .ht_master .wtHolder{overflow:hidden}textarea.HandsontableCopyPaste{opacity:0;outline:0 none!important;overflow:hidden;position:fixed!important;right:100%!important;top:0!important}\n/*!\n * Handsontable DropdownMenu\n */.handsontable .changeType{background:#eee;border:1px solid #bbb;border-radius:2px;color:#bbb;float:right;font-size:9px;line-height:9px;margin:3px 1px 0 5px;padding:2px}[dir=rtl].handsontable .changeType{float:left}.handsontable .changeType:before{content:\"▼ \"}.handsontable .changeType:hover{border:1px solid #777;color:#777;cursor:pointer}.htDropdownMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htDropdownMenu .ht_clone_bottom,.htDropdownMenu .ht_clone_bottom_inline_start_corner,.htDropdownMenu .ht_clone_inline_start,.htDropdownMenu .ht_clone_top,.htDropdownMenu .ht_clone_top_inline_start_corner{display:none}.htDropdownMenu table.htCore{border-color:#ccc;border-style:solid;border-width:1px 2px 2px 1px}[dir=rtl].htDropdownMenu table.htCore{border-left-width:2px;border-right-width:1px}.htDropdownMenu .wtBorder{visibility:hidden}.htDropdownMenu table tbody tr td{background:#fff;border-width:0;cursor:pointer;overflow:hidden;padding:4px 6px 0;text-overflow:ellipsis;white-space:nowrap}.htDropdownMenu table tbody tr td:first-child{border-width:0}[dir=rtl].htDropdownMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htDropdownMenu table tbody tr td.htDimmed{color:#323232;font-style:normal}.htDropdownMenu table tbody tr td.current,.htDropdownMenu table tbody tr td.zeroclipboard-is-hover{background:#e9e9e9}.htDropdownMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;cursor:default;height:0;padding:0}.htDropdownMenu table tbody tr td.htDisabled{color:#999}.htDropdownMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htDropdownMenu:not(.htGhostTable) table tbody tr.htHidden{display:none}.htDropdownMenu table tbody tr td .htItemWrapper,[dir=rtl].htDropdownMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}.htDropdownMenu table tbody tr td div span.selected{left:4px;margin-top:-2px;position:absolute;right:0}[dir=rtl].htDropdownMenu table tbody tr td div span.selected{left:0;right:4px}.htDropdownMenu .ht_master .wtHolder{overflow:hidden}\n/*!\n * Handsontable Filters\n */.htFiltersConditionsMenu:not(.htGhostTable){display:none;position:absolute;z-index:1070}.htFiltersConditionsMenu .ht_clone_bottom,.htFiltersConditionsMenu .ht_clone_bottom_inline_start_corner,.htFiltersConditionsMenu .ht_clone_inline_start,.htFiltersConditionsMenu .ht_clone_top,.htFiltersConditionsMenu .ht_clone_top_inline_start_corner{display:none}.htFiltersConditionsMenu table.htCore{border-color:#bbb;border-style:solid;border-width:1px 2px 2px 1px}.htFiltersConditionsMenu .wtBorder{visibility:hidden}.htFiltersConditionsMenu table tbody tr td{background:#fff;border-width:0;cursor:pointer;overflow:hidden;padding:4px 6px 0;text-overflow:ellipsis;white-space:nowrap}.htFiltersConditionsMenu table tbody tr td:first-child{border-width:0}[dir=rtl].htFiltersConditionsMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htFiltersConditionsMenu table tbody tr td.htDimmed{color:#323232;font-style:normal}.htFiltersConditionsMenu table tbody tr td.current,.htFiltersConditionsMenu table tbody tr td.zeroclipboard-is-hover{background:#e9e9e9}.htFiltersConditionsMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0}.htFiltersConditionsMenu table tbody tr td.htDisabled{color:#999}.htFiltersConditionsMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htFiltersConditionsMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}.htFiltersConditionsMenu table tbody tr td div span.selected{left:4px;margin-top:-2px;position:absolute}.htFiltersConditionsMenu .ht_master .wtHolder{overflow:hidden}.handsontable .htMenuFiltering{border-bottom:1px dotted #ccc;height:135px;overflow:hidden}.handsontable .ht_master table td.htCustomMenuRenderer{background-color:#fff;cursor:auto}.handsontable .htFiltersMenuLabel{font-size:.75em}.handsontable .htFiltersMenuActionBar{padding-bottom:3px;padding-top:10px;text-align:center}.handsontable .htFiltersMenuCondition.border{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuCondition .htUIInput{padding:0 0 5px}.handsontable .htFiltersMenuValue{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch{padding:0}.handsontable .htFiltersMenuCondition .htUIInput input,.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input{box-sizing:border-box;font-family:inherit;font-size:.75em;padding:4px;width:100%}.htUIMultipleSelect .ht_master .wtHolder{overflow-y:scroll}.handsontable .htFiltersActive .changeType{background-color:#d2e0d9;border:1px solid #509272;color:#18804e}.handsontable .htUISelectAll{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUISelectAll{margin-left:10px;margin-right:0}.handsontable .htUIClearAll,.handsontable .htUISelectAll{display:inline-block}.handsontable .htUIClearAll a,.handsontable .htUISelectAll a{font-size:.75em}.handsontable .htUISelectionControls{text-align:right}[dir=rtl].handsontable .htUISelectionControls{text-align:left}.handsontable .htCheckboxRendererInput{height:1em;margin:0 5px 0 0;vertical-align:middle}[dir=rtl].handsontable .htCheckboxRendererInput{margin-left:5px;margin-right:0}.handsontable .htUIInput{padding:3px 0 7px;position:relative;text-align:center}.handsontable .htUIInput input{border:1px solid #d2d1d1;border-radius:2px}.handsontable .htUIInput input:focus{outline:0}.handsontable .htUIInputIcon{position:absolute}.handsontable .htUIInput.htUIButton{cursor:pointer;display:inline-block}.handsontable .htUIInput.htUIButton input{background-color:#eee;color:#000;cursor:pointer;font-family:inherit;font-size:.75em;font-weight:700;height:19px;min-width:64px}.handsontable .htUIInput.htUIButton input:hover{border-color:#b9b9b9}.handsontable .htUIInput.htUIButtonOK{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUIInput.htUIButtonOK{margin-left:10px;margin-right:0}.handsontable .htUIInput.htUIButtonOK input{background-color:#0f9d58;border-color:#18804e;color:#fff}.handsontable .htUIInput.htUIButtonOK input:hover{border-color:#1a6f46}.handsontable .htUISelect{cursor:pointer;margin-bottom:7px;position:relative}.handsontable .htUISelectCaption{background-color:#e8e8e8;border:1px solid #d2d1d1;border-radius:2px;font-family:inherit;font-size:.75em;font-weight:700;overflow:hidden;padding:3px 20px 3px 10px;text-overflow:ellipsis;white-space:nowrap}.handsontable .htUISelectCaption:hover{background-color:#e8e8e8;border:1px solid #b9b9b9}.handsontable .htUISelectDropdown:after{content:\"▲\";font-size:7px;position:absolute;right:10px;top:0}.handsontable .htUISelectDropdown:before{content:\"▼\";font-size:7px;position:absolute;right:10px;top:8px}.handsontable .htUIMultipleSelect .handsontable .htCore{border:none}.handsontable .htUIMultipleSelect .handsontable .htCore td:hover{background-color:#f5f5f5}.handsontable .htUIMultipleSelectSearch input{border:1px solid #d2d1d1;border-radius:2px;padding:3px}.handsontable .htUIRadio{display:inline-block;height:100%;margin-left:0;margin-right:5px}[dir=rtl].handsontable .htUIRadio{margin-left:5px;margin-right:0}.handsontable .htUIRadio:last-child{margin-right:0}.handsontable .htUIRadio>input[type=radio]{margin-left:0;margin-right:.5ex}[dir=rtl].handsontable .htUIRadio>input[type=radio]{margin-left:.5ex;margin-right:0}.handsontable .htUIRadio label{vertical-align:middle}.handsontable .htFiltersMenuOperators{padding-bottom:5px}.handsontable th.beforeHiddenColumn{position:relative}.handsontable th.afterHiddenColumn:before,.handsontable th.beforeHiddenColumn:after{color:#bbb;font-size:5pt;position:absolute;top:50%;transform:translateY(-50%)}.handsontable th.afterHiddenColumn{position:relative}.handsontable th.beforeHiddenColumn:after{content:\"◀\";right:1px}[dir=rtl].handsontable th.beforeHiddenColumn:after{content:\"▶\";left:1px;right:auto}.handsontable th.afterHiddenColumn:before{content:\"▶\";left:1px}[dir=rtl].handsontable th.afterHiddenColumn:before{content:\"◀\";left:auto;right:1px}\n/*!\n * Handsontable HiddenRows\n */.handsontable th.afterHiddenRow:after,.handsontable th.beforeHiddenRow:before{color:#bbb;font-size:6pt;left:2px;line-height:6pt;position:absolute}.handsontable th.afterHiddenRow,.handsontable th.beforeHiddenRow{position:relative}.handsontable th.beforeHiddenRow:before{bottom:2px;content:\"▲\"}.handsontable th.afterHiddenRow:after{content:\"▼\";top:2px}.handsontable.ht__selection--rows tbody th.afterHiddenRow.ht__highlight:after,.handsontable.ht__selection--rows tbody th.beforeHiddenRow.ht__highlight:before{color:#eee}.handsontable td.afterHiddenRow.firstVisibleRow,.handsontable th.afterHiddenRow.firstVisibleRow{border-top:1px solid #ccc}.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_inline_start td:first-of-type,.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_top_inline_start_corner th:nth-child(2){border-left:0}.handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualColumnMove.on-moving--columns,.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer{display:none}.handsontable .ht__manualColumnMove--backlight,.handsontable .ht__manualColumnMove--guideline{display:none;height:100%;position:absolute}.handsontable .ht__manualColumnMove--guideline{background:#757575;margin-inline-end:0;margin-inline-start:-1px;top:0;width:2px;z-index:205}.handsontable .ht__manualColumnMove--backlight{background:#343434;background:rgba(52,52,52,.25);display:none;pointer-events:none;z-index:205}.handsontable.on-moving--columns .ht__manualColumnMove--backlight,.handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline{display:block}.handsontable .wtHider{position:relative}.handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualRowMove.on-moving--rows,.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer{display:none}.handsontable .ht__manualRowMove--backlight,.handsontable .ht__manualRowMove--guideline{display:none;position:absolute;width:100%}.handsontable .ht__manualRowMove--guideline{background:#757575;height:2px;left:0;margin-top:-1px;z-index:205}.handsontable .ht__manualRowMove--backlight{background:#343434;background:rgba(52,52,52,.25);display:none;pointer-events:none;z-index:205}.handsontable.on-moving--rows .ht__manualRowMove--backlight,.handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline{display:block}.handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell]):before{opacity:0}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before,.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before{opacity:.2}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before{opacity:.27}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before{opacity:.35}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before{opacity:.41}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before{opacity:.47}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before{opacity:.54}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before{opacity:.58}.handsontable span.colHeader.columnSorting:after{font-size:8px;height:8px;left:unset;line-height:1.1;margin-top:-2px;padding-left:5px;padding-right:unset;position:absolute;right:-15px;text-decoration:underline;top:50%}[dir=rtl].handsontable span.colHeader.columnSorting:after{left:-15px;padding-left:unset;padding-right:5px;right:unset}.handsontable span.colHeader.columnSorting:after{text-decoration:none}.handsontable span.colHeader.columnSorting[class*=\" sort-\"]:after,.handsontable span.colHeader.columnSorting[class^=sort-]:after{content:\"+\"}.handsontable span.colHeader.columnSorting.sort-1:after{content:\"1\"}.handsontable span.colHeader.columnSorting.sort-2:after{content:\"2\"}.handsontable span.colHeader.columnSorting.sort-3:after{content:\"3\"}.handsontable span.colHeader.columnSorting.sort-4:after{content:\"4\"}.handsontable span.colHeader.columnSorting.sort-5:after{content:\"5\"}.handsontable span.colHeader.columnSorting.sort-6:after{content:\"6\"}.handsontable span.colHeader.columnSorting.sort-7:after{content:\"7\"}.htGhostTable th div button.changeType+span.colHeader.columnSorting:not(.indicatorDisabled){padding-right:5px}.handsontable thead th.hiddenHeader:not(:first-of-type){display:none}.handsontable th.ht_nestingLevels{padding-left:7px;text-align:left}[dir=rtl].handsontable th.ht_nestingLevels{padding-right:7px;text-align:right}.handsontable th div.ht_nestingLevels{display:inline-block;left:11px;position:absolute;right:unset}[dir=rtl].handsontable th div.ht_nestingLevels{left:unset;right:11px}.handsontable.innerBorderInlineStart th div.ht_nestingLevels,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{left:unset;right:10px}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingLevels,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{left:10px;right:unset}.handsontable th span.ht_nestingLevel{display:inline-block}.handsontable th span.ht_nestingLevel_empty{display:inline-block;float:left;height:1px;width:10px}[dir=rtl].handsontable th span.ht_nestingLevel_empty{float:right}.handsontable th span.ht_nestingLevel:after{bottom:3px;content:\"┐\";display:inline-block;font-size:9px;position:relative}.handsontable th div.ht_nestingButton{cursor:pointer;display:inline-block;left:unset;position:absolute;right:-2px}[dir=rtl].handsontable th div.ht_nestingButton{left:-2px;right:unset}.handsontable th div.ht_nestingButton.ht_nestingExpand:after{content:\"+\"}.handsontable th div.ht_nestingButton.ht_nestingCollapse:after{content:\"-\"}.handsontable.innerBorderInlineStart th div.ht_nestingButton,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{left:unset;right:0}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingButton,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{left:0;right:unset}","/* Hide scrollbar for Chrome, Safari and Opera */\r\n.tableContainer::-webkit-scrollbar {\r\n\tdisplay: none;\r\n}\r\n\r\n/* Hide scrollbar for IE, Edge and Firefox */\r\n.tableContainer {\r\n\t-ms-overflow-style: none; /* IE and Edge */\r\n\tscrollbar-width: none; /* Firefox */\r\n}\r\n\r\n@media screen and (max-width: 900px) {\r\n\t.tableContainer {\r\n\t\tmargin: 0 -10px;\r\n\t}\r\n}\r\n",".log-item {\r\n\tpadding: 20px 0;\r\n\tborder-bottom: 1px solid gainsboro;\r\n\tcursor: pointer;\r\n}\r\n\r\n.dialogue {\r\n\tposition: fixed;\r\n\theight: 100vh;\r\n\twidth: 100vw;\r\n\ttop: 0;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n\tright: 0;\r\n\tz-index: 100;\r\n\tbackground-color: #00000040;\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tjustify-content: center;\r\n\r\n\t.dialogue-box {\r\n\t\tbackground-color: white;\r\n\t\tmin-width: 90vw;\r\n\t\tmin-height: 80vh;\r\n\t\tmax-height: 90vh;\r\n\t\toverflow-y: auto;\r\n\t\tpadding: 10px 20px 16px 20px;\r\n\t\tborder-radius: 16px;\r\n\r\n\t\t.dialogue-box-head {\r\n\t\t\tpadding: 0px 20px;\r\n\t\t\tdisplay: flex;\r\n\t\t\talign-items: center;\r\n\t\t\tjustify-content: space-between;\r\n\t\t\tborder-bottom: 1px solid gainsboro;\r\n\r\n\t\t\t.dialogue-close {\r\n\t\t\t\tfont-size: 2em;\r\n\t\t\t\tcursor: pointer;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t.dialogue-body .log {\r\n\t\t\tdisplay: flex;\r\n\t\t\tflex-direction: column;\r\n\t\t\tgap: 8px;\r\n\t\t\tpadding: 16px 8px;\r\n\t\t\tborder-bottom: 1px solid gainsboro;\r\n\r\n\t\t\t.log-text {\r\n\t\t\t\tfont-size: 1.25em;\r\n\t\t\t}\r\n\r\n\t\t\t.log-body {\r\n\t\t\t\tdisplay: flex;\r\n\t\t\t\tjustify-items: stretch;\r\n\r\n\t\t\t\t.log-previous-score {\r\n\t\t\t\t\tborder-right: 1px solid gainsboro;\r\n\t\t\t\t\tpadding: 16px 0;\r\n\t\t\t\t\tpadding-right: 16px;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t.log-current-score {\r\n\t\t\t\t\tmargin-left: 16px;\r\n\t\t\t\t\tpadding: 16px 0;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\n@media screen and (max-width: 600px) {\r\n\t.dialogue .dialogue-box {\r\n\t\twidth: 100vh;\r\n\t\theight: 100vh;\r\n\t\tborder-radius: 0px;\r\n\t}\r\n}\r\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/build/static/css/570.9b0054ab.chunk.css b/build/static/css/570.b10c7c69.chunk.css similarity index 95% rename from build/static/css/570.9b0054ab.chunk.css rename to build/static/css/570.b10c7c69.chunk.css index 4c93862..dadd6db 100644 --- a/build/static/css/570.9b0054ab.chunk.css +++ b/build/static/css/570.b10c7c69.chunk.css @@ -1,4 +1,4 @@ -.sidebar{box-shadow:0 2px 4px rgba(0,0,0,.3);display:flex;flex-direction:column;height:100dvh;width:100px;.items{flex-grow:1}.item{align-items:center;cursor:pointer;display:flex;flex-direction:column;padding:10px;.title{text-align:center}}.item:hover{background-color:#ebebeb}}@media screen and (max-width:600px){.sidebar{background-color:#fff;bottom:0;height:-webkit-min-content;height:min-content;position:fixed;width:100vw;z-index:999;.items{display:flex;.item{flex-grow:1}}}}.admin-container{display:flex;.admin-content{flex-grow:1;height:100vh;overflow-y:scroll}.floatingDialogBox{background-color:#fff;border-radius:5px;box-shadow:0 2px 4px rgba(0,0,0,.3);position:fixed;right:15px;top:15px;z-index:1000;.styledButton{align-items:center;display:flex}.user-name-text{margin-right:10px}}.floatingDialogBox>div{align-items:center;display:flex;flex-direction:column}}.usersContainer{margin:20px;.main{margin-top:5px;padding:5px}.top{background-color:color-mix(in srgb,var(--light_blue) 50%,#fff 50%);border-radius:5px;padding:10px}}.usersContainer>.top>dialog{border:2px solid var(--dark_blue);border-radius:10px;min-width:320px;width:40vw;.dropdown{font-size:14px;padding:5px 10px}}.usersContainer>.top>dialog>.styledButton{font-size:12px;padding:5px 10px;position:absolute;right:10px;top:10px}.usersContainer>.top>dialog>h3{text-align:center}.usersContainer>.top>dialog>form{align-items:center;display:flex;flex-direction:column;padding:10px}.usersContainer>.top>dialog>form label{display:block}.usersContainer>.top>dialog>form input{width:100%}.usersContainer>.top>dialog>form div{margin-bottom:15px;max-width:300px;width:100%}.usersContainer>.main>table{border-collapse:collapse;width:100%}.usersContainer>.main>table thead>tr{border-bottom:2px solid rgba(0,0,0,.5);font-weight:600}.usersContainer>.main>table tr{border-bottom:2px solid rgba(0,0,0,.2);text-transform:capitalize}.usersContainer>.main>table td{padding:4px}.usersContainer>.main>table .chipCell{padding-top:0}.usersContainer>.main>table .styledButton{font-size:12px;padding:5px 10px}@media screen and (max-width:900px){.usersContainer{margin:10px}}.chip{background-color:red;border-radius:15px;color:#fff;font-size:11px;padding:5px}.main>.liveAbleEvents{margin-top:1em}.main>.liveAbleEvents>div{-webkit-margin-after:1px;box-shadow:0 0 2px 0 #6a6a6a;margin-block-end:1px;padding:10px}.main>.liveAbleEvents>div>ul{-webkit-margin-before:.5em;-webkit-margin-after:.5em;list-style-type:upper-alpha;margin-block-end:.5em;margin-block-start:.5em}.liveEventBox.chess{--theme_color:#343434}.liveEventBox.cricket{--theme_color:#2255a4}.liveEventBox.squash{--theme_color:#e9490f}.liveEventBox.tennis{--theme_color:#9cd10b}.liveEventBox{--theme_color:#04aa6d;border:1px solid #dcdcdc;border-radius:10px;box-shadow:0 5px 10px rgba(0,57,111,.15);margin:5px;min-width:370px;padding:5px 5px 12px;scroll-snap-align:center;.VS{-webkit-margin-before:.5em;-webkit-margin-after:.5em;color:var(--theme_color);font-size:1.3rem;margin-block-end:.5em;margin-block-start:.5em}.eventCategory{align-items:center;background-color:color-mix(in srgb,var(--theme_color) 80%,#fff 20%);border-radius:5px;color:#fff;display:flex;font-size:18px;gap:3px;margin:5px;padding:2px 5px 2px 2px;width:-webkit-min-content;width:min-content}.hr{border:0;border-top:1px solid rgba(0,0,0,.1);margin-bottom:1rem;margin-top:1rem}.footballScoresContainer{align-items:center;background-color:#fff;color:#000;display:flex;justify-content:space-around;margin-bottom:10px;text-transform:uppercase}}.liveEventBox h3{font-weight:500;margin:0;text-align:center}.eventCategory>span{white-space:nowrap}.footballScoresContainer h3{display:inline}.footballScoresContainer>div{align-items:center;border-radius:5px;display:flex;flex-direction:column}.footballScoresContainer>div>p{background-color:var(--theme_color);border-bottom-left-radius:5px;border-bottom-right-radius:5px;border-top:3px groove #000;color:#fff;font-size:1.7rem;font-weight:600;margin:.5em;padding:7px}.footballScoresContainer h3,.footballScoresContainer>div>span{font-size:1.4rem} +.sidebar{box-shadow:0 2px 4px rgba(0,0,0,.3);display:flex;flex-direction:column;height:100dvh;width:100px;.items{flex-grow:1}.item{align-items:center;cursor:pointer;display:flex;flex-direction:column;padding:10px;.title{text-align:center}}.item:hover{background-color:#ebebeb}}@media screen and (max-width:600px){.sidebar{background-color:#fff;bottom:0;height:-webkit-min-content;height:min-content;position:fixed;width:100vw;z-index:999;.items{display:flex;.item{flex-grow:1}}}}.admin-container{display:flex;.admin-content{flex-grow:1;height:100vh;overflow-y:scroll}.floatingDialogBox{background-color:#fff;border-radius:5px;box-shadow:0 2px 4px rgba(0,0,0,.3);position:fixed;right:15px;top:15px;z-index:1000;.styledButton{align-items:center;display:flex}.user-name-text{margin-right:10px}}.floatingDialogBox>div{align-items:center;display:flex;flex-direction:column}}.usersContainer{margin:20px;.main{margin-top:5px;padding:5px}.top{background-color:color-mix(in srgb,var(--light_blue) 50%,#fff 50%);border-radius:5px;padding:10px}}.usersContainer>.top>dialog{border:2px solid var(--dark_blue);border-radius:10px;min-width:320px;width:40vw;.dropdown{font-size:14px;padding:5px 10px}}.usersContainer>.top>dialog>.styledButton{font-size:12px;padding:5px 10px;position:absolute;right:10px;top:10px}.usersContainer>.top>dialog>h3{text-align:center}.usersContainer>.top>dialog>form{align-items:center;display:flex;flex-direction:column;padding:10px}.usersContainer>.top>dialog>form label{display:block}.usersContainer>.top>dialog>form input{width:100%}.usersContainer>.top>dialog>form div{margin-bottom:15px;max-width:300px;width:100%}.usersContainer>.main>table{border-collapse:collapse;width:100%}.usersContainer>.main>table thead>tr{border-bottom:2px solid rgba(0,0,0,.5);font-weight:600}.usersContainer>.main>table tr{border-bottom:2px solid rgba(0,0,0,.2);text-transform:capitalize}.usersContainer>.main>table td{padding:4px}.usersContainer>.main>table .chipCell{padding-top:0}.usersContainer>.main>table .styledButton{font-size:12px;padding:5px 10px}@media screen and (max-width:900px){.usersContainer{margin:10px;padding-bottom:20vh}}.chip{background-color:red;border-radius:15px;color:#fff;font-size:11px;padding:5px}.main>.liveAbleEvents{margin-top:1em}.main>.liveAbleEvents>div{-webkit-margin-after:1px;box-shadow:0 0 2px 0 #6a6a6a;margin-block-end:1px;padding:10px}.main>.liveAbleEvents>div>ul{-webkit-margin-before:.5em;-webkit-margin-after:.5em;list-style-type:upper-alpha;margin-block-end:.5em;margin-block-start:.5em}.liveEventBox.chess{--theme_color:#343434}.liveEventBox.cricket{--theme_color:#2255a4}.liveEventBox.squash{--theme_color:#e9490f}.liveEventBox.tennis{--theme_color:#9cd10b}.liveEventBox{--theme_color:#04aa6d;border:1px solid #dcdcdc;border-radius:10px;box-shadow:0 5px 10px rgba(0,57,111,.15);margin:5px;min-width:370px;padding:5px 5px 12px;scroll-snap-align:center;.VS{-webkit-margin-before:.5em;-webkit-margin-after:.5em;color:var(--theme_color);font-size:1.3rem;margin-block-end:.5em;margin-block-start:.5em}.eventCategory{align-items:center;background-color:color-mix(in srgb,var(--theme_color) 80%,#fff 20%);border-radius:5px;color:#fff;display:flex;font-size:18px;gap:3px;margin:5px;padding:2px 5px 2px 2px;width:-webkit-min-content;width:min-content}.hr{border:0;border-top:1px solid rgba(0,0,0,.1);margin-bottom:1rem;margin-top:1rem}.footballScoresContainer{align-items:center;background-color:#fff;color:#000;display:flex;justify-content:space-around;margin-bottom:10px;text-transform:uppercase}}.liveEventBox h3{font-weight:500;margin:0;text-align:center}.eventCategory>span{white-space:nowrap}.footballScoresContainer h3{display:inline}.footballScoresContainer>div{align-items:center;border-radius:5px;display:flex;flex-direction:column}.footballScoresContainer>div>p{background-color:var(--theme_color);border-bottom-left-radius:5px;border-bottom-right-radius:5px;border-top:3px groove #000;color:#fff;font-size:1.7rem;font-weight:600;margin:.5em;padding:7px}.footballScoresContainer h3,.footballScoresContainer>div>span{font-size:1.4rem} /*! * Copyright (c) HANDSONCODE sp. z o. o. @@ -46,4 +46,4 @@ /*! * Handsontable HiddenRows */.handsontable th.afterHiddenRow:after,.handsontable th.beforeHiddenRow:before{color:#bbb;font-size:6pt;left:2px;line-height:6pt;position:absolute}.handsontable th.afterHiddenRow,.handsontable th.beforeHiddenRow{position:relative}.handsontable th.beforeHiddenRow:before{bottom:2px;content:"▲"}.handsontable th.afterHiddenRow:after{content:"▼";top:2px}.handsontable.ht__selection--rows tbody th.afterHiddenRow.ht__highlight:after,.handsontable.ht__selection--rows tbody th.beforeHiddenRow.ht__highlight:before{color:#eee}.handsontable td.afterHiddenRow.firstVisibleRow,.handsontable th.afterHiddenRow.firstVisibleRow{border-top:1px solid #ccc}.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_inline_start td:first-of-type,.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_top_inline_start_corner th:nth-child(2){border-left:0}.handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight{cursor:move;cursor:grab}.handsontable.ht__manualColumnMove.on-moving--columns,.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight{cursor:move;cursor:grabbing}.handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer{display:none}.handsontable .ht__manualColumnMove--backlight,.handsontable .ht__manualColumnMove--guideline{display:none;height:100%;position:absolute}.handsontable .ht__manualColumnMove--guideline{-webkit-margin-end:0;-webkit-margin-start:-1px;background:#757575;margin-inline-end:0;margin-inline-start:-1px;top:0;width:2px;z-index:205}.handsontable .ht__manualColumnMove--backlight{background:#343434;background:rgba(52,52,52,.25);display:none;pointer-events:none;z-index:205}.handsontable.on-moving--columns .ht__manualColumnMove--backlight,.handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline{display:block}.handsontable .wtHider{position:relative}.handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight{cursor:move;cursor:grab}.handsontable.ht__manualRowMove.on-moving--rows,.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight{cursor:move;cursor:grabbing}.handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer{display:none}.handsontable .ht__manualRowMove--backlight,.handsontable .ht__manualRowMove--guideline{display:none;position:absolute;width:100%}.handsontable .ht__manualRowMove--guideline{background:#757575;height:2px;left:0;margin-top:-1px;z-index:205}.handsontable .ht__manualRowMove--backlight{background:#343434;background:rgba(52,52,52,.25);display:none;pointer-events:none;z-index:205}.handsontable.on-moving--rows .ht__manualRowMove--backlight,.handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline{display:block}.handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell]):before{opacity:0}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before,.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before{opacity:.2}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before{opacity:.27}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before{opacity:.35}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before{opacity:.41}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before{opacity:.47}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before{opacity:.54}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before{opacity:.58}.handsontable span.colHeader.columnSorting:after{font-size:8px;height:8px;left:auto;line-height:1.1;margin-top:-2px;padding-left:5px;padding-right:0;position:absolute;right:-15px;text-decoration:underline;top:50%}[dir=rtl].handsontable span.colHeader.columnSorting:after{left:-15px;padding-left:0;padding-right:5px;right:auto}.handsontable span.colHeader.columnSorting:after{text-decoration:none}.handsontable span.colHeader.columnSorting[class*=" sort-"]:after,.handsontable span.colHeader.columnSorting[class^=sort-]:after{content:"+"}.handsontable span.colHeader.columnSorting.sort-1:after{content:"1"}.handsontable span.colHeader.columnSorting.sort-2:after{content:"2"}.handsontable span.colHeader.columnSorting.sort-3:after{content:"3"}.handsontable span.colHeader.columnSorting.sort-4:after{content:"4"}.handsontable span.colHeader.columnSorting.sort-5:after{content:"5"}.handsontable span.colHeader.columnSorting.sort-6:after{content:"6"}.handsontable span.colHeader.columnSorting.sort-7:after{content:"7"}.htGhostTable th div button.changeType+span.colHeader.columnSorting:not(.indicatorDisabled){padding-right:5px}.handsontable thead th.hiddenHeader:not(:first-of-type){display:none}.handsontable th.ht_nestingLevels{padding-left:7px;text-align:left}[dir=rtl].handsontable th.ht_nestingLevels{padding-right:7px;text-align:right}.handsontable th div.ht_nestingLevels{display:inline-block;left:11px;position:absolute;right:auto}[dir=rtl].handsontable th div.ht_nestingLevels{left:auto;right:11px}.handsontable.innerBorderInlineStart th div.ht_nestingLevels,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{left:auto;right:10px}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingLevels,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{left:10px;right:auto}.handsontable th span.ht_nestingLevel{display:inline-block}.handsontable th span.ht_nestingLevel_empty{display:inline-block;float:left;height:1px;width:10px}[dir=rtl].handsontable th span.ht_nestingLevel_empty{float:right}.handsontable th span.ht_nestingLevel:after{bottom:3px;content:"┐";display:inline-block;font-size:9px;position:relative}.handsontable th div.ht_nestingButton{cursor:pointer;display:inline-block;left:auto;position:absolute;right:-2px}[dir=rtl].handsontable th div.ht_nestingButton{left:-2px;right:auto}.handsontable th div.ht_nestingButton.ht_nestingExpand:after{content:"+"}.handsontable th div.ht_nestingButton.ht_nestingCollapse:after{content:"-"}.handsontable.innerBorderInlineStart th div.ht_nestingButton,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{left:auto;right:0}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingButton,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{left:0;right:auto}.tableContainer::-webkit-scrollbar{display:none}.tableContainer{-ms-overflow-style:none;scrollbar-width:none}@media screen and (max-width:900px){.tableContainer{margin:0 -10px}}.log-item{border-bottom:1px solid #dcdcdc;cursor:pointer;padding:20px 0}.dialogue{align-items:center;background-color:#00000040;bottom:0;display:flex;height:100vh;justify-content:center;left:0;position:fixed;right:0;top:0;width:100vw;z-index:100;.dialogue-box{background-color:#fff;border-radius:16px;max-height:90vh;min-height:80vh;min-width:90vw;overflow-y:auto;padding:10px 20px 16px;.dialogue-box-head{align-items:center;border-bottom:1px solid #dcdcdc;display:flex;justify-content:space-between;padding:0 20px;.dialogue-close{cursor:pointer;font-size:2em}}.dialogue-body .log{border-bottom:1px solid #dcdcdc;display:flex;flex-direction:column;gap:8px;padding:16px 8px;.log-text{font-size:1.25em}.log-body{display:flex;justify-items:stretch;.log-previous-score{border-right:1px solid #dcdcdc;padding:16px 16px 16px 0}.log-current-score{margin-left:16px;padding:16px 0}}}}}@media screen and (max-width:600px){.dialogue .dialogue-box{border-radius:0;height:100vh;width:100vh}} -/*# sourceMappingURL=570.9b0054ab.chunk.css.map*/ \ No newline at end of file +/*# sourceMappingURL=570.b10c7c69.chunk.css.map*/ \ No newline at end of file diff --git a/build/static/css/570.b10c7c69.chunk.css.map b/build/static/css/570.b10c7c69.chunk.css.map new file mode 100644 index 0000000..5b15f7f --- /dev/null +++ b/build/static/css/570.b10c7c69.chunk.css.map @@ -0,0 +1 @@ +{"version":3,"file":"static/css/570.b10c7c69.chunk.css","mappings":"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","sources":["components/Sidebar.css","Screens/Admin/AdminDashboard.css","Screens/Admin/Users.css","components/UserRoleChip.css","Screens/Admin/EditScores.css","components/LiveEventBoxes/LiveEventBox.css","../node_modules/handsontable/dist/handsontable.full.min.css","Screens/Admin/ScheduleEditor.css","components/LogItem.css"],"sourcesContent":[".sidebar {\r\n\theight: 100dvh;\r\n\twidth: 100px;\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\tbox-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\r\n\r\n\t.items {\r\n\t\tflex-grow: 1;\r\n\t}\r\n\r\n\t.item {\r\n\t\tcursor: pointer;\r\n\t\tpadding: 10px;\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\r\n\t\t.title {\r\n\t\t\ttext-align: center;\r\n\t\t}\r\n\t}\r\n\t.item:hover {\r\n\t\tbackground-color: #ebebeb;\r\n\t}\r\n}\r\n\r\n@media screen and (max-width: 600px) {\r\n\t.sidebar {\r\n\t\tposition: fixed;\r\n\t\tbottom: 0;\r\n\t\tz-index: 999;\r\n\t\tbackground-color: white;\r\n\t\theight: min-content;\r\n\t\twidth: 100vw;\r\n\r\n\t\t.items {\r\n\t\t\tdisplay: flex;\r\n\r\n\t\t\t.item {\r\n\t\t\t\tflex-grow: 1;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n",".admin-container {\r\n\tdisplay: flex;\r\n\r\n\t.admin-content {\r\n\t\tflex-grow: 1;\r\n\t\theight: 100vh;\r\n\t\toverflow-y: scroll;\r\n\t}\r\n\t.floatingDialogBox {\r\n\t\tz-index: 1000;\r\n\t\tposition: fixed;\r\n\t\tright: 15px;\r\n\t\ttop: 15px;\r\n\t\tbackground-color: white;\r\n\t\tbox-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);\r\n\t\tborder-radius: 5px;\r\n\r\n\t\t.styledButton {\r\n\t\t\tdisplay: flex;\r\n\t\t\talign-items: center;\r\n\t\t}\r\n\r\n\t\t.user-name-text {\r\n\t\t\tmargin-right: 10px;\r\n\t\t}\r\n\t}\r\n\t.floatingDialogBox > div {\r\n\t\tdisplay: flex;\r\n\t\tflex-direction: column;\r\n\t\talign-items: center;\r\n\t}\r\n}\r\n",".usersContainer {\r\n\tmargin: 20px;\r\n\r\n\t.main {\r\n\t\tpadding: 5px;\r\n\t\tmargin-top: 5px;\r\n\t}\r\n\r\n\t.top {\r\n\t\tborder-radius: 5px;\r\n\t\tbackground-color: color-mix(in srgb, var(--light_blue) 50%, white 50%);\r\n\t\tpadding: 10px;\r\n\t}\r\n}\r\n\r\n.usersContainer > .top > dialog {\r\n\twidth: 40vw;\r\n\tmin-width: 320px;\r\n\tborder-radius: 10px;\r\n\tborder: 2px solid var(--dark_blue);\r\n\r\n\t.dropdown {\r\n\t\tfont-size: 14px;\r\n\t\tpadding: 5px 10px;\r\n\t}\r\n}\r\n.usersContainer > .top > dialog > .styledButton {\r\n\tposition: absolute;\r\n\ttop: 10px;\r\n\tright: 10px;\r\n\tpadding: 5px 10px;\r\n\tfont-size: 12px;\r\n}\r\n.usersContainer > .top > dialog > h3 {\r\n\ttext-align: center;\r\n}\r\n.usersContainer > .top > dialog > form {\r\n\tdisplay: flex;\r\n\tflex-direction: column;\r\n\talign-items: center;\r\n\tpadding: 10px;\r\n}\r\n.usersContainer > .top > dialog > form label {\r\n\tdisplay: block;\r\n}\r\n.usersContainer > .top > dialog > form input {\r\n\twidth: 100%;\r\n}\r\n.usersContainer > .top > dialog > form div {\r\n\tmargin-bottom: 15px;\r\n\twidth: 100%;\r\n\tmax-width: 300px;\r\n}\r\n\r\n.usersContainer > .main > table {\r\n\tborder-collapse: collapse;\r\n\twidth: 100%;\r\n}\r\n.usersContainer > .main > table thead > tr {\r\n\tborder-bottom: 2px solid rgba(0, 0, 0, 0.5);\r\n\r\n\tfont-weight: 600;\r\n}\r\n.usersContainer > .main > table tr {\r\n\ttext-transform: capitalize;\r\n\tborder-bottom: 2px solid rgba(0, 0, 0, 0.2);\r\n}\r\n.usersContainer > .main > table td {\r\n\tpadding: 4px;\r\n}\r\n.usersContainer > .main > table .chipCell {\r\n\tpadding-top: 0px;\r\n}\r\n.usersContainer > .main > table .styledButton {\r\n\tfont-size: 12px;\r\n\tpadding: 5px 10px;\r\n}\r\n\r\n@media screen and (max-width: 900px) {\r\n\t.usersContainer {\r\n\t\tmargin: 10px;\r\n\t\tpadding-bottom: 20vh;\r\n\t}\r\n}\r\n",".chip {\r\n\tfont-size: 11px;\r\n\tcolor: white;\r\n\tpadding: 5px;\r\n\tborder-radius: 15px;\r\n\tbackground-color: red;\r\n}\r\n",".main > .liveAbleEvents {\r\n\tmargin-top: 1em;\r\n}\r\n.main > .liveAbleEvents > div {\r\n\tpadding: 10px;\r\n\tbox-shadow: 0 0 2px 0 rgb(106, 106, 106);\r\n\tmargin-block-end: 1px;\r\n}\r\n.main > .liveAbleEvents > div > ul {\r\n\tmargin-block-start: 0.5em;\r\n\tmargin-block-end: 0.5em;\r\n\tlist-style-type: upper-alpha;\r\n}\r\n",".liveEventBox.chess {\r\n\t--theme_color: rgb(52, 52, 52);\r\n}\r\n.liveEventBox.cricket {\r\n\t--theme_color: #2255a4;\r\n}\r\n.liveEventBox.squash {\r\n\t--theme_color: rgb(233, 73, 15);\r\n}\r\n.liveEventBox.tennis {\r\n\t--theme_color: #9cd10b;\r\n}\r\n.liveEventBox {\r\n\tmargin: 5px;\r\n\tpadding: 5px;\r\n\tmin-width: 370px;\r\n\t--theme_color: #04aa6d;\r\n\tborder-radius: 10px;\r\n\tscroll-snap-align: center;\r\n\tbox-shadow: 0 5px 10px rgba(0, 57, 111, 0.15);\r\n\tpadding-bottom: 12px;\r\n\tborder: 1px solid gainsboro;\r\n\r\n\t.VS {\r\n\t\tfont-size: 1.3rem;\r\n\t\tcolor: var(--theme_color);\r\n\t\tmargin-block-start: 0.5em;\r\n\t\tmargin-block-end: 0.5em;\r\n\t}\r\n\r\n\t.eventCategory {\r\n\t\tbackground-color: color-mix(in srgb, var(--theme_color) 80%, white 20%);\r\n\t\tcolor: white;\r\n\t\tfont-size: 18px;\r\n\t\tmargin: 5px;\r\n\t\tpadding: 2px;\r\n\t\tpadding-right: 5px;\r\n\t\tborder-radius: 5px;\r\n\t\tdisplay: flex;\r\n\t\twidth: min-content;\r\n\t\talign-items: center;\r\n\t\tgap: 3px;\r\n\t}\r\n\t.hr {\r\n\t\tmargin-top: 1rem;\r\n\t\tmargin-bottom: 1rem;\r\n\t\tborder: 0;\r\n\t\tborder-top: 1px solid rgba(0, 0, 0, 0.1);\r\n\t}\r\n\t.footballScoresContainer {\r\n\t\ttext-transform: uppercase;\r\n\t\tdisplay: flex;\r\n\t\tjustify-content: space-around;\r\n\t\talign-items: center;\r\n\t\tbackground-color: white;\r\n\t\tcolor: black;\r\n\t\tmargin-bottom: 10px;\r\n\t}\r\n}\r\n\r\n.liveEventBox h3 {\r\n\tmargin: 0px;\r\n\tfont-weight: 500;\r\n\ttext-align: center;\r\n}\r\n.eventCategory > span {\r\n\twhite-space: nowrap;\r\n}\r\n.footballScoresContainer h3 {\r\n\tdisplay: inline;\r\n}\r\n.footballScoresContainer > div {\r\n\tdisplay: flex;\r\n\tborder-radius: 5px;\r\n\tflex-direction: column;\r\n\talign-items: center;\r\n}\r\n.footballScoresContainer > div > p {\r\n\tmargin: 0.5em;\r\n\tpadding: 7px;\r\n\tborder-top: groove black 3px;\r\n\tborder-bottom-left-radius: 5px;\r\n\tborder-bottom-right-radius: 5px;\r\n\tfont-size: 1.7rem;\r\n\tfont-weight: 600;\r\n\tbackground-color: var(--theme_color);\r\n\tcolor: white;\r\n}\r\n\r\n.footballScoresContainer h3 {\r\n\tfont-size: 1.4rem;\r\n}\r\n\r\n.footballScoresContainer > div > span {\r\n\tfont-size: 1.4rem;\r\n}\r\n","/*!\n * Copyright (c) HANDSONCODE sp. z o. o.\n *\n * HANDSONTABLE is a software distributed by HANDSONCODE sp. z o. o., a Polish corporation based in\n * Gdynia, Poland, at Aleja Zwyciestwa 96-98, registered by the District Court in Gdansk under number\n * 538651, EU tax ID number: PL5862294002, share capital: PLN 62,800.00.\n *\n * This software is protected by applicable copyright laws, including international treaties, and dual-\n * licensed - depending on whether your use for commercial purposes, meaning intended for or\n * resulting in commercial advantage or monetary compensation, or not.\n *\n * If your use is strictly personal or solely for evaluation purposes, meaning for the purposes of testing\n * the suitability, performance, and usefulness of this software outside the production environment,\n * you agree to be bound by the terms included in the \"handsontable-non-commercial-license.pdf\" file.\n *\n * Your use of this software for commercial purposes is subject to the terms included in an applicable\n * license agreement.\n *\n * In any case, you must not make any such use of this software as to develop software which may be\n * considered competitive with this software.\n *\n * UNLESS EXPRESSLY AGREED OTHERWISE, HANDSONCODE PROVIDES THIS SOFTWARE ON AN \"AS IS\"\n * BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, AND IN NO EVENT AND UNDER NO\n * LEGAL THEORY, SHALL HANDSONCODE BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY DIRECT,\n * INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM\n * USE OR INABILITY TO USE THIS SOFTWARE.\n *\n * Version: 13.1.0\n * Release date: 31/08/2023 (built at 31/08/2023 08:24:01)\n */.handsontable .table td,.handsontable .table th{border-top:none}.handsontable tr{background:#fff}.handsontable td{background-color:inherit}.handsontable .table caption+thead tr:first-child td,.handsontable .table caption+thead tr:first-child th,.handsontable .table colgroup+thead tr:first-child td,.handsontable .table colgroup+thead tr:first-child th,.handsontable .table thead:first-child tr:first-child td,.handsontable .table thead:first-child tr:first-child th{border-top:1px solid #ccc}.handsontable .table-bordered{border:0;border-collapse:separate}.handsontable .table-bordered td,.handsontable .table-bordered th{border-left:none}.handsontable .table-bordered td:first-child,.handsontable .table-bordered th:first-child{border-left:1px solid #ccc}.handsontable .table>tbody>tr>td,.handsontable .table>tbody>tr>th,.handsontable .table>tfoot>tr>td,.handsontable .table>tfoot>tr>th,.handsontable .table>thead>tr>td,.handsontable .table>thead>tr>th{line-height:21px;padding:0}.col-lg-1.handsontable,.col-lg-10.handsontable,.col-lg-11.handsontable,.col-lg-12.handsontable,.col-lg-2.handsontable,.col-lg-3.handsontable,.col-lg-4.handsontable,.col-lg-5.handsontable,.col-lg-6.handsontable,.col-lg-7.handsontable,.col-lg-8.handsontable,.col-lg-9.handsontable,.col-md-1.handsontable,.col-md-10.handsontable,.col-md-11.handsontable,.col-md-12.handsontable,.col-md-2.handsontable,.col-md-3.handsontable,.col-md-4.handsontable,.col-md-5.handsontable,.col-md-6.handsontable,.col-md-7.handsontable,.col-md-8.handsontable,.col-md-9.handsontable .col-sm-1.handsontable,.col-sm-10.handsontable,.col-sm-11.handsontable,.col-sm-12.handsontable,.col-sm-2.handsontable,.col-sm-3.handsontable,.col-sm-4.handsontable,.col-sm-5.handsontable,.col-sm-6.handsontable,.col-sm-7.handsontable,.col-sm-8.handsontable,.col-sm-9.handsontable .col-xs-1.handsontable,.col-xs-10.handsontable,.col-xs-11.handsontable,.col-xs-12.handsontable,.col-xs-2.handsontable,.col-xs-3.handsontable,.col-xs-4.handsontable,.col-xs-5.handsontable,.col-xs-6.handsontable,.col-xs-7.handsontable,.col-xs-8.handsontable,.col-xs-9.handsontable{padding-left:0;padding-right:0}.handsontable .table-striped>tbody>tr:nth-of-type(2n){background-color:#fff}.handsontable{position:relative}.handsontable .hide{display:none}.handsontable .relative{position:relative}.handsontable .wtHider{width:0}.handsontable .wtSpreader{height:auto;position:relative;width:0}.handsontable div,.handsontable input,.handsontable table,.handsontable tbody,.handsontable td,.handsontable textarea,.handsontable th,.handsontable thead{box-sizing:content-box;-webkit-box-sizing:content-box;-moz-box-sizing:content-box}.handsontable input,.handsontable textarea{min-height:auto}.handsontable table.htCore{border-collapse:separate;border-spacing:0;border-width:0;cursor:default;margin:0;max-height:none;max-width:none;outline-width:0;table-layout:fixed;width:0}.handsontable col,.handsontable col.rowHeader{width:50px}.handsontable td,.handsontable th{background-color:#fff;border-bottom:1px solid #ccc;border-left-width:0;border-right:1px solid #ccc;border-top-width:0;empty-cells:show;height:22px;line-height:21px;outline-width:0;overflow:hidden;padding:0 4px;vertical-align:top;white-space:pre-wrap}[dir=rtl].handsontable td,[dir=rtl].handsontable th{border-left:1px solid #ccc;border-right-width:0}.handsontable th:last-child{border-bottom:1px solid #ccc;border-left:none;border-right:1px solid #ccc}[dir=rtl].handsontable th:last-child{border-left:1px solid #ccc;border-right:none}.handsontable td:first-of-type,.handsontable th:first-child,.handsontable th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable td:first-of-type,[dir=rtl].handsontable th:first-child,[dir=rtl].handsontable th:nth-child(2){border-right:1px solid #ccc}.handsontable .ht_clone_top th:nth-child(2){border-left-width:0;border-right:1px solid #ccc}[dir=rtl].handsontable .ht_clone_top th:nth-child(2){border-left:1px solid #ccc;border-right-width:0}.handsontable.htRowHeaders thead tr th:nth-child(2){border-left:1px solid #ccc}[dir=rtl].handsontable.htRowHeaders thead tr th:nth-child(2){border-right:1px solid #ccc}.handsontable tr:first-child td,.handsontable tr:first-child th{border-top:1px solid #ccc}.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable tbody tr th,.ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top) thead tr th:first-child{border-left:1px solid #ccc;border-right-width:0}[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable tbody tr th,[dir=rtl].ht_master:not(.innerBorderInlineStart):not(.emptyColumns)~.handsontable:not(.ht_clone_top) thead tr th:first-child{border-left-width:0;border-right:1px solid #ccc}.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom) thead tr:last-child th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr.lastChild th,.ht_master:not(.innerBorderTop):not(.innerBorderBottom)~.handsontable thead tr:last-child th{border-bottom-width:0}.handsontable th{background-color:#f0f0f0;color:#222;font-weight:400;text-align:center;white-space:nowrap}.handsontable thead th{padding:0}.handsontable th.active{background-color:#ccc}.handsontable thead th .relative{padding:2px 4px}.handsontable span.colHeader{display:inline-block;line-height:1.1}.handsontable .wtBorder{font-size:0;position:absolute}.handsontable .wtBorder.hidden{display:none!important}.handsontable .wtBorder.current{z-index:10}.handsontable .wtBorder.area{z-index:8}.handsontable .wtBorder.fill{z-index:6}.handsontable .wtBorder.corner{cursor:crosshair;font-size:0}.ht_clone_master{z-index:100}.ht_clone_inline_start{z-index:120}.ht_clone_bottom{z-index:130}.ht_clone_bottom_inline_start_corner{z-index:150}.ht_clone_top{z-index:160}.ht_clone_top_inline_start_corner{z-index:180}.handsontable col.hidden{width:0!important}.handsontable tr.hidden,.handsontable tr.hidden td,.handsontable tr.hidden th{display:none}.ht_clone_bottom,.ht_clone_inline_start,.ht_clone_top,.ht_master{overflow:hidden}.ht_master .wtHolder{overflow:auto}.handsontable .ht_clone_inline_start thead,.handsontable .ht_master thead,.handsontable .ht_master tr th{visibility:hidden}.ht_clone_bottom .wtHolder,.ht_clone_inline_start .wtHolder,.ht_clone_top .wtHolder{overflow:hidden}.handsontable{color:#373737;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:13px;font-weight:400;touch-action:manipulation}.handsontable a{color:#104acc}.handsontable.htAutoSize{left:-99000px;position:absolute;top:-99000px;visibility:hidden}.handsontable td.htInvalid{background-color:#ff4c42!important}.handsontable td.htNoWrap{white-space:nowrap}.hot-display-license-info{color:#373737;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Helvetica Neue,Arial,sans-serif;font-size:10px;font-weight:400;padding:5px 0 3px;text-align:left}.hot-display-license-info a{color:#104acc;font-size:10px}.handsontable .manualColumnResizer{cursor:col-resize;height:25px;position:absolute;top:0;width:5px;z-index:210}.handsontable .manualRowResizer{cursor:row-resize;height:5px;left:0;position:absolute;width:50px;z-index:210}.handsontable .manualColumnResizer.active,.handsontable .manualColumnResizer:hover,.handsontable .manualRowResizer.active,.handsontable .manualRowResizer:hover{background-color:#34a9db}.handsontable .manualColumnResizerGuide{background-color:#34a9db;border-left:none;border-right:1px dashed #777;display:none;margin-left:5px;margin-right:unset;position:absolute;right:unset;top:0;width:0}[dir=rtl].handsontable .manualColumnResizerGuide{border-left:1px dashed #777;border-right:none;left:unset;margin-left:unset;margin-right:5px}.handsontable .manualRowResizerGuide{background-color:#34a9db;border-bottom:1px dashed #777;bottom:0;display:none;height:0;left:0;margin-top:5px;position:absolute}.handsontable .manualColumnResizerGuide.active,.handsontable .manualRowResizerGuide.active{display:block;z-index:209}.handsontable .columnSorting{position:relative}.handsontable .columnSorting.sortAction:hover{cursor:pointer;text-decoration:underline}.handsontable span.colHeader.columnSorting:before{background-position-x:right;background-repeat:no-repeat;background-size:contain;content:\"\";height:10px;left:unset;margin-top:-6px;padding-left:8px;padding-right:0;position:absolute;right:-9px;top:50%;width:5px}[dir=rtl].handsontable span.colHeader.columnSorting:before{background-position-x:left;left:-9px;padding-left:0;padding-right:8px;right:unset}.handsontable span.colHeader.columnSorting.ascending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFNJREFUeAHtzjkSgCAUBNHPgsoy97+ulGXRqJE5L+xkxoYt2UdsLb5bqFINz+aLuuLn5rIu2RkO3fZpWENimNgiw6iBYRTPMLJjGFxQZ1hxxb/xBI1qC8k39CdKAAAAAElFTkSuQmCC)}.handsontable span.colHeader.columnSorting.descending:before{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAoCAMAAADJ7yrpAAAAKlBMVEUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKE86IAAAADXRSTlMABBEmRGprlJW72e77tTkTKwAAAFJJREFUeAHtzjkSgCAQRNFmQYUZ7n9dKUvru0TmvPAn3br0QfgdZ5xx6x+rQn23GqTYnq1FDcnuzZIO2WmedVqIRVxgGKEyjNgYRjKGkZ1hFIZ3I70LyM0VtU8AAAAASUVORK5CYII=)}.htGhostTable .htCore span.colHeader.columnSorting:not(.indicatorDisabled):after{content:\"*\";display:inline-block;padding-right:20px;position:relative}.handsontable td.area,.handsontable td.area-1,.handsontable td.area-2,.handsontable td.area-3,.handsontable td.area-4,.handsontable td.area-5,.handsontable td.area-6,.handsontable td.area-7{position:relative}.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before,.handsontable td.area:before{background:#005eff;bottom:0;bottom:-100%\\9;content:\"\";left:0;position:absolute;right:0;top:0}@media (-ms-high-contrast:none),screen and (-ms-high-contrast:active){.handsontable td.area-1:before,.handsontable td.area-2:before,.handsontable td.area-3:before,.handsontable td.area-4:before,.handsontable td.area-5:before,.handsontable td.area-6:before,.handsontable td.area-7:before,.handsontable td.area:before{bottom:-100%}}.handsontable td.area:before{opacity:.1}.handsontable td.area-1:before{opacity:.2}.handsontable td.area-2:before{opacity:.27}.handsontable td.area-3:before{opacity:.35}.handsontable td.area-4:before{opacity:.41}.handsontable td.area-5:before{opacity:.47}.handsontable td.area-6:before{opacity:.54}.handsontable td.area-7:before{opacity:.58}.handsontable tbody th.ht__highlight,.handsontable thead th.ht__highlight{background-color:#dcdcdc}.handsontable tbody th.ht__active_highlight,.handsontable thead th.ht__active_highlight{background-color:#8eb0e7;color:#000}.handsontableInput{background-color:#fff;border:none;border-radius:0;box-shadow:inset 0 0 0 2px #5292f7;color:#000;display:block;font-family:inherit;font-size:inherit;line-height:21px;margin:0;outline-width:0;padding:1px 5px 0;resize:none}.handsontableInput:focus{outline:none}.handsontableInputHolder{left:0;position:absolute;top:0}.htSelectEditor{-webkit-appearance:menulist-button!important;position:absolute;width:auto}.htSelectEditor:focus{outline:none}.handsontable .htDimmed{color:#777}.handsontable .htSubmenu{position:relative}.handsontable .htSubmenu :after{color:#777;content:\"▶\";font-size:9px;position:absolute;right:5px}[dir=rtl].handsontable .htSubmenu :after{content:\"\"}[dir=rtl].handsontable .htSubmenu :before{color:#777;content:\"◀\";font-size:9px;left:5px;position:absolute}.handsontable .htLeft{text-align:left}.handsontable .htCenter{text-align:center}.handsontable .htRight{text-align:right}.handsontable .htJustify{text-align:justify}.handsontable .htTop{vertical-align:top}.handsontable .htMiddle{vertical-align:middle}.handsontable .htBottom{vertical-align:bottom}.handsontable .htPlaceholder{color:#999}.handsontable.listbox{margin:0}.handsontable.listbox .ht_master table{background:#fff;border:1px solid #ccc;border-collapse:separate}.handsontable.listbox td,.handsontable.listbox th,.handsontable.listbox tr:first-child td,.handsontable.listbox tr:first-child th,.handsontable.listbox tr:last-child th{border-color:transparent!important}.handsontable.listbox td,.handsontable.listbox th{text-overflow:ellipsis;white-space:nowrap}.handsontable.listbox td.htDimmed{color:inherit;cursor:default;font-style:inherit}.handsontable.listbox .wtBorder{visibility:hidden}.handsontable.listbox tr td.current,.handsontable.listbox tr:hover td{background:#eee}.ht_editor_hidden{z-index:-1}.ht_editor_visible{z-index:200}.handsontable td.htSearchResult{background:#fcedd9;color:#583707}.handsontable .collapsibleIndicator{background:#eee;border:1px solid #a6a6a6;border-radius:10px;-webkit-box-shadow:0 0 0 6px #eee;-moz-box-shadow:0 0 0 6px #eee;box-shadow:0 0 0 6px #eee;color:#222;cursor:pointer;font-size:10px;height:10px;left:unset;line-height:8px;position:absolute;right:5px;text-align:center;top:50%;transform:translateY(-50%);width:10px}[dir=rtl].handsontable .collapsibleIndicator{left:5px;right:unset}.handsontable.mobile,.handsontable.mobile .wtHolder{-webkit-touch-callout:none;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-overflow-scrolling:touch;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.handsontable.mobile .handsontableInput:focus{-webkit-appearance:none;-webkit-box-shadow:inset 0 0 0 2px #5292f7;-moz-box-shadow:inset 0 0 0 2px #5292f7;box-shadow:inset 0 0 0 2px #5292f7}.handsontable .bottomSelectionHandle,.handsontable .bottomSelectionHandle-HitArea,.handsontable .topSelectionHandle,.handsontable .topSelectionHandle-HitArea{left:-10000px;right:unset;top:-10000px;z-index:9999}[dir=rtl].handsontable .bottomSelectionHandle,[dir=rtl].handsontable .bottomSelectionHandle-HitArea,[dir=rtl].handsontable .topSelectionHandle,[dir=rtl].handsontable .topSelectionHandle-HitArea{left:unset;right:-10000px}.handsontable.hide-tween{-webkit-animation:opacity-hide .3s;animation:opacity-hide .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}.handsontable.show-tween{-webkit-animation:opacity-show .3s;animation:opacity-show .3s;animation-fill-mode:forwards;-webkit-animation-fill-mode:forwards}\n/*!\n * Pikaday\n * Copyright © 2014 David Bushell | BSD & MIT license | https://dbushell.com/\n */.pika-single{background:#fff;border:1px solid;border-color:#ccc #ccc #bbb;color:#333;display:block;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;position:relative;z-index:9999}.pika-single:after,.pika-single:before{content:\" \";display:table}.pika-single:after{clear:both}.pika-single.is-hidden{display:none}.pika-single.is-bound{box-shadow:0 5px 15px -5px rgba(0,0,0,.5);position:absolute}.pika-lendar{float:left;margin:8px;width:240px}.pika-title{position:relative;text-align:center}.pika-label{background-color:#fff;display:inline-block;font-size:14px;font-weight:700;line-height:20px;margin:0;overflow:hidden;padding:5px 3px;position:relative;z-index:9999}.pika-title select{cursor:pointer;left:0;margin:0;opacity:0;position:absolute;top:5px;z-index:9998}.pika-next,.pika-prev{background-color:transparent;background-position:50%;background-repeat:no-repeat;background-size:75% 75%;border:0;cursor:pointer;display:block;height:30px;opacity:.5;outline:none;overflow:hidden;padding:0;position:relative;text-indent:20px;white-space:nowrap;width:20px}.pika-next:hover,.pika-prev:hover{opacity:1}.is-rtl .pika-next,.pika-prev{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==);float:left}.is-rtl .pika-prev,.pika-next{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=);float:right}.pika-next.is-disabled,.pika-prev.is-disabled{cursor:default;opacity:.2}.pika-select{display:inline-block}.pika-table{border:0;border-collapse:collapse;border-spacing:0;width:100%}.pika-table td,.pika-table th{padding:0;width:14.2857142857%}.pika-table th{color:#999;font-size:12px;font-weight:700;line-height:25px;text-align:center}.pika-button{background:#f5f5f5;border:0;box-sizing:border-box;-moz-box-sizing:border-box;color:#666;cursor:pointer;display:block;font-size:12px;height:auto;line-height:15px;margin:0;outline:none;padding:5px;text-align:right;width:100%}.pika-week{color:#999;font-size:11px}.is-today .pika-button{color:#3af;font-weight:700}.has-event .pika-button,.is-selected .pika-button{background:#3af;border-radius:3px;box-shadow:inset 0 1px 3px #178fe5;color:#fff;font-weight:700}.has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.is-disabled .pika-button,.is-inrange .pika-button{background:#d5e9f7}.is-startrange .pika-button{background:#6cb31d;border-radius:3px;box-shadow:none;color:#fff}.is-endrange .pika-button{background:#3af;border-radius:3px;box-shadow:none;color:#fff}.is-disabled .pika-button{color:#999;cursor:default;opacity:.3;pointer-events:none}.is-outside-current-month .pika-button{color:#999;opacity:.3}.is-selection-disabled{cursor:default;pointer-events:none}.pika-button:hover,.pika-row.pick-whole-week:hover .pika-button{background:#ff8000;border-radius:3px;box-shadow:none;color:#fff}.pika-table abbr{border-bottom:none;cursor:help}.handsontable .htAutocompleteArrow{color:#eee;cursor:default;float:right;font-size:10px;text-align:center;width:16px}[dir=rtl].handsontable .htAutocompleteArrow{float:left}.handsontable td .htAutocompleteArrow:hover{color:#777}.handsontable td.area .htAutocompleteArrow{color:#d3d3d3}.handsontable .htCheckboxRendererInput{display:inline-block}.handsontable .htCheckboxRendererInput.noValue{opacity:.5}.handsontable .htCheckboxRendererLabel{cursor:pointer;display:inline-block;font-size:inherit;vertical-align:middle}.handsontable .htCheckboxRendererLabel.fullWidth{width:100%}.handsontable .htCommentCell{position:relative}.handsontable .htCommentCell:after{border-left:6px solid transparent;border-right:none;border-top:6px solid #000;content:\"\";left:unset;position:absolute;right:0;top:0}[dir=rtl].handsontable .htCommentCell:after{border-left:none;border-right:6px solid transparent;left:0;right:unset}.htCommentsContainer .htComments{display:none;position:absolute;z-index:1059}.htCommentsContainer .htCommentTextArea{-webkit-appearance:none;background-color:#fff;border:none;border-left:3px solid #ccc;box-shadow:0 1px 3px rgba(0,0,0,.118),0 1px 2px rgba(0,0,0,.239);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;font-size:12px;height:90px;outline:0!important;padding:5px;width:215px}[dir=rtl].htCommentsContainer .htCommentTextArea{border-left:none;border-right:3px solid #ccc}.htCommentsContainer .htCommentTextArea:focus{border-left:3px solid #5292f7;border-right:none;box-shadow:0 1px 3px rgba(0,0,0,.118),0 1px 2px rgba(0,0,0,.239),inset 0 0 0 1px #5292f7}[dir=rtl].htCommentsContainer .htCommentTextArea:focus{border-left:none;border-right:3px solid #5292f7}\n/*!\n * Handsontable ContextMenu\n */.htContextMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htContextMenu .ht_clone_bottom,.htContextMenu .ht_clone_bottom_inline_start_corner,.htContextMenu .ht_clone_inline_start,.htContextMenu .ht_clone_top,.htContextMenu .ht_clone_top_inline_start_corner{display:none}.htContextMenu .ht_master table.htCore{border-color:#ccc;border-style:solid;border-width:1px 2px 2px 1px}[dir=rtl].htContextMenu .ht_master table.htCore{border-left-width:2px;border-right-width:1px}.htContextMenu .wtBorder{visibility:hidden}.htContextMenu table tbody tr td{background:#fff;border-width:0;cursor:pointer;overflow:hidden;padding:4px 6px 0;text-overflow:ellipsis;white-space:nowrap}.htContextMenu table tbody tr td:first-child{border-width:0}[dir=rtl].htContextMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htContextMenu table tbody tr td.htDimmed{color:#323232;font-style:normal}.htContextMenu table tbody tr td.current,.htContextMenu table tbody tr td.zeroclipboard-is-hover{background:#f3f3f3}.htContextMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;cursor:default;height:0;padding:0}.htContextMenu table tbody tr td.htDisabled{color:#999;cursor:default}.htContextMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htContextMenu table tbody tr.htHidden{display:none}.htContextMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:6px}[dir=rtl].htContextMenu table tbody tr td .htItemWrapper{margin-left:6px;margin-right:10px}.htContextMenu table tbody tr td div span.selected{left:4px;margin-top:-2px;position:absolute;right:0}[dir=rtl].htContextMenu table tbody tr td div span.selected{left:0;right:4px}.htContextMenu .ht_master .wtHolder{overflow:hidden}textarea.HandsontableCopyPaste{opacity:0;outline:0 none!important;overflow:hidden;position:fixed!important;right:100%!important;top:0!important}\n/*!\n * Handsontable DropdownMenu\n */.handsontable .changeType{background:#eee;border:1px solid #bbb;border-radius:2px;color:#bbb;float:right;font-size:9px;line-height:9px;margin:3px 1px 0 5px;padding:2px}[dir=rtl].handsontable .changeType{float:left}.handsontable .changeType:before{content:\"▼ \"}.handsontable .changeType:hover{border:1px solid #777;color:#777;cursor:pointer}.htDropdownMenu:not(.htGhostTable){display:none;position:absolute;z-index:1060}.htDropdownMenu .ht_clone_bottom,.htDropdownMenu .ht_clone_bottom_inline_start_corner,.htDropdownMenu .ht_clone_inline_start,.htDropdownMenu .ht_clone_top,.htDropdownMenu .ht_clone_top_inline_start_corner{display:none}.htDropdownMenu table.htCore{border-color:#ccc;border-style:solid;border-width:1px 2px 2px 1px}[dir=rtl].htDropdownMenu table.htCore{border-left-width:2px;border-right-width:1px}.htDropdownMenu .wtBorder{visibility:hidden}.htDropdownMenu table tbody tr td{background:#fff;border-width:0;cursor:pointer;overflow:hidden;padding:4px 6px 0;text-overflow:ellipsis;white-space:nowrap}.htDropdownMenu table tbody tr td:first-child{border-width:0}[dir=rtl].htDropdownMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htDropdownMenu table tbody tr td.htDimmed{color:#323232;font-style:normal}.htDropdownMenu table tbody tr td.current,.htDropdownMenu table tbody tr td.zeroclipboard-is-hover{background:#e9e9e9}.htDropdownMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;cursor:default;height:0;padding:0}.htDropdownMenu table tbody tr td.htDisabled{color:#999}.htDropdownMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htDropdownMenu:not(.htGhostTable) table tbody tr.htHidden{display:none}.htDropdownMenu table tbody tr td .htItemWrapper,[dir=rtl].htDropdownMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}.htDropdownMenu table tbody tr td div span.selected{left:4px;margin-top:-2px;position:absolute;right:0}[dir=rtl].htDropdownMenu table tbody tr td div span.selected{left:0;right:4px}.htDropdownMenu .ht_master .wtHolder{overflow:hidden}\n/*!\n * Handsontable Filters\n */.htFiltersConditionsMenu:not(.htGhostTable){display:none;position:absolute;z-index:1070}.htFiltersConditionsMenu .ht_clone_bottom,.htFiltersConditionsMenu .ht_clone_bottom_inline_start_corner,.htFiltersConditionsMenu .ht_clone_inline_start,.htFiltersConditionsMenu .ht_clone_top,.htFiltersConditionsMenu .ht_clone_top_inline_start_corner{display:none}.htFiltersConditionsMenu table.htCore{border-color:#bbb;border-style:solid;border-width:1px 2px 2px 1px}.htFiltersConditionsMenu .wtBorder{visibility:hidden}.htFiltersConditionsMenu table tbody tr td{background:#fff;border-width:0;cursor:pointer;overflow:hidden;padding:4px 6px 0;text-overflow:ellipsis;white-space:nowrap}.htFiltersConditionsMenu table tbody tr td:first-child{border-width:0}[dir=rtl].htFiltersConditionsMenu table tbody tr td:first-child{border-left-width:0;border-right-width:0}.htFiltersConditionsMenu table tbody tr td.htDimmed{color:#323232;font-style:normal}.htFiltersConditionsMenu table tbody tr td.current,.htFiltersConditionsMenu table tbody tr td.zeroclipboard-is-hover{background:#e9e9e9}.htFiltersConditionsMenu table tbody tr td.htSeparator{border-top:1px solid #e6e6e6;height:0;padding:0}.htFiltersConditionsMenu table tbody tr td.htDisabled{color:#999}.htFiltersConditionsMenu table tbody tr td.htDisabled:hover{background:#fff;color:#999;cursor:default}.htFiltersConditionsMenu table tbody tr td .htItemWrapper{margin-left:10px;margin-right:10px}.htFiltersConditionsMenu table tbody tr td div span.selected{left:4px;margin-top:-2px;position:absolute}.htFiltersConditionsMenu .ht_master .wtHolder{overflow:hidden}.handsontable .htMenuFiltering{border-bottom:1px dotted #ccc;height:135px;overflow:hidden}.handsontable .ht_master table td.htCustomMenuRenderer{background-color:#fff;cursor:auto}.handsontable .htFiltersMenuLabel{font-size:.75em}.handsontable .htFiltersMenuActionBar{padding-bottom:3px;padding-top:10px;text-align:center}.handsontable .htFiltersMenuCondition.border{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuCondition .htUIInput{padding:0 0 5px}.handsontable .htFiltersMenuValue{border-bottom:1px dotted #ccc!important}.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch{padding:0}.handsontable .htFiltersMenuCondition .htUIInput input,.handsontable .htFiltersMenuValue .htUIMultipleSelectSearch input{box-sizing:border-box;font-family:inherit;font-size:.75em;padding:4px;width:100%}.htUIMultipleSelect .ht_master .wtHolder{overflow-y:scroll}.handsontable .htFiltersActive .changeType{background-color:#d2e0d9;border:1px solid #509272;color:#18804e}.handsontable .htUISelectAll{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUISelectAll{margin-left:10px;margin-right:0}.handsontable .htUIClearAll,.handsontable .htUISelectAll{display:inline-block}.handsontable .htUIClearAll a,.handsontable .htUISelectAll a{font-size:.75em}.handsontable .htUISelectionControls{text-align:right}[dir=rtl].handsontable .htUISelectionControls{text-align:left}.handsontable .htCheckboxRendererInput{height:1em;margin:0 5px 0 0;vertical-align:middle}[dir=rtl].handsontable .htCheckboxRendererInput{margin-left:5px;margin-right:0}.handsontable .htUIInput{padding:3px 0 7px;position:relative;text-align:center}.handsontable .htUIInput input{border:1px solid #d2d1d1;border-radius:2px}.handsontable .htUIInput input:focus{outline:0}.handsontable .htUIInputIcon{position:absolute}.handsontable .htUIInput.htUIButton{cursor:pointer;display:inline-block}.handsontable .htUIInput.htUIButton input{background-color:#eee;color:#000;cursor:pointer;font-family:inherit;font-size:.75em;font-weight:700;height:19px;min-width:64px}.handsontable .htUIInput.htUIButton input:hover{border-color:#b9b9b9}.handsontable .htUIInput.htUIButtonOK{margin-left:0;margin-right:10px}[dir=rtl].handsontable .htUIInput.htUIButtonOK{margin-left:10px;margin-right:0}.handsontable .htUIInput.htUIButtonOK input{background-color:#0f9d58;border-color:#18804e;color:#fff}.handsontable .htUIInput.htUIButtonOK input:hover{border-color:#1a6f46}.handsontable .htUISelect{cursor:pointer;margin-bottom:7px;position:relative}.handsontable .htUISelectCaption{background-color:#e8e8e8;border:1px solid #d2d1d1;border-radius:2px;font-family:inherit;font-size:.75em;font-weight:700;overflow:hidden;padding:3px 20px 3px 10px;text-overflow:ellipsis;white-space:nowrap}.handsontable .htUISelectCaption:hover{background-color:#e8e8e8;border:1px solid #b9b9b9}.handsontable .htUISelectDropdown:after{content:\"▲\";font-size:7px;position:absolute;right:10px;top:0}.handsontable .htUISelectDropdown:before{content:\"▼\";font-size:7px;position:absolute;right:10px;top:8px}.handsontable .htUIMultipleSelect .handsontable .htCore{border:none}.handsontable .htUIMultipleSelect .handsontable .htCore td:hover{background-color:#f5f5f5}.handsontable .htUIMultipleSelectSearch input{border:1px solid #d2d1d1;border-radius:2px;padding:3px}.handsontable .htUIRadio{display:inline-block;height:100%;margin-left:0;margin-right:5px}[dir=rtl].handsontable .htUIRadio{margin-left:5px;margin-right:0}.handsontable .htUIRadio:last-child{margin-right:0}.handsontable .htUIRadio>input[type=radio]{margin-left:0;margin-right:.5ex}[dir=rtl].handsontable .htUIRadio>input[type=radio]{margin-left:.5ex;margin-right:0}.handsontable .htUIRadio label{vertical-align:middle}.handsontable .htFiltersMenuOperators{padding-bottom:5px}.handsontable th.beforeHiddenColumn{position:relative}.handsontable th.afterHiddenColumn:before,.handsontable th.beforeHiddenColumn:after{color:#bbb;font-size:5pt;position:absolute;top:50%;transform:translateY(-50%)}.handsontable th.afterHiddenColumn{position:relative}.handsontable th.beforeHiddenColumn:after{content:\"◀\";right:1px}[dir=rtl].handsontable th.beforeHiddenColumn:after{content:\"▶\";left:1px;right:auto}.handsontable th.afterHiddenColumn:before{content:\"▶\";left:1px}[dir=rtl].handsontable th.afterHiddenColumn:before{content:\"◀\";left:auto;right:1px}\n/*!\n * Handsontable HiddenRows\n */.handsontable th.afterHiddenRow:after,.handsontable th.beforeHiddenRow:before{color:#bbb;font-size:6pt;left:2px;line-height:6pt;position:absolute}.handsontable th.afterHiddenRow,.handsontable th.beforeHiddenRow{position:relative}.handsontable th.beforeHiddenRow:before{bottom:2px;content:\"▲\"}.handsontable th.afterHiddenRow:after{content:\"▼\";top:2px}.handsontable.ht__selection--rows tbody th.afterHiddenRow.ht__highlight:after,.handsontable.ht__selection--rows tbody th.beforeHiddenRow.ht__highlight:before{color:#eee}.handsontable td.afterHiddenRow.firstVisibleRow,.handsontable th.afterHiddenRow.firstVisibleRow{border-top:1px solid #ccc}.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_inline_start td:first-of-type,.htRowHeaders .ht_master.innerBorderInlineStart~.ht_clone_top_inline_start_corner th:nth-child(2){border-left:0}.handsontable.ht__manualColumnMove.after-selection--columns thead th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualColumnMove.on-moving--columns,.handsontable.ht__manualColumnMove.on-moving--columns thead th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualColumnMove.on-moving--columns .manualColumnResizer{display:none}.handsontable .ht__manualColumnMove--backlight,.handsontable .ht__manualColumnMove--guideline{display:none;height:100%;position:absolute}.handsontable .ht__manualColumnMove--guideline{background:#757575;margin-inline-end:0;margin-inline-start:-1px;top:0;width:2px;z-index:205}.handsontable .ht__manualColumnMove--backlight{background:#343434;background:rgba(52,52,52,.25);display:none;pointer-events:none;z-index:205}.handsontable.on-moving--columns .ht__manualColumnMove--backlight,.handsontable.on-moving--columns.show-ui .ht__manualColumnMove--guideline{display:block}.handsontable .wtHider{position:relative}.handsontable.ht__manualRowMove.after-selection--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grab;cursor:-webkit-grab;cursor:grab}.handsontable.ht__manualRowMove.on-moving--rows,.handsontable.ht__manualRowMove.on-moving--rows tbody th.ht__highlight{cursor:move;cursor:-moz-grabbing;cursor:-webkit-grabbing;cursor:grabbing}.handsontable.ht__manualRowMove.on-moving--rows .manualRowResizer{display:none}.handsontable .ht__manualRowMove--backlight,.handsontable .ht__manualRowMove--guideline{display:none;position:absolute;width:100%}.handsontable .ht__manualRowMove--guideline{background:#757575;height:2px;left:0;margin-top:-1px;z-index:205}.handsontable .ht__manualRowMove--backlight{background:#343434;background:rgba(52,52,52,.25);display:none;pointer-events:none;z-index:205}.handsontable.on-moving--rows .ht__manualRowMove--backlight,.handsontable.on-moving--rows.show-ui .ht__manualRowMove--guideline{display:block}.handsontable tbody td[rowspan][class*=area][class*=highlight]:not([class*=fullySelectedMergedCell]):before{opacity:0}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-0]:before,.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-multiple]:before{opacity:.1}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-1]:before{opacity:.2}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-2]:before{opacity:.27}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-3]:before{opacity:.35}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-4]:before{opacity:.41}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-5]:before{opacity:.47}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-6]:before{opacity:.54}.handsontable tbody td[rowspan][class*=area][class*=highlight][class*=fullySelectedMergedCell-7]:before{opacity:.58}.handsontable span.colHeader.columnSorting:after{font-size:8px;height:8px;left:unset;line-height:1.1;margin-top:-2px;padding-left:5px;padding-right:unset;position:absolute;right:-15px;text-decoration:underline;top:50%}[dir=rtl].handsontable span.colHeader.columnSorting:after{left:-15px;padding-left:unset;padding-right:5px;right:unset}.handsontable span.colHeader.columnSorting:after{text-decoration:none}.handsontable span.colHeader.columnSorting[class*=\" sort-\"]:after,.handsontable span.colHeader.columnSorting[class^=sort-]:after{content:\"+\"}.handsontable span.colHeader.columnSorting.sort-1:after{content:\"1\"}.handsontable span.colHeader.columnSorting.sort-2:after{content:\"2\"}.handsontable span.colHeader.columnSorting.sort-3:after{content:\"3\"}.handsontable span.colHeader.columnSorting.sort-4:after{content:\"4\"}.handsontable span.colHeader.columnSorting.sort-5:after{content:\"5\"}.handsontable span.colHeader.columnSorting.sort-6:after{content:\"6\"}.handsontable span.colHeader.columnSorting.sort-7:after{content:\"7\"}.htGhostTable th div button.changeType+span.colHeader.columnSorting:not(.indicatorDisabled){padding-right:5px}.handsontable thead th.hiddenHeader:not(:first-of-type){display:none}.handsontable th.ht_nestingLevels{padding-left:7px;text-align:left}[dir=rtl].handsontable th.ht_nestingLevels{padding-right:7px;text-align:right}.handsontable th div.ht_nestingLevels{display:inline-block;left:11px;position:absolute;right:unset}[dir=rtl].handsontable th div.ht_nestingLevels{left:unset;right:11px}.handsontable.innerBorderInlineStart th div.ht_nestingLevels,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{left:unset;right:10px}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingLevels,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingLevels{left:10px;right:unset}.handsontable th span.ht_nestingLevel{display:inline-block}.handsontable th span.ht_nestingLevel_empty{display:inline-block;float:left;height:1px;width:10px}[dir=rtl].handsontable th span.ht_nestingLevel_empty{float:right}.handsontable th span.ht_nestingLevel:after{bottom:3px;content:\"┐\";display:inline-block;font-size:9px;position:relative}.handsontable th div.ht_nestingButton{cursor:pointer;display:inline-block;left:unset;position:absolute;right:-2px}[dir=rtl].handsontable th div.ht_nestingButton{left:-2px;right:unset}.handsontable th div.ht_nestingButton.ht_nestingExpand:after{content:\"+\"}.handsontable th div.ht_nestingButton.ht_nestingCollapse:after{content:\"-\"}.handsontable.innerBorderInlineStart th div.ht_nestingButton,.handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{left:unset;right:0}[dir=rtl].handsontable.innerBorderInlineStart th div.ht_nestingButton,[dir=rtl].handsontable.innerBorderInlineStart~.handsontable th div.ht_nestingButton{left:0;right:unset}","/* Hide scrollbar for Chrome, Safari and Opera */\r\n.tableContainer::-webkit-scrollbar {\r\n\tdisplay: none;\r\n}\r\n\r\n/* Hide scrollbar for IE, Edge and Firefox */\r\n.tableContainer {\r\n\t-ms-overflow-style: none; /* IE and Edge */\r\n\tscrollbar-width: none; /* Firefox */\r\n}\r\n\r\n@media screen and (max-width: 900px) {\r\n\t.tableContainer {\r\n\t\tmargin: 0 -10px;\r\n\t}\r\n}\r\n",".log-item {\r\n\tpadding: 20px 0;\r\n\tborder-bottom: 1px solid gainsboro;\r\n\tcursor: pointer;\r\n}\r\n\r\n.dialogue {\r\n\tposition: fixed;\r\n\theight: 100vh;\r\n\twidth: 100vw;\r\n\ttop: 0;\r\n\tbottom: 0;\r\n\tleft: 0;\r\n\tright: 0;\r\n\tz-index: 100;\r\n\tbackground-color: #00000040;\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tjustify-content: center;\r\n\r\n\t.dialogue-box {\r\n\t\tbackground-color: white;\r\n\t\tmin-width: 90vw;\r\n\t\tmin-height: 80vh;\r\n\t\tmax-height: 90vh;\r\n\t\toverflow-y: auto;\r\n\t\tpadding: 10px 20px 16px 20px;\r\n\t\tborder-radius: 16px;\r\n\r\n\t\t.dialogue-box-head {\r\n\t\t\tpadding: 0px 20px;\r\n\t\t\tdisplay: flex;\r\n\t\t\talign-items: center;\r\n\t\t\tjustify-content: space-between;\r\n\t\t\tborder-bottom: 1px solid gainsboro;\r\n\r\n\t\t\t.dialogue-close {\r\n\t\t\t\tfont-size: 2em;\r\n\t\t\t\tcursor: pointer;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\t.dialogue-body .log {\r\n\t\t\tdisplay: flex;\r\n\t\t\tflex-direction: column;\r\n\t\t\tgap: 8px;\r\n\t\t\tpadding: 16px 8px;\r\n\t\t\tborder-bottom: 1px solid gainsboro;\r\n\r\n\t\t\t.log-text {\r\n\t\t\t\tfont-size: 1.25em;\r\n\t\t\t}\r\n\r\n\t\t\t.log-body {\r\n\t\t\t\tdisplay: flex;\r\n\t\t\t\tjustify-items: stretch;\r\n\r\n\t\t\t\t.log-previous-score {\r\n\t\t\t\t\tborder-right: 1px solid gainsboro;\r\n\t\t\t\t\tpadding: 16px 0;\r\n\t\t\t\t\tpadding-right: 16px;\r\n\t\t\t\t}\r\n\r\n\t\t\t\t.log-current-score {\r\n\t\t\t\t\tmargin-left: 16px;\r\n\t\t\t\t\tpadding: 16px 0;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}\r\n\r\n@media screen and (max-width: 600px) {\r\n\t.dialogue .dialogue-box {\r\n\t\twidth: 100vh;\r\n\t\theight: 100vh;\r\n\t\tborder-radius: 0px;\r\n\t}\r\n}\r\n"],"names":[],"sourceRoot":""} \ No newline at end of file diff --git a/build/static/js/570.1fd32405.chunk.js b/build/static/js/570.1fd32405.chunk.js deleted file mode 100644 index 562d7aa..0000000 --- a/build/static/js/570.1fd32405.chunk.js +++ /dev/null @@ -1,2 +0,0 @@ -"use strict";(self.webpackChunkinteriit_scores_app_ibp=self.webpackChunkinteriit_scores_app_ibp||[]).push([[570],{4281:function(e,t,n){n.r(t),n.d(t,{default:function(){return te}});var s=n(1413),r=n(4165),a=n(5861),i=n(3433),c=n(9439),o=n(7689),l=n(184),u=function(e){var t=e.items,n=(0,o.s0)();return(0,l.jsx)("div",{className:"sidebar",children:(0,l.jsx)("div",{className:"items",children:t.map((function(e,t){return(0,l.jsxs)("div",{className:"item",tabIndex:1,onClick:function(){return n(e.linkTo)},children:[(0,l.jsx)(e.icon,{fontSize:"large"}),(0,l.jsx)("span",{className:"title",children:e.title})]},t)}))})})},d=n(2791),m=function(e){return e.ADMIN="Admin",e.SCORE_EDITOR="ScoreEditor",e}({}),h=n(9527),p=n(9451),v=n(7939),x=n(9841),f=n(2797),j=function(e){var t=e.role;return(0,l.jsx)("span",{style:{backgroundColor:t===m.ADMIN?"red":"green"},className:"chip",children:t})},N=function(e){var t=e.user,n=e.onDelete,s=(0,d.useState)(!1),r=(0,c.Z)(s,2),a=r[0],i=r[1];return(0,l.jsxs)("tr",{children:[(0,l.jsx)("td",{children:t.name}),(0,l.jsx)("td",{className:"noTextTransform",onClick:function(){i(!0),setTimeout((function(){return i(!1)}),2e3)},children:a?t.password:t.username}),(0,l.jsx)("td",{className:"chipCell",children:(0,l.jsx)(j,{role:t.role})}),(0,l.jsx)("td",{children:(0,l.jsx)("button",{className:"styledButton",onClick:function(){return n(t)},children:"Delete"})})]})},S=function(e){var t=e.users,n=e.onDelete,s=e.onUserAdd,r=(0,d.useState)(""),a=(0,c.Z)(r,2),i=a[0],o=a[1],u=(0,d.useState)(""),h=(0,c.Z)(u,2),p=h[0],v=h[1],x=(0,d.useState)(""),f=(0,c.Z)(x,2),j=f[0],S=f[1],T=(0,d.useState)(""),Z=(0,c.Z)(T,2),g=Z[0],y=Z[1],_=(0,d.useState)(m.SCORE_EDITOR),E=(0,c.Z)(_,2),b=E[0],M=E[1],C=(0,d.useRef)(null);return(0,l.jsxs)("div",{className:"usersContainer",children:[(0,l.jsxs)("section",{className:"top",children:[(0,l.jsx)("button",{onClick:function(){var e;null===(e=C.current)||void 0===e||e.showModal(),o(""),v(""),S("")},className:"styledButton",children:"Add User"}),(0,l.jsxs)("dialog",{ref:C,children:[(0,l.jsx)("button",{className:"styledButton",onClick:function(){var e;null===(e=C.current)||void 0===e||e.close()},children:"Close"}),(0,l.jsx)("h3",{children:"Add User Details"}),(0,l.jsxs)("form",{onSubmit:function(e){var t;if(e.preventDefault(),""===i||""===p||""===j)return y("Enter Name, Username and Password!"),void setTimeout((function(){return y("")}),3e3);s({name:i,username:p,role:b},j),null===(t=C.current)||void 0===t||t.close()},children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:"Name"}),(0,l.jsx)("input",{name:"Name",onChange:function(e){return o(e.target.value)},value:i,className:"styledInput"})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:"Username"}),(0,l.jsx)("input",{name:"Username",onChange:function(e){return v(e.target.value)},value:p,className:"styledInput"})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:"Password"}),(0,l.jsx)("input",{name:"Password",onChange:function(e){return S(e.target.value)},value:j,className:"styledInput"})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:"Role"}),(0,l.jsxs)("select",{onChange:function(e){return M(e.target.value)},value:b,className:"styledButton dropdown",children:[(0,l.jsx)("option",{value:m.ADMIN,children:m.ADMIN}),(0,l.jsx)("option",{value:m.SCORE_EDITOR,children:m.SCORE_EDITOR})]})]}),(0,l.jsx)("button",{className:"styledButton",type:"submit",children:"Add"})]}),g]})]}),(0,l.jsx)("section",{className:"main",children:(0,l.jsxs)("table",{children:[(0,l.jsx)("thead",{children:(0,l.jsxs)("tr",{children:[(0,l.jsx)("td",{children:"Name"}),(0,l.jsx)("td",{children:"Username"}),(0,l.jsx)("td",{children:"Role"}),(0,l.jsx)("td",{children:"Action"})]})}),(0,l.jsx)("tbody",{children:t.map((function(e,t){return(0,l.jsx)(N,{user:e,onDelete:n},t)}))})]})})]})},T=n(8011),Z=n(2625),g=n(8356),y=n(8025),_=n(7174),E=n(5018),b=n(3860),M=n(3401),C=function(e){return e.MEN_5000="5000m (M)",e.MEN_1500="1500m (M)",e.WOMEN_1500="1500m (W)",e.MEN_800="800m (M)",e.WOMEN_800="800m (W)",e.MEN_400="400m (M)",e.WOMEN_400="400m (W)",e.MEN_200="200m (M)",e.WOMEN_200="200m (W)",e.MEN_100="100m (M)",e.WOMEN_100="100m (W)",e.MEN_4X100="4x100m (M)",e.WOMEN_4X100="4x100m (W)",e.MEN_4X400="4x400m (M)",e.WOMEN_4X400="4x400m (W)",e.MEN_110_HURDLES="110m Hurdles (M)",e.MEN_400_HURDLES="400m Hurdles (M)",e.MEN_HAMMER_THROW="Hammer Throw (M)",e.MEN_DISK_THROW="Discus Throw (M)",e.WOMEN_DISK_THROW="Discus Throw (W)",e.MEN_POLE_VAULT="Pole Vault (M)",e.MEN_SHOT_PUT="Shot Put (M)",e.WOMEN_SHOT_PUT="Shot Put (W)",e.MEN_TRIPLE_JUMP="Triple Jump (M)",e.MEN_JAVELIN_THROW="Javelin Throw (M)",e.WOMEN_JAVELIN_THROW="Javelin Throw (W)",e.MEN_HIGH_JUMP="High Jump (M)",e.WOMEN_HIGH_JUMP="High Jump (W)",e.MEN_LONG_JUMP="Long Jump (M)",e.WOMEN_LONG_JUMP="Long Jump (W)",e}(C||{}),w=function(e){return e.MEN_HAMMER_THROW="Hammer Throw (M)",e.MEN_DISK_THROW="Discus Throw (M)",e.WOMEN_DISK_THROW="Discus Throw (W)",e.MEN_POLE_VAULT="Pole Vault (M)",e.MEN_SHOT_PUT="Shot Put (M)",e.WOMEN_SHOT_PUT="Shot Put (W)",e.MEN_TRIPLE_JUMP="Triple Jump (M)",e.MEN_JAVELIN_THROW="Javelin Throw (M)",e.WOMEN_JAVELIN_THROW="Javelin Throw (W)",e.MEN_HIGH_JUMP="High Jump (M)",e.WOMEN_HIGH_JUMP="High Jump (W)",e.MEN_LONG_JUMP="Long Jump (M)",e.WOMEN_LONG_JUMP="Long Jump (W)",e}(w||{}),A=C,D=function(){var e=(0,y.cl)(),t=(0,d.useContext)(_.u).setToastMessage,n=(0,d.useState)(!0),i=(0,c.Z)(n,2),o=i[0],u=i[1],m=(0,d.useState)([]),h=(0,c.Z)(m,2),p=h[0],v=h[1],x=(0,d.useMemo)((function(){return p.filter((function(e){return e.isStarted}))}),[p]),f=(0,d.useMemo)((function(){return p.filter((function(e){return!e.isCompleted&&e.startTime<=(new Date).getTime()+9e5}))}),[p]),j=(0,d.useState)(),N=(0,c.Z)(j,2),S=N[0],C=N[1],A=(0,d.useRef)(null),D=(0,d.useRef)(null),O=(0,d.useState)("DRAW"),I=(0,c.Z)(O,2),B=I[0],L=I[1],W=function(){var e;null===(e=A.current)||void 0===e||e.showModal()},U=function(){var e,t;null===(e=A.current)||void 0===e||e.close(),null===(t=D.current)||void 0===t||t.close()},H=function(){var e=(0,a.Z)((0,r.Z)().mark((function e(){var t;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,g.Z.GetEvents();case 2:t=e.sent.data,v(t),u(!1);case 5:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),R=function(){var n=(0,a.Z)((0,r.Z)().mark((function n(a,i){var c;return(0,r.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,g.Z.UpdateScore(e(),a,i);case 3:c=p.map((function(e){return e._id===a?(0,s.Z)((0,s.Z)({},e),{},{score:i}):e})),v(c),n.next=10;break;case 7:n.prev=7,n.t0=n.catch(0);try{t(JSON.parse(n.t0.request.response).message)}catch(r){t("Could not connect with the Server"),console.log(n.t0)}case 10:case"end":return n.stop()}}),n,null,[[0,7]])})));return function(e,t){return n.apply(this,arguments)}}();(0,d.useEffect)((function(){H()}),[]);return(0,l.jsxs)("div",{className:"usersContainer",children:[(0,l.jsxs)("div",{className:"top",style:{fontWeight:"600"},children:["Live Events",(0,l.jsxs)("dialog",{ref:A,children:[(0,l.jsx)("button",{className:"styledButton",onClick:U,children:"Close"}),(0,l.jsx)("h3",{children:"Caution"}),"Are you sure you want to end this event?",(0,l.jsx)("br",{})," ",(0,l.jsxs)("b",{children:[null===S||void 0===S?void 0:S.event," ",(null===S||void 0===S?void 0:S.event)===T.Z.ATHLETICS?null===S||void 0===S?void 0:S.athleticsEventType:null===S||void 0===S?void 0:S.title," ","|"," ",(null===S||void 0===S?void 0:S.event)===T.Z.ATHLETICS?null===S||void 0===S?void 0:S.title:null===S||void 0===S?void 0:S.subtitle]}),(0,l.jsx)("br",{}),(null===S||void 0===S?void 0:S.event)!==T.Z.ATHLETICS&&(null===S||void 0===S?void 0:S.event)!==T.Z.CRICKET&&(null===S||void 0===S?void 0:S.score.teamA_points)===(null===S||void 0===S?void 0:S.score.teamB_points)&&(0,l.jsxs)(l.Fragment,{children:["The Teams have same score.",(0,l.jsx)("br",{}),(0,l.jsx)("label",{children:"Set Winner Manually: "}),(0,l.jsxs)("select",{onChange:function(e){return L(e.target.value)},value:B,style:{position:"unset"},className:"styledButton dropdown",children:[(0,l.jsx)("option",{value:"DRAW",children:"DRAW"}),(0,l.jsx)("option",{value:null===S||void 0===S?void 0:S.teams[0].name,children:null===S||void 0===S?void 0:S.teams[0].name}),(0,l.jsx)("option",{value:null===S||void 0===S?void 0:S.teams[1].name,children:null===S||void 0===S?void 0:S.teams[1].name})]})]}),(0,l.jsx)("form",{onSubmit:function(){var n=(0,a.Z)((0,r.Z)().mark((function n(s){var a,i,c;return(0,r.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(s.preventDefault(),(null===S||void 0===S?void 0:S.event)!==T.Z.ATHLETICS){n.next=5;break}return null===(i=A.current)||void 0===i||i.close(),D.current.showModal(),n.abrupt("return");case 5:return n.prev=5,"DRAW"!==B&&(c={team:S.teams.find((function(e){return e.name===B}))},g.Z.SetWinnerManually(e(),S._id,c)),n.next=9,g.Z.ToggleEventStatus(e(),S._id);case 9:t("Successfull"),u(!0),H(),n.next=17;break;case 14:n.prev=14,n.t0=n.catch(5);try{t(JSON.parse(n.t0.request.response).message)}catch(r){t("Could not connect with the Server"),console.log(n.t0)}case 17:null===(a=A.current)||void 0===a||a.close(),C(void 0);case 19:case"end":return n.stop()}}),n,null,[[5,14]])})));return function(e){return n.apply(this,arguments)}}(),children:(0,l.jsx)("button",{className:"styledButton",type:"submit",children:"Yes"})})]}),(null===S||void 0===S?void 0:S.event)===T.Z.ATHLETICS&&(0,l.jsxs)("dialog",{ref:D,children:[(0,l.jsx)("button",{className:"styledButton",onClick:U,children:"Close"}),(0,l.jsx)("h3",{children:Object.values(w).includes(S.athleticsEventType)?"Enter Distances (In meter)":"Enter Times (min:sec:millisec)"}),(0,l.jsx)(k,{event:S,onSuccess:function(){var e;null===(e=D.current)||void 0===e||e.close(),C(void 0),u(!0),H()}})]})]}),(0,l.jsxs)("div",{className:"main",children:[o?(0,l.jsx)(l.Fragment,{children:"Loading Events Data..."}):x&&(0,l.jsx)("section",{className:"liveEvents",children:x.map((function(e,t){return function(e,t){switch(e.event){case T.Z.FOOTBALL:return(0,l.jsx)(Z.Z,{isAdmin:!0,onScoreUpdate:function(t){return R(e._id,t)},event:e},t);case T.Z.CHESS:return(0,l.jsx)(E.Z,{isAdmin:!0,onScoreUpdate:function(t){return R(e._id,t)},event:e},t);case T.Z.SQUASH_MEN:case T.Z.SQUASH_WOMEN:return(0,l.jsx)(b.Z,{isAdmin:!0,onScoreUpdate:function(t){return R(e._id,t)},event:e},t);case T.Z.TENNIS_MEN:case T.Z.TENNIS_WOMEN:return(0,l.jsx)(M.Z,{isAdmin:!0,onScoreUpdate:function(t){return R(e._id,t)},event:e},t);default:return console.log("no card"+e.event),(0,l.jsx)(l.Fragment,{})}}(e,t)}))}),(0,l.jsx)("section",{className:"liveAbleEvents",children:0!==f.length?f.map((function(n,s){return(0,l.jsxs)("div",{children:[n.event," -"," ",n.athleticsEventType?n.athleticsEventType+" - ":null,n.title," -"," ",new Date(n.startTime).toLocaleDateString("en-GB")," - Start Time:"," ",new Date(n.startTime).toLocaleString("en-US",{hour:"numeric",minute:"numeric",hour12:!0})," ","-"," ",n.isStarted?(0,l.jsx)("span",{className:"chip",children:"Is Live"}):"Not Live",(0,l.jsx)("ul",{children:n.event===T.Z.ATHLETICS?n.participants[0].map((function(e,t){return(0,l.jsxs)("li",{children:[e.name," : ",e.team]},t)})):n.teams.map((function(e,t){return(0,l.jsxs)("li",{children:[e.name," "]},t)}))}),(0,l.jsx)("button",{className:"styledButton",onClick:(0,a.Z)((0,r.Z)().mark((function s(){return(0,r.Z)().wrap((function(s){for(;;)switch(s.prev=s.next){case 0:if(!n.isStarted){s.next=9;break}if(!(n.startTime>(new Date).getTime())){s.next=4;break}return t("Can't end this event right now!"),s.abrupt("return");case 4:C(n),L("DRAW"),W(),s.next=20;break;case 9:return s.prev=9,s.next=12,g.Z.ToggleEventStatus(e(),n._id);case 12:t("Successfull"),u(!0),H(),s.next=20;break;case 17:s.prev=17,s.t0=s.catch(9);try{t(JSON.parse(s.t0.request.response).message)}catch(r){t("Could not connect with the Server"),console.log(s.t0)}case 20:case"end":return s.stop()}}),s,null,[[9,17]])}))),children:n.isStarted?"End Event":"Go Live"})]},s)})):(0,l.jsx)(l.Fragment,{children:"No Events which can be toggled live!"})})]})]})},k=function(e){var t=e.event,n=e.onSuccess,i=(0,y.cl)(),o=(0,d.useContext)(_.u).setToastMessage,u=(0,d.useState)(t.participants[0]),m=(0,c.Z)(u,2),h=m[0],p=m[1],v=function(e){var t=e.split(":"),n=60*Number(t[0])*1e3;return t.length>=2&&(n+=1e3*Number(t[1])),t.length>=3&&(n+=Number(t[2])),n};return(0,l.jsxs)("form",{onSubmit:function(){var e=(0,a.Z)((0,r.Z)().mark((function e(s){var a;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s.preventDefault(),a=[],h.forEach((function(e){void 0!==e.detail?a.push(Object.values(w).includes(t.athleticsEventType)?{name:e.name,team:e.team,distance:Number(e.detail)}:{name:e.name,team:e.team,time:v(e.detail)}):o("Incomplete Details")})),e.prev=3,e.next=6,g.Z.SetAthleticsEventDetails(i(),t._id,a);case 6:return e.next=8,g.Z.ToggleEventStatus(i(),t._id);case 8:o("Successfull"),n(),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(3);try{o(JSON.parse(e.t0.request.response).message)}catch(r){o("Could not connect with the Server"),console.log(e.t0)}case 15:case"end":return e.stop()}}),e,null,[[3,12]])})));return function(t){return e.apply(this,arguments)}}(),children:[h.map((function(e,t){return(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:e.name}),(0,l.jsx)("input",{name:"details",type:"text",onChange:function(t){return p(h.map((function(n){return n.name===e.name?(0,s.Z)((0,s.Z)({},n),{},{detail:t.target.value}):n})))},value:h[t].detail,className:"styledInput"})]})})),(0,l.jsx)("button",{className:"styledButton",type:"submit",children:"Submit"})]})},O=n(6839),I=function(e){var t=e.team,n=e.onDelete;return(0,l.jsxs)("tr",{children:[(0,l.jsx)("td",{children:t.name}),(0,l.jsx)("td",{children:(0,l.jsx)("button",{onClick:function(){return n(t)},className:"styledButton",children:"Delete"})})]})},B=function(e){var t=e.teams,n=e.onTeamAdd,s=e.onTeamDelete,r=(0,d.useRef)(null),a=(0,d.useRef)(null),i=(0,d.useState)(""),o=(0,c.Z)(i,2),u=o[0],m=o[1],h=(0,d.useState)(),p=(0,c.Z)(h,2),v=p[0],x=p[1],f=(0,d.useState)(""),j=(0,c.Z)(f,2),N=j[0],S=j[1],T=function(){var e,t;null===(e=r.current)||void 0===e||e.close(),null===(t=a.current)||void 0===t||t.close()},Z=function(e){var t;x(e),null===(t=a.current)||void 0===t||t.showModal()};return(0,l.jsxs)("div",{className:"usersContainer",children:[(0,l.jsxs)("div",{className:"top",children:[(0,l.jsx)("button",{onClick:function(){var e;null===(e=r.current)||void 0===e||e.showModal()},className:"styledButton",children:"Add Team"}),(0,l.jsxs)("dialog",{ref:r,children:[(0,l.jsx)("button",{className:"styledButton",onClick:T,children:"Close"}),(0,l.jsx)("h3",{children:"Add Team Details"}),(0,l.jsxs)("form",{onSubmit:function(e){var t;if(e.preventDefault(),""===u)return S("Enter Name!"),void setTimeout((function(){return S("")}),3e3);n({name:u}),null===(t=r.current)||void 0===t||t.close()},children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:"Name"}),(0,l.jsx)("input",{name:"Name",onChange:function(e){return m(e.target.value)},value:u,className:"styledInput"})]}),(0,l.jsx)("button",{className:"styledButton",type:"submit",children:"Add"})]}),N]}),(0,l.jsxs)("dialog",{ref:a,children:[(0,l.jsx)("button",{className:"styledButton",onClick:T,children:"Close"}),(0,l.jsx)("h3",{children:"Caution"}),"Are you sure you want to Delete",(0,l.jsx)("br",{})," ",(0,l.jsxs)("b",{children:[null===v||void 0===v?void 0:v.name," ?"]}),(0,l.jsx)("form",{onSubmit:function(e){var t;e.preventDefault(),s(v),null===(t=a.current)||void 0===t||t.close(),x(void 0)},children:(0,l.jsx)("button",{className:"styledButton",type:"submit",children:"Yes"})})]})]}),(0,l.jsx)("div",{className:"main",children:(0,l.jsxs)("table",{children:[(0,l.jsx)("thead",{children:(0,l.jsxs)("tr",{children:[(0,l.jsx)("td",{children:"Team Name"}),(0,l.jsx)("td",{children:"Action"})]})}),(0,l.jsx)("tbody",{children:t.map((function(e,t){return(0,l.jsx)(I,{team:e,onDelete:Z},t)}))})]})})]})},L=(n(7809),n(6154)),W=n(9679),U=n(63),H=n(7214),R=n(7382),P=n(3914),J=n(5982),F=n(774),V=n(5305),G=function(e){return e.DOUBLES="Doubles",e.SINGLES="Singles",e}({}),q=function(e){return e.SEMIS="Semi-Final",e.FINAL="Final",e}(q||{}),K=q;(0,W.xN)(U.L),(0,W.xN)(H.g),(0,W.xN)(R.f),(0,P.fo)(J.aX),(0,P.fo)(F._x);var X=function(e,t){var n=e.split("/"),s=new Date(n[1]+"/"+n[0]+"/"+n[2]);return s.setTime(s.getTime()+1e3*function(e){var t=e.split(":");t[3]=t[2].split(" ")[1],t[2]=t[2].split(" ")[0];var n=60*(60*Number(t[0])+Number(t[1]))+Number(t[2]);return"pm"!==t[3]&&"PM"!==t[3]||(n+=43200),n}(t)),s.getTime()},Q=function(e){return e.map((function(e){return{event:e[0],matchType:e[1],title:e[2],subtitle:e[3],startTime:X(e[4],e[5]),endTime:X(e[4],e[6]),teams:e.slice(7,9),eventLink:e[9]}}))},Y=function(e){return e.map((function(e){return(0,s.Z)({event:T.Z.ATHLETICS,athleticsEventType:e[0],title:e[1],startTime:X(e[2],e[3]),endTime:X(e[2],e[4])},function(e){for(var t=[],n=[],s=0;s {\r\n\tconst navigate = useNavigate();\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t{items.map((item, i) => (\r\n\t\t\t\t\t navigate(item.linkTo)}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{item.title}\r\n\t\t\t\t\t
\r\n\t\t\t\t))}\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default SideBar;\r\n","export enum UserRole {\r\n ADMIN = \"Admin\",\r\n SCORE_EDITOR = \"ScoreEditor\",\r\n}\r\n","import { UserRole } from \"../types/UserRole\";\r\nimport \"./UserRoleChip.css\";\r\n\r\nconst UserRoleChip = ({ role }: { role: UserRole }) => {\r\n\treturn (\r\n\t\t\r\n\t\t\t{role}\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default UserRoleChip;\r\n","import { useState } from \"react\";\r\nimport UserRoleChip from \"../../../components/UserRoleChip\";\r\nimport { User } from \"../../../types/User\";\r\n\r\nconst UserRow = ({\r\n\tuser,\r\n\tonDelete,\r\n}: {\r\n\tuser: User;\r\n\tonDelete: (userToDelete: User) => void;\r\n}) => {\r\n\tconst [showPassword, setShowPassword] = useState(false);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{user.name}\r\n\t\t\t {\r\n\t\t\t\t\tsetShowPassword(true);\r\n\t\t\t\t\tsetTimeout(() => setShowPassword(false), 2000);\r\n\t\t\t\t}}\r\n\t\t\t>\r\n\t\t\t\t{showPassword ? user.password : user.username}\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default UserRow;\r\n","import { useRef, useState } from \"react\";\r\nimport { User } from \"../../types/User\";\r\nimport \"./Users.css\";\r\nimport { UserRole } from \"../../types/UserRole\";\r\nimport UserRow from \"./components/UserRow\";\r\n\r\nconst Users = ({\r\n\tusers,\r\n\tonDelete,\r\n\tonUserAdd,\r\n}: {\r\n\tusers: User[];\r\n\tonDelete: (userToDelete: User) => void;\r\n\tonUserAdd: (userToAdd: User, password: string) => void;\r\n}) => {\r\n\tconst [newName, setNewName] = useState(\"\");\r\n\tconst [newUsername, setNewUsername] = useState(\"\");\r\n\tconst [newPassword, setNewPassword] = useState(\"\");\r\n\tconst [errorMsg, setErrorMsg] = useState(\"\");\r\n\tconst [newRole, setNewRole] = useState(UserRole.SCORE_EDITOR);\r\n\r\n\tconst addUserDialog = useRef(null);\r\n\r\n\tconst openDialog = () => {\r\n\t\taddUserDialog.current?.showModal();\r\n\t\tsetNewName(\"\");\r\n\t\tsetNewUsername(\"\");\r\n\t\tsetNewPassword(\"\");\r\n\t};\r\n\tconst closeDialog = () => {\r\n\t\taddUserDialog.current?.close();\r\n\t};\r\n\r\n\tconst handleAddUser = (e: any) => {\r\n\t\te.preventDefault();\r\n\t\tif (newName === \"\" || newUsername === \"\" || newPassword === \"\") {\r\n\t\t\tsetErrorMsg(\"Enter Name, Username and Password!\");\r\n\t\t\tsetTimeout(() => setErrorMsg(\"\"), 3000);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tonUserAdd(\r\n\t\t\t{ name: newName, username: newUsername, role: newRole },\r\n\t\t\tnewPassword\r\n\t\t);\r\n\t\taddUserDialog.current?.close();\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Add User Details

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setNewName(e.target.value)}\r\n\t\t\t\t\t\t\t\tvalue={newName}\r\n\t\t\t\t\t\t\t\tclassName=\"styledInput\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setNewUsername(e.target.value)}\r\n\t\t\t\t\t\t\t\tvalue={newUsername}\r\n\t\t\t\t\t\t\t\tclassName=\"styledInput\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setNewPassword(e.target.value)}\r\n\t\t\t\t\t\t\t\tvalue={newPassword}\r\n\t\t\t\t\t\t\t\tclassName=\"styledInput\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setNewRole(e.target.value as UserRole)}\r\n\t\t\t\t\t\t\t\tvalue={newRole}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton dropdown\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{errorMsg}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{users.map((user, i) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t\r\n\t\t\t\t
NameUsernameRoleAction
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default Users;\r\n","enum AthleticsEventTypes {\r\n\tMEN_5000 = \"5000m (M)\",\r\n\tMEN_1500 = \"1500m (M)\",\r\n\tWOMEN_1500 = \"1500m (W)\",\r\n\tMEN_800 = \"800m (M)\",\r\n\tWOMEN_800 = \"800m (W)\",\r\n\tMEN_400 = \"400m (M)\",\r\n\tWOMEN_400 = \"400m (W)\",\r\n\tMEN_200 = \"200m (M)\",\r\n\tWOMEN_200 = \"200m (W)\",\r\n\tMEN_100 = \"100m (M)\",\r\n\tWOMEN_100 = \"100m (W)\",\r\n\tMEN_4X100 = \"4x100m (M)\",\r\n\tWOMEN_4X100 = \"4x100m (W)\",\r\n\tMEN_4X400 = \"4x400m (M)\",\r\n\tWOMEN_4X400 = \"4x400m (W)\",\r\n\tMEN_110_HURDLES = \"110m Hurdles (M)\",\r\n\tMEN_400_HURDLES = \"400m Hurdles (M)\",\r\n\tMEN_HAMMER_THROW = \"Hammer Throw (M)\",\r\n\tMEN_DISK_THROW = \"Discus Throw (M)\",\r\n\tWOMEN_DISK_THROW = \"Discus Throw (W)\",\r\n\tMEN_POLE_VAULT = \"Pole Vault (M)\",\r\n\tMEN_SHOT_PUT = \"Shot Put (M)\",\r\n\tWOMEN_SHOT_PUT = \"Shot Put (W)\",\r\n\tMEN_TRIPLE_JUMP = \"Triple Jump (M)\",\r\n\tMEN_JAVELIN_THROW = \"Javelin Throw (M)\",\r\n\tWOMEN_JAVELIN_THROW = \"Javelin Throw (W)\",\r\n\tMEN_HIGH_JUMP = \"High Jump (M)\",\r\n\tWOMEN_HIGH_JUMP = \"High Jump (W)\",\r\n\tMEN_LONG_JUMP = \"Long Jump (M)\",\r\n\tWOMEN_LONG_JUMP = \"Long Jump (W)\",\r\n}\r\n\r\nenum AthleticsEventWithDistance {\r\n\tMEN_HAMMER_THROW = \"Hammer Throw (M)\",\r\n\tMEN_DISK_THROW = \"Discus Throw (M)\",\r\n\tWOMEN_DISK_THROW = \"Discus Throw (W)\",\r\n\tMEN_POLE_VAULT = \"Pole Vault (M)\",\r\n\tMEN_SHOT_PUT = \"Shot Put (M)\",\r\n\tWOMEN_SHOT_PUT = \"Shot Put (W)\",\r\n\tMEN_TRIPLE_JUMP = \"Triple Jump (M)\",\r\n\tMEN_JAVELIN_THROW = \"Javelin Throw (M)\",\r\n\tWOMEN_JAVELIN_THROW = \"Javelin Throw (W)\",\r\n\tMEN_HIGH_JUMP = \"High Jump (M)\",\r\n\tWOMEN_HIGH_JUMP = \"High Jump (W)\",\r\n\tMEN_LONG_JUMP = \"Long Jump (M)\",\r\n\tWOMEN_LONG_JUMP = \"Long Jump (W)\",\r\n}\r\nexport { AthleticsEventWithDistance };\r\n\r\nexport default AthleticsEventTypes;\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport \"./EditScores.css\";\r\nimport { useEffect, useMemo, useState, useContext, useRef } from \"react\";\r\nimport Event, { EventExceptAthleticsOrCricket } from \"../../types/Event\";\r\nimport EventCatagories from \"../../types/EventCategories\";\r\nimport FootballEvent from \"../../types/FootballEvent\";\r\nimport FootballEventBox from \"../../components/LiveEventBoxes/FootballEventBox\";\r\nimport API from \"../../Utilities/ApiEndpoints\";\r\nimport { useAuthHeader } from \"react-auth-kit\";\r\nimport { ToastContext } from \"../../Utilities/ToastContext\";\r\nimport ChessEventBox from \"../../components/LiveEventBoxes/ChessEventBox\";\r\nimport ChessEvent from \"../../types/ChessEvent\";\r\nimport SquashEventBox from \"../../components/LiveEventBoxes/SquashEventBox\";\r\nimport SquashEvent from \"../../types/SquashEvent\";\r\nimport TennisEventBox from \"../../components/LiveEventBoxes/TennisEventBox\";\r\nimport TennisEvent from \"../../types/TennisEvent\";\r\nimport AthleticsEvent, { Participant } from \"../../types/AthleticsEvent\";\r\nimport { AthleticsEventWithDistance } from \"../../types/AthleticsEventTypes\";\r\nimport { Team } from \"../../types/Team\";\r\n\r\nconst EVENT_START_BUFFER = 15 * 60 * 1000; //the duration BEFORE the startTime from when an event can be started in milliseconds\r\n\r\nconst EditScores = () => {\r\n\tconst getAccessToken = useAuthHeader();\r\n\tconst setToast = useContext(ToastContext).setToastMessage;\r\n\r\n\tconst [loading, setLoading] = useState(true);\r\n\r\n\tconst [allEvents, setAllEvents] = useState([]);\r\n\tconst liveEvents = useMemo(\r\n\t\t() => allEvents.filter((event) => event.isStarted),\r\n\t\t[allEvents]\r\n\t);\r\n\tconst liveAbleEvents = useMemo(\r\n\t\t() =>\r\n\t\t\tallEvents.filter(\r\n\t\t\t\t(e) =>\r\n\t\t\t\t\t!e.isCompleted &&\r\n\t\t\t\t\t(e.startTime as number) <= new Date().getTime() + EVENT_START_BUFFER\r\n\t\t\t),\r\n\t\t[allEvents]\r\n\t);\r\n\tconst [eventToToggle, setEventToToggle] = useState();\r\n\tconst confirmToggleDialog = useRef(null);\r\n\tconst athlEventWinnerDialog = useRef(null);\r\n\tconst [manualWinner, setManualWinner] = useState(\"DRAW\");\r\n\r\n\tconst openDialog = () => {\r\n\t\tconfirmToggleDialog.current?.showModal();\r\n\t};\r\n\tconst closeDialog = () => {\r\n\t\tconfirmToggleDialog.current?.close();\r\n\t\tathlEventWinnerDialog.current?.close();\r\n\t};\r\n\r\n\tconst fetchEvents = async () => {\r\n\t\tconst result: Event[] = (await API.GetEvents()).data;\r\n\t\tsetAllEvents(result);\r\n\t\tsetLoading(false);\r\n\t};\r\n\r\n\tconst handleScoreUpdate = async (id: string, score: any) => {\r\n\t\ttry {\r\n\t\t\tawait API.UpdateScore(getAccessToken(), id, score);\r\n\t\t\tconst newEvents = allEvents.map((e) => {\r\n\t\t\t\tif (e._id === id) return { ...e, score: score };\r\n\t\t\t\telse return e;\r\n\t\t\t});\r\n\t\t\tsetAllEvents(newEvents);\r\n\t\t} catch (error: any) {\r\n\t\t\ttry {\r\n\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t} catch {\r\n\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tfetchEvents();\r\n\t}, []);\r\n\r\n\tconst getEventBox = (event: Event, i: number): React.JSX.Element => {\r\n\t\tswitch (event.event) {\r\n\t\t\tcase EventCatagories.FOOTBALL:\r\n\t\t\t\treturn (\r\n\t\t\t\t\t handleScoreUpdate(event._id!, score)}\r\n\t\t\t\t\t\tkey={i}\r\n\t\t\t\t\t\tevent={event as FootballEvent}\r\n\t\t\t\t\t/>\r\n\t\t\t\t);\r\n\t\t\tcase EventCatagories.CHESS:\r\n\t\t\t\treturn (\r\n\t\t\t\t\t handleScoreUpdate(event._id!, score)}\r\n\t\t\t\t\t\tkey={i}\r\n\t\t\t\t\t\tevent={event as ChessEvent}\r\n\t\t\t\t\t/>\r\n\t\t\t\t);\r\n\t\t\tcase EventCatagories.SQUASH_MEN:\r\n\t\t\tcase EventCatagories.SQUASH_WOMEN:\r\n\t\t\t\treturn (\r\n\t\t\t\t\t handleScoreUpdate(event._id!, score)}\r\n\t\t\t\t\t\tkey={i}\r\n\t\t\t\t\t\tevent={event as SquashEvent}\r\n\t\t\t\t\t/>\r\n\t\t\t\t);\r\n\t\t\tcase EventCatagories.TENNIS_MEN:\r\n\t\t\tcase EventCatagories.TENNIS_WOMEN:\r\n\t\t\t\treturn (\r\n\t\t\t\t\t handleScoreUpdate(event._id!, score)}\r\n\t\t\t\t\t\tkey={i}\r\n\t\t\t\t\t\tevent={event as TennisEvent}\r\n\t\t\t\t\t/>\r\n\t\t\t\t);\r\n\t\t\tdefault:\r\n\t\t\t\tconsole.log(\"no card\" + event.event);\r\n\t\t\t\treturn <>;\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tLive Events\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Caution

\r\n\t\t\t\t\tAre you sure you want to end this event?\r\n\t\t\t\t\t
{\" \"}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{eventToToggle?.event}{\" \"}\r\n\t\t\t\t\t\t{eventToToggle?.event === EventCatagories.ATHLETICS\r\n\t\t\t\t\t\t\t? (eventToToggle as AthleticsEvent)?.athleticsEventType\r\n\t\t\t\t\t\t\t: eventToToggle?.title}{\" \"}\r\n\t\t\t\t\t\t|{\" \"}\r\n\t\t\t\t\t\t{eventToToggle?.event === EventCatagories.ATHLETICS\r\n\t\t\t\t\t\t\t? (eventToToggle as AthleticsEvent)?.title\r\n\t\t\t\t\t\t\t: eventToToggle?.subtitle}\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{eventToToggle?.event !== EventCatagories.ATHLETICS &&\r\n\t\t\t\t\t\teventToToggle?.event !== EventCatagories.CRICKET &&\r\n\t\t\t\t\t\t(eventToToggle as EventExceptAthleticsOrCricket)?.score\r\n\t\t\t\t\t\t\t.teamA_points ===\r\n\t\t\t\t\t\t\t(eventToToggle as EventExceptAthleticsOrCricket)?.score\r\n\t\t\t\t\t\t\t\t.teamB_points && (\r\n\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\tThe Teams have same score.\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t setManualWinner(e.target.value)}\r\n\t\t\t\t\t\t\t\t\tvalue={manualWinner}\r\n\t\t\t\t\t\t\t\t\tstyle={{ position: \"unset\" }}\r\n\t\t\t\t\t\t\t\t\tclassName=\"styledButton dropdown\"\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t\t\tif (eventToToggle?.event === EventCatagories.ATHLETICS) {\r\n\t\t\t\t\t\t\t\tconfirmToggleDialog.current?.close();\r\n\t\t\t\t\t\t\t\tathlEventWinnerDialog.current!.showModal();\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\tif (manualWinner !== \"DRAW\") {\r\n\t\t\t\t\t\t\t\t\tconst winner = {\r\n\t\t\t\t\t\t\t\t\t\tteam: eventToToggle!.teams.find(\r\n\t\t\t\t\t\t\t\t\t\t\t(t) => t.name === manualWinner\r\n\t\t\t\t\t\t\t\t\t\t) as Team,\r\n\t\t\t\t\t\t\t\t\t};\r\n\t\t\t\t\t\t\t\t\tAPI.SetWinnerManually(\r\n\t\t\t\t\t\t\t\t\t\tgetAccessToken(),\r\n\t\t\t\t\t\t\t\t\t\teventToToggle!._id!,\r\n\t\t\t\t\t\t\t\t\t\twinner\r\n\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tawait API.ToggleEventStatus(\r\n\t\t\t\t\t\t\t\t\tgetAccessToken(),\r\n\t\t\t\t\t\t\t\t\teventToToggle!._id!\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\tsetToast(\"Successfull\");\r\n\t\t\t\t\t\t\t\tsetLoading(true);\r\n\t\t\t\t\t\t\t\tfetchEvents();\r\n\t\t\t\t\t\t\t} catch (error: any) {\r\n\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t\t\t\t\t\t} catch {\r\n\t\t\t\t\t\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tconfirmToggleDialog.current?.close();\r\n\t\t\t\t\t\t\tsetEventToToggle(undefined);\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t{eventToToggle?.event === EventCatagories.ATHLETICS && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{(Object.values(AthleticsEventWithDistance) as any[]).includes(\r\n\t\t\t\t\t\t\t\t(eventToToggle as AthleticsEvent).athleticsEventType\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t? \"Enter Distances (In meter)\"\r\n\t\t\t\t\t\t\t\t: \"Enter Times (min:sec:millisec)\"}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\tathlEventWinnerDialog.current?.close();\r\n\t\t\t\t\t\t\t\tsetEventToToggle(undefined);\r\n\t\t\t\t\t\t\t\tsetLoading(true);\r\n\t\t\t\t\t\t\t\tfetchEvents();\r\n\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t{!loading ? (\r\n\t\t\t\t\tliveEvents && (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{liveEvents.map((event, i) => getEventBox(event, i))}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t)\r\n\t\t\t\t) : (\r\n\t\t\t\t\t<>Loading Events Data...\r\n\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t\t{liveAbleEvents.length !== 0 ? (\r\n\t\t\t\t\t\tliveAbleEvents.map((event, i) => (\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{event.event} -{\" \"}\r\n\t\t\t\t\t\t\t\t{(event as AthleticsEvent).athleticsEventType\r\n\t\t\t\t\t\t\t\t\t? (event as AthleticsEvent).athleticsEventType + \" - \"\r\n\t\t\t\t\t\t\t\t\t: null}\r\n\t\t\t\t\t\t\t\t{event.title} -{\" \"}\r\n\t\t\t\t\t\t\t\t{new Date(event.startTime).toLocaleDateString(\"en-GB\")} - Start\r\n\t\t\t\t\t\t\t\tTime:{\" \"}\r\n\t\t\t\t\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\t\t\t\t\thour12: true,\r\n\t\t\t\t\t\t\t\t})}{\" \"}\r\n\t\t\t\t\t\t\t\t-{\" \"}\r\n\t\t\t\t\t\t\t\t{event.isStarted ? (\r\n\t\t\t\t\t\t\t\t\tIs Live\r\n\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\"Not Live\"\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t{event.event === EventCatagories.ATHLETICS\r\n\t\t\t\t\t\t\t\t\t\t? (event as AthleticsEvent).participants[0].map((p, i) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{p.name} : {p.team}\r\n\t\t\t\t\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t\t ))\r\n\t\t\t\t\t\t\t\t\t\t: event.teams.map((team, i) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t
  • {team.name}
  • \r\n\t\t\t\t\t\t\t\t\t\t ))}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tif (event!.isStarted) {\r\n\t\t\t\t\t\t\t\t\t\t\tif ((event!.startTime as number) > new Date().getTime()) {\r\n\t\t\t\t\t\t\t\t\t\t\t\tsetToast(\"Can't end this event right now!\");\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\tsetEventToToggle(event);\r\n\t\t\t\t\t\t\t\t\t\t\tsetManualWinner(\"DRAW\");\r\n\t\t\t\t\t\t\t\t\t\t\topenDialog();\r\n\t\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\t\t\t\tawait API.ToggleEventStatus(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tgetAccessToken(),\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tevent!._id!\r\n\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t\tsetToast(\"Successfull\");\r\n\t\t\t\t\t\t\t\t\t\t\t\tsetLoading(true);\r\n\t\t\t\t\t\t\t\t\t\t\t\tfetchEvents();\r\n\t\t\t\t\t\t\t\t\t\t\t} catch (error: any) {\r\n\t\t\t\t\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t\t\t\t\t\t\t\t\t\t} catch {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t{event.isStarted ? \"End Event\" : \"Go Live\"}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t))\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t<>No Events which can be toggled live!\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default EditScores;\r\n\r\nconst AthlEventParticipantDetailsForm = ({\r\n\tevent,\r\n\tonSuccess,\r\n}: {\r\n\tevent: AthleticsEvent;\r\n\tonSuccess: () => void;\r\n}) => {\r\n\tconst getAccessToken = useAuthHeader();\r\n\tconst setToast = useContext(ToastContext).setToastMessage;\r\n\tconst [participants, setParticipants] = useState(event.participants[0]);\r\n\r\n\tconst getMillis = (time: string) => {\r\n\t\tconst timeParts = time.split(\":\");\r\n\t\tlet millis = Number(timeParts[0]) * 60 * 1000;\r\n\t\tif (timeParts.length >= 2) millis += Number(timeParts[1]) * 1000;\r\n\t\tif (timeParts.length >= 3) millis += Number(timeParts[2]);\r\n\t\treturn millis;\r\n\t};\r\n\r\n\treturn (\r\n\t\t {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tlet newParticipants: Participant[] = [];\r\n\t\t\t\tparticipants.forEach((p) => {\r\n\t\t\t\t\tif (p.detail === undefined) {\r\n\t\t\t\t\t\tsetToast(\"Incomplete Details\");\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tnewParticipants.push(\r\n\t\t\t\t\t\t(Object.values(AthleticsEventWithDistance) as any[]).includes(\r\n\t\t\t\t\t\t\t(event as AthleticsEvent).athleticsEventType\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t? { name: p.name, team: p.team, distance: Number(p.detail) }\r\n\t\t\t\t\t\t\t: { name: p.name, team: p.team, time: getMillis(p.detail) }\r\n\t\t\t\t\t);\r\n\t\t\t\t});\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait API.SetAthleticsEventDetails(\r\n\t\t\t\t\t\tgetAccessToken(),\r\n\t\t\t\t\t\tevent._id!,\r\n\t\t\t\t\t\tnewParticipants\r\n\t\t\t\t\t);\r\n\t\t\t\t\tawait API.ToggleEventStatus(getAccessToken(), event!._id!);\r\n\t\t\t\t\tsetToast(\"Successfull\");\r\n\t\t\t\t\tonSuccess();\r\n\t\t\t\t} catch (error: any) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t\t\t} catch {\r\n\t\t\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}}\r\n\t\t>\r\n\t\t\t{participants.map((p, i) => (\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\tsetParticipants(\r\n\t\t\t\t\t\t\t\tparticipants.map((op) =>\r\n\t\t\t\t\t\t\t\t\top.name === p.name ? { ...op, detail: e.target.value } : op\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tvalue={participants[i].detail}\r\n\t\t\t\t\t\tclassName=\"styledInput\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t
\r\n\t\t\t))}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n","import { Team } from \"../../../types/Team\";\r\n\r\nconst TeamRow = ({\r\n\tteam,\r\n\tonDelete,\r\n}: {\r\n\tteam: Team;\r\n\tonDelete: (teamToDelete: Team) => void;\r\n}) => {\r\n\treturn (\r\n\t\t\r\n\t\t\t{team.name}\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default TeamRow;\r\n","import { useRef, useState } from \"react\";\r\nimport TeamRow from \"./components/TeamRow\";\r\nimport { Team } from \"../../types/Team\";\r\n\r\nconst Teams = ({\r\n\tteams,\r\n\tonTeamAdd,\r\n\tonTeamDelete,\r\n}: {\r\n\tteams: Team[];\r\n\tonTeamAdd: (teamToAdd: Team) => void;\r\n\tonTeamDelete: (teamToDelete: Team) => void;\r\n}) => {\r\n\tconst addTeamDialog = useRef(null);\r\n\tconst confirmDeleteDialog = useRef(null);\r\n\tconst [newTeamName, setNewTeamName] = useState(\"\");\r\n\tconst [teamToDelete, setTeamToDelete] = useState();\r\n\tconst [errorMsg, setErrorMsg] = useState(\"\");\r\n\r\n\tconst openDialog = () => {\r\n\t\taddTeamDialog.current?.showModal();\r\n\t};\r\n\tconst closeDialog = () => {\r\n\t\taddTeamDialog.current?.close();\r\n\t\tconfirmDeleteDialog.current?.close();\r\n\t};\r\n\r\n\tconst handleAddTeam = (e: any) => {\r\n\t\te.preventDefault();\r\n\t\tif (newTeamName === \"\") {\r\n\t\t\tsetErrorMsg(\"Enter Name!\");\r\n\t\t\tsetTimeout(() => setErrorMsg(\"\"), 3000);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tonTeamAdd({ name: newTeamName });\r\n\t\taddTeamDialog.current?.close();\r\n\t};\r\n\r\n\tconst confirmTeamDelete = (teamToDelete: Team) => {\r\n\t\tsetTeamToDelete(teamToDelete);\r\n\t\tconfirmDeleteDialog.current?.showModal();\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Add Team Details

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setNewTeamName(e.target.value)}\r\n\t\t\t\t\t\t\t\tvalue={newTeamName}\r\n\t\t\t\t\t\t\t\tclassName=\"styledInput\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{errorMsg}\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Caution

\r\n\t\t\t\t\tAre you sure you want to Delete\r\n\t\t\t\t\t
{teamToDelete?.name} ?\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t\t\tonTeamDelete(teamToDelete as Team);\r\n\t\t\t\t\t\t\tconfirmDeleteDialog.current?.close();\r\n\t\t\t\t\t\t\tsetTeamToDelete(undefined);\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{teams.map((team, i) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t\r\n\t\t\t\t
Team NameAction
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default Teams;\r\n","import Event from \"./Event\";\r\nimport { Team } from \"./Team\";\r\n\r\nexport default interface TennisEvent extends Event {\r\n\tmatchType: MatchTypes;\r\n\twinner?: {\r\n\t\tteam: Team;\r\n\t\tparticipants: string[];\r\n\t};\r\n\tscore: TennisScore;\r\n}\r\n\r\nexport interface TennisScore {\r\n\tteamA_points: number;\r\n\tteamB_points: number;\r\n}\r\n\r\nexport enum MatchTypes {\r\n\tDOUBLES = \"Doubles\",\r\n\tSINGLES = \"Singles\",\r\n}\r\n","enum AthleticsRounds {\r\n\tSEMIS = \"Semi-Final\",\r\n\tFINAL = \"Final\",\r\n}\r\nexport default AthleticsRounds;\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport \"handsontable/dist/handsontable.full.min.css\";\r\nimport { HotTable } from \"@handsontable/react\";\r\nimport {\r\n\tregisterCellType,\r\n\tTimeCellType,\r\n\tDropdownCellType,\r\n\tDateCellType,\r\n} from \"handsontable/cellTypes\";\r\nimport { registerPlugin, ExportFile, CopyPaste } from \"handsontable/plugins\";\r\nimport EventCatagories from \"../../types/EventCategories\";\r\nimport { Team } from \"../../types/Team\";\r\nimport { useRef, useContext, useState, useEffect, useMemo } from \"react\";\r\nimport \"./ScheduleEditor.css\";\r\nimport { ToastContext } from \"../../Utilities/ToastContext\";\r\nimport API from \"../../Utilities/ApiEndpoints\";\r\nimport Event from \"../../types/Event\";\r\nimport { useAuthHeader } from \"react-auth-kit\";\r\nimport { socket } from \"../../Utilities/Socket\";\r\nimport { MatchTypes } from \"../../types/TennisEvent\";\r\nimport AthleticsEventTypes from \"../../types/AthleticsEventTypes\";\r\nimport AthleticsRounds from \"../../types/AthleticsRounds\";\r\nimport AthleticsEvent from \"../../types/AthleticsEvent\";\r\n\r\nregisterCellType(TimeCellType);\r\nregisterCellType(DropdownCellType);\r\nregisterCellType(DateCellType);\r\n\r\nregisterPlugin(ExportFile);\r\nregisterPlugin(CopyPaste);\r\n\r\nconst getTime = (dateString: string, time: string) => {\r\n\tvar dateParts = dateString.split(\"/\");\r\n\tvar dateObject = new Date(\r\n\t\tdateParts[1] + \"/\" + dateParts[0] + \"/\" + dateParts[2]\r\n\t);\r\n\tfunction getSeconds(time: string): number {\r\n\t\tlet timeParts = time.split(\":\");\r\n\t\ttimeParts[3] = timeParts[2].split(\" \")[1];\r\n\t\ttimeParts[2] = timeParts[2].split(\" \")[0];\r\n\t\tlet seconds =\r\n\t\t\t(Number(timeParts[0]) * 60 + Number(timeParts[1])) * 60 +\r\n\t\t\tNumber(timeParts[2]);\r\n\t\tif (timeParts[3] === \"pm\" || timeParts[3] === \"PM\") seconds += 12 * 60 * 60;\r\n\t\treturn seconds;\r\n\t}\r\n\tdateObject.setTime(dateObject.getTime() + getSeconds(time) * 1000);\r\n\treturn dateObject.getTime();\r\n};\r\n\r\nconst makeParticipantsAndTeamsObj = (arr: any[]) => {\r\n\tlet t: any[] = [];\r\n\tlet p: any[] = [];\r\n\tfor (let i = 0; i < arr.indexOf(null); i += 2) {\r\n\t\tconst name = arr[i];\r\n\t\tconst team = arr[i + 1];\r\n\t\tt.push(team);\r\n\t\tp.push({ name, team });\r\n\t}\r\n\treturn { teams: t, participants: [p] };\r\n};\r\n\r\nconst makeEventsArrayForDatabase = (data: any[]) => {\r\n\tconst events = data.map((arr: any[]) => {\r\n\t\treturn {\r\n\t\t\tevent: arr[0],\r\n\t\t\tmatchType: arr[1],\r\n\t\t\ttitle: arr[2],\r\n\t\t\tsubtitle: arr[3],\r\n\t\t\tstartTime: getTime(arr[4], arr[5]),\r\n\t\t\tendTime: getTime(arr[4], arr[6]),\r\n\t\t\tteams: arr.slice(7, 9),\r\n\t\t\teventLink: arr[9],\r\n\t\t};\r\n\t});\r\n\treturn events;\r\n};\r\nconst makeAthlEventsArrayForDatabase = (data: any[]) => {\r\n\tconst events = data.map((arr: any[]) => {\r\n\t\treturn {\r\n\t\t\tevent: EventCatagories.ATHLETICS,\r\n\t\t\tathleticsEventType: arr[0],\r\n\t\t\ttitle: arr[1],\r\n\t\t\tstartTime: getTime(arr[2], arr[3]),\r\n\t\t\tendTime: getTime(arr[2], arr[4]),\r\n\t\t\t...makeParticipantsAndTeamsObj(arr.slice(5)),\r\n\t\t};\r\n\t});\r\n\treturn events;\r\n};\r\n\r\nconst ScheduleEditor = ({ teams }: { teams: Team[] }) => {\r\n\tconst hotRef = useRef(null);\r\n\tconst athlTableRef = useRef(null);\r\n\tconst setToast = useContext(ToastContext).setToastMessage;\r\n\tconst getAccessToken = useAuthHeader();\r\n\r\n\tconst [allEvents, setAllEvents] = useState([]);\r\n\tconst [athlEvents, setAthlEvents] = useState([]);\r\n\tconst [loading, setLoading] = useState(true);\r\n\r\n\tconst completedEventsIndexes = useMemo(() => {\r\n\t\tlet indexes: any[] = [];\r\n\t\tallEvents.forEach((e, i) => {\r\n\t\t\tif (e.isCompleted || e.isStarted) indexes.push(i);\r\n\t\t});\r\n\t\treturn indexes;\r\n\t}, [allEvents]);\r\n\tconst completedAthlEventsIndexes = useMemo(() => {\r\n\t\tlet indexes: any[] = [];\r\n\t\tathlEvents.forEach((e, i) => {\r\n\t\t\tif (e.isCompleted || e.isStarted) indexes.push(i);\r\n\t\t});\r\n\t\treturn indexes;\r\n\t}, [athlEvents]);\r\n\r\n\tuseEffect(() => {\r\n\t\tconst hot = hotRef?.current?.hotInstance;\r\n\t\thot?.updateSettings({\r\n\t\t\tcells(row, col) {\r\n\t\t\t\tlet cellProperties: any = {};\r\n\t\t\t\tif (completedEventsIndexes.includes(row)) {\r\n\t\t\t\t\tcellProperties.readOnly = true;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn cellProperties;\r\n\t\t\t},\r\n\t\t});\r\n\t}, [completedEventsIndexes]);\r\n\r\n\tconst formatForTable = (events: any[]) => {\r\n\t\tconst fEvents = events.map((e) => {\r\n\t\t\treturn {\r\n\t\t\t\t...e,\r\n\t\t\t\tdate: new Date(e.startTime).toLocaleDateString(\"en-GB\"),\r\n\t\t\t\tstartTime: new Date(e.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\tsecond: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t}),\r\n\t\t\t\tendTime: new Date(e.endTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\tsecond: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t}),\r\n\t\t\t};\r\n\t\t});\r\n\t\tfEvents.forEach((e) => {\r\n\t\t\te.teams.forEach((team: any, i: number) => {\r\n\t\t\t\tconst key: string = \"team\" + i;\r\n\t\t\t\te[key] = team.name;\r\n\t\t\t});\r\n\t\t});\r\n\t\treturn fEvents as Event[];\r\n\t};\r\n\r\n\tconst formatForAthlTable = (events: AthleticsEvent[]) => {\r\n\t\tconst fEvents: any[] = events.map((e) => {\r\n\t\t\treturn {\r\n\t\t\t\t...e,\r\n\t\t\t\tdate: new Date(e.startTime).toLocaleDateString(\"en-GB\"),\r\n\t\t\t\tstartTime: new Date(e.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\tsecond: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t}),\r\n\t\t\t\tendTime: new Date(e.endTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\tsecond: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t}),\r\n\t\t\t};\r\n\t\t});\r\n\t\tfEvents.forEach((e) => {\r\n\t\t\te.participants[0].forEach((participant: any, i: number) => {\r\n\t\t\t\tlet key = \"participant\" + i;\r\n\t\t\t\te[key] = participant.name;\r\n\t\t\t\tkey = \"team\" + i;\r\n\t\t\t\te[key] = participant.team;\r\n\t\t\t});\r\n\t\t});\r\n\t\treturn fEvents as Event[];\r\n\t};\r\n\r\n\tconst fetchEvents = async () => {\r\n\t\tconst result: Event[] = (await API.GetEvents()).data;\r\n\t\tconst otherEvents = result.filter(\r\n\t\t\t(e) => e.event !== EventCatagories.ATHLETICS\r\n\t\t);\r\n\t\tconst athlEvents = result.filter(\r\n\t\t\t(e) => e.event === EventCatagories.ATHLETICS\r\n\t\t);\r\n\t\tsetAllEvents(formatForTable(otherEvents));\r\n\t\tsetAthlEvents(formatForAthlTable(athlEvents as AthleticsEvent[]));\r\n\t\tsetLoading(false);\r\n\t};\r\n\r\n\tconst saveTableData = async () => {\r\n\t\tconst hot = hotRef?.current?.hotInstance;\r\n\t\tconst athlTable = athlTableRef?.current?.hotInstance;\r\n\t\tconst allRows = hot?.getData()!;\r\n\t\tconst athlRows = athlTable?.getData()!;\r\n\t\tconst notCompletedEventsRows = allRows.filter(\r\n\t\t\t(row: any[], i) => !completedEventsIndexes.includes(i)\r\n\t\t);\r\n\t\tconst notCompletedAthlEventsRows = athlRows.filter(\r\n\t\t\t(row: any[], i) => !completedAthlEventsIndexes.includes(i)\r\n\t\t);\r\n\t\tconst validRows = notCompletedEventsRows!.filter((arr) => arr[0] !== null);\r\n\t\tconst validAthlRows = notCompletedAthlEventsRows!.filter(\r\n\t\t\t(arr) => arr[0] !== null\r\n\t\t);\r\n\t\tif (validRows?.length === 0 && validAthlRows?.length === 0) {\r\n\t\t\t//set schedule as empty\r\n\t\t\ttry {\r\n\t\t\t\tAPI.PostSchedule([], getAccessToken());\r\n\t\t\t\tsetToast(\"Updated Schedule Successfully!\");\r\n\t\t\t} catch (error: any) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t\t} catch {\r\n\t\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tfor (let i = 0; i < validRows!.length; i++) {\r\n\t\t\tconst row: any[] = validRows![i];\r\n\t\t\tlet last = row.length;\r\n\t\t\tlast = row.indexOf(null, 2) !== -1 ? row.indexOf(null, 2) : last;\r\n\t\t\tlast =\r\n\t\t\t\trow.indexOf(\"\", 2) !== -1 && row.indexOf(\"\", 2) < last\r\n\t\t\t\t\t? row.indexOf(\"\", 2)\r\n\t\t\t\t\t: last;\r\n\t\t\tif (last <= 8) {\r\n\t\t\t\tsetToast(\"Incomplete Details in a Row!\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t\tfor (let i = 0; i < validAthlRows!.length; i++) {\r\n\t\t\tconst row: any[] = validAthlRows![i];\r\n\t\t\tlet last = row.length;\r\n\t\t\tlast = row.indexOf(null, 1) !== -1 ? row.indexOf(null, 1) : last;\r\n\t\t\tlast =\r\n\t\t\t\trow.indexOf(\"\", 1) !== -1 && row.indexOf(\"\", 1) < last\r\n\t\t\t\t\t? row.indexOf(\"\", 1)\r\n\t\t\t\t\t: last;\r\n\t\t\tif (last <= 8 || (last - 5) % 2 !== 0) {\r\n\t\t\t\tsetToast(\"Incomplete Details in a Row!\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t\tconst data = [\r\n\t\t\t...makeEventsArrayForDatabase(validRows),\r\n\t\t\t...makeAthlEventsArrayForDatabase(validAthlRows),\r\n\t\t];\r\n\t\t//data to be sent to the server\r\n\t\ttry {\r\n\t\t\tAPI.PostSchedule(data, getAccessToken());\r\n\t\t\tsetToast(\"Updated Schedule Successfully!\");\r\n\t\t} catch (error: any) {\r\n\t\t\ttry {\r\n\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t} catch {\r\n\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tconst updateEventsStatus = (data: string) => {\r\n\t\t\tconst eventToBeUpdated = JSON.parse(data);\r\n\t\t\tsetAllEvents((prev) =>\r\n\t\t\t\tprev.map((event) =>\r\n\t\t\t\t\teventToBeUpdated.eventID === event._id\r\n\t\t\t\t\t\t? { ...event, isStarted: eventToBeUpdated.isStarted }\r\n\t\t\t\t\t\t: event\r\n\t\t\t\t)\r\n\t\t\t);\r\n\t\t};\r\n\t\tsocket.on(\"eventStartOrEnd\", updateEventsStatus);\r\n\t\tfetchEvents();\r\n\r\n\t\treturn () => {\r\n\t\t\tsocket.off(\"eventStartOrEnd\", updateEventsStatus);\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tSchedule Table\r\n\t\t\t
\r\n\t\t\t{loading ? (\r\n\t\t\t\t<>Loading All Events Data..\r\n\t\t\t) : (\r\n\t\t\t\t<>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tSave\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t s !== EventCatagories.ATHLETICS\r\n\t\t\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"matchType\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: Object.values(MatchTypes),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{ data: \"title\", type: \"text\" },\r\n\t\t\t\t\t\t\t\t{ data: \"subtitle\", type: \"text\" },\r\n\t\t\t\t\t\t\t\t{ data: \"date\", type: \"date\", correctFormat: true },\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"startTime\",\r\n\t\t\t\t\t\t\t\t\ttype: \"time\",\r\n\t\t\t\t\t\t\t\t\ttimeFormat: \"h:mm:ss a\",\r\n\t\t\t\t\t\t\t\t\tcorrectFormat: true,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"endTime\",\r\n\t\t\t\t\t\t\t\t\ttype: \"time\",\r\n\t\t\t\t\t\t\t\t\ttimeFormat: \"h:mm:ss a\",\r\n\t\t\t\t\t\t\t\t\tcorrectFormat: true,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team0\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team1\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{ data: \"eventLink\", type: \"text\" },\r\n\t\t\t\t\t\t\t]}\r\n\t\t\t\t\t\t\tcolHeaders={[\r\n\t\t\t\t\t\t\t\t\"Event\",\r\n\t\t\t\t\t\t\t\t\"MatchType?\",\r\n\t\t\t\t\t\t\t\t\"Name\",\r\n\t\t\t\t\t\t\t\t\"Subtitle\",\r\n\t\t\t\t\t\t\t\t\"Date\",\r\n\t\t\t\t\t\t\t\t\"Start Time\",\r\n\t\t\t\t\t\t\t\t\"Estimated End Time\",\r\n\t\t\t\t\t\t\t\t\"Team 1\",\r\n\t\t\t\t\t\t\t\t\"Team 2\",\r\n\t\t\t\t\t\t\t\t\"Score Link (for Cricket)\",\r\n\t\t\t\t\t\t\t]}\r\n\t\t\t\t\t\t\tminSpareRows={2}\r\n\t\t\t\t\t\t\tcolWidths={[150, 100, 150, 150, 100, 100, 150, 150, 150, 250]}\r\n\t\t\t\t\t\t\tlicenseKey=\"non-commercial-and-evaluation\" // for non-commercial use only\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t

Athletics Events Table

\r\n\t\t\t\t\t\t team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant1\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team1\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant2\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team2\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant3\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team3\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant4\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team4\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant5\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team5\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant6\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team6\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant7\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team7\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant8\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team8\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant9\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team9\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t]}\r\n\t\t\t\t\t\t\tcolHeaders={[\r\n\t\t\t\t\t\t\t\t\"Event\",\r\n\t\t\t\t\t\t\t\t\"Round\",\r\n\t\t\t\t\t\t\t\t\"Date\",\r\n\t\t\t\t\t\t\t\t\"Start Time\",\r\n\t\t\t\t\t\t\t\t\"End Time\",\r\n\t\t\t\t\t\t\t\t\"Participant 1\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 2\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 3\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 4\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 5\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 6\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 7\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 8\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 9\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 10\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t]}\r\n\t\t\t\t\t\t\tminSpareRows={2}\r\n\t\t\t\t\t\t\tcolWidths={[\r\n\t\t\t\t\t\t\t\t150, 150, 100, 100, 100, 200, 130, 200, 130, 200, 130, 200, 130,\r\n\t\t\t\t\t\t\t\t200, 130, 200, 130, 200, 130, 200, 130, 200, 130, 200, 130,\r\n\t\t\t\t\t\t\t]}\r\n\t\t\t\t\t\t\tlicenseKey=\"non-commercial-and-evaluation\" // for non-commercial use only\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default ScheduleEditor;\r\n","import { useEffect, useState } from \"react\";\r\nimport Event from \"../types/Event\";\r\nimport { useAuthHeader } from \"react-auth-kit\";\r\nimport API from \"../Utilities/ApiEndpoints\";\r\nimport { formatEventName } from \"../types/EventCategories\";\r\nimport \"./LogItem.css\";\r\n\r\ninterface Log {\r\n\teventID: string;\r\n\tuserName: string;\r\n\tprevScore: any;\r\n\tcurrentScore: any;\r\n}\r\n\r\ninterface LogItemProps {\r\n\tlogs: Log[];\r\n\teventID: string;\r\n}\r\n\r\nconst LogItem: React.FC = ({ logs, eventID }) => {\r\n\tconst [event, setEvent] = useState();\r\n\tconst getAccessToken = useAuthHeader();\r\n\tconst [dialogueOpen, setDialogueOpen] = useState(false);\r\n\r\n\tuseEffect(() => {\r\n\t\tAPI.GetEventByID(getAccessToken(), eventID).then((data) => {\r\n\t\t\tconsole.log(data.data);\r\n\t\t\tsetEvent(data.data);\r\n\t\t});\r\n\t}, []);\r\n\r\n\tif (!event) return
Loading...
;\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t{dialogueOpen && (\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{formatEventName(event.event)} {event.title} {event.subtitle}{\" \"}\r\n\t\t\t\t\t\t\t\tResult history\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t setDialogueOpen(false)}\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t×\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{logs.map((log, i) => (\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tChanged by {log.userName}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
Previous Score
\r\n\t\t\t\t\t\t\t\t\t\t\t{JSON.stringify(log.prevScore, null, 2)}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
Current Score
\r\n\t\t\t\t\t\t\t\t\t\t\t{JSON.stringify(log.currentScore, null, 2)}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\t
setDialogueOpen(true)}>\r\n\t\t\t\tClick to show{\" \"}\r\n\t\t\t\t\r\n\t\t\t\t\t{formatEventName(event.event)} {event.title} {event.subtitle}\r\n\t\t\t\t{\" \"}\r\n\t\t\t\tscore update history\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default LogItem;\r\n","import { useEffect, useState } from \"react\";\r\nimport API from \"../../../Utilities/ApiEndpoints\";\r\nimport { useAuthHeader } from \"react-auth-kit\";\r\nimport LogItem from \"../../../components/LogItem\";\r\n\r\nconst LogsViewer = () => {\r\n\tconst [logs, setLogs] = useState([]);\r\n\tconst getAccessToken = useAuthHeader();\r\n\r\n\tuseEffect(() => {\r\n\t\t// setLogs(await API.GetLogs(getAccessToken()));\r\n\t\tAPI.GetLogs(getAccessToken()).then((res) => {\r\n\t\t\tlet eventGroupedLogs: any = {};\r\n\r\n\t\t\tres.data.forEach((log: any) => {\r\n\t\t\t\tif (eventGroupedLogs[log.eventID] === undefined) {\r\n\t\t\t\t\teventGroupedLogs[log.eventID] = [];\r\n\t\t\t\t}\r\n\r\n\t\t\t\teventGroupedLogs[log.eventID].push(log);\r\n\t\t\t});\r\n\r\n\t\t\tconsole.log(Object.values(eventGroupedLogs));\r\n\t\t\tsetLogs(eventGroupedLogs);\r\n\t\t});\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
Score Edit Logs
\r\n\t\t\t
\r\n\t\t\t\t{Object.keys(logs).map((eventID) => (\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default LogsViewer;\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport { Route, Routes, useNavigate, useParams } from \"react-router\";\r\nimport SideBar from \"../../components/Sidebar\";\r\nimport { useContext, useEffect, useRef, useState } from \"react\";\r\nimport { UserRole } from \"../../types/UserRole\";\r\nimport \"./AdminDashboard.css\";\r\nimport PeopleAltIcon from \"@mui/icons-material/PeopleAlt\";\r\nimport ScoreboardIcon from \"@mui/icons-material/Scoreboard\";\r\nimport Diversity2Icon from \"@mui/icons-material/Diversity2\";\r\nimport TableChartIcon from \"@mui/icons-material/TableChart\";\r\nimport AssignmentIcon from '@mui/icons-material/Assignment';\r\nimport Users from \"./Users\";\r\nimport EditScores from \"./EditScores\";\r\nimport { useAuthHeader, useAuthUser, useSignOut } from \"react-auth-kit\";\r\nimport { AuthStateUserObject } from \"react-auth-kit/dist/types\";\r\nimport { User } from \"../../types/User\";\r\nimport UserRoleChip from \"../../components/UserRoleChip\";\r\nimport API from \"../../Utilities/ApiEndpoints\";\r\nimport { getRefreshToken } from \"../../Utilities/AuthUtils\";\r\nimport { ToastContext } from \"../../Utilities/ToastContext\";\r\nimport Teams from \"./Teams\";\r\nimport { Team } from \"../../types/Team\";\r\nimport ScheduleEditor from \"./ScheduleEditor\";\r\nimport LogsViewer from \"./components/LogsViewer\";\r\n\r\nconst AdminDashboard = () => {\r\n\tconst urlParam = useParams();\r\n\tconst navigate = useNavigate();\r\n\tconst signOut = useSignOut();\r\n\tconst setToast = useContext(ToastContext).setToastMessage;\r\n\tconst auth = useAuthUser() as () => AuthStateUserObject;\r\n\tconst user = useRef(auth() as User);\r\n\tconst getAccessToken = useAuthHeader();\r\n\r\n\tconst [showProfileDialog, setShowProfileDialog] = useState(false);\r\n\tconst [allUsers, setAllUsers] = useState([]);\r\n\tconst [allTeams, setAllTeams] = useState([]);\r\n\r\n\tconst SideBarItems = useRef([\r\n\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t? [\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: \"Users\",\r\n\t\t\t\t\tlinkTo: \"users\",\r\n\t\t\t\t\ticon: PeopleAltIcon,\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t\t: []),\r\n\t\t{\r\n\t\t\ttitle: \"Edit Scores\",\r\n\t\t\tlinkTo: \"edit_scores\",\r\n\t\t\ticon: ScoreboardIcon,\r\n\t\t},\r\n\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t? [\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: \"Teams\",\r\n\t\t\t\t\tlinkTo: \"teams\",\r\n\t\t\t\t\ticon: Diversity2Icon,\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t\t: []),\r\n\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t? [\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: \"Schedule\",\r\n\t\t\t\t\tlinkTo: \"schedule\",\r\n\t\t\t\t\ticon: TableChartIcon,\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t\t: []),\r\n\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t? [\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: \"Logs\",\r\n\t\t\t\t\tlinkTo: \"logs\",\r\n\t\t\t\t\ticon: AssignmentIcon,\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t\t: []),\r\n\t]);\r\n\r\n\tconst getRoutes = (): { linkTo: string; element: React.JSX.Element }[] => {\r\n\t\treturn [\r\n\t\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t\t? [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlinkTo: \"users\",\r\n\t\t\t\t\t\telement: (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t},\r\n\t\t\t\t]\r\n\t\t\t\t: []),\r\n\t\t\t{\r\n\t\t\t\tlinkTo: \"edit_scores\",\r\n\t\t\t\telement: ,\r\n\t\t\t},\r\n\t\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t\t? [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlinkTo: \"teams\",\r\n\t\t\t\t\t\telement: (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t},\r\n\t\t\t\t]\r\n\t\t\t\t: []),\r\n\t\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t\t? [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlinkTo: \"schedule\",\r\n\t\t\t\t\t\telement: ,\r\n\t\t\t\t\t},\r\n\t\t\t\t]\r\n\t\t\t\t: []),\r\n\t\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t\t? [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlinkTo: \"logs\",\r\n\t\t\t\t\t\telement: ,\r\n\t\t\t\t\t},\r\n\t\t\t\t]\r\n\t\t\t\t: []),\r\n\t\t];\r\n\t};\r\n\r\n\tconst fetchUsers = async () => {\r\n\t\tconst result = (await API.GetUsers(getAccessToken())).data;\r\n\t\tconst Users: User[] = result.map((obj: any) => {\r\n\t\t\treturn {\r\n\t\t\t\tname: obj.name,\r\n\t\t\t\tusername: obj.username,\r\n\t\t\t\trole: obj.role,\r\n\t\t\t\tpassword: obj.password,\r\n\t\t\t};\r\n\t\t});\r\n\t\tsetAllUsers(Users);\r\n\t};\r\n\r\n\tconst fetchTeams = async () => {\r\n\t\tconst result = (await API.GetTeams(getAccessToken())).data;\r\n\t\tconst Teams: Team[] = result.map((obj: any) => {\r\n\t\t\treturn {\r\n\t\t\t\t_id: obj._id,\r\n\t\t\t\tname: obj.name,\r\n\t\t\t\tmedals: { ...obj.medals },\r\n\t\t\t\tpoints: obj.points,\r\n\t\t\t};\r\n\t\t});\r\n\t\tsetAllTeams(Teams);\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tif (user.current.role === UserRole.ADMIN) {\r\n\t\t\tfetchUsers();\r\n\t\t\tfetchTeams();\r\n\t\t}\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (!urlParam[\"*\"]) navigate(SideBarItems.current[0].linkTo); //navigate to the first sidebar item if /admin visited\r\n\t}, []);\r\n\r\n\tconst handleLogout = async () => {\r\n\t\tnavigate(\"/login\");\r\n\t\tawait API.Logout({\r\n\t\t\trefreshToken: getRefreshToken(),\r\n\t\t});\r\n\t\tsetToast(\"Logged Out\");\r\n\t\tsignOut();\r\n\t};\r\n\r\n\tconst handleAddUser = async (userToAdd: User, password: string) => {\r\n\t\ttry {\r\n\t\t\tawait API.CreateUserWithUsernameAndPassword({\r\n\t\t\t\tname: userToAdd.name,\r\n\t\t\t\tusername: userToAdd.username,\r\n\t\t\t\trole: userToAdd.role,\r\n\t\t\t\tpassword: password,\r\n\t\t\t\taccessToken: getAccessToken(),\r\n\t\t\t});\r\n\t\t\tawait fetchUsers();\r\n\t\t\tsetToast(\"Added User \" + userToAdd.username);\r\n\t\t} catch (error: any) {\r\n\t\t\ttry {\r\n\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t} catch {\r\n\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleUserDelete = async (userToDelete: User) => {\r\n\t\tif (userToDelete.username === user.current.username) {\r\n\t\t\tsetToast(\"You Cant Delete Yourself!\");\r\n\t\t\treturn;\r\n\t\t} else {\r\n\t\t\ttry {\r\n\t\t\t\tawait API.DeleteUser(userToDelete.username, getAccessToken());\r\n\t\t\t\tawait fetchUsers();\r\n\t\t\t\tsetToast(\"Deleted User \" + userToDelete.username);\r\n\t\t\t} catch (error: any) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t\t} catch {\r\n\t\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleAddTeam = async (teamToAdd: Team) => {\r\n\t\ttry {\r\n\t\t\tawait API.AddTeam(getAccessToken(), teamToAdd);\r\n\t\t\tawait fetchTeams();\r\n\t\t\tsetToast(\"Added Team \" + teamToAdd.name);\r\n\t\t} catch (error: any) {\r\n\t\t\ttry {\r\n\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t} catch {\r\n\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleDeleteTeam = async (teamToDelete: Team) => {\r\n\t\ttry {\r\n\t\t\tawait API.DeleteTeam(getAccessToken(), teamToDelete);\r\n\t\t\tawait fetchTeams();\r\n\t\t\tsetToast(\"Deleted Team \" + teamToDelete.name);\r\n\t\t} catch (error: any) {\r\n\t\t\ttry {\r\n\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t} catch {\r\n\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t setShowProfileDialog((prev) => !prev)}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{user.current.name}{\" \"}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{showProfileDialog && (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tUsername:\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{user.current.username}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tLogout\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t{getRoutes().map(\r\n\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tlinkTo,\r\n\t\t\t\t\t\t\t\telement,\r\n\t\t\t\t\t\t\t}: { linkTo: string; element: React.JSX.Element },\r\n\t\t\t\t\t\t\ti: number\r\n\t\t\t\t\t\t) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t)}\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default AdminDashboard;\r\n","import { io } from \"socket.io-client\";\r\nimport { RootURL } from \"./ApiEndpoints\";\r\n\r\nexport const socket = io(RootURL);\r\n","import { StartingDate } from \"../../App\";\r\nimport ChessEvent, { ChessScore } from \"../../types/ChessEvent\";\r\nimport \"./LiveEventBox.css\";\r\nimport GridOnIcon from \"@mui/icons-material/GridOn\";\r\n\r\nconst ChessEventBox = ({\r\n\tevent,\r\n\tisAdmin,\r\n\tonScoreUpdate,\r\n}: {\r\n\tisAdmin?: boolean;\r\n\tonScoreUpdate?: (score: ChessScore) => void;\r\n\tevent: ChessEvent;\r\n}) => {\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\tChess\r\n\t\t\t\r\n\t\t\t

{event.title}

\r\n\t\t\t

\r\n\t\t\t\t{event.subtitle} | Day{\" \"}\r\n\t\t\t\t{new Date(event.startTime).getDate() - StartingDate + 1} -{\" \"}\r\n\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t})}{\" \"}\r\n\t\t\t

\r\n\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[0].name}

\r\n\t\t\t\t
\r\n\t\t\t\t

VS

\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[1].name}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamA_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points + 0.5,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 0.5\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points - 0.5,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 0.5\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamB_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points + 0.5,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 0.5\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points - 0.5,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 0.5\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default ChessEventBox;\r\n","import { StartingDate } from \"../../App\";\r\nimport FootballEvent, { FootballScore } from \"../../types/FootballEvent\";\r\nimport \"./LiveEventBox.css\";\r\nimport SportsSoccerIcon from \"@mui/icons-material/SportsSoccer\";\r\n\r\nconst FootballEventBox = ({\r\n\tevent,\r\n\tisAdmin,\r\n\tonScoreUpdate,\r\n}: {\r\n\tisAdmin?: boolean;\r\n\tonScoreUpdate?: (score: FootballScore) => void;\r\n\tevent: FootballEvent;\r\n}) => {\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\tFootball\r\n\t\t\t\r\n\t\t\t

{event.title}

\r\n\t\t\t

\r\n\t\t\t\t{event.subtitle} | Day{\" \"}\r\n\t\t\t\t{new Date(event.startTime).getDate() - StartingDate + 1} -{\" \"}\r\n\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t})}{\" \"}\r\n\t\t\t

\r\n\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[0].name}

\r\n\t\t\t\t
\r\n\t\t\t\t

VS

\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[1].name}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamA_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamB_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default FootballEventBox;\r\n","import { StartingDate } from \"../../App\";\r\nimport EventCatagories from \"../../types/EventCategories\";\r\nimport SquashEvent, { SquashScore } from \"../../types/SquashEvent\";\r\nimport \"./LiveEventBox.css\";\r\nimport SportsTennisIcon from \"@mui/icons-material/SportsTennis\";\r\n\r\nconst SquashEventBox = ({\r\n\tevent,\r\n\tisAdmin,\r\n\tonScoreUpdate,\r\n}: {\r\n\tisAdmin?: boolean;\r\n\tonScoreUpdate?: (score: SquashScore) => void;\r\n\tevent: SquashEvent;\r\n}) => {\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{event.event === EventCatagories.SQUASH_MEN\r\n\t\t\t\t\t\t? \"Men's Squash\"\r\n\t\t\t\t\t\t: \"Women's Squash\"}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t

{event.title}

\r\n\t\t\t

\r\n\t\t\t\t{event.subtitle} | Day{\" \"}\r\n\t\t\t\t{new Date(event.startTime).getDate() - StartingDate + 1} -{\" \"}\r\n\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t})}{\" \"}\r\n\t\t\t

\r\n\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[0].name}

\r\n\t\t\t\t
\r\n\t\t\t\t

VS

\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[1].name}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamA_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamB_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default SquashEventBox;\r\n","import { StartingDate } from \"../../App\";\r\nimport EventCatagories from \"../../types/EventCategories\";\r\nimport TennisEvent, { TennisScore } from \"../../types/TennisEvent\";\r\nimport \"./LiveEventBox.css\";\r\nimport SportsTennisIcon from \"@mui/icons-material/SportsTennis\";\r\n\r\nconst TennisEventBox = ({\r\n\tevent,\r\n\tisAdmin,\r\n\tonScoreUpdate,\r\n}: {\r\n\tisAdmin?: boolean;\r\n\tonScoreUpdate?: (score: TennisScore) => void;\r\n\tevent: TennisEvent;\r\n}) => {\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{event.event === EventCatagories.TENNIS_MEN\r\n\t\t\t\t\t\t? \"Men's Tennis\"\r\n\t\t\t\t\t\t: \"Women's Tennis\"}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t

\r\n\t\t\t\t{event.title} | {event.matchType}\r\n\t\t\t

\r\n\t\t\t

\r\n\t\t\t\t{event.subtitle} | Day{\" \"}\r\n\t\t\t\t{new Date(event.startTime).getDate() - StartingDate + 1} -{\" \"}\r\n\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t})}{\" \"}\r\n\t\t\t

\r\n\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[0].name}

\r\n\t\t\t\t
\r\n\t\t\t\t

VS

\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[1].name}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamA_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamB_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default TennisEventBox;\r\n","enum EventCatagories {\r\n\tCRICKET = \"Cricket\",\r\n\tFOOTBALL = \"Football\",\r\n\tSQUASH_MEN = \"Squash_men\",\r\n\tCHESS = \"Chess\",\r\n\tSQUASH_WOMEN = \"Squash_women\",\r\n\tTENNIS_WOMEN = \"Tennis_women\",\r\n\tTENNIS_MEN = \"Tennis_men\",\r\n\tATHLETICS = \"Athletics\",\r\n}\r\n\r\nexport const formatEventName = (e: string) => {\r\n\tlet fName = \"\";\r\n\tlet hasU = false;\r\n\tfor (let i = 0; i < e.length; i++) {\r\n\t\tconst char = e.charAt(i);\r\n\t\tif (char === \"_\") {\r\n\t\t\thasU = true;\r\n\t\t\tfName += \" (\";\r\n\t\t} else {\r\n\t\t\tfName += char;\r\n\t\t}\r\n\t}\r\n\tif (hasU) fName += \")\";\r\n\treturn fName;\r\n};\r\n\r\nexport default EventCatagories;\r\n"],"names":["_ref","items","navigate","useNavigate","_jsx","className","children","map","item","i","_jsxs","tabIndex","onClick","linkTo","icon","fontSize","title","UserRole","role","style","backgroundColor","ADMIN","user","onDelete","_useState","useState","_useState2","_slicedToArray","showPassword","setShowPassword","name","setTimeout","password","username","UserRoleChip","users","onUserAdd","newName","setNewName","_useState3","_useState4","newUsername","setNewUsername","_useState5","_useState6","newPassword","setNewPassword","_useState7","_useState8","errorMsg","setErrorMsg","_useState9","SCORE_EDITOR","_useState10","newRole","setNewRole","addUserDialog","useRef","_addUserDialog$curren","current","showModal","ref","_addUserDialog$curren2","close","onSubmit","e","_addUserDialog$curren3","preventDefault","onChange","target","value","type","UserRow","AthleticsEventTypes","AthleticsEventWithDistance","getAccessToken","useAuthHeader","setToast","useContext","ToastContext","setToastMessage","loading","setLoading","allEvents","setAllEvents","liveEvents","useMemo","filter","event","isStarted","liveAbleEvents","isCompleted","startTime","Date","getTime","eventToToggle","setEventToToggle","confirmToggleDialog","athlEventWinnerDialog","manualWinner","setManualWinner","openDialog","_confirmToggleDialog$","closeDialog","_confirmToggleDialog$2","_athlEventWinnerDialo","fetchEvents","_asyncToGenerator","_regeneratorRuntime","mark","_callee","result","wrap","_context","prev","next","API","GetEvents","sent","data","stop","apply","arguments","handleScoreUpdate","_ref2","_callee2","id","score","newEvents","_context2","UpdateScore","_id","_objectSpread","t0","JSON","parse","request","response","message","_unused","console","log","_x","_x2","useEffect","fontWeight","EventCatagories","ATHLETICS","athleticsEventType","subtitle","CRICKET","teamA_points","teamB_points","_Fragment","position","teams","_ref3","_callee3","_confirmToggleDialog$4","_confirmToggleDialog$3","winner","_context3","abrupt","team","find","t","SetWinnerManually","ToggleEventStatus","_unused2","undefined","_x3","Object","values","includes","AthlEventParticipantDetailsForm","onSuccess","_athlEventWinnerDialo2","FOOTBALL","FootballEventBox","isAdmin","onScoreUpdate","CHESS","ChessEventBox","SQUASH_MEN","SQUASH_WOMEN","SquashEventBox","TENNIS_MEN","TENNIS_WOMEN","TennisEventBox","getEventBox","length","toLocaleDateString","toLocaleString","hour","minute","hour12","participants","p","_callee4","_context4","_unused3","_ref5","setParticipants","getMillis","time","timeParts","split","millis","Number","_ref6","_callee5","newParticipants","_context5","forEach","detail","push","distance","SetAthleticsEventDetails","_unused4","_x4","op","onTeamAdd","onTeamDelete","addTeamDialog","confirmDeleteDialog","newTeamName","setNewTeamName","teamToDelete","setTeamToDelete","_addTeamDialog$curren2","_confirmDeleteDialog$","confirmTeamDelete","_confirmDeleteDialog$2","_addTeamDialog$curren","_addTeamDialog$curren3","_confirmDeleteDialog$3","TeamRow","MatchTypes","AthleticsRounds","registerCellType","TimeCellType","DropdownCellType","DateCellType","registerPlugin","ExportFile","CopyPaste","dateString","dateParts","dateObject","setTime","seconds","getSeconds","makeEventsArrayForDatabase","arr","matchType","endTime","slice","eventLink","makeAthlEventsArrayForDatabase","indexOf","makeParticipantsAndTeamsObj","hotRef","athlTableRef","athlEvents","setAthlEvents","completedEventsIndexes","indexes","completedAthlEventsIndexes","_hotRef$current","hot","hotInstance","updateSettings","cells","row","col","cellProperties","readOnly","formatForTable","events","fEvents","date","second","formatForAthlTable","participant","key","otherEvents","saveTableData","_hotRef$current2","_athlTableRef$current","athlTable","allRows","athlRows","notCompletedEventsRows","notCompletedAthlEventsRows","validRows","validAthlRows","last","_i","_row","_last","getData","PostSchedule","error","concat","_toConsumableArray","updateEventsStatus","eventToBeUpdated","eventID","socket","on","off","marginTop","overflowX","maxHeight","HotTable","copyPaste","boxSizing","rowHeaders","columns","source","s","correctFormat","timeFormat","colHeaders","minSpareRows","colWidths","licenseKey","logs","setEvent","dialogueOpen","setDialogueOpen","GetEventByID","then","formatEventName","userName","stringify","prevScore","currentScore","setLogs","GetLogs","res","eventGroupedLogs","keys","LogItem","urlParam","useParams","signOut","useSignOut","auth","useAuthUser","showProfileDialog","setShowProfileDialog","allUsers","setAllUsers","allTeams","setAllTeams","SideBarItems","PeopleAltIcon","ScoreboardIcon","Diversity2Icon","TableChartIcon","AssignmentIcon","fetchUsers","Users","GetUsers","obj","fetchTeams","Teams","GetTeams","medals","points","handleLogout","Logout","refreshToken","getRefreshToken","handleAddUser","_ref4","userToAdd","CreateUserWithUsernameAndPassword","accessToken","handleUserDelete","userToDelete","DeleteUser","handleAddTeam","_callee6","teamToAdd","_context6","AddTeam","handleDeleteTeam","_ref7","_callee7","_context7","DeleteTeam","_x5","SideBar","margin","Routes","element","EditScores","ScheduleEditor","LogsViewer","_ref8","Route","path","io","RootURL","GridOnIcon","color","getDate","StartingDate","SportsSoccerIcon","SportsTennisIcon","fName","hasU","char","charAt"],"sourceRoot":""} \ No newline at end of file diff --git a/build/static/js/570.63cc8567.chunk.js b/build/static/js/570.63cc8567.chunk.js new file mode 100644 index 0000000..dcbe5d0 --- /dev/null +++ b/build/static/js/570.63cc8567.chunk.js @@ -0,0 +1,2 @@ +"use strict";(self.webpackChunkinteriit_scores_app_ibp=self.webpackChunkinteriit_scores_app_ibp||[]).push([[570],{4281:function(e,t,n){n.r(t),n.d(t,{default:function(){return te}});var s=n(1413),r=n(4165),a=n(5861),i=n(3433),c=n(9439),o=n(7689),l=n(184),u=function(e){var t=e.items,n=(0,o.s0)();return(0,l.jsx)("div",{className:"sidebar",children:(0,l.jsx)("div",{className:"items",children:t.map((function(e,t){return(0,l.jsxs)("div",{className:"item",tabIndex:1,onClick:function(){return n(e.linkTo)},children:[(0,l.jsx)(e.icon,{fontSize:"large"}),(0,l.jsx)("span",{className:"title",children:e.title})]},t)}))})})},d=n(2791),m=function(e){return e.ADMIN="Admin",e.SCORE_EDITOR="ScoreEditor",e}({}),h=n(9527),p=n(9451),v=n(7939),x=n(9841),f=n(2797),j=function(e){var t=e.role;return(0,l.jsx)("span",{style:{backgroundColor:t===m.ADMIN?"red":"green"},className:"chip",children:t})},N=function(e){var t=e.user,n=e.onDelete,s=(0,d.useState)(!1),r=(0,c.Z)(s,2),a=r[0],i=r[1];return(0,l.jsxs)("tr",{children:[(0,l.jsx)("td",{children:t.name}),(0,l.jsx)("td",{className:"noTextTransform",onClick:function(){i(!0),setTimeout((function(){return i(!1)}),2e3)},children:a?t.password:t.username}),(0,l.jsx)("td",{className:"chipCell",children:(0,l.jsx)(j,{role:t.role})}),(0,l.jsx)("td",{children:(0,l.jsx)("button",{className:"styledButton",onClick:function(){return n(t)},children:"Delete"})})]})},S=function(e){var t=e.users,n=e.onDelete,s=e.onUserAdd,r=(0,d.useState)(""),a=(0,c.Z)(r,2),i=a[0],o=a[1],u=(0,d.useState)(""),h=(0,c.Z)(u,2),p=h[0],v=h[1],x=(0,d.useState)(""),f=(0,c.Z)(x,2),j=f[0],S=f[1],T=(0,d.useState)(""),Z=(0,c.Z)(T,2),g=Z[0],y=Z[1],_=(0,d.useState)(m.SCORE_EDITOR),E=(0,c.Z)(_,2),b=E[0],M=E[1],C=(0,d.useRef)(null);return(0,l.jsxs)("div",{className:"usersContainer",children:[(0,l.jsxs)("section",{className:"top",children:[(0,l.jsx)("button",{onClick:function(){var e;null===(e=C.current)||void 0===e||e.showModal(),o(""),v(""),S("")},className:"styledButton",children:"Add User"}),(0,l.jsxs)("dialog",{ref:C,children:[(0,l.jsx)("button",{className:"styledButton",onClick:function(){var e;null===(e=C.current)||void 0===e||e.close()},children:"Close"}),(0,l.jsx)("h3",{children:"Add User Details"}),(0,l.jsxs)("form",{onSubmit:function(e){var t;if(e.preventDefault(),""===i||""===p||""===j)return y("Enter Name, Username and Password!"),void setTimeout((function(){return y("")}),3e3);s({name:i,username:p,role:b},j),null===(t=C.current)||void 0===t||t.close()},children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:"Name"}),(0,l.jsx)("input",{name:"Name",onChange:function(e){return o(e.target.value)},value:i,className:"styledInput"})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:"Username"}),(0,l.jsx)("input",{name:"Username",onChange:function(e){return v(e.target.value)},value:p,className:"styledInput"})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:"Password"}),(0,l.jsx)("input",{name:"Password",onChange:function(e){return S(e.target.value)},value:j,className:"styledInput"})]}),(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:"Role"}),(0,l.jsxs)("select",{onChange:function(e){return M(e.target.value)},value:b,className:"styledButton dropdown",children:[(0,l.jsx)("option",{value:m.ADMIN,children:m.ADMIN}),(0,l.jsx)("option",{value:m.SCORE_EDITOR,children:m.SCORE_EDITOR})]})]}),(0,l.jsx)("button",{className:"styledButton",type:"submit",children:"Add"})]}),g]})]}),(0,l.jsx)("section",{className:"main",children:(0,l.jsxs)("table",{children:[(0,l.jsx)("thead",{children:(0,l.jsxs)("tr",{children:[(0,l.jsx)("td",{children:"Name"}),(0,l.jsx)("td",{children:"Username"}),(0,l.jsx)("td",{children:"Role"}),(0,l.jsx)("td",{children:"Action"})]})}),(0,l.jsx)("tbody",{children:t.map((function(e,t){return(0,l.jsx)(N,{user:e,onDelete:n},t)}))})]})})]})},T=n(8011),Z=n(2625),g=n(8356),y=n(8025),_=n(7174),E=n(5018),b=n(3860),M=n(3401),C=function(e){return e.MEN_5000="5000m (M)",e.MEN_1500="1500m (M)",e.WOMEN_1500="1500m (W)",e.MEN_800="800m (M)",e.WOMEN_800="800m (W)",e.MEN_400="400m (M)",e.WOMEN_400="400m (W)",e.MEN_200="200m (M)",e.WOMEN_200="200m (W)",e.MEN_100="100m (M)",e.WOMEN_100="100m (W)",e.MEN_4X100="4x100m (M)",e.WOMEN_4X100="4x100m (W)",e.MEN_4X400="4x400m (M)",e.WOMEN_4X400="4x400m (W)",e.MEN_110_HURDLES="110m Hurdles (M)",e.MEN_400_HURDLES="400m Hurdles (M)",e.MEN_HAMMER_THROW="Hammer Throw (M)",e.MEN_DISK_THROW="Discus Throw (M)",e.WOMEN_DISK_THROW="Discus Throw (W)",e.MEN_POLE_VAULT="Pole Vault (M)",e.MEN_SHOT_PUT="Shot Put (M)",e.WOMEN_SHOT_PUT="Shot Put (W)",e.MEN_TRIPLE_JUMP="Triple Jump (M)",e.MEN_JAVELIN_THROW="Javelin Throw (M)",e.WOMEN_JAVELIN_THROW="Javelin Throw (W)",e.MEN_HIGH_JUMP="High Jump (M)",e.WOMEN_HIGH_JUMP="High Jump (W)",e.MEN_LONG_JUMP="Long Jump (M)",e.WOMEN_LONG_JUMP="Long Jump (W)",e}(C||{}),w=function(e){return e.MEN_HAMMER_THROW="Hammer Throw (M)",e.MEN_DISK_THROW="Discus Throw (M)",e.WOMEN_DISK_THROW="Discus Throw (W)",e.MEN_POLE_VAULT="Pole Vault (M)",e.MEN_SHOT_PUT="Shot Put (M)",e.WOMEN_SHOT_PUT="Shot Put (W)",e.MEN_TRIPLE_JUMP="Triple Jump (M)",e.MEN_JAVELIN_THROW="Javelin Throw (M)",e.WOMEN_JAVELIN_THROW="Javelin Throw (W)",e.MEN_HIGH_JUMP="High Jump (M)",e.WOMEN_HIGH_JUMP="High Jump (W)",e.MEN_LONG_JUMP="Long Jump (M)",e.WOMEN_LONG_JUMP="Long Jump (W)",e}(w||{}),A=C,D=function(){var e=(0,y.cl)(),t=(0,d.useContext)(_.u).setToastMessage,n=(0,d.useState)(!0),i=(0,c.Z)(n,2),o=i[0],u=i[1],m=(0,d.useState)([]),h=(0,c.Z)(m,2),p=h[0],v=h[1],x=(0,d.useMemo)((function(){return p.filter((function(e){return e.isStarted}))}),[p]),f=(0,d.useMemo)((function(){return p.filter((function(e){return!e.isCompleted&&e.startTime<=(new Date).getTime()+9e5}))}),[p]),j=(0,d.useState)(),N=(0,c.Z)(j,2),S=N[0],C=N[1],A=(0,d.useRef)(null),D=(0,d.useRef)(null),O=(0,d.useState)("DRAW"),I=(0,c.Z)(O,2),B=I[0],L=I[1],W=function(){var e;null===(e=A.current)||void 0===e||e.showModal()},U=function(){var e,t;null===(e=A.current)||void 0===e||e.close(),null===(t=D.current)||void 0===t||t.close()},H=function(){var e=(0,a.Z)((0,r.Z)().mark((function e(){var t;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,g.Z.GetEvents();case 2:t=e.sent.data,v(t),u(!1);case 5:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),R=function(){var n=(0,a.Z)((0,r.Z)().mark((function n(a,i){var c;return(0,r.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,g.Z.UpdateScore(e(),a,i);case 3:c=p.map((function(e){return e._id===a?(0,s.Z)((0,s.Z)({},e),{},{score:i}):e})),v(c),n.next=10;break;case 7:n.prev=7,n.t0=n.catch(0);try{t(JSON.parse(n.t0.request.response).message)}catch(r){t("Could not connect with the Server"),console.log(n.t0)}case 10:case"end":return n.stop()}}),n,null,[[0,7]])})));return function(e,t){return n.apply(this,arguments)}}();(0,d.useEffect)((function(){H()}),[]);return(0,l.jsxs)("div",{className:"usersContainer",children:[(0,l.jsxs)("div",{className:"top",style:{fontWeight:"600"},children:["Live Events",(0,l.jsxs)("dialog",{ref:A,children:[(0,l.jsx)("button",{className:"styledButton",onClick:U,children:"Close"}),(0,l.jsx)("h3",{children:"Caution"}),"Are you sure you want to end this event?",(0,l.jsx)("br",{})," ",(0,l.jsxs)("b",{children:[null===S||void 0===S?void 0:S.event," ",(null===S||void 0===S?void 0:S.event)===T.Z.ATHLETICS?null===S||void 0===S?void 0:S.athleticsEventType:null===S||void 0===S?void 0:S.title," ","|"," ",(null===S||void 0===S?void 0:S.event)===T.Z.ATHLETICS?null===S||void 0===S?void 0:S.title:null===S||void 0===S?void 0:S.subtitle]}),(0,l.jsx)("br",{}),(null===S||void 0===S?void 0:S.event)!==T.Z.ATHLETICS&&(null===S||void 0===S?void 0:S.event)!==T.Z.CRICKET&&(null===S||void 0===S?void 0:S.score.teamA_points)===(null===S||void 0===S?void 0:S.score.teamB_points)&&(0,l.jsxs)(l.Fragment,{children:["The Teams have same score.",(0,l.jsx)("br",{}),(0,l.jsx)("label",{children:"Set Winner Manually: "}),(0,l.jsxs)("select",{onChange:function(e){return L(e.target.value)},value:B,style:{position:"unset"},className:"styledButton dropdown",children:[(0,l.jsx)("option",{value:"DRAW",children:"DRAW"}),(0,l.jsx)("option",{value:null===S||void 0===S?void 0:S.teams[0].name,children:null===S||void 0===S?void 0:S.teams[0].name}),(0,l.jsx)("option",{value:null===S||void 0===S?void 0:S.teams[1].name,children:null===S||void 0===S?void 0:S.teams[1].name})]})]}),(0,l.jsx)("form",{onSubmit:function(){var n=(0,a.Z)((0,r.Z)().mark((function n(s){var a,i,c;return(0,r.Z)().wrap((function(n){for(;;)switch(n.prev=n.next){case 0:if(s.preventDefault(),(null===S||void 0===S?void 0:S.event)!==T.Z.ATHLETICS){n.next=5;break}return null===(i=A.current)||void 0===i||i.close(),D.current.showModal(),n.abrupt("return");case 5:return n.prev=5,"DRAW"!==B&&(c={team:S.teams.find((function(e){return e.name===B}))},g.Z.SetWinnerManually(e(),S._id,c)),n.next=9,g.Z.ToggleEventStatus(e(),S._id);case 9:t("Successfull"),u(!0),H(),n.next=17;break;case 14:n.prev=14,n.t0=n.catch(5);try{t(JSON.parse(n.t0.request.response).message)}catch(r){t("Could not connect with the Server"),console.log(n.t0)}case 17:null===(a=A.current)||void 0===a||a.close(),C(void 0);case 19:case"end":return n.stop()}}),n,null,[[5,14]])})));return function(e){return n.apply(this,arguments)}}(),children:(0,l.jsx)("button",{className:"styledButton",type:"submit",children:"Yes"})})]}),(null===S||void 0===S?void 0:S.event)===T.Z.ATHLETICS&&(0,l.jsxs)("dialog",{ref:D,children:[(0,l.jsx)("button",{className:"styledButton",onClick:U,children:"Close"}),(0,l.jsx)("h3",{children:Object.values(w).includes(S.athleticsEventType)?"Enter Distances (In meter)":"Enter Times (min:sec:millisec)"}),(0,l.jsx)(k,{event:S,onSuccess:function(){var e;null===(e=D.current)||void 0===e||e.close(),C(void 0),u(!0),H()}})]})]}),(0,l.jsxs)("div",{className:"main",children:[o?(0,l.jsx)(l.Fragment,{children:"Loading Events Data..."}):x&&(0,l.jsx)("section",{className:"liveEvents",children:x.map((function(e,t){return function(e,t){switch(e.event){case T.Z.FOOTBALL:return(0,l.jsx)(Z.Z,{isAdmin:!0,onScoreUpdate:function(t){return R(e._id,t)},event:e},t);case T.Z.CHESS:return(0,l.jsx)(E.Z,{isAdmin:!0,onScoreUpdate:function(t){return R(e._id,t)},event:e},t);case T.Z.SQUASH_MEN:case T.Z.SQUASH_WOMEN:return(0,l.jsx)(b.Z,{isAdmin:!0,onScoreUpdate:function(t){return R(e._id,t)},event:e},t);case T.Z.TENNIS_MEN:case T.Z.TENNIS_WOMEN:return(0,l.jsx)(M.Z,{isAdmin:!0,onScoreUpdate:function(t){return R(e._id,t)},event:e},t);default:return console.log("no card"+e.event),(0,l.jsx)(l.Fragment,{})}}(e,t)}))}),(0,l.jsx)("section",{className:"liveAbleEvents",children:0!==f.length?f.map((function(n,s){return(0,l.jsxs)("div",{children:[n.event," -"," ",n.athleticsEventType?n.athleticsEventType+" - ":null,n.title," -"," ",new Date(n.startTime).toLocaleDateString("en-GB")," - Start Time:"," ",new Date(n.startTime).toLocaleString("en-US",{hour:"numeric",minute:"numeric",hour12:!0})," ","-"," ",n.isStarted?(0,l.jsx)("span",{className:"chip",children:"Is Live"}):"Not Live",(0,l.jsx)("ul",{children:n.event===T.Z.ATHLETICS?n.participants[0].map((function(e,t){return(0,l.jsxs)("li",{children:[e.name," : ",e.team]},t)})):n.teams.map((function(e,t){return(0,l.jsxs)("li",{children:[e.name," "]},t)}))}),(0,l.jsx)("button",{className:"styledButton",onClick:(0,a.Z)((0,r.Z)().mark((function s(){return(0,r.Z)().wrap((function(s){for(;;)switch(s.prev=s.next){case 0:if(!n.isStarted){s.next=9;break}if(!(n.startTime>(new Date).getTime())){s.next=4;break}return t("Can't end this event right now!"),s.abrupt("return");case 4:C(n),L("DRAW"),W(),s.next=20;break;case 9:return s.prev=9,s.next=12,g.Z.ToggleEventStatus(e(),n._id);case 12:t("Successfull"),u(!0),H(),s.next=20;break;case 17:s.prev=17,s.t0=s.catch(9);try{t(JSON.parse(s.t0.request.response).message)}catch(r){t("Could not connect with the Server"),console.log(s.t0)}case 20:case"end":return s.stop()}}),s,null,[[9,17]])}))),children:n.isStarted?"End Event":"Go Live"})]},s)})):(0,l.jsx)(l.Fragment,{children:"No Events which can be toggled live!"})})]})]})},k=function(e){var t=e.event,n=e.onSuccess,i=(0,y.cl)(),o=(0,d.useContext)(_.u).setToastMessage,u=(0,d.useState)(t.participants[0]),m=(0,c.Z)(u,2),h=m[0],p=m[1],v=function(e){var t=e.split(":"),n=60*Number(t[0])*1e3;return t.length>=2&&(n+=1e3*Number(t[1])),t.length>=3&&(n+=Number(t[2])),n};return(0,l.jsxs)("form",{onSubmit:function(){var e=(0,a.Z)((0,r.Z)().mark((function e(s){var a;return(0,r.Z)().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return s.preventDefault(),a=[],h.forEach((function(e){void 0!==e.detail?a.push(Object.values(w).includes(t.athleticsEventType)?{name:e.name,team:e.team,distance:Number(e.detail)}:{name:e.name,team:e.team,time:v(e.detail)}):o("Incomplete Details")})),e.prev=3,e.next=6,g.Z.SetAthleticsEventDetails(i(),t._id,a);case 6:return e.next=8,g.Z.ToggleEventStatus(i(),t._id);case 8:o("Successfull"),n(),e.next=15;break;case 12:e.prev=12,e.t0=e.catch(3);try{o(JSON.parse(e.t0.request.response).message)}catch(r){o("Could not connect with the Server"),console.log(e.t0)}case 15:case"end":return e.stop()}}),e,null,[[3,12]])})));return function(t){return e.apply(this,arguments)}}(),children:[h.map((function(e,t){return(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:e.name}),(0,l.jsx)("input",{name:"details",type:"text",onChange:function(t){return p(h.map((function(n){return n.name===e.name?(0,s.Z)((0,s.Z)({},n),{},{detail:t.target.value}):n})))},value:h[t].detail,className:"styledInput"})]})})),(0,l.jsx)("button",{className:"styledButton",type:"submit",children:"Submit"})]})},O=n(6839),I=function(e){var t=e.team,n=e.onDelete;return(0,l.jsxs)("tr",{children:[(0,l.jsx)("td",{children:t.name}),(0,l.jsx)("td",{children:(0,l.jsx)("button",{onClick:function(){return n(t)},className:"styledButton",children:"Delete"})})]})},B=function(e){var t=e.teams,n=e.onTeamAdd,s=e.onTeamDelete,r=(0,d.useRef)(null),a=(0,d.useRef)(null),i=(0,d.useState)(""),o=(0,c.Z)(i,2),u=o[0],m=o[1],h=(0,d.useState)(),p=(0,c.Z)(h,2),v=p[0],x=p[1],f=(0,d.useState)(""),j=(0,c.Z)(f,2),N=j[0],S=j[1],T=function(){var e,t;null===(e=r.current)||void 0===e||e.close(),null===(t=a.current)||void 0===t||t.close()},Z=function(e){var t;x(e),null===(t=a.current)||void 0===t||t.showModal()};return(0,l.jsxs)("div",{className:"usersContainer",children:[(0,l.jsxs)("div",{className:"top",children:[(0,l.jsx)("button",{onClick:function(){var e;null===(e=r.current)||void 0===e||e.showModal()},className:"styledButton",children:"Add Team"}),(0,l.jsxs)("dialog",{ref:r,children:[(0,l.jsx)("button",{className:"styledButton",onClick:T,children:"Close"}),(0,l.jsx)("h3",{children:"Add Team Details"}),(0,l.jsxs)("form",{onSubmit:function(e){var t;if(e.preventDefault(),""===u)return S("Enter Name!"),void setTimeout((function(){return S("")}),3e3);n({name:u}),null===(t=r.current)||void 0===t||t.close()},children:[(0,l.jsxs)("div",{children:[(0,l.jsx)("label",{children:"Name"}),(0,l.jsx)("input",{name:"Name",onChange:function(e){return m(e.target.value)},value:u,className:"styledInput"})]}),(0,l.jsx)("button",{className:"styledButton",type:"submit",children:"Add"})]}),N]}),(0,l.jsxs)("dialog",{ref:a,children:[(0,l.jsx)("button",{className:"styledButton",onClick:T,children:"Close"}),(0,l.jsx)("h3",{children:"Caution"}),"Are you sure you want to Delete",(0,l.jsx)("br",{})," ",(0,l.jsxs)("b",{children:[null===v||void 0===v?void 0:v.name," ?"]}),(0,l.jsx)("form",{onSubmit:function(e){var t;e.preventDefault(),s(v),null===(t=a.current)||void 0===t||t.close(),x(void 0)},children:(0,l.jsx)("button",{className:"styledButton",type:"submit",children:"Yes"})})]})]}),(0,l.jsx)("div",{className:"main",children:(0,l.jsxs)("table",{children:[(0,l.jsx)("thead",{children:(0,l.jsxs)("tr",{children:[(0,l.jsx)("td",{children:"Team Name"}),(0,l.jsx)("td",{children:"Action"})]})}),(0,l.jsx)("tbody",{children:t.map((function(e,t){return(0,l.jsx)(I,{team:e,onDelete:Z},t)}))})]})})]})},L=(n(7809),n(6154)),W=n(9679),U=n(63),H=n(7214),R=n(7382),P=n(3914),J=n(5982),F=n(774),V=n(5305),G=function(e){return e.DOUBLES="Doubles",e.SINGLES="Singles",e}({}),q=function(e){return e.SEMIS="Semi-Final",e.FINAL="Final",e}(q||{}),K=q;(0,W.xN)(U.L),(0,W.xN)(H.g),(0,W.xN)(R.f),(0,P.fo)(J.aX),(0,P.fo)(F._x);var X=function(e,t){var n=e.split("/"),s=new Date(n[1]+"/"+n[0]+"/"+n[2]);return s.setTime(s.getTime()+1e3*function(e){var t=e.split(":");t[3]=t[2].split(" ")[1],t[2]=t[2].split(" ")[0];var n=60*(60*Number(t[0])+Number(t[1]))+Number(t[2]);return("pm"===t[3]&&12!==Number(t[0])||"PM"===t[3]&&12!==Number(t[0]))&&(n+=43200),n}(t)),s.getTime()},Q=function(e){return e.map((function(e){return{event:e[0],matchType:e[1],title:e[2],subtitle:e[3],startTime:X(e[4],e[5]),endTime:X(e[4],e[6]),teams:e.slice(7,9),eventLink:e[9]}}))},Y=function(e){return e.map((function(e){return(0,s.Z)({event:T.Z.ATHLETICS,athleticsEventType:e[0],title:e[1],startTime:X(e[2],e[3]),endTime:X(e[2],e[4])},function(e){for(var t=[],n=[],s=0;s {\r\n\tconst navigate = useNavigate();\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t{items.map((item, i) => (\r\n\t\t\t\t\t navigate(item.linkTo)}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{item.title}\r\n\t\t\t\t\t
\r\n\t\t\t\t))}\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default SideBar;\r\n","export enum UserRole {\r\n ADMIN = \"Admin\",\r\n SCORE_EDITOR = \"ScoreEditor\",\r\n}\r\n","import { UserRole } from \"../types/UserRole\";\r\nimport \"./UserRoleChip.css\";\r\n\r\nconst UserRoleChip = ({ role }: { role: UserRole }) => {\r\n\treturn (\r\n\t\t\r\n\t\t\t{role}\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default UserRoleChip;\r\n","import { useState } from \"react\";\r\nimport UserRoleChip from \"../../../components/UserRoleChip\";\r\nimport { User } from \"../../../types/User\";\r\n\r\nconst UserRow = ({\r\n\tuser,\r\n\tonDelete,\r\n}: {\r\n\tuser: User;\r\n\tonDelete: (userToDelete: User) => void;\r\n}) => {\r\n\tconst [showPassword, setShowPassword] = useState(false);\r\n\r\n\treturn (\r\n\t\t\r\n\t\t\t{user.name}\r\n\t\t\t {\r\n\t\t\t\t\tsetShowPassword(true);\r\n\t\t\t\t\tsetTimeout(() => setShowPassword(false), 2000);\r\n\t\t\t\t}}\r\n\t\t\t>\r\n\t\t\t\t{showPassword ? user.password : user.username}\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default UserRow;\r\n","import { useRef, useState } from \"react\";\r\nimport { User } from \"../../types/User\";\r\nimport \"./Users.css\";\r\nimport { UserRole } from \"../../types/UserRole\";\r\nimport UserRow from \"./components/UserRow\";\r\n\r\nconst Users = ({\r\n\tusers,\r\n\tonDelete,\r\n\tonUserAdd,\r\n}: {\r\n\tusers: User[];\r\n\tonDelete: (userToDelete: User) => void;\r\n\tonUserAdd: (userToAdd: User, password: string) => void;\r\n}) => {\r\n\tconst [newName, setNewName] = useState(\"\");\r\n\tconst [newUsername, setNewUsername] = useState(\"\");\r\n\tconst [newPassword, setNewPassword] = useState(\"\");\r\n\tconst [errorMsg, setErrorMsg] = useState(\"\");\r\n\tconst [newRole, setNewRole] = useState(UserRole.SCORE_EDITOR);\r\n\r\n\tconst addUserDialog = useRef(null);\r\n\r\n\tconst openDialog = () => {\r\n\t\taddUserDialog.current?.showModal();\r\n\t\tsetNewName(\"\");\r\n\t\tsetNewUsername(\"\");\r\n\t\tsetNewPassword(\"\");\r\n\t};\r\n\tconst closeDialog = () => {\r\n\t\taddUserDialog.current?.close();\r\n\t};\r\n\r\n\tconst handleAddUser = (e: any) => {\r\n\t\te.preventDefault();\r\n\t\tif (newName === \"\" || newUsername === \"\" || newPassword === \"\") {\r\n\t\t\tsetErrorMsg(\"Enter Name, Username and Password!\");\r\n\t\t\tsetTimeout(() => setErrorMsg(\"\"), 3000);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tonUserAdd(\r\n\t\t\t{ name: newName, username: newUsername, role: newRole },\r\n\t\t\tnewPassword\r\n\t\t);\r\n\t\taddUserDialog.current?.close();\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Add User Details

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setNewName(e.target.value)}\r\n\t\t\t\t\t\t\t\tvalue={newName}\r\n\t\t\t\t\t\t\t\tclassName=\"styledInput\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setNewUsername(e.target.value)}\r\n\t\t\t\t\t\t\t\tvalue={newUsername}\r\n\t\t\t\t\t\t\t\tclassName=\"styledInput\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setNewPassword(e.target.value)}\r\n\t\t\t\t\t\t\t\tvalue={newPassword}\r\n\t\t\t\t\t\t\t\tclassName=\"styledInput\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setNewRole(e.target.value as UserRole)}\r\n\t\t\t\t\t\t\t\tvalue={newRole}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton dropdown\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{errorMsg}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{users.map((user, i) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t\r\n\t\t\t\t
NameUsernameRoleAction
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default Users;\r\n","enum AthleticsEventTypes {\r\n\tMEN_5000 = \"5000m (M)\",\r\n\tMEN_1500 = \"1500m (M)\",\r\n\tWOMEN_1500 = \"1500m (W)\",\r\n\tMEN_800 = \"800m (M)\",\r\n\tWOMEN_800 = \"800m (W)\",\r\n\tMEN_400 = \"400m (M)\",\r\n\tWOMEN_400 = \"400m (W)\",\r\n\tMEN_200 = \"200m (M)\",\r\n\tWOMEN_200 = \"200m (W)\",\r\n\tMEN_100 = \"100m (M)\",\r\n\tWOMEN_100 = \"100m (W)\",\r\n\tMEN_4X100 = \"4x100m (M)\",\r\n\tWOMEN_4X100 = \"4x100m (W)\",\r\n\tMEN_4X400 = \"4x400m (M)\",\r\n\tWOMEN_4X400 = \"4x400m (W)\",\r\n\tMEN_110_HURDLES = \"110m Hurdles (M)\",\r\n\tMEN_400_HURDLES = \"400m Hurdles (M)\",\r\n\tMEN_HAMMER_THROW = \"Hammer Throw (M)\",\r\n\tMEN_DISK_THROW = \"Discus Throw (M)\",\r\n\tWOMEN_DISK_THROW = \"Discus Throw (W)\",\r\n\tMEN_POLE_VAULT = \"Pole Vault (M)\",\r\n\tMEN_SHOT_PUT = \"Shot Put (M)\",\r\n\tWOMEN_SHOT_PUT = \"Shot Put (W)\",\r\n\tMEN_TRIPLE_JUMP = \"Triple Jump (M)\",\r\n\tMEN_JAVELIN_THROW = \"Javelin Throw (M)\",\r\n\tWOMEN_JAVELIN_THROW = \"Javelin Throw (W)\",\r\n\tMEN_HIGH_JUMP = \"High Jump (M)\",\r\n\tWOMEN_HIGH_JUMP = \"High Jump (W)\",\r\n\tMEN_LONG_JUMP = \"Long Jump (M)\",\r\n\tWOMEN_LONG_JUMP = \"Long Jump (W)\",\r\n}\r\n\r\nenum AthleticsEventWithDistance {\r\n\tMEN_HAMMER_THROW = \"Hammer Throw (M)\",\r\n\tMEN_DISK_THROW = \"Discus Throw (M)\",\r\n\tWOMEN_DISK_THROW = \"Discus Throw (W)\",\r\n\tMEN_POLE_VAULT = \"Pole Vault (M)\",\r\n\tMEN_SHOT_PUT = \"Shot Put (M)\",\r\n\tWOMEN_SHOT_PUT = \"Shot Put (W)\",\r\n\tMEN_TRIPLE_JUMP = \"Triple Jump (M)\",\r\n\tMEN_JAVELIN_THROW = \"Javelin Throw (M)\",\r\n\tWOMEN_JAVELIN_THROW = \"Javelin Throw (W)\",\r\n\tMEN_HIGH_JUMP = \"High Jump (M)\",\r\n\tWOMEN_HIGH_JUMP = \"High Jump (W)\",\r\n\tMEN_LONG_JUMP = \"Long Jump (M)\",\r\n\tWOMEN_LONG_JUMP = \"Long Jump (W)\",\r\n}\r\nexport { AthleticsEventWithDistance };\r\n\r\nexport default AthleticsEventTypes;\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport \"./EditScores.css\";\r\nimport { useEffect, useMemo, useState, useContext, useRef } from \"react\";\r\nimport Event, { EventExceptAthleticsOrCricket } from \"../../types/Event\";\r\nimport EventCatagories from \"../../types/EventCategories\";\r\nimport FootballEvent from \"../../types/FootballEvent\";\r\nimport FootballEventBox from \"../../components/LiveEventBoxes/FootballEventBox\";\r\nimport API from \"../../Utilities/ApiEndpoints\";\r\nimport { useAuthHeader } from \"react-auth-kit\";\r\nimport { ToastContext } from \"../../Utilities/ToastContext\";\r\nimport ChessEventBox from \"../../components/LiveEventBoxes/ChessEventBox\";\r\nimport ChessEvent from \"../../types/ChessEvent\";\r\nimport SquashEventBox from \"../../components/LiveEventBoxes/SquashEventBox\";\r\nimport SquashEvent from \"../../types/SquashEvent\";\r\nimport TennisEventBox from \"../../components/LiveEventBoxes/TennisEventBox\";\r\nimport TennisEvent from \"../../types/TennisEvent\";\r\nimport AthleticsEvent, { Participant } from \"../../types/AthleticsEvent\";\r\nimport { AthleticsEventWithDistance } from \"../../types/AthleticsEventTypes\";\r\nimport { Team } from \"../../types/Team\";\r\n\r\nconst EVENT_START_BUFFER = 15 * 60 * 1000; //the duration BEFORE the startTime from when an event can be started in milliseconds\r\n\r\nconst EditScores = () => {\r\n\tconst getAccessToken = useAuthHeader();\r\n\tconst setToast = useContext(ToastContext).setToastMessage;\r\n\r\n\tconst [loading, setLoading] = useState(true);\r\n\r\n\tconst [allEvents, setAllEvents] = useState([]);\r\n\tconst liveEvents = useMemo(\r\n\t\t() => allEvents.filter((event) => event.isStarted),\r\n\t\t[allEvents]\r\n\t);\r\n\tconst liveAbleEvents = useMemo(\r\n\t\t() =>\r\n\t\t\tallEvents.filter(\r\n\t\t\t\t(e) =>\r\n\t\t\t\t\t!e.isCompleted &&\r\n\t\t\t\t\t(e.startTime as number) <= new Date().getTime() + EVENT_START_BUFFER\r\n\t\t\t),\r\n\t\t[allEvents]\r\n\t);\r\n\tconst [eventToToggle, setEventToToggle] = useState();\r\n\tconst confirmToggleDialog = useRef(null);\r\n\tconst athlEventWinnerDialog = useRef(null);\r\n\tconst [manualWinner, setManualWinner] = useState(\"DRAW\");\r\n\r\n\tconst openDialog = () => {\r\n\t\tconfirmToggleDialog.current?.showModal();\r\n\t};\r\n\tconst closeDialog = () => {\r\n\t\tconfirmToggleDialog.current?.close();\r\n\t\tathlEventWinnerDialog.current?.close();\r\n\t};\r\n\r\n\tconst fetchEvents = async () => {\r\n\t\tconst result: Event[] = (await API.GetEvents()).data;\r\n\t\tsetAllEvents(result);\r\n\t\tsetLoading(false);\r\n\t};\r\n\r\n\tconst handleScoreUpdate = async (id: string, score: any) => {\r\n\t\ttry {\r\n\t\t\tawait API.UpdateScore(getAccessToken(), id, score);\r\n\t\t\tconst newEvents = allEvents.map((e) => {\r\n\t\t\t\tif (e._id === id) return { ...e, score: score };\r\n\t\t\t\telse return e;\r\n\t\t\t});\r\n\t\t\tsetAllEvents(newEvents);\r\n\t\t} catch (error: any) {\r\n\t\t\ttry {\r\n\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t} catch {\r\n\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tfetchEvents();\r\n\t}, []);\r\n\r\n\tconst getEventBox = (event: Event, i: number): React.JSX.Element => {\r\n\t\tswitch (event.event) {\r\n\t\t\tcase EventCatagories.FOOTBALL:\r\n\t\t\t\treturn (\r\n\t\t\t\t\t handleScoreUpdate(event._id!, score)}\r\n\t\t\t\t\t\tkey={i}\r\n\t\t\t\t\t\tevent={event as FootballEvent}\r\n\t\t\t\t\t/>\r\n\t\t\t\t);\r\n\t\t\tcase EventCatagories.CHESS:\r\n\t\t\t\treturn (\r\n\t\t\t\t\t handleScoreUpdate(event._id!, score)}\r\n\t\t\t\t\t\tkey={i}\r\n\t\t\t\t\t\tevent={event as ChessEvent}\r\n\t\t\t\t\t/>\r\n\t\t\t\t);\r\n\t\t\tcase EventCatagories.SQUASH_MEN:\r\n\t\t\tcase EventCatagories.SQUASH_WOMEN:\r\n\t\t\t\treturn (\r\n\t\t\t\t\t handleScoreUpdate(event._id!, score)}\r\n\t\t\t\t\t\tkey={i}\r\n\t\t\t\t\t\tevent={event as SquashEvent}\r\n\t\t\t\t\t/>\r\n\t\t\t\t);\r\n\t\t\tcase EventCatagories.TENNIS_MEN:\r\n\t\t\tcase EventCatagories.TENNIS_WOMEN:\r\n\t\t\t\treturn (\r\n\t\t\t\t\t handleScoreUpdate(event._id!, score)}\r\n\t\t\t\t\t\tkey={i}\r\n\t\t\t\t\t\tevent={event as TennisEvent}\r\n\t\t\t\t\t/>\r\n\t\t\t\t);\r\n\t\t\tdefault:\r\n\t\t\t\tconsole.log(\"no card\" + event.event);\r\n\t\t\t\treturn <>;\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tLive Events\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Caution

\r\n\t\t\t\t\tAre you sure you want to end this event?\r\n\t\t\t\t\t
{\" \"}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{eventToToggle?.event}{\" \"}\r\n\t\t\t\t\t\t{eventToToggle?.event === EventCatagories.ATHLETICS\r\n\t\t\t\t\t\t\t? (eventToToggle as AthleticsEvent)?.athleticsEventType\r\n\t\t\t\t\t\t\t: eventToToggle?.title}{\" \"}\r\n\t\t\t\t\t\t|{\" \"}\r\n\t\t\t\t\t\t{eventToToggle?.event === EventCatagories.ATHLETICS\r\n\t\t\t\t\t\t\t? (eventToToggle as AthleticsEvent)?.title\r\n\t\t\t\t\t\t\t: eventToToggle?.subtitle}\r\n\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{eventToToggle?.event !== EventCatagories.ATHLETICS &&\r\n\t\t\t\t\t\teventToToggle?.event !== EventCatagories.CRICKET &&\r\n\t\t\t\t\t\t(eventToToggle as EventExceptAthleticsOrCricket)?.score\r\n\t\t\t\t\t\t\t.teamA_points ===\r\n\t\t\t\t\t\t\t(eventToToggle as EventExceptAthleticsOrCricket)?.score\r\n\t\t\t\t\t\t\t\t.teamB_points && (\r\n\t\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t\tThe Teams have same score.\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t setManualWinner(e.target.value)}\r\n\t\t\t\t\t\t\t\t\tvalue={manualWinner}\r\n\t\t\t\t\t\t\t\t\tstyle={{ position: \"unset\" }}\r\n\t\t\t\t\t\t\t\t\tclassName=\"styledButton dropdown\"\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t\t\tif (eventToToggle?.event === EventCatagories.ATHLETICS) {\r\n\t\t\t\t\t\t\t\tconfirmToggleDialog.current?.close();\r\n\t\t\t\t\t\t\t\tathlEventWinnerDialog.current!.showModal();\r\n\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\tif (manualWinner !== \"DRAW\") {\r\n\t\t\t\t\t\t\t\t\tconst winner = {\r\n\t\t\t\t\t\t\t\t\t\tteam: eventToToggle!.teams.find(\r\n\t\t\t\t\t\t\t\t\t\t\t(t) => t.name === manualWinner\r\n\t\t\t\t\t\t\t\t\t\t) as Team,\r\n\t\t\t\t\t\t\t\t\t};\r\n\t\t\t\t\t\t\t\t\tAPI.SetWinnerManually(\r\n\t\t\t\t\t\t\t\t\t\tgetAccessToken(),\r\n\t\t\t\t\t\t\t\t\t\teventToToggle!._id!,\r\n\t\t\t\t\t\t\t\t\t\twinner\r\n\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\tawait API.ToggleEventStatus(\r\n\t\t\t\t\t\t\t\t\tgetAccessToken(),\r\n\t\t\t\t\t\t\t\t\teventToToggle!._id!\r\n\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\tsetToast(\"Successfull\");\r\n\t\t\t\t\t\t\t\tsetLoading(true);\r\n\t\t\t\t\t\t\t\tfetchEvents();\r\n\t\t\t\t\t\t\t} catch (error: any) {\r\n\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t\t\t\t\t\t} catch {\r\n\t\t\t\t\t\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\tconfirmToggleDialog.current?.close();\r\n\t\t\t\t\t\t\tsetEventToToggle(undefined);\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t\t{eventToToggle?.event === EventCatagories.ATHLETICS && (\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t{(Object.values(AthleticsEventWithDistance) as any[]).includes(\r\n\t\t\t\t\t\t\t\t(eventToToggle as AthleticsEvent).athleticsEventType\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t\t? \"Enter Distances (In meter)\"\r\n\t\t\t\t\t\t\t\t: \"Enter Times (min:sec:millisec)\"}\r\n\t\t\t\t\t\t

\r\n\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\tathlEventWinnerDialog.current?.close();\r\n\t\t\t\t\t\t\t\tsetEventToToggle(undefined);\r\n\t\t\t\t\t\t\t\tsetLoading(true);\r\n\t\t\t\t\t\t\t\tfetchEvents();\r\n\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t
\r\n\t\t\t\t)}\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t{!loading ? (\r\n\t\t\t\t\tliveEvents && (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{liveEvents.map((event, i) => getEventBox(event, i))}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t)\r\n\t\t\t\t) : (\r\n\t\t\t\t\t<>Loading Events Data...\r\n\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t\t{liveAbleEvents.length !== 0 ? (\r\n\t\t\t\t\t\tliveAbleEvents.map((event, i) => (\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t{event.event} -{\" \"}\r\n\t\t\t\t\t\t\t\t{(event as AthleticsEvent).athleticsEventType\r\n\t\t\t\t\t\t\t\t\t? (event as AthleticsEvent).athleticsEventType + \" - \"\r\n\t\t\t\t\t\t\t\t\t: null}\r\n\t\t\t\t\t\t\t\t{event.title} -{\" \"}\r\n\t\t\t\t\t\t\t\t{new Date(event.startTime).toLocaleDateString(\"en-GB\")} - Start\r\n\t\t\t\t\t\t\t\tTime:{\" \"}\r\n\t\t\t\t\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\t\t\t\t\thour12: true,\r\n\t\t\t\t\t\t\t\t})}{\" \"}\r\n\t\t\t\t\t\t\t\t-{\" \"}\r\n\t\t\t\t\t\t\t\t{event.isStarted ? (\r\n\t\t\t\t\t\t\t\t\tIs Live\r\n\t\t\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t\t\t\"Not Live\"\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t{event.event === EventCatagories.ATHLETICS\r\n\t\t\t\t\t\t\t\t\t\t? (event as AthleticsEvent).participants[0].map((p, i) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t\t\t\t\t{p.name} : {p.team}\r\n\t\t\t\t\t\t\t\t\t\t\t\t
  • \r\n\t\t\t\t\t\t\t\t\t\t ))\r\n\t\t\t\t\t\t\t\t\t\t: event.teams.map((team, i) => (\r\n\t\t\t\t\t\t\t\t\t\t\t\t
  • {team.name}
  • \r\n\t\t\t\t\t\t\t\t\t\t ))}\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\t\tif (event!.isStarted) {\r\n\t\t\t\t\t\t\t\t\t\t\tif ((event!.startTime as number) > new Date().getTime()) {\r\n\t\t\t\t\t\t\t\t\t\t\t\tsetToast(\"Can't end this event right now!\");\r\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\tsetEventToToggle(event);\r\n\t\t\t\t\t\t\t\t\t\t\tsetManualWinner(\"DRAW\");\r\n\t\t\t\t\t\t\t\t\t\t\topenDialog();\r\n\t\t\t\t\t\t\t\t\t\t} else {\r\n\t\t\t\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\t\t\t\tawait API.ToggleEventStatus(\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tgetAccessToken(),\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tevent!._id!\r\n\t\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t\t\tsetToast(\"Successfull\");\r\n\t\t\t\t\t\t\t\t\t\t\t\tsetLoading(true);\r\n\t\t\t\t\t\t\t\t\t\t\t\tfetchEvents();\r\n\t\t\t\t\t\t\t\t\t\t\t} catch (error: any) {\r\n\t\t\t\t\t\t\t\t\t\t\t\ttry {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t\t\t\t\t\t\t\t\t\t} catch {\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\t\t\t\t\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t\t{event.isStarted ? \"End Event\" : \"Go Live\"}\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t))\r\n\t\t\t\t\t) : (\r\n\t\t\t\t\t\t<>No Events which can be toggled live!\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default EditScores;\r\n\r\nconst AthlEventParticipantDetailsForm = ({\r\n\tevent,\r\n\tonSuccess,\r\n}: {\r\n\tevent: AthleticsEvent;\r\n\tonSuccess: () => void;\r\n}) => {\r\n\tconst getAccessToken = useAuthHeader();\r\n\tconst setToast = useContext(ToastContext).setToastMessage;\r\n\tconst [participants, setParticipants] = useState(event.participants[0]);\r\n\r\n\tconst getMillis = (time: string) => {\r\n\t\tconst timeParts = time.split(\":\");\r\n\t\tlet millis = Number(timeParts[0]) * 60 * 1000;\r\n\t\tif (timeParts.length >= 2) millis += Number(timeParts[1]) * 1000;\r\n\t\tif (timeParts.length >= 3) millis += Number(timeParts[2]);\r\n\t\treturn millis;\r\n\t};\r\n\r\n\treturn (\r\n\t\t {\r\n\t\t\t\te.preventDefault();\r\n\t\t\t\tlet newParticipants: Participant[] = [];\r\n\t\t\t\tparticipants.forEach((p) => {\r\n\t\t\t\t\tif (p.detail === undefined) {\r\n\t\t\t\t\t\tsetToast(\"Incomplete Details\");\r\n\t\t\t\t\t\treturn;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tnewParticipants.push(\r\n\t\t\t\t\t\t(Object.values(AthleticsEventWithDistance) as any[]).includes(\r\n\t\t\t\t\t\t\t(event as AthleticsEvent).athleticsEventType\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t? { name: p.name, team: p.team, distance: Number(p.detail) }\r\n\t\t\t\t\t\t\t: { name: p.name, team: p.team, time: getMillis(p.detail) }\r\n\t\t\t\t\t);\r\n\t\t\t\t});\r\n\t\t\t\ttry {\r\n\t\t\t\t\tawait API.SetAthleticsEventDetails(\r\n\t\t\t\t\t\tgetAccessToken(),\r\n\t\t\t\t\t\tevent._id!,\r\n\t\t\t\t\t\tnewParticipants\r\n\t\t\t\t\t);\r\n\t\t\t\t\tawait API.ToggleEventStatus(getAccessToken(), event!._id!);\r\n\t\t\t\t\tsetToast(\"Successfull\");\r\n\t\t\t\t\tonSuccess();\r\n\t\t\t\t} catch (error: any) {\r\n\t\t\t\t\ttry {\r\n\t\t\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t\t\t} catch {\r\n\t\t\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}}\r\n\t\t>\r\n\t\t\t{participants.map((p, i) => (\r\n\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\tsetParticipants(\r\n\t\t\t\t\t\t\t\tparticipants.map((op) =>\r\n\t\t\t\t\t\t\t\t\top.name === p.name ? { ...op, detail: e.target.value } : op\r\n\t\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t\t)\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tvalue={participants[i].detail}\r\n\t\t\t\t\t\tclassName=\"styledInput\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t
\r\n\t\t\t))}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n","import { Team } from \"../../../types/Team\";\r\n\r\nconst TeamRow = ({\r\n\tteam,\r\n\tonDelete,\r\n}: {\r\n\tteam: Team;\r\n\tonDelete: (teamToDelete: Team) => void;\r\n}) => {\r\n\treturn (\r\n\t\t\r\n\t\t\t{team.name}\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default TeamRow;\r\n","import { useRef, useState } from \"react\";\r\nimport TeamRow from \"./components/TeamRow\";\r\nimport { Team } from \"../../types/Team\";\r\n\r\nconst Teams = ({\r\n\tteams,\r\n\tonTeamAdd,\r\n\tonTeamDelete,\r\n}: {\r\n\tteams: Team[];\r\n\tonTeamAdd: (teamToAdd: Team) => void;\r\n\tonTeamDelete: (teamToDelete: Team) => void;\r\n}) => {\r\n\tconst addTeamDialog = useRef(null);\r\n\tconst confirmDeleteDialog = useRef(null);\r\n\tconst [newTeamName, setNewTeamName] = useState(\"\");\r\n\tconst [teamToDelete, setTeamToDelete] = useState();\r\n\tconst [errorMsg, setErrorMsg] = useState(\"\");\r\n\r\n\tconst openDialog = () => {\r\n\t\taddTeamDialog.current?.showModal();\r\n\t};\r\n\tconst closeDialog = () => {\r\n\t\taddTeamDialog.current?.close();\r\n\t\tconfirmDeleteDialog.current?.close();\r\n\t};\r\n\r\n\tconst handleAddTeam = (e: any) => {\r\n\t\te.preventDefault();\r\n\t\tif (newTeamName === \"\") {\r\n\t\t\tsetErrorMsg(\"Enter Name!\");\r\n\t\t\tsetTimeout(() => setErrorMsg(\"\"), 3000);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tonTeamAdd({ name: newTeamName });\r\n\t\taddTeamDialog.current?.close();\r\n\t};\r\n\r\n\tconst confirmTeamDelete = (teamToDelete: Team) => {\r\n\t\tsetTeamToDelete(teamToDelete);\r\n\t\tconfirmDeleteDialog.current?.showModal();\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Add Team Details

\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t setNewTeamName(e.target.value)}\r\n\t\t\t\t\t\t\t\tvalue={newTeamName}\r\n\t\t\t\t\t\t\t\tclassName=\"styledInput\"\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t
\r\n\t\t\t\t\t{errorMsg}\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t

Caution

\r\n\t\t\t\t\tAre you sure you want to Delete\r\n\t\t\t\t\t
{teamToDelete?.name} ?\r\n\t\t\t\t\t {\r\n\t\t\t\t\t\t\te.preventDefault();\r\n\t\t\t\t\t\t\tonTeamDelete(teamToDelete as Team);\r\n\t\t\t\t\t\t\tconfirmDeleteDialog.current?.close();\r\n\t\t\t\t\t\t\tsetTeamToDelete(undefined);\r\n\t\t\t\t\t\t}}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t{teams.map((team, i) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t\r\n\t\t\t\t
Team NameAction
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default Teams;\r\n","import Event from \"./Event\";\r\nimport { Team } from \"./Team\";\r\n\r\nexport default interface TennisEvent extends Event {\r\n\tmatchType: MatchTypes;\r\n\twinner?: {\r\n\t\tteam: Team;\r\n\t\tparticipants: string[];\r\n\t};\r\n\tscore: TennisScore;\r\n}\r\n\r\nexport interface TennisScore {\r\n\tteamA_points: number;\r\n\tteamB_points: number;\r\n}\r\n\r\nexport enum MatchTypes {\r\n\tDOUBLES = \"Doubles\",\r\n\tSINGLES = \"Singles\",\r\n}\r\n","enum AthleticsRounds {\r\n\tSEMIS = \"Semi-Final\",\r\n\tFINAL = \"Final\",\r\n}\r\nexport default AthleticsRounds;\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport \"handsontable/dist/handsontable.full.min.css\";\r\nimport { HotTable } from \"@handsontable/react\";\r\nimport {\r\n\tregisterCellType,\r\n\tTimeCellType,\r\n\tDropdownCellType,\r\n\tDateCellType,\r\n} from \"handsontable/cellTypes\";\r\nimport { registerPlugin, ExportFile, CopyPaste } from \"handsontable/plugins\";\r\nimport EventCatagories from \"../../types/EventCategories\";\r\nimport { Team } from \"../../types/Team\";\r\nimport { useRef, useContext, useState, useEffect, useMemo } from \"react\";\r\nimport \"./ScheduleEditor.css\";\r\nimport { ToastContext } from \"../../Utilities/ToastContext\";\r\nimport API from \"../../Utilities/ApiEndpoints\";\r\nimport Event from \"../../types/Event\";\r\nimport { useAuthHeader } from \"react-auth-kit\";\r\nimport { socket } from \"../../Utilities/Socket\";\r\nimport { MatchTypes } from \"../../types/TennisEvent\";\r\nimport AthleticsEventTypes from \"../../types/AthleticsEventTypes\";\r\nimport AthleticsRounds from \"../../types/AthleticsRounds\";\r\nimport AthleticsEvent from \"../../types/AthleticsEvent\";\r\n\r\nregisterCellType(TimeCellType);\r\nregisterCellType(DropdownCellType);\r\nregisterCellType(DateCellType);\r\n\r\nregisterPlugin(ExportFile);\r\nregisterPlugin(CopyPaste);\r\n\r\nconst getTime = (dateString: string, time: string) => {\r\n\tvar dateParts = dateString.split(\"/\");\r\n\tvar dateObject = new Date(\r\n\t\tdateParts[1] + \"/\" + dateParts[0] + \"/\" + dateParts[2]\r\n\t);\r\n\tfunction getSeconds(time: string): number {\r\n\t\tlet timeParts = time.split(\":\");\r\n\t\ttimeParts[3] = timeParts[2].split(\" \")[1];\r\n\t\ttimeParts[2] = timeParts[2].split(\" \")[0];\r\n\t\tlet seconds =\r\n\t\t\t(Number(timeParts[0]) * 60 + Number(timeParts[1])) * 60 +\r\n\t\t\tNumber(timeParts[2]);\r\n\t\tif (\r\n\t\t\t(timeParts[3] === \"pm\" && Number(timeParts[0]) !== 12) ||\r\n\t\t\t(timeParts[3] === \"PM\" && Number(timeParts[0]) !== 12)\r\n\t\t)\r\n\t\t\tseconds += 12 * 60 * 60;\r\n\t\treturn seconds;\r\n\t}\r\n\tdateObject.setTime(dateObject.getTime() + getSeconds(time) * 1000);\r\n\treturn dateObject.getTime();\r\n};\r\n\r\nconst makeParticipantsAndTeamsObj = (arr: any[]) => {\r\n\tlet t: any[] = [];\r\n\tlet p: any[] = [];\r\n\tfor (let i = 0; i < arr.indexOf(null); i += 2) {\r\n\t\tconst name = arr[i];\r\n\t\tconst team = arr[i + 1];\r\n\t\tt.push(team);\r\n\t\tp.push({ name, team });\r\n\t}\r\n\treturn { teams: t, participants: [p] };\r\n};\r\n\r\nconst makeEventsArrayForDatabase = (data: any[]) => {\r\n\tconst events = data.map((arr: any[]) => {\r\n\t\treturn {\r\n\t\t\tevent: arr[0],\r\n\t\t\tmatchType: arr[1],\r\n\t\t\ttitle: arr[2],\r\n\t\t\tsubtitle: arr[3],\r\n\t\t\tstartTime: getTime(arr[4], arr[5]),\r\n\t\t\tendTime: getTime(arr[4], arr[6]),\r\n\t\t\tteams: arr.slice(7, 9),\r\n\t\t\teventLink: arr[9],\r\n\t\t};\r\n\t});\r\n\treturn events;\r\n};\r\nconst makeAthlEventsArrayForDatabase = (data: any[]) => {\r\n\tconst events = data.map((arr: any[]) => {\r\n\t\treturn {\r\n\t\t\tevent: EventCatagories.ATHLETICS,\r\n\t\t\tathleticsEventType: arr[0],\r\n\t\t\ttitle: arr[1],\r\n\t\t\tstartTime: getTime(arr[2], arr[3]),\r\n\t\t\tendTime: getTime(arr[2], arr[4]),\r\n\t\t\t...makeParticipantsAndTeamsObj(arr.slice(5)),\r\n\t\t};\r\n\t});\r\n\treturn events;\r\n};\r\n\r\nconst ScheduleEditor = ({ teams }: { teams: Team[] }) => {\r\n\tconst hotRef = useRef(null);\r\n\tconst athlTableRef = useRef(null);\r\n\tconst setToast = useContext(ToastContext).setToastMessage;\r\n\tconst getAccessToken = useAuthHeader();\r\n\r\n\tconst [allEvents, setAllEvents] = useState([]);\r\n\tconst [athlEvents, setAthlEvents] = useState([]);\r\n\tconst [loading, setLoading] = useState(true);\r\n\r\n\tconst completedEventsIndexes = useMemo(() => {\r\n\t\tlet indexes: any[] = [];\r\n\t\tallEvents.forEach((e, i) => {\r\n\t\t\tif (e.isCompleted || e.isStarted) indexes.push(i);\r\n\t\t});\r\n\t\treturn indexes;\r\n\t}, [allEvents]);\r\n\tconst completedAthlEventsIndexes = useMemo(() => {\r\n\t\tlet indexes: any[] = [];\r\n\t\tathlEvents.forEach((e, i) => {\r\n\t\t\tif (e.isCompleted || e.isStarted) indexes.push(i);\r\n\t\t});\r\n\t\treturn indexes;\r\n\t}, [athlEvents]);\r\n\r\n\tuseEffect(() => {\r\n\t\tconst hot = hotRef?.current?.hotInstance;\r\n\t\thot?.updateSettings({\r\n\t\t\tcells(row, col) {\r\n\t\t\t\tlet cellProperties: any = {};\r\n\t\t\t\tif (completedEventsIndexes.includes(row)) {\r\n\t\t\t\t\tcellProperties.readOnly = true;\r\n\t\t\t\t}\r\n\r\n\t\t\t\treturn cellProperties;\r\n\t\t\t},\r\n\t\t});\r\n\t}, [completedEventsIndexes]);\r\n\r\n\tconst formatForTable = (events: any[]) => {\r\n\t\tconst fEvents = events.map((e) => {\r\n\t\t\treturn {\r\n\t\t\t\t...e,\r\n\t\t\t\tdate: new Date(e.startTime).toLocaleDateString(\"en-GB\"),\r\n\t\t\t\tstartTime: new Date(e.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\tsecond: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t}),\r\n\t\t\t\tendTime: new Date(e.endTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\tsecond: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t}),\r\n\t\t\t};\r\n\t\t});\r\n\t\tfEvents.forEach((e) => {\r\n\t\t\te.teams.forEach((team: any, i: number) => {\r\n\t\t\t\tconst key: string = \"team\" + i;\r\n\t\t\t\te[key] = team.name;\r\n\t\t\t});\r\n\t\t});\r\n\t\treturn fEvents as Event[];\r\n\t};\r\n\r\n\tconst formatForAthlTable = (events: AthleticsEvent[]) => {\r\n\t\tconst fEvents: any[] = events.map((e) => {\r\n\t\t\treturn {\r\n\t\t\t\t...e,\r\n\t\t\t\tdate: new Date(e.startTime).toLocaleDateString(\"en-GB\"),\r\n\t\t\t\tstartTime: new Date(e.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\tsecond: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t}),\r\n\t\t\t\tendTime: new Date(e.endTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\tsecond: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t}),\r\n\t\t\t};\r\n\t\t});\r\n\t\tfEvents.forEach((e) => {\r\n\t\t\te.participants[0].forEach((participant: any, i: number) => {\r\n\t\t\t\tlet key = \"participant\" + i;\r\n\t\t\t\te[key] = participant.name;\r\n\t\t\t\tkey = \"team\" + i;\r\n\t\t\t\te[key] = participant.team;\r\n\t\t\t});\r\n\t\t});\r\n\t\treturn fEvents as Event[];\r\n\t};\r\n\r\n\tconst fetchEvents = async () => {\r\n\t\tconst result: Event[] = (await API.GetEvents()).data;\r\n\t\tconst otherEvents = result.filter(\r\n\t\t\t(e) => e.event !== EventCatagories.ATHLETICS\r\n\t\t);\r\n\t\tconst athlEvents = result.filter(\r\n\t\t\t(e) => e.event === EventCatagories.ATHLETICS\r\n\t\t);\r\n\t\tsetAllEvents(formatForTable(otherEvents));\r\n\t\tsetAthlEvents(formatForAthlTable(athlEvents as AthleticsEvent[]));\r\n\t\tsetLoading(false);\r\n\t};\r\n\r\n\tconst saveTableData = async () => {\r\n\t\tconst hot = hotRef?.current?.hotInstance;\r\n\t\tconst athlTable = athlTableRef?.current?.hotInstance;\r\n\t\tconst allRows = hot?.getData()!;\r\n\t\tconst athlRows = athlTable?.getData()!;\r\n\t\tconst notCompletedEventsRows = allRows.filter(\r\n\t\t\t(row: any[], i) => !completedEventsIndexes.includes(i)\r\n\t\t);\r\n\t\tconst notCompletedAthlEventsRows = athlRows.filter(\r\n\t\t\t(row: any[], i) => !completedAthlEventsIndexes.includes(i)\r\n\t\t);\r\n\t\tconst validRows = notCompletedEventsRows!.filter((arr) => arr[0] !== null);\r\n\t\tconst validAthlRows = notCompletedAthlEventsRows!.filter(\r\n\t\t\t(arr) => arr[0] !== null\r\n\t\t);\r\n\t\tif (validRows?.length === 0 && validAthlRows?.length === 0) {\r\n\t\t\t//set schedule as empty\r\n\t\t\ttry {\r\n\t\t\t\tAPI.PostSchedule([], getAccessToken());\r\n\t\t\t\tsetToast(\"Updated Schedule Successfully!\");\r\n\t\t\t} catch (error: any) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t\t} catch {\r\n\t\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tfor (let i = 0; i < validRows!.length; i++) {\r\n\t\t\tconst row: any[] = validRows![i];\r\n\t\t\tlet last = row.length;\r\n\t\t\tlast = row.indexOf(null, 2) !== -1 ? row.indexOf(null, 2) : last;\r\n\t\t\tlast =\r\n\t\t\t\trow.indexOf(\"\", 2) !== -1 && row.indexOf(\"\", 2) < last\r\n\t\t\t\t\t? row.indexOf(\"\", 2)\r\n\t\t\t\t\t: last;\r\n\t\t\tif (last <= 8) {\r\n\t\t\t\tsetToast(\"Incomplete Details in a Row!\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t\tfor (let i = 0; i < validAthlRows!.length; i++) {\r\n\t\t\tconst row: any[] = validAthlRows![i];\r\n\t\t\tlet last = row.length;\r\n\t\t\tlast = row.indexOf(null, 1) !== -1 ? row.indexOf(null, 1) : last;\r\n\t\t\tlast =\r\n\t\t\t\trow.indexOf(\"\", 1) !== -1 && row.indexOf(\"\", 1) < last\r\n\t\t\t\t\t? row.indexOf(\"\", 1)\r\n\t\t\t\t\t: last;\r\n\t\t\tif (last <= 8 || (last - 5) % 2 !== 0) {\r\n\t\t\t\tsetToast(\"Incomplete Details in a Row!\");\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\t\tconst data = [\r\n\t\t\t...makeEventsArrayForDatabase(validRows),\r\n\t\t\t...makeAthlEventsArrayForDatabase(validAthlRows),\r\n\t\t];\r\n\t\t//data to be sent to the server\r\n\t\ttry {\r\n\t\t\tAPI.PostSchedule(data, getAccessToken());\r\n\t\t\tsetToast(\"Updated Schedule Successfully!\");\r\n\t\t} catch (error: any) {\r\n\t\t\ttry {\r\n\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t} catch {\r\n\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tconst updateEventsStatus = (data: string) => {\r\n\t\t\tconst eventToBeUpdated = JSON.parse(data);\r\n\t\t\tsetAllEvents((prev) =>\r\n\t\t\t\tprev.map((event) =>\r\n\t\t\t\t\teventToBeUpdated.eventID === event._id\r\n\t\t\t\t\t\t? { ...event, isStarted: eventToBeUpdated.isStarted }\r\n\t\t\t\t\t\t: event\r\n\t\t\t\t)\r\n\t\t\t);\r\n\t\t};\r\n\t\tsocket.on(\"eventStartOrEnd\", updateEventsStatus);\r\n\t\tfetchEvents();\r\n\r\n\t\treturn () => {\r\n\t\t\tsocket.off(\"eventStartOrEnd\", updateEventsStatus);\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
\r\n\t\t\t\tSchedule Table\r\n\t\t\t
\r\n\t\t\t{loading ? (\r\n\t\t\t\t<>Loading All Events Data..\r\n\t\t\t) : (\r\n\t\t\t\t<>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tSave\r\n\t\t\t\t\t\r\n\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t s !== EventCatagories.ATHLETICS\r\n\t\t\t\t\t\t\t\t\t),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"matchType\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: Object.values(MatchTypes),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{ data: \"title\", type: \"text\" },\r\n\t\t\t\t\t\t\t\t{ data: \"subtitle\", type: \"text\" },\r\n\t\t\t\t\t\t\t\t{ data: \"date\", type: \"date\", correctFormat: true },\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"startTime\",\r\n\t\t\t\t\t\t\t\t\ttype: \"time\",\r\n\t\t\t\t\t\t\t\t\ttimeFormat: \"h:mm:ss a\",\r\n\t\t\t\t\t\t\t\t\tcorrectFormat: true,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"endTime\",\r\n\t\t\t\t\t\t\t\t\ttype: \"time\",\r\n\t\t\t\t\t\t\t\t\ttimeFormat: \"h:mm:ss a\",\r\n\t\t\t\t\t\t\t\t\tcorrectFormat: true,\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team0\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team1\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{ data: \"eventLink\", type: \"text\" },\r\n\t\t\t\t\t\t\t]}\r\n\t\t\t\t\t\t\tcolHeaders={[\r\n\t\t\t\t\t\t\t\t\"Event\",\r\n\t\t\t\t\t\t\t\t\"MatchType?\",\r\n\t\t\t\t\t\t\t\t\"Name\",\r\n\t\t\t\t\t\t\t\t\"Subtitle\",\r\n\t\t\t\t\t\t\t\t\"Date\",\r\n\t\t\t\t\t\t\t\t\"Start Time\",\r\n\t\t\t\t\t\t\t\t\"Estimated End Time\",\r\n\t\t\t\t\t\t\t\t\"Team 1\",\r\n\t\t\t\t\t\t\t\t\"Team 2\",\r\n\t\t\t\t\t\t\t\t\"Score Link (for Cricket)\",\r\n\t\t\t\t\t\t\t]}\r\n\t\t\t\t\t\t\tminSpareRows={2}\r\n\t\t\t\t\t\t\tcolWidths={[150, 100, 150, 150, 100, 100, 150, 150, 150, 250]}\r\n\t\t\t\t\t\t\tlicenseKey=\"non-commercial-and-evaluation\" // for non-commercial use only\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t

Athletics Events Table

\r\n\t\t\t\t\t\t team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant1\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team1\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant2\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team2\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant3\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team3\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant4\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team4\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant5\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team5\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant6\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team6\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant7\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team7\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant8\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team8\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"participant9\",\r\n\t\t\t\t\t\t\t\t\ttype: \"text\",\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\t\tdata: \"team9\",\r\n\t\t\t\t\t\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\t\t\t\t\t\tsource: teams.map((team) => team.name),\r\n\t\t\t\t\t\t\t\t},\r\n\t\t\t\t\t\t\t]}\r\n\t\t\t\t\t\t\tcolHeaders={[\r\n\t\t\t\t\t\t\t\t\"Event\",\r\n\t\t\t\t\t\t\t\t\"Round\",\r\n\t\t\t\t\t\t\t\t\"Date\",\r\n\t\t\t\t\t\t\t\t\"Start Time\",\r\n\t\t\t\t\t\t\t\t\"End Time\",\r\n\t\t\t\t\t\t\t\t\"Participant 1\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 2\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 3\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 4\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 5\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 6\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 7\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 8\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 9\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t\t\"Participant 10\",\r\n\t\t\t\t\t\t\t\t\"Team\",\r\n\t\t\t\t\t\t\t]}\r\n\t\t\t\t\t\t\tminSpareRows={2}\r\n\t\t\t\t\t\t\tcolWidths={[\r\n\t\t\t\t\t\t\t\t150, 150, 100, 100, 100, 200, 130, 200, 130, 200, 130, 200, 130,\r\n\t\t\t\t\t\t\t\t200, 130, 200, 130, 200, 130, 200, 130, 200, 130, 200, 130,\r\n\t\t\t\t\t\t\t]}\r\n\t\t\t\t\t\t\tlicenseKey=\"non-commercial-and-evaluation\" // for non-commercial use only\r\n\t\t\t\t\t\t/>\r\n\t\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default ScheduleEditor;\r\n","import { useEffect, useState } from \"react\";\r\nimport Event from \"../types/Event\";\r\nimport { useAuthHeader } from \"react-auth-kit\";\r\nimport API from \"../Utilities/ApiEndpoints\";\r\nimport { formatEventName } from \"../types/EventCategories\";\r\nimport \"./LogItem.css\";\r\n\r\ninterface Log {\r\n\teventID: string;\r\n\tuserName: string;\r\n\tprevScore: any;\r\n\tcurrentScore: any;\r\n}\r\n\r\ninterface LogItemProps {\r\n\tlogs: Log[];\r\n\teventID: string;\r\n}\r\n\r\nconst LogItem: React.FC = ({ logs, eventID }) => {\r\n\tconst [event, setEvent] = useState();\r\n\tconst getAccessToken = useAuthHeader();\r\n\tconst [dialogueOpen, setDialogueOpen] = useState(false);\r\n\r\n\tuseEffect(() => {\r\n\t\tAPI.GetEventByID(getAccessToken(), eventID).then((data) => {\r\n\t\t\tconsole.log(data.data);\r\n\t\t\tsetEvent(data.data);\r\n\t\t});\r\n\t}, []);\r\n\r\n\tif (!event) return
Loading...
;\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t{dialogueOpen && (\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t\t{formatEventName(event.event)} {event.title} {event.subtitle}{\" \"}\r\n\t\t\t\t\t\t\t\tResult history\r\n\t\t\t\t\t\t\t

\r\n\t\t\t\t\t\t\t setDialogueOpen(false)}\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t×\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t
\r\n\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{logs.map((log, i) => (\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\tChanged by {log.userName}\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
Previous Score
\r\n\t\t\t\t\t\t\t\t\t\t\t{JSON.stringify(log.prevScore, null, 2)}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t\t\t
Current Score
\r\n\t\t\t\t\t\t\t\t\t\t\t{JSON.stringify(log.currentScore, null, 2)}\r\n\t\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\t
setDialogueOpen(true)}>\r\n\t\t\t\tClick to show{\" \"}\r\n\t\t\t\t\r\n\t\t\t\t\t{formatEventName(event.event)} {event.title} {event.subtitle}\r\n\t\t\t\t{\" \"}\r\n\t\t\t\tscore update history\r\n\t\t\t
\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default LogItem;\r\n","import { useEffect, useState } from \"react\";\r\nimport API from \"../../../Utilities/ApiEndpoints\";\r\nimport { useAuthHeader } from \"react-auth-kit\";\r\nimport LogItem from \"../../../components/LogItem\";\r\n\r\nconst LogsViewer = () => {\r\n\tconst [logs, setLogs] = useState([]);\r\n\tconst getAccessToken = useAuthHeader();\r\n\r\n\tuseEffect(() => {\r\n\t\t// setLogs(await API.GetLogs(getAccessToken()));\r\n\t\tAPI.GetLogs(getAccessToken()).then((res) => {\r\n\t\t\tlet eventGroupedLogs: any = {};\r\n\r\n\t\t\tres.data.forEach((log: any) => {\r\n\t\t\t\tif (eventGroupedLogs[log.eventID] === undefined) {\r\n\t\t\t\t\teventGroupedLogs[log.eventID] = [];\r\n\t\t\t\t}\r\n\r\n\t\t\t\teventGroupedLogs[log.eventID].push(log);\r\n\t\t\t});\r\n\r\n\t\t\tconsole.log(Object.values(eventGroupedLogs));\r\n\t\t\tsetLogs(eventGroupedLogs);\r\n\t\t});\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t
Score Edit Logs
\r\n\t\t\t
\r\n\t\t\t\t{Object.keys(logs).map((eventID) => (\r\n\t\t\t\t\t\r\n\t\t\t\t))}\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default LogsViewer;\r\n","/* eslint-disable react-hooks/exhaustive-deps */\r\nimport { Route, Routes, useNavigate, useParams } from \"react-router\";\r\nimport SideBar from \"../../components/Sidebar\";\r\nimport { useContext, useEffect, useRef, useState } from \"react\";\r\nimport { UserRole } from \"../../types/UserRole\";\r\nimport \"./AdminDashboard.css\";\r\nimport PeopleAltIcon from \"@mui/icons-material/PeopleAlt\";\r\nimport ScoreboardIcon from \"@mui/icons-material/Scoreboard\";\r\nimport Diversity2Icon from \"@mui/icons-material/Diversity2\";\r\nimport TableChartIcon from \"@mui/icons-material/TableChart\";\r\nimport AssignmentIcon from '@mui/icons-material/Assignment';\r\nimport Users from \"./Users\";\r\nimport EditScores from \"./EditScores\";\r\nimport { useAuthHeader, useAuthUser, useSignOut } from \"react-auth-kit\";\r\nimport { AuthStateUserObject } from \"react-auth-kit/dist/types\";\r\nimport { User } from \"../../types/User\";\r\nimport UserRoleChip from \"../../components/UserRoleChip\";\r\nimport API from \"../../Utilities/ApiEndpoints\";\r\nimport { getRefreshToken } from \"../../Utilities/AuthUtils\";\r\nimport { ToastContext } from \"../../Utilities/ToastContext\";\r\nimport Teams from \"./Teams\";\r\nimport { Team } from \"../../types/Team\";\r\nimport ScheduleEditor from \"./ScheduleEditor\";\r\nimport LogsViewer from \"./components/LogsViewer\";\r\n\r\nconst AdminDashboard = () => {\r\n\tconst urlParam = useParams();\r\n\tconst navigate = useNavigate();\r\n\tconst signOut = useSignOut();\r\n\tconst setToast = useContext(ToastContext).setToastMessage;\r\n\tconst auth = useAuthUser() as () => AuthStateUserObject;\r\n\tconst user = useRef(auth() as User);\r\n\tconst getAccessToken = useAuthHeader();\r\n\r\n\tconst [showProfileDialog, setShowProfileDialog] = useState(false);\r\n\tconst [allUsers, setAllUsers] = useState([]);\r\n\tconst [allTeams, setAllTeams] = useState([]);\r\n\r\n\tconst SideBarItems = useRef([\r\n\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t? [\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: \"Users\",\r\n\t\t\t\t\tlinkTo: \"users\",\r\n\t\t\t\t\ticon: PeopleAltIcon,\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t\t: []),\r\n\t\t{\r\n\t\t\ttitle: \"Edit Scores\",\r\n\t\t\tlinkTo: \"edit_scores\",\r\n\t\t\ticon: ScoreboardIcon,\r\n\t\t},\r\n\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t? [\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: \"Teams\",\r\n\t\t\t\t\tlinkTo: \"teams\",\r\n\t\t\t\t\ticon: Diversity2Icon,\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t\t: []),\r\n\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t? [\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: \"Schedule\",\r\n\t\t\t\t\tlinkTo: \"schedule\",\r\n\t\t\t\t\ticon: TableChartIcon,\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t\t: []),\r\n\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t? [\r\n\t\t\t\t{\r\n\t\t\t\t\ttitle: \"Logs\",\r\n\t\t\t\t\tlinkTo: \"logs\",\r\n\t\t\t\t\ticon: AssignmentIcon,\r\n\t\t\t\t},\r\n\t\t\t]\r\n\t\t\t: []),\r\n\t]);\r\n\r\n\tconst getRoutes = (): { linkTo: string; element: React.JSX.Element }[] => {\r\n\t\treturn [\r\n\t\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t\t? [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlinkTo: \"users\",\r\n\t\t\t\t\t\telement: (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t},\r\n\t\t\t\t]\r\n\t\t\t\t: []),\r\n\t\t\t{\r\n\t\t\t\tlinkTo: \"edit_scores\",\r\n\t\t\t\telement: ,\r\n\t\t\t},\r\n\t\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t\t? [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlinkTo: \"teams\",\r\n\t\t\t\t\t\telement: (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t),\r\n\t\t\t\t\t},\r\n\t\t\t\t]\r\n\t\t\t\t: []),\r\n\t\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t\t? [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlinkTo: \"schedule\",\r\n\t\t\t\t\t\telement: ,\r\n\t\t\t\t\t},\r\n\t\t\t\t]\r\n\t\t\t\t: []),\r\n\t\t\t...(user.current.role === UserRole.ADMIN\r\n\t\t\t\t? [\r\n\t\t\t\t\t{\r\n\t\t\t\t\t\tlinkTo: \"logs\",\r\n\t\t\t\t\t\telement: ,\r\n\t\t\t\t\t},\r\n\t\t\t\t]\r\n\t\t\t\t: []),\r\n\t\t];\r\n\t};\r\n\r\n\tconst fetchUsers = async () => {\r\n\t\tconst result = (await API.GetUsers(getAccessToken())).data;\r\n\t\tconst Users: User[] = result.map((obj: any) => {\r\n\t\t\treturn {\r\n\t\t\t\tname: obj.name,\r\n\t\t\t\tusername: obj.username,\r\n\t\t\t\trole: obj.role,\r\n\t\t\t\tpassword: obj.password,\r\n\t\t\t};\r\n\t\t});\r\n\t\tsetAllUsers(Users);\r\n\t};\r\n\r\n\tconst fetchTeams = async () => {\r\n\t\tconst result = (await API.GetTeams(getAccessToken())).data;\r\n\t\tconst Teams: Team[] = result.map((obj: any) => {\r\n\t\t\treturn {\r\n\t\t\t\t_id: obj._id,\r\n\t\t\t\tname: obj.name,\r\n\t\t\t\tmedals: { ...obj.medals },\r\n\t\t\t\tpoints: obj.points,\r\n\t\t\t};\r\n\t\t});\r\n\t\tsetAllTeams(Teams);\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tif (user.current.role === UserRole.ADMIN) {\r\n\t\t\tfetchUsers();\r\n\t\t\tfetchTeams();\r\n\t\t}\r\n\t}, []);\r\n\r\n\tuseEffect(() => {\r\n\t\tif (!urlParam[\"*\"]) navigate(SideBarItems.current[0].linkTo); //navigate to the first sidebar item if /admin visited\r\n\t}, []);\r\n\r\n\tconst handleLogout = async () => {\r\n\t\tnavigate(\"/login\");\r\n\t\tawait API.Logout({\r\n\t\t\trefreshToken: getRefreshToken(),\r\n\t\t});\r\n\t\tsetToast(\"Logged Out\");\r\n\t\tsignOut();\r\n\t};\r\n\r\n\tconst handleAddUser = async (userToAdd: User, password: string) => {\r\n\t\ttry {\r\n\t\t\tawait API.CreateUserWithUsernameAndPassword({\r\n\t\t\t\tname: userToAdd.name,\r\n\t\t\t\tusername: userToAdd.username,\r\n\t\t\t\trole: userToAdd.role,\r\n\t\t\t\tpassword: password,\r\n\t\t\t\taccessToken: getAccessToken(),\r\n\t\t\t});\r\n\t\t\tawait fetchUsers();\r\n\t\t\tsetToast(\"Added User \" + userToAdd.username);\r\n\t\t} catch (error: any) {\r\n\t\t\ttry {\r\n\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t} catch {\r\n\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleUserDelete = async (userToDelete: User) => {\r\n\t\tif (userToDelete.username === user.current.username) {\r\n\t\t\tsetToast(\"You Cant Delete Yourself!\");\r\n\t\t\treturn;\r\n\t\t} else {\r\n\t\t\ttry {\r\n\t\t\t\tawait API.DeleteUser(userToDelete.username, getAccessToken());\r\n\t\t\t\tawait fetchUsers();\r\n\t\t\t\tsetToast(\"Deleted User \" + userToDelete.username);\r\n\t\t\t} catch (error: any) {\r\n\t\t\t\ttry {\r\n\t\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t\t} catch {\r\n\t\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\t\tconsole.log(error);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleAddTeam = async (teamToAdd: Team) => {\r\n\t\ttry {\r\n\t\t\tawait API.AddTeam(getAccessToken(), teamToAdd);\r\n\t\t\tawait fetchTeams();\r\n\t\t\tsetToast(\"Added Team \" + teamToAdd.name);\r\n\t\t} catch (error: any) {\r\n\t\t\ttry {\r\n\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t} catch {\r\n\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\tconst handleDeleteTeam = async (teamToDelete: Team) => {\r\n\t\ttry {\r\n\t\t\tawait API.DeleteTeam(getAccessToken(), teamToDelete);\r\n\t\t\tawait fetchTeams();\r\n\t\t\tsetToast(\"Deleted Team \" + teamToDelete.name);\r\n\t\t} catch (error: any) {\r\n\t\t\ttry {\r\n\t\t\t\tsetToast(JSON.parse(error.request.response).message);\r\n\t\t\t} catch {\r\n\t\t\t\tsetToast(\"Could not connect with the Server\");\r\n\t\t\t\tconsole.log(error);\r\n\t\t\t}\r\n\t\t}\r\n\t};\r\n\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t setShowProfileDialog((prev) => !prev)}\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t{user.current.name}{\" \"}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t{showProfileDialog && (\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\tUsername:\r\n\t\t\t\t\t\t\t
\r\n\t\t\t\t\t\t\t{user.current.username}\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\tLogout\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t\r\n\t\t\t\t\t{getRoutes().map(\r\n\t\t\t\t\t\t(\r\n\t\t\t\t\t\t\t{\r\n\t\t\t\t\t\t\t\tlinkTo,\r\n\t\t\t\t\t\t\t\telement,\r\n\t\t\t\t\t\t\t}: { linkTo: string; element: React.JSX.Element },\r\n\t\t\t\t\t\t\ti: number\r\n\t\t\t\t\t\t) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t)\r\n\t\t\t\t\t)}\r\n\t\t\t\t\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default AdminDashboard;\r\n","import { io } from \"socket.io-client\";\r\nimport { RootURL } from \"./ApiEndpoints\";\r\n\r\nexport const socket = io(RootURL);\r\n","import { StartingDate } from \"../../App\";\r\nimport ChessEvent, { ChessScore } from \"../../types/ChessEvent\";\r\nimport \"./LiveEventBox.css\";\r\nimport GridOnIcon from \"@mui/icons-material/GridOn\";\r\n\r\nconst ChessEventBox = ({\r\n\tevent,\r\n\tisAdmin,\r\n\tonScoreUpdate,\r\n}: {\r\n\tisAdmin?: boolean;\r\n\tonScoreUpdate?: (score: ChessScore) => void;\r\n\tevent: ChessEvent;\r\n}) => {\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\tChess\r\n\t\t\t\r\n\t\t\t

{event.title}

\r\n\t\t\t

\r\n\t\t\t\t{event.subtitle} | Day{\" \"}\r\n\t\t\t\t{new Date(event.startTime).getDate() - StartingDate + 1} -{\" \"}\r\n\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t})}{\" \"}\r\n\t\t\t

\r\n\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[0].name}

\r\n\t\t\t\t
\r\n\t\t\t\t

VS

\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[1].name}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamA_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points + 0.5,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 0.5\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points - 0.5,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 0.5\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamB_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points + 0.5,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 0.5\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points - 0.5,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 0.5\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default ChessEventBox;\r\n","import { StartingDate } from \"../../App\";\r\nimport FootballEvent, { FootballScore } from \"../../types/FootballEvent\";\r\nimport \"./LiveEventBox.css\";\r\nimport SportsSoccerIcon from \"@mui/icons-material/SportsSoccer\";\r\n\r\nconst FootballEventBox = ({\r\n\tevent,\r\n\tisAdmin,\r\n\tonScoreUpdate,\r\n}: {\r\n\tisAdmin?: boolean;\r\n\tonScoreUpdate?: (score: FootballScore) => void;\r\n\tevent: FootballEvent;\r\n}) => {\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\tFootball\r\n\t\t\t\r\n\t\t\t

{event.title}

\r\n\t\t\t

\r\n\t\t\t\t{event.subtitle} | Day{\" \"}\r\n\t\t\t\t{new Date(event.startTime).getDate() - StartingDate + 1} -{\" \"}\r\n\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t})}{\" \"}\r\n\t\t\t

\r\n\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[0].name}

\r\n\t\t\t\t
\r\n\t\t\t\t

VS

\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[1].name}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamA_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamB_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default FootballEventBox;\r\n","import { StartingDate } from \"../../App\";\r\nimport EventCatagories from \"../../types/EventCategories\";\r\nimport SquashEvent, { SquashScore } from \"../../types/SquashEvent\";\r\nimport \"./LiveEventBox.css\";\r\nimport SportsTennisIcon from \"@mui/icons-material/SportsTennis\";\r\n\r\nconst SquashEventBox = ({\r\n\tevent,\r\n\tisAdmin,\r\n\tonScoreUpdate,\r\n}: {\r\n\tisAdmin?: boolean;\r\n\tonScoreUpdate?: (score: SquashScore) => void;\r\n\tevent: SquashEvent;\r\n}) => {\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{event.event === EventCatagories.SQUASH_MEN\r\n\t\t\t\t\t\t? \"Men's Squash\"\r\n\t\t\t\t\t\t: \"Women's Squash\"}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t

{event.title}

\r\n\t\t\t

\r\n\t\t\t\t{event.subtitle} | Day{\" \"}\r\n\t\t\t\t{new Date(event.startTime).getDate() - StartingDate + 1} -{\" \"}\r\n\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t})}{\" \"}\r\n\t\t\t

\r\n\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[0].name}

\r\n\t\t\t\t
\r\n\t\t\t\t

VS

\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[1].name}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamA_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamB_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default SquashEventBox;\r\n","import { StartingDate } from \"../../App\";\r\nimport EventCatagories from \"../../types/EventCategories\";\r\nimport TennisEvent, { TennisScore } from \"../../types/TennisEvent\";\r\nimport \"./LiveEventBox.css\";\r\nimport SportsTennisIcon from \"@mui/icons-material/SportsTennis\";\r\n\r\nconst TennisEventBox = ({\r\n\tevent,\r\n\tisAdmin,\r\n\tonScoreUpdate,\r\n}: {\r\n\tisAdmin?: boolean;\r\n\tonScoreUpdate?: (score: TennisScore) => void;\r\n\tevent: TennisEvent;\r\n}) => {\r\n\treturn (\r\n\t\t
\r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t{event.event === EventCatagories.TENNIS_MEN\r\n\t\t\t\t\t\t? \"Men's Tennis\"\r\n\t\t\t\t\t\t: \"Women's Tennis\"}\r\n\t\t\t\t\r\n\t\t\t\r\n\t\t\t

\r\n\t\t\t\t{event.title} | {event.matchType}\r\n\t\t\t

\r\n\t\t\t

\r\n\t\t\t\t{event.subtitle} | Day{\" \"}\r\n\t\t\t\t{new Date(event.startTime).getDate() - StartingDate + 1} -{\" \"}\r\n\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t})}{\" \"}\r\n\t\t\t

\r\n\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[0].name}

\r\n\t\t\t\t
\r\n\t\t\t\t

VS

\r\n\t\t\t\t
\r\n\t\t\t\t\t

{event.teams[1].name}

\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamA_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamA_points: event.score.teamA_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t\t

\r\n\t\t\t\t
\r\n\t\t\t\t\t{event.score.teamB_points}\r\n\t\t\t\t\t{isAdmin && (\r\n\t\t\t\t\t\t<>\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points + 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tAdd 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t {\r\n\t\t\t\t\t\t\t\t\tonScoreUpdate!({\r\n\t\t\t\t\t\t\t\t\t\t...event.score,\r\n\t\t\t\t\t\t\t\t\t\tteamB_points: event.score.teamB_points - 1,\r\n\t\t\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t\t\t}}\r\n\t\t\t\t\t\t\t\tclassName=\"styledButton\"\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\tMinus 1\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t)}\r\n\t\t\t\t
\r\n\t\t\t
\r\n\t\t
\r\n\t);\r\n};\r\n\r\nexport default TennisEventBox;\r\n","enum EventCatagories {\r\n\tCRICKET = \"Cricket\",\r\n\tFOOTBALL = \"Football\",\r\n\tSQUASH_MEN = \"Squash_men\",\r\n\tCHESS = \"Chess\",\r\n\tSQUASH_WOMEN = \"Squash_women\",\r\n\tTENNIS_WOMEN = \"Tennis_women\",\r\n\tTENNIS_MEN = \"Tennis_men\",\r\n\tATHLETICS = \"Athletics\",\r\n}\r\n\r\nexport const formatEventName = (e: string) => {\r\n\tlet fName = \"\";\r\n\tlet hasU = false;\r\n\tfor (let i = 0; i < e.length; i++) {\r\n\t\tconst char = e.charAt(i);\r\n\t\tif (char === \"_\") {\r\n\t\t\thasU = true;\r\n\t\t\tfName += \" (\";\r\n\t\t} else {\r\n\t\t\tfName += char;\r\n\t\t}\r\n\t}\r\n\tif (hasU) fName += \")\";\r\n\treturn fName;\r\n};\r\n\r\nexport default EventCatagories;\r\n"],"names":["_ref","items","navigate","useNavigate","_jsx","className","children","map","item","i","_jsxs","tabIndex","onClick","linkTo","icon","fontSize","title","UserRole","role","style","backgroundColor","ADMIN","user","onDelete","_useState","useState","_useState2","_slicedToArray","showPassword","setShowPassword","name","setTimeout","password","username","UserRoleChip","users","onUserAdd","newName","setNewName","_useState3","_useState4","newUsername","setNewUsername","_useState5","_useState6","newPassword","setNewPassword","_useState7","_useState8","errorMsg","setErrorMsg","_useState9","SCORE_EDITOR","_useState10","newRole","setNewRole","addUserDialog","useRef","_addUserDialog$curren","current","showModal","ref","_addUserDialog$curren2","close","onSubmit","e","_addUserDialog$curren3","preventDefault","onChange","target","value","type","UserRow","AthleticsEventTypes","AthleticsEventWithDistance","getAccessToken","useAuthHeader","setToast","useContext","ToastContext","setToastMessage","loading","setLoading","allEvents","setAllEvents","liveEvents","useMemo","filter","event","isStarted","liveAbleEvents","isCompleted","startTime","Date","getTime","eventToToggle","setEventToToggle","confirmToggleDialog","athlEventWinnerDialog","manualWinner","setManualWinner","openDialog","_confirmToggleDialog$","closeDialog","_confirmToggleDialog$2","_athlEventWinnerDialo","fetchEvents","_asyncToGenerator","_regeneratorRuntime","mark","_callee","result","wrap","_context","prev","next","API","GetEvents","sent","data","stop","apply","arguments","handleScoreUpdate","_ref2","_callee2","id","score","newEvents","_context2","UpdateScore","_id","_objectSpread","t0","JSON","parse","request","response","message","_unused","console","log","_x","_x2","useEffect","fontWeight","EventCatagories","ATHLETICS","athleticsEventType","subtitle","CRICKET","teamA_points","teamB_points","_Fragment","position","teams","_ref3","_callee3","_confirmToggleDialog$4","_confirmToggleDialog$3","winner","_context3","abrupt","team","find","t","SetWinnerManually","ToggleEventStatus","_unused2","undefined","_x3","Object","values","includes","AthlEventParticipantDetailsForm","onSuccess","_athlEventWinnerDialo2","FOOTBALL","FootballEventBox","isAdmin","onScoreUpdate","CHESS","ChessEventBox","SQUASH_MEN","SQUASH_WOMEN","SquashEventBox","TENNIS_MEN","TENNIS_WOMEN","TennisEventBox","getEventBox","length","toLocaleDateString","toLocaleString","hour","minute","hour12","participants","p","_callee4","_context4","_unused3","_ref5","setParticipants","getMillis","time","timeParts","split","millis","Number","_ref6","_callee5","newParticipants","_context5","forEach","detail","push","distance","SetAthleticsEventDetails","_unused4","_x4","op","onTeamAdd","onTeamDelete","addTeamDialog","confirmDeleteDialog","newTeamName","setNewTeamName","teamToDelete","setTeamToDelete","_addTeamDialog$curren2","_confirmDeleteDialog$","confirmTeamDelete","_confirmDeleteDialog$2","_addTeamDialog$curren","_addTeamDialog$curren3","_confirmDeleteDialog$3","TeamRow","MatchTypes","AthleticsRounds","registerCellType","TimeCellType","DropdownCellType","DateCellType","registerPlugin","ExportFile","CopyPaste","dateString","dateParts","dateObject","setTime","seconds","getSeconds","makeEventsArrayForDatabase","arr","matchType","endTime","slice","eventLink","makeAthlEventsArrayForDatabase","indexOf","makeParticipantsAndTeamsObj","hotRef","athlTableRef","athlEvents","setAthlEvents","completedEventsIndexes","indexes","completedAthlEventsIndexes","_hotRef$current","hot","hotInstance","updateSettings","cells","row","col","cellProperties","readOnly","formatForTable","events","fEvents","date","second","formatForAthlTable","participant","key","otherEvents","saveTableData","_hotRef$current2","_athlTableRef$current","athlTable","allRows","athlRows","notCompletedEventsRows","notCompletedAthlEventsRows","validRows","validAthlRows","last","_i","_row","_last","getData","PostSchedule","error","concat","_toConsumableArray","updateEventsStatus","eventToBeUpdated","eventID","socket","on","off","marginTop","overflowX","maxHeight","HotTable","copyPaste","boxSizing","rowHeaders","columns","source","s","correctFormat","timeFormat","colHeaders","minSpareRows","colWidths","licenseKey","logs","setEvent","dialogueOpen","setDialogueOpen","GetEventByID","then","formatEventName","userName","stringify","prevScore","currentScore","setLogs","GetLogs","res","eventGroupedLogs","keys","LogItem","urlParam","useParams","signOut","useSignOut","auth","useAuthUser","showProfileDialog","setShowProfileDialog","allUsers","setAllUsers","allTeams","setAllTeams","SideBarItems","PeopleAltIcon","ScoreboardIcon","Diversity2Icon","TableChartIcon","AssignmentIcon","fetchUsers","Users","GetUsers","obj","fetchTeams","Teams","GetTeams","medals","points","handleLogout","Logout","refreshToken","getRefreshToken","handleAddUser","_ref4","userToAdd","CreateUserWithUsernameAndPassword","accessToken","handleUserDelete","userToDelete","DeleteUser","handleAddTeam","_callee6","teamToAdd","_context6","AddTeam","handleDeleteTeam","_ref7","_callee7","_context7","DeleteTeam","_x5","SideBar","margin","Routes","element","EditScores","ScheduleEditor","LogsViewer","_ref8","Route","path","io","RootURL","GridOnIcon","color","getDate","StartingDate","SportsSoccerIcon","SportsTennisIcon","fName","hasU","char","charAt"],"sourceRoot":""} \ No newline at end of file diff --git a/build/static/js/748.35c1458e.chunk.js.map b/build/static/js/748.35c1458e.chunk.js.map deleted file mode 100644 index d338283..0000000 --- a/build/static/js/748.35c1458e.chunk.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"static/js/748.35c1458e.chunk.js","mappings":"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","sources":["components/Header/header.tsx","components/LiveEventBoxes/CricketEventBox.tsx","components/LiveScoresBox.tsx","components/LiveEventsViewer.tsx","components/UpcomingEventsViewer.tsx","components/AthleticsGamesResultLog.tsx","components/CricketGameResultLog.tsx","components/PastGamesResultsViewer.tsx","components/Footer/Footer.tsx","Screens/Home.tsx","Utilities/Socket.ts","components/LiveEventBoxes/ChessEventBox.tsx","components/LiveEventBoxes/FootballEventBox.tsx","components/LiveEventBoxes/SquashEventBox.tsx","components/LiveEventBoxes/TennisEventBox.tsx","types/EventCategories.ts","../node_modules/@mui/icons-material/ArrowForward.js","../node_modules/@mui/icons-material/CallOutlined.js","../node_modules/@mui/icons-material/EmailOutlined.js","../node_modules/@mui/icons-material/Facebook.js","../node_modules/@mui/icons-material/HomeOutlined.js","../node_modules/@mui/icons-material/Instagram.js","../node_modules/@mui/icons-material/LinkedIn.js","../node_modules/@mui/icons-material/SportsCricket.js"],"sourcesContent":["import { useEffect, useState } from \"react\";\nimport { Link, useNavigate } from \"react-router-dom\";\n\nimport \"./header.css\";\nfunction Header() {\n\tconst Navigate = useNavigate();\n\tconst [headerBackground, setHeaderBackground] = useState(\"transparent\");\n\tconst [showNavbar, setShowNavbar] = useState(false);\n\tconst color = \"white\";\n\t// const anticolor = color === \"white\" ? \"black\" : \"white\";\n\tconst linkbg = color;\n\n\tuseEffect(() => {\n\t\tconst handleScroll = () => {\n\t\t\tif (window.scrollY > 100) {\n\t\t\t\tsetHeaderBackground(\"#fff\");\n\t\t\t\t(\n\t\t\t\t\tdocument.getElementsByClassName(\n\t\t\t\t\t\t\"cm-header-wrap\"\n\t\t\t\t\t) as HTMLCollectionOf\n\t\t\t\t)[0].style.marginTop = \"-1px\";\n\t\t\t\tif (window.innerWidth > 991) {\n\t\t\t\t\t(\n\t\t\t\t\t\tdocument.getElementsByClassName(\n\t\t\t\t\t\t\t\"cm-menu-inner\"\n\t\t\t\t\t\t) as HTMLCollectionOf\n\t\t\t\t\t)[0].style.boxShadow = \"0 0 2rem 0 rgba(0,0,0,0.2)\";\n\t\t\t\t}\n\t\t\t\t// color === 'white' ? setLinkbg(anticolor) : setLinkbg(color)\n\t\t\t} else {\n\t\t\t\tcolor === \"white\"\n\t\t\t\t\t? setHeaderBackground(\"transparent\")\n\t\t\t\t\t: setHeaderBackground(\"#fff\");\n\t\t\t\tif (window.innerWidth > 991) {\n\t\t\t\t\t(\n\t\t\t\t\t\tdocument.getElementsByClassName(\n\t\t\t\t\t\t\t\"cm-header-wrap\"\n\t\t\t\t\t\t) as HTMLCollectionOf\n\t\t\t\t\t)[0].style.marginTop = \"15px\";\n\t\t\t\t\t(\n\t\t\t\t\t\tdocument.getElementsByClassName(\n\t\t\t\t\t\t\t\"cm-menu-inner\"\n\t\t\t\t\t\t) as HTMLCollectionOf\n\t\t\t\t\t)[0].style.boxShadow = \"none\";\n\t\t\t\t}\n\t\t\t\t// setLinkbg(color)\n\t\t\t}\n\t\t};\n\n\t\twindow.addEventListener(\"scroll\", handleScroll);\n\n\t\treturn () => {\n\t\t\twindow.removeEventListener(\"scroll\", handleScroll);\n\t\t};\n\t}, []);\n\n\tconst handleFooterLink = () => {\n\t\tconst element = document.getElementsByClassName(\"footer-div\")[0];\n\t\tif (element) {\n\t\t\telement.scrollIntoView({ behavior: \"smooth\" });\n\t\t} else {\n\t\t\tNavigate(\"/\");\n\t\t\tsetTimeout(() => {\n\t\t\t\tconst updatedElement = document.getElementsByClassName(\"footer-div\")[0];\n\t\t\t\tif (updatedElement) {\n\t\t\t\t\tupdatedElement.scrollIntoView({ behavior: \"smooth\" });\n\t\t\t\t}\n\t\t\t}, 500);\n\t\t}\n\t};\n\tconst HomeLink = () => {\n\t\tconst element = document.getElementsByClassName(\"logos\")[0];\n\t\tif (element) {\n\t\t\telement.scrollIntoView({ behavior: \"smooth\" });\n\t\t} else {\n\t\t\tNavigate(\"/\");\n\t\t\tsetTimeout(() => {\n\t\t\t\tconst updatedElement = document.getElementsByClassName(\"logos\")[0];\n\t\t\t\tif (updatedElement) {\n\t\t\t\t\tupdatedElement.scrollIntoView({ behavior: \"smooth\" });\n\t\t\t\t}\n\t\t\t}, 500);\n\t\t}\n\t};\n\treturn (\n\t\t
\n\t\t\t
\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t
\n\t\t\t\n\t\t\t\t
\n\t\t\t\t\t setShowNavbar((prev) => !prev)}\n\t\t\t\t\t\tclassName=\"cm-menu-btn fa fa-bars\"\n\t\t\t\t\t>
\n\t\t\t\t\t
\n\t\t\t\t\t\t
    \n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tHome\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t
\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tLive Scores\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tSchedule\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t{/* Results */}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tResults\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tContact us\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t
  • \n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t
    \n\t);\n}\n\nexport default Header;\n","import { StartingDate } from \"../../App\";\r\nimport \"./LiveEventBox.css\";\r\nimport SportsCricketIcon from \"@mui/icons-material/SportsCricket\";\r\nimport CricketEvent from \"../../types/CricketEvent\";\r\n\r\nconst CricketEventBox = ({ event }: { event: CricketEvent }) => {\r\n\treturn (\r\n\t\t
    \r\n\t\t\t\r\n\t\t\t\t\r\n\t\t\t\tCricket\r\n\t\t\t\r\n\t\t\t

    {event.title}

    \r\n\t\t\t

    \r\n\t\t\t\t{event.subtitle} | Day{\" \"}\r\n\t\t\t\t{new Date(event.startTime).getDate() - StartingDate + 1} -{\" \"}\r\n\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\thour12: true,\r\n\t\t\t\t})}{\" \"}\r\n\t\t\t

    \r\n\r\n\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t

    {event.teams[0].name}

    \r\n\t\t\t\t
    \r\n\t\t\t\t

    VS

    \r\n\t\t\t\t
    \r\n\t\t\t\t\t

    {event.teams[1].name}

    \r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\r\n\t\t
    \r\n\t);\r\n};\r\n\r\nexport default CricketEventBox;\r\n","import { useEffect } from \"react\";\r\nimport Event from \"../types/Event\";\r\nimport EventCatagories from \"../types/EventCategories\";\r\nimport FootballEvent from \"../types/FootballEvent\";\r\nimport FootballEventBox from \"./LiveEventBoxes/FootballEventBox\";\r\nimport { socket } from \"../Utilities/Socket\";\r\nimport ChessEventBox from \"./LiveEventBoxes/ChessEventBox\";\r\nimport ChessEvent from \"../types/ChessEvent\";\r\nimport SquashEventBox from \"./LiveEventBoxes/SquashEventBox\";\r\nimport SquashEvent from \"../types/SquashEvent\";\r\nimport TennisEventBox from \"./LiveEventBoxes/TennisEventBox\";\r\nimport TennisEvent from \"../types/TennisEvent\";\r\nimport CricketEventBox from \"./LiveEventBoxes/CricketEventBox\";\r\nimport CricketEvent from \"../types/CricketEvent\";\r\n\r\nconst LiveScoresBox = ({\r\n\tevent,\r\n\tonScoreUpdate,\r\n}: {\r\n\tevent: Event;\r\n\tonScoreUpdate: (score: {}, eventID: string) => void;\r\n}) => {\r\n\tuseEffect(() => {\r\n\t\tsocket.emit(\"subscribe\", event._id);\r\n\t\tsocket.on(`scoreUpdate/${event._id}`, (data: string) =>\r\n\t\t\tonScoreUpdate(JSON.parse(data), event._id!)\r\n\t\t);\r\n\r\n\t\treturn () => {\r\n\t\t\tsocket.emit(\"unsubscribe\", event._id);\r\n\t\t\tsocket.off(`scoreUpdate/${event._id}`, (data: string) =>\r\n\t\t\t\tonScoreUpdate(JSON.parse(data), event._id!)\r\n\t\t\t);\r\n\t\t};\r\n\t}, [event, onScoreUpdate]);\r\n\r\n\tconst getEventBox = (event: Event): React.JSX.Element => {\r\n\t\tswitch (event.event) {\r\n\t\t\tcase EventCatagories.FOOTBALL:\r\n\t\t\t\treturn ;\r\n\t\t\tcase EventCatagories.CHESS:\r\n\t\t\t\treturn ;\r\n\t\t\tcase EventCatagories.SQUASH_MEN:\r\n\t\t\tcase EventCatagories.SQUASH_WOMEN:\r\n\t\t\t\treturn ;\r\n\t\t\tcase EventCatagories.TENNIS_MEN:\r\n\t\t\tcase EventCatagories.TENNIS_WOMEN:\r\n\t\t\t\treturn ;\r\n\t\t\tcase EventCatagories.CRICKET:\r\n\t\t\t\treturn ;\r\n\t\t\tdefault:\r\n\t\t\t\treturn <>;\r\n\t\t}\r\n\t};\r\n\treturn getEventBox(event);\r\n};\r\n\r\nexport default LiveScoresBox;\r\n","import Event from \"../types/Event\";\r\nimport LiveScoresBox from \"./LiveScoresBox\";\r\n\r\nconst LiveEventsViewer = ({\r\n\tliveEvents,\r\n\tonScoreUpdate,\r\n}: {\r\n\tliveEvents: Event[];\r\n\tonScoreUpdate: (score: {}, eventID: string) => void;\r\n}) => {\r\n\treturn (\r\n\t\t<>\r\n\t\t\t{liveEvents.length !== 0 && (\r\n\t\t\t\t 900 ? \"10px\" : \"0px\",\r\n\t\t\t\t\t\tpaddingBottom: \"10px\",\r\n\t\t\t\t\t\tfontSize: \"1.8em\",\r\n\t\t\t\t\t\tfontWeight: 900,\r\n\t\t\t\t\t}}\r\n\t\t\t\t\tclassName=\"wire\"\r\n\t\t\t\t>\r\n\t\t\t\t\tLive Scores\r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\t\r\n\t\t\t\t{liveEvents.length !== 0 ? (\r\n\t\t\t\t\tliveEvents.map((event, i) => (\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t))\r\n\t\t\t\t) : (\r\n\t\t\t\t\t<>No Live Events Right Now!\r\n\t\t\t\t)}\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default LiveEventsViewer;\r\n","import { StartingDate } from \"../App\";\r\nimport AthleticsEvent from \"../types/AthleticsEvent\";\r\nimport Event from \"../types/Event\";\r\nimport EventCatagories, { formatEventName } from \"../types/EventCategories\";\r\nimport \"./UpcomingEventsViewer.css\";\r\n\r\nconst UpcomingEventsViewer = ({\r\n\tevents,\r\n\theading,\r\n}: {\r\n\tevents: Event[];\r\n\theading?: React.JSX.Element;\r\n}) => {\r\n\treturn (\r\n\t\t
    \r\n\t\t\t{events.length !== 0 && heading}\r\n\t\t\t{events.length !== 0 ? (\r\n\t\t\t\tevents.map((event, i) => (\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    {formatEventName(event.event)}
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{event.event === EventCatagories.ATHLETICS\r\n\t\t\t\t\t\t\t\t? (event as AthleticsEvent).athleticsEventType\r\n\t\t\t\t\t\t\t\t: event.title}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t{event.event === EventCatagories.ATHLETICS\r\n\t\t\t\t\t\t\t\t? (event as AthleticsEvent).title\r\n\t\t\t\t\t\t\t\t: event.subtitle}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\tDay {new Date(event.startTime).getDate() - StartingDate + 1} -{\" \"}\r\n\t\t\t\t\t\t\t{new Date(event.startTime).toLocaleString(\"en-US\", {\r\n\t\t\t\t\t\t\t\thour: \"numeric\",\r\n\t\t\t\t\t\t\t\tminute: \"numeric\",\r\n\t\t\t\t\t\t\t\thour12: true,\r\n\t\t\t\t\t\t\t})}{\" \"}\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{event.event === EventCatagories.ATHLETICS ? (\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\tParticipants\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t{(event as AthleticsEvent).participants[0].map((p, i) => (\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t\t\t{p.name} : {p.team}\r\n\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t) : (\r\n\t\t\t\t\t\t\t
      \r\n\t\t\t\t\t\t\t\t{event.teams.map((team, i) => (\r\n\t\t\t\t\t\t\t\t\t
    • {team.name}
    • \r\n\t\t\t\t\t\t\t\t))}\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t)}\r\n\t\t\t\t\t
    \r\n\t\t\t\t))\r\n\t\t\t) : (\r\n\t\t\t\t<>No Upcoming Events!\r\n\t\t\t)}\r\n\t\t
    \r\n\t);\r\n};\r\n\r\nexport default UpcomingEventsViewer;\r\n","import AthleticsEvent from \"../types/AthleticsEvent\";\r\nimport { formatEventName } from \"../types/EventCategories\";\r\nimport { useState } from \"react\";\r\nimport \"./table.css\";\r\n\r\ninterface AthleticsGamesResultLogProps {\r\n\tevent: AthleticsEvent;\r\n}\r\n\r\nconst formatTime = (time: number) => {\r\n\treturn `${Math.floor(time / (60 * 1000))}m ${\r\n\t\tMath.floor(time % (60 * 1000)) / 1000\r\n\t}s`;\r\n};\r\n\r\nconst AthleticsGamesResultLog: React.FC = ({\r\n\tevent,\r\n}) => {\r\n\tconst [dialogueOpen, setDialogueOpen] = useState(false);\r\n\treturn (\r\n\t\t<>\r\n\t\t\t{dialogueOpen && (\r\n\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t\t{formatEventName(event.athleticsEventType)} {event.title}{\" \"}\r\n\t\t\t\t\t\t\t\tResults\r\n\t\t\t\t\t\t\t

    \r\n\t\t\t\t\t\t\t setDialogueOpen(false)}\r\n\t\t\t\t\t\t\t>\r\n\t\t\t\t\t\t\t\t×\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    \r\n\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\r\n\r\n\t\t\t\t\t\t\t\t{!!event.winner?.participants && (\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t{event.winner.participants.map((p, i) => {\r\n\t\t\t\t\t\t\t\t\t\t\tconsole.log(p);\r\n\t\t\t\t\t\t\t\t\t\t\treturn (\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\t);\r\n\t\t\t\t\t\t\t\t\t\t})}\r\n\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t
    RankParticipantTeam\r\n\t\t\t\t\t\t\t\t\t\t\t{!!event.winner?.participants &&\r\n\t\t\t\t\t\t\t\t\t\t\t!!event.winner?.participants[0].distance\r\n\t\t\t\t\t\t\t\t\t\t\t\t? \"Distance\"\r\n\t\t\t\t\t\t\t\t\t\t\t\t: \"Time\"}\r\n\t\t\t\t\t\t\t\t\t\t
    {i + 1}{p.name}{p.team}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t{p.distance ? p.distance + \"m\" : formatTime(p.time)}\r\n\t\t\t\t\t\t\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t\t\t{formatEventName(event.athleticsEventType)} {event.title} concluded.\r\n\t\t\t\t\r\n\t\t\t\t
    setDialogueOpen(true)}>\r\n\t\t\t\t\tView Results\r\n\t\t\t\t
    \r\n\t\t\t\t{/* TODO: Add view results */}\r\n\t\t\t
    \r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default AthleticsGamesResultLog;\r\n","import CricketEvent from \"../types/CricketEvent\";\r\n\r\nconst CricketGameResultLog = ({ event }: { event: CricketEvent }) => {\r\n\treturn (\r\n\t\t\r\n\t\t\t\r\n\t\t\t\t{event.event} {event.title} | {event.subtitle}, between{\" \"}\r\n\t\t\t\t{event.teams[0].name} and{\" \"}\r\n\t\t\t\t{event.teams[1].name} concluded.\r\n\t\t\t\r\n\t\t\t\r\n\t\t\t\tView Results\r\n\t\t\t\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default CricketGameResultLog;\r\n","import AthleticsEvent from \"../types/AthleticsEvent\";\r\nimport CricketEvent from \"../types/CricketEvent\";\r\nimport Event from \"../types/Event\";\r\nimport EventCatagories, { formatEventName } from \"../types/EventCategories\";\r\nimport TennisEvent from \"../types/TennisEvent\";\r\nimport AthleticsGamesResultLog from \"./AthleticsGamesResultLog\";\r\nimport CricketGameResultLog from \"./CricketGameResultLog\";\r\nimport \"./PastGamesResultsViewer.css\";\r\n\r\nconst PastGamesResultsViewer = ({ events }: { events: Event[] }) => {\r\n\treturn (\r\n\t\t\r\n\t\t\t{events.length === 0 ? (\r\n\t\t\t\t<>Past Games Results\r\n\t\t\t) : (\r\n\t\t\t\t<>\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tRecent Updates\r\n\t\t\t\t\t\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t{events.map((e, i) => (\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t))}\r\n\t\t\t\t\t
    \r\n\t\t\t\t\r\n\t\t\t)}\r\n\t\t\r\n\t);\r\n};\r\n\r\nexport default PastGamesResultsViewer;\r\n\r\nconst ResultLog = ({ event }: { event: Event }) => {\r\n\tconst getOppName = (e: Event): string => {\r\n\t\tfor (let i = 0; i < e.teams.length; i++) {\r\n\t\t\tconst team = e.teams[i];\r\n\t\t\tif (team.name !== e.winner?.team?.name) return team.name;\r\n\t\t}\r\n\t\treturn \"-\";\r\n\t};\r\n\tif (event.event === EventCatagories.ATHLETICS)\r\n\t\treturn ;\r\n\telse if (event.event === EventCatagories.CRICKET)\r\n\t\treturn ;\r\n\telse {\r\n\t\tif (event.winner?.team === undefined || event.winner?.team === null)\r\n\t\t\treturn (\r\n\t\t\t\t
    \r\n\t\t\t\t\t{formatEventName(event.event)} {event.title} | {event.subtitle},\r\n\t\t\t\t\tbetween {event.teams[0].name} and{\" \"}\r\n\t\t\t\t\t{event.teams[1].name} concluded with a\r\n\t\t\t\t\tDraw.\r\n\t\t\t\t
    \r\n\t\t\t);\r\n\t\telse\r\n\t\t\treturn (\r\n\t\t\t\t
    \r\n\t\t\t\t\t{event.winner?.team?.name} won{\" \"}\r\n\t\t\t\t\t{formatEventName(event.event)}\r\n\t\t\t\t\t{!!(event as TennisEvent)?.matchType\r\n\t\t\t\t\t\t? \"(\" + (event as TennisEvent)?.matchType + \")\"\r\n\t\t\t\t\t\t: null}{\" \"}\r\n\t\t\t\t\t{event.title} | {event.subtitle}, against{\" \"}\r\n\t\t\t\t\t{getOppName(event)}\r\n\t\t\t\t
    \r\n\t\t\t);\r\n\t}\r\n};\r\n","import { Link } from \"react-router-dom\";\r\nimport FacebookIcon from \"@mui/icons-material/Facebook\";\r\nimport InstagramIcon from \"@mui/icons-material/Instagram\";\r\nimport LinkedInIcon from \"@mui/icons-material/LinkedIn\";\r\nimport ArrowForwardIcon from \"@mui/icons-material/ArrowForward\";\r\nimport HomeOutlinedIcon from \"@mui/icons-material/HomeOutlined\";\r\nimport CallOutlinedIcon from \"@mui/icons-material/CallOutlined\";\r\nimport EmailOutlinedIcon from \"@mui/icons-material/EmailOutlined\";\r\n\r\nimport \"./footer.css\";\r\nconst Footer = () => {\r\n\treturn (\r\n\t\t
    \r\n\t\t\t
    \r\n\t\t\t\t

    Inter IIT Sports Meet 2023

    \r\n\t\t\t\t
    \r\n\t\t\t\t

    \r\n\t\t\t\t\tOfficial website of INTER IIT Sports Meet 2023

    Copyright ©\r\n\t\t\t\t\t2023, IIT Gandhinagar, All rights reserved{\" \"}\r\n\t\t\t\t

    \r\n\t\t\t\t
    \r\n\t\t\t\t

    \r\n\t\t\t\t\tLive Scoreboard developed with ❤️ by{\" \"}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tRomit\r\n\t\t\t\t\t{\" \"}\r\n\t\t\t\t\tand{\" \"}\r\n\t\t\t\t\t\r\n\t\t\t\t\t\tKaran\r\n\t\t\t\t\t{\" \"}\r\n\t\t\t\t

    \r\n\t\t\t\t
    \r\n\t\t\t\t
    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\tConnect with us!\r\n\t\t\t\t\t\r\n\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t{/* */}\r\n\t\t\t\t\t\r\n\t\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\t

    Quick Links

    \r\n\t\t\t\t\r\n\t\t\t\t\t{\" \"}\r\n\t\t\t\t\t

    \r\n\t\t\t\t\t\t  Home\r\n\t\t\t\t\t

    \r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t

    \r\n\t\t\t\t\t\t  Schedule\r\n\t\t\t\t\t

    \r\n\t\t\t\t\r\n\t\t\t\t\r\n\t\t\t\t\t

    \r\n\t\t\t\t\t\t  Results\r\n\t\t\t\t\t

    \r\n\t\t\t\t\r\n\t\t\t
    \r\n\t\t\t
    \r\n\t\t\t\t

    Reach Us

    \r\n\t\t\t\t

    \r\n\t\t\t\t\t\r\n\t\t\t\t\t  Get In Touch\r\n\t\t\t\t

    \r\n\t\t\t\t

    \r\n\t\t\t\t\t\r\n\t\t\t\t\t\tSports Complex, IIT Gandhinagar, Palaj, Gandhinagar, Gujarat -\r\n\t\t\t\t\t\t382355\r\n\t\t\t\t\t{\" \"}\r\n\t\t\t\t

    \r\n\t\t\t\t
    \r\n\t\t\t\t

    \r\n\t\t\t\t\t\r\n\t\t\t\t\t  CALL US\r\n\t\t\t\t

    \r\n\t\t\t\t

    \r\n\t\t\t\t\tAman Samria(+91 7357637225) Sports Secretary

    \r\n\t\t\t\t\tAnil Kataria (+91 83858 13914) Overall Coordinator

    \r\n\t\t\t\t\tSuteekshna Mishra (+91 9044412185) Hospitality Core\r\n\t\t\t\t

    \r\n\t\t\t\t
    \r\n\t\t\t\t

    \r\n\t\t\t\t\t\r\n\t\t\t\t\t  Email\r\n\t\t\t\t

    \r\n\t\t\t\t

    sports.secretary@iitgn.ac.in

    \r\n\t\t\t
    \r\n\t\t
    \r\n\t);\r\n};\r\n\r\nexport default Footer;\r\n\r\nconst styles = {\r\n\tfooter1: {\r\n\t\tbackgroundColor: \"#0351a4\",\r\n\t\tcolor: \"#fff\",\r\n\t\tpadding: \"20px\",\r\n\t\tdisplay: \"flex\",\r\n\t\tflexWrap: \"wrap\" as \"wrap\",\r\n\t\tjustifyContent: \"space-between\",\r\n\t\tmarginTop: \"50px\",\r\n\t},\r\n\tdescription: {\r\n\t\tflex: \"1 1 30%\",\r\n\t\tmarginBottom: \"20px\",\r\n\t\tpadding: \"20px\",\r\n\t},\r\n\tquickLinks: {\r\n\t\tdisplay: \"flex\",\r\n\t\t// justifyContent:'center',\r\n\t\tflexDirection: \"column\" as \"column\",\r\n\t\t// alignItems:'center',\r\n\t\tflex: \"1 1 30%\",\r\n\t\tpadding: \"20px 20px 20px 70px\",\r\n\t},\r\n\treachUs: {\r\n\t\tflex: \"1 1 30%\",\r\n\t\tmarginBottom: \"20px\",\r\n\t\tdisplay: \"flex\",\r\n\t\t// justifyContent:'center',\r\n\t\tflexDirection: \"column\" as \"column\",\r\n\t\talignItems: \"left\",\r\n\t\tpadding: \"20px\",\r\n\t},\r\n};\r\n","import { useEffect, useMemo, useState } from \"react\";\r\nimport Header from \"../components/Header/header\";\r\nimport LiveEventsViewer from \"../components/LiveEventsViewer\";\r\nimport { socket } from \"../Utilities/Socket\";\r\nimport API from \"../Utilities/ApiEndpoints\";\r\nimport Event from \"../types/Event\";\r\nimport SplashScreen from \"../components/SplashScreen\";\r\nimport UpcomingEventsViewer from \"../components/UpcomingEventsViewer\";\r\nimport \"./styles/Home.css\";\r\nimport PastGamesResultsViewer from \"../components/PastGamesResultsViewer\";\r\nimport Footer from \"../components/Footer/Footer\";\r\n\r\nconst UPCOMING_EVENTS_LIMIT_BUFFER = 12 * 60 * 60 * 1000;\r\n\r\nconst Home = () => {\r\n\tconst [events, setEvents] = useState([]);\r\n\tconst [isLoading, setIsLoading] = useState(true);\r\n\r\n\tconst liveEvents = useMemo(\r\n\t\t() => events.filter((event) => event.isStarted),\r\n\t\t[events]\r\n\t);\r\n\r\n\tconst upcomingEvents = useMemo(\r\n\t\t() =>\r\n\t\t\tevents.filter(\r\n\t\t\t\t(event) =>\r\n\t\t\t\t\t(event.endTime as number) > new Date().getTime() &&\r\n\t\t\t\t\tevent.isStarted === false &&\r\n\t\t\t\t\tevent.isCompleted === false\r\n\t\t\t),\r\n\t\t[events]\r\n\t);\r\n\r\n\tconst pastEvents = useMemo(() => {\r\n\t\tlet fEvents = events.filter((e) => e.isCompleted);\r\n\t\tfEvents.sort(\r\n\t\t\t(e1, e2) => (e1.startTime as number) - (e2.startTime as number)\r\n\t\t);\r\n\t\tfEvents.reverse();\r\n\t\treturn fEvents;\r\n\t\t// recently ended events first\r\n\t}, [events]);\r\n\r\n\tconst fetchEvents = async () => {\r\n\t\tconst result: Event[] = (await API.GetEvents()).data;\r\n\t\tresult.sort(\r\n\t\t\t(e1, e2) => (e1.startTime as number) - (e2.startTime as number)\r\n\t\t);\r\n\t\tsetEvents(result);\r\n\t\tsetIsLoading(false);\r\n\t};\r\n\r\n\tconst updateScoreOfEvent = (score: {}, eventID: string) => {\r\n\t\tsetEvents((prev) =>\r\n\t\t\tprev.map((event) => (eventID === event._id ? { ...event, score } : event))\r\n\t\t);\r\n\t};\r\n\r\n\tuseEffect(() => {\r\n\t\tconst updateEventsStatus = (data: string) => {\r\n\t\t\tconst eventToBeUpdated = JSON.parse(data);\r\n\t\t\tsetEvents((prev) =>\r\n\t\t\t\tprev.map((event) =>\r\n\t\t\t\t\teventToBeUpdated.eventID === event._id\r\n\t\t\t\t\t\t? {\r\n\t\t\t\t\t\t\t\t...event,\r\n\t\t\t\t\t\t\t\tisStarted: eventToBeUpdated.isStarted,\r\n\t\t\t\t\t\t\t\twinner: eventToBeUpdated.winner,\r\n\t\t\t\t\t\t\t\tisCompleted: eventToBeUpdated.isCompleted,\r\n\t\t\t\t\t\t }\r\n\t\t\t\t\t\t: event\r\n\t\t\t\t)\r\n\t\t\t);\r\n\t\t};\r\n\r\n\t\tsocket.on(\"connect\", () => console.log(\"connected WS\"));\r\n\t\tfetchEvents();\r\n\t\tsocket.on(\"eventStartOrEnd\", updateEventsStatus);\r\n\r\n\t\treturn () => {\r\n\t\t\tsocket.off(\"connect\");\r\n\t\t\tsocket.off(\"eventStartOrEnd\", updateEventsStatus);\r\n\t\t};\r\n\t}, []);\r\n\r\n\treturn (\r\n\t\t<>\r\n\t\t\t{isLoading ? (\r\n\t\t\t\t\r\n\t\t\t) : (\r\n\t\t\t\t<>\r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t\t\tUpcoming Events\r\n\t\t\t\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t\tevents={upcomingEvents.filter(\r\n\t\t\t\t\t\t\t\t\t\t(e) =>\r\n\t\t\t\t\t\t\t\t\t\t\t(e.startTime as number) <\r\n\t\t\t\t\t\t\t\t\t\t\tDate.now() + UPCOMING_EVENTS_LIMIT_BUFFER\r\n\t\t\t\t\t\t\t\t\t)}\r\n\t\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t\t
    \r\n\t\t\t\t\t\t\t\r\n\t\t\t\t\t\t
    \r\n\t\t\t\t\t
    \r\n\t\t\t\t\t