import { Component, Input, Output, EventEmitter } from '@angular/core';
import { checkTruthAttribute } from '../../utils/attribute.util';
import * as i0 from "@angular/core";
import * as i1 from "@ionic/angular";
import * as i2 from "@angular/common";
export class PageComponent {
    centerH;
    centerV;
    dark;
    noScroll;
    devMode;
    buttonsVertical;
    stickyButtonOn;
    noStickyButtonFade;
    scrollEvent = new EventEmitter();
    inputCenterH = false;
    inputCenterV = false;
    inputDark = false;
    inputNoScroll = false;
    inputDevMode = false;
    inputButtonsVertical = false;
    inputStickyButtonOn = false;
    inputNoStickyButtonFade = false;
    ngOnChanges(changes) {
        this.inputCenterH = checkTruthAttribute(changes, 'centerH', this.inputCenterH);
        this.inputCenterV = checkTruthAttribute(changes, 'centerV', this.inputCenterV);
        this.inputDark = checkTruthAttribute(changes, 'dark', this.inputDark);
        this.inputNoScroll = checkTruthAttribute(changes, 'noScroll', this.inputNoScroll);
        this.inputDevMode = checkTruthAttribute(changes, 'devMode', this.inputDevMode);
        this.inputButtonsVertical = checkTruthAttribute(changes, 'buttonsVertical', this.inputButtonsVertical);
        this.inputNoStickyButtonFade = checkTruthAttribute(changes, 'noStickyButtonFade', this.inputNoStickyButtonFade);
        this.inputStickyButtonOn = checkTruthAttribute(changes, 'stickyButtonOn', this.inputStickyButtonOn);
    }
    static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: PageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
    static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.7", type: PageComponent, selector: "cf-page", inputs: { centerH: "centerH", centerV: "centerV", dark: "dark", noScroll: "noScroll", devMode: "devMode", buttonsVertical: "buttonsVertical", stickyButtonOn: "stickyButtonOn", noStickyButtonFade: "noStickyButtonFade" }, outputs: { scrollEvent: "scrollEvent" }, usesOnChanges: true, ngImport: i0, template: "<ion-content\n  scrollEvents=\"true\"\n  class=\"ion-page cf-page\"\n  [ngClass]=\"{ 'bg-dark': inputDark, 'no-scroll': inputNoScroll, 'dev-mode': inputDevMode }\"\n  (ionScroll)=\"scrollEvent.emit($event)\">\n  <div id=\"page-setup\" [ngClass]=\"{ 'center-v': inputCenterV }\">\n    <!-- Header -->\n    <div id=\"header\" class=\"ion-no-border\">\n      <div class=\"content\">\n        <ng-content select=\"[cf-page-header]\"></ng-content>\n      </div>\n    </div>\n    <!-- Content and Buttons -->\n    <div id=\"device-spacing\" [ngClass]=\"{ 'center-h': inputCenterH, 'center-v': inputCenterV }\">\n      <div class=\"content\">\n        <ng-content></ng-content>\n      </div>\n      <div id=\"page-buttons\">\n        <div class=\"content\" [ngClass]=\"{ 'vertical-buttons': inputButtonsVertical }\">\n          <ng-content select=\"[cf-page-buttons]\"></ng-content>\n        </div>\n      </div>\n    </div>\n    <!-- Footer -->\n    <div id=\"footer\">\n      <div class=\"content\">\n        <ng-content select=\"[cf-page-footer]\"></ng-content>\n      </div>\n    </div>\n    <!-- Sticky-buttons -->\n    <div id=\"sticky-buttons\" *ngIf=\"inputStickyButtonOn\">\n      <div id=\"overlay\" [ngClass]=\"{ off: inputNoStickyButtonFade }\"> </div>\n      <div id=\"buttons-container-background\">\n        <div id=\"buttons-container\">\n          <div class=\"content\" [ngClass]=\"{ 'vertical-buttons': inputButtonsVertical }\">\n            <ng-content select=\"[cf-page-sticky-buttons]\"></ng-content>\n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n</ion-content>\n", styles: ["ion-content.cf-page{--page-background-color: var(--cf-page-main-bg-color, var(--cf-app-background-light))}ion-content.cf-page.bg-dark{--page-background-color: var(--cf-app-background-dark)}ion-content.cf-page::part(scroll){background-color:var(--page-background-color);-ms-overflow-style:none;scrollbar-width:none}ion-content.cf-page::part(scroll)::-webkit-scrollbar{display:none}ion-content.cf-page.no-scroll::part(scroll){overflow:hidden}ion-content.cf-page{--main-page-block-padding: 24px}@media (min-width: 768px){ion-content.cf-page{--main-page-block-padding: 48px}}ion-content.cf-page #page-setup{position:relative;width:100%;min-height:100%;height:fit-content;flex-direction:column;display:flex}ion-content.cf-page #page-setup>*{width:100%;padding-inline:var(--cf-page-inline-padding, 16px)}@media (min-width: 768px){ion-content.cf-page #page-setup>*{padding-inline:var(--cf-page-inline-padding, 72px)}}ion-content.cf-page #page-setup .content{display:flex;flex-direction:column;width:100%;max-width:var(--cf-page-mobile-max-width, 358px)}@media (min-width: 768px){ion-content.cf-page #page-setup .content{max-width:var(--cf-page-desktop-max-width, 1296px)}}ion-content.cf-page #page-setup .content>*{max-width:100%}ion-content.cf-page #page-setup #header{display:flex;flex-direction:column;align-items:center;position:sticky;top:0;z-index:10;background-color:var(--page-background-color)}ion-content.cf-page #page-setup #device-spacing{flex-grow:1;display:flex;flex-direction:column}ion-content.cf-page #page-setup #device-spacing>.content:first-child{flex-grow:1;width:min(var(--cf-page-content-mobile-max-width, 100%),100%)}@media (min-width: 768px){ion-content.cf-page #page-setup #device-spacing>.content:first-child{flex-grow:0;width:min(var(--cf-page-content-desktop-max-width, 100%),100%)}}ion-content.cf-page #page-setup #device-spacing #page-buttons{width:100%;max-width:var(--cf-page-mobile-max-width, 358px)}@media (min-width: 768px){ion-content.cf-page #page-setup #device-spacing #page-buttons{max-width:var(--cf-page-desktop-max-width, 1296px)}}ion-content.cf-page #page-setup #device-spacing #page-buttons>.content{justify-content:center;flex-wrap:nowrap;gap:16px;width:min(var(--cf-page-content-mobile-max-width, 100%),100%);margin-inline:auto}ion-content.cf-page #page-setup #device-spacing #page-buttons>.content:not(:empty){padding-bottom:var(--main-page-block-padding)}@media (min-width: 768px){ion-content.cf-page #page-setup #device-spacing #page-buttons>.content{flex-direction:row;width:min(var(--cf-page-content-desktop-max-width, 100%),100%)}}@media (min-width: 768px){ion-content.cf-page #page-setup #device-spacing #page-buttons>.content.vertical-buttons{flex-direction:column;align-items:center}}ion-content.cf-page #page-setup #device-spacing.center-h,ion-content.cf-page #page-setup #device-spacing.center-h>.content{align-items:center;text-align:center}ion-content.cf-page #page-setup #device-spacing.center-v,ion-content.cf-page #page-setup #device-spacing.center-v>.content{justify-content:center}ion-content.cf-page #page-setup #footer{display:flex;flex-direction:column;align-items:center;background-color:var(--cf-page-footer-bg-color, transparent)}ion-content.cf-page #page-setup #sticky-buttons{--fade-height: var(--cf-page-sticky-button-fade-height, 48px);display:flex;flex-direction:column;align-items:center;position:sticky;bottom:0;z-index:10;background-color:transparent;margin-inline:auto;padding-inline:0px}ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background{background-color:var(--page-background-color);width:100%;display:flex;flex-direction:column;align-items:center;margin-top:var(--fade-height);padding-inline:var(--cf-page-inline-padding, 16px)}@media (min-width: 768px){ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background{padding-inline:var(--cf-page-inline-padding, 72px)}}ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container{width:100%;max-width:var(--cf-page-mobile-max-width, 358px);padding-top:12px}@media (min-width: 768px){ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container{max-width:var(--cf-page-desktop-max-width, 1296px)}}ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container>.content{justify-content:center;flex-wrap:nowrap;gap:16px;width:min(var(--cf-page-content-mobile-max-width, 100%),100%);margin-inline:auto}ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container>.content:not(:empty){padding-bottom:var(--main-page-block-padding)}@media (min-width: 768px){ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container>.content{flex-direction:row;width:min(var(--cf-page-content-desktop-max-width, 100%),100%)}}@media (min-width: 768px){ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container>.content.vertical-buttons{flex-direction:column;align-items:center}}@media (min-width: 768px){ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container{padding-top:24px}}ion-content.cf-page #page-setup #sticky-buttons #overlay{width:100%;height:var(--fade-height);position:absolute;background-image:linear-gradient(to bottom,transparent,var(--page-background-color) 80%)}ion-content.cf-page #page-setup #sticky-buttons #overlay.off{background-color:var(--page-background-color)}#page-setup.center-v{justify-content:center}ion-content.cf-page.dev-mode #page-setup{background-color:#0ff}ion-content.cf-page.dev-mode #page-setup #header{background-color:#00f}ion-content.cf-page.dev-mode #page-setup .content{background-color:green}ion-content.cf-page.dev-mode #page-setup #page-buttons>.content{background-color:tomato}ion-content.cf-page.dev-mode #page-setup #footer{background-color:brown}ion-content.cf-page.dev-mode #page-setup #sticky-buttons #buttons-container-background{background-color:#7fff00}\n"], dependencies: [{ kind: "component", type: i1.IonContent, selector: "ion-content", inputs: ["color", "forceOverscroll", "fullscreen", "scrollEvents", "scrollX", "scrollY"] }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.7", ngImport: i0, type: PageComponent, decorators: [{
            type: Component,
            args: [{ selector: 'cf-page', template: "<ion-content\n  scrollEvents=\"true\"\n  class=\"ion-page cf-page\"\n  [ngClass]=\"{ 'bg-dark': inputDark, 'no-scroll': inputNoScroll, 'dev-mode': inputDevMode }\"\n  (ionScroll)=\"scrollEvent.emit($event)\">\n  <div id=\"page-setup\" [ngClass]=\"{ 'center-v': inputCenterV }\">\n    <!-- Header -->\n    <div id=\"header\" class=\"ion-no-border\">\n      <div class=\"content\">\n        <ng-content select=\"[cf-page-header]\"></ng-content>\n      </div>\n    </div>\n    <!-- Content and Buttons -->\n    <div id=\"device-spacing\" [ngClass]=\"{ 'center-h': inputCenterH, 'center-v': inputCenterV }\">\n      <div class=\"content\">\n        <ng-content></ng-content>\n      </div>\n      <div id=\"page-buttons\">\n        <div class=\"content\" [ngClass]=\"{ 'vertical-buttons': inputButtonsVertical }\">\n          <ng-content select=\"[cf-page-buttons]\"></ng-content>\n        </div>\n      </div>\n    </div>\n    <!-- Footer -->\n    <div id=\"footer\">\n      <div class=\"content\">\n        <ng-content select=\"[cf-page-footer]\"></ng-content>\n      </div>\n    </div>\n    <!-- Sticky-buttons -->\n    <div id=\"sticky-buttons\" *ngIf=\"inputStickyButtonOn\">\n      <div id=\"overlay\" [ngClass]=\"{ off: inputNoStickyButtonFade }\"> </div>\n      <div id=\"buttons-container-background\">\n        <div id=\"buttons-container\">\n          <div class=\"content\" [ngClass]=\"{ 'vertical-buttons': inputButtonsVertical }\">\n            <ng-content select=\"[cf-page-sticky-buttons]\"></ng-content>\n          </div>\n        </div>\n      </div>\n    </div>\n  </div>\n</ion-content>\n", styles: ["ion-content.cf-page{--page-background-color: var(--cf-page-main-bg-color, var(--cf-app-background-light))}ion-content.cf-page.bg-dark{--page-background-color: var(--cf-app-background-dark)}ion-content.cf-page::part(scroll){background-color:var(--page-background-color);-ms-overflow-style:none;scrollbar-width:none}ion-content.cf-page::part(scroll)::-webkit-scrollbar{display:none}ion-content.cf-page.no-scroll::part(scroll){overflow:hidden}ion-content.cf-page{--main-page-block-padding: 24px}@media (min-width: 768px){ion-content.cf-page{--main-page-block-padding: 48px}}ion-content.cf-page #page-setup{position:relative;width:100%;min-height:100%;height:fit-content;flex-direction:column;display:flex}ion-content.cf-page #page-setup>*{width:100%;padding-inline:var(--cf-page-inline-padding, 16px)}@media (min-width: 768px){ion-content.cf-page #page-setup>*{padding-inline:var(--cf-page-inline-padding, 72px)}}ion-content.cf-page #page-setup .content{display:flex;flex-direction:column;width:100%;max-width:var(--cf-page-mobile-max-width, 358px)}@media (min-width: 768px){ion-content.cf-page #page-setup .content{max-width:var(--cf-page-desktop-max-width, 1296px)}}ion-content.cf-page #page-setup .content>*{max-width:100%}ion-content.cf-page #page-setup #header{display:flex;flex-direction:column;align-items:center;position:sticky;top:0;z-index:10;background-color:var(--page-background-color)}ion-content.cf-page #page-setup #device-spacing{flex-grow:1;display:flex;flex-direction:column}ion-content.cf-page #page-setup #device-spacing>.content:first-child{flex-grow:1;width:min(var(--cf-page-content-mobile-max-width, 100%),100%)}@media (min-width: 768px){ion-content.cf-page #page-setup #device-spacing>.content:first-child{flex-grow:0;width:min(var(--cf-page-content-desktop-max-width, 100%),100%)}}ion-content.cf-page #page-setup #device-spacing #page-buttons{width:100%;max-width:var(--cf-page-mobile-max-width, 358px)}@media (min-width: 768px){ion-content.cf-page #page-setup #device-spacing #page-buttons{max-width:var(--cf-page-desktop-max-width, 1296px)}}ion-content.cf-page #page-setup #device-spacing #page-buttons>.content{justify-content:center;flex-wrap:nowrap;gap:16px;width:min(var(--cf-page-content-mobile-max-width, 100%),100%);margin-inline:auto}ion-content.cf-page #page-setup #device-spacing #page-buttons>.content:not(:empty){padding-bottom:var(--main-page-block-padding)}@media (min-width: 768px){ion-content.cf-page #page-setup #device-spacing #page-buttons>.content{flex-direction:row;width:min(var(--cf-page-content-desktop-max-width, 100%),100%)}}@media (min-width: 768px){ion-content.cf-page #page-setup #device-spacing #page-buttons>.content.vertical-buttons{flex-direction:column;align-items:center}}ion-content.cf-page #page-setup #device-spacing.center-h,ion-content.cf-page #page-setup #device-spacing.center-h>.content{align-items:center;text-align:center}ion-content.cf-page #page-setup #device-spacing.center-v,ion-content.cf-page #page-setup #device-spacing.center-v>.content{justify-content:center}ion-content.cf-page #page-setup #footer{display:flex;flex-direction:column;align-items:center;background-color:var(--cf-page-footer-bg-color, transparent)}ion-content.cf-page #page-setup #sticky-buttons{--fade-height: var(--cf-page-sticky-button-fade-height, 48px);display:flex;flex-direction:column;align-items:center;position:sticky;bottom:0;z-index:10;background-color:transparent;margin-inline:auto;padding-inline:0px}ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background{background-color:var(--page-background-color);width:100%;display:flex;flex-direction:column;align-items:center;margin-top:var(--fade-height);padding-inline:var(--cf-page-inline-padding, 16px)}@media (min-width: 768px){ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background{padding-inline:var(--cf-page-inline-padding, 72px)}}ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container{width:100%;max-width:var(--cf-page-mobile-max-width, 358px);padding-top:12px}@media (min-width: 768px){ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container{max-width:var(--cf-page-desktop-max-width, 1296px)}}ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container>.content{justify-content:center;flex-wrap:nowrap;gap:16px;width:min(var(--cf-page-content-mobile-max-width, 100%),100%);margin-inline:auto}ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container>.content:not(:empty){padding-bottom:var(--main-page-block-padding)}@media (min-width: 768px){ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container>.content{flex-direction:row;width:min(var(--cf-page-content-desktop-max-width, 100%),100%)}}@media (min-width: 768px){ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container>.content.vertical-buttons{flex-direction:column;align-items:center}}@media (min-width: 768px){ion-content.cf-page #page-setup #sticky-buttons #buttons-container-background #buttons-container{padding-top:24px}}ion-content.cf-page #page-setup #sticky-buttons #overlay{width:100%;height:var(--fade-height);position:absolute;background-image:linear-gradient(to bottom,transparent,var(--page-background-color) 80%)}ion-content.cf-page #page-setup #sticky-buttons #overlay.off{background-color:var(--page-background-color)}#page-setup.center-v{justify-content:center}ion-content.cf-page.dev-mode #page-setup{background-color:#0ff}ion-content.cf-page.dev-mode #page-setup #header{background-color:#00f}ion-content.cf-page.dev-mode #page-setup .content{background-color:green}ion-content.cf-page.dev-mode #page-setup #page-buttons>.content{background-color:tomato}ion-content.cf-page.dev-mode #page-setup #footer{background-color:brown}ion-content.cf-page.dev-mode #page-setup #sticky-buttons #buttons-container-background{background-color:#7fff00}\n"] }]
        }], propDecorators: { centerH: [{
                type: Input
            }], centerV: [{
                type: Input
            }], dark: [{
                type: Input
            }], noScroll: [{
                type: Input
            }], devMode: [{
                type: Input
            }], buttonsVertical: [{
                type: Input
            }], stickyButtonOn: [{
                type: Input
            }], noStickyButtonFade: [{
                type: Input
            }], scrollEvent: [{
                type: Output
            }] } });
//# sourceMappingURL=data:application/json;base64, 