@dynamic-framework/ui-react 2.0.0-dev.22 → 2.0.0-dev.23
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/css/dynamic-ui-non-root.css +13220 -1
- package/dist/css/dynamic-ui-non-root.min.css +2 -2
- package/dist/css/dynamic-ui-root.css +1 -1
- package/dist/css/dynamic-ui-root.min.css +1 -1
- package/dist/css/dynamic-ui.css +13220 -1
- package/dist/css/dynamic-ui.min.css +2 -2
- package/dist/index.esm.js +66 -2
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +74 -1
- package/dist/index.js.map +1 -1
- package/dist/types/components/DCreditCard/DCreditCard.d.ts +2 -1
- package/dist/types/components/DDataStateWrapper/DDataStateWrapper.d.ts +14 -0
- package/dist/types/components/DDataStateWrapper/components/EmptyState.d.ts +8 -0
- package/dist/types/components/DDataStateWrapper/components/ErrorState.d.ts +8 -0
- package/dist/types/components/DDataStateWrapper/components/LoadingState.d.ts +6 -0
- package/dist/types/components/DDataStateWrapper/index.d.ts +2 -0
- package/dist/types/components/DErrorBoundary/DErrorBoundary.d.ts +11 -0
- package/dist/types/components/DErrorBoundary/components/DefaultErrorBoundary.d.ts +6 -0
- package/dist/types/components/DErrorBoundary/index.d.ts +3 -0
- package/dist/types/components/index.d.ts +2 -0
- package/package.json +2 -1
- package/src/style/abstracts/_utilities-dark.scss +72 -0
- package/src/style/dynamic-ui-non-root.scss +2 -0
- package/src/style/dynamic-ui.scss +1 -0
package/dist/index.js
CHANGED
|
@@ -20,6 +20,7 @@ var reactHotToast = require('react-hot-toast');
|
|
|
20
20
|
var reactInternationalPhone = require('react-international-phone');
|
|
21
21
|
var googleLibphonenumber = require('google-libphonenumber');
|
|
22
22
|
var html2canvas = require('html2canvas');
|
|
23
|
+
var reactErrorBoundary = require('react-error-boundary');
|
|
23
24
|
var i18n = require('i18next');
|
|
24
25
|
var reactI18next = require('react-i18next');
|
|
25
26
|
|
|
@@ -2495,8 +2496,12 @@ ForwardedDInputPhone.displayName = 'DInputPhone';
|
|
|
2495
2496
|
|
|
2496
2497
|
const DEFAULT_IMAGE = 'https://cdn.modyo.cloud/uploads/06b434f7-b943-4f54-9543-84a904e189aa/original/Visa_Logo_1_.png';
|
|
2497
2498
|
const CHIP_IMAGE = 'https://cdn.modyo.cloud/uploads/4660ad00-e5d8-477e-8919-52b53d0a26fb/original/chip-debit-svgrepo-com_1_.png';
|
|
2499
|
+
const BRAND_LOGOS = {
|
|
2500
|
+
visa: DEFAULT_IMAGE,
|
|
2501
|
+
mastercard: 'https://cdn.modyo.cloud/uploads/f686b9aa-65ab-4369-9db3-89ceece84f29/original/mastercard.png',
|
|
2502
|
+
};
|
|
2498
2503
|
function DCreditCard({ brand = 'visa', name, number, holderText = 'Card Holder', logoImage, isChipVisible = true, className, isVertical = false, }) {
|
|
2499
|
-
return (jsxRuntime.jsxs("div", { className: classNames('d-credit-card overflow-hidden text-white', 'position-relative rounded-3', 'd-flex', isVertical && 'is-vertical', className), children: [jsxRuntime.jsxs("div", { className: "d-credit-card-header", children: [jsxRuntime.jsx("img", { src: logoImage || DEFAULT_IMAGE, alt: brand, className: "d-credit-card-logo", width: 100 }), isChipVisible && (jsxRuntime.jsx("div", { className: "d-credit-card-chip p-2 rounded-2", children: jsxRuntime.jsx("img", { src: CHIP_IMAGE, alt: "chip", width: 30, className: "d-credit-card-chip-image" }) }))] }), jsxRuntime.jsxs("div", { className: "d-credit-card-details mt-auto d-none d-sm-block", children: [jsxRuntime.jsx("div", { className: "d-credit-card-number d-none d-sm-block mb-4", children: number }), jsxRuntime.jsx("small", { className: "d-block opacity-50", children: holderText }), jsxRuntime.jsx("span", { className: "name", children: name })] })] }));
|
|
2504
|
+
return (jsxRuntime.jsxs("div", { className: classNames('d-credit-card overflow-hidden text-white', 'position-relative rounded-3', 'd-flex', isVertical && 'is-vertical', className), children: [jsxRuntime.jsxs("div", { className: "d-credit-card-header", children: [jsxRuntime.jsx("img", { src: logoImage || BRAND_LOGOS[brand] || DEFAULT_IMAGE, alt: brand, className: "d-credit-card-logo", width: 100 }), isChipVisible && (jsxRuntime.jsx("div", { className: "d-credit-card-chip p-2 rounded-2", children: jsxRuntime.jsx("img", { src: CHIP_IMAGE, alt: "chip", width: 30, className: "d-credit-card-chip-image" }) }))] }), jsxRuntime.jsxs("div", { className: "d-credit-card-details mt-auto d-none d-sm-block", children: [jsxRuntime.jsx("div", { className: "d-credit-card-number d-none d-sm-block mb-4", children: number }), jsxRuntime.jsx("small", { className: "d-block opacity-50", children: holderText }), jsxRuntime.jsx("span", { className: "name", children: name })] })] }));
|
|
2500
2505
|
}
|
|
2501
2506
|
|
|
2502
2507
|
const getItemClass = (action) => {
|
|
@@ -2753,6 +2758,72 @@ function DOtp({ className, action, isLoading, otpSize = 6, texts = TEXT_PROPS, s
|
|
|
2753
2758
|
}, loading: isLoading }), jsxRuntime.jsx("p", { className: "small ms-lg-auto mb-0", children: texts.contact })] })] })] }));
|
|
2754
2759
|
}
|
|
2755
2760
|
|
|
2761
|
+
function DefaultErrorBoundary({ resetErrorBoundary }) {
|
|
2762
|
+
return (jsxRuntime.jsx(DAlert, { color: "danger", showClose: false, children: jsxRuntime.jsxs("div", { className: "d-flex align-items-center gap-2", children: [jsxRuntime.jsx("span", { children: "An unexpected error occurred." }), jsxRuntime.jsx(DButton, { color: "secondary", variant: "outline", size: "sm", onClick: resetErrorBoundary, children: "Retry" })] }) }));
|
|
2763
|
+
}
|
|
2764
|
+
|
|
2765
|
+
function DErrorBoundary({ name, fallback, resetKeys, onReset, onError, children, }) {
|
|
2766
|
+
const handleError = React.useCallback((error, info) => {
|
|
2767
|
+
// eslint-disable-next-line no-console
|
|
2768
|
+
console.error(`[DErrorBoundary${name ? `:${name}` : ''}]`, reactErrorBoundary.getErrorMessage(error), info);
|
|
2769
|
+
onError === null || onError === void 0 ? void 0 : onError(error, info);
|
|
2770
|
+
}, [name, onError]);
|
|
2771
|
+
const FallbackRender = React.useCallback((props) => {
|
|
2772
|
+
if (fallback)
|
|
2773
|
+
return fallback(props);
|
|
2774
|
+
return (jsxRuntime.jsx(DefaultErrorBoundary, { resetErrorBoundary: props.resetErrorBoundary }));
|
|
2775
|
+
}, [fallback]);
|
|
2776
|
+
return (jsxRuntime.jsx(reactErrorBoundary.ErrorBoundary, { resetKeys: resetKeys, onReset: onReset, onError: handleError, fallbackRender: FallbackRender, children: children }));
|
|
2777
|
+
}
|
|
2778
|
+
|
|
2779
|
+
function ErrorState({ message, onRetry, retryMessage = 'Retry', color = 'danger', }) {
|
|
2780
|
+
return (jsxRuntime.jsxs(DAlert, { color: color, className: "d-flex align-items-center gap-3", children: [jsxRuntime.jsx("div", { className: "flex-grow-1", children: jsxRuntime.jsx("p", { className: "mb-0", children: message !== null && message !== void 0 ? message : 'An unexpected error occurred.' }) }), onRetry && (jsxRuntime.jsx(DButton, { onClick: onRetry, text: retryMessage, variant: "outline", iconStart: "RefreshCw" }))] }));
|
|
2781
|
+
}
|
|
2782
|
+
|
|
2783
|
+
function EmptyState({ message, icon = 'FileText', actionText, onAction, }) {
|
|
2784
|
+
return (jsxRuntime.jsxs("div", { className: "d-flex flex-column align-items-center justify-content-center p-5 text-center", children: [jsxRuntime.jsx(DIcon, { icon: icon, size: "3rem", className: "text-secondary mb-3" }), jsxRuntime.jsx("p", { className: "text-secondary mb-3", children: message !== null && message !== void 0 ? message : 'No data available.' }), actionText && onAction && (jsxRuntime.jsx(DButton, { onClick: onAction, text: actionText, variant: "outline" }))] }));
|
|
2785
|
+
}
|
|
2786
|
+
|
|
2787
|
+
function LoadingState({ ariaLabel = 'Loading...', className }) {
|
|
2788
|
+
return (jsxRuntime.jsx("div", { className: `d-flex align-items-center justify-content-center p-4 ${className || ''}`.trim(), "aria-busy": "true", "aria-live": "polite", children: jsxRuntime.jsx("span", { className: "spinner-border", role: "status", "aria-label": ariaLabel }) }));
|
|
2789
|
+
}
|
|
2790
|
+
|
|
2791
|
+
function render(renderable) {
|
|
2792
|
+
if (renderable === undefined)
|
|
2793
|
+
return null;
|
|
2794
|
+
return typeof renderable === 'function' ? renderable() : renderable;
|
|
2795
|
+
}
|
|
2796
|
+
function DDataStateWrapper({ isLoading, isError, data, onRetry, renderLoading, renderEmpty, renderError, children, }) {
|
|
2797
|
+
// 1. Loading
|
|
2798
|
+
if (isLoading) {
|
|
2799
|
+
if (renderLoading)
|
|
2800
|
+
return render(renderLoading);
|
|
2801
|
+
return jsxRuntime.jsx(LoadingState, {});
|
|
2802
|
+
}
|
|
2803
|
+
// 2. Error
|
|
2804
|
+
if (isError) {
|
|
2805
|
+
if (renderError)
|
|
2806
|
+
return render(renderError);
|
|
2807
|
+
return (jsxRuntime.jsx(ErrorState, { onRetry: onRetry }));
|
|
2808
|
+
}
|
|
2809
|
+
// 3. Empty
|
|
2810
|
+
if (!(data === null || data === void 0 ? void 0 : data.length)) {
|
|
2811
|
+
if (renderEmpty)
|
|
2812
|
+
return render(renderEmpty);
|
|
2813
|
+
return (jsxRuntime.jsx(EmptyState, {}));
|
|
2814
|
+
}
|
|
2815
|
+
// 4. Success
|
|
2816
|
+
return jsxRuntime.jsx(jsxRuntime.Fragment, { children: children(data) });
|
|
2817
|
+
}
|
|
2818
|
+
|
|
2819
|
+
Object.defineProperty(exports, "getErrorMessage", {
|
|
2820
|
+
enumerable: true,
|
|
2821
|
+
get: function () { return reactErrorBoundary.getErrorMessage; }
|
|
2822
|
+
});
|
|
2823
|
+
Object.defineProperty(exports, "useErrorBoundary", {
|
|
2824
|
+
enumerable: true,
|
|
2825
|
+
get: function () { return reactErrorBoundary.useErrorBoundary; }
|
|
2826
|
+
});
|
|
2756
2827
|
exports.DAlert = DAlert;
|
|
2757
2828
|
exports.DAvatar = DAvatar;
|
|
2758
2829
|
exports.DBadge = DBadge;
|
|
@@ -2772,8 +2843,10 @@ exports.DContext = DContext;
|
|
|
2772
2843
|
exports.DContextProvider = DContextProvider;
|
|
2773
2844
|
exports.DCreditCard = DCreditCard;
|
|
2774
2845
|
exports.DCurrencyText = DCurrencyText;
|
|
2846
|
+
exports.DDataStateWrapper = DDataStateWrapper;
|
|
2775
2847
|
exports.DDatePicker = DDatePicker;
|
|
2776
2848
|
exports.DDropdown = DDropdown;
|
|
2849
|
+
exports.DErrorBoundary = DErrorBoundary;
|
|
2777
2850
|
exports.DIcon = DIcon;
|
|
2778
2851
|
exports.DIconBase = DIconBase;
|
|
2779
2852
|
exports.DInput = ForwardedDInput;
|