@unipin/angular-applet 21.1.3 → 21.3.1

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.
Files changed (51) hide show
  1. package/common/assets/styles/theme.css +8 -0
  2. package/fesm2022/unipin-angular-applet-accordion.mjs +12 -12
  3. package/fesm2022/unipin-angular-applet-alert-dialog.mjs +10 -7
  4. package/fesm2022/unipin-angular-applet-alert-dialog.mjs.map +1 -1
  5. package/fesm2022/unipin-angular-applet-alert.mjs +9 -9
  6. package/fesm2022/unipin-angular-applet-approval.mjs +6 -6
  7. package/fesm2022/unipin-angular-applet-audit-audit-modal.component-3a2P0bZr.mjs +280 -0
  8. package/fesm2022/unipin-angular-applet-audit-audit-modal.component-3a2P0bZr.mjs.map +1 -0
  9. package/fesm2022/unipin-angular-applet-audit.mjs +220 -0
  10. package/fesm2022/unipin-angular-applet-audit.mjs.map +1 -0
  11. package/fesm2022/unipin-angular-applet-auth.mjs +21 -21
  12. package/fesm2022/unipin-angular-applet-avatar.mjs +25 -8
  13. package/fesm2022/unipin-angular-applet-avatar.mjs.map +1 -1
  14. package/fesm2022/unipin-angular-applet-badge.mjs +3 -3
  15. package/fesm2022/unipin-angular-applet-buttons.mjs +6 -6
  16. package/fesm2022/unipin-angular-applet-calendar.mjs +26 -12
  17. package/fesm2022/unipin-angular-applet-calendar.mjs.map +1 -1
  18. package/fesm2022/unipin-angular-applet-collapsible.mjs +9 -9
  19. package/fesm2022/unipin-angular-applet-common.mjs +24 -24
  20. package/fesm2022/unipin-angular-applet-containers.mjs +12 -12
  21. package/fesm2022/unipin-angular-applet-dialog.mjs +30 -45
  22. package/fesm2022/unipin-angular-applet-dialog.mjs.map +1 -1
  23. package/fesm2022/unipin-angular-applet-forms.mjs +960 -311
  24. package/fesm2022/unipin-angular-applet-forms.mjs.map +1 -1
  25. package/fesm2022/unipin-angular-applet-froala.mjs +4 -4
  26. package/fesm2022/unipin-angular-applet-froala.mjs.map +1 -1
  27. package/fesm2022/unipin-angular-applet-grids.mjs +17 -1
  28. package/fesm2022/unipin-angular-applet-grids.mjs.map +1 -1
  29. package/fesm2022/unipin-angular-applet-infinite-scroll.mjs +3 -3
  30. package/fesm2022/unipin-angular-applet-json-viewer.mjs +3 -3
  31. package/fesm2022/unipin-angular-applet-kbd.mjs +3 -3
  32. package/fesm2022/unipin-angular-applet-loading-dialog.mjs +6 -6
  33. package/fesm2022/unipin-angular-applet-markdown.mjs +10 -10
  34. package/fesm2022/unipin-angular-applet-markdown.mjs.map +1 -1
  35. package/fesm2022/unipin-angular-applet-popover.mjs +18 -18
  36. package/fesm2022/unipin-angular-applet-popover.mjs.map +1 -1
  37. package/fesm2022/unipin-angular-applet-progress-bar.mjs +3 -3
  38. package/fesm2022/unipin-angular-applet-skeleton.mjs +3 -3
  39. package/fesm2022/unipin-angular-applet-spinner.mjs +3 -3
  40. package/fesm2022/unipin-angular-applet-stepper.mjs +6 -6
  41. package/fesm2022/unipin-angular-applet-swipeable.mjs +12 -12
  42. package/fesm2022/unipin-angular-applet-tabs.mjs +9 -9
  43. package/fesm2022/unipin-angular-applet-tooltip.mjs +3 -3
  44. package/package.json +5 -1
  45. package/types/unipin-angular-applet-audit.d.ts +49 -0
  46. package/types/unipin-angular-applet-avatar.d.ts +3 -2
  47. package/types/unipin-angular-applet-containers.d.ts +1 -1
  48. package/types/unipin-angular-applet-dialog.d.ts +13 -13
  49. package/types/unipin-angular-applet-forms.d.ts +133 -51
  50. package/types/unipin-angular-applet-grids.d.ts +17 -1
  51. package/types/unipin-angular-applet-popover.d.ts +2 -2
@@ -7,15 +7,16 @@ import { up } from '@unipin/angular-applet/common';
7
7
 
8
8
  const defaultDialogOptions = {
9
9
  role: 'dialog',
10
+ panelClass: null,
10
11
  hasBackdrop: true,
11
12
  disableClose: false,
12
- autoFocus: 'first-tabbable',
13
- restoreFocus: true,
13
+ autoFocus: false,
14
+ restoreFocus: false,
14
15
  closeDelay: 50,
15
16
  closeOnBackdropClick: true,
16
17
  closeOnOutsidePointerEvents: false,
17
- scrollStrategy: null,
18
18
  attachPositions: [],
19
+ scrollStrategy: null,
19
20
  };
20
21
 
21
22
  const injectDialogContext = (options = {}) => {
@@ -131,6 +132,7 @@ class UpDialogService {
131
132
  data: contextOrData,
132
133
  hasBackdrop: options?.hasBackdrop,
133
134
  backdropClass: up('bg-black/30'),
135
+ panelClass: up(options?.panelClass ?? ''),
134
136
  autoFocus: options?.autoFocus ?? 'first-tabbable',
135
137
  restoreFocus: options?.restoreFocus instanceof ElementRef ? options.restoreFocus.nativeElement : options?.restoreFocus,
136
138
  disableClose: true,
@@ -200,10 +202,10 @@ class UpDialogService {
200
202
  });
201
203
  return dialogRef;
202
204
  }
203
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
204
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogService, providedIn: 'root' }); }
205
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
206
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogService, providedIn: 'root' }); }
205
207
  }
206
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogService, decorators: [{
208
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogService, decorators: [{
207
209
  type: Injectable,
208
210
  args: [{
209
211
  providedIn: 'root'
@@ -232,6 +234,7 @@ class UpDialog {
232
234
  this.closed = output();
233
235
  this.stateChanged = output();
234
236
  this.state = signal(false, ...(ngDevMode ? [{ debugName: "state" }] : []));
237
+ this.panelClass = signal(null, ...(ngDevMode ? [{ debugName: "panelClass" }] : []));
235
238
  this.mutableAttachTo = computed(() => signal(this.attachTo()), ...(ngDevMode ? [{ debugName: "mutableAttachTo" }] : []));
236
239
  this.stateComputed = computed(() => this.dialogRef?.state() ?? 'closed', ...(ngDevMode ? [{ debugName: "stateComputed" }] : []));
237
240
  this.mutableAttachPositions = computed(() => signal(this.attachPositions()), ...(ngDevMode ? [{ debugName: "mutableAttachPositions" }] : []));
@@ -250,6 +253,7 @@ class UpDialog {
250
253
  }
251
254
  return {
252
255
  role: this.role(),
256
+ panelClass: this.panelClass(),
253
257
  hasBackdrop: this.hasBackdrop(),
254
258
  disableClose: this.disableClose(),
255
259
  autoFocus: this.autoFocus(),
@@ -275,7 +279,6 @@ class UpDialog {
275
279
  registerTemplate(template) {
276
280
  this.contentTemplate = template;
277
281
  }
278
- //TODO: Remove if unused after v20 lib is done
279
282
  setContext(context) {
280
283
  this.context = {
281
284
  ...this.context,
@@ -307,12 +310,12 @@ class UpDialog {
307
310
  }
308
311
  });
309
312
  }
310
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialog, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
311
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: UpDialog, isStandalone: true, selector: "up-dialog", inputs: { attachTo: { classPropertyName: "attachTo", publicName: "attachTo", isSignal: true, isRequired: false, transformFunction: null }, role: { classPropertyName: "role", publicName: "role", isSignal: true, isRequired: false, transformFunction: null }, autoFocus: { classPropertyName: "autoFocus", publicName: "autoFocus", isSignal: true, isRequired: false, transformFunction: null }, restoreFocus: { classPropertyName: "restoreFocus", publicName: "restoreFocus", isSignal: true, isRequired: false, transformFunction: null }, scrollStrategy: { classPropertyName: "scrollStrategy", publicName: "scrollStrategy", isSignal: true, isRequired: false, transformFunction: null }, attachPositions: { classPropertyName: "attachPositions", publicName: "attachPositions", isSignal: true, isRequired: false, transformFunction: null }, positionStrategy: { classPropertyName: "positionStrategy", publicName: "positionStrategy", isSignal: true, isRequired: false, transformFunction: null }, hasBackdrop: { classPropertyName: "hasBackdrop", publicName: "hasBackdrop", isSignal: true, isRequired: false, transformFunction: null }, disableClose: { classPropertyName: "disableClose", publicName: "disableClose", isSignal: true, isRequired: false, transformFunction: null }, closeDelay: { classPropertyName: "closeDelay", publicName: "closeDelay", isSignal: true, isRequired: false, transformFunction: null }, closeOnOutsidePointerEvents: { classPropertyName: "closeOnOutsidePointerEvents", publicName: "closeOnOutsidePointerEvents", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed", stateChanged: "stateChanged" }, exportAs: ["upDialog"], ngImport: i0, template: `
313
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialog, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
314
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.5", type: UpDialog, isStandalone: true, selector: "up-dialog", inputs: { attachTo: { classPropertyName: "attachTo", publicName: "attachTo", isSignal: true, isRequired: false, transformFunction: null }, role: { classPropertyName: "role", publicName: "role", isSignal: true, isRequired: false, transformFunction: null }, autoFocus: { classPropertyName: "autoFocus", publicName: "autoFocus", isSignal: true, isRequired: false, transformFunction: null }, restoreFocus: { classPropertyName: "restoreFocus", publicName: "restoreFocus", isSignal: true, isRequired: false, transformFunction: null }, scrollStrategy: { classPropertyName: "scrollStrategy", publicName: "scrollStrategy", isSignal: true, isRequired: false, transformFunction: null }, attachPositions: { classPropertyName: "attachPositions", publicName: "attachPositions", isSignal: true, isRequired: false, transformFunction: null }, positionStrategy: { classPropertyName: "positionStrategy", publicName: "positionStrategy", isSignal: true, isRequired: false, transformFunction: null }, hasBackdrop: { classPropertyName: "hasBackdrop", publicName: "hasBackdrop", isSignal: true, isRequired: false, transformFunction: null }, disableClose: { classPropertyName: "disableClose", publicName: "disableClose", isSignal: true, isRequired: false, transformFunction: null }, closeDelay: { classPropertyName: "closeDelay", publicName: "closeDelay", isSignal: true, isRequired: false, transformFunction: null }, closeOnOutsidePointerEvents: { classPropertyName: "closeOnOutsidePointerEvents", publicName: "closeOnOutsidePointerEvents", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed", stateChanged: "stateChanged" }, exportAs: ["upDialog"], ngImport: i0, template: `
312
315
  <ng-content />
313
316
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
314
317
  }
315
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialog, decorators: [{
318
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialog, decorators: [{
316
319
  type: Component,
317
320
  args: [{
318
321
  standalone: true,
@@ -335,10 +338,10 @@ class UpDialogCloseDirective {
335
338
  close() {
336
339
  this.dialogRef.close(undefined);
337
340
  }
338
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogCloseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
339
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.6", type: UpDialogCloseDirective, isStandalone: true, selector: "button[upDialogClose]", inputs: { inlineClass: { classPropertyName: "inlineClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "close()" }, properties: { "class": "_computedClass()" } }, ngImport: i0 }); }
341
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogCloseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
342
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: UpDialogCloseDirective, isStandalone: true, selector: "button[upDialogClose]", inputs: { inlineClass: { classPropertyName: "inlineClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "close()" }, properties: { "class": "_computedClass()" } }, ngImport: i0 }); }
340
343
  }
341
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogCloseDirective, decorators: [{
344
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogCloseDirective, decorators: [{
342
345
  type: Directive,
343
346
  args: [{
344
347
  standalone: true,
@@ -362,34 +365,15 @@ class UpDialogContentDirective {
362
365
  data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95
363
366
  data-[state=closed]:slide-out-to-top-[2%] data-[state=open]:slide-in-from-top-[2%]
364
367
  w-full max-w-[calc(100%-2rem)] mx-auto
365
- md:w-full md:min-w-[600px]
368
+ md:w-full md:min-w-150
366
369
  overflow-hidden outline-none
367
370
  `, this.inlineClass());
368
371
  }, ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
369
372
  }
370
- ngAfterViewInit() {
371
- const pane = document.querySelector('.cdk-overlay-pane');
372
- if (!pane) {
373
- return;
374
- }
375
- pane.style.setProperty('z-index', '999999', 'important');
376
- pane.style.setProperty('position', 'relative', 'important');
377
- this._mutationObserver = new MutationObserver(() => {
378
- pane.style.setProperty('position', 'relative', 'important');
379
- pane.style.setProperty('z-index', '999999', 'important');
380
- });
381
- this._mutationObserver.observe(pane, {
382
- attributes: true,
383
- attributeFilter: ['style'],
384
- });
385
- }
386
- ngOnDestroy() {
387
- this._mutationObserver.disconnect();
388
- }
389
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
390
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.6", type: UpDialogContentDirective, isStandalone: true, selector: "[upDialogContent]", inputs: { inlineClass: { classPropertyName: "inlineClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()", "attr.data-state": "state()" } }, exportAs: ["upDialogContent"], ngImport: i0 }); }
373
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
374
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: UpDialogContentDirective, isStandalone: true, selector: "[upDialogContent]", inputs: { inlineClass: { classPropertyName: "inlineClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()", "attr.data-state": "state()" } }, exportAs: ["upDialogContent"], ngImport: i0 }); }
391
375
  }
392
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogContentDirective, decorators: [{
376
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogContentDirective, decorators: [{
393
377
  type: Directive,
394
378
  args: [{
395
379
  standalone: true,
@@ -435,10 +419,10 @@ class UpDialogTriggerDirective {
435
419
  open() {
436
420
  this.dialog?.open();
437
421
  }
438
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
439
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.6", type: UpDialogTriggerDirective, isStandalone: true, selector: "button[upDialogTrigger], button[upDialogTriggerFor]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, dialogTriggerFor: { classPropertyName: "dialogTriggerFor", publicName: "upDialogTriggerFor", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "open()" }, properties: { "id": "id()", "attr.data-state": "state()" } }, exportAs: ["upDialogTrigger"], ngImport: i0 }); }
422
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
423
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: UpDialogTriggerDirective, isStandalone: true, selector: "button[upDialogTrigger], button[upDialogTriggerFor]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, dialogTriggerFor: { classPropertyName: "dialogTriggerFor", publicName: "upDialogTriggerFor", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "click": "open()" }, properties: { "id": "id()", "attr.data-state": "state()" } }, exportAs: ["upDialogTrigger"], ngImport: i0 }); }
440
424
  }
441
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogTriggerDirective, decorators: [{
425
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogTriggerDirective, decorators: [{
442
426
  type: Directive,
443
427
  args: [{
444
428
  standalone: true,
@@ -473,12 +457,12 @@ class UpDialogContentRefDirective {
473
457
  untracked(() => this.dialog?.setContext(context));
474
458
  });
475
459
  }
476
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogContentRefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
477
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.6", type: UpDialogContentRefDirective, isStandalone: true, selector: "[upDialogContentRef]", inputs: { context: { classPropertyName: "context", publicName: "context", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
460
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogContentRefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
461
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.5", type: UpDialogContentRefDirective, isStandalone: true, selector: "[upDialogContentRef]", inputs: { context: { classPropertyName: "context", publicName: "context", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
478
462
  provideExposesStateProviderExisting(() => UpDialogContentRefDirective)
479
463
  ], exportAs: ["upDialogContentRef"], ngImport: i0 }); }
480
464
  }
481
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogContentRefDirective, decorators: [{
465
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogContentRefDirective, decorators: [{
482
466
  type: Directive,
483
467
  args: [{
484
468
  standalone: true,
@@ -496,6 +480,7 @@ class UpDialogWrapperComponent extends UpDialog {
496
480
  this.isOpen = input(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
497
481
  this.dismissed = output();
498
482
  effect(() => {
483
+ this.panelClass.set('relative!');
499
484
  this.state.set(this.isOpen());
500
485
  });
501
486
  this.closedSubscription = this.closed.subscribe(() => {
@@ -505,8 +490,8 @@ class UpDialogWrapperComponent extends UpDialog {
505
490
  ngOnDestroy() {
506
491
  this.closedSubscription.unsubscribe();
507
492
  }
508
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
509
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.6", type: UpDialogWrapperComponent, isStandalone: true, selector: "up-dialog-wrapper", inputs: { isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dismissed: "dismissed" }, providers: [
493
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
494
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.5", type: UpDialogWrapperComponent, isStandalone: true, selector: "up-dialog-wrapper", inputs: { isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dismissed: "dismissed" }, providers: [
510
495
  {
511
496
  provide: UpDialog,
512
497
  useExisting: forwardRef(() => UpDialogWrapperComponent)
@@ -515,7 +500,7 @@ class UpDialogWrapperComponent extends UpDialog {
515
500
  <ng-content />
516
501
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
517
502
  }
518
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogWrapperComponent, decorators: [{
503
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.5", ngImport: i0, type: UpDialogWrapperComponent, decorators: [{
519
504
  type: Component,
520
505
  args: [{
521
506
  standalone: true,
@@ -1 +1 @@
1
- {"version":3,"file":"unipin-angular-applet-dialog.mjs","sources":["../../../projects/unipin-angular/dialog/constants/default-dialog-options.const.ts","../../../projects/unipin-angular/dialog/tokens/dialog-context.token.ts","../../../projects/unipin-angular/dialog/tokens/dialog.token.ts","../../../projects/unipin-angular/dialog/utils/create-injection-token.util.ts","../../../projects/unipin-angular/dialog/utils/expose-state.util.ts","../../../projects/unipin-angular/dialog/dialog-ref.ts","../../../projects/unipin-angular/dialog/services/dialog.service.ts","../../../projects/unipin-angular/dialog/dialog.ts","../../../projects/unipin-angular/dialog/directives/dialog-close.directive.ts","../../../projects/unipin-angular/dialog/directives/dialog-content.directive.ts","../../../projects/unipin-angular/dialog/directives/dialog-trigger.directive.ts","../../../projects/unipin-angular/dialog/directives/dialog-content-ref.directive.ts","../../../projects/unipin-angular/dialog/components/dialog-wrapper.component.ts","../../../projects/unipin-angular/dialog/unipin-angular-applet-dialog.ts"],"sourcesContent":["import { UpDialogOptions } from '../types/dialog-options.type';\n\nexport const defaultDialogOptions: UpDialogOptions = {\n role: 'dialog',\n hasBackdrop: true,\n disableClose: false,\n autoFocus: 'first-tabbable',\n\n restoreFocus: true,\n\n closeDelay: 50,\n closeOnBackdropClick: true,\n closeOnOutsidePointerEvents: false,\n\n scrollStrategy: null,\n \n attachPositions: [],\n};\n","import { inject, InjectOptions } from '@angular/core';\nimport { DIALOG_DATA } from '@angular/cdk/dialog';\n\nexport const injectDialogContext = <DialogContext = any>(options: InjectOptions = {}) => {\n return inject(DIALOG_DATA, options) as DialogContext;\n};\n","import { inject, InjectionToken, ValueProvider } from '@angular/core';\nimport { UpDialogOptions } from '../types/dialog-options.type';\nimport { defaultDialogOptions } from '../constants/default-dialog-options.const';\n\nconst DEFAULT_OPTIONS = new InjectionToken<UpDialogOptions>(\n 'up-dialog-default-options',\n {\n providedIn: 'root',\n factory: () => defaultDialogOptions,\n }\n);\n\nexport function provideDialogDefaultOptions(options: Partial<UpDialogOptions>): ValueProvider{\n return {\n provide: DEFAULT_OPTIONS,\n useValue: { \n ...defaultDialogOptions, \n ...options \n },\n };\n}\n\nexport function injectDialogDefaultOptions(): UpDialogOptions{\n const opts = inject(\n DEFAULT_OPTIONS, \n { \n optional: true \n }\n );\n return opts?? defaultDialogOptions;\n}\n","import { InjectionToken, forwardRef, inject } from '@angular/core';\nimport type { InjectOptions, Provider, Type } from '@angular/core';\n\ntype InjectFn<TTokenValue> = {\n (): TTokenValue;\n (injectOptions: InjectOptions & { optional?: false }): TTokenValue;\n (injectOptions: InjectOptions & { optional: true }): TTokenValue | null;\n};\n\ntype ProvideFn<TTokenValue> = (value: TTokenValue) => Provider;\ntype ProvideExistingFn<TTokenValue> = (valueFactory: () => Type<TTokenValue>) => Provider;\n\nexport type CreateInjectionTokenReturn<TTokenValue> = [\n InjectFn<TTokenValue>,\n ProvideFn<TTokenValue>,\n ProvideExistingFn<TTokenValue>,\n InjectionToken<TTokenValue>\n];\n\nexport function createInjectionToken<TTokenValue>(description: string): CreateInjectionTokenReturn<TTokenValue>{\n \n const token = new InjectionToken<TTokenValue>(description);\n\n const provideFn = (value: TTokenValue) => {\n return { provide: token, useValue: value };\n };\n\n const provideExistingFn = (value: () => TTokenValue) => {\n return { provide: token, useExisting: forwardRef(value) };\n };\n\n const injectFn = (options: InjectOptions = {}) => {\n return inject(token, options);\n };\n\n return [\n injectFn,\n provideFn,\n provideExistingFn,\n token,\n ] as CreateInjectionTokenReturn<TTokenValue>;\n}\n","import type { Signal } from '@angular/core';\nimport { createInjectionToken } from './create-injection-token.util';\n\nexport type ExposesState = {\n state: Signal<'open' | 'closed'>;\n};\n\nexport const [\n injectExposesStateProvider,\n provideExposesStateProvider,\n provideExposesStateProviderExisting,\n EXPOSES_STATE_TOKEN,\n] = createInjectionToken<ExposesState>('@unipin-angular EXPOSES_STATE_TOKEN');\n","import { computed, Signal, WritableSignal } from '@angular/core';\nimport { Observable, take } from 'rxjs';\nimport { DialogRef } from '@angular/cdk/dialog';\nimport { UpDialogOptions } from './types/dialog-options.type';\n\nexport class UpDialogRef<DialogResult = any> {\n\n public readonly closed$: Observable<DialogResult | undefined>;\n\n public readonly isOpen = computed(\n () => this.state() === 'open'\n );\n\n public previousTimeout: ReturnType<typeof setTimeout> | undefined;\n\n constructor(\n public readonly state: Signal<'closed' | 'open'>,\n\n protected readonly open: WritableSignal<boolean>,\n protected readonly cdkDialogRef: DialogRef<DialogResult>,\n protected readonly options?: UpDialogOptions,\n ) {\n this.closed$ = this.cdkDialogRef.closed.pipe(take(1));\n }\n\n public close(result?: DialogResult, delay: number = this.options?.closeDelay ?? 0): void {\n if (!this.isOpen()) {\n return;\n }\n this.open.set(false);\n clearTimeout(this.previousTimeout);\n\n this.previousTimeout = setTimeout(\n () => {\n this.cdkDialogRef.close(result);\n }, \n delay\n );\n }\n}\n","import { computed, effect, EffectRef, ElementRef, inject, Injectable, Injector, RendererFactory2, runInInjectionContext, signal, StaticProvider, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { Dialog } from '@angular/cdk/dialog';\nimport { ComponentType, OverlayPositionBuilder, ScrollStrategy, ScrollStrategyOptions } from '@angular/cdk/overlay';\nimport { filter, Subject, takeUntil } from 'rxjs';\nimport { up } from '@unipin/angular-applet/common';\nimport { UpDialogOptions } from '../types/dialog-options.type';\nimport { UpDialogRef } from '../dialog-ref';\n\nlet dialogSequence = 0;\ntype UpDialogContext<T> = T & { close: (result?: any) => void };\n\ntype DialogOpenOptions<T> = {\n content: ComponentType<unknown> | TemplateRef<unknown>;\n context?: T;\n vcr?: ViewContainerRef;\n options?: Partial<UpDialogOptions>;\n}\n\n@Injectable({ \n providedIn: 'root' \n})\nexport class UpDialogService {\n \n public readonly cdkDialog = inject(Dialog);\n public readonly injector = inject(Injector);\n public readonly rendererFactory = inject(RendererFactory2);\n public readonly positionBuilder = inject(OverlayPositionBuilder);\n public readonly scrollStrategyOptions = inject(ScrollStrategyOptions);\n \n public readonly renderer = this.rendererFactory.createRenderer(null, null);\n\n public open<DialogContext>({ content, vcr, context, options }: DialogOpenOptions<DialogContext>): UpDialogRef{\n if (\n options?.id && \n this.cdkDialog.getDialogById(options.id)\n ) {\n throw new Error(`Dialog with ID: ${ options.id } already exists`);\n }\n\n let positionStrategy = options?.positionStrategy;\n if (!positionStrategy) {\n if (\n options?.attachTo &&\n options?.attachPositions &&\n options?.attachPositions?.length > 0\n ) {\n positionStrategy = this.positionBuilder?.flexibleConnectedTo(options.attachTo).withPositions(options.attachPositions?? [])\n } else {\n positionStrategy = this.positionBuilder.global()\n .centerHorizontally()\n .centerVertically();\n }\n }\n\n let effectRef!: EffectRef;\n let dialogRef!: UpDialogRef;\n\n const contextOrData: UpDialogContext<any> = {\n ...context,\n close: (result: any = undefined) => {\n dialogRef.close(result, options?.closeDelay)\n }\n };\n\n const open = signal<boolean>(true);\n const destroyed$ = new Subject<void>();\n \n const state = computed<'open' | 'closed'>(\n () => open() ? 'open' : 'closed'\n );\n\n dialogSequence++;\n const dialogId = options?.id?? `up-dialog-${ dialogSequence }`;\n\n const cdkDialogRef = this.cdkDialog.open(\n content as any, \n {\n id: dialogId,\n role: options?.role,\n data: contextOrData,\n hasBackdrop: options?.hasBackdrop,\n backdropClass: up('bg-black/30'),\n \n autoFocus: options?.autoFocus?? 'first-tabbable',\n restoreFocus: options?.restoreFocus instanceof ElementRef? options.restoreFocus.nativeElement : options?.restoreFocus,\n \n disableClose: true,\n viewContainerRef: vcr,\n \n positionStrategy,\n scrollStrategy: (options?.scrollStrategy?? this.scrollStrategyOptions?.block()) as ScrollStrategy,\n\n templateContext: () => ({ $implicit: contextOrData }),\n\n providers: (cdkDialogRef) => {\n dialogRef = new UpDialogRef(\n state,\n open,\n cdkDialogRef,\n options as UpDialogOptions\n );\n\n runInInjectionContext(\n this.injector, \n () => {\n effectRef = effect(\n () => {\n if (overlay) {\n this.renderer.setAttribute(overlay, 'data-state', state());\n }\n\n if (backdrop) {\n this.renderer.setAttribute(backdrop, 'data-state', state());\n }\n }\n );\n }\n );\n\n const providers: StaticProvider[] = [\n {\n provide: UpDialogRef,\n useValue: dialogRef,\n },\n ];\n\n if (options?.providers) {\n if (typeof options.providers === 'function') {\n providers.push(...options.providers());\n }\n\n if (Array.isArray(options.providers)) {\n providers.push(...options.providers);\n }\n }\n\n return providers;\n },\n }\n );\n\n const overlay = cdkDialogRef.overlayRef.overlayElement;\n const backdrop = cdkDialogRef.overlayRef.backdropElement;\n\n if (!options?.disableClose) {\n cdkDialogRef.keydownEvents.pipe(\n filter((e) => e.key === 'Escape'),\n takeUntil(destroyed$)\n ).subscribe({\n next: () => {\n dialogRef.close(undefined, options?.closeDelay);\n }\n });\n }\n\n if (options?.closeOnOutsidePointerEvents) {\n cdkDialogRef.outsidePointerEvents.pipe(\n takeUntil(destroyed$)\n )\n .subscribe({\n next: () => {\n dialogRef.close(undefined, options?.closeDelay);\n }\n });\n }\n\n if (options?.closeOnBackdropClick) {\n cdkDialogRef.backdropClick.pipe(\n takeUntil(destroyed$)\n ).subscribe({\n next: () => {\n dialogRef.close(undefined, options?.closeDelay);\n }\n });\n }\n\n cdkDialogRef.closed.pipe(\n takeUntil(destroyed$)\n ).subscribe({\n next: () => {\n effectRef?.destroy();\n \n destroyed$.next();\n destroyed$.complete();\n }\n });\n return dialogRef;\n }\n}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, effect, EffectRef, inject, Injector, input, numberAttribute, output, runInInjectionContext, signal, TemplateRef, untracked, ViewContainerRef, ViewEncapsulation, WritableSignal } from '@angular/core';\nimport { OverlayPositionBuilder, ScrollStrategy, ScrollStrategyOptions } from '@angular/cdk/overlay';\nimport { take } from 'rxjs';\nimport { UpDialogOptions } from './types/dialog-options.type';\nimport { injectDialogDefaultOptions } from './tokens/dialog.token';\nimport { UpDialogService } from './services/dialog.service';\nimport { UpDialogRef } from './dialog-ref';\n\n@Component({\n standalone: true,\n exportAs: 'upDialog',\n selector: 'up-dialog',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <ng-content />\n `,\n})\nexport class UpDialog {\n \n public readonly injector = inject(Injector);\n public readonly dialogService = inject(UpDialogService);\n public readonly viewContainerRef = inject(ViewContainerRef);\n public readonly positionBuilder = inject(OverlayPositionBuilder);\n public readonly scrollStrategyOptions = inject(ScrollStrategyOptions);\n \n public readonly defaultOptions = injectDialogDefaultOptions();\n\n public readonly attachTo = input<UpDialogOptions['attachTo']>(null);\n public readonly role = input<UpDialogOptions['role']>(this.defaultOptions.role);\n public readonly autoFocus = input<UpDialogOptions['autoFocus']>(this.defaultOptions.autoFocus);\n public readonly restoreFocus = input<UpDialogOptions['restoreFocus']>(this.defaultOptions.restoreFocus);\n public readonly scrollStrategy = input<UpDialogOptions['scrollStrategy']>(this.defaultOptions.scrollStrategy);\n public readonly attachPositions = input<UpDialogOptions['attachPositions']>(this.defaultOptions.attachPositions);\n public readonly positionStrategy = input<UpDialogOptions['positionStrategy']>(this.defaultOptions.positionStrategy);\n\n public readonly hasBackdrop = input(\n this.defaultOptions.hasBackdrop, \n {\n transform: booleanAttribute,\n }\n );\n public readonly disableClose = input(\n this.defaultOptions.disableClose, \n {\n transform: booleanAttribute,\n }\n );\n public readonly closeDelay = input(\n this.defaultOptions.closeDelay, \n {\n transform: numberAttribute\n }\n );\n public readonly closeOnOutsidePointerEvents = input(\n this.defaultOptions.closeOnOutsidePointerEvents,\n {\n transform: booleanAttribute \n }\n );\n\n public readonly closed = output<any>();\n public readonly stateChanged = output<'open' | 'closed'>();\n\n public readonly state: WritableSignal<boolean> = signal(false);\n\n public readonly mutableAttachTo = computed(() => signal(this.attachTo()));\n public readonly stateComputed = computed(() => this.dialogRef?.state()?? 'closed');\n public readonly mutableAttachPositions = computed(() => signal(this.attachPositions()));\n public readonly mutablePositionStrategy = computed(() => signal(this.positionStrategy()));\n public readonly mutableCloseOnOutsidePointerEvents = computed(() => signal(this.closeOnOutsidePointerEvents()));\n\n public dialogRef: UpDialogRef | undefined;\n\n protected readonly attachToState = computed(() => this.mutableAttachTo()());\n protected readonly positionStrategyState = computed(() => this.mutablePositionStrategy()());\n protected readonly closeOnOutsidePointerEventsState = computed(() => this.mutableCloseOnOutsidePointerEvents()());\n protected readonly attachPositionsState = computed(() => this.mutableAttachPositions()());\n\n protected readonly options = computed<Partial<UpDialogOptions>>(\n () => {\n const scrollStrategyInput = this.scrollStrategy();\n \n let scrollStrategy: ScrollStrategy = scrollStrategyInput as ScrollStrategy;\n if (\n scrollStrategyInput === 'close' ||\n scrollStrategyInput === 'reposition'\n ) {\n scrollStrategy = this.scrollStrategyOptions[scrollStrategyInput as 'close' | 'reposition']();\n }\n\n return {\n role: this.role(),\n hasBackdrop: this.hasBackdrop(),\n disableClose: this.disableClose(),\n \n autoFocus: this.autoFocus(),\n restoreFocus: this.restoreFocus(),\n \n closeDelay: this.closeDelay(),\n closeOnBackdropClick: !this.disableClose(),\n closeOnOutsidePointerEvents: this.closeOnOutsidePointerEventsState(),\n \n scrollStrategy,\n positionStrategy: this.positionStrategyState(),\n\n attachTo: this.attachToState(),\n attachPositions: this.attachPositionsState(),\n };\n }\n );\n\n protected context = {};\n protected dialogStateEffectRef?: EffectRef;\n protected contentTemplate: TemplateRef<unknown> | undefined;\n\n constructor() {\n effect(\n () => {\n const state = this.state();\n untracked(() => (state? this.open() : this.close()));\n }\n );\n }\n\n public close(result?: any, delay?: number): void{\n this.dialogRef?.close(result, delay?? this.options().closeDelay);\n }\n\n public registerTemplate(template: TemplateRef<unknown>): void{\n this.contentTemplate = template;\n }\n\n //TODO: Remove if unused after v20 lib is done\n public setContext<T extends object>(context: T): void{\n this.context = { \n ...this.context, \n ...context \n };\n }\n\n public open<DialogContext>(): void {\n if (\n !this.contentTemplate ||\n this.dialogRef\n ) {\n return;\n }\n this.dialogStateEffectRef?.destroy();\n\n this.dialogRef = this.dialogService.open<DialogContext>(\n {\n content: this.contentTemplate,\n vcr: this.viewContainerRef,\n context: this.context as DialogContext,\n options: this.options()\n }\n );\n\n runInInjectionContext(\n this.injector, \n () => {\n this.dialogStateEffectRef = effect(\n () => {\n const state = this.dialogRef!.state();\n untracked(() => this.stateChanged.emit(state));\n }\n );\n }\n );\n\n this.dialogRef!.closed$.pipe(\n take(1)\n ).subscribe({\n next: (result) => {\n this.dialogRef = undefined;\n this.closed.emit(result);\n }\n });\n }\n}\n","import { Directive, inject, input, computed } from '@angular/core';\nimport { ClassValue } from 'clsx';\nimport { up } from '@unipin/angular-applet/common';\nimport { UpDialogRef } from '../dialog-ref';\n\n@Directive({\n standalone: true,\n selector: 'button[upDialogClose]',\n host: {\n '[class]': '_computedClass()',\n '(click)': 'close()',\n }\n})\nexport class UpDialogCloseDirective {\n \n public readonly dialogRef = inject(UpDialogRef);\n public readonly inlineClass = input<ClassValue>('', { alias: 'class' });\n\n\tprotected readonly _computedClass = computed(\n () => up(this.inlineClass())\n );\n \n\tpublic close(): void{\n\t\tthis.dialogRef.close(undefined);\n\t}\n}\n","import { AfterViewInit, computed, Directive, inject, input, OnDestroy } from '@angular/core';\nimport { ClassValue } from 'clsx';\nimport { up } from '@unipin/angular-applet/common';\nimport { UpDialogRef } from '../dialog-ref';\n\n@Directive({\n standalone: true,\n exportAs: 'upDialogContent',\n selector: '[upDialogContent]',\n host: {\n '[class]': '_computedClass()',\n '[attr.data-state]': 'state()',\n },\n})\nexport class UpDialogContentDirective implements AfterViewInit, OnDestroy {\n\n public readonly dialogRef = inject(UpDialogRef);\n\n public readonly inlineClass = input<ClassValue>('', { alias: 'class' });\n\n public readonly state = computed(\n () => this.dialogRef?.state()?? 'closed'\n );\n\n protected readonly _computedClass = computed(\n () => {\n return up(\n `\t\n grid relative gap-4 bg-white rounded-xl shadow [animation-duration:200] data-[state=open]:animate-in data-[state=closed]:animate-out \n data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 \n data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 \n data-[state=closed]:slide-out-to-top-[2%] data-[state=open]:slide-in-from-top-[2%] \n w-full max-w-[calc(100%-2rem)] mx-auto\n md:w-full md:min-w-[600px]\n overflow-hidden outline-none\n `,\n this.inlineClass(),\n );\n }\n );\n protected _mutationObserver!: MutationObserver;\n\n public ngAfterViewInit(): void{\n const pane = document.querySelector('.cdk-overlay-pane') as HTMLElement;\n if (!pane) {\n return;\n }\n\n pane.style.setProperty('z-index', '999999', 'important');\n pane.style.setProperty('position', 'relative', 'important');\n\n this._mutationObserver = new MutationObserver(\n () => {\n pane.style.setProperty('position', 'relative', 'important');\n pane.style.setProperty('z-index', '999999', 'important');\n }\n );\n\n this._mutationObserver.observe(\n pane, \n {\n attributes: true,\n attributeFilter: ['style'],\n }\n );\n }\n\n public ngOnDestroy(): void{\n this._mutationObserver.disconnect();\n }\n}\n","import { computed, Directive, effect, inject, input, signal } from '@angular/core';\nimport { UpDialogRef } from '../dialog-ref';\nimport { UpDialog } from '../dialog';\n\nlet idSequence = 0;\n\n@Directive({\n standalone: true,\n exportAs: 'upDialogTrigger',\n selector: 'button[upDialogTrigger], button[upDialogTriggerFor]',\n host: {\n '[id]': 'id()',\n '(click)': 'open()',\n '[attr.data-state]': 'state()',\n },\n})\nexport class UpDialogTriggerDirective {\n\n public readonly dialogRef = inject(UpDialogRef, { optional: true });\n public dialog = inject(UpDialog, { optional: true });\n\n public readonly id = input(`up-dialog-trigger-${ idSequence++ }`);\n public readonly dialogTriggerFor = input<UpDialog | undefined>(undefined, { alias: 'upDialogTriggerFor' });\n \n public readonly mutableDialogTriggerFor = computed(\n () => signal(this.dialogTriggerFor())\n );\n \n public readonly dialogTriggerForState = computed(\n () => this.mutableDialogTriggerFor()()\n );\n \n public readonly state = computed<'open' | 'closed'>(\n () => {\n const dialogFromInput = this.dialogTriggerForState();\n if (dialogFromInput) {\n return dialogFromInput.stateComputed();\n }\n \n if (this.dialog) {\n return this.dialog.stateComputed();\n }\n \n if (this.dialogRef) {\n return this.dialogRef.state();\n }\n return 'closed';\n }\n );\n\n constructor() {\n effect(\n () => {\n const dialog = this.dialogTriggerForState();\n \n if (!dialog) {\n return;\n }\n this.dialog = dialog\n }\n )\n }\n\n public open(): void{\n this.dialog?.open();\n }\n}\n","import { computed, Directive, effect, inject, input, TemplateRef, untracked } from '@angular/core';\nimport { injectDialogContext } from './../tokens/dialog-context.token';\nimport { provideExposesStateProviderExisting } from './../utils/expose-state.util';\nimport { UpDialog } from '../dialog';\nimport { UpDialogRef } from '../dialog-ref';\n\n@Directive({\n standalone: true,\n exportAs: 'upDialogContentRef',\n selector: '[upDialogContentRef]',\n providers: [\n provideExposesStateProviderExisting(() => UpDialogContentRefDirective)\n ]\n})\nexport class UpDialogContentRefDirective<T> {\n\n public readonly template = inject(TemplateRef);\n public readonly dialog = inject(UpDialog, { optional: true });\n public readonly dialogRef = inject(UpDialogRef, { optional: true });\n public readonly dialogContext = injectDialogContext({ optional: true });\n \n public readonly context = input<T | undefined>(undefined);\n\n public readonly state = computed(\n () => this.dialog?.stateComputed()?? this.dialogRef?.state()?? 'closed'\n );\n\n constructor() {\n if (!this.dialog) {\n return;\n }\n\n this.dialog.registerTemplate(this.template);\n effect(\n () => {\n const context = this.context();\n\n if (\n !this.dialog || \n !context\n ) {\n return;\n }\n untracked(() => this.dialog?.setContext(context));\n }\n );\n }\n}\n","import { ChangeDetectionStrategy, Component, effect, forwardRef, input, output, OnDestroy, OutputRefSubscription, ViewEncapsulation } from '@angular/core';\nimport { UpDialog } from '../dialog';\n\n@Component({\n standalone: true,\n exportAs: 'upDialogWrapper',\n selector: 'up-dialog-wrapper',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: UpDialog,\n useExisting: forwardRef(() => UpDialogWrapperComponent)\n }\n ],\n template: `\n <ng-content />\n `,\n})\nexport class UpDialogWrapperComponent extends UpDialog implements OnDestroy {\n \n public readonly isOpen = input(false);\n public readonly dismissed = output<void>();\n\n protected readonly closedSubscription: OutputRefSubscription;\n\n constructor() {\n super();\n \n effect(\n () => {\n this.state.set(\n this.isOpen()\n );\n }\n );\n\n this.closedSubscription = this.closed.subscribe(\n () => {\n this.dismissed.emit();\n }\n );\n }\n\n public ngOnDestroy(): void{\n this.closedSubscription.unsubscribe();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unipin-angular-applet-dialog.mjs","sources":["../../../projects/unipin-angular/dialog/constants/default-dialog-options.const.ts","../../../projects/unipin-angular/dialog/tokens/dialog-context.token.ts","../../../projects/unipin-angular/dialog/tokens/dialog.token.ts","../../../projects/unipin-angular/dialog/utils/create-injection-token.util.ts","../../../projects/unipin-angular/dialog/utils/expose-state.util.ts","../../../projects/unipin-angular/dialog/dialog-ref.ts","../../../projects/unipin-angular/dialog/services/dialog.service.ts","../../../projects/unipin-angular/dialog/dialog.ts","../../../projects/unipin-angular/dialog/directives/dialog-close.directive.ts","../../../projects/unipin-angular/dialog/directives/dialog-content.directive.ts","../../../projects/unipin-angular/dialog/directives/dialog-trigger.directive.ts","../../../projects/unipin-angular/dialog/directives/dialog-content-ref.directive.ts","../../../projects/unipin-angular/dialog/components/dialog-wrapper.component.ts","../../../projects/unipin-angular/dialog/unipin-angular-applet-dialog.ts"],"sourcesContent":["import { UpDialogOptions } from '../types/dialog-options.type';\n\n\nexport const defaultDialogOptions: UpDialogOptions = {\n role: 'dialog',\n panelClass: null,\n hasBackdrop: true,\n disableClose: false,\n \n autoFocus: false,\n restoreFocus: false,\n\n closeDelay: 50,\n closeOnBackdropClick: true,\n closeOnOutsidePointerEvents: false,\n\n attachPositions: [],\n scrollStrategy: null,\n};\n","import { inject, InjectOptions } from '@angular/core';\nimport { DIALOG_DATA } from '@angular/cdk/dialog';\n\nexport const injectDialogContext = <DialogContext = any>(options: InjectOptions = {}) => {\n return inject(DIALOG_DATA, options) as DialogContext;\n};\n","import { inject, InjectionToken, ValueProvider } from '@angular/core';\nimport { UpDialogOptions } from '../types/dialog-options.type';\nimport { defaultDialogOptions } from '../constants/default-dialog-options.const';\n\nconst DEFAULT_OPTIONS = new InjectionToken<UpDialogOptions>(\n 'up-dialog-default-options',\n {\n providedIn: 'root',\n factory: () => defaultDialogOptions,\n }\n);\n\nexport function provideDialogDefaultOptions(options: Partial<UpDialogOptions>): ValueProvider{\n return {\n provide: DEFAULT_OPTIONS,\n useValue: { \n ...defaultDialogOptions, \n ...options \n },\n };\n}\n\nexport function injectDialogDefaultOptions(): UpDialogOptions{\n const opts = inject(\n DEFAULT_OPTIONS, \n { \n optional: true \n }\n );\n return opts?? defaultDialogOptions;\n}\n","import { InjectionToken, forwardRef, inject } from '@angular/core';\nimport type { InjectOptions, Provider, Type } from '@angular/core';\n\ntype InjectFn<TTokenValue> = {\n (): TTokenValue;\n (injectOptions: InjectOptions & { optional?: false }): TTokenValue;\n (injectOptions: InjectOptions & { optional: true }): TTokenValue | null;\n};\n\ntype ProvideFn<TTokenValue> = (value: TTokenValue) => Provider;\ntype ProvideExistingFn<TTokenValue> = (valueFactory: () => Type<TTokenValue>) => Provider;\n\nexport type CreateInjectionTokenReturn<TTokenValue> = [\n InjectFn<TTokenValue>,\n ProvideFn<TTokenValue>,\n ProvideExistingFn<TTokenValue>,\n InjectionToken<TTokenValue>\n];\n\nexport function createInjectionToken<TTokenValue>(description: string): CreateInjectionTokenReturn<TTokenValue>{\n \n const token = new InjectionToken<TTokenValue>(description);\n\n const provideFn = (value: TTokenValue) => {\n return { provide: token, useValue: value };\n };\n\n const provideExistingFn = (value: () => TTokenValue) => {\n return { provide: token, useExisting: forwardRef(value) };\n };\n\n const injectFn = (options: InjectOptions = {}) => {\n return inject(token, options);\n };\n\n return [\n injectFn,\n provideFn,\n provideExistingFn,\n token,\n ] as CreateInjectionTokenReturn<TTokenValue>;\n}\n","import type { Signal } from '@angular/core';\nimport { createInjectionToken } from './create-injection-token.util';\n\nexport type ExposesState = {\n state: Signal<'open' | 'closed'>;\n};\n\nexport const [\n injectExposesStateProvider,\n provideExposesStateProvider,\n provideExposesStateProviderExisting,\n EXPOSES_STATE_TOKEN,\n] = createInjectionToken<ExposesState>('@unipin-angular EXPOSES_STATE_TOKEN');\n","import { computed, Signal, WritableSignal } from '@angular/core';\nimport { Observable, take } from 'rxjs';\nimport { DialogRef } from '@angular/cdk/dialog';\nimport { UpDialogOptions } from './types/dialog-options.type';\n\nexport class UpDialogRef<DialogResult = any> {\n\n public readonly closed$: Observable<DialogResult | undefined>;\n\n public readonly isOpen = computed(\n () => this.state() === 'open'\n );\n\n public previousTimeout: ReturnType<typeof setTimeout> | undefined;\n\n constructor(\n public readonly state: Signal<'closed' | 'open'>,\n\n protected readonly open: WritableSignal<boolean>,\n protected readonly cdkDialogRef: DialogRef<DialogResult>,\n protected readonly options?: UpDialogOptions,\n ) {\n this.closed$ = this.cdkDialogRef.closed.pipe(take(1));\n }\n\n public close(result?: DialogResult, delay: number = this.options?.closeDelay ?? 0): void {\n if (!this.isOpen()) {\n return;\n }\n this.open.set(false);\n clearTimeout(this.previousTimeout);\n\n this.previousTimeout = setTimeout(\n () => {\n this.cdkDialogRef.close(result);\n }, \n delay\n );\n }\n}\n","import { computed, effect, EffectRef, ElementRef, inject, Injectable, Injector, RendererFactory2, runInInjectionContext, signal, StaticProvider, TemplateRef, ViewContainerRef } from '@angular/core';\nimport { Dialog } from '@angular/cdk/dialog';\nimport { ComponentType, OverlayPositionBuilder, ScrollStrategy, ScrollStrategyOptions } from '@angular/cdk/overlay';\nimport { filter, Subject, takeUntil } from 'rxjs';\nimport { up } from '@unipin/angular-applet/common';\nimport { UpDialogOptions } from '../types/dialog-options.type';\nimport { UpDialogRef } from '../dialog-ref';\n\n\nlet dialogSequence = 0;\ntype UpDialogContext<T> = T & { close: (result?: any) => void };\n\ntype DialogOpenOptions<T> = {\n content: ComponentType<unknown> | TemplateRef<unknown>;\n context?: T;\n vcr?: ViewContainerRef;\n options?: Partial<UpDialogOptions>;\n}\n\n\n@Injectable({ \n providedIn: 'root' \n})\nexport class UpDialogService {\n \n public readonly cdkDialog = inject(Dialog);\n public readonly injector = inject(Injector);\n public readonly rendererFactory = inject(RendererFactory2);\n public readonly positionBuilder = inject(OverlayPositionBuilder);\n public readonly scrollStrategyOptions = inject(ScrollStrategyOptions);\n \n public readonly renderer = this.rendererFactory.createRenderer(null, null);\n\n public open<DialogContext>({ content, vcr, context, options }: DialogOpenOptions<DialogContext>): UpDialogRef{\n if (\n options?.id && \n this.cdkDialog.getDialogById(options.id)\n ) {\n throw new Error(`Dialog with ID: ${ options.id } already exists`);\n }\n\n let positionStrategy = options?.positionStrategy;\n if (!positionStrategy) {\n if (\n options?.attachTo &&\n options?.attachPositions &&\n options?.attachPositions?.length > 0\n ) {\n positionStrategy = this.positionBuilder?.flexibleConnectedTo(options.attachTo).withPositions(options.attachPositions?? [])\n } else {\n positionStrategy = this.positionBuilder.global()\n .centerHorizontally()\n .centerVertically();\n }\n }\n\n let effectRef!: EffectRef;\n let dialogRef!: UpDialogRef;\n\n const contextOrData: UpDialogContext<any> = {\n ...context,\n close: (result: any = undefined) => {\n dialogRef.close(result, options?.closeDelay)\n }\n };\n\n const open = signal<boolean>(true);\n const destroyed$ = new Subject<void>();\n \n const state = computed<'open' | 'closed'>(\n () => open() ? 'open' : 'closed'\n );\n\n dialogSequence++;\n const dialogId = options?.id?? `up-dialog-${ dialogSequence }`;\n\n const cdkDialogRef = this.cdkDialog.open(\n content as any, \n {\n id: dialogId,\n role: options?.role,\n data: contextOrData,\n hasBackdrop: options?.hasBackdrop,\n\n backdropClass: up('bg-black/30'),\n panelClass: up(options?.panelClass?? ''),\n\n autoFocus: options?.autoFocus?? 'first-tabbable',\n restoreFocus: options?.restoreFocus instanceof ElementRef? options.restoreFocus.nativeElement : options?.restoreFocus,\n \n disableClose: true,\n viewContainerRef: vcr,\n \n positionStrategy,\n scrollStrategy: (options?.scrollStrategy?? this.scrollStrategyOptions?.block()) as ScrollStrategy,\n\n templateContext: () => ({ $implicit: contextOrData }),\n\n providers: (cdkDialogRef) => {\n dialogRef = new UpDialogRef(\n state,\n open,\n cdkDialogRef,\n options as UpDialogOptions\n );\n\n runInInjectionContext(\n this.injector, \n () => {\n effectRef = effect(\n () => {\n if (overlay) {\n this.renderer.setAttribute(overlay, 'data-state', state());\n }\n\n if (backdrop) {\n this.renderer.setAttribute(backdrop, 'data-state', state());\n }\n }\n );\n }\n );\n\n const providers: StaticProvider[] = [\n {\n provide: UpDialogRef,\n useValue: dialogRef,\n },\n ];\n\n if (options?.providers) {\n if (typeof options.providers === 'function') {\n providers.push(...options.providers());\n }\n\n if (Array.isArray(options.providers)) {\n providers.push(...options.providers);\n }\n }\n\n return providers;\n },\n }\n );\n\n const overlay = cdkDialogRef.overlayRef.overlayElement;\n const backdrop = cdkDialogRef.overlayRef.backdropElement;\n\n if (!options?.disableClose) {\n cdkDialogRef.keydownEvents.pipe(\n filter((e) => e.key === 'Escape'),\n takeUntil(destroyed$)\n ).subscribe({\n next: () => {\n dialogRef.close(undefined, options?.closeDelay);\n }\n });\n }\n\n if (options?.closeOnOutsidePointerEvents) {\n cdkDialogRef.outsidePointerEvents.pipe(\n takeUntil(destroyed$)\n )\n .subscribe({\n next: () => {\n dialogRef.close(undefined, options?.closeDelay);\n }\n });\n }\n\n if (options?.closeOnBackdropClick) {\n cdkDialogRef.backdropClick.pipe(\n takeUntil(destroyed$)\n ).subscribe({\n next: () => {\n dialogRef.close(undefined, options?.closeDelay);\n }\n });\n }\n\n cdkDialogRef.closed.pipe(\n takeUntil(destroyed$)\n ).subscribe(\n {\n next: () => {\n effectRef?.destroy();\n \n destroyed$.next();\n destroyed$.complete();\n }\n }\n );\n return dialogRef;\n }\n}\n","import { booleanAttribute, ChangeDetectionStrategy, Component, computed, effect, EffectRef, inject, Injector, input, numberAttribute, output, runInInjectionContext, signal, TemplateRef, untracked, ViewContainerRef, ViewEncapsulation } from '@angular/core';\nimport { OverlayPositionBuilder, ScrollStrategy, ScrollStrategyOptions } from '@angular/cdk/overlay';\nimport { take } from 'rxjs';\nimport { UpDialogOptions } from './types/dialog-options.type';\nimport { injectDialogDefaultOptions } from './tokens/dialog.token';\nimport { UpDialogService } from './services/dialog.service';\nimport { UpDialogRef } from './dialog-ref';\n\n@Component({\n standalone: true,\n exportAs: 'upDialog',\n selector: 'up-dialog',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <ng-content />\n `,\n})\nexport class UpDialog {\n \n public readonly injector = inject(Injector);\n public readonly dialogService = inject(UpDialogService);\n public readonly viewContainerRef = inject(ViewContainerRef);\n public readonly positionBuilder = inject(OverlayPositionBuilder);\n public readonly scrollStrategyOptions = inject(ScrollStrategyOptions);\n \n public readonly defaultOptions = injectDialogDefaultOptions();\n\n public readonly attachTo = input<UpDialogOptions['attachTo']>(null);\n public readonly role = input<UpDialogOptions['role']>(this.defaultOptions.role);\n public readonly autoFocus = input<UpDialogOptions['autoFocus']>(this.defaultOptions.autoFocus);\n public readonly restoreFocus = input<UpDialogOptions['restoreFocus']>(this.defaultOptions.restoreFocus);\n public readonly scrollStrategy = input<UpDialogOptions['scrollStrategy']>(this.defaultOptions.scrollStrategy);\n public readonly attachPositions = input<UpDialogOptions['attachPositions']>(this.defaultOptions.attachPositions);\n public readonly positionStrategy = input<UpDialogOptions['positionStrategy']>(this.defaultOptions.positionStrategy);\n\n public readonly hasBackdrop = input(\n this.defaultOptions.hasBackdrop, \n {\n transform: booleanAttribute,\n }\n );\n public readonly disableClose = input(\n this.defaultOptions.disableClose, \n {\n transform: booleanAttribute,\n }\n );\n public readonly closeDelay = input(\n this.defaultOptions.closeDelay, \n {\n transform: numberAttribute\n }\n );\n public readonly closeOnOutsidePointerEvents = input(\n this.defaultOptions.closeOnOutsidePointerEvents,\n {\n transform: booleanAttribute \n }\n );\n\n public readonly closed = output<any>();\n public readonly stateChanged = output<'open' | 'closed'>();\n \n public readonly state = signal<boolean>(false);\n public readonly panelClass = signal<UpDialogOptions['panelClass']>(null);\n\n public readonly mutableAttachTo = computed(() => signal(this.attachTo()));\n public readonly stateComputed = computed(() => this.dialogRef?.state()?? 'closed');\n public readonly mutableAttachPositions = computed(() => signal(this.attachPositions()));\n public readonly mutablePositionStrategy = computed(() => signal(this.positionStrategy()));\n public readonly mutableCloseOnOutsidePointerEvents = computed(() => signal(this.closeOnOutsidePointerEvents()));\n\n public dialogRef: UpDialogRef | undefined;\n\n protected readonly attachToState = computed(() => this.mutableAttachTo()());\n protected readonly positionStrategyState = computed(() => this.mutablePositionStrategy()());\n protected readonly closeOnOutsidePointerEventsState = computed(() => this.mutableCloseOnOutsidePointerEvents()());\n protected readonly attachPositionsState = computed(() => this.mutableAttachPositions()());\n\n protected readonly options = computed<Partial<UpDialogOptions>>(\n () => {\n const scrollStrategyInput = this.scrollStrategy();\n \n let scrollStrategy: ScrollStrategy = scrollStrategyInput as ScrollStrategy;\n if (\n scrollStrategyInput === 'close' ||\n scrollStrategyInput === 'reposition'\n ) {\n scrollStrategy = this.scrollStrategyOptions[scrollStrategyInput as 'close' | 'reposition']();\n }\n\n return {\n role: this.role(),\n panelClass: this.panelClass(),\n hasBackdrop: this.hasBackdrop(),\n disableClose: this.disableClose(),\n \n autoFocus: this.autoFocus(),\n restoreFocus: this.restoreFocus(),\n \n closeDelay: this.closeDelay(),\n closeOnBackdropClick: !this.disableClose(),\n closeOnOutsidePointerEvents: this.closeOnOutsidePointerEventsState(),\n \n scrollStrategy,\n positionStrategy: this.positionStrategyState(),\n\n attachTo: this.attachToState(),\n attachPositions: this.attachPositionsState(), \n };\n }\n );\n\n protected context = {};\n protected dialogStateEffectRef?: EffectRef;\n protected contentTemplate: TemplateRef<unknown> | undefined;\n\n constructor() {\n effect(\n () => {\n const state = this.state();\n untracked(() => (state? this.open() : this.close()));\n }\n );\n }\n\n public close(result?: any, delay?: number): void{\n this.dialogRef?.close(result, delay?? this.options().closeDelay);\n }\n\n public registerTemplate(template: TemplateRef<unknown>): void{\n this.contentTemplate = template;\n }\n\n public setContext<T extends object>(context: T): void{\n this.context = { \n ...this.context, \n ...context \n };\n }\n\n public open<DialogContext>(): void {\n if (\n !this.contentTemplate ||\n this.dialogRef\n ) {\n return;\n }\n this.dialogStateEffectRef?.destroy();\n\n this.dialogRef = this.dialogService.open<DialogContext>(\n {\n content: this.contentTemplate,\n vcr: this.viewContainerRef,\n context: this.context as DialogContext,\n options: this.options()\n }\n );\n\n runInInjectionContext(\n this.injector, \n () => {\n this.dialogStateEffectRef = effect(\n () => {\n const state = this.dialogRef!.state();\n untracked(() => this.stateChanged.emit(state));\n }\n );\n }\n );\n\n this.dialogRef!.closed$.pipe(\n take(1)\n ).subscribe({\n next: (result) => {\n this.dialogRef = undefined;\n this.closed.emit(result);\n }\n });\n }\n}\n","import { Directive, inject, input, computed } from '@angular/core';\nimport { ClassValue } from 'clsx';\nimport { up } from '@unipin/angular-applet/common';\nimport { UpDialogRef } from '../dialog-ref';\n\n@Directive({\n standalone: true,\n selector: 'button[upDialogClose]',\n host: {\n '[class]': '_computedClass()',\n '(click)': 'close()',\n }\n})\nexport class UpDialogCloseDirective {\n \n public readonly dialogRef = inject(UpDialogRef);\n public readonly inlineClass = input<ClassValue>('', { alias: 'class' });\n\n\tprotected readonly _computedClass = computed(\n () => up(this.inlineClass())\n );\n \n\tpublic close(): void{\n\t\tthis.dialogRef.close(undefined);\n\t}\n}\n","import { computed, Directive, inject, input } from '@angular/core';\nimport { ClassValue } from 'clsx';\nimport { up } from '@unipin/angular-applet/common';\nimport { UpDialogRef } from '../dialog-ref';\n\n\n@Directive({\n standalone: true,\n exportAs: 'upDialogContent',\n selector: '[upDialogContent]',\n host: {\n '[class]': '_computedClass()',\n '[attr.data-state]': 'state()',\n },\n})\nexport class UpDialogContentDirective {\n\n public readonly dialogRef = inject(UpDialogRef);\n public readonly inlineClass = input<ClassValue>('', { alias: 'class' });\n\n public readonly state = computed(\n () => this.dialogRef?.state()?? 'closed'\n );\n\n protected readonly _computedClass = computed(\n () => {\n return up(\n `\t\n grid relative gap-4 bg-white rounded-xl shadow [animation-duration:200] data-[state=open]:animate-in data-[state=closed]:animate-out \n data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 \n data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 \n data-[state=closed]:slide-out-to-top-[2%] data-[state=open]:slide-in-from-top-[2%] \n w-full max-w-[calc(100%-2rem)] mx-auto\n md:w-full md:min-w-150\n overflow-hidden outline-none\n `,\n this.inlineClass(),\n );\n }\n );\n}\n","import { computed, Directive, effect, inject, input, signal } from '@angular/core';\nimport { UpDialogRef } from '../dialog-ref';\nimport { UpDialog } from '../dialog';\n\nlet idSequence = 0;\n\n@Directive({\n standalone: true,\n exportAs: 'upDialogTrigger',\n selector: 'button[upDialogTrigger], button[upDialogTriggerFor]',\n host: {\n '[id]': 'id()',\n '(click)': 'open()',\n '[attr.data-state]': 'state()',\n },\n})\nexport class UpDialogTriggerDirective {\n\n public readonly dialogRef = inject(UpDialogRef, { optional: true });\n public dialog = inject(UpDialog, { optional: true });\n\n public readonly id = input(`up-dialog-trigger-${ idSequence++ }`);\n public readonly dialogTriggerFor = input<UpDialog | undefined>(undefined, { alias: 'upDialogTriggerFor' });\n \n public readonly mutableDialogTriggerFor = computed(\n () => signal(this.dialogTriggerFor())\n );\n \n public readonly dialogTriggerForState = computed(\n () => this.mutableDialogTriggerFor()()\n );\n \n public readonly state = computed<'open' | 'closed'>(\n () => {\n const dialogFromInput = this.dialogTriggerForState();\n if (dialogFromInput) {\n return dialogFromInput.stateComputed();\n }\n \n if (this.dialog) {\n return this.dialog.stateComputed();\n }\n \n if (this.dialogRef) {\n return this.dialogRef.state();\n }\n return 'closed';\n }\n );\n\n constructor() {\n effect(\n () => {\n const dialog = this.dialogTriggerForState();\n \n if (!dialog) {\n return;\n }\n this.dialog = dialog\n }\n )\n }\n\n public open(): void{\n this.dialog?.open();\n }\n}\n","import { computed, Directive, effect, inject, input, TemplateRef, untracked } from '@angular/core';\nimport { injectDialogContext } from './../tokens/dialog-context.token';\nimport { provideExposesStateProviderExisting } from './../utils/expose-state.util';\nimport { UpDialog } from '../dialog';\nimport { UpDialogRef } from '../dialog-ref';\n\n@Directive({\n standalone: true,\n exportAs: 'upDialogContentRef',\n selector: '[upDialogContentRef]',\n providers: [\n provideExposesStateProviderExisting(() => UpDialogContentRefDirective)\n ]\n})\nexport class UpDialogContentRefDirective<T> {\n\n public readonly template = inject(TemplateRef);\n public readonly dialog = inject(UpDialog, { optional: true });\n public readonly dialogRef = inject(UpDialogRef, { optional: true });\n public readonly dialogContext = injectDialogContext({ optional: true });\n \n public readonly context = input<T | undefined>(undefined);\n\n public readonly state = computed(\n () => this.dialog?.stateComputed()?? this.dialogRef?.state()?? 'closed'\n );\n\n constructor() {\n if (!this.dialog) {\n return;\n }\n\n this.dialog.registerTemplate(this.template);\n effect(\n () => {\n const context = this.context();\n\n if (\n !this.dialog || \n !context\n ) {\n return;\n }\n untracked(() => this.dialog?.setContext(context));\n }\n );\n }\n}\n","import { ChangeDetectionStrategy, Component, effect, forwardRef, input, output, OnDestroy, OutputRefSubscription, ViewEncapsulation } from '@angular/core';\nimport { UpDialog } from '../dialog';\n\n@Component({\n standalone: true,\n exportAs: 'upDialogWrapper',\n selector: 'up-dialog-wrapper',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n providers: [\n {\n provide: UpDialog,\n useExisting: forwardRef(() => UpDialogWrapperComponent)\n }\n ],\n template: `\n <ng-content />\n `,\n})\nexport class UpDialogWrapperComponent extends UpDialog implements OnDestroy {\n \n public readonly isOpen = input(false);\n public readonly dismissed = output<void>();\n\n protected readonly closedSubscription: OutputRefSubscription;\n\n constructor() {\n super();\n \n effect(\n () => {\n this.panelClass.set('relative!');\n \n this.state.set(\n this.isOpen()\n );\n }\n );\n\n this.closedSubscription = this.closed.subscribe(\n () => {\n this.dismissed.emit();\n }\n );\n }\n\n public ngOnDestroy(): void{\n this.closedSubscription.unsubscribe();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}