@praxisui/settings-panel 9.0.68-rc.0 → 9.0.68-rc.2

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.
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": "1.0.0",
3
- "generatedAt": "2026-09-09T10:03:24.330Z",
3
+ "generatedAt": "2026-09-10T01:25:13.157Z",
4
4
  "packageName": "@praxisui/settings-panel",
5
- "packageVersion": "9.0.68-rc.0",
5
+ "packageVersion": "9.0.68-rc.2",
6
6
  "sourceRegistry": "praxis-component-registry-ingestion",
7
7
  "sourceRegistryVersion": "1.0.0",
8
8
  "componentCount": 1,
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { inject, Renderer2, DestroyRef, ViewContainerRef, HostListener, ViewChild, ViewEncapsulation, ChangeDetectionStrategy, Component, InjectionToken, Injector, Injectable, ElementRef, ChangeDetectorRef, ENVIRONMENT_INITIALIZER } from '@angular/core';
2
+ import { inject, Renderer2, signal, DestroyRef, ViewContainerRef, HostListener, ViewChild, ViewEncapsulation, ChangeDetectionStrategy, Component, InjectionToken, Injector, Injectable, ElementRef, ChangeDetectorRef, ENVIRONMENT_INITIALIZER } from '@angular/core';
3
3
  import * as i2 from '@angular/common';
4
4
  import { CommonModule, NgStyle, NgClass } from '@angular/common';
5
5
  import { InteractivityChecker, CdkTrapFocus } from '@angular/cdk/a11y';
@@ -576,9 +576,17 @@ class SettingsPanelComponent {
576
576
  contentRef;
577
577
  static nextId = 0;
578
578
  titleId = `praxis-settings-panel-title-${SettingsPanelComponent.nextId++}`;
579
- isDirty = false;
580
- isValid = true;
581
- isBusy = false;
579
+ // Providers can emit while their child views are being checked. Signals keep
580
+ // the panel's already-checked footer subscribed to those late state changes.
581
+ dirtyState = signal(false, ...(ngDevMode ? [{ debugName: "dirtyState" }] : /* istanbul ignore next */ []));
582
+ validState = signal(true, ...(ngDevMode ? [{ debugName: "validState" }] : /* istanbul ignore next */ []));
583
+ busyState = signal(false, ...(ngDevMode ? [{ debugName: "busyState" }] : /* istanbul ignore next */ []));
584
+ get isDirty() { return this.dirtyState(); }
585
+ set isDirty(value) { this.dirtyState.set(value); }
586
+ get isValid() { return this.validState(); }
587
+ set isValid(value) { this.validState.set(value); }
588
+ get isBusy() { return this.busyState(); }
589
+ set isBusy(value) { this.busyState.set(value); }
582
590
  diagnostics = {
583
591
  ...DEFAULT_DIAGNOSTICS,
584
592
  };
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@praxisui/settings-panel",
3
- "version": "9.0.68-rc.0",
3
+ "version": "9.0.68-rc.2",
4
4
  "description": "Settings panel for Praxis UI libraries: open editors for configuration at runtime and persist settings.",
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^21.0.0",
7
7
  "@angular/core": "^21.0.0",
8
8
  "@angular/cdk": "^21.0.0",
9
9
  "@angular/material": "^21.0.0",
10
- "@praxisui/ai": "^9.0.68-rc.0",
11
- "@praxisui/core": "^9.0.68-rc.0",
12
- "@praxisui/dynamic-fields": "^9.0.68-rc.0",
10
+ "@praxisui/ai": "^9.0.68-rc.2",
11
+ "@praxisui/core": "^9.0.68-rc.2",
12
+ "@praxisui/dynamic-fields": "^9.0.68-rc.2",
13
13
  "rxjs": "~7.8.0"
14
14
  },
15
15
  "dependencies": {
@@ -461,9 +461,15 @@ declare class SettingsPanelComponent {
461
461
  contentRef?: ComponentRef<any>;
462
462
  private static nextId;
463
463
  titleId: string;
464
- isDirty: boolean;
465
- isValid: boolean;
466
- isBusy: boolean;
464
+ private readonly dirtyState;
465
+ private readonly validState;
466
+ private readonly busyState;
467
+ get isDirty(): boolean;
468
+ set isDirty(value: boolean);
469
+ get isValid(): boolean;
470
+ set isValid(value: boolean);
471
+ get isBusy(): boolean;
472
+ set isBusy(value: boolean);
467
473
  diagnostics: Required<SettingsPanelDiagnosticsConfig>;
468
474
  private lastSavedAt;
469
475
  private hasAppliedChanges;