ngwr 1.3.0 → 2.0.0

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.
Files changed (84) hide show
  1. package/LICENSE +3 -3
  2. package/_grid.scss +2 -0
  3. package/_index.scss +1 -1
  4. package/button/{button.d.ts → button.component.d.ts} +7 -2
  5. package/button/button.module.d.ts +7 -0
  6. package/button/button.scss +75 -75
  7. package/button/index.d.ts +2 -2
  8. package/checkbox/{checkbox.d.ts → checkbox.component.d.ts} +2 -2
  9. package/checkbox/checkbox.module.d.ts +7 -0
  10. package/checkbox/index.d.ts +2 -2
  11. package/divider/{divider.d.ts → divider.component.d.ts} +2 -2
  12. package/divider/{divider-module.d.ts → divider.module.d.ts} +2 -2
  13. package/divider/divider.scss +8 -4
  14. package/divider/index.d.ts +2 -2
  15. package/esm2022/button/button.component.mjs +202 -0
  16. package/esm2022/button/button.module.mjs +16 -0
  17. package/esm2022/button/index.mjs +3 -3
  18. package/esm2022/checkbox/checkbox.component.mjs +154 -0
  19. package/esm2022/checkbox/checkbox.module.mjs +16 -0
  20. package/esm2022/checkbox/index.mjs +3 -3
  21. package/esm2022/core/abstract/base.mjs +3 -3
  22. package/esm2022/core/overlay/connected-overlay-directive.mjs +5 -5
  23. package/esm2022/core/overlay/overlay-module.mjs +4 -4
  24. package/esm2022/dialog/dialog-base.mjs +4 -4
  25. package/esm2022/dialog/dialog-container.mjs +5 -5
  26. package/esm2022/dialog/dialog-content-directives.mjs +16 -16
  27. package/esm2022/dialog/dialog-module.mjs +4 -4
  28. package/esm2022/dialog/dialog-service.mjs +5 -5
  29. package/esm2022/divider/divider.component.mjs +101 -0
  30. package/esm2022/divider/divider.module.mjs +16 -0
  31. package/esm2022/divider/index.mjs +3 -3
  32. package/esm2022/form/form-error.mjs +3 -3
  33. package/esm2022/form/form-item.mjs +5 -5
  34. package/esm2022/form/form-module.mjs +4 -4
  35. package/esm2022/icon/icon-module.mjs +4 -4
  36. package/esm2022/icon/icon-service.mjs +3 -3
  37. package/esm2022/icon/icon.mjs +6 -6
  38. package/esm2022/input/input-module.mjs +4 -4
  39. package/esm2022/input/input.mjs +5 -5
  40. package/esm2022/qrcode/qrcode-module.mjs +4 -4
  41. package/esm2022/qrcode/qrcode.mjs +6 -6
  42. package/esm2022/skeleton/skeleton-module.mjs +4 -4
  43. package/esm2022/skeleton/skeleton.mjs +3 -3
  44. package/esm2022/spinner/spinner-module.mjs +4 -4
  45. package/esm2022/spinner/spinner.mjs +3 -3
  46. package/esm2022/tag/tag-module.mjs +4 -4
  47. package/esm2022/tag/tag.mjs +3 -3
  48. package/esm2022/tooltip/tooltip-component.mjs +5 -5
  49. package/esm2022/tooltip/tooltip-directive.mjs +5 -5
  50. package/esm2022/tooltip/tooltip-module.mjs +4 -4
  51. package/fesm2022/ngwr-button.mjs +41 -30
  52. package/fesm2022/ngwr-button.mjs.map +1 -1
  53. package/fesm2022/ngwr-checkbox.mjs +14 -17
  54. package/fesm2022/ngwr-checkbox.mjs.map +1 -1
  55. package/fesm2022/ngwr-core-abstract.mjs +3 -3
  56. package/fesm2022/ngwr-core-overlay.mjs +8 -8
  57. package/fesm2022/ngwr-core-overlay.mjs.map +1 -1
  58. package/fesm2022/ngwr-dialog.mjs +33 -33
  59. package/fesm2022/ngwr-dialog.mjs.map +1 -1
  60. package/fesm2022/ngwr-divider.mjs +11 -10
  61. package/fesm2022/ngwr-divider.mjs.map +1 -1
  62. package/fesm2022/ngwr-form.mjs +11 -11
  63. package/fesm2022/ngwr-form.mjs.map +1 -1
  64. package/fesm2022/ngwr-icon.mjs +12 -12
  65. package/fesm2022/ngwr-icon.mjs.map +1 -1
  66. package/fesm2022/ngwr-input.mjs +8 -8
  67. package/fesm2022/ngwr-input.mjs.map +1 -1
  68. package/fesm2022/ngwr-qrcode.mjs +9 -9
  69. package/fesm2022/ngwr-qrcode.mjs.map +1 -1
  70. package/fesm2022/ngwr-skeleton.mjs +7 -7
  71. package/fesm2022/ngwr-spinner.mjs +7 -7
  72. package/fesm2022/ngwr-tag.mjs +7 -7
  73. package/fesm2022/ngwr-tooltip.mjs +12 -12
  74. package/fesm2022/ngwr-tooltip.mjs.map +1 -1
  75. package/package.json +36 -33
  76. package/styles/root.scss +19 -10
  77. package/button/button-module.d.ts +0 -10
  78. package/checkbox/checkbox-module.d.ts +0 -10
  79. package/esm2022/button/button-module.mjs +0 -20
  80. package/esm2022/button/button.mjs +0 -187
  81. package/esm2022/checkbox/checkbox-module.mjs +0 -20
  82. package/esm2022/checkbox/checkbox.mjs +0 -154
  83. package/esm2022/divider/divider-module.mjs +0 -16
  84. package/esm2022/divider/divider.mjs +0 -100
@@ -79,13 +79,13 @@ class WrTooltipComponent {
79
79
  this.hide();
80
80
  }
81
81
  }
82
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrTooltipComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
83
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: WrTooltipComponent, selector: "wr-tooltip", inputs: { message: "message", trigger: "trigger", visible: "visible", origin: "origin", position: "position" }, viewQueries: [{ propertyName: "overlay", first: true, predicate: ["overlay"], descendants: true }], ngImport: i0, template: "<ng-template\n #overlay=\"cdkConnectedOverlay\"\n cdkConnectedOverlay\n wrConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"visible\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayPush]=\"true\"\n [wrArrowPointAtCenter]=\"false\"\n (overlayOutsideClick)=\"onClickOutside($event)\"\n (detach)=\"hide()\"\n (positionChange)=\"onPositionChange($event)\"\n>\n <div class=\"wr-tooltip wr-tooltip--{{ position }}\">\n <div class=\"wr-tooltip__wrapper\">\n <div class=\"wr-tooltip__title\">{{ message }}</div>\n <div class=\"wr-tooltip__arrow\"></div>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i2.WrConnectedOverlayDirective, selector: "[cdkConnectedOverlay][wrConnectedOverlay]", inputs: ["wrArrowPointAtCenter"], exportAs: ["wrConnectedOverlay"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
82
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: WrTooltipComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
83
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.9", type: WrTooltipComponent, selector: "wr-tooltip", inputs: { message: "message", trigger: "trigger", visible: "visible", origin: "origin", position: "position" }, viewQueries: [{ propertyName: "overlay", first: true, predicate: ["overlay"], descendants: true }], ngImport: i0, template: "<ng-template\n #overlay=\"cdkConnectedOverlay\"\n cdkConnectedOverlay\n wrConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"visible\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayPush]=\"true\"\n [wrArrowPointAtCenter]=\"false\"\n (overlayOutsideClick)=\"onClickOutside($event)\"\n (detach)=\"hide()\"\n (positionChange)=\"onPositionChange($event)\"\n>\n <div class=\"wr-tooltip wr-tooltip--{{ position }}\">\n <div class=\"wr-tooltip__wrapper\">\n <div class=\"wr-tooltip__title\">{{ message }}</div>\n <div class=\"wr-tooltip__arrow\"></div>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }, { kind: "directive", type: i2.WrConnectedOverlayDirective, selector: "[cdkConnectedOverlay][wrConnectedOverlay]", inputs: ["wrArrowPointAtCenter"], exportAs: ["wrConnectedOverlay"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
84
84
  }
85
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrTooltipComponent, decorators: [{
85
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: WrTooltipComponent, decorators: [{
86
86
  type: Component,
87
87
  args: [{ selector: 'wr-tooltip', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, preserveWhitespaces: false, template: "<ng-template\n #overlay=\"cdkConnectedOverlay\"\n cdkConnectedOverlay\n wrConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"visible\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayPush]=\"true\"\n [wrArrowPointAtCenter]=\"false\"\n (overlayOutsideClick)=\"onClickOutside($event)\"\n (detach)=\"hide()\"\n (positionChange)=\"onPositionChange($event)\"\n>\n <div class=\"wr-tooltip wr-tooltip--{{ position }}\">\n <div class=\"wr-tooltip__wrapper\">\n <div class=\"wr-tooltip__title\">{{ message }}</div>\n <div class=\"wr-tooltip__arrow\"></div>\n </div>\n </div>\n</ng-template>\n" }]
88
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { overlay: [{
88
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { overlay: [{
89
89
  type: ViewChild,
90
90
  args: ['overlay', { static: false }]
91
91
  }], message: [{
@@ -157,16 +157,16 @@ class WrTooltipDirective {
157
157
  isEnter && isOrigin ? this.onTooltipShow() : this.onTooltipHide();
158
158
  }
159
159
  }
160
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrTooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
161
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.3", type: WrTooltipDirective, selector: "[wrTooltip]", inputs: { message: ["wrTooltip", "message"], trigger: "trigger" }, host: { listeners: { "click": "onClick($event)", "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" } }, exportAs: ["wrTooltip"], ngImport: i0 }); }
160
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: WrTooltipDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
161
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.9", type: WrTooltipDirective, selector: "[wrTooltip]", inputs: { message: ["wrTooltip", "message"], trigger: "trigger" }, host: { listeners: { "click": "onClick($event)", "mouseenter": "onMouseEnter()", "mouseleave": "onMouseLeave()" } }, exportAs: ["wrTooltip"], ngImport: i0 }); }
162
162
  }
163
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrTooltipDirective, decorators: [{
163
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: WrTooltipDirective, decorators: [{
164
164
  type: Directive,
165
165
  args: [{
166
166
  selector: '[wrTooltip]',
167
167
  exportAs: 'wrTooltip',
168
168
  }]
169
- }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }]; }, propDecorators: { message: [{
169
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ViewContainerRef }], propDecorators: { message: [{
170
170
  type: Input,
171
171
  args: ['wrTooltip']
172
172
  }], trigger: [{
@@ -183,11 +183,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImpor
183
183
  }] } });
184
184
 
185
185
  class WrTooltipModule {
186
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
187
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: WrTooltipModule, declarations: [WrTooltipComponent, WrTooltipDirective], imports: [CommonModule, OverlayModule, WrOverlayModule], exports: [WrTooltipComponent, WrTooltipDirective] }); }
188
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrTooltipModule, imports: [CommonModule, OverlayModule, WrOverlayModule] }); }
186
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: WrTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
187
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.9", ngImport: i0, type: WrTooltipModule, declarations: [WrTooltipComponent, WrTooltipDirective], imports: [CommonModule, OverlayModule, WrOverlayModule], exports: [WrTooltipComponent, WrTooltipDirective] }); }
188
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: WrTooltipModule, imports: [CommonModule, OverlayModule, WrOverlayModule] }); }
189
189
  }
190
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrTooltipModule, decorators: [{
190
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.9", ngImport: i0, type: WrTooltipModule, decorators: [{
191
191
  type: NgModule,
192
192
  args: [{
193
193
  imports: [CommonModule, OverlayModule, WrOverlayModule],
@@ -1 +1 @@
1
- {"version":3,"file":"ngwr-tooltip.mjs","sources":["../../../projects/lib/tooltip/tooltip-default-positions.ts","../../../projects/lib/tooltip/tooltip-component.ts","../../../projects/lib/tooltip/tooltip.html","../../../projects/lib/tooltip/tooltip-directive.ts","../../../projects/lib/tooltip/tooltip-module.ts","../../../projects/lib/tooltip/ngwr-tooltip.ts"],"sourcesContent":["import { WR_POSITION_MAP } from 'ngwr/core/overlay';\n\nexport const WR_TOOLTIP_DEFAULT_POSITIONS = [\n WR_POSITION_MAP.top,\n WR_POSITION_MAP.bottom,\n WR_POSITION_MAP.right,\n WR_POSITION_MAP.left,\n];\n","import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { CdkConnectedOverlay, ConnectedOverlayPositionChange, ConnectionPositionPair } from '@angular/cdk/overlay';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Input,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { getPlacementName } from 'ngwr/core/overlay';\n\nimport { WR_TOOLTIP_DEFAULT_POSITIONS } from './tooltip-default-positions';\nimport { WrTooltipTrigger } from './tooltip-trigger';\n\n@Component({\n selector: 'wr-tooltip',\n templateUrl: './tooltip.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n})\nexport class WrTooltipComponent {\n @ViewChild('overlay', { static: false }) overlay!: CdkConnectedOverlay;\n\n @Input()\n get message(): string | null {\n return this._message;\n }\n set message(value: string | null) {\n this._message = String(value);\n this.cdr.markForCheck();\n }\n private _message: string | null = null;\n\n @Input()\n get trigger(): WrTooltipTrigger {\n return this._trigger;\n }\n set trigger(value: WrTooltipTrigger) {\n this._trigger = value;\n this.cdr.markForCheck();\n }\n private _trigger: WrTooltipTrigger = 'hover';\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n const visible = coerceBooleanProperty(value);\n\n if (this._visible !== visible) {\n this._visible = visible;\n this.cdr.markForCheck();\n }\n }\n private _visible: boolean = false;\n\n @Input()\n get origin(): ElementRef {\n return this._origin;\n }\n set origin(value: ElementRef) {\n this._origin = value;\n this.cdr.markForCheck();\n }\n private _origin!: ElementRef;\n\n @Input()\n get position(): string {\n return this._position;\n }\n set position(value: string) {\n this._position = value;\n this.cdr.markForCheck();\n }\n private _position: string = 'top';\n\n readonly positions: ConnectionPositionPair[] = WR_TOOLTIP_DEFAULT_POSITIONS;\n\n constructor(private readonly cdr: ChangeDetectorRef) {}\n\n show(): void {\n if (!this.visible && this.message) {\n this.visible = true;\n }\n }\n\n hide(): void {\n if (this.visible) {\n this.visible = false;\n }\n }\n\n onPositionChange(position: ConnectedOverlayPositionChange): void {\n this.position = getPlacementName(position)!;\n }\n\n onClickOutside(event: MouseEvent): void {\n if (!this.origin.nativeElement.contains(event.target)) {\n this.hide();\n }\n }\n}\n","<ng-template\n #overlay=\"cdkConnectedOverlay\"\n cdkConnectedOverlay\n wrConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"visible\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayPush]=\"true\"\n [wrArrowPointAtCenter]=\"false\"\n (overlayOutsideClick)=\"onClickOutside($event)\"\n (detach)=\"hide()\"\n (positionChange)=\"onPositionChange($event)\"\n>\n <div class=\"wr-tooltip wr-tooltip--{{ position }}\">\n <div class=\"wr-tooltip__wrapper\">\n <div class=\"wr-tooltip__title\">{{ message }}</div>\n <div class=\"wr-tooltip__arrow\"></div>\n </div>\n </div>\n</ng-template>\n","import {\n AfterViewInit,\n ComponentRef,\n Directive,\n ElementRef,\n HostListener,\n Input,\n Renderer2,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { WrTooltipComponent } from './tooltip-component';\nimport { WrTooltipTrigger } from './tooltip-trigger';\n\n@Directive({\n selector: '[wrTooltip]',\n exportAs: 'wrTooltip',\n})\nexport class WrTooltipDirective implements AfterViewInit {\n @Input('wrTooltip') message: string | null = null;\n\n @Input() trigger: WrTooltipTrigger = 'hover';\n\n @HostListener('click', ['$event'])\n onClick(event: MouseEvent): void {\n if (this.trigger === 'click') {\n event.preventDefault();\n this.onTooltipShow();\n }\n }\n\n @HostListener('mouseenter')\n onMouseEnter(): void {\n if (this.trigger === 'hover') {\n this.onTooltipShow();\n }\n }\n\n @HostListener('mouseleave')\n onMouseLeave(): void {\n if (this.trigger === 'hover') {\n let overlayElement: HTMLElement | undefined;\n\n this.leaveDelay(true, false, 0.1);\n\n if (this.componentRef.instance?.overlay.overlayRef && !overlayElement) {\n overlayElement = this.componentRef.instance.overlay.overlayRef.overlayElement;\n\n this.r2.listen(overlayElement, 'mouseenter', () => {\n this.leaveDelay(false, true, 0.1);\n });\n this.r2.listen(overlayElement, 'mouseleave', () => {\n this.leaveDelay(false, false, -1);\n });\n }\n }\n }\n\n private readonly componentRef: ComponentRef<WrTooltipComponent> = this.vcr.createComponent(WrTooltipComponent);\n private delayTimer: ReturnType<typeof setTimeout> | undefined;\n\n constructor(\n private readonly elRef: ElementRef,\n private readonly r2: Renderer2,\n private readonly vcr: ViewContainerRef\n ) {}\n\n ngAfterViewInit(): void {\n this.componentRef.instance.origin = this.elRef;\n this.componentRef.instance.message = this.message;\n this.componentRef.instance.trigger = this.trigger;\n }\n\n private onTooltipShow(): void {\n this.componentRef?.instance?.show();\n }\n\n private onTooltipHide(): void {\n this.componentRef?.instance?.hide();\n }\n\n private leaveDelay(isOrigin: boolean, isEnter: boolean, delay: number = -1): void {\n if (delay > 0) {\n this.delayTimer = setTimeout(() => {\n this.delayTimer = undefined;\n isEnter ? this.onTooltipShow() : this.onTooltipHide();\n }, delay * 1000);\n } else {\n isEnter && isOrigin ? this.onTooltipShow() : this.onTooltipHide();\n }\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { WrOverlayModule } from 'ngwr/core/overlay';\n\nimport { WrTooltipComponent } from './tooltip-component';\nimport { WrTooltipDirective } from './tooltip-directive';\n\n@NgModule({\n imports: [CommonModule, OverlayModule, WrOverlayModule],\n declarations: [WrTooltipComponent, WrTooltipDirective],\n exports: [WrTooltipComponent, WrTooltipDirective],\n})\nexport class WrTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngwr-tooltip.mjs","sources":["../../../projects/lib/tooltip/tooltip-default-positions.ts","../../../projects/lib/tooltip/tooltip-component.ts","../../../projects/lib/tooltip/tooltip.html","../../../projects/lib/tooltip/tooltip-directive.ts","../../../projects/lib/tooltip/tooltip-module.ts","../../../projects/lib/tooltip/ngwr-tooltip.ts"],"sourcesContent":["import { WR_POSITION_MAP } from 'ngwr/core/overlay';\n\nexport const WR_TOOLTIP_DEFAULT_POSITIONS = [\n WR_POSITION_MAP.top,\n WR_POSITION_MAP.bottom,\n WR_POSITION_MAP.right,\n WR_POSITION_MAP.left,\n];\n","import { coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { CdkConnectedOverlay, ConnectedOverlayPositionChange, ConnectionPositionPair } from '@angular/cdk/overlay';\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n Input,\n ViewChild,\n ViewEncapsulation,\n} from '@angular/core';\n\nimport { getPlacementName } from 'ngwr/core/overlay';\n\nimport { WR_TOOLTIP_DEFAULT_POSITIONS } from './tooltip-default-positions';\nimport { WrTooltipTrigger } from './tooltip-trigger';\n\n@Component({\n selector: 'wr-tooltip',\n templateUrl: './tooltip.html',\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n preserveWhitespaces: false,\n})\nexport class WrTooltipComponent {\n @ViewChild('overlay', { static: false }) overlay!: CdkConnectedOverlay;\n\n @Input()\n get message(): string | null {\n return this._message;\n }\n set message(value: string | null) {\n this._message = String(value);\n this.cdr.markForCheck();\n }\n private _message: string | null = null;\n\n @Input()\n get trigger(): WrTooltipTrigger {\n return this._trigger;\n }\n set trigger(value: WrTooltipTrigger) {\n this._trigger = value;\n this.cdr.markForCheck();\n }\n private _trigger: WrTooltipTrigger = 'hover';\n\n @Input()\n get visible(): boolean {\n return this._visible;\n }\n set visible(value: boolean) {\n const visible = coerceBooleanProperty(value);\n\n if (this._visible !== visible) {\n this._visible = visible;\n this.cdr.markForCheck();\n }\n }\n private _visible: boolean = false;\n\n @Input()\n get origin(): ElementRef {\n return this._origin;\n }\n set origin(value: ElementRef) {\n this._origin = value;\n this.cdr.markForCheck();\n }\n private _origin!: ElementRef;\n\n @Input()\n get position(): string {\n return this._position;\n }\n set position(value: string) {\n this._position = value;\n this.cdr.markForCheck();\n }\n private _position: string = 'top';\n\n readonly positions: ConnectionPositionPair[] = WR_TOOLTIP_DEFAULT_POSITIONS;\n\n constructor(private readonly cdr: ChangeDetectorRef) {}\n\n show(): void {\n if (!this.visible && this.message) {\n this.visible = true;\n }\n }\n\n hide(): void {\n if (this.visible) {\n this.visible = false;\n }\n }\n\n onPositionChange(position: ConnectedOverlayPositionChange): void {\n this.position = getPlacementName(position)!;\n }\n\n onClickOutside(event: MouseEvent): void {\n if (!this.origin.nativeElement.contains(event.target)) {\n this.hide();\n }\n }\n}\n","<ng-template\n #overlay=\"cdkConnectedOverlay\"\n cdkConnectedOverlay\n wrConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"origin\"\n [cdkConnectedOverlayOpen]=\"visible\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayPush]=\"true\"\n [wrArrowPointAtCenter]=\"false\"\n (overlayOutsideClick)=\"onClickOutside($event)\"\n (detach)=\"hide()\"\n (positionChange)=\"onPositionChange($event)\"\n>\n <div class=\"wr-tooltip wr-tooltip--{{ position }}\">\n <div class=\"wr-tooltip__wrapper\">\n <div class=\"wr-tooltip__title\">{{ message }}</div>\n <div class=\"wr-tooltip__arrow\"></div>\n </div>\n </div>\n</ng-template>\n","import {\n AfterViewInit,\n ComponentRef,\n Directive,\n ElementRef,\n HostListener,\n Input,\n Renderer2,\n ViewContainerRef,\n} from '@angular/core';\n\nimport { WrTooltipComponent } from './tooltip-component';\nimport { WrTooltipTrigger } from './tooltip-trigger';\n\n@Directive({\n selector: '[wrTooltip]',\n exportAs: 'wrTooltip',\n})\nexport class WrTooltipDirective implements AfterViewInit {\n @Input('wrTooltip') message: string | null = null;\n\n @Input() trigger: WrTooltipTrigger = 'hover';\n\n @HostListener('click', ['$event'])\n onClick(event: MouseEvent): void {\n if (this.trigger === 'click') {\n event.preventDefault();\n this.onTooltipShow();\n }\n }\n\n @HostListener('mouseenter')\n onMouseEnter(): void {\n if (this.trigger === 'hover') {\n this.onTooltipShow();\n }\n }\n\n @HostListener('mouseleave')\n onMouseLeave(): void {\n if (this.trigger === 'hover') {\n let overlayElement: HTMLElement | undefined;\n\n this.leaveDelay(true, false, 0.1);\n\n if (this.componentRef.instance?.overlay.overlayRef && !overlayElement) {\n overlayElement = this.componentRef.instance.overlay.overlayRef.overlayElement;\n\n this.r2.listen(overlayElement, 'mouseenter', () => {\n this.leaveDelay(false, true, 0.1);\n });\n this.r2.listen(overlayElement, 'mouseleave', () => {\n this.leaveDelay(false, false, -1);\n });\n }\n }\n }\n\n private readonly componentRef: ComponentRef<WrTooltipComponent> = this.vcr.createComponent(WrTooltipComponent);\n private delayTimer: ReturnType<typeof setTimeout> | undefined;\n\n constructor(\n private readonly elRef: ElementRef,\n private readonly r2: Renderer2,\n private readonly vcr: ViewContainerRef\n ) {}\n\n ngAfterViewInit(): void {\n this.componentRef.instance.origin = this.elRef;\n this.componentRef.instance.message = this.message;\n this.componentRef.instance.trigger = this.trigger;\n }\n\n private onTooltipShow(): void {\n this.componentRef?.instance?.show();\n }\n\n private onTooltipHide(): void {\n this.componentRef?.instance?.hide();\n }\n\n private leaveDelay(isOrigin: boolean, isEnter: boolean, delay: number = -1): void {\n if (delay > 0) {\n this.delayTimer = setTimeout(() => {\n this.delayTimer = undefined;\n isEnter ? this.onTooltipShow() : this.onTooltipHide();\n }, delay * 1000);\n } else {\n isEnter && isOrigin ? this.onTooltipShow() : this.onTooltipHide();\n }\n }\n}\n","import { OverlayModule } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\n\nimport { WrOverlayModule } from 'ngwr/core/overlay';\n\nimport { WrTooltipComponent } from './tooltip-component';\nimport { WrTooltipDirective } from './tooltip-directive';\n\n@NgModule({\n imports: [CommonModule, OverlayModule, WrOverlayModule],\n declarations: [WrTooltipComponent, WrTooltipDirective],\n exports: [WrTooltipComponent, WrTooltipDirective],\n})\nexport class WrTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngwr",
3
- "version": "1.3.0",
3
+ "version": "2.0.0",
4
4
  "license": "MIT",
5
5
  "description": "NGWR – Angular UI components library",
6
6
  "author": "Roman Khegay <rk@garuna.dev> (https://garuna.dev/)",
@@ -28,26 +28,23 @@
28
28
  "esm": "./esm2022/ngwr.mjs",
29
29
  "default": "./fesm2022/ngwr.mjs"
30
30
  },
31
+ "./grid": {
32
+ "sass": "./_grid.scss"
33
+ },
31
34
  "./package.json": {
32
35
  "default": "./package.json"
33
36
  },
34
- "./checkbox": {
35
- "types": "./checkbox/index.d.ts",
36
- "esm2022": "./esm2022/checkbox/ngwr-checkbox.mjs",
37
- "esm": "./esm2022/checkbox/ngwr-checkbox.mjs",
38
- "default": "./fesm2022/ngwr-checkbox.mjs"
39
- },
40
37
  "./button": {
41
38
  "types": "./button/index.d.ts",
42
39
  "esm2022": "./esm2022/button/ngwr-button.mjs",
43
40
  "esm": "./esm2022/button/ngwr-button.mjs",
44
41
  "default": "./fesm2022/ngwr-button.mjs"
45
42
  },
46
- "./dialog": {
47
- "types": "./dialog/index.d.ts",
48
- "esm2022": "./esm2022/dialog/ngwr-dialog.mjs",
49
- "esm": "./esm2022/dialog/ngwr-dialog.mjs",
50
- "default": "./fesm2022/ngwr-dialog.mjs"
43
+ "./checkbox": {
44
+ "types": "./checkbox/index.d.ts",
45
+ "esm2022": "./esm2022/checkbox/ngwr-checkbox.mjs",
46
+ "esm": "./esm2022/checkbox/ngwr-checkbox.mjs",
47
+ "default": "./fesm2022/ngwr-checkbox.mjs"
51
48
  },
52
49
  "./divider": {
53
50
  "types": "./divider/index.d.ts",
@@ -55,29 +52,35 @@
55
52
  "esm": "./esm2022/divider/ngwr-divider.mjs",
56
53
  "default": "./fesm2022/ngwr-divider.mjs"
57
54
  },
55
+ "./dialog": {
56
+ "types": "./dialog/index.d.ts",
57
+ "esm2022": "./esm2022/dialog/ngwr-dialog.mjs",
58
+ "esm": "./esm2022/dialog/ngwr-dialog.mjs",
59
+ "default": "./fesm2022/ngwr-dialog.mjs"
60
+ },
58
61
  "./form": {
59
62
  "types": "./form/index.d.ts",
60
63
  "esm2022": "./esm2022/form/ngwr-form.mjs",
61
64
  "esm": "./esm2022/form/ngwr-form.mjs",
62
65
  "default": "./fesm2022/ngwr-form.mjs"
63
66
  },
64
- "./input": {
65
- "types": "./input/index.d.ts",
66
- "esm2022": "./esm2022/input/ngwr-input.mjs",
67
- "esm": "./esm2022/input/ngwr-input.mjs",
68
- "default": "./fesm2022/ngwr-input.mjs"
69
- },
70
67
  "./icon": {
71
68
  "types": "./icon/index.d.ts",
72
69
  "esm2022": "./esm2022/icon/ngwr-icon.mjs",
73
70
  "esm": "./esm2022/icon/ngwr-icon.mjs",
74
71
  "default": "./fesm2022/ngwr-icon.mjs"
75
72
  },
76
- "./spinner": {
77
- "types": "./spinner/index.d.ts",
78
- "esm2022": "./esm2022/spinner/ngwr-spinner.mjs",
79
- "esm": "./esm2022/spinner/ngwr-spinner.mjs",
80
- "default": "./fesm2022/ngwr-spinner.mjs"
73
+ "./input": {
74
+ "types": "./input/index.d.ts",
75
+ "esm2022": "./esm2022/input/ngwr-input.mjs",
76
+ "esm": "./esm2022/input/ngwr-input.mjs",
77
+ "default": "./fesm2022/ngwr-input.mjs"
78
+ },
79
+ "./qrcode": {
80
+ "types": "./qrcode/index.d.ts",
81
+ "esm2022": "./esm2022/qrcode/ngwr-qrcode.mjs",
82
+ "esm": "./esm2022/qrcode/ngwr-qrcode.mjs",
83
+ "default": "./fesm2022/ngwr-qrcode.mjs"
81
84
  },
82
85
  "./skeleton": {
83
86
  "types": "./skeleton/index.d.ts",
@@ -85,11 +88,11 @@
85
88
  "esm": "./esm2022/skeleton/ngwr-skeleton.mjs",
86
89
  "default": "./fesm2022/ngwr-skeleton.mjs"
87
90
  },
88
- "./qrcode": {
89
- "types": "./qrcode/index.d.ts",
90
- "esm2022": "./esm2022/qrcode/ngwr-qrcode.mjs",
91
- "esm": "./esm2022/qrcode/ngwr-qrcode.mjs",
92
- "default": "./fesm2022/ngwr-qrcode.mjs"
91
+ "./spinner": {
92
+ "types": "./spinner/index.d.ts",
93
+ "esm2022": "./esm2022/spinner/ngwr-spinner.mjs",
94
+ "esm": "./esm2022/spinner/ngwr-spinner.mjs",
95
+ "default": "./fesm2022/ngwr-spinner.mjs"
93
96
  },
94
97
  "./tag": {
95
98
  "types": "./tag/index.d.ts",
@@ -135,14 +138,14 @@
135
138
  }
136
139
  },
137
140
  "dependencies": {
138
- "@angular/cdk": "^16.0.0",
141
+ "@angular/cdk": "^17.0.5",
139
142
  "tslib": "^2.3.0"
140
143
  },
141
144
  "peerDependencies": {
142
- "@angular/animations": ">=14.0.0 <17.0.0",
143
- "@angular/common": ">=14.0.0 <17.0.0",
144
- "@angular/core": ">=14.0.0 <17.0.0",
145
- "@angular/forms": ">=14.0.0 <17.0.0",
145
+ "@angular/animations": ">=14.0.0 <18.0.0",
146
+ "@angular/common": ">=14.0.0 <18.0.0",
147
+ "@angular/core": ">=14.0.0 <18.0.0",
148
+ "@angular/forms": ">=14.0.0 <18.0.0",
146
149
  "rxjs": ">=6.5.5 < 7.9.0"
147
150
  },
148
151
  "module": "fesm2022/ngwr.mjs",
package/styles/root.scss CHANGED
@@ -36,20 +36,20 @@ html {
36
36
  --wr-color-secondary-contrast: #fff;
37
37
  --wr-color-secondary-shade: #c41655;
38
38
 
39
- --wr-color-success: #84cc16;
40
- --wr-color-success-rgb: 132,204,22;
39
+ --wr-color-success: #82DF53;
40
+ --wr-color-success-rgb: 130, 223, 83;
41
41
  --wr-color-success-contrast: #000;
42
- --wr-color-success-shade: #6aa312;
42
+ --wr-color-success-shade: #529f2a;
43
43
 
44
44
  --wr-color-warning: #fbbf24;
45
45
  --wr-color-warning-rgb: 251,191,36;
46
46
  --wr-color-warning-contrast: #000;
47
47
  --wr-color-warning-shade: #f59e0b;
48
48
 
49
- --wr-color-danger: #dc2626;
50
- --wr-color-danger-rgb: 220,38,38;
49
+ --wr-color-danger: #E23636;
50
+ --wr-color-danger-rgb:226, 54, 54;
51
51
  --wr-color-danger-contrast: #fff;
52
- --wr-color-danger-shade: #b91c1c;
52
+ --wr-color-danger-shade: #b71e1e;
53
53
 
54
54
  --wr-color-light: #e2e8f0;
55
55
  --wr-color-light-rgb: 226,232,240;
@@ -75,22 +75,25 @@ html {
75
75
  --wr-grid-gutter: 1.5rem;
76
76
 
77
77
  /* Button */
78
- --wr-btn-padding-y-base: 0.5rem;
78
+ --wr-btn-border-width: 1.125px;
79
+ --wr-btn-padding-y-base: 0.375rem;
79
80
  --wr-btn-padding-x-base: 1rem;
80
- --wr-btn-border-radius-base: 0.5rem;
81
+ --wr-btn-border-radius-base: 0.375rem;
81
82
  --wr-btn-font-size-base: 1rem;
82
83
  --wr-btn-line-height-base: 1.4;
83
84
  --wr-btn-font-weight-base: 500;
84
85
  // Small
85
- --wr-btn-padding-y-small: 0.375rem;
86
+ --wr-btn-padding-y-small: 0.25rem;
86
87
  --wr-btn-padding-x-small: 0.625rem;
87
88
  --wr-btn-border-radius-small: 0.375rem;
88
89
  --wr-btn-font-size-small: 0.825rem;
89
- --wr-btn-line-height-small: 1;
90
90
  // Rounded
91
91
  --wr-btn-rounded-border-radius: 50rem;
92
92
  --wr-btn-rounded-padding-y: 0.5rem;
93
93
  --wr-btn-rounded-padding-x: 1rem;
94
+ // Icon
95
+ --wr-btn-icon-size-base: 1rem;
96
+ --wr-btn-icon-margin-base: 0.375rem;
94
97
 
95
98
  /* Dialog */
96
99
  --wr-dialog-bg: #fff;
@@ -99,6 +102,12 @@ html {
99
102
  --wr-dialog-padding-x: 1rem;
100
103
  --wr-dialog-padding-y: 1rem;
101
104
 
105
+ /* Divider */
106
+ --wr-divider-width-base: 1px;
107
+ --wr-divider-color-base: var(--wr-color-light);
108
+ --wr-divider-margin-top-base: 0.5rem;
109
+ --wr-divider-margin-bottom-base: 0.5rem;
110
+
102
111
  /* Checkbox */
103
112
  --wr-checkbox-color-base: var(--wr-color-dark);
104
113
  --wr-checkbox-border-radius: 0.25rem;
@@ -1,10 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- import * as i1 from "./button";
3
- import * as i2 from "@angular/common";
4
- import * as i3 from "ngwr/spinner";
5
- import * as i4 from "ngwr/icon";
6
- export declare class WrButtonModule {
7
- static ɵfac: i0.ɵɵFactoryDeclaration<WrButtonModule, never>;
8
- static ɵmod: i0.ɵɵNgModuleDeclaration<WrButtonModule, [typeof i1.WrButton], [typeof i2.CommonModule, typeof i3.WrSpinnerModule, typeof i4.WrIconModule], [typeof i1.WrButton]>;
9
- static ɵinj: i0.ɵɵInjectorDeclaration<WrButtonModule>;
10
- }
@@ -1,10 +0,0 @@
1
- import * as i0 from "@angular/core";
2
- import * as i1 from "./checkbox";
3
- import * as i2 from "@angular/common";
4
- import * as i3 from "@angular/forms";
5
- import * as i4 from "@angular/cdk/a11y";
6
- export declare class WrCheckboxModule {
7
- static ɵfac: i0.ɵɵFactoryDeclaration<WrCheckboxModule, never>;
8
- static ɵmod: i0.ɵɵNgModuleDeclaration<WrCheckboxModule, [typeof i1.WrCheckbox], [typeof i2.CommonModule, typeof i3.FormsModule, typeof i4.A11yModule], [typeof i1.WrCheckbox]>;
9
- static ɵinj: i0.ɵɵInjectorDeclaration<WrCheckboxModule>;
10
- }
@@ -1,20 +0,0 @@
1
- import { CommonModule } from '@angular/common';
2
- import { NgModule } from '@angular/core';
3
- import { WrIconModule } from 'ngwr/icon';
4
- import { WrSpinnerModule } from 'ngwr/spinner';
5
- import { WrButton } from './button';
6
- import * as i0 from "@angular/core";
7
- export class WrButtonModule {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrButtonModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: WrButtonModule, declarations: [WrButton], imports: [CommonModule, WrSpinnerModule, WrIconModule], exports: [WrButton] }); }
10
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrButtonModule, imports: [CommonModule, WrSpinnerModule, WrIconModule] }); }
11
- }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrButtonModule, decorators: [{
13
- type: NgModule,
14
- args: [{
15
- imports: [CommonModule, WrSpinnerModule, WrIconModule],
16
- declarations: [WrButton],
17
- exports: [WrButton],
18
- }]
19
- }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLW1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2xpYi9idXR0b24vYnV0dG9uLW1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFPcEMsTUFBTSxPQUFPLGNBQWM7OEdBQWQsY0FBYzsrR0FBZCxjQUFjLGlCQUhWLFFBQVEsYUFEYixZQUFZLEVBQUUsZUFBZSxFQUFFLFlBQVksYUFFM0MsUUFBUTsrR0FFUCxjQUFjLFlBSmYsWUFBWSxFQUFFLGVBQWUsRUFBRSxZQUFZOzsyRkFJMUMsY0FBYztrQkFMMUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLFlBQVksQ0FBQztvQkFDdEQsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDO29CQUN4QixPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUM7aUJBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFdySWNvbk1vZHVsZSB9IGZyb20gJ25nd3IvaWNvbic7XG5pbXBvcnQgeyBXclNwaW5uZXJNb2R1bGUgfSBmcm9tICduZ3dyL3NwaW5uZXInO1xuXG5pbXBvcnQgeyBXckJ1dHRvbiB9IGZyb20gJy4vYnV0dG9uJztcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgV3JTcGlubmVyTW9kdWxlLCBXckljb25Nb2R1bGVdLFxuICBkZWNsYXJhdGlvbnM6IFtXckJ1dHRvbl0sXG4gIGV4cG9ydHM6IFtXckJ1dHRvbl0sXG59KVxuZXhwb3J0IGNsYXNzIFdyQnV0dG9uTW9kdWxlIHt9XG4iXX0=
@@ -1,187 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { coerceBooleanProperty } from '@angular/cdk/coercion';
3
- import { ChangeDetectionStrategy, Component, HostBinding, Input, ViewEncapsulation, } from '@angular/core';
4
- import { WrAbstractBase } from 'ngwr/core/abstract';
5
- import { isThemeColor } from 'ngwr/core/color';
6
- import { InputBoolean } from 'ngwr/core/decorators';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common";
9
- import * as i2 from "ngwr/spinner";
10
- import * as i3 from "ngwr/icon";
11
- export class WrButton extends WrAbstractBase {
12
- /** Set color of `wr-btn`; */
13
- get color() {
14
- return this._color;
15
- }
16
- set color(value) {
17
- this._color = isThemeColor(value) ? value : 'primary';
18
- this.cdr.markForCheck();
19
- }
20
- /** Set size of `wr-btn`; */
21
- get size() {
22
- return this._size;
23
- }
24
- set size(value) {
25
- this._size = value;
26
- this.cdr.markForCheck();
27
- }
28
- /** Set outlined state of `wr-btn`; */
29
- get outlined() {
30
- return this._outlined;
31
- }
32
- set outlined(value) {
33
- this._outlined = coerceBooleanProperty(value);
34
- this.cdr.markForCheck();
35
- }
36
- /** Set rounded state of `wr-btn`; */
37
- get rounded() {
38
- return this._rounded;
39
- }
40
- set rounded(value) {
41
- this._rounded = coerceBooleanProperty(value);
42
- this.cdr.markForCheck();
43
- }
44
- /** Set fullwidth state of `wr-btn`; */
45
- get fullwidth() {
46
- return this._fullwidth;
47
- }
48
- set fullwidth(value) {
49
- this._fullwidth = coerceBooleanProperty(value);
50
- this.cdr.markForCheck();
51
- }
52
- /** Set loading state of `wr-btn`; */
53
- get loading() {
54
- return this._loading;
55
- }
56
- set loading(value) {
57
- this._loading = coerceBooleanProperty(value);
58
- this.cdr.markForCheck();
59
- }
60
- /** Set disabled state of `wr-btn`; */
61
- get disabled() {
62
- return this._disabled;
63
- }
64
- set disabled(value) {
65
- this._disabled = coerceBooleanProperty(value);
66
- this.cdr.markForCheck();
67
- }
68
- /** Set icon of `wr-btn`; */
69
- get icon() {
70
- return this._icon;
71
- }
72
- set icon(value) {
73
- this._icon = value;
74
- this.cdr.markForCheck();
75
- }
76
- /** Set icon position of `wr-btn`; */
77
- get iconPosition() {
78
- return this._iconPosition;
79
- }
80
- set iconPosition(value) {
81
- this._iconPosition = value;
82
- this.cdr.markForCheck();
83
- }
84
- /** Set element disabled attribute */
85
- get nativeDisabled() {
86
- return this._disabled ? '' : null;
87
- }
88
- /** Set element classes */
89
- get elClasses() {
90
- return {
91
- 'wr-btn': true,
92
- 'wr-btn--primary': this.color === 'primary',
93
- 'wr-btn--secondary': this.color === 'secondary',
94
- 'wr-btn--success': this.color === 'success',
95
- 'wr-btn--warning': this.color === 'warning',
96
- 'wr-btn--danger': this.color === 'danger',
97
- 'wr-btn--light': this.color === 'light',
98
- 'wr-btn--medium': this.color === 'medium',
99
- 'wr-btn--dark': this.color === 'dark',
100
- 'wr-btn--default': this.size === 'default',
101
- 'wr-btn--small': this.size === 'small',
102
- 'wr-btn--icon-start': this.icon && this.iconPosition === 'start',
103
- 'wr-btn--icon-end': this.icon && this.iconPosition === 'end',
104
- 'wr-btn--outlined': this.outlined,
105
- 'wr-btn--rounded': this.rounded,
106
- 'wr-btn--loading': this.loading,
107
- 'wr-btn--full': this.fullwidth,
108
- };
109
- }
110
- constructor(cdr, elRef, ngZone) {
111
- super();
112
- this.cdr = cdr;
113
- this.elRef = elRef;
114
- this.ngZone = ngZone;
115
- this._color = 'primary';
116
- this._size = 'default';
117
- this._outlined = false;
118
- this._rounded = false;
119
- this._fullwidth = false;
120
- this._loading = false;
121
- this._disabled = false;
122
- this._icon = null;
123
- this._iconPosition = 'start';
124
- /* A disabled button shouldn't apply any actions */
125
- this.preventEventsWhenDisabled = (event) => {
126
- if (this.disabled) {
127
- event.preventDefault();
128
- event.stopImmediatePropagation();
129
- }
130
- };
131
- }
132
- ngOnInit() {
133
- this.ngZone.runOutsideAngular(() => {
134
- this.elRef.nativeElement.addEventListener('click', this.preventEventsWhenDisabled);
135
- });
136
- }
137
- ngOnDestroy() {
138
- super.ngOnDestroy();
139
- this.elRef.nativeElement.removeEventListener('click', this.preventEventsWhenDisabled);
140
- }
141
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrButton, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
142
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.3", type: WrButton, selector: "wr-btn, button[wr-btn], a[wr-btn]", inputs: { color: "color", size: "size", outlined: "outlined", rounded: "rounded", fullwidth: "fullwidth", loading: "loading", disabled: "disabled", icon: "icon", iconPosition: "iconPosition" }, host: { properties: { "attr.disabled": "this.nativeDisabled", "class": "this.elClasses" } }, exportAs: ["wrBtn"], usesInheritance: true, ngImport: i0, template: "<wr-spin *ngIf=\"loading\" class=\"wr-btn__spin\"></wr-spin>\n<wr-icon *ngIf=\"icon && iconPosition === 'start'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n<span class=\"wr-btn__text\"><ng-content></ng-content></span>\n<wr-icon *ngIf=\"icon && iconPosition === 'end'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.WrSpinner, selector: "wr-spin", exportAs: ["wrSpin"] }, { kind: "directive", type: i3.WrIcon, selector: "wr-icon[name]", inputs: ["name"], exportAs: ["wrIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
143
- }
144
- __decorate([
145
- InputBoolean()
146
- ], WrButton.prototype, "outlined", null);
147
- __decorate([
148
- InputBoolean()
149
- ], WrButton.prototype, "rounded", null);
150
- __decorate([
151
- InputBoolean()
152
- ], WrButton.prototype, "fullwidth", null);
153
- __decorate([
154
- InputBoolean()
155
- ], WrButton.prototype, "loading", null);
156
- __decorate([
157
- InputBoolean()
158
- ], WrButton.prototype, "disabled", null);
159
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrButton, decorators: [{
160
- type: Component,
161
- args: [{ selector: 'wr-btn, button[wr-btn], a[wr-btn]', exportAs: 'wrBtn', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<wr-spin *ngIf=\"loading\" class=\"wr-btn__spin\"></wr-spin>\n<wr-icon *ngIf=\"icon && iconPosition === 'start'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n<span class=\"wr-btn__text\"><ng-content></ng-content></span>\n<wr-icon *ngIf=\"icon && iconPosition === 'end'\" class=\"wr-btn__icon\" [name]=\"icon\"></wr-icon>\n" }]
162
- }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { color: [{
163
- type: Input
164
- }], size: [{
165
- type: Input
166
- }], outlined: [{
167
- type: Input
168
- }], rounded: [{
169
- type: Input
170
- }], fullwidth: [{
171
- type: Input
172
- }], loading: [{
173
- type: Input
174
- }], disabled: [{
175
- type: Input
176
- }], icon: [{
177
- type: Input
178
- }], iconPosition: [{
179
- type: Input
180
- }], nativeDisabled: [{
181
- type: HostBinding,
182
- args: ['attr.disabled']
183
- }], elClasses: [{
184
- type: HostBinding,
185
- args: ['class']
186
- }] } });
187
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliL2J1dHRvbi9idXR0b24udHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9saWIvYnV0dG9uL2J1dHRvbi5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWdCLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDNUUsT0FBTyxFQUNMLHVCQUF1QixFQUV2QixTQUFTLEVBRVQsV0FBVyxFQUNYLEtBQUssRUFJTCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxZQUFZLEVBQWdCLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7OztBQVdwRCxNQUFNLE9BQU8sUUFBUyxTQUFRLGNBQWM7SUFDMUMsNkJBQTZCO0lBQzdCLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBbUI7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ3RELElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELDRCQUE0QjtJQUM1QixJQUNJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLEtBQTBCO1FBQ2pDLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUdELHND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QixTQUFTO3NCQURaLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBFbGVtZW50UmVmLFxuICBIb3N0QmluZGluZyxcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgV3JBYnN0cmFjdEJhc2UgfSBmcm9tICduZ3dyL2NvcmUvYWJzdHJhY3QnO1xuaW1wb3J0IHsgaXNUaGVtZUNvbG9yLCBXclRoZW1lQ29sb3IgfSBmcm9tICduZ3dyL2NvcmUvY29sb3InO1xuaW1wb3J0IHsgSW5wdXRCb29sZWFuIH0gZnJvbSAnbmd3ci9jb3JlL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgU2FmZUFueSB9IGZyb20gJ25nd3IvY29yZS90eXBlcyc7XG5pbXBvcnQgeyB3ckljb25OYW1lIH0gZnJvbSAnbmd3ci9pY29uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnd3ItYnRuLCBidXR0b25bd3ItYnRuXSwgYVt3ci1idG5dJyxcbiAgZXhwb3J0QXM6ICd3ckJ0bicsXG4gIHRlbXBsYXRlVXJsOiAnLi9idXR0b24uaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBXckJ1dHRvbiBleHRlbmRzIFdyQWJzdHJhY3RCYXNlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAvKiogU2V0IGNvbG9yIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBnZXQgY29sb3IoKTogV3JUaGVtZUNvbG9yIHtcbiAgICByZXR1cm4gdGhpcy5fY29sb3I7XG4gIH1cbiAgc2V0IGNvbG9yKHZhbHVlOiBXclRoZW1lQ29sb3IpIHtcbiAgICB0aGlzLl9jb2xvciA9IGlzVGhlbWVDb2xvcih2YWx1ZSkgPyB2YWx1ZSA6ICdwcmltYXJ5JztcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9jb2xvcjogV3JUaGVtZUNvbG9yID0gJ3ByaW1hcnknO1xuXG4gIC8qKiBTZXQgc2l6ZSBvZiBgd3ItYnRuYDsgKi9cbiAgQElucHV0KClcbiAgZ2V0IHNpemUoKTogJ2RlZmF1bHQnIHwgJ3NtYWxsJyB7XG4gICAgcmV0dXJuIHRoaXMuX3NpemU7XG4gIH1cbiAgc2V0IHNpemUodmFsdWU6ICdkZWZhdWx0JyB8ICdzbWFsbCcpIHtcbiAgICB0aGlzLl9zaXplID0gdmFsdWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfc2l6ZTogJ2RlZmF1bHQnIHwgJ3NtYWxsJyA9ICdkZWZhdWx0JztcblxuICAvKiogU2V0IG91dGxpbmVkIHN0YXRlIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBASW5wdXRCb29sZWFuKClcbiAgZ2V0IG91dGxpbmVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9vdXRsaW5lZDtcbiAgfVxuICBzZXQgb3V0bGluZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgIHRoaXMuX291dGxpbmVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9vdXRsaW5lZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBTZXQgcm91bmRlZCBzdGF0ZSBvZiBgd3ItYnRuYDsgKi9cbiAgQElucHV0KClcbiAgQElucHV0Qm9vbGVhbigpXG4gIGdldCByb3VuZGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9yb3VuZGVkO1xuICB9XG4gIHNldCByb3VuZGVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICB0aGlzLl9yb3VuZGVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9yb3VuZGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFNldCBmdWxsd2lkdGggc3RhdGUgb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIEBJbnB1dEJvb2xlYW4oKVxuICBnZXQgZnVsbHdpZHRoKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9mdWxsd2lkdGg7XG4gIH1cbiAgc2V0IGZ1bGx3aWR0aCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fZnVsbHdpZHRoID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBwcml2YXRlIF9mdWxsd2lkdGg6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogU2V0IGxvYWRpbmcgc3RhdGUgb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIEBJbnB1dEJvb2xlYW4oKVxuICBnZXQgbG9hZGluZygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fbG9hZGluZztcbiAgfVxuICBzZXQgbG9hZGluZyh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fbG9hZGluZyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cbiAgcHJpdmF0ZSBfbG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBTZXQgZGlzYWJsZWQgc3RhdGUgb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIEBJbnB1dEJvb2xlYW4oKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkO1xuICB9XG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgdGhpcy5fZGlzYWJsZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqIFNldCBpY29uIG9mIGB3ci1idG5gOyAqL1xuICBASW5wdXQoKVxuICBnZXQgaWNvbigpOiB3ckljb25OYW1lIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX2ljb247XG4gIH1cbiAgc2V0IGljb24odmFsdWU6IHdySWNvbk5hbWUgfCBudWxsKSB7XG4gICAgdGhpcy5faWNvbiA9IHZhbHVlO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2ljb246IHdySWNvbk5hbWUgfCBudWxsID0gbnVsbDtcblxuICAvKiogU2V0IGljb24gcG9zaXRpb24gb2YgYHdyLWJ0bmA7ICovXG4gIEBJbnB1dCgpXG4gIGdldCBpY29uUG9zaXRpb24oKTogJ3N0YXJ0JyB8ICdlbmQnIHtcbiAgICByZXR1cm4gdGhpcy5faWNvblBvc2l0aW9uO1xuICB9XG4gIHNldCBpY29uUG9zaXRpb24odmFsdWU6ICdzdGFydCcgfCAnZW5kJykge1xuICAgIHRoaXMuX2ljb25Qb3NpdGlvbiA9IHZhbHVlO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG4gIHByaXZhdGUgX2ljb25Qb3NpdGlvbjogJ3N0YXJ0JyB8ICdlbmQnID0gJ3N0YXJ0JztcblxuICAvKiogU2V0IGVsZW1lbnQgZGlzYWJsZWQgYXR0cmlidXRlICovXG4gIEBIb3N0QmluZGluZygnYXR0ci5kaXNhYmxlZCcpXG4gIGdldCBuYXRpdmVEaXNhYmxlZCgpOiAnJyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9kaXNhYmxlZCA/ICcnIDogbnVsbDtcbiAgfVxuXG4gIC8qKiBTZXQgZWxlbWVudCBjbGFzc2VzICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgZWxDbGFzc2VzKCk6IFNhZmVBbnkge1xuICAgIHJldHVybiB7XG4gICAgICAnd3ItYnRuJzogdHJ1ZSxcbiAgICAgICd3ci1idG4tLXByaW1hcnknOiB0aGlzLmNvbG9yID09PSAncHJpbWFyeScsXG4gICAgICAnd3ItYnRuLS1zZWNvbmRhcnknOiB0aGlzLmNvbG9yID09PSAnc2Vjb25kYXJ5JyxcbiAgICAgICd3ci1idG4tLXN1Y2Nlc3MnOiB0aGlzLmNvbG9yID09PSAnc3VjY2VzcycsXG4gICAgICAnd3ItYnRuLS13YXJuaW5nJzogdGhpcy5jb2xvciA9PT0gJ3dhcm5pbmcnLFxuICAgICAgJ3dyLWJ0bi0tZGFuZ2VyJzogdGhpcy5jb2xvciA9PT0gJ2RhbmdlcicsXG4gICAgICAnd3ItYnRuLS1saWdodCc6IHRoaXMuY29sb3IgPT09ICdsaWdodCcsXG4gICAgICAnd3ItYnRuLS1tZWRpdW0nOiB0aGlzLmNvbG9yID09PSAnbWVkaXVtJyxcbiAgICAgICd3ci1idG4tLWRhcmsnOiB0aGlzLmNvbG9yID09PSAnZGFyaycsXG4gICAgICAnd3ItYnRuLS1kZWZhdWx0JzogdGhpcy5zaXplID09PSAnZGVmYXVsdCcsXG4gICAgICAnd3ItYnRuLS1zbWFsbCc6IHRoaXMuc2l6ZSA9PT0gJ3NtYWxsJyxcbiAgICAgICd3ci1idG4tLWljb24tc3RhcnQnOiB0aGlzLmljb24gJiYgdGhpcy5pY29uUG9zaXRpb24gPT09ICdzdGFydCcsXG4gICAgICAnd3ItYnRuLS1pY29uLWVuZCc6IHRoaXMuaWNvbiAmJiB0aGlzLmljb25Qb3NpdGlvbiA9PT0gJ2VuZCcsXG4gICAgICAnd3ItYnRuLS1vdXRsaW5lZCc6IHRoaXMub3V0bGluZWQsXG4gICAgICAnd3ItYnRuLS1yb3VuZGVkJzogdGhpcy5yb3VuZGVkLFxuICAgICAgJ3dyLWJ0bi0tbG9hZGluZyc6IHRoaXMubG9hZGluZyxcbiAgICAgICd3ci1idG4tLWZ1bGwnOiB0aGlzLmZ1bGx3aWR0aCxcbiAgICB9O1xuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZWxSZWY6IEVsZW1lbnRSZWY8SFRNTEJ1dHRvbkVsZW1lbnQgfCBIVE1MTGlua0VsZW1lbnQgfCBIVE1MQW5jaG9yRWxlbWVudCB8IEhUTUxFbGVtZW50PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5nWm9uZTogTmdab25lXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLnByZXZlbnRFdmVudHNXaGVuRGlzYWJsZWQpO1xuICAgIH0pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2xpY2snLCB0aGlzLnByZXZlbnRFdmVudHNXaGVuRGlzYWJsZWQpO1xuICB9XG5cbiAgLyogQSBkaXNhYmxlZCBidXR0b24gc2hvdWxkbid0IGFwcGx5IGFueSBhY3Rpb25zICovXG4gIHByaXZhdGUgcHJldmVudEV2ZW50c1doZW5EaXNhYmxlZCA9IChldmVudDogRXZlbnQpOiB2b2lkID0+IHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2ZW50LnN0b3BJbW1lZGlhdGVQcm9wYWdhdGlvbigpO1xuICAgIH1cbiAgfTtcbn1cbiIsIjx3ci1zcGluICpuZ0lmPVwibG9hZGluZ1wiIGNsYXNzPVwid3ItYnRuX19zcGluXCI+PC93ci1zcGluPlxuPHdyLWljb24gKm5nSWY9XCJpY29uICYmIGljb25Qb3NpdGlvbiA9PT0gJ3N0YXJ0J1wiIGNsYXNzPVwid3ItYnRuX19pY29uXCIgW25hbWVdPVwiaWNvblwiPjwvd3ItaWNvbj5cbjxzcGFuIGNsYXNzPVwid3ItYnRuX190ZXh0XCI+PG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50Pjwvc3Bhbj5cbjx3ci1pY29uICpuZ0lmPVwiaWNvbiAmJiBpY29uUG9zaXRpb24gPT09ICdlbmQnXCIgY2xhc3M9XCJ3ci1idG5fX2ljb25cIiBbbmFtZV09XCJpY29uXCI+PC93ci1pY29uPlxuIl19
@@ -1,20 +0,0 @@
1
- import { A11yModule } from '@angular/cdk/a11y';
2
- import { CommonModule } from '@angular/common';
3
- import { NgModule } from '@angular/core';
4
- import { FormsModule } from '@angular/forms';
5
- import { WrCheckbox } from './checkbox';
6
- import * as i0 from "@angular/core";
7
- export class WrCheckboxModule {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.1.3", ngImport: i0, type: WrCheckboxModule, declarations: [WrCheckbox], imports: [CommonModule, FormsModule, A11yModule], exports: [WrCheckbox] }); }
10
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrCheckboxModule, imports: [CommonModule, FormsModule, A11yModule] }); }
11
- }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.3", ngImport: i0, type: WrCheckboxModule, decorators: [{
13
- type: NgModule,
14
- args: [{
15
- imports: [CommonModule, FormsModule, A11yModule],
16
- declarations: [WrCheckbox],
17
- exports: [WrCheckbox],
18
- }]
19
- }] });
20
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtbW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbGliL2NoZWNrYm94L2NoZWNrYm94LW1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxZQUFZLENBQUM7O0FBT3hDLE1BQU0sT0FBTyxnQkFBZ0I7OEdBQWhCLGdCQUFnQjsrR0FBaEIsZ0JBQWdCLGlCQUhaLFVBQVUsYUFEZixZQUFZLEVBQUUsV0FBVyxFQUFFLFVBQVUsYUFFckMsVUFBVTsrR0FFVCxnQkFBZ0IsWUFKakIsWUFBWSxFQUFFLFdBQVcsRUFBRSxVQUFVOzsyRkFJcEMsZ0JBQWdCO2tCQUw1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDO29CQUNoRCxZQUFZLEVBQUUsQ0FBQyxVQUFVLENBQUM7b0JBQzFCLE9BQU8sRUFBRSxDQUFDLFVBQVUsQ0FBQztpQkFDdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBMTF5TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgV3JDaGVja2JveCB9IGZyb20gJy4vY2hlY2tib3gnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgQTExeU1vZHVsZV0sXG4gIGRlY2xhcmF0aW9uczogW1dyQ2hlY2tib3hdLFxuICBleHBvcnRzOiBbV3JDaGVja2JveF0sXG59KVxuZXhwb3J0IGNsYXNzIFdyQ2hlY2tib3hNb2R1bGUge31cbiJdfQ==