| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 | 
							- <link rel="import" href="../../bower_components/paper-icon-button/paper-icon-button.html">
 
- <dom-module id="buddy-avatar">
 
-     <template>
 
-         <style>
 
-         :host {
 
-             display: block;
 
-             @apply(--layout-vertical);
 
-             @apply(--layout-center);
 
-             width: 120px;
 
-             height: 152px;
 
-         }
 
-         
 
-         paper-icon-button {
 
-             display: inline-block;
 
-             width: 64px !important;
 
-             height: 64px !important;
 
-             border-radius: 50%;
 
-             overflow: hidden;
 
-             padding: 12px;
 
-             margin-bottom: 4px;
 
-             background-color: #4285f4;
 
-             color: white;
 
-         }
 
-         
 
-         :host:hover paper-icon-button {
 
-             transform: scale(1.05);
 
-         }
 
-         
 
-         .paper-font-subhead {
 
-             text-align: center;
 
-         }
 
-         
 
-         .paper-font-body1 {
 
-             text-align: center;
 
-             width: 100%;
 
-             font-size: 13px;
 
-             color: grey;
 
-             margin-top: 2px;
 
-         }
 
-         
 
-         :host,
 
-         .paper-font-subhead,
 
-         .paper-font-body1 {
 
-             -webkit-user-select: none;
 
-             -moz-user-select: none;
 
-             -ms-user-select: none;
 
-             user-select: none;
 
-             margin-top: 4px;
 
-         }
 
-         </style>
 
-         <paper-icon-button icon="{{_displayIcon}}"></paper-icon-button>
 
-         <div class="paper-font-subhead">{{_displayName}}</div>
 
-         <div class="paper-font-body1">{{status}}</div>
 
-     </template>
 
-     <script>
 
-     'use strict';
 
-     Polymer({
 
-         is: 'buddy-avatar',
 
-         properties: {
 
-             contact: Object,
 
-             _displayName: {
 
-                 computed: '_computeDisplayName(contact)'
 
-             },
 
-             _displayIcon: {
 
-                 computed: '_computeDisplayIcon(contact)'
 
-             },
 
-             status: {
 
-                 type: String,
 
-                 value: ''
 
-             }
 
-         },
 
-         _computeDisplayName: function(contact) {
 
-             contact = contact.name;
 
-             if (contact.model) {
 
-                 return contact.os + ' ' + contact.model;
 
-             }
 
-             contact.os = contact.os.replace('Mac OS', 'Mac');
 
-             return contact.os + ' ' + contact.browser;
 
-         },
 
-         _computeDisplayIcon: function(contact) {
 
-             contact = contact.name;
 
-             if (contact.type === 'mobile') {
 
-                 return 'chat:phone-iphone';
 
-             }
 
-             if (contact.type === 'tablet') {
 
-                 return 'chat:tablet-mac';
 
-             }
 
-             return 'chat:desktop-mac';
 
-         },
 
-         attached: function() {
 
-             this.async(function() {
 
-                 app.conn.addEventListener('file-offered', function(e) {
 
-                     if (e.detail.to === this.contact.peerId) {
 
-                         this.status = 'Waiting to accept...';
 
-                     }
 
-                 }.bind(this), false);
 
-                 app.conn.addEventListener('upload-started', function(e) {
 
-                     if (e.detail.to === this.contact.peerId) {
 
-                         this.status = 'Uploading...';
 
-                     }
 
-                 }.bind(this), false);
 
-                 app.conn.addEventListener('download-started', function(e) {
 
-                     if (e.detail.from === this.contact.peerId) {
 
-                         this.status = 'Downloading...';
 
-                     }
 
-                 }.bind(this), false);
 
-                 app.conn.addEventListener('upload-complete', function(e) {
 
-                     if (e.detail.from === this.contact.peerId) {
 
-                         this.status = '';
 
-                     }
 
-                 }.bind(this), false);
 
-                 app.conn.addEventListener('download-complete', function(e) {
 
-                     if (e.detail.from === this.contact.peerId) {
 
-                         this.status = '';
 
-                     }
 
-                 }.bind(this), false);
 
-                 app.conn.addEventListener('file-declined', function(e) {
 
-                     if (e.detail.from === this.contact.peerId) {
 
-                         this.status = '';
 
-                     }
 
-                 }.bind(this), false);
 
-                 app.conn.addEventListener('upload-error', function(e) {
 
-                     this.status = '';
 
-                 }.bind(this), false);
 
-             }, 200);
 
-         }
 
-     });
 
-     </script>
 
- </dom-module>
 
 
  |