<link rel="import" href="../../../../packages/polymer/polymer.html">
<link rel="import" href="class_ref.html">
<link rel="import" href="eval_box.html">
<link rel="import" href="field_ref.html">
<link rel="import" href="function_ref.html">
<link rel="import" href="instance_ref.html">
<link rel="import" href="library_ref.html">
<link rel="import" href="script_ref.html">

<polymer-element name="library-view">
  <template>
    <link rel="stylesheet" href="css/shared.css">

    <nav-bar>
      <top-nav-menu></top-nav-menu>
      <vm-nav-menu vm="{{ library.isolate.vm }}"></vm-nav-menu>
      <isolate-nav-menu isolate="{{ library.isolate }}"></isolate-nav-menu>
      <library-nav-menu library="{{ library }}" last="{{ true }}"></library-nav-menu>
      <nav-refresh callback="{{ refresh }}"></nav-refresh>
      <nav-notify notifications="{{ app.notifications }}"></nav-notify>
    </nav-bar>

    <div class="content">
      <h1>
        <!-- TODO(turnidge): Handle unnamed libraries -->
        library {{ library.name }}
      </h1>

      <object-common object="{{ library }}"></object-common>
      <br>

      <div class="memberList">
        <div class="memberItem">
          <div class="memberName">uri</div>
          <div class="memberValue">{{ library.uri }}</div>
        </div>
        <template if="{{ library.name != library.vmName }}">
          <div class="memberItem">
            <div class="memberName">vm name</div>
            <div class="memberValue">{{ library.vmName }}</div>
          </div>
        </template>
      </div>
    </div>

    <hr>

    <div class="content">
      <eval-box callback="{{ evaluate }}"></eval-box>
    </div>

    <hr>

    <div class="content">
      <template if="{{ library.dependencies.isNotEmpty }}">
        dependencies ({{ library.dependencies.length }})
        <curly-block expand="{{ false }}">
          <div class="memberList">
            <template repeat="{{ dep in library.dependencies }}">
              <div class="memberItem">
                <div class="memberValue">
                  <template if="{{ dep.isImport }}">
                    import <library-ref ref="{{ dep.target }}"></library-ref>
                    <template if="{{ dep.prefix != null }}">
                      as {{ dep.prefix.toString() }}
                    </template>
                    <template if="{{ dep.isDeferred }}">
                      deferred
                    </template>
                  </template>
                  <template if="{{ !dep.isImport }}">
                    export <library-ref ref="{{ dep.target }}"></library-ref>
                  </template>
                </div>
              </div>
            </template>
          </div>
        </curly-block><br>
        <br>
      </template>

      <template if="{{ library.scripts.isNotEmpty }}">
        scripts ({{ library.scripts.length }})
        <curly-block expand="{{ false }}">
          <div class="memberList">
            <template repeat="{{ script in library.scripts }}">
              <div class="memberItem">
                <div class="memberValue">
                  <script-ref ref="{{ script }}"></script-ref>
                </div>
              </div>
            </template>
          </div>
        </curly-block><br>
        <br>
      </template>

      <template if="{{ library.classes.isNotEmpty }}">
        classes ({{ library.classes.length }})
        <curly-block expand="{{ false }}">
          <div class="memberList">
            <template repeat="{{ cls in library.classes }}">
              <div class="memberItem">
                <div class="memberValue">
                  <class-ref ref="{{ cls }}"></class-ref>
                </div>
              </div>
            </template>
          </div>
        </curly-block><br>
        <br>
      </template>

      <template if="{{ library.variables.isNotEmpty }}">
        variables ({{ library.variables.length }})
        <curly-block expand="{{ library.variables.length <= 8 }}">
          <div class="memberList">
            <template repeat="{{ field in library.variables }}">
              <div class="memberItem">
                <div class="memberName">
                  <field-ref ref="{{ field }}"></field-ref>
                </div>
                <div class="memberValue">
                  <template if="{{ field.staticValue != null }}">
                    <any-service-ref ref="{{ field.staticValue }}"></any-service-ref>
                  </template>
                </div>
              </div>
            </template>
          </div>
        </curly-block><br>
        <br>
      </template>

      <template if="{{ library.functions.isNotEmpty }}">
        functions ({{ library.functions.length }})
        <curly-block expand="{{ false }}">
          <div class="memberList">
            <template repeat="{{ function in library.functions }}">
              <div class="memberItem">
                <div class="memberValue">
                  <function-ref ref="{{ function }}"></function-ref>
                </div>
              </div>
            </template>
          </div>
        </curly-block><br>
        <br>
      </template>
    </div>

    <div class="content-centered-big">
      <hr>
      <script-inset script="{{ library.rootScript }}">
      </script-inset>
    </div>

    <view-footer></view-footer>
 </template>
</polymer-element>

<script type="application/dart" src="library_view.dart"></script>
