{"remainingRequest":"/Users/jaslan/Development/nifi-fds/angular-url-loader.js!/Users/jaslan/Development/nifi-fds/node_modules/babel-loader/lib/index.js??ref--5-2!/Users/jaslan/Development/nifi-fds/platform/core/snackbars/fds-snackbar.component.js","dependencies":[{"path":"/Users/jaslan/Development/nifi-fds/platform/core/snackbars/fds-snackbar.component.js","mtime":1562689731045},{"path":"/Users/jaslan/Development/nifi-fds/node_modules/cache-loader/dist/cjs.js","mtime":499162500000},{"path":"/Users/jaslan/Development/nifi-fds/angular-url-loader.js","mtime":1562689731025},{"path":"/Users/jaslan/Development/nifi-fds/node_modules/babel-loader/lib/index.js","mtime":499162500000}],"contextDependencies":[],"result":["/*\n * Licensed to the Apache Software Foundation (ASF) under one or more\n * contributor license agreements.  See the NOTICE file distributed with\n * this work for additional information regarding copyright ownership.\n * The ASF licenses this file to You under the Apache License, Version 2.0\n * (the \"License\"); you may not use this file except in compliance with\n * the License.  You may obtain a copy of the License at\n *\n *     http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\nimport { Component, Directive, ContentChildren } from '@angular/core';\nexport function FdsSnackBarTitleDirective() {}\nFdsSnackBarTitleDirective.prototype = {\n  contstructor: FdsSnackBarTitleDirective\n};\nFdsSnackBarTitleDirective.decorators = [{\n  type: Directive,\n  args: [{\n    selector: 'fds-snackbar-title'\n  }]\n}];\nexport function FdsSnackBarContentDirective() {}\nFdsSnackBarContentDirective.prototype = {\n  contstructor: FdsSnackBarContentDirective\n};\nFdsSnackBarContentDirective.decorators = [{\n  type: Directive,\n  args: [{\n    selector: 'fds-snackbar-content'\n  }]\n}];\nexport function FdsSnackBarActionsDirective() {}\nFdsSnackBarActionsDirective.prototype = {\n  contstructor: FdsSnackBarActionsDirective\n};\nFdsSnackBarActionsDirective.decorators = [{\n  type: Directive,\n  args: [{\n    selector: 'fds-snackbar-actions'\n  }]\n}];\n/**\n * FdsSnackBarComponent constructor\n *\n * @constructor\n */\n\nfunction FdsSnackBarComponent() {\n  this.snackBarTitle = '';\n  this.snackBarContent = '';\n  this.snackBarActions = '';\n}\n\nFdsSnackBarComponent.prototype = {\n  constructor: FdsSnackBarComponent,\n\n  /**\n   * Respond after Angular projects external content into the component's view.\n   */\n  ngAfterContentInit: function ngAfterContentInit() {\n    if (this.snackBarTitle.length > 1) {\n      throw new Error('Duplicate fds-snackbar-title component at in fds-snackbar.');\n    }\n\n    if (this.snackBarContent.length > 1) {\n      throw new Error('Duplicate fds-snackbar-content component at in fds-snackbar.');\n    }\n\n    if (this.snackBarActions.length > 1) {\n      throw new Error('Duplicate fds-snackbar-actions component at in fds-snackbar.');\n    }\n  }\n};\nFdsSnackBarComponent.annotations = [new Component({\n  selector: 'fds-snackbar',\n  template: require('./fds-snackbar.component.html'),\n  queries: {\n    snackBarTitle: new ContentChildren(FdsSnackBarTitleDirective),\n    snackBarContent: new ContentChildren(FdsSnackBarContentDirective),\n    snackBarActions: new ContentChildren(FdsSnackBarActionsDirective)\n  }\n})];\nFdsSnackBarComponent.parameters = [];\nexport { FdsSnackBarComponent };"]}