@koobiq/components 20.4.2 → 20.4.3

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.
@@ -108,7 +108,8 @@ declare class KbqOverflowItems {
108
108
  */
109
109
  readonly additionalResizeObserverTargets: _angular_core.InputSignal<Element | Element[]>;
110
110
  /**
111
- * Emits when the set of hidden items changes.
111
+ * Emits the set of hidden items after every recalculation, also when it has not changed: a recalculation shows every
112
+ * item before it hides the overflown ones again, so a consumer that hides items itself re-applies that here.
112
113
  */
113
114
  readonly changes: _angular_core.OutputEmitterRef<ReadonlySet<unknown>>;
114
115
  /**
@@ -127,6 +128,7 @@ declare class KbqOverflowItems {
127
128
  * @default 'nowrap'
128
129
  */
129
130
  readonly wrap: _angular_core.InputSignal<KbqFlexWrap>;
131
+ /** The main axis of each orientation, as the `DOMRect` and `CSSStyleDeclaration` members to read. */
130
132
  private readonly orientationConfig;
131
133
  constructor();
132
134
  private setupObservers;
@@ -146,9 +148,16 @@ declare class KbqOverflowItems {
146
148
  private setStyles;
147
149
  private hasOverflown;
148
150
  /**
149
- * @TODO Should be removed when `Array.prototype.findLast` is supported.
151
+ * Measures how far the children of the container that take part in its layout exceed its content box along the
152
+ * main axis, and the space each of them takes, its margins and one gap included.
150
153
  */
151
- private findLast;
154
+ private measure;
155
+ /**
156
+ * Children of the element that take part in its flex layout: neither `display: none` nor taken out of flow, as
157
+ * hidden items are, with the children of a `display: contents` child in its place.
158
+ */
159
+ private getLaidOutChildren;
160
+ private px;
152
161
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<KbqOverflowItems, never>;
153
162
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<KbqOverflowItems, "[kbqOverflowItems]", ["kbqOverflowItems"], { "reverseOverflowOrder": { "alias": "reverseOverflowOrder"; "required": false; "isSignal": true; }; "debounceTime": { "alias": "debounceTime"; "required": false; "isSignal": true; }; "additionalResizeObserverTargets": { "alias": "additionalResizeObserverTargets"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "wrap": { "alias": "wrap"; "required": false; "isSignal": true; }; }, { "changes": "changes"; }, ["items", "result"], never, true, never>;
154
163
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@koobiq/components",
3
- "version": "20.4.2",
3
+ "version": "20.4.3",
4
4
  "description": "koobiq",
5
5
  "repository": {
6
6
  "type": "git",
@@ -25,10 +25,10 @@
25
25
  "@angular/cdk": ">=20.0.0",
26
26
  "@angular/core": ">=20.0.0",
27
27
  "@angular/forms": ">=20.0.0",
28
- "@koobiq/angular-moment-adapter": "20.4.2",
29
- "@koobiq/angular-luxon-adapter": "20.4.2",
28
+ "@koobiq/angular-moment-adapter": "20.4.3",
29
+ "@koobiq/angular-luxon-adapter": "20.4.3",
30
30
  "@koobiq/date-formatter": "^3.2.3",
31
- "@koobiq/icons": "^11.1.3",
31
+ "@koobiq/icons": "^11.1.3 || ^12.0.0",
32
32
  "@koobiq/design-tokens": "^3.14.0"
33
33
  },
34
34
  "dependencies": {
@@ -27,7 +27,7 @@ function ngAdd(options) {
27
27
  }
28
28
  // Installing dependencies
29
29
  utils_packageConfig.addPackageToPackageJson(tree, '@angular/cdk', "^20.2.14");
30
- utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^20.4.2");
30
+ utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/angular-luxon-adapter', "^20.4.3");
31
31
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/date-formatter', "^3.5.1");
32
32
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/date-adapter', "^3.5.1");
33
33
  utils_packageConfig.addPackageToPackageJson(tree, '@koobiq/icons', "^12.2.0");
package/tree/index.d.ts CHANGED
@@ -576,6 +576,8 @@ declare class KbqTreeOption extends KbqTreeNode<KbqTreeOption> implements AfterC
576
576
  markForCheck(): void;
577
577
  /** @docs-private */
578
578
  protected onMouseenter(): void;
579
+ /** Recomputes the option's own checkbox state, leaving its ancestors as they are. */
580
+ private syncCheckboxState;
579
581
  static ɵfac: i0.ɵɵFactoryDeclaration<KbqTreeOption, never>;
580
582
  static ɵcmp: i0.ɵɵComponentDeclaration<KbqTreeOption, "kbq-tree-option", ["kbqTreeOption"], { "checkboxThirdState": { "alias": "checkboxThirdState"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; "isSignal": true; }; "selectAllRow": { "alias": "selectAllRow"; "required": false; "isSignal": true; }; "showCheckbox": { "alias": "showCheckbox"; "required": false; }; }, { "onSelectionChange": "onSelectionChange"; }, ["toggleElementDirective", "toggleElementComponent", "pseudoCheckbox", "actionButton", "tooltipTrigger", "dropdownTrigger"], ["kbq-tree-node-toggle, [kbq-tree-node-toggle], [kbqTreeNodeToggle]", "kbq-pseudo-checkbox", "kbq-checkbox", "[kbq-icon]", "kbq-progress-spinner", "*", "kbq-option-action"], true, never>;
581
583
  }
@@ -640,6 +642,8 @@ declare class KbqTreeSelection extends KbqTreeBase<any> implements ControlValueA
640
642
  readonly selectAllOption: i0.Signal<KbqTreeOption | undefined>;
641
643
  unorderedOptions: QueryList<KbqTreeOption>;
642
644
  treeControl: FlatTreeControl<any>;
645
+ /** `treeControl.dataNodes` the options' checkbox states were last recomputed against. */
646
+ private checkboxSyncedDataNodes;
643
647
  readonly navigationChange: i0.OutputEmitterRef<KbqTreeNavigationChange<KbqTreeOption>>;
644
648
  readonly selectionChange: EventEmitter<KbqTreeSelectionChange<KbqTreeOption>>;
645
649
  readonly onSelectAll: i0.OutputEmitterRef<KbqTreeSelectAllEvent<KbqTreeOption>>;
@@ -720,6 +724,12 @@ declare class KbqTreeSelection extends KbqTreeBase<any> implements ControlValueA
720
724
  setFocusedOption(option: KbqTreeOption): void;
721
725
  toggleFocusedOption(): void;
722
726
  renderNodeChanges(data: KbqTreeOption[], dataDiffer?: IterableDiffer<KbqTreeOption>, viewContainer?: ViewContainerRef, parentData?: KbqTreeOption): void;
727
+ /**
728
+ * Recomputes every option's checkbox state after `dataNodes` is replaced, which moves the descendants a branch
729
+ * counts: no selection change follows to do it. A microtask later, as a flat data source assigns `dataNodes` only
730
+ * after it emits.
731
+ */
732
+ private scheduleCheckboxSync;
723
733
  emitNavigationEvent(option: KbqTreeOption): void;
724
734
  emitChangeEvent(option: KbqTreeOption): void;
725
735
  /**