@praxisui/dialog 9.0.0-beta.21 → 9.0.0-beta.25

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-06-25T18:12:49.520Z",
3
+ "generatedAt": "2026-06-30T12:05:08.567Z",
4
4
  "packageName": "@praxisui/dialog",
5
- "packageVersion": "9.0.0-beta.21",
5
+ "packageVersion": "9.0.0-beta.25",
6
6
  "sourceRegistry": "praxis-component-registry-ingestion",
7
7
  "sourceRegistryVersion": "1.0.0",
8
8
  "componentCount": 1,
@@ -1167,7 +1167,7 @@ function resolveDialogWidth(preset) {
1167
1167
  return preset || undefined;
1168
1168
  }
1169
1169
  }
1170
- function applySurfaceHostInputs(ref, hostInputs) {
1170
+ function applySurfaceHostInputs(ref, hostInputs, afterApply) {
1171
1171
  const apply = () => {
1172
1172
  if (!ref.componentInstance)
1173
1173
  return false;
@@ -1183,12 +1183,35 @@ function applySurfaceHostInputs(ref, hostInputs) {
1183
1183
  ref.componentRef?.changeDetectorRef?.detectChanges();
1184
1184
  }
1185
1185
  catch { }
1186
+ afterApply?.(ref.componentInstance);
1186
1187
  return true;
1187
1188
  };
1188
1189
  if (apply())
1189
1190
  return;
1190
1191
  queueMicrotask(apply);
1191
1192
  }
1193
+ function bindSurfaceHostSelectionResults(instance, resultSubject) {
1194
+ const subscriptions = [
1195
+ subscribeToOutput(instance?.rowClick, (payload) => resultSubject.next(toSurfaceSelectionResult('rowClick', payload))),
1196
+ subscribeToOutput(instance?.selectionChange, (payload) => resultSubject.next(toSurfaceSelectionResult('selectionChange', payload))),
1197
+ ].filter((unsubscribe) => !!unsubscribe);
1198
+ return () => subscriptions.forEach((unsubscribe) => unsubscribe());
1199
+ }
1200
+ function subscribeToOutput(output, handler) {
1201
+ if (!output || typeof output.subscribe !== 'function') {
1202
+ return null;
1203
+ }
1204
+ const subscription = output.subscribe(handler);
1205
+ return () => subscription.unsubscribe();
1206
+ }
1207
+ function toSurfaceSelectionResult(output, payload) {
1208
+ return {
1209
+ type: output,
1210
+ data: payload,
1211
+ output,
1212
+ payload,
1213
+ };
1214
+ }
1192
1215
  function providePraxisSurfaceGlobalActions() {
1193
1216
  return {
1194
1217
  provide: GLOBAL_SURFACE_SERVICE,
@@ -1230,10 +1253,19 @@ function providePraxisSurfaceGlobalActions() {
1230
1253
  ref.afterClosed().subscribe(() => resultSubject.complete());
1231
1254
  ref.result$ = resultSubject.asObservable();
1232
1255
  ref.emitResult = (result) => resultSubject.next(result);
1256
+ let unbindSelectionResults = null;
1257
+ ref.afterClosed().subscribe(() => {
1258
+ unbindSelectionResults?.();
1259
+ unbindSelectionResults = null;
1260
+ });
1233
1261
  const hostInputs = buildHostInputs(materializedPayload, context, {
1234
1262
  surfaceRuntime: buildDialogSurfaceRuntime(ref, resultSubject),
1235
1263
  });
1236
- applySurfaceHostInputs(ref, hostInputs);
1264
+ applySurfaceHostInputs(ref, hostInputs, (instance) => {
1265
+ if (!unbindSelectionResults) {
1266
+ unbindSelectionResults = bindSurfaceHostSelectionResults(instance, resultSubject);
1267
+ }
1268
+ });
1237
1269
  return ref;
1238
1270
  },
1239
1271
  };
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@praxisui/dialog",
3
- "version": "9.0.0-beta.21",
3
+ "version": "9.0.0-beta.25",
4
4
  "description": "Dialog helpers and components for Praxis UI with Angular Material integration.",
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/forms": "^21.0.0",
10
- "@praxisui/core": "^9.0.0-beta.21",
10
+ "@praxisui/core": "^9.0.0-beta.25",
11
11
  "@angular/material": "^21.0.0",
12
12
  "@angular/platform-browser": "^21.0.0",
13
13
  "rxjs": "~7.8.0"