{"version":3,"file":"angular-flex-layout-extended.mjs","sources":["../../../../projects/libs/flex-layout/extended/img-src/img-src.ts","../../../../projects/libs/flex-layout/extended/class/class.ts","../../../../projects/libs/flex-layout/extended/show-hide/show-hide.ts","../../../../projects/libs/flex-layout/extended/style/style-transforms.ts","../../../../projects/libs/flex-layout/extended/style/style.ts","../../../../projects/libs/flex-layout/extended/module.ts","../../../../projects/libs/flex-layout/extended/public-api.ts","../../../../projects/libs/flex-layout/extended/angular-flex-layout-extended.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {Directive, ElementRef, Inject, PLATFORM_ID, Injectable, Input} from '@angular/core';\nimport {isPlatformServer} from '@angular/common';\nimport {\n  MediaMarshaller,\n  BaseDirective2,\n  SERVER_TOKEN,\n  StyleBuilder,\n  StyleDefinition,\n  StyleUtils,\n} from '@angular/flex-layout/core';\n\n@Injectable({providedIn: 'root'})\nexport class ImgSrcStyleBuilder extends StyleBuilder {\n  buildStyles(url: string) {\n    return {'content': url ? `url(${url})` : ''};\n  }\n}\n\n@Directive()\nexport class ImgSrcDirective extends BaseDirective2 {\n  protected DIRECTIVE_KEY = 'img-src';\n  protected defaultSrc = '';\n\n  @Input('src')\n  set src(val: string) {\n    this.defaultSrc = val;\n    this.setValue(this.defaultSrc, '');\n  }\n\n  constructor(elementRef: ElementRef,\n              styleBuilder: ImgSrcStyleBuilder,\n              styler: StyleUtils,\n              marshal: MediaMarshaller,\n              @Inject(PLATFORM_ID) protected platformId: Object,\n              @Inject(SERVER_TOKEN) protected serverModuleLoaded: boolean) {\n    super(elementRef, styleBuilder, styler, marshal);\n    this.init();\n    this.setValue(this.nativeElement.getAttribute('src') || '', '');\n    if (isPlatformServer(this.platformId) && this.serverModuleLoaded) {\n      this.nativeElement.setAttribute('src', '');\n    }\n  }\n\n  /**\n   * Use the [responsively] activated input value to update\n   * the host img src attribute or assign a default `img.src=''`\n   * if the src has not been defined.\n   *\n   * Do nothing to standard `<img src=\"\">` usages, only when responsive\n   * keys are present do we actually call `setAttribute()`\n   */\n  protected updateWithValue(value?: string) {\n    const url = value || this.defaultSrc;\n    if (isPlatformServer(this.platformId) && this.serverModuleLoaded) {\n      this.addStyles(url);\n    } else {\n      this.nativeElement.setAttribute('src', url);\n    }\n  }\n\n  protected styleCache = imgSrcCache;\n}\n\nconst imgSrcCache: Map<string, StyleDefinition> = new Map();\n\nconst inputs = [\n  'src.xs', 'src.sm', 'src.md', 'src.lg', 'src.xl',\n  'src.lt-sm', 'src.lt-md', 'src.lt-lg', 'src.lt-xl',\n  'src.gt-xs', 'src.gt-sm', 'src.gt-md', 'src.gt-lg'\n];\n\nconst selector = `\n  img[src.xs],    img[src.sm],    img[src.md],    img[src.lg],   img[src.xl],\n  img[src.lt-sm], img[src.lt-md], img[src.lt-lg], img[src.lt-xl],\n  img[src.gt-xs], img[src.gt-sm], img[src.gt-md], img[src.gt-lg]\n`;\n\n/**\n * This directive provides a responsive API for the HTML <img> 'src' attribute\n * and will update the img.src property upon each responsive activation.\n *\n * e.g.\n *      <img src=\"defaultScene.jpg\" src.xs=\"mobileScene.jpg\"></img>\n *\n * @see https://css-tricks.com/responsive-images-youre-just-changing-resolutions-use-src/\n */\n@Directive({selector, inputs})\nexport class DefaultImgSrcDirective extends ImgSrcDirective {\n  protected inputs = inputs;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {\n  Directive,\n  DoCheck,\n  ElementRef,\n  Input,\n  IterableDiffers,\n  KeyValueDiffers,\n  Optional,\n  Renderer2,\n  Self,\n} from '@angular/core';\nimport {NgClass} from '@angular/common';\nimport {BaseDirective2, StyleUtils, MediaMarshaller} from '@angular/flex-layout/core';\n\n@Directive()\nexport class ClassDirective extends BaseDirective2 implements DoCheck {\n\n  protected DIRECTIVE_KEY = 'ngClass';\n\n  /**\n   * Capture class assignments so we cache the default classes\n   * which are merged with activated styles and used as fallbacks.\n   */\n  @Input('class')\n  set klass(val: string) {\n    this.ngClassInstance.klass = val;\n    this.setValue(val, '');\n  }\n\n  constructor(elementRef: ElementRef,\n              styler: StyleUtils,\n              marshal: MediaMarshaller,\n              iterableDiffers: IterableDiffers,\n              keyValueDiffers: KeyValueDiffers,\n              renderer2: Renderer2,\n              @Optional() @Self() protected readonly ngClassInstance: NgClass) {\n    super(elementRef, null!, styler, marshal);\n    if (!this.ngClassInstance) {\n      // Create an instance NgClass Directive instance only if `ngClass=\"\"` has NOT been defined on\n      // the same host element; since the responsive variations may be defined...\n      this.ngClassInstance = new NgClass(iterableDiffers, keyValueDiffers, elementRef, renderer2);\n    }\n    this.init();\n    this.setValue('', '');\n  }\n\n  protected updateWithValue(value: any) {\n    this.ngClassInstance.ngClass = value;\n    this.ngClassInstance.ngDoCheck();\n  }\n\n  // ******************************************************************\n  // Lifecycle Hooks\n  // ******************************************************************\n\n  /**\n   * For ChangeDetectionStrategy.onPush and ngOnChanges() updates\n   */\n  ngDoCheck() {\n    this.ngClassInstance.ngDoCheck();\n  }\n}\n\nconst inputs = [\n  'ngClass', 'ngClass.xs', 'ngClass.sm', 'ngClass.md', 'ngClass.lg', 'ngClass.xl',\n  'ngClass.lt-sm', 'ngClass.lt-md', 'ngClass.lt-lg', 'ngClass.lt-xl',\n  'ngClass.gt-xs', 'ngClass.gt-sm', 'ngClass.gt-md', 'ngClass.gt-lg'\n];\n\nconst selector = `\n  [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl],\n  [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl],\n  [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]\n`;\n\n/**\n * Directive to add responsive support for ngClass.\n * This maintains the core functionality of 'ngClass' and adds responsive API\n * Note: this class is a no-op when rendered on the server\n */\n@Directive({selector, inputs})\nexport class DefaultClassDirective extends ClassDirective {\n  protected inputs = inputs;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {\n  Directive,\n  ElementRef,\n  OnChanges,\n  SimpleChanges,\n  Inject,\n  PLATFORM_ID,\n  Injectable,\n  AfterViewInit,\n} from '@angular/core';\nimport {isPlatformServer} from '@angular/common';\nimport {\n  BaseDirective2,\n  LAYOUT_CONFIG,\n  LayoutConfigOptions,\n  MediaMarshaller,\n  SERVER_TOKEN,\n  StyleUtils,\n  StyleBuilder,\n} from '@angular/flex-layout/core';\nimport {coerceBooleanProperty} from '@angular/cdk/coercion';\nimport {takeUntil} from 'rxjs/operators';\n\nexport interface ShowHideParent {\n  display: string;\n  isServer: boolean;\n}\n\n@Injectable({providedIn: 'root'})\nexport class ShowHideStyleBuilder extends StyleBuilder {\n  buildStyles(show: string, parent: ShowHideParent) {\n    const shouldShow = show === 'true';\n    return {'display': shouldShow ? parent.display || (parent.isServer ? 'initial' : '') : 'none'};\n  }\n}\n\n@Directive()\nexport class ShowHideDirective extends BaseDirective2 implements AfterViewInit, OnChanges {\n  protected DIRECTIVE_KEY = 'show-hide';\n\n  /** Original DOM Element CSS display style */\n  protected display: string = '';\n  protected hasLayout = false;\n  protected hasFlexChild = false;\n\n  constructor(elementRef: ElementRef,\n              styleBuilder: ShowHideStyleBuilder,\n              styler: StyleUtils,\n              marshal: MediaMarshaller,\n              @Inject(LAYOUT_CONFIG) protected layoutConfig: LayoutConfigOptions,\n              @Inject(PLATFORM_ID) protected platformId: Object,\n              @Inject(SERVER_TOKEN) protected serverModuleLoaded: boolean) {\n    super(elementRef, styleBuilder, styler, marshal);\n  }\n\n  // *********************************************\n  // Lifecycle Methods\n  // *********************************************\n\n  ngAfterViewInit() {\n    this.trackExtraTriggers();\n\n    const children = Array.from(this.nativeElement.children);\n    for (let i = 0; i < children.length; i++) {\n      if (this.marshal.hasValue(children[i] as HTMLElement, 'flex')) {\n        this.hasFlexChild = true;\n        break;\n      }\n    }\n\n    if (DISPLAY_MAP.has(this.nativeElement)) {\n      this.display = DISPLAY_MAP.get(this.nativeElement)!;\n    } else {\n      this.display = this.getDisplayStyle();\n      DISPLAY_MAP.set(this.nativeElement, this.display);\n    }\n\n    this.init();\n    // set the default to show unless explicitly overridden\n    const defaultValue = this.marshal.getValue(this.nativeElement, this.DIRECTIVE_KEY, '');\n    if (defaultValue === undefined || defaultValue === '') {\n      this.setValue(true, '');\n    } else {\n      this.triggerUpdate();\n    }\n  }\n\n  /**\n   * On changes to any @Input properties...\n   * Default to use the non-responsive Input value ('fxShow')\n   * Then conditionally override with the mq-activated Input's current value\n   */\n  ngOnChanges(changes: SimpleChanges) {\n    Object.keys(changes).forEach(key => {\n      if (this.inputs.indexOf(key) !== -1) {\n        const inputKey = key.split('.');\n        const bp = inputKey.slice(1).join('.');\n        const inputValue = changes[key].currentValue;\n        let shouldShow = inputValue !== '' ?\n            inputValue !== 0 ? coerceBooleanProperty(inputValue) : false\n            : true;\n        if (inputKey[0] === 'fxHide') {\n          shouldShow = !shouldShow;\n        }\n        this.setValue(shouldShow, bp);\n      }\n    });\n  }\n\n  // *********************************************\n  // Protected methods\n  // *********************************************\n\n  /**\n   *  Watch for these extra triggers to update fxShow, fxHide stylings\n   */\n  protected trackExtraTriggers() {\n    this.hasLayout = this.marshal.hasValue(this.nativeElement, 'layout');\n\n    ['layout', 'layout-align'].forEach(key => {\n      this.marshal\n          .trackValue(this.nativeElement, key)\n          .pipe(takeUntil(this.destroySubject))\n          .subscribe(this.triggerUpdate.bind(this));\n    });\n  }\n\n  /**\n   * Override accessor to the current HTMLElement's `display` style\n   * Note: Show/Hide will not change the display to 'flex' but will set it to 'block'\n   * unless it was already explicitly specified inline or in a CSS stylesheet.\n   */\n  protected getDisplayStyle(): string {\n    return (this.hasLayout || (this.hasFlexChild && this.layoutConfig.addFlexToParent)) ?\n        'flex' : this.styler.lookupStyle(this.nativeElement, 'display', true);\n  }\n\n  /** Validate the visibility value and then update the host's inline display style */\n  protected updateWithValue(value: boolean | string = true) {\n    if (value === '') {\n      return;\n    }\n    const isServer = isPlatformServer(this.platformId);\n    this.addStyles(value ? 'true' : 'false', {display: this.display, isServer});\n    if (isServer && this.serverModuleLoaded) {\n      this.nativeElement.style.setProperty('display', '');\n    }\n    this.marshal.triggerUpdate(this.parentElement!, 'layout-gap');\n  }\n}\n\nconst DISPLAY_MAP: WeakMap<HTMLElement, string> = new WeakMap();\n\nconst inputs = [\n  'fxShow', 'fxShow.print',\n  'fxShow.xs', 'fxShow.sm', 'fxShow.md', 'fxShow.lg', 'fxShow.xl',\n  'fxShow.lt-sm', 'fxShow.lt-md', 'fxShow.lt-lg', 'fxShow.lt-xl',\n  'fxShow.gt-xs', 'fxShow.gt-sm', 'fxShow.gt-md', 'fxShow.gt-lg',\n  'fxHide', 'fxHide.print',\n  'fxHide.xs', 'fxHide.sm', 'fxHide.md', 'fxHide.lg', 'fxHide.xl',\n  'fxHide.lt-sm', 'fxHide.lt-md', 'fxHide.lt-lg', 'fxHide.lt-xl',\n  'fxHide.gt-xs', 'fxHide.gt-sm', 'fxHide.gt-md', 'fxHide.gt-lg'\n];\n\nconst selector = `\n  [fxShow], [fxShow.print],\n  [fxShow.xs], [fxShow.sm], [fxShow.md], [fxShow.lg], [fxShow.xl],\n  [fxShow.lt-sm], [fxShow.lt-md], [fxShow.lt-lg], [fxShow.lt-xl],\n  [fxShow.gt-xs], [fxShow.gt-sm], [fxShow.gt-md], [fxShow.gt-lg],\n  [fxHide], [fxHide.print],\n  [fxHide.xs], [fxHide.sm], [fxHide.md], [fxHide.lg], [fxHide.xl],\n  [fxHide.lt-sm], [fxHide.lt-md], [fxHide.lt-lg], [fxHide.lt-xl],\n  [fxHide.gt-xs], [fxHide.gt-sm], [fxHide.gt-md], [fxHide.gt-lg]\n`;\n\n/**\n * 'show' Layout API directive\n */\n@Directive({selector, inputs})\nexport class DefaultShowHideDirective extends ShowHideDirective {\n  protected inputs = inputs;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport type NgStyleRawList = string[];\nexport type NgStyleMap = {[klass: string]: string};\n// NgStyle selectors accept NgStyleType values\nexport type NgStyleType = string | Set<string> | NgStyleRawList | NgStyleMap;\n\n/**\n * Callback function for SecurityContext.STYLE sanitization\n */\nexport type NgStyleSanitizer = (val: any) => string;\n\n/** NgStyle allowed inputs */\nexport class NgStyleKeyValue {\n  constructor(public key: string, public value: string, noQuotes = true) {\n    this.key = noQuotes ? key.replace(/['\"]/g, '').trim() : key.trim();\n\n    this.value = noQuotes ? value.replace(/['\"]/g, '').trim() : value.trim();\n    this.value = this.value.replace(/;/, '');\n  }\n}\n\nexport function getType(target: any): string {\n  let what = typeof target;\n  if (what === 'object') {\n    return (target.constructor === Array) ? 'array' :\n        (target.constructor === Set) ? 'set' : 'object';\n  }\n  return what;\n}\n\n/**\n * Split string of key:value pairs into Array of k-v pairs\n * e.g.  'key:value; key:value; key:value;' -> ['key:value',...]\n */\nexport function buildRawList(source: any, delimiter = ';'): NgStyleRawList {\n  return String(source)\n      .trim()\n      .split(delimiter)\n      .map((val: string) => val.trim())\n      .filter(val => val !== '');\n}\n\n/** Convert array of key:value strings to a iterable map object */\nexport function buildMapFromList(styles: NgStyleRawList, sanitize?: NgStyleSanitizer): NgStyleMap {\n  const sanitizeValue = (it: NgStyleKeyValue) => {\n    if (sanitize) {\n      it.value = sanitize(it.value);\n    }\n    return it;\n  };\n\n  return styles\n      .map(stringToKeyValue)\n      .filter(entry => !!entry)\n      .map(sanitizeValue)\n      .reduce(keyValuesToMap, {} as NgStyleMap);\n}\n\n/** Convert Set<string> or raw Object to an iterable NgStyleMap */\nexport function buildMapFromSet(source: NgStyleType, sanitize?: NgStyleSanitizer): NgStyleMap {\n  let list: string[] = [];\n  if (getType(source) === 'set') {\n    (source as Set<string>).forEach(entry => list.push(entry));\n  } else {\n    Object.keys(source).forEach((key: string) => {\n      list.push(`${key}:${(source as NgStyleMap)[key]}`);\n    });\n  }\n  return buildMapFromList(list, sanitize);\n}\n\n\n/** Convert 'key:value' -> [key, value] */\nexport function stringToKeyValue(it: string): NgStyleKeyValue {\n  const [key, ...vals] = it.split(':');\n  return new NgStyleKeyValue(key, vals.join(':'));\n}\n\n/** Convert [ [key,value] ] -> { key : value } */\nexport function keyValuesToMap(map: NgStyleMap, entry: NgStyleKeyValue): NgStyleMap {\n  if (!!entry.key) {\n    map[entry.key] = entry.value;\n  }\n  return map;\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {\n  Directive,\n  DoCheck,\n  ElementRef,\n  Inject,\n  KeyValueDiffers,\n  Optional,\n  PLATFORM_ID,\n  Renderer2,\n  SecurityContext,\n  Self,\n} from '@angular/core';\nimport {isPlatformServer, NgStyle} from '@angular/common';\nimport {DomSanitizer} from '@angular/platform-browser';\nimport {\n  BaseDirective2,\n  StyleUtils,\n  MediaMarshaller,\n  SERVER_TOKEN,\n} from '@angular/flex-layout/core';\n\nimport {\n  NgStyleRawList,\n  NgStyleType,\n  NgStyleSanitizer,\n  buildRawList,\n  getType,\n  buildMapFromSet,\n  NgStyleMap,\n  NgStyleKeyValue,\n  stringToKeyValue,\n  keyValuesToMap,\n} from './style-transforms';\n\n@Directive()\nexport class StyleDirective extends BaseDirective2 implements DoCheck {\n\n  protected DIRECTIVE_KEY = 'ngStyle';\n  protected fallbackStyles: NgStyleMap;\n  protected isServer: boolean;\n\n  constructor(elementRef: ElementRef,\n              styler: StyleUtils,\n              marshal: MediaMarshaller,\n              protected sanitizer: DomSanitizer,\n              differs: KeyValueDiffers,\n              renderer2: Renderer2,\n              @Optional() @Self() private readonly ngStyleInstance: NgStyle,\n              @Inject(SERVER_TOKEN) serverLoaded: boolean,\n              @Inject(PLATFORM_ID) platformId: Object) {\n    super(elementRef, null!, styler, marshal);\n    if (!this.ngStyleInstance) {\n      // Create an instance NgStyle Directive instance only if `ngStyle=\"\"` has NOT been\n      // defined on the same host element; since the responsive variations may be defined...\n      this.ngStyleInstance = new NgStyle(elementRef, differs, renderer2);\n    }\n    this.init();\n    const styles = this.nativeElement.getAttribute('style') || '';\n    this.fallbackStyles = this.buildStyleMap(styles);\n    this.isServer = serverLoaded && isPlatformServer(platformId);\n  }\n\n  /** Add generated styles */\n  protected updateWithValue(value: any) {\n    const styles = this.buildStyleMap(value);\n    this.ngStyleInstance.ngStyle = {...this.fallbackStyles, ...styles};\n    if (this.isServer) {\n      this.applyStyleToElement(styles);\n    }\n    this.ngStyleInstance.ngDoCheck();\n  }\n\n  /** Remove generated styles */\n  protected clearStyles() {\n    this.ngStyleInstance.ngStyle = this.fallbackStyles;\n    this.ngStyleInstance.ngDoCheck();\n  }\n\n  /**\n   * Convert raw strings to ngStyleMap; which is required by ngStyle\n   * NOTE: Raw string key-value pairs MUST be delimited by `;`\n   *       Comma-delimiters are not supported due to complexities of\n   *       possible style values such as `rgba(x,x,x,x)` and others\n   */\n  protected buildStyleMap(styles: NgStyleType): NgStyleMap {\n    // Always safe-guard (aka sanitize) style property values\n    const sanitizer: NgStyleSanitizer = (val: any) =>\n      this.sanitizer.sanitize(SecurityContext.STYLE, val) || '';\n    if (styles) {\n      switch (getType(styles)) {\n        case 'string':  return buildMapFromList(buildRawList(styles),\n          sanitizer);\n        case 'array' :  return buildMapFromList(styles as NgStyleRawList, sanitizer);\n        case 'set'   :  return buildMapFromSet(styles, sanitizer);\n        default      :  return buildMapFromSet(styles, sanitizer);\n      }\n    }\n\n    return {};\n  }\n\n  // ******************************************************************\n  // Lifecycle Hooks\n  // ******************************************************************\n\n  /** For ChangeDetectionStrategy.onPush and ngOnChanges() updates */\n  ngDoCheck() {\n    this.ngStyleInstance.ngDoCheck();\n  }\n}\n\nconst inputs = [\n  'ngStyle',\n  'ngStyle.xs', 'ngStyle.sm', 'ngStyle.md', 'ngStyle.lg', 'ngStyle.xl',\n  'ngStyle.lt-sm', 'ngStyle.lt-md', 'ngStyle.lt-lg', 'ngStyle.lt-xl',\n  'ngStyle.gt-xs', 'ngStyle.gt-sm', 'ngStyle.gt-md', 'ngStyle.gt-lg'\n];\n\nconst selector = `\n  [ngStyle],\n  [ngStyle.xs], [ngStyle.sm], [ngStyle.md], [ngStyle.lg], [ngStyle.xl],\n  [ngStyle.lt-sm], [ngStyle.lt-md], [ngStyle.lt-lg], [ngStyle.lt-xl],\n  [ngStyle.gt-xs], [ngStyle.gt-sm], [ngStyle.gt-md], [ngStyle.gt-lg]\n`;\n\n/**\n * Directive to add responsive support for ngStyle.\n *\n */\n@Directive({selector, inputs})\nexport class DefaultStyleDirective extends StyleDirective implements DoCheck {\n  protected inputs = inputs;\n}\n\n/** Build a styles map from a list of styles, while sanitizing bad values first */\nfunction buildMapFromList(styles: NgStyleRawList, sanitize?: NgStyleSanitizer): NgStyleMap {\n  const sanitizeValue = (it: NgStyleKeyValue) => {\n    if (sanitize) {\n      it.value = sanitize(it.value);\n    }\n    return it;\n  };\n\n  return styles\n    .map(stringToKeyValue)\n    .filter(entry => !!entry)\n    .map(sanitizeValue)\n    .reduce(keyValuesToMap, {} as NgStyleMap);\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nimport {NgModule} from '@angular/core';\nimport {CoreModule} from '@angular/flex-layout/core';\n\nimport {DefaultImgSrcDirective} from './img-src/img-src';\nimport {DefaultClassDirective} from './class/class';\nimport {DefaultShowHideDirective} from './show-hide/show-hide';\nimport {DefaultStyleDirective} from './style/style';\n\n\nconst ALL_DIRECTIVES = [\n  DefaultShowHideDirective,\n  DefaultClassDirective,\n  DefaultStyleDirective,\n  DefaultImgSrcDirective,\n];\n\n/**\n * *****************************************************************\n * Define module for the Extended API\n * *****************************************************************\n */\n\n@NgModule({\n  imports: [CoreModule],\n  declarations: [...ALL_DIRECTIVES],\n  exports: [...ALL_DIRECTIVES]\n})\nexport class ExtendedModule {\n}\n","/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n\nexport * from './module';\n\nexport * from './class/class';\nexport * from './img-src/img-src';\nexport * from './show-hide/show-hide';\nexport * from './style/style';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["inputs","selector","buildMapFromList"],"mappings":"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"}