design-react-kit 5.6.0 → 5.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +27 -0
- package/dist/Accordion/AccordionBody.cjs +1 -1
- package/dist/Accordion/AccordionBody.cjs.map +1 -1
- package/dist/Accordion/AccordionBody.js +31 -21
- package/dist/Accordion/AccordionBody.js.map +1 -1
- package/dist/Accordion/AccordionHeader.cjs +1 -1
- package/dist/Accordion/AccordionHeader.cjs.map +1 -1
- package/dist/Accordion/AccordionHeader.js +1 -1
- package/dist/Accordion/AccordionHeader.js.map +1 -1
- package/dist/Autocomplete/Autocomplete.cjs +1 -3
- package/dist/Autocomplete/Autocomplete.cjs.map +1 -1
- package/dist/Autocomplete/Autocomplete.js +27 -4
- package/dist/Autocomplete/Autocomplete.js.map +1 -1
- package/dist/Carousel/Carousel.cjs +2 -0
- package/dist/Carousel/Carousel.cjs.map +1 -0
- package/dist/Carousel/Carousel.js +193 -0
- package/dist/Carousel/Carousel.js.map +1 -0
- package/dist/Carousel/CarouselSlide.cjs +2 -0
- package/dist/Carousel/CarouselSlide.cjs.map +1 -0
- package/dist/Carousel/CarouselSlide.js +8 -0
- package/dist/Carousel/CarouselSlide.js.map +1 -0
- package/dist/Input/Input.cjs +1 -1
- package/dist/Input/Input.cjs.map +1 -1
- package/dist/Input/Input.js +3 -9
- package/dist/Input/Input.js.map +1 -1
- package/dist/Input/TextArea.cjs +1 -1
- package/dist/Input/TextArea.cjs.map +1 -1
- package/dist/Input/utils.cjs +1 -1
- package/dist/Input/utils.cjs.map +1 -1
- package/dist/Input/utils.js +2 -4
- package/dist/Input/utils.js.map +1 -1
- package/dist/Rating/Rating.cjs +1 -1
- package/dist/Rating/Rating.cjs.map +1 -1
- package/dist/Transfer/BacktransferButton.cjs +2 -0
- package/dist/Transfer/BacktransferButton.cjs.map +1 -0
- package/dist/Transfer/BacktransferButton.js +20 -0
- package/dist/Transfer/BacktransferButton.js.map +1 -0
- package/dist/Transfer/Item.cjs +2 -0
- package/dist/Transfer/Item.cjs.map +1 -0
- package/dist/Transfer/Item.js +15 -0
- package/dist/Transfer/Item.js.map +1 -0
- package/dist/Transfer/ResetButton.cjs +2 -0
- package/dist/Transfer/ResetButton.cjs.map +1 -0
- package/dist/Transfer/ResetButton.js +16 -0
- package/dist/Transfer/ResetButton.js.map +1 -0
- package/dist/Transfer/SelectAllCheckbox.cjs +2 -0
- package/dist/Transfer/SelectAllCheckbox.cjs.map +1 -0
- package/dist/Transfer/SelectAllCheckbox.js +11 -0
- package/dist/Transfer/SelectAllCheckbox.js.map +1 -0
- package/dist/Transfer/Source.cjs +2 -0
- package/dist/Transfer/Source.cjs.map +1 -0
- package/dist/Transfer/Source.js +61 -0
- package/dist/Transfer/Source.js.map +1 -0
- package/dist/Transfer/Target.cjs +2 -0
- package/dist/Transfer/Target.cjs.map +1 -0
- package/dist/Transfer/Target.js +60 -0
- package/dist/Transfer/Target.js.map +1 -0
- package/dist/Transfer/Transfer.cjs +2 -0
- package/dist/Transfer/Transfer.cjs.map +1 -0
- package/dist/Transfer/Transfer.js +21 -0
- package/dist/Transfer/Transfer.js.map +1 -0
- package/dist/Transfer/TransferButton.cjs +2 -0
- package/dist/Transfer/TransferButton.cjs.map +1 -0
- package/dist/Transfer/TransferButton.js +20 -0
- package/dist/Transfer/TransferButton.js.map +1 -0
- package/dist/Transfer/useTransferContext.cjs +2 -0
- package/dist/Transfer/useTransferContext.cjs.map +1 -0
- package/dist/Transfer/useTransferContext.js +63 -0
- package/dist/Transfer/useTransferContext.js.map +1 -0
- package/dist/Video/Video.cjs +2 -0
- package/dist/Video/Video.cjs.map +1 -0
- package/dist/Video/Video.js +99 -0
- package/dist/Video/Video.js.map +1 -0
- package/dist/index.cjs +1 -3
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/types/Autocomplete/Autocomplete.d.ts +10 -5
- package/dist/types/Carousel/Carousel.d.ts +7 -0
- package/dist/types/Carousel/CarouselSlide.d.ts +2 -0
- package/dist/types/Input/Input.d.ts +2 -4
- package/dist/types/Input/utils.d.ts +1 -1
- package/dist/types/Transfer/BacktransferButton.d.ts +3 -0
- package/dist/types/Transfer/Item.d.ts +12 -0
- package/dist/types/Transfer/ResetButton.d.ts +3 -0
- package/dist/types/Transfer/SelectAllCheckbox.d.ts +10 -0
- package/dist/types/Transfer/Source.d.ts +9 -0
- package/dist/types/Transfer/Target.d.ts +9 -0
- package/dist/types/Transfer/Transfer.d.ts +40 -0
- package/dist/types/Transfer/TransferButton.d.ts +3 -0
- package/dist/types/Transfer/useTransferContext.d.ts +49 -0
- package/dist/types/Video/Video.d.ts +58 -0
- package/dist/types/index.d.ts +6 -0
- package/package.json +6 -3
- package/src/Accordion/AccordionBody.tsx +32 -22
- package/src/Accordion/AccordionHeader.tsx +0 -1
- package/src/Autocomplete/Autocomplete.tsx +69 -18
- package/src/Carousel/Carousel.tsx +210 -0
- package/src/Carousel/CarouselSlide.tsx +14 -0
- package/src/Input/Input.tsx +10 -19
- package/src/Input/utils.tsx +3 -5
- package/src/Transfer/BacktransferButton.tsx +33 -0
- package/src/Transfer/Item.tsx +33 -0
- package/src/Transfer/ResetButton.tsx +28 -0
- package/src/Transfer/SelectAllCheckbox.tsx +30 -0
- package/src/Transfer/Source.tsx +89 -0
- package/src/Transfer/Target.tsx +87 -0
- package/src/Transfer/Transfer.tsx +31 -0
- package/src/Transfer/TransferButton.tsx +33 -0
- package/src/Transfer/useTransferContext.tsx +110 -0
- package/src/Video/Video.tsx +205 -0
- package/src/index.ts +6 -0
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import React, { useEffect, useRef } from 'react';
|
|
2
|
+
import { VideoPlayer } from 'bootstrap-italia';
|
|
3
|
+
import { Input } from '../Input/Input';
|
|
4
|
+
import { Accordion } from '../Accordion/Accordion';
|
|
5
|
+
import { AccordionItem } from '../Accordion/AccordionItem';
|
|
6
|
+
import { AccordionHeader } from '../Accordion/AccordionHeader';
|
|
7
|
+
import { AccordionBody } from '../Accordion/AccordionBody';
|
|
8
|
+
import { Dimmer } from '../Dimmer/Dimmer';
|
|
9
|
+
import { DimmerButtons } from '../Dimmer/DimmerButtons';
|
|
10
|
+
import { Button } from '../Button/Button';
|
|
11
|
+
import { FormGroup, Label } from 'reactstrap';
|
|
12
|
+
import { Icon } from '../Icon/Icon';
|
|
13
|
+
export const Video = (props) => {
|
|
14
|
+
const [showTranscript, setShowTranscript] = React.useState(false);
|
|
15
|
+
const [showDisclaimer, setShowDisclaimer] = React.useState(false);
|
|
16
|
+
const [instance, setInstance] = React.useState();
|
|
17
|
+
const [rememberFlag, setRememberFlag] = React.useState(false);
|
|
18
|
+
const [disclaimerText, setDisclaimerText] = React.useState(`Accetta i cookie di YouTube per vedere il video. Puoi gestire le preferenze nella cookie policy.`);
|
|
19
|
+
const ref = useRef(null);
|
|
20
|
+
useEffect(() => {
|
|
21
|
+
const el = ref.current;
|
|
22
|
+
if (el && VideoPlayer && !instance) {
|
|
23
|
+
setInstance(new VideoPlayer(el));
|
|
24
|
+
}
|
|
25
|
+
if (props.youtube?.url) {
|
|
26
|
+
if (props.youtube.hasDisclaimer) {
|
|
27
|
+
const serviceName = props.youtube.disclaimerKey || 'youtube';
|
|
28
|
+
const rememberFlag = localStorage.getItem(serviceName);
|
|
29
|
+
if (props.youtube.disclaimerText) {
|
|
30
|
+
setDisclaimerText(props.youtube.disclaimerText);
|
|
31
|
+
}
|
|
32
|
+
setRememberFlag(rememberFlag == 'true');
|
|
33
|
+
if (rememberFlag == 'true') {
|
|
34
|
+
setShowDisclaimer(false);
|
|
35
|
+
loadYouTubeVideo(props.youtube.url);
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
setShowDisclaimer(true);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
if (props.autoPlay) {
|
|
43
|
+
setTimeout(() => {
|
|
44
|
+
instance?.player?.play();
|
|
45
|
+
}, 1000);
|
|
46
|
+
}
|
|
47
|
+
return () => {
|
|
48
|
+
if (instance) {
|
|
49
|
+
instance.dispose();
|
|
50
|
+
}
|
|
51
|
+
};
|
|
52
|
+
}, [instance]);
|
|
53
|
+
const loadYouTubeVideo = (url) => {
|
|
54
|
+
if (instance) {
|
|
55
|
+
instance.setYouTubeVideo(url);
|
|
56
|
+
}
|
|
57
|
+
};
|
|
58
|
+
const { controls = true, autoPlay = false, loop = false, fluid = true, poster = undefined } = props;
|
|
59
|
+
const videoProps = { controls, autoPlay, loop, fluid, poster };
|
|
60
|
+
return (React.createElement(React.Fragment, null,
|
|
61
|
+
React.createElement("div", { className: 'row dimmable' },
|
|
62
|
+
React.createElement("video", { ...videoProps, ref: ref, preload: 'auto', className: 'video-js', "data-bs-video": true },
|
|
63
|
+
props.sources?.map((source) => React.createElement("source", { key: source.src, src: source.src, type: source.type })),
|
|
64
|
+
props.tracks?.map((track) => {
|
|
65
|
+
const { src, kind, label, srcLang, isDefault } = track;
|
|
66
|
+
return (React.createElement("track", { key: src, kind: kind, src: src, srcLang: srcLang || '', label: label, default: isDefault || false }));
|
|
67
|
+
})),
|
|
68
|
+
props.transcription && (React.createElement(Accordion, { className: 'vjs-transcription' },
|
|
69
|
+
React.createElement(AccordionItem, null,
|
|
70
|
+
React.createElement(AccordionHeader, { active: showTranscript, onToggle: () => setShowTranscript((p) => !p) }, props.transcriptionLabel || 'Trascrizione'),
|
|
71
|
+
React.createElement(AccordionBody, { active: showTranscript }, props.transcription)))),
|
|
72
|
+
React.createElement(Dimmer, { show: showDisclaimer, className: 'acceptoverlay-inner', wrapperClassName: 'acceptoverlay acceptoverlay-primary ' },
|
|
73
|
+
React.createElement("div", { className: 'acceptoverlay-icon' },
|
|
74
|
+
React.createElement(Icon, { icon: 'it-video', size: 'xl', className: '' })),
|
|
75
|
+
React.createElement("p", { dangerouslySetInnerHTML: { __html: disclaimerText } }),
|
|
76
|
+
React.createElement(DimmerButtons, { className: 'bg-primary' },
|
|
77
|
+
React.createElement(Button, { onClick: () => {
|
|
78
|
+
if (props.youtube?.url) {
|
|
79
|
+
if (props.youtube.hasDisclaimer) {
|
|
80
|
+
const serviceName = props.youtube.disclaimerKey || 'youtube';
|
|
81
|
+
if (rememberFlag) {
|
|
82
|
+
// set cookie
|
|
83
|
+
localStorage.setItem(serviceName, 'true');
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
// reset cookie
|
|
87
|
+
localStorage.removeItem(serviceName);
|
|
88
|
+
}
|
|
89
|
+
loadYouTubeVideo(props.youtube.url);
|
|
90
|
+
}
|
|
91
|
+
setShowDisclaimer(false);
|
|
92
|
+
}
|
|
93
|
+
}, color: 'primary' }, props.acceptLabel || 'Accetta'),
|
|
94
|
+
React.createElement("div", { className: 'd-flex align-items-center ml-2' },
|
|
95
|
+
React.createElement(FormGroup, { check: true, inline: true },
|
|
96
|
+
React.createElement(Input, { id: `inline-checkbox_${props.id}`, type: 'checkbox', checked: rememberFlag, onChange: () => setRememberFlag((p) => !p) }),
|
|
97
|
+
React.createElement(Label, { check: true, for: `inline-checkbox_${props.id}`, defaultChecked: false, className: 'text-white' }, props.rememberLabel || 'Ricorda per tutti i video'))))))));
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=Video.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Video.js","sourceRoot":"","sources":["../../src/Video/Video.tsx"],"names":[],"mappings":"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"}
|