@fundamental-ngx/platform 0.48.0-rc.8 → 0.48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (510) hide show
  1. package/approval-flow/approval-flow-node/approval-flow-node.component.d.ts +0 -2
  2. package/button/button.component.d.ts +7 -8
  3. package/dynamic-page/dynamic-page.component.d.ts +24 -15
  4. package/dynamic-page/dynamic-page.tokens.d.ts +3 -0
  5. package/dynamic-page/index.d.ts +2 -1
  6. package/dynamic-page/platform-dynamic-page.interface.d.ts +22 -0
  7. package/esm2022/approval-flow/approval-flow-add-node/approval-flow-add-node.component.mjs +4 -4
  8. package/esm2022/approval-flow/approval-flow-approver-details/approval-flow-approver-details.component.mjs +4 -4
  9. package/esm2022/approval-flow/approval-flow-messages/approval-flow-messages.component.mjs +3 -3
  10. package/esm2022/approval-flow/approval-flow-node/approval-flow-drop-zone.directive.mjs +3 -3
  11. package/esm2022/approval-flow/approval-flow-node/approval-flow-node.component.mjs +5 -7
  12. package/esm2022/approval-flow/approval-flow-select-type/approval-flow-select-type.component.mjs +3 -3
  13. package/esm2022/approval-flow/approval-flow-team-list/approval-flow-team-list.component.mjs +3 -3
  14. package/esm2022/approval-flow/approval-flow-toolbar-actions/approval-flow-toolbar-actions.component.mjs +3 -3
  15. package/esm2022/approval-flow/approval-flow-user-details/approval-flow-user-details.component.mjs +3 -3
  16. package/esm2022/approval-flow/approval-flow-user-list/approval-flow-user-list.component.mjs +3 -3
  17. package/esm2022/approval-flow/approval-flow.component.mjs +5 -5
  18. package/esm2022/approval-flow/approval-flow.module.mjs +4 -4
  19. package/esm2022/approval-flow/services/approval-flow-add-node-view.service.mjs +3 -3
  20. package/esm2022/button/button.component.mjs +14 -15
  21. package/esm2022/button/button.module.mjs +4 -4
  22. package/esm2022/dynamic-page/directives/dynamic-page-header-subtitle.directive.mjs +3 -3
  23. package/esm2022/dynamic-page/directives/dynamic-page-header-title.directive.mjs +3 -3
  24. package/esm2022/dynamic-page/dynamic-page-content/dynamic-page-content-host.component.mjs +3 -3
  25. package/esm2022/dynamic-page/dynamic-page-content/dynamic-page-content.component.mjs +3 -3
  26. package/esm2022/dynamic-page/dynamic-page-footer/dynamic-page-footer.component.mjs +3 -3
  27. package/esm2022/dynamic-page/dynamic-page-header/actions/global-actions/dynamic-page-global-actions.component.mjs +3 -3
  28. package/esm2022/dynamic-page/dynamic-page-header/actions/layout-actions/dynamic-page-layout-actions.component.mjs +3 -3
  29. package/esm2022/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +3 -3
  30. package/esm2022/dynamic-page/dynamic-page-header/key-info/dynamic-page-key-info.component.mjs +3 -3
  31. package/esm2022/dynamic-page/dynamic-page-header/title/dynamic-page-title-image.component.mjs +3 -3
  32. package/esm2022/dynamic-page/dynamic-page-header/title/dynamic-page-title.component.mjs +3 -3
  33. package/esm2022/dynamic-page/dynamic-page.component.mjs +48 -35
  34. package/esm2022/dynamic-page/dynamic-page.config.mjs +3 -3
  35. package/esm2022/dynamic-page/dynamic-page.module.mjs +4 -4
  36. package/esm2022/dynamic-page/dynamic-page.tokens.mjs +3 -0
  37. package/esm2022/dynamic-page/index.mjs +3 -2
  38. package/esm2022/dynamic-page/platform-dynamic-page.interface.mjs +2 -0
  39. package/esm2022/feed-input/feed-input.component.mjs +6 -6
  40. package/esm2022/feed-input/feed-input.module.mjs +4 -4
  41. package/esm2022/form/auto-complete/auto-complete.directive.mjs +3 -3
  42. package/esm2022/form/auto-complete/auto-complete.module.mjs +4 -4
  43. package/esm2022/form/checkbox/checkbox.component.mjs +11 -43
  44. package/esm2022/form/checkbox/checkbox.module.mjs +4 -4
  45. package/esm2022/form/checkbox-group/checkbox-group.component.mjs +21 -63
  46. package/esm2022/form/checkbox-group/checkbox-group.module.mjs +4 -4
  47. package/esm2022/form/combobox/combobox/combobox.component.mjs +33 -63
  48. package/esm2022/form/combobox/combobox-mobile/combobox/combobox-mobile.component.mjs +15 -22
  49. package/esm2022/form/combobox/combobox-mobile/combobox-mobile.module.mjs +4 -4
  50. package/esm2022/form/combobox/combobox.config.mjs +3 -3
  51. package/esm2022/form/combobox/combobox.module.mjs +4 -4
  52. package/esm2022/form/combobox/commons/base-combobox.mjs +24 -58
  53. package/esm2022/form/combobox/directives/combobox-item.directive.mjs +15 -15
  54. package/esm2022/form/date-picker/date-picker.component.mjs +21 -57
  55. package/esm2022/form/date-picker/date-picker.module.mjs +4 -4
  56. package/esm2022/form/datetime-picker/datetime-picker.component.mjs +22 -60
  57. package/esm2022/form/datetime-picker/datetime-picker.module.mjs +4 -4
  58. package/esm2022/form/form-generator/base-dynamic-form-generator-control.mjs +3 -3
  59. package/esm2022/form/form-generator/controls/dynamic-form-generator-checkbox/dynamic-form-generator-checkbox.component.mjs +5 -9
  60. package/esm2022/form/form-generator/controls/dynamic-form-generator-datepicker/dynamic-form-generator-datepicker.component.mjs +5 -9
  61. package/esm2022/form/form-generator/controls/dynamic-form-generator-editor/dynamic-form-generator-editor.component.mjs +5 -9
  62. package/esm2022/form/form-generator/controls/dynamic-form-generator-input/dynamic-form-generator-input.component.mjs +5 -9
  63. package/esm2022/form/form-generator/controls/dynamic-form-generator-multi-input/dynamic-form-generator-multi-input.component.mjs +5 -9
  64. package/esm2022/form/form-generator/controls/dynamic-form-generator-object-status/dynamic-form-generator-object-status.component.mjs +4 -4
  65. package/esm2022/form/form-generator/controls/dynamic-form-generator-radio/dynamic-form-generator-radio.component.mjs +5 -9
  66. package/esm2022/form/form-generator/controls/dynamic-form-generator-select/dynamic-form-generator-select.component.mjs +5 -9
  67. package/esm2022/form/form-generator/controls/dynamic-form-generator-switch/dynamic-form-generator-switch.component.mjs +5 -9
  68. package/esm2022/form/form-generator/dynamic-form-control-field.directive.mjs +3 -3
  69. package/esm2022/form/form-generator/dynamic-form-control.directive.mjs +3 -3
  70. package/esm2022/form/form-generator/fdp-form-generator.module.mjs +4 -4
  71. package/esm2022/form/form-generator/form-generator/form-generator.component.mjs +27 -13
  72. package/esm2022/form/form-generator/form-generator-components-accessor.service.mjs +3 -3
  73. package/esm2022/form/form-generator/form-generator-field/form-generator-field.component.mjs +3 -3
  74. package/esm2022/form/form-generator/form-generator.service.mjs +11 -16
  75. package/esm2022/form/form-generator/interfaces/dynamic-form-item.mjs +1 -1
  76. package/esm2022/form/form-generator/pipes/get-hint-options.pipe.mjs +3 -3
  77. package/esm2022/form/form-generator/pipes/get-ordered-form-controls.pipe.mjs +3 -3
  78. package/esm2022/form/form-group/fdp-form.module.mjs +4 -4
  79. package/esm2022/form/form-group/form-field/form-field.component.mjs +40 -47
  80. package/esm2022/form/form-group/form-field-error/form-field-error-description.directive.mjs +3 -3
  81. package/esm2022/form/form-group/form-field-error/form-field-error-heading.directive.mjs +3 -3
  82. package/esm2022/form/form-group/form-field-error/form-field-error.directive.mjs +3 -3
  83. package/esm2022/form/form-group/form-field-extras/form-field-extras.component.mjs +3 -3
  84. package/esm2022/form/form-group/form-field-group/form-field-group.component.mjs +4 -4
  85. package/esm2022/form/form-group/form-group-header/form-group-header.component.mjs +3 -3
  86. package/esm2022/form/form-group/form-group.component.mjs +40 -50
  87. package/esm2022/form/form-group/pipes/field-group-row-value.pipe.mjs +3 -3
  88. package/esm2022/form/form-group/services/form-field-layout.service.mjs +3 -3
  89. package/esm2022/form/input/fdp-input.module.mjs +4 -4
  90. package/esm2022/form/input/input.component.mjs +16 -48
  91. package/esm2022/form/input-group/addon-body.component.mjs +4 -5
  92. package/esm2022/form/input-group/addon.component.mjs +3 -3
  93. package/esm2022/form/input-group/input-group.component.mjs +13 -46
  94. package/esm2022/form/input-group/input-group.config.mjs +3 -3
  95. package/esm2022/form/input-group/input-group.module.mjs +4 -4
  96. package/esm2022/form/input-group/input.component.mjs +3 -3
  97. package/esm2022/form/input-message-group-with-template/input-message-group-with-template.component.mjs +3 -3
  98. package/esm2022/form/multi-combobox/commons/base-multi-combobox.mjs +64 -102
  99. package/esm2022/form/multi-combobox/multi-combobox/multi-combobox.component.mjs +25 -71
  100. package/esm2022/form/multi-combobox/multi-combobox-mobile/multi-combobox/multi-combobox-mobile.component.mjs +18 -26
  101. package/esm2022/form/multi-combobox/multi-combobox-mobile/multi-combobox-mobile.module.mjs +4 -4
  102. package/esm2022/form/multi-combobox/multi-combobox.config.mjs +3 -3
  103. package/esm2022/form/multi-combobox/multi-combobox.interface.mjs +1 -1
  104. package/esm2022/form/multi-combobox/multi-combobox.module.mjs +4 -4
  105. package/esm2022/form/multi-input/base-multi-input.mjs +43 -83
  106. package/esm2022/form/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +13 -21
  107. package/esm2022/form/multi-input/multi-input-mobile/multi-input-mobile.module.mjs +4 -4
  108. package/esm2022/form/multi-input/multi-input.component.mjs +32 -91
  109. package/esm2022/form/multi-input/multi-input.config.mjs +3 -3
  110. package/esm2022/form/multi-input/multi-input.module.mjs +4 -4
  111. package/esm2022/form/radio-group/radio/radio.component.mjs +12 -44
  112. package/esm2022/form/radio-group/radio-group.component.mjs +32 -74
  113. package/esm2022/form/radio-group/radio-group.module.mjs +4 -4
  114. package/esm2022/form/select/commons/base-select.mjs +59 -101
  115. package/esm2022/form/select/select/select.component.mjs +17 -60
  116. package/esm2022/form/select/select.config.mjs +3 -3
  117. package/esm2022/form/select/select.module.mjs +4 -4
  118. package/esm2022/form/step-input/base.step-input.mjs +72 -85
  119. package/esm2022/form/step-input/number/number-step-input.component.mjs +14 -53
  120. package/esm2022/form/step-input/step-input-action-button.mjs +9 -13
  121. package/esm2022/form/step-input/step-input-control.directive.mjs +3 -3
  122. package/esm2022/form/step-input/step-input-decrement.directive.mjs +9 -13
  123. package/esm2022/form/step-input/step-input-increment.directive.mjs +9 -13
  124. package/esm2022/form/step-input/step-input.config.mjs +3 -3
  125. package/esm2022/form/step-input/step-input.module.mjs +4 -4
  126. package/esm2022/form/switch/switch/switch.component.mjs +12 -49
  127. package/esm2022/form/switch/switch/switch.config.mjs +3 -3
  128. package/esm2022/form/switch/switch.module.mjs +4 -4
  129. package/esm2022/form/text-area/text-area.component.mjs +14 -45
  130. package/esm2022/form/text-area/text-area.config.mjs +3 -3
  131. package/esm2022/form/text-area/text-area.module.mjs +4 -4
  132. package/esm2022/form/time-picker/time-picker.component.mjs +11 -42
  133. package/esm2022/form/time-picker/time-picker.module.mjs +4 -4
  134. package/esm2022/fundamental-ngx.module.mjs +4 -4
  135. package/esm2022/icon-tab-bar/components/closable-icon-tab-bar.class.mjs +6 -6
  136. package/esm2022/icon-tab-bar/components/icon-tab-bar-base.class.mjs +85 -90
  137. package/esm2022/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.mjs +21 -9
  138. package/esm2022/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.mjs +26 -9
  139. package/esm2022/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.mjs +40 -26
  140. package/esm2022/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.mjs +76 -0
  141. package/esm2022/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.mjs +28 -16
  142. package/esm2022/icon-tab-bar/components/popovers/icon-tab-bar-popover/icon-tab-bar-popover.component.mjs +14 -5
  143. package/esm2022/icon-tab-bar/components/popovers/icon-tab-bar-popover-base.class.mjs +3 -3
  144. package/esm2022/icon-tab-bar/components/popovers/text-type-popover/text-type-popover.component.mjs +5 -5
  145. package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-container.directive.mjs +12 -21
  146. package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-item.directive.mjs +10 -12
  147. package/esm2022/icon-tab-bar/directives/dnd/icon-bar-dnd-list.directive.mjs +10 -11
  148. package/esm2022/icon-tab-bar/directives/icon-tab-bar-free-content.directive.mjs +14 -0
  149. package/esm2022/icon-tab-bar/icon-tab-bar.component.mjs +208 -27
  150. package/esm2022/icon-tab-bar/icon-tab-bar.module.mjs +19 -9
  151. package/esm2022/icon-tab-bar/index.mjs +3 -1
  152. package/esm2022/icon-tab-bar/interfaces/tab-config.interface.mjs +1 -1
  153. package/esm2022/info-label/info-label.component.mjs +6 -4
  154. package/esm2022/info-label/info-label.module.mjs +4 -4
  155. package/esm2022/link/link.component.mjs +15 -23
  156. package/esm2022/link/link.module.mjs +4 -4
  157. package/esm2022/list/action-list-item/action-list-item.component.mjs +5 -5
  158. package/esm2022/list/action-list-item/action-list-item.module.mjs +4 -4
  159. package/esm2022/list/base-list-item.mjs +20 -22
  160. package/esm2022/list/display-list-item/display-list-item.component.mjs +5 -5
  161. package/esm2022/list/display-list-item/display-list-item.module.mjs +4 -4
  162. package/esm2022/list/free-content-list-item/free-content-list-item.component.mjs +5 -5
  163. package/esm2022/list/list-group-footer.component.mjs +5 -5
  164. package/esm2022/list/list-group-header.component.mjs +7 -7
  165. package/esm2022/list/list.component.mjs +25 -66
  166. package/esm2022/list/list.config.mjs +3 -3
  167. package/esm2022/list/list.module.mjs +4 -4
  168. package/esm2022/list/load-more-content.directive.mjs +3 -3
  169. package/esm2022/list/object-list-item/object-list-item-row.component.mjs +6 -6
  170. package/esm2022/list/object-list-item/object-list-item.component.mjs +5 -5
  171. package/esm2022/list/object-list-item/object-list-item.module.mjs +4 -4
  172. package/esm2022/list/standard-list-item/standard-list-item.component.mjs +5 -5
  173. package/esm2022/list/standard-list-item/standard-list-item.module.mjs +4 -4
  174. package/esm2022/menu/menu-item.component.mjs +5 -5
  175. package/esm2022/menu/menu-trigger.directive.mjs +3 -3
  176. package/esm2022/menu/menu.component.mjs +5 -6
  177. package/esm2022/menu/menu.module.mjs +4 -4
  178. package/esm2022/menu-button/menu-button.component.mjs +14 -9
  179. package/esm2022/menu-button/menu-button.module.mjs +4 -4
  180. package/esm2022/message-popover/components/message-popover-form-wrapper/message-popover-form-wrapper.component.mjs +11 -14
  181. package/esm2022/message-popover/components/message-view/message-view.component.mjs +4 -4
  182. package/esm2022/message-popover/directives/message-popover-form-item.directive.mjs +3 -3
  183. package/esm2022/message-popover/message-popover.component.mjs +53 -54
  184. package/esm2022/message-popover/models/message-popover-wrapper.interface.mjs +1 -1
  185. package/esm2022/message-popover/platform-message-popover.module.mjs +4 -4
  186. package/esm2022/object-marker/object-marker.component.mjs +10 -5
  187. package/esm2022/object-marker/object-marker.module.mjs +4 -4
  188. package/esm2022/object-status/object-status.component.mjs +13 -8
  189. package/esm2022/object-status/object-status.module.mjs +4 -4
  190. package/esm2022/page-footer/page-footer.component.mjs +8 -10
  191. package/esm2022/page-footer/page-footer.module.mjs +4 -4
  192. package/esm2022/panel/panel-actions.component.mjs +3 -3
  193. package/esm2022/panel/panel-content/panel-content.component.mjs +3 -3
  194. package/esm2022/panel/panel.component.mjs +8 -9
  195. package/esm2022/panel/panel.config.mjs +3 -3
  196. package/esm2022/panel/panel.module.mjs +4 -4
  197. package/esm2022/search-field/search-field-mobile/search-field/search-field-mobile.component.mjs +12 -22
  198. package/esm2022/search-field/search-field.component.mjs +36 -42
  199. package/esm2022/search-field/search-field.module.mjs +4 -4
  200. package/esm2022/settings-generator/controls/theme-selector-list/theme-selector-list.component.mjs +6 -6
  201. package/esm2022/settings-generator/default-config.mjs +2 -2
  202. package/esm2022/settings-generator/layouts/base-settings-generator-layout.mjs +3 -3
  203. package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-icon/settings-generator-sidebar-icon.component.mjs +3 -3
  204. package/esm2022/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-layout.component.mjs +3 -3
  205. package/esm2022/settings-generator/models/settings.model.mjs +1 -1
  206. package/esm2022/settings-generator/settings-generator-content/settings-generator-content.component.mjs +34 -28
  207. package/esm2022/settings-generator/settings-generator-content/settings-generator-section/settings-generator-section.component.mjs +4 -5
  208. package/esm2022/settings-generator/settings-generator-layout-accessor.service.mjs +3 -3
  209. package/esm2022/settings-generator/settings-generator.component.mjs +6 -6
  210. package/esm2022/settings-generator/settings-generator.module.mjs +4 -4
  211. package/esm2022/settings-generator/settings-generator.service.mjs +12 -13
  212. package/esm2022/shared/base.mjs +30 -18
  213. package/esm2022/shared/form/base.input.mjs +70 -69
  214. package/esm2022/shared/form/collection-base.input.mjs +7 -49
  215. package/esm2022/shared/form/inline-layout-collection-base.input.mjs +25 -66
  216. package/esm2022/shared/pipes/convert-bytes/convert-bytes.pipe.mjs +3 -3
  217. package/esm2022/shared/pipes/pipe.module.mjs +4 -4
  218. package/esm2022/shared/platform.config.mjs +3 -3
  219. package/esm2022/slider/slider.component.mjs +11 -43
  220. package/esm2022/slider/slider.module.mjs +4 -4
  221. package/esm2022/smart-filter-bar/components/smart-filter-bar-condition-field/base-smart-filter-bar-condition-field.mjs +11 -14
  222. package/esm2022/smart-filter-bar/components/smart-filter-bar-condition-field/smart-filter-bar-condition-field.component.mjs +8 -16
  223. package/esm2022/smart-filter-bar/components/smart-filter-bar-conditions-dialog/smart-filter-bar-conditions-dialog.component.mjs +6 -6
  224. package/esm2022/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +13 -18
  225. package/esm2022/smart-filter-bar/directives/smart-filter-bar-field-definition.directive.mjs +22 -47
  226. package/esm2022/smart-filter-bar/directives/smart-filter-bar-subject.directive.mjs +12 -10
  227. package/esm2022/smart-filter-bar/directives/smart-filter-bar-toolbar-item.directive.mjs +3 -3
  228. package/esm2022/smart-filter-bar/smart-filter-bar.class.mjs +3 -3
  229. package/esm2022/smart-filter-bar/smart-filter-bar.component.mjs +73 -57
  230. package/esm2022/smart-filter-bar/smart-filter-bar.module.mjs +4 -4
  231. package/esm2022/smart-filter-bar/smart-filter-bar.service.mjs +3 -3
  232. package/esm2022/split-menu-button/split-menu-button.component.mjs +17 -24
  233. package/esm2022/split-menu-button/split-menu-button.module.mjs +4 -4
  234. package/esm2022/table/components/no-data-wrapper/no-data-wrapper.component.mjs +3 -3
  235. package/esm2022/table/components/reset-button/reset-button.component.mjs +8 -9
  236. package/esm2022/table/components/table-cell-header-popover/table-cell-header-popover.component.mjs +10 -9
  237. package/esm2022/table/components/table-column/table-column.component.mjs +3 -3
  238. package/esm2022/table/components/table-column-resizer/table-column-resizer.component.mjs +11 -14
  239. package/esm2022/table/components/table-editable-cell/table-editable-cell.component.mjs +4 -4
  240. package/esm2022/table/components/table-group-row/table-group-row.component.mjs +6 -10
  241. package/esm2022/table/components/table-header-cell-content/table-header-cell-content.component.mjs +31 -15
  242. package/esm2022/table/components/table-header-row/table-header-row.component.mjs +19 -24
  243. package/esm2022/table/components/table-p13-dialog/columns/columns.component.mjs +9 -11
  244. package/esm2022/table/components/table-p13-dialog/filtering/filter-rule.component.mjs +4 -4
  245. package/esm2022/table/components/table-p13-dialog/filtering/filtering.component.mjs +8 -11
  246. package/esm2022/table/components/table-p13-dialog/grouping/grouping.component.mjs +8 -11
  247. package/esm2022/table/components/table-p13-dialog/sorting/sorting.component.mjs +11 -14
  248. package/esm2022/table/components/table-p13-dialog/table-p13-columns.component.mjs +3 -3
  249. package/esm2022/table/components/table-p13-dialog/table-p13-dialog.component.mjs +3 -3
  250. package/esm2022/table/components/table-p13-dialog/table-p13-filter.component.mjs +3 -3
  251. package/esm2022/table/components/table-p13-dialog/table-p13-group.component.mjs +3 -3
  252. package/esm2022/table/components/table-p13-dialog/table-p13-sort.component.mjs +3 -3
  253. package/esm2022/table/components/table-popping-row/table-popping-row.component.mjs +7 -8
  254. package/esm2022/table/components/table-row/table-row.component.mjs +12 -17
  255. package/esm2022/table/components/table-toolbar/table-toolbar-actions.component.mjs +3 -3
  256. package/esm2022/table/components/table-toolbar/table-toolbar-left-actions.component.mjs +3 -3
  257. package/esm2022/table/components/table-toolbar/table-toolbar.component.mjs +38 -23
  258. package/esm2022/table/components/table-view-settings-dialog/filtering/filter-custom.component.mjs +3 -3
  259. package/esm2022/table/components/table-view-settings-dialog/filtering/filter-multi-select.component.mjs +3 -3
  260. package/esm2022/table/components/table-view-settings-dialog/filtering/filter-single-select.component.mjs +3 -3
  261. package/esm2022/table/components/table-view-settings-dialog/filtering/filter-step.component.mjs +4 -4
  262. package/esm2022/table/components/table-view-settings-dialog/filtering/filters-list-step.component.mjs +4 -4
  263. package/esm2022/table/components/table-view-settings-dialog/filtering/filters.component.mjs +8 -11
  264. package/esm2022/table/components/table-view-settings-dialog/grouping/grouping.component.mjs +9 -12
  265. package/esm2022/table/components/table-view-settings-dialog/sorting/sorting.component.mjs +9 -12
  266. package/esm2022/table/components/table-view-settings-dialog/table-view-settings-dialog.component.mjs +3 -3
  267. package/esm2022/table/components/table-view-settings-dialog/table-view-settings-filter.component.mjs +3 -3
  268. package/esm2022/table/table.component.mjs +138 -62
  269. package/esm2022/table/table.module.mjs +4 -4
  270. package/esm2022/table-helpers/directives/platform-table-column-responsive.directive.mjs +3 -3
  271. package/esm2022/table-helpers/directives/table-cell-header-popover.directive.mjs +4 -4
  272. package/esm2022/table-helpers/directives/table-cell-resizable.directive.mjs +20 -23
  273. package/esm2022/table-helpers/directives/table-cell-selectable.directive.mjs +3 -3
  274. package/esm2022/table-helpers/directives/table-cell.directive.mjs +12 -12
  275. package/esm2022/table-helpers/directives/table-data-source.directive.mjs +10 -9
  276. package/esm2022/table-helpers/directives/table-draggable.directive.mjs +3 -3
  277. package/esm2022/table-helpers/directives/table-header-resizer.directive.mjs +3 -3
  278. package/esm2022/table-helpers/directives/table-header.directive.mjs +6 -6
  279. package/esm2022/table-helpers/directives/table-initial-state.directive.mjs +5 -5
  280. package/esm2022/table-helpers/directives/table-scrollable.directive.mjs +3 -3
  281. package/esm2022/table-helpers/directives/table-view-settings-filter-custom.directive.mjs +3 -3
  282. package/esm2022/table-helpers/directives/table-virtual-scroll.directive.mjs +3 -3
  283. package/esm2022/table-helpers/pipes/cell-styles.pipe.mjs +3 -3
  284. package/esm2022/table-helpers/pipes/column-resizable-side.pipe.mjs +3 -3
  285. package/esm2022/table-helpers/pipes/column-sorting-direction.pipe.mjs +3 -3
  286. package/esm2022/table-helpers/pipes/row-classes.pipe.mjs +3 -3
  287. package/esm2022/table-helpers/pipes/selection-cell-styles.pipe.mjs +3 -3
  288. package/esm2022/table-helpers/services/table-column-resize.service.mjs +22 -20
  289. package/esm2022/table-helpers/services/table-responsive.service.mjs +9 -14
  290. package/esm2022/table-helpers/services/table-row.service.mjs +3 -3
  291. package/esm2022/table-helpers/services/table-scroll-dispatcher.service.mjs +3 -3
  292. package/esm2022/table-helpers/services/table.service.mjs +23 -21
  293. package/esm2022/table-helpers/table-helpers.module.mjs +4 -4
  294. package/esm2022/table-helpers/table.mjs +1 -1
  295. package/esm2022/value-help-dialog/components/base-tab/vhd-base-tab.component.mjs +3 -3
  296. package/esm2022/value-help-dialog/components/define-tab/define-tab.component.mjs +4 -4
  297. package/esm2022/value-help-dialog/components/select-tab/select-tab.component.mjs +28 -8
  298. package/esm2022/value-help-dialog/components/value-help-dialog-filter/value-help-dialog-filter.component.mjs +9 -5
  299. package/esm2022/value-help-dialog/directives/condition-count-message.directive.mjs +3 -3
  300. package/esm2022/value-help-dialog/directives/value-help-column-def.directive.mjs +24 -0
  301. package/esm2022/value-help-dialog/directives/value-help-filter-def.directive.mjs +22 -0
  302. package/esm2022/value-help-dialog/index.mjs +3 -1
  303. package/esm2022/value-help-dialog/models/vhd-component.model.mjs +3 -0
  304. package/esm2022/value-help-dialog/models/vhd-filter.model.mjs +1 -1
  305. package/esm2022/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +59 -32
  306. package/esm2022/value-help-dialog/value-help-dialog.module.mjs +4 -4
  307. package/esm2022/variant-management/components/manage-variant-item/manage-variant-item.component.mjs +4 -4
  308. package/esm2022/variant-management/components/manage-variants-dialog/manage-variants-dialog.component.mjs +6 -6
  309. package/esm2022/variant-management/components/variant-management-wrapper/variant-management-wrapper.component.mjs +3 -3
  310. package/esm2022/variant-management/directives/variant-management-dirty-label.directive.mjs +3 -3
  311. package/esm2022/variant-management/variant-management.component.mjs +47 -13
  312. package/esm2022/variant-management/variant-management.module.mjs +4 -4
  313. package/esm2022/wizard-generator/base-wizard-generator.mjs +21 -28
  314. package/esm2022/wizard-generator/components/dialog-wizard-generator/dialog-wizard-generator.component.mjs +19 -19
  315. package/esm2022/wizard-generator/components/wizard-body/wizard-body.component.mjs +12 -18
  316. package/esm2022/wizard-generator/components/wizard-generator/wizard-generator.component.mjs +7 -12
  317. package/esm2022/wizard-generator/components/wizard-generator-step/wizard-generator-step.component.mjs +11 -10
  318. package/esm2022/wizard-generator/components/wizard-summary-step/wizard-summary-section/wizard-summary-section.component.mjs +4 -4
  319. package/esm2022/wizard-generator/components/wizard-summary-step/wizard-summary-step.component.mjs +3 -3
  320. package/esm2022/wizard-generator/directives/wizard-generator-finish-button.directive.mjs +3 -3
  321. package/esm2022/wizard-generator/directives/wizard-generator-go-next-button.directive.mjs +3 -3
  322. package/esm2022/wizard-generator/directives/wizard-generator-review-button.directive.mjs +3 -3
  323. package/esm2022/wizard-generator/directives/wizard-generator-summary-step.directive.mjs +3 -3
  324. package/esm2022/wizard-generator/wizard-dialog-generator.service.mjs +3 -3
  325. package/esm2022/wizard-generator/wizard-generator.module.mjs +4 -4
  326. package/esm2022/wizard-generator/wizard-generator.service.mjs +3 -3
  327. package/fesm2022/fundamental-ngx-platform-approval-flow.mjs +42 -44
  328. package/fesm2022/fundamental-ngx-platform-approval-flow.mjs.map +1 -1
  329. package/fesm2022/fundamental-ngx-platform-button.mjs +16 -17
  330. package/fesm2022/fundamental-ngx-platform-button.mjs.map +1 -1
  331. package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs +88 -130
  332. package/fesm2022/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
  333. package/fesm2022/fundamental-ngx-platform-feed-input.mjs +9 -9
  334. package/fesm2022/fundamental-ngx-platform-feed-input.mjs.map +1 -1
  335. package/fesm2022/fundamental-ngx-platform-form.mjs +853 -1636
  336. package/fesm2022/fundamental-ngx-platform-form.mjs.map +1 -1
  337. package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs +532 -220
  338. package/fesm2022/fundamental-ngx-platform-icon-tab-bar.mjs.map +1 -1
  339. package/fesm2022/fundamental-ngx-platform-info-label.mjs +9 -7
  340. package/fesm2022/fundamental-ngx-platform-info-label.mjs.map +1 -1
  341. package/fesm2022/fundamental-ngx-platform-link.mjs +18 -26
  342. package/fesm2022/fundamental-ngx-platform-link.mjs.map +1 -1
  343. package/fesm2022/fundamental-ngx-platform-list.mjs +104 -143
  344. package/fesm2022/fundamental-ngx-platform-list.mjs.map +1 -1
  345. package/fesm2022/fundamental-ngx-platform-menu-button.mjs +16 -11
  346. package/fesm2022/fundamental-ngx-platform-menu-button.mjs.map +1 -1
  347. package/fesm2022/fundamental-ngx-platform-menu.mjs +16 -16
  348. package/fesm2022/fundamental-ngx-platform-menu.mjs.map +1 -1
  349. package/fesm2022/fundamental-ngx-platform-message-popover.mjs +71 -74
  350. package/fesm2022/fundamental-ngx-platform-message-popover.mjs.map +1 -1
  351. package/fesm2022/fundamental-ngx-platform-object-marker.mjs +13 -8
  352. package/fesm2022/fundamental-ngx-platform-object-marker.mjs.map +1 -1
  353. package/fesm2022/fundamental-ngx-platform-object-status.mjs +16 -11
  354. package/fesm2022/fundamental-ngx-platform-object-status.mjs.map +1 -1
  355. package/fesm2022/fundamental-ngx-platform-page-footer.mjs +10 -12
  356. package/fesm2022/fundamental-ngx-platform-page-footer.mjs.map +1 -1
  357. package/fesm2022/fundamental-ngx-platform-panel.mjs +19 -20
  358. package/fesm2022/fundamental-ngx-platform-panel.mjs.map +1 -1
  359. package/fesm2022/fundamental-ngx-platform-search-field.mjs +49 -77
  360. package/fesm2022/fundamental-ngx-platform-search-field.mjs.map +1 -1
  361. package/fesm2022/fundamental-ngx-platform-settings-generator.mjs +75 -72
  362. package/fesm2022/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
  363. package/fesm2022/fundamental-ngx-platform-shared.mjs +162 -218
  364. package/fesm2022/fundamental-ngx-platform-shared.mjs.map +1 -1
  365. package/fesm2022/fundamental-ngx-platform-slider.mjs +12 -44
  366. package/fesm2022/fundamental-ngx-platform-slider.mjs.map +1 -1
  367. package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs +144 -162
  368. package/fesm2022/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
  369. package/fesm2022/fundamental-ngx-platform-split-menu-button.mjs +20 -27
  370. package/fesm2022/fundamental-ngx-platform-split-menu-button.mjs.map +1 -1
  371. package/fesm2022/fundamental-ngx-platform-table-helpers.mjs +143 -148
  372. package/fesm2022/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
  373. package/fesm2022/fundamental-ngx-platform-table.mjs +366 -291
  374. package/fesm2022/fundamental-ngx-platform-table.mjs.map +1 -1
  375. package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs +144 -53
  376. package/fesm2022/fundamental-ngx-platform-value-help-dialog.mjs.map +1 -1
  377. package/fesm2022/fundamental-ngx-platform-variant-management.mjs +63 -30
  378. package/fesm2022/fundamental-ngx-platform-variant-management.mjs.map +1 -1
  379. package/fesm2022/fundamental-ngx-platform-wizard-generator.mjs +82 -98
  380. package/fesm2022/fundamental-ngx-platform-wizard-generator.mjs.map +1 -1
  381. package/fesm2022/fundamental-ngx-platform.mjs +4 -4
  382. package/form/checkbox/checkbox.component.d.ts +4 -6
  383. package/form/checkbox-group/checkbox-group.component.d.ts +3 -8
  384. package/form/combobox/combobox/combobox.component.d.ts +4 -12
  385. package/form/combobox/combobox-mobile/combobox/combobox-mobile.component.d.ts +5 -8
  386. package/form/combobox/commons/base-combobox.d.ts +4 -9
  387. package/form/date-picker/date-picker.component.d.ts +8 -11
  388. package/form/datetime-picker/datetime-picker.component.d.ts +9 -11
  389. package/form/form-generator/controls/dynamic-form-generator-checkbox/dynamic-form-generator-checkbox.component.d.ts +0 -2
  390. package/form/form-generator/controls/dynamic-form-generator-datepicker/dynamic-form-generator-datepicker.component.d.ts +0 -2
  391. package/form/form-generator/controls/dynamic-form-generator-editor/dynamic-form-generator-editor.component.d.ts +0 -2
  392. package/form/form-generator/controls/dynamic-form-generator-input/dynamic-form-generator-input.component.d.ts +0 -2
  393. package/form/form-generator/controls/dynamic-form-generator-multi-input/dynamic-form-generator-multi-input.component.d.ts +0 -2
  394. package/form/form-generator/controls/dynamic-form-generator-radio/dynamic-form-generator-radio.component.d.ts +0 -2
  395. package/form/form-generator/controls/dynamic-form-generator-select/dynamic-form-generator-select.component.d.ts +0 -2
  396. package/form/form-generator/controls/dynamic-form-generator-switch/dynamic-form-generator-switch.component.d.ts +0 -2
  397. package/form/form-generator/form-generator/form-generator.component.d.ts +3 -1
  398. package/form/form-generator/form-generator.service.d.ts +3 -7
  399. package/form/form-generator/interfaces/dynamic-form-item.d.ts +5 -5
  400. package/form/form-group/form-field/form-field.component.d.ts +16 -20
  401. package/form/form-group/form-group.component.d.ts +36 -35
  402. package/form/input/input.component.d.ts +3 -6
  403. package/form/input-group/addon-body.component.d.ts +0 -1
  404. package/form/input-group/input-group.component.d.ts +4 -5
  405. package/form/multi-combobox/commons/base-multi-combobox.d.ts +13 -16
  406. package/form/multi-combobox/multi-combobox/multi-combobox.component.d.ts +4 -12
  407. package/form/multi-combobox/multi-combobox-mobile/multi-combobox/multi-combobox-mobile.component.d.ts +6 -9
  408. package/form/multi-combobox/multi-combobox.interface.d.ts +3 -3
  409. package/form/multi-input/base-multi-input.d.ts +10 -15
  410. package/form/multi-input/multi-input-mobile/multi-input-mobile.component.d.ts +5 -8
  411. package/form/multi-input/multi-input.component.d.ts +7 -37
  412. package/form/radio-group/radio/radio.component.d.ts +4 -5
  413. package/form/radio-group/radio-group.component.d.ts +7 -11
  414. package/form/select/commons/base-select.d.ts +11 -18
  415. package/form/select/select/select.component.d.ts +2 -15
  416. package/form/step-input/base.step-input.d.ts +13 -14
  417. package/form/step-input/number/number-step-input.component.d.ts +2 -7
  418. package/form/step-input/step-input-action-button.d.ts +4 -7
  419. package/form/step-input/step-input-decrement.directive.d.ts +2 -5
  420. package/form/step-input/step-input-increment.directive.d.ts +2 -5
  421. package/form/switch/switch/switch.component.d.ts +5 -8
  422. package/form/text-area/text-area.component.d.ts +4 -5
  423. package/form/time-picker/time-picker.component.d.ts +4 -5
  424. package/fundamental-ngx-platform-v0.48.0.tgz +0 -0
  425. package/icon-tab-bar/components/icon-tab-bar-base.class.d.ts +19 -20
  426. package/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.d.ts +2 -0
  427. package/icon-tab-bar/components/icon-tab-bar-tab/icon-tab-bar-tab.component.d.ts +45 -0
  428. package/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.d.ts +1 -3
  429. package/icon-tab-bar/directives/dnd/icon-bar-dnd-container.directive.d.ts +5 -8
  430. package/icon-tab-bar/directives/dnd/icon-bar-dnd-item.directive.d.ts +1 -1
  431. package/icon-tab-bar/directives/dnd/icon-bar-dnd-list.directive.d.ts +1 -1
  432. package/icon-tab-bar/directives/icon-tab-bar-free-content.directive.d.ts +5 -0
  433. package/icon-tab-bar/icon-tab-bar.component.d.ts +82 -8
  434. package/icon-tab-bar/icon-tab-bar.module.d.ts +7 -1
  435. package/icon-tab-bar/index.d.ts +2 -0
  436. package/icon-tab-bar/interfaces/tab-config.interface.d.ts +13 -5
  437. package/info-label/info-label.component.d.ts +2 -2
  438. package/link/link.component.d.ts +4 -7
  439. package/list/base-list-item.d.ts +4 -6
  440. package/list/list.component.d.ts +6 -15
  441. package/menu-button/menu-button.component.d.ts +7 -4
  442. package/message-popover/components/message-popover-form-wrapper/message-popover-form-wrapper.component.d.ts +2 -4
  443. package/message-popover/message-popover.component.d.ts +13 -20
  444. package/message-popover/models/message-popover-wrapper.interface.d.ts +2 -2
  445. package/object-marker/object-marker.component.d.ts +4 -1
  446. package/object-status/object-status.component.d.ts +4 -1
  447. package/package.json +4 -4
  448. package/page-footer/page-footer.component.d.ts +2 -4
  449. package/panel/panel.component.d.ts +2 -3
  450. package/search-field/search-field-mobile/search-field/search-field-mobile.component.d.ts +7 -10
  451. package/search-field/search-field.component.d.ts +10 -19
  452. package/settings-generator/models/settings.model.d.ts +7 -6
  453. package/settings-generator/settings-generator-content/settings-generator-content.component.d.ts +31 -12
  454. package/settings-generator/settings-generator-content/settings-generator-section/settings-generator-section.component.d.ts +0 -2
  455. package/settings-generator/settings-generator.component.d.ts +3 -3
  456. package/settings-generator/settings-generator.service.d.ts +1 -1
  457. package/shared/base.d.ts +11 -4
  458. package/shared/form/base.input.d.ts +24 -16
  459. package/shared/form/collection-base.input.d.ts +1 -9
  460. package/shared/form/inline-layout-collection-base.input.d.ts +5 -12
  461. package/slider/slider.component.d.ts +3 -6
  462. package/smart-filter-bar/components/smart-filter-bar-condition-field/base-smart-filter-bar-condition-field.d.ts +3 -5
  463. package/smart-filter-bar/components/smart-filter-bar-condition-field/smart-filter-bar-condition-field.component.d.ts +0 -5
  464. package/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.d.ts +4 -8
  465. package/smart-filter-bar/directives/smart-filter-bar-field-definition.directive.d.ts +8 -17
  466. package/smart-filter-bar/directives/smart-filter-bar-subject.directive.d.ts +2 -0
  467. package/smart-filter-bar/smart-filter-bar.component.d.ts +28 -22
  468. package/split-menu-button/split-menu-button.component.d.ts +11 -14
  469. package/table/components/reset-button/reset-button.component.d.ts +2 -3
  470. package/table/components/table-cell-header-popover/table-cell-header-popover.component.d.ts +4 -3
  471. package/table/components/table-column-resizer/table-column-resizer.component.d.ts +4 -5
  472. package/table/components/table-group-row/table-group-row.component.d.ts +2 -5
  473. package/table/components/table-header-cell-content/table-header-cell-content.component.d.ts +11 -6
  474. package/table/components/table-header-row/table-header-row.component.d.ts +1 -3
  475. package/table/components/table-p13-dialog/columns/columns.component.d.ts +2 -4
  476. package/table/components/table-p13-dialog/filtering/filtering.component.d.ts +1 -4
  477. package/table/components/table-p13-dialog/grouping/grouping.component.d.ts +1 -4
  478. package/table/components/table-p13-dialog/sorting/sorting.component.d.ts +1 -4
  479. package/table/components/table-row/table-row.component.d.ts +2 -2
  480. package/table/components/table-toolbar/table-toolbar.component.d.ts +24 -8
  481. package/table/components/table-view-settings-dialog/filtering/filters.component.d.ts +1 -4
  482. package/table/components/table-view-settings-dialog/grouping/grouping.component.d.ts +1 -4
  483. package/table/components/table-view-settings-dialog/sorting/sorting.component.d.ts +1 -4
  484. package/table/table.component.d.ts +29 -19
  485. package/table-helpers/directives/table-cell-header-popover.directive.d.ts +2 -3
  486. package/table-helpers/directives/table-cell-resizable.directive.d.ts +1 -3
  487. package/table-helpers/directives/table-data-source.directive.d.ts +1 -1
  488. package/table-helpers/services/table-column-resize.service.d.ts +4 -2
  489. package/table-helpers/services/table-responsive.service.d.ts +3 -5
  490. package/table-helpers/services/table.service.d.ts +12 -10
  491. package/table-helpers/table.d.ts +1 -0
  492. package/value-help-dialog/components/select-tab/select-tab.component.d.ts +9 -2
  493. package/value-help-dialog/components/value-help-dialog-filter/value-help-dialog-filter.component.d.ts +5 -1
  494. package/value-help-dialog/directives/value-help-column-def.directive.d.ts +17 -0
  495. package/value-help-dialog/directives/value-help-filter-def.directive.d.ts +15 -0
  496. package/value-help-dialog/index.d.ts +2 -0
  497. package/value-help-dialog/models/vhd-component.model.d.ts +5 -0
  498. package/value-help-dialog/models/vhd-filter.model.d.ts +3 -0
  499. package/value-help-dialog/value-help-dialog/value-help-dialog.component.d.ts +14 -7
  500. package/variant-management/variant-management.component.d.ts +19 -6
  501. package/wizard-generator/base-wizard-generator.d.ts +9 -12
  502. package/wizard-generator/components/dialog-wizard-generator/dialog-wizard-generator.component.d.ts +2 -3
  503. package/wizard-generator/components/wizard-body/wizard-body.component.d.ts +3 -7
  504. package/wizard-generator/components/wizard-generator/wizard-generator.component.d.ts +1 -4
  505. package/wizard-generator/components/wizard-generator-step/wizard-generator-step.component.d.ts +1 -1
  506. package/dynamic-page/dynamic-page.service.d.ts +0 -35
  507. package/esm2022/dynamic-page/dynamic-page.service.mjs +0 -58
  508. package/esm2022/search-field/search-field-mobile/search-field-mobile.module.mjs +0 -16
  509. package/fundamental-ngx-platform-v0.48.0-rc.8.tgz +0 -0
  510. package/search-field/search-field-mobile/search-field-mobile.module.d.ts +0 -7
@@ -1,21 +1,29 @@
1
1
  import { SelectionModel } from '@angular/cdk/collections';
2
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, ElementRef, EventEmitter, forwardRef, Host, Inject, Input, Optional, Output, QueryList, Self, SkipSelf, ViewChildren, ViewEncapsulation } from '@angular/core';
3
- import { ControlContainer, FormsModule, NgControl, NgForm } from '@angular/forms';
4
- import { FD_FORM_FIELD, FD_FORM_FIELD_CONTROL } from '@fundamental-ngx/cdk/forms';
2
+ import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, forwardRef, Input, Output, QueryList, ViewChildren, ViewEncapsulation } from '@angular/core';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { FD_FORM_FIELD_CONTROL } from '@fundamental-ngx/cdk/forms';
5
5
  import { RangeSelector } from '@fundamental-ngx/cdk/utils';
6
6
  import { NgTemplateOutlet } from '@angular/common';
7
7
  import { FormGroupComponent } from '@fundamental-ngx/core/form';
8
- import { coerceArraySafe, InLineLayoutCollectionBaseInput, PlatformFormField, PlatformFormFieldControl, RESPONSIVE_BREAKPOINTS_CONFIG, ResponsiveBreakPointConfig, ResponsiveBreakpointsService } from '@fundamental-ngx/platform/shared';
8
+ import { coerceArraySafe, InLineLayoutCollectionBaseInput } from '@fundamental-ngx/platform/shared';
9
9
  import { CheckboxComponent } from '../checkbox/checkbox.component';
10
10
  import * as i0 from "@angular/core";
11
- import * as i1 from "@fundamental-ngx/platform/shared";
12
- import * as i2 from "@angular/forms";
11
+ import * as i1 from "@angular/forms";
13
12
  /**
14
13
  * Checkbox group implementation based on the
15
14
  * https://github.com/SAP/fundamental-ngx/wiki/Platform:-CheckboxGroup-Technical-Design
16
15
  * documents.
17
16
  */
18
17
  export class CheckboxGroupComponent extends InLineLayoutCollectionBaseInput {
18
+ constructor() {
19
+ super(...arguments);
20
+ /** Emits checked change event */
21
+ this.valueChange = new EventEmitter();
22
+ /** @hidden */
23
+ this._selectionModel = new SelectionModel(true);
24
+ /** @hidden */
25
+ this._rangeSelector = new RangeSelector();
26
+ }
19
27
  /**
20
28
  * value for selected checkboxes.
21
29
  */
@@ -35,18 +43,6 @@ export class CheckboxGroupComponent extends InLineLayoutCollectionBaseInput {
35
43
  get isInline() {
36
44
  return this._inlineCurrentValue$.value;
37
45
  }
38
- /** @hidden */
39
- constructor(cd, elementRef, _responsiveBreakpointsService, ngControl, controlContainer, ngForm, formField, formControl, _defaultResponsiveBreakPointConfig) {
40
- super(cd, elementRef, _responsiveBreakpointsService, ngControl, controlContainer, ngForm, formField, formControl, _defaultResponsiveBreakPointConfig);
41
- this._responsiveBreakpointsService = _responsiveBreakpointsService;
42
- this._defaultResponsiveBreakPointConfig = _defaultResponsiveBreakPointConfig;
43
- /** Emits checked change event */
44
- this.valueChange = new EventEmitter();
45
- /** @hidden */
46
- this._selectionModel = new SelectionModel(true);
47
- /** @hidden */
48
- this._rangeSelector = new RangeSelector();
49
- }
50
46
  /**
51
47
  * @hidden
52
48
  * @param selectionState actual value of the checkbox
@@ -119,59 +115,21 @@ export class CheckboxGroupComponent extends InLineLayoutCollectionBaseInput {
119
115
  /** @hidden */
120
116
  _setValueBySelectionModel() {
121
117
  super.setValue(this._selectionModel.selected);
122
- this._cd.markForCheck();
118
+ this.markForCheck();
123
119
  }
124
120
  /** @hidden */
125
121
  _updateSelectionModelByValue() {
126
122
  this._selectionModel.clear();
127
123
  this.value.forEach((v) => this._selectionModel.select(v));
128
- this._cd.markForCheck();
124
+ this.markForCheck();
129
125
  }
130
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: CheckboxGroupComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.ResponsiveBreakpointsService }, { token: i2.NgControl, optional: true, self: true }, { token: i2.ControlContainer, optional: true, skipSelf: true }, { token: i2.NgForm, optional: true, skipSelf: true }, { token: FD_FORM_FIELD, host: true, optional: true, skipSelf: true }, { token: FD_FORM_FIELD_CONTROL, host: true, optional: true, skipSelf: true }, { token: RESPONSIVE_BREAKPOINTS_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
131
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.4", type: CheckboxGroupComponent, isStandalone: true, selector: "fdp-checkbox-group", inputs: { value: "value", isInline: "isInline" }, outputs: { valueChange: "valueChange" }, providers: [{ provide: FD_FORM_FIELD_CONTROL, useExisting: forwardRef(() => CheckboxGroupComponent), multi: true }], queries: [{ propertyName: "contentCheckboxes", predicate: CheckboxComponent }], viewQueries: [{ propertyName: "viewCheckboxes", predicate: CheckboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<fd-form-group\n [isInline]=\"isInline\"\n role=\"group\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-required]=\"required\"\n>\n @if (!list) {\n @for (checkbox of contentCheckboxes; track checkbox; let i = $index) {\n <ng-template\n [ngTemplateOutlet]=\"checkboxtmpt\"\n [ngTemplateOutletContext]=\"{\n id: id + i,\n idx: i,\n source: 'contentChildren',\n name: name,\n checkboxValue: checkbox.coreCheckbox?.values?.trueValue,\n labeltext: checkbox.label,\n disabled: disabled || checkbox.disabled,\n ariaLabel: checkbox.ariaLabel,\n ariaLabelledBy: checkbox.ariaLabelledBy,\n ariaDescribedBy: checkbox.ariaDescribedBy,\n title: checkbox.title\n }\"\n >\n </ng-template>\n }\n } @else {\n <ng-template [ngTemplateOutlet]=\"listvalues\"></ng-template>\n }\n</fd-form-group>\n<ng-template #listvalues>\n @for (item of list; track item; let i = $index) {\n <ng-template\n [ngTemplateOutlet]=\"checkboxtmpt\"\n [ngTemplateOutletContext]=\"{\n id: id + i,\n idx: i,\n source: 'list',\n name: name,\n checkboxValue: getLookupValue(item),\n labeltext: getDisplayValue(item),\n disabled: getListItemDisabledValue(item)\n }\"\n >\n </ng-template>\n }\n</ng-template>\n<ng-template\n #checkboxtmpt\n let-id=\"id\"\n let-idx=\"idx\"\n let-source=\"source\"\n let-name=\"name\"\n let-checkboxValue=\"checkboxValue\"\n let-labeltext=\"labeltext\"\n let-checkboxDisabled=\"disabled\"\n let-ariaLabel=\"ariaLabel\"\n let-ariaLabelledBy=\"ariaLabelledBy\"\n let-ariaDescribedBy=\"ariaDescribedBy\"\n let-title=\"title\"\n>\n <fdp-checkbox\n [id]=\"id\"\n [name]=\"name\"\n [values]=\"{ trueValue: checkboxValue }\"\n [label]=\"labeltext\"\n [ariaLabel]=\"ariaLabel\"\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [ariaDescribedBy]=\"ariaDescribedBy\"\n [title]=\"title\"\n [disabled]=\"checkboxDisabled\"\n [state]=\"state\"\n [ngModel]=\"_selectionModel.isSelected(checkboxValue) ? checkboxValue : false\"\n (ngModelChange)=\"onModelChanged($event, checkboxValue)\"\n (click)=\"onCheckboxClick(idx, source, $event)\"\n >\n </fdp-checkbox>\n</ng-template>\n", dependencies: [{ kind: "component", type: FormGroupComponent, selector: "fd-form-group", inputs: ["isInline"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CheckboxComponent, selector: "fdp-checkbox", inputs: ["title", "label", "tristate", "checked", "tristateSelectable", "values", "standalone", "displayOnly"], outputs: ["checkedChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
126
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: CheckboxGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
127
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.0.8", type: CheckboxGroupComponent, isStandalone: true, selector: "fdp-checkbox-group", inputs: { value: "value", isInline: "isInline" }, outputs: { valueChange: "valueChange" }, providers: [{ provide: FD_FORM_FIELD_CONTROL, useExisting: forwardRef(() => CheckboxGroupComponent), multi: true }], queries: [{ propertyName: "contentCheckboxes", predicate: CheckboxComponent }], viewQueries: [{ propertyName: "viewCheckboxes", predicate: CheckboxComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<fd-form-group\n [isInline]=\"isInline\"\n role=\"group\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-required]=\"required\"\n>\n @if (!list) {\n @for (checkbox of contentCheckboxes; track checkbox; let i = $index) {\n <ng-template\n [ngTemplateOutlet]=\"checkboxtmpt\"\n [ngTemplateOutletContext]=\"{\n id: id + i,\n idx: i,\n source: 'contentChildren',\n name: name,\n checkboxValue: checkbox.coreCheckbox?.values?.trueValue,\n labeltext: checkbox.label,\n disabled: disabled || checkbox.disabled,\n ariaLabel: checkbox.ariaLabel,\n ariaLabelledBy: checkbox.ariaLabelledBy,\n ariaDescribedBy: checkbox.ariaDescribedBy,\n title: checkbox.title\n }\"\n >\n </ng-template>\n }\n } @else {\n <ng-template [ngTemplateOutlet]=\"listvalues\"></ng-template>\n }\n</fd-form-group>\n<ng-template #listvalues>\n @for (item of list; track item; let i = $index) {\n <ng-template\n [ngTemplateOutlet]=\"checkboxtmpt\"\n [ngTemplateOutletContext]=\"{\n id: id + i,\n idx: i,\n source: 'list',\n name: name,\n checkboxValue: getLookupValue(item),\n labeltext: getDisplayValue(item),\n disabled: getListItemDisabledValue(item)\n }\"\n >\n </ng-template>\n }\n</ng-template>\n<ng-template\n #checkboxtmpt\n let-id=\"id\"\n let-idx=\"idx\"\n let-source=\"source\"\n let-name=\"name\"\n let-checkboxValue=\"checkboxValue\"\n let-labeltext=\"labeltext\"\n let-checkboxDisabled=\"disabled\"\n let-ariaLabel=\"ariaLabel\"\n let-ariaLabelledBy=\"ariaLabelledBy\"\n let-ariaDescribedBy=\"ariaDescribedBy\"\n let-title=\"title\"\n>\n <fdp-checkbox\n [id]=\"id\"\n [name]=\"name\"\n [values]=\"{ trueValue: checkboxValue }\"\n [label]=\"labeltext\"\n [ariaLabel]=\"ariaLabel\"\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [ariaDescribedBy]=\"ariaDescribedBy\"\n [title]=\"title\"\n [disabled]=\"checkboxDisabled\"\n [state]=\"state\"\n [ngModel]=\"_selectionModel.isSelected(checkboxValue) ? checkboxValue : false\"\n (ngModelChange)=\"onModelChanged($event, checkboxValue)\"\n (click)=\"onCheckboxClick(idx, source, $event)\"\n >\n </fdp-checkbox>\n</ng-template>\n", dependencies: [{ kind: "component", type: FormGroupComponent, selector: "fd-form-group", inputs: ["isInline"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: CheckboxComponent, selector: "fdp-checkbox", inputs: ["title", "label", "tristate", "checked", "tristateSelectable", "values", "standalone", "displayOnly"], outputs: ["checkedChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
132
128
  }
133
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: CheckboxGroupComponent, decorators: [{
129
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: CheckboxGroupComponent, decorators: [{
134
130
  type: Component,
135
131
  args: [{ selector: 'fdp-checkbox-group', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [{ provide: FD_FORM_FIELD_CONTROL, useExisting: forwardRef(() => CheckboxGroupComponent), multi: true }], standalone: true, imports: [FormGroupComponent, NgTemplateOutlet, CheckboxComponent, FormsModule], template: "<fd-form-group\n [isInline]=\"isInline\"\n role=\"group\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [attr.aria-required]=\"required\"\n>\n @if (!list) {\n @for (checkbox of contentCheckboxes; track checkbox; let i = $index) {\n <ng-template\n [ngTemplateOutlet]=\"checkboxtmpt\"\n [ngTemplateOutletContext]=\"{\n id: id + i,\n idx: i,\n source: 'contentChildren',\n name: name,\n checkboxValue: checkbox.coreCheckbox?.values?.trueValue,\n labeltext: checkbox.label,\n disabled: disabled || checkbox.disabled,\n ariaLabel: checkbox.ariaLabel,\n ariaLabelledBy: checkbox.ariaLabelledBy,\n ariaDescribedBy: checkbox.ariaDescribedBy,\n title: checkbox.title\n }\"\n >\n </ng-template>\n }\n } @else {\n <ng-template [ngTemplateOutlet]=\"listvalues\"></ng-template>\n }\n</fd-form-group>\n<ng-template #listvalues>\n @for (item of list; track item; let i = $index) {\n <ng-template\n [ngTemplateOutlet]=\"checkboxtmpt\"\n [ngTemplateOutletContext]=\"{\n id: id + i,\n idx: i,\n source: 'list',\n name: name,\n checkboxValue: getLookupValue(item),\n labeltext: getDisplayValue(item),\n disabled: getListItemDisabledValue(item)\n }\"\n >\n </ng-template>\n }\n</ng-template>\n<ng-template\n #checkboxtmpt\n let-id=\"id\"\n let-idx=\"idx\"\n let-source=\"source\"\n let-name=\"name\"\n let-checkboxValue=\"checkboxValue\"\n let-labeltext=\"labeltext\"\n let-checkboxDisabled=\"disabled\"\n let-ariaLabel=\"ariaLabel\"\n let-ariaLabelledBy=\"ariaLabelledBy\"\n let-ariaDescribedBy=\"ariaDescribedBy\"\n let-title=\"title\"\n>\n <fdp-checkbox\n [id]=\"id\"\n [name]=\"name\"\n [values]=\"{ trueValue: checkboxValue }\"\n [label]=\"labeltext\"\n [ariaLabel]=\"ariaLabel\"\n [ariaLabelledBy]=\"ariaLabelledBy\"\n [ariaDescribedBy]=\"ariaDescribedBy\"\n [title]=\"title\"\n [disabled]=\"checkboxDisabled\"\n [state]=\"state\"\n [ngModel]=\"_selectionModel.isSelected(checkboxValue) ? checkboxValue : false\"\n (ngModelChange)=\"onModelChanged($event, checkboxValue)\"\n (click)=\"onCheckboxClick(idx, source, $event)\"\n >\n </fdp-checkbox>\n</ng-template>\n" }]
136
- }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.ResponsiveBreakpointsService }, { type: i2.NgControl, decorators: [{
137
- type: Optional
138
- }, {
139
- type: Self
140
- }] }, { type: i2.ControlContainer, decorators: [{
141
- type: Optional
142
- }, {
143
- type: SkipSelf
144
- }] }, { type: i2.NgForm, decorators: [{
145
- type: Optional
146
- }, {
147
- type: SkipSelf
148
- }] }, { type: i1.PlatformFormField, decorators: [{
149
- type: Optional
150
- }, {
151
- type: SkipSelf
152
- }, {
153
- type: Host
154
- }, {
155
- type: Inject,
156
- args: [FD_FORM_FIELD]
157
- }] }, { type: i1.PlatformFormFieldControl, decorators: [{
158
- type: Optional
159
- }, {
160
- type: SkipSelf
161
- }, {
162
- type: Host
163
- }, {
164
- type: Inject,
165
- args: [FD_FORM_FIELD_CONTROL]
166
- }, {
167
- type: Inject,
168
- args: [FD_FORM_FIELD_CONTROL]
169
- }] }, { type: i1.ResponsiveBreakPointConfig, decorators: [{
170
- type: Optional
171
- }, {
172
- type: Inject,
173
- args: [RESPONSIVE_BREAKPOINTS_CONFIG]
174
- }] }], propDecorators: { value: [{
132
+ }], propDecorators: { value: [{
175
133
  type: Input
176
134
  }], isInline: [{
177
135
  type: Input
@@ -184,4 +142,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImpor
184
142
  }], valueChange: [{
185
143
  type: Output
186
144
  }] } });
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9mb3JtL2NoZWNrYm94LWdyb3VwL2NoZWNrYm94LWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vZm9ybS9jaGVja2JveC1ncm91cC9jaGVja2JveC1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULGVBQWUsRUFDZixVQUFVLEVBQ1YsWUFBWSxFQUNaLFVBQVUsRUFDVixJQUFJLEVBQ0osTUFBTSxFQUNOLEtBQUssRUFDTCxRQUFRLEVBQ1IsTUFBTSxFQUNOLFNBQVMsRUFDVCxJQUFJLEVBQ0osUUFBUSxFQUNSLFlBQVksRUFDWixpQkFBaUIsRUFDcEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDbEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQ0gsZUFBZSxFQUNmLCtCQUErQixFQUMvQixpQkFBaUIsRUFDakIsd0JBQXdCLEVBQ3hCLDZCQUE2QixFQUM3QiwwQkFBMEIsRUFDMUIsNEJBQTRCLEVBRS9CLE1BQU0sa0NBQWtDLENB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LEVBQUUsQ0FBQyxjQUN2RyxJQUFJLFdBQ1AsQ0FBQyxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLENBQUM7OzBCQWlEMUUsUUFBUTs7MEJBQUksSUFBSTs7MEJBQ2hCLFFBQVE7OzBCQUFJLFFBQVE7OzBCQUNwQixRQUFROzswQkFBSSxRQUFROzswQkFDcEIsUUFBUTs7MEJBQUksUUFBUTs7MEJBQUksSUFBSTs7MEJBQUksTUFBTTsyQkFBQyxhQUFhOzswQkFDcEQsUUFBUTs7MEJBQ1IsUUFBUTs7MEJBQ1IsSUFBSTs7MEJBQ0osTUFBTTsyQkFBQyxxQkFBcUI7OzBCQUM1QixNQUFNOzJCQUFDLHFCQUFxQjs7MEJBRTVCLFFBQVE7OzBCQUNSLE1BQU07MkJBQUMsNkJBQTZCO3lDQXJEckMsS0FBSztzQkFEUixLQUFLO2dCQWFGLFFBQVE7c0JBRFgsS0FBSztnQkFVTixpQkFBaUI7c0JBRGhCLGVBQWU7dUJBQUMsaUJBQWlCO2dCQUtsQyxjQUFjO3NCQURiLFlBQVk7dUJBQUMsaUJBQWlCO2dCQUt0QixXQUFXO3NCQURuQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgQ29udGVudENoaWxkcmVuLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGZvcndhcmRSZWYsXG4gICAgSG9zdCxcbiAgICBJbmplY3QsXG4gICAgSW5wdXQsXG4gICAgT3B0aW9uYWwsXG4gICAgT3V0cHV0LFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBTZWxmLFxuICAgIFNraXBTZWxmLFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xDb250YWluZXIsIEZvcm1zTW9kdWxlLCBOZ0NvbnRyb2wsIE5nRm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZEX0ZPUk1fRklFTEQsIEZEX0ZPUk1fRklFTERfQ09OVFJPTCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL2Zvcm1zJztcbmltcG9ydCB7IFJhbmdlU2VsZWN0b3IgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5cbmltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybUdyb3VwQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2Zvcm0nO1xuaW1wb3J0IHtcbiAgICBjb2VyY2VBcnJheVNhZmUsXG4gICAgSW5MaW5lTGF5b3V0Q29sbGVjdGlvbkJhc2VJbnB1dCxcbiAgICBQbGF0Zm9ybUZvcm1GaWVsZCxcbiAgICBQbGF0Zm9ybUZvcm1GaWVsZENvbnRyb2wsXG4gICAgUkVTUE9OU0lWRV9CUkVBS1BPSU5UU19DT05GSUcsXG4gICAgUmVzcG9uc2l2ZUJyZWFrUG9pbnRDb25maWcsXG4gICAgUmVzcG9uc2l2ZUJyZWFrcG9pbnRzU2VydmljZSxcbiAgICBTZWxlY3RJdGVtXG59IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvcGxhdGZvcm0vc2hhcmVkJztcbmltcG9ydCB7IENoZWNrYm94Q29tcG9uZW50IH0gZnJvbSAnLi4vY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcblxuLyoqXG4gKiBDaGVja2JveCBncm91cCBpbXBsZW1lbnRhdGlvbiBiYXNlZCBvbiB0aGVcbiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9TQVAvZnVuZGFtZW50YWwtbmd4L3dpa2kvUGxhdGZvcm06LUNoZWNrYm94R3JvdXAtVGVjaG5pY2FsLURlc2lnblxuICogZG9jdW1lbnRzLlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC1jaGVja2JveC1ncm91cCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrYm94LWdyb3VwLmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogRkRfRk9STV9GSUVMRF9DT05UUk9MLCB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBDaGVja2JveEdyb3VwQ29tcG9uZW50KSwgbXVsdGk6IHRydWUgfV0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbRm9ybUdyb3VwQ29tcG9uZW50LCBOZ1RlbXBsYXRlT3V0bGV0LCBDaGVja2JveENvbXBvbmVudCwgRm9ybXNNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIENoZWNrYm94R3JvdXBDb21wb25lbnQgZXh0ZW5kcyBJbkxpbmVMYXlvdXRDb2xsZWN0aW9uQmFzZUlucHV0IHtcbiAgICAvKipcbiAgICAgKiB2YWx1ZSBmb3Igc2VsZWN0ZWQgY2hlY2tib3hlcy5cbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB2YWx1ZShzZWxlY3RlZFZhbHVlOiBhbnlbXSkge1xuICAgICAgICB0aGlzLnNldFZhbHVlKHNlbGVjdGVkVmFsdWUpO1xuICAgICAgICB0aGlzLl91cGRhdGVTZWxlY3Rpb25Nb2RlbEJ5VmFsdWUoKTtcbiAgICB9XG4gICAgZ2V0IHZhbHVlKCk6IGFueVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUbyBEaXNwbGF5IG11bHRpcGxlIGNoZWNrYm94ZXMgaW4gYSBsaW5lXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgaXNJbmxpbmUoaW5saW5lOiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2lubGluZUN1cnJlbnRWYWx1ZSQubmV4dChpbmxpbmUpO1xuICAgIH1cbiAgICBnZXQgaXNJbmxpbmUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbmxpbmVDdXJyZW50VmFsdWUkLnZhbHVlO1xuICAgIH1cblxuICAgIC8qKiBDaGlsZHJlbiBjaGVja2JveGVzIHBhc3NlZCBhcyBjb250ZW50ICovXG4gICAgQENvbnRlbnRDaGlsZHJlbihDaGVja2JveENvbXBvbmVudClcbiAgICBjb250ZW50Q2hlY2tib3hlczogUXVlcnlMaXN0PENoZWNrYm94Q29tcG9uZW50PjtcblxuICAgIC8qKiBDaGlsZHJlbiBjaGVja2JveGVzIGNyZWF0ZWQgZnJvbSBwYXNzZWQgbGlzdCB2YWx1ZXMuICovXG4gICAgQFZpZXdDaGlsZHJlbihDaGVja2JveENvbXBvbmVudClcbiAgICB2aWV3Q2hlY2tib3hlczogUXVlcnlMaXN0PENoZWNrYm94Q29tcG9uZW50PjtcblxuICAgIC8qKiBFbWl0cyBjaGVja2VkIGNoYW5nZSBldmVudCAqL1xuICAgIEBPdXRwdXQoKVxuICAgIHJlYWRvbmx5IHZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8c3RyaW5nW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmdbXT4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX3NlbGVjdGlvbk1vZGVsID0gbmV3IFNlbGVjdGlvbk1vZGVsKHRydWUpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9yYW5nZVNlbGVjdG9yID0gbmV3IFJhbmdlU2VsZWN0b3IoKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIGNkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcmVhZG9ubHkgX3Jlc3BvbnNpdmVCcmVha3BvaW50c1NlcnZpY2U6IFJlc3BvbnNpdmVCcmVha3BvaW50c1NlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIEBTZWxmKCkgbmdDb250cm9sOiBOZ0NvbnRyb2wsXG4gICAgICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIGNvbnRyb2xDb250YWluZXI6IENvbnRyb2xDb250YWluZXIsXG4gICAgICAgIEBPcHRpb25hbCgpIEBTa2lwU2VsZigpIG5nRm9ybTogTmdGb3JtLFxuICAgICAgICBAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBASG9zdCgpIEBJbmplY3QoRkRfRk9STV9GSUVMRCkgZm9ybUZpZWxkOiBQbGF0Zm9ybUZvcm1GaWVsZCxcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQFNraXBTZWxmKClcbiAgICAgICAgQEhvc3QoKVxuICAgICAgICBASW5qZWN0KEZEX0ZPUk1fRklFTERfQ09OVFJPTClcbiAgICAgICAgQEluamVjdChGRF9GT1JNX0ZJRUxEX0NPTlRST0wpXG4gICAgICAgIGZvcm1Db250cm9sOiBQbGF0Zm9ybUZvcm1GaWVsZENvbnRyb2wsXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIEBJbmplY3QoUkVTUE9OU0lWRV9CUkVBS1BPSU5UU19DT05GSUcpXG4gICAgICAgIHJlYWRvbmx5IF9kZWZhdWx0UmVzcG9uc2l2ZUJyZWFrUG9pbnRDb25maWc6IFJlc3BvbnNpdmVCcmVha1BvaW50Q29uZmlnXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKFxuICAgICAgICAgICAgY2QsXG4gICAgICAgICAgICBlbGVtZW50UmVmLFxuICAgICAgICAgICAgX3Jlc3BvbnNpdmVCcmVha3BvaW50c1NlcnZpY2UsXG4gICAgICAgICAgICBuZ0NvbnRyb2wsXG4gICAgICAgICAgICBjb250cm9sQ29udGFpbmVyLFxuICAgICAgICAgICAgbmdGb3JtLFxuICAgICAgICAgICAgZm9ybUZpZWxkLFxuICAgICAgICAgICAgZm9ybUNvbnRyb2wsXG4gICAgICAgICAgICBfZGVmYXVsdFJlc3BvbnNpdmVCcmVha1BvaW50Q29uZmlnXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBzZWxlY3Rpb25TdGF0ZSBhY3R1YWwgdmFsdWUgb2YgdGhlIGNoZWNrYm94XG4gICAgICogQHBhcmFtIGNoZWNrYm94VHJ1ZVZhbHVlIHRodXRoeSB2YWx1ZSB0byBjb21wYXJlIHRoZSBcInNlbGVjdGlvblN0YXRlXCIgd2l0aFxuICAgICAqL1xuICAgIG9uTW9kZWxDaGFuZ2VkKHNlbGVjdGlvblN0YXRlOiBhbnksIGNoZWNrYm94VHJ1ZVZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgaXNTZWxlY3RlZCA9IHNlbGVjdGlvblN0YXRlID09PSBjaGVja2JveFRydWVWYWx1ZTtcbiAgICAgICAgaWYgKGlzU2VsZWN0ZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGVsLnNlbGVjdChjaGVja2JveFRydWVWYWx1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3Rpb25Nb2RlbC5kZXNlbGVjdChjaGVja2JveFRydWVWYWx1ZSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fc2V0VmFsdWVCeVNlbGVjdGlvbk1vZGVsKCk7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG9uQ2hlY2tib3hDbGljayhpbmRleDogbnVtYmVyLCBzb3VyY2U6ICdjb250ZW50Q2hpbGRyZW4nIHwgJ2xpc3QnLCBldmVudD86IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcyBoYW5kbGVyIHdpbGwgYmUgaW52b2tlZCBhZnRlciBcInZhbHVlQ2hhbmdlXCJcbiAgICAgICAgY29uc3QgcXVlcnlMaXN0ID0gc291cmNlID09PSAnbGlzdCcgPyB0aGlzLnZpZXdDaGVja2JveGVzIDogdGhpcy5jb250ZW50Q2hlY2tib3hlcztcbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gcXVlcnlMaXN0LmdldChpbmRleCk7XG5cbiAgICAgICAgY29uc3QgaXNDaGVja2VkID0gdGhpcy5fc2VsZWN0aW9uTW9kZWwuaXNTZWxlY3RlZCh0YXJnZXQ/LnZhbHVlcy50cnVlVmFsdWUpO1xuICAgICAgICB0aGlzLl9yYW5nZVNlbGVjdG9yLm9uUmFuZ2VFbGVtZW50VG9nZ2xlZChpbmRleCwgZXZlbnQpO1xuXG4gICAgICAgIGlmICghdGhpcy5fcmFuZ2VTZWxlY3Rvci5sYXN0UmFuZ2VTZWxlY3Rpb25TdGF0ZT8uaXNSYW5nZVNlbGVjdGlvbikge1xuICAgICAgICAgICAgLy8gbm8gbmVlZCB0byBwcm9jZWVkLCBpZiBpdCdzIG5vdCBhIHJhbmdlIHNlbGVjdGlvbiAtIGN1cnJlbnQgY2hlY2tib3ggaXMgYWxyZWFkeSB1cGRhdGVkXG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9yYW5nZVNlbGVjdG9yLmFwcGx5VmFsdWVUb0VhY2hJblJhbmdlKChpZHgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNoZWNrYm94ID0gcXVlcnlMaXN0LmdldChpZHgpO1xuICAgICAgICAgICAgaWYgKGNoZWNrYm94Py5kaXNhYmxlZCkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGNoZWNrYm94VmFsdWUgPSBjaGVja2JveD8udmFsdWVzLnRydWVWYWx1ZTtcbiAgICAgICAgICAgIGlmIChpc0NoZWNrZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zZWxlY3Rpb25Nb2RlbC5zZWxlY3QoY2hlY2tib3hWYWx1ZSk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGVsLmRlc2VsZWN0KGNoZWNrYm94VmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fc2V0VmFsdWVCeVNlbGVjdGlvbk1vZGVsKCk7XG4gICAgICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHdyaXRlVmFsdWUoc2VsZWN0ZWRWYWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHN1cGVyLndyaXRlVmFsdWUoY29lcmNlQXJyYXlTYWZlKHNlbGVjdGVkVmFsdWUpKTtcbiAgICAgICAgdGhpcy5fdXBkYXRlU2VsZWN0aW9uTW9kZWxCeVZhbHVlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogYWNjZXNzIGRpc3BsYXkgdmFsdWUgZm9yIG9iamVjdHMsIGFjdHMgYXMgY2hlY2tib3ggbGFiZWwuXG4gICAgICovXG4gICAgZ2V0RGlzcGxheVZhbHVlKGl0ZW06IGFueSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpc3BsYXlWYWx1ZShpdGVtKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBhY2Nlc3MgbG9va3VwIHZhbHVlIGZvciBvYmplY3RzLCBhY3RzIGFzIGNoZWNrYm94IHZhbHVlLlxuICAgICAqL1xuICAgIGdldExvb2t1cFZhbHVlKGl0ZW06IGFueSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmxvb2t1cFZhbHVlKGl0ZW0pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgZ2V0TGlzdEl0ZW1EaXNhYmxlZFZhbHVlKGl0ZW06IENoZWNrYm94R3JvdXBDb21wb25lbnRbJ2xpc3QnXVtudW1iZXJdKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRpc2FibGVkIHx8ICEhKDxTZWxlY3RJdGVtPml0ZW0pPy5kaXNhYmxlZDtcbiAgICB9XG5cbiAgICAvKiogQGluaGVyaXRkb2MgKi9cbiAgICBwcm90ZWN0ZWQgc2V0VmFsdWUodmFsdWU6IGFueSwgZW1pdE9uQ2hhbmdlID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICBzdXBlci5zZXRWYWx1ZShjb2VyY2VBcnJheVNhZmUodmFsdWUpLCBlbWl0T25DaGFuZ2UpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc2V0VmFsdWVCeVNlbGVjdGlvbk1vZGVsKCk6IHZvaWQge1xuICAgICAgICBzdXBlci5zZXRWYWx1ZSh0aGlzLl9zZWxlY3Rpb25Nb2RlbC5zZWxlY3RlZCk7XG4gICAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdXBkYXRlU2VsZWN0aW9uTW9kZWxCeVZhbHVlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9zZWxlY3Rpb25Nb2RlbC5jbGVhcigpO1xuICAgICAgICB0aGlzLnZhbHVlLmZvckVhY2goKHYpID0+IHRoaXMuX3NlbGVjdGlvbk1vZGVsLnNlbGVjdCh2KSk7XG4gICAgICAgIHRoaXMuX2NkLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbn1cbiIsIjxmZC1mb3JtLWdyb3VwXG4gICAgW2lzSW5saW5lXT1cImlzSW5saW5lXCJcbiAgICByb2xlPVwiZ3JvdXBcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkQnlcIlxuICAgIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuPlxuICAgIEBpZiAoIWxpc3QpIHtcbiAgICAgICAgQGZvciAoY2hlY2tib3ggb2YgY29udGVudENoZWNrYm94ZXM7IHRyYWNrIGNoZWNrYm94OyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hlY2tib3h0bXB0XCJcbiAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICBpZDogaWQgKyBpLFxuICAgICAgICAgICAgICAgICAgICBpZHg6IGksXG4gICAgICAgICAgICAgICAgICAgIHNvdXJjZTogJ2NvbnRlbnRDaGlsZHJlbicsXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgICAgICAgICAgICAgIGNoZWNrYm94VmFsdWU6IGNoZWNrYm94LmNvcmVDaGVja2JveD8udmFsdWVzPy50cnVlVmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsdGV4dDogY2hlY2tib3gubGFiZWwsXG4gICAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiBkaXNhYmxlZCB8fCBjaGVja2JveC5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgICAgICAgYXJpYUxhYmVsOiBjaGVja2JveC5hcmlhTGFiZWwsXG4gICAgICAgICAgICAgICAgICAgIGFyaWFMYWJlbGxlZEJ5OiBjaGVja2JveC5hcmlhTGFiZWxsZWRCeSxcbiAgICAgICAgICAgICAgICAgICAgYXJpYURlc2NyaWJlZEJ5OiBjaGVja2JveC5hcmlhRGVzY3JpYmVkQnksXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBjaGVja2JveC50aXRsZVxuICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGlzdHZhbHVlc1wiPjwvbmctdGVtcGxhdGU+XG4gICAgfVxuPC9mZC1mb3JtLWdyb3VwPlxuPG5nLXRlbXBsYXRlICNsaXN0dmFsdWVzPlxuICAgIEBmb3IgKGl0ZW0gb2YgbGlzdDsgdHJhY2sgaXRlbTsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGVja2JveHRtcHRcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgICAgICAgICBpZDogaWQgKyBpLFxuICAgICAgICAgICAgICAgIGlkeDogaSxcbiAgICAgICAgICAgICAgICBzb3VyY2U6ICdsaXN0JyxcbiAgICAgICAgICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICAgICAgICAgIGNoZWNrYm94VmFsdWU6IGdldExvb2t1cFZhbHVlKGl0ZW0pLFxuICAgICAgICAgICAgICAgIGxhYmVsdGV4dDogZ2V0RGlzcGxheVZhbHVlKGl0ZW0pLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkOiBnZXRMaXN0SXRlbURpc2FibGVkVmFsdWUoaXRlbSlcbiAgICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgfVxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZVxuICAgICNjaGVja2JveHRtcHRcbiAgICBsZXQtaWQ9XCJpZFwiXG4gICAgbGV0LWlkeD1cImlkeFwiXG4gICAgbGV0LXNvdXJjZT1cInNvdXJjZVwiXG4gICAgbGV0LW5hbWU9XCJuYW1lXCJcbiAgICBsZXQtY2hlY2tib3hWYWx1ZT1cImNoZWNrYm94VmFsdWVcIlxuICAgIGxldC1sYWJlbHRleHQ9XCJsYWJlbHRleHRcIlxuICAgIGxldC1jaGVja2JveERpc2FibGVkPVwiZGlzYWJsZWRcIlxuICAgIGxldC1hcmlhTGFiZWw9XCJhcmlhTGFiZWxcIlxuICAgIGxldC1hcmlhTGFiZWxsZWRCeT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICBsZXQtYXJpYURlc2NyaWJlZEJ5PVwiYXJpYURlc2NyaWJlZEJ5XCJcbiAgICBsZXQtdGl0bGU9XCJ0aXRsZVwiXG4+XG4gICAgPGZkcC1jaGVja2JveFxuICAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgICAgW3ZhbHVlc109XCJ7IHRydWVWYWx1ZTogY2hlY2tib3hWYWx1ZSB9XCJcbiAgICAgICAgW2xhYmVsXT1cImxhYmVsdGV4dFwiXG4gICAgICAgIFthcmlhTGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICAgICAgW2FyaWFMYWJlbGxlZEJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgW2FyaWFEZXNjcmliZWRCeV09XCJhcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiY2hlY2tib3hEaXNhYmxlZFwiXG4gICAgICAgIFtzdGF0ZV09XCJzdGF0ZVwiXG4gICAgICAgIFtuZ01vZGVsXT1cIl9zZWxlY3Rpb25Nb2RlbC5pc1NlbGVjdGVkKGNoZWNrYm94VmFsdWUpID8gY2hlY2tib3hWYWx1ZSA6IGZhbHNlXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25Nb2RlbENoYW5nZWQoJGV2ZW50LCBjaGVja2JveFZhbHVlKVwiXG4gICAgICAgIChjbGljayk9XCJvbkNoZWNrYm94Q2xpY2soaWR4LCBzb3VyY2UsICRldmVudClcIlxuICAgID5cbiAgICA8L2ZkcC1jaGVja2JveD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9wbGF0Zm9ybS9mb3JtL2NoZWNrYm94LWdyb3VwL2NoZWNrYm94LWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vZm9ybS9jaGVja2JveC1ncm91cC9jaGVja2JveC1ncm91cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDMUQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsZUFBZSxFQUNmLFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1QsWUFBWSxFQUNaLGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsK0JBQStCLEVBQWMsTUFBTSxrQ0FBa0MsQ0FBQztBQUNoSCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQzs7O0FBRW5FOzs7O0dBSUc7QUFVSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsK0JBQStCO0lBVDNFOztRQXlDSSxpQ0FBaUM7UUFFeEIsZ0JBQVcsR0FBMkIsSUFBSSxZQUFZLEVBQVksQ0FBQztRQUU1RSxjQUFjO1FBQ0wsb0JBQWUsR0FB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RSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsNERBNkJsRyxpQkFBaUIsZ0VBSXBCLGlCQUFpQix1RUNqRW5DLDhwRkErRUEsNENEN0NjLGtCQUFrQixnRkFBRSxnQkFBZ0Isb0pBQUUsaUJBQWlCLG9NQUFFLFdBQVc7OzJGQUVyRSxzQkFBc0I7a0JBVGxDLFNBQVM7K0JBQ0ksb0JBQW9CLG1CQUViLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksYUFDMUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSx1QkFBdUIsQ0FBQyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsQ0FBQyxjQUN2RyxJQUFJLFdBQ1AsQ0FBQyxrQkFBa0IsRUFBRSxnQkFBZ0IsRUFBRSxpQkFBaUIsRUFBRSxXQUFXLENBQUM7OEJBTzNFLEtBQUs7c0JBRFIsS0FBSztnQkFhRixRQUFRO3NCQURYLEtBQUs7Z0JBVU4saUJBQWlCO3NCQURoQixlQUFlO3VCQUFDLGlCQUFpQjtnQkFLbEMsY0FBYztzQkFEYixZQUFZO3VCQUFDLGlCQUFpQjtnQkFLdEIsV0FBVztzQkFEbkIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNlbGVjdGlvbk1vZGVsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIENvbnRlbnRDaGlsZHJlbixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgZm9yd2FyZFJlZixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXQsXG4gICAgUXVlcnlMaXN0LFxuICAgIFZpZXdDaGlsZHJlbixcbiAgICBWaWV3RW5jYXBzdWxhdGlvblxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgRkRfRk9STV9GSUVMRF9DT05UUk9MIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvZm9ybXMnO1xuaW1wb3J0IHsgUmFuZ2VTZWxlY3RvciB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcblxuaW1wb3J0IHsgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3JtR3JvdXBDb21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvZm9ybSc7XG5pbXBvcnQgeyBjb2VyY2VBcnJheVNhZmUsIEluTGluZUxheW91dENvbGxlY3Rpb25CYXNlSW5wdXQsIFNlbGVjdEl0ZW0gfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L3BsYXRmb3JtL3NoYXJlZCc7XG5pbXBvcnQgeyBDaGVja2JveENvbXBvbmVudCB9IGZyb20gJy4uL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudCc7XG5cbi8qKlxuICogQ2hlY2tib3ggZ3JvdXAgaW1wbGVtZW50YXRpb24gYmFzZWQgb24gdGhlXG4gKiBodHRwczovL2dpdGh1Yi5jb20vU0FQL2Z1bmRhbWVudGFsLW5neC93aWtpL1BsYXRmb3JtOi1DaGVja2JveEdyb3VwLVRlY2huaWNhbC1EZXNpZ25cbiAqIGRvY3VtZW50cy5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZHAtY2hlY2tib3gtZ3JvdXAnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jaGVja2JveC1ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEZEX0ZPUk1fRklFTERfQ09OVFJPTCwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ2hlY2tib3hHcm91cENvbXBvbmVudCksIG11bHRpOiB0cnVlIH1dLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW0Zvcm1Hcm91cENvbXBvbmVudCwgTmdUZW1wbGF0ZU91dGxldCwgQ2hlY2tib3hDb21wb25lbnQsIEZvcm1zTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBDaGVja2JveEdyb3VwQ29tcG9uZW50IGV4dGVuZHMgSW5MaW5lTGF5b3V0Q29sbGVjdGlvbkJhc2VJbnB1dCB7XG4gICAgLyoqXG4gICAgICogdmFsdWUgZm9yIHNlbGVjdGVkIGNoZWNrYm94ZXMuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgdmFsdWUoc2VsZWN0ZWRWYWx1ZTogYW55W10pIHtcbiAgICAgICAgdGhpcy5zZXRWYWx1ZShzZWxlY3RlZFZhbHVlKTtcbiAgICAgICAgdGhpcy5fdXBkYXRlU2VsZWN0aW9uTW9kZWxCeVZhbHVlKCk7XG4gICAgfVxuICAgIGdldCB2YWx1ZSgpOiBhbnlbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVG8gRGlzcGxheSBtdWx0aXBsZSBjaGVja2JveGVzIGluIGEgbGluZVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGlzSW5saW5lKGlubGluZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9pbmxpbmVDdXJyZW50VmFsdWUkLm5leHQoaW5saW5lKTtcbiAgICB9XG4gICAgZ2V0IGlzSW5saW5lKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5saW5lQ3VycmVudFZhbHVlJC52YWx1ZTtcbiAgICB9XG5cbiAgICAvKiogQ2hpbGRyZW4gY2hlY2tib3hlcyBwYXNzZWQgYXMgY29udGVudCAqL1xuICAgIEBDb250ZW50Q2hpbGRyZW4oQ2hlY2tib3hDb21wb25lbnQpXG4gICAgY29udGVudENoZWNrYm94ZXM6IFF1ZXJ5TGlzdDxDaGVja2JveENvbXBvbmVudD47XG5cbiAgICAvKiogQ2hpbGRyZW4gY2hlY2tib3hlcyBjcmVhdGVkIGZyb20gcGFzc2VkIGxpc3QgdmFsdWVzLiAqL1xuICAgIEBWaWV3Q2hpbGRyZW4oQ2hlY2tib3hDb21wb25lbnQpXG4gICAgdmlld0NoZWNrYm94ZXM6IFF1ZXJ5TGlzdDxDaGVja2JveENvbXBvbmVudD47XG5cbiAgICAvKiogRW1pdHMgY2hlY2tlZCBjaGFuZ2UgZXZlbnQgKi9cbiAgICBAT3V0cHV0KClcbiAgICByZWFkb25seSB2YWx1ZUNoYW5nZTogRXZlbnRFbWl0dGVyPHN0cmluZ1tdPiA9IG5ldyBFdmVudEVtaXR0ZXI8c3RyaW5nW10+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHJlYWRvbmx5IF9zZWxlY3Rpb25Nb2RlbCA9IG5ldyBTZWxlY3Rpb25Nb2RlbCh0cnVlKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfcmFuZ2VTZWxlY3RvciA9IG5ldyBSYW5nZVNlbGVjdG9yKCk7XG5cbiAgICAvKipcbiAgICAgKiBAaGlkZGVuXG4gICAgICogQHBhcmFtIHNlbGVjdGlvblN0YXRlIGFjdHVhbCB2YWx1ZSBvZiB0aGUgY2hlY2tib3hcbiAgICAgKiBAcGFyYW0gY2hlY2tib3hUcnVlVmFsdWUgdGh1dGh5IHZhbHVlIHRvIGNvbXBhcmUgdGhlIFwic2VsZWN0aW9uU3RhdGVcIiB3aXRoXG4gICAgICovXG4gICAgb25Nb2RlbENoYW5nZWQoc2VsZWN0aW9uU3RhdGU6IGFueSwgY2hlY2tib3hUcnVlVmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCBpc1NlbGVjdGVkID0gc2VsZWN0aW9uU3RhdGUgPT09IGNoZWNrYm94VHJ1ZVZhbHVlO1xuICAgICAgICBpZiAoaXNTZWxlY3RlZCkge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0aW9uTW9kZWwuc2VsZWN0KGNoZWNrYm94VHJ1ZVZhbHVlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGVsLmRlc2VsZWN0KGNoZWNrYm94VHJ1ZVZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9zZXRWYWx1ZUJ5U2VsZWN0aW9uTW9kZWwoKTtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgb25DaGVja2JveENsaWNrKGluZGV4OiBudW1iZXIsIHNvdXJjZTogJ2NvbnRlbnRDaGlsZHJlbicgfCAnbGlzdCcsIGV2ZW50PzogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICAvLyB0aGlzIGhhbmRsZXIgd2lsbCBiZSBpbnZva2VkIGFmdGVyIFwidmFsdWVDaGFuZ2VcIlxuICAgICAgICBjb25zdCBxdWVyeUxpc3QgPSBzb3VyY2UgPT09ICdsaXN0JyA/IHRoaXMudmlld0NoZWNrYm94ZXMgOiB0aGlzLmNvbnRlbnRDaGVja2JveGVzO1xuICAgICAgICBjb25zdCB0YXJnZXQgPSBxdWVyeUxpc3QuZ2V0KGluZGV4KTtcblxuICAgICAgICBjb25zdCBpc0NoZWNrZWQgPSB0aGlzLl9zZWxlY3Rpb25Nb2RlbC5pc1NlbGVjdGVkKHRhcmdldD8udmFsdWVzLnRydWVWYWx1ZSk7XG4gICAgICAgIHRoaXMuX3JhbmdlU2VsZWN0b3Iub25SYW5nZUVsZW1lbnRUb2dnbGVkKGluZGV4LCBldmVudCk7XG5cbiAgICAgICAgaWYgKCF0aGlzLl9yYW5nZVNlbGVjdG9yLmxhc3RSYW5nZVNlbGVjdGlvblN0YXRlPy5pc1JhbmdlU2VsZWN0aW9uKSB7XG4gICAgICAgICAgICAvLyBubyBuZWVkIHRvIHByb2NlZWQsIGlmIGl0J3Mgbm90IGEgcmFuZ2Ugc2VsZWN0aW9uIC0gY3VycmVudCBjaGVja2JveCBpcyBhbHJlYWR5IHVwZGF0ZWRcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3JhbmdlU2VsZWN0b3IuYXBwbHlWYWx1ZVRvRWFjaEluUmFuZ2UoKGlkeCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY2hlY2tib3ggPSBxdWVyeUxpc3QuZ2V0KGlkeCk7XG4gICAgICAgICAgICBpZiAoY2hlY2tib3g/LmRpc2FibGVkKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgY2hlY2tib3hWYWx1ZSA9IGNoZWNrYm94Py52YWx1ZXMudHJ1ZVZhbHVlO1xuICAgICAgICAgICAgaWYgKGlzQ2hlY2tlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3NlbGVjdGlvbk1vZGVsLnNlbGVjdChjaGVja2JveFZhbHVlKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fc2VsZWN0aW9uTW9kZWwuZGVzZWxlY3QoY2hlY2tib3hWYWx1ZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLl9zZXRWYWx1ZUJ5U2VsZWN0aW9uTW9kZWwoKTtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHRoaXMudmFsdWUpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgd3JpdGVWYWx1ZShzZWxlY3RlZFZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIud3JpdGVWYWx1ZShjb2VyY2VBcnJheVNhZmUoc2VsZWN0ZWRWYWx1ZSkpO1xuICAgICAgICB0aGlzLl91cGRhdGVTZWxlY3Rpb25Nb2RlbEJ5VmFsdWUoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBhY2Nlc3MgZGlzcGxheSB2YWx1ZSBmb3Igb2JqZWN0cywgYWN0cyBhcyBjaGVja2JveCBsYWJlbC5cbiAgICAgKi9cbiAgICBnZXREaXNwbGF5VmFsdWUoaXRlbTogYW55KTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzcGxheVZhbHVlKGl0ZW0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIGFjY2VzcyBsb29rdXAgdmFsdWUgZm9yIG9iamVjdHMsIGFjdHMgYXMgY2hlY2tib3ggdmFsdWUuXG4gICAgICovXG4gICAgZ2V0TG9va3VwVmFsdWUoaXRlbTogYW55KTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubG9va3VwVmFsdWUoaXRlbSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBnZXRMaXN0SXRlbURpc2FibGVkVmFsdWUoaXRlbTogQ2hlY2tib3hHcm91cENvbXBvbmVudFsnbGlzdCddW251bWJlcl0pOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQgfHwgISEoPFNlbGVjdEl0ZW0+aXRlbSk/LmRpc2FibGVkO1xuICAgIH1cblxuICAgIC8qKiBAaW5oZXJpdGRvYyAqL1xuICAgIHByb3RlY3RlZCBzZXRWYWx1ZSh2YWx1ZTogYW55LCBlbWl0T25DaGFuZ2UgPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLnNldFZhbHVlKGNvZXJjZUFycmF5U2FmZSh2YWx1ZSksIGVtaXRPbkNoYW5nZSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zZXRWYWx1ZUJ5U2VsZWN0aW9uTW9kZWwoKTogdm9pZCB7XG4gICAgICAgIHN1cGVyLnNldFZhbHVlKHRoaXMuX3NlbGVjdGlvbk1vZGVsLnNlbGVjdGVkKTtcbiAgICAgICAgdGhpcy5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZVNlbGVjdGlvbk1vZGVsQnlWYWx1ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2VsZWN0aW9uTW9kZWwuY2xlYXIoKTtcbiAgICAgICAgdGhpcy52YWx1ZS5mb3JFYWNoKCh2KSA9PiB0aGlzLl9zZWxlY3Rpb25Nb2RlbC5zZWxlY3QodikpO1xuICAgICAgICB0aGlzLm1hcmtGb3JDaGVjaygpO1xuICAgIH1cbn1cbiIsIjxmZC1mb3JtLWdyb3VwXG4gICAgW2lzSW5saW5lXT1cImlzSW5saW5lXCJcbiAgICByb2xlPVwiZ3JvdXBcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkQnlcIlxuICAgIFthdHRyLmFyaWEtcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuPlxuICAgIEBpZiAoIWxpc3QpIHtcbiAgICAgICAgQGZvciAoY2hlY2tib3ggb2YgY29udGVudENoZWNrYm94ZXM7IHRyYWNrIGNoZWNrYm94OyBsZXQgaSA9ICRpbmRleCkge1xuICAgICAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hlY2tib3h0bXB0XCJcbiAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwie1xuICAgICAgICAgICAgICAgICAgICBpZDogaWQgKyBpLFxuICAgICAgICAgICAgICAgICAgICBpZHg6IGksXG4gICAgICAgICAgICAgICAgICAgIHNvdXJjZTogJ2NvbnRlbnRDaGlsZHJlbicsXG4gICAgICAgICAgICAgICAgICAgIG5hbWU6IG5hbWUsXG4gICAgICAgICAgICAgICAgICAgIGNoZWNrYm94VmFsdWU6IGNoZWNrYm94LmNvcmVDaGVja2JveD8udmFsdWVzPy50cnVlVmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIGxhYmVsdGV4dDogY2hlY2tib3gubGFiZWwsXG4gICAgICAgICAgICAgICAgICAgIGRpc2FibGVkOiBkaXNhYmxlZCB8fCBjaGVja2JveC5kaXNhYmxlZCxcbiAgICAgICAgICAgICAgICAgICAgYXJpYUxhYmVsOiBjaGVja2JveC5hcmlhTGFiZWwsXG4gICAgICAgICAgICAgICAgICAgIGFyaWFMYWJlbGxlZEJ5OiBjaGVja2JveC5hcmlhTGFiZWxsZWRCeSxcbiAgICAgICAgICAgICAgICAgICAgYXJpYURlc2NyaWJlZEJ5OiBjaGVja2JveC5hcmlhRGVzY3JpYmVkQnksXG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiBjaGVja2JveC50aXRsZVxuICAgICAgICAgICAgICAgIH1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGlzdHZhbHVlc1wiPjwvbmctdGVtcGxhdGU+XG4gICAgfVxuPC9mZC1mb3JtLWdyb3VwPlxuPG5nLXRlbXBsYXRlICNsaXN0dmFsdWVzPlxuICAgIEBmb3IgKGl0ZW0gb2YgbGlzdDsgdHJhY2sgaXRlbTsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICAgICAgPG5nLXRlbXBsYXRlXG4gICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGVja2JveHRtcHRcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cIntcbiAgICAgICAgICAgICAgICBpZDogaWQgKyBpLFxuICAgICAgICAgICAgICAgIGlkeDogaSxcbiAgICAgICAgICAgICAgICBzb3VyY2U6ICdsaXN0JyxcbiAgICAgICAgICAgICAgICBuYW1lOiBuYW1lLFxuICAgICAgICAgICAgICAgIGNoZWNrYm94VmFsdWU6IGdldExvb2t1cFZhbHVlKGl0ZW0pLFxuICAgICAgICAgICAgICAgIGxhYmVsdGV4dDogZ2V0RGlzcGxheVZhbHVlKGl0ZW0pLFxuICAgICAgICAgICAgICAgIGRpc2FibGVkOiBnZXRMaXN0SXRlbURpc2FibGVkVmFsdWUoaXRlbSlcbiAgICAgICAgICAgIH1cIlxuICAgICAgICA+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgfVxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZVxuICAgICNjaGVja2JveHRtcHRcbiAgICBsZXQtaWQ9XCJpZFwiXG4gICAgbGV0LWlkeD1cImlkeFwiXG4gICAgbGV0LXNvdXJjZT1cInNvdXJjZVwiXG4gICAgbGV0LW5hbWU9XCJuYW1lXCJcbiAgICBsZXQtY2hlY2tib3hWYWx1ZT1cImNoZWNrYm94VmFsdWVcIlxuICAgIGxldC1sYWJlbHRleHQ9XCJsYWJlbHRleHRcIlxuICAgIGxldC1jaGVja2JveERpc2FibGVkPVwiZGlzYWJsZWRcIlxuICAgIGxldC1hcmlhTGFiZWw9XCJhcmlhTGFiZWxcIlxuICAgIGxldC1hcmlhTGFiZWxsZWRCeT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICBsZXQtYXJpYURlc2NyaWJlZEJ5PVwiYXJpYURlc2NyaWJlZEJ5XCJcbiAgICBsZXQtdGl0bGU9XCJ0aXRsZVwiXG4+XG4gICAgPGZkcC1jaGVja2JveFxuICAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgICBbbmFtZV09XCJuYW1lXCJcbiAgICAgICAgW3ZhbHVlc109XCJ7IHRydWVWYWx1ZTogY2hlY2tib3hWYWx1ZSB9XCJcbiAgICAgICAgW2xhYmVsXT1cImxhYmVsdGV4dFwiXG4gICAgICAgIFthcmlhTGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICAgICAgW2FyaWFMYWJlbGxlZEJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgW2FyaWFEZXNjcmliZWRCeV09XCJhcmlhRGVzY3JpYmVkQnlcIlxuICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiY2hlY2tib3hEaXNhYmxlZFwiXG4gICAgICAgIFtzdGF0ZV09XCJzdGF0ZVwiXG4gICAgICAgIFtuZ01vZGVsXT1cIl9zZWxlY3Rpb25Nb2RlbC5pc1NlbGVjdGVkKGNoZWNrYm94VmFsdWUpID8gY2hlY2tib3hWYWx1ZSA6IGZhbHNlXCJcbiAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwib25Nb2RlbENoYW5nZWQoJGV2ZW50LCBjaGVja2JveFZhbHVlKVwiXG4gICAgICAgIChjbGljayk9XCJvbkNoZWNrYm94Q2xpY2soaWR4LCBzb3VyY2UsICRldmVudClcIlxuICAgID5cbiAgICA8L2ZkcC1jaGVja2JveD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -2,11 +2,11 @@ import { NgModule } from '@angular/core';
2
2
  import { CheckboxGroupComponent } from './checkbox-group.component';
3
3
  import * as i0 from "@angular/core";
4
4
  export class PlatformCheckboxGroupModule {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: PlatformCheckboxGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.4", ngImport: i0, type: PlatformCheckboxGroupModule, imports: [CheckboxGroupComponent], exports: [CheckboxGroupComponent] }); }
7
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: PlatformCheckboxGroupModule, imports: [CheckboxGroupComponent] }); }
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: PlatformCheckboxGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.8", ngImport: i0, type: PlatformCheckboxGroupModule, imports: [CheckboxGroupComponent], exports: [CheckboxGroupComponent] }); }
7
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: PlatformCheckboxGroupModule, imports: [CheckboxGroupComponent] }); }
8
8
  }
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.4", ngImport: i0, type: PlatformCheckboxGroupModule, decorators: [{
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: PlatformCheckboxGroupModule, decorators: [{
10
10
  type: NgModule,
11
11
  args: [{
12
12
  imports: [CheckboxGroupComponent],