PluginProbe ʕ •ᴥ•ʔ
Presto Player / trunk
Presto Player vtrunk
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 / chapters / components / Chapter.js
presto-player / src / admin / blocks / shared / chapters / components Last commit date
Chapter.js 2 years ago
Chapter.js
72 lines
1 import { __ } from "@wordpress/i18n";
2 import { Flex, FlexItem, FlexBlock, TextControl, Button } from "@wordpress/components";
3 import { useState } from "@wordpress/element";
4 import { sanitizeTime } from "../../../util";
5
6 const Chapter = ({
7 update,
8 add,
9 remove,
10 className,
11 time,
12 title,
13 }) => {
14 const [draftTime, setDraftTime] = useState(time);
15
16 return (
17 <Flex align="center" className={className}>
18 <FlexItem>
19 <TextControl
20 className={"presto-player__caption--time"}
21 style={{ width: "60px" }}
22 placeholder={"0:00"}
23 value={draftTime}
24 onChange={(time) => setDraftTime(time)}
25 onBlur={() => {
26 let time = sanitizeTime(draftTime);
27 update({ time });
28 setDraftTime(time);
29 }}
30 autoComplete="off"
31 />
32 </FlexItem>
33
34 <FlexBlock>
35 <TextControl
36 className={"presto-player__caption--title"}
37 placeholder={__("Title", "presto-player")}
38 value={title || ""}
39 onChange={(title) => update({ title })}
40 autoComplete="off"
41 />
42 </FlexBlock>
43
44 <FlexItem>
45 {remove && (
46 <Button
47 icon="minus"
48 className="ph-chapter__remove"
49 style={{ marginBottom: "8px" }}
50 label={__("Remove Chapter", "presto-player")}
51 onClick={remove}
52 />
53 )}
54 {add && (
55 <Button
56 icon="plus-alt"
57 className="ph-chapter__add"
58 label={__("Add Chapter", "presto-player")}
59 style={{ marginBottom: "8px" }}
60 onClick={() => {
61 add();
62 setDraftTime("");
63 }}
64 />
65 )}
66 </FlexItem>
67 </Flex>
68 );
69 };
70
71 export default Chapter;
72