PluginProbe ʕ •ᴥ•ʔ
Presto Player / 4.3.1
Presto Player v4.3.1
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 2 weeks ago MediaPopup.scss 2 weeks ago MediaPopupTemplate.js 2 weeks ago MediaPopupTemplate.scss 2 weeks ago chunk-upload.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