@koobiq/components 18.34.0 → 18.36.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 (583) hide show
  1. package/accordion/accordion.component.d.ts +1 -1
  2. package/app-switcher/_app-switcher-theme.scss +34 -0
  3. package/app-switcher/app-switcher-animations.d.ts +5 -0
  4. package/app-switcher/app-switcher-dropdown-app.d.ts +11 -0
  5. package/app-switcher/app-switcher-dropdown-app.scss +85 -0
  6. package/app-switcher/app-switcher-dropdown-site.d.ts +9 -0
  7. package/app-switcher/app-switcher-dropdown-site.scss +53 -0
  8. package/app-switcher/app-switcher.d.ts +191 -0
  9. package/app-switcher/app-switcher.module.d.ts +10 -0
  10. package/app-switcher/app-switcher.scss +64 -0
  11. package/app-switcher/index.d.ts +1 -0
  12. package/app-switcher/kbq-app-switcher-list-item.d.ts +16 -0
  13. package/app-switcher/kbq-app-switcher-list-item.scss +180 -0
  14. package/app-switcher/public-api.d.ts +6 -0
  15. package/badge/badge.component.d.ts +1 -1
  16. package/badge/badge.component.scss +2 -0
  17. package/breadcrumbs/breadcrumbs.scss +4 -0
  18. package/button/_button-theme.scss +1 -0
  19. package/button/button.component.d.ts +2 -2
  20. package/core/common-behaviors/clipboard.d.ts +1 -1
  21. package/core/common-behaviors/color.d.ts +5 -5
  22. package/core/common-behaviors/focus-monitor.d.ts +19 -0
  23. package/core/common-behaviors/hovered.d.ts +13 -0
  24. package/core/common-behaviors/index.d.ts +4 -0
  25. package/core/common-behaviors/orientation.d.ts +4 -0
  26. package/core/common-behaviors/read-state.d.ts +12 -0
  27. package/core/form-field/field-sizing-content.d.ts +21 -0
  28. package/core/form-field/index.d.ts +1 -0
  29. package/core/locales/en-US.d.ts +68 -0
  30. package/core/locales/es-LA.d.ts +68 -0
  31. package/core/locales/fa-IR.d.ts +68 -0
  32. package/core/locales/locale-service.d.ts +476 -0
  33. package/core/locales/pt-BR.d.ts +68 -0
  34. package/core/locales/ru-RU.d.ts +68 -0
  35. package/core/locales/tk-TM.d.ts +68 -0
  36. package/core/locales/types.d.ts +22 -0
  37. package/core/locales/zh-CN.d.ts +68 -0
  38. package/core/navbar/index.d.ts +1 -0
  39. package/core/navbar/rectangle-item.d.ts +14 -0
  40. package/core/option/action.d.ts +1 -1
  41. package/core/option/option.d.ts +4 -2
  42. package/core/pop-up/constants.d.ts +2 -1
  43. package/core/pop-up/pop-up-trigger.d.ts +5 -3
  44. package/core/pop-up/pop-up.d.ts +2 -1
  45. package/core/public-api.d.ts +1 -0
  46. package/core/select/common.d.ts +3 -0
  47. package/core/select/constants.d.ts +5 -0
  48. package/core/styles/common/_select.scss +5 -0
  49. package/core/utils/dom.d.ts +4 -0
  50. package/core/utils/index.d.ts +1 -0
  51. package/core/utils/utils.d.ts +4 -0
  52. package/datepicker/datepicker-input.directive.d.ts +18 -7
  53. package/divider/divider.scss +1 -0
  54. package/dropdown/dropdown-item.scss +1 -0
  55. package/dropdown/dropdown-trigger.directive.d.ts +7 -1
  56. package/dropdown/dropdown.component.d.ts +5 -1
  57. package/dropdown/dropdown.module.d.ts +1 -1
  58. package/esm2022/accordion/accordion-content.mjs +3 -3
  59. package/esm2022/accordion/accordion-header.mjs +3 -3
  60. package/esm2022/accordion/accordion-item.mjs +3 -3
  61. package/esm2022/accordion/accordion-trigger.component.mjs +3 -3
  62. package/esm2022/accordion/accordion.component.mjs +5 -5
  63. package/esm2022/accordion/accordion.module.mjs +4 -4
  64. package/esm2022/actions-panel/actions-panel-container.mjs +3 -3
  65. package/esm2022/actions-panel/actions-panel.mjs +3 -3
  66. package/esm2022/actions-panel/module.mjs +4 -4
  67. package/esm2022/alert/alert.component.mjs +12 -12
  68. package/esm2022/alert/alert.module.mjs +4 -4
  69. package/esm2022/app-switcher/app-switcher-animations.mjs +18 -0
  70. package/esm2022/app-switcher/app-switcher-dropdown-app.mjs +75 -0
  71. package/esm2022/app-switcher/app-switcher-dropdown-site.mjs +60 -0
  72. package/esm2022/app-switcher/app-switcher.mjs +446 -0
  73. package/esm2022/app-switcher/app-switcher.module.mjs +45 -0
  74. package/esm2022/app-switcher/index.mjs +2 -0
  75. package/esm2022/app-switcher/kbq-app-switcher-list-item.mjs +84 -0
  76. package/esm2022/app-switcher/koobiq-components-app-switcher.mjs +5 -0
  77. package/esm2022/app-switcher/public-api.mjs +7 -0
  78. package/esm2022/autocomplete/autocomplete-origin.directive.mjs +3 -3
  79. package/esm2022/autocomplete/autocomplete-trigger.directive.mjs +3 -3
  80. package/esm2022/autocomplete/autocomplete.component.mjs +3 -3
  81. package/esm2022/autocomplete/autocomplete.module.mjs +4 -4
  82. package/esm2022/badge/badge.component.mjs +11 -11
  83. package/esm2022/badge/badge.module.mjs +4 -4
  84. package/esm2022/breadcrumbs/breadcrumbs.mjs +17 -17
  85. package/esm2022/breadcrumbs/breadcrumbs.module.mjs +4 -4
  86. package/esm2022/button/button.component.mjs +9 -9
  87. package/esm2022/button/button.dropdown-trigger.directive.mjs +3 -3
  88. package/esm2022/button/button.module.mjs +4 -4
  89. package/esm2022/button-toggle/button-toggle.component.mjs +6 -6
  90. package/esm2022/button-toggle/button-toggle.module.mjs +4 -4
  91. package/esm2022/checkbox/checkbox-module.mjs +4 -4
  92. package/esm2022/checkbox/checkbox-required-validator.mjs +3 -3
  93. package/esm2022/checkbox/checkbox.mjs +3 -3
  94. package/esm2022/clamped-text/clamped-text.mjs +3 -3
  95. package/esm2022/clamped-text/module.mjs +4 -4
  96. package/esm2022/code-block/code-block-highlight.mjs +7 -7
  97. package/esm2022/code-block/code-block.mjs +4 -4
  98. package/esm2022/code-block/code-block.module.mjs +4 -4
  99. package/esm2022/content-panel/content-panel.mjs +24 -24
  100. package/esm2022/content-panel/module.mjs +4 -4
  101. package/esm2022/content-panel/resizable.mjs +6 -6
  102. package/esm2022/core/common-behaviors/clipboard.mjs +4 -4
  103. package/esm2022/core/common-behaviors/color.mjs +6 -7
  104. package/esm2022/core/common-behaviors/common-module.mjs +4 -4
  105. package/esm2022/core/common-behaviors/focus-monitor.mjs +37 -0
  106. package/esm2022/core/common-behaviors/hovered.mjs +31 -0
  107. package/esm2022/core/common-behaviors/index.mjs +5 -1
  108. package/esm2022/core/common-behaviors/orientation.mjs +2 -0
  109. package/esm2022/core/common-behaviors/read-state.mjs +33 -0
  110. package/esm2022/core/error/error-state-matcher.mjs +9 -9
  111. package/esm2022/core/form-field/field-sizing-content.mjs +114 -0
  112. package/esm2022/core/form-field/index.mjs +2 -1
  113. package/esm2022/core/formatters/date/formatter.mjs +3 -3
  114. package/esm2022/core/formatters/date/formatter.pipe.mjs +78 -78
  115. package/esm2022/core/formatters/filesize/formatter.mjs +3 -3
  116. package/esm2022/core/formatters/index.mjs +4 -4
  117. package/esm2022/core/formatters/number/formatter.mjs +12 -12
  118. package/esm2022/core/forms/forms-module.mjs +4 -4
  119. package/esm2022/core/forms/forms.directive.mjs +6 -6
  120. package/esm2022/core/highlight/highlight.pipe.mjs +3 -3
  121. package/esm2022/core/highlight/index.mjs +4 -4
  122. package/esm2022/core/line/line.mjs +7 -7
  123. package/esm2022/core/locales/en-US.mjs +111 -1
  124. package/esm2022/core/locales/es-LA.mjs +111 -1
  125. package/esm2022/core/locales/fa-IR.mjs +81 -1
  126. package/esm2022/core/locales/locale-service.mjs +3 -3
  127. package/esm2022/core/locales/locale-service.module.mjs +4 -4
  128. package/esm2022/core/locales/pt-BR.mjs +111 -1
  129. package/esm2022/core/locales/ru-RU.mjs +125 -1
  130. package/esm2022/core/locales/tk-TM.mjs +111 -1
  131. package/esm2022/core/locales/types.mjs +1 -1
  132. package/esm2022/core/locales/zh-CN.mjs +69 -1
  133. package/esm2022/core/navbar/index.mjs +2 -0
  134. package/esm2022/core/navbar/rectangle-item.mjs +40 -0
  135. package/esm2022/core/option/action-container.mjs +3 -3
  136. package/esm2022/core/option/action.mjs +4 -4
  137. package/esm2022/core/option/optgroup.mjs +3 -3
  138. package/esm2022/core/option/option-module.mjs +4 -4
  139. package/esm2022/core/option/option.mjs +10 -6
  140. package/esm2022/core/pop-up/constants.mjs +2 -1
  141. package/esm2022/core/pop-up/pop-up-trigger.mjs +10 -6
  142. package/esm2022/core/pop-up/pop-up.mjs +4 -4
  143. package/esm2022/core/public-api.mjs +2 -1
  144. package/esm2022/core/select/common.mjs +27 -17
  145. package/esm2022/core/select/constants.mjs +6 -1
  146. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.mjs +3 -3
  147. package/esm2022/core/selection/pseudo-checkbox/pseudo-checkbox.module.mjs +4 -4
  148. package/esm2022/core/services/measure-scrollbar.service.mjs +3 -3
  149. package/esm2022/core/services/theme.service.mjs +3 -3
  150. package/esm2022/core/utils/dom.mjs +8 -0
  151. package/esm2022/core/utils/index.mjs +2 -1
  152. package/esm2022/core/utils/utils.mjs +9 -1
  153. package/esm2022/core/version.mjs +2 -2
  154. package/esm2022/datepicker/calendar-body.component.mjs +3 -3
  155. package/esm2022/datepicker/calendar-header.component.mjs +3 -3
  156. package/esm2022/datepicker/calendar.component.mjs +3 -3
  157. package/esm2022/datepicker/datepicker-input.directive.mjs +29 -26
  158. package/esm2022/datepicker/datepicker-intl.mjs +3 -3
  159. package/esm2022/datepicker/datepicker-module.mjs +4 -4
  160. package/esm2022/datepicker/datepicker-toggle.component.mjs +9 -9
  161. package/esm2022/datepicker/datepicker.component.mjs +6 -6
  162. package/esm2022/datepicker/month-view.component.mjs +3 -3
  163. package/esm2022/divider/divider.component.mjs +4 -4
  164. package/esm2022/divider/divider.module.mjs +4 -4
  165. package/esm2022/dl/dl.component.mjs +9 -9
  166. package/esm2022/dl/dl.module.mjs +4 -4
  167. package/esm2022/dropdown/dropdown-content.directive.mjs +3 -3
  168. package/esm2022/dropdown/dropdown-item.component.mjs +5 -5
  169. package/esm2022/dropdown/dropdown-trigger.directive.mjs +33 -13
  170. package/esm2022/dropdown/dropdown.component.mjs +18 -8
  171. package/esm2022/dropdown/dropdown.module.mjs +14 -10
  172. package/esm2022/dynamic-translation/dynamic-translation.mjs +9 -9
  173. package/esm2022/dynamic-translation/module.mjs +4 -4
  174. package/esm2022/ellipsis-center/ellipsis-center.directive.mjs +7 -7
  175. package/esm2022/empty-state/empty-state.component.mjs +15 -15
  176. package/esm2022/empty-state/empty-state.module.mjs +4 -4
  177. package/esm2022/file-upload/file-drop.mjs +3 -3
  178. package/esm2022/file-upload/file-upload.mjs +6 -1
  179. package/esm2022/file-upload/file-upload.module.mjs +4 -4
  180. package/esm2022/file-upload/multiple-file-upload.component.mjs +29 -13
  181. package/esm2022/file-upload/single-file-upload.component.mjs +25 -10
  182. package/esm2022/filter-bar/filter-bar-button.mjs +3 -3
  183. package/esm2022/filter-bar/filter-bar.mjs +6 -6
  184. package/esm2022/filter-bar/filter-bar.module.mjs +4 -4
  185. package/esm2022/filter-bar/filter-refresher.mjs +3 -3
  186. package/esm2022/filter-bar/filter-reset.mjs +3 -3
  187. package/esm2022/filter-bar/filter-search.mjs +3 -3
  188. package/esm2022/filter-bar/filters.mjs +18 -6
  189. package/esm2022/filter-bar/pipe-add.mjs +5 -5
  190. package/esm2022/filter-bar/pipe.directive.mjs +3 -3
  191. package/esm2022/filter-bar/pipes/base-pipe.mjs +7 -7
  192. package/esm2022/filter-bar/pipes/pipe-button.mjs +3 -3
  193. package/esm2022/filter-bar/pipes/pipe-date.mjs +6 -6
  194. package/esm2022/filter-bar/pipes/pipe-datetime.mjs +6 -6
  195. package/esm2022/filter-bar/pipes/pipe-multi-select.mjs +19 -14
  196. package/esm2022/filter-bar/pipes/pipe-multi-tree-select.mjs +12 -7
  197. package/esm2022/filter-bar/pipes/pipe-readonly.mjs +6 -6
  198. package/esm2022/filter-bar/pipes/pipe-select.mjs +6 -6
  199. package/esm2022/filter-bar/pipes/pipe-state.mjs +3 -3
  200. package/esm2022/filter-bar/pipes/pipe-text.mjs +6 -6
  201. package/esm2022/filter-bar/pipes/pipe-title.mjs +3 -3
  202. package/esm2022/filter-bar/pipes/pipe-tree-select.mjs +6 -6
  203. package/esm2022/form-field/cleaner.mjs +3 -3
  204. package/esm2022/form-field/error.mjs +3 -3
  205. package/esm2022/form-field/fieldset.mjs +11 -11
  206. package/esm2022/form-field/form-field.mjs +11 -11
  207. package/esm2022/form-field/form-field.module.mjs +4 -4
  208. package/esm2022/form-field/hint.mjs +3 -3
  209. package/esm2022/form-field/label.mjs +3 -3
  210. package/esm2022/form-field/password-hint.mjs +3 -3
  211. package/esm2022/form-field/password-toggle.mjs +7 -7
  212. package/esm2022/form-field/prefix.mjs +3 -3
  213. package/esm2022/form-field/reactive-password-hint.mjs +3 -3
  214. package/esm2022/form-field/stepper.mjs +3 -3
  215. package/esm2022/form-field/suffix.mjs +3 -3
  216. package/esm2022/form-field/validate.directive.mjs +3 -3
  217. package/esm2022/icon/icon-button.component.mjs +3 -3
  218. package/esm2022/icon/icon-item.component.mjs +3 -3
  219. package/esm2022/icon/icon.component.mjs +4 -4
  220. package/esm2022/icon/icon.module.mjs +4 -4
  221. package/esm2022/inline-edit/index.mjs +3 -0
  222. package/esm2022/inline-edit/inline-edit.mjs +378 -0
  223. package/esm2022/inline-edit/koobiq-components-inline-edit.mjs +5 -0
  224. package/esm2022/inline-edit/module.mjs +25 -0
  225. package/esm2022/input/input-number-validators.mjs +6 -6
  226. package/esm2022/input/input-number.mjs +4 -4
  227. package/esm2022/input/input-password.mjs +4 -4
  228. package/esm2022/input/input.mjs +7 -7
  229. package/esm2022/input/input.module.mjs +4 -4
  230. package/esm2022/link/link.component.mjs +6 -6
  231. package/esm2022/link/link.module.mjs +4 -4
  232. package/esm2022/list/list-selection.component.mjs +10 -10
  233. package/esm2022/list/list.component.mjs +6 -6
  234. package/esm2022/list/list.module.mjs +4 -4
  235. package/esm2022/loader-overlay/loader-overlay.component.mjs +13 -13
  236. package/esm2022/loader-overlay/loader-overlay.module.mjs +4 -4
  237. package/esm2022/markdown/markdown.component.mjs +5 -5
  238. package/esm2022/markdown/markdown.module.mjs +4 -4
  239. package/esm2022/markdown/markdown.service.mjs +3 -3
  240. package/esm2022/modal/css-unit.pipe.mjs +3 -3
  241. package/esm2022/modal/modal-control.service.mjs +3 -3
  242. package/esm2022/modal/modal.component.mjs +4 -4
  243. package/esm2022/modal/modal.directive.mjs +12 -12
  244. package/esm2022/modal/modal.module.mjs +4 -4
  245. package/esm2022/modal/modal.service.mjs +3 -3
  246. package/esm2022/navbar/navbar-item.component.mjs +49 -38
  247. package/esm2022/navbar/navbar.component.mjs +10 -10
  248. package/esm2022/navbar/navbar.module.mjs +4 -4
  249. package/esm2022/navbar/vertical-navbar.component.mjs +4 -4
  250. package/esm2022/navbar-ic/index.mjs +2 -0
  251. package/esm2022/navbar-ic/koobiq-components-navbar-ic.mjs +5 -0
  252. package/esm2022/navbar-ic/navbar-ic-header.mjs +58 -0
  253. package/esm2022/navbar-ic/navbar-ic-item.mjs +391 -0
  254. package/esm2022/navbar-ic/navbar-ic.animation.mjs +9 -0
  255. package/esm2022/navbar-ic/navbar-ic.mjs +286 -0
  256. package/esm2022/navbar-ic/navbar-ic.module.mjs +74 -0
  257. package/esm2022/navbar-ic/public-api.mjs +5 -0
  258. package/esm2022/notification-center/index.mjs +2 -0
  259. package/esm2022/notification-center/koobiq-components-notification-center.mjs +5 -0
  260. package/esm2022/notification-center/notification-center-animations.mjs +18 -0
  261. package/esm2022/notification-center/notification-center.mjs +353 -0
  262. package/esm2022/notification-center/notification-center.module.mjs +38 -0
  263. package/esm2022/notification-center/notification-center.service.mjs +127 -0
  264. package/esm2022/notification-center/notification-item.mjs +70 -0
  265. package/esm2022/notification-center/public-api.mjs +5 -0
  266. package/esm2022/overflow-items/module.mjs +4 -4
  267. package/esm2022/overflow-items/overflow-items.mjs +95 -41
  268. package/esm2022/popover/popover-confirm.component.mjs +10 -10
  269. package/esm2022/popover/popover.component.mjs +24 -14
  270. package/esm2022/popover/popover.module.mjs +4 -4
  271. package/esm2022/progress-bar/progress-bar.component.mjs +9 -9
  272. package/esm2022/progress-bar/progress-bar.module.mjs +4 -4
  273. package/esm2022/progress-spinner/progress-spinner.component.mjs +9 -9
  274. package/esm2022/progress-spinner/progress-spinner.module.mjs +4 -4
  275. package/esm2022/radio/radio.component.mjs +6 -6
  276. package/esm2022/radio/radio.module.mjs +4 -4
  277. package/esm2022/risk-level/risk-level.component.mjs +3 -3
  278. package/esm2022/risk-level/risk-level.module.mjs +4 -4
  279. package/esm2022/scrollbar/scrollbar.component.mjs +3 -3
  280. package/esm2022/scrollbar/scrollbar.directive.mjs +3 -3
  281. package/esm2022/scrollbar/scrollbar.module.mjs +4 -4
  282. package/esm2022/search-expandable/index.mjs +2 -0
  283. package/esm2022/search-expandable/koobiq-components-search-expandable.mjs +5 -0
  284. package/esm2022/search-expandable/public-api.mjs +3 -0
  285. package/esm2022/search-expandable/search-expandable.mjs +177 -0
  286. package/esm2022/search-expandable/search-expandable.module.mjs +18 -0
  287. package/esm2022/select/select-option.directive.mjs +3 -3
  288. package/esm2022/select/select.component.mjs +37 -10
  289. package/esm2022/select/select.module.mjs +4 -4
  290. package/esm2022/sidebar/sidebar.component.mjs +9 -9
  291. package/esm2022/sidebar/sidebar.module.mjs +4 -4
  292. package/esm2022/sidepanel/sidepanel-container.component.mjs +3 -3
  293. package/esm2022/sidepanel/sidepanel-directives.mjs +15 -15
  294. package/esm2022/sidepanel/sidepanel.module.mjs +4 -4
  295. package/esm2022/sidepanel/sidepanel.service.mjs +3 -3
  296. package/esm2022/split-button/index.mjs +2 -0
  297. package/esm2022/split-button/koobiq-components-split-button.mjs +5 -0
  298. package/esm2022/split-button/public-api.mjs +3 -0
  299. package/esm2022/split-button/split-button.mjs +92 -0
  300. package/esm2022/split-button/split-button.module.mjs +18 -0
  301. package/esm2022/splitter/splitter.component.mjs +13 -13
  302. package/esm2022/splitter/splitter.module.mjs +4 -4
  303. package/esm2022/table/table.component.mjs +6 -6
  304. package/esm2022/table/table.module.mjs +4 -4
  305. package/esm2022/tabs/paginated-tab-header.mjs +4 -4
  306. package/esm2022/tabs/tab-body.component.mjs +6 -6
  307. package/esm2022/tabs/tab-content.directive.mjs +3 -3
  308. package/esm2022/tabs/tab-group.component.mjs +15 -15
  309. package/esm2022/tabs/tab-header.component.mjs +4 -4
  310. package/esm2022/tabs/tab-label-wrapper.directive.mjs +4 -4
  311. package/esm2022/tabs/tab-label.directive.mjs +3 -3
  312. package/esm2022/tabs/tab-nav-bar.mjs +10 -10
  313. package/esm2022/tabs/tab.component.mjs +3 -3
  314. package/esm2022/tabs/tabs.module.mjs +4 -4
  315. package/esm2022/tags/tag-input.mjs +17 -11
  316. package/esm2022/tags/tag-list.component.mjs +256 -195
  317. package/esm2022/tags/tag.component.mjs +398 -118
  318. package/esm2022/tags/tag.module.mjs +20 -10
  319. package/esm2022/textarea/textarea.component.mjs +5 -5
  320. package/esm2022/textarea/textarea.module.mjs +4 -4
  321. package/esm2022/time-range/constants.mjs +21 -0
  322. package/esm2022/time-range/index.mjs +8 -0
  323. package/esm2022/time-range/koobiq-components-time-range.mjs +5 -0
  324. package/esm2022/time-range/module.mjs +36 -0
  325. package/esm2022/time-range/time-range-editor.mjs +219 -0
  326. package/esm2022/time-range/time-range-title-as-form-field.mjs +59 -0
  327. package/esm2022/time-range/time-range-title.mjs +112 -0
  328. package/esm2022/time-range/time-range.mjs +229 -0
  329. package/esm2022/time-range/time-range.service.mjs +189 -0
  330. package/esm2022/time-range/types.mjs +2 -0
  331. package/esm2022/timepicker/timepicker.directive.mjs +4 -4
  332. package/esm2022/timepicker/timepicker.module.mjs +4 -4
  333. package/esm2022/timezone/cities-by-filter.pipe.mjs +3 -3
  334. package/esm2022/timezone/timezone-option.component.mjs +3 -3
  335. package/esm2022/timezone/timezone-option.directive.mjs +3 -3
  336. package/esm2022/timezone/timezone-select.component.mjs +9 -9
  337. package/esm2022/timezone/timezone.module.mjs +4 -4
  338. package/esm2022/timezone/utc-offset.pipe.mjs +3 -3
  339. package/esm2022/title/title.directive.mjs +3 -3
  340. package/esm2022/title/title.module.mjs +4 -4
  341. package/esm2022/toast/toast-container.component.mjs +3 -3
  342. package/esm2022/toast/toast.component.mjs +20 -14
  343. package/esm2022/toast/toast.module.mjs +4 -4
  344. package/esm2022/toast/toast.service.mjs +5 -4
  345. package/esm2022/toast/toast.type.mjs +1 -1
  346. package/esm2022/toggle/toggle.component.mjs +3 -3
  347. package/esm2022/toggle/toggle.module.mjs +4 -4
  348. package/esm2022/tooltip/tooltip.component.mjs +20 -20
  349. package/esm2022/tooltip/tooltip.module.mjs +4 -4
  350. package/esm2022/top-bar/module.mjs +4 -4
  351. package/esm2022/top-bar/top-bar.mjs +9 -9
  352. package/esm2022/tree/node.mjs +3 -3
  353. package/esm2022/tree/outlet.mjs +3 -3
  354. package/esm2022/tree/padding.directive.mjs +3 -3
  355. package/esm2022/tree/toggle.mjs +16 -12
  356. package/esm2022/tree/tree-base.mjs +7 -7
  357. package/esm2022/tree/tree-option.component.mjs +5 -9
  358. package/esm2022/tree/tree-selection.component.mjs +4 -4
  359. package/esm2022/tree/tree.mjs +3 -3
  360. package/esm2022/tree/tree.module.mjs +4 -4
  361. package/esm2022/tree-select/tree-select.component.mjs +54 -14
  362. package/esm2022/tree-select/tree-select.module.mjs +4 -4
  363. package/esm2022/username/module.mjs +4 -4
  364. package/esm2022/username/username.mjs +15 -15
  365. package/esm2022/username/username.pipe.mjs +8 -8
  366. package/fesm2022/koobiq-components-accordion.mjs +20 -20
  367. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  368. package/fesm2022/koobiq-components-actions-panel.mjs +10 -10
  369. package/fesm2022/koobiq-components-alert.mjs +16 -16
  370. package/fesm2022/koobiq-components-app-switcher.mjs +704 -0
  371. package/fesm2022/koobiq-components-app-switcher.mjs.map +1 -0
  372. package/fesm2022/koobiq-components-autocomplete.mjs +13 -13
  373. package/fesm2022/koobiq-components-badge.mjs +14 -14
  374. package/fesm2022/koobiq-components-badge.mjs.map +1 -1
  375. package/fesm2022/koobiq-components-breadcrumbs.mjs +20 -20
  376. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  377. package/fesm2022/koobiq-components-button-toggle.mjs +10 -10
  378. package/fesm2022/koobiq-components-button.mjs +15 -15
  379. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  380. package/fesm2022/koobiq-components-checkbox.mjs +10 -10
  381. package/fesm2022/koobiq-components-clamped-text.mjs +7 -7
  382. package/fesm2022/koobiq-components-code-block.mjs +13 -13
  383. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  384. package/fesm2022/koobiq-components-content-panel.mjs +34 -34
  385. package/fesm2022/koobiq-components-core.mjs +1218 -237
  386. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  387. package/fesm2022/koobiq-components-datepicker.mjs +62 -60
  388. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  389. package/fesm2022/koobiq-components-divider.mjs +8 -8
  390. package/fesm2022/koobiq-components-divider.mjs.map +1 -1
  391. package/fesm2022/koobiq-components-dl.mjs +13 -13
  392. package/fesm2022/koobiq-components-dropdown.mjs +69 -35
  393. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  394. package/fesm2022/koobiq-components-dynamic-translation.mjs +13 -13
  395. package/fesm2022/koobiq-components-ellipsis-center.mjs +7 -7
  396. package/fesm2022/koobiq-components-empty-state.mjs +19 -19
  397. package/fesm2022/koobiq-components-file-upload.mjs +60 -25
  398. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  399. package/fesm2022/koobiq-components-filter-bar.mjs +118 -96
  400. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  401. package/fesm2022/koobiq-components-form-field.mjs +60 -60
  402. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  403. package/fesm2022/koobiq-components-icon.mjs +13 -13
  404. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  405. package/fesm2022/koobiq-components-inline-edit.mjs +407 -0
  406. package/fesm2022/koobiq-components-inline-edit.mjs.map +1 -0
  407. package/fesm2022/koobiq-components-input.mjs +22 -22
  408. package/fesm2022/koobiq-components-input.mjs.map +1 -1
  409. package/fesm2022/koobiq-components-link.mjs +10 -10
  410. package/fesm2022/koobiq-components-link.mjs.map +1 -1
  411. package/fesm2022/koobiq-components-list.mjs +19 -19
  412. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  413. package/fesm2022/koobiq-components-loader-overlay.mjs +16 -16
  414. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  415. package/fesm2022/koobiq-components-markdown.mjs +12 -12
  416. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  417. package/fesm2022/koobiq-components-modal.mjs +28 -28
  418. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  419. package/fesm2022/koobiq-components-navbar-ic.mjs +797 -0
  420. package/fesm2022/koobiq-components-navbar-ic.mjs.map +1 -0
  421. package/fesm2022/koobiq-components-navbar.mjs +65 -54
  422. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  423. package/fesm2022/koobiq-components-notification-center.mjs +586 -0
  424. package/fesm2022/koobiq-components-notification-center.mjs.map +1 -0
  425. package/fesm2022/koobiq-components-overflow-items.mjs +98 -44
  426. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  427. package/fesm2022/koobiq-components-popover.mjs +36 -26
  428. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  429. package/fesm2022/koobiq-components-progress-bar.mjs +13 -13
  430. package/fesm2022/koobiq-components-progress-spinner.mjs +13 -13
  431. package/fesm2022/koobiq-components-radio.mjs +10 -10
  432. package/fesm2022/koobiq-components-risk-level.mjs +7 -7
  433. package/fesm2022/koobiq-components-scrollbar.mjs +10 -10
  434. package/fesm2022/koobiq-components-search-expandable.mjs +199 -0
  435. package/fesm2022/koobiq-components-search-expandable.mjs.map +1 -0
  436. package/fesm2022/koobiq-components-select.mjs +43 -16
  437. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  438. package/fesm2022/koobiq-components-sidebar.mjs +13 -13
  439. package/fesm2022/koobiq-components-sidepanel.mjs +25 -25
  440. package/fesm2022/koobiq-components-split-button.mjs +114 -0
  441. package/fesm2022/koobiq-components-split-button.mjs.map +1 -0
  442. package/fesm2022/koobiq-components-splitter.mjs +16 -16
  443. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  444. package/fesm2022/koobiq-components-table.mjs +10 -10
  445. package/fesm2022/koobiq-components-tabs.mjs +52 -52
  446. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  447. package/fesm2022/koobiq-components-tags.mjs +683 -331
  448. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  449. package/fesm2022/koobiq-components-textarea.mjs +8 -8
  450. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  451. package/fesm2022/koobiq-components-time-range.mjs +840 -0
  452. package/fesm2022/koobiq-components-time-range.mjs.map +1 -0
  453. package/fesm2022/koobiq-components-timepicker.mjs +7 -7
  454. package/fesm2022/koobiq-components-timepicker.mjs.map +1 -1
  455. package/fesm2022/koobiq-components-timezone.mjs +24 -24
  456. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  457. package/fesm2022/koobiq-components-title.mjs +7 -7
  458. package/fesm2022/koobiq-components-toast.mjs +28 -21
  459. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  460. package/fesm2022/koobiq-components-toggle.mjs +7 -7
  461. package/fesm2022/koobiq-components-tooltip.mjs +23 -23
  462. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  463. package/fesm2022/koobiq-components-top-bar.mjs +13 -13
  464. package/fesm2022/koobiq-components-tree-select.mjs +57 -17
  465. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  466. package/fesm2022/koobiq-components-tree.mjs +44 -44
  467. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  468. package/fesm2022/koobiq-components-username.mjs +27 -27
  469. package/file-upload/_file-upload-theme.scss +1 -1
  470. package/file-upload/file-upload.d.ts +6 -3
  471. package/file-upload/multiple-file-upload.component.d.ts +4 -1
  472. package/file-upload/single-file-upload.component.d.ts +4 -1
  473. package/filter-bar/_filter-bar-theme.scss +2 -2
  474. package/filter-bar/filters.d.ts +1 -0
  475. package/filter-bar/pipes/base-pipe.d.ts +1 -1
  476. package/filter-bar/pipes/base-pipe.scss +3 -3
  477. package/filter-bar/pipes/pipe-date.scss +1 -0
  478. package/form-field/fieldset-tokens.scss +1 -1
  479. package/form-field/form-field-tokens.scss +1 -1
  480. package/form-field/form-field.d.ts +1 -1
  481. package/form-field/form-field.scss +8 -10
  482. package/form-field/password-toggle.d.ts +1 -1
  483. package/icon/icon.component.d.ts +2 -2
  484. package/inline-edit/index.d.ts +2 -0
  485. package/inline-edit/inline-edit-tokens.scss +8 -0
  486. package/inline-edit/inline-edit.d.ts +136 -0
  487. package/inline-edit/inline-edit.scss +208 -0
  488. package/inline-edit/module.d.ts +7 -0
  489. package/input/input-number.d.ts +1 -1
  490. package/input/input-password.d.ts +2 -2
  491. package/input/input.d.ts +2 -2
  492. package/link/link.component.d.ts +3 -3
  493. package/list/list-selection.component.d.ts +1 -1
  494. package/loader-overlay/loader-overlay.component.d.ts +1 -1
  495. package/markdown/_markdown-theme.scss +1 -1
  496. package/markdown/markdown-tokens.scss +1 -0
  497. package/markdown/markdown.scss +8 -0
  498. package/modal/modal.component.d.ts +1 -1
  499. package/navbar/navbar-item.component.d.ts +3 -2
  500. package/navbar/navbar.component.d.ts +4 -4
  501. package/navbar/vertical-navbar.component.d.ts +2 -2
  502. package/navbar-ic/_navbar-ic-theme.scss +81 -0
  503. package/navbar-ic/index.d.ts +1 -0
  504. package/navbar-ic/navbar-ic-divider.scss +7 -0
  505. package/navbar-ic/navbar-ic-header.d.ts +18 -0
  506. package/navbar-ic/navbar-ic-header.scss +53 -0
  507. package/navbar-ic/navbar-ic-item.d.ts +125 -0
  508. package/navbar-ic/navbar-ic-item.scss +96 -0
  509. package/navbar-ic/navbar-ic-tokens.scss +22 -0
  510. package/navbar-ic/navbar-ic.animation.d.ts +2 -0
  511. package/navbar-ic/navbar-ic.d.ts +105 -0
  512. package/navbar-ic/navbar-ic.module.d.ts +14 -0
  513. package/navbar-ic/navbar-ic.scss +32 -0
  514. package/navbar-ic/public-api.d.ts +4 -0
  515. package/notification-center/_notification-center-theme.scss +27 -0
  516. package/notification-center/index.d.ts +1 -0
  517. package/notification-center/notification-center-animations.d.ts +5 -0
  518. package/notification-center/notification-center.d.ts +153 -0
  519. package/notification-center/notification-center.module.d.ts +7 -0
  520. package/notification-center/notification-center.scss +126 -0
  521. package/notification-center/notification-center.service.d.ts +72 -0
  522. package/notification-center/notification-item.d.ts +27 -0
  523. package/notification-center/notification-item.scss +157 -0
  524. package/notification-center/public-api.d.ts +4 -0
  525. package/overflow-items/overflow-items.d.ts +23 -9
  526. package/package.json +52 -10
  527. package/popover/_popover-theme.scss +6 -2
  528. package/popover/popover-tokens.scss +2 -0
  529. package/popover/popover.component.d.ts +8 -1
  530. package/popover/popover.scss +15 -7
  531. package/prebuilt-themes/dark-theme.css +1 -1
  532. package/prebuilt-themes/light-theme.css +1 -1
  533. package/prebuilt-themes/theme.css +1 -1
  534. package/schematics/ng-add/index.js +6 -6
  535. package/search-expandable/index.d.ts +1 -0
  536. package/search-expandable/public-api.d.ts +2 -0
  537. package/search-expandable/search-expandable.d.ts +70 -0
  538. package/search-expandable/search-expandable.module.d.ts +7 -0
  539. package/search-expandable/search-expandable.scss +21 -0
  540. package/select/select.component.d.ts +38 -3
  541. package/split-button/_split-button-theme.scss +59 -0
  542. package/split-button/index.d.ts +1 -0
  543. package/split-button/public-api.d.ts +2 -0
  544. package/split-button/split-button.d.ts +31 -0
  545. package/split-button/split-button.module.d.ts +7 -0
  546. package/split-button/split-button.scss +83 -0
  547. package/splitter/splitter.component.d.ts +5 -5
  548. package/tabs/paginated-tab-header.d.ts +1 -1
  549. package/tabs/tab-header.component.d.ts +2 -2
  550. package/tabs/tab-label-wrapper.directive.d.ts +2 -2
  551. package/tabs/tab-nav-bar.d.ts +3 -3
  552. package/tags/_tag-theme.scss +31 -16
  553. package/tags/tag-input.d.ts +2 -0
  554. package/tags/tag-list.component.d.ts +141 -45
  555. package/tags/tag-list.scss +16 -0
  556. package/tags/tag-tokens.scss +17 -1
  557. package/tags/tag.component.d.ts +151 -22
  558. package/tags/tag.module.d.ts +1 -1
  559. package/tags/tag.scss +27 -0
  560. package/textarea/textarea-tokens.scss +1 -1
  561. package/textarea/textarea.component.d.ts +2 -2
  562. package/time-range/constants.d.ts +8 -0
  563. package/time-range/index.d.ts +7 -0
  564. package/time-range/module.d.ts +10 -0
  565. package/time-range/time-range-editor.d.ts +67 -0
  566. package/time-range/time-range-title-as-form-field.d.ts +40 -0
  567. package/time-range/time-range-title.d.ts +18 -0
  568. package/time-range/time-range.d.ts +75 -0
  569. package/time-range/time-range.scss +66 -0
  570. package/time-range/time-range.service.d.ts +29 -0
  571. package/time-range/types.d.ts +43 -0
  572. package/timepicker/timepicker.directive.d.ts +2 -2
  573. package/toast/toast.component.d.ts +6 -4
  574. package/toast/toast.component.scss +11 -1
  575. package/toast/toast.service.d.ts +1 -0
  576. package/toast/toast.type.d.ts +1 -0
  577. package/tooltip/_tooltip-theme.scss +9 -2
  578. package/tooltip/tooltip-tokens.scss +2 -0
  579. package/tree/toggle.d.ts +1 -1
  580. package/tree/tree-base.d.ts +2 -2
  581. package/tree/tree-option.component.d.ts +1 -1
  582. package/tree/tree-selection.component.d.ts +1 -1
  583. package/tree-select/tree-select.component.d.ts +44 -3
@@ -326,10 +326,10 @@ export class KbqFormField extends KbqColorDirective {
326
326
  .pipe(takeUntilDestroyed(this.destroyRef))
327
327
  .subscribe(() => this.changeDetectorRef.markForCheck());
328
328
  }
329
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqFormField, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
330
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: KbqFormField, isStandalone: true, selector: "kbq-form-field", inputs: { noBorders: { classPropertyName: "noBorders", publicName: "noBorders", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "keydown": "onKeyDown($event)", "mouseenter": "onHoverChanged(true)", "mouseleave": "onHoverChanged(false)" }, properties: { "class.kbq-form-field_invalid": "invalid", "class.kbq-disabled": "disabled", "class.kbq-form-field_no-borders": "noBorders()", "class.ng-untouched": "shouldForward(\"untouched\")", "class.ng-touched": "shouldForward(\"touched\")", "class.ng-pristine": "shouldForward(\"pristine\")", "class.ng-dirty": "shouldForward(\"dirty\")", "class.ng-valid": "shouldForward(\"valid\")", "class.ng-invalid": "shouldForward(\"invalid\")", "class.ng-pending": "shouldForward(\"pending\")" }, classAttribute: "kbq-form-field" }, providers: [{ provide: KBQ_FORM_FIELD_REF, useExisting: KbqFormField }], queries: [{ propertyName: "control", first: true, predicate: KbqFormFieldControl, descendants: true }, { propertyName: "stepper", first: true, predicate: KbqStepper, descendants: true }, { propertyName: "cleaner", first: true, predicate: KbqCleaner }, { propertyName: "passwordToggle", first: true, predicate: KbqPasswordToggle, descendants: true }, { propertyName: "label", first: true, predicate: KbqLabel, descendants: true }, { propertyName: "hint", predicate: KbqHint }, { propertyName: "passwordHints", predicate: KbqPasswordHint }, { propertyName: "suffix", predicate: KbqSuffix }, { propertyName: "prefix", predicate: KbqPrefix }, { propertyName: "reactivePasswordHint", predicate: KbqReactivePasswordHint }, { propertyName: "error", predicate: KbqError }], viewQueries: [{ propertyName: "connectionContainerRef", first: true, predicate: ["connectionContainer"], descendants: true, static: true }], exportAs: ["kbqFormField"], usesInheritance: true, ngImport: i0, template: "@if (hasLabel) {\n <label class=\"kbq-form-field__label\" [attr.for]=\"control.id\">\n <ng-content select=\"kbq-label\" />\n </label>\n}\n\n<div #connectionContainer class=\"kbq-form-field__container\" (click)=\"onContainerClick($event)\">\n @if (hasPrefix) {\n <div class=\"kbq-form-field__prefix\">\n <ng-content select=\"[kbqPrefix]\" />\n </div>\n }\n\n <div class=\"kbq-form-field__infix\">\n <ng-content />\n </div>\n\n @if (hasSuffix || hasCleaner || hasPasswordToggle || hasStepper) {\n <div class=\"kbq-form-field__suffix\">\n @if (canShowCleaner) {\n <div class=\"kbq-form-field__cleaner\" (click)=\"clearValue($event)\" (keydown.enter)=\"clearValue($event)\">\n <ng-content select=\"kbq-cleaner\" />\n </div>\n }\n\n <ng-content select=\"kbq-password-toggle, kbq-stepper, [kbqSuffix]\" />\n </div>\n }\n</div>\n\n@if (hasHint || hasPasswordHint || hasError || hasReactivePasswordHint) {\n <div class=\"kbq-form-field__hint\">\n @if (invalid) {\n <ng-content select=\"kbq-error\" />\n }\n\n <ng-content select=\"kbq-hint, kbq-password-hint, kbq-reactive-password-hint\" />\n </div>\n}\n", styles: [".kbq-form-field{position:relative;display:inline-block;width:100%}.kbq-form-field .kbq-form-field__label{display:flex;margin-bottom:var(--kbq-size-xs)}.kbq-form-field.kbq-form-field-type-select .kbq-form-field__suffix{margin-right:0}.kbq-form-field .kbq-form-field__container{box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;border-width:var(--kbq-form-field-size-border-width);border-style:solid;border-color:transparent;border-radius:var(--kbq-form-field-size-border-radius);padding-left:var(--kbq-form-field-size-container-left-padding);padding-right:var(--kbq-form-field-size-container-right-padding)}.kbq-form-field .kbq-form-field:not(.kbq-form-field-type-textarea){height:var(--kbq-form-field-size-height)}.kbq-form-field .kbq-form-field__infix{width:100%;max-width:calc(100% - var(--kbq-size-xs));flex-grow:1;padding-left:var(--kbq-form-field-size-infix-left-padding)}.kbq-form-field .kbq-form-field__infix:has(.kbq-select_multiple,.kbq-select_multiline):not(:has(.kbq-select__trigger_empty)),.kbq-form-field .kbq-form-field__infix:has(.kbq-tag-list){padding-left:0;max-width:100%}.kbq-form-field .kbq-form-field__infix .kbq-input,.kbq-form-field .kbq-form-field__infix .kbq-tag-input{padding-right:var(--kbq-form-field-size-infix-right-padding)}.kbq-form-field,.kbq-form-field .kbq-input,.kbq-form-field .kbq-textarea{border-radius:var(--kbq-form-field-size-border-radius)}.kbq-form-field:hover{z-index:1}.kbq-form-field.cdk-focused,.kbq-form-field.kbq-focused{z-index:3}.kbq-form-field.kbq-form-field_without-borders .kbq-form-field__container,.kbq-form-field.kbq-form-field_no-borders .kbq-form-field__container{border-color:transparent!important;box-shadow:none!important}.kbq-form-field+.kbq-password-hint{margin-top:var(--kbq-size-m)}.kbq-form-field .kbq-form-field__prefix,.kbq-form-field .kbq-form-field__suffix{display:flex;justify-content:center;align-items:center}.kbq-form-field .kbq-form-field__prefix .kbq-prefix,.kbq-form-field .kbq-form-field__prefix .kbq-suffix,.kbq-form-field .kbq-form-field__suffix .kbq-prefix,.kbq-form-field .kbq-form-field__suffix .kbq-suffix{min-width:var(--kbq-form-field-size-addon-width);text-align:center}.kbq-form-field .kbq-form-field__prefix+.kbq-form-field__infix{padding-left:0}.kbq-form-field .kbq-form-field__hint{display:flex;flex-direction:column;gap:var(--kbq-size-xxs);margin-top:var(--kbq-form-field-hint-size-margin-top)}.kbq-form-field .kbq-form-field__hint .kbq-password-hint:first-child{margin-top:var(--kbq-size-s)}.kbq-form-field .kbq-password-hint{margin-top:var(--kbq-form-field-hint-size-gap)}.kbq-form-field .kbq-form-field__container{border-color:var(--kbq-form-field-default-border-color);background-color:var(--kbq-form-field-default-background)}.kbq-form-field .kbq-input,.kbq-form-field .kbq-tag-input,.kbq-form-field .kbq-textarea{color:var(--kbq-form-field-default-text)}.kbq-form-field .kbq-input::placeholder,.kbq-form-field .kbq-tag-input::placeholder,.kbq-form-field .kbq-textarea::placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input::-ms-input-placeholder,.kbq-form-field .kbq-tag-input::-ms-input-placeholder,.kbq-form-field .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input::-webkit-input-placeholder,.kbq-form-field .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input:-webkit-autofill,.kbq-form-field .kbq-input:-webkit-autofill:hover,.kbq-form-field .kbq-input:-webkit-autofill:focus{-webkit-box-shadow:inset 0 0 0 40rem var(--kbq-form-field-states-autofill-background);-webkit-text-fill-color:var(--kbq-form-field-states-autofill-text);caret-color:var(--kbq-form-field-states-autofill-text)}.kbq-form-field.kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container{border-color:var(--kbq-form-field-states-error-border-color);background-color:var(--kbq-form-field-states-error-background)}.kbq-form-field.kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea{color:var(--kbq-form-field-states-error-text)}.kbq-form-field.kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container{border-color:var(--kbq-form-field-states-focused-border-color);background-color:var(--kbq-form-field-states-focused-background)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea{color:var(--kbq-form-field-states-focused-text)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container{box-shadow:0 0 .1px 1px var(--kbq-form-field-states-focused-focus-outline)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container{border-color:var(--kbq-form-field-states-error-border-color);background-color:var(--kbq-form-field-states-error-background)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea{color:var(--kbq-form-field-states-error-text)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container{box-shadow:0 0 .1px 1px var(--kbq-form-field-states-error-focused-focus-outline)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty{color:var(--kbq-form-field-states-error-text);-webkit-text-fill-color:var(--kbq-form-field-states-error-text)}.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill),.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill:hover),.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill:focus){background-color:var(--kbq-form-field-states-autofill-background)!important}.kbq-form-field.kbq-disabled .kbq-form-field__container{border-color:var(--kbq-form-field-states-disabled-border-color);background-color:var(--kbq-form-field-states-disabled-background)}.kbq-form-field.kbq-disabled .kbq-input,.kbq-form-field.kbq-disabled .kbq-tag-input,.kbq-form-field.kbq-disabled .kbq-textarea{color:var(--kbq-form-field-states-disabled-text)}.kbq-form-field.kbq-disabled .kbq-input::placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-icon.kbq-empty{color:var(--kbq-form-field-states-disabled-text);-webkit-text-fill-color:var(--kbq-form-field-states-disabled-text)}.kbq-form-field .kbq-form-field__prefix .kbq-icon.kbq-empty,.kbq-form-field .kbq-form-field__suffix .kbq-icon.kbq-empty{color:var(--kbq-icon-contrast-fade)}.kbq-form-field .kbq-form-field__hint>.kbq-hint:not(.kbq-password-hint,.kbq-contrast-fade,.kbq-success,.kbq-warning,.kbq-error){color:var(--kbq-form-field-hint-text)}.kbq-form-field{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-form-field .kbq-form-field__hint>.kbq-hint:not(.kbq-password-hint,.kbq-reactive-password-hint,.kbq-contrast-fade,.kbq-success,.kbq-warning) .kbq-hint__text{font-size:var(--kbq-typography-text-compact-font-size);font-style:var(--kbq-typography-text-compact-font-style);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-form-field{--kbq-form-field-size-height: var(--kbq-size-3xl);--kbq-form-field-size-border-width: var(--kbq-size-border-width);--kbq-form-field-size-border-radius: var(--kbq-size-border-radius);--kbq-form-field-size-icon-size: var(--kbq-size-l);--kbq-form-field-size-icon-margin-left: var(--kbq-size-s);--kbq-form-field-size-icon-margin-right: var(--kbq-size-s);--kbq-form-field-size-icon-button-size: var(--kbq-size-xxl);--kbq-form-field-size-icon-button-margin-left: var(--kbq-size-xxs);--kbq-form-field-hint-size-margin-top: var(--kbq-size-xs);--kbq-form-field-hint-size-gap: var(--kbq-size-s);--kbq-form-field-size-container-vertical-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-container-left-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-container-right-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-infix-left-padding: var(--kbq-size-xs);--kbq-form-field-size-infix-right-padding: var(--kbq-size-xxs);--kbq-form-field-size-addon-width: 28px;--kbq-form-field-default-border-color: var(--kbq-line-contrast-fade);--kbq-form-field-default-background: var(--kbq-background-bg);--kbq-form-field-default-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-default-text: var(--kbq-foreground-contrast);--kbq-form-field-states-focused-border-color: var(--kbq-states-line-focus-theme);--kbq-form-field-states-focused-background: var(--kbq-background-bg);--kbq-form-field-states-focused-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-states-focused-text: var(--kbq-foreground-contrast);--kbq-form-field-states-focused-focus-outline: var(--kbq-states-line-focus-theme);--kbq-form-field-states-error-border-color: var(--kbq-line-error);--kbq-form-field-states-error-background: var(--kbq-background-error-less);--kbq-form-field-states-error-placeholder: var(--kbq-foreground-error-tertiary);--kbq-form-field-states-error-text: var(--kbq-foreground-error);--kbq-form-field-states-error-focused-focus-outline: var(--kbq-states-line-focus-error);--kbq-form-field-states-autofill-border-color: var(--kbq-states-line-focus-theme);--kbq-form-field-states-autofill-background: var(--kbq-background-theme-less);--kbq-form-field-states-autofill-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-states-autofill-text: var(--kbq-foreground-contrast);--kbq-form-field-states-disabled-border-color: var(--kbq-states-line-disabled);--kbq-form-field-states-disabled-background: var(--kbq-states-background-disabled);--kbq-form-field-states-disabled-placeholder: var(--kbq-states-foreground-disabled);--kbq-form-field-states-disabled-text: var(--kbq-states-foreground-disabled);--kbq-form-field-hint-text: var(--kbq-foreground-contrast-secondary)}:where(.kbq-dark){--kbq-form-field-states-error-placeholder: var(--kbq-foreground-error-secondary)}\n", ".kbq-input{background:transparent;padding:0;margin:0;border:none;outline:none;display:inline-block;box-sizing:border-box;text-overflow:ellipsis;width:100%;min-height:calc(var(--kbq-size-3xl) - var(--kbq-size-border-width) * 2);padding:var(--kbq-input-size-padding-vertical) var(--kbq-input-size-padding-horizontal)}.kbq-input::-ms-clear{display:none;width:0;height:0}.kbq-input::-ms-reveal{display:none;width:0;height:0}.kbq-input::-webkit-search-decoration,.kbq-input::-webkit-search-cancel-button,.kbq-input::-webkit-search-results-button,.kbq-input::-webkit-search-results-decoration{display:none}input.kbq-input[type=number]{-moz-appearance:textfield}input.kbq-input[type=number]::-webkit-inner-spin-button,input.kbq-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}input.kbq-input:invalid{box-shadow:unset}input.kbq-input::placeholder{opacity:1}.kbq-input,.kbq-input.kbq-input-password::placeholder{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-input.kbq-input-password{font-size:var(--kbq-typography-mono-normal-font-size);font-style:var(--kbq-typography-mono-normal-font-style);font-weight:var(--kbq-typography-mono-normal-font-weight);line-height:var(--kbq-typography-mono-normal-line-height);font-family:var(--kbq-typography-mono-normal-font-family);text-transform:var(--kbq-typography-mono-normal-text-transform);font-feature-settings:var(--kbq-typography-mono-normal-font-feature-settings);letter-spacing:var(--kbq-typography-mono-normal-letter-spacing);font-variant-ligatures:none;font-feature-settings:\"liga\" 0,\"clig\" 0,\"calt\" 0}\n", ".kbq-input{--kbq-input-size-padding-horizontal: 0;--kbq-input-size-padding-vertical: var(--kbq-form-field-size-container-vertical-padding)}\n", ".kbq-timepicker{padding-right:var(--kbq-timepicker-size-padding-right)}.kbq-form-field-type-timepicker{width:136px}\n", ".kbq-form-field-type-datepicker{width:136px}\n", ".kbq-textarea{--kbq-textarea-size-min-height: 64px;--kbq-textarea-size-max-height: 96px;--kbq-textarea-size-padding-vertical: 5px;--kbq-textarea-size-padding-horizontal: var(--kbq-size-m)}.kbq-textarea{display:inline-block;background:transparent;margin:0;border:none;outline:none;resize:none;overflow:auto;width:100%;box-sizing:border-box;padding:var(--kbq-textarea-size-padding-vertical) var(--kbq-textarea-size-padding-horizontal);-webkit-appearance:none;vertical-align:bottom}.kbq-textarea:not(.kbq-textarea-resizable){box-sizing:border-box;overflow-y:hidden}.kbq-textarea.kbq-textarea-resizable{resize:vertical;min-height:var(--kbq-textarea-size-min-height)}.kbq-textarea.kbq-textarea_max-row-limit-reached{resize:unset}.kbq-textarea:invalid{box-shadow:unset}\n", ".kbq-form-field-type-tag-list{--kbq-tag-input-size-padding-left: var(--kbq-size-xxs);--kbq-tag-input-size-padding-right: var(--kbq-size-m);--kbq-tag-input-size-padding-vertical: var(--kbq-size-xxs);--kbq-tag-input-size-content-gap: var(--kbq-size-s)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
329
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqFormField, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
330
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: KbqFormField, isStandalone: true, selector: "kbq-form-field", inputs: { noBorders: { classPropertyName: "noBorders", publicName: "noBorders", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "keydown": "onKeyDown($event)", "mouseenter": "onHoverChanged(true)", "mouseleave": "onHoverChanged(false)" }, properties: { "class.kbq-form-field_invalid": "invalid", "class.kbq-disabled": "disabled", "class.kbq-form-field_no-borders": "noBorders()", "class.ng-untouched": "shouldForward(\"untouched\")", "class.ng-touched": "shouldForward(\"touched\")", "class.ng-pristine": "shouldForward(\"pristine\")", "class.ng-dirty": "shouldForward(\"dirty\")", "class.ng-valid": "shouldForward(\"valid\")", "class.ng-invalid": "shouldForward(\"invalid\")", "class.ng-pending": "shouldForward(\"pending\")" }, classAttribute: "kbq-form-field" }, providers: [{ provide: KBQ_FORM_FIELD_REF, useExisting: KbqFormField }], queries: [{ propertyName: "control", first: true, predicate: KbqFormFieldControl, descendants: true }, { propertyName: "stepper", first: true, predicate: KbqStepper, descendants: true }, { propertyName: "cleaner", first: true, predicate: KbqCleaner }, { propertyName: "passwordToggle", first: true, predicate: KbqPasswordToggle, descendants: true }, { propertyName: "label", first: true, predicate: KbqLabel, descendants: true }, { propertyName: "hint", predicate: KbqHint }, { propertyName: "passwordHints", predicate: KbqPasswordHint }, { propertyName: "suffix", predicate: KbqSuffix }, { propertyName: "prefix", predicate: KbqPrefix }, { propertyName: "reactivePasswordHint", predicate: KbqReactivePasswordHint }, { propertyName: "error", predicate: KbqError }], viewQueries: [{ propertyName: "connectionContainerRef", first: true, predicate: ["connectionContainer"], descendants: true, static: true }], exportAs: ["kbqFormField"], usesInheritance: true, ngImport: i0, template: "@if (hasLabel) {\n <label class=\"kbq-form-field__label\" [attr.for]=\"control.id\">\n <ng-content select=\"kbq-label\" />\n </label>\n}\n\n<div #connectionContainer class=\"kbq-form-field__container\" (click)=\"onContainerClick($event)\">\n @if (hasPrefix) {\n <div class=\"kbq-form-field__prefix\">\n <ng-content select=\"[kbqPrefix]\" />\n </div>\n }\n\n <div class=\"kbq-form-field__infix\">\n <ng-content />\n </div>\n\n @if (hasSuffix || hasCleaner || hasPasswordToggle || hasStepper) {\n <div class=\"kbq-form-field__suffix\">\n @if (canShowCleaner) {\n <div class=\"kbq-form-field__cleaner\" (click)=\"clearValue($event)\" (keydown.enter)=\"clearValue($event)\">\n <ng-content select=\"kbq-cleaner\" />\n </div>\n }\n\n <ng-content select=\"kbq-password-toggle, kbq-stepper, [kbqSuffix]\" />\n </div>\n }\n</div>\n\n@if (hasHint || hasPasswordHint || hasError || hasReactivePasswordHint) {\n <div class=\"kbq-form-field__hint\">\n @if (invalid) {\n <ng-content select=\"kbq-error\" />\n }\n\n <ng-content select=\"kbq-hint, kbq-password-hint, kbq-reactive-password-hint\" />\n </div>\n}\n", styles: [".kbq-form-field{position:relative;display:inline-block;width:100%}.kbq-form-field .kbq-form-field__label{display:flex;margin-bottom:var(--kbq-size-xs)}.kbq-form-field.kbq-form-field-type-select .kbq-form-field__suffix{margin-right:0}.kbq-form-field .kbq-form-field__container{box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;border-width:var(--kbq-form-field-size-border-width);border-style:solid;border-color:transparent;border-radius:var(--kbq-form-field-size-border-radius);padding-left:var(--kbq-form-field-size-container-left-padding);padding-right:var(--kbq-form-field-size-container-right-padding)}.kbq-form-field .kbq-form-field__container:has(.kbq-textarea){--kbq-form-field-size-container-left-padding: 0;--kbq-form-field-size-container-right-padding: 0}.kbq-form-field .kbq-form-field:not(.kbq-form-field-type-textarea){height:var(--kbq-form-field-size-height)}.kbq-form-field .kbq-form-field__infix{width:100%;max-width:calc(100% - var(--kbq-size-xs));flex-grow:1;padding-left:var(--kbq-form-field-size-infix-left-padding)}.kbq-form-field .kbq-form-field__infix:has(.kbq-select_multiple,.kbq-select_multiline):not(:has(.kbq-select__trigger_empty)),.kbq-form-field .kbq-form-field__infix:has(.kbq-tag-list),.kbq-form-field .kbq-form-field__infix:has(.kbq-textarea){padding-left:0;max-width:100%}.kbq-form-field .kbq-form-field__infix .kbq-input,.kbq-form-field .kbq-form-field__infix .kbq-tag-input{padding-right:var(--kbq-form-field-size-infix-right-padding)}.kbq-form-field,.kbq-form-field .kbq-input,.kbq-form-field .kbq-textarea{border-radius:var(--kbq-form-field-size-border-radius)}.kbq-form-field:hover{z-index:1}.kbq-form-field.cdk-focused,.kbq-form-field.kbq-focused{z-index:3}.kbq-form-field.kbq-form-field_without-borders .kbq-form-field__container,.kbq-form-field.kbq-form-field_no-borders .kbq-form-field__container{border-color:transparent!important;box-shadow:none!important}.kbq-form-field+.kbq-password-hint{margin-top:var(--kbq-size-m)}.kbq-form-field .kbq-form-field__prefix,.kbq-form-field .kbq-form-field__suffix{display:flex;justify-content:center;align-items:center}.kbq-form-field .kbq-form-field__prefix .kbq-prefix,.kbq-form-field .kbq-form-field__prefix .kbq-suffix,.kbq-form-field .kbq-form-field__suffix .kbq-prefix,.kbq-form-field .kbq-form-field__suffix .kbq-suffix{min-width:var(--kbq-form-field-size-addon-width);text-align:center}.kbq-form-field .kbq-form-field__prefix+.kbq-form-field__infix{padding-left:0}.kbq-form-field .kbq-form-field__hint{display:flex;flex-direction:column;gap:var(--kbq-size-s);margin-top:var(--kbq-form-field-hint-size-margin-top)}.kbq-form-field .kbq-form-field__container{border-color:var(--kbq-form-field-default-border-color);background-color:var(--kbq-form-field-default-background)}.kbq-form-field .kbq-input,.kbq-form-field .kbq-tag-input,.kbq-form-field .kbq-textarea{color:var(--kbq-form-field-default-text)}.kbq-form-field .kbq-input::placeholder,.kbq-form-field .kbq-tag-input::placeholder,.kbq-form-field .kbq-textarea::placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input::-ms-input-placeholder,.kbq-form-field .kbq-tag-input::-ms-input-placeholder,.kbq-form-field .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input::-webkit-input-placeholder,.kbq-form-field .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input:-webkit-autofill,.kbq-form-field .kbq-input:-webkit-autofill:hover,.kbq-form-field .kbq-input:-webkit-autofill:focus{-webkit-box-shadow:inset 0 0 0 40rem var(--kbq-form-field-states-autofill-background);-webkit-text-fill-color:var(--kbq-form-field-states-autofill-text);caret-color:var(--kbq-form-field-states-autofill-text)}.kbq-form-field.kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container{border-color:var(--kbq-form-field-states-error-border-color);background-color:var(--kbq-form-field-states-error-background)}.kbq-form-field.kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea{color:var(--kbq-form-field-states-error-text)}.kbq-form-field.kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container{border-color:var(--kbq-form-field-states-focused-border-color);background-color:var(--kbq-form-field-states-focused-background)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea{color:var(--kbq-form-field-states-focused-text)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container{box-shadow:0 0 .1px 1px var(--kbq-form-field-states-focused-focus-outline)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container{border-color:var(--kbq-form-field-states-error-border-color);background-color:var(--kbq-form-field-states-error-background)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea{color:var(--kbq-form-field-states-error-text)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container{box-shadow:0 0 .1px 1px var(--kbq-form-field-states-error-focused-focus-outline)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty{color:var(--kbq-form-field-states-error-text);-webkit-text-fill-color:var(--kbq-form-field-states-error-text)}.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill),.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill:hover),.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill:focus){background-color:var(--kbq-form-field-states-autofill-background)!important}.kbq-form-field.kbq-disabled .kbq-form-field__container{border-color:var(--kbq-form-field-states-disabled-border-color);background-color:var(--kbq-form-field-states-disabled-background)}.kbq-form-field.kbq-disabled .kbq-input,.kbq-form-field.kbq-disabled .kbq-tag-input,.kbq-form-field.kbq-disabled .kbq-textarea{color:var(--kbq-form-field-states-disabled-text)}.kbq-form-field.kbq-disabled .kbq-input::placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-icon.kbq-empty{color:var(--kbq-form-field-states-disabled-text);-webkit-text-fill-color:var(--kbq-form-field-states-disabled-text)}.kbq-form-field .kbq-form-field__prefix .kbq-icon.kbq-empty,.kbq-form-field .kbq-form-field__suffix .kbq-icon.kbq-empty{color:var(--kbq-icon-contrast-fade)}.kbq-form-field .kbq-form-field__hint>.kbq-hint:not(.kbq-password-hint,.kbq-contrast-fade,.kbq-success,.kbq-warning,.kbq-error){color:var(--kbq-form-field-hint-text)}.kbq-form-field{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-form-field .kbq-form-field__hint>.kbq-hint:not(.kbq-password-hint,.kbq-reactive-password-hint,.kbq-contrast-fade,.kbq-success,.kbq-warning) .kbq-hint__text{font-size:var(--kbq-typography-text-compact-font-size);font-style:var(--kbq-typography-text-compact-font-style);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-form-field{--kbq-form-field-size-height: var(--kbq-size-3xl);--kbq-form-field-size-border-width: var(--kbq-size-border-width);--kbq-form-field-size-border-radius: var(--kbq-size-border-radius);--kbq-form-field-size-icon-size: var(--kbq-size-l);--kbq-form-field-size-icon-margin-left: var(--kbq-size-s);--kbq-form-field-size-icon-margin-right: var(--kbq-size-s);--kbq-form-field-size-icon-button-size: var(--kbq-size-xxl);--kbq-form-field-size-icon-button-margin-left: var(--kbq-size-xxs);--kbq-form-field-hint-size-margin-top: var(--kbq-size-m);--kbq-form-field-hint-size-gap: var(--kbq-size-s);--kbq-form-field-size-container-vertical-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-container-left-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-container-right-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-infix-left-padding: var(--kbq-size-xs);--kbq-form-field-size-infix-right-padding: var(--kbq-size-xxs);--kbq-form-field-size-addon-width: 28px;--kbq-form-field-default-border-color: var(--kbq-line-contrast-fade);--kbq-form-field-default-background: var(--kbq-background-bg);--kbq-form-field-default-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-default-text: var(--kbq-foreground-contrast);--kbq-form-field-states-focused-border-color: var(--kbq-states-line-focus-theme);--kbq-form-field-states-focused-background: var(--kbq-background-bg);--kbq-form-field-states-focused-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-states-focused-text: var(--kbq-foreground-contrast);--kbq-form-field-states-focused-focus-outline: var(--kbq-states-line-focus-theme);--kbq-form-field-states-error-border-color: var(--kbq-line-error);--kbq-form-field-states-error-background: var(--kbq-background-error-less);--kbq-form-field-states-error-placeholder: var(--kbq-foreground-error-tertiary);--kbq-form-field-states-error-text: var(--kbq-foreground-error);--kbq-form-field-states-error-focused-focus-outline: var(--kbq-states-line-focus-error);--kbq-form-field-states-autofill-border-color: var(--kbq-states-line-focus-theme);--kbq-form-field-states-autofill-background: var(--kbq-background-theme-less);--kbq-form-field-states-autofill-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-states-autofill-text: var(--kbq-foreground-contrast);--kbq-form-field-states-disabled-border-color: var(--kbq-states-line-disabled);--kbq-form-field-states-disabled-background: var(--kbq-states-background-disabled);--kbq-form-field-states-disabled-placeholder: var(--kbq-states-foreground-disabled);--kbq-form-field-states-disabled-text: var(--kbq-states-foreground-disabled);--kbq-form-field-hint-text: var(--kbq-foreground-contrast-secondary)}:where(.kbq-dark){--kbq-form-field-states-error-placeholder: var(--kbq-foreground-error-secondary)}\n", ".kbq-input{background:transparent;padding:0;margin:0;border:none;outline:none;display:inline-block;box-sizing:border-box;text-overflow:ellipsis;width:100%;min-height:calc(var(--kbq-size-3xl) - var(--kbq-size-border-width) * 2);padding:var(--kbq-input-size-padding-vertical) var(--kbq-input-size-padding-horizontal)}.kbq-input::-ms-clear{display:none;width:0;height:0}.kbq-input::-ms-reveal{display:none;width:0;height:0}.kbq-input::-webkit-search-decoration,.kbq-input::-webkit-search-cancel-button,.kbq-input::-webkit-search-results-button,.kbq-input::-webkit-search-results-decoration{display:none}input.kbq-input[type=number]{-moz-appearance:textfield}input.kbq-input[type=number]::-webkit-inner-spin-button,input.kbq-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}input.kbq-input:invalid{box-shadow:unset}input.kbq-input::placeholder{opacity:1}.kbq-input,.kbq-input.kbq-input-password::placeholder{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-input.kbq-input-password{font-size:var(--kbq-typography-mono-normal-font-size);font-style:var(--kbq-typography-mono-normal-font-style);font-weight:var(--kbq-typography-mono-normal-font-weight);line-height:var(--kbq-typography-mono-normal-line-height);font-family:var(--kbq-typography-mono-normal-font-family);text-transform:var(--kbq-typography-mono-normal-text-transform);font-feature-settings:var(--kbq-typography-mono-normal-font-feature-settings);letter-spacing:var(--kbq-typography-mono-normal-letter-spacing);font-variant-ligatures:none;font-feature-settings:\"liga\" 0,\"clig\" 0,\"calt\" 0}\n", ".kbq-input{--kbq-input-size-padding-horizontal: 0;--kbq-input-size-padding-vertical: var(--kbq-form-field-size-container-vertical-padding)}\n", ".kbq-timepicker{padding-right:var(--kbq-timepicker-size-padding-right)}.kbq-form-field-type-timepicker{width:136px}\n", ".kbq-form-field-type-datepicker{width:136px}\n", ".kbq-textarea{--kbq-textarea-size-min-height: 64px;--kbq-textarea-size-max-height: 96px;--kbq-textarea-size-padding-vertical: 5px;--kbq-textarea-size-padding-horizontal: 11px}.kbq-textarea{display:inline-block;background:transparent;margin:0;border:none;outline:none;resize:none;overflow:auto;width:100%;box-sizing:border-box;padding:var(--kbq-textarea-size-padding-vertical) var(--kbq-textarea-size-padding-horizontal);-webkit-appearance:none;vertical-align:bottom}.kbq-textarea:not(.kbq-textarea-resizable){box-sizing:border-box;overflow-y:hidden}.kbq-textarea.kbq-textarea-resizable{resize:vertical;min-height:var(--kbq-textarea-size-min-height)}.kbq-textarea.kbq-textarea_max-row-limit-reached{resize:unset}.kbq-textarea:invalid{box-shadow:unset}\n", ".kbq-form-field-type-tag-list{--kbq-tag-input-size-padding-left: var(--kbq-size-xxs);--kbq-tag-input-size-padding-right: var(--kbq-size-m);--kbq-tag-input-size-padding-vertical: var(--kbq-size-xxs);--kbq-tag-input-size-content-gap: var(--kbq-size-s)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
331
331
  }
332
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqFormField, decorators: [{
332
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqFormField, decorators: [{
333
333
  type: Component,
334
334
  args: [{ standalone: true, selector: 'kbq-form-field', exportAs: 'kbqFormField', host: {
335
335
  class: 'kbq-form-field',
@@ -346,7 +346,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
346
346
  '(keydown)': 'onKeyDown($event)',
347
347
  '(mouseenter)': 'onHoverChanged(true)',
348
348
  '(mouseleave)': 'onHoverChanged(false)'
349
- }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: KBQ_FORM_FIELD_REF, useExisting: KbqFormField }], template: "@if (hasLabel) {\n <label class=\"kbq-form-field__label\" [attr.for]=\"control.id\">\n <ng-content select=\"kbq-label\" />\n </label>\n}\n\n<div #connectionContainer class=\"kbq-form-field__container\" (click)=\"onContainerClick($event)\">\n @if (hasPrefix) {\n <div class=\"kbq-form-field__prefix\">\n <ng-content select=\"[kbqPrefix]\" />\n </div>\n }\n\n <div class=\"kbq-form-field__infix\">\n <ng-content />\n </div>\n\n @if (hasSuffix || hasCleaner || hasPasswordToggle || hasStepper) {\n <div class=\"kbq-form-field__suffix\">\n @if (canShowCleaner) {\n <div class=\"kbq-form-field__cleaner\" (click)=\"clearValue($event)\" (keydown.enter)=\"clearValue($event)\">\n <ng-content select=\"kbq-cleaner\" />\n </div>\n }\n\n <ng-content select=\"kbq-password-toggle, kbq-stepper, [kbqSuffix]\" />\n </div>\n }\n</div>\n\n@if (hasHint || hasPasswordHint || hasError || hasReactivePasswordHint) {\n <div class=\"kbq-form-field__hint\">\n @if (invalid) {\n <ng-content select=\"kbq-error\" />\n }\n\n <ng-content select=\"kbq-hint, kbq-password-hint, kbq-reactive-password-hint\" />\n </div>\n}\n", styles: [".kbq-form-field{position:relative;display:inline-block;width:100%}.kbq-form-field .kbq-form-field__label{display:flex;margin-bottom:var(--kbq-size-xs)}.kbq-form-field.kbq-form-field-type-select .kbq-form-field__suffix{margin-right:0}.kbq-form-field .kbq-form-field__container{box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;border-width:var(--kbq-form-field-size-border-width);border-style:solid;border-color:transparent;border-radius:var(--kbq-form-field-size-border-radius);padding-left:var(--kbq-form-field-size-container-left-padding);padding-right:var(--kbq-form-field-size-container-right-padding)}.kbq-form-field .kbq-form-field:not(.kbq-form-field-type-textarea){height:var(--kbq-form-field-size-height)}.kbq-form-field .kbq-form-field__infix{width:100%;max-width:calc(100% - var(--kbq-size-xs));flex-grow:1;padding-left:var(--kbq-form-field-size-infix-left-padding)}.kbq-form-field .kbq-form-field__infix:has(.kbq-select_multiple,.kbq-select_multiline):not(:has(.kbq-select__trigger_empty)),.kbq-form-field .kbq-form-field__infix:has(.kbq-tag-list){padding-left:0;max-width:100%}.kbq-form-field .kbq-form-field__infix .kbq-input,.kbq-form-field .kbq-form-field__infix .kbq-tag-input{padding-right:var(--kbq-form-field-size-infix-right-padding)}.kbq-form-field,.kbq-form-field .kbq-input,.kbq-form-field .kbq-textarea{border-radius:var(--kbq-form-field-size-border-radius)}.kbq-form-field:hover{z-index:1}.kbq-form-field.cdk-focused,.kbq-form-field.kbq-focused{z-index:3}.kbq-form-field.kbq-form-field_without-borders .kbq-form-field__container,.kbq-form-field.kbq-form-field_no-borders .kbq-form-field__container{border-color:transparent!important;box-shadow:none!important}.kbq-form-field+.kbq-password-hint{margin-top:var(--kbq-size-m)}.kbq-form-field .kbq-form-field__prefix,.kbq-form-field .kbq-form-field__suffix{display:flex;justify-content:center;align-items:center}.kbq-form-field .kbq-form-field__prefix .kbq-prefix,.kbq-form-field .kbq-form-field__prefix .kbq-suffix,.kbq-form-field .kbq-form-field__suffix .kbq-prefix,.kbq-form-field .kbq-form-field__suffix .kbq-suffix{min-width:var(--kbq-form-field-size-addon-width);text-align:center}.kbq-form-field .kbq-form-field__prefix+.kbq-form-field__infix{padding-left:0}.kbq-form-field .kbq-form-field__hint{display:flex;flex-direction:column;gap:var(--kbq-size-xxs);margin-top:var(--kbq-form-field-hint-size-margin-top)}.kbq-form-field .kbq-form-field__hint .kbq-password-hint:first-child{margin-top:var(--kbq-size-s)}.kbq-form-field .kbq-password-hint{margin-top:var(--kbq-form-field-hint-size-gap)}.kbq-form-field .kbq-form-field__container{border-color:var(--kbq-form-field-default-border-color);background-color:var(--kbq-form-field-default-background)}.kbq-form-field .kbq-input,.kbq-form-field .kbq-tag-input,.kbq-form-field .kbq-textarea{color:var(--kbq-form-field-default-text)}.kbq-form-field .kbq-input::placeholder,.kbq-form-field .kbq-tag-input::placeholder,.kbq-form-field .kbq-textarea::placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input::-ms-input-placeholder,.kbq-form-field .kbq-tag-input::-ms-input-placeholder,.kbq-form-field .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input::-webkit-input-placeholder,.kbq-form-field .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input:-webkit-autofill,.kbq-form-field .kbq-input:-webkit-autofill:hover,.kbq-form-field .kbq-input:-webkit-autofill:focus{-webkit-box-shadow:inset 0 0 0 40rem var(--kbq-form-field-states-autofill-background);-webkit-text-fill-color:var(--kbq-form-field-states-autofill-text);caret-color:var(--kbq-form-field-states-autofill-text)}.kbq-form-field.kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container{border-color:var(--kbq-form-field-states-error-border-color);background-color:var(--kbq-form-field-states-error-background)}.kbq-form-field.kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea{color:var(--kbq-form-field-states-error-text)}.kbq-form-field.kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container{border-color:var(--kbq-form-field-states-focused-border-color);background-color:var(--kbq-form-field-states-focused-background)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea{color:var(--kbq-form-field-states-focused-text)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container{box-shadow:0 0 .1px 1px var(--kbq-form-field-states-focused-focus-outline)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container{border-color:var(--kbq-form-field-states-error-border-color);background-color:var(--kbq-form-field-states-error-background)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea{color:var(--kbq-form-field-states-error-text)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container{box-shadow:0 0 .1px 1px var(--kbq-form-field-states-error-focused-focus-outline)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty{color:var(--kbq-form-field-states-error-text);-webkit-text-fill-color:var(--kbq-form-field-states-error-text)}.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill),.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill:hover),.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill:focus){background-color:var(--kbq-form-field-states-autofill-background)!important}.kbq-form-field.kbq-disabled .kbq-form-field__container{border-color:var(--kbq-form-field-states-disabled-border-color);background-color:var(--kbq-form-field-states-disabled-background)}.kbq-form-field.kbq-disabled .kbq-input,.kbq-form-field.kbq-disabled .kbq-tag-input,.kbq-form-field.kbq-disabled .kbq-textarea{color:var(--kbq-form-field-states-disabled-text)}.kbq-form-field.kbq-disabled .kbq-input::placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-icon.kbq-empty{color:var(--kbq-form-field-states-disabled-text);-webkit-text-fill-color:var(--kbq-form-field-states-disabled-text)}.kbq-form-field .kbq-form-field__prefix .kbq-icon.kbq-empty,.kbq-form-field .kbq-form-field__suffix .kbq-icon.kbq-empty{color:var(--kbq-icon-contrast-fade)}.kbq-form-field .kbq-form-field__hint>.kbq-hint:not(.kbq-password-hint,.kbq-contrast-fade,.kbq-success,.kbq-warning,.kbq-error){color:var(--kbq-form-field-hint-text)}.kbq-form-field{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-form-field .kbq-form-field__hint>.kbq-hint:not(.kbq-password-hint,.kbq-reactive-password-hint,.kbq-contrast-fade,.kbq-success,.kbq-warning) .kbq-hint__text{font-size:var(--kbq-typography-text-compact-font-size);font-style:var(--kbq-typography-text-compact-font-style);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-form-field{--kbq-form-field-size-height: var(--kbq-size-3xl);--kbq-form-field-size-border-width: var(--kbq-size-border-width);--kbq-form-field-size-border-radius: var(--kbq-size-border-radius);--kbq-form-field-size-icon-size: var(--kbq-size-l);--kbq-form-field-size-icon-margin-left: var(--kbq-size-s);--kbq-form-field-size-icon-margin-right: var(--kbq-size-s);--kbq-form-field-size-icon-button-size: var(--kbq-size-xxl);--kbq-form-field-size-icon-button-margin-left: var(--kbq-size-xxs);--kbq-form-field-hint-size-margin-top: var(--kbq-size-xs);--kbq-form-field-hint-size-gap: var(--kbq-size-s);--kbq-form-field-size-container-vertical-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-container-left-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-container-right-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-infix-left-padding: var(--kbq-size-xs);--kbq-form-field-size-infix-right-padding: var(--kbq-size-xxs);--kbq-form-field-size-addon-width: 28px;--kbq-form-field-default-border-color: var(--kbq-line-contrast-fade);--kbq-form-field-default-background: var(--kbq-background-bg);--kbq-form-field-default-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-default-text: var(--kbq-foreground-contrast);--kbq-form-field-states-focused-border-color: var(--kbq-states-line-focus-theme);--kbq-form-field-states-focused-background: var(--kbq-background-bg);--kbq-form-field-states-focused-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-states-focused-text: var(--kbq-foreground-contrast);--kbq-form-field-states-focused-focus-outline: var(--kbq-states-line-focus-theme);--kbq-form-field-states-error-border-color: var(--kbq-line-error);--kbq-form-field-states-error-background: var(--kbq-background-error-less);--kbq-form-field-states-error-placeholder: var(--kbq-foreground-error-tertiary);--kbq-form-field-states-error-text: var(--kbq-foreground-error);--kbq-form-field-states-error-focused-focus-outline: var(--kbq-states-line-focus-error);--kbq-form-field-states-autofill-border-color: var(--kbq-states-line-focus-theme);--kbq-form-field-states-autofill-background: var(--kbq-background-theme-less);--kbq-form-field-states-autofill-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-states-autofill-text: var(--kbq-foreground-contrast);--kbq-form-field-states-disabled-border-color: var(--kbq-states-line-disabled);--kbq-form-field-states-disabled-background: var(--kbq-states-background-disabled);--kbq-form-field-states-disabled-placeholder: var(--kbq-states-foreground-disabled);--kbq-form-field-states-disabled-text: var(--kbq-states-foreground-disabled);--kbq-form-field-hint-text: var(--kbq-foreground-contrast-secondary)}:where(.kbq-dark){--kbq-form-field-states-error-placeholder: var(--kbq-foreground-error-secondary)}\n", ".kbq-input{background:transparent;padding:0;margin:0;border:none;outline:none;display:inline-block;box-sizing:border-box;text-overflow:ellipsis;width:100%;min-height:calc(var(--kbq-size-3xl) - var(--kbq-size-border-width) * 2);padding:var(--kbq-input-size-padding-vertical) var(--kbq-input-size-padding-horizontal)}.kbq-input::-ms-clear{display:none;width:0;height:0}.kbq-input::-ms-reveal{display:none;width:0;height:0}.kbq-input::-webkit-search-decoration,.kbq-input::-webkit-search-cancel-button,.kbq-input::-webkit-search-results-button,.kbq-input::-webkit-search-results-decoration{display:none}input.kbq-input[type=number]{-moz-appearance:textfield}input.kbq-input[type=number]::-webkit-inner-spin-button,input.kbq-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}input.kbq-input:invalid{box-shadow:unset}input.kbq-input::placeholder{opacity:1}.kbq-input,.kbq-input.kbq-input-password::placeholder{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-input.kbq-input-password{font-size:var(--kbq-typography-mono-normal-font-size);font-style:var(--kbq-typography-mono-normal-font-style);font-weight:var(--kbq-typography-mono-normal-font-weight);line-height:var(--kbq-typography-mono-normal-line-height);font-family:var(--kbq-typography-mono-normal-font-family);text-transform:var(--kbq-typography-mono-normal-text-transform);font-feature-settings:var(--kbq-typography-mono-normal-font-feature-settings);letter-spacing:var(--kbq-typography-mono-normal-letter-spacing);font-variant-ligatures:none;font-feature-settings:\"liga\" 0,\"clig\" 0,\"calt\" 0}\n", ".kbq-input{--kbq-input-size-padding-horizontal: 0;--kbq-input-size-padding-vertical: var(--kbq-form-field-size-container-vertical-padding)}\n", ".kbq-timepicker{padding-right:var(--kbq-timepicker-size-padding-right)}.kbq-form-field-type-timepicker{width:136px}\n", ".kbq-form-field-type-datepicker{width:136px}\n", ".kbq-textarea{--kbq-textarea-size-min-height: 64px;--kbq-textarea-size-max-height: 96px;--kbq-textarea-size-padding-vertical: 5px;--kbq-textarea-size-padding-horizontal: var(--kbq-size-m)}.kbq-textarea{display:inline-block;background:transparent;margin:0;border:none;outline:none;resize:none;overflow:auto;width:100%;box-sizing:border-box;padding:var(--kbq-textarea-size-padding-vertical) var(--kbq-textarea-size-padding-horizontal);-webkit-appearance:none;vertical-align:bottom}.kbq-textarea:not(.kbq-textarea-resizable){box-sizing:border-box;overflow-y:hidden}.kbq-textarea.kbq-textarea-resizable{resize:vertical;min-height:var(--kbq-textarea-size-min-height)}.kbq-textarea.kbq-textarea_max-row-limit-reached{resize:unset}.kbq-textarea:invalid{box-shadow:unset}\n", ".kbq-form-field-type-tag-list{--kbq-tag-input-size-padding-left: var(--kbq-size-xxs);--kbq-tag-input-size-padding-right: var(--kbq-size-m);--kbq-tag-input-size-padding-vertical: var(--kbq-size-xxs);--kbq-tag-input-size-content-gap: var(--kbq-size-s)}\n"] }]
349
+ }, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [{ provide: KBQ_FORM_FIELD_REF, useExisting: KbqFormField }], template: "@if (hasLabel) {\n <label class=\"kbq-form-field__label\" [attr.for]=\"control.id\">\n <ng-content select=\"kbq-label\" />\n </label>\n}\n\n<div #connectionContainer class=\"kbq-form-field__container\" (click)=\"onContainerClick($event)\">\n @if (hasPrefix) {\n <div class=\"kbq-form-field__prefix\">\n <ng-content select=\"[kbqPrefix]\" />\n </div>\n }\n\n <div class=\"kbq-form-field__infix\">\n <ng-content />\n </div>\n\n @if (hasSuffix || hasCleaner || hasPasswordToggle || hasStepper) {\n <div class=\"kbq-form-field__suffix\">\n @if (canShowCleaner) {\n <div class=\"kbq-form-field__cleaner\" (click)=\"clearValue($event)\" (keydown.enter)=\"clearValue($event)\">\n <ng-content select=\"kbq-cleaner\" />\n </div>\n }\n\n <ng-content select=\"kbq-password-toggle, kbq-stepper, [kbqSuffix]\" />\n </div>\n }\n</div>\n\n@if (hasHint || hasPasswordHint || hasError || hasReactivePasswordHint) {\n <div class=\"kbq-form-field__hint\">\n @if (invalid) {\n <ng-content select=\"kbq-error\" />\n }\n\n <ng-content select=\"kbq-hint, kbq-password-hint, kbq-reactive-password-hint\" />\n </div>\n}\n", styles: [".kbq-form-field{position:relative;display:inline-block;width:100%}.kbq-form-field .kbq-form-field__label{display:flex;margin-bottom:var(--kbq-size-xs)}.kbq-form-field.kbq-form-field-type-select .kbq-form-field__suffix{margin-right:0}.kbq-form-field .kbq-form-field__container{box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;border-width:var(--kbq-form-field-size-border-width);border-style:solid;border-color:transparent;border-radius:var(--kbq-form-field-size-border-radius);padding-left:var(--kbq-form-field-size-container-left-padding);padding-right:var(--kbq-form-field-size-container-right-padding)}.kbq-form-field .kbq-form-field__container:has(.kbq-textarea){--kbq-form-field-size-container-left-padding: 0;--kbq-form-field-size-container-right-padding: 0}.kbq-form-field .kbq-form-field:not(.kbq-form-field-type-textarea){height:var(--kbq-form-field-size-height)}.kbq-form-field .kbq-form-field__infix{width:100%;max-width:calc(100% - var(--kbq-size-xs));flex-grow:1;padding-left:var(--kbq-form-field-size-infix-left-padding)}.kbq-form-field .kbq-form-field__infix:has(.kbq-select_multiple,.kbq-select_multiline):not(:has(.kbq-select__trigger_empty)),.kbq-form-field .kbq-form-field__infix:has(.kbq-tag-list),.kbq-form-field .kbq-form-field__infix:has(.kbq-textarea){padding-left:0;max-width:100%}.kbq-form-field .kbq-form-field__infix .kbq-input,.kbq-form-field .kbq-form-field__infix .kbq-tag-input{padding-right:var(--kbq-form-field-size-infix-right-padding)}.kbq-form-field,.kbq-form-field .kbq-input,.kbq-form-field .kbq-textarea{border-radius:var(--kbq-form-field-size-border-radius)}.kbq-form-field:hover{z-index:1}.kbq-form-field.cdk-focused,.kbq-form-field.kbq-focused{z-index:3}.kbq-form-field.kbq-form-field_without-borders .kbq-form-field__container,.kbq-form-field.kbq-form-field_no-borders .kbq-form-field__container{border-color:transparent!important;box-shadow:none!important}.kbq-form-field+.kbq-password-hint{margin-top:var(--kbq-size-m)}.kbq-form-field .kbq-form-field__prefix,.kbq-form-field .kbq-form-field__suffix{display:flex;justify-content:center;align-items:center}.kbq-form-field .kbq-form-field__prefix .kbq-prefix,.kbq-form-field .kbq-form-field__prefix .kbq-suffix,.kbq-form-field .kbq-form-field__suffix .kbq-prefix,.kbq-form-field .kbq-form-field__suffix .kbq-suffix{min-width:var(--kbq-form-field-size-addon-width);text-align:center}.kbq-form-field .kbq-form-field__prefix+.kbq-form-field__infix{padding-left:0}.kbq-form-field .kbq-form-field__hint{display:flex;flex-direction:column;gap:var(--kbq-size-s);margin-top:var(--kbq-form-field-hint-size-margin-top)}.kbq-form-field .kbq-form-field__container{border-color:var(--kbq-form-field-default-border-color);background-color:var(--kbq-form-field-default-background)}.kbq-form-field .kbq-input,.kbq-form-field .kbq-tag-input,.kbq-form-field .kbq-textarea{color:var(--kbq-form-field-default-text)}.kbq-form-field .kbq-input::placeholder,.kbq-form-field .kbq-tag-input::placeholder,.kbq-form-field .kbq-textarea::placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input::-ms-input-placeholder,.kbq-form-field .kbq-tag-input::-ms-input-placeholder,.kbq-form-field .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input::-webkit-input-placeholder,.kbq-form-field .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-default-placeholder)}.kbq-form-field .kbq-input:-webkit-autofill,.kbq-form-field .kbq-input:-webkit-autofill:hover,.kbq-form-field .kbq-input:-webkit-autofill:focus{-webkit-box-shadow:inset 0 0 0 40rem var(--kbq-form-field-states-autofill-background);-webkit-text-fill-color:var(--kbq-form-field-states-autofill-text);caret-color:var(--kbq-form-field-states-autofill-text)}.kbq-form-field.kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container{border-color:var(--kbq-form-field-states-error-border-color);background-color:var(--kbq-form-field-states-error-background)}.kbq-form-field.kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea{color:var(--kbq-form-field-states-error-text)}.kbq-form-field.kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container{border-color:var(--kbq-form-field-states-focused-border-color);background-color:var(--kbq-form-field-states-focused-background)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea{color:var(--kbq-form-field-states-focused-text)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-focused-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).cdk-focused .kbq-form-field__container{box-shadow:0 0 .1px 1px var(--kbq-form-field-states-focused-focus-outline)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-form-field__container{border-color:var(--kbq-form-field-states-error-border-color);background-color:var(--kbq-form-field-states-error-background)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea{color:var(--kbq-form-field-states-error-text)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-textarea::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-error-placeholder)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid.cdk-focused .kbq-form-field__container,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid.cdk-focused .kbq-form-field__container{box-shadow:0 0 .1px 1px var(--kbq-form-field-states-error-focused-focus-outline)}.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-textarea:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-timepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-datepicker:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-input-password:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-tag-list:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_invalid .kbq-icon.kbq-empty,.kbq-form-field.kbq-form-field-type-select:not(:has(.cdk-keyboard-focused,.kbq-focused)).kbq-form-field_has-validate-directive.ng-invalid .kbq-icon.kbq-empty{color:var(--kbq-form-field-states-error-text);-webkit-text-fill-color:var(--kbq-form-field-states-error-text)}.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill),.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill:hover),.kbq-form-field .kbq-form-field__container:has(.kbq-input:-webkit-autofill:focus){background-color:var(--kbq-form-field-states-autofill-background)!important}.kbq-form-field.kbq-disabled .kbq-form-field__container{border-color:var(--kbq-form-field-states-disabled-border-color);background-color:var(--kbq-form-field-states-disabled-background)}.kbq-form-field.kbq-disabled .kbq-input,.kbq-form-field.kbq-disabled .kbq-tag-input,.kbq-form-field.kbq-disabled .kbq-textarea{color:var(--kbq-form-field-states-disabled-text)}.kbq-form-field.kbq-disabled .kbq-input::placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-input::-ms-input-placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::-ms-input-placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::-ms-input-placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-input::-webkit-input-placeholder,.kbq-form-field.kbq-disabled .kbq-tag-input::-webkit-input-placeholder,.kbq-form-field.kbq-disabled .kbq-textarea::-webkit-input-placeholder{color:var(--kbq-form-field-states-disabled-placeholder)}.kbq-form-field.kbq-disabled .kbq-icon.kbq-empty{color:var(--kbq-form-field-states-disabled-text);-webkit-text-fill-color:var(--kbq-form-field-states-disabled-text)}.kbq-form-field .kbq-form-field__prefix .kbq-icon.kbq-empty,.kbq-form-field .kbq-form-field__suffix .kbq-icon.kbq-empty{color:var(--kbq-icon-contrast-fade)}.kbq-form-field .kbq-form-field__hint>.kbq-hint:not(.kbq-password-hint,.kbq-contrast-fade,.kbq-success,.kbq-warning,.kbq-error){color:var(--kbq-form-field-hint-text)}.kbq-form-field{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-form-field .kbq-form-field__hint>.kbq-hint:not(.kbq-password-hint,.kbq-reactive-password-hint,.kbq-contrast-fade,.kbq-success,.kbq-warning) .kbq-hint__text{font-size:var(--kbq-typography-text-compact-font-size);font-style:var(--kbq-typography-text-compact-font-style);font-weight:var(--kbq-typography-text-compact-font-weight);line-height:var(--kbq-typography-text-compact-line-height);font-family:var(--kbq-typography-text-compact-font-family);text-transform:var(--kbq-typography-text-compact-text-transform);font-feature-settings:var(--kbq-typography-text-compact-font-feature-settings);letter-spacing:var(--kbq-typography-text-compact-letter-spacing)}\n", ".kbq-form-field{--kbq-form-field-size-height: var(--kbq-size-3xl);--kbq-form-field-size-border-width: var(--kbq-size-border-width);--kbq-form-field-size-border-radius: var(--kbq-size-border-radius);--kbq-form-field-size-icon-size: var(--kbq-size-l);--kbq-form-field-size-icon-margin-left: var(--kbq-size-s);--kbq-form-field-size-icon-margin-right: var(--kbq-size-s);--kbq-form-field-size-icon-button-size: var(--kbq-size-xxl);--kbq-form-field-size-icon-button-margin-left: var(--kbq-size-xxs);--kbq-form-field-hint-size-margin-top: var(--kbq-size-m);--kbq-form-field-hint-size-gap: var(--kbq-size-s);--kbq-form-field-size-container-vertical-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-container-left-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-container-right-padding: calc(var(--kbq-size-xs) - var(--kbq-size-border-width));--kbq-form-field-size-infix-left-padding: var(--kbq-size-xs);--kbq-form-field-size-infix-right-padding: var(--kbq-size-xxs);--kbq-form-field-size-addon-width: 28px;--kbq-form-field-default-border-color: var(--kbq-line-contrast-fade);--kbq-form-field-default-background: var(--kbq-background-bg);--kbq-form-field-default-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-default-text: var(--kbq-foreground-contrast);--kbq-form-field-states-focused-border-color: var(--kbq-states-line-focus-theme);--kbq-form-field-states-focused-background: var(--kbq-background-bg);--kbq-form-field-states-focused-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-states-focused-text: var(--kbq-foreground-contrast);--kbq-form-field-states-focused-focus-outline: var(--kbq-states-line-focus-theme);--kbq-form-field-states-error-border-color: var(--kbq-line-error);--kbq-form-field-states-error-background: var(--kbq-background-error-less);--kbq-form-field-states-error-placeholder: var(--kbq-foreground-error-tertiary);--kbq-form-field-states-error-text: var(--kbq-foreground-error);--kbq-form-field-states-error-focused-focus-outline: var(--kbq-states-line-focus-error);--kbq-form-field-states-autofill-border-color: var(--kbq-states-line-focus-theme);--kbq-form-field-states-autofill-background: var(--kbq-background-theme-less);--kbq-form-field-states-autofill-placeholder: var(--kbq-foreground-contrast-tertiary);--kbq-form-field-states-autofill-text: var(--kbq-foreground-contrast);--kbq-form-field-states-disabled-border-color: var(--kbq-states-line-disabled);--kbq-form-field-states-disabled-background: var(--kbq-states-background-disabled);--kbq-form-field-states-disabled-placeholder: var(--kbq-states-foreground-disabled);--kbq-form-field-states-disabled-text: var(--kbq-states-foreground-disabled);--kbq-form-field-hint-text: var(--kbq-foreground-contrast-secondary)}:where(.kbq-dark){--kbq-form-field-states-error-placeholder: var(--kbq-foreground-error-secondary)}\n", ".kbq-input{background:transparent;padding:0;margin:0;border:none;outline:none;display:inline-block;box-sizing:border-box;text-overflow:ellipsis;width:100%;min-height:calc(var(--kbq-size-3xl) - var(--kbq-size-border-width) * 2);padding:var(--kbq-input-size-padding-vertical) var(--kbq-input-size-padding-horizontal)}.kbq-input::-ms-clear{display:none;width:0;height:0}.kbq-input::-ms-reveal{display:none;width:0;height:0}.kbq-input::-webkit-search-decoration,.kbq-input::-webkit-search-cancel-button,.kbq-input::-webkit-search-results-button,.kbq-input::-webkit-search-results-decoration{display:none}input.kbq-input[type=number]{-moz-appearance:textfield}input.kbq-input[type=number]::-webkit-inner-spin-button,input.kbq-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}input.kbq-input:invalid{box-shadow:unset}input.kbq-input::placeholder{opacity:1}.kbq-input,.kbq-input.kbq-input-password::placeholder{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-input.kbq-input-password{font-size:var(--kbq-typography-mono-normal-font-size);font-style:var(--kbq-typography-mono-normal-font-style);font-weight:var(--kbq-typography-mono-normal-font-weight);line-height:var(--kbq-typography-mono-normal-line-height);font-family:var(--kbq-typography-mono-normal-font-family);text-transform:var(--kbq-typography-mono-normal-text-transform);font-feature-settings:var(--kbq-typography-mono-normal-font-feature-settings);letter-spacing:var(--kbq-typography-mono-normal-letter-spacing);font-variant-ligatures:none;font-feature-settings:\"liga\" 0,\"clig\" 0,\"calt\" 0}\n", ".kbq-input{--kbq-input-size-padding-horizontal: 0;--kbq-input-size-padding-vertical: var(--kbq-form-field-size-container-vertical-padding)}\n", ".kbq-timepicker{padding-right:var(--kbq-timepicker-size-padding-right)}.kbq-form-field-type-timepicker{width:136px}\n", ".kbq-form-field-type-datepicker{width:136px}\n", ".kbq-textarea{--kbq-textarea-size-min-height: 64px;--kbq-textarea-size-max-height: 96px;--kbq-textarea-size-padding-vertical: 5px;--kbq-textarea-size-padding-horizontal: 11px}.kbq-textarea{display:inline-block;background:transparent;margin:0;border:none;outline:none;resize:none;overflow:auto;width:100%;box-sizing:border-box;padding:var(--kbq-textarea-size-padding-vertical) var(--kbq-textarea-size-padding-horizontal);-webkit-appearance:none;vertical-align:bottom}.kbq-textarea:not(.kbq-textarea-resizable){box-sizing:border-box;overflow-y:hidden}.kbq-textarea.kbq-textarea-resizable{resize:vertical;min-height:var(--kbq-textarea-size-min-height)}.kbq-textarea.kbq-textarea_max-row-limit-reached{resize:unset}.kbq-textarea:invalid{box-shadow:unset}\n", ".kbq-form-field-type-tag-list{--kbq-tag-input-size-padding-left: var(--kbq-size-xxs);--kbq-tag-input-size-padding-right: var(--kbq-size-m);--kbq-tag-input-size-padding-vertical: var(--kbq-size-xxs);--kbq-tag-input-size-content-gap: var(--kbq-size-s)}\n"] }]
350
350
  }], propDecorators: { control: [{
351
351
  type: ContentChild,
352
352
  args: [KbqFormFieldControl]
@@ -390,10 +390,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
390
390
  * @deprecated Will be removed in next major release, use `noBorders` input instead.
391
391
  */
392
392
  export class KbqFormFieldWithoutBorders {
393
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqFormFieldWithoutBorders, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
394
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqFormFieldWithoutBorders, isStandalone: true, selector: "kbq-form-field[kbqFormFieldWithoutBorders]", host: { classAttribute: "kbq-form-field_without-borders" }, exportAs: ["kbqFormFieldWithoutBorders"], ngImport: i0 }); }
393
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqFormFieldWithoutBorders, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
394
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: KbqFormFieldWithoutBorders, isStandalone: true, selector: "kbq-form-field[kbqFormFieldWithoutBorders]", host: { classAttribute: "kbq-form-field_without-borders" }, exportAs: ["kbqFormFieldWithoutBorders"], ngImport: i0 }); }
395
395
  }
396
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqFormFieldWithoutBorders, decorators: [{
396
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqFormFieldWithoutBorders, decorators: [{
397
397
  type: Directive,
398
398
  args: [{
399
399
  standalone: true,
@@ -425,10 +425,10 @@ export class KbqTrim {
425
425
  }
426
426
  return typeof value === 'string' ? value.trim() : value;
427
427
  }
428
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqTrim, deps: [{ token: 'no-trim', attribute: true }, { token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
429
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: KbqTrim, isStandalone: true, selector: "[kbqInput], [kbqTextarea]", host: { classAttribute: "kbq-trim" }, exportAs: ["KbqTrim"], ngImport: i0 }); }
428
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqTrim, deps: [{ token: 'no-trim', attribute: true }, { token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
429
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: KbqTrim, isStandalone: true, selector: "[kbqInput], [kbqTextarea]", host: { classAttribute: "kbq-trim" }, exportAs: ["KbqTrim"], ngImport: i0 }); }
430
430
  }
431
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: KbqTrim, decorators: [{
431
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: KbqTrim, decorators: [{
432
432
  type: Directive,
433
433
  args: [{
434
434
  standalone: true,
@@ -444,4 +444,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
444
444
  }, {
445
445
  type: Self
446
446
  }] }] });
447
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZm9ybS1maWVsZC9mb3JtLWZpZWxkLnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFlLE1BQU0sbUJBQW1CLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUlILFNBQVMsRUFDVCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixVQUFVLEVBQ1YsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sY0FBYyxFQUNkLEtBQUssRUFFTCxRQUFRLEVBRVIsU0FBUyxFQUNULElBQUksRUFDSixTQUFTLEVBQ1QsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN2QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sU0FBUyxDQUFD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InNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvY3VzTW9uaXRvciwgRm9jdXNPcmlnaW4gfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRDaGVja2VkLFxuICAgIEFmdGVyQ29udGVudEluaXQsXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBBdHRyaWJ1dGUsXG4gICAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkLFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBEZXN0cm95UmVmLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGluamVjdCxcbiAgICBJbmplY3Rpb25Ub2tlbixcbiAgICBpbnB1dCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgT3B0aW9uYWwsXG4gICAgUHJvdmlkZXIsXG4gICAgUXVlcnlMaXN0LFxuICAgIFNlbGYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgTmdDb250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRVNDQVBFLCBGOCB9IGZyb20gJ0Brb29iaXEvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IEtCUV9GT1JNX0ZJRUxEX1JFRiwgS2JxQ29sb3JEaXJlY3RpdmUgfSBmcm9tICdAa29vYmlxL2NvbXBvbmVudHMvY29yZSc7XG5pbXBvcnQgeyBFTVBUWSwgbWVyZ2UgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlbGF5LCBzdGFydFdpdGggfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBLYnFDbGVhbmVyIH0gZnJvbSAnLi9jbGVhbmVyJztcbmltcG9ydCB7IEticUVycm9yIH0gZnJvbSAnLi9lcnJvcic7XG5pbXBvcnQgeyBLYnFGb3JtRmllbGRDb250cm9sIH0gZnJvbSAnLi9mb3JtLWZpZWxkLWNvbnRyb2wnO1xuaW1wb3J0IHsgS2JxSGludCB9IGZyb20gJy4vaGludCc7XG5pbXBvcnQgeyBLYnFMYWJlbCB9IGZyb20gJy4vbGFiZWwnO1xuaW1wb3J0IHsgaGFzUGFzc3dvcmRTdHJlbmd0aEVycm9yLCBLYnFQYXNzd29yZEhpbnQgfSBmcm9tICcuL3Bhc3N3b3JkLWhpbnQnO1xuaW1wb3J0IHsgS2JxUGFzc3dvcmRUb2dnbGUgfSBmcm9tICcuL3Bhc3N3b3JkLXRvZ2dsZSc7XG5pbXBvcnQgeyBLYnFQcmVmaXggfSBmcm9tICcuL3ByZWZpeCc7XG5pbXBvcnQgeyBLYnFSZWFjdGl2ZVBhc3N3b3JkSGludCB9IGZyb20gJy4vcmVhY3RpdmUtcGFzc3dvcmQtaGludCc7XG5pbXBvcnQgeyBLYnFTdGVwcGVyIH0gZnJvbSAnLi9zdGVwcGVyJztcbmltcG9ydCB7IEticVN1ZmZpeCB9IGZyb20gJy4vc3VmZml4JztcblxuLyoqIEBkb2NzLXByaXZhdGUgKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRLYnFGb3JtRmllbGRNaXNzaW5nQ29udHJvbEVycm9yKCk6IEVycm9yIHtcbiAgICByZXR1cm4gRXJyb3IoJ2ticS1mb3JtLWZpZWxkIG11c3QgY29udGFpbiBhIEticUZvcm1GaWVsZENvbnRyb2wnKTtcbn1cblxuLyoqIEBkb2NzLXByaXZhdGUgKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRLYnFGb3JtRmllbGRZb3VDYW5Ob3RVc2VDbGVhbmVySW5OdW1iZXJJbnB1dEVycm9yKCk6IEVycm9yIHtcbiAgICByZXR1cm4gRXJyb3IoYFlvdSBjYW4ndCB1c2Uga2JxLWNsZWFuZXIgd2l0aCBpbnB1dCB0aGF0IGhhdmUgdHlwZT1cIm51bWJlclwiYCk7XG59XG5cbi8qKlxuICogRGVmYXVsdCBvcHRpb25zIGZvciB0aGUga2JxLWZvcm0tZmllbGQgdGhhdCBjYW4gYmUgY29uZmlndXJlZCB1c2luZyB0aGUgYEtCUV9GT1JNX0ZJRUxEX0RFRkFVTFRfT1BUSU9OU2BcbiAqIGluamVjdGlvbiB0b2tlbi5cbiAqL1xuZXhwb3J0IHR5cGUgS2JxRm9ybUZpZWxkRGVmYXVsdE9wdGlvbnMgPSBQYXJ0aWFsPHtcbiAgICAvKiogRGlzYWJsZXMgZm9ybSBmaWVsZCBib3JkZXJzIGFuZCBzaGFkb3dzLiAqL1xuICAgIG5vQm9yZGVyczogYm9vbGVhbjtcbn0+O1xuXG4vKipcbiAqIEluamVjdGlvbiB0b2tlbiB0aGF0IGNhbiBiZSB1c2VkIHRvIGNvbmZpZ3VyZSB0aGUgZGVmYXVsdCBvcHRpb25zIGZvciBhbGwga2JxLWZvcm0tZmllbGQncy5cbiAqL1xuZXhwb3J0IGNvbnN0IEtCUV9GT1JNX0ZJRUxEX0RFRkFVTFRfT1BUSU9OUyA9IG5ldyBJbmplY3Rpb25Ub2tlbjxLYnFGb3JtRmllbGREZWZhdWx0T3B0aW9ucz4oXG4gICAgJ0tCUV9GT1JNX0ZJRUxEX0RFRkFVTFRfT1BUSU9OUydcbik7XG5cbi8qKiBVdGlsaXR5IHByb3ZpZGVyIGZvciBgS0JRX0ZPUk1fRklFTERfREVGQVVMVF9PUFRJT05TYC4gKi9cbmV4cG9ydCBjb25zdCBrYnFGb3JtRmllbGREZWZhdWx0T3B0aW9uc1Byb3ZpZGVyID0gKG9wdGlvbnM6IEticUZvcm1GaWVsZERlZmF1bHRPcHRpb25zKTogUHJvdmlkZXIgPT4gKHtcbiAgICBwcm92aWRlOiBLQlFfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMsXG4gICAgdXNlVmFsdWU6IG9wdGlvbnNcbn0pO1xuXG4vKiogQ29udGFpbmVyIGZvciBmb3JtIGNvbnRyb2xzIHRoYXQgYXBwbGllcyBzdHlsaW5nIGFuZCBiZWhhdmlvci4gKi9cbkBDb21wb25lbnQoe1xuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgc2VsZWN0b3I6ICdrYnEtZm9ybS1maWVsZCcsXG4gICAgZXhwb3J0QXM6ICdrYnFGb3JtRmllbGQnLFxuICAgIHRlbXBsYXRlVXJsOiAnZm9ybS1maWVsZC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFtcbiAgICAgICAgJ2Zvcm0tZmllbGQuc2NzcycsXG4gICAgICAgICdmb3JtLWZpZWxkLXRva2Vucy5zY3NzJyxcbiAgICAgICAgLy8gS2JxSW5wdXQgaXMgYSBkaXJlY3RpdmUgYW5kIGNhbid0IGhhdmUgc3R5bGVzLCBzbyB3ZSBuZWVkIHRvIGluY2x1ZGUgaXRzIHN0eWxlcyBoZXJlLlxuICAgICAgICAvLyBUaGUgS2JxSW5wdXQgc3R5bGVzIGFyZSBmYWlybHkgbWluaW1hbCBzbyBpdCBzaG91bGRuJ3QgYmUgYSBiaWcgZGVhbCBmb3IgcGVvcGxlIHdobyBhcmVuJ3QgdXNpbmcgS2JxSW5wdXQuXG4gICAgICAgICcuLi9pbnB1dC9pbnB1dC5zY3NzJyxcbiAgICAgICAgJy4uL2lucHV0L2lucHV0LXRva2Vucy5zY3NzJyxcbiAgICAgICAgJy4uL3RpbWVwaWNrZXIvdGltZXBpY2tlci5zY3NzJyxcbiAgICAgICAgJy4uL2RhdGVwaWNrZXIvZGF0ZXBpY2tlci1pbnB1dC5zY3NzJyxcbiAgICAgICAgJy4uL3RleHRhcmVhL3RleHRhcmVhLnNjc3MnLFxuICAgICAgICAnLi4vdGFncy90YWctaW5wdXQtdG9rZW5zLnNjc3MnXG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAna2JxLWZvcm0tZmllbGQnLFxuXG4gICAgICAgICdbY2xhc3Mua2JxLWZvcm0tZmllbGRfaW52YWxpZF0nOiAnaW52YWxpZCcsXG4gICAgICAgICdbY2xhc3Mua2JxLWRpc2FibGVkXSc6ICdkaXNhYmxlZCcsXG4gICAgICAgICdbY2xhc3Mua2JxLWZvcm0tZmllbGRfbm8tYm9yZGVyc10nOiAnbm9Cb3JkZXJzKCknLFxuXG4gICAgICAgICdbY2xhc3MubmctdW50b3VjaGVkXSc6ICdzaG91bGRGb3J3YXJkKFwidW50b3VjaGVkXCIpJyxcbiAgICAgICAgJ1tjbGFzcy5uZy10b3VjaGVkXSc6ICdzaG91bGRGb3J3YXJkKFwidG91Y2hlZFwiKScsXG4gICAgICAgICdbY2xhc3MubmctcHJpc3RpbmVdJzogJ3Nob3VsZEZvcndhcmQoXCJwcmlzdGluZVwiKScsXG4gICAgICAgICdbY2xhc3MubmctZGlydHldJzogJ3Nob3VsZEZvcndhcmQoXCJkaXJ0eVwiKScsXG4gICAgICAgICdbY2xhc3MubmctdmFsaWRdJzogJ3Nob3VsZEZvcndhcmQoXCJ2YWxpZFwiKScsXG4gICAgICAgICdbY2xhc3MubmctaW52YWxpZF0nOiAnc2hvdWxkRm9yd2FyZChcImludmFsaWRcIiknLFxuICAgICAgICAnW2NsYXNzLm5nLXBlbmRpbmddJzogJ3Nob3VsZEZvcndhcmQoXCJwZW5kaW5nXCIpJyxcblxuICAgICAgICAnKGtleWRvd24pJzogJ29uS2V5RG93bigkZXZlbnQpJyxcbiAgICAgICAgJyhtb3VzZWVudGVyKSc6ICdvbkhvdmVyQ2hhbmdlZCh0cnVlKScsXG4gICAgICAgICcobW91c2VsZWF2ZSknOiAnb25Ib3ZlckNoYW5nZWQoZmFsc2UpJ1xuICAgIH0sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEtCUV9GT1JNX0ZJRUxEX1JFRiwgdXNlRXhpc3Rpbmc6IEticUZvcm1GaWVsZCB9XVxufSlcbmV4cG9ydCBjbGFzcyBLYnFGb3JtRmllbGRcbiAgICBleHRlbmRzIEticUNvbG9yRGlyZWN0aXZlXG4gICAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIEFmdGVyQ29udGVudENoZWNrZWRcbntcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBmb2N1c01vbml0b3IgPSBpbmplY3QoRm9jdXNNb25pdG9yKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlZmF1bHRPcHRpb25zID0gaW5qZWN0KEtCUV9GT1JNX0ZJRUxEX0RFRkFVTFRfT1BUSU9OUywgeyBvcHRpb25hbDogdHJ1ZSB9KTtcbiAgICAvKipcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICAgIC8qKiBEaXNhYmxlcyBmb3JtIGZpZWxkIGJvcmRlcnMgYW5kIHNoYWRvd3MuICovXG4gICAgcmVhZG9ubHkgbm9Cb3JkZXJzID0gaW5wdXQodGhpcy5kZWZhdWx0T3B0aW9ucz8ubm9Cb3JkZXJzLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBmb3JtIGZpZWxkIGNvbnRyb2wuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZChLYnFGb3JtRmllbGRDb250cm9sKSBjb250cm9sOiBLYnFGb3JtRmllbGRDb250cm9sPHVua25vd24+O1xuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKEticVN0ZXBwZXIpIHJlYWRvbmx5IHN0ZXBwZXI6IEticVN0ZXBwZXI7XG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqXG4gICAgICogQFRPRE8gU2hvdWxkIGJlIHJlYWRvbmx5ICgjRFMtMzg4MylcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKEticUNsZWFuZXIsIHsgZGVzY2VuZGFudHM6IGZhbHNlIH0pIGNsZWFuZXI6IEticUNsZWFuZXIgfCBudWxsO1xuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKEticVBhc3N3b3JkVG9nZ2xlKSBwYXNzd29yZFRvZ2dsZTogS2JxUGFzc3dvcmRUb2dnbGUgfCBudWxsO1xuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkcmVuKEticUhpbnQpIGhpbnQ6IFF1ZXJ5TGlzdDxLYnFIaW50PjtcbiAgICAvKipcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZHJlbihLYnFQYXNzd29yZEhpbnQpIHBhc3N3b3JkSGludHM6IFF1ZXJ5TGlzdDxLYnFQYXNzd29yZEhpbnQ+O1xuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkcmVuKEticVN1ZmZpeCkgc3VmZml4OiBRdWVyeUxpc3Q8S2JxU3VmZml4PjtcbiAgICAvKipcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgQENvbnRlbnRDaGlsZHJlbihLYnFQcmVmaXgpIHByZWZpeDogUXVlcnlMaXN0PEticVByZWZpeD47XG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIEBWaWV3Q2hpbGQoJ2Nvbm5lY3Rpb25Db250YWluZXInLCB7IHN0YXRpYzogdHJ1ZSB9KSBjb25uZWN0aW9uQ29udGFpbmVyUmVmOiBFbGVtZW50UmVmO1xuXG4gICAgQENvbnRlbnRDaGlsZHJlbihLYnFSZWFjdGl2ZVBhc3N3b3JkSGludCkgcHJpdmF0ZSByZWFkb25seSByZWFjdGl2ZVBhc3N3b3JkSGludDogUXVlcnlMaXN0PEticVJlYWN0aXZlUGFzc3dvcmRIaW50PjtcbiAgICBAQ29udGVudENoaWxkcmVuKEticUVycm9yKSBwcml2YXRlIHJlYWRvbmx5IGVycm9yOiBRdWVyeUxpc3Q8S2JxRXJyb3I+O1xuICAgIEBDb250ZW50Q2hpbGQoS2JxTGFiZWwpIHByaXZhdGUgcmVhZG9ubHkgbGFiZWw6IEticUxhYmVsIHwgbnVsbDtcblxuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBob3ZlcmVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgY2FuQ2xlYW5lckNsZWFyQnlFc2M6IGJvb2xlYW4gPSB0cnVlO1xuXG4gICAgLyoqIFdoZXRoZXIgdGhlIGZvcm0gZmllbGQgaXMgaW52YWxpZC4gKi9cbiAgICBnZXQgaW52YWxpZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5jb250cm9sPy5lcnJvclN0YXRlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGZvcm0gZmllbGQgY29udHJvbCBoYXMgYW4gcmVhY3RpdmUgcGFzc3dvcmQgaGludC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZ2V0IGhhc1JlYWN0aXZlUGFzc3dvcmRIaW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yZWFjdGl2ZVBhc3N3b3JkSGludC5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGZvcm0tZmllbGQgY29udGFpbnMga2JxLWVycm9yLlxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBnZXQgaGFzRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmVycm9yLmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgZm9ybS1maWVsZCBjb250YWlucyBrYnEtbGFiZWwuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGdldCBoYXNMYWJlbCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5sYWJlbDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBmb3JtLWZpZWxkIGNvbnRhaW5zIGticS1wYXNzd29yZC1oaW50LlxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIGdldCBoYXNQYXNzd29yZEhpbnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnBhc3N3b3JkSGludHM/Lmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3VycmVudCBmb2N1cyBvcmlnaW4gc3RhdGUuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgZ2V0IGZvY3VzT3JpZ2luKCk6IEZvY3VzT3JpZ2luIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2ZvY3VzT3JpZ2luO1xuICAgIH1cblxuICAgIHByaXZhdGUgX2ZvY3VzT3JpZ2luOiBGb2N1c09yaWdpbjtcblxuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBnZXQgaGFzRm9jdXMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbnRyb2w/LmZvY3VzZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgZm9ybS1maWVsZCBjb250YWlucyBrYnEtaGludC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBnZXQgaGFzSGludCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaGludD8ubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBmb3JtLWZpZWxkIGNvbnRhaW5zIGticVN1ZmZpeC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBnZXQgaGFzU3VmZml4KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5zdWZmaXg/Lmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgZm9ybS1maWVsZCBjb250YWlucyBrYnFQcmVmaXguXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgZ2V0IGhhc1ByZWZpeCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucHJlZml4Py5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGZvcm0tZmllbGQgY29udGFpbnMga2JxLWNsZWFuZXIuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgZ2V0IGhhc0NsZWFuZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuY2xlYW5lcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBmb3JtLWZpZWxkIGNvbnRhaW5zIGticS1zdGVwcGVyLlxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIGdldCBoYXNTdGVwcGVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnN0ZXBwZXI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgZm9ybS1maWVsZCBjb250YWlucyBrYnEtcGFzc3dvcmQtdG9nZ2xlLlxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIGdldCBoYXNQYXNzd29yZFRvZ2dsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5wYXNzd29yZFRvZ2dsZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgZ2V0IGNhblNob3dDbGVhbmVyKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oYXNDbGVhbmVyICYmIHRoaXMuY29udHJvbD8ubmdDb250cm9sID8gdGhpcy5jb250cm9sLm5nQ29udHJvbC52YWx1ZSAmJiAhdGhpcy5kaXNhYmxlZCA6IGZhbHNlO1xuICAgIH1cblxuICAgIC8qKiBXaGV0aGVyIHRoZSBmb3JtIGZpZWxkIGlzIGRpc2FibGVkLiAqL1xuICAgIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbD8uZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgc3RlcHBlciBzaG91bGQgYmUgYWx3YXlzIHZpc2libGUgd2hlbiBwcm92aWRlZCwgc28gdGhpcyBwYXJhbWV0ZXIgaXMgcmVkdW5kYW50LFxuICAgICAqIHVzZSBgaGFzU3RlcHBlcmAgaW5zdGVhZFxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIGNhblNob3dTdGVwcGVyID0gdHJ1ZTtcblxuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUNvbnRyb2xDaGlsZCgpO1xuXG4gICAgICAgIGlmICgodGhpcy5jb250cm9sIGFzIGFueSkubnVtYmVySW5wdXQgJiYgdGhpcy5oYXNDbGVhbmVyKSB7XG4gICAgICAgICAgICB0aGlzLmNsZWFuZXIgPSBudWxsO1xuICAgICAgICAgICAgdGhyb3cgZ2V0S2JxRm9ybUZpZWxkWW91Q2FuTm90VXNlQ2xlYW5lckluTnVtYmVySW5wdXRFcnJvcigpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gU3Vic2NyaWJlIHRvIGNoYW5nZXMgaW4gdGhlIGNoaWxkIGNvbnRyb2wgc3RhdGUgaW4gb3JkZXIgdG8gdXBkYXRlIHRoZSBmb3JtIGZpZWxkIFVJLlxuICAgICAgICB0aGlzLmNvbnRyb2wuc3RhdGVDaGFuZ2VzLnBpcGUoc3RhcnRXaXRoKCksIGRlbGF5KDApKS5zdWJzY3JpYmUoKHN0YXRlOiBhbnkpID0+IHtcbiAgICAgICAgICAgIGlmICh0aGlzLnBhc3N3b3JkSGludHMubGVuZ3RoICYmICFzdGF0ZT8uZm9jdXNlZCAmJiBoYXNQYXNzd29yZFN0cmVuZ3RoRXJyb3IodGhpcy5wYXNzd29yZEhpbnRzKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY29udHJvbC5uZ0NvbnRyb2w/LmNvbnRyb2w/LnNldEVycm9ycyh7IHBhc3N3b3JkU3RyZW5ndGg6IHRydWUgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmICh0aGlzLmhhc1N0ZXBwZXIpIHtcbiAgICAgICAgICAgIHRoaXMuc3RlcHBlci5jb25uZWN0VG8oKHRoaXMuY29udHJvbCBhcyBhbnkpLm51bWJlcklucHV0KTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZUNvbnRyb2woKTtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplUHJlZml4QW5kU3VmZml4KCk7XG4gICAgICAgIHRoaXMuaW5pdGlhbGl6ZUhpbnQoKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyQ29udGVudENoZWNrZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsaWRhdGVDb250cm9sQ2hpbGQoKTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucnVuRm9jdXNNb25pdG9yKCk7XG5cbiAgICAgICAgLy8gQmVjYXVzZSB0aGUgYWJvdmUgY2hhbmdlcyBhIHZhbHVlIHVzZWQgaW4gdGhlIHRlbXBsYXRlIGFmdGVyIGl0IHdhcyBjaGVja2VkLCB3ZSBuZWVkXG4gICAgICAgIC8vIHRvIHRyaWdnZXIgQ0Qgb3IgdGhlIGNoYW5nZSBtaWdodCBub3QgYmUgcmVmbGVjdGVkIGlmIHRoZXJlIGlzIG5vIG90aGVyIENEIHNjaGVkdWxlZC5cbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RvcEZvY3VzTW9uaXRvcigpO1xuICAgIH1cblxuICAgIC8qKiBGb2N1c2VzIHRoZSBjb250cm9sLiAqL1xuICAgIGZvY3VzKG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250cm9sLmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkZXByZWNhdGVkIFVzZSBgZm9jdXNgIGluc3RlYWQuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgZm9jdXNWaWFLZXlib2FyZChvcHRpb25zPzogRm9jdXNPcHRpb25zKTogdm9pZCB7XG4gICAgICAgIHRoaXMuY29udHJvbC5mb2N1cyhvcHRpb25zKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgY2xlYXJWYWx1ZShldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG5cbiAgICAgICAgdGhpcy5jb250cm9sPy5uZ0NvbnRyb2w/LnJlc2V0KCk7XG4gICAgICAgIHRoaXMuY29udHJvbD8uZm9jdXMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIYW5kbGVzIGEgY2xpY2sgb24gdGhlIGNvbnRyb2wncyBjb250YWluZXIuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgb25Db250YWluZXJDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jb250cm9sPy5vbkNvbnRhaW5lckNsaWNrKSB7XG4gICAgICAgICAgICB0aGlzLmNvbnRyb2wub25Db250YWluZXJDbGljayhldmVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIYW5kbGVzIGtleWRvd24gZXZlbnRzLlxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jb250cm9sLmNvbnRyb2xUeXBlID09PSAnaW5wdXQtcGFzc3dvcmQnICYmIGV2ZW50LmFsdEtleSAmJiBldmVudC5rZXlDb2RlID09PSBGOCkge1xuICAgICAgICAgICAgKHRoaXMuY29udHJvbCBhcyB1bmtub3duIGFzIHsgdG9nZ2xlVHlwZSgpOiB2b2lkIH0pLnRvZ2dsZVR5cGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLmNhbkNsZWFuZXJDbGVhckJ5RXNjICYmIGV2ZW50LmtleUNvZGUgPT09IEVTQ0FQRSAmJiB0aGlzLmNvbnRyb2wuZm9jdXNlZCAmJiB0aGlzLmhhc0NsZWFuZXIpIHtcbiAgICAgICAgICAgIHRoaXMuY29udHJvbD8ubmdDb250cm9sPy5yZXNldCgpO1xuXG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIG9uSG92ZXJDaGFuZ2VkKGlzSG92ZXJlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAoaXNIb3ZlcmVkICE9PSB0aGlzLmhvdmVyZWQpIHtcbiAgICAgICAgICAgIHRoaXMuaG92ZXJlZCA9IGlzSG92ZXJlZDtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGFuIEVsZW1lbnRSZWYgZm9yIHRoZSBlbGVtZW50IHRoYXQgYSBvdmVybGF5IGF0dGFjaGVkIHRvIHRoZSBmb3JtLWZpZWxkIHNob3VsZCBiZSBwb3NpdGlvbmVkIHJlbGF0aXZlIHRvLlxuICAgICAqL1xuICAgIGdldENvbm5lY3RlZE92ZXJsYXlPcmlnaW4oKTogRWxlbWVudFJlZiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbm5lY3Rpb25Db250YWluZXJSZWYgfHwgdGhpcy5lbGVtZW50UmVmO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERldGVybWluZXMgd2hldGhlciBhIGNsYXNzIGZyb20gdGhlIE5nQ29udHJvbCBzaG91bGQgYmUgZm9yd2FyZGVkIHRvIHRoZSBob3N0IGVsZW1lbnQuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgc2hvdWxkRm9yd2FyZChwcm9wOiBrZXlvZiBOZ0NvbnRyb2wpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgbmdDb250cm9sID0gdGhpcy5jb250cm9sPy5uZ0NvbnRyb2w7XG5cbiAgICAgICAgcmV0dXJuIG5nQ29udHJvbCAmJiBuZ0NvbnRyb2xbcHJvcF07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUnVucyB0aGUgZm9jdXMgbW9uaXRvciBmb3IgdGhlIGZvcm0gZmllbGQuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgcnVuRm9jdXNNb25pdG9yID0gKCkgPT4ge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvclxuICAgICAgICAgICAgLm1vbml0b3IodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsIHRydWUpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG9yaWdpbikgPT4gKHRoaXMuX2ZvY3VzT3JpZ2luID0gb3JpZ2luKSk7XG4gICAgfTtcblxuICAgIC8qKlxuICAgICAqIFN0b3BzIHRoZSBmb2N1cyBtb25pdG9yIGZvciB0aGUgZm9ybSBmaWVsZC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBzdG9wRm9jdXNNb25pdG9yKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzTW9uaXRvci5zdG9wTW9uaXRvcmluZyh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhyb3dzIGFuIGVycm9yIGlmIHRoZSBmb3JtLWZpZWxkIGNvbnRyb2wgaXMgbWlzc2luZy5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgdmFsaWRhdGVDb250cm9sQ2hpbGQoKSB7XG4gICAgICAgIGlmICghdGhpcy5jb250cm9sKSB7XG4gICAgICAgICAgICB0aHJvdyBnZXRLYnFGb3JtRmllbGRNaXNzaW5nQ29udHJvbEVycm9yKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogSW5pdGlhbGl6ZXMgdGhlIGZvcm0gZmllbGQgY29udHJvbC4gKi9cbiAgICBwcml2YXRlIGluaXRpYWxpemVDb250cm9sKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jb250cm9sLmNvbnRyb2xUeXBlKSB7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc0xpc3QuYWRkKGBrYnEtZm9ybS1maWVsZC10eXBlLSR7dGhpcy5jb250cm9sLmNvbnRyb2xUeXBlfWApO1xuICAgICAgICB9XG5cbiAgICAgICAgbWVyZ2UodGhpcy5jb250cm9sLnN0YXRlQ2hhbmdlcywgdGhpcy5jb250cm9sLm5nQ29udHJvbD8udmFsdWVDaGFuZ2VzIHx8IEVNUFRZKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCkpO1xuICAgIH1cblxuICAgIC8qKiBJbml0aWFsaXplcyB0aGUga2JxUHJlZml4IGFuZCBrYnFTdWZmaXggY29udGFpbmVycy4gKi9cbiAgICBwcml2YXRlIGluaXRpYWxpemVQcmVmaXhBbmRTdWZmaXgoKTogdm9pZCB7XG4gICAgICAgIC8vIE1hcmsgdGhlIGZvcm0gZmllbGQgYXMgZGlydHkgd2hlbmV2ZXIgdGhlIHByZWZpeCBvciBzdWZmaXggY2hpbGRyZW4gY2hhbmdlLiBUaGlzIGlzIG5lY2Vzc2FyeSBiZWNhdXNlIHdlXG4gICAgICAgIC8vIGNvbmRpdGlvbmFsbHkgZGlzcGxheSB0aGUgcHJlZml4L3N1ZmZpeCBjb250YWluZXJzIGJhc2VkIG9uIHdoZXRoZXIgdGhlcmUgaXMgcHJvamVjdGVkIGNvbnRlbnQuXG4gICAgICAgIG1lcmdlKHRoaXMucHJlZml4LmNoYW5nZXMsIHRoaXMuc3VmZml4LmNoYW5nZXMpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSk7XG4gICAgfVxuXG4gICAgLyoqIEluaXRpYWxpemVzIHRoZSBLYnFIaW50LCBLYnFQYXNzd29yZEhpbnQsIEticVJlYWN0aXZlUGFzc3dvcmRIaW50IGFuZCBLYnFFcnJvciBjb250YWluZXJzLiAqL1xuICAgIHByaXZhdGUgaW5pdGlhbGl6ZUhpbnQoKTogdm9pZCB7XG4gICAgICAgIG1lcmdlKHRoaXMuaGludC5jaGFuZ2VzLCB0aGlzLnBhc3N3b3JkSGludHMuY2hhbmdlcywgdGhpcy5yZWFjdGl2ZVBhc3N3b3JkSGludC5jaGFuZ2VzLCB0aGlzLmVycm9yLmNoYW5nZXMpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSk7XG4gICAgfVxufVxuXG4vKipcbiAqIEBkb2NzLXByaXZhdGVcbiAqXG4gKiBAZGVwcmVjYXRlZCBXaWxsIGJlIHJlbW92ZWQgaW4gbmV4dCBtYWpvciByZWxlYXNlLCB1c2UgYG5vQm9yZGVyc2AgaW5wdXQgaW5zdGVhZC5cbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ2ticS1mb3JtLWZpZWxkW2ticUZvcm1GaWVsZFdpdGhvdXRCb3JkZXJzXScsXG4gICAgZXhwb3J0QXM6ICdrYnFGb3JtRmllbGRXaXRob3V0Qm9yZGVycycsXG4gICAgaG9zdDogeyBjbGFzczogJ2ticS1mb3JtLWZpZWxkX3dpdGhvdXQtYm9yZGVycycgfVxufSlcbmV4cG9ydCBjbGFzcyBLYnFGb3JtRmllbGRXaXRob3V0Qm9yZGVycyB7fVxuXG4vKipcbiAqIEBkb2NzLXByaXZhdGVcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBzZWxlY3RvcjogJ1trYnFJbnB1dF0sIFtrYnFUZXh0YXJlYV0nLFxuICAgIGV4cG9ydEFzOiAnS2JxVHJpbScsXG4gICAgaG9zdDogeyBjbGFzczogJ2ticS10cmltJyB9XG59KVxuZXhwb3J0IGNsYXNzIEticVRyaW0ge1xuICAgIHByaXZhdGUgb3JpZ2luYWw6IChmbjogYW55KSA9PiB2b2lkO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIEBBdHRyaWJ1dGUoJ25vLXRyaW0nKSBwcml2YXRlIHJlYWRvbmx5IG5vVHJpbTogYm9vbGVhbixcbiAgICAgICAgQE9wdGlvbmFsKCkgQFNlbGYoKSBwcml2YXRlIG5nQ29udHJvbDogTmdDb250cm9sXG4gICAgKSB7XG4gICAgICAgIHRoaXMubm9UcmltID0gY29lcmNlQm9vbGVhblByb3BlcnR5KG5vVHJpbSk7XG5cbiAgICAgICAgaWYgKHRoaXMubm9UcmltIHx8ICF0aGlzLm5nQ29udHJvbD8udmFsdWVBY2Nlc3Nvcikge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5vcmlnaW5hbCA9IHRoaXMubmdDb250cm9sLnZhbHVlQWNjZXNzb3IucmVnaXN0ZXJPbkNoYW5nZTtcblxuICAgICAgICB0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yLnJlZ2lzdGVyT25DaGFuZ2UgPSB0aGlzLnJlZ2lzdGVyT25DaGFuZ2U7XG4gICAgfVxuXG4gICAgdHJpbSh2YWx1ZSkge1xuICAgICAgICBpZiAodGhpcy5ub1RyaW0pIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0eXBlb2YgdmFsdWUgPT09ICdzdHJpbmcnID8gdmFsdWUudHJpbSgpIDogdmFsdWU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZWdpc3Rlck9uQ2hhbmdlID0gKGZuKSA9PiB7XG4gICAgICAgIHJldHVybiB0aGlzLm9yaWdpbmFsLmNhbGwodGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciwgKHZhbHVlKSA9PiBmbih0aGlzLnRyaW0odmFsdWUpKSk7XG4gICAgfTtcbn1cbiIsIkBpZiAoaGFzTGFiZWwpIHtcbiAgICA8bGFiZWwgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9fbGFiZWxcIiBbYXR0ci5mb3JdPVwiY29udHJvbC5pZFwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJrYnEtbGFiZWxcIiAvPlxuICAgIDwvbGFiZWw+XG59XG5cbjxkaXYgI2Nvbm5lY3Rpb25Db250YWluZXIgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9fY29udGFpbmVyXCIgKGNsaWNrKT1cIm9uQ29udGFpbmVyQ2xpY2soJGV2ZW50KVwiPlxuICAgIEBpZiAoaGFzUHJlZml4KSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9fcHJlZml4XCI+XG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJba2JxUHJlZml4XVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cblxuICAgIDxkaXYgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9faW5maXhcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgLz5cbiAgICA8L2Rpdj5cblxuICAgIEBpZiAoaGFzU3VmZml4IHx8IGhhc0NsZWFuZXIgfHwgaGFzUGFzc3dvcmRUb2dnbGUgfHwgaGFzU3RlcHBlcikge1xuICAgICAgICA8ZGl2IGNsYXNzPVwia2JxLWZvcm0tZmllbGRfX3N1ZmZpeFwiPlxuICAgICAgICAgICAgQGlmIChjYW5TaG93Q2xlYW5lcikge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9fY2xlYW5lclwiIChjbGljayk9XCJjbGVhclZhbHVlKCRldmVudClcIiAoa2V5ZG93bi5lbnRlcik9XCJjbGVhclZhbHVlKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwia2JxLWNsZWFuZXJcIiAvPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJrYnEtcGFzc3dvcmQtdG9nZ2xlLCBrYnEtc3RlcHBlciwgW2ticVN1ZmZpeF1cIiAvPlxuICAgICAgICA8L2Rpdj5cbiAgICB9XG48L2Rpdj5cblxuQGlmIChoYXNIaW50IHx8IGhhc1Bhc3N3b3JkSGludCB8fCBoYXNFcnJvciB8fCBoYXNSZWFjdGl2ZVBhc3N3b3JkSGludCkge1xuICAgIDxkaXYgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9faGludFwiPlxuICAgICAgICBAaWYgKGludmFsaWQpIHtcbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImticS1lcnJvclwiIC8+XG4gICAgICAgIH1cblxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJrYnEtaGludCwga2JxLXBhc3N3b3JkLWhpbnQsIGticS1yZWFjdGl2ZS1wYXNzd29yZC1oaW50XCIgLz5cbiAgICA8L2Rpdj5cbn1cbiJdfQ==
447
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvZm9ybS1maWVsZC9mb3JtLWZpZWxkLnRzIiwiLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9mb3JtLWZpZWxkL2Zvcm0tZmllbGQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFlLE1BQU0sbUJBQW1CLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDOUQsT0FBTyxFQUlILFNBQVMsRUFDVCxnQkFBZ0IsRUFDaEIsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLGVBQWUsRUFDZixVQUFVLEVBQ1YsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sY0FBYyxFQUNkLEtBQUssRUFFTCxRQUFRLEVBRVIsU0FBUyxFQUNULElBQUksRUFDSixTQUFTLEVBQ1QsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUN2QyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sU0FBUyxDQUFD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LCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IsIEZvY3VzT3JpZ2luIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIEFmdGVyVmlld0luaXQsXG4gICAgQXR0cmlidXRlLFxuICAgIGJvb2xlYW5BdHRyaWJ1dGUsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRGVzdHJveVJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBpbmplY3QsXG4gICAgSW5qZWN0aW9uVG9rZW4sXG4gICAgaW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9wdGlvbmFsLFxuICAgIFByb3ZpZGVyLFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBTZWxmLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE5nQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEVTQ0FQRSwgRjggfSBmcm9tICdAa29vYmlxL2Nkay9rZXljb2Rlcyc7XG5pbXBvcnQgeyBLQlFfRk9STV9GSUVMRF9SRUYsIEticUNvbG9yRGlyZWN0aXZlIH0gZnJvbSAnQGtvb2JpcS9jb21wb25lbnRzL2NvcmUnO1xuaW1wb3J0IHsgRU1QVFksIG1lcmdlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkZWxheSwgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgS2JxQ2xlYW5lciB9IGZyb20gJy4vY2xlYW5lcic7XG5pbXBvcnQgeyBLYnFFcnJvciB9IGZyb20gJy4vZXJyb3InO1xuaW1wb3J0IHsgS2JxRm9ybUZpZWxkQ29udHJvbCB9IGZyb20gJy4vZm9ybS1maWVsZC1jb250cm9sJztcbmltcG9ydCB7IEticUhpbnQgfSBmcm9tICcuL2hpbnQnO1xuaW1wb3J0IHsgS2JxTGFiZWwgfSBmcm9tICcuL2xhYmVsJztcbmltcG9ydCB7IGhhc1Bhc3N3b3JkU3RyZW5ndGhFcnJvciwgS2JxUGFzc3dvcmRIaW50IH0gZnJvbSAnLi9wYXNzd29yZC1oaW50JztcbmltcG9ydCB7IEticVBhc3N3b3JkVG9nZ2xlIH0gZnJvbSAnLi9wYXNzd29yZC10b2dnbGUnO1xuaW1wb3J0IHsgS2JxUHJlZml4IH0gZnJvbSAnLi9wcmVmaXgnO1xuaW1wb3J0IHsgS2JxUmVhY3RpdmVQYXNzd29yZEhpbnQgfSBmcm9tICcuL3JlYWN0aXZlLXBhc3N3b3JkLWhpbnQnO1xuaW1wb3J0IHsgS2JxU3RlcHBlciB9IGZyb20gJy4vc3RlcHBlcic7XG5pbXBvcnQgeyBLYnFTdWZmaXggfSBmcm9tICcuL3N1ZmZpeCc7XG5cbi8qKiBAZG9jcy1wcml2YXRlICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0S2JxRm9ybUZpZWxkTWlzc2luZ0NvbnRyb2xFcnJvcigpOiBFcnJvciB7XG4gICAgcmV0dXJuIEVycm9yKCdrYnEtZm9ybS1maWVsZCBtdXN0IGNvbnRhaW4gYSBLYnFGb3JtRmllbGRDb250cm9sJyk7XG59XG5cbi8qKiBAZG9jcy1wcml2YXRlICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0S2JxRm9ybUZpZWxkWW91Q2FuTm90VXNlQ2xlYW5lckluTnVtYmVySW5wdXRFcnJvcigpOiBFcnJvciB7XG4gICAgcmV0dXJuIEVycm9yKGBZb3UgY2FuJ3QgdXNlIGticS1jbGVhbmVyIHdpdGggaW5wdXQgdGhhdCBoYXZlIHR5cGU9XCJudW1iZXJcImApO1xufVxuXG4vKipcbiAqIERlZmF1bHQgb3B0aW9ucyBmb3IgdGhlIGticS1mb3JtLWZpZWxkIHRoYXQgY2FuIGJlIGNvbmZpZ3VyZWQgdXNpbmcgdGhlIGBLQlFfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlNgXG4gKiBpbmplY3Rpb24gdG9rZW4uXG4gKi9cbmV4cG9ydCB0eXBlIEticUZvcm1GaWVsZERlZmF1bHRPcHRpb25zID0gUGFydGlhbDx7XG4gICAgLyoqIERpc2FibGVzIGZvcm0gZmllbGQgYm9yZGVycyBhbmQgc2hhZG93cy4gKi9cbiAgICBub0JvcmRlcnM6IGJvb2xlYW47XG59PjtcblxuLyoqXG4gKiBJbmplY3Rpb24gdG9rZW4gdGhhdCBjYW4gYmUgdXNlZCB0byBjb25maWd1cmUgdGhlIGRlZmF1bHQgb3B0aW9ucyBmb3IgYWxsIGticS1mb3JtLWZpZWxkJ3MuXG4gKi9cbmV4cG9ydCBjb25zdCBLQlFfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMgPSBuZXcgSW5qZWN0aW9uVG9rZW48S2JxRm9ybUZpZWxkRGVmYXVsdE9wdGlvbnM+KFxuICAgICdLQlFfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMnXG4pO1xuXG4vKiogVXRpbGl0eSBwcm92aWRlciBmb3IgYEtCUV9GT1JNX0ZJRUxEX0RFRkFVTFRfT1BUSU9OU2AuICovXG5leHBvcnQgY29uc3Qga2JxRm9ybUZpZWxkRGVmYXVsdE9wdGlvbnNQcm92aWRlciA9IChvcHRpb25zOiBLYnFGb3JtRmllbGREZWZhdWx0T3B0aW9ucyk6IFByb3ZpZGVyID0+ICh7XG4gICAgcHJvdmlkZTogS0JRX0ZPUk1fRklFTERfREVGQVVMVF9PUFRJT05TLFxuICAgIHVzZVZhbHVlOiBvcHRpb25zXG59KTtcblxuLyoqIENvbnRhaW5lciBmb3IgZm9ybSBjb250cm9scyB0aGF0IGFwcGxpZXMgc3R5bGluZyBhbmQgYmVoYXZpb3IuICovXG5AQ29tcG9uZW50KHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAna2JxLWZvcm0tZmllbGQnLFxuICAgIGV4cG9ydEFzOiAna2JxRm9ybUZpZWxkJyxcbiAgICB0ZW1wbGF0ZVVybDogJ2Zvcm0tZmllbGQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbXG4gICAgICAgICdmb3JtLWZpZWxkLnNjc3MnLFxuICAgICAgICAnZm9ybS1maWVsZC10b2tlbnMuc2NzcycsXG4gICAgICAgIC8vIEticUlucHV0IGlzIGEgZGlyZWN0aXZlIGFuZCBjYW4ndCBoYXZlIHN0eWxlcywgc28gd2UgbmVlZCB0byBpbmNsdWRlIGl0cyBzdHlsZXMgaGVyZS5cbiAgICAgICAgLy8gVGhlIEticUlucHV0IHN0eWxlcyBhcmUgZmFpcmx5IG1pbmltYWwgc28gaXQgc2hvdWxkbid0IGJlIGEgYmlnIGRlYWwgZm9yIHBlb3BsZSB3aG8gYXJlbid0IHVzaW5nIEticUlucHV0LlxuICAgICAgICAnLi4vaW5wdXQvaW5wdXQuc2NzcycsXG4gICAgICAgICcuLi9pbnB1dC9pbnB1dC10b2tlbnMuc2NzcycsXG4gICAgICAgICcuLi90aW1lcGlja2VyL3RpbWVwaWNrZXIuc2NzcycsXG4gICAgICAgICcuLi9kYXRlcGlja2VyL2RhdGVwaWNrZXItaW5wdXQuc2NzcycsXG4gICAgICAgICcuLi90ZXh0YXJlYS90ZXh0YXJlYS5zY3NzJyxcbiAgICAgICAgJy4uL3RhZ3MvdGFnLWlucHV0LXRva2Vucy5zY3NzJ1xuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ticS1mb3JtLWZpZWxkJyxcblxuICAgICAgICAnW2NsYXNzLmticS1mb3JtLWZpZWxkX2ludmFsaWRdJzogJ2ludmFsaWQnLFxuICAgICAgICAnW2NsYXNzLmticS1kaXNhYmxlZF0nOiAnZGlzYWJsZWQnLFxuICAgICAgICAnW2NsYXNzLmticS1mb3JtLWZpZWxkX25vLWJvcmRlcnNdJzogJ25vQm9yZGVycygpJyxcblxuICAgICAgICAnW2NsYXNzLm5nLXVudG91Y2hlZF0nOiAnc2hvdWxkRm9yd2FyZChcInVudG91Y2hlZFwiKScsXG4gICAgICAgICdbY2xhc3MubmctdG91Y2hlZF0nOiAnc2hvdWxkRm9yd2FyZChcInRvdWNoZWRcIiknLFxuICAgICAgICAnW2NsYXNzLm5nLXByaXN0aW5lXSc6ICdzaG91bGRGb3J3YXJkKFwicHJpc3RpbmVcIiknLFxuICAgICAgICAnW2NsYXNzLm5nLWRpcnR5XSc6ICdzaG91bGRGb3J3YXJkKFwiZGlydHlcIiknLFxuICAgICAgICAnW2NsYXNzLm5nLXZhbGlkXSc6ICdzaG91bGRGb3J3YXJkKFwidmFsaWRcIiknLFxuICAgICAgICAnW2NsYXNzLm5nLWludmFsaWRdJzogJ3Nob3VsZEZvcndhcmQoXCJpbnZhbGlkXCIpJyxcbiAgICAgICAgJ1tjbGFzcy5uZy1wZW5kaW5nXSc6ICdzaG91bGRGb3J3YXJkKFwicGVuZGluZ1wiKScsXG5cbiAgICAgICAgJyhrZXlkb3duKSc6ICdvbktleURvd24oJGV2ZW50KScsXG4gICAgICAgICcobW91c2VlbnRlciknOiAnb25Ib3ZlckNoYW5nZWQodHJ1ZSknLFxuICAgICAgICAnKG1vdXNlbGVhdmUpJzogJ29uSG92ZXJDaGFuZ2VkKGZhbHNlKSdcbiAgICB9LFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBLQlFfRk9STV9GSUVMRF9SRUYsIHVzZUV4aXN0aW5nOiBLYnFGb3JtRmllbGQgfV1cbn0pXG5leHBvcnQgY2xhc3MgS2JxRm9ybUZpZWxkXG4gICAgZXh0ZW5kcyBLYnFDb2xvckRpcmVjdGl2ZVxuICAgIGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBBZnRlckNvbnRlbnRDaGVja2VkXG57XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3JSZWYgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZm9jdXNNb25pdG9yID0gaW5qZWN0KEZvY3VzTW9uaXRvcik7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZWZhdWx0T3B0aW9ucyA9IGluamVjdChLQlFfRk9STV9GSUVMRF9ERUZBVUxUX09QVElPTlMsIHsgb3B0aW9uYWw6IHRydWUgfSk7XG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIHJlYWRvbmx5IGVsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuXG4gICAgLyoqIERpc2FibGVzIGZvcm0gZmllbGQgYm9yZGVycyBhbmQgc2hhZG93cy4gKi9cbiAgICByZWFkb25seSBub0JvcmRlcnMgPSBpbnB1dCh0aGlzLmRlZmF1bHRPcHRpb25zPy5ub0JvcmRlcnMsIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGZvcm0gZmllbGQgY29udHJvbC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkKEticUZvcm1GaWVsZENvbnRyb2wpIGNvbnRyb2w6IEticUZvcm1GaWVsZENvbnRyb2w8dW5rbm93bj47XG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGQoS2JxU3RlcHBlcikgcmVhZG9ubHkgc3RlcHBlcjogS2JxU3RlcHBlcjtcbiAgICAvKipcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICpcbiAgICAgKiBAVE9ETyBTaG91bGQgYmUgcmVhZG9ubHkgKCNEUy0zODgzKVxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGQoS2JxQ2xlYW5lciwgeyBkZXNjZW5kYW50czogZmFsc2UgfSkgY2xlYW5lcjogS2JxQ2xlYW5lciB8IG51bGw7XG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGQoS2JxUGFzc3dvcmRUb2dnbGUpIHBhc3N3b3JkVG9nZ2xlOiBLYnFQYXNzd29yZFRvZ2dsZSB8IG51bGw7XG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oS2JxSGludCkgaGludDogUXVlcnlMaXN0PEticUhpbnQ+O1xuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkcmVuKEticVBhc3N3b3JkSGludCkgcGFzc3dvcmRIaW50czogUXVlcnlMaXN0PEticVBhc3N3b3JkSGludD47XG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oS2JxU3VmZml4KSBzdWZmaXg6IFF1ZXJ5TGlzdDxLYnFTdWZmaXg+O1xuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBAQ29udGVudENoaWxkcmVuKEticVByZWZpeCkgcHJlZml4OiBRdWVyeUxpc3Q8S2JxUHJlZml4PjtcbiAgICAvKipcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgQFZpZXdDaGlsZCgnY29ubmVjdGlvbkNvbnRhaW5lcicsIHsgc3RhdGljOiB0cnVlIH0pIGNvbm5lY3Rpb25Db250YWluZXJSZWY6IEVsZW1lbnRSZWY7XG5cbiAgICBAQ29udGVudENoaWxkcmVuKEticVJlYWN0aXZlUGFzc3dvcmRIaW50KSBwcml2YXRlIHJlYWRvbmx5IHJlYWN0aXZlUGFzc3dvcmRIaW50OiBRdWVyeUxpc3Q8S2JxUmVhY3RpdmVQYXNzd29yZEhpbnQ+O1xuICAgIEBDb250ZW50Q2hpbGRyZW4oS2JxRXJyb3IpIHByaXZhdGUgcmVhZG9ubHkgZXJyb3I6IFF1ZXJ5TGlzdDxLYnFFcnJvcj47XG4gICAgQENvbnRlbnRDaGlsZChLYnFMYWJlbCkgcHJpdmF0ZSByZWFkb25seSBsYWJlbDogS2JxTGFiZWwgfCBudWxsO1xuXG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIGhvdmVyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBjYW5DbGVhbmVyQ2xlYXJCeUVzYzogYm9vbGVhbiA9IHRydWU7XG5cbiAgICAvKiogV2hldGhlciB0aGUgZm9ybSBmaWVsZCBpcyBpbnZhbGlkLiAqL1xuICAgIGdldCBpbnZhbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmNvbnRyb2w/LmVycm9yU3RhdGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgZm9ybSBmaWVsZCBjb250cm9sIGhhcyBhbiByZWFjdGl2ZSBwYXNzd29yZCBoaW50LlxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBnZXQgaGFzUmVhY3RpdmVQYXNzd29yZEhpbnQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlYWN0aXZlUGFzc3dvcmRIaW50Lmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgZm9ybS1maWVsZCBjb250YWlucyBrYnEtZXJyb3IuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGdldCBoYXNFcnJvcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZXJyb3IubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBmb3JtLWZpZWxkIGNvbnRhaW5zIGticS1sYWJlbC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZ2V0IGhhc0xhYmVsKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLmxhYmVsO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGZvcm0tZmllbGQgY29udGFpbnMga2JxLXBhc3N3b3JkLWhpbnQuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgZ2V0IGhhc1Bhc3N3b3JkSGludCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFzc3dvcmRIaW50cz8ubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDdXJyZW50IGZvY3VzIG9yaWdpbiBzdGF0ZS5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBnZXQgZm9jdXNPcmlnaW4oKTogRm9jdXNPcmlnaW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fZm9jdXNPcmlnaW47XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfZm9jdXNPcmlnaW46IEZvY3VzT3JpZ2luO1xuXG4gICAgLyoqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIGdldCBoYXNGb2N1cygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29udHJvbD8uZm9jdXNlZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBmb3JtLWZpZWxkIGNvbnRhaW5zIGticS1oaW50LlxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIGdldCBoYXNIaW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5oaW50Py5sZW5ndGggPiAwO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGZvcm0tZmllbGQgY29udGFpbnMga2JxU3VmZml4LlxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIGdldCBoYXNTdWZmaXgoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnN1ZmZpeD8ubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBmb3JtLWZpZWxkIGNvbnRhaW5zIGticVByZWZpeC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBnZXQgaGFzUHJlZml4KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wcmVmaXg/Lmxlbmd0aCA+IDA7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgZm9ybS1maWVsZCBjb250YWlucyBrYnEtY2xlYW5lci5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBnZXQgaGFzQ2xlYW5lcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5jbGVhbmVyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIGZvcm0tZmllbGQgY29udGFpbnMga2JxLXN0ZXBwZXIuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgZ2V0IGhhc1N0ZXBwZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuc3RlcHBlcjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXaGV0aGVyIHRoZSBmb3JtLWZpZWxkIGNvbnRhaW5zIGticS1wYXNzd29yZC10b2dnbGUuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgZ2V0IGhhc1Bhc3N3b3JkVG9nZ2xlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnBhc3N3b3JkVG9nZ2xlO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBnZXQgY2FuU2hvd0NsZWFuZXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc0NsZWFuZXIgJiYgdGhpcy5jb250cm9sPy5uZ0NvbnRyb2wgPyB0aGlzLmNvbnRyb2wubmdDb250cm9sLnZhbHVlICYmICF0aGlzLmRpc2FibGVkIDogZmFsc2U7XG4gICAgfVxuXG4gICAgLyoqIFdoZXRoZXIgdGhlIGZvcm0gZmllbGQgaXMgZGlzYWJsZWQuICovXG4gICAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250cm9sPy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZGVwcmVjYXRlZCBzdGVwcGVyIHNob3VsZCBiZSBhbHdheXMgdmlzaWJsZSB3aGVuIHByb3ZpZGVkLCBzbyB0aGlzIHBhcmFtZXRlciBpcyByZWR1bmRhbnQsXG4gICAgICogdXNlIGBoYXNTdGVwcGVyYCBpbnN0ZWFkXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgY2FuU2hvd1N0ZXBwZXIgPSB0cnVlO1xuXG4gICAgbmdBZnRlckNvbnRlbnRJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbGlkYXRlQ29udHJvbENoaWxkKCk7XG5cbiAgICAgICAgaWYgKCh0aGlzLmNvbnRyb2wgYXMgYW55KS5udW1iZXJJbnB1dCAmJiB0aGlzLmhhc0NsZWFuZXIpIHtcbiAgICAgICAgICAgIHRoaXMuY2xlYW5lciA9IG51bGw7XG4gICAgICAgICAgICB0aHJvdyBnZXRLYnFGb3JtRmllbGRZb3VDYW5Ob3RVc2VDbGVhbmVySW5OdW1iZXJJbnB1dEVycm9yKCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBTdWJzY3JpYmUgdG8gY2hhbmdlcyBpbiB0aGUgY2hpbGQgY29udHJvbCBzdGF0ZSBpbiBvcmRlciB0byB1cGRhdGUgdGhlIGZvcm0gZmllbGQgVUkuXG4gICAgICAgIHRoaXMuY29udHJvbC5zdGF0ZUNoYW5nZXMucGlwZShzdGFydFdpdGgoKSwgZGVsYXkoMCkpLnN1YnNjcmliZSgoc3RhdGU6IGFueSkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMucGFzc3dvcmRIaW50cy5sZW5ndGggJiYgIXN0YXRlPy5mb2N1c2VkICYmIGhhc1Bhc3N3b3JkU3RyZW5ndGhFcnJvcih0aGlzLnBhc3N3b3JkSGludHMpKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jb250cm9sLm5nQ29udHJvbD8uY29udHJvbD8uc2V0RXJyb3JzKHsgcGFzc3dvcmRTdHJlbmd0aDogdHJ1ZSB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKHRoaXMuaGFzU3RlcHBlcikge1xuICAgICAgICAgICAgdGhpcy5zdGVwcGVyLmNvbm5lY3RUbygodGhpcy5jb250cm9sIGFzIGFueSkubnVtYmVySW5wdXQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pbml0aWFsaXplQ29udHJvbCgpO1xuICAgICAgICB0aGlzLmluaXRpYWxpemVQcmVmaXhBbmRTdWZmaXgoKTtcbiAgICAgICAgdGhpcy5pbml0aWFsaXplSGludCgpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJDb250ZW50Q2hlY2tlZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWxpZGF0ZUNvbnRyb2xDaGlsZCgpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ydW5Gb2N1c01vbml0b3IoKTtcblxuICAgICAgICAvLyBCZWNhdXNlIHRoZSBhYm92ZSBjaGFuZ2VzIGEgdmFsdWUgdXNlZCBpbiB0aGUgdGVtcGxhdGUgYWZ0ZXIgaXQgd2FzIGNoZWNrZWQsIHdlIG5lZWRcbiAgICAgICAgLy8gdG8gdHJpZ2dlciBDRCBvciB0aGUgY2hhbmdlIG1pZ2h0IG5vdCBiZSByZWZsZWN0ZWQgaWYgdGhlcmUgaXMgbm8gb3RoZXIgQ0Qgc2NoZWR1bGVkLlxuICAgICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdG9wRm9jdXNNb25pdG9yKCk7XG4gICAgfVxuXG4gICAgLyoqIEZvY3VzZXMgdGhlIGNvbnRyb2wuICovXG4gICAgZm9jdXMob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnRyb2wuZm9jdXMob3B0aW9ucyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGRlcHJlY2F0ZWQgVXNlIGBmb2N1c2AgaW5zdGVhZC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBmb2N1c1ZpYUtleWJvYXJkKG9wdGlvbnM/OiBGb2N1c09wdGlvbnMpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb250cm9sLmZvY3VzKG9wdGlvbnMpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBjbGVhclZhbHVlKGV2ZW50OiBFdmVudCk6IHZvaWQge1xuICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgICAgICB0aGlzLmNvbnRyb2w/Lm5nQ29udHJvbD8ucmVzZXQoKTtcbiAgICAgICAgdGhpcy5jb250cm9sPy5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhhbmRsZXMgYSBjbGljayBvbiB0aGUgY29udHJvbCdzIGNvbnRhaW5lci5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBvbkNvbnRhaW5lckNsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2w/Lm9uQ29udGFpbmVyQ2xpY2spIHtcbiAgICAgICAgICAgIHRoaXMuY29udHJvbC5vbkNvbnRhaW5lckNsaWNrKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhhbmRsZXMga2V5ZG93biBldmVudHMuXG4gICAgICpcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wuY29udHJvbFR5cGUgPT09ICdpbnB1dC1wYXNzd29yZCcgJiYgZXZlbnQuYWx0S2V5ICYmIGV2ZW50LmtleUNvZGUgPT09IEY4KSB7XG4gICAgICAgICAgICAodGhpcy5jb250cm9sIGFzIHVua25vd24gYXMgeyB0b2dnbGVUeXBlKCk6IHZvaWQgfSkudG9nZ2xlVHlwZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuY2FuQ2xlYW5lckNsZWFyQnlFc2MgJiYgZXZlbnQua2V5Q29kZSA9PT0gRVNDQVBFICYmIHRoaXMuY29udHJvbC5mb2N1c2VkICYmIHRoaXMuaGFzQ2xlYW5lcikge1xuICAgICAgICAgICAgdGhpcy5jb250cm9sPy5uZ0NvbnRyb2w/LnJlc2V0KCk7XG5cbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAZG9jcy1wcml2YXRlXG4gICAgICovXG4gICAgb25Ib3ZlckNoYW5nZWQoaXNIb3ZlcmVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIGlmIChpc0hvdmVyZWQgIT09IHRoaXMuaG92ZXJlZCkge1xuICAgICAgICAgICAgdGhpcy5ob3ZlcmVkID0gaXNIb3ZlcmVkO1xuICAgICAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEdldHMgYW4gRWxlbWVudFJlZiBmb3IgdGhlIGVsZW1lbnQgdGhhdCBhIG92ZXJsYXkgYXR0YWNoZWQgdG8gdGhlIGZvcm0tZmllbGQgc2hvdWxkIGJlIHBvc2l0aW9uZWQgcmVsYXRpdmUgdG8uXG4gICAgICovXG4gICAgZ2V0Q29ubmVjdGVkT3ZlcmxheU9yaWdpbigpOiBFbGVtZW50UmVmIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29ubmVjdGlvbkNvbnRhaW5lclJlZiB8fCB0aGlzLmVsZW1lbnRSZWY7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRGV0ZXJtaW5lcyB3aGV0aGVyIGEgY2xhc3MgZnJvbSB0aGUgTmdDb250cm9sIHNob3VsZCBiZSBmb3J3YXJkZWQgdG8gdGhlIGhvc3QgZWxlbWVudC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBzaG91bGRGb3J3YXJkKHByb3A6IGtleW9mIE5nQ29udHJvbCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBuZ0NvbnRyb2wgPSB0aGlzLmNvbnRyb2w/Lm5nQ29udHJvbDtcblxuICAgICAgICByZXR1cm4gbmdDb250cm9sICYmIG5nQ29udHJvbFtwcm9wXTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSdW5zIHRoZSBmb2N1cyBtb25pdG9yIGZvciB0aGUgZm9ybSBmaWVsZC5cbiAgICAgKlxuICAgICAqIEBkb2NzLXByaXZhdGVcbiAgICAgKi9cbiAgICBydW5Gb2N1c01vbml0b3IgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yXG4gICAgICAgICAgICAubW9uaXRvcih0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgdHJ1ZSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgob3JpZ2luKSA9PiAodGhpcy5fZm9jdXNPcmlnaW4gPSBvcmlnaW4pKTtcbiAgICB9O1xuXG4gICAgLyoqXG4gICAgICogU3RvcHMgdGhlIGZvY3VzIG1vbml0b3IgZm9yIHRoZSBmb3JtIGZpZWxkLlxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIHN0b3BGb2N1c01vbml0b3IoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaHJvd3MgYW4gZXJyb3IgaWYgdGhlIGZvcm0tZmllbGQgY29udHJvbCBpcyBtaXNzaW5nLlxuICAgICAqXG4gICAgICogQGRvY3MtcHJpdmF0ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCB2YWxpZGF0ZUNvbnRyb2xDaGlsZCgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRyb2wpIHtcbiAgICAgICAgICAgIHRocm93IGdldEticUZvcm1GaWVsZE1pc3NpbmdDb250cm9sRXJyb3IoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBJbml0aWFsaXplcyB0aGUgZm9ybSBmaWVsZCBjb250cm9sLiAqL1xuICAgIHByaXZhdGUgaW5pdGlhbGl6ZUNvbnRyb2woKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmNvbnRyb2wuY29udHJvbFR5cGUpIHtcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdC5hZGQoYGticS1mb3JtLWZpZWxkLXR5cGUtJHt0aGlzLmNvbnRyb2wuY29udHJvbFR5cGV9YCk7XG4gICAgICAgIH1cblxuICAgICAgICBtZXJnZSh0aGlzLmNvbnRyb2wuc3RhdGVDaGFuZ2VzLCB0aGlzLmNvbnRyb2wubmdDb250cm9sPy52YWx1ZUNoYW5nZXMgfHwgRU1QVFkpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5kZXN0cm95UmVmKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKSk7XG4gICAgfVxuXG4gICAgLyoqIEluaXRpYWxpemVzIHRoZSBrYnFQcmVmaXggYW5kIGticVN1ZmZpeCBjb250YWluZXJzLiAqL1xuICAgIHByaXZhdGUgaW5pdGlhbGl6ZVByZWZpeEFuZFN1ZmZpeCgpOiB2b2lkIHtcbiAgICAgICAgLy8gTWFyayB0aGUgZm9ybSBmaWVsZCBhcyBkaXJ0eSB3aGVuZXZlciB0aGUgcHJlZml4IG9yIHN1ZmZpeCBjaGlsZHJlbiBjaGFuZ2UuIFRoaXMgaXMgbmVjZXNzYXJ5IGJlY2F1c2Ugd2VcbiAgICAgICAgLy8gY29uZGl0aW9uYWxseSBkaXNwbGF5IHRoZSBwcmVmaXgvc3VmZml4IGNvbnRhaW5lcnMgYmFzZWQgb24gd2hldGhlciB0aGVyZSBpcyBwcm9qZWN0ZWQgY29udGVudC5cbiAgICAgICAgbWVyZ2UodGhpcy5wcmVmaXguY2hhbmdlcywgdGhpcy5zdWZmaXguY2hhbmdlcylcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpKTtcbiAgICB9XG5cbiAgICAvKiogSW5pdGlhbGl6ZXMgdGhlIEticUhpbnQsIEticVBhc3N3b3JkSGludCwgS2JxUmVhY3RpdmVQYXNzd29yZEhpbnQgYW5kIEticUVycm9yIGNvbnRhaW5lcnMuICovXG4gICAgcHJpdmF0ZSBpbml0aWFsaXplSGludCgpOiB2b2lkIHtcbiAgICAgICAgbWVyZ2UodGhpcy5oaW50LmNoYW5nZXMsIHRoaXMucGFzc3dvcmRIaW50cy5jaGFuZ2VzLCB0aGlzLnJlYWN0aXZlUGFzc3dvcmRIaW50LmNoYW5nZXMsIHRoaXMuZXJyb3IuY2hhbmdlcylcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpKTtcbiAgICB9XG59XG5cbi8qKlxuICogQGRvY3MtcHJpdmF0ZVxuICpcbiAqIEBkZXByZWNhdGVkIFdpbGwgYmUgcmVtb3ZlZCBpbiBuZXh0IG1ham9yIHJlbGVhc2UsIHVzZSBgbm9Cb3JkZXJzYCBpbnB1dCBpbnN0ZWFkLlxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAna2JxLWZvcm0tZmllbGRba2JxRm9ybUZpZWxkV2l0aG91dEJvcmRlcnNdJyxcbiAgICBleHBvcnRBczogJ2ticUZvcm1GaWVsZFdpdGhvdXRCb3JkZXJzJyxcbiAgICBob3N0OiB7IGNsYXNzOiAna2JxLWZvcm0tZmllbGRfd2l0aG91dC1ib3JkZXJzJyB9XG59KVxuZXhwb3J0IGNsYXNzIEticUZvcm1GaWVsZFdpdGhvdXRCb3JkZXJzIHt9XG5cbi8qKlxuICogQGRvY3MtcHJpdmF0ZVxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHNlbGVjdG9yOiAnW2ticUlucHV0XSwgW2ticVRleHRhcmVhXScsXG4gICAgZXhwb3J0QXM6ICdLYnFUcmltJyxcbiAgICBob3N0OiB7IGNsYXNzOiAna2JxLXRyaW0nIH1cbn0pXG5leHBvcnQgY2xhc3MgS2JxVHJpbSB7XG4gICAgcHJpdmF0ZSBvcmlnaW5hbDogKGZuOiBhbnkpID0+IHZvaWQ7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgQEF0dHJpYnV0ZSgnbm8tdHJpbScpIHByaXZhdGUgcmVhZG9ubHkgbm9UcmltOiBib29sZWFuLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2VsZigpIHByaXZhdGUgbmdDb250cm9sOiBOZ0NvbnRyb2xcbiAgICApIHtcbiAgICAgICAgdGhpcy5ub1RyaW0gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkobm9UcmltKTtcblxuICAgICAgICBpZiAodGhpcy5ub1RyaW0gfHwgIXRoaXMubmdDb250cm9sPy52YWx1ZUFjY2Vzc29yKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLm9yaWdpbmFsID0gdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3Nvci5yZWdpc3Rlck9uQ2hhbmdlO1xuXG4gICAgICAgIHRoaXMubmdDb250cm9sLnZhbHVlQWNjZXNzb3IucmVnaXN0ZXJPbkNoYW5nZSA9IHRoaXMucmVnaXN0ZXJPbkNoYW5nZTtcbiAgICB9XG5cbiAgICB0cmltKHZhbHVlKSB7XG4gICAgICAgIGlmICh0aGlzLm5vVHJpbSkge1xuICAgICAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHR5cGVvZiB2YWx1ZSA9PT0gJ3N0cmluZycgPyB2YWx1ZS50cmltKCkgOiB2YWx1ZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlZ2lzdGVyT25DaGFuZ2UgPSAoZm4pID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMub3JpZ2luYWwuY2FsbCh0aGlzLm5nQ29udHJvbC52YWx1ZUFjY2Vzc29yLCAodmFsdWUpID0+IGZuKHRoaXMudHJpbSh2YWx1ZSkpKTtcbiAgICB9O1xufVxuIiwiQGlmIChoYXNMYWJlbCkge1xuICAgIDxsYWJlbCBjbGFzcz1cImticS1mb3JtLWZpZWxkX19sYWJlbFwiIFthdHRyLmZvcl09XCJjb250cm9sLmlkXCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImticS1sYWJlbFwiIC8+XG4gICAgPC9sYWJlbD5cbn1cblxuPGRpdiAjY29ubmVjdGlvbkNvbnRhaW5lciBjbGFzcz1cImticS1mb3JtLWZpZWxkX19jb250YWluZXJcIiAoY2xpY2spPVwib25Db250YWluZXJDbGljaygkZXZlbnQpXCI+XG4gICAgQGlmIChoYXNQcmVmaXgpIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImticS1mb3JtLWZpZWxkX19wcmVmaXhcIj5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltrYnFQcmVmaXhdXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgPGRpdiBjbGFzcz1cImticS1mb3JtLWZpZWxkX19pbmZpeFwiPlxuICAgICAgICA8bmctY29udGVudCAvPlxuICAgIDwvZGl2PlxuXG4gICAgQGlmIChoYXNTdWZmaXggfHwgaGFzQ2xlYW5lciB8fCBoYXNQYXNzd29yZFRvZ2dsZSB8fCBoYXNTdGVwcGVyKSB7XG4gICAgICAgIDxkaXYgY2xhc3M9XCJrYnEtZm9ybS1maWVsZF9fc3VmZml4XCI+XG4gICAgICAgICAgICBAaWYgKGNhblNob3dDbGVhbmVyKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImticS1mb3JtLWZpZWxkX19jbGVhbmVyXCIgKGNsaWNrKT1cImNsZWFyVmFsdWUoJGV2ZW50KVwiIChrZXlkb3duLmVudGVyKT1cImNsZWFyVmFsdWUoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJrYnEtY2xlYW5lclwiIC8+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImticS1wYXNzd29yZC10b2dnbGUsIGticS1zdGVwcGVyLCBba2JxU3VmZml4XVwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbjwvZGl2PlxuXG5AaWYgKGhhc0hpbnQgfHwgaGFzUGFzc3dvcmRIaW50IHx8IGhhc0Vycm9yIHx8IGhhc1JlYWN0aXZlUGFzc3dvcmRIaW50KSB7XG4gICAgPGRpdiBjbGFzcz1cImticS1mb3JtLWZpZWxkX19oaW50XCI+XG4gICAgICAgIEBpZiAoaW52YWxpZCkge1xuICAgICAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwia2JxLWVycm9yXCIgLz5cbiAgICAgICAgfVxuXG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cImticS1oaW50LCBrYnEtcGFzc3dvcmQtaGludCwga2JxLXJlYWN0aXZlLXBhc3N3b3JkLWhpbnRcIiAvPlxuICAgIDwvZGl2PlxufVxuIl19