@threekit-tools/treble 0.0.53 → 0.0.54
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/Upload/index.js +32 -9
- package/dist/components/Upload/upload.styles.d.ts +1 -0
- package/dist/components/Upload/upload.styles.js +5 -4
- package/dist/icons/Spinner.d.ts +9 -0
- package/dist/icons/Spinner.js +38 -0
- package/dist/icons/index.d.ts +3 -2
- package/dist/icons/index.js +4 -1
- package/package.json +1 -1
|
@@ -60,31 +60,46 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
60
60
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
61
61
|
exports.Upload = void 0;
|
|
62
62
|
var react_1 = __importStar(require("react"));
|
|
63
|
-
var upload_styles_1 = require("./upload.styles");
|
|
64
63
|
var constants_1 = require("../../constants");
|
|
65
64
|
var FormComponentTitle_1 = __importDefault(require("../FormComponentTitle"));
|
|
66
65
|
var FormComponentDescription_1 = __importDefault(require("../FormComponentDescription"));
|
|
67
66
|
var shared_styles_1 = require("../shared.styles");
|
|
68
67
|
var utils_1 = require("../../utils");
|
|
68
|
+
var icons_1 = require("../../icons");
|
|
69
69
|
var formInputContainer_1 = __importDefault(require("../containers/formInputContainer"));
|
|
70
|
+
var upload_styles_1 = require("./upload.styles");
|
|
70
71
|
var Upload = function (props) {
|
|
71
72
|
var title = props.title, description = props.description, value = props.value, onChange = props.onChange, customClassName = props.className;
|
|
72
|
-
var _a = (0, react_1.useState)(false),
|
|
73
|
+
var _a = (0, react_1.useState)(false), isUploading = _a[0], setIsUploading = _a[1];
|
|
74
|
+
var _b = (0, react_1.useState)(undefined), filename = _b[0], setFilename = _b[1];
|
|
73
75
|
var inputRef = (0, react_1.createRef)();
|
|
74
76
|
var cls = (0, utils_1.generateInputClassName)('upload', customClassName, title);
|
|
75
77
|
var handleClick = function () {
|
|
76
78
|
var _a;
|
|
79
|
+
if (isUploading)
|
|
80
|
+
return;
|
|
77
81
|
(_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.click();
|
|
78
82
|
};
|
|
79
83
|
var handleUpload = function (file) { return __awaiter(void 0, void 0, void 0, function () {
|
|
84
|
+
var reader;
|
|
80
85
|
return __generator(this, function (_a) {
|
|
81
86
|
switch (_a.label) {
|
|
82
87
|
case 0:
|
|
83
|
-
|
|
88
|
+
setIsUploading(true);
|
|
84
89
|
return [4 /*yield*/, onChange(file)];
|
|
85
90
|
case 1:
|
|
86
91
|
_a.sent();
|
|
87
|
-
|
|
92
|
+
setIsUploading(false);
|
|
93
|
+
setFilename(file.name);
|
|
94
|
+
reader = new FileReader();
|
|
95
|
+
reader.onload = function () {
|
|
96
|
+
var imgEl = document.getElementById('trbl-upload-img');
|
|
97
|
+
if (!imgEl)
|
|
98
|
+
return;
|
|
99
|
+
// @ts-ignore
|
|
100
|
+
imgEl.src = reader.result;
|
|
101
|
+
};
|
|
102
|
+
reader.readAsDataURL(file);
|
|
88
103
|
return [2 /*return*/];
|
|
89
104
|
}
|
|
90
105
|
});
|
|
@@ -102,11 +117,19 @@ var Upload = function (props) {
|
|
|
102
117
|
return [2 /*return*/];
|
|
103
118
|
});
|
|
104
119
|
}); } }),
|
|
105
|
-
react_1.default.createElement("button", { type: "button", onClick: handleClick },
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
120
|
+
react_1.default.createElement("button", { type: "button", onClick: handleClick }, isUploading ? (react_1.default.createElement(upload_styles_1.UploadingWrapper, null,
|
|
121
|
+
react_1.default.createElement("div", null,
|
|
122
|
+
react_1.default.createElement(icons_1.SpinnerIcon, { size: "28px" })),
|
|
123
|
+
react_1.default.createElement("div", null, "Uploading..."))) : (value === null || value === void 0 ? void 0 : value.length) ? (react_1.default.createElement(upload_styles_1.UploadingWrapper, null,
|
|
124
|
+
react_1.default.createElement("div", null,
|
|
125
|
+
react_1.default.createElement("img", { src: "#", id: "trbl-upload-img" })),
|
|
126
|
+
react_1.default.createElement("div", null,
|
|
127
|
+
react_1.default.createElement("div", null, filename),
|
|
128
|
+
react_1.default.createElement("div", null, "Upload another file.")))) : (react_1.default.createElement("div", null,
|
|
129
|
+
react_1.default.createElement("div", null,
|
|
130
|
+
react_1.default.createElement(icons_1.ImageIcon, null)),
|
|
131
|
+
react_1.default.createElement("div", null, "Click to upload"),
|
|
132
|
+
react_1.default.createElement("div", null, "Supported file types: PNG, JPEG, SVG")))))));
|
|
110
133
|
};
|
|
111
134
|
exports.Upload = Upload;
|
|
112
135
|
exports.Upload.componentName = 'upload';
|
|
@@ -3,4 +3,5 @@ interface IUploadWrapper {
|
|
|
3
3
|
iconOnly?: boolean;
|
|
4
4
|
}
|
|
5
5
|
export declare const UploadWrapper: import("styled-components").StyledComponent<"span", import("styled-components").DefaultTheme, IUploadWrapper, never>;
|
|
6
|
+
export declare const UploadingWrapper: import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>;
|
|
6
7
|
export {};
|
|
@@ -7,9 +7,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
7
7
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
8
8
|
};
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.UploadWrapper = void 0;
|
|
10
|
+
exports.UploadingWrapper = exports.UploadWrapper = void 0;
|
|
11
11
|
var styled_components_1 = __importDefault(require("styled-components"));
|
|
12
|
-
exports.UploadWrapper = styled_components_1.default.span(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n overflow: hidden;\n display: inline-block;\n\n & button {\n height: 40px;\n width: ", ";\n padding: ", ";\n overflow: hidden;\n font-family: ", ";\n font-size: ", ";\n color: ", ";\n background: white;\n cursor: pointer;\n border-radius: ", ";\n border: 1px solid ", ";\n transition: all 0.16s ease-in-out;\n }\n\n & button:hover {\n border: 1px solid ", ";\n color: ", ";\n }\n\n & input[type='file'] {\n display: none;\n }\n"], ["\n position: relative;\n overflow: hidden;\n display: inline-block;\n\n & button {\n height: 40px;\n width: ", ";\n padding: ", ";\n overflow: hidden;\n font-family: ", ";\n font-size: ", ";\n color: ", ";\n background: white;\n cursor: pointer;\n border-radius: ", ";\n border: 1px solid ", ";\n transition: all 0.16s ease-in-out;\n }\n\n & button:hover {\n border: 1px solid ", ";\n color: ", ";\n }\n\n & input[type='file'] {\n display: none;\n }\n"])), function (props) {
|
|
12
|
+
exports.UploadWrapper = styled_components_1.default.span(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: relative;\n overflow: hidden;\n display: inline-block;\n\n & button {\n min-height: 40px;\n height: max-content;\n width: ", ";\n padding: ", ";\n overflow: hidden;\n font-family: ", ";\n font-size: ", ";\n color: ", ";\n text-align: center;\n background: white;\n cursor: pointer;\n border-radius: ", ";\n border: 1px solid ", ";\n transition: all 0.16s ease-in-out;\n }\n\n .tk-icon {\n transition: all 0.16s ease-in-out;\n }\n\n & button:hover {\n border: 1px solid ", ";\n color: ", ";\n\n .tk-icon {\n stroke: ", ";\n }\n }\n\n & input[type='file'] {\n display: none;\n }\n"], ["\n position: relative;\n overflow: hidden;\n display: inline-block;\n\n & button {\n min-height: 40px;\n height: max-content;\n width: ", ";\n padding: ", ";\n overflow: hidden;\n font-family: ", ";\n font-size: ", ";\n color: ", ";\n text-align: center;\n background: white;\n cursor: pointer;\n border-radius: ", ";\n border: 1px solid ", ";\n transition: all 0.16s ease-in-out;\n }\n\n .tk-icon {\n transition: all 0.16s ease-in-out;\n }\n\n & button:hover {\n border: 1px solid ", ";\n color: ", ";\n\n .tk-icon {\n stroke: ", ";\n }\n }\n\n & input[type='file'] {\n display: none;\n }\n"])), function (props) {
|
|
13
13
|
return props.fullWidth ? '100%' : props.iconOnly ? '40px' : 'max-content';
|
|
14
|
-
}, function (props) { return (props.iconOnly ? '0px' : '10px 16px'); }, function (props) { return props.theme.fontFamily; }, function (props) { return props.theme.fontBaseSize; }, function (props) { return props.theme.textColor; }, function (props) { return props.theme.borderRadius || '2px'; }, function (props) { return props.theme.
|
|
15
|
-
|
|
14
|
+
}, function (props) { return (props.iconOnly ? '0px' : '10px 16px'); }, function (props) { return props.theme.fontFamily; }, function (props) { return props.theme.fontBaseSize; }, function (props) { return props.theme.textColor; }, function (props) { return props.theme.borderRadius || '2px'; }, function (props) { return props.theme.borderColorBase; }, function (props) { return props.theme.primaryColor; }, function (props) { return props.theme.primaryColor; }, function (props) { return props.theme.primaryColor; });
|
|
15
|
+
exports.UploadingWrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: grid;\n grid-template-columns: max-content max-content;\n grid-gap: 8px;\n\n & > div {\n height: max-content;\n position: relative;\n top: 50%;\n transform: translateY(-50%);\n }\n\n img {\n height: 72px;\n }\n"], ["\n display: grid;\n grid-template-columns: max-content max-content;\n grid-gap: 8px;\n\n & > div {\n height: max-content;\n position: relative;\n top: 50%;\n transform: translateY(-50%);\n }\n\n img {\n height: 72px;\n }\n"])));
|
|
16
|
+
var templateObject_1, templateObject_2;
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
7
|
+
if (k2 === undefined) k2 = k;
|
|
8
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
var react_1 = __importDefault(require("react"));
|
|
30
|
+
var styled_components_1 = __importStar(require("styled-components"));
|
|
31
|
+
function Spinner(props) {
|
|
32
|
+
return react_1.default.createElement(Wrapper, { size: props.size });
|
|
33
|
+
}
|
|
34
|
+
var spin = (0, styled_components_1.keyframes)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\nto {\n transform: rotate(360deg);\n}\n"], ["\nto {\n transform: rotate(360deg);\n}\n"])));
|
|
35
|
+
var Wrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: inline-block;\n width: ", ";\n height: ", ";\n border: 5px solid rgba(0, 0, 0, 0.3);\n border-radius: 50%;\n border-top-color: #000;\n animation: ", " 1s ease-in-out infinite;\n"], ["\n display: inline-block;\n width: ", ";\n height: ", ";\n border: 5px solid rgba(0, 0, 0, 0.3);\n border-radius: 50%;\n border-top-color: #000;\n animation: ", " 1s ease-in-out infinite;\n"])), function (props) { return props.size || '40px'; }, function (props) { return props.size || '40px'; }, spin);
|
|
36
|
+
Spinner.iconName = 'spinner';
|
|
37
|
+
exports.default = Spinner;
|
|
38
|
+
var templateObject_1, templateObject_2;
|
package/dist/icons/index.d.ts
CHANGED
|
@@ -39,11 +39,12 @@ import UndoIcon from './Undo';
|
|
|
39
39
|
import WishlistIcon from './Wishlist';
|
|
40
40
|
import ZoomInIcon from './ZoomIn';
|
|
41
41
|
import ZoomOutIcon from './ZoomOut';
|
|
42
|
+
import SpinnerIcon from './Spinner';
|
|
42
43
|
export interface IIcon extends React.FC {
|
|
43
44
|
iconName: string;
|
|
44
45
|
}
|
|
45
|
-
export { AddIcon, ArrowLeftIcon, ArrowRightIcon, CameraIcon, CaretDownIcon, CaretUpIcon, CaretLeftIcon, CaretRightIcon, CartIcon, CheckmateIcon, ClipboardIcon, ColorPickerIcon, CopyIcon, DeleteIcon, DoubleCaretLeftIcon, DoubleCaretRightIcon, DownloadIcon, DragIcon, EditIcon, HeartIcon, ImageIcon, InfoIcon, MailIcon, MenuIcon, MoreIcon, NewWindowIcon, PauseIcon, PlayIcon, RedoIcon, RemoveIcon, RulerIcon, SearchIcon, SettingsIcon, ShareIcon, SwitchIcon, TagIcon, UndoIcon, WishlistIcon, ZoomInIcon, ZoomOutIcon, };
|
|
46
|
+
export { AddIcon, ArrowLeftIcon, ArrowRightIcon, CameraIcon, CaretDownIcon, CaretUpIcon, CaretLeftIcon, CaretRightIcon, CartIcon, CheckmateIcon, ClipboardIcon, ColorPickerIcon, CopyIcon, DeleteIcon, DoubleCaretLeftIcon, DoubleCaretRightIcon, DownloadIcon, DragIcon, EditIcon, HeartIcon, ImageIcon, InfoIcon, MailIcon, MenuIcon, MoreIcon, NewWindowIcon, PauseIcon, PlayIcon, RedoIcon, RemoveIcon, RulerIcon, SearchIcon, SettingsIcon, ShareIcon, SwitchIcon, TagIcon, UndoIcon, WishlistIcon, ZoomInIcon, ZoomOutIcon, SpinnerIcon, };
|
|
46
47
|
declare const _default: {
|
|
47
|
-
[x: string]: IIcon;
|
|
48
|
+
[x: string]: IIcon | typeof SpinnerIcon;
|
|
48
49
|
};
|
|
49
50
|
export default _default;
|
package/dist/icons/index.js
CHANGED
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
var _a;
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
-
exports.ZoomOutIcon = exports.ZoomInIcon = exports.WishlistIcon = exports.UndoIcon = exports.TagIcon = exports.SwitchIcon = exports.ShareIcon = exports.SettingsIcon = exports.SearchIcon = exports.RulerIcon = exports.RemoveIcon = exports.RedoIcon = exports.PlayIcon = exports.PauseIcon = exports.NewWindowIcon = exports.MoreIcon = exports.MenuIcon = exports.MailIcon = exports.InfoIcon = exports.ImageIcon = exports.HeartIcon = exports.EditIcon = exports.DragIcon = exports.DownloadIcon = exports.DoubleCaretRightIcon = exports.DoubleCaretLeftIcon = exports.DeleteIcon = exports.CopyIcon = exports.ColorPickerIcon = exports.ClipboardIcon = exports.CheckmateIcon = exports.CartIcon = exports.CaretRightIcon = exports.CaretLeftIcon = exports.CaretUpIcon = exports.CaretDownIcon = exports.CameraIcon = exports.ArrowRightIcon = exports.ArrowLeftIcon = exports.AddIcon = void 0;
|
|
7
|
+
exports.SpinnerIcon = exports.ZoomOutIcon = exports.ZoomInIcon = exports.WishlistIcon = exports.UndoIcon = exports.TagIcon = exports.SwitchIcon = exports.ShareIcon = exports.SettingsIcon = exports.SearchIcon = exports.RulerIcon = exports.RemoveIcon = exports.RedoIcon = exports.PlayIcon = exports.PauseIcon = exports.NewWindowIcon = exports.MoreIcon = exports.MenuIcon = exports.MailIcon = exports.InfoIcon = exports.ImageIcon = exports.HeartIcon = exports.EditIcon = exports.DragIcon = exports.DownloadIcon = exports.DoubleCaretRightIcon = exports.DoubleCaretLeftIcon = exports.DeleteIcon = exports.CopyIcon = exports.ColorPickerIcon = exports.ClipboardIcon = exports.CheckmateIcon = exports.CartIcon = exports.CaretRightIcon = exports.CaretLeftIcon = exports.CaretUpIcon = exports.CaretDownIcon = exports.CameraIcon = exports.ArrowRightIcon = exports.ArrowLeftIcon = exports.AddIcon = void 0;
|
|
8
8
|
var Add_1 = __importDefault(require("./Add"));
|
|
9
9
|
exports.AddIcon = Add_1.default;
|
|
10
10
|
var ArrowLeft_1 = __importDefault(require("./ArrowLeft"));
|
|
@@ -85,6 +85,8 @@ var ZoomIn_1 = __importDefault(require("./ZoomIn"));
|
|
|
85
85
|
exports.ZoomInIcon = ZoomIn_1.default;
|
|
86
86
|
var ZoomOut_1 = __importDefault(require("./ZoomOut"));
|
|
87
87
|
exports.ZoomOutIcon = ZoomOut_1.default;
|
|
88
|
+
var Spinner_1 = __importDefault(require("./Spinner"));
|
|
89
|
+
exports.SpinnerIcon = Spinner_1.default;
|
|
88
90
|
exports.default = (_a = {},
|
|
89
91
|
_a[Add_1.default.iconName] = Add_1.default,
|
|
90
92
|
_a[ArrowLeft_1.default.iconName] = ArrowLeft_1.default,
|
|
@@ -126,4 +128,5 @@ exports.default = (_a = {},
|
|
|
126
128
|
_a[Wishlist_1.default.iconName] = Wishlist_1.default,
|
|
127
129
|
_a[ZoomIn_1.default.iconName] = ZoomIn_1.default,
|
|
128
130
|
_a[ZoomOut_1.default.iconName] = ZoomOut_1.default,
|
|
131
|
+
_a[Spinner_1.default.iconName] = Spinner_1.default,
|
|
129
132
|
_a);
|