@ozen-ui/kit 0.80.0 → 0.81.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/__inner__/cjs/components/Dialog/Dialog.d.ts +1 -0
- package/__inner__/cjs/components/DialogNext/components/DialogModal/DialogModal.d.ts +1 -0
- package/__inner__/cjs/components/DialogNext/types.d.ts +1 -1
- package/__inner__/cjs/components/Drawer/Drawer.d.ts +1 -0
- package/__inner__/cjs/components/Modal/Modal.d.ts +1 -0
- package/__inner__/cjs/components/Modal/Modal.js +13 -5
- package/__inner__/cjs/components/Modal/constants.d.ts +1 -0
- package/__inner__/cjs/components/Modal/constants.js +2 -1
- package/__inner__/cjs/components/Modal/types.d.ts +2 -0
- package/__inner__/cjs/components/OzenProvider/providers/theme/entities/defaultProps.d.ts +2 -1
- package/__inner__/cjs/components/StepperVertical/StepperVertical.d.ts +1 -0
- package/__inner__/cjs/components/StepperVertical/StepperVertical.js +14 -3
- package/__inner__/cjs/components/StepperVertical/StepperVerticalContext.d.ts +8 -0
- package/__inner__/cjs/components/StepperVertical/StepperVerticalContext.js +10 -0
- package/__inner__/cjs/components/StepperVertical/hooks/index.d.ts +4 -0
- package/__inner__/cjs/components/StepperVertical/hooks/index.js +7 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalCreateStep/index.d.ts +2 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalCreateStep/index.js +5 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalCreateStep/types.d.ts +11 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalCreateStep/types.js +2 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalCreateStep/useStepperVerticalCreateStep.d.ts +2 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalCreateStep/useStepperVerticalCreateStep.js +48 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepHelper.d.ts +5 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepHelper.js +92 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsControl/index.d.ts +2 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsControl/index.js +5 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsControl/types.d.ts +8 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsControl/types.js +2 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsControl/useStepperVerticalStepsControl.d.ts +2 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsControl/useStepperVerticalStepsControl.js +26 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsStructure/index.d.ts +2 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsStructure/index.js +5 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsStructure/types.d.ts +15 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsStructure/types.js +2 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsStructure/useStepperVerticalStepsStructure.d.ts +8 -0
- package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsStructure/useStepperVerticalStepsStructure.js +82 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalIconIndicator/constants.js +1 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStep.css +42 -4
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStep.d.ts +0 -1
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStep.js +46 -16
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStepContext.d.ts +3 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStepContext.js +11 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStepRootContext.d.ts +7 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStepRootContext.js +15 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/classNames.d.ts +1 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/classNames.js +5 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/entities/variant.d.ts +1 -1
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/entities/variant.js +1 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/index.d.ts +2 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/index.js +2 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStep/types.d.ts +2 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/StepperVerticalStepSubstepButton.css +10 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/StepperVerticalStepSubstepButton.d.ts +3 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/StepperVerticalStepSubstepButton.js +31 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/constants.d.ts +2 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/constants.js +6 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/entities/content.d.ts +4 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/entities/content.js +2 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/entities/index.d.ts +1 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/entities/index.js +4 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/index.d.ts +3 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/index.js +6 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/types.d.ts +11 -0
- package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalStepSubstepButton/types.js +2 -0
- package/__inner__/cjs/components/StepperVertical/modules/index.d.ts +1 -0
- package/__inner__/cjs/components/StepperVertical/modules/index.js +1 -0
- package/__inner__/cjs/hooks/useEventBus/index.d.ts +1 -0
- package/__inner__/cjs/hooks/useEventBus/index.js +4 -0
- package/__inner__/cjs/hooks/useEventBus/useEventBus.d.ts +3 -0
- package/__inner__/cjs/hooks/useEventBus/useEventBus.js +9 -0
- package/__inner__/cjs/hooks/useEventBusEvents/index.d.ts +2 -0
- package/__inner__/cjs/hooks/useEventBusEvents/index.js +5 -0
- package/__inner__/cjs/hooks/useEventBusEvents/types.d.ts +4 -0
- package/__inner__/cjs/hooks/useEventBusEvents/types.js +2 -0
- package/__inner__/cjs/hooks/useEventBusEvents/useEventBusEvents.d.ts +5 -0
- package/__inner__/cjs/hooks/useEventBusEvents/useEventBusEvents.js +40 -0
- package/__inner__/cjs/utils/eventBus/EventBus.d.ts +8 -0
- package/__inner__/cjs/utils/eventBus/EventBus.js +51 -0
- package/__inner__/cjs/utils/eventBus/index.d.ts +2 -0
- package/__inner__/cjs/utils/eventBus/index.js +5 -0
- package/__inner__/cjs/utils/eventBus/types/EventBusEvents.d.ts +1 -0
- package/__inner__/cjs/utils/eventBus/types/EventBusEvents.js +2 -0
- package/__inner__/cjs/utils/eventBus/types/EventBusListener.d.ts +5 -0
- package/__inner__/cjs/utils/eventBus/types/EventBusListener.js +2 -0
- package/__inner__/cjs/utils/eventBus/types/EventBusListenerCallback.d.ts +1 -0
- package/__inner__/cjs/utils/eventBus/types/EventBusListenerCallback.js +2 -0
- package/__inner__/cjs/utils/eventBus/types/ExtractEventBusEvents.d.ts +3 -0
- package/__inner__/cjs/utils/eventBus/types/ExtractEventBusEvents.js +2 -0
- package/__inner__/cjs/utils/eventBus/types/index.d.ts +4 -0
- package/__inner__/cjs/utils/eventBus/types/index.js +7 -0
- package/__inner__/cjs/utils/index.d.ts +1 -0
- package/__inner__/cjs/utils/index.js +1 -0
- package/__inner__/cjs/utils/test-utils.d.ts +9 -1
- package/__inner__/cjs/utils/test-utils.js +19 -2
- package/__inner__/esm/components/Dialog/Dialog.d.ts +1 -0
- package/__inner__/esm/components/DialogNext/components/DialogModal/DialogModal.d.ts +1 -0
- package/__inner__/esm/components/DialogNext/types.d.ts +1 -1
- package/__inner__/esm/components/Drawer/Drawer.d.ts +1 -0
- package/__inner__/esm/components/Modal/Modal.d.ts +1 -0
- package/__inner__/esm/components/Modal/Modal.js +14 -6
- package/__inner__/esm/components/Modal/constants.d.ts +1 -0
- package/__inner__/esm/components/Modal/constants.js +1 -0
- package/__inner__/esm/components/Modal/types.d.ts +2 -0
- package/__inner__/esm/components/OzenProvider/providers/theme/entities/defaultProps.d.ts +2 -1
- package/__inner__/esm/components/StepperVertical/StepperVertical.d.ts +1 -0
- package/__inner__/esm/components/StepperVertical/StepperVertical.js +14 -3
- package/__inner__/esm/components/StepperVertical/StepperVerticalContext.d.ts +8 -0
- package/__inner__/esm/components/StepperVertical/StepperVerticalContext.js +10 -0
- package/__inner__/esm/components/StepperVertical/hooks/index.d.ts +4 -0
- package/__inner__/esm/components/StepperVertical/hooks/index.js +4 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalCreateStep/index.d.ts +2 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalCreateStep/index.js +2 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalCreateStep/types.d.ts +11 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalCreateStep/types.js +1 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalCreateStep/useStepperVerticalCreateStep.d.ts +2 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalCreateStep/useStepperVerticalCreateStep.js +44 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepHelper.d.ts +5 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepHelper.js +88 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsControl/index.d.ts +2 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsControl/index.js +2 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsControl/types.d.ts +8 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsControl/types.js +1 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsControl/useStepperVerticalStepsControl.d.ts +2 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsControl/useStepperVerticalStepsControl.js +22 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsStructure/index.d.ts +2 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsStructure/index.js +2 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsStructure/types.d.ts +15 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsStructure/types.js +1 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsStructure/useStepperVerticalStepsStructure.d.ts +8 -0
- package/__inner__/esm/components/StepperVertical/hooks/useStepperVerticalStepsStructure/useStepperVerticalStepsStructure.js +78 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalIconIndicator/constants.js +2 -1
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStep.css +42 -4
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStep.d.ts +0 -1
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStep.js +46 -16
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStepContext.d.ts +3 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStepContext.js +11 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStepRootContext.d.ts +7 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/StepperVerticalStepRootContext.js +11 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/classNames.d.ts +1 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/classNames.js +2 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/entities/variant.d.ts +1 -1
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/entities/variant.js +1 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/index.d.ts +2 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/index.js +2 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStep/types.d.ts +2 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/StepperVerticalStepSubstepButton.css +10 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/StepperVerticalStepSubstepButton.d.ts +3 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/StepperVerticalStepSubstepButton.js +28 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/constants.d.ts +2 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/constants.js +3 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/entities/content.d.ts +4 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/entities/content.js +1 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/entities/index.d.ts +1 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/entities/index.js +1 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/index.d.ts +3 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/index.js +3 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/types.d.ts +11 -0
- package/__inner__/esm/components/StepperVertical/modules/StepperVerticalStepSubstepButton/types.js +1 -0
- package/__inner__/esm/components/StepperVertical/modules/index.d.ts +1 -0
- package/__inner__/esm/components/StepperVertical/modules/index.js +1 -0
- package/__inner__/esm/hooks/useEventBus/index.d.ts +1 -0
- package/__inner__/esm/hooks/useEventBus/index.js +1 -0
- package/__inner__/esm/hooks/useEventBus/useEventBus.d.ts +3 -0
- package/__inner__/esm/hooks/useEventBus/useEventBus.js +5 -0
- package/__inner__/esm/hooks/useEventBusEvents/index.d.ts +2 -0
- package/__inner__/esm/hooks/useEventBusEvents/index.js +2 -0
- package/__inner__/esm/hooks/useEventBusEvents/types.d.ts +4 -0
- package/__inner__/esm/hooks/useEventBusEvents/types.js +1 -0
- package/__inner__/esm/hooks/useEventBusEvents/useEventBusEvents.d.ts +5 -0
- package/__inner__/esm/hooks/useEventBusEvents/useEventBusEvents.js +36 -0
- package/__inner__/esm/utils/eventBus/EventBus.d.ts +8 -0
- package/__inner__/esm/utils/eventBus/EventBus.js +48 -0
- package/__inner__/esm/utils/eventBus/index.d.ts +2 -0
- package/__inner__/esm/utils/eventBus/index.js +2 -0
- package/__inner__/esm/utils/eventBus/types/EventBusEvents.d.ts +1 -0
- package/__inner__/esm/utils/eventBus/types/EventBusEvents.js +1 -0
- package/__inner__/esm/utils/eventBus/types/EventBusListener.d.ts +5 -0
- package/__inner__/esm/utils/eventBus/types/EventBusListener.js +1 -0
- package/__inner__/esm/utils/eventBus/types/EventBusListenerCallback.d.ts +1 -0
- package/__inner__/esm/utils/eventBus/types/EventBusListenerCallback.js +1 -0
- package/__inner__/esm/utils/eventBus/types/ExtractEventBusEvents.d.ts +3 -0
- package/__inner__/esm/utils/eventBus/types/ExtractEventBusEvents.js +1 -0
- package/__inner__/esm/utils/eventBus/types/index.d.ts +4 -0
- package/__inner__/esm/utils/eventBus/types/index.js +4 -0
- package/__inner__/esm/utils/index.d.ts +1 -0
- package/__inner__/esm/utils/index.js +1 -0
- package/__inner__/esm/utils/test-utils.d.ts +9 -1
- package/__inner__/esm/utils/test-utils.js +16 -1
- package/package.json +4 -4
- package/useEventBus/package.json +5 -0
- package/useEventBusEvents/package.json +5 -0
|
@@ -34,6 +34,7 @@ export declare const Dialog: React.ForwardRefExoticComponent<{
|
|
|
34
34
|
className?: string;
|
|
35
35
|
'data-testid'?: string;
|
|
36
36
|
ignoreClickOutsideRefs?: React.RefObject<HTMLElement>[];
|
|
37
|
+
closeOnlyOnTop?: boolean;
|
|
37
38
|
} & {
|
|
38
39
|
container?: import("../../hooks/usePortalContainer").PortalContainer;
|
|
39
40
|
} & Omit<import("../PortalBase").PortalBaseBaseProps, "container"> & {
|
|
@@ -30,6 +30,7 @@ export declare const DialogModal: React.ForwardRefExoticComponent<{
|
|
|
30
30
|
className?: string;
|
|
31
31
|
'data-testid'?: string;
|
|
32
32
|
ignoreClickOutsideRefs?: React.RefObject<HTMLElement>[];
|
|
33
|
+
closeOnlyOnTop?: boolean;
|
|
33
34
|
} & {
|
|
34
35
|
container?: import("../../../../hooks/usePortalContainer").PortalContainer;
|
|
35
36
|
} & Omit<import("../../../PortalBase").PortalBaseBaseProps, "container"> & {
|
|
@@ -6,7 +6,7 @@ import type { DIALOG_DEFAULT_DEVICE_TYPE } from './constants';
|
|
|
6
6
|
import type { DialogDeviceType, DialogSizeVariantByDeviceType, DialogVariant } from './entities';
|
|
7
7
|
export type DialogRef = HTMLDivElement;
|
|
8
8
|
export type DialogRenderCloseButton = RenderContentTypeEmptyProps['content'];
|
|
9
|
-
export type DialogContentBottomSheetProps = Omit<DialogBottomSheetProps, 'hideCloseButton' | 'backdrop' | 'open' | 'size' | 'variant' | 'closeButton' | 'onClose' | 'className'>;
|
|
9
|
+
export type DialogContentBottomSheetProps = Omit<DialogBottomSheetProps, 'hideCloseButton' | 'backdrop' | 'open' | 'size' | 'variant' | 'closeButton' | 'onClose' | 'className' | 'children'>;
|
|
10
10
|
export type DialogContentModalProps = Omit<DialogModalProps, 'open' | 'onClose' | 'hideCloseButton' | 'className' | 'closeButton' | 'size' | 'variant' | 'children'>;
|
|
11
11
|
export type DialogBaseProps = {
|
|
12
12
|
/** Если `true`, будет отображаться окно диалога */
|
|
@@ -35,6 +35,7 @@ export declare const Drawer: React.ForwardRefExoticComponent<{
|
|
|
35
35
|
className?: string;
|
|
36
36
|
'data-testid'?: string;
|
|
37
37
|
ignoreClickOutsideRefs?: React.RefObject<HTMLElement>[];
|
|
38
|
+
closeOnlyOnTop?: boolean;
|
|
38
39
|
} & {
|
|
39
40
|
container?: import("../../hooks/usePortalContainer").PortalContainer;
|
|
40
41
|
} & Omit<import("../PortalBase").PortalBaseBaseProps, "container"> & {
|
|
@@ -24,6 +24,7 @@ export declare const Modal: React.ForwardRefExoticComponent<{
|
|
|
24
24
|
className?: string;
|
|
25
25
|
'data-testid'?: string;
|
|
26
26
|
ignoreClickOutsideRefs?: React.RefObject<HTMLElement>[];
|
|
27
|
+
closeOnlyOnTop?: boolean;
|
|
27
28
|
} & {
|
|
28
29
|
container?: import("../../hooks/usePortalContainer").PortalContainer;
|
|
29
30
|
} & Omit<import("../PortalBase").PortalBaseBaseProps, "container"> & {
|
|
@@ -12,6 +12,7 @@ var useFocusTrap_1 = require("../../hooks/useFocusTrap");
|
|
|
12
12
|
var useLockBodyScroll_1 = require("../../hooks/useLockBodyScroll");
|
|
13
13
|
var useMultiRef_1 = require("../../hooks/useMultiRef");
|
|
14
14
|
var usePortalContainer_1 = require("../../hooks/usePortalContainer");
|
|
15
|
+
var useThemeProps_1 = require("../../hooks/useThemeProps");
|
|
15
16
|
var classname_1 = require("../../utils/classname");
|
|
16
17
|
var isKey_1 = require("../../utils/isKey");
|
|
17
18
|
var Backdrop_1 = require("../Backdrop");
|
|
@@ -20,8 +21,12 @@ var components_1 = require("./components");
|
|
|
20
21
|
var constants_1 = require("./constants");
|
|
21
22
|
var index_1 = require("./index");
|
|
22
23
|
exports.cnModal = (0, classname_1.cn)('Modal');
|
|
23
|
-
exports.Modal = (0, react_1.forwardRef)(function (
|
|
24
|
-
var
|
|
24
|
+
exports.Modal = (0, react_1.forwardRef)(function (inProps, ref) {
|
|
25
|
+
var props = (0, useThemeProps_1.useThemeProps)({
|
|
26
|
+
name: 'Modal',
|
|
27
|
+
props: inProps,
|
|
28
|
+
});
|
|
29
|
+
var _a = props.open, open = _a === void 0 ? constants_1.MODAL_DEFAULT_OPEN : _a, _b = props.keepMounted, keepMounted = _b === void 0 ? constants_1.MODAL_DEFAULT_KEEP_MOUNTED : _b, _c = props.hideBackdrop, hideBackdrop = _c === void 0 ? constants_1.MODAL_DEFAULT_HIDE_BACKDROP : _c, _d = props.disableScrollLock, disableScrollLock = _d === void 0 ? constants_1.MODAL_DEFAULT_DISABLE_SCROLL_LOCK : _d, _e = props.disableClickOutside, disableClickOutside = _e === void 0 ? constants_1.MODAL_DEFAULT_DISABLE_CLICK_OUTSIDE : _e, _f = props.disableEscapeKeyDown, disableEscapeKeyDown = _f === void 0 ? constants_1.MODAL_DEFAULT_ESCAPE_KEY_DOWN : _f, children = props.children, onEnter = props.onEnter, onEntered = props.onEntered, onExit = props.onExit, onExitedProp = props.onExited, onClose = props.onClose, backdropProps = props.backdropProps, windowProps = props.windowProps, transitionProps = props.transitionProps, className = props.className, ignoreClickOutsideRefs = props.ignoreClickOutsideRefs, _g = props.container, containerProp = _g === void 0 ? constants_1.MODAL_DEFAULT_PORTAL_CONTAINER : _g, _h = props.closeOnlyOnTop, closeOnlyOnTop = _h === void 0 ? constants_1.MODAL_DEFAULT_CLOSE_ONLY_ON_TOP : _h, other = tslib_1.__rest(props, ["open", "keepMounted", "hideBackdrop", "disableScrollLock", "disableClickOutside", "disableEscapeKeyDown", "children", "onEnter", "onEntered", "onExit", "onExited", "onClose", "backdropProps", "windowProps", "transitionProps", "className", "ignoreClickOutsideRefs", "container", "closeOnlyOnTop"]);
|
|
25
30
|
var hasBackdrop = !hideBackdrop;
|
|
26
31
|
var rootRef = (0, react_1.useRef)(null);
|
|
27
32
|
var windowInnerRef = (0, react_1.useRef)(null);
|
|
@@ -35,6 +40,7 @@ exports.Modal = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
35
40
|
active: isTop,
|
|
36
41
|
focusinTrap: false,
|
|
37
42
|
});
|
|
43
|
+
var isCloseHandlersActive = closeOnlyOnTop ? isTop : true;
|
|
38
44
|
var modalConsumerMultiRef = (0, useMultiRef_1.useMultiRef)([
|
|
39
45
|
windowInnerRef,
|
|
40
46
|
trapRef,
|
|
@@ -45,7 +51,7 @@ exports.Modal = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
45
51
|
windowInnerRef
|
|
46
52
|
], tslib_1.__read(refsClickOutside), false), tslib_1.__read((ignoreClickOutsideRefs || [])), false),
|
|
47
53
|
handler: onClose,
|
|
48
|
-
active: open && !disableClickOutside,
|
|
54
|
+
active: open && !disableClickOutside && isCloseHandlersActive,
|
|
49
55
|
});
|
|
50
56
|
// Блокирует прокрутку основного окна приложения
|
|
51
57
|
(0, useLockBodyScroll_1.useLockBodyScroll)(opened && !disableScrollLock);
|
|
@@ -81,13 +87,15 @@ exports.Modal = (0, react_1.forwardRef)(function (_a, ref) {
|
|
|
81
87
|
return;
|
|
82
88
|
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
83
89
|
},
|
|
84
|
-
active:
|
|
90
|
+
active: isCloseHandlersActive && !disableEscapeKeyDown,
|
|
85
91
|
});
|
|
86
92
|
if (!container) {
|
|
87
93
|
return null;
|
|
88
94
|
}
|
|
89
95
|
return (react_1.default.createElement(react_transition_group_1.CSSTransition, tslib_1.__assign({ classNames: (0, exports.cnModal)({ animation: true }), nodeRef: rootRef, timeout: 300 }, transitionProps, { in: openState, onEnter: onEnter, onEntered: onEntered, onExit: onExit, onExited: onExited, unmountOnExit: !keepMounted, appear: true }),
|
|
90
|
-
react_1.default.createElement(PortalBase_1.PortalBase, tslib_1.__assign({}, other, { container: container, className: (0, exports.cnModal)({ hidden: keepMounted && !openState, hasBackdrop: hasBackdrop }, [
|
|
96
|
+
react_1.default.createElement(PortalBase_1.PortalBase, tslib_1.__assign({}, other, { container: container, className: (0, exports.cnModal)({ hidden: keepMounted && !openState, hasBackdrop: hasBackdrop }, [
|
|
97
|
+
className,
|
|
98
|
+
]), ref: portalMultiRef }),
|
|
91
99
|
!hideBackdrop && (react_1.default.createElement(Backdrop_1.Backdrop, tslib_1.__assign({ zIndex: -1, open: openState }, backdropProps, { className: backdropProps === null || backdropProps === void 0 ? void 0 : backdropProps.className }))),
|
|
92
100
|
react_1.default.createElement(components_1.ModalConsumer, tslib_1.__assign({}, windowProps, { ref: modalConsumerMultiRef }), children))));
|
|
93
101
|
});
|
|
@@ -5,3 +5,4 @@ export declare const MODAL_DEFAULT_DISABLE_SCROLL_LOCK = false;
|
|
|
5
5
|
export declare const MODAL_DEFAULT_DISABLE_CLICK_OUTSIDE = false;
|
|
6
6
|
export declare const MODAL_DEFAULT_ESCAPE_KEY_DOWN = false;
|
|
7
7
|
export declare const MODAL_DEFAULT_PORTAL_CONTAINER: () => HTMLElement;
|
|
8
|
+
export declare const MODAL_DEFAULT_CLOSE_ONLY_ON_TOP = true;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MODAL_DEFAULT_PORTAL_CONTAINER = exports.MODAL_DEFAULT_ESCAPE_KEY_DOWN = exports.MODAL_DEFAULT_DISABLE_CLICK_OUTSIDE = exports.MODAL_DEFAULT_DISABLE_SCROLL_LOCK = exports.MODAL_DEFAULT_HIDE_BACKDROP = exports.MODAL_DEFAULT_KEEP_MOUNTED = exports.MODAL_DEFAULT_OPEN = void 0;
|
|
3
|
+
exports.MODAL_DEFAULT_CLOSE_ONLY_ON_TOP = exports.MODAL_DEFAULT_PORTAL_CONTAINER = exports.MODAL_DEFAULT_ESCAPE_KEY_DOWN = exports.MODAL_DEFAULT_DISABLE_CLICK_OUTSIDE = exports.MODAL_DEFAULT_DISABLE_SCROLL_LOCK = exports.MODAL_DEFAULT_HIDE_BACKDROP = exports.MODAL_DEFAULT_KEEP_MOUNTED = exports.MODAL_DEFAULT_OPEN = void 0;
|
|
4
4
|
exports.MODAL_DEFAULT_OPEN = false;
|
|
5
5
|
exports.MODAL_DEFAULT_KEEP_MOUNTED = false;
|
|
6
6
|
exports.MODAL_DEFAULT_HIDE_BACKDROP = false;
|
|
@@ -10,3 +10,4 @@ exports.MODAL_DEFAULT_ESCAPE_KEY_DOWN = false;
|
|
|
10
10
|
exports.MODAL_DEFAULT_PORTAL_CONTAINER = (function () {
|
|
11
11
|
return window.document.body;
|
|
12
12
|
});
|
|
13
|
+
exports.MODAL_DEFAULT_CLOSE_ONLY_ON_TOP = true;
|
|
@@ -49,5 +49,7 @@ export type ModalProps = {
|
|
|
49
49
|
'data-testid'?: string;
|
|
50
50
|
/** Список ссылок на элементы при клике на которые Modal не будет закрываться (см. хук useClickOutside) */
|
|
51
51
|
ignoreClickOutsideRefs?: RefObject<HTMLElement>[];
|
|
52
|
+
/** Закрыть только если окно находится на самом верхнем слое */
|
|
53
|
+
closeOnlyOnTop?: boolean;
|
|
52
54
|
} & PortalProps;
|
|
53
55
|
export type ModalRef = PortalRef;
|
|
@@ -66,7 +66,7 @@ import type { SelectIconButtonProps, SelectProps } from '../../../../Select';
|
|
|
66
66
|
import type { SliderProps } from '../../../../Slider';
|
|
67
67
|
import type { SnackbarProviderProps } from '../../../../Snackbar';
|
|
68
68
|
import type { StackProps } from '../../../../Stack';
|
|
69
|
-
import type { StepperVerticalProps, StepperVerticalStepButtonProps, StepperVerticalStepProps, StepperVerticalIndicatorProps, StepperVerticalIconIndicatorProps } from '../../../../StepperVertical';
|
|
69
|
+
import type { StepperVerticalStepSubstepButtonProps, StepperVerticalProps, StepperVerticalStepButtonProps, StepperVerticalStepProps, StepperVerticalIndicatorProps, StepperVerticalIconIndicatorProps } from '../../../../StepperVertical';
|
|
70
70
|
import type { TableContainerProps, TableProps, TableCaptionProps, TableCellProps } from '../../../../Table';
|
|
71
71
|
import type { TagProps } from '../../../../Tag';
|
|
72
72
|
import type { TagProps as TagPropsNext } from '../../../../TagNext';
|
|
@@ -193,6 +193,7 @@ export type ThemeDefaultProps = {
|
|
|
193
193
|
StepperVertical?: Partial<StepperVerticalProps>;
|
|
194
194
|
StepperVerticalStep?: Partial<StepperVerticalStepProps>;
|
|
195
195
|
StepperVerticalStepButton?: Partial<StepperVerticalStepButtonProps>;
|
|
196
|
+
StepperVerticalStepSubstepButton?: Partial<StepperVerticalStepSubstepButtonProps>;
|
|
196
197
|
StepperVerticalIconIndicator?: Partial<StepperVerticalIconIndicatorProps>;
|
|
197
198
|
StepperVerticalIndicator?: Partial<StepperVerticalIndicatorProps>;
|
|
198
199
|
Table?: Partial<TableProps>;
|
|
@@ -2,6 +2,7 @@ import './StepperVertical.css';
|
|
|
2
2
|
import './modules/StepperVerticalIconIndicator/StepperVerticalIconIndicator.css';
|
|
3
3
|
import './modules/StepperVerticalIndicator/StepperVerticalIndicator.css';
|
|
4
4
|
import './modules/StepperVerticalStep/StepperVerticalStep.css';
|
|
5
|
+
import './modules/StepperVerticalStepSubstepButton/StepperVerticalStepSubstepButton.css';
|
|
5
6
|
import type { StepperVerticalBaseProps } from './types';
|
|
6
7
|
export declare const cnStepperVertical: import("@bem-react/classname").ClassNameFormatter;
|
|
7
8
|
export declare const StepperVertical: import("../../utils").PolymorphicComponentWithRef<StepperVerticalBaseProps, "div", "as">;
|
|
@@ -6,16 +6,27 @@ require("./StepperVertical.css");
|
|
|
6
6
|
require("./modules/StepperVerticalIconIndicator/StepperVerticalIconIndicator.css");
|
|
7
7
|
require("./modules/StepperVerticalIndicator/StepperVerticalIndicator.css");
|
|
8
8
|
require("./modules/StepperVerticalStep/StepperVerticalStep.css");
|
|
9
|
-
|
|
9
|
+
require("./modules/StepperVerticalStepSubstepButton/StepperVerticalStepSubstepButton.css");
|
|
10
|
+
var react_1 = tslib_1.__importStar(require("react"));
|
|
11
|
+
var useMultiRef_1 = require("../../hooks/useMultiRef");
|
|
10
12
|
var useThemeProps_1 = require("../../hooks/useThemeProps");
|
|
11
13
|
var utils_1 = require("../../utils");
|
|
12
14
|
var Stack_1 = require("../Stack");
|
|
13
15
|
var constants_1 = require("./constants");
|
|
16
|
+
var hooks_1 = require("./hooks");
|
|
14
17
|
var StepperVerticalContext_1 = require("./StepperVerticalContext");
|
|
15
18
|
exports.cnStepperVertical = (0, utils_1.cn)('StepperVertical');
|
|
16
19
|
exports.StepperVertical = (0, utils_1.polymorphicComponentWithRef)(function (inProps, ref) {
|
|
17
20
|
var props = (0, useThemeProps_1.useThemeProps)({ name: 'StepperVertical', props: inProps });
|
|
18
21
|
var children = props.children, _a = props.as, as = _a === void 0 ? constants_1.STEPPER_VERTICAL_DEFAULT_TAG : _a, _b = props.ellipsis, ellipsis = _b === void 0 ? constants_1.STEPPER_VERTICAL_DEFAULT_ELLIPSIS : _b, className = props.className, fullWidth = props.fullWidth, other = tslib_1.__rest(props, ["children", "as", "ellipsis", "className", "fullWidth"]);
|
|
19
|
-
|
|
20
|
-
|
|
22
|
+
var internalRef = (0, react_1.useRef)(null);
|
|
23
|
+
var stepsControl = (0, hooks_1.useStepperVerticalStepsControl)();
|
|
24
|
+
var structure = (0, hooks_1.useStepperVerticalStepsStructure)(internalRef, stepsControl, children);
|
|
25
|
+
var memoizedContextValue = (0, react_1.useMemo)(function () { return ({
|
|
26
|
+
ellipsis: ellipsis,
|
|
27
|
+
stepsControl: stepsControl,
|
|
28
|
+
structure: structure,
|
|
29
|
+
}); }, [ellipsis, stepsControl, structure]);
|
|
30
|
+
return (react_1.default.createElement(StepperVerticalContext_1.StepperVerticalContext.Provider, { value: memoizedContextValue },
|
|
31
|
+
react_1.default.createElement(Stack_1.Stack, tslib_1.__assign({}, other, { ref: (0, useMultiRef_1.useMultiRef)([internalRef, ref]), as: as, className: (0, exports.cnStepperVertical)('', [className]), direction: "column", display: fullWidth ? 'block' : 'inline' }), children)));
|
|
21
32
|
});
|
|
@@ -1,5 +1,13 @@
|
|
|
1
|
+
import type { StoredValue } from '../../hooks/useStoredValue';
|
|
2
|
+
import { EventBus } from '../../utils';
|
|
3
|
+
import type { StepperVerticalStepsControl, StepperVerticalStepsStructure, StepperVerticalStepsStructureEvents } from './hooks';
|
|
1
4
|
export type StepperVerticalContextValue = {
|
|
2
5
|
ellipsis: boolean;
|
|
6
|
+
stepsControl: StepperVerticalStepsControl;
|
|
7
|
+
structure: {
|
|
8
|
+
value: StoredValue<StepperVerticalStepsStructure>;
|
|
9
|
+
eventBus: EventBus<StepperVerticalStepsStructureEvents>;
|
|
10
|
+
};
|
|
3
11
|
};
|
|
4
12
|
export declare const StepperVerticalContextDefaultValue: StepperVerticalContextValue;
|
|
5
13
|
export declare const StepperVerticalContext: import("react").Context<StepperVerticalContextValue>;
|
|
@@ -3,9 +3,19 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.useStepperVerticalContext = exports.StepperVerticalContext = exports.StepperVerticalContextDefaultValue = void 0;
|
|
4
4
|
var react_1 = require("react");
|
|
5
5
|
var environment_1 = require("../../constants/environment");
|
|
6
|
+
var utils_1 = require("../../utils");
|
|
6
7
|
var constants_1 = require("./constants");
|
|
7
8
|
exports.StepperVerticalContextDefaultValue = {
|
|
8
9
|
ellipsis: constants_1.STEPPER_VERTICAL_DEFAULT_ELLIPSIS,
|
|
10
|
+
stepsControl: {
|
|
11
|
+
steps: { current: {} },
|
|
12
|
+
initializeStep: function () { },
|
|
13
|
+
deleteStep: function () { },
|
|
14
|
+
},
|
|
15
|
+
structure: {
|
|
16
|
+
value: { current: { nodes: [], nodeById: {} } },
|
|
17
|
+
eventBus: new utils_1.EventBus(),
|
|
18
|
+
},
|
|
9
19
|
};
|
|
10
20
|
exports.StepperVerticalContext = (0, react_1.createContext)(exports.StepperVerticalContextDefaultValue);
|
|
11
21
|
var useStepperVerticalContext = function () {
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
tslib_1.__exportStar(require("./useStepperVerticalCreateStep"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./useStepperVerticalStepsControl"), exports);
|
|
6
|
+
tslib_1.__exportStar(require("./useStepperVerticalStepsStructure"), exports);
|
|
7
|
+
tslib_1.__exportStar(require("./useStepperVerticalStepHelper"), exports);
|
package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalCreateStep/types.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Dispatch, RefObject, SetStateAction } from 'react';
|
|
2
|
+
export type StepperVerticalStepControl = {
|
|
3
|
+
id: string;
|
|
4
|
+
ref: RefObject<HTMLElement | null>;
|
|
5
|
+
root: StepperVerticalStepControl | null;
|
|
6
|
+
substeps: Record<string, StepperVerticalStepControl>;
|
|
7
|
+
registerSubstep: (substep: StepperVerticalStepControl) => void;
|
|
8
|
+
unregisterSubstep: (substep: StepperVerticalStepControl) => void;
|
|
9
|
+
isSubStepsOpen: boolean;
|
|
10
|
+
setIsSubStepsOpen: Dispatch<SetStateAction<boolean>>;
|
|
11
|
+
};
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useStepperVerticalCreateStep = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var react_1 = require("react");
|
|
6
|
+
var useStoredValue_1 = require("../../../../hooks/useStoredValue");
|
|
7
|
+
var useUniqueId_1 = require("../../../../hooks/useUniqueId");
|
|
8
|
+
var StepperVerticalContext_1 = require("../../StepperVerticalContext");
|
|
9
|
+
var useStepperVerticalCreateStep = function (root) {
|
|
10
|
+
var id = (0, useUniqueId_1.useUniqueId)();
|
|
11
|
+
var _a = tslib_1.__read((0, react_1.useState)(false), 2), isSubStepsOpen = _a[0], setIsSubStepsOpen = _a[1];
|
|
12
|
+
var stepperVerticalContext = (0, StepperVerticalContext_1.useStepperVerticalContext)();
|
|
13
|
+
var ref = (0, react_1.useRef)(null);
|
|
14
|
+
var step = (0, useStoredValue_1.useStoredValue)(function () { return ({
|
|
15
|
+
id: id,
|
|
16
|
+
root: root !== null && root !== void 0 ? root : null,
|
|
17
|
+
ref: ref,
|
|
18
|
+
isSubStepsOpen: isSubStepsOpen,
|
|
19
|
+
setIsSubStepsOpen: setIsSubStepsOpen,
|
|
20
|
+
unregisterSubstep: function () { },
|
|
21
|
+
registerSubstep: function () { },
|
|
22
|
+
substeps: {},
|
|
23
|
+
}); });
|
|
24
|
+
var registerSubstep = (0, react_1.useCallback)(function (substep) {
|
|
25
|
+
step.current.substeps[substep.id] = substep;
|
|
26
|
+
}, []);
|
|
27
|
+
var unregisterSubstep = (0, react_1.useCallback)(function (substep) {
|
|
28
|
+
delete step.current.substeps[substep.id];
|
|
29
|
+
}, []);
|
|
30
|
+
step.current.isSubStepsOpen = isSubStepsOpen;
|
|
31
|
+
step.current.root = root !== null && root !== void 0 ? root : null;
|
|
32
|
+
step.current.registerSubstep = registerSubstep;
|
|
33
|
+
step.current.unregisterSubstep = unregisterSubstep;
|
|
34
|
+
(0, react_1.useEffect)(function () {
|
|
35
|
+
stepperVerticalContext.stepsControl.initializeStep(step.current);
|
|
36
|
+
if (root) {
|
|
37
|
+
root.registerSubstep(step.current);
|
|
38
|
+
}
|
|
39
|
+
return function () {
|
|
40
|
+
stepperVerticalContext.stepsControl.deleteStep(step.current);
|
|
41
|
+
if (root) {
|
|
42
|
+
root.unregisterSubstep(step.current);
|
|
43
|
+
}
|
|
44
|
+
};
|
|
45
|
+
}, []);
|
|
46
|
+
return step.current;
|
|
47
|
+
};
|
|
48
|
+
exports.useStepperVerticalCreateStep = useStepperVerticalCreateStep;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useStepperVerticalStepHelper = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var react_1 = require("react");
|
|
6
|
+
var useEventBusEvents_1 = require("../../../hooks/useEventBusEvents");
|
|
7
|
+
var StepperVerticalContext_1 = require("../StepperVerticalContext");
|
|
8
|
+
var useStepperVerticalStepHelper = function (step) {
|
|
9
|
+
var _a;
|
|
10
|
+
var structure = (0, StepperVerticalContext_1.useStepperVerticalContext)().structure;
|
|
11
|
+
var _b = tslib_1.__read((0, react_1.useState)(false), 2), hasPrevious = _b[0], setHasPrevious = _b[1];
|
|
12
|
+
var _c = tslib_1.__read((0, react_1.useState)(false), 2), hasNext = _c[0], setHasNext = _c[1];
|
|
13
|
+
var getStructureNode = function (forStep) {
|
|
14
|
+
var _a;
|
|
15
|
+
if (forStep === void 0) { forStep = step; }
|
|
16
|
+
var node = (_a = structure.value.current.nodeById[forStep.id]) !== null && _a !== void 0 ? _a : null;
|
|
17
|
+
return node;
|
|
18
|
+
};
|
|
19
|
+
var getNodeIndex = function (node) {
|
|
20
|
+
if (!node.root) {
|
|
21
|
+
return structure.value.current.nodes.indexOf(node);
|
|
22
|
+
}
|
|
23
|
+
return node.root.substeps.indexOf(node);
|
|
24
|
+
};
|
|
25
|
+
var checkHasNext = function (forStep) {
|
|
26
|
+
if (forStep === void 0) { forStep = step; }
|
|
27
|
+
if (forStep.isSubStepsOpen) {
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
var node = getStructureNode(forStep);
|
|
31
|
+
if (!node) {
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
var nodeIndex = getNodeIndex(node);
|
|
35
|
+
if (!node.root) {
|
|
36
|
+
return !!structure.value.current.nodes[nodeIndex + 1];
|
|
37
|
+
}
|
|
38
|
+
var sameLevelNext = node.root.substeps[nodeIndex + 1];
|
|
39
|
+
if (sameLevelNext) {
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
var checkHasTopLevelNext = function (node) {
|
|
43
|
+
if (!node.root) {
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
var rootIndex = getNodeIndex(node.root);
|
|
47
|
+
var nextStep = node.root.root
|
|
48
|
+
? node.root.root.substeps[rootIndex + 1]
|
|
49
|
+
: structure.value.current.nodes[rootIndex + 1];
|
|
50
|
+
if (nextStep) {
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
return checkHasTopLevelNext(node.root);
|
|
54
|
+
};
|
|
55
|
+
var otherLevelNext = checkHasTopLevelNext(node);
|
|
56
|
+
return otherLevelNext;
|
|
57
|
+
};
|
|
58
|
+
var checkHasPrevious = function (forStep) {
|
|
59
|
+
if (forStep === void 0) { forStep = step; }
|
|
60
|
+
var node = getStructureNode(forStep);
|
|
61
|
+
if (!node) {
|
|
62
|
+
return false;
|
|
63
|
+
}
|
|
64
|
+
var nodeIndex = getNodeIndex(node);
|
|
65
|
+
if (!node.root) {
|
|
66
|
+
return !!structure.value.current.nodes[nodeIndex - 1];
|
|
67
|
+
}
|
|
68
|
+
var rootHasNext = checkHasNext(node.root.step);
|
|
69
|
+
if (rootHasNext) {
|
|
70
|
+
return true;
|
|
71
|
+
}
|
|
72
|
+
if (nodeIndex === 0) {
|
|
73
|
+
return node.root.step.isSubStepsOpen;
|
|
74
|
+
}
|
|
75
|
+
return true;
|
|
76
|
+
};
|
|
77
|
+
var recalculate = function () {
|
|
78
|
+
setHasPrevious(checkHasPrevious());
|
|
79
|
+
setHasNext(checkHasNext());
|
|
80
|
+
};
|
|
81
|
+
(0, useEventBusEvents_1.useEventBusEvents)(structure.eventBus, {
|
|
82
|
+
update: recalculate,
|
|
83
|
+
});
|
|
84
|
+
(0, react_1.useEffect)(function () {
|
|
85
|
+
recalculate();
|
|
86
|
+
}, [step.isSubStepsOpen, (_a = step.root) === null || _a === void 0 ? void 0 : _a.isSubStepsOpen]);
|
|
87
|
+
return {
|
|
88
|
+
hasPrevious: hasPrevious,
|
|
89
|
+
hasNext: hasNext,
|
|
90
|
+
};
|
|
91
|
+
};
|
|
92
|
+
exports.useStepperVerticalStepHelper = useStepperVerticalStepHelper;
|
package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsControl/types.d.ts
ADDED
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { StoredValue } from '../../../../hooks/useStoredValue';
|
|
2
|
+
import type { StepperVerticalStepControl } from '../useStepperVerticalCreateStep';
|
|
3
|
+
export type StepperVerticalSteps = Record<string, StepperVerticalStepControl>;
|
|
4
|
+
export type StepperVerticalStepsControl = {
|
|
5
|
+
initializeStep: (step: StepperVerticalStepControl) => void;
|
|
6
|
+
deleteStep: (step: StepperVerticalStepControl) => void;
|
|
7
|
+
steps: StoredValue<StepperVerticalSteps>;
|
|
8
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useStepperVerticalStepsControl = void 0;
|
|
4
|
+
var react_1 = require("react");
|
|
5
|
+
var useStoredValue_1 = require("../../../../hooks/useStoredValue");
|
|
6
|
+
var useStepperVerticalStepsControl = function () {
|
|
7
|
+
var steps = (0, useStoredValue_1.useStoredValue)({});
|
|
8
|
+
var initializeStep = (0, react_1.useCallback)(function (step) {
|
|
9
|
+
if (steps.current[step.id]) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
steps.current[step.id] = step;
|
|
13
|
+
}, []);
|
|
14
|
+
var deleteStep = (0, react_1.useCallback)(function (step) {
|
|
15
|
+
if (!steps.current[step.id]) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
delete steps.current[step.id];
|
|
19
|
+
}, []);
|
|
20
|
+
return (0, react_1.useMemo)(function () { return ({
|
|
21
|
+
deleteStep: deleteStep,
|
|
22
|
+
initializeStep: initializeStep,
|
|
23
|
+
steps: steps,
|
|
24
|
+
}); }, []);
|
|
25
|
+
};
|
|
26
|
+
exports.useStepperVerticalStepsControl = useStepperVerticalStepsControl;
|
package/__inner__/cjs/components/StepperVertical/hooks/useStepperVerticalStepsStructure/types.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { StepperVerticalStepControl } from '../useStepperVerticalCreateStep';
|
|
2
|
+
export type StepperVerticalStepsStructureNode = {
|
|
3
|
+
root: StepperVerticalStepsStructureNode | null;
|
|
4
|
+
step: StepperVerticalStepControl;
|
|
5
|
+
substeps: StepperVerticalStepsStructureNode[];
|
|
6
|
+
};
|
|
7
|
+
export type StepperVerticalStepsStructure = {
|
|
8
|
+
nodeById: Record<string, StepperVerticalStepsStructureNode>;
|
|
9
|
+
nodes: StepperVerticalStepsStructureNode[];
|
|
10
|
+
};
|
|
11
|
+
export type StepperVerticalStepsStructureEvents = {
|
|
12
|
+
update: {
|
|
13
|
+
structure: StepperVerticalStepsStructure;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ReactNode, RefObject } from 'react';
|
|
2
|
+
import type { StepperVerticalRef } from '../../types';
|
|
3
|
+
import type { StepperVerticalStepsControl } from '../useStepperVerticalStepsControl';
|
|
4
|
+
import type { StepperVerticalStepsStructure, StepperVerticalStepsStructureEvents } from './types';
|
|
5
|
+
export declare const useStepperVerticalStepsStructure: (ref: RefObject<StepperVerticalRef>, stepsControl: StepperVerticalStepsControl, children: ReactNode) => {
|
|
6
|
+
value: import("../../../../hooks/useStoredValue").StoredValue<StepperVerticalStepsStructure>;
|
|
7
|
+
eventBus: import("../../../../utils").EventBus<StepperVerticalStepsStructureEvents>;
|
|
8
|
+
};
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.useStepperVerticalStepsStructure = void 0;
|
|
4
|
+
var react_1 = require("react");
|
|
5
|
+
var useEventBus_1 = require("../../../../hooks/useEventBus");
|
|
6
|
+
var useStoredValue_1 = require("../../../../hooks/useStoredValue");
|
|
7
|
+
var Collapse_1 = require("../../../Collapse");
|
|
8
|
+
var useStepperVerticalStepsStructure = function (ref, stepsControl, children) {
|
|
9
|
+
var eventBus = (0, useEventBus_1.useEventBus)();
|
|
10
|
+
var structure = (0, useStoredValue_1.useStoredValue)({
|
|
11
|
+
nodes: [],
|
|
12
|
+
nodeById: {},
|
|
13
|
+
});
|
|
14
|
+
var calculate = function () {
|
|
15
|
+
var element = ref.current;
|
|
16
|
+
if (!element) {
|
|
17
|
+
return { nodes: [], nodeById: {} };
|
|
18
|
+
}
|
|
19
|
+
var nodeById = {};
|
|
20
|
+
var nodes = [];
|
|
21
|
+
var stepsControlSteps = Object.values(stepsControl.steps.current);
|
|
22
|
+
var collectNodeSubsteps = function (node, element) {
|
|
23
|
+
var substeps = Object.values(node.step.substeps);
|
|
24
|
+
if (substeps.length === 0) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
var nextElement = element.nextElementSibling;
|
|
28
|
+
if (!nextElement) {
|
|
29
|
+
throw new Error('Ожидается следующий элемент для шага с подшагами');
|
|
30
|
+
}
|
|
31
|
+
var isNextElementCollapse = nextElement.classList.contains((0, Collapse_1.cnCollapse)());
|
|
32
|
+
if (!isNextElementCollapse) {
|
|
33
|
+
throw new Error('Ожидается collapse для подшагов');
|
|
34
|
+
}
|
|
35
|
+
var collapseInner = nextElement.firstElementChild;
|
|
36
|
+
if (!collapseInner) {
|
|
37
|
+
throw new Error('Не удалось получить inner для collapse');
|
|
38
|
+
}
|
|
39
|
+
Array.from(collapseInner.childNodes).forEach(function (collapseStep) {
|
|
40
|
+
var relatedSubstep = substeps.find(function (substep) { return substep.ref.current === collapseStep; });
|
|
41
|
+
if (!relatedSubstep) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
var newNode = {
|
|
45
|
+
root: node,
|
|
46
|
+
step: relatedSubstep,
|
|
47
|
+
substeps: [],
|
|
48
|
+
};
|
|
49
|
+
nodeById[relatedSubstep.id] = newNode;
|
|
50
|
+
node.substeps.push(newNode);
|
|
51
|
+
if (Object.keys(relatedSubstep.substeps).length > 0) {
|
|
52
|
+
collectNodeSubsteps(newNode, relatedSubstep.ref.current);
|
|
53
|
+
}
|
|
54
|
+
});
|
|
55
|
+
};
|
|
56
|
+
element.childNodes.forEach(function (node) {
|
|
57
|
+
var relatedStep = stepsControlSteps.find(function (step) { return step.ref.current === node; });
|
|
58
|
+
if (!relatedStep) {
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
var newNode = {
|
|
62
|
+
root: null,
|
|
63
|
+
step: relatedStep,
|
|
64
|
+
substeps: [],
|
|
65
|
+
};
|
|
66
|
+
nodeById[relatedStep.id] = newNode;
|
|
67
|
+
nodes.push(newNode);
|
|
68
|
+
collectNodeSubsteps(newNode, newNode.step.ref.current);
|
|
69
|
+
});
|
|
70
|
+
return { nodeById: nodeById, nodes: nodes };
|
|
71
|
+
};
|
|
72
|
+
var recalculate = function () {
|
|
73
|
+
var newStructure = calculate();
|
|
74
|
+
structure.current = newStructure;
|
|
75
|
+
eventBus.publish('update', { structure: structure.current });
|
|
76
|
+
};
|
|
77
|
+
(0, react_1.useEffect)(function () {
|
|
78
|
+
recalculate();
|
|
79
|
+
}, [children]);
|
|
80
|
+
return (0, react_1.useMemo)(function () { return ({ value: structure, eventBus: eventBus }); }, []);
|
|
81
|
+
};
|
|
82
|
+
exports.useStepperVerticalStepsStructure = useStepperVerticalStepsStructure;
|
package/__inner__/cjs/components/StepperVertical/modules/StepperVerticalIconIndicator/constants.js
CHANGED
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.STEPPER_VERTICAL_STEP_DEFAULT_ICON_BY_VARIANT = void 0;
|
|
4
4
|
var icons_1 = require("@ozen-ui/icons");
|
|
5
5
|
exports.STEPPER_VERTICAL_STEP_DEFAULT_ICON_BY_VARIANT = {
|
|
6
|
+
default: icons_1.DotBigIcon,
|
|
6
7
|
refusal: icons_1.MinusCircleFilledIcon,
|
|
7
8
|
blocked: icons_1.CrossCircleFilledIcon,
|
|
8
9
|
warning: icons_1.WarningCircleFilledIcon,
|