dry-ux 1.68.0 → 1.69.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.
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { Content, IUIUtilLoader, PopUp, PopUpAction, PopUpInstance, PopUpOptions, UIUtilModal, UIUtilPrompt } from "./UIUtil.interface";
|
|
3
3
|
import "../types";
|
|
4
|
-
import {
|
|
4
|
+
import { CurrentViewport } from "./ViewportDetect";
|
|
5
5
|
export interface IUIUtilProviderState {
|
|
6
6
|
modal: UIUtilModal;
|
|
7
7
|
prompt: UIUtilPrompt;
|
|
8
8
|
customLoader: IUIUtilLoader;
|
|
9
9
|
loader: Pick<IUIUtilLoader, "show" | "hide">;
|
|
10
|
-
viewport
|
|
10
|
+
viewport: CurrentViewport;
|
|
11
11
|
}
|
|
12
12
|
export declare const UIUtilContext: React.Context<IUIUtilProviderState>;
|
|
13
13
|
export declare const useUIUtilContext: () => IUIUtilProviderState;
|
|
@@ -31,6 +31,7 @@ const defaultState = {
|
|
|
31
31
|
show: null,
|
|
32
32
|
hide: null,
|
|
33
33
|
},
|
|
34
|
+
viewport: new ViewportDetect_1.CurrentViewport(undefined),
|
|
34
35
|
};
|
|
35
36
|
exports.UIUtilContext = React.createContext(defaultState);
|
|
36
37
|
const useUIUtilContext = () => React.useContext(exports.UIUtilContext);
|
|
@@ -6,6 +6,15 @@ export declare enum Viewport {
|
|
|
6
6
|
MD = "md",
|
|
7
7
|
LG = "lg"
|
|
8
8
|
}
|
|
9
|
+
export declare class CurrentViewport {
|
|
10
|
+
private _current;
|
|
11
|
+
constructor(_current: Viewport);
|
|
12
|
+
get isXS(): boolean;
|
|
13
|
+
get isSM(): boolean;
|
|
14
|
+
get isMD(): boolean;
|
|
15
|
+
get isLG(): boolean;
|
|
16
|
+
get current(): Viewport;
|
|
17
|
+
}
|
|
9
18
|
export declare const ViewportDetect: React.FC<{
|
|
10
|
-
onChange: (
|
|
19
|
+
onChange: (current: CurrentViewport) => void;
|
|
11
20
|
}>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ViewportDetect = exports.Viewport = void 0;
|
|
3
|
+
exports.ViewportDetect = exports.CurrentViewport = exports.Viewport = void 0;
|
|
4
4
|
const React = require("react");
|
|
5
5
|
require("../styles/viewport.css");
|
|
6
6
|
const utilities_1 = require("../helpers/utilities");
|
|
@@ -11,6 +11,27 @@ var Viewport;
|
|
|
11
11
|
Viewport["MD"] = "md";
|
|
12
12
|
Viewport["LG"] = "lg";
|
|
13
13
|
})(Viewport || (exports.Viewport = Viewport = {}));
|
|
14
|
+
class CurrentViewport {
|
|
15
|
+
constructor(_current) {
|
|
16
|
+
this._current = _current;
|
|
17
|
+
}
|
|
18
|
+
get isXS() {
|
|
19
|
+
return this._current === Viewport.XS;
|
|
20
|
+
}
|
|
21
|
+
get isSM() {
|
|
22
|
+
return this._current === Viewport.SM;
|
|
23
|
+
}
|
|
24
|
+
get isMD() {
|
|
25
|
+
return this._current === Viewport.MD;
|
|
26
|
+
}
|
|
27
|
+
get isLG() {
|
|
28
|
+
return this._current === Viewport.LG;
|
|
29
|
+
}
|
|
30
|
+
get current() {
|
|
31
|
+
return this._current;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.CurrentViewport = CurrentViewport;
|
|
14
35
|
const DetectionElement = ({ viewport, onVisibilityChange, }) => {
|
|
15
36
|
const ref = React.useRef(null);
|
|
16
37
|
const isVisible = (0, utilities_1.useIsVisible)(ref);
|
|
@@ -22,7 +43,7 @@ const DetectionElement = ({ viewport, onVisibilityChange, }) => {
|
|
|
22
43
|
exports.ViewportDetect = React.memo(({ onChange }) => {
|
|
23
44
|
const onVisibilityChange = (viewport, isVisible) => {
|
|
24
45
|
if (isVisible) {
|
|
25
|
-
onChange(viewport);
|
|
46
|
+
onChange(new CurrentViewport(viewport));
|
|
26
47
|
}
|
|
27
48
|
};
|
|
28
49
|
return (React.createElement(React.Fragment, null, Object.keys(Viewport)
|