@festo-ui/angular 10.1.1-dev.926 → 11.0.0-dev.930

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.
@@ -31,10 +31,10 @@ class FngAccordionItemBodyComponent {
31
31
  // parentId will be set by accordion item this body belongs to
32
32
  this.id = '';
33
33
  }
34
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAccordionItemBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
34
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAccordionItemBodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
35
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
36
36
  }
37
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAccordionItemBodyComponent, decorators: [{
37
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAccordionItemBodyComponent, decorators: [{
38
38
  type: Component,
39
39
  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"] }]
40
40
  }] });
@@ -56,10 +56,10 @@ class FngAccordionItemHeaderComponent {
56
56
  toggle() {
57
57
  this.actions.next(FngAccordionHeaderActions.Toggle);
58
58
  }
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAccordionItemHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
59
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAccordionItemHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
60
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
61
61
  }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAccordionItemHeaderComponent, decorators: [{
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAccordionItemHeaderComponent, decorators: [{
63
63
  type: Component,
64
64
  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"] }]
65
65
  }] });
@@ -193,10 +193,10 @@ class FngAccordionItemComponent {
193
193
  this.handleAction(action);
194
194
  });
195
195
  }
196
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAccordionItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
197
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
196
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAccordionItemComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
197
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
198
198
  }
199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAccordionItemComponent, decorators: [{
199
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAccordionItemComponent, decorators: [{
200
200
  type: Component,
201
201
  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"] }]
202
202
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }], propDecorators: { header: [{
@@ -242,10 +242,10 @@ class FngAccordionComponent {
242
242
  closeAll() {
243
243
  this.actions.next(FngAccordionActions.CloseAll);
244
244
  }
245
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
246
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
245
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAccordionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
246
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
247
247
  }
248
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAccordionComponent, decorators: [{
248
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAccordionComponent, decorators: [{
249
249
  type: Component,
250
250
  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"] }]
251
251
  }], propDecorators: { multi: [{
@@ -263,10 +263,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
263
263
  }] } });
264
264
 
265
265
  class FngAccordionHeaderComponent {
266
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAccordionHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
267
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
266
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAccordionHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
267
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
268
268
  }
269
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAccordionHeaderComponent, decorators: [{
269
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAccordionHeaderComponent, decorators: [{
270
270
  type: Component,
271
271
  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"] }]
272
272
  }] });
@@ -307,10 +307,10 @@ class FngBreadcrumbComponent {
307
307
  this.cdr.detectChanges();
308
308
  }
309
309
  }
310
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngBreadcrumbComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
311
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: FngBreadcrumbComponent, isStandalone: true, selector: "fng-breadcrumb", inputs: { useRouterLink: "useRouterLink", locations: "locations", ariaLabel: "ariaLabel" }, outputs: { navigate: "navigate" }, viewQueries: [{ propertyName: "containerEl", first: true, predicate: ["containerEl"], descendants: true }, { propertyName: "measureEl", first: true, predicate: ["measureEl"], descendants: true }], ngImport: i0, template: "<div>\n <!-- Hidden measurement nav \u2014 renders all items at natural width to detect overflow -->\n <nav\n aria-hidden=\"true\"\n class=\"fwe-breadcrumb\"\n #measureEl\n style=\"position: absolute; visibility: hidden; pointer-events: none; white-space: nowrap; height: 0; overflow: hidden;\">\n <ol>\n @for (location of locations; track location) {\n <li><a>{{ location.label }}</a></li>\n }\n </ol>\n </nav>\n\n <nav\n [attr.aria-label]=\"ariaLabel\"\n class=\"fwe-breadcrumb fng-breadcrumb\"\n [class.fwe-breadcrumb--mobile]=\"isMobile\"\n #containerEl>\n <ol>\n @for (location of locations; track location; let isLast = $last) {\n @if (useRouterLink) {\n <li>\n <a [routerLink]=\"isLast ? null : location.url\" [attr.aria-current]=\"isLast ? 'page' : null\">{{ location.label }}</a>\n </li>\n } @else {\n <li>\n <a (click)=\"isLast || navigate.emit(location.url)\" [attr.aria-current]=\"isLast ? 'page' : null\">{{ location.label }}</a>\n </li>\n }\n }\n </ol>\n </nav>\n</div>\n", styles: [".fng-breadcrumb a{cursor:pointer}\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 }); }
310
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngBreadcrumbComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
311
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: FngBreadcrumbComponent, isStandalone: true, selector: "fng-breadcrumb", inputs: { useRouterLink: "useRouterLink", locations: "locations", ariaLabel: "ariaLabel" }, outputs: { navigate: "navigate" }, viewQueries: [{ propertyName: "containerEl", first: true, predicate: ["containerEl"], descendants: true }, { propertyName: "measureEl", first: true, predicate: ["measureEl"], descendants: true }], ngImport: i0, template: "<div>\n <!-- Hidden measurement nav \u2014 renders all items at natural width to detect overflow -->\n <nav\n aria-hidden=\"true\"\n class=\"fwe-breadcrumb\"\n #measureEl\n style=\"position: absolute; visibility: hidden; pointer-events: none; white-space: nowrap; height: 0; overflow: hidden;\">\n <ol>\n @for (location of locations; track location) {\n <li><a>{{ location.label }}</a></li>\n }\n </ol>\n </nav>\n\n <nav\n [attr.aria-label]=\"ariaLabel\"\n class=\"fwe-breadcrumb fng-breadcrumb\"\n [class.fwe-breadcrumb--mobile]=\"isMobile\"\n #containerEl>\n <ol>\n @for (location of locations; track location; let isLast = $last) {\n @if (useRouterLink) {\n <li>\n <a [routerLink]=\"isLast ? null : location.url\" [attr.aria-current]=\"isLast ? 'page' : null\">{{ location.label }}</a>\n </li>\n } @else {\n <li>\n <a (click)=\"isLast || navigate.emit(location.url)\" [attr.aria-current]=\"isLast ? 'page' : null\">{{ location.label }}</a>\n </li>\n }\n }\n </ol>\n </nav>\n</div>\n", styles: [".fng-breadcrumb a{cursor:pointer}\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 }); }
312
312
  }
313
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngBreadcrumbComponent, decorators: [{
313
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngBreadcrumbComponent, decorators: [{
314
314
  type: Component,
315
315
  args: [{ imports: [RouterModule], selector: 'fng-breadcrumb', encapsulation: ViewEncapsulation.None, template: "<div>\n <!-- Hidden measurement nav \u2014 renders all items at natural width to detect overflow -->\n <nav\n aria-hidden=\"true\"\n class=\"fwe-breadcrumb\"\n #measureEl\n style=\"position: absolute; visibility: hidden; pointer-events: none; white-space: nowrap; height: 0; overflow: hidden;\">\n <ol>\n @for (location of locations; track location) {\n <li><a>{{ location.label }}</a></li>\n }\n </ol>\n </nav>\n\n <nav\n [attr.aria-label]=\"ariaLabel\"\n class=\"fwe-breadcrumb fng-breadcrumb\"\n [class.fwe-breadcrumb--mobile]=\"isMobile\"\n #containerEl>\n <ol>\n @for (location of locations; track location; let isLast = $last) {\n @if (useRouterLink) {\n <li>\n <a [routerLink]=\"isLast ? null : location.url\" [attr.aria-current]=\"isLast ? 'page' : null\">{{ location.label }}</a>\n </li>\n } @else {\n <li>\n <a (click)=\"isLast || navigate.emit(location.url)\" [attr.aria-current]=\"isLast ? 'page' : null\">{{ location.label }}</a>\n </li>\n }\n }\n </ol>\n </nav>\n</div>\n", styles: [".fng-breadcrumb a{cursor:pointer}\n"] }]
316
316
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { useRouterLink: [{
@@ -344,10 +344,10 @@ class FngButtonComponent {
344
344
  this.fngClick.emit(event);
345
345
  }
346
346
  }
347
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
348
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
347
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
348
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
349
349
  }
350
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngButtonComponent, decorators: [{
350
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngButtonComponent, decorators: [{
351
351
  type: Component,
352
352
  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"] }]
353
353
  }], propDecorators: { text: [{
@@ -382,10 +382,10 @@ class FngLinkButtonComponent {
382
382
  onClick(event) {
383
383
  this.fngClick.emit(event);
384
384
  }
385
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngLinkButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
386
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
385
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngLinkButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
386
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
387
387
  }
388
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngLinkButtonComponent, decorators: [{
388
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngLinkButtonComponent, decorators: [{
389
389
  type: Component,
390
390
  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" }]
391
391
  }], propDecorators: { text: [{
@@ -407,10 +407,10 @@ class FngChipContainerComponent {
407
407
  constructor() {
408
408
  this.large = false;
409
409
  }
410
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngChipContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
411
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
410
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngChipContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
411
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
412
412
  }
413
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngChipContainerComponent, decorators: [{
413
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngChipContainerComponent, decorators: [{
414
414
  type: Component,
415
415
  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" }]
416
416
  }], propDecorators: { large: [{
@@ -433,10 +433,10 @@ class FngChipComponent {
433
433
  this.disabled = false;
434
434
  this.large = false;
435
435
  }
436
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngChipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
437
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
436
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngChipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
437
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
438
438
  }
439
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngChipComponent, decorators: [{
439
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngChipComponent, decorators: [{
440
440
  type: Component,
441
441
  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" }]
442
442
  }], propDecorators: { type: [{
@@ -457,15 +457,17 @@ class FngClickOutsideDirective {
457
457
  this.clickOutside = new EventEmitter();
458
458
  }
459
459
  onClick(targetElement) {
460
- const inside = this.elRef.nativeElement.contains(targetElement);
461
- if (!inside) {
462
- this.clickOutside.emit(null);
460
+ if (targetElement && targetElement instanceof HTMLElement) {
461
+ const inside = this.elRef.nativeElement.contains(targetElement);
462
+ if (!inside) {
463
+ this.clickOutside.emit(null);
464
+ }
463
465
  }
464
466
  }
465
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngClickOutsideDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
466
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: FngClickOutsideDirective, isStandalone: true, selector: "[fngClickOutside]", outputs: { clickOutside: "clickOutside" }, host: { listeners: { "document:click": "onClick($event.target)" } }, ngImport: i0 }); }
467
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngClickOutsideDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
468
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.11", type: FngClickOutsideDirective, isStandalone: true, selector: "[fngClickOutside]", outputs: { clickOutside: "clickOutside" }, host: { listeners: { "document:click": "onClick($event.target)" } }, ngImport: i0 }); }
467
469
  }
468
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngClickOutsideDirective, decorators: [{
470
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngClickOutsideDirective, decorators: [{
469
471
  type: Directive,
470
472
  args: [{
471
473
  standalone: true,
@@ -539,10 +541,10 @@ class FngBottomSheetComponent {
539
541
  this.close.emit();
540
542
  }, 300); // wait for the transition to finish before closing
541
543
  }
542
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngBottomSheetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
543
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
544
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngBottomSheetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
545
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
544
546
  }
545
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngBottomSheetComponent, decorators: [{
547
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngBottomSheetComponent, decorators: [{
546
548
  type: Component,
547
549
  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>" }]
548
550
  }], propDecorators: { hasBackdrop: [{
@@ -576,10 +578,10 @@ class FngLoadingIndicatorComponent {
576
578
  constructor() {
577
579
  this.size = 'large';
578
580
  }
579
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngLoadingIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
580
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
581
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngLoadingIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
582
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
581
583
  }
582
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngLoadingIndicatorComponent, decorators: [{
584
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngLoadingIndicatorComponent, decorators: [{
583
585
  type: Component,
584
586
  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" }]
585
587
  }], propDecorators: { size: [{
@@ -603,10 +605,10 @@ class FngMobileFlyoutItemComponent {
603
605
  this.onNavigateCallback(this.pageLink);
604
606
  }
605
607
  }
606
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngMobileFlyoutItemComponent, deps: [{ token: i1.RouterLinkActive, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
607
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
608
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngMobileFlyoutItemComponent, deps: [{ token: i1.RouterLinkActive, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
609
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
608
610
  }
609
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngMobileFlyoutItemComponent, decorators: [{
611
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngMobileFlyoutItemComponent, decorators: [{
610
612
  type: Component,
611
613
  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" }]
612
614
  }], ctorParameters: () => [{ type: i1.RouterLinkActive, decorators: [{
@@ -662,10 +664,10 @@ class FngMobileFlyoutPageComponent {
662
664
  });
663
665
  }
664
666
  }
665
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngMobileFlyoutPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
666
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
667
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngMobileFlyoutPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
668
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
667
669
  }
668
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngMobileFlyoutPageComponent, decorators: [{
670
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngMobileFlyoutPageComponent, decorators: [{
669
671
  type: Component,
670
672
  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" }]
671
673
  }], propDecorators: { itemComponents: [{
@@ -726,10 +728,10 @@ class FngMobileFlyoutComponent {
726
728
  s.visible = i === 0;
727
729
  });
728
730
  }
729
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngMobileFlyoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
730
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
731
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngMobileFlyoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
732
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
731
733
  }
732
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngMobileFlyoutComponent, decorators: [{
734
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngMobileFlyoutComponent, decorators: [{
733
735
  type: Component,
734
736
  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" }]
735
737
  }], propDecorators: { flyoutOpenChange: [{
@@ -776,10 +778,10 @@ class FngPaginationComponent {
776
778
  this.pageCurrent = index + 1;
777
779
  this.changePage.emit(this.pageCurrent);
778
780
  }
779
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
780
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
781
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPaginationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
782
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
781
783
  }
782
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPaginationComponent, decorators: [{
784
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPaginationComponent, decorators: [{
783
785
  type: Component,
784
786
  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" }]
785
787
  }], propDecorators: { type: [{
@@ -842,10 +844,10 @@ class FngPopoverComponent {
842
844
  };
843
845
  }
844
846
  }
845
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverComponent, deps: [{ token: PopoverRef }], target: i0.ɵɵFactoryTarget.Component }); }
846
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 [class.fwe-popover--legend]=\"popoverType === 'legend'\"\n [class.fwe-popover--menu]=\"popoverType === 'menu'\"\n [class.fwe-popover--content]=\"popoverType === 'content'\">\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 }); }
847
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverComponent, deps: [{ token: PopoverRef }], target: i0.ɵɵFactoryTarget.Component }); }
848
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 [class.fwe-popover--legend]=\"popoverType === 'legend'\"\n [class.fwe-popover--menu]=\"popoverType === 'menu'\"\n [class.fwe-popover--content]=\"popoverType === 'content'\">\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"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None }); }
847
849
  }
848
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverComponent, decorators: [{
850
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverComponent, decorators: [{
849
851
  type: Component,
850
852
  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 [class.fwe-popover--legend]=\"popoverType === 'legend'\"\n [class.fwe-popover--menu]=\"popoverType === 'menu'\"\n [class.fwe-popover--content]=\"popoverType === 'content'\">\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" }]
851
853
  }], ctorParameters: () => [{ type: PopoverRef }] });
@@ -1020,10 +1022,10 @@ class FngPopoverService {
1020
1022
  });
1021
1023
  return pairs;
1022
1024
  }
1023
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverService, deps: [{ token: i1$2.Overlay }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
1024
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverService, providedIn: 'root' }); }
1025
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverService, deps: [{ token: i1$2.Overlay }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
1026
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverService, providedIn: 'root' }); }
1025
1027
  }
1026
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverService, decorators: [{
1028
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverService, decorators: [{
1027
1029
  type: Injectable,
1028
1030
  args: [{
1029
1031
  providedIn: 'root'
@@ -1052,10 +1054,10 @@ class FngLegendComponent {
1052
1054
  hide() {
1053
1055
  this.popoverRef?.close();
1054
1056
  }
1055
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngLegendComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1056
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 @for (item of items; track item) {\n <dl class=\"fwe-popover-legend-content\">\n <dt>{{ item?.name }}</dt>\n <dd>{{ item?.text }}</dd>\n </dl>\n }\n</ng-template>", encapsulation: i0.ViewEncapsulation.None }); }
1057
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngLegendComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1058
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 @for (item of items; track item) {\n <dl class=\"fwe-popover-legend-content\">\n <dt>{{ item?.name }}</dt>\n <dd>{{ item?.text }}</dd>\n </dl>\n }\n</ng-template>", encapsulation: i0.ViewEncapsulation.None }); }
1057
1059
  }
1058
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngLegendComponent, decorators: [{
1060
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngLegendComponent, decorators: [{
1059
1061
  type: Component,
1060
1062
  args: [{ selector: 'fng-legend', imports: [], encapsulation: ViewEncapsulation.None, template: "<ng-template #tpl>\n @for (item of items; track item) {\n <dl class=\"fwe-popover-legend-content\">\n <dt>{{ item?.name }}</dt>\n <dd>{{ item?.text }}</dd>\n </dl>\n }\n</ng-template>" }]
1061
1063
  }], ctorParameters: () => [{ type: FngPopoverService }], propDecorators: { items: [{
@@ -1079,10 +1081,10 @@ class FngLegendDirective {
1079
1081
  this.ref.show(this.origin);
1080
1082
  }
1081
1083
  }
1082
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngLegendDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1083
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: FngLegendDirective, isStandalone: true, selector: "[fngLegend]", host: { listeners: { "click": "show()" } }, queries: [{ propertyName: "ref", first: true, predicate: ["fngContent"], descendants: true }], ngImport: i0 }); }
1084
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngLegendDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1085
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.11", type: FngLegendDirective, isStandalone: true, selector: "[fngLegend]", host: { listeners: { "click": "show()" } }, queries: [{ propertyName: "ref", first: true, predicate: ["fngContent"], descendants: true }], ngImport: i0 }); }
1084
1086
  }
1085
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngLegendDirective, decorators: [{
1087
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngLegendDirective, decorators: [{
1086
1088
  type: Directive,
1087
1089
  args: [{
1088
1090
  standalone: true,
@@ -1138,10 +1140,10 @@ class FngPopoverContentComponent {
1138
1140
  hide() {
1139
1141
  this.popoverRef?.close();
1140
1142
  }
1141
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverContentComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1142
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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;min-width:max-content;width:auto}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1143
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverContentComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1144
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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;min-width:max-content;width:auto}\n"], encapsulation: i0.ViewEncapsulation.None }); }
1143
1145
  }
1144
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverContentComponent, decorators: [{
1146
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverContentComponent, decorators: [{
1145
1147
  type: Component,
1146
1148
  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;min-width:max-content;width:auto}\n"] }]
1147
1149
  }], ctorParameters: () => [{ type: FngPopoverService }], propDecorators: { options: [{
@@ -1175,10 +1177,10 @@ class FngPopoverContentDirective {
1175
1177
  this.component.hide();
1176
1178
  }
1177
1179
  }
1178
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverContentDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1179
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
1180
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverContentDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
1181
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
1180
1182
  }
1181
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverContentDirective, decorators: [{
1183
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverContentDirective, decorators: [{
1182
1184
  type: Directive,
1183
1185
  args: [{
1184
1186
  standalone: true,
@@ -1232,10 +1234,10 @@ class FngPopoverMenuComponent {
1232
1234
  hide() {
1233
1235
  this.popoverRef?.close();
1234
1236
  }
1235
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverMenuComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1236
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
1237
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverMenuComponent, deps: [{ token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Component }); }
1238
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
1237
1239
  }
1238
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPopoverMenuComponent, decorators: [{
1240
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPopoverMenuComponent, decorators: [{
1239
1241
  type: Component,
1240
1242
  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" }]
1241
1243
  }], ctorParameters: () => [{ type: FngPopoverService }], propDecorators: { icon: [{
@@ -1327,10 +1329,10 @@ class FngTooltipDirective {
1327
1329
  }
1328
1330
  this.innerIsVisible = false;
1329
1331
  }
1330
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTooltipDirective, deps: [{ token: i0.ElementRef }, { token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Directive }); }
1331
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
1332
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTooltipDirective, deps: [{ token: i0.ElementRef }, { token: FngPopoverService }], target: i0.ɵɵFactoryTarget.Directive }); }
1333
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
1332
1334
  }
1333
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTooltipDirective, decorators: [{
1335
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTooltipDirective, decorators: [{
1334
1336
  type: Directive,
1335
1337
  args: [{
1336
1338
  standalone: true,
@@ -1362,10 +1364,10 @@ class FngProgressComponent {
1362
1364
  this.error = false;
1363
1365
  this.background = 'white';
1364
1366
  }
1365
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1366
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
1367
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1368
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
1367
1369
  }
1368
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngProgressComponent, decorators: [{
1370
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngProgressComponent, decorators: [{
1369
1371
  type: Component,
1370
1372
  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" }]
1371
1373
  }], propDecorators: { progress: [{
@@ -1431,10 +1433,10 @@ class FngScrollableDirective {
1431
1433
  timer = window.setTimeout(callback, 50);
1432
1434
  };
1433
1435
  }
1434
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngScrollableDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
1435
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: FngScrollableDirective, isStandalone: true, selector: "[fngScrollable]", inputs: { scrollbarMinSize: ["fngScrollableScrollbarMinSize", "scrollbarMinSize"], viewReady: ["fngScrollableViewReady", "viewReady"] }, usesOnChanges: true, ngImport: i0 }); }
1436
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngScrollableDirective, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
1437
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.11", type: FngScrollableDirective, isStandalone: true, selector: "[fngScrollable]", inputs: { scrollbarMinSize: ["fngScrollableScrollbarMinSize", "scrollbarMinSize"], viewReady: ["fngScrollableViewReady", "viewReady"] }, usesOnChanges: true, ngImport: i0 }); }
1436
1438
  }
1437
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngScrollableDirective, decorators: [{
1439
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngScrollableDirective, decorators: [{
1438
1440
  type: Directive,
1439
1441
  args: [{
1440
1442
  standalone: true,
@@ -1455,10 +1457,10 @@ class FngSafeHtmlPipe {
1455
1457
  transform(value) {
1456
1458
  return this.sanitizer.bypassSecurityTrustHtml(value);
1457
1459
  }
1458
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSafeHtmlPipe, deps: [{ token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
1459
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: FngSafeHtmlPipe, isStandalone: true, name: "fngSafeHtml" }); }
1460
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSafeHtmlPipe, deps: [{ token: i1$3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe }); }
1461
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.11", ngImport: i0, type: FngSafeHtmlPipe, isStandalone: true, name: "fngSafeHtml" }); }
1460
1462
  }
1461
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSafeHtmlPipe, decorators: [{
1463
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSafeHtmlPipe, decorators: [{
1462
1464
  type: Pipe,
1463
1465
  args: [{
1464
1466
  standalone: true,
@@ -1616,10 +1618,10 @@ class FngSearchInputComponent {
1616
1618
  this.hideSuggestionList = true;
1617
1619
  this.inputRef.nativeElement.blur();
1618
1620
  }
1619
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSearchInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1620
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
1621
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSearchInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1622
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
1621
1623
  }
1622
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSearchInputComponent, decorators: [{
1624
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSearchInputComponent, decorators: [{
1623
1625
  type: Component,
1624
1626
  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"] }]
1625
1627
  }], propDecorators: { inputRef: [{
@@ -1683,10 +1685,10 @@ class FngSidebarOverlayComponent {
1683
1685
  this.internalOpen = false;
1684
1686
  this.openChange.emit(this.internalOpen);
1685
1687
  }
1686
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSidebarOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1687
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
1688
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSidebarOverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1689
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
1688
1690
  }
1689
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSidebarOverlayComponent, decorators: [{
1691
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSidebarOverlayComponent, decorators: [{
1690
1692
  type: Component,
1691
1693
  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" }]
1692
1694
  }], ctorParameters: () => [], propDecorators: { fngNavbarMargin: [{
@@ -1699,11 +1701,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
1699
1701
 
1700
1702
  class FngSnackbarComponent {
1701
1703
  constructor() {
1702
- this.data = signal({}, ...(ngDevMode ? [{ debugName: "data" }] : []));
1704
+ this.data = signal({}, ...(ngDevMode ? [{ debugName: "data" }] : /* istanbul ignore next */ []));
1703
1705
  this.close = output();
1704
1706
  this.action = output();
1705
- this.isShown = signal(false, ...(ngDevMode ? [{ debugName: "isShown" }] : []));
1706
- this.transformTranslateY = signal('translateY(24px)', ...(ngDevMode ? [{ debugName: "transformTranslateY" }] : []));
1707
+ this.isShown = signal(false, ...(ngDevMode ? [{ debugName: "isShown" }] : /* istanbul ignore next */ []));
1708
+ this.transformTranslateY = signal('translateY(24px)', ...(ngDevMode ? [{ debugName: "transformTranslateY" }] : /* istanbul ignore next */ []));
1707
1709
  }
1708
1710
  ngAfterViewInit() {
1709
1711
  const data = this.data();
@@ -1722,10 +1724,10 @@ class FngSnackbarComponent {
1722
1724
  onClose() {
1723
1725
  this.close.emit();
1724
1726
  }
1725
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSnackbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1726
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
1727
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSnackbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1728
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
1727
1729
  }
1728
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSnackbarComponent, decorators: [{
1730
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSnackbarComponent, decorators: [{
1729
1731
  type: Component,
1730
1732
  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"] }]
1731
1733
  }], propDecorators: { close: [{ type: i0.Output, args: ["close"] }], action: [{ type: i0.Output, args: ["action"] }] } });
@@ -1740,10 +1742,10 @@ class FngSnackbarService {
1740
1742
  this.snacks.next({ data, actionCallback, closeCallback, resolve });
1741
1743
  });
1742
1744
  }
1743
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSnackbarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1744
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSnackbarService, providedIn: 'root' }); }
1745
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSnackbarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1746
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSnackbarService, providedIn: 'root' }); }
1745
1747
  }
1746
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSnackbarService, decorators: [{
1748
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSnackbarService, decorators: [{
1747
1749
  type: Injectable,
1748
1750
  args: [{
1749
1751
  providedIn: 'root'
@@ -1838,10 +1840,10 @@ class FngSnackbarContainerDirective {
1838
1840
  });
1839
1841
  });
1840
1842
  }
1841
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSnackbarContainerDirective, deps: [{ token: i0.ViewContainerRef }, { token: FngSnackbarService }], target: i0.ɵɵFactoryTarget.Directive }); }
1842
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: FngSnackbarContainerDirective, isStandalone: true, selector: "[fngSnackbarContainer]", inputs: { fngSnackbarContainer: "fngSnackbarContainer" }, ngImport: i0 }); }
1843
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSnackbarContainerDirective, deps: [{ token: i0.ViewContainerRef }, { token: FngSnackbarService }], target: i0.ɵɵFactoryTarget.Directive }); }
1844
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.11", type: FngSnackbarContainerDirective, isStandalone: true, selector: "[fngSnackbarContainer]", inputs: { fngSnackbarContainer: "fngSnackbarContainer" }, ngImport: i0 }); }
1843
1845
  }
1844
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSnackbarContainerDirective, decorators: [{
1846
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSnackbarContainerDirective, decorators: [{
1845
1847
  type: Directive,
1846
1848
  args: [{
1847
1849
  standalone: true,
@@ -1859,10 +1861,10 @@ class FngSnackbarContainerComponent {
1859
1861
  closeOnAction: true
1860
1862
  };
1861
1863
  }
1862
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSnackbarContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1863
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
1864
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSnackbarContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1865
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
1864
1866
  }
1865
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSnackbarContainerComponent, decorators: [{
1867
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSnackbarContainerComponent, decorators: [{
1866
1868
  type: Component,
1867
1869
  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"] }]
1868
1870
  }], propDecorators: { config: [{
@@ -1874,10 +1876,10 @@ class FngStepHorizontalComponent {
1874
1876
  this.isActive = false;
1875
1877
  this.title = '';
1876
1878
  }
1877
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngStepHorizontalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1878
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
1879
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngStepHorizontalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1880
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
1879
1881
  }
1880
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngStepHorizontalComponent, decorators: [{
1882
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngStepHorizontalComponent, decorators: [{
1881
1883
  type: Component,
1882
1884
  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"] }]
1883
1885
  }], propDecorators: { isActive: [{
@@ -1917,10 +1919,10 @@ class FngStepperHorizontalComponent {
1917
1919
  this.stepIndexChange?.emit(index);
1918
1920
  }
1919
1921
  }
1920
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngStepperHorizontalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1921
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
1922
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngStepperHorizontalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1923
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
1922
1924
  }
1923
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngStepperHorizontalComponent, decorators: [{
1925
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngStepperHorizontalComponent, decorators: [{
1924
1926
  type: Component,
1925
1927
  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" }]
1926
1928
  }], propDecorators: { stepComponents: [{
@@ -1963,10 +1965,10 @@ class FngStepVerticalComponent {
1963
1965
  ngAfterViewInit() {
1964
1966
  this.updateHeight();
1965
1967
  }
1966
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngStepVerticalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1967
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
1968
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngStepVerticalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1969
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
1968
1970
  }
1969
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngStepVerticalComponent, decorators: [{
1971
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngStepVerticalComponent, decorators: [{
1970
1972
  type: Component,
1971
1973
  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"] }]
1972
1974
  }], propDecorators: { stepContent: [{
@@ -2022,10 +2024,10 @@ class FngStepperVerticalComponent {
2022
2024
  this.stepIndexChange?.emit(index);
2023
2025
  }
2024
2026
  }
2025
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngStepperVerticalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2026
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
2027
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngStepperVerticalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2028
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
2027
2029
  }
2028
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngStepperVerticalComponent, decorators: [{
2030
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngStepperVerticalComponent, decorators: [{
2029
2031
  type: Component,
2030
2032
  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" }]
2031
2033
  }], propDecorators: { stepComponents: [{
@@ -2056,10 +2058,10 @@ class FngTableHeaderCellDirective {
2056
2058
  onChangeOrder() {
2057
2059
  this.changeOrder.emit(this.fngTh);
2058
2060
  }
2059
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTableHeaderCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2060
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
2061
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTableHeaderCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
2062
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
2061
2063
  }
2062
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTableHeaderCellDirective, decorators: [{
2064
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTableHeaderCellDirective, decorators: [{
2063
2065
  type: Directive,
2064
2066
  args: [{
2065
2067
  standalone: true,
@@ -2109,10 +2111,10 @@ class FngTabPaneComponent {
2109
2111
  }
2110
2112
  this.changesSubject.next(true);
2111
2113
  }
2112
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTabPaneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2113
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
2114
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTabPaneComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2115
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
2114
2116
  }
2115
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTabPaneComponent, decorators: [{
2117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTabPaneComponent, decorators: [{
2116
2118
  type: Component,
2117
2119
  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"] }]
2118
2120
  }], propDecorators: { id: [{
@@ -2576,10 +2578,10 @@ class FngTabsComponent {
2576
2578
  }
2577
2579
  return -1;
2578
2580
  }
2579
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTabsComponent, deps: [{ token: i0.ElementRef }, { token: DOCUMENT }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
2580
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: FngTabsComponent, isStandalone: true, selector: "fng-tabs", inputs: { viewType: ["fngTabsViewType", "viewType"], showDivider: ["fngTabsUseBottomDivider", "showDivider"], fngActivePaneId: "fngActivePaneId", 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.paneId; 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.paneId; 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 }); }
2581
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTabsComponent, deps: [{ token: i0.ElementRef }, { token: DOCUMENT }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
2582
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: FngTabsComponent, isStandalone: true, selector: "fng-tabs", inputs: { viewType: ["fngTabsViewType", "viewType"], showDivider: ["fngTabsUseBottomDivider", "showDivider"], fngActivePaneId: "fngActivePaneId", 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.paneId; 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.paneId; 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 }); }
2581
2583
  }
2582
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTabsComponent, decorators: [{
2584
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTabsComponent, decorators: [{
2583
2585
  type: Component,
2584
2586
  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.paneId; 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.paneId; 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"] }]
2585
2587
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: Document, decorators: [{
@@ -2823,10 +2825,10 @@ class FngOverlayOutletDirective {
2823
2825
  }
2824
2826
  return ALL_POSITIONS.map(p => ({ ...p }));
2825
2827
  }
2826
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngOverlayOutletDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
2827
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
2828
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngOverlayOutletDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive }); }
2829
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
2828
2830
  }
2829
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngOverlayOutletDirective, decorators: [{
2831
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngOverlayOutletDirective, decorators: [{
2830
2832
  type: Directive,
2831
2833
  args: [{
2832
2834
  selector: '[fngOverlayOutlet]',
@@ -2866,17 +2868,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
2866
2868
  }] } });
2867
2869
 
2868
2870
  class FngOverlayContentComponent {
2869
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngOverlayContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2870
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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: [""] }); }
2871
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngOverlayContentComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
2872
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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: [""] }); }
2871
2873
  }
2872
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngOverlayContentComponent, decorators: [{
2874
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngOverlayContentComponent, decorators: [{
2873
2875
  type: Component,
2874
2876
  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" }]
2875
2877
  }] });
2876
2878
 
2877
2879
  class FestoAngularComponentsModule {
2878
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2879
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularComponentsModule, imports: [FngClickOutsideDirective,
2880
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularComponentsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
2881
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularComponentsModule, imports: [FngClickOutsideDirective,
2880
2882
  FngPaginationComponent,
2881
2883
  FngMobileFlyoutPageComponent,
2882
2884
  FngMobileFlyoutItemComponent,
@@ -2953,7 +2955,7 @@ class FestoAngularComponentsModule {
2953
2955
  FngBottomSheetComponent,
2954
2956
  FngOverlayOutletDirective,
2955
2957
  FngOverlayContentComponent] }); }
2956
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularComponentsModule, imports: [FngMobileFlyoutItemComponent,
2958
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularComponentsModule, imports: [FngMobileFlyoutItemComponent,
2957
2959
  FngChipComponent,
2958
2960
  FngTabsComponent,
2959
2961
  FngBreadcrumbComponent,
@@ -2962,7 +2964,7 @@ class FestoAngularComponentsModule {
2962
2964
  FngPopoverComponent,
2963
2965
  FngPopoverMenuComponent] }); }
2964
2966
  }
2965
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularComponentsModule, decorators: [{
2967
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularComponentsModule, decorators: [{
2966
2968
  type: NgModule,
2967
2969
  args: [{
2968
2970
  imports: [
@@ -3051,11 +3053,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
3051
3053
  }] });
3052
3054
 
3053
3055
  class FestoAngularSnackbarModule {
3054
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularSnackbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3055
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularSnackbarModule, imports: [FngSnackbarComponent, FngSnackbarContainerDirective, FngSnackbarContainerComponent], exports: [FngSnackbarContainerComponent, FngSnackbarContainerDirective, FngSnackbarContainerComponent] }); }
3056
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularSnackbarModule, imports: [FngSnackbarComponent] }); }
3056
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularSnackbarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3057
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularSnackbarModule, imports: [FngSnackbarComponent, FngSnackbarContainerDirective, FngSnackbarContainerComponent], exports: [FngSnackbarContainerComponent, FngSnackbarContainerDirective, FngSnackbarContainerComponent] }); }
3058
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularSnackbarModule, imports: [FngSnackbarComponent] }); }
3057
3059
  }
3058
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularSnackbarModule, decorators: [{
3060
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularSnackbarModule, decorators: [{
3059
3061
  type: NgModule,
3060
3062
  args: [{
3061
3063
  imports: [FngSnackbarComponent, FngSnackbarContainerDirective, FngSnackbarContainerComponent],
@@ -3093,10 +3095,10 @@ class FngAlertComponent {
3093
3095
  onCancel() {
3094
3096
  this.cancel.emit();
3095
3097
  }
3096
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3097
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
3098
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAlertComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3099
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
3098
3100
  }
3099
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngAlertComponent, decorators: [{
3101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngAlertComponent, decorators: [{
3100
3102
  type: Component,
3101
3103
  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" }]
3102
3104
  }], propDecorators: { data: [{
@@ -3144,10 +3146,10 @@ class FngConfirmComponent {
3144
3146
  onCancel() {
3145
3147
  this.cancel.emit();
3146
3148
  }
3147
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngConfirmComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3148
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
3149
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngConfirmComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3150
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
3149
3151
  }
3150
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngConfirmComponent, decorators: [{
3152
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngConfirmComponent, decorators: [{
3151
3153
  type: Component,
3152
3154
  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" }]
3153
3155
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { data: [{
@@ -3323,8 +3325,8 @@ class FngTextInputComponent {
3323
3325
  this.disabled = isDisabled;
3324
3326
  this.cdr.markForCheck();
3325
3327
  }
3326
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTextInputComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3327
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: FngTextInputComponent, isStandalone: true, selector: "fng-text-input", inputs: { label: "label", showValidationIcons: "showValidationIcons", 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: [
3328
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTextInputComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3329
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: FngTextInputComponent, isStandalone: true, selector: "fng-text-input", inputs: { label: "label", showValidationIcons: "showValidationIcons", 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: [
3328
3330
  {
3329
3331
  provide: NG_VALUE_ACCESSOR,
3330
3332
  useExisting: forwardRef(() => FngTextInputComponent),
@@ -3332,7 +3334,7 @@ class FngTextInputComponent {
3332
3334
  }
3333
3335
  ], viewQueries: [{ propertyName: "inputElement", first: true, predicate: ["inputElement"], descendants: true }], ngImport: i0, template: "<label class=\"fwe-input-text\" [class.fwe-no-pointer-events]=\"readonly === true\" [ngClass]=\"{ 'fng-input-text--with-icon': showValidationIcons }\">\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 } @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 } @if(showValidationIcons){\n <i class=\"fng-icon-svg-validation-state\" aria-hidden=\"true\"></i>\n }\n</label>\n", styles: ["fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=text],fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=password],fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=date],fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=datetime-local],fng-text-input:not(.ng-pristine).ng-invalid.ng-touched 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.ng-touched label.fwe-input-text input[type=text]:focus,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=password]:focus,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=date]:focus,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=datetime-local]:focus,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=number]:focus{border-bottom:1px solid var(--fwe-red)!important}fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=text]:disabled,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=password]:disabled,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=date]:disabled,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=datetime-local]:disabled,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched 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.ng-touched label.fwe-input-text input[type=text]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=text]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=text]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=password]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=password]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=password]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=date]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=date]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=date]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=datetime-local]:disabled~.fwe-input-text-info,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=number]:disabled~.fwe-input-text-label,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched label.fwe-input-text input[type=number]:disabled~.fwe-input-text-invalid,fng-text-input:not(.ng-pristine).ng-invalid.ng-touched 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.ng-touched label.fwe-input-text .fwe-input-text-info{display:none!important}fng-text-input:not(.ng-pristine).ng-invalid.ng-touched 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}fng-text-input label.fwe-input-text:has(input:disabled){cursor:not-allowed!important}.fwe-input-text-invalid.fng-projected:empty{display:none}.fwe-input-text-info.fng-projected:empty{display:none}.fng-input-text--with-icon input{padding-right:24px}.fng-input-text--with-icon i{position:absolute;line-height:1;bottom:26px;right:4px;height:16px;width:16px;visibility:hidden}fng-text-input.ng-valid.ng-touched .fng-input-text--with-icon i.fng-icon-svg-validation-state{visibility:visible;background-image:url(\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='13' height='10' viewBox='0 0 13 10' fill='none'><path d='M4.207 9.621L0 5.414L1.414 4L4.207 6.793L11 0L12.414 1.414L4.207 9.621Z' fill='%230091DC'/></svg>\");background-repeat:no-repeat;background-size:13px 13px;background-position:center center}fng-text-input.ng-invalid.ng-touched:not(.ng-pristine) .fng-input-text--with-icon i.fng-icon-svg-validation-state{visibility:visible;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTYuOTUgOC40NjQwNUwxNS41MzYgNy4wNTAwNUwxMiAxMC41ODZMOC40NjQwNSA3LjA1MDA1TDcuMDUwMDUgOC40NjQwNUwxMC41ODYgMTJMNy4wNTAwNSAxNS41MzZMOC40NjQwNSAxNi45NUwxMiAxMy40MTRMMTUuNTM2IDE2Ljk1TDE2Ljk1IDE1LjUzNkwxMy40MTQgMTJMMTYuOTUgOC40NjQwNVoiIGZpbGw9IiNENTAwMDAiLz48L3N2Zz4=);background-repeat:no-repeat;background-position:center center;background-size:24px 24px}\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"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], encapsulation: i0.ViewEncapsulation.None }); }
3334
3336
  }
3335
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTextInputComponent, decorators: [{
3337
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTextInputComponent, decorators: [{
3336
3338
  type: Component,
3337
3339
  args: [{ imports: [FormsModule, NgClass], selector: 'fng-text-input', providers: [
3338
3340
  {
@@ -3456,10 +3458,10 @@ class FngPromptComponent {
3456
3458
  }
3457
3459
  }
3458
3460
  }
3459
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPromptComponent, deps: [{ token: i1$4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
3460
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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", "showValidationIcons", "type", "readonly", "step", "min", "max", "tabindex", "placeholder", "name", "disabled", "value", "required", "error", "hint"] }], encapsulation: i0.ViewEncapsulation.None }); }
3461
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPromptComponent, deps: [{ token: i1$4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
3462
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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],[formArray],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", "showValidationIcons", "type", "readonly", "step", "min", "max", "tabindex", "placeholder", "name", "disabled", "value", "required", "error", "hint"] }], encapsulation: i0.ViewEncapsulation.None }); }
3461
3463
  }
3462
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngPromptComponent, decorators: [{
3464
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngPromptComponent, decorators: [{
3463
3465
  type: Component,
3464
3466
  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" }]
3465
3467
  }], ctorParameters: () => [{ type: i1$4.FormBuilder }], propDecorators: { data: [{
@@ -3544,10 +3546,10 @@ class FngImageGalleryComponent {
3544
3546
  this.isScaled = false;
3545
3547
  }
3546
3548
  }
3547
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngImageGalleryComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3548
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
3549
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngImageGalleryComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3550
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
3549
3551
  }
3550
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngImageGalleryComponent, decorators: [{
3552
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngImageGalleryComponent, decorators: [{
3551
3553
  type: Component,
3552
3554
  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"] }]
3553
3555
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { data: [{
@@ -3664,10 +3666,10 @@ class FngModalService {
3664
3666
  resolve();
3665
3667
  });
3666
3668
  }
3667
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngModalService, deps: [{ token: i1$2.Overlay }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
3668
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngModalService, providedIn: 'root' }); }
3669
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngModalService, deps: [{ token: i1$2.Overlay }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Injectable }); }
3670
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngModalService, providedIn: 'root' }); }
3669
3671
  }
3670
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngModalService, decorators: [{
3672
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngModalService, decorators: [{
3671
3673
  type: Injectable,
3672
3674
  args: [{ providedIn: 'root' }]
3673
3675
  }], ctorParameters: () => [{ type: i1$2.Overlay }, { type: i1.Router }] });
@@ -3726,10 +3728,10 @@ class FngCustomModalComponent {
3726
3728
  onClickInside(event) {
3727
3729
  event.stopPropagation();
3728
3730
  }
3729
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngCustomModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3730
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
3731
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngCustomModalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3732
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
3731
3733
  }
3732
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngCustomModalComponent, decorators: [{
3734
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngCustomModalComponent, decorators: [{
3733
3735
  type: Component,
3734
3736
  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" }]
3735
3737
  }], propDecorators: { closeOnBackdrop: [{
@@ -3757,11 +3759,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
3757
3759
  }] } });
3758
3760
 
3759
3761
  class FestoAngularModalsModule {
3760
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularModalsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3761
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent], exports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent] }); }
3762
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngImageGalleryComponent] }); }
3762
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularModalsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
3763
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent], exports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent] }); }
3764
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularModalsModule, imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngImageGalleryComponent] }); }
3763
3765
  }
3764
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularModalsModule, decorators: [{
3766
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularModalsModule, decorators: [{
3765
3767
  type: NgModule,
3766
3768
  args: [{
3767
3769
  imports: [FngAlertComponent, FngConfirmComponent, FngPromptComponent, FngCustomModalComponent, FngImageGalleryComponent],
@@ -3874,8 +3876,8 @@ class FngCheckboxComponent {
3874
3876
  this.change.emit(this.checked);
3875
3877
  }
3876
3878
  }
3877
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngCheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3878
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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: [
3879
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngCheckboxComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
3880
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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: [
3879
3881
  {
3880
3882
  provide: NG_VALUE_ACCESSOR,
3881
3883
  useExisting: forwardRef(() => FngCheckboxComponent),
@@ -3883,7 +3885,7 @@ class FngCheckboxComponent {
3883
3885
  }
3884
3886
  ], 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 }); }
3885
3887
  }
3886
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngCheckboxComponent, decorators: [{
3888
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngCheckboxComponent, decorators: [{
3887
3889
  type: Component,
3888
3890
  args: [{ imports: [CommonModule], selector: 'fng-checkbox', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
3889
3891
  {
@@ -3982,10 +3984,10 @@ class FngColorIndicatorComponent {
3982
3984
  return this.color;
3983
3985
  }
3984
3986
  }
3985
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngColorIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3986
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
3987
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngColorIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3988
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], 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 }); }
3987
3989
  }
3988
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngColorIndicatorComponent, decorators: [{
3990
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngColorIndicatorComponent, decorators: [{
3989
3991
  type: Component,
3990
3992
  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"] }]
3991
3993
  }], propDecorators: { label: [{
@@ -4377,16 +4379,16 @@ class FngColorPickerComponent {
4377
4379
  this.inputType = type;
4378
4380
  this.isSelectOpen = false;
4379
4381
  }
4380
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4381
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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: [
4382
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4383
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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: [
4382
4384
  {
4383
4385
  provide: NG_VALUE_ACCESSOR,
4384
4386
  useExisting: forwardRef(() => FngColorPickerComponent),
4385
4387
  multi: true
4386
4388
  }
4387
- ], 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-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{background-color:var(--fwe-white);box-shadow:0 1px 4px #3333;border-radius:4px;padding:8px;font-size:var(--fwe-font-size-md);line-height:1rem}.fwe-popover--legend{display:table;padding:16px;line-height:24px}.fwe-popover--legend .fwe-popover-legend-content{display:table-row}.fwe-popover--legend .fwe-popover-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fwe-popover--legend .fwe-popover-legend-content dd{display:table-cell;margin:0}.fwe-popover--menu{font-size:var(--fwe-font-size-base);line-height:1.5rem;padding:16px}.fwe-popover--menu button{all:unset;cursor:pointer;border-bottom:none;min-height:36px;padding:0;height:36px;width:100%;display:flex;align-items:center;color:var(--fwe-text)}.fwe-popover--menu button .fwe-svg-icon{margin-right:8px;margin-left:8px}.fwe-popover--menu button i{display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;height:24px;width:32px;margin-right:0}.fwe-popover--menu button i:before{display:inline-flex}.fwe-popover--menu button span{display:inline-flex;margin-right:8px}.fwe-popover--menu button:hover{background-color:#3333331a}.fwe-popover--menu button:active{background-color:#3333}.fwe-popover--content{width:auto;min-width:max-content;max-width:none;padding:16px}.fwe-popover-menu-trigger{background:none;border:none;padding:0;margin:0;line-height:0;display:block;cursor:pointer}.fwe-popover-menu-trigger:hover{color:var(--fwe-hero)}.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 }); }
4389
+ ], 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-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{background-color:var(--fwe-white);box-shadow:0 1px 4px #3333;border-radius:4px;padding:8px;font-size:var(--fwe-font-size-md);line-height:1rem}.fwe-popover--legend{display:table;padding:16px;line-height:24px}.fwe-popover--legend .fwe-popover-legend-content{display:table-row}.fwe-popover--legend .fwe-popover-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fwe-popover--legend .fwe-popover-legend-content dd{display:table-cell;margin:0}.fwe-popover--menu{font-size:var(--fwe-font-size-base);line-height:1.5rem;padding:16px}.fwe-popover--menu button{all:unset;cursor:pointer;border-bottom:none;min-height:36px;padding:0;height:36px;width:100%;display:flex;align-items:center;color:var(--fwe-text)}.fwe-popover--menu button .fwe-svg-icon{margin-right:8px;margin-left:8px}.fwe-popover--menu button i{display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;height:24px;width:32px;margin-right:0}.fwe-popover--menu button i:before{display:inline-flex}.fwe-popover--menu button span{display:inline-flex;margin-right:8px}.fwe-popover--menu button:hover{background-color:#3333331a}.fwe-popover--menu button:active{background-color:#3333}.fwe-popover--content{width:auto;min-width:max-content;max-width:none;padding:16px}.fwe-popover-menu-trigger{background:none;border:none;padding:0;margin:0;line-height:0;display:block;cursor:pointer}.fwe-popover-menu-trigger:hover{color:var(--fwe-hero)}.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 .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{flex-shrink:1;cursor:pointer;display:flex}.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 }); }
4388
4390
  }
4389
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngColorPickerComponent, decorators: [{
4391
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngColorPickerComponent, decorators: [{
4390
4392
  type: Component,
4391
4393
  args: [{ imports: [CommonModule, DragDropModule, FormsModule], selector: 'fng-color-picker', providers: [
4392
4394
  {
@@ -4394,7 +4396,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
4394
4396
  useExisting: forwardRef(() => FngColorPickerComponent),
4395
4397
  multi: true
4396
4398
  }
4397
- ], encapsulation: ViewEncapsulation.None, 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-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{background-color:var(--fwe-white);box-shadow:0 1px 4px #3333;border-radius:4px;padding:8px;font-size:var(--fwe-font-size-md);line-height:1rem}.fwe-popover--legend{display:table;padding:16px;line-height:24px}.fwe-popover--legend .fwe-popover-legend-content{display:table-row}.fwe-popover--legend .fwe-popover-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fwe-popover--legend .fwe-popover-legend-content dd{display:table-cell;margin:0}.fwe-popover--menu{font-size:var(--fwe-font-size-base);line-height:1.5rem;padding:16px}.fwe-popover--menu button{all:unset;cursor:pointer;border-bottom:none;min-height:36px;padding:0;height:36px;width:100%;display:flex;align-items:center;color:var(--fwe-text)}.fwe-popover--menu button .fwe-svg-icon{margin-right:8px;margin-left:8px}.fwe-popover--menu button i{display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;height:24px;width:32px;margin-right:0}.fwe-popover--menu button i:before{display:inline-flex}.fwe-popover--menu button span{display:inline-flex;margin-right:8px}.fwe-popover--menu button:hover{background-color:#3333331a}.fwe-popover--menu button:active{background-color:#3333}.fwe-popover--content{width:auto;min-width:max-content;max-width:none;padding:16px}.fwe-popover-menu-trigger{background:none;border:none;padding:0;margin:0;line-height:0;display:block;cursor:pointer}.fwe-popover-menu-trigger:hover{color:var(--fwe-hero)}.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"] }]
4399
+ ], encapsulation: ViewEncapsulation.None, 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-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{background-color:var(--fwe-white);box-shadow:0 1px 4px #3333;border-radius:4px;padding:8px;font-size:var(--fwe-font-size-md);line-height:1rem}.fwe-popover--legend{display:table;padding:16px;line-height:24px}.fwe-popover--legend .fwe-popover-legend-content{display:table-row}.fwe-popover--legend .fwe-popover-legend-content dt{display:table-cell;margin:0;padding-right:8px}.fwe-popover--legend .fwe-popover-legend-content dd{display:table-cell;margin:0}.fwe-popover--menu{font-size:var(--fwe-font-size-base);line-height:1.5rem;padding:16px}.fwe-popover--menu button{all:unset;cursor:pointer;border-bottom:none;min-height:36px;padding:0;height:36px;width:100%;display:flex;align-items:center;color:var(--fwe-text)}.fwe-popover--menu button .fwe-svg-icon{margin-right:8px;margin-left:8px}.fwe-popover--menu button i{display:inline-flex;align-items:center;justify-content:center;flex-wrap:nowrap;height:24px;width:32px;margin-right:0}.fwe-popover--menu button i:before{display:inline-flex}.fwe-popover--menu button span{display:inline-flex;margin-right:8px}.fwe-popover--menu button:hover{background-color:#3333331a}.fwe-popover--menu button:active{background-color:#3333}.fwe-popover--content{width:auto;min-width:max-content;max-width:none;padding:16px}.fwe-popover-menu-trigger{background:none;border:none;padding:0;margin:0;line-height:0;display:block;cursor:pointer}.fwe-popover-menu-trigger:hover{color:var(--fwe-hero)}.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 .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{flex-shrink:1;cursor:pointer;display:flex}.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"] }]
4398
4400
  }], propDecorators: { useAlpha: [{
4399
4401
  type: Input
4400
4402
  }], alpha: [{
@@ -4451,10 +4453,10 @@ class FngFlatpickrComponent {
4451
4453
  this.datePicker.setDate(date, triggerChange, dateFormat);
4452
4454
  }
4453
4455
  }
4454
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngFlatpickrComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4455
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
4456
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngFlatpickrComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4457
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
4456
4458
  }
4457
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngFlatpickrComponent, decorators: [{
4459
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngFlatpickrComponent, decorators: [{
4458
4460
  type: Component,
4459
4461
  args: [{ standalone: true, selector: 'fng-flatpickr', encapsulation: ViewEncapsulation.None, template: "<div class=\"fng-flatpickr\">\r\n <div #datePicker></div>\r\n</div>\r\n" }]
4460
4462
  }], propDecorators: { date: [{
@@ -4813,8 +4815,8 @@ class FngDatePickerComponent {
4813
4815
  }
4814
4816
  }
4815
4817
  }
4816
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngDatePickerComponent, deps: [{ token: i1$2.Overlay }, { token: LOCALE_ID }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
4817
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: FngDatePickerComponent, isStandalone: true, selector: "fng-date-picker", inputs: { value: "value", disabled: "disabled", hint: "hint", error: "error", options: "options", format: "format", locale: "locale", timezone: "timezone", formatDate: "formatDate", parseDate: "parseDate", required: "required", allowManualInput: "allowManualInput", openOnInputClick: "openOnInputClick", width: "width" }, host: { listeners: { "document:keydown": "hide($event)" }, properties: { "style.width": "this.width", "style.display": "this.display" } }, providers: [
4818
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngDatePickerComponent, deps: [{ token: i1$2.Overlay }, { token: LOCALE_ID }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
4819
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", type: FngDatePickerComponent, isStandalone: true, selector: "fng-date-picker", inputs: { value: "value", disabled: "disabled", hint: "hint", error: "error", options: "options", format: "format", locale: "locale", timezone: "timezone", formatDate: "formatDate", parseDate: "parseDate", required: "required", allowManualInput: "allowManualInput", openOnInputClick: "openOnInputClick", width: "width" }, host: { listeners: { "document:keydown": "hide($event)" }, properties: { "style.width": "this.width", "style.display": "this.display" } }, providers: [
4818
4820
  {
4819
4821
  provide: NG_VALUE_ACCESSOR,
4820
4822
  useExisting: forwardRef(() => FngDatePickerComponent),
@@ -4822,7 +4824,7 @@ class FngDatePickerComponent {
4822
4824
  }
4823
4825
  ], viewQueries: [{ propertyName: "connector", first: true, predicate: ["connector"], descendants: true, static: true }, { propertyName: "dateInput", first: true, predicate: ["dateInput"], descendants: true }], ngImport: i0, template: "<label\n #connector\n class=\"fng-date-picker fwe-input-text fwe-input-text-icon\"\n [class.fng-date-picker--editable]=\"allowManualInput\"\n (click)=\"openOnInputClick ? toggle($event) : null\"\n>\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 (click)=\"$event.stopPropagation(); toggle($event)\"\n ></i>\n <input\n #dateInput\n aria-label=\"picked date\"\n type=\"text\"\n [readonly]=\"!allowManualInput\"\n [required]=\"required === true || null\"\n [class.fwe-border-hero]=\"datePickerRef != null\"\n [value]=\"displayValue\"\n [disabled]=\"disabled\"\n (click)=\"onDateInputClick($event)\"\n (keydown)=\"onDateInputKeyDown($event)\"\n (blur)=\"onDateInputBlur()\"\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}.fng-date-picker,.fng-date-picker i,.fng-date-picker input{cursor:pointer}.fng-date-picker--editable input{cursor:text}\n"], encapsulation: i0.ViewEncapsulation.None }); }
4824
4826
  }
4825
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngDatePickerComponent, decorators: [{
4827
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngDatePickerComponent, decorators: [{
4826
4828
  type: Component,
4827
4829
  args: [{ imports: [], selector: 'fng-date-picker', providers: [
4828
4830
  {
@@ -5039,8 +5041,8 @@ class FngDateRangePickerComponent {
5039
5041
  this.complete.complete();
5040
5042
  }
5041
5043
  }
5042
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngDateRangePickerComponent, deps: [{ token: i1$2.Overlay }, { token: LOCALE_ID }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
5043
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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: [
5044
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngDateRangePickerComponent, deps: [{ token: i1$2.Overlay }, { token: LOCALE_ID }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
5045
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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: [
5044
5046
  {
5045
5047
  provide: NG_VALUE_ACCESSOR,
5046
5048
  useExisting: forwardRef(() => FngDateRangePickerComponent),
@@ -5048,7 +5050,7 @@ class FngDateRangePickerComponent {
5048
5050
  }
5049
5051
  ], 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 }); }
5050
5052
  }
5051
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngDateRangePickerComponent, decorators: [{
5053
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngDateRangePickerComponent, decorators: [{
5052
5054
  type: Component,
5053
5055
  args: [{ imports: [], selector: 'fng-date-range-picker', providers: [
5054
5056
  {
@@ -5179,10 +5181,10 @@ class FngTimePickerDropdownComponent {
5179
5181
  this.dateChange.emit({ reset, date: new Date(this.date), close });
5180
5182
  }
5181
5183
  }
5182
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTimePickerDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5183
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
5184
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTimePickerDropdownComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5185
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
5184
5186
  }
5185
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTimePickerDropdownComponent, decorators: [{
5187
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTimePickerDropdownComponent, decorators: [{
5186
5188
  type: Component,
5187
5189
  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"] }]
5188
5190
  }], propDecorators: { date: [{
@@ -5351,8 +5353,8 @@ class FngTimePickerComponent {
5351
5353
  this.complete.complete();
5352
5354
  }
5353
5355
  }
5354
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTimePickerComponent, deps: [{ token: i1$2.Overlay }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
5355
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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: [
5356
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTimePickerComponent, deps: [{ token: i1$2.Overlay }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
5357
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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: [
5356
5358
  {
5357
5359
  provide: NG_VALUE_ACCESSOR,
5358
5360
  useExisting: forwardRef(() => FngTimePickerComponent),
@@ -5360,7 +5362,7 @@ class FngTimePickerComponent {
5360
5362
  }
5361
5363
  ], 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 }); }
5362
5364
  }
5363
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTimePickerComponent, decorators: [{
5365
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTimePickerComponent, decorators: [{
5364
5366
  type: Component,
5365
5367
  args: [{ imports: [CommonModule], selector: 'fng-time-picker', providers: [
5366
5368
  {
@@ -5425,10 +5427,10 @@ class FngUniqueSelectionDispatcher {
5425
5427
  ngOnDestroy() {
5426
5428
  this.listeners = [];
5427
5429
  }
5428
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngUniqueSelectionDispatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5429
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngUniqueSelectionDispatcher, providedIn: 'root' }); }
5430
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngUniqueSelectionDispatcher, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5431
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngUniqueSelectionDispatcher, providedIn: 'root' }); }
5430
5432
  }
5431
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngUniqueSelectionDispatcher, decorators: [{
5433
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngUniqueSelectionDispatcher, decorators: [{
5432
5434
  type: Injectable,
5433
5435
  args: [{ providedIn: 'root' }]
5434
5436
  }] });
@@ -5573,8 +5575,8 @@ class FngRadioGroupDirective {
5573
5575
  });
5574
5576
  }
5575
5577
  }
5576
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngRadioGroupDirective, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
5577
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", 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: [
5578
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngRadioGroupDirective, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
5579
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.11", 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: [
5578
5580
  {
5579
5581
  provide: NG_VALUE_ACCESSOR,
5580
5582
  useExisting: forwardRef(() => FngRadioGroupDirective),
@@ -5582,7 +5584,7 @@ class FngRadioGroupDirective {
5582
5584
  }
5583
5585
  ], queries: [{ propertyName: "radios", predicate: i0.forwardRef(() => FngRadioComponent), descendants: true }], ngImport: i0 }); }
5584
5586
  }
5585
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngRadioGroupDirective, decorators: [{
5587
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngRadioGroupDirective, decorators: [{
5586
5588
  type: Directive,
5587
5589
  args: [{
5588
5590
  standalone: true,
@@ -5747,10 +5749,10 @@ class FngRadioComponent {
5747
5749
  emitChangeEvent() {
5748
5750
  this.change.emit(new FngRadioChange(this, this.innerValue));
5749
5751
  }
5750
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngRadioComponent, deps: [{ token: FngRadioGroupDirective, optional: true }, { token: i0.ChangeDetectorRef }, { token: FngUniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component }); }
5751
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
5752
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngRadioComponent, deps: [{ token: FngRadioGroupDirective, optional: true }, { token: i0.ChangeDetectorRef }, { token: FngUniqueSelectionDispatcher }], target: i0.ɵɵFactoryTarget.Component }); }
5753
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
5752
5754
  }
5753
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngRadioComponent, decorators: [{
5755
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngRadioComponent, decorators: [{
5754
5756
  type: Component,
5755
5757
  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" }]
5756
5758
  }], ctorParameters: () => [{ type: FngRadioGroupDirective, decorators: [{
@@ -5809,10 +5811,10 @@ class FngSegmentControlComponent {
5809
5811
  onInputClick(event) {
5810
5812
  event.stopPropagation();
5811
5813
  }
5812
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSegmentControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5813
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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 }); }
5814
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSegmentControlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5815
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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 }); }
5814
5816
  }
5815
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSegmentControlComponent, decorators: [{
5817
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSegmentControlComponent, decorators: [{
5816
5818
  type: Component,
5817
5819
  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" }]
5818
5820
  }], propDecorators: { name: [{
@@ -5931,8 +5933,8 @@ class FngSegmentComponent {
5931
5933
  });
5932
5934
  }
5933
5935
  }
5934
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSegmentComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
5935
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: FngSegmentComponent, isStandalone: true, selector: "fng-segment", inputs: { legend: "legend", config: "config", value: "value" }, outputs: { fngChange: "fngChange", change: "change" }, providers: [
5936
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSegmentComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
5937
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", type: FngSegmentComponent, isStandalone: true, selector: "fng-segment", inputs: { legend: "legend", config: "config", value: "value" }, outputs: { fngChange: "fngChange", change: "change" }, providers: [
5936
5938
  {
5937
5939
  provide: NG_VALUE_ACCESSOR,
5938
5940
  useExisting: forwardRef(() => FngSegmentComponent),
@@ -5940,7 +5942,7 @@ class FngSegmentComponent {
5940
5942
  }
5941
5943
  ], 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 }); }
5942
5944
  }
5943
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSegmentComponent, decorators: [{
5945
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSegmentComponent, decorators: [{
5944
5946
  type: Component,
5945
5947
  args: [{ imports: [CommonModule], selector: 'fng-segment', encapsulation: ViewEncapsulation.None, providers: [
5946
5948
  {
@@ -5974,10 +5976,10 @@ class FngSelectOptionComponent {
5974
5976
  async update() {
5975
5977
  return await Promise.resolve(this.el);
5976
5978
  }
5977
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSelectOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5978
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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 }); }
5979
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSelectOptionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5980
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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 }); }
5979
5981
  }
5980
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSelectOptionComponent, decorators: [{
5982
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSelectOptionComponent, decorators: [{
5981
5983
  type: Component,
5982
5984
  args: [{ imports: [], selector: 'fng-select-option', encapsulation: ViewEncapsulation.None, template: "<span #root>\r\n <ng-content></ng-content>\r\n</span>\r\n" }]
5983
5985
  }], propDecorators: { value: [{
@@ -6012,10 +6014,10 @@ class FngChipTextPipe {
6012
6014
  });
6013
6015
  return chipText;
6014
6016
  }
6015
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngChipTextPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
6016
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: FngChipTextPipe, isStandalone: true, name: "fngChipText", pure: false }); }
6017
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngChipTextPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
6018
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.2.11", ngImport: i0, type: FngChipTextPipe, isStandalone: true, name: "fngChipText", pure: false }); }
6017
6019
  }
6018
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngChipTextPipe, decorators: [{
6020
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngChipTextPipe, decorators: [{
6019
6021
  type: Pipe,
6020
6022
  args: [{
6021
6023
  standalone: true,
@@ -6232,16 +6234,16 @@ class FngSelectComponent {
6232
6234
  }
6233
6235
  return this.value === this.getOptionValue(index);
6234
6236
  }
6235
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: i0.Renderer2 }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
6236
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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: [
6237
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: DOCUMENT }, { token: i0.Renderer2 }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Component }); }
6238
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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: [
6237
6239
  {
6238
6240
  provide: NG_VALUE_ACCESSOR,
6239
6241
  useExisting: forwardRef(() => FngSelectComponent),
6240
6242
  multi: true
6241
6243
  }
6242
- ], 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 [class.fwe-selected]=\"isOptionSelected(i)\"\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 0;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 12px 16px;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.fwe-selected{color:var(--fwe-hero)}.fwe-select-options-container .fwe-select-option.fwe-selected:before{content:\"\";width:4px;height:100%;background-color:var(--fwe-hero);position:absolute;left:0;top:0}.fwe-select-options-container .fwe-select-option.fwe-selected:hover{color:var(--fwe-hero-hover)}.fwe-select-options-container .fwe-select-option.fwe-selected:hover:before{background-color:var(--fwe-hero-hover)}.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{position:absolute;right:0;top:0}.chip-removable:after{content:\"\";display:block;position:absolute;right:5px;top:4px;height:16px;width:16px;background-size:16px 16px;background-repeat:no-repeat;background-image:url(data:image/svg+xml;base64,PHN2ZyBpZD0iYTAwMzhlNDEtMjFlNi00ZjBlLWFmZjctMzViMzY2MWQ0ZDhlIiBkYXRhLW5hbWU9ImNvbnRlbnQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCgk8ZyBpZD0iZmQwZDc0NmQtZTE2My00Yjk4LTkxYTctYjk0MGYyYTlkZDc4IiBkYXRhLW5hbWU9ImFiYjU1YWU4LWNhNTUtNDcwYy04N2MzLTRiMDY3MzhiNDM2MCI+DQoJCTxyZWN0IHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0ibm9uZSIvPg0KCTwvZz4NCgk8ZyBpZD0iYTE4OTFiZmMtNDBjMS00Y2EwLWFmOTgtMmJiOTQ1YTdmMDFmIiBkYXRhLW5hbWU9ImI2NGIxZWQyLWI4MzEtNDM1Yy05Y2VlLWI5OTY0MjYwMjA5ZCI+DQoJCTxwb2x5Z29uIHBvaW50cz0iMTAuMjQgNS4wNSA4IDcuMyA1Ljc1IDUuMDUgNS4wNSA1Ljc2IDcuMjkgOCA1LjA1IDEwLjI1IDUuNzUgMTAuOTUgOCA4LjcxIDEwLjI0IDEwLjk1IDEwLjk1IDEwLjI1IDguNyA4IDEwLjk1IDUuNzYgMTAuMjQgNS4wNSAxMC4yNCA1LjA1IiBmaWxsPSIjMzMzIi8+DQoJPC9nPg0KPC9zdmc+)}.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:has(.fwe-select.fwe-focus):before{transform:rotate(180deg)}.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 }); }
6244
+ ], 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 [class.fwe-selected]=\"isOptionSelected(i)\"\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 0;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 12px 16px;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.fwe-selected{color:var(--fwe-hero)}.fwe-select-options-container .fwe-select-option.fwe-selected:before{content:\"\";width:4px;height:100%;background-color:var(--fwe-hero);position:absolute;left:0;top:0}.fwe-select-options-container .fwe-select-option.fwe-selected:hover{color:var(--fwe-hero-hover)}.fwe-select-options-container .fwe-select-option.fwe-selected:hover:before{background-color:var(--fwe-hero-hover)}.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{position:absolute;right:0;top:0}.chip-removable:after{content:\"\";display:block;position:absolute;right:5px;top:4px;height:16px;width:16px;background-size:16px 16px;background-repeat:no-repeat;background-image:url(data:image/svg+xml;base64,PHN2ZyBpZD0iYTAwMzhlNDEtMjFlNi00ZjBlLWFmZjctMzViMzY2MWQ0ZDhlIiBkYXRhLW5hbWU9ImNvbnRlbnQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE2IDE2Ij4NCgk8ZyBpZD0iZmQwZDc0NmQtZTE2My00Yjk4LTkxYTctYjk0MGYyYTlkZDc4IiBkYXRhLW5hbWU9ImFiYjU1YWU4LWNhNTUtNDcwYy04N2MzLTRiMDY3MzhiNDM2MCI+DQoJCTxyZWN0IHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgZmlsbD0ibm9uZSIvPg0KCTwvZz4NCgk8ZyBpZD0iYTE4OTFiZmMtNDBjMS00Y2EwLWFmOTgtMmJiOTQ1YTdmMDFmIiBkYXRhLW5hbWU9ImI2NGIxZWQyLWI4MzEtNDM1Yy05Y2VlLWI5OTY0MjYwMjA5ZCI+DQoJCTxwb2x5Z29uIHBvaW50cz0iMTAuMjQgNS4wNSA4IDcuMyA1Ljc1IDUuMDUgNS4wNSA1Ljc2IDcuMjkgOCA1LjA1IDEwLjI1IDUuNzUgMTAuOTUgOCA4LjcxIDEwLjI0IDEwLjk1IDEwLjk1IDEwLjI1IDguNyA4IDEwLjk1IDUuNzYgMTAuMjQgNS4wNSAxMC4yNCA1LjA1IiBmaWxsPSIjMzMzIi8+DQoJPC9nPg0KPC9zdmc+)}.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:has(.fwe-select.fwe-focus):before{transform:rotate(180deg)}.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", "cdkConnectedOverlayUsePopover", "cdkConnectedOverlayMatchWidth", "cdkConnectedOverlay"], 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 }); }
6243
6245
  }
6244
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSelectComponent, decorators: [{
6246
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSelectComponent, decorators: [{
6245
6247
  type: Component,
6246
6248
  args: [{ imports: [CommonModule, FngChipTextPipe, OverlayModule], selector: 'fng-select', encapsulation: ViewEncapsulation.None, providers: [
6247
6249
  {
@@ -6362,8 +6364,8 @@ class FngSliderComponent {
6362
6364
  this.numberoffset = 8 - (stringValue || '1').length * 6;
6363
6365
  }
6364
6366
  }
6365
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSliderComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
6366
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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: [
6367
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSliderComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
6368
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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: [
6367
6369
  {
6368
6370
  provide: NG_VALUE_ACCESSOR,
6369
6371
  useExisting: forwardRef(() => FngSliderComponent),
@@ -6371,7 +6373,7 @@ class FngSliderComponent {
6371
6373
  }
6372
6374
  ], 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 }); }
6373
6375
  }
6374
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSliderComponent, decorators: [{
6376
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSliderComponent, decorators: [{
6375
6377
  type: Component,
6376
6378
  args: [{ imports: [CommonModule], selector: 'fng-slider', providers: [
6377
6379
  {
@@ -6480,8 +6482,8 @@ class FngSwitchComponent {
6480
6482
  this.change.emit(this.checked);
6481
6483
  }
6482
6484
  }
6483
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSwitchComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
6484
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", 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: [
6485
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSwitchComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
6486
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.11", 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: [
6485
6487
  {
6486
6488
  provide: NG_VALUE_ACCESSOR,
6487
6489
  useExisting: forwardRef(() => FngSwitchComponent),
@@ -6489,7 +6491,7 @@ class FngSwitchComponent {
6489
6491
  }
6490
6492
  ], 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 }); }
6491
6493
  }
6492
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngSwitchComponent, decorators: [{
6494
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngSwitchComponent, decorators: [{
6493
6495
  type: Component,
6494
6496
  args: [{ imports: [CommonModule], selector: 'fng-switch', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [
6495
6497
  {
@@ -6652,8 +6654,8 @@ class FngTextAreaComponent {
6652
6654
  setDisabledState(isDisabled) {
6653
6655
  this.disabled = isDisabled;
6654
6656
  }
6655
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6656
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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: [
6657
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTextAreaComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6658
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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: [
6657
6659
  {
6658
6660
  provide: NG_VALUE_ACCESSOR,
6659
6661
  useExisting: forwardRef(() => FngTextAreaComponent),
@@ -6661,7 +6663,7 @@ class FngTextAreaComponent {
6661
6663
  }
6662
6664
  ], 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 }); }
6663
6665
  }
6664
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTextAreaComponent, decorators: [{
6666
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTextAreaComponent, decorators: [{
6665
6667
  type: Component,
6666
6668
  args: [{ imports: [], selector: 'fng-text-area', providers: [
6667
6669
  {
@@ -6729,10 +6731,10 @@ class FngValueAccessorBaseDirective {
6729
6731
  setDisabledState(isDisabled) {
6730
6732
  this.disabled = isDisabled;
6731
6733
  }
6732
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngValueAccessorBaseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6733
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: FngValueAccessorBaseDirective, isStandalone: true, inputs: { disabled: "disabled" }, ngImport: i0 }); }
6734
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngValueAccessorBaseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
6735
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.11", type: FngValueAccessorBaseDirective, isStandalone: true, inputs: { disabled: "disabled" }, ngImport: i0 }); }
6734
6736
  }
6735
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngValueAccessorBaseDirective, decorators: [{
6737
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngValueAccessorBaseDirective, decorators: [{
6736
6738
  type: Directive
6737
6739
  }], propDecorators: { disabled: [{
6738
6740
  type: Input
@@ -7032,8 +7034,8 @@ class FngTextEditorComponent extends FngValueAccessorBaseDirective {
7032
7034
  // set a placeholder for tab entity to avoid that quill removes it
7033
7035
  return value.replace(/&#9;/gi, '###tab###');
7034
7036
  }
7035
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTextEditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7036
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", 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: [
7037
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTextEditorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
7038
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.11", 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: [
7037
7039
  {
7038
7040
  provide: NG_VALUE_ACCESSOR,
7039
7041
  useExisting: forwardRef(() => FngTextEditorComponent),
@@ -7041,7 +7043,7 @@ class FngTextEditorComponent extends FngValueAccessorBaseDirective {
7041
7043
  }
7042
7044
  ], 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 }); }
7043
7045
  }
7044
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FngTextEditorComponent, decorators: [{
7046
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FngTextEditorComponent, decorators: [{
7045
7047
  type: Component,
7046
7048
  args: [{ imports: [ReactiveFormsModule, FormsModule, OverlayModule, ScrollingModule, DragDropModule, ObserversModule], selector: 'fng-text-editor', encapsulation: ViewEncapsulation.None, providers: [
7047
7049
  {
@@ -7100,8 +7102,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
7100
7102
  }] } });
7101
7103
 
7102
7104
  class FestoAngularFormsModule {
7103
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7104
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularFormsModule, imports: [ReactiveFormsModule,
7105
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularFormsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7106
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularFormsModule, imports: [ReactiveFormsModule,
7105
7107
  FormsModule,
7106
7108
  FngCheckboxComponent,
7107
7109
  FngColorIndicatorComponent,
@@ -7140,7 +7142,7 @@ class FestoAngularFormsModule {
7140
7142
  FngSwitchComponent,
7141
7143
  FngTextAreaComponent,
7142
7144
  FngTextEditorComponent] }); }
7143
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularFormsModule, imports: [ReactiveFormsModule,
7145
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularFormsModule, imports: [ReactiveFormsModule,
7144
7146
  FormsModule,
7145
7147
  FngCheckboxComponent,
7146
7148
  FngColorIndicatorComponent,
@@ -7157,7 +7159,7 @@ class FestoAngularFormsModule {
7157
7159
  FngTextEditorComponent, ReactiveFormsModule,
7158
7160
  FormsModule] }); }
7159
7161
  }
7160
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularFormsModule, decorators: [{
7162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularFormsModule, decorators: [{
7161
7163
  type: NgModule,
7162
7164
  args: [{
7163
7165
  imports: [
@@ -7208,11 +7210,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
7208
7210
  }] });
7209
7211
 
7210
7212
  class FestoAngularModule {
7211
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7212
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularModule, imports: [FngSafeHtmlPipe, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule], exports: [FngSafeHtmlPipe, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule] }); }
7213
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularModule, imports: [FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule] }); }
7213
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
7214
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularModule, imports: [FngSafeHtmlPipe, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule], exports: [FngSafeHtmlPipe, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule] }); }
7215
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularModule, imports: [FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule, FestoAngularComponentsModule, FestoAngularFormsModule, FestoAngularModalsModule, FestoAngularSnackbarModule] }); }
7214
7216
  }
7215
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FestoAngularModule, decorators: [{
7217
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.11", ngImport: i0, type: FestoAngularModule, decorators: [{
7216
7218
  type: NgModule,
7217
7219
  args: [{
7218
7220
  declarations: [],