@acorex/components 21.1.0-next.2 → 22.0.0-next.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/acorex-components-accordion.mjs +47 -30
- package/fesm2022/acorex-components-accordion.mjs.map +1 -1
- package/fesm2022/acorex-components-action-sheet.mjs +46 -31
- package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
- package/fesm2022/acorex-components-alert.mjs +24 -17
- package/fesm2022/acorex-components-alert.mjs.map +1 -1
- package/fesm2022/acorex-components-aspect-ratio.mjs +10 -8
- package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
- package/fesm2022/acorex-components-audio-wave.mjs +13 -10
- package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
- package/fesm2022/acorex-components-autocomplete.mjs +24 -17
- package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
- package/fesm2022/acorex-components-avatar.mjs +20 -16
- package/fesm2022/acorex-components-avatar.mjs.map +1 -1
- package/fesm2022/acorex-components-badge.mjs +11 -10
- package/fesm2022/acorex-components-badge.mjs.map +1 -1
- package/fesm2022/acorex-components-bottom-navigation.mjs +19 -16
- package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-breadcrumbs.mjs +16 -14
- package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
- package/fesm2022/acorex-components-button-group.mjs +17 -16
- package/fesm2022/acorex-components-button-group.mjs.map +1 -1
- package/fesm2022/acorex-components-button.mjs +38 -29
- package/fesm2022/acorex-components-button.mjs.map +1 -1
- package/fesm2022/acorex-components-calendar.mjs +44 -30
- package/fesm2022/acorex-components-calendar.mjs.map +1 -1
- package/fesm2022/acorex-components-check-box.mjs +12 -11
- package/fesm2022/acorex-components-check-box.mjs.map +1 -1
- package/fesm2022/acorex-components-chips.mjs +11 -10
- package/fesm2022/acorex-components-chips.mjs.map +1 -1
- package/fesm2022/acorex-components-circular-progress.mjs +19 -14
- package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-code-editor.mjs +42 -26
- package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-color-box.mjs +20 -15
- package/fesm2022/acorex-components-color-box.mjs.map +1 -1
- package/fesm2022/acorex-components-color-palette.mjs +45 -43
- package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
- package/fesm2022/acorex-components-command.mjs +25 -16
- package/fesm2022/acorex-components-command.mjs.map +1 -1
- package/fesm2022/acorex-components-comment.mjs +42 -41
- package/fesm2022/acorex-components-comment.mjs.map +1 -1
- package/fesm2022/{acorex-components-conversation-composer-action-choice-dialog.component-C28hl7iD.mjs → acorex-components-conversation-composer-action-choice-dialog.component-CNHiM1Sp.mjs} +17 -12
- package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-CNHiM1Sp.mjs.map +1 -0
- package/fesm2022/{acorex-components-conversation-open-composer-picker-for-files-Duvap4M4.mjs → acorex-components-conversation-open-composer-picker-for-files-Hh5Oyp3p.mjs} +2 -2
- package/fesm2022/{acorex-components-conversation-open-composer-picker-for-files-Duvap4M4.mjs.map → acorex-components-conversation-open-composer-picker-for-files-Hh5Oyp3p.mjs.map} +1 -1
- package/fesm2022/acorex-components-conversation.mjs +1620 -1156
- package/fesm2022/acorex-components-conversation.mjs.map +1 -1
- package/fesm2022/acorex-components-cron-job.mjs +56 -51
- package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
- package/fesm2022/acorex-components-data-list.mjs +61 -33
- package/fesm2022/acorex-components-data-list.mjs.map +1 -1
- package/fesm2022/acorex-components-data-pager.mjs +42 -47
- package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
- package/fesm2022/acorex-components-data-table.mjs +110 -96
- package/fesm2022/acorex-components-data-table.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-box.mjs +42 -26
- package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-input.mjs +38 -24
- package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
- package/fesm2022/acorex-components-datetime-picker.mjs +50 -30
- package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-decorators.mjs +53 -45
- package/fesm2022/acorex-components-decorators.mjs.map +1 -1
- package/fesm2022/acorex-components-dialog.mjs +17 -15
- package/fesm2022/acorex-components-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-drawer.mjs +33 -24
- package/fesm2022/acorex-components-drawer.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown-button.mjs +10 -10
- package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
- package/fesm2022/acorex-components-dropdown.mjs +24 -20
- package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
- package/fesm2022/acorex-components-editor.mjs +16 -13
- package/fesm2022/acorex-components-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-fab.mjs +27 -18
- package/fesm2022/acorex-components-fab.mjs.map +1 -1
- package/fesm2022/acorex-components-file-viewer.mjs +149 -99
- package/fesm2022/acorex-components-file-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-flow-chart.mjs +53 -37
- package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
- package/fesm2022/acorex-components-form.mjs +45 -34
- package/fesm2022/acorex-components-form.mjs.map +1 -1
- package/fesm2022/acorex-components-grid-layout-builder.mjs +23 -21
- package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-image-editor.mjs +182 -135
- package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
- package/fesm2022/acorex-components-image.mjs +14 -12
- package/fesm2022/acorex-components-image.mjs.map +1 -1
- package/fesm2022/acorex-components-json-viewer.mjs +15 -11
- package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-kanban.mjs +41 -22
- package/fesm2022/acorex-components-kanban.mjs.map +1 -1
- package/fesm2022/acorex-components-kbd.mjs +23 -16
- package/fesm2022/acorex-components-kbd.mjs.map +1 -1
- package/fesm2022/acorex-components-label.mjs +10 -10
- package/fesm2022/acorex-components-label.mjs.map +1 -1
- package/fesm2022/acorex-components-list.mjs +26 -18
- package/fesm2022/acorex-components-list.mjs.map +1 -1
- package/fesm2022/acorex-components-loading-dialog.mjs +26 -19
- package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
- package/fesm2022/acorex-components-loading.mjs +20 -20
- package/fesm2022/acorex-components-loading.mjs.map +1 -1
- package/fesm2022/acorex-components-map.mjs +79 -47
- package/fesm2022/acorex-components-map.mjs.map +1 -1
- package/fesm2022/acorex-components-media-viewer.mjs +126 -86
- package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
- package/fesm2022/acorex-components-menu.mjs +71 -52
- package/fesm2022/acorex-components-menu.mjs.map +1 -1
- package/fesm2022/{acorex-components-modal-acorex-components-modal-dF5HUEBH.mjs → acorex-components-modal-acorex-components-modal-Djl-uo9b.mjs} +34 -30
- package/fesm2022/acorex-components-modal-acorex-components-modal-Djl-uo9b.mjs.map +1 -0
- package/fesm2022/{acorex-components-modal-modal-content.component-BGTYje3j.mjs → acorex-components-modal-modal-content.component-BpUsCI8D.mjs} +73 -40
- package/fesm2022/acorex-components-modal-modal-content.component-BpUsCI8D.mjs.map +1 -0
- package/fesm2022/acorex-components-modal.mjs +1 -1
- package/fesm2022/acorex-components-navbar.mjs +9 -9
- package/fesm2022/acorex-components-navbar.mjs.map +1 -1
- package/fesm2022/acorex-components-notification.mjs +41 -27
- package/fesm2022/acorex-components-notification.mjs.map +1 -1
- package/fesm2022/acorex-components-number-box.mjs +32 -21
- package/fesm2022/acorex-components-number-box.mjs.map +1 -1
- package/fesm2022/acorex-components-otp.mjs +18 -14
- package/fesm2022/acorex-components-otp.mjs.map +1 -1
- package/fesm2022/acorex-components-page.mjs +10 -10
- package/fesm2022/acorex-components-paint.mjs +79 -55
- package/fesm2022/acorex-components-paint.mjs.map +1 -1
- package/fesm2022/acorex-components-password-box.mjs +46 -30
- package/fesm2022/acorex-components-password-box.mjs.map +1 -1
- package/fesm2022/acorex-components-pdf-reader.mjs +11 -10
- package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
- package/fesm2022/acorex-components-phone-box.mjs +31 -21
- package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
- package/fesm2022/acorex-components-picker.mjs +44 -31
- package/fesm2022/acorex-components-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-popover.mjs +14 -12
- package/fesm2022/acorex-components-popover.mjs.map +1 -1
- package/fesm2022/acorex-components-popup.mjs +32 -24
- package/fesm2022/acorex-components-popup.mjs.map +1 -1
- package/fesm2022/acorex-components-progress-bar.mjs +9 -9
- package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
- package/fesm2022/acorex-components-qrcode.mjs +28 -19
- package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
- package/fesm2022/acorex-components-query-builder.mjs +19 -14
- package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
- package/fesm2022/acorex-components-radio.mjs +10 -10
- package/fesm2022/acorex-components-radio.mjs.map +1 -1
- package/fesm2022/acorex-components-rail-navigation.mjs +44 -30
- package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
- package/fesm2022/acorex-components-range-slider.mjs +60 -35
- package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-rate-picker.mjs +30 -20
- package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-rest-api-generator.mjs +50 -39
- package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
- package/fesm2022/acorex-components-result.mjs +9 -9
- package/fesm2022/acorex-components-result.mjs.map +1 -1
- package/fesm2022/acorex-components-routing-progress.mjs +9 -9
- package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
- package/fesm2022/acorex-components-rrule.mjs +52 -35
- package/fesm2022/acorex-components-rrule.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler-picker.mjs +205 -152
- package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
- package/fesm2022/acorex-components-scheduler.mjs +504 -275
- package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
- package/fesm2022/acorex-components-search-box.mjs +14 -12
- package/fesm2022/acorex-components-search-box.mjs.map +1 -1
- package/fesm2022/acorex-components-select-box.mjs +32 -21
- package/fesm2022/acorex-components-select-box.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list-2.mjs +16 -13
- package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
- package/fesm2022/acorex-components-selection-list.mjs +14 -12
- package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
- package/fesm2022/acorex-components-side-menu.mjs +74 -46
- package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
- package/fesm2022/acorex-components-sidebar.mjs +89 -63
- package/fesm2022/acorex-components-sidebar.mjs.map +1 -1
- package/fesm2022/acorex-components-skeleton.mjs +7 -7
- package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
- package/fesm2022/acorex-components-slider.mjs +10 -10
- package/fesm2022/acorex-components-slider.mjs.map +1 -1
- package/fesm2022/acorex-components-sliding-item.mjs +31 -22
- package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
- package/fesm2022/acorex-components-step-wizard.mjs +66 -41
- package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
- package/fesm2022/acorex-components-switch.mjs +13 -13
- package/fesm2022/acorex-components-switch.mjs.map +1 -1
- package/fesm2022/acorex-components-tabs.mjs +27 -23
- package/fesm2022/acorex-components-tabs.mjs.map +1 -1
- package/fesm2022/acorex-components-tag-box.mjs +30 -20
- package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
- package/fesm2022/acorex-components-tag.mjs +9 -9
- package/fesm2022/acorex-components-tag.mjs.map +1 -1
- package/fesm2022/acorex-components-text-area.mjs +10 -10
- package/fesm2022/acorex-components-text-area.mjs.map +1 -1
- package/fesm2022/acorex-components-text-box.mjs +14 -12
- package/fesm2022/acorex-components-text-box.mjs.map +1 -1
- package/fesm2022/acorex-components-time-duration.mjs +46 -28
- package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
- package/fesm2022/acorex-components-time-line.mjs +27 -20
- package/fesm2022/acorex-components-time-line.mjs.map +1 -1
- package/fesm2022/acorex-components-toast.mjs +37 -25
- package/fesm2022/acorex-components-toast.mjs.map +1 -1
- package/fesm2022/acorex-components-toolbar.mjs +17 -13
- package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
- package/fesm2022/acorex-components-tooltip.mjs +18 -15
- package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
- package/fesm2022/acorex-components-tree-view.mjs +106 -59
- package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
- package/fesm2022/acorex-components-uploader.mjs +15 -14
- package/fesm2022/acorex-components-uploader.mjs.map +1 -1
- package/fesm2022/acorex-components-video-player.mjs +11 -10
- package/fesm2022/acorex-components-video-player.mjs.map +1 -1
- package/fesm2022/acorex-components-wysiwyg.mjs +67 -53
- package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
- package/package.json +3 -3
- package/types/acorex-components-rrule.d.ts +3 -2
- package/types/acorex-components-side-menu.d.ts +1 -1
- package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-C28hl7iD.mjs.map +0 -1
- package/fesm2022/acorex-components-modal-acorex-components-modal-dF5HUEBH.mjs.map +0 -1
- package/fesm2022/acorex-components-modal-modal-content.component-BGTYje3j.mjs.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { MXInteractiveComponent, AXComponent } from '@acorex/cdk/common';
|
|
2
2
|
import { AXButtonComponent } from '@acorex/components/button';
|
|
3
3
|
import * as i0 from '@angular/core';
|
|
4
|
-
import { input, EventEmitter, effect, contentChildren, output, HostListener, HostBinding, Input, Output, ViewEncapsulation,
|
|
4
|
+
import { input, EventEmitter, effect, contentChildren, output, HostListener, HostBinding, Input, Output, ViewEncapsulation, Component, inject, model, NgModule } from '@angular/core';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* A component that groups multiple buttons together, allowing for consistent styling and behavior.
|
|
@@ -11,7 +11,8 @@ import { input, EventEmitter, effect, contentChildren, output, HostListener, Hos
|
|
|
11
11
|
class AXButtonGroupComponent extends MXInteractiveComponent {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
|
-
this.fitParent = input(false,
|
|
14
|
+
this.fitParent = input(false, /* @ts-ignore */
|
|
15
|
+
...(ngDevMode ? [{ debugName: "fitParent" }] : /* istanbul ignore next */ []));
|
|
15
16
|
this.colorChange = new EventEmitter();
|
|
16
17
|
this._color = 'default';
|
|
17
18
|
this.lookChange = new EventEmitter();
|
|
@@ -22,7 +23,8 @@ class AXButtonGroupComponent extends MXInteractiveComponent {
|
|
|
22
23
|
this._bindEvents();
|
|
23
24
|
this._bindProps();
|
|
24
25
|
}
|
|
25
|
-
},
|
|
26
|
+
}, /* @ts-ignore */
|
|
27
|
+
...(ngDevMode ? [{ debugName: "#effect" }] : /* istanbul ignore next */ []));
|
|
26
28
|
/**
|
|
27
29
|
* Fires when any button in the group is clicked.
|
|
28
30
|
*
|
|
@@ -177,12 +179,12 @@ class AXButtonGroupComponent extends MXInteractiveComponent {
|
|
|
177
179
|
});
|
|
178
180
|
}
|
|
179
181
|
}
|
|
180
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
181
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "
|
|
182
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonGroupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
183
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.8", type: AXButtonGroupComponent, isStandalone: true, selector: "ax-button-group", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, fitParent: { classPropertyName: "fitParent", publicName: "fitParent", isSignal: true, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: false, isRequired: false, transformFunction: null }, customClass: { classPropertyName: "customClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, selection: { classPropertyName: "selection", publicName: "selection", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onBlur: "onBlur", onFocus: "onFocus", disabledChange: "disabledChange", colorChange: "colorChange", lookChange: "lookChange", onClick: "onClick", selectionChange: "selectionChange", selectedButtonChange: "selectedButtonChange" }, host: { listeners: { "click": "__hostClick($event)" }, properties: { "class": "this.__hostClass", "attr.role": "this.role" } }, providers: [{ provide: AXComponent, useExisting: AXButtonGroupComponent }], queries: [{ propertyName: "_contentButtons", predicate: AXButtonGroupItemComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<ng-container>\n <ng-content select=\"ax-button-group-item\"></ng-content>\n</ng-container>\n", styles: ["@layer components{ax-button-group{display:flex;flex-wrap:wrap}ax-button-group ax-button-group-item{min-width:calc(var(--spacing, .25rem) * 0)}ax-button-group ax-button-group-item ax-button{display:block}ax-button-group ax-button-group-item ax-button>button .ax-button-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ax-button-group ax-button-group-item.ax-state-selected ax-button{z-index:1}ax-button-group ax-button-group-item:not(:first-child,:last-child) ax-button{border-radius:0}ax-button-group ax-button-group-item:not(:first-child) ax-button{margin-inline-start:-1px}ax-button-group ax-button-group-item.ax-row-start ax-button{margin-inline-start:calc(var(--spacing, .25rem) * 0)}:is(ax-button-group ax-button-group-item:first-child,ax-button-group ax-button-group-item.ax-row-start) ax-button{border-radius:0;border-start-start-radius:var(--radius-lg, .5rem);border-end-start-radius:var(--radius-lg, .5rem)}:is(ax-button-group ax-button-group-item:last-child,ax-button-group ax-button-group-item.ax-row-end) ax-button{border-radius:0;border-start-end-radius:var(--radius-lg, .5rem);border-end-end-radius:var(--radius-lg, .5rem)}ax-button-group.ax-parent-fit{flex-wrap:wrap}ax-button-group.ax-parent-fit ax-button-group-item{width:100%}ax-button-group.ax-parent-fit ax-button-group-item ax-button{width:100%}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], encapsulation: i0.ViewEncapsulation.None }); }
|
|
182
184
|
}
|
|
183
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
185
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonGroupComponent, decorators: [{
|
|
184
186
|
type: Component,
|
|
185
|
-
args: [{ selector: 'ax-button-group',
|
|
187
|
+
args: [{ selector: 'ax-button-group', encapsulation: ViewEncapsulation.None, inputs: ['disabled'], outputs: ['onBlur', 'onFocus', 'disabledChange'], providers: [{ provide: AXComponent, useExisting: AXButtonGroupComponent }], template: "<ng-container>\n <ng-content select=\"ax-button-group-item\"></ng-content>\n</ng-container>\n", styles: ["@layer components{ax-button-group{display:flex;flex-wrap:wrap}ax-button-group ax-button-group-item{min-width:calc(var(--spacing, .25rem) * 0)}ax-button-group ax-button-group-item ax-button{display:block}ax-button-group ax-button-group-item ax-button>button .ax-button-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}ax-button-group ax-button-group-item.ax-state-selected ax-button{z-index:1}ax-button-group ax-button-group-item:not(:first-child,:last-child) ax-button{border-radius:0}ax-button-group ax-button-group-item:not(:first-child) ax-button{margin-inline-start:-1px}ax-button-group ax-button-group-item.ax-row-start ax-button{margin-inline-start:calc(var(--spacing, .25rem) * 0)}:is(ax-button-group ax-button-group-item:first-child,ax-button-group ax-button-group-item.ax-row-start) ax-button{border-radius:0;border-start-start-radius:var(--radius-lg, .5rem);border-end-start-radius:var(--radius-lg, .5rem)}:is(ax-button-group ax-button-group-item:last-child,ax-button-group ax-button-group-item.ax-row-end) ax-button{border-radius:0;border-start-end-radius:var(--radius-lg, .5rem);border-end-end-radius:var(--radius-lg, .5rem)}ax-button-group.ax-parent-fit{flex-wrap:wrap}ax-button-group.ax-parent-fit ax-button-group-item{width:100%}ax-button-group.ax-parent-fit ax-button-group-item ax-button{width:100%}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"] }]
|
|
186
188
|
}], propDecorators: { fitParent: [{ type: i0.Input, args: [{ isSignal: true, alias: "fitParent", required: false }] }], colorChange: [{
|
|
187
189
|
type: Output
|
|
188
190
|
}], color: [{
|
|
@@ -291,8 +293,8 @@ class AXButtonGroupItemComponent extends MXInteractiveComponent {
|
|
|
291
293
|
.map((c) => c[0])
|
|
292
294
|
.join(' ');
|
|
293
295
|
}
|
|
294
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
295
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
296
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonGroupItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
297
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.8", type: AXButtonGroupItemComponent, isStandalone: true, selector: "ax-button-group-item", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: false, transformFunction: null }, customClass: { classPropertyName: "customClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null }, divided: { classPropertyName: "divided", publicName: "divided", isSignal: false, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: false, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur", disabledChange: "disabledChange", customClass: "classChange" }, host: { listeners: { "click": "__hostClick($event)", "focus": "__hostFocus($event)", "blur": "__hostBlur($event)" }, properties: { "class": "this.__hostClass", "attr.tabindex": "this.tabindex" } }, providers: [{ provide: AXComponent, useExisting: AXButtonGroupItemComponent }], usesInheritance: true, ngImport: i0, template: `
|
|
296
298
|
<ax-button
|
|
297
299
|
[color]="color && color !== 'default' ? color : btnGroup.color"
|
|
298
300
|
[text]="text"
|
|
@@ -303,9 +305,9 @@ class AXButtonGroupItemComponent extends MXInteractiveComponent {
|
|
|
303
305
|
>
|
|
304
306
|
<ng-content></ng-content>
|
|
305
307
|
</ax-button>
|
|
306
|
-
`, isInline: true, dependencies: [{ kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }],
|
|
308
|
+
`, isInline: true, dependencies: [{ kind: "component", type: AXButtonComponent, selector: "ax-button", inputs: ["disabled", "size", "tabIndex", "color", "look", "text", "toggleable", "selected", "iconOnly", "type", "loadingText"], outputs: ["onBlur", "onFocus", "onClick", "selectedChange", "toggleableChange", "lookChange", "colorChange", "disabledChange", "loadingTextChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
307
309
|
}
|
|
308
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
310
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonGroupItemComponent, decorators: [{
|
|
309
311
|
type: Component,
|
|
310
312
|
args: [{
|
|
311
313
|
selector: 'ax-button-group-item',
|
|
@@ -322,7 +324,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
322
324
|
</ax-button>
|
|
323
325
|
`,
|
|
324
326
|
encapsulation: ViewEncapsulation.None,
|
|
325
|
-
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
326
327
|
inputs: ['disabled'],
|
|
327
328
|
outputs: ['onClick', 'onFocus', 'onBlur', 'disabledChange'],
|
|
328
329
|
imports: [AXButtonComponent],
|
|
@@ -360,11 +361,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
360
361
|
}] } });
|
|
361
362
|
|
|
362
363
|
class AXButtonGroupModule {
|
|
363
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
364
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
365
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
364
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonGroupModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
365
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: AXButtonGroupModule, imports: [AXButtonGroupComponent, AXButtonGroupItemComponent], exports: [AXButtonGroupComponent, AXButtonGroupItemComponent] }); }
|
|
366
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonGroupModule, imports: [AXButtonGroupItemComponent] }); }
|
|
366
367
|
}
|
|
367
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
368
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonGroupModule, decorators: [{
|
|
368
369
|
type: NgModule,
|
|
369
370
|
args: [{
|
|
370
371
|
imports: [AXButtonGroupComponent, AXButtonGroupItemComponent],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acorex-components-button-group.mjs","sources":["../../../../packages/components/button-group/src/lib/button-group.component.ts","../../../../packages/components/button-group/src/lib/button-group.component.html","../../../../packages/components/button-group/src/lib/button-group-item.component.ts","../../../../packages/components/button-group/src/lib/button-group.module.ts","../../../../packages/components/button-group/src/acorex-components-button-group.ts"],"sourcesContent":["import {\n AXClickEvent,\n AXComponent,\n AXSelectionMode,\n MXInteractiveComponent,\n type AXStyleColorType,\n type AXStyleLookType,\n} from '@acorex/cdk/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n contentChildren,\n effect,\n EventEmitter,\n HostBinding,\n HostListener,\n input,\n Input,\n output,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXButtonGroupItemComponent } from './button-group-item.component';\n\n/**\n * A component that groups multiple buttons together, allowing for consistent styling and behavior.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-button-group',\n templateUrl: './button-group.component.html',\n styleUrls: ['./button-group.component.css'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n inputs: ['disabled'],\n outputs: ['onBlur', 'onFocus', 'disabledChange'],\n providers: [{ provide: AXComponent, useExisting: AXButtonGroupComponent }],\n})\nexport class AXButtonGroupComponent extends MXInteractiveComponent {\n readonly fitParent = input(false);\n\n @Output()\n colorChange: EventEmitter<AXStyleColorType> = new EventEmitter();\n\n private _color: AXStyleColorType = 'default';\n @Input()\n public get color() {\n return this._color;\n }\n public set color(v) {\n this._color = v;\n this.colorChange.emit(v);\n }\n\n @Output()\n lookChange: EventEmitter<AXStyleLookType> = new EventEmitter();\n\n private _look: AXStyleLookType = 'solid';\n @Input()\n public get look() {\n return this._look;\n }\n public set look(v) {\n this._look = v;\n this.lookChange.emit(v);\n }\n\n readonly customClass = input<string>('', { alias: 'class' });\n\n #effect = effect(() => {\n if (this._contentButtons().length) {\n this._bindEvents();\n this._bindProps();\n }\n });\n\n /**\n * Fires when any button in the group is clicked.\n *\n * @event\n */\n @Output()\n onClick: EventEmitter<AXClickEvent> = new EventEmitter<AXClickEvent>();\n\n /**\n * @ignore\n */\n private _contentButtons = contentChildren(AXButtonGroupItemComponent, { descendants: true });\n\n /**\n * Emitted when the selection mode changes.\n *\n * @event\n */\n @Output()\n selectionChange: EventEmitter<AXSelectionMode> = new EventEmitter();\n /**\n * Emits the button item component instance when the selected button changes.\n *\n * @event\n */\n selectedButtonChange = output<AXButtonGroupItemComponent>();\n\n /**\n * @ignore\n */\n private _selection: AXSelectionMode;\n\n /**\n * Defines the selection mode for the component.\n */\n @Input()\n public get selection(): AXSelectionMode {\n return this._selection;\n }\n\n /**\n * Sets the selection mode for the component.\n *\n * @param value - The selection mode to be set. Possible values include 'single', 'multiple', or 'none'.\n */\n public set selection(value: AXSelectionMode) {\n this.setOption({\n name: 'selection',\n value: value,\n afterCallback: (o, n) => {\n if (value == 'none') {\n this.clearSelection();\n }\n },\n });\n }\n\n /**\n * @ignore\n */\n private _bindEvents() {\n this._contentButtons()?.forEach((b: any) => {\n if (!b.onClick.length)\n b.onClick.subscribe((c: any) => {\n this._handleClickEvent(c, b);\n });\n });\n }\n\n /**\n * @ignore\n */\n private _bindProps() {\n this._contentButtons()?.forEach((b: any) => {\n if (this.customClass()) b.customClass.set(this.customClass());\n\n if (b['originDisabled'] == null) {\n b['originDisabled'] = b.disabled;\n }\n if (b['originColor'] == null) {\n b['originColor'] = b.color;\n }\n if (this.look) b.look = this.look;\n // Apply group color only if the item has not explicitly provided a color\n if (this.color) {\n const itemHasExplicitColor = b['originColor'] != null && b['originColor'] !== 'default';\n b.color = itemHasExplicitColor ? b['originColor'] : this.color;\n }\n b.disabled = b['originDisabled'] || this.disabled;\n b.toggleable = false;\n });\n }\n\n /**\n * @ignore\n * Updates component properties based on internal option changes.\n */\n protected override internalOptionChanged() {\n this._bindProps();\n }\n\n /**\n * @ignore\n */\n private _handleClickEvent(e: AXClickEvent, button: AXButtonGroupItemComponent) {\n this.selectedButtonChange.emit(button);\n if (this.selection == 'multiple') {\n button.selected = !button.selected;\n } else if (this.selection == 'single') {\n this.clearSelection();\n button.selected = true;\n } else {\n button.selected = false;\n }\n }\n\n /**\n * @ignore\n */\n private clearSelection() {\n this._contentButtons()?.forEach((c: AXButtonGroupItemComponent) => {\n c.selected = false;\n });\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): { [key: string]: boolean } {\n const cssClasses = {\n 'ax-state-disabled': this.disabled,\n 'ax-parent-fit': this.fitParent(),\n };\n return cssClasses;\n }\n\n /**\n * @ignore\n */\n @HostBinding('attr.role') get role() {\n return 'group';\n }\n\n /**\n * @ignore\n */\n @HostListener('click', ['$event'])\n __hostClick(e: MouseEvent) {\n if (!this.disabled) {\n this.onClick.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e,\n });\n }\n }\n}\n","<ng-container>\n <ng-content select=\"ax-button-group-item\"></ng-content>\n</ng-container>\n","import { AXClickEvent, AXComponent, AXStyleColorType, MXInteractiveComponent } from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport {\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n HostBinding,\n HostListener,\n inject,\n Input,\n model,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXButtonGroupComponent } from './button-group.component';\n\nexport interface AXButtonItemListItem {\n name: string;\n text: string;\n icon: string;\n divided?: boolean;\n disabled?: boolean;\n color?: AXStyleColorType;\n}\n\n/**\n * Represents a button item with optional content like icons, text, and dropdowns.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-button-group-item',\n template: `\n <ax-button\n [color]=\"color && color !== 'default' ? color : btnGroup.color\"\n [text]=\"text\"\n [class]=\"customClass()\"\n [look]=\"btnGroup.look\"\n [disabled]=\"disabled\"\n [selected]=\"selected\"\n >\n <ng-content></ng-content>\n </ax-button>\n `,\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n inputs: ['disabled'],\n outputs: ['onClick', 'onFocus', 'onBlur', 'disabledChange'],\n imports: [AXButtonComponent],\n providers: [{ provide: AXComponent, useExisting: AXButtonGroupItemComponent }],\n})\nexport class AXButtonGroupItemComponent extends MXInteractiveComponent {\n btnGroup = inject(AXButtonGroupComponent);\n\n @Input()\n color: AXStyleColorType = 'default';\n\n /**\n * Text displayed on the button item.\n */\n @Input()\n text: string = '';\n\n /**\n * @ignore\n */\n private _selected: boolean;\n\n readonly customClass = model<string>('', { alias: 'class' });\n\n /**\n * Indicates whether the button item is selected.\n *\n * @param v - A boolean indicating the selected state.\n * Updates the view when the value changes.\n */\n @Input()\n public get selected(): boolean {\n return this._selected;\n }\n public set selected(v: boolean) {\n this._selected = v;\n this.cdr.markForCheck();\n }\n\n /**\n * Whether the item is visually separated from other items.\n * @defaultValue false\n */\n @Input()\n divided = false;\n\n /**\n * Data associated with the button item.\n */\n @Input()\n data: unknown;\n\n /**\n * The name of the button item.\n */\n @Input()\n name: string;\n\n /**\n * Emitted when the button item is clicked.\n * @event\n * The emitted value is an `AXClickEvent` object containing event details.\n */\n @Output()\n onClick: EventEmitter<AXClickEvent> = new EventEmitter<AXClickEvent>();\n\n /**\n * @ignore\n */\n @HostListener('click', ['$event'])\n __hostClick(e: MouseEvent) {\n if (!this.disabled) {\n this.onClick.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e,\n });\n }\n }\n /**\n * @ignore\n */\n @HostListener('focus', ['$event'])\n __hostFocus(e: FocusEvent) {\n this.emitOnFocusEvent(e);\n }\n\n /**\n * @ignore\n */\n @HostListener('blur', ['$event'])\n __hostBlur(e: FocusEvent) {\n this.emitOnBlurEvent(e);\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n const cssClasses = {\n 'ax-button-icon': !this.text,\n 'ax-state-disabled': this.disabled,\n 'ax-state-selected': this.selected,\n 'ax-divided': this.divided,\n };\n return Object.entries(cssClasses)\n .filter((c) => c[1])\n .map((c) => c[0])\n .join(' ');\n }\n\n /**\n * @ignore\n */\n @HostBinding('attr.tabindex') tabindex = '0';\n}\n","import { NgModule } from '@angular/core';\nimport { AXButtonGroupItemComponent } from './button-group-item.component';\nimport { AXButtonGroupComponent } from './button-group.component';\n\n@NgModule({\n imports: [AXButtonGroupComponent, AXButtonGroupItemComponent],\n exports: [AXButtonGroupComponent, AXButtonGroupItemComponent],\n})\nexport class AXButtonGroupModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acorex-components-button-group.mjs","sources":["../../../../packages/components/button-group/src/lib/button-group.component.ts","../../../../packages/components/button-group/src/lib/button-group.component.html","../../../../packages/components/button-group/src/lib/button-group-item.component.ts","../../../../packages/components/button-group/src/lib/button-group.module.ts","../../../../packages/components/button-group/src/acorex-components-button-group.ts"],"sourcesContent":["import {\n AXClickEvent,\n AXComponent,\n AXSelectionMode,\n MXInteractiveComponent,\n type AXStyleColorType,\n type AXStyleLookType,\n} from '@acorex/cdk/common';\nimport {\n Component,\n contentChildren,\n effect,\n EventEmitter,\n HostBinding,\n HostListener,\n input,\n Input,\n output,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXButtonGroupItemComponent } from './button-group-item.component';\n\n/**\n * A component that groups multiple buttons together, allowing for consistent styling and behavior.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-button-group',\n templateUrl: './button-group.component.html',\n styleUrls: ['./button-group.component.css'],\n\n encapsulation: ViewEncapsulation.None,\n inputs: ['disabled'],\n outputs: ['onBlur', 'onFocus', 'disabledChange'],\n providers: [{ provide: AXComponent, useExisting: AXButtonGroupComponent }],\n})\nexport class AXButtonGroupComponent extends MXInteractiveComponent {\n readonly fitParent = input(false);\n\n @Output()\n colorChange: EventEmitter<AXStyleColorType> = new EventEmitter();\n\n private _color: AXStyleColorType = 'default';\n @Input()\n public get color() {\n return this._color;\n }\n public set color(v) {\n this._color = v;\n this.colorChange.emit(v);\n }\n\n @Output()\n lookChange: EventEmitter<AXStyleLookType> = new EventEmitter();\n\n private _look: AXStyleLookType = 'solid';\n @Input()\n public get look() {\n return this._look;\n }\n public set look(v) {\n this._look = v;\n this.lookChange.emit(v);\n }\n\n readonly customClass = input<string>('', { alias: 'class' });\n\n #effect = effect(() => {\n if (this._contentButtons().length) {\n this._bindEvents();\n this._bindProps();\n }\n });\n\n /**\n * Fires when any button in the group is clicked.\n *\n * @event\n */\n @Output()\n onClick: EventEmitter<AXClickEvent> = new EventEmitter<AXClickEvent>();\n\n /**\n * @ignore\n */\n private _contentButtons = contentChildren(AXButtonGroupItemComponent, { descendants: true });\n\n /**\n * Emitted when the selection mode changes.\n *\n * @event\n */\n @Output()\n selectionChange: EventEmitter<AXSelectionMode> = new EventEmitter();\n /**\n * Emits the button item component instance when the selected button changes.\n *\n * @event\n */\n selectedButtonChange = output<AXButtonGroupItemComponent>();\n\n /**\n * @ignore\n */\n private _selection: AXSelectionMode;\n\n /**\n * Defines the selection mode for the component.\n */\n @Input()\n public get selection(): AXSelectionMode {\n return this._selection;\n }\n\n /**\n * Sets the selection mode for the component.\n *\n * @param value - The selection mode to be set. Possible values include 'single', 'multiple', or 'none'.\n */\n public set selection(value: AXSelectionMode) {\n this.setOption({\n name: 'selection',\n value: value,\n afterCallback: (o, n) => {\n if (value == 'none') {\n this.clearSelection();\n }\n },\n });\n }\n\n /**\n * @ignore\n */\n private _bindEvents() {\n this._contentButtons()?.forEach((b: any) => {\n if (!b.onClick.length)\n b.onClick.subscribe((c: any) => {\n this._handleClickEvent(c, b);\n });\n });\n }\n\n /**\n * @ignore\n */\n private _bindProps() {\n this._contentButtons()?.forEach((b: any) => {\n if (this.customClass()) b.customClass.set(this.customClass());\n\n if (b['originDisabled'] == null) {\n b['originDisabled'] = b.disabled;\n }\n if (b['originColor'] == null) {\n b['originColor'] = b.color;\n }\n if (this.look) b.look = this.look;\n // Apply group color only if the item has not explicitly provided a color\n if (this.color) {\n const itemHasExplicitColor = b['originColor'] != null && b['originColor'] !== 'default';\n b.color = itemHasExplicitColor ? b['originColor'] : this.color;\n }\n b.disabled = b['originDisabled'] || this.disabled;\n b.toggleable = false;\n });\n }\n\n /**\n * @ignore\n * Updates component properties based on internal option changes.\n */\n protected override internalOptionChanged() {\n this._bindProps();\n }\n\n /**\n * @ignore\n */\n private _handleClickEvent(e: AXClickEvent, button: AXButtonGroupItemComponent) {\n this.selectedButtonChange.emit(button);\n if (this.selection == 'multiple') {\n button.selected = !button.selected;\n } else if (this.selection == 'single') {\n this.clearSelection();\n button.selected = true;\n } else {\n button.selected = false;\n }\n }\n\n /**\n * @ignore\n */\n private clearSelection() {\n this._contentButtons()?.forEach((c: AXButtonGroupItemComponent) => {\n c.selected = false;\n });\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): { [key: string]: boolean } {\n const cssClasses = {\n 'ax-state-disabled': this.disabled,\n 'ax-parent-fit': this.fitParent(),\n };\n return cssClasses;\n }\n\n /**\n * @ignore\n */\n @HostBinding('attr.role') get role() {\n return 'group';\n }\n\n /**\n * @ignore\n */\n @HostListener('click', ['$event'])\n __hostClick(e: MouseEvent) {\n if (!this.disabled) {\n this.onClick.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e,\n });\n }\n }\n}\n","<ng-container>\n <ng-content select=\"ax-button-group-item\"></ng-content>\n</ng-container>\n","import { AXClickEvent, AXComponent, AXStyleColorType, MXInteractiveComponent } from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport {\n Component,\n EventEmitter,\n HostBinding,\n HostListener,\n inject,\n Input,\n model,\n Output,\n ViewEncapsulation,\n} from '@angular/core';\nimport { AXButtonGroupComponent } from './button-group.component';\n\nexport interface AXButtonItemListItem {\n name: string;\n text: string;\n icon: string;\n divided?: boolean;\n disabled?: boolean;\n color?: AXStyleColorType;\n}\n\n/**\n * Represents a button item with optional content like icons, text, and dropdowns.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-button-group-item',\n template: `\n <ax-button\n [color]=\"color && color !== 'default' ? color : btnGroup.color\"\n [text]=\"text\"\n [class]=\"customClass()\"\n [look]=\"btnGroup.look\"\n [disabled]=\"disabled\"\n [selected]=\"selected\"\n >\n <ng-content></ng-content>\n </ax-button>\n `,\n encapsulation: ViewEncapsulation.None,\n\n inputs: ['disabled'],\n outputs: ['onClick', 'onFocus', 'onBlur', 'disabledChange'],\n imports: [AXButtonComponent],\n providers: [{ provide: AXComponent, useExisting: AXButtonGroupItemComponent }],\n})\nexport class AXButtonGroupItemComponent extends MXInteractiveComponent {\n btnGroup = inject(AXButtonGroupComponent);\n\n @Input()\n color: AXStyleColorType = 'default';\n\n /**\n * Text displayed on the button item.\n */\n @Input()\n text: string = '';\n\n /**\n * @ignore\n */\n private _selected: boolean;\n\n readonly customClass = model<string>('', { alias: 'class' });\n\n /**\n * Indicates whether the button item is selected.\n *\n * @param v - A boolean indicating the selected state.\n * Updates the view when the value changes.\n */\n @Input()\n public get selected(): boolean {\n return this._selected;\n }\n public set selected(v: boolean) {\n this._selected = v;\n this.cdr.markForCheck();\n }\n\n /**\n * Whether the item is visually separated from other items.\n * @defaultValue false\n */\n @Input()\n divided = false;\n\n /**\n * Data associated with the button item.\n */\n @Input()\n data: unknown;\n\n /**\n * The name of the button item.\n */\n @Input()\n name: string;\n\n /**\n * Emitted when the button item is clicked.\n * @event\n * The emitted value is an `AXClickEvent` object containing event details.\n */\n @Output()\n onClick: EventEmitter<AXClickEvent> = new EventEmitter<AXClickEvent>();\n\n /**\n * @ignore\n */\n @HostListener('click', ['$event'])\n __hostClick(e: MouseEvent) {\n if (!this.disabled) {\n this.onClick.emit({\n component: this,\n htmlElement: this.getHostElement(),\n nativeEvent: e,\n });\n }\n }\n /**\n * @ignore\n */\n @HostListener('focus', ['$event'])\n __hostFocus(e: FocusEvent) {\n this.emitOnFocusEvent(e);\n }\n\n /**\n * @ignore\n */\n @HostListener('blur', ['$event'])\n __hostBlur(e: FocusEvent) {\n this.emitOnBlurEvent(e);\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n private get __hostClass(): string {\n const cssClasses = {\n 'ax-button-icon': !this.text,\n 'ax-state-disabled': this.disabled,\n 'ax-state-selected': this.selected,\n 'ax-divided': this.divided,\n };\n return Object.entries(cssClasses)\n .filter((c) => c[1])\n .map((c) => c[0])\n .join(' ');\n }\n\n /**\n * @ignore\n */\n @HostBinding('attr.tabindex') tabindex = '0';\n}\n","import { NgModule } from '@angular/core';\nimport { AXButtonGroupItemComponent } from './button-group-item.component';\nimport { AXButtonGroupComponent } from './button-group.component';\n\n@NgModule({\n imports: [AXButtonGroupComponent, AXButtonGroupItemComponent],\n exports: [AXButtonGroupComponent, AXButtonGroupItemComponent],\n})\nexport class AXButtonGroupModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { MXInteractiveComponent, MXColorComponent, AXComponent, AXClosableCompon
|
|
|
2
2
|
import { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';
|
|
3
3
|
import { AXLoadingComponent } from '@acorex/components/loading';
|
|
4
4
|
import * as i0 from '@angular/core';
|
|
5
|
-
import { EventEmitter, HostBinding, HostListener, Output, Input,
|
|
5
|
+
import { EventEmitter, HostBinding, HostListener, Output, Input, ViewEncapsulation, Component, inject, input, afterNextRender, ContentChildren, computed, contentChild, model, NgModule } from '@angular/core';
|
|
6
6
|
import * as i2 from '@acorex/core/translation';
|
|
7
7
|
import { AXTranslationModule } from '@acorex/core/translation';
|
|
8
8
|
import * as i1 from '@angular/common';
|
|
@@ -105,8 +105,8 @@ class AXButtonItemComponent extends classes(MXInteractiveComponent, MXColorCompo
|
|
|
105
105
|
.map((c) => c[0])
|
|
106
106
|
.join(' ');
|
|
107
107
|
}
|
|
108
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
109
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
108
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
109
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXButtonItemComponent, isStandalone: true, selector: "ax-button-item", inputs: { color: "color", disabled: "disabled", text: "text", selected: "selected", divided: "divided", data: "data", name: "name" }, outputs: { onClick: "onClick", onFocus: "onFocus", onBlur: "onBlur", disabledChange: "disabledChange" }, host: { listeners: { "click": "__hostClick($event)", "focus": "__hostFocus($event)", "blur": "__hostBlur($event)" }, properties: { "class": "this.__hostClass", "attr.tabindex": "this.tabindex" } }, providers: [{ provide: AXComponent, useExisting: AXButtonItemComponent }], usesInheritance: true, ngImport: i0, template: `
|
|
110
110
|
<div class="ax-action-item-prefix">
|
|
111
111
|
<ng-content select="ax-prefix"> </ng-content>
|
|
112
112
|
<ng-content select="ax-loading"> </ng-content>
|
|
@@ -119,9 +119,9 @@ class AXButtonItemComponent extends classes(MXInteractiveComponent, MXColorCompo
|
|
|
119
119
|
<ng-content select="ax-suffix"> </ng-content>
|
|
120
120
|
</div>
|
|
121
121
|
<ng-content select="ax-dropdown-panel"> </ng-content>
|
|
122
|
-
`, isInline: true, styles: ["@layer properties;@layer components{ax-button-item{display:flex;height:calc(var(--spacing, .25rem) * 9);width:100%;cursor:pointer;align-items:center;justify-content:space-between;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5);padding-inline:var(--ax-comp-action-item-padding-inline, .875rem);color:var(--ax-comp-bg, var(--color-on-surface))}ax-button-item.ax-state-disabled{cursor:not-allowed;opacity:50%}ax-button-item.ax-state-selected{background-color:rgba(var(--ax-sys-color-surface))}ax-button-item:hover:not(.ax-state-disabled,.ax-state-selected){background-color:rgba(var(--ax-sys-color-surface))}ax-button-item>div{display:flex;align-items:center;justify-content:center}ax-button-item>div.ax-action-item-prefix,ax-button-item>div.ax-action-item-suffix{gap:calc(var(--spacing, .25rem) * 2)}}@property --tw-leading{syntax: \"*\"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-leading: initial}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.AXTranslatorPipe, name: "translate" }],
|
|
122
|
+
`, isInline: true, styles: ["@layer properties;@layer components{ax-button-item{display:flex;height:calc(var(--spacing, .25rem) * 9);width:100%;cursor:pointer;align-items:center;justify-content:space-between;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5);padding-inline:var(--ax-comp-action-item-padding-inline, .875rem);color:var(--ax-comp-bg, var(--color-on-surface))}ax-button-item.ax-state-disabled{cursor:not-allowed;opacity:50%}ax-button-item.ax-state-selected{background-color:rgba(var(--ax-sys-color-surface))}ax-button-item:hover:not(.ax-state-disabled,.ax-state-selected){background-color:rgba(var(--ax-sys-color-surface))}ax-button-item>div{display:flex;align-items:center;justify-content:center}ax-button-item>div.ax-action-item-prefix,ax-button-item>div.ax-action-item-suffix{gap:calc(var(--spacing, .25rem) * 2)}}@property --tw-leading{syntax: \"*\"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-leading: initial}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "pipe", type: i2.AXTranslatorPipe, name: "translate" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
123
123
|
}
|
|
124
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
124
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonItemComponent, decorators: [{
|
|
125
125
|
type: Component,
|
|
126
126
|
args: [{ selector: 'ax-button-item', template: `
|
|
127
127
|
<div class="ax-action-item-prefix">
|
|
@@ -136,7 +136,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
136
136
|
<ng-content select="ax-suffix"> </ng-content>
|
|
137
137
|
</div>
|
|
138
138
|
<ng-content select="ax-dropdown-panel"> </ng-content>
|
|
139
|
-
`, encapsulation: ViewEncapsulation.None,
|
|
139
|
+
`, encapsulation: ViewEncapsulation.None, inputs: ['color', 'disabled'], outputs: ['onClick', 'onFocus', 'onBlur', 'disabledChange'], imports: [CommonModule, AXDecoratorGenericComponent, AXTranslationModule], providers: [{ provide: AXComponent, useExisting: AXButtonItemComponent }], styles: ["@layer properties;@layer components{ax-button-item{display:flex;height:calc(var(--spacing, .25rem) * 9);width:100%;cursor:pointer;align-items:center;justify-content:space-between;font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5);padding-inline:var(--ax-comp-action-item-padding-inline, .875rem);color:var(--ax-comp-bg, var(--color-on-surface))}ax-button-item.ax-state-disabled{cursor:not-allowed;opacity:50%}ax-button-item.ax-state-selected{background-color:rgba(var(--ax-sys-color-surface))}ax-button-item:hover:not(.ax-state-disabled,.ax-state-selected){background-color:rgba(var(--ax-sys-color-surface))}ax-button-item>div{display:flex;align-items:center;justify-content:center}ax-button-item>div.ax-action-item-prefix,ax-button-item>div.ax-action-item-suffix{gap:calc(var(--spacing, .25rem) * 2)}}@property --tw-leading{syntax: \"*\"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-leading: initial}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"] }]
|
|
140
140
|
}], propDecorators: { text: [{
|
|
141
141
|
type: Input
|
|
142
142
|
}], selected: [{
|
|
@@ -186,20 +186,23 @@ class AXButtonItemListComponent extends MXInteractiveComponent {
|
|
|
186
186
|
*
|
|
187
187
|
* @defaultValue []
|
|
188
188
|
*/
|
|
189
|
-
this.items = input([],
|
|
189
|
+
this.items = input([], /* @ts-ignore */
|
|
190
|
+
...(ngDevMode ? [{ debugName: "items" }] : /* istanbul ignore next */ []));
|
|
190
191
|
/**
|
|
191
192
|
* Determines if the parent closable component should be closed automatically when
|
|
192
193
|
* an item is clicked.
|
|
193
194
|
*
|
|
194
195
|
* @defaultValue true
|
|
195
196
|
*/
|
|
196
|
-
this.closeParentOnClick = input(true,
|
|
197
|
+
this.closeParentOnClick = input(true, /* @ts-ignore */
|
|
198
|
+
...(ngDevMode ? [{ debugName: "closeParentOnClick" }] : /* istanbul ignore next */ []));
|
|
197
199
|
/**
|
|
198
200
|
* Locks interaction for all items when any item is loading.
|
|
199
201
|
*
|
|
200
202
|
* @defaultValue false
|
|
201
203
|
*/
|
|
202
|
-
this.lockOnLoading = input(false,
|
|
204
|
+
this.lockOnLoading = input(false, /* @ts-ignore */
|
|
205
|
+
...(ngDevMode ? [{ debugName: "lockOnLoading" }] : /* istanbul ignore next */ []));
|
|
203
206
|
/**
|
|
204
207
|
* Emits an event when an item is clicked.
|
|
205
208
|
* The event contains details about the clicked item.
|
|
@@ -311,8 +314,8 @@ class AXButtonItemListComponent extends MXInteractiveComponent {
|
|
|
311
314
|
get __hostClass() {
|
|
312
315
|
return `ax-action-list ax-action-list-vertical`;
|
|
313
316
|
}
|
|
314
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
315
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
317
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonItemListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
318
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXButtonItemListComponent, isStandalone: true, selector: "ax-button-item-list", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, closeParentOnClick: { classPropertyName: "closeParentOnClick", publicName: "closeParentOnClick", isSignal: true, isRequired: false, transformFunction: null }, lockOnLoading: { classPropertyName: "lockOnLoading", publicName: "lockOnLoading", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onItemClick: "onItemClick" }, host: { properties: { "class": "this.__hostClass" } }, providers: [{ provide: AXComponent, useExisting: AXButtonItemListComponent }], queries: [{ propertyName: "_contentButtons", predicate: AXButtonItemComponent }], usesInheritance: true, ngImport: i0, template: `
|
|
316
319
|
@for (item of items(); track item.name) {
|
|
317
320
|
<ax-button-item
|
|
318
321
|
[text]="item.text"
|
|
@@ -335,9 +338,9 @@ class AXButtonItemListComponent extends MXInteractiveComponent {
|
|
|
335
338
|
}
|
|
336
339
|
}
|
|
337
340
|
<ng-content></ng-content>
|
|
338
|
-
`, isInline: true, styles: ["@layer components{ax-button-item-list.ax-action-list{padding-block:var(--ax-comp-button-item-list-padding-block, .25rem)}ax-button-item-list .ax-button-item-loading{display:inline-flex;align-items:center;justify-content:center;inline-size:1.5rem;block-size:1.5rem}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "component", type: AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }],
|
|
341
|
+
`, isInline: true, styles: ["@layer components{ax-button-item-list.ax-action-list{padding-block:var(--ax-comp-button-item-list-padding-block, .25rem)}ax-button-item-list .ax-button-item-loading{display:inline-flex;align-items:center;justify-content:center;inline-size:1.5rem;block-size:1.5rem}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "component", type: AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: AXDecoratorGenericComponent, selector: "ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay" }, { kind: "component", type: AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
339
342
|
}
|
|
340
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
343
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonItemListComponent, decorators: [{
|
|
341
344
|
type: Component,
|
|
342
345
|
args: [{ selector: 'ax-button-item-list', template: `
|
|
343
346
|
@for (item of items(); track item.name) {
|
|
@@ -362,7 +365,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
362
365
|
}
|
|
363
366
|
}
|
|
364
367
|
<ng-content></ng-content>
|
|
365
|
-
`,
|
|
368
|
+
`, encapsulation: ViewEncapsulation.None, imports: [AXButtonItemComponent, AXDecoratorGenericComponent, AXDecoratorIconComponent, AXLoadingComponent], providers: [{ provide: AXComponent, useExisting: AXButtonItemListComponent }], styles: ["@layer components{ax-button-item-list.ax-action-list{padding-block:var(--ax-comp-button-item-list-padding-block, .25rem)}ax-button-item-list .ax-button-item-loading{display:inline-flex;align-items:center;justify-content:center;inline-size:1.5rem;block-size:1.5rem}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"] }]
|
|
366
369
|
}], ctorParameters: () => [], propDecorators: { _contentButtons: [{
|
|
367
370
|
type: ContentChildren,
|
|
368
371
|
args: [AXButtonItemComponent]
|
|
@@ -381,12 +384,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
381
384
|
class AXButtonComponent extends MXButtonBaseComponent {
|
|
382
385
|
constructor() {
|
|
383
386
|
super(...arguments);
|
|
384
|
-
this.iconOnly = input(false,
|
|
387
|
+
this.iconOnly = input(false, /* @ts-ignore */
|
|
388
|
+
...(ngDevMode ? [{ debugName: "iconOnly" }] : /* istanbul ignore next */ []));
|
|
385
389
|
this.showIcon = computed(() => {
|
|
386
390
|
return !this.hasLoadingIcon();
|
|
387
|
-
},
|
|
388
|
-
|
|
389
|
-
this.
|
|
391
|
+
}, /* @ts-ignore */
|
|
392
|
+
...(ngDevMode ? [{ debugName: "showIcon" }] : /* istanbul ignore next */ []));
|
|
393
|
+
this.loadingIcon = contentChild(AXLoadingComponent, /* @ts-ignore */
|
|
394
|
+
...(ngDevMode ? [{ debugName: "loadingIcon" }] : /* istanbul ignore next */ []));
|
|
395
|
+
this.hasLoadingIcon = computed(() => this.loadingIcon() != null, /* @ts-ignore */
|
|
396
|
+
...(ngDevMode ? [{ debugName: "hasLoadingIcon" }] : /* istanbul ignore next */ []));
|
|
390
397
|
/**
|
|
391
398
|
* Fires each time the user clicks the button.
|
|
392
399
|
* @event
|
|
@@ -397,13 +404,15 @@ class AXButtonComponent extends MXButtonBaseComponent {
|
|
|
397
404
|
*
|
|
398
405
|
* @defaultValue 'button'
|
|
399
406
|
*/
|
|
400
|
-
this.type = input('button',
|
|
407
|
+
this.type = input('button', /* @ts-ignore */
|
|
408
|
+
...(ngDevMode ? [{ debugName: "type" }] : /* istanbul ignore next */ []));
|
|
401
409
|
/**
|
|
402
410
|
* Defines the text displayed while the action sheet is loading.
|
|
403
411
|
*
|
|
404
412
|
* @defaultValue null
|
|
405
413
|
*/
|
|
406
|
-
this.loadingText = model(null,
|
|
414
|
+
this.loadingText = model(null, /* @ts-ignore */
|
|
415
|
+
...(ngDevMode ? [{ debugName: "loadingText" }] : /* istanbul ignore next */ []));
|
|
407
416
|
}
|
|
408
417
|
/**
|
|
409
418
|
* @ignore
|
|
@@ -470,14 +479,14 @@ class AXButtonComponent extends MXButtonBaseComponent {
|
|
|
470
479
|
blur() {
|
|
471
480
|
this.getButton()?.blur();
|
|
472
481
|
}
|
|
473
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
474
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
482
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
483
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.8", type: AXButtonComponent, isStandalone: true, selector: "ax-button", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: false, isRequired: false, transformFunction: null }, tabIndex: { classPropertyName: "tabIndex", publicName: "tabIndex", isSignal: false, isRequired: false, transformFunction: null }, color: { classPropertyName: "color", publicName: "color", isSignal: false, isRequired: false, transformFunction: null }, look: { classPropertyName: "look", publicName: "look", isSignal: false, isRequired: false, transformFunction: null }, text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: false, transformFunction: null }, toggleable: { classPropertyName: "toggleable", publicName: "toggleable", isSignal: false, isRequired: false, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: false, transformFunction: null }, iconOnly: { classPropertyName: "iconOnly", publicName: "iconOnly", isSignal: true, isRequired: false, transformFunction: null }, type: { classPropertyName: "type", publicName: "type", isSignal: true, isRequired: false, transformFunction: null }, loadingText: { classPropertyName: "loadingText", publicName: "loadingText", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onBlur: "onBlur", onFocus: "onFocus", onClick: "onClick", selectedChange: "selectedChange", toggleableChange: "toggleableChange", lookChange: "lookChange", colorChange: "colorChange", disabledChange: "disabledChange", loadingText: "loadingTextChange" }, host: { properties: { "class": "this.__hostClass" } }, providers: [
|
|
475
484
|
{ provide: AXComponent, useExisting: AXButtonComponent },
|
|
476
485
|
{ provide: AXButtonItemComponent, useExisting: AXButtonComponent },
|
|
477
486
|
{ provide: AXFocusableComponent, useExisting: AXButtonComponent },
|
|
478
|
-
], queries: [{ propertyName: "loadingIcon", first: true, predicate: AXLoadingComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<button\n [axRipple]\n [attr.type]=\"type()\"\n [disabled]=\"disabled\"\n [attr.tabindex]=\"tabIndex\"\n (click)=\"_handleClick($event)\"\n (blur)=\"emitOnBlurEvent($event)\"\n (focus)=\"emitOnFocusEvent($event)\"\n class=\"{{ color }}\n {{ interactiveLook }} \n {{ selected ? 'ax-state-selected' : '' }} \n {{ disabled ? 'ax-state-disabled' : '' }}\"\n>\n <ng-content select=\"ax-loading, ax-loading-spinner\"> </ng-content>\n\n @if (showIcon()) {\n <ng-content select=\"ax-prefix, ax-icon\"> </ng-content>\n }\n\n <ng-content select=\"ax-content\"> </ng-content>\n\n @if (text && !loadingText() && !iconOnly()) {\n <span class=\"ax-button-text\">{{ text | translate | async }}</span>\n }\n\n @if (loadingText()) {\n <span class=\"ax-button-text\">{{ loadingText() }}</span>\n }\n\n <ng-content select=\"ax-suffix\"> </ng-content>\n <ng-content select=\"ax-dropdown-panel\"> </ng-content>\n <ng-content select=\".tab-content\"> </ng-content>\n\n <ng-content></ng-content>\n</button>\n", styles: ["@layer properties;@layer components{ax-button{display:inline-flex;border-radius:var(--ax-sys-border-radius)}ax-button button{position:relative;display:flex;height:var(--ax-sys-size-base);width:100%;cursor:pointer;align-items:center;justify-content:center;gap:calc(var(--spacing, .25rem) * 2);border-radius:inherit;padding-inline:calc(var(--spacing, .25rem) * 4);padding-block:calc(var(--spacing, .25rem) * 2);--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500);-webkit-user-select:none;user-select:none}ax-button button.ax-state-disabled,ax-button button.ax-state-loading{cursor:not-allowed;opacity:50%}ax-button.ax-xs button{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 4);line-height:calc(var(--spacing, .25rem) * 4)}ax-button.ax-sm button{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5)}ax-button button,ax-button.ax-md button{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5)}ax-button.ax-lg button{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5)}ax-button.ax-xl button{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 6);line-height:calc(var(--spacing, .25rem) * 6)}ax-button .ax-button-text{text-wrap:nowrap}ax-button.ax-button-icon.ax-xs button{width:var(--ax-sys-size-base);height:var(--ax-sys-size-base);padding:calc(var(--spacing, .25rem) * 1);font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-button.ax-button-icon.ax-sm button{width:var(--ax-sys-size-base);height:var(--ax-sys-size-base);padding:calc(var(--spacing, .25rem) * 1);font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-button.ax-button-icon button,ax-button.ax-button-icon.ax-md button{width:var(--ax-sys-size-base);height:var(--ax-sys-size-base);padding:calc(var(--spacing, .25rem) * 2);font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-button.ax-button-icon.ax-lg button{width:var(--ax-sys-size-base);height:var(--ax-sys-size-base);padding:calc(var(--spacing, .25rem) * 2);font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-button.ax-button-icon.ax-xl button{width:var(--ax-sys-size-base);height:var(--ax-sys-size-base);padding:calc(var(--spacing, .25rem) * 3);font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-button.ax-button-icon button ax-icon,ax-button.ax-button-icon button ax-prefix,ax-button.ax-button-icon button i{font-size:1.125em}ax-button ax-dropdown-panel{position:absolute}}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@property --tw-leading{syntax: \"*\"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-font-weight: initial;--tw-leading: initial}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "directive", type: AXRippleDirective, selector: "[axRipple]", inputs: ["axRipple", "axRippleColor"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }],
|
|
487
|
+
], queries: [{ propertyName: "loadingIcon", first: true, predicate: AXLoadingComponent, descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<button\n [axRipple]\n [attr.type]=\"type()\"\n [disabled]=\"disabled\"\n [attr.tabindex]=\"tabIndex\"\n (click)=\"_handleClick($event)\"\n (blur)=\"emitOnBlurEvent($event)\"\n (focus)=\"emitOnFocusEvent($event)\"\n class=\"{{ color }}\n {{ interactiveLook }} \n {{ selected ? 'ax-state-selected' : '' }} \n {{ disabled ? 'ax-state-disabled' : '' }}\"\n>\n <ng-content select=\"ax-loading, ax-loading-spinner\"> </ng-content>\n\n @if (showIcon()) {\n <ng-content select=\"ax-prefix, ax-icon\"> </ng-content>\n }\n\n <ng-content select=\"ax-content\"> </ng-content>\n\n @if (text && !loadingText() && !iconOnly()) {\n <span class=\"ax-button-text\">{{ text | translate | async }}</span>\n }\n\n @if (loadingText()) {\n <span class=\"ax-button-text\">{{ loadingText() }}</span>\n }\n\n <ng-content select=\"ax-suffix\"> </ng-content>\n <ng-content select=\"ax-dropdown-panel\"> </ng-content>\n <ng-content select=\".tab-content\"> </ng-content>\n\n <ng-content></ng-content>\n</button>\n", styles: ["@layer properties;@layer components{ax-button{display:inline-flex;border-radius:var(--ax-sys-border-radius)}ax-button button{position:relative;display:flex;height:var(--ax-sys-size-base);width:100%;cursor:pointer;align-items:center;justify-content:center;gap:calc(var(--spacing, .25rem) * 2);border-radius:inherit;padding-inline:calc(var(--spacing, .25rem) * 4);padding-block:calc(var(--spacing, .25rem) * 2);--tw-font-weight: var(--font-weight-medium, 500);font-weight:var(--font-weight-medium, 500);-webkit-user-select:none;user-select:none}ax-button button.ax-state-disabled,ax-button button.ax-state-loading{cursor:not-allowed;opacity:50%}ax-button.ax-xs button{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 4);line-height:calc(var(--spacing, .25rem) * 4)}ax-button.ax-sm button{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5)}ax-button button,ax-button.ax-md button{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5)}ax-button.ax-lg button{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 5);line-height:calc(var(--spacing, .25rem) * 5)}ax-button.ax-xl button{font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)));--tw-leading: calc(var(--spacing, .25rem) * 6);line-height:calc(var(--spacing, .25rem) * 6)}ax-button .ax-button-text{text-wrap:nowrap}ax-button.ax-button-icon.ax-xs button{width:var(--ax-sys-size-base);height:var(--ax-sys-size-base);padding:calc(var(--spacing, .25rem) * 1);font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-button.ax-button-icon.ax-sm button{width:var(--ax-sys-size-base);height:var(--ax-sys-size-base);padding:calc(var(--spacing, .25rem) * 1);font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-button.ax-button-icon button,ax-button.ax-button-icon.ax-md button{width:var(--ax-sys-size-base);height:var(--ax-sys-size-base);padding:calc(var(--spacing, .25rem) * 2);font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-button.ax-button-icon.ax-lg button{width:var(--ax-sys-size-base);height:var(--ax-sys-size-base);padding:calc(var(--spacing, .25rem) * 2);font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-button.ax-button-icon.ax-xl button{width:var(--ax-sys-size-base);height:var(--ax-sys-size-base);padding:calc(var(--spacing, .25rem) * 3);font-size:var(--text-sm, .875rem);line-height:var(--tw-leading, var(--text-sm--line-height, calc(1.25 / .875)))}ax-button.ax-button-icon button ax-icon,ax-button.ax-button-icon button ax-prefix,ax-button.ax-button-icon button i{font-size:1.125em}ax-button ax-dropdown-panel{position:absolute}}@property --tw-font-weight{syntax: \"*\"; inherits: false;}@property --tw-leading{syntax: \"*\"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-font-weight: initial;--tw-leading: initial}}}\n/*! tailwindcss v4.1.16 | MIT License | https://tailwindcss.com */\n"], dependencies: [{ kind: "directive", type: AXRippleDirective, selector: "[axRipple]", inputs: ["axRipple", "axRippleColor"] }, { kind: "ngmodule", type: AXTranslationModule }, { kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i2.AXTranslatorPipe, name: "translate" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
479
488
|
}
|
|
480
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
489
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonComponent, decorators: [{
|
|
481
490
|
type: Component,
|
|
482
491
|
args: [{ selector: 'ax-button', inputs: ['disabled', 'size', 'tabIndex', 'color', 'look', 'text', 'toggleable', 'selected'], outputs: [
|
|
483
492
|
'onBlur',
|
|
@@ -488,7 +497,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
488
497
|
'lookChange',
|
|
489
498
|
'colorChange',
|
|
490
499
|
'disabledChange',
|
|
491
|
-
],
|
|
500
|
+
], encapsulation: ViewEncapsulation.None, providers: [
|
|
492
501
|
{ provide: AXComponent, useExisting: AXButtonComponent },
|
|
493
502
|
{ provide: AXButtonItemComponent, useExisting: AXButtonComponent },
|
|
494
503
|
{ provide: AXFocusableComponent, useExisting: AXButtonComponent },
|
|
@@ -499,11 +508,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImpor
|
|
|
499
508
|
}] } });
|
|
500
509
|
|
|
501
510
|
class AXButtonModule {
|
|
502
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
503
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
504
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
511
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
512
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.8", ngImport: i0, type: AXButtonModule, imports: [AXButtonComponent, AXButtonItemComponent, AXButtonItemListComponent], exports: [AXButtonComponent, AXButtonItemComponent, AXButtonItemListComponent] }); }
|
|
513
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonModule, imports: [AXButtonComponent, AXButtonItemComponent, AXButtonItemListComponent] }); }
|
|
505
514
|
}
|
|
506
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
515
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.8", ngImport: i0, type: AXButtonModule, decorators: [{
|
|
507
516
|
type: NgModule,
|
|
508
517
|
args: [{
|
|
509
518
|
imports: [AXButtonComponent, AXButtonItemComponent, AXButtonItemListComponent],
|