| Index: server/static/rpcexplorer/rpc-service-list.html
|
| diff --git a/server/static/rpcexplorer/rpc-service-list.html b/server/static/rpcexplorer/rpc-service-list.html
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..fd567869f6158ce3f236e4193cce4d3b3672e92e
|
| --- /dev/null
|
| +++ b/server/static/rpcexplorer/rpc-service-list.html
|
| @@ -0,0 +1,63 @@
|
| +<!--
|
| + Copyright 2016 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="../bower_components/polymer/polymer.html">
|
| +<link rel="import"
|
| + href="../bower_components/html5-history-anchor/html5-history-anchor.html">
|
| +
|
| +<link rel="import" href="rpc-descriptor-util.html">
|
| +
|
| +<!-- The `rpc-service-list` is a service list page -->
|
| +<dom-module id="rpc-service-list">
|
| + <template>
|
| + <p>Services:</p>
|
| + <ul>
|
| + <template is="dom-repeat" items="[[services]]" as="service">
|
| + <li>
|
| + <a is="html5-history-anchor" pushstate popstate
|
| + href="[[service.name]]/">[[service.name]]</a>
|
| + <span class="text-muted comment">[[service.comments]]</span>
|
| + </li>
|
| + </template>
|
| + </ul>
|
| + </template>
|
| + <script>
|
| + 'use strict';
|
| +
|
| + Polymer({
|
| + is: 'rpc-service-list',
|
| +
|
| + properties: {
|
| + /** @type {FileDescriptorSet}
|
| + description: Object,
|
| +
|
| + /** @type {Array.<string>} */
|
| + serviceNames: Array,
|
| +
|
| + /** @type {Array.<{name: string, comment: string}>} */
|
| + services: {
|
| + type: Array,
|
| + computed: '_resolveServices(description, serviceNames)'
|
| + }
|
| + },
|
| +
|
| + _resolveServices: function(desc, names) {
|
| + var result = [];
|
| + for (var i = 0; i < names.length; i++) {
|
| + var svc = rpcExplorer.descUtil.resolve(desc, names[i]);
|
| + if (svc && svc.type === 'service') {
|
| + var info = svc.desc.source_code_info;
|
| + result.push({
|
| + name: names[i],
|
| + comments: info && info.leading_comments
|
| + });
|
| + }
|
| + }
|
| + return result;
|
| + }
|
| + });
|
| + </script>
|
| +</dom-module>
|
|
|