@ngrdt/button 0.0.36 → 0.0.37

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, inject, output, Directive, ElementRef, Renderer2, input, booleanAttribute, linkedSignal, numberAttribute, computed, afterRenderEffect, EventEmitter, Output } from '@angular/core';
2
+ import { InjectionToken, inject, output, Directive, ElementRef, Renderer2, input, linkedSignal, booleanAttribute, numberAttribute, computed, afterRenderEffect, EventEmitter, Output } from '@angular/core';
3
3
  import { RdtComponentOutletDirective, RdtInteractiveElementComponent } from '@ngrdt/core';
4
4
  import { PlatformLocation } from '@angular/common';
5
5
  import { Router } from '@angular/router';
@@ -10,14 +10,15 @@ const RDT_BUTTON_BASE_PROVIDER = new InjectionToken('RdtButton');
10
10
 
11
11
  class RdtButtonOutletDirective extends RdtComponentOutletDirective {
12
12
  componentClass = inject(RDT_BUTTON_BASE_PROVIDER);
13
- click$ = output();
13
+ // eslint-disable-next-line @angular-eslint/no-output-native
14
+ click = output();
14
15
  constructor() {
15
16
  super();
16
17
  this.initComponentRef();
17
- this.componentRef?.instance.click$.subscribe((evt) => this.click$.emit(evt));
18
+ this.componentRef?.instance.click.subscribe((evt) => this.click.emit(evt));
18
19
  }
19
20
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: RdtButtonOutletDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
20
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.0.0", type: RdtButtonOutletDirective, isStandalone: true, selector: "[rdtButtonOutlet]", outputs: { click$: "click$" }, exportAs: ["rdtButtonOutlet"], usesInheritance: true, ngImport: i0 });
21
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.0.0", type: RdtButtonOutletDirective, isStandalone: true, selector: "[rdtButtonOutlet]", outputs: { click: "click" }, exportAs: ["rdtButtonOutlet"], usesInheritance: true, ngImport: i0 });
21
22
  }
22
23
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: RdtButtonOutletDirective, decorators: [{
23
24
  type: Directive,
@@ -42,6 +43,10 @@ class RdtButtonBase extends RdtInteractiveElementComponent {
42
43
  internalDisabledMap = {};
43
44
  internalLoadingMap = {};
44
45
  // Inputs
46
+ typeInput = input('button', {
47
+ alias: 'type',
48
+ });
49
+ type = linkedSignal(() => this.typeInput());
45
50
  propagateInput = input(false, {
46
51
  transform: booleanAttribute,
47
52
  alias: 'propagate',
@@ -103,7 +108,12 @@ class RdtButtonBase extends RdtInteractiveElementComponent {
103
108
  ariaRenderEffect = afterRenderEffect({
104
109
  write: () => this.updateAriaAttributes(this.aria()),
105
110
  });
111
+ /**
112
+ * @deprecated Use `click` signal output instead
113
+ */
106
114
  click$ = new EventEmitter();
115
+ // eslint-disable-next-line @angular-eslint/no-output-native
116
+ click = output();
107
117
  focus() {
108
118
  this.focusElement()?.focus();
109
119
  }
@@ -113,21 +123,24 @@ class RdtButtonBase extends RdtInteractiveElementComponent {
113
123
  onClicked($event) {
114
124
  const onlineEnabled$ = this.onlineEnabled$();
115
125
  const disabled = this.disabled();
126
+ const propagate = this.propagate();
116
127
  if (onlineEnabled$) {
117
128
  if (disabled) {
118
129
  return;
119
130
  }
120
- $event.stopPropagation();
131
+ if (!propagate) {
132
+ $event.stopPropagation();
133
+ }
121
134
  this.setDisabledState(true, RdtButtonBase.ONLINE_ENABLED_KEY);
122
135
  this.setLoadingState(true, RdtButtonBase.ONLINE_ENABLED_KEY);
123
136
  const observer = {
124
137
  next: () => {
125
- this.onClickPermissionAllowed($event);
126
138
  this.finishOnlineCheck();
139
+ this.onClickPermissionAllowed($event);
127
140
  },
128
141
  error: (error) => {
129
- this.notifyAccessDenied(error);
130
142
  this.finishOnlineCheck();
143
+ this.notifyAccessDenied(error);
131
144
  },
132
145
  complete: () => this.finishOnlineCheck(),
133
146
  };
@@ -148,14 +161,11 @@ class RdtButtonBase extends RdtInteractiveElementComponent {
148
161
  }
149
162
  if (!disabled && !ngHref && !href) {
150
163
  this.click$.emit($event);
164
+ this.click.emit($event);
151
165
  }
152
166
  }
153
167
  onClickPermissionAllowed($event) {
154
- const propagate = this.propagate();
155
168
  const disabled = this.disabled();
156
- if (!propagate) {
157
- $event.stopPropagation();
158
- }
159
169
  if (!disabled) {
160
170
  this.navigateOrEmit($event);
161
171
  }
@@ -185,6 +195,7 @@ class RdtButtonBase extends RdtInteractiveElementComponent {
185
195
  }
186
196
  else {
187
197
  this.click$.emit(event);
198
+ this.click.emit(event);
188
199
  }
189
200
  }
190
201
  notifyAccessDenied(error) {
@@ -216,7 +227,7 @@ class RdtButtonBase extends RdtInteractiveElementComponent {
216
227
  }
217
228
  static ONLINE_ENABLED_KEY = Symbol();
218
229
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: RdtButtonBase, deps: null, target: i0.ɵɵFactoryTarget.Directive });
219
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.0", type: RdtButtonBase, isStandalone: true, inputs: { propagateInput: { classPropertyName: "propagateInput", publicName: "propagate", isSignal: true, isRequired: false, transformFunction: null }, tabIndexInput: { classPropertyName: "tabIndexInput", publicName: "tabIndex", isSignal: true, isRequired: false, transformFunction: null }, hrefInput: { classPropertyName: "hrefInput", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, ngHrefInput: { classPropertyName: "ngHrefInput", publicName: "ngHref", isSignal: true, isRequired: false, transformFunction: null }, targetInput: { classPropertyName: "targetInput", publicName: "target", isSignal: true, isRequired: false, transformFunction: null }, stateParamsInput: { classPropertyName: "stateParamsInput", publicName: "stateParams", isSignal: true, isRequired: false, transformFunction: null }, queryParamsInput: { classPropertyName: "queryParamsInput", publicName: "queryParams", isSignal: true, isRequired: false, transformFunction: null }, downloadInput: { classPropertyName: "downloadInput", publicName: "download", isSignal: true, isRequired: false, transformFunction: null }, iconInput: { classPropertyName: "iconInput", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, labelInput: { classPropertyName: "labelInput", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, dataTestIdInput: { classPropertyName: "dataTestIdInput", publicName: "dataTestId", isSignal: true, isRequired: false, transformFunction: null }, onlineEnabledInput$: { classPropertyName: "onlineEnabledInput$", publicName: "onlineEnabled", isSignal: true, isRequired: false, transformFunction: null }, ariaInput: { classPropertyName: "ariaInput", publicName: "aria", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click$: "click$" }, usesInheritance: true, ngImport: i0 });
230
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.0.0", type: RdtButtonBase, isStandalone: true, inputs: { typeInput: { classPropertyName: "typeInput", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, propagateInput: { classPropertyName: "propagateInput", publicName: "propagate", isSignal: true, isRequired: false, transformFunction: null }, tabIndexInput: { classPropertyName: "tabIndexInput", publicName: "tabIndex", isSignal: true, isRequired: false, transformFunction: null }, hrefInput: { classPropertyName: "hrefInput", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, ngHrefInput: { classPropertyName: "ngHrefInput", publicName: "ngHref", isSignal: true, isRequired: false, transformFunction: null }, targetInput: { classPropertyName: "targetInput", publicName: "target", isSignal: true, isRequired: false, transformFunction: null }, stateParamsInput: { classPropertyName: "stateParamsInput", publicName: "stateParams", isSignal: true, isRequired: false, transformFunction: null }, queryParamsInput: { classPropertyName: "queryParamsInput", publicName: "queryParams", isSignal: true, isRequired: false, transformFunction: null }, downloadInput: { classPropertyName: "downloadInput", publicName: "download", isSignal: true, isRequired: false, transformFunction: null }, iconInput: { classPropertyName: "iconInput", publicName: "icon", isSignal: true, isRequired: false, transformFunction: null }, labelInput: { classPropertyName: "labelInput", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, dataTestIdInput: { classPropertyName: "dataTestIdInput", publicName: "dataTestId", isSignal: true, isRequired: false, transformFunction: null }, onlineEnabledInput$: { classPropertyName: "onlineEnabledInput$", publicName: "onlineEnabled", isSignal: true, isRequired: false, transformFunction: null }, ariaInput: { classPropertyName: "ariaInput", publicName: "aria", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click$: "click$", click: "click" }, usesInheritance: true, ngImport: i0 });
220
231
  }
221
232
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0", ngImport: i0, type: RdtButtonBase, decorators: [{
222
233
  type: Directive
@@ -1 +1 @@
1
- {"version":3,"file":"ngrdt-button.mjs","sources":["../tmp-esm2022/lib/providers/rdt-button-base-provider.js","../tmp-esm2022/lib/button-outlet/rdt-button-outlet.directive.js","../tmp-esm2022/lib/button/rdt-button-constants.js","../tmp-esm2022/lib/button/rdt-button-base.js","../tmp-esm2022/ngrdt-button.js"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nexport const RDT_BUTTON_BASE_PROVIDER = new InjectionToken('RdtButton');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJ1dHRvbi1iYXNlLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2J1dHRvbi9zcmMvbGliL3Byb3ZpZGVycy9yZHQtYnV0dG9uLWJhc2UtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUdyRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLGNBQWMsQ0FFeEQsV0FBVyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR0QnV0dG9uQmFzZUludCB9IGZyb20gJy4uL2J1dHRvbi9yZHQtYnV0dG9uLWludCc7XG5cbmV4cG9ydCBjb25zdCBSRFRfQlVUVE9OX0JBU0VfUFJPVklERVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48XG4gIFR5cGU8UmR0QnV0dG9uQmFzZUludD5cbj4oJ1JkdEJ1dHRvbicpO1xuIl19","import { Directive, inject, output } from '@angular/core';\nimport { RdtComponentOutletDirective } from '@ngrdt/core';\nimport { RDT_BUTTON_BASE_PROVIDER } from '../providers/rdt-button-base-provider';\nimport * as i0 from \"@angular/core\";\nexport class RdtButtonOutletDirective extends RdtComponentOutletDirective {\n componentClass = inject(RDT_BUTTON_BASE_PROVIDER);\n click$ = output();\n constructor() {\n super();\n this.initComponentRef();\n this.componentRef?.instance.click$.subscribe((evt) => this.click$.emit(evt));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtButtonOutletDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.0\", type: RdtButtonOutletDirective, isStandalone: true, selector: \"[rdtButtonOutlet]\", outputs: { click$: \"click$\" }, exportAs: [\"rdtButtonOutlet\"], usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtButtonOutletDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[rdtButtonOutlet]',\n standalone: true,\n exportAs: 'rdtButtonOutlet',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJ1dHRvbi1vdXRsZXQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2J1dHRvbi9zcmMvbGliL2J1dHRvbi1vdXRsZXQvcmR0LWJ1dHRvbi1vdXRsZXQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFLMUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBT2pGLE1BQU0sT0FBTyx3QkFHWCxTQUFRLDJCQUFtRDtJQUNsRCxjQUFjLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFrQixDQUFDO0lBQ25FLE1BQU0sR0FBRyxNQUFNLEVBQWMsQ0FBQztJQUV2QztRQUNFLEtBQUssRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFlBQVksRUFBRSxRQUFRLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQ25ELElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUN0QixDQUFDO0lBQ0osQ0FBQzt1R0FiVSx3QkFBd0I7MkZBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGluamVjdCwgb3V0cHV0LCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJkdENvbXBvbmVudE91dGxldERpcmVjdGl2ZSB9IGZyb20gJ0BuZ3JkdC9jb3JlJztcclxuaW1wb3J0IHtcclxuICBSZHRCdXR0b25CYXNlSW5wdXRzSW50LFxyXG4gIFJkdEJ1dHRvbkJhc2VJbnQsXHJcbn0gZnJvbSAnLi4vYnV0dG9uL3JkdC1idXR0b24taW50JztcclxuaW1wb3J0IHsgUkRUX0JVVFRPTl9CQVNFX1BST1ZJREVSIH0gZnJvbSAnLi4vcHJvdmlkZXJzL3JkdC1idXR0b24tYmFzZS1wcm92aWRlcic7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tyZHRCdXR0b25PdXRsZXRdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGV4cG9ydEFzOiAncmR0QnV0dG9uT3V0bGV0JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJkdEJ1dHRvbk91dGxldERpcmVjdGl2ZTxcclxuICBUQnV0dG9uIGV4dGVuZHMgUmR0QnV0dG9uQmFzZUludCxcclxuICBUQnV0dG9uSW5wdXRzIGV4dGVuZHMgUmR0QnV0dG9uQmFzZUlucHV0c0ludCA9IFJkdEJ1dHRvbkJhc2VJbnB1dHNJbnRcclxuPiBleHRlbmRzIFJkdENvbXBvbmVudE91dGxldERpcmVjdGl2ZTxUQnV0dG9uLCBUQnV0dG9uSW5wdXRzPiB7XHJcbiAgcmVhZG9ubHkgY29tcG9uZW50Q2xhc3MgPSBpbmplY3QoUkRUX0JVVFRPTl9CQVNFX1BST1ZJREVSKSBhcyBUeXBlPFRCdXR0b24+O1xyXG4gIHJlYWRvbmx5IGNsaWNrJCA9IG91dHB1dDxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgICB0aGlzLmluaXRDb21wb25lbnRSZWYoKTtcclxuICAgIHRoaXMuY29tcG9uZW50UmVmPy5pbnN0YW5jZS5jbGljayQuc3Vic2NyaWJlKChldnQpID0+XHJcbiAgICAgIHRoaXMuY2xpY2skLmVtaXQoZXZ0KVxyXG4gICAgKTtcclxuICB9XHJcbn1cclxuIl19","export const RDT_BUTTON_SETTER_KEY = Symbol();\nexport const RDT_BUTTON_DEFAULT_PROPAGATE = false;\nexport const RDT_BUTTON_DEFAULT_TARGET = '_self';\nexport const RDT_BUTTON_DEFAULT_TAB_INDEX = null;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJ1dHRvbi1jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvYnV0dG9uL3NyYy9saWIvYnV0dG9uL3JkdC1idXR0b24tY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLE1BQU0sRUFBRSxDQUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLEtBQUssQ0FBQztBQUNsRCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxPQUFPLENBQUM7QUFDakQsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFJEVF9CVVRUT05fU0VUVEVSX0tFWSA9IFN5bWJvbCgpO1xyXG5leHBvcnQgY29uc3QgUkRUX0JVVFRPTl9ERUZBVUxUX1BST1BBR0FURSA9IGZhbHNlO1xyXG5leHBvcnQgY29uc3QgUkRUX0JVVFRPTl9ERUZBVUxUX1RBUkdFVCA9ICdfc2VsZic7XHJcbmV4cG9ydCBjb25zdCBSRFRfQlVUVE9OX0RFRkFVTFRfVEFCX0lOREVYID0gbnVsbDtcclxuIl19","import { PlatformLocation } from '@angular/common';\nimport { afterRenderEffect, booleanAttribute, computed, Directive, ElementRef, EventEmitter, inject, input, linkedSignal, numberAttribute, Output, Renderer2, } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { RdtInteractiveElementComponent } from '@ngrdt/core';\nimport { RdtStringUtils, } from '@ngrdt/utils';\nimport { take } from 'rxjs';\nimport { RDT_BUTTON_DEFAULT_TAB_INDEX, RDT_BUTTON_DEFAULT_TARGET, } from './rdt-button-constants';\nimport * as i0 from \"@angular/core\";\nexport class RdtButtonBase extends RdtInteractiveElementComponent {\n elRef = inject(ElementRef);\n router = inject(Router);\n baseHref = inject(PlatformLocation).getBaseHrefFromDOM();\n renderer = inject(Renderer2);\n notificationService;\n internalDisabledMap = {};\n internalLoadingMap = {};\n // Inputs\n propagateInput = input(false, {\n transform: booleanAttribute,\n alias: 'propagate',\n });\n propagate = linkedSignal(() => this.propagateInput());\n tabIndexInput = input(RDT_BUTTON_DEFAULT_TAB_INDEX, {\n transform: numberAttribute,\n alias: 'tabIndex',\n });\n tabIndex = linkedSignal(() => this.tabIndexInput());\n hrefInput = input(undefined, {\n alias: 'href',\n });\n href = linkedSignal(() => this.hrefInput());\n ngHrefInput = input(undefined, {\n alias: 'ngHref',\n });\n ngHref = linkedSignal(() => this.ngHrefInput());\n targetInput = input(RDT_BUTTON_DEFAULT_TARGET, { alias: 'target' });\n target = linkedSignal(() => this.targetInput());\n stateParamsInput = input(undefined, {\n alias: 'stateParams',\n });\n stateParams = linkedSignal(() => this.stateParamsInput());\n queryParamsInput = input(undefined, {\n alias: 'queryParams',\n });\n queryParams = linkedSignal(() => this.queryParamsInput());\n downloadInput = input(undefined, {\n alias: 'download',\n });\n download = linkedSignal(() => this.downloadInput());\n iconInput = input(null, {\n alias: 'icon',\n });\n icon = linkedSignal(() => this.iconInput());\n labelInput = input(undefined, {\n alias: 'label',\n });\n label = linkedSignal(() => this.labelInput());\n dataTestIdInput = input(undefined, { alias: 'dataTestId' });\n dataTestId = linkedSignal(() => this.dataTestIdInput() ?? this.label() ?? '');\n onlineEnabledInput$ = input(null, {\n alias: 'onlineEnabled',\n });\n onlineEnabled$ = linkedSignal(() => this.onlineEnabledInput$());\n ariaInput = input({}, { alias: 'aria' });\n aria = linkedSignal(() => this.ariaInput());\n hrefWithParams = computed(() => {\n const href = this.href();\n const queryParams = this.queryParams();\n if (href && queryParams) {\n return RdtStringUtils.appendQueryParams(href, queryParams);\n }\n else {\n return href;\n }\n });\n ariaRenderEffect = afterRenderEffect({\n write: () => this.updateAriaAttributes(this.aria()),\n });\n click$ = new EventEmitter();\n focus() {\n this.focusElement()?.focus();\n }\n canFocus() {\n return !this.disabled() && !!this.focusElement();\n }\n onClicked($event) {\n const onlineEnabled$ = this.onlineEnabled$();\n const disabled = this.disabled();\n if (onlineEnabled$) {\n if (disabled) {\n return;\n }\n $event.stopPropagation();\n this.setDisabledState(true, RdtButtonBase.ONLINE_ENABLED_KEY);\n this.setLoadingState(true, RdtButtonBase.ONLINE_ENABLED_KEY);\n const observer = {\n next: () => {\n this.onClickPermissionAllowed($event);\n this.finishOnlineCheck();\n },\n error: (error) => {\n this.notifyAccessDenied(error);\n this.finishOnlineCheck();\n },\n complete: () => this.finishOnlineCheck(),\n };\n onlineEnabled$.pipe(take(1)).subscribe(observer);\n }\n else {\n this.emitAndStopProp($event);\n }\n }\n emitAndStopProp($event) {\n const ngHref = this.ngHref();\n const href = this.href();\n const propagate = this.propagate();\n const disabled = this.disabled();\n // stopPropagation prevents routerLinks from working\n if (!propagate && !ngHref && !href) {\n $event.stopPropagation();\n }\n if (!disabled && !ngHref && !href) {\n this.click$.emit($event);\n }\n }\n onClickPermissionAllowed($event) {\n const propagate = this.propagate();\n const disabled = this.disabled();\n if (!propagate) {\n $event.stopPropagation();\n }\n if (!disabled) {\n this.navigateOrEmit($event);\n }\n }\n navigateOrEmit(event) {\n const ngHref = this.ngHref();\n const href = this.href();\n const target = this.target();\n const queryParams = this.queryParams();\n const stateParams = this.stateParams();\n if (ngHref) {\n if (target !== '_self') {\n const absolutePath = RdtStringUtils.createAbsoluteUrl(ngHref, this.baseHref);\n const pathWithParams = RdtStringUtils.appendQueryParams(absolutePath, queryParams);\n window.open(pathWithParams, target);\n }\n else {\n this.router.navigate([ngHref], {\n queryParams: queryParams,\n state: stateParams ?? undefined,\n });\n }\n }\n else if (href) {\n const pathWithParams = RdtStringUtils.appendQueryParams(href, queryParams);\n window.open(pathWithParams, target);\n }\n else {\n this.click$.emit(event);\n }\n }\n notifyAccessDenied(error) {\n if (this.notificationService) {\n if (typeof error === 'string') {\n this.notificationService.error(error);\n }\n else {\n this.notificationService.accessDenied();\n }\n }\n }\n finishOnlineCheck() {\n this.setDisabledState(false, RdtButtonBase.ONLINE_ENABLED_KEY);\n this.setLoadingState(false, RdtButtonBase.ONLINE_ENABLED_KEY);\n }\n updateAriaAttributes(aria) {\n const el = this.ariaElement();\n if (el) {\n Object.entries(aria).forEach(([key, value]) => {\n if (value === null || value === undefined) {\n this.renderer.removeAttribute(el, key);\n }\n else {\n this.renderer.setAttribute(el, key, String(value));\n }\n });\n }\n }\n static ONLINE_ENABLED_KEY = Symbol();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtButtonBase, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtButtonBase, isStandalone: true, inputs: { propagateInput: { classPropertyName: \"propagateInput\", publicName: \"propagate\", isSignal: true, isRequired: false, transformFunction: null }, tabIndexInput: { classPropertyName: \"tabIndexInput\", publicName: \"tabIndex\", isSignal: true, isRequired: false, transformFunction: null }, hrefInput: { classPropertyName: \"hrefInput\", publicName: \"href\", isSignal: true, isRequired: false, transformFunction: null }, ngHrefInput: { classPropertyName: \"ngHrefInput\", publicName: \"ngHref\", isSignal: true, isRequired: false, transformFunction: null }, targetInput: { classPropertyName: \"targetInput\", publicName: \"target\", isSignal: true, isRequired: false, transformFunction: null }, stateParamsInput: { classPropertyName: \"stateParamsInput\", publicName: \"stateParams\", isSignal: true, isRequired: false, transformFunction: null }, queryParamsInput: { classPropertyName: \"queryParamsInput\", publicName: \"queryParams\", isSignal: true, isRequired: false, transformFunction: null }, downloadInput: { classPropertyName: \"downloadInput\", publicName: \"download\", isSignal: true, isRequired: false, transformFunction: null }, iconInput: { classPropertyName: \"iconInput\", publicName: \"icon\", isSignal: true, isRequired: false, transformFunction: null }, labelInput: { classPropertyName: \"labelInput\", publicName: \"label\", isSignal: true, isRequired: false, transformFunction: null }, dataTestIdInput: { classPropertyName: \"dataTestIdInput\", publicName: \"dataTestId\", isSignal: true, isRequired: false, transformFunction: null }, onlineEnabledInput$: { classPropertyName: \"onlineEnabledInput$\", publicName: \"onlineEnabled\", isSignal: true, isRequired: false, transformFunction: null }, ariaInput: { classPropertyName: \"ariaInput\", publicName: \"aria\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click$: \"click$\" }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtButtonBase, decorators: [{\n type: Directive\n }], propDecorators: { click$: [{\n type: Output\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJ1dHRvbi1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2J1dHRvbi9zcmMvbGliL2J1dHRvbi9yZHQtYnV0dG9uLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDaEIsUUFBUSxFQUNSLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsWUFBWSxFQUNaLGVBQWUsRUFDZixNQUFNLEVBQ04sU0FBUyxHQUVWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBVSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNqRCxPQUFPLEVBQW9CLDhCQUE4QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQy9FLE9BQU8sRUFHTCxjQUFjLEdBRWYsTUFBTSxjQUFjLENBQUM7QUFDdEIsT0FBTyxFQUFjLElBQUksRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV4QyxPQUFPLEVBQ0wsNEJBQTRCLEVBQzVCLHlCQUF5QixHQUMxQixNQUFNLHdCQUF3QixDQUFDOztBQUloQyxNQUFNLE9BQWdCLGFBQ3BCLFNBQVEsOEJBQThCO0lBR25CLEtBQUssR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDM0IsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4QixRQUFRLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUN6RCxRQUFRLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBRTdCLG1CQUFtQixDQUFtQztJQUUvRCxtQkFBbUIsR0FBNEIsRUFBRSxDQUFDO0lBQ2xELGtCQUFrQixHQUE0QixFQUFFLENBQUM7SUFNM0QsU0FBUztJQUNB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QUFDLEtBQUssRUFBRSxhQUFhLENBQUMsa0JBQWtCLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRU8sb0JBQW9CLENBQUMsSUFBNkI7UUFDeEQsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzlCLElBQUksRUFBRSxFQUFFLENBQUM7WUFDUCxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUU7Z0JBQzVDLElBQUksS0FBSyxLQUFLLElBQUksSUFBSSxLQUFLLEtBQUssU0FBUyxFQUFFLENBQUM7b0JBQzFDLElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDekMsQ0FBQztxQkFBTSxDQUFDO29CQUNOLElBQUksQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ3JELENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRVMsTUFBTSxDQUFVLGtCQUFrQixHQUFHLE1BQU0sRUFBRSxDQUFDO3VHQWxPcEMsYUFBYTsyRkFBYixhQUFhOzsyRkFBYixhQUFhO2tCQURsQyxTQUFTOzhCQXFHQyxNQUFNO3NCQURkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQbGF0Zm9ybUxvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHtcclxuICBhZnRlclJlbmRlckVmZmVjdCxcclxuICBib29sZWFuQXR0cmlidXRlLFxyXG4gIGNvbXB1dGVkLFxyXG4gIERpcmVjdGl2ZSxcclxuICBFbGVtZW50UmVmLFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBpbmplY3QsXHJcbiAgaW5wdXQsXHJcbiAgbGlua2VkU2lnbmFsLFxyXG4gIG51bWJlckF0dHJpYnV0ZSxcclxuICBPdXRwdXQsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIFNpZ25hbCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgUGFyYW1zLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgeyBSZHRCb29sZWFuUmVzdWx0LCBSZHRJbnRlcmFjdGl2ZUVsZW1lbnRDb21wb25lbnQgfSBmcm9tICdAbmdyZHQvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgQXJpYUF0dHJpYnV0ZXMsXHJcbiAgTnVsbGFibGUsXHJcbiAgUmR0U3RyaW5nVXRpbHMsXHJcbiAgV2luZG93T3BlblRhcmdldFR5cGUsXHJcbn0gZnJvbSAnQG5ncmR0L3V0aWxzJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgdGFrZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBSZHRCdXR0b25Ob3RpZmljYXRpb25TZXJ2aWNlSW50IH0gZnJvbSAnLi4vcHJvdmlkZXJzL3JkdC1idXR0b24tbm90aWZpY2F0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQge1xyXG4gIFJEVF9CVVRUT05fREVGQVVMVF9UQUJfSU5ERVgsXHJcbiAgUkRUX0JVVFRPTl9ERUZBVUxUX1RBUkdFVCxcclxufSBmcm9tICcuL3JkdC1idXR0b24tY29uc3RhbnRzJztcclxuaW1wb3J0IHsgUmR0QnV0dG9uQmFzZUludCB9IGZyb20gJy4vcmR0LWJ1dHRvbi1pbnQnO1xyXG5cclxuQERpcmVjdGl2ZSgpXHJcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZHRCdXR0b25CYXNlPFRJY29uID0gc3RyaW5nPlxyXG4gIGV4dGVuZHMgUmR0SW50ZXJhY3RpdmVFbGVtZW50Q29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBSZHRCdXR0b25CYXNlSW50PFRJY29uPlxyXG57XHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGVsUmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xyXG4gIHByb3RlY3RlZCByZWFkb25seSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYmFzZUhyZWYgPSBpbmplY3QoUGxhdGZvcm1Mb2NhdGlvbikuZ2V0QmFzZUhyZWZGcm9tRE9NKCk7XHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJlbmRlcmVyID0gaW5qZWN0KFJlbmRlcmVyMik7XHJcblxyXG4gIHByb3RlY3RlZCByZWFkb25seSBub3RpZmljYXRpb25TZXJ2aWNlPzogUmR0QnV0dG9uTm90aWZpY2F0aW9uU2VydmljZUludDtcclxuXHJcbiAgcHJvdGVjdGVkIGludGVybmFsRGlzYWJsZWRNYXA6IFJlY29yZDxzeW1ib2wsIGJvb2xlYW4+ID0ge307XHJcbiAgcHJvdGVjdGVkIGludGVybmFsTG9hZGluZ01hcDogUmVjb3JkPHN5bWJvbCwgYm9vbGVhbj4gPSB7fTtcclxuXHJcbiAgYWJzdHJhY3QgcmVhZG9ubHkgZm9jdXNFbGVtZW50OiBTaWduYWw8SFRNTEVsZW1lbnQgfCBudWxsPjtcclxuICBhYnN0cmFjdCByZWFkb25seSBhcmlhRWxlbWVudDogU2lnbmFsPEhUTUxFbGVtZW50IHwgbnVsbD47XHJcbiAgYWJzdHJhY3QgcmVhZG9ubHkgYW5jaG9yRWxlbWVudDogU2lnbmFsPEhUTUxFbGVtZW50IHwgbnVsbD47XHJcblxyXG4gIC8vIElucHV0c1xyXG4gIHJlYWRvbmx5IHByb3BhZ2F0ZUlucHV0ID0gaW5wdXQoZmFsc2UsIHtcclxuICAgIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSxcclxuICAgIGFsaWFzOiAncHJvcGFnYXRlJyxcclxuICB9KTtcclxuICByZWFkb25seSBwcm9wYWdhdGUgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5wcm9wYWdhdGVJbnB1dCgpKTtcclxuXHJcbiAgcmVhZG9ubHkgdGFiSW5kZXhJbnB1dCA9IGlucHV0KFJEVF9CVVRUT05fREVGQVVMVF9UQUJfSU5ERVgsIHtcclxuICAgIHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlLFxyXG4gICAgYWxpYXM6ICd0YWJJbmRleCcsXHJcbiAgfSk7XHJcbiAgcmVhZG9ubHkgdGFiSW5kZXggPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy50YWJJbmRleElucHV0KCkpO1xyXG5cclxuICByZWFkb25seSBocmVmSW5wdXQgPSBpbnB1dDxOdWxsYWJsZTxzdHJpbmc+Pih1bmRlZmluZWQsIHtcclxuICAgIGFsaWFzOiAnaHJlZicsXHJcbiAgfSk7XHJcbiAgcmVhZG9ubHkgaHJlZiA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLmhyZWZJbnB1dCgpKTtcclxuXHJcbiAgcmVhZG9ubHkgbmdIcmVmSW5wdXQgPSBpbnB1dDxOdWxsYWJsZTxzdHJpbmc+Pih1bmRlZmluZWQsIHtcclxuICAgIGFsaWFzOiAnbmdIcmVmJyxcclxuICB9KTtcclxuICByZWFkb25seSBuZ0hyZWYgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5uZ0hyZWZJbnB1dCgpKTtcclxuXHJcbiAgcmVhZG9ubHkgdGFyZ2V0SW5wdXQgPSBpbnB1dDxXaW5kb3dPcGVuVGFyZ2V0VHlwZT4oXHJcbiAgICBSRFRfQlVUVE9OX0RFRkFVTFRfVEFSR0VULFxyXG4gICAgeyBhbGlhczogJ3RhcmdldCcgfVxyXG4gICk7XHJcbiAgcmVhZG9ubHkgdGFyZ2V0ID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMudGFyZ2V0SW5wdXQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IHN0YXRlUGFyYW1zSW5wdXQgPSBpbnB1dDxOdWxsYWJsZTxQYXJhbXM+Pih1bmRlZmluZWQsIHtcclxuICAgIGFsaWFzOiAnc3RhdGVQYXJhbXMnLFxyXG4gIH0pO1xyXG4gIHJlYWRvbmx5IHN0YXRlUGFyYW1zID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMuc3RhdGVQYXJhbXNJbnB1dCgpKTtcclxuXHJcbiAgcmVhZG9ubHkgcXVlcnlQYXJhbXNJbnB1dCA9IGlucHV0PE51bGxhYmxlPFBhcmFtcz4+KHVuZGVmaW5lZCwge1xyXG4gICAgYWxpYXM6ICdxdWVyeVBhcmFtcycsXHJcbiAgfSk7XHJcbiAgcmVhZG9ubHkgcXVlcnlQYXJhbXMgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5xdWVyeVBhcmFtc0lucHV0KCkpO1xyXG5cclxuICByZWFkb25seSBkb3dubG9hZElucHV0ID0gaW5wdXQ8TnVsbGFibGU8c3RyaW5nPj4odW5kZWZpbmVkLCB7XHJcbiAgICBhbGlhczogJ2Rvd25sb2FkJyxcclxuICB9KTtcclxuICByZWFkb25seSBkb3dubG9hZCA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLmRvd25sb2FkSW5wdXQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IGljb25JbnB1dCA9IGlucHV0PE51bGxhYmxlPFRJY29uPj4obnVsbCwge1xyXG4gICAgYWxpYXM6ICdpY29uJyxcclxuICB9KTtcclxuICByZWFkb25seSBpY29uID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMuaWNvbklucHV0KCkpO1xyXG5cclxuICByZWFkb25seSBsYWJlbElucHV0ID0gaW5wdXQ8TnVsbGFibGU8c3RyaW5nPj4odW5kZWZpbmVkLCB7XHJcbiAgICBhbGlhczogJ2xhYmVsJyxcclxuICB9KTtcclxuICByZWFkb25seSBsYWJlbCA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLmxhYmVsSW5wdXQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IGRhdGFUZXN0SWRJbnB1dCA9IGlucHV0KHVuZGVmaW5lZCwgeyBhbGlhczogJ2RhdGFUZXN0SWQnIH0pO1xyXG4gIHJlYWRvbmx5IGRhdGFUZXN0SWQgPSBsaW5rZWRTaWduYWwoXHJcbiAgICAoKSA9PiB0aGlzLmRhdGFUZXN0SWRJbnB1dCgpID8/IHRoaXMubGFiZWwoKSA/PyAnJ1xyXG4gICk7XHJcblxyXG4gIHJlYWRvbmx5IG9ubGluZUVuYWJsZWRJbnB1dCQgPSBpbnB1dDxOdWxsYWJsZTxPYnNlcnZhYmxlPGJvb2xlYW4+Pj4obnVsbCwge1xyXG4gICAgYWxpYXM6ICdvbmxpbmVFbmFibGVkJyxcclxuICB9KTtcclxuICByZWFkb25seSBvbmxpbmVFbmFibGVkJCA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLm9ubGluZUVuYWJsZWRJbnB1dCQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IGFyaWFJbnB1dCA9IGlucHV0PFBhcnRpYWw8QXJpYUF0dHJpYnV0ZXM+Pih7fSwgeyBhbGlhczogJ2FyaWEnIH0pO1xyXG4gIHJlYWRvbmx5IGFyaWEgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5hcmlhSW5wdXQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IGhyZWZXaXRoUGFyYW1zID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgY29uc3QgaHJlZiA9IHRoaXMuaHJlZigpO1xyXG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSB0aGlzLnF1ZXJ5UGFyYW1zKCk7XHJcbiAgICBpZiAoaHJlZiAmJiBxdWVyeVBhcmFtcykge1xyXG4gICAgICByZXR1cm4gUmR0U3RyaW5nVXRpbHMuYXBwZW5kUXVlcnlQYXJhbXMoaHJlZiwgcXVlcnlQYXJhbXMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGhyZWY7XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIHByb3RlY3RlZCByZWFkb25seSBhcmlhUmVuZGVyRWZmZWN0ID0gYWZ0ZXJSZW5kZXJFZmZlY3Qoe1xyXG4gICAgd3JpdGU6ICgpID0+IHRoaXMudXBkYXRlQXJpYUF0dHJpYnV0ZXModGhpcy5hcmlhKCkpLFxyXG4gIH0pO1xyXG5cclxuICBAT3V0cHV0KClcclxuICByZWFkb25seSBjbGljayQgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIGZvY3VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5mb2N1c0VsZW1lbnQoKT8uZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIGNhbkZvY3VzKCk6IFJkdEJvb2xlYW5SZXN1bHQge1xyXG4gICAgcmV0dXJuICF0aGlzLmRpc2FibGVkKCkgJiYgISF0aGlzLmZvY3VzRWxlbWVudCgpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIG9uQ2xpY2tlZCgkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGNvbnN0IG9ubGluZUVuYWJsZWQkID0gdGhpcy5vbmxpbmVFbmFibGVkJCgpO1xyXG4gICAgY29uc3QgZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkKCk7XHJcbiAgICBpZiAob25saW5lRW5hYmxlZCQpIHtcclxuICAgICAgaWYgKGRpc2FibGVkKSB7XHJcbiAgICAgICAgcmV0dXJuO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZSh0cnVlLCBSZHRCdXR0b25CYXNlLk9OTElORV9FTkFCTEVEX0tFWSk7XHJcbiAgICAgIHRoaXMuc2V0TG9hZGluZ1N0YXRlKHRydWUsIFJkdEJ1dHRvbkJhc2UuT05MSU5FX0VOQUJMRURfS0VZKTtcclxuICAgICAgY29uc3Qgb2JzZXJ2ZXIgPSB7XHJcbiAgICAgICAgbmV4dDogKCkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5vbkNsaWNrUGVybWlzc2lvbkFsbG93ZWQoJGV2ZW50KTtcclxuICAgICAgICAgIHRoaXMuZmluaXNoT25saW5lQ2hlY2soKTtcclxuICAgICAgICB9LFxyXG4gICAgICAgIGVycm9yOiAoZXJyb3I6IGFueSkgPT4ge1xyXG4gICAgICAgICAgdGhpcy5ub3RpZnlBY2Nlc3NEZW5pZWQoZXJyb3IpO1xyXG4gICAgICAgICAgdGhpcy5maW5pc2hPbmxpbmVDaGVjaygpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHRoaXMuZmluaXNoT25saW5lQ2hlY2soKSxcclxuICAgICAgfTtcclxuICAgICAgb25saW5lRW5hYmxlZCQucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUob2JzZXJ2ZXIpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5lbWl0QW5kU3RvcFByb3AoJGV2ZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgZW1pdEFuZFN0b3BQcm9wKCRldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3QgbmdIcmVmID0gdGhpcy5uZ0hyZWYoKTtcclxuICAgIGNvbnN0IGhyZWYgPSB0aGlzLmhyZWYoKTtcclxuICAgIGNvbnN0IHByb3BhZ2F0ZSA9IHRoaXMucHJvcGFnYXRlKCk7XHJcbiAgICBjb25zdCBkaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQoKTtcclxuICAgIC8vIHN0b3BQcm9wYWdhdGlvbiBwcmV2ZW50cyByb3V0ZXJMaW5rcyBmcm9tIHdvcmtpbmdcclxuICAgIGlmICghcHJvcGFnYXRlICYmICFuZ0hyZWYgJiYgIWhyZWYpIHtcclxuICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgfVxyXG4gICAgaWYgKCFkaXNhYmxlZCAmJiAhbmdIcmVmICYmICFocmVmKSB7XHJcbiAgICAgIHRoaXMuY2xpY2skLmVtaXQoJGV2ZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DbGlja1Blcm1pc3Npb25BbGxvd2VkKCRldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3QgcHJvcGFnYXRlID0gdGhpcy5wcm9wYWdhdGUoKTtcclxuICAgIGNvbnN0IGRpc2FibGVkID0gdGhpcy5kaXNhYmxlZCgpO1xyXG4gICAgaWYgKCFwcm9wYWdhdGUpIHtcclxuICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xyXG4gICAgfVxyXG4gICAgaWYgKCFkaXNhYmxlZCkge1xyXG4gICAgICB0aGlzLm5hdmlnYXRlT3JFbWl0KCRldmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG5hdmlnYXRlT3JFbWl0KGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBjb25zdCBuZ0hyZWYgPSB0aGlzLm5nSHJlZigpO1xyXG4gICAgY29uc3QgaHJlZiA9IHRoaXMuaHJlZigpO1xyXG4gICAgY29uc3QgdGFyZ2V0ID0gdGhpcy50YXJnZXQoKTtcclxuICAgIGNvbnN0IHF1ZXJ5UGFyYW1zID0gdGhpcy5xdWVyeVBhcmFtcygpO1xyXG4gICAgY29uc3Qgc3RhdGVQYXJhbXMgPSB0aGlzLnN0YXRlUGFyYW1zKCk7XHJcblxyXG4gICAgaWYgKG5nSHJlZikge1xyXG4gICAgICBpZiAodGFyZ2V0ICE9PSAnX3NlbGYnKSB7XHJcbiAgICAgICAgY29uc3QgYWJzb2x1dGVQYXRoID0gUmR0U3RyaW5nVXRpbHMuY3JlYXRlQWJzb2x1dGVVcmwoXHJcbiAgICAgICAgICBuZ0hyZWYsXHJcbiAgICAgICAgICB0aGlzLmJhc2VIcmVmXHJcbiAgICAgICAgKTtcclxuICAgICAgICBjb25zdCBwYXRoV2l0aFBhcmFtcyA9IFJkdFN0cmluZ1V0aWxzLmFwcGVuZFF1ZXJ5UGFyYW1zKFxyXG4gICAgICAgICAgYWJzb2x1dGVQYXRoLFxyXG4gICAgICAgICAgcXVlcnlQYXJhbXNcclxuICAgICAgICApO1xyXG4gICAgICAgIHdpbmRvdy5vcGVuKHBhdGhXaXRoUGFyYW1zLCB0YXJnZXQpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtuZ0hyZWZdLCB7XHJcbiAgICAgICAgICBxdWVyeVBhcmFtczogcXVlcnlQYXJhbXMsXHJcbiAgICAgICAgICBzdGF0ZTogc3RhdGVQYXJhbXMgPz8gdW5kZWZpbmVkLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICB9XHJcbiAgICB9IGVsc2UgaWYgKGhyZWYpIHtcclxuICAgICAgY29uc3QgcGF0aFdpdGhQYXJhbXMgPSBSZHRTdHJpbmdVdGlscy5hcHBlbmRRdWVyeVBhcmFtcyhcclxuICAgICAgICBocmVmLFxyXG4gICAgICAgIHF1ZXJ5UGFyYW1zXHJcbiAgICAgICk7XHJcbiAgICAgIHdpbmRvdy5vcGVuKHBhdGhXaXRoUGFyYW1zLCB0YXJnZXQpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5jbGljayQuZW1pdChldmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG5vdGlmeUFjY2Vzc0RlbmllZChlcnJvcj86IHVua25vd24pIHtcclxuICAgIGlmICh0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UpIHtcclxuICAgICAgaWYgKHR5cGVvZiBlcnJvciA9PT0gJ3N0cmluZycpIHtcclxuICAgICAgICB0aGlzLm5vdGlmaWNhdGlvblNlcnZpY2UuZXJyb3IoZXJyb3IpO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5hY2Nlc3NEZW5pZWQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBmaW5pc2hPbmxpbmVDaGVjaygpIHtcclxuICAgIHRoaXMuc2V0RGlzYWJsZWRTdGF0ZShmYWxzZSwgUmR0QnV0dG9uQmFzZS5PTkxJTkVfRU5BQkxFRF9LRVkpO1xyXG4gICAgdGhpcy5zZXRMb2FkaW5nU3RhdGUoZmFsc2UsIFJkdEJ1dHRvbkJhc2UuT05MSU5FX0VOQUJMRURfS0VZKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlQXJpYUF0dHJpYnV0ZXMoYXJpYTogUGFydGlhbDxBcmlhQXR0cmlidXRlcz4pIHtcclxuICAgIGNvbnN0IGVsID0gdGhpcy5hcmlhRWxlbWVudCgpO1xyXG4gICAgaWYgKGVsKSB7XHJcbiAgICAgIE9iamVjdC5lbnRyaWVzKGFyaWEpLmZvckVhY2goKFtrZXksIHZhbHVlXSkgPT4ge1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZShlbCwga2V5KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWwsIGtleSwgU3RyaW5nKHZhbHVlKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByb3RlY3RlZCBzdGF0aWMgcmVhZG9ubHkgT05MSU5FX0VOQUJMRURfS0VZID0gU3ltYm9sKCk7XHJcbn1cclxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdyZHQtYnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vQG5ncmR0L2J1dHRvbi9zcmMvbmdyZHQtYnV0dG9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":";;;;;;;;AACY,MAAC,wBAAwB,GAAG,IAAI,cAAc,CAAC,WAAW;;ACG/D,MAAM,wBAAwB,SAAS,2BAA2B,CAAC;AAC1E,IAAI,cAAc,GAAG,MAAM,CAAC,wBAAwB,CAAC;AACrD,IAAI,MAAM,GAAG,MAAM,EAAE;AACrB,IAAI,WAAW,GAAG;AAClB,QAAQ,KAAK,EAAE;AACf,QAAQ,IAAI,CAAC,gBAAgB,EAAE;AAC/B,QAAQ,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACpF;AACA,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AAClL,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,wBAAwB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,mBAAmB,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,iBAAiB,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AAC5Q;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,wBAAwB,EAAE,UAAU,EAAE,CAAC;AAClI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC;AACnB,oBAAoB,QAAQ,EAAE,mBAAmB;AACjD,oBAAoB,UAAU,EAAE,IAAI;AACpC,oBAAoB,QAAQ,EAAE,iBAAiB;AAC/C,iBAAiB;AACjB,SAAS,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,CAAC;;ACtB3B,MAAC,qBAAqB,GAAG,MAAM;AAC/B,MAAC,4BAA4B,GAAG;AAChC,MAAC,yBAAyB,GAAG;AAC7B,MAAC,4BAA4B,GAAG;;ACKrC,MAAM,aAAa,SAAS,8BAA8B,CAAC;AAClE,IAAI,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC;AAC9B,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AAC3B,IAAI,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,kBAAkB,EAAE;AAC5D,IAAI,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC;AAChC,IAAI,mBAAmB;AACvB,IAAI,mBAAmB,GAAG,EAAE;AAC5B,IAAI,kBAAkB,GAAG,EAAE;AAC3B;AACA,IAAI,cAAc,GAAG,KAAK,CAAC,KAAK,EAAE;AAClC,QAAQ,SAAS,EAAE,gBAAgB;AACnC,QAAQ,KAAK,EAAE,WAAW;AAC1B,KAAK,CAAC;AACN,IAAI,SAAS,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;AACzD,IAAI,aAAa,GAAG,KAAK,CAAC,4BAA4B,EAAE;AACxD,QAAQ,SAAS,EAAE,eAAe;AAClC,QAAQ,KAAK,EAAE,UAAU;AACzB,KAAK,CAAC;AACN,IAAI,QAAQ,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;AACvD,IAAI,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE;AACjC,QAAQ,KAAK,EAAE,MAAM;AACrB,KAAK,CAAC;AACN,IAAI,IAAI,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;AAC/C,IAAI,WAAW,GAAG,KAAK,CAAC,SAAS,EAAE;AACnC,QAAQ,KAAK,EAAE,QAAQ;AACvB,KAAK,CAAC;AACN,IAAI,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;AACnD,IAAI,WAAW,GAAG,KAAK,CAAC,yBAAyB,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AACvE,IAAI,MAAM,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;AACnD,IAAI,gBAAgB,GAAG,KAAK,CAAC,SAAS,EAAE;AACxC,QAAQ,KAAK,EAAE,aAAa;AAC5B,KAAK,CAAC;AACN,IAAI,WAAW,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;AAC7D,IAAI,gBAAgB,GAAG,KAAK,CAAC,SAAS,EAAE;AACxC,QAAQ,KAAK,EAAE,aAAa;AAC5B,KAAK,CAAC;AACN,IAAI,WAAW,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;AAC7D,IAAI,aAAa,GAAG,KAAK,CAAC,SAAS,EAAE;AACrC,QAAQ,KAAK,EAAE,UAAU;AACzB,KAAK,CAAC;AACN,IAAI,QAAQ,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC;AACvD,IAAI,SAAS,GAAG,KAAK,CAAC,IAAI,EAAE;AAC5B,QAAQ,KAAK,EAAE,MAAM;AACrB,KAAK,CAAC;AACN,IAAI,IAAI,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;AAC/C,IAAI,UAAU,GAAG,KAAK,CAAC,SAAS,EAAE;AAClC,QAAQ,KAAK,EAAE,OAAO;AACtB,KAAK,CAAC;AACN,IAAI,KAAK,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;AACjD,IAAI,eAAe,GAAG,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC;AAC/D,IAAI,UAAU,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,eAAe,EAAE,IAAI,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;AACjF,IAAI,mBAAmB,GAAG,KAAK,CAAC,IAAI,EAAE;AACtC,QAAQ,KAAK,EAAE,eAAe;AAC9B,KAAK,CAAC;AACN,IAAI,cAAc,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;AACnE,IAAI,SAAS,GAAG,KAAK,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAC5C,IAAI,IAAI,GAAG,YAAY,CAAC,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;AAC/C,IAAI,cAAc,GAAG,QAAQ,CAAC,MAAM;AACpC,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AAChC,QAAQ,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;AAC9C,QAAQ,IAAI,IAAI,IAAI,WAAW,EAAE;AACjC,YAAY,OAAO,cAAc,CAAC,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC;AACtE;AACA,aAAa;AACb,YAAY,OAAO,IAAI;AACvB;AACA,KAAK,CAAC;AACN,IAAI,gBAAgB,GAAG,iBAAiB,CAAC;AACzC,QAAQ,KAAK,EAAE,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;AAC3D,KAAK,CAAC;AACN,IAAI,MAAM,GAAG,IAAI,YAAY,EAAE;AAC/B,IAAI,KAAK,GAAG;AACZ,QAAQ,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE;AACpC;AACA,IAAI,QAAQ,GAAG;AACf,QAAQ,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE;AACxD;AACA,IAAI,SAAS,CAAC,MAAM,EAAE;AACtB,QAAQ,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,EAAE;AACpD,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AACxC,QAAQ,IAAI,cAAc,EAAE;AAC5B,YAAY,IAAI,QAAQ,EAAE;AAC1B,gBAAgB;AAChB;AACA,YAAY,MAAM,CAAC,eAAe,EAAE;AACpC,YAAY,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,aAAa,CAAC,kBAAkB,CAAC;AACzE,YAAY,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,aAAa,CAAC,kBAAkB,CAAC;AACxE,YAAY,MAAM,QAAQ,GAAG;AAC7B,gBAAgB,IAAI,EAAE,MAAM;AAC5B,oBAAoB,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC;AACzD,oBAAoB,IAAI,CAAC,iBAAiB,EAAE;AAC5C,iBAAiB;AACjB,gBAAgB,KAAK,EAAE,CAAC,KAAK,KAAK;AAClC,oBAAoB,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC;AAClD,oBAAoB,IAAI,CAAC,iBAAiB,EAAE;AAC5C,iBAAiB;AACjB,gBAAgB,QAAQ,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;AACxD,aAAa;AACb,YAAY,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC;AAC5D;AACA,aAAa;AACb,YAAY,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC;AACxC;AACA;AACA,IAAI,eAAe,CAAC,MAAM,EAAE;AAC5B,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;AACpC,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AAChC,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE;AAC1C,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AACxC;AACA,QAAQ,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE;AAC5C,YAAY,MAAM,CAAC,eAAe,EAAE;AACpC;AACA,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE;AAC3C,YAAY,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;AACpC;AACA;AACA,IAAI,wBAAwB,CAAC,MAAM,EAAE;AACrC,QAAQ,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE;AAC1C,QAAQ,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE;AACxC,QAAQ,IAAI,CAAC,SAAS,EAAE;AACxB,YAAY,MAAM,CAAC,eAAe,EAAE;AACpC;AACA,QAAQ,IAAI,CAAC,QAAQ,EAAE;AACvB,YAAY,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC;AACvC;AACA;AACA,IAAI,cAAc,CAAC,KAAK,EAAE;AAC1B,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;AACpC,QAAQ,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE;AAChC,QAAQ,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE;AACpC,QAAQ,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;AAC9C,QAAQ,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE;AAC9C,QAAQ,IAAI,MAAM,EAAE;AACpB,YAAY,IAAI,MAAM,KAAK,OAAO,EAAE;AACpC,gBAAgB,MAAM,YAAY,GAAG,cAAc,CAAC,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC;AAC5F,gBAAgB,MAAM,cAAc,GAAG,cAAc,CAAC,iBAAiB,CAAC,YAAY,EAAE,WAAW,CAAC;AAClG,gBAAgB,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC;AACnD;AACA,iBAAiB;AACjB,gBAAgB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE;AAC/C,oBAAoB,WAAW,EAAE,WAAW;AAC5C,oBAAoB,KAAK,EAAE,WAAW,IAAI,SAAS;AACnD,iBAAiB,CAAC;AAClB;AACA;AACA,aAAa,IAAI,IAAI,EAAE;AACvB,YAAY,MAAM,cAAc,GAAG,cAAc,CAAC,iBAAiB,CAAC,IAAI,EAAE,WAAW,CAAC;AACtF,YAAY,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC;AAC/C;AACA,aAAa;AACb,YAAY,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;AACnC;AACA;AACA,IAAI,kBAAkB,CAAC,KAAK,EAAE;AAC9B,QAAQ,IAAI,IAAI,CAAC,mBAAmB,EAAE;AACtC,YAAY,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;AAC3C,gBAAgB,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC;AACrD;AACA,iBAAiB;AACjB,gBAAgB,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE;AACvD;AACA;AACA;AACA,IAAI,iBAAiB,GAAG;AACxB,QAAQ,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,aAAa,CAAC,kBAAkB,CAAC;AACtE,QAAQ,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,aAAa,CAAC,kBAAkB,CAAC;AACrE;AACA,IAAI,oBAAoB,CAAC,IAAI,EAAE;AAC/B,QAAQ,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE;AACrC,QAAQ,IAAI,EAAE,EAAE;AAChB,YAAY,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK;AAC3D,gBAAgB,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE;AAC3D,oBAAoB,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,EAAE,GAAG,CAAC;AAC1D;AACA,qBAAqB;AACrB,oBAAoB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;AACtE;AACA,aAAa,CAAC;AACd;AACA;AACA,IAAI,OAAO,kBAAkB,GAAG,MAAM,EAAE;AACxC,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC;AACzK,IAAI,OAAO,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,cAAc,EAAE,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,iBAAiB,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,iBAAiB,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,gBAAgB,EAAE,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,gBAAgB,EAAE,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,EAAE,iBAAiB,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,UAAU,EAAE,EAAE,iBAAiB,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,eAAe,EAAE,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,UAAU,EAAE,eAAe,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;AACj9D;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,UAAU,EAAE,CAAC;AACvH,YAAY,IAAI,EAAE;AAClB,SAAS,CAAC,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC;AACvC,gBAAgB,IAAI,EAAE;AACtB,aAAa,CAAC,EAAE,EAAE,CAAC;;ACrMnB;AACA;AACA;;;;"}
1
+ {"version":3,"file":"ngrdt-button.mjs","sources":["../tmp-esm2022/lib/providers/rdt-button-base-provider.js","../tmp-esm2022/lib/button-outlet/rdt-button-outlet.directive.js","../tmp-esm2022/lib/button/rdt-button-constants.js","../tmp-esm2022/lib/button/rdt-button-base.js","../tmp-esm2022/ngrdt-button.js"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nexport const RDT_BUTTON_BASE_PROVIDER = new InjectionToken('RdtButton');\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJ1dHRvbi1iYXNlLXByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2J1dHRvbi9zcmMvbGliL3Byb3ZpZGVycy9yZHQtYnV0dG9uLWJhc2UtcHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGNBQWMsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUdyRCxNQUFNLENBQUMsTUFBTSx3QkFBd0IsR0FBRyxJQUFJLGNBQWMsQ0FFeEQsV0FBVyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmR0QnV0dG9uQmFzZUludCB9IGZyb20gJy4uL2J1dHRvbi9yZHQtYnV0dG9uLWludCc7XG5cbmV4cG9ydCBjb25zdCBSRFRfQlVUVE9OX0JBU0VfUFJPVklERVIgPSBuZXcgSW5qZWN0aW9uVG9rZW48XG4gIFR5cGU8UmR0QnV0dG9uQmFzZUludD5cbj4oJ1JkdEJ1dHRvbicpO1xuIl19","import { Directive, inject, output } from '@angular/core';\nimport { RdtComponentOutletDirective } from '@ngrdt/core';\nimport { RDT_BUTTON_BASE_PROVIDER } from '../providers/rdt-button-base-provider';\nimport * as i0 from \"@angular/core\";\nexport class RdtButtonOutletDirective extends RdtComponentOutletDirective {\n componentClass = inject(RDT_BUTTON_BASE_PROVIDER);\n // eslint-disable-next-line @angular-eslint/no-output-native\n click = output();\n constructor() {\n super();\n this.initComponentRef();\n this.componentRef?.instance.click.subscribe((evt) => this.click.emit(evt));\n }\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtButtonOutletDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.0\", type: RdtButtonOutletDirective, isStandalone: true, selector: \"[rdtButtonOutlet]\", outputs: { click: \"click\" }, exportAs: [\"rdtButtonOutlet\"], usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtButtonOutletDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[rdtButtonOutlet]',\n standalone: true,\n exportAs: 'rdtButtonOutlet',\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJ1dHRvbi1vdXRsZXQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2J1dHRvbi9zcmMvbGliL2J1dHRvbi1vdXRsZXQvcmR0LWJ1dHRvbi1vdXRsZXQuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUNoRSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFLMUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBT2pGLE1BQU0sT0FBTyx3QkFHWCxTQUFRLDJCQUFtRDtJQUNsRCxjQUFjLEdBQUcsTUFBTSxDQUFDLHdCQUF3QixDQUFrQixDQUFDO0lBQzVFLDREQUE0RDtJQUNuRCxLQUFLLEdBQUcsTUFBTSxFQUFjLENBQUM7SUFFdEM7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQUNSLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxZQUFZLEVBQUUsUUFBUSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDN0UsQ0FBQzt1R0FaVSx3QkFBd0I7MkZBQXhCLHdCQUF3Qjs7MkZBQXhCLHdCQUF3QjtrQkFMcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGluamVjdCwgb3V0cHV0LCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJkdENvbXBvbmVudE91dGxldERpcmVjdGl2ZSB9IGZyb20gJ0BuZ3JkdC9jb3JlJztcclxuaW1wb3J0IHtcclxuICBSZHRCdXR0b25CYXNlSW5wdXRzSW50LFxyXG4gIFJkdEJ1dHRvbkJhc2VJbnQsXHJcbn0gZnJvbSAnLi4vYnV0dG9uL3JkdC1idXR0b24taW50JztcclxuaW1wb3J0IHsgUkRUX0JVVFRPTl9CQVNFX1BST1ZJREVSIH0gZnJvbSAnLi4vcHJvdmlkZXJzL3JkdC1idXR0b24tYmFzZS1wcm92aWRlcic7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tyZHRCdXR0b25PdXRsZXRdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGV4cG9ydEFzOiAncmR0QnV0dG9uT3V0bGV0JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFJkdEJ1dHRvbk91dGxldERpcmVjdGl2ZTxcclxuICBUQnV0dG9uIGV4dGVuZHMgUmR0QnV0dG9uQmFzZUludCxcclxuICBUQnV0dG9uSW5wdXRzIGV4dGVuZHMgUmR0QnV0dG9uQmFzZUlucHV0c0ludCA9IFJkdEJ1dHRvbkJhc2VJbnB1dHNJbnRcclxuPiBleHRlbmRzIFJkdENvbXBvbmVudE91dGxldERpcmVjdGl2ZTxUQnV0dG9uLCBUQnV0dG9uSW5wdXRzPiB7XHJcbiAgcmVhZG9ubHkgY29tcG9uZW50Q2xhc3MgPSBpbmplY3QoUkRUX0JVVFRPTl9CQVNFX1BST1ZJREVSKSBhcyBUeXBlPFRCdXR0b24+O1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZVxyXG4gIHJlYWRvbmx5IGNsaWNrID0gb3V0cHV0PE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgc3VwZXIoKTtcclxuICAgIHRoaXMuaW5pdENvbXBvbmVudFJlZigpO1xyXG4gICAgdGhpcy5jb21wb25lbnRSZWY/Lmluc3RhbmNlLmNsaWNrLnN1YnNjcmliZSgoZXZ0KSA9PiB0aGlzLmNsaWNrLmVtaXQoZXZ0KSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==","export const RDT_BUTTON_SETTER_KEY = Symbol();\nexport const RDT_BUTTON_DEFAULT_PROPAGATE = false;\nexport const RDT_BUTTON_DEFAULT_TARGET = '_self';\nexport const RDT_BUTTON_DEFAULT_TAB_INDEX = null;\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJ1dHRvbi1jb25zdGFudHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9AbmdyZHQvYnV0dG9uL3NyYy9saWIvYnV0dG9uL3JkdC1idXR0b24tY29uc3RhbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLE1BQU0sRUFBRSxDQUFDO0FBQzlDLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLEtBQUssQ0FBQztBQUNsRCxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBRyxPQUFPLENBQUM7QUFDakQsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsSUFBSSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFJEVF9CVVRUT05fU0VUVEVSX0tFWSA9IFN5bWJvbCgpO1xyXG5leHBvcnQgY29uc3QgUkRUX0JVVFRPTl9ERUZBVUxUX1BST1BBR0FURSA9IGZhbHNlO1xyXG5leHBvcnQgY29uc3QgUkRUX0JVVFRPTl9ERUZBVUxUX1RBUkdFVCA9ICdfc2VsZic7XHJcbmV4cG9ydCBjb25zdCBSRFRfQlVUVE9OX0RFRkFVTFRfVEFCX0lOREVYID0gbnVsbDtcclxuIl19","import { PlatformLocation } from '@angular/common';\nimport { afterRenderEffect, booleanAttribute, computed, Directive, ElementRef, EventEmitter, inject, input, linkedSignal, numberAttribute, output, Output, Renderer2, } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { RdtInteractiveElementComponent } from '@ngrdt/core';\nimport { RdtStringUtils, } from '@ngrdt/utils';\nimport { take } from 'rxjs';\nimport { RDT_BUTTON_DEFAULT_TAB_INDEX, RDT_BUTTON_DEFAULT_TARGET, } from './rdt-button-constants';\nimport * as i0 from \"@angular/core\";\nexport class RdtButtonBase extends RdtInteractiveElementComponent {\n elRef = inject(ElementRef);\n router = inject(Router);\n baseHref = inject(PlatformLocation).getBaseHrefFromDOM();\n renderer = inject(Renderer2);\n notificationService;\n internalDisabledMap = {};\n internalLoadingMap = {};\n // Inputs\n typeInput = input('button', {\n alias: 'type',\n });\n type = linkedSignal(() => this.typeInput());\n propagateInput = input(false, {\n transform: booleanAttribute,\n alias: 'propagate',\n });\n propagate = linkedSignal(() => this.propagateInput());\n tabIndexInput = input(RDT_BUTTON_DEFAULT_TAB_INDEX, {\n transform: numberAttribute,\n alias: 'tabIndex',\n });\n tabIndex = linkedSignal(() => this.tabIndexInput());\n hrefInput = input(undefined, {\n alias: 'href',\n });\n href = linkedSignal(() => this.hrefInput());\n ngHrefInput = input(undefined, {\n alias: 'ngHref',\n });\n ngHref = linkedSignal(() => this.ngHrefInput());\n targetInput = input(RDT_BUTTON_DEFAULT_TARGET, { alias: 'target' });\n target = linkedSignal(() => this.targetInput());\n stateParamsInput = input(undefined, {\n alias: 'stateParams',\n });\n stateParams = linkedSignal(() => this.stateParamsInput());\n queryParamsInput = input(undefined, {\n alias: 'queryParams',\n });\n queryParams = linkedSignal(() => this.queryParamsInput());\n downloadInput = input(undefined, {\n alias: 'download',\n });\n download = linkedSignal(() => this.downloadInput());\n iconInput = input(null, {\n alias: 'icon',\n });\n icon = linkedSignal(() => this.iconInput());\n labelInput = input(undefined, {\n alias: 'label',\n });\n label = linkedSignal(() => this.labelInput());\n dataTestIdInput = input(undefined, { alias: 'dataTestId' });\n dataTestId = linkedSignal(() => this.dataTestIdInput() ?? this.label() ?? '');\n onlineEnabledInput$ = input(null, {\n alias: 'onlineEnabled',\n });\n onlineEnabled$ = linkedSignal(() => this.onlineEnabledInput$());\n ariaInput = input({}, { alias: 'aria' });\n aria = linkedSignal(() => this.ariaInput());\n hrefWithParams = computed(() => {\n const href = this.href();\n const queryParams = this.queryParams();\n if (href && queryParams) {\n return RdtStringUtils.appendQueryParams(href, queryParams);\n }\n else {\n return href;\n }\n });\n ariaRenderEffect = afterRenderEffect({\n write: () => this.updateAriaAttributes(this.aria()),\n });\n /**\n * @deprecated Use `click` signal output instead\n */\n click$ = new EventEmitter();\n // eslint-disable-next-line @angular-eslint/no-output-native\n click = output();\n focus() {\n this.focusElement()?.focus();\n }\n canFocus() {\n return !this.disabled() && !!this.focusElement();\n }\n onClicked($event) {\n const onlineEnabled$ = this.onlineEnabled$();\n const disabled = this.disabled();\n const propagate = this.propagate();\n if (onlineEnabled$) {\n if (disabled) {\n return;\n }\n if (!propagate) {\n $event.stopPropagation();\n }\n this.setDisabledState(true, RdtButtonBase.ONLINE_ENABLED_KEY);\n this.setLoadingState(true, RdtButtonBase.ONLINE_ENABLED_KEY);\n const observer = {\n next: () => {\n this.finishOnlineCheck();\n this.onClickPermissionAllowed($event);\n },\n error: (error) => {\n this.finishOnlineCheck();\n this.notifyAccessDenied(error);\n },\n complete: () => this.finishOnlineCheck(),\n };\n onlineEnabled$.pipe(take(1)).subscribe(observer);\n }\n else {\n this.emitAndStopProp($event);\n }\n }\n emitAndStopProp($event) {\n const ngHref = this.ngHref();\n const href = this.href();\n const propagate = this.propagate();\n const disabled = this.disabled();\n // stopPropagation prevents routerLinks from working\n if (!propagate && !ngHref && !href) {\n $event.stopPropagation();\n }\n if (!disabled && !ngHref && !href) {\n this.click$.emit($event);\n this.click.emit($event);\n }\n }\n onClickPermissionAllowed($event) {\n const disabled = this.disabled();\n if (!disabled) {\n this.navigateOrEmit($event);\n }\n }\n navigateOrEmit(event) {\n const ngHref = this.ngHref();\n const href = this.href();\n const target = this.target();\n const queryParams = this.queryParams();\n const stateParams = this.stateParams();\n if (ngHref) {\n if (target !== '_self') {\n const absolutePath = RdtStringUtils.createAbsoluteUrl(ngHref, this.baseHref);\n const pathWithParams = RdtStringUtils.appendQueryParams(absolutePath, queryParams);\n window.open(pathWithParams, target);\n }\n else {\n this.router.navigate([ngHref], {\n queryParams: queryParams,\n state: stateParams ?? undefined,\n });\n }\n }\n else if (href) {\n const pathWithParams = RdtStringUtils.appendQueryParams(href, queryParams);\n window.open(pathWithParams, target);\n }\n else {\n this.click$.emit(event);\n this.click.emit(event);\n }\n }\n notifyAccessDenied(error) {\n if (this.notificationService) {\n if (typeof error === 'string') {\n this.notificationService.error(error);\n }\n else {\n this.notificationService.accessDenied();\n }\n }\n }\n finishOnlineCheck() {\n this.setDisabledState(false, RdtButtonBase.ONLINE_ENABLED_KEY);\n this.setLoadingState(false, RdtButtonBase.ONLINE_ENABLED_KEY);\n }\n updateAriaAttributes(aria) {\n const el = this.ariaElement();\n if (el) {\n Object.entries(aria).forEach(([key, value]) => {\n if (value === null || value === undefined) {\n this.renderer.removeAttribute(el, key);\n }\n else {\n this.renderer.setAttribute(el, key, String(value));\n }\n });\n }\n }\n static ONLINE_ENABLED_KEY = Symbol();\n static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtButtonBase, deps: null, target: i0.ɵɵFactoryTarget.Directive });\n static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.0.0\", type: RdtButtonBase, isStandalone: true, inputs: { typeInput: { classPropertyName: \"typeInput\", publicName: \"type\", isSignal: true, isRequired: false, transformFunction: null }, propagateInput: { classPropertyName: \"propagateInput\", publicName: \"propagate\", isSignal: true, isRequired: false, transformFunction: null }, tabIndexInput: { classPropertyName: \"tabIndexInput\", publicName: \"tabIndex\", isSignal: true, isRequired: false, transformFunction: null }, hrefInput: { classPropertyName: \"hrefInput\", publicName: \"href\", isSignal: true, isRequired: false, transformFunction: null }, ngHrefInput: { classPropertyName: \"ngHrefInput\", publicName: \"ngHref\", isSignal: true, isRequired: false, transformFunction: null }, targetInput: { classPropertyName: \"targetInput\", publicName: \"target\", isSignal: true, isRequired: false, transformFunction: null }, stateParamsInput: { classPropertyName: \"stateParamsInput\", publicName: \"stateParams\", isSignal: true, isRequired: false, transformFunction: null }, queryParamsInput: { classPropertyName: \"queryParamsInput\", publicName: \"queryParams\", isSignal: true, isRequired: false, transformFunction: null }, downloadInput: { classPropertyName: \"downloadInput\", publicName: \"download\", isSignal: true, isRequired: false, transformFunction: null }, iconInput: { classPropertyName: \"iconInput\", publicName: \"icon\", isSignal: true, isRequired: false, transformFunction: null }, labelInput: { classPropertyName: \"labelInput\", publicName: \"label\", isSignal: true, isRequired: false, transformFunction: null }, dataTestIdInput: { classPropertyName: \"dataTestIdInput\", publicName: \"dataTestId\", isSignal: true, isRequired: false, transformFunction: null }, onlineEnabledInput$: { classPropertyName: \"onlineEnabledInput$\", publicName: \"onlineEnabled\", isSignal: true, isRequired: false, transformFunction: null }, ariaInput: { classPropertyName: \"ariaInput\", publicName: \"aria\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { click$: \"click$\", click: \"click\" }, usesInheritance: true, ngImport: i0 });\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0\", ngImport: i0, type: RdtButtonBase, decorators: [{\n type: Directive\n }], propDecorators: { click$: [{\n type: Output\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmR0LWJ1dHRvbi1iYXNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vQG5ncmR0L2J1dHRvbi9zcmMvbGliL2J1dHRvbi9yZHQtYnV0dG9uLWJhc2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixnQkFBZ0IsRUFDaEIsUUFBUSxFQUNSLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBQ0wsWUFBWSxFQUNaLGVBQWUsRUFDZixNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsR0FFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQVUsTUFBTSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDakQsT0FBTyxFQUFvQiw4QkFBOEIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMvRSxPQUFPLEVBR0wsY0FBYyxHQUVmLE1BQU0sY0FBYyxDQUFDO0FBQ3RCLE9BQU8sRUFBYyxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFeEMsT0FBTyxFQUNMLDRCQUE0QixFQUM1Qix5QkFBeUIsR0FDMUIsTUFBTSx3QkFBd0IsQ0FBQzs7QUFJaEMsTUFBTSxPQUFnQixhQUNwQixTQUFRLDhCQUE4QjtJQUduQixLQUFLLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQzNCLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEIsUUFBUSxHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDekQsUUFBUSxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUU3QixtQkFBbUIsQ0FBbUM7SUFFL0QsbUJBQW1CLEdBQTRCLEVBQUUsQ0FBQztJQUNsRCxrQkFBa0IsR0FBNEIsRUFBRSxDQUFDO0lBTTNE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QkFEZCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGxhdGZvcm1Mb2NhdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7XHJcbiAgYWZ0ZXJSZW5kZXJFZmZlY3QsXHJcbiAgYm9vbGVhbkF0dHJpYnV0ZSxcclxuICBjb21wdXRlZCxcclxuICBEaXJlY3RpdmUsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgaW5qZWN0LFxyXG4gIGlucHV0LFxyXG4gIGxpbmtlZFNpZ25hbCxcclxuICBudW1iZXJBdHRyaWJ1dGUsXHJcbiAgb3V0cHV0LFxyXG4gIE91dHB1dCxcclxuICBSZW5kZXJlcjIsXHJcbiAgU2lnbmFsLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQYXJhbXMsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFJkdEJvb2xlYW5SZXN1bHQsIFJkdEludGVyYWN0aXZlRWxlbWVudENvbXBvbmVudCB9IGZyb20gJ0BuZ3JkdC9jb3JlJztcclxuaW1wb3J0IHtcclxuICBBcmlhQXR0cmlidXRlcyxcclxuICBOdWxsYWJsZSxcclxuICBSZHRTdHJpbmdVdGlscyxcclxuICBXaW5kb3dPcGVuVGFyZ2V0VHlwZSxcclxufSBmcm9tICdAbmdyZHQvdXRpbHMnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCB0YWtlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IFJkdEJ1dHRvbk5vdGlmaWNhdGlvblNlcnZpY2VJbnQgfSBmcm9tICcuLi9wcm92aWRlcnMvcmR0LWJ1dHRvbi1ub3RpZmljYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7XHJcbiAgUkRUX0JVVFRPTl9ERUZBVUxUX1RBQl9JTkRFWCxcclxuICBSRFRfQlVUVE9OX0RFRkFVTFRfVEFSR0VULFxyXG59IGZyb20gJy4vcmR0LWJ1dHRvbi1jb25zdGFudHMnO1xyXG5pbXBvcnQgeyBSZHRCdXR0b25CYXNlSW50IH0gZnJvbSAnLi9yZHQtYnV0dG9uLWludCc7XHJcblxyXG5ARGlyZWN0aXZlKClcclxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFJkdEJ1dHRvbkJhc2U8VEljb24gPSBzdHJpbmc+XHJcbiAgZXh0ZW5kcyBSZHRJbnRlcmFjdGl2ZUVsZW1lbnRDb21wb25lbnRcclxuICBpbXBsZW1lbnRzIFJkdEJ1dHRvbkJhc2VJbnQ8VEljb24+XHJcbntcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgZWxSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xyXG4gIHByb3RlY3RlZCByZWFkb25seSBiYXNlSHJlZiA9IGluamVjdChQbGF0Zm9ybUxvY2F0aW9uKS5nZXRCYXNlSHJlZkZyb21ET00oKTtcclxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcclxuXHJcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IG5vdGlmaWNhdGlvblNlcnZpY2U/OiBSZHRCdXR0b25Ob3RpZmljYXRpb25TZXJ2aWNlSW50O1xyXG5cclxuICBwcm90ZWN0ZWQgaW50ZXJuYWxEaXNhYmxlZE1hcDogUmVjb3JkPHN5bWJvbCwgYm9vbGVhbj4gPSB7fTtcclxuICBwcm90ZWN0ZWQgaW50ZXJuYWxMb2FkaW5nTWFwOiBSZWNvcmQ8c3ltYm9sLCBib29sZWFuPiA9IHt9O1xyXG5cclxuICBhYnN0cmFjdCByZWFkb25seSBmb2N1c0VsZW1lbnQ6IFNpZ25hbDxIVE1MRWxlbWVudCB8IG51bGw+O1xyXG4gIGFic3RyYWN0IHJlYWRvbmx5IGFyaWFFbGVtZW50OiBTaWduYWw8SFRNTEVsZW1lbnQgfCBudWxsPjtcclxuICBhYnN0cmFjdCByZWFkb25seSBhbmNob3JFbGVtZW50OiBTaWduYWw8SFRNTEVsZW1lbnQgfCBudWxsPjtcclxuXHJcbiAgLy8gSW5wdXRzXHJcbiAgcmVhZG9ubHkgdHlwZUlucHV0ID0gaW5wdXQ8J2J1dHRvbicgfCAnc3VibWl0JyB8ICdyZXNldCc+KCdidXR0b24nLCB7XHJcbiAgICBhbGlhczogJ3R5cGUnLFxyXG4gIH0pO1xyXG4gIHJlYWRvbmx5IHR5cGUgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy50eXBlSW5wdXQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IHByb3BhZ2F0ZUlucHV0ID0gaW5wdXQoZmFsc2UsIHtcclxuICAgIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSxcclxuICAgIGFsaWFzOiAncHJvcGFnYXRlJyxcclxuICB9KTtcclxuICByZWFkb25seSBwcm9wYWdhdGUgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5wcm9wYWdhdGVJbnB1dCgpKTtcclxuXHJcbiAgcmVhZG9ubHkgdGFiSW5kZXhJbnB1dCA9IGlucHV0KFJEVF9CVVRUT05fREVGQVVMVF9UQUJfSU5ERVgsIHtcclxuICAgIHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlLFxyXG4gICAgYWxpYXM6ICd0YWJJbmRleCcsXHJcbiAgfSk7XHJcbiAgcmVhZG9ubHkgdGFiSW5kZXggPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy50YWJJbmRleElucHV0KCkpO1xyXG5cclxuICByZWFkb25seSBocmVmSW5wdXQgPSBpbnB1dDxOdWxsYWJsZTxzdHJpbmc+Pih1bmRlZmluZWQsIHtcclxuICAgIGFsaWFzOiAnaHJlZicsXHJcbiAgfSk7XHJcbiAgcmVhZG9ubHkgaHJlZiA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLmhyZWZJbnB1dCgpKTtcclxuXHJcbiAgcmVhZG9ubHkgbmdIcmVmSW5wdXQgPSBpbnB1dDxOdWxsYWJsZTxzdHJpbmc+Pih1bmRlZmluZWQsIHtcclxuICAgIGFsaWFzOiAnbmdIcmVmJyxcclxuICB9KTtcclxuICByZWFkb25seSBuZ0hyZWYgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5uZ0hyZWZJbnB1dCgpKTtcclxuXHJcbiAgcmVhZG9ubHkgdGFyZ2V0SW5wdXQgPSBpbnB1dDxXaW5kb3dPcGVuVGFyZ2V0VHlwZT4oXHJcbiAgICBSRFRfQlVUVE9OX0RFRkFVTFRfVEFSR0VULFxyXG4gICAgeyBhbGlhczogJ3RhcmdldCcgfVxyXG4gICk7XHJcbiAgcmVhZG9ubHkgdGFyZ2V0ID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMudGFyZ2V0SW5wdXQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IHN0YXRlUGFyYW1zSW5wdXQgPSBpbnB1dDxOdWxsYWJsZTxQYXJhbXM+Pih1bmRlZmluZWQsIHtcclxuICAgIGFsaWFzOiAnc3RhdGVQYXJhbXMnLFxyXG4gIH0pO1xyXG4gIHJlYWRvbmx5IHN0YXRlUGFyYW1zID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMuc3RhdGVQYXJhbXNJbnB1dCgpKTtcclxuXHJcbiAgcmVhZG9ubHkgcXVlcnlQYXJhbXNJbnB1dCA9IGlucHV0PE51bGxhYmxlPFBhcmFtcz4+KHVuZGVmaW5lZCwge1xyXG4gICAgYWxpYXM6ICdxdWVyeVBhcmFtcycsXHJcbiAgfSk7XHJcbiAgcmVhZG9ubHkgcXVlcnlQYXJhbXMgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5xdWVyeVBhcmFtc0lucHV0KCkpO1xyXG5cclxuICByZWFkb25seSBkb3dubG9hZElucHV0ID0gaW5wdXQ8TnVsbGFibGU8c3RyaW5nPj4odW5kZWZpbmVkLCB7XHJcbiAgICBhbGlhczogJ2Rvd25sb2FkJyxcclxuICB9KTtcclxuICByZWFkb25seSBkb3dubG9hZCA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLmRvd25sb2FkSW5wdXQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IGljb25JbnB1dCA9IGlucHV0PE51bGxhYmxlPFRJY29uPj4obnVsbCwge1xyXG4gICAgYWxpYXM6ICdpY29uJyxcclxuICB9KTtcclxuICByZWFkb25seSBpY29uID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMuaWNvbklucHV0KCkpO1xyXG5cclxuICByZWFkb25seSBsYWJlbElucHV0ID0gaW5wdXQ8TnVsbGFibGU8c3RyaW5nPj4odW5kZWZpbmVkLCB7XHJcbiAgICBhbGlhczogJ2xhYmVsJyxcclxuICB9KTtcclxuICByZWFkb25seSBsYWJlbCA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLmxhYmVsSW5wdXQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IGRhdGFUZXN0SWRJbnB1dCA9IGlucHV0KHVuZGVmaW5lZCwgeyBhbGlhczogJ2RhdGFUZXN0SWQnIH0pO1xyXG4gIHJlYWRvbmx5IGRhdGFUZXN0SWQgPSBsaW5rZWRTaWduYWwoXHJcbiAgICAoKSA9PiB0aGlzLmRhdGFUZXN0SWRJbnB1dCgpID8/IHRoaXMubGFiZWwoKSA/PyAnJ1xyXG4gICk7XHJcblxyXG4gIHJlYWRvbmx5IG9ubGluZUVuYWJsZWRJbnB1dCQgPSBpbnB1dDxOdWxsYWJsZTxPYnNlcnZhYmxlPGJvb2xlYW4+Pj4obnVsbCwge1xyXG4gICAgYWxpYXM6ICdvbmxpbmVFbmFibGVkJyxcclxuICB9KTtcclxuICByZWFkb25seSBvbmxpbmVFbmFibGVkJCA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLm9ubGluZUVuYWJsZWRJbnB1dCQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IGFyaWFJbnB1dCA9IGlucHV0PFBhcnRpYWw8QXJpYUF0dHJpYnV0ZXM+Pih7fSwgeyBhbGlhczogJ2FyaWEnIH0pO1xyXG4gIHJlYWRvbmx5IGFyaWEgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5hcmlhSW5wdXQoKSk7XHJcblxyXG4gIHJlYWRvbmx5IGhyZWZXaXRoUGFyYW1zID0gY29tcHV0ZWQoKCkgPT4ge1xyXG4gICAgY29uc3QgaHJlZiA9IHRoaXMuaHJlZigpO1xyXG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSB0aGlzLnF1ZXJ5UGFyYW1zKCk7XHJcbiAgICBpZiAoaHJlZiAmJiBxdWVyeVBhcmFtcykge1xyXG4gICAgICByZXR1cm4gUmR0U3RyaW5nVXRpbHMuYXBwZW5kUXVlcnlQYXJhbXMoaHJlZiwgcXVlcnlQYXJhbXMpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgcmV0dXJuIGhyZWY7XHJcbiAgICB9XHJcbiAgfSk7XHJcblxyXG4gIHByb3RlY3RlZCByZWFkb25seSBhcmlhUmVuZGVyRWZmZWN0ID0gYWZ0ZXJSZW5kZXJFZmZlY3Qoe1xyXG4gICAgd3JpdGU6ICgpID0+IHRoaXMudXBkYXRlQXJpYUF0dHJpYnV0ZXModGhpcy5hcmlhKCkpLFxyXG4gIH0pO1xyXG5cclxuICAvKipcclxuICAgKiBAZGVwcmVjYXRlZCBVc2UgYGNsaWNrYCBzaWduYWwgb3V0cHV0IGluc3RlYWRcclxuICAgKi9cclxuICBAT3V0cHV0KClcclxuICByZWFkb25seSBjbGljayQgPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZVxyXG4gIHJlYWRvbmx5IGNsaWNrID0gb3V0cHV0PE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIGZvY3VzKCk6IHZvaWQge1xyXG4gICAgdGhpcy5mb2N1c0VsZW1lbnQoKT8uZm9jdXMoKTtcclxuICB9XHJcblxyXG4gIG92ZXJyaWRlIGNhbkZvY3VzKCk6IFJkdEJvb2xlYW5SZXN1bHQge1xyXG4gICAgcmV0dXJuICF0aGlzLmRpc2FibGVkKCkgJiYgISF0aGlzLmZvY3VzRWxlbWVudCgpO1xyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIG9uQ2xpY2tlZCgkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGNvbnN0IG9ubGluZUVuYWJsZWQkID0gdGhpcy5vbmxpbmVFbmFibGVkJCgpO1xyXG4gICAgY29uc3QgZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkKCk7XHJcbiAgICBjb25zdCBwcm9wYWdhdGUgPSB0aGlzLnByb3BhZ2F0ZSgpO1xyXG4gICAgaWYgKG9ubGluZUVuYWJsZWQkKSB7XHJcbiAgICAgIGlmIChkaXNhYmxlZCkge1xyXG4gICAgICAgIHJldHVybjtcclxuICAgICAgfVxyXG5cclxuICAgICAgaWYgKCFwcm9wYWdhdGUpIHtcclxuICAgICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5zZXREaXNhYmxlZFN0YXRlKHRydWUsIFJkdEJ1dHRvbkJhc2UuT05MSU5FX0VOQUJMRURfS0VZKTtcclxuICAgICAgdGhpcy5zZXRMb2FkaW5nU3RhdGUodHJ1ZSwgUmR0QnV0dG9uQmFzZS5PTkxJTkVfRU5BQkxFRF9LRVkpO1xyXG4gICAgICBjb25zdCBvYnNlcnZlciA9IHtcclxuICAgICAgICBuZXh0OiAoKSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmZpbmlzaE9ubGluZUNoZWNrKCk7XHJcbiAgICAgICAgICB0aGlzLm9uQ2xpY2tQZXJtaXNzaW9uQWxsb3dlZCgkZXZlbnQpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgZXJyb3I6IChlcnJvcjogYW55KSA9PiB7XHJcbiAgICAgICAgICB0aGlzLmZpbmlzaE9ubGluZUNoZWNrKCk7XHJcbiAgICAgICAgICB0aGlzLm5vdGlmeUFjY2Vzc0RlbmllZChlcnJvcik7XHJcbiAgICAgICAgfSxcclxuICAgICAgICBjb21wbGV0ZTogKCkgPT4gdGhpcy5maW5pc2hPbmxpbmVDaGVjaygpLFxyXG4gICAgICB9O1xyXG4gICAgICBvbmxpbmVFbmFibGVkJC5waXBlKHRha2UoMSkpLnN1YnNjcmliZShvYnNlcnZlcik7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmVtaXRBbmRTdG9wUHJvcCgkZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBlbWl0QW5kU3RvcFByb3AoJGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBjb25zdCBuZ0hyZWYgPSB0aGlzLm5nSHJlZigpO1xyXG4gICAgY29uc3QgaHJlZiA9IHRoaXMuaHJlZigpO1xyXG4gICAgY29uc3QgcHJvcGFnYXRlID0gdGhpcy5wcm9wYWdhdGUoKTtcclxuICAgIGNvbnN0IGRpc2FibGVkID0gdGhpcy5kaXNhYmxlZCgpO1xyXG4gICAgLy8gc3RvcFByb3BhZ2F0aW9uIHByZXZlbnRzIHJvdXRlckxpbmtzIGZyb20gd29ya2luZ1xyXG4gICAgaWYgKCFwcm9wYWdhdGUgJiYgIW5nSHJlZiAmJiAhaHJlZikge1xyXG4gICAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB9XHJcbiAgICBpZiAoIWRpc2FibGVkICYmICFuZ0hyZWYgJiYgIWhyZWYpIHtcclxuICAgICAgdGhpcy5jbGljayQuZW1pdCgkZXZlbnQpO1xyXG4gICAgICB0aGlzLmNsaWNrLmVtaXQoJGV2ZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgb25DbGlja1Blcm1pc3Npb25BbGxvd2VkKCRldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgY29uc3QgZGlzYWJsZWQgPSB0aGlzLmRpc2FibGVkKCk7XHJcbiAgICBpZiAoIWRpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMubmF2aWdhdGVPckVtaXQoJGV2ZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbmF2aWdhdGVPckVtaXQoZXZlbnQ6IE1vdXNlRXZlbnQpIHtcclxuICAgIGNvbnN0IG5nSHJlZiA9IHRoaXMubmdIcmVmKCk7XHJcbiAgICBjb25zdCBocmVmID0gdGhpcy5ocmVmKCk7XHJcbiAgICBjb25zdCB0YXJnZXQgPSB0aGlzLnRhcmdldCgpO1xyXG4gICAgY29uc3QgcXVlcnlQYXJhbXMgPSB0aGlzLnF1ZXJ5UGFyYW1zKCk7XHJcbiAgICBjb25zdCBzdGF0ZVBhcmFtcyA9IHRoaXMuc3RhdGVQYXJhbXMoKTtcclxuXHJcbiAgICBpZiAobmdIcmVmKSB7XHJcbiAgICAgIGlmICh0YXJnZXQgIT09ICdfc2VsZicpIHtcclxuICAgICAgICBjb25zdCBhYnNvbHV0ZVBhdGggPSBSZHRTdHJpbmdVdGlscy5jcmVhdGVBYnNvbHV0ZVVybChcclxuICAgICAgICAgIG5nSHJlZixcclxuICAgICAgICAgIHRoaXMuYmFzZUhyZWZcclxuICAgICAgICApO1xyXG4gICAgICAgIGNvbnN0IHBhdGhXaXRoUGFyYW1zID0gUmR0U3RyaW5nVXRpbHMuYXBwZW5kUXVlcnlQYXJhbXMoXHJcbiAgICAgICAgICBhYnNvbHV0ZVBhdGgsXHJcbiAgICAgICAgICBxdWVyeVBhcmFtc1xyXG4gICAgICAgICk7XHJcbiAgICAgICAgd2luZG93Lm9wZW4ocGF0aFdpdGhQYXJhbXMsIHRhcmdldCk7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW25nSHJlZl0sIHtcclxuICAgICAgICAgIHF1ZXJ5UGFyYW1zOiBxdWVyeVBhcmFtcyxcclxuICAgICAgICAgIHN0YXRlOiBzdGF0ZVBhcmFtcyA/PyB1bmRlZmluZWQsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSBpZiAoaHJlZikge1xyXG4gICAgICBjb25zdCBwYXRoV2l0aFBhcmFtcyA9IFJkdFN0cmluZ1V0aWxzLmFwcGVuZFF1ZXJ5UGFyYW1zKFxyXG4gICAgICAgIGhyZWYsXHJcbiAgICAgICAgcXVlcnlQYXJhbXNcclxuICAgICAgKTtcclxuICAgICAgd2luZG93Lm9wZW4ocGF0aFdpdGhQYXJhbXMsIHRhcmdldCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNsaWNrJC5lbWl0KGV2ZW50KTtcclxuICAgICAgdGhpcy5jbGljay5lbWl0KGV2ZW50KTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgbm90aWZ5QWNjZXNzRGVuaWVkKGVycm9yPzogdW5rbm93bikge1xyXG4gICAgaWYgKHRoaXMubm90aWZpY2F0aW9uU2VydmljZSkge1xyXG4gICAgICBpZiAodHlwZW9mIGVycm9yID09PSAnc3RyaW5nJykge1xyXG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uU2VydmljZS5lcnJvcihlcnJvcik7XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb25TZXJ2aWNlLmFjY2Vzc0RlbmllZCgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGZpbmlzaE9ubGluZUNoZWNrKCkge1xyXG4gICAgdGhpcy5zZXREaXNhYmxlZFN0YXRlKGZhbHNlLCBSZHRCdXR0b25CYXNlLk9OTElORV9FTkFCTEVEX0tFWSk7XHJcbiAgICB0aGlzLnNldExvYWRpbmdTdGF0ZShmYWxzZSwgUmR0QnV0dG9uQmFzZS5PTkxJTkVfRU5BQkxFRF9LRVkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSB1cGRhdGVBcmlhQXR0cmlidXRlcyhhcmlhOiBQYXJ0aWFsPEFyaWFBdHRyaWJ1dGVzPikge1xyXG4gICAgY29uc3QgZWwgPSB0aGlzLmFyaWFFbGVtZW50KCk7XHJcbiAgICBpZiAoZWwpIHtcclxuICAgICAgT2JqZWN0LmVudHJpZXMoYXJpYSkuZm9yRWFjaCgoW2tleSwgdmFsdWVdKSA9PiB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgIHRoaXMucmVuZGVyZXIucmVtb3ZlQXR0cmlidXRlKGVsLCBrZXkpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbCwga2V5LCBTdHJpbmcodmFsdWUpKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJvdGVjdGVkIHN0YXRpYyByZWFkb25seSBPTkxJTkVfRU5BQkxFRF9LRVkgPSBTeW1ib2woKTtcclxufVxyXG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdyZHQtYnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vQG5ncmR0L2J1dHRvbi9zcmMvbmdyZHQtYnV0dG9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { Signal, Type, ElementRef, Renderer2, EventEmitter, InjectionToken } from '@angular/core';
2
+ import { OutputRef, Signal, Type, ElementRef, Renderer2, EventEmitter, InjectionToken } from '@angular/core';
3
3
  import { RdtInteractiveElementComponent, RdtLinkedState, RdtComponentOutletDirective, RdtBooleanResult } from '@ngrdt/core';
4
4
  import { Params, Router } from '@angular/router';
5
5
  import { Nullable, WindowOpenTargetType, AriaAttributes } from '@ngrdt/utils';
@@ -21,7 +21,11 @@ interface RdtButtonBaseInputsInt<TIcon = string> {
21
21
  aria: Partial<AriaAttributes>;
22
22
  }
23
23
  interface RdtButtonBaseInt<TIcon = string> extends RdtInteractiveElementComponent, RdtLinkedState<RdtButtonBaseInputsInt<TIcon>> {
24
+ /**
25
+ * @deprecated Use click output instead
26
+ */
24
27
  readonly click$: Observable<MouseEvent>;
28
+ readonly click: OutputRef<MouseEvent>;
25
29
  readonly anchorElement: Signal<HTMLElement | null>;
26
30
  readonly focusElement: Signal<HTMLElement | null>;
27
31
  readonly ariaElement: Signal<HTMLElement | null>;
@@ -30,10 +34,10 @@ interface RdtButtonBaseInt<TIcon = string> extends RdtInteractiveElementComponen
30
34
 
31
35
  declare class RdtButtonOutletDirective<TButton extends RdtButtonBaseInt, TButtonInputs extends RdtButtonBaseInputsInt = RdtButtonBaseInputsInt> extends RdtComponentOutletDirective<TButton, TButtonInputs> {
32
36
  readonly componentClass: Type<TButton>;
33
- readonly click$: _angular_core.OutputEmitterRef<MouseEvent>;
37
+ readonly click: _angular_core.OutputEmitterRef<MouseEvent>;
34
38
  constructor();
35
39
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdtButtonOutletDirective<any, any>, never>;
36
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdtButtonOutletDirective<any, any>, "[rdtButtonOutlet]", ["rdtButtonOutlet"], {}, { "click$": "click$"; }, never, never, true, never>;
40
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdtButtonOutletDirective<any, any>, "[rdtButtonOutlet]", ["rdtButtonOutlet"], {}, { "click": "click"; }, never, never, true, never>;
37
41
  }
38
42
 
39
43
  interface RdtButtonNotificationServiceInt {
@@ -52,6 +56,8 @@ declare abstract class RdtButtonBase<TIcon = string> extends RdtInteractiveEleme
52
56
  abstract readonly focusElement: Signal<HTMLElement | null>;
53
57
  abstract readonly ariaElement: Signal<HTMLElement | null>;
54
58
  abstract readonly anchorElement: Signal<HTMLElement | null>;
59
+ readonly typeInput: _angular_core.InputSignal<"button" | "submit" | "reset">;
60
+ readonly type: _angular_core.WritableSignal<"button" | "submit" | "reset">;
55
61
  readonly propagateInput: _angular_core.InputSignalWithTransform<boolean, unknown>;
56
62
  readonly propagate: _angular_core.WritableSignal<boolean>;
57
63
  readonly tabIndexInput: _angular_core.InputSignalWithTransform<number | null, unknown>;
@@ -80,7 +86,11 @@ declare abstract class RdtButtonBase<TIcon = string> extends RdtInteractiveEleme
80
86
  readonly aria: _angular_core.WritableSignal<Partial<AriaAttributes>>;
81
87
  readonly hrefWithParams: Signal<Nullable<string>>;
82
88
  protected readonly ariaRenderEffect: _angular_core.AfterRenderRef;
89
+ /**
90
+ * @deprecated Use `click` signal output instead
91
+ */
83
92
  readonly click$: EventEmitter<MouseEvent>;
93
+ readonly click: _angular_core.OutputEmitterRef<MouseEvent>;
84
94
  focus(): void;
85
95
  canFocus(): RdtBooleanResult;
86
96
  protected onClicked($event: MouseEvent): void;
@@ -92,7 +102,7 @@ declare abstract class RdtButtonBase<TIcon = string> extends RdtInteractiveEleme
92
102
  private updateAriaAttributes;
93
103
  protected static readonly ONLINE_ENABLED_KEY: unique symbol;
94
104
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdtButtonBase<any>, never>;
95
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdtButtonBase<any>, never, never, { "propagateInput": { "alias": "propagate"; "required": false; "isSignal": true; }; "tabIndexInput": { "alias": "tabIndex"; "required": false; "isSignal": true; }; "hrefInput": { "alias": "href"; "required": false; "isSignal": true; }; "ngHrefInput": { "alias": "ngHref"; "required": false; "isSignal": true; }; "targetInput": { "alias": "target"; "required": false; "isSignal": true; }; "stateParamsInput": { "alias": "stateParams"; "required": false; "isSignal": true; }; "queryParamsInput": { "alias": "queryParams"; "required": false; "isSignal": true; }; "downloadInput": { "alias": "download"; "required": false; "isSignal": true; }; "iconInput": { "alias": "icon"; "required": false; "isSignal": true; }; "labelInput": { "alias": "label"; "required": false; "isSignal": true; }; "dataTestIdInput": { "alias": "dataTestId"; "required": false; "isSignal": true; }; "onlineEnabledInput$": { "alias": "onlineEnabled"; "required": false; "isSignal": true; }; "ariaInput": { "alias": "aria"; "required": false; "isSignal": true; }; }, { "click$": "click$"; }, never, never, true, never>;
105
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdtButtonBase<any>, never, never, { "typeInput": { "alias": "type"; "required": false; "isSignal": true; }; "propagateInput": { "alias": "propagate"; "required": false; "isSignal": true; }; "tabIndexInput": { "alias": "tabIndex"; "required": false; "isSignal": true; }; "hrefInput": { "alias": "href"; "required": false; "isSignal": true; }; "ngHrefInput": { "alias": "ngHref"; "required": false; "isSignal": true; }; "targetInput": { "alias": "target"; "required": false; "isSignal": true; }; "stateParamsInput": { "alias": "stateParams"; "required": false; "isSignal": true; }; "queryParamsInput": { "alias": "queryParams"; "required": false; "isSignal": true; }; "downloadInput": { "alias": "download"; "required": false; "isSignal": true; }; "iconInput": { "alias": "icon"; "required": false; "isSignal": true; }; "labelInput": { "alias": "label"; "required": false; "isSignal": true; }; "dataTestIdInput": { "alias": "dataTestId"; "required": false; "isSignal": true; }; "onlineEnabledInput$": { "alias": "onlineEnabled"; "required": false; "isSignal": true; }; "ariaInput": { "alias": "aria"; "required": false; "isSignal": true; }; }, { "click$": "click$"; "click": "click"; }, never, never, true, never>;
96
106
  }
97
107
 
98
108
  declare const RDT_BUTTON_SETTER_KEY: unique symbol;
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "@ngrdt/button",
3
- "version": "0.0.36",
3
+ "version": "0.0.37",
4
4
  "peerDependencies": {
5
5
  "@angular/common": ">=18.2.0",
6
6
  "@angular/core": ">=18.2.0",
7
7
  "@angular/router": ">=18.2.0",
8
8
  "rxjs": ">=7.0.0",
9
- "@ngrdt/utils": "^0.0.36",
10
- "@ngrdt/core": "^0.0.36"
9
+ "@ngrdt/utils": "^0.0.37",
10
+ "@ngrdt/core": "^0.0.37"
11
11
  },
12
12
  "sideEffects": false,
13
13
  "module": "fesm2022/ngrdt-button.mjs",