@unipin/angular-applet 21.1.0 → 21.1.3

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 (64) hide show
  1. package/README.md +334 -37
  2. package/fesm2022/unipin-angular-applet-accordion.mjs +23 -23
  3. package/fesm2022/unipin-angular-applet-accordion.mjs.map +1 -1
  4. package/fesm2022/unipin-angular-applet-alert-dialog.mjs +93 -79
  5. package/fesm2022/unipin-angular-applet-alert-dialog.mjs.map +1 -1
  6. package/fesm2022/unipin-angular-applet-alert.mjs +13 -13
  7. package/fesm2022/unipin-angular-applet-alert.mjs.map +1 -1
  8. package/fesm2022/unipin-angular-applet-approval.mjs +129 -0
  9. package/fesm2022/unipin-angular-applet-approval.mjs.map +1 -0
  10. package/fesm2022/unipin-angular-applet-auth.mjs +44 -25
  11. package/fesm2022/unipin-angular-applet-auth.mjs.map +1 -1
  12. package/fesm2022/unipin-angular-applet-avatar.mjs +4 -4
  13. package/fesm2022/unipin-angular-applet-avatar.mjs.map +1 -1
  14. package/fesm2022/unipin-angular-applet-badge.mjs +5 -5
  15. package/fesm2022/unipin-angular-applet-badge.mjs.map +1 -1
  16. package/fesm2022/unipin-angular-applet-buttons.mjs +10 -10
  17. package/fesm2022/unipin-angular-applet-buttons.mjs.map +1 -1
  18. package/fesm2022/unipin-angular-applet-calendar.mjs +25 -25
  19. package/fesm2022/unipin-angular-applet-calendar.mjs.map +1 -1
  20. package/fesm2022/unipin-angular-applet-collapsible.mjs +14 -14
  21. package/fesm2022/unipin-angular-applet-collapsible.mjs.map +1 -1
  22. package/fesm2022/unipin-angular-applet-common.mjs +60 -23
  23. package/fesm2022/unipin-angular-applet-common.mjs.map +1 -1
  24. package/fesm2022/unipin-angular-applet-containers.mjs +20 -20
  25. package/fesm2022/unipin-angular-applet-containers.mjs.map +1 -1
  26. package/fesm2022/unipin-angular-applet-dialog.mjs +74 -56
  27. package/fesm2022/unipin-angular-applet-dialog.mjs.map +1 -1
  28. package/fesm2022/unipin-angular-applet-forms.mjs +571 -256
  29. package/fesm2022/unipin-angular-applet-forms.mjs.map +1 -1
  30. package/fesm2022/unipin-angular-applet-froala.mjs +8 -8
  31. package/fesm2022/unipin-angular-applet-froala.mjs.map +1 -1
  32. package/fesm2022/unipin-angular-applet-infinite-scroll.mjs +5 -5
  33. package/fesm2022/unipin-angular-applet-infinite-scroll.mjs.map +1 -1
  34. package/fesm2022/unipin-angular-applet-json-viewer.mjs +7 -7
  35. package/fesm2022/unipin-angular-applet-json-viewer.mjs.map +1 -1
  36. package/fesm2022/unipin-angular-applet-kbd.mjs +4 -4
  37. package/fesm2022/unipin-angular-applet-kbd.mjs.map +1 -1
  38. package/fesm2022/unipin-angular-applet-loading-dialog.mjs +8 -8
  39. package/fesm2022/unipin-angular-applet-loading-dialog.mjs.map +1 -1
  40. package/fesm2022/unipin-angular-applet-markdown.mjs +17 -17
  41. package/fesm2022/unipin-angular-applet-markdown.mjs.map +1 -1
  42. package/fesm2022/unipin-angular-applet-popover.mjs +18 -18
  43. package/fesm2022/unipin-angular-applet-popover.mjs.map +1 -1
  44. package/fesm2022/unipin-angular-applet-progress-bar.mjs +7 -7
  45. package/fesm2022/unipin-angular-applet-progress-bar.mjs.map +1 -1
  46. package/fesm2022/unipin-angular-applet-skeleton.mjs +4 -4
  47. package/fesm2022/unipin-angular-applet-skeleton.mjs.map +1 -1
  48. package/fesm2022/unipin-angular-applet-spinner.mjs +5 -5
  49. package/fesm2022/unipin-angular-applet-spinner.mjs.map +1 -1
  50. package/fesm2022/unipin-angular-applet-stepper.mjs +288 -0
  51. package/fesm2022/unipin-angular-applet-stepper.mjs.map +1 -0
  52. package/fesm2022/unipin-angular-applet-swipeable.mjs +24 -24
  53. package/fesm2022/unipin-angular-applet-swipeable.mjs.map +1 -1
  54. package/fesm2022/unipin-angular-applet-tabs.mjs +19 -19
  55. package/fesm2022/unipin-angular-applet-tabs.mjs.map +1 -1
  56. package/fesm2022/unipin-angular-applet-tooltip.mjs +5 -5
  57. package/fesm2022/unipin-angular-applet-tooltip.mjs.map +1 -1
  58. package/package.json +9 -1
  59. package/types/unipin-angular-applet-alert-dialog.d.ts +12 -1
  60. package/types/unipin-angular-applet-approval.d.ts +55 -0
  61. package/types/unipin-angular-applet-common.d.ts +12 -2
  62. package/types/unipin-angular-applet-dialog.d.ts +6 -4
  63. package/types/unipin-angular-applet-forms.d.ts +118 -39
  64. package/types/unipin-angular-applet-stepper.d.ts +43 -0
@@ -69,7 +69,7 @@ class UpDialogRef {
69
69
  this.open = open;
70
70
  this.cdkDialogRef = cdkDialogRef;
71
71
  this.options = options;
72
- this.isOpen = computed(() => this.state() === 'open', { ...(ngDevMode ? { debugName: "isOpen" } : {}) });
72
+ this.isOpen = computed(() => this.state() === 'open', ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
73
73
  this.closed$ = this.cdkDialogRef.closed.pipe(take(1));
74
74
  }
75
75
  close(result, delay = this.options?.closeDelay ?? 0) {
@@ -120,9 +120,9 @@ class UpDialogService {
120
120
  dialogRef.close(result, options?.closeDelay);
121
121
  }
122
122
  };
123
- const open = signal(true, { ...(ngDevMode ? { debugName: "open" } : {}) });
123
+ const open = signal(true, ...(ngDevMode ? [{ debugName: "open" }] : []));
124
124
  const destroyed$ = new Subject();
125
- const state = computed(() => open() ? 'open' : 'closed', { ...(ngDevMode ? { debugName: "state" } : {}) });
125
+ const state = computed(() => open() ? 'open' : 'closed', ...(ngDevMode ? [{ debugName: "state" }] : []));
126
126
  dialogSequence++;
127
127
  const dialogId = options?.id ?? `up-dialog-${dialogSequence}`;
128
128
  const cdkDialogRef = this.cdkDialog.open(content, {
@@ -200,10 +200,10 @@ class UpDialogService {
200
200
  });
201
201
  return dialogRef;
202
202
  }
203
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
204
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogService, providedIn: 'root' }); }
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
205
  }
206
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogService, decorators: [{
206
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogService, decorators: [{
207
207
  type: Injectable,
208
208
  args: [{
209
209
  providedIn: 'root'
@@ -218,30 +218,29 @@ class UpDialog {
218
218
  this.positionBuilder = inject(OverlayPositionBuilder);
219
219
  this.scrollStrategyOptions = inject(ScrollStrategyOptions);
220
220
  this.defaultOptions = injectDialogDefaultOptions();
221
- this.attachTo = input(null, { ...(ngDevMode ? { debugName: "attachTo" } : {}) });
222
- this.role = input(this.defaultOptions.role, { ...(ngDevMode ? { debugName: "role" } : {}) });
223
- this.autoFocus = input(this.defaultOptions.autoFocus, { ...(ngDevMode ? { debugName: "autoFocus" } : {}) });
224
- this.restoreFocus = input(this.defaultOptions.restoreFocus, { ...(ngDevMode ? { debugName: "restoreFocus" } : {}) });
225
- this.scrollStrategy = input(this.defaultOptions.scrollStrategy, { ...(ngDevMode ? { debugName: "scrollStrategy" } : {}) });
226
- this.attachPositions = input(this.defaultOptions.attachPositions, { ...(ngDevMode ? { debugName: "attachPositions" } : {}) });
227
- this.positionStrategy = input(this.defaultOptions.positionStrategy, { ...(ngDevMode ? { debugName: "positionStrategy" } : {}) });
221
+ this.attachTo = input(null, ...(ngDevMode ? [{ debugName: "attachTo" }] : []));
222
+ this.role = input(this.defaultOptions.role, ...(ngDevMode ? [{ debugName: "role" }] : []));
223
+ this.autoFocus = input(this.defaultOptions.autoFocus, ...(ngDevMode ? [{ debugName: "autoFocus" }] : []));
224
+ this.restoreFocus = input(this.defaultOptions.restoreFocus, ...(ngDevMode ? [{ debugName: "restoreFocus" }] : []));
225
+ this.scrollStrategy = input(this.defaultOptions.scrollStrategy, ...(ngDevMode ? [{ debugName: "scrollStrategy" }] : []));
226
+ this.attachPositions = input(this.defaultOptions.attachPositions, ...(ngDevMode ? [{ debugName: "attachPositions" }] : []));
227
+ this.positionStrategy = input(this.defaultOptions.positionStrategy, ...(ngDevMode ? [{ debugName: "positionStrategy" }] : []));
228
228
  this.hasBackdrop = input(this.defaultOptions.hasBackdrop, { ...(ngDevMode ? { debugName: "hasBackdrop" } : {}), transform: booleanAttribute });
229
229
  this.disableClose = input(this.defaultOptions.disableClose, { ...(ngDevMode ? { debugName: "disableClose" } : {}), transform: booleanAttribute });
230
230
  this.closeDelay = input(this.defaultOptions.closeDelay, { ...(ngDevMode ? { debugName: "closeDelay" } : {}), transform: numberAttribute });
231
231
  this.closeOnOutsidePointerEvents = input(this.defaultOptions.closeOnOutsidePointerEvents, { ...(ngDevMode ? { debugName: "closeOnOutsidePointerEvents" } : {}), transform: booleanAttribute });
232
- this.closeOnBackdropClick = input(this.defaultOptions.closeOnBackdropClick, { ...(ngDevMode ? { debugName: "closeOnBackdropClick" } : {}), transform: booleanAttribute });
233
232
  this.closed = output();
234
233
  this.stateChanged = output();
235
- this.state = signal(false, { ...(ngDevMode ? { debugName: "state" } : {}) });
236
- this.mutableAttachTo = computed(() => signal(this.attachTo()), { ...(ngDevMode ? { debugName: "mutableAttachTo" } : {}) });
237
- this.stateComputed = computed(() => this.dialogRef?.state() ?? 'closed', { ...(ngDevMode ? { debugName: "stateComputed" } : {}) });
238
- this.mutableAttachPositions = computed(() => signal(this.attachPositions()), { ...(ngDevMode ? { debugName: "mutableAttachPositions" } : {}) });
239
- this.mutablePositionStrategy = computed(() => signal(this.positionStrategy()), { ...(ngDevMode ? { debugName: "mutablePositionStrategy" } : {}) });
240
- this.mutableCloseOnOutsidePointerEvents = computed(() => signal(this.closeOnOutsidePointerEvents()), { ...(ngDevMode ? { debugName: "mutableCloseOnOutsidePointerEvents" } : {}) });
241
- this.attachToState = computed(() => this.mutableAttachTo()(), { ...(ngDevMode ? { debugName: "attachToState" } : {}) });
242
- this.positionStrategyState = computed(() => this.mutablePositionStrategy()(), { ...(ngDevMode ? { debugName: "positionStrategyState" } : {}) });
243
- this.closeOnOutsidePointerEventsState = computed(() => this.mutableCloseOnOutsidePointerEvents()(), { ...(ngDevMode ? { debugName: "closeOnOutsidePointerEventsState" } : {}) });
244
- this.attachPositionsState = computed(() => this.mutableAttachPositions()(), { ...(ngDevMode ? { debugName: "attachPositionsState" } : {}) });
234
+ this.state = signal(false, ...(ngDevMode ? [{ debugName: "state" }] : []));
235
+ this.mutableAttachTo = computed(() => signal(this.attachTo()), ...(ngDevMode ? [{ debugName: "mutableAttachTo" }] : []));
236
+ this.stateComputed = computed(() => this.dialogRef?.state() ?? 'closed', ...(ngDevMode ? [{ debugName: "stateComputed" }] : []));
237
+ this.mutableAttachPositions = computed(() => signal(this.attachPositions()), ...(ngDevMode ? [{ debugName: "mutableAttachPositions" }] : []));
238
+ this.mutablePositionStrategy = computed(() => signal(this.positionStrategy()), ...(ngDevMode ? [{ debugName: "mutablePositionStrategy" }] : []));
239
+ this.mutableCloseOnOutsidePointerEvents = computed(() => signal(this.closeOnOutsidePointerEvents()), ...(ngDevMode ? [{ debugName: "mutableCloseOnOutsidePointerEvents" }] : []));
240
+ this.attachToState = computed(() => this.mutableAttachTo()(), ...(ngDevMode ? [{ debugName: "attachToState" }] : []));
241
+ this.positionStrategyState = computed(() => this.mutablePositionStrategy()(), ...(ngDevMode ? [{ debugName: "positionStrategyState" }] : []));
242
+ this.closeOnOutsidePointerEventsState = computed(() => this.mutableCloseOnOutsidePointerEvents()(), ...(ngDevMode ? [{ debugName: "closeOnOutsidePointerEventsState" }] : []));
243
+ this.attachPositionsState = computed(() => this.mutableAttachPositions()(), ...(ngDevMode ? [{ debugName: "attachPositionsState" }] : []));
245
244
  this.options = computed(() => {
246
245
  const scrollStrategyInput = this.scrollStrategy();
247
246
  let scrollStrategy = scrollStrategyInput;
@@ -256,14 +255,14 @@ class UpDialog {
256
255
  autoFocus: this.autoFocus(),
257
256
  restoreFocus: this.restoreFocus(),
258
257
  closeDelay: this.closeDelay(),
259
- closeOnBackdropClick: this.closeOnBackdropClick(),
258
+ closeOnBackdropClick: !this.disableClose(),
260
259
  closeOnOutsidePointerEvents: this.closeOnOutsidePointerEventsState(),
261
260
  scrollStrategy,
262
261
  positionStrategy: this.positionStrategyState(),
263
262
  attachTo: this.attachToState(),
264
263
  attachPositions: this.attachPositionsState(),
265
264
  };
266
- }, { ...(ngDevMode ? { debugName: "options" } : {}) });
265
+ }, ...(ngDevMode ? [{ debugName: "options" }] : []));
267
266
  this.context = {};
268
267
  effect(() => {
269
268
  const state = this.state();
@@ -299,7 +298,7 @@ class UpDialog {
299
298
  this.dialogStateEffectRef = effect(() => {
300
299
  const state = this.dialogRef.state();
301
300
  untracked(() => this.stateChanged.emit(state));
302
- }, { ...(ngDevMode ? { debugName: "dialogStateEffectRef" } : {}) });
301
+ }, ...(ngDevMode ? [{ debugName: "dialogStateEffectRef" }] : []));
303
302
  });
304
303
  this.dialogRef.closed$.pipe(take(1)).subscribe({
305
304
  next: (result) => {
@@ -308,12 +307,12 @@ class UpDialog {
308
307
  }
309
308
  });
310
309
  }
311
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialog, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
312
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.1", 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 }, closeOnBackdropClick: { classPropertyName: "closeOnBackdropClick", publicName: "closeOnBackdropClick", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed", stateChanged: "stateChanged" }, exportAs: ["upDialog"], ngImport: i0, template: `
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
312
  <ng-content />
314
313
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
315
314
  }
316
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialog, decorators: [{
315
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialog, decorators: [{
317
316
  type: Component,
318
317
  args: [{
319
318
  standalone: true,
@@ -325,21 +324,21 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImpor
325
324
  <ng-content />
326
325
  `,
327
326
  }]
328
- }], ctorParameters: () => [], propDecorators: { attachTo: [{ type: i0.Input, args: [{ isSignal: true, alias: "attachTo", required: false }] }], role: [{ type: i0.Input, args: [{ isSignal: true, alias: "role", required: false }] }], autoFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoFocus", required: false }] }], restoreFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "restoreFocus", required: false }] }], scrollStrategy: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollStrategy", required: false }] }], attachPositions: [{ type: i0.Input, args: [{ isSignal: true, alias: "attachPositions", required: false }] }], positionStrategy: [{ type: i0.Input, args: [{ isSignal: true, alias: "positionStrategy", required: false }] }], hasBackdrop: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasBackdrop", required: false }] }], disableClose: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableClose", required: false }] }], closeDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeDelay", required: false }] }], closeOnOutsidePointerEvents: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeOnOutsidePointerEvents", required: false }] }], closeOnBackdropClick: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeOnBackdropClick", required: false }] }], closed: [{ type: i0.Output, args: ["closed"] }], stateChanged: [{ type: i0.Output, args: ["stateChanged"] }] } });
327
+ }], ctorParameters: () => [], propDecorators: { attachTo: [{ type: i0.Input, args: [{ isSignal: true, alias: "attachTo", required: false }] }], role: [{ type: i0.Input, args: [{ isSignal: true, alias: "role", required: false }] }], autoFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "autoFocus", required: false }] }], restoreFocus: [{ type: i0.Input, args: [{ isSignal: true, alias: "restoreFocus", required: false }] }], scrollStrategy: [{ type: i0.Input, args: [{ isSignal: true, alias: "scrollStrategy", required: false }] }], attachPositions: [{ type: i0.Input, args: [{ isSignal: true, alias: "attachPositions", required: false }] }], positionStrategy: [{ type: i0.Input, args: [{ isSignal: true, alias: "positionStrategy", required: false }] }], hasBackdrop: [{ type: i0.Input, args: [{ isSignal: true, alias: "hasBackdrop", required: false }] }], disableClose: [{ type: i0.Input, args: [{ isSignal: true, alias: "disableClose", required: false }] }], closeDelay: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeDelay", required: false }] }], closeOnOutsidePointerEvents: [{ type: i0.Input, args: [{ isSignal: true, alias: "closeOnOutsidePointerEvents", required: false }] }], closed: [{ type: i0.Output, args: ["closed"] }], stateChanged: [{ type: i0.Output, args: ["stateChanged"] }] } });
329
328
 
330
329
  class UpDialogCloseDirective {
331
330
  constructor() {
332
331
  this.dialogRef = inject(UpDialogRef);
333
332
  this.inlineClass = input('', { ...(ngDevMode ? { debugName: "inlineClass" } : {}), alias: 'class' });
334
- this._computedClass = computed(() => up(this.inlineClass()), { ...(ngDevMode ? { debugName: "_computedClass" } : {}) });
333
+ this._computedClass = computed(() => up(this.inlineClass()), ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
335
334
  }
336
335
  close() {
337
336
  this.dialogRef.close(undefined);
338
337
  }
339
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogCloseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
340
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.1", 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 }); }
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
340
  }
342
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogCloseDirective, decorators: [{
341
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogCloseDirective, decorators: [{
343
342
  type: Directive,
344
343
  args: [{
345
344
  standalone: true,
@@ -355,7 +354,7 @@ class UpDialogContentDirective {
355
354
  constructor() {
356
355
  this.dialogRef = inject(UpDialogRef);
357
356
  this.inlineClass = input('', { ...(ngDevMode ? { debugName: "inlineClass" } : {}), alias: 'class' });
358
- this.state = computed(() => this.dialogRef?.state() ?? 'closed', { ...(ngDevMode ? { debugName: "state" } : {}) });
357
+ this.state = computed(() => this.dialogRef?.state() ?? 'closed', ...(ngDevMode ? [{ debugName: "state" }] : []));
359
358
  this._computedClass = computed(() => {
360
359
  return up(`
361
360
  grid relative gap-4 bg-white rounded-xl shadow [animation-duration:200] data-[state=open]:animate-in data-[state=closed]:animate-out
@@ -366,12 +365,31 @@ class UpDialogContentDirective {
366
365
  md:w-full md:min-w-[600px]
367
366
  overflow-hidden outline-none
368
367
  `, this.inlineClass());
369
- }, { ...(ngDevMode ? { debugName: "_computedClass" } : {}) });
368
+ }, ...(ngDevMode ? [{ debugName: "_computedClass" }] : []));
370
369
  }
371
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
372
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.1", 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 }); }
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
391
  }
374
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogContentDirective, decorators: [{
392
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogContentDirective, decorators: [{
375
393
  type: Directive,
376
394
  args: [{
377
395
  standalone: true,
@@ -389,10 +407,10 @@ class UpDialogTriggerDirective {
389
407
  constructor() {
390
408
  this.dialogRef = inject(UpDialogRef, { optional: true });
391
409
  this.dialog = inject(UpDialog, { optional: true });
392
- this.id = input(`up-dialog-trigger-${idSequence++}`, { ...(ngDevMode ? { debugName: "id" } : {}) });
410
+ this.id = input(`up-dialog-trigger-${idSequence++}`, ...(ngDevMode ? [{ debugName: "id" }] : []));
393
411
  this.dialogTriggerFor = input(undefined, { ...(ngDevMode ? { debugName: "dialogTriggerFor" } : {}), alias: 'upDialogTriggerFor' });
394
- this.mutableDialogTriggerFor = computed(() => signal(this.dialogTriggerFor()), { ...(ngDevMode ? { debugName: "mutableDialogTriggerFor" } : {}) });
395
- this.dialogTriggerForState = computed(() => this.mutableDialogTriggerFor()(), { ...(ngDevMode ? { debugName: "dialogTriggerForState" } : {}) });
412
+ this.mutableDialogTriggerFor = computed(() => signal(this.dialogTriggerFor()), ...(ngDevMode ? [{ debugName: "mutableDialogTriggerFor" }] : []));
413
+ this.dialogTriggerForState = computed(() => this.mutableDialogTriggerFor()(), ...(ngDevMode ? [{ debugName: "dialogTriggerForState" }] : []));
396
414
  this.state = computed(() => {
397
415
  const dialogFromInput = this.dialogTriggerForState();
398
416
  if (dialogFromInput) {
@@ -405,7 +423,7 @@ class UpDialogTriggerDirective {
405
423
  return this.dialogRef.state();
406
424
  }
407
425
  return 'closed';
408
- }, { ...(ngDevMode ? { debugName: "state" } : {}) });
426
+ }, ...(ngDevMode ? [{ debugName: "state" }] : []));
409
427
  effect(() => {
410
428
  const dialog = this.dialogTriggerForState();
411
429
  if (!dialog) {
@@ -417,10 +435,10 @@ class UpDialogTriggerDirective {
417
435
  open() {
418
436
  this.dialog?.open();
419
437
  }
420
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
421
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.1", 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 }); }
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
440
  }
423
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogTriggerDirective, decorators: [{
441
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogTriggerDirective, decorators: [{
424
442
  type: Directive,
425
443
  args: [{
426
444
  standalone: true,
@@ -440,8 +458,8 @@ class UpDialogContentRefDirective {
440
458
  this.dialog = inject(UpDialog, { optional: true });
441
459
  this.dialogRef = inject(UpDialogRef, { optional: true });
442
460
  this.dialogContext = injectDialogContext({ optional: true });
443
- this.context = input(undefined, { ...(ngDevMode ? { debugName: "context" } : {}) });
444
- this.state = computed(() => this.dialog?.stateComputed() ?? this.dialogRef?.state() ?? 'closed', { ...(ngDevMode ? { debugName: "state" } : {}) });
461
+ this.context = input(undefined, ...(ngDevMode ? [{ debugName: "context" }] : []));
462
+ this.state = computed(() => this.dialog?.stateComputed() ?? this.dialogRef?.state() ?? 'closed', ...(ngDevMode ? [{ debugName: "state" }] : []));
445
463
  if (!this.dialog) {
446
464
  return;
447
465
  }
@@ -455,12 +473,12 @@ class UpDialogContentRefDirective {
455
473
  untracked(() => this.dialog?.setContext(context));
456
474
  });
457
475
  }
458
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogContentRefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
459
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.0.1", type: UpDialogContentRefDirective, isStandalone: true, selector: "[upDialogContentRef]", inputs: { context: { classPropertyName: "context", publicName: "context", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
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
478
  provideExposesStateProviderExisting(() => UpDialogContentRefDirective)
461
479
  ], exportAs: ["upDialogContentRef"], ngImport: i0 }); }
462
480
  }
463
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogContentRefDirective, decorators: [{
481
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogContentRefDirective, decorators: [{
464
482
  type: Directive,
465
483
  args: [{
466
484
  standalone: true,
@@ -475,7 +493,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImpor
475
493
  class UpDialogWrapperComponent extends UpDialog {
476
494
  constructor() {
477
495
  super();
478
- this.isOpen = input(false, { ...(ngDevMode ? { debugName: "isOpen" } : {}) });
496
+ this.isOpen = input(false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
479
497
  this.dismissed = output();
480
498
  effect(() => {
481
499
  this.state.set(this.isOpen());
@@ -487,8 +505,8 @@ class UpDialogWrapperComponent extends UpDialog {
487
505
  ngOnDestroy() {
488
506
  this.closedSubscription.unsubscribe();
489
507
  }
490
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
491
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.0.1", type: UpDialogWrapperComponent, isStandalone: true, selector: "up-dialog-wrapper", inputs: { isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { dismissed: "dismissed" }, providers: [
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: [
492
510
  {
493
511
  provide: UpDialog,
494
512
  useExisting: forwardRef(() => UpDialogWrapperComponent)
@@ -497,7 +515,7 @@ class UpDialogWrapperComponent extends UpDialog {
497
515
  <ng-content />
498
516
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
499
517
  }
500
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.1", ngImport: i0, type: UpDialogWrapperComponent, decorators: [{
518
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.6", ngImport: i0, type: UpDialogWrapperComponent, decorators: [{
501
519
  type: Component,
502
520
  args: [{
503
521
  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 public readonly closeOnBackdropClick = input(\n this.defaultOptions.closeOnBackdropClick,\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.closeOnBackdropClick(),\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 { 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@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\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}\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\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":";;;;;;;AAEO,MAAM,oBAAoB,GAAoB;AACnD,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,WAAW,EAAE,IAAI;AACjB,IAAA,YAAY,EAAE,KAAK;AACnB,IAAA,SAAS,EAAE,gBAAgB;AAE3B,IAAA,YAAY,EAAE,IAAI;AAElB,IAAA,UAAU,EAAE,EAAE;AACd,IAAA,oBAAoB,EAAE,IAAI;AAC1B,IAAA,2BAA2B,EAAE,KAAK;AAElC,IAAA,cAAc,EAAE,IAAI;AAEpB,IAAA,eAAe,EAAE,EAAE;;;MCbR,mBAAmB,GAAG,CAAsB,OAAA,GAAyB,EAAE,KAAI;AACtF,IAAA,OAAO,MAAM,CAAC,WAAW,EAAE,OAAO,CAAkB;AACtD;;ACDA,MAAM,eAAe,GAAG,IAAI,cAAc,CACxC,2BAA2B,EAC3B;AACE,IAAA,UAAU,EAAE,MAAM;AAClB,IAAA,OAAO,EAAE,MAAM,oBAAoB;AACpC,CAAA,CACF;AAEK,SAAU,2BAA2B,CAAC,OAAiC,EAAA;IAC3E,OAAO;AACL,QAAA,OAAO,EAAE,eAAe;AACxB,QAAA,QAAQ,EAAE;AACR,YAAA,GAAG,oBAAoB;AACvB,YAAA,GAAG;AACJ,SAAA;KACF;AACH;SAEgB,0BAA0B,GAAA;AACxC,IAAA,MAAM,IAAI,GAAG,MAAM,CACjB,eAAe,EACf;AACE,QAAA,QAAQ,EAAE;AACX,KAAA,CACF;IACD,OAAO,IAAI,IAAG,oBAAoB;AACpC;;ACXM,SAAU,oBAAoB,CAAc,WAAmB,EAAA;AAEnE,IAAA,MAAM,KAAK,GAAG,IAAI,cAAc,CAAc,WAAW,CAAC;AAE1D,IAAA,MAAM,SAAS,GAAG,CAAC,KAAkB,KAAI;QACvC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE;AAC5C,IAAA,CAAC;AAED,IAAA,MAAM,iBAAiB,GAAG,CAAC,KAAwB,KAAI;AACrD,QAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE;AAC3D,IAAA,CAAC;AAED,IAAA,MAAM,QAAQ,GAAG,CAAC,OAAA,GAAyB,EAAE,KAAI;AAC/C,QAAA,OAAO,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;AAC/B,IAAA,CAAC;IAED,OAAO;QACL,QAAQ;QACR,SAAS;QACT,iBAAiB;QACjB,KAAK;KACqC;AAC9C;;AClCO,MAAM,CACX,0BAA0B,EAC1B,2BAA2B,EAC3B,mCAAmC,EACnC,mBAAmB,EACpB,GAAG,oBAAoB,CAAe,qCAAqC;;MCP/D,WAAW,CAAA;AAUtB,IAAA,WAAA,CACkB,KAAgC,EAE7B,IAA6B,EAC7B,YAAqC,EACrC,OAAyB,EAAA;QAJ5B,IAAA,CAAA,KAAK,GAAL,KAAK;QAEF,IAAA,CAAA,IAAI,GAAJ,IAAI;QACJ,IAAA,CAAA,YAAY,GAAZ,YAAY;QACZ,IAAA,CAAA,OAAO,GAAP,OAAO;AAXZ,QAAA,IAAA,CAAA,MAAM,GAAG,QAAQ,CAC/B,MAAM,IAAI,CAAC,KAAK,EAAE,KAAK,MAAM,kDAC9B;AAWC,QAAA,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACvD;IAEO,KAAK,CAAC,MAAqB,EAAE,KAAA,GAAgB,IAAI,CAAC,OAAO,EAAE,UAAU,IAAI,CAAC,EAAA;AAC/E,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE;YAClB;QACF;AACA,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;AACpB,QAAA,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC;AAElC,QAAA,IAAI,CAAC,eAAe,GAAG,UAAU,CAC/B,MAAK;AACH,YAAA,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;QACjC,CAAC,EACD,KAAK,CACN;IACH;AACD;;AC/BD,IAAI,cAAc,GAAG,CAAC;MAaT,eAAe,CAAA;AAH5B,IAAA,WAAA,GAAA;AAKkB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;AAC1B,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC3B,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC1C,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,sBAAsB,CAAC;AAChD,QAAA,IAAA,CAAA,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAErD,IAAA,CAAA,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC;AA+J3E,IAAA;IA7JQ,IAAI,CAAgB,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAoC,EAAA;QAC7F,IACE,OAAO,EAAE,EAAE;YACX,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,EACxC;YACA,MAAM,IAAI,KAAK,CAAC,CAAA,gBAAA,EAAoB,OAAO,CAAC,EAAG,CAAA,eAAA,CAAiB,CAAC;QACnE;AAEA,QAAA,IAAI,gBAAgB,GAAG,OAAO,EAAE,gBAAgB;QAChD,IAAI,CAAC,gBAAgB,EAAE;YACrB,IACE,OAAO,EAAE,QAAQ;AACjB,gBAAA,OAAO,EAAE,eAAe;AACxB,gBAAA,OAAO,EAAE,eAAe,EAAE,MAAM,GAAG,CAAC,EACpC;gBACA,gBAAgB,GAAG,IAAI,CAAC,eAAe,EAAE,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,eAAe,IAAG,EAAE,CAAC;YAC5H;iBAAO;AACL,gBAAA,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM;AAC3C,qBAAA,kBAAkB;AAClB,qBAAA,gBAAgB,EAAE;YACvB;QACF;AAEA,QAAA,IAAI,SAAqB;AACzB,QAAA,IAAI,SAAuB;AAE3B,QAAA,MAAM,aAAa,GAAyB;AAC1C,YAAA,GAAG,OAAO;AACV,YAAA,KAAK,EAAE,CAAC,MAAA,GAAc,SAAS,KAAI;gBACjC,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,CAAC;YAC9C;SACD;AAED,QAAA,MAAM,IAAI,GAAG,MAAM,CAAU,IAAI,gDAAC;AAClC,QAAA,MAAM,UAAU,GAAG,IAAI,OAAO,EAAQ;AAEtC,QAAA,MAAM,KAAK,GAAG,QAAQ,CACpB,MAAM,IAAI,EAAE,GAAG,MAAM,GAAG,QAAQ,iDACjC;AAED,QAAA,cAAc,EAAE;QAChB,MAAM,QAAQ,GAAG,OAAO,EAAE,EAAE,IAAG,CAAA,UAAA,EAAc,cAAe,CAAA,CAAE;QAE9D,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CACtC,OAAc,EACd;AACE,YAAA,EAAE,EAAE,QAAQ;YACZ,IAAI,EAAE,OAAO,EAAE,IAAI;AACnB,YAAA,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,OAAO,EAAE,WAAW;AACjC,YAAA,aAAa,EAAE,EAAE,CAAC,aAAa,CAAC;AAEhC,YAAA,SAAS,EAAE,OAAO,EAAE,SAAS,IAAG,gBAAgB;AAChD,YAAA,YAAY,EAAE,OAAO,EAAE,YAAY,YAAY,UAAU,GAAE,OAAO,CAAC,YAAY,CAAC,aAAa,GAAG,OAAO,EAAE,YAAY;AAErH,YAAA,YAAY,EAAE,IAAI;AAClB,YAAA,gBAAgB,EAAE,GAAG;YAErB,gBAAgB;AAChB,YAAA,cAAc,GAAG,OAAO,EAAE,cAAc,IAAG,IAAI,CAAC,qBAAqB,EAAE,KAAK,EAAE,CAAmB;YAEjG,eAAe,EAAE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC;AAErD,YAAA,SAAS,EAAE,CAAC,YAAY,KAAI;AAC1B,gBAAA,SAAS,GAAG,IAAI,WAAW,CACzB,KAAK,EACL,IAAI,EACJ,YAAY,EACZ,OAA0B,CAC3B;AAED,gBAAA,qBAAqB,CACnB,IAAI,CAAC,QAAQ,EACb,MAAK;AACH,oBAAA,SAAS,GAAG,MAAM,CAChB,MAAK;wBACH,IAAI,OAAO,EAAE;AACX,4BAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;wBAC5D;wBAEA,IAAI,QAAQ,EAAE;AACZ,4BAAA,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC;wBAC7D;AACF,oBAAA,CAAC,CACF;AACH,gBAAA,CAAC,CACF;AAED,gBAAA,MAAM,SAAS,GAAqB;AAClC,oBAAA;AACE,wBAAA,OAAO,EAAE,WAAW;AACpB,wBAAA,QAAQ,EAAE,SAAS;AACpB,qBAAA;iBACF;AAED,gBAAA,IAAI,OAAO,EAAE,SAAS,EAAE;AACtB,oBAAA,IAAI,OAAO,OAAO,CAAC,SAAS,KAAK,UAAU,EAAE;wBAC3C,SAAS,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;oBACxC;oBAEA,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;wBACpC,SAAS,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC;oBACtC;gBACF;AAEA,gBAAA,OAAO,SAAS;YAClB,CAAC;AACF,SAAA,CACF;AAED,QAAA,MAAM,OAAO,GAAG,YAAY,CAAC,UAAU,CAAC,cAAc;AACtD,QAAA,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,eAAe;AAExD,QAAA,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE;YAC1B,YAAY,CAAC,aAAa,CAAC,IAAI,CAC7B,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,EACjC,SAAS,CAAC,UAAU,CAAC,CACtB,CAAC,SAAS,CAAC;gBACV,IAAI,EAAE,MAAK;oBACT,SAAS,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;gBACjD;AACD,aAAA,CAAC;QACJ;AAEA,QAAA,IAAI,OAAO,EAAE,2BAA2B,EAAE;YACxC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CACpC,SAAS,CAAC,UAAU,CAAC;AAEtB,iBAAA,SAAS,CAAC;gBACT,IAAI,EAAE,MAAK;oBACT,SAAS,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;gBACjD;AACD,aAAA,CAAC;QACJ;AAEA,QAAA,IAAI,OAAO,EAAE,oBAAoB,EAAE;AACjC,YAAA,YAAY,CAAC,aAAa,CAAC,IAAI,CAC7B,SAAS,CAAC,UAAU,CAAC,CACtB,CAAC,SAAS,CAAC;gBACV,IAAI,EAAE,MAAK;oBACT,SAAS,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,EAAE,UAAU,CAAC;gBACjD;AACD,aAAA,CAAC;QACJ;AAEA,QAAA,YAAY,CAAC,MAAM,CAAC,IAAI,CACtB,SAAS,CAAC,UAAU,CAAC,CACtB,CAAC,SAAS,CAAC;YACV,IAAI,EAAE,MAAK;gBACT,SAAS,EAAE,OAAO,EAAE;gBAEpB,UAAU,CAAC,IAAI,EAAE;gBACjB,UAAU,CAAC,QAAQ,EAAE;YACvB;AACD,SAAA,CAAC;AACF,QAAA,OAAO,SAAS;IAClB;8GAtKW,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAAf,IAAA,SAAA,IAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,eAAe,cAFd,MAAM,EAAA,CAAA,CAAA;;2FAEP,eAAe,EAAA,UAAA,EAAA,CAAA;kBAH3B,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE;AACb,iBAAA;;;MCFY,QAAQ,CAAA;AAkGnB,IAAA,WAAA,GAAA;AAhGgB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAC3B,QAAA,IAAA,CAAA,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC;AACvC,QAAA,IAAA,CAAA,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;AAC3C,QAAA,IAAA,CAAA,eAAe,GAAG,MAAM,CAAC,sBAAsB,CAAC;AAChD,QAAA,IAAA,CAAA,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,CAAC;QAErD,IAAA,CAAA,cAAc,GAAG,0BAA0B,EAAE;AAE7C,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAA8B,IAAI,oDAAC;QACnD,IAAA,CAAA,IAAI,GAAG,KAAK,CAA0B,IAAI,CAAC,cAAc,CAAC,IAAI,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,MAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;QAC/D,IAAA,CAAA,SAAS,GAAG,KAAK,CAA+B,IAAI,CAAC,cAAc,CAAC,SAAS,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,WAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;QAC9E,IAAA,CAAA,YAAY,GAAG,KAAK,CAAkC,IAAI,CAAC,cAAc,CAAC,YAAY,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,cAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;QACvF,IAAA,CAAA,cAAc,GAAG,KAAK,CAAoC,IAAI,CAAC,cAAc,CAAC,cAAc,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,gBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;QAC7F,IAAA,CAAA,eAAe,GAAG,KAAK,CAAqC,IAAI,CAAC,cAAc,CAAC,eAAe,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,iBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;QAChG,IAAA,CAAA,gBAAgB,GAAG,KAAK,CAAsC,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,kBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AAEnG,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CACjC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,aAAA,EAAA,GAAA,EAAA,CAAA,EAE7B,SAAS,EAAE,gBAAgB,GAE9B;AACe,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAClC,IAAI,CAAC,cAAc,CAAC,YAAY,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,cAAA,EAAA,GAAA,EAAA,CAAA,EAE9B,SAAS,EAAE,gBAAgB,GAE9B;AACe,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAChC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,YAAA,EAAA,GAAA,EAAA,CAAA,EAE5B,SAAS,EAAE,eAAe,GAE7B;AACe,QAAA,IAAA,CAAA,2BAA2B,GAAG,KAAK,CACjD,IAAI,CAAC,cAAc,CAAC,2BAA2B,EAAA,EAAA,IAAA,SAAA,GAAA,EAAA,SAAA,EAAA,6BAAA,EAAA,GAAA,EAAA,CAAA,EAE7C,SAAS,EAAE,gBAAgB,GAE9B;QAEe,IAAA,CAAA,MAAM,GAAG,MAAM,EAAO;QACtB,IAAA,CAAA,YAAY,GAAG,MAAM,EAAqB;AAE1C,QAAA,IAAA,CAAA,KAAK,GAA4B,MAAM,CAAC,KAAK,iDAAC;AAE9C,QAAA,IAAA,CAAA,eAAe,GAAG,QAAQ,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,2DAAC;AACzD,QAAA,IAAA,CAAA,aAAa,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,IAAG,QAAQ,yDAAC;AAClE,QAAA,IAAA,CAAA,sBAAsB,GAAG,QAAQ,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,kEAAC;AACvE,QAAA,IAAA,CAAA,uBAAuB,GAAG,QAAQ,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,mEAAC;AACzE,QAAA,IAAA,CAAA,kCAAkC,GAAG,QAAQ,CAAC,MAAM,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,CAAC,8EAAC;AAI5F,QAAA,IAAA,CAAA,aAAa,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,eAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AACxD,QAAA,IAAA,CAAA,qBAAqB,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,uBAAuB,EAAE,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,uBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AACxE,QAAA,IAAA,CAAA,gCAAgC,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,kCAAkC,EAAE,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,kCAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AAC9F,QAAA,IAAA,CAAA,oBAAoB,GAAG,QAAQ,CAAC,MAAM,IAAI,CAAC,sBAAsB,EAAE,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,sBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CAAC;AAEtE,QAAA,IAAA,CAAA,OAAO,GAAG,QAAQ,CACnC,MAAK;AACH,YAAA,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,EAAE;YAEjD,IAAI,cAAc,GAAmB,mBAAqC;YAC1E,IACE,mBAAmB,KAAK,OAAO;gBAC/B,mBAAmB,KAAK,YAAY,EACpC;gBACA,cAAc,GAAG,IAAI,CAAC,qBAAqB,CAAC,mBAA6C,CAAC,EAAE;YAC9F;YAEA,OAAO;AACL,gBAAA,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;AACjB,gBAAA,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;AAC/B,gBAAA,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE;AAEjC,gBAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;AAC3B,gBAAA,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE;AAEjC,gBAAA,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;AAC7B,gBAAA,oBAAoB,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE;AAC1C,gBAAA,2BAA2B,EAAE,IAAI,CAAC,gCAAgC,EAAE;gBAEpE,cAAc;AACd,gBAAA,gBAAgB,EAAE,IAAI,CAAC,qBAAqB,EAAE;AAE9C,gBAAA,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE;AAC9B,gBAAA,eAAe,EAAE,IAAI,CAAC,oBAAoB,EAAE;aAC7C;AACH,QAAA,CAAC,mDACF;QAES,IAAA,CAAA,OAAO,GAAG,EAAE;QAKpB,MAAM,CACJ,MAAK;AACH,YAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE;YAC1B,SAAS,CAAC,OAAO,KAAK,GAAE,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;AACtD,QAAA,CAAC,CACF;IACH;IAEO,KAAK,CAAC,MAAY,EAAE,KAAc,EAAA;AACvC,QAAA,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,IAAG,IAAI,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC;IAClE;AAEO,IAAA,gBAAgB,CAAC,QAA8B,EAAA;AACpD,QAAA,IAAI,CAAC,eAAe,GAAG,QAAQ;IACjC;;AAGO,IAAA,UAAU,CAAmB,OAAU,EAAA;QAC5C,IAAI,CAAC,OAAO,GAAG;YACb,GAAG,IAAI,CAAC,OAAO;AACf,YAAA,GAAG;SACJ;IACH;IAEO,IAAI,GAAA;QACT,IACE,CAAC,IAAI,CAAC,eAAe;YACrB,IAAI,CAAC,SAAS,EACd;YACA;QACF;AACA,QAAA,IAAI,CAAC,oBAAoB,EAAE,OAAO,EAAE;QAEpC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CACtC;YACE,OAAO,EAAE,IAAI,CAAC,eAAe;YAC7B,GAAG,EAAE,IAAI,CAAC,gBAAgB;YAC1B,OAAO,EAAE,IAAI,CAAC,OAAwB;AACtC,YAAA,OAAO,EAAE,IAAI,CAAC,OAAO;AACtB,SAAA,CACF;AAED,QAAA,qBAAqB,CACnB,IAAI,CAAC,QAAQ,EACb,MAAK;AACH,YAAA,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAChC,MAAK;gBACH,MAAM,KAAK,GAAG,IAAI,CAAC,SAAU,CAAC,KAAK,EAAE;AACrC,gBAAA,SAAS,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChD,YAAA,CAAC,gEACF;AACH,QAAA,CAAC,CACF;AAED,QAAA,IAAI,CAAC,SAAU,CAAC,OAAO,CAAC,IAAI,CAC1B,IAAI,CAAC,CAAC,CAAC,CACR,CAAC,SAAS,CAAC;AACV,YAAA,IAAI,EAAE,CAAC,MAAM,KAAI;AACf,gBAAA,IAAI,CAAC,SAAS,GAAG,SAAS;AAC1B,gBAAA,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YAC1B;AACD,SAAA,CAAC;IACJ;8GAjKW,QAAQ,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAR,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAQ,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,EAAA,QAAA,EAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,UAAA,EAAA,UAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,IAAA,EAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,iBAAA,EAAA,WAAA,EAAA,UAAA,EAAA,WAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,cAAA,EAAA,EAAA,iBAAA,EAAA,gBAAA,EAAA,UAAA,EAAA,gBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,eAAA,EAAA,EAAA,iBAAA,EAAA,iBAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,kBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,YAAA,EAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,cAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,iBAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,2BAAA,EAAA,EAAA,iBAAA,EAAA,6BAAA,EAAA,UAAA,EAAA,6BAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,YAAA,EAAA,cAAA,EAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAJT;;AAET,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAEU,QAAQ,EAAA,UAAA,EAAA,CAAA;kBAVpB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,QAAQ,EAAE,WAAW;oBACrB,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,QAAQ,EAAE;;AAET,EAAA,CAAA;AACF,iBAAA;;;MCJY,sBAAsB,CAAA;AARnC,IAAA,WAAA,GAAA;AAUkB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC;QAC/B,IAAA,CAAA,WAAW,GAAG,KAAK,CAAa,EAAE,wDAAI,KAAK,EAAE,OAAO,EAAA,CAAG;AAErD,QAAA,IAAA,CAAA,cAAc,GAAG,QAAQ,CACzC,MAAM,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,0DAC7B;AAKF,IAAA;IAHO,KAAK,GAAA;AACX,QAAA,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC;IAChC;8GAXY,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBARlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,uBAAuB;AACjC,oBAAA,IAAI,EAAE;AACJ,wBAAA,SAAS,EAAE,kBAAkB;AAC7B,wBAAA,SAAS,EAAE,SAAS;AACrB;AACF,iBAAA;;;MCEY,wBAAwB,CAAA;AATrC,IAAA,WAAA,GAAA;AAWkB,QAAA,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,WAAW,CAAC;QAE/B,IAAA,CAAA,WAAW,GAAG,KAAK,CAAa,EAAE,wDAAI,KAAK,EAAE,OAAO,EAAA,CAAG;AAEvD,QAAA,IAAA,CAAA,KAAK,GAAG,QAAQ,CAC9B,MAAM,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,IAAG,QAAQ,iDACzC;AAEkB,QAAA,IAAA,CAAA,cAAc,GAAG,QAAQ,CAC1C,MAAK;AACH,YAAA,OAAO,EAAE,CACP,CAAA;;;;;;;;AAQC,QAAA,CAAA,EACD,IAAI,CAAC,WAAW,EAAE,CACnB;AACH,QAAA,CAAC,0DACF;AA+BF,IAAA;IA5BQ,eAAe,GAAA;QACpB,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,mBAAmB,CAAgB;QACvE,IAAI,CAAC,IAAI,EAAE;YACT;QACF;QAEA,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC;QACxD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC;AAE3D,QAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,gBAAgB,CAC3C,MAAK;YACH,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC;YAC3D,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,EAAE,WAAW,CAAC;AAC1D,QAAA,CAAC,CACF;AAED,QAAA,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAC5B,IAAI,EACJ;AACE,YAAA,UAAU,EAAE,IAAI;YAChB,eAAe,EAAE,CAAC,OAAO,CAAC;AAC3B,SAAA,CACF;IACH;IAEO,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE;IACrC;8GAvDW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,UAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,OAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBATpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,IAAI,EAAE;AACJ,wBAAA,SAAS,EAAE,kBAAkB;AAC7B,wBAAA,mBAAmB,EAAE,SAAS;AAC/B,qBAAA;AACF,iBAAA;;;ACTD,IAAI,UAAU,GAAG,CAAC;MAYL,wBAAwB,CAAA;AAkCnC,IAAA,WAAA,GAAA;QAhCgB,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC5D,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAEpC,IAAA,CAAA,EAAE,GAAG,KAAK,CAAC,CAAA,kBAAA,EAAsB,UAAU,EAAG,CAAA,CAAE,8CAAC;QACjD,IAAA,CAAA,gBAAgB,GAAG,KAAK,CAAuB,SAAS,6DAAI,KAAK,EAAE,oBAAoB,EAAA,CAAG;AAE1F,QAAA,IAAA,CAAA,uBAAuB,GAAG,QAAQ,CAChD,MAAM,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,mEACtC;AAEe,QAAA,IAAA,CAAA,qBAAqB,GAAG,QAAQ,CAC9C,MAAM,IAAI,CAAC,uBAAuB,EAAE,EAAE,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,uBAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CACvC;AAEe,QAAA,IAAA,CAAA,KAAK,GAAG,QAAQ,CAC9B,MAAK;AACH,YAAA,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,EAAE;YACpD,IAAI,eAAe,EAAE;AACnB,gBAAA,OAAO,eAAe,CAAC,aAAa,EAAE;YACxC;AAEA,YAAA,IAAI,IAAI,CAAC,MAAM,EAAE;AACf,gBAAA,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE;YACpC;AAEA,YAAA,IAAI,IAAI,CAAC,SAAS,EAAE;AAClB,gBAAA,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;YAC/B;AACA,YAAA,OAAO,QAAQ;AACjB,QAAA,CAAC,iDACF;QAGC,MAAM,CACJ,MAAK;AACH,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,EAAE;YAE3C,IAAI,CAAC,MAAM,EAAE;gBACX;YACF;AACA,YAAA,IAAI,CAAC,MAAM,GAAG,MAAM;AACtB,QAAA,CAAC,CACF;IACH;IAEO,IAAI,GAAA;AACT,QAAA,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE;IACrB;8GAjDW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAxB,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qDAAA,EAAA,MAAA,EAAA,EAAA,EAAA,EAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,gBAAA,EAAA,EAAA,iBAAA,EAAA,kBAAA,EAAA,UAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,OAAA,EAAA,QAAA,EAAA,EAAA,UAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,EAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAVpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,qDAAqD;AAC/D,oBAAA,IAAI,EAAE;AACJ,wBAAA,MAAM,EAAE,MAAM;AACd,wBAAA,SAAS,EAAE,QAAQ;AACnB,wBAAA,mBAAmB,EAAE,SAAS;AAC/B,qBAAA;AACF,iBAAA;;;MCDY,2BAA2B,CAAA;AAatC,IAAA,WAAA,GAAA;AAXgB,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC;QAC9B,IAAA,CAAA,MAAM,GAAG,MAAM,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QAC7C,IAAA,CAAA,SAAS,GAAG,MAAM,CAAC,WAAW,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;QACnD,IAAA,CAAA,aAAa,GAAG,mBAAmB,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAEvD,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAgB,SAAS,mDAAC;QAEzC,IAAA,CAAA,KAAK,GAAG,QAAQ,CAC9B,MAAM,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE,IAAG,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,IAAG,QAAQ,EAAA,IAAA,SAAA,GAAA,CAAA,EAAA,SAAA,EAAA,OAAA,EAAA,CAAA,GAAA,EAAA,CAAA,CACxE;AAGC,QAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YAChB;QACF;QAEA,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC3C,MAAM,CACJ,MAAK;AACH,YAAA,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,EAAE;YAE9B,IACE,CAAC,IAAI,CAAC,MAAM;gBACZ,CAAC,OAAO,EACR;gBACA;YACF;AACA,YAAA,SAAS,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;AACnD,QAAA,CAAC,CACF;IACH;8GAhCW,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA3B,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,MAAA,EAAA,EAAA,OAAA,EAAA,EAAA,iBAAA,EAAA,SAAA,EAAA,UAAA,EAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,SAAA,EAJ3B;AACT,YAAA,mCAAmC,CAAC,MAAM,2BAA2B;AACtE,SAAA,EAAA,QAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAEU,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBARvC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,QAAQ,EAAE,sBAAsB;AAChC,oBAAA,SAAS,EAAE;AACT,wBAAA,mCAAmC,CAAC,MAAK,2BAA4B;AACtE;AACF,iBAAA;;;ACMK,MAAO,wBAAyB,SAAQ,QAAQ,CAAA;AAOpD,IAAA,WAAA,GAAA;AACE,QAAA,KAAK,EAAE;AANO,QAAA,IAAA,CAAA,MAAM,GAAG,KAAK,CAAC,KAAK,kDAAC;QACrB,IAAA,CAAA,SAAS,GAAG,MAAM,EAAQ;QAOxC,MAAM,CACJ,MAAK;YACH,IAAI,CAAC,KAAK,CAAC,GAAG,CACZ,IAAI,CAAC,MAAM,EAAE,CACd;AACH,QAAA,CAAC,CACF;QAED,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAC7C,MAAK;AACH,YAAA,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;AACvB,QAAA,CAAC,CACF;IACH;IAEO,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE;IACvC;8GA3BW,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAxB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,wBAAwB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,EAAA,iBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAA,EAAA,KAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,EAAA,EAAA,OAAA,EAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,SAAA,EAVxB;AACT,YAAA;AACE,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,WAAW,EAAE,UAAU,CAAC,MAAM,wBAAwB;AACvD;SACF,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,eAAA,EAAA,IAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EACS;;AAET,EAAA,CAAA,EAAA,QAAA,EAAA,IAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;;2FAEU,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAhBpC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,UAAU,EAAE,IAAI;AAChB,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,QAAQ,EAAE,mBAAmB;oBAC7B,aAAa,EAAE,iBAAiB,CAAC,IAAI;oBACrC,eAAe,EAAE,uBAAuB,CAAC,MAAM;AAC/C,oBAAA,SAAS,EAAE;AACT,wBAAA;AACE,4BAAA,OAAO,EAAE,QAAQ;AACjB,4BAAA,WAAW,EAAE,UAAU,CAAC,8BAA8B;AACvD;AACF,qBAAA;AACD,oBAAA,QAAQ,EAAE;;AAET,EAAA,CAAA;AACF,iBAAA;;;AClBD;;AAEG;;;;"}