@anglr/datetime 1.0.0 → 2.0.1-beta.20220222061608

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 (456) hide show
  1. package/changelog.md +19 -0
  2. package/date-fns/package.json +7 -7
  3. package/date-fns/src/{date-fns.d.ts → index.d.ts} +4 -4
  4. package/date-fns/src/index.d.ts.map +1 -0
  5. package/date-fns/src/misc/tokens.d.ts +10 -10
  6. package/date-fns/src/services/dateFnsDateApi.service.d.ts +36 -33
  7. package/date-fns/src/services/dateFnsDateApi.service.d.ts.map +1 -1
  8. package/date-fns/src/services/dateFnsLocale.service.d.ts +10 -10
  9. package/es2015/date-fns/src/index.js +4 -0
  10. package/es2015/date-fns/src/index.js.map +1 -0
  11. package/es2015/date-fns/src/misc/tokens.js +20 -0
  12. package/es2015/date-fns/src/misc/tokens.js.map +1 -0
  13. package/es2015/date-fns/src/services/dateFnsDateApi.service.js +438 -0
  14. package/es2015/date-fns/src/services/dateFnsDateApi.service.js.map +1 -0
  15. package/es2015/date-fns/src/services/dateFnsLocale.service.js +2 -0
  16. package/es2015/date-fns/src/services/dateFnsLocale.service.js.map +1 -0
  17. package/es2015/karma.conf.js +57 -0
  18. package/es2015/karma.conf.js.map +1 -0
  19. package/{moment/src/moment.d.ts → es2015/moment/src/index.js} +3 -3
  20. package/es2015/moment/src/index.js.map +1 -0
  21. package/es2015/moment/src/misc/tokens.js +15 -0
  22. package/es2015/moment/src/misc/tokens.js.map +1 -0
  23. package/es2015/moment/src/services/momentDateApi.service.js +398 -0
  24. package/es2015/moment/src/services/momentDateApi.service.js.map +1 -0
  25. package/{src/datetime.d.ts → es2015/src/index.js} +19 -19
  26. package/es2015/src/index.js.map +1 -0
  27. package/es2015/src/misc/constants.js +33 -0
  28. package/es2015/src/misc/constants.js.map +1 -0
  29. package/es2015/src/misc/datetime.interface.js +2 -0
  30. package/es2015/src/misc/datetime.interface.js.map +1 -0
  31. package/es2015/src/misc/tokens.js +19 -0
  32. package/es2015/src/misc/tokens.js.map +1 -0
  33. package/es2015/src/misc/validators.js +58 -0
  34. package/es2015/src/misc/validators.js.map +1 -0
  35. package/es2015/src/modules/datePipes.module.js +33 -0
  36. package/es2015/src/modules/datePipes.module.js.map +1 -0
  37. package/es2015/src/picker/components/dayPicker/dayPicker.component.js +172 -0
  38. package/es2015/src/picker/components/dayPicker/dayPicker.component.js.map +1 -0
  39. package/es2015/src/picker/components/dayPicker/dayPicker.interfaces.js +2 -0
  40. package/es2015/src/picker/components/dayPicker/dayPicker.interfaces.js.map +1 -0
  41. package/es2015/src/picker/components/monthPicker/monthPicker.component.js +114 -0
  42. package/es2015/src/picker/components/monthPicker/monthPicker.component.js.map +1 -0
  43. package/es2015/src/picker/components/monthPicker/monthPicker.interfaces.js +2 -0
  44. package/es2015/src/picker/components/monthPicker/monthPicker.interfaces.js.map +1 -0
  45. package/es2015/src/picker/components/picker/picker.component.animations.js +71 -0
  46. package/es2015/src/picker/components/picker/picker.component.animations.js.map +1 -0
  47. package/es2015/src/picker/components/picker/picker.component.js +241 -0
  48. package/es2015/src/picker/components/picker/picker.component.js.map +1 -0
  49. package/es2015/src/picker/components/pickerBase.component.js +243 -0
  50. package/es2015/src/picker/components/pickerBase.component.js.map +1 -0
  51. package/es2015/src/picker/components/yearPicker/yearPicker.component.js +126 -0
  52. package/es2015/src/picker/components/yearPicker/yearPicker.component.js.map +1 -0
  53. package/es2015/src/picker/components/yearPicker/yearPicker.interfaces.js +2 -0
  54. package/es2015/src/picker/components/yearPicker/yearPicker.interfaces.js.map +1 -0
  55. package/es2015/src/picker/interfaces.js +5 -0
  56. package/es2015/src/picker/interfaces.js.map +1 -0
  57. package/es2015/src/picker/misc/datetimePicker.interface.js +2 -0
  58. package/es2015/src/picker/misc/datetimePicker.interface.js.map +1 -0
  59. package/es2015/src/picker/misc/tokens.js +6 -0
  60. package/es2015/src/picker/misc/tokens.js.map +1 -0
  61. package/es2015/src/picker/modules/picker.module.js +46 -0
  62. package/es2015/src/picker/modules/picker.module.js.map +1 -0
  63. package/es2015/src/picker/types.js +8 -0
  64. package/es2015/src/picker/types.js.map +1 -0
  65. package/es2015/src/pipes/asRequiredType.js +22 -0
  66. package/es2015/src/pipes/asRequiredType.js.map +1 -0
  67. package/es2015/src/pipes/dateConvert.pipe.js +35 -0
  68. package/es2015/src/pipes/dateConvert.pipe.js.map +1 -0
  69. package/es2015/src/pipes/dateFormat.pipe.js +45 -0
  70. package/es2015/src/pipes/dateFormat.pipe.js.map +1 -0
  71. package/es2015/src/selector/components/inputDateTime/inputDateTime.component.js +421 -0
  72. package/es2015/src/selector/components/inputDateTime/inputDateTime.component.js.map +1 -0
  73. package/es2015/src/selector/components/selector/selector.component.animations.js +15 -0
  74. package/es2015/src/selector/components/selector/selector.component.animations.js.map +1 -0
  75. package/es2015/src/selector/components/selector/selector.component.js +344 -0
  76. package/es2015/src/selector/components/selector/selector.component.js.map +1 -0
  77. package/es2015/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.js +317 -0
  78. package/es2015/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.js.map +1 -0
  79. package/es2015/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js +51 -0
  80. package/es2015/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js.map +1 -0
  81. package/es2015/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js +51 -0
  82. package/es2015/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js.map +1 -0
  83. package/es2015/src/selector/directives/datetimeValidator/datetimeValidator.directive.js +47 -0
  84. package/es2015/src/selector/directives/datetimeValidator/datetimeValidator.directive.js.map +1 -0
  85. package/es2015/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js +119 -0
  86. package/es2015/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js.map +1 -0
  87. package/es2015/src/selector/interfaces.js +2 -0
  88. package/es2015/src/selector/interfaces.js.map +1 -0
  89. package/es2015/src/selector/misc/datetimeSelector.interface.js +2 -0
  90. package/es2015/src/selector/misc/datetimeSelector.interface.js.map +1 -0
  91. package/es2015/src/selector/misc/tokens.js +6 -0
  92. package/es2015/src/selector/misc/tokens.js.map +1 -0
  93. package/es2015/src/selector/modules/basicSelector.module.js +20 -0
  94. package/es2015/src/selector/modules/basicSelector.module.js.map +1 -0
  95. package/es2015/src/selector/modules/selector.module.js +60 -0
  96. package/es2015/src/selector/modules/selector.module.js.map +1 -0
  97. package/es2015/src/selector/types.js +10 -0
  98. package/es2015/src/selector/types.js.map +1 -0
  99. package/es2015/src/services/dateApi.interface.js +2 -0
  100. package/es2015/src/services/dateApi.interface.js.map +1 -0
  101. package/es2015/src/services/datePositionParser.interface.js +2 -0
  102. package/es2015/src/services/datePositionParser.interface.js.map +1 -0
  103. package/es2015/src/services/datePositionParser.service.js +227 -0
  104. package/es2015/src/services/datePositionParser.service.js.map +1 -0
  105. package/es2015/src/services/dateTimeRelativeParser.service.js +66 -0
  106. package/es2015/src/services/dateTimeRelativeParser.service.js.map +1 -0
  107. package/es2015/src/services/dateValueProvider.service.js +58 -0
  108. package/es2015/src/services/dateValueProvider.service.js.map +1 -0
  109. package/es2015/src/services/formatProvider.interface.js +2 -0
  110. package/es2015/src/services/formatProvider.interface.js.map +1 -0
  111. package/es2015/src/services/index.js +4 -0
  112. package/es2015/src/services/index.js.map +1 -0
  113. package/es2020/date-fns/src/index.js +4 -0
  114. package/es2020/date-fns/src/index.js.map +1 -0
  115. package/es2020/date-fns/src/misc/tokens.js +20 -0
  116. package/es2020/date-fns/src/misc/tokens.js.map +1 -0
  117. package/es2020/date-fns/src/services/dateFnsDateApi.service.js +437 -0
  118. package/es2020/date-fns/src/services/dateFnsDateApi.service.js.map +1 -0
  119. package/es2020/date-fns/src/services/dateFnsLocale.service.js +2 -0
  120. package/es2020/date-fns/src/services/dateFnsLocale.service.js.map +1 -0
  121. package/es2020/karma.conf.js +57 -0
  122. package/es2020/karma.conf.js.map +1 -0
  123. package/es2020/moment/src/index.js +3 -0
  124. package/es2020/moment/src/index.js.map +1 -0
  125. package/es2020/moment/src/misc/tokens.js +15 -0
  126. package/es2020/moment/src/misc/tokens.js.map +1 -0
  127. package/es2020/moment/src/services/momentDateApi.service.js +398 -0
  128. package/es2020/moment/src/services/momentDateApi.service.js.map +1 -0
  129. package/es2020/src/index.js +19 -0
  130. package/es2020/src/index.js.map +1 -0
  131. package/es2020/src/misc/constants.js +33 -0
  132. package/es2020/src/misc/constants.js.map +1 -0
  133. package/es2020/src/misc/datetime.interface.js +2 -0
  134. package/es2020/src/misc/datetime.interface.js.map +1 -0
  135. package/es2020/src/misc/tokens.js +19 -0
  136. package/es2020/src/misc/tokens.js.map +1 -0
  137. package/es2020/src/misc/validators.js +58 -0
  138. package/es2020/src/misc/validators.js.map +1 -0
  139. package/es2020/src/modules/datePipes.module.js +33 -0
  140. package/es2020/src/modules/datePipes.module.js.map +1 -0
  141. package/es2020/src/picker/components/dayPicker/dayPicker.component.js +172 -0
  142. package/es2020/src/picker/components/dayPicker/dayPicker.component.js.map +1 -0
  143. package/es2020/src/picker/components/dayPicker/dayPicker.interfaces.js +2 -0
  144. package/es2020/src/picker/components/dayPicker/dayPicker.interfaces.js.map +1 -0
  145. package/es2020/src/picker/components/monthPicker/monthPicker.component.js +114 -0
  146. package/es2020/src/picker/components/monthPicker/monthPicker.component.js.map +1 -0
  147. package/es2020/src/picker/components/monthPicker/monthPicker.interfaces.js +2 -0
  148. package/es2020/src/picker/components/monthPicker/monthPicker.interfaces.js.map +1 -0
  149. package/es2020/src/picker/components/picker/picker.component.animations.js +71 -0
  150. package/es2020/src/picker/components/picker/picker.component.animations.js.map +1 -0
  151. package/es2020/src/picker/components/picker/picker.component.js +236 -0
  152. package/es2020/src/picker/components/picker/picker.component.js.map +1 -0
  153. package/es2020/src/picker/components/pickerBase.component.js +243 -0
  154. package/es2020/src/picker/components/pickerBase.component.js.map +1 -0
  155. package/es2020/src/picker/components/yearPicker/yearPicker.component.js +126 -0
  156. package/es2020/src/picker/components/yearPicker/yearPicker.component.js.map +1 -0
  157. package/es2020/src/picker/components/yearPicker/yearPicker.interfaces.js +2 -0
  158. package/es2020/src/picker/components/yearPicker/yearPicker.interfaces.js.map +1 -0
  159. package/es2020/src/picker/interfaces.js +5 -0
  160. package/es2020/src/picker/interfaces.js.map +1 -0
  161. package/es2020/src/picker/misc/datetimePicker.interface.js +2 -0
  162. package/es2020/src/picker/misc/datetimePicker.interface.js.map +1 -0
  163. package/es2020/src/picker/misc/tokens.js +6 -0
  164. package/es2020/src/picker/misc/tokens.js.map +1 -0
  165. package/es2020/src/picker/modules/picker.module.js +46 -0
  166. package/es2020/src/picker/modules/picker.module.js.map +1 -0
  167. package/es2020/src/picker/types.js +8 -0
  168. package/es2020/src/picker/types.js.map +1 -0
  169. package/es2020/src/pipes/asRequiredType.js +22 -0
  170. package/es2020/src/pipes/asRequiredType.js.map +1 -0
  171. package/es2020/src/pipes/dateConvert.pipe.js +35 -0
  172. package/es2020/src/pipes/dateConvert.pipe.js.map +1 -0
  173. package/es2020/src/pipes/dateFormat.pipe.js +45 -0
  174. package/es2020/src/pipes/dateFormat.pipe.js.map +1 -0
  175. package/es2020/src/selector/components/inputDateTime/inputDateTime.component.js +417 -0
  176. package/es2020/src/selector/components/inputDateTime/inputDateTime.component.js.map +1 -0
  177. package/es2020/src/selector/components/selector/selector.component.animations.js +15 -0
  178. package/es2020/src/selector/components/selector/selector.component.animations.js.map +1 -0
  179. package/es2020/src/selector/components/selector/selector.component.js +334 -0
  180. package/es2020/src/selector/components/selector/selector.component.js.map +1 -0
  181. package/es2020/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.js +314 -0
  182. package/es2020/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.js.map +1 -0
  183. package/es2020/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js +51 -0
  184. package/es2020/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js.map +1 -0
  185. package/es2020/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js +51 -0
  186. package/es2020/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js.map +1 -0
  187. package/es2020/src/selector/directives/datetimeValidator/datetimeValidator.directive.js +47 -0
  188. package/es2020/src/selector/directives/datetimeValidator/datetimeValidator.directive.js.map +1 -0
  189. package/es2020/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js +118 -0
  190. package/es2020/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js.map +1 -0
  191. package/es2020/src/selector/interfaces.js +2 -0
  192. package/es2020/src/selector/interfaces.js.map +1 -0
  193. package/es2020/src/selector/misc/datetimeSelector.interface.js +2 -0
  194. package/es2020/src/selector/misc/datetimeSelector.interface.js.map +1 -0
  195. package/es2020/src/selector/misc/tokens.js +6 -0
  196. package/es2020/src/selector/misc/tokens.js.map +1 -0
  197. package/es2020/src/selector/modules/basicSelector.module.js +20 -0
  198. package/es2020/src/selector/modules/basicSelector.module.js.map +1 -0
  199. package/es2020/src/selector/modules/selector.module.js +60 -0
  200. package/es2020/src/selector/modules/selector.module.js.map +1 -0
  201. package/es2020/src/selector/types.js +10 -0
  202. package/es2020/src/selector/types.js.map +1 -0
  203. package/es2020/src/services/dateApi.interface.js +2 -0
  204. package/es2020/src/services/dateApi.interface.js.map +1 -0
  205. package/es2020/src/services/datePositionParser.interface.js +2 -0
  206. package/es2020/src/services/datePositionParser.interface.js.map +1 -0
  207. package/es2020/src/services/datePositionParser.service.js +227 -0
  208. package/es2020/src/services/datePositionParser.service.js.map +1 -0
  209. package/es2020/src/services/dateTimeRelativeParser.service.js +65 -0
  210. package/es2020/src/services/dateTimeRelativeParser.service.js.map +1 -0
  211. package/es2020/src/services/dateValueProvider.service.js +58 -0
  212. package/es2020/src/services/dateValueProvider.service.js.map +1 -0
  213. package/es2020/src/services/formatProvider.interface.js +2 -0
  214. package/es2020/src/services/formatProvider.interface.js.map +1 -0
  215. package/es2020/src/services/index.js +4 -0
  216. package/es2020/src/services/index.js.map +1 -0
  217. package/karma.conf.d.ts +2 -0
  218. package/karma.conf.d.ts.map +1 -0
  219. package/moment/package.json +7 -7
  220. package/moment/src/index.d.ts +3 -0
  221. package/moment/src/index.d.ts.map +1 -0
  222. package/moment/src/misc/tokens.d.ts +5 -5
  223. package/moment/src/services/momentDateApi.service.d.ts +35 -32
  224. package/moment/src/services/momentDateApi.service.d.ts.map +1 -1
  225. package/package.json +100 -48
  226. package/src/index.d.ts +19 -0
  227. package/src/index.d.ts.map +1 -0
  228. package/src/misc/constants.d.ts +32 -32
  229. package/src/misc/datetime.interface.d.ts +34 -34
  230. package/src/misc/tokens.d.ts +10 -10
  231. package/src/misc/validators.d.ts +25 -25
  232. package/src/modules/datePipes.module.d.ts +12 -5
  233. package/src/modules/datePipes.module.d.ts.map +1 -1
  234. package/src/picker/components/dayPicker/dayPicker.component.d.ts +68 -65
  235. package/src/picker/components/dayPicker/dayPicker.component.d.ts.map +1 -1
  236. package/src/picker/components/dayPicker/dayPicker.component.html +7 -7
  237. package/src/picker/components/dayPicker/dayPicker.interfaces.d.ts +10 -10
  238. package/src/picker/components/monthPicker/monthPicker.component.d.ts +52 -49
  239. package/src/picker/components/monthPicker/monthPicker.component.d.ts.map +1 -1
  240. package/src/picker/components/monthPicker/monthPicker.component.html +6 -6
  241. package/src/picker/components/monthPicker/monthPicker.interfaces.d.ts +6 -6
  242. package/src/picker/components/picker/picker.component.animations.d.ts +4 -4
  243. package/src/picker/components/picker/picker.component.d.ts +104 -101
  244. package/src/picker/components/picker/picker.component.d.ts.map +1 -1
  245. package/src/picker/components/pickerBase.component.d.ts +169 -166
  246. package/src/picker/components/pickerBase.component.d.ts.map +1 -1
  247. package/src/picker/components/yearPicker/yearPicker.component.d.ts +57 -54
  248. package/src/picker/components/yearPicker/yearPicker.component.d.ts.map +1 -1
  249. package/src/picker/components/yearPicker/yearPicker.component.html +6 -6
  250. package/src/picker/components/yearPicker/yearPicker.interfaces.d.ts +6 -6
  251. package/src/picker/interfaces.d.ts +4 -4
  252. package/src/picker/misc/datetimePicker.interface.d.ts +188 -188
  253. package/src/picker/misc/tokens.d.ts +6 -6
  254. package/src/picker/modules/picker.module.d.ts +16 -5
  255. package/src/picker/modules/picker.module.d.ts.map +1 -1
  256. package/src/picker/types.d.ts +7 -7
  257. package/src/pipes/asRequiredType.d.ts +21 -0
  258. package/src/pipes/asRequiredType.d.ts.map +1 -0
  259. package/src/pipes/dateConvert.pipe.d.ts +18 -15
  260. package/src/pipes/dateConvert.pipe.d.ts.map +1 -1
  261. package/src/pipes/dateFormat.pipe.d.ts +20 -17
  262. package/src/pipes/dateFormat.pipe.d.ts.map +1 -1
  263. package/src/selector/components/inputDateTime/inputDateTime.component.d.ts +187 -184
  264. package/src/selector/components/inputDateTime/inputDateTime.component.d.ts.map +1 -1
  265. package/src/selector/components/selector/selector.component.animations.d.ts +4 -4
  266. package/src/selector/components/selector/selector.component.d.ts +155 -152
  267. package/src/selector/components/selector/selector.component.d.ts.map +1 -1
  268. package/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.d.ts +170 -167
  269. package/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.d.ts.map +1 -1
  270. package/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.d.ts +22 -19
  271. package/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.d.ts.map +1 -1
  272. package/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.d.ts +22 -19
  273. package/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.d.ts.map +1 -1
  274. package/src/selector/directives/datetimeValidator/datetimeValidator.directive.d.ts +21 -18
  275. package/src/selector/directives/datetimeValidator/datetimeValidator.directive.d.ts.map +1 -1
  276. package/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.d.ts +53 -50
  277. package/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.d.ts.map +1 -1
  278. package/src/selector/interfaces.d.ts +1 -1
  279. package/src/selector/misc/datetimeSelector.interface.d.ts +82 -82
  280. package/src/selector/misc/tokens.d.ts +6 -6
  281. package/src/selector/modules/basicSelector.module.d.ts +10 -5
  282. package/src/selector/modules/basicSelector.module.d.ts.map +1 -1
  283. package/src/selector/modules/selector.module.d.ts +18 -5
  284. package/src/selector/modules/selector.module.d.ts.map +1 -1
  285. package/src/selector/types.d.ts +9 -9
  286. package/src/services/dateApi.interface.d.ts +275 -275
  287. package/src/services/datePositionParser.interface.d.ts +40 -40
  288. package/src/services/datePositionParser.service.d.ts +60 -57
  289. package/src/services/datePositionParser.service.d.ts.map +1 -1
  290. package/src/services/dateTimeRelativeParser.service.d.ts +21 -18
  291. package/src/services/dateTimeRelativeParser.service.d.ts.map +1 -1
  292. package/src/services/dateValueProvider.service.d.ts +18 -15
  293. package/src/services/dateValueProvider.service.d.ts.map +1 -1
  294. package/src/services/formatProvider.interface.d.ts +17 -17
  295. package/src/services/index.d.ts +3 -3
  296. package/tsconfig.karma.json +5 -6
  297. package/version.bak +1 -1
  298. package/appveyor.yml +0 -70
  299. package/date-fns/dist/es2015/date-fns/index.js +0 -10
  300. package/date-fns/dist/es2015/date-fns/public_api.js +0 -7
  301. package/date-fns/dist/es2015/date-fns/src/date-fns.js +0 -9
  302. package/date-fns/dist/es2015/date-fns/src/misc/tokens.js +0 -32
  303. package/date-fns/dist/es2015/date-fns/src/services/dateFnsDateApi.service.js +0 -512
  304. package/date-fns/dist/es2015/date-fns/src/services/dateFnsLocale.service.js +0 -18
  305. package/date-fns/dist/es5/date-fns/index.js +0 -10
  306. package/date-fns/dist/es5/date-fns/public_api.js +0 -7
  307. package/date-fns/dist/es5/date-fns/src/date-fns.js +0 -9
  308. package/date-fns/dist/es5/date-fns/src/misc/tokens.js +0 -32
  309. package/date-fns/dist/es5/date-fns/src/services/dateFnsDateApi.service.js +0 -902
  310. package/date-fns/dist/es5/date-fns/src/services/dateFnsLocale.service.js +0 -18
  311. package/date-fns/index.d.ts +0 -5
  312. package/date-fns/index.d.ts.map +0 -1
  313. package/date-fns/index.metadata.json +0 -1
  314. package/date-fns/public_api.d.ts +0 -2
  315. package/date-fns/public_api.d.ts.map +0 -1
  316. package/date-fns/src/date-fns.d.ts.map +0 -1
  317. package/date-fns/src/services/dateFnsDateApi.service.ngfactory.d.ts.map +0 -1
  318. package/datetime.d.ts +0 -7
  319. package/datetime.d.ts.map +0 -1
  320. package/datetime.metadata.json +0 -1
  321. package/dist/es2015/datetime.js +0 -10
  322. package/dist/es2015/public_api.js +0 -7
  323. package/dist/es2015/src/datetime.js +0 -24
  324. package/dist/es2015/src/misc/constants.js +0 -46
  325. package/dist/es2015/src/misc/datetime.interface.js +0 -52
  326. package/dist/es2015/src/misc/tokens.js +0 -29
  327. package/dist/es2015/src/misc/validators.js +0 -80
  328. package/dist/es2015/src/modules/datePipes.module.js +0 -26
  329. package/dist/es2015/src/picker/components/dayPicker/dayPicker.component.js +0 -215
  330. package/dist/es2015/src/picker/components/dayPicker/dayPicker.interfaces.js +0 -18
  331. package/dist/es2015/src/picker/components/monthPicker/monthPicker.component.js +0 -138
  332. package/dist/es2015/src/picker/components/monthPicker/monthPicker.interfaces.js +0 -11
  333. package/dist/es2015/src/picker/components/picker/picker.component.animations.js +0 -77
  334. package/dist/es2015/src/picker/components/picker/picker.component.js +0 -386
  335. package/dist/es2015/src/picker/components/pickerBase.component.js +0 -406
  336. package/dist/es2015/src/picker/components/yearPicker/yearPicker.component.js +0 -158
  337. package/dist/es2015/src/picker/components/yearPicker/yearPicker.interfaces.js +0 -11
  338. package/dist/es2015/src/picker/interfaces.js +0 -10
  339. package/dist/es2015/src/picker/misc/datetimePicker.interface.js +0 -245
  340. package/dist/es2015/src/picker/misc/tokens.js +0 -12
  341. package/dist/es2015/src/picker/modules/picker.module.js +0 -35
  342. package/dist/es2015/src/picker/types.js +0 -13
  343. package/dist/es2015/src/pipes/dateConvert.pipe.js +0 -50
  344. package/dist/es2015/src/pipes/dateFormat.pipe.js +0 -64
  345. package/dist/es2015/src/selector/components/inputDateTime/inputDateTime.component.js +0 -588
  346. package/dist/es2015/src/selector/components/selector/selector.component.animations.js +0 -21
  347. package/dist/es2015/src/selector/components/selector/selector.component.js +0 -514
  348. package/dist/es2015/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.js +0 -456
  349. package/dist/es2015/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js +0 -73
  350. package/dist/es2015/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js +0 -73
  351. package/dist/es2015/src/selector/directives/datetimeValidator/datetimeValidator.directive.js +0 -70
  352. package/dist/es2015/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js +0 -171
  353. package/dist/es2015/src/selector/interfaces.js +0 -7
  354. package/dist/es2015/src/selector/misc/datetimeSelector.interface.js +0 -106
  355. package/dist/es2015/src/selector/misc/tokens.js +0 -12
  356. package/dist/es2015/src/selector/modules/basicSelector.module.js +0 -20
  357. package/dist/es2015/src/selector/modules/selector.module.js +0 -45
  358. package/dist/es2015/src/selector/types.js +0 -15
  359. package/dist/es2015/src/services/dateApi.interface.js +0 -316
  360. package/dist/es2015/src/services/datePositionParser.interface.js +0 -56
  361. package/dist/es2015/src/services/datePositionParser.service.js +0 -297
  362. package/dist/es2015/src/services/dateTimeRelativeParser.service.js +0 -97
  363. package/dist/es2015/src/services/dateValueProvider.service.js +0 -79
  364. package/dist/es2015/src/services/formatProvider.interface.js +0 -28
  365. package/dist/es2015/src/services/index.js +0 -9
  366. package/dist/es5/datetime.js +0 -10
  367. package/dist/es5/public_api.js +0 -7
  368. package/dist/es5/src/datetime.js +0 -24
  369. package/dist/es5/src/misc/constants.js +0 -46
  370. package/dist/es5/src/misc/datetime.interface.js +0 -52
  371. package/dist/es5/src/misc/tokens.js +0 -29
  372. package/dist/es5/src/misc/validators.js +0 -124
  373. package/dist/es5/src/modules/datePipes.module.js +0 -30
  374. package/dist/es5/src/picker/components/dayPicker/dayPicker.component.js +0 -323
  375. package/dist/es5/src/picker/components/dayPicker/dayPicker.interfaces.js +0 -18
  376. package/dist/es5/src/picker/components/monthPicker/monthPicker.component.js +0 -233
  377. package/dist/es5/src/picker/components/monthPicker/monthPicker.interfaces.js +0 -11
  378. package/dist/es5/src/picker/components/picker/picker.component.animations.js +0 -77
  379. package/dist/es5/src/picker/components/picker/picker.component.js +0 -460
  380. package/dist/es5/src/picker/components/pickerBase.component.js +0 -561
  381. package/dist/es5/src/picker/components/yearPicker/yearPicker.component.js +0 -253
  382. package/dist/es5/src/picker/components/yearPicker/yearPicker.interfaces.js +0 -11
  383. package/dist/es5/src/picker/interfaces.js +0 -10
  384. package/dist/es5/src/picker/misc/datetimePicker.interface.js +0 -245
  385. package/dist/es5/src/picker/misc/tokens.js +0 -12
  386. package/dist/es5/src/picker/modules/picker.module.js +0 -39
  387. package/dist/es5/src/picker/types.js +0 -13
  388. package/dist/es5/src/pipes/dateConvert.pipe.js +0 -63
  389. package/dist/es5/src/pipes/dateFormat.pipe.js +0 -79
  390. package/dist/es5/src/selector/components/inputDateTime/inputDateTime.component.js +0 -808
  391. package/dist/es5/src/selector/components/selector/selector.component.animations.js +0 -21
  392. package/dist/es5/src/selector/components/selector/selector.component.js +0 -653
  393. package/dist/es5/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.js +0 -656
  394. package/dist/es5/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.js +0 -84
  395. package/dist/es5/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.js +0 -84
  396. package/dist/es5/src/selector/directives/datetimeValidator/datetimeValidator.directive.js +0 -82
  397. package/dist/es5/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.js +0 -230
  398. package/dist/es5/src/selector/interfaces.js +0 -7
  399. package/dist/es5/src/selector/misc/datetimeSelector.interface.js +0 -106
  400. package/dist/es5/src/selector/misc/tokens.js +0 -12
  401. package/dist/es5/src/selector/modules/basicSelector.module.js +0 -24
  402. package/dist/es5/src/selector/modules/selector.module.js +0 -49
  403. package/dist/es5/src/selector/types.js +0 -15
  404. package/dist/es5/src/services/dateApi.interface.js +0 -316
  405. package/dist/es5/src/services/datePositionParser.interface.js +0 -56
  406. package/dist/es5/src/services/datePositionParser.service.js +0 -366
  407. package/dist/es5/src/services/dateTimeRelativeParser.service.js +0 -108
  408. package/dist/es5/src/services/dateValueProvider.service.js +0 -92
  409. package/dist/es5/src/services/formatProvider.interface.js +0 -28
  410. package/dist/es5/src/services/index.js +0 -9
  411. package/moment/dist/es2015/moment/index.js +0 -10
  412. package/moment/dist/es2015/moment/public_api.js +0 -7
  413. package/moment/dist/es2015/moment/src/misc/tokens.js +0 -26
  414. package/moment/dist/es2015/moment/src/moment.js +0 -8
  415. package/moment/dist/es2015/moment/src/services/momentDateApi.service.js +0 -466
  416. package/moment/dist/es5/moment/index.js +0 -10
  417. package/moment/dist/es5/moment/public_api.js +0 -7
  418. package/moment/dist/es5/moment/src/misc/tokens.js +0 -26
  419. package/moment/dist/es5/moment/src/moment.js +0 -8
  420. package/moment/dist/es5/moment/src/services/momentDateApi.service.js +0 -858
  421. package/moment/index.d.ts +0 -5
  422. package/moment/index.d.ts.map +0 -1
  423. package/moment/index.metadata.json +0 -1
  424. package/moment/public_api.d.ts +0 -2
  425. package/moment/public_api.d.ts.map +0 -1
  426. package/moment/src/moment.d.ts.map +0 -1
  427. package/moment/src/services/momentDateApi.service.ngfactory.d.ts.map +0 -1
  428. package/public_api.d.ts +0 -2
  429. package/public_api.d.ts.map +0 -1
  430. package/src/datetime.d.ts.map +0 -1
  431. package/src/modules/datePipes.module.ngfactory.d.ts.map +0 -1
  432. package/src/picker/components/dayPicker/dayPicker.component.css.shim.ngstyle.d.ts.map +0 -1
  433. package/src/picker/components/dayPicker/dayPicker.component.ngfactory.d.ts.map +0 -1
  434. package/src/picker/components/monthPicker/monthPicker.component.css.shim.ngstyle.d.ts.map +0 -1
  435. package/src/picker/components/monthPicker/monthPicker.component.ngfactory.d.ts.map +0 -1
  436. package/src/picker/components/picker/picker.component.ngfactory.d.ts.map +0 -1
  437. package/src/picker/components/yearPicker/yearPicker.component.css.shim.ngstyle.d.ts.map +0 -1
  438. package/src/picker/components/yearPicker/yearPicker.component.ngfactory.d.ts.map +0 -1
  439. package/src/picker/modules/picker.module.ngfactory.d.ts.map +0 -1
  440. package/src/pipes/dateConvert.pipe.ngfactory.d.ts.map +0 -1
  441. package/src/pipes/dateFormat.pipe.ngfactory.d.ts.map +0 -1
  442. package/src/selector/components/inputDateTime/inputDateTime.component.css.shim.ngstyle.d.ts.map +0 -1
  443. package/src/selector/components/inputDateTime/inputDateTime.component.ngfactory.d.ts.map +0 -1
  444. package/src/selector/components/selector/selector.component.css.shim.ngstyle.d.ts.map +0 -1
  445. package/src/selector/components/selector/selector.component.ngfactory.d.ts.map +0 -1
  446. package/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.css.shim.ngstyle.d.ts.map +0 -1
  447. package/src/selector/components/simpleInputDateTime/simpleInputDateTime.component.ngfactory.d.ts.map +0 -1
  448. package/src/selector/directives/datetimeMaxValidator/datetimeMaxValidator.directive.ngfactory.d.ts.map +0 -1
  449. package/src/selector/directives/datetimeMinValidator/datetimeMinValidator.directive.ngfactory.d.ts.map +0 -1
  450. package/src/selector/directives/datetimeValidator/datetimeValidator.directive.ngfactory.d.ts.map +0 -1
  451. package/src/selector/directives/selectorControlValueAccessor/selectorControlValueAccessor.directive.ngfactory.d.ts.map +0 -1
  452. package/src/selector/modules/basicSelector.module.ngfactory.d.ts.map +0 -1
  453. package/src/selector/modules/selector.module.ngfactory.d.ts.map +0 -1
  454. package/src/services/datePositionParser.service.ngfactory.d.ts.map +0 -1
  455. package/src/services/dateTimeRelativeParser.service.ngfactory.d.ts.map +0 -1
  456. package/src/services/dateValueProvider.service.ngfactory.d.ts.map +0 -1
@@ -1,386 +0,0 @@
1
- /**
2
- * @fileoverview added by tsickle
3
- * Generated from: src/picker/components/picker/picker.component.ts
4
- * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
5
- */
6
- import { Component, ChangeDetectionStrategy, Optional, Inject, Input, EventEmitter, Output, ChangeDetectorRef } from '@angular/core';
7
- import { extend } from '@jscrpt/common';
8
- import { Subscription } from 'rxjs';
9
- import { DATE_API } from '../../../misc/tokens';
10
- import { DATE_TIME_PICKER_CONFIGURATION } from '../../misc/tokens';
11
- import { DateTimeDayPickerComponent } from '../dayPicker/dayPicker.component';
12
- import { DateTimeMonthPickerComponent } from '../monthPicker/monthPicker.component';
13
- import { DateTimeYearPickerComponent } from '../yearPicker/yearPicker.component';
14
- import { scaleUpDownTrigger } from './picker.component.animations';
15
- //TODO - merge options
16
- /**
17
- * Default configuration for picker
18
- * @type {?}
19
- */
20
- const defaultConfiguration = {
21
- defaultPeriod: 'day',
22
- pickerPeriodsDefinition: {
23
- "day": DateTimeDayPickerComponent,
24
- "month": DateTimeMonthPickerComponent,
25
- "year": DateTimeYearPickerComponent
26
- },
27
- cssClasses: {}
28
- };
29
- /**
30
- * Component used for displaying date time picker
31
- * @template TDate
32
- */
33
- export class DateTimePickerComponent {
34
- //######################### constructor #########################
35
- /**
36
- * @param {?} configuration
37
- * @param {?} _dateApi
38
- * @param {?} _changeDetector
39
- */
40
- constructor(configuration, _dateApi, _changeDetector) {
41
- this._dateApi = _dateApi;
42
- this._changeDetector = _changeDetector;
43
- /**
44
- * Array of available picker names
45
- */
46
- this._pickerNames = [];
47
- /**
48
- * Current selected value
49
- */
50
- this._value = null;
51
- /**
52
- * All subscriptions for active picker
53
- */
54
- this._activePickerSubscriptions = new Subscription();
55
- /**
56
- * Minimal possible value that can be picked
57
- */
58
- this._minValue = null;
59
- /**
60
- * Maximal possible value that can be picked
61
- */
62
- this._maxValue = null;
63
- /**
64
- * Active picker index
65
- * \@internal
66
- */
67
- this.activePickerIndex = 0;
68
- //######################### public properties - outputs #########################
69
- /**
70
- * Occurs when value changes
71
- */
72
- this.valueChange = new EventEmitter();
73
- this._options = extend(true, {}, defaultConfiguration, configuration);
74
- // without deep-copy for this attribute
75
- if (configuration === null || configuration === void 0 ? void 0 : configuration.pickerPeriodsDefinition) {
76
- this._options.pickerPeriodsDefinition = configuration.pickerPeriodsDefinition;
77
- }
78
- }
79
- //######################### public properties - inputs #########################
80
- /**
81
- * Current options used by picker
82
- * @return {?}
83
- */
84
- get options() {
85
- return this._options;
86
- }
87
- /**
88
- * @param {?} value
89
- * @return {?}
90
- */
91
- set options(value) {
92
- this._options = extend(true, this._options, value);
93
- // without deep-copy for this attribute
94
- if (value === null || value === void 0 ? void 0 : value.pickerPeriodsDefinition) {
95
- this._options.pickerPeriodsDefinition = value.pickerPeriodsDefinition;
96
- }
97
- }
98
- /**
99
- * Current selected value
100
- * @return {?}
101
- */
102
- get value() {
103
- return this._value;
104
- }
105
- /**
106
- * @param {?} value
107
- * @return {?}
108
- */
109
- set value(value) {
110
- var _a, _b;
111
- this._value = value;
112
- (_a = this._activePicker) === null || _a === void 0 ? void 0 : _a.setValue(value);
113
- (_b = this._activePicker) === null || _b === void 0 ? void 0 : _b.invalidateVisuals();
114
- }
115
- /**
116
- * Gets or sets minimal possible value for picker, that can be picked
117
- * @return {?}
118
- */
119
- get minValue() {
120
- return this._minValue;
121
- }
122
- /**
123
- * @param {?} value
124
- * @return {?}
125
- */
126
- set minValue(value) {
127
- var _a;
128
- this._minValue = value;
129
- (_a = this._activePicker) === null || _a === void 0 ? void 0 : _a.setMinValue(this._minValue);
130
- }
131
- /**
132
- * Gets or sets maximal possible value for picker, that can be picked
133
- * @return {?}
134
- */
135
- get maxValue() {
136
- return this._maxValue;
137
- }
138
- /**
139
- * @param {?} value
140
- * @return {?}
141
- */
142
- set maxValue(value) {
143
- var _a;
144
- this._maxValue = value;
145
- (_a = this._activePicker) === null || _a === void 0 ? void 0 : _a.setMaxValue(this._maxValue);
146
- }
147
- //######################### public methods - implementation of OnInit #########################
148
- /**
149
- * Initialize component
150
- * @return {?}
151
- */
152
- ngOnInit() {
153
- if (this._options.pickerPeriodsOrder) {
154
- if (Array.isArray(this._options.pickerPeriodsOrder)) {
155
- this._pickerNames = this._options.pickerPeriodsOrder;
156
- }
157
- else {
158
- this._pickerNames = this._options.pickerPeriodsOrder.split(',')
159
- .map((/**
160
- * @param {?} x
161
- * @return {?}
162
- */
163
- x => x.trim()))
164
- .filter((/**
165
- * @param {?} x
166
- * @return {?}
167
- */
168
- x => x));
169
- }
170
- }
171
- if (this._pickerNames && this._pickerNames.length > 0) {
172
- this._pickerNames.forEach((/**
173
- * @param {?} x
174
- * @return {?}
175
- */
176
- x => {
177
- if (!(/** @type {?} */ (this._options.pickerPeriodsDefinition))[(/** @type {?} */ (x))]) {
178
- throw new Error(`There is no period '${x}' in picker options`);
179
- }
180
- }));
181
- }
182
- else {
183
- this._pickerNames = Object.keys((/** @type {?} */ (this._options.pickerPeriodsDefinition)));
184
- }
185
- if (this._pickerNames.findIndex((/**
186
- * @param {?} x
187
- * @return {?}
188
- */
189
- x => x == this._options.defaultPeriod)) < 0) {
190
- throw new Error(`There is no period '${this._options.defaultPeriod}' in picker options`);
191
- }
192
- this.activePickerComponent = (/** @type {?} */ (this._options.pickerPeriodsDefinition))[(/** @type {?} */ (this._options.defaultPeriod))];
193
- this._activePickerName = (/** @type {?} */ (this._options.defaultPeriod));
194
- this.activePickerIndex = this._pickerNames.indexOf(this._activePickerName);
195
- }
196
- //######################### public methods - implementation of OnDestroy #########################
197
- /**
198
- * Called when component is destroyed
199
- * @return {?}
200
- */
201
- ngOnDestroy() {
202
- this._display = undefined;
203
- this._activePickerSubscriptions.unsubscribe();
204
- }
205
- //######################### public methods - template bindings #########################
206
- /**
207
- * Handles created or destroyed date time picker instance
208
- * \@internal
209
- * @param {?} picker - Instance of picker or null
210
- * @return {?}
211
- */
212
- pickerCreated(picker) {
213
- var _a, _b;
214
- if (picker == this._activePicker) {
215
- return;
216
- }
217
- this._activePicker = picker;
218
- this._activePickerSubscriptions.unsubscribe();
219
- this._activePickerSubscriptions = new Subscription();
220
- if (!this._activePicker) {
221
- return;
222
- }
223
- this._activePickerSubscriptions.add(picker.valueChange.subscribe((/**
224
- * @return {?}
225
- */
226
- () => {
227
- this._value = picker.value;
228
- this.valueChange.emit((/** @type {?} */ (this._value)));
229
- })));
230
- this._activePickerSubscriptions.add(picker.scaleUp.subscribe((/**
231
- * @param {?} display
232
- * @return {?}
233
- */
234
- display => {
235
- this._display = display;
236
- /** @type {?} */
237
- let index = this._pickerNames.indexOf(this._activePickerName) + 1;
238
- this._activePickerName = this._pickerNames[index];
239
- this.activePickerIndex = this._pickerNames.indexOf(this._activePickerName);
240
- this.activePickerComponent = (/** @type {?} */ (this._options.pickerPeriodsDefinition))[this._activePickerName];
241
- })));
242
- this._activePickerSubscriptions.add(picker.scaleDown.subscribe((/**
243
- * @param {?} display
244
- * @return {?}
245
- */
246
- display => {
247
- this._display = display;
248
- /** @type {?} */
249
- let index = this._pickerNames.indexOf(this._activePickerName) - 1;
250
- this._activePickerName = this._pickerNames[index];
251
- this.activePickerIndex = this._pickerNames.indexOf(this._activePickerName);
252
- this.activePickerComponent = (/** @type {?} */ (this._options.pickerPeriodsDefinition))[this._activePickerName];
253
- })));
254
- picker.setCanGoDown(this._pickerNames.indexOf(this._activePickerName) > 0);
255
- picker.setCanGoUp(this._pickerNames.indexOf(this._activePickerName) < this._pickerNames.length - 1);
256
- this._setPickerCssClasses();
257
- picker.setValue(this._value);
258
- picker.setMinValue(this._minValue);
259
- picker.setMaxValue(this._maxValue);
260
- picker.display(this._display ? this._dateApi.getValue(this._display) : this._dateApi.getValue((_b = (_a = this._value) === null || _a === void 0 ? void 0 : _a.from) !== null && _b !== void 0 ? _b : this._dateApi.now().value));
261
- picker.invalidateVisuals();
262
- }
263
- //######################### protected methods #########################
264
- /**
265
- * Sets picker css classes
266
- * @protected
267
- * @return {?}
268
- */
269
- _setPickerCssClasses() {
270
- var _a, _b, _c, _d, _e, _f, _g, _h, _j;
271
- if (!this._activePicker) {
272
- return;
273
- }
274
- //sets shared css
275
- this._activePicker.setCssClasses((_c = (_b = (_a = this._options) === null || _a === void 0 ? void 0 : _a.cssClasses) === null || _b === void 0 ? void 0 : _b.pickerShared) !== null && _c !== void 0 ? _c : {});
276
- if (((_e = (_d = this._options) === null || _d === void 0 ? void 0 : _d.cssClasses) === null || _e === void 0 ? void 0 : _e.pickerCustom) && ((_g = (_f = this._options) === null || _f === void 0 ? void 0 : _f.cssClasses) === null || _g === void 0 ? void 0 : _g.pickerCustom[this._activePickerName])) {
277
- this._activePicker.setCssClasses((_j = (_h = this._options) === null || _h === void 0 ? void 0 : _h.cssClasses) === null || _j === void 0 ? void 0 : _j.pickerCustom[this._activePickerName]);
278
- }
279
- }
280
- }
281
- DateTimePickerComponent.decorators = [
282
- { type: Component, args: [{
283
- selector: 'date-time-picker',
284
- template: "<div [@scaleUpDown]=\"activePickerIndex\">\r\n <ng-template [ngComponentOutletEx]=\"activePickerComponent\" (ngComponentOutletExCreated)=\"pickerCreated($event)\"></ng-template>\r\n</div>",
285
- // styleUrls: ['picker.component.scss'],
286
- animations: [scaleUpDownTrigger],
287
- changeDetection: ChangeDetectionStrategy.OnPush
288
- },] }
289
- ];
290
- /** @nocollapse */
291
- DateTimePickerComponent.ctorParameters = () => [
292
- { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [DATE_TIME_PICKER_CONFIGURATION,] }] },
293
- { type: undefined, decorators: [{ type: Inject, args: [DATE_API,] }] },
294
- { type: ChangeDetectorRef }
295
- ];
296
- DateTimePickerComponent.propDecorators = {
297
- options: [{ type: Input }],
298
- value: [{ type: Input }],
299
- minValue: [{ type: Input }],
300
- maxValue: [{ type: Input }],
301
- valueChange: [{ type: Output }]
302
- };
303
- if (false) {
304
- /**
305
- * Instance of active date time picker
306
- * @type {?}
307
- * @protected
308
- */
309
- DateTimePickerComponent.prototype._activePicker;
310
- /**
311
- * Name, id of displayed picker
312
- * @type {?}
313
- * @protected
314
- */
315
- DateTimePickerComponent.prototype._activePickerName;
316
- /**
317
- * Array of available picker names
318
- * @type {?}
319
- * @protected
320
- */
321
- DateTimePickerComponent.prototype._pickerNames;
322
- /**
323
- * Current selected value
324
- * @type {?}
325
- * @protected
326
- */
327
- DateTimePickerComponent.prototype._value;
328
- /**
329
- * All subscriptions for active picker
330
- * @type {?}
331
- * @protected
332
- */
333
- DateTimePickerComponent.prototype._activePickerSubscriptions;
334
- /**
335
- * Date that should be displayed in picker, used when moving up or down in periods
336
- * @type {?}
337
- * @protected
338
- */
339
- DateTimePickerComponent.prototype._display;
340
- /**
341
- * Minimal possible value that can be picked
342
- * @type {?}
343
- * @protected
344
- */
345
- DateTimePickerComponent.prototype._minValue;
346
- /**
347
- * Maximal possible value that can be picked
348
- * @type {?}
349
- * @protected
350
- */
351
- DateTimePickerComponent.prototype._maxValue;
352
- /**
353
- * Current options used by picker
354
- * @type {?}
355
- * @protected
356
- */
357
- DateTimePickerComponent.prototype._options;
358
- /**
359
- * Currently active date time picker component type
360
- * \@internal
361
- * @type {?}
362
- */
363
- DateTimePickerComponent.prototype.activePickerComponent;
364
- /**
365
- * Active picker index
366
- * \@internal
367
- * @type {?}
368
- */
369
- DateTimePickerComponent.prototype.activePickerIndex;
370
- /**
371
- * Occurs when value changes
372
- * @type {?}
373
- */
374
- DateTimePickerComponent.prototype.valueChange;
375
- /**
376
- * @type {?}
377
- * @protected
378
- */
379
- DateTimePickerComponent.prototype._dateApi;
380
- /**
381
- * @type {?}
382
- * @protected
383
- */
384
- DateTimePickerComponent.prototype._changeDetector;
385
- }
386
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9waWNrZXIvY29tcG9uZW50cy9waWNrZXIvcGlja2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsdUJBQXVCLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQWdCLFlBQVksRUFBRSxNQUFNLEVBQUUsaUJBQWlCLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDNUosT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3RDLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFHbEMsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRzlDLE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLG1CQUFtQixDQUFDO0FBQ2pFLE9BQU8sRUFBQywwQkFBMEIsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQzVFLE9BQU8sRUFBQyw0QkFBNEIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ2xGLE9BQU8sRUFBQywyQkFBMkIsRUFBQyxNQUFNLG9DQUFvQyxDQUFDO0FBQy9FLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLCtCQUErQixDQUFDOzs7Ozs7TUFPM0Qsb0JBQW9CLEdBQzFCO0lBQ0ksYUFBYSxFQUFFLEtBQUs7SUFDcEIsdUJBQXVCLEVBQ3ZCO1FBQ0ksS0FBSyxFQUFFLDBCQUEwQjtRQUNqQyxPQUFPLEVBQUUsNEJBQTRCO1FBQ3JDLE1BQU0sRUFBRSwyQkFBMkI7S0FDdEM7SUFDRCxVQUFVLEVBQ1YsRUFDQztDQUNKOzs7OztBQWFELE1BQU0sT0FBTyx1QkFBdUI7Ozs7Ozs7SUF5SWhDLFlBQWdFLGFBQTJELEVBQ25GLFFBQXdCLEVBQzFDLGVBQWtDO1FBRGhCLGFBQVEsR0FBUixRQUFRLENBQWdCO1FB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U0FDVjtnQkFDSSxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1QiwwTUFBb0M7O2dCQUVwQyxVQUFVLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQztnQkFDaEMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07YUFDbEQ7Ozs7NENBMElnQixRQUFRLFlBQUksTUFBTSxTQUFDLDhCQUE4Qjs0Q0FDakQsTUFBTSxTQUFDLFFBQVE7WUF0THlFLGlCQUFpQjs7O3NCQWdIckgsS0FBSztvQkFtQkwsS0FBSzt1QkFnQkwsS0FBSzt1QkFjTCxLQUFLOzBCQWdCTCxNQUFNOzs7Ozs7OztJQTlIUCxnREFBZ0Q7Ozs7OztJQUtoRCxvREFBcUM7Ozs7OztJQUtyQywrQ0FBc0M7Ozs7OztJQUt0Qyx5Q0FBbUQ7Ozs7OztJQUtuRCw2REFBd0U7Ozs7OztJQUt4RSwyQ0FBMkI7Ozs7OztJQUszQiw0Q0FBdUM7Ozs7OztJQUt2Qyw0Q0FBdUM7Ozs7OztJQUt2QywyQ0FBaUU7Ozs7OztJQVFqRSx3REFBMkQ7Ozs7OztJQU0zRCxvREFBcUM7Ozs7O0lBd0VyQyw4Q0FDa0c7Ozs7O0lBSXRGLDJDQUFvRDs7Ozs7SUFDcEQsa0RBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBPcHRpb25hbCwgSW5qZWN0LCBJbnB1dCwgVHlwZSwgT25Jbml0LCBFdmVudEVtaXR0ZXIsIE91dHB1dCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIE9uRGVzdHJveX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7ZXh0ZW5kfSBmcm9tICdAanNjcnB0L2NvbW1vbic7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuXHJcbmltcG9ydCB7RGF0ZVRpbWVWYWx1ZX0gZnJvbSAnLi4vLi4vLi4vbWlzYy9kYXRldGltZS5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge0RBVEVfQVBJfSBmcm9tICcuLi8uLi8uLi9taXNjL3Rva2Vucyc7XHJcbmltcG9ydCB7RGF0ZUFwaX0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMnO1xyXG5pbXBvcnQge0RhdGVUaW1lUGlja2VyLCBEYXRlVGltZVBpY2tlck9wdGlvbnN9IGZyb20gJy4uLy4uL21pc2MvZGF0ZXRpbWVQaWNrZXIuaW50ZXJmYWNlJztcclxuaW1wb3J0IHtEQVRFX1RJTUVfUElDS0VSX0NPTkZJR1VSQVRJT059IGZyb20gJy4uLy4uL21pc2MvdG9rZW5zJztcclxuaW1wb3J0IHtEYXRlVGltZURheVBpY2tlckNvbXBvbmVudH0gZnJvbSAnLi4vZGF5UGlja2VyL2RheVBpY2tlci5jb21wb25lbnQnO1xyXG5pbXBvcnQge0RhdGVUaW1lTW9udGhQaWNrZXJDb21wb25lbnR9IGZyb20gJy4uL21vbnRoUGlja2VyL21vbnRoUGlja2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7RGF0ZVRpbWVZZWFyUGlja2VyQ29tcG9uZW50fSBmcm9tICcuLi95ZWFyUGlja2VyL3llYXJQaWNrZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHtzY2FsZVVwRG93blRyaWdnZXJ9IGZyb20gJy4vcGlja2VyLmNvbXBvbmVudC5hbmltYXRpb25zJztcclxuXHJcbi8vVE9ETyAtIG1lcmdlIG9wdGlvbnNcclxuXHJcbi8qKlxyXG4gKiBEZWZhdWx0IGNvbmZpZ3VyYXRpb24gZm9yIHBpY2tlclxyXG4gKi9cclxuY29uc3QgZGVmYXVsdENvbmZpZ3VyYXRpb246IERhdGVUaW1lUGlja2VyT3B0aW9uczxEYXRlVGltZVBpY2tlcj4gPVxyXG57XHJcbiAgICBkZWZhdWx0UGVyaW9kOiAnZGF5JyxcclxuICAgIHBpY2tlclBlcmlvZHNEZWZpbml0aW9uOlxyXG4gICAge1xyXG4gICAgICAgIFwiZGF5XCI6IERhdGVUaW1lRGF5UGlja2VyQ29tcG9uZW50LFxyXG4gICAgICAgIFwibW9udGhcIjogRGF0ZVRpbWVNb250aFBpY2tlckNvbXBvbmVudCxcclxuICAgICAgICBcInllYXJcIjogRGF0ZVRpbWVZZWFyUGlja2VyQ29tcG9uZW50XHJcbiAgICB9LFxyXG4gICAgY3NzQ2xhc3NlczpcclxuICAgIHtcclxuICAgIH1cclxufTtcclxuXHJcbi8qKlxyXG4gKiBDb21wb25lbnQgdXNlZCBmb3IgZGlzcGxheWluZyBkYXRlIHRpbWUgcGlja2VyXHJcbiAqL1xyXG5AQ29tcG9uZW50KFxyXG57XHJcbiAgICBzZWxlY3RvcjogJ2RhdGUtdGltZS1waWNrZXInLFxyXG4gICAgdGVtcGxhdGVVcmw6ICdwaWNrZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgLy8gc3R5bGVVcmxzOiBbJ3BpY2tlci5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgYW5pbWF0aW9uczogW3NjYWxlVXBEb3duVHJpZ2dlcl0sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGF0ZVRpbWVQaWNrZXJDb21wb25lbnQ8VERhdGUgPSBhbnk+IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3lcclxue1xyXG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHByb3RlY3RlZCBmaWVsZHMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogSW5zdGFuY2Ugb2YgYWN0aXZlIGRhdGUgdGltZSBwaWNrZXJcclxuICAgICAqL1xyXG4gICAgcHJvdGVjdGVkIF9hY3RpdmVQaWNrZXI/OiBEYXRlVGltZVBpY2tlcjxURGF0ZT47XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBOYW1lLCBpZCBvZiBkaXNwbGF5ZWQgcGlja2VyXHJcbiAgICAgKi9cclxuICAgIHByb3RlY3RlZCBfYWN0aXZlUGlja2VyTmFtZSE6IHN0cmluZztcclxuXHJcbiAgICAvKipcclxuICAgICAqIEFycmF5IG9mIGF2YWlsYWJsZSBwaWNrZXIgbmFtZXNcclxuICAgICAqL1xyXG4gICAgcHJvdGVjdGVkIF9waWNrZXJOYW1lczogc3RyaW5nW10gPSBbXTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEN1cnJlbnQgc2VsZWN0ZWQgdmFsdWVcclxuICAgICAqL1xyXG4gICAgcHJvdGVjdGVkIF92YWx1ZTogRGF0ZVRpbWVWYWx1ZTxURGF0ZT58bnVsbCA9IG51bGw7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBBbGwgc3Vic2NyaXB0aW9ucyBmb3IgYWN0aXZlIHBpY2tlclxyXG4gICAgICovXHJcbiAgICBwcm90ZWN0ZWQgX2FjdGl2ZVBpY2tlclN1YnNjcmlwdGlvbnM6IFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuXHJcbiAgICAvKipcclxuICAgICAqIERhdGUgdGhhdCBzaG91bGQgYmUgZGlzcGxheWVkIGluIHBpY2tlciwgdXNlZCB3aGVuIG1vdmluZyB1cCBvciBkb3duIGluIHBlcmlvZHNcclxuICAgICAqL1xyXG4gICAgcHJvdGVjdGVkIF9kaXNwbGF5PzogVERhdGU7XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBNaW5pbWFsIHBvc3NpYmxlIHZhbHVlIHRoYXQgY2FuIGJlIHBpY2tlZFxyXG4gICAgICovXHJcbiAgICBwcm90ZWN0ZWQgX21pblZhbHVlOiBURGF0ZXxudWxsID0gbnVsbDtcclxuXHJcbiAgICAvKipcclxuICAgICAqIE1heGltYWwgcG9zc2libGUgdmFsdWUgdGhhdCBjYW4gYmUgcGlja2VkXHJcbiAgICAgKi9cclxuICAgIHByb3RlY3RlZCBfbWF4VmFsdWU6IFREYXRlfG51bGwgPSBudWxsO1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ3VycmVudCBvcHRpb25zIHVzZWQgYnkgcGlja2VyXHJcbiAgICAgKi9cclxuICAgIHByb3RlY3RlZCBfb3B0aW9uczogRGF0ZVRpbWVQaWNrZXJPcHRpb25zPERhdGVUaW1lUGlja2VyPFREYXRlPj47XHJcblxyXG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHB1YmxpYyBwcm9wZXJ0aWVzIC0gdGVtcGxhdGUgYmluZGluZ3MgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ3VycmVudGx5IGFjdGl2ZSBkYXRlIHRpbWUgcGlja2VyIGNvbXBvbmVudCB0eXBlXHJcbiAgICAgKiBAaW50ZXJuYWxcclxuICAgICAqL1xyXG4gICAgcHVibGljIGFjdGl2ZVBpY2tlckNvbXBvbmVudD86IFR5cGU8RGF0ZVRpbWVQaWNrZXI8VERhdGU+PjtcclxuXHJcbiAgICAvKipcclxuICAgICAqIEFjdGl2ZSBwaWNrZXIgaW5kZXhcclxuICAgICAqIEBpbnRlcm5hbFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgYWN0aXZlUGlja2VySW5kZXg6IG51bWJlciA9IDA7XHJcblxyXG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHB1YmxpYyBwcm9wZXJ0aWVzIC0gaW5wdXRzICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcclxuXHJcbiAgICAvKipcclxuICAgICAqIEN1cnJlbnQgb3B0aW9ucyB1c2VkIGJ5IHBpY2tlclxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGdldCBvcHRpb25zKCk6IERhdGVUaW1lUGlja2VyT3B0aW9uczxEYXRlVGltZVBpY2tlcjxURGF0ZT4+XHJcbiAgICB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX29wdGlvbnM7XHJcbiAgICB9XHJcbiAgICBwdWJsaWMgc2V0IG9wdGlvbnModmFsdWU6IERhdGVUaW1lUGlja2VyT3B0aW9uczxEYXRlVGltZVBpY2tlcjxURGF0ZT4+KVxyXG4gICAge1xyXG4gICAgICAgIHRoaXMuX29wdGlvbnMgPSBleHRlbmQodHJ1ZSwgdGhpcy5fb3B0aW9ucywgdmFsdWUpO1xyXG5cclxuICAgICAgICAvLyB3aXRob3V0IGRlZXAtY29weSBmb3IgdGhpcyBhdHRyaWJ1dGVcclxuICAgICAgICBpZiAodmFsdWU/LnBpY2tlclBlcmlvZHNEZWZpbml0aW9uKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdGhpcy5fb3B0aW9ucy5waWNrZXJQZXJpb2RzRGVmaW5pdGlvbiA9IHZhbHVlLnBpY2tlclBlcmlvZHNEZWZpbml0aW9uXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ3VycmVudCBzZWxlY3RlZCB2YWx1ZVxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGdldCB2YWx1ZSgpOiBEYXRlVGltZVZhbHVlPFREYXRlPnxudWxsXHJcbiAgICB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xyXG4gICAgfVxyXG4gICAgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogRGF0ZVRpbWVWYWx1ZTxURGF0ZT58bnVsbClcclxuICAgIHtcclxuICAgICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xyXG5cclxuICAgICAgICB0aGlzLl9hY3RpdmVQaWNrZXI/LnNldFZhbHVlKHZhbHVlKTtcclxuICAgICAgICB0aGlzLl9hY3RpdmVQaWNrZXI/LmludmFsaWRhdGVWaXN1YWxzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBHZXRzIG9yIHNldHMgbWluaW1hbCBwb3NzaWJsZSB2YWx1ZSBmb3IgcGlja2VyLCB0aGF0IGNhbiBiZSBwaWNrZWRcclxuICAgICAqL1xyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBnZXQgbWluVmFsdWUoKTogVERhdGV8bnVsbFxyXG4gICAge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9taW5WYWx1ZTtcclxuICAgIH1cclxuICAgIHB1YmxpYyBzZXQgbWluVmFsdWUodmFsdWU6IFREYXRlfG51bGwpXHJcbiAgICB7XHJcbiAgICAgICAgdGhpcy5fbWluVmFsdWUgPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLl9hY3RpdmVQaWNrZXI/LnNldE1pblZhbHVlKHRoaXMuX21pblZhbHVlKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIEdldHMgb3Igc2V0cyBtYXhpbWFsIHBvc3NpYmxlIHZhbHVlIGZvciBwaWNrZXIsIHRoYXQgY2FuIGJlIHBpY2tlZFxyXG4gICAgICovXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGdldCBtYXhWYWx1ZSgpOiBURGF0ZXxudWxsXHJcbiAgICB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX21heFZhbHVlO1xyXG4gICAgfVxyXG4gICAgcHVibGljIHNldCBtYXhWYWx1ZSh2YWx1ZTogVERhdGV8bnVsbClcclxuICAgIHtcclxuICAgICAgICB0aGlzLl9tYXhWYWx1ZSA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuX2FjdGl2ZVBpY2tlcj8uc2V0TWF4VmFsdWUodGhpcy5fbWF4VmFsdWUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBwdWJsaWMgcHJvcGVydGllcyAtIG91dHB1dHMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogT2NjdXJzIHdoZW4gdmFsdWUgY2hhbmdlc1xyXG4gICAgICovXHJcbiAgICBAT3V0cHV0KClcclxuICAgIHB1YmxpYyB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPERhdGVUaW1lVmFsdWU8VERhdGU+PiA9IG5ldyBFdmVudEVtaXR0ZXI8RGF0ZVRpbWVWYWx1ZTxURGF0ZT4+KCk7XHJcblxyXG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIGNvbnN0cnVjdG9yICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcclxuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoREFURV9USU1FX1BJQ0tFUl9DT05GSUdVUkFUSU9OKSBjb25maWd1cmF0aW9uOiBEYXRlVGltZVBpY2tlck9wdGlvbnM8RGF0ZVRpbWVQaWNrZXI8VERhdGU+PixcclxuICAgICAgICAgICAgICAgIEBJbmplY3QoREFURV9BUEkpIHByb3RlY3RlZCBfZGF0ZUFwaTogRGF0ZUFwaTxURGF0ZT4sXHJcbiAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2NoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZilcclxuICAgIHtcclxuICAgICAgICB0aGlzLl9vcHRpb25zID0gZXh0ZW5kKHRydWUsIHt9LCBkZWZhdWx0Q29uZmlndXJhdGlvbiwgY29uZmlndXJhdGlvbik7XHJcbiAgICAgICAgLy8gd2l0aG91dCBkZWVwLWNvcHkgZm9yIHRoaXMgYXR0cmlidXRlXHJcbiAgICAgICAgaWYgKGNvbmZpZ3VyYXRpb24/LnBpY2tlclBlcmlvZHNEZWZpbml0aW9uKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdGhpcy5fb3B0aW9ucy5waWNrZXJQZXJpb2RzRGVmaW5pdGlvbiA9IGNvbmZpZ3VyYXRpb24ucGlja2VyUGVyaW9kc0RlZmluaXRpb25cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLy8jIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIHB1YmxpYyBtZXRob2RzIC0gaW1wbGVtZW50YXRpb24gb2YgT25Jbml0ICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcclxuXHJcbiAgICAvKipcclxuICAgICAqIEluaXRpYWxpemUgY29tcG9uZW50XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBuZ09uSW5pdCgpXHJcbiAgICB7XHJcbiAgICAgICAgaWYgKHRoaXMuX29wdGlvbnMucGlja2VyUGVyaW9kc09yZGVyKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodGhpcy5fb3B0aW9ucy5waWNrZXJQZXJpb2RzT3JkZXIpKVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9waWNrZXJOYW1lcyA9IHRoaXMuX29wdGlvbnMucGlja2VyUGVyaW9kc09yZGVyXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9waWNrZXJOYW1lcyA9IHRoaXMuX29wdGlvbnMucGlja2VyUGVyaW9kc09yZGVyLnNwbGl0KCcsJylcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1hcCh4ID0+IHgudHJpbSgpKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKHggPT4geClcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5fcGlja2VyTmFtZXMgJiYgdGhpcy5fcGlja2VyTmFtZXMubGVuZ3RoID4gMClcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHRoaXMuX3BpY2tlck5hbWVzLmZvckVhY2goeCA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZighdGhpcy5fb3B0aW9ucy5waWNrZXJQZXJpb2RzRGVmaW5pdGlvbiFbeCFdKVxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVGhlcmUgaXMgbm8gcGVyaW9kICcke3h9JyBpbiBwaWNrZXIgb3B0aW9uc2ApO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgIH1cclxuICAgICAgICBlbHNlXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB0aGlzLl9waWNrZXJOYW1lcyA9IE9iamVjdC5rZXlzKHRoaXMuX29wdGlvbnMucGlja2VyUGVyaW9kc0RlZmluaXRpb24hKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmKHRoaXMuX3BpY2tlck5hbWVzLmZpbmRJbmRleCh4ID0+IHggPT0gdGhpcy5fb3B0aW9ucy5kZWZhdWx0UGVyaW9kKSA8IDApXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYFRoZXJlIGlzIG5vIHBlcmlvZCAnJHt0aGlzLl9vcHRpb25zLmRlZmF1bHRQZXJpb2R9JyBpbiBwaWNrZXIgb3B0aW9uc2ApO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5hY3RpdmVQaWNrZXJDb21wb25lbnQgPSB0aGlzLl9vcHRpb25zLnBpY2tlclBlcmlvZHNEZWZpbml0aW9uIVt0aGlzLl9vcHRpb25zLmRlZmF1bHRQZXJpb2QhXTtcclxuICAgICAgICB0aGlzLl9hY3RpdmVQaWNrZXJOYW1lID0gdGhpcy5fb3B0aW9ucy5kZWZhdWx0UGVyaW9kITtcclxuICAgICAgICB0aGlzLmFjdGl2ZVBpY2tlckluZGV4ID0gdGhpcy5fcGlja2VyTmFtZXMuaW5kZXhPZih0aGlzLl9hY3RpdmVQaWNrZXJOYW1lKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgcHVibGljIG1ldGhvZHMgLSBpbXBsZW1lbnRhdGlvbiBvZiBPbkRlc3Ryb3kgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ2FsbGVkIHdoZW4gY29tcG9uZW50IGlzIGRlc3Ryb3llZFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3koKVxyXG4gICAge1xyXG4gICAgICAgIHRoaXMuX2Rpc3BsYXkgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgdGhpcy5fYWN0aXZlUGlja2VyU3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyBwdWJsaWMgbWV0aG9kcyAtIHRlbXBsYXRlIGJpbmRpbmdzICMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyNcclxuXHJcbiAgICAvKipcclxuICAgICAqIEhhbmRsZXMgY3JlYXRlZCBvciBkZXN0cm95ZWQgZGF0ZSB0aW1lIHBpY2tlciBpbnN0YW5jZVxyXG4gICAgICogQHBhcmFtIHBpY2tlciAtIEluc3RhbmNlIG9mIHBpY2tlciBvciBudWxsXHJcbiAgICAgKiBAaW50ZXJuYWxcclxuICAgICAqL1xyXG4gICAgcHVibGljIHBpY2tlckNyZWF0ZWQocGlja2VyOiBEYXRlVGltZVBpY2tlcjxURGF0ZT4pXHJcbiAgICB7XHJcbiAgICAgICAgaWYocGlja2VyID09IHRoaXMuX2FjdGl2ZVBpY2tlcilcclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuX2FjdGl2ZVBpY2tlciA9IHBpY2tlcjtcclxuXHJcbiAgICAgICAgdGhpcy5fYWN0aXZlUGlja2VyU3Vic2NyaXB0aW9ucy51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIHRoaXMuX2FjdGl2ZVBpY2tlclN1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gICAgICAgIGlmKCF0aGlzLl9hY3RpdmVQaWNrZXIpXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICB0aGlzLl9hY3RpdmVQaWNrZXJTdWJzY3JpcHRpb25zLmFkZChwaWNrZXIudmFsdWVDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+XHJcbiAgICAgICAge1xyXG4gICAgICAgICAgICB0aGlzLl92YWx1ZSA9IHBpY2tlci52YWx1ZTtcclxuICAgICAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMuX3ZhbHVlISk7XHJcbiAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICB0aGlzLl9hY3RpdmVQaWNrZXJTdWJzY3JpcHRpb25zLmFkZChwaWNrZXIuc2NhbGVVcC5zdWJzY3JpYmUoZGlzcGxheSA9PlxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdGhpcy5fZGlzcGxheSA9IGRpc3BsYXk7XHJcbiAgICAgICAgICAgIGxldCBpbmRleCA9IHRoaXMuX3BpY2tlck5hbWVzLmluZGV4T2YodGhpcy5fYWN0aXZlUGlja2VyTmFtZSkgKyAxO1xyXG4gICAgICAgICAgICB0aGlzLl9hY3RpdmVQaWNrZXJOYW1lID0gdGhpcy5fcGlja2VyTmFtZXNbaW5kZXhdO1xyXG4gICAgICAgICAgICB0aGlzLmFjdGl2ZVBpY2tlckluZGV4ID0gdGhpcy5fcGlja2VyTmFtZXMuaW5kZXhPZih0aGlzLl9hY3RpdmVQaWNrZXJOYW1lKTtcclxuICAgICAgICAgICAgdGhpcy5hY3RpdmVQaWNrZXJDb21wb25lbnQgPSB0aGlzLl9vcHRpb25zLnBpY2tlclBlcmlvZHNEZWZpbml0aW9uIVt0aGlzLl9hY3RpdmVQaWNrZXJOYW1lXTtcclxuICAgICAgICB9KSk7XHJcblxyXG4gICAgICAgIHRoaXMuX2FjdGl2ZVBpY2tlclN1YnNjcmlwdGlvbnMuYWRkKHBpY2tlci5zY2FsZURvd24uc3Vic2NyaWJlKGRpc3BsYXkgPT5cclxuICAgICAgICB7XHJcbiAgICAgICAgICAgIHRoaXMuX2Rpc3BsYXkgPSBkaXNwbGF5O1xyXG4gICAgICAgICAgICBsZXQgaW5kZXggPSB0aGlzLl9waWNrZXJOYW1lcy5pbmRleE9mKHRoaXMuX2FjdGl2ZVBpY2tlck5hbWUpIC0gMTtcclxuICAgICAgICAgICAgdGhpcy5fYWN0aXZlUGlja2VyTmFtZSA9IHRoaXMuX3BpY2tlck5hbWVzW2luZGV4XTtcclxuICAgICAgICAgICAgdGhpcy5hY3RpdmVQaWNrZXJJbmRleCA9IHRoaXMuX3BpY2tlck5hbWVzLmluZGV4T2YodGhpcy5fYWN0aXZlUGlja2VyTmFtZSk7XHJcbiAgICAgICAgICAgIHRoaXMuYWN0aXZlUGlja2VyQ29tcG9uZW50ID0gdGhpcy5fb3B0aW9ucy5waWNrZXJQZXJpb2RzRGVmaW5pdGlvbiFbdGhpcy5fYWN0aXZlUGlja2VyTmFtZV07XHJcbiAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICBwaWNrZXIuc2V0Q2FuR29Eb3duKHRoaXMuX3BpY2tlck5hbWVzLmluZGV4T2YodGhpcy5fYWN0aXZlUGlja2VyTmFtZSkgPiAwKTtcclxuICAgICAgICBwaWNrZXIuc2V0Q2FuR29VcCh0aGlzLl9waWNrZXJOYW1lcy5pbmRleE9mKHRoaXMuX2FjdGl2ZVBpY2tlck5hbWUpIDwgdGhpcy5fcGlja2VyTmFtZXMubGVuZ3RoIC0gMSk7XHJcblxyXG4gICAgICAgIHRoaXMuX3NldFBpY2tlckNzc0NsYXNzZXMoKTtcclxuICAgICAgICBwaWNrZXIuc2V0VmFsdWUodGhpcy5fdmFsdWUpO1xyXG4gICAgICAgIHBpY2tlci5zZXRNaW5WYWx1ZSh0aGlzLl9taW5WYWx1ZSk7XHJcbiAgICAgICAgcGlja2VyLnNldE1heFZhbHVlKHRoaXMuX21heFZhbHVlKTtcclxuICAgICAgICBwaWNrZXIuZGlzcGxheSh0aGlzLl9kaXNwbGF5ID8gdGhpcy5fZGF0ZUFwaS5nZXRWYWx1ZSh0aGlzLl9kaXNwbGF5KSA6IHRoaXMuX2RhdGVBcGkuZ2V0VmFsdWUodGhpcy5fdmFsdWU/LmZyb20gPz8gdGhpcy5fZGF0ZUFwaS5ub3coKS52YWx1ZSkpO1xyXG5cclxuICAgICAgICBwaWNrZXIuaW52YWxpZGF0ZVZpc3VhbHMoKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMgcHJvdGVjdGVkIG1ldGhvZHMgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjI1xyXG5cclxuICAgIC8qKlxyXG4gICAgICogU2V0cyBwaWNrZXIgY3NzIGNsYXNzZXNcclxuICAgICAqL1xyXG4gICAgcHJvdGVjdGVkIF9zZXRQaWNrZXJDc3NDbGFzc2VzKClcclxuICAgIHtcclxuICAgICAgICBpZighdGhpcy5fYWN0aXZlUGlja2VyKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy9zZXRzIHNoYXJlZCBjc3NcclxuICAgICAgICB0aGlzLl9hY3RpdmVQaWNrZXIuc2V0Q3NzQ2xhc3Nlcyh0aGlzLl9vcHRpb25zPy5jc3NDbGFzc2VzPy5waWNrZXJTaGFyZWQgPz8ge30pO1xyXG5cclxuICAgICAgICBpZih0aGlzLl9vcHRpb25zPy5jc3NDbGFzc2VzPy5waWNrZXJDdXN0b20gJiYgdGhpcy5fb3B0aW9ucz8uY3NzQ2xhc3Nlcz8ucGlja2VyQ3VzdG9tW3RoaXMuX2FjdGl2ZVBpY2tlck5hbWVdKVxyXG4gICAgICAgIHtcclxuICAgICAgICAgICAgdGhpcy5fYWN0aXZlUGlja2VyLnNldENzc0NsYXNzZXModGhpcy5fb3B0aW9ucz8uY3NzQ2xhc3Nlcz8ucGlja2VyQ3VzdG9tW3RoaXMuX2FjdGl2ZVBpY2tlck5hbWVdKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19