@seniorsistemas/angular-components 17.27.1-feature-sds-110-66a603a1 → 17.27.1-feature-sds-110-8be5f7f5
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/dynamic-form/lib/dynamic-form/components/lookup/lookup.component.d.ts +2 -1
- package/dynamic-form/lib/dynamic-form/form-field/configurations/fields/lookup-field.d.ts +2 -0
- package/fesm2022/seniorsistemas-angular-components-accordion.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-accordion.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-button.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-chips.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-chips.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs +20 -15
- package/fesm2022/seniorsistemas-angular-components-dynamic-form.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-fieldset.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-fieldset.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-gantt.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-gantt.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-info-sign.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-info-sign.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-inline-edit.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-navigation-button.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-object-card.mjs +3 -3
- package/fesm2022/seniorsistemas-angular-components-object-card.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-shared.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-shared.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-slider.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-slider.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-stats-card.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-stats-card.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-steps.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-steps.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-structure.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-structure.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-table.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-table.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tabs.mjs +91 -0
- package/fesm2022/seniorsistemas-angular-components-tabs.mjs.map +1 -0
- package/fesm2022/seniorsistemas-angular-components-template.mjs +8 -11
- package/fesm2022/seniorsistemas-angular-components-template.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tile.mjs +1 -1
- package/fesm2022/seniorsistemas-angular-components-tile.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-timeline.mjs +2 -2
- package/fesm2022/seniorsistemas-angular-components-timeline.mjs.map +1 -1
- package/fesm2022/seniorsistemas-angular-components-tooltip.mjs +16 -6
- package/fesm2022/seniorsistemas-angular-components-tooltip.mjs.map +1 -1
- package/fieldset/lib/fieldset/fieldset.component.d.ts +1 -1
- package/package.json +14 -7
- package/tabs/index.d.ts +5 -0
- package/tabs/lib/tab-item/tab-item.component.d.ts +18 -0
- package/tabs/lib/tabs/tabs.component.d.ts +16 -0
- package/tabs/package.json +3 -0
- package/tabs/public-api.d.ts +2 -0
- package/tailwind.css +102 -28
- package/template/lib/template/template.directive.d.ts +2 -3
- package/template/lib/template/template.module.d.ts +3 -3
- package/tooltip/lib/tooltip/tooltip.directive.d.ts +4 -2
- package/tooltip/lib/tooltip/tooltip.module.d.ts +3 -3
|
@@ -57,6 +57,7 @@ export declare class LookupComponent implements ControlValueAccessor, OnChanges,
|
|
|
57
57
|
onAdd: EventEmitter<any>;
|
|
58
58
|
onEdit: EventEmitter<unknown>;
|
|
59
59
|
onRemove: EventEmitter<unknown[]>;
|
|
60
|
+
onClearButtonClick: EventEmitter<void>;
|
|
60
61
|
table: Table | null;
|
|
61
62
|
autocomplete: AutoComplete | null;
|
|
62
63
|
labelOptions?: Partial<LabelOptions>;
|
|
@@ -147,7 +148,7 @@ export declare class LookupComponent implements ControlValueAccessor, OnChanges,
|
|
|
147
148
|
private _setFocusFilter;
|
|
148
149
|
private _subscribeEvents;
|
|
149
150
|
static ɵfac: i0.ɵɵFactoryDeclaration<LookupComponent, never>;
|
|
150
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<LookupComponent, "s-lookup", never, { "formControlName": { "alias": "formControlName"; "required": false; }; "id": { "alias": "id"; "required": false; }; "autocompleteForceSelection": { "alias": "autocompleteForceSelection"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "dataKey": { "alias": "dataKey"; "required": true; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "showSearch": { "alias": "showSearch"; "required": false; }; "lookupSuggestions": { "alias": "lookupSuggestions"; "required": false; }; "lookupDisplayField": { "alias": "lookupDisplayField"; "required": false; }; "lookupDisplayFieldTooltip": { "alias": "lookupDisplayFieldTooltip"; "required": false; }; "lookupEmptyMessage": { "alias": "lookupEmptyMessage"; "required": false; }; "lookupAppendTo": { "alias": "lookupAppendTo"; "required": false; }; "searchEmptyDescription": { "alias": "searchEmptyDescription"; "required": false; }; "searchGridData": { "alias": "searchGridData"; "required": false; }; "searchTotalRecords": { "alias": "searchTotalRecords"; "required": false; }; "searchFields": { "alias": "searchFields"; "required": false; }; "searchGridFields": { "alias": "searchGridFields"; "required": false; }; "multiSortMeta": { "alias": "multiSortMeta"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "sortableColumnsDisabled": { "alias": "sortableColumnsDisabled"; "required": false; }; "lookupRowProps": { "alias": "lookupRowProps"; "required": false; }; "defaultFilter": { "alias": "defaultFilter"; "required": false; }; "showAddOption": { "alias": "showAddOption"; "required": false; }; "showEditOption": { "alias": "showEditOption"; "required": false; }; "showRemoveOption": { "alias": "showRemoveOption"; "required": false; }; "labelOptions": { "alias": "labelOptions"; "required": false; }; }, { "onLookupRequest": "onLookupRequest"; "onSearchRequest": "onSearchRequest"; "onFocus": "onFocus"; "onBlur": "onBlur"; "onKeyUp": "onKeyUp"; "onSelect": "onSelect"; "onUnselect": "onUnselect"; "onClear": "onClear"; "onAdd": "onAdd"; "onEdit": "onEdit"; "onRemove": "onRemove"; }, never, never, false, never>;
|
|
151
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<LookupComponent, "s-lookup", never, { "formControlName": { "alias": "formControlName"; "required": false; }; "id": { "alias": "id"; "required": false; }; "autocompleteForceSelection": { "alias": "autocompleteForceSelection"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "dataKey": { "alias": "dataKey"; "required": true; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "showSearch": { "alias": "showSearch"; "required": false; }; "lookupSuggestions": { "alias": "lookupSuggestions"; "required": false; }; "lookupDisplayField": { "alias": "lookupDisplayField"; "required": false; }; "lookupDisplayFieldTooltip": { "alias": "lookupDisplayFieldTooltip"; "required": false; }; "lookupEmptyMessage": { "alias": "lookupEmptyMessage"; "required": false; }; "lookupAppendTo": { "alias": "lookupAppendTo"; "required": false; }; "searchEmptyDescription": { "alias": "searchEmptyDescription"; "required": false; }; "searchGridData": { "alias": "searchGridData"; "required": false; }; "searchTotalRecords": { "alias": "searchTotalRecords"; "required": false; }; "searchFields": { "alias": "searchFields"; "required": false; }; "searchGridFields": { "alias": "searchGridFields"; "required": false; }; "multiSortMeta": { "alias": "multiSortMeta"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "sortableColumnsDisabled": { "alias": "sortableColumnsDisabled"; "required": false; }; "lookupRowProps": { "alias": "lookupRowProps"; "required": false; }; "defaultFilter": { "alias": "defaultFilter"; "required": false; }; "showAddOption": { "alias": "showAddOption"; "required": false; }; "showEditOption": { "alias": "showEditOption"; "required": false; }; "showRemoveOption": { "alias": "showRemoveOption"; "required": false; }; "labelOptions": { "alias": "labelOptions"; "required": false; }; }, { "onLookupRequest": "onLookupRequest"; "onSearchRequest": "onSearchRequest"; "onFocus": "onFocus"; "onBlur": "onBlur"; "onKeyUp": "onKeyUp"; "onSelect": "onSelect"; "onUnselect": "onUnselect"; "onClear": "onClear"; "onAdd": "onAdd"; "onEdit": "onEdit"; "onRemove": "onRemove"; "onClearButtonClick": "onClearButtonClick"; }, never, never, false, never>;
|
|
151
152
|
}
|
|
152
153
|
export interface BooleanOptionsLabelConfig {
|
|
153
154
|
true: string;
|
|
@@ -39,6 +39,7 @@ export interface LookupFieldConfig extends FieldConfig {
|
|
|
39
39
|
onAdd?: () => void;
|
|
40
40
|
onEdit?: (selectedItem: unknown) => void;
|
|
41
41
|
onRemove?: (selectedItems: unknown[]) => void;
|
|
42
|
+
onClearButtonClick?: () => void;
|
|
42
43
|
}
|
|
43
44
|
export declare class LookupField extends Field implements LookupFieldConfig {
|
|
44
45
|
multiple: boolean;
|
|
@@ -79,6 +80,7 @@ export declare class LookupField extends Field implements LookupFieldConfig {
|
|
|
79
80
|
onAdd?: () => void;
|
|
80
81
|
onEdit?: (selectedItem: unknown) => void;
|
|
81
82
|
onRemove?: (selectedItems: unknown[]) => void;
|
|
83
|
+
onClearButtonClick?: () => void;
|
|
82
84
|
private _gridData;
|
|
83
85
|
private _searchTotalRecords;
|
|
84
86
|
private _searchTotalRecordsLabel;
|
|
@@ -81,7 +81,7 @@ class AccordionPanelComponent {
|
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AccordionPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AccordionPanelComponent, selector: "s-accordion-panel", inputs: { header: "header", buttons: "buttons", disabled: "disabled", switchControl: "switchControl", validationMessage: "validationMessage", cache: "cache", validationMessageIcon: "validationMessageIcon", validationMessageIconColor: "validationMessageIconColor" }, outputs: { panelOpened: "panelOpened", panelClosed: "panelClosed" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"accordion-panel\"\n [class.accordion-panel--open]=\"isOpen\"\n [class.accordion-panel--disabled]=\"disabled\"\n>\n <div\n class=\"header\"\n (click)=\"onTabClick()\"\n >\n <div class=\"header__title\">\n <span\n class=\"icon fas\"\n [class.fa-minus]=\"isOpen\"\n [class.fa-plus]=\"!isOpen\"\n >\n </span>\n @if (validationMessage) {\n <span\n class=\"exclamation-icon\"\n [class]=\"validationMessageIcon\"\n [sTooltip]=\"validationMessage\"\n [class.exclamation-icon-red]=\"validationMessageIconColor === 'Red'\"\n [class.exclamation-icon-orange]=\"validationMessageIconColor === 'Orange'\"\n [class.exclamation-icon-yellow]=\"validationMessageIconColor === 'Yellow'\"\n [class.exclamation-icon-green]=\"validationMessageIconColor === 'Green'\"\n [class.exclamation-icon-blue]=\"validationMessageIconColor === 'Blue'\"\n >\n </span>\n }\n <span class=\"title\">{{ header }}</span>\n </div>\n <div class=\"header__controls\">\n @for (button of buttons; track button.icon) {\n <button\n class=\"icon-button\"\n [ngClass]=\"button.icon\"\n (click)=\"onIconButtonsClick($event, button.onClick)\"\n ></button>\n }\n\n @if (switchControl) {\n <s-switch\n class=\"switch\"\n [formControl]=\"switchControl\"\n (click)=\"$event.stopPropagation()\"\n >\n </s-switch>\n }\n </div>\n </div>\n\n @if (cache) {\n <div\n class=\"content\"\n [@cacheAnimation]=\"isOpen\"\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cacheAnimation.start)=\"onContentAnimationStart()\"\n (@cacheAnimation.done)=\"onContentAnimationDone()\"\n >\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n } @else {\n @if (isOpen) {\n <div\n class=\"content\"\n @cachelessAnimation\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cachelessAnimation.start)=\"onContentAnimationStart()\"\n (@cachelessAnimation.done)=\"onContentAnimationDone()\"\n >\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n }\n }\n</div>\n\n<ng-template #panelContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: [".accordion-panel{border-bottom:1px solid #c1c1cc}.accordion-panel .header{align-items:center;background-color:#fff;cursor:pointer;display:flex;justify-content:space-between;padding:16px;-webkit-user-select:none;user-select:none}.accordion-panel .header .header__title{align-items:center;display:flex;flex-wrap:nowrap}.accordion-panel .header .header__title .icon{color:#212533;font-size:1rem;margin-right:12px}.accordion-panel .header .header__title .exclamation-icon{font-size:1rem;margin-right:12px}.accordion-panel .header .header__title .exclamation-icon-red{color:#c13018}.accordion-panel .header .header__title .exclamation-icon-orange{color:#f8931f}.accordion-panel .header .header__title .exclamation-icon-yellow{color:#fcbf10}.accordion-panel .header .header__title .exclamation-icon-green{color:#0c9348}.accordion-panel .header .header__title .exclamation-icon-blue{color:#428bca}.accordion-panel .header .header__title .title{font-family:\"Open Sans\" sans-serif;font-size:.875rem;font-weight:700;line-height:150%;text-transform:uppercase}.accordion-panel .header .header__controls{align-items:center;display:flex;margin-left:16px}.accordion-panel .header .header__controls .icon-button{color:#212533;cursor:pointer;font-size:1rem;margin-left:12px;padding:4px;border:none;background:none}.accordion-panel .header .header__controls .switch{padding-left:16px}.accordion-panel .content{background-color:#fff;overflow:hidden}.accordion-panel .content .content-container{margin:20px}.accordion-panel--open .header{background-color:#eeebf2;border-bottom:1px solid #c1c1cc}.accordion-panel--disabled .header{cursor:auto}.accordion-panel--disabled .header .header__title .icon,.accordion-panel--disabled .header .header__title .title{color:#c1c1cc}.accordion-panel--disabled .header .header__controls .icon-button{color:#c1c1cc;cursor:auto}.accordion-panel--disabled .exclamation-icon{opacity:.5}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef"] }, { kind: "component", type: i4.SwitchComponent, selector: "s-switch", inputs: ["readonly", "trueLabel", "falseLabel", "inputId", "inputName", "disabled", "value"], outputs: ["valueChanged"] }], animations: [
|
|
84
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: AccordionPanelComponent, selector: "s-accordion-panel", inputs: { header: "header", buttons: "buttons", disabled: "disabled", switchControl: "switchControl", validationMessage: "validationMessage", cache: "cache", validationMessageIcon: "validationMessageIcon", validationMessageIconColor: "validationMessageIconColor" }, outputs: { panelOpened: "panelOpened", panelClosed: "panelClosed" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"accordion-panel\"\n [class.accordion-panel--open]=\"isOpen\"\n [class.accordion-panel--disabled]=\"disabled\"\n>\n <div\n class=\"header\"\n (click)=\"onTabClick()\"\n >\n <div class=\"header__title\">\n <span\n class=\"icon fas\"\n [class.fa-minus]=\"isOpen\"\n [class.fa-plus]=\"!isOpen\"\n >\n </span>\n @if (validationMessage) {\n <span\n class=\"exclamation-icon\"\n [class]=\"validationMessageIcon\"\n [sTooltip]=\"validationMessage\"\n [class.exclamation-icon-red]=\"validationMessageIconColor === 'Red'\"\n [class.exclamation-icon-orange]=\"validationMessageIconColor === 'Orange'\"\n [class.exclamation-icon-yellow]=\"validationMessageIconColor === 'Yellow'\"\n [class.exclamation-icon-green]=\"validationMessageIconColor === 'Green'\"\n [class.exclamation-icon-blue]=\"validationMessageIconColor === 'Blue'\"\n >\n </span>\n }\n <span class=\"title\">{{ header }}</span>\n </div>\n <div class=\"header__controls\">\n @for (button of buttons; track button.icon) {\n <button\n class=\"icon-button\"\n [ngClass]=\"button.icon\"\n (click)=\"onIconButtonsClick($event, button.onClick)\"\n ></button>\n }\n\n @if (switchControl) {\n <s-switch\n class=\"switch\"\n [formControl]=\"switchControl\"\n (click)=\"$event.stopPropagation()\"\n >\n </s-switch>\n }\n </div>\n </div>\n\n @if (cache) {\n <div\n class=\"content\"\n [@cacheAnimation]=\"isOpen\"\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cacheAnimation.start)=\"onContentAnimationStart()\"\n (@cacheAnimation.done)=\"onContentAnimationDone()\"\n >\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n } @else {\n @if (isOpen) {\n <div\n class=\"content\"\n @cachelessAnimation\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cachelessAnimation.start)=\"onContentAnimationStart()\"\n (@cachelessAnimation.done)=\"onContentAnimationDone()\"\n >\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n }\n }\n</div>\n\n<ng-template #panelContent>\n <ng-content></ng-content>\n</ng-template>\n", styles: [".accordion-panel{border-bottom:1px solid #c1c1cc}.accordion-panel .header{align-items:center;background-color:#fff;cursor:pointer;display:flex;justify-content:space-between;padding:16px;-webkit-user-select:none;user-select:none}.accordion-panel .header .header__title{align-items:center;display:flex;flex-wrap:nowrap}.accordion-panel .header .header__title .icon{color:#212533;font-size:1rem;margin-right:12px}.accordion-panel .header .header__title .exclamation-icon{font-size:1rem;margin-right:12px}.accordion-panel .header .header__title .exclamation-icon-red{color:#c13018}.accordion-panel .header .header__title .exclamation-icon-orange{color:#f8931f}.accordion-panel .header .header__title .exclamation-icon-yellow{color:#fcbf10}.accordion-panel .header .header__title .exclamation-icon-green{color:#0c9348}.accordion-panel .header .header__title .exclamation-icon-blue{color:#428bca}.accordion-panel .header .header__title .title{font-family:\"Open Sans\" sans-serif;font-size:.875rem;font-weight:700;line-height:150%;text-transform:uppercase}.accordion-panel .header .header__controls{align-items:center;display:flex;margin-left:16px}.accordion-panel .header .header__controls .icon-button{color:#212533;cursor:pointer;font-size:1rem;margin-left:12px;padding:4px;border:none;background:none}.accordion-panel .header .header__controls .switch{padding-left:16px}.accordion-panel .content{background-color:#fff;overflow:hidden}.accordion-panel .content .content-container{margin:20px}.accordion-panel--open .header{background-color:#eeebf2;border-bottom:1px solid #c1c1cc}.accordion-panel--disabled .header{cursor:auto}.accordion-panel--disabled .header .header__title .icon,.accordion-panel--disabled .header .header__title .title{color:#c1c1cc}.accordion-panel--disabled .header .header__controls .icon-button{color:#c1c1cc;cursor:auto}.accordion-panel--disabled .exclamation-icon{opacity:.5}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i3.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "component", type: i4.SwitchComponent, selector: "s-switch", inputs: ["readonly", "trueLabel", "falseLabel", "inputId", "inputName", "disabled", "value"], outputs: ["valueChanged"] }], animations: [
|
|
85
85
|
trigger('cachelessAnimation', [
|
|
86
86
|
transition(':enter', [style({ height: '0' }), animate('200ms linear', style({ height: '*' }))]),
|
|
87
87
|
transition(':leave', [style({ height: '*' }), animate('200ms linear', style({ height: '0' }))]),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seniorsistemas-angular-components-accordion.mjs","sources":["../../projects/angular-components/accordion/src/lib/accordion/components/accordion-panel/accordion-panel.component.ts","../../projects/angular-components/accordion/src/lib/accordion/components/accordion-panel/accordion-panel.component.html","../../projects/angular-components/accordion/src/lib/accordion/accordion.component.ts","../../projects/angular-components/accordion/src/lib/accordion/accordion.component.html","../../projects/angular-components/accordion/src/lib/accordion/accordion.module.ts","../../projects/angular-components/accordion/src/seniorsistemas-angular-components-accordion.ts"],"sourcesContent":["import { AfterViewInit, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { trigger, style, animate, transition, state } from '@angular/animations';\n\nimport { UntypedFormControl } from '@angular/forms';\nimport { AccordionButtonSettings, ValidationMessageIconColor } from '../../models/accordion-button-settings';\n\n@Component({\n selector: 's-accordion-panel',\n templateUrl: './accordion-panel.component.html',\n styleUrls: ['./accordion-panel.component.scss'],\n animations: [\n trigger('cachelessAnimation', [\n transition(':enter', [style({ height: '0' }), animate('200ms linear', style({ height: '*' }))]),\n transition(':leave', [style({ height: '*' }), animate('200ms linear', style({ height: '0' }))]),\n ]),\n trigger('cacheAnimation', [\n state('true', style({ height: '*' })),\n state('false', style({ height: '0px' })),\n transition('* => *', animate('200ms')),\n ]),\n ],\n})\nexport class AccordionPanelComponent implements OnChanges, AfterViewInit {\n @Input({ required: true })\n public header!: string;\n\n @Input()\n public buttons?: AccordionButtonSettings[];\n\n @Input()\n public disabled = false;\n\n @Input()\n public switchControl?: UntypedFormControl;\n\n @Input()\n public validationMessage?: string;\n\n @Input()\n public cache = false;\n\n @Input() validationMessageIcon = 'fas fa-exclamation-circle';\n\n @Input() validationMessageIconColor: ValidationMessageIconColor = 'Red';\n\n @Output()\n public panelOpened = new EventEmitter<void>();\n\n @Output()\n public panelClosed = new EventEmitter<void>();\n\n public isAnimating = false;\n public isContentAnimationDisabled = true;\n\n private _isOpen = false;\n\n public get isOpen() {\n return this._isOpen;\n }\n\n public set isOpen(isOpen: boolean) {\n this._isOpen = isOpen;\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n if ('disabled' in changes && this.switchControl) {\n if (changes['disabled'].currentValue) {\n this.switchControl.disable({ emitEvent: false });\n } else {\n this.switchControl.enable({ emitEvent: false });\n }\n }\n\n if ('switch' in changes && 'switchControl' in changes) {\n throw new Error(\"You can't set switch and switchControl together.\");\n }\n }\n\n public ngAfterViewInit(): void {\n // to executed at a safe time prior to control returning to the browser's event loop\n queueMicrotask(() => {\n this.isContentAnimationDisabled = false;\n });\n }\n\n public onIconButtonsClick(event: Event, callback: VoidFunction) {\n if (this.disabled) {\n return;\n }\n\n event.stopPropagation();\n callback();\n }\n\n public onTabClick() {\n if (this.disabled || this.isAnimating) {\n return;\n }\n this.isOpen = !this.isOpen;\n this._emitPanelEvent();\n }\n\n public onContentAnimationStart() {\n this.isAnimating = true;\n }\n\n public onContentAnimationDone() {\n this.isAnimating = false;\n\n this._emitPanelEvent();\n }\n\n private _emitPanelEvent() {\n if (this.isOpen) {\n this.panelOpened.emit();\n } else {\n this.panelClosed.emit();\n }\n }\n}\n","<div\n class=\"accordion-panel\"\n [class.accordion-panel--open]=\"isOpen\"\n [class.accordion-panel--disabled]=\"disabled\"\n>\n <div\n class=\"header\"\n (click)=\"onTabClick()\"\n >\n <div class=\"header__title\">\n <span\n class=\"icon fas\"\n [class.fa-minus]=\"isOpen\"\n [class.fa-plus]=\"!isOpen\"\n >\n </span>\n @if (validationMessage) {\n <span\n class=\"exclamation-icon\"\n [class]=\"validationMessageIcon\"\n [sTooltip]=\"validationMessage\"\n [class.exclamation-icon-red]=\"validationMessageIconColor === 'Red'\"\n [class.exclamation-icon-orange]=\"validationMessageIconColor === 'Orange'\"\n [class.exclamation-icon-yellow]=\"validationMessageIconColor === 'Yellow'\"\n [class.exclamation-icon-green]=\"validationMessageIconColor === 'Green'\"\n [class.exclamation-icon-blue]=\"validationMessageIconColor === 'Blue'\"\n >\n </span>\n }\n <span class=\"title\">{{ header }}</span>\n </div>\n <div class=\"header__controls\">\n @for (button of buttons; track button.icon) {\n <button\n class=\"icon-button\"\n [ngClass]=\"button.icon\"\n (click)=\"onIconButtonsClick($event, button.onClick)\"\n ></button>\n }\n\n @if (switchControl) {\n <s-switch\n class=\"switch\"\n [formControl]=\"switchControl\"\n (click)=\"$event.stopPropagation()\"\n >\n </s-switch>\n }\n </div>\n </div>\n\n @if (cache) {\n <div\n class=\"content\"\n [@cacheAnimation]=\"isOpen\"\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cacheAnimation.start)=\"onContentAnimationStart()\"\n (@cacheAnimation.done)=\"onContentAnimationDone()\"\n >\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n } @else {\n @if (isOpen) {\n <div\n class=\"content\"\n @cachelessAnimation\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cachelessAnimation.start)=\"onContentAnimationStart()\"\n (@cachelessAnimation.done)=\"onContentAnimationDone()\"\n >\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n }\n }\n</div>\n\n<ng-template #panelContent>\n <ng-content></ng-content>\n</ng-template>\n","import {\n AfterContentInit,\n OnChanges,\n Component,\n ContentChildren,\n Input,\n QueryList,\n SimpleChanges,\n OnDestroy,\n} from '@angular/core';\n\nimport { AccordionPanelComponent } from './components/accordion-panel/accordion-panel.component';\nimport { Subject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\n@Component({\n selector: 's-accordion',\n templateUrl: './accordion.component.html',\n styleUrls: ['./accordion.component.scss'],\n})\nexport class AccordionComponent implements AfterContentInit, OnChanges, OnDestroy {\n @Input()\n public activeIndex?: number;\n\n @Input()\n public multiple = false;\n\n @ContentChildren(AccordionPanelComponent)\n public panelsComponents?: QueryList<AccordionPanelComponent>;\n\n private readonly _unsubscribe$ = new Subject<void>();\n private _panels: AccordionPanelComponent[] = [];\n private _openSubs: Subscription[] = [];\n\n public ngAfterContentInit(): void {\n if (this.panelsComponents) {\n this._panels = this.panelsComponents?.toArray();\n }\n\n this._openSubs = Array.from({ length: this._panels.length });\n\n this._setBehavior(this.multiple);\n this._setupTabs();\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n if (changes['multiple']) {\n this._setBehavior(changes['multiple'].currentValue);\n }\n }\n\n public ngOnDestroy(): void {\n this._unsubscribe$.next();\n this._unsubscribe$.complete();\n }\n\n private _setupTabs(): void {\n if (this._panels?.length && this.activeIndex !== undefined && this.activeIndex !== null) {\n const activeTab = this._panels[this.activeIndex];\n\n if (!activeTab) {\n throw new Error('activeIndex does not represent any panel.');\n }\n\n if (!activeTab.disabled) {\n activeTab.isOpen = true;\n }\n }\n }\n\n private _closeOtherTabs(exception: number) {\n this._panels.forEach((panel, index) => {\n if (index !== exception) {\n panel.isOpen = false;\n }\n });\n }\n\n private _setBehavior(multiple: boolean): void {\n if (multiple) {\n this._enableMultiplePanelBehavior();\n } else {\n this._enableSinglePanelBehavior();\n }\n }\n\n private _enableSinglePanelBehavior() {\n this._panels.forEach((panel, index) => {\n this._openSubs[index] = panel.panelOpened.pipe(takeUntil(this._unsubscribe$)).subscribe(() => {\n this._closeOtherTabs(index);\n });\n });\n }\n\n private _enableMultiplePanelBehavior() {\n this._panels.forEach((_, index) => {\n if (this._openSubs[index]) {\n this._openSubs[index].unsubscribe();\n }\n });\n }\n}\n","<div class=\"accordion\">\n <ng-content></ng-content>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\nimport { AccordionComponent } from './accordion.component';\nimport { AccordionPanelComponent } from './components/accordion-panel/accordion-panel.component';\nimport { TooltipModule } from '@seniorsistemas/angular-components/tooltip';\nimport { SwitchModule } from '@seniorsistemas/angular-components/switch';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n TooltipModule,\n SwitchModule,\n ],\n declarations: [AccordionComponent, AccordionPanelComponent],\n exports: [AccordionComponent, AccordionPanelComponent],\n})\nexport class AccordionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seniorsistemas-angular-components-accordion.mjs","sources":["../../projects/angular-components/accordion/src/lib/accordion/components/accordion-panel/accordion-panel.component.ts","../../projects/angular-components/accordion/src/lib/accordion/components/accordion-panel/accordion-panel.component.html","../../projects/angular-components/accordion/src/lib/accordion/accordion.component.ts","../../projects/angular-components/accordion/src/lib/accordion/accordion.component.html","../../projects/angular-components/accordion/src/lib/accordion/accordion.module.ts","../../projects/angular-components/accordion/src/seniorsistemas-angular-components-accordion.ts"],"sourcesContent":["import { AfterViewInit, Component, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { trigger, style, animate, transition, state } from '@angular/animations';\n\nimport { UntypedFormControl } from '@angular/forms';\nimport { AccordionButtonSettings, ValidationMessageIconColor } from '../../models/accordion-button-settings';\n\n@Component({\n selector: 's-accordion-panel',\n templateUrl: './accordion-panel.component.html',\n styleUrls: ['./accordion-panel.component.scss'],\n animations: [\n trigger('cachelessAnimation', [\n transition(':enter', [style({ height: '0' }), animate('200ms linear', style({ height: '*' }))]),\n transition(':leave', [style({ height: '*' }), animate('200ms linear', style({ height: '0' }))]),\n ]),\n trigger('cacheAnimation', [\n state('true', style({ height: '*' })),\n state('false', style({ height: '0px' })),\n transition('* => *', animate('200ms')),\n ]),\n ],\n})\nexport class AccordionPanelComponent implements OnChanges, AfterViewInit {\n @Input({ required: true })\n public header!: string;\n\n @Input()\n public buttons?: AccordionButtonSettings[];\n\n @Input()\n public disabled = false;\n\n @Input()\n public switchControl?: UntypedFormControl;\n\n @Input()\n public validationMessage?: string;\n\n @Input()\n public cache = false;\n\n @Input() validationMessageIcon = 'fas fa-exclamation-circle';\n\n @Input() validationMessageIconColor: ValidationMessageIconColor = 'Red';\n\n @Output()\n public panelOpened = new EventEmitter<void>();\n\n @Output()\n public panelClosed = new EventEmitter<void>();\n\n public isAnimating = false;\n public isContentAnimationDisabled = true;\n\n private _isOpen = false;\n\n public get isOpen() {\n return this._isOpen;\n }\n\n public set isOpen(isOpen: boolean) {\n this._isOpen = isOpen;\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n if ('disabled' in changes && this.switchControl) {\n if (changes['disabled'].currentValue) {\n this.switchControl.disable({ emitEvent: false });\n } else {\n this.switchControl.enable({ emitEvent: false });\n }\n }\n\n if ('switch' in changes && 'switchControl' in changes) {\n throw new Error(\"You can't set switch and switchControl together.\");\n }\n }\n\n public ngAfterViewInit(): void {\n // to executed at a safe time prior to control returning to the browser's event loop\n queueMicrotask(() => {\n this.isContentAnimationDisabled = false;\n });\n }\n\n public onIconButtonsClick(event: Event, callback: VoidFunction) {\n if (this.disabled) {\n return;\n }\n\n event.stopPropagation();\n callback();\n }\n\n public onTabClick() {\n if (this.disabled || this.isAnimating) {\n return;\n }\n this.isOpen = !this.isOpen;\n this._emitPanelEvent();\n }\n\n public onContentAnimationStart() {\n this.isAnimating = true;\n }\n\n public onContentAnimationDone() {\n this.isAnimating = false;\n\n this._emitPanelEvent();\n }\n\n private _emitPanelEvent() {\n if (this.isOpen) {\n this.panelOpened.emit();\n } else {\n this.panelClosed.emit();\n }\n }\n}\n","<div\n class=\"accordion-panel\"\n [class.accordion-panel--open]=\"isOpen\"\n [class.accordion-panel--disabled]=\"disabled\"\n>\n <div\n class=\"header\"\n (click)=\"onTabClick()\"\n >\n <div class=\"header__title\">\n <span\n class=\"icon fas\"\n [class.fa-minus]=\"isOpen\"\n [class.fa-plus]=\"!isOpen\"\n >\n </span>\n @if (validationMessage) {\n <span\n class=\"exclamation-icon\"\n [class]=\"validationMessageIcon\"\n [sTooltip]=\"validationMessage\"\n [class.exclamation-icon-red]=\"validationMessageIconColor === 'Red'\"\n [class.exclamation-icon-orange]=\"validationMessageIconColor === 'Orange'\"\n [class.exclamation-icon-yellow]=\"validationMessageIconColor === 'Yellow'\"\n [class.exclamation-icon-green]=\"validationMessageIconColor === 'Green'\"\n [class.exclamation-icon-blue]=\"validationMessageIconColor === 'Blue'\"\n >\n </span>\n }\n <span class=\"title\">{{ header }}</span>\n </div>\n <div class=\"header__controls\">\n @for (button of buttons; track button.icon) {\n <button\n class=\"icon-button\"\n [ngClass]=\"button.icon\"\n (click)=\"onIconButtonsClick($event, button.onClick)\"\n ></button>\n }\n\n @if (switchControl) {\n <s-switch\n class=\"switch\"\n [formControl]=\"switchControl\"\n (click)=\"$event.stopPropagation()\"\n >\n </s-switch>\n }\n </div>\n </div>\n\n @if (cache) {\n <div\n class=\"content\"\n [@cacheAnimation]=\"isOpen\"\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cacheAnimation.start)=\"onContentAnimationStart()\"\n (@cacheAnimation.done)=\"onContentAnimationDone()\"\n >\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n } @else {\n @if (isOpen) {\n <div\n class=\"content\"\n @cachelessAnimation\n [@.disabled]=\"isContentAnimationDisabled\"\n (@cachelessAnimation.start)=\"onContentAnimationStart()\"\n (@cachelessAnimation.done)=\"onContentAnimationDone()\"\n >\n <div class=\"content-container\">\n <ng-container [ngTemplateOutlet]=\"panelContent\"></ng-container>\n </div>\n </div>\n }\n }\n</div>\n\n<ng-template #panelContent>\n <ng-content></ng-content>\n</ng-template>\n","import {\n AfterContentInit,\n OnChanges,\n Component,\n ContentChildren,\n Input,\n QueryList,\n SimpleChanges,\n OnDestroy,\n} from '@angular/core';\n\nimport { AccordionPanelComponent } from './components/accordion-panel/accordion-panel.component';\nimport { Subject, Subscription } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\n@Component({\n selector: 's-accordion',\n templateUrl: './accordion.component.html',\n styleUrls: ['./accordion.component.scss'],\n})\nexport class AccordionComponent implements AfterContentInit, OnChanges, OnDestroy {\n @Input()\n public activeIndex?: number;\n\n @Input()\n public multiple = false;\n\n @ContentChildren(AccordionPanelComponent)\n public panelsComponents?: QueryList<AccordionPanelComponent>;\n\n private readonly _unsubscribe$ = new Subject<void>();\n private _panels: AccordionPanelComponent[] = [];\n private _openSubs: Subscription[] = [];\n\n public ngAfterContentInit(): void {\n if (this.panelsComponents) {\n this._panels = this.panelsComponents?.toArray();\n }\n\n this._openSubs = Array.from({ length: this._panels.length });\n\n this._setBehavior(this.multiple);\n this._setupTabs();\n }\n\n public ngOnChanges(changes: SimpleChanges): void {\n if (changes['multiple']) {\n this._setBehavior(changes['multiple'].currentValue);\n }\n }\n\n public ngOnDestroy(): void {\n this._unsubscribe$.next();\n this._unsubscribe$.complete();\n }\n\n private _setupTabs(): void {\n if (this._panels?.length && this.activeIndex !== undefined && this.activeIndex !== null) {\n const activeTab = this._panels[this.activeIndex];\n\n if (!activeTab) {\n throw new Error('activeIndex does not represent any panel.');\n }\n\n if (!activeTab.disabled) {\n activeTab.isOpen = true;\n }\n }\n }\n\n private _closeOtherTabs(exception: number) {\n this._panels.forEach((panel, index) => {\n if (index !== exception) {\n panel.isOpen = false;\n }\n });\n }\n\n private _setBehavior(multiple: boolean): void {\n if (multiple) {\n this._enableMultiplePanelBehavior();\n } else {\n this._enableSinglePanelBehavior();\n }\n }\n\n private _enableSinglePanelBehavior() {\n this._panels.forEach((panel, index) => {\n this._openSubs[index] = panel.panelOpened.pipe(takeUntil(this._unsubscribe$)).subscribe(() => {\n this._closeOtherTabs(index);\n });\n });\n }\n\n private _enableMultiplePanelBehavior() {\n this._panels.forEach((_, index) => {\n if (this._openSubs[index]) {\n this._openSubs[index].unsubscribe();\n }\n });\n }\n}\n","<div class=\"accordion\">\n <ng-content></ng-content>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\n\nimport { AccordionComponent } from './accordion.component';\nimport { AccordionPanelComponent } from './components/accordion-panel/accordion-panel.component';\nimport { TooltipModule } from '@seniorsistemas/angular-components/tooltip';\nimport { SwitchModule } from '@seniorsistemas/angular-components/switch';\n\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n TooltipModule,\n SwitchModule,\n ],\n declarations: [AccordionComponent, AccordionPanelComponent],\n exports: [AccordionComponent, AccordionPanelComponent],\n})\nexport class AccordionModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,7 @@ class ButtonComponent {
|
|
|
47
47
|
return this.animation === 'rotate';
|
|
48
48
|
}
|
|
49
49
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
50
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ButtonComponent, isStandalone: true, selector: "s-button", inputs: { id: "id", label: "label", tooltip: "tooltip", tooltipPosition: "tooltipPosition", iconClass: "iconClass", rightIconClass: "rightIconClass", caret: "caret", styleClass: "styleClass", baseZIndex: "baseZIndex", disabled: "disabled", auxiliary: "auxiliary", type: "type", priority: "priority", menuOptions: "menuOptions", size: "size", slide: "slide", animation: "animation", badge: "badge", iconColor: "iconColor" }, outputs: { clicked: "clicked" }, host: { properties: { "class.s-button-with-badge": "!!badge", "style.min-width": "this.minWidth" } }, usesOnChanges: true, ngImport: i0, template: "<button\n [id]=\"id\"\n [type]=\"type\"\n [class]=\"styleClass\"\n [ngClass]=\"{\n 's-button-auxiliary': auxiliary,\n 's-button-with-icon': iconClass,\n 's-button-with-text': label,\n 's-button-only-icon': iconClass && !label,\n 's-button-empty': !iconClass && !label,\n 's-button-size-default': size === 'default',\n 's-button-size-small': size === 'small',\n 's-button-priority-default': priority === 'default',\n 's-button-priority-primary': priority === 'primary',\n 's-button-priority-secondary': priority === 'secondary',\n 's-button-priority-link': priority === 'link',\n 's-button-priority-danger': priority === 'danger',\n 's-button-multiple': (caret && menuOptions.length) || rightIconClass,\n 's-button--slide': validateSlideButton(),\n 's-button--rotate-animation': isRotateAnimation(),\n }\"\n sTieredMenu\n [items]=\"menuOptions\"\n [disabled]=\"disabled\"\n [sTooltip]=\"tooltip\"\n [tooltipPosition]=\"tooltipPosition\"\n (click)=\"clicked.emit($event)\"\n>\n @if (iconClass) {\n <span\n [class]=\"iconClass\"\n [ngClass]=\"{\n 's-button-icon': true,\n 's-button-icon-margin-right': !label && menuOptions.length,\n }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if (label) {\n <span\n class=\"s-button-text\"\n [ngClass]=\"{\n 's-button-icon-margin-right': !!rightIconClass || menuOptions.length,\n 's-button-icon-margin-left': !!iconClass,\n }\"\n >\n {{ label }}\n </span>\n }\n <ng-content></ng-content>\n @if (rightIconClass) {\n <span\n [class]=\"rightIconClass\"\n [ngClass]=\"{ 's-button-right-icon': true }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if ((caret && menuOptions.length) || (menuOptions && menuOptions.length)) {\n <span\n class=\"menu-options-icon fa fa-fw fa-caret-down\"\n aria-hidden=\"true\"\n >\n </span>\n }\n</button>\n@if (badge) {\n <div class=\"badge\">\n <s-badge\n [color]=\"badge.color\"\n [text]=\"badge.text\"\n [iconClass]=\"badge.iconClass\"\n >\n </s-badge>\n </div>\n}\n", styles: [":host{display:inline-flex;position:relative}:host.s-button-with-badge{margin-right:-15px}button{align-items:center;display:inline-flex;justify-content:center;border:1px solid;border-radius:4px;color:#fff;cursor:pointer;font-family:Open Sans,sans-serif;font-size:14px;height:35px;max-width:100%;min-width:40px;outline:none;overflow:visible;padding:5px 10px;position:relative;text-decoration:none;text-transform:none;transition:background-color .2s ease-out,border-color .2s ease-out,color .2s ease-out}button:disabled{background-image:none;cursor:text;filter:Alpha(Opacity=50);opacity:.5}button.s-button-auxiliary{border-radius:20px}button.s-button-size-small{height:25px}button.s-button-size-small.s-button-only-icon{max-width:24px;max-height:24px;min-width:24px}button.s-button-size-default{height:35px}button.s-button-with-text,button.s-button-with-icon.s-button-multiple{min-width:80px}button.s-button-with-icon.s-button-with-text.s-button-multiple{min-width:100px}button.s-button-multiple.s-button-size-small.s-button-empty{width:25px;min-width:25px}button .s-button-icon,button .s-button-right-icon,button .s-button-menu-icon,button.s-button-with-icon.s-button-multiple:not(.s-button-with-text) .s-button-icon{align-items:center;display:inline-flex;justify-content:center}button.s-button-multiple .s-button-text{align-items:left;display:inline-flex;justify-content:left}button.s-button-with-icon .s-button-text{align-items:right;display:inline-flex;justify-content:right}button.s-button-priority-primary{background-color:#428bca;border-color:#428bca}button.s-button-priority-primary .s-button-icon,button.s-button-priority-primary .s-button-right-icon,button.s-button-priority-primary .s-button-text,button.s-button-priority-primary .s-button-menu-icon{color:#fff}button.s-button-priority-primary:hover{background-color:#2a6496}button.s-button-priority-primary:focus{background-color:#2a6496;border-color:#22dce6}button.s-button-priority-primary:active:not(:disabled),button.s-button-priority-primary.s-button-active:not(:disabled){background-color:#245682;border-color:#245682}button.s-button-priority-primary .menu-options-icon{color:#fff}button.s-button-priority-secondary{background-color:#7892a1;border-color:#7892a1}button.s-button-priority-secondary .s-button-icon,button.s-button-priority-secondary .s-button-right-icon,button.s-button-priority-secondary .s-button-text,button.s-button-priority-secondary .s-button-menu-icon{color:#fff}button.s-button-priority-secondary:hover{background-color:#546b79}button.s-button-priority-secondary:focus{background-color:#546b79;border-color:#22dce6}button.s-button-priority-secondary:active:not(:disabled),button.s-button-priority-secondary.s-button-active:not(:disabled){background-color:#495e6a;border-color:#495e6a}button.s-button-priority-secondary .menu-options-icon{color:#fff}button.s-button-priority-default{background-color:#fff;border-color:#ccc}button.s-button-priority-default .s-button-icon,button.s-button-priority-default .s-button-right-icon,button.s-button-priority-default .s-button-text,button.s-button-priority-default .s-button-menu-icon{color:#333}button.s-button-priority-default:hover{background-color:#d9d9d9}button.s-button-priority-default:focus{background-color:#d9d9d9;border-color:#22dce6}button.s-button-priority-default:active:not(:disabled),button.s-button-priority-default.s-button-active:not(:disabled){background-color:#ccc;border-color:#ccc}button.s-button-priority-default .menu-options-icon{color:#333}button.s-button-auxiliary.s-button-only-icon{border-radius:50%}button.s-button-priority-link{background-color:transparent;border-color:transparent}button.s-button-priority-link .s-button-icon,button.s-button-priority-link .s-button-right-icon,button.s-button-priority-link .s-button-text,button.s-button-priority-link .s-button-menu-icon{color:#428bca}button.s-button-priority-link:hover{background-color:transparent}button.s-button-priority-link:hover .s-button-icon,button.s-button-priority-link:hover .s-button-right-icon,button.s-button-priority-link:hover .s-button-text,button.s-button-priority-link:hover .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:focus{background-color:transparent;border-color:#22dce6}button.s-button-priority-link:focus .s-button-icon,button.s-button-priority-link:focus .s-button-right-icon,button.s-button-priority-link:focus .s-button-text,button.s-button-priority-link:focus .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:active:not(:disabled),button.s-button-priority-link.s-button-active:not(:disabled){background-color:transparent;border-color:transparent}button.s-button-priority-link:active:not(:disabled) .s-button-icon,button.s-button-priority-link:active:not(:disabled) .s-button-right-icon,button.s-button-priority-link:active:not(:disabled) .s-button-text,button.s-button-priority-link:active:not(:disabled) .s-button-menu-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-right-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-text,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-menu-icon{color:#245682}.s-button-priority-danger{background-color:#9c3a3a;border-color:#9c3a3a}.s-button-priority-danger .s-button-icon,.s-button-priority-danger .s-button-right-icon,.s-button-priority-danger .s-button-text,.s-button-priority-danger .s-button-menu-icon{color:#fff}.s-button-priority-danger:hover{background-color:#642525}.s-button-priority-danger:focus{background-color:#642525;border-color:#22dce6}.s-button-priority-danger:active:not(:disabled),.s-button-priority-danger.s-button-active:not(:disabled){background-color:#521e1e;border-color:#521e1e}.s-button-priority-danger .menu-options-icon{color:#fff}.s-button-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-button-menu-icon{right:10px;transition:transform .2s ease-out}.s-button-icon-margin-left{margin-left:10px}.s-button-icon-margin-right{margin-right:10px}.s-button-active .s-button-menu-icon{transform:rotateX(180deg)}.s-button--slide.s-button-with-text,.s-button--slide.s-button-with-icon.s-button-multiple{min-width:40px}.s-button--slide .s-button-text{opacity:0;position:absolute;width:0}.s-button--slide:hover .s-button-text{opacity:1;position:relative;transition:1s ease;width:auto}.s-button--slide:hover.s-button--rotate-animation .s-button-icon,.s-button--slide:hover.s-button--rotate-animation .s-button-right-icon{transform:rotate(360deg);transition:1.5s ease}.badge{z-index:99;position:relative;right:15px;bottom:16px}.menu-options-icon{color:#212533}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i1.BadgeComponent, selector: "s-badge", inputs: ["type", "color", "title", "text", "selectable", "iconClass", "iconPosition", "infoSign"], outputs: ["selected"] }, { kind: "ngmodule", type: TieredMenuModule }, { kind: "directive", type: i2.TieredMenuDirective, selector: "[sTieredMenu]", inputs: ["items", "focusedItem", "triggerEvent"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef"] }] });
|
|
50
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ButtonComponent, isStandalone: true, selector: "s-button", inputs: { id: "id", label: "label", tooltip: "tooltip", tooltipPosition: "tooltipPosition", iconClass: "iconClass", rightIconClass: "rightIconClass", caret: "caret", styleClass: "styleClass", baseZIndex: "baseZIndex", disabled: "disabled", auxiliary: "auxiliary", type: "type", priority: "priority", menuOptions: "menuOptions", size: "size", slide: "slide", animation: "animation", badge: "badge", iconColor: "iconColor" }, outputs: { clicked: "clicked" }, host: { properties: { "class.s-button-with-badge": "!!badge", "style.min-width": "this.minWidth" } }, usesOnChanges: true, ngImport: i0, template: "<button\n [id]=\"id\"\n [type]=\"type\"\n [class]=\"styleClass\"\n [ngClass]=\"{\n 's-button-auxiliary': auxiliary,\n 's-button-with-icon': iconClass,\n 's-button-with-text': label,\n 's-button-only-icon': iconClass && !label,\n 's-button-empty': !iconClass && !label,\n 's-button-size-default': size === 'default',\n 's-button-size-small': size === 'small',\n 's-button-priority-default': priority === 'default',\n 's-button-priority-primary': priority === 'primary',\n 's-button-priority-secondary': priority === 'secondary',\n 's-button-priority-link': priority === 'link',\n 's-button-priority-danger': priority === 'danger',\n 's-button-multiple': (caret && menuOptions.length) || rightIconClass,\n 's-button--slide': validateSlideButton(),\n 's-button--rotate-animation': isRotateAnimation(),\n }\"\n sTieredMenu\n [items]=\"menuOptions\"\n [disabled]=\"disabled\"\n [sTooltip]=\"tooltip\"\n [tooltipPosition]=\"tooltipPosition\"\n (click)=\"clicked.emit($event)\"\n>\n @if (iconClass) {\n <span\n [class]=\"iconClass\"\n [ngClass]=\"{\n 's-button-icon': true,\n 's-button-icon-margin-right': !label && menuOptions.length,\n }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if (label) {\n <span\n class=\"s-button-text\"\n [ngClass]=\"{\n 's-button-icon-margin-right': !!rightIconClass || menuOptions.length,\n 's-button-icon-margin-left': !!iconClass,\n }\"\n >\n {{ label }}\n </span>\n }\n <ng-content></ng-content>\n @if (rightIconClass) {\n <span\n [class]=\"rightIconClass\"\n [ngClass]=\"{ 's-button-right-icon': true }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if ((caret && menuOptions.length) || (menuOptions && menuOptions.length)) {\n <span\n class=\"menu-options-icon fa fa-fw fa-caret-down\"\n aria-hidden=\"true\"\n >\n </span>\n }\n</button>\n@if (badge) {\n <div class=\"badge\">\n <s-badge\n [color]=\"badge.color\"\n [text]=\"badge.text\"\n [iconClass]=\"badge.iconClass\"\n >\n </s-badge>\n </div>\n}\n", styles: [":host{display:inline-flex;position:relative}:host.s-button-with-badge{margin-right:-15px}button{align-items:center;display:inline-flex;justify-content:center;border:1px solid;border-radius:4px;color:#fff;cursor:pointer;font-family:Open Sans,sans-serif;font-size:14px;height:35px;max-width:100%;min-width:40px;outline:none;overflow:visible;padding:5px 10px;position:relative;text-decoration:none;text-transform:none;transition:background-color .2s ease-out,border-color .2s ease-out,color .2s ease-out}button:disabled{background-image:none;cursor:text;filter:Alpha(Opacity=50);opacity:.5}button.s-button-auxiliary{border-radius:20px}button.s-button-size-small{height:25px}button.s-button-size-small.s-button-only-icon{max-width:24px;max-height:24px;min-width:24px}button.s-button-size-default{height:35px}button.s-button-with-text,button.s-button-with-icon.s-button-multiple{min-width:80px}button.s-button-with-icon.s-button-with-text.s-button-multiple{min-width:100px}button.s-button-multiple.s-button-size-small.s-button-empty{width:25px;min-width:25px}button .s-button-icon,button .s-button-right-icon,button .s-button-menu-icon,button.s-button-with-icon.s-button-multiple:not(.s-button-with-text) .s-button-icon{align-items:center;display:inline-flex;justify-content:center}button.s-button-multiple .s-button-text{align-items:left;display:inline-flex;justify-content:left}button.s-button-with-icon .s-button-text{align-items:right;display:inline-flex;justify-content:right}button.s-button-priority-primary{background-color:#428bca;border-color:#428bca}button.s-button-priority-primary .s-button-icon,button.s-button-priority-primary .s-button-right-icon,button.s-button-priority-primary .s-button-text,button.s-button-priority-primary .s-button-menu-icon{color:#fff}button.s-button-priority-primary:hover{background-color:#2a6496}button.s-button-priority-primary:focus{background-color:#2a6496;border-color:#22dce6}button.s-button-priority-primary:active:not(:disabled),button.s-button-priority-primary.s-button-active:not(:disabled){background-color:#245682;border-color:#245682}button.s-button-priority-primary .menu-options-icon{color:#fff}button.s-button-priority-secondary{background-color:#7892a1;border-color:#7892a1}button.s-button-priority-secondary .s-button-icon,button.s-button-priority-secondary .s-button-right-icon,button.s-button-priority-secondary .s-button-text,button.s-button-priority-secondary .s-button-menu-icon{color:#fff}button.s-button-priority-secondary:hover{background-color:#546b79}button.s-button-priority-secondary:focus{background-color:#546b79;border-color:#22dce6}button.s-button-priority-secondary:active:not(:disabled),button.s-button-priority-secondary.s-button-active:not(:disabled){background-color:#495e6a;border-color:#495e6a}button.s-button-priority-secondary .menu-options-icon{color:#fff}button.s-button-priority-default{background-color:#fff;border-color:#ccc}button.s-button-priority-default .s-button-icon,button.s-button-priority-default .s-button-right-icon,button.s-button-priority-default .s-button-text,button.s-button-priority-default .s-button-menu-icon{color:#333}button.s-button-priority-default:hover{background-color:#d9d9d9}button.s-button-priority-default:focus{background-color:#d9d9d9;border-color:#22dce6}button.s-button-priority-default:active:not(:disabled),button.s-button-priority-default.s-button-active:not(:disabled){background-color:#ccc;border-color:#ccc}button.s-button-priority-default .menu-options-icon{color:#333}button.s-button-auxiliary.s-button-only-icon{border-radius:50%}button.s-button-priority-link{background-color:transparent;border-color:transparent}button.s-button-priority-link .s-button-icon,button.s-button-priority-link .s-button-right-icon,button.s-button-priority-link .s-button-text,button.s-button-priority-link .s-button-menu-icon{color:#428bca}button.s-button-priority-link:hover{background-color:transparent}button.s-button-priority-link:hover .s-button-icon,button.s-button-priority-link:hover .s-button-right-icon,button.s-button-priority-link:hover .s-button-text,button.s-button-priority-link:hover .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:focus{background-color:transparent;border-color:#22dce6}button.s-button-priority-link:focus .s-button-icon,button.s-button-priority-link:focus .s-button-right-icon,button.s-button-priority-link:focus .s-button-text,button.s-button-priority-link:focus .s-button-menu-icon{color:#2a6496}button.s-button-priority-link:active:not(:disabled),button.s-button-priority-link.s-button-active:not(:disabled){background-color:transparent;border-color:transparent}button.s-button-priority-link:active:not(:disabled) .s-button-icon,button.s-button-priority-link:active:not(:disabled) .s-button-right-icon,button.s-button-priority-link:active:not(:disabled) .s-button-text,button.s-button-priority-link:active:not(:disabled) .s-button-menu-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-right-icon,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-text,button.s-button-priority-link.s-button-active:not(:disabled) .s-button-menu-icon{color:#245682}.s-button-priority-danger{background-color:#9c3a3a;border-color:#9c3a3a}.s-button-priority-danger .s-button-icon,.s-button-priority-danger .s-button-right-icon,.s-button-priority-danger .s-button-text,.s-button-priority-danger .s-button-menu-icon{color:#fff}.s-button-priority-danger:hover{background-color:#642525}.s-button-priority-danger:focus{background-color:#642525;border-color:#22dce6}.s-button-priority-danger:active:not(:disabled),.s-button-priority-danger.s-button-active:not(:disabled){background-color:#521e1e;border-color:#521e1e}.s-button-priority-danger .menu-options-icon{color:#fff}.s-button-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.s-button-menu-icon{right:10px;transition:transform .2s ease-out}.s-button-icon-margin-left{margin-left:10px}.s-button-icon-margin-right{margin-right:10px}.s-button-active .s-button-menu-icon{transform:rotateX(180deg)}.s-button--slide.s-button-with-text,.s-button--slide.s-button-with-icon.s-button-multiple{min-width:40px}.s-button--slide .s-button-text{opacity:0;position:absolute;width:0}.s-button--slide:hover .s-button-text{opacity:1;position:relative;transition:1s ease;width:auto}.s-button--slide:hover.s-button--rotate-animation .s-button-icon,.s-button--slide:hover.s-button--rotate-animation .s-button-right-icon{transform:rotate(360deg);transition:1.5s ease}.badge{z-index:99;position:relative;right:15px;bottom:16px}.menu-options-icon{color:#212533}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: BadgeModule }, { kind: "component", type: i1.BadgeComponent, selector: "s-badge", inputs: ["type", "color", "title", "text", "selectable", "iconClass", "iconPosition", "infoSign"], outputs: ["selected"] }, { kind: "ngmodule", type: TieredMenuModule }, { kind: "directive", type: i2.TieredMenuDirective, selector: "[sTieredMenu]", inputs: ["items", "focusedItem", "triggerEvent"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }] });
|
|
51
51
|
}
|
|
52
52
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
53
53
|
type: Component,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seniorsistemas-angular-components-button.mjs","sources":["../../projects/angular-components/button/src/lib/button/button.component.ts","../../projects/angular-components/button/src/lib/button/button.component.html","../../projects/angular-components/button/src/lib/button/button.module.ts","../../projects/angular-components/button/src/seniorsistemas-angular-components-button.ts"],"sourcesContent":["import { Component, EventEmitter, HostBinding, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\n\nimport { NgClass, NgStyle } from '@angular/common';\nimport { BadgeModule } from '@seniorsistemas/angular-components/badge';\nimport { TieredMenuItemData, TieredMenuModule } from '@seniorsistemas/angular-components/tiered-menu';\nimport { TooltipModule, TooltipPositions } from '@seniorsistemas/angular-components/tooltip';\nimport { randomHash } from '@seniorsistemas/angular-components/utils';\nimport { ButtonAnimations } from './models/button-animations';\nimport { ButtonBadgeConfig } from './models/button-badge-config';\nimport { ButtonPriority } from './models/button-priority';\n\n@Component({\n selector: 's-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n host: {\n '[class.s-button-with-badge]': '!!badge'\n },\n standalone: true,\n imports: [\n NgClass,\n NgStyle,\n BadgeModule,\n TieredMenuModule,\n TooltipModule,\n ]\n})\nexport class ButtonComponent implements OnChanges {\n @HostBinding('style.min-width')\n public minWidth = '40px';\n\n @Input()\n public id? = `s-button-${randomHash()}`;\n\n @Input()\n public label?: string;\n\n @Input()\n public tooltip?: string;\n\n @Input()\n public tooltipPosition: TooltipPositions = 'top';\n\n @Input()\n public iconClass?: string;\n\n @Input()\n public rightIconClass?: string;\n\n @Input()\n public caret = true;\n\n @Input()\n public styleClass = '';\n\n @Input()\n public baseZIndex = 0;\n\n @Input()\n public disabled = false;\n\n @Input()\n public auxiliary = false;\n\n @Input()\n public type? = 'button';\n\n @Input()\n public priority?: ButtonPriority = 'primary';\n\n @Input()\n public menuOptions: TieredMenuItemData[] = [];\n\n @Input()\n public size?: 'default' | 'small' = 'default';\n\n @Input()\n public slide = false;\n\n @Input()\n public animation?: ButtonAnimations;\n\n @Input()\n public badge?: ButtonBadgeConfig;\n\n @Input()\n public iconColor? = \"#212533\";\n\n @Output()\n public clicked: EventEmitter<any> = new EventEmitter();\n\n public validateSlideButton(): boolean {\n return !!(this.slide && (this.priority === 'default' || this.priority === 'link') && this.label?.length);\n }\n\n public ngOnChanges(_: SimpleChanges): void {\n const hasIcon = this.iconClass;\n const hasText = this.label;\n\n const isMultiple = this.menuOptions?.length;\n\n if (hasText || (hasIcon && isMultiple)) this.minWidth = '80px';\n if (hasText && hasIcon && isMultiple) this.minWidth = '100px';\n }\n\n public isRotateAnimation(): boolean {\n return this.animation === 'rotate';\n }\n}\n","<button\n [id]=\"id\"\n [type]=\"type\"\n [class]=\"styleClass\"\n [ngClass]=\"{\n 's-button-auxiliary': auxiliary,\n 's-button-with-icon': iconClass,\n 's-button-with-text': label,\n 's-button-only-icon': iconClass && !label,\n 's-button-empty': !iconClass && !label,\n 's-button-size-default': size === 'default',\n 's-button-size-small': size === 'small',\n 's-button-priority-default': priority === 'default',\n 's-button-priority-primary': priority === 'primary',\n 's-button-priority-secondary': priority === 'secondary',\n 's-button-priority-link': priority === 'link',\n 's-button-priority-danger': priority === 'danger',\n 's-button-multiple': (caret && menuOptions.length) || rightIconClass,\n 's-button--slide': validateSlideButton(),\n 's-button--rotate-animation': isRotateAnimation(),\n }\"\n sTieredMenu\n [items]=\"menuOptions\"\n [disabled]=\"disabled\"\n [sTooltip]=\"tooltip\"\n [tooltipPosition]=\"tooltipPosition\"\n (click)=\"clicked.emit($event)\"\n>\n @if (iconClass) {\n <span\n [class]=\"iconClass\"\n [ngClass]=\"{\n 's-button-icon': true,\n 's-button-icon-margin-right': !label && menuOptions.length,\n }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if (label) {\n <span\n class=\"s-button-text\"\n [ngClass]=\"{\n 's-button-icon-margin-right': !!rightIconClass || menuOptions.length,\n 's-button-icon-margin-left': !!iconClass,\n }\"\n >\n {{ label }}\n </span>\n }\n <ng-content></ng-content>\n @if (rightIconClass) {\n <span\n [class]=\"rightIconClass\"\n [ngClass]=\"{ 's-button-right-icon': true }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if ((caret && menuOptions.length) || (menuOptions && menuOptions.length)) {\n <span\n class=\"menu-options-icon fa fa-fw fa-caret-down\"\n aria-hidden=\"true\"\n >\n </span>\n }\n</button>\n@if (badge) {\n <div class=\"badge\">\n <s-badge\n [color]=\"badge.color\"\n [text]=\"badge.text\"\n [iconClass]=\"badge.iconClass\"\n >\n </s-badge>\n </div>\n}\n","import { NgModule } from '@angular/core';\n\nimport { ButtonComponent } from './button.component';\n\n@NgModule({\n imports: [\n ButtonComponent,\n ],\n exports: [ButtonComponent],\n})\nexport class ButtonModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seniorsistemas-angular-components-button.mjs","sources":["../../projects/angular-components/button/src/lib/button/button.component.ts","../../projects/angular-components/button/src/lib/button/button.component.html","../../projects/angular-components/button/src/lib/button/button.module.ts","../../projects/angular-components/button/src/seniorsistemas-angular-components-button.ts"],"sourcesContent":["import { Component, EventEmitter, HostBinding, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\n\nimport { NgClass, NgStyle } from '@angular/common';\nimport { BadgeModule } from '@seniorsistemas/angular-components/badge';\nimport { TieredMenuItemData, TieredMenuModule } from '@seniorsistemas/angular-components/tiered-menu';\nimport { TooltipModule, TooltipPositions } from '@seniorsistemas/angular-components/tooltip';\nimport { randomHash } from '@seniorsistemas/angular-components/utils';\nimport { ButtonAnimations } from './models/button-animations';\nimport { ButtonBadgeConfig } from './models/button-badge-config';\nimport { ButtonPriority } from './models/button-priority';\n\n@Component({\n selector: 's-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.scss'],\n host: {\n '[class.s-button-with-badge]': '!!badge'\n },\n standalone: true,\n imports: [\n NgClass,\n NgStyle,\n BadgeModule,\n TieredMenuModule,\n TooltipModule,\n ]\n})\nexport class ButtonComponent implements OnChanges {\n @HostBinding('style.min-width')\n public minWidth = '40px';\n\n @Input()\n public id? = `s-button-${randomHash()}`;\n\n @Input()\n public label?: string;\n\n @Input()\n public tooltip?: string;\n\n @Input()\n public tooltipPosition: TooltipPositions = 'top';\n\n @Input()\n public iconClass?: string;\n\n @Input()\n public rightIconClass?: string;\n\n @Input()\n public caret = true;\n\n @Input()\n public styleClass = '';\n\n @Input()\n public baseZIndex = 0;\n\n @Input()\n public disabled = false;\n\n @Input()\n public auxiliary = false;\n\n @Input()\n public type? = 'button';\n\n @Input()\n public priority?: ButtonPriority = 'primary';\n\n @Input()\n public menuOptions: TieredMenuItemData[] = [];\n\n @Input()\n public size?: 'default' | 'small' = 'default';\n\n @Input()\n public slide = false;\n\n @Input()\n public animation?: ButtonAnimations;\n\n @Input()\n public badge?: ButtonBadgeConfig;\n\n @Input()\n public iconColor? = \"#212533\";\n\n @Output()\n public clicked: EventEmitter<any> = new EventEmitter();\n\n public validateSlideButton(): boolean {\n return !!(this.slide && (this.priority === 'default' || this.priority === 'link') && this.label?.length);\n }\n\n public ngOnChanges(_: SimpleChanges): void {\n const hasIcon = this.iconClass;\n const hasText = this.label;\n\n const isMultiple = this.menuOptions?.length;\n\n if (hasText || (hasIcon && isMultiple)) this.minWidth = '80px';\n if (hasText && hasIcon && isMultiple) this.minWidth = '100px';\n }\n\n public isRotateAnimation(): boolean {\n return this.animation === 'rotate';\n }\n}\n","<button\n [id]=\"id\"\n [type]=\"type\"\n [class]=\"styleClass\"\n [ngClass]=\"{\n 's-button-auxiliary': auxiliary,\n 's-button-with-icon': iconClass,\n 's-button-with-text': label,\n 's-button-only-icon': iconClass && !label,\n 's-button-empty': !iconClass && !label,\n 's-button-size-default': size === 'default',\n 's-button-size-small': size === 'small',\n 's-button-priority-default': priority === 'default',\n 's-button-priority-primary': priority === 'primary',\n 's-button-priority-secondary': priority === 'secondary',\n 's-button-priority-link': priority === 'link',\n 's-button-priority-danger': priority === 'danger',\n 's-button-multiple': (caret && menuOptions.length) || rightIconClass,\n 's-button--slide': validateSlideButton(),\n 's-button--rotate-animation': isRotateAnimation(),\n }\"\n sTieredMenu\n [items]=\"menuOptions\"\n [disabled]=\"disabled\"\n [sTooltip]=\"tooltip\"\n [tooltipPosition]=\"tooltipPosition\"\n (click)=\"clicked.emit($event)\"\n>\n @if (iconClass) {\n <span\n [class]=\"iconClass\"\n [ngClass]=\"{\n 's-button-icon': true,\n 's-button-icon-margin-right': !label && menuOptions.length,\n }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if (label) {\n <span\n class=\"s-button-text\"\n [ngClass]=\"{\n 's-button-icon-margin-right': !!rightIconClass || menuOptions.length,\n 's-button-icon-margin-left': !!iconClass,\n }\"\n >\n {{ label }}\n </span>\n }\n <ng-content></ng-content>\n @if (rightIconClass) {\n <span\n [class]=\"rightIconClass\"\n [ngClass]=\"{ 's-button-right-icon': true }\"\n [ngStyle]=\"{ color: iconColor }\"\n aria-hidden=\"true\"\n >\n </span>\n }\n @if ((caret && menuOptions.length) || (menuOptions && menuOptions.length)) {\n <span\n class=\"menu-options-icon fa fa-fw fa-caret-down\"\n aria-hidden=\"true\"\n >\n </span>\n }\n</button>\n@if (badge) {\n <div class=\"badge\">\n <s-badge\n [color]=\"badge.color\"\n [text]=\"badge.text\"\n [iconClass]=\"badge.iconClass\"\n >\n </s-badge>\n </div>\n}\n","import { NgModule } from '@angular/core';\n\nimport { ButtonComponent } from './button.component';\n\n@NgModule({\n imports: [\n ButtonComponent,\n ],\n exports: [ButtonComponent],\n})\nexport class ButtonModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -37,7 +37,7 @@ class ChipItemComponent {
|
|
|
37
37
|
return this.objectField ? this.dataRender[this.objectField] || '' : this.dataRender || '';
|
|
38
38
|
}
|
|
39
39
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ChipItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
40
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ChipItemComponent, selector: "s-chip-item", inputs: { dataRender: "dataRender", objectField: "objectField", disabled: "disabled", templateRef: "templateRef", itemIndex: "itemIndex", showTooltip: "showTooltip", maxLengthRenderWithoutTooltip: "maxLengthRenderWithoutTooltip" }, outputs: { clickRemove: "clickRemove", chipClicked: "chipClicked" }, ngImport: i0, template: "<ng-template #itemRender>\n <div\n class=\"chip-item\"\n [class.chip-item-disabled]=\"disabled\"\n (click)=\"onChipClicked($event)\" \n [sTooltip]=\"_rawText\"\n [showDelay]=\"0\"\n [visible]=\"showTooltip ? _rawText.length > maxLengthRenderWithoutTooltip : false\">\n @if(templateRef) {\n <ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: dataRender, text: _text }\">\n </ng-container>\n } @else {\n {{ _text }}\n }\n <i class=\"fas fa-times\" (click)=\"clickedRemove($event)\"></i>\n </div>\n</ng-template>\n\n\n@if(objectField && !templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender;\"></ng-container>\n}\n\n@if(!objectField && !templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender;\"></ng-container>\n}\n\n@if(templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender\"></ng-container>\n}\n", styles: [".chip-item{border-radius:4px;border:1px solid #888b99;background-color:#eeebf2;word-break:break-word;font-size:12px;font-weight:400;text-align:center;display:flex;align-items:center;gap:8px;padding:0 6px}.chip-item i{cursor:pointer}.chip-item:hover:not(.chip-item-disabled){background:#c1c1cc}.chip-item-disabled{opacity:.5}.chip-item-disabled i{cursor:default}\n"], dependencies: [{ kind: "directive", type: i1.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
40
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ChipItemComponent, selector: "s-chip-item", inputs: { dataRender: "dataRender", objectField: "objectField", disabled: "disabled", templateRef: "templateRef", itemIndex: "itemIndex", showTooltip: "showTooltip", maxLengthRenderWithoutTooltip: "maxLengthRenderWithoutTooltip" }, outputs: { clickRemove: "clickRemove", chipClicked: "chipClicked" }, ngImport: i0, template: "<ng-template #itemRender>\n <div\n class=\"chip-item\"\n [class.chip-item-disabled]=\"disabled\"\n (click)=\"onChipClicked($event)\" \n [sTooltip]=\"_rawText\"\n [showDelay]=\"0\"\n [visible]=\"showTooltip ? _rawText.length > maxLengthRenderWithoutTooltip : false\">\n @if(templateRef) {\n <ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: dataRender, text: _text }\">\n </ng-container>\n } @else {\n {{ _text }}\n }\n <i class=\"fas fa-times\" (click)=\"clickedRemove($event)\"></i>\n </div>\n</ng-template>\n\n\n@if(objectField && !templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender;\"></ng-container>\n}\n\n@if(!objectField && !templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender;\"></ng-container>\n}\n\n@if(templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender\"></ng-container>\n}\n", styles: [".chip-item{border-radius:4px;border:1px solid #888b99;background-color:#eeebf2;word-break:break-word;font-size:12px;font-weight:400;text-align:center;display:flex;align-items:center;gap:8px;padding:0 6px}.chip-item i{cursor:pointer}.chip-item:hover:not(.chip-item-disabled){background:#c1c1cc}.chip-item-disabled{opacity:.5}.chip-item-disabled i{cursor:default}\n"], dependencies: [{ kind: "directive", type: i1.TooltipDirective, selector: "[sTooltip]", inputs: ["sTooltip", "tooltipPosition", "showDelay", "displayTime", "tooltipEvent", "escape", "visible", "mobileBehavior", "focusedInputRef", "checkTruncatedText"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] });
|
|
41
41
|
}
|
|
42
42
|
__decorate([
|
|
43
43
|
CheckDisabled()
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"seniorsistemas-angular-components-chips.mjs","sources":["../../projects/angular-components/chips/src/lib/chips/chip-item/chip-item.component.ts","../../projects/angular-components/chips/src/lib/chips/chip-item/chip-item.component.html","../../projects/angular-components/chips/src/lib/chips/chips/chips.component.ts","../../projects/angular-components/chips/src/lib/chips/chips/chips.component.html","../../projects/angular-components/chips/src/lib/chips/chips.module.ts","../../projects/angular-components/chips/src/seniorsistemas-angular-components-chips.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { CheckDisabled } from '@seniorsistemas/angular-components/shared';\n@Component({\n selector: 's-chip-item',\n templateUrl: './chip-item.component.html',\n styleUrls: ['./chip-item.component.scss']\n})\nexport class ChipItemComponent {\n @Input({ required: true }) dataRender!: string | Object;\n @Input({ required: true }) objectField!: string;\n @Input({ required: true }) disabled = false;\n @Input() templateRef!: TemplateRef<any> | undefined\n @Input({ required: true }) itemIndex = -1;\n @Input({ required: true }) showTooltip = true;\n @Input({ required: true }) maxLengthRenderWithoutTooltip = 20;\n\n @Output() clickRemove = new EventEmitter<{ itemIndex: number, event: Event }>();\n @Output() chipClicked = new EventEmitter<{ event: Event, data: string | Object }>();\n\n @CheckDisabled()\n clickedRemove($event: Event) {\n this.clickRemove.emit({ itemIndex: this.itemIndex, event: $event });\n }\n @CheckDisabled()\n onChipClicked($event: Event) {\n this.chipClicked.emit({ event: $event, data: this.dataRender });\n }\n\n get _text() {\n const _text = this._rawText;\n return _text.substring(0, _text.length > this.maxLengthRenderWithoutTooltip ? this.maxLengthRenderWithoutTooltip : _text.length) + (_text.length > this.maxLengthRenderWithoutTooltip ? '...' : '');\n }\n\n get _rawText() {\n return this.objectField ? (this.dataRender as any)[this.objectField] || '' : this.dataRender || '';\n }\n}\n","<ng-template #itemRender>\n <div\n class=\"chip-item\"\n [class.chip-item-disabled]=\"disabled\"\n (click)=\"onChipClicked($event)\" \n [sTooltip]=\"_rawText\"\n [showDelay]=\"0\"\n [visible]=\"showTooltip ? _rawText.length > maxLengthRenderWithoutTooltip : false\">\n @if(templateRef) {\n <ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: dataRender, text: _text }\">\n </ng-container>\n } @else {\n {{ _text }}\n }\n <i class=\"fas fa-times\" (click)=\"clickedRemove($event)\"></i>\n </div>\n</ng-template>\n\n\n@if(objectField && !templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender;\"></ng-container>\n}\n\n@if(!objectField && !templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender;\"></ng-container>\n}\n\n@if(templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender\"></ng-container>\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostListener,\n Input,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { KeyFilterPattern } from 'primeng/keyfilter';\n\nimport { ChipAddEvent, ChipClickEvent, ChipRemoveEvent } from '../models/chip-models';\nimport { TemplateDirective } from '@seniorsistemas/angular-components/template';\nimport { isNullOrUndefined, randomHash } from '@seniorsistemas/angular-components/utils';\nimport { CheckDisabled } from '@seniorsistemas/angular-components/shared';\n\n@Component({\n selector: 's-chips',\n templateUrl: './chips.component.html',\n styleUrls: ['./chips.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ChipsComponent),\n multi: true,\n },\n ],\n})\nexport class ChipsComponent implements AfterViewInit, ControlValueAccessor {\n public newItem = '';\n public chipTemplate?: TemplateRef<any>;\n\n @Input()\n public disabled = false;\n\n @Input()\n public field = '';\n\n @Input()\n public value: any[] = [];\n\n @Input()\n public placeholder: string | undefined;\n\n @Input()\n public max = Infinity;\n\n @Input()\n public maxLength = Infinity;\n\n @Input()\n public inputId = `chips-${randomHash()}`;\n\n @Input()\n public allowDuplicated = true;\n\n @Input()\n public caseSensitiveDuplication = false;\n\n @Input()\n public addOnTab = true;\n\n @Input()\n public addOnBlur = true;\n\n @Input()\n public separator = '';\n\n @Input()\n public autofocus = false;\n\n @Input()\n public infoLabel = '';\n\n @Input()\n public keyFilter?: RegExp | KeyFilterPattern;\n\n @Input()\n public showTooltip = true;\n\n @Input()\n public maxLengthRenderWithoutTooltip = 20;\n\n @Output()\n public added = new EventEmitter<ChipAddEvent>();\n\n @Output()\n public removed = new EventEmitter<ChipRemoveEvent>();\n\n @Output()\n public focused = new EventEmitter<FocusEvent>();\n\n @Output()\n public focusLost = new EventEmitter<FocusEvent>();\n\n @Output()\n public chipClicked = new EventEmitter<ChipClickEvent>();\n\n @Output()\n public valueChange = new EventEmitter<string[] | any[]>();\n\n @ContentChildren(TemplateDirective)\n private readonly templates: QueryList<TemplateDirective> | null = null;\n\n @ViewChild('input', { read: ElementRef })\n private readonly input: ElementRef<HTMLElement> | null = null;\n\n public isFocused = false;\n public onChange: (value: string[] | any[]) => void = () => { };\n public onTouched: (value: string[] | any[]) => void = () => { };\n\n private isTabEventActive = false;\n\n constructor(private readonly cdr: ChangeDetectorRef) { }\n\n public ngAfterViewInit(): void {\n if (this.autofocus && this.input) {\n this.input.nativeElement.focus();\n }\n if (this.templates) {\n this.chipTemplate = this.templates.find((x) => x.type === 'chip-container')?.template;\n this.cdr.detectChanges();\n }\n }\n\n public writeValue(obj: string[] | any[]): void {\n if (isNullOrUndefined(obj)) {\n obj = [];\n }\n this.value = obj;\n }\n\n public registerOnChange(fn: (value: string[] | any[]) => void): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n @HostListener('document:keydown', ['$event'])\n @CheckDisabled()\n public onKeydown($event: KeyboardEvent) {\n const isEnter = $event.key === 'Enter';\n const isSeparator = this.separator && $event.key === this.separator;\n const eventKeyIsTab = $event.key === 'Tab';\n if (eventKeyIsTab) {\n const tabTimeoutTime = 50;\n this.isTabEventActive = true;\n setTimeout(() => {\n this.isTabEventActive = false;\n }, tabTimeoutTime);\n }\n const isTab = this.addOnTab && eventKeyIsTab;\n if (isEnter || isSeparator || isTab) {\n $event.preventDefault();\n this.addItem();\n }\n }\n\n public onInputFocus($event: FocusEvent) {\n this.focused.emit($event);\n this.isFocused = true;\n }\n\n @CheckDisabled()\n public onInputLostFocus($event: FocusEvent) {\n this.isFocused = false;\n if (!this.addOnBlur || this.isTabEventActive) {\n return;\n }\n this.addItem();\n this.focusLost.emit($event);\n }\n\n public removeItem({ itemIndex, event }: { itemIndex: number; event: Event }) {\n const _removedItem = this.value[itemIndex];\n this.value.splice(itemIndex, 1);\n this.removed.emit({ value: _removedItem, originalEvent: event });\n }\n\n public onChipClicked({ event, data }: { event: Event; data: string | Object }) {\n this.chipClicked.emit({ value: data, originalEvent: event });\n }\n\n private addItem() {\n if (!this.hasValueToAdd()) {\n return;\n }\n if (this.isMaxReached()) {\n return;\n }\n if (!this.isValidItemLength()) {\n return;\n }\n const valueToAdd = this.getValueToAdd();\n if (!this.hasDuplicatedItem()) {\n this.storeValue(valueToAdd);\n }\n this.newItem = '';\n }\n\n private hasValueToAdd(): boolean {\n return !!this.newItem;\n }\n\n private isMaxReached(): boolean {\n return !!(this.max && this.value.length === this.max);\n }\n\n private isValidItemLength(): boolean {\n return this.maxLength ? this.newItem.length <= this.maxLength : true;\n }\n\n private getMappedValues(): string[] {\n return this.field ? this.value.map((x) => x[this.field]) : this.value;\n }\n\n private getValueToAdd(): any {\n return this.field ? { [this.field]: this.newItem } : this.newItem;\n }\n\n private hasDuplicatedItem(): boolean {\n if (this.allowDuplicated) {\n return false;\n }\n const mappedValues = this.getMappedValues();\n return !!mappedValues.find((x) => {\n if (this.caseSensitiveDuplication) {\n return x === this.newItem;\n } else {\n return x.toLowerCase() === this.newItem.toLowerCase();\n }\n });\n }\n\n private storeValue(value: any) {\n this.value = [...this.value, value];\n this.added.emit({ value });\n this.valueChange.emit(this.value);\n this.writeValue(this.value);\n this.onChange(this.value);\n this.onTouched(this.value);\n }\n}\n","<ul class=\"chips-container\" [class.chips-container--focused]=\"isFocused\">\n @for(item of value; track $index) {\n <li>\n <s-chip-item\n [templateRef]=\"chipTemplate\"\n [dataRender]=\"item\"\n [objectField]=\"field\"\n [itemIndex]=\"$index\"\n [disabled]=\"disabled\"\n [showTooltip]=\"showTooltip\"\n [maxLengthRenderWithoutTooltip]=\"maxLengthRenderWithoutTooltip\"\n (clickRemove)=\"removeItem($event)\"\n (chipClicked)=\"onChipClicked($event)\">\n </s-chip-item>\n </li>\n }\n\n @if(keyFilter) {\n <input\n #input\n [disabled]=\"disabled || max === value.length\"\n [placeholder]=\"placeholder || ''\"\n [maxlength]=\"maxLength\"\n [id]=\"inputId\"\n [(ngModel)]=\"newItem\"\n [pKeyFilter]=\"keyFilter\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputLostFocus($event)\">\n }@else {\n <input\n #input\n [disabled]=\"disabled || max === value.length\"\n [placeholder]=\"placeholder || ''\"\n [maxlength]=\"maxLength\"\n [id]=\"inputId\"\n [(ngModel)]=\"newItem\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputLostFocus($event)\">\n }\n</ul>\n@if(infoLabel) {\n <span class=\"info-label\">\n {{ infoLabel }}\n </span>\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { KeyFilterModule } from 'primeng/keyfilter';\nimport { ChipItemComponent } from './chip-item/chip-item.component';\nimport { ChipsComponent } from './chips/chips.component';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { TooltipModule } from '@seniorsistemas/angular-components/tooltip';\n\n@NgModule({\n declarations: [ChipsComponent, ChipItemComponent],\n imports: [FormsModule, TooltipModule, KeyFilterModule, NgTemplateOutlet],\n exports: [ChipsComponent],\n})\nexport class ChipsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3.ChipItemComponent"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"seniorsistemas-angular-components-chips.mjs","sources":["../../projects/angular-components/chips/src/lib/chips/chip-item/chip-item.component.ts","../../projects/angular-components/chips/src/lib/chips/chip-item/chip-item.component.html","../../projects/angular-components/chips/src/lib/chips/chips/chips.component.ts","../../projects/angular-components/chips/src/lib/chips/chips/chips.component.html","../../projects/angular-components/chips/src/lib/chips/chips.module.ts","../../projects/angular-components/chips/src/seniorsistemas-angular-components-chips.ts"],"sourcesContent":["import { Component, EventEmitter, Input, Output, TemplateRef } from '@angular/core';\nimport { CheckDisabled } from '@seniorsistemas/angular-components/shared';\n@Component({\n selector: 's-chip-item',\n templateUrl: './chip-item.component.html',\n styleUrls: ['./chip-item.component.scss']\n})\nexport class ChipItemComponent {\n @Input({ required: true }) dataRender!: string | Object;\n @Input({ required: true }) objectField!: string;\n @Input({ required: true }) disabled = false;\n @Input() templateRef!: TemplateRef<any> | undefined\n @Input({ required: true }) itemIndex = -1;\n @Input({ required: true }) showTooltip = true;\n @Input({ required: true }) maxLengthRenderWithoutTooltip = 20;\n\n @Output() clickRemove = new EventEmitter<{ itemIndex: number, event: Event }>();\n @Output() chipClicked = new EventEmitter<{ event: Event, data: string | Object }>();\n\n @CheckDisabled()\n clickedRemove($event: Event) {\n this.clickRemove.emit({ itemIndex: this.itemIndex, event: $event });\n }\n @CheckDisabled()\n onChipClicked($event: Event) {\n this.chipClicked.emit({ event: $event, data: this.dataRender });\n }\n\n get _text() {\n const _text = this._rawText;\n return _text.substring(0, _text.length > this.maxLengthRenderWithoutTooltip ? this.maxLengthRenderWithoutTooltip : _text.length) + (_text.length > this.maxLengthRenderWithoutTooltip ? '...' : '');\n }\n\n get _rawText() {\n return this.objectField ? (this.dataRender as any)[this.objectField] || '' : this.dataRender || '';\n }\n}\n","<ng-template #itemRender>\n <div\n class=\"chip-item\"\n [class.chip-item-disabled]=\"disabled\"\n (click)=\"onChipClicked($event)\" \n [sTooltip]=\"_rawText\"\n [showDelay]=\"0\"\n [visible]=\"showTooltip ? _rawText.length > maxLengthRenderWithoutTooltip : false\">\n @if(templateRef) {\n <ng-container\n *ngTemplateOutlet=\"templateRef; context: { $implicit: dataRender, text: _text }\">\n </ng-container>\n } @else {\n {{ _text }}\n }\n <i class=\"fas fa-times\" (click)=\"clickedRemove($event)\"></i>\n </div>\n</ng-template>\n\n\n@if(objectField && !templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender;\"></ng-container>\n}\n\n@if(!objectField && !templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender;\"></ng-container>\n}\n\n@if(templateRef) {\n <ng-container *ngTemplateOutlet=\"itemRender\"></ng-container>\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n ElementRef,\n EventEmitter,\n forwardRef,\n HostListener,\n Input,\n Output,\n QueryList,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\n\nimport { KeyFilterPattern } from 'primeng/keyfilter';\n\nimport { ChipAddEvent, ChipClickEvent, ChipRemoveEvent } from '../models/chip-models';\nimport { TemplateDirective } from '@seniorsistemas/angular-components/template';\nimport { isNullOrUndefined, randomHash } from '@seniorsistemas/angular-components/utils';\nimport { CheckDisabled } from '@seniorsistemas/angular-components/shared';\n\n@Component({\n selector: 's-chips',\n templateUrl: './chips.component.html',\n styleUrls: ['./chips.component.scss'],\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => ChipsComponent),\n multi: true,\n },\n ],\n})\nexport class ChipsComponent implements AfterViewInit, ControlValueAccessor {\n public newItem = '';\n public chipTemplate?: TemplateRef<any>;\n\n @Input()\n public disabled = false;\n\n @Input()\n public field = '';\n\n @Input()\n public value: any[] = [];\n\n @Input()\n public placeholder: string | undefined;\n\n @Input()\n public max = Infinity;\n\n @Input()\n public maxLength = Infinity;\n\n @Input()\n public inputId = `chips-${randomHash()}`;\n\n @Input()\n public allowDuplicated = true;\n\n @Input()\n public caseSensitiveDuplication = false;\n\n @Input()\n public addOnTab = true;\n\n @Input()\n public addOnBlur = true;\n\n @Input()\n public separator = '';\n\n @Input()\n public autofocus = false;\n\n @Input()\n public infoLabel = '';\n\n @Input()\n public keyFilter?: RegExp | KeyFilterPattern;\n\n @Input()\n public showTooltip = true;\n\n @Input()\n public maxLengthRenderWithoutTooltip = 20;\n\n @Output()\n public added = new EventEmitter<ChipAddEvent>();\n\n @Output()\n public removed = new EventEmitter<ChipRemoveEvent>();\n\n @Output()\n public focused = new EventEmitter<FocusEvent>();\n\n @Output()\n public focusLost = new EventEmitter<FocusEvent>();\n\n @Output()\n public chipClicked = new EventEmitter<ChipClickEvent>();\n\n @Output()\n public valueChange = new EventEmitter<string[] | any[]>();\n\n @ContentChildren(TemplateDirective)\n private readonly templates: QueryList<TemplateDirective> | null = null;\n\n @ViewChild('input', { read: ElementRef })\n private readonly input: ElementRef<HTMLElement> | null = null;\n\n public isFocused = false;\n public onChange: (value: string[] | any[]) => void = () => { };\n public onTouched: (value: string[] | any[]) => void = () => { };\n\n private isTabEventActive = false;\n\n constructor(private readonly cdr: ChangeDetectorRef) { }\n\n public ngAfterViewInit(): void {\n if (this.autofocus && this.input) {\n this.input.nativeElement.focus();\n }\n if (this.templates) {\n this.chipTemplate = this.templates.find((x) => x.type === 'chip-container')?.template;\n this.cdr.detectChanges();\n }\n }\n\n public writeValue(obj: string[] | any[]): void {\n if (isNullOrUndefined(obj)) {\n obj = [];\n }\n this.value = obj;\n }\n\n public registerOnChange(fn: (value: string[] | any[]) => void): void {\n this.onChange = fn;\n }\n\n public registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n public setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n @HostListener('document:keydown', ['$event'])\n @CheckDisabled()\n public onKeydown($event: KeyboardEvent) {\n const isEnter = $event.key === 'Enter';\n const isSeparator = this.separator && $event.key === this.separator;\n const eventKeyIsTab = $event.key === 'Tab';\n if (eventKeyIsTab) {\n const tabTimeoutTime = 50;\n this.isTabEventActive = true;\n setTimeout(() => {\n this.isTabEventActive = false;\n }, tabTimeoutTime);\n }\n const isTab = this.addOnTab && eventKeyIsTab;\n if (isEnter || isSeparator || isTab) {\n $event.preventDefault();\n this.addItem();\n }\n }\n\n public onInputFocus($event: FocusEvent) {\n this.focused.emit($event);\n this.isFocused = true;\n }\n\n @CheckDisabled()\n public onInputLostFocus($event: FocusEvent) {\n this.isFocused = false;\n if (!this.addOnBlur || this.isTabEventActive) {\n return;\n }\n this.addItem();\n this.focusLost.emit($event);\n }\n\n public removeItem({ itemIndex, event }: { itemIndex: number; event: Event }) {\n const _removedItem = this.value[itemIndex];\n this.value.splice(itemIndex, 1);\n this.removed.emit({ value: _removedItem, originalEvent: event });\n }\n\n public onChipClicked({ event, data }: { event: Event; data: string | Object }) {\n this.chipClicked.emit({ value: data, originalEvent: event });\n }\n\n private addItem() {\n if (!this.hasValueToAdd()) {\n return;\n }\n if (this.isMaxReached()) {\n return;\n }\n if (!this.isValidItemLength()) {\n return;\n }\n const valueToAdd = this.getValueToAdd();\n if (!this.hasDuplicatedItem()) {\n this.storeValue(valueToAdd);\n }\n this.newItem = '';\n }\n\n private hasValueToAdd(): boolean {\n return !!this.newItem;\n }\n\n private isMaxReached(): boolean {\n return !!(this.max && this.value.length === this.max);\n }\n\n private isValidItemLength(): boolean {\n return this.maxLength ? this.newItem.length <= this.maxLength : true;\n }\n\n private getMappedValues(): string[] {\n return this.field ? this.value.map((x) => x[this.field]) : this.value;\n }\n\n private getValueToAdd(): any {\n return this.field ? { [this.field]: this.newItem } : this.newItem;\n }\n\n private hasDuplicatedItem(): boolean {\n if (this.allowDuplicated) {\n return false;\n }\n const mappedValues = this.getMappedValues();\n return !!mappedValues.find((x) => {\n if (this.caseSensitiveDuplication) {\n return x === this.newItem;\n } else {\n return x.toLowerCase() === this.newItem.toLowerCase();\n }\n });\n }\n\n private storeValue(value: any) {\n this.value = [...this.value, value];\n this.added.emit({ value });\n this.valueChange.emit(this.value);\n this.writeValue(this.value);\n this.onChange(this.value);\n this.onTouched(this.value);\n }\n}\n","<ul class=\"chips-container\" [class.chips-container--focused]=\"isFocused\">\n @for(item of value; track $index) {\n <li>\n <s-chip-item\n [templateRef]=\"chipTemplate\"\n [dataRender]=\"item\"\n [objectField]=\"field\"\n [itemIndex]=\"$index\"\n [disabled]=\"disabled\"\n [showTooltip]=\"showTooltip\"\n [maxLengthRenderWithoutTooltip]=\"maxLengthRenderWithoutTooltip\"\n (clickRemove)=\"removeItem($event)\"\n (chipClicked)=\"onChipClicked($event)\">\n </s-chip-item>\n </li>\n }\n\n @if(keyFilter) {\n <input\n #input\n [disabled]=\"disabled || max === value.length\"\n [placeholder]=\"placeholder || ''\"\n [maxlength]=\"maxLength\"\n [id]=\"inputId\"\n [(ngModel)]=\"newItem\"\n [pKeyFilter]=\"keyFilter\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputLostFocus($event)\">\n }@else {\n <input\n #input\n [disabled]=\"disabled || max === value.length\"\n [placeholder]=\"placeholder || ''\"\n [maxlength]=\"maxLength\"\n [id]=\"inputId\"\n [(ngModel)]=\"newItem\"\n (focus)=\"onInputFocus($event)\"\n (blur)=\"onInputLostFocus($event)\">\n }\n</ul>\n@if(infoLabel) {\n <span class=\"info-label\">\n {{ infoLabel }}\n </span>\n}\n","import { NgModule } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { KeyFilterModule } from 'primeng/keyfilter';\nimport { ChipItemComponent } from './chip-item/chip-item.component';\nimport { ChipsComponent } from './chips/chips.component';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { TooltipModule } from '@seniorsistemas/angular-components/tooltip';\n\n@NgModule({\n declarations: [ChipsComponent, ChipItemComponent],\n imports: [FormsModule, TooltipModule, KeyFilterModule, NgTemplateOutlet],\n exports: [ChipsComponent],\n})\nexport class ChipsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3.ChipItemComponent"],"mappings":"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"}
|