aril 2.0.1-dev.3 → 2.0.1-dev.5
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/boot/bridge/src/mfe-bridge.d.ts +33 -0
- package/boot/config/apps/src/interfaces.d.ts +7 -1
- package/boot/config/apps/src/route-close.service.d.ts +8 -3
- package/boot/config/apps/src/route-permissions.d.ts +2 -2
- package/esm2022/boot/bridge/src/mfe-bridge.mjs +18 -1
- package/esm2022/boot/config/api/src/interfaces.mjs +3 -2
- package/esm2022/boot/config/apps/src/apps.service.mjs +2 -2
- package/esm2022/boot/config/apps/src/custom-route-reuse-strategy.class.mjs +4 -4
- package/esm2022/boot/config/apps/src/interfaces.mjs +2 -1
- package/esm2022/boot/config/apps/src/route-close.service.mjs +11 -4
- package/esm2022/boot/config/apps/src/route-permissions.mjs +24 -6
- package/esm2022/boot/config/plugins/src/plugins.service.mjs +7 -5
- package/esm2022/boot/host/src/bootstrap.mjs +5 -3
- package/esm2022/boot/mfe/src/bootstrap.mjs +15 -3
- package/esm2022/http/index.mjs +1 -2
- package/esm2022/http/src/serviceBase.mjs +4 -4
- package/esm2022/http/src/serviceStateMethods.mjs +9 -1
- package/esm2022/keycloak/src/auth.interceptor.mjs +5 -2
- package/esm2022/selection/aril-selection.mjs +5 -0
- package/esm2022/selection/index.mjs +2 -0
- package/esm2022/selection/src/interfaces.mjs +2 -0
- package/esm2022/selection/src/selection-group.service.mjs +195 -0
- package/esm2022/theme/layout/app/profileSidebar/modals/edit-profile-modal/edit-profile-modal.component.mjs +2 -2
- package/esm2022/theme/layout/index.mjs +4 -2
- package/esm2022/theme/layout/service/breadcrumb-publisher.service.mjs +12 -4
- package/esm2022/theme/layout/service/interfaces/interfaces.mjs +1 -1
- package/esm2022/ui/button/index.mjs +1 -2
- package/esm2022/ui/button/src/button.component.mjs +5 -2
- package/esm2022/ui/charts/index.mjs +1 -11
- package/esm2022/ui/lib/index.mjs +1 -4
- package/esm2022/ui/lib/src/form/form-error-message.directive.mjs +9 -5
- package/esm2022/ui/multiSelect/src/multi-select.component.mjs +25 -25
- package/esm2022/ui/relativeDateSelector/src/relative-date-selector.component.mjs +2 -2
- package/esm2022/ui/selectBox/src/select-box.component.mjs +11 -34
- package/esm2022/ui/table/src/table.component.mjs +10 -5
- package/esm2022/ui/value/src/value.component.mjs +3 -2
- package/esm2022/ui-business/enumPicker/src/enum-picker.component.mjs +14 -6
- package/esm2022/util/activity/aril-util-activity.mjs +5 -0
- package/esm2022/util/activity/index.mjs +4 -0
- package/esm2022/util/activity/src/activity.constants.mjs +4 -0
- package/esm2022/util/activity/src/activity.service.mjs +218 -0
- package/esm2022/util/activity/src/activity.types.mjs +2 -0
- package/esm2022/util/block/src/block.mjs +9 -25
- package/esm2022/util/pub-sub/src/pub-sub.service.mjs +10 -5
- package/fesm2022/{aril-app.component-s14ruALV.mjs → aril-app.component-MjG_tPEe.mjs} +2 -1
- package/fesm2022/{aril-app.component-s14ruALV.mjs.map → aril-app.component-MjG_tPEe.mjs.map} +1 -1
- package/fesm2022/aril-boot-bridge.mjs +17 -0
- package/fesm2022/aril-boot-bridge.mjs.map +1 -1
- package/fesm2022/aril-boot-config-api.mjs +2 -1
- package/fesm2022/aril-boot-config-api.mjs.map +1 -1
- package/fesm2022/aril-boot-config-apps.mjs +36 -12
- package/fesm2022/aril-boot-config-apps.mjs.map +1 -1
- package/fesm2022/aril-boot-config-plugins.mjs +6 -4
- package/fesm2022/aril-boot-config-plugins.mjs.map +1 -1
- package/fesm2022/aril-boot-host.mjs +4 -2
- package/fesm2022/aril-boot-host.mjs.map +1 -1
- package/fesm2022/{aril-boot-mfe-app.component-AS4MzEo2.mjs → aril-boot-mfe-app.component-DtspQ3J8.mjs} +3 -2
- package/fesm2022/{aril-boot-mfe-app.component-AS4MzEo2.mjs.map → aril-boot-mfe-app.component-DtspQ3J8.mjs.map} +1 -1
- package/fesm2022/{aril-boot-mfe-aril-boot-mfe-Ui9Cv3UC.mjs → aril-boot-mfe-aril-boot-mfe-lovoFcgw.mjs} +16 -4
- package/fesm2022/aril-boot-mfe-aril-boot-mfe-lovoFcgw.mjs.map +1 -0
- package/fesm2022/aril-boot-mfe.mjs +2 -1
- package/fesm2022/aril-boot-mfe.mjs.map +1 -1
- package/fesm2022/aril-http.mjs +11 -7
- package/fesm2022/aril-http.mjs.map +1 -1
- package/fesm2022/aril-keycloak.mjs +4 -1
- package/fesm2022/aril-keycloak.mjs.map +1 -1
- package/fesm2022/aril-selection.mjs +202 -0
- package/fesm2022/aril-selection.mjs.map +1 -0
- package/fesm2022/aril-theme-layout.mjs +14 -66
- package/fesm2022/aril-theme-layout.mjs.map +1 -1
- package/fesm2022/aril-ui-business-enumPicker.mjs +14 -6
- package/fesm2022/aril-ui-business-enumPicker.mjs.map +1 -1
- package/fesm2022/aril-ui-button.mjs +5 -17
- package/fesm2022/aril-ui-button.mjs.map +1 -1
- package/fesm2022/aril-ui-charts.mjs +4 -1302
- package/fesm2022/aril-ui-charts.mjs.map +1 -1
- package/fesm2022/aril-ui-lib.mjs +10 -98
- package/fesm2022/aril-ui-lib.mjs.map +1 -1
- package/fesm2022/aril-ui-multiSelect.mjs +24 -24
- package/fesm2022/aril-ui-multiSelect.mjs.map +1 -1
- package/fesm2022/aril-ui-relativeDateSelector.mjs +1 -1
- package/fesm2022/aril-ui-relativeDateSelector.mjs.map +1 -1
- package/fesm2022/aril-ui-selectBox.mjs +10 -33
- package/fesm2022/aril-ui-selectBox.mjs.map +1 -1
- package/fesm2022/aril-ui-table.mjs +9 -4
- package/fesm2022/aril-ui-table.mjs.map +1 -1
- package/fesm2022/aril-ui-value.mjs +2 -1
- package/fesm2022/aril-ui-value.mjs.map +1 -1
- package/fesm2022/aril-util-activity.mjs +228 -0
- package/fesm2022/aril-util-activity.mjs.map +1 -0
- package/fesm2022/aril-util-block.mjs +9 -25
- package/fesm2022/aril-util-block.mjs.map +1 -1
- package/fesm2022/aril-util-pub-sub.mjs +9 -4
- package/fesm2022/aril-util-pub-sub.mjs.map +1 -1
- package/fesm2022/aril.mjs +18 -5
- package/fesm2022/aril.mjs.map +1 -1
- package/http/index.d.ts +0 -1
- package/http/src/serviceStateMethods.d.ts +1 -0
- package/package.json +210 -234
- package/scripts/mf-shared.js +47 -0
- package/selection/index.d.ts +1 -0
- package/selection/src/interfaces.d.ts +8 -0
- package/{theme/layout/service → selection/src}/selection-group.service.d.ts +9 -5
- package/theme/layout/index.d.ts +1 -1
- package/theme/layout/index.ts +3 -1
- package/theme/layout/service/breadcrumb-publisher.service.ts +18 -8
- package/theme/layout/service/interfaces/interfaces.d.ts +3 -17
- package/theme/layout/service/interfaces/interfaces.ts +6 -18
- package/ui/button/index.d.ts +0 -1
- package/ui/button/src/button.component.d.ts +2 -0
- package/ui/charts/index.d.ts +0 -10
- package/ui/lib/index.d.ts +0 -3
- package/ui/lib/src/form/form-error-message.directive.d.ts +4 -3
- package/ui/multiSelect/src/multi-select.component.d.ts +4 -5
- package/ui/selectBox/src/select-box.component.d.ts +2 -7
- package/ui/table/src/table.component.d.ts +3 -2
- package/util/activity/index.d.ts +3 -0
- package/util/activity/src/activity.constants.d.ts +3 -0
- package/util/activity/src/activity.service.d.ts +35 -0
- package/util/activity/src/activity.types.d.ts +13 -0
- package/util/block/src/block.d.ts +4 -10
- package/util/pub-sub/src/pub-sub.service.d.ts +2 -2
- package/esm2022/http/src/serviceMockBase.mjs +0 -4
- package/esm2022/theme/layout/service/selection-group.service.mjs +0 -65
- package/esm2022/ui/button/src/split-button.component.mjs +0 -18
- package/esm2022/ui/charts/src/amCharts/column/column-chart.component.mjs +0 -124
- package/esm2022/ui/charts/src/amCharts/line/line-chart.component.mjs +0 -164
- package/esm2022/ui/charts/src/amCharts/pie/pie-chart.component.mjs +0 -116
- package/esm2022/ui/charts/src/highCharts/area/area-chart.component.mjs +0 -114
- package/esm2022/ui/charts/src/highCharts/bar/bar-chart.component.mjs +0 -100
- package/esm2022/ui/charts/src/highCharts/column/column-chart.component.mjs +0 -117
- package/esm2022/ui/charts/src/highCharts/heatmap/heatMap-chart.component.mjs +0 -252
- package/esm2022/ui/charts/src/highCharts/line/line-chart-series.component.mjs +0 -89
- package/esm2022/ui/charts/src/highCharts/line/line-chart.component.mjs +0 -82
- package/esm2022/ui/charts/src/highCharts/pie/pie-chart.component.mjs +0 -137
- package/esm2022/ui/charts/src/theme/theme.mjs +0 -54
- package/esm2022/ui/dxEditor/aril-ui-dxEditor.mjs +0 -5
- package/esm2022/ui/dxEditor/index.mjs +0 -2
- package/esm2022/ui/dxEditor/src/dx-editor.component.mjs +0 -26
- package/esm2022/ui/lib/src/form/form-field-builder.mjs +0 -23
- package/esm2022/ui/lib/src/input/common-input-validators.service.mjs +0 -49
- package/esm2022/ui/lib/src/input/input-disabled.directive.mjs +0 -25
- package/esm2022/ui/overlayPanel/aril-ui-overlayPanel.mjs +0 -5
- package/esm2022/ui/overlayPanel/index.mjs +0 -2
- package/esm2022/ui/overlayPanel/src/overlay-panel.component.mjs +0 -20
- package/esm2022/ui/tooltip/aril-ui-tooltip.mjs +0 -5
- package/esm2022/ui/tooltip/index.mjs +0 -2
- package/esm2022/ui/tooltip/src/tooltip-component.mjs +0 -23
- package/esm2022/ui/treeTable/aril-ui-treeTable.mjs +0 -5
- package/esm2022/ui/treeTable/index.mjs +0 -2
- package/esm2022/ui/treeTable/src/tree-table.component.mjs +0 -55
- package/esm2022/ui-business/operation-types-dialog/aril-ui-business-operation-types-dialog.mjs +0 -5
- package/esm2022/ui-business/operation-types-dialog/index.mjs +0 -2
- package/esm2022/ui-business/operation-types-dialog/src/operation-types-dialog.component.mjs +0 -76
- package/esm2022/util/unwrap/aril-util-unwrap.mjs +0 -5
- package/esm2022/util/unwrap/index.mjs +0 -2
- package/esm2022/util/unwrap/src/unwrap-tag.directive.mjs +0 -24
- package/fesm2022/aril-boot-mfe-aril-boot-mfe-Ui9Cv3UC.mjs.map +0 -1
- package/fesm2022/aril-ui-business-operation-types-dialog.mjs +0 -83
- package/fesm2022/aril-ui-business-operation-types-dialog.mjs.map +0 -1
- package/fesm2022/aril-ui-dxEditor.mjs +0 -33
- package/fesm2022/aril-ui-dxEditor.mjs.map +0 -1
- package/fesm2022/aril-ui-overlayPanel.mjs +0 -27
- package/fesm2022/aril-ui-overlayPanel.mjs.map +0 -1
- package/fesm2022/aril-ui-tooltip.mjs +0 -30
- package/fesm2022/aril-ui-tooltip.mjs.map +0 -1
- package/fesm2022/aril-ui-treeTable.mjs +0 -62
- package/fesm2022/aril-ui-treeTable.mjs.map +0 -1
- package/fesm2022/aril-util-unwrap.mjs +0 -31
- package/fesm2022/aril-util-unwrap.mjs.map +0 -1
- package/http/src/serviceMockBase.d.ts +0 -6
- package/theme/layout/service/selection-group.service.ts +0 -73
- package/ui/button/src/split-button.component.d.ts +0 -8
- package/ui/charts/src/amCharts/column/column-chart.component.d.ts +0 -25
- package/ui/charts/src/amCharts/line/line-chart.component.d.ts +0 -26
- package/ui/charts/src/amCharts/pie/pie-chart.component.d.ts +0 -24
- package/ui/charts/src/highCharts/area/area-chart.component.d.ts +0 -20
- package/ui/charts/src/highCharts/bar/bar-chart.component.d.ts +0 -26
- package/ui/charts/src/highCharts/column/column-chart.component.d.ts +0 -28
- package/ui/charts/src/highCharts/heatmap/heatMap-chart.component.d.ts +0 -32
- package/ui/charts/src/highCharts/line/line-chart-series.component.d.ts +0 -21
- package/ui/charts/src/highCharts/line/line-chart.component.d.ts +0 -21
- package/ui/charts/src/highCharts/pie/pie-chart.component.d.ts +0 -27
- package/ui/charts/src/theme/theme.d.ts +0 -5
- package/ui/dxEditor/index.d.ts +0 -1
- package/ui/dxEditor/src/dx-editor.component.d.ts +0 -11
- package/ui/lib/src/form/form-field-builder.d.ts +0 -8
- package/ui/lib/src/input/common-input-validators.service.d.ts +0 -20
- package/ui/lib/src/input/input-disabled.directive.d.ts +0 -9
- package/ui/overlayPanel/index.d.ts +0 -1
- package/ui/overlayPanel/src/overlay-panel.component.d.ts +0 -8
- package/ui/tooltip/index.d.ts +0 -1
- package/ui/tooltip/src/tooltip-component.d.ts +0 -14
- package/ui/treeTable/index.d.ts +0 -1
- package/ui/treeTable/src/tree-table.component.d.ts +0 -21
- package/ui-business/operation-types-dialog/index.d.ts +0 -1
- package/ui-business/operation-types-dialog/src/operation-types-dialog.component.d.ts +0 -28
- package/util/unwrap/index.d.ts +0 -1
- package/util/unwrap/src/unwrap-tag.directive.d.ts +0 -9
|
@@ -1,22 +1,23 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
2
|
import { signal, input, EventEmitter, effect, Component, Output } from '@angular/core';
|
|
3
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
3
4
|
import * as i4 from '@angular/forms';
|
|
4
5
|
import { ReactiveFormsModule } from '@angular/forms';
|
|
5
6
|
import * as i6 from 'primeng/multiselect';
|
|
6
7
|
import { MultiSelectModule } from 'primeng/multiselect';
|
|
8
|
+
import * as i8 from 'primeng/tooltip';
|
|
9
|
+
import { TooltipModule } from 'primeng/tooltip';
|
|
7
10
|
import * as i2 from '@ngneat/transloco';
|
|
8
11
|
import { TranslocoModule } from '@ngneat/transloco';
|
|
9
12
|
import * as i5 from 'devextreme-angular/ui/select-box';
|
|
10
13
|
import { DxSelectBoxModule } from 'devextreme-angular/ui/select-box';
|
|
11
|
-
import { firstValueFrom } from 'rxjs';
|
|
12
|
-
import DataSource from 'devextreme/data/data_source';
|
|
13
14
|
import ArrayStore from 'devextreme/data/array_store';
|
|
15
|
+
import DataSource from 'devextreme/data/data_source';
|
|
16
|
+
import { firstValueFrom } from 'rxjs';
|
|
14
17
|
import { API_CONFIGS } from 'aril/boot/config/api';
|
|
15
18
|
import { Apps } from 'aril/boot/config/apps';
|
|
16
19
|
import * as i3 from 'aril/ui/lib';
|
|
17
20
|
import { BaseInputComponent, InputErrorMessagePipe, DXInputErrorMessagePipe, ValueAccessorDirective } from 'aril/ui/lib';
|
|
18
|
-
import * as i8 from 'primeng/tooltip';
|
|
19
|
-
import { TooltipModule } from 'primeng/tooltip';
|
|
20
21
|
import * as i1 from '@angular/common/http';
|
|
21
22
|
import * as i7 from 'primeng/api';
|
|
22
23
|
|
|
@@ -75,7 +76,7 @@ class EnumPickerComponent extends BaseInputComponent {
|
|
|
75
76
|
this.updateSelectionItemsText();
|
|
76
77
|
}
|
|
77
78
|
});
|
|
78
|
-
this.translocoService.langChanges$.subscribe(() => {
|
|
79
|
+
this.translocoService.langChanges$.pipe(takeUntilDestroyed()).subscribe(() => {
|
|
79
80
|
if (this.selectionItems() && this.selectionItems()?.length > 0) {
|
|
80
81
|
this.updateSelectionItemsText();
|
|
81
82
|
}
|
|
@@ -188,7 +189,14 @@ class EnumPickerComponent extends BaseInputComponent {
|
|
|
188
189
|
}
|
|
189
190
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: EnumPickerComponent, decorators: [{
|
|
190
191
|
type: Component,
|
|
191
|
-
args: [{ standalone: true, selector: 'enum-picker[ngModel], enum-picker[formControl], enum-picker[formControlName]', imports: [
|
|
192
|
+
args: [{ standalone: true, selector: 'enum-picker[ngModel], enum-picker[formControl], enum-picker[formControlName]', imports: [
|
|
193
|
+
ReactiveFormsModule,
|
|
194
|
+
DxSelectBoxModule,
|
|
195
|
+
DXInputErrorMessagePipe,
|
|
196
|
+
TranslocoModule,
|
|
197
|
+
MultiSelectModule,
|
|
198
|
+
TooltipModule
|
|
199
|
+
], providers: [InputErrorMessagePipe], hostDirectives: [ValueAccessorDirective], template: "@if (isMultiple()) {\r\n\t<p-multiSelect\r\n\t\t[options]=\"selectionItems() || items() || []\"\r\n\t\t[optionValue]=\"itemKey()\"\r\n\t\t[optionLabel]=\"itemText()\"\r\n\t\t[defaultLabel]=\"placeholder()\"\r\n\t\t[selectedItemsLabel]=\"selectedItemsLabel()\"\r\n\t\t[style]=\"style()\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t[tooltip]=\"tooltip()\"\r\n\t\t[tooltipPosition]=\"tooltipPosition()\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t\t[maxSelectedLabels]=\"2\"\r\n\t\t[appendTo]=\"appendTo()\"\r\n\t\t[virtualScroll]=\"useVirtualScroll()\"\r\n\t\t[virtualScrollItemSize]=\"virtualScrollItemSize()\"\r\n\t\t[scrollHeight]=\"scrollHeight()\"\r\n\t\t[filter]=\"true\"\r\n\t\t[panelStyle]=\"{ 'max-width': '400px', 'min-width': 'auto' }\">\r\n\t\t<ng-template let-enum pTemplate=\"item\">\r\n\t\t\t<div [pTooltip]=\"enum[itemText()]?.length > textClampCharacters() ? enum[itemText()] : ''\">\r\n\t\t\t\t@if (enum[itemText()]?.length > textClampCharacters()) {\r\n\t\t\t\t\t{{ enum[itemText()].slice(0, textClampCharacters()) }}...\r\n\t\t\t\t} @else {\r\n\t\t\t\t\t{{ enum[itemText()] }}\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\t</p-multiSelect>\r\n} @else {\r\n\t<dx-select-box\r\n [dataSource]=\"useVirtualScroll() ? selectBoxDataSource() : (selectionItems() || items() || [])\"\r\n\t\t[valueExpr]=\"itemKey()\"\r\n\t\t[displayExpr]=\"itemText()\"\r\n\t\t[searchEnabled]=\"true\"\r\n\t\t[searchExpr]=\"searchExpr()\"\r\n\t\t[tabIndex]=\"tabindex()\"\r\n\t\t[grouped]=\"grouped()\"\r\n\t\t[placeholder]=\"placeholder()\"\r\n\t\t[showClearButton]=\"showClearButton()\"\r\n\t\t[acceptCustomValue]=\"acceptCustomValue()\"\r\n\t\t(onCustomItemCreating)=\"onCustomItemCreating($event)\"\r\n\t\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\t\tvalidationMessagePosition=\"top\"\r\n\t\t[noDataText]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem);setTitle($event.selectedItem)\"\r\n [inputAttr]=\"{ 'title': selectedItemText }\">\r\n\t</dx-select-box>\r\n}\r\n" }]
|
|
192
200
|
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i2.TranslocoService }], propDecorators: { onSelectionChanged: [{
|
|
193
201
|
type: Output
|
|
194
202
|
}] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril-ui-business-enumPicker.mjs","sources":["../../projects/aril/ui-business/enumPicker/src/enum-picker.component.ts","../../projects/aril/ui-business/enumPicker/src/enum-picker.component.html","../../projects/aril/ui-business/enumPicker/aril-ui-business-enumPicker.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Output, effect, input, signal } from '@angular/core';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\n\r\nimport { TranslocoModule, TranslocoService } from '@ngneat/transloco';\r\nimport { DxSelectBoxModule } from 'devextreme-angular/ui/select-box';\r\nimport { firstValueFrom } from 'rxjs';\r\n\r\nimport DataSource from 'devextreme/data/data_source';\r\nimport ArrayStore from 'devextreme/data/array_store';\r\n\r\nimport { API_CONFIGS } from 'aril/boot/config/api';\r\nimport { Apps } from 'aril/boot/config/apps';\r\nimport {\r\n\tBaseInputComponent,\r\n\tDXInputErrorMessagePipe,\r\n\tInputErrorMessagePipe,\r\n\tValueAccessorDirective\r\n} from 'aril/ui/lib';\r\n\r\nimport { SelectBoxItem, SelectionGroupDTO, SelectionItem, SelectionRequestDTO } from './interface';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\tselector: 'enum-picker[ngModel], enum-picker[formControl], enum-picker[formControlName]',\r\n\ttemplateUrl: './enum-picker.component.html',\r\n\timports: [ReactiveFormsModule, DxSelectBoxModule, DXInputErrorMessagePipe, TranslocoModule, MultiSelectModule, TooltipModule],\r\n\tproviders: [InputErrorMessagePipe],\r\n\thostDirectives: [ValueAccessorDirective]\r\n})\r\nexport class EnumPickerComponent extends BaseInputComponent {\r\n\tselectionItems = signal<SelectBoxItem[] | null>(null);\r\n\tselectBoxDataSource = signal<DataSource | null>(null);\r\n\tprivate originalSelectionItems: SelectionItem[] = [];\r\n\t/**\r\n\t * Single Select States\r\n\t */\r\n\r\n\titemKey = input('key');\r\n\titemText = input('text');\r\n\tgroupName = input('');\r\n\tparentSelectionKey = input(null);\r\n\ttabindex = input<number>(0);\r\n\titems = input<SelectBoxItem[]>();\r\n\tisMultiple = input<boolean>(false);\r\n\t// Cross-validation RemoveItem action ile set edilir; verilen selectionKey'leri item listesinden filtreler.\r\n\texcludedKeys = input<string[]>([]);\r\n\tselectedItemText = '';\r\n\t/** * @description when grouped = true, option item structure { key:string, items:[] } */\r\n\tgrouped = input(false);\r\n\tshowClearButton = input<boolean>(true);\r\n\tplaceholder = input<string>('');\r\n\tsearchExpr = input<string | string[]>('');\r\n\tacceptCustomValue = input<boolean>(false);\r\n\ttextClampCharacters = input<number>(40);\r\n\r\n\t/**\r\n\t * Virtual Scroll States\r\n\t */\r\n\tuseVirtualScroll = input<boolean>(false);\r\n\tvirtualScrollItemSize = input<number>(30);\r\n\tscrollHeight = input<string>('300px');\r\n\r\n\t/**\r\n\t * Multi Select States\r\n\t */\r\n\r\n\tselectedItemsLabel = input<string>('{0} değer seçildi'); // default value -> ({0} items selected\r\n\tappendTo = input<string>('body');\r\n\tstyle = input<object>({});\r\n\tstyleClass = input<string>('');\r\n\ttooltip = input<string>('');\r\n\ttooltipPosition = input<any>('top');\r\n\r\n\t@Output() onSelectionChanged = new EventEmitter<SelectBoxItem>();\r\n\r\n\tconstructor(\r\n\t\tprivate readonly http: HttpClient,\r\n\t\tpublic translocoService: TranslocoService\r\n\t) {\r\n\t\tsuper();\r\n\t\teffect(() => {\r\n\t\t\tif (this.groupName() || this.parentSelectionKey()) this.getSelectionItems();\r\n\t\t});\r\n\r\n\t\t// excludedKeys değişince item listesini yeniden filtrele (originalSelectionItems korunur)\r\n\t\teffect(() => {\r\n\t\t\tthis.excludedKeys();\r\n\t\t\tif (this.originalSelectionItems.length > 0) {\r\n\t\t\t\tthis.updateSelectionItemsText();\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.translocoService.langChanges$.subscribe(() => {\r\n\t\t\tif (this.selectionItems() && (this.selectionItems() as SelectBoxItem[])?.length > 0) {\r\n\t\t\t\tthis.updateSelectionItemsText();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tsetTitle(event?: any) {\r\n\t\tif (event && event[this.itemText()].length > 25) {\r\n\t\t\tthis.selectedItemText = event ? event[this.itemText()] : '';\r\n\t\t}\r\n\t\tthis.onSelectionChanged.emit(event);\r\n\t}\r\n\r\n\tasync getSelectionItems() {\r\n\t\tconst payload: Partial<SelectionRequestDTO> = {\r\n\t\t\tgroupName: this.groupName()\r\n\t\t};\r\n\r\n\t\tif (Array.isArray(this.parentSelectionKey())) {\r\n\t\t\tpayload.parentSelectionKeys = this.parentSelectionKey();\r\n\t\t} else {\r\n\t\t\tpayload.parentSelectionKey = this.parentSelectionKey();\r\n\t\t}\r\n\r\n\t\tconst hostApi = API_CONFIGS.getExternalAppEndpoint(Apps.MNG);\r\n\r\n\t\ttry {\r\n\t\t\tconst selectionGroup = await firstValueFrom(\r\n\t\t\t\tthis.http.post<SelectionGroupDTO>(hostApi + '/selection-group/load', payload)\r\n\t\t\t);\r\n\r\n\t\t\tthis.originalSelectionItems = selectionGroup?.selectionItems || [];\r\n\t\t} catch (error) {\r\n\t\t\tthis.originalSelectionItems = [];\r\n\t\t}\r\n\t\tthis.updateSelectionItemsText();\r\n\t}\r\n\r\n\tprivate updateSelectionItemsText() {\r\n\t\tif (!this.originalSelectionItems || this.originalSelectionItems.length === 0) {\r\n\t\t\tthis.selectionItems.set(null);\r\n\t\t\tthis.selectBoxDataSource.set(null);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst currentLang = this.translocoService.getActiveLang();\r\n\r\n\t\tthis.selectionItems.set(null);\r\n\r\n\t\tconst excluded = new Set(this.excludedKeys() || []);\r\n\t\tconst mappedItems = this.originalSelectionItems\r\n\t\t\t.filter((item: SelectionItem) => !excluded.has(item.selectionKey))\r\n\t\t\t.map((item: SelectionItem) => ({\r\n\t\t\t\tkey: item.selectionKey,\r\n\t\t\t\ttext:\r\n\t\t\t\t\titem?.selectionMultiLanguageDisplays?.[currentLang] ?\r\n\t\t\t\t\t\titem.selectionMultiLanguageDisplays[currentLang]\r\n\t\t\t\t\t:\titem.selectionDisplay,\r\n\t\t\t\tparentSelectionKey: item.parentSelectionKey\r\n\t\t\t}));\r\n\r\n\t\tthis.selectionItems.set(mappedItems);\r\n\t\tthis.rebuildSelectBoxDataSource(mappedItems);\r\n\t\tthis.filterCurrentValueBySelectionItems();\r\n\t}\r\n\r\n\t// Parent enum (multiple) değiştiğinde veya excludedKeys aktifken\r\n\t// form'daki geçersiz key'leri temizler (selectionItems zaten filtrelenmiş haliyle gelir).\r\n\tfilterCurrentValueBySelectionItems(): void {\r\n\t\tconst hasExcluded = (this.excludedKeys() || []).length > 0;\r\n\t\tif (!this.parentSelectionKey() && !hasExcluded) return;\r\n\t\tconst currentValue = this.ngControl.control?.value;\r\n\t\tconst validKeys = new Set(\r\n\t\t\t(this.selectionItems() || []).map((item: any) => item[this.itemKey()])\r\n\t\t);\r\n\r\n\t\tif (this.isMultiple()) {\r\n\t\t\t// Child multi-select: geçersiz key'leri filtrele, geçerlileri bırak\r\n\t\t\tif (!Array.isArray(currentValue) || currentValue.length === 0) return;\r\n\t\t\tconst filtered = (currentValue as string[]).filter((key) => validKeys.has(key));\r\n\t\t\tif (filtered.length !== currentValue.length) {\r\n\t\t\t\tthis.ngControl.control?.setValue(filtered, { emitEvent: true });\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tif (!currentValue) return;\r\n\t\t\t\r\n\t\t\tif (!validKeys.has(currentValue)) {\r\n\t\t\t\tthis.ngControl.control?.reset(null, { emitEvent: true });\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tonCustomItemCreating(event: any) {\r\n\t\tif (!event.text) {\r\n\t\t\tevent.customItem = null;\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst newItem = {\r\n\t\t\t[this.itemKey()]: event.text,\r\n\t\t\t[this.itemText()]: event.text\r\n\t\t};\r\n\t\tconst currentItems = this.selectionItems() || [];\r\n\t\tconst updatedItems = [...currentItems, newItem];\r\n\t\tthis.selectionItems.set(updatedItems);\r\n\t\tthis.rebuildSelectBoxDataSource(updatedItems);\r\n\t\tevent.customItem = newItem;\r\n\t}\r\n\r\n\t\tprivate rebuildSelectBoxDataSource(items: SelectBoxItem[]): void {\r\n\t\tif (!this.useVirtualScroll()) {\r\n\t\t\tthis.selectBoxDataSource.set(null);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.selectBoxDataSource.set(\r\n\t\t\tnew DataSource({\r\n\t\t\t\tstore: new ArrayStore({\r\n\t\t\t\t\tdata: items,\r\n\t\t\t\t\tkey: this.itemKey()\r\n\t\t\t\t}),\r\n\t\t\t\tpaginate: true,\r\n\t\t\t\tpageSize: 50\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n}\r\n","@if (isMultiple()) {\r\n\t<p-multiSelect\r\n\t\t[options]=\"selectionItems() || items() || []\"\r\n\t\t[optionValue]=\"itemKey()\"\r\n\t\t[optionLabel]=\"itemText()\"\r\n\t\t[defaultLabel]=\"placeholder()\"\r\n\t\t[selectedItemsLabel]=\"selectedItemsLabel()\"\r\n\t\t[style]=\"style()\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t[tooltip]=\"tooltip()\"\r\n\t\t[tooltipPosition]=\"tooltipPosition()\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t\t[maxSelectedLabels]=\"2\"\r\n\t\t[appendTo]=\"appendTo()\"\r\n\t\t[virtualScroll]=\"useVirtualScroll()\"\r\n\t\t[virtualScrollItemSize]=\"virtualScrollItemSize()\"\r\n\t\t[scrollHeight]=\"scrollHeight()\"\r\n\t\t[filter]=\"true\"\r\n\t\t[panelStyle]=\"{ 'max-width': '400px', 'min-width': 'auto' }\">\r\n\t\t<ng-template let-enum pTemplate=\"item\">\r\n\t\t\t<div [pTooltip]=\"enum[itemText()]?.length > textClampCharacters() ? enum[itemText()] : ''\">\r\n\t\t\t\t@if (enum[itemText()]?.length > textClampCharacters()) {\r\n\t\t\t\t\t{{ enum[itemText()].slice(0, textClampCharacters()) }}...\r\n\t\t\t\t} @else {\r\n\t\t\t\t\t{{ enum[itemText()] }}\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\t</p-multiSelect>\r\n} @else {\r\n\t<dx-select-box\r\n [dataSource]=\"useVirtualScroll() ? selectBoxDataSource() : (selectionItems() || items() || [])\"\r\n\t\t[valueExpr]=\"itemKey()\"\r\n\t\t[displayExpr]=\"itemText()\"\r\n\t\t[searchEnabled]=\"true\"\r\n\t\t[searchExpr]=\"searchExpr()\"\r\n\t\t[tabIndex]=\"tabindex()\"\r\n\t\t[grouped]=\"grouped()\"\r\n\t\t[placeholder]=\"placeholder()\"\r\n\t\t[showClearButton]=\"showClearButton()\"\r\n\t\t[acceptCustomValue]=\"acceptCustomValue()\"\r\n\t\t(onCustomItemCreating)=\"onCustomItemCreating($event)\"\r\n\t\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\t\tvalidationMessagePosition=\"top\"\r\n\t\t[noDataText]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem);setTitle($event.selectedItem)\"\r\n [inputAttr]=\"{ 'title': selectedItemText }\">\r\n\t</dx-select-box>\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAiCM,MAAO,mBAAoB,SAAQ,kBAAkB,CAAA;IA8C1D,WACkB,CAAA,IAAgB,EAC1B,gBAAkC,EAAA;AAEzC,QAAA,KAAK,EAAE,CAAC;QAHS,IAAI,CAAA,IAAA,GAAJ,IAAI,CAAY;QAC1B,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;AA/C1C,QAAA,IAAA,CAAA,cAAc,GAAG,MAAM,CAAyB,IAAI,CAAC,CAAC;AACtD,QAAA,IAAA,CAAA,mBAAmB,GAAG,MAAM,CAAoB,IAAI,CAAC,CAAC;QAC9C,IAAsB,CAAA,sBAAA,GAAoB,EAAE,CAAC;AACrD;;AAEG;AAEH,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AACvB,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;AACzB,QAAA,IAAA,CAAA,SAAS,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;AACtB,QAAA,IAAA,CAAA,kBAAkB,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;AACjC,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAS,CAAC,CAAC,CAAC;QAC5B,IAAK,CAAA,KAAA,GAAG,KAAK,EAAmB,CAAC;AACjC,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAU,KAAK,CAAC,CAAC;;AAEnC,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAW,EAAE,CAAC,CAAC;QACnC,IAAgB,CAAA,gBAAA,GAAG,EAAE,CAAC;;AAEtB,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;AACvB,QAAA,IAAA,CAAA,eAAe,GAAG,KAAK,CAAU,IAAI,CAAC,CAAC;AACvC,QAAA,IAAA,CAAA,WAAW,GAAG,KAAK,CAAS,EAAE,CAAC,CAAC;AAChC,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAoB,EAAE,CAAC,CAAC;AAC1C,QAAA,IAAA,CAAA,iBAAiB,GAAG,KAAK,CAAU,KAAK,CAAC,CAAC;AAC1C,QAAA,IAAA,CAAA,mBAAmB,GAAG,KAAK,CAAS,EAAE,CAAC,CAAC;AAExC;;AAEG;AACH,QAAA,IAAA,CAAA,gBAAgB,GAAG,KAAK,CAAU,KAAK,CAAC,CAAC;AACzC,QAAA,IAAA,CAAA,qBAAqB,GAAG,KAAK,CAAS,EAAE,CAAC,CAAC;AAC1C,QAAA,IAAA,CAAA,YAAY,GAAG,KAAK,CAAS,OAAO,CAAC,CAAC;AAEtC;;AAEG;AAEH,QAAA,IAAA,CAAA,kBAAkB,GAAG,KAAK,CAAS,oBAAoB,CAAC,CAAC;AACzD,QAAA,IAAA,CAAA,QAAQ,GAAG,KAAK,CAAS,MAAM,CAAC,CAAC;AACjC,QAAA,IAAA,CAAA,KAAK,GAAG,KAAK,CAAS,EAAE,CAAC,CAAC;AAC1B,QAAA,IAAA,CAAA,UAAU,GAAG,KAAK,CAAS,EAAE,CAAC,CAAC;AAC/B,QAAA,IAAA,CAAA,OAAO,GAAG,KAAK,CAAS,EAAE,CAAC,CAAC;AAC5B,QAAA,IAAA,CAAA,eAAe,GAAG,KAAK,CAAM,KAAK,CAAC,CAAC;AAE1B,QAAA,IAAA,CAAA,kBAAkB,GAAG,IAAI,YAAY,EAAiB,CAAC;QAOhE,MAAM,CAAC,MAAK;YACX,IAAI,IAAI,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC;AAC7E,SAAC,CAAC,CAAC;;QAGH,MAAM,CAAC,MAAK;YACX,IAAI,CAAC,YAAY,EAAE,CAAC;YACpB,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3C,IAAI,CAAC,wBAAwB,EAAE,CAAC;aAChC;AACF,SAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gBAAgB,CAAC,YAAY,CAAC,SAAS,CAAC,MAAK;AACjD,YAAA,IAAI,IAAI,CAAC,cAAc,EAAE,IAAK,IAAI,CAAC,cAAc,EAAsB,EAAE,MAAM,GAAG,CAAC,EAAE;gBACpF,IAAI,CAAC,wBAAwB,EAAE,CAAC;aAChC;AACF,SAAC,CAAC,CAAC;KACH;AAED,IAAA,QAAQ,CAAC,KAAW,EAAA;AACnB,QAAA,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,GAAG,EAAE,EAAE;AAChD,YAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,CAAC;SAC5D;AACD,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACpC;AAED,IAAA,MAAM,iBAAiB,GAAA;AACtB,QAAA,MAAM,OAAO,GAAiC;AAC7C,YAAA,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE;SAC3B,CAAC;QAEF,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,EAAE;AAC7C,YAAA,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;SACxD;aAAM;AACN,YAAA,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;SACvD;QAED,MAAM,OAAO,GAAG,WAAW,CAAC,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE7D,QAAA,IAAI;AACH,YAAA,MAAM,cAAc,GAAG,MAAM,cAAc,CAC1C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAoB,OAAO,GAAG,uBAAuB,EAAE,OAAO,CAAC,CAC7E,CAAC;YAEF,IAAI,CAAC,sBAAsB,GAAG,cAAc,EAAE,cAAc,IAAI,EAAE,CAAC;SACnE;QAAC,OAAO,KAAK,EAAE;AACf,YAAA,IAAI,CAAC,sBAAsB,GAAG,EAAE,CAAC;SACjC;QACD,IAAI,CAAC,wBAAwB,EAAE,CAAC;KAChC;IAEO,wBAAwB,GAAA;AAC/B,QAAA,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,KAAK,CAAC,EAAE;AAC7E,YAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC9B,YAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnC,OAAO;SACP;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC;AAE1D,QAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAE9B,QAAA,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;AACpD,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB;AAC7C,aAAA,MAAM,CAAC,CAAC,IAAmB,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AACjE,aAAA,GAAG,CAAC,CAAC,IAAmB,MAAM;YAC9B,GAAG,EAAE,IAAI,CAAC,YAAY;YACtB,IAAI,EACH,IAAI,EAAE,8BAA8B,GAAG,WAAW,CAAC;AAClD,gBAAA,IAAI,CAAC,8BAA8B,CAAC,WAAW,CAAC;kBAC/C,IAAI,CAAC,gBAAgB;YACxB,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;AAC3C,SAAA,CAAC,CAAC,CAAC;AAEL,QAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;AACrC,QAAA,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,CAAC,kCAAkC,EAAE,CAAC;KAC1C;;;IAID,kCAAkC,GAAA;AACjC,QAAA,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,EAAE,EAAE,MAAM,GAAG,CAAC,CAAC;AAC3D,QAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,WAAW;YAAE,OAAO;QACvD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC;AACnD,QAAA,MAAM,SAAS,GAAG,IAAI,GAAG,CACxB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,IAAS,KAAK,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CACtE,CAAC;AAEF,QAAA,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;;AAEtB,YAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;AACtE,YAAA,MAAM,QAAQ,GAAI,YAAyB,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAChF,IAAI,QAAQ,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,EAAE;AAC5C,gBAAA,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;aAChE;SACD;aAAM;AACN,YAAA,IAAI,CAAC,YAAY;gBAAE,OAAO;YAE1B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;AACjC,gBAAA,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;aACzD;SACD;KACD;AAED,IAAA,oBAAoB,CAAC,KAAU,EAAA;AAC9B,QAAA,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;AAChB,YAAA,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;YACxB,OAAO;SACP;AACD,QAAA,MAAM,OAAO,GAAG;YACf,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI;YAC5B,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,KAAK,CAAC,IAAI;SAC7B,CAAC;QACF,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;QACjD,MAAM,YAAY,GAAG,CAAC,GAAG,YAAY,EAAE,OAAO,CAAC,CAAC;AAChD,QAAA,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AACtC,QAAA,IAAI,CAAC,0BAA0B,CAAC,YAAY,CAAC,CAAC;AAC9C,QAAA,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC;KAC3B;AAEQ,IAAA,0BAA0B,CAAC,KAAsB,EAAA;AACzD,QAAA,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE;AAC7B,YAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACnC,OAAO;SACP;AACD,QAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAC3B,IAAI,UAAU,CAAC;YACd,KAAK,EAAE,IAAI,UAAU,CAAC;AACrB,gBAAA,IAAI,EAAE,KAAK;AACX,gBAAA,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE;aACnB,CAAC;AACF,YAAA,QAAQ,EAAE,IAAI;AACd,YAAA,QAAQ,EAAE,EAAE;AACZ,SAAA,CAAC,CACF,CAAC;KACF;8GA1LW,mBAAmB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;AAAnB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,mBAAmB,i1GAHpB,CAAC,qBAAqB,CAAC,EAAA,eAAA,EAAA,IAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EC9BnC,82EAqDA,EDxBW,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,mBAAmB,EAAE,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,eAAA,EAAA,QAAA,EAAA,2CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,oBAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,UAAA,EAAA,SAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAiB,4qFAAE,uBAAuB,EAAA,IAAA,EAAA,qBAAA,EAAA,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAE,eAAe,EAAE,EAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,iBAAiB,27CAAE,aAAa,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,cAAA,EAAA,UAAA,EAAA,eAAA,EAAA,mBAAA,EAAA,eAAA,EAAA,QAAA,EAAA,WAAA,EAAA,WAAA,EAAA,MAAA,EAAA,aAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,iBAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAIhH,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAR/B,SAAS;iCACG,IAAI,EAAA,QAAA,EACN,8EAA8E,EAE/E,OAAA,EAAA,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,uBAAuB,EAAE,eAAe,EAAE,iBAAiB,EAAE,aAAa,CAAC,EAClH,SAAA,EAAA,CAAC,qBAAqB,CAAC,EAAA,cAAA,EAClB,CAAC,sBAAsB,CAAC,EAAA,QAAA,EAAA,82EAAA,EAAA,CAAA;8GA8C9B,kBAAkB,EAAA,CAAA;sBAA3B,MAAM;;;AE7ER;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"aril-ui-business-enumPicker.mjs","sources":["../../projects/aril/ui-business/enumPicker/src/enum-picker.component.ts","../../projects/aril/ui-business/enumPicker/src/enum-picker.component.html","../../projects/aril/ui-business/enumPicker/aril-ui-business-enumPicker.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\r\nimport { Component, EventEmitter, Output, effect, input, signal } from '@angular/core';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { MultiSelectModule } from 'primeng/multiselect';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\n\r\nimport { TranslocoModule, TranslocoService } from '@ngneat/transloco';\r\nimport { DxSelectBoxModule } from 'devextreme-angular/ui/select-box';\r\nimport ArrayStore from 'devextreme/data/array_store';\r\nimport DataSource from 'devextreme/data/data_source';\r\nimport { firstValueFrom } from 'rxjs';\r\n\r\nimport { API_CONFIGS } from 'aril/boot/config/api';\r\nimport { Apps } from 'aril/boot/config/apps';\r\nimport {\r\n\tBaseInputComponent,\r\n\tDXInputErrorMessagePipe,\r\n\tInputErrorMessagePipe,\r\n\tValueAccessorDirective\r\n} from 'aril/ui/lib';\r\n\r\nimport { SelectBoxItem, SelectionGroupDTO, SelectionItem, SelectionRequestDTO } from './interface';\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\tselector: 'enum-picker[ngModel], enum-picker[formControl], enum-picker[formControlName]',\r\n\ttemplateUrl: './enum-picker.component.html',\r\n\timports: [\r\n\t\tReactiveFormsModule,\r\n\t\tDxSelectBoxModule,\r\n\t\tDXInputErrorMessagePipe,\r\n\t\tTranslocoModule,\r\n\t\tMultiSelectModule,\r\n\t\tTooltipModule\r\n\t],\r\n\tproviders: [InputErrorMessagePipe],\r\n\thostDirectives: [ValueAccessorDirective]\r\n})\r\nexport class EnumPickerComponent extends BaseInputComponent {\r\n\tselectionItems = signal<SelectBoxItem[] | null>(null);\r\n\tselectBoxDataSource = signal<DataSource | null>(null);\r\n\tprivate originalSelectionItems: SelectionItem[] = [];\r\n\t/**\r\n\t * Single Select States\r\n\t */\r\n\r\n\titemKey = input('key');\r\n\titemText = input('text');\r\n\tgroupName = input('');\r\n\tparentSelectionKey = input(null);\r\n\ttabindex = input<number>(0);\r\n\titems = input<SelectBoxItem[]>();\r\n\tisMultiple = input<boolean>(false);\r\n\t// Cross-validation RemoveItem action ile set edilir; verilen selectionKey'leri item listesinden filtreler.\r\n\texcludedKeys = input<string[]>([]);\r\n\tselectedItemText = '';\r\n\t/** * @description when grouped = true, option item structure { key:string, items:[] } */\r\n\tgrouped = input(false);\r\n\tshowClearButton = input<boolean>(true);\r\n\tplaceholder = input<string>('');\r\n\tsearchExpr = input<string | string[]>('');\r\n\tacceptCustomValue = input<boolean>(false);\r\n\ttextClampCharacters = input<number>(40);\r\n\r\n\t/**\r\n\t * Virtual Scroll States\r\n\t */\r\n\tuseVirtualScroll = input<boolean>(false);\r\n\tvirtualScrollItemSize = input<number>(30);\r\n\tscrollHeight = input<string>('300px');\r\n\r\n\t/**\r\n\t * Multi Select States\r\n\t */\r\n\r\n\tselectedItemsLabel = input<string>('{0} değer seçildi'); // default value -> ({0} items selected\r\n\tappendTo = input<string>('body');\r\n\tstyle = input<object>({});\r\n\tstyleClass = input<string>('');\r\n\ttooltip = input<string>('');\r\n\ttooltipPosition = input<any>('top');\r\n\r\n\t@Output() onSelectionChanged = new EventEmitter<SelectBoxItem>();\r\n\r\n\tconstructor(\r\n\t\tprivate readonly http: HttpClient,\r\n\t\tpublic translocoService: TranslocoService\r\n\t) {\r\n\t\tsuper();\r\n\t\teffect(() => {\r\n\t\t\tif (this.groupName() || this.parentSelectionKey()) this.getSelectionItems();\r\n\t\t});\r\n\r\n\t\t// excludedKeys değişince item listesini yeniden filtrele (originalSelectionItems korunur)\r\n\t\teffect(() => {\r\n\t\t\tthis.excludedKeys();\r\n\t\t\tif (this.originalSelectionItems.length > 0) {\r\n\t\t\t\tthis.updateSelectionItemsText();\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tthis.translocoService.langChanges$.pipe(takeUntilDestroyed()).subscribe(() => {\r\n\t\t\tif (this.selectionItems() && (this.selectionItems() as SelectBoxItem[])?.length > 0) {\r\n\t\t\t\tthis.updateSelectionItemsText();\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tsetTitle(event?: any) {\r\n\t\tif (event && event[this.itemText()].length > 25) {\r\n\t\t\tthis.selectedItemText = event ? event[this.itemText()] : '';\r\n\t\t}\r\n\t\tthis.onSelectionChanged.emit(event);\r\n\t}\r\n\r\n\tasync getSelectionItems() {\r\n\t\tconst payload: Partial<SelectionRequestDTO> = {\r\n\t\t\tgroupName: this.groupName()\r\n\t\t};\r\n\r\n\t\tif (Array.isArray(this.parentSelectionKey())) {\r\n\t\t\tpayload.parentSelectionKeys = this.parentSelectionKey();\r\n\t\t} else {\r\n\t\t\tpayload.parentSelectionKey = this.parentSelectionKey();\r\n\t\t}\r\n\r\n\t\tconst hostApi = API_CONFIGS.getExternalAppEndpoint(Apps.MNG);\r\n\r\n\t\ttry {\r\n\t\t\tconst selectionGroup = await firstValueFrom(\r\n\t\t\t\tthis.http.post<SelectionGroupDTO>(hostApi + '/selection-group/load', payload)\r\n\t\t\t);\r\n\r\n\t\t\tthis.originalSelectionItems = selectionGroup?.selectionItems || [];\r\n\t\t} catch (error) {\r\n\t\t\tthis.originalSelectionItems = [];\r\n\t\t}\r\n\t\tthis.updateSelectionItemsText();\r\n\t}\r\n\r\n\tprivate updateSelectionItemsText() {\r\n\t\tif (!this.originalSelectionItems || this.originalSelectionItems.length === 0) {\r\n\t\t\tthis.selectionItems.set(null);\r\n\t\t\tthis.selectBoxDataSource.set(null);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst currentLang = this.translocoService.getActiveLang();\r\n\r\n\t\tthis.selectionItems.set(null);\r\n\r\n\t\tconst excluded = new Set(this.excludedKeys() || []);\r\n\t\tconst mappedItems = this.originalSelectionItems\r\n\t\t\t.filter((item: SelectionItem) => !excluded.has(item.selectionKey))\r\n\t\t\t.map((item: SelectionItem) => ({\r\n\t\t\t\tkey: item.selectionKey,\r\n\t\t\t\ttext:\r\n\t\t\t\t\titem?.selectionMultiLanguageDisplays?.[currentLang] ?\r\n\t\t\t\t\t\titem.selectionMultiLanguageDisplays[currentLang]\r\n\t\t\t\t\t:\titem.selectionDisplay,\r\n\t\t\t\tparentSelectionKey: item.parentSelectionKey\r\n\t\t\t}));\r\n\r\n\t\tthis.selectionItems.set(mappedItems);\r\n\t\tthis.rebuildSelectBoxDataSource(mappedItems);\r\n\t\tthis.filterCurrentValueBySelectionItems();\r\n\t}\r\n\r\n\t// Parent enum (multiple) değiştiğinde veya excludedKeys aktifken\r\n\t// form'daki geçersiz key'leri temizler (selectionItems zaten filtrelenmiş haliyle gelir).\r\n\tfilterCurrentValueBySelectionItems(): void {\r\n\t\tconst hasExcluded = (this.excludedKeys() || []).length > 0;\r\n\t\tif (!this.parentSelectionKey() && !hasExcluded) return;\r\n\t\tconst currentValue = this.ngControl.control?.value;\r\n\t\tconst validKeys = new Set((this.selectionItems() || []).map((item: any) => item[this.itemKey()]));\r\n\r\n\t\tif (this.isMultiple()) {\r\n\t\t\t// Child multi-select: geçersiz key'leri filtrele, geçerlileri bırak\r\n\t\t\tif (!Array.isArray(currentValue) || currentValue.length === 0) return;\r\n\t\t\tconst filtered = (currentValue as string[]).filter((key) => validKeys.has(key));\r\n\t\t\tif (filtered.length !== currentValue.length) {\r\n\t\t\t\tthis.ngControl.control?.setValue(filtered, { emitEvent: true });\r\n\t\t\t}\r\n\t\t} else {\r\n\t\t\tif (!currentValue) return;\r\n\r\n\t\t\tif (!validKeys.has(currentValue)) {\r\n\t\t\t\tthis.ngControl.control?.reset(null, { emitEvent: true });\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tonCustomItemCreating(event: any) {\r\n\t\tif (!event.text) {\r\n\t\t\tevent.customItem = null;\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tconst newItem = {\r\n\t\t\t[this.itemKey()]: event.text,\r\n\t\t\t[this.itemText()]: event.text\r\n\t\t};\r\n\t\tconst currentItems = this.selectionItems() || [];\r\n\t\tconst updatedItems = [...currentItems, newItem];\r\n\t\tthis.selectionItems.set(updatedItems);\r\n\t\tthis.rebuildSelectBoxDataSource(updatedItems);\r\n\t\tevent.customItem = newItem;\r\n\t}\r\n\r\n\tprivate rebuildSelectBoxDataSource(items: SelectBoxItem[]): void {\r\n\t\tif (!this.useVirtualScroll()) {\r\n\t\t\tthis.selectBoxDataSource.set(null);\r\n\t\t\treturn;\r\n\t\t}\r\n\t\tthis.selectBoxDataSource.set(\r\n\t\t\tnew DataSource({\r\n\t\t\t\tstore: new ArrayStore({\r\n\t\t\t\t\tdata: items,\r\n\t\t\t\t\tkey: this.itemKey()\r\n\t\t\t\t}),\r\n\t\t\t\tpaginate: true,\r\n\t\t\t\tpageSize: 50\r\n\t\t\t})\r\n\t\t);\r\n\t}\r\n}\r\n","@if (isMultiple()) {\r\n\t<p-multiSelect\r\n\t\t[options]=\"selectionItems() || items() || []\"\r\n\t\t[optionValue]=\"itemKey()\"\r\n\t\t[optionLabel]=\"itemText()\"\r\n\t\t[defaultLabel]=\"placeholder()\"\r\n\t\t[selectedItemsLabel]=\"selectedItemsLabel()\"\r\n\t\t[style]=\"style()\"\r\n\t\t[styleClass]=\"styleClass()\"\r\n\t\t[tooltip]=\"tooltip()\"\r\n\t\t[tooltipPosition]=\"tooltipPosition()\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n\t\t[maxSelectedLabels]=\"2\"\r\n\t\t[appendTo]=\"appendTo()\"\r\n\t\t[virtualScroll]=\"useVirtualScroll()\"\r\n\t\t[virtualScrollItemSize]=\"virtualScrollItemSize()\"\r\n\t\t[scrollHeight]=\"scrollHeight()\"\r\n\t\t[filter]=\"true\"\r\n\t\t[panelStyle]=\"{ 'max-width': '400px', 'min-width': 'auto' }\">\r\n\t\t<ng-template let-enum pTemplate=\"item\">\r\n\t\t\t<div [pTooltip]=\"enum[itemText()]?.length > textClampCharacters() ? enum[itemText()] : ''\">\r\n\t\t\t\t@if (enum[itemText()]?.length > textClampCharacters()) {\r\n\t\t\t\t\t{{ enum[itemText()].slice(0, textClampCharacters()) }}...\r\n\t\t\t\t} @else {\r\n\t\t\t\t\t{{ enum[itemText()] }}\r\n\t\t\t\t}\r\n\t\t\t</div>\r\n\t\t</ng-template>\r\n\t</p-multiSelect>\r\n} @else {\r\n\t<dx-select-box\r\n [dataSource]=\"useVirtualScroll() ? selectBoxDataSource() : (selectionItems() || items() || [])\"\r\n\t\t[valueExpr]=\"itemKey()\"\r\n\t\t[displayExpr]=\"itemText()\"\r\n\t\t[searchEnabled]=\"true\"\r\n\t\t[searchExpr]=\"searchExpr()\"\r\n\t\t[tabIndex]=\"tabindex()\"\r\n\t\t[grouped]=\"grouped()\"\r\n\t\t[placeholder]=\"placeholder()\"\r\n\t\t[showClearButton]=\"showClearButton()\"\r\n\t\t[acceptCustomValue]=\"acceptCustomValue()\"\r\n\t\t(onCustomItemCreating)=\"onCustomItemCreating($event)\"\r\n\t\t[isValid]=\"ngControl?.control?.valid || ngControl?.control?.pristine || ngControl?.control?.disabled || false\"\r\n\t\t[validationError]=\"ngControl?.control?.errors | dxInputErrorMessage: ngControl?.control\"\r\n\t\tvalidationMessagePosition=\"top\"\r\n\t\t[noDataText]=\"translocoService.translate('messages.noDataToDisplay')\"\r\n\t\t[formControl]=\"ngControl.control\"\r\n\t\t(ngModelChange)=\"ngControl.viewToModelUpdate($event)\"\r\n (onSelectionChanged)=\"onSelectionChanged.emit($event.selectedItem);setTitle($event.selectedItem)\"\r\n [inputAttr]=\"{ 'title': selectedItemText }\">\r\n\t</dx-select-box>\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { input, EventEmitter, computed, Component, ChangeDetectionStrategy, Output } from '@angular/core';
|
|
2
|
+
import { input, EventEmitter, inject, computed, Component, ChangeDetectionStrategy, Output } from '@angular/core';
|
|
3
3
|
import * as i1 from 'primeng/button';
|
|
4
4
|
import { ButtonModule } from 'primeng/button';
|
|
5
5
|
import { iconTransform } from 'aril/ui/lib';
|
|
6
|
-
import
|
|
7
|
-
import { SplitButtonModule } from 'primeng/splitbutton';
|
|
6
|
+
import { ActivityService } from 'aril/util/activity';
|
|
8
7
|
|
|
9
8
|
class ButtonComponent {
|
|
10
9
|
constructor() {
|
|
@@ -21,6 +20,7 @@ class ButtonComponent {
|
|
|
21
20
|
this.iconPos = input('left');
|
|
22
21
|
this.color = input.required();
|
|
23
22
|
this.clickEvent = new EventEmitter();
|
|
23
|
+
this.activity = inject(ActivityService);
|
|
24
24
|
this._icon = computed(() => iconTransform(this.icon()));
|
|
25
25
|
this._color = computed(() => `p-button-${this.color()}`);
|
|
26
26
|
this._styleClass = computed(() => {
|
|
@@ -29,6 +29,7 @@ class ButtonComponent {
|
|
|
29
29
|
}
|
|
30
30
|
clickEvnt(e) {
|
|
31
31
|
e.stopPropagation();
|
|
32
|
+
this.activity.track(this.label() ?? '', {}, 'BUTTON_CLICK');
|
|
32
33
|
this.clickEvent.emit(e);
|
|
33
34
|
}
|
|
34
35
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
@@ -41,22 +42,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
|
|
|
41
42
|
type: Output
|
|
42
43
|
}] } });
|
|
43
44
|
|
|
44
|
-
class SplitButtonComponent extends ButtonComponent {
|
|
45
|
-
constructor() {
|
|
46
|
-
super(...arguments);
|
|
47
|
-
this.menu = input.required();
|
|
48
|
-
}
|
|
49
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SplitButtonComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
50
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.1.2", type: SplitButtonComponent, isStandalone: true, selector: "aril-split-button", inputs: { menu: { classPropertyName: "menu", publicName: "menu", isSignal: true, isRequired: true, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: "<p-splitButton [label]=\"label()\" [icon]=\"_icon()\" [styleClass]=\"_styleClass()\" [model]=\"menu()\" [disabled]=\"disabled()\">\r\n</p-splitButton>\r\n", dependencies: [{ kind: "ngmodule", type: SplitButtonModule }, { kind: "component", type: i1$1.SplitButton, selector: "p-splitButton", inputs: ["model", "severity", "raised", "rounded", "text", "outlined", "size", "plain", "icon", "iconPos", "label", "tooltip", "tooltipOptions", "style", "styleClass", "menuStyle", "menuStyleClass", "appendTo", "dir", "expandAriaLabel", "showTransitionOptions", "hideTransitionOptions", "buttonProps", "menuButtonProps", "autofocus", "disabled", "tabindex", "menuButtonDisabled", "buttonDisabled"], outputs: ["onClick", "onMenuHide", "onMenuShow", "onDropdownClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
51
|
-
}
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: SplitButtonComponent, decorators: [{
|
|
53
|
-
type: Component,
|
|
54
|
-
args: [{ standalone: true, selector: 'aril-split-button', imports: [SplitButtonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: "<p-splitButton [label]=\"label()\" [icon]=\"_icon()\" [styleClass]=\"_styleClass()\" [model]=\"menu()\" [disabled]=\"disabled()\">\r\n</p-splitButton>\r\n" }]
|
|
55
|
-
}] });
|
|
56
|
-
|
|
57
45
|
/**
|
|
58
46
|
* Generated bundle index. Do not edit.
|
|
59
47
|
*/
|
|
60
48
|
|
|
61
|
-
export { ButtonComponent
|
|
49
|
+
export { ButtonComponent };
|
|
62
50
|
//# sourceMappingURL=aril-ui-button.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aril-ui-button.mjs","sources":["../../projects/aril/ui/button/src/button.component.ts","../../projects/aril/ui/button/src/button.component.html","../../projects/aril/ui/button/
|
|
1
|
+
{"version":3,"file":"aril-ui-button.mjs","sources":["../../projects/aril/ui/button/src/button.component.ts","../../projects/aril/ui/button/src/button.component.html","../../projects/aril/ui/button/aril-ui-button.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Output, computed, inject, input } from '@angular/core';\r\n\r\nimport { ButtonModule } from 'primeng/button';\r\n\r\nimport { PrimeIcon, iconTransform } from 'aril/ui/lib';\r\nimport { ActivityService } from 'aril/util/activity';\r\n\r\ntype Size = 'sm' | 'md' | 'lg';\r\ntype Colors = 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'help' | 'danger';\r\ntype ButtonIconPosition = 'left' | 'right' | 'top' | 'bottom';\r\n\r\n@Component({\r\n\tstandalone: true,\r\n\tselector: 'aril-button:not([click])',\r\n\ttemplateUrl: './button.component.html',\r\n\thost: { id: Math.random().toString(36).substring(2) },\r\n\timports: [ButtonModule],\r\n\tchangeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class ButtonComponent {\r\n\tlabel = input<string>();\r\n\tloading = input<boolean>(false);\r\n\tdisabled = input<boolean>(false);\r\n\traised = input<boolean>(true);\r\n\trounded = input<boolean>(false);\r\n\ttext = input<boolean>(false);\r\n\toutlined = input<boolean>(false);\r\n\tbadge = input<string>();\r\n\tsize = input<Size>('sm');\r\n\ticon = input<PrimeIcon>();\r\n\ticonPos = input<ButtonIconPosition>('left');\r\n\tcolor = input.required<Colors>();\r\n\r\n\t@Output() clickEvent: EventEmitter<Event> = new EventEmitter<Event>();\r\n\r\n\tprotected readonly activity = inject(ActivityService);\r\n\r\n\t_icon = computed(() => iconTransform(this.icon()!));\r\n\r\n\t_color = computed(() => `p-button-${this.color()}`);\r\n\r\n\t_styleClass = computed(() => {\r\n\t\treturn `${this.raised() ? `p-button-raised` : ''} ${this.outlined() ? `p-button-outlined` : ''} ${this.size() ? `p-button-${this.size()}` : ''} ${this._color()}`;\r\n\t});\r\n\r\n\tclickEvnt(e: Event) {\r\n\t\te.stopPropagation();\r\n\t\tthis.activity.track(this.label() ?? '', {}, 'BUTTON_CLICK');\r\n\t\tthis.clickEvent.emit(e);\r\n\t}\r\n}\r\n","<p-button\r\n\t[label]=\"label()\"\r\n\t[badge]=\"badge()\"\r\n\t[icon]=\"_icon()\"\r\n\t[text]=\"text()\"\r\n\t[rounded]=\"rounded()\"\r\n\t[iconPos]=\"iconPos()\"\r\n\t[disabled]=\"disabled()\"\r\n\t[styleClass]=\"_styleClass()\"\r\n\t[loading]=\"loading()\"\r\n\t(onClick)=\"clickEvnt($event)\">\r\n</p-button>\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|