@koobiq/components 20.0.0 → 20.1.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 (192) hide show
  1. package/accordion/accordion-trigger.component.scss +0 -18
  2. package/accordion/accordion.component.scss +9 -2
  3. package/actions-panel/index.d.ts +1 -0
  4. package/alert/_alert-theme.scss +0 -4
  5. package/alert/alert-tokens.scss +4 -4
  6. package/app-switcher/app-switcher-dropdown-app.scss +2 -0
  7. package/breadcrumbs/breadcrumbs.scss +4 -0
  8. package/breadcrumbs/index.d.ts +2 -1
  9. package/button/button-group.scss +42 -2
  10. package/button-toggle/button-toggle.scss +23 -0
  11. package/button-toggle/index.d.ts +3 -1
  12. package/checkbox/checkbox.scss +5 -4
  13. package/clamped-text/index.d.ts +1 -0
  14. package/core/index.d.ts +402 -13
  15. package/core/styles/common/_animation.scss +4 -0
  16. package/core/styles/theming/_components-theming.scss +1 -1
  17. package/core/styles/theming/_scrollbar-theme.scss +4 -0
  18. package/datepicker/_datepicker-theme.scss +1 -1
  19. package/datepicker/datepicker-toggle.scss +3 -3
  20. package/dl/index.d.ts +1 -0
  21. package/dropdown/dropdown.scss +2 -2
  22. package/fesm2022/koobiq-components-accordion.mjs +4 -4
  23. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  24. package/fesm2022/koobiq-components-actions-panel.mjs +14 -5
  25. package/fesm2022/koobiq-components-actions-panel.mjs.map +1 -1
  26. package/fesm2022/koobiq-components-alert.mjs +2 -2
  27. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  28. package/fesm2022/koobiq-components-app-switcher.mjs +6 -6
  29. package/fesm2022/koobiq-components-app-switcher.mjs.map +1 -1
  30. package/fesm2022/koobiq-components-breadcrumbs.mjs +6 -4
  31. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  32. package/fesm2022/koobiq-components-button-toggle.mjs +9 -6
  33. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  34. package/fesm2022/koobiq-components-button.mjs +4 -4
  35. package/fesm2022/koobiq-components-button.mjs.map +1 -1
  36. package/fesm2022/koobiq-components-checkbox.mjs +2 -2
  37. package/fesm2022/koobiq-components-checkbox.mjs.map +1 -1
  38. package/fesm2022/koobiq-components-clamped-text.mjs +4 -0
  39. package/fesm2022/koobiq-components-clamped-text.mjs.map +1 -1
  40. package/fesm2022/koobiq-components-code-block.mjs +4 -0
  41. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  42. package/fesm2022/koobiq-components-core.mjs +449 -112
  43. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  44. package/fesm2022/koobiq-components-datepicker.mjs +5 -5
  45. package/fesm2022/koobiq-components-datepicker.mjs.map +1 -1
  46. package/fesm2022/koobiq-components-dl.mjs +3 -2
  47. package/fesm2022/koobiq-components-dl.mjs.map +1 -1
  48. package/fesm2022/koobiq-components-dropdown.mjs +8 -13
  49. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  50. package/fesm2022/koobiq-components-file-upload.mjs +33 -22
  51. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  52. package/fesm2022/koobiq-components-filter-bar.mjs +974 -758
  53. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  54. package/fesm2022/koobiq-components-flag.mjs +66 -0
  55. package/fesm2022/koobiq-components-flag.mjs.map +1 -0
  56. package/fesm2022/koobiq-components-form-field.mjs +2 -2
  57. package/fesm2022/koobiq-components-form-field.mjs.map +1 -1
  58. package/fesm2022/koobiq-components-icon.mjs +2 -2
  59. package/fesm2022/koobiq-components-icon.mjs.map +1 -1
  60. package/fesm2022/koobiq-components-inline-edit.mjs +27 -6
  61. package/fesm2022/koobiq-components-inline-edit.mjs.map +1 -1
  62. package/fesm2022/koobiq-components-list.mjs +39 -20
  63. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  64. package/fesm2022/koobiq-components-loader-overlay.mjs +2 -2
  65. package/fesm2022/koobiq-components-loader-overlay.mjs.map +1 -1
  66. package/fesm2022/koobiq-components-modal.mjs +9 -5
  67. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  68. package/fesm2022/koobiq-components-navbar.mjs +10 -9
  69. package/fesm2022/koobiq-components-navbar.mjs.map +1 -1
  70. package/fesm2022/koobiq-components-notification-center.mjs +178 -19
  71. package/fesm2022/koobiq-components-notification-center.mjs.map +1 -1
  72. package/fesm2022/koobiq-components-overflow-items.mjs +12 -4
  73. package/fesm2022/koobiq-components-overflow-items.mjs.map +1 -1
  74. package/fesm2022/koobiq-components-popover.mjs +4 -4
  75. package/fesm2022/koobiq-components-popover.mjs.map +1 -1
  76. package/fesm2022/koobiq-components-progress-bar.mjs +2 -2
  77. package/fesm2022/koobiq-components-progress-bar.mjs.map +1 -1
  78. package/fesm2022/koobiq-components-progress-spinner.mjs +2 -2
  79. package/fesm2022/koobiq-components-progress-spinner.mjs.map +1 -1
  80. package/fesm2022/koobiq-components-radio.mjs +3 -7
  81. package/fesm2022/koobiq-components-radio.mjs.map +1 -1
  82. package/fesm2022/koobiq-components-select.mjs +38 -16
  83. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  84. package/fesm2022/koobiq-components-sidebar.mjs +4 -0
  85. package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
  86. package/fesm2022/koobiq-components-sidepanel.mjs +3 -3
  87. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  88. package/fesm2022/koobiq-components-skeleton.mjs +2 -2
  89. package/fesm2022/koobiq-components-skeleton.mjs.map +1 -1
  90. package/fesm2022/koobiq-components-split-button.mjs +2 -2
  91. package/fesm2022/koobiq-components-split-button.mjs.map +1 -1
  92. package/fesm2022/koobiq-components-splitter.mjs +6 -2
  93. package/fesm2022/koobiq-components-splitter.mjs.map +1 -1
  94. package/fesm2022/koobiq-components-table.mjs +8 -6
  95. package/fesm2022/koobiq-components-table.mjs.map +1 -1
  96. package/fesm2022/koobiq-components-tabs.mjs +19 -7
  97. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  98. package/fesm2022/koobiq-components-tags.mjs +7 -0
  99. package/fesm2022/koobiq-components-tags.mjs.map +1 -1
  100. package/fesm2022/koobiq-components-textarea.mjs +7 -14
  101. package/fesm2022/koobiq-components-textarea.mjs.map +1 -1
  102. package/fesm2022/koobiq-components-time-range.mjs +4 -4
  103. package/fesm2022/koobiq-components-time-range.mjs.map +1 -1
  104. package/fesm2022/koobiq-components-timezone.mjs +6 -0
  105. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  106. package/fesm2022/koobiq-components-title.mjs +132 -14
  107. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  108. package/fesm2022/koobiq-components-toast.mjs +1 -1
  109. package/fesm2022/koobiq-components-toast.mjs.map +1 -1
  110. package/fesm2022/koobiq-components-toggle.mjs +2 -2
  111. package/fesm2022/koobiq-components-toggle.mjs.map +1 -1
  112. package/fesm2022/koobiq-components-tooltip.mjs +50 -2
  113. package/fesm2022/koobiq-components-tooltip.mjs.map +1 -1
  114. package/fesm2022/koobiq-components-tree-select.mjs +44 -11
  115. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  116. package/fesm2022/koobiq-components-tree.mjs +67 -41
  117. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  118. package/fesm2022/koobiq-components-username.mjs +16 -3
  119. package/fesm2022/koobiq-components-username.mjs.map +1 -1
  120. package/file-upload/file-upload-tokens.scss +1 -0
  121. package/file-upload/index.d.ts +10 -7
  122. package/filter-bar/_filter-bar-theme.scss +86 -0
  123. package/filter-bar/filter-bar-tokens.scss +6 -0
  124. package/filter-bar/filter-bar.scss +10 -4
  125. package/filter-bar/filter-refresher.scss +1 -1
  126. package/filter-bar/filters.scss +23 -19
  127. package/filter-bar/index.d.ts +707 -338
  128. package/filter-bar/pipes/base-pipe.scss +14 -35
  129. package/filter-bar/pipes/pipe-date.scss +20 -14
  130. package/filter-bar/pipes/pipe-multi-tree-select.scss +5 -3
  131. package/filter-bar/pipes/pipe-multiselect.scss +5 -3
  132. package/filter-bar/pipes/pipe-readonly.scss +4 -13
  133. package/filter-bar/pipes/pipe-select.scss +3 -1
  134. package/filter-bar/pipes/pipe-tree-select.scss +3 -1
  135. package/flag/flag.scss +53 -0
  136. package/flag/index.d.ts +44 -0
  137. package/icon/icon-item-tokens.scss +1 -1
  138. package/inline-edit/index.d.ts +5 -0
  139. package/inline-edit/inline-edit.scss +7 -7
  140. package/link/link-tokens.scss +2 -2
  141. package/list/index.d.ts +11 -2
  142. package/loader-overlay/loader-overlay-tokens.scss +1 -1
  143. package/modal/_modal-animation.scss +6 -6
  144. package/modal/_modal-theme.scss +5 -0
  145. package/modal/index.d.ts +3 -1
  146. package/modal/modal.scss +15 -0
  147. package/navbar/index.d.ts +1 -0
  148. package/navbar/navbar-item.scss +9 -0
  149. package/notification-center/_notification-center-theme.scss +2 -1
  150. package/notification-center/index.d.ts +88 -3
  151. package/notification-center/notification-center.scss +42 -4
  152. package/notification-center/notification-item.scss +3 -2
  153. package/overflow-items/index.d.ts +1 -0
  154. package/package.json +7 -3
  155. package/prebuilt-themes/dark-theme.css +1 -1
  156. package/prebuilt-themes/light-theme.css +1 -1
  157. package/prebuilt-themes/theme.css +1 -1
  158. package/progress-bar/progress-bar.scss +4 -0
  159. package/progress-spinner/progress-spinner.scss +5 -1
  160. package/radio/index.d.ts +1 -5
  161. package/radio/radio.scss +18 -4
  162. package/schematics/collection.json +5 -0
  163. package/schematics/migrations/filter-bar-signals/README.md +66 -0
  164. package/schematics/migrations/filter-bar-signals/data.js +72 -0
  165. package/schematics/migrations/filter-bar-signals/index.js +316 -0
  166. package/schematics/migrations/filter-bar-signals/schema.json +20 -0
  167. package/schematics/migrations.json +5 -0
  168. package/schematics/ng-add/index.js +1 -1
  169. package/select/index.d.ts +10 -2
  170. package/sidebar/index.d.ts +1 -0
  171. package/skeleton/skeleton.scss +4 -0
  172. package/split-button/_split-button-theme.scss +2 -2
  173. package/splitter/_splitter-theme.scss +2 -2
  174. package/splitter/index.d.ts +1 -0
  175. package/table/_table-theme.scss +4 -0
  176. package/table/index.d.ts +3 -2
  177. package/tabs/index.d.ts +2 -0
  178. package/tabs/tab-header.scss +1 -0
  179. package/tabs/tabs-tokens.scss +1 -1
  180. package/textarea/index.d.ts +0 -1
  181. package/time-range/time-range.scss +0 -8
  182. package/timepicker/timepicker.scss +2 -2
  183. package/timezone/index.d.ts +1 -0
  184. package/title/index.d.ts +92 -2
  185. package/tooltip/index.d.ts +51 -3
  186. package/tree/_tree-theme.scss +2 -7
  187. package/tree/index.d.ts +19 -4
  188. package/tree/toggle.scss +5 -0
  189. package/tree/tree-option.scss +0 -4
  190. package/tree-select/_tree-select-theme.scss +1 -1
  191. package/tree-select/index.d.ts +9 -2
  192. package/username/index.d.ts +20 -2
@@ -112,7 +112,7 @@ class KbqSplitButton extends KbqColorDirective {
112
112
  <ng-content select="[kbq-button]" />
113
113
 
114
114
  <ng-content select="[kbq-button]" />
115
- `, isInline: true, styles: [".kbq-truncate-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-split-button{display:flex;flex-direction:row;min-width:0;border-radius:var(--kbq-size-border-radius)}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first.kbq-button{padding-right:10px}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first{min-width:0;border-right:none;border-top-right-radius:unset;border-bottom-right-radius:unset}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first .kbq-button-wrapper{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second{border-left:none;border-top-left-radius:unset;border-bottom-left-radius:unset}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second:before{display:block;content:\"\";position:absolute;left:0;top:calc(var(--kbq-size-s) - var(--kbq-button-size-border-width));width:1px;height:var(--kbq-size-l)}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first:not(.kbq-disabled):is(:hover,.kbq-hover,.cdk-keyboard-focused,.kbq-active)+.kbq-split-button_second:before{display:none}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second:not(.kbq-disabled):is(:hover,.kbq-hover,.cdk-keyboard-focused,.kbq-active):before{display:none}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-button-icon+.kbq-button-icon{padding-left:var(--kbq-size-xxs);padding-right:var(--kbq-size-xxs)}.kbq-split-button:hover:has(.kbq-button_transparent){background:var(--kbq-states-background-transparent-hover, rgba(108, 115, 147, .08))}.kbq-split-button .kbq-split-button_item.kbq-contrast.kbq-button_filled:before{background:var(--kbq-line-on-contrast-fade, var(--kbq-foreground-on-contrast))}.kbq-split-button .kbq-split-button_item.kbq-contrast.kbq-button_transparent:before,.kbq-split-button .kbq-split-button_item.kbq-contrast-fade.kbq-button_outline:before,.kbq-split-button .kbq-split-button_item.kbq-contrast-fade.kbq-button_filled:before{background:var(--kbq-line-contrast-fade)}.kbq-split-button .kbq-split-button_item.kbq-theme-fade.kbq-button_outline:before,.kbq-split-button .kbq-split-button_item.kbq-theme.kbq-button_transparent:before{background:var(--kbq-line-theme-fade)}.kbq-split-button .kbq-split-button_item.kbq-split-button_first.cdk-keyboard-focused{z-index:1;box-shadow:inset -1px 0 0 0 var(--kbq-states-line-focus-theme)}.kbq-split-button .kbq-split-button_item.kbq-split-button_second.cdk-keyboard-focused{box-shadow:inset 1px 0 0 0 var(--kbq-states-line-focus-theme)}.kbq-split-button .kbq-button_outline:has(+.kbq-button_outline){border-right:none}.kbq-split-button .kbq-button_outline:has(+.kbq-button_outline)+.kbq-button_outline{border-left:none}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_item,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_item{background:var(--kbq-states-background-disabled)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):hover,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):hover{background:var(--kbq-states-background-contrast-fade-hover)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):active,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):active{background:var(--kbq-states-background-contrast-fade-active)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled) .kbq-icon.kbq-empty,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled) .kbq-icon.kbq-empty{color:var(--kbq-icon-contrast)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):before,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):before{background:var(--kbq-line-contrast-fade)}.kbq-split-button.kbq-split-button_first-disabled.kbq-theme-fade.kbq-button_outline .kbq-split-button_item{border-color:var(--kbq-button-outline-theme-fade-on-states-disabled-border)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-contrast.kbq-button_filled .kbq-split-button_second{background:var(--kbq-button-filled-contrast-fade-off-background)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-contrast-fade.kbq-button_filled .kbq-split-button_first{background:var(--kbq-states-background-disabled)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-theme-fade.kbq-button_outline .kbq-split-button_item{border-color:var(--kbq-button-outline-theme-fade-on-states-disabled-border)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-theme.kbq-button_transparent .kbq-split-button_second:before{background:var(--kbq-states-line-disabled)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled) .kbq-split-button_second:before{background:#8a8fa899}.kbq-split-button.kbq-split-button_first-disabled.kbq-split-button_second-disabled .kbq-split-button_second:before{background:var(--kbq-line-contrast-fade)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
115
+ `, isInline: true, styles: [".kbq-truncate-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-split-button{display:flex;flex-direction:row;min-width:0;border-radius:var(--kbq-size-border-radius)}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first.kbq-button{padding-right:10px}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first{min-width:0;border-right:none;border-top-right-radius:unset;border-bottom-right-radius:unset}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first .kbq-button-wrapper{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second{border-left:none;border-top-left-radius:unset;border-bottom-left-radius:unset}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second:before{display:block;content:\"\";position:absolute;left:0;top:calc(var(--kbq-size-s) - var(--kbq-button-size-border-width));width:1px;height:var(--kbq-size-l)}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first:not(.kbq-disabled):is(:hover,.kbq-hover,.cdk-keyboard-focused,.kbq-active)+.kbq-split-button_second:before{display:none}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second:not(.kbq-disabled):is(:hover,.kbq-hover,.cdk-keyboard-focused,.kbq-active):before{display:none}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-button-icon+.kbq-button-icon{padding-left:var(--kbq-size-xxs);padding-right:var(--kbq-size-xxs)}.kbq-split-button:hover:has(.kbq-button_transparent){background:var(--kbq-states-background-transparent-hover)}.kbq-split-button .kbq-split-button_item.kbq-contrast.kbq-button_filled:before{background:var(--kbq-line-on-contrast-fade, var(--kbq-foreground-on-contrast))}.kbq-split-button .kbq-split-button_item.kbq-contrast.kbq-button_transparent:before,.kbq-split-button .kbq-split-button_item.kbq-contrast-fade.kbq-button_outline:before,.kbq-split-button .kbq-split-button_item.kbq-contrast-fade.kbq-button_filled:before{background:var(--kbq-line-contrast-fade)}.kbq-split-button .kbq-split-button_item.kbq-theme-fade.kbq-button_outline:before,.kbq-split-button .kbq-split-button_item.kbq-theme.kbq-button_transparent:before{background:var(--kbq-line-theme-fade)}.kbq-split-button .kbq-split-button_item.kbq-split-button_first.cdk-keyboard-focused{z-index:1;box-shadow:inset -1px 0 0 0 var(--kbq-states-line-focus-theme)}.kbq-split-button .kbq-split-button_item.kbq-split-button_second.cdk-keyboard-focused{box-shadow:inset 1px 0 0 0 var(--kbq-states-line-focus-theme)}.kbq-split-button .kbq-button_outline:has(+.kbq-button_outline){border-right:none}.kbq-split-button .kbq-button_outline:has(+.kbq-button_outline)+.kbq-button_outline{border-left:none}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_item,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_item{background:var(--kbq-states-background-disabled)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):hover,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):hover{background:var(--kbq-states-background-contrast-fade-hover)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):active,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):active{background:var(--kbq-states-background-contrast-fade-active)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled) .kbq-icon.kbq-empty,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled) .kbq-icon.kbq-empty{color:var(--kbq-icon-contrast)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):before,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):before{background:var(--kbq-line-contrast-fade)}.kbq-split-button.kbq-split-button_first-disabled.kbq-theme-fade.kbq-button_outline .kbq-split-button_item{border-color:var(--kbq-button-outline-theme-fade-on-states-disabled-border)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-contrast.kbq-button_filled .kbq-split-button_second{background:var(--kbq-button-filled-contrast-fade-off-background)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-contrast-fade.kbq-button_filled .kbq-split-button_first{background:var(--kbq-states-background-disabled)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-theme-fade.kbq-button_outline .kbq-split-button_item{border-color:var(--kbq-button-outline-theme-fade-on-states-disabled-border)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-theme.kbq-button_transparent .kbq-split-button_second:before{background:var(--kbq-states-line-disabled)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled) .kbq-split-button_second:before{background:var(--kbq-states-line-disabled)}.kbq-split-button.kbq-split-button_first-disabled.kbq-split-button_second-disabled .kbq-split-button_second:before{background:var(--kbq-line-contrast-fade)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
116
116
  }
117
117
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: KbqSplitButton, decorators: [{
118
118
  type: Component,
@@ -126,7 +126,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImpo
126
126
  '[class.kbq-split-button_styles-for-nested]': 'buttons.length > 1',
127
127
  '[class.kbq-split-button_first-disabled]': 'firstDisabled',
128
128
  '[class.kbq-split-button_second-disabled]': 'secondDisabled'
129
- }, styles: [".kbq-truncate-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-split-button{display:flex;flex-direction:row;min-width:0;border-radius:var(--kbq-size-border-radius)}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first.kbq-button{padding-right:10px}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first{min-width:0;border-right:none;border-top-right-radius:unset;border-bottom-right-radius:unset}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first .kbq-button-wrapper{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second{border-left:none;border-top-left-radius:unset;border-bottom-left-radius:unset}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second:before{display:block;content:\"\";position:absolute;left:0;top:calc(var(--kbq-size-s) - var(--kbq-button-size-border-width));width:1px;height:var(--kbq-size-l)}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first:not(.kbq-disabled):is(:hover,.kbq-hover,.cdk-keyboard-focused,.kbq-active)+.kbq-split-button_second:before{display:none}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second:not(.kbq-disabled):is(:hover,.kbq-hover,.cdk-keyboard-focused,.kbq-active):before{display:none}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-button-icon+.kbq-button-icon{padding-left:var(--kbq-size-xxs);padding-right:var(--kbq-size-xxs)}.kbq-split-button:hover:has(.kbq-button_transparent){background:var(--kbq-states-background-transparent-hover, rgba(108, 115, 147, .08))}.kbq-split-button .kbq-split-button_item.kbq-contrast.kbq-button_filled:before{background:var(--kbq-line-on-contrast-fade, var(--kbq-foreground-on-contrast))}.kbq-split-button .kbq-split-button_item.kbq-contrast.kbq-button_transparent:before,.kbq-split-button .kbq-split-button_item.kbq-contrast-fade.kbq-button_outline:before,.kbq-split-button .kbq-split-button_item.kbq-contrast-fade.kbq-button_filled:before{background:var(--kbq-line-contrast-fade)}.kbq-split-button .kbq-split-button_item.kbq-theme-fade.kbq-button_outline:before,.kbq-split-button .kbq-split-button_item.kbq-theme.kbq-button_transparent:before{background:var(--kbq-line-theme-fade)}.kbq-split-button .kbq-split-button_item.kbq-split-button_first.cdk-keyboard-focused{z-index:1;box-shadow:inset -1px 0 0 0 var(--kbq-states-line-focus-theme)}.kbq-split-button .kbq-split-button_item.kbq-split-button_second.cdk-keyboard-focused{box-shadow:inset 1px 0 0 0 var(--kbq-states-line-focus-theme)}.kbq-split-button .kbq-button_outline:has(+.kbq-button_outline){border-right:none}.kbq-split-button .kbq-button_outline:has(+.kbq-button_outline)+.kbq-button_outline{border-left:none}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_item,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_item{background:var(--kbq-states-background-disabled)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):hover,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):hover{background:var(--kbq-states-background-contrast-fade-hover)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):active,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):active{background:var(--kbq-states-background-contrast-fade-active)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled) .kbq-icon.kbq-empty,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled) .kbq-icon.kbq-empty{color:var(--kbq-icon-contrast)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):before,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):before{background:var(--kbq-line-contrast-fade)}.kbq-split-button.kbq-split-button_first-disabled.kbq-theme-fade.kbq-button_outline .kbq-split-button_item{border-color:var(--kbq-button-outline-theme-fade-on-states-disabled-border)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-contrast.kbq-button_filled .kbq-split-button_second{background:var(--kbq-button-filled-contrast-fade-off-background)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-contrast-fade.kbq-button_filled .kbq-split-button_first{background:var(--kbq-states-background-disabled)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-theme-fade.kbq-button_outline .kbq-split-button_item{border-color:var(--kbq-button-outline-theme-fade-on-states-disabled-border)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-theme.kbq-button_transparent .kbq-split-button_second:before{background:var(--kbq-states-line-disabled)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled) .kbq-split-button_second:before{background:#8a8fa899}.kbq-split-button.kbq-split-button_first-disabled.kbq-split-button_second-disabled .kbq-split-button_second:before{background:var(--kbq-line-contrast-fade)}\n"] }]
129
+ }, styles: [".kbq-truncate-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-no-select{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.kbq-split-button{display:flex;flex-direction:row;min-width:0;border-radius:var(--kbq-size-border-radius)}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first.kbq-button{padding-right:10px}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first{min-width:0;border-right:none;border-top-right-radius:unset;border-bottom-right-radius:unset}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first .kbq-button-wrapper{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second{border-left:none;border-top-left-radius:unset;border-bottom-left-radius:unset}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second:before{display:block;content:\"\";position:absolute;left:0;top:calc(var(--kbq-size-s) - var(--kbq-button-size-border-width));width:1px;height:var(--kbq-size-l)}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_first:not(.kbq-disabled):is(:hover,.kbq-hover,.cdk-keyboard-focused,.kbq-active)+.kbq-split-button_second:before{display:none}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-split-button_second:not(.kbq-disabled):is(:hover,.kbq-hover,.cdk-keyboard-focused,.kbq-active):before{display:none}.kbq-split-button.kbq-split-button_styles-for-nested .kbq-button-icon+.kbq-button-icon{padding-left:var(--kbq-size-xxs);padding-right:var(--kbq-size-xxs)}.kbq-split-button:hover:has(.kbq-button_transparent){background:var(--kbq-states-background-transparent-hover)}.kbq-split-button .kbq-split-button_item.kbq-contrast.kbq-button_filled:before{background:var(--kbq-line-on-contrast-fade, var(--kbq-foreground-on-contrast))}.kbq-split-button .kbq-split-button_item.kbq-contrast.kbq-button_transparent:before,.kbq-split-button .kbq-split-button_item.kbq-contrast-fade.kbq-button_outline:before,.kbq-split-button .kbq-split-button_item.kbq-contrast-fade.kbq-button_filled:before{background:var(--kbq-line-contrast-fade)}.kbq-split-button .kbq-split-button_item.kbq-theme-fade.kbq-button_outline:before,.kbq-split-button .kbq-split-button_item.kbq-theme.kbq-button_transparent:before{background:var(--kbq-line-theme-fade)}.kbq-split-button .kbq-split-button_item.kbq-split-button_first.cdk-keyboard-focused{z-index:1;box-shadow:inset -1px 0 0 0 var(--kbq-states-line-focus-theme)}.kbq-split-button .kbq-split-button_item.kbq-split-button_second.cdk-keyboard-focused{box-shadow:inset 1px 0 0 0 var(--kbq-states-line-focus-theme)}.kbq-split-button .kbq-button_outline:has(+.kbq-button_outline){border-right:none}.kbq-split-button .kbq-button_outline:has(+.kbq-button_outline)+.kbq-button_outline{border-left:none}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_item,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_item{background:var(--kbq-states-background-disabled)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):hover,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):hover{background:var(--kbq-states-background-contrast-fade-hover)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):active,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):active{background:var(--kbq-states-background-contrast-fade-active)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled) .kbq-icon.kbq-empty,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled) .kbq-icon.kbq-empty{color:var(--kbq-icon-contrast)}.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast-fade.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):before,.kbq-split-button.kbq-split-button_first-disabled.kbq-contrast.kbq-button_filled .kbq-split-button_second:not(.kbq-disabled):before{background:var(--kbq-line-contrast-fade)}.kbq-split-button.kbq-split-button_first-disabled.kbq-theme-fade.kbq-button_outline .kbq-split-button_item{border-color:var(--kbq-button-outline-theme-fade-on-states-disabled-border)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-contrast.kbq-button_filled .kbq-split-button_second{background:var(--kbq-button-filled-contrast-fade-off-background)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-contrast-fade.kbq-button_filled .kbq-split-button_first{background:var(--kbq-states-background-disabled)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-theme-fade.kbq-button_outline .kbq-split-button_item{border-color:var(--kbq-button-outline-theme-fade-on-states-disabled-border)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled).kbq-theme.kbq-button_transparent .kbq-split-button_second:before{background:var(--kbq-states-line-disabled)}.kbq-split-button.kbq-split-button_second-disabled:not(.kbq-split-button_first-disabled) .kbq-split-button_second:before{background:var(--kbq-states-line-disabled)}.kbq-split-button.kbq-split-button_first-disabled.kbq-split-button_second-disabled .kbq-split-button_second:before{background:var(--kbq-line-contrast-fade)}\n"] }]
130
130
  }], ctorParameters: () => [], propDecorators: { buttons: [{
131
131
  type: ContentChildren,
132
132
  args: [KbqButton]
@@ -1 +1 @@
1
- {"version":3,"file":"koobiq-components-split-button.mjs","sources":["../../../packages/components/split-button/split-button.ts","../../../packages/components/split-button/split-button.module.ts","../../../packages/components/split-button/koobiq-components-split-button.ts"],"sourcesContent":["import {\n AfterContentInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n contentChild,\n ContentChildren,\n Input,\n input,\n QueryList,\n ViewEncapsulation\n} from '@angular/core';\nimport { KbqButton, KbqButtonStyles } from '@koobiq/components/button';\nimport { KbqColorDirective, KbqComponentColors, kbqInjectNativeElement, ThemePalette } from '@koobiq/components/core';\nimport { KbqDropdownTrigger } from '@koobiq/components/dropdown';\nimport { delay } from 'rxjs/operators';\n\n@Component({\n selector: 'kbq-split-button, [kbq-split-button]',\n template: `\n <ng-content select=\"[kbq-button]\" />\n\n <ng-content select=\"[kbq-button]\" />\n `,\n styleUrls: ['./split-button.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-split-button',\n '[class]': 'kbqStyle',\n '[class.kbq-split-button_styles-for-nested]': 'buttons.length > 1',\n '[class.kbq-split-button_first-disabled]': 'firstDisabled',\n '[class.kbq-split-button_second-disabled]': 'secondDisabled'\n }\n})\nexport class KbqSplitButton extends KbqColorDirective implements AfterContentInit {\n private nativeElement = kbqInjectNativeElement();\n\n /** @docs-private */\n @ContentChildren(KbqButton) protected buttons: QueryList<KbqButton>;\n /** @docs-private */\n protected readonly dropdownTrigger = contentChild(KbqDropdownTrigger);\n\n /** Sets the width of the dropdown to the width of the trigger. Default is false */\n readonly panelAutoWidth = input<boolean>(false);\n\n /** component style, will be set for nested buttons */\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get kbqStyle(): string {\n return `kbq-button_${this._kbqStyle}`;\n }\n\n set kbqStyle(value: KbqButtonStyles | string) {\n this._kbqStyle = value || KbqButtonStyles.Filled;\n\n this.updateStyle(this._kbqStyle);\n }\n\n private _kbqStyle: string | KbqButtonStyles = KbqButtonStyles.Filled;\n\n /** component color, will be set for nested buttons */\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get color(): KbqComponentColors | ThemePalette | string {\n return this._color;\n }\n\n set color(value: KbqComponentColors | ThemePalette | string) {\n if (!value) return;\n\n super.color = value;\n\n this.updateColor(this.color);\n }\n\n /** Whether the checkbox is disabled. */\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input({ transform: booleanAttribute })\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value: boolean) {\n this._disabled = value;\n\n this.updateDisabledState(this._disabled);\n }\n\n protected _disabled: boolean;\n\n get firstDisabled(): boolean {\n return this.buttons.first?.disabled;\n }\n\n get secondDisabled(): boolean {\n return this.buttons.length > 1 && this.buttons.last?.disabled;\n }\n\n constructor() {\n super();\n\n this.color = KbqComponentColors.ContrastFade;\n }\n\n ngAfterContentInit(): void {\n this.updateClasses();\n this.updateStyle(this._kbqStyle);\n this.updateColor(this.color);\n this.updateDisabledState(this.disabled);\n this.updateDropdownParams();\n\n if (!this.buttons.length) {\n throw new Error(`kbq-split-button must contain at least one button`);\n }\n\n this.buttons.changes.pipe(delay(0)).subscribe(() => {\n this.updateClasses();\n this.updateStyle(this._kbqStyle);\n this.updateColor(this.color);\n this.updateDropdownParams();\n });\n }\n\n private updateClasses() {\n this.buttons.forEach((button: KbqButton) => {\n button.getHostElement().classList.remove(`kbq-split-button_first`, `kbq-split-button_second`);\n });\n\n this.buttons.first?.getHostElement().classList.add(`kbq-split-button_first`);\n this.buttons.last?.getHostElement().classList.add(`kbq-split-button_second`);\n this.buttons.forEach((button: KbqButton) => {\n button.getHostElement().classList.add(`kbq-split-button_item`);\n });\n }\n\n private updateColor(color: KbqComponentColors | ThemePalette | string) {\n this.buttons?.forEach((button: KbqButton) => (button.color = color));\n }\n\n private updateStyle(style: KbqButtonStyles | string) {\n this.buttons?.forEach((button: KbqButton) => (button.kbqStyle = style));\n }\n\n private updateDisabledState(state: boolean) {\n if (state === undefined) return;\n\n this.buttons?.forEach((button: KbqButton) => (button.disabled = state));\n }\n\n private updateDropdownParams = () => {\n const dropdownTrigger = this.dropdownTrigger();\n\n if (!dropdownTrigger) return;\n\n dropdownTrigger.dropdown.xPosition = 'before';\n\n if (this.panelAutoWidth()) {\n // we need to use a timeout of about 50ms to wait for the styles to apply\n setTimeout(() => {\n const { width } = this.nativeElement.getClientRects()[0];\n\n const dropdownTrigger = this.dropdownTrigger();\n\n if (dropdownTrigger) {\n dropdownTrigger.dropdown.triggerWidth = `${Math.round(width)}px`;\n }\n }, 50);\n }\n };\n}\n","import { NgModule } from '@angular/core';\nimport { KbqSplitButton } from './split-button';\n\n@NgModule({\n imports: [\n KbqSplitButton\n ],\n exports: [KbqSplitButton]\n})\nexport class KbqSplitButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"koobiq-components-split-button.mjs","sources":["../../../packages/components/split-button/split-button.ts","../../../packages/components/split-button/split-button.module.ts","../../../packages/components/split-button/koobiq-components-split-button.ts"],"sourcesContent":["import {\n AfterContentInit,\n booleanAttribute,\n ChangeDetectionStrategy,\n Component,\n contentChild,\n ContentChildren,\n Input,\n input,\n QueryList,\n ViewEncapsulation\n} from '@angular/core';\nimport { KbqButton, KbqButtonStyles } from '@koobiq/components/button';\nimport { KbqColorDirective, KbqComponentColors, kbqInjectNativeElement, ThemePalette } from '@koobiq/components/core';\nimport { KbqDropdownTrigger } from '@koobiq/components/dropdown';\nimport { delay } from 'rxjs/operators';\n\n@Component({\n selector: 'kbq-split-button, [kbq-split-button]',\n template: `\n <ng-content select=\"[kbq-button]\" />\n\n <ng-content select=\"[kbq-button]\" />\n `,\n styleUrls: ['./split-button.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-split-button',\n '[class]': 'kbqStyle',\n '[class.kbq-split-button_styles-for-nested]': 'buttons.length > 1',\n '[class.kbq-split-button_first-disabled]': 'firstDisabled',\n '[class.kbq-split-button_second-disabled]': 'secondDisabled'\n }\n})\nexport class KbqSplitButton extends KbqColorDirective implements AfterContentInit {\n private nativeElement = kbqInjectNativeElement();\n\n /** @docs-private */\n @ContentChildren(KbqButton) protected buttons: QueryList<KbqButton>;\n /** @docs-private */\n protected readonly dropdownTrigger = contentChild(KbqDropdownTrigger);\n\n /** Sets the width of the dropdown to the width of the trigger. Default is false */\n readonly panelAutoWidth = input<boolean>(false);\n\n /** component style, will be set for nested buttons */\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get kbqStyle(): string {\n return `kbq-button_${this._kbqStyle}`;\n }\n\n set kbqStyle(value: KbqButtonStyles | string) {\n this._kbqStyle = value || KbqButtonStyles.Filled;\n\n this.updateStyle(this._kbqStyle);\n }\n\n private _kbqStyle: string | KbqButtonStyles = KbqButtonStyles.Filled;\n\n /** component color, will be set for nested buttons */\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get color(): KbqComponentColors | ThemePalette | string {\n return this._color;\n }\n\n set color(value: KbqComponentColors | ThemePalette | string) {\n if (!value) return;\n\n super.color = value;\n\n this.updateColor(this.color);\n }\n\n /** Whether the checkbox is disabled. */\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input({ transform: booleanAttribute })\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(value: boolean) {\n this._disabled = value;\n\n this.updateDisabledState(this._disabled);\n }\n\n protected _disabled: boolean;\n\n get firstDisabled(): boolean {\n return this.buttons.first?.disabled;\n }\n\n get secondDisabled(): boolean {\n return this.buttons.length > 1 && this.buttons.last?.disabled;\n }\n\n constructor() {\n super();\n\n this.color = KbqComponentColors.ContrastFade;\n }\n\n ngAfterContentInit(): void {\n this.updateClasses();\n this.updateStyle(this._kbqStyle);\n this.updateColor(this.color);\n this.updateDisabledState(this.disabled);\n this.updateDropdownParams();\n\n if (!this.buttons.length) {\n throw new Error(`kbq-split-button must contain at least one button`);\n }\n\n this.buttons.changes.pipe(delay(0)).subscribe(() => {\n this.updateClasses();\n this.updateStyle(this._kbqStyle);\n this.updateColor(this.color);\n this.updateDropdownParams();\n });\n }\n\n private updateClasses() {\n this.buttons.forEach((button: KbqButton) => {\n button.getHostElement().classList.remove(`kbq-split-button_first`, `kbq-split-button_second`);\n });\n\n this.buttons.first?.getHostElement().classList.add(`kbq-split-button_first`);\n this.buttons.last?.getHostElement().classList.add(`kbq-split-button_second`);\n this.buttons.forEach((button: KbqButton) => {\n button.getHostElement().classList.add(`kbq-split-button_item`);\n });\n }\n\n private updateColor(color: KbqComponentColors | ThemePalette | string) {\n this.buttons?.forEach((button: KbqButton) => (button.color = color));\n }\n\n private updateStyle(style: KbqButtonStyles | string) {\n this.buttons?.forEach((button: KbqButton) => (button.kbqStyle = style));\n }\n\n private updateDisabledState(state: boolean) {\n if (state === undefined) return;\n\n this.buttons?.forEach((button: KbqButton) => (button.disabled = state));\n }\n\n private updateDropdownParams = () => {\n const dropdownTrigger = this.dropdownTrigger();\n\n if (!dropdownTrigger) return;\n\n dropdownTrigger.dropdown.xPosition = 'before';\n\n if (this.panelAutoWidth()) {\n // we need to use a timeout of about 50ms to wait for the styles to apply\n setTimeout(() => {\n const { width } = this.nativeElement.getClientRects()[0];\n\n const dropdownTrigger = this.dropdownTrigger();\n\n if (dropdownTrigger) {\n dropdownTrigger.dropdown.triggerWidth = `${Math.round(width)}px`;\n }\n }, 50);\n }\n };\n}\n","import { NgModule } from '@angular/core';\nimport { KbqSplitButton } from './split-button';\n\n@NgModule({\n imports: [\n KbqSplitButton\n ],\n exports: [KbqSplitButton]\n})\nexport class KbqSplitButtonModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;AAmCM,MAAO,cAAe,SAAQ,iBAAiB,CAAA;;;;AAcjD,IAAA,IACI,QAAQ,GAAA;AACR,QAAA,OAAO,CAAA,WAAA,EAAc,IAAI,CAAC,SAAS,EAAE;IACzC;IAEA,IAAI,QAAQ,CAAC,KAA+B,EAAA;QACxC,IAAI,CAAC,SAAS,GAAG,KAAK,IAAI,eAAe,CAAC,MAAM;AAEhD,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;IACpC;;;;AAOA,IAAA,IACI,KAAK,GAAA;QACL,OAAO,IAAI,CAAC,MAAM;IACtB;IAEA,IAAI,KAAK,CAAC,KAAiD,EAAA;AACvD,QAAA,IAAI,CAAC,KAAK;YAAE;AAEZ,QAAA,KAAK,CAAC,KAAK,GAAG,KAAK;AAEnB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;IAChC;;;;AAKA,IAAA,IACI,QAAQ,GAAA;QACR,OAAO,IAAI,CAAC,SAAS;IACzB;IAEA,IAAI,QAAQ,CAAC,KAAc,EAAA;AACvB,QAAA,IAAI,CAAC,SAAS,GAAG,KAAK;AAEtB,QAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC;IAC5C;AAIA,IAAA,IAAI,aAAa,GAAA;AACb,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,QAAQ;IACvC;AAEA,IAAA,IAAI,cAAc,GAAA;AACd,QAAA,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ;IACjE;AAEA,IAAA,WAAA,GAAA;AACI,QAAA,KAAK,EAAE;QAnEH,IAAA,CAAA,aAAa,GAAG,sBAAsB,EAAE;;AAK7B,QAAA,IAAA,CAAA,eAAe,GAAG,YAAY,CAAC,kBAAkB,2DAAC;;AAG5D,QAAA,IAAA,CAAA,cAAc,GAAG,KAAK,CAAU,KAAK,0DAAC;AAgBvC,QAAA,IAAA,CAAA,SAAS,GAA6B,eAAe,CAAC,MAAM;QA6F5D,IAAA,CAAA,oBAAoB,GAAG,MAAK;AAChC,YAAA,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE;AAE9C,YAAA,IAAI,CAAC,eAAe;gBAAE;AAEtB,YAAA,eAAe,CAAC,QAAQ,CAAC,SAAS,GAAG,QAAQ;AAE7C,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE;;gBAEvB,UAAU,CAAC,MAAK;AACZ,oBAAA,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;AAExD,oBAAA,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE;oBAE9C,IAAI,eAAe,EAAE;AACjB,wBAAA,eAAe,CAAC,QAAQ,CAAC,YAAY,GAAG,CAAA,EAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI;oBACpE;gBACJ,CAAC,EAAE,EAAE,CAAC;YACV;AACJ,QAAA,CAAC;AAnEG,QAAA,IAAI,CAAC,KAAK,GAAG,kBAAkB,CAAC,YAAY;IAChD;IAEA,kBAAkB,GAAA;QACd,IAAI,CAAC,aAAa,EAAE;AACpB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;AAChC,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;AAC5B,QAAA,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC,oBAAoB,EAAE;AAE3B,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;AACtB,YAAA,MAAM,IAAI,KAAK,CAAC,CAAA,iDAAA,CAAmD,CAAC;QACxE;AAEA,QAAA,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAK;YAC/C,IAAI,CAAC,aAAa,EAAE;AACpB,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC;AAChC,YAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC;YAC5B,IAAI,CAAC,oBAAoB,EAAE;AAC/B,QAAA,CAAC,CAAC;IACN;IAEQ,aAAa,GAAA;QACjB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAiB,KAAI;AACvC,YAAA,MAAM,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA,sBAAA,CAAwB,EAAE,CAAA,uBAAA,CAAyB,CAAC;AACjG,QAAA,CAAC,CAAC;AAEF,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,cAAc,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA,sBAAA,CAAwB,CAAC;AAC5E,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,cAAc,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA,uBAAA,CAAyB,CAAC;QAC5E,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAiB,KAAI;YACvC,MAAM,CAAC,cAAc,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAA,qBAAA,CAAuB,CAAC;AAClE,QAAA,CAAC,CAAC;IACN;AAEQ,IAAA,WAAW,CAAC,KAAiD,EAAA;AACjE,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAiB,MAAM,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC;IACxE;AAEQ,IAAA,WAAW,CAAC,KAA+B,EAAA;AAC/C,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAiB,MAAM,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;IAC3E;AAEQ,IAAA,mBAAmB,CAAC,KAAc,EAAA;QACtC,IAAI,KAAK,KAAK,SAAS;YAAE;AAEzB,QAAA,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,MAAiB,MAAM,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC;IAC3E;kIApHS,cAAc,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAd,uBAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,cAAc,0lBA8CH,gBAAgB,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,UAAA,EAAA,0CAAA,EAAA,oBAAA,EAAA,uCAAA,EAAA,eAAA,EAAA,wCAAA,EAAA,gBAAA,EAAA,EAAA,cAAA,EAAA,kBAAA,EAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAxCc,kBAAkB,EAAA,WAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAFnD,SAAS,EAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EApBhB;;;;AAIT,IAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,+oLAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;4FAYQ,cAAc,EAAA,UAAA,EAAA,CAAA;kBAlB1B,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,sCAAsC,EAAA,QAAA,EACtC;;;;AAIT,IAAA,CAAA,EAAA,eAAA,EAEgB,uBAAuB,CAAC,MAAM,iBAChC,iBAAiB,CAAC,IAAI,EAAA,IAAA,EAC/B;AACF,wBAAA,KAAK,EAAE,kBAAkB;AACzB,wBAAA,SAAS,EAAE,UAAU;AACrB,wBAAA,4CAA4C,EAAE,oBAAoB;AAClE,wBAAA,yCAAyC,EAAE,eAAe;AAC1D,wBAAA,0CAA0C,EAAE;AAC/C,qBAAA,EAAA,MAAA,EAAA,CAAA,+oLAAA,CAAA,EAAA;;sBAMA,eAAe;uBAAC,SAAS;sFAEwB,kBAAkB,CAAA,EAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,CAAA,EAAA,cAAA,EAAA,CAAA,EAAA,IAAA,EAAA,EAAA,CAAA,KAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,KAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,KAAA,EAAA,CAAA,EAAA,CAAA,EAAA,QAAA,EAAA,CAAA;sBAQnE;;sBAgBA;;sBAgBA,KAAK;uBAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE;;;MCxE7B,oBAAoB,CAAA;kIAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;mIAApB,oBAAoB,EAAA,OAAA,EAAA,CAJzB,cAAc,CAAA,EAAA,OAAA,EAAA,CAER,cAAc,CAAA,EAAA,CAAA,CAAA;mIAEf,oBAAoB,EAAA,CAAA,CAAA;;4FAApB,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL;AACH,qBAAA;oBACD,OAAO,EAAE,CAAC,cAAc;AAC3B,iBAAA;;;ACRD;;AAEG;;;;"}
@@ -1,4 +1,5 @@
1
1
  import { coerceNumberProperty, coerceCssPixelValue, coerceBooleanProperty } from '@angular/cdk/coercion';
2
+ import { Platform } from '@angular/cdk/platform';
2
3
  import * as i0 from '@angular/core';
3
4
  import { inject, ElementRef, Renderer2, Input, Directive, ChangeDetectorRef, NgZone, output, viewChildren, viewChild, forwardRef, ContentChildren, ViewEncapsulation, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
4
5
  import { KBQ_WINDOW } from '@koobiq/components/core';
@@ -398,13 +399,13 @@ class KbqSplitterComponent {
398
399
  this.renderer.setStyle(this.elementRef.nativeElement, property, value);
399
400
  }
400
401
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: KbqSplitterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
401
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: KbqSplitterComponent, isStandalone: true, selector: "kbq-splitter", inputs: { hideGutters: "hideGutters", direction: "direction", disabled: "disabled", useGhost: "useGhost", gutterSize: "gutterSize" }, outputs: { gutterPositionChange: "gutterPositionChange" }, host: { classAttribute: "kbq-splitter" }, queries: [{ propertyName: "areaRefs", predicate: i0.forwardRef(() => KbqSplitterAreaDirective) }], viewQueries: [{ propertyName: "gutters", predicate: KbqGutterDirective, descendants: true, isSignal: true }, { propertyName: "ghost", first: true, predicate: KbqGutterGhostDirective, descendants: true, isSignal: true }], exportAs: ["kbqSplitter"], ngImport: i0, template: "<ng-content />\n\n@for (area of areas; track area) {\n @if (!$last) {\n <kbq-gutter\n [attr.disabled]=\"disabled || null\"\n [direction]=\"direction\"\n [order]=\"$index * 2 + 1\"\n [size]=\"gutterSize\"\n [style.display]=\"hideGutters ? 'none' : 'flex'\"\n (mousedown)=\"onMouseDown($event, $index, $index + 1)\"\n />\n }\n}\n\n@if (useGhost) {\n <kbq-gutter-ghost />\n}\n", styles: [".kbq-splitter{display:flex;position:relative;flex-wrap:nowrap;align-items:stretch;overflow:hidden}.kbq-splitter .kbq-splitter-area{overflow:hidden}.kbq-splitter .kbq-splitter-area_resizing{pointer-events:none}.kbq-gutter{display:flex;flex-grow:0;flex-shrink:0;justify-content:center;align-items:center;overflow:hidden}.kbq-gutter.kbq-gutter_vertical>.kbq-icon{transform:rotate(90deg)}.kbq-gutter-ghost{position:absolute;z-index:999;display:none;overflow:hidden}.kbq-gutter-ghost.kbq-gutter-ghost_vertical>.kbq-icon{transform:rotate(90deg)}.kbq-gutter-ghost.kbq-gutter-ghost_visible{display:block}.kbq-gutter{cursor:col-resize}.kbq-gutter:hover,.kbq-gutter.kbq-gutter_dragged{background-color:#6a739614}.kbq-gutter.kbq-gutter_vertical{cursor:row-resize}.kbq-gutter[disabled]{background-color:var(--kbq-states-background-disabled);cursor:default}.kbq-gutter-ghost{background:#6a739629}\n"], dependencies: [{ kind: "directive", type: KbqGutterDirective, selector: "kbq-gutter", inputs: ["direction", "order", "size"] }, { kind: "directive", type: KbqGutterGhostDirective, selector: "kbq-gutter-ghost", inputs: ["visible", "x", "y", "direction", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
402
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.25", type: KbqSplitterComponent, isStandalone: true, selector: "kbq-splitter", inputs: { hideGutters: "hideGutters", direction: "direction", disabled: "disabled", useGhost: "useGhost", gutterSize: "gutterSize" }, outputs: { gutterPositionChange: "gutterPositionChange" }, host: { classAttribute: "kbq-splitter" }, queries: [{ propertyName: "areaRefs", predicate: i0.forwardRef(() => KbqSplitterAreaDirective) }], viewQueries: [{ propertyName: "gutters", predicate: KbqGutterDirective, descendants: true, isSignal: true }, { propertyName: "ghost", first: true, predicate: KbqGutterGhostDirective, descendants: true, isSignal: true }], exportAs: ["kbqSplitter"], ngImport: i0, template: "<ng-content />\n\n@for (area of areas; track area) {\n @if (!$last) {\n <kbq-gutter\n [attr.disabled]=\"disabled || null\"\n [direction]=\"direction\"\n [order]=\"$index * 2 + 1\"\n [size]=\"gutterSize\"\n [style.display]=\"hideGutters ? 'none' : 'flex'\"\n (mousedown)=\"onMouseDown($event, $index, $index + 1)\"\n />\n }\n}\n\n@if (useGhost) {\n <kbq-gutter-ghost />\n}\n", styles: [".kbq-splitter{display:flex;position:relative;flex-wrap:nowrap;align-items:stretch;overflow:hidden}.kbq-splitter .kbq-splitter-area{overflow:hidden}.kbq-splitter .kbq-splitter-area_resizing{pointer-events:none}.kbq-gutter{display:flex;flex-grow:0;flex-shrink:0;justify-content:center;align-items:center;overflow:hidden}.kbq-gutter.kbq-gutter_vertical>.kbq-icon{transform:rotate(90deg)}.kbq-gutter-ghost{position:absolute;z-index:999;display:none;overflow:hidden}.kbq-gutter-ghost.kbq-gutter-ghost_vertical>.kbq-icon{transform:rotate(90deg)}.kbq-gutter-ghost.kbq-gutter-ghost_visible{display:block}.kbq-gutter{cursor:col-resize}.kbq-gutter:hover,.kbq-gutter.kbq-gutter_dragged{background-color:var(--kbq-states-background-transparent-hover)}.kbq-gutter.kbq-gutter_vertical{cursor:row-resize}.kbq-gutter[disabled]{background-color:var(--kbq-states-background-disabled);cursor:default}.kbq-gutter-ghost{background:var(--kbq-states-background-transparent-active)}\n"], dependencies: [{ kind: "directive", type: KbqGutterDirective, selector: "kbq-gutter", inputs: ["direction", "order", "size"] }, { kind: "directive", type: KbqGutterGhostDirective, selector: "kbq-gutter-ghost", inputs: ["visible", "x", "y", "direction", "size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
402
403
  }
403
404
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: KbqSplitterComponent, decorators: [{
404
405
  type: Component,
405
406
  args: [{ selector: 'kbq-splitter', imports: [KbqGutterDirective, KbqGutterGhostDirective], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
406
407
  class: 'kbq-splitter'
407
- }, exportAs: 'kbqSplitter', preserveWhitespaces: false, template: "<ng-content />\n\n@for (area of areas; track area) {\n @if (!$last) {\n <kbq-gutter\n [attr.disabled]=\"disabled || null\"\n [direction]=\"direction\"\n [order]=\"$index * 2 + 1\"\n [size]=\"gutterSize\"\n [style.display]=\"hideGutters ? 'none' : 'flex'\"\n (mousedown)=\"onMouseDown($event, $index, $index + 1)\"\n />\n }\n}\n\n@if (useGhost) {\n <kbq-gutter-ghost />\n}\n", styles: [".kbq-splitter{display:flex;position:relative;flex-wrap:nowrap;align-items:stretch;overflow:hidden}.kbq-splitter .kbq-splitter-area{overflow:hidden}.kbq-splitter .kbq-splitter-area_resizing{pointer-events:none}.kbq-gutter{display:flex;flex-grow:0;flex-shrink:0;justify-content:center;align-items:center;overflow:hidden}.kbq-gutter.kbq-gutter_vertical>.kbq-icon{transform:rotate(90deg)}.kbq-gutter-ghost{position:absolute;z-index:999;display:none;overflow:hidden}.kbq-gutter-ghost.kbq-gutter-ghost_vertical>.kbq-icon{transform:rotate(90deg)}.kbq-gutter-ghost.kbq-gutter-ghost_visible{display:block}.kbq-gutter{cursor:col-resize}.kbq-gutter:hover,.kbq-gutter.kbq-gutter_dragged{background-color:#6a739614}.kbq-gutter.kbq-gutter_vertical{cursor:row-resize}.kbq-gutter[disabled]{background-color:var(--kbq-states-background-disabled);cursor:default}.kbq-gutter-ghost{background:#6a739629}\n"] }]
408
+ }, exportAs: 'kbqSplitter', preserveWhitespaces: false, template: "<ng-content />\n\n@for (area of areas; track area) {\n @if (!$last) {\n <kbq-gutter\n [attr.disabled]=\"disabled || null\"\n [direction]=\"direction\"\n [order]=\"$index * 2 + 1\"\n [size]=\"gutterSize\"\n [style.display]=\"hideGutters ? 'none' : 'flex'\"\n (mousedown)=\"onMouseDown($event, $index, $index + 1)\"\n />\n }\n}\n\n@if (useGhost) {\n <kbq-gutter-ghost />\n}\n", styles: [".kbq-splitter{display:flex;position:relative;flex-wrap:nowrap;align-items:stretch;overflow:hidden}.kbq-splitter .kbq-splitter-area{overflow:hidden}.kbq-splitter .kbq-splitter-area_resizing{pointer-events:none}.kbq-gutter{display:flex;flex-grow:0;flex-shrink:0;justify-content:center;align-items:center;overflow:hidden}.kbq-gutter.kbq-gutter_vertical>.kbq-icon{transform:rotate(90deg)}.kbq-gutter-ghost{position:absolute;z-index:999;display:none;overflow:hidden}.kbq-gutter-ghost.kbq-gutter-ghost_vertical>.kbq-icon{transform:rotate(90deg)}.kbq-gutter-ghost.kbq-gutter-ghost_visible{display:block}.kbq-gutter{cursor:col-resize}.kbq-gutter:hover,.kbq-gutter.kbq-gutter_dragged{background-color:var(--kbq-states-background-transparent-hover)}.kbq-gutter.kbq-gutter_vertical{cursor:row-resize}.kbq-gutter[disabled]{background-color:var(--kbq-states-background-disabled);cursor:default}.kbq-gutter-ghost{background:var(--kbq-states-background-transparent-active)}\n"] }]
408
409
  }], propDecorators: { gutterPositionChange: [{ type: i0.Output, args: ["gutterPositionChange"] }], gutters: [{ type: i0.ViewChildren, args: [i0.forwardRef(() => KbqGutterDirective), { isSignal: true }] }], ghost: [{ type: i0.ViewChild, args: [i0.forwardRef(() => KbqGutterGhostDirective), { isSignal: true }] }], areaRefs: [{
409
410
  type: ContentChildren,
410
411
  args: [forwardRef(() => KbqSplitterAreaDirective)]
@@ -426,6 +427,7 @@ class KbqSplitterAreaDirective {
426
427
  this.splitter = inject(KbqSplitterComponent);
427
428
  this.sizeChange = output();
428
429
  this.window = inject(KBQ_WINDOW);
430
+ this.platform = inject(Platform);
429
431
  this.emitSizeChange = () => {
430
432
  this.sizeChange.emit(this.getSize());
431
433
  };
@@ -462,6 +464,8 @@ class KbqSplitterAreaDirective {
462
464
  this.setStyle(this.getSizeProperty(), coerceCssPixelValue(coerceNumberProperty(size)));
463
465
  }
464
466
  getSize() {
467
+ if (!this.platform.isBrowser)
468
+ return 0;
465
469
  return this.elementRef.nativeElement[this.getOffsetSizeProperty()];
466
470
  }
467
471
  getPosition() {
@@ -1 +1 @@
1
- {"version":3,"file":"koobiq-components-splitter.mjs","sources":["../../../packages/components/splitter/splitter.component.ts","../../../packages/components/splitter/splitter.component.html","../../../packages/components/splitter/splitter.module.ts","../../../packages/components/splitter/koobiq-components-splitter.ts"],"sourcesContent":["import { coerceBooleanProperty, coerceCssPixelValue, coerceNumberProperty } from '@angular/cdk/coercion';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n Directive,\n ElementRef,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n QueryList,\n Renderer2,\n ViewEncapsulation,\n forwardRef,\n inject,\n output,\n viewChild,\n viewChildren\n} from '@angular/core';\nimport { KBQ_WINDOW } from '@koobiq/components/core';\nimport { Subscription } from 'rxjs';\n\ninterface IArea {\n area: KbqSplitterAreaDirective;\n index: number;\n order: number;\n initialSize: number;\n}\n\ninterface IPoint {\n x: number;\n y: number;\n}\n\nconst enum StyleProperty {\n Flex = 'flex',\n FlexBasis = 'flex-basis',\n FlexDirection = 'flex-direction',\n Height = 'height',\n MaxWidth = 'max-width',\n MinHeight = 'min-height',\n MinWidth = 'minWidth',\n OffsetHeight = 'offsetHeight',\n OffsetWidth = 'offsetWidth',\n Order = 'order',\n Width = 'width',\n Top = 'top',\n Left = 'left',\n Cursor = 'cursor'\n}\n\nexport enum Direction {\n Horizontal = 'horizontal',\n Vertical = 'vertical'\n}\n\n@Directive({\n selector: 'kbq-gutter',\n host: {\n class: 'kbq-gutter',\n '[class.kbq-gutter_vertical]': 'isVertical',\n '[class.kbq-gutter_dragged]': 'dragged',\n '(mousedown)': 'dragged = true'\n }\n})\nexport class KbqGutterDirective implements OnInit {\n private elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private renderer = inject(Renderer2);\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get direction(): Direction {\n return this._direction;\n }\n\n set direction(direction: Direction) {\n this._direction = direction;\n }\n\n private _direction: Direction = Direction.Vertical;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get order(): number {\n return this._order;\n }\n\n set order(order: number) {\n this._order = coerceNumberProperty(order);\n }\n\n private _order: number = 0;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get size(): number {\n return this._size;\n }\n\n set size(size: number) {\n this._size = coerceNumberProperty(size);\n }\n\n private _size: number = 6;\n\n get isVertical(): boolean {\n return this._direction === Direction.Vertical;\n }\n\n dragged: boolean = false;\n\n ngOnInit(): void {\n this.setStyle(StyleProperty.FlexBasis, coerceCssPixelValue(this.size));\n this.setStyle(this.isVertical ? StyleProperty.Height : StyleProperty.Width, coerceCssPixelValue(this.size));\n this.setStyle(StyleProperty.Order, this.order);\n\n if (!this.isVertical) {\n this.setStyle(StyleProperty.Height, '100%');\n }\n\n // fix IE issue with gutter icon. flex-direction is required for flex alignment options\n this.setStyle(StyleProperty.FlexDirection, this.isVertical ? 'row' : 'column');\n }\n\n getPosition(): IPoint {\n return {\n x: this.elementRef.nativeElement.offsetLeft,\n y: this.elementRef.nativeElement.offsetTop\n };\n }\n\n private setStyle(property: StyleProperty, value: string | number): void {\n this.renderer.setStyle(this.elementRef.nativeElement, property, value);\n }\n}\n\n@Directive({\n selector: 'kbq-gutter-ghost',\n host: {\n class: 'kbq-gutter-ghost',\n '[class.kbq-gutter-ghost_vertical]': 'isVertical',\n '[class.kbq-gutter-ghost_visible]': 'visible'\n }\n})\nexport class KbqGutterGhostDirective {\n private elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private renderer = inject(Renderer2);\n\n // TODO: Skipped for migration because:\n // Your application code writes to the input. This prevents migration.\n @Input() visible: boolean;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get x(): number {\n return this._x;\n }\n\n set x(x: number) {\n this._x = x;\n this.setStyle(StyleProperty.Left, coerceCssPixelValue(x));\n }\n\n private _x: number = 0;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get y(): number {\n return this._y;\n }\n\n set y(y: number) {\n this._y = y;\n this.setStyle(StyleProperty.Top, coerceCssPixelValue(y));\n }\n\n private _y: number = 0;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get direction(): Direction {\n return this._direction;\n }\n\n set direction(direction: Direction) {\n this._direction = direction;\n this.updateDimensions();\n }\n\n private _direction: Direction = Direction.Vertical;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get size(): number {\n return this._size;\n }\n\n set size(size: number) {\n this._size = coerceNumberProperty(size);\n this.updateDimensions();\n }\n\n private _size: number = 6;\n\n get isVertical(): boolean {\n return this.direction === Direction.Vertical;\n }\n\n private updateDimensions(): void {\n this.setStyle(this.isVertical ? StyleProperty.Width : StyleProperty.Height, '100%');\n this.setStyle(this.isVertical ? StyleProperty.Height : StyleProperty.Width, coerceCssPixelValue(this.size));\n }\n\n private setStyle(property: StyleProperty, value: string | number): void {\n this.renderer.setStyle(this.elementRef.nativeElement, property, value);\n }\n}\n\n@Component({\n selector: 'kbq-splitter',\n imports: [KbqGutterDirective, KbqGutterGhostDirective],\n templateUrl: './splitter.component.html',\n styleUrls: ['splitter.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-splitter'\n },\n exportAs: 'kbqSplitter',\n preserveWhitespaces: false\n})\nexport class KbqSplitterComponent implements OnInit, AfterContentInit, OnDestroy {\n elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n changeDetectorRef = inject(ChangeDetectorRef);\n private ngZone = inject(NgZone);\n private renderer = inject(Renderer2);\n\n readonly gutterPositionChange = output<void>();\n\n areas: IArea[] = [];\n\n readonly gutters = viewChildren(KbqGutterDirective);\n readonly ghost = viewChild.required(KbqGutterGhostDirective);\n\n @ContentChildren(forwardRef(() => KbqSplitterAreaDirective)) areaRefs: QueryList<KbqSplitterAreaDirective>;\n\n get isDragging(): boolean {\n return this._isDragging;\n }\n private _isDragging: boolean = false;\n\n private readonly areaPositionDivider: number = 2;\n private readonly listeners: (() => void)[] = [];\n\n private areasChangeSubscription: Subscription = Subscription.EMPTY;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get hideGutters(): boolean {\n return this._hideGutters;\n }\n\n set hideGutters(value: boolean) {\n this._hideGutters = coerceBooleanProperty(value);\n }\n\n private _hideGutters: boolean = false;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get direction(): Direction {\n return this._direction;\n }\n\n set direction(direction: Direction) {\n this._direction = direction;\n }\n\n private _direction: Direction;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(disabled: boolean) {\n this._disabled = coerceBooleanProperty(disabled);\n }\n\n private _disabled: boolean = false;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get useGhost(): boolean {\n return this._useGhost;\n }\n\n set useGhost(useGhost: boolean) {\n this._useGhost = coerceBooleanProperty(useGhost);\n }\n\n private _useGhost: boolean = false;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get gutterSize(): number {\n return this._gutterSize;\n }\n\n set gutterSize(gutterSize: number) {\n const size = coerceNumberProperty(gutterSize);\n\n this._gutterSize = size > 0 ? size : this.gutterSize;\n }\n\n private _gutterSize: number = 6;\n\n get resizing(): boolean {\n return this._resizing;\n }\n\n private _resizing: boolean = false;\n\n addArea(area: KbqSplitterAreaDirective): void {\n this.areas.push(this.mapAndOrderArea(area, this.areas.length));\n this.changeDetectorRef.detectChanges();\n }\n\n ngOnInit(): void {\n if (!this.direction) {\n this.direction = Direction.Horizontal;\n }\n\n this.setStyle(StyleProperty.FlexDirection, this.isVertical() ? 'column' : 'row');\n }\n\n ngAfterContentInit() {\n this.areasChangeSubscription = this.areaRefs.changes.subscribe((data: QueryList<KbqSplitterAreaDirective>) => {\n this.areas = data.map(this.mapAndOrderArea);\n this.changeDetectorRef.markForCheck();\n });\n }\n\n ngOnDestroy() {\n this.areasChangeSubscription.unsubscribe();\n }\n\n onMouseDown(event: MouseEvent, leftAreaIndex: number, rightAreaIndex: number) {\n if (this.disabled) {\n return;\n }\n\n event.preventDefault();\n\n const startPoint: IPoint = {\n x: event.screenX,\n y: event.screenY\n };\n\n const leftArea = this.areas[leftAreaIndex];\n const rightArea = this.areas[rightAreaIndex];\n\n leftArea.initialSize = leftArea.area.getSize();\n rightArea.initialSize = rightArea.area.getSize();\n\n let currentGutter: KbqGutterDirective | undefined;\n\n if (this.useGhost) {\n const gutterOrder = leftAreaIndex * 2 + 1;\n\n currentGutter = this.gutters().find((gutter: KbqGutterDirective) => gutter.order === gutterOrder);\n\n if (currentGutter) {\n const gutterPosition = currentGutter.getPosition();\n const ghost = this.ghost();\n\n ghost.direction = currentGutter.direction;\n ghost.size = currentGutter.size;\n ghost.x = gutterPosition.x;\n ghost.y = gutterPosition.y;\n\n ghost.visible = true;\n this.setStyle(\n StyleProperty.Cursor,\n currentGutter.direction === Direction.Vertical ? 'row-resize' : 'col-resize'\n );\n }\n } else {\n this.areas.forEach((item) => {\n const size = item.area.getSize();\n\n item.area.disableFlex();\n item.area.setSize(size);\n });\n }\n\n this.listeners.push(\n this.renderer.listen('document', 'mouseup', () => this.onMouseUp(leftArea, rightArea, currentGutter))\n );\n\n this.ngZone.runOutsideAngular(() => {\n this.listeners.push(\n this.renderer.listen('document', 'mousemove', (e: MouseEvent) =>\n this.onMouseMove(e, startPoint, leftArea, rightArea, currentGutter)\n )\n );\n });\n\n this._isDragging = true;\n }\n\n removeArea(area: KbqSplitterAreaDirective): void {\n let indexToRemove: number = -1;\n\n this.areas.some((item, index) => {\n if (item.area === area) {\n indexToRemove = index;\n\n return true;\n }\n\n return false;\n });\n\n if (indexToRemove === -1) {\n return;\n }\n\n this.areas.splice(indexToRemove, 1);\n }\n\n isVertical(): boolean {\n return this.direction === Direction.Vertical;\n }\n\n private mapAndOrderArea = (area: KbqSplitterAreaDirective, index: number): IArea => {\n const order = index * this.areaPositionDivider;\n\n area.setOrder(order);\n\n return {\n area,\n index,\n order,\n initialSize: area.getSize()\n };\n };\n\n private updateGutter(): void {\n this.gutters().forEach((gutter) => {\n if (gutter.dragged) {\n gutter.dragged = false;\n\n this.changeDetectorRef.detectChanges();\n }\n });\n }\n\n private onMouseMove(\n event: MouseEvent,\n startPoint: IPoint,\n leftArea: IArea,\n rightArea: IArea,\n currentGutter: KbqGutterDirective | undefined\n ) {\n if (!this.isDragging || this.disabled) {\n return;\n }\n\n const endPoint: IPoint = {\n x: event.screenX,\n y: event.screenY\n };\n\n const offset = this.isVertical() ? startPoint.y - endPoint.y : startPoint.x - endPoint.x;\n\n if (this.useGhost && currentGutter) {\n const gutterPosition = currentGutter.getPosition();\n const leftPos = leftArea.area.getPosition();\n const rightPos = rightArea.area.getPosition();\n const rightMin = rightArea.area.getMinSize() || 0;\n const leftMin = leftArea.area.getMinSize() || 0;\n\n const key = this.isVertical() ? 'y' : 'x';\n\n const minPos = leftPos[key] - leftMin;\n const maxPos = rightPos[key] + (rightArea.area.getSize() || 0) - rightMin - currentGutter.size;\n const newPos = gutterPosition[key] - offset;\n\n this.ghost()[key] = newPos < minPos ? minPos : Math.min(newPos, maxPos);\n } else {\n this.resizeAreas(leftArea, rightArea, offset);\n }\n }\n\n private resizeAreas(leftArea: IArea, rightArea: IArea, sizeOffset: number): void {\n const newLeftAreaSize = leftArea.initialSize - sizeOffset;\n const newRightAreaSize = rightArea.initialSize + sizeOffset;\n\n const minLeftAreaSize = leftArea.area.getMinSize();\n const minRightAreaSize = rightArea.area.getMinSize();\n\n if (newLeftAreaSize < minLeftAreaSize || newRightAreaSize < minRightAreaSize) {\n return;\n } else if (newLeftAreaSize <= 0) {\n leftArea.area.setSize(0);\n rightArea.area.setSize(rightArea.initialSize + leftArea.initialSize);\n } else if (newRightAreaSize <= 0) {\n leftArea.area.setSize(rightArea.initialSize + leftArea.initialSize);\n rightArea.area.setSize(0);\n } else {\n leftArea.area.setSize(newLeftAreaSize);\n rightArea.area.setSize(newRightAreaSize);\n }\n }\n\n private onMouseUp(leftArea: IArea, rightArea: IArea, currentGutter: KbqGutterDirective | undefined) {\n while (this.listeners.length > 0) {\n const unsubscribe = this.listeners.pop();\n\n if (unsubscribe) {\n unsubscribe();\n }\n }\n\n if (this.useGhost && currentGutter) {\n const gutterPosition = currentGutter.getPosition();\n const ghost = this.ghost();\n const offset =\n ghost.direction === Direction.Vertical ? gutterPosition.y - ghost.y : gutterPosition.x - ghost.x;\n\n this.resizeAreas(leftArea, rightArea, offset);\n this.ghost().visible = false;\n this.setStyle(StyleProperty.Cursor, 'unset');\n }\n\n this._isDragging = false;\n\n this.updateGutter();\n\n // TODO: The 'emit' function requires a mandatory void argument\n this.gutterPositionChange.emit();\n\n this.changeDetectorRef.markForCheck();\n }\n\n private setStyle(property: StyleProperty, value: string | number) {\n this.renderer.setStyle(this.elementRef.nativeElement, property, value);\n }\n}\n\n@Directive({\n selector: '[kbq-splitter-area]',\n host: {\n class: 'kbq-splitter-area',\n '[class.kbq-splitter-area_resizing]': 'isResizing()'\n }\n})\nexport class KbqSplitterAreaDirective implements AfterViewInit, OnDestroy {\n private elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private renderer = inject(Renderer2);\n private splitter = inject(KbqSplitterComponent);\n\n readonly sizeChange = output<number>();\n\n private readonly window = inject(KBQ_WINDOW);\n\n isResizing(): boolean {\n return this.splitter.isDragging;\n }\n\n disableFlex(): void {\n this.renderer.removeStyle(this.elementRef.nativeElement, 'flex');\n }\n\n ngAfterViewInit() {\n this.splitter.addArea(this);\n\n this.removeStyle(StyleProperty.MaxWidth);\n\n if (this.splitter.direction === Direction.Vertical) {\n this.setStyle(StyleProperty.Width, '100%');\n this.removeStyle(StyleProperty.Height);\n } else {\n this.setStyle(StyleProperty.Height, '100%');\n this.removeStyle(StyleProperty.Width);\n }\n\n this.splitter.gutterPositionChange.subscribe(this.emitSizeChange);\n }\n\n ngOnDestroy(): void {\n this.splitter.removeArea(this);\n }\n\n setOrder(order: number): void {\n this.setStyle(StyleProperty.Order, order);\n }\n\n setSize(size: number): void {\n if (isNaN(size)) {\n return;\n }\n\n this.setStyle(this.getSizeProperty(), coerceCssPixelValue(coerceNumberProperty(size)));\n }\n\n getSize(): number {\n return this.elementRef.nativeElement[this.getOffsetSizeProperty()];\n }\n\n getPosition(): IPoint {\n return {\n x: this.elementRef.nativeElement.offsetLeft,\n y: this.elementRef.nativeElement.offsetTop\n };\n }\n\n getMinSize(): number {\n const styles = this.window.getComputedStyle(this.elementRef.nativeElement);\n\n return parseFloat(styles[this.getMinSizeProperty()]);\n }\n\n private isVertical(): boolean {\n return this.splitter.direction === Direction.Vertical;\n }\n\n private getMinSizeProperty(): StyleProperty {\n return this.isVertical() ? StyleProperty.MinHeight : StyleProperty.MinWidth;\n }\n\n private getOffsetSizeProperty(): StyleProperty {\n return this.isVertical() ? StyleProperty.OffsetHeight : StyleProperty.OffsetWidth;\n }\n\n private getSizeProperty(): StyleProperty {\n return this.isVertical() ? StyleProperty.Height : StyleProperty.Width;\n }\n\n private setStyle(style: StyleProperty, value: string | number) {\n this.renderer.setStyle(this.elementRef.nativeElement, style, value);\n }\n\n private removeStyle(style: StyleProperty) {\n this.renderer.removeStyle(this.elementRef.nativeElement, style);\n }\n\n private emitSizeChange = () => {\n this.sizeChange.emit(this.getSize());\n };\n}\n","<ng-content />\n\n@for (area of areas; track area) {\n @if (!$last) {\n <kbq-gutter\n [attr.disabled]=\"disabled || null\"\n [direction]=\"direction\"\n [order]=\"$index * 2 + 1\"\n [size]=\"gutterSize\"\n [style.display]=\"hideGutters ? 'none' : 'flex'\"\n (mousedown)=\"onMouseDown($event, $index, $index + 1)\"\n />\n }\n}\n\n@if (useGhost) {\n <kbq-gutter-ghost />\n}\n","import { NgModule } from '@angular/core';\nimport { KbqIconModule } from '@koobiq/components/icon';\nimport {\n KbqGutterDirective,\n KbqGutterGhostDirective,\n KbqSplitterAreaDirective,\n KbqSplitterComponent\n} from './splitter.component';\n\n@NgModule({\n imports: [\n KbqIconModule,\n KbqGutterDirective,\n KbqGutterGhostDirective,\n KbqSplitterAreaDirective,\n KbqSplitterComponent\n ],\n exports: [\n KbqGutterDirective,\n KbqSplitterAreaDirective,\n KbqSplitterComponent\n ]\n})\nexport class KbqSplitterModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"koobiq-components-splitter.mjs","sources":["../../../packages/components/splitter/splitter.component.ts","../../../packages/components/splitter/splitter.component.html","../../../packages/components/splitter/splitter.module.ts","../../../packages/components/splitter/koobiq-components-splitter.ts"],"sourcesContent":["import { coerceBooleanProperty, coerceCssPixelValue, coerceNumberProperty } from '@angular/cdk/coercion';\nimport { Platform } from '@angular/cdk/platform';\nimport {\n AfterContentInit,\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n Directive,\n ElementRef,\n Input,\n NgZone,\n OnDestroy,\n OnInit,\n QueryList,\n Renderer2,\n ViewEncapsulation,\n forwardRef,\n inject,\n output,\n viewChild,\n viewChildren\n} from '@angular/core';\nimport { KBQ_WINDOW } from '@koobiq/components/core';\nimport { Subscription } from 'rxjs';\n\ninterface IArea {\n area: KbqSplitterAreaDirective;\n index: number;\n order: number;\n initialSize: number;\n}\n\ninterface IPoint {\n x: number;\n y: number;\n}\n\nconst enum StyleProperty {\n Flex = 'flex',\n FlexBasis = 'flex-basis',\n FlexDirection = 'flex-direction',\n Height = 'height',\n MaxWidth = 'max-width',\n MinHeight = 'min-height',\n MinWidth = 'minWidth',\n OffsetHeight = 'offsetHeight',\n OffsetWidth = 'offsetWidth',\n Order = 'order',\n Width = 'width',\n Top = 'top',\n Left = 'left',\n Cursor = 'cursor'\n}\n\nexport enum Direction {\n Horizontal = 'horizontal',\n Vertical = 'vertical'\n}\n\n@Directive({\n selector: 'kbq-gutter',\n host: {\n class: 'kbq-gutter',\n '[class.kbq-gutter_vertical]': 'isVertical',\n '[class.kbq-gutter_dragged]': 'dragged',\n '(mousedown)': 'dragged = true'\n }\n})\nexport class KbqGutterDirective implements OnInit {\n private elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private renderer = inject(Renderer2);\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get direction(): Direction {\n return this._direction;\n }\n\n set direction(direction: Direction) {\n this._direction = direction;\n }\n\n private _direction: Direction = Direction.Vertical;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get order(): number {\n return this._order;\n }\n\n set order(order: number) {\n this._order = coerceNumberProperty(order);\n }\n\n private _order: number = 0;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get size(): number {\n return this._size;\n }\n\n set size(size: number) {\n this._size = coerceNumberProperty(size);\n }\n\n private _size: number = 6;\n\n get isVertical(): boolean {\n return this._direction === Direction.Vertical;\n }\n\n dragged: boolean = false;\n\n ngOnInit(): void {\n this.setStyle(StyleProperty.FlexBasis, coerceCssPixelValue(this.size));\n this.setStyle(this.isVertical ? StyleProperty.Height : StyleProperty.Width, coerceCssPixelValue(this.size));\n this.setStyle(StyleProperty.Order, this.order);\n\n if (!this.isVertical) {\n this.setStyle(StyleProperty.Height, '100%');\n }\n\n // fix IE issue with gutter icon. flex-direction is required for flex alignment options\n this.setStyle(StyleProperty.FlexDirection, this.isVertical ? 'row' : 'column');\n }\n\n getPosition(): IPoint {\n return {\n x: this.elementRef.nativeElement.offsetLeft,\n y: this.elementRef.nativeElement.offsetTop\n };\n }\n\n private setStyle(property: StyleProperty, value: string | number): void {\n this.renderer.setStyle(this.elementRef.nativeElement, property, value);\n }\n}\n\n@Directive({\n selector: 'kbq-gutter-ghost',\n host: {\n class: 'kbq-gutter-ghost',\n '[class.kbq-gutter-ghost_vertical]': 'isVertical',\n '[class.kbq-gutter-ghost_visible]': 'visible'\n }\n})\nexport class KbqGutterGhostDirective {\n private elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private renderer = inject(Renderer2);\n\n // TODO: Skipped for migration because:\n // Your application code writes to the input. This prevents migration.\n @Input() visible: boolean;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get x(): number {\n return this._x;\n }\n\n set x(x: number) {\n this._x = x;\n this.setStyle(StyleProperty.Left, coerceCssPixelValue(x));\n }\n\n private _x: number = 0;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get y(): number {\n return this._y;\n }\n\n set y(y: number) {\n this._y = y;\n this.setStyle(StyleProperty.Top, coerceCssPixelValue(y));\n }\n\n private _y: number = 0;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get direction(): Direction {\n return this._direction;\n }\n\n set direction(direction: Direction) {\n this._direction = direction;\n this.updateDimensions();\n }\n\n private _direction: Direction = Direction.Vertical;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get size(): number {\n return this._size;\n }\n\n set size(size: number) {\n this._size = coerceNumberProperty(size);\n this.updateDimensions();\n }\n\n private _size: number = 6;\n\n get isVertical(): boolean {\n return this.direction === Direction.Vertical;\n }\n\n private updateDimensions(): void {\n this.setStyle(this.isVertical ? StyleProperty.Width : StyleProperty.Height, '100%');\n this.setStyle(this.isVertical ? StyleProperty.Height : StyleProperty.Width, coerceCssPixelValue(this.size));\n }\n\n private setStyle(property: StyleProperty, value: string | number): void {\n this.renderer.setStyle(this.elementRef.nativeElement, property, value);\n }\n}\n\n@Component({\n selector: 'kbq-splitter',\n imports: [KbqGutterDirective, KbqGutterGhostDirective],\n templateUrl: './splitter.component.html',\n styleUrls: ['splitter.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-splitter'\n },\n exportAs: 'kbqSplitter',\n preserveWhitespaces: false\n})\nexport class KbqSplitterComponent implements OnInit, AfterContentInit, OnDestroy {\n elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n changeDetectorRef = inject(ChangeDetectorRef);\n private ngZone = inject(NgZone);\n private renderer = inject(Renderer2);\n\n readonly gutterPositionChange = output<void>();\n\n areas: IArea[] = [];\n\n readonly gutters = viewChildren(KbqGutterDirective);\n readonly ghost = viewChild.required(KbqGutterGhostDirective);\n\n @ContentChildren(forwardRef(() => KbqSplitterAreaDirective)) areaRefs: QueryList<KbqSplitterAreaDirective>;\n\n get isDragging(): boolean {\n return this._isDragging;\n }\n private _isDragging: boolean = false;\n\n private readonly areaPositionDivider: number = 2;\n private readonly listeners: (() => void)[] = [];\n\n private areasChangeSubscription: Subscription = Subscription.EMPTY;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get hideGutters(): boolean {\n return this._hideGutters;\n }\n\n set hideGutters(value: boolean) {\n this._hideGutters = coerceBooleanProperty(value);\n }\n\n private _hideGutters: boolean = false;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get direction(): Direction {\n return this._direction;\n }\n\n set direction(direction: Direction) {\n this._direction = direction;\n }\n\n private _direction: Direction;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get disabled(): boolean {\n return this._disabled;\n }\n\n set disabled(disabled: boolean) {\n this._disabled = coerceBooleanProperty(disabled);\n }\n\n private _disabled: boolean = false;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get useGhost(): boolean {\n return this._useGhost;\n }\n\n set useGhost(useGhost: boolean) {\n this._useGhost = coerceBooleanProperty(useGhost);\n }\n\n private _useGhost: boolean = false;\n\n // TODO: Skipped for migration because:\n // Accessor inputs cannot be migrated as they are too complex.\n @Input()\n get gutterSize(): number {\n return this._gutterSize;\n }\n\n set gutterSize(gutterSize: number) {\n const size = coerceNumberProperty(gutterSize);\n\n this._gutterSize = size > 0 ? size : this.gutterSize;\n }\n\n private _gutterSize: number = 6;\n\n get resizing(): boolean {\n return this._resizing;\n }\n\n private _resizing: boolean = false;\n\n addArea(area: KbqSplitterAreaDirective): void {\n this.areas.push(this.mapAndOrderArea(area, this.areas.length));\n this.changeDetectorRef.detectChanges();\n }\n\n ngOnInit(): void {\n if (!this.direction) {\n this.direction = Direction.Horizontal;\n }\n\n this.setStyle(StyleProperty.FlexDirection, this.isVertical() ? 'column' : 'row');\n }\n\n ngAfterContentInit() {\n this.areasChangeSubscription = this.areaRefs.changes.subscribe((data: QueryList<KbqSplitterAreaDirective>) => {\n this.areas = data.map(this.mapAndOrderArea);\n this.changeDetectorRef.markForCheck();\n });\n }\n\n ngOnDestroy() {\n this.areasChangeSubscription.unsubscribe();\n }\n\n onMouseDown(event: MouseEvent, leftAreaIndex: number, rightAreaIndex: number) {\n if (this.disabled) {\n return;\n }\n\n event.preventDefault();\n\n const startPoint: IPoint = {\n x: event.screenX,\n y: event.screenY\n };\n\n const leftArea = this.areas[leftAreaIndex];\n const rightArea = this.areas[rightAreaIndex];\n\n leftArea.initialSize = leftArea.area.getSize();\n rightArea.initialSize = rightArea.area.getSize();\n\n let currentGutter: KbqGutterDirective | undefined;\n\n if (this.useGhost) {\n const gutterOrder = leftAreaIndex * 2 + 1;\n\n currentGutter = this.gutters().find((gutter: KbqGutterDirective) => gutter.order === gutterOrder);\n\n if (currentGutter) {\n const gutterPosition = currentGutter.getPosition();\n const ghost = this.ghost();\n\n ghost.direction = currentGutter.direction;\n ghost.size = currentGutter.size;\n ghost.x = gutterPosition.x;\n ghost.y = gutterPosition.y;\n\n ghost.visible = true;\n this.setStyle(\n StyleProperty.Cursor,\n currentGutter.direction === Direction.Vertical ? 'row-resize' : 'col-resize'\n );\n }\n } else {\n this.areas.forEach((item) => {\n const size = item.area.getSize();\n\n item.area.disableFlex();\n item.area.setSize(size);\n });\n }\n\n this.listeners.push(\n this.renderer.listen('document', 'mouseup', () => this.onMouseUp(leftArea, rightArea, currentGutter))\n );\n\n this.ngZone.runOutsideAngular(() => {\n this.listeners.push(\n this.renderer.listen('document', 'mousemove', (e: MouseEvent) =>\n this.onMouseMove(e, startPoint, leftArea, rightArea, currentGutter)\n )\n );\n });\n\n this._isDragging = true;\n }\n\n removeArea(area: KbqSplitterAreaDirective): void {\n let indexToRemove: number = -1;\n\n this.areas.some((item, index) => {\n if (item.area === area) {\n indexToRemove = index;\n\n return true;\n }\n\n return false;\n });\n\n if (indexToRemove === -1) {\n return;\n }\n\n this.areas.splice(indexToRemove, 1);\n }\n\n isVertical(): boolean {\n return this.direction === Direction.Vertical;\n }\n\n private mapAndOrderArea = (area: KbqSplitterAreaDirective, index: number): IArea => {\n const order = index * this.areaPositionDivider;\n\n area.setOrder(order);\n\n return {\n area,\n index,\n order,\n initialSize: area.getSize()\n };\n };\n\n private updateGutter(): void {\n this.gutters().forEach((gutter) => {\n if (gutter.dragged) {\n gutter.dragged = false;\n\n this.changeDetectorRef.detectChanges();\n }\n });\n }\n\n private onMouseMove(\n event: MouseEvent,\n startPoint: IPoint,\n leftArea: IArea,\n rightArea: IArea,\n currentGutter: KbqGutterDirective | undefined\n ) {\n if (!this.isDragging || this.disabled) {\n return;\n }\n\n const endPoint: IPoint = {\n x: event.screenX,\n y: event.screenY\n };\n\n const offset = this.isVertical() ? startPoint.y - endPoint.y : startPoint.x - endPoint.x;\n\n if (this.useGhost && currentGutter) {\n const gutterPosition = currentGutter.getPosition();\n const leftPos = leftArea.area.getPosition();\n const rightPos = rightArea.area.getPosition();\n const rightMin = rightArea.area.getMinSize() || 0;\n const leftMin = leftArea.area.getMinSize() || 0;\n\n const key = this.isVertical() ? 'y' : 'x';\n\n const minPos = leftPos[key] - leftMin;\n const maxPos = rightPos[key] + (rightArea.area.getSize() || 0) - rightMin - currentGutter.size;\n const newPos = gutterPosition[key] - offset;\n\n this.ghost()[key] = newPos < minPos ? minPos : Math.min(newPos, maxPos);\n } else {\n this.resizeAreas(leftArea, rightArea, offset);\n }\n }\n\n private resizeAreas(leftArea: IArea, rightArea: IArea, sizeOffset: number): void {\n const newLeftAreaSize = leftArea.initialSize - sizeOffset;\n const newRightAreaSize = rightArea.initialSize + sizeOffset;\n\n const minLeftAreaSize = leftArea.area.getMinSize();\n const minRightAreaSize = rightArea.area.getMinSize();\n\n if (newLeftAreaSize < minLeftAreaSize || newRightAreaSize < minRightAreaSize) {\n return;\n } else if (newLeftAreaSize <= 0) {\n leftArea.area.setSize(0);\n rightArea.area.setSize(rightArea.initialSize + leftArea.initialSize);\n } else if (newRightAreaSize <= 0) {\n leftArea.area.setSize(rightArea.initialSize + leftArea.initialSize);\n rightArea.area.setSize(0);\n } else {\n leftArea.area.setSize(newLeftAreaSize);\n rightArea.area.setSize(newRightAreaSize);\n }\n }\n\n private onMouseUp(leftArea: IArea, rightArea: IArea, currentGutter: KbqGutterDirective | undefined) {\n while (this.listeners.length > 0) {\n const unsubscribe = this.listeners.pop();\n\n if (unsubscribe) {\n unsubscribe();\n }\n }\n\n if (this.useGhost && currentGutter) {\n const gutterPosition = currentGutter.getPosition();\n const ghost = this.ghost();\n const offset =\n ghost.direction === Direction.Vertical ? gutterPosition.y - ghost.y : gutterPosition.x - ghost.x;\n\n this.resizeAreas(leftArea, rightArea, offset);\n this.ghost().visible = false;\n this.setStyle(StyleProperty.Cursor, 'unset');\n }\n\n this._isDragging = false;\n\n this.updateGutter();\n\n // TODO: The 'emit' function requires a mandatory void argument\n this.gutterPositionChange.emit();\n\n this.changeDetectorRef.markForCheck();\n }\n\n private setStyle(property: StyleProperty, value: string | number) {\n this.renderer.setStyle(this.elementRef.nativeElement, property, value);\n }\n}\n\n@Directive({\n selector: '[kbq-splitter-area]',\n host: {\n class: 'kbq-splitter-area',\n '[class.kbq-splitter-area_resizing]': 'isResizing()'\n }\n})\nexport class KbqSplitterAreaDirective implements AfterViewInit, OnDestroy {\n private elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private renderer = inject(Renderer2);\n private splitter = inject(KbqSplitterComponent);\n\n readonly sizeChange = output<number>();\n\n private readonly window = inject(KBQ_WINDOW);\n private readonly platform = inject(Platform);\n\n isResizing(): boolean {\n return this.splitter.isDragging;\n }\n\n disableFlex(): void {\n this.renderer.removeStyle(this.elementRef.nativeElement, 'flex');\n }\n\n ngAfterViewInit() {\n this.splitter.addArea(this);\n\n this.removeStyle(StyleProperty.MaxWidth);\n\n if (this.splitter.direction === Direction.Vertical) {\n this.setStyle(StyleProperty.Width, '100%');\n this.removeStyle(StyleProperty.Height);\n } else {\n this.setStyle(StyleProperty.Height, '100%');\n this.removeStyle(StyleProperty.Width);\n }\n\n this.splitter.gutterPositionChange.subscribe(this.emitSizeChange);\n }\n\n ngOnDestroy(): void {\n this.splitter.removeArea(this);\n }\n\n setOrder(order: number): void {\n this.setStyle(StyleProperty.Order, order);\n }\n\n setSize(size: number): void {\n if (isNaN(size)) {\n return;\n }\n\n this.setStyle(this.getSizeProperty(), coerceCssPixelValue(coerceNumberProperty(size)));\n }\n\n getSize(): number {\n if (!this.platform.isBrowser) return 0;\n\n return this.elementRef.nativeElement[this.getOffsetSizeProperty()];\n }\n\n getPosition(): IPoint {\n return {\n x: this.elementRef.nativeElement.offsetLeft,\n y: this.elementRef.nativeElement.offsetTop\n };\n }\n\n getMinSize(): number {\n const styles = this.window.getComputedStyle(this.elementRef.nativeElement);\n\n return parseFloat(styles[this.getMinSizeProperty()]);\n }\n\n private isVertical(): boolean {\n return this.splitter.direction === Direction.Vertical;\n }\n\n private getMinSizeProperty(): StyleProperty {\n return this.isVertical() ? StyleProperty.MinHeight : StyleProperty.MinWidth;\n }\n\n private getOffsetSizeProperty(): StyleProperty {\n return this.isVertical() ? StyleProperty.OffsetHeight : StyleProperty.OffsetWidth;\n }\n\n private getSizeProperty(): StyleProperty {\n return this.isVertical() ? StyleProperty.Height : StyleProperty.Width;\n }\n\n private setStyle(style: StyleProperty, value: string | number) {\n this.renderer.setStyle(this.elementRef.nativeElement, style, value);\n }\n\n private removeStyle(style: StyleProperty) {\n this.renderer.removeStyle(this.elementRef.nativeElement, style);\n }\n\n private emitSizeChange = () => {\n this.sizeChange.emit(this.getSize());\n };\n}\n","<ng-content />\n\n@for (area of areas; track area) {\n @if (!$last) {\n <kbq-gutter\n [attr.disabled]=\"disabled || null\"\n [direction]=\"direction\"\n [order]=\"$index * 2 + 1\"\n [size]=\"gutterSize\"\n [style.display]=\"hideGutters ? 'none' : 'flex'\"\n (mousedown)=\"onMouseDown($event, $index, $index + 1)\"\n />\n }\n}\n\n@if (useGhost) {\n <kbq-gutter-ghost />\n}\n","import { NgModule } from '@angular/core';\nimport { KbqIconModule } from '@koobiq/components/icon';\nimport {\n KbqGutterDirective,\n KbqGutterGhostDirective,\n KbqSplitterAreaDirective,\n KbqSplitterComponent\n} from './splitter.component';\n\n@NgModule({\n imports: [\n KbqIconModule,\n KbqGutterDirective,\n KbqGutterGhostDirective,\n KbqSplitterAreaDirective,\n KbqSplitterComponent\n ],\n exports: [\n KbqGutterDirective,\n KbqSplitterAreaDirective,\n KbqSplitterComponent\n ]\n})\nexport class KbqSplitterModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,23 +1,25 @@
1
1
  import * as i0 from '@angular/core';
2
- import { input, ViewEncapsulation, ChangeDetectionStrategy, Component, contentChild, Directive, NgModule } from '@angular/core';
2
+ import { input, booleanAttribute, ViewEncapsulation, ChangeDetectionStrategy, Component, contentChild, Directive, NgModule } from '@angular/core';
3
3
  import { KbqButton } from '@koobiq/components/button';
4
4
  import { A11yModule } from '@angular/cdk/a11y';
5
5
  import { PlatformModule } from '@angular/cdk/platform';
6
6
 
7
7
  class KbqTable {
8
8
  constructor() {
9
- this.border = input(false, ...(ngDevMode ? [{ debugName: "border" }] : []));
9
+ this.border = input(false, ...(ngDevMode ? [{ debugName: "border", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
10
+ this.disableHover = input(false, ...(ngDevMode ? [{ debugName: "disableHover", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));
10
11
  }
11
12
  /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: KbqTable, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.25", type: KbqTable, isStandalone: true, selector: "table[kbq-table]", inputs: { border: { classPropertyName: "border", publicName: "border", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.kbq-table_bordered": "border()" }, classAttribute: "kbq-table" }, exportAs: ["kbqTable"], ngImport: i0, template: '<ng-content />', isInline: true, styles: [".kbq-table{border-spacing:0}.kbq-table>thead>tr>th,.kbq-table>thead>tr>td,.kbq-table>tbody>tr>th,.kbq-table>tbody>tr>td,.kbq-table>tfoot>tr>th,.kbq-table>tfoot>tr>td{padding-top:var(--kbq-table-size-row-padding-vertical);padding-right:var(--kbq-table-size-row-padding-horizontal);padding-bottom:var(--kbq-table-size-row-padding-vertical);padding-left:var(--kbq-table-size-row-padding-horizontal);vertical-align:baseline;text-align:left}.kbq-table>thead>tr>th{border-bottom-width:var(--kbq-table-size-border-width);border-bottom-style:solid}.kbq-table .kbq-table-cell_has-button{padding-top:var(--kbq-size-xxs);padding-bottom:var(--kbq-size-xxs)}.kbq-table.kbq-table_bordered>tbody>tr th,.kbq-table.kbq-table_bordered>tbody>tr td{border-bottom-width:var(--kbq-table-size-border-width);border-bottom-style:solid}.kbq-table:not(.kbq-table_bordered)>tbody>tr>td:first-child{border-top-left-radius:var(--kbq-size-m);border-bottom-left-radius:var(--kbq-size-m)}.kbq-table:not(.kbq-table_bordered)>tbody>tr>td:last-child{border-top-right-radius:var(--kbq-size-m);border-bottom-right-radius:var(--kbq-size-m)}.kbq-table:not(.kbq-table_bordered)>tbody>tr:first-child>td:first-child{border-top-left-radius:0}.kbq-table:not(.kbq-table_bordered)>tbody>tr:first-child>td:last-child{border-top-right-radius:0}.kbq-table>thead{color:var(--kbq-foreground-contrast-secondary)}.kbq-table>thead>tr>th{border-bottom-color:var(--kbq-line-contrast-less)}.kbq-table>tbody>tr>th,.kbq-table>tbody>tr>td{color:var(--kbq-foreground-contrast)}.kbq-table>tbody>tr.kbq-hovered td,.kbq-table>tbody>tr:hover td{background-color:var(--kbq-states-background-transparent-hover)}.kbq-table.kbq-table_bordered>tbody>tr th,.kbq-table.kbq-table_bordered>tbody>tr td{border-bottom-color:var(--kbq-line-contrast-less)}.kbq-table>thead>tr>th{font-weight:400}.kbq-table>thead{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-table>tbody>tr>th{font-weight:400}.kbq-table>tbody{font-size:var(--kbq-typography-tabular-normal-font-size);font-style:var(--kbq-typography-tabular-normal-font-style);font-weight:var(--kbq-typography-tabular-normal-font-weight);line-height:var(--kbq-typography-tabular-normal-line-height);font-family:var(--kbq-typography-tabular-normal-font-family);text-transform:var(--kbq-typography-tabular-normal-text-transform);font-feature-settings:var(--kbq-typography-tabular-normal-font-feature-settings);letter-spacing:var(--kbq-typography-tabular-normal-letter-spacing)}\n", ".kbq-table{--kbq-table-size-border-width: var(--kbq-size-border-width);--kbq-table-size-row-padding-vertical: 10px;--kbq-table-size-row-padding-horizontal: var(--kbq-size-s)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
13
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.25", type: KbqTable, isStandalone: true, selector: "table[kbq-table]", inputs: { border: { classPropertyName: "border", publicName: "border", isSignal: true, isRequired: false, transformFunction: null }, disableHover: { classPropertyName: "disableHover", publicName: "disableHover", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.kbq-table_bordered": "border()", "class.kbq-table_disable-hover": "disableHover()" }, classAttribute: "kbq-table" }, exportAs: ["kbqTable"], ngImport: i0, template: '<ng-content />', isInline: true, styles: [".kbq-table{border-spacing:0}.kbq-table>thead>tr>th,.kbq-table>thead>tr>td,.kbq-table>tbody>tr>th,.kbq-table>tbody>tr>td,.kbq-table>tfoot>tr>th,.kbq-table>tfoot>tr>td{padding-top:var(--kbq-table-size-row-padding-vertical);padding-right:var(--kbq-table-size-row-padding-horizontal);padding-bottom:var(--kbq-table-size-row-padding-vertical);padding-left:var(--kbq-table-size-row-padding-horizontal);vertical-align:baseline;text-align:left}.kbq-table>thead>tr>th{border-bottom-width:var(--kbq-table-size-border-width);border-bottom-style:solid}.kbq-table .kbq-table-cell_has-button{padding-top:var(--kbq-size-xxs);padding-bottom:var(--kbq-size-xxs)}.kbq-table.kbq-table_bordered>tbody>tr th,.kbq-table.kbq-table_bordered>tbody>tr td{border-bottom-width:var(--kbq-table-size-border-width);border-bottom-style:solid}.kbq-table:not(.kbq-table_bordered)>tbody>tr>td:first-child{border-top-left-radius:var(--kbq-size-m);border-bottom-left-radius:var(--kbq-size-m)}.kbq-table:not(.kbq-table_bordered)>tbody>tr>td:last-child{border-top-right-radius:var(--kbq-size-m);border-bottom-right-radius:var(--kbq-size-m)}.kbq-table:not(.kbq-table_bordered)>tbody>tr:first-child>td:first-child{border-top-left-radius:0}.kbq-table:not(.kbq-table_bordered)>tbody>tr:first-child>td:last-child{border-top-right-radius:0}.kbq-table>thead{color:var(--kbq-foreground-contrast-secondary)}.kbq-table>thead>tr>th{border-bottom-color:var(--kbq-line-contrast-less)}.kbq-table>tbody>tr>th,.kbq-table>tbody>tr>td{color:var(--kbq-foreground-contrast)}.kbq-table:not(.kbq-table_disable-hover)>tbody>tr.kbq-hovered td,.kbq-table:not(.kbq-table_disable-hover)>tbody>tr:hover td{background-color:var(--kbq-states-background-transparent-hover)}.kbq-table.kbq-table_bordered>tbody>tr th,.kbq-table.kbq-table_bordered>tbody>tr td{border-bottom-color:var(--kbq-line-contrast-less)}.kbq-table>thead>tr>th{font-weight:400}.kbq-table>thead{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-table>tbody>tr>th{font-weight:400}.kbq-table>tbody{font-size:var(--kbq-typography-tabular-normal-font-size);font-style:var(--kbq-typography-tabular-normal-font-style);font-weight:var(--kbq-typography-tabular-normal-font-weight);line-height:var(--kbq-typography-tabular-normal-line-height);font-family:var(--kbq-typography-tabular-normal-font-family);text-transform:var(--kbq-typography-tabular-normal-text-transform);font-feature-settings:var(--kbq-typography-tabular-normal-font-feature-settings);letter-spacing:var(--kbq-typography-tabular-normal-letter-spacing)}\n", ".kbq-table{--kbq-table-size-border-width: var(--kbq-size-border-width);--kbq-table-size-row-padding-vertical: 10px;--kbq-table-size-row-padding-horizontal: var(--kbq-size-s)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
13
14
  }
14
15
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.25", ngImport: i0, type: KbqTable, decorators: [{
15
16
  type: Component,
16
17
  args: [{ selector: 'table[kbq-table]', template: '<ng-content />', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
17
18
  class: 'kbq-table',
18
- '[class.kbq-table_bordered]': 'border()'
19
- }, exportAs: 'kbqTable', styles: [".kbq-table{border-spacing:0}.kbq-table>thead>tr>th,.kbq-table>thead>tr>td,.kbq-table>tbody>tr>th,.kbq-table>tbody>tr>td,.kbq-table>tfoot>tr>th,.kbq-table>tfoot>tr>td{padding-top:var(--kbq-table-size-row-padding-vertical);padding-right:var(--kbq-table-size-row-padding-horizontal);padding-bottom:var(--kbq-table-size-row-padding-vertical);padding-left:var(--kbq-table-size-row-padding-horizontal);vertical-align:baseline;text-align:left}.kbq-table>thead>tr>th{border-bottom-width:var(--kbq-table-size-border-width);border-bottom-style:solid}.kbq-table .kbq-table-cell_has-button{padding-top:var(--kbq-size-xxs);padding-bottom:var(--kbq-size-xxs)}.kbq-table.kbq-table_bordered>tbody>tr th,.kbq-table.kbq-table_bordered>tbody>tr td{border-bottom-width:var(--kbq-table-size-border-width);border-bottom-style:solid}.kbq-table:not(.kbq-table_bordered)>tbody>tr>td:first-child{border-top-left-radius:var(--kbq-size-m);border-bottom-left-radius:var(--kbq-size-m)}.kbq-table:not(.kbq-table_bordered)>tbody>tr>td:last-child{border-top-right-radius:var(--kbq-size-m);border-bottom-right-radius:var(--kbq-size-m)}.kbq-table:not(.kbq-table_bordered)>tbody>tr:first-child>td:first-child{border-top-left-radius:0}.kbq-table:not(.kbq-table_bordered)>tbody>tr:first-child>td:last-child{border-top-right-radius:0}.kbq-table>thead{color:var(--kbq-foreground-contrast-secondary)}.kbq-table>thead>tr>th{border-bottom-color:var(--kbq-line-contrast-less)}.kbq-table>tbody>tr>th,.kbq-table>tbody>tr>td{color:var(--kbq-foreground-contrast)}.kbq-table>tbody>tr.kbq-hovered td,.kbq-table>tbody>tr:hover td{background-color:var(--kbq-states-background-transparent-hover)}.kbq-table.kbq-table_bordered>tbody>tr th,.kbq-table.kbq-table_bordered>tbody>tr td{border-bottom-color:var(--kbq-line-contrast-less)}.kbq-table>thead>tr>th{font-weight:400}.kbq-table>thead{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-table>tbody>tr>th{font-weight:400}.kbq-table>tbody{font-size:var(--kbq-typography-tabular-normal-font-size);font-style:var(--kbq-typography-tabular-normal-font-style);font-weight:var(--kbq-typography-tabular-normal-font-weight);line-height:var(--kbq-typography-tabular-normal-line-height);font-family:var(--kbq-typography-tabular-normal-font-family);text-transform:var(--kbq-typography-tabular-normal-text-transform);font-feature-settings:var(--kbq-typography-tabular-normal-font-feature-settings);letter-spacing:var(--kbq-typography-tabular-normal-letter-spacing)}\n", ".kbq-table{--kbq-table-size-border-width: var(--kbq-size-border-width);--kbq-table-size-row-padding-vertical: 10px;--kbq-table-size-row-padding-horizontal: var(--kbq-size-s)}\n"] }]
20
- }], propDecorators: { border: [{ type: i0.Input, args: [{ isSignal: true, alias: "border", required: false }] }] } });
19
+ '[class.kbq-table_bordered]': 'border()',
20
+ '[class.kbq-table_disable-hover]': 'disableHover()'
21
+ }, exportAs: 'kbqTable', styles: [".kbq-table{border-spacing:0}.kbq-table>thead>tr>th,.kbq-table>thead>tr>td,.kbq-table>tbody>tr>th,.kbq-table>tbody>tr>td,.kbq-table>tfoot>tr>th,.kbq-table>tfoot>tr>td{padding-top:var(--kbq-table-size-row-padding-vertical);padding-right:var(--kbq-table-size-row-padding-horizontal);padding-bottom:var(--kbq-table-size-row-padding-vertical);padding-left:var(--kbq-table-size-row-padding-horizontal);vertical-align:baseline;text-align:left}.kbq-table>thead>tr>th{border-bottom-width:var(--kbq-table-size-border-width);border-bottom-style:solid}.kbq-table .kbq-table-cell_has-button{padding-top:var(--kbq-size-xxs);padding-bottom:var(--kbq-size-xxs)}.kbq-table.kbq-table_bordered>tbody>tr th,.kbq-table.kbq-table_bordered>tbody>tr td{border-bottom-width:var(--kbq-table-size-border-width);border-bottom-style:solid}.kbq-table:not(.kbq-table_bordered)>tbody>tr>td:first-child{border-top-left-radius:var(--kbq-size-m);border-bottom-left-radius:var(--kbq-size-m)}.kbq-table:not(.kbq-table_bordered)>tbody>tr>td:last-child{border-top-right-radius:var(--kbq-size-m);border-bottom-right-radius:var(--kbq-size-m)}.kbq-table:not(.kbq-table_bordered)>tbody>tr:first-child>td:first-child{border-top-left-radius:0}.kbq-table:not(.kbq-table_bordered)>tbody>tr:first-child>td:last-child{border-top-right-radius:0}.kbq-table>thead{color:var(--kbq-foreground-contrast-secondary)}.kbq-table>thead>tr>th{border-bottom-color:var(--kbq-line-contrast-less)}.kbq-table>tbody>tr>th,.kbq-table>tbody>tr>td{color:var(--kbq-foreground-contrast)}.kbq-table:not(.kbq-table_disable-hover)>tbody>tr.kbq-hovered td,.kbq-table:not(.kbq-table_disable-hover)>tbody>tr:hover td{background-color:var(--kbq-states-background-transparent-hover)}.kbq-table.kbq-table_bordered>tbody>tr th,.kbq-table.kbq-table_bordered>tbody>tr td{border-bottom-color:var(--kbq-line-contrast-less)}.kbq-table>thead>tr>th{font-weight:400}.kbq-table>thead{font-size:var(--kbq-typography-text-normal-font-size);font-style:var(--kbq-typography-text-normal-font-style);font-weight:var(--kbq-typography-text-normal-font-weight);line-height:var(--kbq-typography-text-normal-line-height);font-family:var(--kbq-typography-text-normal-font-family);text-transform:var(--kbq-typography-text-normal-text-transform);font-feature-settings:var(--kbq-typography-text-normal-font-feature-settings);letter-spacing:var(--kbq-typography-text-normal-letter-spacing)}.kbq-table>tbody>tr>th{font-weight:400}.kbq-table>tbody{font-size:var(--kbq-typography-tabular-normal-font-size);font-style:var(--kbq-typography-tabular-normal-font-style);font-weight:var(--kbq-typography-tabular-normal-font-weight);line-height:var(--kbq-typography-tabular-normal-line-height);font-family:var(--kbq-typography-tabular-normal-font-family);text-transform:var(--kbq-typography-tabular-normal-text-transform);font-feature-settings:var(--kbq-typography-tabular-normal-font-feature-settings);letter-spacing:var(--kbq-typography-tabular-normal-letter-spacing)}\n", ".kbq-table{--kbq-table-size-border-width: var(--kbq-size-border-width);--kbq-table-size-row-padding-vertical: 10px;--kbq-table-size-row-padding-horizontal: var(--kbq-size-s)}\n"] }]
22
+ }], propDecorators: { border: [{ type: i0.Input, args: [{ isSignal: true, alias: "border", required: false }] }], disableHover: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableHover", required: false }] }] } });
21
23
  class KbqTableCellContent {
22
24
  constructor() {
23
25
  this.button = contentChild(KbqButton, ...(ngDevMode ? [{ debugName: "button" }] : []));
@@ -1 +1 @@
1
- {"version":3,"file":"koobiq-components-table.mjs","sources":["../../../packages/components/table/table.component.ts","../../../packages/components/table/table.module.ts","../../../packages/components/table/koobiq-components-table.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, Directive, ViewEncapsulation, contentChild, input } from '@angular/core';\nimport { KbqButton } from '@koobiq/components/button';\n\n@Component({\n selector: 'table[kbq-table]',\n template: '<ng-content />',\n styleUrls: ['table.scss', 'table-tokens.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-table',\n '[class.kbq-table_bordered]': 'border()'\n },\n exportAs: 'kbqTable'\n})\nexport class KbqTable {\n readonly border = input<boolean>(false);\n}\n\n@Directive({\n selector: 'kbq-table td',\n host: {\n '[class.kbq-table-cell_has-button]': '!!button()'\n }\n})\nexport class KbqTableCellContent {\n readonly button = contentChild(KbqButton);\n}\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { PlatformModule } from '@angular/cdk/platform';\nimport { NgModule } from '@angular/core';\nimport { KbqTable, KbqTableCellContent } from './table.component';\n\n@NgModule({\n imports: [\n A11yModule,\n PlatformModule,\n KbqTable,\n KbqTableCellContent\n ],\n exports: [\n KbqTable,\n KbqTableCellContent\n ]\n})\nexport class KbqTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"koobiq-components-table.mjs","sources":["../../../packages/components/table/table.component.ts","../../../packages/components/table/table.module.ts","../../../packages/components/table/koobiq-components-table.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n Directive,\n ViewEncapsulation,\n booleanAttribute,\n contentChild,\n input\n} from '@angular/core';\nimport { KbqButton } from '@koobiq/components/button';\n\n@Component({\n selector: 'table[kbq-table]',\n template: '<ng-content />',\n styleUrls: ['table.scss', 'table-tokens.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n class: 'kbq-table',\n '[class.kbq-table_bordered]': 'border()',\n '[class.kbq-table_disable-hover]': 'disableHover()'\n },\n exportAs: 'kbqTable'\n})\nexport class KbqTable {\n readonly border = input(false, { transform: booleanAttribute });\n readonly disableHover = input(false, { transform: booleanAttribute });\n}\n\n@Directive({\n selector: 'kbq-table td',\n host: {\n '[class.kbq-table-cell_has-button]': '!!button()'\n }\n})\nexport class KbqTableCellContent {\n readonly button = contentChild(KbqButton);\n}\n","import { A11yModule } from '@angular/cdk/a11y';\nimport { PlatformModule } from '@angular/cdk/platform';\nimport { NgModule } from '@angular/core';\nimport { KbqTable, KbqTableCellContent } from './table.component';\n\n@NgModule({\n imports: [\n A11yModule,\n PlatformModule,\n KbqTable,\n KbqTableCellContent\n ],\n exports: [\n KbqTable,\n KbqTableCellContent\n ]\n})\nexport class KbqTableModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}