primevue-mirror/components/lib/fileupload/style/FileUploadStyle.js

83 lines
1.9 KiB
JavaScript

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
});