etudes 1.2.0 → 2.1.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/README.md +1 -1
- package/lib/Accordion.d.ts +80 -71
- package/lib/Accordion.js +173 -183
- package/lib/Accordion.js.map +1 -1
- package/lib/BurgerButton.d.ts +20 -7
- package/lib/BurgerButton.js +113 -20
- package/lib/BurgerButton.js.map +1 -1
- package/lib/Conditional.d.ts +2 -3
- package/lib/Conditional.js +0 -1
- package/lib/Conditional.js.map +1 -1
- package/lib/DebugConsole.d.ts +14 -23
- package/lib/DebugConsole.js +86 -87
- package/lib/DebugConsole.js.map +1 -1
- package/lib/Dial.d.ts +53 -16
- package/lib/Dial.js +121 -35
- package/lib/Dial.js.map +1 -1
- package/lib/Dropdown.d.ts +68 -83
- package/lib/Dropdown.js +226 -161
- package/lib/Dropdown.js.map +1 -1
- package/lib/Each.d.ts +2 -2
- package/lib/Each.js.map +1 -1
- package/lib/ExtractChild.d.ts +5 -4
- package/lib/ExtractChild.js +13 -11
- package/lib/ExtractChild.js.map +1 -1
- package/lib/ExtractChildren.d.ts +2 -2
- package/lib/ExtractChildren.js +7 -5
- package/lib/ExtractChildren.js.map +1 -1
- package/lib/FlatSVG.d.ts +30 -25
- package/lib/FlatSVG.js +28 -37
- package/lib/FlatSVG.js.map +1 -1
- package/lib/List.d.ts +97 -54
- package/lib/List.js +124 -63
- package/lib/List.js.map +1 -1
- package/lib/MasonryGrid.d.ts +27 -15
- package/lib/MasonryGrid.js +163 -148
- package/lib/MasonryGrid.js.map +1 -1
- package/lib/Panorama.d.ts +100 -21
- package/lib/Panorama.js +45 -44
- package/lib/Panorama.js.map +1 -1
- package/lib/PanoramaSlider.d.ts +65 -23
- package/lib/PanoramaSlider.js +150 -45
- package/lib/PanoramaSlider.js.map +1 -1
- package/lib/RangeSlider.d.ts +29 -89
- package/lib/RangeSlider.js +272 -286
- package/lib/RangeSlider.js.map +1 -1
- package/lib/Repeat.d.ts +4 -3
- package/lib/Repeat.js +3 -2
- package/lib/Repeat.js.map +1 -1
- package/lib/RotatingGallery.d.ts +38 -36
- package/lib/RotatingGallery.js +47 -17
- package/lib/RotatingGallery.js.map +1 -1
- package/lib/SelectableButton.d.ts +13 -4
- package/lib/SelectableButton.js +3 -14
- package/lib/SelectableButton.js.map +1 -1
- package/lib/Slider.d.ts +103 -41
- package/lib/Slider.js +182 -82
- package/lib/Slider.js.map +1 -1
- package/lib/StepwiseSlider.d.ts +146 -59
- package/lib/StepwiseSlider.js +248 -142
- package/lib/StepwiseSlider.js.map +1 -1
- package/lib/SwipeContainer.d.ts +13 -5
- package/lib/SwipeContainer.js +5 -15
- package/lib/SwipeContainer.js.map +1 -1
- package/lib/TextField.d.ts +1 -1
- package/lib/TextField.js +5 -15
- package/lib/TextField.js.map +1 -1
- package/lib/Video.d.ts +30 -51
- package/lib/Video.js +77 -119
- package/lib/Video.js.map +1 -1
- package/lib/WithTooltip.d.ts +16 -18
- package/lib/WithTooltip.js +167 -101
- package/lib/WithTooltip.js.map +1 -1
- package/lib/hooks/useDocumentTitle.d.ts +2 -1
- package/lib/hooks/useDocumentTitle.js +2 -1
- package/lib/hooks/useDocumentTitle.js.map +1 -1
- package/lib/hooks/useDragEffect.d.ts +26 -17
- package/lib/hooks/useDragEffect.js +30 -20
- package/lib/hooks/useDragEffect.js.map +1 -1
- package/lib/hooks/useElementRect.d.ts +2 -1
- package/lib/hooks/useElementRect.js +5 -4
- package/lib/hooks/useElementRect.js.map +1 -1
- package/lib/hooks/useInterval.d.ts +3 -3
- package/lib/hooks/useInterval.js +1 -1
- package/lib/hooks/useInterval.js.map +1 -1
- package/lib/hooks/useLoadImageEffect.d.ts +8 -8
- package/lib/hooks/useLoadImageEffect.js.map +1 -1
- package/lib/hooks/usePrevious.d.ts +6 -0
- package/lib/hooks/usePrevious.js +17 -0
- package/lib/hooks/usePrevious.js.map +1 -0
- package/lib/hooks/useResizeEffect.d.ts +3 -3
- package/lib/hooks/useResizeEffect.js +5 -8
- package/lib/hooks/useResizeEffect.js.map +1 -1
- package/lib/hooks/useSearchParamState.d.ts +11 -8
- package/lib/hooks/useSearchParamState.js +14 -10
- package/lib/hooks/useSearchParamState.js.map +1 -1
- package/lib/providers/I18nProvider.d.ts +179 -0
- package/lib/providers/I18nProvider.js +470 -0
- package/lib/providers/I18nProvider.js.map +1 -0
- package/lib/providers/ScrollPositionProvider.d.ts +15 -0
- package/lib/providers/ScrollPositionProvider.js +112 -0
- package/lib/providers/ScrollPositionProvider.js.map +1 -0
- package/lib/utils/asClassNameDict.d.ts +3 -0
- package/lib/utils/asClassNameDict.js +7 -0
- package/lib/utils/asClassNameDict.js.map +1 -0
- package/lib/utils/asComponentDict.d.ts +5 -0
- package/lib/utils/asComponentDict.js +23 -0
- package/lib/utils/asComponentDict.js.map +1 -0
- package/lib/utils/asStyleDict.d.ts +4 -0
- package/lib/utils/asStyleDict.js +7 -0
- package/lib/utils/asStyleDict.js.map +1 -0
- package/lib/utils/cloneStyledElement.d.ts +18 -0
- package/lib/utils/cloneStyledElement.js +63 -0
- package/lib/utils/cloneStyledElement.js.map +1 -0
- package/lib/utils/styles.d.ts +2 -0
- package/lib/utils/styles.js +22 -0
- package/lib/utils/styles.js.map +1 -0
- package/lib/utils/useDebug.d.ts +2 -0
- package/lib/utils/useDebug.js +46 -0
- package/lib/utils/useDebug.js.map +1 -0
- package/package.json +31 -38
- package/lib/AbstractSelectableCollection.d.ts +0 -94
- package/lib/AbstractSelectableCollection.js +0 -151
- package/lib/AbstractSelectableCollection.js.map +0 -1
- package/lib/types/index.d.ts +0 -7
- package/lib/types/index.js +0 -3
- package/lib/types/index.js.map +0 -1
package/lib/SwipeContainer.js
CHANGED
|
@@ -1,8 +1,4 @@
|
|
|
1
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
2
|
var __assign = (this && this.__assign) || function () {
|
|
7
3
|
__assign = Object.assign || function(t) {
|
|
8
4
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
@@ -64,17 +60,14 @@ var __read = (this && this.__read) || function (o, n) {
|
|
|
64
60
|
}
|
|
65
61
|
return ar;
|
|
66
62
|
};
|
|
67
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
68
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
69
|
-
};
|
|
70
63
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
71
64
|
var react_1 = __importStar(require("react"));
|
|
72
65
|
var spase_1 = require("spase");
|
|
73
|
-
var styled_components_1 = __importDefault(require("styled-components"));
|
|
74
66
|
/**
|
|
75
|
-
* An empty component with a backing `<div>` element that detects swipe
|
|
67
|
+
* An empty component with a backing `<div>` element that detects swipe
|
|
68
|
+
* gestures.
|
|
76
69
|
*/
|
|
77
|
-
function
|
|
70
|
+
exports.default = (0, react_1.forwardRef)(function (_a, ref) {
|
|
78
71
|
var children = _a.children, _b = _a.isEnabled, isEnabled = _b === void 0 ? true : _b, _c = _a.threshold, threshold = _c === void 0 ? 0.5 : _c, onSwipeDown = _a.onSwipeDown, onSwipeLeft = _a.onSwipeLeft, onSwipeRight = _a.onSwipeRight, onSwipeUp = _a.onSwipeUp, props = __rest(_a, ["children", "isEnabled", "threshold", "onSwipeDown", "onSwipeLeft", "onSwipeRight", "onSwipeUp"]);
|
|
79
72
|
var _d = __read((0, react_1.useState)(undefined), 2), dragStartPosition = _d[0], setDragStartPosition = _d[1];
|
|
80
73
|
var _e = __read((0, react_1.useState)(undefined), 2), dragEndPosition = _e[0], setDragEndPosition = _e[1];
|
|
@@ -132,9 +125,6 @@ function SwipeContainer(_a) {
|
|
|
132
125
|
setDragEndPosition(undefined);
|
|
133
126
|
setDragStartTime(NaN);
|
|
134
127
|
};
|
|
135
|
-
return (react_1.default.createElement(
|
|
136
|
-
}
|
|
137
|
-
exports.default = SwipeContainer;
|
|
138
|
-
var StyledRoot = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n\n"], ["\n\n"])));
|
|
139
|
-
var templateObject_1;
|
|
128
|
+
return (react_1.default.createElement("div", __assign({}, props, { ref: ref, onMouseDown: function (event) { return onDragStart(event.clientX, event.clientY); }, onMouseLeave: function () { return onDragCancel(); }, onMouseMove: function (event) { return onDragMove(event.clientX, event.clientY); }, onMouseUp: function () { return onDragEnd(); }, onTouchEnd: function () { return onDragEnd(); }, onTouchMove: function (event) { return onDragMove(event.targetTouches[0].clientX, event.targetTouches[0].clientY); }, onTouchStart: function (event) { return onDragStart(event.targetTouches[0].clientX, event.targetTouches[0].clientY); } }), children));
|
|
129
|
+
});
|
|
140
130
|
//# sourceMappingURL=SwipeContainer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SwipeContainer.js","sourceRoot":"/","sources":["SwipeContainer.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SwipeContainer.js","sourceRoot":"/","sources":["SwipeContainer.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAmE;AACnE,+BAA6B;AAW7B;;;GAGG;AACH,kBAAe,IAAA,kBAAU,EAAsC,UAAC,EAS/D,EAAE,GAAG;IARJ,IAAA,QAAQ,cAAA,EACR,iBAAgB,EAAhB,SAAS,mBAAG,IAAI,KAAA,EAChB,iBAAe,EAAf,SAAS,mBAAG,GAAG,KAAA,EACf,WAAW,iBAAA,EACX,WAAW,iBAAA,EACX,YAAY,kBAAA,EACZ,SAAS,eAAA,EACN,KAAK,cARsD,iGAS/D,CADS;IAEF,IAAA,KAAA,OAA4C,IAAA,gBAAQ,EAAoB,SAAS,CAAC,IAAA,EAAjF,iBAAiB,QAAA,EAAE,oBAAoB,QAA0C,CAAA;IAClF,IAAA,KAAA,OAAwC,IAAA,gBAAQ,EAAoB,SAAS,CAAC,IAAA,EAA7E,eAAe,QAAA,EAAE,kBAAkB,QAA0C,CAAA;IAC9E,IAAA,KAAA,OAAoC,IAAA,gBAAQ,EAAC,GAAG,CAAC,IAAA,EAAhD,aAAa,QAAA,EAAE,gBAAgB,QAAiB,CAAA;IAEvD,IAAM,WAAW,GAAG,UAAC,CAAS,EAAE,CAAS;QACvC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;YAAE,OAAO,YAAY,EAAE,CAAA;QAC/C,oBAAoB,CAAC,IAAI,aAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IACzC,CAAC,CAAA;IAED,IAAM,UAAU,GAAG,UAAC,CAAS,EAAE,CAAS;QACtC,IAAM,aAAa,GAAG,iBAAiB,CAAA;QAEvC,IAAI,aAAa,KAAK,SAAS;YAAE,OAAM;QAEvC,IAAM,WAAW,GAAG,aAAa,CAAC,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC,CAAC,KAAK,CAAC,CAAA;QAClE,IAAM,YAAY,GAAG,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;QAE1C,IAAI,CAAC,WAAW;YAAE,OAAM;QAExB,IAAI,CAAC,YAAY;YAAE,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAA;QAE/C,kBAAkB,CAAC,IAAI,aAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC,CAAA;IAED,IAAM,SAAS,GAAG;QAChB,IAAM,IAAI,GAAG,aAAa,CAAA;QAC1B,IAAM,aAAa,GAAG,iBAAiB,CAAA;QACvC,IAAM,WAAW,GAAG,eAAe,CAAA;QAEnC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,aAAa,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS;YAAE,OAAM;QAEnF,IAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;QAC5B,IAAM,EAAE,GAAG,WAAW,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAA;QAC1C,IAAM,EAAE,GAAG,WAAW,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAA;QACxC,IAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;QAClB,IAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;QAElB,IAAI,SAAS,EAAE;YACb,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBAC5D,IAAI,EAAE,GAAG,CAAC,EAAE;oBACV,YAAY,aAAZ,YAAY,uBAAZ,YAAY,EAAI,CAAA;iBACjB;qBACI;oBACH,WAAW,aAAX,WAAW,uBAAX,WAAW,EAAI,CAAA;iBAChB;aACF;iBACI,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;gBACjE,IAAI,EAAE,GAAG,CAAC,EAAE;oBACV,WAAW,aAAX,WAAW,uBAAX,WAAW,EAAI,CAAA;iBAChB;qBACI;oBACH,SAAS,aAAT,SAAS,uBAAT,SAAS,EAAI,CAAA;iBACd;aACF;SACF;QAED,YAAY,EAAE,CAAA;IAChB,CAAC,CAAA;IAED,IAAM,YAAY,GAAG;QACnB,oBAAoB,CAAC,SAAS,CAAC,CAAA;QAC/B,kBAAkB,CAAC,SAAS,CAAC,CAAA;QAC7B,gBAAgB,CAAC,GAAG,CAAC,CAAA;IACvB,CAAC,CAAA;IAED,OAAO,CACL,kDACM,KAAK,IACT,GAAG,EAAE,GAAG,EACR,WAAW,EAAE,UAAA,KAAK,IAAI,OAAA,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,EAAzC,CAAyC,EAC/D,YAAY,EAAE,cAAM,OAAA,YAAY,EAAE,EAAd,CAAc,EAClC,WAAW,EAAE,UAAA,KAAK,IAAI,OAAA,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,EAAxC,CAAwC,EAC9D,SAAS,EAAE,cAAM,OAAA,SAAS,EAAE,EAAX,CAAW,EAC5B,UAAU,EAAE,cAAM,OAAA,SAAS,EAAE,EAAX,CAAW,EAC7B,WAAW,EAAE,UAAA,KAAK,IAAI,OAAA,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAA1E,CAA0E,EAChG,YAAY,EAAE,UAAA,KAAK,IAAI,OAAA,WAAW,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAA3E,CAA2E,KAEjG,QAAQ,CACL,CACP,CAAA;AACH,CAAC,CAAC,CAAA","sourcesContent":["import React, { forwardRef, HTMLAttributes, useState } from 'react'\nimport { Point } from 'spase'\n\nexport type SwipeContainerProps = HTMLAttributes<HTMLDivElement> & {\n isEnabled?: boolean\n threshold?: number\n onSwipeDown?: () => void\n onSwipeLeft?: () => void\n onSwipeRight?: () => void\n onSwipeUp?: () => void\n}\n\n/**\n * An empty component with a backing `<div>` element that detects swipe\n * gestures.\n */\nexport default forwardRef<HTMLDivElement, SwipeContainerProps>(({\n children,\n isEnabled = true,\n threshold = 0.5,\n onSwipeDown,\n onSwipeLeft,\n onSwipeRight,\n onSwipeUp,\n ...props\n}, ref) => {\n const [dragStartPosition, setDragStartPosition] = useState<Point | undefined>(undefined)\n const [dragEndPosition, setDragEndPosition] = useState<Point | undefined>(undefined)\n const [dragStartTime, setDragStartTime] = useState(NaN)\n\n const onDragStart = (x: number, y: number) => {\n if (isNaN(x) || isNaN(y)) return onDragCancel()\n setDragStartPosition(new Point([x, y]))\n }\n\n const onDragMove = (x: number, y: number) => {\n const startPosition = dragStartPosition\n\n if (startPosition === undefined) return\n\n const hasMovement = startPosition.x !== x || startPosition.y !== y\n const hasStartTime = !isNaN(dragStartTime)\n\n if (!hasMovement) return\n\n if (!hasStartTime) setDragStartTime(Date.now())\n\n setDragEndPosition(new Point([x, y]))\n }\n\n const onDragEnd = () => {\n const time = dragStartTime\n const startPosition = dragStartPosition\n const endPosition = dragEndPosition\n\n if (isNaN(time) || startPosition === undefined || endPosition === undefined) return\n\n const dt = Date.now() - time\n const dx = endPosition.x - startPosition.x\n const dy = endPosition.y - endPosition.y\n const vx = dx / dt\n const vy = dy / dt\n\n if (isEnabled) {\n if (Math.abs(vx) >= threshold && Math.abs(vx) > Math.abs(vy)) {\n if (vx > 0) {\n onSwipeRight?.()\n }\n else {\n onSwipeLeft?.()\n }\n }\n else if (Math.abs(vy) >= threshold && Math.abs(vy) > Math.abs(vx)) {\n if (vy > 0) {\n onSwipeDown?.()\n }\n else {\n onSwipeUp?.()\n }\n }\n }\n\n onDragCancel()\n }\n\n const onDragCancel = () => {\n setDragStartPosition(undefined)\n setDragEndPosition(undefined)\n setDragStartTime(NaN)\n }\n\n return (\n <div\n {...props}\n ref={ref}\n onMouseDown={event => onDragStart(event.clientX, event.clientY)}\n onMouseLeave={() => onDragCancel()}\n onMouseMove={event => onDragMove(event.clientX, event.clientY)}\n onMouseUp={() => onDragEnd()}\n onTouchEnd={() => onDragEnd()}\n onTouchMove={event => onDragMove(event.targetTouches[0].clientX, event.targetTouches[0].clientY)}\n onTouchStart={event => onDragStart(event.targetTouches[0].clientX, event.targetTouches[0].clientY)}\n >\n {children}\n </div>\n )\n})\n"]}
|
package/lib/TextField.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React, { HTMLAttributes } from 'react';
|
|
2
|
-
export
|
|
2
|
+
export type TextFieldProps = HTMLAttributes<HTMLInputElement> & {
|
|
3
3
|
value?: string;
|
|
4
4
|
onFocus?: (value: string) => void;
|
|
5
5
|
onUnfocus?: (value: string) => void;
|
package/lib/TextField.js
CHANGED
|
@@ -1,8 +1,4 @@
|
|
|
1
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
2
|
var __assign = (this && this.__assign) || function () {
|
|
7
3
|
__assign = Object.assign || function(t) {
|
|
8
4
|
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
@@ -48,25 +44,19 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
48
44
|
}
|
|
49
45
|
return t;
|
|
50
46
|
};
|
|
51
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
52
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
53
|
-
};
|
|
54
47
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
55
48
|
var react_1 = __importStar(require("react"));
|
|
56
|
-
var styled_components_1 = __importDefault(require("styled-components"));
|
|
57
49
|
exports.default = (0, react_1.forwardRef)(function (_a, ref) {
|
|
58
50
|
var _b = _a.value, value = _b === void 0 ? '' : _b, onFocus = _a.onFocus, onUnfocus = _a.onUnfocus, onValueChange = _a.onValueChange, props = __rest(_a, ["value", "onFocus", "onUnfocus", "onValueChange"]);
|
|
59
|
-
return (react_1.default.createElement(
|
|
51
|
+
return (react_1.default.createElement("input", __assign({}, props, { ref: ref, type: 'text', value: value, onBlur: function (_a) {
|
|
52
|
+
var target = _a.target;
|
|
53
|
+
return onUnfocus === null || onUnfocus === void 0 ? void 0 : onUnfocus(target.value);
|
|
54
|
+
}, onChange: function (_a) {
|
|
60
55
|
var target = _a.target;
|
|
61
56
|
return onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(target.value);
|
|
62
57
|
}, onFocus: function (_a) {
|
|
63
58
|
var target = _a.target;
|
|
64
59
|
return onFocus === null || onFocus === void 0 ? void 0 : onFocus(target.value);
|
|
65
|
-
}
|
|
66
|
-
var target = _a.target;
|
|
67
|
-
return onUnfocus === null || onUnfocus === void 0 ? void 0 : onUnfocus(target.value);
|
|
68
|
-
}, value: value })));
|
|
60
|
+
} })));
|
|
69
61
|
});
|
|
70
|
-
var StyledRoot = styled_components_1.default.input(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background: #fff;\n box-sizing: border-box;\n color: #000;\n display: block;\n height: 40px;\n padding: 0 1rem;\n text-align: left;\n width: 100px;\n"], ["\n background: #fff;\n box-sizing: border-box;\n color: #000;\n display: block;\n height: 40px;\n padding: 0 1rem;\n text-align: left;\n width: 100px;\n"])));
|
|
71
|
-
var templateObject_1;
|
|
72
62
|
//# sourceMappingURL=TextField.js.map
|
package/lib/TextField.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextField.js","sourceRoot":"/","sources":["TextField.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TextField.js","sourceRoot":"/","sources":["TextField.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAkF;AASlF,kBAAe,IAAA,kBAAU,EAAmC,UAAC,EAM5D,EAAE,GAAG;IALJ,IAAA,aAAU,EAAV,KAAK,mBAAG,EAAE,KAAA,EACV,OAAO,aAAA,EACP,SAAS,eAAA,EACT,aAAa,mBAAA,EACV,KAAK,cALmD,kDAM5D,CADS;IACC,OAAA,CACT,oDACM,KAAK,IACT,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,UAAC,EAAwC;gBAAtC,MAAM,YAAA;YAAqC,OAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAG,MAAM,CAAC,KAAK,CAAC;QAAzB,CAAyB,EAC/E,QAAQ,EAAE,UAAC,EAAyC;gBAAvC,MAAM,YAAA;YAAsC,OAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAG,MAAM,CAAC,KAAK,CAAC;QAA7B,CAA6B,EACtF,OAAO,EAAE,UAAC,EAAwC;gBAAtC,MAAM,YAAA;YAAqC,OAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAG,MAAM,CAAC,KAAK,CAAC;QAAvB,CAAuB,IAC9E,CACH,CAAA;CAAA,CAAC,CAAA","sourcesContent":["import React, { ChangeEvent, FocusEvent, forwardRef, HTMLAttributes } from 'react'\n\nexport type TextFieldProps = HTMLAttributes<HTMLInputElement> & {\n value?: string\n onFocus?: (value: string) => void\n onUnfocus?: (value: string) => void\n onValueChange?: (value: string) => void\n}\n\nexport default forwardRef<HTMLInputElement, TextFieldProps>(({\n value = '',\n onFocus,\n onUnfocus,\n onValueChange,\n ...props\n}, ref) => (\n <input\n {...props}\n ref={ref}\n type='text'\n value={value}\n onBlur={({ target }: FocusEvent<HTMLInputElement>) => onUnfocus?.(target.value)}\n onChange={({ target }: ChangeEvent<HTMLInputElement>) => onValueChange?.(target.value)}\n onFocus={({ target }: FocusEvent<HTMLInputElement>) => onFocus?.(target.value)}\n />\n))\n"]}
|
package/lib/Video.d.ts
CHANGED
|
@@ -1,53 +1,32 @@
|
|
|
1
|
-
import React, {
|
|
2
|
-
export
|
|
3
|
-
autoLoop
|
|
4
|
-
autoPlay
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
onCanPlay: () => void;
|
|
10
|
-
onEnd: () => void;
|
|
11
|
-
onFullscreenChange: (isFullscreen: boolean) => void;
|
|
12
|
-
onPause: () => void;
|
|
13
|
-
onPlay: () => void;
|
|
14
|
-
playsInline: boolean;
|
|
1
|
+
import React, { HTMLAttributes } from 'react';
|
|
2
|
+
export type VideoProps = HTMLAttributes<HTMLDivElement> & {
|
|
3
|
+
autoLoop?: boolean;
|
|
4
|
+
autoPlay?: boolean;
|
|
5
|
+
hasControls?: boolean;
|
|
6
|
+
isCover?: boolean;
|
|
7
|
+
isMuted?: boolean;
|
|
8
|
+
playsInline?: boolean;
|
|
15
9
|
posterSrc?: string;
|
|
16
10
|
src: string;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
};
|
|
40
|
-
constructor(props: Props);
|
|
41
|
-
get isPaused(): boolean;
|
|
42
|
-
componentDidMount(): void;
|
|
43
|
-
componentWillUnmount(): void;
|
|
44
|
-
componentDidUpdate(prevProps: Props, prevState: State): void;
|
|
45
|
-
onFullscreenChange: (event: Event) => void;
|
|
46
|
-
onCanPlay(element: HTMLVideoElement): void;
|
|
47
|
-
onPlay(element: HTMLVideoElement): void;
|
|
48
|
-
onPause(element: HTMLVideoElement): void;
|
|
49
|
-
onEnd(element: HTMLVideoElement): void;
|
|
50
|
-
play(): void;
|
|
51
|
-
pause(): void;
|
|
52
|
-
render(): JSX.Element;
|
|
53
|
-
}
|
|
11
|
+
onCanPlay?: () => void;
|
|
12
|
+
onEnd?: () => void;
|
|
13
|
+
onFullscreenChange?: (isFullscreen: boolean) => void;
|
|
14
|
+
onPause?: () => void;
|
|
15
|
+
onPlay?: () => void;
|
|
16
|
+
};
|
|
17
|
+
declare const _default: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
18
|
+
autoLoop?: boolean | undefined;
|
|
19
|
+
autoPlay?: boolean | undefined;
|
|
20
|
+
hasControls?: boolean | undefined;
|
|
21
|
+
isCover?: boolean | undefined;
|
|
22
|
+
isMuted?: boolean | undefined;
|
|
23
|
+
playsInline?: boolean | undefined;
|
|
24
|
+
posterSrc?: string | undefined;
|
|
25
|
+
src: string;
|
|
26
|
+
onCanPlay?: (() => void) | undefined;
|
|
27
|
+
onEnd?: (() => void) | undefined;
|
|
28
|
+
onFullscreenChange?: ((isFullscreen: boolean) => void) | undefined;
|
|
29
|
+
onPause?: (() => void) | undefined;
|
|
30
|
+
onPlay?: (() => void) | undefined;
|
|
31
|
+
} & React.RefAttributes<HTMLDivElement>>;
|
|
32
|
+
export default _default;
|
package/lib/Video.js
CHANGED
|
@@ -1,22 +1,14 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
15
10
|
};
|
|
16
|
-
|
|
17
|
-
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
18
|
-
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
19
|
-
return cooked;
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
20
12
|
};
|
|
21
13
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
22
14
|
if (k2 === undefined) k2 = k;
|
|
@@ -41,126 +33,92 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
41
33
|
__setModuleDefault(result, mod);
|
|
42
34
|
return result;
|
|
43
35
|
};
|
|
36
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
37
|
+
var t = {};
|
|
38
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
39
|
+
t[p] = s[p];
|
|
40
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
41
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
42
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
43
|
+
t[p[i]] = s[p[i]];
|
|
44
|
+
}
|
|
45
|
+
return t;
|
|
46
|
+
};
|
|
44
47
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
45
48
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
46
49
|
};
|
|
47
50
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
51
|
var react_1 = __importStar(require("react"));
|
|
49
|
-
var
|
|
50
|
-
var
|
|
51
|
-
var
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
52
|
+
var asStyleDict_1 = __importDefault(require("./utils/asStyleDict"));
|
|
53
|
+
var useDebug_1 = __importDefault(require("./utils/useDebug"));
|
|
54
|
+
var debug = (0, useDebug_1.default)('video');
|
|
55
|
+
exports.default = (0, react_1.forwardRef)(function (_a, ref) {
|
|
56
|
+
var _b, _c;
|
|
57
|
+
var _d = _a.autoLoop, autoLoop = _d === void 0 ? true : _d, _e = _a.autoPlay, autoPlay = _e === void 0 ? true : _e, _f = _a.hasControls, hasControls = _f === void 0 ? false : _f, _g = _a.isCover, isCover = _g === void 0 ? true : _g, _h = _a.isMuted, isMuted = _h === void 0 ? true : _h, _j = _a.playsInline, playsInline = _j === void 0 ? true : _j, posterSrc = _a.posterSrc, src = _a.src, onCanPlay = _a.onCanPlay, onEnd = _a.onEnd, onFullscreenChange = _a.onFullscreenChange, onPause = _a.onPause, onPlay = _a.onPlay, props = __rest(_a, ["autoLoop", "autoPlay", "hasControls", "isCover", "isMuted", "playsInline", "posterSrc", "src", "onCanPlay", "onEnd", "onFullscreenChange", "onPause", "onPlay"]);
|
|
58
|
+
var bodyRef = (0, react_1.useRef)(null);
|
|
59
|
+
var isPaused = (_c = (_b = bodyRef.current) === null || _b === void 0 ? void 0 : _b.paused) !== null && _c !== void 0 ? _c : false;
|
|
60
|
+
(0, react_1.useEffect)(function () {
|
|
61
|
+
debug("Initializing video with src <".concat(src, ">..."), 'OK');
|
|
62
|
+
if (!bodyRef.current)
|
|
63
|
+
return;
|
|
64
|
+
bodyRef.current.muted = isMuted;
|
|
65
|
+
bodyRef.current.load();
|
|
66
|
+
bodyRef.current.addEventListener('webkitfullscreenchange', fullscreenChangeHandler);
|
|
67
|
+
bodyRef.current.addEventListener('mozfullscreenchange', fullscreenChangeHandler);
|
|
68
|
+
bodyRef.current.addEventListener('fullscreenchange', fullscreenChangeHandler);
|
|
69
|
+
return function () {
|
|
70
|
+
var _a, _b, _c;
|
|
71
|
+
debug("Deinitializing video with src <".concat(src, ">..."), 'OK');
|
|
72
|
+
pause();
|
|
73
|
+
(_a = bodyRef.current) === null || _a === void 0 ? void 0 : _a.removeEventListener('webkitfullscreenchange', fullscreenChangeHandler);
|
|
74
|
+
(_b = bodyRef.current) === null || _b === void 0 ? void 0 : _b.removeEventListener('mozfullscreenchange', fullscreenChangeHandler);
|
|
75
|
+
(_c = bodyRef.current) === null || _c === void 0 ? void 0 : _c.removeEventListener('fullscreenchange', fullscreenChangeHandler);
|
|
64
76
|
};
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
return false;
|
|
72
|
-
return this.nodeRefs.video.current.paused;
|
|
73
|
-
},
|
|
74
|
-
enumerable: false,
|
|
75
|
-
configurable: true
|
|
76
|
-
});
|
|
77
|
-
Video.prototype.componentDidMount = function () {
|
|
78
|
-
var videoNode = this.nodeRefs.video.current;
|
|
79
|
-
if (videoNode) {
|
|
80
|
-
// HACK: https://github.com/facebook/react/issues/10389
|
|
81
|
-
videoNode.muted = this.props.isMuted;
|
|
82
|
-
videoNode.load();
|
|
83
|
-
videoNode.addEventListener('webkitfullscreenchange', this.onFullscreenChange);
|
|
84
|
-
videoNode.addEventListener('mozfullscreenchange', this.onFullscreenChange);
|
|
85
|
-
videoNode.addEventListener('fullscreenchange', this.onFullscreenChange);
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
Video.prototype.componentWillUnmount = function () {
|
|
89
|
-
var videoNode = this.nodeRefs.video.current;
|
|
90
|
-
if (videoNode) {
|
|
91
|
-
videoNode.removeEventListener('webkitfullscreenchange', this.onFullscreenChange);
|
|
92
|
-
videoNode.removeEventListener('mozfullscreenchange', this.onFullscreenChange);
|
|
93
|
-
videoNode.removeEventListener('fullscreenchange', this.onFullscreenChange);
|
|
94
|
-
}
|
|
95
|
-
this.pause();
|
|
96
|
-
};
|
|
97
|
-
Video.prototype.componentDidUpdate = function (prevProps, prevState) {
|
|
98
|
-
if ((prevProps.isMuted !== this.props.isMuted) && this.nodeRefs.video.current) {
|
|
99
|
-
// HACK: https://github.com/facebook/react/issues/10389
|
|
100
|
-
this.nodeRefs.video.current.muted = this.props.isMuted;
|
|
101
|
-
}
|
|
102
|
-
if (prevProps.autoPlay !== this.props.autoPlay) {
|
|
103
|
-
if (this.props.autoPlay) {
|
|
104
|
-
this.play();
|
|
105
|
-
}
|
|
106
|
-
else {
|
|
107
|
-
this.pause();
|
|
108
|
-
}
|
|
109
|
-
}
|
|
77
|
+
}, [src]);
|
|
78
|
+
var fullscreenChangeHandler = function (event) {
|
|
79
|
+
var isFullscreen = document.fullScreen || document.mozFullScreen || document.webkitIsFullScreen;
|
|
80
|
+
if (isFullscreen === undefined)
|
|
81
|
+
return;
|
|
82
|
+
onFullscreenChange === null || onFullscreenChange === void 0 ? void 0 : onFullscreenChange(isFullscreen);
|
|
110
83
|
};
|
|
111
|
-
|
|
84
|
+
var canPlayHandler = function (event) {
|
|
112
85
|
debug('Checking if video is ready to play...', 'OK');
|
|
113
|
-
if (
|
|
114
|
-
|
|
86
|
+
if (autoPlay && isPaused) {
|
|
87
|
+
play();
|
|
115
88
|
}
|
|
116
|
-
|
|
89
|
+
onCanPlay === null || onCanPlay === void 0 ? void 0 : onCanPlay();
|
|
117
90
|
};
|
|
118
|
-
|
|
91
|
+
var playHandler = function (event) {
|
|
119
92
|
debug('Playing video...', 'OK');
|
|
120
|
-
|
|
93
|
+
onPlay === null || onPlay === void 0 ? void 0 : onPlay();
|
|
121
94
|
};
|
|
122
|
-
|
|
95
|
+
var pauseHandler = function (event) {
|
|
123
96
|
debug('Pausing video...', 'OK');
|
|
124
|
-
|
|
97
|
+
onPause === null || onPause === void 0 ? void 0 : onPause();
|
|
125
98
|
};
|
|
126
|
-
|
|
99
|
+
var endHandler = function (event) {
|
|
127
100
|
debug('Ending video...', 'OK');
|
|
128
|
-
|
|
101
|
+
onEnd === null || onEnd === void 0 ? void 0 : onEnd();
|
|
129
102
|
};
|
|
130
|
-
|
|
131
|
-
if (!
|
|
103
|
+
var play = function () {
|
|
104
|
+
if (!bodyRef.current)
|
|
132
105
|
return;
|
|
133
|
-
|
|
106
|
+
bodyRef.current.play();
|
|
134
107
|
};
|
|
135
|
-
|
|
136
|
-
if (!
|
|
108
|
+
var pause = function () {
|
|
109
|
+
if (!bodyRef.current)
|
|
137
110
|
return;
|
|
138
|
-
|
|
111
|
+
bodyRef.current.pause();
|
|
139
112
|
};
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
};
|
|
147
|
-
|
|
148
|
-
autoLoop:
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
isCover: true,
|
|
152
|
-
isMuted: true,
|
|
153
|
-
onCanPlay: function () { },
|
|
154
|
-
onEnd: function () { },
|
|
155
|
-
onFullscreenChange: function () { },
|
|
156
|
-
onPause: function () { },
|
|
157
|
-
onPlay: function () { },
|
|
158
|
-
playsInline: true,
|
|
159
|
-
style: {},
|
|
160
|
-
};
|
|
161
|
-
return Video;
|
|
162
|
-
}(react_1.PureComponent));
|
|
163
|
-
exports.default = Video;
|
|
164
|
-
var StyledRoot = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n box-sizing: border-box;\n display: block;\n margin: 0;\n padding: 0;\n position: relative;\n\n video {\n display: block;\n height: 100%;\n margin: 0;\n object-fit: ", ";\n outline: none;\n padding: 0;\n width: 100%;\n }\n"], ["\n box-sizing: border-box;\n display: block;\n margin: 0;\n padding: 0;\n position: relative;\n\n video {\n display: block;\n height: 100%;\n margin: 0;\n object-fit: ", ";\n outline: none;\n padding: 0;\n width: 100%;\n }\n"])), function (props) { return props.isCover ? 'cover' : 'filled'; });
|
|
165
|
-
var templateObject_1;
|
|
113
|
+
var fixedStyles = (0, asStyleDict_1.default)({
|
|
114
|
+
body: {
|
|
115
|
+
height: '100%',
|
|
116
|
+
width: '100%',
|
|
117
|
+
objectFit: isCover ? 'cover' : 'fill',
|
|
118
|
+
},
|
|
119
|
+
});
|
|
120
|
+
return (react_1.default.createElement("div", __assign({}, props, { ref: ref }),
|
|
121
|
+
react_1.default.createElement("video", { ref: bodyRef, style: fixedStyles.body, autoPlay: autoPlay, controls: hasControls, loop: autoLoop, muted: isMuted, playsInline: playsInline, poster: posterSrc, onCanPlay: canPlayHandler, onEnded: endHandler, onPause: pauseHandler, onPlay: playHandler },
|
|
122
|
+
react_1.default.createElement("source", { src: src }))));
|
|
123
|
+
});
|
|
166
124
|
//# sourceMappingURL=Video.js.map
|
package/lib/Video.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Video.js","sourceRoot":"/","sources":["Video.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Video.js","sourceRoot":"/","sources":["Video.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+F;AAC/F,oEAA6C;AAC7C,8DAAuC;AAEvC,IAAM,KAAK,GAAG,IAAA,kBAAQ,EAAC,OAAO,CAAC,CAAA;AAkB/B,kBAAe,IAAA,kBAAU,EAA6B,UAAC,EAetD,EAAE,GAAG;;IAdJ,IAAA,gBAAe,EAAf,QAAQ,mBAAG,IAAI,KAAA,EACf,gBAAe,EAAf,QAAQ,mBAAG,IAAI,KAAA,EACf,mBAAmB,EAAnB,WAAW,mBAAG,KAAK,KAAA,EACnB,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EACd,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EACd,mBAAkB,EAAlB,WAAW,mBAAG,IAAI,KAAA,EAClB,SAAS,eAAA,EACT,GAAG,SAAA,EACH,SAAS,eAAA,EACT,KAAK,WAAA,EACL,kBAAkB,wBAAA,EAClB,OAAO,aAAA,EACP,MAAM,YAAA,EACH,KAAK,cAd6C,iKAetD,CADS;IAER,IAAM,OAAO,GAAG,IAAA,cAAM,EAAmB,IAAI,CAAC,CAAA;IAC9C,IAAM,QAAQ,GAAG,MAAA,MAAA,OAAO,CAAC,OAAO,0CAAE,MAAM,mCAAI,KAAK,CAAA;IAEjD,IAAA,iBAAS,EAAC;QACR,KAAK,CAAC,uCAAgC,GAAG,SAAM,EAAE,IAAI,CAAC,CAAA;QAEtD,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,OAAM;QAE5B,OAAO,CAAC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAA;QAC/B,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;QACtB,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,wBAAwB,EAAE,uBAAuB,CAAC,CAAA;QACnF,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,uBAAuB,CAAC,CAAA;QAChF,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,uBAAuB,CAAC,CAAA;QAE7E,OAAO;;YACL,KAAK,CAAC,yCAAkC,GAAG,SAAM,EAAE,IAAI,CAAC,CAAA;YAExD,KAAK,EAAE,CAAA;YAEP,MAAA,OAAO,CAAC,OAAO,0CAAE,mBAAmB,CAAC,wBAAwB,EAAE,uBAAuB,CAAC,CAAA;YACvF,MAAA,OAAO,CAAC,OAAO,0CAAE,mBAAmB,CAAC,qBAAqB,EAAE,uBAAuB,CAAC,CAAA;YACpF,MAAA,OAAO,CAAC,OAAO,0CAAE,mBAAmB,CAAC,kBAAkB,EAAE,uBAAuB,CAAC,CAAA;QACnF,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;IAET,IAAM,uBAAuB,GAAG,UAAC,KAAY;QAC3C,IAAM,YAAY,GAAyB,QAAgB,CAAC,UAAU,IAAK,QAAgB,CAAC,aAAa,IAAK,QAAgB,CAAC,kBAAkB,CAAA;QACjJ,IAAI,YAAY,KAAK,SAAS;YAAE,OAAM;QACtC,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAG,YAAY,CAAC,CAAA;IACpC,CAAC,CAAA;IAED,IAAM,cAAc,GAAwC,UAAA,KAAK;QAC/D,KAAK,CAAC,uCAAuC,EAAE,IAAI,CAAC,CAAA;QAEpD,IAAI,QAAQ,IAAI,QAAQ,EAAE;YACxB,IAAI,EAAE,CAAA;SACP;QAED,SAAS,aAAT,SAAS,uBAAT,SAAS,EAAI,CAAA;IACf,CAAC,CAAA;IAED,IAAM,WAAW,GAAwC,UAAA,KAAK;QAC5D,KAAK,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAA;QAC/B,MAAM,aAAN,MAAM,uBAAN,MAAM,EAAI,CAAA;IACZ,CAAC,CAAA;IAED,IAAM,YAAY,GAAwC,UAAA,KAAK;QAC7D,KAAK,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAA;QAC/B,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAA;IACb,CAAC,CAAA;IAED,IAAM,UAAU,GAAwC,UAAA,KAAK;QAC3D,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAA;QAC9B,KAAK,aAAL,KAAK,uBAAL,KAAK,EAAI,CAAA;IACX,CAAC,CAAA;IAED,IAAM,IAAI,GAAG;QACX,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,OAAM;QAC5B,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,CAAA;IACxB,CAAC,CAAA;IAED,IAAM,KAAK,GAAG;QACZ,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,OAAM;QAC5B,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACzB,CAAC,CAAA;IAED,IAAM,WAAW,GAAG,IAAA,qBAAW,EAAC;QAC9B,IAAI,EAAE;YACJ,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,MAAM;YACb,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;SACtC;KACF,CAAC,CAAA;IAEF,OAAO,CACL,kDAAS,KAAK,IAAE,GAAG,EAAE,GAAG;QACtB,yCACE,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,WAAW,CAAC,IAAI,EACvB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,WAAW,EACrB,IAAI,EAAE,QAAQ,EACd,KAAK,EAAE,OAAO,EACd,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,cAAc,EACzB,OAAO,EAAE,UAAU,EACnB,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,WAAW;YAEnB,0CAAQ,GAAG,EAAE,GAAG,GAAG,CACb,CACJ,CACP,CAAA;AACH,CAAC,CAAC,CAAA","sourcesContent":["import React, { forwardRef, HTMLAttributes, ReactEventHandler, useEffect, useRef } from 'react'\nimport asStyleDict from './utils/asStyleDict'\nimport useDebug from './utils/useDebug'\n\nconst debug = useDebug('video')\n\nexport type VideoProps = HTMLAttributes<HTMLDivElement> & {\n autoLoop?: boolean\n autoPlay?: boolean\n hasControls?: boolean\n isCover?: boolean\n isMuted?: boolean\n playsInline?: boolean\n posterSrc?: string\n src: string\n onCanPlay?: () => void\n onEnd?: () => void\n onFullscreenChange?: (isFullscreen: boolean) => void\n onPause?: () => void\n onPlay?: () => void\n}\n\nexport default forwardRef<HTMLDivElement, VideoProps>(({\n autoLoop = true,\n autoPlay = true,\n hasControls = false,\n isCover = true,\n isMuted = true,\n playsInline = true,\n posterSrc,\n src,\n onCanPlay,\n onEnd,\n onFullscreenChange,\n onPause,\n onPlay,\n ...props\n}, ref) => {\n const bodyRef = useRef<HTMLVideoElement>(null)\n const isPaused = bodyRef.current?.paused ?? false\n\n useEffect(() => {\n debug(`Initializing video with src <${src}>...`, 'OK')\n\n if (!bodyRef.current) return\n\n bodyRef.current.muted = isMuted\n bodyRef.current.load()\n bodyRef.current.addEventListener('webkitfullscreenchange', fullscreenChangeHandler)\n bodyRef.current.addEventListener('mozfullscreenchange', fullscreenChangeHandler)\n bodyRef.current.addEventListener('fullscreenchange', fullscreenChangeHandler)\n\n return () => {\n debug(`Deinitializing video with src <${src}>...`, 'OK')\n\n pause()\n\n bodyRef.current?.removeEventListener('webkitfullscreenchange', fullscreenChangeHandler)\n bodyRef.current?.removeEventListener('mozfullscreenchange', fullscreenChangeHandler)\n bodyRef.current?.removeEventListener('fullscreenchange', fullscreenChangeHandler)\n }\n }, [src])\n\n const fullscreenChangeHandler = (event: Event) => {\n const isFullscreen: boolean | undefined = (document as any).fullScreen || (document as any).mozFullScreen || (document as any).webkitIsFullScreen\n if (isFullscreen === undefined) return\n onFullscreenChange?.(isFullscreen)\n }\n\n const canPlayHandler: ReactEventHandler<HTMLVideoElement> = event => {\n debug('Checking if video is ready to play...', 'OK')\n\n if (autoPlay && isPaused) {\n play()\n }\n\n onCanPlay?.()\n }\n\n const playHandler: ReactEventHandler<HTMLVideoElement> = event => {\n debug('Playing video...', 'OK')\n onPlay?.()\n }\n\n const pauseHandler: ReactEventHandler<HTMLVideoElement> = event => {\n debug('Pausing video...', 'OK')\n onPause?.()\n }\n\n const endHandler: ReactEventHandler<HTMLVideoElement> = event => {\n debug('Ending video...', 'OK')\n onEnd?.()\n }\n\n const play = () => {\n if (!bodyRef.current) return\n bodyRef.current.play()\n }\n\n const pause = () => {\n if (!bodyRef.current) return\n bodyRef.current.pause()\n }\n\n const fixedStyles = asStyleDict({\n body: {\n height: '100%',\n width: '100%',\n objectFit: isCover ? 'cover' : 'fill',\n },\n })\n\n return (\n <div {...props} ref={ref}>\n <video\n ref={bodyRef}\n style={fixedStyles.body}\n autoPlay={autoPlay}\n controls={hasControls}\n loop={autoLoop}\n muted={isMuted}\n playsInline={playsInline}\n poster={posterSrc}\n onCanPlay={canPlayHandler}\n onEnded={endHandler}\n onPause={pauseHandler}\n onPlay={playHandler}\n >\n <source src={src}/>\n </video>\n </div>\n )\n})\n"]}
|
package/lib/WithTooltip.d.ts
CHANGED
|
@@ -1,16 +1,18 @@
|
|
|
1
|
-
import { HTMLAttributes } from 'react';
|
|
2
|
-
|
|
3
|
-
export declare type Props = HTMLAttributes<HTMLElement> & {
|
|
1
|
+
import { HTMLAttributes, PropsWithChildren } from 'react';
|
|
2
|
+
export type WithToolTipProps = Pick<HTMLAttributes<HTMLElement>, 'className' | 'style'> & PropsWithChildren<{
|
|
4
3
|
/**
|
|
5
|
-
* The height of the arrow. The width (longest edge) of the arrow is always
|
|
4
|
+
* The height of the arrow. The width (longest edge) of the arrow is always
|
|
5
|
+
* twice its height.
|
|
6
6
|
*/
|
|
7
7
|
arrowHeight?: number;
|
|
8
8
|
/**
|
|
9
|
-
* Color of the dialog background, same format as a CSS color string (i.e.
|
|
9
|
+
* Color of the dialog background, same format as a CSS color string (i.e.
|
|
10
|
+
* '#000').
|
|
10
11
|
*/
|
|
11
12
|
backgroundColor?: string;
|
|
12
13
|
/**
|
|
13
|
-
* Specifies if the tooltip should be disabled in touch devices (i.e. `html`
|
|
14
|
+
* Specifies if the tooltip should be disabled in touch devices (i.e. `html`
|
|
15
|
+
* has class `.touch`).
|
|
14
16
|
*/
|
|
15
17
|
disabledOnTouch?: boolean;
|
|
16
18
|
/**
|
|
@@ -18,22 +20,18 @@ export declare type Props = HTMLAttributes<HTMLElement> & {
|
|
|
18
20
|
*/
|
|
19
21
|
hint: string;
|
|
20
22
|
/**
|
|
21
|
-
* The gap (in pixels) between the target element and the tooltip, defaults to
|
|
23
|
+
* The gap (in pixels) between the target element and the tooltip, defaults to
|
|
24
|
+
* zero.
|
|
22
25
|
*/
|
|
23
26
|
gap?: number;
|
|
24
27
|
/**
|
|
25
|
-
*
|
|
28
|
+
* The maximum width (in pixels) of the hint text.
|
|
26
29
|
*/
|
|
27
|
-
|
|
30
|
+
maxTextWidth?: number;
|
|
28
31
|
/**
|
|
29
|
-
* The minimum space (in pixels) between the target element and the edge of
|
|
30
|
-
* trigger an alignment change, defaults to `100px`.
|
|
32
|
+
* The minimum space (in pixels) between the target element and the edge of
|
|
33
|
+
* the window required to trigger an alignment change, defaults to `100px`.
|
|
31
34
|
*/
|
|
32
35
|
threshold?: number;
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
* overridden by internal rules.
|
|
36
|
-
*/
|
|
37
|
-
cssDialog?: CSSProp<any>;
|
|
38
|
-
};
|
|
39
|
-
export default function WithTooltip({ arrowHeight, backgroundColor, cssDialog, disabledOnTouch, hint, gap, textColor, threshold, ...props }: Props): JSX.Element;
|
|
36
|
+
}>;
|
|
37
|
+
export default function WithTooltip({ children, className, style, arrowHeight, backgroundColor, gap, hint, maxTextWidth, threshold, }: WithToolTipProps): JSX.Element;
|