@fundamental-ngx/core 0.35.0-rc.16 → 0.35.0-rc.19

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 (307) hide show
  1. package/action-bar/package.json +1 -1
  2. package/action-sheet/package.json +1 -1
  3. package/alert/package.json +1 -1
  4. package/avatar/package.json +1 -1
  5. package/avatar-group/package.json +1 -1
  6. package/bar/package.json +1 -1
  7. package/breadcrumb/package.json +1 -1
  8. package/busy-indicator/package.json +1 -1
  9. package/button/package.json +1 -1
  10. package/calendar/package.json +1 -1
  11. package/card/package.json +1 -1
  12. package/carousel/package.json +1 -1
  13. package/checkbox/checkbox/checkbox.component.d.ts +2 -1
  14. package/checkbox/esm2020/checkbox/checkbox.component.mjs +6 -3
  15. package/checkbox/fesm2015/fundamental-ngx-core-checkbox.mjs +5 -2
  16. package/checkbox/fesm2015/fundamental-ngx-core-checkbox.mjs.map +1 -1
  17. package/checkbox/fesm2020/fundamental-ngx-core-checkbox.mjs +5 -2
  18. package/checkbox/fesm2020/fundamental-ngx-core-checkbox.mjs.map +1 -1
  19. package/checkbox/package.json +1 -1
  20. package/combobox/combobox.component.d.ts +2 -1
  21. package/combobox/esm2020/combobox.component.mjs +7 -10
  22. package/combobox/fesm2015/fundamental-ngx-core-combobox.mjs +6 -9
  23. package/combobox/fesm2015/fundamental-ngx-core-combobox.mjs.map +1 -1
  24. package/combobox/fesm2020/fundamental-ngx-core-combobox.mjs +6 -9
  25. package/combobox/fesm2020/fundamental-ngx-core-combobox.mjs.map +1 -1
  26. package/combobox/package.json +1 -1
  27. package/date-picker/date-picker.component.d.ts +9 -3
  28. package/date-picker/esm2020/date-picker.component.mjs +26 -10
  29. package/date-picker/fesm2015/fundamental-ngx-core-date-picker.mjs +25 -9
  30. package/date-picker/fesm2015/fundamental-ngx-core-date-picker.mjs.map +1 -1
  31. package/date-picker/fesm2020/fundamental-ngx-core-date-picker.mjs +25 -9
  32. package/date-picker/fesm2020/fundamental-ngx-core-date-picker.mjs.map +1 -1
  33. package/date-picker/package.json +1 -1
  34. package/datetime/esm2020/fd-datetime-adapter.mjs +4 -1
  35. package/datetime/fesm2015/fundamental-ngx-core-datetime.mjs +3 -0
  36. package/datetime/fesm2015/fundamental-ngx-core-datetime.mjs.map +1 -1
  37. package/datetime/fesm2020/fundamental-ngx-core-datetime.mjs +3 -0
  38. package/datetime/fesm2020/fundamental-ngx-core-datetime.mjs.map +1 -1
  39. package/datetime/package.json +1 -1
  40. package/datetime-picker/datetime-picker.component.d.ts +9 -3
  41. package/datetime-picker/esm2020/datetime-picker.component.mjs +17 -7
  42. package/datetime-picker/fesm2015/fundamental-ngx-core-datetime-picker.mjs +16 -6
  43. package/datetime-picker/fesm2015/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  44. package/datetime-picker/fesm2020/fundamental-ngx-core-datetime-picker.mjs +16 -6
  45. package/datetime-picker/fesm2020/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  46. package/datetime-picker/package.json +1 -1
  47. package/dialog/package.json +1 -1
  48. package/dynamic-page/package.json +1 -1
  49. package/dynamic-side-content/package.json +1 -1
  50. package/esm2020/checkbox/checkbox/checkbox.component.mjs +6 -3
  51. package/esm2020/combobox/combobox.component.mjs +7 -10
  52. package/esm2020/date-picker/date-picker.component.mjs +26 -10
  53. package/esm2020/datetime/fd-datetime-adapter.mjs +4 -1
  54. package/esm2020/datetime-picker/datetime-picker.component.mjs +17 -7
  55. package/esm2020/facets/facet/facet.component.mjs +1 -1
  56. package/esm2020/file-uploader/file-uploader.component.mjs +6 -3
  57. package/esm2020/form/form-control/form-control.component.mjs +30 -8
  58. package/esm2020/form/form-item/form-item.component.mjs +17 -3
  59. package/esm2020/form/form-item-control/form-item-control.mjs +12 -0
  60. package/esm2020/form/form-label/form-label.component.mjs +19 -2
  61. package/esm2020/form/public_api.mjs +2 -1
  62. package/esm2020/input-group/input-group.component.mjs +17 -5
  63. package/esm2020/list/list-item/list-item.component.mjs +9 -6
  64. package/esm2020/multi-input/multi-input.component.mjs +12 -9
  65. package/esm2020/pagination/pagination.component.mjs +1 -1
  66. package/esm2020/quick-view/quick-view-group-item-label/quick-view-group-item-label.component.mjs +1 -1
  67. package/esm2020/radio/radio-button/radio-button.component.mjs +6 -3
  68. package/esm2020/rating-indicator/components/rating-indicator.component.mjs +12 -4
  69. package/esm2020/select/select.component.mjs +4 -1
  70. package/esm2020/slider/slider.component.mjs +4 -3
  71. package/esm2020/step-input/step-input.component.mjs +11 -8
  72. package/esm2020/switch/switch.component.mjs +19 -7
  73. package/esm2020/time-picker/time-picker.component.mjs +12 -8
  74. package/facets/esm2020/facet/facet.component.mjs +1 -1
  75. package/facets/fesm2015/fundamental-ngx-core-facets.mjs +1 -1
  76. package/facets/fesm2020/fundamental-ngx-core-facets.mjs +1 -1
  77. package/facets/package.json +1 -1
  78. package/feed-input/package.json +1 -1
  79. package/feed-list-item/package.json +1 -1
  80. package/fesm2015/fundamental-ngx-core-checkbox.mjs +5 -2
  81. package/fesm2015/fundamental-ngx-core-checkbox.mjs.map +1 -1
  82. package/fesm2015/fundamental-ngx-core-combobox.mjs +6 -9
  83. package/fesm2015/fundamental-ngx-core-combobox.mjs.map +1 -1
  84. package/fesm2015/fundamental-ngx-core-date-picker.mjs +25 -9
  85. package/fesm2015/fundamental-ngx-core-date-picker.mjs.map +1 -1
  86. package/fesm2015/fundamental-ngx-core-datetime-picker.mjs +16 -6
  87. package/fesm2015/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  88. package/fesm2015/fundamental-ngx-core-datetime.mjs +3 -0
  89. package/fesm2015/fundamental-ngx-core-datetime.mjs.map +1 -1
  90. package/fesm2015/fundamental-ngx-core-facets.mjs +1 -1
  91. package/fesm2015/fundamental-ngx-core-file-uploader.mjs +5 -3
  92. package/fesm2015/fundamental-ngx-core-file-uploader.mjs.map +1 -1
  93. package/fesm2015/fundamental-ngx-core-form.mjs +122 -60
  94. package/fesm2015/fundamental-ngx-core-form.mjs.map +1 -1
  95. package/fesm2015/fundamental-ngx-core-input-group.mjs +16 -4
  96. package/fesm2015/fundamental-ngx-core-input-group.mjs.map +1 -1
  97. package/fesm2015/fundamental-ngx-core-list.mjs +8 -5
  98. package/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  99. package/fesm2015/fundamental-ngx-core-multi-input.mjs +12 -10
  100. package/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
  101. package/fesm2015/fundamental-ngx-core-pagination.mjs +1 -1
  102. package/fesm2015/fundamental-ngx-core-quick-view.mjs +1 -1
  103. package/fesm2015/fundamental-ngx-core-radio.mjs +5 -2
  104. package/fesm2015/fundamental-ngx-core-radio.mjs.map +1 -1
  105. package/fesm2015/fundamental-ngx-core-rating-indicator.mjs +11 -3
  106. package/fesm2015/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
  107. package/fesm2015/fundamental-ngx-core-select.mjs +3 -0
  108. package/fesm2015/fundamental-ngx-core-select.mjs.map +1 -1
  109. package/fesm2015/fundamental-ngx-core-slider.mjs +3 -2
  110. package/fesm2015/fundamental-ngx-core-slider.mjs.map +1 -1
  111. package/fesm2015/fundamental-ngx-core-step-input.mjs +10 -8
  112. package/fesm2015/fundamental-ngx-core-step-input.mjs.map +1 -1
  113. package/fesm2015/fundamental-ngx-core-switch.mjs +18 -6
  114. package/fesm2015/fundamental-ngx-core-switch.mjs.map +1 -1
  115. package/fesm2015/fundamental-ngx-core-time-picker.mjs +11 -7
  116. package/fesm2015/fundamental-ngx-core-time-picker.mjs.map +1 -1
  117. package/fesm2020/fundamental-ngx-core-checkbox.mjs +5 -2
  118. package/fesm2020/fundamental-ngx-core-checkbox.mjs.map +1 -1
  119. package/fesm2020/fundamental-ngx-core-combobox.mjs +6 -9
  120. package/fesm2020/fundamental-ngx-core-combobox.mjs.map +1 -1
  121. package/fesm2020/fundamental-ngx-core-date-picker.mjs +25 -9
  122. package/fesm2020/fundamental-ngx-core-date-picker.mjs.map +1 -1
  123. package/fesm2020/fundamental-ngx-core-datetime-picker.mjs +16 -6
  124. package/fesm2020/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  125. package/fesm2020/fundamental-ngx-core-datetime.mjs +3 -0
  126. package/fesm2020/fundamental-ngx-core-datetime.mjs.map +1 -1
  127. package/fesm2020/fundamental-ngx-core-facets.mjs +1 -1
  128. package/fesm2020/fundamental-ngx-core-file-uploader.mjs +5 -3
  129. package/fesm2020/fundamental-ngx-core-file-uploader.mjs.map +1 -1
  130. package/fesm2020/fundamental-ngx-core-form.mjs +122 -60
  131. package/fesm2020/fundamental-ngx-core-form.mjs.map +1 -1
  132. package/fesm2020/fundamental-ngx-core-input-group.mjs +16 -4
  133. package/fesm2020/fundamental-ngx-core-input-group.mjs.map +1 -1
  134. package/fesm2020/fundamental-ngx-core-list.mjs +8 -5
  135. package/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  136. package/fesm2020/fundamental-ngx-core-multi-input.mjs +12 -10
  137. package/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
  138. package/fesm2020/fundamental-ngx-core-pagination.mjs +1 -1
  139. package/fesm2020/fundamental-ngx-core-quick-view.mjs +1 -1
  140. package/fesm2020/fundamental-ngx-core-radio.mjs +5 -2
  141. package/fesm2020/fundamental-ngx-core-radio.mjs.map +1 -1
  142. package/fesm2020/fundamental-ngx-core-rating-indicator.mjs +11 -3
  143. package/fesm2020/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
  144. package/fesm2020/fundamental-ngx-core-select.mjs +3 -0
  145. package/fesm2020/fundamental-ngx-core-select.mjs.map +1 -1
  146. package/fesm2020/fundamental-ngx-core-slider.mjs +3 -2
  147. package/fesm2020/fundamental-ngx-core-slider.mjs.map +1 -1
  148. package/fesm2020/fundamental-ngx-core-step-input.mjs +10 -8
  149. package/fesm2020/fundamental-ngx-core-step-input.mjs.map +1 -1
  150. package/fesm2020/fundamental-ngx-core-switch.mjs +18 -6
  151. package/fesm2020/fundamental-ngx-core-switch.mjs.map +1 -1
  152. package/fesm2020/fundamental-ngx-core-time-picker.mjs +11 -7
  153. package/fesm2020/fundamental-ngx-core-time-picker.mjs.map +1 -1
  154. package/file-uploader/esm2020/file-uploader.component.mjs +6 -3
  155. package/file-uploader/fesm2015/fundamental-ngx-core-file-uploader.mjs +5 -3
  156. package/file-uploader/fesm2015/fundamental-ngx-core-file-uploader.mjs.map +1 -1
  157. package/file-uploader/fesm2020/fundamental-ngx-core-file-uploader.mjs +5 -3
  158. package/file-uploader/fesm2020/fundamental-ngx-core-file-uploader.mjs.map +1 -1
  159. package/file-uploader/file-uploader.component.d.ts +2 -1
  160. package/file-uploader/package.json +1 -1
  161. package/fixed-card-layout/package.json +1 -1
  162. package/flexible-column-layout/package.json +1 -1
  163. package/form/esm2020/form-control/form-control.component.mjs +30 -8
  164. package/form/esm2020/form-item/form-item.component.mjs +17 -3
  165. package/form/esm2020/form-item-control/form-item-control.mjs +12 -0
  166. package/form/esm2020/form-label/form-label.component.mjs +19 -2
  167. package/form/esm2020/public_api.mjs +2 -1
  168. package/form/fesm2015/fundamental-ngx-core-form.mjs +122 -60
  169. package/form/fesm2015/fundamental-ngx-core-form.mjs.map +1 -1
  170. package/form/fesm2020/fundamental-ngx-core-form.mjs +122 -60
  171. package/form/fesm2020/fundamental-ngx-core-form.mjs.map +1 -1
  172. package/form/form-control/form-control.component.d.ts +16 -6
  173. package/form/form-item/form-item.component.d.ts +11 -2
  174. package/form/form-item-control/form-item-control.d.ts +10 -0
  175. package/form/form-label/form-label.component.d.ts +6 -1
  176. package/form/package.json +1 -1
  177. package/form/public_api.d.ts +1 -0
  178. package/formatted-text/package.json +1 -1
  179. package/grid-list/package.json +1 -1
  180. package/icon/package.json +1 -1
  181. package/illustrated-message/package.json +1 -1
  182. package/infinite-scroll/package.json +1 -1
  183. package/info-label/package.json +1 -1
  184. package/inline-help/package.json +1 -1
  185. package/input-group/esm2020/input-group.component.mjs +17 -5
  186. package/input-group/fesm2015/fundamental-ngx-core-input-group.mjs +16 -4
  187. package/input-group/fesm2015/fundamental-ngx-core-input-group.mjs.map +1 -1
  188. package/input-group/fesm2020/fundamental-ngx-core-input-group.mjs +16 -4
  189. package/input-group/fesm2020/fundamental-ngx-core-input-group.mjs.map +1 -1
  190. package/input-group/input-group.component.d.ts +6 -3
  191. package/input-group/package.json +1 -1
  192. package/layout-grid/package.json +1 -1
  193. package/layout-panel/package.json +1 -1
  194. package/link/package.json +1 -1
  195. package/list/esm2020/list-item/list-item.component.mjs +9 -6
  196. package/list/fesm2015/fundamental-ngx-core-list.mjs +8 -5
  197. package/list/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  198. package/list/fesm2020/fundamental-ngx-core-list.mjs +8 -5
  199. package/list/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  200. package/list/list-item/list-item.component.d.ts +1 -1
  201. package/list/package.json +1 -1
  202. package/menu/package.json +1 -1
  203. package/message-box/package.json +1 -1
  204. package/message-strip/package.json +1 -1
  205. package/message-toast/package.json +1 -1
  206. package/micro-process-flow/package.json +1 -1
  207. package/mobile-mode/package.json +1 -1
  208. package/multi-input/esm2020/multi-input.component.mjs +12 -9
  209. package/multi-input/fesm2015/fundamental-ngx-core-multi-input.mjs +12 -10
  210. package/multi-input/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
  211. package/multi-input/fesm2020/fundamental-ngx-core-multi-input.mjs +12 -10
  212. package/multi-input/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
  213. package/multi-input/multi-input.component.d.ts +7 -4
  214. package/multi-input/package.json +1 -1
  215. package/nested-list/package.json +1 -1
  216. package/notification/package.json +1 -1
  217. package/object-identifier/package.json +1 -1
  218. package/object-marker/package.json +1 -1
  219. package/object-number/package.json +1 -1
  220. package/object-status/package.json +1 -1
  221. package/package.json +1 -1
  222. package/pagination/esm2020/pagination.component.mjs +1 -1
  223. package/pagination/fesm2015/fundamental-ngx-core-pagination.mjs +1 -1
  224. package/pagination/fesm2020/fundamental-ngx-core-pagination.mjs +1 -1
  225. package/pagination/package.json +1 -1
  226. package/panel/package.json +1 -1
  227. package/popover/package.json +1 -1
  228. package/product-switch/package.json +1 -1
  229. package/progress-indicator/package.json +1 -1
  230. package/quick-view/esm2020/quick-view-group-item-label/quick-view-group-item-label.component.mjs +1 -1
  231. package/quick-view/fesm2015/fundamental-ngx-core-quick-view.mjs +1 -1
  232. package/quick-view/fesm2020/fundamental-ngx-core-quick-view.mjs +1 -1
  233. package/quick-view/package.json +1 -1
  234. package/radio/esm2020/radio-button/radio-button.component.mjs +6 -3
  235. package/radio/fesm2015/fundamental-ngx-core-radio.mjs +5 -2
  236. package/radio/fesm2015/fundamental-ngx-core-radio.mjs.map +1 -1
  237. package/radio/fesm2020/fundamental-ngx-core-radio.mjs +5 -2
  238. package/radio/fesm2020/fundamental-ngx-core-radio.mjs.map +1 -1
  239. package/radio/package.json +1 -1
  240. package/radio/radio-button/radio-button.component.d.ts +2 -1
  241. package/rating-indicator/components/rating-indicator.component.d.ts +7 -2
  242. package/rating-indicator/esm2020/components/rating-indicator.component.mjs +12 -4
  243. package/rating-indicator/fesm2015/fundamental-ngx-core-rating-indicator.mjs +11 -3
  244. package/rating-indicator/fesm2015/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
  245. package/rating-indicator/fesm2020/fundamental-ngx-core-rating-indicator.mjs +11 -3
  246. package/rating-indicator/fesm2020/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
  247. package/rating-indicator/package.json +1 -1
  248. package/resizable-card-layout/package.json +1 -1
  249. package/scroll-spy/package.json +1 -1
  250. package/scrollbar/package.json +1 -1
  251. package/segmented-button/package.json +1 -1
  252. package/select/esm2020/select.component.mjs +4 -1
  253. package/select/fesm2015/fundamental-ngx-core-select.mjs +3 -0
  254. package/select/fesm2015/fundamental-ngx-core-select.mjs.map +1 -1
  255. package/select/fesm2020/fundamental-ngx-core-select.mjs +3 -0
  256. package/select/fesm2020/fundamental-ngx-core-select.mjs.map +1 -1
  257. package/select/package.json +1 -1
  258. package/select/select.component.d.ts +3 -3
  259. package/shared/package.json +1 -1
  260. package/shellbar/package.json +1 -1
  261. package/side-navigation/package.json +1 -1
  262. package/slider/esm2020/slider.component.mjs +4 -3
  263. package/slider/fesm2015/fundamental-ngx-core-slider.mjs +3 -2
  264. package/slider/fesm2015/fundamental-ngx-core-slider.mjs.map +1 -1
  265. package/slider/fesm2020/fundamental-ngx-core-slider.mjs +3 -2
  266. package/slider/fesm2020/fundamental-ngx-core-slider.mjs.map +1 -1
  267. package/slider/package.json +1 -1
  268. package/slider/slider.component.d.ts +2 -1
  269. package/split-button/package.json +1 -1
  270. package/splitter/package.json +1 -1
  271. package/status-indicator/package.json +1 -1
  272. package/step-input/esm2020/step-input.component.mjs +11 -8
  273. package/step-input/fesm2015/fundamental-ngx-core-step-input.mjs +10 -8
  274. package/step-input/fesm2015/fundamental-ngx-core-step-input.mjs.map +1 -1
  275. package/step-input/fesm2020/fundamental-ngx-core-step-input.mjs +10 -8
  276. package/step-input/fesm2020/fundamental-ngx-core-step-input.mjs.map +1 -1
  277. package/step-input/package.json +1 -1
  278. package/step-input/step-input.component.d.ts +5 -2
  279. package/switch/esm2020/switch.component.mjs +19 -7
  280. package/switch/fesm2015/fundamental-ngx-core-switch.mjs +18 -6
  281. package/switch/fesm2015/fundamental-ngx-core-switch.mjs.map +1 -1
  282. package/switch/fesm2020/fundamental-ngx-core-switch.mjs +18 -6
  283. package/switch/fesm2020/fundamental-ngx-core-switch.mjs.map +1 -1
  284. package/switch/package.json +1 -1
  285. package/switch/switch.component.d.ts +6 -3
  286. package/table/package.json +1 -1
  287. package/tabs/package.json +1 -1
  288. package/text/package.json +1 -1
  289. package/theming/package.json +1 -1
  290. package/tile/package.json +1 -1
  291. package/time/package.json +1 -1
  292. package/time-picker/esm2020/time-picker.component.mjs +12 -8
  293. package/time-picker/fesm2015/fundamental-ngx-core-time-picker.mjs +11 -7
  294. package/time-picker/fesm2015/fundamental-ngx-core-time-picker.mjs.map +1 -1
  295. package/time-picker/fesm2020/fundamental-ngx-core-time-picker.mjs +11 -7
  296. package/time-picker/fesm2020/fundamental-ngx-core-time-picker.mjs.map +1 -1
  297. package/time-picker/package.json +1 -1
  298. package/time-picker/time-picker.component.d.ts +5 -3
  299. package/timeline/package.json +1 -1
  300. package/title/package.json +1 -1
  301. package/token/package.json +1 -1
  302. package/toolbar/package.json +1 -1
  303. package/tree/package.json +1 -1
  304. package/upload-collection/package.json +1 -1
  305. package/utils/package.json +1 -1
  306. package/vertical-navigation/package.json +1 -1
  307. package/wizard/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/action-bar",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/action-sheet",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/alert",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/avatar",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/avatar-group",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
package/bar/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/bar",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/breadcrumb",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/busy-indicator",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/button",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/calendar",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
package/card/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/card",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fundamental-ngx/core/carousel",
3
- "version": "0.35.0-rc.16",
3
+ "version": "0.35.0-rc.19",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^13.0.0",
6
6
  "@angular/core": "^13.0.0"
@@ -3,9 +3,10 @@ import { ControlValueAccessor } from '@angular/forms';
3
3
  import { FdCheckboxValues } from './fd-checkbox-values.interface';
4
4
  import { ListItemInterface, ContentDensityService } from '@fundamental-ngx/core/utils';
5
5
  import { FormStates, Nullable } from '@fundamental-ngx/core/shared';
6
+ import { FormItemControl } from '@fundamental-ngx/core/form';
6
7
  import * as i0 from "@angular/core";
7
8
  export declare type FdCheckboxTypes = 'checked' | 'unchecked' | 'indeterminate' | 'force-checked';
8
- export declare class CheckboxComponent implements ControlValueAccessor, OnInit, OnDestroy {
9
+ export declare class CheckboxComponent implements ControlValueAccessor, OnInit, OnDestroy, FormItemControl {
9
10
  elementRef: ElementRef<Element>;
10
11
  tabIndexValue: number;
11
12
  private _changeDetectorRef;
@@ -3,6 +3,7 @@ import { NG_VALUE_ACCESSOR } from '@angular/forms';
3
3
  import { LIST_ITEM_COMPONENT, ContentDensityService } from '@fundamental-ngx/core/utils';
4
4
  import equal from 'fast-deep-equal';
5
5
  import { Subscription } from 'rxjs';
6
+ import { registerFormItemControl } from '@fundamental-ngx/core/form';
6
7
  import { FD_CHECKBOX_VALUES_DEFAULT } from './fd-checkbox-values.interface';
7
8
  import * as i0 from "@angular/core";
8
9
  import * as i1 from "@fundamental-ngx/core/utils";
@@ -184,7 +185,8 @@ CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
184
185
  provide: NG_VALUE_ACCESSOR,
185
186
  useExisting: forwardRef(() => CheckboxComponent),
186
187
  multi: true
187
- }
188
+ },
189
+ registerFormItemControl(CheckboxComponent)
188
190
  ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }, { propertyName: "labelElement", first: true, predicate: ["labelElement"], descendants: true }], ngImport: i0, template: "<input\n #inputElement\n type=\"checkbox\"\n class=\"fd-checkbox\"\n [id]=\"inputId\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [indeterminate]=\"isIndeterminate\"\n [checked]=\"isChecked\"\n [attr.tabindex]=\"tabIndexValue\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-required]=\"required\"\n [class.fd-checkbox--compact]=\"compact\"\n [class]=\"state ? 'is-' + state : ''\"\n (click)=\"_onInputClick($event)\"\n (blur)=\"_onBlur()\"\n (focus)=\"_onFocus()\"\n/>\n\n<label\n class=\"fd-checkbox__label\"\n #labelElement\n [for]=\"inputId\"\n [class]=\"labelClass\"\n [attr.title]=\"title\"\n [class.fd-checkbox__label--compact]=\"compact\"\n [class.fd-checkbox__label--required]=\"required\"\n (click)=\"_onLabelClick($event)\"\n>\n <div class=\"fd-checkbox__label-container\">\n <ng-container *ngIf=\"label\">\n <span class=\"fd-checkbox__text\">\n {{ label }}\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!label\">\n <span class=\"fd-checkbox__text\">\n <ng-content></ng-content>\n </span>\n </ng-container>\n </div>\n</label>\n", styles: ["/*!\n * Fundamental Library Styles v0.24.0-rc.128\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-checkbox\n*/.fd-checkbox{position:absolute;opacity:.0001}.fd-checkbox{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--sapField_TextColor);background-color:var(--sapField_Background);border-style:solid;border-width:var(--sapField_BorderWidth);border-color:var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);outline:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.fd-checkbox:before,.fd-checkbox:after{box-sizing:inherit;font-size:inherit}.fd-checkbox::placeholder{font-style:italic;color:var(--sapField_PlaceholderTextColor)}.fd-checkbox::selection{color:var(--sapContent_ContrastTextColor);background-color:var(--sapSelectedColor)}.fd-checkbox.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-checkbox.is-success:hover,.fd-checkbox.is-success.is-hover{background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-checkbox.is-success:focus,.fd-checkbox.is-success.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color)}.fd-checkbox.is-success:focus:hover,.fd-checkbox.is-success:focus.is-hover,.fd-checkbox.is-success.is-focus:hover,.fd-checkbox.is-success.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-checkbox.is-error:hover,.fd-checkbox.is-error.is-hover{background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-checkbox.is-error:focus,.fd-checkbox.is-error.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color)}.fd-checkbox.is-error:focus:hover,.fd-checkbox.is-error:focus.is-hover,.fd-checkbox.is-error.is-focus:hover,.fd-checkbox.is-error.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-checkbox.is-warning:hover,.fd-checkbox.is-warning.is-hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-warning:focus,.fd-checkbox.is-warning.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color)}.fd-checkbox.is-warning:focus:hover,.fd-checkbox.is-warning:focus.is-hover,.fd-checkbox.is-warning.is-focus:hover,.fd-checkbox.is-warning.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-checkbox.is-alert:hover,.fd-checkbox.is-alert.is-hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-alert:focus,.fd-checkbox.is-alert.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color)}.fd-checkbox.is-alert:focus:hover,.fd-checkbox.is-alert:focus.is-hover,.fd-checkbox.is-alert.is-focus:hover,.fd-checkbox.is-alert.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-checkbox.is-information:hover,.fd-checkbox.is-information.is-hover{background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-checkbox.is-information:focus,.fd-checkbox.is-information.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color)}.fd-checkbox.is-information:focus:hover,.fd-checkbox.is-information:focus.is-hover,.fd-checkbox.is-information.is-focus:hover,.fd-checkbox.is-information.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-error,.fd-checkbox.is-warning,.fd-checkbox.is-alert{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-checkbox.is-error::placeholder,.fd-checkbox.is-warning::placeholder,.fd-checkbox.is-alert::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-checkbox.is-error:focus,.fd-checkbox.is-error.is-focus,.fd-checkbox.is-warning:focus,.fd-checkbox.is-warning.is-focus,.fd-checkbox.is-alert:focus,.fd-checkbox.is-alert.is-focus,.fd-checkbox.is-information:focus,.fd-checkbox.is-information.is-focus{z-index:5;outline-offset:var(--fdInput_Outline_Offset_States)}.fd-checkbox.is-error::placeholder{color:var(--sapField_TextColor)}.fd-checkbox[aria-disabled=true],.fd-checkbox.is-disabled,.fd-checkbox:disabled{pointer-events:none;opacity:var(--sapContent_DisabledOpacity)}.fd-checkbox[aria-disabled=true]::placeholder,.fd-checkbox.is-disabled::placeholder,.fd-checkbox:disabled::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-checkbox[aria-readonly=true],.fd-checkbox.is-readonly,.fd-checkbox[readonly]{border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);pointer-events:none}.fd-checkbox[aria-readonly=true]::placeholder,.fd-checkbox.is-readonly::placeholder,.fd-checkbox[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-checkbox[aria-readonly=true]:hover,.fd-checkbox[aria-readonly=true].is-hover,.fd-checkbox.is-readonly:hover,.fd-checkbox.is-readonly.is-hover,.fd-checkbox[readonly]:hover,.fd-checkbox[readonly].is-hover{box-shadow:none}.fd-checkbox[aria-readonly=true]:focus,.fd-checkbox[aria-readonly=true].is-focus,.fd-checkbox.is-readonly:focus,.fd-checkbox.is-readonly.is-focus,.fd-checkbox[readonly]:focus,.fd-checkbox[readonly].is-focus{z-index:5;background:var(--sapField_Focus_Background);border-radius:var(--sapField_BorderCornerRadius)}.fd-checkbox,.fd-checkbox.is-warning,.fd-checkbox.is-error,.fd-checkbox.is-success,.fd-checkbox.is-information{border-style:initial}.fd-checkbox__label{line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:-moz-fit-content;width:fit-content;position:relative;max-width:100%;font-size:var(--sapFontSize);color:var(--sapContent_LabelColor);margin-right:.5rem;cursor:text;align-self:flex-start;cursor:pointer;line-height:1rem;padding:var(--fdCheckbox_Padding);display:flex;align-items:center}.fd-checkbox__label:before,.fd-checkbox__label:after{box-sizing:inherit;font-size:inherit}[dir=rtl] .fd-checkbox__label,.fd-checkbox__label[dir=rtl]{margin-left:.5rem;margin-right:0}.fd-checkbox__label:before{content:\"\";height:var(--fdCheckbox_Dimensions);width:var(--fdCheckbox_Dimensions);min-width:var(--fdCheckbox_Dimensions);display:inline-flex;justify-content:center;align-items:center;font-family:SAP-icons;background-color:var(--fdCheckbox_Background_Color);color:var(--fdCheckbox_Selected_Color);border:var(--fdCheckbox_Border);border-radius:var(--sapField_BorderCornerRadius)}.fd-checkbox__label:after{padding-left:.125rem;position:relative}.fd-checkbox__label:empty,.fd-checkbox__label.is-empty{margin:0}[dir=rtl] .fd-checkbox__label:after,.fd-checkbox__label[dir=rtl]:after{padding-left:0;padding-right:.125rem}.fd-checkbox__label:hover:before,.fd-checkbox__label.is-hover:before{background-color:var(--fdCheckbox_Hover_Background);border-color:var(--fdCheckbox_Hover_Border_Color);box-shadow:var(--fdCheckbox_Hover_Shadow)}.fd-checkbox__label:focus{outline:none}.fd-checkbox__label--required .fd-checkbox__text,.fd-checkbox__label[aria-required=true] .fd-checkbox__text{padding-right:.5rem}[dir=rtl] .fd-checkbox__label--required .fd-checkbox__text,.fd-checkbox__label--required .fd-checkbox__text[dir=rtl],[dir=rtl] .fd-checkbox__label[aria-required=true] .fd-checkbox__text,.fd-checkbox__label[aria-required=true] .fd-checkbox__text[dir=rtl]{padding-right:0;padding-left:.5rem}.fd-checkbox__label--required .fd-checkbox__text:after,.fd-checkbox__label[aria-required=true] .fd-checkbox__text:after{content:\"*\";font-size:var(--sapFontSize);font-weight:700;color:var(--sapField_RequiredColor);position:absolute;padding-left:.125rem}[dir=rtl] .fd-checkbox__label--required .fd-checkbox__text:after,.fd-checkbox__label--required .fd-checkbox__text[dir=rtl]:after,[dir=rtl] .fd-checkbox__label[aria-required=true] .fd-checkbox__text:after,.fd-checkbox__label[aria-required=true] .fd-checkbox__text[dir=rtl]:after{padding-left:0;padding-right:.125rem}.fd-checkbox__label-container{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;align-items:center;width:100%;height:1rem;pointer-events:none}.fd-checkbox__label-container:before,.fd-checkbox__label-container:after{box-sizing:inherit;font-size:inherit}.fd-checkbox__text{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:var(--fdCheckbox_Padding);margin-right:0}.fd-checkbox__text:before,.fd-checkbox__text:after{box-sizing:inherit;font-size:inherit}[dir=rtl] .fd-checkbox__text,.fd-checkbox__text[dir=rtl]{margin-right:var(--fdCheckbox_Padding);margin-left:0}.fd-checkbox:checked+.fd-checkbox__label:before{content:\"\\e05b\"}.fd-checkbox:indeterminate+.fd-checkbox__label:after{content:\"\";width:var(--fdCheckbox_Tristate_Size);height:var(--fdCheckbox_Tristate_Size);background-color:var(--fdCheckbox_Selected_Color);position:absolute;margin-left:var(--fdCheckbox_Tristate_Offset)}.fd-checkbox:indeterminate+.fd-checkbox__label--compact:after{--fdCheckbox_Tristate_Size: var(--fdCheckbox_Tristate_Compact_Size);--fdCheckbox_Tristate_Offset: var(--fdCheckbox_Tristate_Compact_Offset)}[dir=rtl] .fd-checkbox:indeterminate+.fd-checkbox__label:after,.fd-checkbox[dir=rtl]:indeterminate+.fd-checkbox__label:after{margin-left:0;margin-right:var(--fdCheckbox_Tristate_Offset)}.fd-checkbox.is-warning+.fd-checkbox__label,.fd-checkbox.is-alert+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_WarningBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_WarningBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_WarningColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Warning_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_WarningColor);--fdCheckbox_Selected_Color: var(--sapField_TextColor)}.fd-checkbox.is-error+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_InvalidBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_InvalidBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_InvalidColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Error_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_InvalidColor);--fdCheckbox_Selected_Color: var(--sapField_InvalidColor)}.fd-checkbox.is-success+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_SuccessBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_SuccessBorderWidth) solid var(--sapField_SuccessColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Success_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_SuccessColor);--fdCheckbox_Selected_Color: var(--sapField_SuccessColor)}.fd-checkbox.is-information+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_InformationBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_InformationBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_InformationColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Information_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_InformationColor);--fdCheckbox_Selected_Color: var(--sapField_InformationColor)}.fd-checkbox[readonly]+.fd-checkbox__label,.fd-checkbox.is-readonly+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_ReadOnly_Background);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--fdCheckbox_Readonly_Border_Width) var(--fdCheckbox_Readonly_Border_Type) var(--sapField_ReadOnly_BorderColor);--fdCheckbox_Hover_Shadow: none;--fdCheckbox_Hover_Border_Color: var(--sapField_ReadOnly_BorderColor);--fdCheckbox_Selected_Color: var(--sapContent_NonInteractiveIconColor)}.fd-checkbox:focus,.fd-checkbox.is-focus{z-index:5}.fd-checkbox:focus+.fd-checkbox__label,.fd-checkbox.is-focus+.fd-checkbox__label{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);outline-offset:calc(var(--fdCheckbox_Focus_Outline_Offset) - var(--fdCheckbox_Padding));border-radius:var(--fdCheckbox_Outline_Border_Radius)}.fd-checkbox[aria-disabled=true],.fd-checkbox.is-disabled,.fd-checkbox:disabled{opacity:.0001}.fd-checkbox[aria-disabled=true]+.fd-checkbox__label,.fd-checkbox.is-disabled+.fd-checkbox__label,.fd-checkbox:disabled+.fd-checkbox__label{pointer-events:none;opacity:.4}.fd-checkbox--compact+.fd-checkbox__label{--fdCheckbox_Dimensions: var(--fdCheckbox_Compact_Dimensions);--fdCheckbox_Padding: var(--fdCheckbox_Compact_Padding)}.fd-checkbox--compact:focus,.fd-checkbox--compact.is-focus{z-index:5}.fd-checkbox--compact:focus+.fd-checkbox__label,.fd-checkbox--compact.is-focus+.fd-checkbox__label{--fdCheckbox_Outline_Border_Radius: var(--fdCheckbox_Compact_Outline_Border_Radius)}fd-checkbox .fd-checkbox__text:empty{margin:0}fd-checkbox .fd-checkbox__label{-webkit-user-select:none;user-select:none}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
189
191
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: CheckboxComponent, decorators: [{
190
192
  type: Component,
@@ -193,7 +195,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
193
195
  provide: NG_VALUE_ACCESSOR,
194
196
  useExisting: forwardRef(() => CheckboxComponent),
195
197
  multi: true
196
- }
198
+ },
199
+ registerFormItemControl(CheckboxComponent)
197
200
  ], host: { '[attr.tabindex]': '-1' }, template: "<input\n #inputElement\n type=\"checkbox\"\n class=\"fd-checkbox\"\n [id]=\"inputId\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [indeterminate]=\"isIndeterminate\"\n [checked]=\"isChecked\"\n [attr.tabindex]=\"tabIndexValue\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-required]=\"required\"\n [class.fd-checkbox--compact]=\"compact\"\n [class]=\"state ? 'is-' + state : ''\"\n (click)=\"_onInputClick($event)\"\n (blur)=\"_onBlur()\"\n (focus)=\"_onFocus()\"\n/>\n\n<label\n class=\"fd-checkbox__label\"\n #labelElement\n [for]=\"inputId\"\n [class]=\"labelClass\"\n [attr.title]=\"title\"\n [class.fd-checkbox__label--compact]=\"compact\"\n [class.fd-checkbox__label--required]=\"required\"\n (click)=\"_onLabelClick($event)\"\n>\n <div class=\"fd-checkbox__label-container\">\n <ng-container *ngIf=\"label\">\n <span class=\"fd-checkbox__text\">\n {{ label }}\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!label\">\n <span class=\"fd-checkbox__text\">\n <ng-content></ng-content>\n </span>\n </ng-container>\n </div>\n</label>\n", styles: ["/*!\n * Fundamental Library Styles v0.24.0-rc.128\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-checkbox\n*/.fd-checkbox{position:absolute;opacity:.0001}.fd-checkbox{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--sapField_TextColor);background-color:var(--sapField_Background);border-style:solid;border-width:var(--sapField_BorderWidth);border-color:var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);outline:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.fd-checkbox:before,.fd-checkbox:after{box-sizing:inherit;font-size:inherit}.fd-checkbox::placeholder{font-style:italic;color:var(--sapField_PlaceholderTextColor)}.fd-checkbox::selection{color:var(--sapContent_ContrastTextColor);background-color:var(--sapSelectedColor)}.fd-checkbox.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-checkbox.is-success:hover,.fd-checkbox.is-success.is-hover{background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-checkbox.is-success:focus,.fd-checkbox.is-success.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color)}.fd-checkbox.is-success:focus:hover,.fd-checkbox.is-success:focus.is-hover,.fd-checkbox.is-success.is-focus:hover,.fd-checkbox.is-success.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-checkbox.is-error:hover,.fd-checkbox.is-error.is-hover{background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-checkbox.is-error:focus,.fd-checkbox.is-error.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color)}.fd-checkbox.is-error:focus:hover,.fd-checkbox.is-error:focus.is-hover,.fd-checkbox.is-error.is-focus:hover,.fd-checkbox.is-error.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-checkbox.is-warning:hover,.fd-checkbox.is-warning.is-hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-warning:focus,.fd-checkbox.is-warning.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color)}.fd-checkbox.is-warning:focus:hover,.fd-checkbox.is-warning:focus.is-hover,.fd-checkbox.is-warning.is-focus:hover,.fd-checkbox.is-warning.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-checkbox.is-alert:hover,.fd-checkbox.is-alert.is-hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-alert:focus,.fd-checkbox.is-alert.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color)}.fd-checkbox.is-alert:focus:hover,.fd-checkbox.is-alert:focus.is-hover,.fd-checkbox.is-alert.is-focus:hover,.fd-checkbox.is-alert.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-checkbox.is-information:hover,.fd-checkbox.is-information.is-hover{background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-checkbox.is-information:focus,.fd-checkbox.is-information.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color)}.fd-checkbox.is-information:focus:hover,.fd-checkbox.is-information:focus.is-hover,.fd-checkbox.is-information.is-focus:hover,.fd-checkbox.is-information.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-error,.fd-checkbox.is-warning,.fd-checkbox.is-alert{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-checkbox.is-error::placeholder,.fd-checkbox.is-warning::placeholder,.fd-checkbox.is-alert::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-checkbox.is-error:focus,.fd-checkbox.is-error.is-focus,.fd-checkbox.is-warning:focus,.fd-checkbox.is-warning.is-focus,.fd-checkbox.is-alert:focus,.fd-checkbox.is-alert.is-focus,.fd-checkbox.is-information:focus,.fd-checkbox.is-information.is-focus{z-index:5;outline-offset:var(--fdInput_Outline_Offset_States)}.fd-checkbox.is-error::placeholder{color:var(--sapField_TextColor)}.fd-checkbox[aria-disabled=true],.fd-checkbox.is-disabled,.fd-checkbox:disabled{pointer-events:none;opacity:var(--sapContent_DisabledOpacity)}.fd-checkbox[aria-disabled=true]::placeholder,.fd-checkbox.is-disabled::placeholder,.fd-checkbox:disabled::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-checkbox[aria-readonly=true],.fd-checkbox.is-readonly,.fd-checkbox[readonly]{border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);pointer-events:none}.fd-checkbox[aria-readonly=true]::placeholder,.fd-checkbox.is-readonly::placeholder,.fd-checkbox[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-checkbox[aria-readonly=true]:hover,.fd-checkbox[aria-readonly=true].is-hover,.fd-checkbox.is-readonly:hover,.fd-checkbox.is-readonly.is-hover,.fd-checkbox[readonly]:hover,.fd-checkbox[readonly].is-hover{box-shadow:none}.fd-checkbox[aria-readonly=true]:focus,.fd-checkbox[aria-readonly=true].is-focus,.fd-checkbox.is-readonly:focus,.fd-checkbox.is-readonly.is-focus,.fd-checkbox[readonly]:focus,.fd-checkbox[readonly].is-focus{z-index:5;background:var(--sapField_Focus_Background);border-radius:var(--sapField_BorderCornerRadius)}.fd-checkbox,.fd-checkbox.is-warning,.fd-checkbox.is-error,.fd-checkbox.is-success,.fd-checkbox.is-information{border-style:initial}.fd-checkbox__label{line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:-moz-fit-content;width:fit-content;position:relative;max-width:100%;font-size:var(--sapFontSize);color:var(--sapContent_LabelColor);margin-right:.5rem;cursor:text;align-self:flex-start;cursor:pointer;line-height:1rem;padding:var(--fdCheckbox_Padding);display:flex;align-items:center}.fd-checkbox__label:before,.fd-checkbox__label:after{box-sizing:inherit;font-size:inherit}[dir=rtl] .fd-checkbox__label,.fd-checkbox__label[dir=rtl]{margin-left:.5rem;margin-right:0}.fd-checkbox__label:before{content:\"\";height:var(--fdCheckbox_Dimensions);width:var(--fdCheckbox_Dimensions);min-width:var(--fdCheckbox_Dimensions);display:inline-flex;justify-content:center;align-items:center;font-family:SAP-icons;background-color:var(--fdCheckbox_Background_Color);color:var(--fdCheckbox_Selected_Color);border:var(--fdCheckbox_Border);border-radius:var(--sapField_BorderCornerRadius)}.fd-checkbox__label:after{padding-left:.125rem;position:relative}.fd-checkbox__label:empty,.fd-checkbox__label.is-empty{margin:0}[dir=rtl] .fd-checkbox__label:after,.fd-checkbox__label[dir=rtl]:after{padding-left:0;padding-right:.125rem}.fd-checkbox__label:hover:before,.fd-checkbox__label.is-hover:before{background-color:var(--fdCheckbox_Hover_Background);border-color:var(--fdCheckbox_Hover_Border_Color);box-shadow:var(--fdCheckbox_Hover_Shadow)}.fd-checkbox__label:focus{outline:none}.fd-checkbox__label--required .fd-checkbox__text,.fd-checkbox__label[aria-required=true] .fd-checkbox__text{padding-right:.5rem}[dir=rtl] .fd-checkbox__label--required .fd-checkbox__text,.fd-checkbox__label--required .fd-checkbox__text[dir=rtl],[dir=rtl] .fd-checkbox__label[aria-required=true] .fd-checkbox__text,.fd-checkbox__label[aria-required=true] .fd-checkbox__text[dir=rtl]{padding-right:0;padding-left:.5rem}.fd-checkbox__label--required .fd-checkbox__text:after,.fd-checkbox__label[aria-required=true] .fd-checkbox__text:after{content:\"*\";font-size:var(--sapFontSize);font-weight:700;color:var(--sapField_RequiredColor);position:absolute;padding-left:.125rem}[dir=rtl] .fd-checkbox__label--required .fd-checkbox__text:after,.fd-checkbox__label--required .fd-checkbox__text[dir=rtl]:after,[dir=rtl] .fd-checkbox__label[aria-required=true] .fd-checkbox__text:after,.fd-checkbox__label[aria-required=true] .fd-checkbox__text[dir=rtl]:after{padding-left:0;padding-right:.125rem}.fd-checkbox__label-container{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;align-items:center;width:100%;height:1rem;pointer-events:none}.fd-checkbox__label-container:before,.fd-checkbox__label-container:after{box-sizing:inherit;font-size:inherit}.fd-checkbox__text{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:var(--fdCheckbox_Padding);margin-right:0}.fd-checkbox__text:before,.fd-checkbox__text:after{box-sizing:inherit;font-size:inherit}[dir=rtl] .fd-checkbox__text,.fd-checkbox__text[dir=rtl]{margin-right:var(--fdCheckbox_Padding);margin-left:0}.fd-checkbox:checked+.fd-checkbox__label:before{content:\"\\e05b\"}.fd-checkbox:indeterminate+.fd-checkbox__label:after{content:\"\";width:var(--fdCheckbox_Tristate_Size);height:var(--fdCheckbox_Tristate_Size);background-color:var(--fdCheckbox_Selected_Color);position:absolute;margin-left:var(--fdCheckbox_Tristate_Offset)}.fd-checkbox:indeterminate+.fd-checkbox__label--compact:after{--fdCheckbox_Tristate_Size: var(--fdCheckbox_Tristate_Compact_Size);--fdCheckbox_Tristate_Offset: var(--fdCheckbox_Tristate_Compact_Offset)}[dir=rtl] .fd-checkbox:indeterminate+.fd-checkbox__label:after,.fd-checkbox[dir=rtl]:indeterminate+.fd-checkbox__label:after{margin-left:0;margin-right:var(--fdCheckbox_Tristate_Offset)}.fd-checkbox.is-warning+.fd-checkbox__label,.fd-checkbox.is-alert+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_WarningBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_WarningBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_WarningColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Warning_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_WarningColor);--fdCheckbox_Selected_Color: var(--sapField_TextColor)}.fd-checkbox.is-error+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_InvalidBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_InvalidBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_InvalidColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Error_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_InvalidColor);--fdCheckbox_Selected_Color: var(--sapField_InvalidColor)}.fd-checkbox.is-success+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_SuccessBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_SuccessBorderWidth) solid var(--sapField_SuccessColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Success_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_SuccessColor);--fdCheckbox_Selected_Color: var(--sapField_SuccessColor)}.fd-checkbox.is-information+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_InformationBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_InformationBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_InformationColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Information_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_InformationColor);--fdCheckbox_Selected_Color: var(--sapField_InformationColor)}.fd-checkbox[readonly]+.fd-checkbox__label,.fd-checkbox.is-readonly+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_ReadOnly_Background);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--fdCheckbox_Readonly_Border_Width) var(--fdCheckbox_Readonly_Border_Type) var(--sapField_ReadOnly_BorderColor);--fdCheckbox_Hover_Shadow: none;--fdCheckbox_Hover_Border_Color: var(--sapField_ReadOnly_BorderColor);--fdCheckbox_Selected_Color: var(--sapContent_NonInteractiveIconColor)}.fd-checkbox:focus,.fd-checkbox.is-focus{z-index:5}.fd-checkbox:focus+.fd-checkbox__label,.fd-checkbox.is-focus+.fd-checkbox__label{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);outline-offset:calc(var(--fdCheckbox_Focus_Outline_Offset) - var(--fdCheckbox_Padding));border-radius:var(--fdCheckbox_Outline_Border_Radius)}.fd-checkbox[aria-disabled=true],.fd-checkbox.is-disabled,.fd-checkbox:disabled{opacity:.0001}.fd-checkbox[aria-disabled=true]+.fd-checkbox__label,.fd-checkbox.is-disabled+.fd-checkbox__label,.fd-checkbox:disabled+.fd-checkbox__label{pointer-events:none;opacity:.4}.fd-checkbox--compact+.fd-checkbox__label{--fdCheckbox_Dimensions: var(--fdCheckbox_Compact_Dimensions);--fdCheckbox_Padding: var(--fdCheckbox_Compact_Padding)}.fd-checkbox--compact:focus,.fd-checkbox--compact.is-focus{z-index:5}.fd-checkbox--compact:focus+.fd-checkbox__label,.fd-checkbox--compact.is-focus+.fd-checkbox__label{--fdCheckbox_Outline_Border_Radius: var(--fdCheckbox_Compact_Outline_Border_Radius)}fd-checkbox .fd-checkbox__text:empty{margin:0}fd-checkbox .fd-checkbox__label{-webkit-user-select:none;user-select:none}\n"] }]
198
201
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
199
202
  type: Attribute,
@@ -252,4 +255,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
252
255
  }], focusChange: [{
253
256
  type: Output
254
257
  }] } });
255
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY2hlY2tib3gvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY2hlY2tib3gvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQXFCLHFCQUFxQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUcsT0FBTyxLQUFLLE1BQU0saUJBQWlCLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7OztBQUU1RSxJQUFJLGdCQUFnQixHQUFHLENBQUMsQ0FBQztBQW1CekIsTUFBTSxPQUFPLGlCQUFpQjtJQXVIMUIsY0FBYztJQUNkLFlBQ1csVUFBK0IsRUFDSCxnQkFBd0IsQ0FBQyxFQUNwRCxrQkFBcUMsRUFDckMsUUFBbUIsRUFDUCxzQkFBNkMsRUFDaEIsa0JBQXFDO1FBTC9FLGVBQVUsR0FBVixVQUFVLENBQXFCO1FBQ0gsa0JBQWEsR0FBYixhQUFhLENBQVk7UUFDcEQsdUJBQWtCLEdBQWxCLGtCQUFrQixD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QUNSLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsbUJBQW1COzRDQTNIM0MsWUFBWTtzQkFEWCxTQUFTO3VCQUFDLGNBQWM7Z0JBS3pCLFlBQVk7c0JBRFgsU0FBUzt1QkFBQyxjQUFjO2dCQUt6QixTQUFTO3NCQURSLEtBQUs7Z0JBS0YsS0FBSztzQkFEUixLQUFLO2dCQVVOLGNBQWM7c0JBRGIsS0FBSztnQkFLTixlQUFlO3NCQURkLEtBQUs7Z0JBS04sS0FBSztzQkFESixLQUFLO2dCQUtOLE9BQU87c0JBRE4sS0FBSztnQkFLTixLQUFLO3NCQURKLEtBQUs7Z0JBS04sSUFBSTtzQkFESCxLQUFLO2dCQUtOLEtBQUs7c0JBREosS0FBSztnQkFLTixRQUFRO3NCQURQLEtBQUs7Z0JBS04sT0FBTztzQkFETixLQUFLO2dCQUtOLFFBQVE7c0JBRFAsS0FBSztnQkFLTixrQkFBa0I7c0JBRGpCLEtBQUs7Z0JBS04sVUFBVTtzQkFEVCxLQUFLO2dCQUtOLFFBQVE7c0JBRFAsS0FBSztnQkFRRixNQUFNO3NCQURULEtBQUs7Z0JBVUcsUUFBUTtzQkFEaEIsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBS3BCLE9BQU87c0JBRGYsV0FBVzt1QkFBQyxlQUFlO2dCQUlsQixXQUFXO3NCQUFwQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBdHRyaWJ1dGUsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgQ29tcG9uZW50LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFJlbmRlcmVyMixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGZENoZWNrYm94VmFsdWVzIH0gZnJvbSAnLi9mZC1jaGVja2JveC12YWx1ZXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IExJU1RfSVRFTV9DT01QT05FTlQsIExpc3RJdGVtSW50ZXJmYWNlLCBDb250ZW50RGVuc2l0eVNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IGVxdWFsIGZyb20gJ2Zhc3QtZGVlcC1lcXVhbCc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEZvcm1TdGF0ZXMsIE51bGxhYmxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3NoYXJlZCc7XG5pbXBvcnQgeyBGRF9DSEVDS0JPWF9WQUxVRVNfREVGQVVMVCB9IGZyb20gJy4vZmQtY2hlY2tib3gtdmFsdWVzLmludGVyZmFjZSc7XG5cbmxldCBjaGVja2JveFVuaXF1ZUlkID0gMDtcblxuZXhwb3J0IHR5cGUgRmRDaGVja2JveFR5cGVzID0gJ2NoZWNrZWQnIHwgJ3VuY2hlY2tlZCcgfCAnaW5kZXRlcm1pbmF0ZScgfCAnZm9yY2UtY2hlY2tlZCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtY2hlY2tib3gnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2hlY2tib3guY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENoZWNrYm94Q29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGhvc3Q6IHsgJ1thdHRyLnRhYmluZGV4XSc6ICctMScgfVxufSlcbmV4cG9ydCBjbGFzcyBDaGVja2JveENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKCdpbnB1dEVsZW1lbnQnKVxuICAgIGlucHV0RWxlbWVudDogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZCgnbGFiZWxFbGVtZW50JylcbiAgICBsYWJlbEVsZW1lbnQ6IEVsZW1lbnRSZWY7XG5cbiAgICAvKiogU2V0cyB0aGUgYGFyaWEtbGFiZWxgIGF0dHJpYnV0ZSB0byB0aGUgZWxlbWVudC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGFyaWFMYWJlbDogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKiBDdXJyZW50IHNlbGVjdGlvbiBzdGF0ZSBvZiB0aGUgY2hlY2tib3ggY29tcG9uZW50ICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdmFsdWUodmFsdWU6IGFueSkge1xuICAgICAgICB0aGlzLndyaXRlVmFsdWUodmFsdWUpO1xuICAgIH1cbiAgICBnZXQgdmFsdWUoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2hlY2tib3hWYWx1ZTtcbiAgICB9XG5cbiAgICAvKiogU2V0cyB0aGUgYGFyaWEtbGFiZWxsZWRieWAgYXR0cmlidXRlIHRvIHRoZSBlbGVtZW50LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXJpYUxhYmVsbGVkQnk6IE51bGxhYmxlPHN0cmluZz47XG5cbiAgICAvKiogU2V0cyB0aGUgYGFyaWEtZGVzY3JpYmVkYnlgIGF0dHJpYnV0ZSB0byB0aGUgZWxlbWVudC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGFyaWFEZXNjcmliZWRCeTogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKiBzZXRzIGNoZWNrYm94IHRvb2x0aXAgKi9cbiAgICBASW5wdXQoKVxuICAgIHRpdGxlOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqIFNldHMgW2lkXSBwcm9wZXJ0eSBvZiBpbnB1dCwgYmluZHMgaW5wdXQgd2l0aCBpbnB1dCBsYWJlbCB1c2luZyBbZm9yXSBwcm9wZXJ0eS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGlucHV0SWQgPSBgZmQtY2hlY2tib3gtJHtjaGVja2JveFVuaXF1ZUlkKyt9YDtcblxuICAgIC8qKiBTdGF0ZSBvZiBjb250cm9sLCBjaGFuZ2VzIHZpc3VhbCBhcHBlYXJhbmNlIG9mIGNvbnRyb2wuICovXG4gICAgQElucHV0KClcbiAgICBzdGF0ZT86IEZvcm1TdGF0ZXM7XG5cbiAgICAvKiogU2V0cyBbbmFtZV0gcHJvcGVydHkgb2YgaW5wdXQuICovXG4gICAgQElucHV0KClcbiAgICBuYW1lOiBzdHJpbmc7XG5cbiAgICAvKiogU2V0cyB0ZXh0IG9mIGNvbnRyb2wgbGFiZWwuICovXG4gICAgQElucHV0KClcbiAgICBsYWJlbDogc3RyaW5nO1xuXG4gICAgLyoqIEFsbG93cyB0byBkaXNhYmxlL2VuYWJsZSBjb250cm9sLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzYWJsZWQ6IGJvb2xlYW47XG5cbiAgICAvKiogQWxsb3dzIHRvIG1pbmltaXplIGNvbnRyb2wgdG8gY29tcGFjdCBtb2RlLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgY29tcGFjdD86IGJvb2xlYW47XG5cbiAgICAvKiogRW5hYmxlcyBjb250cm9scyB0aGlyZCBzdGF0ZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIHRyaXN0YXRlID0gZmFsc2U7XG5cbiAgICAvKiogQWxsb3dzIHRvIHByZXZlbnQgdXNlciBmcm9tIG1hbnVhbGx5IHNlbGVjdGluZyBjb250cm9scyB0aGlyZCBzdGF0ZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIHRyaXN0YXRlU2VsZWN0YWJsZSA9IGZhbHNlO1xuXG4gICAgLyoqIEFzc2lnbnMgZ2l2ZW4gY2xhc3MgdG8gY2hlY2tib3ggbGFiZWwgZWxlbWVudCAqL1xuICAgIEBJbnB1dCgpXG4gICAgbGFiZWxDbGFzczogc3RyaW5nO1xuXG4gICAgLyoqIElmIGl0IGlzIG1hbmRhdG9yeSBmaWVsZCAqL1xuICAgIEBJbnB1dCgpXG4gICAgcmVxdWlyZWQgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9ucyA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIC8qKiBTZXRzIHZhbHVlcyByZXR1cm5lZCBieSBjb250cm9sLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IHZhbHVlcygpOiBGZENoZWNrYm94VmFsdWVzIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlcztcbiAgICB9XG4gICAgc2V0IHZhbHVlcyhjaGVja2JveFZhbHVlczogRmRDaGVja2JveFZhbHVlcykge1xuICAgICAgICB0aGlzLl92YWx1ZXMgPSB7IC4uLkZEX0NIRUNLQk9YX1ZBTFVFU19ERUZBVUxULCAuLi4oY2hlY2tib3hWYWx1ZXMgPz8ge30pIH07XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLnBvc2l0aW9uJylcbiAgICByZWFkb25seSBwb3NpdGlvbiA9ICdyZWxhdGl2ZSc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnc3R5bGUub3V0bGluZScpXG4gICAgcmVhZG9ubHkgb3V0bGluZSA9ICdub25lJztcblxuICAgIC8qKiBFbWl0cyBldmVudCBvbiBmb2N1cyBjaGFuZ2UgKi9cbiAgICBAT3V0cHV0KCkgZm9jdXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxib29sZWFuPiA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oKTtcblxuICAgIC8qKiBAaGlkZGVuIHZhbHVlcyByZXR1cm5lZCBieSBjb250cm9sLiAqL1xuICAgIHByaXZhdGUgX3ZhbHVlczogRmRDaGVja2JveFZhbHVlcyA9IHsgLi4uRkRfQ0hFQ0tCT1hfVkFMVUVTX0RFRkFVTFQgfTtcbiAgICAvKiogU3RvcmVzIGN1cnJlbnQgY2hlY2tib3ggdmFsdWUuICovXG4gICAgcHVibGljIGNoZWNrYm94VmFsdWU6IGFueTtcbiAgICAvKiogU3RvcmVzIGN1cnJlbnQgY2hlY2tib3ggc3RhdGUuICovXG4gICAgcHVibGljIGNoZWNrYm94U3RhdGU6IEZkQ2hlY2tib3hUeXBlcztcblxuICAgIC8qKiBAaGlkZGVuIFJlZmVyZW5jZSB0byBjYWxsYmFjayBwcm92aWRlZCBieSBGb3JtQ29udHJvbC4qL1xuICAgIHB1YmxpYyBvblRvdWNoZWQgPSAoKTogdm9pZCA9PiB7fTtcbiAgICAvKiogQGhpZGRlbiBSZWZlcmVuY2UgdG8gY2FsbGJhY2sgcHJvdmlkZWQgYnkgRm9ybUNvbnRyb2wuKi9cbiAgICBwdWJsaWMgb25WYWx1ZUNoYW5nZTogKHZhbHVlOiBhbnkpID0+IHZvaWQgPSAoKSA9PiB7fTtcblxuICAgIC8qKiBAaGlkZGVuIFVzZWQgdG8gZGVmaW5lIGlmIGNvbnRyb2wgaXMgaW4gJ2luZGV0ZXJtaW5hdGUnIHN0YXRlLiovXG4gICAgZ2V0IGlzSW5kZXRlcm1pbmF0ZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2hlY2tib3hTdGF0ZSA9PT0gJ2luZGV0ZXJtaW5hdGUnO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIFVzZWQgdG8gZGVmaW5lIGlmIGNvbnRyb2wgaXMgaW4gJ2NoZWNrZWQnIC8gJ3VuY2hlY2tlZCcgc3RhdGUuICovXG4gICAgZ2V0IGlzQ2hlY2tlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2hlY2tib3hTdGF0ZSA9PT0gJ2NoZWNrZWQnIHx8IHRoaXMuY2hlY2tib3hTdGF0ZSA9PT0gJ2ZvcmNlLWNoZWNrZWQnO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEVsZW1lbnQ+LFxuICAgICAgICBAQXR0cmlidXRlKCd0YWJJbmRleFZhbHVlJykgcHVibGljIHRhYkluZGV4VmFsdWU6IG51bWJlciA9IDAsXG4gICAgICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9jb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChMSVNUX0lURU1fQ09NUE9ORU5UKSBwcml2YXRlIF9saXN0SXRlbUNvbXBvbmVudDogTGlzdEl0ZW1JbnRlcmZhY2VcbiAgICApIHtcbiAgICAgICAgdGhpcy50YWJJbmRleFZhbHVlID0gdGFiSW5kZXhWYWx1ZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5jb21wYWN0ID09PSB1bmRlZmluZWQgJiYgdGhpcy5fY29udGVudERlbnNpdHlTZXJ2aWNlKSB7XG4gICAgICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgICAgICAgICAgICB0aGlzLl9jb250ZW50RGVuc2l0eVNlcnZpY2UuX2lzQ29tcGFjdERlbnNpdHkuc3Vic2NyaWJlKChpc0NvbXBhY3QpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jb21wYWN0ID0gaXNDb21wYWN0O1xuICAgICAgICAgICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbnMudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZVxuICAgICAqIC0gc2V0cyBuZXcgY29udHJvbCB2YWx1ZVxuICAgICAqIC0gdXBkYXRlcyBjb250cm9sIHN0YXRlXG4gICAgICovXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMuY2hlY2tib3hWYWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLl9zZXRTdGF0ZSgpO1xuICAgICAgICB0aGlzLl9kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlIG1ldGhvZCAtIHNldHMgb25WYWx1ZUNoYW5nZSBjYWxsYmFjay4qL1xuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVmFsdWVDaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBDb250cm9sVmFsdWVBY2Nlc3NvciBpbnRlcmZhY2UgbWV0aG9kIC0gc2V0cyBvblRvdWNoZWQgY2FsbGJhY2suKi9cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkID0gZm47XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gQ2FsbGVkIGJ5IEZvcm1Db250cm9sIC0gdXNlZCB0byBkaXNhYmxlIC8gZW5hYmxlIGNvbnRyb2wuKi9cbiAgICBzZXREaXNhYmxlZFN0YXRlKGRpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBkaXNhYmxlZDtcbiAgICAgICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBCYXNlZCBvbiBjdXJyZW50IGNvbnRyb2wgc3RhdGU6XG4gICAgICogLSBzZXRzIG5leHQgY29udHJvbCB2YWx1ZVxuICAgICAqIC0gZW1pdHMgbmV3IGNvbnRyb2wgdmFsdWVcbiAgICAgKiAtIHVwZGF0ZXMgY29udHJvbCBzdGF0ZSBiYXNlZCBvbiBuZXcgY29udHJvbCB2YWx1ZVxuICAgICAqICovXG4gICAgbmV4dFZhbHVlKHByZXZpb3VzVmFsdWU/OiBGZENoZWNrYm94VHlwZXMpOiB2b2lkIHtcbiAgICAgICAgc3dpdGNoIChwcmV2aW91c1ZhbHVlIHx8IHRoaXMuY2hlY2tib3hTdGF0ZSkge1xuICAgICAgICAgICAgY2FzZSAnY2hlY2tlZCc6XG4gICAgICAgICAgICAgICAgdGhpcy5jaGVja2JveFZhbHVlID0gdGhpcy52YWx1ZXMuZmFsc2VWYWx1ZTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ3VuY2hlY2tlZCc6XG4gICAgICAgICAgICAgICAgdGhpcy5jaGVja2JveFZhbHVlID1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy50cmlzdGF0ZSAmJiB0aGlzLnRyaXN0YXRlU2VsZWN0YWJsZSA/IHRoaXMudmFsdWVzLnRoaXJkU3RhdGVWYWx1ZSA6IHRoaXMudmFsdWVzLnRydWVWYWx1ZTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2luZGV0ZXJtaW5hdGUnOlxuICAgICAgICAgICAgY2FzZSAnZm9yY2UtY2hlY2tlZCc6XG4gICAgICAgICAgICAgICAgdGhpcy5jaGVja2JveFZhbHVlID0gdGhpcy52YWx1ZXMudHJ1ZVZhbHVlO1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0UHJvcGVydHkodGhpcy5pbnB1dEVsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2NoZWNrZWQnLCAndHJ1ZScpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB0aGlzLmNoZWNrYm94VmFsdWUgPVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRyaXN0YXRlICYmIHRoaXMudHJpc3RhdGVTZWxlY3RhYmxlID8gdGhpcy52YWx1ZXMudGhpcmRTdGF0ZVZhbHVlIDogdGhpcy52YWx1ZXMudHJ1ZVZhbHVlO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3NldFN0YXRlKCk7XG4gICAgICAgIHRoaXMub25WYWx1ZUNoYW5nZSh0aGlzLmNoZWNrYm94VmFsdWUpO1xuICAgICAgICB0aGlzLl9kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gaGFuZGxlcyBibHVyIGV2ZW50ICovXG4gICAgX29uQmx1cigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLm9uVG91Y2hlZCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmZvY3VzQ2hhbmdlLmVtaXQoZmFsc2UpO1xuICAgIH1cbiAgICAvKiogQGhpZGRlbiBoYW5kbGVzIGZvY3VzIGV2ZW50ICovXG4gICAgX29uRm9jdXMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZm9jdXNDaGFuZ2UuZW1pdCh0cnVlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBoYW5kbGVzIGNsaWNrIG9uIHRoZSBsYWJlbCBhc3NvY2lhdGVkIHdpdGggbmF0aXZlIGNoZWNrYm94IGlucHV0ICovXG4gICAgX29uTGFiZWxDbGljayhldmVudDogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgLy8gV2UgaGF2ZSB0byBzdG9wIHByb3BhZ2F0aW9uIGZvciBjbGljayBldmVudHMgb24gdGhlIGlucHV0IGxhYmVsLlxuICAgICAgICAvLyBCeSBkZWZhdWx0LCB3aGVuIGEgdXNlciBjbGlja3Mgb24gYSBsYWJlbCBlbGVtZW50LCBhIGdlbmVyYXRlZCBjbGljayBldmVudCB3aWxsIGJlXG4gICAgICAgIC8vIGRpc3BhdGNoZWQgb24gdGhlIGFzc29jaWF0ZWQgaW5wdXQgZWxlbWVudC4gVGhpcyB3aWxsIGxlYWQgdG8gZHVwbGljYXRlZCBcImNsaWNrXCIgZXZlbnQgZGlzcGF0Y2hlZCBmcm9tIHRoZSBjb21wb25lbnRcbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gaGFuZGxlcyBjbGljayBvbiB0aGUgbmF0aXZlIGNoZWNrYm94IGlucHV0ICovXG4gICAgX29uSW5wdXRDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICAvLyBXaGVuIHRoZXJlJ3MgYSBjbGljayBldmVudCBkaXNwYXRjaGVkIGZyb20gdGhlIGlucHV0LCB3ZSBoYXZlIHRvIGNhdGNoIGl0LCBwcm9jZXNzIGFuZCB0aGVuIHJlLWRpc3BhdGNoIGl0IGZ1cnRoZXIuXG4gICAgICAgIC8vIFRoaXMgaXMgbmVlZGVkIGluIG9yZGVyIHRvIHNldCB0aGUgdmFsdWUgdG8gdGhlIGNvbXBvbmVudCBiZWZvcmUgYW55IGV4dGVybmFsIGxpc3RlbmVycyB3aWxsIHJlY2VpdmUgaXQuXG4gICAgICAgIC8vIE90aGVyd2lzZSBjaGVja2JveCBtaWdodCBiZSBvdXQgb2Ygc3luYy5cbiAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgIHRoaXMubmV4dFZhbHVlKCk7XG4gICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoZXZlbnQudHlwZSwgZXZlbnQpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBCYXNlZCBvbiBjdXJyZW50IGNvbnRyb2wgdmFsdWUgc2V0cyBuZXcgY29udHJvbCBzdGF0ZS4gKi9cbiAgICBwcml2YXRlIF9zZXRTdGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKGVxdWFsKHRoaXMuY2hlY2tib3hWYWx1ZSwgdGhpcy52YWx1ZXMudHJ1ZVZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5jaGVja2JveFN0YXRlID0gJ2NoZWNrZWQnO1xuICAgICAgICB9IGVsc2UgaWYgKGVxdWFsKHRoaXMuY2hlY2tib3hWYWx1ZSwgdGhpcy52YWx1ZXMuZmFsc2VWYWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tib3hTdGF0ZSA9ICd1bmNoZWNrZWQnO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMudHJpc3RhdGUgJiYgZXF1YWwodGhpcy5jaGVja2JveFZhbHVlLCB0aGlzLnZhbHVlcy50aGlyZFN0YXRlVmFsdWUpKSB7XG4gICAgICAgICAgICB0aGlzLmNoZWNrYm94U3RhdGUgPSAnaW5kZXRlcm1pbmF0ZSc7XG4gICAgICAgIH0gZWxzZSBpZiAoIXRoaXMuY2hlY2tib3hWYWx1ZSkge1xuICAgICAgICAgICAgdGhpcy5jaGVja2JveFN0YXRlID0gJ3VuY2hlY2tlZCc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogTWV0aG9kIHRvIHRyaWdnZXIgY2hhbmdlIGRldGVjdGlvbiBpbiBjb21wb25lbnQgKi9cbiAgICBwcml2YXRlIF9kZXRlY3RDaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuX2NoYW5nZURldGVjdG9yUmVmWydkZXN0cm95ZWQnXSkge1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGlucHV0XG4gICAgI2lucHV0RWxlbWVudFxuICAgIHR5cGU9XCJjaGVja2JveFwiXG4gICAgY2xhc3M9XCJmZC1jaGVja2JveFwiXG4gICAgW2lkXT1cImlucHV0SWRcIlxuICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2luZGV0ZXJtaW5hdGVdPVwiaXNJbmRldGVybWluYXRlXCJcbiAgICBbY2hlY2tlZF09XCJpc0NoZWNrZWRcIlxuICAgIFthdHRyLnRhYmluZGV4XT1cInRhYkluZGV4VmFsdWVcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkQnlcIlxuICAgIFthdHRyLmFyaWEtZGVzY3JpYmVkYnldPVwiYXJpYURlc2NyaWJlZEJ5XCJcbiAgICBbYXR0ci5hcmlhLWRpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICBbY2xhc3MuZmQtY2hlY2tib3gtLWNvbXBhY3RdPVwiY29tcGFjdFwiXG4gICAgW2NsYXNzXT1cInN0YXRlID8gJ2lzLScgKyBzdGF0ZSA6ICcnXCJcbiAgICAoY2xpY2spPVwiX29uSW5wdXRDbGljaygkZXZlbnQpXCJcbiAgICAoYmx1cik9XCJfb25CbHVyKClcIlxuICAgIChmb2N1cyk9XCJfb25Gb2N1cygpXCJcbi8+XG5cbjxsYWJlbFxuICAgIGNsYXNzPVwiZmQtY2hlY2tib3hfX2xhYmVsXCJcbiAgICAjbGFiZWxFbGVtZW50XG4gICAgW2Zvcl09XCJpbnB1dElkXCJcbiAgICBbY2xhc3NdPVwibGFiZWxDbGFzc1wiXG4gICAgW2F0dHIudGl0bGVdPVwidGl0bGVcIlxuICAgIFtjbGFzcy5mZC1jaGVja2JveF9fbGFiZWwtLWNvbXBhY3RdPVwiY29tcGFjdFwiXG4gICAgW2NsYXNzLmZkLWNoZWNrYm94X19sYWJlbC0tcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgIChjbGljayk9XCJfb25MYWJlbENsaWNrKCRldmVudClcIlxuPlxuICAgIDxkaXYgY2xhc3M9XCJmZC1jaGVja2JveF9fbGFiZWwtY29udGFpbmVyXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJsYWJlbFwiPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmZC1jaGVja2JveF9fdGV4dFwiPlxuICAgICAgICAgICAgICAgIHt7IGxhYmVsIH19XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhbGFiZWxcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmQtY2hlY2tib3hfX3RleHRcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9sYWJlbD5cbiJdfQ==
258
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY2hlY2tib3gvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvY2hlY2tib3gvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixXQUFXLEVBQ1gsTUFBTSxFQUNOLEtBQUssRUFHTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQXFCLHFCQUFxQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDNUcsT0FBTyxLQUFLLE1BQU0saUJBQWlCLENBQUM7QUFDcEMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUVwQyxPQUFPLEVBQUUsdUJBQXVCLEVBQW1CLE1BQU0sNEJBQTRCLENBQUM7QUFDdEYsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7Ozs7QUFFNUUsSUFBSSxnQkFBZ0IsR0FBRyxDQUFDLENBQUM7QUFvQnpCLE1BQU0sT0FBTyxpQkFBaUI7SUF1SDFCLGNBQWM7SUFDZCxZQUNXLFVBQStCLEVBQ0gsZ0JBQXdCLENBQUMsRUFDcEQsa0JBQXFDLEVBQ3JDLFFBQW1CLEVBQ1Asc0JBQTZDLEVBQ2hCLGtCQUFxQztRQUwvRSxlQUFVLEdBQVYsVUFBVSxDQUFxQjtRQUNILGtC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QUNELHVCQUF1QixtQkFBbUI7cUJBQzdDLFFBQ0ssRUFBRSxpQkFBaUIsRUFBRSxJQUFJLEVBQUU7OzBCQTRINUIsU0FBUzsyQkFBQyxlQUFlOzswQkFHekIsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUI7NENBM0gzQyxZQUFZO3NCQURYLFNBQVM7dUJBQUMsY0FBYztnQkFLekIsWUFBWTtzQkFEWCxTQUFTO3VCQUFDLGNBQWM7Z0JBS3pCLFNBQVM7c0JBRFIsS0FBSztnQkFLRixLQUFLO3NCQURSLEtBQUs7Z0JBVU4sY0FBYztzQkFEYixLQUFLO2dCQUtOLGVBQWU7c0JBRGQsS0FBSztnQkFLTixLQUFLO3NCQURKLEtBQUs7Z0JBS04sT0FBTztzQkFETixLQUFLO2dCQUtOLEtBQUs7c0JBREosS0FBSztnQkFLTixJQUFJO3NCQURILEtBQUs7Z0JBS04sS0FBSztzQkFESixLQUFLO2dCQUtOLFFBQVE7c0JBRFAsS0FBSztnQkFLTixPQUFPO3NCQUROLEtBQUs7Z0JBS04sUUFBUTtzQkFEUCxLQUFLO2dCQUtOLGtCQUFrQjtzQkFEakIsS0FBSztnQkFLTixVQUFVO3NCQURULEtBQUs7Z0JBS04sUUFBUTtzQkFEUCxLQUFLO2dCQVFGLE1BQU07c0JBRFQsS0FBSztnQkFVRyxRQUFRO3NCQURoQixXQUFXO3VCQUFDLGdCQUFnQjtnQkFLcEIsT0FBTztzQkFEZixXQUFXO3VCQUFDLGVBQWU7Z0JBSWxCLFdBQVc7c0JBQXBCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIEF0dHJpYnV0ZSxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBIb3N0QmluZGluZyxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPcHRpb25hbCxcbiAgICBPdXRwdXQsXG4gICAgUmVuZGVyZXIyLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZkQ2hlY2tib3hWYWx1ZXMgfSBmcm9tICcuL2ZkLWNoZWNrYm94LXZhbHVlcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTElTVF9JVEVNX0NPTVBPTkVOVCwgTGlzdEl0ZW1JbnRlcmZhY2UsIENvbnRlbnREZW5zaXR5U2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS91dGlscyc7XG5pbXBvcnQgZXF1YWwgZnJvbSAnZmFzdC1kZWVwLWVxdWFsJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRm9ybVN0YXRlcywgTnVsbGFibGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcbmltcG9ydCB7IHJlZ2lzdGVyRm9ybUl0ZW1Db250cm9sLCBGb3JtSXRlbUNvbnRyb2wgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvZm9ybSc7XG5pbXBvcnQgeyBGRF9DSEVDS0JPWF9WQUxVRVNfREVGQVVMVCB9IGZyb20gJy4vZmQtY2hlY2tib3gtdmFsdWVzLmludGVyZmFjZSc7XG5cbmxldCBjaGVja2JveFVuaXF1ZUlkID0gMDtcblxuZXhwb3J0IHR5cGUgRmRDaGVja2JveFR5cGVzID0gJ2NoZWNrZWQnIHwgJ3VuY2hlY2tlZCcgfCAnaW5kZXRlcm1pbmF0ZScgfCAnZm9yY2UtY2hlY2tlZCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtY2hlY2tib3gnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGVja2JveC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY2hlY2tib3guY29tcG9uZW50LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IENoZWNrYm94Q29tcG9uZW50KSxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlXG4gICAgICAgIH0sXG4gICAgICAgIHJlZ2lzdGVyRm9ybUl0ZW1Db250cm9sKENoZWNrYm94Q29tcG9uZW50KVxuICAgIF0sXG4gICAgaG9zdDogeyAnW2F0dHIudGFiaW5kZXhdJzogJy0xJyB9XG59KVxuZXhwb3J0IGNsYXNzIENoZWNrYm94Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCwgT25EZXN0cm95LCBGb3JtSXRlbUNvbnRyb2wge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQFZpZXdDaGlsZCgnaW5wdXRFbGVtZW50JylcbiAgICBpbnB1dEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2xhYmVsRWxlbWVudCcpXG4gICAgbGFiZWxFbGVtZW50OiBFbGVtZW50UmVmO1xuXG4gICAgLyoqIFNldHMgdGhlIGBhcmlhLWxhYmVsYCBhdHRyaWJ1dGUgdG8gdGhlIGVsZW1lbnQuICovXG4gICAgQElucHV0KClcbiAgICBhcmlhTGFiZWw6IE51bGxhYmxlPHN0cmluZz47XG5cbiAgICAvKiogQ3VycmVudCBzZWxlY3Rpb24gc3RhdGUgb2YgdGhlIGNoZWNrYm94IGNvbXBvbmVudCAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IHZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgdGhpcy53cml0ZVZhbHVlKHZhbHVlKTtcbiAgICB9XG4gICAgZ2V0IHZhbHVlKCk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNoZWNrYm94VmFsdWU7XG4gICAgfVxuXG4gICAgLyoqIFNldHMgdGhlIGBhcmlhLWxhYmVsbGVkYnlgIGF0dHJpYnV0ZSB0byB0aGUgZWxlbWVudC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGFyaWFMYWJlbGxlZEJ5OiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqIFNldHMgdGhlIGBhcmlhLWRlc2NyaWJlZGJ5YCBhdHRyaWJ1dGUgdG8gdGhlIGVsZW1lbnQuICovXG4gICAgQElucHV0KClcbiAgICBhcmlhRGVzY3JpYmVkQnk6IE51bGxhYmxlPHN0cmluZz47XG5cbiAgICAvKiogc2V0cyBjaGVja2JveCB0b29sdGlwICovXG4gICAgQElucHV0KClcbiAgICB0aXRsZTogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKiBTZXRzIFtpZF0gcHJvcGVydHkgb2YgaW5wdXQsIGJpbmRzIGlucHV0IHdpdGggaW5wdXQgbGFiZWwgdXNpbmcgW2Zvcl0gcHJvcGVydHkuICovXG4gICAgQElucHV0KClcbiAgICBpbnB1dElkID0gYGZkLWNoZWNrYm94LSR7Y2hlY2tib3hVbmlxdWVJZCsrfWA7XG5cbiAgICAvKiogU3RhdGUgb2YgY29udHJvbCwgY2hhbmdlcyB2aXN1YWwgYXBwZWFyYW5jZSBvZiBjb250cm9sLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgc3RhdGU/OiBGb3JtU3RhdGVzO1xuXG4gICAgLyoqIFNldHMgW25hbWVdIHByb3BlcnR5IG9mIGlucHV0LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgbmFtZTogc3RyaW5nO1xuXG4gICAgLyoqIFNldHMgdGV4dCBvZiBjb250cm9sIGxhYmVsLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgbGFiZWw6IHN0cmluZztcblxuICAgIC8qKiBBbGxvd3MgdG8gZGlzYWJsZS9lbmFibGUgY29udHJvbC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc2FibGVkOiBib29sZWFuO1xuXG4gICAgLyoqIEFsbG93cyB0byBtaW5pbWl6ZSBjb250cm9sIHRvIGNvbXBhY3QgbW9kZS4gKi9cbiAgICBASW5wdXQoKVxuICAgIGNvbXBhY3Q/OiBib29sZWFuO1xuXG4gICAgLyoqIEVuYWJsZXMgY29udHJvbHMgdGhpcmQgc3RhdGUuICovXG4gICAgQElucHV0KClcbiAgICB0cmlzdGF0ZSA9IGZhbHNlO1xuXG4gICAgLyoqIEFsbG93cyB0byBwcmV2ZW50IHVzZXIgZnJvbSBtYW51YWxseSBzZWxlY3RpbmcgY29udHJvbHMgdGhpcmQgc3RhdGUuICovXG4gICAgQElucHV0KClcbiAgICB0cmlzdGF0ZVNlbGVjdGFibGUgPSBmYWxzZTtcblxuICAgIC8qKiBBc3NpZ25zIGdpdmVuIGNsYXNzIHRvIGNoZWNrYm94IGxhYmVsIGVsZW1lbnQgKi9cbiAgICBASW5wdXQoKVxuICAgIGxhYmVsQ2xhc3M6IHN0cmluZztcblxuICAgIC8qKiBJZiBpdCBpcyBtYW5kYXRvcnkgZmllbGQgKi9cbiAgICBASW5wdXQoKVxuICAgIHJlcXVpcmVkID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3N1YnNjcmlwdGlvbnMgPSBuZXcgU3Vic2NyaXB0aW9uKCk7XG5cbiAgICAvKiogU2V0cyB2YWx1ZXMgcmV0dXJuZWQgYnkgY29udHJvbC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGdldCB2YWx1ZXMoKTogRmRDaGVja2JveFZhbHVlcyB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWx1ZXM7XG4gICAgfVxuICAgIHNldCB2YWx1ZXMoY2hlY2tib3hWYWx1ZXM6IEZkQ2hlY2tib3hWYWx1ZXMpIHtcbiAgICAgICAgdGhpcy5fdmFsdWVzID0geyAuLi5GRF9DSEVDS0JPWF9WQUxVRVNfREVGQVVMVCwgLi4uKGNoZWNrYm94VmFsdWVzID8/IHt9KSB9O1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgQEhvc3RCaW5kaW5nKCdzdHlsZS5wb3NpdGlvbicpXG4gICAgcmVhZG9ubHkgcG9zaXRpb24gPSAncmVsYXRpdmUnO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLm91dGxpbmUnKVxuICAgIHJlYWRvbmx5IG91dGxpbmUgPSAnbm9uZSc7XG5cbiAgICAvKiogRW1pdHMgZXZlbnQgb24gZm9jdXMgY2hhbmdlICovXG4gICAgQE91dHB1dCgpIGZvY3VzQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvKiogQGhpZGRlbiB2YWx1ZXMgcmV0dXJuZWQgYnkgY29udHJvbC4gKi9cbiAgICBwcml2YXRlIF92YWx1ZXM6IEZkQ2hlY2tib3hWYWx1ZXMgPSB7IC4uLkZEX0NIRUNLQk9YX1ZBTFVFU19ERUZBVUxUIH07XG4gICAgLyoqIFN0b3JlcyBjdXJyZW50IGNoZWNrYm94IHZhbHVlLiAqL1xuICAgIHB1YmxpYyBjaGVja2JveFZhbHVlOiBhbnk7XG4gICAgLyoqIFN0b3JlcyBjdXJyZW50IGNoZWNrYm94IHN0YXRlLiAqL1xuICAgIHB1YmxpYyBjaGVja2JveFN0YXRlOiBGZENoZWNrYm94VHlwZXM7XG5cbiAgICAvKiogQGhpZGRlbiBSZWZlcmVuY2UgdG8gY2FsbGJhY2sgcHJvdmlkZWQgYnkgRm9ybUNvbnRyb2wuKi9cbiAgICBwdWJsaWMgb25Ub3VjaGVkID0gKCk6IHZvaWQgPT4ge307XG4gICAgLyoqIEBoaWRkZW4gUmVmZXJlbmNlIHRvIGNhbGxiYWNrIHByb3ZpZGVkIGJ5IEZvcm1Db250cm9sLiovXG4gICAgcHVibGljIG9uVmFsdWVDaGFuZ2U6ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgICAvKiogQGhpZGRlbiBVc2VkIHRvIGRlZmluZSBpZiBjb250cm9sIGlzIGluICdpbmRldGVybWluYXRlJyBzdGF0ZS4qL1xuICAgIGdldCBpc0luZGV0ZXJtaW5hdGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNoZWNrYm94U3RhdGUgPT09ICdpbmRldGVybWluYXRlJztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiBVc2VkIHRvIGRlZmluZSBpZiBjb250cm9sIGlzIGluICdjaGVja2VkJyAvICd1bmNoZWNrZWQnIHN0YXRlLiAqL1xuICAgIGdldCBpc0NoZWNrZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmNoZWNrYm94U3RhdGUgPT09ICdjaGVja2VkJyB8fCB0aGlzLmNoZWNrYm94U3RhdGUgPT09ICdmb3JjZS1jaGVja2VkJztcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgZWxlbWVudFJlZjogRWxlbWVudFJlZjxFbGVtZW50PixcbiAgICAgICAgQEF0dHJpYnV0ZSgndGFiSW5kZXhWYWx1ZScpIHB1YmxpYyB0YWJJbmRleFZhbHVlOiBudW1iZXIgPSAwLFxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfY29udGVudERlbnNpdHlTZXJ2aWNlOiBDb250ZW50RGVuc2l0eVNlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTElTVF9JVEVNX0NPTVBPTkVOVCkgcHJpdmF0ZSBfbGlzdEl0ZW1Db21wb25lbnQ6IExpc3RJdGVtSW50ZXJmYWNlXG4gICAgKSB7XG4gICAgICAgIHRoaXMudGFiSW5kZXhWYWx1ZSA9IHRhYkluZGV4VmFsdWU7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuY29tcGFjdCA9PT0gdW5kZWZpbmVkICYmIHRoaXMuX2NvbnRlbnREZW5zaXR5U2VydmljZSkge1xuICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICAgICAgICAgICAgdGhpcy5fY29udGVudERlbnNpdHlTZXJ2aWNlLl9pc0NvbXBhY3REZW5zaXR5LnN1YnNjcmliZSgoaXNDb21wYWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29tcGFjdCA9IGlzQ29tcGFjdDtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb25zLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlbiBDb250cm9sVmFsdWVBY2Nlc3NvciBpbnRlcmZhY2VcbiAgICAgKiAtIHNldHMgbmV3IGNvbnRyb2wgdmFsdWVcbiAgICAgKiAtIHVwZGF0ZXMgY29udHJvbCBzdGF0ZVxuICAgICAqL1xuICAgIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLmNoZWNrYm94VmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5fc2V0U3RhdGUoKTtcbiAgICAgICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIENvbnRyb2xWYWx1ZUFjY2Vzc29yIGludGVyZmFjZSBtZXRob2QgLSBzZXRzIG9uVmFsdWVDaGFuZ2UgY2FsbGJhY2suKi9cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblZhbHVlQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gQ29udHJvbFZhbHVlQWNjZXNzb3IgaW50ZXJmYWNlIG1ldGhvZCAtIHNldHMgb25Ub3VjaGVkIGNhbGxiYWNrLiovXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIENhbGxlZCBieSBGb3JtQ29udHJvbCAtIHVzZWQgdG8gZGlzYWJsZSAvIGVuYWJsZSBjb250cm9sLiovXG4gICAgc2V0RGlzYWJsZWRTdGF0ZShkaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gZGlzYWJsZWQ7XG4gICAgICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQmFzZWQgb24gY3VycmVudCBjb250cm9sIHN0YXRlOlxuICAgICAqIC0gc2V0cyBuZXh0IGNvbnRyb2wgdmFsdWVcbiAgICAgKiAtIGVtaXRzIG5ldyBjb250cm9sIHZhbHVlXG4gICAgICogLSB1cGRhdGVzIGNvbnRyb2wgc3RhdGUgYmFzZWQgb24gbmV3IGNvbnRyb2wgdmFsdWVcbiAgICAgKiAqL1xuICAgIG5leHRWYWx1ZShwcmV2aW91c1ZhbHVlPzogRmRDaGVja2JveFR5cGVzKTogdm9pZCB7XG4gICAgICAgIHN3aXRjaCAocHJldmlvdXNWYWx1ZSB8fCB0aGlzLmNoZWNrYm94U3RhdGUpIHtcbiAgICAgICAgICAgIGNhc2UgJ2NoZWNrZWQnOlxuICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tib3hWYWx1ZSA9IHRoaXMudmFsdWVzLmZhbHNlVmFsdWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICd1bmNoZWNrZWQnOlxuICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tib3hWYWx1ZSA9XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudHJpc3RhdGUgJiYgdGhpcy50cmlzdGF0ZVNlbGVjdGFibGUgPyB0aGlzLnZhbHVlcy50aGlyZFN0YXRlVmFsdWUgOiB0aGlzLnZhbHVlcy50cnVlVmFsdWU7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdpbmRldGVybWluYXRlJzpcbiAgICAgICAgICAgIGNhc2UgJ2ZvcmNlLWNoZWNrZWQnOlxuICAgICAgICAgICAgICAgIHRoaXMuY2hlY2tib3hWYWx1ZSA9IHRoaXMudmFsdWVzLnRydWVWYWx1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFByb3BlcnR5KHRoaXMuaW5wdXRFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdjaGVja2VkJywgJ3RydWUnKTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgdGhpcy5jaGVja2JveFZhbHVlID1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy50cmlzdGF0ZSAmJiB0aGlzLnRyaXN0YXRlU2VsZWN0YWJsZSA/IHRoaXMudmFsdWVzLnRoaXJkU3RhdGVWYWx1ZSA6IHRoaXMudmFsdWVzLnRydWVWYWx1ZTtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zZXRTdGF0ZSgpO1xuICAgICAgICB0aGlzLm9uVmFsdWVDaGFuZ2UodGhpcy5jaGVja2JveFZhbHVlKTtcbiAgICAgICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIGhhbmRsZXMgYmx1ciBldmVudCAqL1xuICAgIF9vbkJsdXIoKTogdm9pZCB7XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy5vblRvdWNoZWQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5mb2N1c0NoYW5nZS5lbWl0KGZhbHNlKTtcbiAgICB9XG4gICAgLyoqIEBoaWRkZW4gaGFuZGxlcyBmb2N1cyBldmVudCAqL1xuICAgIF9vbkZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZvY3VzQ2hhbmdlLmVtaXQodHJ1ZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gaGFuZGxlcyBjbGljayBvbiB0aGUgbGFiZWwgYXNzb2NpYXRlZCB3aXRoIG5hdGl2ZSBjaGVja2JveCBpbnB1dCAqL1xuICAgIF9vbkxhYmVsQ2xpY2soZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIC8vIFdlIGhhdmUgdG8gc3RvcCBwcm9wYWdhdGlvbiBmb3IgY2xpY2sgZXZlbnRzIG9uIHRoZSBpbnB1dCBsYWJlbC5cbiAgICAgICAgLy8gQnkgZGVmYXVsdCwgd2hlbiBhIHVzZXIgY2xpY2tzIG9uIGEgbGFiZWwgZWxlbWVudCwgYSBnZW5lcmF0ZWQgY2xpY2sgZXZlbnQgd2lsbCBiZVxuICAgICAgICAvLyBkaXNwYXRjaGVkIG9uIHRoZSBhc3NvY2lhdGVkIGlucHV0IGVsZW1lbnQuIFRoaXMgd2lsbCBsZWFkIHRvIGR1cGxpY2F0ZWQgXCJjbGlja1wiIGV2ZW50IGRpc3BhdGNoZWQgZnJvbSB0aGUgY29tcG9uZW50XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuIGhhbmRsZXMgY2xpY2sgb24gdGhlIG5hdGl2ZSBjaGVja2JveCBpbnB1dCAqL1xuICAgIF9vbklucHV0Q2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgLy8gV2hlbiB0aGVyZSdzIGEgY2xpY2sgZXZlbnQgZGlzcGF0Y2hlZCBmcm9tIHRoZSBpbnB1dCwgd2UgaGF2ZSB0byBjYXRjaCBpdCwgcHJvY2VzcyBhbmQgdGhlbiByZS1kaXNwYXRjaCBpdCBmdXJ0aGVyLlxuICAgICAgICAvLyBUaGlzIGlzIG5lZWRlZCBpbiBvcmRlciB0byBzZXQgdGhlIHZhbHVlIHRvIHRoZSBjb21wb25lbnQgYmVmb3JlIGFueSBleHRlcm5hbCBsaXN0ZW5lcnMgd2lsbCByZWNlaXZlIGl0LlxuICAgICAgICAvLyBPdGhlcndpc2UgY2hlY2tib3ggbWlnaHQgYmUgb3V0IG9mIHN5bmMuXG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICB0aGlzLm5leHRWYWx1ZSgpO1xuICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KG5ldyBNb3VzZUV2ZW50KGV2ZW50LnR5cGUsIGV2ZW50KSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gQmFzZWQgb24gY3VycmVudCBjb250cm9sIHZhbHVlIHNldHMgbmV3IGNvbnRyb2wgc3RhdGUuICovXG4gICAgcHJpdmF0ZSBfc2V0U3RhdGUoKTogdm9pZCB7XG4gICAgICAgIGlmIChlcXVhbCh0aGlzLmNoZWNrYm94VmFsdWUsIHRoaXMudmFsdWVzLnRydWVWYWx1ZSkpIHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tib3hTdGF0ZSA9ICdjaGVja2VkJztcbiAgICAgICAgfSBlbHNlIGlmIChlcXVhbCh0aGlzLmNoZWNrYm94VmFsdWUsIHRoaXMudmFsdWVzLmZhbHNlVmFsdWUpKSB7XG4gICAgICAgICAgICB0aGlzLmNoZWNrYm94U3RhdGUgPSAndW5jaGVja2VkJztcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnRyaXN0YXRlICYmIGVxdWFsKHRoaXMuY2hlY2tib3hWYWx1ZSwgdGhpcy52YWx1ZXMudGhpcmRTdGF0ZVZhbHVlKSkge1xuICAgICAgICAgICAgdGhpcy5jaGVja2JveFN0YXRlID0gJ2luZGV0ZXJtaW5hdGUnO1xuICAgICAgICB9IGVsc2UgaWYgKCF0aGlzLmNoZWNrYm94VmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tib3hTdGF0ZSA9ICd1bmNoZWNrZWQnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIE1ldGhvZCB0byB0cmlnZ2VyIGNoYW5nZSBkZXRlY3Rpb24gaW4gY29tcG9uZW50ICovXG4gICAgcHJpdmF0ZSBfZGV0ZWN0Q2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZlsnZGVzdHJveWVkJ10pIHtcbiAgICAgICAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIjxpbnB1dFxuICAgICNpbnB1dEVsZW1lbnRcbiAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgIGNsYXNzPVwiZmQtY2hlY2tib3hcIlxuICAgIFtpZF09XCJpbnB1dElkXCJcbiAgICBbbmFtZV09XCJuYW1lXCJcbiAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgIFtpbmRldGVybWluYXRlXT1cImlzSW5kZXRlcm1pbmF0ZVwiXG4gICAgW2NoZWNrZWRdPVwiaXNDaGVja2VkXCJcbiAgICBbYXR0ci50YWJpbmRleF09XCJ0YWJJbmRleFZhbHVlXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICBbYXR0ci5hcmlhLWRlc2NyaWJlZGJ5XT1cImFyaWFEZXNjcmliZWRCeVwiXG4gICAgW2F0dHIuYXJpYS1kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW2F0dHIuYXJpYS1yZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gICAgW2NsYXNzLmZkLWNoZWNrYm94LS1jb21wYWN0XT1cImNvbXBhY3RcIlxuICAgIFtjbGFzc109XCJzdGF0ZSA/ICdpcy0nICsgc3RhdGUgOiAnJ1wiXG4gICAgKGNsaWNrKT1cIl9vbklucHV0Q2xpY2soJGV2ZW50KVwiXG4gICAgKGJsdXIpPVwiX29uQmx1cigpXCJcbiAgICAoZm9jdXMpPVwiX29uRm9jdXMoKVwiXG4vPlxuXG48bGFiZWxcbiAgICBjbGFzcz1cImZkLWNoZWNrYm94X19sYWJlbFwiXG4gICAgI2xhYmVsRWxlbWVudFxuICAgIFtmb3JdPVwiaW5wdXRJZFwiXG4gICAgW2NsYXNzXT1cImxhYmVsQ2xhc3NcIlxuICAgIFthdHRyLnRpdGxlXT1cInRpdGxlXCJcbiAgICBbY2xhc3MuZmQtY2hlY2tib3hfX2xhYmVsLS1jb21wYWN0XT1cImNvbXBhY3RcIlxuICAgIFtjbGFzcy5mZC1jaGVja2JveF9fbGFiZWwtLXJlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgICAoY2xpY2spPVwiX29uTGFiZWxDbGljaygkZXZlbnQpXCJcbj5cbiAgICA8ZGl2IGNsYXNzPVwiZmQtY2hlY2tib3hfX2xhYmVsLWNvbnRhaW5lclwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibGFiZWxcIj5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmQtY2hlY2tib3hfX3RleHRcIj5cbiAgICAgICAgICAgICAgICB7eyBsYWJlbCB9fVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWxhYmVsXCI+XG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImZkLWNoZWNrYm94X190ZXh0XCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbjwvbGFiZWw+XG4iXX0=
@@ -7,6 +7,7 @@ import * as i1 from '@fundamental-ngx/core/utils';
7
7
  import { LIST_ITEM_COMPONENT } from '@fundamental-ngx/core/utils';
8
8
  import equal from 'fast-deep-equal';
9
9
  import { Subscription } from 'rxjs';
10
+ import { registerFormItemControl } from '@fundamental-ngx/core/form';
10
11
 
11
12
  const FD_CHECKBOX_VALUES_DEFAULT = {
12
13
  trueValue: true,
@@ -191,7 +192,8 @@ CheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", vers
191
192
  provide: NG_VALUE_ACCESSOR,
192
193
  useExisting: forwardRef(() => CheckboxComponent),
193
194
  multi: true
194
- }
195
+ },
196
+ registerFormItemControl(CheckboxComponent)
195
197
  ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }, { propertyName: "labelElement", first: true, predicate: ["labelElement"], descendants: true }], ngImport: i0, template: "<input\n #inputElement\n type=\"checkbox\"\n class=\"fd-checkbox\"\n [id]=\"inputId\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [indeterminate]=\"isIndeterminate\"\n [checked]=\"isChecked\"\n [attr.tabindex]=\"tabIndexValue\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-required]=\"required\"\n [class.fd-checkbox--compact]=\"compact\"\n [class]=\"state ? 'is-' + state : ''\"\n (click)=\"_onInputClick($event)\"\n (blur)=\"_onBlur()\"\n (focus)=\"_onFocus()\"\n/>\n\n<label\n class=\"fd-checkbox__label\"\n #labelElement\n [for]=\"inputId\"\n [class]=\"labelClass\"\n [attr.title]=\"title\"\n [class.fd-checkbox__label--compact]=\"compact\"\n [class.fd-checkbox__label--required]=\"required\"\n (click)=\"_onLabelClick($event)\"\n>\n <div class=\"fd-checkbox__label-container\">\n <ng-container *ngIf=\"label\">\n <span class=\"fd-checkbox__text\">\n {{ label }}\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!label\">\n <span class=\"fd-checkbox__text\">\n <ng-content></ng-content>\n </span>\n </ng-container>\n </div>\n</label>\n", styles: ["/*!\n * Fundamental Library Styles v0.24.0-rc.128\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-checkbox\n*/.fd-checkbox{position:absolute;opacity:.0001}.fd-checkbox{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--sapField_TextColor);background-color:var(--sapField_Background);border-style:solid;border-width:var(--sapField_BorderWidth);border-color:var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);outline:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.fd-checkbox:before,.fd-checkbox:after{box-sizing:inherit;font-size:inherit}.fd-checkbox::placeholder{font-style:italic;color:var(--sapField_PlaceholderTextColor)}.fd-checkbox::selection{color:var(--sapContent_ContrastTextColor);background-color:var(--sapSelectedColor)}.fd-checkbox.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-checkbox.is-success:hover,.fd-checkbox.is-success.is-hover{background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-checkbox.is-success:focus,.fd-checkbox.is-success.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color)}.fd-checkbox.is-success:focus:hover,.fd-checkbox.is-success:focus.is-hover,.fd-checkbox.is-success.is-focus:hover,.fd-checkbox.is-success.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-checkbox.is-error:hover,.fd-checkbox.is-error.is-hover{background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-checkbox.is-error:focus,.fd-checkbox.is-error.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color)}.fd-checkbox.is-error:focus:hover,.fd-checkbox.is-error:focus.is-hover,.fd-checkbox.is-error.is-focus:hover,.fd-checkbox.is-error.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-checkbox.is-warning:hover,.fd-checkbox.is-warning.is-hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-warning:focus,.fd-checkbox.is-warning.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color)}.fd-checkbox.is-warning:focus:hover,.fd-checkbox.is-warning:focus.is-hover,.fd-checkbox.is-warning.is-focus:hover,.fd-checkbox.is-warning.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-checkbox.is-alert:hover,.fd-checkbox.is-alert.is-hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-alert:focus,.fd-checkbox.is-alert.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color)}.fd-checkbox.is-alert:focus:hover,.fd-checkbox.is-alert:focus.is-hover,.fd-checkbox.is-alert.is-focus:hover,.fd-checkbox.is-alert.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-checkbox.is-information:hover,.fd-checkbox.is-information.is-hover{background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-checkbox.is-information:focus,.fd-checkbox.is-information.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color)}.fd-checkbox.is-information:focus:hover,.fd-checkbox.is-information:focus.is-hover,.fd-checkbox.is-information.is-focus:hover,.fd-checkbox.is-information.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-error,.fd-checkbox.is-warning,.fd-checkbox.is-alert{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-checkbox.is-error::placeholder,.fd-checkbox.is-warning::placeholder,.fd-checkbox.is-alert::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-checkbox.is-error:focus,.fd-checkbox.is-error.is-focus,.fd-checkbox.is-warning:focus,.fd-checkbox.is-warning.is-focus,.fd-checkbox.is-alert:focus,.fd-checkbox.is-alert.is-focus,.fd-checkbox.is-information:focus,.fd-checkbox.is-information.is-focus{z-index:5;outline-offset:var(--fdInput_Outline_Offset_States)}.fd-checkbox.is-error::placeholder{color:var(--sapField_TextColor)}.fd-checkbox[aria-disabled=true],.fd-checkbox.is-disabled,.fd-checkbox:disabled{pointer-events:none;opacity:var(--sapContent_DisabledOpacity)}.fd-checkbox[aria-disabled=true]::placeholder,.fd-checkbox.is-disabled::placeholder,.fd-checkbox:disabled::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-checkbox[aria-readonly=true],.fd-checkbox.is-readonly,.fd-checkbox[readonly]{border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);pointer-events:none}.fd-checkbox[aria-readonly=true]::placeholder,.fd-checkbox.is-readonly::placeholder,.fd-checkbox[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-checkbox[aria-readonly=true]:hover,.fd-checkbox[aria-readonly=true].is-hover,.fd-checkbox.is-readonly:hover,.fd-checkbox.is-readonly.is-hover,.fd-checkbox[readonly]:hover,.fd-checkbox[readonly].is-hover{box-shadow:none}.fd-checkbox[aria-readonly=true]:focus,.fd-checkbox[aria-readonly=true].is-focus,.fd-checkbox.is-readonly:focus,.fd-checkbox.is-readonly.is-focus,.fd-checkbox[readonly]:focus,.fd-checkbox[readonly].is-focus{z-index:5;background:var(--sapField_Focus_Background);border-radius:var(--sapField_BorderCornerRadius)}.fd-checkbox,.fd-checkbox.is-warning,.fd-checkbox.is-error,.fd-checkbox.is-success,.fd-checkbox.is-information{border-style:initial}.fd-checkbox__label{line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:-moz-fit-content;width:fit-content;position:relative;max-width:100%;font-size:var(--sapFontSize);color:var(--sapContent_LabelColor);margin-right:.5rem;cursor:text;align-self:flex-start;cursor:pointer;line-height:1rem;padding:var(--fdCheckbox_Padding);display:flex;align-items:center}.fd-checkbox__label:before,.fd-checkbox__label:after{box-sizing:inherit;font-size:inherit}[dir=rtl] .fd-checkbox__label,.fd-checkbox__label[dir=rtl]{margin-left:.5rem;margin-right:0}.fd-checkbox__label:before{content:\"\";height:var(--fdCheckbox_Dimensions);width:var(--fdCheckbox_Dimensions);min-width:var(--fdCheckbox_Dimensions);display:inline-flex;justify-content:center;align-items:center;font-family:SAP-icons;background-color:var(--fdCheckbox_Background_Color);color:var(--fdCheckbox_Selected_Color);border:var(--fdCheckbox_Border);border-radius:var(--sapField_BorderCornerRadius)}.fd-checkbox__label:after{padding-left:.125rem;position:relative}.fd-checkbox__label:empty,.fd-checkbox__label.is-empty{margin:0}[dir=rtl] .fd-checkbox__label:after,.fd-checkbox__label[dir=rtl]:after{padding-left:0;padding-right:.125rem}.fd-checkbox__label:hover:before,.fd-checkbox__label.is-hover:before{background-color:var(--fdCheckbox_Hover_Background);border-color:var(--fdCheckbox_Hover_Border_Color);box-shadow:var(--fdCheckbox_Hover_Shadow)}.fd-checkbox__label:focus{outline:none}.fd-checkbox__label--required .fd-checkbox__text,.fd-checkbox__label[aria-required=true] .fd-checkbox__text{padding-right:.5rem}[dir=rtl] .fd-checkbox__label--required .fd-checkbox__text,.fd-checkbox__label--required .fd-checkbox__text[dir=rtl],[dir=rtl] .fd-checkbox__label[aria-required=true] .fd-checkbox__text,.fd-checkbox__label[aria-required=true] .fd-checkbox__text[dir=rtl]{padding-right:0;padding-left:.5rem}.fd-checkbox__label--required .fd-checkbox__text:after,.fd-checkbox__label[aria-required=true] .fd-checkbox__text:after{content:\"*\";font-size:var(--sapFontSize);font-weight:700;color:var(--sapField_RequiredColor);position:absolute;padding-left:.125rem}[dir=rtl] .fd-checkbox__label--required .fd-checkbox__text:after,.fd-checkbox__label--required .fd-checkbox__text[dir=rtl]:after,[dir=rtl] .fd-checkbox__label[aria-required=true] .fd-checkbox__text:after,.fd-checkbox__label[aria-required=true] .fd-checkbox__text[dir=rtl]:after{padding-left:0;padding-right:.125rem}.fd-checkbox__label-container{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;align-items:center;width:100%;height:1rem;pointer-events:none}.fd-checkbox__label-container:before,.fd-checkbox__label-container:after{box-sizing:inherit;font-size:inherit}.fd-checkbox__text{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:var(--fdCheckbox_Padding);margin-right:0}.fd-checkbox__text:before,.fd-checkbox__text:after{box-sizing:inherit;font-size:inherit}[dir=rtl] .fd-checkbox__text,.fd-checkbox__text[dir=rtl]{margin-right:var(--fdCheckbox_Padding);margin-left:0}.fd-checkbox:checked+.fd-checkbox__label:before{content:\"\\e05b\"}.fd-checkbox:indeterminate+.fd-checkbox__label:after{content:\"\";width:var(--fdCheckbox_Tristate_Size);height:var(--fdCheckbox_Tristate_Size);background-color:var(--fdCheckbox_Selected_Color);position:absolute;margin-left:var(--fdCheckbox_Tristate_Offset)}.fd-checkbox:indeterminate+.fd-checkbox__label--compact:after{--fdCheckbox_Tristate_Size: var(--fdCheckbox_Tristate_Compact_Size);--fdCheckbox_Tristate_Offset: var(--fdCheckbox_Tristate_Compact_Offset)}[dir=rtl] .fd-checkbox:indeterminate+.fd-checkbox__label:after,.fd-checkbox[dir=rtl]:indeterminate+.fd-checkbox__label:after{margin-left:0;margin-right:var(--fdCheckbox_Tristate_Offset)}.fd-checkbox.is-warning+.fd-checkbox__label,.fd-checkbox.is-alert+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_WarningBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_WarningBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_WarningColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Warning_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_WarningColor);--fdCheckbox_Selected_Color: var(--sapField_TextColor)}.fd-checkbox.is-error+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_InvalidBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_InvalidBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_InvalidColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Error_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_InvalidColor);--fdCheckbox_Selected_Color: var(--sapField_InvalidColor)}.fd-checkbox.is-success+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_SuccessBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_SuccessBorderWidth) solid var(--sapField_SuccessColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Success_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_SuccessColor);--fdCheckbox_Selected_Color: var(--sapField_SuccessColor)}.fd-checkbox.is-information+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_InformationBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_InformationBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_InformationColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Information_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_InformationColor);--fdCheckbox_Selected_Color: var(--sapField_InformationColor)}.fd-checkbox[readonly]+.fd-checkbox__label,.fd-checkbox.is-readonly+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_ReadOnly_Background);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--fdCheckbox_Readonly_Border_Width) var(--fdCheckbox_Readonly_Border_Type) var(--sapField_ReadOnly_BorderColor);--fdCheckbox_Hover_Shadow: none;--fdCheckbox_Hover_Border_Color: var(--sapField_ReadOnly_BorderColor);--fdCheckbox_Selected_Color: var(--sapContent_NonInteractiveIconColor)}.fd-checkbox:focus,.fd-checkbox.is-focus{z-index:5}.fd-checkbox:focus+.fd-checkbox__label,.fd-checkbox.is-focus+.fd-checkbox__label{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);outline-offset:calc(var(--fdCheckbox_Focus_Outline_Offset) - var(--fdCheckbox_Padding));border-radius:var(--fdCheckbox_Outline_Border_Radius)}.fd-checkbox[aria-disabled=true],.fd-checkbox.is-disabled,.fd-checkbox:disabled{opacity:.0001}.fd-checkbox[aria-disabled=true]+.fd-checkbox__label,.fd-checkbox.is-disabled+.fd-checkbox__label,.fd-checkbox:disabled+.fd-checkbox__label{pointer-events:none;opacity:.4}.fd-checkbox--compact+.fd-checkbox__label{--fdCheckbox_Dimensions: var(--fdCheckbox_Compact_Dimensions);--fdCheckbox_Padding: var(--fdCheckbox_Compact_Padding)}.fd-checkbox--compact:focus,.fd-checkbox--compact.is-focus{z-index:5}.fd-checkbox--compact:focus+.fd-checkbox__label,.fd-checkbox--compact.is-focus+.fd-checkbox__label{--fdCheckbox_Outline_Border_Radius: var(--fdCheckbox_Compact_Outline_Border_Radius)}fd-checkbox .fd-checkbox__text:empty{margin:0}fd-checkbox .fd-checkbox__label{-webkit-user-select:none;user-select:none}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
196
198
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImport: i0, type: CheckboxComponent, decorators: [{
197
199
  type: Component,
@@ -200,7 +202,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.4", ngImpor
200
202
  provide: NG_VALUE_ACCESSOR,
201
203
  useExisting: forwardRef(() => CheckboxComponent),
202
204
  multi: true
203
- }
205
+ },
206
+ registerFormItemControl(CheckboxComponent)
204
207
  ], host: { '[attr.tabindex]': '-1' }, template: "<input\n #inputElement\n type=\"checkbox\"\n class=\"fd-checkbox\"\n [id]=\"inputId\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [indeterminate]=\"isIndeterminate\"\n [checked]=\"isChecked\"\n [attr.tabindex]=\"tabIndexValue\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-required]=\"required\"\n [class.fd-checkbox--compact]=\"compact\"\n [class]=\"state ? 'is-' + state : ''\"\n (click)=\"_onInputClick($event)\"\n (blur)=\"_onBlur()\"\n (focus)=\"_onFocus()\"\n/>\n\n<label\n class=\"fd-checkbox__label\"\n #labelElement\n [for]=\"inputId\"\n [class]=\"labelClass\"\n [attr.title]=\"title\"\n [class.fd-checkbox__label--compact]=\"compact\"\n [class.fd-checkbox__label--required]=\"required\"\n (click)=\"_onLabelClick($event)\"\n>\n <div class=\"fd-checkbox__label-container\">\n <ng-container *ngIf=\"label\">\n <span class=\"fd-checkbox__text\">\n {{ label }}\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!label\">\n <span class=\"fd-checkbox__text\">\n <ng-content></ng-content>\n </span>\n </ng-container>\n </div>\n</label>\n", styles: ["/*!\n * Fundamental Library Styles v0.24.0-rc.128\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n *//*!\n.fd-checkbox\n*/.fd-checkbox{position:absolute;opacity:.0001}.fd-checkbox{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--sapField_TextColor);background-color:var(--sapField_Background);border-style:solid;border-width:var(--sapField_BorderWidth);border-color:var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);outline:none;appearance:none;-webkit-appearance:none;-moz-appearance:none}.fd-checkbox:before,.fd-checkbox:after{box-sizing:inherit;font-size:inherit}.fd-checkbox::placeholder{font-style:italic;color:var(--sapField_PlaceholderTextColor)}.fd-checkbox::selection{color:var(--sapContent_ContrastTextColor);background-color:var(--sapSelectedColor)}.fd-checkbox.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle)}.fd-checkbox.is-success:hover,.fd-checkbox.is-success.is-hover{background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-checkbox.is-success:focus,.fd-checkbox.is-success.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color)}.fd-checkbox.is-success:focus:hover,.fd-checkbox.is-success:focus.is-hover,.fd-checkbox.is-success.is-focus:hover,.fd-checkbox.is-success.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle)}.fd-checkbox.is-error:hover,.fd-checkbox.is-error.is-hover{background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-checkbox.is-error:focus,.fd-checkbox.is-error.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color)}.fd-checkbox.is-error:focus:hover,.fd-checkbox.is-error:focus.is-hover,.fd-checkbox.is-error.is-focus:hover,.fd-checkbox.is-error.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-checkbox.is-warning:hover,.fd-checkbox.is-warning.is-hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-warning:focus,.fd-checkbox.is-warning.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color)}.fd-checkbox.is-warning:focus:hover,.fd-checkbox.is-warning:focus.is-hover,.fd-checkbox.is-warning.is-focus:hover,.fd-checkbox.is-warning.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-checkbox.is-alert:hover,.fd-checkbox.is-alert.is-hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-alert:focus,.fd-checkbox.is-alert.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color)}.fd-checkbox.is-alert:focus:hover,.fd-checkbox.is-alert:focus.is-hover,.fd-checkbox.is-alert.is-focus:hover,.fd-checkbox.is-alert.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle)}.fd-checkbox.is-information:hover,.fd-checkbox.is-information.is-hover{background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-checkbox.is-information:focus,.fd-checkbox.is-information.is-focus{z-index:5;background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color)}.fd-checkbox.is-information:focus:hover,.fd-checkbox.is-information:focus.is-hover,.fd-checkbox.is-information.is-focus:hover,.fd-checkbox.is-information.is-focus.is-hover{box-shadow:none}.fd-checkbox.is-error,.fd-checkbox.is-warning,.fd-checkbox.is-alert{font-style:var(--fdInput_State_Text_Style);font-weight:var(--fdInput_State_Font_Weight)}.fd-checkbox.is-error::placeholder,.fd-checkbox.is-warning::placeholder,.fd-checkbox.is-alert::placeholder{font-weight:var(--fdInput_State_Font_Weight)}.fd-checkbox.is-error:focus,.fd-checkbox.is-error.is-focus,.fd-checkbox.is-warning:focus,.fd-checkbox.is-warning.is-focus,.fd-checkbox.is-alert:focus,.fd-checkbox.is-alert.is-focus,.fd-checkbox.is-information:focus,.fd-checkbox.is-information.is-focus{z-index:5;outline-offset:var(--fdInput_Outline_Offset_States)}.fd-checkbox.is-error::placeholder{color:var(--sapField_TextColor)}.fd-checkbox[aria-disabled=true],.fd-checkbox.is-disabled,.fd-checkbox:disabled{pointer-events:none;opacity:var(--sapContent_DisabledOpacity)}.fd-checkbox[aria-disabled=true]::placeholder,.fd-checkbox.is-disabled::placeholder,.fd-checkbox:disabled::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-checkbox[aria-readonly=true],.fd-checkbox.is-readonly,.fd-checkbox[readonly]{border-color:var(--sapField_ReadOnly_BorderColor);border-radius:var(--fdInput_ReadOnly_Border_Radius);background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);pointer-events:none}.fd-checkbox[aria-readonly=true]::placeholder,.fd-checkbox.is-readonly::placeholder,.fd-checkbox[readonly]::placeholder{color:var(--fdInput_Non_Interactive_State_Placeholder_Color)}.fd-checkbox[aria-readonly=true]:hover,.fd-checkbox[aria-readonly=true].is-hover,.fd-checkbox.is-readonly:hover,.fd-checkbox.is-readonly.is-hover,.fd-checkbox[readonly]:hover,.fd-checkbox[readonly].is-hover{box-shadow:none}.fd-checkbox[aria-readonly=true]:focus,.fd-checkbox[aria-readonly=true].is-focus,.fd-checkbox.is-readonly:focus,.fd-checkbox.is-readonly.is-focus,.fd-checkbox[readonly]:focus,.fd-checkbox[readonly].is-focus{z-index:5;background:var(--sapField_Focus_Background);border-radius:var(--sapField_BorderCornerRadius)}.fd-checkbox,.fd-checkbox.is-warning,.fd-checkbox.is-error,.fd-checkbox.is-success,.fd-checkbox.is-information{border-style:initial}.fd-checkbox__label{line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:-moz-fit-content;width:fit-content;position:relative;max-width:100%;font-size:var(--sapFontSize);color:var(--sapContent_LabelColor);margin-right:.5rem;cursor:text;align-self:flex-start;cursor:pointer;line-height:1rem;padding:var(--fdCheckbox_Padding);display:flex;align-items:center}.fd-checkbox__label:before,.fd-checkbox__label:after{box-sizing:inherit;font-size:inherit}[dir=rtl] .fd-checkbox__label,.fd-checkbox__label[dir=rtl]{margin-left:.5rem;margin-right:0}.fd-checkbox__label:before{content:\"\";height:var(--fdCheckbox_Dimensions);width:var(--fdCheckbox_Dimensions);min-width:var(--fdCheckbox_Dimensions);display:inline-flex;justify-content:center;align-items:center;font-family:SAP-icons;background-color:var(--fdCheckbox_Background_Color);color:var(--fdCheckbox_Selected_Color);border:var(--fdCheckbox_Border);border-radius:var(--sapField_BorderCornerRadius)}.fd-checkbox__label:after{padding-left:.125rem;position:relative}.fd-checkbox__label:empty,.fd-checkbox__label.is-empty{margin:0}[dir=rtl] .fd-checkbox__label:after,.fd-checkbox__label[dir=rtl]:after{padding-left:0;padding-right:.125rem}.fd-checkbox__label:hover:before,.fd-checkbox__label.is-hover:before{background-color:var(--fdCheckbox_Hover_Background);border-color:var(--fdCheckbox_Hover_Border_Color);box-shadow:var(--fdCheckbox_Hover_Shadow)}.fd-checkbox__label:focus{outline:none}.fd-checkbox__label--required .fd-checkbox__text,.fd-checkbox__label[aria-required=true] .fd-checkbox__text{padding-right:.5rem}[dir=rtl] .fd-checkbox__label--required .fd-checkbox__text,.fd-checkbox__label--required .fd-checkbox__text[dir=rtl],[dir=rtl] .fd-checkbox__label[aria-required=true] .fd-checkbox__text,.fd-checkbox__label[aria-required=true] .fd-checkbox__text[dir=rtl]{padding-right:0;padding-left:.5rem}.fd-checkbox__label--required .fd-checkbox__text:after,.fd-checkbox__label[aria-required=true] .fd-checkbox__text:after{content:\"*\";font-size:var(--sapFontSize);font-weight:700;color:var(--sapField_RequiredColor);position:absolute;padding-left:.125rem}[dir=rtl] .fd-checkbox__label--required .fd-checkbox__text:after,.fd-checkbox__label--required .fd-checkbox__text[dir=rtl]:after,[dir=rtl] .fd-checkbox__label[aria-required=true] .fd-checkbox__text:after,.fd-checkbox__label[aria-required=true] .fd-checkbox__text[dir=rtl]:after{padding-left:0;padding-right:.125rem}.fd-checkbox__label-container{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;display:flex;align-items:center;width:100%;height:1rem;pointer-events:none}.fd-checkbox__label-container:before,.fd-checkbox__label-container:after{box-sizing:inherit;font-size:inherit}.fd-checkbox__text{font-size:var(--sapFontSize);line-height:var(--sapContent_LineHeight);color:var(--sapTextColor);font-family:var(--sapFontFamily);font-weight:400;box-sizing:border-box;padding:0;margin:0;border:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-left:var(--fdCheckbox_Padding);margin-right:0}.fd-checkbox__text:before,.fd-checkbox__text:after{box-sizing:inherit;font-size:inherit}[dir=rtl] .fd-checkbox__text,.fd-checkbox__text[dir=rtl]{margin-right:var(--fdCheckbox_Padding);margin-left:0}.fd-checkbox:checked+.fd-checkbox__label:before{content:\"\\e05b\"}.fd-checkbox:indeterminate+.fd-checkbox__label:after{content:\"\";width:var(--fdCheckbox_Tristate_Size);height:var(--fdCheckbox_Tristate_Size);background-color:var(--fdCheckbox_Selected_Color);position:absolute;margin-left:var(--fdCheckbox_Tristate_Offset)}.fd-checkbox:indeterminate+.fd-checkbox__label--compact:after{--fdCheckbox_Tristate_Size: var(--fdCheckbox_Tristate_Compact_Size);--fdCheckbox_Tristate_Offset: var(--fdCheckbox_Tristate_Compact_Offset)}[dir=rtl] .fd-checkbox:indeterminate+.fd-checkbox__label:after,.fd-checkbox[dir=rtl]:indeterminate+.fd-checkbox__label:after{margin-left:0;margin-right:var(--fdCheckbox_Tristate_Offset)}.fd-checkbox.is-warning+.fd-checkbox__label,.fd-checkbox.is-alert+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_WarningBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_WarningBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_WarningColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Warning_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_WarningColor);--fdCheckbox_Selected_Color: var(--sapField_TextColor)}.fd-checkbox.is-error+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_InvalidBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_InvalidBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_InvalidColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Error_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_InvalidColor);--fdCheckbox_Selected_Color: var(--sapField_InvalidColor)}.fd-checkbox.is-success+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_SuccessBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_SuccessBorderWidth) solid var(--sapField_SuccessColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Success_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_SuccessColor);--fdCheckbox_Selected_Color: var(--sapField_SuccessColor)}.fd-checkbox.is-information+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_InformationBackground);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--sapField_InformationBorderWidth) var(--fdCheckbox_Warning_Error_Information_Border_Style) var(--sapField_InformationColor);--fdCheckbox_Hover_Shadow: var(--fdCheckbox_Information_State_Shadow);--fdCheckbox_Hover_Border_Color: var(--sapField_InformationColor);--fdCheckbox_Selected_Color: var(--sapField_InformationColor)}.fd-checkbox[readonly]+.fd-checkbox__label,.fd-checkbox.is-readonly+.fd-checkbox__label{--fdCheckbox_Background_Color: var(--sapField_ReadOnly_Background);--fdCheckbox_Hover_Background: var(--fdCheckbox_State_Hover_Background);--fdCheckbox_Border: var(--fdCheckbox_Readonly_Border_Width) var(--fdCheckbox_Readonly_Border_Type) var(--sapField_ReadOnly_BorderColor);--fdCheckbox_Hover_Shadow: none;--fdCheckbox_Hover_Border_Color: var(--sapField_ReadOnly_BorderColor);--fdCheckbox_Selected_Color: var(--sapContent_NonInteractiveIconColor)}.fd-checkbox:focus,.fd-checkbox.is-focus{z-index:5}.fd-checkbox:focus+.fd-checkbox__label,.fd-checkbox.is-focus+.fd-checkbox__label{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);outline-offset:calc(var(--fdCheckbox_Focus_Outline_Offset) - var(--fdCheckbox_Padding));border-radius:var(--fdCheckbox_Outline_Border_Radius)}.fd-checkbox[aria-disabled=true],.fd-checkbox.is-disabled,.fd-checkbox:disabled{opacity:.0001}.fd-checkbox[aria-disabled=true]+.fd-checkbox__label,.fd-checkbox.is-disabled+.fd-checkbox__label,.fd-checkbox:disabled+.fd-checkbox__label{pointer-events:none;opacity:.4}.fd-checkbox--compact+.fd-checkbox__label{--fdCheckbox_Dimensions: var(--fdCheckbox_Compact_Dimensions);--fdCheckbox_Padding: var(--fdCheckbox_Compact_Padding)}.fd-checkbox--compact:focus,.fd-checkbox--compact.is-focus{z-index:5}.fd-checkbox--compact:focus+.fd-checkbox__label,.fd-checkbox--compact.is-focus+.fd-checkbox__label{--fdCheckbox_Outline_Border_Radius: var(--fdCheckbox_Compact_Outline_Border_Radius)}fd-checkbox .fd-checkbox__text:empty{margin:0}fd-checkbox .fd-checkbox__label{-webkit-user-select:none;user-select:none}\n"] }]
205
208
  }], ctorParameters: function () {
206
209
  return [{ type: i0.ElementRef }, { type: undefined, decorators: [{
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-checkbox.mjs","sources":["../../../../../libs/core/src/lib/checkbox/checkbox/fd-checkbox-values.interface.ts","../../../../../libs/core/src/lib/checkbox/checkbox/checkbox.component.ts","../../../../../libs/core/src/lib/checkbox/checkbox/checkbox.component.html","../../../../../libs/core/src/lib/checkbox/checkbox.module.ts","../../../../../libs/core/src/lib/checkbox/fundamental-ngx-core-checkbox.ts"],"sourcesContent":["export interface FdCheckboxValues {\n trueValue?: any;\n falseValue?: any;\n thirdStateValue?: any;\n}\n\nexport const FD_CHECKBOX_VALUES_DEFAULT: Readonly<FdCheckboxValues> = {\n trueValue: true,\n falseValue: false,\n thirdStateValue: null\n};\n","import {\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n Renderer2,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { FdCheckboxValues } from './fd-checkbox-values.interface';\nimport { LIST_ITEM_COMPONENT, ListItemInterface, ContentDensityService } from '@fundamental-ngx/core/utils';\nimport equal from 'fast-deep-equal';\nimport { Subscription } from 'rxjs';\nimport { FormStates, Nullable } from '@fundamental-ngx/core/shared';\nimport { FD_CHECKBOX_VALUES_DEFAULT } from './fd-checkbox-values.interface';\n\nlet checkboxUniqueId = 0;\n\nexport type FdCheckboxTypes = 'checked' | 'unchecked' | 'indeterminate' | 'force-checked';\n\n@Component({\n selector: 'fd-checkbox',\n templateUrl: './checkbox.component.html',\n styleUrls: ['./checkbox.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CheckboxComponent),\n multi: true\n }\n ],\n host: { '[attr.tabindex]': '-1' }\n})\nexport class CheckboxComponent implements ControlValueAccessor, OnInit, OnDestroy {\n /** @hidden */\n @ViewChild('inputElement')\n inputElement: ElementRef<HTMLInputElement>;\n\n /** @hidden */\n @ViewChild('labelElement')\n labelElement: ElementRef;\n\n /** Sets the `aria-label` attribute to the element. */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** Current selection state of the checkbox component */\n @Input()\n set value(value: any) {\n this.writeValue(value);\n }\n get value(): any {\n return this.checkboxValue;\n }\n\n /** Sets the `aria-labelledby` attribute to the element. */\n @Input()\n ariaLabelledBy: Nullable<string>;\n\n /** Sets the `aria-describedby` attribute to the element. */\n @Input()\n ariaDescribedBy: Nullable<string>;\n\n /** sets checkbox tooltip */\n @Input()\n title: Nullable<string>;\n\n /** Sets [id] property of input, binds input with input label using [for] property. */\n @Input()\n inputId = `fd-checkbox-${checkboxUniqueId++}`;\n\n /** State of control, changes visual appearance of control. */\n @Input()\n state?: FormStates;\n\n /** Sets [name] property of input. */\n @Input()\n name: string;\n\n /** Sets text of control label. */\n @Input()\n label: string;\n\n /** Allows to disable/enable control. */\n @Input()\n disabled: boolean;\n\n /** Allows to minimize control to compact mode. */\n @Input()\n compact?: boolean;\n\n /** Enables controls third state. */\n @Input()\n tristate = false;\n\n /** Allows to prevent user from manually selecting controls third state. */\n @Input()\n tristateSelectable = false;\n\n /** Assigns given class to checkbox label element */\n @Input()\n labelClass: string;\n\n /** If it is mandatory field */\n @Input()\n required = false;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** Sets values returned by control. */\n @Input()\n get values(): FdCheckboxValues {\n return this._values;\n }\n set values(checkboxValues: FdCheckboxValues) {\n this._values = { ...FD_CHECKBOX_VALUES_DEFAULT, ...(checkboxValues ?? {}) };\n }\n\n /** @hidden */\n @HostBinding('style.position')\n readonly position = 'relative';\n\n /** @hidden */\n @HostBinding('style.outline')\n readonly outline = 'none';\n\n /** Emits event on focus change */\n @Output() focusChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** @hidden values returned by control. */\n private _values: FdCheckboxValues = { ...FD_CHECKBOX_VALUES_DEFAULT };\n /** Stores current checkbox value. */\n public checkboxValue: any;\n /** Stores current checkbox state. */\n public checkboxState: FdCheckboxTypes;\n\n /** @hidden Reference to callback provided by FormControl.*/\n public onTouched = (): void => {};\n /** @hidden Reference to callback provided by FormControl.*/\n public onValueChange: (value: any) => void = () => {};\n\n /** @hidden Used to define if control is in 'indeterminate' state.*/\n get isIndeterminate(): boolean {\n return this.checkboxState === 'indeterminate';\n }\n\n /** @hidden Used to define if control is in 'checked' / 'unchecked' state. */\n get isChecked(): boolean {\n return this.checkboxState === 'checked' || this.checkboxState === 'force-checked';\n }\n\n /** @hidden */\n constructor(\n public elementRef: ElementRef<Element>,\n @Attribute('tabIndexValue') public tabIndexValue: number = 0,\n private _changeDetectorRef: ChangeDetectorRef,\n private renderer: Renderer2,\n @Optional() private _contentDensityService: ContentDensityService,\n @Optional() @Inject(LIST_ITEM_COMPONENT) private _listItemComponent: ListItemInterface\n ) {\n this.tabIndexValue = tabIndexValue;\n }\n\n /** @hidden */\n ngOnInit(): void {\n if (this.compact === undefined && this._contentDensityService) {\n this._subscriptions.add(\n this._contentDensityService._isCompactDensity.subscribe((isCompact) => {\n this.compact = isCompact;\n this._changeDetectorRef.markForCheck();\n })\n );\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /**\n * @hidden ControlValueAccessor interface\n * - sets new control value\n * - updates control state\n */\n writeValue(value: any): void {\n this.checkboxValue = value;\n this._setState();\n this._detectChanges();\n }\n\n /** @hidden ControlValueAccessor interface method - sets onValueChange callback.*/\n registerOnChange(fn: any): void {\n this.onValueChange = fn;\n }\n\n /** @hidden ControlValueAccessor interface method - sets onTouched callback.*/\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n /** @hidden Called by FormControl - used to disable / enable control.*/\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n this._detectChanges();\n }\n\n /**\n * @hidden\n * Based on current control state:\n * - sets next control value\n * - emits new control value\n * - updates control state based on new control value\n * */\n nextValue(previousValue?: FdCheckboxTypes): void {\n switch (previousValue || this.checkboxState) {\n case 'checked':\n this.checkboxValue = this.values.falseValue;\n break;\n case 'unchecked':\n this.checkboxValue =\n this.tristate && this.tristateSelectable ? this.values.thirdStateValue : this.values.trueValue;\n break;\n case 'indeterminate':\n case 'force-checked':\n this.checkboxValue = this.values.trueValue;\n this.renderer.setProperty(this.inputElement.nativeElement, 'checked', 'true');\n break;\n default:\n this.checkboxValue =\n this.tristate && this.tristateSelectable ? this.values.thirdStateValue : this.values.trueValue;\n break;\n }\n this._setState();\n this.onValueChange(this.checkboxValue);\n this._detectChanges();\n }\n\n /** @hidden handles blur event */\n _onBlur(): void {\n if (typeof this.onTouched === 'function') {\n this.onTouched();\n }\n this.focusChange.emit(false);\n }\n /** @hidden handles focus event */\n _onFocus(): void {\n this.focusChange.emit(true);\n }\n\n /** @hidden handles click on the label associated with native checkbox input */\n _onLabelClick(event: Event): void {\n // We have to stop propagation for click events on the input label.\n // By default, when a user clicks on a label element, a generated click event will be\n // dispatched on the associated input element. This will lead to duplicated \"click\" event dispatched from the component\n event.stopPropagation();\n }\n\n /** @hidden handles click on the native checkbox input */\n _onInputClick(event: MouseEvent): void {\n // When there's a click event dispatched from the input, we have to catch it, process and then re-dispatch it further.\n // This is needed in order to set the value to the component before any external listeners will receive it.\n // Otherwise checkbox might be out of sync.\n event.stopPropagation();\n this.nextValue();\n this.elementRef.nativeElement.dispatchEvent(new MouseEvent(event.type, event));\n }\n\n /** @hidden Based on current control value sets new control state. */\n private _setState(): void {\n if (equal(this.checkboxValue, this.values.trueValue)) {\n this.checkboxState = 'checked';\n } else if (equal(this.checkboxValue, this.values.falseValue)) {\n this.checkboxState = 'unchecked';\n } else if (this.tristate && equal(this.checkboxValue, this.values.thirdStateValue)) {\n this.checkboxState = 'indeterminate';\n } else if (!this.checkboxValue) {\n this.checkboxState = 'unchecked';\n }\n }\n\n /** Method to trigger change detection in component */\n private _detectChanges(): void {\n if (!this._changeDetectorRef['destroyed']) {\n this._changeDetectorRef.detectChanges();\n }\n }\n}\n","<input\n #inputElement\n type=\"checkbox\"\n class=\"fd-checkbox\"\n [id]=\"inputId\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [indeterminate]=\"isIndeterminate\"\n [checked]=\"isChecked\"\n [attr.tabindex]=\"tabIndexValue\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-required]=\"required\"\n [class.fd-checkbox--compact]=\"compact\"\n [class]=\"state ? 'is-' + state : ''\"\n (click)=\"_onInputClick($event)\"\n (blur)=\"_onBlur()\"\n (focus)=\"_onFocus()\"\n/>\n\n<label\n class=\"fd-checkbox__label\"\n #labelElement\n [for]=\"inputId\"\n [class]=\"labelClass\"\n [attr.title]=\"title\"\n [class.fd-checkbox__label--compact]=\"compact\"\n [class.fd-checkbox__label--required]=\"required\"\n (click)=\"_onLabelClick($event)\"\n>\n <div class=\"fd-checkbox__label-container\">\n <ng-container *ngIf=\"label\">\n <span class=\"fd-checkbox__text\">\n {{ label }}\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!label\">\n <span class=\"fd-checkbox__text\">\n <ng-content></ng-content>\n </span>\n </ng-container>\n </div>\n</label>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CheckboxComponent } from './checkbox/checkbox.component';\nimport { FormsModule } from '@angular/forms';\n\n@NgModule({\n declarations: [CheckboxComponent],\n imports: [CommonModule, FormsModule],\n exports: [CheckboxComponent]\n})\nexport class CheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-checkbox.mjs","sources":["../../../../../libs/core/src/lib/checkbox/checkbox/fd-checkbox-values.interface.ts","../../../../../libs/core/src/lib/checkbox/checkbox/checkbox.component.ts","../../../../../libs/core/src/lib/checkbox/checkbox/checkbox.component.html","../../../../../libs/core/src/lib/checkbox/checkbox.module.ts","../../../../../libs/core/src/lib/checkbox/fundamental-ngx-core-checkbox.ts"],"sourcesContent":["export interface FdCheckboxValues {\n trueValue?: any;\n falseValue?: any;\n thirdStateValue?: any;\n}\n\nexport const FD_CHECKBOX_VALUES_DEFAULT: Readonly<FdCheckboxValues> = {\n trueValue: true,\n falseValue: false,\n thirdStateValue: null\n};\n","import {\n Attribute,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostBinding,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n Renderer2,\n ViewChild,\n ViewEncapsulation\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { FdCheckboxValues } from './fd-checkbox-values.interface';\nimport { LIST_ITEM_COMPONENT, ListItemInterface, ContentDensityService } from '@fundamental-ngx/core/utils';\nimport equal from 'fast-deep-equal';\nimport { Subscription } from 'rxjs';\nimport { FormStates, Nullable } from '@fundamental-ngx/core/shared';\nimport { registerFormItemControl, FormItemControl } from '@fundamental-ngx/core/form';\nimport { FD_CHECKBOX_VALUES_DEFAULT } from './fd-checkbox-values.interface';\n\nlet checkboxUniqueId = 0;\n\nexport type FdCheckboxTypes = 'checked' | 'unchecked' | 'indeterminate' | 'force-checked';\n\n@Component({\n selector: 'fd-checkbox',\n templateUrl: './checkbox.component.html',\n styleUrls: ['./checkbox.component.scss'],\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => CheckboxComponent),\n multi: true\n },\n registerFormItemControl(CheckboxComponent)\n ],\n host: { '[attr.tabindex]': '-1' }\n})\nexport class CheckboxComponent implements ControlValueAccessor, OnInit, OnDestroy, FormItemControl {\n /** @hidden */\n @ViewChild('inputElement')\n inputElement: ElementRef<HTMLInputElement>;\n\n /** @hidden */\n @ViewChild('labelElement')\n labelElement: ElementRef;\n\n /** Sets the `aria-label` attribute to the element. */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** Current selection state of the checkbox component */\n @Input()\n set value(value: any) {\n this.writeValue(value);\n }\n get value(): any {\n return this.checkboxValue;\n }\n\n /** Sets the `aria-labelledby` attribute to the element. */\n @Input()\n ariaLabelledBy: Nullable<string>;\n\n /** Sets the `aria-describedby` attribute to the element. */\n @Input()\n ariaDescribedBy: Nullable<string>;\n\n /** sets checkbox tooltip */\n @Input()\n title: Nullable<string>;\n\n /** Sets [id] property of input, binds input with input label using [for] property. */\n @Input()\n inputId = `fd-checkbox-${checkboxUniqueId++}`;\n\n /** State of control, changes visual appearance of control. */\n @Input()\n state?: FormStates;\n\n /** Sets [name] property of input. */\n @Input()\n name: string;\n\n /** Sets text of control label. */\n @Input()\n label: string;\n\n /** Allows to disable/enable control. */\n @Input()\n disabled: boolean;\n\n /** Allows to minimize control to compact mode. */\n @Input()\n compact?: boolean;\n\n /** Enables controls third state. */\n @Input()\n tristate = false;\n\n /** Allows to prevent user from manually selecting controls third state. */\n @Input()\n tristateSelectable = false;\n\n /** Assigns given class to checkbox label element */\n @Input()\n labelClass: string;\n\n /** If it is mandatory field */\n @Input()\n required = false;\n\n /** @hidden */\n private _subscriptions = new Subscription();\n\n /** Sets values returned by control. */\n @Input()\n get values(): FdCheckboxValues {\n return this._values;\n }\n set values(checkboxValues: FdCheckboxValues) {\n this._values = { ...FD_CHECKBOX_VALUES_DEFAULT, ...(checkboxValues ?? {}) };\n }\n\n /** @hidden */\n @HostBinding('style.position')\n readonly position = 'relative';\n\n /** @hidden */\n @HostBinding('style.outline')\n readonly outline = 'none';\n\n /** Emits event on focus change */\n @Output() focusChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n /** @hidden values returned by control. */\n private _values: FdCheckboxValues = { ...FD_CHECKBOX_VALUES_DEFAULT };\n /** Stores current checkbox value. */\n public checkboxValue: any;\n /** Stores current checkbox state. */\n public checkboxState: FdCheckboxTypes;\n\n /** @hidden Reference to callback provided by FormControl.*/\n public onTouched = (): void => {};\n /** @hidden Reference to callback provided by FormControl.*/\n public onValueChange: (value: any) => void = () => {};\n\n /** @hidden Used to define if control is in 'indeterminate' state.*/\n get isIndeterminate(): boolean {\n return this.checkboxState === 'indeterminate';\n }\n\n /** @hidden Used to define if control is in 'checked' / 'unchecked' state. */\n get isChecked(): boolean {\n return this.checkboxState === 'checked' || this.checkboxState === 'force-checked';\n }\n\n /** @hidden */\n constructor(\n public elementRef: ElementRef<Element>,\n @Attribute('tabIndexValue') public tabIndexValue: number = 0,\n private _changeDetectorRef: ChangeDetectorRef,\n private renderer: Renderer2,\n @Optional() private _contentDensityService: ContentDensityService,\n @Optional() @Inject(LIST_ITEM_COMPONENT) private _listItemComponent: ListItemInterface\n ) {\n this.tabIndexValue = tabIndexValue;\n }\n\n /** @hidden */\n ngOnInit(): void {\n if (this.compact === undefined && this._contentDensityService) {\n this._subscriptions.add(\n this._contentDensityService._isCompactDensity.subscribe((isCompact) => {\n this.compact = isCompact;\n this._changeDetectorRef.markForCheck();\n })\n );\n }\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this._subscriptions.unsubscribe();\n }\n\n /**\n * @hidden ControlValueAccessor interface\n * - sets new control value\n * - updates control state\n */\n writeValue(value: any): void {\n this.checkboxValue = value;\n this._setState();\n this._detectChanges();\n }\n\n /** @hidden ControlValueAccessor interface method - sets onValueChange callback.*/\n registerOnChange(fn: any): void {\n this.onValueChange = fn;\n }\n\n /** @hidden ControlValueAccessor interface method - sets onTouched callback.*/\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n /** @hidden Called by FormControl - used to disable / enable control.*/\n setDisabledState(disabled: boolean): void {\n this.disabled = disabled;\n this._detectChanges();\n }\n\n /**\n * @hidden\n * Based on current control state:\n * - sets next control value\n * - emits new control value\n * - updates control state based on new control value\n * */\n nextValue(previousValue?: FdCheckboxTypes): void {\n switch (previousValue || this.checkboxState) {\n case 'checked':\n this.checkboxValue = this.values.falseValue;\n break;\n case 'unchecked':\n this.checkboxValue =\n this.tristate && this.tristateSelectable ? this.values.thirdStateValue : this.values.trueValue;\n break;\n case 'indeterminate':\n case 'force-checked':\n this.checkboxValue = this.values.trueValue;\n this.renderer.setProperty(this.inputElement.nativeElement, 'checked', 'true');\n break;\n default:\n this.checkboxValue =\n this.tristate && this.tristateSelectable ? this.values.thirdStateValue : this.values.trueValue;\n break;\n }\n this._setState();\n this.onValueChange(this.checkboxValue);\n this._detectChanges();\n }\n\n /** @hidden handles blur event */\n _onBlur(): void {\n if (typeof this.onTouched === 'function') {\n this.onTouched();\n }\n this.focusChange.emit(false);\n }\n /** @hidden handles focus event */\n _onFocus(): void {\n this.focusChange.emit(true);\n }\n\n /** @hidden handles click on the label associated with native checkbox input */\n _onLabelClick(event: Event): void {\n // We have to stop propagation for click events on the input label.\n // By default, when a user clicks on a label element, a generated click event will be\n // dispatched on the associated input element. This will lead to duplicated \"click\" event dispatched from the component\n event.stopPropagation();\n }\n\n /** @hidden handles click on the native checkbox input */\n _onInputClick(event: MouseEvent): void {\n // When there's a click event dispatched from the input, we have to catch it, process and then re-dispatch it further.\n // This is needed in order to set the value to the component before any external listeners will receive it.\n // Otherwise checkbox might be out of sync.\n event.stopPropagation();\n this.nextValue();\n this.elementRef.nativeElement.dispatchEvent(new MouseEvent(event.type, event));\n }\n\n /** @hidden Based on current control value sets new control state. */\n private _setState(): void {\n if (equal(this.checkboxValue, this.values.trueValue)) {\n this.checkboxState = 'checked';\n } else if (equal(this.checkboxValue, this.values.falseValue)) {\n this.checkboxState = 'unchecked';\n } else if (this.tristate && equal(this.checkboxValue, this.values.thirdStateValue)) {\n this.checkboxState = 'indeterminate';\n } else if (!this.checkboxValue) {\n this.checkboxState = 'unchecked';\n }\n }\n\n /** Method to trigger change detection in component */\n private _detectChanges(): void {\n if (!this._changeDetectorRef['destroyed']) {\n this._changeDetectorRef.detectChanges();\n }\n }\n}\n","<input\n #inputElement\n type=\"checkbox\"\n class=\"fd-checkbox\"\n [id]=\"inputId\"\n [name]=\"name\"\n [disabled]=\"disabled\"\n [indeterminate]=\"isIndeterminate\"\n [checked]=\"isChecked\"\n [attr.tabindex]=\"tabIndexValue\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-describedby]=\"ariaDescribedBy\"\n [attr.aria-disabled]=\"disabled\"\n [attr.aria-required]=\"required\"\n [class.fd-checkbox--compact]=\"compact\"\n [class]=\"state ? 'is-' + state : ''\"\n (click)=\"_onInputClick($event)\"\n (blur)=\"_onBlur()\"\n (focus)=\"_onFocus()\"\n/>\n\n<label\n class=\"fd-checkbox__label\"\n #labelElement\n [for]=\"inputId\"\n [class]=\"labelClass\"\n [attr.title]=\"title\"\n [class.fd-checkbox__label--compact]=\"compact\"\n [class.fd-checkbox__label--required]=\"required\"\n (click)=\"_onLabelClick($event)\"\n>\n <div class=\"fd-checkbox__label-container\">\n <ng-container *ngIf=\"label\">\n <span class=\"fd-checkbox__text\">\n {{ label }}\n </span>\n </ng-container>\n\n <ng-container *ngIf=\"!label\">\n <span class=\"fd-checkbox__text\">\n <ng-content></ng-content>\n </span>\n </ng-container>\n </div>\n</label>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CheckboxComponent } from './checkbox/checkbox.component';\nimport { FormsModule } from '@angular/forms';\n\n@NgModule({\n declarations: [CheckboxComponent],\n imports: [CommonModule, FormsModule],\n exports: [CheckboxComponent]\n})\nexport class CheckboxModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;;;;;;;;MAMa,0BAA0B,GAA+B;IAClE,SAAS,EAAE,IAAI;IACf,UAAU,EAAE,KAAK;IACjB,eAAe,EAAE,IAAI;;;ACmBzB,IAAI,gBAAgB,GAAG,CAAC,CAAC;MAoBZ,iBAAiB;;IAwH1B,YACW,UAA+B,EACH,gBAAwB,CAAC,EACpD,kBAAqC,EACrC,QAAmB,EACP,sBAA6C,EAChB,kBAAqC;QAL/E,eAAU,GAAV,UAAU,CAAqB;QACH,kBAAa,GAAb,aAAa,CAAY;QACpD,uBAAkB,GAAlB,kBAAkB,CAAmB;QACrC,aAAQ,GAAR,QAAQ,CAAW;QACP,2BAAsB,GAAtB,sBAAsB,CAAuB;QAChB,uBAAkB,GAAlB,kBAAkB,CAAmB;;QA1F1F,YAAO,GAAG,eAAe,gBAAgB,EAAE,EAAE,CAAC;;QAwB9C,aAAQ,GAAG,KAAK,CAAC;;QAIjB,uBAAkB,GAAG,KAAK,CAAC;;QAQ3B,aAAQ,GAAG,KAAK,CAAC;;QAGT,mBAAc,GAAG,IAAI,YAAY,EAAE,CAAC;;QAanC,aAAQ,GAAG,UAAU,CAAC;;QAItB,YAAO,GAAG,MAAM,CAAC;;QAGhB,gBAAW,GAA0B,IAAI,YAAY,EAAW,CAAC;;QAGnE,YAAO,qBAA0B,0BAA0B,CAAE,CAAC;;QAO/D,cAAS,GAAG,SAAc,CAAC;;QAE3B,kBAAa,GAAyB,SAAQ,CAAC;QAqBlD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;KACtC;;IAnHD,IACI,KAAK,CAAC,KAAU;QAChB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;KAC1B;IACD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,aAAa,CAAC;KAC7B;;IA0DD,IACI,MAAM;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;KACvB;IACD,IAAI,MAAM,CAAC,cAAgC;QACvC,IAAI,CAAC,OAAO,mCAAQ,0BAA0B,IAAM,cAAc,aAAd,cAAc,cAAd,cAAc,GAAI,EAAE,EAAG,CAAC;KAC/E;;IA0BD,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,aAAa,KAAK,eAAe,CAAC;KACjD;;IAGD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,IAAI,CAAC,aAAa,KAAK,eAAe,CAAC;KACrF;;IAeD,QAAQ;QACJ,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,sBAAsB,EAAE;YAC3D,IAAI,CAAC,cAAc,CAAC,GAAG,CACnB,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,SAAS;gBAC9D,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;gBACzB,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC;aAC1C,CAAC,CACL,CAAC;SACL;KACJ;;IAGD,WAAW;QACP,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;KACrC;;;;;;IAOD,UAAU,CAAC,KAAU;QACjB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,cAAc,EAAE,CAAC;KACzB;;IAGD,gBAAgB,CAAC,EAAO;QACpB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;KAC3B;;IAGD,iBAAiB,CAAC,EAAO;QACrB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACvB;;IAGD,gBAAgB,CAAC,QAAiB;QAC9B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,cAAc,EAAE,CAAC;KACzB;;;;;;;;IASD,SAAS,CAAC,aAA+B;QACrC,QAAQ,aAAa,IAAI,IAAI,CAAC,aAAa;YACvC,KAAK,SAAS;gBACV,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC;gBAC5C,MAAM;YACV,KAAK,WAAW;gBACZ,IAAI,CAAC,aAAa;oBACd,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;gBACnG,MAAM;YACV,KAAK,eAAe,CAAC;YACrB,KAAK,eAAe;gBAChB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;gBAC3C,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBAC9E,MAAM;YACV;gBACI,IAAI,CAAC,aAAa;oBACd,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC;gBACnG,MAAM;SACb;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACvC,IAAI,CAAC,cAAc,EAAE,CAAC;KACzB;;IAGD,OAAO;QACH,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,UAAU,EAAE;YACtC,IAAI,CAAC,SAAS,EAAE,CAAC;SACpB;QACD,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChC;;IAED,QAAQ;QACJ,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC/B;;IAGD,aAAa,CAAC,KAAY;;;;QAItB,KAAK,CAAC,eAAe,EAAE,CAAC;KAC3B;;IAGD,aAAa,CAAC,KAAiB;;;;QAI3B,KAAK,CAAC,eAAe,EAAE,CAAC;QACxB,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;KAClF;;IAGO,SAAS;QACb,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE;YAClD,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;SAClC;aAAM,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE;YAC1D,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC;SACpC;aAAM,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE;YAChF,IAAI,CAAC,aAAa,GAAG,eAAe,CAAC;SACxC;aAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YAC5B,IAAI,CAAC,aAAa,GAAG,WAAW,CAAC;SACpC;KACJ;;IAGO,cAAc;QAClB,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE;YACvC,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,CAAC;SAC3C;KACJ;;8GA9PQ,iBAAiB,4CA0HX,eAAe,6IAIN,mBAAmB;kGA9HlC,iBAAiB,4jBAVf;QACP;YACI,OAAO,EAAE,iBAAiB;YAC1B,WAAW,EAAE,UAAU,CAAC,MAAM,iBAAiB,CAAC;YAChD,KAAK,EAAE,IAAI;SACd;QACD,uBAAuB,CAAC,iBAAiB,CAAC;KAC7C,uOC7CL,q1CA8CA;2FDEa,iBAAiB;kBAhB7B,SAAS;+BACI,aAAa,iBAGR,iBAAiB,CAAC,IAAI,mBACpB,uBAAuB,CAAC,MAAM,aACpC;wBACP;4BACI,OAAO,EAAE,iBAAiB;4BAC1B,WAAW,EAAE,UAAU,CAAC,uBAAuB,CAAC;4BAChD,KAAK,EAAE,IAAI;yBACd;wBACD,uBAAuB,mBAAmB;qBAC7C,QACK,EAAE,iBAAiB,EAAE,IAAI,EAAE;;;8BA4H5B,SAAS;+BAAC,eAAe;;8BAGzB,QAAQ;;8BACR,QAAQ;;8BAAI,MAAM;+BAAC,mBAAmB;;yBA3H3C,YAAY;sBADX,SAAS;uBAAC,cAAc;gBAKzB,YAAY;sBADX,SAAS;uBAAC,cAAc;gBAKzB,SAAS;sBADR,KAAK;gBAKF,KAAK;sBADR,KAAK;gBAUN,cAAc;sBADb,KAAK;gBAKN,eAAe;sBADd,KAAK;gBAKN,KAAK;sBADJ,KAAK;gBAKN,OAAO;sBADN,KAAK;gBAKN,KAAK;sBADJ,KAAK;gBAKN,IAAI;sBADH,KAAK;gBAKN,KAAK;sBADJ,KAAK;gBAKN,QAAQ;sBADP,KAAK;gBAKN,OAAO;sBADN,KAAK;gBAKN,QAAQ;sBADP,KAAK;gBAKN,kBAAkB;sBADjB,KAAK;gBAKN,UAAU;sBADT,KAAK;gBAKN,QAAQ;sBADP,KAAK;gBAQF,MAAM;sBADT,KAAK;gBAUG,QAAQ;sBADhB,WAAW;uBAAC,gBAAgB;gBAKpB,OAAO;sBADf,WAAW;uBAAC,eAAe;gBAIlB,WAAW;sBAApB,MAAM;;;MErIE,cAAc;;2GAAd,cAAc;4GAAd,cAAc,iBAJR,iBAAiB,aACtB,YAAY,EAAE,WAAW,aACzB,iBAAiB;4GAElB,cAAc,YAHd,CAAC,YAAY,EAAE,WAAW,CAAC;2FAG3B,cAAc;kBAL1B,QAAQ;mBAAC;oBACN,YAAY,EAAE,CAAC,iBAAiB,CAAC;oBACjC,OAAO,EAAE,CAAC,YAAY,EAAE,WAAW,CAAC;oBACpC,OAAO,EAAE,CAAC,iBAAiB,CAAC;iBAC/B;;;ACTD;;;;;;"}