Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(sheets): bugfix for freeze & hover-manager-service & data-validation #2233

Merged
merged 12 commits into from
May 15, 2024
Prev Previous commit
Next Next commit
feat: #2162 checkbox ticked and unticked value
  • Loading branch information
weird94 committed May 13, 2024
commit 0b14ed23da8dad0cf4ed1d4295906ecf56b82c60
1 change: 1 addition & 0 deletions packages/sheets-data-validation/src/locale/en-US.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@ const locale: typeof zhCN = {
date: 'Please input date or formula',
list: 'Please input options',
listInvalid: 'The list source must be a delimited list or a reference to a single row or column',
checkboxEqual: 'Enter different values for ticked and unticked cell contents.',
},
panel: {
title: 'Data validation management',
Expand Down
1 change: 1 addition & 0 deletions packages/sheets-data-validation/src/locale/zh-CN.ts
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ const locale = {
date: '请输入合法的日期或公式',
list: '请输入至少一个合法选项',
listInvalid: '列表源必须是分隔列表或对单行或列的引用。',
checkboxEqual: '为勾选和未勾选的单元格内容输入不同的值。',
},
panel: {
title: '管理数据验证',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -46,14 +46,23 @@ export class CheckboxValidator extends BaseDataValidator {
}

override validatorFormula(rule: IDataValidationRuleBase): IFormulaValidResult {
const { formula1 = CHECKBOX_FORMULA_1, formula2 = CHECKBOX_FORMULA_2 } = rule;
const { formula1, formula2 } = rule;
const formula1Success = !Tools.isBlank(formula1);
const formula2Success = !Tools.isBlank(formula2);
const isEqual = formula1 === formula2;

return {
success: formula1Success && formula2Success,
formula1: !formula1Success ? this.localeService.t('dataValidation.validFail.common') : '',
formula2: !formula2Success ? this.localeService.t('dataValidation.validFail.common') : '',
success: (formula1Success && formula2Success && !isEqual) || (!formula1Success && !formula2Success),
formula1: !formula1Success ?
this.localeService.t('dataValidation.validFail.common')
: isEqual ?
this.localeService.t('dataValidation.validFail.checkboxEqual')
: '',
formula2: !formula2Success ?
this.localeService.t('dataValidation.validFail.common')
: isEqual ?
this.localeService.t('dataValidation.validFail.checkboxEqual')
: '',
};
}

Expand Down
Loading