PluginProbe ʕ •ᴥ•ʔ
Presto Player / 2.2.2
Presto Player v2.2.2
4.3.1 4.3.0 4.2.4 4.2.3 4.2.2 4.2.0 4.2.1 trunk 1.10.0 1.10.1 1.10.2 1.11.0 1.12.0 1.13.0 1.14.0 1.14.1 1.5.10 1.5.11 1.5.12 1.5.13 1.5.14 1.5.15 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.6.10 1.6.11 1.6.12 1.6.13 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.6.9 1.7.0 1.7.1 1.7.2 1.8.0 1.8.1 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.9.0 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.14 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.0.0 2.0.1 2.0.10 2.0.11 2.0.12 2.0.13 2.0.14 2.0.15 2.0.16 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1.0 2.2.0 2.2.1 2.2.2 2.2.3 2.2.3-beta1 2.3.0 2.3.1 2.3.2 2.3.3 3.0.0 3.0.0-beta1 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.1.0 3.1.1 3.1.2 3.1.3 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4
presto-player / src / admin / blocks / shared / media / MediaItem.js
presto-player / src / admin / blocks / shared / media Last commit date
MediaFolder.js 5 years ago MediaItem.js 5 years ago MediaPopup.js 3 years ago MediaPopupTemplate.js 3 years ago chunk-upload.js 5 years ago styles.js 5 years ago
MediaItem.js
55 lines
1 export default ({ item, onClick, className }) => {
2 function bytesToSize(bytes) {
3 var sizes = ["Bytes", "KB", "MB", "GB", "TB"];
4 if (bytes == 0) return "0 Byte";
5 var i = parseInt(Math.floor(Math.log(bytes) / Math.log(1024)));
6 return Math.round(bytes / Math.pow(1024, i), 2) + " " + sizes[i];
7 }
8
9 function formatDate(date) {
10 return new Date(date).toLocaleString();
11 }
12
13 const isEncoding = () => {
14 return !!item?.encodeProgress && item.encodeProgress !== 100;
15 };
16
17 return (
18 <div
19 className={`presto-player__media-list-item ${className}`}
20 onClick={onClick}
21 >
22 <div className="presto-player__media-list-item-icon">
23 <svg
24 xmlns="http://www.w3.org/2000/svg"
25 width="24"
26 height="24"
27 viewBox="0 0 24 24"
28 fill="none"
29 stroke="currentColor"
30 strokeWidth="2"
31 strokeLinecap="round"
32 strokeLinecap="round"
33 >
34 <polygon points="23 7 16 12 23 17 23 7"></polygon>
35 <rect x="1" y="5" width="15" height="14" rx="2" ry="2"></rect>
36 </svg>
37 </div>
38 <div className="presto-player__media-list-item-title">{item?.title}</div>
39 {isEncoding() && (
40 <div className="presto-player__media-list-item-size">Encoding...</div>
41 )}
42 {!isEncoding() && (
43 <div className="presto-player__media-list-item-size">
44 {bytesToSize(item?.size)}
45 </div>
46 )}
47 {!isEncoding() && (
48 <div className="presto-player__media-list-item-modified">
49 {formatDate(item.updated_at)}
50 </div>
51 )}
52 </div>
53 );
54 };
55