simplecov-material 0.4.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bd090db498cbd6c722f585dba6047e9f6f4de60c918754360067f59f455c04a1
4
- data.tar.gz: b86e1314e293b60672487f7b6017a4f05aa953d92f0d2949c7eed4a7083ffb8c
3
+ metadata.gz: f2a73d07f4ca78ff3f80b05f15254854500bab302b25d25a328645a330bd378e
4
+ data.tar.gz: '082c3e7b03764c9ff36627edc4d278316cb116e2a8dd4b5a745fd37888191f81'
5
5
  SHA512:
6
- metadata.gz: b7f71f1d975731c50a564ef493238deeb265c5b6fdcc2152cc9d0ebab58a6874183a570cd8fbf5b97cb0a35d23162338a902be2c0e8a2550d3d78e6f3e68b29f
7
- data.tar.gz: cadd4e5ae692768a60479bf816fe5a23944c1ec6681c0b6cbbbc4c1e4ac4f594b7070c839d4b1a48c61bfc9535c5b2ae9f220196143540e3d0f1d2bceff7ac70
6
+ metadata.gz: 9d3fdea3d3ec31b0342adb27c5a5aa7baa368306172244611bcaa3455b7076b48494d344743d4d031ce9227a86b88855bcf4581b1c3f5b2045e8f9c3bc4896f2
7
+ data.tar.gz: 454b5376fd772d2349e9704a5f8c5bacc56bb5298dc929d02a23a006bd9905424f621145d65c9b37c56f2e6f6e5002398bb31ec39a9a74f35b6ae0a0eb952429
@@ -9,13 +9,13 @@ jobs:
9
9
 
10
10
  strategy:
11
11
  matrix:
12
- ruby: [2.6.x, 2.5.x, 2.4.x, 2.3.x]
12
+ ruby: [2.6.x, 2.5.x, 2.4.x]
13
13
 
14
14
  steps:
15
15
  - name: Checkout Code
16
16
  uses: actions/checkout@v1
17
17
  - name: Set up Ruby
18
- uses: actions/setup-ruby@v1
18
+ uses: actions/setup-ruby@v1.1.0
19
19
  with:
20
20
  ruby-version: ${{ matrix.ruby }}
21
21
 
@@ -9,7 +9,7 @@ jobs:
9
9
 
10
10
  strategy:
11
11
  matrix:
12
- ruby: [2.6.x, 2.5.x, 2.4.x, 2.3.x]
12
+ ruby: [2.6.x, 2.5.x, 2.4.x]
13
13
 
14
14
  steps:
15
15
  - name: Checkout Code
@@ -140,7 +140,7 @@ Lint/EnsureReturn:
140
140
  Lint/FormatParameterMismatch:
141
141
  Description: The number of parameters to format/sprint must match the fields.
142
142
  Enabled: true
143
- Lint/HandleExceptions:
143
+ Lint/SuppressedException:
144
144
  Description: Don't suppress exception.
145
145
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#dont-hide-exceptions
146
146
  Enabled: true
@@ -174,7 +174,7 @@ Lint/ShadowingOuterLocalVariable:
174
174
  Description: Do not use the same name as outer local variable for block arguments
175
175
  or block local variables.
176
176
  Enabled: true
177
- Lint/StringConversionInInterpolation:
177
+ Lint/RedundantStringCoercion:
178
178
  Description: Checks for Object#to_s usage in string interpolation.
179
179
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-to-s
180
180
  Enabled: true
@@ -303,14 +303,14 @@ Style/Alias:
303
303
  Description: Use alias_method instead of alias.
304
304
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#alias-method
305
305
  Enabled: false
306
- Layout/AlignArray:
306
+ Layout/ArrayAlignment:
307
307
  Description: Align the elements of an array literal if they span more than one line.
308
308
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#align-multiline-arrays
309
309
  Enabled: true
310
- Layout/AlignHash:
310
+ Layout/HashAlignment:
311
311
  Description: Align the elements of a hash literal if they span more than one line.
312
312
  Enabled: true
313
- Layout/AlignParameters:
313
+ Layout/ParameterAlignment:
314
314
  Description: Align the parameters of a method call if they span more than one line.
315
315
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#no-double-indent
316
316
  Enabled: true
@@ -482,7 +482,7 @@ Layout/InitialIndentation:
482
482
  Description: Checks the indentation of the first non-blank non-comment line in a
483
483
  file.
484
484
  Enabled: false
485
- Layout/IndentFirstArgument:
485
+ Layout/FirstArgumentIndentation:
486
486
  Description: Checks the indentation of the first parameter in a method call.
487
487
  Enabled: false
488
488
  Lint/FlipFlop:
@@ -526,10 +526,10 @@ Layout/IndentationWidth:
526
526
  Description: Use 2 spaces for indentation.
527
527
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-indentation
528
528
  Enabled: true
529
- Layout/IndentFirstArrayElement:
529
+ Layout/FirstArrayElementIndentation:
530
530
  Description: Checks the indentation of the first element in an array literal.
531
531
  Enabled: false
532
- Layout/IndentFirstHashElement:
532
+ Layout/FirstHashElementIndentation:
533
533
  Description: Checks the indentation of the first key in a hash literal.
534
534
  Enabled: false
535
535
  Style/InfiniteLoop:
@@ -815,7 +815,7 @@ Layout/Tab:
815
815
  Description: No hard tabs.
816
816
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#spaces-indentation
817
817
  Enabled: false
818
- Layout/TrailingBlankLines:
818
+ Layout/TrailingEmptyLines:
819
819
  Description: Checks trailing blank lines and final newline.
820
820
  StyleGuide: https://github.com/bbatsov/ruby-style-guide#newline-eof
821
821
  Enabled: false
@@ -1,6 +1,13 @@
1
1
  # Changelog
2
2
 
3
- ## Version [0.4.0](https://github.com/chiefpansancolt/devise_materialize/releases/tag/0.4.0)
3
+ ## Version [0.5.0](https://github.com/chiefpansancolt/simplecov-material/releases/tag/0.5.0)
4
+
5
+ ### Bug Fixes
6
+ - Sort by value and not string usage (#8) Thanks @silent-e!
7
+ - Headers in Table overlap when screens are smaller (#10)
8
+ - Tile text breaks out of container at narrower widths (#11)
9
+
10
+ ## Version [0.4.0](https://github.com/chiefpansancolt/simplecov-material/releases/tag/0.4.0)
4
11
 
5
12
  ### Feature Additions
6
13
  - Enabled Github Action usage
@@ -9,7 +16,7 @@
9
16
  - Upgraded to MDC Data Table Usage
10
17
  - Updated Search Box UX
11
18
 
12
- ## Version [0.3.0](https://github.com/chiefpansancolt/devise_materialize/releases/tag/0.3.0)
19
+ ## Version [0.3.0](https://github.com/chiefpansancolt/simplecov-material/releases/tag/0.3.0)
13
20
 
14
21
  Initial Release
15
22
 
data/bin/setup CHANGED
@@ -4,3 +4,4 @@ IFS=$'\n\t'
4
4
  set -vx
5
5
 
6
6
  bundle install
7
+ yarn install
@@ -29,7 +29,9 @@ function sortTable(table, col, reverse) {
29
29
  var c;
30
30
  reverse = -((+reverse) || -1);
31
31
  tr = tr.sort(function(a, b) {
32
- return reverse * (a.cells[col].textContent.trim().localeCompare(b.cells[col].textContent.trim()));
32
+ return reverse * a.cells[col].dataset.sortVal.localeCompare(
33
+ b.cells[col].dataset.sortVal, undefined, {numeric: true},
34
+ );
33
35
  });
34
36
  for (i = 0; i < th.length; ++i) {
35
37
  for (c = 0; c < th[i].cells.length; ++c) {
@@ -1,5 +1,20 @@
1
1
  import {MDCTopAppBar} from '@material/top-app-bar';
2
+ import {MDCDrawer} from '@material/drawer';
2
3
 
4
+ const drawer = MDCDrawer.attachTo(document.querySelector('.mdc-drawer'));
3
5
  const topAppBar = MDCTopAppBar.attachTo(document.getElementById('app-bar'));
4
6
 
5
7
  topAppBar.setScrollTarget(document.querySelector('.main-content'));
8
+ topAppBar.listen('MDCTopAppBar:nav', () => {
9
+ drawer.open = !drawer.open;
10
+ });
11
+
12
+ function windowSizeChange() {
13
+ if (window.innerWidth <= 1250) {
14
+ drawer.open = false;
15
+ } else {
16
+ drawer.open = true;
17
+ }
18
+ }
19
+
20
+ window.addEventListener('resize', windowSizeChange);
@@ -2,14 +2,6 @@ table {
2
2
  border: {
3
3
  spacing: 0;
4
4
  }
5
- max: {
6
- width: 100%;
7
- }
8
- table: {
9
- layout: fixed;
10
- }
11
-
12
- width: 100%;
13
5
 
14
6
  thead,
15
7
  tbody {
@@ -31,16 +23,16 @@ table {
31
23
  align: top;
32
24
  }
33
25
 
34
- &.width-50 {
35
- width: 50%;
26
+ &.width-32 {
27
+ width: 32%;
36
28
  }
37
29
 
38
- &.width-5 {
39
- width: 5%;
30
+ &.width-8 {
31
+ width: 8%;
40
32
  }
41
33
 
42
- &.width-9 {
43
- width: 9%;
34
+ &.width-12 {
35
+ width: 12%;
44
36
  }
45
37
 
46
38
  .overflow {
@@ -68,3 +60,19 @@ table {
68
60
  .hide {
69
61
  display: none;
70
62
  }
63
+
64
+ @media only screen and (max-width: 1150px) {
65
+
66
+ .mdc-data-table {
67
+ width: 100%;
68
+ }
69
+ }
70
+
71
+ @media only screen and (min-width: 1149px) {
72
+
73
+ table {
74
+ table: {
75
+ layout: fixed;
76
+ }
77
+ }
78
+ }
@@ -3,7 +3,7 @@
3
3
  module SimpleCov
4
4
  module Formatter
5
5
  class MaterialFormatter
6
- VERSION = "0.4.0"
6
+ VERSION = "0.5.0"
7
7
  end
8
8
  end
9
9
  end
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "simplecov-material",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "description": "HTML Material Design View for Simplecov formatter",
5
5
  "scripts": {
6
6
  "build": "webpack --config webpack.config.js",
@@ -3411,7 +3411,7 @@ svg.mdc-button__icon {
3411
3411
  /* @alternate */
3412
3412
  background-color: var(--mdc-theme-secondary, #4FC3F7); }
3413
3413
 
3414
- @-webkit-keyframes mdc-checkbox-fade-in-background-ud575203d {
3414
+ @-webkit-keyframes mdc-checkbox-fade-in-background-u030084e2 {
3415
3415
  0% {
3416
3416
  border-color: rgba(0, 0, 0, 0.54);
3417
3417
  background-color: transparent; }
@@ -3423,7 +3423,7 @@ svg.mdc-button__icon {
3423
3423
  /* @alternate */
3424
3424
  background-color: var(--mdc-theme-secondary, #4FC3F7); } }
3425
3425
 
3426
- @keyframes mdc-checkbox-fade-in-background-ud575203d {
3426
+ @keyframes mdc-checkbox-fade-in-background-u030084e2 {
3427
3427
  0% {
3428
3428
  border-color: rgba(0, 0, 0, 0.54);
3429
3429
  background-color: transparent; }
@@ -3435,7 +3435,7 @@ svg.mdc-button__icon {
3435
3435
  /* @alternate */
3436
3436
  background-color: var(--mdc-theme-secondary, #4FC3F7); } }
3437
3437
 
3438
- @-webkit-keyframes mdc-checkbox-fade-out-background-ud575203d {
3438
+ @-webkit-keyframes mdc-checkbox-fade-out-background-u030084e2 {
3439
3439
  0%,
3440
3440
  80% {
3441
3441
  border-color: #4FC3F7;
@@ -3448,7 +3448,7 @@ svg.mdc-button__icon {
3448
3448
  border-color: rgba(0, 0, 0, 0.54);
3449
3449
  background-color: transparent; } }
3450
3450
 
3451
- @keyframes mdc-checkbox-fade-out-background-ud575203d {
3451
+ @keyframes mdc-checkbox-fade-out-background-u030084e2 {
3452
3452
  0%,
3453
3453
  80% {
3454
3454
  border-color: #4FC3F7;
@@ -3462,12 +3462,12 @@ svg.mdc-button__icon {
3462
3462
  background-color: transparent; } }
3463
3463
 
3464
3464
  .mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {
3465
- -webkit-animation-name: mdc-checkbox-fade-in-background-ud575203d;
3466
- animation-name: mdc-checkbox-fade-in-background-ud575203d; }
3465
+ -webkit-animation-name: mdc-checkbox-fade-in-background-u030084e2;
3466
+ animation-name: mdc-checkbox-fade-in-background-u030084e2; }
3467
3467
 
3468
3468
  .mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {
3469
- -webkit-animation-name: mdc-checkbox-fade-out-background-ud575203d;
3470
- animation-name: mdc-checkbox-fade-out-background-ud575203d; }
3469
+ -webkit-animation-name: mdc-checkbox-fade-out-background-u030084e2;
3470
+ animation-name: mdc-checkbox-fade-out-background-u030084e2; }
3471
3471
 
3472
3472
  .mdc-checkbox__checkmark {
3473
3473
  color: #FFF; }
@@ -4254,7 +4254,7 @@ svg.mdc-button__icon {
4254
4254
  /* @alternate */
4255
4255
  background-color: var(--mdc-theme-primary, #1A237E); }
4256
4256
 
4257
- @-webkit-keyframes mdc-checkbox-fade-in-background-u39295ac8 {
4257
+ @-webkit-keyframes mdc-checkbox-fade-in-background-u6358fa85 {
4258
4258
  0% {
4259
4259
  border-color: rgba(0, 0, 0, 0.54);
4260
4260
  background-color: transparent; }
@@ -4266,7 +4266,7 @@ svg.mdc-button__icon {
4266
4266
  /* @alternate */
4267
4267
  background-color: var(--mdc-theme-primary, #1A237E); } }
4268
4268
 
4269
- @keyframes mdc-checkbox-fade-in-background-u39295ac8 {
4269
+ @keyframes mdc-checkbox-fade-in-background-u6358fa85 {
4270
4270
  0% {
4271
4271
  border-color: rgba(0, 0, 0, 0.54);
4272
4272
  background-color: transparent; }
@@ -4278,7 +4278,7 @@ svg.mdc-button__icon {
4278
4278
  /* @alternate */
4279
4279
  background-color: var(--mdc-theme-primary, #1A237E); } }
4280
4280
 
4281
- @-webkit-keyframes mdc-checkbox-fade-out-background-u39295ac8 {
4281
+ @-webkit-keyframes mdc-checkbox-fade-out-background-u6358fa85 {
4282
4282
  0%,
4283
4283
  80% {
4284
4284
  border-color: #1A237E;
@@ -4291,7 +4291,7 @@ svg.mdc-button__icon {
4291
4291
  border-color: rgba(0, 0, 0, 0.54);
4292
4292
  background-color: transparent; } }
4293
4293
 
4294
- @keyframes mdc-checkbox-fade-out-background-u39295ac8 {
4294
+ @keyframes mdc-checkbox-fade-out-background-u6358fa85 {
4295
4295
  0%,
4296
4296
  80% {
4297
4297
  border-color: #1A237E;
@@ -4307,14 +4307,14 @@ svg.mdc-button__icon {
4307
4307
  .mdc-data-table__header-row-checkbox.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-data-table__header-row-checkbox.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background,
4308
4308
  .mdc-data-table__row-checkbox.mdc-checkbox--anim-unchecked-checked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background,
4309
4309
  .mdc-data-table__row-checkbox.mdc-checkbox--anim-unchecked-indeterminate .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {
4310
- -webkit-animation-name: mdc-checkbox-fade-in-background-u39295ac8;
4311
- animation-name: mdc-checkbox-fade-in-background-u39295ac8; }
4310
+ -webkit-animation-name: mdc-checkbox-fade-in-background-u6358fa85;
4311
+ animation-name: mdc-checkbox-fade-in-background-u6358fa85; }
4312
4312
 
4313
4313
  .mdc-data-table__header-row-checkbox.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background, .mdc-data-table__header-row-checkbox.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background,
4314
4314
  .mdc-data-table__row-checkbox.mdc-checkbox--anim-checked-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background,
4315
4315
  .mdc-data-table__row-checkbox.mdc-checkbox--anim-indeterminate-unchecked .mdc-checkbox__native-control:enabled ~ .mdc-checkbox__background {
4316
- -webkit-animation-name: mdc-checkbox-fade-out-background-u39295ac8;
4317
- animation-name: mdc-checkbox-fade-out-background-u39295ac8; }
4316
+ -webkit-animation-name: mdc-checkbox-fade-out-background-u6358fa85;
4317
+ animation-name: mdc-checkbox-fade-out-background-u6358fa85; }
4318
4318
 
4319
4319
  .mdc-dialog,
4320
4320
  .mdc-dialog__scrim {
@@ -11257,10 +11257,7 @@ section.footer {
11257
11257
  padding-right: 32px; }
11258
11258
 
11259
11259
  table {
11260
- border-spacing: 0;
11261
- max-width: 100%;
11262
- table-layout: fixed;
11263
- width: 100%; }
11260
+ border-spacing: 0; }
11264
11261
  table thead tr th,
11265
11262
  table tbody tr th {
11266
11263
  cursor: pointer; }
@@ -11271,21 +11268,21 @@ table {
11271
11268
  border-top: 0;
11272
11269
  padding: 1rem;
11273
11270
  vertical-align: top; }
11274
- table thead tr th.width-50,
11275
- table thead tr td.width-50,
11276
- table tbody tr th.width-50,
11277
- table tbody tr td.width-50 {
11278
- width: 50%; }
11279
- table thead tr th.width-5,
11280
- table thead tr td.width-5,
11281
- table tbody tr th.width-5,
11282
- table tbody tr td.width-5 {
11283
- width: 5%; }
11284
- table thead tr th.width-9,
11285
- table thead tr td.width-9,
11286
- table tbody tr th.width-9,
11287
- table tbody tr td.width-9 {
11288
- width: 9%; }
11271
+ table thead tr th.width-32,
11272
+ table thead tr td.width-32,
11273
+ table tbody tr th.width-32,
11274
+ table tbody tr td.width-32 {
11275
+ width: 32%; }
11276
+ table thead tr th.width-8,
11277
+ table thead tr td.width-8,
11278
+ table tbody tr th.width-8,
11279
+ table tbody tr td.width-8 {
11280
+ width: 8%; }
11281
+ table thead tr th.width-12,
11282
+ table thead tr td.width-12,
11283
+ table tbody tr th.width-12,
11284
+ table tbody tr td.width-12 {
11285
+ width: 12%; }
11289
11286
  table thead tr th .overflow,
11290
11287
  table thead tr td .overflow,
11291
11288
  table tbody tr th .overflow,
@@ -11303,6 +11300,14 @@ table {
11303
11300
  .hide {
11304
11301
  display: none; }
11305
11302
 
11303
+ @media only screen and (max-width: 1150px) {
11304
+ .mdc-data-table {
11305
+ width: 100%; } }
11306
+
11307
+ @media only screen and (min-width: 1149px) {
11308
+ table {
11309
+ table-layout: fixed; } }
11310
+
11306
11311
  .mdc-dialog--scrollable .mdc-dialog__content {
11307
11312
  padding: 0; }
11308
11313
 
@@ -177,7 +177,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _mat
177
177
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
178
178
 
179
179
  "use strict";
180
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"searchTable\", function() { return searchTable; });\n/* harmony import */ var _material_data_table__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @material/data-table */ \"./node_modules/@material/data-table/index.js\");\n\nnew _material_data_table__WEBPACK_IMPORTED_MODULE_0__[\"MDCDataTable\"](document.querySelector('.mdc-data-table'));\nfunction searchTable(elementId) {\n var input = document.getElementById(elementId);\n var filter = input.value.toUpperCase();\n var table = document.getElementById(elementId + '-table');\n var rows = table.getElementsByTagName('tbody')[0].getElementsByTagName('tr');\n\n for (var i = 0; i < rows.length; i++) {\n var row = rows[i].getElementsByTagName('td')[0];\n var txtValue = row.textContent || row.innerText;\n\n if (txtValue.toUpperCase().indexOf(filter) > -1) {\n rows[i].style.display = '';\n } else {\n rows[i].style.display = 'none';\n }\n }\n}\nwindow.searchTable = searchTable;\n\nfunction sortTable(table, col, reverse) {\n var tb = table.tBodies[0];\n var tbh = table.tHead;\n var th = Array.prototype.slice.call(tbh.rows, 0);\n var tr = Array.prototype.slice.call(tb.rows, 0);\n var i;\n var c;\n reverse = -(+reverse || -1);\n tr = tr.sort(function (a, b) {\n return reverse * a.cells[col].textContent.trim().localeCompare(b.cells[col].textContent.trim());\n });\n\n for (i = 0; i < th.length; ++i) {\n for (c = 0; c < th[i].cells.length; ++c) {\n if (c != col) {\n th[i].cells[c].childNodes[1].classList.add('hide');\n th[i].cells[c].childNodes[3].classList.add('hide');\n } else {\n if (reverse == 1) {\n th[i].cells[c].childNodes[1].classList.add('hide');\n th[i].cells[c].childNodes[3].classList.remove('hide');\n } else {\n th[i].cells[c].childNodes[1].classList.remove('hide');\n th[i].cells[c].childNodes[3].classList.add('hide');\n }\n }\n }\n }\n\n for (i = 0; i < tr.length; ++i) {\n tb.appendChild(tr[i]);\n }\n}\n\nfunction makeSortable(table) {\n var th = table.tHead;\n var i;\n th && (th = th.rows[0]) && (th = th.cells);\n if (th) i = th.length;else return;\n\n while (--i >= 0) {\n (function (i) {\n var dir = 1;\n th[i].addEventListener('click', function () {\n sortTable(table, i, dir = 1 - dir);\n });\n })(i);\n }\n\n ;\n}\n\nfunction makeAllSortable(parent) {\n parent = parent || document.body;\n var t = parent.getElementsByTagName('table');\n var i = t.length;\n\n while (--i >= 0) {\n makeSortable(t[i]);\n }\n\n ;\n}\n\nfunction defaultSort() {\n var t = document.getElementsByTagName('table');\n var i;\n\n for (i = 0; i < t.length; ++i) {\n sortTable(t[i], 1, -1);\n }\n}\n\nwindow.onload = function () {\n makeAllSortable();\n defaultSort();\n};\n\n//# sourceURL=webpack:///./dist/scripts/table.js?");
180
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"searchTable\", function() { return searchTable; });\n/* harmony import */ var _material_data_table__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @material/data-table */ \"./node_modules/@material/data-table/index.js\");\n\nnew _material_data_table__WEBPACK_IMPORTED_MODULE_0__[\"MDCDataTable\"](document.querySelector('.mdc-data-table'));\nfunction searchTable(elementId) {\n var input = document.getElementById(elementId);\n var filter = input.value.toUpperCase();\n var table = document.getElementById(elementId + '-table');\n var rows = table.getElementsByTagName('tbody')[0].getElementsByTagName('tr');\n\n for (var i = 0; i < rows.length; i++) {\n var row = rows[i].getElementsByTagName('td')[0];\n var txtValue = row.textContent || row.innerText;\n\n if (txtValue.toUpperCase().indexOf(filter) > -1) {\n rows[i].style.display = '';\n } else {\n rows[i].style.display = 'none';\n }\n }\n}\nwindow.searchTable = searchTable;\n\nfunction sortTable(table, col, reverse) {\n var tb = table.tBodies[0];\n var tbh = table.tHead;\n var th = Array.prototype.slice.call(tbh.rows, 0);\n var tr = Array.prototype.slice.call(tb.rows, 0);\n var i;\n var c;\n reverse = -(+reverse || -1);\n tr = tr.sort(function (a, b) {\n return reverse * a.cells[col].dataset.sortVal.localeCompare(b.cells[col].dataset.sortVal, undefined, {\n numeric: true\n });\n });\n\n for (i = 0; i < th.length; ++i) {\n for (c = 0; c < th[i].cells.length; ++c) {\n if (c != col) {\n th[i].cells[c].childNodes[1].classList.add('hide');\n th[i].cells[c].childNodes[3].classList.add('hide');\n } else {\n if (reverse == 1) {\n th[i].cells[c].childNodes[1].classList.add('hide');\n th[i].cells[c].childNodes[3].classList.remove('hide');\n } else {\n th[i].cells[c].childNodes[1].classList.remove('hide');\n th[i].cells[c].childNodes[3].classList.add('hide');\n }\n }\n }\n }\n\n for (i = 0; i < tr.length; ++i) {\n tb.appendChild(tr[i]);\n }\n}\n\nfunction makeSortable(table) {\n var th = table.tHead;\n var i;\n th && (th = th.rows[0]) && (th = th.cells);\n if (th) i = th.length;else return;\n\n while (--i >= 0) {\n (function (i) {\n var dir = 1;\n th[i].addEventListener('click', function () {\n sortTable(table, i, dir = 1 - dir);\n });\n })(i);\n }\n\n ;\n}\n\nfunction makeAllSortable(parent) {\n parent = parent || document.body;\n var t = parent.getElementsByTagName('table');\n var i = t.length;\n\n while (--i >= 0) {\n makeSortable(t[i]);\n }\n\n ;\n}\n\nfunction defaultSort() {\n var t = document.getElementsByTagName('table');\n var i;\n\n for (i = 0; i < t.length; ++i) {\n sortTable(t[i], 1, -1);\n }\n}\n\nwindow.onload = function () {\n makeAllSortable();\n defaultSort();\n};\n\n//# sourceURL=webpack:///./dist/scripts/table.js?");
181
181
 
182
182
  /***/ }),
183
183
 
@@ -201,7 +201,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var time
201
201
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
202
202
 
203
203
  "use strict";
204
- eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _material_top_app_bar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @material/top-app-bar */ \"./node_modules/@material/top-app-bar/index.js\");\n\nvar topAppBar = _material_top_app_bar__WEBPACK_IMPORTED_MODULE_0__[\"MDCTopAppBar\"].attachTo(document.getElementById('app-bar'));\ntopAppBar.setScrollTarget(document.querySelector('.main-content'));\n\n//# sourceURL=webpack:///./dist/scripts/topbar.js?");
204
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _material_top_app_bar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @material/top-app-bar */ \"./node_modules/@material/top-app-bar/index.js\");\n/* harmony import */ var _material_drawer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @material/drawer */ \"./node_modules/@material/drawer/index.js\");\n\n\nvar drawer = _material_drawer__WEBPACK_IMPORTED_MODULE_1__[\"MDCDrawer\"].attachTo(document.querySelector('.mdc-drawer'));\nvar topAppBar = _material_top_app_bar__WEBPACK_IMPORTED_MODULE_0__[\"MDCTopAppBar\"].attachTo(document.getElementById('app-bar'));\ntopAppBar.setScrollTarget(document.querySelector('.main-content'));\ntopAppBar.listen('MDCTopAppBar:nav', function () {\n drawer.open = !drawer.open;\n});\n\nfunction windowSizeChange() {\n if (window.innerWidth <= 1250) {\n drawer.open = false;\n } else {\n drawer.open = true;\n }\n}\n\nwindow.addEventListener('resize', windowSizeChange);\n\n//# sourceURL=webpack:///./dist/scripts/topbar.js?");
205
205
 
206
206
  /***/ }),
207
207
 
@@ -409,6 +409,78 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
409
409
 
410
410
  /***/ }),
411
411
 
412
+ /***/ "./node_modules/@material/drawer/component.js":
413
+ /*!****************************************************!*\
414
+ !*** ./node_modules/@material/drawer/component.js ***!
415
+ \****************************************************/
416
+ /*! exports provided: MDCDrawer */
417
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
418
+
419
+ "use strict";
420
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCDrawer\", function() { return MDCDrawer; });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _material_base_component__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @material/base/component */ \"./node_modules/@material/base/component.js\");\n/* harmony import */ var _material_list_component__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @material/list/component */ \"./node_modules/@material/list/component.js\");\n/* harmony import */ var _material_list_foundation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @material/list/foundation */ \"./node_modules/@material/list/foundation.js\");\n/* harmony import */ var focus_trap__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! focus-trap */ \"./node_modules/focus-trap/index.js\");\n/* harmony import */ var focus_trap__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(focus_trap__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _dismissible_foundation__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./dismissible/foundation */ \"./node_modules/@material/drawer/dismissible/foundation.js\");\n/* harmony import */ var _modal_foundation__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./modal/foundation */ \"./node_modules/@material/drawer/modal/foundation.js\");\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./util */ \"./node_modules/@material/drawer/util.js\");\n/**\n * @license\n * Copyright 2016 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\n\n\n\n\n\nvar cssClasses = _dismissible_foundation__WEBPACK_IMPORTED_MODULE_5__[\"MDCDismissibleDrawerFoundation\"].cssClasses, strings = _dismissible_foundation__WEBPACK_IMPORTED_MODULE_5__[\"MDCDismissibleDrawerFoundation\"].strings;\n/**\n * @events `MDCDrawer:closed {}` Emits when the navigation drawer has closed.\n * @events `MDCDrawer:opened {}` Emits when the navigation drawer has opened.\n */\nvar MDCDrawer = /** @class */ (function (_super) {\n tslib__WEBPACK_IMPORTED_MODULE_0__[\"__extends\"](MDCDrawer, _super);\n function MDCDrawer() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n MDCDrawer.attachTo = function (root) {\n return new MDCDrawer(root);\n };\n Object.defineProperty(MDCDrawer.prototype, \"open\", {\n /**\n * @return boolean Proxies to the foundation's `open`/`close` methods.\n * Also returns true if drawer is in the open position.\n */\n get: function () {\n return this.foundation_.isOpen();\n },\n /**\n * Toggles the drawer open and closed.\n */\n set: function (isOpen) {\n if (isOpen) {\n this.foundation_.open();\n }\n else {\n this.foundation_.close();\n }\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCDrawer.prototype, \"list\", {\n get: function () {\n return this.list_;\n },\n enumerable: true,\n configurable: true\n });\n MDCDrawer.prototype.initialize = function (focusTrapFactory, listFactory) {\n if (focusTrapFactory === void 0) { focusTrapFactory = focus_trap__WEBPACK_IMPORTED_MODULE_4___default.a; }\n if (listFactory === void 0) { listFactory = function (el) { return new _material_list_component__WEBPACK_IMPORTED_MODULE_2__[\"MDCList\"](el); }; }\n var listEl = this.root_.querySelector(\".\" + _material_list_foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCListFoundation\"].cssClasses.ROOT);\n if (listEl) {\n this.list_ = listFactory(listEl);\n this.list_.wrapFocus = true;\n }\n this.focusTrapFactory_ = focusTrapFactory;\n };\n MDCDrawer.prototype.initialSyncWithDOM = function () {\n var _this = this;\n var MODAL = cssClasses.MODAL;\n var SCRIM_SELECTOR = strings.SCRIM_SELECTOR;\n this.scrim_ = this.root_.parentNode.querySelector(SCRIM_SELECTOR);\n if (this.scrim_ && this.root_.classList.contains(MODAL)) {\n this.handleScrimClick_ = function () { return _this.foundation_.handleScrimClick(); };\n this.scrim_.addEventListener('click', this.handleScrimClick_);\n this.focusTrap_ = _util__WEBPACK_IMPORTED_MODULE_7__[\"createFocusTrapInstance\"](this.root_, this.focusTrapFactory_);\n }\n this.handleKeydown_ = function (evt) { return _this.foundation_.handleKeydown(evt); };\n this.handleTransitionEnd_ = function (evt) { return _this.foundation_.handleTransitionEnd(evt); };\n this.listen('keydown', this.handleKeydown_);\n this.listen('transitionend', this.handleTransitionEnd_);\n };\n MDCDrawer.prototype.destroy = function () {\n this.unlisten('keydown', this.handleKeydown_);\n this.unlisten('transitionend', this.handleTransitionEnd_);\n if (this.list_) {\n this.list_.destroy();\n }\n var MODAL = cssClasses.MODAL;\n if (this.scrim_ && this.handleScrimClick_ && this.root_.classList.contains(MODAL)) {\n this.scrim_.removeEventListener('click', this.handleScrimClick_);\n // Ensure drawer is closed to hide scrim and release focus\n this.open = false;\n }\n };\n MDCDrawer.prototype.getDefaultFoundation = function () {\n var _this = this;\n // DO NOT INLINE this variable. For backward compatibility, foundations take a Partial<MDCFooAdapter>.\n // To ensure we don't accidentally omit any methods, we need a separate, strongly typed adapter variable.\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\n var adapter = {\n addClass: function (className) { return _this.root_.classList.add(className); },\n removeClass: function (className) { return _this.root_.classList.remove(className); },\n hasClass: function (className) { return _this.root_.classList.contains(className); },\n elementHasClass: function (element, className) { return element.classList.contains(className); },\n saveFocus: function () { return _this.previousFocus_ = document.activeElement; },\n restoreFocus: function () {\n var previousFocus = _this.previousFocus_;\n if (previousFocus && previousFocus.focus && _this.root_.contains(document.activeElement)) {\n previousFocus.focus();\n }\n },\n focusActiveNavigationItem: function () {\n var activeNavItemEl = _this.root_.querySelector(\".\" + _material_list_foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCListFoundation\"].cssClasses.LIST_ITEM_ACTIVATED_CLASS);\n if (activeNavItemEl) {\n activeNavItemEl.focus();\n }\n },\n notifyClose: function () { return _this.emit(strings.CLOSE_EVENT, {}, true /* shouldBubble */); },\n notifyOpen: function () { return _this.emit(strings.OPEN_EVENT, {}, true /* shouldBubble */); },\n trapFocus: function () { return _this.focusTrap_.activate(); },\n releaseFocus: function () { return _this.focusTrap_.deactivate(); },\n };\n // tslint:enable:object-literal-sort-keys\n var DISMISSIBLE = cssClasses.DISMISSIBLE, MODAL = cssClasses.MODAL;\n if (this.root_.classList.contains(DISMISSIBLE)) {\n return new _dismissible_foundation__WEBPACK_IMPORTED_MODULE_5__[\"MDCDismissibleDrawerFoundation\"](adapter);\n }\n else if (this.root_.classList.contains(MODAL)) {\n return new _modal_foundation__WEBPACK_IMPORTED_MODULE_6__[\"MDCModalDrawerFoundation\"](adapter);\n }\n else {\n throw new Error(\"MDCDrawer: Failed to instantiate component. Supported variants are \" + DISMISSIBLE + \" and \" + MODAL + \".\");\n }\n };\n return MDCDrawer;\n}(_material_base_component__WEBPACK_IMPORTED_MODULE_1__[\"MDCComponent\"]));\n\n//# sourceMappingURL=component.js.map\n\n//# sourceURL=webpack:///./node_modules/@material/drawer/component.js?");
421
+
422
+ /***/ }),
423
+
424
+ /***/ "./node_modules/@material/drawer/constants.js":
425
+ /*!****************************************************!*\
426
+ !*** ./node_modules/@material/drawer/constants.js ***!
427
+ \****************************************************/
428
+ /*! exports provided: cssClasses, strings */
429
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
430
+
431
+ "use strict";
432
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"cssClasses\", function() { return cssClasses; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"strings\", function() { return strings; });\n/**\n * @license\n * Copyright 2016 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\nvar cssClasses = {\n ANIMATE: 'mdc-drawer--animate',\n CLOSING: 'mdc-drawer--closing',\n DISMISSIBLE: 'mdc-drawer--dismissible',\n MODAL: 'mdc-drawer--modal',\n OPEN: 'mdc-drawer--open',\n OPENING: 'mdc-drawer--opening',\n ROOT: 'mdc-drawer',\n};\nvar strings = {\n APP_CONTENT_SELECTOR: '.mdc-drawer-app-content',\n CLOSE_EVENT: 'MDCDrawer:closed',\n OPEN_EVENT: 'MDCDrawer:opened',\n SCRIM_SELECTOR: '.mdc-drawer-scrim',\n};\n\n//# sourceMappingURL=constants.js.map\n\n//# sourceURL=webpack:///./node_modules/@material/drawer/constants.js?");
433
+
434
+ /***/ }),
435
+
436
+ /***/ "./node_modules/@material/drawer/dismissible/foundation.js":
437
+ /*!*****************************************************************!*\
438
+ !*** ./node_modules/@material/drawer/dismissible/foundation.js ***!
439
+ \*****************************************************************/
440
+ /*! exports provided: MDCDismissibleDrawerFoundation, default */
441
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
442
+
443
+ "use strict";
444
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCDismissibleDrawerFoundation\", function() { return MDCDismissibleDrawerFoundation; });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _material_base_foundation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @material/base/foundation */ \"./node_modules/@material/base/foundation.js\");\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../constants */ \"./node_modules/@material/drawer/constants.js\");\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\nvar MDCDismissibleDrawerFoundation = /** @class */ (function (_super) {\n tslib__WEBPACK_IMPORTED_MODULE_0__[\"__extends\"](MDCDismissibleDrawerFoundation, _super);\n function MDCDismissibleDrawerFoundation(adapter) {\n var _this = _super.call(this, tslib__WEBPACK_IMPORTED_MODULE_0__[\"__assign\"]({}, MDCDismissibleDrawerFoundation.defaultAdapter, adapter)) || this;\n _this.animationFrame_ = 0;\n _this.animationTimer_ = 0;\n return _this;\n }\n Object.defineProperty(MDCDismissibleDrawerFoundation, \"strings\", {\n get: function () {\n return _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCDismissibleDrawerFoundation, \"cssClasses\", {\n get: function () {\n return _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"];\n },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(MDCDismissibleDrawerFoundation, \"defaultAdapter\", {\n get: function () {\n // tslint:disable:object-literal-sort-keys Methods should be in the same order as the adapter interface.\n return {\n addClass: function () { return undefined; },\n removeClass: function () { return undefined; },\n hasClass: function () { return false; },\n elementHasClass: function () { return false; },\n notifyClose: function () { return undefined; },\n notifyOpen: function () { return undefined; },\n saveFocus: function () { return undefined; },\n restoreFocus: function () { return undefined; },\n focusActiveNavigationItem: function () { return undefined; },\n trapFocus: function () { return undefined; },\n releaseFocus: function () { return undefined; },\n };\n // tslint:enable:object-literal-sort-keys\n },\n enumerable: true,\n configurable: true\n });\n MDCDismissibleDrawerFoundation.prototype.destroy = function () {\n if (this.animationFrame_) {\n cancelAnimationFrame(this.animationFrame_);\n }\n if (this.animationTimer_) {\n clearTimeout(this.animationTimer_);\n }\n };\n /**\n * Opens the drawer from the closed state.\n */\n MDCDismissibleDrawerFoundation.prototype.open = function () {\n var _this = this;\n if (this.isOpen() || this.isOpening() || this.isClosing()) {\n return;\n }\n this.adapter_.addClass(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].OPEN);\n this.adapter_.addClass(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].ANIMATE);\n // Wait a frame once display is no longer \"none\", to establish basis for animation\n this.runNextAnimationFrame_(function () {\n _this.adapter_.addClass(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].OPENING);\n });\n this.adapter_.saveFocus();\n };\n /**\n * Closes the drawer from the open state.\n */\n MDCDismissibleDrawerFoundation.prototype.close = function () {\n if (!this.isOpen() || this.isOpening() || this.isClosing()) {\n return;\n }\n this.adapter_.addClass(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].CLOSING);\n };\n /**\n * Returns true if the drawer is in the open position.\n * @return true if drawer is in open state.\n */\n MDCDismissibleDrawerFoundation.prototype.isOpen = function () {\n return this.adapter_.hasClass(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].OPEN);\n };\n /**\n * Returns true if the drawer is animating open.\n * @return true if drawer is animating open.\n */\n MDCDismissibleDrawerFoundation.prototype.isOpening = function () {\n return this.adapter_.hasClass(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].OPENING) || this.adapter_.hasClass(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].ANIMATE);\n };\n /**\n * Returns true if the drawer is animating closed.\n * @return true if drawer is animating closed.\n */\n MDCDismissibleDrawerFoundation.prototype.isClosing = function () {\n return this.adapter_.hasClass(_constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].CLOSING);\n };\n /**\n * Keydown handler to close drawer when key is escape.\n */\n MDCDismissibleDrawerFoundation.prototype.handleKeydown = function (evt) {\n var keyCode = evt.keyCode, key = evt.key;\n var isEscape = key === 'Escape' || keyCode === 27;\n if (isEscape) {\n this.close();\n }\n };\n /**\n * Handles the `transitionend` event when the drawer finishes opening/closing.\n */\n MDCDismissibleDrawerFoundation.prototype.handleTransitionEnd = function (evt) {\n var OPENING = _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].OPENING, CLOSING = _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].CLOSING, OPEN = _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].OPEN, ANIMATE = _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].ANIMATE, ROOT = _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"].ROOT;\n // In Edge, transitionend on ripple pseudo-elements yields a target without classList, so check for Element first.\n var isRootElement = this.isElement_(evt.target) && this.adapter_.elementHasClass(evt.target, ROOT);\n if (!isRootElement) {\n return;\n }\n if (this.isClosing()) {\n this.adapter_.removeClass(OPEN);\n this.closed_();\n this.adapter_.restoreFocus();\n this.adapter_.notifyClose();\n }\n else {\n this.adapter_.focusActiveNavigationItem();\n this.opened_();\n this.adapter_.notifyOpen();\n }\n this.adapter_.removeClass(ANIMATE);\n this.adapter_.removeClass(OPENING);\n this.adapter_.removeClass(CLOSING);\n };\n /**\n * Extension point for when drawer finishes open animation.\n */\n MDCDismissibleDrawerFoundation.prototype.opened_ = function () { }; // tslint:disable-line:no-empty\n /**\n * Extension point for when drawer finishes close animation.\n */\n MDCDismissibleDrawerFoundation.prototype.closed_ = function () { }; // tslint:disable-line:no-empty\n /**\n * Runs the given logic on the next animation frame, using setTimeout to factor in Firefox reflow behavior.\n */\n MDCDismissibleDrawerFoundation.prototype.runNextAnimationFrame_ = function (callback) {\n var _this = this;\n cancelAnimationFrame(this.animationFrame_);\n this.animationFrame_ = requestAnimationFrame(function () {\n _this.animationFrame_ = 0;\n clearTimeout(_this.animationTimer_);\n _this.animationTimer_ = setTimeout(callback, 0);\n });\n };\n MDCDismissibleDrawerFoundation.prototype.isElement_ = function (element) {\n // In Edge, transitionend on ripple pseudo-elements yields a target without classList.\n return Boolean(element.classList);\n };\n return MDCDismissibleDrawerFoundation;\n}(_material_base_foundation__WEBPACK_IMPORTED_MODULE_1__[\"MDCFoundation\"]));\n\n// tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\n/* harmony default export */ __webpack_exports__[\"default\"] = (MDCDismissibleDrawerFoundation);\n//# sourceMappingURL=foundation.js.map\n\n//# sourceURL=webpack:///./node_modules/@material/drawer/dismissible/foundation.js?");
445
+
446
+ /***/ }),
447
+
448
+ /***/ "./node_modules/@material/drawer/index.js":
449
+ /*!************************************************!*\
450
+ !*** ./node_modules/@material/drawer/index.js ***!
451
+ \************************************************/
452
+ /*! exports provided: util, MDCDrawer, cssClasses, strings, MDCDismissibleDrawerFoundation, MDCModalDrawerFoundation */
453
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
454
+
455
+ "use strict";
456
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ \"./node_modules/@material/drawer/util.js\");\n/* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, \"util\", function() { return _util__WEBPACK_IMPORTED_MODULE_0__; });\n/* harmony import */ var _component__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./component */ \"./node_modules/@material/drawer/component.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"MDCDrawer\", function() { return _component__WEBPACK_IMPORTED_MODULE_1__[\"MDCDrawer\"]; });\n\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./constants */ \"./node_modules/@material/drawer/constants.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"cssClasses\", function() { return _constants__WEBPACK_IMPORTED_MODULE_2__[\"cssClasses\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"strings\", function() { return _constants__WEBPACK_IMPORTED_MODULE_2__[\"strings\"]; });\n\n/* harmony import */ var _dismissible_foundation__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./dismissible/foundation */ \"./node_modules/@material/drawer/dismissible/foundation.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"MDCDismissibleDrawerFoundation\", function() { return _dismissible_foundation__WEBPACK_IMPORTED_MODULE_3__[\"MDCDismissibleDrawerFoundation\"]; });\n\n/* harmony import */ var _modal_foundation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./modal/foundation */ \"./node_modules/@material/drawer/modal/foundation.js\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"MDCModalDrawerFoundation\", function() { return _modal_foundation__WEBPACK_IMPORTED_MODULE_4__[\"MDCModalDrawerFoundation\"]; });\n\n/**\n * @license\n * Copyright 2019 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n\n\n\n\n//# sourceMappingURL=index.js.map\n\n//# sourceURL=webpack:///./node_modules/@material/drawer/index.js?");
457
+
458
+ /***/ }),
459
+
460
+ /***/ "./node_modules/@material/drawer/modal/foundation.js":
461
+ /*!***********************************************************!*\
462
+ !*** ./node_modules/@material/drawer/modal/foundation.js ***!
463
+ \***********************************************************/
464
+ /*! exports provided: MDCModalDrawerFoundation, default */
465
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
466
+
467
+ "use strict";
468
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"MDCModalDrawerFoundation\", function() { return MDCModalDrawerFoundation; });\n/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ \"./node_modules/tslib/tslib.es6.js\");\n/* harmony import */ var _dismissible_foundation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../dismissible/foundation */ \"./node_modules/@material/drawer/dismissible/foundation.js\");\n/**\n * @license\n * Copyright 2018 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\n\n/* istanbul ignore next: subclass is not a branch statement */\nvar MDCModalDrawerFoundation = /** @class */ (function (_super) {\n tslib__WEBPACK_IMPORTED_MODULE_0__[\"__extends\"](MDCModalDrawerFoundation, _super);\n function MDCModalDrawerFoundation() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n /**\n * Handles click event on scrim.\n */\n MDCModalDrawerFoundation.prototype.handleScrimClick = function () {\n this.close();\n };\n /**\n * Called when drawer finishes open animation.\n */\n MDCModalDrawerFoundation.prototype.opened_ = function () {\n this.adapter_.trapFocus();\n };\n /**\n * Called when drawer finishes close animation.\n */\n MDCModalDrawerFoundation.prototype.closed_ = function () {\n this.adapter_.releaseFocus();\n };\n return MDCModalDrawerFoundation;\n}(_dismissible_foundation__WEBPACK_IMPORTED_MODULE_1__[\"MDCDismissibleDrawerFoundation\"]));\n\n// tslint:disable-next-line:no-default-export Needed for backward compatibility with MDC Web v0.44.0 and earlier.\n/* harmony default export */ __webpack_exports__[\"default\"] = (MDCModalDrawerFoundation);\n//# sourceMappingURL=foundation.js.map\n\n//# sourceURL=webpack:///./node_modules/@material/drawer/modal/foundation.js?");
469
+
470
+ /***/ }),
471
+
472
+ /***/ "./node_modules/@material/drawer/util.js":
473
+ /*!***********************************************!*\
474
+ !*** ./node_modules/@material/drawer/util.js ***!
475
+ \***********************************************/
476
+ /*! exports provided: createFocusTrapInstance */
477
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
478
+
479
+ "use strict";
480
+ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"createFocusTrapInstance\", function() { return createFocusTrapInstance; });\n/* harmony import */ var focus_trap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! focus-trap */ \"./node_modules/focus-trap/index.js\");\n/* harmony import */ var focus_trap__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(focus_trap__WEBPACK_IMPORTED_MODULE_0__);\n/**\n * @license\n * Copyright 2016 Google Inc.\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n\nfunction createFocusTrapInstance(surfaceEl, focusTrapFactory) {\n if (focusTrapFactory === void 0) { focusTrapFactory = focus_trap__WEBPACK_IMPORTED_MODULE_0___default.a; }\n return focusTrapFactory(surfaceEl, {\n clickOutsideDeactivates: true,\n escapeDeactivates: false,\n initialFocus: undefined,\n returnFocusOnDeactivate: false,\n });\n}\n//# sourceMappingURL=util.js.map\n\n//# sourceURL=webpack:///./node_modules/@material/drawer/util.js?");
481
+
482
+ /***/ }),
483
+
412
484
  /***/ "./node_modules/@material/floating-label/component.js":
413
485
  /*!************************************************************!*\
414
486
  !*** ./node_modules/@material/floating-label/component.js ***!