@porscheinformatik/clr-addons 11.0.0 → 12.0.0

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 (530) hide show
  1. package/abstract-form-component/abstract-form-component.d.ts +11 -3
  2. package/abstract-form-component/control-id.service.d.ts +11 -0
  3. package/abstract-form-component/form.module.d.ts +7 -0
  4. package/abstract-form-component/index.d.ts +2 -0
  5. package/abstract-form-component/label.d.ts +16 -0
  6. package/autocomplete-off/autocomplete-off.directive.d.ts +3 -0
  7. package/autocomplete-off/autocomplete-off.module.d.ts +5 -0
  8. package/autocomplete-off/index.d.ts +2 -0
  9. package/back-button/back-button.d.ts +3 -0
  10. package/back-button/back-button.module.d.ts +8 -0
  11. package/brand-avatar/brand-avatar.d.ts +3 -0
  12. package/brand-avatar/brand-avatar.module.d.ts +7 -0
  13. package/breadcrumb/breadcrumb.d.ts +4 -1
  14. package/breadcrumb/breadcrumb.module.d.ts +8 -0
  15. package/breadcrumb/breadcrumb.service.d.ts +3 -0
  16. package/clr-addons.d.ts +1 -9
  17. package/clr-addons.module.d.ts +30 -0
  18. package/collapse-expand-section/collapse-expand-section.d.ts +3 -0
  19. package/collapse-expand-section/collapse-expand-section.module.d.ts +8 -0
  20. package/content-panel/content-panel-container-content.d.ts +3 -0
  21. package/content-panel/content-panel-container-footer.d.ts +3 -0
  22. package/content-panel/content-panel-container.d.ts +3 -0
  23. package/content-panel/content-panel.d.ts +3 -0
  24. package/content-panel/content-panel.module.d.ts +11 -0
  25. package/data-list-validator/data-list-predefined-validator.directive.d.ts +3 -0
  26. package/data-list-validator/data-list-validator.module.d.ts +5 -0
  27. package/date-time-container/date-time-container.d.ts +3 -0
  28. package/date-time-container/date-time-module.d.ts +9 -0
  29. package/date-time-container/time-input.d.ts +3 -0
  30. package/dot-pager/dot-pager.d.ts +3 -0
  31. package/dot-pager/dot-pager.module.d.ts +8 -0
  32. package/esm2020/abstract-form-component/abstract-form-component.mjs +100 -0
  33. package/esm2020/abstract-form-component/control-id.service.mjs +31 -0
  34. package/esm2020/abstract-form-component/form.module.mjs +21 -0
  35. package/esm2020/abstract-form-component/index.mjs +3 -0
  36. package/esm2020/abstract-form-component/label.mjs +41 -0
  37. package/esm2020/autocomplete-off/autocomplete-off.directive.mjs +21 -0
  38. package/esm2020/autocomplete-off/autocomplete-off.module.mjs +21 -0
  39. package/esm2020/autocomplete-off/index.mjs +3 -0
  40. package/esm2020/back-button/back-button.mjs +25 -0
  41. package/esm2020/back-button/back-button.module.mjs +25 -0
  42. package/{esm2015/back-button/index.js → esm2020/back-button/index.mjs} +0 -0
  43. package/esm2020/brand-avatar/brand-avatar.mjs +60 -0
  44. package/esm2020/brand-avatar/brand-avatar.module.mjs +24 -0
  45. package/{esm2015/brand-avatar/index.js → esm2020/brand-avatar/index.mjs} +0 -0
  46. package/{esm2015/breadcrumb/breadcrumb-model.interface.js → esm2020/breadcrumb/breadcrumb-model.interface.mjs} +0 -0
  47. package/esm2020/breadcrumb/breadcrumb.mjs +37 -0
  48. package/esm2020/breadcrumb/breadcrumb.module.mjs +27 -0
  49. package/esm2020/breadcrumb/breadcrumb.service.mjs +25 -0
  50. package/{esm2015/breadcrumb/index.js → esm2020/breadcrumb/index.mjs} +0 -0
  51. package/esm2020/clr-addons.mjs +5 -0
  52. package/esm2020/clr-addons.module.mjs +122 -0
  53. package/esm2020/collapse-expand-section/collapse-expand-section.mjs +80 -0
  54. package/esm2020/collapse-expand-section/collapse-expand-section.module.mjs +25 -0
  55. package/{esm2015/collapse-expand-section/index.js → esm2020/collapse-expand-section/index.mjs} +0 -0
  56. package/esm2020/content-panel/content-panel-container-content.mjs +22 -0
  57. package/esm2020/content-panel/content-panel-container-footer.mjs +22 -0
  58. package/esm2020/content-panel/content-panel-container.mjs +35 -0
  59. package/esm2020/content-panel/content-panel.mjs +79 -0
  60. package/esm2020/content-panel/content-panel.module.mjs +36 -0
  61. package/{esm2015/content-panel/index.js → esm2020/content-panel/index.mjs} +0 -0
  62. package/esm2020/data-list-validator/data-list-predefined-validator.directive.mjs +33 -0
  63. package/esm2020/data-list-validator/data-list-validator.module.mjs +21 -0
  64. package/{esm2015/data-list-validator/data-list.validator.js → esm2020/data-list-validator/data-list.validator.mjs} +0 -0
  65. package/{esm2015/data-list-validator/index.js → esm2020/data-list-validator/index.mjs} +0 -0
  66. package/esm2020/date-time-container/date-time-container.mjs +53 -0
  67. package/esm2020/date-time-container/date-time-module.mjs +26 -0
  68. package/{esm2015/date-time-container/index.js → esm2020/date-time-container/index.mjs} +0 -0
  69. package/esm2020/date-time-container/time-input.mjs +21 -0
  70. package/esm2020/dot-pager/dot-pager.mjs +58 -0
  71. package/esm2020/dot-pager/dot-pager.module.mjs +25 -0
  72. package/{esm2015/dot-pager/index.js → esm2020/dot-pager/index.mjs} +0 -0
  73. package/esm2020/flow-bar/flow-bar.mjs +160 -0
  74. package/esm2020/flow-bar/flow-bar.module.mjs +25 -0
  75. package/{esm2015/flow-bar/index.js → esm2020/flow-bar/index.mjs} +0 -0
  76. package/esm2020/generic-quick-list/generic-quick-list.mjs +93 -0
  77. package/esm2020/generic-quick-list/generic-quick-list.module.mjs +24 -0
  78. package/{esm2015/generic-quick-list/index.js → esm2020/generic-quick-list/index.mjs} +0 -0
  79. package/{esm2015/history/history-model.interface.js → esm2020/history/history-model.interface.mjs} +0 -0
  80. package/esm2020/history/history-pinned.mjs +49 -0
  81. package/esm2020/history/history.mjs +70 -0
  82. package/esm2020/history/history.module.mjs +26 -0
  83. package/esm2020/history/history.service.mjs +206 -0
  84. package/{esm2015/history/index.js → esm2020/history/index.mjs} +0 -0
  85. package/{esm2015/icons/index.js → esm2020/icons/index.mjs} +0 -0
  86. package/{esm2015/icons/shapes.js → esm2020/icons/shapes.mjs} +0 -0
  87. package/{esm2015/icons/svg-tag-generator.js → esm2020/icons/svg-tag-generator.mjs} +0 -0
  88. package/esm2020/index.mjs +35 -0
  89. package/{esm2015/letter-avatar/index.js → esm2020/letter-avatar/index.mjs} +0 -0
  90. package/esm2020/letter-avatar/letter-avatar.mjs +52 -0
  91. package/esm2020/letter-avatar/letter-avatar.module.mjs +24 -0
  92. package/esm2020/location-bar/index.mjs +5 -0
  93. package/esm2020/location-bar/location-bar-node/location-bar-node.component.mjs +97 -0
  94. package/esm2020/location-bar/location-bar.component.mjs +48 -0
  95. package/esm2020/location-bar/location-bar.model.mjs +63 -0
  96. package/esm2020/location-bar/location-bar.module.mjs +20 -0
  97. package/esm2020/location-bar/location-bar.provider.mjs +10 -0
  98. package/{esm2015/main-nav-group/index.js → esm2020/main-nav-group/index.mjs} +0 -0
  99. package/esm2020/main-nav-group/main-nav-group-item.mjs +27 -0
  100. package/esm2020/main-nav-group/main-nav-group.mjs +153 -0
  101. package/esm2020/main-nav-group/main-nav-group.module.mjs +26 -0
  102. package/esm2020/multilingual/abstract-multilingual.mjs +60 -0
  103. package/{esm2015/multilingual/index.js → esm2020/multilingual/index.mjs} +0 -0
  104. package/esm2020/multilingual/multilingual-input/multilingual-input.mjs +40 -0
  105. package/esm2020/multilingual/multilingual-selector.mjs +81 -0
  106. package/esm2020/multilingual/multilingual-textarea/multilingual-textarea.mjs +40 -0
  107. package/esm2020/multilingual/multilingual-validators.mjs +104 -0
  108. package/esm2020/multilingual/multilingual.module.mjs +48 -0
  109. package/{esm2015/notification/index.js → esm2020/notification/index.mjs} +0 -0
  110. package/{esm2015/notification/notification-ref.js → esm2020/notification/notification-ref.mjs} +0 -0
  111. package/esm2020/notification/notification.mjs +134 -0
  112. package/esm2020/notification/notification.module.mjs +24 -0
  113. package/esm2020/notification/notification.service.mjs +92 -0
  114. package/{esm2015/notification/scheduler-utils.js → esm2020/notification/scheduler-utils.mjs} +0 -0
  115. package/{esm2015/numericfield/index.js → esm2020/numericfield/index.mjs} +0 -0
  116. package/esm2020/numericfield/numeric-field-validators.mjs +140 -0
  117. package/esm2020/numericfield/numeric-field.mjs +372 -0
  118. package/esm2020/numericfield/numeric-field.module.mjs +26 -0
  119. package/{esm2015/paged-search-result-list/index.js → esm2020/paged-search-result-list/index.mjs} +0 -0
  120. package/esm2020/paged-search-result-list/paged-search-result-list.mjs +49 -0
  121. package/esm2020/paged-search-result-list/paged-search-result-list.module.mjs +26 -0
  122. package/{esm2015/pager/index.js → esm2020/pager/index.mjs} +0 -0
  123. package/esm2020/pager/pager.mjs +135 -0
  124. package/esm2020/pager/pager.module.mjs +25 -0
  125. package/{esm2015/progress-spinner/index.js → esm2020/progress-spinner/index.mjs} +0 -0
  126. package/esm2020/progress-spinner/progress-spinner.mjs +78 -0
  127. package/esm2020/progress-spinner/progress-spinner.module.mjs +23 -0
  128. package/{esm2015/public_api.js → esm2020/public_api.mjs} +0 -0
  129. package/esm2020/quick-list/add-option.mjs +65 -0
  130. package/{esm2015/quick-list/add-option.service.js → esm2020/quick-list/add-option.service.mjs} +0 -0
  131. package/{esm2015/quick-list/index.js → esm2020/quick-list/index.mjs} +0 -0
  132. package/esm2020/quick-list/quick-list.mjs +122 -0
  133. package/esm2020/quick-list/quick-list.module.mjs +26 -0
  134. package/{esm2015/searchfield/index.js → esm2020/searchfield/index.mjs} +0 -0
  135. package/esm2020/searchfield/search-field.mjs +100 -0
  136. package/esm2020/searchfield/search-field.module.mjs +25 -0
  137. package/{esm2015/treetable/index.js → esm2020/treetable/index.mjs} +3 -2
  138. package/esm2020/treetable/renderer/cell-renderer.mjs +28 -0
  139. package/esm2020/treetable/renderer/header-renderer.mjs +41 -0
  140. package/esm2020/treetable/renderer/index.mjs +5 -0
  141. package/esm2020/treetable/renderer/main-renderer.mjs +103 -0
  142. package/esm2020/treetable/renderer/row-renderer.mjs +20 -0
  143. package/esm2020/treetable/treetable-action-overflow.mjs +92 -0
  144. package/esm2020/treetable/treetable-cell.mjs +23 -0
  145. package/esm2020/treetable/treetable-column.mjs +23 -0
  146. package/esm2020/treetable/treetable-placeholder.mjs +30 -0
  147. package/esm2020/treetable/treetable-row.mjs +99 -0
  148. package/esm2020/treetable/treetable.mjs +73 -0
  149. package/esm2020/treetable/treetable.module.mjs +63 -0
  150. package/{esm2015/util/escape.util.js → esm2020/util/escape.util.mjs} +0 -0
  151. package/{esm2015/util/index.js → esm2020/util/index.mjs} +0 -0
  152. package/{esm2015/view-edit-section/index.js → esm2020/view-edit-section/index.mjs} +0 -0
  153. package/esm2020/view-edit-section/view-edit-section.mjs +83 -0
  154. package/esm2020/view-edit-section/view-edit-section.module.mjs +25 -0
  155. package/fesm2015/{clr-addons.js → clr-addons.mjs} +1858 -1009
  156. package/fesm2015/clr-addons.mjs.map +1 -0
  157. package/fesm2020/clr-addons.mjs +4991 -0
  158. package/fesm2020/clr-addons.mjs.map +1 -0
  159. package/flow-bar/flow-bar.d.ts +3 -0
  160. package/flow-bar/flow-bar.module.d.ts +8 -0
  161. package/generic-quick-list/generic-quick-list.d.ts +3 -0
  162. package/generic-quick-list/generic-quick-list.module.d.ts +7 -0
  163. package/history/history-pinned.d.ts +3 -0
  164. package/history/history.d.ts +3 -0
  165. package/history/history.module.d.ts +9 -0
  166. package/history/history.service.d.ts +3 -0
  167. package/index.d.ts +3 -0
  168. package/letter-avatar/letter-avatar.d.ts +3 -0
  169. package/letter-avatar/letter-avatar.module.d.ts +7 -0
  170. package/location-bar/index.d.ts +4 -0
  171. package/location-bar/location-bar-node/location-bar-node.component.d.ts +47 -0
  172. package/location-bar/location-bar.component.d.ts +15 -0
  173. package/location-bar/location-bar.model.d.ts +54 -0
  174. package/location-bar/location-bar.module.d.ts +10 -0
  175. package/location-bar/location-bar.provider.d.ts +18 -0
  176. package/main-nav-group/main-nav-group-item.d.ts +3 -0
  177. package/main-nav-group/main-nav-group.d.ts +3 -0
  178. package/main-nav-group/main-nav-group.module.d.ts +9 -0
  179. package/multilingual/abstract-multilingual.d.ts +3 -0
  180. package/multilingual/multilingual-input/multilingual-input.d.ts +3 -0
  181. package/multilingual/multilingual-selector.d.ts +3 -0
  182. package/multilingual/multilingual-textarea/multilingual-textarea.d.ts +3 -0
  183. package/multilingual/multilingual-validators.d.ts +5 -0
  184. package/multilingual/multilingual.module.d.ts +11 -0
  185. package/notification/notification.d.ts +3 -0
  186. package/notification/notification.module.d.ts +8 -0
  187. package/notification/notification.service.d.ts +3 -0
  188. package/numericfield/numeric-field-validators.d.ts +5 -0
  189. package/numericfield/numeric-field.d.ts +3 -0
  190. package/numericfield/numeric-field.module.d.ts +9 -0
  191. package/package.json +27 -13
  192. package/paged-search-result-list/paged-search-result-list.d.ts +3 -0
  193. package/paged-search-result-list/paged-search-result-list.module.d.ts +9 -0
  194. package/pager/pager.d.ts +3 -0
  195. package/pager/pager.module.d.ts +8 -0
  196. package/progress-spinner/progress-spinner.d.ts +3 -0
  197. package/progress-spinner/progress-spinner.module.d.ts +6 -0
  198. package/quick-list/add-option.d.ts +4 -0
  199. package/quick-list/quick-list.d.ts +10 -3
  200. package/quick-list/quick-list.module.d.ts +9 -0
  201. package/searchfield/search-field.d.ts +4 -1
  202. package/searchfield/search-field.module.d.ts +8 -0
  203. package/src/components.clr-addons.scss +13 -4
  204. package/src/header.clr-addons.scss +12 -1
  205. package/src/location-bar/location-bar-node/location-bar-node.component.scss +54 -0
  206. package/src/mobile.scss +1 -1
  207. package/styles/clr-addons-phs.css +61 -4
  208. package/styles/clr-addons-phs.css.map +1 -1
  209. package/styles/clr-addons-phs.min.css +1 -1
  210. package/styles/clr-addons-phs.min.css.map +1 -1
  211. package/treetable/index.d.ts +1 -0
  212. package/treetable/renderer/cell-renderer.d.ts +3 -0
  213. package/treetable/renderer/header-renderer.d.ts +3 -0
  214. package/treetable/renderer/index.d.ts +4 -0
  215. package/treetable/renderer/main-renderer.d.ts +3 -0
  216. package/treetable/renderer/row-renderer.d.ts +3 -0
  217. package/treetable/treetable-action-overflow.d.ts +4 -1
  218. package/treetable/treetable-cell.d.ts +3 -0
  219. package/treetable/treetable-column.d.ts +3 -0
  220. package/treetable/treetable-placeholder.d.ts +3 -0
  221. package/treetable/treetable-row.d.ts +3 -0
  222. package/treetable/treetable.d.ts +3 -0
  223. package/treetable/treetable.module.d.ts +16 -0
  224. package/view-edit-section/view-edit-section.d.ts +3 -0
  225. package/view-edit-section/view-edit-section.module.d.ts +8 -0
  226. package/autocomplete-off/autocomplete-off.module.ngfactory.d.ts +0 -3
  227. package/back-button/back-button.module.ngfactory.d.ts +0 -3
  228. package/back-button/back-button.ngfactory.d.ts +0 -1
  229. package/brand-avatar/brand-avatar.module.ngfactory.d.ts +0 -3
  230. package/brand-avatar/brand-avatar.ngfactory.d.ts +0 -1
  231. package/breadcrumb/breadcrumb.module.ngfactory.d.ts +0 -3
  232. package/breadcrumb/breadcrumb.ngfactory.d.ts +0 -1
  233. package/bundles/clr-addons.umd.js +0 -4860
  234. package/bundles/clr-addons.umd.js.map +0 -1
  235. package/clr-addons.metadata.json +0 -1
  236. package/clr-addons.module.ngfactory.d.ts +0 -3
  237. package/collapse-expand-section/collapse-expand-section.module.ngfactory.d.ts +0 -3
  238. package/collapse-expand-section/collapse-expand-section.ngfactory.d.ts +0 -1
  239. package/content-panel/content-panel-container-content.ngfactory.d.ts +0 -1
  240. package/content-panel/content-panel-container-footer.ngfactory.d.ts +0 -1
  241. package/content-panel/content-panel-container.ngfactory.d.ts +0 -1
  242. package/content-panel/content-panel.module.ngfactory.d.ts +0 -3
  243. package/content-panel/content-panel.ngfactory.d.ts +0 -1
  244. package/data-list-validator/data-list-validator.module.ngfactory.d.ts +0 -3
  245. package/date-time-container/date-time-container.ngfactory.d.ts +0 -1
  246. package/date-time-container/date-time-module.ngfactory.d.ts +0 -3
  247. package/dot-pager/dot-pager.module.ngfactory.d.ts +0 -3
  248. package/dot-pager/dot-pager.ngfactory.d.ts +0 -1
  249. package/esm2015/abstract-form-component/abstract-form-component.js +0 -77
  250. package/esm2015/abstract-form-component/abstract-form-component.ngsummary.json +0 -1
  251. package/esm2015/autocomplete-off/autocomplete-off.directive.js +0 -17
  252. package/esm2015/autocomplete-off/autocomplete-off.directive.ngsummary.json +0 -1
  253. package/esm2015/autocomplete-off/autocomplete-off.module.js +0 -16
  254. package/esm2015/autocomplete-off/autocomplete-off.module.ngfactory.js +0 -13
  255. package/esm2015/autocomplete-off/autocomplete-off.module.ngsummary.json +0 -1
  256. package/esm2015/back-button/back-button.js +0 -25
  257. package/esm2015/back-button/back-button.module.js +0 -20
  258. package/esm2015/back-button/back-button.module.ngfactory.js +0 -17
  259. package/esm2015/back-button/back-button.module.ngsummary.json +0 -1
  260. package/esm2015/back-button/back-button.ngfactory.js +0 -23
  261. package/esm2015/back-button/back-button.ngsummary.json +0 -1
  262. package/esm2015/back-button/index.ngsummary.json +0 -1
  263. package/esm2015/brand-avatar/brand-avatar.js +0 -54
  264. package/esm2015/brand-avatar/brand-avatar.module.js +0 -19
  265. package/esm2015/brand-avatar/brand-avatar.module.ngfactory.js +0 -17
  266. package/esm2015/brand-avatar/brand-avatar.module.ngsummary.json +0 -1
  267. package/esm2015/brand-avatar/brand-avatar.ngfactory.js +0 -19
  268. package/esm2015/brand-avatar/brand-avatar.ngsummary.json +0 -1
  269. package/esm2015/brand-avatar/index.ngsummary.json +0 -1
  270. package/esm2015/breadcrumb/breadcrumb-model.interface.ngsummary.json +0 -1
  271. package/esm2015/breadcrumb/breadcrumb.js +0 -36
  272. package/esm2015/breadcrumb/breadcrumb.module.js +0 -22
  273. package/esm2015/breadcrumb/breadcrumb.module.ngfactory.js +0 -20
  274. package/esm2015/breadcrumb/breadcrumb.module.ngsummary.json +0 -1
  275. package/esm2015/breadcrumb/breadcrumb.ngfactory.js +0 -28
  276. package/esm2015/breadcrumb/breadcrumb.ngsummary.json +0 -1
  277. package/esm2015/breadcrumb/breadcrumb.service.js +0 -23
  278. package/esm2015/breadcrumb/breadcrumb.service.ngsummary.json +0 -1
  279. package/esm2015/breadcrumb/index.ngsummary.json +0 -1
  280. package/esm2015/clr-addons.js +0 -14
  281. package/esm2015/clr-addons.module.js +0 -63
  282. package/esm2015/clr-addons.module.ngfactory.js +0 -45
  283. package/esm2015/clr-addons.module.ngsummary.json +0 -1
  284. package/esm2015/clr-addons.ngsummary.json +0 -1
  285. package/esm2015/collapse-expand-section/collapse-expand-section.js +0 -55
  286. package/esm2015/collapse-expand-section/collapse-expand-section.module.js +0 -20
  287. package/esm2015/collapse-expand-section/collapse-expand-section.module.ngfactory.js +0 -17
  288. package/esm2015/collapse-expand-section/collapse-expand-section.module.ngsummary.json +0 -1
  289. package/esm2015/collapse-expand-section/collapse-expand-section.ngfactory.js +0 -30
  290. package/esm2015/collapse-expand-section/collapse-expand-section.ngsummary.json +0 -1
  291. package/esm2015/collapse-expand-section/index.ngsummary.json +0 -1
  292. package/esm2015/content-panel/content-panel-container-content.js +0 -18
  293. package/esm2015/content-panel/content-panel-container-content.ngfactory.js +0 -18
  294. package/esm2015/content-panel/content-panel-container-content.ngsummary.json +0 -1
  295. package/esm2015/content-panel/content-panel-container-footer.js +0 -18
  296. package/esm2015/content-panel/content-panel-container-footer.ngfactory.js +0 -18
  297. package/esm2015/content-panel/content-panel-container-footer.ngsummary.json +0 -1
  298. package/esm2015/content-panel/content-panel-container.js +0 -25
  299. package/esm2015/content-panel/content-panel-container.ngfactory.js +0 -18
  300. package/esm2015/content-panel/content-panel-container.ngsummary.json +0 -1
  301. package/esm2015/content-panel/content-panel.js +0 -67
  302. package/esm2015/content-panel/content-panel.module.js +0 -28
  303. package/esm2015/content-panel/content-panel.module.ngfactory.js +0 -17
  304. package/esm2015/content-panel/content-panel.module.ngsummary.json +0 -1
  305. package/esm2015/content-panel/content-panel.ngfactory.js +0 -33
  306. package/esm2015/content-panel/content-panel.ngsummary.json +0 -1
  307. package/esm2015/content-panel/index.ngsummary.json +0 -1
  308. package/esm2015/data-list-validator/data-list-predefined-validator.directive.js +0 -30
  309. package/esm2015/data-list-validator/data-list-predefined-validator.directive.ngsummary.json +0 -1
  310. package/esm2015/data-list-validator/data-list-validator.module.js +0 -16
  311. package/esm2015/data-list-validator/data-list-validator.module.ngfactory.js +0 -13
  312. package/esm2015/data-list-validator/data-list-validator.module.ngsummary.json +0 -1
  313. package/esm2015/data-list-validator/data-list.validator.ngsummary.json +0 -1
  314. package/esm2015/data-list-validator/index.ngsummary.json +0 -1
  315. package/esm2015/date-time-container/date-time-container.js +0 -45
  316. package/esm2015/date-time-container/date-time-container.ngfactory.js +0 -19
  317. package/esm2015/date-time-container/date-time-container.ngsummary.json +0 -1
  318. package/esm2015/date-time-container/date-time-module.js +0 -21
  319. package/esm2015/date-time-container/date-time-module.ngfactory.js +0 -17
  320. package/esm2015/date-time-container/date-time-module.ngsummary.json +0 -1
  321. package/esm2015/date-time-container/index.ngsummary.json +0 -1
  322. package/esm2015/date-time-container/time-input.js +0 -17
  323. package/esm2015/date-time-container/time-input.ngsummary.json +0 -1
  324. package/esm2015/dot-pager/dot-pager.js +0 -51
  325. package/esm2015/dot-pager/dot-pager.module.js +0 -20
  326. package/esm2015/dot-pager/dot-pager.module.ngfactory.js +0 -17
  327. package/esm2015/dot-pager/dot-pager.module.ngsummary.json +0 -1
  328. package/esm2015/dot-pager/dot-pager.ngfactory.js +0 -48
  329. package/esm2015/dot-pager/dot-pager.ngsummary.json +0 -1
  330. package/esm2015/dot-pager/index.ngsummary.json +0 -1
  331. package/esm2015/flow-bar/flow-bar.js +0 -154
  332. package/esm2015/flow-bar/flow-bar.module.js +0 -20
  333. package/esm2015/flow-bar/flow-bar.module.ngfactory.js +0 -17
  334. package/esm2015/flow-bar/flow-bar.module.ngsummary.json +0 -1
  335. package/esm2015/flow-bar/flow-bar.ngfactory.js +0 -33
  336. package/esm2015/flow-bar/flow-bar.ngsummary.json +0 -1
  337. package/esm2015/flow-bar/index.ngsummary.json +0 -1
  338. package/esm2015/generic-quick-list/generic-quick-list.js +0 -72
  339. package/esm2015/generic-quick-list/generic-quick-list.module.js +0 -19
  340. package/esm2015/generic-quick-list/generic-quick-list.module.ngfactory.js +0 -17
  341. package/esm2015/generic-quick-list/generic-quick-list.module.ngsummary.json +0 -1
  342. package/esm2015/generic-quick-list/generic-quick-list.ngfactory.js +0 -31
  343. package/esm2015/generic-quick-list/generic-quick-list.ngsummary.json +0 -1
  344. package/esm2015/generic-quick-list/index.ngsummary.json +0 -1
  345. package/esm2015/history/history-model.interface.ngsummary.json +0 -1
  346. package/esm2015/history/history-pinned.js +0 -45
  347. package/esm2015/history/history-pinned.ngfactory.js +0 -23
  348. package/esm2015/history/history-pinned.ngsummary.json +0 -1
  349. package/esm2015/history/history.js +0 -55
  350. package/esm2015/history/history.module.js +0 -21
  351. package/esm2015/history/history.module.ngfactory.js +0 -19
  352. package/esm2015/history/history.module.ngsummary.json +0 -1
  353. package/esm2015/history/history.ngfactory.js +0 -36
  354. package/esm2015/history/history.ngsummary.json +0 -1
  355. package/esm2015/history/history.service.js +0 -204
  356. package/esm2015/history/history.service.ngsummary.json +0 -1
  357. package/esm2015/history/index.ngsummary.json +0 -1
  358. package/esm2015/icons/index.ngsummary.json +0 -1
  359. package/esm2015/icons/shapes.ngsummary.json +0 -1
  360. package/esm2015/icons/svg-tag-generator.ngsummary.json +0 -1
  361. package/esm2015/index.js +0 -32
  362. package/esm2015/index.ngsummary.json +0 -1
  363. package/esm2015/letter-avatar/index.ngsummary.json +0 -1
  364. package/esm2015/letter-avatar/letter-avatar.js +0 -48
  365. package/esm2015/letter-avatar/letter-avatar.module.js +0 -19
  366. package/esm2015/letter-avatar/letter-avatar.module.ngfactory.js +0 -17
  367. package/esm2015/letter-avatar/letter-avatar.module.ngsummary.json +0 -1
  368. package/esm2015/letter-avatar/letter-avatar.ngfactory.js +0 -18
  369. package/esm2015/letter-avatar/letter-avatar.ngsummary.json +0 -1
  370. package/esm2015/main-nav-group/index.ngsummary.json +0 -1
  371. package/esm2015/main-nav-group/main-nav-group-item.js +0 -27
  372. package/esm2015/main-nav-group/main-nav-group-item.ngsummary.json +0 -1
  373. package/esm2015/main-nav-group/main-nav-group.js +0 -153
  374. package/esm2015/main-nav-group/main-nav-group.module.js +0 -21
  375. package/esm2015/main-nav-group/main-nav-group.module.ngfactory.js +0 -17
  376. package/esm2015/main-nav-group/main-nav-group.module.ngsummary.json +0 -1
  377. package/esm2015/main-nav-group/main-nav-group.ngfactory.js +0 -26
  378. package/esm2015/main-nav-group/main-nav-group.ngsummary.json +0 -1
  379. package/esm2015/multilingual/abstract-multilingual.js +0 -50
  380. package/esm2015/multilingual/abstract-multilingual.ngsummary.json +0 -1
  381. package/esm2015/multilingual/index.ngsummary.json +0 -1
  382. package/esm2015/multilingual/multilingual-input/multilingual-input.js +0 -32
  383. package/esm2015/multilingual/multilingual-input/multilingual-input.ngfactory.js +0 -46
  384. package/esm2015/multilingual/multilingual-input/multilingual-input.ngsummary.json +0 -1
  385. package/esm2015/multilingual/multilingual-selector.js +0 -46
  386. package/esm2015/multilingual/multilingual-selector.ngfactory.js +0 -28
  387. package/esm2015/multilingual/multilingual-selector.ngsummary.json +0 -1
  388. package/esm2015/multilingual/multilingual-textarea/multilingual-textarea.js +0 -32
  389. package/esm2015/multilingual/multilingual-textarea/multilingual-textarea.ngfactory.js +0 -46
  390. package/esm2015/multilingual/multilingual-textarea/multilingual-textarea.ngsummary.json +0 -1
  391. package/esm2015/multilingual/multilingual-validators.js +0 -97
  392. package/esm2015/multilingual/multilingual-validators.ngsummary.json +0 -1
  393. package/esm2015/multilingual/multilingual.module.js +0 -35
  394. package/esm2015/multilingual/multilingual.module.ngfactory.js +0 -17
  395. package/esm2015/multilingual/multilingual.module.ngsummary.json +0 -1
  396. package/esm2015/notification/index.ngsummary.json +0 -1
  397. package/esm2015/notification/notification-ref.ngsummary.json +0 -1
  398. package/esm2015/notification/notification.js +0 -114
  399. package/esm2015/notification/notification.module.js +0 -20
  400. package/esm2015/notification/notification.module.ngfactory.js +0 -18
  401. package/esm2015/notification/notification.module.ngsummary.json +0 -1
  402. package/esm2015/notification/notification.ngfactory.js +0 -25
  403. package/esm2015/notification/notification.ngsummary.json +0 -1
  404. package/esm2015/notification/notification.service.js +0 -92
  405. package/esm2015/notification/notification.service.ngsummary.json +0 -1
  406. package/esm2015/notification/scheduler-utils.ngsummary.json +0 -1
  407. package/esm2015/numericfield/index.ngsummary.json +0 -1
  408. package/esm2015/numericfield/numeric-field-validators.js +0 -125
  409. package/esm2015/numericfield/numeric-field-validators.ngsummary.json +0 -1
  410. package/esm2015/numericfield/numeric-field.js +0 -348
  411. package/esm2015/numericfield/numeric-field.module.js +0 -21
  412. package/esm2015/numericfield/numeric-field.module.ngfactory.js +0 -17
  413. package/esm2015/numericfield/numeric-field.module.ngsummary.json +0 -1
  414. package/esm2015/numericfield/numeric-field.ngsummary.json +0 -1
  415. package/esm2015/paged-search-result-list/index.ngsummary.json +0 -1
  416. package/esm2015/paged-search-result-list/paged-search-result-list.js +0 -34
  417. package/esm2015/paged-search-result-list/paged-search-result-list.module.js +0 -21
  418. package/esm2015/paged-search-result-list/paged-search-result-list.module.ngfactory.js +0 -18
  419. package/esm2015/paged-search-result-list/paged-search-result-list.module.ngsummary.json +0 -1
  420. package/esm2015/paged-search-result-list/paged-search-result-list.ngfactory.js +0 -31
  421. package/esm2015/paged-search-result-list/paged-search-result-list.ngsummary.json +0 -1
  422. package/esm2015/pager/index.ngsummary.json +0 -1
  423. package/esm2015/pager/pager.js +0 -125
  424. package/esm2015/pager/pager.module.js +0 -20
  425. package/esm2015/pager/pager.module.ngfactory.js +0 -17
  426. package/esm2015/pager/pager.module.ngsummary.json +0 -1
  427. package/esm2015/pager/pager.ngfactory.js +0 -43
  428. package/esm2015/pager/pager.ngsummary.json +0 -1
  429. package/esm2015/progress-spinner/index.ngsummary.json +0 -1
  430. package/esm2015/progress-spinner/progress-spinner.js +0 -69
  431. package/esm2015/progress-spinner/progress-spinner.module.js +0 -18
  432. package/esm2015/progress-spinner/progress-spinner.module.ngfactory.js +0 -12
  433. package/esm2015/progress-spinner/progress-spinner.module.ngsummary.json +0 -1
  434. package/esm2015/progress-spinner/progress-spinner.ngfactory.js +0 -18
  435. package/esm2015/progress-spinner/progress-spinner.ngsummary.json +0 -1
  436. package/esm2015/public_api.ngsummary.json +0 -1
  437. package/esm2015/quick-list/add-option.js +0 -51
  438. package/esm2015/quick-list/add-option.ngfactory.js +0 -36
  439. package/esm2015/quick-list/add-option.ngsummary.json +0 -1
  440. package/esm2015/quick-list/add-option.service.ngsummary.json +0 -1
  441. package/esm2015/quick-list/index.ngsummary.json +0 -1
  442. package/esm2015/quick-list/quick-list.js +0 -78
  443. package/esm2015/quick-list/quick-list.module.js +0 -21
  444. package/esm2015/quick-list/quick-list.module.ngfactory.js +0 -17
  445. package/esm2015/quick-list/quick-list.module.ngsummary.json +0 -1
  446. package/esm2015/quick-list/quick-list.ngfactory.js +0 -32
  447. package/esm2015/quick-list/quick-list.ngsummary.json +0 -1
  448. package/esm2015/searchfield/index.ngsummary.json +0 -1
  449. package/esm2015/searchfield/search-field.js +0 -100
  450. package/esm2015/searchfield/search-field.module.js +0 -20
  451. package/esm2015/searchfield/search-field.module.ngfactory.js +0 -17
  452. package/esm2015/searchfield/search-field.module.ngsummary.json +0 -1
  453. package/esm2015/searchfield/search-field.ngsummary.json +0 -1
  454. package/esm2015/treetable/index.ngsummary.json +0 -1
  455. package/esm2015/treetable/renderer/cell-renderer.js +0 -28
  456. package/esm2015/treetable/renderer/cell-renderer.ngsummary.json +0 -1
  457. package/esm2015/treetable/renderer/header-renderer.js +0 -41
  458. package/esm2015/treetable/renderer/header-renderer.ngsummary.json +0 -1
  459. package/esm2015/treetable/renderer/main-renderer.js +0 -93
  460. package/esm2015/treetable/renderer/main-renderer.ngsummary.json +0 -1
  461. package/esm2015/treetable/renderer/row-renderer.js +0 -16
  462. package/esm2015/treetable/renderer/row-renderer.ngsummary.json +0 -1
  463. package/esm2015/treetable/treetable-action-overflow.js +0 -77
  464. package/esm2015/treetable/treetable-action-overflow.ngfactory.js +0 -31
  465. package/esm2015/treetable/treetable-action-overflow.ngsummary.json +0 -1
  466. package/esm2015/treetable/treetable-cell.js +0 -19
  467. package/esm2015/treetable/treetable-cell.ngfactory.js +0 -18
  468. package/esm2015/treetable/treetable-cell.ngsummary.json +0 -1
  469. package/esm2015/treetable/treetable-column.js +0 -19
  470. package/esm2015/treetable/treetable-column.ngfactory.js +0 -18
  471. package/esm2015/treetable/treetable-column.ngsummary.json +0 -1
  472. package/esm2015/treetable/treetable-placeholder.js +0 -21
  473. package/esm2015/treetable/treetable-placeholder.ngfactory.js +0 -16
  474. package/esm2015/treetable/treetable-placeholder.ngsummary.json +0 -1
  475. package/esm2015/treetable/treetable-row.js +0 -80
  476. package/esm2015/treetable/treetable-row.ngfactory.js +0 -30
  477. package/esm2015/treetable/treetable-row.ngsummary.json +0 -1
  478. package/esm2015/treetable/treetable.js +0 -67
  479. package/esm2015/treetable/treetable.module.js +0 -40
  480. package/esm2015/treetable/treetable.module.ngfactory.js +0 -17
  481. package/esm2015/treetable/treetable.module.ngsummary.json +0 -1
  482. package/esm2015/treetable/treetable.ngfactory.js +0 -18
  483. package/esm2015/treetable/treetable.ngsummary.json +0 -1
  484. package/esm2015/util/escape.util.ngsummary.json +0 -1
  485. package/esm2015/util/index.ngsummary.json +0 -1
  486. package/esm2015/view-edit-section/index.ngsummary.json +0 -1
  487. package/esm2015/view-edit-section/view-edit-section.js +0 -57
  488. package/esm2015/view-edit-section/view-edit-section.module.js +0 -20
  489. package/esm2015/view-edit-section/view-edit-section.module.ngfactory.js +0 -17
  490. package/esm2015/view-edit-section/view-edit-section.module.ngsummary.json +0 -1
  491. package/esm2015/view-edit-section/view-edit-section.ngfactory.js +0 -48
  492. package/esm2015/view-edit-section/view-edit-section.ngsummary.json +0 -1
  493. package/fesm2015/clr-addons.js.map +0 -1
  494. package/flow-bar/flow-bar.module.ngfactory.d.ts +0 -3
  495. package/flow-bar/flow-bar.ngfactory.d.ts +0 -1
  496. package/generic-quick-list/generic-quick-list.module.ngfactory.d.ts +0 -3
  497. package/generic-quick-list/generic-quick-list.ngfactory.d.ts +0 -1
  498. package/history/history-pinned.ngfactory.d.ts +0 -1
  499. package/history/history.module.ngfactory.d.ts +0 -3
  500. package/history/history.ngfactory.d.ts +0 -1
  501. package/letter-avatar/letter-avatar.module.ngfactory.d.ts +0 -3
  502. package/letter-avatar/letter-avatar.ngfactory.d.ts +0 -1
  503. package/main-nav-group/main-nav-group.module.ngfactory.d.ts +0 -3
  504. package/main-nav-group/main-nav-group.ngfactory.d.ts +0 -1
  505. package/multilingual/multilingual-input/multilingual-input.ngfactory.d.ts +0 -1
  506. package/multilingual/multilingual-selector.ngfactory.d.ts +0 -1
  507. package/multilingual/multilingual-textarea/multilingual-textarea.ngfactory.d.ts +0 -1
  508. package/multilingual/multilingual.module.ngfactory.d.ts +0 -3
  509. package/notification/notification.module.ngfactory.d.ts +0 -3
  510. package/notification/notification.ngfactory.d.ts +0 -1
  511. package/numericfield/numeric-field.module.ngfactory.d.ts +0 -3
  512. package/paged-search-result-list/paged-search-result-list.module.ngfactory.d.ts +0 -3
  513. package/paged-search-result-list/paged-search-result-list.ngfactory.d.ts +0 -1
  514. package/pager/pager.module.ngfactory.d.ts +0 -3
  515. package/pager/pager.ngfactory.d.ts +0 -1
  516. package/progress-spinner/progress-spinner.module.ngfactory.d.ts +0 -3
  517. package/progress-spinner/progress-spinner.ngfactory.d.ts +0 -1
  518. package/quick-list/add-option.ngfactory.d.ts +0 -1
  519. package/quick-list/quick-list.module.ngfactory.d.ts +0 -3
  520. package/quick-list/quick-list.ngfactory.d.ts +0 -1
  521. package/searchfield/search-field.module.ngfactory.d.ts +0 -3
  522. package/treetable/treetable-action-overflow.ngfactory.d.ts +0 -1
  523. package/treetable/treetable-cell.ngfactory.d.ts +0 -1
  524. package/treetable/treetable-column.ngfactory.d.ts +0 -1
  525. package/treetable/treetable-placeholder.ngfactory.d.ts +0 -1
  526. package/treetable/treetable-row.ngfactory.d.ts +0 -1
  527. package/treetable/treetable.module.ngfactory.d.ts +0 -3
  528. package/treetable/treetable.ngfactory.d.ts +0 -1
  529. package/view-edit-section/view-edit-section.module.ngfactory.d.ts +0 -3
  530. package/view-edit-section/view-edit-section.ngfactory.d.ts +0 -1
@@ -1,348 +0,0 @@
1
- /*
2
- * Copyright (c) 2018-2021 Porsche Informatik. All Rights Reserved.
3
- * This software is released under MIT license.
4
- * The full license information can be found in LICENSE in the root directory of this project.
5
- */
6
- import { Directive, ElementRef, EventEmitter, forwardRef, Input, Output, Renderer2, } from '@angular/core';
7
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
8
- const NEGATIVE = '-';
9
- const BACK_KEYCODE = 8;
10
- const DEL_KEYCODE = 46;
11
- const CONTROL_KEYCODES_UPPER_BORDER = 46;
12
- const OTHER_CONTROL_KEYS = new Set([224, 91, 93]);
13
- const NUMBERS = new Set(['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']);
14
- export class ClrNumericField {
15
- constructor(renderer, inputEl) {
16
- this.renderer = renderer;
17
- this.inputEl = inputEl;
18
- this.textAlign = 'right';
19
- this.decimalPlaces = 2;
20
- this.roundValue = false;
21
- this.autofillDecimals = false;
22
- this.decimalSeparator = ',';
23
- this.groupingSeparator = '.';
24
- this.unitPosition = 'right';
25
- this.numericValueChanged = new EventEmitter();
26
- this.displayValue = '';
27
- this.originalValue = NaN;
28
- this._unit = null;
29
- this.allowedKeys = new Set(NUMBERS);
30
- /* Control Values Accessor Stuff below */
31
- // eslint-disable-next-line @typescript-eslint/no-empty-function
32
- this.onChange = (_) => { };
33
- // eslint-disable-next-line @typescript-eslint/no-empty-function
34
- this.onTouched = () => { };
35
- }
36
- set numericValue(value) {
37
- if (this._numericValue !== value && !(isNaN(this._numericValue) && (isNaN(value) || value === null))) {
38
- this.originalValue = value;
39
- this._numericValue = this.roundOrTruncate(value);
40
- this.handleInputChanged();
41
- }
42
- }
43
- set unit(value) {
44
- if (value != this._unit) {
45
- this._unit = value;
46
- if (this.unitSpan != null) {
47
- this.unitSpan.innerHTML = '';
48
- const newUnitText = this.renderer.createText(value);
49
- this.renderer.appendChild(this.unitSpan, newUnitText);
50
- }
51
- }
52
- }
53
- registerOnChange(fn) {
54
- this.onChange = fn;
55
- }
56
- registerOnTouched(fn) {
57
- this.onTouched = fn;
58
- }
59
- setDisabledState(isDisabled) {
60
- this.renderer.setProperty(this.inputEl.nativeElement, 'disabled', isDisabled);
61
- }
62
- writeValue(value) {
63
- this.numericValue = value;
64
- }
65
- ngOnInit() {
66
- /* needs to be parsed as number explicitly as it comes as string from user input */
67
- this.decimalPlaces = Number.parseInt(this.decimalPlaces.toString(), 10);
68
- this.allowedKeys.add(NEGATIVE);
69
- this.allowedKeys.add(this.decimalSeparator);
70
- this.inputChangeListener = this.renderer.listen(this.inputEl.nativeElement, 'blur', event => {
71
- this.formatInput(event.target, true);
72
- });
73
- this.keyupListener = this.renderer.listen(this.inputEl.nativeElement, 'keyup', event => {
74
- if (event.keyCode === BACK_KEYCODE ||
75
- (event.keyCode >= CONTROL_KEYCODES_UPPER_BORDER && !OTHER_CONTROL_KEYS.has(event.keyCode))) {
76
- this.formatInput(event.target, false);
77
- }
78
- });
79
- this.keydownListener = this.renderer.listen(this.inputEl.nativeElement, 'keydown', event => {
80
- const value = event.target.value;
81
- if (this.allowedKeys.has(event.key) ||
82
- (event.keyCode <= CONTROL_KEYCODES_UPPER_BORDER && event.keyCode > 0) ||
83
- event.metaKey ||
84
- event.ctrlKey ||
85
- event.altKey) {
86
- /* allow negative sign only as first character and none exists outside of text selection */
87
- const indexNegativeSign = value.indexOf(NEGATIVE);
88
- if (event.key === NEGATIVE &&
89
- (event.target.selectionStart > 0 || indexNegativeSign > -1) &&
90
- (event.target.selectionStart === event.target.selectionEnd ||
91
- !(indexNegativeSign >= event.target.selectionStart && indexNegativeSign <= event.target.selectionEnd))) {
92
- return false;
93
- }
94
- /* no duplicate decimal separators */
95
- const indexDecimalSep = value.indexOf(this.decimalSeparator);
96
- if (event.key === this.decimalSeparator &&
97
- (indexDecimalSep > -1 || this.decimalPlaces === 0) &&
98
- (event.target.selectionStart === event.target.selectionEnd ||
99
- !(indexDecimalSep >= event.target.selectionStart && indexDecimalSep <= event.target.selectionEnd))) {
100
- return false;
101
- }
102
- /* prevent too many decimal places */
103
- if (NUMBERS.has(event.key) &&
104
- indexDecimalSep > -1 &&
105
- indexDecimalSep < event.target.selectionStart &&
106
- event.target.selectionStart === event.target.selectionEnd &&
107
- value.length > indexDecimalSep + this.decimalPlaces) {
108
- return false;
109
- }
110
- /* when deleting thousand separator, remove the digit before or after it */
111
- const cursorStart = event.target.selectionStart;
112
- if (cursorStart === event.target.selectionEnd) {
113
- if (event.keyCode === BACK_KEYCODE && value.substr(cursorStart - 1, 1) === this.groupingSeparator) {
114
- event.target.value = value.substring(0, cursorStart - 2) + value.substring(cursorStart - 1, value.length);
115
- event.target.selectionStart = event.target.selectionEnd = cursorStart - 1;
116
- return false;
117
- }
118
- else if (event.keyCode === DEL_KEYCODE && value.substr(cursorStart, 1) === this.groupingSeparator) {
119
- event.target.value = value.substring(0, cursorStart + 1) + value.substring(cursorStart + 2, value.length);
120
- event.target.selectionStart = event.target.selectionEnd = cursorStart + 1;
121
- return false;
122
- }
123
- }
124
- this.originalValue = NaN;
125
- }
126
- else {
127
- return false;
128
- }
129
- return true;
130
- });
131
- }
132
- ngOnDestroy() {
133
- this.detachListener();
134
- }
135
- ngAfterViewChecked() {
136
- this.injectUnitSymbol();
137
- }
138
- handleInputChanged() {
139
- this.updateInput(this.formatNumber(this._numericValue.toString().replace(new RegExp('[.]', 'g'), this.decimalSeparator), true), true);
140
- }
141
- formatInput(element, finalFormatting) {
142
- const cursorPos = element.selectionStart;
143
- const length = element.value.length;
144
- const setCursor = this.displayValue !== element.value;
145
- this.updateInput(this.formatNumber(element.value, finalFormatting), false);
146
- if (setCursor) {
147
- element.selectionStart = element.selectionEnd = Math.max(cursorPos + element.value.length - length, 0);
148
- }
149
- }
150
- formatNumber(value, finalFormatting) {
151
- let result = this.strip(value, finalFormatting);
152
- /* add grouping separator */
153
- const decimalIndex = result.indexOf(this.decimalSeparator);
154
- const isNegative = result[0] === NEGATIVE;
155
- let i = decimalIndex > -1 ? decimalIndex : result.length;
156
- while (i > (isNegative ? 4 : 3)) {
157
- i -= 3;
158
- result = result.substring(0, i) + this.groupingSeparator + result.substring(i, result.length);
159
- }
160
- if (finalFormatting) {
161
- if (this.decimalPlaces > 0 && !!result) {
162
- /* autofill decimal places */
163
- let actualDecimalIndex = result.indexOf(this.decimalSeparator);
164
- if (this.autofillDecimals) {
165
- if (actualDecimalIndex === -1) {
166
- actualDecimalIndex = result.length;
167
- result += this.decimalSeparator;
168
- }
169
- result = this.addMissingLeadingZero(result, actualDecimalIndex);
170
- actualDecimalIndex = result.indexOf(this.decimalSeparator);
171
- const actualDecimalPlaces = result.length - actualDecimalIndex - 1;
172
- for (let j = 0; j < this.decimalPlaces - actualDecimalPlaces; j++) {
173
- result += '0';
174
- }
175
- }
176
- else {
177
- result = this.addMissingLeadingZero(result, actualDecimalIndex);
178
- }
179
- }
180
- }
181
- return result;
182
- }
183
- addMissingLeadingZero(result, actualDecimalIndex) {
184
- const isNegative = result[0] === NEGATIVE;
185
- /* autoadd a zero before decimal separator, when it's missing */
186
- if (actualDecimalIndex === 0) {
187
- result = '0' + result;
188
- }
189
- /* autoadd a zero before decimal separator, when it's missing, for negative values */
190
- if (actualDecimalIndex === 1 && isNegative) {
191
- result = result[0] + '0' + result.substring(1, result.length);
192
- }
193
- return result;
194
- }
195
- strip(value, removeLeadingZeros = false) {
196
- let result = '';
197
- let indexDecimalSep = -1;
198
- let j = -1;
199
- let ignoredChars = 0;
200
- for (const char of value) {
201
- j++;
202
- if (this.allowedKeys.has(char)) {
203
- if (char === this.decimalSeparator) {
204
- if (this.decimalPlaces === 0) {
205
- /* dismiss content after a decimal separator, when no places allowed */
206
- break;
207
- }
208
- else if (indexDecimalSep > -1) {
209
- /* ignore subsequent decimal separators */
210
- continue;
211
- }
212
- indexDecimalSep = j;
213
- }
214
- if (char === '0' && removeLeadingZeros) {
215
- /* remove leading zero only if it's not the only zero in the 'value' string */
216
- if ((result.length === 0 && j + 1 !== value.length) || result === NEGATIVE) {
217
- ignoredChars++;
218
- continue;
219
- }
220
- }
221
- if (char === NEGATIVE && j > 0) {
222
- /* dismiss content after a negative sign not on first position */
223
- break;
224
- }
225
- if (indexDecimalSep > -1 && result.length + ignoredChars > indexDecimalSep + this.decimalPlaces) {
226
- /* dismiss content after maximum decimal places reached */
227
- break;
228
- }
229
- result += char;
230
- }
231
- else if (char === this.groupingSeparator) {
232
- if (indexDecimalSep === -1) {
233
- ignoredChars++;
234
- }
235
- }
236
- else {
237
- /* dismiss content after a invalid character */
238
- break;
239
- }
240
- }
241
- return result;
242
- }
243
- updateInput(value, updateAsync) {
244
- this.displayValue = value;
245
- this.inputEl.nativeElement.value = value;
246
- this._numericValue = parseFloat(this.strip(value).replace(this.decimalSeparator, '.'));
247
- if (this._numericValue !== this.roundOrTruncate(this.originalValue)) {
248
- this.originalValue = this._numericValue;
249
- if (updateAsync) {
250
- // Call in setTimeout to avoid Expression has changed after it has been checked error.
251
- // This happens for example if the initial input has more decimal places than allowed
252
- setTimeout(() => this.numericValueChanged.emit(this._numericValue));
253
- }
254
- else {
255
- this.numericValueChanged.emit(this._numericValue);
256
- }
257
- }
258
- }
259
- getValueForFormControl() {
260
- this.formatInput(this.inputEl.nativeElement, false);
261
- if (isNaN(this._numericValue)) {
262
- // Return undefined instead of NaN to support the default required validator.
263
- return undefined;
264
- }
265
- return this._numericValue;
266
- }
267
- injectUnitSymbol() {
268
- // Need to inject the unit symbol when the input element width is set to its actual value,
269
- // otherwise the icon wont show in the correct position
270
- if (!!this._unit && !this.unitSpan && this.inputEl.nativeElement.offsetWidth !== 0) {
271
- // Get the input wrapper and apply necessary styles
272
- const inputWrapper = this.inputEl.nativeElement.parentNode;
273
- this.renderer.addClass(inputWrapper, 'numeric-input-wrapper');
274
- // Create the span with unit symbol and apply necessary styles
275
- if (!this.unitSpan) {
276
- this.unitSpan = this.renderer.createElement('span');
277
- this.renderer.addClass(this.unitSpan, 'unit');
278
- const unitSymbol = this.renderer.createText(this._unit);
279
- this.renderer.appendChild(this.unitSpan, unitSymbol);
280
- this.renderer.appendChild(inputWrapper, this.unitSpan);
281
- }
282
- // Add padding to the input element, depending on the width of the unit symbol + 12px
283
- const paddingOnInput = this.unitSpan.offsetWidth + 12;
284
- if (this.unitPosition === 'left') {
285
- this.renderer.addClass(this.unitSpan, 'unit-left');
286
- this.renderer.setStyle(this.inputEl.nativeElement, 'padding-left', paddingOnInput + 'px');
287
- }
288
- else {
289
- this.renderer.addClass(this.unitSpan, 'unit-right');
290
- this.renderer.setStyle(this.inputEl.nativeElement, 'padding-right', paddingOnInput + 'px');
291
- }
292
- }
293
- }
294
- detachListener() {
295
- if (this.inputChangeListener) {
296
- this.inputChangeListener();
297
- delete this.inputChangeListener;
298
- }
299
- if (this.keydownListener) {
300
- this.keydownListener();
301
- delete this.keydownListener;
302
- }
303
- if (this.keyupListener) {
304
- this.keyupListener();
305
- delete this.keyupListener;
306
- }
307
- }
308
- roundOrTruncate(value) {
309
- const method = this.roundValue ? 'round' : value < 0 ? 'ceil' : 'floor';
310
- // 16 is the highest precision before numbers have weird behaviour. see https://stackoverflow.com/q/21472828/15120942
311
- return Math[method](+(value * Math.pow(10, this.decimalPlaces)).toPrecision(16)) / Math.pow(10, this.decimalPlaces);
312
- }
313
- }
314
- ClrNumericField.decorators = [
315
- { type: Directive, args: [{
316
- selector: '[clrNumeric]',
317
- host: {
318
- '[class.text-right]': 'textAlign === "right"',
319
- '(change)': 'onChange(getValueForFormControl())',
320
- '(input)': 'onChange(getValueForFormControl())',
321
- '(blur)': 'onTouched()',
322
- },
323
- providers: [
324
- {
325
- provide: NG_VALUE_ACCESSOR,
326
- useExisting: forwardRef(() => ClrNumericField),
327
- multi: true,
328
- },
329
- ],
330
- },] }
331
- ];
332
- ClrNumericField.ctorParameters = () => [
333
- { type: Renderer2 },
334
- { type: ElementRef }
335
- ];
336
- ClrNumericField.propDecorators = {
337
- textAlign: [{ type: Input, args: ['clrTextAlign',] }],
338
- decimalPlaces: [{ type: Input, args: ['clrDecimalPlaces',] }],
339
- roundValue: [{ type: Input, args: ['clrRoundDisplayValue',] }],
340
- autofillDecimals: [{ type: Input, args: ['clrAutofillDecimals',] }],
341
- decimalSeparator: [{ type: Input, args: ['clrDecimalSep',] }],
342
- groupingSeparator: [{ type: Input, args: ['clrGroupingSep',] }],
343
- unitPosition: [{ type: Input, args: ['clrUnitPosition',] }],
344
- numericValueChanged: [{ type: Output, args: ['clrNumericValueChange',] }],
345
- numericValue: [{ type: Input, args: ['clrNumericValue',] }],
346
- unit: [{ type: Input, args: ['clrUnit',] }]
347
- };
348
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jbHItYWRkb25zL251bWVyaWNmaWVsZC9udW1lcmljLWZpZWxkLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFFSCxPQUFPLEVBRUwsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUM7QUFDckIsTUFBTSxZQUFZLEdBQUcsQ0FBQyxDQUFDO0FBQ3ZCLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztBQUN2QixNQUFNLDZCQUE2QixHQUFHLEVBQUUsQ0FBQztBQUN6QyxNQUFNLGtCQUFrQixHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDO0FBQ2xELE1BQU0sT0FBTyxHQUFHLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztBQWtCNUUsTUFBTSxPQUFPLGVBQWU7SUFnRTFCLFlBQW9CLFFBQW1CLEVBQVUsT0FBbUI7UUFBaEQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVk7UUEvRDdDLGNBQVMsR0FBRyxPQUFPLENBQUM7UUFDaEIsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFDZCxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLHFCQUFnQixHQUFHLEtBQUssQ0FBQztRQUMvQixxQkFBZ0IsR0FBRyxHQUFH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LENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdEgsQ0FBQzs7O1lBeldGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsY0FBYztnQkFDeEIsSUFBSSxFQUFFO29CQUNKLG9CQUFvQixFQUFFLHVCQUF1QjtvQkFDN0MsVUFBVSxFQUFFLG9DQUFvQztvQkFDaEQsU0FBUyxFQUFFLG9DQUFvQztvQkFDL0MsUUFBUSxFQUFFLGFBQWE7aUJBQ3hCO2dCQUNELFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQzt3QkFDOUMsS0FBSyxFQUFFLElBQUk7cUJBQ1o7aUJBQ0Y7YUFDRjs7O1lBMUJDLFNBQVM7WUFQVCxVQUFVOzs7d0JBbUNULEtBQUssU0FBQyxjQUFjOzRCQUNwQixLQUFLLFNBQUMsa0JBQWtCO3lCQUN4QixLQUFLLFNBQUMsc0JBQXNCOytCQUM1QixLQUFLLFNBQUMscUJBQXFCOytCQUMzQixLQUFLLFNBQUMsZUFBZTtnQ0FDckIsS0FBSyxTQUFDLGdCQUFnQjsyQkFDdEIsS0FBSyxTQUFDLGlCQUFpQjtrQ0FDdkIsTUFBTSxTQUFDLHVCQUF1QjsyQkFVOUIsS0FBSyxTQUFDLGlCQUFpQjttQkFTdkIsS0FBSyxTQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IChjKSAyMDE4LTIwMjEgUG9yc2NoZSBJbmZvcm1hdGlrLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICogVGhpcyBzb2Z0d2FyZSBpcyByZWxlYXNlZCB1bmRlciBNSVQgbGljZW5zZS5cbiAqIFRoZSBmdWxsIGxpY2Vuc2UgaW5mb3JtYXRpb24gY2FuIGJlIGZvdW5kIGluIExJQ0VOU0UgaW4gdGhlIHJvb3QgZGlyZWN0b3J5IG9mIHRoaXMgcHJvamVjdC5cbiAqL1xuXG5pbXBvcnQge1xuICBBZnRlclZpZXdDaGVja2VkLFxuICBEaXJlY3RpdmUsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSW5wdXQsXG4gIE9uRGVzdHJveSxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFJlbmRlcmVyMixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmNvbnN0IE5FR0FUSVZFID0gJy0nO1xuY29uc3QgQkFDS19LRVlDT0RFID0gODtcbmNvbnN0IERFTF9LRVlDT0RFID0gNDY7XG5jb25zdCBDT05UUk9MX0tFWUNPREVTX1VQUEVSX0JPUkRFUiA9IDQ2O1xuY29uc3QgT1RIRVJfQ09OVFJPTF9LRVlTID0gbmV3IFNldChbMjI0LCA5MSwgOTNdKTtcbmNvbnN0IE5VTUJFUlMgPSBuZXcgU2V0KFsnMCcsICcxJywgJzInLCAnMycsICc0JywgJzUnLCAnNicsICc3JywgJzgnLCAnOSddKTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2Nsck51bWVyaWNdJyxcbiAgaG9zdDoge1xuICAgICdbY2xhc3MudGV4dC1yaWdodF0nOiAndGV4dEFsaWduID09PSBcInJpZ2h0XCInLFxuICAgICcoY2hhbmdlKSc6ICdvbkNoYW5nZShnZXRWYWx1ZUZvckZvcm1Db250cm9sKCkpJyxcbiAgICAnKGlucHV0KSc6ICdvbkNoYW5nZShnZXRWYWx1ZUZvckZvcm1Db250cm9sKCkpJyxcbiAgICAnKGJsdXIpJzogJ29uVG91Y2hlZCgpJyxcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDbHJOdW1lcmljRmllbGQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQ2xyTnVtZXJpY0ZpZWxkIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3ksIEFmdGVyVmlld0NoZWNrZWQsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgQElucHV0KCdjbHJUZXh0QWxpZ24nKSB0ZXh0QWxpZ24gPSAncmlnaHQnO1xuICBASW5wdXQoJ2NsckRlY2ltYWxQbGFjZXMnKSBkZWNpbWFsUGxhY2VzID0gMjtcbiAgQElucHV0KCdjbHJSb3VuZERpc3BsYXlWYWx1ZScpIHJvdW5kVmFsdWUgPSBmYWxzZTtcbiAgQElucHV0KCdjbHJBdXRvZmlsbERlY2ltYWxzJykgYXV0b2ZpbGxEZWNpbWFscyA9IGZhbHNlO1xuICBASW5wdXQoJ2NsckRlY2ltYWxTZXAnKSBkZWNpbWFsU2VwYXJhdG9yID0gJywnO1xuICBASW5wdXQoJ2Nsckdyb3VwaW5nU2VwJykgZ3JvdXBpbmdTZXBhcmF0b3IgPSAnLic7XG4gIEBJbnB1dCgnY2xyVW5pdFBvc2l0aW9uJykgdW5pdFBvc2l0aW9uID0gJ3JpZ2h0JztcbiAgQE91dHB1dCgnY2xyTnVtZXJpY1ZhbHVlQ2hhbmdlJykgbnVtZXJpY1ZhbHVlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIHByaXZhdGUgZGlzcGxheVZhbHVlID0gJyc7XG4gIHByaXZhdGUgb3JpZ2luYWxWYWx1ZSA9IE5hTjtcbiAgcHJpdmF0ZSBfbnVtZXJpY1ZhbHVlOiBudW1iZXI7XG4gIHByaXZhdGUgX3VuaXQ6IHN0cmluZyA9IG51bGw7XG4gIHByaXZhdGUgaW5wdXRDaGFuZ2VMaXN0ZW5lcjogKCkgPT4gdm9pZDtcbiAgcHJpdmF0ZSBrZXl1cExpc3RlbmVyOiAoKSA9PiB2b2lkO1xuICBwcml2YXRlIGtleWRvd25MaXN0ZW5lcjogKCkgPT4gdm9pZDtcblxuICBASW5wdXQoJ2Nsck51bWVyaWNWYWx1ZScpXG4gIHNldCBudW1lcmljVmFsdWUodmFsdWU6IG51bWJlcikge1xuICAgIGlmICh0aGlzLl9udW1lcmljVmFsdWUgIT09IHZhbHVlICYmICEoaXNOYU4odGhpcy5fbnVtZXJpY1ZhbHVlKSAmJiAoaXNOYU4odmFsdWUpIHx8IHZhbHVlID09PSBudWxsKSkpIHtcbiAgICAgIHRoaXMub3JpZ2luYWxWYWx1ZSA9IHZhbHVlO1xuICAgICAgdGhpcy5fbnVtZXJpY1ZhbHVlID0gdGhpcy5yb3VuZE9yVHJ1bmNhdGUodmFsdWUpO1xuICAgICAgdGhpcy5oYW5kbGVJbnB1dENoYW5nZWQoKTtcbiAgICB9XG4gIH1cblxuICBASW5wdXQoJ2NsclVuaXQnKVxuICBzZXQgdW5pdCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgaWYgKHZhbHVlICE9IHRoaXMuX3VuaXQpIHtcbiAgICAgIHRoaXMuX3VuaXQgPSB2YWx1ZTtcbiAgICAgIGlmICh0aGlzLnVuaXRTcGFuICE9IG51bGwpIHtcbiAgICAgICAgdGhpcy51bml0U3Bhbi5pbm5lckhUTUwgPSAnJztcbiAgICAgICAgY29uc3QgbmV3VW5pdFRleHQgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZVRleHQodmFsdWUpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFwcGVuZENoaWxkKHRoaXMudW5pdFNwYW4sIG5ld1VuaXRUZXh0KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVuaXRTcGFuOiBIVE1MU3BhbkVsZW1lbnQ7XG4gIHByaXZhdGUgYWxsb3dlZEtleXMgPSBuZXcgU2V0KE5VTUJFUlMpO1xuXG4gIC8qIENvbnRyb2wgVmFsdWVzIEFjY2Vzc29yIFN0dWZmIGJlbG93ICovXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgb25DaGFuZ2UgPSAoXzogbnVtYmVyKTogdm9pZCA9PiB7fTtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICBvblRvdWNoZWQgPSAoKTogdm9pZCA9PiB7fTtcblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogbnVtYmVyKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5zZXRQcm9wZXJ0eSh0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudCwgJ2Rpc2FibGVkJywgaXNEaXNhYmxlZCk7XG4gIH1cblxuICB3cml0ZVZhbHVlKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcbiAgICB0aGlzLm51bWVyaWNWYWx1ZSA9IHZhbHVlO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLCBwcml2YXRlIGlucHV0RWw6IEVsZW1lbnRSZWYpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLyogbmVlZHMgdG8gYmUgcGFyc2VkIGFzIG51bWJlciBleHBsaWNpdGx5IGFzIGl0IGNvbWVzIGFzIHN0cmluZyBmcm9tIHVzZXIgaW5wdXQgKi9cbiAgICB0aGlzLmRlY2ltYWxQbGFjZXMgPSBOdW1iZXIucGFyc2VJbnQodGhpcy5kZWNpbWFsUGxhY2VzLnRvU3RyaW5nKCksIDEwKTtcbiAgICB0aGlzLmFsbG93ZWRLZXlzLmFkZChORUdBVElWRSk7XG4gICAgdGhpcy5hbGxvd2VkS2V5cy5hZGQodGhpcy5kZWNpbWFsU2VwYXJhdG9yKTtcblxuICAgIHRoaXMuaW5wdXRDaGFuZ2VMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LCAnYmx1cicsIGV2ZW50ID0+IHtcbiAgICAgIHRoaXMuZm9ybWF0SW5wdXQoZXZlbnQudGFyZ2V0LCB0cnVlKTtcbiAgICB9KTtcblxuICAgIHRoaXMua2V5dXBMaXN0ZW5lciA9IHRoaXMucmVuZGVyZXIubGlzdGVuKHRoaXMuaW5wdXRFbC5uYXRpdmVFbGVtZW50LCAna2V5dXAnLCBldmVudCA9PiB7XG4gICAgICBpZiAoXG4gICAgICAgIGV2ZW50LmtleUNvZGUgPT09IEJBQ0tfS0VZQ09ERSB8fFxuICAgICAgICAoZXZlbnQua2V5Q29kZSA+PSBDT05UUk9MX0tFWUNPREVTX1VQUEVSX0JPUkRFUiAmJiAhT1RIRVJfQ09OVFJPTF9LRVlTLmhhcyhldmVudC5rZXlDb2RlKSlcbiAgICAgICkge1xuICAgICAgICB0aGlzLmZvcm1hdElucHV0KGV2ZW50LnRhcmdldCwgZmFsc2UpO1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgdGhpcy5rZXlkb3duTGlzdGVuZXIgPSB0aGlzLnJlbmRlcmVyLmxpc3Rlbih0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudCwgJ2tleWRvd24nLCBldmVudCA9PiB7XG4gICAgICBjb25zdCB2YWx1ZTogc3RyaW5nID0gZXZlbnQudGFyZ2V0LnZhbHVlO1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLmFsbG93ZWRLZXlzLmhhcyhldmVudC5rZXkpIHx8XG4gICAgICAgIChldmVudC5rZXlDb2RlIDw9IENPTlRST0xfS0VZQ09ERVNfVVBQRVJfQk9SREVSICYmIGV2ZW50LmtleUNvZGUgPiAwKSB8fFxuICAgICAgICBldmVudC5tZXRhS2V5IHx8XG4gICAgICAgIGV2ZW50LmN0cmxLZXkgfHxcbiAgICAgICAgZXZlbnQuYWx0S2V5XG4gICAgICApIHtcbiAgICAgICAgLyogYWxsb3cgbmVnYXRpdmUgc2lnbiBvbmx5IGFzIGZpcnN0IGNoYXJhY3RlciBhbmQgbm9uZSBleGlzdHMgb3V0c2lkZSBvZiB0ZXh0IHNlbGVjdGlvbiAqL1xuICAgICAgICBjb25zdCBpbmRleE5lZ2F0aXZlU2lnbiA9IHZhbHVlLmluZGV4T2YoTkVHQVRJVkUpO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZXZlbnQua2V5ID09PSBORUdBVElWRSAmJlxuICAgICAgICAgIChldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQgPiAwIHx8IGluZGV4TmVnYXRpdmVTaWduID4gLTEpICYmXG4gICAgICAgICAgKGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydCA9PT0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvbkVuZCB8fFxuICAgICAgICAgICAgIShpbmRleE5lZ2F0aXZlU2lnbiA+PSBldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQgJiYgaW5kZXhOZWdhdGl2ZVNpZ24gPD0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvbkVuZCkpXG4gICAgICAgICkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIG5vIGR1cGxpY2F0ZSBkZWNpbWFsIHNlcGFyYXRvcnMgKi9cbiAgICAgICAgY29uc3QgaW5kZXhEZWNpbWFsU2VwID0gdmFsdWUuaW5kZXhPZih0aGlzLmRlY2ltYWxTZXBhcmF0b3IpO1xuICAgICAgICBpZiAoXG4gICAgICAgICAgZXZlbnQua2V5ID09PSB0aGlzLmRlY2ltYWxTZXBhcmF0b3IgJiZcbiAgICAgICAgICAoaW5kZXhEZWNpbWFsU2VwID4gLTEgfHwgdGhpcy5kZWNpbWFsUGxhY2VzID09PSAwKSAmJlxuICAgICAgICAgIChldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQgPT09IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25FbmQgfHxcbiAgICAgICAgICAgICEoaW5kZXhEZWNpbWFsU2VwID49IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydCAmJiBpbmRleERlY2ltYWxTZXAgPD0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvbkVuZCkpXG4gICAgICAgICkge1xuICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8qIHByZXZlbnQgdG9vIG1hbnkgZGVjaW1hbCBwbGFjZXMgKi9cbiAgICAgICAgaWYgKFxuICAgICAgICAgIE5VTUJFUlMuaGFzKGV2ZW50LmtleSkgJiZcbiAgICAgICAgICBpbmRleERlY2ltYWxTZXAgPiAtMSAmJlxuICAgICAgICAgIGluZGV4RGVjaW1hbFNlcCA8IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydCAmJlxuICAgICAgICAgIGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydCA9PT0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvbkVuZCAmJlxuICAgICAgICAgIHZhbHVlLmxlbmd0aCA+IGluZGV4RGVjaW1hbFNlcCArIHRoaXMuZGVjaW1hbFBsYWNlc1xuICAgICAgICApIHtcbiAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICAvKiB3aGVuIGRlbGV0aW5nIHRob3VzYW5kIHNlcGFyYXRvciwgcmVtb3ZlIHRoZSBkaWdpdCBiZWZvcmUgb3IgYWZ0ZXIgaXQgKi9cbiAgICAgICAgY29uc3QgY3Vyc29yU3RhcnQgPSBldmVudC50YXJnZXQuc2VsZWN0aW9uU3RhcnQ7XG5cbiAgICAgICAgaWYgKGN1cnNvclN0YXJ0ID09PSBldmVudC50YXJnZXQuc2VsZWN0aW9uRW5kKSB7XG4gICAgICAgICAgaWYgKGV2ZW50LmtleUNvZGUgPT09IEJBQ0tfS0VZQ09ERSAmJiB2YWx1ZS5zdWJzdHIoY3Vyc29yU3RhcnQgLSAxLCAxKSA9PT0gdGhpcy5ncm91cGluZ1NlcGFyYXRvcikge1xuICAgICAgICAgICAgZXZlbnQudGFyZ2V0LnZhbHVlID0gdmFsdWUuc3Vic3RyaW5nKDAsIGN1cnNvclN0YXJ0IC0gMikgKyB2YWx1ZS5zdWJzdHJpbmcoY3Vyc29yU3RhcnQgLSAxLCB2YWx1ZS5sZW5ndGgpO1xuICAgICAgICAgICAgZXZlbnQudGFyZ2V0LnNlbGVjdGlvblN0YXJ0ID0gZXZlbnQudGFyZ2V0LnNlbGVjdGlvbkVuZCA9IGN1cnNvclN0YXJ0IC0gMTtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICB9IGVsc2UgaWYgKGV2ZW50LmtleUNvZGUgPT09IERFTF9LRVlDT0RFICYmIHZhbHVlLnN1YnN0cihjdXJzb3JTdGFydCwgMSkgPT09IHRoaXMuZ3JvdXBpbmdTZXBhcmF0b3IpIHtcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldC52YWx1ZSA9IHZhbHVlLnN1YnN0cmluZygwLCBjdXJzb3JTdGFydCArIDEpICsgdmFsdWUuc3Vic3RyaW5nKGN1cnNvclN0YXJ0ICsgMiwgdmFsdWUubGVuZ3RoKTtcbiAgICAgICAgICAgIGV2ZW50LnRhcmdldC5zZWxlY3Rpb25TdGFydCA9IGV2ZW50LnRhcmdldC5zZWxlY3Rpb25FbmQgPSBjdXJzb3JTdGFydCArIDE7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMub3JpZ2luYWxWYWx1ZSA9IE5hTjtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgIH1cbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH0pO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXRhY2hMaXN0ZW5lcigpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdDaGVja2VkKCk6IHZvaWQge1xuICAgIHRoaXMuaW5qZWN0VW5pdFN5bWJvbCgpO1xuICB9XG5cbiAgaGFuZGxlSW5wdXRDaGFuZ2VkKCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlSW5wdXQoXG4gICAgICB0aGlzLmZvcm1hdE51bWJlcih0aGlzLl9udW1lcmljVmFsdWUudG9TdHJpbmcoKS5yZXBsYWNlKG5ldyBSZWdFeHAoJ1suXScsICdnJyksIHRoaXMuZGVjaW1hbFNlcGFyYXRvciksIHRydWUpLFxuICAgICAgdHJ1ZVxuICAgICk7XG4gIH1cblxuICBmb3JtYXRJbnB1dChlbGVtZW50OiBIVE1MSW5wdXRFbGVtZW50LCBmaW5hbEZvcm1hdHRpbmc6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICBjb25zdCBjdXJzb3JQb3MgPSBlbGVtZW50LnNlbGVjdGlvblN0YXJ0O1xuICAgIGNvbnN0IGxlbmd0aCA9IGVsZW1lbnQudmFsdWUubGVuZ3RoO1xuICAgIGNvbnN0IHNldEN1cnNvciA9IHRoaXMuZGlzcGxheVZhbHVlICE9PSBlbGVtZW50LnZhbHVlO1xuICAgIHRoaXMudXBkYXRlSW5wdXQodGhpcy5mb3JtYXROdW1iZXIoZWxlbWVudC52YWx1ZSwgZmluYWxGb3JtYXR0aW5nKSwgZmFsc2UpO1xuICAgIGlmIChzZXRDdXJzb3IpIHtcbiAgICAgIGVsZW1lbnQuc2VsZWN0aW9uU3RhcnQgPSBlbGVtZW50LnNlbGVjdGlvbkVuZCA9IE1hdGgubWF4KGN1cnNvclBvcyArIGVsZW1lbnQudmFsdWUubGVuZ3RoIC0gbGVuZ3RoLCAwKTtcbiAgICB9XG4gIH1cblxuICBmb3JtYXROdW1iZXIodmFsdWU6IHN0cmluZywgZmluYWxGb3JtYXR0aW5nOiBib29sZWFuKTogc3RyaW5nIHtcbiAgICBsZXQgcmVzdWx0ID0gdGhpcy5zdHJpcCh2YWx1ZSwgZmluYWxGb3JtYXR0aW5nKTtcblxuICAgIC8qIGFkZCBncm91cGluZyBzZXBhcmF0b3IgKi9cbiAgICBjb25zdCBkZWNpbWFsSW5kZXggPSByZXN1bHQuaW5kZXhPZih0aGlzLmRlY2ltYWxTZXBhcmF0b3IpO1xuICAgIGNvbnN0IGlzTmVnYXRpdmUgPSByZXN1bHRbMF0gPT09IE5FR0FUSVZFO1xuICAgIGxldCBpID0gZGVjaW1hbEluZGV4ID4gLTEgPyBkZWNpbWFsSW5kZXggOiByZXN1bHQubGVuZ3RoO1xuICAgIHdoaWxlIChpID4gKGlzTmVnYXRpdmUgPyA0IDogMykpIHtcbiAgICAgIGkgLT0gMztcbiAgICAgIHJlc3VsdCA9IHJlc3VsdC5zdWJzdHJpbmcoMCwgaSkgKyB0aGlzLmdyb3VwaW5nU2VwYXJhdG9yICsgcmVzdWx0LnN1YnN0cmluZyhpLCByZXN1bHQubGVuZ3RoKTtcbiAgICB9XG5cbiAgICBpZiAoZmluYWxGb3JtYXR0aW5nKSB7XG4gICAgICBpZiAodGhpcy5kZWNpbWFsUGxhY2VzID4gMCAmJiAhIXJlc3VsdCkge1xuICAgICAgICAvKiBhdXRvZmlsbCBkZWNpbWFsIHBsYWNlcyAqL1xuICAgICAgICBsZXQgYWN0dWFsRGVjaW1hbEluZGV4ID0gcmVzdWx0LmluZGV4T2YodGhpcy5kZWNpbWFsU2VwYXJhdG9yKTtcbiAgICAgICAgaWYgKHRoaXMuYXV0b2ZpbGxEZWNpbWFscykge1xuICAgICAgICAgIGlmIChhY3R1YWxEZWNpbWFsSW5kZXggPT09IC0xKSB7XG4gICAgICAgICAgICBhY3R1YWxEZWNpbWFsSW5kZXggPSByZXN1bHQubGVuZ3RoO1xuICAgICAgICAgICAgcmVzdWx0ICs9IHRoaXMuZGVjaW1hbFNlcGFyYXRvcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXN1bHQgPSB0aGlzLmFkZE1pc3NpbmdMZWFkaW5nWmVybyhyZXN1bHQsIGFjdHVhbERlY2ltYWxJbmRleCk7XG4gICAgICAgICAgYWN0dWFsRGVjaW1hbEluZGV4ID0gcmVzdWx0LmluZGV4T2YodGhpcy5kZWNpbWFsU2VwYXJhdG9yKTtcblxuICAgICAgICAgIGNvbnN0IGFjdHVhbERlY2ltYWxQbGFjZXMgPSByZXN1bHQubGVuZ3RoIC0gYWN0dWFsRGVjaW1hbEluZGV4IC0gMTtcbiAgICAgICAgICBmb3IgKGxldCBqID0gMDsgaiA8IHRoaXMuZGVjaW1hbFBsYWNlcyAtIGFjdHVhbERlY2ltYWxQbGFjZXM7IGorKykge1xuICAgICAgICAgICAgcmVzdWx0ICs9ICcwJztcbiAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzdWx0ID0gdGhpcy5hZGRNaXNzaW5nTGVhZGluZ1plcm8ocmVzdWx0LCBhY3R1YWxEZWNpbWFsSW5kZXgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3VsdDtcbiAgfVxuXG4gIGFkZE1pc3NpbmdMZWFkaW5nWmVybyhyZXN1bHQ6IHN0cmluZywgYWN0dWFsRGVjaW1hbEluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGNvbnN0IGlzTmVnYXRpdmUgPSByZXN1bHRbMF0gPT09IE5FR0FUSVZFO1xuICAgIC8qIGF1dG9hZGQgYSB6ZXJvIGJlZm9yZSBkZWNpbWFsIHNlcGFyYXRvciwgd2hlbiBpdCdzIG1pc3NpbmcgKi9cbiAgICBpZiAoYWN0dWFsRGVjaW1hbEluZGV4ID09PSAwKSB7XG4gICAgICByZXN1bHQgPSAnMCcgKyByZXN1bHQ7XG4gICAgfVxuICAgIC8qIGF1dG9hZGQgYSB6ZXJvIGJlZm9yZSBkZWNpbWFsIHNlcGFyYXRvciwgd2hlbiBpdCdzIG1pc3NpbmcsIGZvciBuZWdhdGl2ZSB2YWx1ZXMgKi9cbiAgICBpZiAoYWN0dWFsRGVjaW1hbEluZGV4ID09PSAxICYmIGlzTmVnYXRpdmUpIHtcbiAgICAgIHJlc3VsdCA9IHJlc3VsdFswXSArICcwJyArIHJlc3VsdC5zdWJzdHJpbmcoMSwgcmVzdWx0Lmxlbmd0aCk7XG4gICAgfVxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICBzdHJpcCh2YWx1ZTogc3RyaW5nLCByZW1vdmVMZWFkaW5nWmVyb3MgPSBmYWxzZSk6IHN0cmluZyB7XG4gICAgbGV0IHJlc3VsdCA9ICcnO1xuICAgIGxldCBpbmRleERlY2ltYWxTZXAgPSAtMTtcbiAgICBsZXQgaiA9IC0xO1xuICAgIGxldCBpZ25vcmVkQ2hhcnMgPSAwO1xuICAgIGZvciAoY29uc3QgY2hhciBvZiB2YWx1ZSkge1xuICAgICAgaisrO1xuICAgICAgaWYgKHRoaXMuYWxsb3dlZEtleXMuaGFzKGNoYXIpKSB7XG4gICAgICAgIGlmIChjaGFyID09PSB0aGlzLmRlY2ltYWxTZXBhcmF0b3IpIHtcbiAgICAgICAgICBpZiAodGhpcy5kZWNpbWFsUGxhY2VzID09PSAwKSB7XG4gICAgICAgICAgICAvKiBkaXNtaXNzIGNvbnRlbnQgYWZ0ZXIgYSBkZWNpbWFsIHNlcGFyYXRvciwgd2hlbiBubyBwbGFjZXMgYWxsb3dlZCAqL1xuICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgfSBlbHNlIGlmIChpbmRleERlY2ltYWxTZXAgPiAtMSkge1xuICAgICAgICAgICAgLyogaWdub3JlIHN1YnNlcXVlbnQgZGVjaW1hbCBzZXBhcmF0b3JzICovXG4gICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW5kZXhEZWNpbWFsU2VwID0gajtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hhciA9PT0gJzAnICYmIHJlbW92ZUxlYWRpbmdaZXJvcykge1xuICAgICAgICAgIC8qIHJlbW92ZSBsZWFkaW5nIHplcm8gb25seSBpZiBpdCdzIG5vdCB0aGUgb25seSB6ZXJvIGluIHRoZSAndmFsdWUnIHN0cmluZyAqL1xuICAgICAgICAgIGlmICgocmVzdWx0Lmxlbmd0aCA9PT0gMCAmJiBqICsgMSAhPT0gdmFsdWUubGVuZ3RoKSB8fCByZXN1bHQgPT09IE5FR0FUSVZFKSB7XG4gICAgICAgICAgICBpZ25vcmVkQ2hhcnMrKztcbiAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hhciA9PT0gTkVHQVRJVkUgJiYgaiA+IDApIHtcbiAgICAgICAgICAvKiBkaXNtaXNzIGNvbnRlbnQgYWZ0ZXIgYSBuZWdhdGl2ZSBzaWduIG5vdCBvbiBmaXJzdCBwb3NpdGlvbiAqL1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGlmIChpbmRleERlY2ltYWxTZXAgPiAtMSAmJiByZXN1bHQubGVuZ3RoICsgaWdub3JlZENoYXJzID4gaW5kZXhEZWNpbWFsU2VwICsgdGhpcy5kZWNpbWFsUGxhY2VzKSB7XG4gICAgICAgICAgLyogZGlzbWlzcyBjb250ZW50IGFmdGVyIG1heGltdW0gZGVjaW1hbCBwbGFjZXMgcmVhY2hlZCAqL1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHJlc3VsdCArPSBjaGFyO1xuICAgICAgfSBlbHNlIGlmIChjaGFyID09PSB0aGlzLmdyb3VwaW5nU2VwYXJhdG9yKSB7XG4gICAgICAgIGlmIChpbmRleERlY2ltYWxTZXAgPT09IC0xKSB7XG4gICAgICAgICAgaWdub3JlZENoYXJzKys7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8qIGRpc21pc3MgY29udGVudCBhZnRlciBhIGludmFsaWQgY2hhcmFjdGVyICovXG4gICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiByZXN1bHQ7XG4gIH1cblxuICB1cGRhdGVJbnB1dCh2YWx1ZTogc3RyaW5nLCB1cGRhdGVBc3luYzogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzcGxheVZhbHVlID0gdmFsdWU7XG4gICAgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQudmFsdWUgPSB2YWx1ZTtcbiAgICB0aGlzLl9udW1lcmljVmFsdWUgPSBwYXJzZUZsb2F0KHRoaXMuc3RyaXAodmFsdWUpLnJlcGxhY2UodGhpcy5kZWNpbWFsU2VwYXJhdG9yLCAnLicpKTtcbiAgICBpZiAodGhpcy5fbnVtZXJpY1ZhbHVlICE9PSB0aGlzLnJvdW5kT3JUcnVuY2F0ZSh0aGlzLm9yaWdpbmFsVmFsdWUpKSB7XG4gICAgICB0aGlzLm9yaWdpbmFsVmFsdWUgPSB0aGlzLl9udW1lcmljVmFsdWU7XG4gICAgICBpZiAodXBkYXRlQXN5bmMpIHtcbiAgICAgICAgLy8gQ2FsbCBpbiBzZXRUaW1lb3V0IHRvIGF2b2lkIEV4cHJlc3Npb24gaGFzIGNoYW5nZWQgYWZ0ZXIgaXQgaGFzIGJlZW4gY2hlY2tlZCBlcnJvci5cbiAgICAgICAgLy8gVGhpcyBoYXBwZW5zIGZvciBleGFtcGxlIGlmIHRoZSBpbml0aWFsIGlucHV0IGhhcyBtb3JlIGRlY2ltYWwgcGxhY2VzIHRoYW4gYWxsb3dlZFxuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMubnVtZXJpY1ZhbHVlQ2hhbmdlZC5lbWl0KHRoaXMuX251bWVyaWNWYWx1ZSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5udW1lcmljVmFsdWVDaGFuZ2VkLmVtaXQodGhpcy5fbnVtZXJpY1ZhbHVlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZ2V0VmFsdWVGb3JGb3JtQ29udHJvbCgpOiBudW1iZXIge1xuICAgIHRoaXMuZm9ybWF0SW5wdXQodGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQsIGZhbHNlKTtcbiAgICBpZiAoaXNOYU4odGhpcy5fbnVtZXJpY1ZhbHVlKSkge1xuICAgICAgLy8gUmV0dXJuIHVuZGVmaW5lZCBpbnN0ZWFkIG9mIE5hTiB0byBzdXBwb3J0IHRoZSBkZWZhdWx0IHJlcXVpcmVkIHZhbGlkYXRvci5cbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLl9udW1lcmljVmFsdWU7XG4gIH1cblxuICBwcml2YXRlIGluamVjdFVuaXRTeW1ib2woKTogdm9pZCB7XG4gICAgLy8gTmVlZCB0byBpbmplY3QgdGhlIHVuaXQgc3ltYm9sIHdoZW4gdGhlIGlucHV0IGVsZW1lbnQgd2lkdGggaXMgc2V0IHRvIGl0cyBhY3R1YWwgdmFsdWUsXG4gICAgLy8gb3RoZXJ3aXNlIHRoZSBpY29uIHdvbnQgc2hvdyBpbiB0aGUgY29ycmVjdCBwb3NpdGlvblxuICAgIGlmICghIXRoaXMuX3VuaXQgJiYgIXRoaXMudW5pdFNwYW4gJiYgdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGggIT09IDApIHtcbiAgICAgIC8vIEdldCB0aGUgaW5wdXQgd3JhcHBlciBhbmQgYXBwbHkgbmVjZXNzYXJ5IHN0eWxlc1xuICAgICAgY29uc3QgaW5wdXRXcmFwcGVyID0gdGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQucGFyZW50Tm9kZTtcbiAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3MoaW5wdXRXcmFwcGVyLCAnbnVtZXJpYy1pbnB1dC13cmFwcGVyJyk7XG5cbiAgICAgIC8vIENyZWF0ZSB0aGUgc3BhbiB3aXRoIHVuaXQgc3ltYm9sIGFuZCBhcHBseSBuZWNlc3Nhcnkgc3R5bGVzXG4gICAgICBpZiAoIXRoaXMudW5pdFNwYW4pIHtcbiAgICAgICAgdGhpcy51bml0U3BhbiA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnc3BhbicpO1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMudW5pdFNwYW4sICd1bml0Jyk7XG4gICAgICAgIGNvbnN0IHVuaXRTeW1ib2wgPSB0aGlzLnJlbmRlcmVyLmNyZWF0ZVRleHQodGhpcy5fdW5pdCk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQodGhpcy51bml0U3BhbiwgdW5pdFN5bWJvbCk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuYXBwZW5kQ2hpbGQoaW5wdXRXcmFwcGVyLCB0aGlzLnVuaXRTcGFuKTtcbiAgICAgIH1cblxuICAgICAgLy8gQWRkIHBhZGRpbmcgdG8gdGhlIGlucHV0IGVsZW1lbnQsIGRlcGVuZGluZyBvbiB0aGUgd2lkdGggb2YgdGhlIHVuaXQgc3ltYm9sICsgMTJweFxuICAgICAgY29uc3QgcGFkZGluZ09uSW5wdXQgPSB0aGlzLnVuaXRTcGFuLm9mZnNldFdpZHRoICsgMTI7XG4gICAgICBpZiAodGhpcy51bml0UG9zaXRpb24gPT09ICdsZWZ0Jykge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMudW5pdFNwYW4sICd1bml0LWxlZnQnKTtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmlucHV0RWwubmF0aXZlRWxlbWVudCwgJ3BhZGRpbmctbGVmdCcsIHBhZGRpbmdPbklucHV0ICsgJ3B4Jyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMudW5pdFNwYW4sICd1bml0LXJpZ2h0Jyk7XG4gICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUodGhpcy5pbnB1dEVsLm5hdGl2ZUVsZW1lbnQsICdwYWRkaW5nLXJpZ2h0JywgcGFkZGluZ09uSW5wdXQgKyAncHgnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGRldGFjaExpc3RlbmVyKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmlucHV0Q2hhbmdlTGlzdGVuZXIpIHtcbiAgICAgIHRoaXMuaW5wdXRDaGFuZ2VMaXN0ZW5lcigpO1xuICAgICAgZGVsZXRlIHRoaXMuaW5wdXRDaGFuZ2VMaXN0ZW5lcjtcbiAgICB9XG4gICAgaWYgKHRoaXMua2V5ZG93bkxpc3RlbmVyKSB7XG4gICAgICB0aGlzLmtleWRvd25MaXN0ZW5lcigpO1xuICAgICAgZGVsZXRlIHRoaXMua2V5ZG93bkxpc3RlbmVyO1xuICAgIH1cbiAgICBpZiAodGhpcy5rZXl1cExpc3RlbmVyKSB7XG4gICAgICB0aGlzLmtleXVwTGlzdGVuZXIoKTtcbiAgICAgIGRlbGV0ZSB0aGlzLmtleXVwTGlzdGVuZXI7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByb3VuZE9yVHJ1bmNhdGUodmFsdWU6IG51bWJlcik6IG51bWJlciB7XG4gICAgY29uc3QgbWV0aG9kID0gdGhpcy5yb3VuZFZhbHVlID8gJ3JvdW5kJyA6IHZhbHVlIDwgMCA/ICdjZWlsJyA6ICdmbG9vcic7XG4gICAgLy8gMTYgaXMgdGhlIGhpZ2hlc3QgcHJlY2lzaW9uIGJlZm9yZSBudW1iZXJzIGhhdmUgd2VpcmQgYmVoYXZpb3VyLiBzZWUgaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xLzIxNDcyODI4LzE1MTIwOTQyXG4gICAgcmV0dXJuIE1hdGhbbWV0aG9kXSgrKHZhbHVlICogTWF0aC5wb3coMTAsIHRoaXMuZGVjaW1hbFBsYWNlcykpLnRvUHJlY2lzaW9uKDE2KSkgLyBNYXRoLnBvdygxMCwgdGhpcy5kZWNpbWFsUGxhY2VzKTtcbiAgfVxufVxuIl19
@@ -1,21 +0,0 @@
1
- /*
2
- * Copyright (c) 2018-2019 Porsche Informatik. All Rights Reserved.
3
- * This software is released under MIT license.
4
- * The full license information can be found in LICENSE in the root directory of this project.
5
- */
6
- import { CommonModule } from '@angular/common';
7
- import { NgModule } from '@angular/core';
8
- import { FormsModule } from '@angular/forms';
9
- import { ClarityModule, ClrFormsModule } from '@clr/angular';
10
- import { ClrNumericField } from './numeric-field';
11
- import { ClrMaxNumeric, ClrMinNumeric } from './numeric-field-validators';
12
- export class ClrNumericFieldModule {
13
- }
14
- ClrNumericFieldModule.decorators = [
15
- { type: NgModule, args: [{
16
- imports: [CommonModule, ClarityModule, ClrFormsModule, FormsModule],
17
- declarations: [ClrNumericField, ClrMaxNumeric, ClrMinNumeric],
18
- exports: [ClrNumericField, ClrMaxNumeric, ClrMinNumeric],
19
- },] }
20
- ];
21
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy1maWVsZC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY2xyLWFkZG9ucy9udW1lcmljZmllbGQvbnVtZXJpYy1maWVsZC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7R0FJRztBQUVILE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUM3QyxPQUFPLEVBQUUsYUFBYSxFQUFFLGNBQWMsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUU3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQU8xRSxNQUFNLE9BQU8scUJBQXFCOzs7WUFMakMsUUFBUSxTQUFDO2dCQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLEVBQUUsY0FBYyxFQUFFLFdBQVcsQ0FBQztnQkFDbkUsWUFBWSxFQUFFLENBQUMsZUFBZSxFQUFFLGFBQWEsRUFBRSxhQUFhLENBQUM7Z0JBQzdELE9BQU8sRUFBRSxDQUFDLGVBQWUsRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDO2FBQ3pEIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAoYykgMjAxOC0yMDE5IFBvcnNjaGUgSW5mb3JtYXRpay4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFRoaXMgc29mdHdhcmUgaXMgcmVsZWFzZWQgdW5kZXIgTUlUIGxpY2Vuc2UuXG4gKiBUaGUgZnVsbCBsaWNlbnNlIGluZm9ybWF0aW9uIGNhbiBiZSBmb3VuZCBpbiBMSUNFTlNFIGluIHRoZSByb290IGRpcmVjdG9yeSBvZiB0aGlzIHByb2plY3QuXG4gKi9cblxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENsYXJpdHlNb2R1bGUsIENsckZvcm1zTW9kdWxlIH0gZnJvbSAnQGNsci9hbmd1bGFyJztcblxuaW1wb3J0IHsgQ2xyTnVtZXJpY0ZpZWxkIH0gZnJvbSAnLi9udW1lcmljLWZpZWxkJztcbmltcG9ydCB7IENsck1heE51bWVyaWMsIENsck1pbk51bWVyaWMgfSBmcm9tICcuL251bWVyaWMtZmllbGQtdmFsaWRhdG9ycyc7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIENsYXJpdHlNb2R1bGUsIENsckZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW0Nsck51bWVyaWNGaWVsZCwgQ2xyTWF4TnVtZXJpYywgQ2xyTWluTnVtZXJpY10sXG4gIGV4cG9ydHM6IFtDbHJOdW1lcmljRmllbGQsIENsck1heE51bWVyaWMsIENsck1pbk51bWVyaWNdLFxufSlcbmV4cG9ydCBjbGFzcyBDbHJOdW1lcmljRmllbGRNb2R1bGUge31cbiJdfQ==
@@ -1,17 +0,0 @@
1
- /**
2
- * @fileoverview This file was generated by the Angular template compiler. Do not edit.
3
- * Copyright (c) 2018-2019 Porsche Informatik. All Rights Reserved.
4
- * This software is released under MIT license.
5
- * The full license information can be found in LICENSE in the root directory of this project.
6
- * @suppress {suspiciousCode,uselessCode,missingProperties,missingOverride,checkTypes,extraRequire}
7
- * tslint:disable
8
- */
9
- import * as i0 from "@angular/core";
10
- import * as i1 from "./numeric-field.module";
11
- import * as i2 from "../../../node_modules/@clr/angular/clr-angular.ngfactory";
12
- import * as i3 from "@angular/common";
13
- import * as i4 from "@clr/angular";
14
- import * as i5 from "@angular/forms";
15
- var ClrNumericFieldModuleNgFactory = i0.ɵcmf(i1.ClrNumericFieldModule, [], function (_l) { return i0.ɵmod([i0.ɵmpd(512, i0.ComponentFactoryResolver, i0.ɵCodegenComponentFactoryResolver, [[8, [i2.ClrControlContainerNgFactory, i2.ɵblNgFactory, i2.ClrCheckboxWrapperNgFactory, i2.ClrDateContainerNgFactory, i2.ClrInputContainerNgFactory, i2.ClrPasswordContainerNgFactory, i2.ClrRadioWrapperNgFactory, i2.ClrSelectContainerNgFactory, i2.ClrTextareaContainerNgFactory, i2.ClrRangeContainerNgFactory, i2.ClrDraggableGhostNgFactory, i2.ÇlrWrappedCellNgFactory, i2.ÇlrWrappedColumnNgFactory, i2.ÇlrWrappedRowNgFactory, i2.ɵdzNgFactory]], [3, i0.ComponentFactoryResolver], i0.NgModuleRef]), i0.ɵmpd(4608, i3.NgLocalization, i3.NgLocaleLocalization, [i0.LOCALE_ID]), i0.ɵmpd(1073742336, i3.CommonModule, i3.CommonModule, []), i0.ɵmpd(1073742336, i4.ClrIconModule, i4.ClrIconModule, []), i0.ɵmpd(1073742336, i4.ClrConditionalModule, i4.ClrConditionalModule, []), i0.ɵmpd(1073742336, i4.ClrDropdownModule, i4.ClrDropdownModule, []), i0.ɵmpd(1073742336, i4.ClrAlertModule, i4.ClrAlertModule, []), i0.ɵmpd(1073742336, i4.ClrEmphasisModule, i4.ClrEmphasisModule, []), i0.ɵmpd(1073742336, i4.ClrCommonFormsModule, i4.ClrCommonFormsModule, []), i0.ɵmpd(1073742336, i4.ɵbk, i4.ɵbk, []), i0.ɵmpd(1073742336, i4.ClrCheckboxModule, i4.ClrCheckboxModule, []), i0.ɵmpd(1073742336, i5.ɵangular_packages_forms_forms_q, i5.ɵangular_packages_forms_forms_q, []), i0.ɵmpd(1073742336, i5.ɵangular_packages_forms_forms_d, i5.ɵangular_packages_forms_forms_d, []), i0.ɵmpd(1073742336, i5.FormsModule, i5.FormsModule, []), i0.ɵmpd(1073742336, i4.ɵbm, i4.ɵbm, []), i0.ɵmpd(1073742336, i4.ÇlrClrPopoverModuleNext, i4.ÇlrClrPopoverModuleNext, []), i0.ɵmpd(1073742336, i4.ClrSpinnerModule, i4.ClrSpinnerModule, []), i0.ɵmpd(1073742336, i4.ClrComboboxModule, i4.ClrComboboxModule, []), i0.ɵmpd(1073742336, i4.ÇlrClrFocusTrapModule, i4.ÇlrClrFocusTrapModule, []), i0.ɵmpd(1073742336, i4.ClrDatepickerModule, i4.ClrDatepickerModule, []), i0.ɵmpd(1073742336, i4.ClrInputModule, i4.ClrInputModule, []), i0.ɵmpd(1073742336, i4.ClrPasswordModule, i4.ClrPasswordModule, []), i0.ɵmpd(1073742336, i4.ClrRadioModule, i4.ClrRadioModule, []), i0.ɵmpd(1073742336, i4.ClrSelectModule, i4.ClrSelectModule, []), i0.ɵmpd(1073742336, i4.ClrTextareaModule, i4.ClrTextareaModule, []), i0.ɵmpd(1073742336, i4.ClrRangeModule, i4.ClrRangeModule, []), i0.ɵmpd(1073742336, i4.ClrDatalistModule, i4.ClrDatalistModule, []), i0.ɵmpd(1073742336, i4.ClrFormsModule, i4.ClrFormsModule, []), i0.ɵmpd(1073742336, i4.ClrLoadingModule, i4.ClrLoadingModule, []), i0.ɵmpd(1073742336, i4.ɵce, i4.ɵce, []), i0.ɵmpd(1073742336, i4.ɵch, i4.ɵch, []), i0.ɵmpd(1073742336, i4.ClrDragAndDropModule, i4.ClrDragAndDropModule, []), i0.ɵmpd(1073742336, i4.ClrFocusOnViewInitModule, i4.ClrFocusOnViewInitModule, []), i0.ɵmpd(1073742336, i4.ClrDatagridModule, i4.ClrDatagridModule, []), i0.ɵmpd(1073742336, i4.ClrStackViewModule, i4.ClrStackViewModule, []), i0.ɵmpd(1073742336, i4.ClrTreeViewModule, i4.ClrTreeViewModule, []), i0.ɵmpd(1073742336, i4.ClrDataModule, i4.ClrDataModule, []), i0.ɵmpd(1073742336, i4.ClrModalModule, i4.ClrModalModule, []), i0.ɵmpd(1073742336, i4.ClrLoadingButtonModule, i4.ClrLoadingButtonModule, []), i0.ɵmpd(1073742336, i4.ClrButtonGroupModule, i4.ClrButtonGroupModule, []), i0.ɵmpd(1073742336, i4.ClrButtonModule, i4.ClrButtonModule, []), i0.ɵmpd(1073742336, i4.ClrMainContainerModule, i4.ClrMainContainerModule, []), i0.ɵmpd(1073742336, i4.ClrNavigationModule, i4.ClrNavigationModule, []), i0.ɵmpd(1073742336, i4.ɵdx, i4.ɵdx, []), i0.ɵmpd(1073742336, i4.ClrTabsModule, i4.ClrTabsModule, []), i0.ɵmpd(1073742336, i4.ClrVerticalNavModule, i4.ClrVerticalNavModule, []), i0.ɵmpd(1073742336, i4.ClrLayoutModule, i4.ClrLayoutModule, []), i0.ɵmpd(1073742336, i4.ClrSignpostModule, i4.ClrSignpostModule, []), i0.ɵmpd(1073742336, i4.ClrTooltipModule, i4.ClrTooltipModule, []), i0.ɵmpd(1073742336, i4.ClrPopoverModule, i4.ClrPopoverModule, []), i0.ɵmpd(1073742336, i4.ClrWizardModule, i4.ClrWizardModule, []), i0.ɵmpd(1073742336, i4.ClrAccordionModule, i4.ClrAccordionModule, []), i0.ɵmpd(1073742336, i4.ClrStepperModule, i4.ClrStepperModule, []), i0.ɵmpd(1073742336, i4.ClrProgressBarModule, i4.ClrProgressBarModule, []), i0.ɵmpd(1073742336, i4.ClrTimelineModule, i4.ClrTimelineModule, []), i0.ɵmpd(1073742336, i4.ClarityModule, i4.ClarityModule, []), i0.ɵmpd(1073742336, i1.ClrNumericFieldModule, i1.ClrNumericFieldModule, []), i0.ɵmpd(256, i4.FOCUS_ON_VIEW_INIT, true, [])]); });
16
- export { ClrNumericFieldModuleNgFactory as ClrNumericFieldModuleNgFactory };
17
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtZXJpYy1maWVsZC5tb2R1bGUubmdmYWN0b3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2Nsci1hZGRvbnMvbnVtZXJpY2ZpZWxkL251bWVyaWMtZmllbGQubW9kdWxlLm5nZmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgaTAgZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBpMSBmcm9tICcuL251bWVyaWMtZmllbGQubW9kdWxlJztcbmltcG9ydCAqIGFzIGkyIGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgKiBhcyBpMyBmcm9tICdAY2xyL2FuZ3VsYXInO1xuaW1wb3J0ICogYXMgaTQgZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0ICogYXMgaTUgZnJvbSAnLi9udW1lcmljLWZpZWxkJztcbmltcG9ydCAqIGFzIGk2IGZyb20gJy4vbnVtZXJpYy1maWVsZC12YWxpZGF0b3JzJztcbmV4cG9ydCBjb25zdCBDbHJOdW1lcmljRmllbGRNb2R1bGVOZ0ZhY3Rvcnk6aTAuTmdNb2R1bGVGYWN0b3J5PGkxLkNsck51bWVyaWNGaWVsZE1vZHVsZT4gPSAobnVsbCBhcyBhbnkpO1xudmFyIF9kZWNsMF8wOmkyLk5nQ2xhc3MgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTppMi5OZ0NvbXBvbmVudE91dGxldCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yOmkyLk5nRm9yT2Y8YW55LGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMzppMi5OZ0lmPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNDppMi5OZ1RlbXBsYXRlT3V0bGV0ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzU6aTIuTmdTdHlsZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF82OmkyLk5nU3dpdGNoID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzc6aTIuTmdTd2l0Y2hDYXNlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzg6aTIuTmdTd2l0Y2hEZWZhdWx0ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzk6aTIuTmdQbHVyYWwgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTA6aTIuTmdQbHVyYWxDYXNlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzExOmkzLkNsckFsZXJ0ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEyOmkzLkNsckFsZXJ0SXRlbSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMzppMy5DbHJBbGVydHMgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTQ6aTMuQ2xyQWxlcnRzUGFnZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTU6aTMuQ2xyQWxlcnRUZXh0ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE2OmkzLkNsckRhdGFncmlkPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTc6aTMuQ2xyRGF0YWdyaWRBY3Rpb25CYXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTg6aTMuQ2xyRGF0YWdyaWRBY3Rpb25PdmVyZmxvdyA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xOTppMy5DbHJEYXRhZ3JpZENvbHVtbjxhbnk+ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIwOmkzLkNsckRhdGFncmlkQ29sdW1uU2VwYXJhdG9yID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIxOmkzLkNsckRhdGFncmlkQ29sdW1uVG9nZ2xlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIyOmkzLkNsckRhdGFncmlkSGlkZWFibGVDb2x1bW4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjM6aTMuQ2xyRGF0YWdyaWRGaWx0ZXI8YW55PiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yNDppMy5DbHJEYXRhZ3JpZEl0ZW1zPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjU6aTMuQ2xyRGF0YWdyaWRJdGVtc1RyYWNrQnk8YW55PiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yNjppMy5DbHJEYXRhZ3JpZFJvdzxhbnk+ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzI3OmkzLkNsckRhdGFncmlkUm93RGV0YWlsID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzI4OmkzLsOHbHJEYXRhZ3JpZERldGFpbFJlZ2lzdGVyZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjk6aTMuQ2xyRGF0YWdyaWRDZWxsID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzMwOmkzLkNsckRhdGFncmlkRm9vdGVyPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMzE6aTMuQ2xyRGF0YWdyaWRQYWdpbmF0aW9uID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzMyOmkzLkNsckRhdGFncmlkUGFnZVNpemUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMzM6aTMuQ2xyRGF0YWdyaWRQbGFjZWhvbGRlcjxhbnk+ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzM0OmkzLkNsckRhdGFncmlkQ29sdW1uVG9nZ2xlQnV0dG9uID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzM1OmkzLkNsckRhdGFncmlkQ29sdW1uVG9nZ2xlVGl0bGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMzY6aTMuQ2xyRGF0YWdyaWREZXRhaWwgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMzc6aTMuQ2xySWZEZXRhaWwgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMzg6aTMuQ2xyRGF0YWdyaWREZXRhaWxIZWFkZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMzk6aTMuQ2xyRGF0YWdyaWREZXRhaWxCb2R5ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzQwOmkzLsOHbHJXcmFwcGVkQ2VsbCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF80MTppMy7Dh2xyV3JhcHBlZENvbHVtbiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF80MjppMy7Dh2xyV3JhcHBlZFJvdyA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF80MzppMy7Dh2xyRGF0YWdyaWRNYWluUmVuZGVyZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNDQ6aTMuw4dsckRhdGFncmlkSGVhZGVyUmVuZGVyZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNDU6aTMuw4dsckRhdGFncmlkUm93UmVuZGVyZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNDY6aTMuw4dsckRhdGFncmlkQ2VsbFJlbmRlcmVyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzQ3OmkzLsOHbHJEYXRhZ3JpZFdpbGx5V29ua2EgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNDg6aTMuw4dsckFjdGlvbmFibGVPb21wYUxvb21wYSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF80OTppMy7Dh2xyRXhwYW5kYWJsZU9vbXBhTG9vbXBhID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzUwOmkzLkRhdGFncmlkU3RyaW5nRmlsdGVyPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNTE6aTMuRGF0YWdyaWROdW1lcmljRmlsdGVyPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNTI6aTMuQ2xyU3RhY2tWaWV3ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzUzOmkzLkNsclN0YWNrSGVhZGVyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzU0OmkzLkNsclN0YWNrQmxvY2sgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNTU6aTMuQ2xyU3RhY2tDb250ZW50SW5wdXQgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNTY6aTMuQ2xyU3RhY2tWaWV3Q3VzdG9tVGFncyA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF81NzppMy5DbHJTdGFja0lucHV0ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzU4OmkzLkNsclN0YWNrU2VsZWN0ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzU5OmkzLkNsclRyZWU8YW55PiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF82MDppMy5DbHJUcmVlTm9kZTxhbnk+ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzYxOmkzLkNsclJlY3Vyc2l2ZUZvck9mPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNjI6aTMuQ2xyVHJlZU5vZGVMaW5rID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzYzOmkzLkNsckljb25DdXN0b21UYWcgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNjQ6aTMuQ2RzSWNvbkN1c3RvbVRhZyA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF82NTppMy5DbHJGb2N1c09uVmlld0luaXQgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNjY6aTMuQ2xyTW9kYWwgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNjc6aTMuQ2xyTW9kYWxCb2R5ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzY4OmkzLkNsckxvYWRpbmcgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNjk6aTMuQ2xySWZBY3RpdmUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNzA6aTMuQ2xySWZPcGVuID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzcxOmkzLkNscklmRXhwYW5kZWQgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNzI6aTMuw4dsckZvY3VzVHJhcERpcmVjdGl2ZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF83MzppMy5DbHJMb2FkaW5nQnV0dG9uID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzc0OmkzLkNsckJ1dHRvbiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF83NTppMy5DbHJCdXR0b25Hcm91cCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF83NjppMy5DbHJMYWJlbCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF83NzppMy5DbHJDb250cm9sRXJyb3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNzg6aTMuQ2xyQ29udHJvbFN1Y2Nlc3MgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfNzk6aTMuQ2xyQ29udHJvbEhlbHBlciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF84MDppMy5DbHJJZkVycm9yID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzgxOmkzLkNscklmU3VjY2VzcyA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF84MjppMy5DbHJGb3JtID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzgzOmkzLkNsckxheW91dCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF84NDppMy5DbHJDb250cm9sQ29udGFpbmVyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzg1OmkzLkNsckNvbnRyb2wgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfODY6aTMuQ2xyQ2hlY2tib3ggPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfODc6aTMuQ2xyQ2hlY2tib3hDb250YWluZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfODg6aTMuQ2xyQ2hlY2tib3hXcmFwcGVyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzg5OmkzLkNsckNvbWJvYm94PGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfOTA6aTMuQ2xyQ29tYm9ib3hDb250YWluZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfOTE6aTMuQ2xyT3B0aW9uczxhbnk+ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzkyOmkzLkNsck9wdGlvbjxhbnk+ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzkzOmkzLkNsck9wdGlvblNlbGVjdGVkPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfOTQ6aTMuQ2xyT3B0aW9uSXRlbXM8YW55PiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF85NTppMy5DbHJEYXkgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfOTY6aTMuQ2xyRGF0ZUNvbnRhaW5lciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF85NzppMy5DbHJEYXRlSW5wdXQgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfOTg6aTMuQ2xyRGF0ZXBpY2tlclZpZXdNYW5hZ2VyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzk5OmkzLkNsck1vbnRocGlja2VyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEwMDppMy5DbHJZZWFycGlja2VyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEwMTppMy5DbHJEYXlwaWNrZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTAyOmkzLkNsckNhbGVuZGFyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEwMzppMy5DbHJJbnB1dCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMDQ6aTMuQ2xySW5wdXRDb250YWluZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTA1OmkzLkNsclBhc3N3b3JkID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEwNjppMy5DbHJQYXNzd29yZENvbnRhaW5lciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMDc6aTMuQ2xyUmFkaW8gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTA4OmkzLkNsclJhZGlvQ29udGFpbmVyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEwOTppMy5DbHJSYWRpb1dyYXBwZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTEwOmkzLkNsclNlbGVjdCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMTE6aTMuQ2xyU2VsZWN0Q29udGFpbmVyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzExMjppMy5DbHJUZXh0YXJlYSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMTM6aTMuQ2xyVGV4dGFyZWFDb250YWluZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTE0OmkzLkNsclJhbmdlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzExNTppMy5DbHJSYW5nZUNvbnRhaW5lciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMTY6aTMuQ2xyRGF0YWxpc3QgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTE3OmkzLkNsckRhdGFsaXN0SW5wdXQgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTE4OmkzLkNsckRhdGFsaXN0Q29udGFpbmVyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzExOTppMy5DbHJNYWluQ29udGFpbmVyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEyMDppMy5DbHJIZWFkZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTIxOmkzLkNsck5hdkxldmVsID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEyMjppMy5OYXZEZXRlY3Rpb25Pb21wYUxvb21wYSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMjM6aTMuTWFpbkNvbnRhaW5lcldpbGx5V29ua2EgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTI0OmkzLkNsclRhYkNvbnRlbnQgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTI1OmkzLkNsclRhYiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMjY6aTMuQ2xyVGFicyA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMjc6aTMuQ2xyVGFiT3ZlcmZsb3dDb250ZW50ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEyODppMy5DbHJUYWJMaW5rID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEyOTppMy7Dh2xyVGFic1dpbGx5V29ua2EgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTMwOmkzLsOHbHJBY3RpdmVPb21wYUxvb21wYSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMzE6aTMuQ2xyVmVydGljYWxOYXYgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTMyOmkzLkNsclZlcnRpY2FsTmF2TGluayA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMzM6aTMuQ2xyVmVydGljYWxOYXZHcm91cCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMzQ6aTMuQ2xyVmVydGljYWxOYXZHcm91cENoaWxkcmVuID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEzNTppMy5DbHJWZXJ0aWNhbE5hdkljb24gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTM2OmkzLkNsckRyb3Bkb3duID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzEzNzppMy5DbHJEcm9wZG93bk1lbnUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTM4OmkzLkNsckRyb3Bkb3duVHJpZ2dlciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xMzk6aTMuQ2xyRHJvcGRvd25JdGVtID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE0MDppMy5DbHJTaWducG9zdCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNDE6aTMuQ2xyU2lnbnBvc3RDb250ZW50ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE0MjppMy5DbHJTaWducG9zdFRyaWdnZXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTQzOmkzLkNsclRvb2x0aXAgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTQ0OmkzLkNsclRvb2x0aXBUcmlnZ2VyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE0NTppMy5DbHJUb29sdGlwQ29udGVudCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNDY6aTMuQ2xyV2l6YXJkID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE0NzppMy5DbHJXaXphcmRQYWdlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE0ODppMy5DbHJXaXphcmRTdGVwbmF2ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE0OTppMy5DbHJXaXphcmRTdGVwbmF2SXRlbSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNTA6aTMuQ2xyV2l6YXJkQnV0dG9uID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE1MTppMy5DbHJXaXphcmRIZWFkZXJBY3Rpb24gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTUyOmkzLkNscldpemFyZEN1c3RvbVRhZ3MgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTUzOmkzLkNscldpemFyZFBhZ2VUaXRsZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNTQ6aTMuQ2xyV2l6YXJkUGFnZU5hdlRpdGxlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE1NTppMy5DbHJXaXphcmRQYWdlQnV0dG9ucyA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNTY6aTMuQ2xyV2l6YXJkUGFnZUhlYWRlckFjdGlvbnMgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTU3OmkzLkNsckRyYWdnYWJsZTxhbnk+ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE1ODppMy5DbHJEcm9wcGFibGU8YW55PiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNTk6aTMuQ2xySWZEcmFnZ2VkPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTYwOmkzLkNsckRyYWdIYW5kbGU8YW55PiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNjE6aTMuQ2xyRHJhZ2dhYmxlR2hvc3Q8YW55PiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNjI6aTMuQ2xyQWNjb3JkaW9uID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE2MzppMy5DbHJBY2NvcmRpb25QYW5lbCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNjQ6aTMuQ2xyQWNjb3JkaW9uVGl0bGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTY1OmkzLkNsckFjY29yZGlvbkRlc2NyaXB0aW9uID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE2NjppMy5DbHJBY2NvcmRpb25Db250ZW50ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE2NzppMy7Dh2xyQWNjb3JkaW9uT29tcGFMb29tcGEgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTY4OmkzLsOHbHJBY2NvcmRpb25XaWxseVdvbmthID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE2OTppMy5DbHJTdGVwcGVyID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE3MDppMy5DbHJTdGVwQnV0dG9uID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE3MTppMy5DbHJTdGVwcGVyUGFuZWwgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTcyOmkzLsOHbHJTdGVwcGVyT29tcGFMb29tcGEgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTczOmkzLsOHbHJTdGVwcGVyV2lsbHlXb25rYSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNzQ6aTMuQ2xyU3Bpbm5lciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xNzU6aTMuQ2xyUHJvZ3Jlc3NCYXIgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTc2OmkzLkNsclBvcG92ZXJBbmNob3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTc3OmkzLsOHbHJDbHJQb3BvdmVyQ2xvc2VCdXR0b24gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTc4OmkzLsOHbHJDbHJQb3BvdmVyT3BlbkNsb3NlQnV0dG9uID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE3OTppMy5DbHJQb3BvdmVyQ29udGVudCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xODA6aTMuQ2xyVGltZWxpbmUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTgxOmkzLkNsclRpbWVsaW5lU3RlcCA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xODI6aTMuQ2xyVGltZWxpbmVTdGVwRGVzY3JpcHRpb24gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTgzOmkzLkNsclRpbWVsaW5lU3RlcEhlYWRlciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xODQ6aTMuQ2xyVGltZWxpbmVTdGVwVGl0bGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTg1Omk0Lsm1YW5ndWxhcl9wYWNrYWdlc19mb3Jtc19mb3Jtc19iYyA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xODY6aTQuTmdTZWxlY3RPcHRpb24gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTg3Omk0Lsm1YW5ndWxhcl9wYWNrYWdlc19mb3Jtc19mb3Jtc19iYiA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xODg6aTQuRGVmYXVsdFZhbHVlQWNjZXNzb3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTg5Omk0Lk51bWJlclZhbHVlQWNjZXNzb3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTkwOmk0LlJhbmdlVmFsdWVBY2Nlc3NvciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xOTE6aTQuQ2hlY2tib3hDb250cm9sVmFsdWVBY2Nlc3NvciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xOTI6aTQuU2VsZWN0Q29udHJvbFZhbHVlQWNjZXNzb3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTkzOmk0LlNlbGVjdE11bHRpcGxlQ29udHJvbFZhbHVlQWNjZXNzb3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTk0Omk0LlJhZGlvQ29udHJvbFZhbHVlQWNjZXNzb3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTk1Omk0Lk5nQ29udHJvbFN0YXR1cyA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8xOTY6aTQuTmdDb250cm9sU3RhdHVzR3JvdXAgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTk3Omk0LlJlcXVpcmVkVmFsaWRhdG9yID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzE5ODppNC5NaW5MZW5ndGhWYWxpZGF0b3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMTk5Omk0Lk1heExlbmd0aFZhbGlkYXRvciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMDA6aTQuUGF0dGVyblZhbGlkYXRvciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMDE6aTQuQ2hlY2tib3hSZXF1aXJlZFZhbGlkYXRvciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMDI6aTQuRW1haWxWYWxpZGF0b3IgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjAzOmk0Lk1pblZhbGlkYXRvciA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMDQ6aTQuTWF4VmFsaWRhdG9yID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIwNTppNC5OZ01vZGVsID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIwNjppNC5OZ01vZGVsR3JvdXAgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjA3Omk0Lk5nRm9ybSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMDg6aTUuQ2xyTnVtZXJpY0ZpZWxkID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIwOTppNi5DbHJNYXhOdW1lcmljID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIxMDppNi5DbHJNaW5OdW1lcmljID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIxMTppMi5Bc3luY1BpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjEyOmkyLlVwcGVyQ2FzZVBpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjEzOmkyLkxvd2VyQ2FzZVBpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjE0OmkyLkpzb25QaXBlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIxNTppMi5TbGljZVBpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjE2OmkyLkRlY2ltYWxQaXBlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIxNzppMi5QZXJjZW50UGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMTg6aTIuVGl0bGVDYXNlUGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMTk6aTIuQ3VycmVuY3lQaXBlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIyMDppMi5EYXRlUGlwZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMjE6aTIuSTE4blBsdXJhbFBpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjIyOmkyLkkxOG5TZWxlY3RQaXBlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIyMzppMi5LZXlWYWx1ZVBpcGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjI0OmkyLkNvbW1vbk1vZHVsZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMjU6aTMuQ2xhcml0eU1vZHVsZSA9ICg8YW55PihudWxsIGFzIGFueSkpO1xudmFyIF9kZWNsMF8yMjY6aTMuQ2xyRm9ybXNNb2R1bGUgPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbnZhciBfZGVjbDBfMjI3Omk0LkZvcm1zTW9kdWxlID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIyODppMC5UZW1wbGF0ZVJlZjxhbnk+ID0gKDxhbnk+KG51bGwgYXMgYW55KSk7XG52YXIgX2RlY2wwXzIyOTppMC5FbGVtZW50UmVmPGFueT4gPSAoPGFueT4obnVsbCBhcyBhbnkpKTtcbiJdfQ==
@@ -1 +0,0 @@
1
- {"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbolic":"class"},"type":{"summaryKind":2,"type":{"reference":{"__symbol":0,"members":[]},"diDeps":[],"lifecycleHooks":[]},"entryComponents":[{"componentType":{"__symbol":1,"members":[]},"componentFactory":{"__symbol":2,"members":[]}},{"componentType":{"__symbol":3,"members":[]},"componentFactory":{"__symbol":4,"members":[]}},{"componentType":{"__symbol":5,"members":[]},"componentFactory":{"__symbol":6,"members":[]}},{"componentType":{"__symbol":7,"members":[]},"componentFactory":{"__symbol":8,"members":[]}},{"componentType":{"__symbol":9,"members":[]},"componentFactory":{"__symbol":10,"members":[]}},{"componentType":{"__symbol":11,"members":[]},"componentFactory":{"__symbol":12,"members":[]}},{"componentType":{"__symbol":13,"members":[]},"componentFactory":{"__symbol":14,"members":[]}},{"componentType":{"__symbol":15,"members":[]},"componentFactory":{"__symbol":16,"members":[]}},{"componentType":{"__symbol":17,"members":[]},"componentFactory":{"__symbol":18,"members":[]}},{"componentType":{"__symbol":19,"members":[]},"componentFactory":{"__symbol":20,"members":[]}},{"componentType":{"__symbol":21,"members":[]},"componentFactory":{"__symbol":22,"members":[]}},{"componentType":{"__symbol":23,"members":[]},"componentFactory":{"__symbol":24,"members":[]}},{"componentType":{"__symbol":25,"members":[]},"componentFactory":{"__symbol":26,"members":[]}},{"componentType":{"__symbol":27,"members":[]},"componentFactory":{"__symbol":28,"members":[]}},{"componentType":{"__symbol":29,"members":[]},"componentFactory":{"__symbol":30,"members":[]}}],"providers":[{"provider":{"token":{"identifier":{"reference":{"__symbol":31,"members":[]}}},"useClass":{"reference":{"__symbol":32,"members":[]},"diDeps":[{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":33,"members":[]}}}}],"lifecycleHooks":[]},"useFactory":null,"deps":[{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":33,"members":[]}}}}],"multi":false},"module":{"reference":{"__symbol":34,"members":[]},"diDeps":[],"lifecycleHooks":[]}},{"provider":{"token":{"identifier":{"reference":{"__symbol":35,"members":[]}}},"useClass":null,"useValue":true,"useFactory":null,"multi":false},"module":{"reference":{"__symbol":36,"members":[]},"diDeps":[],"lifecycleHooks":[]}}],"modules":[{"reference":{"__symbol":34,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":37,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":38,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":39,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":40,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":41,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":42,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":43,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":44,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":45,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":46,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":47,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":48,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":49,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":50,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":51,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":52,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":53,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":54,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":55,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":56,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":57,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":58,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":59,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":60,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":61,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":62,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":63,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":64,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":65,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":36,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":66,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":67,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":68,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":69,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":70,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":71,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":72,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":73,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":74,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":75,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":76,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":77,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":78,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":79,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":80,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":81,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":82,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":83,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":84,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":85,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":86,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":87,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":88,"members":[]},"diDeps":[],"lifecycleHooks":[]},{"reference":{"__symbol":0,"members":[]},"diDeps":[],"lifecycleHooks":[]}],"exportedDirectives":[{"reference":{"__symbol":89,"members":[]}},{"reference":{"__symbol":90,"members":[]}},{"reference":{"__symbol":91,"members":[]}}],"exportedPipes":[]}}],"symbols":[{"__symbol":0,"name":"ClrNumericFieldModule","filePath":"./numeric-field.module"},{"__symbol":1,"name":"ClrControlContainer","filePath":"@clr/angular"},{"__symbol":2,"name":"ClrControlContainerNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":3,"name":"ɵbl","filePath":"@clr/angular"},{"__symbol":4,"name":"ɵblNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":5,"name":"ClrCheckboxWrapper","filePath":"@clr/angular"},{"__symbol":6,"name":"ClrCheckboxWrapperNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":7,"name":"ClrDateContainer","filePath":"@clr/angular"},{"__symbol":8,"name":"ClrDateContainerNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":9,"name":"ClrInputContainer","filePath":"@clr/angular"},{"__symbol":10,"name":"ClrInputContainerNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":11,"name":"ClrPasswordContainer","filePath":"@clr/angular"},{"__symbol":12,"name":"ClrPasswordContainerNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":13,"name":"ClrRadioWrapper","filePath":"@clr/angular"},{"__symbol":14,"name":"ClrRadioWrapperNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":15,"name":"ClrSelectContainer","filePath":"@clr/angular"},{"__symbol":16,"name":"ClrSelectContainerNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":17,"name":"ClrTextareaContainer","filePath":"@clr/angular"},{"__symbol":18,"name":"ClrTextareaContainerNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":19,"name":"ClrRangeContainer","filePath":"@clr/angular"},{"__symbol":20,"name":"ClrRangeContainerNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":21,"name":"ClrDraggableGhost","filePath":"@clr/angular"},{"__symbol":22,"name":"ClrDraggableGhostNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":23,"name":"ÇlrWrappedCell","filePath":"@clr/angular"},{"__symbol":24,"name":"ÇlrWrappedCellNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":25,"name":"ÇlrWrappedColumn","filePath":"@clr/angular"},{"__symbol":26,"name":"ÇlrWrappedColumnNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":27,"name":"ÇlrWrappedRow","filePath":"@clr/angular"},{"__symbol":28,"name":"ÇlrWrappedRowNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":29,"name":"ɵdz","filePath":"@clr/angular"},{"__symbol":30,"name":"ɵdzNgFactory","filePath":"../../../node_modules/@clr/angular/clr-angular.ngfactory"},{"__symbol":31,"name":"NgLocalization","filePath":"@angular/common"},{"__symbol":32,"name":"NgLocaleLocalization","filePath":"@angular/common"},{"__symbol":33,"name":"LOCALE_ID","filePath":"@angular/core"},{"__symbol":34,"name":"CommonModule","filePath":"@angular/common"},{"__symbol":35,"name":"FOCUS_ON_VIEW_INIT","filePath":"@clr/angular"},{"__symbol":36,"name":"ClrFocusOnViewInitModule","filePath":"@clr/angular"},{"__symbol":37,"name":"ClrIconModule","filePath":"@clr/angular"},{"__symbol":38,"name":"ClrConditionalModule","filePath":"@clr/angular"},{"__symbol":39,"name":"ClrDropdownModule","filePath":"@clr/angular"},{"__symbol":40,"name":"ClrAlertModule","filePath":"@clr/angular"},{"__symbol":41,"name":"ClrEmphasisModule","filePath":"@clr/angular"},{"__symbol":42,"name":"ClrCommonFormsModule","filePath":"@clr/angular"},{"__symbol":43,"name":"ɵbk","filePath":"@clr/angular"},{"__symbol":44,"name":"ClrCheckboxModule","filePath":"@clr/angular"},{"__symbol":45,"name":"ɵangular_packages_forms_forms_q","filePath":"@angular/forms"},{"__symbol":46,"name":"ɵangular_packages_forms_forms_d","filePath":"@angular/forms"},{"__symbol":47,"name":"FormsModule","filePath":"@angular/forms"},{"__symbol":48,"name":"ɵbm","filePath":"@clr/angular"},{"__symbol":49,"name":"ÇlrClrPopoverModuleNext","filePath":"@clr/angular"},{"__symbol":50,"name":"ClrSpinnerModule","filePath":"@clr/angular"},{"__symbol":51,"name":"ClrComboboxModule","filePath":"@clr/angular"},{"__symbol":52,"name":"ÇlrClrFocusTrapModule","filePath":"@clr/angular"},{"__symbol":53,"name":"ClrDatepickerModule","filePath":"@clr/angular"},{"__symbol":54,"name":"ClrInputModule","filePath":"@clr/angular"},{"__symbol":55,"name":"ClrPasswordModule","filePath":"@clr/angular"},{"__symbol":56,"name":"ClrRadioModule","filePath":"@clr/angular"},{"__symbol":57,"name":"ClrSelectModule","filePath":"@clr/angular"},{"__symbol":58,"name":"ClrTextareaModule","filePath":"@clr/angular"},{"__symbol":59,"name":"ClrRangeModule","filePath":"@clr/angular"},{"__symbol":60,"name":"ClrDatalistModule","filePath":"@clr/angular"},{"__symbol":61,"name":"ClrFormsModule","filePath":"@clr/angular"},{"__symbol":62,"name":"ClrLoadingModule","filePath":"@clr/angular"},{"__symbol":63,"name":"ɵce","filePath":"@clr/angular"},{"__symbol":64,"name":"ɵch","filePath":"@clr/angular"},{"__symbol":65,"name":"ClrDragAndDropModule","filePath":"@clr/angular"},{"__symbol":66,"name":"ClrDatagridModule","filePath":"@clr/angular"},{"__symbol":67,"name":"ClrStackViewModule","filePath":"@clr/angular"},{"__symbol":68,"name":"ClrTreeViewModule","filePath":"@clr/angular"},{"__symbol":69,"name":"ClrDataModule","filePath":"@clr/angular"},{"__symbol":70,"name":"ClrModalModule","filePath":"@clr/angular"},{"__symbol":71,"name":"ClrLoadingButtonModule","filePath":"@clr/angular"},{"__symbol":72,"name":"ClrButtonGroupModule","filePath":"@clr/angular"},{"__symbol":73,"name":"ClrButtonModule","filePath":"@clr/angular"},{"__symbol":74,"name":"ClrMainContainerModule","filePath":"@clr/angular"},{"__symbol":75,"name":"ClrNavigationModule","filePath":"@clr/angular"},{"__symbol":76,"name":"ɵdx","filePath":"@clr/angular"},{"__symbol":77,"name":"ClrTabsModule","filePath":"@clr/angular"},{"__symbol":78,"name":"ClrVerticalNavModule","filePath":"@clr/angular"},{"__symbol":79,"name":"ClrLayoutModule","filePath":"@clr/angular"},{"__symbol":80,"name":"ClrSignpostModule","filePath":"@clr/angular"},{"__symbol":81,"name":"ClrTooltipModule","filePath":"@clr/angular"},{"__symbol":82,"name":"ClrPopoverModule","filePath":"@clr/angular"},{"__symbol":83,"name":"ClrWizardModule","filePath":"@clr/angular"},{"__symbol":84,"name":"ClrAccordionModule","filePath":"@clr/angular"},{"__symbol":85,"name":"ClrStepperModule","filePath":"@clr/angular"},{"__symbol":86,"name":"ClrProgressBarModule","filePath":"@clr/angular"},{"__symbol":87,"name":"ClrTimelineModule","filePath":"@clr/angular"},{"__symbol":88,"name":"ClarityModule","filePath":"@clr/angular"},{"__symbol":89,"name":"ClrNumericField","filePath":"./numeric-field"},{"__symbol":90,"name":"ClrMaxNumeric","filePath":"./numeric-field-validators"},{"__symbol":91,"name":"ClrMinNumeric","filePath":"./numeric-field-validators"}]}
@@ -1 +0,0 @@
1
- {"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbolic":"class","members":{"textAlign":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["clrTextAlign"]}]}],"decimalPlaces":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["clrDecimalPlaces"]}]}],"roundValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["clrRoundDisplayValue"]}]}],"autofillDecimals":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["clrAutofillDecimals"]}]}],"decimalSeparator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["clrDecimalSep"]}]}],"groupingSeparator":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["clrGroupingSep"]}]}],"unitPosition":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["clrUnitPosition"]}]}],"numericValueChanged":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":2,"members":[]},"arguments":["clrNumericValueChange"]}]}],"numericValue":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["clrNumericValue"]}]}],"unit":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbol":1,"members":[]},"arguments":["clrUnit"]}]}],"registerOnChange":[{"__symbolic":"method"}],"registerOnTouched":[{"__symbolic":"method"}],"setDisabledState":[{"__symbolic":"method"}],"writeValue":[{"__symbolic":"method"}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbol":3,"members":[]},{"__symbol":4,"members":[]}]}],"ngOnInit":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"ngAfterViewChecked":[{"__symbolic":"method"}],"handleInputChanged":[{"__symbolic":"method"}],"formatInput":[{"__symbolic":"method"}],"formatNumber":[{"__symbolic":"method"}],"addMissingLeadingZero":[{"__symbolic":"method"}],"strip":[{"__symbolic":"method"}],"updateInput":[{"__symbolic":"method"}],"getValueForFormControl":[{"__symbolic":"method"}],"injectUnitSymbol":[{"__symbolic":"method"}],"detachListener":[{"__symbolic":"method"}],"roundOrTruncate":[{"__symbolic":"method"}]}},"type":{"summaryKind":1,"type":{"reference":{"__symbol":0,"members":[]},"diDeps":[{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":3,"members":[]}}}},{"isAttribute":false,"isHost":false,"isSelf":false,"isSkipSelf":false,"isOptional":false,"token":{"identifier":{"reference":{"__symbol":4,"members":[]}}}}],"lifecycleHooks":[0,1,7]},"isComponent":false,"selector":"[clrNumeric]","exportAs":null,"inputs":{"textAlign":"clrTextAlign","decimalPlaces":"clrDecimalPlaces","roundValue":"clrRoundDisplayValue","autofillDecimals":"clrAutofillDecimals","decimalSeparator":"clrDecimalSep","groupingSeparator":"clrGroupingSep","unitPosition":"clrUnitPosition","numericValue":"clrNumericValue","unit":"clrUnit"},"outputs":{"numericValueChanged":"clrNumericValueChange"},"hostListeners":{"change":"onChange(getValueForFormControl())","input":"onChange(getValueForFormControl())","blur":"onTouched()"},"hostProperties":{"class.text-right":"textAlign === \"right\""},"hostAttributes":{},"providers":[{"token":{"identifier":{"reference":{"__symbol":5,"members":[]}}},"useClass":null,"useFactory":null,"useExisting":{"identifier":{"reference":{"__symbol":0,"members":[]}}},"multi":true}],"viewProviders":[],"queries":[],"guards":{},"viewQueries":[],"entryComponents":[],"changeDetection":null,"template":null,"componentViewType":null,"rendererType":null,"componentFactory":null}}],"symbols":[{"__symbol":0,"name":"ClrNumericField","filePath":"./numeric-field"},{"__symbol":1,"name":"Input","filePath":"@angular/core"},{"__symbol":2,"name":"Output","filePath":"@angular/core"},{"__symbol":3,"name":"Renderer2","filePath":"@angular/core"},{"__symbol":4,"name":"ElementRef","filePath":"@angular/core"},{"__symbol":5,"name":"NG_VALUE_ACCESSOR","filePath":"@angular/forms"}]}
@@ -1 +0,0 @@
1
- {"moduleName":null,"summaries":[{"symbol":{"__symbol":0,"members":[]},"metadata":{"__symbol":1,"members":[]}},{"symbol":{"__symbol":2,"members":[]},"metadata":{"__symbol":3,"members":[]}}],"symbols":[{"__symbol":0,"name":"ClrPagedSearchResultList","filePath":"./index"},{"__symbol":1,"name":"ClrPagedSearchResultList","filePath":"./paged-search-result-list"},{"__symbol":2,"name":"ClrPagedSearchResultListModule","filePath":"./index"},{"__symbol":3,"name":"ClrPagedSearchResultListModule","filePath":"./paged-search-result-list.module"}]}