UNPKG

@fivethree/core

Version:
117 lines 9.15 kB
/** * @fileoverview added by tsickle * Generated from: lib/bottom-sheet/bottom-sheet-content/bottom-sheet-content.component.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { IonContent } from '@ionic/angular'; import { DomSanitizer } from '@angular/platform-browser'; import { Component, Input, HostBinding, EventEmitter, Output, ViewChild } from '@angular/core'; import { DrawerState } from '../drawer-state'; export class FivBottomSheetContent { /** * @param {?} sanitizer */ constructor(sanitizer) { this.sanitizer = sanitizer; this.rounded = true; this.handle = true; this.float = true; this.fivClick = new EventEmitter(); this.states = DrawerState; this.shouldBounce = true; this.panning = false; } /** * @return {?} */ get isRounded() { switch (this.currentState) { case DrawerState.Top: return false; case DrawerState.Docked: return this.rounded; case DrawerState.Bottom: return this.rounded && !this.float; } return true; } /** * @return {?} */ get styles() { if (!(this.float && this.currentState === DrawerState.Bottom)) { return this.sanitizer .bypassSecurityTrustStyle(`box-shadow: 0 4px 16px rgba(0, 0, 0, .12); border-top: 1px solid var(--ion-color-light);`); } } /** * @return {?} */ ngOnInit() { } /** * @return {?} */ ngAfterViewInit() { this.content.scrollEvents = true; } /** * @param {?} state * @return {?} */ updateState(state) { this.currentState = state; } /** * @return {?} */ click() { this.fivClick.emit(); } } FivBottomSheetContent.decorators = [ { type: Component, args: [{ selector: 'fiv-bottom-sheet-content', template: "<div class=\"bsc-wrapper\">\n <span (click)=\"click()\" *ngIf=\"currentState !== states.Top && handle\"\n [fivCenter]=\"{vertical: false, horizontal: true}\" class=\"handle\"></span>\n <div [ngClass]=\"{'margin': handle}\" class=\"content\">\n <ion-content [scrollY]=\"currentState === 2 && shouldBounce && !panning\">\n <ng-content>\n\n </ng-content>\n </ion-content>\n\n </div>\n</div>", styles: [":host{display:block;width:100%;height:100%;--fiv-border-radius:12px;--fiv-padding:20px;padding-top:var(--fiv-padding);--fiv-background:var(--ion-background-color);--fiv-handle-background:var(--ion-color-light-shade);background:var(--fiv-background)}.bsc-wrapper{width:100%;height:100%}:host.rounded{border-top-left-radius:var(--fiv-border-radius);border-top-right-radius:var(--fiv-border-radius)}.handle{display:block;background:var(--fiv-handle-background);border-radius:12px;top:8px;width:32px;height:8px;position:absolute}.content{height:100%}"] }] } ]; /** @nocollapse */ FivBottomSheetContent.ctorParameters = () => [ { type: DomSanitizer } ]; FivBottomSheetContent.propDecorators = { rounded: [{ type: Input }], handle: [{ type: Input }], float: [{ type: Input }], fivClick: [{ type: Output }], content: [{ type: ViewChild, args: [IonContent, { static: true },] }], isRounded: [{ type: HostBinding, args: ['class.rounded',] }], styles: [{ type: HostBinding, args: ['style',] }] }; if (false) { /** @type {?} */ FivBottomSheetContent.prototype.rounded; /** @type {?} */ FivBottomSheetContent.prototype.handle; /** @type {?} */ FivBottomSheetContent.prototype.float; /** @type {?} */ FivBottomSheetContent.prototype.fivClick; /** @type {?} */ FivBottomSheetContent.prototype.content; /** @type {?} */ FivBottomSheetContent.prototype.currentState; /** @type {?} */ FivBottomSheetContent.prototype.states; /** @type {?} */ FivBottomSheetContent.prototype.shouldBounce; /** @type {?} */ FivBottomSheetContent.prototype.panning; /** * @type {?} * @private */ FivBottomSheetContent.prototype.sanitizer; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm90dG9tLXNoZWV0LWNvbnRlbnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGZpdmV0aHJlZS9jb3JlLyIsInNvdXJjZXMiOlsibGliL2JvdHRvbS1zaGVldC9ib3R0b20tc2hlZXQtY29udGVudC9ib3R0b20tc2hlZXQtY29udGVudC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLFlBQVksRUFBYSxNQUFNLDJCQUEyQixDQUFDO0FBQ3BFLE9BQU8sRUFDTCxTQUFTLEVBRVQsS0FBSyxFQUNMLFdBQVcsRUFDWCxZQUFZLEVBQ1osTUFBTSxFQUNOLFNBQVMsRUFFVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFPOUMsTUFBTSxPQUFPLHFCQUFxQjs7OztJQWtDaEMsWUFBb0IsU0FBdUI7UUFBdkIsY0FBUyxHQUFULFNBQVMsQ0FBYztRQWpDbEMsWUFBTyxHQUFHLElBQUksQ0FBQztRQUNmLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFDZCxVQUFLLEdBQUcsSUFBSSxDQUFDO1FBRVosYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBSzNELFdBQU0sR0FBRyxXQUFXLENBQUM7UUFDckIsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFDcEIsWUFBTyxHQUFHLEtBQUssQ0FBQztJQXNCOEIsQ0FBQzs7OztJQXBCL0MsSUFBa0MsU0FBUztRQUN6QyxRQUFRLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDekIsS0FBSyxXQUFXLENBQUMsR0FBRztnQkFDbEIsT0FBTyxLQUFLLENBQUM7WUFDZixLQUFLLFdBQVcsQ0FBQyxNQUFNO2dCQUNyQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7WUFDdEIsS0FBSyxXQUFXLENBQUMsTUFBTTtnQkFDckIsT0FBTyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztTQUN0QztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs7OztJQUVELElBQTBCLE1BQU07UUFDOUIsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLFdBQVcsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUM3RCxPQUFPLElBQUksQ0FBQyxTQUFTO2lCQUNsQix3QkFBd0IsQ0FBQztvR0FDa0UsQ0FBQyxDQUFDO1NBQ2pHO0lBQ0gsQ0FBQzs7OztJQUlELFFBQVEsS0FBSSxDQUFDOzs7O0lBRWIsZUFBZTtRQUNiLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztJQUNuQyxDQUFDOzs7OztJQUVELFdBQVcsQ0FBQyxLQUFrQjtRQUM1QixJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUM1QixDQUFDOzs7O0lBRUQsS0FBSztRQUNILElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQzs7O1lBckRGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsMEJBQTBCO2dCQUNwQyxxYUFBb0Q7O2FBRXJEOzs7O1lBakJRLFlBQVk7OztzQkFtQmxCLEtBQUs7cUJBQ0wsS0FBSztvQkFDTCxLQUFLO3VCQUVMLE1BQU07c0JBRU4sU0FBUyxTQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7d0JBT3RDLFdBQVcsU0FBQyxlQUFlO3FCQVkzQixXQUFXLFNBQUMsT0FBTzs7OztJQXpCcEIsd0NBQXdCOztJQUN4Qix1Q0FBdUI7O0lBQ3ZCLHNDQUFzQjs7SUFFdEIseUNBQTJEOztJQUUzRCx3Q0FBNkQ7O0lBRTdELDZDQUEwQjs7SUFDMUIsdUNBQXFCOztJQUNyQiw2Q0FBb0I7O0lBQ3BCLHdDQUFnQjs7Ozs7SUFzQkosMENBQStCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW9uQ29udGVudCB9IGZyb20gJ0Bpb25pYy9hbmd1bGFyJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVN0eWxlIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIE9uSW5pdCxcbiAgSW5wdXQsXG4gIEhvc3RCaW5kaW5nLFxuICBFdmVudEVtaXR0ZXIsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBBZnRlclZpZXdJbml0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRHJhd2VyU3RhdGUgfSBmcm9tICcuLi9kcmF3ZXItc3RhdGUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmaXYtYm90dG9tLXNoZWV0LWNvbnRlbnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYm90dG9tLXNoZWV0LWNvbnRlbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9ib3R0b20tc2hlZXQtY29udGVudC5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEZpdkJvdHRvbVNoZWV0Q29udGVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIEBJbnB1dCgpIHJvdW5kZWQgPSB0cnVlO1xuICBASW5wdXQoKSBoYW5kbGUgPSB0cnVlO1xuICBASW5wdXQoKSBmbG9hdCA9IHRydWU7XG5cbiAgQE91dHB1dCgpIGZpdkNsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBAVmlld0NoaWxkKElvbkNvbnRlbnQsIHsgc3RhdGljOiB0cnVlIH0pIGNvbnRlbnQ6IElvbkNvbnRlbnQ7XG5cbiAgY3VycmVudFN0YXRlOiBEcmF3ZXJTdGF0ZTtcbiAgc3RhdGVzID0gRHJhd2VyU3RhdGU7XG4gIHNob3VsZEJvdW5jZSA9IHRydWU7XG4gIHBhbm5pbmcgPSBmYWxzZTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnJvdW5kZWQnKSBnZXQgaXNSb3VuZGVkKCk6IGJvb2xlYW4ge1xuICAgIHN3aXRjaCAodGhpcy5jdXJyZW50U3RhdGUpIHtcbiAgICAgIGNhc2UgRHJhd2VyU3RhdGUuVG9wOlxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICBjYXNlIERyYXdlclN0YXRlLkRvY2tlZDpcbiAgICAgICAgcmV0dXJuIHRoaXMucm91bmRlZDtcbiAgICAgIGNhc2UgRHJhd2VyU3RhdGUuQm90dG9tOlxuICAgICAgICByZXR1cm4gdGhpcy5yb3VuZGVkICYmICF0aGlzLmZsb2F0O1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUnKSBnZXQgc3R5bGVzKCk6IFNhZmVTdHlsZSB7XG4gICAgaWYgKCEodGhpcy5mbG9hdCAmJiB0aGlzLmN1cnJlbnRTdGF0ZSA9PT0gRHJhd2VyU3RhdGUuQm90dG9tKSkge1xuICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyXG4gICAgICAgIC5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUoYGJveC1zaGFkb3c6IDAgNHB4IDE2cHggcmdiYSgwLCAwLCAwLCAuMTIpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLWlvbi1jb2xvci1saWdodCk7YCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICBuZ09uSW5pdCgpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY29udGVudC5zY3JvbGxFdmVudHMgPSB0cnVlO1xuICB9XG5cbiAgdXBkYXRlU3RhdGUoc3RhdGU6IERyYXdlclN0YXRlKTogYW55IHtcbiAgICB0aGlzLmN1cnJlbnRTdGF0ZSA9IHN0YXRlO1xuICB9XG5cbiAgY2xpY2soKSB7XG4gICAgdGhpcy5maXZDbGljay5lbWl0KCk7XG4gIH1cbn1cbiJdfQ==