@sd-angular/core 0.0.1008 → 0.0.1012

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 (305) hide show
  1. package/api/sd-angular-core-api.metadata.json +1 -1
  2. package/api/src/lib/token.service.d.ts +1 -2
  3. package/autocomplete/sd-angular-core-autocomplete.metadata.json +1 -1
  4. package/autocomplete/src/lib/autocomplete.component.d.ts +6 -5
  5. package/autocomplete/src/lib/autocomplete.module.d.ts +0 -1
  6. package/bundles/sd-angular-core-api.umd.js.map +1 -1
  7. package/bundles/sd-angular-core-api.umd.min.js.map +1 -1
  8. package/bundles/sd-angular-core-autocomplete.umd.js +96 -98
  9. package/bundles/sd-angular-core-autocomplete.umd.js.map +1 -1
  10. package/bundles/sd-angular-core-autocomplete.umd.min.js +2 -2
  11. package/bundles/sd-angular-core-autocomplete.umd.min.js.map +1 -1
  12. package/bundles/sd-angular-core-cache.umd.js +4 -4
  13. package/bundles/sd-angular-core-cache.umd.js.map +1 -1
  14. package/bundles/sd-angular-core-cache.umd.min.js +2 -2
  15. package/bundles/sd-angular-core-cache.umd.min.js.map +1 -1
  16. package/bundles/sd-angular-core-chart.umd.js +4 -8
  17. package/bundles/sd-angular-core-chart.umd.js.map +1 -1
  18. package/bundles/sd-angular-core-chart.umd.min.js +1 -1
  19. package/bundles/sd-angular-core-chart.umd.min.js.map +1 -1
  20. package/bundles/sd-angular-core-comment.umd.js +2 -1
  21. package/bundles/sd-angular-core-comment.umd.js.map +1 -1
  22. package/bundles/sd-angular-core-comment.umd.min.js +1 -1
  23. package/bundles/sd-angular-core-comment.umd.min.js.map +1 -1
  24. package/bundles/sd-angular-core-common.umd.js +376 -40
  25. package/bundles/sd-angular-core-common.umd.js.map +1 -1
  26. package/bundles/sd-angular-core-common.umd.min.js +2 -3
  27. package/bundles/sd-angular-core-common.umd.min.js.map +1 -1
  28. package/bundles/sd-angular-core-date-range.umd.js +4 -4
  29. package/bundles/sd-angular-core-date-range.umd.js.map +1 -1
  30. package/bundles/sd-angular-core-date-range.umd.min.js +2 -2
  31. package/bundles/sd-angular-core-date-range.umd.min.js.map +1 -1
  32. package/bundles/sd-angular-core-date-time.umd.js +57 -35
  33. package/bundles/sd-angular-core-date-time.umd.js.map +1 -1
  34. package/bundles/sd-angular-core-date-time.umd.min.js +2 -2
  35. package/bundles/sd-angular-core-date-time.umd.min.js.map +1 -1
  36. package/bundles/sd-angular-core-export.umd.js +4 -4
  37. package/bundles/sd-angular-core-export.umd.js.map +1 -1
  38. package/bundles/sd-angular-core-export.umd.min.js +1 -1
  39. package/bundles/sd-angular-core-export.umd.min.js.map +1 -1
  40. package/bundles/sd-angular-core-form.umd.js +4 -4
  41. package/bundles/sd-angular-core-form.umd.min.js +1 -1
  42. package/bundles/sd-angular-core-form.umd.min.js.map +1 -1
  43. package/bundles/sd-angular-core-grid-material.umd.js +32 -70
  44. package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
  45. package/bundles/sd-angular-core-grid-material.umd.min.js +2 -2
  46. package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
  47. package/bundles/sd-angular-core-grid.umd.js +5 -4
  48. package/bundles/sd-angular-core-grid.umd.js.map +1 -1
  49. package/bundles/sd-angular-core-grid.umd.min.js +1 -1
  50. package/bundles/sd-angular-core-grid.umd.min.js.map +1 -1
  51. package/bundles/sd-angular-core-input-upload-file.umd.js +4 -4
  52. package/bundles/sd-angular-core-input-upload-file.umd.js.map +1 -1
  53. package/bundles/sd-angular-core-input-upload-file.umd.min.js +2 -2
  54. package/bundles/sd-angular-core-input-upload-file.umd.min.js.map +1 -1
  55. package/bundles/sd-angular-core-input.umd.js +11 -13
  56. package/bundles/sd-angular-core-input.umd.js.map +1 -1
  57. package/bundles/sd-angular-core-input.umd.min.js +2 -2
  58. package/bundles/sd-angular-core-input.umd.min.js.map +1 -1
  59. package/bundles/sd-angular-core-modal.umd.js +4 -4
  60. package/bundles/sd-angular-core-modal.umd.js.map +1 -1
  61. package/bundles/sd-angular-core-modal.umd.min.js +1 -1
  62. package/bundles/sd-angular-core-modal.umd.min.js.map +1 -1
  63. package/bundles/sd-angular-core-radio.umd.js +4 -8
  64. package/bundles/sd-angular-core-radio.umd.js.map +1 -1
  65. package/bundles/sd-angular-core-radio.umd.min.js +2 -2
  66. package/bundles/sd-angular-core-radio.umd.min.js.map +1 -1
  67. package/bundles/sd-angular-core-select-editor.umd.js +4 -4
  68. package/bundles/sd-angular-core-select-editor.umd.js.map +1 -1
  69. package/bundles/sd-angular-core-select-editor.umd.min.js +2 -2
  70. package/bundles/sd-angular-core-select-editor.umd.min.js.map +1 -1
  71. package/bundles/sd-angular-core-select.umd.js +25 -47
  72. package/bundles/sd-angular-core-select.umd.js.map +1 -1
  73. package/bundles/sd-angular-core-select.umd.min.js +2 -2
  74. package/bundles/sd-angular-core-select.umd.min.js.map +1 -1
  75. package/bundles/sd-angular-core-service.umd.js +8 -202
  76. package/bundles/sd-angular-core-service.umd.js.map +1 -1
  77. package/bundles/sd-angular-core-service.umd.min.js +1 -1
  78. package/bundles/sd-angular-core-service.umd.min.js.map +1 -1
  79. package/bundles/sd-angular-core-side-drawer.umd.js +4 -4
  80. package/bundles/sd-angular-core-side-drawer.umd.js.map +1 -1
  81. package/bundles/sd-angular-core-side-drawer.umd.min.js +2 -2
  82. package/bundles/sd-angular-core-side-drawer.umd.min.js.map +1 -1
  83. package/bundles/sd-angular-core-time.umd.js +4 -4
  84. package/bundles/sd-angular-core-time.umd.js.map +1 -1
  85. package/bundles/sd-angular-core-time.umd.min.js +2 -2
  86. package/bundles/sd-angular-core-time.umd.min.js.map +1 -1
  87. package/bundles/sd-angular-core-upload-excel.umd.js +4 -4
  88. package/bundles/sd-angular-core-upload-excel.umd.js.map +1 -1
  89. package/bundles/sd-angular-core-upload-excel.umd.min.js +1 -1
  90. package/bundles/sd-angular-core-upload-excel.umd.min.js.map +1 -1
  91. package/bundles/sd-angular-core-upload-file.umd.js +4 -4
  92. package/bundles/sd-angular-core-upload-file.umd.js.map +1 -1
  93. package/bundles/sd-angular-core-upload-file.umd.min.js +2 -2
  94. package/bundles/sd-angular-core-upload-file.umd.min.js.map +1 -1
  95. package/bundles/sd-angular-core-utility.umd.js +4 -4
  96. package/bundles/sd-angular-core-utility.umd.js.map +1 -1
  97. package/bundles/sd-angular-core-utility.umd.min.js +1 -1
  98. package/bundles/sd-angular-core-utility.umd.min.js.map +1 -1
  99. package/bundles/sd-angular-core.umd.js +4 -8
  100. package/bundles/sd-angular-core.umd.js.map +1 -1
  101. package/bundles/sd-angular-core.umd.min.js +1 -1
  102. package/bundles/sd-angular-core.umd.min.js.map +1 -1
  103. package/cache/sd-angular-core-cache.metadata.json +1 -1
  104. package/cache/src/lib/cache.service.d.ts +0 -1
  105. package/cache/src/public-api.d.ts +1 -0
  106. package/chart/sd-angular-core-chart.metadata.json +1 -1
  107. package/chart/src/lib/chart.component.d.ts +0 -1
  108. package/chart/src/public-api.d.ts +1 -0
  109. package/common/sd-angular-core-common.metadata.json +1 -1
  110. package/{grid-material → common}/src/lib/directives/sd-let.directive.d.ts +0 -0
  111. package/common/src/lib/typings/array.extension.d.ts +20 -0
  112. package/{service → common}/src/lib/typings/date.extension.d.ts +0 -0
  113. package/{service → common}/src/lib/typings/number.extension.d.ts +0 -0
  114. package/{typing/src/lib/typing → common/src/lib/typings}/string.extension.d.ts +2 -0
  115. package/common/src/public-api.d.ts +5 -0
  116. package/date-range/index.d.ts +0 -1
  117. package/date-range/sd-angular-core-date-range.metadata.json +1 -1
  118. package/date-range/src/lib/date-range.component.d.ts +0 -1
  119. package/date-range/src/lib/date-range.module.d.ts +0 -1
  120. package/date-range/src/public-api.d.ts +1 -1
  121. package/date-time/sd-angular-core-date-time.metadata.json +1 -1
  122. package/date-time/src/lib/date-time.component.d.ts +14 -7
  123. package/date-time/src/lib/date-time.module.d.ts +0 -1
  124. package/date-time/src/public-api.d.ts +0 -1
  125. package/esm2015/api/src/lib/token.service.js +1 -1
  126. package/esm2015/autocomplete/src/lib/autocomplete.component.js +86 -73
  127. package/esm2015/autocomplete/src/lib/autocomplete.module.js +1 -2
  128. package/esm2015/cache/src/lib/cache.service.js +1 -2
  129. package/esm2015/cache/src/public-api.js +2 -1
  130. package/esm2015/chart/src/lib/chart.component.js +1 -2
  131. package/esm2015/chart/src/public-api.js +2 -4
  132. package/esm2015/comment/src/lib/comment.component.js +3 -2
  133. package/esm2015/common/src/lib/common.module.js +7 -3
  134. package/esm2015/common/src/lib/directives/sd-let.directive.js +29 -0
  135. package/esm2015/common/src/lib/typings/array.extension.js +65 -0
  136. package/esm2015/common/src/lib/typings/date.extension.js +143 -0
  137. package/esm2015/common/src/lib/typings/number.extension.js +33 -0
  138. package/esm2015/common/src/lib/typings/string.extension.js +42 -0
  139. package/esm2015/common/src/public-api.js +6 -1
  140. package/esm2015/date-range/index.js +1 -2
  141. package/esm2015/date-range/src/lib/date-range.component.js +1 -2
  142. package/esm2015/date-range/src/lib/date-range.module.js +1 -2
  143. package/esm2015/date-range/src/public-api.js +2 -2
  144. package/esm2015/date-time/src/lib/date-time.component.js +55 -35
  145. package/esm2015/date-time/src/lib/date-time.module.js +5 -3
  146. package/esm2015/date-time/src/public-api.js +1 -2
  147. package/esm2015/export/src/lib/export.service.js +1 -2
  148. package/esm2015/form/src/public-api.js +2 -1
  149. package/esm2015/grid/src/lib/components/grid-date-picker-control/grid-date-picker-control.component.js +1 -2
  150. package/esm2015/grid/src/lib/grid.module.js +1 -2
  151. package/esm2015/grid/src/lib/models/handler-dotnet.js +1 -2
  152. package/esm2015/grid-material/sd-angular-core-grid-material.js +27 -28
  153. package/esm2015/grid-material/src/lib/grid-material.module.js +4 -5
  154. package/esm2015/grid-material/src/public-api.js +2 -4
  155. package/esm2015/input/src/lib/input.component.js +5 -4
  156. package/esm2015/input-upload-file/src/lib/input-upload-file.component.js +2 -2
  157. package/esm2015/input-upload-file/src/lib/input-upload-file.module.js +1 -2
  158. package/esm2015/lib/controls/date-picker-control/date-picker-control.component.js +1 -2
  159. package/esm2015/lib/pipes/sd-date.pipe.js +1 -2
  160. package/esm2015/modal/src/lib/modal.module.js +1 -2
  161. package/esm2015/public-api.js +11 -14
  162. package/esm2015/radio/src/lib/radio.module.js +1 -2
  163. package/esm2015/radio/src/public-api.js +2 -4
  164. package/esm2015/select/src/lib/select.component.js +23 -45
  165. package/esm2015/select/src/lib/select.module.js +1 -2
  166. package/esm2015/select-editor/src/lib/select-editor.module.js +1 -2
  167. package/esm2015/service/src/lib/service.module.js +6 -4
  168. package/esm2015/service/src/public-api.js +2 -2
  169. package/esm2015/side-drawer/src/lib/side-drawer.module.js +1 -2
  170. package/esm2015/time/src/lib/time.component.js +1 -2
  171. package/esm2015/time/src/public-api.js +2 -1
  172. package/esm2015/upload-excel/src/lib/upload-excel.component.js +1 -2
  173. package/esm2015/upload-excel/src/lib/upload-excel.module.js +1 -2
  174. package/esm2015/upload-file/src/lib/upload-file.module.js +1 -2
  175. package/esm2015/utility/src/lib/pipes/currency.pipe.js +1 -2
  176. package/esm2015/utility/src/lib/pipes/time-different.pipe.js +1 -2
  177. package/esm2015/utility/src/lib/utility.service.js +1 -2
  178. package/esm2015/utility/src/public-api.js +2 -1
  179. package/export/sd-angular-core-export.metadata.json +1 -1
  180. package/export/src/lib/export.service.d.ts +0 -1
  181. package/fesm2015/sd-angular-core-api.js.map +1 -1
  182. package/fesm2015/sd-angular-core-autocomplete.js +85 -72
  183. package/fesm2015/sd-angular-core-autocomplete.js.map +1 -1
  184. package/fesm2015/sd-angular-core-cache.js +1 -1
  185. package/fesm2015/sd-angular-core-cache.js.map +1 -1
  186. package/fesm2015/sd-angular-core-chart.js +1 -5
  187. package/fesm2015/sd-angular-core-chart.js.map +1 -1
  188. package/fesm2015/sd-angular-core-comment.js +2 -1
  189. package/fesm2015/sd-angular-core-comment.js.map +1 -1
  190. package/fesm2015/sd-angular-core-common.js +315 -5
  191. package/fesm2015/sd-angular-core-common.js.map +1 -1
  192. package/fesm2015/sd-angular-core-date-range.js +1 -1
  193. package/fesm2015/sd-angular-core-date-range.js.map +1 -1
  194. package/fesm2015/sd-angular-core-date-time.js +57 -36
  195. package/fesm2015/sd-angular-core-date-time.js.map +1 -1
  196. package/fesm2015/sd-angular-core-export.js +0 -1
  197. package/fesm2015/sd-angular-core-export.js.map +1 -1
  198. package/fesm2015/sd-angular-core-form.js +1 -0
  199. package/fesm2015/sd-angular-core-form.js.map +1 -1
  200. package/fesm2015/sd-angular-core-grid-material.js +5 -37
  201. package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
  202. package/fesm2015/sd-angular-core-grid.js +1 -1
  203. package/fesm2015/sd-angular-core-grid.js.map +1 -1
  204. package/fesm2015/sd-angular-core-input-upload-file.js +0 -1
  205. package/fesm2015/sd-angular-core-input-upload-file.js.map +1 -1
  206. package/fesm2015/sd-angular-core-input.js +4 -3
  207. package/fesm2015/sd-angular-core-input.js.map +1 -1
  208. package/fesm2015/sd-angular-core-modal.js +0 -1
  209. package/fesm2015/sd-angular-core-modal.js.map +1 -1
  210. package/fesm2015/sd-angular-core-radio.js +1 -5
  211. package/fesm2015/sd-angular-core-radio.js.map +1 -1
  212. package/fesm2015/sd-angular-core-select-editor.js +0 -1
  213. package/fesm2015/sd-angular-core-select-editor.js.map +1 -1
  214. package/fesm2015/sd-angular-core-select.js +22 -45
  215. package/fesm2015/sd-angular-core-select.js.map +1 -1
  216. package/fesm2015/sd-angular-core-service.js +5 -198
  217. package/fesm2015/sd-angular-core-service.js.map +1 -1
  218. package/fesm2015/sd-angular-core-side-drawer.js +0 -1
  219. package/fesm2015/sd-angular-core-side-drawer.js.map +1 -1
  220. package/fesm2015/sd-angular-core-time.js +1 -1
  221. package/fesm2015/sd-angular-core-time.js.map +1 -1
  222. package/fesm2015/sd-angular-core-upload-excel.js +0 -1
  223. package/fesm2015/sd-angular-core-upload-excel.js.map +1 -1
  224. package/fesm2015/sd-angular-core-upload-file.js +0 -1
  225. package/fesm2015/sd-angular-core-upload-file.js.map +1 -1
  226. package/fesm2015/sd-angular-core-utility.js +1 -1
  227. package/fesm2015/sd-angular-core-utility.js.map +1 -1
  228. package/fesm2015/sd-angular-core.js +15 -20
  229. package/fesm2015/sd-angular-core.js.map +1 -1
  230. package/form/src/public-api.d.ts +1 -0
  231. package/grid/sd-angular-core-grid.metadata.json +1 -1
  232. package/grid/src/lib/components/grid-date-picker-control/grid-date-picker-control.component.d.ts +0 -1
  233. package/grid/src/lib/grid.module.d.ts +0 -1
  234. package/grid/src/lib/models/handler-dotnet.d.ts +0 -1
  235. package/grid-material/sd-angular-core-grid-material.d.ts +26 -27
  236. package/grid-material/sd-angular-core-grid-material.metadata.json +1 -1
  237. package/grid-material/src/lib/grid-material.module.d.ts +0 -1
  238. package/grid-material/src/public-api.d.ts +1 -0
  239. package/input/sd-angular-core-input.metadata.json +1 -1
  240. package/input-upload-file/sd-angular-core-input-upload-file.metadata.json +1 -1
  241. package/input-upload-file/src/lib/input-upload-file.module.d.ts +0 -1
  242. package/lib/controls/date-picker-control/date-picker-control.component.d.ts +0 -1
  243. package/lib/pipes/sd-date.pipe.d.ts +0 -1
  244. package/modal/sd-angular-core-modal.metadata.json +1 -1
  245. package/modal/src/lib/modal.module.d.ts +0 -1
  246. package/package.json +1 -1
  247. package/public-api.d.ts +10 -10
  248. package/radio/sd-angular-core-radio.metadata.json +1 -1
  249. package/radio/src/lib/radio.module.d.ts +0 -1
  250. package/radio/src/public-api.d.ts +1 -0
  251. package/{sd-angular-core-0.0.1008.tgz → sd-angular-core-0.0.1012.tgz} +0 -0
  252. package/sd-angular-core.metadata.json +1 -1
  253. package/select/sd-angular-core-select.metadata.json +1 -1
  254. package/select/src/lib/select.component.d.ts +3 -4
  255. package/select/src/lib/select.module.d.ts +0 -1
  256. package/select-editor/sd-angular-core-select-editor.metadata.json +1 -1
  257. package/select-editor/src/lib/select-editor.module.d.ts +0 -1
  258. package/service/sd-angular-core-service.metadata.json +1 -1
  259. package/service/src/lib/service.module.d.ts +0 -1
  260. package/service/src/public-api.d.ts +1 -1
  261. package/side-drawer/sd-angular-core-side-drawer.metadata.json +1 -1
  262. package/side-drawer/src/lib/side-drawer.module.d.ts +0 -1
  263. package/time/sd-angular-core-time.metadata.json +1 -1
  264. package/time/src/lib/time.component.d.ts +0 -1
  265. package/time/src/public-api.d.ts +1 -0
  266. package/upload-excel/sd-angular-core-upload-excel.metadata.json +1 -1
  267. package/upload-excel/src/lib/upload-excel.component.d.ts +0 -1
  268. package/upload-excel/src/lib/upload-excel.module.d.ts +0 -1
  269. package/upload-file/sd-angular-core-upload-file.metadata.json +1 -1
  270. package/upload-file/src/lib/upload-file.module.d.ts +0 -1
  271. package/utility/sd-angular-core-utility.metadata.json +1 -1
  272. package/utility/src/lib/pipes/currency.pipe.d.ts +0 -1
  273. package/utility/src/lib/pipes/time-different.pipe.d.ts +0 -1
  274. package/utility/src/lib/utility.service.d.ts +0 -1
  275. package/utility/src/public-api.d.ts +1 -0
  276. package/bundles/sd-angular-core-typing.umd.js +0 -226
  277. package/bundles/sd-angular-core-typing.umd.js.map +0 -1
  278. package/bundles/sd-angular-core-typing.umd.min.js +0 -2
  279. package/bundles/sd-angular-core-typing.umd.min.js.map +0 -1
  280. package/esm2015/grid-material/src/lib/directives/sd-let.directive.js +0 -29
  281. package/esm2015/service/src/lib/typings/date.extension.js +0 -143
  282. package/esm2015/service/src/lib/typings/index.js +0 -4
  283. package/esm2015/service/src/lib/typings/number.extension.js +0 -33
  284. package/esm2015/service/src/lib/typings/string.extension.js +0 -23
  285. package/esm2015/typing/index.js +0 -2
  286. package/esm2015/typing/sd-angular-core-typing.js +0 -5
  287. package/esm2015/typing/src/lib/typing/date.extension.js +0 -143
  288. package/esm2015/typing/src/lib/typing/index.js +0 -4
  289. package/esm2015/typing/src/lib/typing/number.extension.js +0 -33
  290. package/esm2015/typing/src/lib/typing/string.extension.js +0 -23
  291. package/esm2015/typing/src/lib/typing.service.js +0 -13
  292. package/esm2015/typing/src/public-api.js +0 -3
  293. package/fesm2015/sd-angular-core-typing.js +0 -215
  294. package/fesm2015/sd-angular-core-typing.js.map +0 -1
  295. package/service/src/lib/typings/index.d.ts +0 -3
  296. package/service/src/lib/typings/string.extension.d.ts +0 -8
  297. package/typing/index.d.ts +0 -1
  298. package/typing/package.json +0 -12
  299. package/typing/sd-angular-core-typing.d.ts +0 -4
  300. package/typing/sd-angular-core-typing.metadata.json +0 -1
  301. package/typing/src/lib/typing/date.extension.d.ts +0 -24
  302. package/typing/src/lib/typing/index.d.ts +0 -3
  303. package/typing/src/lib/typing/number.extension.d.ts +0 -9
  304. package/typing/src/lib/typing.service.d.ts +0 -3
  305. package/typing/src/public-api.d.ts +0 -2
@@ -0,0 +1,143 @@
1
+ Date.equal = (date1, date2) => {
2
+ if (!Date.isDate(date1) && !Date.isDate(date2)) {
3
+ return true;
4
+ }
5
+ if (!Date.isDate(date1) || !Date.isDate(date2)) {
6
+ return false;
7
+ }
8
+ return new Date(date1).getTime() === new Date(date2).getTime();
9
+ };
10
+ Date.parseFrom = (value, format) => {
11
+ if (!value) {
12
+ return null;
13
+ }
14
+ if (!format) {
15
+ return null;
16
+ }
17
+ value = value.toString();
18
+ const dmy = format.indexOf('dd') > -1 && format.indexOf('MM') > -1 && format.indexOf('yyyy') > -1;
19
+ const hms = format.indexOf('HH') > -1 || format.indexOf('mm') > -1 || format.indexOf('ss') > -1;
20
+ let strDate = '';
21
+ if (dmy) {
22
+ const dd = value.substr(format.indexOf('dd'), 'dd'.length);
23
+ const MM = value.substr(format.indexOf('MM'), 'MM'.length);
24
+ const yyyy = value.substr(format.indexOf('yyyy'), 'yyyy'.length);
25
+ if (+yyyy > 0 && +MM > 0 && +dd > 0) {
26
+ strDate += `${MM}/${dd}/${yyyy}`;
27
+ }
28
+ else {
29
+ return null;
30
+ }
31
+ }
32
+ else {
33
+ const today = new Date();
34
+ const yyyy = today.getFullYear().toString();
35
+ const MM = (today.getMonth() + 1).toString().padStart(2, '0');
36
+ const dd = today.getDate().toString().padStart(2, '0');
37
+ strDate += `${MM}/${dd}/${yyyy}`;
38
+ }
39
+ if (hms) {
40
+ const HH = format.indexOf('HH') > -1 ? value.substr(format.indexOf('HH'), 'HH'.length) : '00';
41
+ const mm = format.indexOf('mm') > -1 ? value.substr(format.indexOf('mm'), 'mm'.length) : '00';
42
+ const ss = format.indexOf('ss') > -1 ? value.substr(format.indexOf('ss'), 'ss'.length) : '00';
43
+ strDate += ` ${HH || '00'}:${mm || '00'}:${ss || '00'}`;
44
+ }
45
+ if (!Date.isDate(strDate)) {
46
+ return null;
47
+ }
48
+ return new Date(strDate);
49
+ };
50
+ Date.isDate = (value) => {
51
+ if (!value) {
52
+ return false;
53
+ }
54
+ const date = new Date(value);
55
+ return !isNaN(date.getTime());
56
+ };
57
+ Date.toFormat = (value, format) => {
58
+ if (!Date.isDate(value)) {
59
+ return '';
60
+ }
61
+ const date = new Date(value);
62
+ return date.toFormat(format);
63
+ };
64
+ Date.addMiliseconds = (value, miliseconds) => {
65
+ if (!Date.isDate(value)) {
66
+ return null;
67
+ }
68
+ const date = new Date(value);
69
+ return date.addMiliseconds(miliseconds);
70
+ };
71
+ Date.addHours = (value, hours) => {
72
+ if (!Date.isDate(value)) {
73
+ return null;
74
+ }
75
+ const date = new Date(value);
76
+ return date.addHours(hours);
77
+ };
78
+ Date.addDays = (value, days) => {
79
+ if (!Date.isDate(value)) {
80
+ return null;
81
+ }
82
+ const date = new Date(value);
83
+ return date.addDays(days);
84
+ };
85
+ Date.addMonths = (value, months) => {
86
+ if (!Date.isDate(value)) {
87
+ return null;
88
+ }
89
+ const date = new Date(value);
90
+ return date.addMonths(months);
91
+ };
92
+ Date.begin = (value) => {
93
+ if (!Date.isDate(value)) {
94
+ return null;
95
+ }
96
+ return new Date(Date.toFormat(value, 'MM/dd/yyyy'));
97
+ };
98
+ Date.end = (value) => {
99
+ if (!Date.isDate(value)) {
100
+ return null;
101
+ }
102
+ return new Date(value).addDays(1).begin().addMiliseconds(-1);
103
+ };
104
+ Date.prototype.begin = function () {
105
+ return new Date(this.toFormat('MM/dd/yyyy'));
106
+ };
107
+ Date.prototype.end = function () {
108
+ const date = this;
109
+ return date.addDays(1).begin().addMiliseconds(-1);
110
+ };
111
+ Date.prototype.addMiliseconds = function (miliseconds) {
112
+ const date = this;
113
+ date.setMilliseconds(date.getMilliseconds() + miliseconds);
114
+ return date;
115
+ };
116
+ Date.prototype.addHours = function (hours) {
117
+ const date = this;
118
+ date.setHours(date.getHours() + hours);
119
+ return date;
120
+ };
121
+ Date.prototype.addDays = function (days) {
122
+ const date = this;
123
+ date.setDate(date.getDate() + days);
124
+ return date;
125
+ };
126
+ Date.prototype.addMonths = function (months) {
127
+ const date = this;
128
+ date.setMonth(date.getMonth() + months);
129
+ return date;
130
+ };
131
+ Date.prototype.toFormat = function (format) {
132
+ const date = this;
133
+ let result = format;
134
+ result = result.replace('yyyy', date.getFullYear().toString());
135
+ result = result.replace('MM', (date.getMonth() + 1).toString().padStart(2, '0'));
136
+ result = result.replace('dd', date.getDate().toString().padStart(2, '0'));
137
+ result = result.replace('HH', date.getHours().toString().padStart(2, '0'));
138
+ result = result.replace('mm', date.getMinutes().toString().padStart(2, '0'));
139
+ result = result.replace('ss', date.getSeconds().toString().padStart(2, '0'));
140
+ return result;
141
+ };
142
+ export {};
143
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS5leHRlbnNpb24uanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1L0Rlc2t0b3AvV29ya2luZy8xTUcvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9jb21tb24vIiwic291cmNlcyI6WyJzcmMvbGliL3R5cGluZ3MvZGF0ZS5leHRlbnNpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMEJBLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxLQUFVLEVBQUUsS0FBVSxFQUFFLEVBQUU7SUFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxFQUFFO1FBQzlDLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDOUMsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUNELE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLEtBQUssSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUM7QUFDakUsQ0FBQyxDQUFDO0FBRUYsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLEtBQVUsRUFBRSxNQUFjLEVBQUUsRUFBRTtJQUM5QyxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1YsT0FBTyxJQUFJLENBQUM7S0FDYjtJQUNELElBQUksQ0FBQyxNQUFNLEVBQUU7UUFDWCxPQUFPLElBQUksQ0FBQztLQUNiO0lBQ0QsS0FBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUN6QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNsRyxNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUNoRyxJQUFJLE9BQU8sR0FBRyxFQUFFLENBQUM7SUFDakIsSUFBSSxHQUFHLEVBQUU7UUFDUCxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNELE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDM0QsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxFQUFFO1lBQ25DLE9BQU8sSUFBSSxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7U0FDbEM7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDO1NBQ2I7S0FDRjtTQUFNO1FBQ0wsTUFBTSxLQUFLLEdBQUcsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQUN6QixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDNUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUM5RCxNQUFNLEVBQUUsR0FBRyxLQUFLLENBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUN2RCxPQUFPLElBQUksR0FBRyxFQUFFLElBQUksRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO0tBQ2xDO0lBQ0QsSUFBSSxHQUFHLEVBQUU7UUFDUCxNQUFNLEVBQUUsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDOUYsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzlGLE1BQU0sRUFBRSxHQUFHLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztRQUM5RixPQUFPLElBQUksSUFBSSxFQUFFLElBQUksSUFBSSxJQUFJLEVBQUUsSUFBSSxJQUFJLElBQUksRUFBRSxJQUFJLElBQUks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RSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUMzRSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM3RSxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM3RSxPQUFPLE1BQU0sQ0FBQztBQUNoQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyB9O1xyXG5cclxuZGVjbGFyZSBnbG9iYWwge1xyXG4gIGludGVyZmFjZSBEYXRlIHtcclxuICAgIGJlZ2luKCk6IERhdGU7XHJcbiAgICBlbmQoKTogRGF0ZTtcclxuICAgIGFkZE1pbGlzZWNvbmRzKG1pbGlzZWNvbmRzOiBudW1iZXIpOiBEYXRlO1xyXG4gICAgYWRkSG91cnMoaG91cnM6IG51bWJlcik6IERhdGU7XHJcbiAgICBhZGREYXlzKGRheXM6IG51bWJlcik6IERhdGU7XHJcbiAgICBhZGRNb250aHMobW9udGhzOiBudW1iZXIpOiBEYXRlO1xyXG4gICAgdG9Gb3JtYXQoZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmc7XHJcbiAgfVxyXG4gIGludGVyZmFjZSBEYXRlQ29uc3RydWN0b3Ige1xyXG4gICAgZXF1YWwoZGF0ZTE6IGFueSwgZGF0ZTI6IGFueSk6IGJvb2xlYW47XHJcbiAgICBwYXJzZUZyb20odmFsdWU6IGFueSwgZm9ybWF0OiBzdHJpbmcpOiBEYXRlO1xyXG4gICAgaXNEYXRlKHZhbHVlOiBhbnkpOiBib29sZWFuO1xyXG4gICAgdG9Gb3JtYXQodmFsdWU6IGFueSwgZm9ybWF0OiBzdHJpbmcpOiBzdHJpbmc7XHJcbiAgICBhZGRNaWxpc2Vjb25kcyh2YWx1ZTogYW55LCBtaWxpc2Vjb25kczogbnVtYmVyKTogRGF0ZTtcclxuICAgIGFkZEhvdXJzKHZhbHVlOiBhbnksIGhvdXJzOiBudW1iZXIpOiBEYXRlO1xyXG4gICAgYWRkRGF5cyh2YWx1ZTogYW55LCBkYXlzOiBudW1iZXIpOiBEYXRlO1xyXG4gICAgYWRkTW9udGhzKHZhbHVlOiBhbnksIG1vbnRoczogbnVtYmVyKTogRGF0ZTtcclxuICAgIGJlZ2luKHZhbHVlOiBhbnkpOiBEYXRlO1xyXG4gICAgZW5kKHZhbHVlOiBhbnkpOiBEYXRlO1xyXG4gIH1cclxufVxyXG5cclxuRGF0ZS5lcXVhbCA9IChkYXRlMTogYW55LCBkYXRlMjogYW55KSA9PiB7XHJcbiAgaWYgKCFEYXRlLmlzRGF0ZShkYXRlMSkgJiYgIURhdGUuaXNEYXRlKGRhdGUyKSkge1xyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG4gIGlmICghRGF0ZS5pc0RhdGUoZGF0ZTEpIHx8ICFEYXRlLmlzRGF0ZShkYXRlMikpIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgcmV0dXJuIG5ldyBEYXRlKGRhdGUxKS5nZXRUaW1lKCkgPT09IG5ldyBEYXRlKGRhdGUyKS5nZXRUaW1lKCk7XHJcbn07XHJcblxyXG5EYXRlLnBhcnNlRnJvbSA9ICh2YWx1ZTogYW55LCBmb3JtYXQ6IHN0cmluZykgPT4ge1xyXG4gIGlmICghdmFsdWUpIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICBpZiAoIWZvcm1hdCkge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG4gIHZhbHVlID0gdmFsdWUudG9TdHJpbmcoKTtcclxuICBjb25zdCBkbXkgPSBmb3JtYXQuaW5kZXhPZignZGQnKSA+IC0xICYmIGZvcm1hdC5pbmRleE9mKCdNTScpID4gLTEgJiYgZm9ybWF0LmluZGV4T2YoJ3l5eXknKSA+IC0xO1xyXG4gIGNvbnN0IGhtcyA9IGZvcm1hdC5pbmRleE9mKCdISCcpID4gLTEgfHwgZm9ybWF0LmluZGV4T2YoJ21tJykgPiAtMSB8fCBmb3JtYXQuaW5kZXhPZignc3MnKSA+IC0xO1xyXG4gIGxldCBzdHJEYXRlID0gJyc7XHJcbiAgaWYgKGRteSkge1xyXG4gICAgY29uc3QgZGQgPSB2YWx1ZS5zdWJzdHIoZm9ybWF0LmluZGV4T2YoJ2RkJyksICdkZCcubGVuZ3RoKTtcclxuICAgIGNvbnN0IE1NID0gdmFsdWUuc3Vic3RyKGZvcm1hdC5pbmRleE9mKCdNTScpLCAnTU0nLmxlbmd0aCk7XHJcbiAgICBjb25zdCB5eXl5ID0gdmFsdWUuc3Vic3RyKGZvcm1hdC5pbmRleE9mKCd5eXl5JyksICd5eXl5Jy5sZW5ndGgpO1xyXG4gICAgaWYgKCt5eXl5ID4gMCAmJiArTU0gPiAwICYmICtkZCA+IDApIHtcclxuICAgICAgc3RyRGF0ZSArPSBgJHtNTX0vJHtkZH0vJHt5eXl5fWA7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gbnVsbDtcclxuICAgIH1cclxuICB9IGVsc2Uge1xyXG4gICAgY29uc3QgdG9kYXkgPSBuZXcgRGF0ZSgpO1xyXG4gICAgY29uc3QgeXl5eSA9IHRvZGF5LmdldEZ1bGxZZWFyKCkudG9TdHJpbmcoKTtcclxuICAgIGNvbnN0IE1NID0gKHRvZGF5LmdldE1vbnRoKCkgKyAxKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyk7XHJcbiAgICBjb25zdCBkZCA9IHRvZGF5LmdldERhdGUoKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJyk7XHJcbiAgICBzdHJEYXRlICs9IGAke01NfS8ke2RkfS8ke3l5eXl9YDtcclxuICB9XHJcbiAgaWYgKGhtcykge1xyXG4gICAgY29uc3QgSEggPSBmb3JtYXQuaW5kZXhPZignSEgnKSA+IC0xID8gdmFsdWUuc3Vic3RyKGZvcm1hdC5pbmRleE9mKCdISCcpLCAnSEgnLmxlbmd0aCkgOiAnMDAnO1xyXG4gICAgY29uc3QgbW0gPSBmb3JtYXQuaW5kZXhPZignbW0nKSA+IC0xID8gdmFsdWUuc3Vic3RyKGZvcm1hdC5pbmRleE9mKCdtbScpLCAnbW0nLmxlbmd0aCkgOiAnMDAnO1xyXG4gICAgY29uc3Qgc3MgPSBmb3JtYXQuaW5kZXhPZignc3MnKSA+IC0xID8gdmFsdWUuc3Vic3RyKGZvcm1hdC5pbmRleE9mKCdzcycpLCAnc3MnLmxlbmd0aCkgOiAnMDAnO1xyXG4gICAgc3RyRGF0ZSArPSBgICR7SEggfHwgJzAwJ306JHttbSB8fCAnMDAnfToke3NzIHx8ICcwMCd9YDtcclxuICB9XHJcbiAgaWYgKCFEYXRlLmlzRGF0ZShzdHJEYXRlKSkge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG4gIHJldHVybiBuZXcgRGF0ZShzdHJEYXRlKTtcclxufTtcclxuXHJcbkRhdGUuaXNEYXRlID0gKHZhbHVlOiBhbnkpID0+IHtcclxuICBpZiAoIXZhbHVlKSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIGNvbnN0IGRhdGUgPSBuZXcgRGF0ZSh2YWx1ZSk7XHJcbiAgcmV0dXJuICFpc05hTihkYXRlLmdldFRpbWUoKSk7XHJcbn07XHJcblxyXG5EYXRlLnRvRm9ybWF0ID0gKHZhbHVlOiBhbnksIGZvcm1hdDogc3RyaW5nKTogc3RyaW5nID0+IHtcclxuICBpZiAoIURhdGUuaXNEYXRlKHZhbHVlKSkge1xyXG4gICAgcmV0dXJuICcnO1xyXG4gIH1cclxuICBjb25zdCBkYXRlOiBEYXRlID0gbmV3IERhdGUodmFsdWUpO1xyXG4gIHJldHVybiBkYXRlLnRvRm9ybWF0KGZvcm1hdCk7XHJcbn07XHJcblxyXG5EYXRlLmFkZE1pbGlzZWNvbmRzID0gKHZhbHVlOiBhbnksIG1pbGlzZWNvbmRzOiBudW1iZXIpOiBEYXRlID0+IHtcclxuICBpZiAoIURhdGUuaXNEYXRlKHZhbHVlKSkge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG4gIGNvbnN0IGRhdGU6IERhdGUgPSBuZXcgRGF0ZSh2YWx1ZSk7XHJcbiAgcmV0dXJuIGRhdGUuYWRkTWlsaXNlY29uZHMobWlsaXNlY29uZHMpO1xyXG59O1xyXG5cclxuRGF0ZS5hZGRIb3VycyA9ICh2YWx1ZTogYW55LCBob3VyczogbnVtYmVyKTogRGF0ZSA9PiB7XHJcbiAgaWYgKCFEYXRlLmlzRGF0ZSh2YWx1ZSkpIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICBjb25zdCBkYXRlOiBEYXRlID0gbmV3IERhdGUodmFsdWUpO1xyXG4gIHJldHVybiBkYXRlLmFkZEhvdXJzKGhvdXJzKTtcclxufTtcclxuXHJcbkRhdGUuYWRkRGF5cyA9ICh2YWx1ZTogYW55LCBkYXlzOiBudW1iZXIpOiBEYXRlID0+IHtcclxuICBpZiAoIURhdGUuaXNEYXRlKHZhbHVlKSkge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG4gIGNvbnN0IGRhdGU6IERhdGUgPSBuZXcgRGF0ZSh2YWx1ZSk7XHJcbiAgcmV0dXJuIGRhdGUuYWRkRGF5cyhkYXlzKTtcclxufTtcclxuXHJcbkRhdGUuYWRkTW9udGhzID0gKHZhbHVlOiBhbnksIG1vbnRoczogbnVtYmVyKTogRGF0ZSA9PiB7XHJcbiAgaWYgKCFEYXRlLmlzRGF0ZSh2YWx1ZSkpIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICBjb25zdCBkYXRlOiBEYXRlID0gbmV3IERhdGUodmFsdWUpO1xyXG4gIHJldHVybiBkYXRlLmFkZE1vbnRocyhtb250aHMpO1xyXG59O1xyXG5cclxuRGF0ZS5iZWdpbiA9ICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgaWYgKCFEYXRlLmlzRGF0ZSh2YWx1ZSkpIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICByZXR1cm4gbmV3IERhdGUoRGF0ZS50b0Zvcm1hdCh2YWx1ZSwgJ01NL2RkL3l5eXknKSk7XHJcbn07XHJcblxyXG5EYXRlLmVuZCA9ICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgaWYgKCFEYXRlLmlzRGF0ZSh2YWx1ZSkpIHtcclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuICByZXR1cm4gbmV3IERhdGUodmFsdWUpLmFkZERheXMoMSkuYmVnaW4oKS5hZGRNaWxpc2Vjb25kcygtMSk7XHJcbn07XHJcblxyXG5EYXRlLnByb3RvdHlwZS5iZWdpbiA9IGZ1bmN0aW9uICgpIHtcclxuICByZXR1cm4gbmV3IERhdGUodGhpcy50b0Zvcm1hdCgnTU0vZGQveXl5eScpKTtcclxufTtcclxuXHJcbkRhdGUucHJvdG90eXBlLmVuZCA9IGZ1bmN0aW9uICgpIHtcclxuICBjb25zdCBkYXRlOiBEYXRlID0gdGhpcztcclxuICByZXR1cm4gZGF0ZS5hZGREYXlzKDEpLmJlZ2luKCkuYWRkTWlsaXNlY29uZHMoLTEpO1xyXG59O1xyXG5cclxuRGF0ZS5wcm90b3R5cGUuYWRkTWlsaXNlY29uZHMgPSBmdW5jdGlvbiAobWlsaXNlY29uZHM6IG51bWJlcikge1xyXG4gIGNvbnN0IGRhdGU6IERhdGUgPSB0aGlzO1xyXG4gIGRhdGUuc2V0TWlsbGlzZWNvbmRzKGRhdGUuZ2V0TWlsbGlzZWNvbmRzKCkgKyBtaWxpc2Vjb25kcyk7XHJcbiAgcmV0dXJuIGRhdGU7XHJcbn07XHJcblxyXG5EYXRlLnByb3RvdHlwZS5hZGRIb3VycyA9IGZ1bmN0aW9uIChob3VyczogbnVtYmVyKSB7XHJcbiAgY29uc3QgZGF0ZTogRGF0ZSA9IHRoaXM7XHJcbiAgZGF0ZS5zZXRIb3VycyhkYXRlLmdldEhvdXJzKCkgKyBob3Vycyk7XHJcbiAgcmV0dXJuIGRhdGU7XHJcbn07XHJcblxyXG5EYXRlLnByb3RvdHlwZS5hZGREYXlzID0gZnVuY3Rpb24gKGRheXM6IG51bWJlcikge1xyXG4gIGNvbnN0IGRhdGU6IERhdGUgPSB0aGlzO1xyXG4gIGRhdGUuc2V0RGF0ZShkYXRlLmdldERhdGUoKSArIGRheXMpO1xyXG4gIHJldHVybiBkYXRlO1xyXG59O1xyXG5cclxuRGF0ZS5wcm90b3R5cGUuYWRkTW9udGhzID0gZnVuY3Rpb24gKG1vbnRoczogbnVtYmVyKSB7XHJcbiAgY29uc3QgZGF0ZTogRGF0ZSA9IHRoaXM7XHJcbiAgZGF0ZS5zZXRNb250aChkYXRlLmdldE1vbnRoKCkgKyBtb250aHMpO1xyXG4gIHJldHVybiBkYXRlO1xyXG59O1xyXG5cclxuRGF0ZS5wcm90b3R5cGUudG9Gb3JtYXQgPSBmdW5jdGlvbiAoZm9ybWF0OiBzdHJpbmcpIHtcclxuICBjb25zdCBkYXRlOiBEYXRlID0gdGhpcztcclxuICBsZXQgcmVzdWx0ID0gZm9ybWF0O1xyXG4gIHJlc3VsdCA9IHJlc3VsdC5yZXBsYWNlKCd5eXl5JywgZGF0ZS5nZXRGdWxsWWVhcigpLnRvU3RyaW5nKCkpO1xyXG4gIHJlc3VsdCA9IHJlc3VsdC5yZXBsYWNlKCdNTScsIChkYXRlLmdldE1vbnRoKCkgKyAxKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJykpO1xyXG4gIHJlc3VsdCA9IHJlc3VsdC5yZXBsYWNlKCdkZCcsIGRhdGUuZ2V0RGF0ZSgpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKSk7XHJcbiAgcmVzdWx0ID0gcmVzdWx0LnJlcGxhY2UoJ0hIJywgZGF0ZS5nZXRIb3VycygpLnRvU3RyaW5nKCkucGFkU3RhcnQoMiwgJzAnKSk7XHJcbiAgcmVzdWx0ID0gcmVzdWx0LnJlcGxhY2UoJ21tJywgZGF0ZS5nZXRNaW51dGVzKCkudG9TdHJpbmcoKS5wYWRTdGFydCgyLCAnMCcpKTtcclxuICByZXN1bHQgPSByZXN1bHQucmVwbGFjZSgnc3MnLCBkYXRlLmdldFNlY29uZHMoKS50b1N0cmluZygpLnBhZFN0YXJ0KDIsICcwJykpO1xyXG4gIHJldHVybiByZXN1bHQ7XHJcbn07XHJcbiJdfQ==
@@ -0,0 +1,33 @@
1
+ Number.toVNCurrency = (value) => {
2
+ value = (value !== null && value !== void 0 ? value : '').toString().replace(/,/g, '');
3
+ if (!value) {
4
+ return null;
5
+ }
6
+ const val = +value;
7
+ if (!Number.isNaN(val)) {
8
+ return val.toLocaleString('vi-VN');
9
+ }
10
+ return null;
11
+ };
12
+ Number.isPositiveInteger = (value) => {
13
+ if (!value) {
14
+ return false;
15
+ }
16
+ const regex = /^([0-9]*)$/;
17
+ return regex.test(value) && +value > 0;
18
+ };
19
+ Number.isPositiveNumber = (value) => {
20
+ if (!value) {
21
+ return false;
22
+ }
23
+ const regex = /^([0-9]*)(\.[0-9]+$){0,1}$/;
24
+ return regex.test(value) && +value > 0;
25
+ };
26
+ Number.isNumber = (value) => {
27
+ if (value === undefined || value === null || value === '') {
28
+ return false;
29
+ }
30
+ return !Number.isNaN(+value);
31
+ };
32
+ export {};
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLmV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTUvRGVza3RvcC9Xb3JraW5nLzFNRy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2NvbW1vbi8iLCJzb3VyY2VzIjpbInNyYy9saWIvdHlwaW5ncy9udW1iZXIuZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVdBLE1BQU0sQ0FBQyxZQUFZLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtJQUNuQyxLQUFLLEdBQUcsQ0FBQyxLQUFLLGFBQUwsS0FBSyxjQUFMLEtBQUssR0FBSSxFQUFFLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELElBQUksQ0FBQyxLQUFLLEVBQUU7UUFDVixPQUFPLElBQUksQ0FBQztLQUNiO0lBQ0QsTUFBTSxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUM7SUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDdEIsT0FBTyxHQUFHLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQ3BDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtJQUN4QyxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1YsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUNELE1BQU0sS0FBSyxHQUFHLFlBQVksQ0FBQztJQUMzQixPQUFPLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO0FBQ3pDLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFO0lBQ3ZDLElBQUksQ0FBQyxLQUFLLEVBQUU7UUFDVixPQUFPLEtBQUssQ0FBQztLQUNkO0lBQ0QsTUFBTSxLQUFLLEdBQUcsNEJBQTRCLENBQUM7SUFDM0MsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztBQUN6QyxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsUUFBUSxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7SUFDL0IsSUFBSSxLQUFLLEtBQUssU0FBUyxJQUFJLEtBQUssS0FBSyxJQUFJLElBQUksS0FBSyxLQUFLLEVBQUUsRUFBRTtRQUN6RCxPQUFPLEtBQUssQ0FBQztLQUNkO0lBQ0QsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUMvQixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyB9O1xyXG5cclxuZGVjbGFyZSBnbG9iYWwge1xyXG4gIGludGVyZmFjZSBOdW1iZXJDb25zdHJ1Y3RvciB7XHJcbiAgICB0b1ZOQ3VycmVuY3kodmFsdWU6IGFueSk6IHN0cmluZztcclxuICAgIGlzTnVtYmVyKHZhbHVlOiBhbnkpOiBib29sZWFuO1xyXG4gICAgaXNQb3NpdGl2ZUludGVnZXIodmFsdWU6IGFueSk6IGJvb2xlYW47XHJcbiAgICBpc1Bvc2l0aXZlTnVtYmVyKHZhbHVlOiBhbnkpOiBib29sZWFuO1xyXG4gIH1cclxufVxyXG5cclxuTnVtYmVyLnRvVk5DdXJyZW5jeSA9ICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgdmFsdWUgPSAodmFsdWUgPz8gJycpLnRvU3RyaW5nKCkucmVwbGFjZSgvLC9nLCAnJyk7XHJcbiAgaWYgKCF2YWx1ZSkge1xyXG4gICAgcmV0dXJuIG51bGw7XHJcbiAgfVxyXG4gIGNvbnN0IHZhbCA9ICt2YWx1ZTtcclxuICBpZiAoIU51bWJlci5pc05hTih2YWwpKSB7XHJcbiAgICByZXR1cm4gdmFsLnRvTG9jYWxlU3RyaW5nKCd2aS1WTicpO1xyXG4gIH1cclxuICByZXR1cm4gbnVsbDtcclxufTtcclxuXHJcbk51bWJlci5pc1Bvc2l0aXZlSW50ZWdlciA9ICh2YWx1ZTogYW55KSA9PiB7XHJcbiAgaWYgKCF2YWx1ZSkge1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuICBjb25zdCByZWdleCA9IC9eKFswLTldKikkLztcclxuICByZXR1cm4gcmVnZXgudGVzdCh2YWx1ZSkgJiYgK3ZhbHVlID4gMDtcclxufTtcclxuXHJcbk51bWJlci5pc1Bvc2l0aXZlTnVtYmVyID0gKHZhbHVlOiBhbnkpID0+IHtcclxuICBpZiAoIXZhbHVlKSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIGNvbnN0IHJlZ2V4ID0gL14oWzAtOV0qKShcXC5bMC05XSskKXswLDF9JC87XHJcbiAgcmV0dXJuIHJlZ2V4LnRlc3QodmFsdWUpICYmICt2YWx1ZSA+IDA7XHJcbn07XHJcblxyXG5OdW1iZXIuaXNOdW1iZXIgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSAnJykge1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuICByZXR1cm4gIU51bWJlci5pc05hTigrdmFsdWUpO1xyXG59O1xyXG4iXX0=
@@ -0,0 +1,42 @@
1
+ String.isValidEmail = (value) => {
2
+ if (!value) {
3
+ return false;
4
+ }
5
+ const re = /^(([^<>()\[\]\.,;:\s@\"]+(\.[^<>()\[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i;
6
+ return re.test(value);
7
+ };
8
+ String.isValidPhone = (value) => {
9
+ if (!value) {
10
+ return false;
11
+ }
12
+ const re = /^[+]*[(]{0,1}[0-9]{1,4}[)]{0,1}[-\s\./0-9]*$/;
13
+ return re.test(value);
14
+ };
15
+ String.isValidCode = (value) => {
16
+ if (!value) {
17
+ return false;
18
+ }
19
+ const re = /^[a-zA-Z0-9\@\_\-]{2,20}$/;
20
+ return re.test(value);
21
+ };
22
+ String.changeAliasLowerCase = (alias) => {
23
+ var _a;
24
+ let str = (_a = alias === null || alias === void 0 ? void 0 : alias.toString()) !== null && _a !== void 0 ? _a : '';
25
+ str = str.toString().toLowerCase();
26
+ str = str.replace(/à|á|ạ|ả|ã|â|ầ|ấ|ậ|ẩ|ẫ|ă|ằ|ắ|ặ|ẳ|ẵ/g, 'a');
27
+ str = str.replace(/è|é|ẹ|ẻ|ẽ|ê|ề|ế|ệ|ể|ễ/g, 'e');
28
+ str = str.replace(/ì|í|ị|ỉ|ĩ/g, 'i');
29
+ str = str.replace(/ò|ó|ọ|ỏ|õ|ô|ồ|ố|ộ|ổ|ỗ|ơ|ờ|ớ|ợ|ở|ỡ/g, 'o');
30
+ str = str.replace(/ù|ú|ụ|ủ|ũ|ư|ừ|ứ|ự|ử|ữ/g, 'u');
31
+ str = str.replace(/ỳ|ý|ỵ|ỷ|ỹ/g, 'y');
32
+ str = str.replace(/đ/g, 'd');
33
+ str = str.replace(/!|@|%|\^|\*|\(|\)|\+|\=|\<|\>|\?|\/|,|\.|\:|\;|\'|\"|\&|\#|\[|\]|~|\$|_|`|-|{|}|\||\\/g, ' ');
34
+ str = str.replace(/ + /g, ' ');
35
+ str = str.trim();
36
+ return str;
37
+ };
38
+ String.aliasIncludes = (alias, searchText) => {
39
+ return String.changeAliasLowerCase(alias).includes(String.changeAliasLowerCase(searchText));
40
+ };
41
+ export {};
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLmV4dGVuc2lvbi5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTUvRGVza3RvcC9Xb3JraW5nLzFNRy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2NvbW1vbi8iLCJzb3VyY2VzIjpbInNyYy9saWIvdHlwaW5ncy9zdHJpbmcuZXh0ZW5zaW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVlBLE1BQU0sQ0FBQyxZQUFZLEdBQUcsQ0FBQyxLQUFVLEVBQUUsRUFBRTtJQUNuQyxJQUFJLENBQUMsS0FBSyxFQUFFO1FBQ1YsT0FBTyxLQUFLLENBQUM7S0FDZDtJQUNELE1BQU0sRUFBRSxHQUFHLHdIQUF3SCxDQUFDO0lBQ3BJLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUN4QixDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsWUFBWSxHQUFHLENBQUMsS0FBVSxFQUFFLEVBQUU7SUFDbkMsSUFBSSxDQUFDLEtBQUssRUFBRTtRQUNWLE9BQU8sS0FBSyxDQUFDO0tBQ2Q7SUFDRCxNQUFNLEVBQUUsR0FBRyw4Q0FBOEMsQ0FBQztJQUMxRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7QUFDeEIsQ0FBQyxDQUFDO0FBRUYsTUFBTSxDQUFDLFdBQVcsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFO0lBQ2xDLElBQUksQ0FBQyxLQUFLLEVBQUU7UUFDVixPQUFPLEtBQUssQ0FBQztLQUNkO0lBQ0QsTUFBTSxFQUFFLEdBQUcsMkJBQTJCLENBQUM7SUFDdkMsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0FBQ3hCLENBQUMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLEtBQVUsRUFBRSxFQUFFOztJQUMzQyxJQUFJLEdBQUcsU0FBVyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsUUFBUSxxQ0FBTSxFQUFFLENBQUM7SUFDMUMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNuQyxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxvQ0FBb0MsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUM3RCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNqRCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDckMsR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsb0NBQW9DLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDN0QsR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDakQsR0FBRyxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLEdBQUcsR0FBRyxHQUFHLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztJQUM3QixHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyx3RkFBd0YsRUFBRSxHQUFHLENBQUMsQ0FBQztJQUNqSCxHQUFHLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDL0IsR0FBRyxHQUFHLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNqQixPQUFPLEdBQUcsQ0FBQztBQUNiLENBQUMsQ0FBQTtBQUVELE1BQU0sQ0FBQyxhQUFhLEdBQUcsQ0FBQyxLQUFVLEVBQUUsVUFBZSxFQUFFLEVBQUU7SUFDckQsT0FBTyxNQUFNLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO0FBQzlGLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IH07XHJcblxyXG5kZWNsYXJlIGdsb2JhbCB7XHJcbiAgaW50ZXJmYWNlIFN0cmluZ0NvbnN0cnVjdG9yIHtcclxuICAgIGlzVmFsaWRFbWFpbCh2YWx1ZTogYW55KTogYm9vbGVhbjtcclxuICAgIGlzVmFsaWRQaG9uZSh2YWx1ZTogYW55KTogYm9vbGVhbjtcclxuICAgIGlzVmFsaWRDb2RlKHZhbHVlOiBhbnkpOiBib29sZWFuO1xyXG4gICAgY2hhbmdlQWxpYXNMb3dlckNhc2UoYWxpYXM6IGFueSk6IHN0cmluZztcclxuICAgIGFsaWFzSW5jbHVkZXMoYWxpYXM6IGFueSwgc2VhcmNoVGV4dDogYW55KTogYm9vbGVhbjtcclxuICB9XHJcbn1cclxuXHJcblN0cmluZy5pc1ZhbGlkRW1haWwgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIGlmICghdmFsdWUpIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgY29uc3QgcmUgPSAvXigoW148PigpXFxbXFxdXFwuLDs6XFxzQFxcXCJdKyhcXC5bXjw+KClcXFtcXF1cXC4sOzpcXHNAXFxcIl0rKSopfChcXFwiLitcXFwiKSlAKChbXjw+KClbXFxdXFwuLDs6XFxzQFxcXCJdK1xcLikrW148PigpW1xcXVxcLiw7Olxcc0BcXFwiXXsyLH0pJC9pO1xyXG4gIHJldHVybiByZS50ZXN0KHZhbHVlKTtcclxufTtcclxuXHJcblN0cmluZy5pc1ZhbGlkUGhvbmUgPSAodmFsdWU6IGFueSkgPT4ge1xyXG4gIGlmICghdmFsdWUpIHtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgY29uc3QgcmUgPSAvXlsrXSpbKF17MCwxfVswLTldezEsNH1bKV17MCwxfVstXFxzXFwuLzAtOV0qJC87XHJcbiAgcmV0dXJuIHJlLnRlc3QodmFsdWUpO1xyXG59O1xyXG5cclxuU3RyaW5nLmlzVmFsaWRDb2RlID0gKHZhbHVlOiBhbnkpID0+IHtcclxuICBpZiAoIXZhbHVlKSB7XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG4gIGNvbnN0IHJlID0gL15bYS16QS1aMC05XFxAXFxfXFwtXXsyLDIwfSQvO1xyXG4gIHJldHVybiByZS50ZXN0KHZhbHVlKTtcclxufTtcclxuXHJcblN0cmluZy5jaGFuZ2VBbGlhc0xvd2VyQ2FzZSA9IChhbGlhczogYW55KSA9PiB7XHJcbiAgbGV0IHN0cjogc3RyaW5nID0gYWxpYXM/LnRvU3RyaW5nKCkgPz8gJyc7XHJcbiAgc3RyID0gc3RyLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvw6B8w6F84bqhfOG6o3zDo3zDonzhuqd84bqlfOG6rXzhuql84bqrfMSDfOG6sXzhuq984bq3fOG6s3zhurUvZywgJ2EnKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvw6h8w6l84bq5fOG6u3zhur18w6p84buBfOG6v3zhu4d84buDfOG7hS9nLCAnZScpO1xyXG4gIHN0ciA9IHN0ci5yZXBsYWNlKC/DrHzDrXzhu4t84buJfMSpL2csICdpJyk7XHJcbiAgc3RyID0gc3RyLnJlcGxhY2UoL8OyfMOzfOG7jXzhu498w7V8w7R84buTfOG7kXzhu5l84buVfOG7l3zGoXzhu5184bubfOG7o3zhu5984buhL2csICdvJyk7XHJcbiAgc3RyID0gc3RyLnJlcGxhY2UoL8O5fMO6fOG7pXzhu6d8xal8xrB84burfOG7qXzhu7F84butfOG7ry9nLCAndScpO1xyXG4gIHN0ciA9IHN0ci5yZXBsYWNlKC/hu7N8w7184bu1fOG7t3zhu7kvZywgJ3knKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvxJEvZywgJ2QnKTtcclxuICBzdHIgPSBzdHIucmVwbGFjZSgvIXxAfCV8XFxefFxcKnxcXCh8XFwpfFxcK3xcXD18XFw8fFxcPnxcXD98XFwvfCx8XFwufFxcOnxcXDt8XFwnfFxcXCJ8XFwmfFxcI3xcXFt8XFxdfH58XFwkfF98YHwtfHt8fXxcXHx8XFxcXC9nLCAnICcpO1xyXG4gIHN0ciA9IHN0ci5yZXBsYWNlKC8gKyAvZywgJyAnKTtcclxuICBzdHIgPSBzdHIudHJpbSgpO1xyXG4gIHJldHVybiBzdHI7XHJcbn1cclxuXHJcblN0cmluZy5hbGlhc0luY2x1ZGVzID0gKGFsaWFzOiBhbnksIHNlYXJjaFRleHQ6IGFueSkgPT4ge1xyXG4gIHJldHVybiBTdHJpbmcuY2hhbmdlQWxpYXNMb3dlckNhc2UoYWxpYXMpLmluY2x1ZGVzKFN0cmluZy5jaGFuZ2VBbGlhc0xvd2VyQ2FzZShzZWFyY2hUZXh0KSk7XHJcbn0iXX0=
@@ -1,4 +1,9 @@
1
+ import './lib/typings/array.extension';
2
+ import './lib/typings/date.extension';
3
+ import './lib/typings/number.extension';
4
+ import './lib/typings/string.extension';
1
5
  export * from './lib/common.module';
2
6
  export * from './lib/models/sd-form-control';
3
7
  export * from './lib/directives/view-def.directive';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTUvRGVza3RvcC9Xb3JraW5nLzFNRy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2NvbW1vbi8iLCJzb3VyY2VzIjpbInNyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHFDQUFxQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvY29tbW9uLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZC1mb3JtLWNvbnRyb2wnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3ZpZXctZGVmLmRpcmVjdGl2ZSc7Il19
8
+ export * from './lib/directives/sd-let.directive';
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTUvRGVza3RvcC9Xb3JraW5nLzFNRy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2NvbW1vbi8iLCJzb3VyY2VzIjpbInNyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sK0JBQStCLENBQUM7QUFDdkMsT0FBTyw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLGdDQUFnQyxDQUFDO0FBQ3hDLE9BQU8sZ0NBQWdDLENBQUM7QUFDeEMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxtQ0FBbUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnLi9saWIvdHlwaW5ncy9hcnJheS5leHRlbnNpb24nO1xyXG5pbXBvcnQgJy4vbGliL3R5cGluZ3MvZGF0ZS5leHRlbnNpb24nO1xyXG5pbXBvcnQgJy4vbGliL3R5cGluZ3MvbnVtYmVyLmV4dGVuc2lvbic7XHJcbmltcG9ydCAnLi9saWIvdHlwaW5ncy9zdHJpbmcuZXh0ZW5zaW9uJztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tbW9uLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVscy9zZC1mb3JtLWNvbnRyb2wnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL3ZpZXctZGVmLmRpcmVjdGl2ZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvc2QtbGV0LmRpcmVjdGl2ZSc7Il19
@@ -1,3 +1,2 @@
1
- import '@sd-angular/core/typing';
2
1
  export * from './src/public-api';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1L0Rlc2t0b3AvV29ya2luZy8xTUcvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9kYXRlLXJhbmdlLyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyx5QkFBeUIsQ0FBQztBQUNqQyxjQUFjLGtCQUFrQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3R5cGluZyc7XHJcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3B1YmxpYy1hcGknOyJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1L0Rlc2t0b3AvV29ya2luZy8xTUcvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9kYXRlLXJhbmdlLyIsInNvdXJjZXMiOlsiaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjL3B1YmxpYy1hcGknOyJdfQ==
@@ -8,7 +8,6 @@ import moment from 'moment';
8
8
  import * as uuid from 'uuid';
9
9
  import { merge, Subscription } from 'rxjs';
10
10
  import { debounceTime } from 'rxjs/operators';
11
- import '@sd-angular/core/typing';
12
11
  const CUSTOM_DATE_FORMATS = {
13
12
  parse: {
14
13
  dateInput: 'DD/MM/YYYY'
@@ -235,4 +234,4 @@ SdDateRange.propDecorators = {
235
234
  toChange: [{ type: Output }]
236
235
  };
237
236
  export { ɵ0 };
238
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1L0Rlc2t0b3AvV29ya2luZy8xTUcvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9kYXRlLXJhbmdlLyIsInNvdXJjZXMiOlsic3JjL2xpYi9kYXRlLXJhbmdlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFlBQVksRUFDWixNQUFNLEVBSVAsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFdBQVcsRUFBYSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLE1BQWtCLE1BQU0sUUFBUSxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM5QyxPQUFPLHlCQUF5QixDQUFDO0FBRWpDLE1BQU0sbUJBQW1CLEdBQUc7SUFDMUIsS0FBSyxFQUFFO1FBQ0wsU0FBUyxFQUFFLFlBQVk7S0FDeEI7SUFDRCxPQUFPLEVBQUU7UUFDUCxTQUFTLEVBQUUsWUFBWTtRQUN2QixjQUFjLEVBQUUsVUFBVTtRQUMxQixhQUFhLEVBQUUsSUFBSTtRQUNuQixrQkFBa0IsRUFBRSxXQUFXO0tBQ2hDO0NBQ0YsQ0FBQztXQU1tRCxtQkFBbUI7QUFFeEUsTUFBTSxPQUFPLFdBQVc7SUFtRnRCLFlBQ1UsZUFBc0M7UUFBdEMsb0JBQWUsR0FBZixlQUFlLENBQXVCO1FBbkZoRCxRQUFHLEdBQUcsSUFBSSxJQUFJLENB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XG4gIEV2ZW50RW1pdHRlcixcclxuICBPdXRwdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgT25Jbml0XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgRm9ybUdyb3VwLCBOZ0Zvcm0gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJJbnB1dEV2ZW50LCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RhdGVwaWNrZXInO1xyXG5pbXBvcnQgeyBNQVRfREFURV9GT1JNQVRTIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XHJcbmltcG9ydCB7IERldmljZURldGVjdG9yU2VydmljZSB9IGZyb20gJ25neC1kZXZpY2UtZGV0ZWN0b3InO1xyXG5pbXBvcnQgbW9tZW50LCB7IE1vbWVudCB9IGZyb20gJ21vbWVudCc7XHJcbmltcG9ydCAqIGFzIHV1aWQgZnJvbSAndXVpZCc7XHJcbmltcG9ydCB7IG1lcmdlLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5pbXBvcnQgJ0BzZC1hbmd1bGFyL2NvcmUvdHlwaW5nJztcclxuXHJcbmNvbnN0IENVU1RPTV9EQVRFX0ZPUk1BVFMgPSB7XHJcbiAgcGFyc2U6IHtcclxuICAgIGRhdGVJbnB1dDogJ0REL01NL1lZWVknXHJcbiAgfSxcclxuICBkaXNwbGF5OiB7XHJcbiAgICBkYXRlSW5wdXQ6ICdERC9NTS9ZWVlZJyxcclxuICAgIG1vbnRoWWVhckxhYmVsOiAnTU1NIFlZWVknLFxyXG4gICAgZGF0ZUExMXlMYWJlbDogJ0xMJyxcclxuICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTU0gWVlZWSdcclxuICB9XHJcbn07XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NkLWRhdGUtcmFuZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlLXJhbmdlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kYXRlLXJhbmdlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogQ1VTVE9NX0RBVEVfRk9STUFUUyB9XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkRGF0ZVJhbmdlIGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQsIEFmdGVyVmlld0luaXQge1xyXG4gIGlkMSA9IGBJJHt1dWlkLnY0KCl9YDtcclxuICBpZDIgPSBgSSR7dXVpZC52NCgpfWA7XHJcbiAgI2Zyb206IGFueSA9IG51bGw7XHJcbiAgI3RvOiBhbnkgPSBudWxsO1xyXG4gIGlzTW9iaWxlT3JUYWJsZXQgPSBmYWxzZTtcclxuICAjbmFtZSA9IHV1aWQudjQoKTtcclxuICBASW5wdXQoKSBzZXQgbmFtZSh2YWw6IHN0cmluZykge1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICB0aGlzLiNuYW1lID0gdmFsO1xyXG4gICAgfVxyXG4gIH1cclxuICBASW5wdXQoKSBzaXplOiAnc20nIHwgJ2xnJztcclxuICAjZm9ybTogRm9ybUdyb3VwO1xyXG4gIGZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XHJcbiAgQElucHV0KCkgc2V0IGZvcm0odmFsOiBOZ0Zvcm0gfCBGb3JtR3JvdXApIHtcclxuICAgIGlmICh2YWwpIHtcclxuICAgICAgaWYgKHZhbCBpbnN0YW5jZW9mIE5nRm9ybSkge1xyXG4gICAgICAgIHRoaXMuI2Zvcm0gPSB2YWwuZm9ybTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLiNmb3JtID0gdmFsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2V0IGRpc2FibGVkKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB2YWwgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLmRpc2FibGUoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuZW5hYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBJbnB1dCgpIHJlcXVpcmVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcclxuICBkaXNhYmxlRXJyb3JNZXNzYWdlID0gZmFsc2U7XHJcbiAgQElucHV0KCdkaXNhYmxlRXJyb3JNZXNzYWdlJykgc2V0IF9kaXNhYmxlRXJyb3JNZXNzYWdlKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB0aGlzLmRpc2FibGVFcnJvck1lc3NhZ2UgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gICAgdmFsID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICB9XHJcbiAgbWluOiBEYXRlO1xyXG4gIEBJbnB1dCgnbWluJykgc2V0IF9taW4odmFsOiBzdHJpbmcpIHtcclxuICAgIGlmIChEYXRlLmlzRGF0ZSh2YWwpKSB7XHJcbiAgICAgIHRoaXMubWluID0gbmV3IERhdGUodmFsKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubWluID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbiAgbWF4OiBEYXRlO1xyXG4gIEBJbnB1dCgnbWF4Jykgc2V0IF9tYXgodmFsOiBzdHJpbmcpIHtcclxuICAgIGlmIChEYXRlLmlzRGF0ZSh2YWwpKSB7XHJcbiAgICAgIHRoaXMubWF4ID0gbmV3IERhdGUodmFsKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubWF4ID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbiAgQElucHV0KCkgc2V0IGZyb20odmFsOiBhbnkpIHtcclxuICAgIGlmICghRGF0ZS5pc0RhdGUodmFsKSkge1xyXG4gICAgICB2YWwgPSBudWxsO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuI2Zyb20gIT09IHZhbCkge1xyXG4gICAgICB0aGlzLiNmcm9tID0gdmFsO1xyXG4gICAgICB0aGlzLiNvbkNoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcbiAgQElucHV0KCkgc2V0IHRvKHZhbDogYW55KSB7XHJcbiAgICBpZiAoIURhdGUuaXNEYXRlKHZhbCkpIHtcclxuICAgICAgdmFsID0gbnVsbDtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLiN0byAhPT0gdmFsKSB7XHJcbiAgICAgIHRoaXMuI3RvID0gdmFsO1xyXG4gICAgICB0aGlzLiNvbkNoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcbiAgQE91dHB1dCgpIHNkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx7IGZyb206IERhdGUsIHRvOiBEYXRlIH0+KCk7XHJcbiAgQE91dHB1dCgpIGZyb21DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHRvQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjb250cm9sMSA9IG5ldyBGb3JtQ29udHJvbCgpO1xyXG4gICNjMSA9IHV1aWQudjQoKTtcclxuICBjb250cm9sMiA9IG5ldyBGb3JtQ29udHJvbCgpO1xyXG4gICNjMiA9IHV1aWQudjQoKTtcclxuICAjc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkZXRlY3RvclNlcnZpY2U6IERldmljZURldGVjdG9yU2VydmljZSkge1xyXG4gICAgdGhpcy5pc01vYmlsZU9yVGFibGV0ID0gIXRoaXMuZGV0ZWN0b3JTZXJ2aWNlLmlzRGVza3RvcCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLiNmb3JtPy5yZW1vdmVDb250cm9sKHRoaXMuI2MxKTtcclxuICAgIHRoaXMuI2Zvcm0/LnJlbW92ZUNvbnRyb2wodGhpcy4jYzIpO1xyXG4gICAgdGhpcy4jZm9ybT8ucmVtb3ZlQ29udHJvbCh0aGlzLiNuYW1lKTtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLiNmb3JtPy5hZGRDb250cm9sKHRoaXMuI2MxLCB0aGlzLmNvbnRyb2wxKTtcclxuICAgIHRoaXMuI2Zvcm0/LmFkZENvbnRyb2wodGhpcy4jYzIsIHRoaXMuY29udHJvbDIpO1xyXG4gICAgdGhpcy4jZm9ybT8uYWRkQ29udHJvbCh0aGlzLiNuYW1lLCB0aGlzLmZvcm1Db250cm9sKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQobWVyZ2UodGhpcy5jb250cm9sMS52YWx1ZUNoYW5nZXMsIHRoaXMuY29udHJvbDIudmFsdWVDaGFuZ2VzKS5waXBlKGRlYm91bmNlVGltZSg1MDApKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICBjb25zdCBmcm9tID0gdGhpcy5jb250cm9sMS52YWx1ZT8udG9EYXRlKCkgfHwgbnVsbDtcclxuICAgICAgY29uc3QgdG8gPSB0aGlzLmNvbnRyb2wyLnZhbHVlPy50b0RhdGUoKSB8fCBudWxsO1xyXG4gICAgICBpZiAodGhpcy4jZnJvbSAhPT0gZnJvbSB8fCB0aGlzLiN0byAhPT0gdG8pIHtcclxuICAgICAgICBpZiAoZnJvbSAmJiB0bykge1xyXG4gICAgICAgICAgdGhpcy5zZENoYW5nZS5lbWl0KHtcclxuICAgICAgICAgICAgZnJvbSxcclxuICAgICAgICAgICAgdG9cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoIWZyb20gJiYgIXRvKSB7XHJcbiAgICAgICAgICB0aGlzLnNkQ2hhbmdlLmVtaXQoe1xyXG4gICAgICAgICAgICBmcm9tOiBudWxsLFxyXG4gICAgICAgICAgICB0bzogbnVsbFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KSk7XHJcbiAgICB0aGlzLiNvbkNoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gICNvbkNoYW5nZXMgPSAoKSA9PiB7XHJcbiAgICBjb25zdCBmcm9tID0gRGF0ZS5pc0RhdGUodGhpcy4jZnJvbSkgPyBtb21lbnQoRGF0ZS50b0Zvcm1hdCh0aGlzLiNmcm9tLCAnTU0vZGQveXl5eSBISDptbTpzcycpLCAnTU0vREQvWVlZWSBISDptbTpzcycpIDogIG51bGw7XHJcbiAgICBjb25zdCB0byA9IERhdGUuaXNEYXRlKHRoaXMuI3RvKSA/IG1vbWVudChEYXRlLnRvRm9ybWF0KHRoaXMuI3RvLCAnTU0vZGQveXl5eSBISDptbTpzcycpLCAnTU0vREQvWVlZWSBISDptbTpzcycpIDogIG51bGw7XHJcbiAgICB0aGlzLmNvbnRyb2wxLnNldFZhbHVlKGZyb20sIHtcclxuICAgICAgZW1pdEV2ZW50OiBmYWxzZVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmNvbnRyb2wyLnNldFZhbHVlKHRvLCB7XHJcbiAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgIH0pO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh7XHJcbiAgICAgIGZyb206IGZyb20sXHJcbiAgICAgIHRvOiB0b1xyXG4gICAgfSwge1xyXG4gICAgICBlbWl0RXZlbnQ6IGZhbHNlXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uU3RhcnRDaGFuZ2UgPSAoZXZlbnQ6IE1hdERhdGVwaWNrZXJJbnB1dEV2ZW50PE1vbWVudD4pID0+IHtcclxuICAgIGNvbnN0IHZhbHVlID0gZXZlbnQudmFsdWU/LnRvRGF0ZSgpIHx8IG51bGw7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgaWYgKG5ldyBEYXRlKHRoaXMuI2Zyb20pICE9PSB2YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuI2Zyb20gPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLmZyb21DaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuI2Zyb20gPSBudWxsO1xyXG4gICAgICB0aGlzLmZyb21DaGFuZ2UuZW1pdChudWxsKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRW5kQ2hhbmdlID0gKGV2ZW50OiBNYXREYXRlcGlja2VySW5wdXRFdmVudDxNb21lbnQ+KSA9PiB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnZhbHVlPy50b0RhdGUoKSB8fCBudWxsO1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIGlmIChuZXcgRGF0ZSh0aGlzLiN0bykgIT09IHZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy4jdG8gPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLnRvQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLiN0byA9IG51bGw7XHJcbiAgICAgIHRoaXMudG9DaGFuZ2UuZW1pdChudWxsKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNsZWFyID0gKCkgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sMS5zZXRWYWx1ZShudWxsLCB7XHJcbiAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgIH0pO1xyXG4gICAgdGhpcy5jb250cm9sMi5zZXRWYWx1ZShudWxsLCB7XHJcbiAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgIH0pO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh7XHJcbiAgICAgIGZyb206IG51bGwsXHJcbiAgICAgIHRvOiBudWxsXHJcbiAgICB9LCB7XHJcbiAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgIH0pO1xyXG4gICAgdGhpcy4jZnJvbSA9IG51bGw7XHJcbiAgICB0aGlzLiN0byA9IG51bGw7XHJcbiAgICB0aGlzLmZyb21DaGFuZ2UuZW1pdChudWxsKTtcclxuICAgIHRoaXMudG9DaGFuZ2UuZW1pdChudWxsKTtcclxuICAgIHRoaXMuc2RDaGFuZ2UuZW1pdCh0aGlzLmZvcm1Db250cm9sLnZhbHVlKTtcclxuICB9XHJcbn1cclxuIl19
237
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1L0Rlc2t0b3AvV29ya2luZy8xTUcvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9kYXRlLXJhbmdlLyIsInNvdXJjZXMiOlsic3JjL2xpYi9kYXRlLXJhbmdlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFlBQVksRUFDWixNQUFNLEVBSVAsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLFdBQVcsRUFBYSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLE1BQWtCLE1BQU0sUUFBUSxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5QyxNQUFNLG1CQUFtQixHQUFHO0lBQzFCLEtBQUssRUFBRTtRQUNMLFNBQVMsRUFBRSxZQUFZO0tBQ3hCO0lBQ0QsT0FBTyxFQUFFO1FBQ1AsU0FBUyxFQUFFLFlBQVk7UUFDdkIsY0FBYyxFQUFFLFVBQVU7UUFDMUIsYUFBYSxFQUFFLElBQUk7UUFDbkIsa0JBQWtCLEVBQUUsV0FBVztLQUNoQztDQUNGLENBQUM7V0FNbUQsbUJBQW1CO0FBRXhFLE1BQU0sT0FBTyxXQUFXO0lBbUZ0QixZQUNVLGVBQXNDO1FBQXRDLG9CQUFlLEdBQWYsZUFBZSxDQUF1QjtRQW5GaEQsUUFBRyxHQUFHLElBQUksSUFBSSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUM7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USxDQUFDLEtBQUssMENBQUUsTUFBTSxPQUFNLElBQUksQ0FBQztZQUNuRCxNQUFNLEVBQUUsR0FBRyxPQUFBLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSywwQ0FBRSxNQUFNLE9BQU0sSUFBSSxDQUFDO1lBQ2pELElBQUksd0NBQWUsSUFBSSxJQUFJLHNDQUFhLEVBQUUsRUFBRTtnQkFDMUMsSUFBSSxJQUFJLElBQUksRUFBRSxFQUFFO29CQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO3dCQUNqQixJQUFJO3dCQUNKLEVBQUU7cUJBQ0gsQ0FBQyxDQUFDO2lCQUNKO3FCQUFNLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxFQUFFLEVBQUU7b0JBQ3ZCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDO3dCQUNqQixJQUFJLEVBQUUsSUFBSTt3QkFDVixFQUFFLEVBQUUsSUFBSTtxQkFDVCxDQUFDLENBQUM7aUJBQ0o7YUFDRjtRQUNILENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDSiw4Q0FBQSxJQUFJLENBQWEsQ0FBQztJQUNwQixDQUFDOzs7O1lBOUhGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsZUFBZTtnQkFDekIscXFDQUEwQztnQkFFMUMsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxJQUFxQixFQUFFLENBQUM7O2FBQzFFOzs7WUF2QlEscUJBQXFCOzs7bUJBK0IzQixLQUFLO21CQUtMLEtBQUs7bUJBR0wsS0FBSzt1QkFVTCxLQUFLO3VCQVFMLEtBQUs7b0JBQ0wsS0FBSzttQ0FFTCxLQUFLLFNBQUMscUJBQXFCO21CQUszQixLQUFLLFNBQUMsS0FBSzttQkFRWCxLQUFLLFNBQUMsS0FBSzttQkFPWCxLQUFLO2lCQVNMLEtBQUs7dUJBU0wsTUFBTTt5QkFDTixNQUFNO3VCQUNOLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgT3V0cHV0LFxyXG4gIE9uRGVzdHJveSxcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIE9uSW5pdFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIEZvcm1Hcm91cCwgTmdGb3JtIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXREYXRlcGlja2VySW5wdXRFdmVudCwgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcclxuaW1wb3J0IHsgTUFUX0RBVEVfRk9STUFUUyB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xyXG5pbXBvcnQgeyBEZXZpY2VEZXRlY3RvclNlcnZpY2UgfSBmcm9tICduZ3gtZGV2aWNlLWRldGVjdG9yJztcclxuaW1wb3J0IG1vbWVudCwgeyBNb21lbnQgfSBmcm9tICdtb21lbnQnO1xyXG5pbXBvcnQgKiBhcyB1dWlkIGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBtZXJnZSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmNvbnN0IENVU1RPTV9EQVRFX0ZPUk1BVFMgPSB7XHJcbiAgcGFyc2U6IHtcclxuICAgIGRhdGVJbnB1dDogJ0REL01NL1lZWVknXHJcbiAgfSxcclxuICBkaXNwbGF5OiB7XHJcbiAgICBkYXRlSW5wdXQ6ICdERC9NTS9ZWVlZJyxcclxuICAgIG1vbnRoWWVhckxhYmVsOiAnTU1NIFlZWVknLFxyXG4gICAgZGF0ZUExMXlMYWJlbDogJ0xMJyxcclxuICAgIG1vbnRoWWVhckExMXlMYWJlbDogJ01NTU0gWVlZWSdcclxuICB9XHJcbn07XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NkLWRhdGUtcmFuZ2UnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kYXRlLXJhbmdlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kYXRlLXJhbmdlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBNQVRfREFURV9GT1JNQVRTLCB1c2VWYWx1ZTogQ1VTVE9NX0RBVEVfRk9STUFUUyB9XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkRGF0ZVJhbmdlIGltcGxlbWVudHMgT25EZXN0cm95LCBPbkluaXQsIEFmdGVyVmlld0luaXQge1xyXG4gIGlkMSA9IGBJJHt1dWlkLnY0KCl9YDtcclxuICBpZDIgPSBgSSR7dXVpZC52NCgpfWA7XHJcbiAgI2Zyb206IGFueSA9IG51bGw7XHJcbiAgI3RvOiBhbnkgPSBudWxsO1xyXG4gIGlzTW9iaWxlT3JUYWJsZXQgPSBmYWxzZTtcclxuICAjbmFtZSA9IHV1aWQudjQoKTtcclxuICBASW5wdXQoKSBzZXQgbmFtZSh2YWw6IHN0cmluZykge1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICB0aGlzLiNuYW1lID0gdmFsO1xyXG4gICAgfVxyXG4gIH1cclxuICBASW5wdXQoKSBzaXplOiAnc20nIHwgJ2xnJztcclxuICAjZm9ybTogRm9ybUdyb3VwO1xyXG4gIGZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XHJcbiAgQElucHV0KCkgc2V0IGZvcm0odmFsOiBOZ0Zvcm0gfCBGb3JtR3JvdXApIHtcclxuICAgIGlmICh2YWwpIHtcclxuICAgICAgaWYgKHZhbCBpbnN0YW5jZW9mIE5nRm9ybSkge1xyXG4gICAgICAgIHRoaXMuI2Zvcm0gPSB2YWwuZm9ybTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLiNmb3JtID0gdmFsO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG4gIC8vIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgc2V0IGRpc2FibGVkKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB2YWwgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gICAgaWYgKHZhbCkge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLmRpc2FibGUoKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuZW5hYmxlKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIEBJbnB1dCgpIHJlcXVpcmVkID0gZmFsc2U7XHJcbiAgQElucHV0KCkgbGFiZWw6IHN0cmluZztcclxuICBkaXNhYmxlRXJyb3JNZXNzYWdlID0gZmFsc2U7XHJcbiAgQElucHV0KCdkaXNhYmxlRXJyb3JNZXNzYWdlJykgc2V0IF9kaXNhYmxlRXJyb3JNZXNzYWdlKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB0aGlzLmRpc2FibGVFcnJvck1lc3NhZ2UgPSAodmFsID09PSAnJykgfHwgdmFsO1xyXG4gICAgdmFsID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICB9XHJcbiAgbWluOiBEYXRlO1xyXG4gIEBJbnB1dCgnbWluJykgc2V0IF9taW4odmFsOiBzdHJpbmcpIHtcclxuICAgIGlmIChEYXRlLmlzRGF0ZSh2YWwpKSB7XHJcbiAgICAgIHRoaXMubWluID0gbmV3IERhdGUodmFsKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubWluID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbiAgbWF4OiBEYXRlO1xyXG4gIEBJbnB1dCgnbWF4Jykgc2V0IF9tYXgodmFsOiBzdHJpbmcpIHtcclxuICAgIGlmIChEYXRlLmlzRGF0ZSh2YWwpKSB7XHJcbiAgICAgIHRoaXMubWF4ID0gbmV3IERhdGUodmFsKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMubWF4ID0gbnVsbDtcclxuICAgIH1cclxuICB9XHJcbiAgQElucHV0KCkgc2V0IGZyb20odmFsOiBhbnkpIHtcclxuICAgIGlmICghRGF0ZS5pc0RhdGUodmFsKSkge1xyXG4gICAgICB2YWwgPSBudWxsO1xyXG4gICAgfVxyXG4gICAgaWYgKHRoaXMuI2Zyb20gIT09IHZhbCkge1xyXG4gICAgICB0aGlzLiNmcm9tID0gdmFsO1xyXG4gICAgICB0aGlzLiNvbkNoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcbiAgQElucHV0KCkgc2V0IHRvKHZhbDogYW55KSB7XHJcbiAgICBpZiAoIURhdGUuaXNEYXRlKHZhbCkpIHtcclxuICAgICAgdmFsID0gbnVsbDtcclxuICAgIH1cclxuICAgIGlmICh0aGlzLiN0byAhPT0gdmFsKSB7XHJcbiAgICAgIHRoaXMuI3RvID0gdmFsO1xyXG4gICAgICB0aGlzLiNvbkNoYW5nZXMoKTtcclxuICAgIH1cclxuICB9XHJcbiAgQE91dHB1dCgpIHNkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjx7IGZyb206IERhdGUsIHRvOiBEYXRlIH0+KCk7XHJcbiAgQE91dHB1dCgpIGZyb21DaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHRvQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBjb250cm9sMSA9IG5ldyBGb3JtQ29udHJvbCgpO1xyXG4gICNjMSA9IHV1aWQudjQoKTtcclxuICBjb250cm9sMiA9IG5ldyBGb3JtQ29udHJvbCgpO1xyXG4gICNjMiA9IHV1aWQudjQoKTtcclxuICAjc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkZXRlY3RvclNlcnZpY2U6IERldmljZURldGVjdG9yU2VydmljZSkge1xyXG4gICAgdGhpcy5pc01vYmlsZU9yVGFibGV0ID0gIXRoaXMuZGV0ZWN0b3JTZXJ2aWNlLmlzRGVza3RvcCgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLiNmb3JtPy5yZW1vdmVDb250cm9sKHRoaXMuI2MxKTtcclxuICAgIHRoaXMuI2Zvcm0/LnJlbW92ZUNvbnRyb2wodGhpcy4jYzIpO1xyXG4gICAgdGhpcy4jZm9ybT8ucmVtb3ZlQ29udHJvbCh0aGlzLiNuYW1lKTtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICB0aGlzLiNmb3JtPy5hZGRDb250cm9sKHRoaXMuI2MxLCB0aGlzLmNvbnRyb2wxKTtcclxuICAgIHRoaXMuI2Zvcm0/LmFkZENvbnRyb2wodGhpcy4jYzIsIHRoaXMuY29udHJvbDIpO1xyXG4gICAgdGhpcy4jZm9ybT8uYWRkQ29udHJvbCh0aGlzLiNuYW1lLCB0aGlzLmZvcm1Db250cm9sKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQobWVyZ2UodGhpcy5jb250cm9sMS52YWx1ZUNoYW5nZXMsIHRoaXMuY29udHJvbDIudmFsdWVDaGFuZ2VzKS5waXBlKGRlYm91bmNlVGltZSg1MDApKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICBjb25zdCBmcm9tID0gdGhpcy5jb250cm9sMS52YWx1ZT8udG9EYXRlKCkgfHwgbnVsbDtcclxuICAgICAgY29uc3QgdG8gPSB0aGlzLmNvbnRyb2wyLnZhbHVlPy50b0RhdGUoKSB8fCBudWxsO1xyXG4gICAgICBpZiAodGhpcy4jZnJvbSAhPT0gZnJvbSB8fCB0aGlzLiN0byAhPT0gdG8pIHtcclxuICAgICAgICBpZiAoZnJvbSAmJiB0bykge1xyXG4gICAgICAgICAgdGhpcy5zZENoYW5nZS5lbWl0KHtcclxuICAgICAgICAgICAgZnJvbSxcclxuICAgICAgICAgICAgdG9cclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSBpZiAoIWZyb20gJiYgIXRvKSB7XHJcbiAgICAgICAgICB0aGlzLnNkQ2hhbmdlLmVtaXQoe1xyXG4gICAgICAgICAgICBmcm9tOiBudWxsLFxyXG4gICAgICAgICAgICB0bzogbnVsbFxyXG4gICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9KSk7XHJcbiAgICB0aGlzLiNvbkNoYW5nZXMoKTtcclxuICB9XHJcblxyXG4gICNvbkNoYW5nZXMgPSAoKSA9PiB7XHJcbiAgICBjb25zdCBmcm9tID0gRGF0ZS5pc0RhdGUodGhpcy4jZnJvbSkgPyBtb21lbnQoRGF0ZS50b0Zvcm1hdCh0aGlzLiNmcm9tLCAnTU0vZGQveXl5eSBISDptbTpzcycpLCAnTU0vREQvWVlZWSBISDptbTpzcycpIDogIG51bGw7XHJcbiAgICBjb25zdCB0byA9IERhdGUuaXNEYXRlKHRoaXMuI3RvKSA/IG1vbWVudChEYXRlLnRvRm9ybWF0KHRoaXMuI3RvLCAnTU0vZGQveXl5eSBISDptbTpzcycpLCAnTU0vREQvWVlZWSBISDptbTpzcycpIDogIG51bGw7XHJcbiAgICB0aGlzLmNvbnRyb2wxLnNldFZhbHVlKGZyb20sIHtcclxuICAgICAgZW1pdEV2ZW50OiBmYWxzZVxyXG4gICAgfSk7XHJcbiAgICB0aGlzLmNvbnRyb2wyLnNldFZhbHVlKHRvLCB7XHJcbiAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgIH0pO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh7XHJcbiAgICAgIGZyb206IGZyb20sXHJcbiAgICAgIHRvOiB0b1xyXG4gICAgfSwge1xyXG4gICAgICBlbWl0RXZlbnQ6IGZhbHNlXHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uU3RhcnRDaGFuZ2UgPSAoZXZlbnQ6IE1hdERhdGVwaWNrZXJJbnB1dEV2ZW50PE1vbWVudD4pID0+IHtcclxuICAgIGNvbnN0IHZhbHVlID0gZXZlbnQudmFsdWU/LnRvRGF0ZSgpIHx8IG51bGw7XHJcbiAgICBpZiAodmFsdWUpIHtcclxuICAgICAgaWYgKG5ldyBEYXRlKHRoaXMuI2Zyb20pICE9PSB2YWx1ZSkge1xyXG4gICAgICAgIHRoaXMuI2Zyb20gPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLmZyb21DaGFuZ2UuZW1pdCh2YWx1ZSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuI2Zyb20gPSBudWxsO1xyXG4gICAgICB0aGlzLmZyb21DaGFuZ2UuZW1pdChudWxsKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIG9uRW5kQ2hhbmdlID0gKGV2ZW50OiBNYXREYXRlcGlja2VySW5wdXRFdmVudDxNb21lbnQ+KSA9PiB7XHJcbiAgICBjb25zdCB2YWx1ZSA9IGV2ZW50LnZhbHVlPy50b0RhdGUoKSB8fCBudWxsO1xyXG4gICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgIGlmIChuZXcgRGF0ZSh0aGlzLiN0bykgIT09IHZhbHVlKSB7XHJcbiAgICAgICAgdGhpcy4jdG8gPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLnRvQ2hhbmdlLmVtaXQodmFsdWUpO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLiN0byA9IG51bGw7XHJcbiAgICAgIHRoaXMudG9DaGFuZ2UuZW1pdChudWxsKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNsZWFyID0gKCkgPT4ge1xyXG4gICAgdGhpcy5jb250cm9sMS5zZXRWYWx1ZShudWxsLCB7XHJcbiAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgIH0pO1xyXG4gICAgdGhpcy5jb250cm9sMi5zZXRWYWx1ZShudWxsLCB7XHJcbiAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgIH0pO1xyXG4gICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh7XHJcbiAgICAgIGZyb206IG51bGwsXHJcbiAgICAgIHRvOiBudWxsXHJcbiAgICB9LCB7XHJcbiAgICAgIGVtaXRFdmVudDogZmFsc2VcclxuICAgIH0pO1xyXG4gICAgdGhpcy4jZnJvbSA9IG51bGw7XHJcbiAgICB0aGlzLiN0byA9IG51bGw7XHJcbiAgICB0aGlzLmZyb21DaGFuZ2UuZW1pdChudWxsKTtcclxuICAgIHRoaXMudG9DaGFuZ2UuZW1pdChudWxsKTtcclxuICAgIHRoaXMuc2RDaGFuZ2UuZW1pdCh0aGlzLmZvcm1Db250cm9sLnZhbHVlKTtcclxuICB9XHJcbn1cclxuIl19
@@ -7,7 +7,6 @@ import { MatMomentDateModule } from '@angular/material-moment-adapter';
7
7
  import { SdDateRange } from './date-range.component';
8
8
  import { MatIconModule } from '@angular/material/icon';
9
9
  import { SdTranslateModule } from '@sd-angular/core/translate';
10
- import '@sd-angular/core/typing';
11
10
  export class SdDateRangeModule {
12
11
  }
13
12
  SdDateRangeModule.decorators = [
@@ -31,4 +30,4 @@ SdDateRangeModule.decorators = [
31
30
  providers: []
32
31
  },] }
33
32
  ];
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1L0Rlc2t0b3AvV29ya2luZy8xTUcvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9kYXRlLXJhbmdlLyIsInNvdXJjZXMiOlsic3JjL2xpYi9kYXRlLXJhbmdlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMvRCxPQUFPLHlCQUF5QixDQUFDO0FBc0JqQyxNQUFNLE9BQU8saUJBQWlCOzs7WUFwQjdCLFFBQVEsU0FBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixXQUFXO29CQUNYLG1CQUFtQjtvQkFDbkIsa0JBQWtCO29CQUNsQixhQUFhO29CQUNiLG1CQUFtQjtvQkFDbkIsbUJBQW1CO29CQUNuQixpQkFBaUI7aUJBQ2xCO2dCQUNELFlBQVksRUFBRTtvQkFDWixXQUFXO2lCQUNaO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxXQUFXO2lCQUNaO2dCQUNELFNBQVMsRUFBRSxFQUNWO2FBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSwgUmVhY3RpdmVGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XHJcbmltcG9ydCB7IE1hdERhdGVwaWNrZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kYXRlcGlja2VyJztcclxuaW1wb3J0IHsgTWF0TW9tZW50RGF0ZU1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsLW1vbWVudC1hZGFwdGVyJztcclxuaW1wb3J0IHsgU2REYXRlUmFuZ2UgfSBmcm9tICcuL2RhdGUtcmFuZ2UuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBTZFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvdHJhbnNsYXRlJztcclxuaW1wb3J0ICdAc2QtYW5ndWxhci9jb3JlL3R5cGluZyc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxyXG4gICAgTWF0TW9tZW50RGF0ZU1vZHVsZSxcclxuICAgIFNkVHJhbnNsYXRlTW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNkRGF0ZVJhbmdlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTZERhdGVSYW5nZVxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2REYXRlUmFuZ2VNb2R1bGUge1xyXG5cclxufVxyXG4iXX0=
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0ZS1yYW5nZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1L0Rlc2t0b3AvV29ya2luZy8xTUcvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS9kYXRlLXJhbmdlLyIsInNvdXJjZXMiOlsic3JjL2xpYi9kYXRlLXJhbmdlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQXNCL0QsTUFBTSxPQUFPLGlCQUFpQjs7O1lBcEI3QixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLFlBQVk7b0JBQ1osV0FBVztvQkFDWCxtQkFBbUI7b0JBQ25CLGtCQUFrQjtvQkFDbEIsYUFBYTtvQkFDYixtQkFBbUI7b0JBQ25CLG1CQUFtQjtvQkFDbkIsaUJBQWlCO2lCQUNsQjtnQkFDRCxZQUFZLEVBQUU7b0JBQ1osV0FBVztpQkFDWjtnQkFDRCxPQUFPLEVBQUU7b0JBQ1AsV0FBVztpQkFDWjtnQkFDRCxTQUFTLEVBQUUsRUFDVjthQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdEZvcm1GaWVsZE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXREYXRlcGlja2VyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGF0ZXBpY2tlcic7XHJcbmltcG9ydCB7IE1hdE1vbWVudERhdGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC1tb21lbnQtYWRhcHRlcic7XHJcbmltcG9ydCB7IFNkRGF0ZVJhbmdlIH0gZnJvbSAnLi9kYXRlLXJhbmdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcclxuaW1wb3J0IHsgU2RUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL3RyYW5zbGF0ZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcclxuICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcclxuICAgIE1hdEljb25Nb2R1bGUsXHJcbiAgICBNYXREYXRlcGlja2VyTW9kdWxlLFxyXG4gICAgTWF0TW9tZW50RGF0ZU1vZHVsZSxcclxuICAgIFNkVHJhbnNsYXRlTW9kdWxlXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFNkRGF0ZVJhbmdlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBTZERhdGVSYW5nZVxyXG4gIF0sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2REYXRlUmFuZ2VNb2R1bGUge1xyXG5cclxufVxyXG4iXX0=
@@ -1,4 +1,4 @@
1
- import '@sd-angular/core/typing';
1
+ import '@sd-angular/core/common';
2
2
  export * from './lib/date-range.module';
3
3
  export * from './lib/date-range.component';
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTUvRGVza3RvcC9Xb3JraW5nLzFNRy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2RhdGUtcmFuZ2UvIiwic291cmNlcyI6WyJzcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLHlCQUF5QixDQUFDO0FBQ2pDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS90eXBpbmcnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXJhbmdlLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtcmFuZ2UuY29tcG9uZW50JztcclxuIl19
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTUvRGVza3RvcC9Xb3JraW5nLzFNRy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL2RhdGUtcmFuZ2UvIiwic291cmNlcyI6WyJzcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLHlCQUF5QixDQUFDO0FBQ2pDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAnQHNkLWFuZ3VsYXIvY29yZS9jb21tb24nO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXJhbmdlLm1vZHVsZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGUtcmFuZ2UuY29tcG9uZW50JztcclxuIl19