blob: 450d2a9ba90ca23ff27383a9cd91baaa54dd6bc0 [file] [log] [blame]
<!DOCTYPE html>
<!--
Copyright (c) 2015 The Chromium Authors. All rights reserved.
Use of this source code is governed by a BSD-style license that can be
found in the LICENSE file.
-->
<link rel="import" href="/base/deep_utils.html">
<link rel="import" href="/base/units/time.html">
<link rel="import" href="/base/units/time_stamp.html">
<script>
'use strict';
tr.exportTo('tr.b.units', function() {
function createTimeStampSpan(timestamp) {
if (timestamp === undefined)
return '';
var span = document.createElement('tr-b-u-time-stamp-span');
span.timestamp = timestamp;
return span;
}
tr.b.units.Time.addEventListener('display-unit-changed', function(e) {
tr.b.findDeepElementsMatching(document.body,
'tr-b-u-time-stamp-span').forEach(function(el) {
el.updateContent_();
});
});
return {
createTimeStampSpan: createTimeStampSpan
};
});
</script>
<polymer-element name="tr-b-u-time-stamp-span">
<template>
</template>
<script>
'use strict';
Polymer({
ready: function() {
this.timestamp_ = undefined;
},
get timestamp() {
return this.timestamp_;
},
set timestamp(timestamp) {
if (timestamp instanceof tr.b.units.TimeStamp)
this.timestamp_ = timestamp.timestamp;
else
this.timestamp_ = timestamp;
this.updateContent_();
},
updateContent_: function() {
var content = tr.b.units.Time.currentDisplayUnit.format(this.timestamp_);
this.shadowRoot.textContent = content;
}
});
</script>
</polymer-element>