@koobiq/components 20.3.1 → 20.4.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 (104) hide show
  1. package/accordion/accordion.scss +4 -1
  2. package/accordion/index.d.ts +36 -12
  3. package/alert/index.d.ts +8 -0
  4. package/breadcrumbs/index.d.ts +2 -0
  5. package/button-toggle/button-toggle-tokens.scss +14 -0
  6. package/button-toggle/button-toggle.scss +75 -3
  7. package/core/index.d.ts +146 -5
  8. package/core/option/_option-theme.scss +3 -0
  9. package/core/styles/common/_select.scss +98 -3
  10. package/core/styles/typography/_typography.scss +8 -0
  11. package/ellipsis-center/ellipsis-center.scss +31 -0
  12. package/ellipsis-center/index.d.ts +35 -2
  13. package/fesm2022/koobiq-components-accordion.mjs +143 -44
  14. package/fesm2022/koobiq-components-accordion.mjs.map +1 -1
  15. package/fesm2022/koobiq-components-alert.mjs +17 -1
  16. package/fesm2022/koobiq-components-alert.mjs.map +1 -1
  17. package/fesm2022/koobiq-components-autocomplete.mjs +2 -2
  18. package/fesm2022/koobiq-components-autocomplete.mjs.map +1 -1
  19. package/fesm2022/koobiq-components-breadcrumbs.mjs +8 -3
  20. package/fesm2022/koobiq-components-breadcrumbs.mjs.map +1 -1
  21. package/fesm2022/koobiq-components-button-toggle.mjs +2 -2
  22. package/fesm2022/koobiq-components-button-toggle.mjs.map +1 -1
  23. package/fesm2022/koobiq-components-code-block.mjs +10 -5
  24. package/fesm2022/koobiq-components-code-block.mjs.map +1 -1
  25. package/fesm2022/koobiq-components-core.mjs +214 -11
  26. package/fesm2022/koobiq-components-core.mjs.map +1 -1
  27. package/fesm2022/koobiq-components-dropdown.mjs +2 -2
  28. package/fesm2022/koobiq-components-dropdown.mjs.map +1 -1
  29. package/fesm2022/koobiq-components-ellipsis-center.mjs +101 -34
  30. package/fesm2022/koobiq-components-ellipsis-center.mjs.map +1 -1
  31. package/fesm2022/koobiq-components-file-upload.mjs +7 -7
  32. package/fesm2022/koobiq-components-file-upload.mjs.map +1 -1
  33. package/fesm2022/koobiq-components-filter-bar.mjs +94 -55
  34. package/fesm2022/koobiq-components-filter-bar.mjs.map +1 -1
  35. package/fesm2022/koobiq-components-inline-edit.mjs +177 -14
  36. package/fesm2022/koobiq-components-inline-edit.mjs.map +1 -1
  37. package/fesm2022/koobiq-components-list.mjs +359 -44
  38. package/fesm2022/koobiq-components-list.mjs.map +1 -1
  39. package/fesm2022/koobiq-components-markdown.mjs +6 -2
  40. package/fesm2022/koobiq-components-markdown.mjs.map +1 -1
  41. package/fesm2022/koobiq-components-modal.mjs +48 -7
  42. package/fesm2022/koobiq-components-modal.mjs.map +1 -1
  43. package/fesm2022/koobiq-components-select.mjs +117 -12
  44. package/fesm2022/koobiq-components-select.mjs.map +1 -1
  45. package/fesm2022/koobiq-components-sidebar.mjs +5 -1
  46. package/fesm2022/koobiq-components-sidebar.mjs.map +1 -1
  47. package/fesm2022/koobiq-components-sidepanel.mjs +25 -6
  48. package/fesm2022/koobiq-components-sidepanel.mjs.map +1 -1
  49. package/fesm2022/koobiq-components-tabs.mjs +460 -197
  50. package/fesm2022/koobiq-components-tabs.mjs.map +1 -1
  51. package/fesm2022/koobiq-components-time-range.mjs +388 -74
  52. package/fesm2022/koobiq-components-time-range.mjs.map +1 -1
  53. package/fesm2022/koobiq-components-timezone.mjs +4 -4
  54. package/fesm2022/koobiq-components-timezone.mjs.map +1 -1
  55. package/fesm2022/koobiq-components-title.mjs +15 -3
  56. package/fesm2022/koobiq-components-title.mjs.map +1 -1
  57. package/fesm2022/koobiq-components-tree-select.mjs +2 -2
  58. package/fesm2022/koobiq-components-tree-select.mjs.map +1 -1
  59. package/fesm2022/koobiq-components-tree.mjs +14 -4
  60. package/fesm2022/koobiq-components-tree.mjs.map +1 -1
  61. package/file-upload/file-upload.scss +0 -18
  62. package/file-upload/index.d.ts +1 -1
  63. package/file-upload/multiple-file-upload.component.scss +15 -3
  64. package/file-upload/single-file-upload.component.scss +10 -2
  65. package/filter-bar/filter-bar-tokens.scss +2 -1
  66. package/filter-bar/index.d.ts +41 -4
  67. package/filter-bar/pipes/base-pipe.scss +24 -6
  68. package/filter-bar/pipes/pipe-input.scss +3 -1
  69. package/inline-edit/index.d.ts +87 -8
  70. package/inline-edit/inline-edit-tokens.scss +1 -0
  71. package/inline-edit/inline-edit.scss +26 -0
  72. package/link/_link-theme.scss +50 -15
  73. package/list/index.d.ts +126 -5
  74. package/markdown/index.d.ts +2 -0
  75. package/modal/index.d.ts +16 -7
  76. package/navbar/_navbar-item_horizontal.scss +5 -0
  77. package/package.json +3 -3
  78. package/prebuilt-themes/dark-theme.css +1 -1
  79. package/prebuilt-themes/light-theme.css +1 -1
  80. package/prebuilt-themes/theme.css +1 -1
  81. package/schematics/migrations/alert-signals/index.js +4 -1
  82. package/schematics/migrations/autocomplete-panel-width-auto/index.js +3 -34
  83. package/schematics/migrations/empty-state-size-attr/index.js +3 -34
  84. package/schematics/migrations/filter-bar-signals/index.js +4 -1
  85. package/schematics/migrations/loader-overlay-size-attr/index.js +3 -34
  86. package/schematics/migrations/v20-upgrade/index.js +4 -1
  87. package/schematics/ng-add/index.js +1 -1
  88. package/schematics/utils/angular-parsing.js +11 -12
  89. package/schematics/utils/package-config.js +5 -4
  90. package/schematics/utils/typescript.js +24 -0
  91. package/select/_select-theme.scss +9 -1
  92. package/select/index.d.ts +18 -2
  93. package/select/select.scss +13 -0
  94. package/sidebar/index.d.ts +1 -0
  95. package/sidepanel/index.d.ts +9 -0
  96. package/tabs/_tabs-common.scss +111 -2
  97. package/tabs/index.d.ts +79 -48
  98. package/tabs/tab-group.scss +0 -4
  99. package/tabs/tab-header.scss +0 -2
  100. package/tabs/tab-nav-bar.scss +3 -11
  101. package/time-range/index.d.ts +140 -5
  102. package/time-range/time-range.scss +16 -1
  103. package/title/index.d.ts +10 -2
  104. package/tree/index.d.ts +1 -0
package/core/index.d.ts CHANGED
@@ -458,6 +458,71 @@ declare class ErrorStateMatcher {
458
458
  static ɵfac: i0.ɵɵFactoryDeclaration<ErrorStateMatcher, never>;
459
459
  static ɵprov: i0.ɵɵInjectableDeclaration<ErrorStateMatcher>;
460
460
  }
461
+ /**
462
+ * Resolves which controls a group-level error concerns.
463
+ *
464
+ * Called with one error of a group at a time. Return the names of the controls the error applies to, relative
465
+ * to the group holding it — `AbstractControl.get` paths such as `'passwords.confirm'` are supported — or
466
+ * `null` for errors this scope does not know.
467
+ *
468
+ * It is called from change detection, so keep it cheap and allocation-free.
469
+ */
470
+ type CrossFieldErrorScope = (errorKey: string, errorValue: unknown) => readonly string[] | null;
471
+ /**
472
+ * Error state matcher that also shows an error set on a `FormGroup` on the controls that error concerns,
473
+ * which the default matcher cannot: it is handed the field's own `FormControl` and never looks further.
474
+ *
475
+ * `scope` maps an error to those controls, so no error shape is imposed on validators. The error is revealed
476
+ * once every one of them is touched, or the form is submitted — override `shouldReveal` to change that.
477
+ *
478
+ * ## Usage:
479
+ *
480
+ * ```typescript
481
+ * providers: [
482
+ * kbqErrorStateMatcherProvider(
483
+ * new ShowOnCrossFieldErrorStateMatcher((key) =>
484
+ * key === 'passwordsMismatch' ? ['newPassword', 'confirmPassword'] : null
485
+ * )
486
+ * )
487
+ * ]
488
+ * ```
489
+ *
490
+ * Always pass an instance, as above — never the bare class (or a subclass) to `kbqErrorStateMatcherProvider`.
491
+ * `scope` has no injection token, so Angular cannot construct this class on its own; passing the class throws
492
+ * `NG0204` the first time anything injects `ErrorStateMatcher`.
493
+ *
494
+ * ## Combining with another matcher
495
+ *
496
+ * Cross-field display timing is this class's one job; timing for a control's own, non-cross-field errors is
497
+ * not, so it is delegated to `own` (default: the plain `ErrorStateMatcher`) rather than hard-coded — pass any
498
+ * other matcher to combine its timing with cross-field support, instead of subclassing:
499
+ *
500
+ * ```typescript
501
+ * new ShowOnCrossFieldErrorStateMatcher(
502
+ * (key) => (key === 'passwordsMismatch' ? ['newPassword', 'confirmPassword'] : null),
503
+ * new ShowRequiredOnSubmitErrorStateMatcher()
504
+ * )
505
+ * ```
506
+ */
507
+ declare class ShowOnCrossFieldErrorStateMatcher extends ErrorStateMatcher {
508
+ private readonly scope;
509
+ private readonly own;
510
+ private readonly warned;
511
+ constructor(scope: CrossFieldErrorScope, own?: ErrorStateMatcher);
512
+ isErrorState(control: AbstractControl | null, form: FormGroupDirective | NgForm | null): boolean;
513
+ /**
514
+ * Whether the controls a cross-field error concerns have been interacted with enough to show it.
515
+ *
516
+ * Consulted only while the form has not been submitted — a submit always reveals. A disabled control
517
+ * counts as satisfied, since it can never be touched by the user. Override to change the rule: when one
518
+ * end of a range is prefilled and the user is never expected to visit it, waiting for all of them hides
519
+ * the error until submit, and `controls.some(...)` is the better cue.
520
+ */
521
+ protected shouldReveal(controls: AbstractControl[]): boolean;
522
+ private isCrossFieldErrorState;
523
+ private isRevealedOn;
524
+ private resolve;
525
+ }
461
526
 
462
527
  /** @docs-private */
463
528
  interface CanUpdateErrorState {
@@ -727,6 +792,10 @@ type KbqA11yLocaleConfiguration = {
727
792
  close: string;
728
793
  /** Confirm button of an inline edit. */
729
794
  save: string;
795
+ /** Announced while an inline edit saves a value in the background. */
796
+ saving: string;
797
+ /** Announced when a background save of an inline edit fails. */
798
+ saveFailed: string;
730
799
  /** Discard button of an inline edit. */
731
800
  cancel: string;
732
801
  /** Button removing every notification at once. */
@@ -766,9 +835,10 @@ type KbqActionsPanelLocaleConfiguration = {
766
835
  closeTooltip: string;
767
836
  };
768
837
  /**
769
- * Locale configuration shared by `KbqSelectModule` and `KbqTreeModule`: `hiddenItemsText` is read by
770
- * `KbqSelectModule` (`kbq-select`) only, while `selectAll` is read by both `KbqSelectModule` and
771
- * `KbqTreeModule` (`kbq-tree-selection`, including standalone usage outside `KbqTreeSelectModule`).
838
+ * Locale configuration shared by the components that render a "select all" row: `hiddenItemsText` is read
839
+ * by `KbqSelectModule` (`kbq-select`) only, while `selectAll` is read by `KbqSelectModule`, by
840
+ * `KbqTreeModule` (`kbq-tree-selection`, including standalone usage outside `KbqTreeSelectModule`) and by
841
+ * `KbqListModule` (`kbq-list-selection`).
772
842
  */
773
843
  type KbqSelectLocaleConfiguration = {
774
844
  /** Counter of the selected values that did not fit into the trigger. Supports the `{{ number }}` placeholder. */
@@ -830,6 +900,11 @@ type KbqTimeRangeLocaleConfig = {
830
900
  apply: string;
831
901
  cancel: string;
832
902
  rangeLabel: string;
903
+ /**
904
+ * Reported when both ends of the range leave `minDate`/`maxDate`. Supports the `{{ value }}` placeholder.
905
+ * Optional, so a configuration written before it existed still compiles and gets the default wording.
906
+ */
907
+ outOfBoundsError?: string;
833
908
  allTime: string;
834
909
  currentQuarter: string;
835
910
  currentYear: string;
@@ -881,6 +956,8 @@ declare const enUSLocaleData: {
881
956
  a11y: {
882
957
  close: string;
883
958
  save: string;
959
+ saving: string;
960
+ saveFailed: string;
884
961
  cancel: string;
885
962
  removeAll: string;
886
963
  expandBreadcrumbs: string;
@@ -1032,6 +1109,7 @@ declare const enUSLocaleData: {
1032
1109
  apply: string;
1033
1110
  cancel: string;
1034
1111
  rangeLabel: string;
1112
+ outOfBoundsError: string;
1035
1113
  allTime: string;
1036
1114
  currentQuarter: string;
1037
1115
  currentYear: string;
@@ -1084,6 +1162,8 @@ declare const esLALocaleData: {
1084
1162
  a11y: {
1085
1163
  close: string;
1086
1164
  save: string;
1165
+ saving: string;
1166
+ saveFailed: string;
1087
1167
  cancel: string;
1088
1168
  removeAll: string;
1089
1169
  expandBreadcrumbs: string;
@@ -1234,6 +1314,7 @@ declare const esLALocaleData: {
1234
1314
  apply: string;
1235
1315
  cancel: string;
1236
1316
  rangeLabel: string;
1317
+ outOfBoundsError: string;
1237
1318
  allTime: string;
1238
1319
  currentQuarter: string;
1239
1320
  currentYear: string;
@@ -1286,6 +1367,8 @@ declare const ptBRLocaleData: {
1286
1367
  a11y: {
1287
1368
  close: string;
1288
1369
  save: string;
1370
+ saving: string;
1371
+ saveFailed: string;
1289
1372
  cancel: string;
1290
1373
  removeAll: string;
1291
1374
  expandBreadcrumbs: string;
@@ -1436,6 +1519,7 @@ declare const ptBRLocaleData: {
1436
1519
  apply: string;
1437
1520
  cancel: string;
1438
1521
  rangeLabel: string;
1522
+ outOfBoundsError: string;
1439
1523
  allTime: string;
1440
1524
  currentQuarter: string;
1441
1525
  currentYear: string;
@@ -1488,6 +1572,8 @@ declare const ruRULocaleData: {
1488
1572
  a11y: {
1489
1573
  close: string;
1490
1574
  save: string;
1575
+ saving: string;
1576
+ saveFailed: string;
1491
1577
  cancel: string;
1492
1578
  removeAll: string;
1493
1579
  expandBreadcrumbs: string;
@@ -1639,6 +1725,7 @@ declare const ruRULocaleData: {
1639
1725
  apply: string;
1640
1726
  cancel: string;
1641
1727
  rangeLabel: string;
1728
+ outOfBoundsError: string;
1642
1729
  allTime: string;
1643
1730
  currentQuarter: string;
1644
1731
  currentYear: string;
@@ -1691,6 +1778,8 @@ declare const tkTMLocaleData: {
1691
1778
  a11y: {
1692
1779
  close: string;
1693
1780
  save: string;
1781
+ saving: string;
1782
+ saveFailed: string;
1694
1783
  cancel: string;
1695
1784
  removeAll: string;
1696
1785
  expandBreadcrumbs: string;
@@ -1842,6 +1931,7 @@ declare const tkTMLocaleData: {
1842
1931
  apply: string;
1843
1932
  cancel: string;
1844
1933
  rangeLabel: string;
1934
+ outOfBoundsError: string;
1845
1935
  allTime: string;
1846
1936
  currentQuarter: string;
1847
1937
  currentYear: string;
@@ -2126,6 +2216,8 @@ declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
2126
2216
  a11y: {
2127
2217
  close: string;
2128
2218
  save: string;
2219
+ saving: string;
2220
+ saveFailed: string;
2129
2221
  cancel: string;
2130
2222
  removeAll: string;
2131
2223
  expandBreadcrumbs: string;
@@ -2277,6 +2369,7 @@ declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
2277
2369
  apply: string;
2278
2370
  cancel: string;
2279
2371
  rangeLabel: string;
2372
+ outOfBoundsError: string;
2280
2373
  allTime: string;
2281
2374
  currentQuarter: string;
2282
2375
  currentYear: string;
@@ -2366,6 +2459,8 @@ declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
2366
2459
  a11y: {
2367
2460
  close: string;
2368
2461
  save: string;
2462
+ saving: string;
2463
+ saveFailed: string;
2369
2464
  cancel: string;
2370
2465
  removeAll: string;
2371
2466
  expandBreadcrumbs: string;
@@ -2516,6 +2611,7 @@ declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
2516
2611
  apply: string;
2517
2612
  cancel: string;
2518
2613
  rangeLabel: string;
2614
+ outOfBoundsError: string;
2519
2615
  allTime: string;
2520
2616
  currentQuarter: string;
2521
2617
  currentYear: string;
@@ -2601,6 +2697,8 @@ declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
2601
2697
  a11y: {
2602
2698
  close: string;
2603
2699
  save: string;
2700
+ saving: string;
2701
+ saveFailed: string;
2604
2702
  cancel: string;
2605
2703
  removeAll: string;
2606
2704
  expandBreadcrumbs: string;
@@ -2751,6 +2849,7 @@ declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
2751
2849
  apply: string;
2752
2850
  cancel: string;
2753
2851
  rangeLabel: string;
2852
+ outOfBoundsError: string;
2754
2853
  allTime: string;
2755
2854
  currentQuarter: string;
2756
2855
  currentYear: string;
@@ -2841,6 +2940,8 @@ declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
2841
2940
  a11y: {
2842
2941
  close: string;
2843
2942
  save: string;
2943
+ saving: string;
2944
+ saveFailed: string;
2844
2945
  cancel: string;
2845
2946
  removeAll: string;
2846
2947
  expandBreadcrumbs: string;
@@ -2992,6 +3093,7 @@ declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
2992
3093
  apply: string;
2993
3094
  cancel: string;
2994
3095
  rangeLabel: string;
3096
+ outOfBoundsError: string;
2995
3097
  allTime: string;
2996
3098
  currentQuarter: string;
2997
3099
  currentYear: string;
@@ -3078,6 +3180,8 @@ declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
3078
3180
  a11y: {
3079
3181
  close: string;
3080
3182
  save: string;
3183
+ saving: string;
3184
+ saveFailed: string;
3081
3185
  cancel: string;
3082
3186
  removeAll: string;
3083
3187
  expandBreadcrumbs: string;
@@ -3229,6 +3333,7 @@ declare function KBQ_DEFAULT_LOCALE_DATA_FACTORY(): {
3229
3333
  apply: string;
3230
3334
  cancel: string;
3231
3335
  rangeLabel: string;
3336
+ outOfBoundsError: string;
3232
3337
  allTime: string;
3233
3338
  currentQuarter: string;
3234
3339
  currentYear: string;
@@ -4911,6 +5016,34 @@ declare const kbqInjectNativeElement: <T extends Element = HTMLElement>() => T;
4911
5016
  * revealing it would shift the list out from under it.
4912
5017
  */
4913
5018
  declare const kbqFocusAndReveal: (element: HTMLElement, skipReveal?: boolean) => void;
5019
+ /** Axis a scroll-overflow check applies to. */
5020
+ type KbqScrollAxis = 'horizontal' | 'vertical';
5021
+ /**
5022
+ * Largest disagreement (px) between an element's box metrics and the scroll offset the browser actually
5023
+ * hands out.
5024
+ *
5025
+ * `scrollWidth`/`clientWidth` are rounded to whole CSS pixels (up to 1px of error) while the scroll offset
5026
+ * snaps to the device-pixel grid, whose step is `1 / devicePixelRatio` CSS px — so the bound is
5027
+ * `1 + 1 / devicePixelRatio` and widens as the page is zoomed out, rather than being a constant. At 50% zoom
5028
+ * on a 1× display it is already 3px, which is why a fixed tolerance leaks the bug back in at low zoom.
5029
+ *
5030
+ * The view is resolved from the element rather than a global, so the helper stays usable on the server.
5031
+ */
5032
+ declare const kbqGetScrollOverflowTolerance: (element: Element) => number;
5033
+ /**
5034
+ * Whether `element` has scroll overflow along `axis` larger than the measurement error of the metrics it is
5035
+ * derived from — i.e. whether there is a scroll range the user can actually reach.
5036
+ */
5037
+ declare const kbqHasScrollOverflow: (element: Element, axis?: KbqScrollAxis) => boolean;
5038
+ /**
5039
+ * Rendered height of an element, or `0` when it has no box.
5040
+ *
5041
+ * `getClientRects()` returns an empty list for elements that are not laid out and is missing entirely
5042
+ * from the server DOM, so both the method and the first rect are read defensively rather than going
5043
+ * through `getBoundingClientRect()`, whose zeroes are indistinguishable from a genuinely collapsed
5044
+ * element.
5045
+ */
5046
+ declare const kbqGetElementHeight: (element: Element) => number;
4914
5047
 
4915
5048
  declare function isBoolean(value: unknown): value is boolean;
4916
5049
  /** Whether the value is undefined. */
@@ -5396,6 +5529,14 @@ declare class KbqSelectFooter {
5396
5529
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectFooter, never>;
5397
5530
  static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectFooter, "kbq-select-footer, [kbq-select-footer]", never, {}, {}, never, never, true, never>;
5398
5531
  }
5532
+ /**
5533
+ * Action inside a `kbq-select-footer`, drawn as a row of the drop-down menu rather than as a form
5534
+ * button. Apply it to a native `button` or `a` so activation and semantics stay native.
5535
+ */
5536
+ declare class KbqSelectFooterItem {
5537
+ static ɵfac: i0.ɵɵFactoryDeclaration<KbqSelectFooterItem, never>;
5538
+ static ɵdir: i0.ɵɵDirectiveDeclaration<KbqSelectFooterItem, "[kbq-select-footer-item]", never, {}, {}, never, never, true, never>;
5539
+ }
5399
5540
  declare class KbqSelectSearch implements AfterContentInit, OnDestroy {
5400
5541
  protected formField: KbqFormFieldRef;
5401
5542
  readonly changes: EventEmitter<string>;
@@ -5821,5 +5962,5 @@ declare const validationTooltipHideDelay = 3000;
5821
5962
 
5822
5963
  declare const VERSION: Version;
5823
5964
 
5824
- export { A, ALT, APOSTROPHE, ARROW_BOTTOM_MARGIN_AND_HALF_HEIGHT, AT_SIGN, AbsoluteDateFormatterImpurePipe, AbsoluteDateFormatterPipe, AbsoluteDateShortFormatterImpurePipe, AbsoluteDateShortFormatterPipe, AbsoluteDateTimeFormatterImpurePipe, AbsoluteDateTimeFormatterPipe, AbsoluteShortDateTimeFormatterImpurePipe, AbsoluteShortDateTimeFormatterPipe, ActiveDescendantKeyManager, B, BACKSLASH, BACKSPACE, BOTTOM_LEFT_POSITION_PRIORITY, BOTTOM_POSITION_PRIORITY, BOTTOM_RIGHT_POSITION_PRIORITY, BaseFormatterPipe, BaseLocaleAwareFormatterPipe, C, CAPS_LOCK, CLOSE_SQUARE_BRACKET, COMMA, CONTEXT_MENU, CONTROL, D, DASH, DELETE, DOWN_ARROW, DateAdapter, DateFormatter, DurationLongFormatterImpurePipe, DurationLongFormatterPipe, DurationShortFormatterImpurePipe, DurationShortFormatterPipe, DurationShortestFormatterImpurePipe, DurationShortestFormatterPipe, E, EIGHT, END, ENTER, EQUALS, ESCAPE, EXTENDED_OVERLAY_POSITIONS, EmptyFocusTrapStrategy, ErrorStateMatcher, F, F1, F10, F11, F12, F2, F3, F4, F5, F6, F7, F8, F9, FF_EQUALS, FF_MINUS, FF_MUTE, FF_SEMICOLON, FF_VOLUME_DOWN, FF_VOLUME_UP, FIRST_MEDIA, FIVE, FOUR, FileValidators, FocusKeyManager, G, H, HOME, I, INSERT, J, K, KBQ_A11Y_LOCALE_CONFIGURATION, KBQ_CHECKABLE_CLICK_ACTION, KBQ_CHECKABLE_CONTROL_VALUE_ACCESSOR, KBQ_CONNECTED_OVERLAY_ABOVE_CLASS, KBQ_CONNECTED_OVERLAY_BELOW_CLASS, KBQ_CONNECTED_OVERLAY_ORIGIN, KBQ_CONNECTED_OVERLAY_OVERLAP_CLASS, KBQ_CUSTOM_SCROLL_STRATEGY_PROVIDER, KBQ_DATE_FORMATS, KBQ_DATE_LOCALE, KBQ_DATE_LOCALE_FACTORY, KBQ_DATE_TIMEZONE, KBQ_DEFAULT_LOCALE_DATA_FACTORY, KBQ_DEFAULT_LOCALE_ID, KBQ_DEFAULT_PRECISION_SEPARATOR, KBQ_FORM_FIELD_REF, KBQ_INVALID_VALUE_ERROR, KBQ_LOCALE_DATA, KBQ_LOCALE_ID, KBQ_LOCALE_SERVICE, KBQ_LOCALE_SERVICE_LANG_ATTR_NAME, KBQ_NUMBER_FORMATTER_DEFAULT_OPTIONS, KBQ_NUMBER_FORMATTER_OPTIONS, KBQ_OPTION_ACTION_PARENT, KBQ_OPTION_PARENT_COMPONENT, KBQ_OVERFLOW_SHADOW_SOURCE, KBQ_PANEL_DEFAULT_MIN_WIDTH, KBQ_PARENT_ANIMATION_COMPONENT, KBQ_PARENT_POPUP, KBQ_SELECT_SCROLL_STRATEGY, KBQ_SELECT_SCROLL_STRATEGY_PROVIDER, KBQ_SELECT_SEARCH_MIN_OPTIONS_THRESHOLD, KBQ_SHADOW_DOM_OVERLAY_HOST, KBQ_SIBLING_POPUP, KBQ_SIZE_UNITS_CONFIG, KBQ_SIZE_UNITS_DEFAULT_CONFIG, KBQ_TITLE_TEXT_REF, KBQ_WINDOW, KbqAbsoluteLongDatePipe, KbqAbsoluteLongDateTimePipe, KbqAbsoluteShortDatePipe, KbqAbsoluteShortDateTimePipe, KbqAbstractSelect, KbqActionContainer, KbqAnimationCurves, KbqAnimationDurations, KbqAutoHideScrollStrategy, KbqCheckable, KbqColorDirective, KbqComponentColors, KbqDataSizePipe, KbqDateTimezoneService, KbqDecimalPipe, KbqDefaultThemes, KbqDurationLongPipe, KbqDurationShortPipe, KbqDurationShortestPipe, KbqErrorStateTracker, KbqFieldSizingContent, KbqForm, KbqFormElement, KbqFormattersModule, KbqFormsModule, KbqHighlightBackgroundPipe, KbqHighlightModule, KbqHighlightPipe, KbqHover, KbqLine, KbqLineSetter, KbqLocaleService, KbqLocaleServiceModule, KbqMeasureScrollbarService, KbqMeasurementSystem, KbqNormalizeWhitespace, KbqOptgroup, KbqOption, KbqOptionActionComponent, KbqOptionBase, KbqOptionModule, KbqOptionSelectionChange, KbqOverflowShadowBottom, KbqOverflowShadowContainer, KbqOverflowShadowTop, KbqPopUp, KbqPopUpTrigger, KbqPseudoCheckbox, KbqPseudoCheckboxModule, KbqRangeLongDatePipe, KbqRangeLongDateTimePipe, KbqRangeMiddleDateTimePipe, KbqRangeShortDatePipe, KbqRangeShortDateTimePipe, KbqReadStateDirective, KbqRectangleItem, KbqRelativeLongDatePipe, KbqRelativeLongDateTimePipe, KbqRelativeShortDatePipe, KbqRelativeShortDateTimePipe, KbqRoundDecimalPipe, KbqSelectAllEvent, KbqSelectFooter, KbqSelectMatcher, KbqSelectSearch, KbqSelectSearchEmptyResult, KbqSelectTrigger, KbqShadowDomOverlayContainer, KbqTableNumberPipe, KbqThemeSelector, KbqVirtualOption, L, LAST_MEDIA, LEFT_ARROW, LEFT_BOTTOM_POSITION_PRIORITY, LEFT_POSITION_PRIORITY, LEFT_TOP_POSITION_PRIORITY, ListKeyManager, M, MAC_ENTER, MAC_META, MAC_WK_CMD_LEFT, MAC_WK_CMD_RIGHT, META, MUTE, MockNgZone, MultipleMode, N, NINE, NUMBER_FORMAT_REGEXP, NUMPAD_DIVIDE, NUMPAD_EIGHT, NUMPAD_FIVE, NUMPAD_FOUR, NUMPAD_MINUS, NUMPAD_MULTIPLY, NUMPAD_NINE, NUMPAD_ONE, NUMPAD_PERIOD, NUMPAD_PLUS, NUMPAD_SEVEN, NUMPAD_SIX, NUMPAD_THREE, NUMPAD_TWO, NUMPAD_ZERO, NUM_CENTER, NUM_LOCK, O, ONE, OPEN_SQUARE_BRACKET, P, PAGE_DOWN, PAGE_UP, PAUSE, PERIOD, PLUS_SIGN, POSITION_MAP, POSITION_PRIORITY_STRATEGY, POSITION_TO_CSS_MAP, PRINT_SCREEN, PasswordValidators, PopUpPlacements, PopUpSizes, PopUpTriggers, PopUpVisibility, Q, QUESTION_MARK, R, RIGHT_ARROW, RIGHT_BOTTOM_POSITION_PRIORITY, RIGHT_POSITION_PRIORITY, RIGHT_TOP_POSITION_PRIORITY, RangeDateFormatterImpurePipe, RangeDateFormatterPipe, RangeDateTimeFormatterImpurePipe, RangeDateTimeFormatterPipe, RangeMiddleDateTimeFormatterImpurePipe, RangeMiddleDateTimeFormatterPipe, RangeShortDateFormatterImpurePipe, RangeShortDateFormatterPipe, RangeShortDateTimeFormatterImpurePipe, RangeShortDateTimeFormatterPipe, RelativeDateFormatterImpurePipe, RelativeDateFormatterPipe, RelativeDateTimeFormatterImpurePipe, RelativeDateTimeFormatterPipe, RelativeShortDateFormatterImpurePipe, RelativeShortDateFormatterPipe, RelativeShortDateTimeFormatterImpurePipe, RelativeShortDateTimeFormatterPipe, S, SCROLL_LOCK, SELECT_PANEL_VIEWPORT_PADDING, SEMICOLON, SEVEN, SHIFT, SINGLE_QUOTE, SIX, SLASH, SPACE, ShowOnControlDirtyErrorStateMatcher, ShowOnFormSubmitErrorStateMatcher, ShowRequiredOnSubmitErrorStateMatcher, T, TAB, THREE, TILDE, TOP_LEFT_POSITION_PRIORITY, TOP_POSITION_PRIORITY, TOP_RIGHT_POSITION_PRIORITY, TWO, ThemePalette, ThemeService, TransitionCheckState, U, UP_ARROW, V, VERSION, VOLUME_DOWN, VOLUME_UP, W, X, Y, Z, ZERO, applyPopupMargins, checkAndNormalizeLocalizedNumber, countGroupLabelsBeforeOption, createFakeEvent, createKeyboardEvent, createMouseEvent, createSearchPredicate, createTouchEvent, defaultOffsetY, dispatchEvent, dispatchFakeEvent, dispatchKeyboardEvent, dispatchMouseEvent, dispatchTouchEvent, enUSFormattersData, enUSLocaleData, esLAFormattersData, esLALocaleData, escapeRegExp, fadeAnimation, findSearchMatchRanges, formatNumberWithLocale, getFormattedSizeParts, getHumanizedBytes, getKbqSelectDynamicMultipleError, getKbqSelectNonArrayValueError, getKbqSelectNonFunctionValueError, getNodesWithoutComments, getOptionScrollPosition, getSafeTriangleVertices, getSelectAllState, hasModifierKey, isBoolean, isControl, isCopy, isDigit, isElement, isFunctionKey, isHorizontalMovement, isHtmlElement, isHtmlElementOrNull, isInput, isLeftBracket, isLetterKey, isMac, isNull, isNumberKey, isNumpadKey, isPointInRect, isPointInTriangle, isRightBracket, isSelectAll, isUndefined, isVerticalMovement, isWithin, kbqA11yLocaleConfigurationProvider, kbqAutoHideScrollStrategyFactory, kbqDateTimezoneProvider, kbqErrorStateMatcherProvider, kbqFilesizeFormatterConfigurationProvider, kbqFocusAndReveal, kbqFocusOptionActionOnTab, kbqGetPanelWidthOrigin, kbqHighlightBackgroundMark, kbqHighlightMark, kbqInjectA11yLocaleConfiguration, kbqInjectAutofilled, kbqInjectNativeElement, kbqLocaleServiceLangAttrNameProvider, kbqResolvePanelMaxHeightToken, kbqResolvePanelWidth, kbqResolveTimezoneOffset, kbqRevealSelection, kbqSelectAnimations, kbqSelectScrollStrategyProviderFactory, kbqSetSelectionRange, kbqShadowDomOverlayProvider, kbqSiblingPopupProvider, leftIconClassName, mixinColor, mixinDisabled, mixinErrorState, mixinTabIndex, normalizeNumber, normalizeSearchValue, numberByParts, patchElementFocus, ptBRFormattersData, ptBRLocaleData, rightIconClassName, ruRUFormattersData, ruRULocaleData, runCompareWith, selectEvents, shouldSelectSearchText, tkTMFormattersData, tkTMLocaleData, toggleSelectAll, tokenizeSearchQuery, typeInElement, validationTooltipHideDelay, validationTooltipShowDelay, wrappedErrorMessage };
5825
- export type { CanColor, CanColorCtor, CanDisable, CanDisableCtor, CanUpdateErrorState, CanUpdateErrorStateCtor, HasTabIndex, HasTabIndexCtor, Highlightable, IFocusableOption, KbqA11yLocaleConfiguration, KbqActionsPanelLocaleConfiguration, KbqAutoHideScrollStrategyConfig, KbqAutoHideScrollStrategyHooks, KbqBaseFileUploadLocaleConfig, KbqCheckableClickAction, KbqCheckableClickResult, KbqCheckedState, KbqClampedTextLocaleConfig, KbqCodeBlockLocaleConfiguration, KbqConnectedOverlayOriginProvider, KbqDateFormats, KbqDefaultSizes, KbqEnumValues, KbqFileTypeSpecifier, KbqFileUploadLocaleConfig, KbqFlexDirection, KbqFlexWrap, KbqFormFieldRef, KbqMeasurementSystemType, KbqMultipleFileUploadLocaleConfig, KbqNumberFormatOptions, KbqNumberInputLocaleConfig, KbqNumberRoundingLocaleConfig, KbqNumericPipe, KbqOptionActionParent, KbqOptionParentComponent, KbqOrientation, KbqOverflowShadowSource, KbqOverflowShadowState, KbqPanelMaxHeight, KbqPanelMaxWidth, KbqPanelMinWidth, KbqPanelWidth, KbqPanelWidthOrigin, KbqParentPopup, KbqPoint, KbqPopUpPlacementValues, KbqPopUpSizeValues, KbqPseudoCheckboxState, KbqResolvedPanelWidth, KbqSelectAllAdapter, KbqSelectLocaleConfiguration, KbqShadowDomOverlayHost, KbqSiblingPopup, KbqSizeUnitsConfig, KbqStickToWindowPlacementValues, KbqTheme, KbqTimeRangeLocaleConfig, KbqTimezoneLike, KbqTitleTextRef, KbqToggleSelectAllOptions, KbqTriangle, KbqUnitSystem, KeyboardNavigationHandler, ListKeyManagerModifierKey, ListKeyManagerOption };
5965
+ export { A, ALT, APOSTROPHE, ARROW_BOTTOM_MARGIN_AND_HALF_HEIGHT, AT_SIGN, AbsoluteDateFormatterImpurePipe, AbsoluteDateFormatterPipe, AbsoluteDateShortFormatterImpurePipe, AbsoluteDateShortFormatterPipe, AbsoluteDateTimeFormatterImpurePipe, AbsoluteDateTimeFormatterPipe, AbsoluteShortDateTimeFormatterImpurePipe, AbsoluteShortDateTimeFormatterPipe, ActiveDescendantKeyManager, B, BACKSLASH, BACKSPACE, BOTTOM_LEFT_POSITION_PRIORITY, BOTTOM_POSITION_PRIORITY, BOTTOM_RIGHT_POSITION_PRIORITY, BaseFormatterPipe, BaseLocaleAwareFormatterPipe, C, CAPS_LOCK, CLOSE_SQUARE_BRACKET, COMMA, CONTEXT_MENU, CONTROL, D, DASH, DELETE, DOWN_ARROW, DateAdapter, DateFormatter, DurationLongFormatterImpurePipe, DurationLongFormatterPipe, DurationShortFormatterImpurePipe, DurationShortFormatterPipe, DurationShortestFormatterImpurePipe, DurationShortestFormatterPipe, E, EIGHT, END, ENTER, EQUALS, ESCAPE, EXTENDED_OVERLAY_POSITIONS, EmptyFocusTrapStrategy, ErrorStateMatcher, F, F1, F10, F11, F12, F2, F3, F4, F5, F6, F7, F8, F9, FF_EQUALS, FF_MINUS, FF_MUTE, FF_SEMICOLON, FF_VOLUME_DOWN, FF_VOLUME_UP, FIRST_MEDIA, FIVE, FOUR, FileValidators, FocusKeyManager, G, H, HOME, I, INSERT, J, K, KBQ_A11Y_LOCALE_CONFIGURATION, KBQ_CHECKABLE_CLICK_ACTION, KBQ_CHECKABLE_CONTROL_VALUE_ACCESSOR, KBQ_CONNECTED_OVERLAY_ABOVE_CLASS, KBQ_CONNECTED_OVERLAY_BELOW_CLASS, KBQ_CONNECTED_OVERLAY_ORIGIN, KBQ_CONNECTED_OVERLAY_OVERLAP_CLASS, KBQ_CUSTOM_SCROLL_STRATEGY_PROVIDER, KBQ_DATE_FORMATS, KBQ_DATE_LOCALE, KBQ_DATE_LOCALE_FACTORY, KBQ_DATE_TIMEZONE, KBQ_DEFAULT_LOCALE_DATA_FACTORY, KBQ_DEFAULT_LOCALE_ID, KBQ_DEFAULT_PRECISION_SEPARATOR, KBQ_FORM_FIELD_REF, KBQ_INVALID_VALUE_ERROR, KBQ_LOCALE_DATA, KBQ_LOCALE_ID, KBQ_LOCALE_SERVICE, KBQ_LOCALE_SERVICE_LANG_ATTR_NAME, KBQ_NUMBER_FORMATTER_DEFAULT_OPTIONS, KBQ_NUMBER_FORMATTER_OPTIONS, KBQ_OPTION_ACTION_PARENT, KBQ_OPTION_PARENT_COMPONENT, KBQ_OVERFLOW_SHADOW_SOURCE, KBQ_PANEL_DEFAULT_MIN_WIDTH, KBQ_PARENT_ANIMATION_COMPONENT, KBQ_PARENT_POPUP, KBQ_SELECT_SCROLL_STRATEGY, KBQ_SELECT_SCROLL_STRATEGY_PROVIDER, KBQ_SELECT_SEARCH_MIN_OPTIONS_THRESHOLD, KBQ_SHADOW_DOM_OVERLAY_HOST, KBQ_SIBLING_POPUP, KBQ_SIZE_UNITS_CONFIG, KBQ_SIZE_UNITS_DEFAULT_CONFIG, KBQ_TITLE_TEXT_REF, KBQ_WINDOW, KbqAbsoluteLongDatePipe, KbqAbsoluteLongDateTimePipe, KbqAbsoluteShortDatePipe, KbqAbsoluteShortDateTimePipe, KbqAbstractSelect, KbqActionContainer, KbqAnimationCurves, KbqAnimationDurations, KbqAutoHideScrollStrategy, KbqCheckable, KbqColorDirective, KbqComponentColors, KbqDataSizePipe, KbqDateTimezoneService, KbqDecimalPipe, KbqDefaultThemes, KbqDurationLongPipe, KbqDurationShortPipe, KbqDurationShortestPipe, KbqErrorStateTracker, KbqFieldSizingContent, KbqForm, KbqFormElement, KbqFormattersModule, KbqFormsModule, KbqHighlightBackgroundPipe, KbqHighlightModule, KbqHighlightPipe, KbqHover, KbqLine, KbqLineSetter, KbqLocaleService, KbqLocaleServiceModule, KbqMeasureScrollbarService, KbqMeasurementSystem, KbqNormalizeWhitespace, KbqOptgroup, KbqOption, KbqOptionActionComponent, KbqOptionBase, KbqOptionModule, KbqOptionSelectionChange, KbqOverflowShadowBottom, KbqOverflowShadowContainer, KbqOverflowShadowTop, KbqPopUp, KbqPopUpTrigger, KbqPseudoCheckbox, KbqPseudoCheckboxModule, KbqRangeLongDatePipe, KbqRangeLongDateTimePipe, KbqRangeMiddleDateTimePipe, KbqRangeShortDatePipe, KbqRangeShortDateTimePipe, KbqReadStateDirective, KbqRectangleItem, KbqRelativeLongDatePipe, KbqRelativeLongDateTimePipe, KbqRelativeShortDatePipe, KbqRelativeShortDateTimePipe, KbqRoundDecimalPipe, KbqSelectAllEvent, KbqSelectFooter, KbqSelectFooterItem, KbqSelectMatcher, KbqSelectSearch, KbqSelectSearchEmptyResult, KbqSelectTrigger, KbqShadowDomOverlayContainer, KbqTableNumberPipe, KbqThemeSelector, KbqVirtualOption, L, LAST_MEDIA, LEFT_ARROW, LEFT_BOTTOM_POSITION_PRIORITY, LEFT_POSITION_PRIORITY, LEFT_TOP_POSITION_PRIORITY, ListKeyManager, M, MAC_ENTER, MAC_META, MAC_WK_CMD_LEFT, MAC_WK_CMD_RIGHT, META, MUTE, MockNgZone, MultipleMode, N, NINE, NUMBER_FORMAT_REGEXP, NUMPAD_DIVIDE, NUMPAD_EIGHT, NUMPAD_FIVE, NUMPAD_FOUR, NUMPAD_MINUS, NUMPAD_MULTIPLY, NUMPAD_NINE, NUMPAD_ONE, NUMPAD_PERIOD, NUMPAD_PLUS, NUMPAD_SEVEN, NUMPAD_SIX, NUMPAD_THREE, NUMPAD_TWO, NUMPAD_ZERO, NUM_CENTER, NUM_LOCK, O, ONE, OPEN_SQUARE_BRACKET, P, PAGE_DOWN, PAGE_UP, PAUSE, PERIOD, PLUS_SIGN, POSITION_MAP, POSITION_PRIORITY_STRATEGY, POSITION_TO_CSS_MAP, PRINT_SCREEN, PasswordValidators, PopUpPlacements, PopUpSizes, PopUpTriggers, PopUpVisibility, Q, QUESTION_MARK, R, RIGHT_ARROW, RIGHT_BOTTOM_POSITION_PRIORITY, RIGHT_POSITION_PRIORITY, RIGHT_TOP_POSITION_PRIORITY, RangeDateFormatterImpurePipe, RangeDateFormatterPipe, RangeDateTimeFormatterImpurePipe, RangeDateTimeFormatterPipe, RangeMiddleDateTimeFormatterImpurePipe, RangeMiddleDateTimeFormatterPipe, RangeShortDateFormatterImpurePipe, RangeShortDateFormatterPipe, RangeShortDateTimeFormatterImpurePipe, RangeShortDateTimeFormatterPipe, RelativeDateFormatterImpurePipe, RelativeDateFormatterPipe, RelativeDateTimeFormatterImpurePipe, RelativeDateTimeFormatterPipe, RelativeShortDateFormatterImpurePipe, RelativeShortDateFormatterPipe, RelativeShortDateTimeFormatterImpurePipe, RelativeShortDateTimeFormatterPipe, S, SCROLL_LOCK, SELECT_PANEL_VIEWPORT_PADDING, SEMICOLON, SEVEN, SHIFT, SINGLE_QUOTE, SIX, SLASH, SPACE, ShowOnControlDirtyErrorStateMatcher, ShowOnCrossFieldErrorStateMatcher, ShowOnFormSubmitErrorStateMatcher, ShowRequiredOnSubmitErrorStateMatcher, T, TAB, THREE, TILDE, TOP_LEFT_POSITION_PRIORITY, TOP_POSITION_PRIORITY, TOP_RIGHT_POSITION_PRIORITY, TWO, ThemePalette, ThemeService, TransitionCheckState, U, UP_ARROW, V, VERSION, VOLUME_DOWN, VOLUME_UP, W, X, Y, Z, ZERO, applyPopupMargins, checkAndNormalizeLocalizedNumber, countGroupLabelsBeforeOption, createFakeEvent, createKeyboardEvent, createMouseEvent, createSearchPredicate, createTouchEvent, defaultOffsetY, dispatchEvent, dispatchFakeEvent, dispatchKeyboardEvent, dispatchMouseEvent, dispatchTouchEvent, enUSFormattersData, enUSLocaleData, esLAFormattersData, esLALocaleData, escapeRegExp, fadeAnimation, findSearchMatchRanges, formatNumberWithLocale, getFormattedSizeParts, getHumanizedBytes, getKbqSelectDynamicMultipleError, getKbqSelectNonArrayValueError, getKbqSelectNonFunctionValueError, getNodesWithoutComments, getOptionScrollPosition, getSafeTriangleVertices, getSelectAllState, hasModifierKey, isBoolean, isControl, isCopy, isDigit, isElement, isFunctionKey, isHorizontalMovement, isHtmlElement, isHtmlElementOrNull, isInput, isLeftBracket, isLetterKey, isMac, isNull, isNumberKey, isNumpadKey, isPointInRect, isPointInTriangle, isRightBracket, isSelectAll, isUndefined, isVerticalMovement, isWithin, kbqA11yLocaleConfigurationProvider, kbqAutoHideScrollStrategyFactory, kbqDateTimezoneProvider, kbqErrorStateMatcherProvider, kbqFilesizeFormatterConfigurationProvider, kbqFocusAndReveal, kbqFocusOptionActionOnTab, kbqGetElementHeight, kbqGetPanelWidthOrigin, kbqGetScrollOverflowTolerance, kbqHasScrollOverflow, kbqHighlightBackgroundMark, kbqHighlightMark, kbqInjectA11yLocaleConfiguration, kbqInjectAutofilled, kbqInjectNativeElement, kbqLocaleServiceLangAttrNameProvider, kbqResolvePanelMaxHeightToken, kbqResolvePanelWidth, kbqResolveTimezoneOffset, kbqRevealSelection, kbqSelectAnimations, kbqSelectScrollStrategyProviderFactory, kbqSetSelectionRange, kbqShadowDomOverlayProvider, kbqSiblingPopupProvider, leftIconClassName, mixinColor, mixinDisabled, mixinErrorState, mixinTabIndex, normalizeNumber, normalizeSearchValue, numberByParts, patchElementFocus, ptBRFormattersData, ptBRLocaleData, rightIconClassName, ruRUFormattersData, ruRULocaleData, runCompareWith, selectEvents, shouldSelectSearchText, tkTMFormattersData, tkTMLocaleData, toggleSelectAll, tokenizeSearchQuery, typeInElement, validationTooltipHideDelay, validationTooltipShowDelay, wrappedErrorMessage };
5966
+ export type { CanColor, CanColorCtor, CanDisable, CanDisableCtor, CanUpdateErrorState, CanUpdateErrorStateCtor, CrossFieldErrorScope, HasTabIndex, HasTabIndexCtor, Highlightable, IFocusableOption, KbqA11yLocaleConfiguration, KbqActionsPanelLocaleConfiguration, KbqAutoHideScrollStrategyConfig, KbqAutoHideScrollStrategyHooks, KbqBaseFileUploadLocaleConfig, KbqCheckableClickAction, KbqCheckableClickResult, KbqCheckedState, KbqClampedTextLocaleConfig, KbqCodeBlockLocaleConfiguration, KbqConnectedOverlayOriginProvider, KbqDateFormats, KbqDefaultSizes, KbqEnumValues, KbqFileTypeSpecifier, KbqFileUploadLocaleConfig, KbqFlexDirection, KbqFlexWrap, KbqFormFieldRef, KbqMeasurementSystemType, KbqMultipleFileUploadLocaleConfig, KbqNumberFormatOptions, KbqNumberInputLocaleConfig, KbqNumberRoundingLocaleConfig, KbqNumericPipe, KbqOptionActionParent, KbqOptionParentComponent, KbqOrientation, KbqOverflowShadowSource, KbqOverflowShadowState, KbqPanelMaxHeight, KbqPanelMaxWidth, KbqPanelMinWidth, KbqPanelWidth, KbqPanelWidthOrigin, KbqParentPopup, KbqPoint, KbqPopUpPlacementValues, KbqPopUpSizeValues, KbqPseudoCheckboxState, KbqResolvedPanelWidth, KbqScrollAxis, KbqSelectAllAdapter, KbqSelectLocaleConfiguration, KbqShadowDomOverlayHost, KbqSiblingPopup, KbqSizeUnitsConfig, KbqStickToWindowPlacementValues, KbqTheme, KbqTimeRangeLocaleConfig, KbqTimezoneLike, KbqTitleTextRef, KbqToggleSelectAllOptions, KbqTriangle, KbqUnitSystem, KeyboardNavigationHandler, ListKeyManagerModifierKey, ListKeyManagerOption };
@@ -87,6 +87,9 @@
87
87
  @include kbq-typography-level-to-styles-css-variables(typography, text-normal);
88
88
  }
89
89
 
90
+ // Ties with `kbq-normalize-text()`'s `& > * { font-size: inherit }` and wins only on source order,
91
+ // so keep this mixin included after `.kbq-option-text`.
92
+ .kbq-option-caption,
90
93
  .kbq-list-option-caption {
91
94
  @include kbq-typography-level-to-styles-css-variables(typography, text-compact);
92
95
  }
@@ -234,6 +234,9 @@
234
234
  overflow: hidden auto;
235
235
  }
236
236
 
237
+ // The tokens are left undeclared: the value lives in the fallback, so one override reaches every panel
238
+ // that extends this placeholder — the dropdown and the autocomplete included. Declaring them in
239
+ // `select-tokens.scss` would scope them to `.kbq-select__panel` and put those two out of reach.
237
240
  %kbq-select-footer {
238
241
  @include vendor-prefixes.user-select(none);
239
242
 
@@ -241,14 +244,61 @@
241
244
  align-items: center;
242
245
  box-sizing: border-box;
243
246
 
244
- min-height: 40px;
247
+ min-height: var(--kbq-select-footer-size-min-height, var(--kbq-size-4xl));
245
248
 
246
- border-top-width: 1px;
249
+ border-top-width: var(--kbq-select-footer-size-border-width, var(--kbq-size-border-width));
247
250
  border-top-style: solid;
248
251
 
249
- padding: var(--kbq-size-xxs) var(--kbq-size-l);
252
+ padding: var(--kbq-select-footer-size-padding-vertical, var(--kbq-size-xxs))
253
+ var(--kbq-select-footer-size-padding-horizontal, var(--kbq-size-l));
250
254
  }
251
255
 
256
+ // The footer's action is drawn as a row of the drop-down menu rather than as a form button: full
257
+ // panel width, the option's own box and hover fill, so it reads as the last entry of the list
258
+ // instead of a control parked underneath it.
259
+ %kbq-select-footer-item {
260
+ @include vendor-prefixes.user-select(none);
261
+
262
+ // A native `button`/`a` flashes on tap without this; `kbq-list-item-base()`, which the option rows
263
+ // above use, is not included because the row zeroes the vertical padding that mixin sets.
264
+ -webkit-tap-highlight-color: transparent;
265
+
266
+ display: flex;
267
+ flex-direction: row;
268
+ align-items: center;
269
+ box-sizing: border-box;
270
+ outline: none;
271
+
272
+ // `flex-grow` rather than `width: 100%`: alone in the footer it fills the content box just the same,
273
+ // but it shares the row instead of squeezing a caption or a second action out of it. The basis stays
274
+ // `auto` — `flex: 1` would expand to a `0%` basis and hand two actions the same width whatever they
275
+ // say.
276
+ flex: 1 1 auto;
277
+ min-height: var(--kbq-select-footer-item-size-height, var(--kbq-size-3xl));
278
+ gap: var(--kbq-size-s);
279
+
280
+ // Transparent border, as on an option, so the row keeps the same content inset — and so the focus
281
+ // ring below can recolour it without shifting anything.
282
+ border: var(--kbq-size-3xs) solid transparent;
283
+ border-radius: var(--kbq-select-footer-item-size-border-radius, var(--kbq-size-xxs));
284
+
285
+ padding: 0 kbq-difference-series-css-variables([size-m, size-3xs]);
286
+
287
+ background: transparent;
288
+ cursor: pointer;
289
+
290
+ text-align: left;
291
+ text-decoration: none;
292
+ }
293
+
294
+ // Extends an item's hit area past the box it paints, with a transparent pseudo-element on the element
295
+ // that owns the click handler — a pseudo-element is hit-tested as part of that element, so hover and
296
+ // click both reach the gutter with no TS and no `z-index`. This one claims a fixed strip either side of
297
+ // a plain vertical list. The same technique, sized differently, is hand-rolled where the geometry does
298
+ // not fit: `.kbq-navbar-item`'s `:before` cancels the item's own margin (DS-2558), and
299
+ // `--kbq-button-toggle-size-item-hit-area-*` tiles a group's `gap` between two neighbours and hands the
300
+ // group's padding to the outermost items, per orientation (DS-4164). Any clipping ancestor eats all of
301
+ // them — see the note on `.kbq-button-toggle`'s `overflow`.
252
302
  @mixin item-active-area($outline) {
253
303
  position: relative;
254
304
 
@@ -268,3 +318,48 @@
268
318
  left: calc(100% + $outline); // outline size
269
319
  }
270
320
  }
321
+
322
+ // A mixin of its own: the row's structure is only extended under `.kbq-select__panel`, and emitting its
323
+ // colours anywhere else would paint a half-styled control.
324
+ @mixin kbq-select-footer-item-theme() {
325
+ .kbq-select__footer-item {
326
+ color: var(--kbq-foreground-contrast);
327
+
328
+ // The row is reachable with TAB, so it needs a focus indicator of its own; `outline: none` in
329
+ // the structural rule would otherwise leave it with none at all. Recolouring the 2px layout
330
+ // border is the whole ring — adding an outline on top of it would render 3px, half again as
331
+ // thick as every other focused control (a button pairs a 1px border with a 1px outline).
332
+ &:focus-visible {
333
+ border-color: var(--kbq-states-line-focus-theme);
334
+ }
335
+
336
+ // `:disabled` alone would miss an `a`, which the directive also supports and which cannot carry
337
+ // the attribute — those are marked with `.kbq-disabled`, as `.kbq-option` and `.kbq-dropdown-item` are.
338
+ &:hover:not(:disabled, .kbq-disabled) {
339
+ background: var(--kbq-states-background-transparent-hover);
340
+ }
341
+
342
+ &:active:not(:disabled, .kbq-disabled) {
343
+ background: var(--kbq-states-background-transparent-active);
344
+ }
345
+
346
+ &:disabled,
347
+ &.kbq-disabled {
348
+ color: var(--kbq-states-foreground-disabled);
349
+ cursor: default;
350
+
351
+ // A native `button` ignores the pointer once it carries `disabled`, but an `a` cannot carry the
352
+ // attribute, so the class has to do it — otherwise a greyed-out link still navigates on a click
353
+ // and closes the panel on the way. Same pair `kbq-link` uses for its own disabled state.
354
+ pointer-events: none;
355
+
356
+ // `.kbq-icon` is coloured from an absolute token rather than `currentColor`, so a projected
357
+ // icon would stay at full contrast beside a greyed label. Only the ones left at the default
358
+ // colour: `.kbq-empty` is what `KbqColorDirective` leaves behind when the consumer set none,
359
+ // and an icon button carries its own disabled state.
360
+ & .kbq-icon.kbq-empty:not(.kbq-icon-button, .kbq-icon-item) {
361
+ color: var(--kbq-states-foreground-disabled);
362
+ }
363
+ }
364
+ }
365
+ }
@@ -239,6 +239,10 @@
239
239
  @include kbq-typography-level-to-styles-css-variables(typography, mono-normal-strong);
240
240
  }
241
241
 
242
+ .kbq-mono-normal-medium {
243
+ @include kbq-typography-level-to-styles-css-variables(typography, mono-normal-medium);
244
+ }
245
+
242
246
  .kbq-mono-compact {
243
247
  @include kbq-typography-level-to-styles-css-variables(typography, mono-compact);
244
248
  }
@@ -247,6 +251,10 @@
247
251
  @include kbq-typography-level-to-styles-css-variables(typography, mono-compact-strong);
248
252
  }
249
253
 
254
+ .kbq-mono-codeblock {
255
+ @include kbq-typography-level-to-styles-css-variables(typography, mono-codeblock);
256
+ }
257
+
250
258
  .kbq-tabular-big {
251
259
  @include kbq-typography-level-to-styles-css-variables(typography, tabular-big);
252
260
  }
@@ -0,0 +1,31 @@
1
+ // Layout contract for the two spans `KbqEllipsisCenterDirective` renders. Loaded once by the directive
2
+ // itself through `_CdkPrivateStyleLoader`, so a host no longer copies these declarations — every copy was a
3
+ // chance for the directive to behave differently depending on where it was used.
4
+ .kbq-ellipsis-center {
5
+ position: relative;
6
+ display: flex;
7
+
8
+ // The split point is measured against the host's own `clientWidth`, so the host must not grow to fit the
9
+ // text it is about to shorten — a shrink-to-fit host measures the full width, concludes everything fits,
10
+ // and leaves the text unsplit and overflowing. `min-width: 0` opts out of the `auto` minimum a flex item
11
+ // would otherwise inherit from the non-shrinkable end span.
12
+ max-width: 100%;
13
+ min-width: 0;
14
+ overflow: hidden;
15
+
16
+ .kbq-ellipsis-center_data-text-start {
17
+ // The only half that shrinks, and the only one carrying `text-overflow` — unsplit text lands here.
18
+ flex: 0 1 auto;
19
+ overflow: hidden;
20
+ text-overflow: ellipsis;
21
+ white-space: pre;
22
+ }
23
+
24
+ .kbq-ellipsis-center_data-text-end {
25
+ // Holds the tail the split exists to keep visible (the file extension, the trailing digits), so it
26
+ // must not shrink; the directive sizes it from the width the text actually rendered at.
27
+ flex: 1 0 auto;
28
+ overflow: hidden;
29
+ white-space: pre;
30
+ }
31
+ }
@@ -3,20 +3,53 @@ import { OnInit, AfterViewInit, OnDestroy } from '@angular/core';
3
3
  import { KbqTooltipTrigger } from '@koobiq/components/tooltip';
4
4
  import { Subject } from 'rxjs';
5
5
 
6
+ /**
7
+ * Renders text as two spans and moves the ellipsis into the middle, so the tail — a file extension, the
8
+ * digits that tell two reports apart — stays readable when the host is too narrow for the whole string. A
9
+ * tooltip spells out the full text, and is enabled only while something is actually hidden.
10
+ */
6
11
  declare class KbqEllipsisCenterDirective extends KbqTooltipTrigger implements OnInit, AfterViewInit, OnDestroy {
7
12
  private cdr;
13
+ /**
14
+ * Application-wide `ResizeObserver` shared by every consumer, as `KbqTitleDirective` uses. Unlike the
15
+ * `window:resize` listener this directive used to carry, it also reacts to container-only resizes — a
16
+ * splitter drag, a sidebar collapse, or the vertical scrollbar that appears once a file list fills up —
17
+ * none of which resize the window, all of which change where the text has to be split.
18
+ */
19
+ private readonly resizeObserver;
20
+ /** The two spans this directive renders have no styles of their own until this is loaded. */
21
+ private readonly styleLoader;
8
22
  set kbqEllipsisCenter(value: string);
23
+ /**
24
+ * Shortest text worth splitting in the middle. Anything below it keeps its natural order and is cut off
25
+ * at the end by the host's own `text-overflow`.
26
+ *
27
+ * Defaults to `0` — every overflowing text is split — because that is what the directive has always
28
+ * done: the input was declared but never read, so any other default would silently end-truncate labels
29
+ * that consumers expect to see split.
30
+ */
9
31
  readonly minVisibleLength: i0.InputSignal<number>;
32
+ /**
33
+ * Lower bound, in pixels, for the average glyph width used to decide how many characters fit in the
34
+ * tail. The rendered text is measured as well and the wider of the two wins, so an underestimate here
35
+ * can no longer push the extension out of the tail — raising it only shortens the tail further.
36
+ */
10
37
  readonly charWidth: i0.InputSignal<number>;
11
38
  /**
12
39
  * Debounce time (ms) for resize events before recalculating ellipsis position.
13
40
  * @default 50
14
41
  */
15
42
  readonly debounceInterval: i0.InputSignalWithTransform<number, unknown>;
16
- /** @docs-private */
43
+ /**
44
+ * @deprecated No longer read. Resizes now come from the shared `ResizeObserver`, which also catches the
45
+ * container-only ones a `window:resize` listener cannot see; the host listener that used to feed this
46
+ * subject is gone, and nothing subscribes to it. Kept as a no-op and removed in the next major version.
47
+ * @docs-private */
17
48
  readonly resizeStream: Subject<Event>;
18
49
  private _kbqEllipsisCenter;
19
- private resizeSubscription;
50
+ private lastMeasuredWidth;
51
+ private refreshTimeoutId;
52
+ constructor();
20
53
  ngOnInit(): void;
21
54
  ngAfterViewInit(): void;
22
55
  ngOnDestroy(): void;