@praxisui/settings-panel 9.0.4-rc.2 → 9.0.4-rc.4

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/README.md CHANGED
@@ -26,7 +26,7 @@
26
26
  ## Instalacao
27
27
 
28
28
  ```bash
29
- npm i @praxisui/settings-panel@latest
29
+ npm i @praxisui/settings-panel@rc
30
30
  ```
31
31
 
32
32
  ## Minimal standalone content component
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schemaVersion": "1.0.0",
3
- "generatedAt": "2026-07-31T10:13:34.390Z",
3
+ "generatedAt": "2026-07-31T20:05:40.240Z",
4
4
  "packageName": "@praxisui/settings-panel",
5
- "packageVersion": "9.0.4-rc.2",
5
+ "packageVersion": "9.0.4-rc.4",
6
6
  "sourceRegistry": "praxis-component-registry-ingestion",
7
7
  "sourceRegistryVersion": "1.0.0",
8
8
  "componentCount": 1,
@@ -1408,6 +1408,7 @@ class BaseSidePanelOverlayRef {
1408
1408
  overlayRef;
1409
1409
  titleUpdater;
1410
1410
  sizePersistor;
1411
+ terminalOutcomeEmitted = false;
1411
1412
  closed$ = this.closedSubject.asObservable();
1412
1413
  result$ = this.resultSubject.asObservable();
1413
1414
  sizeChanged$ = this.sizeChangedSubject.asObservable();
@@ -1423,6 +1424,14 @@ class BaseSidePanelOverlayRef {
1423
1424
  emitResult(result) {
1424
1425
  this.resultSubject.next(result);
1425
1426
  }
1427
+ complete(outcome) {
1428
+ if (this.terminalOutcomeEmitted || !this.overlayRef?.hasAttached()) {
1429
+ return;
1430
+ }
1431
+ this.terminalOutcomeEmitted = true;
1432
+ this.resultSubject.next(outcome);
1433
+ this.close(outcome);
1434
+ }
1426
1435
  updateTitle(title) {
1427
1436
  this.titleUpdater?.(title);
1428
1437
  }
@@ -1894,6 +1903,7 @@ function buildSurfaceRuntime(ref) {
1894
1903
  result$: ref.result$,
1895
1904
  close: (result) => ref.close?.(result),
1896
1905
  emitResult: (result) => ref.emitResult?.(result),
1906
+ complete: (outcome) => ref.complete?.(outcome),
1897
1907
  updateTitle: (title) => ref.updateTitle?.(title),
1898
1908
  updateSize: (preset) => ref.updateSize?.(preset),
1899
1909
  };
package/package.json CHANGED
@@ -1,15 +1,15 @@
1
1
  {
2
2
  "name": "@praxisui/settings-panel",
3
- "version": "9.0.4-rc.2",
3
+ "version": "9.0.4-rc.4",
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.4-rc.2",
11
- "@praxisui/core": "^9.0.4-rc.2",
12
- "@praxisui/dynamic-fields": "^9.0.4-rc.2",
10
+ "@praxisui/ai": "^9.0.4-rc.4",
11
+ "@praxisui/core": "^9.0.4-rc.4",
12
+ "@praxisui/dynamic-fields": "^9.0.4-rc.4",
13
13
  "rxjs": "~7.8.0"
14
14
  },
15
15
  "dependencies": {
@@ -3,7 +3,7 @@ import { Type, Injector, ComponentRef, Provider, ChangeDetectorRef, ElementRef,
3
3
  import * as rxjs from 'rxjs';
4
4
  import { Observable, BehaviorSubject } from 'rxjs';
5
5
  import { OverlayRef, Overlay, OverlayContainer } from '@angular/cdk/overlay';
6
- import { PraxisI18nService, GlobalConfig, FormConfig, FormValueChangeEvent, AiCapability, AiCapabilityCategory, AiCapabilityCatalog, AiValueKind, ComponentAuthoringManifest, ComponentDocMeta } from '@praxisui/core';
6
+ import { SurfaceOutcome, PraxisI18nService, GlobalConfig, FormConfig, FormValueChangeEvent, AiCapability, AiCapabilityCategory, AiCapabilityCatalog, AiValueKind, ComponentAuthoringManifest, ComponentDocMeta } from '@praxisui/core';
7
7
  import { MatDialog } from '@angular/material/dialog';
8
8
  import { MatSnackBar } from '@angular/material/snack-bar';
9
9
  import { AiProviderCatalogItem } from '@praxisui/ai';
@@ -224,6 +224,7 @@ interface BaseSidePanelRef<T = unknown> {
224
224
  }>;
225
225
  close(result?: BaseSidePanelResult<T>): void;
226
226
  emitResult?(result: BaseSidePanelResult<T>): void;
227
+ complete?(outcome: SurfaceOutcome<T>): void;
227
228
  updateTitle?(title: string): void;
228
229
  updateSize?(size: SidePanelWidthPreset | string | {
229
230
  width?: string;
@@ -260,6 +261,7 @@ declare class BaseSidePanelOverlayRef<T = unknown> implements BaseSidePanelRef<T
260
261
  private overlayRef;
261
262
  private titleUpdater?;
262
263
  private sizePersistor?;
264
+ private terminalOutcomeEmitted;
263
265
  readonly closed$: rxjs.Observable<BaseSidePanelResult<T> | undefined>;
264
266
  readonly result$: rxjs.Observable<BaseSidePanelResult<T>>;
265
267
  readonly sizeChanged$: rxjs.Observable<{
@@ -269,6 +271,7 @@ declare class BaseSidePanelOverlayRef<T = unknown> implements BaseSidePanelRef<T
269
271
  bindTitleUpdater(fn: (title: string) => void): void;
270
272
  bindSizePersistor(fn: (width: string) => void): void;
271
273
  emitResult(result: BaseSidePanelResult<T>): void;
274
+ complete(outcome: SurfaceOutcome<T>): void;
272
275
  updateTitle(title: string): void;
273
276
  updateSize(size: string | {
274
277
  width?: string;