reso-ui 3.9.1 → 3.11.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.
Files changed (68) hide show
  1. package/dist/cjs/components/Banners/Autoscroll-Banner/AutoscrollBanner.js +60 -0
  2. package/dist/cjs/components/Banners/Autoscroll-Banner/AutoscrollBanner.js.map +1 -0
  3. package/dist/cjs/components/Drawer/DrawerContent.js +1 -0
  4. package/dist/cjs/components/Drawer/DrawerContent.js.map +1 -1
  5. package/dist/cjs/components/Enlarged-Image-Modal/Enlarged-Image-Modal.js +1 -0
  6. package/dist/cjs/components/Enlarged-Image-Modal/Enlarged-Image-Modal.js.map +1 -1
  7. package/dist/cjs/components/Nav/Navbar/Navbar.js +1 -0
  8. package/dist/cjs/components/Nav/Navbar/Navbar.js.map +1 -1
  9. package/dist/cjs/context/OverlayRegistryContext.js +16 -0
  10. package/dist/cjs/context/OverlayRegistryContext.js.map +1 -0
  11. package/dist/cjs/forms/Controls/Dropdown/Dropdown-Select/Dropdown-Select.js +1 -0
  12. package/dist/cjs/forms/Controls/Dropdown/Dropdown-Select/Dropdown-Select.js.map +1 -1
  13. package/dist/cjs/hooks/useOverlayRegistration.js +20 -0
  14. package/dist/cjs/hooks/useOverlayRegistration.js.map +1 -0
  15. package/dist/cjs/index.js +10 -0
  16. package/dist/cjs/index.js.map +1 -1
  17. package/dist/cjs/providers/OverlayRegistryProvider.js +96 -0
  18. package/dist/cjs/providers/OverlayRegistryProvider.js.map +1 -0
  19. package/dist/cjs/providers/ResoUiProvider.js +4 -2
  20. package/dist/cjs/providers/ResoUiProvider.js.map +1 -1
  21. package/dist/esm/components/Banners/Autoscroll-Banner/AutoscrollBanner.d.ts +14 -0
  22. package/dist/esm/components/Banners/Autoscroll-Banner/AutoscrollBanner.js +56 -0
  23. package/dist/esm/components/Banners/Autoscroll-Banner/AutoscrollBanner.js.map +1 -0
  24. package/dist/esm/components/Banners/Autoscroll-Banner/index.d.ts +2 -0
  25. package/dist/esm/components/Banners/index.d.ts +1 -0
  26. package/dist/esm/components/Drawer/DrawerContent.js +1 -0
  27. package/dist/esm/components/Drawer/DrawerContent.js.map +1 -1
  28. package/dist/esm/components/Enlarged-Image-Modal/Enlarged-Image-Modal.js +1 -0
  29. package/dist/esm/components/Enlarged-Image-Modal/Enlarged-Image-Modal.js.map +1 -1
  30. package/dist/esm/components/Nav/Navbar/Navbar.js +1 -0
  31. package/dist/esm/components/Nav/Navbar/Navbar.js.map +1 -1
  32. package/dist/esm/context/OverlayRegistryContext.d.ts +18 -0
  33. package/dist/esm/context/OverlayRegistryContext.js +14 -0
  34. package/dist/esm/context/OverlayRegistryContext.js.map +1 -0
  35. package/dist/esm/context/index.d.ts +1 -0
  36. package/dist/esm/forms/Controls/Dropdown/Dropdown-Select/Dropdown-Select.js +1 -0
  37. package/dist/esm/forms/Controls/Dropdown/Dropdown-Select/Dropdown-Select.js.map +1 -1
  38. package/dist/esm/hooks/index.d.ts +1 -0
  39. package/dist/esm/hooks/useOverlayRegistration.d.ts +9 -0
  40. package/dist/esm/hooks/useOverlayRegistration.js +18 -0
  41. package/dist/esm/hooks/useOverlayRegistration.js.map +1 -0
  42. package/dist/esm/index.js +4 -0
  43. package/dist/esm/index.js.map +1 -1
  44. package/dist/esm/providers/OverlayRegistryProvider.d.ts +9 -0
  45. package/dist/esm/providers/OverlayRegistryProvider.js +94 -0
  46. package/dist/esm/providers/OverlayRegistryProvider.js.map +1 -0
  47. package/dist/esm/providers/ResoUiProvider.d.ts +9 -1
  48. package/dist/esm/providers/ResoUiProvider.js +4 -2
  49. package/dist/esm/providers/ResoUiProvider.js.map +1 -1
  50. package/dist/esm/providers/index.d.ts +1 -0
  51. package/dist/src/library/components/Banners/Autoscroll-Banner/AutoscrollBanner.d.ts +14 -0
  52. package/dist/src/library/components/Banners/Autoscroll-Banner/__test__/AutoscrollBanner.test.d.ts +1 -0
  53. package/dist/src/library/components/Banners/Autoscroll-Banner/index.d.ts +2 -0
  54. package/dist/src/library/components/Banners/Autoscroll-Banner/stories/AutoscrollBanner.stories.d.ts +21 -0
  55. package/dist/src/library/components/Banners/index.d.ts +1 -0
  56. package/dist/src/library/components/Dialog/stories/Dialog.stories.d.ts +7 -7
  57. package/dist/src/library/context/OverlayRegistryContext.d.ts +18 -0
  58. package/dist/src/library/context/index.d.ts +1 -0
  59. package/dist/src/library/hooks/__test__/useOverlayRegistration.test.d.ts +1 -0
  60. package/dist/src/library/hooks/index.d.ts +1 -0
  61. package/dist/src/library/hooks/useOverlayRegistration.d.ts +9 -0
  62. package/dist/src/library/providers/OverlayRegistryProvider.d.ts +9 -0
  63. package/dist/src/library/providers/ResoUiProvider.d.ts +9 -1
  64. package/dist/src/library/providers/__test__/OverlayRegistryProvider.test.d.ts +1 -0
  65. package/dist/src/library/providers/index.d.ts +1 -0
  66. package/dist/src/library/providers/stories/OverlayRegistry.stories.d.ts +44 -0
  67. package/dist/styles.css +1 -1
  68. package/package.json +1 -1
@@ -0,0 +1,14 @@
1
+ import { createContext } from 'react';
2
+
3
+ const OverlayRegistryContext = createContext({
4
+ register: () => { },
5
+ unregister: () => { },
6
+ notifyChange: () => { },
7
+ showOverlay: () => { },
8
+ hideOverlay: () => { },
9
+ hasOpenDrawer: false,
10
+ hasOpenModal: false,
11
+ });
12
+
13
+ export { OverlayRegistryContext };
14
+ //# sourceMappingURL=OverlayRegistryContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OverlayRegistryContext.js","sources":["../../../src/library/context/OverlayRegistryContext.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAsBO,MAAM,sBAAsB,GAAG,aAAa,CAA0B;AAC3E,IAAA,QAAQ,EAAE,MAAK,EAAE,CAAC;AAClB,IAAA,UAAU,EAAE,MAAK,EAAE,CAAC;AACpB,IAAA,YAAY,EAAE,MAAK,EAAE,CAAC;AACtB,IAAA,WAAW,EAAE,MAAK,EAAE,CAAC;AACrB,IAAA,WAAW,EAAE,MAAK,EAAE,CAAC;AACrB,IAAA,aAAa,EAAE,KAAK;AACpB,IAAA,YAAY,EAAE,KAAK;AACpB,CAAA;;;;"}
@@ -1,2 +1,3 @@
1
1
  export * from "./ResponsiveContext";
2
2
  export * from "./ThemeContext";
3
+ export * from "./OverlayRegistryContext";
@@ -9,6 +9,7 @@ import '../../../../components/Dnd/Dnd-Array-Sorter/Dnd-Array-Sorter-Draggable-W
9
9
  import '../../../../components/Dnd/Dnd-Array-Sorter/context/DndArraySorterContext.js';
10
10
  import { useClickOutside } from '../../../../hooks/useClickOutside.js';
11
11
  import '../../../../context/ThemeContext.js';
12
+ import '../../../../context/OverlayRegistryContext.js';
12
13
  import 'react-dom';
13
14
  import '../../../../context/ResponsiveContext.js';
14
15
  import '../../../../components/MarkdownText/MarkdownText.js';
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown-Select.js","sources":["../../../../../../src/library/forms/Controls/Dropdown/Dropdown-Select/Dropdown-Select.tsx"],"sourcesContent":[null],"names":["React","DropdownDown"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown-Select.js","sources":["../../../../../../src/library/forms/Controls/Dropdown/Dropdown-Select/Dropdown-Select.tsx"],"sourcesContent":[null],"names":["React","DropdownDown"],"mappings":"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"}
@@ -5,3 +5,4 @@ export * from "./useDynamicBodyHeight";
5
5
  export * from "./useComponentWidthHeight";
6
6
  export * from "./useReducedMotion";
7
7
  export * from "./useTheme";
8
+ export * from "./useOverlayRegistration";
@@ -0,0 +1,9 @@
1
+ import { OverlayType } from "../context/OverlayRegistryContext";
2
+ export interface UseOverlayRegistrationProps {
3
+ name: string;
4
+ type: OverlayType;
5
+ isOpen: boolean;
6
+ show: () => void;
7
+ hide: () => void;
8
+ }
9
+ export declare const useOverlayRegistration: ({ name, type, isOpen, show, hide, }: UseOverlayRegistrationProps) => void;
@@ -0,0 +1,18 @@
1
+ import { useContext, useRef, useEffect } from 'react';
2
+ import { OverlayRegistryContext } from '../context/OverlayRegistryContext.js';
3
+
4
+ const useOverlayRegistration = ({ name, type, isOpen, show, hide, }) => {
5
+ const { register, unregister, notifyChange } = useContext(OverlayRegistryContext);
6
+ const isOpenRef = useRef(isOpen);
7
+ isOpenRef.current = isOpen;
8
+ useEffect(() => {
9
+ register({ name, type, getIsOpen: () => isOpenRef.current, show, hide });
10
+ return () => unregister(name);
11
+ }, []);
12
+ useEffect(() => {
13
+ notifyChange();
14
+ }, [isOpen]);
15
+ };
16
+
17
+ export { useOverlayRegistration };
18
+ //# sourceMappingURL=useOverlayRegistration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useOverlayRegistration.js","sources":["../../../src/library/hooks/useOverlayRegistration.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAWO,MAAM,sBAAsB,GAAG,CAAC,EACrC,IAAI,EACJ,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,IAAI,GACwB,KAAI;AAChC,IAAA,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,sBAAsB,CAAC;AACjF,IAAA,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;AAChC,IAAA,SAAS,CAAC,OAAO,GAAG,MAAM;IAE1B,SAAS,CAAC,MAAK;QACb,QAAQ,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACxE,QAAA,OAAO,MAAM,UAAU,CAAC,IAAI,CAAC;IAC/B,CAAC,EAAE,EAAE,CAAC;IAEN,SAAS,CAAC,MAAK;AACb,QAAA,YAAY,EAAE;AAChB,IAAA,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;AACd;;;;"}
package/dist/esm/index.js CHANGED
@@ -1,3 +1,4 @@
1
+ export { AutoscrollBanner, DEFAULT_DISPLAY_DURATION, SLIDE_DURATION } from './components/Banners/Autoscroll-Banner/AutoscrollBanner.js';
1
2
  export { Banner, TRANSITION_DURATION } from './components/Banners/Banner/Banner.js';
2
3
  export { BannerWrapper } from './components/Banners/Banner-Wrapper/Banner-Wrapper.js';
3
4
  export { Back } from './components/Buttons/Back/Back.js';
@@ -71,6 +72,7 @@ export { useDynamicBodyHeight } from './hooks/useDynamicBodyHeight.js';
71
72
  export { useComponentWidthHeight } from './hooks/useComponentWidthHeight.js';
72
73
  export { useReducedMotion } from './hooks/useReducedMotion.js';
73
74
  export { useTheme } from './hooks/useTheme.js';
75
+ export { useOverlayRegistration } from './hooks/useOverlayRegistration.js';
74
76
  export { default as AboutIcon } from './icons/svg/about.svg.js';
75
77
  export { default as ChevronSingleLeft } from './icons/svg/ChevronSingleLeft.svg.js';
76
78
  export { default as ChevronSingleRight } from './icons/svg/ChevronSingleRight.svg.js';
@@ -99,9 +101,11 @@ export { default as CartIcon } from './icons/svg/cart.svg.js';
99
101
  export { DefaultTheme } from './interfaces/Theme.js';
100
102
  export { ResponsiveContext } from './context/ResponsiveContext.js';
101
103
  export { ThemeContext } from './context/ThemeContext.js';
104
+ export { OverlayRegistryContext } from './context/OverlayRegistryContext.js';
102
105
  export { ResoUiProvider } from './providers/ResoUiProvider.js';
103
106
  export { ResponsiveProvider } from './providers/ResponsiveProvider.js';
104
107
  export { ThemeProvider } from './providers/ThemeProvider.js';
108
+ export { OverlayRegistryProvider } from './providers/OverlayRegistryProvider.js';
105
109
  export { defaultTheme } from './themes/defaultTheme.js';
106
110
  export { darkTheme } from './themes/darkTheme.js';
107
111
  export { numberIsLessThan, numberIsMoreThanOrEqualsTo, numberIsPositiveInteger, numberIsRequired, valueIsNumber } from './forms/Validators/Number.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ export interface IOverlayRegistryProviderProps {
3
+ children: React.ReactNode;
4
+ beforeDrawerOpens?: () => Promise<void> | void;
5
+ beforeModalOpens?: () => Promise<void> | void;
6
+ afterDrawerCloses?: () => void;
7
+ afterModalCloses?: () => void;
8
+ }
9
+ export declare const OverlayRegistryProvider: ({ children, beforeDrawerOpens, beforeModalOpens, afterDrawerCloses, afterModalCloses, }: IOverlayRegistryProviderProps) => React.JSX.Element;
@@ -0,0 +1,94 @@
1
+ import React__default, { useRef, useState, useCallback } from 'react';
2
+ import { OverlayRegistryContext } from '../context/OverlayRegistryContext.js';
3
+
4
+ const OverlayRegistryProvider = ({ children, beforeDrawerOpens, beforeModalOpens, afterDrawerCloses, afterModalCloses, }) => {
5
+ const registryRef = useRef(new Map());
6
+ const [hasOpenDrawer, setHasOpenDrawer] = useState(false);
7
+ const [hasOpenModal, setHasOpenModal] = useState(false);
8
+ const busyRef = useRef(false);
9
+ const pendingRef = useRef(null);
10
+ const recalculate = useCallback(() => {
11
+ let drawerOpen = false;
12
+ let modalOpen = false;
13
+ registryRef.current.forEach((entry) => {
14
+ const isOpen = entry.getIsOpen();
15
+ if (isOpen && entry.type === "drawer")
16
+ drawerOpen = true;
17
+ if (isOpen && entry.type === "modal")
18
+ modalOpen = true;
19
+ });
20
+ setHasOpenDrawer(drawerOpen);
21
+ setHasOpenModal(modalOpen);
22
+ }, []);
23
+ const register = useCallback((overlay) => {
24
+ registryRef.current.set(overlay.name, overlay);
25
+ recalculate();
26
+ }, [recalculate]);
27
+ const unregister = useCallback((name) => {
28
+ registryRef.current.delete(name);
29
+ recalculate();
30
+ }, [recalculate]);
31
+ const showOverlay = useCallback(async (name) => {
32
+ if (busyRef.current) {
33
+ pendingRef.current = name;
34
+ return;
35
+ }
36
+ const entry = registryRef.current.get(name);
37
+ if (!entry)
38
+ return;
39
+ busyRef.current = true;
40
+ if (entry.type === "drawer") {
41
+ registryRef.current.forEach((other) => {
42
+ if (other.type === "drawer" && other.getIsOpen() && other.name !== name) {
43
+ other.hide();
44
+ }
45
+ });
46
+ if (beforeDrawerOpens) {
47
+ await beforeDrawerOpens();
48
+ }
49
+ }
50
+ else if (entry.type === "modal") {
51
+ registryRef.current.forEach((other) => {
52
+ if (other.type === "modal" && other.getIsOpen() && other.name !== name) {
53
+ other.hide();
54
+ }
55
+ });
56
+ if (beforeModalOpens) {
57
+ await beforeModalOpens();
58
+ }
59
+ }
60
+ entry.show();
61
+ busyRef.current = false;
62
+ if (pendingRef.current) {
63
+ const pending = pendingRef.current;
64
+ pendingRef.current = null;
65
+ // eslint-disable-next-line react-hooks/immutability
66
+ showOverlay(pending);
67
+ }
68
+ }, [beforeDrawerOpens, beforeModalOpens]);
69
+ const hideOverlay = useCallback((name) => {
70
+ const entry = registryRef.current.get(name);
71
+ if (!entry)
72
+ return;
73
+ entry.hide();
74
+ recalculate();
75
+ if (entry.type === "drawer" && afterDrawerCloses) {
76
+ afterDrawerCloses();
77
+ }
78
+ else if (entry.type === "modal" && afterModalCloses) {
79
+ afterModalCloses();
80
+ }
81
+ }, [afterDrawerCloses, afterModalCloses, recalculate]);
82
+ return (React__default.createElement(OverlayRegistryContext.Provider, { value: {
83
+ register,
84
+ unregister,
85
+ notifyChange: recalculate,
86
+ showOverlay,
87
+ hideOverlay,
88
+ hasOpenDrawer,
89
+ hasOpenModal,
90
+ } }, children));
91
+ };
92
+
93
+ export { OverlayRegistryProvider };
94
+ //# sourceMappingURL=OverlayRegistryProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OverlayRegistryProvider.js","sources":["../../../src/library/providers/OverlayRegistryProvider.tsx"],"sourcesContent":[null],"names":["React"],"mappings":"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"}
@@ -1,9 +1,17 @@
1
1
  import React from "react";
2
2
  import "../styles/global.scss";
3
+ import { IOverlayRegistryProviderProps } from "./OverlayRegistryProvider";
3
4
  import { ResoThemeConfig, ThemeMode } from "../types/theme";
5
+ export interface IOverlayConfig {
6
+ beforeDrawerOpens?: IOverlayRegistryProviderProps["beforeDrawerOpens"];
7
+ beforeModalOpens?: IOverlayRegistryProviderProps["beforeModalOpens"];
8
+ afterDrawerCloses?: IOverlayRegistryProviderProps["afterDrawerCloses"];
9
+ afterModalCloses?: IOverlayRegistryProviderProps["afterModalCloses"];
10
+ }
4
11
  export interface IResoUiProviderProps {
5
12
  children: React.ReactNode;
6
13
  theme?: ResoThemeConfig;
7
14
  mode?: ThemeMode;
15
+ overlayConfigs?: IOverlayConfig;
8
16
  }
9
- export declare const ResoUiProvider: ({ children, theme, mode }: IResoUiProviderProps) => React.JSX.Element;
17
+ export declare const ResoUiProvider: ({ children, theme, mode, overlayConfigs }: IResoUiProviderProps) => React.JSX.Element;
@@ -1,10 +1,12 @@
1
1
  import React__default from 'react';
2
2
  import { ResponsiveProvider } from './ResponsiveProvider.js';
3
3
  import { ThemeProvider } from './ThemeProvider.js';
4
+ import { OverlayRegistryProvider } from './OverlayRegistryProvider.js';
4
5
 
5
- const ResoUiProvider = ({ children, theme, mode = "light" }) => {
6
+ const ResoUiProvider = ({ children, theme, mode = "light", overlayConfigs }) => {
6
7
  return (React__default.createElement(ThemeProvider, { theme: theme, mode: mode },
7
- React__default.createElement(ResponsiveProvider, null, children)));
8
+ React__default.createElement(ResponsiveProvider, null,
9
+ React__default.createElement(OverlayRegistryProvider, { beforeDrawerOpens: overlayConfigs === null || overlayConfigs === void 0 ? void 0 : overlayConfigs.beforeDrawerOpens, beforeModalOpens: overlayConfigs === null || overlayConfigs === void 0 ? void 0 : overlayConfigs.beforeModalOpens, afterDrawerCloses: overlayConfigs === null || overlayConfigs === void 0 ? void 0 : overlayConfigs.afterDrawerCloses, afterModalCloses: overlayConfigs === null || overlayConfigs === void 0 ? void 0 : overlayConfigs.afterModalCloses }, children))));
8
10
  };
9
11
 
10
12
  export { ResoUiProvider };
@@ -1 +1 @@
1
- {"version":3,"file":"ResoUiProvider.js","sources":["../../../src/library/providers/ResoUiProvider.tsx"],"sourcesContent":[null],"names":["React"],"mappings":";;;;AAYO,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,GAAG,OAAO,EAAwB,KAAI;IAC1F,QACEA,cAAA,CAAA,aAAA,CAAC,aAAa,EAAA,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAA;AACrC,QAAAA,cAAA,CAAA,aAAA,CAAC,kBAAkB,EAAA,IAAA,EAAE,QAAQ,CAAsB,CACrC;AAEpB;;;;"}
1
+ {"version":3,"file":"ResoUiProvider.js","sources":["../../../src/library/providers/ResoUiProvider.tsx"],"sourcesContent":[null],"names":["React"],"mappings":";;;;;AAqBO,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,GAAG,OAAO,EAAE,cAAc,EAAwB,KAAI;IAC1G,QACEA,cAAA,CAAA,aAAA,CAAC,aAAa,EAAA,EAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAA;AACrC,QAAAA,cAAA,CAAA,aAAA,CAAC,kBAAkB,EAAA,IAAA;YACjBA,cAAA,CAAA,aAAA,CAAC,uBAAuB,IACtB,iBAAiB,EAAE,cAAc,KAAA,IAAA,IAAd,cAAc,uBAAd,cAAc,CAAE,iBAAiB,EACpD,gBAAgB,EAAE,cAAc,KAAA,IAAA,IAAd,cAAc,KAAA,MAAA,GAAA,MAAA,GAAd,cAAc,CAAE,gBAAgB,EAClD,iBAAiB,EAAE,cAAc,KAAA,IAAA,IAAd,cAAc,KAAA,MAAA,GAAA,MAAA,GAAd,cAAc,CAAE,iBAAiB,EACpD,gBAAgB,EAAE,cAAc,KAAA,IAAA,IAAd,cAAc,KAAA,MAAA,GAAA,MAAA,GAAd,cAAc,CAAE,gBAAgB,EAAA,EAEjD,QAAQ,CACe,CACP,CACP;AAEpB;;;;"}
@@ -1,3 +1,4 @@
1
1
  export * from "./ResoUiProvider";
2
2
  export * from "./ResponsiveProvider";
3
3
  export * from "./ThemeProvider";
4
+ export * from "./OverlayRegistryProvider";
@@ -0,0 +1,14 @@
1
+ import React from "react";
2
+ import IComponent from "../../../interfaces/IComponent";
3
+ import { IMarginProps } from "../../../interfaces/ISpacingsProps";
4
+ import "./styles/AutoscrollBanner.layout.scss";
5
+ import "./styles/AutoscrollBanner.theme.scss";
6
+ export declare const SLIDE_DURATION = 400;
7
+ export declare const DEFAULT_DISPLAY_DURATION = 3000;
8
+ export interface IAutoscrollBannerProps extends IComponent, IMarginProps {
9
+ messages: string[];
10
+ displayDurationMs?: number;
11
+ type?: "info" | "warning" | "error" | "success";
12
+ maxHeight?: number;
13
+ }
14
+ export declare const AutoscrollBanner: ({ messages, displayDurationMs, type, maxHeight, rootClassName, rootStyles, ...spacingsProps }: IAutoscrollBannerProps) => React.JSX.Element;
@@ -0,0 +1,2 @@
1
+ import "../../../styles/global.scss";
2
+ export * from "./AutoscrollBanner";
@@ -0,0 +1,21 @@
1
+ import React from "react";
2
+ declare const _default: {
3
+ title: string;
4
+ component: ({ messages, displayDurationMs, type, maxHeight, rootClassName, rootStyles, ...spacingsProps }: import("../AutoscrollBanner").IAutoscrollBannerProps) => React.JSX.Element;
5
+ parameters: {
6
+ docs: {
7
+ description: {
8
+ component: string;
9
+ };
10
+ };
11
+ };
12
+ };
13
+ export default _default;
14
+ export declare const DefaultInfo: any;
15
+ export declare const SuccessType: any;
16
+ export declare const WarningType: any;
17
+ export declare const ErrorType: any;
18
+ export declare const SingleMessage: any;
19
+ export declare const CustomDuration: any;
20
+ export declare const WithCustomStyle: any;
21
+ export declare const ManyMessages: any;
@@ -1,2 +1,3 @@
1
+ export * from "./Autoscroll-Banner";
1
2
  export * from "./Banner";
2
3
  export * from "./Banner-Wrapper";
@@ -23,15 +23,15 @@ declare const _default: {
23
23
  okButtonStyles?: React.CSSProperties;
24
24
  rootClassName?: string;
25
25
  rootStyles?: React.CSSProperties;
26
- pa?: 0 | 2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
27
- pv?: 0 | 2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
28
- ph?: 0 | 2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
29
- pt?: 0 | 2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
30
- pb?: 0 | 2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
31
- pr?: 0 | 2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
32
- pl?: 0 | 2 | 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9;
33
26
  isOpen: boolean;
34
27
  layer?: number;
28
+ pa?: 0 | 2 | 1 | 3 | 4 | 8 | 5 | 6 | 7 | 9;
29
+ pv?: 0 | 2 | 1 | 3 | 4 | 8 | 5 | 6 | 7 | 9;
30
+ ph?: 0 | 2 | 1 | 3 | 4 | 8 | 5 | 6 | 7 | 9;
31
+ pt?: 0 | 2 | 1 | 3 | 4 | 8 | 5 | 6 | 7 | 9;
32
+ pb?: 0 | 2 | 1 | 3 | 4 | 8 | 5 | 6 | 7 | 9;
33
+ pr?: 0 | 2 | 1 | 3 | 4 | 8 | 5 | 6 | 7 | 9;
34
+ pl?: 0 | 2 | 1 | 3 | 4 | 8 | 5 | 6 | 7 | 9;
35
35
  }>) => React.JSX.Element)[];
36
36
  parameters: {
37
37
  docs: {
@@ -0,0 +1,18 @@
1
+ export type OverlayType = "drawer" | "modal" | "dialog";
2
+ export interface OverlayRegistration {
3
+ name: string;
4
+ type: OverlayType;
5
+ getIsOpen: () => boolean;
6
+ show: () => void;
7
+ hide: () => void;
8
+ }
9
+ export interface IOverlayRegistryContext {
10
+ register: (overlay: OverlayRegistration) => void;
11
+ unregister: (name: string) => void;
12
+ notifyChange: () => void;
13
+ showOverlay: (name: string) => void;
14
+ hideOverlay: (name: string) => void;
15
+ hasOpenDrawer: boolean;
16
+ hasOpenModal: boolean;
17
+ }
18
+ export declare const OverlayRegistryContext: import("react").Context<IOverlayRegistryContext>;
@@ -1,2 +1,3 @@
1
1
  export * from "./ResponsiveContext";
2
2
  export * from "./ThemeContext";
3
+ export * from "./OverlayRegistryContext";
@@ -5,3 +5,4 @@ export * from "./useDynamicBodyHeight";
5
5
  export * from "./useComponentWidthHeight";
6
6
  export * from "./useReducedMotion";
7
7
  export * from "./useTheme";
8
+ export * from "./useOverlayRegistration";
@@ -0,0 +1,9 @@
1
+ import { OverlayType } from "../context/OverlayRegistryContext";
2
+ export interface UseOverlayRegistrationProps {
3
+ name: string;
4
+ type: OverlayType;
5
+ isOpen: boolean;
6
+ show: () => void;
7
+ hide: () => void;
8
+ }
9
+ export declare const useOverlayRegistration: ({ name, type, isOpen, show, hide, }: UseOverlayRegistrationProps) => void;
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ export interface IOverlayRegistryProviderProps {
3
+ children: React.ReactNode;
4
+ beforeDrawerOpens?: () => Promise<void> | void;
5
+ beforeModalOpens?: () => Promise<void> | void;
6
+ afterDrawerCloses?: () => void;
7
+ afterModalCloses?: () => void;
8
+ }
9
+ export declare const OverlayRegistryProvider: ({ children, beforeDrawerOpens, beforeModalOpens, afterDrawerCloses, afterModalCloses, }: IOverlayRegistryProviderProps) => React.JSX.Element;
@@ -1,9 +1,17 @@
1
1
  import React from "react";
2
2
  import "../styles/global.scss";
3
+ import { IOverlayRegistryProviderProps } from "./OverlayRegistryProvider";
3
4
  import { ResoThemeConfig, ThemeMode } from "../types/theme";
5
+ export interface IOverlayConfig {
6
+ beforeDrawerOpens?: IOverlayRegistryProviderProps["beforeDrawerOpens"];
7
+ beforeModalOpens?: IOverlayRegistryProviderProps["beforeModalOpens"];
8
+ afterDrawerCloses?: IOverlayRegistryProviderProps["afterDrawerCloses"];
9
+ afterModalCloses?: IOverlayRegistryProviderProps["afterModalCloses"];
10
+ }
4
11
  export interface IResoUiProviderProps {
5
12
  children: React.ReactNode;
6
13
  theme?: ResoThemeConfig;
7
14
  mode?: ThemeMode;
15
+ overlayConfigs?: IOverlayConfig;
8
16
  }
9
- export declare const ResoUiProvider: ({ children, theme, mode }: IResoUiProviderProps) => React.JSX.Element;
17
+ export declare const ResoUiProvider: ({ children, theme, mode, overlayConfigs }: IResoUiProviderProps) => React.JSX.Element;
@@ -1,3 +1,4 @@
1
1
  export * from "./ResoUiProvider";
2
2
  export * from "./ResponsiveProvider";
3
3
  export * from "./ThemeProvider";
4
+ export * from "./OverlayRegistryProvider";
@@ -0,0 +1,44 @@
1
+ import React from "react";
2
+ import { Meta } from "@storybook/react";
3
+ declare const meta: Meta;
4
+ export default meta;
5
+ export declare const ExclusiveDrawers: {
6
+ (): React.JSX.Element;
7
+ parameters: {
8
+ docs: {
9
+ description: {
10
+ story: string;
11
+ };
12
+ };
13
+ };
14
+ };
15
+ export declare const OverlayState: {
16
+ (): React.JSX.Element;
17
+ parameters: {
18
+ docs: {
19
+ description: {
20
+ story: string;
21
+ };
22
+ };
23
+ };
24
+ };
25
+ export declare const RootSetup: {
26
+ (): React.JSX.Element;
27
+ parameters: {
28
+ docs: {
29
+ description: {
30
+ story: string;
31
+ };
32
+ };
33
+ };
34
+ };
35
+ export declare const WithLifecycleCallbacks: {
36
+ (): React.JSX.Element;
37
+ parameters: {
38
+ docs: {
39
+ description: {
40
+ story: string;
41
+ };
42
+ };
43
+ };
44
+ };