UNPKG

@alyle/ui

Version:

Minimal Design, a set of components for Angular

1 lines 14 kB
{"version":3,"file":"alyle-ui-card.mjs","sources":["../../../lib/card/card.directive.ts","../../../lib/card/card.module.ts","../../../lib/card/alyle-ui-card.ts"],"sourcesContent":["import {\n Directive,\n ElementRef,\n Input,\n NgZone,\n OnChanges,\n OnDestroy,\n OnInit,\n Renderer2\n } from '@angular/core';\nimport {\n LyTheme2,\n mixinBg,\n mixinColor,\n mixinDisabled,\n mixinDisableRipple,\n mixinElevation,\n mixinOutlined,\n mixinRaised,\n mixinShadowColor,\n mixinStyleUpdater,\n ThemeVariables,\n st2c,\n StyleCollection,\n LyClasses,\n StyleTemplate,\n ThemeRef,\n StyleRenderer,\n WithStyles,\n Style } from '@alyle/ui';\nimport { Platform } from '@angular/cdk/platform';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\n\nexport interface LyCardTheme {\n /** Styles for Card Component */\n root?: StyleCollection<((classes: LyClasses<typeof STYLES>) => StyleTemplate)>\n | ((classes: LyClasses<typeof STYLES>) => StyleTemplate);\n}\n\nexport interface LyCardVariables {\n card?: LyCardTheme;\n}\n\n\nexport const STYLES = (theme: ThemeVariables & LyCardVariables, ref: ThemeRef) => {\n const card = ref.selectorsOf(STYLES);\n return {\n $priority: STYLE_PRIORITY,\n $name: LyCard.и,\n root: ( ) => (_className: string) => `${_className}{display:block;overflow:hidden;border-radius:2px;}${st2c((\n (theme.card\n && theme.card.root\n && (theme.card.root instanceof StyleCollection\n ? theme.card.root.setTransformer(fn => fn(card))\n : theme.card.root(card))\n )), `${_className}`)}`,\n bgImg: (_className: string) => `${_className}{display:block;background-size:cover;background-repeat:no-repeat;background-position:center;}`,\n content: (_className: string) => `${_className}{display:block;padding:16px 24px;}@media ${theme.breakpoints['XSmall']}{${_className}{padding:16px 16px;}}`,\n actions: (_className: string) => `${_className}{display:block;padding:8px 12px;}@media ${theme.breakpoints['XSmall']}{${_className}{padding:8px 4px;}}`,\n actionsItem: (_className: string) => `${_className}{margin:0 4px;}`\n };\n};\n\nconst DEFAULT_ASPECT_RATIO = '16:9';\n\nconst STYLE_PRIORITY = -1;\n\n/** @docs-private */\nexport class LyCardBase {\n constructor(\n public _theme: LyTheme2,\n public _ngZone: NgZone,\n public _platform: Platform\n ) { }\n}\n\n/** @docs-private */\nexport const LyCardMixinBase = mixinStyleUpdater(\nmixinBg(\n mixinColor(\n mixinRaised(\n mixinDisabled(\n mixinOutlined(\n mixinElevation(\n mixinShadowColor(\n mixinDisableRipple(LyCardBase)))))))));\n\n@Directive({\n selector: 'ly-card',\n inputs: [\n 'bg',\n 'color',\n 'raised',\n 'outlined',\n 'elevation',\n 'shadowColor',\n 'disableRipple',\n ],\n providers: [StyleRenderer],\n standalone: false\n})\nexport class LyCard extends LyCardMixinBase implements OnChanges, OnInit, OnDestroy {\n static readonly и = 'LyCard';\n /**\n * styles\n * @docs-private\n */\n readonly classes = this.theme.renderStyleSheet(STYLES);\n constructor(\n private theme: LyTheme2,\n private _el: ElementRef,\n private renderer: Renderer2,\n ngZone: NgZone,\n platform: Platform\n ) {\n super(theme, ngZone, platform);\n this.setAutoContrast();\n }\n\n ngOnChanges() {\n this.updateStyle(this._el);\n }\n\n ngOnInit() {\n let requireOnChanges: boolean | undefined;\n if (!this.bg) {\n this.bg = 'background:primary';\n requireOnChanges = true;\n }\n if (!this.elevation) {\n this.elevation = 2;\n requireOnChanges = true;\n }\n if (requireOnChanges) {\n this.updateStyle(this._el);\n }\n this.renderer.addClass(this._el.nativeElement, this.classes.root);\n }\n\n ngOnDestroy() {\n this._removeRippleEvents();\n }\n}\n\n@Directive({\n selector: 'ly-card-content',\n standalone: false\n})\nexport class LyCardContent implements OnInit {\n\n constructor(\n private el: ElementRef,\n private renderer: Renderer2,\n private card: LyCard\n ) { }\n\n ngOnInit() {\n this.renderer.addClass(this.el.nativeElement, this.card.classes.content);\n }\n}\n\n@Directive({\n selector: 'ly-card-actions',\n standalone: false\n})\nexport class LyCardActions implements OnInit {\n @Input() disableActionSpacing: BooleanInput;\n constructor(\n private el: ElementRef,\n private renderer: Renderer2,\n private card: LyCard\n ) { }\n ngOnInit() {\n this.renderer.addClass(this.el.nativeElement, this.card.classes.actions);\n if (!coerceBooleanProperty(this.disableActionSpacing)) {\n this.el.nativeElement.childNodes.forEach(element => {\n this.renderer.addClass(element, this.card.classes.actionsItem);\n });\n }\n }\n}\n\n/**\n * @dynamic\n */\n@Directive({\n selector: 'ly-card-media',\n providers: [\n StyleRenderer\n ],\n standalone: false\n})\nexport class LyCardMedia implements WithStyles, OnInit {\n\n /**\n * Aspect ratio\n *\n * e.g:\n * 4:3\n * 1:1\n */\n @Input()\n set ratio(val: string) {\n if (val !== this.ratio) {\n this._ratio = val;\n this[0x2] = this.sRenderer.add(\n `${LyCardMedia.и}--ratio-${val}`,\n () => (_className: string) => `${_className}::before{content:'';display:block;padding-top:${val\n .split(':')\n .reduce((prev, current) => (+current / +prev * 100).toString())}%;}`,\n STYLE_PRIORITY,\n this[0x2]\n );\n }\n }\n get ratio() {\n return this._ratio;\n }\n\n constructor(\n readonly sRenderer: StyleRenderer,\n card: LyCard\n ) {\n sRenderer.addClass(card.classes.bgImg);\n }\n static readonly и = 'LyCardMedia';\n static readonly $priority = STYLE_PRIORITY;\n\n static ngAcceptInputType_bgImg: string;\n\n private _ratio: string;\n\n @Input()\n @Style<string>((val) => () => (_className: string) => `${_className}{background-image:url('${val}');}`)\n bgImg: string;\n [0x2]: string;\n\n ngOnInit() {\n if (!this.ratio) {\n this.ratio = DEFAULT_ASPECT_RATIO;\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { LyCard, LyCardContent, LyCardActions, LyCardMedia } from './card.directive';\nimport { LyCommonModule } from '@alyle/ui';\n\n@NgModule({\n imports: [\n CommonModule\n ],\n exports: [LyCard, LyCardContent, LyCardActions, LyCardMedia, LyCommonModule],\n declarations: [LyCard, LyCardContent, LyCardActions, LyCardMedia]\n})\nexport class LyCardModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}