import BaseStyle from 'primevue/base/style'; const css = ` @layer primevue { .p-fileupload-content { position: relative; } .p-fileupload-content .p-progressbar { width: 100%; position: absolute; top: 0; left: 0; } .p-button.p-fileupload-choose { position: relative; overflow: hidden; } .p-fileupload-buttonbar { display: flex; flex-wrap: wrap; } .p-fileupload > input[type='file'], .p-fileupload-basic input[type='file'] { display: none; } .p-fluid .p-fileupload .p-button { width: auto; } .p-fileupload-file { display: flex; flex-wrap: wrap; align-items: center; } .p-fileupload-file-thumbnail { flex-shrink: 0; } .p-fileupload-file-actions { margin-left: auto; } } `; const classes = { root: ({ props }) => [`p-fileupload p-fileupload-${props.mode} p-component`], buttonbar: 'p-fileupload-buttonbar', chooseButton: ({ instance, props }) => [ 'p-button p-component p-fileupload-choose', { 'p-fileupload-choose-selected': props.mode === 'basic' && instance.hasFiles, 'p-disabled': props.disabled, 'p-focus': instance.focused } ], chooseIcon: 'p-button-icon p-button-icon-left', chooseButtonLabel: 'p-button-label', content: 'p-fileupload-content', empty: 'p-fileupload-empty', uploadIcon: 'p-button-icon p-button-icon-left', label: 'p-button-label', file: 'p-fileupload-file', thumbnail: 'p-fileupload-file-thumbnail', details: 'p-fileupload-file-details', fileName: 'p-fileupload-file-name', fileSize: 'p-fileupload-file-size', badge: 'p-fileupload-file-badge', actions: 'p-fileupload-file-actions', removeButton: 'p-fileupload-file-remove' }; export default BaseStyle.extend({ name: 'fileupload', css, classes });