Skip to content

Commit 3c10423

Browse files
fix(file): display error message for multiple files and code robustness
ref: MANAGER-15044 Signed-off-by: Jacques Larique <jacques.larique.ext@ovhcloud.com>
1 parent 843bf83 commit 3c10423

File tree

3 files changed

+10
-5
lines changed

3 files changed

+10
-5
lines changed

packages/components/file/src/js/file.controller.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -39,11 +39,11 @@ export default class {
3939
const hasTypeError = !acceptedTypes.some((acceptedType) => {
4040
const [type, extension] = acceptedType.split('/');
4141
if (extension) {
42-
const isTypeValid = type === '*' || type.toLowerCase() === fileType.toLowerCase();
43-
const isExtensionValid = extension === '*' || extension.toLowerCase() === fileExtension.toLowerCase();
42+
const isTypeValid = type === '*' || type.toLowerCase() === fileType?.toLowerCase();
43+
const isExtensionValid = extension === '*' || extension.toLowerCase() === fileExtension?.toLowerCase();
4444
return isTypeValid && isExtensionValid;
4545
}
46-
return type === '*' || type.replace('.', '').toLowerCase() === fileExtension.toLowerCase();
46+
return type === '*' || type.replace('.', '').toLowerCase() === fileExtension?.toLowerCase();
4747
});
4848
if (hasTypeError) {
4949
file.errors.type = true;

packages/components/file/src/js/file.html

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -142,11 +142,15 @@
142142
<span class="oui-file-ellipsis__size" ng-bind="file.infos.size"></span>
143143
</span>
144144
<span class="oui-file-attachments__error"
145-
ng-if="file.errors && file.errors.maxsize"
145+
ng-if="file.errors.maxsizeError"
146146
ng-bind="::$ctrl.translations.maxsizeError">
147147
</span>
148148
<span class="oui-file-attachments__error"
149-
ng-if="file.errors && file.errors.notSingle"
149+
ng-if="file.errors.type"
150+
ng-bind="::$ctrl.translations.typeError">
151+
</span>
152+
<span class="oui-file-attachments__error"
153+
ng-if="file.errors.notSingle"
150154
ng-bind="::$ctrl.translations.notSingleError">
151155
</span>
152156
</span>

packages/components/file/src/js/file.provider.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ export default class {
1414
maxsizeError: 'This file exceeds the size limit',
1515
notSingleError: 'You can only add one file',
1616
removeFile: 'Remove file from selector',
17+
typeError: 'This file extension is not supported',
1718
};
1819

1920
this.units = [

0 commit comments

Comments
 (0)