@mozaic-ds/angular 2.0.50 → 2.0.52

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mozaic-ds/angular",
3
- "version": "2.0.50",
3
+ "version": "2.0.52",
4
4
  "type": "module",
5
5
  "peerDependencies": {
6
6
  "@angular/common": ">=20.3.15",
@@ -4429,6 +4429,12 @@ interface MozComboboxSection<T = unknown> {
4429
4429
  options: MozComboboxOption<T>[];
4430
4430
  /** When `true` in `multiple` mode, clicking the header toggles all children */
4431
4431
  checkable?: boolean;
4432
+ /**
4433
+ * When `true`, the section header's "toggle all" action is disabled, but
4434
+ * children remain individually interactable. The header checkbox still
4435
+ * reflects the selection state (checked / indeterminate) of its children.
4436
+ */
4437
+ disabled?: boolean;
4432
4438
  }
4433
4439
  type MozComboboxItem<T = unknown> = MozComboboxOption<T> | MozComboboxSection<T>;
4434
4440
  type MozComboboxSize = 's' | 'm';
@@ -4448,6 +4454,7 @@ interface FlatSection {
4448
4454
  type: 'section';
4449
4455
  title: string;
4450
4456
  checkable?: boolean;
4457
+ disabled?: boolean;
4451
4458
  }
4452
4459
  type FlatItem<T = unknown> = FlatOption<T> | FlatSection;
4453
4460
  declare function isFlatSection<T>(item: FlatItem<T>): item is FlatSection;
@@ -4550,9 +4557,13 @@ declare class MozComboboxComponent<T = string> implements ControlValueAccessor {
4550
4557
  readonly showClear: _angular_core.Signal<boolean>;
4551
4558
  /** Viewport height: capped to VIEWPORT_HEIGHT_PX, shrinks for small lists */
4552
4559
  readonly viewportHeight: _angular_core.Signal<number>;
4553
- /** Whether a section's children are all selected */
4560
+ /**
4561
+ * Whether a section's children are all selected. Includes disabled children
4562
+ * so that the header checkbox reflects the true state even when some rows
4563
+ * were pre-selected programmatically.
4564
+ */
4554
4565
  readonly isSectionFullySelected: (sectionTitle: string) => boolean;
4555
- /** Whether a section's children are partially selected */
4566
+ /** Whether a section's children are partially selected (includes disabled children). */
4556
4567
  readonly isSectionPartiallySelected: (sectionTitle: string) => boolean;
4557
4568
  readonly overlayPositions: ConnectedPosition[];
4558
4569
  /** Width of the trigger (to match overlay width) */
@@ -4694,10 +4705,19 @@ declare class TreeSelectionService<T = unknown> {
4694
4705
  setMode(mode: TreeSelectionMode): void;
4695
4706
  setRootNodes(nodes: TreeNode<T>[]): void;
4696
4707
  isSelected(id: string | number): boolean;
4697
- isDisabled(node: TreeNode<T>, ancestors: TreeNode<T>[]): boolean;
4698
4708
  /**
4699
- * A node is indeterminate when it has loaded children AND
4700
- * some (but not all) of its leaf-level descendants are selected.
4709
+ * A node is considered disabled only by its own `disabled` flag — a disabled
4710
+ * parent does not propagate the state to its descendants. Children of a
4711
+ * disabled parent remain individually interactable; the parent itself just
4712
+ * has its bulk "toggle all" action locked. This mirrors the combobox's
4713
+ * disabled-section semantics.
4714
+ */
4715
+ isDisabled(node: TreeNode<T>): boolean;
4716
+ /**
4717
+ * A node is indeterminate when it has loaded children AND at least one
4718
+ * descendant is selected without the node being fully checked. Disabled
4719
+ * descendants count so a pre-selected disabled leaf still surfaces on the
4720
+ * parent (useful when the parent itself is also disabled).
4701
4721
  */
4702
4722
  isIndeterminate(node: TreeNode<T>): boolean;
4703
4723
  /**
@@ -4726,6 +4746,9 @@ declare class TreeSelectionService<T = unknown> {
4726
4746
  /**
4727
4747
  * Collect leaf-level IDs (terminal nodes that have no loaded children).
4728
4748
  * Returns empty array if the node itself is a leaf.
4749
+ * When `includeDisabled` is true, disabled descendants are also collected —
4750
+ * used by the indeterminate computation so pre-selected disabled leaves
4751
+ * count toward a parent's state.
4729
4752
  */
4730
4753
  private _collectLeafIds;
4731
4754
  /**