<!--
@license
Copyright (C) 2018 The Android Open Source Project

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

<link rel="import" href="../../../bower_components/polymer/polymer.html">
<link rel="import" href="../../../behaviors/gr-patch-set-behavior/gr-patch-set-behavior.html">
<link rel="import" href="../../core/gr-reporting/gr-reporting.html">
<link rel="import" href="../../shared/gr-rest-api-interface/gr-rest-api-interface.html">
<link rel="import" href="../../shared/gr-comment-thread/gr-comment-thread.html">
<link rel="import" href="../../shared/gr-js-api-interface/gr-js-api-interface.html">
<link rel="import" href="../gr-diff/gr-diff.html">

<dom-module id="gr-diff-host">
  <template>
    <gr-diff
        id="diff"
        change-num="[[changeNum]]"
        no-auto-render=[[noAutoRender]]
        patch-range="[[patchRange]]"
        path="[[path]]"
        prefs="[[prefs]]"
        project-name="[[projectName]]"
        display-line="[[displayLine]]"
        is-image-diff="[[isImageDiff]]"
        commit-range="[[commitRange]]"
        hidden$="[[hidden]]"
        no-render-on-prefs-change="[[noRenderOnPrefsChange]]"
        line-wrapping="[[lineWrapping]]"
        view-mode="[[viewMode]]"
        line-of-interest="[[lineOfInterest]]"
        logged-in="[[_loggedIn]]"
        loading="[[_loading]]"
        error-message="[[_errorMessage]]"
        base-image="[[_baseImage]]"
        revision-image=[[_revisionImage]]
        coverage-ranges="[[_coverageRanges]]"
        blame="[[_blame]]"
        diff="[[diff]]"></gr-diff>
    <gr-js-api-interface id="jsAPI"></gr-js-api-interface>
    <gr-rest-api-interface id="restAPI"></gr-rest-api-interface>
    <gr-reporting id="reporting" category="diff"></gr-reporting>
  </template>
  <script src="gr-diff-host.js"></script>
</dom-module>
