@wizishop/angular-components 15.1.114 → 15.1.116

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.
@@ -28,6 +28,8 @@ import * as i3$2 from 'ngx-scrollbar/reached-event';
28
28
  import { NgScrollbarReachedModule } from 'ngx-scrollbar/reached-event';
29
29
  import * as i2$2 from '@angular/cdk/drag-drop';
30
30
  import { moveItemInArray, DragDropModule } from '@angular/cdk/drag-drop';
31
+ import * as i3$3 from 'ngx-color-picker';
32
+ import { ColorPickerModule } from 'ngx-color-picker';
31
33
 
32
34
  class LoaderComponent {
33
35
  constructor() {
@@ -2126,6 +2128,7 @@ class TabsComponent {
2126
2128
  this.button = false;
2127
2129
  this.right = false;
2128
2130
  this.marginBottom = '30px';
2131
+ this.column = false;
2129
2132
  }
2130
2133
  ngAfterViewInit() {
2131
2134
  this.tabList$.next(this.tabList);
@@ -2167,14 +2170,14 @@ class TabsComponent {
2167
2170
  }
2168
2171
  }
2169
2172
  TabsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: TabsComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
2170
- TabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: TabsComponent, isStandalone: true, selector: "wac-tabs", inputs: { underline: "underline", button: "button", right: "right", marginBottom: "marginBottom" }, providers: [
2173
+ TabsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: TabsComponent, isStandalone: true, selector: "wac-tabs", inputs: { underline: "underline", button: "button", right: "right", marginBottom: "marginBottom", column: "column" }, providers: [
2171
2174
  { provide: NG_VALUE_ACCESSOR, useExisting: TabsComponent, multi: true },
2172
- ], queries: [{ propertyName: "tabList", predicate: TabComponent }], ngImport: i0, template: "<div class=\"wac-tabs\"\r\n *ngIf=\"((viewModel$ | async) || defaultViewModel ) as viewModel\"\r\n [ngClass]=\"{'wac-tabs--underline': underline, 'wac-tabs--button' : button, 'wac-tabs--right' : right}\"\r\n wzAutoHide\r\n (clickOutside)=\"listIsOpen$.next(false)\"\r\n [triggerElement]=\"'wac-select__header__selection'\"\r\n>\r\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__mobile\" (click)=\"openList($event)\">\r\n <div>{{ viewModel.selected?.label }}</div><i [class]=\"'fa-solid fa-caret-' + (viewModel.listIsOpen ? 'up' : 'down')\"></i>\r\n </div>\r\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__wrapper\" [ngClass]=\"{ 'open' : viewModel.listIsOpen }\" [ngStyle]=\"{'margin-bottom': marginBottom}\">\r\n <a\r\n *ngFor=\"let tab of tabList; let i = index\"\r\n class=\"wac-tabs__wrapper__tab\"\r\n [ngClass]=\"{'wac-tabs__wrapper__tab--selected': i === viewModel.index}\"\r\n (click)=\"index$.next(i); listIsOpen$.next(false)\"\r\n >\r\n {{ tab.label }}\r\n </a>\r\n </div>\r\n <wac-tab-body\r\n *ngFor=\"let tab of tabList; let i = index\"\r\n [content]=\"tab.content\"\r\n [active]=\"i === viewModel.index\"\r\n ></wac-tab-body>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: SharedDirectives }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "component", type: TabBodyComponent, selector: "wac-tab-body", inputs: ["content", "active"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2175
+ ], queries: [{ propertyName: "tabList", predicate: TabComponent }], ngImport: i0, template: "<div class=\"wac-tabs\"\r\n *ngIf=\"((viewModel$ | async) || defaultViewModel ) as viewModel\"\r\n [ngClass]=\"{'wac-tabs--underline': underline, 'wac-tabs--button' : button, 'wac-tabs--right' : right, 'wac-tabs--column' : column}\"\r\n wzAutoHide\r\n (clickOutside)=\"listIsOpen$.next(false)\"\r\n [triggerElement]=\"'wac-select__header__selection'\"\r\n>\r\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__mobile\" (click)=\"openList($event)\">\r\n <div>{{ viewModel.selected?.label }}</div><i [class]=\"'fa-solid fa-caret-' + (viewModel.listIsOpen ? 'up' : 'down')\"></i>\r\n </div>\r\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__wrapper\" [ngClass]=\"{ 'open' : viewModel.listIsOpen }\" [ngStyle]=\"{'margin-bottom': marginBottom}\">\r\n <a\r\n *ngFor=\"let tab of tabList; let i = index\"\r\n class=\"wac-tabs__wrapper__tab\"\r\n [ngClass]=\"{'wac-tabs__wrapper__tab--selected': i === viewModel.index}\"\r\n (click)=\"index$.next(i); listIsOpen$.next(false)\"\r\n >\r\n {{ tab.label }}\r\n </a>\r\n </div>\r\n <wac-tab-body\r\n *ngFor=\"let tab of tabList; let i = index\"\r\n [content]=\"tab.content\"\r\n [active]=\"i === viewModel.index\"\r\n ></wac-tab-body>\r\n</div>\r\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: SharedDirectives }, { kind: "directive", type: AutoHideDirective, selector: "[wzAutoHide]", inputs: ["triggerElement", "forceOn"], outputs: ["clickOutside"] }, { kind: "component", type: TabBodyComponent, selector: "wac-tab-body", inputs: ["content", "active"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
2173
2176
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: TabsComponent, decorators: [{
2174
2177
  type: Component,
2175
2178
  args: [{ selector: 'wac-tabs', encapsulation: ViewEncapsulation.None, standalone: true, imports: [CommonModule, FormsModule, TabComponent, SharedDirectives, TabBodyComponent], providers: [
2176
2179
  { provide: NG_VALUE_ACCESSOR, useExisting: TabsComponent, multi: true },
2177
- ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"wac-tabs\"\r\n *ngIf=\"((viewModel$ | async) || defaultViewModel ) as viewModel\"\r\n [ngClass]=\"{'wac-tabs--underline': underline, 'wac-tabs--button' : button, 'wac-tabs--right' : right}\"\r\n wzAutoHide\r\n (clickOutside)=\"listIsOpen$.next(false)\"\r\n [triggerElement]=\"'wac-select__header__selection'\"\r\n>\r\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__mobile\" (click)=\"openList($event)\">\r\n <div>{{ viewModel.selected?.label }}</div><i [class]=\"'fa-solid fa-caret-' + (viewModel.listIsOpen ? 'up' : 'down')\"></i>\r\n </div>\r\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__wrapper\" [ngClass]=\"{ 'open' : viewModel.listIsOpen }\" [ngStyle]=\"{'margin-bottom': marginBottom}\">\r\n <a\r\n *ngFor=\"let tab of tabList; let i = index\"\r\n class=\"wac-tabs__wrapper__tab\"\r\n [ngClass]=\"{'wac-tabs__wrapper__tab--selected': i === viewModel.index}\"\r\n (click)=\"index$.next(i); listIsOpen$.next(false)\"\r\n >\r\n {{ tab.label }}\r\n </a>\r\n </div>\r\n <wac-tab-body\r\n *ngFor=\"let tab of tabList; let i = index\"\r\n [content]=\"tab.content\"\r\n [active]=\"i === viewModel.index\"\r\n ></wac-tab-body>\r\n</div>\r\n" }]
2180
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"wac-tabs\"\r\n *ngIf=\"((viewModel$ | async) || defaultViewModel ) as viewModel\"\r\n [ngClass]=\"{'wac-tabs--underline': underline, 'wac-tabs--button' : button, 'wac-tabs--right' : right, 'wac-tabs--column' : column}\"\r\n wzAutoHide\r\n (clickOutside)=\"listIsOpen$.next(false)\"\r\n [triggerElement]=\"'wac-select__header__selection'\"\r\n>\r\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__mobile\" (click)=\"openList($event)\">\r\n <div>{{ viewModel.selected?.label }}</div><i [class]=\"'fa-solid fa-caret-' + (viewModel.listIsOpen ? 'up' : 'down')\"></i>\r\n </div>\r\n <div *ngIf=\"tabList.length > 1\" class=\"wac-tabs__wrapper\" [ngClass]=\"{ 'open' : viewModel.listIsOpen }\" [ngStyle]=\"{'margin-bottom': marginBottom}\">\r\n <a\r\n *ngFor=\"let tab of tabList; let i = index\"\r\n class=\"wac-tabs__wrapper__tab\"\r\n [ngClass]=\"{'wac-tabs__wrapper__tab--selected': i === viewModel.index}\"\r\n (click)=\"index$.next(i); listIsOpen$.next(false)\"\r\n >\r\n {{ tab.label }}\r\n </a>\r\n </div>\r\n <wac-tab-body\r\n *ngFor=\"let tab of tabList; let i = index\"\r\n [content]=\"tab.content\"\r\n [active]=\"i === viewModel.index\"\r\n ></wac-tab-body>\r\n</div>\r\n" }]
2178
2181
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { tabList: [{
2179
2182
  type: ContentChildren,
2180
2183
  args: [TabComponent]
@@ -2186,6 +2189,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
2186
2189
  type: Input
2187
2190
  }], marginBottom: [{
2188
2191
  type: Input
2192
+ }], column: [{
2193
+ type: Input
2189
2194
  }] } });
2190
2195
 
2191
2196
  class ButtonComponent {
@@ -6488,6 +6493,190 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
6488
6493
  type: Output
6489
6494
  }] } });
6490
6495
 
6496
+ class ColorPickerComponent {
6497
+ constructor() {
6498
+ this.value = '';
6499
+ this.gap = '12px';
6500
+ this.fontSize = '14px';
6501
+ this.colorChange = new EventEmitter();
6502
+ this.onChange = () => { };
6503
+ this.onTouched = () => { };
6504
+ }
6505
+ writeValue(value) {
6506
+ if (value !== undefined) {
6507
+ this.value = value;
6508
+ }
6509
+ }
6510
+ registerOnChange(fn) {
6511
+ this.onChange = fn;
6512
+ }
6513
+ registerOnTouched(fn) {
6514
+ this.onTouched = fn;
6515
+ }
6516
+ setValue(event) {
6517
+ this.value = event.target.value;
6518
+ this.onChange(this.value);
6519
+ this.colorChange.emit(this.value);
6520
+ }
6521
+ changeColor(color) {
6522
+ // Remove any non-hexadecimal characters
6523
+ color = color.replace(/[^a-fA-F0-9]/g, '');
6524
+ // Add '#' if not present
6525
+ if (!color.startsWith('#')) {
6526
+ color = '#' + color;
6527
+ }
6528
+ // Validate and update color
6529
+ if (this.isValidColor(color)) {
6530
+ this.value = color;
6531
+ this.onChange(this.value); // 🔥 AJOUT de cette ligne pour informer Angular du changement
6532
+ this.colorChange.emit(this.value);
6533
+ }
6534
+ else {
6535
+ // If invalid, reset to previous valid color
6536
+ this.colorChange.emit(this.value);
6537
+ }
6538
+ }
6539
+ isValidColor(color) {
6540
+ const s = new Option().style;
6541
+ s.color = color;
6542
+ return s.color !== '';
6543
+ }
6544
+ }
6545
+ ColorPickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: ColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6546
+ ColorPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: ColorPickerComponent, isStandalone: true, selector: "wac-color-picker", inputs: { label: "label", value: "value", gap: "gap", fontSize: "fontSize" }, outputs: { colorChange: "colorChange" }, providers: [
6547
+ {
6548
+ provide: NG_VALUE_ACCESSOR,
6549
+ useExisting: forwardRef(() => ColorPickerComponent),
6550
+ multi: true
6551
+ }
6552
+ ], ngImport: i0, template: "<div class=\"w-color-picker\" [ngStyle]=\"{'gap': gap}\">\r\n\r\n <label class=\"cp-label\" for=\"colorPicker\" [ngStyle]=\"{'font-size': fontSize}\">{{ label }}</label>\r\n\r\n <div class=\"w-input\">\r\n\r\n <div\r\n class=\"color-preview\"\r\n [colorPicker]=\"value\"\r\n (click)=\"colorPickerInput.openDialog()\"\r\n [ngStyle]=\"{'background-color': value}\"\r\n [cpPosition]=\"'bottom'\"\r\n [cpPositionOffset]=\"'-35'\"\r\n ></div>\r\n\r\n <input\r\n class=\"cp-input\"\r\n id=\"colorPicker\"\r\n #colorPickerInput=\"ngxColorPicker\"\r\n maxlength=\"7\"\r\n placeholder=\"#000000\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"changeColor($event)\"\r\n [colorPicker]=\"value\"\r\n (colorPickerChange)=\"changeColor($event)\"\r\n [cpPosition]=\"'bottom'\"\r\n [cpPositionOffset]=\"'-35'\"\r\n (input)=\"setValue($event)\"\r\n />\r\n\r\n </div>\r\n\r\n</div>\r\n", styles: [".w-color-picker{display:flex;flex-direction:column}.w-color-picker .cp-label{font-weight:500}.w-color-picker .w-input{width:210px;height:40px;display:flex;align-items:center;gap:10px;padding:5px;border:1px solid #dee2ed;border-radius:3px}.w-color-picker .w-input .color-preview{width:30px;height:30px;border:1px solid #dee2ed;border-radius:3px}.w-color-picker .w-input .cp-input{width:70%;height:100%;border:none;font-size:14px;color:#1d2a3b;font-weight:400}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ColorPickerModule }, { kind: "directive", type: i3$3.ColorPickerDirective, selector: "[colorPicker]", inputs: ["colorPicker", "cpWidth", "cpHeight", "cpToggle", "cpDisabled", "cpIgnoredElements", "cpFallbackColor", "cpColorMode", "cpCmykEnabled", "cpOutputFormat", "cpAlphaChannel", "cpDisableInput", "cpDialogDisplay", "cpSaveClickOutside", "cpCloseClickOutside", "cpUseRootViewContainer", "cpPosition", "cpPositionOffset", "cpPositionRelativeToArrow", "cpOKButton", "cpOKButtonText", "cpOKButtonClass", "cpCancelButton", "cpCancelButtonText", "cpCancelButtonClass", "cpEyeDropper", "cpPresetLabel", "cpPresetColors", "cpPresetColorsClass", "cpMaxPresetColorsLength", "cpPresetEmptyMessage", "cpPresetEmptyMessageClass", "cpAddColorButton", "cpAddColorButtonText", "cpAddColorButtonClass", "cpRemoveColorButtonClass", "cpArrowPosition", "cpExtraTemplate"], outputs: ["cpInputChange", "cpToggleChange", "cpSliderChange", "cpSliderDragEnd", "cpSliderDragStart", "colorPickerOpen", "colorPickerClose", "colorPickerCancel", "colorPickerSelect", "colorPickerChange", "cpCmykColorChange", "cpPresetColorsChange"], exportAs: ["ngxColorPicker"] }] });
6553
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: ColorPickerComponent, decorators: [{
6554
+ type: Component,
6555
+ args: [{ selector: "wac-color-picker", standalone: true, imports: [
6556
+ CommonModule,
6557
+ FormsModule,
6558
+ ColorPickerModule
6559
+ ], providers: [
6560
+ {
6561
+ provide: NG_VALUE_ACCESSOR,
6562
+ useExisting: forwardRef(() => ColorPickerComponent),
6563
+ multi: true
6564
+ }
6565
+ ], template: "<div class=\"w-color-picker\" [ngStyle]=\"{'gap': gap}\">\r\n\r\n <label class=\"cp-label\" for=\"colorPicker\" [ngStyle]=\"{'font-size': fontSize}\">{{ label }}</label>\r\n\r\n <div class=\"w-input\">\r\n\r\n <div\r\n class=\"color-preview\"\r\n [colorPicker]=\"value\"\r\n (click)=\"colorPickerInput.openDialog()\"\r\n [ngStyle]=\"{'background-color': value}\"\r\n [cpPosition]=\"'bottom'\"\r\n [cpPositionOffset]=\"'-35'\"\r\n ></div>\r\n\r\n <input\r\n class=\"cp-input\"\r\n id=\"colorPicker\"\r\n #colorPickerInput=\"ngxColorPicker\"\r\n maxlength=\"7\"\r\n placeholder=\"#000000\"\r\n [(ngModel)]=\"value\"\r\n (ngModelChange)=\"changeColor($event)\"\r\n [colorPicker]=\"value\"\r\n (colorPickerChange)=\"changeColor($event)\"\r\n [cpPosition]=\"'bottom'\"\r\n [cpPositionOffset]=\"'-35'\"\r\n (input)=\"setValue($event)\"\r\n />\r\n\r\n </div>\r\n\r\n</div>\r\n", styles: [".w-color-picker{display:flex;flex-direction:column}.w-color-picker .cp-label{font-weight:500}.w-color-picker .w-input{width:210px;height:40px;display:flex;align-items:center;gap:10px;padding:5px;border:1px solid #dee2ed;border-radius:3px}.w-color-picker .w-input .color-preview{width:30px;height:30px;border:1px solid #dee2ed;border-radius:3px}.w-color-picker .w-input .cp-input{width:70%;height:100%;border:none;font-size:14px;color:#1d2a3b;font-weight:400}\n"] }]
6566
+ }], ctorParameters: function () { return []; }, propDecorators: { label: [{
6567
+ type: Input
6568
+ }], value: [{
6569
+ type: Input
6570
+ }], gap: [{
6571
+ type: Input
6572
+ }], fontSize: [{
6573
+ type: Input
6574
+ }], colorChange: [{
6575
+ type: Output
6576
+ }] } });
6577
+
6578
+ class BorderPickerComponent {
6579
+ constructor() {
6580
+ this.gap = '12px';
6581
+ this.fontSize = '14px';
6582
+ this.borderRadius = '0px';
6583
+ this.firstBtnOption = 'Small';
6584
+ this.secondBtnOption = 'Medium';
6585
+ this.thirdBtnOption = 'Full';
6586
+ this.disabled = false;
6587
+ this.value = '';
6588
+ this.blurred = new EventEmitter();
6589
+ this.borderRadiusChange = new EventEmitter();
6590
+ this.showSlider = false;
6591
+ this.sliderValue = 0;
6592
+ this.onChange = () => { };
6593
+ this.onTouched = () => { };
6594
+ }
6595
+ writeValue(value) {
6596
+ if (value !== undefined) {
6597
+ this.value = value;
6598
+ }
6599
+ }
6600
+ registerOnChange(fn) {
6601
+ this.onChange = fn;
6602
+ }
6603
+ registerOnTouched(fn) {
6604
+ this.onTouched = fn;
6605
+ }
6606
+ setValue(event) {
6607
+ this.value = event.target.value;
6608
+ this.onChange(this.value);
6609
+ this.borderRadiusChange.emit(this.value);
6610
+ }
6611
+ onFocusOut() {
6612
+ }
6613
+ openSlider() {
6614
+ this.showSlider = true;
6615
+ this.sliderValue = parseInt(this.value.replace('px', ''), 10) || 0;
6616
+ }
6617
+ updateBorderRadius(value) {
6618
+ this.value = value + 'px';
6619
+ this.onChange(this.value); // Notifie Angular du changement
6620
+ this.borderRadiusChange.emit(this.value);
6621
+ }
6622
+ setBorderRadius(value) {
6623
+ this.sliderValue = value;
6624
+ this.updateBorderRadius(value);
6625
+ }
6626
+ onClickOutside(event) {
6627
+ const target = event.target;
6628
+ if (!target.closest('.w-input')) {
6629
+ this.showSlider = false;
6630
+ }
6631
+ }
6632
+ }
6633
+ BorderPickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BorderPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6634
+ BorderPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.5", type: BorderPickerComponent, isStandalone: true, selector: "wac-border-picker", inputs: { label: "label", gap: "gap", fontSize: "fontSize", borderRadius: "borderRadius", firstBtnOption: "firstBtnOption", secondBtnOption: "secondBtnOption", thirdBtnOption: "thirdBtnOption", disabled: "disabled", value: "value" }, outputs: { blurred: "blurred", borderRadiusChange: "borderRadiusChange" }, host: { listeners: { "document:click": "onClickOutside($event)" } }, providers: [
6635
+ {
6636
+ provide: NG_VALUE_ACCESSOR,
6637
+ useExisting: forwardRef(() => BorderPickerComponent),
6638
+ multi: true
6639
+ }
6640
+ ], ngImport: i0, template: "<div class=\"w-border-picker\" [ngStyle]=\"{'gap': gap}\">\r\n\r\n <label class=\"bp-label\" for=\"borderPicker\" [ngStyle]=\"{'font-size': fontSize}\">{{ label }}</label>\r\n\r\n <div class=\"w-input\">\r\n\r\n <div class=\"border-preview\" [ngStyle]=\"{'border-radius': value}\">\r\n <div class=\"mask1\"></div>\r\n <div class=\"mask2\"></div>\r\n </div>\r\n\r\n <input\r\n class=\"bp-input\"\r\n id=\"borderPicker\"\r\n placeholder=\"8px\"\r\n maxlength=\"5\"\r\n [(ngModel)]=\"value\"\r\n (focus)=\"openSlider()\"\r\n (ngModelChange)=\"onChange($event)\"\r\n [disabled]=\"disabled\"\r\n (focusout)=\"onFocusOut()\"\r\n (input)=\"setValue($event)\"\r\n />\r\n\r\n <div class=\"slider-popup\" *ngIf=\"showSlider\">\r\n\r\n <div class=\"slider\">\r\n <input\r\n type=\"range\"\r\n min=\"0\"\r\n max=\"100\"\r\n [(ngModel)]=\"sliderValue\"\r\n (ngModelChange)=\"updateBorderRadius($event)\"\r\n />\r\n <span>{{ sliderValue }}px</span>\r\n </div>\r\n\r\n <div class=\"preset-buttons\">\r\n <button (click)=\"setBorderRadius(4)\">{{ firstBtnOption }}</button>\r\n <button (click)=\"setBorderRadius(8)\">{{ secondBtnOption }}</button>\r\n <button (click)=\"setBorderRadius(100)\">{{ thirdBtnOption }}</button>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n</div>\r\n", styles: [".w-border-picker{display:flex;flex-direction:column}.w-border-picker .bp-label{font-weight:500}.w-border-picker .w-input{width:210px;height:40px;display:flex;align-items:center;gap:10px;padding:5px;border:1px solid #dee2ed;border-radius:3px;position:relative}.w-border-picker .w-input .border-preview{position:relative;width:30px;height:30px;border:2px solid #1d2a3b;border-radius:3px}.w-border-picker .w-input .border-preview .mask1,.w-border-picker .w-input .border-preview .mask2{background:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.w-border-picker .w-input .border-preview .mask1{width:30px;height:14px}.w-border-picker .w-input .border-preview .mask2{width:14px;height:30px}.w-border-picker .w-input .bp-input{width:70%;height:100%;border:none;font-size:14px;color:#1d2a3b;font-weight:400}.w-border-picker .w-input .slider-popup{flex-direction:column;position:absolute;top:50px;left:0;min-width:270px;background:white;border:1px solid #dee2ed;padding:10px;box-shadow:0 2px 10px #0000001a;z-index:10;display:flex;align-items:center;gap:10px}.w-border-picker .w-input .slider-popup:before{content:\"\";position:absolute;top:-20px;left:8px;border:10px solid transparent;border-bottom-color:#dee2ed}.w-border-picker .w-input .slider-popup .slider{width:100%;display:flex;align-items:center;gap:10px}.w-border-picker .w-input .slider-popup .slider input[type=range]{-webkit-appearance:none;width:100%;height:8px;background:#dee2ed;border-radius:5px;outline:none;opacity:.7;transition:opacity .2s}.w-border-picker .w-input .slider-popup .slider input[type=range]:hover{opacity:1}.w-border-picker .w-input .slider-popup .slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:#52aecd;cursor:pointer;border-radius:50%;box-shadow:0 0 2px #00000080}.w-border-picker .w-input .slider-popup .slider input[type=range]::-moz-range-thumb{width:20px;height:20px;background:#52aecd;cursor:pointer;border-radius:50%;box-shadow:0 0 2px #00000080}.w-border-picker .w-input .slider-popup .preset-buttons{display:flex;gap:10px;align-items:center}.w-border-picker .w-input .slider-popup .preset-buttons button{border:1px solid #dee2ed;background-color:#f5f5f5;color:#1d2a3b;font-size:14px;border-radius:12px;padding:5px 15px;cursor:pointer;transition:background-color .3s,box-shadow .3s}.w-border-picker .w-input .slider-popup .preset-buttons button:hover{background-color:#e0e0e0;box-shadow:0 2px 5px #0000001a}.w-border-picker .w-input .slider-popup .preset-buttons button:active{background-color:#d0d0d0;box-shadow:inset 0 2px 5px #0003}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.RangeValueAccessor, selector: "input[type=range][formControlName],input[type=range][formControl],input[type=range][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
6641
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: BorderPickerComponent, decorators: [{
6642
+ type: Component,
6643
+ args: [{ selector: "wac-border-picker", standalone: true, imports: [
6644
+ CommonModule,
6645
+ FormsModule,
6646
+ ], providers: [
6647
+ {
6648
+ provide: NG_VALUE_ACCESSOR,
6649
+ useExisting: forwardRef(() => BorderPickerComponent),
6650
+ multi: true
6651
+ }
6652
+ ], template: "<div class=\"w-border-picker\" [ngStyle]=\"{'gap': gap}\">\r\n\r\n <label class=\"bp-label\" for=\"borderPicker\" [ngStyle]=\"{'font-size': fontSize}\">{{ label }}</label>\r\n\r\n <div class=\"w-input\">\r\n\r\n <div class=\"border-preview\" [ngStyle]=\"{'border-radius': value}\">\r\n <div class=\"mask1\"></div>\r\n <div class=\"mask2\"></div>\r\n </div>\r\n\r\n <input\r\n class=\"bp-input\"\r\n id=\"borderPicker\"\r\n placeholder=\"8px\"\r\n maxlength=\"5\"\r\n [(ngModel)]=\"value\"\r\n (focus)=\"openSlider()\"\r\n (ngModelChange)=\"onChange($event)\"\r\n [disabled]=\"disabled\"\r\n (focusout)=\"onFocusOut()\"\r\n (input)=\"setValue($event)\"\r\n />\r\n\r\n <div class=\"slider-popup\" *ngIf=\"showSlider\">\r\n\r\n <div class=\"slider\">\r\n <input\r\n type=\"range\"\r\n min=\"0\"\r\n max=\"100\"\r\n [(ngModel)]=\"sliderValue\"\r\n (ngModelChange)=\"updateBorderRadius($event)\"\r\n />\r\n <span>{{ sliderValue }}px</span>\r\n </div>\r\n\r\n <div class=\"preset-buttons\">\r\n <button (click)=\"setBorderRadius(4)\">{{ firstBtnOption }}</button>\r\n <button (click)=\"setBorderRadius(8)\">{{ secondBtnOption }}</button>\r\n <button (click)=\"setBorderRadius(100)\">{{ thirdBtnOption }}</button>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n</div>\r\n", styles: [".w-border-picker{display:flex;flex-direction:column}.w-border-picker .bp-label{font-weight:500}.w-border-picker .w-input{width:210px;height:40px;display:flex;align-items:center;gap:10px;padding:5px;border:1px solid #dee2ed;border-radius:3px;position:relative}.w-border-picker .w-input .border-preview{position:relative;width:30px;height:30px;border:2px solid #1d2a3b;border-radius:3px}.w-border-picker .w-input .border-preview .mask1,.w-border-picker .w-input .border-preview .mask2{background:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.w-border-picker .w-input .border-preview .mask1{width:30px;height:14px}.w-border-picker .w-input .border-preview .mask2{width:14px;height:30px}.w-border-picker .w-input .bp-input{width:70%;height:100%;border:none;font-size:14px;color:#1d2a3b;font-weight:400}.w-border-picker .w-input .slider-popup{flex-direction:column;position:absolute;top:50px;left:0;min-width:270px;background:white;border:1px solid #dee2ed;padding:10px;box-shadow:0 2px 10px #0000001a;z-index:10;display:flex;align-items:center;gap:10px}.w-border-picker .w-input .slider-popup:before{content:\"\";position:absolute;top:-20px;left:8px;border:10px solid transparent;border-bottom-color:#dee2ed}.w-border-picker .w-input .slider-popup .slider{width:100%;display:flex;align-items:center;gap:10px}.w-border-picker .w-input .slider-popup .slider input[type=range]{-webkit-appearance:none;width:100%;height:8px;background:#dee2ed;border-radius:5px;outline:none;opacity:.7;transition:opacity .2s}.w-border-picker .w-input .slider-popup .slider input[type=range]:hover{opacity:1}.w-border-picker .w-input .slider-popup .slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;background:#52aecd;cursor:pointer;border-radius:50%;box-shadow:0 0 2px #00000080}.w-border-picker .w-input .slider-popup .slider input[type=range]::-moz-range-thumb{width:20px;height:20px;background:#52aecd;cursor:pointer;border-radius:50%;box-shadow:0 0 2px #00000080}.w-border-picker .w-input .slider-popup .preset-buttons{display:flex;gap:10px;align-items:center}.w-border-picker .w-input .slider-popup .preset-buttons button{border:1px solid #dee2ed;background-color:#f5f5f5;color:#1d2a3b;font-size:14px;border-radius:12px;padding:5px 15px;cursor:pointer;transition:background-color .3s,box-shadow .3s}.w-border-picker .w-input .slider-popup .preset-buttons button:hover{background-color:#e0e0e0;box-shadow:0 2px 5px #0000001a}.w-border-picker .w-input .slider-popup .preset-buttons button:active{background-color:#d0d0d0;box-shadow:inset 0 2px 5px #0003}\n"] }]
6653
+ }], ctorParameters: function () { return []; }, propDecorators: { label: [{
6654
+ type: Input
6655
+ }], gap: [{
6656
+ type: Input
6657
+ }], fontSize: [{
6658
+ type: Input
6659
+ }], borderRadius: [{
6660
+ type: Input
6661
+ }], firstBtnOption: [{
6662
+ type: Input
6663
+ }], secondBtnOption: [{
6664
+ type: Input
6665
+ }], thirdBtnOption: [{
6666
+ type: Input
6667
+ }], disabled: [{
6668
+ type: Input
6669
+ }], value: [{
6670
+ type: Input
6671
+ }], blurred: [{
6672
+ type: Output
6673
+ }], borderRadiusChange: [{
6674
+ type: Output
6675
+ }], onClickOutside: [{
6676
+ type: HostListener,
6677
+ args: ['document:click', ['$event']]
6678
+ }] } });
6679
+
6491
6680
  const components = [
6492
6681
  TagComponent,
6493
6682
  ButtonComponent,
@@ -6579,6 +6768,8 @@ const standaloneComponents = [
6579
6768
  InputWithSelectComponent,
6580
6769
  BlockTitleLegacyComponent,
6581
6770
  BlockSeparatorComponent,
6771
+ ColorPickerComponent,
6772
+ BorderPickerComponent
6582
6773
  ];
6583
6774
  class SharedComponentsModule {
6584
6775
  }
@@ -6666,7 +6857,8 @@ SharedComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
6666
6857
  NgScrollbarModule,
6667
6858
  NgScrollbarReachedModule,
6668
6859
  TreeModule,
6669
- ExpansionModule, TabsComponent,
6860
+ ExpansionModule,
6861
+ ColorPickerModule, TabsComponent,
6670
6862
  TabComponent,
6671
6863
  SnackbarComponent,
6672
6864
  BlockComponent,
@@ -6677,7 +6869,9 @@ SharedComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
6677
6869
  InputSearchComponent,
6678
6870
  InputWithSelectComponent,
6679
6871
  BlockTitleLegacyComponent,
6680
- BlockSeparatorComponent], exports: [TagComponent,
6872
+ BlockSeparatorComponent,
6873
+ ColorPickerComponent,
6874
+ BorderPickerComponent], exports: [TagComponent,
6681
6875
  ButtonComponent,
6682
6876
  InfoComponent,
6683
6877
  SettingsComponent,
@@ -6759,7 +6953,9 @@ SharedComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0",
6759
6953
  InputSearchComponent,
6760
6954
  InputWithSelectComponent,
6761
6955
  BlockTitleLegacyComponent,
6762
- BlockSeparatorComponent] });
6956
+ BlockSeparatorComponent,
6957
+ ColorPickerComponent,
6958
+ BorderPickerComponent] });
6763
6959
  SharedComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: SharedComponentsModule, imports: [CommonModule,
6764
6960
  FormsModule,
6765
6961
  NwbAllModule,
@@ -6781,7 +6977,8 @@ SharedComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
6781
6977
  NgScrollbarModule,
6782
6978
  NgScrollbarReachedModule,
6783
6979
  TreeModule,
6784
- ExpansionModule, standaloneComponents] });
6980
+ ExpansionModule,
6981
+ ColorPickerModule, standaloneComponents] });
6785
6982
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImport: i0, type: SharedComponentsModule, decorators: [{
6786
6983
  type: NgModule,
6787
6984
  args: [{
@@ -6808,6 +7005,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.5", ngImpor
6808
7005
  NgScrollbarReachedModule,
6809
7006
  TreeModule,
6810
7007
  ExpansionModule,
7008
+ ColorPickerModule,
6811
7009
  ...standaloneComponents
6812
7010
  ],
6813
7011
  declarations: components,
@@ -7006,5 +7204,5 @@ const switchInOut = trigger('switchInOut', [
7006
7204
  * Generated bundle index. Do not edit.
7007
7205
  */
7008
7206
 
7009
- export { ACCORDION_ITEM, AbstractDebounceDirective, AccordionComponent, AiExpressComponent, AlertComponent, AlertPopupComponent, AlertPopupModule, AlertPopupService, AreAllOptionsSelectedPipe, AutoHideDirective, BackComponent, BlockComponent, BlockSeparatorComponent, BlockTitleLegacyComponent, BlockWithCheckboxComponent, BreadcrumbsComponent, ButtonComponent, CalendarComponent, CallComponentFunctionPipe, CardPriceComponent, ChargingBarComponent, CheckBoxRow, CheckboxComponent, ColumnComponent, ConfirmDeleteComponent, ContentWithButtonsComponent, CopyToClipBoardDirective, DebounceKeyupDirective, DeleteComponent, DomChangedDirective, DraganddropListComponent, DropdownComponent, EXPANSION_PANEL_HEADER, ExpandedPanelComponent, ExpansionExport, ExpansionModule, ExpansionPanelComponent, ExpansionPanelDirective, ExpansionPanelHeaderComponent, ExpansionPanelHeaderDirective, FilterOptionsPipe, FiltersComponent, FiltersTableService, FindOptionSelectedPipe, FormatObjectToRecursifTreePipe, FormatObjectToSimpleTreePipe, FreePopinComponent, GooglePreviewComponent, H1Component, H2Component, H3Component, H4Component, HeaderPageComponent, HistoryService, HtmlContainer, ImageComponent, InfoComponent, InputComponent, InputSearchComponent, InputWithSelectComponent, KeypressEnterDirective, LabelComponent, LinkComponent, LoaderComponent, LogoComponent, MosaicComponent, MultipleSearchComponent, MultipleSearchPlusComponent, OnlyNumberDirective, OptionCallToActionComponent, OptionComponent, OptionalDisableContainerComponent, PaginationComponent, PlaceholderComponent, PopinComponent, ProgressBarComponent, RadioComponent, RadioDirective, RadioGroupDirective$1 as RadioGroupDirective, RadioLegacyComponent, RadioOptionComponent, RowComponent, ScrollToDirective, SearchComponent, SelectComponent, SelectDirective, SelectFiltersPipe, SelectInTextComponent, SelectOptionDirective, SelectSearchTriggerComponent, SelectedListComponent, SeparatorComponent, SettingsComponent, SharedComponentsModule, SharedDirectives, SharedPipes, SnackbarComponent, StateComponent, SummaryComponent, SwitchComponent, TabComponent, TableColumn, TableColumnHeader, TableComponent, TableFiltersGroup, TableRow, TabsComponent, TagComponent, TagDropdownComponent, TagLabelComponent, TextAreaComponent, TextComponent, TokenCheckComponent, TooltipComponent, TreeComponent, TreeModule, TwoDigitDecimalNumberDirective, UploadComponent, ValueChangeService, VarDirective, WiziComponentsModule, WrapperBlocsComponent, WrapperComponent, WrapperMultipleBlockComponent, WrapperSidebarComponent, WzEditInPlaceComponent, ZindexToggleDirective, animateListFromBottom, animateListFromLeft, animateListFromRight, animateListFromTop, distinctUntilTableFiltersChanged, inOutX, inOutY, opacityAnimation, showFromBottom, showFromLeft, showFromRight, showFromTop, switchInOut, updateTableFiltersTotalItems, uuid };
7207
+ export { ACCORDION_ITEM, AbstractDebounceDirective, AccordionComponent, AiExpressComponent, AlertComponent, AlertPopupComponent, AlertPopupModule, AlertPopupService, AreAllOptionsSelectedPipe, AutoHideDirective, BackComponent, BlockComponent, BlockSeparatorComponent, BlockTitleLegacyComponent, BlockWithCheckboxComponent, BorderPickerComponent, BreadcrumbsComponent, ButtonComponent, CalendarComponent, CallComponentFunctionPipe, CardPriceComponent, ChargingBarComponent, CheckBoxRow, CheckboxComponent, ColorPickerComponent, ColumnComponent, ConfirmDeleteComponent, ContentWithButtonsComponent, CopyToClipBoardDirective, DebounceKeyupDirective, DeleteComponent, DomChangedDirective, DraganddropListComponent, DropdownComponent, EXPANSION_PANEL_HEADER, ExpandedPanelComponent, ExpansionExport, ExpansionModule, ExpansionPanelComponent, ExpansionPanelDirective, ExpansionPanelHeaderComponent, ExpansionPanelHeaderDirective, FilterOptionsPipe, FiltersComponent, FiltersTableService, FindOptionSelectedPipe, FormatObjectToRecursifTreePipe, FormatObjectToSimpleTreePipe, FreePopinComponent, GooglePreviewComponent, H1Component, H2Component, H3Component, H4Component, HeaderPageComponent, HistoryService, HtmlContainer, ImageComponent, InfoComponent, InputComponent, InputSearchComponent, InputWithSelectComponent, KeypressEnterDirective, LabelComponent, LinkComponent, LoaderComponent, LogoComponent, MosaicComponent, MultipleSearchComponent, MultipleSearchPlusComponent, OnlyNumberDirective, OptionCallToActionComponent, OptionComponent, OptionalDisableContainerComponent, PaginationComponent, PlaceholderComponent, PopinComponent, ProgressBarComponent, RadioComponent, RadioDirective, RadioGroupDirective$1 as RadioGroupDirective, RadioLegacyComponent, RadioOptionComponent, RowComponent, ScrollToDirective, SearchComponent, SelectComponent, SelectDirective, SelectFiltersPipe, SelectInTextComponent, SelectOptionDirective, SelectSearchTriggerComponent, SelectedListComponent, SeparatorComponent, SettingsComponent, SharedComponentsModule, SharedDirectives, SharedPipes, SnackbarComponent, StateComponent, SummaryComponent, SwitchComponent, TabComponent, TableColumn, TableColumnHeader, TableComponent, TableFiltersGroup, TableRow, TabsComponent, TagComponent, TagDropdownComponent, TagLabelComponent, TextAreaComponent, TextComponent, TokenCheckComponent, TooltipComponent, TreeComponent, TreeModule, TwoDigitDecimalNumberDirective, UploadComponent, ValueChangeService, VarDirective, WiziComponentsModule, WrapperBlocsComponent, WrapperComponent, WrapperMultipleBlockComponent, WrapperSidebarComponent, WzEditInPlaceComponent, ZindexToggleDirective, animateListFromBottom, animateListFromLeft, animateListFromRight, animateListFromTop, distinctUntilTableFiltersChanged, inOutX, inOutY, opacityAnimation, showFromBottom, showFromLeft, showFromRight, showFromTop, switchInOut, updateTableFiltersTotalItems, uuid };
7010
7208
  //# sourceMappingURL=wizishop-angular-components.mjs.map