2011-02-08 19:53:59 +01:00
|
|
|
/**
|
|
|
|
* @provides javelin-behavior-maniphest-transaction-controls
|
Bring Javelin into Phabricator via git submodule, not copy-and-paste
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
2011-05-04 00:11:55 +02:00
|
|
|
* @requires javelin-behavior
|
|
|
|
* javelin-dom
|
Use Javelin placeholders and new sorting rules broadly; consolidate tokenizer construction code
Summary:
- We have three nearly-identical blocks of Tokenizer construction code; consolidate them into Prefab.
- Add placeholder support.
- Augment server-side stuff to specify placeholder text.
Test Plan: Verified behavior of Differential edit tokenizers, Differential comment tokenizers, Maniphest edit tokenizers, Maniphest comment tokenizers, Maniphest filter tokenizers, Differential filter tokenizers, Owners filter tokenizers, Owners edit tokenizers, Herald edit tokenizers, Audit filter tokenizers.
Reviewers: btrahan
Reviewed By: btrahan
CC: aran, epriestley
Maniphest Tasks: T772, T946
Differential Revision: https://secure.phabricator.com/D1844
2012-03-10 00:46:39 +01:00
|
|
|
* phabricator-prefab
|
2011-02-08 19:53:59 +01:00
|
|
|
*/
|
|
|
|
|
|
|
|
JX.behavior('maniphest-transaction-controls', function(config) {
|
|
|
|
|
|
|
|
var tokenizers = {};
|
|
|
|
|
|
|
|
for (var k in config.tokenizers) {
|
|
|
|
var tconfig = config.tokenizers[k];
|
Use Javelin placeholders and new sorting rules broadly; consolidate tokenizer construction code
Summary:
- We have three nearly-identical blocks of Tokenizer construction code; consolidate them into Prefab.
- Add placeholder support.
- Augment server-side stuff to specify placeholder text.
Test Plan: Verified behavior of Differential edit tokenizers, Differential comment tokenizers, Maniphest edit tokenizers, Maniphest comment tokenizers, Maniphest filter tokenizers, Differential filter tokenizers, Owners filter tokenizers, Owners edit tokenizers, Herald edit tokenizers, Audit filter tokenizers.
Reviewers: btrahan
Reviewed By: btrahan
CC: aran, epriestley
Maniphest Tasks: T772, T946
Differential Revision: https://secure.phabricator.com/D1844
2012-03-10 00:46:39 +01:00
|
|
|
tokenizers[k] = JX.Prefab.buildTokenizer(tconfig).tokenizer;
|
2013-05-19 02:04:22 +02:00
|
|
|
tokenizers[k].start();
|
2011-02-08 19:53:59 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
JX.DOM.listen(
|
|
|
|
JX.$(config.select),
|
|
|
|
'change',
|
|
|
|
null,
|
|
|
|
function(e) {
|
|
|
|
for (var k in config.controlMap) {
|
|
|
|
if (k == JX.$(config.select).value) {
|
|
|
|
JX.DOM.show(JX.$(config.controlMap[k]));
|
|
|
|
if (tokenizers[k]) {
|
|
|
|
tokenizers[k].refresh();
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
JX.DOM.hide(JX.$(config.controlMap[k]));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
});
|
|
|
|
|
|
|
|
});
|