@festo-ui/angular 8.3.0-dev.676 → 8.3.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.
@@ -30,10 +30,10 @@ class FngAccordionItemBodyComponent {
30
30
  // parentId will be set by accordion item this body belongs to
31
31
  this.id = '';
32
32
  }
33
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAccordionItemBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
34
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngAccordionItemBodyComponent, isStandalone: true, selector: "fng-accordion-item-body", ngImport: i0, template: "<div\r\n role=\"region\"\r\n [attr.id]=\"id + '-body'\"\r\n [attr.aria-labelledby]=\"id + '-header'\"\r\n class=\"fng-accordion-item-body\"\r\n>\r\n <ng-content></ng-content>\r\n <div class=\"fng-accordion-item-body-spacer-bottom\"></div>\r\n</div>\r\n", styles: [".fng-accordion-item-body{overflow:hidden;transition:height .3s cubic-bezier(.4,0,.2,1);height:0px}.fng-accordion-item-body>:first-child:not(.fng-accordion-item-body-spacer-bottom):not(.fng-accordion){margin-top:0!important;padding-top:0!important}.fng-accordion-item-body>:not(.fng-accordion){margin-right:0}.fng-accordion-item-body-content{margin-right:64px}.fng-accordion-item-body-spacer-bottom{margin-top:24px;height:0;width:0}.fng-accordion-item-body .fng-accordion{margin-top:64px;margin-bottom:24px}.fng-accordion-item-body .fng-accordion-item-link{display:block;top:8px}.fng-accordion-item-body .fng-accordion-item-header{padding-top:32px;padding-right:32px}.fng-accordion-item-body .fng-accordion-item:after{top:12px;right:4px;height:16px;width:16px;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxNnYxNkgweiIvPjxwYXRoIGZpbGw9IiMwMDkxREMiIGQ9Ik04IDEwLjcwNyAzLjY0NiA2LjM1NGwuNzA4LS43MDhMOCA5LjI5M2wzLjY0Ni0zLjY0Ny43MDguNzA4TDggMTAuNzA3eiIvPjwvc3ZnPg==)}.fng-accordion-item-body .fng-accordion-item--expanded:before{background-color:transparent}@media (min-width: 600px){.fng-accordion-item-body>:not(.fng-accordion){margin-right:64px}.fng-accordion-item-body .fng-accordion-item-header{padding-top:24px;padding-right:168px}.fng-accordion-item-body .fng-accordion-item-link{font-size:var(--fwe-font-size-base);top:24px;max-width:128px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fng-accordion-item-body .fng-accordion-item:after{top:30px}}\n"], encapsulation: i0.ViewEncapsulation.None }); }
33
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAccordionItemBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
34
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngAccordionItemBodyComponent, isStandalone: true, selector: "fng-accordion-item-body", ngImport: i0, template: "<div\r\n role=\"region\"\r\n [attr.id]=\"id + '-body'\"\r\n [attr.aria-labelledby]=\"id + '-header'\"\r\n class=\"fng-accordion-item-body\"\r\n>\r\n <ng-content></ng-content>\r\n <div class=\"fng-accordion-item-body-spacer-bottom\"></div>\r\n</div>\r\n", styles: [".fng-accordion-item-body{overflow:hidden;transition:height .3s cubic-bezier(.4,0,.2,1);height:0px}.fng-accordion-item-body>:first-child:not(.fng-accordion-item-body-spacer-bottom):not(.fng-accordion){margin-top:0!important;padding-top:0!important}.fng-accordion-item-body>:not(.fng-accordion){margin-right:0}.fng-accordion-item-body-content{margin-right:64px}.fng-accordion-item-body-spacer-bottom{margin-top:24px;height:0;width:0}.fng-accordion-item-body .fng-accordion{margin-top:64px;margin-bottom:24px}.fng-accordion-item-body .fng-accordion-item-link{display:block;top:8px}.fng-accordion-item-body .fng-accordion-item-header{padding-top:32px;padding-right:32px}.fng-accordion-item-body .fng-accordion-item:after{top:12px;right:4px;height:16px;width:16px;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxNnYxNkgweiIvPjxwYXRoIGZpbGw9IiMwMDkxREMiIGQ9Ik04IDEwLjcwNyAzLjY0NiA2LjM1NGwuNzA4LS43MDhMOCA5LjI5M2wzLjY0Ni0zLjY0Ny43MDguNzA4TDggMTAuNzA3eiIvPjwvc3ZnPg==)}.fng-accordion-item-body .fng-accordion-item--expanded:before{background-color:transparent}@media (min-width: 600px){.fng-accordion-item-body>:not(.fng-accordion){margin-right:64px}.fng-accordion-item-body .fng-accordion-item-header{padding-top:24px;padding-right:168px}.fng-accordion-item-body .fng-accordion-item-link{font-size:var(--fwe-font-size-base);top:24px;max-width:128px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fng-accordion-item-body .fng-accordion-item:after{top:30px}}\n"], encapsulation: i0.ViewEncapsulation.None }); }
35
35
  }
36
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAccordionItemBodyComponent, decorators: [{
36
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAccordionItemBodyComponent, decorators: [{
37
37
  type: Component,
38
38
  args: [{ standalone: true, selector: 'fng-accordion-item-body', encapsulation: ViewEncapsulation.None, template: "<div\r\n role=\"region\"\r\n [attr.id]=\"id + '-body'\"\r\n [attr.aria-labelledby]=\"id + '-header'\"\r\n class=\"fng-accordion-item-body\"\r\n>\r\n <ng-content></ng-content>\r\n <div class=\"fng-accordion-item-body-spacer-bottom\"></div>\r\n</div>\r\n", styles: [".fng-accordion-item-body{overflow:hidden;transition:height .3s cubic-bezier(.4,0,.2,1);height:0px}.fng-accordion-item-body>:first-child:not(.fng-accordion-item-body-spacer-bottom):not(.fng-accordion){margin-top:0!important;padding-top:0!important}.fng-accordion-item-body>:not(.fng-accordion){margin-right:0}.fng-accordion-item-body-content{margin-right:64px}.fng-accordion-item-body-spacer-bottom{margin-top:24px;height:0;width:0}.fng-accordion-item-body .fng-accordion{margin-top:64px;margin-bottom:24px}.fng-accordion-item-body .fng-accordion-item-link{display:block;top:8px}.fng-accordion-item-body .fng-accordion-item-header{padding-top:32px;padding-right:32px}.fng-accordion-item-body .fng-accordion-item:after{top:12px;right:4px;height:16px;width:16px;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNiAxNiI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgxNnYxNkgweiIvPjxwYXRoIGZpbGw9IiMwMDkxREMiIGQ9Ik04IDEwLjcwNyAzLjY0NiA2LjM1NGwuNzA4LS43MDhMOCA5LjI5M2wzLjY0Ni0zLjY0Ny43MDguNzA4TDggMTAuNzA3eiIvPjwvc3ZnPg==)}.fng-accordion-item-body .fng-accordion-item--expanded:before{background-color:transparent}@media (min-width: 600px){.fng-accordion-item-body>:not(.fng-accordion){margin-right:64px}.fng-accordion-item-body .fng-accordion-item-header{padding-top:24px;padding-right:168px}.fng-accordion-item-body .fng-accordion-item-link{font-size:var(--fwe-font-size-base);top:24px;max-width:128px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fng-accordion-item-body .fng-accordion-item:after{top:30px}}\n"] }]
39
39
  }] });
@@ -55,10 +55,10 @@ class FngAccordionItemHeaderComponent {
55
55
  toggle() {
56
56
  this.actions.next(FngAccordionHeaderActions.Toggle);
57
57
  }
58
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAccordionItemHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
59
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngAccordionItemHeaderComponent, isStandalone: true, selector: "fng-accordion-item-header", ngImport: i0, template: "<div\r\n class=\"fng-accordion-item-header\"\r\n role=\"button\"\r\n tabindex=\"0\"\r\n [attr.id]=\"id + '-header'\"\r\n [attr.aria-expanded]=\"\"\r\n [attr.aria-controls]=\"id + '-body'\"\r\n (click)=\"toggle()\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-accordion-item-header{display:flex;align-items:center;padding:24px 64px 24px 0;min-height:48px;cursor:pointer}\n"], encapsulation: i0.ViewEncapsulation.None }); }
58
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAccordionItemHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
59
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngAccordionItemHeaderComponent, isStandalone: true, selector: "fng-accordion-item-header", ngImport: i0, template: "<div\r\n class=\"fng-accordion-item-header\"\r\n role=\"button\"\r\n tabindex=\"0\"\r\n [attr.id]=\"id + '-header'\"\r\n [attr.aria-expanded]=\"\"\r\n [attr.aria-controls]=\"id + '-body'\"\r\n (click)=\"toggle()\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-accordion-item-header{display:flex;align-items:center;padding:24px 64px 24px 0;min-height:48px;cursor:pointer}\n"], encapsulation: i0.ViewEncapsulation.None }); }
60
60
  }
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAccordionItemHeaderComponent, decorators: [{
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAccordionItemHeaderComponent, decorators: [{
62
62
  type: Component,
63
63
  args: [{ standalone: true, selector: 'fng-accordion-item-header', encapsulation: ViewEncapsulation.None, template: "<div\r\n class=\"fng-accordion-item-header\"\r\n role=\"button\"\r\n tabindex=\"0\"\r\n [attr.id]=\"id + '-header'\"\r\n [attr.aria-expanded]=\"\"\r\n [attr.aria-controls]=\"id + '-body'\"\r\n (click)=\"toggle()\"\r\n>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-accordion-item-header{display:flex;align-items:center;padding:24px 64px 24px 0;min-height:48px;cursor:pointer}\n"] }]
64
64
  }] });
@@ -192,10 +192,10 @@ class FngAccordionItemComponent {
192
192
  this.handleAction(action);
193
193
  });
194
194
  }
195
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAccordionItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
196
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngAccordionItemComponent, isStandalone: true, selector: "fng-accordion-item", queries: [{ propertyName: "header", first: true, predicate: FngAccordionItemHeaderComponent, descendants: true }, { propertyName: "body", first: true, predicate: FngAccordionItemBodyComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"fng-accordion-item\" [class.fng-accordion-item--collapsed]=\"!expanded\" [class.fng-accordion-item--expanded]=\"expanded === true\">\r\n <ng-content></ng-content>\r\n <div class=\"fng-accordion-item-link\">{{ linkText }}</div>\r\n</div>\r\n", styles: [".fng-accordion-item{position:relative;padding:0 16px 0 24px;border-top:1px solid var(--fwe-gray-100);border-bottom:1px solid var(--fwe-gray-100)}.fng-accordion-item-link{position:absolute;top:24px;right:24px;color:var(--fwe-caerul);font-size:var(--fwe-font-size-md);pointer-events:none;display:none}.fng-accordion-item:before{position:absolute;top:0;left:0;display:block;content:\"\";width:4px;height:0px;background-color:var(--fwe-caerul)}.fng-accordion-item:after{position:absolute;top:21px;right:16px;pointer-events:none;content:\"\";height:32px;width:32px;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAzMiI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgzMnYzMkgweiIvPjxwYXRoIGZpbGw9IiMzMzMiIGQ9Im0xNiAyMi04LjcwNy04LjcwNyAxLjQxNC0xLjQxNEwxNiAxOS4xNzJsNy4yOTMtNy4yOTMgMS40MTQgMS40MTRMMTYgMjJ6IiAvPjwvc3ZnPg==);transition:transform .2s ease}.fng-accordion-item--expanded .fng-accordion-item-header{font-weight:var(--fwe-font-weight-bold)}.fng-accordion-item--expanded .fng-accordion-item-body{height:auto}.fng-accordion-item--expanded:after{transform:rotate(-180deg)}.fng-accordion-item--expanded:before{height:100%}.fng-accordion-item--collapsed .fng-accordion-item-body{height:0px}.fng-accordion-item--collapsed .fng-accordion-item-header{font-weight:var(--fwe-font-weight-normal)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
195
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAccordionItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
196
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngAccordionItemComponent, isStandalone: true, selector: "fng-accordion-item", queries: [{ propertyName: "header", first: true, predicate: FngAccordionItemHeaderComponent, descendants: true }, { propertyName: "body", first: true, predicate: FngAccordionItemBodyComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"fng-accordion-item\" [class.fng-accordion-item--collapsed]=\"!expanded\" [class.fng-accordion-item--expanded]=\"expanded === true\">\r\n <ng-content></ng-content>\r\n <div class=\"fng-accordion-item-link\">{{ linkText }}</div>\r\n</div>\r\n", styles: [".fng-accordion-item{position:relative;padding:0 16px 0 24px;border-top:1px solid var(--fwe-gray-100);border-bottom:1px solid var(--fwe-gray-100)}.fng-accordion-item-link{position:absolute;top:24px;right:24px;color:var(--fwe-caerul);font-size:var(--fwe-font-size-md);pointer-events:none;display:none}.fng-accordion-item:before{position:absolute;top:0;left:0;display:block;content:\"\";width:4px;height:0px;background-color:var(--fwe-caerul)}.fng-accordion-item:after{position:absolute;top:21px;right:16px;pointer-events:none;content:\"\";height:32px;width:32px;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAzMiI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgzMnYzMkgweiIvPjxwYXRoIGZpbGw9IiMzMzMiIGQ9Im0xNiAyMi04LjcwNy04LjcwNyAxLjQxNC0xLjQxNEwxNiAxOS4xNzJsNy4yOTMtNy4yOTMgMS40MTQgMS40MTRMMTYgMjJ6IiAvPjwvc3ZnPg==);transition:transform .2s ease}.fng-accordion-item--expanded .fng-accordion-item-header{font-weight:var(--fwe-font-weight-bold)}.fng-accordion-item--expanded .fng-accordion-item-body{height:auto}.fng-accordion-item--expanded:after{transform:rotate(-180deg)}.fng-accordion-item--expanded:before{height:100%}.fng-accordion-item--collapsed .fng-accordion-item-body{height:0px}.fng-accordion-item--collapsed .fng-accordion-item-header{font-weight:var(--fwe-font-weight-normal)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
197
197
  }
198
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAccordionItemComponent, decorators: [{
198
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAccordionItemComponent, decorators: [{
199
199
  type: Component,
200
200
  args: [{ standalone: true, selector: 'fng-accordion-item', encapsulation: ViewEncapsulation.None, template: "<div class=\"fng-accordion-item\" [class.fng-accordion-item--collapsed]=\"!expanded\" [class.fng-accordion-item--expanded]=\"expanded === true\">\r\n <ng-content></ng-content>\r\n <div class=\"fng-accordion-item-link\">{{ linkText }}</div>\r\n</div>\r\n", styles: [".fng-accordion-item{position:relative;padding:0 16px 0 24px;border-top:1px solid var(--fwe-gray-100);border-bottom:1px solid var(--fwe-gray-100)}.fng-accordion-item-link{position:absolute;top:24px;right:24px;color:var(--fwe-caerul);font-size:var(--fwe-font-size-md);pointer-events:none;display:none}.fng-accordion-item:before{position:absolute;top:0;left:0;display:block;content:\"\";width:4px;height:0px;background-color:var(--fwe-caerul)}.fng-accordion-item:after{position:absolute;top:21px;right:16px;pointer-events:none;content:\"\";height:32px;width:32px;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMiAzMiI+PHBhdGggZmlsbD0ibm9uZSIgZD0iTTAgMGgzMnYzMkgweiIvPjxwYXRoIGZpbGw9IiMzMzMiIGQ9Im0xNiAyMi04LjcwNy04LjcwNyAxLjQxNC0xLjQxNEwxNiAxOS4xNzJsNy4yOTMtNy4yOTMgMS40MTQgMS40MTRMMTYgMjJ6IiAvPjwvc3ZnPg==);transition:transform .2s ease}.fng-accordion-item--expanded .fng-accordion-item-header{font-weight:var(--fwe-font-weight-bold)}.fng-accordion-item--expanded .fng-accordion-item-body{height:auto}.fng-accordion-item--expanded:after{transform:rotate(-180deg)}.fng-accordion-item--expanded:before{height:100%}.fng-accordion-item--collapsed .fng-accordion-item-body{height:0px}.fng-accordion-item--collapsed .fng-accordion-item-header{font-weight:var(--fwe-font-weight-normal)}\n"] }]
201
201
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }], propDecorators: { header: [{
@@ -241,10 +241,10 @@ class FngAccordionComponent {
241
241
  closeAll() {
242
242
  this.actions.next(FngAccordionActions.CloseAll);
243
243
  }
244
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
245
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngAccordionComponent, isStandalone: true, selector: "fng-accordion", inputs: { multi: ["fngAccordionKeepItemsOpen", "multi"], showMore: ["fngAccordionShowMoreText", "showMore"], showLess: ["fngAccordionShowLessText", "showLess"] }, queries: [{ propertyName: "items", predicate: FngAccordionItemComponent }], ngImport: i0, template: "<div class=\"fng-accordion\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-accordion{background-color:var(--fwe-white);border-bottom:1px solid var(--fwe-gray-100)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
244
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
245
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngAccordionComponent, isStandalone: true, selector: "fng-accordion", inputs: { multi: ["fngAccordionKeepItemsOpen", "multi"], showMore: ["fngAccordionShowMoreText", "showMore"], showLess: ["fngAccordionShowLessText", "showLess"] }, queries: [{ propertyName: "items", predicate: FngAccordionItemComponent }], ngImport: i0, template: "<div class=\"fng-accordion\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-accordion{background-color:var(--fwe-white);border-bottom:1px solid var(--fwe-gray-100)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
246
246
  }
247
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAccordionComponent, decorators: [{
247
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAccordionComponent, decorators: [{
248
248
  type: Component,
249
249
  args: [{ standalone: true, selector: 'fng-accordion', encapsulation: ViewEncapsulation.None, template: "<div class=\"fng-accordion\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-accordion{background-color:var(--fwe-white);border-bottom:1px solid var(--fwe-gray-100)}\n"] }]
250
250
  }], propDecorators: { multi: [{
@@ -262,10 +262,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
262
262
  }] } });
263
263
 
264
264
  class FngAccordionHeaderComponent {
265
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAccordionHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
266
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngAccordionHeaderComponent, isStandalone: true, selector: "fng-accordion-header", ngImport: i0, template: "<div class=\"fng-accordion-header\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-accordion-header{display:flex;align-items:center;height:48px;padding:0 16px 0 24px;font-size:var(--fwe-font-size-md);font-weight:var(--fwe-font-weight-bold);color:var(--fwe-text);border-bottom:1px solid var(--fwe-gray-100)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
265
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAccordionHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
266
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngAccordionHeaderComponent, isStandalone: true, selector: "fng-accordion-header", ngImport: i0, template: "<div class=\"fng-accordion-header\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-accordion-header{display:flex;align-items:center;height:48px;padding:0 16px 0 24px;font-size:var(--fwe-font-size-md);font-weight:var(--fwe-font-weight-bold);color:var(--fwe-text);border-bottom:1px solid var(--fwe-gray-100)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
267
267
  }
268
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAccordionHeaderComponent, decorators: [{
268
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAccordionHeaderComponent, decorators: [{
269
269
  type: Component,
270
270
  args: [{ standalone: true, selector: 'fng-accordion-header', encapsulation: ViewEncapsulation.None, template: "<div class=\"fng-accordion-header\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-accordion-header{display:flex;align-items:center;height:48px;padding:0 16px 0 24px;font-size:var(--fwe-font-size-md);font-weight:var(--fwe-font-weight-bold);color:var(--fwe-text);border-bottom:1px solid var(--fwe-gray-100)}\n"] }]
271
271
  }] });
@@ -276,10 +276,10 @@ class FngBreadcrumbComponent {
276
276
  this.locations = [];
277
277
  this.navigate = new EventEmitter();
278
278
  }
279
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngBreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
280
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngBreadcrumbComponent, isStandalone: true, selector: "fng-breadcrumb", inputs: { useRouterLink: "useRouterLink", locations: "locations" }, outputs: { navigate: "navigate" }, ngImport: i0, template: "<div class=\"fwe-breadcrumb\">\n @for (location of locations; track location) {\n @if (useRouterLink) {\n <a class=\"fng-breadcrumb-location\" [routerLink]=\"location.url\">{{ location.label }}</a>\n }\n @if (!useRouterLink) {\n <a class=\"fng-breadcrumb-location\" (click)=\"navigate.emit(location.url)\">{{ location.label }}</a>\n }\n }\n</div>\n", dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], encapsulation: i0.ViewEncapsulation.None }); }
279
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngBreadcrumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
280
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngBreadcrumbComponent, isStandalone: true, selector: "fng-breadcrumb", inputs: { useRouterLink: "useRouterLink", locations: "locations" }, outputs: { navigate: "navigate" }, ngImport: i0, template: "<div class=\"fwe-breadcrumb\">\n @for (location of locations; track location) {\n @if (useRouterLink) {\n <a class=\"fng-breadcrumb-location\" [routerLink]=\"location.url\">{{ location.label }}</a>\n }\n @if (!useRouterLink) {\n <a class=\"fng-breadcrumb-location\" (click)=\"navigate.emit(location.url)\">{{ location.label }}</a>\n }\n }\n</div>\n", dependencies: [{ kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }], encapsulation: i0.ViewEncapsulation.None }); }
281
281
  }
282
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngBreadcrumbComponent, decorators: [{
282
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngBreadcrumbComponent, decorators: [{
283
283
  type: Component,
284
284
  args: [{ imports: [RouterModule], selector: 'fng-breadcrumb', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-breadcrumb\">\n @for (location of locations; track location) {\n @if (useRouterLink) {\n <a class=\"fng-breadcrumb-location\" [routerLink]=\"location.url\">{{ location.label }}</a>\n }\n @if (!useRouterLink) {\n <a class=\"fng-breadcrumb-location\" (click)=\"navigate.emit(location.url)\">{{ location.label }}</a>\n }\n }\n</div>\n" }]
285
285
  }], propDecorators: { useRouterLink: [{
@@ -305,10 +305,10 @@ class FngButtonComponent {
305
305
  this.fngClick.emit(event);
306
306
  }
307
307
  }
308
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
309
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngButtonComponent, isStandalone: true, selector: "fng-button", inputs: { text: "text", icon: "icon", disabled: "disabled", primary: "primary", tertiary: "tertiary", iconOnly: "iconOnly", large: "large", floating: "floating" }, outputs: { fngClick: "fngClick" }, queries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }], ngImport: i0, template: "\n<button\n (click)=\"onClick($event)\"\n [ngClass]=\"{\r\n 'fwe-btn': true,\r\n 'fng-button': true,\r\n 'fwe-btn-icon': iconOnly,\r\n 'fwe-disabled': disabled,\r\n 'fwe-btn-hero': primary && !tertiary,\r\n 'fwe-btn-link': tertiary && !primary,\r\n 'fwe-btn-lg': large,\r\n 'fwe-btn-floating': floating\r\n }\"\r\n [disabled]=\"disabled\"\n >\n @if (icon) {\n <i [class]=\"'fwe-icon fwe-icon-' + icon\"></i>\n }\n @if (!iconOnly) {\n <div>\n <ng-content></ng-content>\n @if (!content) {\n <span>{{ text }}</span>\n }\n </div>\n }\n</button>\n", styles: ["fng-button{display:inline-block}.fng-button{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
308
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
309
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngButtonComponent, isStandalone: true, selector: "fng-button", inputs: { text: "text", icon: "icon", disabled: "disabled", primary: "primary", tertiary: "tertiary", iconOnly: "iconOnly", large: "large", floating: "floating" }, outputs: { fngClick: "fngClick" }, queries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }], ngImport: i0, template: "\n<button\n (click)=\"onClick($event)\"\n [ngClass]=\"{\r\n 'fwe-btn': true,\r\n 'fng-button': true,\r\n 'fwe-btn-icon': iconOnly,\r\n 'fwe-disabled': disabled,\r\n 'fwe-btn-hero': primary && !tertiary,\r\n 'fwe-btn-link': tertiary && !primary,\r\n 'fwe-btn-lg': large,\r\n 'fwe-btn-floating': floating\r\n }\"\r\n [disabled]=\"disabled\"\n >\n @if (icon) {\n <i [class]=\"'fwe-icon fwe-icon-' + icon\"></i>\n }\n @if (!iconOnly) {\n <div>\n <ng-content></ng-content>\n @if (!content) {\n <span>{{ text }}</span>\n }\n </div>\n }\n</button>\n", styles: ["fng-button{display:inline-block}.fng-button{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
310
310
  }
311
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngButtonComponent, decorators: [{
311
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngButtonComponent, decorators: [{
312
312
  type: Component,
313
313
  args: [{ imports: [CommonModule], selector: 'fng-button', encapsulation: ViewEncapsulation.None, template: "\n<button\n (click)=\"onClick($event)\"\n [ngClass]=\"{\r\n 'fwe-btn': true,\r\n 'fng-button': true,\r\n 'fwe-btn-icon': iconOnly,\r\n 'fwe-disabled': disabled,\r\n 'fwe-btn-hero': primary && !tertiary,\r\n 'fwe-btn-link': tertiary && !primary,\r\n 'fwe-btn-lg': large,\r\n 'fwe-btn-floating': floating\r\n }\"\r\n [disabled]=\"disabled\"\n >\n @if (icon) {\n <i [class]=\"'fwe-icon fwe-icon-' + icon\"></i>\n }\n @if (!iconOnly) {\n <div>\n <ng-content></ng-content>\n @if (!content) {\n <span>{{ text }}</span>\n }\n </div>\n }\n</button>\n", styles: ["fng-button{display:inline-block}.fng-button{width:100%}\n"] }]
314
314
  }], propDecorators: { text: [{
@@ -343,10 +343,10 @@ class FngLinkButtonComponent {
343
343
  onClick(event) {
344
344
  this.fngClick.emit(event);
345
345
  }
346
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngLinkButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
347
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngLinkButtonComponent, isStandalone: true, selector: "fng-link-button", inputs: { text: "text", icon: "icon", disabled: "disabled", iconOnly: "iconOnly" }, outputs: { fngClick: "fngClick" }, queries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }], ngImport: i0, template: "<button\n (click)=\"onClick($event)\"\n [ngClass]=\"{\r\n 'fwe-btn': true,\r\n 'fwe-btn-link': true,\r\n 'fwe-disabled': disabled\r\n }\"\r\n [disabled]=\"disabled\"\n >\n @if (icon) {\n <i [class]=\"'fwe-icon fwe-icon-' + icon\"></i>\n }\n @if (!iconOnly) {\n <ng-content></ng-content>\n }\n @if (!content) {\n <span>{{ text }}</span>\n }\n</button>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
346
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngLinkButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
347
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngLinkButtonComponent, isStandalone: true, selector: "fng-link-button", inputs: { text: "text", icon: "icon", disabled: "disabled", iconOnly: "iconOnly" }, outputs: { fngClick: "fngClick" }, queries: [{ propertyName: "content", first: true, predicate: ["content"], descendants: true }], ngImport: i0, template: "<button\n (click)=\"onClick($event)\"\n [ngClass]=\"{\r\n 'fwe-btn': true,\r\n 'fwe-btn-link': true,\r\n 'fwe-disabled': disabled\r\n }\"\r\n [disabled]=\"disabled\"\n >\n @if (icon) {\n <i [class]=\"'fwe-icon fwe-icon-' + icon\"></i>\n }\n @if (!iconOnly) {\n <ng-content></ng-content>\n }\n @if (!content) {\n <span>{{ text }}</span>\n }\n</button>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
348
348
  }
349
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngLinkButtonComponent, decorators: [{
349
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngLinkButtonComponent, decorators: [{
350
350
  type: Component,
351
351
  args: [{ imports: [CommonModule], selector: 'fng-link-button', encapsulation: ViewEncapsulation.None, template: "<button\n (click)=\"onClick($event)\"\n [ngClass]=\"{\r\n 'fwe-btn': true,\r\n 'fwe-btn-link': true,\r\n 'fwe-disabled': disabled\r\n }\"\r\n [disabled]=\"disabled\"\n >\n @if (icon) {\n <i [class]=\"'fwe-icon fwe-icon-' + icon\"></i>\n }\n @if (!iconOnly) {\n <ng-content></ng-content>\n }\n @if (!content) {\n <span>{{ text }}</span>\n }\n</button>\n" }]
352
352
  }], propDecorators: { text: [{
@@ -368,10 +368,10 @@ class FngChipContainerComponent {
368
368
  constructor() {
369
369
  this.large = false;
370
370
  }
371
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngChipContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
372
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngChipContainerComponent, isStandalone: true, selector: "fng-chip-container", inputs: { large: "large" }, ngImport: i0, template: "<div class=\"fwe-chip-container\" [class.fwe-chip-container-lg]=\"large\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
371
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngChipContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
372
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngChipContainerComponent, isStandalone: true, selector: "fng-chip-container", inputs: { large: "large" }, ngImport: i0, template: "<div class=\"fwe-chip-container\" [class.fwe-chip-container-lg]=\"large\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
373
373
  }
374
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngChipContainerComponent, decorators: [{
374
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngChipContainerComponent, decorators: [{
375
375
  type: Component,
376
376
  args: [{ imports: [], selector: 'fng-chip-container', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-chip-container\" [class.fwe-chip-container-lg]=\"large\">\r\n <ng-content></ng-content>\r\n</div>\r\n" }]
377
377
  }], propDecorators: { large: [{
@@ -394,10 +394,10 @@ class FngChipComponent {
394
394
  this.disabled = false;
395
395
  this.large = false;
396
396
  }
397
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngChipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
398
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngChipComponent, isStandalone: true, selector: "fng-chip", inputs: { type: "type", selected: "selected", disabled: "disabled", icon: "icon", large: "large" }, ngImport: i0, template: "<div\n [ngClass]=\"{\r\n 'fwe-chip': true,\r\n 'fwe-selected': selected,\r\n 'fwe-disabled': disabled,\r\n 'fwe-chip-lg': large,\r\n 'fwe-category': type === ChipType.Category,\r\n 'fwe-filter': type === ChipType.Filter,\r\n 'fwe-readonly': type === ChipType.Readonly\r\n }\"\r\n >\n @if (icon) {\n <i [class]=\"'fwe-icon fwe-icon-' + icon\"></i>\n }\n <ng-content></ng-content>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
397
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngChipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
398
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngChipComponent, isStandalone: true, selector: "fng-chip", inputs: { type: "type", selected: "selected", disabled: "disabled", icon: "icon", large: "large" }, ngImport: i0, template: "<div\n [ngClass]=\"{\r\n 'fwe-chip': true,\r\n 'fwe-selected': selected,\r\n 'fwe-disabled': disabled,\r\n 'fwe-chip-lg': large,\r\n 'fwe-category': type === ChipType.Category,\r\n 'fwe-filter': type === ChipType.Filter,\r\n 'fwe-readonly': type === ChipType.Readonly\r\n }\"\r\n >\n @if (icon) {\n <i [class]=\"'fwe-icon fwe-icon-' + icon\"></i>\n }\n <ng-content></ng-content>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
399
399
  }
400
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngChipComponent, decorators: [{
400
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngChipComponent, decorators: [{
401
401
  type: Component,
402
402
  args: [{ imports: [CommonModule], selector: 'fng-chip', encapsulation: ViewEncapsulation.None, template: "<div\n [ngClass]=\"{\r\n 'fwe-chip': true,\r\n 'fwe-selected': selected,\r\n 'fwe-disabled': disabled,\r\n 'fwe-chip-lg': large,\r\n 'fwe-category': type === ChipType.Category,\r\n 'fwe-filter': type === ChipType.Filter,\r\n 'fwe-readonly': type === ChipType.Readonly\r\n }\"\r\n >\n @if (icon) {\n <i [class]=\"'fwe-icon fwe-icon-' + icon\"></i>\n }\n <ng-content></ng-content>\n</div>\n" }]
403
403
  }], propDecorators: { type: [{
@@ -423,10 +423,10 @@ class FngClickOutsideDirective {
423
423
  this.clickOutside.emit(null);
424
424
  }
425
425
  }
426
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngClickOutsideDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
427
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.13", type: FngClickOutsideDirective, isStandalone: true, selector: "[fngClickOutside]", outputs: { clickOutside: "clickOutside" }, host: { listeners: { "document:click": "onClick($event.target)" } }, ngImport: i0 }); }
426
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngClickOutsideDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
427
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: FngClickOutsideDirective, isStandalone: true, selector: "[fngClickOutside]", outputs: { clickOutside: "clickOutside" }, host: { listeners: { "document:click": "onClick($event.target)" } }, ngImport: i0 }); }
428
428
  }
429
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngClickOutsideDirective, decorators: [{
429
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngClickOutsideDirective, decorators: [{
430
430
  type: Directive,
431
431
  args: [{
432
432
  standalone: true,
@@ -500,10 +500,10 @@ class FngBottomSheetComponent {
500
500
  this.close.emit();
501
501
  }, 300); // wait for the transition to finish before closing
502
502
  }
503
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngBottomSheetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
504
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngBottomSheetComponent, isStandalone: true, selector: "fng-bottom-sheet", inputs: { hasBackdrop: "hasBackdrop", isExpanded: "isExpanded", hideCloseIcon: "hideCloseIcon", expandFrom: "expandFrom" }, outputs: { close: "close" }, host: { listeners: { "touchstart": "onTouchStart($event)", "touchmove": "onTouchMove($event)", "touchend": "onTouchEnd()" }, properties: { "class.bottom-sheet--open": "this.isOpen", "class.bottom-sheet--expanded": "this.isExpandedState" } }, ngImport: i0, template: "<div class=\"fwe-bottom-sheet-backdrop\" [class.fwe-bottom-sheet-backdrop--visible]=\"hasBackdrop\"\n(click)=\"closeBottomSheet()\"></div>\n<div class=\"fwe-bottom-sheet-container\" [class.fwe-bottom-sheet-container--open]=\"isOpen\"\n [class.fwe-bottom-sheet-container--expanded]=\"isExpanded\"\n [class.fwe-bottom-sheet-container--expand-from-center]=\"expandFrom === 'center'\"\n [class.fwe-bottom-sheet-container--with-backdrop]=\"hasBackdrop\"\n [class.fwe-bottom-sheet-container--closing]=\"isClosing\"\n >\n <div class=\"fwe-bottom-sheet-header\">\n <div class=\"fwe-bottom-sheet-drag-handle-container\" (click)=\"toggleExpand()\">\n <div class=\"fwe-bottom-sheet-drag-handle\"></div>\n </div>\n @if (!hideCloseIcon) {\n <button type=\"button\"\n class=\"fwe-bottom-sheet-close-btn\" (click)=\"closeBottomSheet()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n }\n </div>\n <div class=\"fwe-bottom-sheet-content\">\n <ng-content></ng-content>\n </div>\n</div>", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
503
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngBottomSheetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
504
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngBottomSheetComponent, isStandalone: true, selector: "fng-bottom-sheet", inputs: { hasBackdrop: "hasBackdrop", isExpanded: "isExpanded", hideCloseIcon: "hideCloseIcon", expandFrom: "expandFrom" }, outputs: { close: "close" }, host: { listeners: { "touchstart": "onTouchStart($event)", "touchmove": "onTouchMove($event)", "touchend": "onTouchEnd()" }, properties: { "class.bottom-sheet--open": "this.isOpen", "class.bottom-sheet--expanded": "this.isExpandedState" } }, ngImport: i0, template: "<div class=\"fwe-bottom-sheet-backdrop\" [class.fwe-bottom-sheet-backdrop--visible]=\"hasBackdrop\"\n(click)=\"closeBottomSheet()\"></div>\n<div class=\"fwe-bottom-sheet-container\" [class.fwe-bottom-sheet-container--open]=\"isOpen\"\n [class.fwe-bottom-sheet-container--expanded]=\"isExpanded\"\n [class.fwe-bottom-sheet-container--expand-from-center]=\"expandFrom === 'center'\"\n [class.fwe-bottom-sheet-container--with-backdrop]=\"hasBackdrop\"\n [class.fwe-bottom-sheet-container--closing]=\"isClosing\"\n >\n <div class=\"fwe-bottom-sheet-header\">\n <div class=\"fwe-bottom-sheet-drag-handle-container\" (click)=\"toggleExpand()\">\n <div class=\"fwe-bottom-sheet-drag-handle\"></div>\n </div>\n @if (!hideCloseIcon) {\n <button type=\"button\"\n class=\"fwe-bottom-sheet-close-btn\" (click)=\"closeBottomSheet()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n }\n </div>\n <div class=\"fwe-bottom-sheet-content\">\n <ng-content></ng-content>\n </div>\n</div>", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
505
505
  }
506
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngBottomSheetComponent, decorators: [{
506
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngBottomSheetComponent, decorators: [{
507
507
  type: Component,
508
508
  args: [{ selector: 'fng-bottom-sheet', imports: [], encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-bottom-sheet-backdrop\" [class.fwe-bottom-sheet-backdrop--visible]=\"hasBackdrop\"\n(click)=\"closeBottomSheet()\"></div>\n<div class=\"fwe-bottom-sheet-container\" [class.fwe-bottom-sheet-container--open]=\"isOpen\"\n [class.fwe-bottom-sheet-container--expanded]=\"isExpanded\"\n [class.fwe-bottom-sheet-container--expand-from-center]=\"expandFrom === 'center'\"\n [class.fwe-bottom-sheet-container--with-backdrop]=\"hasBackdrop\"\n [class.fwe-bottom-sheet-container--closing]=\"isClosing\"\n >\n <div class=\"fwe-bottom-sheet-header\">\n <div class=\"fwe-bottom-sheet-drag-handle-container\" (click)=\"toggleExpand()\">\n <div class=\"fwe-bottom-sheet-drag-handle\"></div>\n </div>\n @if (!hideCloseIcon) {\n <button type=\"button\"\n class=\"fwe-bottom-sheet-close-btn\" (click)=\"closeBottomSheet()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n }\n </div>\n <div class=\"fwe-bottom-sheet-content\">\n <ng-content></ng-content>\n </div>\n</div>" }]
509
509
  }], propDecorators: { hasBackdrop: [{
@@ -537,10 +537,10 @@ class FngLoadingIndicatorComponent {
537
537
  constructor() {
538
538
  this.size = 'large';
539
539
  }
540
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngLoadingIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
541
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngLoadingIndicatorComponent, isStandalone: true, selector: "fng-loading-indicator", inputs: { size: "size" }, ngImport: i0, template: "<div class=\"fwe-waiting-container\" [class.fwe-waiting-container-sm]=\"size === 'small'\">\r\n <div\r\n class=\"fwe-waiting-indicator\"\r\n [class.fwe-waiting-indicator-md]=\"size === 'medium'\"\r\n [class.fwe-waiting-indicator-sm]=\"size === 'small'\"\r\n >\r\n <div class=\"fwe-waiting-circle-1\"></div>\r\n <div class=\"fwe-waiting-circle-2\"></div>\r\n <div class=\"fwe-waiting-circle-3\"></div>\r\n <div class=\"fwe-waiting-circle-4\"></div>\r\n </div>\r\n <div class=\"fwe-waiting-content-container\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
540
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngLoadingIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
541
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngLoadingIndicatorComponent, isStandalone: true, selector: "fng-loading-indicator", inputs: { size: "size" }, ngImport: i0, template: "<div class=\"fwe-waiting-container\" [class.fwe-waiting-container-sm]=\"size === 'small'\">\r\n <div\r\n class=\"fwe-waiting-indicator\"\r\n [class.fwe-waiting-indicator-md]=\"size === 'medium'\"\r\n [class.fwe-waiting-indicator-sm]=\"size === 'small'\"\r\n >\r\n <div class=\"fwe-waiting-circle-1\"></div>\r\n <div class=\"fwe-waiting-circle-2\"></div>\r\n <div class=\"fwe-waiting-circle-3\"></div>\r\n <div class=\"fwe-waiting-circle-4\"></div>\r\n </div>\r\n <div class=\"fwe-waiting-content-container\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
542
542
  }
543
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngLoadingIndicatorComponent, decorators: [{
543
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngLoadingIndicatorComponent, decorators: [{
544
544
  type: Component,
545
545
  args: [{ imports: [], selector: 'fng-loading-indicator', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-waiting-container\" [class.fwe-waiting-container-sm]=\"size === 'small'\">\r\n <div\r\n class=\"fwe-waiting-indicator\"\r\n [class.fwe-waiting-indicator-md]=\"size === 'medium'\"\r\n [class.fwe-waiting-indicator-sm]=\"size === 'small'\"\r\n >\r\n <div class=\"fwe-waiting-circle-1\"></div>\r\n <div class=\"fwe-waiting-circle-2\"></div>\r\n <div class=\"fwe-waiting-circle-3\"></div>\r\n <div class=\"fwe-waiting-circle-4\"></div>\r\n </div>\r\n <div class=\"fwe-waiting-content-container\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n" }]
546
546
  }], propDecorators: { size: [{
@@ -564,10 +564,10 @@ class FngMobileFlyoutItemComponent {
564
564
  this.onNavigateCallback(this.pageLink);
565
565
  }
566
566
  }
567
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngMobileFlyoutItemComponent, deps: [{ token: i1.RouterLinkActive, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
568
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngMobileFlyoutItemComponent, isStandalone: true, selector: "fng-mobile-flyout-item", inputs: { icon: "icon", pageLink: "pageLink", lastElement: "lastElement" }, usesOnChanges: true, ngImport: i0, template: "<a class=\"fwe-mobile-flyout-item\" [class.fwe-bb]=\"!lastElement\" (click)=\"onClick()\">\n @if (icon) {\n <i [class]=\"'fwe-mr-xs fwe-icon fwe-icon-' + icon\"></i>\n }\n @if (!rla) {\n <div class=\"fwe-flex-grow-1\" routerLinkActive=\"fwe-color-hero\">\n <ng-container *ngTemplateOutlet=\"itemContent\"></ng-container>\n </div>\n }\n @if (rla?.routerLinkActiveOptions) {\n <div\n class=\"fwe-flex-grow-1\"\n routerLinkActive=\"fwe-color-hero\"\n [routerLinkActiveOptions]=\"rla!.routerLinkActiveOptions\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\"></ng-container>\n </div>\n }\n @if (pageLink) {\n <i class=\"fwe-icon fwe-icon-arrows-right-2\"></i>\n }\n</a>\n<ng-template #itemContent>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }], encapsulation: i0.ViewEncapsulation.None }); }
567
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngMobileFlyoutItemComponent, deps: [{ token: i1.RouterLinkActive, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
568
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngMobileFlyoutItemComponent, isStandalone: true, selector: "fng-mobile-flyout-item", inputs: { icon: "icon", pageLink: "pageLink", lastElement: "lastElement" }, usesOnChanges: true, ngImport: i0, template: "<a class=\"fwe-mobile-flyout-item\" [class.fwe-bb]=\"!lastElement\" (click)=\"onClick()\">\n @if (icon) {\n <i [class]=\"'fwe-mr-xs fwe-icon fwe-icon-' + icon\"></i>\n }\n @if (!rla) {\n <div class=\"fwe-flex-grow-1\" routerLinkActive=\"fwe-color-hero\">\n <ng-container *ngTemplateOutlet=\"itemContent\"></ng-container>\n </div>\n }\n @if (rla?.routerLinkActiveOptions) {\n <div\n class=\"fwe-flex-grow-1\"\n routerLinkActive=\"fwe-color-hero\"\n [routerLinkActiveOptions]=\"rla!.routerLinkActiveOptions\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\"></ng-container>\n </div>\n }\n @if (pageLink) {\n <i class=\"fwe-icon fwe-icon-arrows-right-2\"></i>\n }\n</a>\n<ng-template #itemContent>\n <ng-content></ng-content>\n</ng-template>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }], encapsulation: i0.ViewEncapsulation.None }); }
569
569
  }
570
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngMobileFlyoutItemComponent, decorators: [{
570
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngMobileFlyoutItemComponent, decorators: [{
571
571
  type: Component,
572
572
  args: [{ imports: [CommonModule, RouterModule], selector: 'fng-mobile-flyout-item', encapsulation: ViewEncapsulation.None, template: "<a class=\"fwe-mobile-flyout-item\" [class.fwe-bb]=\"!lastElement\" (click)=\"onClick()\">\n @if (icon) {\n <i [class]=\"'fwe-mr-xs fwe-icon fwe-icon-' + icon\"></i>\n }\n @if (!rla) {\n <div class=\"fwe-flex-grow-1\" routerLinkActive=\"fwe-color-hero\">\n <ng-container *ngTemplateOutlet=\"itemContent\"></ng-container>\n </div>\n }\n @if (rla?.routerLinkActiveOptions) {\n <div\n class=\"fwe-flex-grow-1\"\n routerLinkActive=\"fwe-color-hero\"\n [routerLinkActiveOptions]=\"rla!.routerLinkActiveOptions\"\n >\n <ng-container *ngTemplateOutlet=\"itemContent\"></ng-container>\n </div>\n }\n @if (pageLink) {\n <i class=\"fwe-icon fwe-icon-arrows-right-2\"></i>\n }\n</a>\n<ng-template #itemContent>\n <ng-content></ng-content>\n</ng-template>\n" }]
573
573
  }], ctorParameters: () => [{ type: i1.RouterLinkActive, decorators: [{
@@ -623,10 +623,10 @@ class FngMobileFlyoutPageComponent {
623
623
  });
624
624
  }
625
625
  }
626
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngMobileFlyoutPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
627
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngMobileFlyoutPageComponent, isStandalone: true, selector: "fng-mobile-flyout-page", inputs: { name: "name", back: "back" }, queries: [{ propertyName: "itemComponents", predicate: FngMobileFlyoutItemComponent }], ngImport: i0, template: "<div class=\"fwe-mobile-flyout-page\" [class.fwe-opened]=\"visible\">\n @if (!isfirstelement) {\n <div class=\"fwe-page-back\" (click)=\"onBack()\">\n <i></i>\n <div>{{ back }}</div>\n </div>\n }\n <div class=\"fwe-mobile-flyout-item-container\">\n <ng-content></ng-content>\n </div>\n</div>\n", encapsulation: i0.ViewEncapsulation.None }); }
626
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngMobileFlyoutPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
627
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngMobileFlyoutPageComponent, isStandalone: true, selector: "fng-mobile-flyout-page", inputs: { name: "name", back: "back" }, queries: [{ propertyName: "itemComponents", predicate: FngMobileFlyoutItemComponent }], ngImport: i0, template: "<div class=\"fwe-mobile-flyout-page\" [class.fwe-opened]=\"visible\">\n @if (!isfirstelement) {\n <div class=\"fwe-page-back\" (click)=\"onBack()\">\n <i></i>\n <div>{{ back }}</div>\n </div>\n }\n <div class=\"fwe-mobile-flyout-item-container\">\n <ng-content></ng-content>\n </div>\n</div>\n", encapsulation: i0.ViewEncapsulation.None }); }
628
628
  }
629
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngMobileFlyoutPageComponent, decorators: [{
629
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngMobileFlyoutPageComponent, decorators: [{
630
630
  type: Component,
631
631
  args: [{ imports: [], selector: 'fng-mobile-flyout-page', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-mobile-flyout-page\" [class.fwe-opened]=\"visible\">\n @if (!isfirstelement) {\n <div class=\"fwe-page-back\" (click)=\"onBack()\">\n <i></i>\n <div>{{ back }}</div>\n </div>\n }\n <div class=\"fwe-mobile-flyout-item-container\">\n <ng-content></ng-content>\n </div>\n</div>\n" }]
632
632
  }], propDecorators: { itemComponents: [{
@@ -687,10 +687,10 @@ class FngMobileFlyoutComponent {
687
687
  s.visible = i === 0;
688
688
  });
689
689
  }
690
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngMobileFlyoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
691
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngMobileFlyoutComponent, isStandalone: true, selector: "fng-mobile-flyout", outputs: { flyoutOpenChange: "flyoutOpenChange" }, queries: [{ propertyName: "pageComponents", predicate: FngMobileFlyoutPageComponent }], ngImport: i0, template: "<div class=\"fwe-mobile-flyout\" (clickOutside)=\"onClickOutside()\" fngClickOutside>\r\n <button [class.fwe-burger-button]=\"!isOpen\" [class.fwe-close-button]=\"isOpen\" (click)=\"toggle()\"></button>\r\n <div class=\"fwe-mobile-flyout-container\" [class.fwe-opened]=\"isOpen\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: FngClickOutsideDirective, selector: "[fngClickOutside]", outputs: ["clickOutside"] }], encapsulation: i0.ViewEncapsulation.None }); }
690
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngMobileFlyoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
691
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngMobileFlyoutComponent, isStandalone: true, selector: "fng-mobile-flyout", outputs: { flyoutOpenChange: "flyoutOpenChange" }, queries: [{ propertyName: "pageComponents", predicate: FngMobileFlyoutPageComponent }], ngImport: i0, template: "<div class=\"fwe-mobile-flyout\" (clickOutside)=\"onClickOutside()\" fngClickOutside>\r\n <button [class.fwe-burger-button]=\"!isOpen\" [class.fwe-close-button]=\"isOpen\" (click)=\"toggle()\"></button>\r\n <div class=\"fwe-mobile-flyout-container\" [class.fwe-opened]=\"isOpen\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", dependencies: [{ kind: "directive", type: FngClickOutsideDirective, selector: "[fngClickOutside]", outputs: ["clickOutside"] }], encapsulation: i0.ViewEncapsulation.None }); }
692
692
  }
693
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngMobileFlyoutComponent, decorators: [{
693
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngMobileFlyoutComponent, decorators: [{
694
694
  type: Component,
695
695
  args: [{ imports: [FngClickOutsideDirective], selector: 'fng-mobile-flyout', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-mobile-flyout\" (clickOutside)=\"onClickOutside()\" fngClickOutside>\r\n <button [class.fwe-burger-button]=\"!isOpen\" [class.fwe-close-button]=\"isOpen\" (click)=\"toggle()\"></button>\r\n <div class=\"fwe-mobile-flyout-container\" [class.fwe-opened]=\"isOpen\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n" }]
696
696
  }], propDecorators: { flyoutOpenChange: [{
@@ -737,10 +737,10 @@ class FngPaginationComponent {
737
737
  this.pageCurrent = index + 1;
738
738
  this.changePage.emit(this.pageCurrent);
739
739
  }
740
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
741
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngPaginationComponent, isStandalone: true, selector: "fng-pagination", inputs: { type: "type", pageCurrent: "pageCurrent", pageMax: "pageMax" }, outputs: { changePage: "changePage" }, ngImport: i0, template: "@if (type === PaginationType.Numeric) {\n <div class=\"fwe-pagination fwe-p-m\" [class.fwe-d-none]=\"pageMax < 2\">\n <button class=\"fwe-navigate-btn-down\" (click)=\"onBtnDown()\" [class.fwe-disabled]=\"pageCurrent <= 1\"></button>\n <span class=\"fwe-page-current\">{{ pageCurrent }}</span>\n <span class=\"fwe-page-max\">{{ pageMax }}</span>\n <button class=\"fwe-navigate-btn-up\" (click)=\"onBtnUp()\" [class.fwe-disabled]=\"pageCurrent >= pageMax\"></button>\n </div>\n}\n\n@if (type === PaginationType.Dots) {\n <div class=\"fwe-p-m\" [class.fwe-d-none]=\"pageMax < 2\">\n <div class=\"fwe-pagination\">\n @for (index of dotArray; track index) {\n <span\n class=\"fwe-page-dot\"\n [class.fwe-selected]=\"index + 1 === pageCurrent\"\n (click)=\"onDotClick(index)\"\n ></span>\n }\n </div>\n </div>\n}\n", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
740
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
741
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngPaginationComponent, isStandalone: true, selector: "fng-pagination", inputs: { type: "type", pageCurrent: "pageCurrent", pageMax: "pageMax" }, outputs: { changePage: "changePage" }, ngImport: i0, template: "@if (type === PaginationType.Numeric) {\n <div class=\"fwe-pagination fwe-p-m\" [class.fwe-d-none]=\"pageMax < 2\">\n <button class=\"fwe-navigate-btn-down\" (click)=\"onBtnDown()\" [class.fwe-disabled]=\"pageCurrent <= 1\"></button>\n <span class=\"fwe-page-current\">{{ pageCurrent }}</span>\n <span class=\"fwe-page-max\">{{ pageMax }}</span>\n <button class=\"fwe-navigate-btn-up\" (click)=\"onBtnUp()\" [class.fwe-disabled]=\"pageCurrent >= pageMax\"></button>\n </div>\n}\n\n@if (type === PaginationType.Dots) {\n <div class=\"fwe-p-m\" [class.fwe-d-none]=\"pageMax < 2\">\n <div class=\"fwe-pagination\">\n @for (index of dotArray; track index) {\n <span\n class=\"fwe-page-dot\"\n [class.fwe-selected]=\"index + 1 === pageCurrent\"\n (click)=\"onDotClick(index)\"\n ></span>\n }\n </div>\n </div>\n}\n", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
742
742
  }
743
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPaginationComponent, decorators: [{
743
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPaginationComponent, decorators: [{
744
744
  type: Component,
745
745
  args: [{ imports: [], selector: 'fng-pagination', encapsulation: ViewEncapsulation.None, template: "@if (type === PaginationType.Numeric) {\n <div class=\"fwe-pagination fwe-p-m\" [class.fwe-d-none]=\"pageMax < 2\">\n <button class=\"fwe-navigate-btn-down\" (click)=\"onBtnDown()\" [class.fwe-disabled]=\"pageCurrent <= 1\"></button>\n <span class=\"fwe-page-current\">{{ pageCurrent }}</span>\n <span class=\"fwe-page-max\">{{ pageMax }}</span>\n <button class=\"fwe-navigate-btn-up\" (click)=\"onBtnUp()\" [class.fwe-disabled]=\"pageCurrent >= pageMax\"></button>\n </div>\n}\n\n@if (type === PaginationType.Dots) {\n <div class=\"fwe-p-m\" [class.fwe-d-none]=\"pageMax < 2\">\n <div class=\"fwe-pagination\">\n @for (index of dotArray; track index) {\n <span\n class=\"fwe-page-dot\"\n [class.fwe-selected]=\"index + 1 === pageCurrent\"\n (click)=\"onDotClick(index)\"\n ></span>\n }\n </div>\n </div>\n}\n" }]
746
746
  }], propDecorators: { type: [{
@@ -801,10 +801,10 @@ class FngPopoverComponent {
801
801
  };
802
802
  }
803
803
  }
804
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverComponent, deps: [{ token: PopoverRef }], target: i0.ɵɵFactoryTarget.Component }); }
805
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngPopoverComponent, isStandalone: true, selector: "fng-popover", ngImport: i0, template: "<div class=\"fwe-popover-container\">\n <div class=\"fwe-triangle\"></div>\n <div class=\"fwe-popover\">\n @switch (type) {\n @case ('text') {\n <div class=\"fwe-popover-content\" [innerHTML]=\"content\"></div>\n }\n @case ('template') {\n <ng-container *ngTemplateOutlet=\"content; context: context\"></ng-container>\n }\n @case ('component') {\n <ng-container *ngComponentOutlet=\"content\"></ng-container>\n }\n }\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None }); }
804
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverComponent, deps: [{ token: PopoverRef }], target: i0.ɵɵFactoryTarget.Component }); }
805
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngPopoverComponent, isStandalone: true, selector: "fng-popover", ngImport: i0, template: "<div class=\"fwe-popover-container\">\n <div class=\"fwe-triangle\"></div>\n <div class=\"fwe-popover\">\n @switch (type) {\n @case ('text') {\n <div class=\"fwe-popover-content\" [innerHTML]=\"content\"></div>\n }\n @case ('template') {\n <ng-container *ngTemplateOutlet=\"content; context: context\"></ng-container>\n }\n @case ('component') {\n <ng-container *ngComponentOutlet=\"content\"></ng-container>\n }\n }\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None }); }
806
806
  }
807
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverComponent, decorators: [{
807
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverComponent, decorators: [{
808
808
  type: Component,
809
809
  args: [{ selector: 'fng-popover', imports: [CommonModule], encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-popover-container\">\n <div class=\"fwe-triangle\"></div>\n <div class=\"fwe-popover\">\n @switch (type) {\n @case ('text') {\n <div class=\"fwe-popover-content\" [innerHTML]=\"content\"></div>\n }\n @case ('template') {\n <ng-container *ngTemplateOutlet=\"content; context: context\"></ng-container>\n }\n @case ('component') {\n <ng-container *ngComponentOutlet=\"content\"></ng-container>\n }\n }\n </div>\n</div>\n" }]
810
810
  }], ctorParameters: () => [{ type: PopoverRef }] });
@@ -974,10 +974,10 @@ class FngPopoverService {
974
974
  });
975
975
  return pairs;
976
976
  }
977
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverService, deps: [{ token: i1$2.Overlay }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
978
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverService, providedIn: 'root' }); }
977
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverService, deps: [{ token: i1$2.Overlay }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
978
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverService, providedIn: 'root' }); }
979
979
  }
980
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverService, decorators: [{
980
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverService, decorators: [{
981
981
  type: Injectable,
982
982
  args: [{
983
983
  providedIn: 'root'
@@ -1006,10 +1006,10 @@ class FngLegendComponent {
1006
1006
  hide() {
1007
1007
  this.popoverRef?.close();
1008
1008
  }
1009
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngLegendComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1010
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngLegendComponent, isStandalone: true, selector: "fng-legend", inputs: { items: "items", options: "options" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["tpl"], descendants: true }], ngImport: i0, template: "<ng-template #tpl>\n @if (0 < items.length) {\n <dl class=\"fng-legend\">\n @for (item of items; track item) {\n <div class=\"fng-legend-content\">\n <dt>{{ item?.name }}</dt>\n <dd>{{ item?.text }}</dd>\n </div>\n }\n </dl>\n }\n</ng-template>\n", styles: [".fwe-triangle.fwe-triangle-right,.fwe-triangle.fwe-triangle-left,.fwe-triangle.fwe-triangle-bottom,.fwe-triangle.fwe-triangle-top{width:17px;height:17px;position:absolute;overflow:hidden}.fwe-triangle.fwe-triangle-right:after,.fwe-triangle.fwe-triangle-left:after,.fwe-triangle.fwe-triangle-bottom:after,.fwe-triangle.fwe-triangle-top:after{content:\"\";position:absolute;width:12px;height:12px;background:var(--fwe-white);transform:rotate(45deg);box-shadow:0 1px 4px #3333}.fwe-popover.fwe-popover-menu,.fwe-popover{background-color:var(--fwe-white);box-shadow:0 1px 4px #3333;border-radius:4px}.fwe-popover{padding:8px;font-size:var(--fwe-font-size-md);line-height:1rem}.fwe-popover-container{position:relative;display:inline-block;min-width:max-content}.fwe-triangle.fwe-triangle-top{left:50%;top:-17px;transform:translate(-8px)}.fwe-triangle.fwe-triangle-top:after{top:11px;left:3px}.fwe-triangle.fwe-triangle-bottom{left:50%;top:100%;transform:translate(-8px)}.fwe-triangle.fwe-triangle-bottom:after{top:-6px;left:3px}.fwe-triangle.fwe-triangle-left{left:-17px;top:50%;transform:translateY(-8px)}.fwe-triangle.fwe-triangle-left:after{top:2px;left:11px}.fwe-triangle.fwe-triangle-right{left:100%;top:50%;transform:translateY(-8px)}.fwe-triangle.fwe-triangle-right:after{top:2px;left:-6px}.fwe-popover.fwe-popover-menu{font-size:var(--fwe-font-size-base);line-height:1.5rem;padding:16px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item{border-bottom:none;min-height:36px;padding:0}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button{width:100%;margin-left:inherit;padding:0 8px 0 0;text-align:left;height:32px;max-height:32px;display:inline-flex;justify-content:unset}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button:hover{color:var(--fwe-black)}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button i{display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;height:24px;width:32px;margin-right:0}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button i:before{display:inline-flex}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button .fwe-svg-icon{margin-right:8px;margin-left:8px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button span{display:inline-flex;height:24px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button [class*=\" fwe-icon-\"]{margin-left:inherit}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item:hover{color:var(--fwe-black);background-color:#3333331a}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item:active{background-color:#3333}.fwe-popover .fwe-popover-legend{display:table;margin:16px;line-height:24px}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content{display:table-row}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content dd{display:table-cell;margin:0}.fng-legend{display:table;margin:16px;line-height:24px}.fng-legend .fng-legend-content{display:table-row}.fng-legend .fng-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fng-legend .fng-legend-content dd{display:table-cell;margin:0}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1009
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngLegendComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1010
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngLegendComponent, isStandalone: true, selector: "fng-legend", inputs: { items: "items", options: "options" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["tpl"], descendants: true }], ngImport: i0, template: "<ng-template #tpl>\n @if (0 < items.length) {\n <dl class=\"fng-legend\">\n @for (item of items; track item) {\n <div class=\"fng-legend-content\">\n <dt>{{ item?.name }}</dt>\n <dd>{{ item?.text }}</dd>\n </div>\n }\n </dl>\n }\n</ng-template>\n", styles: [".fwe-triangle.fwe-triangle-right,.fwe-triangle.fwe-triangle-left,.fwe-triangle.fwe-triangle-bottom,.fwe-triangle.fwe-triangle-top{width:17px;height:17px;position:absolute;overflow:hidden}.fwe-triangle.fwe-triangle-right:after,.fwe-triangle.fwe-triangle-left:after,.fwe-triangle.fwe-triangle-bottom:after,.fwe-triangle.fwe-triangle-top:after{content:\"\";position:absolute;width:12px;height:12px;background:var(--fwe-white);transform:rotate(45deg);box-shadow:0 1px 4px #3333}.fwe-popover.fwe-popover-menu,.fwe-popover{background-color:var(--fwe-white);box-shadow:0 1px 4px #3333;border-radius:4px}.fwe-popover{padding:8px;font-size:var(--fwe-font-size-md);line-height:1rem}.fwe-popover-container{position:relative;display:inline-block;min-width:max-content}.fwe-triangle.fwe-triangle-top{left:50%;top:-17px;transform:translate(-8px)}.fwe-triangle.fwe-triangle-top:after{top:11px;left:3px}.fwe-triangle.fwe-triangle-bottom{left:50%;top:100%;transform:translate(-8px)}.fwe-triangle.fwe-triangle-bottom:after{top:-6px;left:3px}.fwe-triangle.fwe-triangle-left{left:-17px;top:50%;transform:translateY(-8px)}.fwe-triangle.fwe-triangle-left:after{top:2px;left:11px}.fwe-triangle.fwe-triangle-right{left:100%;top:50%;transform:translateY(-8px)}.fwe-triangle.fwe-triangle-right:after{top:2px;left:-6px}.fwe-popover.fwe-popover-menu{font-size:var(--fwe-font-size-base);line-height:1.5rem;padding:16px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item{border-bottom:none;min-height:36px;padding:0}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button{width:100%;margin-left:inherit;padding:0 8px 0 0;text-align:left;height:32px;max-height:32px;display:inline-flex;justify-content:unset}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button:hover{color:var(--fwe-black)}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button i{display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;height:24px;width:32px;margin-right:0}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button i:before{display:inline-flex}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button .fwe-svg-icon{margin-right:8px;margin-left:8px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button span{display:inline-flex;height:24px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button [class*=\" fwe-icon-\"]{margin-left:inherit}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item:hover{color:var(--fwe-black);background-color:#3333331a}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item:active{background-color:#3333}.fwe-popover .fwe-popover-legend{display:table;margin:16px;line-height:24px}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content{display:table-row}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content dd{display:table-cell;margin:0}.fng-legend{display:table;margin:16px;line-height:24px}.fng-legend .fng-legend-content{display:table-row}.fng-legend .fng-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fng-legend .fng-legend-content dd{display:table-cell;margin:0}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1011
1011
  }
1012
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngLegendComponent, decorators: [{
1012
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngLegendComponent, decorators: [{
1013
1013
  type: Component,
1014
1014
  args: [{ selector: 'fng-legend', imports: [], encapsulation: ViewEncapsulation.None, template: "<ng-template #tpl>\n @if (0 < items.length) {\n <dl class=\"fng-legend\">\n @for (item of items; track item) {\n <div class=\"fng-legend-content\">\n <dt>{{ item?.name }}</dt>\n <dd>{{ item?.text }}</dd>\n </div>\n }\n </dl>\n }\n</ng-template>\n", styles: [".fwe-triangle.fwe-triangle-right,.fwe-triangle.fwe-triangle-left,.fwe-triangle.fwe-triangle-bottom,.fwe-triangle.fwe-triangle-top{width:17px;height:17px;position:absolute;overflow:hidden}.fwe-triangle.fwe-triangle-right:after,.fwe-triangle.fwe-triangle-left:after,.fwe-triangle.fwe-triangle-bottom:after,.fwe-triangle.fwe-triangle-top:after{content:\"\";position:absolute;width:12px;height:12px;background:var(--fwe-white);transform:rotate(45deg);box-shadow:0 1px 4px #3333}.fwe-popover.fwe-popover-menu,.fwe-popover{background-color:var(--fwe-white);box-shadow:0 1px 4px #3333;border-radius:4px}.fwe-popover{padding:8px;font-size:var(--fwe-font-size-md);line-height:1rem}.fwe-popover-container{position:relative;display:inline-block;min-width:max-content}.fwe-triangle.fwe-triangle-top{left:50%;top:-17px;transform:translate(-8px)}.fwe-triangle.fwe-triangle-top:after{top:11px;left:3px}.fwe-triangle.fwe-triangle-bottom{left:50%;top:100%;transform:translate(-8px)}.fwe-triangle.fwe-triangle-bottom:after{top:-6px;left:3px}.fwe-triangle.fwe-triangle-left{left:-17px;top:50%;transform:translateY(-8px)}.fwe-triangle.fwe-triangle-left:after{top:2px;left:11px}.fwe-triangle.fwe-triangle-right{left:100%;top:50%;transform:translateY(-8px)}.fwe-triangle.fwe-triangle-right:after{top:2px;left:-6px}.fwe-popover.fwe-popover-menu{font-size:var(--fwe-font-size-base);line-height:1.5rem;padding:16px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item{border-bottom:none;min-height:36px;padding:0}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button{width:100%;margin-left:inherit;padding:0 8px 0 0;text-align:left;height:32px;max-height:32px;display:inline-flex;justify-content:unset}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button:hover{color:var(--fwe-black)}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button i{display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;height:24px;width:32px;margin-right:0}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button i:before{display:inline-flex}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button .fwe-svg-icon{margin-right:8px;margin-left:8px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button span{display:inline-flex;height:24px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button [class*=\" fwe-icon-\"]{margin-left:inherit}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item:hover{color:var(--fwe-black);background-color:#3333331a}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item:active{background-color:#3333}.fwe-popover .fwe-popover-legend{display:table;margin:16px;line-height:24px}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content{display:table-row}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content dd{display:table-cell;margin:0}.fng-legend{display:table;margin:16px;line-height:24px}.fng-legend .fng-legend-content{display:table-row}.fng-legend .fng-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fng-legend .fng-legend-content dd{display:table-cell;margin:0}\n"] }]
1015
1015
  }], ctorParameters: () => [{ type: FngPopoverService }], propDecorators: { items: [{
@@ -1033,10 +1033,10 @@ class FngLegendDirective {
1033
1033
  this.ref.show(this.origin);
1034
1034
  }
1035
1035
  }
1036
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngLegendDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1037
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.13", type: FngLegendDirective, isStandalone: true, selector: "[fngLegend]", host: { listeners: { "click": "show()" } }, queries: [{ propertyName: "ref", first: true, predicate: ["fngContent"], descendants: true }], ngImport: i0 }); }
1036
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngLegendDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1037
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: FngLegendDirective, isStandalone: true, selector: "[fngLegend]", host: { listeners: { "click": "show()" } }, queries: [{ propertyName: "ref", first: true, predicate: ["fngContent"], descendants: true }], ngImport: i0 }); }
1038
1038
  }
1039
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngLegendDirective, decorators: [{
1039
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngLegendDirective, decorators: [{
1040
1040
  type: Directive,
1041
1041
  args: [{
1042
1042
  standalone: true,
@@ -1105,10 +1105,10 @@ class FngPopoverContentComponent {
1105
1105
  hide() {
1106
1106
  this.popoverRef?.close();
1107
1107
  }
1108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverContentComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1109
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngPopoverContentComponent, isStandalone: true, selector: "fng-popover-content", inputs: { options: "options" }, outputs: { close: "close", actions: "actions" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["tpl"], descendants: true }, { propertyName: "contentRef", first: true, predicate: ["fngContent"], descendants: true }], ngImport: i0, template: "@if (showDefault) {\n <div #default></div>\n} @else {\n <ng-template #tpl>\n <div data-fng-root [class.fng-off-screen]=\"offScreen\">\n <div #fngContent class=\"fng-content\">\n <ng-content></ng-content>\n </div>\n </div>\n </ng-template>\n}\n", styles: [".fng-off-screen{position:absolute;top:-9999px;left:-9999px}.fng-content{font-size:var(--fwe-font-size-md);line-height:1rem}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1108
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverContentComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1109
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngPopoverContentComponent, isStandalone: true, selector: "fng-popover-content", inputs: { options: "options" }, outputs: { close: "close", actions: "actions" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["tpl"], descendants: true }, { propertyName: "contentRef", first: true, predicate: ["fngContent"], descendants: true }], ngImport: i0, template: "@if (showDefault) {\n <div #default></div>\n} @else {\n <ng-template #tpl>\n <div data-fng-root [class.fng-off-screen]=\"offScreen\">\n <div #fngContent class=\"fng-content\">\n <ng-content></ng-content>\n </div>\n </div>\n </ng-template>\n}\n", styles: [".fng-off-screen{position:absolute;top:-9999px;left:-9999px}.fng-content{font-size:var(--fwe-font-size-md);line-height:1rem}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1110
1110
  }
1111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverContentComponent, decorators: [{
1111
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverContentComponent, decorators: [{
1112
1112
  type: Component,
1113
1113
  args: [{ selector: 'fng-popover-content', imports: [], encapsulation: ViewEncapsulation.None, template: "@if (showDefault) {\n <div #default></div>\n} @else {\n <ng-template #tpl>\n <div data-fng-root [class.fng-off-screen]=\"offScreen\">\n <div #fngContent class=\"fng-content\">\n <ng-content></ng-content>\n </div>\n </div>\n </ng-template>\n}\n", styles: [".fng-off-screen{position:absolute;top:-9999px;left:-9999px}.fng-content{font-size:var(--fwe-font-size-md);line-height:1rem}\n"] }]
1114
1114
  }], ctorParameters: () => [{ type: FngPopoverService }], propDecorators: { options: [{
@@ -1142,10 +1142,10 @@ class FngPopoverContentDirective {
1142
1142
  this.component.hide();
1143
1143
  }
1144
1144
  }
1145
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverContentDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1146
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.13", type: FngPopoverContentDirective, isStandalone: true, selector: "[fngPopoverContent]", host: { listeners: { "click": "show()", "document:keydown.escape": "hide()" } }, queries: [{ propertyName: "component", first: true, predicate: ["fngComponent"], descendants: true }], ngImport: i0 }); }
1145
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverContentDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1146
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: FngPopoverContentDirective, isStandalone: true, selector: "[fngPopoverContent]", host: { listeners: { "click": "show()", "document:keydown.escape": "hide()" } }, queries: [{ propertyName: "component", first: true, predicate: ["fngComponent"], descendants: true }], ngImport: i0 }); }
1147
1147
  }
1148
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverContentDirective, decorators: [{
1148
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverContentDirective, decorators: [{
1149
1149
  type: Directive,
1150
1150
  args: [{
1151
1151
  standalone: true,
@@ -1199,10 +1199,10 @@ class FngPopoverMenuComponent {
1199
1199
  hide() {
1200
1200
  this.popoverRef?.close();
1201
1201
  }
1202
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverMenuComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1203
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngPopoverMenuComponent, isStandalone: true, selector: "fng-popover-menu", inputs: { icon: "icon", menu: "menu", options: "options" }, outputs: { menuAction: "menuAction" }, host: { listeners: { "document:keydown.escape": "hide()" } }, viewQueries: [{ propertyName: "menuTpl", first: true, predicate: ["menuTpl"], descendants: true }, { propertyName: "origin", first: true, predicate: ["origin"], descendants: true }], ngImport: i0, template: "@if (0 < menu.length) {\n <button type=\"button\" class=\"fwe-btn fwe-btn-link fwe-dark origin\" (click)=\"show($event, menuTpl, origin)\" #origin>\n <i class=\"fwe-icon fwe-mr-0\" [ngClass]=\"icon\"></i>\n </button>\n <ng-template #menuTpl>\n <ul class=\"fwe-list-group\">\n @for (item of menu; track item) {\n <li class=\"fwe-list-group-item\">\n <button type=\"button\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"action(item?.action ?? '', item?.data)\">\n <i class=\"fwe-icon fwe-mr-0\" [ngClass]=\"item?.icon\"></i>\n <span>{{ item?.text }}</span>\n </button>\n </li>\n }\n </ul>\n </ng-template>\n}\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
1202
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverMenuComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1203
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngPopoverMenuComponent, isStandalone: true, selector: "fng-popover-menu", inputs: { icon: "icon", menu: "menu", options: "options" }, outputs: { menuAction: "menuAction" }, host: { listeners: { "document:keydown.escape": "hide()" } }, viewQueries: [{ propertyName: "menuTpl", first: true, predicate: ["menuTpl"], descendants: true }, { propertyName: "origin", first: true, predicate: ["origin"], descendants: true }], ngImport: i0, template: "@if (0 < menu.length) {\n <button type=\"button\" class=\"fwe-btn fwe-btn-link fwe-dark origin\" (click)=\"show($event, menuTpl, origin)\" #origin>\n <i class=\"fwe-icon fwe-mr-0\" [ngClass]=\"icon\"></i>\n </button>\n <ng-template #menuTpl>\n <ul class=\"fwe-list-group\">\n @for (item of menu; track item) {\n <li class=\"fwe-list-group-item\">\n <button type=\"button\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"action(item?.action ?? '', item?.data)\">\n <i class=\"fwe-icon fwe-mr-0\" [ngClass]=\"item?.icon\"></i>\n <span>{{ item?.text }}</span>\n </button>\n </li>\n }\n </ul>\n </ng-template>\n}\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
1204
1204
  }
1205
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPopoverMenuComponent, decorators: [{
1205
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPopoverMenuComponent, decorators: [{
1206
1206
  type: Component,
1207
1207
  args: [{ selector: 'fng-popover-menu', imports: [CommonModule], encapsulation: ViewEncapsulation.None, template: "@if (0 < menu.length) {\n <button type=\"button\" class=\"fwe-btn fwe-btn-link fwe-dark origin\" (click)=\"show($event, menuTpl, origin)\" #origin>\n <i class=\"fwe-icon fwe-mr-0\" [ngClass]=\"icon\"></i>\n </button>\n <ng-template #menuTpl>\n <ul class=\"fwe-list-group\">\n @for (item of menu; track item) {\n <li class=\"fwe-list-group-item\">\n <button type=\"button\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"action(item?.action ?? '', item?.data)\">\n <i class=\"fwe-icon fwe-mr-0\" [ngClass]=\"item?.icon\"></i>\n <span>{{ item?.text }}</span>\n </button>\n </li>\n }\n </ul>\n </ng-template>\n}\n" }]
1208
1208
  }], ctorParameters: () => [{ type: FngPopoverService }], propDecorators: { icon: [{
@@ -1293,10 +1293,10 @@ class FngTooltipDirective {
1293
1293
  }
1294
1294
  this.innerIsVisible = false;
1295
1295
  }
1296
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTooltipDirective, deps: [{ token: i0.ElementRef }, { token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Directive }); }
1297
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.13", type: FngTooltipDirective, isStandalone: true, selector: "[fngTooltip]", inputs: { text: ["fngTooltip", "text"], isVisible: ["fngTooltipVisible", "isVisible"], positions: ["fngTooltipPositions", "positions"], options: ["fngTooltipOptions", "options"] }, host: { listeners: { "mouseenter": "show()", "mouseleave": "hide()" } }, usesOnChanges: true, ngImport: i0 }); }
1296
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTooltipDirective, deps: [{ token: i0.ElementRef }, { token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Directive }); }
1297
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: FngTooltipDirective, isStandalone: true, selector: "[fngTooltip]", inputs: { text: ["fngTooltip", "text"], isVisible: ["fngTooltipVisible", "isVisible"], positions: ["fngTooltipPositions", "positions"], options: ["fngTooltipOptions", "options"] }, host: { listeners: { "mouseenter": "show()", "mouseleave": "hide()" } }, usesOnChanges: true, ngImport: i0 }); }
1298
1298
  }
1299
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTooltipDirective, decorators: [{
1299
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTooltipDirective, decorators: [{
1300
1300
  type: Directive,
1301
1301
  args: [{
1302
1302
  standalone: true,
@@ -1328,10 +1328,10 @@ class FngProgressComponent {
1328
1328
  this.error = false;
1329
1329
  this.background = 'white';
1330
1330
  }
1331
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1332
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngProgressComponent, isStandalone: true, selector: "fng-progress", inputs: { progress: "progress", error: "error", background: "background" }, ngImport: i0, template: "<div class=\"fwe-progress\">\r\n <div\r\n class=\"fwe-progress-bar\"\r\n role=\"progressbar\"\r\n [style.width.%]=\"progress\"\r\n [class.fwe-bg-red]=\"error\"\r\n [class.fwe-progress-bar-black]=\"background === 'black'\"\r\n [class.fwe-progress-bar-background]=\"background === 'background'\"\r\n [attr.aria-valuenow]=\"progress\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n ></div>\r\n</div>\r\n", encapsulation: i0.ViewEncapsulation.None }); }
1331
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1332
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngProgressComponent, isStandalone: true, selector: "fng-progress", inputs: { progress: "progress", error: "error", background: "background" }, ngImport: i0, template: "<div class=\"fwe-progress\">\r\n <div\r\n class=\"fwe-progress-bar\"\r\n role=\"progressbar\"\r\n [style.width.%]=\"progress\"\r\n [class.fwe-bg-red]=\"error\"\r\n [class.fwe-progress-bar-black]=\"background === 'black'\"\r\n [class.fwe-progress-bar-background]=\"background === 'background'\"\r\n [attr.aria-valuenow]=\"progress\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n ></div>\r\n</div>\r\n", encapsulation: i0.ViewEncapsulation.None }); }
1333
1333
  }
1334
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngProgressComponent, decorators: [{
1334
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngProgressComponent, decorators: [{
1335
1335
  type: Component,
1336
1336
  args: [{ standalone: true, selector: 'fng-progress', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-progress\">\r\n <div\r\n class=\"fwe-progress-bar\"\r\n role=\"progressbar\"\r\n [style.width.%]=\"progress\"\r\n [class.fwe-bg-red]=\"error\"\r\n [class.fwe-progress-bar-black]=\"background === 'black'\"\r\n [class.fwe-progress-bar-background]=\"background === 'background'\"\r\n [attr.aria-valuenow]=\"progress\"\r\n aria-valuemin=\"0\"\r\n aria-valuemax=\"100\"\r\n ></div>\r\n</div>\r\n" }]
1337
1337
  }], propDecorators: { progress: [{
@@ -1397,10 +1397,10 @@ class FngScrollableDirective {
1397
1397
  timer = window.setTimeout(callback, 50);
1398
1398
  };
1399
1399
  }
1400
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngScrollableDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
1401
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.13", type: FngScrollableDirective, isStandalone: true, selector: "[fngScrollable]", inputs: { scrollbarMinSize: ["fngScrollableScrollbarMinSize", "scrollbarMinSize"], viewReady: ["fngScrollableViewReady", "viewReady"] }, usesOnChanges: true, ngImport: i0 }); }
1400
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngScrollableDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
1401
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: FngScrollableDirective, isStandalone: true, selector: "[fngScrollable]", inputs: { scrollbarMinSize: ["fngScrollableScrollbarMinSize", "scrollbarMinSize"], viewReady: ["fngScrollableViewReady", "viewReady"] }, usesOnChanges: true, ngImport: i0 }); }
1402
1402
  }
1403
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngScrollableDirective, decorators: [{
1403
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngScrollableDirective, decorators: [{
1404
1404
  type: Directive,
1405
1405
  args: [{
1406
1406
  standalone: true,
@@ -1421,10 +1421,10 @@ class FngSafeHtmlPipe {
1421
1421
  transform(value) {
1422
1422
  return this.sanitizer.bypassSecurityTrustHtml(value);
1423
1423
  }
1424
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSafeHtmlPipe, deps: [{ token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
1425
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.13", ngImport: i0, type: FngSafeHtmlPipe, isStandalone: true, name: "fngSafeHtml" }); }
1424
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSafeHtmlPipe, deps: [{ token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
1425
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: FngSafeHtmlPipe, isStandalone: true, name: "fngSafeHtml" }); }
1426
1426
  }
1427
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSafeHtmlPipe, decorators: [{
1427
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSafeHtmlPipe, decorators: [{
1428
1428
  type: Pipe,
1429
1429
  args: [{
1430
1430
  standalone: true,
@@ -1582,10 +1582,10 @@ class FngSearchInputComponent {
1582
1582
  this.hideSuggestionList = true;
1583
1583
  this.inputRef.nativeElement.blur();
1584
1584
  }
1585
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSearchInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1586
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngSearchInputComponent, isStandalone: true, selector: "fng-search-input", inputs: { label: "label", disabled: "disabled", value: "value", suggestions: "suggestions" }, outputs: { fngChange: "fngChange", fngSearch: "fngSearch" }, host: { listeners: { "document:keydown": "keyhandler($event)" } }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-search-input\" (clickOutside)=\"onClickOutside()\" fngClickOutside>\n <input\n #inputElement\n [attr.disabled]=\"disabled ? '' : null\"\n [placeholder]=\"label\"\n (focus)=\"onFocus()\"\n type=\"search\"\n (input)=\"onInput($event)\"\n (search)=\"onSearch($event)\"\n [value]=\"innerValue\"\n />\n <div class=\"fwe-search-icon\"></div>\n <div class=\"fwe-clear-icon\" (click)=\"clearQuery()\"></div>\n @if (innerSuggestions.length && !hideSuggestionList) {\n <div class=\"fwe-search-suggestions\">\n @for (suggestion of cappedSuggestions; track suggestion; let i = $index) {\n <div\n (click)=\"onSuggestionClick(suggestion)\"\n [class.fwe-selected]=\"selectedSuggestionIndex === i\"\n class=\"fwe-search-suggestion\"\n >\n <div [innerHTML]=\"suggestion.template | fngSafeHtml\"></div>\n </div>\n }\n @if (innerSuggestions.length > 10) {\n <div class=\"fwe-ml-xxs\">...</div>\n }\n </div>\n }\n </div>\n", styles: [".fwe-search-suggestion{height:40px}\n"], dependencies: [{ kind: "pipe", type: FngSafeHtmlPipe, name: "fngSafeHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
1585
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSearchInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1586
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngSearchInputComponent, isStandalone: true, selector: "fng-search-input", inputs: { label: "label", disabled: "disabled", value: "value", suggestions: "suggestions" }, outputs: { fngChange: "fngChange", fngSearch: "fngSearch" }, host: { listeners: { "document:keydown": "keyhandler($event)" } }, viewQueries: [{ propertyName: "inputRef", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-search-input\" (clickOutside)=\"onClickOutside()\" fngClickOutside>\n <input\n #inputElement\n [attr.disabled]=\"disabled ? '' : null\"\n [placeholder]=\"label\"\n (focus)=\"onFocus()\"\n type=\"search\"\n (input)=\"onInput($event)\"\n (search)=\"onSearch($event)\"\n [value]=\"innerValue\"\n />\n <div class=\"fwe-search-icon\"></div>\n <div class=\"fwe-clear-icon\" (click)=\"clearQuery()\"></div>\n @if (innerSuggestions.length && !hideSuggestionList) {\n <div class=\"fwe-search-suggestions\">\n @for (suggestion of cappedSuggestions; track suggestion; let i = $index) {\n <div\n (click)=\"onSuggestionClick(suggestion)\"\n [class.fwe-selected]=\"selectedSuggestionIndex === i\"\n class=\"fwe-search-suggestion\"\n >\n <div [innerHTML]=\"suggestion.template | fngSafeHtml\"></div>\n </div>\n }\n @if (innerSuggestions.length > 10) {\n <div class=\"fwe-ml-xxs\">...</div>\n }\n </div>\n }\n </div>\n", styles: [".fwe-search-suggestion{height:40px}\n"], dependencies: [{ kind: "pipe", type: FngSafeHtmlPipe, name: "fngSafeHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
1587
1587
  }
1588
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSearchInputComponent, decorators: [{
1588
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSearchInputComponent, decorators: [{
1589
1589
  type: Component,
1590
1590
  args: [{ imports: [FngSafeHtmlPipe], selector: 'fng-search-input', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-search-input\" (clickOutside)=\"onClickOutside()\" fngClickOutside>\n <input\n #inputElement\n [attr.disabled]=\"disabled ? '' : null\"\n [placeholder]=\"label\"\n (focus)=\"onFocus()\"\n type=\"search\"\n (input)=\"onInput($event)\"\n (search)=\"onSearch($event)\"\n [value]=\"innerValue\"\n />\n <div class=\"fwe-search-icon\"></div>\n <div class=\"fwe-clear-icon\" (click)=\"clearQuery()\"></div>\n @if (innerSuggestions.length && !hideSuggestionList) {\n <div class=\"fwe-search-suggestions\">\n @for (suggestion of cappedSuggestions; track suggestion; let i = $index) {\n <div\n (click)=\"onSuggestionClick(suggestion)\"\n [class.fwe-selected]=\"selectedSuggestionIndex === i\"\n class=\"fwe-search-suggestion\"\n >\n <div [innerHTML]=\"suggestion.template | fngSafeHtml\"></div>\n </div>\n }\n @if (innerSuggestions.length > 10) {\n <div class=\"fwe-ml-xxs\">...</div>\n }\n </div>\n }\n </div>\n", styles: [".fwe-search-suggestion{height:40px}\n"] }]
1591
1591
  }], propDecorators: { inputRef: [{
@@ -1649,10 +1649,10 @@ class FngSidebarOverlayComponent {
1649
1649
  this.internalOpen = false;
1650
1650
  this.openChange.emit(this.internalOpen);
1651
1651
  }
1652
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSidebarOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1653
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngSidebarOverlayComponent, isStandalone: true, selector: "fng-sidebar-overlay", inputs: { fngNavbarMargin: "fngNavbarMargin", open: "open" }, outputs: { openChange: "openChange" }, ngImport: i0, template: "<div class=\"fwe-sidebar-overlay\" [class.fwe-sidebar-overlay--open]=\"open\" [class.fwe-navbar-margin]=\"internalNavbarMargin\">\r\n <button type=\"button\" class=\"fwe-sidebar-overlay-close-btn\" (click)=\"closeSidebar()\">\r\n <span class=\"fwe-sr-only\">Close</span>\r\n </button>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
1652
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSidebarOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1653
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngSidebarOverlayComponent, isStandalone: true, selector: "fng-sidebar-overlay", inputs: { fngNavbarMargin: "fngNavbarMargin", open: "open" }, outputs: { openChange: "openChange" }, ngImport: i0, template: "<div class=\"fwe-sidebar-overlay\" [class.fwe-sidebar-overlay--open]=\"open\" [class.fwe-navbar-margin]=\"internalNavbarMargin\">\r\n <button type=\"button\" class=\"fwe-sidebar-overlay-close-btn\" (click)=\"closeSidebar()\">\r\n <span class=\"fwe-sr-only\">Close</span>\r\n </button>\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
1654
1654
  }
1655
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSidebarOverlayComponent, decorators: [{
1655
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSidebarOverlayComponent, decorators: [{
1656
1656
  type: Component,
1657
1657
  args: [{ imports: [], selector: 'fng-sidebar-overlay', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-sidebar-overlay\" [class.fwe-sidebar-overlay--open]=\"open\" [class.fwe-navbar-margin]=\"internalNavbarMargin\">\r\n <button type=\"button\" class=\"fwe-sidebar-overlay-close-btn\" (click)=\"closeSidebar()\">\r\n <span class=\"fwe-sr-only\">Close</span>\r\n </button>\r\n <ng-content></ng-content>\r\n</div>\r\n" }]
1658
1658
  }], ctorParameters: () => [], propDecorators: { fngNavbarMargin: [{
@@ -1669,9 +1669,24 @@ class FngSnackbarComponent {
1669
1669
  this.close = output();
1670
1670
  this.action = output();
1671
1671
  this.isShown = signal(false, ...(ngDevMode ? [{ debugName: "isShown" }] : []));
1672
- this.transformTranslateY = signal('translateY(24px)', ...(ngDevMode ? [{ debugName: "transformTranslateY" }] : []));
1672
+ this.stackIndex = signal(0, ...(ngDevMode ? [{ debugName: "stackIndex" }] : []));
1673
+ }
1674
+ get transform() {
1675
+ // calculate the translateY values based on stack index
1676
+ const stackIndex = this.stackIndex();
1677
+ // when entering, the snackbar will animate up to this value
1678
+ const enteringValue = stackIndex * 24;
1679
+ // when leaving, the snackbar will animate back to this value
1680
+ const leavingValue = (stackIndex - 1) * 24;
1681
+ return this.isShown()
1682
+ ? `translateY(-${enteringValue}px)`
1683
+ : `translateY(-${leavingValue}px)`;
1673
1684
  }
1674
1685
  ngAfterViewInit() {
1686
+ // delay to allow for initial rendering before showing
1687
+ setTimeout(() => {
1688
+ this.isShown.set(true);
1689
+ }, 100);
1675
1690
  const data = this.data();
1676
1691
  if (data && data.disappearAfter) {
1677
1692
  this.timeout = setTimeout(() => this.onClose(), data.disappearAfter);
@@ -1686,14 +1701,18 @@ class FngSnackbarComponent {
1686
1701
  this.action.emit();
1687
1702
  }
1688
1703
  onClose() {
1689
- this.close.emit();
1704
+ this.isShown.set(false);
1705
+ // delay to allow for animation before emitting close event
1706
+ setTimeout(() => {
1707
+ this.close.emit();
1708
+ }, 300);
1690
1709
  }
1691
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSnackbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1692
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngSnackbarComponent, isStandalone: true, selector: "fng-snackbar", outputs: { close: "close", action: "action" }, host: { classAttribute: "fng-snackbar" }, ngImport: i0, template: "<div\n [ngClass]=\"{\n 'fwe-snackbar': true,\n 'fwe-snackbar-b': data()?.variant === 'b',\n 'fwe-snackbar-c': data()?.variant === 'c',\n 'fwe-snackbar-info': data()?.type === 'info',\n 'fwe-snackbar-warning': data()?.type === 'warning',\n 'fwe-snackbar-error': data()?.type === 'error',\n 'fwe-snackbar-shadow': data()?.darkBackground,\n 'fng-snackbar-entering': isShown(),\n 'fng-snackbar-leaving': !isShown()\n }\"\n [style.transform]=\"transformTranslateY()\"\n >\n <span>{{ data()?.text }}</span>\n @if (data()?.action) {\n <button aria-label=\"UserAction\" type=\"button\" class=\"fwe-snackbar-link-btn\" (click)=\"onAction()\">\n {{ data()?.action }}\n </button>\n }\n\n @if (data()?.action && data()?.showClose) {\n <div class=\"fwe-snackbar-separator\"></div>\n }\n\n @if (data()?.showClose) {\n <button aria-label=\"Close\" type=\"button\" class=\"fwe-snackbar-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n }\n</div>\n", styles: [".fng-snackbar{display:block}.fng-snackbar:last-child{margin-bottom:24px!important}.fwe-snackbar{pointer-events:all;transition:transform .3s ease-out,opacity .25s ease-out;opacity:0;margin-bottom:0!important}.fwe-snackbar.fng-snackbar-entering{opacity:1}.fwe-snackbar.fng-snackbar-leaving{opacity:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
1710
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSnackbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1711
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngSnackbarComponent, isStandalone: true, selector: "fng-snackbar", outputs: { close: "close", action: "action" }, ngImport: i0, template: "<div\n [ngClass]=\"{\n 'fwe-snackbar': true,\n 'fwe-snackbar-b': data()?.variant === 'b',\n 'fwe-snackbar-c': data()?.variant === 'c',\n 'fwe-snackbar-info': data()?.type === 'info',\n 'fwe-snackbar-warning': data()?.type === 'warning',\n 'fwe-snackbar-error': data()?.type === 'error',\n 'fwe-snackbar-shadow': data()?.darkBackground,\n 'fng-snackbar-entering': isShown(),\n 'fng-snackbar-leaving': !isShown(),\n 'fng-snackbar-first': stackIndex() === 0\n }\"\n [style.transform]=\"transform\"\n >\n <span>{{ data()?.text }}</span>\n @if (data()?.action) {\n <button aria-label=\"UserAction\" type=\"button\" class=\"fwe-snackbar-link-btn\" (click)=\"onAction()\">\n {{ data()?.action }}\n </button>\n }\n\n @if (data()?.action && data()?.showClose) {\n <div class=\"fwe-snackbar-separator\"></div>\n }\n\n @if (data()?.showClose) {\n <button aria-label=\"Close\" type=\"button\" class=\"fwe-snackbar-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n }\n</div>\n", styles: [":host{display:block}.fwe-snackbar{pointer-events:all;transition:transform .3s ease-out,opacity .25s ease-out;opacity:0;margin-bottom:0!important}.fwe-snackbar.fng-snackbar-first{margin-bottom:24px!important;opacity:1;transform:translateY(100px)}.fwe-snackbar.fng-snackbar-entering{opacity:1}.fwe-snackbar.fng-snackbar-leaving{opacity:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
1693
1712
  }
1694
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSnackbarComponent, decorators: [{
1713
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSnackbarComponent, decorators: [{
1695
1714
  type: Component,
1696
- args: [{ imports: [CommonModule], selector: 'fng-snackbar', encapsulation: ViewEncapsulation.None, host: { 'class': 'fng-snackbar' }, template: "<div\n [ngClass]=\"{\n 'fwe-snackbar': true,\n 'fwe-snackbar-b': data()?.variant === 'b',\n 'fwe-snackbar-c': data()?.variant === 'c',\n 'fwe-snackbar-info': data()?.type === 'info',\n 'fwe-snackbar-warning': data()?.type === 'warning',\n 'fwe-snackbar-error': data()?.type === 'error',\n 'fwe-snackbar-shadow': data()?.darkBackground,\n 'fng-snackbar-entering': isShown(),\n 'fng-snackbar-leaving': !isShown()\n }\"\n [style.transform]=\"transformTranslateY()\"\n >\n <span>{{ data()?.text }}</span>\n @if (data()?.action) {\n <button aria-label=\"UserAction\" type=\"button\" class=\"fwe-snackbar-link-btn\" (click)=\"onAction()\">\n {{ data()?.action }}\n </button>\n }\n\n @if (data()?.action && data()?.showClose) {\n <div class=\"fwe-snackbar-separator\"></div>\n }\n\n @if (data()?.showClose) {\n <button aria-label=\"Close\" type=\"button\" class=\"fwe-snackbar-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n }\n</div>\n", styles: [".fng-snackbar{display:block}.fng-snackbar:last-child{margin-bottom:24px!important}.fwe-snackbar{pointer-events:all;transition:transform .3s ease-out,opacity .25s ease-out;opacity:0;margin-bottom:0!important}.fwe-snackbar.fng-snackbar-entering{opacity:1}.fwe-snackbar.fng-snackbar-leaving{opacity:0}\n"] }]
1715
+ args: [{ imports: [CommonModule], selector: 'fng-snackbar', encapsulation: ViewEncapsulation.None, template: "<div\n [ngClass]=\"{\n 'fwe-snackbar': true,\n 'fwe-snackbar-b': data()?.variant === 'b',\n 'fwe-snackbar-c': data()?.variant === 'c',\n 'fwe-snackbar-info': data()?.type === 'info',\n 'fwe-snackbar-warning': data()?.type === 'warning',\n 'fwe-snackbar-error': data()?.type === 'error',\n 'fwe-snackbar-shadow': data()?.darkBackground,\n 'fng-snackbar-entering': isShown(),\n 'fng-snackbar-leaving': !isShown(),\n 'fng-snackbar-first': stackIndex() === 0\n }\"\n [style.transform]=\"transform\"\n >\n <span>{{ data()?.text }}</span>\n @if (data()?.action) {\n <button aria-label=\"UserAction\" type=\"button\" class=\"fwe-snackbar-link-btn\" (click)=\"onAction()\">\n {{ data()?.action }}\n </button>\n }\n\n @if (data()?.action && data()?.showClose) {\n <div class=\"fwe-snackbar-separator\"></div>\n }\n\n @if (data()?.showClose) {\n <button aria-label=\"Close\" type=\"button\" class=\"fwe-snackbar-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n }\n</div>\n", styles: [":host{display:block}.fwe-snackbar{pointer-events:all;transition:transform .3s ease-out,opacity .25s ease-out;opacity:0;margin-bottom:0!important}.fwe-snackbar.fng-snackbar-first{margin-bottom:24px!important;opacity:1;transform:translateY(100px)}.fwe-snackbar.fng-snackbar-entering{opacity:1}.fwe-snackbar.fng-snackbar-leaving{opacity:0}\n"] }]
1697
1716
  }] });
1698
1717
 
1699
1718
  class FngSnackbarService {
@@ -1706,10 +1725,10 @@ class FngSnackbarService {
1706
1725
  this.snacks.next({ data, actionCallback, closeCallback, resolve });
1707
1726
  });
1708
1727
  }
1709
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSnackbarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1710
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSnackbarService, providedIn: 'root' }); }
1728
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSnackbarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1729
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSnackbarService, providedIn: 'root' }); }
1711
1730
  }
1712
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSnackbarService, decorators: [{
1731
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSnackbarService, decorators: [{
1713
1732
  type: Injectable,
1714
1733
  args: [{
1715
1734
  providedIn: 'root'
@@ -1742,15 +1761,15 @@ class FngSnackbarContainerDirective {
1742
1761
  const componentInstance = componentRef.instance;
1743
1762
  componentInstance.data.set({ ...this.fngSnackbarContainer, ...snackDescription.data });
1744
1763
  const snackbarRef = { componentRef, complete };
1745
- componentInstance.close.subscribe(async () => {
1746
- await this.remove(snackbarRef);
1764
+ componentInstance.close.subscribe(() => {
1765
+ this.remove(snackbarRef);
1747
1766
  if (snackDescription.closeCallback) {
1748
1767
  snackDescription.closeCallback();
1749
1768
  }
1750
1769
  });
1751
- componentInstance.action.subscribe(async () => {
1770
+ componentInstance.action.subscribe(() => {
1752
1771
  if (componentInstance.data()?.closeOnAction) {
1753
- await this.remove(snackbarRef);
1772
+ this.remove(snackbarRef);
1754
1773
  }
1755
1774
  if (snackDescription.actionCallback) {
1756
1775
  snackDescription.actionCallback();
@@ -1760,11 +1779,11 @@ class FngSnackbarContainerDirective {
1760
1779
  this.updateStackIndices();
1761
1780
  snackDescription.resolve(snackbarRef.componentRef);
1762
1781
  }
1763
- async remove(snackbarRef) {
1782
+ remove(snackbarRef) {
1764
1783
  const index = this.snacks.indexOf(snackbarRef);
1765
1784
  if (index !== -1) {
1766
1785
  const deletedSnackbarRef = this.snacks.splice(index, 1);
1767
- await this.prepareRemove(snackbarRef, index);
1786
+ this.updateStackIndices();
1768
1787
  if (deletedSnackbarRef != null && deletedSnackbarRef.length > 0) {
1769
1788
  const deletedSnackbar = deletedSnackbarRef[0];
1770
1789
  if (deletedSnackbar.complete != null) {
@@ -1776,38 +1795,17 @@ class FngSnackbarContainerDirective {
1776
1795
  deletedSnackbar.componentRef.destroy();
1777
1796
  }
1778
1797
  }
1779
- this.updateStackIndices();
1780
1798
  }
1781
1799
  }
1782
- prepareRemove(removedSnack, removedIndex) {
1783
- return new Promise(resolve => {
1784
- if (removedSnack && removedIndex != null) {
1785
- const stackIndex = this.snacks.length - removedIndex;
1786
- const animatedValue = (stackIndex - 1) * 24;
1787
- const translateY = stackIndex > 0 ? `translateY(-${animatedValue}px)` : 'translateY(24px)';
1788
- removedSnack.componentRef.instance.isShown.set(false);
1789
- removedSnack.componentRef.instance.transformTranslateY.set(translateY);
1790
- setTimeout(() => resolve(), 300);
1791
- }
1792
- else {
1793
- resolve();
1794
- }
1795
- });
1796
- }
1797
1800
  updateStackIndices() {
1798
1801
  this.snacks.forEach((snack, index) => {
1799
- const stackIndex = this.snacks.length - 1 - index;
1800
- const animatedValue = stackIndex * 24;
1801
- setTimeout(() => {
1802
- snack.componentRef.instance.isShown.set(true);
1803
- snack.componentRef.instance.transformTranslateY.set(`translateY(-${animatedValue}px)`);
1804
- });
1802
+ snack.componentRef.instance.stackIndex.set(this.snacks.length - index - 1);
1805
1803
  });
1806
1804
  }
1807
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSnackbarContainerDirective, deps: [{ token: i0.ViewContainerRef }, { token: FngSnackbarService }], target: i0.ɵɵFactoryTarget.Directive }); }
1808
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.13", type: FngSnackbarContainerDirective, isStandalone: true, selector: "[fngSnackbarContainer]", inputs: { fngSnackbarContainer: "fngSnackbarContainer" }, ngImport: i0 }); }
1805
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSnackbarContainerDirective, deps: [{ token: i0.ViewContainerRef }, { token: FngSnackbarService }], target: i0.ɵɵFactoryTarget.Directive }); }
1806
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: FngSnackbarContainerDirective, isStandalone: true, selector: "[fngSnackbarContainer]", inputs: { fngSnackbarContainer: "fngSnackbarContainer" }, ngImport: i0 }); }
1809
1807
  }
1810
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSnackbarContainerDirective, decorators: [{
1808
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSnackbarContainerDirective, decorators: [{
1811
1809
  type: Directive,
1812
1810
  args: [{
1813
1811
  standalone: true,
@@ -1825,10 +1823,10 @@ class FngSnackbarContainerComponent {
1825
1823
  closeOnAction: true
1826
1824
  };
1827
1825
  }
1828
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSnackbarContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1829
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngSnackbarContainerComponent, isStandalone: true, selector: "fng-snackbar-container", inputs: { config: "config" }, ngImport: i0, template: "<div class=\"fwe-snackbar-container\">\r\n <div [fngSnackbarContainer]=\"config\"></div>\r\n</div>\r\n", styles: [".fwe-snackbar-container{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: FngSnackbarContainerDirective, selector: "[fngSnackbarContainer]", inputs: ["fngSnackbarContainer"] }], encapsulation: i0.ViewEncapsulation.None }); }
1826
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSnackbarContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1827
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngSnackbarContainerComponent, isStandalone: true, selector: "fng-snackbar-container", inputs: { config: "config" }, ngImport: i0, template: "<div class=\"fwe-snackbar-container\">\r\n <div [fngSnackbarContainer]=\"config\"></div>\r\n</div>\r\n", styles: [".fwe-snackbar-container{pointer-events:none}\n"], dependencies: [{ kind: "directive", type: FngSnackbarContainerDirective, selector: "[fngSnackbarContainer]", inputs: ["fngSnackbarContainer"] }], encapsulation: i0.ViewEncapsulation.None }); }
1830
1828
  }
1831
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSnackbarContainerComponent, decorators: [{
1829
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSnackbarContainerComponent, decorators: [{
1832
1830
  type: Component,
1833
1831
  args: [{ imports: [FngSnackbarContainerDirective], selector: 'fng-snackbar-container', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-snackbar-container\">\r\n <div [fngSnackbarContainer]=\"config\"></div>\r\n</div>\r\n", styles: [".fwe-snackbar-container{pointer-events:none}\n"] }]
1834
1832
  }], propDecorators: { config: [{
@@ -1840,10 +1838,10 @@ class FngStepHorizontalComponent {
1840
1838
  this.isActive = false;
1841
1839
  this.title = '';
1842
1840
  }
1843
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngStepHorizontalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1844
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngStepHorizontalComponent, isStandalone: true, selector: "fng-step-horizontal", inputs: { isActive: "isActive", title: "title" }, ngImport: i0, template: "<div class=\"fng-overflow-hidden\" [class.fng-hidden]=\"!isActive\">\r\n <div class=\"fng-moving-container\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".fng-overflow-hidden{overflow:hidden}@keyframes stepperAnimation{0%{transform:translate(100%)}to{transform:translate(0)}}.fng-moving-container{animation-name:stepperAnimation;animation-duration:.3s;animation-timing-function:ease}.fng-hidden{display:none}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1841
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngStepHorizontalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1842
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngStepHorizontalComponent, isStandalone: true, selector: "fng-step-horizontal", inputs: { isActive: "isActive", title: "title" }, ngImport: i0, template: "<div class=\"fng-overflow-hidden\" [class.fng-hidden]=\"!isActive\">\r\n <div class=\"fng-moving-container\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".fng-overflow-hidden{overflow:hidden}@keyframes stepperAnimation{0%{transform:translate(100%)}to{transform:translate(0)}}.fng-moving-container{animation-name:stepperAnimation;animation-duration:.3s;animation-timing-function:ease}.fng-hidden{display:none}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1845
1843
  }
1846
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngStepHorizontalComponent, decorators: [{
1844
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngStepHorizontalComponent, decorators: [{
1847
1845
  type: Component,
1848
1846
  args: [{ standalone: true, selector: 'fng-step-horizontal', encapsulation: ViewEncapsulation.None, template: "<div class=\"fng-overflow-hidden\" [class.fng-hidden]=\"!isActive\">\r\n <div class=\"fng-moving-container\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".fng-overflow-hidden{overflow:hidden}@keyframes stepperAnimation{0%{transform:translate(100%)}to{transform:translate(0)}}.fng-moving-container{animation-name:stepperAnimation;animation-duration:.3s;animation-timing-function:ease}.fng-hidden{display:none}\n"] }]
1849
1847
  }], propDecorators: { isActive: [{
@@ -1883,10 +1881,10 @@ class FngStepperHorizontalComponent {
1883
1881
  this.stepIndexChange?.emit(index);
1884
1882
  }
1885
1883
  }
1886
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngStepperHorizontalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1887
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngStepperHorizontalComponent, isStandalone: true, selector: "fng-stepper-horizontal", inputs: { stepIndex: "stepIndex" }, outputs: { stepIndexChange: "stepIndexChange" }, queries: [{ propertyName: "stepComponents", predicate: FngStepHorizontalComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"fwe-stepper-horizontal\">\n @for (step of stepComponents; track step; let i = $index) {\n <div\n class=\"fwe-step-container\"\n (click)=\"onStepClick(i)\"\n [class.fwe-step-done]=\"stepIndex > i\"\n [class.fwe-step-active]=\"i === stepIndex\"\n >\n <div class=\"fwe-step\">\n <div class=\"fwe-step-no\">{{ i + 1 }}</div>\n <div class=\"fwe-step-name\">{{ step.title }}</div>\n </div>\n </div>\n }\n</div>\n\n<ng-content></ng-content>\n", encapsulation: i0.ViewEncapsulation.None }); }
1884
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngStepperHorizontalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1885
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngStepperHorizontalComponent, isStandalone: true, selector: "fng-stepper-horizontal", inputs: { stepIndex: "stepIndex" }, outputs: { stepIndexChange: "stepIndexChange" }, queries: [{ propertyName: "stepComponents", predicate: FngStepHorizontalComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"fwe-stepper-horizontal\">\n @for (step of stepComponents; track step; let i = $index) {\n <div\n class=\"fwe-step-container\"\n (click)=\"onStepClick(i)\"\n [class.fwe-step-done]=\"stepIndex > i\"\n [class.fwe-step-active]=\"i === stepIndex\"\n >\n <div class=\"fwe-step\">\n <div class=\"fwe-step-no\">{{ i + 1 }}</div>\n <div class=\"fwe-step-name\">{{ step.title }}</div>\n </div>\n </div>\n }\n</div>\n\n<ng-content></ng-content>\n", encapsulation: i0.ViewEncapsulation.None }); }
1888
1886
  }
1889
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngStepperHorizontalComponent, decorators: [{
1887
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngStepperHorizontalComponent, decorators: [{
1890
1888
  type: Component,
1891
1889
  args: [{ imports: [], selector: 'fng-stepper-horizontal', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-stepper-horizontal\">\n @for (step of stepComponents; track step; let i = $index) {\n <div\n class=\"fwe-step-container\"\n (click)=\"onStepClick(i)\"\n [class.fwe-step-done]=\"stepIndex > i\"\n [class.fwe-step-active]=\"i === stepIndex\"\n >\n <div class=\"fwe-step\">\n <div class=\"fwe-step-no\">{{ i + 1 }}</div>\n <div class=\"fwe-step-name\">{{ step.title }}</div>\n </div>\n </div>\n }\n</div>\n\n<ng-content></ng-content>\n" }]
1892
1890
  }], propDecorators: { stepComponents: [{
@@ -1929,10 +1927,10 @@ class FngStepVerticalComponent {
1929
1927
  ngAfterViewInit() {
1930
1928
  this.updateHeight();
1931
1929
  }
1932
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngStepVerticalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1933
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngStepVerticalComponent, isStandalone: true, selector: "fng-step-vertical", inputs: { index: "index", title: "title", isDone: "isDone", isLastElement: "isLastElement", isActive: "isActive" }, viewQueries: [{ propertyName: "stepContent", first: true, predicate: ["stepContent"], descendants: true }, { propertyName: "stepContentContainer", first: true, predicate: ["stepContentContainer"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"fwe-step-container\"\r\n [class.fwe-last-element]=\"isLastElement\"\r\n [class.fwe-step-active]=\"isActive\"\r\n [class.fwe-step-done]=\"isDone\"\r\n>\r\n <div class=\"fwe-step\" (click)=\"onStepClickCallback(index)\">\r\n <div class=\"fwe-step-no\">{{ index + 1 }}</div>\r\n <div class=\"fwe-step-name\">{{ title }}</div>\r\n </div>\r\n <div #stepContentContainer class=\"fwe-step-content-container\">\r\n <div #stepContent class=\"fwe-step-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".fwe-step-container.fwe-step-active .fwe-step-content-container{height:20px}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1930
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngStepVerticalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1931
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngStepVerticalComponent, isStandalone: true, selector: "fng-step-vertical", inputs: { index: "index", title: "title", isDone: "isDone", isLastElement: "isLastElement", isActive: "isActive" }, viewQueries: [{ propertyName: "stepContent", first: true, predicate: ["stepContent"], descendants: true }, { propertyName: "stepContentContainer", first: true, predicate: ["stepContentContainer"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"fwe-step-container\"\r\n [class.fwe-last-element]=\"isLastElement\"\r\n [class.fwe-step-active]=\"isActive\"\r\n [class.fwe-step-done]=\"isDone\"\r\n>\r\n <div class=\"fwe-step\" (click)=\"onStepClickCallback(index)\">\r\n <div class=\"fwe-step-no\">{{ index + 1 }}</div>\r\n <div class=\"fwe-step-name\">{{ title }}</div>\r\n </div>\r\n <div #stepContentContainer class=\"fwe-step-content-container\">\r\n <div #stepContent class=\"fwe-step-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".fwe-step-container.fwe-step-active .fwe-step-content-container{height:20px}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1934
1932
  }
1935
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngStepVerticalComponent, decorators: [{
1933
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngStepVerticalComponent, decorators: [{
1936
1934
  type: Component,
1937
1935
  args: [{ standalone: true, selector: 'fng-step-vertical', encapsulation: ViewEncapsulation.None, template: "<div\r\n class=\"fwe-step-container\"\r\n [class.fwe-last-element]=\"isLastElement\"\r\n [class.fwe-step-active]=\"isActive\"\r\n [class.fwe-step-done]=\"isDone\"\r\n>\r\n <div class=\"fwe-step\" (click)=\"onStepClickCallback(index)\">\r\n <div class=\"fwe-step-no\">{{ index + 1 }}</div>\r\n <div class=\"fwe-step-name\">{{ title }}</div>\r\n </div>\r\n <div #stepContentContainer class=\"fwe-step-content-container\">\r\n <div #stepContent class=\"fwe-step-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".fwe-step-container.fwe-step-active .fwe-step-content-container{height:20px}\n"] }]
1938
1936
  }], propDecorators: { stepContent: [{
@@ -1988,10 +1986,10 @@ class FngStepperVerticalComponent {
1988
1986
  this.stepIndexChange?.emit(index);
1989
1987
  }
1990
1988
  }
1991
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngStepperVerticalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1992
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngStepperVerticalComponent, isStandalone: true, selector: "fng-stepper-vertical", inputs: { stepIndex: "stepIndex" }, outputs: { stepIndexChange: "stepIndexChange" }, queries: [{ propertyName: "stepComponents", predicate: FngStepVerticalComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"fwe-stepper-vertical\">\r\n <ng-content></ng-content>\r\n</div>\r\n", encapsulation: i0.ViewEncapsulation.None }); }
1989
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngStepperVerticalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1990
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngStepperVerticalComponent, isStandalone: true, selector: "fng-stepper-vertical", inputs: { stepIndex: "stepIndex" }, outputs: { stepIndexChange: "stepIndexChange" }, queries: [{ propertyName: "stepComponents", predicate: FngStepVerticalComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"fwe-stepper-vertical\">\r\n <ng-content></ng-content>\r\n</div>\r\n", encapsulation: i0.ViewEncapsulation.None }); }
1993
1991
  }
1994
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngStepperVerticalComponent, decorators: [{
1992
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngStepperVerticalComponent, decorators: [{
1995
1993
  type: Component,
1996
1994
  args: [{ standalone: true, selector: 'fng-stepper-vertical', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-stepper-vertical\">\r\n <ng-content></ng-content>\r\n</div>\r\n" }]
1997
1995
  }], propDecorators: { stepComponents: [{
@@ -2022,10 +2020,10 @@ class FngTableHeaderCellDirective {
2022
2020
  onChangeOrder() {
2023
2021
  this.changeOrder.emit(this.fngTh);
2024
2022
  }
2025
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTableHeaderCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2026
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.13", type: FngTableHeaderCellDirective, isStandalone: true, selector: "[fngTh]", inputs: { order: "order", fngTh: "fngTh", abbr: "abbr", colspan: "colspan", headers: "headers", rowspan: "rowspan", scope: "scope" }, outputs: { changeOrder: "changeOrder" }, host: { listeners: { "click": "onChangeOrder()" }, properties: { "class.fwe-table-order": "order != null", "class.fwe-active": "active", "class.fwe-table-order-ascending": "active && orderDescending === false", "class.fwe-table-order-descending": "active && orderDescending === true", "attr.abbr": "abbr", "attr.colspan": "colspan", "attr.headers": "headers", "attr.rowspan": "rowspan", "attr.scope": "scope" } }, ngImport: i0 }); }
2023
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTableHeaderCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2024
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: FngTableHeaderCellDirective, isStandalone: true, selector: "[fngTh]", inputs: { order: "order", fngTh: "fngTh", abbr: "abbr", colspan: "colspan", headers: "headers", rowspan: "rowspan", scope: "scope" }, outputs: { changeOrder: "changeOrder" }, host: { listeners: { "click": "onChangeOrder()" }, properties: { "class.fwe-table-order": "order != null", "class.fwe-active": "active", "class.fwe-table-order-ascending": "active && orderDescending === false", "class.fwe-table-order-descending": "active && orderDescending === true", "attr.abbr": "abbr", "attr.colspan": "colspan", "attr.headers": "headers", "attr.rowspan": "rowspan", "attr.scope": "scope" } }, ngImport: i0 }); }
2027
2025
  }
2028
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTableHeaderCellDirective, decorators: [{
2026
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTableHeaderCellDirective, decorators: [{
2029
2027
  type: Directive,
2030
2028
  args: [{
2031
2029
  standalone: true,
@@ -2072,10 +2070,10 @@ class FngTabPaneComponent {
2072
2070
  ngOnChanges() {
2073
2071
  this.changesSubject.next(true);
2074
2072
  }
2075
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTabPaneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2076
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngTabPaneComponent, isStandalone: true, selector: "fng-tab-pane", inputs: { id: "id", name: "name", icon: "icon", active: "active", isVisible: "isVisible", disabled: "disabled" }, usesOnChanges: true, ngImport: i0, template: "<div role=\"tabpanel\" [id]=\"tabPaneId\" [attr.aria-labelledby]=\"tabId\" [class.fng-show]=\"isVisible\" [class.fng-hide]=\"!isVisible\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-show{display:block}.fng-hide{display:none}\n"], encapsulation: i0.ViewEncapsulation.None }); }
2073
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTabPaneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2074
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngTabPaneComponent, isStandalone: true, selector: "fng-tab-pane", inputs: { id: "id", name: "name", icon: "icon", active: "active", isVisible: "isVisible", disabled: "disabled" }, usesOnChanges: true, ngImport: i0, template: "<div role=\"tabpanel\" [id]=\"tabPaneId\" [attr.aria-labelledby]=\"tabId\" [class.fng-show]=\"isVisible\" [class.fng-hide]=\"!isVisible\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-show{display:block}.fng-hide{display:none}\n"], encapsulation: i0.ViewEncapsulation.None }); }
2077
2075
  }
2078
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTabPaneComponent, decorators: [{
2076
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTabPaneComponent, decorators: [{
2079
2077
  type: Component,
2080
2078
  args: [{ standalone: true, selector: 'fng-tab-pane', encapsulation: ViewEncapsulation.None, template: "<div role=\"tabpanel\" [id]=\"tabPaneId\" [attr.aria-labelledby]=\"tabId\" [class.fng-show]=\"isVisible\" [class.fng-hide]=\"!isVisible\">\r\n <ng-content></ng-content>\r\n</div>\r\n", styles: [".fng-show{display:block}.fng-hide{display:none}\n"] }]
2081
2079
  }], propDecorators: { id: [{
@@ -2509,10 +2507,10 @@ class FngTabsComponent {
2509
2507
  }
2510
2508
  return -1;
2511
2509
  }
2512
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTabsComponent, deps: [{ token: i0.ElementRef }, { token: DOCUMENT }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
2513
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngTabsComponent, isStandalone: true, selector: "fng-tabs", inputs: { viewType: ["fngTabsViewType", "viewType"], showDivider: ["fngTabsUseBottomDivider", "showDivider"], config: "config" }, outputs: { fngBeforeTabChange: "fngBeforeTabChange", fngTabChange: "fngTabChange" }, queries: [{ propertyName: "panes", predicate: FngTabPaneComponent }], viewQueries: [{ propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true }, { propertyName: "scrollAera", first: true, predicate: ["scrollAera"], descendants: true }, { propertyName: "scrollContent", first: true, predicate: ["scrollContent"], descendants: true }], ngImport: i0, template: "@if (viewType === 'legacy') {\n <div class=\"fwe-legacy-tabs\">\n <ul\n role=\"tablist\"\n class=\"fwe-legacy-tab-bar\"\n [class.fwe-legacy-tab-bar-full-width]=\"config?.tabBar?.fullWidth\"\n [class.fwe-legacy-tab-items-equal-width]=\"'equal' === config?.tabItems?.appearance\"\n [class.fwe-legacy-tab-items-fill]=\"'fill' === config?.tabItems?.appearance\"\n >\n @for (tab of tabs; track tab; let i = $index) {\n <li\n class=\"fwe-legacy-tab-item\"\n [ngClass]=\"{ 'fwe-active': tab?.active, 'fwe-disabled': tab?.disabled }\"\n >\n @if (null == tab?.icon) {\n <a\n [id]=\"componentId + '-tab-' + i\"\n [attr.aria-controls]=\"tab.paneId\"\n [attr.aria-selected]=\"true === tab?.active ? true : false\"\n [attr.aria-disabled]=\"true === tab?.disabled ? true : false\"\n role=\"tab\"\n class=\"fwe-legacy-tab-link\"\n (click)=\"showTabPane(tab.paneId)\"\n >{{ tab.name }}</a\n >\n }\n @if (null != tab?.icon) {\n <a\n [id]=\"componentId + '-tab-' + i\"\n [attr.aria-controls]=\"tab.paneId\"\n [attr.aria-selected]=\"true === tab?.active ? true : false\"\n [attr.aria-disabled]=\"true === tab?.disabled ? true : false\"\n role=\"tab\"\n class=\"fwe-legacy-tab-link\"\n (click)=\"showTabPane(tab.paneId)\"\n [class.fwe-can-swap-icon]=\"2 === tabs.length && 1 === i\"\n >\n <i [class]=\"'fwe-icon ' + tab.icon\"></i>\n <span>{{ tab.name }}</span>\n </a>\n }\n </li>\n }\n </ul>\n <div class=\"fwe-legacy-tab-panel-content\">\n <ng-container *ngTemplateOutlet=\"tabPanelContent\"></ng-container>\n </div>\n </div>\n }\n\n @if (viewType !== 'legacy') {\n <div class=\"fng-tab-bar\" role=\"tablist\">\n <div class=\"fng-tab-scroller\" #scroller>\n <div\n class=\"fng-tab-scroller-scroll-area fng-tab-scroller-scroll-area--scroll\"\n [class.fng-tab-scroller-scroll-area--compact]=\"useCompactDensity\"\n #scrollAera\n >\n <div class=\"fng-tab-scroller-scroll-content\" [class.fng-tab-scroller-scroll-content--with-divider]=\"showDivider\" #scrollContent>\n @for (tab of tabs; track tab; let i = $index) {\n <button\n role=\"tab\"\n class=\"fng-tab\"\n [id]=\"componentId + '-tab-' + i\"\n [attr.aria-controls]=\"tab.paneId\"\n [attr.aria-selected]=\"true === tab?.active ? true : false\"\n [tabindex]=\"i === 0 ? 0 : -1\"\n [class.fng-tab--active]=\"tab?.active\"\n [class.fng-tab--disabled]=\"tab?.disabled\"\n (click)=\"handleTabScroll($event, i); showTabPane(tab.paneId)\"\n >\n <span class=\"fng-tab-content\">\n <span class=\"fng-tab-text-label\">{{ tab.name }}</span>\n </span>\n <span class=\"fng-tab-indicator\" [class.fng-tab-indicator--active]=\"tab?.active\">\n <span class=\"fng-tab-indicator-content fng-tab-indicator-content--underline\"></span>\n </span>\n </button>\n }\n <div class=\"fng-tab-scroller-divider-line\"></div>\n </div>\n </div>\n </div>\n <div class=\"fng-tab-panel-content\">\n <ng-container *ngTemplateOutlet=\"tabPanelContent\"></ng-container>\n </div>\n </div>\n }\n\n <ng-template #tabPanelContent>\n <ng-content></ng-content>\n </ng-template>\n", styles: [".fwe-legacy-tabs{margin:48px 0;width:100%;height:100%}.fwe-legacy-tab-bar{display:flex;flex-wrap:nowrap;width:75%;padding-left:0;margin-bottom:0;margin-top:0;list-style:none;font-size:var(--fwe-font-size-base)}.fwe-legacy-tab-bar.fwe-legacy-tab-bar-full-width{width:100%}.fwe-legacy-tab-bar.fwe-legacy-tab-items-fill .fwe-legacy-tab-item{flex:1 1 auto}.fwe-legacy-tab-bar.fwe-legacy-tab-items-equal-width .fwe-legacy-tab-item{flex:1 1 0}.fwe-legacy-tab-item{height:48px;max-height:48px;background-color:var(--fwe-gray-300);border-right:2px solid var(--fwe-gray-100);text-align:center}.fwe-legacy-tab-item:last-child{border-right:none}.fwe-legacy-tab-item.fwe-active{background-color:var(--fwe-white)}.fwe-legacy-tab-item.fwe-active .fwe-legacy-tab-link{color:var(--fwe-caerul)}.fwe-legacy-tab-item.fwe-disabled{background-color:var(--fwe-control-disabled)}.fwe-legacy-tab-item.fwe-disabled .fwe-legacy-tab-link{color:var(--fwe-text-disabled)}.fwe-legacy-tab-item:not(.fwe-active){border-bottom:2px solid var(--fwe-gray-100)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link{padding:11px 16px}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link:hover{color:var(--fwe-text);background-color:var(--fwe-control-hover)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link:active{background-color:var(--fwe-control-active)}.fwe-legacy-tab-link{display:inline-block;width:100%;height:46px;padding:11px 16px 13px;line-height:24px;cursor:pointer;color:var(--fwe-black);white-space:nowrap}.fwe-legacy-tab-link i.fwe-icon{padding-right:8px;vertical-align:initial}.fwe-legacy-tab-link i.fwe-icon.fwe-icon-lg{position:relative;top:3px}.fwe-legacy-tab-panel-content{padding:48px 24px;background-color:var(--fwe-white);height:100%;overflow:auto}@media (max-width: 375px){.fwe-legacy-tab-bar{justify-content:space-between;background-color:var(--fwe-white);width:100%}.fwe-legacy-tab-item{background-color:var(--fwe-white);border-right:2px solid var(--fwe-white)}.fwe-legacy-tab-item:not(.fwe-active){border-bottom:2px solid var(--fwe-white)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link{color:var(--fwe-hero-gray)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link i.fwe-icon{color:var(--fwe-hero-gray)}.fwe-legacy-tab-link.fwe-can-swap-icon{direction:rtl}.fwe-legacy-tab-link.fwe-can-swap-icon i.fwe-icon{padding-left:8px;padding-right:0}}.fng-tab-panel-content{padding:48px 24px;background-color:var(--fwe-white);height:100%;overflow:auto}.fng-tab-bar{width:100%}.fng-tab-scroller{overflow-y:hidden}.fng-tab-scroller-scroll-area{position:relative;display:flex;overflow-x:hidden}.fng-tab-scroller-scroll-area::-webkit-scrollbar{display:none}.fng-tab-scroller-scroll-area--scroll{overflow-x:scroll}.fng-tab-scroller-scroll-content{position:relative;display:flex;flex:1 0 auto;transform:none;will-change:transform;padding:0 17px 0 16px}.fng-tab-scroller-scroll-content--with-divider .fng-tab-scroller-divider-line{display:block}.fng-tab-scroller--animating .fng-tab-scroller-scroll-content{transition:.25s transform cubic-bezier(.4,0,.2,1)}.fng-tab-scroller-divider-line{display:none;position:absolute;inset:0;border-bottom:1px solid var(--fwe-control)}.fng-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.fng-tab-indicator-content{transform-origin:left;opacity:0}.fng-tab-indicator-content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.fng-tab-indicator .fng-tab-indicator-content{transition:.25s transform cubic-bezier(.4,0,.2,1)}.fng-tab-indicator .fng-tab-indicator-content--underline{border-top:4px solid var(--fwe-caerul)}.fng-tab-indicator--active .fng-tab-indicator-content{opacity:1}.fng-tab{position:relative;display:flex;flex:1 0 auto;justify-content:center;padding:0;margin:0;border:none;outline:none;background:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;appearance:none;z-index:1;height:36px}.fng-tab:hover .fng-tab-text-label{color:var(--fwe-caerul)}.fng-tab:active .fng-tab-text-label{color:var(--fwe-hero-active)}.fng-tab:not(:last-child){margin-right:32px}.fng-tab::-moz-focus-inner{padding:0;border:0}.fng-tab .fng-tab-text-label{color:var(--fwe-text)}.fng-tab--active .fng-tab-text-label{color:var(--fwe-caerul)}.fng-tab--disabled .fng-tab-text-label{color:var(--fwe-text-disabled)}.fng-tab-content{position:relative;display:flex;align-items:flex-start;justify-content:center;height:inherit;pointer-events:none}.fng-tab-text-label{display:inline-block;z-index:2}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab{flex:none}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab:not(:last-child){margin-right:64px}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab-scroller-scroll-content{padding:0 32px}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab-scroller-divider-line{padding-right:64px}.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll{overflow-x:hidden}@media (hover: none){.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll{overflow-x:auto}@-moz-document url-prefix(){.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll{scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) transparent}}}@media (hover: none) and (pointer: fine){.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll::-webkit-scrollbar{width:14px}.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll::-webkit-scrollbar-track{background:transparent}.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:8px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2510
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTabsComponent, deps: [{ token: i0.ElementRef }, { token: DOCUMENT }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
2511
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngTabsComponent, isStandalone: true, selector: "fng-tabs", inputs: { viewType: ["fngTabsViewType", "viewType"], showDivider: ["fngTabsUseBottomDivider", "showDivider"], config: "config" }, outputs: { fngBeforeTabChange: "fngBeforeTabChange", fngTabChange: "fngTabChange" }, queries: [{ propertyName: "panes", predicate: FngTabPaneComponent }], viewQueries: [{ propertyName: "scroller", first: true, predicate: ["scroller"], descendants: true }, { propertyName: "scrollAera", first: true, predicate: ["scrollAera"], descendants: true }, { propertyName: "scrollContent", first: true, predicate: ["scrollContent"], descendants: true }], ngImport: i0, template: "@if (viewType === 'legacy') {\n <div class=\"fwe-legacy-tabs\">\n <ul\n role=\"tablist\"\n class=\"fwe-legacy-tab-bar\"\n [class.fwe-legacy-tab-bar-full-width]=\"config?.tabBar?.fullWidth\"\n [class.fwe-legacy-tab-items-equal-width]=\"'equal' === config?.tabItems?.appearance\"\n [class.fwe-legacy-tab-items-fill]=\"'fill' === config?.tabItems?.appearance\"\n >\n @for (tab of tabs; track tab; let i = $index) {\n <li\n class=\"fwe-legacy-tab-item\"\n [ngClass]=\"{ 'fwe-active': tab?.active, 'fwe-disabled': tab?.disabled }\"\n >\n @if (null == tab?.icon) {\n <a\n [id]=\"componentId + '-tab-' + i\"\n [attr.aria-controls]=\"tab.paneId\"\n [attr.aria-selected]=\"true === tab?.active ? true : false\"\n [attr.aria-disabled]=\"true === tab?.disabled ? true : false\"\n role=\"tab\"\n class=\"fwe-legacy-tab-link\"\n (click)=\"showTabPane(tab.paneId)\"\n >{{ tab.name }}</a\n >\n }\n @if (null != tab?.icon) {\n <a\n [id]=\"componentId + '-tab-' + i\"\n [attr.aria-controls]=\"tab.paneId\"\n [attr.aria-selected]=\"true === tab?.active ? true : false\"\n [attr.aria-disabled]=\"true === tab?.disabled ? true : false\"\n role=\"tab\"\n class=\"fwe-legacy-tab-link\"\n (click)=\"showTabPane(tab.paneId)\"\n [class.fwe-can-swap-icon]=\"2 === tabs.length && 1 === i\"\n >\n <i [class]=\"'fwe-icon ' + tab.icon\"></i>\n <span>{{ tab.name }}</span>\n </a>\n }\n </li>\n }\n </ul>\n <div class=\"fwe-legacy-tab-panel-content\">\n <ng-container *ngTemplateOutlet=\"tabPanelContent\"></ng-container>\n </div>\n </div>\n }\n\n @if (viewType !== 'legacy') {\n <div class=\"fng-tab-bar\" role=\"tablist\">\n <div class=\"fng-tab-scroller\" #scroller>\n <div\n class=\"fng-tab-scroller-scroll-area fng-tab-scroller-scroll-area--scroll\"\n [class.fng-tab-scroller-scroll-area--compact]=\"useCompactDensity\"\n #scrollAera\n >\n <div class=\"fng-tab-scroller-scroll-content\" [class.fng-tab-scroller-scroll-content--with-divider]=\"showDivider\" #scrollContent>\n @for (tab of tabs; track tab; let i = $index) {\n <button\n role=\"tab\"\n class=\"fng-tab\"\n [id]=\"componentId + '-tab-' + i\"\n [attr.aria-controls]=\"tab.paneId\"\n [attr.aria-selected]=\"true === tab?.active ? true : false\"\n [tabindex]=\"i === 0 ? 0 : -1\"\n [class.fng-tab--active]=\"tab?.active\"\n [class.fng-tab--disabled]=\"tab?.disabled\"\n (click)=\"handleTabScroll($event, i); showTabPane(tab.paneId)\"\n >\n <span class=\"fng-tab-content\">\n <span class=\"fng-tab-text-label\">{{ tab.name }}</span>\n </span>\n <span class=\"fng-tab-indicator\" [class.fng-tab-indicator--active]=\"tab?.active\">\n <span class=\"fng-tab-indicator-content fng-tab-indicator-content--underline\"></span>\n </span>\n </button>\n }\n <div class=\"fng-tab-scroller-divider-line\"></div>\n </div>\n </div>\n </div>\n <div class=\"fng-tab-panel-content\">\n <ng-container *ngTemplateOutlet=\"tabPanelContent\"></ng-container>\n </div>\n </div>\n }\n\n <ng-template #tabPanelContent>\n <ng-content></ng-content>\n </ng-template>\n", styles: [".fwe-legacy-tabs{margin:48px 0;width:100%;height:100%}.fwe-legacy-tab-bar{display:flex;flex-wrap:nowrap;width:75%;padding-left:0;margin-bottom:0;margin-top:0;list-style:none;font-size:var(--fwe-font-size-base)}.fwe-legacy-tab-bar.fwe-legacy-tab-bar-full-width{width:100%}.fwe-legacy-tab-bar.fwe-legacy-tab-items-fill .fwe-legacy-tab-item{flex:1 1 auto}.fwe-legacy-tab-bar.fwe-legacy-tab-items-equal-width .fwe-legacy-tab-item{flex:1 1 0}.fwe-legacy-tab-item{height:48px;max-height:48px;background-color:var(--fwe-gray-300);border-right:2px solid var(--fwe-gray-100);text-align:center}.fwe-legacy-tab-item:last-child{border-right:none}.fwe-legacy-tab-item.fwe-active{background-color:var(--fwe-white)}.fwe-legacy-tab-item.fwe-active .fwe-legacy-tab-link{color:var(--fwe-caerul)}.fwe-legacy-tab-item.fwe-disabled{background-color:var(--fwe-control-disabled)}.fwe-legacy-tab-item.fwe-disabled .fwe-legacy-tab-link{color:var(--fwe-text-disabled)}.fwe-legacy-tab-item:not(.fwe-active){border-bottom:2px solid var(--fwe-gray-100)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link{padding:11px 16px}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link:hover{color:var(--fwe-text);background-color:var(--fwe-control-hover)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link:active{background-color:var(--fwe-control-active)}.fwe-legacy-tab-link{display:inline-block;width:100%;height:46px;padding:11px 16px 13px;line-height:24px;cursor:pointer;color:var(--fwe-black);white-space:nowrap}.fwe-legacy-tab-link i.fwe-icon{padding-right:8px;vertical-align:initial}.fwe-legacy-tab-link i.fwe-icon.fwe-icon-lg{position:relative;top:3px}.fwe-legacy-tab-panel-content{padding:48px 24px;background-color:var(--fwe-white);height:100%;overflow:auto}@media (max-width: 375px){.fwe-legacy-tab-bar{justify-content:space-between;background-color:var(--fwe-white);width:100%}.fwe-legacy-tab-item{background-color:var(--fwe-white);border-right:2px solid var(--fwe-white)}.fwe-legacy-tab-item:not(.fwe-active){border-bottom:2px solid var(--fwe-white)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link{color:var(--fwe-hero-gray)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link i.fwe-icon{color:var(--fwe-hero-gray)}.fwe-legacy-tab-link.fwe-can-swap-icon{direction:rtl}.fwe-legacy-tab-link.fwe-can-swap-icon i.fwe-icon{padding-left:8px;padding-right:0}}.fng-tab-panel-content{padding:48px 24px;background-color:var(--fwe-white);height:100%;overflow:auto}.fng-tab-bar{width:100%}.fng-tab-scroller{overflow-y:hidden}.fng-tab-scroller-scroll-area{position:relative;display:flex;overflow-x:hidden}.fng-tab-scroller-scroll-area::-webkit-scrollbar{display:none}.fng-tab-scroller-scroll-area--scroll{overflow-x:scroll}.fng-tab-scroller-scroll-content{position:relative;display:flex;flex:1 0 auto;transform:none;will-change:transform;padding:0 17px 0 16px}.fng-tab-scroller-scroll-content--with-divider .fng-tab-scroller-divider-line{display:block}.fng-tab-scroller--animating .fng-tab-scroller-scroll-content{transition:.25s transform cubic-bezier(.4,0,.2,1)}.fng-tab-scroller-divider-line{display:none;position:absolute;inset:0;border-bottom:1px solid var(--fwe-control)}.fng-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.fng-tab-indicator-content{transform-origin:left;opacity:0}.fng-tab-indicator-content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.fng-tab-indicator .fng-tab-indicator-content{transition:.25s transform cubic-bezier(.4,0,.2,1)}.fng-tab-indicator .fng-tab-indicator-content--underline{border-top:4px solid var(--fwe-caerul)}.fng-tab-indicator--active .fng-tab-indicator-content{opacity:1}.fng-tab{position:relative;display:flex;flex:1 0 auto;justify-content:center;padding:0;margin:0;border:none;outline:none;background:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;appearance:none;z-index:1;height:36px}.fng-tab:hover .fng-tab-text-label{color:var(--fwe-caerul)}.fng-tab:active .fng-tab-text-label{color:var(--fwe-hero-active)}.fng-tab:not(:last-child){margin-right:32px}.fng-tab::-moz-focus-inner{padding:0;border:0}.fng-tab .fng-tab-text-label{color:var(--fwe-text)}.fng-tab--active .fng-tab-text-label{color:var(--fwe-caerul)}.fng-tab--disabled .fng-tab-text-label{color:var(--fwe-text-disabled)}.fng-tab-content{position:relative;display:flex;align-items:flex-start;justify-content:center;height:inherit;pointer-events:none}.fng-tab-text-label{display:inline-block;z-index:2}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab{flex:none}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab:not(:last-child){margin-right:64px}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab-scroller-scroll-content{padding:0 32px}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab-scroller-divider-line{padding-right:64px}.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll{overflow-x:hidden}@media (hover: none){.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll{overflow-x:auto}@-moz-document url-prefix(){.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll{scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) transparent}}}@media (hover: none) and (pointer: fine){.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll::-webkit-scrollbar{width:14px}.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll::-webkit-scrollbar-track{background:transparent}.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:8px}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
2514
2512
  }
2515
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTabsComponent, decorators: [{
2513
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTabsComponent, decorators: [{
2516
2514
  type: Component,
2517
2515
  args: [{ imports: [CommonModule], selector: 'fng-tabs', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "@if (viewType === 'legacy') {\n <div class=\"fwe-legacy-tabs\">\n <ul\n role=\"tablist\"\n class=\"fwe-legacy-tab-bar\"\n [class.fwe-legacy-tab-bar-full-width]=\"config?.tabBar?.fullWidth\"\n [class.fwe-legacy-tab-items-equal-width]=\"'equal' === config?.tabItems?.appearance\"\n [class.fwe-legacy-tab-items-fill]=\"'fill' === config?.tabItems?.appearance\"\n >\n @for (tab of tabs; track tab; let i = $index) {\n <li\n class=\"fwe-legacy-tab-item\"\n [ngClass]=\"{ 'fwe-active': tab?.active, 'fwe-disabled': tab?.disabled }\"\n >\n @if (null == tab?.icon) {\n <a\n [id]=\"componentId + '-tab-' + i\"\n [attr.aria-controls]=\"tab.paneId\"\n [attr.aria-selected]=\"true === tab?.active ? true : false\"\n [attr.aria-disabled]=\"true === tab?.disabled ? true : false\"\n role=\"tab\"\n class=\"fwe-legacy-tab-link\"\n (click)=\"showTabPane(tab.paneId)\"\n >{{ tab.name }}</a\n >\n }\n @if (null != tab?.icon) {\n <a\n [id]=\"componentId + '-tab-' + i\"\n [attr.aria-controls]=\"tab.paneId\"\n [attr.aria-selected]=\"true === tab?.active ? true : false\"\n [attr.aria-disabled]=\"true === tab?.disabled ? true : false\"\n role=\"tab\"\n class=\"fwe-legacy-tab-link\"\n (click)=\"showTabPane(tab.paneId)\"\n [class.fwe-can-swap-icon]=\"2 === tabs.length && 1 === i\"\n >\n <i [class]=\"'fwe-icon ' + tab.icon\"></i>\n <span>{{ tab.name }}</span>\n </a>\n }\n </li>\n }\n </ul>\n <div class=\"fwe-legacy-tab-panel-content\">\n <ng-container *ngTemplateOutlet=\"tabPanelContent\"></ng-container>\n </div>\n </div>\n }\n\n @if (viewType !== 'legacy') {\n <div class=\"fng-tab-bar\" role=\"tablist\">\n <div class=\"fng-tab-scroller\" #scroller>\n <div\n class=\"fng-tab-scroller-scroll-area fng-tab-scroller-scroll-area--scroll\"\n [class.fng-tab-scroller-scroll-area--compact]=\"useCompactDensity\"\n #scrollAera\n >\n <div class=\"fng-tab-scroller-scroll-content\" [class.fng-tab-scroller-scroll-content--with-divider]=\"showDivider\" #scrollContent>\n @for (tab of tabs; track tab; let i = $index) {\n <button\n role=\"tab\"\n class=\"fng-tab\"\n [id]=\"componentId + '-tab-' + i\"\n [attr.aria-controls]=\"tab.paneId\"\n [attr.aria-selected]=\"true === tab?.active ? true : false\"\n [tabindex]=\"i === 0 ? 0 : -1\"\n [class.fng-tab--active]=\"tab?.active\"\n [class.fng-tab--disabled]=\"tab?.disabled\"\n (click)=\"handleTabScroll($event, i); showTabPane(tab.paneId)\"\n >\n <span class=\"fng-tab-content\">\n <span class=\"fng-tab-text-label\">{{ tab.name }}</span>\n </span>\n <span class=\"fng-tab-indicator\" [class.fng-tab-indicator--active]=\"tab?.active\">\n <span class=\"fng-tab-indicator-content fng-tab-indicator-content--underline\"></span>\n </span>\n </button>\n }\n <div class=\"fng-tab-scroller-divider-line\"></div>\n </div>\n </div>\n </div>\n <div class=\"fng-tab-panel-content\">\n <ng-container *ngTemplateOutlet=\"tabPanelContent\"></ng-container>\n </div>\n </div>\n }\n\n <ng-template #tabPanelContent>\n <ng-content></ng-content>\n </ng-template>\n", styles: [".fwe-legacy-tabs{margin:48px 0;width:100%;height:100%}.fwe-legacy-tab-bar{display:flex;flex-wrap:nowrap;width:75%;padding-left:0;margin-bottom:0;margin-top:0;list-style:none;font-size:var(--fwe-font-size-base)}.fwe-legacy-tab-bar.fwe-legacy-tab-bar-full-width{width:100%}.fwe-legacy-tab-bar.fwe-legacy-tab-items-fill .fwe-legacy-tab-item{flex:1 1 auto}.fwe-legacy-tab-bar.fwe-legacy-tab-items-equal-width .fwe-legacy-tab-item{flex:1 1 0}.fwe-legacy-tab-item{height:48px;max-height:48px;background-color:var(--fwe-gray-300);border-right:2px solid var(--fwe-gray-100);text-align:center}.fwe-legacy-tab-item:last-child{border-right:none}.fwe-legacy-tab-item.fwe-active{background-color:var(--fwe-white)}.fwe-legacy-tab-item.fwe-active .fwe-legacy-tab-link{color:var(--fwe-caerul)}.fwe-legacy-tab-item.fwe-disabled{background-color:var(--fwe-control-disabled)}.fwe-legacy-tab-item.fwe-disabled .fwe-legacy-tab-link{color:var(--fwe-text-disabled)}.fwe-legacy-tab-item:not(.fwe-active){border-bottom:2px solid var(--fwe-gray-100)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link{padding:11px 16px}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link:hover{color:var(--fwe-text);background-color:var(--fwe-control-hover)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link:active{background-color:var(--fwe-control-active)}.fwe-legacy-tab-link{display:inline-block;width:100%;height:46px;padding:11px 16px 13px;line-height:24px;cursor:pointer;color:var(--fwe-black);white-space:nowrap}.fwe-legacy-tab-link i.fwe-icon{padding-right:8px;vertical-align:initial}.fwe-legacy-tab-link i.fwe-icon.fwe-icon-lg{position:relative;top:3px}.fwe-legacy-tab-panel-content{padding:48px 24px;background-color:var(--fwe-white);height:100%;overflow:auto}@media (max-width: 375px){.fwe-legacy-tab-bar{justify-content:space-between;background-color:var(--fwe-white);width:100%}.fwe-legacy-tab-item{background-color:var(--fwe-white);border-right:2px solid var(--fwe-white)}.fwe-legacy-tab-item:not(.fwe-active){border-bottom:2px solid var(--fwe-white)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link{color:var(--fwe-hero-gray)}.fwe-legacy-tab-item:not(.fwe-active) .fwe-legacy-tab-link i.fwe-icon{color:var(--fwe-hero-gray)}.fwe-legacy-tab-link.fwe-can-swap-icon{direction:rtl}.fwe-legacy-tab-link.fwe-can-swap-icon i.fwe-icon{padding-left:8px;padding-right:0}}.fng-tab-panel-content{padding:48px 24px;background-color:var(--fwe-white);height:100%;overflow:auto}.fng-tab-bar{width:100%}.fng-tab-scroller{overflow-y:hidden}.fng-tab-scroller-scroll-area{position:relative;display:flex;overflow-x:hidden}.fng-tab-scroller-scroll-area::-webkit-scrollbar{display:none}.fng-tab-scroller-scroll-area--scroll{overflow-x:scroll}.fng-tab-scroller-scroll-content{position:relative;display:flex;flex:1 0 auto;transform:none;will-change:transform;padding:0 17px 0 16px}.fng-tab-scroller-scroll-content--with-divider .fng-tab-scroller-divider-line{display:block}.fng-tab-scroller--animating .fng-tab-scroller-scroll-content{transition:.25s transform cubic-bezier(.4,0,.2,1)}.fng-tab-scroller-divider-line{display:none;position:absolute;inset:0;border-bottom:1px solid var(--fwe-control)}.fng-tab-indicator{display:flex;position:absolute;top:0;left:0;justify-content:center;width:100%;height:100%;pointer-events:none;z-index:1}.fng-tab-indicator-content{transform-origin:left;opacity:0}.fng-tab-indicator-content--underline{align-self:flex-end;box-sizing:border-box;width:100%;border-top-style:solid}.fng-tab-indicator .fng-tab-indicator-content{transition:.25s transform cubic-bezier(.4,0,.2,1)}.fng-tab-indicator .fng-tab-indicator-content--underline{border-top:4px solid var(--fwe-caerul)}.fng-tab-indicator--active .fng-tab-indicator-content{opacity:1}.fng-tab{position:relative;display:flex;flex:1 0 auto;justify-content:center;padding:0;margin:0;border:none;outline:none;background:none;text-align:center;white-space:nowrap;cursor:pointer;-webkit-appearance:none;appearance:none;z-index:1;height:36px}.fng-tab:hover .fng-tab-text-label{color:var(--fwe-caerul)}.fng-tab:active .fng-tab-text-label{color:var(--fwe-hero-active)}.fng-tab:not(:last-child){margin-right:32px}.fng-tab::-moz-focus-inner{padding:0;border:0}.fng-tab .fng-tab-text-label{color:var(--fwe-text)}.fng-tab--active .fng-tab-text-label{color:var(--fwe-caerul)}.fng-tab--disabled .fng-tab-text-label{color:var(--fwe-text-disabled)}.fng-tab-content{position:relative;display:flex;align-items:flex-start;justify-content:center;height:inherit;pointer-events:none}.fng-tab-text-label{display:inline-block;z-index:2}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab{flex:none}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab:not(:last-child){margin-right:64px}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab-scroller-scroll-content{padding:0 32px}.fng-tab-scroller-scroll-area:not(.fng-tab-scroller-scroll-area--compact) .fng-tab-scroller-divider-line{padding-right:64px}.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll{overflow-x:hidden}@media (hover: none){.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll{overflow-x:auto}@-moz-document url-prefix(){.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll{scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) transparent}}}@media (hover: none) and (pointer: fine){.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll::-webkit-scrollbar{width:14px}.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll::-webkit-scrollbar-track{background:transparent}.fng-tab-scroller-scroll-area.fng-tab-scroller-scroll-area--scroll::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:8px}}\n"] }]
2518
2516
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: Document, decorators: [{
@@ -2753,10 +2751,10 @@ class FngOverlayOutletDirective {
2753
2751
  }
2754
2752
  return ALL_POSITIONS.map(p => ({ ...p }));
2755
2753
  }
2756
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngOverlayOutletDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
2757
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.13", type: FngOverlayOutletDirective, isStandalone: true, selector: "[fngOverlayOutlet]", inputs: { content: ["fngOverlayOutlet", "content"], fngOverlayContext: "fngOverlayContext", fngOverlayPanelClass: "fngOverlayPanelClass", fngOverlayHasBackdrop: "fngOverlayHasBackdrop", fngOverlayBackdropClass: "fngOverlayBackdropClass", fngOverlayCloseOnBackdropClick: "fngOverlayCloseOnBackdropClick", fngOverlayCloseOnEscape: "fngOverlayCloseOnEscape", fngOverlayOffsetX: "fngOverlayOffsetX", fngOverlayOffsetY: "fngOverlayOffsetY", fngOverlayPositions: "fngOverlayPositions", fngOverlayOrigin: "fngOverlayOrigin" }, outputs: { fngOverlayClosed: "fngOverlayClosed" }, host: { listeners: { "click": "_onHostClick($event)" }, properties: { "class.fwe-cursor-pointer": "this.cssClass" } }, ngImport: i0 }); }
2754
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngOverlayOutletDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
2755
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: FngOverlayOutletDirective, isStandalone: true, selector: "[fngOverlayOutlet]", inputs: { content: ["fngOverlayOutlet", "content"], fngOverlayContext: "fngOverlayContext", fngOverlayPanelClass: "fngOverlayPanelClass", fngOverlayHasBackdrop: "fngOverlayHasBackdrop", fngOverlayBackdropClass: "fngOverlayBackdropClass", fngOverlayCloseOnBackdropClick: "fngOverlayCloseOnBackdropClick", fngOverlayCloseOnEscape: "fngOverlayCloseOnEscape", fngOverlayOffsetX: "fngOverlayOffsetX", fngOverlayOffsetY: "fngOverlayOffsetY", fngOverlayPositions: "fngOverlayPositions", fngOverlayOrigin: "fngOverlayOrigin" }, outputs: { fngOverlayClosed: "fngOverlayClosed" }, host: { listeners: { "click": "_onHostClick($event)" }, properties: { "class.fwe-cursor-pointer": "this.cssClass" } }, ngImport: i0 }); }
2758
2756
  }
2759
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngOverlayOutletDirective, decorators: [{
2757
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngOverlayOutletDirective, decorators: [{
2760
2758
  type: Directive,
2761
2759
  args: [{
2762
2760
  selector: '[fngOverlayOutlet]',
@@ -2796,17 +2794,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
2796
2794
  }] } });
2797
2795
 
2798
2796
  class FngOverlayContentComponent {
2799
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngOverlayContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2800
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngOverlayContentComponent, isStandalone: true, selector: "fng-overlay-content", ngImport: i0, template: "<div class=\"fwe-popover-container\">\r\n <div class=\"fwe-triangle\"></div>\r\n <div class=\"fwe-popover\">\r\n <div class=\"fwe-popover-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [""] }); }
2797
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngOverlayContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2798
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngOverlayContentComponent, isStandalone: true, selector: "fng-overlay-content", ngImport: i0, template: "<div class=\"fwe-popover-container\">\r\n <div class=\"fwe-triangle\"></div>\r\n <div class=\"fwe-popover\">\r\n <div class=\"fwe-popover-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [""] }); }
2801
2799
  }
2802
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngOverlayContentComponent, decorators: [{
2800
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngOverlayContentComponent, decorators: [{
2803
2801
  type: Component,
2804
2802
  args: [{ selector: 'fng-overlay-content', imports: [], template: "<div class=\"fwe-popover-container\">\r\n <div class=\"fwe-triangle\"></div>\r\n <div class=\"fwe-popover\">\r\n <div class=\"fwe-popover-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n</div>\r\n" }]
2805
2803
  }] });
2806
2804
 
2807
2805
  class FestoAngularComponentsModule {
2808
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2809
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularComponentsModule, imports: [FngClickOutsideDirective,
2806
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2807
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularComponentsModule, imports: [FngClickOutsideDirective,
2810
2808
  FngPaginationComponent,
2811
2809
  FngMobileFlyoutPageComponent,
2812
2810
  FngMobileFlyoutItemComponent,
@@ -2883,7 +2881,7 @@ class FestoAngularComponentsModule {
2883
2881
  FngBottomSheetComponent,
2884
2882
  FngOverlayOutletDirective,
2885
2883
  FngOverlayContentComponent] }); }
2886
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularComponentsModule, imports: [FngMobileFlyoutItemComponent,
2884
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularComponentsModule, imports: [FngMobileFlyoutItemComponent,
2887
2885
  FngChipComponent,
2888
2886
  FngTabsComponent,
2889
2887
  FngBreadcrumbComponent,
@@ -2892,7 +2890,7 @@ class FestoAngularComponentsModule {
2892
2890
  FngPopoverComponent,
2893
2891
  FngPopoverMenuComponent] }); }
2894
2892
  }
2895
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularComponentsModule, decorators: [{
2893
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularComponentsModule, decorators: [{
2896
2894
  type: NgModule,
2897
2895
  args: [{
2898
2896
  imports: [
@@ -2981,11 +2979,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
2981
2979
  }] });
2982
2980
 
2983
2981
  class FestoAngularSnackbarModule {
2984
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularSnackbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2985
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularSnackbarModule, imports: [FngSnackbarComponent, FngSnackbarContainerDirective, FngSnackbarContainerComponent], exports: [FngSnackbarContainerComponent, FngSnackbarContainerDirective, FngSnackbarContainerComponent] }); }
2986
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularSnackbarModule, imports: [FngSnackbarComponent] }); }
2982
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularSnackbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2983
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularSnackbarModule, imports: [FngSnackbarComponent, FngSnackbarContainerDirective, FngSnackbarContainerComponent], exports: [FngSnackbarContainerComponent, FngSnackbarContainerDirective, FngSnackbarContainerComponent] }); }
2984
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularSnackbarModule, imports: [FngSnackbarComponent] }); }
2987
2985
  }
2988
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularSnackbarModule, decorators: [{
2986
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularSnackbarModule, decorators: [{
2989
2987
  type: NgModule,
2990
2988
  args: [{
2991
2989
  imports: [FngSnackbarComponent, FngSnackbarContainerDirective, FngSnackbarContainerComponent],
@@ -3023,10 +3021,10 @@ class FngAlertComponent {
3023
3021
  onCancel() {
3024
3022
  this.cancel.emit();
3025
3023
  }
3026
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3027
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngAlertComponent, isStandalone: true, selector: "fng-alert", inputs: { data: "data" }, outputs: { close: "close", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, viewQueries: [{ propertyName: "closeBtn", first: true, predicate: ["closeBtn"], descendants: true }], ngImport: i0, template: "<div\n class=\"fwe-modal\"\n [ngClass]=\"{\r\n 'fwe-modal--with-indicator-bar': data.strong === true,\r\n 'fwe-modal--warning': data.alertType === 'warning',\r\n 'fwe-modal--error': data.alertType === 'error',\r\n 'fwe-modal--info': data.alertType === 'info'\r\n }\"\r\n >\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (data.subtitle) {\n <h2 class=\"fwe-modal-h2\">\n {{ data.subtitle }}\n </h2>\n }\n <h1 class=\"fwe-modal-h1\">\n {{ data.title }}\n </h1>\n </div>\n <div class=\"fwe-modal-body\" [innerHTML]=\"data.body | fngSafeHtml\"></div>\n @if (data.cancel || data.ok) {\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n @if (data.cancel) {\n <button\n type=\"button\"\n aria-label=\"Cancel\"\n class=\"fwe-btn fwe-btn-lg\"\n [class.fwe-btn-link]=\"data.strong\"\n (click)=\"onCancel()\"\n >\n {{ data.cancel }}\n </button>\n }\n @if (data.ok) {\n <button type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-lg\" [class.fwe-btn-hero]=\"!data.strong\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n }\n </div>\n </div>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: FngSafeHtmlPipe, name: "fngSafeHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
3024
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3025
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngAlertComponent, isStandalone: true, selector: "fng-alert", inputs: { data: "data" }, outputs: { close: "close", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, viewQueries: [{ propertyName: "closeBtn", first: true, predicate: ["closeBtn"], descendants: true }], ngImport: i0, template: "<div\n class=\"fwe-modal\"\n [ngClass]=\"{\r\n 'fwe-modal--with-indicator-bar': data.strong === true,\r\n 'fwe-modal--warning': data.alertType === 'warning',\r\n 'fwe-modal--error': data.alertType === 'error',\r\n 'fwe-modal--info': data.alertType === 'info'\r\n }\"\r\n >\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (data.subtitle) {\n <h2 class=\"fwe-modal-h2\">\n {{ data.subtitle }}\n </h2>\n }\n <h1 class=\"fwe-modal-h1\">\n {{ data.title }}\n </h1>\n </div>\n <div class=\"fwe-modal-body\" [innerHTML]=\"data.body | fngSafeHtml\"></div>\n @if (data.cancel || data.ok) {\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n @if (data.cancel) {\n <button\n type=\"button\"\n aria-label=\"Cancel\"\n class=\"fwe-btn fwe-btn-lg\"\n [class.fwe-btn-link]=\"data.strong\"\n (click)=\"onCancel()\"\n >\n {{ data.cancel }}\n </button>\n }\n @if (data.ok) {\n <button type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-lg\" [class.fwe-btn-hero]=\"!data.strong\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n }\n </div>\n </div>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: FngSafeHtmlPipe, name: "fngSafeHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
3028
3026
  }
3029
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngAlertComponent, decorators: [{
3027
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngAlertComponent, decorators: [{
3030
3028
  type: Component,
3031
3029
  args: [{ imports: [CommonModule, FngSafeHtmlPipe], selector: 'fng-alert', encapsulation: ViewEncapsulation.None, template: "<div\n class=\"fwe-modal\"\n [ngClass]=\"{\r\n 'fwe-modal--with-indicator-bar': data.strong === true,\r\n 'fwe-modal--warning': data.alertType === 'warning',\r\n 'fwe-modal--error': data.alertType === 'error',\r\n 'fwe-modal--info': data.alertType === 'info'\r\n }\"\r\n >\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (data.subtitle) {\n <h2 class=\"fwe-modal-h2\">\n {{ data.subtitle }}\n </h2>\n }\n <h1 class=\"fwe-modal-h1\">\n {{ data.title }}\n </h1>\n </div>\n <div class=\"fwe-modal-body\" [innerHTML]=\"data.body | fngSafeHtml\"></div>\n @if (data.cancel || data.ok) {\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n @if (data.cancel) {\n <button\n type=\"button\"\n aria-label=\"Cancel\"\n class=\"fwe-btn fwe-btn-lg\"\n [class.fwe-btn-link]=\"data.strong\"\n (click)=\"onCancel()\"\n >\n {{ data.cancel }}\n </button>\n }\n @if (data.ok) {\n <button type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-lg\" [class.fwe-btn-hero]=\"!data.strong\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n }\n </div>\n </div>\n }\n</div>\n" }]
3032
3030
  }], propDecorators: { data: [{
@@ -3074,10 +3072,10 @@ class FngConfirmComponent {
3074
3072
  onCancel() {
3075
3073
  this.cancel.emit();
3076
3074
  }
3077
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngConfirmComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3078
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngConfirmComponent, isStandalone: true, selector: "fng-confirm", inputs: { data: "data" }, outputs: { close: "close", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, viewQueries: [{ propertyName: "closeBtn", first: true, predicate: ["closeBtn"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-modal\" [ngClass]=\"{ 'fwe-modal--large': data.large }\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (data.subtitle) {\n <h2 class=\"fwe-modal-h2\">{{ data.subtitle }}</h2>\n }\n <h1 class=\"fwe-modal-h1\">{{ data.title }}</h1>\n </div>\n <div class=\"fwe-modal-body\" [innerHTML]=\"data.body | fngSafeHtml\"></div>\n @if (data.cancel || data.ok) {\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n @if (data.cancel) {\n <button type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data.cancel }}\n </button>\n }\n @if (data.ok) {\n <button type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-lg fwe-btn-hero\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n }\n </div>\n </div>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: FngSafeHtmlPipe, name: "fngSafeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
3075
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngConfirmComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3076
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngConfirmComponent, isStandalone: true, selector: "fng-confirm", inputs: { data: "data" }, outputs: { close: "close", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, viewQueries: [{ propertyName: "closeBtn", first: true, predicate: ["closeBtn"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-modal\" [ngClass]=\"{ 'fwe-modal--large': data.large }\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (data.subtitle) {\n <h2 class=\"fwe-modal-h2\">{{ data.subtitle }}</h2>\n }\n <h1 class=\"fwe-modal-h1\">{{ data.title }}</h1>\n </div>\n <div class=\"fwe-modal-body\" [innerHTML]=\"data.body | fngSafeHtml\"></div>\n @if (data.cancel || data.ok) {\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n @if (data.cancel) {\n <button type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data.cancel }}\n </button>\n }\n @if (data.ok) {\n <button type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-lg fwe-btn-hero\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n }\n </div>\n </div>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: FngSafeHtmlPipe, name: "fngSafeHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
3079
3077
  }
3080
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngConfirmComponent, decorators: [{
3078
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngConfirmComponent, decorators: [{
3081
3079
  type: Component,
3082
3080
  args: [{ imports: [CommonModule, FngSafeHtmlPipe], selector: 'fng-confirm', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-modal\" [ngClass]=\"{ 'fwe-modal--large': data.large }\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (data.subtitle) {\n <h2 class=\"fwe-modal-h2\">{{ data.subtitle }}</h2>\n }\n <h1 class=\"fwe-modal-h1\">{{ data.title }}</h1>\n </div>\n <div class=\"fwe-modal-body\" [innerHTML]=\"data.body | fngSafeHtml\"></div>\n @if (data.cancel || data.ok) {\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n @if (data.cancel) {\n <button type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data.cancel }}\n </button>\n }\n @if (data.ok) {\n <button type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-lg fwe-btn-hero\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n }\n </div>\n </div>\n }\n</div>\n" }]
3083
3081
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { data: [{
@@ -3246,8 +3244,8 @@ class FngTextInputComponent {
3246
3244
  setDisabledState(isDisabled) {
3247
3245
  this.disabled = isDisabled;
3248
3246
  }
3249
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTextInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3250
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngTextInputComponent, isStandalone: true, selector: "fng-text-input", inputs: { label: "label", type: "type", readonly: "readonly", step: "step", min: "min", max: "max", tabindex: "tabindex", placeholder: "placeholder", name: "name", disabled: "disabled", value: "value", required: "required", error: "error", hint: "hint" }, providers: [
3247
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTextInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3248
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngTextInputComponent, isStandalone: true, selector: "fng-text-input", inputs: { label: "label", type: "type", readonly: "readonly", step: "step", min: "min", max: "max", tabindex: "tabindex", placeholder: "placeholder", name: "name", disabled: "disabled", value: "value", required: "required", error: "error", hint: "hint" }, providers: [
3251
3249
  {
3252
3250
  provide: NG_VALUE_ACCESSOR,
3253
3251
  useExisting: forwardRef(() => FngTextInputComponent),
@@ -3255,7 +3253,7 @@ class FngTextInputComponent {
3255
3253
  }
3256
3254
  ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<label class=\"fwe-input-text\" [class.fwe-no-pointer-events]=\"readonly === true\">\n <input\n #inputElement\n [disabled]=\"disabled\"\n [required]=\"required === true || false\"\n [attr.readonly]=\"readonly === true || null\"\n [attr.placeholder]=\"placeholder || null\"\n [attr.type]=\"type\"\n [attr.step]=\"step\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.name]=\"name || null\"\n [attr.tabindex]=\"tabindex\"\n [class.fng-has-value]=\"value != null && value !== ''\"\n autocomplete=\"off\"\n (focus)=\"onFocus()\"\n [(ngModel)]=\"value\"\n (blur)=\"onBlur()\"\n />\n <span class=\"fwe-input-text-label\">{{ label }}</span>\n @if (hint) {\n <span class=\"fwe-input-text-info\">{{ hint }}</span>\n } @else {\n <span class=\"fwe-input-text-info fng-projected\"><ng-content select=\".fng-hint\"></ng-content></span>\n }\n @if (error) {\n <span class=\"fwe-input-text-invalid\">{{ error }}</span>\n } @else {\n <span class=\"fwe-input-text-invalid fng-projected\"><ng-content select=\".fng-error\"></ng-content></span>\n }\n\n\n </label>\n", styles: ["fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local],fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]{border-bottom:1px solid var(--fwe-red)!important;box-shadow:none;outline:none}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:focus,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:focus{border-bottom:1px solid var(--fwe-red)!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled{border-bottom:1px solid var(--fwe-control-disabled)!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=text]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=password]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=date]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text input[type=number]:disabled~.fwe-input-text-info{color:var(--fwe-text-disabled)}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text .fwe-input-text-info{display:none!important}fng-text-input:not(.ng-pristine).ng-invalid label.fwe-input-text .fwe-input-text-invalid{display:block!important}fng-text-input.ng-valid label.fwe-input-text input[type=text]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=password]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=date]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=time]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=datetime-local]:hover:not(:disabled),fng-text-input.ng-valid label.fwe-input-text input[type=number]:hover:not(:disabled){border-bottom:1px solid var(--fwe-hero)!important}fng-text-input label.fwe-input-text.fwe-no-pointer-events{pointer-events:none!important}.fwe-input-text-invalid.fng-projected:empty{display:none}.fwe-input-text-info.fng-projected:empty{display:none}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.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: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None }); }
3257
3255
  }
3258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTextInputComponent, decorators: [{
3256
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTextInputComponent, decorators: [{
3259
3257
  type: Component,
3260
3258
  args: [{ imports: [FormsModule], selector: 'fng-text-input', providers: [
3261
3259
  {
@@ -3377,10 +3375,10 @@ class FngPromptComponent {
3377
3375
  }
3378
3376
  }
3379
3377
  }
3380
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPromptComponent, deps: [{ token: i1$4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
3381
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngPromptComponent, isStandalone: true, selector: "fng-prompt", inputs: { data: "data" }, outputs: { close: "close", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, viewQueries: [{ propertyName: "closeBtn", first: true, predicate: ["closeBtn"], descendants: true }, { propertyName: "inputField", first: true, predicate: ["inputField"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-modal\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (data.subtitle) {\n <h2 class=\"fwe-modal-h2\">{{ data.subtitle }}</h2>\n }\n <h1 class=\"fwe-modal-h1\">{{ data.title }}</h1>\n </div>\n <form [formGroup]=\"form\" class=\"fwe-modal-body\">\n <fng-text-input\n #inputField\n type=\"text\"\n [label]=\"data.label\"\n formControlName=\"text\"\n [error]=\"error\"\n [hint]=\"data.hint\"\n [placeholder]=\"data.placeholder\"\n >\n </fng-text-input>\n </form>\n @if (data.cancel || data.ok) {\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n @if (data.cancel) {\n <button type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data.cancel }}\n </button>\n }\n @if (data.ok) {\n <button type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-hero fwe-btn-lg\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n }\n </div>\n </div>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: FngTextInputComponent, selector: "fng-text-input", inputs: ["label", "type", "readonly", "step", "min", "max", "tabindex", "placeholder", "name", "disabled", "value", "required", "error", "hint"] }], encapsulation: i0.ViewEncapsulation.None }); }
3378
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPromptComponent, deps: [{ token: i1$4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
3379
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngPromptComponent, isStandalone: true, selector: "fng-prompt", inputs: { data: "data" }, outputs: { close: "close", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, viewQueries: [{ propertyName: "closeBtn", first: true, predicate: ["closeBtn"], descendants: true }, { propertyName: "inputField", first: true, predicate: ["inputField"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-modal\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (data.subtitle) {\n <h2 class=\"fwe-modal-h2\">{{ data.subtitle }}</h2>\n }\n <h1 class=\"fwe-modal-h1\">{{ data.title }}</h1>\n </div>\n <form [formGroup]=\"form\" class=\"fwe-modal-body\">\n <fng-text-input\n #inputField\n type=\"text\"\n [label]=\"data.label\"\n formControlName=\"text\"\n [error]=\"error\"\n [hint]=\"data.hint\"\n [placeholder]=\"data.placeholder\"\n >\n </fng-text-input>\n </form>\n @if (data.cancel || data.ok) {\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n @if (data.cancel) {\n <button type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data.cancel }}\n </button>\n }\n @if (data.ok) {\n <button type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-hero fwe-btn-lg\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n }\n </div>\n </div>\n }\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$4.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: FngTextInputComponent, selector: "fng-text-input", inputs: ["label", "type", "readonly", "step", "min", "max", "tabindex", "placeholder", "name", "disabled", "value", "required", "error", "hint"] }], encapsulation: i0.ViewEncapsulation.None }); }
3382
3380
  }
3383
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngPromptComponent, decorators: [{
3381
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngPromptComponent, decorators: [{
3384
3382
  type: Component,
3385
3383
  args: [{ imports: [ReactiveFormsModule, FormsModule, FngTextInputComponent], selector: 'fng-prompt', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-modal\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (data.subtitle) {\n <h2 class=\"fwe-modal-h2\">{{ data.subtitle }}</h2>\n }\n <h1 class=\"fwe-modal-h1\">{{ data.title }}</h1>\n </div>\n <form [formGroup]=\"form\" class=\"fwe-modal-body\">\n <fng-text-input\n #inputField\n type=\"text\"\n [label]=\"data.label\"\n formControlName=\"text\"\n [error]=\"error\"\n [hint]=\"data.hint\"\n [placeholder]=\"data.placeholder\"\n >\n </fng-text-input>\n </form>\n @if (data.cancel || data.ok) {\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n @if (data.cancel) {\n <button type=\"button\" aria-label=\"Cancel\" class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ data.cancel }}\n </button>\n }\n @if (data.ok) {\n <button type=\"button\" aria-label=\"Ok\" class=\"fwe-btn fwe-btn-hero fwe-btn-lg\" (click)=\"onOk()\">\n {{ data.ok }}\n </button>\n }\n </div>\n </div>\n }\n</div>\n" }]
3386
3384
  }], ctorParameters: () => [{ type: i1$4.FormBuilder }], propDecorators: { data: [{
@@ -3465,10 +3463,10 @@ class FngImageGalleryComponent {
3465
3463
  this.isScaled = false;
3466
3464
  }
3467
3465
  }
3468
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngImageGalleryComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3469
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngImageGalleryComponent, isStandalone: true, selector: "fng-image-gallery", inputs: { data: "data" }, outputs: { close: "close", scaleUp: "scaleUp", scaleDown: "scaleDown", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, ngImport: i0, template: "@if (data != null) {\n <div\n class=\"fwe-modal fwe-modal-image-gallery\"\n [class.fwe-modal-image-gallery--with-thumbnails]=\"data.thumbnailImages?.length\"\n [class.fwe-modal-image-gallery--with-container]=\"data.descriptiveContent\"\n >\n <div class=\"fwe-image-gallery-header\">\n @if (data.pagination) {\n <div class=\"fwe-pagination fwe-pagination--on-dark-bg\">\n <button aria-label=\"previous\" type=\"button\" class=\"fwe-navigate-btn-down\" (click)=\"onPrev()\"></button>\n <span class=\"fwe-page-current\">{{ currentIndex }}</span>\n <span class=\"fwe-page-max\">{{ data.images.length }}</span>\n <button aria-label=\"next\" type=\"button\" class=\"fwe-navigate-btn-up\" (click)=\"onNext()\"></button>\n </div>\n }\n @if (data.showScaleButton === true) {\n <button\n aria-label=\"scale up\"\n type=\"button\"\n class=\"fwe-btn fwe-btn-link fwe-ml-auto\"\n (click)=\"onScale()\"\n >\n <i\n class=\"fwe-icon fwe-icon-lg fwe-color-white fwe-modal-image-gallery-scale\"\n [ngClass]=\"{ 'fwe-icon-arrows-scale-down': isScaled === true, 'fwe-icon-arrows-scale-up': isScaled === false }\"\n ></i>\n </button>\n }\n <button\n aria-label=\"close\"\n type=\"button\"\n class=\"fwe-btn fwe-btn-link\"\n (click)=\"onClose()\"\n [ngClass]=\"{ 'fwe-ml-auto': !data.showScaleButton, 'fwe-ml-3': data.showScaleButton }\"\n >\n <i class=\"fwe-icon fwe-icon-2x fwe-color-white fwe-icon-menu-close fwe-modal-image-gallery-close\"></i>\n </button>\n </div>\n @switch (data.descriptiveContent) {\n @case (true) {\n <div class=\"fwe-image-gallery-container\">\n <ng-container *ngTemplateOutlet=\"baseGallery\"></ng-container>\n @if (data.images[currentIndex - 1].content; as imageContent) {\n <div class=\"fwe-image-gallery-content\">\n <h3>{{ imageContent.title }}</h3>\n <div [innerHTML]=\"imageContent.body | fngSafeHtml\"></div>\n </div>\n }\n </div>\n }\n @default {\n <ng-container *ngTemplateOutlet=\"baseGallery\"></ng-container>\n }\n }\n </div>\n}\n\n<ng-template #baseGallery>\n <div class=\"fwe-image-gallery-wrapper\">\n <swiper-container\n keyboard\n space-between=\"0\"\n zoom=\"true\"\n thumbs-swiper=\".fng-image-gallery-thumbs-swiper\"\n (swiperinit)=\"onSwiperInit($any($event))\"\n (swipernavigationnext)=\"onSlideChange($any($event))\"\n (swipernavigationprev)=\"onSlideChange($any($event))\"\n (swiperslidechange)=\"onSlideChange($any($event))\"\n class=\"gallery-swiper fwe-image-gallery\"\n >\n @for (image of data.images; track image) {\n <swiper-slide>\n <div class=\"swiper-zoom-container\">\n <img [alt]=\"image.alt\" [src]=\"image.url\" [class.fwe-object-fit-contain]=\"image.containMode\" [class.fwe-p-m]=\"image.containMode\" />\n </div>\n </swiper-slide>\n }\n </swiper-container>\n @if (data.thumbnailImages?.length) {\n <swiper-container\n slides-per-view=\"auto\"\n free-mode=\"true\"\n threshold=\"20\"\n watch-slides-progress=\"true\"\n class=\"thumbs-swiper fng-image-gallery-thumbs-swiper\"\n >\n @for (thumbnail of data.thumbnailImages; track thumbnail) {\n <swiper-slide class=\"fng-image-gallery-thumbs-swiper-slide\">\n <img\n [alt]=\"thumbnail.alt\"\n [src]=\"thumbnail.url\"\n [class.fwe-object-fit-contain]=\"thumbnail.containMode\"\n [class.fwe-p-xxxs]=\"thumbnail.containMode\"\n />\n </swiper-slide>\n }\n </swiper-container>\n }\n </div>\n </ng-template>\n", styles: [".fwe-modal-image-gallery{position:relative}.fng-image-gallery-thumbs-swiper{margin-top:24px;-webkit-user-select:none;user-select:none;width:100%;height:64px;box-sizing:border-box;margin-left:auto;margin-right:auto}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide{position:relative;background-size:cover;background-position:center;width:88px!important;margin-right:8px;height:64px;opacity:.33;transition:opacity .3s;cursor:pointer}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:last-child{margin-right:0}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:after{position:absolute;content:\"\";height:4px;width:100%;background-color:var(--fwe-hero);bottom:0;opacity:0;transition:opacity .3s}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide img{display:block;object-fit:cover;width:88px;height:56px;background-color:#fff}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide.swiper-slide-thumb-active,.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:hover{opacity:1}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide.swiper-slide-thumb-active:after,.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:hover:after{opacity:1}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide.swiper-slide-thumb-active{cursor:default}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: FngSafeHtmlPipe, name: "fngSafeHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
3466
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngImageGalleryComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3467
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngImageGalleryComponent, isStandalone: true, selector: "fng-image-gallery", inputs: { data: "data" }, outputs: { close: "close", scaleUp: "scaleUp", scaleDown: "scaleDown", cancel: "cancel", ok: "ok" }, host: { listeners: { "window:keyup": "onKeyUp($event)" } }, ngImport: i0, template: "@if (data != null) {\n <div\n class=\"fwe-modal fwe-modal-image-gallery\"\n [class.fwe-modal-image-gallery--with-thumbnails]=\"data.thumbnailImages?.length\"\n [class.fwe-modal-image-gallery--with-container]=\"data.descriptiveContent\"\n >\n <div class=\"fwe-image-gallery-header\">\n @if (data.pagination) {\n <div class=\"fwe-pagination fwe-pagination--on-dark-bg\">\n <button aria-label=\"previous\" type=\"button\" class=\"fwe-navigate-btn-down\" (click)=\"onPrev()\"></button>\n <span class=\"fwe-page-current\">{{ currentIndex }}</span>\n <span class=\"fwe-page-max\">{{ data.images.length }}</span>\n <button aria-label=\"next\" type=\"button\" class=\"fwe-navigate-btn-up\" (click)=\"onNext()\"></button>\n </div>\n }\n @if (data.showScaleButton === true) {\n <button\n aria-label=\"scale up\"\n type=\"button\"\n class=\"fwe-btn fwe-btn-link fwe-ml-auto\"\n (click)=\"onScale()\"\n >\n <i\n class=\"fwe-icon fwe-icon-lg fwe-color-white fwe-modal-image-gallery-scale\"\n [ngClass]=\"{ 'fwe-icon-arrows-scale-down': isScaled === true, 'fwe-icon-arrows-scale-up': isScaled === false }\"\n ></i>\n </button>\n }\n <button\n aria-label=\"close\"\n type=\"button\"\n class=\"fwe-btn fwe-btn-link\"\n (click)=\"onClose()\"\n [ngClass]=\"{ 'fwe-ml-auto': !data.showScaleButton, 'fwe-ml-3': data.showScaleButton }\"\n >\n <i class=\"fwe-icon fwe-icon-2x fwe-color-white fwe-icon-menu-close fwe-modal-image-gallery-close\"></i>\n </button>\n </div>\n @switch (data.descriptiveContent) {\n @case (true) {\n <div class=\"fwe-image-gallery-container\">\n <ng-container *ngTemplateOutlet=\"baseGallery\"></ng-container>\n @if (data.images[currentIndex - 1].content; as imageContent) {\n <div class=\"fwe-image-gallery-content\">\n <h3>{{ imageContent.title }}</h3>\n <div [innerHTML]=\"imageContent.body | fngSafeHtml\"></div>\n </div>\n }\n </div>\n }\n @default {\n <ng-container *ngTemplateOutlet=\"baseGallery\"></ng-container>\n }\n }\n </div>\n}\n\n<ng-template #baseGallery>\n <div class=\"fwe-image-gallery-wrapper\">\n <swiper-container\n keyboard\n space-between=\"0\"\n zoom=\"true\"\n thumbs-swiper=\".fng-image-gallery-thumbs-swiper\"\n (swiperinit)=\"onSwiperInit($any($event))\"\n (swipernavigationnext)=\"onSlideChange($any($event))\"\n (swipernavigationprev)=\"onSlideChange($any($event))\"\n (swiperslidechange)=\"onSlideChange($any($event))\"\n class=\"gallery-swiper fwe-image-gallery\"\n >\n @for (image of data.images; track image) {\n <swiper-slide>\n <div class=\"swiper-zoom-container\">\n <img [alt]=\"image.alt\" [src]=\"image.url\" [class.fwe-object-fit-contain]=\"image.containMode\" [class.fwe-p-m]=\"image.containMode\" />\n </div>\n </swiper-slide>\n }\n </swiper-container>\n @if (data.thumbnailImages?.length) {\n <swiper-container\n slides-per-view=\"auto\"\n free-mode=\"true\"\n threshold=\"20\"\n watch-slides-progress=\"true\"\n class=\"thumbs-swiper fng-image-gallery-thumbs-swiper\"\n >\n @for (thumbnail of data.thumbnailImages; track thumbnail) {\n <swiper-slide class=\"fng-image-gallery-thumbs-swiper-slide\">\n <img\n [alt]=\"thumbnail.alt\"\n [src]=\"thumbnail.url\"\n [class.fwe-object-fit-contain]=\"thumbnail.containMode\"\n [class.fwe-p-xxxs]=\"thumbnail.containMode\"\n />\n </swiper-slide>\n }\n </swiper-container>\n }\n </div>\n </ng-template>\n", styles: [".fwe-modal-image-gallery{position:relative}.fng-image-gallery-thumbs-swiper{margin-top:24px;-webkit-user-select:none;user-select:none;width:100%;height:64px;box-sizing:border-box;margin-left:auto;margin-right:auto}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide{position:relative;background-size:cover;background-position:center;width:88px!important;margin-right:8px;height:64px;opacity:.33;transition:opacity .3s;cursor:pointer}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:last-child{margin-right:0}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:after{position:absolute;content:\"\";height:4px;width:100%;background-color:var(--fwe-hero);bottom:0;opacity:0;transition:opacity .3s}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide img{display:block;object-fit:cover;width:88px;height:56px;background-color:#fff}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide.swiper-slide-thumb-active,.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:hover{opacity:1}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide.swiper-slide-thumb-active:after,.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:hover:after{opacity:1}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide.swiper-slide-thumb-active{cursor:default}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: FngSafeHtmlPipe, name: "fngSafeHtml" }], encapsulation: i0.ViewEncapsulation.None }); }
3470
3468
  }
3471
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngImageGalleryComponent, decorators: [{
3469
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngImageGalleryComponent, decorators: [{
3472
3470
  type: Component,
3473
3471
  args: [{ imports: [CommonModule, FngSafeHtmlPipe], selector: 'fng-image-gallery', encapsulation: ViewEncapsulation.None, schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "@if (data != null) {\n <div\n class=\"fwe-modal fwe-modal-image-gallery\"\n [class.fwe-modal-image-gallery--with-thumbnails]=\"data.thumbnailImages?.length\"\n [class.fwe-modal-image-gallery--with-container]=\"data.descriptiveContent\"\n >\n <div class=\"fwe-image-gallery-header\">\n @if (data.pagination) {\n <div class=\"fwe-pagination fwe-pagination--on-dark-bg\">\n <button aria-label=\"previous\" type=\"button\" class=\"fwe-navigate-btn-down\" (click)=\"onPrev()\"></button>\n <span class=\"fwe-page-current\">{{ currentIndex }}</span>\n <span class=\"fwe-page-max\">{{ data.images.length }}</span>\n <button aria-label=\"next\" type=\"button\" class=\"fwe-navigate-btn-up\" (click)=\"onNext()\"></button>\n </div>\n }\n @if (data.showScaleButton === true) {\n <button\n aria-label=\"scale up\"\n type=\"button\"\n class=\"fwe-btn fwe-btn-link fwe-ml-auto\"\n (click)=\"onScale()\"\n >\n <i\n class=\"fwe-icon fwe-icon-lg fwe-color-white fwe-modal-image-gallery-scale\"\n [ngClass]=\"{ 'fwe-icon-arrows-scale-down': isScaled === true, 'fwe-icon-arrows-scale-up': isScaled === false }\"\n ></i>\n </button>\n }\n <button\n aria-label=\"close\"\n type=\"button\"\n class=\"fwe-btn fwe-btn-link\"\n (click)=\"onClose()\"\n [ngClass]=\"{ 'fwe-ml-auto': !data.showScaleButton, 'fwe-ml-3': data.showScaleButton }\"\n >\n <i class=\"fwe-icon fwe-icon-2x fwe-color-white fwe-icon-menu-close fwe-modal-image-gallery-close\"></i>\n </button>\n </div>\n @switch (data.descriptiveContent) {\n @case (true) {\n <div class=\"fwe-image-gallery-container\">\n <ng-container *ngTemplateOutlet=\"baseGallery\"></ng-container>\n @if (data.images[currentIndex - 1].content; as imageContent) {\n <div class=\"fwe-image-gallery-content\">\n <h3>{{ imageContent.title }}</h3>\n <div [innerHTML]=\"imageContent.body | fngSafeHtml\"></div>\n </div>\n }\n </div>\n }\n @default {\n <ng-container *ngTemplateOutlet=\"baseGallery\"></ng-container>\n }\n }\n </div>\n}\n\n<ng-template #baseGallery>\n <div class=\"fwe-image-gallery-wrapper\">\n <swiper-container\n keyboard\n space-between=\"0\"\n zoom=\"true\"\n thumbs-swiper=\".fng-image-gallery-thumbs-swiper\"\n (swiperinit)=\"onSwiperInit($any($event))\"\n (swipernavigationnext)=\"onSlideChange($any($event))\"\n (swipernavigationprev)=\"onSlideChange($any($event))\"\n (swiperslidechange)=\"onSlideChange($any($event))\"\n class=\"gallery-swiper fwe-image-gallery\"\n >\n @for (image of data.images; track image) {\n <swiper-slide>\n <div class=\"swiper-zoom-container\">\n <img [alt]=\"image.alt\" [src]=\"image.url\" [class.fwe-object-fit-contain]=\"image.containMode\" [class.fwe-p-m]=\"image.containMode\" />\n </div>\n </swiper-slide>\n }\n </swiper-container>\n @if (data.thumbnailImages?.length) {\n <swiper-container\n slides-per-view=\"auto\"\n free-mode=\"true\"\n threshold=\"20\"\n watch-slides-progress=\"true\"\n class=\"thumbs-swiper fng-image-gallery-thumbs-swiper\"\n >\n @for (thumbnail of data.thumbnailImages; track thumbnail) {\n <swiper-slide class=\"fng-image-gallery-thumbs-swiper-slide\">\n <img\n [alt]=\"thumbnail.alt\"\n [src]=\"thumbnail.url\"\n [class.fwe-object-fit-contain]=\"thumbnail.containMode\"\n [class.fwe-p-xxxs]=\"thumbnail.containMode\"\n />\n </swiper-slide>\n }\n </swiper-container>\n }\n </div>\n </ng-template>\n", styles: [".fwe-modal-image-gallery{position:relative}.fng-image-gallery-thumbs-swiper{margin-top:24px;-webkit-user-select:none;user-select:none;width:100%;height:64px;box-sizing:border-box;margin-left:auto;margin-right:auto}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide{position:relative;background-size:cover;background-position:center;width:88px!important;margin-right:8px;height:64px;opacity:.33;transition:opacity .3s;cursor:pointer}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:last-child{margin-right:0}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:after{position:absolute;content:\"\";height:4px;width:100%;background-color:var(--fwe-hero);bottom:0;opacity:0;transition:opacity .3s}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide img{display:block;object-fit:cover;width:88px;height:56px;background-color:#fff}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide.swiper-slide-thumb-active,.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:hover{opacity:1}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide.swiper-slide-thumb-active:after,.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide:hover:after{opacity:1}.fng-image-gallery-thumbs-swiper .fng-image-gallery-thumbs-swiper-slide.swiper-slide-thumb-active{cursor:default}\n"] }]
3474
3472
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { data: [{
@@ -3586,10 +3584,10 @@ class FngModalService {
3586
3584
  resolve();
3587
3585
  });
3588
3586
  }
3589
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngModalService, deps: [{ token: i1$2.Overlay }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
3590
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngModalService, providedIn: 'root' }); }
3587
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngModalService, deps: [{ token: i1$2.Overlay }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
3588
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngModalService, providedIn: 'root' }); }
3591
3589
  }
3592
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngModalService, decorators: [{
3590
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngModalService, decorators: [{
3593
3591
  type: Injectable,
3594
3592
  args: [{ providedIn: 'root' }]
3595
3593
  }], ctorParameters: () => [{ type: i1$2.Overlay }, { type: i1.Router }] });
@@ -3648,10 +3646,10 @@ class FngCustomModalComponent {
3648
3646
  onClickInside(event) {
3649
3647
  event.stopPropagation();
3650
3648
  }
3651
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngCustomModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3652
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngCustomModalComponent, isStandalone: true, selector: "fng-custom-modal", inputs: { closeOnBackdrop: "closeOnBackdrop", large: "large", visible: "visible", header: "header", subheader: "subheader", acknowledgeLabel: "acknowledgeLabel", cancelLabel: "cancelLabel" }, outputs: { visibleChange: "visibleChange", acknowledge: "acknowledge", cancel: "cancel", close: "close" }, ngImport: i0, template: "@if (visible) {\n <div class=\"fwe-modal-backdrop\" (mousedown)=\"onClickOutside()\">\n <div class=\"fwe-modal\" [class.fwe-modal--large]=\"large\" (mousedown)=\"onClickInside($event)\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (subheader?.length) {\n <h2 class=\"fwe-modal-h2\">{{ subheader }}</h2>\n }\n <h1 class=\"fwe-modal-h1\">{{ header }}</h1>\n </div>\n <div class=\"fwe-modal-body\">\n <ng-content></ng-content>\n </div>\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n <button class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ cancelLabel }}\n </button>\n <button class=\"fwe-btn fwe-btn-hero fwe-btn-lg\" (click)=\"onAcknowledge()\">\n {{ acknowledgeLabel }}\n </button>\n </div>\n </div>\n </div>\n </div>\n}\n", encapsulation: i0.ViewEncapsulation.None }); }
3649
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngCustomModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3650
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngCustomModalComponent, isStandalone: true, selector: "fng-custom-modal", inputs: { closeOnBackdrop: "closeOnBackdrop", large: "large", visible: "visible", header: "header", subheader: "subheader", acknowledgeLabel: "acknowledgeLabel", cancelLabel: "cancelLabel" }, outputs: { visibleChange: "visibleChange", acknowledge: "acknowledge", cancel: "cancel", close: "close" }, ngImport: i0, template: "@if (visible) {\n <div class=\"fwe-modal-backdrop\" (mousedown)=\"onClickOutside()\">\n <div class=\"fwe-modal\" [class.fwe-modal--large]=\"large\" (mousedown)=\"onClickInside($event)\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (subheader?.length) {\n <h2 class=\"fwe-modal-h2\">{{ subheader }}</h2>\n }\n <h1 class=\"fwe-modal-h1\">{{ header }}</h1>\n </div>\n <div class=\"fwe-modal-body\">\n <ng-content></ng-content>\n </div>\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n <button class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ cancelLabel }}\n </button>\n <button class=\"fwe-btn fwe-btn-hero fwe-btn-lg\" (click)=\"onAcknowledge()\">\n {{ acknowledgeLabel }}\n </button>\n </div>\n </div>\n </div>\n </div>\n}\n", encapsulation: i0.ViewEncapsulation.None }); }
3653
3651
  }
3654
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngCustomModalComponent, decorators: [{
3652
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngCustomModalComponent, decorators: [{
3655
3653
  type: Component,
3656
3654
  args: [{ imports: [], selector: 'fng-custom-modal', encapsulation: ViewEncapsulation.None, template: "@if (visible) {\n <div class=\"fwe-modal-backdrop\" (mousedown)=\"onClickOutside()\">\n <div class=\"fwe-modal\" [class.fwe-modal--large]=\"large\" (mousedown)=\"onClickInside($event)\">\n <button type=\"button\" aria-label=\"Close\" #closeBtn class=\"fwe-modal-close-btn\" (click)=\"onClose()\">\n <span class=\"fwe-sr-only\">Close</span>\n </button>\n <div class=\"fwe-modal-header\">\n @if (subheader?.length) {\n <h2 class=\"fwe-modal-h2\">{{ subheader }}</h2>\n }\n <h1 class=\"fwe-modal-h1\">{{ header }}</h1>\n </div>\n <div class=\"fwe-modal-body\">\n <ng-content></ng-content>\n </div>\n <div class=\"fwe-modal-footer\">\n <div class=\"fwe-modal-buttons\">\n <button class=\"fwe-btn fwe-btn-lg\" (click)=\"onCancel()\">\n {{ cancelLabel }}\n </button>\n <button class=\"fwe-btn fwe-btn-hero fwe-btn-lg\" (click)=\"onAcknowledge()\">\n {{ acknowledgeLabel }}\n </button>\n </div>\n </div>\n </div>\n </div>\n}\n" }]
3657
3655
  }], propDecorators: { closeOnBackdrop: [{
@@ -3679,11 +3677,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
3679
3677
  }] } });
3680
3678
 
3681
3679
  class FestoAngularModalsModule {
3682
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularModalsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3683
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent], exports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent] }); }
3684
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngImageGalleryComponent] }); }
3680
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularModalsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3681
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent], exports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent] }); }
3682
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngImageGalleryComponent] }); }
3685
3683
  }
3686
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularModalsModule, decorators: [{
3684
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularModalsModule, decorators: [{
3687
3685
  type: NgModule,
3688
3686
  args: [{
3689
3687
  imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent],
@@ -3796,8 +3794,8 @@ class FngCheckboxComponent {
3796
3794
  this.change.emit(this.checked);
3797
3795
  }
3798
3796
  }
3799
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngCheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3800
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngCheckboxComponent, isStandalone: true, selector: "fng-checkbox", inputs: { name: "name", large: "large", valid: "valid", labelPosition: "labelPosition", id: "id", checked: "checked", disabled: "disabled", indeterminate: "indeterminate", value: "value", required: "required" }, outputs: { indeterminateChange: "indeterminateChange", change: "change" }, providers: [
3797
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngCheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3798
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngCheckboxComponent, isStandalone: true, selector: "fng-checkbox", inputs: { name: "name", large: "large", valid: "valid", labelPosition: "labelPosition", id: "id", checked: "checked", disabled: "disabled", indeterminate: "indeterminate", value: "value", required: "required" }, outputs: { indeterminateChange: "indeterminateChange", change: "change" }, providers: [
3801
3799
  {
3802
3800
  provide: NG_VALUE_ACCESSOR,
3803
3801
  useExisting: forwardRef(() => FngCheckboxComponent),
@@ -3805,7 +3803,7 @@ class FngCheckboxComponent {
3805
3803
  }
3806
3804
  ], ngImport: i0, template: "<label\n class=\"fwe-checkbox-container\"\n [class.fng-checkbox-large]=\"large\"\n [class.fng-checkbox-invalid]=\"!valid || required\"\n [class.fwe-disabled]=\"disabled\"\n [class.fng-checkbox-indeterminate]=\"indeterminate\"\n [class.fwe-checked]=\"checked\"\n [attr.for]=\"inputId\"\n [ngClass]=\"{\r\n 'fwe-label-below': labelPosition == 'below',\r\n 'fwe-label-before': labelPosition == 'before'\r\n }\"\r\n >\n <input\n type=\"checkbox\"\n [id]=\"inputId\"\n [required]=\"required\"\n [disabled]=\"disabled\"\n [attr.value]=\"value\"\n [attr.name]=\"name\"\n [checked]=\"checked\"\n (change)=\"onInteractionEvent($event)\"\n (click)=\"onInputClick($event)\"\n />\n <div class=\"fwe-checkbox-indicator-container\">\n <div class=\"fwe-checkbox-indicator-background\"></div>\n @if (!indeterminate && checked) {\n @if (large) {\n <svg width=\"24px\" height=\"24px\">\n <path d=\"M17.5 7L10 14.5 7.501 12l-1.5 1.501L10 17.5l9-9z\" fill=\"#fff\" />\n </svg>\n }\n @if (!large) {\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\">\n <path d=\"M6 12L3 9l1.25-1.25L6 9.5l5.75-5.75L13 5l-7 7z\" fill=\"#fff\" />\n </svg>\n }\n }\n @if (indeterminate && !checked) {\n <div class=\"fwe-indeterminate-indicator\"></div>\n }\n </div>\n <div class=\"fwe-checkbox-title\">\n <ng-content></ng-content>\n </div>\n </label>\n", styles: [".fwe-checkbox-container{font-family:var(--fwe-font-family-sans-serif);-webkit-user-select:none;user-select:none;cursor:pointer;display:flex;flex-direction:row;align-items:flex-start}.fwe-checkbox-container.fwe-label-below{align-items:center;flex-direction:column}.fwe-checkbox-container.fwe-label-below .fwe-checkbox-title{text-align:center;margin:8px 0 0}.fwe-checkbox-container.fwe-label-before{flex-direction:row-reverse;justify-content:flex-end}.fwe-checkbox-container.fwe-label-before .fwe-checkbox-title{margin:0 8px 0 0}.fwe-checkbox-container .fwe-checkbox-indicator-container{margin-top:4px;position:relative}.fwe-checkbox-container input{opacity:0;cursor:pointer;height:0;width:0}.fwe-checkbox-container .fwe-checkbox-title{margin-left:8px;line-height:24px;color:var(--fwe-text);-webkit-user-select:none;user-select:none}.fwe-checkbox-container .fwe-checkbox-indicator-background{box-sizing:border-box;background:var(--fwe-white);border:1px solid var(--fwe-text-light);border-radius:2px;height:16px;width:16px;transition:border-width .2s ease-out}.fwe-checkbox-container .fwe-indeterminate-indicator{position:absolute;height:2px;width:10px;top:7px;left:3px;background:#fff}.fwe-checkbox-container svg{display:block;position:absolute;top:0;left:0}.fwe-checkbox-container.fng-checkbox-large .fwe-checkbox-indicator-container{margin-top:0}.fwe-checkbox-container.fng-checkbox-large .fwe-checkbox-indicator-background{height:24px;width:24px;border-radius:4px}.fwe-checkbox-container.fng-checkbox-large .fwe-indeterminate-indicator{top:11px;width:14px;left:5px}.fwe-checkbox-container.fng-checkbox-large.fwe-checked .fwe-checkbox-indicator-background,.fwe-checkbox-container.fng-checkbox-large.fng-checkbox-indeterminate .fwe-checkbox-indicator-background{border:12px solid var(--fwe-hero)}.fwe-checkbox-container:hover .fwe-checkbox-indicator-background{background-color:var(--fwe-control)}.fwe-checkbox-container:active .fwe-checkbox-indicator-background{background-color:var(--fwe-control-hover)}.fwe-checkbox-container.fwe-checked .fwe-checkbox-indicator-background,.fwe-checkbox-container.fng-checkbox-indeterminate .fwe-checkbox-indicator-background{border:8px solid var(--fwe-hero)}.fwe-checkbox-container.fwe-checked:hover .fwe-checkbox-indicator-background,.fwe-checkbox-container.fng-checkbox-indeterminate:hover .fwe-checkbox-indicator-background{border-color:var(--fwe-hero-hover)}.fwe-checkbox-container.fwe-checked:active .fwe-checkbox-indicator-background,.fwe-checkbox-container.fng-checkbox-indeterminate:active .fwe-checkbox-indicator-background{border-color:var(--fwe-hero-active)}.fwe-checkbox-container.fng-checkbox-invalid .fwe-checkbox-indicator-background{border:1px solid var(--fwe-red);background:var(--fwe-white)}.fwe-checkbox-container.fwe-disabled{cursor:default}.fwe-checkbox-container.fwe-disabled .fwe-checkbox-indicator-background{background-color:var(--fwe-white);border:1px solid var(--fwe-control)}.fwe-checkbox-container.fwe-disabled.fwe-checked .fwe-checkbox-indicator-background,.fwe-checkbox-container.fwe-disabled.fng-checkbox-indeterminate .fwe-checkbox-indicator-background{background-color:var(--fwe-control);border:1px solid var(--fwe-control)}.fwe-checkbox-container.fwe-disabled.fng-checkbox-invalid .fwe-checkbox-indicator-background{background-color:var(--fwe-white);border:1px solid var(--fwe-control)}.fwe-checkbox-container.fwe-disabled .fwe-checkbox-title{color:var(--fwe-text-disabled)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
3807
3805
  }
3808
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngCheckboxComponent, decorators: [{
3806
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngCheckboxComponent, decorators: [{
3809
3807
  type: Component,
3810
3808
  args: [{ imports: [CommonModule], selector: 'fng-checkbox', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
3811
3809
  {
@@ -3904,10 +3902,10 @@ class FngColorIndicatorComponent {
3904
3902
  return this.color;
3905
3903
  }
3906
3904
  }
3907
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngColorIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3908
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngColorIndicatorComponent, isStandalone: true, selector: "fng-color-indicator", inputs: { label: "label", text: "text", color: "color", showPopOver: "showPopOver", disabled: "disabled" }, ngImport: i0, template: "<div class=\"fwe-color-indicator\" (click)=\"isEditorOpen = showPopOver ? !isEditorOpen : false\" [class.fwe-color-indicator--disabled]=\"disabled\">\n <div class=\"fwe-color-label\" [style.opacity]=\"isEditorOpen ? 0 : 1\">\n {{ label }}\n </div>\n <div class=\"fwe-color-container\">\n <div\n class=\"fwe-color-box\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n [style.background]=\"color\"\n [style.border-color]=\"getBorderColor()\"\n >\n @if (!color) {\n <svg\n class=\"fwe-no-color-pattern\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n id=\"canvas1\"\n width=\"18\"\n height=\"18\"\n >\n <defs>\n <pattern id=\"bwsquare2px\" width=\"4\" height=\"4\" patternUnits=\"userSpaceOnUse\">\n <rect x=\"0\" y=\"0\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#ffffff\" />\n <rect x=\"2\" y=\"0\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#e2e5e8\" />\n <rect x=\"0\" y=\"2\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#e2e5e8\" />\n <rect x=\"2\" y=\"2\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#ffffff\" />\n </pattern>\n </defs>\n <rect x=\"0\" y=\"0\" rx=\"0\" ry=\"0\" width=\"18\" height=\"18\" fill=\"url(#bwsquare2px)\" stroke-width=\"0\" />\n </svg>\n }\n </div>\n @if (text) {\n <div class=\"fwe-color-indicator-text\">\n {{ text }}\n </div>\n }\n </div>\n\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"isEditorOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n [cdkConnectedOverlayBackdropClass]=\"'backdrop'\"\n [cdkConnectedOverlayViewportMargin]=\"32\"\n [cdkConnectedOverlayPush]=\"true\"\n (backdropClick)=\"isEditorOpen = false\"\n >\n <div class=\"fwe-popover-container\">\n <div class=\"fwe-triangle\"></div>\n <div class=\"fwe-popover\" #popoverContent>\n <div class=\"fwe-color-label fwe-mb-s\">\n {{ label }}\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n </ng-template>\n</div>\n", styles: [".fwe-color-indicator .fwe-popover-container{position:relative}.fwe-color-indicator .fwe-popover-container .fwe-popover{background-color:var(--fwe-white);padding:8px 16px 16px;font-size:var(--fwe-font-size-md);line-height:1rem;box-shadow:0 1px 4px #3333;border-radius:4px}.fwe-color-indicator .fwe-backdrop{background:transparent}.fwe-color-indicator .fwe-color-label{height:18px;font-size:var(--fwe-font-size-small);font-weight:var(--fwe-font-weight-bold);margin-bottom:4px}.fwe-color-indicator .fwe-color-container{display:flex}.fwe-color-indicator .fwe-color-container .fwe-color-box{height:24px;width:24px;border-radius:4px;border:1px solid var(--fwe-control-border);background:var(--fwe-white)}.fwe-color-indicator .fwe-color-container .fwe-color-box .fwe-no-color-pattern{margin:2px}.fwe-color-indicator .fwe-color-container .fwe-color-indicator-text{margin-left:8px}.fwe-color-indicator--disabled{pointer-events:none}.fwe-color-indicator--disabled .fwe-color-label{color:var(--fwe-text-disabled)}.fwe-color-indicator--disabled .fwe-color-container .fwe-color-box{opacity:.5}.fwe-color-indicator--disabled .fwe-color-container .fwe-color-indicator-text{color:var(--fwe-text-disabled)}\n"], dependencies: [{ kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1$2.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: i1$2.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }], encapsulation: i0.ViewEncapsulation.None }); }
3905
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngColorIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3906
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngColorIndicatorComponent, isStandalone: true, selector: "fng-color-indicator", inputs: { label: "label", text: "text", color: "color", showPopOver: "showPopOver", disabled: "disabled" }, ngImport: i0, template: "<div class=\"fwe-color-indicator\" (click)=\"isEditorOpen = showPopOver ? !isEditorOpen : false\" [class.fwe-color-indicator--disabled]=\"disabled\">\n <div class=\"fwe-color-label\" [style.opacity]=\"isEditorOpen ? 0 : 1\">\n {{ label }}\n </div>\n <div class=\"fwe-color-container\">\n <div\n class=\"fwe-color-box\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n [style.background]=\"color\"\n [style.border-color]=\"getBorderColor()\"\n >\n @if (!color) {\n <svg\n class=\"fwe-no-color-pattern\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n id=\"canvas1\"\n width=\"18\"\n height=\"18\"\n >\n <defs>\n <pattern id=\"bwsquare2px\" width=\"4\" height=\"4\" patternUnits=\"userSpaceOnUse\">\n <rect x=\"0\" y=\"0\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#ffffff\" />\n <rect x=\"2\" y=\"0\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#e2e5e8\" />\n <rect x=\"0\" y=\"2\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#e2e5e8\" />\n <rect x=\"2\" y=\"2\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#ffffff\" />\n </pattern>\n </defs>\n <rect x=\"0\" y=\"0\" rx=\"0\" ry=\"0\" width=\"18\" height=\"18\" fill=\"url(#bwsquare2px)\" stroke-width=\"0\" />\n </svg>\n }\n </div>\n @if (text) {\n <div class=\"fwe-color-indicator-text\">\n {{ text }}\n </div>\n }\n </div>\n\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"isEditorOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n [cdkConnectedOverlayBackdropClass]=\"'backdrop'\"\n [cdkConnectedOverlayViewportMargin]=\"32\"\n [cdkConnectedOverlayPush]=\"true\"\n (backdropClick)=\"isEditorOpen = false\"\n >\n <div class=\"fwe-popover-container\">\n <div class=\"fwe-triangle\"></div>\n <div class=\"fwe-popover\" #popoverContent>\n <div class=\"fwe-color-label fwe-mb-s\">\n {{ label }}\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n </ng-template>\n</div>\n", styles: [".fwe-color-indicator .fwe-popover-container{position:relative}.fwe-color-indicator .fwe-popover-container .fwe-popover{background-color:var(--fwe-white);padding:8px 16px 16px;font-size:var(--fwe-font-size-md);line-height:1rem;box-shadow:0 1px 4px #3333;border-radius:4px}.fwe-color-indicator .fwe-backdrop{background:transparent}.fwe-color-indicator .fwe-color-label{height:18px;font-size:var(--fwe-font-size-small);font-weight:var(--fwe-font-weight-bold);margin-bottom:4px}.fwe-color-indicator .fwe-color-container{display:flex}.fwe-color-indicator .fwe-color-container .fwe-color-box{height:24px;width:24px;border-radius:4px;border:1px solid var(--fwe-control-border);background:var(--fwe-white)}.fwe-color-indicator .fwe-color-container .fwe-color-box .fwe-no-color-pattern{margin:2px}.fwe-color-indicator .fwe-color-container .fwe-color-indicator-text{margin-left:8px}.fwe-color-indicator--disabled{pointer-events:none}.fwe-color-indicator--disabled .fwe-color-label{color:var(--fwe-text-disabled)}.fwe-color-indicator--disabled .fwe-color-container .fwe-color-box{opacity:.5}.fwe-color-indicator--disabled .fwe-color-container .fwe-color-indicator-text{color:var(--fwe-text-disabled)}\n"], dependencies: [{ kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1$2.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: i1$2.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }], encapsulation: i0.ViewEncapsulation.None }); }
3909
3907
  }
3910
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngColorIndicatorComponent, decorators: [{
3908
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngColorIndicatorComponent, decorators: [{
3911
3909
  type: Component,
3912
3910
  args: [{ imports: [OverlayModule], selector: 'fng-color-indicator', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-color-indicator\" (click)=\"isEditorOpen = showPopOver ? !isEditorOpen : false\" [class.fwe-color-indicator--disabled]=\"disabled\">\n <div class=\"fwe-color-label\" [style.opacity]=\"isEditorOpen ? 0 : 1\">\n {{ label }}\n </div>\n <div class=\"fwe-color-container\">\n <div\n class=\"fwe-color-box\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n [style.background]=\"color\"\n [style.border-color]=\"getBorderColor()\"\n >\n @if (!color) {\n <svg\n class=\"fwe-no-color-pattern\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n id=\"canvas1\"\n width=\"18\"\n height=\"18\"\n >\n <defs>\n <pattern id=\"bwsquare2px\" width=\"4\" height=\"4\" patternUnits=\"userSpaceOnUse\">\n <rect x=\"0\" y=\"0\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#ffffff\" />\n <rect x=\"2\" y=\"0\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#e2e5e8\" />\n <rect x=\"0\" y=\"2\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#e2e5e8\" />\n <rect x=\"2\" y=\"2\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#ffffff\" />\n </pattern>\n </defs>\n <rect x=\"0\" y=\"0\" rx=\"0\" ry=\"0\" width=\"18\" height=\"18\" fill=\"url(#bwsquare2px)\" stroke-width=\"0\" />\n </svg>\n }\n </div>\n @if (text) {\n <div class=\"fwe-color-indicator-text\">\n {{ text }}\n </div>\n }\n </div>\n\n <ng-template\n cdkConnectedOverlay\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayOpen]=\"isEditorOpen\"\n [cdkConnectedOverlayPositions]=\"positions\"\n [cdkConnectedOverlayHasBackdrop]=\"true\"\n [cdkConnectedOverlayBackdropClass]=\"'backdrop'\"\n [cdkConnectedOverlayViewportMargin]=\"32\"\n [cdkConnectedOverlayPush]=\"true\"\n (backdropClick)=\"isEditorOpen = false\"\n >\n <div class=\"fwe-popover-container\">\n <div class=\"fwe-triangle\"></div>\n <div class=\"fwe-popover\" #popoverContent>\n <div class=\"fwe-color-label fwe-mb-s\">\n {{ label }}\n </div>\n <ng-content></ng-content>\n </div>\n </div>\n </ng-template>\n</div>\n", styles: [".fwe-color-indicator .fwe-popover-container{position:relative}.fwe-color-indicator .fwe-popover-container .fwe-popover{background-color:var(--fwe-white);padding:8px 16px 16px;font-size:var(--fwe-font-size-md);line-height:1rem;box-shadow:0 1px 4px #3333;border-radius:4px}.fwe-color-indicator .fwe-backdrop{background:transparent}.fwe-color-indicator .fwe-color-label{height:18px;font-size:var(--fwe-font-size-small);font-weight:var(--fwe-font-weight-bold);margin-bottom:4px}.fwe-color-indicator .fwe-color-container{display:flex}.fwe-color-indicator .fwe-color-container .fwe-color-box{height:24px;width:24px;border-radius:4px;border:1px solid var(--fwe-control-border);background:var(--fwe-white)}.fwe-color-indicator .fwe-color-container .fwe-color-box .fwe-no-color-pattern{margin:2px}.fwe-color-indicator .fwe-color-container .fwe-color-indicator-text{margin-left:8px}.fwe-color-indicator--disabled{pointer-events:none}.fwe-color-indicator--disabled .fwe-color-label{color:var(--fwe-text-disabled)}.fwe-color-indicator--disabled .fwe-color-container .fwe-color-box{opacity:.5}.fwe-color-indicator--disabled .fwe-color-container .fwe-color-indicator-text{color:var(--fwe-text-disabled)}\n"] }]
3913
3911
  }], propDecorators: { label: [{
@@ -4299,8 +4297,8 @@ class FngColorPickerComponent {
4299
4297
  this.inputType = type;
4300
4298
  this.isSelectOpen = false;
4301
4299
  }
4302
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4303
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngColorPickerComponent, isStandalone: true, selector: "fng-color-picker", inputs: { useAlpha: "useAlpha", alpha: "alpha", color: "color", disabled: "disabled", palette: "palette", paletteOnly: "paletteOnly" }, outputs: { alphaChange: "alphaChange" }, providers: [
4300
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4301
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngColorPickerComponent, isStandalone: true, selector: "fng-color-picker", inputs: { useAlpha: "useAlpha", alpha: "alpha", color: "color", disabled: "disabled", palette: "palette", paletteOnly: "paletteOnly" }, outputs: { alphaChange: "alphaChange" }, providers: [
4304
4302
  {
4305
4303
  provide: NG_VALUE_ACCESSOR,
4306
4304
  useExisting: forwardRef(() => FngColorPickerComponent),
@@ -4308,7 +4306,7 @@ class FngColorPickerComponent {
4308
4306
  }
4309
4307
  ], usesOnChanges: true, ngImport: i0, template: "<div class=\"fwe-color-picker\" [class.fwe-alpha-active]=\"useAlpha\">\n @if (!paletteOnly) {\n <div class=\"fwe-d-flex\">\n <div class=\"fwe-gradient-picker\">\n <div class=\"fwe-saturation-gradient\" [ngStyle]=\"{ 'background-image': getSaturationGradient() }\"></div>\n <div class=\"fwe-brightness-gradient\" (click)=\"onGradientClick($event)\"></div>\n <div\n class=\"fwe-knob\"\n cdkDragBoundary=\".fwe-gradient-picker\"\n cdkDrag\n [cdkDragFreeDragPosition]=\"{ x: saturationKnobOffset, y: valueKnobOffset }\"\n (cdkDragMoved)=\"onGradientDrag($event)\"\n [style.background]=\"color\"\n ></div>\n </div>\n <div class=\"fwe-hue-picker\">\n <div class=\"fwe-picker-background\" (click)=\"onHueClick($event)\"></div>\n <div\n class=\"fwe-knob\"\n cdkDragBoundary=\".fwe-hue-picker\"\n cdkDragLockAxis=\"y\"\n cdkDrag\n [cdkDragFreeDragPosition]=\"{ x: 3, y: hueKnobOffset }\"\n (cdkDragMoved)=\"onHueDrag($event)\"\n [style.background]=\"'hsl(' + hue * 360 + ', 100%, 50%)'\"\n ></div>\n </div>\n @if (useAlpha) {\n <div class=\"fwe-alpha-picker\">\n <svg\n class=\"fwe-no-color-pattern\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n id=\"canvas1\"\n width=\"8\"\n height=\"184\"\n >\n <defs>\n <pattern id=\"bwsquare2px\" width=\"4\" height=\"4\" patternUnits=\"userSpaceOnUse\">\n <rect x=\"0\" y=\"0\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#ffffff\" />\n <rect x=\"2\" y=\"0\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#e2e5e8\" />\n <rect x=\"0\" y=\"2\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#e2e5e8\" />\n <rect x=\"2\" y=\"2\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#ffffff\" />\n </pattern>\n </defs>\n <rect x=\"0\" y=\"0\" rx=\"4\" ry=\"4\" width=\"8\" height=\"184\" fill=\"url(#bwsquare2px)\" stroke-width=\"0\" />\n </svg>\n <div\n class=\"fwe-picker-background\"\n (click)=\"onAlphaClick($event)\"\n [ngStyle]=\"{ 'background-image': 'linear-gradient( ' + color + ' , transparent)' }\"\n ></div>\n <div\n class=\"fwe-knob\"\n cdkDragBoundary=\".fwe-alpha-picker\"\n cdkDragLockAxis=\"y\"\n cdkDrag\n [cdkDragFreeDragPosition]=\"{ x: 3, y: alphaKnobOffset }\"\n (cdkDragMoved)=\"onAlphaDrag($event)\"\n [style.background]=\"color\"\n ></div>\n </div>\n }\n </div>\n }\n\n @if (!paletteOnly) {\n <div class=\"fwe-mt-s\">\n <div class=\"fwe-type-select\">\n <div class=\"fwe-type-indicator\" (click)=\"isSelectOpen = !isSelectOpen\">\n <span class=\"fwe-input-type\">{{ inputType }}</span>\n <i class=\"fwe-icon fwe-icon-arrows-collapse\"></i>\n </div>\n @if (isSelectOpen) {\n <div class=\"fwe-popover\">\n <div class=\"fwe-type-item\" (click)=\"onChangeType('HEX')\" [class.fwe-selected]=\"inputType === 'HEX'\">\n <i class=\"fwe-icon fwe-icon-menu-check\"></i> HEX\n </div>\n <div class=\"fwe-type-item\" (click)=\"onChangeType('RGB')\" [class.fwe-selected]=\"inputType === 'RGB'\">\n <i class=\"fwe-icon fwe-icon-menu-check\"></i> RGB\n </div>\n </div>\n }\n </div>\n <div class=\"fwe-d-flex\">\n @if (inputType === 'HEX') {\n <label class=\"fwe-input-text fwe-hex-input\">\n <input type=\"text\" [(ngModel)]=\"hexInputColor\" (blur)=\"onHexBlur()\" (input)=\"onHexInput()\" />\n </label>\n }\n @if (inputType === 'RGB') {\n <label class=\"fwe-input-text fwe-red-input\">\n <input type=\"number\" [(ngModel)]=\"redInput\" (input)=\"onRgbInput(redInput, 'r')\" />\n </label>\n <label class=\"fwe-input-text fwe-green-input\">\n <input type=\"number\" [(ngModel)]=\"greenInput\" (input)=\"onRgbInput(greenInput, 'g')\" />\n </label>\n <label class=\"fwe-input-text fwe-blue-input\">\n <input type=\"number\" min=\"0\" max=\"255\" [(ngModel)]=\"blueInput\" (input)=\"onRgbInput(blueInput, 'b')\" />\n </label>\n }\n @if (useAlpha) {\n <label class=\"fwe-input-text fwe-alpha-input fwe-ml-auto\">\n <span>\n <input type=\"number\" min=\"0\" max=\"100\" [(ngModel)]=\"alphaInput\" (input)=\"onAlphaInput(alphaInput)\" />\n <span class=\"fwe-percent-char\">%</span>\n </span>\n </label>\n }\n </div>\n </div>\n }\n\n @if (palette && palette.length) {\n <div class=\"fwe-mt-xs fwe-color-grid\">\n <div class=\"fwe-remove-color-button\" (click)=\"onRemoveColor()\">\n <svg\n class=\"fwe-no-color-pattern\"\n version=\"1.1\"\n xmlns=\"http://www.w3.org/2000/svg\"\n xmlns:xlink=\"http://www.w3.org/1999/xlink\"\n id=\"canvas1\"\n width=\"18\"\n height=\"18\"\n >\n <defs>\n <pattern id=\"bwsquare2px\" width=\"4\" height=\"4\" patternUnits=\"userSpaceOnUse\">\n <rect x=\"0\" y=\"0\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#ffffff\" />\n <rect x=\"2\" y=\"0\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#e2e5e8\" />\n <rect x=\"0\" y=\"2\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#e2e5e8\" />\n <rect x=\"2\" y=\"2\" width=\"2\" height=\"2\" stroke=\"none\" fill=\"#ffffff\" />\n </pattern>\n </defs>\n <rect x=\"0\" y=\"0\" rx=\"0\" ry=\"0\" width=\"18\" height=\"18\" fill=\"url(#bwsquare2px)\" stroke-width=\"0\" />\n </svg>\n <i class=\"fwe-icon fwe-icon-menu-check\" [class.fwe-color-text]=\"!color\"></i>\n </div>\n @for (colorItem of palette; track colorItem) {\n <div\n class=\"fwe-color-item\"\n [class.fwe-white-item]=\"colorItem.toUpperCase() === '#FFFFFF'\"\n [style.background]=\"colorItem\"\n (click)=\"color = colorItem\"\n >\n @if (colorItem.toUpperCase() === color) {\n <i class=\"fwe-icon fwe-icon-menu-check\"></i>\n }\n </div>\n }\n </div>\n }\n</div>\n", styles: [".fwe-triangle.fwe-triangle-right,.fwe-triangle.fwe-triangle-left,.fwe-triangle.fwe-triangle-bottom,.fwe-triangle.fwe-triangle-top{width:17px;height:17px;position:absolute;overflow:hidden}.fwe-triangle.fwe-triangle-right:after,.fwe-triangle.fwe-triangle-left:after,.fwe-triangle.fwe-triangle-bottom:after,.fwe-triangle.fwe-triangle-top:after{content:\"\";position:absolute;width:12px;height:12px;background:var(--fwe-white);transform:rotate(45deg);box-shadow:0 1px 4px #3333}.fwe-popover.fwe-popover-menu,.fwe-popover{background-color:var(--fwe-white);box-shadow:0 1px 4px #3333;border-radius:4px}.fwe-popover{padding:8px;font-size:var(--fwe-font-size-md);line-height:1rem}.fwe-popover-container{position:relative;display:inline-block;min-width:max-content}.fwe-triangle.fwe-triangle-top{left:50%;top:-17px;transform:translate(-8px)}.fwe-triangle.fwe-triangle-top:after{top:11px;left:3px}.fwe-triangle.fwe-triangle-bottom{left:50%;top:100%;transform:translate(-8px)}.fwe-triangle.fwe-triangle-bottom:after{top:-6px;left:3px}.fwe-triangle.fwe-triangle-left{left:-17px;top:50%;transform:translateY(-8px)}.fwe-triangle.fwe-triangle-left:after{top:2px;left:11px}.fwe-triangle.fwe-triangle-right{left:100%;top:50%;transform:translateY(-8px)}.fwe-triangle.fwe-triangle-right:after{top:2px;left:-6px}.fwe-popover.fwe-popover-menu{font-size:var(--fwe-font-size-base);line-height:1.5rem;padding:16px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item{border-bottom:none;min-height:36px;padding:0}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button{width:100%;margin-left:inherit;padding:0 8px 0 0;text-align:left;height:32px;max-height:32px;display:inline-flex;justify-content:unset}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button:hover{color:var(--fwe-black)}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button i{display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;height:24px;width:32px;margin-right:0}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button i:before{display:inline-flex}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button .fwe-svg-icon{margin-right:8px;margin-left:8px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button span{display:inline-flex;height:24px}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item button [class*=\" fwe-icon-\"]{margin-left:inherit}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item:hover{color:var(--fwe-black);background-color:#3333331a}.fwe-popover.fwe-popover-menu .fwe-list-group .fwe-list-group-item:active{background-color:#3333}.fwe-popover .fwe-popover-legend{display:table;margin:16px;line-height:24px}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content{display:table-row}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fwe-popover .fwe-popover-legend .fwe-popover-legend-content dd{display:table-cell;margin:0}.fwe-color-picker{width:216px}.fwe-color-picker.fwe-alpha-active{width:245px}.fwe-color-picker .fwe-gradient-picker{position:relative;width:198px;height:198px;margin:-7px}.fwe-color-picker .fwe-gradient-picker .fwe-brightness-gradient{position:absolute;inset:7px;background-image:linear-gradient(transparent,#000)}.fwe-color-picker .fwe-gradient-picker .fwe-saturation-gradient{position:absolute;inset:7px}.fwe-color-picker .fwe-vertical-picker,.fwe-color-picker .fwe-alpha-picker,.fwe-color-picker .fwe-hue-picker{position:relative;height:198px;width:14px;margin:-7px -3px -7px 18px}.fwe-color-picker .fwe-vertical-picker .fwe-picker-background,.fwe-color-picker .fwe-alpha-picker .fwe-picker-background,.fwe-color-picker .fwe-hue-picker .fwe-picker-background{margin:7px 3px;height:184px;width:8px;border-radius:4px}.fwe-color-picker .fwe-vertical-picker .fwe-knob,.fwe-color-picker .fwe-alpha-picker .fwe-knob,.fwe-color-picker .fwe-hue-picker .fwe-knob{left:-3px}.fwe-color-picker .fwe-hue-picker .fwe-picker-background{background-image:linear-gradient(red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.fwe-color-picker .fwe-alpha-picker .fwe-no-color-pattern{margin:7px 3px;position:absolute}.fwe-color-picker .fwe-alpha-picker .fwe-picker-background{position:absolute}.fwe-color-picker .fwe-type-select{position:relative;display:flex}.fwe-color-picker .fwe-type-select .fwe-type-indicator{flex-shrink:1;cursor:pointer;display:flex}.fwe-color-picker .fwe-type-select .fwe-type-indicator .fwe-input-type{font-size:var(--fwe-font-size-small);line-height:calc(var(--fwe-font-size-small) + 5px);font-weight:var(--fwe-font-weight-bold)}.fwe-color-picker .fwe-type-select .fwe-type-indicator:hover{color:var(--fwe-hero)}.fwe-color-picker .fwe-type-select .fwe-icon-arrows-collapse{margin-left:16px;line-height:16px}.fwe-color-picker .fwe-type-select .fwe-popover{position:absolute;z-index:1;top:24px;left:0}.fwe-color-picker .fwe-type-select .fwe-popover .fwe-type-item{cursor:pointer;display:flex;padding:8px}.fwe-color-picker .fwe-type-select .fwe-popover .fwe-type-item:hover{color:var(--fwe-hero)}.fwe-color-picker .fwe-type-select .fwe-popover .fwe-type-item .fwe-icon-menu-check{opacity:0;margin-right:8px}.fwe-color-picker .fwe-type-select .fwe-popover .fwe-type-item.fwe-selected{cursor:default}.fwe-color-picker .fwe-type-select .fwe-popover .fwe-type-item.fwe-selected .fwe-icon-menu-check{opacity:1}.fwe-color-picker input::-webkit-outer-spin-button,.fwe-color-picker input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.fwe-color-picker input[type=number]{-moz-appearance:textfield}.fwe-color-picker input{padding-right:0!important;text-align:center}.fwe-color-picker .fwe-hex-input{width:75px;margin-right:16px}.fwe-color-picker .fwe-red-input,.fwe-color-picker .fwe-green-input{width:32px;margin-right:8px}.fwe-color-picker .fwe-blue-input{width:32px}.fwe-color-picker .fwe-alpha-input span input{width:48px;padding-right:16px!important}.fwe-color-picker .fwe-alpha-input .fwe-percent-char{margin-left:-16px}.fwe-color-picker .fwe-color-grid{display:flex;flex-wrap:wrap;margin-right:-8px;margin-bottom:-8px}.fwe-color-picker .fwe-color-grid .fwe-color-item{align-items:center;display:flex;justify-content:center;color:#fff;height:24px;width:24px;border-radius:4px;margin-right:8px;margin-bottom:8px}.fwe-color-picker .fwe-color-grid .fwe-color-item.fwe-white-item{border:1px solid var(--fwe-control-border);color:#000}.fwe-color-picker .fwe-color-grid .fwe-remove-color-button{align-items:center;display:flex;justify-content:center;height:24px;width:24px;border-radius:4px;border:1px solid var(--fwe-control-border);color:var(--fwe-control);margin-right:8px;margin-bottom:8px}.fwe-color-picker .fwe-color-grid .fwe-remove-color-button .fwe-no-color-pattern{margin:2px}.fwe-color-picker .fwe-color-grid .fwe-remove-color-button i{color:transparent;position:absolute}.fwe-color-picker .fwe-knob{position:absolute;z-index:1;height:14px;width:14px;border-radius:50%;border:2px solid white;box-shadow:0 0 4px #00000026}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.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: i1$4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i1$4.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], encapsulation: i0.ViewEncapsulation.None }); }
4310
4308
  }
4311
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngColorPickerComponent, decorators: [{
4309
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngColorPickerComponent, decorators: [{
4312
4310
  type: Component,
4313
4311
  args: [{ imports: [CommonModule, DragDropModule, FormsModule], selector: 'fng-color-picker', providers: [
4314
4312
  {
@@ -4368,10 +4366,10 @@ class FngFlatpickrComponent {
4368
4366
  this.dateChange.emit(dateOption[0]);
4369
4367
  }
4370
4368
  }
4371
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngFlatpickrComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4372
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngFlatpickrComponent, isStandalone: true, selector: "fng-flatpickr", inputs: { date: "date", options: "options" }, outputs: { dateChange: "dateChange" }, viewQueries: [{ propertyName: "datePickerRef", first: true, predicate: ["datePicker"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"fng-flatpickr\">\r\n <div #datePicker></div>\r\n</div>\r\n", encapsulation: i0.ViewEncapsulation.None }); }
4369
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngFlatpickrComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4370
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngFlatpickrComponent, isStandalone: true, selector: "fng-flatpickr", inputs: { date: "date", options: "options" }, outputs: { dateChange: "dateChange" }, viewQueries: [{ propertyName: "datePickerRef", first: true, predicate: ["datePicker"], descendants: true, static: true }], ngImport: i0, template: "<div class=\"fng-flatpickr\">\r\n <div #datePicker></div>\r\n</div>\r\n", encapsulation: i0.ViewEncapsulation.None }); }
4373
4371
  }
4374
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngFlatpickrComponent, decorators: [{
4372
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngFlatpickrComponent, decorators: [{
4375
4373
  type: Component,
4376
4374
  args: [{ standalone: true, selector: 'fng-flatpickr', encapsulation: ViewEncapsulation.None, template: "<div class=\"fng-flatpickr\">\r\n <div #datePicker></div>\r\n</div>\r\n" }]
4377
4375
  }], propDecorators: { date: [{
@@ -4523,8 +4521,8 @@ class FngDatePickerComponent {
4523
4521
  this.complete.complete();
4524
4522
  }
4525
4523
  }
4526
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngDatePickerComponent, deps: [{ token: i1$2.Overlay }, { token: LOCALE_ID }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
4527
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngDatePickerComponent, isStandalone: true, selector: "fng-date-picker", inputs: { value: "value", disabled: "disabled", hint: "hint", error: "error", options: "options", locale: "locale", format: "format", timezone: "timezone", required: "required", width: "width" }, host: { listeners: { "document:keydown": "hide($event)" }, properties: { "style.width": "this.width", "style.display": "this.display" } }, providers: [
4524
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngDatePickerComponent, deps: [{ token: i1$2.Overlay }, { token: LOCALE_ID }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
4525
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngDatePickerComponent, isStandalone: true, selector: "fng-date-picker", inputs: { value: "value", disabled: "disabled", hint: "hint", error: "error", options: "options", locale: "locale", format: "format", timezone: "timezone", required: "required", width: "width" }, host: { listeners: { "document:keydown": "hide($event)" }, properties: { "style.width": "this.width", "style.display": "this.display" } }, providers: [
4528
4526
  {
4529
4527
  provide: NG_VALUE_ACCESSOR,
4530
4528
  useExisting: forwardRef(() => FngDatePickerComponent),
@@ -4532,7 +4530,7 @@ class FngDatePickerComponent {
4532
4530
  }
4533
4531
  ], viewQueries: [{ propertyName: "connector", first: true, predicate: ["connector"], descendants: true, static: true }], ngImport: i0, template: "<label #connector class=\"fng-date-picker fwe-input-text fwe-input-text-icon\" (click)=\"toggle($event)\">\n <i\n class=\"fng-icon-svg fng-icon-svg--time-calendar\"\n [class.fwe-color-hero]=\"datePickerRef != null\"\n [class.fwe-color-control-disabled]=\"disabled\"\n ></i>\n <input\n aria-label=\"picked date\"\n type=\"text\"\n readonly\n [required]=\"required === true || null\"\n [class.fwe-border-hero]=\"datePickerRef != null\"\n [value]=\"displayValue\"\n [disabled]=\"disabled\"\n />\n <span class=\"fwe-input-text-label\"><ng-content></ng-content></span>\n @if (hint) {\n <span class=\"fwe-input-text-info\">{{ hint }}</span>\n }\n @if (error) {\n <span class=\"fwe-input-text-invalid\">{{ error }}</span>\n }\n </label>\n", styles: [".fwe-border-hero{border-color:var(--fwe-hero)!important}\n"], encapsulation: i0.ViewEncapsulation.None }); }
4534
4532
  }
4535
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngDatePickerComponent, decorators: [{
4533
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngDatePickerComponent, decorators: [{
4536
4534
  type: Component,
4537
4535
  args: [{ imports: [], selector: 'fng-date-picker', providers: [
4538
4536
  {
@@ -4738,8 +4736,8 @@ class FngDateRangePickerComponent {
4738
4736
  this.complete.complete();
4739
4737
  }
4740
4738
  }
4741
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngDateRangePickerComponent, deps: [{ token: i1$2.Overlay }, { token: LOCALE_ID }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
4742
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngDateRangePickerComponent, isStandalone: true, selector: "fng-date-range-picker", inputs: { value: "value", disabled: "disabled", hint: "hint", error: "error", locale: "locale", format: "format", timezone: "timezone", options: "options", required: "required", width: "width" }, outputs: { fngChange: "fngChange", change: "change" }, host: { listeners: { "document:keydown": "hide($event)" }, properties: { "style.width": "this.width", "style.display": "this.display" } }, providers: [
4739
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngDateRangePickerComponent, deps: [{ token: i1$2.Overlay }, { token: LOCALE_ID }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
4740
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngDateRangePickerComponent, isStandalone: true, selector: "fng-date-range-picker", inputs: { value: "value", disabled: "disabled", hint: "hint", error: "error", locale: "locale", format: "format", timezone: "timezone", options: "options", required: "required", width: "width" }, outputs: { fngChange: "fngChange", change: "change" }, host: { listeners: { "document:keydown": "hide($event)" }, properties: { "style.width": "this.width", "style.display": "this.display" } }, providers: [
4743
4741
  {
4744
4742
  provide: NG_VALUE_ACCESSOR,
4745
4743
  useExisting: forwardRef(() => FngDateRangePickerComponent),
@@ -4747,7 +4745,7 @@ class FngDateRangePickerComponent {
4747
4745
  }
4748
4746
  ], viewQueries: [{ propertyName: "connector", first: true, predicate: ["connector"], descendants: true, static: true }], ngImport: i0, template: "<div #connector class=\"fng-date-range-picker\" (click)=\"toggle($event)\">\n <label class=\"fwe-input-text fwe-input-text-icon\">\n <i\n class=\"fng-icon-svg fng-icon-svg--time-calendar\"\n [class.fwe-color-hero]=\"dateRangePickerRef != null\"\n [class.fwe-color-control-disabled]=\"disabled\"\n ></i>\n <div class=\"fng-date-range-picker-inputs\" [class.fng-date-range-picker-inputs--disabled]=\"disabled\">\n <input\n aria-label=\"picked start date\"\n type=\"text\"\n readonly\n [required]=\"required === true || null\"\n [class.fwe-border-hero]=\"dateRangePickerRef != null\"\n [value]=\"fromDateDisplayValue\"\n [disabled]=\"disabled\"\n />\n <input\n aria-label=\"picked end date\"\n type=\"text\"\n readonly\n [required]=\"required === true || null\"\n [class.fwe-border-hero]=\"dateRangePickerRef != null\"\n [value]=\"toDateDisplayValue\"\n [disabled]=\"disabled\"\n />\n </div>\n <span class=\"fwe-input-text-label\" [class.fwe-color-text-disabled]=\"disabled\"><ng-content></ng-content></span>\n @if (hint) {\n <span class=\"fwe-input-text-info\">{{ hint }}</span>\n }\n @if (error) {\n <span class=\"fwe-input-text-invalid\">{{ error }}</span>\n }\n </label>\n </div>\n", styles: [".fwe-border-hero{border-color:var(--fwe-hero)!important}.fng-date-range-picker:hover input{color:var(--fwe-hero)}.fng-date-range-picker-inputs{display:flex;order:2;position:relative}.fng-date-range-picker-inputs--disabled:after{color:var(--fwe-text-disabled)}.fng-date-range-picker-inputs:after{position:absolute;content:\"-\";left:50%;top:50%;transform:translate(-50%,-50%);padding-right:32px}\n"], encapsulation: i0.ViewEncapsulation.None }); }
4749
4747
  }
4750
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngDateRangePickerComponent, decorators: [{
4748
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngDateRangePickerComponent, decorators: [{
4751
4749
  type: Component,
4752
4750
  args: [{ imports: [], selector: 'fng-date-range-picker', providers: [
4753
4751
  {
@@ -4878,10 +4876,10 @@ class FngTimePickerDropdownComponent {
4878
4876
  this.dateChange.emit({ reset, date: new Date(this.date), close });
4879
4877
  }
4880
4878
  }
4881
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTimePickerDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4882
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngTimePickerDropdownComponent, isStandalone: true, selector: "fng-time-picker-dropdown", inputs: { date: "date", showSeconds: "showSeconds", timeFormat: "timeFormat" }, outputs: { dateChange: "dateChange" }, host: { listeners: { "document:keydown": "hide($event)" } }, viewQueries: [{ propertyName: "hoursInput", first: true, predicate: ["hoursInput"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-timepicker\">\n <div class=\"fwe-timepicker-spinners\">\n <div class=\"fwe-timepicker-spinners-hours\">\n <button type=\"button\" aria-label=\"hour up\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onHourUp()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-expand\"></i>\n </button>\n <input\n #hoursInput\n aria-label=\"hours value\"\n class=\"fwe-timepicker-hide-spinners\"\n type=\"number\"\n min=\"0\"\n tabindex=\"1\"\n step=\"1\"\n [value]=\"date | date : (timeFormat === '12' ? 'hh' : 'HH')\"\n [attr.max]=\"timeFormat === '12' ? 12 : 23\"\n (input)=\"onHourChange($event)\"\n />\n <button type=\"button\" aria-label=\"hour down\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onHourDown()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-collapse\"></i>\n </button>\n </div>\n <div class=\"fwe-timepicker-spinners-minutes\">\n <button type=\"button\" aria-label=\"minute up\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onMinuteUp()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-expand\"></i>\n </button>\n <input\n aria-label=\"minutes value\"\n class=\"fwe-timepicker-hide-spinners\"\n type=\"number\"\n min=\"0\"\n max=\"59\"\n step=\"1\"\n tabindex=\"2\"\n [value]=\"date | date : 'mm'\"\n (input)=\"onMinuteChange($event)\"\n />\n <button type=\"button\" aria-label=\"minute down\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onMinuteDown()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-collapse\"></i>\n </button>\n </div>\n @if (showSeconds) {\n <div class=\"fwe-timepicker-spinners-seconds\">\n <button type=\"button\" aria-label=\"seconds up\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onSecondUp()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-expand\"></i>\n </button>\n <input\n aria-label=\"seconds value\"\n class=\"fwe-timepicker-hide-spinners\"\n type=\"number\"\n min=\"0\"\n max=\"59\"\n step=\"1\"\n tabindex=\"3\"\n [value]=\"date | date : 'ss'\"\n (input)=\"onSecondChange($event)\"\n />\n <button type=\"button\" aria-label=\"seconds down\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onSecondDown()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-collapse\"></i>\n </button>\n </div>\n }\n </div>\n @if (timeFormat === '12') {\n <button class=\"fwe-btn fwe-ml-m\" (click)=\"onToggleTimeFormat()\">\n {{ date | date : 'a' }}\n </button>\n }\n </div>\n", styles: [".border-hero{border-color:var(--fwe-hero)!important}.fwe-timepicker{width:100%;max-width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }], encapsulation: i0.ViewEncapsulation.None }); }
4879
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTimePickerDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4880
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngTimePickerDropdownComponent, isStandalone: true, selector: "fng-time-picker-dropdown", inputs: { date: "date", showSeconds: "showSeconds", timeFormat: "timeFormat" }, outputs: { dateChange: "dateChange" }, host: { listeners: { "document:keydown": "hide($event)" } }, viewQueries: [{ propertyName: "hoursInput", first: true, predicate: ["hoursInput"], descendants: true }], ngImport: i0, template: "<div class=\"fwe-timepicker\">\n <div class=\"fwe-timepicker-spinners\">\n <div class=\"fwe-timepicker-spinners-hours\">\n <button type=\"button\" aria-label=\"hour up\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onHourUp()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-expand\"></i>\n </button>\n <input\n #hoursInput\n aria-label=\"hours value\"\n class=\"fwe-timepicker-hide-spinners\"\n type=\"number\"\n min=\"0\"\n tabindex=\"1\"\n step=\"1\"\n [value]=\"date | date : (timeFormat === '12' ? 'hh' : 'HH')\"\n [attr.max]=\"timeFormat === '12' ? 12 : 23\"\n (input)=\"onHourChange($event)\"\n />\n <button type=\"button\" aria-label=\"hour down\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onHourDown()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-collapse\"></i>\n </button>\n </div>\n <div class=\"fwe-timepicker-spinners-minutes\">\n <button type=\"button\" aria-label=\"minute up\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onMinuteUp()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-expand\"></i>\n </button>\n <input\n aria-label=\"minutes value\"\n class=\"fwe-timepicker-hide-spinners\"\n type=\"number\"\n min=\"0\"\n max=\"59\"\n step=\"1\"\n tabindex=\"2\"\n [value]=\"date | date : 'mm'\"\n (input)=\"onMinuteChange($event)\"\n />\n <button type=\"button\" aria-label=\"minute down\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onMinuteDown()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-collapse\"></i>\n </button>\n </div>\n @if (showSeconds) {\n <div class=\"fwe-timepicker-spinners-seconds\">\n <button type=\"button\" aria-label=\"seconds up\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onSecondUp()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-expand\"></i>\n </button>\n <input\n aria-label=\"seconds value\"\n class=\"fwe-timepicker-hide-spinners\"\n type=\"number\"\n min=\"0\"\n max=\"59\"\n step=\"1\"\n tabindex=\"3\"\n [value]=\"date | date : 'ss'\"\n (input)=\"onSecondChange($event)\"\n />\n <button type=\"button\" aria-label=\"seconds down\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onSecondDown()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-collapse\"></i>\n </button>\n </div>\n }\n </div>\n @if (timeFormat === '12') {\n <button class=\"fwe-btn fwe-ml-m\" (click)=\"onToggleTimeFormat()\">\n {{ date | date : 'a' }}\n </button>\n }\n </div>\n", styles: [".border-hero{border-color:var(--fwe-hero)!important}.fwe-timepicker{width:100%;max-width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }], encapsulation: i0.ViewEncapsulation.None }); }
4883
4881
  }
4884
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTimePickerDropdownComponent, decorators: [{
4882
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTimePickerDropdownComponent, decorators: [{
4885
4883
  type: Component,
4886
4884
  args: [{ imports: [CommonModule], selector: 'fng-time-picker-dropdown', encapsulation: ViewEncapsulation.None, template: "<div class=\"fwe-timepicker\">\n <div class=\"fwe-timepicker-spinners\">\n <div class=\"fwe-timepicker-spinners-hours\">\n <button type=\"button\" aria-label=\"hour up\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onHourUp()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-expand\"></i>\n </button>\n <input\n #hoursInput\n aria-label=\"hours value\"\n class=\"fwe-timepicker-hide-spinners\"\n type=\"number\"\n min=\"0\"\n tabindex=\"1\"\n step=\"1\"\n [value]=\"date | date : (timeFormat === '12' ? 'hh' : 'HH')\"\n [attr.max]=\"timeFormat === '12' ? 12 : 23\"\n (input)=\"onHourChange($event)\"\n />\n <button type=\"button\" aria-label=\"hour down\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onHourDown()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-collapse\"></i>\n </button>\n </div>\n <div class=\"fwe-timepicker-spinners-minutes\">\n <button type=\"button\" aria-label=\"minute up\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onMinuteUp()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-expand\"></i>\n </button>\n <input\n aria-label=\"minutes value\"\n class=\"fwe-timepicker-hide-spinners\"\n type=\"number\"\n min=\"0\"\n max=\"59\"\n step=\"1\"\n tabindex=\"2\"\n [value]=\"date | date : 'mm'\"\n (input)=\"onMinuteChange($event)\"\n />\n <button type=\"button\" aria-label=\"minute down\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onMinuteDown()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-collapse\"></i>\n </button>\n </div>\n @if (showSeconds) {\n <div class=\"fwe-timepicker-spinners-seconds\">\n <button type=\"button\" aria-label=\"seconds up\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onSecondUp()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-expand\"></i>\n </button>\n <input\n aria-label=\"seconds value\"\n class=\"fwe-timepicker-hide-spinners\"\n type=\"number\"\n min=\"0\"\n max=\"59\"\n step=\"1\"\n tabindex=\"3\"\n [value]=\"date | date : 'ss'\"\n (input)=\"onSecondChange($event)\"\n />\n <button type=\"button\" aria-label=\"seconds down\" class=\"fwe-btn fwe-btn-link fwe-dark\" (click)=\"onSecondDown()\">\n <i aria-hidden=\"true\" class=\"fwe-icon fwe-icon-arrows-collapse\"></i>\n </button>\n </div>\n }\n </div>\n @if (timeFormat === '12') {\n <button class=\"fwe-btn fwe-ml-m\" (click)=\"onToggleTimeFormat()\">\n {{ date | date : 'a' }}\n </button>\n }\n </div>\n", styles: [".border-hero{border-color:var(--fwe-hero)!important}.fwe-timepicker{width:100%;max-width:100%}\n"] }]
4887
4885
  }], propDecorators: { date: [{
@@ -5050,8 +5048,8 @@ class FngTimePickerComponent {
5050
5048
  this.complete.complete();
5051
5049
  }
5052
5050
  }
5053
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTimePickerComponent, deps: [{ token: i1$2.Overlay }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
5054
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngTimePickerComponent, isStandalone: true, selector: "fng-time-picker", inputs: { value: "value", disabled: "disabled", required: "required", hint: "hint", error: "error", options: "options", width: "width" }, host: { properties: { "style.width": "this.width", "style.display": "this.display" } }, providers: [
5051
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTimePickerComponent, deps: [{ token: i1$2.Overlay }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
5052
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngTimePickerComponent, isStandalone: true, selector: "fng-time-picker", inputs: { value: "value", disabled: "disabled", required: "required", hint: "hint", error: "error", options: "options", width: "width" }, host: { properties: { "style.width": "this.width", "style.display": "this.display" } }, providers: [
5055
5053
  {
5056
5054
  provide: NG_VALUE_ACCESSOR,
5057
5055
  useExisting: forwardRef(() => FngTimePickerComponent),
@@ -5059,7 +5057,7 @@ class FngTimePickerComponent {
5059
5057
  }
5060
5058
  ], viewQueries: [{ propertyName: "connector", first: true, predicate: ["connector"], descendants: true, static: true }], ngImport: i0, template: "<label #connector class=\"fng-time-picker fwe-input-text fwe-input-text-icon\" (click)=\"toggle($event)\">\n <i class=\"fng-icon-svg fng-icon-svg--time\" [class.fwe-color-hero]=\"timePickerRef != null\" [class.fwe-color-control-disabled]=\"disabled\"></i>\n <input\n aria-label=\"picked time\"\n type=\"text\"\n readonly\n [required]=\"required === true || null\"\n [class.fwe-border-hero]=\"timePickerRef != null\"\n [value]=\"value | date: timeFormat\"\n [disabled]=\"disabled\"\n />\n <span class=\"fwe-input-text-label\"><ng-content></ng-content></span>\n @if (hint) {\n <span class=\"fwe-input-text-info\">{{ hint }}</span>\n }\n @if (error) {\n <span class=\"fwe-input-text-invalid\">{{ error }}</span>\n }\n </label>\n", styles: [".fng-first-child-fullwidth fng-time-picker-dropdown{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.DatePipe, name: "date" }], encapsulation: i0.ViewEncapsulation.None }); }
5061
5059
  }
5062
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTimePickerComponent, decorators: [{
5060
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTimePickerComponent, decorators: [{
5063
5061
  type: Component,
5064
5062
  args: [{ imports: [CommonModule], selector: 'fng-time-picker', providers: [
5065
5063
  {
@@ -5124,10 +5122,10 @@ class FngUniqueSelectionDispatcher {
5124
5122
  ngOnDestroy() {
5125
5123
  this.listeners = [];
5126
5124
  }
5127
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngUniqueSelectionDispatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5128
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngUniqueSelectionDispatcher, providedIn: 'root' }); }
5125
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngUniqueSelectionDispatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5126
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngUniqueSelectionDispatcher, providedIn: 'root' }); }
5129
5127
  }
5130
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngUniqueSelectionDispatcher, decorators: [{
5128
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngUniqueSelectionDispatcher, decorators: [{
5131
5129
  type: Injectable,
5132
5130
  args: [{ providedIn: 'root' }]
5133
5131
  }] });
@@ -5272,8 +5270,8 @@ class FngRadioGroupDirective {
5272
5270
  });
5273
5271
  }
5274
5272
  }
5275
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngRadioGroupDirective, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
5276
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.13", type: FngRadioGroupDirective, isStandalone: true, selector: "[fngRadioGroup]", inputs: { name: "name", large: "large", labelPosition: "labelPosition", value: "value", selected: "selected", disabled: "disabled", required: "required" }, outputs: { change: "change" }, host: { properties: { "class.fwe-radio-group": "this.hostClass", "attr.role": "this.role" } }, providers: [
5273
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngRadioGroupDirective, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
5274
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: FngRadioGroupDirective, isStandalone: true, selector: "[fngRadioGroup]", inputs: { name: "name", large: "large", labelPosition: "labelPosition", value: "value", selected: "selected", disabled: "disabled", required: "required" }, outputs: { change: "change" }, host: { properties: { "class.fwe-radio-group": "this.hostClass", "attr.role": "this.role" } }, providers: [
5277
5275
  {
5278
5276
  provide: NG_VALUE_ACCESSOR,
5279
5277
  useExisting: forwardRef(() => FngRadioGroupDirective),
@@ -5281,7 +5279,7 @@ class FngRadioGroupDirective {
5281
5279
  }
5282
5280
  ], queries: [{ propertyName: "radios", predicate: i0.forwardRef(() => FngRadioComponent), descendants: true }], ngImport: i0 }); }
5283
5281
  }
5284
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngRadioGroupDirective, decorators: [{
5282
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngRadioGroupDirective, decorators: [{
5285
5283
  type: Directive,
5286
5284
  args: [{
5287
5285
  standalone: true,
@@ -5446,10 +5444,10 @@ class FngRadioComponent {
5446
5444
  emitChangeEvent() {
5447
5445
  this.change.emit(new FngRadioChange(this, this.innerValue));
5448
5446
  }
5449
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngRadioComponent, deps: [{ token: FngRadioGroupDirective, optional: true }, { token: i0.ChangeDetectorRef }, { token: FngUniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component }); }
5450
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngRadioComponent, isStandalone: true, selector: "fng-radio", inputs: { name: "name", id: "id", checked: "checked", value: "value", large: "large", labelPosition: "labelPosition", disabled: "disabled", required: "required" }, outputs: { change: "change" }, ngImport: i0, template: "<label\r\n [attr.for]=\"inputId\"\r\n [ngClass]=\"{\r\n 'fwe-radio': true,\r\n 'fwe-radio-label-below': labelPosition == 'below',\r\n 'fwe-radio-label-before': labelPosition == 'before',\r\n 'fwe-radio-lg': large\r\n }\"\r\n>\r\n <input\r\n type=\"radio\"\r\n [id]=\"inputId\"\r\n [checked]=\"checked\"\r\n [disabled]=\"disabled\"\r\n [attr.name]=\"name\"\r\n [attr.value]=\"value\"\r\n [required]=\"required\"\r\n (change)=\"onInputChange($event)\"\r\n (click)=\"onInputClick($event)\"\r\n />\r\n <div class=\"fwe-radio-checkmark\"></div>\r\n <div class=\"fwe-radio-label-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n</label>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
5447
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngRadioComponent, deps: [{ token: FngRadioGroupDirective, optional: true }, { token: i0.ChangeDetectorRef }, { token: FngUniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component }); }
5448
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngRadioComponent, isStandalone: true, selector: "fng-radio", inputs: { name: "name", id: "id", checked: "checked", value: "value", large: "large", labelPosition: "labelPosition", disabled: "disabled", required: "required" }, outputs: { change: "change" }, ngImport: i0, template: "<label\r\n [attr.for]=\"inputId\"\r\n [ngClass]=\"{\r\n 'fwe-radio': true,\r\n 'fwe-radio-label-below': labelPosition == 'below',\r\n 'fwe-radio-label-before': labelPosition == 'before',\r\n 'fwe-radio-lg': large\r\n }\"\r\n>\r\n <input\r\n type=\"radio\"\r\n [id]=\"inputId\"\r\n [checked]=\"checked\"\r\n [disabled]=\"disabled\"\r\n [attr.name]=\"name\"\r\n [attr.value]=\"value\"\r\n [required]=\"required\"\r\n (change)=\"onInputChange($event)\"\r\n (click)=\"onInputClick($event)\"\r\n />\r\n <div class=\"fwe-radio-checkmark\"></div>\r\n <div class=\"fwe-radio-label-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n</label>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
5451
5449
  }
5452
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngRadioComponent, decorators: [{
5450
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngRadioComponent, decorators: [{
5453
5451
  type: Component,
5454
5452
  args: [{ imports: [CommonModule], selector: 'fng-radio', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<label\r\n [attr.for]=\"inputId\"\r\n [ngClass]=\"{\r\n 'fwe-radio': true,\r\n 'fwe-radio-label-below': labelPosition == 'below',\r\n 'fwe-radio-label-before': labelPosition == 'before',\r\n 'fwe-radio-lg': large\r\n }\"\r\n>\r\n <input\r\n type=\"radio\"\r\n [id]=\"inputId\"\r\n [checked]=\"checked\"\r\n [disabled]=\"disabled\"\r\n [attr.name]=\"name\"\r\n [attr.value]=\"value\"\r\n [required]=\"required\"\r\n (change)=\"onInputChange($event)\"\r\n (click)=\"onInputClick($event)\"\r\n />\r\n <div class=\"fwe-radio-checkmark\"></div>\r\n <div class=\"fwe-radio-label-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n</label>\r\n" }]
5455
5453
  }], ctorParameters: () => [{ type: FngRadioGroupDirective, decorators: [{
@@ -5508,10 +5506,10 @@ class FngSegmentControlComponent {
5508
5506
  onInputClick(event) {
5509
5507
  event.stopPropagation();
5510
5508
  }
5511
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSegmentControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5512
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngSegmentControlComponent, isStandalone: true, selector: "fng-segment-control", inputs: { name: "name", value: "value", label: "label", icon: "icon", iconOnly: "iconOnly", checked: "checked", disabled: "disabled" }, outputs: { change: "change" }, viewQueries: [{ propertyName: "tpl", first: true, predicate: ["tpl"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template #tpl>\n <input\n (change)=\"onInputChange($event)\"\n (click)=\"onInputClick($event)\"\n class=\"fwe-segment-input\"\n type=\"radio\"\n [id]=\"id\"\n [name]=\"name\"\n [value]=\"value\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n />\n <label class=\"fwe-segment-label\" [for]=\"id\">\n @switch (viewMode) {\n @case ('icon') {\n <span class=\"fwe-sr-only\">{{ label }}</span>\n <i aria-hidden=\"true\" class=\"fwe-icon\" [ngClass]=\"icon\"></i>\n }\n @case ('text') {\n {{ label }}\n }\n @case ('icon-text') {\n <i aria-hidden=\"true\" class=\"fwe-icon\" [ngClass]=\"icon\"></i>{{ label }}\n }\n }\n </label>\n </ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
5509
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSegmentControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5510
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngSegmentControlComponent, isStandalone: true, selector: "fng-segment-control", inputs: { name: "name", value: "value", label: "label", icon: "icon", iconOnly: "iconOnly", checked: "checked", disabled: "disabled" }, outputs: { change: "change" }, viewQueries: [{ propertyName: "tpl", first: true, predicate: ["tpl"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template #tpl>\n <input\n (change)=\"onInputChange($event)\"\n (click)=\"onInputClick($event)\"\n class=\"fwe-segment-input\"\n type=\"radio\"\n [id]=\"id\"\n [name]=\"name\"\n [value]=\"value\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n />\n <label class=\"fwe-segment-label\" [for]=\"id\">\n @switch (viewMode) {\n @case ('icon') {\n <span class=\"fwe-sr-only\">{{ label }}</span>\n <i aria-hidden=\"true\" class=\"fwe-icon\" [ngClass]=\"icon\"></i>\n }\n @case ('text') {\n {{ label }}\n }\n @case ('icon-text') {\n <i aria-hidden=\"true\" class=\"fwe-icon\" [ngClass]=\"icon\"></i>{{ label }}\n }\n }\n </label>\n </ng-template>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
5513
5511
  }
5514
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSegmentControlComponent, decorators: [{
5512
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSegmentControlComponent, decorators: [{
5515
5513
  type: Component,
5516
5514
  args: [{ imports: [CommonModule], selector: 'fng-segment-control', encapsulation: ViewEncapsulation.None, template: "<ng-template #tpl>\n <input\n (change)=\"onInputChange($event)\"\n (click)=\"onInputClick($event)\"\n class=\"fwe-segment-input\"\n type=\"radio\"\n [id]=\"id\"\n [name]=\"name\"\n [value]=\"value\"\n [checked]=\"checked\"\n [disabled]=\"disabled\"\n />\n <label class=\"fwe-segment-label\" [for]=\"id\">\n @switch (viewMode) {\n @case ('icon') {\n <span class=\"fwe-sr-only\">{{ label }}</span>\n <i aria-hidden=\"true\" class=\"fwe-icon\" [ngClass]=\"icon\"></i>\n }\n @case ('text') {\n {{ label }}\n }\n @case ('icon-text') {\n <i aria-hidden=\"true\" class=\"fwe-icon\" [ngClass]=\"icon\"></i>{{ label }}\n }\n }\n </label>\n </ng-template>\n" }]
5517
5515
  }], propDecorators: { name: [{
@@ -5630,8 +5628,8 @@ class FngSegmentComponent {
5630
5628
  });
5631
5629
  }
5632
5630
  }
5633
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSegmentComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
5634
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngSegmentComponent, isStandalone: true, selector: "fng-segment", inputs: { legend: "legend", config: "config", value: "value" }, outputs: { fngChange: "fngChange", change: "change" }, providers: [
5631
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSegmentComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
5632
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngSegmentComponent, isStandalone: true, selector: "fng-segment", inputs: { legend: "legend", config: "config", value: "value" }, outputs: { fngChange: "fngChange", change: "change" }, providers: [
5635
5633
  {
5636
5634
  provide: NG_VALUE_ACCESSOR,
5637
5635
  useExisting: forwardRef(() => FngSegmentComponent),
@@ -5639,7 +5637,7 @@ class FngSegmentComponent {
5639
5637
  }
5640
5638
  ], queries: [{ propertyName: "controls", predicate: FngSegmentControlComponent, descendants: true }], viewQueries: [{ propertyName: "vc", first: true, predicate: ["vc"], descendants: true, read: ViewContainerRef }], usesOnChanges: true, ngImport: i0, template: "<fieldset\r\n class=\"fwe-segment\"\r\n [ngClass]=\"{\r\n 'fwe-segment-outline': config.outline,\r\n 'fwe-segment-icon': useIcon,\r\n 'fwe-segment-icon-text': useIconAndText\r\n }\"\r\n>\r\n <legend class=\"fwe-sr-only fwe-d-inline-block\">{{ legend }}</legend>\r\n <div class=\"fwe-segment-group\">\r\n <ng-container #vc></ng-container>\r\n </div>\r\n</fieldset>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
5641
5639
  }
5642
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSegmentComponent, decorators: [{
5640
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSegmentComponent, decorators: [{
5643
5641
  type: Component,
5644
5642
  args: [{ imports: [CommonModule], selector: 'fng-segment', encapsulation: ViewEncapsulation.None, providers: [
5645
5643
  {
@@ -5673,10 +5671,10 @@ class FngSelectOptionComponent {
5673
5671
  async update() {
5674
5672
  return await Promise.resolve(this.el);
5675
5673
  }
5676
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSelectOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5677
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngSelectOptionComponent, isStandalone: true, selector: "fng-select-option", inputs: { value: "value" }, viewQueries: [{ propertyName: "elementRef", first: true, predicate: ["root"], descendants: true }], ngImport: i0, template: "<span #root>\r\n <ng-content></ng-content>\r\n</span>\r\n", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
5674
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSelectOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5675
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngSelectOptionComponent, isStandalone: true, selector: "fng-select-option", inputs: { value: "value" }, viewQueries: [{ propertyName: "elementRef", first: true, predicate: ["root"], descendants: true }], ngImport: i0, template: "<span #root>\r\n <ng-content></ng-content>\r\n</span>\r\n", styles: [""], encapsulation: i0.ViewEncapsulation.None }); }
5678
5676
  }
5679
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSelectOptionComponent, decorators: [{
5677
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSelectOptionComponent, decorators: [{
5680
5678
  type: Component,
5681
5679
  args: [{ imports: [], selector: 'fng-select-option', encapsulation: ViewEncapsulation.None, template: "<span #root>\r\n <ng-content></ng-content>\r\n</span>\r\n" }]
5682
5680
  }], propDecorators: { value: [{
@@ -5711,10 +5709,10 @@ class FngChipTextPipe {
5711
5709
  });
5712
5710
  return chipText;
5713
5711
  }
5714
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngChipTextPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
5715
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.13", ngImport: i0, type: FngChipTextPipe, isStandalone: true, name: "fngChipText", pure: false }); }
5712
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngChipTextPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
5713
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: FngChipTextPipe, isStandalone: true, name: "fngChipText", pure: false }); }
5716
5714
  }
5717
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngChipTextPipe, decorators: [{
5715
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngChipTextPipe, decorators: [{
5718
5716
  type: Pipe,
5719
5717
  args: [{
5720
5718
  standalone: true,
@@ -5923,8 +5921,8 @@ class FngSelectComponent {
5923
5921
  isEmpty() {
5924
5922
  this.empty = !this.showOptions && (!this._value || '' === this._value);
5925
5923
  }
5926
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: i0.Renderer2 }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
5927
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngSelectComponent, isStandalone: true, selector: "fng-select", inputs: { disabled: "disabled", required: "required", multiple: "multiple", size: "size", options: "options", optionsValueKey: "optionsValueKey", optionsTextKey: "optionsTextKey", optionObjectAsValue: "optionObjectAsValue", error: "error", label: "label", hideLabel: "hideLabel", hint: "hint", resetOption: "resetOption" }, outputs: { fngChange: "fngChange" }, host: { listeners: { "blur": "markAsTouched()" }, properties: { "id": "this.id" } }, providers: [
5924
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: i0.Renderer2 }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
5925
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngSelectComponent, isStandalone: true, selector: "fng-select", inputs: { disabled: "disabled", required: "required", multiple: "multiple", size: "size", options: "options", optionsValueKey: "optionsValueKey", optionsTextKey: "optionsTextKey", optionObjectAsValue: "optionObjectAsValue", error: "error", label: "label", hideLabel: "hideLabel", hint: "hint", resetOption: "resetOption" }, outputs: { fngChange: "fngChange" }, host: { listeners: { "blur": "markAsTouched()" }, properties: { "id": "this.id" } }, providers: [
5928
5926
  {
5929
5927
  provide: NG_VALUE_ACCESSOR,
5930
5928
  useExisting: forwardRef(() => FngSelectComponent),
@@ -5932,7 +5930,7 @@ class FngSelectComponent {
5932
5930
  }
5933
5931
  ], queries: [{ propertyName: "fngSelectOptions", predicate: FngSelectOptionComponent }], viewQueries: [{ propertyName: "elementRef", first: true, predicate: ["div"], descendants: true }], ngImport: i0, template: "<div #div class=\"fwe-select-wrapper\" [class.fwe-disabled]=\"disabled\" [class.fng-hide-label]=\"hideLabel\">\n <div\n class=\"fwe-select\"\n (click)=\"toggle()\"\n cdkOverlayOrigin\n #trigger=\"cdkOverlayOrigin\"\n [class.fwe-focus]=\"showOptions\"\n [class.fwe-required]=\"required\"\n [class.fwe-disabled]=\"disabled\"\n [class.fwe-pty]=\"empty\"\n >\n <div class=\"fwe-select-content\">\n @if (!multiple) {\n {{ value != null && value | fngChipText: options:optionsValueKey:optionsTextKey }}\n } @else {\n <div class=\"fwe-chip-container\">\n @for (v of value; track v) {\n <div\n class=\"fwe-chip chip-text-truncate fwe-pr-4\"\n [style.max-width.px]=\"triggerWidth\"\n [title]=\"v | fngChipText: options:optionsValueKey:optionsTextKey\"\n >\n {{ v | fngChipText: options:optionsValueKey:optionsTextKey }}\n <span class=\"chip-removable\" (click)=\"removeChip($event, v)\"></span>\n </div>\n }\n </div>\n }\n </div>\n </div>\n <ng-template\n cdkConnectedOverlay\n cdkConnectedOverlayHasBackdrop\n cdkConnectedOverlayBackdropClass=\"cdk-overlay-transparent-backdrop\"\n [cdkConnectedOverlayOrigin]=\"trigger\"\n [cdkConnectedOverlayMinWidth]=\"triggerWidth\"\n [cdkConnectedOverlayOpen]=\"showOptions\"\n [cdkConnectedOverlayPanelClass]=\"selectPanelClasses\"\n (backdropClick)=\"close()\"\n (detach)=\"close()\"\n >\n <div class=\"fng-select-panel-wrap\">\n <ul class=\"fwe-select-options-container\">\n @if (resetOption != null && !multiple) {\n <li class=\"fwe-select-option\" (click)=\"select(null, $event)\">{{ resetOption }}</li>\n }\n @for (option of options; track option; let i = $index) {\n <li\n class=\"fwe-select-option\"\n (click)=\"select(getOptionValue(i), $event)\"\n [title]=\"getOptionText(i) || option?.text\"\n >\n <span class=\"fwe-select-option-content\">\n @if (multiple) {\n <span\n class=\"fng-select-pseudo-checkbox\"\n [ngClass]=\"{ 'fng-select-pseudo-checkbox-checked': checked.get(getOptionValue(i)) === 'checked' }\"\n ></span>\n }\n @if (hasProjectedOptions) {\n <span [innerHTML]=\"projectedHtml[i]\"></span>\n } @else {\n {{ getOptionText(i) || option?.text }}\n }\n </span>\n </li>\n }\n </ul>\n </div>\n </ng-template>\n <label class=\"fwe-select-label\" [for]=\"id\" [class.fwe-sr-only]=\"hideLabel\">{{ label }}</label>\n @if (hint) {\n <div class=\"fwe-select-description\">\n {{ hint }}\n </div>\n }\n @if (error) {\n <div class=\"fwe-select-invalid\">\n {{ error }}\n </div>\n }\n</div>\n<div class=\"fwe-d-none\">\n <ng-content></ng-content>\n</div>\n", styles: [".fng-select-panel-open .fng-select-panel{opacity:1!important}fng-select{width:auto}fng-select.ng-invalid:not(.ng-pristine) .fwe-select:hover{border-color:var(--fwe-red)}fng-select.ng-invalid:not(.ng-pristine) .fwe-select.fwe-required~.fwe-select-invalid{display:block}fng-select.ng-invalid:not(.ng-pristine) .fwe-select.fwe-required~.fwe-select-description{display:none}.fng-select-panel{opacity:0!important}.fng-select-panel.fng-select-panel-options-3 .fwe-select-options-container{max-height:162px}.fng-select-panel.fng-select-panel-options-4 .fwe-select-options-container{max-height:210px}.fng-select-panel.fng-select-panel-options-5 .fwe-select-options-container{max-height:258px}.fng-select-panel.fng-select-panel-options-6 .fwe-select-options-container{max-height:306px}.fng-select-panel.fng-select-panel-options-7 .fwe-select-options-container{max-height:354px}.fng-select-panel.fng-select-panel-options-8 .fwe-select-options-container{max-height:402px}.fng-select-panel.fng-select-panel-options-9 .fwe-select-options-container{max-height:450px}.fng-select-panel.fng-select-panel-options-10 .fwe-select-options-container{max-height:498px}@-moz-document url-prefix(){.fng-select-panel .fwe-select-options-container{scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) transparent}}@media (pointer: fine){.fng-select-panel .fwe-select-options-container::-webkit-scrollbar{width:14px}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar-track{background:transparent}.fng-select-panel .fwe-select-options-container::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:8px}}.fng-select-panel-wrap{flex-basis:100%}.fwe-select-options-container{position:relative;top:4px;left:0;max-height:258px;min-width:calc(100% + 0px)!important;max-width:280px;overflow:auto;font-size:var(--fwe-font-size-base);background-color:var(--fwe-white);border-radius:4px;padding:8px;margin:0;border:1px solid var(--fwe-gray-200);box-shadow:0 1px 4px #00000029;list-style:none;outline:0}.fwe-select-options-container .fwe-select-option{position:relative;line-height:24px;padding:12px 8px;min-height:24px;cursor:pointer}.fwe-select-options-container .fwe-select-option:hover{background-color:var(--fwe-gray-100)}.fwe-select-options-container .fwe-select-option:last-child{border-bottom:none}.fwe-select-options-container .fwe-select-option .fwe-select-option-content{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%;line-height:24px;min-height:24px}.fng-select-pseudo-checkbox{width:16px;height:16px;border-radius:2px;cursor:pointer;display:inline-block;vertical-align:middle;box-sizing:border-box;position:relative;flex-shrink:0;color:var(--fwe-control-border);border:1px solid;transition:none;margin-right:12px;top:-1px}.fng-select-pseudo-checkbox:after{color:var(--fwe-white);position:absolute;display:block;opacity:0;content:\"\";border-bottom:2px solid currentColor;transition:opacity 90ms cubic-bezier(0,0,.2,.1)}.fng-select-pseudo-checkbox.fng-select-pseudo-checkbox-checked{background:var(--fwe-caerul);border:1px solid var(--fwe-caerul)}.fng-select-pseudo-checkbox.fng-select-pseudo-checkbox-checked:after{top:3px;left:2px;width:8px;height:3px;border-left:2px solid currentColor;transform:rotate(-45deg);opacity:1;box-sizing:content-box}.chip-text-truncate{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-removable:after{position:absolute;right:5px;top:4px;color:var(--fwe-text);font-family:var(--fwe-font-family-icons-16);font-size:var(--fwe-font-size-base);content:\"\\ea1c\";line-height:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fwe-select-wrapper{display:flex;width:inherit;min-width:48px}.fwe-select-wrapper:before{bottom:unset;top:24px}.fwe-select-wrapper.fng-hide-label{margin-top:18px}.fwe-select-wrapper.fng-hide-label:before{top:6px}.fwe-select-wrapper.fwe-disabled:before{color:var(--fwe-text-disabled);background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0Ij48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMiAxMikiPjxnIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMiAtMTIpIj48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDApIj48cmVjdCB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIGZpbGw9Im5vbmUiLz48L2c+PGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNS41OTggOC41MTMpIj48cGF0aCBkPSJNNS42MzYsOS4xOTRsNi4yNzgsNi41NjQsNi4yNzgtNi41NjQtLjctLjczTDExLjkxNCwxNC4zLDYuMzMzLDguNDY0WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTUuNjM2IC04LjQ2NCkiIGZpbGw9IiNiOWJhYmIiLz48L2c+PC9nPjwvZz48L3N2Zz4=)}.fwe-select-wrapper .fwe-select{cursor:pointer;height:unset;min-height:33px}.fwe-select-wrapper .fwe-select .fwe-select-content{padding-right:24px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.5rem}.fwe-select-wrapper .fwe-select.fwe-required:not(.fwe-disabled)~.fwe-select-label:after{position:relative;left:3px;display:inline-block;content:\"*\"}.fwe-select-wrapper .fwe-select.fwe-disabled{cursor:default;border-color:var(--fwe-control-disabled)!important}.fwe-select-wrapper .fwe-select.fwe-disabled~.fwe-select-label{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-select-content{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-chip{color:var(--fwe-text-disabled);border:1px solid var(--fwe-control-disabled);pointer-events:none}.fwe-select-wrapper .fwe-select.fwe-disabled .fwe-chip .chip-removable:after{color:var(--fwe-text-disabled)}.fwe-select-wrapper .fwe-select-label:empty~.fwe-select-options-container,.fwe-select-wrapper .fwe-select-label.fwe-sr-only~.fwe-select-options-container{top:38px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1$2.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: i1$2.CdkOverlayOrigin, selector: "[cdk-overlay-origin], [overlay-origin], [cdkOverlayOrigin]", exportAs: ["cdkOverlayOrigin"] }, { kind: "pipe", type: FngChipTextPipe, name: "fngChipText" }], encapsulation: i0.ViewEncapsulation.None }); }
5934
5932
  }
5935
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSelectComponent, decorators: [{
5933
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSelectComponent, decorators: [{
5936
5934
  type: Component,
5937
5935
  args: [{ imports: [CommonModule, FngChipTextPipe, OverlayModule], selector: 'fng-select', encapsulation: ViewEncapsulation.None, providers: [
5938
5936
  {
@@ -6053,8 +6051,8 @@ class FngSliderComponent {
6053
6051
  this.numberoffset = 8 - (stringValue || '1').length * 6;
6054
6052
  }
6055
6053
  }
6056
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSliderComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
6057
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngSliderComponent, isStandalone: true, selector: "fng-slider", inputs: { label: "label", min: "min", max: "max", step: "step", digitsInfo: "digitsInfo", locale: "locale", hideValue: "hideValue", disabled: "disabled", value: "value" }, host: { listeners: { "window:resize": "onResize()" } }, providers: [
6054
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSliderComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
6055
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngSliderComponent, isStandalone: true, selector: "fng-slider", inputs: { label: "label", min: "min", max: "max", step: "step", digitsInfo: "digitsInfo", locale: "locale", hideValue: "hideValue", disabled: "disabled", value: "value" }, host: { listeners: { "window:resize": "onResize()" } }, providers: [
6058
6056
  {
6059
6057
  provide: NG_VALUE_ACCESSOR,
6060
6058
  useExisting: forwardRef(() => FngSliderComponent),
@@ -6062,7 +6060,7 @@ class FngSliderComponent {
6062
6060
  }
6063
6061
  ], ngImport: i0, template: "<label class=\"fwe-slider\" [class.fng-slider-label]=\"label != null\">\n @if (label) {\n <span>{{ label }}</span>\n }\n <input\n type=\"range\"\n class=\"fwe-slider-input\"\n [disabled]=\"disabled\"\n [attr.min]=\"min\"\n [attr.max]=\"max\"\n [attr.step]=\"step\"\n autocomplete=\"off\"\n [value]=\"value\"\n (input)=\"onInput($event)\"\n />\n @if (left != null && !hideValue) {\n <span class=\"fng-slider-value\" [style.left]=\"left + numberoffset + 'px'\">{{\n value | number: digitsInfo : locale\n }}</span>\n }\n <div class=\"fng-slider-indicator\" [class.disabled]=\"disabled\" [style.width]=\"left + 'px'\"></div>\n </label>\n", styles: ["label.fwe-slider{display:block;height:56px;position:relative}label.fwe-slider.fng-slider-label{height:83px}label.fwe-slider .fng-slider-value{color:var(--fwe-text);font-size:var(--fwe-font-size-base);margin-bottom:0;position:absolute;bottom:0;-webkit-user-select:none;user-select:none}label.fwe-slider .fng-slider-indicator{height:2px;background:var(--fwe-hero);position:absolute;left:0;bottom:38px}label.fwe-slider .fng-slider-indicator.disabled{background:var(--fwe-border)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "pipe", type: i1$1.DecimalPipe, name: "number" }], encapsulation: i0.ViewEncapsulation.None }); }
6064
6062
  }
6065
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSliderComponent, decorators: [{
6063
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSliderComponent, decorators: [{
6066
6064
  type: Component,
6067
6065
  args: [{ imports: [CommonModule], selector: 'fng-slider', providers: [
6068
6066
  {
@@ -6171,8 +6169,8 @@ class FngSwitchComponent {
6171
6169
  this.change.emit(this.checked);
6172
6170
  }
6173
6171
  }
6174
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSwitchComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
6175
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.13", type: FngSwitchComponent, isStandalone: true, selector: "fng-switch", inputs: { name: "name", large: "large", labelPosition: "labelPosition", id: "id", checked: "checked", disabled: "disabled", value: "value", required: "required" }, outputs: { change: "change" }, providers: [
6172
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSwitchComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
6173
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.4", type: FngSwitchComponent, isStandalone: true, selector: "fng-switch", inputs: { name: "name", large: "large", labelPosition: "labelPosition", id: "id", checked: "checked", disabled: "disabled", value: "value", required: "required" }, outputs: { change: "change" }, providers: [
6176
6174
  {
6177
6175
  provide: NG_VALUE_ACCESSOR,
6178
6176
  useExisting: forwardRef(() => FngSwitchComponent),
@@ -6180,7 +6178,7 @@ class FngSwitchComponent {
6180
6178
  }
6181
6179
  ], ngImport: i0, template: "<label\r\n [ngClass]=\"{\r\n 'fwe-switch-container': true,\r\n 'fwe-checked': checked,\r\n 'fwe-disabled': disabled,\r\n 'fwe-switch-label-below': labelPosition == 'below',\r\n 'fwe-switch-label-before': labelPosition == 'before',\r\n 'fwe-switch-lg': large\r\n }\"\r\n>\r\n <input\r\n title=\"checkbox\"\r\n type=\"checkbox\"\r\n [checked]=\"checked\"\r\n [attr.value]=\"value\"\r\n [attr.name]=\"name\"\r\n (change)=\"onInteractionEvent($event)\"\r\n (click)=\"onInputClick($event)\"\r\n [disabled]=\"disabled\"\r\n />\r\n <div class=\"fwe-switch-track\"></div>\r\n <div class=\"fwe-switch-label-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n</label>\r\n", styles: [".fwe-switch-container.fwe-switch-label-before{flex-direction:row-reverse;justify-content:flex-end}.fwe-switch-container.fwe-switch-label-before .fwe-switch-label-content{margin-left:0;margin-right:8px}.fwe-switch-container.fwe-switch-label-below{flex-direction:column}.fwe-switch-container.fwe-switch-label-below .fwe-switch-label-content{margin:8px 0 0}.fwe-switch-container.fwe-switch-label-below .fwe-switch-track{margin-top:0;margin-bottom:0}.fwe-switch-container{cursor:pointer;display:flex;align-items:center;white-space:nowrap;vertical-align:middle;width:100%;-webkit-user-select:none;user-select:none}.fwe-switch-container .fwe-switch-track{min-width:32px;box-sizing:border-box;position:relative;height:16px;width:32px;border:none;background-color:var(--fwe-control-border);border-radius:8px;margin-top:4px;margin-bottom:4px}.fwe-switch-container .fwe-switch-track:after{content:\"\";position:absolute;top:3px;left:3px;height:10px;width:10px;background:var(--fwe-white);border-radius:50%;transition:left .2s}.fwe-switch-container.fwe-switch-lg .fwe-switch-track{height:24px;width:48px;border-radius:12px;margin-top:0;margin-bottom:0}.fwe-switch-container.fwe-switch-lg .fwe-switch-track:after{top:5px;left:5px;height:14px;width:14px}.fwe-switch-container.fwe-switch-lg.fwe-checked .fwe-switch-track:after{left:29px}.fwe-switch-container .fwe-switch-label-content{line-height:24px;margin-left:8px}.fwe-switch-container input[type=checkbox]{height:0px;width:0px;opacity:0;cursor:pointer}.fwe-switch-container:hover .fwe-switch-track{background-color:var(--fwe-control-border-hover)}.fwe-switch-container:active .fwe-switch-track{background-color:var(--fwe-control-border-active)}.fwe-switch-container.fwe-checked .fwe-switch-track{background-color:var(--fwe-caerul)}.fwe-switch-container.fwe-checked .fwe-switch-track:after{left:19px}.fwe-switch-container:hover.fwe-checked .fwe-switch-track{background-color:var(--fwe-hero-hover)}.fwe-switch-container:active.fwe-checked .fwe-switch-track{background-color:var(--fwe-hero-active)}.fwe-switch-container.fwe-disabled .fwe-switch-track{background-color:var(--fwe-control-disabled);cursor:not-allowed}.fwe-switch-container.fwe-disabled.fwe-checked .fwe-switch-track{background-color:var(--fwe-hero-bg);cursor:not-allowed}.fwe-switch-container.fwe-disabled{cursor:not-allowed}.fwe-switch-container.fwe-disabled .fwe-switch-label-content{color:var(--fwe-text-disabled);cursor:not-allowed}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
6182
6180
  }
6183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngSwitchComponent, decorators: [{
6181
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngSwitchComponent, decorators: [{
6184
6182
  type: Component,
6185
6183
  args: [{ imports: [CommonModule], selector: 'fng-switch', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
6186
6184
  {
@@ -6343,8 +6341,8 @@ class FngTextAreaComponent {
6343
6341
  setDisabledState(isDisabled) {
6344
6342
  this.disabled = isDisabled;
6345
6343
  }
6346
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6347
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngTextAreaComponent, isStandalone: true, selector: "fng-text-area", inputs: { label: "label", readonly: "readonly", placeholder: "placeholder", tabindex: "tabindex", name: "name", disabled: "disabled", value: "value", required: "required", error: "error", hint: "hint", rows: "rows", maxlength: "maxlength" }, providers: [
6344
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6345
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngTextAreaComponent, isStandalone: true, selector: "fng-text-area", inputs: { label: "label", readonly: "readonly", placeholder: "placeholder", tabindex: "tabindex", name: "name", disabled: "disabled", value: "value", required: "required", error: "error", hint: "hint", rows: "rows", maxlength: "maxlength" }, providers: [
6348
6346
  {
6349
6347
  provide: NG_VALUE_ACCESSOR,
6350
6348
  useExisting: forwardRef(() => FngTextAreaComponent),
@@ -6352,7 +6350,7 @@ class FngTextAreaComponent {
6352
6350
  }
6353
6351
  ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<label class=\"fwe-input-text\">\n <textarea\n #inputElement\n [class]=\"'fwe-row-' + rows\"\n [disabled]=\"disabled\"\n [required]=\"required === true || null\"\n [attr.readonly]=\"readonly === true || null\"\n [attr.placeholder]=\"placeholder || null\"\n [attr.name]=\"name || null\"\n [attr.tabindex]=\"tabindex\"\n [class.fng-has-value]=\"value != null && value !== ''\"\n autocomplete=\"off\"\n (focus)=\"onFocus()\"\n (input)=\"onInput($event)\"\n (blur)=\"onBlur()\"\n >{{ value }}</textarea\n >\n <span class=\"fwe-input-text-label\">{{ label }}</span>\n @if (hint) {\n <span class=\"fwe-input-text-info\">{{ hint }}</span>\n }\n @if (error) {\n <span class=\"fwe-input-text-invalid\">{{ error }}</span>\n }\n @if (maxlength > 0 && value != null) {\n <span class=\"fwe-input-text-count\">{{ value.length }} / {{ maxlength }}</span>\n }\n </label>\n", styles: ["fng-text-area.ng-invalid.ng-dirty label.fwe-input-text textarea{border:1px solid var(--fwe-red)!important;box-shadow:none;outline:none}fng-text-area.ng-invalid.ng-dirty label.fwe-input-text textarea:disabled{border:1px solid var(--fwe-control-disabled)!important}fng-text-area.ng-invalid.ng-dirty label.fwe-input-text textarea:disabled~.fwe-input-text-label,fng-text-area.ng-invalid.ng-dirty label.fwe-input-text textarea:disabled~.fwe-input-text-invalid,fng-text-area.ng-invalid.ng-dirty label.fwe-input-text textarea:disabled~.fwe-input-text-info{color:var(--fwe-text-disabled)}fng-text-area.ng-invalid.ng-dirty label.fwe-input-text .fwe-input-text-info{display:none!important}fng-text-area.ng-invalid.ng-dirty label.fwe-input-text .fwe-input-text-invalid{display:block!important}label.fwe-input-text .fwe-input-text-count{display:block;line-height:var(--fwe-line-height-base);position:absolute;right:0;bottom:0;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
6354
6352
  }
6355
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTextAreaComponent, decorators: [{
6353
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTextAreaComponent, decorators: [{
6356
6354
  type: Component,
6357
6355
  args: [{ imports: [], selector: 'fng-text-area', providers: [
6358
6356
  {
@@ -6420,10 +6418,10 @@ class FngValueAccessorBaseDirective {
6420
6418
  setDisabledState(isDisabled) {
6421
6419
  this.disabled = isDisabled;
6422
6420
  }
6423
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngValueAccessorBaseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6424
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.13", type: FngValueAccessorBaseDirective, isStandalone: true, inputs: { disabled: "disabled" }, ngImport: i0 }); }
6421
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngValueAccessorBaseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6422
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.4", type: FngValueAccessorBaseDirective, isStandalone: true, inputs: { disabled: "disabled" }, ngImport: i0 }); }
6425
6423
  }
6426
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngValueAccessorBaseDirective, decorators: [{
6424
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngValueAccessorBaseDirective, decorators: [{
6427
6425
  type: Directive
6428
6426
  }], propDecorators: { disabled: [{
6429
6427
  type: Input
@@ -6655,8 +6653,8 @@ class FngTextEditorComponent extends FngValueAccessorBaseDirective {
6655
6653
  // set a placeholder for tab entity to avoid that quill removes it
6656
6654
  return value.replace(/&#9;/gi, '###tab###');
6657
6655
  }
6658
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTextEditorComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
6659
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.13", type: FngTextEditorComponent, isStandalone: true, selector: "fng-text-editor", inputs: { config: "config", modules: "modules", label: "label", readOnly: "readOnly", maxLength: "maxLength", error: "error", hint: "hint", value: "value" }, outputs: { fngChange: "fngChange", change: "change" }, providers: [
6656
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTextEditorComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
6657
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.4", type: FngTextEditorComponent, isStandalone: true, selector: "fng-text-editor", inputs: { config: "config", modules: "modules", label: "label", readOnly: "readOnly", maxLength: "maxLength", error: "error", hint: "hint", value: "value" }, outputs: { fngChange: "fngChange", change: "change" }, providers: [
6660
6658
  {
6661
6659
  provide: NG_VALUE_ACCESSOR,
6662
6660
  useExisting: forwardRef(() => FngTextEditorComponent),
@@ -6664,7 +6662,7 @@ class FngTextEditorComponent extends FngValueAccessorBaseDirective {
6664
6662
  }
6665
6663
  ], viewQueries: [{ propertyName: "btnBold", first: true, predicate: ["btnBold"], descendants: true }, { propertyName: "btnItalic", first: true, predicate: ["btnItalic"], descendants: true }, { propertyName: "btnUnderline", first: true, predicate: ["btnUnderline"], descendants: true }, { propertyName: "btnAlignCenter", first: true, predicate: ["btnAlignCenter"], descendants: true }, { propertyName: "btnAlignRight", first: true, predicate: ["btnAlignRight"], descendants: true }, { propertyName: "btnLink", first: true, predicate: ["btnLink"], descendants: true }, { propertyName: "btnUl", first: true, predicate: ["btnUl"], descendants: true }, { propertyName: "btnOl", first: true, predicate: ["btnOl"], descendants: true }, { propertyName: "btnImage", first: true, predicate: ["btnImage"], descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<label class=\"fwe-input-text\" [class.fwe-disabled]=\"disabled\">\n <div class=\"fng-editor-toolbar\" [id]=\"'editor-toolbar-' + id\">\n <span class=\"ql-formats fwe-d-none\">\n <select class=\"ql-size\" aria-hidden=\"true\">\n <option value=\"small\"></option>\n <option selected></option>\n <option value=\"large\"></option>\n <option value=\"huge\"></option>\n </select>\n </span>\n <span class=\"ql-formats fng-editor-toolbar-buttons-container fwe-mr-3\">\n @if (config?.toolbar?.bold) {\n <button type=\"button\" #btnBold class=\"ql-bold fwe-d-none action-bold\" aria-hidden=\"true\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-button\"\n [class.fwe-mr-3]=\"config?.toolbar?.underline || config?.toolbar?.italic\"\n (click)=\"delegate($event, 'bold')\"\n [disabled]=\"disabled\"\n >\n <div class=\"fng-button-text fng-text-bold\">B</div>\n </button>\n }\n @if (config?.toolbar?.italic) {\n <button type=\"button\" #btnItalic class=\"ql-italic fwe-d-none action-italic\" aria-hidden=\"true\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-button\"\n [class.fwe-mr-3]=\"config?.toolbar?.underline\"\n (click)=\"delegate($event, 'italic')\"\n [disabled]=\"disabled\"\n >\n <div class=\"fng-button-text fng-text-italic\">I</div>\n </button>\n }\n @if (config?.toolbar?.underline) {\n <button type=\"button\" #btnUnderline class=\"ql-underline fwe-d-none action-underline\" aria-hidden=\"true\"></button>\n <button type=\"button\" class=\"fwe-btn fng-button\" (click)=\"delegate($event, 'underline')\" [disabled]=\"disabled\">\n <div class=\"fng-button-text fng-text-underline\">U</div>\n </button>\n }\n\n @if (!hideDivider('typo')) {\n <div class=\"fng-divider-y fwe-mx-4\"></div>\n }\n\n @if (config?.toolbar?.alignCenter) {\n <button type=\"button\" #btnAlignCenter class=\"ql-align fwe-d-none action-align-center\" aria-hidden=\"true\" value=\"center\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n [class.fwe-mr-3]=\"config?.toolbar?.alignRight\"\n (click)=\"delegate($event, 'align-center')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fng-icon-svg-text-align-center\" [class.fng-gray]=\"disabled\"></i>\n </button>\n }\n\n @if (config?.toolbar?.alignRight) {\n <button type=\"button\" #btnAlignRight class=\"ql-align fwe-d-none action-align-right\" aria-hidden=\"true\" value=\"right\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n (click)=\"delegate($event, 'align-right')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fng-icon-svg-text-align-right\" [class.fng-gray]=\"disabled\"></i>\n </button>\n }\n\n @if (!hideDivider('text-align')) {\n <div class=\"fng-divider-y fwe-mx-4\"></div>\n }\n\n @if (config?.toolbar?.bulletList) {\n <button type=\"button\" #btnUl class=\"ql-list fwe-d-none action-ul\" aria-hidden=\"true\" value=\"bullet\"></button>\n <button\n type=\"button\"\n class=\"fwe-btn fng-btn-toolbar-list fng-button\"\n [class.fwe-mr-3]=\"config?.toolbar?.orderedList\"\n (click)=\"delegate($event, 'ul')\"\n [disabled]=\"disabled\"\n >\n <i class=\"fng-icon-svg-list-view\"></i>\n </button>\n }\n @if (config?.toolbar?.orderedList) {\n <button type=\"button\" #btnOl class=\"ql-list fwe-d-none action-ol\" aria-hidden=\"true\" value=\"ordered\"></button>\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'ol')\" [disabled]=\"disabled\">\n <i class=\"fng-icon-svg-enumeration\"></i>\n </button>\n }\n\n @if (!hideDivider('lists')) {\n <div class=\"fng-divider-y fwe-mx-4\"></div>\n }\n\n @if (config?.toolbar?.image) {\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'image')\" [disabled]=\"disabled\">\n <i class=\"fng-icon-svg-image\"></i>\n </button>\n <button type=\"button\" #btnImage class=\"ql-image fwe-d-none\" aria-hidden=\"true\"></button>\n }\n\n @if (!hideDivider('image')) {\n <div class=\"fng-divider-y fwe-mx-4\"></div>\n }\n\n @if (config?.toolbar?.link) {\n <button type=\"button\" class=\"fwe-btn fng-btn-toolbar-list fng-button\" (click)=\"delegate($event, 'link')\" [disabled]=\"disabled\">\n <i class=\"fng-icon-svg-link\"></i>\n </button>\n <button type=\"button\" #btnLink class=\"ql-link fwe-d-none\" aria-hidden=\"true\"></button>\n }\n </span>\n </div>\n <div class=\"fng-editor-container\" [id]=\"'editor-container-' + id\">\n <div class=\"fng-editor\" [id]=\"'editor-' + id\"></div>\n </div>\n <span class=\"fwe-input-text-label\" [id]=\"'editor-label-' + id\">{{ label }}</span>\n @if (hint) {\n <span class=\"fng-text-editor-info\">{{ hint }}</span>\n }\n @if (error) {\n <span class=\"fng-text-editor-invalid\">{{ error }}</span>\n }\n @if (maxLength > 0 && value != null) {\n <span class=\"fwe-input-text-count\">{{ currentLength() }} / {{ maxLength }}</span>\n }\n</label>\n", styles: ["@charset \"UTF-8\";.ql-container{box-sizing:border-box;font-family:Helvetica,Arial,sans-serif;font-size:13px;height:100%;margin:0;position:relative}.ql-container.ql-disabled .ql-tooltip{visibility:hidden}.ql-container:not(.ql-disabled) li[data-list=checked]>.ql-ui,.ql-container:not(.ql-disabled) li[data-list=unchecked]>.ql-ui{cursor:pointer}.ql-clipboard{left:-100000px;height:1px;overflow-y:hidden;position:absolute;top:50%}.ql-clipboard p{margin:0;padding:0}.ql-editor{box-sizing:border-box;counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9;line-height:1.42;height:100%;outline:none;overflow-y:auto;padding:12px 15px;tab-size:4;-moz-tab-size:4;text-align:left;white-space:pre-wrap;word-wrap:break-word}.ql-editor>*{cursor:text}.ql-editor p,.ql-editor ol,.ql-editor pre,.ql-editor blockquote,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{margin:0;padding:0}@supports (counter-set: none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-set:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set: none){.ql-editor p,.ql-editor h1,.ql-editor h2,.ql-editor h3,.ql-editor h4,.ql-editor h5,.ql-editor h6{counter-reset:list-0 list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor table{border-collapse:collapse}.ql-editor td{border:1px solid #000;padding:2px 5px}.ql-editor ol{padding-left:1.5em}.ql-editor li{list-style-type:none;padding-left:1.5em;position:relative}.ql-editor li>.ql-ui:before{display:inline-block;margin-left:-1.5em;margin-right:.3em;text-align:right;white-space:nowrap;width:1.2em}.ql-editor li[data-list=checked]>.ql-ui,.ql-editor li[data-list=unchecked]>.ql-ui{color:#777}.ql-editor li[data-list=bullet]>.ql-ui:before{content:\"\\2022\"}.ql-editor li[data-list=checked]>.ql-ui:before{content:\"\\2611\"}.ql-editor li[data-list=unchecked]>.ql-ui:before{content:\"\\2610\"}@supports (counter-set: none){.ql-editor li[data-list]{counter-set:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set: none){.ql-editor li[data-list]{counter-reset:list-1 list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered]{counter-increment:list-0}.ql-editor li[data-list=ordered]>.ql-ui:before{content:counter(list-0,decimal) \". \"}.ql-editor li[data-list=ordered].ql-indent-1{counter-increment:list-1}.ql-editor li[data-list=ordered].ql-indent-1>.ql-ui:before{content:counter(list-1,lower-alpha) \". \"}@supports (counter-set: none){.ql-editor li[data-list].ql-indent-1{counter-set:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set: none){.ql-editor li[data-list].ql-indent-1{counter-reset:list-2 list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-2{counter-increment:list-2}.ql-editor li[data-list=ordered].ql-indent-2>.ql-ui:before{content:counter(list-2,lower-roman) \". \"}@supports (counter-set: none){.ql-editor li[data-list].ql-indent-2{counter-set:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set: none){.ql-editor li[data-list].ql-indent-2{counter-reset:list-3 list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-3{counter-increment:list-3}.ql-editor li[data-list=ordered].ql-indent-3>.ql-ui:before{content:counter(list-3,decimal) \". \"}@supports (counter-set: none){.ql-editor li[data-list].ql-indent-3{counter-set:list-4 list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set: none){.ql-editor li[data-list].ql-indent-3{counter-reset:list-4 list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-4{counter-increment:list-4}.ql-editor li[data-list=ordered].ql-indent-4>.ql-ui:before{content:counter(list-4,lower-alpha) \". \"}@supports (counter-set: none){.ql-editor li[data-list].ql-indent-4{counter-set:list-5 list-6 list-7 list-8 list-9}}@supports not (counter-set: none){.ql-editor li[data-list].ql-indent-4{counter-reset:list-5 list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-5{counter-increment:list-5}.ql-editor li[data-list=ordered].ql-indent-5>.ql-ui:before{content:counter(list-5,lower-roman) \". \"}@supports (counter-set: none){.ql-editor li[data-list].ql-indent-5{counter-set:list-6 list-7 list-8 list-9}}@supports not (counter-set: none){.ql-editor li[data-list].ql-indent-5{counter-reset:list-6 list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-6{counter-increment:list-6}.ql-editor li[data-list=ordered].ql-indent-6>.ql-ui:before{content:counter(list-6,decimal) \". \"}@supports (counter-set: none){.ql-editor li[data-list].ql-indent-6{counter-set:list-7 list-8 list-9}}@supports not (counter-set: none){.ql-editor li[data-list].ql-indent-6{counter-reset:list-7 list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-7{counter-increment:list-7}.ql-editor li[data-list=ordered].ql-indent-7>.ql-ui:before{content:counter(list-7,lower-alpha) \". \"}@supports (counter-set: none){.ql-editor li[data-list].ql-indent-7{counter-set:list-8 list-9}}@supports not (counter-set: none){.ql-editor li[data-list].ql-indent-7{counter-reset:list-8 list-9}}.ql-editor li[data-list=ordered].ql-indent-8{counter-increment:list-8}.ql-editor li[data-list=ordered].ql-indent-8>.ql-ui:before{content:counter(list-8,lower-roman) \". \"}@supports (counter-set: none){.ql-editor li[data-list].ql-indent-8{counter-set:list-9}}@supports not (counter-set: none){.ql-editor li[data-list].ql-indent-8{counter-reset:list-9}}.ql-editor li[data-list=ordered].ql-indent-9{counter-increment:list-9}.ql-editor li[data-list=ordered].ql-indent-9>.ql-ui:before{content:counter(list-9,decimal) \". \"}.ql-editor .ql-indent-1:not(.ql-direction-rtl){padding-left:3em}.ql-editor li.ql-indent-1:not(.ql-direction-rtl){padding-left:4.5em}.ql-editor .ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:3em}.ql-editor li.ql-indent-1.ql-direction-rtl.ql-align-right{padding-right:4.5em}.ql-editor .ql-indent-2:not(.ql-direction-rtl){padding-left:6em}.ql-editor li.ql-indent-2:not(.ql-direction-rtl){padding-left:7.5em}.ql-editor .ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:6em}.ql-editor li.ql-indent-2.ql-direction-rtl.ql-align-right{padding-right:7.5em}.ql-editor .ql-indent-3:not(.ql-direction-rtl){padding-left:9em}.ql-editor li.ql-indent-3:not(.ql-direction-rtl){padding-left:10.5em}.ql-editor .ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:9em}.ql-editor li.ql-indent-3.ql-direction-rtl.ql-align-right{padding-right:10.5em}.ql-editor .ql-indent-4:not(.ql-direction-rtl){padding-left:12em}.ql-editor li.ql-indent-4:not(.ql-direction-rtl){padding-left:13.5em}.ql-editor .ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:12em}.ql-editor li.ql-indent-4.ql-direction-rtl.ql-align-right{padding-right:13.5em}.ql-editor .ql-indent-5:not(.ql-direction-rtl){padding-left:15em}.ql-editor li.ql-indent-5:not(.ql-direction-rtl){padding-left:16.5em}.ql-editor .ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:15em}.ql-editor li.ql-indent-5.ql-direction-rtl.ql-align-right{padding-right:16.5em}.ql-editor .ql-indent-6:not(.ql-direction-rtl){padding-left:18em}.ql-editor li.ql-indent-6:not(.ql-direction-rtl){padding-left:19.5em}.ql-editor .ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:18em}.ql-editor li.ql-indent-6.ql-direction-rtl.ql-align-right{padding-right:19.5em}.ql-editor .ql-indent-7:not(.ql-direction-rtl){padding-left:21em}.ql-editor li.ql-indent-7:not(.ql-direction-rtl){padding-left:22.5em}.ql-editor .ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:21em}.ql-editor li.ql-indent-7.ql-direction-rtl.ql-align-right{padding-right:22.5em}.ql-editor .ql-indent-8:not(.ql-direction-rtl){padding-left:24em}.ql-editor li.ql-indent-8:not(.ql-direction-rtl){padding-left:25.5em}.ql-editor .ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:24em}.ql-editor li.ql-indent-8.ql-direction-rtl.ql-align-right{padding-right:25.5em}.ql-editor .ql-indent-9:not(.ql-direction-rtl){padding-left:27em}.ql-editor li.ql-indent-9:not(.ql-direction-rtl){padding-left:28.5em}.ql-editor .ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:27em}.ql-editor li.ql-indent-9.ql-direction-rtl.ql-align-right{padding-right:28.5em}.ql-editor li.ql-direction-rtl{padding-right:1.5em}.ql-editor li.ql-direction-rtl>.ql-ui:before{margin-left:.3em;margin-right:-1.5em;text-align:left}.ql-editor table{table-layout:fixed;width:100%}.ql-editor table td{outline:none}.ql-editor .ql-code-block-container{font-family:monospace}.ql-editor .ql-video{display:block;max-width:100%}.ql-editor .ql-video.ql-align-center{margin:0 auto}.ql-editor .ql-video.ql-align-right{margin:0 0 0 auto}.ql-editor .ql-bg-black{background-color:#000}.ql-editor .ql-bg-red{background-color:#e60000}.ql-editor .ql-bg-orange{background-color:#f90}.ql-editor .ql-bg-yellow{background-color:#ff0}.ql-editor .ql-bg-green{background-color:#008a00}.ql-editor .ql-bg-blue{background-color:#06c}.ql-editor .ql-bg-purple{background-color:#93f}.ql-editor .ql-color-white{color:#fff}.ql-editor .ql-color-red{color:#e60000}.ql-editor .ql-color-orange{color:#f90}.ql-editor .ql-color-yellow{color:#ff0}.ql-editor .ql-color-green{color:#008a00}.ql-editor .ql-color-blue{color:#06c}.ql-editor .ql-color-purple{color:#93f}.ql-editor .ql-font-serif{font-family:Georgia,Times New Roman,serif}.ql-editor .ql-font-monospace{font-family:Monaco,Courier New,monospace}.ql-editor .ql-size-small{font-size:.75em}.ql-editor .ql-size-large{font-size:1.5em}.ql-editor .ql-size-huge{font-size:2.5em}.ql-editor .ql-direction-rtl{direction:rtl;text-align:inherit}.ql-editor .ql-align-center{text-align:center}.ql-editor .ql-align-justify{text-align:justify}.ql-editor .ql-align-right{text-align:right}.ql-editor .ql-ui{position:absolute}.ql-editor.ql-blank:before{color:#0009;content:attr(data-placeholder);font-style:italic;left:15px;pointer-events:none;position:absolute;right:15px}.ql-snow.ql-toolbar:after,.ql-snow .ql-toolbar:after{clear:both;content:\"\";display:table}.ql-snow.ql-toolbar button,.ql-snow .ql-toolbar button{background:none;border:none;cursor:pointer;display:inline-block;float:left;height:24px;padding:3px 5px;width:28px}.ql-snow.ql-toolbar button svg,.ql-snow .ql-toolbar button svg{float:left;height:100%}.ql-snow.ql-toolbar button:active:hover,.ql-snow .ql-toolbar button:active:hover{outline:none}.ql-snow.ql-toolbar input.ql-image[type=file],.ql-snow .ql-toolbar input.ql-image[type=file]{display:none}.ql-snow.ql-toolbar button:hover,.ql-snow .ql-toolbar button:hover,.ql-snow.ql-toolbar button:focus,.ql-snow .ql-toolbar button:focus,.ql-snow.ql-toolbar button.ql-active,.ql-snow .ql-toolbar button.ql-active,.ql-snow.ql-toolbar .ql-picker-label:hover,.ql-snow .ql-toolbar .ql-picker-label:hover,.ql-snow.ql-toolbar .ql-picker-label.ql-active,.ql-snow .ql-toolbar .ql-picker-label.ql-active,.ql-snow.ql-toolbar .ql-picker-item:hover,.ql-snow .ql-toolbar .ql-picker-item:hover,.ql-snow.ql-toolbar .ql-picker-item.ql-selected,.ql-snow .ql-toolbar .ql-picker-item.ql-selected{color:#06c}.ql-snow.ql-toolbar button:hover .ql-fill,.ql-snow .ql-toolbar button:hover .ql-fill,.ql-snow.ql-toolbar button:focus .ql-fill,.ql-snow .ql-toolbar button:focus .ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-fill,.ql-snow.ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:focus .ql-stroke.ql-fill,.ql-snow.ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar button.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke.ql-fill,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke.ql-fill{fill:#06c}.ql-snow.ql-toolbar button:hover .ql-stroke,.ql-snow .ql-toolbar button:hover .ql-stroke,.ql-snow.ql-toolbar button:focus .ql-stroke,.ql-snow .ql-toolbar button:focus .ql-stroke,.ql-snow.ql-toolbar button.ql-active .ql-stroke,.ql-snow .ql-toolbar button.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke,.ql-snow.ql-toolbar button:hover .ql-stroke-miter,.ql-snow .ql-toolbar button:hover .ql-stroke-miter,.ql-snow.ql-toolbar button:focus .ql-stroke-miter,.ql-snow .ql-toolbar button:focus .ql-stroke-miter,.ql-snow.ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar button.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-label.ql-active .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item:hover .ql-stroke-miter,.ql-snow.ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter,.ql-snow .ql-toolbar .ql-picker-item.ql-selected .ql-stroke-miter{stroke:#06c}@media (pointer: coarse){.ql-snow.ql-toolbar button:hover:not(.ql-active),.ql-snow .ql-toolbar button:hover:not(.ql-active){color:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-fill,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke.ql-fill{fill:#444}.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke,.ql-snow.ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter,.ql-snow .ql-toolbar button:hover:not(.ql-active) .ql-stroke-miter{stroke:#444}}.ql-snow,.ql-snow *{box-sizing:border-box}.ql-snow .ql-hidden{display:none}.ql-snow .ql-out-bottom,.ql-snow .ql-out-top{visibility:hidden}.ql-snow .ql-tooltip{position:absolute;transform:translateY(10px)}.ql-snow .ql-tooltip a{cursor:pointer;text-decoration:none}.ql-snow .ql-tooltip.ql-flip{transform:translateY(-10px)}.ql-snow .ql-formats{display:inline-block;vertical-align:middle}.ql-snow .ql-formats:after{clear:both;content:\"\";display:table}.ql-snow .ql-stroke{fill:none;stroke:#444;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.ql-snow .ql-stroke-miter{fill:none;stroke:#444;stroke-miterlimit:10;stroke-width:2}.ql-snow .ql-fill,.ql-snow .ql-stroke.ql-fill{fill:#444}.ql-snow .ql-empty{fill:none}.ql-snow .ql-even{fill-rule:evenodd}.ql-snow .ql-thin,.ql-snow .ql-stroke.ql-thin{stroke-width:1}.ql-snow .ql-transparent{opacity:.4}.ql-snow .ql-direction svg:last-child{display:none}.ql-snow .ql-direction.ql-active svg:last-child{display:inline}.ql-snow .ql-direction.ql-active svg:first-child{display:none}.ql-snow .ql-editor h1{font-size:2em}.ql-snow .ql-editor h2{font-size:1.5em}.ql-snow .ql-editor h3{font-size:1.17em}.ql-snow .ql-editor h4{font-size:1em}.ql-snow .ql-editor h5{font-size:.83em}.ql-snow .ql-editor h6{font-size:.67em}.ql-snow .ql-editor a{text-decoration:underline}.ql-snow .ql-editor blockquote{border-left:4px solid #ccc;margin-bottom:5px;margin-top:5px;padding-left:16px}.ql-snow .ql-editor code,.ql-snow .ql-editor .ql-code-block-container{background-color:#f0f0f0;border-radius:3px}.ql-snow .ql-editor .ql-code-block-container{margin-bottom:5px;margin-top:5px;padding:5px 10px}.ql-snow .ql-editor code{font-size:85%;padding:2px 4px}.ql-snow .ql-editor .ql-code-block-container{background-color:#23241f;color:#f8f8f2;overflow:visible}.ql-snow .ql-editor img{max-width:100%}.ql-snow .ql-picker{color:#444;display:inline-block;float:left;font-size:14px;font-weight:500;height:24px;position:relative;vertical-align:middle}.ql-snow .ql-picker-label{cursor:pointer;display:inline-block;height:100%;padding-left:8px;padding-right:2px;position:relative;width:100%}.ql-snow .ql-picker-label:before{display:inline-block;line-height:22px}.ql-snow .ql-picker-options{background-color:#fff;display:none;min-width:100%;padding:4px 8px;position:absolute;white-space:nowrap}.ql-snow .ql-picker-options .ql-picker-item{cursor:pointer;display:block;padding-bottom:5px;padding-top:5px}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:#ccc;z-index:2}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-fill{fill:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-label .ql-stroke{stroke:#ccc}.ql-snow .ql-picker.ql-expanded .ql-picker-options{display:block;margin-top:-1px;top:100%;z-index:1}.ql-snow .ql-color-picker,.ql-snow .ql-icon-picker{width:28px}.ql-snow .ql-color-picker .ql-picker-label,.ql-snow .ql-icon-picker .ql-picker-label{padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-label svg,.ql-snow .ql-icon-picker .ql-picker-label svg{right:4px}.ql-snow .ql-icon-picker .ql-picker-options{padding:4px 0}.ql-snow .ql-icon-picker .ql-picker-item{height:24px;width:24px;padding:2px 4px}.ql-snow .ql-color-picker .ql-picker-options{padding:3px 5px;width:152px}.ql-snow .ql-color-picker .ql-picker-item{border:1px solid transparent;float:left;height:16px;margin:2px;padding:0;width:16px}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{position:absolute;margin-top:-9px;right:0;top:50%;width:18px}.ql-snow .ql-picker.ql-header .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-font .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-size .ql-picker-label[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-label]:not([data-label=\"\"]):before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-label]:not([data-label=\"\"]):before{content:attr(data-label)}.ql-snow .ql-picker.ql-header{width:98px}.ql-snow .ql-picker.ql-header .ql-picker-label:before,.ql-snow .ql-picker.ql-header .ql-picker-item:before{content:\"Normal\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"1\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]:before{content:\"Heading 1\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"2\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]:before{content:\"Heading 2\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"3\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]:before{content:\"Heading 3\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"4\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]:before{content:\"Heading 4\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"5\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]:before{content:\"Heading 5\"}.ql-snow .ql-picker.ql-header .ql-picker-label[data-value=\"6\"]:before,.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]:before{content:\"Heading 6\"}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"1\"]:before{font-size:2em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"2\"]:before{font-size:1.5em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"3\"]:before{font-size:1.17em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"4\"]:before{font-size:1em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"5\"]:before{font-size:.83em}.ql-snow .ql-picker.ql-header .ql-picker-item[data-value=\"6\"]:before{font-size:.67em}.ql-snow .ql-picker.ql-font{width:108px}.ql-snow .ql-picker.ql-font .ql-picker-label:before,.ql-snow .ql-picker.ql-font .ql-picker-item:before{content:\"Sans Serif\"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=serif]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{content:\"Serif\"}.ql-snow .ql-picker.ql-font .ql-picker-label[data-value=monospace]:before,.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{content:\"Monospace\"}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=serif]:before{font-family:Georgia,Times New Roman,serif}.ql-snow .ql-picker.ql-font .ql-picker-item[data-value=monospace]:before{font-family:Monaco,Courier New,monospace}.ql-snow .ql-picker.ql-size{width:98px}.ql-snow .ql-picker.ql-size .ql-picker-label:before,.ql-snow .ql-picker.ql-size .ql-picker-item:before{content:\"Normal\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=small]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{content:\"Small\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=large]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{content:\"Large\"}.ql-snow .ql-picker.ql-size .ql-picker-label[data-value=huge]:before,.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{content:\"Huge\"}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=small]:before{font-size:10px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=large]:before{font-size:18px}.ql-snow .ql-picker.ql-size .ql-picker-item[data-value=huge]:before{font-size:32px}.ql-snow .ql-color-picker.ql-background .ql-picker-item{background-color:#fff}.ql-snow .ql-color-picker.ql-color .ql-picker-item{background-color:#000}.ql-code-block-container{position:relative}.ql-code-block-container .ql-ui{right:5px;top:5px}.ql-toolbar.ql-snow{border:1px solid #ccc;box-sizing:border-box;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;padding:8px}.ql-toolbar.ql-snow .ql-formats{margin-right:15px}.ql-toolbar.ql-snow .ql-picker-label{border:1px solid transparent}.ql-toolbar.ql-snow .ql-picker-options{border:1px solid transparent;box-shadow:#0003 0 2px 8px}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label,.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-options{border-color:#ccc}.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item.ql-selected,.ql-toolbar.ql-snow .ql-color-picker .ql-picker-item:hover{border-color:#000}.ql-toolbar.ql-snow+.ql-container.ql-snow{border-top:0}.ql-snow .ql-tooltip{background-color:#fff;border:1px solid #ccc;box-shadow:0 0 5px #ddd;color:#444;padding:5px 12px;white-space:nowrap}.ql-snow .ql-tooltip:before{content:\"Visit URL:\";line-height:26px;margin-right:8px}.ql-snow .ql-tooltip input[type=text]{display:none;border:1px solid #ccc;font-size:13px;height:26px;margin:0;padding:3px 5px;width:170px}.ql-snow .ql-tooltip a.ql-preview{display:inline-block;max-width:200px;overflow-x:hidden;text-overflow:ellipsis;vertical-align:top}.ql-snow .ql-tooltip a.ql-action:after{border-right:1px solid #ccc;content:\"Edit\";margin-left:16px;padding-right:8px}.ql-snow .ql-tooltip a.ql-remove:before{content:\"Remove\";margin-left:8px}.ql-snow .ql-tooltip a{line-height:26px}.ql-snow .ql-tooltip.ql-editing a.ql-preview,.ql-snow .ql-tooltip.ql-editing a.ql-remove{display:none}.ql-snow .ql-tooltip.ql-editing input[type=text]{display:inline-block}.ql-snow .ql-tooltip.ql-editing a.ql-action:after{border-right:0;content:\"Save\";padding-right:0}.ql-snow .ql-tooltip[data-mode=link]:before{content:\"Enter link:\"}.ql-snow .ql-tooltip[data-mode=formula]:before{content:\"Enter formula:\"}.ql-snow .ql-tooltip[data-mode=video]:before{content:\"Enter video:\"}.ql-snow a{color:#06c}.ql-container.ql-snow{border:1px solid #ccc}fng-text-editor .fng-divider-y{display:inline-flex;flex:0 0 1px;height:24px;width:1px;background-color:var(--fwe-gray-400)}fng-text-editor .fng-editor{min-height:100%}fng-text-editor .fng-editor-container{order:2;height:160px;min-height:100%;overflow-y:auto;padding-top:4px;padding-bottom:4px;padding-left:8px;border:var(--fwe-control-border) solid 1px}@-moz-document url-prefix(){fng-text-editor .fng-editor-container{scrollbar-width:thin;scrollbar-color:var(--fwe-control-scrollbar) transparent}}@media (pointer: fine){fng-text-editor .fng-editor-container::-webkit-scrollbar{width:14px}fng-text-editor .fng-editor-container::-webkit-scrollbar-track{background:transparent}fng-text-editor .fng-editor-container::-webkit-scrollbar-thumb{overflow:visible;background-color:var(--fwe-control-scrollbar);border:3px solid rgba(242,243,245,0);-webkit-background-clip:padding-box;background-clip:padding-box;border-radius:8px}}fng-text-editor .fng-editor-container:hover{border-color:var(--fwe-hero)}fng-text-editor .fng-editor-container[contenteditable=true]{outline:none}fng-text-editor .fng-editor-container[contenteditable=true]:focus{border-color:var(--fwe-hero)}fng-text-editor label.fwe-input-text{line-height:24px}fng-text-editor label.fwe-input-text .fwe-input-text-count{display:inline-block;line-height:var(--fwe-line-height-base);position:absolute;right:0;bottom:0;z-index:1;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}fng-text-editor label.fwe-input-text .fwe-input-text-label{order:-1}fng-text-editor label.fwe-input-text .fng-text-editor-info{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-block;line-height:var(--fwe-line-height-base);position:absolute;left:0;top:unset;bottom:0;z-index:2;color:var(--fwe-text-disabled);font-size:var(--fwe-font-size-small)}fng-text-editor label.fwe-input-text.fwe-disabled{color:var(--fwe-text-disabled)}fng-text-editor label.fwe-input-text.fwe-disabled .fwe-input-text-label{color:var(--fwe-text-disabled)}fng-text-editor label.fwe-input-text.fwe-disabled .fng-editor-container{border-color:var(--fwe-control-disabled)!important}fng-text-editor label.fwe-input-text.fwe-disabled .fng-editor-container:hover{border-color:var(--fwe-control-disabled)!important}fng-text-editor label.fwe-input-text.fwe-disabled .fng-divider-y{background-color:var(--fwe-text-disabled)}fng-text-editor .fng-text-editor-invalid{display:none;line-height:1.5;position:absolute;left:0;bottom:0;z-index:2;color:var(--fwe-red);font-size:var(--fwe-font-size-small)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor{box-shadow:none;outline:none}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled{border-bottom:1px solid var(--fwe-control-disabled)!important}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fwe-input-text-label,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-invalid,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-info{color:var(--fwe-text-disabled)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fwe-input-text-label:after,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-invalid:after,fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor:disabled~.fng-text-editor-info:after{color:var(--fwe-text-disabled)}fng-text-editor.ng-dirty.ng-invalid label.fwe-input-text .fng-editor-container{border-color:var(--fwe-red)}fng-text-editor.ng-dirty.ng-invalid .fng-text-editor-info{display:none!important}fng-text-editor.ng-dirty.ng-invalid .fng-text-editor-invalid{display:block!important}fng-text-editor .fng-text-bold{font-weight:var(--fwe-font-weight-bold)}fng-text-editor .fng-text-italic{font-style:italic}fng-text-editor .fng-text-underline{text-decoration:underline}fng-text-editor .fng-icon-svg-list-view{display:inline-block;min-width:16px;height:16px;background-repeat:no-repeat;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCiAgPGcgaWQ9Imxpc3Rfdmlld18xNi1nIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg4IDgpIj4NCiAgICA8ZyBpZD0ibGlzdF92aWV3XzE2LWctMiIgZGF0YS1uYW1lPSJsaXN0X3ZpZXdfMTYtZyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTggLTgpIj4NCiAgICAgIDxnIGlkPSJ3aGl0ZV9iYWNrZ3JvdW5kIiBkYXRhLW5hbWU9IndoaXRlIGJhY2tncm91bmQiPg0KICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI0OTY2IiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNDk2NiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJub25lIi8+DQogICAgICA8L2c+DQogICAgICA8ZyBpZD0iY29udGVudCI+DQogICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGVfMjQ5NjciIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIDI0OTY3IiB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxIDMpIiBmaWxsPSIjMzMzIi8+DQogICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGVfMjQ5NjgiIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIDI0OTY4IiB3aWR0aD0iMTAiIGhlaWdodD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNSAzKSIgZmlsbD0iIzMzMyIvPg0KICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI0OTY5IiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNDk2OSIgd2lkdGg9IjIiIGhlaWdodD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSA3KSIgZmlsbD0iIzMzMyIvPg0KICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI0OTcwIiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNDk3MCIgd2lkdGg9IjEwIiBoZWlnaHQ9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUgNykiIGZpbGw9IiMzMzMiLz4NCiAgICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZV8yNDk3MSIgZGF0YS1uYW1lPSJSZWN0YW5nbGUgMjQ5NzEiIHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEgMTEpIiBmaWxsPSIjMzMzIi8+DQogICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGVfMjQ5NzIiIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIDI0OTcyIiB3aWR0aD0iMTAiIGhlaWdodD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNSAxMSkiIGZpbGw9IiMzMzMiLz4NCiAgICAgIDwvZz4NCiAgICA8L2c+DQogIDwvZz4NCjwvc3ZnPg0K)}fng-text-editor .fng-icon-svg-list-view.fng-gray{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCiAgPGcgaWQ9Imxpc3Rfdmlld18xNi1nIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg4IDgpIj4NCiAgICA8ZyBpZD0ibGlzdF92aWV3XzE2LWctMiIgZGF0YS1uYW1lPSJsaXN0X3ZpZXdfMTYtZyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTggLTgpIj4NCiAgICAgIDxnIGlkPSJ3aGl0ZV9iYWNrZ3JvdW5kIiBkYXRhLW5hbWU9IndoaXRlIGJhY2tncm91bmQiPg0KICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI0OTgwIiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNDk4MCIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJub25lIi8+DQogICAgICA8L2c+DQogICAgICA8ZyBpZD0iY29udGVudCI+DQogICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGVfMjQ5ODEiIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIDI0OTgxIiB3aWR0aD0iMiIgaGVpZ2h0PSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxIDMpIiBmaWxsPSIjYjliYWJiIi8+DQogICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGVfMjQ5ODIiIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIDI0OTgyIiB3aWR0aD0iMTAiIGhlaWdodD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNSAzKSIgZmlsbD0iI2I5YmFiYiIvPg0KICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI0OTgzIiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNDk4MyIgd2lkdGg9IjIiIGhlaWdodD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMSA3KSIgZmlsbD0iI2I5YmFiYiIvPg0KICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI0OTg0IiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNDk4NCIgd2lkdGg9IjEwIiBoZWlnaHQ9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUgNykiIGZpbGw9IiNiOWJhYmIiLz4NCiAgICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZV8yNDk4NSIgZGF0YS1uYW1lPSJSZWN0YW5nbGUgMjQ5ODUiIHdpZHRoPSIyIiBoZWlnaHQ9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEgMTEpIiBmaWxsPSIjYjliYWJiIi8+DQogICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGVfMjQ5ODYiIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIDI0OTg2IiB3aWR0aD0iMTAiIGhlaWdodD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNSAxMSkiIGZpbGw9IiNiOWJhYmIiLz4NCiAgICAgIDwvZz4NCiAgICA8L2c+DQogIDwvZz4NCjwvc3ZnPg0K)}fng-text-editor .fng-icon-svg-enumeration{display:inline-block;min-width:16px;height:16px;background-repeat:no-repeat;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCiAgPGcgaWQ9ImVudW1lcmF0aW9uXzE2LWciIHRyYW5zZm9ybT0idHJhbnNsYXRlKDggOCkiPg0KICAgIDxnIGlkPSJlbnVtZXJhdGlvbl8xNi1nLTIiIGRhdGEtbmFtZT0iZW51bWVyYXRpb25fMTYtZyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTggLTgpIj4NCiAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGVfMjQ5OTQiIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIDI0OTk0IiB3aWR0aD0iMTAiIGhlaWdodD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNiAzKSIgZmlsbD0iIzMzMyIvPg0KICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZV8yNDk5NSIgZGF0YS1uYW1lPSJSZWN0YW5nbGUgMjQ5OTUiIHdpZHRoPSIxMCIgaGVpZ2h0PSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2IDcpIiBmaWxsPSIjMzMzIi8+DQogICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI0OTk2IiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNDk5NiIgd2lkdGg9IjEwIiBoZWlnaHQ9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYgMTEpIiBmaWxsPSIjMzMzIi8+DQogICAgICA8cGF0aCBpZD0iUGF0aF8zNjM2NSIgZGF0YS1uYW1lPSJQYXRoIDM2MzY1IiBkPSJNMi4xNCwxMS45NjlsLjItLjFjLjMtLjE4Ljc1Ny0uNDEzLDEuMDI3LS42MTVhMS40NzUsMS40NzUsMCwwLDAsLjcwNS0xLjIxNWMwLS43MzUtLjU3LTEuMjMtMS40NjMtMS4yM2EyLjY4NCwyLjY4NCwwLDAsMC0xLjg5Ljc0MmwuNi42MjJhMS41OCwxLjU4LDAsMCwxLDEuMDItLjQ4Yy4zNTIsMCwuNi4xNzMuNi41LDAsLjM0NS0uMjYyLjY4My0xLjMsMS4yNjgtLjQ0My4yNTUtLjUxLjI1NS0uNjM3LjM5VjEzSDMuOTkybC4yMTgtMVMyLjMsMTEuOTQ2LDIuMTQsMTEuOTY5WiIgZmlsbD0iIzMzMyIvPg0KICAgICAgPHBhdGggaWQ9IlBhdGhfMzYzNjYiIGRhdGEtbmFtZT0iUGF0aCAzNjM2NiIgZD0iTTIsNC4xMThWNkgxVjdINFY2SDNWM0gyLjNMLjgwNiw0LjAxN2wuMjYzLjUyM0E0LjYxNCw0LjYxNCwwLDAsMCwyLDQuMTE4WiIgZmlsbD0iIzMzMyIvPg0KICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZV8yNDk5NyIgZGF0YS1uYW1lPSJSZWN0YW5nbGUgMjQ5OTciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0ibm9uZSIvPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+DQo=)}fng-text-editor .fng-icon-svg-enumeration.fng-gray{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCiAgPGcgaWQ9ImVudW1lcmF0aW9uXzE2LWciIHRyYW5zZm9ybT0idHJhbnNsYXRlKDggOCkiPg0KICAgIDxnIGlkPSJlbnVtZXJhdGlvbl8xNi1nLTIiIGRhdGEtbmFtZT0iZW51bWVyYXRpb25fMTYtZyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTggLTgpIj4NCiAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGVfMjQ5OTQiIGRhdGEtbmFtZT0iUmVjdGFuZ2xlIDI0OTk0IiB3aWR0aD0iMTAiIGhlaWdodD0iMiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNiAzKSIgZmlsbD0iI2I5YmFiYiIvPg0KICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZV8yNDk5NSIgZGF0YS1uYW1lPSJSZWN0YW5nbGUgMjQ5OTUiIHdpZHRoPSIxMCIgaGVpZ2h0PSIyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2IDcpIiBmaWxsPSIjYjliYWJiIi8+DQogICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI0OTk2IiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNDk5NiIgd2lkdGg9IjEwIiBoZWlnaHQ9IjIiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDYgMTEpIiBmaWxsPSIjYjliYWJiIi8+DQogICAgICA8cGF0aCBpZD0iUGF0aF8zNjM2NSIgZGF0YS1uYW1lPSJQYXRoIDM2MzY1IiBkPSJNMi4xNCwxMS45NjlsLjItLjFjLjMtLjE4Ljc1Ny0uNDEzLDEuMDI3LS42MTVhMS40NzUsMS40NzUsMCwwLDAsLjcwNS0xLjIxNWMwLS43MzUtLjU3LTEuMjMtMS40NjMtMS4yM2EyLjY4NCwyLjY4NCwwLDAsMC0xLjg5Ljc0MmwuNi42MjJhMS41OCwxLjU4LDAsMCwxLDEuMDItLjQ4Yy4zNTIsMCwuNi4xNzMuNi41LDAsLjM0NS0uMjYyLjY4My0xLjMsMS4yNjgtLjQ0My4yNTUtLjUxLjI1NS0uNjM3LjM5VjEzSDMuOTkybC4yMTgtMVMyLjMsMTEuOTQ2LDIuMTQsMTEuOTY5WiIgZmlsbD0iI2I5YmFiYiIvPg0KICAgICAgPHBhdGggaWQ9IlBhdGhfMzYzNjYiIGRhdGEtbmFtZT0iUGF0aCAzNjM2NiIgZD0iTTIsNC4xMThWNkgxVjdINFY2SDNWM0gyLjNMLjgwNiw0LjAxN2wuMjYzLjUyM0E0LjYxNCw0LjYxNCwwLDAsMCwyLDQuMTE4WiIgZmlsbD0iI2I5YmFiYiIvPg0KICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZV8yNDk5NyIgZGF0YS1uYW1lPSJSZWN0YW5nbGUgMjQ5OTciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0ibm9uZSIvPg0KICAgIDwvZz4NCiAgPC9nPg0KPC9zdmc+DQo=)}fng-text-editor .fng-icon-svg-image{display:inline-block;min-width:16px;height:16px;background-repeat:no-repeat;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCiAgPGcgaWQ9ImltYWdlXzE2LWciIHRyYW5zZm9ybT0idHJhbnNsYXRlKDggOCkiPg0KICAgIDxnIGlkPSJpbWFnZV8xNi1nLTIiIGRhdGEtbmFtZT0iaW1hZ2VfMTYtZyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTggLTgpIj4NCiAgICAgIDxnIGlkPSJ3aGl0ZV9iYWNrZ3JvdW5kIiBkYXRhLW5hbWU9IndoaXRlIGJhY2tncm91bmQiPg0KICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI1MDAyIiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNTAwMiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJub25lIi8+DQogICAgICA8L2c+DQogICAgICA8ZyBpZD0iY29udGVudCI+DQogICAgICAgIDxwYXRoIGlkPSJQYXRoXzM2MzY5IiBkYXRhLW5hbWU9IlBhdGggMzYzNjkiIGQ9Ik0xNCwzVjEzSDJWM0gxNG0xLTFIMVYxNEgxNVoiIGZpbGw9IiMzMzMiLz4NCiAgICAgICAgPGNpcmNsZSBpZD0iRWxsaXBzZV8xMzU1IiBkYXRhLW5hbWU9IkVsbGlwc2UgMTM1NSIgY3g9IjEuNSIgY3k9IjEuNSIgcj0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzIDQpIiBmaWxsPSIjMzMzIi8+DQogICAgICAgIDxwYXRoIGlkPSJQYXRoXzM2MzcwIiBkYXRhLW5hbWU9IlBhdGggMzYzNzAiIGQ9Ik05LjUsN2wtMyw0TDUsOS41LDMsMTJIMTNaIiBmaWxsPSIjMzMzIi8+DQogICAgICA8L2c+DQogICAgPC9nPg0KICA8L2c+DQo8L3N2Zz4NCg==)}fng-text-editor .fng-icon-svg-image.fng-gray{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCiAgPGcgaWQ9ImltYWdlXzE2LWciIHRyYW5zZm9ybT0idHJhbnNsYXRlKDggOCkiPg0KICAgIDxnIGlkPSJpbWFnZV8xNi1nLTIiIGRhdGEtbmFtZT0iaW1hZ2VfMTYtZyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTggLTgpIj4NCiAgICAgIDxnIGlkPSJ3aGl0ZV9iYWNrZ3JvdW5kIiBkYXRhLW5hbWU9IndoaXRlIGJhY2tncm91bmQiPg0KICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI1MDAyIiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNTAwMiIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJub25lIi8+DQogICAgICA8L2c+DQogICAgICA8ZyBpZD0iY29udGVudCI+DQogICAgICAgIDxwYXRoIGlkPSJQYXRoXzM2MzY5IiBkYXRhLW5hbWU9IlBhdGggMzYzNjkiIGQ9Ik0xNCwzVjEzSDJWM0gxNG0xLTFIMVYxNEgxNVoiIGZpbGw9IiNiOWJhYmIiLz4NCiAgICAgICAgPGNpcmNsZSBpZD0iRWxsaXBzZV8xMzU1IiBkYXRhLW5hbWU9IkVsbGlwc2UgMTM1NSIgY3g9IjEuNSIgY3k9IjEuNSIgcj0iMS41IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzIDQpIiBmaWxsPSIjYjliYWJiIi8+DQogICAgICAgIDxwYXRoIGlkPSJQYXRoXzM2MzcwIiBkYXRhLW5hbWU9IlBhdGggMzYzNzAiIGQ9Ik05LjUsN2wtMyw0TDUsOS41LDMsMTJIMTNaIiBmaWxsPSIjYjliYWJiIi8+DQogICAgICA8L2c+DQogICAgPC9nPg0KICA8L2c+DQo8L3N2Zz4NCg==)}fng-text-editor .fng-icon-svg-link{display:inline-block;min-width:16px;height:16px;background-repeat:no-repeat;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCiAgPGcgaWQ9ImxpbmtfMTYtZyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOCA4KSI+DQogICAgPGcgaWQ9ImxpbmtfMTYtZy0yIiBkYXRhLW5hbWU9ImxpbmtfMTYtZyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTggLTgpIj4NCiAgICAgIDxnIGlkPSJ3aGl0ZV9iYWNrZ3JvdW5kIiBkYXRhLW5hbWU9IndoaXRlIGJhY2tncm91bmQiPg0KICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI1MDA0IiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNTAwNCIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJub25lIi8+DQogICAgICA8L2c+DQogICAgICA8ZyBpZD0iY29udGVudCI+DQogICAgICAgIDxwYXRoIGlkPSJQYXRoXzM2MzczIiBkYXRhLW5hbWU9IlBhdGggMzYzNzMiIGQ9Ik01LjMsNy41MzdhMi40OCwyLjQ4LDAsMCwxLC43MzItMS43NjhMOS4yLDIuNmEyLjUsMi41LDAsMCwxLDMuNTM1LDBsLjE3Mi4xNzJhMi41LDIuNSwwLDAsMSwwLDMuNTM1bC0uNTg2LjU4Ni0uNzA3LS43MDdMMTIuMiw1LjZhMS41LDEuNSwwLDAsMCwwLTIuMTIxTDEyLjAyOSwzLjNhMS41LDEuNSwwLDAsMC0yLjEyMSwwTDYuNzM2LDYuNDc2YTEuNTM2LDEuNTM2LDAsMCwwLDAsMi4xMjFsLjU4Ni41ODYtLjcwNy43MDdMNi4wMjksOS4zQTIuNDgsMi40OCwwLDAsMSw1LjMsNy41MzdaIiBmaWxsPSIjMzMzIi8+DQogICAgICAgIDxwYXRoIGlkPSJQYXRoXzM2Mzc0IiBkYXRhLW5hbWU9IlBhdGggMzYzNzQiIGQ9Ik0yLjM2MiwxMS40NjJhMi40ODQsMi40ODQsMCwwLDEsLjczMi0xLjc2OGwuNTg2LS41ODYuNzA3LjcwN0wzLjgsMTAuNGExLjUzNSwxLjUzNSwwLDAsMCwwLDIuMTIxbC4xNzIuMTcyYTEuNSwxLjUsMCwwLDAsMi4xMjEsMGgwTDkuMjY1LDkuNTIyYTEuNTM2LDEuNTM2LDAsMCwwLDAtMi4xMjFsLS41ODYtLjU4Ni43MDctLjcwNy41ODYuNTg2YTIuNTU5LDIuNTU5LDAsMCwxLDAsMy41MzVMNi44LDEzLjRhMi41LDIuNSwwLDAsMS0zLjUzNCwwaDBsLS4xNzItLjE3MmEyLjQ4LDIuNDgsMCwwLDEtLjczMi0xLjc2OFoiIGZpbGw9IiMzMzMiLz4NCiAgICAgIDwvZz4NCiAgICA8L2c+DQogIDwvZz4NCjwvc3ZnPg0K)}fng-text-editor .fng-icon-svg-link.fng-gray{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCiAgPGcgaWQ9ImxpbmtfMTYtZyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOCA4KSI+DQogICAgPGcgaWQ9ImxpbmtfMTYtZy0yIiBkYXRhLW5hbWU9ImxpbmtfMTYtZyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTggLTgpIj4NCiAgICAgIDxnIGlkPSJ3aGl0ZV9iYWNrZ3JvdW5kIiBkYXRhLW5hbWU9IndoaXRlIGJhY2tncm91bmQiPg0KICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlXzI1MDA0IiBkYXRhLW5hbWU9IlJlY3RhbmdsZSAyNTAwNCIgd2lkdGg9IjE2IiBoZWlnaHQ9IjE2IiBmaWxsPSJub25lIi8+DQogICAgICA8L2c+DQogICAgICA8ZyBpZD0iY29udGVudCI+DQogICAgICAgIDxwYXRoIGlkPSJQYXRoXzM2MzczIiBkYXRhLW5hbWU9IlBhdGggMzYzNzMiIGQ9Ik01LjMsNy41MzdhMi40OCwyLjQ4LDAsMCwxLC43MzItMS43NjhMOS4yLDIuNmEyLjUsMi41LDAsMCwxLDMuNTM1LDBsLjE3Mi4xNzJhMi41LDIuNSwwLDAsMSwwLDMuNTM1bC0uNTg2LjU4Ni0uNzA3LS43MDdMMTIuMiw1LjZhMS41LDEuNSwwLDAsMCwwLTIuMTIxTDEyLjAyOSwzLjNhMS41LDEuNSwwLDAsMC0yLjEyMSwwTDYuNzM2LDYuNDc2YTEuNTM2LDEuNTM2LDAsMCwwLDAsMi4xMjFsLjU4Ni41ODYtLjcwNy43MDdMNi4wMjksOS4zQTIuNDgsMi40OCwwLDAsMSw1LjMsNy41MzdaIiBmaWxsPSIjYjliYWJiIi8+DQogICAgICAgIDxwYXRoIGlkPSJQYXRoXzM2Mzc0IiBkYXRhLW5hbWU9IlBhdGggMzYzNzQiIGQ9Ik0yLjM2MiwxMS40NjJhMi40ODQsMi40ODQsMCwwLDEsLjczMi0xLjc2OGwuNTg2LS41ODYuNzA3LjcwN0wzLjgsMTAuNGExLjUzNSwxLjUzNSwwLDAsMCwwLDIuMTIxbC4xNzIuMTcyYTEuNSwxLjUsMCwwLDAsMi4xMjEsMGgwTDkuMjY1LDkuNTIyYTEuNTM2LDEuNTM2LDAsMCwwLDAtMi4xMjFsLS41ODYtLjU4Ni43MDctLjcwNy41ODYuNTg2YTIuNTU5LDIuNTU5LDAsMCwxLDAsMy41MzVMNi44LDEzLjRhMi41LDIuNSwwLDAsMS0zLjUzNCwwaDBsLS4xNzItLjE3MmEyLjQ4LDIuNDgsMCwwLDEtLjczMi0xLjc2OFoiIGZpbGw9IiNiOWJhYmIiLz4NCiAgICAgIDwvZz4NCiAgICA8L2c+DQogIDwvZz4NCjwvc3ZnPg0K)}fng-text-editor .fng-icon-svg-text-align-center{width:12px;height:10px;background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(51, 51, 51)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M5,7h6V9H5Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-svg-text-align-center.fng-gray{background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(185, 186, 187)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M5,7h6V9H5Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-svg-text-align-right{width:12px;height:10px;background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(51, 51, 51)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M8,7h6V9H8Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-icon-svg-text-align-right.fng-gray{background:url('data:image/svg+xml;utf8,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"10\" fill=\"rgb(185, 186, 187)\" viewBox=\"0 0 12 10\"><path d=\"M2,3H14V5H2Z\" transform=\"translate(-2 -3)\"/><path d=\"M8,7h6V9H8Z\" transform=\"translate(-2 -3)\"/><path d=\"M2,11H14v2H2Z\" transform=\"translate(-2 -3)\"/></svg>')}fng-text-editor .fng-editor-container{background:#fff;padding-right:8px}fng-text-editor .ql-tooltip{z-index:var(--fwe-z-index-tooltip)}fng-text-editor .ql-editor{font-family:var(--fwe-font-family-sans-serif);font-size:var(--fwe-font-size-base);padding:0;min-height:72px;overflow-x:hidden}fng-text-editor .ql-editor p::selection,fng-text-editor .ql-editor strong::selection,fng-text-editor .ql-editor em::selection,fng-text-editor .ql-editor u::selection,fng-text-editor .ql-editor ul::selection,fng-text-editor .ql-editor ol::selection,fng-text-editor .ql-editor li::selection,fng-text-editor .ql-editor a::selection{background:var(--fwe-sucaerul)}fng-text-editor .ql-container.ql-snow{border:0;background-color:var(--fwe-white)}fng-text-editor .ql-container.ql-snow .ql-tooltip{transform:translate(160px,12px);color:var(--fwe-black);box-shadow:-1px 1px 4px -1px #3333;border:1px solid var(--fwe-gray-200)}fng-text-editor .ql-container.ql-snow .ql-tooltip input{border:1px solid var(--fwe-gray-200)}fng-text-editor .ql-container.ql-snow .ql-tooltip input::selection{background:var(--fwe-sucaerul)}fng-text-editor .ql-container.ql-snow a{color:var(--fwe-caerul)}fng-text-editor .ql-toolbar.ql-snow{border:0;padding:4px 0}fng-text-editor .ql-toolbar.ql-snow .ql-formats.fng-editor-toolbar-buttons-container{display:flex;align-items:center;flex-wrap:wrap}fng-text-editor .ql-toolbar.ql-snow button{line-height:normal;box-sizing:border-box;display:inline-flex;text-align:center;padding:0 8px;height:32px;min-height:unset;color:var(--fwe-black);background:none;border-radius:4px;cursor:pointer;border:none;width:unset;max-width:24px;justify-content:center;align-items:center;float:unset}@media (hover: hover) and (pointer: fine){fng-text-editor .ql-toolbar.ql-snow button:hover{background-color:var(--fwe-control-hover);color:var(--fwe-black)}}fng-text-editor .ql-toolbar.ql-snow button:active{background-color:var(--fwe-control-active)}fng-text-editor .ql-toolbar.ql-snow button.ql-active+button{background-color:var(--fwe-control)}fng-text-editor .ql-toolbar.ql-snow button.fng-btn-toolbar-list{padding:0 6px}fng-text-editor .ql-toolbar.ql-snow button.fng-button i{pointer-events:none}fng-text-editor .ql-toolbar.ql-snow button.fng-button div{pointer-events:none}fng-text-editor .ql-toolbar .fng-button-text{min-width:12px;line-height:16px}fng-text-editor label.fwe-input-text.fwe-disabled .ql-toolbar{pointer-events:none}fng-text-editor label.fwe-input-text.fwe-disabled .ql-toolbar button{color:var(--fwe-text-disabled)}@media screen and (max-width: 375px){fng-text-editor label.fwe-input-text{padding-left:16px;padding-top:16px;padding-bottom:34px;background:var(--fwe-gray-200)}fng-text-editor label.fwe-input-text .fng-text-editor-info{bottom:8px;left:16px;color:var(--fwe-text)}fng-text-editor .fng-editor-container{margin-left:-16px;padding-top:12px;padding-left:16px;border:0}fng-text-editor .ql-toolbar.ql-snow .ql-formats.fng-editor-toolbar-buttons-container{flex-wrap:nowrap;overflow-x:auto}}\n/*!\n * Quill Editor v2.0.3\n * https://quilljs.com\n * Copyright (c) 2017-2024, Slab\n * Copyright (c) 2014, Jason Chen\n * Copyright (c) 2013, salesforce.com\n */\n"], dependencies: [{ kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$4.NgSelectOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "directive", type: i1$4.ɵNgSelectMultipleOption, selector: "option", inputs: ["ngValue", "value"] }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: OverlayModule }, { kind: "ngmodule", type: ScrollingModule }, { kind: "ngmodule", type: DragDropModule }, { kind: "ngmodule", type: ObserversModule }], encapsulation: i0.ViewEncapsulation.None }); }
6666
6664
  }
6667
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FngTextEditorComponent, decorators: [{
6665
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FngTextEditorComponent, decorators: [{
6668
6666
  type: Component,
6669
6667
  args: [{ imports: [ReactiveFormsModule, FormsModule, OverlayModule, ScrollingModule, DragDropModule, ObserversModule], selector: 'fng-text-editor', encapsulation: ViewEncapsulation.None, providers: [
6670
6668
  {
@@ -6723,8 +6721,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
6723
6721
  }] } });
6724
6722
 
6725
6723
  class FestoAngularFormsModule {
6726
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6727
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularFormsModule, imports: [ReactiveFormsModule,
6724
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6725
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularFormsModule, imports: [ReactiveFormsModule,
6728
6726
  FormsModule,
6729
6727
  FngCheckboxComponent,
6730
6728
  FngColorIndicatorComponent,
@@ -6763,7 +6761,7 @@ class FestoAngularFormsModule {
6763
6761
  FngSwitchComponent,
6764
6762
  FngTextAreaComponent,
6765
6763
  FngTextEditorComponent] }); }
6766
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularFormsModule, imports: [ReactiveFormsModule,
6764
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularFormsModule, imports: [ReactiveFormsModule,
6767
6765
  FormsModule,
6768
6766
  FngCheckboxComponent,
6769
6767
  FngColorIndicatorComponent,
@@ -6780,7 +6778,7 @@ class FestoAngularFormsModule {
6780
6778
  FngTextEditorComponent, ReactiveFormsModule,
6781
6779
  FormsModule] }); }
6782
6780
  }
6783
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularFormsModule, decorators: [{
6781
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularFormsModule, decorators: [{
6784
6782
  type: NgModule,
6785
6783
  args: [{
6786
6784
  imports: [
@@ -6831,11 +6829,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImpo
6831
6829
  }] });
6832
6830
 
6833
6831
  class FestoAngularModule {
6834
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6835
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularModule, imports: [FngSafeHtmlPipe, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule], exports: [FngSafeHtmlPipe, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule] }); }
6836
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularModule, imports: [FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule] }); }
6832
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
6833
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularModule, imports: [FngSafeHtmlPipe, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule], exports: [FngSafeHtmlPipe, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule] }); }
6834
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularModule, imports: [FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule] }); }
6837
6835
  }
6838
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.13", ngImport: i0, type: FestoAngularModule, decorators: [{
6836
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.4", ngImport: i0, type: FestoAngularModule, decorators: [{
6839
6837
  type: NgModule,
6840
6838
  args: [{
6841
6839
  declarations: [],