1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
import DropLab from '@gitlab-org/droplab';
import InputSetter from '@gitlab-org/droplab/dist/plugins/InputSetter';
class CommentTypeToggle {
constructor(dropdownTrigger, dropdownList, noteTypeInput, submitButton, closeButton) {
this.dropdownTrigger = dropdownTrigger;
this.dropdownList = dropdownList;
this.noteTypeInput = noteTypeInput;
this.submitButton = submitButton;
this.closeButton = closeButton;
}
initDroplab() {
this.droplab = new DropLab();
const inputSetterConfig = [{
input: this.noteTypeInput,
valueAttribute: 'data-value',
},
{
input: this.submitButton,
valueAttribute: 'data-button-text',
}];
if (this.closeButton) {
inputSetterConfig.push({
input: this.closeButton,
valueAttribute: 'data-secondary-button-text',
}, {
input: this.closeButton,
valueAttribute: 'data-secondary-button-text',
inputAttribute: 'data-alternative-text',
});
}
this.droplab.init(this.dropdownTrigger, this.dropdownList, [InputSetter], {
InputSetter: inputSetterConfig
});
}
}
export default CommentTypeToggle;
|