xref: /aosp_15_r20/external/cldr/tools/cldr-code/src/main/java/org/unicode/cldr/util/NotificationCategory.java (revision 912701f9769bb47905792267661f0baf2b85bed5)
1 package org.unicode.cldr.util;
2 
3 public enum NotificationCategory {
4     /** There is a console-check error */
5     error('E', "Error", "The Survey Tool detected an error in the winning value."),
6 
7     /** Given the users' coverage, some items are missing */
8     missingCoverage(
9             'M',
10             "Missing",
11             "Your current coverage level requires the item to be present. "
12                     + "(During the vetting phase, this is informational: you can’t add new values.)"),
13 
14     /** Provisional: there are not enough votes to be approved */
15     notApproved(
16             'P',
17             "Provisional",
18             "There are not enough votes for this item to be approved (and used)."),
19 
20     /** There is a dispute. */
21     hasDispute(
22             'D',
23             "Disputed",
24             "Different organizations are choosing different values. Please review to approve or reach consensus."),
25 
26     /** My choice is not the winning item */
27     weLost(
28             'L',
29             "Losing",
30             "The value that your organization chose (overall) is either not the winning value, or doesn’t have enough votes to be approved. "
31                     + "This might be due to a dispute between members of your organization."),
32 
33     /** There is a console-check warning */
34     warning('W', "Warning", "The Survey Tool detected a warning about the winning value."),
35 
36     /** The English value for the path changed AFTER the current value for the locale. */
37     englishChanged(
38             'U',
39             "English Changed",
40             "The English value has changed in CLDR, but the corresponding value for your language has not. "
41                     + "Check if any changes are needed in your language."),
42 
43     /** The value changed from the baseline */
44     changedOldValue(
45             'C',
46             "Changed",
47             "The winning value was altered from the baseline value. (Informational)"),
48 
49     /**
50      * The inherited (bailey) value changed from the baseline, given that the winning value is
51      * inherited
52      */
53     inheritedChanged(
54             'I',
55             "Inherited Changed",
56             "The winning inherited value was altered from its baseline value. (Informational)"),
57 
58     /** You have abstained, or not yet voted for any value */
59     abstained('A', "Abstained", "You have abstained, or not yet voted for any value."),
60     ;
61 
62     public final char abbreviation;
63     public final String buttonLabel;
64     public final String jsonLabel;
65 
66     /**
67      * This human-readable description is used for Priority Items Summary, which still creates html
68      * on the back end. For Dashboard, identical descriptions are on the front end. When Priority
69      * Items Summary is modernized to be more like Dashboard, these descriptions on the back end
70      * should become unnecessary.
71      */
72     public final String description;
73 
NotificationCategory(char abbreviation, String label, String description)74     NotificationCategory(char abbreviation, String label, String description) {
75         this.abbreviation = abbreviation;
76         this.jsonLabel = label.replace(' ', '_');
77         this.buttonLabel = TransliteratorUtilities.toHTML.transform(label);
78         this.description = TransliteratorUtilities.toHTML.transform(description);
79     }
80 }
81