Support for setting max/min value for "Query Limit" and "Batch Changes"
This support was missed when adding gr-repo-access.
Bug: Issue 10309
Change-Id: Ib04f070b61d833de8bf0df187060f72058ea292e
diff --git a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.html b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.html
index 22f461b..a5bb5fd 100644
--- a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.html
+++ b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.html
@@ -109,6 +109,7 @@
items="{{_rules}}"
as="rule">
<gr-rule-editor
+ has-range="[[_computeHasRange(name)]]"
label="[[_label]]"
editing="[[editing]]"
group-id="[[rule.id]]"
diff --git a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.js b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.js
index 31d371d..afe5a86 100644
--- a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.js
+++ b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission.js
@@ -19,6 +19,11 @@
const MAX_AUTOCOMPLETE_RESULTS = 20;
+ const RANGE_NAMES = [
+ 'QUERY LIMIT',
+ 'BATCH CHANGES LIMIT',
+ ];
+
/**
* Fired when the permission has been modified or removed.
*
@@ -269,5 +274,11 @@
this.set(['permission', 'value', 'rules', groupId], value);
this.dispatchEvent(new CustomEvent('access-modified', {bubbles: true}));
},
+
+ _computeHasRange(name) {
+ if (!name) { return false; }
+
+ return RANGE_NAMES.includes(name.toUpperCase());
+ },
});
})();
diff --git a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission_test.html b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission_test.html
index e29c4a2..a6381d1 100644
--- a/polygerrit-ui/app/elements/admin/gr-permission/gr-permission_test.html
+++ b/polygerrit-ui/app/elements/admin/gr-permission/gr-permission_test.html
@@ -255,6 +255,14 @@
assert.isFalse(element._deleted);
assert.isNotOk(element.permission.value.deleted);
});
+
+ test('_computeHasRange', () => {
+ assert.isTrue(element._computeHasRange('Query Limit'));
+
+ assert.isTrue(element._computeHasRange('Batch Changes Limit'));
+
+ assert.isFalse(element._computeHasRange('test'));
+ });
});
suite('interactions', () => {
diff --git a/polygerrit-ui/app/elements/admin/gr-rule-editor/gr-rule-editor.html b/polygerrit-ui/app/elements/admin/gr-rule-editor/gr-rule-editor.html
index d59deed4..c8ae650 100644
--- a/polygerrit-ui/app/elements/admin/gr-rule-editor/gr-rule-editor.html
+++ b/polygerrit-ui/app/elements/admin/gr-rule-editor/gr-rule-editor.html
@@ -71,7 +71,11 @@
color: var(--deemphasized-text-color);
}
</style>
- <style include="gr-form-styles"></style>
+ <style include="gr-form-styles">
+ iron-autogrow-textarea {
+ width: 14em;
+ }
+ </style>
<div id="mainContainer"
class$="gr-form-styles [[_computeSectionClass(editing, _deleted)]]">
<div id="options">
@@ -106,6 +110,22 @@
</select>
</gr-select>
</template>
+ <template is="dom-if" if="[[hasRange]]">
+ <iron-autogrow-textarea
+ id="minInput"
+ class="min"
+ autocomplete="on"
+ placeholder="Min value"
+ bind-value="{{rule.value.min}}"
+ disabled$="[[!editing]]"></iron-autogrow-textarea>
+ <iron-autogrow-textarea
+ id="maxInput"
+ class="max"
+ autocomplete="on"
+ placeholder="Max value"
+ bind-value="{{rule.value.max}}"
+ disabled$="[[!editing]]"></iron-autogrow-textarea>
+ </template>
<a class="groupPath" href$="[[_computeGroupPath(groupId)]]">
[[groupName]]
</a>
diff --git a/polygerrit-ui/app/elements/admin/gr-rule-editor/gr-rule-editor.js b/polygerrit-ui/app/elements/admin/gr-rule-editor/gr-rule-editor.js
index b99125c..06f703f 100644
--- a/polygerrit-ui/app/elements/admin/gr-rule-editor/gr-rule-editor.js
+++ b/polygerrit-ui/app/elements/admin/gr-rule-editor/gr-rule-editor.js
@@ -67,6 +67,7 @@
is: 'gr-rule-editor',
properties: {
+ hasRange: Boolean,
/** @type {?} */
label: Object,
editing: {