| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 /** | 5 /** |
| 6 * @fileoverview | 6 * @fileoverview |
| 7 * 'cr-settings-drawer' holds the user card and navigation menu for settings | 7 * 'cr-settings-drawer' holds the user card and navigation menu for settings |
| 8 * pages. | 8 * pages. |
| 9 * | 9 * |
| 10 * Example: | 10 * Example: |
| 11 * | 11 * |
| 12 * <core-drawer-panel> | 12 * <paper-drawer-panel> |
| 13 * <cr-settings-drawer drawer selectedId="{{selectedId}}" | 13 * <cr-settings-drawer drawer selected-id="{{selectedId}}" |
| 14 * pages="{{pages}}"> | 14 * pages="[[pages]]"> |
| 15 * </cr-settings-drawer> | 15 * </cr-settings-drawer> |
| 16 * <cr-settings-main main selectedId="{{selectedId}}" pages="{{pages}}"> | 16 * <cr-settings-main main selected-id="{{selectedId}}" pages="[[pages]]"> |
| 17 * </cr-settings-main> | 17 * </cr-settings-main> |
| 18 * </core-drawer-panel> | 18 * </paper-drawer-panel> |
| 19 * | 19 * |
| 20 * @group Chrome Settings Elements | 20 * @group Chrome Settings Elements |
| 21 * @element cr-settings-drawer | 21 * @element cr-settings-drawer |
| 22 */ | 22 */ |
| 23 Polymer('cr-settings-drawer', { | 23 Polymer({ |
| 24 publish: { | 24 is: 'cr-settings-drawer', |
| 25 |
| 26 properties: { |
| 25 /** | 27 /** |
| 26 * Pages to include in the navigation. | 28 * Pages to include in the navigation. |
| 27 * | 29 * @type {!Array<!HTMLElement>} |
| 28 * @attribute pages | |
| 29 * @type Array<!Object> | |
| 30 * @default null | |
| 31 */ | 30 */ |
| 32 pages: null, | 31 pages: { |
| 32 type: Array, |
| 33 value: function() { return []; }, |
| 34 }, |
| 33 | 35 |
| 34 /** | 36 /** |
| 35 * ID of the currently selected page. | 37 * ID of the currently selected page. |
| 36 * | 38 * @type {string} |
| 37 * @attribute selectedId | |
| 38 * @type string | |
| 39 * default '' | |
| 40 */ | 39 */ |
| 41 selectedId: '', | 40 selectedId: { |
| 42 }, | 41 type: String, |
| 42 notify: true, |
| 43 }, |
| 43 | 44 |
| 44 /** @override */ | 45 /** |
| 45 created: function() { | 46 * @private {!Object} |
| 46 this.pages = []; | 47 * TODO(michaelpg): Create custom element and data source for user card. |
| 47 }, | 48 */ |
| 48 | 49 user_: { |
| 49 /** | 50 type: Object, |
| 50 * @type {Object} | 51 value: function() { |
| 51 * TODO(michaelpg): Create custom element and data source for user card. | 52 return { |
| 52 */ | 53 name: 'Chrome User', |
| 53 user: { | 54 email: 'user@example.com', |
| 54 name: 'Chrome User', | 55 iconUrl: 'chrome://theme/IDR_PROFILE_AVATAR_23@1x', |
| 55 email: 'user@example.com', | 56 }; |
| 56 iconUrl: 'chrome://theme/IDR_PROFILE_AVATAR_23@1x', | 57 }, |
| 58 readOnly: true, |
| 59 }, |
| 57 }, | 60 }, |
| 58 }); | 61 }); |
| OLD | NEW |