@softpak/components 0.0.0-beta.145 → 0.0.0-beta.146

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 { NgClass } from '@angular/common';
2
- import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
2
+ import { Component, EventEmitter, HostBinding, Input, Output, ViewChild } from '@angular/core';
3
3
  import { SpxSeverityEnum } from '@softpak/components/spx-helpers';
4
4
  import * as i0 from "@angular/core";
5
5
  export class SpxButtonComponent {
@@ -25,9 +25,13 @@ export class SpxButtonComponent {
25
25
  get severityInfo() { return this.spxSeverity === SpxSeverityEnum.info; }
26
26
  get severitySuccess() { return this.spxSeverity === SpxSeverityEnum.success; }
27
27
  get severityWarning() { return this.spxSeverity === SpxSeverityEnum.warning; }
28
+ spxSetFocus() {
29
+ this.buttonRef?.nativeElement?.focus();
30
+ }
28
31
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxButtonComponent, isStandalone: true, selector: "spx-button", inputs: { spxDisabled: "spxDisabled", spxClass: "spxClass", spxClassObject: "spxClassObject", spxForm: "spxForm", spxFullHeight: "spxFullHeight", spxFullWidth: "spxFullWidth", spxSeverity: "spxSeverity", spxSize: "spxSize", spxTabIndex: "spxTabIndex", spxType: "spxType" }, outputs: { spxClick: "spxClick" }, host: { properties: { "class.block": "this.hostClassBlock", "class.h-full": "this.hostClassHFull", "class.w-full": "this.hostClassWFull" } }, ngImport: i0, template: `
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxButtonComponent, isStandalone: true, selector: "spx-button", inputs: { spxDisabled: "spxDisabled", spxClass: "spxClass", spxClassObject: "spxClassObject", spxForm: "spxForm", spxFullHeight: "spxFullHeight", spxFullWidth: "spxFullWidth", spxSeverity: "spxSeverity", spxSize: "spxSize", spxTabIndex: "spxTabIndex", spxType: "spxType" }, outputs: { spxClick: "spxClick" }, host: { properties: { "class.block": "this.hostClassBlock", "class.h-full": "this.hostClassHFull", "class.w-full": "this.hostClassWFull" } }, viewQueries: [{ propertyName: "buttonRef", first: true, predicate: ["buttonRef"], descendants: true, static: true }], ngImport: i0, template: `
30
33
  <button
34
+ #buttonRef
31
35
  class="border border-transparent font-bold px-4 py-2 relative rounded text-center text-white focus:outline-none focus:ring-2 focus:ring-offset-2"
32
36
  [class.h-full]="this.spxFullHeight"
33
37
  [class.w-full]="this.spxFullWidth"
@@ -71,6 +75,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
71
75
  ],
72
76
  template: `
73
77
  <button
78
+ #buttonRef
74
79
  class="border border-transparent font-bold px-4 py-2 relative rounded text-center text-white focus:outline-none focus:ring-2 focus:ring-offset-2"
75
80
  [class.h-full]="this.spxFullHeight"
76
81
  [class.w-full]="this.spxFullWidth"
@@ -135,5 +140,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
135
140
  type: Input
136
141
  }], spxClick: [{
137
142
  type: Output
143
+ }], buttonRef: [{
144
+ type: ViewChild,
145
+ args: ['buttonRef', { static: true }]
138
146
  }] } });
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWJ1dHRvbi9zcHgtYnV0dG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOztBQTJDbEUsTUFBTSxPQUFPLGtCQUFrQjtJQXpDL0I7UUE2Q1csZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFNcEIsZ0JBQVcsR0FBb0IsZUFBZSxDQUFDLElBQUksQ0FBQztRQUNwRCxZQUFPLEdBQWdCLElBQUksQ0FBQztRQUU1QixZQUFPLEdBQXdCLFFBQVEsQ0FBQztRQUN2QyxhQUFRLEdBQXVCLElBQUksWUFBWSxFQUFRLENBQUM7UUFPbEUsaUJBQVksR0FBRyxDQUFDLEVBQWUsRUFBRSxFQUFFO1lBQ2pDLE9BQU8sQ0FBQyxDQUFDLEVBQUUsQ0FBQyxVQUFVLElBQUksQ0FBQyxDQUFFLEVBQVUsQ0FBQyxZQUFZLENBQUM7UUFDdkQsQ0FBQyxDQUFDO1FBQ0YsZ0JBQVcsR0FBRyxHQUFHLEVBQUU7WUFDakIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUN2QixDQUFDO1FBQ0gsQ0FBQyxDQUFBO0tBQ0Y7SUE1QkMsSUFBZ0MsY0FBYyxLQUFLLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFDOUUsSUFBaUMsY0FBYyxLQUFLLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUM7SUFDaEYsSUFBaUMsY0FBYyxLQUFLLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7SUFhL0UsSUFBSSxhQUFhLEtBQUssT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzFFLElBQUksWUFBWSxLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN4RSxJQUFJLGVBQWUsS0FBSyxPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDOUUsSUFBSSxlQUFlLEtBQUssT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDOzhHQW5CbkUsa0JBQWtCO2tHQUFsQixrQkFBa0IseWdCQW5DbkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztxREFpQ3lDLDREQW5DakQsT0FBTzs7MkZBcUNFLGtCQUFrQjtrQkF6QzlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUU7d0JBQ1AsT0FBTztxQkFDUjtvQkFDRCxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztxREFpQ3lDO2lCQUNwRDs4QkFFaUMsY0FBYztzQkFBN0MsV0FBVzt1QkFBQyxhQUFhO2dCQUNPLGNBQWM7c0JBQTlDLFdBQVc7dUJBQUMsY0FBYztnQkFDTSxjQUFjO3NCQUE5QyxXQUFXO3VCQUFDLGNBQWM7Z0JBQ2xCLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcHhTZXZlcml0eUVudW0gfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1oZWxwZXJzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3B4LWJ1dHRvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0NsYXNzLFxuICBdLFxuICB0ZW1wbGF0ZTogYFxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJib3JkZXIgYm9yZGVyLXRyYW5zcGFyZW50IGZvbnQtYm9sZCBweC00IHB5LTIgcmVsYXRpdmUgcm91bmRlZCB0ZXh0LWNlbnRlciB0ZXh0LXdoaXRlIGZvY3VzOm91dGxpbmUtbm9uZSBmb2N1czpyaW5nLTIgZm9jdXM6cmluZy1vZmZzZXQtMlwiXG4gICAgW2NsYXNzLmgtZnVsbF09XCJ0aGlzLnNweEZ1bGxIZWlnaHRcIlxuICAgIFtjbGFzcy53LWZ1bGxdPVwidGhpcy5zcHhGdWxsV2lkdGhcIlxuICAgIFtjbGFzcy5iZy1ibHVlLTYwMF09XCIhdGhpcy5zcHhTZXZlcml0eSB8fCB0aGlzLnNldmVyaXR5SW5mb1wiXG4gICAgW2NsYXNzLmZvY3VzOnJpbmctYmx1ZS01MDBdPVwiIXRoaXMuc3B4U2V2ZXJpdHkgfHwgdGhpcy5zZXZlcml0eUluZm9cIlxuICAgIFtjbGFzcy5ob3ZlcjpiZy1ibHVlLTgwMF09XCIhdGhpcy5zcHhTZXZlcml0eSB8fCB0aGlzLnNldmVyaXR5SW5mb1wiXG4gICAgW2NsYXNzLmJnLXJlZC02MDBdPVwidGhpcy5zZXZlcml0eUVycm9yXCJcbiAgICBbY2xhc3MuZm9jdXM6cmluZy1yZWQtNTAwXT1cInRoaXMuc2V2ZXJpdHlFcnJvclwiXG4gICAgW2NsYXNzLmhvdmVyOmJnLXJlZC04MDBdPVwidGhpcy5zZXZlcml0eUVycm9yXCJcbiAgICBbY2xhc3MuYmctbGltZS02MDBdPVwidGhpcy5zZXZlcml0eVN1Y2Nlc3NcIlxuICAgIFtjbGFzcy5mb2N1czpyaW5nLWxpbWUtNTAwXT1cInRoaXMuc2V2ZXJpdHlTdWNjZXNzXCJcbiAgICBbY2xhc3MuaG92ZXI6YmctbGltZS04MDBdPVwidGhpcy5zZXZlcml0eVN1Y2Nlc3NcIlxuICAgIFtjbGFzcy5iZy1hbWJlci02MDBdPVwidGhpcy5zZXZlcml0eVdhcm5pbmdcIlxuICAgIFtjbGFzcy5mb2N1czpyaW5nLWFtYmVyLTUwMF09XCJ0aGlzLnNldmVyaXR5V2FybmluZ1wiXG4gICAgW2NsYXNzLmhvdmVyOmJnLWFtYmVyLTgwMF09XCJ0aGlzLnNldmVyaXR5V2FybmluZ1wiXG4gICAgW2NsYXNzLnRleHQteGxdPVwidGhpcy5zcHhTaXplID09PSAneGwnXCJcbiAgICBbY2xhc3MudGV4dC1sZ109XCJ0aGlzLnNweFNpemUgPT09ICdsZydcIlxuICAgIFtjbGFzcy5jdXJzb3ItcG9pbnRlcl09XCIhdGhpcy5zcHhEaXNhYmxlZFwiXG4gICAgW2NsYXNzLmN1cnNvci1ub3QtYWxsb3dlZF09XCJ0aGlzLnNweERpc2FibGVkXCJcbiAgICBbY2xhc3Mub3BhY2l0eS01MF09XCJ0aGlzLnNweERpc2FibGVkXCJcbiAgICBbY2xhc3MuZm9jdXM6cmluZy0wXT1cInRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5ob3ZlcjpiZy1yZWQtNjAwXT1cInRoaXMuc3B4RGlzYWJsZWQgJiYgdGhpcy5zZXZlcml0eUVycm9yXCJcbiAgICBbY2xhc3MuaG92ZXI6YmctYmx1ZS02MDBdPVwidGhpcy5zcHhEaXNhYmxlZCAmJiB0aGlzLnNldmVyaXR5SW5mb1wiXG4gICAgW2NsYXNzLmhvdmVyOmJnLWxpbWUtNjAwXT1cInRoaXMuc3B4RGlzYWJsZWQgJiYgdGhpcy5zZXZlcml0eVN1Y2Nlc3NcIlxuICAgIFtjbGFzcy5ob3ZlcjpiZy1hbWJlci02MDBdPVwidGhpcy5zcHhEaXNhYmxlZCAmJiB0aGlzLnNldmVyaXR5V2FybmluZ1wiXG4gICAgW25nQ2xhc3NdPVwidGhpcy5zcHhDbGFzcyA/IHRoaXMuc3B4Q2xhc3MgOiB1bmRlZmluZWRcIlxuICAgIFthdHRyLmRpc2FibGVkXT1cInRoaXMuc3B4RGlzYWJsZWQgPyB0aGlzLnNweERpc2FibGVkIDogdW5kZWZpbmVkXCJcbiAgICBbYXR0ci5mb3JtXT1cInRoaXMuc3B4Rm9ybSA/IHRoaXMuc3B4Rm9ybSA6IHVuZGVmaW5lZFwiXG4gICAgW2F0dHIudGFiaW5kZXhdPVwidGhpcy5zcHhUYWJJbmRleCA/IHRoaXMuc3B4VGFiSW5kZXggOiB1bmRlZmluZWRcIlxuICAgIFthdHRyLnR5cGVdPVwidGhpcy5zcHhUeXBlID8gdGhpcy5zcHhUeXBlIDogdW5kZWZpbmVkXCJcbiAgICAoY2xpY2spPVwidGhpcy5oYW5kbGVDbGljaygpXCJcbiAgICBwYXJ0PVwiYnV0dG9uXCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PjwvYnV0dG9uPmAsXG59KVxuZXhwb3J0IGNsYXNzIFNweEJ1dHRvbkNvbXBvbmVudCB7XG4gIEBIb3N0QmluZGluZygnY2xhc3MuYmxvY2snKSBnZXQgaG9zdENsYXNzQmxvY2soKSB7IHJldHVybiB0aGlzLnNweEZ1bGxXaWR0aDsgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmgtZnVsbCcpIGdldCBob3N0Q2xhc3NIRnVsbCgpIHsgcmV0dXJuIHRoaXMuc3B4RnVsbEhlaWdodDsgfVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnctZnVsbCcpIGdldCBob3N0Q2xhc3NXRnVsbCgpIHsgcmV0dXJuIHRoaXMuc3B4RnVsbFdpZHRoOyB9XG4gIEBJbnB1dCgpIHNweERpc2FibGVkID0gZmFsc2U7XG4gIEBJbnB1dCgpIHNweENsYXNzPzogc3RyaW5nO1xuICBASW5wdXQoKSBzcHhDbGFzc09iamVjdD86IG9iamVjdDtcbiAgQElucHV0KCkgc3B4Rm9ybT86IHN0cmluZztcbiAgQElucHV0KCkgc3B4RnVsbEhlaWdodD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNweEZ1bGxXaWR0aD86IGJvb2xlYW47XG4gIEBJbnB1dCgpIHNweFNldmVyaXR5OiBTcHhTZXZlcml0eUVudW0gPSBTcHhTZXZlcml0eUVudW0uaW5mbztcbiAgQElucHV0KCkgc3B4U2l6ZTogJ2xnJyB8ICd4bCcgPSAnbGcnO1xuICBASW5wdXQoKSBzcHhUYWJJbmRleD86IG51bWJlcjtcbiAgQElucHV0KCkgc3B4VHlwZTogJ2J1dHRvbicgfCAnc3VibWl0JyA9ICdzdWJtaXQnO1xuICBAT3V0cHV0KCkgc3B4Q2xpY2s6IEV2ZW50RW1pdHRlcjx2b2lkPiA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBnZXQgc2V2ZXJpdHlFcnJvcigpIHsgcmV0dXJuIHRoaXMuc3B4U2V2ZXJpdHkgPT09IFNweFNldmVyaXR5RW51bS5lcnJvcjsgfVxuICBnZXQgc2V2ZXJpdHlJbmZvKCkgeyByZXR1cm4gdGhpcy5zcHhTZXZlcml0eSA9PT0gU3B4U2V2ZXJpdHlFbnVtLmluZm87IH1cbiAgZ2V0IHNldmVyaXR5U3VjY2VzcygpIHsgcmV0dXJuIHRoaXMuc3B4U2V2ZXJpdHkgPT09IFNweFNldmVyaXR5RW51bS5zdWNjZXNzOyB9XG4gIGdldCBzZXZlcml0eVdhcm5pbmcoKSB7IHJldHVybiB0aGlzLnNweFNldmVyaXR5ID09PSBTcHhTZXZlcml0eUVudW0ud2FybmluZzsgfVxuXG4gIGhhc1NoYWRvd0RvbSA9IChlbDogSFRNTEVsZW1lbnQpID0+IHtcbiAgICByZXR1cm4gISFlbC5zaGFkb3dSb290ICYmICEhKGVsIGFzIGFueSkuYXR0YWNoU2hhZG93O1xuICB9O1xuICBoYW5kbGVDbGljayA9ICgpID0+IHtcbiAgICBpZiAoIXRoaXMuc3B4RGlzYWJsZWQpIHtcbiAgICAgIHRoaXMuc3B4Q2xpY2suZW1pdCgpO1xuICAgIH1cbiAgfVxufVxuIl19
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3B4LWJ1dHRvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zb2Z0cGFrL2NvbXBvbmVudHMvc3B4LWJ1dHRvbi9zcHgtYnV0dG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNHLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUE0Q2xFLE1BQU0sT0FBTyxrQkFBa0I7SUExQy9CO1FBOENXLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBTXBCLGdCQUFXLEdBQW9CLGVBQWUsQ0FBQyxJQUFJLENBQUM7UUFDcEQsWUFBTyxHQUFnQixJQUFJLENBQUM7UUFFNUIsWUFBTyxHQUF3QixRQUFRLENBQUM7UUFDdkMsYUFBUSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBUWxFLGlCQUFZLEdBQUcsQ0FBQyxFQUFlLEVBQUUsRUFBRTtZQUNqQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsVUFBVSxJQUFJLENBQUMsQ0FBRSxFQUFVLENBQUMsWUFBWSxDQUFDO1FBQ3ZELENBQUMsQ0FBQztRQUNGLGdCQUFXLEdBQUcsR0FBRyxFQUFFO1lBQ2pCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7Z0JBQ3RCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdkIsQ0FBQztRQUNILENBQUMsQ0FBQTtLQUtGO0lBakNDLElBQWdDLGNBQWMsS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBQzlFLElBQWlDLGNBQWMsS0FBSyxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQ2hGLElBQWlDLGNBQWMsS0FBSyxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO0lBYy9FLElBQUksYUFBYSxLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMxRSxJQUFJLFlBQVksS0FBSyxPQUFPLElBQUksQ0FBQyxXQUFXLEtBQUssZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDeEUsSUFBSSxlQUFlLEtBQUssT0FBTyxJQUFJLENBQUMsV0FBVyxLQUFLLGVBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQzlFLElBQUksZUFBZSxLQUFLLE9BQU8sSUFBSSxDQUFDLFdBQVcsS0FBSyxlQUFlLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztJQVc5RSxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLENBQUM7SUFDekMsQ0FBQzs4R0FqQ1Usa0JBQWtCO2tHQUFsQixrQkFBa0IsK25CQXBDbkI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7cURBa0N5Qyw0REFwQ2pELE9BQU87OzJGQXNDRSxrQkFBa0I7a0JBMUM5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxZQUFZO29CQUN0QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsT0FBTyxFQUFFO3dCQUNQLE9BQU87cUJBQ1I7b0JBQ0QsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3FEQWtDeUM7aUJBQ3BEOzhCQUVpQyxjQUFjO3NCQUE3QyxXQUFXO3VCQUFDLGFBQWE7Z0JBQ08sY0FBYztzQkFBOUMsV0FBVzt1QkFBQyxjQUFjO2dCQUNNLGNBQWM7c0JBQTlDLFdBQVc7dUJBQUMsY0FBYztnQkFDbEIsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDSSxRQUFRO3NCQUFqQixNQUFNO2dCQUNtQyxTQUFTO3NCQUFsRCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NsYXNzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcHhTZXZlcml0eUVudW0gfSBmcm9tICdAc29mdHBhay9jb21wb25lbnRzL3NweC1oZWxwZXJzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc3B4LWJ1dHRvbicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOZ0NsYXNzLFxuICBdLFxuICB0ZW1wbGF0ZTogYFxuICA8YnV0dG9uXG4gICAgI2J1dHRvblJlZlxuICAgIGNsYXNzPVwiYm9yZGVyIGJvcmRlci10cmFuc3BhcmVudCBmb250LWJvbGQgcHgtNCBweS0yIHJlbGF0aXZlIHJvdW5kZWQgdGV4dC1jZW50ZXIgdGV4dC13aGl0ZSBmb2N1czpvdXRsaW5lLW5vbmUgZm9jdXM6cmluZy0yIGZvY3VzOnJpbmctb2Zmc2V0LTJcIlxuICAgIFtjbGFzcy5oLWZ1bGxdPVwidGhpcy5zcHhGdWxsSGVpZ2h0XCJcbiAgICBbY2xhc3Mudy1mdWxsXT1cInRoaXMuc3B4RnVsbFdpZHRoXCJcbiAgICBbY2xhc3MuYmctYmx1ZS02MDBdPVwiIXRoaXMuc3B4U2V2ZXJpdHkgfHwgdGhpcy5zZXZlcml0eUluZm9cIlxuICAgIFtjbGFzcy5mb2N1czpyaW5nLWJsdWUtNTAwXT1cIiF0aGlzLnNweFNldmVyaXR5IHx8IHRoaXMuc2V2ZXJpdHlJbmZvXCJcbiAgICBbY2xhc3MuaG92ZXI6YmctYmx1ZS04MDBdPVwiIXRoaXMuc3B4U2V2ZXJpdHkgfHwgdGhpcy5zZXZlcml0eUluZm9cIlxuICAgIFtjbGFzcy5iZy1yZWQtNjAwXT1cInRoaXMuc2V2ZXJpdHlFcnJvclwiXG4gICAgW2NsYXNzLmZvY3VzOnJpbmctcmVkLTUwMF09XCJ0aGlzLnNldmVyaXR5RXJyb3JcIlxuICAgIFtjbGFzcy5ob3ZlcjpiZy1yZWQtODAwXT1cInRoaXMuc2V2ZXJpdHlFcnJvclwiXG4gICAgW2NsYXNzLmJnLWxpbWUtNjAwXT1cInRoaXMuc2V2ZXJpdHlTdWNjZXNzXCJcbiAgICBbY2xhc3MuZm9jdXM6cmluZy1saW1lLTUwMF09XCJ0aGlzLnNldmVyaXR5U3VjY2Vzc1wiXG4gICAgW2NsYXNzLmhvdmVyOmJnLWxpbWUtODAwXT1cInRoaXMuc2V2ZXJpdHlTdWNjZXNzXCJcbiAgICBbY2xhc3MuYmctYW1iZXItNjAwXT1cInRoaXMuc2V2ZXJpdHlXYXJuaW5nXCJcbiAgICBbY2xhc3MuZm9jdXM6cmluZy1hbWJlci01MDBdPVwidGhpcy5zZXZlcml0eVdhcm5pbmdcIlxuICAgIFtjbGFzcy5ob3ZlcjpiZy1hbWJlci04MDBdPVwidGhpcy5zZXZlcml0eVdhcm5pbmdcIlxuICAgIFtjbGFzcy50ZXh0LXhsXT1cInRoaXMuc3B4U2l6ZSA9PT0gJ3hsJ1wiXG4gICAgW2NsYXNzLnRleHQtbGddPVwidGhpcy5zcHhTaXplID09PSAnbGcnXCJcbiAgICBbY2xhc3MuY3Vyc29yLXBvaW50ZXJdPVwiIXRoaXMuc3B4RGlzYWJsZWRcIlxuICAgIFtjbGFzcy5jdXJzb3Itbm90LWFsbG93ZWRdPVwidGhpcy5zcHhEaXNhYmxlZFwiXG4gICAgW2NsYXNzLm9wYWNpdHktNTBdPVwidGhpcy5zcHhEaXNhYmxlZFwiXG4gICAgW2NsYXNzLmZvY3VzOnJpbmctMF09XCJ0aGlzLnNweERpc2FibGVkXCJcbiAgICBbY2xhc3MuaG92ZXI6YmctcmVkLTYwMF09XCJ0aGlzLnNweERpc2FibGVkICYmIHRoaXMuc2V2ZXJpdHlFcnJvclwiXG4gICAgW2NsYXNzLmhvdmVyOmJnLWJsdWUtNjAwXT1cInRoaXMuc3B4RGlzYWJsZWQgJiYgdGhpcy5zZXZlcml0eUluZm9cIlxuICAgIFtjbGFzcy5ob3ZlcjpiZy1saW1lLTYwMF09XCJ0aGlzLnNweERpc2FibGVkICYmIHRoaXMuc2V2ZXJpdHlTdWNjZXNzXCJcbiAgICBbY2xhc3MuaG92ZXI6YmctYW1iZXItNjAwXT1cInRoaXMuc3B4RGlzYWJsZWQgJiYgdGhpcy5zZXZlcml0eVdhcm5pbmdcIlxuICAgIFtuZ0NsYXNzXT1cInRoaXMuc3B4Q2xhc3MgPyB0aGlzLnNweENsYXNzIDogdW5kZWZpbmVkXCJcbiAgICBbYXR0ci5kaXNhYmxlZF09XCJ0aGlzLnNweERpc2FibGVkID8gdGhpcy5zcHhEaXNhYmxlZCA6IHVuZGVmaW5lZFwiXG4gICAgW2F0dHIuZm9ybV09XCJ0aGlzLnNweEZvcm0gPyB0aGlzLnNweEZvcm0gOiB1bmRlZmluZWRcIlxuICAgIFthdHRyLnRhYmluZGV4XT1cInRoaXMuc3B4VGFiSW5kZXggPyB0aGlzLnNweFRhYkluZGV4IDogdW5kZWZpbmVkXCJcbiAgICBbYXR0ci50eXBlXT1cInRoaXMuc3B4VHlwZSA/IHRoaXMuc3B4VHlwZSA6IHVuZGVmaW5lZFwiXG4gICAgKGNsaWNrKT1cInRoaXMuaGFuZGxlQ2xpY2soKVwiXG4gICAgcGFydD1cImJ1dHRvblwiPjxuZy1jb250ZW50PjwvbmctY29udGVudD48L2J1dHRvbj5gLFxufSlcbmV4cG9ydCBjbGFzcyBTcHhCdXR0b25Db21wb25lbnQge1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmJsb2NrJykgZ2V0IGhvc3RDbGFzc0Jsb2NrKCkgeyByZXR1cm4gdGhpcy5zcHhGdWxsV2lkdGg7IH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5oLWZ1bGwnKSBnZXQgaG9zdENsYXNzSEZ1bGwoKSB7IHJldHVybiB0aGlzLnNweEZ1bGxIZWlnaHQ7IH1cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy53LWZ1bGwnKSBnZXQgaG9zdENsYXNzV0Z1bGwoKSB7IHJldHVybiB0aGlzLnNweEZ1bGxXaWR0aDsgfVxuICBASW5wdXQoKSBzcHhEaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBzcHhDbGFzcz86IHN0cmluZztcbiAgQElucHV0KCkgc3B4Q2xhc3NPYmplY3Q/OiBvYmplY3Q7XG4gIEBJbnB1dCgpIHNweEZvcm0/OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHNweEZ1bGxIZWlnaHQ/OiBib29sZWFuO1xuICBASW5wdXQoKSBzcHhGdWxsV2lkdGg/OiBib29sZWFuO1xuICBASW5wdXQoKSBzcHhTZXZlcml0eTogU3B4U2V2ZXJpdHlFbnVtID0gU3B4U2V2ZXJpdHlFbnVtLmluZm87XG4gIEBJbnB1dCgpIHNweFNpemU6ICdsZycgfCAneGwnID0gJ2xnJztcbiAgQElucHV0KCkgc3B4VGFiSW5kZXg/OiBudW1iZXI7XG4gIEBJbnB1dCgpIHNweFR5cGU6ICdidXR0b24nIHwgJ3N1Ym1pdCcgPSAnc3VibWl0JztcbiAgQE91dHB1dCgpIHNweENsaWNrOiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG4gIEBWaWV3Q2hpbGQoJ2J1dHRvblJlZicsIHsgc3RhdGljOiB0cnVlIH0pIGJ1dHRvblJlZj86IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XG5cbiAgZ2V0IHNldmVyaXR5RXJyb3IoKSB7IHJldHVybiB0aGlzLnNweFNldmVyaXR5ID09PSBTcHhTZXZlcml0eUVudW0uZXJyb3I7IH1cbiAgZ2V0IHNldmVyaXR5SW5mbygpIHsgcmV0dXJuIHRoaXMuc3B4U2V2ZXJpdHkgPT09IFNweFNldmVyaXR5RW51bS5pbmZvOyB9XG4gIGdldCBzZXZlcml0eVN1Y2Nlc3MoKSB7IHJldHVybiB0aGlzLnNweFNldmVyaXR5ID09PSBTcHhTZXZlcml0eUVudW0uc3VjY2VzczsgfVxuICBnZXQgc2V2ZXJpdHlXYXJuaW5nKCkgeyByZXR1cm4gdGhpcy5zcHhTZXZlcml0eSA9PT0gU3B4U2V2ZXJpdHlFbnVtLndhcm5pbmc7IH1cblxuICBoYXNTaGFkb3dEb20gPSAoZWw6IEhUTUxFbGVtZW50KSA9PiB7XG4gICAgcmV0dXJuICEhZWwuc2hhZG93Um9vdCAmJiAhIShlbCBhcyBhbnkpLmF0dGFjaFNoYWRvdztcbiAgfTtcbiAgaGFuZGxlQ2xpY2sgPSAoKSA9PiB7XG4gICAgaWYgKCF0aGlzLnNweERpc2FibGVkKSB7XG4gICAgICB0aGlzLnNweENsaWNrLmVtaXQoKTtcbiAgICB9XG4gIH1cblxuICBzcHhTZXRGb2N1cygpOiB2b2lkIHtcbiAgICB0aGlzLmJ1dHRvblJlZj8ubmF0aXZlRWxlbWVudD8uZm9jdXMoKTtcbiAgfVxufVxuIl19
@@ -1,6 +1,6 @@
1
1
  import { NgClass } from '@angular/common';
2
2
  import * as i0 from '@angular/core';
3
- import { EventEmitter, Component, HostBinding, Input, Output } from '@angular/core';
3
+ import { EventEmitter, Component, HostBinding, Input, Output, ViewChild } from '@angular/core';
4
4
  import { SpxSeverityEnum } from '@softpak/components/spx-helpers';
5
5
 
6
6
  class SpxButtonComponent {
@@ -26,9 +26,13 @@ class SpxButtonComponent {
26
26
  get severityInfo() { return this.spxSeverity === SpxSeverityEnum.info; }
27
27
  get severitySuccess() { return this.spxSeverity === SpxSeverityEnum.success; }
28
28
  get severityWarning() { return this.spxSeverity === SpxSeverityEnum.warning; }
29
+ spxSetFocus() {
30
+ this.buttonRef?.nativeElement?.focus();
31
+ }
29
32
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SpxButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxButtonComponent, isStandalone: true, selector: "spx-button", inputs: { spxDisabled: "spxDisabled", spxClass: "spxClass", spxClassObject: "spxClassObject", spxForm: "spxForm", spxFullHeight: "spxFullHeight", spxFullWidth: "spxFullWidth", spxSeverity: "spxSeverity", spxSize: "spxSize", spxTabIndex: "spxTabIndex", spxType: "spxType" }, outputs: { spxClick: "spxClick" }, host: { properties: { "class.block": "this.hostClassBlock", "class.h-full": "this.hostClassHFull", "class.w-full": "this.hostClassWFull" } }, ngImport: i0, template: `
33
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: SpxButtonComponent, isStandalone: true, selector: "spx-button", inputs: { spxDisabled: "spxDisabled", spxClass: "spxClass", spxClassObject: "spxClassObject", spxForm: "spxForm", spxFullHeight: "spxFullHeight", spxFullWidth: "spxFullWidth", spxSeverity: "spxSeverity", spxSize: "spxSize", spxTabIndex: "spxTabIndex", spxType: "spxType" }, outputs: { spxClick: "spxClick" }, host: { properties: { "class.block": "this.hostClassBlock", "class.h-full": "this.hostClassHFull", "class.w-full": "this.hostClassWFull" } }, viewQueries: [{ propertyName: "buttonRef", first: true, predicate: ["buttonRef"], descendants: true, static: true }], ngImport: i0, template: `
31
34
  <button
35
+ #buttonRef
32
36
  class="border border-transparent font-bold px-4 py-2 relative rounded text-center text-white focus:outline-none focus:ring-2 focus:ring-offset-2"
33
37
  [class.h-full]="this.spxFullHeight"
34
38
  [class.w-full]="this.spxFullWidth"
@@ -72,6 +76,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
72
76
  ],
73
77
  template: `
74
78
  <button
79
+ #buttonRef
75
80
  class="border border-transparent font-bold px-4 py-2 relative rounded text-center text-white focus:outline-none focus:ring-2 focus:ring-offset-2"
76
81
  [class.h-full]="this.spxFullHeight"
77
82
  [class.w-full]="this.spxFullWidth"
@@ -136,6 +141,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
136
141
  type: Input
137
142
  }], spxClick: [{
138
143
  type: Output
144
+ }], buttonRef: [{
145
+ type: ViewChild,
146
+ args: ['buttonRef', { static: true }]
139
147
  }] } });
140
148
 
141
149
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"softpak-components-spx-button.mjs","sources":["../../../../projects/softpak/components/spx-button/spx-button.component.ts","../../../../projects/softpak/components/spx-button/softpak-components-spx-button.ts"],"sourcesContent":["import { NgClass } from '@angular/common';\nimport { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';\nimport { SpxSeverityEnum } from '@softpak/components/spx-helpers';\n\n@Component({\n selector: 'spx-button',\n standalone: true,\n imports: [\n NgClass,\n ],\n template: `\n <button\n class=\"border border-transparent font-bold px-4 py-2 relative rounded text-center text-white focus:outline-none focus:ring-2 focus:ring-offset-2\"\n [class.h-full]=\"this.spxFullHeight\"\n [class.w-full]=\"this.spxFullWidth\"\n [class.bg-blue-600]=\"!this.spxSeverity || this.severityInfo\"\n [class.focus:ring-blue-500]=\"!this.spxSeverity || this.severityInfo\"\n [class.hover:bg-blue-800]=\"!this.spxSeverity || this.severityInfo\"\n [class.bg-red-600]=\"this.severityError\"\n [class.focus:ring-red-500]=\"this.severityError\"\n [class.hover:bg-red-800]=\"this.severityError\"\n [class.bg-lime-600]=\"this.severitySuccess\"\n [class.focus:ring-lime-500]=\"this.severitySuccess\"\n [class.hover:bg-lime-800]=\"this.severitySuccess\"\n [class.bg-amber-600]=\"this.severityWarning\"\n [class.focus:ring-amber-500]=\"this.severityWarning\"\n [class.hover:bg-amber-800]=\"this.severityWarning\"\n [class.text-xl]=\"this.spxSize === 'xl'\"\n [class.text-lg]=\"this.spxSize === 'lg'\"\n [class.cursor-pointer]=\"!this.spxDisabled\"\n [class.cursor-not-allowed]=\"this.spxDisabled\"\n [class.opacity-50]=\"this.spxDisabled\"\n [class.focus:ring-0]=\"this.spxDisabled\"\n [class.hover:bg-red-600]=\"this.spxDisabled && this.severityError\"\n [class.hover:bg-blue-600]=\"this.spxDisabled && this.severityInfo\"\n [class.hover:bg-lime-600]=\"this.spxDisabled && this.severitySuccess\"\n [class.hover:bg-amber-600]=\"this.spxDisabled && this.severityWarning\"\n [ngClass]=\"this.spxClass ? this.spxClass : undefined\"\n [attr.disabled]=\"this.spxDisabled ? this.spxDisabled : undefined\"\n [attr.form]=\"this.spxForm ? this.spxForm : undefined\"\n [attr.tabindex]=\"this.spxTabIndex ? this.spxTabIndex : undefined\"\n [attr.type]=\"this.spxType ? this.spxType : undefined\"\n (click)=\"this.handleClick()\"\n part=\"button\"><ng-content></ng-content></button>`,\n})\nexport class SpxButtonComponent {\n @HostBinding('class.block') get hostClassBlock() { return this.spxFullWidth; }\n @HostBinding('class.h-full') get hostClassHFull() { return this.spxFullHeight; }\n @HostBinding('class.w-full') get hostClassWFull() { return this.spxFullWidth; }\n @Input() spxDisabled = false;\n @Input() spxClass?: string;\n @Input() spxClassObject?: object;\n @Input() spxForm?: string;\n @Input() spxFullHeight?: boolean;\n @Input() spxFullWidth?: boolean;\n @Input() spxSeverity: SpxSeverityEnum = SpxSeverityEnum.info;\n @Input() spxSize: 'lg' | 'xl' = 'lg';\n @Input() spxTabIndex?: number;\n @Input() spxType: 'button' | 'submit' = 'submit';\n @Output() spxClick: EventEmitter<void> = new EventEmitter<void>();\n\n get severityError() { return this.spxSeverity === SpxSeverityEnum.error; }\n get severityInfo() { return this.spxSeverity === SpxSeverityEnum.info; }\n get severitySuccess() { return this.spxSeverity === SpxSeverityEnum.success; }\n get severityWarning() { return this.spxSeverity === SpxSeverityEnum.warning; }\n\n hasShadowDom = (el: HTMLElement) => {\n return !!el.shadowRoot && !!(el as any).attachShadow;\n };\n handleClick = () => {\n if (!this.spxDisabled) {\n this.spxClick.emit();\n }\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":"softpak-components-spx-button.mjs","sources":["../../../../projects/softpak/components/spx-button/spx-button.component.ts","../../../../projects/softpak/components/spx-button/softpak-components-spx-button.ts"],"sourcesContent":["import { NgClass } from '@angular/common';\nimport { Component, ElementRef, EventEmitter, HostBinding, Input, Output, ViewChild } from '@angular/core';\nimport { SpxSeverityEnum } from '@softpak/components/spx-helpers';\n\n@Component({\n selector: 'spx-button',\n standalone: true,\n imports: [\n NgClass,\n ],\n template: `\n <button\n #buttonRef\n class=\"border border-transparent font-bold px-4 py-2 relative rounded text-center text-white focus:outline-none focus:ring-2 focus:ring-offset-2\"\n [class.h-full]=\"this.spxFullHeight\"\n [class.w-full]=\"this.spxFullWidth\"\n [class.bg-blue-600]=\"!this.spxSeverity || this.severityInfo\"\n [class.focus:ring-blue-500]=\"!this.spxSeverity || this.severityInfo\"\n [class.hover:bg-blue-800]=\"!this.spxSeverity || this.severityInfo\"\n [class.bg-red-600]=\"this.severityError\"\n [class.focus:ring-red-500]=\"this.severityError\"\n [class.hover:bg-red-800]=\"this.severityError\"\n [class.bg-lime-600]=\"this.severitySuccess\"\n [class.focus:ring-lime-500]=\"this.severitySuccess\"\n [class.hover:bg-lime-800]=\"this.severitySuccess\"\n [class.bg-amber-600]=\"this.severityWarning\"\n [class.focus:ring-amber-500]=\"this.severityWarning\"\n [class.hover:bg-amber-800]=\"this.severityWarning\"\n [class.text-xl]=\"this.spxSize === 'xl'\"\n [class.text-lg]=\"this.spxSize === 'lg'\"\n [class.cursor-pointer]=\"!this.spxDisabled\"\n [class.cursor-not-allowed]=\"this.spxDisabled\"\n [class.opacity-50]=\"this.spxDisabled\"\n [class.focus:ring-0]=\"this.spxDisabled\"\n [class.hover:bg-red-600]=\"this.spxDisabled && this.severityError\"\n [class.hover:bg-blue-600]=\"this.spxDisabled && this.severityInfo\"\n [class.hover:bg-lime-600]=\"this.spxDisabled && this.severitySuccess\"\n [class.hover:bg-amber-600]=\"this.spxDisabled && this.severityWarning\"\n [ngClass]=\"this.spxClass ? this.spxClass : undefined\"\n [attr.disabled]=\"this.spxDisabled ? this.spxDisabled : undefined\"\n [attr.form]=\"this.spxForm ? this.spxForm : undefined\"\n [attr.tabindex]=\"this.spxTabIndex ? this.spxTabIndex : undefined\"\n [attr.type]=\"this.spxType ? this.spxType : undefined\"\n (click)=\"this.handleClick()\"\n part=\"button\"><ng-content></ng-content></button>`,\n})\nexport class SpxButtonComponent {\n @HostBinding('class.block') get hostClassBlock() { return this.spxFullWidth; }\n @HostBinding('class.h-full') get hostClassHFull() { return this.spxFullHeight; }\n @HostBinding('class.w-full') get hostClassWFull() { return this.spxFullWidth; }\n @Input() spxDisabled = false;\n @Input() spxClass?: string;\n @Input() spxClassObject?: object;\n @Input() spxForm?: string;\n @Input() spxFullHeight?: boolean;\n @Input() spxFullWidth?: boolean;\n @Input() spxSeverity: SpxSeverityEnum = SpxSeverityEnum.info;\n @Input() spxSize: 'lg' | 'xl' = 'lg';\n @Input() spxTabIndex?: number;\n @Input() spxType: 'button' | 'submit' = 'submit';\n @Output() spxClick: EventEmitter<void> = new EventEmitter<void>();\n @ViewChild('buttonRef', { static: true }) buttonRef?: ElementRef<HTMLInputElement>;\n\n get severityError() { return this.spxSeverity === SpxSeverityEnum.error; }\n get severityInfo() { return this.spxSeverity === SpxSeverityEnum.info; }\n get severitySuccess() { return this.spxSeverity === SpxSeverityEnum.success; }\n get severityWarning() { return this.spxSeverity === SpxSeverityEnum.warning; }\n\n hasShadowDom = (el: HTMLElement) => {\n return !!el.shadowRoot && !!(el as any).attachShadow;\n };\n handleClick = () => {\n if (!this.spxDisabled) {\n this.spxClick.emit();\n }\n }\n\n spxSetFocus(): void {\n this.buttonRef?.nativeElement?.focus();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@softpak/components",
3
- "version": "0.0.0-beta.145",
3
+ "version": "0.0.0-beta.146",
4
4
  "private": false,
5
5
  "peerDependencies": {
6
6
  "@angular/common": "^17.x.x",
@@ -35,18 +35,18 @@
35
35
  "esm": "./esm2022/spx-app-configuration/softpak-components-spx-app-configuration.mjs",
36
36
  "default": "./fesm2022/softpak-components-spx-app-configuration.mjs"
37
37
  },
38
- "./spx-button": {
39
- "types": "./spx-button/index.d.ts",
40
- "esm2022": "./esm2022/spx-button/softpak-components-spx-button.mjs",
41
- "esm": "./esm2022/spx-button/softpak-components-spx-button.mjs",
42
- "default": "./fesm2022/softpak-components-spx-button.mjs"
43
- },
44
38
  "./spx-capitalize": {
45
39
  "types": "./spx-capitalize/index.d.ts",
46
40
  "esm2022": "./esm2022/spx-capitalize/softpak-components-spx-capitalize.mjs",
47
41
  "esm": "./esm2022/spx-capitalize/softpak-components-spx-capitalize.mjs",
48
42
  "default": "./fesm2022/softpak-components-spx-capitalize.mjs"
49
43
  },
44
+ "./spx-button": {
45
+ "types": "./spx-button/index.d.ts",
46
+ "esm2022": "./esm2022/spx-button/softpak-components-spx-button.mjs",
47
+ "esm": "./esm2022/spx-button/softpak-components-spx-button.mjs",
48
+ "default": "./fesm2022/softpak-components-spx-button.mjs"
49
+ },
50
50
  "./spx-change-details": {
51
51
  "types": "./spx-change-details/index.d.ts",
52
52
  "esm2022": "./esm2022/spx-change-details/softpak-components-spx-change-details.mjs",
@@ -59,23 +59,17 @@
59
59
  "esm": "./esm2022/spx-channel-selection/softpak-components-spx-channel-selection.mjs",
60
60
  "default": "./fesm2022/softpak-components-spx-channel-selection.mjs"
61
61
  },
62
- "./spx-check-digit": {
63
- "types": "./spx-check-digit/index.d.ts",
64
- "esm2022": "./esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs",
65
- "esm": "./esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs",
66
- "default": "./fesm2022/softpak-components-spx-check-digit.mjs"
67
- },
68
62
  "./spx-form-section": {
69
63
  "types": "./spx-form-section/index.d.ts",
70
64
  "esm2022": "./esm2022/spx-form-section/softpak-components-spx-form-section.mjs",
71
65
  "esm": "./esm2022/spx-form-section/softpak-components-spx-form-section.mjs",
72
66
  "default": "./fesm2022/softpak-components-spx-form-section.mjs"
73
67
  },
74
- "./spx-helpers": {
75
- "types": "./spx-helpers/index.d.ts",
76
- "esm2022": "./esm2022/spx-helpers/softpak-components-spx-helpers.mjs",
77
- "esm": "./esm2022/spx-helpers/softpak-components-spx-helpers.mjs",
78
- "default": "./fesm2022/softpak-components-spx-helpers.mjs"
68
+ "./spx-check-digit": {
69
+ "types": "./spx-check-digit/index.d.ts",
70
+ "esm2022": "./esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs",
71
+ "esm": "./esm2022/spx-check-digit/softpak-components-spx-check-digit.mjs",
72
+ "default": "./fesm2022/softpak-components-spx-check-digit.mjs"
79
73
  },
80
74
  "./spx-form-view": {
81
75
  "types": "./spx-form-view/index.d.ts",
@@ -83,6 +77,12 @@
83
77
  "esm": "./esm2022/spx-form-view/softpak-components-spx-form-view.mjs",
84
78
  "default": "./fesm2022/softpak-components-spx-form-view.mjs"
85
79
  },
80
+ "./spx-helpers": {
81
+ "types": "./spx-helpers/index.d.ts",
82
+ "esm2022": "./esm2022/spx-helpers/softpak-components-spx-helpers.mjs",
83
+ "esm": "./esm2022/spx-helpers/softpak-components-spx-helpers.mjs",
84
+ "default": "./fesm2022/softpak-components-spx-helpers.mjs"
85
+ },
86
86
  "./spx-inputs": {
87
87
  "types": "./spx-inputs/index.d.ts",
88
88
  "esm2022": "./esm2022/spx-inputs/softpak-components-spx-inputs.mjs",
@@ -1,4 +1,4 @@
1
- import { EventEmitter } from '@angular/core';
1
+ import { ElementRef, EventEmitter } from '@angular/core';
2
2
  import { SpxSeverityEnum } from '@softpak/components/spx-helpers';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class SpxButtonComponent {
@@ -16,12 +16,14 @@ export declare class SpxButtonComponent {
16
16
  spxTabIndex?: number;
17
17
  spxType: 'button' | 'submit';
18
18
  spxClick: EventEmitter<void>;
19
+ buttonRef?: ElementRef<HTMLInputElement>;
19
20
  get severityError(): boolean;
20
21
  get severityInfo(): boolean;
21
22
  get severitySuccess(): boolean;
22
23
  get severityWarning(): boolean;
23
24
  hasShadowDom: (el: HTMLElement) => boolean;
24
25
  handleClick: () => void;
26
+ spxSetFocus(): void;
25
27
  static ɵfac: i0.ɵɵFactoryDeclaration<SpxButtonComponent, never>;
26
28
  static ɵcmp: i0.ɵɵComponentDeclaration<SpxButtonComponent, "spx-button", never, { "spxDisabled": { "alias": "spxDisabled"; "required": false; }; "spxClass": { "alias": "spxClass"; "required": false; }; "spxClassObject": { "alias": "spxClassObject"; "required": false; }; "spxForm": { "alias": "spxForm"; "required": false; }; "spxFullHeight": { "alias": "spxFullHeight"; "required": false; }; "spxFullWidth": { "alias": "spxFullWidth"; "required": false; }; "spxSeverity": { "alias": "spxSeverity"; "required": false; }; "spxSize": { "alias": "spxSize"; "required": false; }; "spxTabIndex": { "alias": "spxTabIndex"; "required": false; }; "spxType": { "alias": "spxType"; "required": false; }; }, { "spxClick": "spxClick"; }, never, ["*"], true, never>;
27
29
  }