@app-studio/web 0.8.62 → 0.8.64
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/components/Tabs/Tabs/Tabs.props.d.ts +2 -0
- package/dist/components/Uploader/Uploader.d.ts +1 -0
- package/dist/web.cjs.development.js +30 -28
- package/dist/web.cjs.development.js.map +1 -1
- package/dist/web.cjs.production.min.js +1 -1
- package/dist/web.cjs.production.min.js.map +1 -1
- package/dist/web.esm.js +30 -29
- package/dist/web.esm.js.map +1 -1
- package/dist/web.umd.development.js +30 -28
- package/dist/web.umd.development.js.map +1 -1
- package/dist/web.umd.production.min.js +1 -1
- package/dist/web.umd.production.min.js.map +1 -1
- package/package.json +6 -1
- package/README.md +0 -50
|
@@ -9,4 +9,6 @@ export interface TabsViewProps extends TabsProps {
|
|
|
9
9
|
setIsActive: React.Dispatch<React.SetStateAction<Tab>>;
|
|
10
10
|
tabsState: Tab[];
|
|
11
11
|
setTabsState: React.Dispatch<React.SetStateAction<Tab[]>>;
|
|
12
|
+
renderTab?: (tab: Tab, isActive: boolean, index: number) => React.ReactNode;
|
|
13
|
+
renderContent?: (tab: Tab, index: number) => React.ReactNode;
|
|
12
14
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { UploadProps, UseUploadProps } from './Uploader.props';
|
|
3
|
+
export declare const generateThumbnail: (videoFile: File, setThumbnailUrl: (url: string) => void) => void;
|
|
3
4
|
export declare const useUpload: ({ maxSize, onFileSelect, validateFile, thumbnail, onError, }: UseUploadProps) => {
|
|
4
5
|
previewUrl: string | null;
|
|
5
6
|
thumbnailUrl: string | null;
|
|
@@ -6965,6 +6965,26 @@ var MessageLayout = _ref => {
|
|
|
6965
6965
|
return visible ? MessageContainer : null;
|
|
6966
6966
|
};
|
|
6967
6967
|
|
|
6968
|
+
var generateThumbnail = (videoFile, setThumbnailUrl) => {
|
|
6969
|
+
var video = document.createElement('video');
|
|
6970
|
+
video.preload = 'metadata';
|
|
6971
|
+
video.onloadedmetadata = () => {
|
|
6972
|
+
video.currentTime = 1;
|
|
6973
|
+
};
|
|
6974
|
+
video.oncanplay = () => {
|
|
6975
|
+
var canvas = document.createElement('canvas');
|
|
6976
|
+
canvas.width = video.videoWidth;
|
|
6977
|
+
canvas.height = video.videoHeight;
|
|
6978
|
+
var ctx = canvas.getContext('2d');
|
|
6979
|
+
if (ctx) {
|
|
6980
|
+
ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
|
|
6981
|
+
var thumbnailDataUrl = canvas.toDataURL('image/jpeg');
|
|
6982
|
+
setThumbnailUrl(thumbnailDataUrl);
|
|
6983
|
+
}
|
|
6984
|
+
URL.revokeObjectURL(video.src);
|
|
6985
|
+
};
|
|
6986
|
+
video.src = URL.createObjectURL(videoFile);
|
|
6987
|
+
};
|
|
6968
6988
|
var useUpload = _ref => {
|
|
6969
6989
|
var {
|
|
6970
6990
|
maxSize = 100 * 1024 * 1024,
|
|
@@ -6982,26 +7002,6 @@ var useUpload = _ref => {
|
|
|
6982
7002
|
var [errorMessage, setErrorMessage] = React.useState(null);
|
|
6983
7003
|
var [previewUrl, setPreviewUrl] = React.useState(null);
|
|
6984
7004
|
var [thumbnailUrl, setThumbnailUrl] = React.useState(thumbnail || null);
|
|
6985
|
-
var generateThumbnail = videoFile => {
|
|
6986
|
-
var video = document.createElement('video');
|
|
6987
|
-
video.preload = 'metadata';
|
|
6988
|
-
video.onloadedmetadata = () => {
|
|
6989
|
-
video.currentTime = 1;
|
|
6990
|
-
};
|
|
6991
|
-
video.oncanplay = () => {
|
|
6992
|
-
var canvas = document.createElement('canvas');
|
|
6993
|
-
canvas.width = video.videoWidth;
|
|
6994
|
-
canvas.height = video.videoHeight;
|
|
6995
|
-
var ctx = canvas.getContext('2d');
|
|
6996
|
-
if (ctx) {
|
|
6997
|
-
ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
|
|
6998
|
-
var thumbnailDataUrl = canvas.toDataURL('image/jpeg');
|
|
6999
|
-
setThumbnailUrl(thumbnailDataUrl);
|
|
7000
|
-
}
|
|
7001
|
-
URL.revokeObjectURL(video.src);
|
|
7002
|
-
};
|
|
7003
|
-
video.src = URL.createObjectURL(videoFile);
|
|
7004
|
-
};
|
|
7005
7005
|
var handleFileChange = React.useCallback(event => {
|
|
7006
7006
|
var _event$target$files;
|
|
7007
7007
|
var file = (_event$target$files = event.target.files) == null ? void 0 : _event$target$files[0];
|
|
@@ -7026,7 +7026,7 @@ var useUpload = _ref => {
|
|
|
7026
7026
|
}
|
|
7027
7027
|
setPreviewUrl(URL.createObjectURL(file));
|
|
7028
7028
|
if (file.type.startsWith('video/')) {
|
|
7029
|
-
generateThumbnail(file);
|
|
7029
|
+
generateThumbnail(file, setThumbnailUrl);
|
|
7030
7030
|
}
|
|
7031
7031
|
if (onFileSelect) {
|
|
7032
7032
|
setSelectedFile(file);
|
|
@@ -7678,7 +7678,9 @@ var TabsView = props => {
|
|
|
7678
7678
|
isActive,
|
|
7679
7679
|
setIsActive,
|
|
7680
7680
|
tabsState,
|
|
7681
|
-
setTabsState
|
|
7681
|
+
setTabsState,
|
|
7682
|
+
renderTab,
|
|
7683
|
+
renderContent
|
|
7682
7684
|
} = props;
|
|
7683
7685
|
// Declares a function 'moveSelectedTabToTop' that takes an index and modifies the tabs order.
|
|
7684
7686
|
var moveSelectedTabToTop = idx => {
|
|
@@ -7699,11 +7701,9 @@ var TabsView = props => {
|
|
|
7699
7701
|
return tab.value === tabsState[0].value;
|
|
7700
7702
|
};
|
|
7701
7703
|
return /*#__PURE__*/React__default.createElement(Vertical, Object.assign({
|
|
7702
|
-
width: "
|
|
7704
|
+
width: "100%",
|
|
7703
7705
|
height: '100%'
|
|
7704
|
-
}, styles == null ? void 0 : styles.container), /*#__PURE__*/React__default.createElement(Horizontal, Object.assign({
|
|
7705
|
-
marginBottom: 20
|
|
7706
|
-
}, styles == null ? void 0 : styles.headerTabs), tabs.map((tab, idx) => (/*#__PURE__*/React__default.createElement(Button, Object.assign({
|
|
7706
|
+
}, styles == null ? void 0 : styles.container), /*#__PURE__*/React__default.createElement(Horizontal, Object.assign({}, styles == null ? void 0 : styles.headerTabs), tabs.map((tab, idx) => renderTab ? renderTab(tab, isContentActive(tab), idx) : (/*#__PURE__*/React__default.createElement(Button, Object.assign({
|
|
7707
7707
|
key: tab.title,
|
|
7708
7708
|
onClick: () => {
|
|
7709
7709
|
moveSelectedTabToTop(idx);
|
|
@@ -7711,11 +7711,12 @@ var TabsView = props => {
|
|
|
7711
7711
|
variant: isActive.value === tab.value ? 'filled' : 'ghost',
|
|
7712
7712
|
shape: "pillShaped",
|
|
7713
7713
|
cursor: "pointer",
|
|
7714
|
-
isAuto: true
|
|
7714
|
+
isAuto: true,
|
|
7715
|
+
margin: 10
|
|
7715
7716
|
}, styles == null ? void 0 : styles.tab, isActive.value === tab.value ? styles == null ? void 0 : styles.activeTab : {}), /*#__PURE__*/React__default.createElement(Text, Object.assign({}, styles == null ? void 0 : styles.title, isActive.value === tab.value ? styles == null ? void 0 : styles.activeText : {}), tab.title))))), /*#__PURE__*/React__default.createElement(View, Object.assign({
|
|
7716
7717
|
width: '100%',
|
|
7717
7718
|
height: "100%"
|
|
7718
|
-
}, styles == null ? void 0 : styles.content), tabsState.map((tab, idx) => isContentActive(tab) && /*#__PURE__*/React__default.createElement(View, {
|
|
7719
|
+
}, styles == null ? void 0 : styles.content), tabsState.map(renderContent ? renderContent : (tab, idx) => isContentActive(tab) && /*#__PURE__*/React__default.createElement(View, {
|
|
7719
7720
|
key: idx
|
|
7720
7721
|
}, tab.content))));
|
|
7721
7722
|
};
|
|
@@ -8191,6 +8192,7 @@ exports.WarningIcon = WarningIcon;
|
|
|
8191
8192
|
exports.WifiIcon = WifiIcon;
|
|
8192
8193
|
exports.XIcon = XIcon;
|
|
8193
8194
|
exports.YoutubeIcon = YoutubeIcon;
|
|
8195
|
+
exports.generateThumbnail = generateThumbnail;
|
|
8194
8196
|
exports.hideMessage = hideMessage;
|
|
8195
8197
|
exports.hideModal = hideModal;
|
|
8196
8198
|
exports.showMessage = showMessage;
|