{"version":3,"file":"bootkit-angular-layouts-layout1.mjs","sources":["../../../projects/bootkit/layouts/layout1/layout1.service.ts","../../../projects/bootkit/layouts/layout1/layout1-header.directive.ts","../../../projects/bootkit/layouts/layout1/layout1-footer.directive.ts","../../../projects/bootkit/layouts/layout1/layout1-aside.directive.ts","../../../projects/bootkit/layouts/layout1/layout1.component.ts","../../../projects/bootkit/layouts/layout1/layout1.component.html","../../../projects/bootkit/layouts/layout1/layout1.module.ts","../../../projects/bootkit/layouts/layout1/types.ts","../../../projects/bootkit/layouts/layout1/bootkit-angular-layouts-layout1.ts"],"sourcesContent":["import { BreakpointObserver } from \"@angular/cdk/layout\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { BehaviorSubject, Subscription } from \"rxjs\";\r\nimport { DeviceSize } from \"./types\";\r\n\r\n@Injectable()\r\nexport class Layout1Service {\r\n  private _mediaSubscription: Subscription;\r\n\r\n\r\n  private _showSidebarChangeSubject = new BehaviorSubject<boolean>(false);\r\n  public readonly showSidebarChange = this._showSidebarChangeSubject.asObservable();\r\n\r\n  private _deviceSizeChangeSubject = new BehaviorSubject<DeviceSize>('small');\r\n  public readonly deviceSizeChange = this._deviceSizeChangeSubject.asObservable();\r\n\r\n  private _deviceSize!: DeviceSize;\r\n  public get deviceSize() { return this._deviceSize };\r\n\r\n  // private _pageActions: PageActions = [];\r\n  // private _pageActionsSubject = new BehaviorSubject<PageActions>(this._pageActions);\r\n  // readonly pageActionsChange = this._pageActionsSubject.asObservable();\r\n\r\n  constructor(breakpointObserver: BreakpointObserver) {\r\n    this._mediaSubscription = breakpointObserver.observe('(min-width: 992px)')\r\n      .subscribe(x => {\r\n        this._deviceSize = x.matches ? 'large' : 'small';\r\n        this._deviceSizeChangeSubject.next(this._deviceSize);\r\n      });\r\n  }\r\n\r\n  showSidebar(show = true) {\r\n    this._showSidebarChangeSubject.next(show);\r\n  }\r\n\r\n  // showWaiting(): void\r\n  // showWaiting(descriptor: WaitingDescriptor): void\r\n  // showWaiting(show: boolean): void\r\n  // showWaiting(show?: any) {\r\n  //   let d: WaitingDescriptor;\r\n  //   show = show == null ? true : show;\r\n  //   d = typeof show === 'boolean' ? { show, text: 'در حال بارگزاری اطلاعات' } : show;\r\n  //   this._waitingSubject.next(d);\r\n  // }\r\n\r\n  // setPageActions(pageActions: PageActions) {\r\n  //   this._pageActions = pageActions;\r\n  //   this._pageActionsSubject.next(this._pageActions);\r\n  // }\r\n\r\n  // addPageActions(pageActions: PageActions) {\r\n  //   this._pageActions = this._pageActions.concat(pageActions);\r\n  //   this._pageActionsSubject.next(this._pageActions);\r\n  // }\r\n\r\n  // clearPageActions() {\r\n  //   this.setPageActions([]);\r\n  // }\r\n\r\n  // showToast(message: string) {\r\n  //   this._snackBar.open(message, undefined, { verticalPosition: 'bottom', duration: 3000 });\r\n  // }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n  selector: '[bkLayout1Header]',\r\n  exportAs: 'bkLayout1Header',\r\n  standalone: true,\r\n})\r\nexport class Layout1HeaderDirective {\r\n  constructor(public templateRef: TemplateRef<any>) {\r\n  }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n  selector: '[bkpLayout1Footer]',\r\n  exportAs: 'bkpLayout1Footer',\r\n  standalone: true,\r\n})\r\nexport class Layout1FooterDirective {\r\n  constructor(public templateRef: TemplateRef<any>) {\r\n  }\r\n}\r\n","import { Directive, TemplateRef } from '@angular/core';\r\n\r\n@Directive({\r\n  selector: '[bkpLayout1Aside]',\r\n  exportAs: 'bkpLayout1Aside',\r\n  standalone: true,\r\n})\r\nexport class Layout1AsideDirective {\r\n  constructor(public templateRef: TemplateRef<any>) {\r\n  }\r\n}\r\n","import { Component, ContentChild, EventEmitter, HostBinding, Input, OnInit, Output } from '@angular/core';\r\nimport { AppLayoutConfiguration } from './types';\r\nimport { Layout1Service } from './layout1.service';\r\nimport { PortalModule } from '@angular/cdk/portal';\r\nimport { CommonModule } from '@angular/common';\r\nimport { Layout1HeaderDirective } from './layout1-header.directive';\r\nimport { Layout1FooterDirective } from './layout1-footer.directive';\r\nimport { Layout1AsideDirective } from './layout1-aside.directive';\r\nimport { BreakpointObserver } from '@angular/cdk/layout';\r\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\r\n\r\n@Component({\r\n  selector: 'bk-layout1',\r\n  templateUrl: './layout1.component.html',\r\n  styleUrls: ['./layout1.component.scss'],\r\n  providers: [Layout1Service],\r\n  standalone: true,\r\n  imports: [\r\n    PortalModule,\r\n    CommonModule,\r\n  ]\r\n})\r\nexport class Layout1Component implements OnInit {\r\n  @Input() config!: AppLayoutConfiguration;\r\n  @Input() showAside = false;\r\n  @Output() backdropClick = new EventEmitter();\r\n  @ContentChild(Layout1HeaderDirective) protected header?: Layout1HeaderDirective;\r\n  @ContentChild(Layout1FooterDirective) protected footer?: Layout1FooterDirective;\r\n  @ContentChild(Layout1AsideDirective) protected aside?: Layout1AsideDirective;\r\n  @HostBinding('class.show-aside') protected get _showAside() { return this.showAside }\r\n  @HostBinding('class.float-aside') protected _floatAside = false;\r\n\r\n  constructor(private layoutService: Layout1Service, breakpointObserver: BreakpointObserver) {\r\n    breakpointObserver.observe('(min-width: 992px)')\r\n      .pipe(takeUntilDestroyed())\r\n      .subscribe(x => {\r\n        var isLargeDevice = x.matches;\r\n        this._floatAside = !isLargeDevice;\r\n      });\r\n  }\r\n\r\n  ngOnInit(): void {\r\n  }\r\n}\r\n","<header *ngIf=\"header\">\r\n    <ng-container *ngTemplateOutlet=\"header.templateRef; context: {$implicit: null}\"></ng-container>\r\n</header>\r\n\r\n<ng-content></ng-content>\r\n\r\n<footer *ngIf=\"footer\">\r\n    <ng-container *ngTemplateOutlet=\"footer.templateRef; context: {$implicit: null}\"></ng-container>\r\n</footer>\r\n\r\n<aside *ngIf=\"aside\" [class.hide]=\"!showAside\">\r\n    <ng-container *ngTemplateOutlet=\"aside.templateRef; context: {$implicit: null}\"></ng-container>\r\n</aside>\r\n<div *ngIf=\"showAside && _floatAside\" class=\"aside-backdrop\" (click)=\"backdropClick.emit()\"></div>","import { NgModule } from '@angular/core';\r\nimport { Layout1Component } from './layout1.component';\r\nimport { Layout1HeaderDirective } from './layout1-header.directive';\r\nimport { Layout1FooterDirective } from './layout1-footer.directive';\r\nimport { Layout1AsideDirective } from './layout1-aside.directive';\r\n\r\nconst items = [\r\n  Layout1Component,\r\n  Layout1HeaderDirective,\r\n  Layout1FooterDirective,\r\n  Layout1AsideDirective\r\n]\r\n\r\n@NgModule({\r\n  imports: items,\r\n  exports: items\r\n})\r\nexport class Layout1Module { }\r\n","// import { MenuItem } from \"@rbcorp/ui-infra\";\r\n// import { MenuItem, TextMenuItem } from \"@lib/infra\";\r\n\r\nexport interface AppLayoutConfiguration {\r\n    // appName?: string,\r\n    // showLoading?: boolean,\r\n    // sidebar: {\r\n    //     component?: any,\r\n    //     show: boolean\r\n    // },\r\n    // appbar?: {\r\n    //     menu?: {\r\n    //         title?: string;\r\n    //         items: MenuItem<any>[];\r\n    //     }\r\n    // },\r\n    // content?: {\r\n    //     insideCard?: boolean\r\n    // }\r\n}\r\n\r\nexport interface WaitingDescriptor {\r\n    show: boolean;\r\n    text?: string;\r\n}\r\n\r\nexport type DeviceSize = 'small' | 'large';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.Layout1Service","i2"],"mappings":";;;;;;;;;MAMa,cAAc,CAAA;AACjB,IAAA,kBAAkB,CAAe;AAGjC,IAAA,yBAAyB,GAAG,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;AACxD,IAAA,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,CAAC,YAAY,EAAE,CAAC;AAE1E,IAAA,wBAAwB,GAAG,IAAI,eAAe,CAAa,OAAO,CAAC,CAAC;AAC5D,IAAA,gBAAgB,GAAG,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,CAAC;AAExE,IAAA,WAAW,CAAc;IACjC,IAAW,UAAU,KAAK,OAAO,IAAI,CAAC,WAAW,CAAA,EAAE;;;;;AAMnD,IAAA,WAAA,CAAY,kBAAsC,EAAA;QAChD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC,OAAO,CAAC,oBAAoB,CAAC;aACvE,SAAS,CAAC,CAAC,IAAG;AACb,YAAA,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC;YACjD,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACvD,SAAC,CAAC,CAAC;KACN;IAED,WAAW,CAAC,IAAI,GAAG,IAAI,EAAA;AACrB,QAAA,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KAC3C;wGA3BU,cAAc,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;4GAAd,cAAc,EAAA,CAAA,CAAA;;4FAAd,cAAc,EAAA,UAAA,EAAA,CAAA;kBAD1B,UAAU;;;MCEE,sBAAsB,CAAA;AACd,IAAA,WAAA,CAAA;AAAnB,IAAA,WAAA,CAAmB,WAA6B,EAAA;QAA7B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAkB;KAC/C;wGAFU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;4FAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;;;MCCY,sBAAsB,CAAA;AACd,IAAA,WAAA,CAAA;AAAnB,IAAA,WAAA,CAAmB,WAA6B,EAAA;QAA7B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAkB;KAC/C;wGAFU,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;4FAAtB,sBAAsB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,QAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBALlC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,oBAAoB;AAC9B,oBAAA,QAAQ,EAAE,kBAAkB;AAC5B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;;;MCCY,qBAAqB,CAAA;AACb,IAAA,WAAA,CAAA;AAAnB,IAAA,WAAA,CAAmB,WAA6B,EAAA;QAA7B,IAAW,CAAA,WAAA,GAAX,WAAW,CAAkB;KAC/C;wGAFU,qBAAqB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,WAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;4FAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,QAAA,EAAA,CAAA,iBAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;4FAArB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBALjC,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,mBAAmB;AAC7B,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA,CAAA;;;MCgBY,gBAAgB,CAAA;AAUP,IAAA,aAAA,CAAA;AATX,IAAA,MAAM,CAA0B;IAChC,SAAS,GAAG,KAAK,CAAC;AACjB,IAAA,aAAa,GAAG,IAAI,YAAY,EAAE,CAAC;AACG,IAAA,MAAM,CAA0B;AAChC,IAAA,MAAM,CAA0B;AACjC,IAAA,KAAK,CAAyB;IAC7E,IAA+C,UAAU,KAAK,OAAO,IAAI,CAAC,SAAS,CAAA,EAAE;IACzC,WAAW,GAAG,KAAK,CAAC;IAEhE,WAAoB,CAAA,aAA6B,EAAE,kBAAsC,EAAA;QAArE,IAAa,CAAA,aAAA,GAAb,aAAa,CAAgB;AAC/C,QAAA,kBAAkB,CAAC,OAAO,CAAC,oBAAoB,CAAC;aAC7C,IAAI,CAAC,kBAAkB,EAAE,CAAC;aAC1B,SAAS,CAAC,CAAC,IAAG;AACb,YAAA,IAAI,aAAa,GAAG,CAAC,CAAC,OAAO,CAAC;AAC9B,YAAA,IAAI,CAAC,WAAW,GAAG,CAAC,aAAa,CAAC;AACpC,SAAC,CAAC,CAAC;KACN;IAED,QAAQ,GAAA;KACP;wGApBU,gBAAgB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,cAAA,EAAA,EAAA,EAAA,KAAA,EAAAC,EAAA,CAAA,kBAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EAPhB,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,YAAA,EAAA,MAAA,EAAA,EAAA,MAAA,EAAA,QAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,kBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,kBAAA,EAAA,EAAA,EAAA,SAAA,EAAA,CAAC,cAAc,CAAC,8DAWb,sBAAsB,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,QAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EACtB,sBAAsB,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,OAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EACtB,qBAAqB,EC5BrC,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EAAA,umBAakG,EDK9F,MAAA,EAAA,CAAA,koBAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,UAAA,EAAA,IAAA,EAAA,YAAY,8BACZ,YAAY,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,EAAA,CAAA,CAAA;;4FAGH,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAX5B,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,YAAY,aAGX,CAAC,cAAc,CAAC,EAAA,UAAA,EACf,IAAI,EACP,OAAA,EAAA;wBACP,YAAY;wBACZ,YAAY;AACb,qBAAA,EAAA,QAAA,EAAA,umBAAA,EAAA,MAAA,EAAA,CAAA,koBAAA,CAAA,EAAA,CAAA;iHAGQ,MAAM,EAAA,CAAA;sBAAd,KAAK;gBACG,SAAS,EAAA,CAAA;sBAAjB,KAAK;gBACI,aAAa,EAAA,CAAA;sBAAtB,MAAM;gBACyC,MAAM,EAAA,CAAA;sBAArD,YAAY;uBAAC,sBAAsB,CAAA;gBACY,MAAM,EAAA,CAAA;sBAArD,YAAY;uBAAC,sBAAsB,CAAA;gBACW,KAAK,EAAA,CAAA;sBAAnD,YAAY;uBAAC,qBAAqB,CAAA;gBACY,UAAU,EAAA,CAAA;sBAAxD,WAAW;uBAAC,kBAAkB,CAAA;gBACa,WAAW,EAAA,CAAA;sBAAtD,WAAW;uBAAC,mBAAmB,CAAA;;;AExBlC,MAAM,KAAK,GAAG;IACZ,gBAAgB;IAChB,sBAAsB;IACtB,sBAAsB;IACtB,qBAAqB;CACtB,CAAA;MAMY,aAAa,CAAA;wGAAb,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAb,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAVxB,gBAAgB;YAChB,sBAAsB;YACtB,sBAAsB;AACtB,YAAA,qBAAqB,aAHrB,gBAAgB;YAChB,sBAAsB;YACtB,sBAAsB;YACtB,qBAAqB,CAAA,EAAA,CAAA,CAAA;AAOV,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAVxB,gBAAgB,CAAA,EAAA,CAAA,CAAA;;4FAUL,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,KAAK;AACd,oBAAA,OAAO,EAAE,KAAK;AACf,iBAAA,CAAA;;;AChBD;AACA;;ACDA;;AAEG;;;;"}