@docsvision/material-ui-pickers 3.2.0-beta.22 → 3.2.0-beta.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/.size-snapshot.json +26 -0
  2. package/{DatePicker → build/DatePicker}/DatePicker.d.ts +1 -1
  3. package/{DatePicker → build/DatePicker}/DatePicker.js +1 -1
  4. package/{DatePicker → build/DatePicker}/DatePickerToolbar.d.ts +0 -0
  5. package/{DatePicker → build/DatePicker}/DatePickerToolbar.js +0 -0
  6. package/{DatePicker → build/DatePicker}/index.d.ts +0 -0
  7. package/{DatePicker → build/DatePicker}/index.js +0 -0
  8. package/{DateTimePicker → build/DateTimePicker}/DateTimePicker.d.ts +0 -0
  9. package/{DateTimePicker → build/DateTimePicker}/DateTimePicker.js +1 -1
  10. package/{DateTimePicker → build/DateTimePicker}/DateTimePickerTabs.d.ts +0 -0
  11. package/{DateTimePicker → build/DateTimePicker}/DateTimePickerTabs.js +0 -0
  12. package/{DateTimePicker → build/DateTimePicker}/DateTimePickerToolbar.d.ts +0 -0
  13. package/{DateTimePicker → build/DateTimePicker}/DateTimePickerToolbar.js +0 -0
  14. package/{DateTimePicker → build/DateTimePicker}/index.d.ts +0 -0
  15. package/{DateTimePicker → build/DateTimePicker}/index.js +0 -0
  16. package/{MuiPickersUtilsProvider.d.ts → build/MuiPickersUtilsProvider.d.ts} +0 -0
  17. package/{MuiPickersUtilsProvider.js → build/MuiPickersUtilsProvider.js} +0 -0
  18. package/{Picker → build/Picker}/Picker.d.ts +0 -0
  19. package/{Picker → build/Picker}/Picker.js +1 -1
  20. package/{Picker → build/Picker}/WrappedKeyboardPicker.d.ts +0 -0
  21. package/{Picker → build/Picker}/WrappedKeyboardPicker.js +0 -0
  22. package/{Picker → build/Picker}/WrappedPurePicker.d.ts +0 -0
  23. package/{Picker → build/Picker}/WrappedPurePicker.js +0 -0
  24. package/{README.md → build/README.md} +1 -1
  25. package/{Rifm → build/Rifm}/Rifm.d.ts +0 -0
  26. package/{Rifm → build/Rifm}/Rifm.js +0 -0
  27. package/{TimePicker → build/TimePicker}/TimePicker.d.ts +0 -0
  28. package/{TimePicker → build/TimePicker}/TimePicker.js +1 -1
  29. package/{TimePicker → build/TimePicker}/TimePickerToolbar.d.ts +0 -0
  30. package/{TimePicker → build/TimePicker}/TimePickerToolbar.js +0 -0
  31. package/{TimePicker → build/TimePicker}/index.d.ts +0 -0
  32. package/{TimePicker → build/TimePicker}/index.js +0 -0
  33. package/{_helpers → build/_helpers}/date-utils.d.ts +0 -0
  34. package/{_helpers → build/_helpers}/date-utils.js +0 -0
  35. package/{_helpers → build/_helpers}/text-field-helper.d.ts +1 -1
  36. package/{_helpers → build/_helpers}/text-field-helper.js +0 -0
  37. package/{_helpers → build/_helpers}/time-utils.d.ts +0 -0
  38. package/{_helpers → build/_helpers}/time-utils.js +0 -0
  39. package/{_helpers → build/_helpers}/utils.d.ts +0 -0
  40. package/{_helpers → build/_helpers}/utils.js +0 -0
  41. package/{_shared → build/_shared}/KeyboardDateInput.d.ts +0 -0
  42. package/{_shared → build/_shared}/KeyboardDateInput.js +9 -5
  43. package/{_shared → build/_shared}/ModalDialog.d.ts +2 -2
  44. package/{_shared → build/_shared}/ModalDialog.js +0 -0
  45. package/{_shared → build/_shared}/PickerToolbar.d.ts +0 -0
  46. package/{_shared → build/_shared}/PickerToolbar.js +0 -0
  47. package/{_shared → build/_shared}/PureDateInput.d.ts +0 -0
  48. package/{_shared → build/_shared}/PureDateInput.js +1 -1
  49. package/{_shared → build/_shared}/ToolbarButton.d.ts +2 -2
  50. package/{_shared → build/_shared}/ToolbarButton.js +0 -0
  51. package/{_shared → build/_shared}/ToolbarText.d.ts +0 -0
  52. package/{_shared → build/_shared}/ToolbarText.js +0 -0
  53. package/{_shared → build/_shared}/WithUtils.d.ts +0 -0
  54. package/{_shared → build/_shared}/WithUtils.js +0 -0
  55. package/{_shared → build/_shared}/hooks/useIsLandscape.d.ts +0 -0
  56. package/{_shared → build/_shared}/hooks/useIsLandscape.js +0 -0
  57. package/{_shared → build/_shared}/hooks/useKeyDown.d.ts +0 -0
  58. package/{_shared → build/_shared}/hooks/useKeyDown.js +0 -0
  59. package/{_shared → build/_shared}/hooks/useKeyboardPickerState.d.ts +0 -0
  60. package/{_shared → build/_shared}/hooks/useKeyboardPickerState.js +2 -2
  61. package/{_shared → build/_shared}/hooks/useOpenState.d.ts +0 -0
  62. package/{_shared → build/_shared}/hooks/useOpenState.js +0 -0
  63. package/{_shared → build/_shared}/hooks/usePickerState.d.ts +0 -0
  64. package/{_shared → build/_shared}/hooks/usePickerState.js +0 -0
  65. package/{_shared → build/_shared}/hooks/useUtils.d.ts +0 -0
  66. package/{_shared → build/_shared}/hooks/useUtils.js +0 -0
  67. package/{_shared → build/_shared}/hooks/useViews.d.ts +0 -0
  68. package/{_shared → build/_shared}/hooks/useViews.js +0 -0
  69. package/{_shared → build/_shared}/icons/ArrowLeftIcon.d.ts +0 -0
  70. package/{_shared → build/_shared}/icons/ArrowLeftIcon.js +0 -0
  71. package/{_shared → build/_shared}/icons/ArrowRightIcon.d.ts +0 -0
  72. package/{_shared → build/_shared}/icons/ArrowRightIcon.js +0 -0
  73. package/{_shared → build/_shared}/icons/DateRangeIcon.d.ts +0 -0
  74. package/{_shared → build/_shared}/icons/DateRangeIcon.js +0 -0
  75. package/{_shared → build/_shared}/icons/KeyboardIcon.d.ts +0 -0
  76. package/{_shared → build/_shared}/icons/KeyboardIcon.js +0 -0
  77. package/{_shared → build/_shared}/icons/TimeIcon.d.ts +0 -0
  78. package/{_shared → build/_shared}/icons/TimeIcon.js +0 -0
  79. package/{constants → build/constants}/ClockType.d.ts +0 -0
  80. package/{constants → build/constants}/ClockType.js +0 -0
  81. package/{constants → build/constants}/dimensions.d.ts +0 -0
  82. package/{constants → build/constants}/dimensions.js +0 -0
  83. package/{constants → build/constants}/prop-types.d.ts +0 -0
  84. package/{constants → build/constants}/prop-types.js +1 -1
  85. package/{dist → build/dist}/material-ui-pickers.esm.js +22 -13
  86. package/build/dist/material-ui-pickers.esm.js.map +1 -0
  87. package/{dist → build/dist}/material-ui-pickers.js +71 -62
  88. package/build/dist/material-ui-pickers.js.map +1 -0
  89. package/{dist → build/dist}/material-ui-pickers.umd.js +4531 -5801
  90. package/build/dist/material-ui-pickers.umd.min.js +1 -0
  91. package/{index.d.ts → build/index.d.ts} +0 -0
  92. package/{index.js → build/index.js} +0 -0
  93. package/build/package.json +62 -0
  94. package/{typings → build/typings}/BasePicker.d.ts +0 -0
  95. package/{typings → build/typings}/BasePicker.js +0 -0
  96. package/{typings → build/typings}/date.d.ts +0 -0
  97. package/{typings → build/typings}/date.js +0 -0
  98. package/{typings → build/typings}/extendMui.d.ts +0 -0
  99. package/{typings → build/typings}/extendMui.js +0 -0
  100. package/{typings → build/typings}/overrides.d.ts +0 -0
  101. package/{typings → build/typings}/overrides.js +0 -0
  102. package/{views → build/views}/Calendar/Calendar.d.ts +0 -0
  103. package/{views → build/views}/Calendar/Calendar.js +2 -1
  104. package/{views → build/views}/Calendar/CalendarHeader.d.ts +0 -0
  105. package/{views → build/views}/Calendar/CalendarHeader.js +0 -0
  106. package/{views → build/views}/Calendar/Day.d.ts +0 -0
  107. package/{views → build/views}/Calendar/Day.js +0 -0
  108. package/{views → build/views}/Calendar/DayWrapper.d.ts +0 -0
  109. package/{views → build/views}/Calendar/DayWrapper.js +0 -0
  110. package/{views → build/views}/Calendar/SlideTransition.d.ts +0 -0
  111. package/{views → build/views}/Calendar/SlideTransition.js +0 -0
  112. package/{views → build/views}/Clock/Clock.d.ts +1 -1
  113. package/{views → build/views}/Clock/Clock.js +0 -0
  114. package/{views → build/views}/Clock/ClockNumber.d.ts +0 -0
  115. package/{views → build/views}/Clock/ClockNumber.js +0 -0
  116. package/{views → build/views}/Clock/ClockNumbers.d.ts +0 -0
  117. package/{views → build/views}/Clock/ClockNumbers.js +0 -0
  118. package/{views → build/views}/Clock/ClockPointer.d.ts +1 -1
  119. package/{views → build/views}/Clock/ClockPointer.js +0 -0
  120. package/{views → build/views}/Clock/ClockView.d.ts +0 -0
  121. package/{views → build/views}/Clock/ClockView.js +0 -0
  122. package/{views → build/views}/Month/Month.d.ts +0 -0
  123. package/{views → build/views}/Month/Month.js +0 -0
  124. package/{views → build/views}/Month/MonthView.d.ts +0 -0
  125. package/{views → build/views}/Month/MonthView.js +0 -0
  126. package/{views → build/views}/Year/Year.d.ts +0 -0
  127. package/{views → build/views}/Year/Year.js +0 -0
  128. package/{views → build/views}/Year/YearView.d.ts +0 -0
  129. package/{views → build/views}/Year/YearView.js +0 -0
  130. package/{wrappers → build/wrappers}/InlineWrapper.d.ts +0 -0
  131. package/{wrappers → build/wrappers}/InlineWrapper.js +0 -0
  132. package/{wrappers → build/wrappers}/ModalWrapper.d.ts +0 -0
  133. package/{wrappers → build/wrappers}/ModalWrapper.js +0 -0
  134. package/{wrappers → build/wrappers}/StaticWrapper.d.ts +0 -0
  135. package/{wrappers → build/wrappers}/StaticWrapper.js +0 -0
  136. package/{wrappers → build/wrappers}/Wrapper.d.ts +0 -0
  137. package/{wrappers → build/wrappers}/Wrapper.js +0 -0
  138. package/copy.js +58 -0
  139. package/coverage/clover.xml +601 -0
  140. package/coverage/coverage-final.json +22 -0
  141. package/coverage/lcov-report/base.css +224 -0
  142. package/coverage/lcov-report/block-navigation.js +79 -0
  143. package/coverage/lcov-report/index.html +201 -0
  144. package/coverage/lcov-report/prettify.css +1 -0
  145. package/coverage/lcov-report/prettify.js +2 -0
  146. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  147. package/coverage/lcov-report/sorter.js +170 -0
  148. package/coverage/lcov-report/src/MuiPickersUtilsProvider.tsx.html +186 -0
  149. package/coverage/lcov-report/src/_helpers/date-utils.ts.html +345 -0
  150. package/coverage/lcov-report/src/_helpers/index.html +123 -0
  151. package/coverage/lcov-report/src/_helpers/time-utils.ts.html +318 -0
  152. package/coverage/lcov-report/src/_helpers/utils.ts.html +93 -0
  153. package/coverage/lcov-report/src/_shared/ModalDialog.tsx.html +411 -0
  154. package/coverage/lcov-report/src/_shared/WithUtils.tsx.html +126 -0
  155. package/coverage/lcov-report/src/_shared/hooks/index.html +110 -0
  156. package/coverage/lcov-report/src/_shared/hooks/useKeyDown.ts.html +171 -0
  157. package/coverage/lcov-report/src/_shared/hooks/useUtils.ts.html +129 -0
  158. package/coverage/lcov-report/src/_shared/icons/ArrowLeftIcon.tsx.html +102 -0
  159. package/coverage/lcov-report/src/_shared/icons/ArrowRightIcon.tsx.html +102 -0
  160. package/coverage/lcov-report/src/_shared/icons/index.html +110 -0
  161. package/coverage/lcov-report/src/_shared/index.html +110 -0
  162. package/coverage/lcov-report/src/constants/ClockType.ts.html +102 -0
  163. package/coverage/lcov-report/src/constants/dimensions.ts.html +84 -0
  164. package/coverage/lcov-report/src/constants/index.html +110 -0
  165. package/coverage/lcov-report/src/index.html +97 -0
  166. package/coverage/lcov-report/src/views/Calendar/Calendar.tsx.html +1152 -0
  167. package/coverage/lcov-report/src/views/Calendar/CalendarHeader.tsx.html +492 -0
  168. package/coverage/lcov-report/src/views/Calendar/Day.tsx.html +360 -0
  169. package/coverage/lcov-report/src/views/Calendar/DayWrapper.tsx.html +168 -0
  170. package/coverage/lcov-report/src/views/Calendar/SlideTransition.tsx.html +369 -0
  171. package/coverage/lcov-report/src/views/Calendar/index.html +149 -0
  172. package/coverage/lcov-report/src/views/Clock/Clock.tsx.html +585 -0
  173. package/coverage/lcov-report/src/views/Clock/ClockPointer.tsx.html +381 -0
  174. package/coverage/lcov-report/src/views/Clock/index.html +110 -0
  175. package/coverage/lcov-report/src/views/Month/Month.tsx.html +297 -0
  176. package/coverage/lcov-report/src/views/Month/MonthView.tsx.html +351 -0
  177. package/coverage/lcov-report/src/views/Month/index.html +110 -0
  178. package/coverage/lcov.info +1094 -0
  179. package/package.json +135 -62
  180. package/remove-prop-types.js +37 -0
  181. package/rollup.config.js +145 -0
  182. package/tsconfig.json +21 -0
  183. package/typings.d.ts +6 -0
  184. package/dist/material-ui-pickers.esm.js.map +0 -1
  185. package/dist/material-ui-pickers.js.map +0 -1
  186. package/dist/material-ui-pickers.umd.min.js +0 -1
@@ -0,0 +1,1152 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <title>Code coverage report for src/views/Calendar/Calendar.tsx</title>
5
+ <meta charset="utf-8" />
6
+ <link rel="stylesheet" href="..\..\..\prettify.css" />
7
+ <link rel="stylesheet" href="..\..\..\base.css" />
8
+ <meta name="viewport" content="width=device-width, initial-scale=1">
9
+ <style type='text/css'>
10
+ .coverage-summary .sorter {
11
+ background-image: url(..\..\..\sort-arrow-sprite.png);
12
+ }
13
+ </style>
14
+ </head>
15
+ <body>
16
+ <div class='wrapper'>
17
+ <div class='pad1'>
18
+ <h1>
19
+ <a href="..\..\..\index.html">All files</a> / <a href="index.html">src/views/Calendar</a> Calendar.tsx
20
+ </h1>
21
+ <div class='clearfix'>
22
+ <div class='fl pad1y space-right2'>
23
+ <span class="strong">80.13% </span>
24
+ <span class="quiet">Statements</span>
25
+ <span class='fraction'>121/151</span>
26
+ </div>
27
+ <div class='fl pad1y space-right2'>
28
+ <span class="strong">53.33% </span>
29
+ <span class="quiet">Branches</span>
30
+ <span class='fraction'>32/60</span>
31
+ </div>
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">51.85% </span>
34
+ <span class="quiet">Functions</span>
35
+ <span class='fraction'>14/27</span>
36
+ </div>
37
+ <div class='fl pad1y space-right2'>
38
+ <span class="strong">78.07% </span>
39
+ <span class="quiet">Lines</span>
40
+ <span class='fraction'>89/114</span>
41
+ </div>
42
+ </div>
43
+ <p class="quiet">
44
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
45
+ </p>
46
+ </div>
47
+ <div class='status-line high'></div>
48
+ <pre><table class="coverage">
49
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
50
+ <a name='L2'></a><a href='#L2'>2</a>
51
+ <a name='L3'></a><a href='#L3'>3</a>
52
+ <a name='L4'></a><a href='#L4'>4</a>
53
+ <a name='L5'></a><a href='#L5'>5</a>
54
+ <a name='L6'></a><a href='#L6'>6</a>
55
+ <a name='L7'></a><a href='#L7'>7</a>
56
+ <a name='L8'></a><a href='#L8'>8</a>
57
+ <a name='L9'></a><a href='#L9'>9</a>
58
+ <a name='L10'></a><a href='#L10'>10</a>
59
+ <a name='L11'></a><a href='#L11'>11</a>
60
+ <a name='L12'></a><a href='#L12'>12</a>
61
+ <a name='L13'></a><a href='#L13'>13</a>
62
+ <a name='L14'></a><a href='#L14'>14</a>
63
+ <a name='L15'></a><a href='#L15'>15</a>
64
+ <a name='L16'></a><a href='#L16'>16</a>
65
+ <a name='L17'></a><a href='#L17'>17</a>
66
+ <a name='L18'></a><a href='#L18'>18</a>
67
+ <a name='L19'></a><a href='#L19'>19</a>
68
+ <a name='L20'></a><a href='#L20'>20</a>
69
+ <a name='L21'></a><a href='#L21'>21</a>
70
+ <a name='L22'></a><a href='#L22'>22</a>
71
+ <a name='L23'></a><a href='#L23'>23</a>
72
+ <a name='L24'></a><a href='#L24'>24</a>
73
+ <a name='L25'></a><a href='#L25'>25</a>
74
+ <a name='L26'></a><a href='#L26'>26</a>
75
+ <a name='L27'></a><a href='#L27'>27</a>
76
+ <a name='L28'></a><a href='#L28'>28</a>
77
+ <a name='L29'></a><a href='#L29'>29</a>
78
+ <a name='L30'></a><a href='#L30'>30</a>
79
+ <a name='L31'></a><a href='#L31'>31</a>
80
+ <a name='L32'></a><a href='#L32'>32</a>
81
+ <a name='L33'></a><a href='#L33'>33</a>
82
+ <a name='L34'></a><a href='#L34'>34</a>
83
+ <a name='L35'></a><a href='#L35'>35</a>
84
+ <a name='L36'></a><a href='#L36'>36</a>
85
+ <a name='L37'></a><a href='#L37'>37</a>
86
+ <a name='L38'></a><a href='#L38'>38</a>
87
+ <a name='L39'></a><a href='#L39'>39</a>
88
+ <a name='L40'></a><a href='#L40'>40</a>
89
+ <a name='L41'></a><a href='#L41'>41</a>
90
+ <a name='L42'></a><a href='#L42'>42</a>
91
+ <a name='L43'></a><a href='#L43'>43</a>
92
+ <a name='L44'></a><a href='#L44'>44</a>
93
+ <a name='L45'></a><a href='#L45'>45</a>
94
+ <a name='L46'></a><a href='#L46'>46</a>
95
+ <a name='L47'></a><a href='#L47'>47</a>
96
+ <a name='L48'></a><a href='#L48'>48</a>
97
+ <a name='L49'></a><a href='#L49'>49</a>
98
+ <a name='L50'></a><a href='#L50'>50</a>
99
+ <a name='L51'></a><a href='#L51'>51</a>
100
+ <a name='L52'></a><a href='#L52'>52</a>
101
+ <a name='L53'></a><a href='#L53'>53</a>
102
+ <a name='L54'></a><a href='#L54'>54</a>
103
+ <a name='L55'></a><a href='#L55'>55</a>
104
+ <a name='L56'></a><a href='#L56'>56</a>
105
+ <a name='L57'></a><a href='#L57'>57</a>
106
+ <a name='L58'></a><a href='#L58'>58</a>
107
+ <a name='L59'></a><a href='#L59'>59</a>
108
+ <a name='L60'></a><a href='#L60'>60</a>
109
+ <a name='L61'></a><a href='#L61'>61</a>
110
+ <a name='L62'></a><a href='#L62'>62</a>
111
+ <a name='L63'></a><a href='#L63'>63</a>
112
+ <a name='L64'></a><a href='#L64'>64</a>
113
+ <a name='L65'></a><a href='#L65'>65</a>
114
+ <a name='L66'></a><a href='#L66'>66</a>
115
+ <a name='L67'></a><a href='#L67'>67</a>
116
+ <a name='L68'></a><a href='#L68'>68</a>
117
+ <a name='L69'></a><a href='#L69'>69</a>
118
+ <a name='L70'></a><a href='#L70'>70</a>
119
+ <a name='L71'></a><a href='#L71'>71</a>
120
+ <a name='L72'></a><a href='#L72'>72</a>
121
+ <a name='L73'></a><a href='#L73'>73</a>
122
+ <a name='L74'></a><a href='#L74'>74</a>
123
+ <a name='L75'></a><a href='#L75'>75</a>
124
+ <a name='L76'></a><a href='#L76'>76</a>
125
+ <a name='L77'></a><a href='#L77'>77</a>
126
+ <a name='L78'></a><a href='#L78'>78</a>
127
+ <a name='L79'></a><a href='#L79'>79</a>
128
+ <a name='L80'></a><a href='#L80'>80</a>
129
+ <a name='L81'></a><a href='#L81'>81</a>
130
+ <a name='L82'></a><a href='#L82'>82</a>
131
+ <a name='L83'></a><a href='#L83'>83</a>
132
+ <a name='L84'></a><a href='#L84'>84</a>
133
+ <a name='L85'></a><a href='#L85'>85</a>
134
+ <a name='L86'></a><a href='#L86'>86</a>
135
+ <a name='L87'></a><a href='#L87'>87</a>
136
+ <a name='L88'></a><a href='#L88'>88</a>
137
+ <a name='L89'></a><a href='#L89'>89</a>
138
+ <a name='L90'></a><a href='#L90'>90</a>
139
+ <a name='L91'></a><a href='#L91'>91</a>
140
+ <a name='L92'></a><a href='#L92'>92</a>
141
+ <a name='L93'></a><a href='#L93'>93</a>
142
+ <a name='L94'></a><a href='#L94'>94</a>
143
+ <a name='L95'></a><a href='#L95'>95</a>
144
+ <a name='L96'></a><a href='#L96'>96</a>
145
+ <a name='L97'></a><a href='#L97'>97</a>
146
+ <a name='L98'></a><a href='#L98'>98</a>
147
+ <a name='L99'></a><a href='#L99'>99</a>
148
+ <a name='L100'></a><a href='#L100'>100</a>
149
+ <a name='L101'></a><a href='#L101'>101</a>
150
+ <a name='L102'></a><a href='#L102'>102</a>
151
+ <a name='L103'></a><a href='#L103'>103</a>
152
+ <a name='L104'></a><a href='#L104'>104</a>
153
+ <a name='L105'></a><a href='#L105'>105</a>
154
+ <a name='L106'></a><a href='#L106'>106</a>
155
+ <a name='L107'></a><a href='#L107'>107</a>
156
+ <a name='L108'></a><a href='#L108'>108</a>
157
+ <a name='L109'></a><a href='#L109'>109</a>
158
+ <a name='L110'></a><a href='#L110'>110</a>
159
+ <a name='L111'></a><a href='#L111'>111</a>
160
+ <a name='L112'></a><a href='#L112'>112</a>
161
+ <a name='L113'></a><a href='#L113'>113</a>
162
+ <a name='L114'></a><a href='#L114'>114</a>
163
+ <a name='L115'></a><a href='#L115'>115</a>
164
+ <a name='L116'></a><a href='#L116'>116</a>
165
+ <a name='L117'></a><a href='#L117'>117</a>
166
+ <a name='L118'></a><a href='#L118'>118</a>
167
+ <a name='L119'></a><a href='#L119'>119</a>
168
+ <a name='L120'></a><a href='#L120'>120</a>
169
+ <a name='L121'></a><a href='#L121'>121</a>
170
+ <a name='L122'></a><a href='#L122'>122</a>
171
+ <a name='L123'></a><a href='#L123'>123</a>
172
+ <a name='L124'></a><a href='#L124'>124</a>
173
+ <a name='L125'></a><a href='#L125'>125</a>
174
+ <a name='L126'></a><a href='#L126'>126</a>
175
+ <a name='L127'></a><a href='#L127'>127</a>
176
+ <a name='L128'></a><a href='#L128'>128</a>
177
+ <a name='L129'></a><a href='#L129'>129</a>
178
+ <a name='L130'></a><a href='#L130'>130</a>
179
+ <a name='L131'></a><a href='#L131'>131</a>
180
+ <a name='L132'></a><a href='#L132'>132</a>
181
+ <a name='L133'></a><a href='#L133'>133</a>
182
+ <a name='L134'></a><a href='#L134'>134</a>
183
+ <a name='L135'></a><a href='#L135'>135</a>
184
+ <a name='L136'></a><a href='#L136'>136</a>
185
+ <a name='L137'></a><a href='#L137'>137</a>
186
+ <a name='L138'></a><a href='#L138'>138</a>
187
+ <a name='L139'></a><a href='#L139'>139</a>
188
+ <a name='L140'></a><a href='#L140'>140</a>
189
+ <a name='L141'></a><a href='#L141'>141</a>
190
+ <a name='L142'></a><a href='#L142'>142</a>
191
+ <a name='L143'></a><a href='#L143'>143</a>
192
+ <a name='L144'></a><a href='#L144'>144</a>
193
+ <a name='L145'></a><a href='#L145'>145</a>
194
+ <a name='L146'></a><a href='#L146'>146</a>
195
+ <a name='L147'></a><a href='#L147'>147</a>
196
+ <a name='L148'></a><a href='#L148'>148</a>
197
+ <a name='L149'></a><a href='#L149'>149</a>
198
+ <a name='L150'></a><a href='#L150'>150</a>
199
+ <a name='L151'></a><a href='#L151'>151</a>
200
+ <a name='L152'></a><a href='#L152'>152</a>
201
+ <a name='L153'></a><a href='#L153'>153</a>
202
+ <a name='L154'></a><a href='#L154'>154</a>
203
+ <a name='L155'></a><a href='#L155'>155</a>
204
+ <a name='L156'></a><a href='#L156'>156</a>
205
+ <a name='L157'></a><a href='#L157'>157</a>
206
+ <a name='L158'></a><a href='#L158'>158</a>
207
+ <a name='L159'></a><a href='#L159'>159</a>
208
+ <a name='L160'></a><a href='#L160'>160</a>
209
+ <a name='L161'></a><a href='#L161'>161</a>
210
+ <a name='L162'></a><a href='#L162'>162</a>
211
+ <a name='L163'></a><a href='#L163'>163</a>
212
+ <a name='L164'></a><a href='#L164'>164</a>
213
+ <a name='L165'></a><a href='#L165'>165</a>
214
+ <a name='L166'></a><a href='#L166'>166</a>
215
+ <a name='L167'></a><a href='#L167'>167</a>
216
+ <a name='L168'></a><a href='#L168'>168</a>
217
+ <a name='L169'></a><a href='#L169'>169</a>
218
+ <a name='L170'></a><a href='#L170'>170</a>
219
+ <a name='L171'></a><a href='#L171'>171</a>
220
+ <a name='L172'></a><a href='#L172'>172</a>
221
+ <a name='L173'></a><a href='#L173'>173</a>
222
+ <a name='L174'></a><a href='#L174'>174</a>
223
+ <a name='L175'></a><a href='#L175'>175</a>
224
+ <a name='L176'></a><a href='#L176'>176</a>
225
+ <a name='L177'></a><a href='#L177'>177</a>
226
+ <a name='L178'></a><a href='#L178'>178</a>
227
+ <a name='L179'></a><a href='#L179'>179</a>
228
+ <a name='L180'></a><a href='#L180'>180</a>
229
+ <a name='L181'></a><a href='#L181'>181</a>
230
+ <a name='L182'></a><a href='#L182'>182</a>
231
+ <a name='L183'></a><a href='#L183'>183</a>
232
+ <a name='L184'></a><a href='#L184'>184</a>
233
+ <a name='L185'></a><a href='#L185'>185</a>
234
+ <a name='L186'></a><a href='#L186'>186</a>
235
+ <a name='L187'></a><a href='#L187'>187</a>
236
+ <a name='L188'></a><a href='#L188'>188</a>
237
+ <a name='L189'></a><a href='#L189'>189</a>
238
+ <a name='L190'></a><a href='#L190'>190</a>
239
+ <a name='L191'></a><a href='#L191'>191</a>
240
+ <a name='L192'></a><a href='#L192'>192</a>
241
+ <a name='L193'></a><a href='#L193'>193</a>
242
+ <a name='L194'></a><a href='#L194'>194</a>
243
+ <a name='L195'></a><a href='#L195'>195</a>
244
+ <a name='L196'></a><a href='#L196'>196</a>
245
+ <a name='L197'></a><a href='#L197'>197</a>
246
+ <a name='L198'></a><a href='#L198'>198</a>
247
+ <a name='L199'></a><a href='#L199'>199</a>
248
+ <a name='L200'></a><a href='#L200'>200</a>
249
+ <a name='L201'></a><a href='#L201'>201</a>
250
+ <a name='L202'></a><a href='#L202'>202</a>
251
+ <a name='L203'></a><a href='#L203'>203</a>
252
+ <a name='L204'></a><a href='#L204'>204</a>
253
+ <a name='L205'></a><a href='#L205'>205</a>
254
+ <a name='L206'></a><a href='#L206'>206</a>
255
+ <a name='L207'></a><a href='#L207'>207</a>
256
+ <a name='L208'></a><a href='#L208'>208</a>
257
+ <a name='L209'></a><a href='#L209'>209</a>
258
+ <a name='L210'></a><a href='#L210'>210</a>
259
+ <a name='L211'></a><a href='#L211'>211</a>
260
+ <a name='L212'></a><a href='#L212'>212</a>
261
+ <a name='L213'></a><a href='#L213'>213</a>
262
+ <a name='L214'></a><a href='#L214'>214</a>
263
+ <a name='L215'></a><a href='#L215'>215</a>
264
+ <a name='L216'></a><a href='#L216'>216</a>
265
+ <a name='L217'></a><a href='#L217'>217</a>
266
+ <a name='L218'></a><a href='#L218'>218</a>
267
+ <a name='L219'></a><a href='#L219'>219</a>
268
+ <a name='L220'></a><a href='#L220'>220</a>
269
+ <a name='L221'></a><a href='#L221'>221</a>
270
+ <a name='L222'></a><a href='#L222'>222</a>
271
+ <a name='L223'></a><a href='#L223'>223</a>
272
+ <a name='L224'></a><a href='#L224'>224</a>
273
+ <a name='L225'></a><a href='#L225'>225</a>
274
+ <a name='L226'></a><a href='#L226'>226</a>
275
+ <a name='L227'></a><a href='#L227'>227</a>
276
+ <a name='L228'></a><a href='#L228'>228</a>
277
+ <a name='L229'></a><a href='#L229'>229</a>
278
+ <a name='L230'></a><a href='#L230'>230</a>
279
+ <a name='L231'></a><a href='#L231'>231</a>
280
+ <a name='L232'></a><a href='#L232'>232</a>
281
+ <a name='L233'></a><a href='#L233'>233</a>
282
+ <a name='L234'></a><a href='#L234'>234</a>
283
+ <a name='L235'></a><a href='#L235'>235</a>
284
+ <a name='L236'></a><a href='#L236'>236</a>
285
+ <a name='L237'></a><a href='#L237'>237</a>
286
+ <a name='L238'></a><a href='#L238'>238</a>
287
+ <a name='L239'></a><a href='#L239'>239</a>
288
+ <a name='L240'></a><a href='#L240'>240</a>
289
+ <a name='L241'></a><a href='#L241'>241</a>
290
+ <a name='L242'></a><a href='#L242'>242</a>
291
+ <a name='L243'></a><a href='#L243'>243</a>
292
+ <a name='L244'></a><a href='#L244'>244</a>
293
+ <a name='L245'></a><a href='#L245'>245</a>
294
+ <a name='L246'></a><a href='#L246'>246</a>
295
+ <a name='L247'></a><a href='#L247'>247</a>
296
+ <a name='L248'></a><a href='#L248'>248</a>
297
+ <a name='L249'></a><a href='#L249'>249</a>
298
+ <a name='L250'></a><a href='#L250'>250</a>
299
+ <a name='L251'></a><a href='#L251'>251</a>
300
+ <a name='L252'></a><a href='#L252'>252</a>
301
+ <a name='L253'></a><a href='#L253'>253</a>
302
+ <a name='L254'></a><a href='#L254'>254</a>
303
+ <a name='L255'></a><a href='#L255'>255</a>
304
+ <a name='L256'></a><a href='#L256'>256</a>
305
+ <a name='L257'></a><a href='#L257'>257</a>
306
+ <a name='L258'></a><a href='#L258'>258</a>
307
+ <a name='L259'></a><a href='#L259'>259</a>
308
+ <a name='L260'></a><a href='#L260'>260</a>
309
+ <a name='L261'></a><a href='#L261'>261</a>
310
+ <a name='L262'></a><a href='#L262'>262</a>
311
+ <a name='L263'></a><a href='#L263'>263</a>
312
+ <a name='L264'></a><a href='#L264'>264</a>
313
+ <a name='L265'></a><a href='#L265'>265</a>
314
+ <a name='L266'></a><a href='#L266'>266</a>
315
+ <a name='L267'></a><a href='#L267'>267</a>
316
+ <a name='L268'></a><a href='#L268'>268</a>
317
+ <a name='L269'></a><a href='#L269'>269</a>
318
+ <a name='L270'></a><a href='#L270'>270</a>
319
+ <a name='L271'></a><a href='#L271'>271</a>
320
+ <a name='L272'></a><a href='#L272'>272</a>
321
+ <a name='L273'></a><a href='#L273'>273</a>
322
+ <a name='L274'></a><a href='#L274'>274</a>
323
+ <a name='L275'></a><a href='#L275'>275</a>
324
+ <a name='L276'></a><a href='#L276'>276</a>
325
+ <a name='L277'></a><a href='#L277'>277</a>
326
+ <a name='L278'></a><a href='#L278'>278</a>
327
+ <a name='L279'></a><a href='#L279'>279</a>
328
+ <a name='L280'></a><a href='#L280'>280</a>
329
+ <a name='L281'></a><a href='#L281'>281</a>
330
+ <a name='L282'></a><a href='#L282'>282</a>
331
+ <a name='L283'></a><a href='#L283'>283</a>
332
+ <a name='L284'></a><a href='#L284'>284</a>
333
+ <a name='L285'></a><a href='#L285'>285</a>
334
+ <a name='L286'></a><a href='#L286'>286</a>
335
+ <a name='L287'></a><a href='#L287'>287</a>
336
+ <a name='L288'></a><a href='#L288'>288</a>
337
+ <a name='L289'></a><a href='#L289'>289</a>
338
+ <a name='L290'></a><a href='#L290'>290</a>
339
+ <a name='L291'></a><a href='#L291'>291</a>
340
+ <a name='L292'></a><a href='#L292'>292</a>
341
+ <a name='L293'></a><a href='#L293'>293</a>
342
+ <a name='L294'></a><a href='#L294'>294</a>
343
+ <a name='L295'></a><a href='#L295'>295</a>
344
+ <a name='L296'></a><a href='#L296'>296</a>
345
+ <a name='L297'></a><a href='#L297'>297</a>
346
+ <a name='L298'></a><a href='#L298'>298</a>
347
+ <a name='L299'></a><a href='#L299'>299</a>
348
+ <a name='L300'></a><a href='#L300'>300</a>
349
+ <a name='L301'></a><a href='#L301'>301</a>
350
+ <a name='L302'></a><a href='#L302'>302</a>
351
+ <a name='L303'></a><a href='#L303'>303</a>
352
+ <a name='L304'></a><a href='#L304'>304</a>
353
+ <a name='L305'></a><a href='#L305'>305</a>
354
+ <a name='L306'></a><a href='#L306'>306</a>
355
+ <a name='L307'></a><a href='#L307'>307</a>
356
+ <a name='L308'></a><a href='#L308'>308</a>
357
+ <a name='L309'></a><a href='#L309'>309</a>
358
+ <a name='L310'></a><a href='#L310'>310</a>
359
+ <a name='L311'></a><a href='#L311'>311</a>
360
+ <a name='L312'></a><a href='#L312'>312</a>
361
+ <a name='L313'></a><a href='#L313'>313</a>
362
+ <a name='L314'></a><a href='#L314'>314</a>
363
+ <a name='L315'></a><a href='#L315'>315</a>
364
+ <a name='L316'></a><a href='#L316'>316</a>
365
+ <a name='L317'></a><a href='#L317'>317</a>
366
+ <a name='L318'></a><a href='#L318'>318</a>
367
+ <a name='L319'></a><a href='#L319'>319</a>
368
+ <a name='L320'></a><a href='#L320'>320</a>
369
+ <a name='L321'></a><a href='#L321'>321</a>
370
+ <a name='L322'></a><a href='#L322'>322</a>
371
+ <a name='L323'></a><a href='#L323'>323</a>
372
+ <a name='L324'></a><a href='#L324'>324</a>
373
+ <a name='L325'></a><a href='#L325'>325</a>
374
+ <a name='L326'></a><a href='#L326'>326</a>
375
+ <a name='L327'></a><a href='#L327'>327</a>
376
+ <a name='L328'></a><a href='#L328'>328</a>
377
+ <a name='L329'></a><a href='#L329'>329</a>
378
+ <a name='L330'></a><a href='#L330'>330</a>
379
+ <a name='L331'></a><a href='#L331'>331</a>
380
+ <a name='L332'></a><a href='#L332'>332</a>
381
+ <a name='L333'></a><a href='#L333'>333</a>
382
+ <a name='L334'></a><a href='#L334'>334</a>
383
+ <a name='L335'></a><a href='#L335'>335</a>
384
+ <a name='L336'></a><a href='#L336'>336</a>
385
+ <a name='L337'></a><a href='#L337'>337</a>
386
+ <a name='L338'></a><a href='#L338'>338</a>
387
+ <a name='L339'></a><a href='#L339'>339</a>
388
+ <a name='L340'></a><a href='#L340'>340</a>
389
+ <a name='L341'></a><a href='#L341'>341</a>
390
+ <a name='L342'></a><a href='#L342'>342</a>
391
+ <a name='L343'></a><a href='#L343'>343</a>
392
+ <a name='L344'></a><a href='#L344'>344</a>
393
+ <a name='L345'></a><a href='#L345'>345</a>
394
+ <a name='L346'></a><a href='#L346'>346</a>
395
+ <a name='L347'></a><a href='#L347'>347</a>
396
+ <a name='L348'></a><a href='#L348'>348</a>
397
+ <a name='L349'></a><a href='#L349'>349</a>
398
+ <a name='L350'></a><a href='#L350'>350</a>
399
+ <a name='L351'></a><a href='#L351'>351</a>
400
+ <a name='L352'></a><a href='#L352'>352</a>
401
+ <a name='L353'></a><a href='#L353'>353</a>
402
+ <a name='L354'></a><a href='#L354'>354</a>
403
+ <a name='L355'></a><a href='#L355'>355</a>
404
+ <a name='L356'></a><a href='#L356'>356</a>
405
+ <a name='L357'></a><a href='#L357'>357</a>
406
+ <a name='L358'></a><a href='#L358'>358</a>
407
+ <a name='L359'></a><a href='#L359'>359</a>
408
+ <a name='L360'></a><a href='#L360'>360</a>
409
+ <a name='L361'></a><a href='#L361'>361</a>
410
+ <a name='L362'></a><a href='#L362'>362</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
411
+ <span class="cline-any cline-yes">1x</span>
412
+ <span class="cline-any cline-yes">1x</span>
413
+ <span class="cline-any cline-yes">1x</span>
414
+ <span class="cline-any cline-yes">1x</span>
415
+ <span class="cline-any cline-yes">1x</span>
416
+ <span class="cline-any cline-yes">1x</span>
417
+ <span class="cline-any cline-neutral">&nbsp;</span>
418
+ <span class="cline-any cline-neutral">&nbsp;</span>
419
+ <span class="cline-any cline-yes">1x</span>
420
+ <span class="cline-any cline-neutral">&nbsp;</span>
421
+ <span class="cline-any cline-yes">1x</span>
422
+ <span class="cline-any cline-yes">1x</span>
423
+ <span class="cline-any cline-yes">1x</span>
424
+ <span class="cline-any cline-neutral">&nbsp;</span>
425
+ <span class="cline-any cline-neutral">&nbsp;</span>
426
+ <span class="cline-any cline-neutral">&nbsp;</span>
427
+ <span class="cline-any cline-neutral">&nbsp;</span>
428
+ <span class="cline-any cline-neutral">&nbsp;</span>
429
+ <span class="cline-any cline-neutral">&nbsp;</span>
430
+ <span class="cline-any cline-neutral">&nbsp;</span>
431
+ <span class="cline-any cline-neutral">&nbsp;</span>
432
+ <span class="cline-any cline-neutral">&nbsp;</span>
433
+ <span class="cline-any cline-neutral">&nbsp;</span>
434
+ <span class="cline-any cline-neutral">&nbsp;</span>
435
+ <span class="cline-any cline-neutral">&nbsp;</span>
436
+ <span class="cline-any cline-neutral">&nbsp;</span>
437
+ <span class="cline-any cline-neutral">&nbsp;</span>
438
+ <span class="cline-any cline-neutral">&nbsp;</span>
439
+ <span class="cline-any cline-neutral">&nbsp;</span>
440
+ <span class="cline-any cline-neutral">&nbsp;</span>
441
+ <span class="cline-any cline-neutral">&nbsp;</span>
442
+ <span class="cline-any cline-neutral">&nbsp;</span>
443
+ <span class="cline-any cline-neutral">&nbsp;</span>
444
+ <span class="cline-any cline-neutral">&nbsp;</span>
445
+ <span class="cline-any cline-neutral">&nbsp;</span>
446
+ <span class="cline-any cline-neutral">&nbsp;</span>
447
+ <span class="cline-any cline-neutral">&nbsp;</span>
448
+ <span class="cline-any cline-neutral">&nbsp;</span>
449
+ <span class="cline-any cline-neutral">&nbsp;</span>
450
+ <span class="cline-any cline-neutral">&nbsp;</span>
451
+ <span class="cline-any cline-neutral">&nbsp;</span>
452
+ <span class="cline-any cline-neutral">&nbsp;</span>
453
+ <span class="cline-any cline-neutral">&nbsp;</span>
454
+ <span class="cline-any cline-neutral">&nbsp;</span>
455
+ <span class="cline-any cline-neutral">&nbsp;</span>
456
+ <span class="cline-any cline-neutral">&nbsp;</span>
457
+ <span class="cline-any cline-neutral">&nbsp;</span>
458
+ <span class="cline-any cline-neutral">&nbsp;</span>
459
+ <span class="cline-any cline-neutral">&nbsp;</span>
460
+ <span class="cline-any cline-neutral">&nbsp;</span>
461
+ <span class="cline-any cline-neutral">&nbsp;</span>
462
+ <span class="cline-any cline-neutral">&nbsp;</span>
463
+ <span class="cline-any cline-neutral">&nbsp;</span>
464
+ <span class="cline-any cline-neutral">&nbsp;</span>
465
+ <span class="cline-any cline-neutral">&nbsp;</span>
466
+ <span class="cline-any cline-neutral">&nbsp;</span>
467
+ <span class="cline-any cline-neutral">&nbsp;</span>
468
+ <span class="cline-any cline-neutral">&nbsp;</span>
469
+ <span class="cline-any cline-neutral">&nbsp;</span>
470
+ <span class="cline-any cline-neutral">&nbsp;</span>
471
+ <span class="cline-any cline-neutral">&nbsp;</span>
472
+ <span class="cline-any cline-neutral">&nbsp;</span>
473
+ <span class="cline-any cline-neutral">&nbsp;</span>
474
+ <span class="cline-any cline-neutral">&nbsp;</span>
475
+ <span class="cline-any cline-neutral">&nbsp;</span>
476
+ <span class="cline-any cline-neutral">&nbsp;</span>
477
+ <span class="cline-any cline-neutral">&nbsp;</span>
478
+ <span class="cline-any cline-neutral">&nbsp;</span>
479
+ <span class="cline-any cline-neutral">&nbsp;</span>
480
+ <span class="cline-any cline-neutral">&nbsp;</span>
481
+ <span class="cline-any cline-neutral">&nbsp;</span>
482
+ <span class="cline-any cline-neutral">&nbsp;</span>
483
+ <span class="cline-any cline-neutral">&nbsp;</span>
484
+ <span class="cline-any cline-neutral">&nbsp;</span>
485
+ <span class="cline-any cline-yes">1x</span>
486
+ <span class="cline-any cline-no">&nbsp;</span>
487
+ <span class="cline-any cline-no">&nbsp;</span>
488
+ <span class="cline-any cline-no">&nbsp;</span>
489
+ <span class="cline-any cline-no">&nbsp;</span>
490
+ <span class="cline-any cline-neutral">&nbsp;</span>
491
+ <span class="cline-any cline-neutral">&nbsp;</span>
492
+ <span class="cline-any cline-neutral">&nbsp;</span>
493
+ <span class="cline-any cline-no">&nbsp;</span>
494
+ <span class="cline-any cline-neutral">&nbsp;</span>
495
+ <span class="cline-any cline-neutral">&nbsp;</span>
496
+ <span class="cline-any cline-yes">2x</span>
497
+ <span class="cline-any cline-yes">1x</span>
498
+ <span class="cline-any cline-neutral">&nbsp;</span>
499
+ <span class="cline-any cline-neutral">&nbsp;</span>
500
+ <span class="cline-any cline-neutral">&nbsp;</span>
501
+ <span class="cline-any cline-neutral">&nbsp;</span>
502
+ <span class="cline-any cline-neutral">&nbsp;</span>
503
+ <span class="cline-any cline-yes">1x</span>
504
+ <span class="cline-any cline-neutral">&nbsp;</span>
505
+ <span class="cline-any cline-neutral">&nbsp;</span>
506
+ <span class="cline-any cline-neutral">&nbsp;</span>
507
+ <span class="cline-any cline-neutral">&nbsp;</span>
508
+ <span class="cline-any cline-neutral">&nbsp;</span>
509
+ <span class="cline-any cline-neutral">&nbsp;</span>
510
+ <span class="cline-any cline-neutral">&nbsp;</span>
511
+ <span class="cline-any cline-yes">1x</span>
512
+ <span class="cline-any cline-yes">6x</span>
513
+ <span class="cline-any cline-neutral">&nbsp;</span>
514
+ <span class="cline-any cline-yes">3x</span>
515
+ <span class="cline-any cline-yes">2x</span>
516
+ <span class="cline-any cline-yes">2x</span>
517
+ <span class="cline-any cline-yes">2x</span>
518
+ <span class="cline-any cline-neutral">&nbsp;</span>
519
+ <span class="cline-any cline-yes">2x</span>
520
+ <span class="cline-any cline-neutral">&nbsp;</span>
521
+ <span class="cline-any cline-neutral">&nbsp;</span>
522
+ <span class="cline-any cline-neutral">&nbsp;</span>
523
+ <span class="cline-any cline-neutral">&nbsp;</span>
524
+ <span class="cline-any cline-neutral">&nbsp;</span>
525
+ <span class="cline-any cline-neutral">&nbsp;</span>
526
+ <span class="cline-any cline-neutral">&nbsp;</span>
527
+ <span class="cline-any cline-neutral">&nbsp;</span>
528
+ <span class="cline-any cline-neutral">&nbsp;</span>
529
+ <span class="cline-any cline-neutral">&nbsp;</span>
530
+ <span class="cline-any cline-neutral">&nbsp;</span>
531
+ <span class="cline-any cline-yes">1x</span>
532
+ <span class="cline-any cline-neutral">&nbsp;</span>
533
+ <span class="cline-any cline-neutral">&nbsp;</span>
534
+ <span class="cline-any cline-yes">2x</span>
535
+ <span class="cline-any cline-neutral">&nbsp;</span>
536
+ <span class="cline-any cline-neutral">&nbsp;</span>
537
+ <span class="cline-any cline-neutral">&nbsp;</span>
538
+ <span class="cline-any cline-neutral">&nbsp;</span>
539
+ <span class="cline-any cline-neutral">&nbsp;</span>
540
+ <span class="cline-any cline-yes">1x</span>
541
+ <span class="cline-any cline-yes">2x</span>
542
+ <span class="cline-any cline-neutral">&nbsp;</span>
543
+ <span class="cline-any cline-yes">2x</span>
544
+ <span class="cline-any cline-yes">1x</span>
545
+ <span class="cline-any cline-neutral">&nbsp;</span>
546
+ <span class="cline-any cline-neutral">&nbsp;</span>
547
+ <span class="cline-any cline-neutral">&nbsp;</span>
548
+ <span class="cline-any cline-neutral">&nbsp;</span>
549
+ <span class="cline-any cline-neutral">&nbsp;</span>
550
+ <span class="cline-any cline-neutral">&nbsp;</span>
551
+ <span class="cline-any cline-neutral">&nbsp;</span>
552
+ <span class="cline-any cline-neutral">&nbsp;</span>
553
+ <span class="cline-any cline-neutral">&nbsp;</span>
554
+ <span class="cline-any cline-yes">1x</span>
555
+ <span class="cline-any cline-neutral">&nbsp;</span>
556
+ <span class="cline-any cline-neutral">&nbsp;</span>
557
+ <span class="cline-any cline-neutral">&nbsp;</span>
558
+ <span class="cline-any cline-yes">2x</span>
559
+ <span class="cline-any cline-no">&nbsp;</span>
560
+ <span class="cline-any cline-no">&nbsp;</span>
561
+ <span class="cline-any cline-neutral">&nbsp;</span>
562
+ <span class="cline-any cline-neutral">&nbsp;</span>
563
+ <span class="cline-any cline-yes">2x</span>
564
+ <span class="cline-any cline-no">&nbsp;</span>
565
+ <span class="cline-any cline-no">&nbsp;</span>
566
+ <span class="cline-any cline-no">&nbsp;</span>
567
+ <span class="cline-any cline-neutral">&nbsp;</span>
568
+ <span class="cline-any cline-neutral">&nbsp;</span>
569
+ <span class="cline-any cline-yes">2x</span>
570
+ <span class="cline-any cline-yes">1x</span>
571
+ <span class="cline-any cline-neutral">&nbsp;</span>
572
+ <span class="cline-any cline-yes">1x</span>
573
+ <span class="cline-any cline-yes">1x</span>
574
+ <span class="cline-any cline-yes">1x</span>
575
+ <span class="cline-any cline-no">&nbsp;</span>
576
+ <span class="cline-any cline-no">&nbsp;</span>
577
+ <span class="cline-any cline-no">&nbsp;</span>
578
+ <span class="cline-any cline-neutral">&nbsp;</span>
579
+ <span class="cline-any cline-neutral">&nbsp;</span>
580
+ <span class="cline-any cline-neutral">&nbsp;</span>
581
+ <span class="cline-any cline-neutral">&nbsp;</span>
582
+ <span class="cline-any cline-neutral">&nbsp;</span>
583
+ <span class="cline-any cline-yes">2x</span>
584
+ <span class="cline-any cline-yes">108x</span>
585
+ <span class="cline-any cline-yes">108x</span>
586
+ <span class="cline-any cline-yes">108x</span>
587
+ <span class="cline-any cline-neutral">&nbsp;</span>
588
+ <span class="cline-any cline-yes">108x</span>
589
+ <span class="cline-any cline-neutral">&nbsp;</span>
590
+ <span class="cline-any cline-neutral">&nbsp;</span>
591
+ <span class="cline-any cline-neutral">&nbsp;</span>
592
+ <span class="cline-any cline-neutral">&nbsp;</span>
593
+ <span class="cline-any cline-neutral">&nbsp;</span>
594
+ <span class="cline-any cline-neutral">&nbsp;</span>
595
+ <span class="cline-any cline-neutral">&nbsp;</span>
596
+ <span class="cline-any cline-yes">2x</span>
597
+ <span class="cline-any cline-yes">3x</span>
598
+ <span class="cline-any cline-neutral">&nbsp;</span>
599
+ <span class="cline-any cline-yes">3x</span>
600
+ <span class="cline-any cline-yes">3x</span>
601
+ <span class="cline-any cline-neutral">&nbsp;</span>
602
+ <span class="cline-any cline-neutral">&nbsp;</span>
603
+ <span class="cline-any cline-neutral">&nbsp;</span>
604
+ <span class="cline-any cline-yes">3x</span>
605
+ <span class="cline-any cline-neutral">&nbsp;</span>
606
+ <span class="cline-any cline-neutral">&nbsp;</span>
607
+ <span class="cline-any cline-yes">2x</span>
608
+ <span class="cline-any cline-yes">3x</span>
609
+ <span class="cline-any cline-neutral">&nbsp;</span>
610
+ <span class="cline-any cline-yes">3x</span>
611
+ <span class="cline-any cline-yes">3x</span>
612
+ <span class="cline-any cline-neutral">&nbsp;</span>
613
+ <span class="cline-any cline-neutral">&nbsp;</span>
614
+ <span class="cline-any cline-neutral">&nbsp;</span>
615
+ <span class="cline-any cline-yes">3x</span>
616
+ <span class="cline-any cline-neutral">&nbsp;</span>
617
+ <span class="cline-any cline-neutral">&nbsp;</span>
618
+ <span class="cline-any cline-yes">2x</span>
619
+ <span class="cline-any cline-yes">108x</span>
620
+ <span class="cline-any cline-neutral">&nbsp;</span>
621
+ <span class="cline-any cline-yes">108x</span>
622
+ <span class="cline-any cline-neutral">&nbsp;</span>
623
+ <span class="cline-any cline-neutral">&nbsp;</span>
624
+ <span class="cline-any cline-yes">2x</span>
625
+ <span class="cline-any cline-yes">1x</span>
626
+ <span class="cline-any cline-neutral">&nbsp;</span>
627
+ <span class="cline-any cline-yes">1x</span>
628
+ <span class="cline-any cline-neutral">&nbsp;</span>
629
+ <span class="cline-any cline-neutral">&nbsp;</span>
630
+ <span class="cline-any cline-yes">2x</span>
631
+ <span class="cline-any cline-no">&nbsp;</span>
632
+ <span class="cline-any cline-neutral">&nbsp;</span>
633
+ <span class="cline-any cline-no">&nbsp;</span>
634
+ <span class="cline-any cline-no">&nbsp;</span>
635
+ <span class="cline-any cline-no">&nbsp;</span>
636
+ <span class="cline-any cline-neutral">&nbsp;</span>
637
+ <span class="cline-any cline-neutral">&nbsp;</span>
638
+ <span class="cline-any cline-no">&nbsp;</span>
639
+ <span class="cline-any cline-neutral">&nbsp;</span>
640
+ <span class="cline-any cline-neutral">&nbsp;</span>
641
+ <span class="cline-any cline-neutral">&nbsp;</span>
642
+ <span class="cline-any cline-yes">2x</span>
643
+ <span class="cline-any cline-no">&nbsp;</span>
644
+ <span class="cline-any cline-neutral">&nbsp;</span>
645
+ <span class="cline-any cline-no">&nbsp;</span>
646
+ <span class="cline-any cline-no">&nbsp;</span>
647
+ <span class="cline-any cline-no">&nbsp;</span>
648
+ <span class="cline-any cline-no">&nbsp;</span>
649
+ <span class="cline-any cline-no">&nbsp;</span>
650
+ <span class="cline-any cline-neutral">&nbsp;</span>
651
+ <span class="cline-any cline-neutral">&nbsp;</span>
652
+ <span class="cline-any cline-neutral">&nbsp;</span>
653
+ <span class="cline-any cline-yes">2x</span>
654
+ <span class="cline-any cline-yes">3x</span>
655
+ <span class="cline-any cline-yes">3x</span>
656
+ <span class="cline-any cline-neutral">&nbsp;</span>
657
+ <span class="cline-any cline-yes">15x</span>
658
+ <span class="cline-any cline-neutral">&nbsp;</span>
659
+ <span class="cline-any cline-neutral">&nbsp;</span>
660
+ <span class="cline-any cline-neutral">&nbsp;</span>
661
+ <span class="cline-any cline-neutral">&nbsp;</span>
662
+ <span class="cline-any cline-neutral">&nbsp;</span>
663
+ <span class="cline-any cline-neutral">&nbsp;</span>
664
+ <span class="cline-any cline-yes">2x</span>
665
+ <span class="cline-any cline-yes">15x</span>
666
+ <span class="cline-any cline-neutral">&nbsp;</span>
667
+ <span class="cline-any cline-yes">15x</span>
668
+ <span class="cline-any cline-yes">15x</span>
669
+ <span class="cline-any cline-yes">15x</span>
670
+ <span class="cline-any cline-neutral">&nbsp;</span>
671
+ <span class="cline-any cline-yes">15x</span>
672
+ <span class="cline-any cline-yes">105x</span>
673
+ <span class="cline-any cline-yes">105x</span>
674
+ <span class="cline-any cline-neutral">&nbsp;</span>
675
+ <span class="cline-any cline-neutral">&nbsp;</span>
676
+ <span class="cline-any cline-yes">105x</span>
677
+ <span class="cline-any cline-neutral">&nbsp;</span>
678
+ <span class="cline-any cline-neutral">&nbsp;</span>
679
+ <span class="cline-any cline-neutral">&nbsp;</span>
680
+ <span class="cline-any cline-neutral">&nbsp;</span>
681
+ <span class="cline-any cline-neutral">&nbsp;</span>
682
+ <span class="cline-any cline-neutral">&nbsp;</span>
683
+ <span class="cline-any cline-neutral">&nbsp;</span>
684
+ <span class="cline-any cline-neutral">&nbsp;</span>
685
+ <span class="cline-any cline-neutral">&nbsp;</span>
686
+ <span class="cline-any cline-yes">105x</span>
687
+ <span class="cline-any cline-no">&nbsp;</span>
688
+ <span class="cline-any cline-neutral">&nbsp;</span>
689
+ <span class="cline-any cline-neutral">&nbsp;</span>
690
+ <span class="cline-any cline-yes">105x</span>
691
+ <span class="cline-any cline-neutral">&nbsp;</span>
692
+ <span class="cline-any cline-neutral">&nbsp;</span>
693
+ <span class="cline-any cline-neutral">&nbsp;</span>
694
+ <span class="cline-any cline-neutral">&nbsp;</span>
695
+ <span class="cline-any cline-neutral">&nbsp;</span>
696
+ <span class="cline-any cline-neutral">&nbsp;</span>
697
+ <span class="cline-any cline-neutral">&nbsp;</span>
698
+ <span class="cline-any cline-neutral">&nbsp;</span>
699
+ <span class="cline-any cline-neutral">&nbsp;</span>
700
+ <span class="cline-any cline-neutral">&nbsp;</span>
701
+ <span class="cline-any cline-neutral">&nbsp;</span>
702
+ <span class="cline-any cline-neutral">&nbsp;</span>
703
+ <span class="cline-any cline-neutral">&nbsp;</span>
704
+ <span class="cline-any cline-yes">1x</span>
705
+ <span class="cline-any cline-yes">3x</span>
706
+ <span class="cline-any cline-neutral">&nbsp;</span>
707
+ <span class="cline-any cline-yes">3x</span>
708
+ <span class="cline-any cline-yes">3x</span>
709
+ <span class="cline-any cline-yes">3x</span>
710
+ <span class="cline-any cline-yes">3x</span>
711
+ <span class="cline-any cline-yes">3x</span>
712
+ <span class="cline-any cline-yes">3x</span>
713
+ <span class="cline-any cline-yes">3x</span>
714
+ <span class="cline-any cline-yes">3x</span>
715
+ <span class="cline-any cline-yes">3x</span>
716
+ <span class="cline-any cline-neutral">&nbsp;</span>
717
+ <span class="cline-any cline-yes">3x</span>
718
+ <span class="cline-any cline-neutral">&nbsp;</span>
719
+ <span class="cline-any cline-neutral">&nbsp;</span>
720
+ <span class="cline-any cline-neutral">&nbsp;</span>
721
+ <span class="cline-any cline-neutral">&nbsp;</span>
722
+ <span class="cline-any cline-neutral">&nbsp;</span>
723
+ <span class="cline-any cline-neutral">&nbsp;</span>
724
+ <span class="cline-any cline-neutral">&nbsp;</span>
725
+ <span class="cline-any cline-neutral">&nbsp;</span>
726
+ <span class="cline-any cline-neutral">&nbsp;</span>
727
+ <span class="cline-any cline-neutral">&nbsp;</span>
728
+ <span class="cline-any cline-neutral">&nbsp;</span>
729
+ <span class="cline-any cline-neutral">&nbsp;</span>
730
+ <span class="cline-any cline-neutral">&nbsp;</span>
731
+ <span class="cline-any cline-neutral">&nbsp;</span>
732
+ <span class="cline-any cline-neutral">&nbsp;</span>
733
+ <span class="cline-any cline-neutral">&nbsp;</span>
734
+ <span class="cline-any cline-neutral">&nbsp;</span>
735
+ <span class="cline-any cline-neutral">&nbsp;</span>
736
+ <span class="cline-any cline-neutral">&nbsp;</span>
737
+ <span class="cline-any cline-neutral">&nbsp;</span>
738
+ <span class="cline-any cline-neutral">&nbsp;</span>
739
+ <span class="cline-any cline-neutral">&nbsp;</span>
740
+ <span class="cline-any cline-neutral">&nbsp;</span>
741
+ <span class="cline-any cline-neutral">&nbsp;</span>
742
+ <span class="cline-any cline-neutral">&nbsp;</span>
743
+ <span class="cline-any cline-neutral">&nbsp;</span>
744
+ <span class="cline-any cline-neutral">&nbsp;</span>
745
+ <span class="cline-any cline-neutral">&nbsp;</span>
746
+ <span class="cline-any cline-neutral">&nbsp;</span>
747
+ <span class="cline-any cline-yes">1x</span>
748
+ <span class="cline-any cline-neutral">&nbsp;</span>
749
+ <span class="cline-any cline-yes">1x</span>
750
+ <span class="cline-any cline-neutral">&nbsp;</span>
751
+ <span class="cline-any cline-neutral">&nbsp;</span>
752
+ <span class="cline-any cline-neutral">&nbsp;</span>
753
+ <span class="cline-any cline-neutral">&nbsp;</span>
754
+ <span class="cline-any cline-neutral">&nbsp;</span>
755
+ <span class="cline-any cline-neutral">&nbsp;</span>
756
+ <span class="cline-any cline-neutral">&nbsp;</span>
757
+ <span class="cline-any cline-neutral">&nbsp;</span>
758
+ <span class="cline-any cline-neutral">&nbsp;</span>
759
+ <span class="cline-any cline-neutral">&nbsp;</span>
760
+ <span class="cline-any cline-neutral">&nbsp;</span>
761
+ <span class="cline-any cline-neutral">&nbsp;</span>
762
+ <span class="cline-any cline-neutral">&nbsp;</span>
763
+ <span class="cline-any cline-neutral">&nbsp;</span>
764
+ <span class="cline-any cline-neutral">&nbsp;</span>
765
+ <span class="cline-any cline-neutral">&nbsp;</span>
766
+ <span class="cline-any cline-neutral">&nbsp;</span>
767
+ <span class="cline-any cline-yes">1x</span>
768
+ <span class="cline-any cline-neutral">&nbsp;</span>
769
+ <span class="cline-any cline-neutral">&nbsp;</span>
770
+ <span class="cline-any cline-neutral">&nbsp;</span>
771
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import * as React from 'react';
772
+ import * as PropTypes from 'prop-types';
773
+ import Day from './Day';
774
+ import DayWrapper from './DayWrapper';
775
+ import CalendarHeader from './CalendarHeader';
776
+ import CircularProgress from '@material-ui/core/CircularProgress';
777
+ import SlideTransition, { SlideDirection } from './SlideTransition';
778
+ import { Theme } from '@material-ui/core';
779
+ import { MaterialUiPickersDate } from '../../typings/date';
780
+ import { runKeyHandler } from '../../_shared/hooks/useKeyDown';
781
+ import { IconButtonProps } from '@material-ui/core/IconButton';
782
+ import { withStyles, WithStyles } from '@material-ui/core/styles';
783
+ import { findClosestEnabledDate } from '../../_helpers/date-utils';
784
+ import { withUtils, WithUtilsProps } from '../../_shared/WithUtils';
785
+ &nbsp;
786
+ export interface OutterCalendarProps {
787
+ /** Left arrow icon */
788
+ leftArrowIcon?: React.ReactNode;
789
+ /** Right arrow icon */
790
+ rightArrowIcon?: React.ReactNode;
791
+ /** Custom renderer for day */
792
+ renderDay?: (
793
+ day: MaterialUiPickersDate,
794
+ selectedDate: MaterialUiPickersDate,
795
+ dayInCurrentMonth: boolean,
796
+ dayComponent: JSX.Element
797
+ ) =&gt; JSX.Element;
798
+ /**
799
+ * Enables keyboard listener for moving between days in calendar
800
+ * @default true
801
+ */
802
+ allowKeyboardControl?: boolean;
803
+ /**
804
+ * Props to pass to left arrow button
805
+ * @type {Partial&lt;IconButtonProps&gt;}
806
+ */
807
+ leftArrowButtonProps?: Partial&lt;IconButtonProps&gt;;
808
+ /**
809
+ * Props to pass to right arrow button
810
+ * @type {Partial&lt;IconButtonProps&gt;}
811
+ */
812
+ rightArrowButtonProps?: Partial&lt;IconButtonProps&gt;;
813
+ /** Disable specific date */
814
+ shouldDisableDate?: (day: MaterialUiPickersDate) =&gt; boolean;
815
+ /** Callback firing on month change. Return promise to render spinner till it will not be resolved */
816
+ onMonthChange?: (date: MaterialUiPickersDate) =&gt; void | Promise&lt;void&gt;;
817
+ /** Custom loading indicator */
818
+ loadingIndicator?: JSX.Element;
819
+ }
820
+ &nbsp;
821
+ export interface CalendarProps
822
+ extends OutterCalendarProps,
823
+ WithUtilsProps,
824
+ WithStyles&lt;typeof styles, true&gt; {
825
+ /** Calendar Date */
826
+ date: MaterialUiPickersDate;
827
+ /** Calendar onChange */
828
+ onChange: (date: MaterialUiPickersDate, isFinish?: boolean) =&gt; void;
829
+ /** Min date */
830
+ minDate?: MaterialUiPickersDate;
831
+ /** Max date */
832
+ maxDate?: MaterialUiPickersDate;
833
+ /** Disable past dates */
834
+ disablePast?: boolean;
835
+ /** Disable future dates */
836
+ disableFuture?: boolean;
837
+ }
838
+ &nbsp;
839
+ export interface CalendarState {
840
+ slideDirection: SlideDirection;
841
+ currentMonth: MaterialUiPickersDate;
842
+ lastDate?: MaterialUiPickersDate;
843
+ loadingQueue: number;
844
+ }
845
+ &nbsp;
846
+ const KeyDownListener = <span class="fstat-no" title="function not covered" >({</span> onKeyDown<span class="cstat-no" title="statement not covered" > }: { onKeyDown: (e: KeyboardEvent) =&gt; void })</span> =&gt; {
847
+ <span class="cstat-no" title="statement not covered" > React.useEffect(<span class="fstat-no" title="function not covered" >() =&gt; {</span></span>
848
+ <span class="cstat-no" title="statement not covered" > window.addEventListener('keydown', onKeyDown);</span>
849
+ <span class="cstat-no" title="statement not covered" > return <span class="fstat-no" title="function not covered" >() =&gt; {</span></span>
850
+ <span class="cstat-no" title="statement not covered" > window.removeEventListener('keydown', onKeyDown);</span>
851
+ };
852
+ }, [onKeyDown]);
853
+ &nbsp;
854
+ <span class="cstat-no" title="statement not covered" > return null;</span>
855
+ };
856
+ &nbsp;
857
+ export class Calendar extends React.Component&lt;CalendarProps, CalendarState&gt; {
858
+ static propTypes: any = {
859
+ renderDay: PropTypes.func,
860
+ shouldDisableDate: PropTypes.func,
861
+ allowKeyboardControl: PropTypes.bool,
862
+ };
863
+ &nbsp;
864
+ static defaultProps: Partial&lt;CalendarProps&gt; = {
865
+ minDate: new Date('1900-01-01'),
866
+ maxDate: new Date('2100-01-01'),
867
+ disablePast: false,
868
+ disableFuture: false,
869
+ allowKeyboardControl: true,
870
+ };
871
+ &nbsp;
872
+ static getDerivedStateFromProps(nextProps: CalendarProps, state: CalendarState) {
873
+ const { utils, date: nextDate } = nextProps;
874
+ &nbsp;
875
+ if (!utils.isEqual(nextDate, state.lastDate)) {
876
+ const nextMonth = utils.getMonth(nextDate);
877
+ const lastDate = state.lastDate || nextDate;
878
+ const lastMonth = utils.getMonth(lastDate);
879
+ &nbsp;
880
+ return {
881
+ lastDate: nextDate,
882
+ currentMonth: nextProps.utils.startOfMonth(nextDate),
883
+ // prettier-ignore
884
+ slideDirection: nextMonth === lastMonth
885
+ ? state.slideDirection
886
+ : <span class="branch-1 cbranch-no" title="branch not covered" >utils.isAfterDay(nextDate, lastDate)</span>
887
+ ? 'left'
888
+ : 'right'
889
+ };
890
+ }
891
+ &nbsp;
892
+ return null;
893
+ }
894
+ &nbsp;
895
+ state: CalendarState = {
896
+ slideDirection: 'left',
897
+ currentMonth: this.props.utils.startOfMonth(this.props.date),
898
+ loadingQueue: 0,
899
+ };
900
+ &nbsp;
901
+ componentDidMount() {
902
+ const { date, minDate, maxDate, utils, disablePast, disableFuture } = this.props;
903
+ &nbsp;
904
+ if (this.shouldDisableDate(date)) {
905
+ const closestEnabledDate = findClosestEnabledDate({
906
+ date,
907
+ utils,
908
+ minDate: utils.date(minDate),
909
+ maxDate: utils.date(maxDate),
910
+ disablePast: Boolean(disablePast),
911
+ disableFuture: Boolean(disableFuture),
912
+ shouldDisableDate: this.shouldDisableDate,
913
+ });
914
+ &nbsp;
915
+ this.handleDaySelect(closestEnabledDate, false);
916
+ }
917
+ }
918
+ &nbsp;
919
+ private pushToLoadingQueue = <span class="fstat-no" title="function not covered" >() =&gt; {</span>
920
+ const loadingQueue = <span class="cstat-no" title="statement not covered" >this.state.loadingQueue + 1;</span>
921
+ <span class="cstat-no" title="statement not covered" > this.setState({ loadingQueue });</span>
922
+ };
923
+ &nbsp;
924
+ private popFromLoadingQueue = <span class="fstat-no" title="function not covered" >() =&gt; {</span>
925
+ let loadingQueue = <span class="cstat-no" title="statement not covered" >this.state.loadingQueue;</span>
926
+ <span class="cstat-no" title="statement not covered" > loadingQueue = loadingQueue &lt;= 0 ? 0 : loadingQueue - 1;</span>
927
+ <span class="cstat-no" title="statement not covered" > this.setState({ loadingQueue });</span>
928
+ };
929
+ &nbsp;
930
+ handleChangeMonth = (newMonth: MaterialUiPickersDate, slideDirection: SlideDirection) =&gt; {
931
+ this.setState({ currentMonth: newMonth, slideDirection });
932
+ &nbsp;
933
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (this.props.onMonthChange) {
934
+ const returnVal = this.props.onMonthChange(newMonth);
935
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (returnVal) {
936
+ <span class="cstat-no" title="statement not covered" > this.pushToLoadingQueue();</span>
937
+ <span class="cstat-no" title="statement not covered" > returnVal.then(<span class="fstat-no" title="function not covered" >() =&gt; {</span></span>
938
+ <span class="cstat-no" title="statement not covered" > this.popFromLoadingQueue();</span>
939
+ });
940
+ }
941
+ }
942
+ };
943
+ &nbsp;
944
+ validateMinMaxDate = (day: MaterialUiPickersDate) =&gt; {
945
+ const { minDate, maxDate, utils, disableFuture, disablePast } = this.props;
946
+ const now = utils.date();
947
+ const moment = utils.moment;
948
+ &nbsp;
949
+ return Boolean(
950
+ (disableFuture &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >utils.isAfterDay(day, now))</span> ||
951
+ (disablePast &amp;&amp; <span class="branch-3 cbranch-no" title="branch not covered" >moment(day).isBefore(now, "second"))</span> ||
952
+ (minDate &amp;&amp; utils.isBeforeDay(day, utils.date(minDate))) ||
953
+ (maxDate &amp;&amp; utils.isAfterDay(day, utils.date(maxDate)))
954
+ );
955
+ };
956
+ &nbsp;
957
+ shouldDisablePrevMonth = () =&gt; {
958
+ const { utils, disablePast, minDate } = this.props;
959
+ &nbsp;
960
+ const now = utils.date();
961
+ const firstEnabledMonth = utils.startOfMonth(
962
+ disablePast &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >utils.isAfter(now, utils.date(minDate)) </span>? <span class="branch-0 cbranch-no" title="branch not covered" >now </span>: utils.date(minDate)
963
+ );
964
+ &nbsp;
965
+ return !utils.isBefore(firstEnabledMonth, this.state.currentMonth);
966
+ };
967
+ &nbsp;
968
+ shouldDisableNextMonth = () =&gt; {
969
+ const { utils, disableFuture, maxDate } = this.props;
970
+ &nbsp;
971
+ const now = utils.date();
972
+ const lastEnabledMonth = utils.startOfMonth(
973
+ disableFuture &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >utils.isBefore(now, utils.date(maxDate)) </span>? <span class="branch-0 cbranch-no" title="branch not covered" >now </span>: utils.date(maxDate)
974
+ );
975
+ &nbsp;
976
+ return !utils.isAfter(lastEnabledMonth, this.state.currentMonth);
977
+ };
978
+ &nbsp;
979
+ shouldDisableDate = (day: MaterialUiPickersDate) =&gt; {
980
+ const { shouldDisableDate } = this.props;
981
+ &nbsp;
982
+ return this.validateMinMaxDate(day) || Boolean(shouldDisableDate &amp;&amp; <span class="branch-1 cbranch-no" title="branch not covered" >shouldDisableDate(day))</span>;
983
+ };
984
+ &nbsp;
985
+ handleDaySelect = (day: MaterialUiPickersDate, <span class="missing-if-branch" title="if path not taken" >I</span>isFinish = true) =&gt; {
986
+ const { date, utils } = this.props;
987
+ &nbsp;
988
+ this.props.onChange(utils.mergeDateAndTime(day, date), isFinish);
989
+ };
990
+ &nbsp;
991
+ moveToDay = <span class="fstat-no" title="function not covered" >(d</span>ay: MaterialUiPickersDate) =&gt; {
992
+ const { utils } = <span class="cstat-no" title="statement not covered" >this.props;</span>
993
+ &nbsp;
994
+ <span class="cstat-no" title="statement not covered" > if (day &amp;&amp; !this.shouldDisableDate(day)) {</span>
995
+ <span class="cstat-no" title="statement not covered" > if (utils.getMonth(day) !== utils.getMonth(this.state.currentMonth)) {</span>
996
+ <span class="cstat-no" title="statement not covered" > this.handleChangeMonth(utils.startOfMonth(day), 'left');</span>
997
+ }
998
+ &nbsp;
999
+ <span class="cstat-no" title="statement not covered" > this.handleDaySelect(day, false);</span>
1000
+ }
1001
+ };
1002
+ &nbsp;
1003
+ handleKeyDown = <span class="fstat-no" title="function not covered" >(e</span>vent: KeyboardEvent) =&gt; {
1004
+ const { theme<span class="cstat-no" title="statement not covered" >, d</span>ate<span class="cstat-no" title="statement not covered" >, u</span>tils<span class="cstat-no" title="statement not covered" > } = <span class="cstat-no" title="statement not covered" >t</span>his.props;</span>
1005
+ &nbsp;
1006
+ <span class="cstat-no" title="statement not covered" > runKeyHandler(event, {</span>
1007
+ ArrowUp: <span class="fstat-no" title="function not covered" >() =&gt; <span class="cstat-no" title="statement not covered" >t</span>his.moveToDay(utils.addDays(date, -7)),</span>
1008
+ ArrowDown: <span class="fstat-no" title="function not covered" >() =&gt; <span class="cstat-no" title="statement not covered" >t</span>his.moveToDay(utils.addDays(date, 7)),</span>
1009
+ ArrowLeft: <span class="fstat-no" title="function not covered" >() =&gt; <span class="cstat-no" title="statement not covered" >t</span>his.moveToDay(utils.addDays(date, theme.direction === 'ltr' ? -1 : 1)),</span>
1010
+ ArrowRight: <span class="fstat-no" title="function not covered" >() =&gt; <span class="cstat-no" title="statement not covered" >t</span>his.moveToDay(utils.addDays(date, theme.direction === 'ltr' ? 1 : -1)),</span>
1011
+ });
1012
+ };
1013
+ &nbsp;
1014
+ private renderWeeks = () =&gt; {
1015
+ const { utils, classes } = this.props;
1016
+ const weeks = utils.getWeekArray(this.state.currentMonth);
1017
+ &nbsp;
1018
+ return weeks.map(week =&gt; (
1019
+ &lt;div key={`week-${week[0]!.toString()}`} className={classes.week}&gt;
1020
+ {this.renderDays(week)}
1021
+ &lt;/div&gt;
1022
+ ));
1023
+ };
1024
+ &nbsp;
1025
+ private renderDays = (week: MaterialUiPickersDate[]) =&gt; {
1026
+ const { date, renderDay, utils } = this.props;
1027
+ &nbsp;
1028
+ const now = utils.date();
1029
+ const selectedDate = utils.startOfDay(date);
1030
+ const currentMonthNumber = utils.getMonth(this.state.currentMonth);
1031
+ &nbsp;
1032
+ return week.map(day =&gt; {
1033
+ const disabled = this.shouldDisableDate(day);
1034
+ const isDayInCurrentMonth = utils.getMonth(day) === currentMonthNumber;
1035
+ &nbsp;
1036
+ let dayComponent = (
1037
+ &lt;Day
1038
+ disabled={disabled}
1039
+ current={utils.isSameDay(day, now)}
1040
+ hidden={!isDayInCurrentMonth}
1041
+ selected={utils.isSameDay(selectedDate, day)}
1042
+ &gt;
1043
+ {utils.getDayText(day)}
1044
+ &lt;/Day&gt;
1045
+ );
1046
+ &nbsp;
1047
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (renderDay) {
1048
+ <span class="cstat-no" title="statement not covered" > dayComponent = renderDay(day, selectedDate, isDayInCurrentMonth, dayComponent);</span>
1049
+ }
1050
+ &nbsp;
1051
+ return (
1052
+ &lt;DayWrapper
1053
+ value={day}
1054
+ key={day!.toString()}
1055
+ disabled={disabled}
1056
+ dayInCurrentMonth={isDayInCurrentMonth}
1057
+ onSelect={this.handleDaySelect}
1058
+ &gt;
1059
+ {dayComponent}
1060
+ &lt;/DayWrapper&gt;
1061
+ );
1062
+ });
1063
+ };
1064
+ &nbsp;
1065
+ render() {
1066
+ const { currentMonth, slideDirection } = this.state;
1067
+ const {
1068
+ classes,
1069
+ allowKeyboardControl,
1070
+ leftArrowButtonProps,
1071
+ leftArrowIcon,
1072
+ rightArrowButtonProps,
1073
+ rightArrowIcon,
1074
+ loadingIndicator,
1075
+ } = this.props;
1076
+ const loadingElement = loadingIndicator ? <span class="branch-0 cbranch-no" title="branch not covered" >loadingIndicator </span>: &lt;CircularProgress /&gt;;
1077
+ &nbsp;
1078
+ return (
1079
+ &lt;React.Fragment&gt;
1080
+ {allowKeyboardControl &amp;&amp; &lt;KeyDownListener onKeyDown={this.handleKeyDown} /&gt;}
1081
+ &nbsp;
1082
+ &lt;CalendarHeader
1083
+ currentMonth={currentMonth!}
1084
+ slideDirection={slideDirection}
1085
+ onMonthChange={this.handleChangeMonth}
1086
+ leftArrowIcon={leftArrowIcon}
1087
+ leftArrowButtonProps={leftArrowButtonProps}
1088
+ rightArrowIcon={rightArrowIcon}
1089
+ rightArrowButtonProps={rightArrowButtonProps}
1090
+ disablePrevMonth={this.shouldDisablePrevMonth()}
1091
+ disableNextMonth={this.shouldDisableNextMonth()}
1092
+ /&gt;
1093
+ &nbsp;
1094
+ &lt;SlideTransition
1095
+ slideDirection={slideDirection}
1096
+ transKey={currentMonth!.toString()}
1097
+ className={classes.transitionContainer}
1098
+ &gt;
1099
+ &lt;&gt;
1100
+ {(this.state.loadingQueue &gt; 0 &amp;&amp; (
1101
+ <span class="branch-1 cbranch-no" title="branch not covered" > &lt;div className={classes.progressContainer}&gt;{loadingElement}&lt;/div&gt;</span>
1102
+ )) || &lt;div&gt;{this.renderWeeks()}&lt;/div&gt;}
1103
+ &lt;/&gt;
1104
+ &lt;/SlideTransition&gt;
1105
+ &lt;/React.Fragment&gt;
1106
+ );
1107
+ }
1108
+ }
1109
+ &nbsp;
1110
+ export const styles = <span class="fstat-no" title="function not covered" >(t</span>heme: Theme) =&gt; <span class="cstat-no" title="statement not covered" >({</span>
1111
+ transitionContainer: {
1112
+ minHeight: 36 * 6,
1113
+ marginTop: theme.spacing(1.5),
1114
+ },
1115
+ progressContainer: {
1116
+ width: '100%',
1117
+ height: '100%',
1118
+ display: 'flex',
1119
+ justifyContent: 'center',
1120
+ alignItems: 'center',
1121
+ },
1122
+ week: {
1123
+ display: 'flex',
1124
+ justifyContent: 'center',
1125
+ },
1126
+ });
1127
+ &nbsp;
1128
+ export default withStyles(styles, {
1129
+ name: 'MuiPickersCalendar',
1130
+ withTheme: true,
1131
+ })(withUtils()(Calendar));
1132
+ &nbsp;</pre></td></tr>
1133
+ </table></pre>
1134
+ <div class='push'></div><!-- for sticky footer -->
1135
+ </div><!-- /wrapper -->
1136
+ <div class='footer quiet pad2 space-top1 center small'>
1137
+ Code coverage
1138
+ generated by <a href="https://istanbul.js.org/" target="_blank">istanbul</a> at Tue Nov 08 2022 08:13:17 GMT+0300 (Москва, стандартное время)
1139
+ </div>
1140
+ </div>
1141
+ <script src="..\..\..\prettify.js"></script>
1142
+ <script>
1143
+ window.onload = function () {
1144
+ if (typeof prettyPrint === 'function') {
1145
+ prettyPrint();
1146
+ }
1147
+ };
1148
+ </script>
1149
+ <script src="..\..\..\sorter.js"></script>
1150
+ <script src="..\..\..\block-navigation.js"></script>
1151
+ </body>
1152
+ </html>