Skip to content

Commit 95180ba

Browse files
committed
add extensions null check and cleanup
1 parent 30b8d94 commit 95180ba

File tree

1 file changed

+11
-8
lines changed

1 file changed

+11
-8
lines changed

src/packages/core/components/input-upload-field/input-upload-field.element.ts

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import type { UmbTemporaryFileModel } from '../../temporary-file/temporary-file-manager.class.js';
22
import { UmbTemporaryFileManager } from '../../temporary-file/temporary-file-manager.class.js';
3-
import { UMB_PROPERTY_DATASET_CONTEXT } from '../../property/property-dataset/property-dataset-context.token.js';
43
import { UmbId } from '@umbraco-cms/backoffice/id';
54
import {
65
css,
@@ -49,28 +48,27 @@ export class UmbInputUploadFieldElement extends UUIFormControlMixin(UmbLitElemen
4948
this.#setExtensions(value);
5049
}
5150
get fileExtensions(): Array<string> | undefined {
52-
return this.extensions;
51+
return this._extensions;
5352
}
5453

5554
/**
5655
* @description Allows the user to upload multiple files.
57-
* @type {Boolean}
5856
* @default false
5957
* @attr
6058
*/
6159
@property({ type: Boolean })
62-
multiple = false;
60+
public multiple = false;
6361

6462
@state()
65-
_files: Array<{
63+
private _files: Array<{
6664
path: string;
6765
unique: string;
6866
queueItem?: UmbTemporaryFileModel;
6967
file?: File;
7068
}> = [];
7169

7270
@state()
73-
extensions?: string[];
71+
private _extensions?: string[];
7472

7573
@query('#dropzone')
7674
private _dropzone?: UUIFileDropzoneElement;
@@ -124,8 +122,13 @@ export class UmbInputUploadFieldElement extends UUIFormControlMixin(UmbLitElemen
124122
}
125123

126124
#setExtensions(value: Array<string>) {
125+
if (!value) {
126+
this._extensions = undefined;
127+
return;
128+
}
129+
127130
// TODO: The dropzone uui component does not support file extensions without a dot. Remove this when it does.
128-
this.extensions = value?.map((extension) => {
131+
this._extensions = value?.map((extension) => {
129132
return `.${extension}`;
130133
});
131134
}
@@ -198,7 +201,7 @@ export class UmbInputUploadFieldElement extends UUIFormControlMixin(UmbLitElemen
198201
id="dropzone"
199202
label="dropzone"
200203
@change="${this.#onUpload}"
201-
accept="${ifDefined(this.extensions?.join(', '))}"
204+
accept="${ifDefined(this._extensions?.join(', '))}"
202205
?multiple="${this.multiple}">
203206
<uui-button label=${this.localize.term('media_clickToUpload')} @click="${this.#handleBrowse}"></uui-button>
204207
</uui-file-dropzone>

0 commit comments

Comments
 (0)