@blockle/blocks 0.20.0-alpha1 → 1.0.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 -70
- package/dist/index.cjs +21 -71
- package/dist/index.d.ts +3 -1
- package/dist/index.js +3 -0
- package/dist/index.spec.d.ts +0 -0
- package/dist/reset.cjs +1 -2
- package/dist/reset.d.ts +0 -2
- package/dist/reset.js +1 -0
- package/package.json +24 -81
- package/LICENSE +0 -21
- package/dist/components/accessibility/VisuallyHidden/VisuallyHidden.cjs +0 -19
- package/dist/components/accessibility/VisuallyHidden/VisuallyHidden.mjs +0 -20
- package/dist/components/accessibility/VisuallyHidden/index.cjs +0 -1
- package/dist/components/accessibility/VisuallyHidden/index.mjs +0 -1
- package/dist/components/accessibility/VisuallyHidden/visually-hidden.css.cjs +0 -15
- package/dist/components/accessibility/VisuallyHidden/visually-hidden.css.mjs +0 -16
- package/dist/components/display/Divider/Divider.cjs +0 -25
- package/dist/components/display/Divider/Divider.mjs +0 -26
- package/dist/components/display/Divider/divider.css.cjs +0 -15
- package/dist/components/display/Divider/divider.css.mjs +0 -16
- package/dist/components/display/Divider/index.cjs +0 -1
- package/dist/components/display/Divider/index.mjs +0 -1
- package/dist/components/feedback/Progress/Progress.cjs +0 -53
- package/dist/components/feedback/Progress/Progress.mjs +0 -54
- package/dist/components/feedback/Progress/index.cjs +0 -1
- package/dist/components/feedback/Progress/index.mjs +0 -1
- package/dist/components/feedback/Spinner/Spinner.cjs +0 -25
- package/dist/components/feedback/Spinner/Spinner.mjs +0 -26
- package/dist/components/feedback/Spinner/index.cjs +0 -1
- package/dist/components/feedback/Spinner/index.mjs +0 -1
- package/dist/components/form/Button/Button.cjs +0 -58
- package/dist/components/form/Button/Button.css.cjs +0 -15
- package/dist/components/form/Button/Button.css.mjs +0 -16
- package/dist/components/form/Button/Button.mjs +0 -59
- package/dist/components/form/Button/index.cjs +0 -1
- package/dist/components/form/Button/index.mjs +0 -1
- package/dist/components/form/Checkbox/Checkbox.cjs +0 -78
- package/dist/components/form/Checkbox/Checkbox.mjs +0 -79
- package/dist/components/form/Checkbox/checkbox.css.cjs +0 -31
- package/dist/components/form/Checkbox/checkbox.css.mjs +0 -32
- package/dist/components/form/Checkbox/index.cjs +0 -1
- package/dist/components/form/Checkbox/index.mjs +0 -1
- package/dist/components/form/Input/Input.cjs +0 -50
- package/dist/components/form/Input/Input.mjs +0 -51
- package/dist/components/form/Input/index.cjs +0 -1
- package/dist/components/form/Input/index.mjs +0 -1
- package/dist/components/form/Input/input.css.cjs +0 -20
- package/dist/components/form/Input/input.css.mjs +0 -21
- package/dist/components/form/Label/Label.cjs +0 -29
- package/dist/components/form/Label/Label.mjs +0 -30
- package/dist/components/form/Label/index.cjs +0 -1
- package/dist/components/form/Label/index.mjs +0 -1
- package/dist/components/form/Radio/Radio.cjs +0 -47
- package/dist/components/form/Radio/Radio.mjs +0 -48
- package/dist/components/form/Radio/RadioGroup.cjs +0 -1
- package/dist/components/form/Radio/RadioGroup.mjs +0 -1
- package/dist/components/form/Radio/index.cjs +0 -1
- package/dist/components/form/Radio/index.mjs +0 -1
- package/dist/components/form/Radio/radio.css.cjs +0 -31
- package/dist/components/form/Radio/radio.css.mjs +0 -32
- package/dist/components/form/Select/Select.cjs +0 -64
- package/dist/components/form/Select/Select.mjs +0 -65
- package/dist/components/form/Select/index.cjs +0 -1
- package/dist/components/form/Select/index.mjs +0 -1
- package/dist/components/form/Select/select.css.cjs +0 -37
- package/dist/components/form/Select/select.css.mjs +0 -38
- package/dist/components/form/Slider/Slider.cjs +0 -139
- package/dist/components/form/Slider/Slider.mjs +0 -142
- package/dist/components/form/Slider/index.cjs +0 -1
- package/dist/components/form/Slider/index.mjs +0 -1
- package/dist/components/form/Slider/slider.css.cjs +0 -74
- package/dist/components/form/Slider/slider.css.mjs +0 -75
- package/dist/components/form/Slider/usePointerProgress.cjs +0 -44
- package/dist/components/form/Slider/usePointerProgress.mjs +0 -45
- package/dist/components/form/Switch/Switch.cjs +0 -71
- package/dist/components/form/Switch/Switch.mjs +0 -74
- package/dist/components/form/Switch/index.cjs +0 -1
- package/dist/components/form/Switch/index.mjs +0 -1
- package/dist/components/form/Switch/switch.css.cjs +0 -26
- package/dist/components/form/Switch/switch.css.mjs +0 -27
- package/dist/components/layout/Box/Box.cjs +0 -27
- package/dist/components/layout/Box/Box.mjs +0 -28
- package/dist/components/layout/Box/index.cjs +0 -1
- package/dist/components/layout/Box/index.mjs +0 -1
- package/dist/components/layout/Inline/Inline.cjs +0 -29
- package/dist/components/layout/Inline/Inline.mjs +0 -30
- package/dist/components/layout/Inline/index.cjs +0 -1
- package/dist/components/layout/Inline/index.mjs +0 -1
- package/dist/components/layout/Stack/Stack.cjs +0 -29
- package/dist/components/layout/Stack/Stack.mjs +0 -30
- package/dist/components/layout/Stack/index.cjs +0 -1
- package/dist/components/layout/Stack/index.mjs +0 -1
- package/dist/components/navigation/Link/Link.cjs +0 -31
- package/dist/components/navigation/Link/Link.mjs +0 -32
- package/dist/components/navigation/Link/index.cjs +0 -1
- package/dist/components/navigation/Link/index.mjs +0 -1
- package/dist/components/other/BlocksProvider/BlocksProvider.cjs +0 -36
- package/dist/components/other/BlocksProvider/BlocksProvider.mjs +0 -39
- package/dist/components/other/BlocksProvider/context.cjs +0 -4
- package/dist/components/other/BlocksProvider/context.mjs +0 -7
- package/dist/components/other/BlocksProvider/index.cjs +0 -1
- package/dist/components/other/BlocksProvider/index.mjs +0 -1
- package/dist/components/other/Portal/Portal.cjs +0 -7
- package/dist/components/other/Portal/Portal.mjs +0 -8
- package/dist/components/other/Portal/index.cjs +0 -1
- package/dist/components/other/Portal/index.mjs +0 -1
- package/dist/components/overlay/Dialog/Dialog.cjs +0 -77
- package/dist/components/overlay/Dialog/Dialog.mjs +0 -80
- package/dist/components/overlay/Dialog/dialog.css.cjs +0 -21
- package/dist/components/overlay/Dialog/dialog.css.mjs +0 -22
- package/dist/components/overlay/Dialog/dialogHelper.cjs +0 -20
- package/dist/components/overlay/Dialog/dialogHelper.mjs +0 -21
- package/dist/components/overlay/Dialog/index.cjs +0 -1
- package/dist/components/overlay/Dialog/index.mjs +0 -1
- package/dist/components/overlay/Popover/Popover.cjs +0 -111
- package/dist/components/overlay/Popover/Popover.mjs +0 -112
- package/dist/components/overlay/Popover/popover-utils.cjs +0 -61
- package/dist/components/overlay/Popover/popover-utils.mjs +0 -62
- package/dist/components/overlay/Tooltip/Tooltip.cjs +0 -71
- package/dist/components/overlay/Tooltip/Tooltip.mjs +0 -74
- package/dist/components/overlay/Tooltip/index.cjs +0 -1
- package/dist/components/overlay/Tooltip/index.mjs +0 -1
- package/dist/components/typography/Heading/Heading.cjs +0 -23
- package/dist/components/typography/Heading/Heading.mjs +0 -24
- package/dist/components/typography/Heading/heading.css.cjs +0 -15
- package/dist/components/typography/Heading/heading.css.mjs +0 -16
- package/dist/components/typography/Heading/index.cjs +0 -1
- package/dist/components/typography/Heading/index.mjs +0 -1
- package/dist/components/typography/Text/Text.cjs +0 -20
- package/dist/components/typography/Text/Text.mjs +0 -21
- package/dist/components/typography/Text/index.cjs +0 -1
- package/dist/components/typography/Text/index.mjs +0 -1
- package/dist/components/typography/Text/text.css.cjs +0 -15
- package/dist/components/typography/Text/text.css.mjs +0 -16
- package/dist/hooks/useClickOutside/useClickOutside.cjs +0 -22
- package/dist/hooks/useClickOutside/useClickOutside.mjs +0 -23
- package/dist/hooks/useControlledValue/useControlledValue.cjs +0 -31
- package/dist/hooks/useControlledValue/useControlledValue.mjs +0 -32
- package/dist/hooks/useIsomorphicLayoutEffect/index.cjs +0 -1
- package/dist/hooks/useIsomorphicLayoutEffect/index.mjs +0 -1
- package/dist/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.cjs +0 -4
- package/dist/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.mjs +0 -7
- package/dist/hooks/useKeyboard/index.cjs +0 -1
- package/dist/hooks/useKeyboard/index.mjs +0 -1
- package/dist/hooks/useKeyboard/useKeyboard.cjs +0 -19
- package/dist/hooks/useKeyboard/useKeyboard.mjs +0 -22
- package/dist/hooks/useLayer/index.cjs +0 -1
- package/dist/hooks/useLayer/index.mjs +0 -1
- package/dist/hooks/useLayer/useLayer.cjs +0 -25
- package/dist/hooks/useLayer/useLayer.mjs +0 -26
- package/dist/hooks/usePreventBodyScroll/index.cjs +0 -1
- package/dist/hooks/usePreventBodyScroll/index.mjs +0 -1
- package/dist/hooks/usePreventBodyScroll/usePreventBodyScroll.cjs +0 -29
- package/dist/hooks/usePreventBodyScroll/usePreventBodyScroll.mjs +0 -30
- package/dist/hooks/useRestoreFocus/index.cjs +0 -1
- package/dist/hooks/useRestoreFocus/index.mjs +0 -1
- package/dist/hooks/useRestoreFocus/useRestoreFocus.cjs +0 -17
- package/dist/hooks/useRestoreFocus/useRestoreFocus.mjs +0 -18
- package/dist/hooks/useRootAriaHidden/index.cjs +0 -1
- package/dist/hooks/useRootAriaHidden/index.mjs +0 -1
- package/dist/hooks/useRootAriaHidden/useRootAriaHidden.cjs +0 -11
- package/dist/hooks/useRootAriaHidden/useRootAriaHidden.mjs +0 -12
- package/dist/hooks/useVisibilityState/index.cjs +0 -1
- package/dist/hooks/useVisibilityState/index.mjs +0 -1
- package/dist/hooks/useVisibilityState/useVisibilityState.cjs +0 -15
- package/dist/hooks/useVisibilityState/useVisibilityState.mjs +0 -16
- package/dist/index.d.mts +0 -1
- package/dist/index.mjs +0 -73
- package/dist/lib/asChildRenderer/createAsChildTemplate.cjs +0 -72
- package/dist/lib/asChildRenderer/createAsChildTemplate.mjs +0 -73
- package/dist/lib/css/atoms/atomicProperties.cjs +0 -89
- package/dist/lib/css/atoms/atomicProperties.mjs +0 -90
- package/dist/lib/css/atoms/atoms.cjs +0 -2
- package/dist/lib/css/atoms/atoms.mjs +0 -1
- package/dist/lib/css/atoms/breakpoints.cjs +0 -13
- package/dist/lib/css/atoms/breakpoints.mjs +0 -14
- package/dist/lib/css/atoms/index.cjs +0 -2
- package/dist/lib/css/atoms/index.mjs +0 -1
- package/dist/lib/css/atoms/sprinkles.css.cjs +0 -38
- package/dist/lib/css/atoms/sprinkles.css.mjs +0 -39
- package/dist/lib/css/flexbox/flexbox.cjs +0 -16
- package/dist/lib/css/flexbox/flexbox.mjs +0 -17
- package/dist/lib/css/layers/layers.css.cjs +0 -7
- package/dist/lib/css/layers/layers.css.mjs +0 -8
- package/dist/lib/css/reset/reset.css.cjs +0 -38
- package/dist/lib/css/reset/reset.css.mjs +0 -37
- package/dist/lib/css/style/style.cjs +0 -28
- package/dist/lib/css/style/style.mjs +0 -29
- package/dist/lib/css/utils/cssUtils.cjs +0 -5
- package/dist/lib/css/utils/cssUtils.mjs +0 -6
- package/dist/lib/react/mergeProps.cjs +0 -42
- package/dist/lib/react/mergeProps.mjs +0 -43
- package/dist/lib/react/refs.cjs +0 -16
- package/dist/lib/react/refs.mjs +0 -17
- package/dist/lib/theme/makeComponentTheme.cjs +0 -5
- package/dist/lib/theme/makeComponentTheme.mjs +0 -6
- package/dist/lib/theme/makeTheme.cjs +0 -12
- package/dist/lib/theme/makeTheme.mjs +0 -13
- package/dist/lib/theme/makeVanillaTheme.cjs +0 -19
- package/dist/lib/theme/makeVanillaTheme.mjs +0 -20
- package/dist/lib/theme/store/theme.cjs +0 -92
- package/dist/lib/theme/store/theme.mjs +0 -93
- package/dist/lib/theme/tokens.cjs +0 -81
- package/dist/lib/theme/tokens.mjs +0 -82
- package/dist/lib/theme/vars.css.cjs +0 -9
- package/dist/lib/theme/vars.css.mjs +0 -10
- package/dist/lib/utils/atom-props.cjs +0 -15
- package/dist/lib/utils/atom-props.mjs +0 -16
- package/dist/lib/utils/classnames.cjs +0 -6
- package/dist/lib/utils/classnames.mjs +0 -7
- package/dist/lib/utils/dom.cjs +0 -12
- package/dist/lib/utils/dom.mjs +0 -13
- package/dist/lib/utils/math.cjs +0 -12
- package/dist/lib/utils/math.mjs +0 -13
- package/dist/momotaro.chunk.d.ts +0 -906
- package/dist/reset.d.mts +0 -2
- package/dist/reset.mjs +0 -2
- package/dist/themes/momotaro/components/button.css.cjs +0 -103
- package/dist/themes/momotaro/components/button.css.mjs +0 -104
- package/dist/themes/momotaro/components/checkbox.css.cjs +0 -59
- package/dist/themes/momotaro/components/checkbox.css.mjs +0 -60
- package/dist/themes/momotaro/components/dialog.css.cjs +0 -78
- package/dist/themes/momotaro/components/dialog.css.mjs +0 -79
- package/dist/themes/momotaro/components/divider.css.cjs +0 -15
- package/dist/themes/momotaro/components/divider.css.mjs +0 -16
- package/dist/themes/momotaro/components/helpers.css.cjs +0 -43
- package/dist/themes/momotaro/components/helpers.css.mjs +0 -44
- package/dist/themes/momotaro/components/index.cjs +0 -34
- package/dist/themes/momotaro/components/index.mjs +0 -35
- package/dist/themes/momotaro/components/input.css.cjs +0 -41
- package/dist/themes/momotaro/components/input.css.mjs +0 -42
- package/dist/themes/momotaro/components/label.css.cjs +0 -33
- package/dist/themes/momotaro/components/label.css.mjs +0 -34
- package/dist/themes/momotaro/components/link.css.cjs +0 -53
- package/dist/themes/momotaro/components/link.css.mjs +0 -54
- package/dist/themes/momotaro/components/popover.css.cjs +0 -32
- package/dist/themes/momotaro/components/popover.css.mjs +0 -33
- package/dist/themes/momotaro/components/progress.css.cjs +0 -55
- package/dist/themes/momotaro/components/progress.css.mjs +0 -56
- package/dist/themes/momotaro/components/radio.css.cjs +0 -60
- package/dist/themes/momotaro/components/radio.css.mjs +0 -61
- package/dist/themes/momotaro/components/select.css.cjs +0 -44
- package/dist/themes/momotaro/components/select.css.mjs +0 -45
- package/dist/themes/momotaro/components/slider.css.cjs +0 -89
- package/dist/themes/momotaro/components/slider.css.mjs +0 -90
- package/dist/themes/momotaro/components/spinner.css.cjs +0 -43
- package/dist/themes/momotaro/components/spinner.css.mjs +0 -44
- package/dist/themes/momotaro/components/switch.css.cjs +0 -58
- package/dist/themes/momotaro/components/switch.css.mjs +0 -59
- package/dist/themes/momotaro/components/tooltip.css.cjs +0 -30
- package/dist/themes/momotaro/components/tooltip.css.mjs +0 -31
- package/dist/themes/momotaro/components/transitions.cjs +0 -3
- package/dist/themes/momotaro/components/transitions.mjs +0 -4
- package/dist/themes/momotaro/index.cjs +0 -2
- package/dist/themes/momotaro/index.mjs +0 -1
- package/dist/themes/momotaro/momotaro.css.cjs +0 -13
- package/dist/themes/momotaro/momotaro.css.mjs +0 -14
- package/dist/themes/momotaro/tokens.css.cjs +0 -85
- package/dist/themes/momotaro/tokens.css.mjs +0 -86
- package/dist/themes/momotaro.cjs +0 -4
- package/dist/themes/momotaro.d.mts +0 -1
- package/dist/themes/momotaro.d.ts +0 -1
- package/dist/themes/momotaro.mjs +0 -4
- package/reset/index.d.ts +0 -1
- package/reset/package.json +0 -5
- package/themes/momotaro/index.d.ts +0 -1
- package/themes/momotaro/package.json +0 -5
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
function getPopoverPosition(align, anchorRef, popoverRef) {
|
|
3
|
-
if (!anchorRef.current || !popoverRef.current) {
|
|
4
|
-
return [0, 0];
|
|
5
|
-
}
|
|
6
|
-
popoverRef.current.style.transform = "none";
|
|
7
|
-
popoverRef.current.style.transitionDuration = "0s";
|
|
8
|
-
const anchorRect = anchorRef.current.getBoundingClientRect();
|
|
9
|
-
const popoverRect = popoverRef.current.getBoundingClientRect();
|
|
10
|
-
let popoverStyles = getComputedStyle(popoverRef.current);
|
|
11
|
-
const top = popoverStyles.getPropertyValue("top");
|
|
12
|
-
const left = popoverStyles.getPropertyValue("left");
|
|
13
|
-
popoverRef.current.style.left = "0";
|
|
14
|
-
popoverRef.current.style.top = "0";
|
|
15
|
-
popoverStyles = getComputedStyle(popoverRef.current);
|
|
16
|
-
const marginTop = Number.parseFloat(
|
|
17
|
-
popoverStyles.getPropertyValue("margin-top")
|
|
18
|
-
);
|
|
19
|
-
const marginRight = Number.parseFloat(
|
|
20
|
-
popoverStyles.getPropertyValue("margin-right")
|
|
21
|
-
);
|
|
22
|
-
const marginBottom = Number.parseFloat(
|
|
23
|
-
popoverStyles.getPropertyValue("margin-bottom")
|
|
24
|
-
);
|
|
25
|
-
const marginLeft = Number.parseFloat(
|
|
26
|
-
popoverStyles.getPropertyValue("margin-left")
|
|
27
|
-
);
|
|
28
|
-
const marginY = marginTop + marginBottom;
|
|
29
|
-
const marginX = marginRight + marginLeft;
|
|
30
|
-
const docHeight = document.documentElement.clientHeight;
|
|
31
|
-
const docWidth = document.documentElement.clientWidth;
|
|
32
|
-
const docScrollTop = document.documentElement.scrollTop;
|
|
33
|
-
const docScrollLeft = document.documentElement.scrollLeft;
|
|
34
|
-
const anchorLeft = anchorRect.left + docScrollLeft;
|
|
35
|
-
const anchorTop = anchorRect.top + docScrollTop;
|
|
36
|
-
const topPosition = anchorRect.top - (popoverRect.height + marginTop);
|
|
37
|
-
const rightPosition = anchorRect.left + anchorRect.width + popoverRect.width;
|
|
38
|
-
const bottomPosition = anchorRect.top + anchorRect.height + popoverRect.height;
|
|
39
|
-
const leftPosition = anchorRect.left - popoverRect.width;
|
|
40
|
-
const offsetX = anchorLeft - marginLeft - (popoverRect.width - anchorRect.width) / 2;
|
|
41
|
-
const offsetY = anchorTop - marginTop - (popoverRect.height - anchorRect.height) / 2;
|
|
42
|
-
popoverRef.current.style.transform = "";
|
|
43
|
-
popoverRef.current.style.transitionDuration = "";
|
|
44
|
-
popoverRef.current.style.top = top;
|
|
45
|
-
popoverRef.current.style.left = left;
|
|
46
|
-
switch (align) {
|
|
47
|
-
case "top": {
|
|
48
|
-
return topPosition > 0 ? [offsetX, anchorTop - popoverRect.height - marginY] : [offsetX, anchorTop + anchorRect.height];
|
|
49
|
-
}
|
|
50
|
-
case "bottom": {
|
|
51
|
-
return bottomPosition < docHeight || topPosition < 0 ? [offsetX, anchorTop + anchorRect.height] : [offsetX, anchorTop - popoverRect.height - marginY];
|
|
52
|
-
}
|
|
53
|
-
case "left": {
|
|
54
|
-
return leftPosition > docWidth || leftPosition > 0 ? [anchorLeft - popoverRect.width - marginX, offsetY] : [anchorLeft + anchorRect.width, offsetY];
|
|
55
|
-
}
|
|
56
|
-
case "right": {
|
|
57
|
-
return rightPosition < docWidth || leftPosition < 0 ? [anchorLeft + anchorRect.width, offsetY] : [anchorLeft - popoverRect.width - marginX, offsetY];
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
exports.getPopoverPosition = getPopoverPosition;
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
function getPopoverPosition(align, anchorRef, popoverRef) {
|
|
2
|
-
if (!anchorRef.current || !popoverRef.current) {
|
|
3
|
-
return [0, 0];
|
|
4
|
-
}
|
|
5
|
-
popoverRef.current.style.transform = "none";
|
|
6
|
-
popoverRef.current.style.transitionDuration = "0s";
|
|
7
|
-
const anchorRect = anchorRef.current.getBoundingClientRect();
|
|
8
|
-
const popoverRect = popoverRef.current.getBoundingClientRect();
|
|
9
|
-
let popoverStyles = getComputedStyle(popoverRef.current);
|
|
10
|
-
const top = popoverStyles.getPropertyValue("top");
|
|
11
|
-
const left = popoverStyles.getPropertyValue("left");
|
|
12
|
-
popoverRef.current.style.left = "0";
|
|
13
|
-
popoverRef.current.style.top = "0";
|
|
14
|
-
popoverStyles = getComputedStyle(popoverRef.current);
|
|
15
|
-
const marginTop = Number.parseFloat(
|
|
16
|
-
popoverStyles.getPropertyValue("margin-top")
|
|
17
|
-
);
|
|
18
|
-
const marginRight = Number.parseFloat(
|
|
19
|
-
popoverStyles.getPropertyValue("margin-right")
|
|
20
|
-
);
|
|
21
|
-
const marginBottom = Number.parseFloat(
|
|
22
|
-
popoverStyles.getPropertyValue("margin-bottom")
|
|
23
|
-
);
|
|
24
|
-
const marginLeft = Number.parseFloat(
|
|
25
|
-
popoverStyles.getPropertyValue("margin-left")
|
|
26
|
-
);
|
|
27
|
-
const marginY = marginTop + marginBottom;
|
|
28
|
-
const marginX = marginRight + marginLeft;
|
|
29
|
-
const docHeight = document.documentElement.clientHeight;
|
|
30
|
-
const docWidth = document.documentElement.clientWidth;
|
|
31
|
-
const docScrollTop = document.documentElement.scrollTop;
|
|
32
|
-
const docScrollLeft = document.documentElement.scrollLeft;
|
|
33
|
-
const anchorLeft = anchorRect.left + docScrollLeft;
|
|
34
|
-
const anchorTop = anchorRect.top + docScrollTop;
|
|
35
|
-
const topPosition = anchorRect.top - (popoverRect.height + marginTop);
|
|
36
|
-
const rightPosition = anchorRect.left + anchorRect.width + popoverRect.width;
|
|
37
|
-
const bottomPosition = anchorRect.top + anchorRect.height + popoverRect.height;
|
|
38
|
-
const leftPosition = anchorRect.left - popoverRect.width;
|
|
39
|
-
const offsetX = anchorLeft - marginLeft - (popoverRect.width - anchorRect.width) / 2;
|
|
40
|
-
const offsetY = anchorTop - marginTop - (popoverRect.height - anchorRect.height) / 2;
|
|
41
|
-
popoverRef.current.style.transform = "";
|
|
42
|
-
popoverRef.current.style.transitionDuration = "";
|
|
43
|
-
popoverRef.current.style.top = top;
|
|
44
|
-
popoverRef.current.style.left = left;
|
|
45
|
-
switch (align) {
|
|
46
|
-
case "top": {
|
|
47
|
-
return topPosition > 0 ? [offsetX, anchorTop - popoverRect.height - marginY] : [offsetX, anchorTop + anchorRect.height];
|
|
48
|
-
}
|
|
49
|
-
case "bottom": {
|
|
50
|
-
return bottomPosition < docHeight || topPosition < 0 ? [offsetX, anchorTop + anchorRect.height] : [offsetX, anchorTop - popoverRect.height - marginY];
|
|
51
|
-
}
|
|
52
|
-
case "left": {
|
|
53
|
-
return leftPosition > docWidth || leftPosition > 0 ? [anchorLeft - popoverRect.width - marginX, offsetY] : [anchorLeft + anchorRect.width, offsetY];
|
|
54
|
-
}
|
|
55
|
-
case "right": {
|
|
56
|
-
return rightPosition < docWidth || leftPosition < 0 ? [anchorLeft + anchorRect.width, offsetY] : [anchorLeft - popoverRect.width - marginX, offsetY];
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
export {
|
|
61
|
-
getPopoverPosition
|
|
62
|
-
};
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
3
|
-
const react = require("react");
|
|
4
|
-
const lib_react_refs_cjs = require("../../../lib/react/refs.cjs");
|
|
5
|
-
const lib_theme_store_theme_cjs = require("../../../lib/theme/store/theme.cjs");
|
|
6
|
-
const components_overlay_Popover_Popover_cjs = require("../Popover/Popover.cjs");
|
|
7
|
-
const Tooltip = ({
|
|
8
|
-
align = "top",
|
|
9
|
-
children,
|
|
10
|
-
label,
|
|
11
|
-
colorScheme
|
|
12
|
-
}) => {
|
|
13
|
-
const id = react.useId();
|
|
14
|
-
const ref = react.useRef(null);
|
|
15
|
-
const [open, setOpen] = react.useState(false);
|
|
16
|
-
const tooltipClassName = lib_theme_store_theme_cjs.getComponentStyles("tooltip", {
|
|
17
|
-
base: true,
|
|
18
|
-
variants: { colorScheme }
|
|
19
|
-
});
|
|
20
|
-
react.useEffect(() => {
|
|
21
|
-
const element = ref.current;
|
|
22
|
-
if (!element) {
|
|
23
|
-
return;
|
|
24
|
-
}
|
|
25
|
-
function onEnter() {
|
|
26
|
-
setOpen(true);
|
|
27
|
-
}
|
|
28
|
-
function onLeave() {
|
|
29
|
-
setOpen(false);
|
|
30
|
-
}
|
|
31
|
-
element.addEventListener("mouseenter", onEnter);
|
|
32
|
-
element.addEventListener("mouseleave", onLeave);
|
|
33
|
-
element.addEventListener("focusin", onEnter);
|
|
34
|
-
element.addEventListener("focusout", onLeave);
|
|
35
|
-
return () => {
|
|
36
|
-
element.removeEventListener("mouseenter", onEnter);
|
|
37
|
-
element.removeEventListener("mouseleave", onLeave);
|
|
38
|
-
element.removeEventListener("focusin", onEnter);
|
|
39
|
-
element.removeEventListener("focusout", onLeave);
|
|
40
|
-
};
|
|
41
|
-
}, []);
|
|
42
|
-
if (react.Children.count(children) !== 1) {
|
|
43
|
-
throw new Error("Tooltip component can only have one child");
|
|
44
|
-
}
|
|
45
|
-
const child = react.Children.toArray(children)[0];
|
|
46
|
-
if (!react.isValidElement(child)) {
|
|
47
|
-
return null;
|
|
48
|
-
}
|
|
49
|
-
return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
50
|
-
react.cloneElement(child, {
|
|
51
|
-
ref: lib_react_refs_cjs.composeRefs(ref, child.ref),
|
|
52
|
-
["aria-describedby"]: open ? id : void 0
|
|
53
|
-
}),
|
|
54
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
55
|
-
components_overlay_Popover_Popover_cjs.Popover,
|
|
56
|
-
{
|
|
57
|
-
id,
|
|
58
|
-
role: "tooltip",
|
|
59
|
-
anchorElement: ref,
|
|
60
|
-
open,
|
|
61
|
-
onRequestClose: () => {
|
|
62
|
-
setOpen(false);
|
|
63
|
-
},
|
|
64
|
-
align,
|
|
65
|
-
className: tooltipClassName,
|
|
66
|
-
children: label
|
|
67
|
-
}
|
|
68
|
-
)
|
|
69
|
-
] });
|
|
70
|
-
};
|
|
71
|
-
exports.Tooltip = Tooltip;
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import { jsxs, Fragment, jsx } from "react/jsx-runtime";
|
|
4
|
-
import { useId, useRef, useState, useEffect, Children, isValidElement, cloneElement } from "react";
|
|
5
|
-
import { composeRefs } from "../../../lib/react/refs.mjs";
|
|
6
|
-
import { getComponentStyles } from "../../../lib/theme/store/theme.mjs";
|
|
7
|
-
import { Popover } from "../Popover/Popover.mjs";
|
|
8
|
-
const Tooltip = ({
|
|
9
|
-
align = "top",
|
|
10
|
-
children,
|
|
11
|
-
label,
|
|
12
|
-
colorScheme
|
|
13
|
-
}) => {
|
|
14
|
-
const id = useId();
|
|
15
|
-
const ref = useRef(null);
|
|
16
|
-
const [open, setOpen] = useState(false);
|
|
17
|
-
const tooltipClassName = getComponentStyles("tooltip", {
|
|
18
|
-
base: true,
|
|
19
|
-
variants: { colorScheme }
|
|
20
|
-
});
|
|
21
|
-
useEffect(() => {
|
|
22
|
-
const element = ref.current;
|
|
23
|
-
if (!element) {
|
|
24
|
-
return;
|
|
25
|
-
}
|
|
26
|
-
function onEnter() {
|
|
27
|
-
setOpen(true);
|
|
28
|
-
}
|
|
29
|
-
function onLeave() {
|
|
30
|
-
setOpen(false);
|
|
31
|
-
}
|
|
32
|
-
element.addEventListener("mouseenter", onEnter);
|
|
33
|
-
element.addEventListener("mouseleave", onLeave);
|
|
34
|
-
element.addEventListener("focusin", onEnter);
|
|
35
|
-
element.addEventListener("focusout", onLeave);
|
|
36
|
-
return () => {
|
|
37
|
-
element.removeEventListener("mouseenter", onEnter);
|
|
38
|
-
element.removeEventListener("mouseleave", onLeave);
|
|
39
|
-
element.removeEventListener("focusin", onEnter);
|
|
40
|
-
element.removeEventListener("focusout", onLeave);
|
|
41
|
-
};
|
|
42
|
-
}, []);
|
|
43
|
-
if (Children.count(children) !== 1) {
|
|
44
|
-
throw new Error("Tooltip component can only have one child");
|
|
45
|
-
}
|
|
46
|
-
const child = Children.toArray(children)[0];
|
|
47
|
-
if (!isValidElement(child)) {
|
|
48
|
-
return null;
|
|
49
|
-
}
|
|
50
|
-
return /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
51
|
-
cloneElement(child, {
|
|
52
|
-
ref: composeRefs(ref, child.ref),
|
|
53
|
-
["aria-describedby"]: open ? id : void 0
|
|
54
|
-
}),
|
|
55
|
-
/* @__PURE__ */ jsx(
|
|
56
|
-
Popover,
|
|
57
|
-
{
|
|
58
|
-
id,
|
|
59
|
-
role: "tooltip",
|
|
60
|
-
anchorElement: ref,
|
|
61
|
-
open,
|
|
62
|
-
onRequestClose: () => {
|
|
63
|
-
setOpen(false);
|
|
64
|
-
},
|
|
65
|
-
align,
|
|
66
|
-
className: tooltipClassName,
|
|
67
|
-
children: label
|
|
68
|
-
}
|
|
69
|
-
)
|
|
70
|
-
] });
|
|
71
|
-
};
|
|
72
|
-
export {
|
|
73
|
-
Tooltip
|
|
74
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
3
|
-
const lib_utils_classnames_cjs = require("../../../lib/utils/classnames.cjs");
|
|
4
|
-
const components_typography_Heading_heading_css_cjs = require("./heading.css.cjs");
|
|
5
|
-
const components_layout_Box_Box_cjs = require("../../layout/Box/Box.cjs");
|
|
6
|
-
const Heading = ({
|
|
7
|
-
className,
|
|
8
|
-
level = 1,
|
|
9
|
-
children,
|
|
10
|
-
...restProps
|
|
11
|
-
}) => {
|
|
12
|
-
const Tag = `h${level}`;
|
|
13
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
14
|
-
components_layout_Box_Box_cjs.Box,
|
|
15
|
-
{
|
|
16
|
-
asChild: true,
|
|
17
|
-
className: lib_utils_classnames_cjs.classnames(components_typography_Heading_heading_css_cjs.heading, className),
|
|
18
|
-
...restProps,
|
|
19
|
-
children: /* @__PURE__ */ jsxRuntime.jsx(Tag, { children })
|
|
20
|
-
}
|
|
21
|
-
);
|
|
22
|
-
};
|
|
23
|
-
exports.Heading = Heading;
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { classnames } from "../../../lib/utils/classnames.mjs";
|
|
3
|
-
import { heading } from "./heading.css.mjs";
|
|
4
|
-
import { Box } from "../../layout/Box/Box.mjs";
|
|
5
|
-
const Heading = ({
|
|
6
|
-
className,
|
|
7
|
-
level = 1,
|
|
8
|
-
children,
|
|
9
|
-
...restProps
|
|
10
|
-
}) => {
|
|
11
|
-
const Tag = `h${level}`;
|
|
12
|
-
return /* @__PURE__ */ jsx(
|
|
13
|
-
Box,
|
|
14
|
-
{
|
|
15
|
-
asChild: true,
|
|
16
|
-
className: classnames(heading, className),
|
|
17
|
-
...restProps,
|
|
18
|
-
children: /* @__PURE__ */ jsx(Tag, { children })
|
|
19
|
-
}
|
|
20
|
-
);
|
|
21
|
-
};
|
|
22
|
-
export {
|
|
23
|
-
Heading
|
|
24
|
-
};
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const fileScope = require("@vanilla-extract/css/fileScope");
|
|
3
|
-
const css = require("@vanilla-extract/css");
|
|
4
|
-
const lib_css_layers_layers_css_cjs = require("../../../lib/css/layers/layers.css.cjs");
|
|
5
|
-
fileScope.setFileScope("src/components/typography/Heading/heading.css.ts", "@blockle/blocks");
|
|
6
|
-
const heading = css.style({
|
|
7
|
-
"@layer": {
|
|
8
|
-
[lib_css_layers_layers_css_cjs.blocksLayer]: {
|
|
9
|
-
margin: 0,
|
|
10
|
-
padding: 0
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
}, "heading");
|
|
14
|
-
fileScope.endFileScope();
|
|
15
|
-
exports.heading = heading;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { setFileScope, endFileScope } from "@vanilla-extract/css/fileScope";
|
|
2
|
-
import { style } from "@vanilla-extract/css";
|
|
3
|
-
import { blocksLayer } from "../../../lib/css/layers/layers.css.mjs";
|
|
4
|
-
setFileScope("src/components/typography/Heading/heading.css.ts", "@blockle/blocks");
|
|
5
|
-
const heading = style({
|
|
6
|
-
"@layer": {
|
|
7
|
-
[blocksLayer]: {
|
|
8
|
-
margin: 0,
|
|
9
|
-
padding: 0
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
}, "heading");
|
|
13
|
-
endFileScope();
|
|
14
|
-
export {
|
|
15
|
-
heading
|
|
16
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const jsxRuntime = require("react/jsx-runtime");
|
|
3
|
-
const lib_utils_classnames_cjs = require("../../../lib/utils/classnames.cjs");
|
|
4
|
-
const components_typography_Text_text_css_cjs = require("./text.css.cjs");
|
|
5
|
-
const components_layout_Box_Box_cjs = require("../../layout/Box/Box.cjs");
|
|
6
|
-
const Text = ({
|
|
7
|
-
asChild,
|
|
8
|
-
children,
|
|
9
|
-
className,
|
|
10
|
-
ref,
|
|
11
|
-
tag,
|
|
12
|
-
...restProps
|
|
13
|
-
}) => {
|
|
14
|
-
const Component = tag ?? "span";
|
|
15
|
-
return /* @__PURE__ */ jsxRuntime.jsx(components_layout_Box_Box_cjs.Box, { asChild: true, className: lib_utils_classnames_cjs.classnames(components_typography_Text_text_css_cjs.text, className), ...restProps, children: asChild ? children : (
|
|
16
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
17
|
-
/* @__PURE__ */ jsxRuntime.jsx(Component, { ref, children })
|
|
18
|
-
) });
|
|
19
|
-
};
|
|
20
|
-
exports.Text = Text;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { jsx } from "react/jsx-runtime";
|
|
2
|
-
import { classnames } from "../../../lib/utils/classnames.mjs";
|
|
3
|
-
import { text } from "./text.css.mjs";
|
|
4
|
-
import { Box } from "../../layout/Box/Box.mjs";
|
|
5
|
-
const Text = ({
|
|
6
|
-
asChild,
|
|
7
|
-
children,
|
|
8
|
-
className,
|
|
9
|
-
ref,
|
|
10
|
-
tag,
|
|
11
|
-
...restProps
|
|
12
|
-
}) => {
|
|
13
|
-
const Component = tag ?? "span";
|
|
14
|
-
return /* @__PURE__ */ jsx(Box, { asChild: true, className: classnames(text, className), ...restProps, children: asChild ? children : (
|
|
15
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
16
|
-
/* @__PURE__ */ jsx(Component, { ref, children })
|
|
17
|
-
) });
|
|
18
|
-
};
|
|
19
|
-
export {
|
|
20
|
-
Text
|
|
21
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const fileScope = require("@vanilla-extract/css/fileScope");
|
|
3
|
-
const css = require("@vanilla-extract/css");
|
|
4
|
-
const lib_css_layers_layers_css_cjs = require("../../../lib/css/layers/layers.css.cjs");
|
|
5
|
-
fileScope.setFileScope("src/components/typography/Text/text.css.ts", "@blockle/blocks");
|
|
6
|
-
const text = css.style({
|
|
7
|
-
"@layer": {
|
|
8
|
-
[lib_css_layers_layers_css_cjs.blocksLayer]: {
|
|
9
|
-
margin: 0,
|
|
10
|
-
padding: 0
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
}, "text");
|
|
14
|
-
fileScope.endFileScope();
|
|
15
|
-
exports.text = text;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { setFileScope, endFileScope } from "@vanilla-extract/css/fileScope";
|
|
2
|
-
import { style } from "@vanilla-extract/css";
|
|
3
|
-
import { blocksLayer } from "../../../lib/css/layers/layers.css.mjs";
|
|
4
|
-
setFileScope("src/components/typography/Text/text.css.ts", "@blockle/blocks");
|
|
5
|
-
const text = style({
|
|
6
|
-
"@layer": {
|
|
7
|
-
[blocksLayer]: {
|
|
8
|
-
margin: 0,
|
|
9
|
-
padding: 0
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
}, "text");
|
|
13
|
-
endFileScope();
|
|
14
|
-
export {
|
|
15
|
-
text
|
|
16
|
-
};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const react = require("react");
|
|
3
|
-
const useClickOutside = (ref, onClickOutside, { enabled = true } = {}) => {
|
|
4
|
-
react.useEffect(() => {
|
|
5
|
-
if (!enabled) {
|
|
6
|
-
return;
|
|
7
|
-
}
|
|
8
|
-
const listener = (event) => {
|
|
9
|
-
if (ref.current && !ref.current.contains(event.target)) {
|
|
10
|
-
onClickOutside();
|
|
11
|
-
}
|
|
12
|
-
};
|
|
13
|
-
const rafId = requestAnimationFrame(() => {
|
|
14
|
-
document.addEventListener("click", listener);
|
|
15
|
-
});
|
|
16
|
-
return () => {
|
|
17
|
-
cancelAnimationFrame(rafId);
|
|
18
|
-
document.removeEventListener("click", listener);
|
|
19
|
-
};
|
|
20
|
-
}, [ref, onClickOutside, enabled]);
|
|
21
|
-
};
|
|
22
|
-
exports.useClickOutside = useClickOutside;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { useEffect } from "react";
|
|
2
|
-
const useClickOutside = (ref, onClickOutside, { enabled = true } = {}) => {
|
|
3
|
-
useEffect(() => {
|
|
4
|
-
if (!enabled) {
|
|
5
|
-
return;
|
|
6
|
-
}
|
|
7
|
-
const listener = (event) => {
|
|
8
|
-
if (ref.current && !ref.current.contains(event.target)) {
|
|
9
|
-
onClickOutside();
|
|
10
|
-
}
|
|
11
|
-
};
|
|
12
|
-
const rafId = requestAnimationFrame(() => {
|
|
13
|
-
document.addEventListener("click", listener);
|
|
14
|
-
});
|
|
15
|
-
return () => {
|
|
16
|
-
cancelAnimationFrame(rafId);
|
|
17
|
-
document.removeEventListener("click", listener);
|
|
18
|
-
};
|
|
19
|
-
}, [ref, onClickOutside, enabled]);
|
|
20
|
-
};
|
|
21
|
-
export {
|
|
22
|
-
useClickOutside
|
|
23
|
-
};
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const react = require("react");
|
|
3
|
-
function useControlledValue({
|
|
4
|
-
defaultValue,
|
|
5
|
-
value,
|
|
6
|
-
onChange,
|
|
7
|
-
transformValue
|
|
8
|
-
}) {
|
|
9
|
-
const [internValue, setInternValue] = react.useState(defaultValue);
|
|
10
|
-
const currentValue = (onChange ? value : internValue) ?? defaultValue;
|
|
11
|
-
const setValue = react.useCallback(
|
|
12
|
-
function setValue2(value2) {
|
|
13
|
-
const nextValue = transformValue ? transformValue(value2) : value2;
|
|
14
|
-
if (onChange) {
|
|
15
|
-
onChange(nextValue);
|
|
16
|
-
} else {
|
|
17
|
-
setInternValue(nextValue);
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
[onChange, transformValue]
|
|
21
|
-
);
|
|
22
|
-
if (process.env.NODE_ENV !== "production") {
|
|
23
|
-
react.useEffect(() => {
|
|
24
|
-
if (onChange && value === void 0) {
|
|
25
|
-
console.error("Slider is in controlled mode but no value is provided");
|
|
26
|
-
}
|
|
27
|
-
}, []);
|
|
28
|
-
}
|
|
29
|
-
return [currentValue, setValue];
|
|
30
|
-
}
|
|
31
|
-
exports.useControlledValue = useControlledValue;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { useState, useCallback, useEffect } from "react";
|
|
2
|
-
function useControlledValue({
|
|
3
|
-
defaultValue,
|
|
4
|
-
value,
|
|
5
|
-
onChange,
|
|
6
|
-
transformValue
|
|
7
|
-
}) {
|
|
8
|
-
const [internValue, setInternValue] = useState(defaultValue);
|
|
9
|
-
const currentValue = (onChange ? value : internValue) ?? defaultValue;
|
|
10
|
-
const setValue = useCallback(
|
|
11
|
-
function setValue2(value2) {
|
|
12
|
-
const nextValue = transformValue ? transformValue(value2) : value2;
|
|
13
|
-
if (onChange) {
|
|
14
|
-
onChange(nextValue);
|
|
15
|
-
} else {
|
|
16
|
-
setInternValue(nextValue);
|
|
17
|
-
}
|
|
18
|
-
},
|
|
19
|
-
[onChange, transformValue]
|
|
20
|
-
);
|
|
21
|
-
if (process.env.NODE_ENV !== "production") {
|
|
22
|
-
useEffect(() => {
|
|
23
|
-
if (onChange && value === void 0) {
|
|
24
|
-
console.error("Slider is in controlled mode but no value is provided");
|
|
25
|
-
}
|
|
26
|
-
}, []);
|
|
27
|
-
}
|
|
28
|
-
return [currentValue, setValue];
|
|
29
|
-
}
|
|
30
|
-
export {
|
|
31
|
-
useControlledValue
|
|
32
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const react = require("react");
|
|
3
|
-
const useKeyboard = (key, callback, { enabled = true, type = "keydown" } = {}) => {
|
|
4
|
-
react.useEffect(() => {
|
|
5
|
-
if (!enabled) {
|
|
6
|
-
return;
|
|
7
|
-
}
|
|
8
|
-
function handleKeyDown(event) {
|
|
9
|
-
if (event.key === key) {
|
|
10
|
-
callback(event);
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
document.addEventListener(type, handleKeyDown);
|
|
14
|
-
return () => {
|
|
15
|
-
document.removeEventListener(type, handleKeyDown);
|
|
16
|
-
};
|
|
17
|
-
}, [callback, enabled, key, type]);
|
|
18
|
-
};
|
|
19
|
-
exports.useKeyboard = useKeyboard;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
'use client';
|
|
2
|
-
|
|
3
|
-
import { useEffect } from "react";
|
|
4
|
-
const useKeyboard = (key, callback, { enabled = true, type = "keydown" } = {}) => {
|
|
5
|
-
useEffect(() => {
|
|
6
|
-
if (!enabled) {
|
|
7
|
-
return;
|
|
8
|
-
}
|
|
9
|
-
function handleKeyDown(event) {
|
|
10
|
-
if (event.key === key) {
|
|
11
|
-
callback(event);
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
document.addEventListener(type, handleKeyDown);
|
|
15
|
-
return () => {
|
|
16
|
-
document.removeEventListener(type, handleKeyDown);
|
|
17
|
-
};
|
|
18
|
-
}, [callback, enabled, key, type]);
|
|
19
|
-
};
|
|
20
|
-
export {
|
|
21
|
-
useKeyboard
|
|
22
|
-
};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
const react = require("react");
|
|
3
|
-
const useLayer = () => {
|
|
4
|
-
const layerRef = react.useRef(null);
|
|
5
|
-
react.useEffect(
|
|
6
|
-
() => () => {
|
|
7
|
-
if (layerRef.current) {
|
|
8
|
-
layerRef.current.remove();
|
|
9
|
-
layerRef.current = null;
|
|
10
|
-
}
|
|
11
|
-
},
|
|
12
|
-
[]
|
|
13
|
-
);
|
|
14
|
-
function getLayer() {
|
|
15
|
-
if (!layerRef.current) {
|
|
16
|
-
const div = document.createElement("div");
|
|
17
|
-
div.dataset.layer = "blocks";
|
|
18
|
-
layerRef.current = div;
|
|
19
|
-
document.body.append(layerRef.current);
|
|
20
|
-
}
|
|
21
|
-
return layerRef.current;
|
|
22
|
-
}
|
|
23
|
-
return getLayer;
|
|
24
|
-
};
|
|
25
|
-
exports.useLayer = useLayer;
|