@mikezimm/fps-library-v2
Version:
Library of reusable typescript/javascript functions, interfaces and constants
38 lines • 2.11 kB
JavaScript
import * as React from 'react';
import { getMIMEObjectPropFromType } from '@mikezimm/fps-core-v7/lib/components/atoms/Inputs/FileDropBox/fps-FileDropTypes';
import { getSizeLabel } from '@mikezimm/fps-core-v7/lib/logic/Math/labels';
export function createFileElementList(files, fileMaxSize, fileClick, ordered, returnMessage = true) {
const { handleClickFile = null, iconChar = null, iconStyles = {} } = fileClick || {};
if (!files || files.length === 0)
return returnMessage ? React.createElement("div", null, "No files selected") : undefined;
const rows = files.map((file, index) => (React.createElement("li", { key: index },
!handleClickFile ? undefined :
React.createElement("button", { onClick: !handleClickFile ? null : () => { handleClickFile(file, index); }, disabled: false, style: { ...{
// position: 'absolute',
top: '5px',
right: '5px',
background: 'rgba(255, 255, 255, 0.7)',
border: 'none',
borderRadius: '20%',
width: '1.5em',
height: '1.5em',
fontSize: '14px',
color: '#333',
cursor: 'pointer',
margin: '.25em',
zIndex: 10,
padding: '0px', // Added this when using trash icon
}, ...iconStyles }, title: `CLEAR ${file.name}` }, iconChar),
file.name,
" - [\u00A0",
getMIMEObjectPropFromType(file.type, 'name', 'fileType'),
"\u00A0",
file.size > fileMaxSize ? React.createElement("span", { style: { color: 'red', fontWeight: 600 } },
"\u00A0",
getSizeLabel(file.size),
"\u00A0") : '',
"]")));
const ele = ordered === true ? React.createElement("ol", null, rows) : React.createElement("ul", null, rows);
return ele;
}
//# sourceMappingURL=fps-FileDropBoxElements.js.map