UNPKG

@tapsellorg/angular-material-library

Version:

Angular library for Tapsell

1 lines 6.03 kB
{"version":3,"file":"tapsellorg-angular-material-library-media.mjs","sources":["../../projects/pegah-library/media/breakpoints.ts","../../projects/pegah-library/media/media.directive.ts","../../projects/pegah-library/media/media.module.ts","../../projects/pegah-library/media/tapsellorg-angular-material-library-media.ts"],"sourcesContent":["export type PghBreakpoints = {\n [key in PghBreakpoint]: string;\n};\n\nexport type PghBreakpoint =\n | 'xs'\n | 'sm'\n | 'md'\n | 'lg'\n | 'xl'\n | 'max-xs'\n | 'max-sm'\n | 'max-md'\n | 'max-lg';\n\nexport const PghBreakpoints: PghBreakpoints = {\n xs: '(min-width: 400px)',\n sm: '(min-width: 600px)',\n md: '(min-width: 720px)',\n lg: '(min-width: 960px)',\n xl: '(min-width: 1280px)',\n 'max-xs': '(max-width: 599.98px)',\n 'max-sm': '(max-width: 719.98px)',\n 'max-md': '(max-width: 959.98px)',\n 'max-lg': '(max-width: 1279.98px)',\n};\n","import {\n ChangeDetectorRef,\n Directive,\n input,\n signal,\n TemplateRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { BreakpointObserver } from '@angular/cdk/layout';\nimport { PghBreakpoint, PghBreakpoints } from './breakpoints';\nimport { withDestroy } from '@tapsellorg/angular-material-library/src/lib/common';\nimport { takeUntil } from 'rxjs/operators';\n\n@Directive({\n selector: '[ifMedia]',\n standalone: false,\n})\nexport class PghMediaDirective extends withDestroy() {\n mediaChange = signal<any | undefined>(undefined);\n\n ifMedia = input(undefined, {\n transform: (breakpoints: PghBreakpoint | PghBreakpoint[]) => {\n const media = this.mediaChange();\n this.mediaChange.set(breakpoints);\n this.observeBreakpoints(breakpoints);\n return media;\n },\n });\n\n private hasView = false;\n\n constructor(\n private readonly viewContainer: ViewContainerRef,\n private readonly template: TemplateRef<any>,\n private readonly breakpointObserver: BreakpointObserver,\n private readonly cdr: ChangeDetectorRef,\n ) {\n super();\n }\n\n private observeBreakpoints(breakpoints: PghBreakpoint | PghBreakpoint[]) {\n const mappedBreakpoints = Array.isArray(breakpoints)\n ? breakpoints.map(breakpoint => PghBreakpoints[breakpoint])\n : PghBreakpoints[breakpoints];\n this.breakpointObserver\n .observe(mappedBreakpoints)\n .pipe(takeUntil(this._destroyed$))\n .subscribe(result => {\n if (result.matches && !this.hasView) {\n this.hasView = true;\n this.viewContainer.createEmbeddedView(this.template);\n }\n if (!result.matches && this.hasView) {\n this.hasView = false;\n this.viewContainer.clear();\n }\n this.cdr.detectChanges();\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PghMediaDirective } from './media.directive';\n\n@NgModule({\n declarations: [PghMediaDirective],\n imports: [CommonModule],\n exports: [PghMediaDirective],\n})\nexport class PghMediaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}