Index: chrome/browser/resources/md_policy/policy_group.js |
diff --git a/chrome/browser/resources/md_policy/policy_group.js b/chrome/browser/resources/md_policy/policy_group.js |
new file mode 100644 |
index 0000000000000000000000000000000000000000..f5c6b51cbf06bb9bbce9c9fc1a3beb33ff9ab48b |
--- /dev/null |
+++ b/chrome/browser/resources/md_policy/policy_group.js |
@@ -0,0 +1,68 @@ |
+// Copyright 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. |
+ |
+/** |
+ * @fileoverview |
+ * 'policy-group' is an MD element, that contains a description of a group |
+ * and all policies that are tagged with the groups name. Policies with multiple |
+ * tags will appear in multiple groups. |
+ * |
+ * Example: |
+ * |
+ * <policy-group></policy-group> |
+ * |
+ * By inserting an element as created with |
+ * |
+ * new PolicyGroup('Privacy and Security') |
+ * |
+ * into a document's DOM would render a paper card with the title 'Privacy |
+ * and Security'. New Policies are added with |addPolicy|. |
+ * |
+ * @group Chrome Policy Elements |
+ * @element policy-group |
+ */ |
+PolicyGroup = Polymer({ |
+ is: 'policy-group', |
+ |
+ properties: { |
+ /** |
+ * Tag name used as title for the group card. |
+ * @type {string} |
stevenjb
2015/10/09 16:39:27
For "simple" types like String, Closure can infer
fhorschig
2015/10/09 16:42:37
Okay, removed.
|
+ */ |
+ riskTag: { |
+ type: String, |
+ reflectToAttribute: true, |
+ readOnly: true, |
+ notify: false |
+ } |
+ }, |
+ |
+ /** |
+ * @override |
+ * @param {string} riskTag String ID used as title for the group card. |
+ */ |
+ factoryImpl: function(riskTag) { |
+ this._setRiskTag(riskTag); |
+ }, |
+ |
+ /** |
+ * Used in HMTL file to translate displayed string. |
+ * @param {string} key The key for the i18n. |
+ * @return {string} i18n of |key|. |
+ */ |
+ translate: function(key) { |
+ return loadTimeData.getString(key); |
+ }, |
+ |
+ /** |
+ * Creates a new DOM element for the given policy. |
+ * @param {string} policy Name of the policy. |
+ */ |
+ addPolicy: function(policy) { |
+ // TODO(fhorschig): Create policy paper-items with possibility to (un)fold. |
+ var node = document.createElement('p'); |
+ node.textContent = policy; |
+ this.$.content.appendChild(node); |
+ } |
+}); |