@app-studio/web 0.8.61 → 0.8.63

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/dist/web.esm.js CHANGED
@@ -6958,6 +6958,26 @@ var MessageLayout = _ref => {
6958
6958
  return visible ? MessageContainer : null;
6959
6959
  };
6960
6960
 
6961
+ var generateThumbnail = (videoFile, setThumbnailUrl) => {
6962
+ var video = document.createElement('video');
6963
+ video.preload = 'metadata';
6964
+ video.onloadedmetadata = () => {
6965
+ video.currentTime = 1;
6966
+ };
6967
+ video.oncanplay = () => {
6968
+ var canvas = document.createElement('canvas');
6969
+ canvas.width = video.videoWidth;
6970
+ canvas.height = video.videoHeight;
6971
+ var ctx = canvas.getContext('2d');
6972
+ if (ctx) {
6973
+ ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
6974
+ var thumbnailDataUrl = canvas.toDataURL('image/jpeg');
6975
+ setThumbnailUrl(thumbnailDataUrl);
6976
+ }
6977
+ URL.revokeObjectURL(video.src);
6978
+ };
6979
+ video.src = URL.createObjectURL(videoFile);
6980
+ };
6961
6981
  var useUpload = _ref => {
6962
6982
  var {
6963
6983
  maxSize = 100 * 1024 * 1024,
@@ -6975,26 +6995,6 @@ var useUpload = _ref => {
6975
6995
  var [errorMessage, setErrorMessage] = useState(null);
6976
6996
  var [previewUrl, setPreviewUrl] = useState(null);
6977
6997
  var [thumbnailUrl, setThumbnailUrl] = useState(thumbnail || null);
6978
- var generateThumbnail = videoFile => {
6979
- var video = document.createElement('video');
6980
- video.preload = 'metadata';
6981
- video.onloadedmetadata = () => {
6982
- video.currentTime = 1;
6983
- };
6984
- video.oncanplay = () => {
6985
- var canvas = document.createElement('canvas');
6986
- canvas.width = video.videoWidth;
6987
- canvas.height = video.videoHeight;
6988
- var ctx = canvas.getContext('2d');
6989
- if (ctx) {
6990
- ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
6991
- var thumbnailDataUrl = canvas.toDataURL('image/jpeg');
6992
- setThumbnailUrl(thumbnailDataUrl);
6993
- }
6994
- URL.revokeObjectURL(video.src);
6995
- };
6996
- video.src = URL.createObjectURL(videoFile);
6997
- };
6998
6998
  var handleFileChange = useCallback(event => {
6999
6999
  var _event$target$files;
7000
7000
  var file = (_event$target$files = event.target.files) == null ? void 0 : _event$target$files[0];
@@ -7019,7 +7019,7 @@ var useUpload = _ref => {
7019
7019
  }
7020
7020
  setPreviewUrl(URL.createObjectURL(file));
7021
7021
  if (file.type.startsWith('video/')) {
7022
- generateThumbnail(file);
7022
+ generateThumbnail(file, setThumbnailUrl);
7023
7023
  }
7024
7024
  if (onFileSelect) {
7025
7025
  setSelectedFile(file);
@@ -7103,8 +7103,7 @@ var Uploader = _ref2 => {
7103
7103
  thumbnailUrl,
7104
7104
  videoRef,
7105
7105
  videoProps,
7106
- imageProps,
7107
- iconProps
7106
+ imageProps
7108
7107
  } = _ref6;
7109
7108
  console.log('thumbnailUrl', thumbnailUrl);
7110
7109
  return /*#__PURE__*/React.createElement(View$1, {
@@ -7126,14 +7125,7 @@ var Uploader = _ref2 => {
7126
7125
  width: "100%",
7127
7126
  height: "100%",
7128
7127
  objectFit: "cover"
7129
- }, imageProps)), /*#__PURE__*/React.createElement(PlayIcon, Object.assign({
7130
- position: "absolute",
7131
- top: "50%",
7132
- left: "50%",
7133
- color: "white",
7134
- size: '20%',
7135
- transform: "translate(-50%, -50%)"
7136
- }, iconProps)));
7128
+ }, imageProps)));
7137
7129
  },
7138
7130
  renderImage = _ref7 => {
7139
7131
  var {
@@ -8077,5 +8069,5 @@ var DragAndDropComponent = props => {
8077
8069
  };
8078
8070
  var DragAndDrop = DragAndDropComponent;
8079
8071
 
8080
- export { Alert, ArrowIcon, AspectRatio, Avatar, Badge, BatteryIcon, BluetoothIcon, BoldArrowIcon, BookmarkIcon, Bottom, Button, CalendarIcon, CameraIcon, Center, CenterBase, Checkbox, ChevronIcon, ClockIcon, CloseEyeIcon, CloseIcon, CloudIcon, ComboBox, CopyIcon, CountryPicker, DatePicker, DownloadIcon, DragAndDrop, DragAndDropComponent, DragHandleIcon, DustBinIcon, EditIcon, ErrorIcon, ExternalLinkIcon, FacebookIcon, FileIcon, FileImage, FileSVG, FilterIcon, FormikCheckbox, FormikComboBox, FormikCountryPicker, FormikDatePicker, FormikForm, FormikPassword, FormikSelect, FormikSwitch, FormikTextArea, FormikTextField, HeartIcon, HomeIcon, Horizontal, HorizontalBase, Icon, ImageIcon, InfoIcon, Inline, InstagramIcon, Left, LikeIcon, Link, LinkedinIcon, Loader, LocationIcon, LockIcon, MenuIcon, MessageLayout, MessageView, MicrophoneIcon, MinusIcon, Modal, MoonIcon, NotificationIcon, OpenEyeIcon, PanelIcon, Password, PauseIcon, PlayIcon, PlusIcon, PrintIcon, ProfileIcon, RefreshIcon, Right, SaveIcon, SearchIcon, Select, SettingsIcon, ShareIcon, SpinnerIcon, StarIcon, SuccessIcon, Switch, Table, Tabs, Text, TextArea, TextField, ThreadsIcon, TickIcon, Toggle, ToggleGroup, Top, TwitchIcon, TwitterIcon, UnLikeIcon, UnlockIcon, UploadIcon, Uploader, Vertical, VerticalBase, VideoIcon, View, WarningIcon, WifiIcon, XIcon, YoutubeIcon, hideMessage, hideModal, showMessage, showModal, useMessageStore, useModalStore, useUpload };
8072
+ export { Alert, ArrowIcon, AspectRatio, Avatar, Badge, BatteryIcon, BluetoothIcon, BoldArrowIcon, BookmarkIcon, Bottom, Button, CalendarIcon, CameraIcon, Center, CenterBase, Checkbox, ChevronIcon, ClockIcon, CloseEyeIcon, CloseIcon, CloudIcon, ComboBox, CopyIcon, CountryPicker, DatePicker, DownloadIcon, DragAndDrop, DragAndDropComponent, DragHandleIcon, DustBinIcon, EditIcon, ErrorIcon, ExternalLinkIcon, FacebookIcon, FileIcon, FileImage, FileSVG, FilterIcon, FormikCheckbox, FormikComboBox, FormikCountryPicker, FormikDatePicker, FormikForm, FormikPassword, FormikSelect, FormikSwitch, FormikTextArea, FormikTextField, HeartIcon, HomeIcon, Horizontal, HorizontalBase, Icon, ImageIcon, InfoIcon, Inline, InstagramIcon, Left, LikeIcon, Link, LinkedinIcon, Loader, LocationIcon, LockIcon, MenuIcon, MessageLayout, MessageView, MicrophoneIcon, MinusIcon, Modal, MoonIcon, NotificationIcon, OpenEyeIcon, PanelIcon, Password, PauseIcon, PlayIcon, PlusIcon, PrintIcon, ProfileIcon, RefreshIcon, Right, SaveIcon, SearchIcon, Select, SettingsIcon, ShareIcon, SpinnerIcon, StarIcon, SuccessIcon, Switch, Table, Tabs, Text, TextArea, TextField, ThreadsIcon, TickIcon, Toggle, ToggleGroup, Top, TwitchIcon, TwitterIcon, UnLikeIcon, UnlockIcon, UploadIcon, Uploader, Vertical, VerticalBase, VideoIcon, View, WarningIcon, WifiIcon, XIcon, YoutubeIcon, generateThumbnail, hideMessage, hideModal, showMessage, showModal, useMessageStore, useModalStore, useUpload };
8081
8073
  //# sourceMappingURL=web.esm.js.map