valtech-components 2.0.785 → 2.0.786

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,26 +1,55 @@
1
1
  import { CommonModule } from '@angular/common';
2
- import { Component, Input } from '@angular/core';
2
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
3
3
  import { ButtonComponent } from '../../atoms/button/button.component';
4
4
  import { DisplayComponent } from '../../atoms/display/display.component';
5
+ import { TitleComponent } from '../../atoms/title/title.component';
5
6
  import * as i0 from "@angular/core";
7
+ /**
8
+ * `val-action-header` — heading with a right-aligned action button.
9
+ *
10
+ * By default renders the heading via `val-display` (hero size). Set
11
+ * `headingKind: 'title'` to render via `val-title` (section size) so it
12
+ * matches `val-title` section labels elsewhere on the same screen.
13
+ *
14
+ * @example Section heading (matches `val-title size='medium'` on the page):
15
+ * <val-action-header [props]="{
16
+ * headingKind: 'title',
17
+ * title: { size: 'medium', color: 'dark', bold: true, content: 'Active sessions' },
18
+ * action: { text: 'Sign out all', color: 'dark', fill: 'outline', size: 'small', ... },
19
+ * }"></val-action-header>
20
+ *
21
+ * @example Page hero (default):
22
+ * <val-action-header [props]="{
23
+ * title: { size: 'large', color: 'dark', content: 'Settings' },
24
+ * action: { ... },
25
+ * }"></val-action-header>
26
+ */
6
27
  export class ActionHeaderComponent {
7
28
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ActionHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ActionHeaderComponent, isStandalone: true, selector: "val-action-header", inputs: { props: "props" }, ngImport: i0, template: `
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ActionHeaderComponent, isStandalone: true, selector: "val-action-header", inputs: { props: "props" }, ngImport: i0, template: `
9
30
  <section class="header-content-container">
10
- <val-display [props]="props.title" />
31
+ @if (props.headingKind === 'title') {
32
+ <val-title [props]="$any(props.title)" />
33
+ } @else {
34
+ <val-display [props]="$any(props.title)" />
35
+ }
11
36
  <val-button [props]="props.action" />
12
37
  </section>
13
- `, isInline: true, styles: [".header-content-container{width:100%;display:flex;align-items:center;justify-content:space-between}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: ButtonComponent, selector: "val-button", inputs: ["preset", "props"], outputs: ["onClick"] }] }); }
38
+ `, isInline: true, styles: [".header-content-container{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }, { kind: "component", type: ButtonComponent, selector: "val-button", inputs: ["preset", "props"], outputs: ["onClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14
39
  }
15
40
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ActionHeaderComponent, decorators: [{
16
41
  type: Component,
17
- args: [{ selector: 'val-action-header', standalone: true, imports: [CommonModule, DisplayComponent, ButtonComponent], template: `
42
+ args: [{ selector: 'val-action-header', standalone: true, imports: [CommonModule, DisplayComponent, TitleComponent, ButtonComponent], template: `
18
43
  <section class="header-content-container">
19
- <val-display [props]="props.title" />
44
+ @if (props.headingKind === 'title') {
45
+ <val-title [props]="$any(props.title)" />
46
+ } @else {
47
+ <val-display [props]="$any(props.title)" />
48
+ }
20
49
  <val-button [props]="props.action" />
21
50
  </section>
22
- `, styles: [".header-content-container{width:100%;display:flex;align-items:center;justify-content:space-between}\n"] }]
51
+ `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".header-content-container{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}\n"] }]
23
52
  }], propDecorators: { props: [{
24
53
  type: Input
25
54
  }] } });
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FjdGlvbi1oZWFkZXIvYWN0aW9uLWhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQzs7QUFzQnpFLE1BQU0sT0FBTyxxQkFBcUI7K0dBQXJCLHFCQUFxQjttR0FBckIscUJBQXFCLHlHQWZ0Qjs7Ozs7R0FLVCw4S0FOUyxZQUFZLCtCQUFFLGdCQUFnQiwyRUFBRSxlQUFlOzs0RkFnQjlDLHFCQUFxQjtrQkFuQmpDLFNBQVM7K0JBQ0UsbUJBQW1CLGNBQ2pCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxlQUFlLENBQUMsWUFDaEQ7Ozs7O0dBS1Q7OEJBV1EsS0FBSztzQkFBYixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJ1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2J1dHRvbi9idXR0b24uY29tcG9uZW50JztcbmltcG9ydCB7IERpc3BsYXlDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy9kaXNwbGF5L2Rpc3BsYXkuY29tcG9uZW50JztcbmltcG9ydCB7IEFjdGlvbkhlYWRlck1ldGFkYXRhIH0gZnJvbSAnLi90eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3ZhbC1hY3Rpb24taGVhZGVyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRGlzcGxheUNvbXBvbmVudCwgQnV0dG9uQ29tcG9uZW50XSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8c2VjdGlvbiBjbGFzcz1cImhlYWRlci1jb250ZW50LWNvbnRhaW5lclwiPlxuICAgICAgPHZhbC1kaXNwbGF5IFtwcm9wc109XCJwcm9wcy50aXRsZVwiIC8+XG4gICAgICA8dmFsLWJ1dHRvbiBbcHJvcHNdPVwicHJvcHMuYWN0aW9uXCIgLz5cbiAgICA8L3NlY3Rpb24+XG4gIGAsXG4gIHN0eWxlczogYFxuICAgIC5oZWFkZXItY29udGVudC1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG4gIGAsXG59KVxuZXhwb3J0IGNsYXNzIEFjdGlvbkhlYWRlckNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIHByb3BzOiBBY3Rpb25IZWFkZXJNZXRhZGF0YTtcbn1cbiJdfQ==
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FjdGlvbi1oZWFkZXIvYWN0aW9uLWhlYWRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBR25FOzs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBbUJHO0FBMEJILE1BQU0sT0FBTyxxQkFBcUI7K0dBQXJCLHFCQUFxQjttR0FBckIscUJBQXFCLHlHQXJCdEI7Ozs7Ozs7OztHQVNULHVMQVZTLFlBQVksK0JBQUUsZ0JBQWdCLDJFQUFFLGNBQWMseUVBQUUsZUFBZTs7NEZBc0I5RCxxQkFBcUI7a0JBekJqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLGVBQWUsQ0FBQyxZQUNoRTs7Ozs7Ozs7O0dBU1QsbUJBVWdCLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYXRvbXMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGlzcGxheUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2F0b21zL2Rpc3BsYXkvZGlzcGxheS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGl0bGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hdG9tcy90aXRsZS90aXRsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWN0aW9uSGVhZGVyTWV0YWRhdGEgfSBmcm9tICcuL3R5cGVzJztcblxuLyoqXG4gKiBgdmFsLWFjdGlvbi1oZWFkZXJgIOKAlCBoZWFkaW5nIHdpdGggYSByaWdodC1hbGlnbmVkIGFjdGlvbiBidXR0b24uXG4gKlxuICogQnkgZGVmYXVsdCByZW5kZXJzIHRoZSBoZWFkaW5nIHZpYSBgdmFsLWRpc3BsYXlgIChoZXJvIHNpemUpLiBTZXRcbiAqIGBoZWFkaW5nS2luZDogJ3RpdGxlJ2AgdG8gcmVuZGVyIHZpYSBgdmFsLXRpdGxlYCAoc2VjdGlvbiBzaXplKSBzbyBpdFxuICogbWF0Y2hlcyBgdmFsLXRpdGxlYCBzZWN0aW9uIGxhYmVscyBlbHNld2hlcmUgb24gdGhlIHNhbWUgc2NyZWVuLlxuICpcbiAqIEBleGFtcGxlIFNlY3Rpb24gaGVhZGluZyAobWF0Y2hlcyBgdmFsLXRpdGxlIHNpemU9J21lZGl1bSdgIG9uIHRoZSBwYWdlKTpcbiAqIDx2YWwtYWN0aW9uLWhlYWRlciBbcHJvcHNdPVwie1xuICogICBoZWFkaW5nS2luZDogJ3RpdGxlJyxcbiAqICAgdGl0bGU6IHsgc2l6ZTogJ21lZGl1bScsIGNvbG9yOiAnZGFyaycsIGJvbGQ6IHRydWUsIGNvbnRlbnQ6ICdBY3RpdmUgc2Vzc2lvbnMnIH0sXG4gKiAgIGFjdGlvbjogeyB0ZXh0OiAnU2lnbiBvdXQgYWxsJywgY29sb3I6ICdkYXJrJywgZmlsbDogJ291dGxpbmUnLCBzaXplOiAnc21hbGwnLCAuLi4gfSxcbiAqIH1cIj48L3ZhbC1hY3Rpb24taGVhZGVyPlxuICpcbiAqIEBleGFtcGxlIFBhZ2UgaGVybyAoZGVmYXVsdCk6XG4gKiA8dmFsLWFjdGlvbi1oZWFkZXIgW3Byb3BzXT1cIntcbiAqICAgdGl0bGU6IHsgc2l6ZTogJ2xhcmdlJywgY29sb3I6ICdkYXJrJywgY29udGVudDogJ1NldHRpbmdzJyB9LFxuICogICBhY3Rpb246IHsgLi4uIH0sXG4gKiB9XCI+PC92YWwtYWN0aW9uLWhlYWRlcj5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndmFsLWFjdGlvbi1oZWFkZXInLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBEaXNwbGF5Q29tcG9uZW50LCBUaXRsZUNvbXBvbmVudCwgQnV0dG9uQ29tcG9uZW50XSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8c2VjdGlvbiBjbGFzcz1cImhlYWRlci1jb250ZW50LWNvbnRhaW5lclwiPlxuICAgICAgQGlmIChwcm9wcy5oZWFkaW5nS2luZCA9PT0gJ3RpdGxlJykge1xuICAgICAgICA8dmFsLXRpdGxlIFtwcm9wc109XCIkYW55KHByb3BzLnRpdGxlKVwiIC8+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPHZhbC1kaXNwbGF5IFtwcm9wc109XCIkYW55KHByb3BzLnRpdGxlKVwiIC8+XG4gICAgICB9XG4gICAgICA8dmFsLWJ1dHRvbiBbcHJvcHNdPVwicHJvcHMuYWN0aW9uXCIgLz5cbiAgICA8L3NlY3Rpb24+XG4gIGAsXG4gIHN0eWxlczogYFxuICAgIC5oZWFkZXItY29udGVudC1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGdhcDogMTJweDtcbiAgICB9XG4gIGAsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBBY3Rpb25IZWFkZXJDb21wb25lbnQge1xuICBASW5wdXQoKSBwcm9wcyE6IEFjdGlvbkhlYWRlck1ldGFkYXRhO1xufVxuIl19
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FjdGlvbi1oZWFkZXIvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpc3BsYXlNZXRhZGF0YSB9IGZyb20gJy4uLy4uL2F0b21zL2Rpc3BsYXkvdHlwZXMnO1xuaW1wb3J0IHsgQnV0dG9uTWV0YWRhdGEgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5cbmV4cG9ydCB0eXBlIEFjdGlvbkhlYWRlck1ldGFkYXRhID0ge1xuICB0aXRsZTogRGlzcGxheU1ldGFkYXRhO1xuICBhY3Rpb246IEJ1dHRvbk1ldGFkYXRhO1xufTtcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvbXBvbmVudHMvbW9sZWN1bGVzL2FjdGlvbi1oZWFkZXIvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpc3BsYXlNZXRhZGF0YSB9IGZyb20gJy4uLy4uL2F0b21zL2Rpc3BsYXkvdHlwZXMnO1xuaW1wb3J0IHsgVGl0bGVNZXRhZGF0YSB9IGZyb20gJy4uLy4uL2F0b21zL3RpdGxlL3R5cGVzJztcbmltcG9ydCB7IEJ1dHRvbk1ldGFkYXRhIH0gZnJvbSAnLi4vLi4vdHlwZXMnO1xuXG4vKipcbiAqIERldGVybWluZXMgaG93IHRoZSBoZWFkaW5nIGlzIHJlbmRlcmVkLlxuICpcbiAqIC0gYCdkaXNwbGF5J2AgKGRlZmF1bHQpIOKAlCB1c2VzIGB2YWwtZGlzcGxheWAuIFZlcnkgbGFyZ2UgKDQwcHggbWVkaXVtLCA0OHB4IGxhcmdlKS5cbiAqICAgSWRlYWwgZm9yIHBhZ2UtbGV2ZWwgaGVybyBoZWFkZXJzLlxuICogLSBgJ3RpdGxlJ2Ag4oCUIHVzZXMgYHZhbC10aXRsZWAuIFNtYWxsZXIgKDE4cHggbWVkaXVtLCAyNHB4IGxhcmdlKS4gSWRlYWwgZm9yXG4gKiAgIHNlY3Rpb24tbGV2ZWwgaGVhZGluZ3MgaW5zaWRlIGEgcGFnZSwgc28gdGhleSBtYXRjaCBvdGhlciBgdmFsLXRpdGxlYFxuICogICBzZWN0aW9uIGxhYmVscyBvbiB0aGUgc2FtZSBzY3JlZW4uXG4gKi9cbmV4cG9ydCB0eXBlIEFjdGlvbkhlYWRlckhlYWRpbmdLaW5kID0gJ2Rpc3BsYXknIHwgJ3RpdGxlJztcblxuLyoqXG4gKiBDb25maWd1cmF0aW9uIGZvciBgdmFsLWFjdGlvbi1oZWFkZXJgIOKAlCBhIHNlY3Rpb24gdGl0bGUgd2l0aCBhIHJpZ2h0LWFsaWduZWRcbiAqIGFjdGlvbiBidXR0b24uIFVzZSBgaGVhZGluZ0tpbmQ6ICd0aXRsZSdgIHdoZW4gdGhpcyBsaXZlcyBpbnNpZGUgYSBwYWdlIHRoYXRcbiAqIGFscmVhZHkgaGFzIGB2YWwtdGl0bGVgIHNlY3Rpb24gbGFiZWxzIChzbyBzaXplcyBzdGF5IGNvaGVyZW50KS5cbiAqL1xuZXhwb3J0IHR5cGUgQWN0aW9uSGVhZGVyTWV0YWRhdGEgPSB7XG4gIC8qKiBIZWFkaW5nIHByb3BzLiBVc2UgYERpc3BsYXlNZXRhZGF0YWAgc2hhcGUgd2hlbiBgaGVhZGluZ0tpbmQgPT09ICdkaXNwbGF5J2AsXG4gICAqICBgVGl0bGVNZXRhZGF0YWAgc2hhcGUgd2hlbiBgaGVhZGluZ0tpbmQgPT09ICd0aXRsZSdgLiBCb3RoIGFjY2VwdFxuICAgKiAgYHNpemVgLCBgY29sb3JgLCBgY29udGVudGAuICovXG4gIHRpdGxlOiBEaXNwbGF5TWV0YWRhdGEgfCBUaXRsZU1ldGFkYXRhO1xuICBhY3Rpb246IEJ1dHRvbk1ldGFkYXRhO1xuICAvKiogRGVmYXVsdCBgJ2Rpc3BsYXknYCBmb3IgYmFjay1jb21wYXQuICovXG4gIGhlYWRpbmdLaW5kPzogQWN0aW9uSGVhZGVySGVhZGluZ0tpbmQ7XG59O1xuIl19
@@ -2,5 +2,5 @@
2
2
  * Current version of valtech-components.
3
3
  * This is automatically updated during the publish process.
4
4
  */
5
- export const VERSION = '2.0.785';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuMC43ODUnO1xuIl19
5
+ export const VERSION = '2.0.786';
6
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9saWIvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFDSCxNQUFNLENBQUMsTUFBTSxPQUFPLEdBQUcsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBDdXJyZW50IHZlcnNpb24gb2YgdmFsdGVjaC1jb21wb25lbnRzLlxuICogVGhpcyBpcyBhdXRvbWF0aWNhbGx5IHVwZGF0ZWQgZHVyaW5nIHRoZSBwdWJsaXNoIHByb2Nlc3MuXG4gKi9cbmV4cG9ydCBjb25zdCBWRVJTSU9OID0gJzIuMC43ODYnO1xuIl19
@@ -52,7 +52,7 @@ import 'prismjs/components/prism-json';
52
52
  * Current version of valtech-components.
53
53
  * This is automatically updated during the publish process.
54
54
  */
55
- const VERSION = '2.0.785';
55
+ const VERSION = '2.0.786';
56
56
 
57
57
  /**
58
58
  * Servicio para gestionar presets de componentes.
@@ -10755,23 +10755,51 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
10755
10755
  type: Input
10756
10756
  }] } });
10757
10757
 
10758
+ /**
10759
+ * `val-action-header` — heading with a right-aligned action button.
10760
+ *
10761
+ * By default renders the heading via `val-display` (hero size). Set
10762
+ * `headingKind: 'title'` to render via `val-title` (section size) so it
10763
+ * matches `val-title` section labels elsewhere on the same screen.
10764
+ *
10765
+ * @example Section heading (matches `val-title size='medium'` on the page):
10766
+ * <val-action-header [props]="{
10767
+ * headingKind: 'title',
10768
+ * title: { size: 'medium', color: 'dark', bold: true, content: 'Active sessions' },
10769
+ * action: { text: 'Sign out all', color: 'dark', fill: 'outline', size: 'small', ... },
10770
+ * }"></val-action-header>
10771
+ *
10772
+ * @example Page hero (default):
10773
+ * <val-action-header [props]="{
10774
+ * title: { size: 'large', color: 'dark', content: 'Settings' },
10775
+ * action: { ... },
10776
+ * }"></val-action-header>
10777
+ */
10758
10778
  class ActionHeaderComponent {
10759
10779
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ActionHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10760
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ActionHeaderComponent, isStandalone: true, selector: "val-action-header", inputs: { props: "props" }, ngImport: i0, template: `
10780
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: ActionHeaderComponent, isStandalone: true, selector: "val-action-header", inputs: { props: "props" }, ngImport: i0, template: `
10761
10781
  <section class="header-content-container">
10762
- <val-display [props]="props.title" />
10782
+ @if (props.headingKind === 'title') {
10783
+ <val-title [props]="$any(props.title)" />
10784
+ } @else {
10785
+ <val-display [props]="$any(props.title)" />
10786
+ }
10763
10787
  <val-button [props]="props.action" />
10764
10788
  </section>
10765
- `, isInline: true, styles: [".header-content-container{width:100%;display:flex;align-items:center;justify-content:space-between}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: ButtonComponent, selector: "val-button", inputs: ["preset", "props"], outputs: ["onClick"] }] }); }
10789
+ `, isInline: true, styles: [".header-content-container{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: DisplayComponent, selector: "val-display", inputs: ["props"] }, { kind: "component", type: TitleComponent, selector: "val-title", inputs: ["props"] }, { kind: "component", type: ButtonComponent, selector: "val-button", inputs: ["preset", "props"], outputs: ["onClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10766
10790
  }
10767
10791
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ActionHeaderComponent, decorators: [{
10768
10792
  type: Component,
10769
- args: [{ selector: 'val-action-header', standalone: true, imports: [CommonModule, DisplayComponent, ButtonComponent], template: `
10793
+ args: [{ selector: 'val-action-header', standalone: true, imports: [CommonModule, DisplayComponent, TitleComponent, ButtonComponent], template: `
10770
10794
  <section class="header-content-container">
10771
- <val-display [props]="props.title" />
10795
+ @if (props.headingKind === 'title') {
10796
+ <val-title [props]="$any(props.title)" />
10797
+ } @else {
10798
+ <val-display [props]="$any(props.title)" />
10799
+ }
10772
10800
  <val-button [props]="props.action" />
10773
10801
  </section>
10774
- `, styles: [".header-content-container{width:100%;display:flex;align-items:center;justify-content:space-between}\n"] }]
10802
+ `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".header-content-container{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}\n"] }]
10775
10803
  }], propDecorators: { props: [{
10776
10804
  type: Input
10777
10805
  }] } });