dry-ux 1.50.0 → 1.51.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/dist/index.d.ts
CHANGED
|
@@ -13,3 +13,4 @@ export { ErrorBoundary } from "./error/ErrorBoundary";
|
|
|
13
13
|
export { ErrorScreen } from "./error/ErrorScreen";
|
|
14
14
|
export { Loader } from "./ui-utils/Loader";
|
|
15
15
|
export { Spinner } from "./ui-utils/Spinner";
|
|
16
|
+
export { RenderWhenVisible } from "./ui-utils/RenderWhenVisible";
|
package/dist/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.Spinner = exports.Loader = exports.ErrorScreen = exports.ErrorBoundary = exports.DajaxiceProxy = exports.unflatten = exports.flatten = exports.classSet = exports.DryUXProvider = exports.Money = exports.DryUXRenderer = exports.DryUXContext = exports.useDryUxContext = void 0;
|
|
17
|
+
exports.RenderWhenVisible = exports.Spinner = exports.Loader = exports.ErrorScreen = exports.ErrorBoundary = exports.DajaxiceProxy = exports.unflatten = exports.flatten = exports.classSet = exports.DryUXProvider = exports.Money = exports.DryUXRenderer = exports.DryUXContext = exports.useDryUxContext = void 0;
|
|
18
18
|
var UIUtilProvider_1 = require("./ui-utils/UIUtilProvider");
|
|
19
19
|
Object.defineProperty(exports, "useDryUxContext", { enumerable: true, get: function () { return UIUtilProvider_1.useUIUtilContext; } });
|
|
20
20
|
Object.defineProperty(exports, "DryUXContext", { enumerable: true, get: function () { return UIUtilProvider_1.UIUtilContext; } });
|
|
@@ -42,3 +42,5 @@ var Loader_1 = require("./ui-utils/Loader");
|
|
|
42
42
|
Object.defineProperty(exports, "Loader", { enumerable: true, get: function () { return Loader_1.Loader; } });
|
|
43
43
|
var Spinner_1 = require("./ui-utils/Spinner");
|
|
44
44
|
Object.defineProperty(exports, "Spinner", { enumerable: true, get: function () { return Spinner_1.Spinner; } });
|
|
45
|
+
var RenderWhenVisible_1 = require("./ui-utils/RenderWhenVisible");
|
|
46
|
+
Object.defineProperty(exports, "RenderWhenVisible", { enumerable: true, get: function () { return RenderWhenVisible_1.RenderWhenVisible; } });
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RenderWhenVisible = void 0;
|
|
4
|
+
const React = require("react");
|
|
5
|
+
const utilities_1 = require("../helpers/utilities");
|
|
6
|
+
exports.RenderWhenVisible = React.memo(({ content }) => {
|
|
7
|
+
const [isLoaded, setIsLoaded] = React.useState(false);
|
|
8
|
+
const ref = React.useRef(null);
|
|
9
|
+
const isVisible = (0, utilities_1.useIsVisible)(ref);
|
|
10
|
+
React.useEffect(() => {
|
|
11
|
+
if (!isLoaded && isVisible) {
|
|
12
|
+
setIsLoaded(true);
|
|
13
|
+
}
|
|
14
|
+
}, [isVisible]);
|
|
15
|
+
return React.createElement("div", { ref: ref }, isLoaded && content);
|
|
16
|
+
});
|