@univerjs/sheets-data-validation 0.1.11 → 0.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/index.js +2 -2
- package/lib/es/index.js +2583 -2939
- package/lib/index.css +1 -1
- package/lib/locale/en-US.json +158 -0
- package/lib/locale/ru-RU.json +158 -0
- package/lib/locale/zh-CN.json +158 -0
- package/lib/types/controllers/dv-formula.controller.d.ts +10 -0
- package/lib/types/controllers/dv-permission.controller.d.ts +10 -0
- package/lib/types/controllers/dv-render.controller.d.ts +7 -2
- package/lib/types/index.d.ts +1 -1
- package/lib/types/locale/zh-CN.d.ts +1 -0
- package/lib/types/plugin.d.ts +3 -1
- package/lib/types/views/item/index.d.ts +1 -0
- package/lib/umd/index.js +2 -2
- package/package.json +26 -24
- package/lib/types/locale/index.d.ts +0 -18
package/lib/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.univer-data-validation-options-button{cursor:pointer;margin-bottom:12px;font-size:var(--font-size-sm);color:rgba(var(--color-black));display:flex;align-items:center}.univer-data-validation-options-button-icon{font-size:8px;margin-left:4px}.univer-data-validation-detail-form-item{width:100%}.univer-data-validation-detail-buttons{margin-top:20px;display:flex;flex-direction:row;justify-content:flex-end}.univer-data-validation-detail-button{margin-left:12px}.univer-data-validation-item-container{border-radius:var(--border-radius-base);background-color:rgba(var(--bg-color-secondary));padding:var(--padding-sm);padding-right:36px;margin-left:-8px;margin-right:-8px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;position:relative;border-radius:6px;width:287px;overflow:hidden}.univer-data-validation-item-container:hover{background-color:rgba(var(--grey-50))}.univer-data-validation-item-title{font-size:var(--font-size-sm);color:rgba(var(--color-black));line-height:22px;font-weight:500;overflow:hidden;text-overflow:ellipsis}.univer-data-validation-item-content{color:rgba(var(--text-color-secondary));font-size:var(--font-size-xs);line-height:18px;overflow:hidden;text-overflow:ellipsis}.univer-data-validation-item-icon{position:absolute;top:19px;right:8px;width:20px;height:20px;display:flex;justify-content:center;align-items:center;border-radius:4px}.univer-data-validation-item-icon:hover{background:rgba(var(--grey-200))}.univer-data-validation-list-buttons{margin-top:20px;display:flex;flex-direction:row;justify-content:flex-end}.univer-data-validation-list-button{margin-left:12px}.univer-dv-list-dropdown{border-radius:var(--border-radius-lg);border:1px solid rgb(var(--border-color));background:rgba(var(--color-white));box-shadow:var(--box-shadow-base);box-sizing:border-box}.univer-dv-list-dropdown-title{padding:var(--padding-sm) 14px;color:rgb(var(--text-color));font-size:12px;line-height:1.5;flex-shrink:0;flex-grow:0}.univer-dv-list-dropdown-list{max-height:200px}.univer-dv-list-dropdown-list-container{padding:0 var(--padding-sm)}.univer-dv-list-dropdown-selected-icon{width:16px;height:16px;font-size:16px;color:rgba(var(--blue-500));flex-shrink:0;flex-grow:0;margin-left:12px}.univer-dv-list-dropdown-item-container{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:var(--padding-xs) 6px;border-radius:6px;margin-top:4px;cursor:pointer}.univer-dv-list-dropdown-item-container:hover{background-color:rgba(var(--grey-50))}.univer-dv-list-dropdown-item{padding:0 4px;font-size:12px;font-style:normal;font-weight:400;line-height:16px;border-radius:8px;height:16px;width:fit-content;flex:0 1 auto;text-overflow:ellipsis;overflow:hidden;color:rgba(var(--color-black));white-space:nowrap}.univer-dv-list-dropdown-split{height:1px;margin:4px 0;background:rgba(var(--grey-200));flex-shrink:0;flex-grow:0}.univer-dv-list-dropdown-edit{padding:0 var(--padding-xs) var(--padding-xs) var(--padding-xs);flex-shrink:0;flex-grow:0}.univer-dv-list-dropdown-edit a{padding:3px 6px;font-size:12px;line-height:1.5;cursor:pointer;border-radius:6px;display:block}.univer-dv-list-dropdown-edit a:hover{background:#f5f5f5}.univer-dv-date-dropdown{background:#fff;border-radius:var(--border-radius-base);box-shadow:var(--box-shadow-lg);padding:var(--padding-sm)}
|
|
1
|
+
.univer-data-validation-options-button{cursor:pointer;margin-bottom:12px;font-size:var(--font-size-sm);color:rgba(var(--color-black));display:flex;align-items:center}.univer-data-validation-options-button-icon{font-size:8px;margin-left:4px}.univer-data-validation-detail-form-item{width:100%}.univer-data-validation-detail-buttons{margin-top:20px;display:flex;flex-direction:row;justify-content:flex-end}.univer-data-validation-detail-button{margin-left:12px}.univer-data-validation-item-container{border-radius:var(--border-radius-base);background-color:rgba(var(--bg-color-secondary));padding:var(--padding-sm);padding-right:36px;margin-left:-8px;margin-right:-8px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;position:relative;border-radius:6px;width:287px;overflow:hidden}.univer-data-validation-item-container:hover{background-color:rgba(var(--grey-50))}.univer-data-validation-item-title{font-size:var(--font-size-sm);color:rgba(var(--color-black));line-height:22px;font-weight:500;overflow:hidden;text-overflow:ellipsis}.univer-data-validation-item-content{color:rgba(var(--text-color-secondary));font-size:var(--font-size-xs);line-height:18px;overflow:hidden;text-overflow:ellipsis}.univer-data-validation-item-icon{position:absolute;top:19px;right:8px;width:20px;height:20px;display:flex;justify-content:center;align-items:center;border-radius:4px}.univer-data-validation-item-icon:hover{background:rgba(var(--grey-200))}.univer-data-validation-formula{width:100%}.univer-data-validation-formula-and{margin-top:-4px;font-size:var(--font-size-sm);color:rgba(var(--grey-400))}.univer-data-validation-formula-list-item{display:flex;padding-bottom:2px;align-items:center}.univer-data-validation-formula-list-item-icon{font-size:16px;cursor:pointer;margin-left:4px;border-radius:4px}.univer-data-validation-formula-list-item-icon:hover{background:rgba(var(--grey-100))}.univer-data-validation-formula-list-item-drag{cursor:move}.univer-data-validation-formula-list-add{color:#274fee;font-size:13px;font-weight:400;cursor:pointer;display:flex;flex-direction:row;align-items:center;border-radius:4px;padding:4px 8px;width:fit-content}.univer-data-validation-formula-list-add svg{margin-right:4px}.univer-data-validation-formula-list-add:hover{background:#274fee0d}.univer-data-validation-formula-color-select{width:92px;margin-left:4px;margin-right:8px}.univer-data-validation-formula-color-select-panel{width:112px;display:flex;flex-direction:row;justify-content:space-between;padding:12px 4px 4px 12px;flex-wrap:wrap;box-sizing:border-box}.univer-data-validation-formula-color-select-panel .univer-data-validation-formula-color-item{margin-bottom:8px;margin-right:8px;box-sizing:border-box;cursor:pointer}.univer-data-validation-formula-color-item{border-radius:3px;border:1px solid rgba(var(--grey-400));width:16px;height:16px;box-sizing:border-box;font-size:16px}.univer-data-validation-list-buttons{margin-top:20px;display:flex;flex-direction:row;justify-content:flex-end}.univer-data-validation-list-button{margin-left:12px}.univer-dv-list-dropdown{border-radius:var(--border-radius-lg);border:1px solid rgb(var(--border-color));background:rgba(var(--color-white));box-shadow:var(--box-shadow-base);box-sizing:border-box}.univer-dv-list-dropdown-title{padding:var(--padding-sm) 14px;color:rgb(var(--text-color));font-size:12px;line-height:1.5;flex-shrink:0;flex-grow:0}.univer-dv-list-dropdown-list{max-height:200px}.univer-dv-list-dropdown-list-container{padding:0 var(--padding-sm)}.univer-dv-list-dropdown-selected-icon{width:16px;height:16px;font-size:16px;color:rgba(var(--blue-500));flex-shrink:0;flex-grow:0;margin-left:12px}.univer-dv-list-dropdown-item-container{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:var(--padding-xs) 6px;border-radius:6px;margin-top:4px;cursor:pointer}.univer-dv-list-dropdown-item-container:hover{background-color:rgba(var(--grey-50))}.univer-dv-list-dropdown-item{padding:0 4px;font-size:12px;font-style:normal;font-weight:400;line-height:16px;border-radius:8px;height:16px;width:fit-content;flex:0 1 auto;text-overflow:ellipsis;overflow:hidden;color:rgba(var(--color-black));white-space:nowrap}.univer-dv-list-dropdown-split{height:1px;margin:4px 0;background:rgba(var(--grey-200));flex-shrink:0;flex-grow:0}.univer-dv-list-dropdown-edit{padding:0 var(--padding-xs) var(--padding-xs) var(--padding-xs);flex-shrink:0;flex-grow:0}.univer-dv-list-dropdown-edit a{padding:3px 6px;font-size:12px;line-height:1.5;cursor:pointer;border-radius:6px;display:block}.univer-dv-list-dropdown-edit a:hover{background:#f5f5f5}.univer-dv-date-dropdown{background:#fff;border-radius:var(--border-radius-base);box-shadow:var(--box-shadow-lg);padding:var(--padding-sm)}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
{
|
|
2
|
+
"dataValidation": {
|
|
3
|
+
"title": "Data validation",
|
|
4
|
+
"validFail": {
|
|
5
|
+
"common": "Please input value or formula",
|
|
6
|
+
"number": "Please input number or formula",
|
|
7
|
+
"formula": "Please input formula",
|
|
8
|
+
"integer": "Please input integer or formula",
|
|
9
|
+
"date": "Please input date or formula",
|
|
10
|
+
"list": "Please input options",
|
|
11
|
+
"listInvalid": "The list source must be a delimited list or a reference to a single row or column",
|
|
12
|
+
"checkboxEqual": "Enter different values for ticked and unticked cell contents.",
|
|
13
|
+
"formulaError": "The reference range contains invisible data, please readjust the range"
|
|
14
|
+
},
|
|
15
|
+
"panel": {
|
|
16
|
+
"title": "Data validation management",
|
|
17
|
+
"addTitle": "Create new data validation",
|
|
18
|
+
"removeAll": "Remove All",
|
|
19
|
+
"add": "Create Data validation",
|
|
20
|
+
"range": "Ranges",
|
|
21
|
+
"type": "Type",
|
|
22
|
+
"options": "Advance options",
|
|
23
|
+
"operator": "Operator",
|
|
24
|
+
"removeRule": "Remove",
|
|
25
|
+
"done": "Done",
|
|
26
|
+
"formulaPlaceholder": "Please input value or formula",
|
|
27
|
+
"formulaAnd": "and",
|
|
28
|
+
"invalid": "Invalid",
|
|
29
|
+
"showWarning": "Show warning",
|
|
30
|
+
"rejectInput": "Reject input",
|
|
31
|
+
"messageInfo": "Helper message",
|
|
32
|
+
"showInfo": "Show help text for a selected cell"
|
|
33
|
+
},
|
|
34
|
+
"operators": {
|
|
35
|
+
"between": "between",
|
|
36
|
+
"greaterThan": "greater than",
|
|
37
|
+
"greaterThanOrEqual": "greater than or equal",
|
|
38
|
+
"lessThan": "less than",
|
|
39
|
+
"lessThanOrEqual": "less than or equal",
|
|
40
|
+
"equal": "equal",
|
|
41
|
+
"notEqual": "not equal",
|
|
42
|
+
"notBetween": "not between"
|
|
43
|
+
},
|
|
44
|
+
"ruleName": {
|
|
45
|
+
"between": "is between {FORMULA1} and {FORMULA2}",
|
|
46
|
+
"greaterThan": "is greater than {FORMULA1}",
|
|
47
|
+
"greaterThanOrEqual": "is greater than or equal to {FORMULA1}",
|
|
48
|
+
"lessThan": "is less than {FORMULA1}",
|
|
49
|
+
"lessThanOrEqual": "is less than or equal to {FORMULA1}",
|
|
50
|
+
"equal": "is equal to {FORMULA1}",
|
|
51
|
+
"notEqual": "is not equal to {FORMULA1}",
|
|
52
|
+
"notBetween": "is not between {FORMULA1} and {FORMULA2}"
|
|
53
|
+
},
|
|
54
|
+
"errorMsg": {
|
|
55
|
+
"between": "Value must be between {FORMULA1} and {FORMULA2}",
|
|
56
|
+
"greaterThan": "Value must be greater than {FORMULA1}",
|
|
57
|
+
"greaterThanOrEqual": "Value must be greater than or equal to {FORMULA1}",
|
|
58
|
+
"lessThan": "Value must be less than {FORMULA1}",
|
|
59
|
+
"lessThanOrEqual": "Value must be less than or equal to {FORMULA1}",
|
|
60
|
+
"equal": "Value must be equal to {FORMULA1}",
|
|
61
|
+
"notEqual": "Value must be not equal to {FORMULA1}",
|
|
62
|
+
"notBetween": "Value must be not between {FORMULA1} and {FORMULA2}"
|
|
63
|
+
},
|
|
64
|
+
"date": {
|
|
65
|
+
"title": "Date",
|
|
66
|
+
"operators": {
|
|
67
|
+
"between": "between",
|
|
68
|
+
"greaterThan": "after",
|
|
69
|
+
"greaterThanOrEqual": "on or after",
|
|
70
|
+
"lessThan": "before",
|
|
71
|
+
"lessThanOrEqual": "on or before",
|
|
72
|
+
"equal": "equal",
|
|
73
|
+
"notEqual": "not equal",
|
|
74
|
+
"notBetween": "not between"
|
|
75
|
+
},
|
|
76
|
+
"ruleName": {
|
|
77
|
+
"between": "is between {FORMULA1} and {FORMULA2}",
|
|
78
|
+
"greaterThan": "is after {FORMULA1}",
|
|
79
|
+
"greaterThanOrEqual": "is on or after {FORMULA1}",
|
|
80
|
+
"lessThan": "is before {FORMULA1}",
|
|
81
|
+
"lessThanOrEqual": "is on or before {FORMULA1}",
|
|
82
|
+
"equal": "is {FORMULA1}",
|
|
83
|
+
"notEqual": "is not {FORMULA1}",
|
|
84
|
+
"notBetween": "is not between {FORMULA1}"
|
|
85
|
+
},
|
|
86
|
+
"errorMsg": {
|
|
87
|
+
"between": "Value must be between {FORMULA1} and {FORMULA2}",
|
|
88
|
+
"greaterThan": "Value must be after {FORMULA1}",
|
|
89
|
+
"greaterThanOrEqual": "Value must be on or after {FORMULA1}",
|
|
90
|
+
"lessThan": "Value must be before {FORMULA1}",
|
|
91
|
+
"lessThanOrEqual": "Value must be on or before {FORMULA1}",
|
|
92
|
+
"equal": "Value must be {FORMULA1}",
|
|
93
|
+
"notEqual": "Value must be not {FORMULA1}",
|
|
94
|
+
"notBetween": "Value must be not between {FORMULA1}"
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
"list": {
|
|
98
|
+
"title": "Dropdown",
|
|
99
|
+
"name": "Value contains one from range",
|
|
100
|
+
"error": "Input must fall within specified range",
|
|
101
|
+
"emptyError": "Please enter a value",
|
|
102
|
+
"add": "Add",
|
|
103
|
+
"dropdown": "Select",
|
|
104
|
+
"options": "Options",
|
|
105
|
+
"customOptions": "Custom",
|
|
106
|
+
"refOptions": "From a range",
|
|
107
|
+
"formulaError": "The list source must be a delimited list of data, or a reference to a single row or column."
|
|
108
|
+
},
|
|
109
|
+
"listMultiple": {
|
|
110
|
+
"title": "Dropdown-Multiple",
|
|
111
|
+
"dropdown": "Multiple select"
|
|
112
|
+
},
|
|
113
|
+
"textLength": {
|
|
114
|
+
"title": "Text length",
|
|
115
|
+
"errorMsg": {
|
|
116
|
+
"between": "Text length must be between {FORMULA1} and {FORMULA2}",
|
|
117
|
+
"greaterThan": "Text length must be after {FORMULA1}",
|
|
118
|
+
"greaterThanOrEqual": "Text length must be on or after {FORMULA1}",
|
|
119
|
+
"lessThan": "Text length must be before {FORMULA1}",
|
|
120
|
+
"lessThanOrEqual": "Text length must be on or before {FORMULA1}",
|
|
121
|
+
"equal": "Text length must be {FORMULA1}",
|
|
122
|
+
"notEqual": "Text length must be not {FORMULA1}",
|
|
123
|
+
"notBetween": "Text length must be not between {FORMULA1}"
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
"decimal": {
|
|
127
|
+
"title": "Number"
|
|
128
|
+
},
|
|
129
|
+
"whole": {
|
|
130
|
+
"title": "Integer"
|
|
131
|
+
},
|
|
132
|
+
"checkbox": {
|
|
133
|
+
"title": "Checkbox",
|
|
134
|
+
"error": "This cell's contents violate its validation rule",
|
|
135
|
+
"tips": "Use custom values within cells",
|
|
136
|
+
"checked": "Selected value",
|
|
137
|
+
"unchecked": "Unselected value"
|
|
138
|
+
},
|
|
139
|
+
"custom": {
|
|
140
|
+
"title": "Custom formula",
|
|
141
|
+
"error": "This cell's contents violate its validation rule",
|
|
142
|
+
"validFail": "Please input a valid formula"
|
|
143
|
+
},
|
|
144
|
+
"alert": {
|
|
145
|
+
"title": "Error",
|
|
146
|
+
"ok": "OK"
|
|
147
|
+
},
|
|
148
|
+
"error": {
|
|
149
|
+
"title": "Invalid:"
|
|
150
|
+
},
|
|
151
|
+
"renderMode": {
|
|
152
|
+
"arrow": "Arrow",
|
|
153
|
+
"chip": "Chip",
|
|
154
|
+
"text": "Plain text",
|
|
155
|
+
"label": "Display style"
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
{
|
|
2
|
+
"dataValidation": {
|
|
3
|
+
"title": "Проверка данных",
|
|
4
|
+
"validFail": {
|
|
5
|
+
"common": "Пожалуйста, введите значение или формулу",
|
|
6
|
+
"number": "Пожалуйста, введите число или формулу",
|
|
7
|
+
"formula": "Пожалуйста, введите формулу",
|
|
8
|
+
"integer": "Пожалуйста, введите целое число или формулу",
|
|
9
|
+
"date": "Пожалуйста, введите дату или формулу",
|
|
10
|
+
"list": "Пожалуйста, введите параметры",
|
|
11
|
+
"listInvalid": "Источник списка должен быть разделенным списком или ссылкой на одну строку или столбец",
|
|
12
|
+
"checkboxEqual": "Для выбранных и не выбранных ячеек введите разные значения",
|
|
13
|
+
"formulaError": "Диапазон ссылок содержит невидимые данные, пожалуйста, пересмотрите диапазон"
|
|
14
|
+
},
|
|
15
|
+
"panel": {
|
|
16
|
+
"title": "Управление проверкой данных",
|
|
17
|
+
"addTitle": "Создать новую проверку данных",
|
|
18
|
+
"removeAll": "Удалить все",
|
|
19
|
+
"add": "Создать проверку данных",
|
|
20
|
+
"range": "Диапазоны",
|
|
21
|
+
"type": "Тип",
|
|
22
|
+
"options": "Дополнительные параметры",
|
|
23
|
+
"operator": "Оператор",
|
|
24
|
+
"removeRule": "Удалить",
|
|
25
|
+
"done": "Готово",
|
|
26
|
+
"formulaPlaceholder": "Пожалуйста, введите значение или формулу",
|
|
27
|
+
"formulaAnd": "и",
|
|
28
|
+
"invalid": "Недопустимо",
|
|
29
|
+
"showWarning": "Показать предупреждение",
|
|
30
|
+
"rejectInput": "Отклонить ввод",
|
|
31
|
+
"messageInfo": "Сообщение помощи",
|
|
32
|
+
"showInfo": "Показать текст помощи для выбранной ячейки"
|
|
33
|
+
},
|
|
34
|
+
"operators": {
|
|
35
|
+
"between": "между",
|
|
36
|
+
"greaterThan": "больше чем",
|
|
37
|
+
"greaterThanOrEqual": "больше или равно",
|
|
38
|
+
"lessThan": "меньше чем",
|
|
39
|
+
"lessThanOrEqual": "меньше или равно",
|
|
40
|
+
"equal": "равно",
|
|
41
|
+
"notEqual": "не равно",
|
|
42
|
+
"notBetween": "не между"
|
|
43
|
+
},
|
|
44
|
+
"ruleName": {
|
|
45
|
+
"between": "между {FORMULA1} и {FORMULA2}",
|
|
46
|
+
"greaterThan": "больше чем {FORMULA1}",
|
|
47
|
+
"greaterThanOrEqual": "больше или равно {FORMULA1}",
|
|
48
|
+
"lessThan": "меньше чем {FORMULA1}",
|
|
49
|
+
"lessThanOrEqual": "меньше или равно {FORMULA1}",
|
|
50
|
+
"equal": "равно {FORMULA1}",
|
|
51
|
+
"notEqual": "не равно {FORMULA1}",
|
|
52
|
+
"notBetween": "не между {FORMULA1} и {FORMULA2}"
|
|
53
|
+
},
|
|
54
|
+
"errorMsg": {
|
|
55
|
+
"between": "Значение должно быть между {FORMULA1} и {FORMULA2}",
|
|
56
|
+
"greaterThan": "Значение должно быть больше {FORMULA1}",
|
|
57
|
+
"greaterThanOrEqual": "Значение должно быть больше или равно {FORMULA1}",
|
|
58
|
+
"lessThan": "Значение должно быть меньше {FORMULA1}",
|
|
59
|
+
"lessThanOrEqual": "Значение должно быть меньше или равно {FORMULA1}",
|
|
60
|
+
"equal": "Значение должно быть равно {FORMULA1}",
|
|
61
|
+
"notEqual": "Значение должно быть не равно {FORMULA1}",
|
|
62
|
+
"notBetween": "Значение должно быть не между {FORMULA1} и {FORMULA2}"
|
|
63
|
+
},
|
|
64
|
+
"date": {
|
|
65
|
+
"title": "Дата",
|
|
66
|
+
"operators": {
|
|
67
|
+
"between": "между",
|
|
68
|
+
"greaterThan": "после",
|
|
69
|
+
"greaterThanOrEqual": "в или после",
|
|
70
|
+
"lessThan": "до",
|
|
71
|
+
"lessThanOrEqual": "в или до",
|
|
72
|
+
"equal": "равно",
|
|
73
|
+
"notEqual": "не равно",
|
|
74
|
+
"notBetween": "не между"
|
|
75
|
+
},
|
|
76
|
+
"ruleName": {
|
|
77
|
+
"between": "между {FORMULA1} и {FORMULA2}",
|
|
78
|
+
"greaterThan": "после {FORMULA1}",
|
|
79
|
+
"greaterThanOrEqual": "в или после {FORMULA1}",
|
|
80
|
+
"lessThan": "до {FORMULA1}",
|
|
81
|
+
"lessThanOrEqual": "в или до {FORMULA1}",
|
|
82
|
+
"equal": "равно {FORMULA1}",
|
|
83
|
+
"notEqual": "не равно {FORMULA1}",
|
|
84
|
+
"notBetween": "не между {FORMULA1}"
|
|
85
|
+
},
|
|
86
|
+
"errorMsg": {
|
|
87
|
+
"between": "Значение должно быть между {FORMULA1} и {FORMULA2}",
|
|
88
|
+
"greaterThan": "Значение должно быть после {FORMULA1}",
|
|
89
|
+
"greaterThanOrEqual": "Значение должно быть в или после {FORMULA1}",
|
|
90
|
+
"lessThan": "Значение должно быть до {FORMULA1}",
|
|
91
|
+
"lessThanOrEqual": "Значение должно быть в или до {FORMULA1}",
|
|
92
|
+
"equal": "Значение должно быть {FORMULA1}",
|
|
93
|
+
"notEqual": "Значение должно быть не {FORMULA1}",
|
|
94
|
+
"notBetween": "Значение должно быть не между {FORMULA1}"
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
"list": {
|
|
98
|
+
"title": "Выпадающий список",
|
|
99
|
+
"name": "Значение содержит одно из диапазона",
|
|
100
|
+
"error": "Ввод должен соответствовать указанному диапазону",
|
|
101
|
+
"emptyError": "Пожалуйста, введите значение",
|
|
102
|
+
"add": "Добавить",
|
|
103
|
+
"dropdown": "Выбрать",
|
|
104
|
+
"options": "Параметры",
|
|
105
|
+
"customOptions": "Пользовательские",
|
|
106
|
+
"refOptions": "Из диапазона",
|
|
107
|
+
"formulaError": "Источник списка должен быть разделенным списком данных или ссылкой на одну строку или столбец."
|
|
108
|
+
},
|
|
109
|
+
"listMultiple": {
|
|
110
|
+
"title": "Выпадающий список - Множественный",
|
|
111
|
+
"dropdown": "Множественный выбор"
|
|
112
|
+
},
|
|
113
|
+
"textLength": {
|
|
114
|
+
"title": "Длина текста",
|
|
115
|
+
"errorMsg": {
|
|
116
|
+
"between": "Длина текста должна быть между {FORMULA1} и {FORMULA2}",
|
|
117
|
+
"greaterThan": "Длина текста должна быть больше {FORMULA1}",
|
|
118
|
+
"greaterThanOrEqual": "Длина текста должна быть больше или равна {FORMULA1}",
|
|
119
|
+
"lessThan": "Длина текста должна быть меньше {FORMULA1}",
|
|
120
|
+
"lessThanOrEqual": "Длина текста должна быть меньше или равна {FORMULA1}",
|
|
121
|
+
"equal": "Длина текста должна быть равна {FORMULA1}",
|
|
122
|
+
"notEqual": "Длина текста должна быть не равна {FORMULA1}",
|
|
123
|
+
"notBetween": "Длина текста должна быть не между {FORMULA1}"
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
"decimal": {
|
|
127
|
+
"title": "Число"
|
|
128
|
+
},
|
|
129
|
+
"whole": {
|
|
130
|
+
"title": "Целое число"
|
|
131
|
+
},
|
|
132
|
+
"checkbox": {
|
|
133
|
+
"title": "Флажок",
|
|
134
|
+
"error": "Содержимое этой ячейки нарушает правило проверки",
|
|
135
|
+
"tips": "Используйте пользовательские значения в ячейках",
|
|
136
|
+
"checked": "Выбранное значение",
|
|
137
|
+
"unchecked": "Не выбранное значение"
|
|
138
|
+
},
|
|
139
|
+
"custom": {
|
|
140
|
+
"title": "Пользовательская формула",
|
|
141
|
+
"error": "Содержимое этой ячейки нарушает правило проверки",
|
|
142
|
+
"validFail": "Пожалуйста, введите допустимую формулу"
|
|
143
|
+
},
|
|
144
|
+
"alert": {
|
|
145
|
+
"title": "Ошибка",
|
|
146
|
+
"ok": "ОК"
|
|
147
|
+
},
|
|
148
|
+
"error": {
|
|
149
|
+
"title": "Недопустимо:"
|
|
150
|
+
},
|
|
151
|
+
"renderMode": {
|
|
152
|
+
"arrow": "Стрелка",
|
|
153
|
+
"chip": "Чип",
|
|
154
|
+
"text": "Простой текст",
|
|
155
|
+
"label": "Стиль отображения"
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
{
|
|
2
|
+
"dataValidation": {
|
|
3
|
+
"title": "数据验证",
|
|
4
|
+
"validFail": {
|
|
5
|
+
"common": "请输入值或公式",
|
|
6
|
+
"number": "请输入合法的数字或公式",
|
|
7
|
+
"formula": "请输入合法的公式或公式",
|
|
8
|
+
"integer": "请输入合法的整数或公式",
|
|
9
|
+
"date": "请输入合法的日期或公式",
|
|
10
|
+
"list": "请输入至少一个合法选项",
|
|
11
|
+
"listInvalid": "列表源必须是分隔列表或对单行或列的引用。",
|
|
12
|
+
"checkboxEqual": "为勾选和未勾选的单元格内容输入不同的值。",
|
|
13
|
+
"formulaError": "引用范围内包含不可见的数据,请重新调整范围"
|
|
14
|
+
},
|
|
15
|
+
"panel": {
|
|
16
|
+
"title": "管理数据验证",
|
|
17
|
+
"addTitle": "新建数据验证",
|
|
18
|
+
"removeAll": "全部删除",
|
|
19
|
+
"add": "新建规则",
|
|
20
|
+
"range": "应用范围",
|
|
21
|
+
"type": "条件类型",
|
|
22
|
+
"options": "高级设置",
|
|
23
|
+
"operator": "数据",
|
|
24
|
+
"removeRule": "删除规则",
|
|
25
|
+
"done": "确认",
|
|
26
|
+
"formulaPlaceholder": "请输入值或公式",
|
|
27
|
+
"formulaAnd": "与",
|
|
28
|
+
"invalid": "数据无效时",
|
|
29
|
+
"showWarning": "显示警告",
|
|
30
|
+
"rejectInput": "拒绝输入",
|
|
31
|
+
"messageInfo": "文字提示",
|
|
32
|
+
"showInfo": "显示所选单元格的提示文字"
|
|
33
|
+
},
|
|
34
|
+
"operators": {
|
|
35
|
+
"between": "介于",
|
|
36
|
+
"greaterThan": "大于",
|
|
37
|
+
"greaterThanOrEqual": "大于或等于",
|
|
38
|
+
"lessThan": "小于",
|
|
39
|
+
"lessThanOrEqual": "小于或等于",
|
|
40
|
+
"equal": "等于",
|
|
41
|
+
"notEqual": "不等于",
|
|
42
|
+
"notBetween": "未介于"
|
|
43
|
+
},
|
|
44
|
+
"ruleName": {
|
|
45
|
+
"between": "介于 {FORMULA1} 和 {FORMULA2} 之间",
|
|
46
|
+
"greaterThan": "大于 {FORMULA1}",
|
|
47
|
+
"greaterThanOrEqual": "大于或等于 {FORMULA1}",
|
|
48
|
+
"lessThan": "小于 {FORMULA1}",
|
|
49
|
+
"lessThanOrEqual": "小于或等于 {FORMULA1}",
|
|
50
|
+
"equal": "等于 {FORMULA1}",
|
|
51
|
+
"notEqual": "不等于 {FORMULA1}",
|
|
52
|
+
"notBetween": "在 {FORMULA1} 和 {FORMULA2} 范围之外"
|
|
53
|
+
},
|
|
54
|
+
"errorMsg": {
|
|
55
|
+
"between": "值必须介于 {FORMULA1} 和 {FORMULA2} 之间",
|
|
56
|
+
"greaterThan": "值必须大于 {FORMULA1}",
|
|
57
|
+
"greaterThanOrEqual": "值必须大于或等于 {FORMULA1}",
|
|
58
|
+
"lessThan": "值必须小于 {FORMULA1}",
|
|
59
|
+
"lessThanOrEqual": "值必须小于或等于 {FORMULA1}",
|
|
60
|
+
"equal": "值必须等于 {FORMULA1}",
|
|
61
|
+
"notEqual": "值必须不等于 {FORMULA1}",
|
|
62
|
+
"notBetween": "值必须在 {FORMULA1} 和 {FORMULA2} 范围之外"
|
|
63
|
+
},
|
|
64
|
+
"date": {
|
|
65
|
+
"title": "日期",
|
|
66
|
+
"operators": {
|
|
67
|
+
"between": "介于",
|
|
68
|
+
"greaterThan": "晚于",
|
|
69
|
+
"greaterThanOrEqual": "晚于或等于",
|
|
70
|
+
"lessThan": "早于",
|
|
71
|
+
"lessThanOrEqual": "早于或等于",
|
|
72
|
+
"equal": "等于",
|
|
73
|
+
"notEqual": "不等于",
|
|
74
|
+
"notBetween": "未介于"
|
|
75
|
+
},
|
|
76
|
+
"ruleName": {
|
|
77
|
+
"between": "介于 {FORMULA1} 和 {FORMULA2} 之间",
|
|
78
|
+
"greaterThan": "晚于 {FORMULA1}",
|
|
79
|
+
"greaterThanOrEqual": "晚于或等于 {FORMULA1}",
|
|
80
|
+
"lessThan": "早于 {FORMULA1}",
|
|
81
|
+
"lessThanOrEqual": "早于或等于 {FORMULA1}",
|
|
82
|
+
"equal": "等于 {FORMULA1}",
|
|
83
|
+
"notEqual": "不等于 {FORMULA1}",
|
|
84
|
+
"notBetween": "在 {FORMULA1} 和 {FORMULA2} 范围之外"
|
|
85
|
+
},
|
|
86
|
+
"errorMsg": {
|
|
87
|
+
"between": "日期必须介于 {FORMULA1} 和 {FORMULA2} 之间",
|
|
88
|
+
"greaterThan": "日期必须晚于 {FORMULA1}",
|
|
89
|
+
"greaterThanOrEqual": "日期必须晚于或等于 {FORMULA1}",
|
|
90
|
+
"lessThan": "日期必须早于 {FORMULA1}",
|
|
91
|
+
"lessThanOrEqual": "早于或等于 {FORMULA1}",
|
|
92
|
+
"equal": "日期必须等于 {FORMULA1}",
|
|
93
|
+
"notEqual": "日期必须不等于 {FORMULA1}",
|
|
94
|
+
"notBetween": "日期必须在 {FORMULA1} 和 {FORMULA2} 范围之外"
|
|
95
|
+
}
|
|
96
|
+
},
|
|
97
|
+
"list": {
|
|
98
|
+
"title": "下拉菜单",
|
|
99
|
+
"name": "值必须是列表中的值",
|
|
100
|
+
"error": "输入必须在指定的范围内",
|
|
101
|
+
"emptyError": "请输入一个值",
|
|
102
|
+
"add": "添加选项",
|
|
103
|
+
"dropdown": "单选",
|
|
104
|
+
"options": "选项来源",
|
|
105
|
+
"customOptions": "自定义",
|
|
106
|
+
"refOptions": "引用数据",
|
|
107
|
+
"formulaError": "列表源必须是划定分界后的数据列表,或是对单一行或一列的引用。"
|
|
108
|
+
},
|
|
109
|
+
"listMultiple": {
|
|
110
|
+
"title": "下拉菜单-多选",
|
|
111
|
+
"dropdown": "多选"
|
|
112
|
+
},
|
|
113
|
+
"textLength": {
|
|
114
|
+
"title": "文本长度",
|
|
115
|
+
"errorMsg": {
|
|
116
|
+
"between": "文本长度必须介于 {FORMULA1} 和 {FORMULA2} 之间",
|
|
117
|
+
"greaterThan": "文本长度必须大于 {FORMULA1}",
|
|
118
|
+
"greaterThanOrEqual": "文本长度必须大于或等于 {FORMULA1}",
|
|
119
|
+
"lessThan": "文本长度必须小于 {FORMULA1}",
|
|
120
|
+
"lessThanOrEqual": "文本长度必须小于或等于 {FORMULA1}",
|
|
121
|
+
"equal": "文本长度必须等于 {FORMULA1}",
|
|
122
|
+
"notEqual": "文本长度必须不等于 {FORMULA1}",
|
|
123
|
+
"notBetween": "文本长度必须在 {FORMULA1} 和 {FORMULA2} 范围之外"
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
"decimal": {
|
|
127
|
+
"title": "数字"
|
|
128
|
+
},
|
|
129
|
+
"whole": {
|
|
130
|
+
"title": "整数"
|
|
131
|
+
},
|
|
132
|
+
"checkbox": {
|
|
133
|
+
"title": "复选框",
|
|
134
|
+
"error": "此单元格的内容违反了验证规则",
|
|
135
|
+
"tips": "在单元格内使用自定义值",
|
|
136
|
+
"checked": "选中值",
|
|
137
|
+
"unchecked": "未选中值"
|
|
138
|
+
},
|
|
139
|
+
"custom": {
|
|
140
|
+
"title": "自定义公式",
|
|
141
|
+
"error": "此单元格的内容违反了验证规则",
|
|
142
|
+
"validFail": "请输入合法的公式"
|
|
143
|
+
},
|
|
144
|
+
"alert": {
|
|
145
|
+
"title": "提示",
|
|
146
|
+
"ok": "确定"
|
|
147
|
+
},
|
|
148
|
+
"error": {
|
|
149
|
+
"title": "无效:"
|
|
150
|
+
},
|
|
151
|
+
"renderMode": {
|
|
152
|
+
"arrow": "箭头",
|
|
153
|
+
"chip": "条状标签",
|
|
154
|
+
"text": "纯文本",
|
|
155
|
+
"label": "显示样式"
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Disposable, IPermissionService, IUniverInstanceService } from '@univerjs/core';
|
|
2
|
+
import { LexerTreeBuilder } from '@univerjs/engine-formula';
|
|
3
|
+
|
|
4
|
+
export declare class DataValidationFormulaController extends Disposable {
|
|
5
|
+
private readonly _univerInstanceService;
|
|
6
|
+
private readonly _permissionService;
|
|
7
|
+
private readonly _lexerTreeBuilder;
|
|
8
|
+
constructor(_univerInstanceService: IUniverInstanceService, _permissionService: IPermissionService, _lexerTreeBuilder: LexerTreeBuilder);
|
|
9
|
+
getFormulaRefCheck(formulaString: string): boolean;
|
|
10
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Disposable, ICommandService, LocaleService } from '@univerjs/core';
|
|
2
|
+
import { SheetPermissionInterceptorBaseController } from '@univerjs/sheets-ui';
|
|
3
|
+
|
|
4
|
+
export declare class DataValidationPermissionController extends Disposable {
|
|
5
|
+
private _localeService;
|
|
6
|
+
private readonly _commandService;
|
|
7
|
+
private readonly _sheetPermissionInterceptorBaseController;
|
|
8
|
+
constructor(_localeService: LocaleService, _commandService: ICommandService, _sheetPermissionInterceptorBaseController: SheetPermissionInterceptorBaseController);
|
|
9
|
+
private _commandExecutedListener;
|
|
10
|
+
}
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
import { ICommandService, IUniverInstanceService, RxDisposable } from '@univerjs/core';
|
|
2
2
|
import { DataValidationModel, DataValidatorRegistryService } from '@univerjs/data-validation';
|
|
3
|
-
import { ComponentManager, IMenuService } from '@univerjs/ui';
|
|
3
|
+
import { MenuConfig, ComponentManager, IMenuService } from '@univerjs/ui';
|
|
4
4
|
import { Injector } from '@wendellhu/redi';
|
|
5
5
|
import { AutoHeightController, IEditorBridgeService, SheetSkeletonManagerService } from '@univerjs/sheets-ui';
|
|
6
6
|
import { IRenderManagerService } from '@univerjs/engine-render';
|
|
7
7
|
import { SheetInterceptorService } from '@univerjs/sheets';
|
|
8
8
|
import { DataValidationDropdownManagerService } from '../services/dropdown-manager.service';
|
|
9
9
|
|
|
10
|
+
export interface IUniverSheetsDataValidation {
|
|
11
|
+
menu?: MenuConfig;
|
|
12
|
+
}
|
|
13
|
+
export declare const DefaultSheetsDataValidation: {};
|
|
10
14
|
/**
|
|
11
15
|
* @todo RenderUnit
|
|
12
16
|
*/
|
|
13
17
|
export declare class DataValidationRenderController extends RxDisposable {
|
|
18
|
+
private readonly _config;
|
|
14
19
|
private _componentManager;
|
|
15
20
|
private _menuService;
|
|
16
21
|
private readonly _dataValidationModel;
|
|
@@ -24,7 +29,7 @@ export declare class DataValidationRenderController extends RxDisposable {
|
|
|
24
29
|
private readonly _injector;
|
|
25
30
|
private readonly _autoHeightController;
|
|
26
31
|
private readonly _commandService;
|
|
27
|
-
constructor(_componentManager: ComponentManager, _menuService: IMenuService, _dataValidationModel: DataValidationModel, _sheetSkeletonManagerService: SheetSkeletonManagerService, _renderManagerService: IRenderManagerService, _univerInstanceService: IUniverInstanceService, _dataValidatorRegistryService: DataValidatorRegistryService, _editorBridgeService: IEditorBridgeService, _dropdownManagerService: DataValidationDropdownManagerService, _sheetInterceptorService: SheetInterceptorService, _injector: Injector, _autoHeightController: AutoHeightController, _commandService: ICommandService);
|
|
32
|
+
constructor(_config: Partial<IUniverSheetsDataValidation>, _componentManager: ComponentManager, _menuService: IMenuService, _dataValidationModel: DataValidationModel, _sheetSkeletonManagerService: SheetSkeletonManagerService, _renderManagerService: IRenderManagerService, _univerInstanceService: IUniverInstanceService, _dataValidatorRegistryService: DataValidatorRegistryService, _editorBridgeService: IEditorBridgeService, _dropdownManagerService: DataValidationDropdownManagerService, _sheetInterceptorService: SheetInterceptorService, _injector: Injector, _autoHeightController: AutoHeightController, _commandService: ICommandService);
|
|
28
33
|
private _init;
|
|
29
34
|
private _initMenu;
|
|
30
35
|
private _initComponents;
|
package/lib/types/index.d.ts
CHANGED
|
@@ -30,4 +30,4 @@ export { DataValidationAutoFillController } from './controllers/dv-auto-fill.con
|
|
|
30
30
|
export { DataValidationCopyPasteController } from './controllers/dv-copy-paste.controller';
|
|
31
31
|
export { HideDataValidationDropdown, ShowDataValidationDropdown } from './commands/operations/data-validation.operation';
|
|
32
32
|
export { DataValidationRejectInputController } from './controllers/dv-reject-input.controller';
|
|
33
|
-
export {
|
|
33
|
+
export { DataValidationFormulaController } from './controllers/dv-formula.controller';
|
package/lib/types/plugin.d.ts
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import { ICommandService, LocaleService, Plugin, UniverInstanceType } from '@univerjs/core';
|
|
2
2
|
import { Injector } from '@wendellhu/redi';
|
|
3
|
+
import { IUniverSheetsDataValidation } from './controllers/dv-render.controller';
|
|
3
4
|
|
|
4
5
|
export declare class UniverSheetsDataValidationPlugin extends Plugin {
|
|
6
|
+
private _config;
|
|
5
7
|
protected _injector: Injector;
|
|
6
8
|
private readonly _commandService;
|
|
7
9
|
private readonly _localeService;
|
|
8
10
|
static pluginName: string;
|
|
9
11
|
static type: UniverInstanceType;
|
|
10
|
-
constructor(_config:
|
|
12
|
+
constructor(_config: Partial<IUniverSheetsDataValidation>, _injector: Injector, _commandService: ICommandService, _localeService: LocaleService);
|
|
11
13
|
onStarting(injector: Injector): void;
|
|
12
14
|
}
|