mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-30 18:52:42 +01:00
2a39fd09eb
Summary: Javelin is currently embedded in Phabricator via copy-and-paste of prebuilt packages. This is not so great. Pull it in as a submodule instead and make all the Phabriator resources declare proper dependency trees. Add Javelin linting. Test Plan: I tried to run through pretty much all the JS functionality on the site. This is still a high-risk change, but I did a pretty thorough test Differential: inline comments, revealing diffs, list tokenizers, comment preview, editing/deleting comments, add review action. Maniphest: list tokenizer, comment actions Herald: rule editing, tokenizers, add/remove rows Reviewed By: tomo Reviewers: aran, tomo, mroch, jungejason, tuomaspelkonen CC: aran, tomo, epriestley Differential Revision: 223
36 lines
935 B
JavaScript
36 lines
935 B
JavaScript
/**
|
|
* @provides javelin-behavior-differential-diff-radios
|
|
* @requires javelin-behavior
|
|
* javelin-stratcom
|
|
* javelin-dom
|
|
*/
|
|
|
|
JX.behavior('differential-diff-radios', function(config) {
|
|
JX.Stratcom.listen(
|
|
'click',
|
|
'differential-new-radio',
|
|
function(e) {
|
|
var target = e.getTarget();
|
|
var adjust;
|
|
var node;
|
|
var reset = false;
|
|
for (var ii = 0; ii < config.radios.length; ii++) {
|
|
node = JX.$(config.radios[ii]);
|
|
if (parseInt(node.value, 10) >= parseInt(target.value, 10)) {
|
|
if (node.checked) {
|
|
node.checked = false;
|
|
reset = true;
|
|
}
|
|
node.disabled = 'disabled';
|
|
} else {
|
|
node.disabled = '';
|
|
if (!adjust || adjust.value < node.value) {
|
|
adjust = node;
|
|
}
|
|
}
|
|
}
|
|
if (reset && adjust) {
|
|
adjust.checked = 'checked';
|
|
}
|
|
});
|
|
});
|