@dxtmisha/constructor 0.23.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/LICENSE +21 -0
- package/README.md +136 -0
- package/package.json +124 -0
- package/src/classes/CaptionInclude.ts +71 -0
- package/src/classes/DescriptionInclude.ts +70 -0
- package/src/classes/EnabledInclude.ts +56 -0
- package/src/classes/EventClickInclude.ts +138 -0
- package/src/classes/LabelHighlightInclude.ts +90 -0
- package/src/classes/LabelInclude.ts +171 -0
- package/src/classes/LabelNumberInclude.ts +70 -0
- package/src/classes/ModelInclude.ts +49 -0
- package/src/classes/PrefixInclude.ts +71 -0
- package/src/classes/SuffixInclude.ts +71 -0
- package/src/classes/field/FieldAttributesInclude.ts +100 -0
- package/src/classes/field/FieldChangeInclude.ts +52 -0
- package/src/classes/field/FieldCodeInclude.ts +69 -0
- package/src/classes/field/FieldElementInclude.ts +97 -0
- package/src/classes/field/FieldInputCheckInclude.ts +128 -0
- package/src/classes/field/FieldMatchInclude.ts +101 -0
- package/src/classes/field/FieldPatternInclude.ts +42 -0
- package/src/classes/field/FieldTypeInclude.ts +42 -0
- package/src/classes/field/FieldValidationInclude.ts +196 -0
- package/src/classes/field/FieldValueInclude.ts +318 -0
- package/src/classes/field/FieldVisibilityInclude.ts +21 -0
- package/src/constructors/Badge/Badge.ts +73 -0
- package/src/constructors/Badge/BadgeDesign.tsx +127 -0
- package/src/constructors/Badge/BadgeInclude.ts +78 -0
- package/src/constructors/Badge/basicTypes.ts +15 -0
- package/src/constructors/Badge/index.ts +5 -0
- package/src/constructors/Badge/properties.json +36 -0
- package/src/constructors/Badge/props.ts +43 -0
- package/src/constructors/Badge/style.scss +83 -0
- package/src/constructors/Badge/types.ts +47 -0
- package/src/constructors/Bars/Bars.ts +188 -0
- package/src/constructors/Bars/BarsAction.ts +57 -0
- package/src/constructors/Bars/BarsDesign.tsx +229 -0
- package/src/constructors/Bars/BarsInclude.ts +116 -0
- package/src/constructors/Bars/basicTypes.ts +40 -0
- package/src/constructors/Bars/index.ts +6 -0
- package/src/constructors/Bars/properties.json +6 -0
- package/src/constructors/Bars/props.ts +63 -0
- package/src/constructors/Bars/style.scss +18 -0
- package/src/constructors/Bars/types.ts +58 -0
- package/src/constructors/Button/Button.ts +88 -0
- package/src/constructors/Button/ButtonDesign.tsx +136 -0
- package/src/constructors/Button/ButtonInclude.ts +80 -0
- package/src/constructors/Button/basicTypes.ts +12 -0
- package/src/constructors/Button/index.ts +5 -0
- package/src/constructors/Button/properties.json +84 -0
- package/src/constructors/Button/props.ts +55 -0
- package/src/constructors/Button/style.scss +96 -0
- package/src/constructors/Button/types.ts +56 -0
- package/src/constructors/Cell/Cell.ts +127 -0
- package/src/constructors/Cell/CellDesign.tsx +203 -0
- package/src/constructors/Cell/basicTypes.ts +6 -0
- package/src/constructors/Cell/index.ts +5 -0
- package/src/constructors/Cell/properties.json +52 -0
- package/src/constructors/Cell/props.ts +61 -0
- package/src/constructors/Cell/style.scss +80 -0
- package/src/constructors/Cell/types.ts +68 -0
- package/src/constructors/Chip/Chip.ts +33 -0
- package/src/constructors/Chip/ChipDesign.tsx +26 -0
- package/src/constructors/Chip/basicTypes.ts +0 -0
- package/src/constructors/Chip/index.ts +4 -0
- package/src/constructors/Chip/properties.json +3 -0
- package/src/constructors/Chip/props.ts +44 -0
- package/src/constructors/Chip/style.scss +6 -0
- package/src/constructors/Chip/types.ts +53 -0
- package/src/constructors/Field/Field.ts +147 -0
- package/src/constructors/Field/FieldDesign.tsx +372 -0
- package/src/constructors/Field/FieldIcons.ts +99 -0
- package/src/constructors/Field/FieldInclude.ts +72 -0
- package/src/constructors/Field/FieldSize.ts +93 -0
- package/src/constructors/Field/basicTypes.ts +90 -0
- package/src/constructors/Field/index.ts +5 -0
- package/src/constructors/Field/properties.json +86 -0
- package/src/constructors/Field/props.ts +88 -0
- package/src/constructors/Field/style.scss +556 -0
- package/src/constructors/Field/types.ts +78 -0
- package/src/constructors/FieldCounter/FieldCounter.ts +75 -0
- package/src/constructors/FieldCounter/FieldCounterDesign.tsx +122 -0
- package/src/constructors/FieldCounter/FieldCounterInclude.ts +98 -0
- package/src/constructors/FieldCounter/basicTypes.ts +25 -0
- package/src/constructors/FieldCounter/index.ts +6 -0
- package/src/constructors/FieldCounter/properties.json +3 -0
- package/src/constructors/FieldCounter/props.ts +32 -0
- package/src/constructors/FieldCounter/style.scss +4 -0
- package/src/constructors/FieldCounter/types.ts +42 -0
- package/src/constructors/FieldLabel/FieldLabel.ts +93 -0
- package/src/constructors/FieldLabel/FieldLabelDesign.tsx +156 -0
- package/src/constructors/FieldLabel/FieldLabelInclude.ts +91 -0
- package/src/constructors/FieldLabel/basicTypes.ts +34 -0
- package/src/constructors/FieldLabel/index.ts +6 -0
- package/src/constructors/FieldLabel/properties.json +4 -0
- package/src/constructors/FieldLabel/props.ts +40 -0
- package/src/constructors/FieldLabel/style.scss +10 -0
- package/src/constructors/FieldLabel/types.ts +49 -0
- package/src/constructors/FieldMessage/FieldMessage.ts +79 -0
- package/src/constructors/FieldMessage/FieldMessageDesign.tsx +159 -0
- package/src/constructors/FieldMessage/FieldMessageInclude.ts +105 -0
- package/src/constructors/FieldMessage/FieldMessageMessage.ts +54 -0
- package/src/constructors/FieldMessage/basicTypes.ts +27 -0
- package/src/constructors/FieldMessage/index.ts +6 -0
- package/src/constructors/FieldMessage/properties.json +9 -0
- package/src/constructors/FieldMessage/props.ts +40 -0
- package/src/constructors/FieldMessage/style.scss +13 -0
- package/src/constructors/FieldMessage/types.ts +49 -0
- package/src/constructors/Icon/Icon.ts +105 -0
- package/src/constructors/Icon/IconDesign.tsx +157 -0
- package/src/constructors/Icon/IconInclude.ts +64 -0
- package/src/constructors/Icon/IconLiteInclude.ts +121 -0
- package/src/constructors/Icon/IconTrailingInclude.ts +106 -0
- package/src/constructors/Icon/basicTypes.ts +50 -0
- package/src/constructors/Icon/index.ts +8 -0
- package/src/constructors/Icon/properties.json +25 -0
- package/src/constructors/Icon/props.ts +54 -0
- package/src/constructors/Icon/style.scss +106 -0
- package/src/constructors/Icon/types.ts +46 -0
- package/src/constructors/Image/Image.ts +184 -0
- package/src/constructors/Image/ImageAdaptiveGroup.ts +230 -0
- package/src/constructors/Image/ImageAdaptiveItem.ts +295 -0
- package/src/constructors/Image/ImageBackground.ts +127 -0
- package/src/constructors/Image/ImageCalculation.ts +184 -0
- package/src/constructors/Image/ImageCalculationList.ts +61 -0
- package/src/constructors/Image/ImageCoordinator.ts +104 -0
- package/src/constructors/Image/ImageData.ts +99 -0
- package/src/constructors/Image/ImageDesign.tsx +137 -0
- package/src/constructors/Image/ImageFile.ts +137 -0
- package/src/constructors/Image/ImageInclude.ts +53 -0
- package/src/constructors/Image/ImagePdf.ts +44 -0
- package/src/constructors/Image/ImagePosition.ts +49 -0
- package/src/constructors/Image/ImageType.ts +83 -0
- package/src/constructors/Image/basicTypes.ts +70 -0
- package/src/constructors/Image/index.ts +5 -0
- package/src/constructors/Image/properties.json +17 -0
- package/src/constructors/Image/props.ts +66 -0
- package/src/constructors/Image/style.scss +77 -0
- package/src/constructors/Image/types.ts +49 -0
- package/src/constructors/List/List.ts +267 -0
- package/src/constructors/List/ListControl.ts +194 -0
- package/src/constructors/List/ListDesign.tsx +382 -0
- package/src/constructors/List/ListFocus.ts +196 -0
- package/src/constructors/List/ListGo.ts +283 -0
- package/src/constructors/List/ListSearch.ts +113 -0
- package/src/constructors/List/basicTypes.ts +3 -0
- package/src/constructors/List/index.ts +5 -0
- package/src/constructors/List/properties.json +16 -0
- package/src/constructors/List/props.ts +76 -0
- package/src/constructors/List/style.scss +36 -0
- package/src/constructors/List/types.ts +66 -0
- package/src/constructors/ListGroup/ListGroup.ts +53 -0
- package/src/constructors/ListGroup/ListGroupDesign.tsx +180 -0
- package/src/constructors/ListGroup/ListGroupOpen.ts +56 -0
- package/src/constructors/ListGroup/basicTypes.ts +3 -0
- package/src/constructors/ListGroup/index.ts +5 -0
- package/src/constructors/ListGroup/properties.json +15 -0
- package/src/constructors/ListGroup/props.ts +30 -0
- package/src/constructors/ListGroup/style.scss +18 -0
- package/src/constructors/ListGroup/types.ts +51 -0
- package/src/constructors/ListItem/ListItem.ts +115 -0
- package/src/constructors/ListItem/ListItemDesign.tsx +196 -0
- package/src/constructors/ListItem/basicTypes.ts +3 -0
- package/src/constructors/ListItem/index.ts +5 -0
- package/src/constructors/ListItem/properties.json +52 -0
- package/src/constructors/ListItem/props.ts +78 -0
- package/src/constructors/ListItem/style.scss +152 -0
- package/src/constructors/ListItem/types.ts +78 -0
- package/src/constructors/ListMenu/ListMenu.ts +52 -0
- package/src/constructors/ListMenu/ListMenuDesign.tsx +127 -0
- package/src/constructors/ListMenu/basicTypes.ts +3 -0
- package/src/constructors/ListMenu/index.ts +5 -0
- package/src/constructors/ListMenu/properties.json +19 -0
- package/src/constructors/ListMenu/props.ts +34 -0
- package/src/constructors/ListMenu/style.scss +5 -0
- package/src/constructors/ListMenu/types.ts +54 -0
- package/src/constructors/Mask/Mask.ts +321 -0
- package/src/constructors/Mask/MaskBuffer.ts +89 -0
- package/src/constructors/Mask/MaskCharacter.ts +192 -0
- package/src/constructors/Mask/MaskCharacterLength.ts +40 -0
- package/src/constructors/Mask/MaskData.ts +287 -0
- package/src/constructors/Mask/MaskDate.ts +157 -0
- package/src/constructors/Mask/MaskDesign.tsx +217 -0
- package/src/constructors/Mask/MaskEmit.ts +140 -0
- package/src/constructors/Mask/MaskEvent.ts +347 -0
- package/src/constructors/Mask/MaskFocus.ts +49 -0
- package/src/constructors/Mask/MaskFormat.ts +216 -0
- package/src/constructors/Mask/MaskItem.ts +218 -0
- package/src/constructors/Mask/MaskMatch.ts +73 -0
- package/src/constructors/Mask/MaskPattern.ts +123 -0
- package/src/constructors/Mask/MaskRight.ts +43 -0
- package/src/constructors/Mask/MaskRubber.ts +156 -0
- package/src/constructors/Mask/MaskRubberItem.ts +96 -0
- package/src/constructors/Mask/MaskRubberTransition.ts +50 -0
- package/src/constructors/Mask/MaskSelection.ts +208 -0
- package/src/constructors/Mask/MaskSpecial.ts +179 -0
- package/src/constructors/Mask/MaskType.ts +103 -0
- package/src/constructors/Mask/MaskValidation.ts +102 -0
- package/src/constructors/Mask/MaskValue.ts +225 -0
- package/src/constructors/Mask/MaskValueBasic.ts +87 -0
- package/src/constructors/Mask/MaskView.ts +169 -0
- package/src/constructors/Mask/basicTypes.ts +49 -0
- package/src/constructors/Mask/index.ts +5 -0
- package/src/constructors/Mask/properties.json +29 -0
- package/src/constructors/Mask/props.ts +70 -0
- package/src/constructors/Mask/style.scss +104 -0
- package/src/constructors/Mask/types.ts +71 -0
- package/src/constructors/Menu/Menu.ts +179 -0
- package/src/constructors/Menu/MenuDesign.tsx +244 -0
- package/src/constructors/Menu/MenuInclude.ts +110 -0
- package/src/constructors/Menu/MenuRequest.ts +101 -0
- package/src/constructors/Menu/MenuSearch.ts +49 -0
- package/src/constructors/Menu/MenuValue.ts +73 -0
- package/src/constructors/Menu/MenuWindow.ts +89 -0
- package/src/constructors/Menu/basicTypes.ts +41 -0
- package/src/constructors/Menu/index.ts +6 -0
- package/src/constructors/Menu/properties.json +17 -0
- package/src/constructors/Menu/props.ts +79 -0
- package/src/constructors/Menu/style.scss +17 -0
- package/src/constructors/Menu/types.ts +79 -0
- package/src/constructors/MotionTransform/MotionTransform.ts +87 -0
- package/src/constructors/MotionTransform/MotionTransformClassesInclude.ts +38 -0
- package/src/constructors/MotionTransform/MotionTransformDesign.tsx +242 -0
- package/src/constructors/MotionTransform/MotionTransformElement.ts +220 -0
- package/src/constructors/MotionTransform/MotionTransformEvent.ts +118 -0
- package/src/constructors/MotionTransform/MotionTransformGo.ts +47 -0
- package/src/constructors/MotionTransform/MotionTransformInclude.ts +123 -0
- package/src/constructors/MotionTransform/MotionTransformSize.ts +97 -0
- package/src/constructors/MotionTransform/MotionTransformState.ts +250 -0
- package/src/constructors/MotionTransform/basicTypes.ts +121 -0
- package/src/constructors/MotionTransform/index.ts +7 -0
- package/src/constructors/MotionTransform/properties.json +35 -0
- package/src/constructors/MotionTransform/props.ts +50 -0
- package/src/constructors/MotionTransform/style.scss +180 -0
- package/src/constructors/MotionTransform/types.ts +86 -0
- package/src/constructors/Progress/Progress.ts +184 -0
- package/src/constructors/Progress/ProgressDesign.tsx +175 -0
- package/src/constructors/Progress/ProgressInclude.ts +67 -0
- package/src/constructors/Progress/basicTypes.ts +12 -0
- package/src/constructors/Progress/index.ts +6 -0
- package/src/constructors/Progress/properties.json +47 -0
- package/src/constructors/Progress/props.ts +54 -0
- package/src/constructors/Progress/style.scss +374 -0
- package/src/constructors/Progress/types.ts +43 -0
- package/src/constructors/Ripple/Ripple.ts +46 -0
- package/src/constructors/Ripple/RippleDesign.tsx +112 -0
- package/src/constructors/Ripple/RippleInclude.ts +39 -0
- package/src/constructors/Ripple/RippleItem.ts +62 -0
- package/src/constructors/Ripple/basicTypes.ts +3 -0
- package/src/constructors/Ripple/index.ts +6 -0
- package/src/constructors/Ripple/properties.json +9 -0
- package/src/constructors/Ripple/props.ts +28 -0
- package/src/constructors/Ripple/style.scss +62 -0
- package/src/constructors/Ripple/types.ts +41 -0
- package/src/constructors/Scrollbar/Scrollbar.ts +66 -0
- package/src/constructors/Scrollbar/ScrollbarBorder.ts +243 -0
- package/src/constructors/Scrollbar/ScrollbarDesign.tsx +126 -0
- package/src/constructors/Scrollbar/ScrollbarInclude.ts +80 -0
- package/src/constructors/Scrollbar/basicTypes.ts +42 -0
- package/src/constructors/Scrollbar/index.ts +5 -0
- package/src/constructors/Scrollbar/properties.json +33 -0
- package/src/constructors/Scrollbar/props.ts +37 -0
- package/src/constructors/Scrollbar/style.scss +117 -0
- package/src/constructors/Scrollbar/types.ts +52 -0
- package/src/constructors/Skeleton/Skeleton.ts +86 -0
- package/src/constructors/Skeleton/SkeletonDesign.tsx +117 -0
- package/src/constructors/Skeleton/SkeletonInclude.ts +61 -0
- package/src/constructors/Skeleton/basicTypes.ts +16 -0
- package/src/constructors/Skeleton/const.ts +1 -0
- package/src/constructors/Skeleton/index.ts +6 -0
- package/src/constructors/Skeleton/properties.json +24 -0
- package/src/constructors/Skeleton/props.ts +28 -0
- package/src/constructors/Skeleton/style.scss +112 -0
- package/src/constructors/Skeleton/types.ts +46 -0
- package/src/constructors/Window/Window.ts +212 -0
- package/src/constructors/Window/WindowClasses.ts +180 -0
- package/src/constructors/Window/WindowClassesInclude.ts +39 -0
- package/src/constructors/Window/WindowClient.ts +93 -0
- package/src/constructors/Window/WindowCoordinates.ts +257 -0
- package/src/constructors/Window/WindowDesign.tsx +278 -0
- package/src/constructors/Window/WindowElement.ts +84 -0
- package/src/constructors/Window/WindowEmit.ts +52 -0
- package/src/constructors/Window/WindowEvent.ts +157 -0
- package/src/constructors/Window/WindowFlash.ts +70 -0
- package/src/constructors/Window/WindowHook.ts +110 -0
- package/src/constructors/Window/WindowInclude.ts +134 -0
- package/src/constructors/Window/WindowOpen.ts +292 -0
- package/src/constructors/Window/WindowOrigin.ts +85 -0
- package/src/constructors/Window/WindowPersistent.ts +89 -0
- package/src/constructors/Window/WindowPosition.ts +358 -0
- package/src/constructors/Window/WindowStatic.ts +102 -0
- package/src/constructors/Window/WindowStatus.ts +138 -0
- package/src/constructors/Window/WindowStyles.ts +78 -0
- package/src/constructors/Window/WindowVerification.ts +287 -0
- package/src/constructors/Window/basicTypes.ts +186 -0
- package/src/constructors/Window/index.ts +7 -0
- package/src/constructors/Window/properties.json +236 -0
- package/src/constructors/Window/props.ts +88 -0
- package/src/constructors/Window/style.scss +262 -0
- package/src/constructors/Window/types.ts +124 -0
- package/src/functions/getClassTegAStatic.ts +8 -0
- package/src/library.ts +36 -0
- package/src/types/captionTypes.ts +15 -0
- package/src/types/descriptionTypes.ts +15 -0
- package/src/types/enabledTypes.ts +9 -0
- package/src/types/eventClickTypes.ts +51 -0
- package/src/types/fieldTypes.ts +282 -0
- package/src/types/labelTypes.ts +30 -0
- package/src/types/modelTypes.ts +23 -0
- package/src/types/prefixTypes.ts +15 -0
- package/src/types/suffixTypes.ts +15 -0
- package/src/vite-env.d.ts +1 -0
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
import { computed, ref, watch } from 'vue'
|
|
2
|
+
|
|
3
|
+
import { MotionTransformElement } from './MotionTransformElement'
|
|
4
|
+
import { MotionTransformSize } from './MotionTransformSize'
|
|
5
|
+
|
|
6
|
+
import type { MotionTransformProps } from './props'
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* State management class.
|
|
10
|
+
*
|
|
11
|
+
* Класс управления состоянием.
|
|
12
|
+
*/
|
|
13
|
+
export class MotionTransformState {
|
|
14
|
+
/** Open state flag/ Флаг состояния открытия */
|
|
15
|
+
readonly open = ref<boolean>(false)
|
|
16
|
+
/** Temporary show state for animation/ Временный флаг показа для анимации */
|
|
17
|
+
readonly show = ref<boolean>(false)
|
|
18
|
+
/** Teleportation state flag/ Флаг состояния телепортации */
|
|
19
|
+
readonly teleport = ref<boolean>(false)
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Constructor.
|
|
23
|
+
*
|
|
24
|
+
* Конструктор.
|
|
25
|
+
* @param props input data/ входные данные
|
|
26
|
+
* @param element class object for managing an element/ объект класса для управления элементом
|
|
27
|
+
* @param size class object for managing sizes/ объект класса для управления размерами
|
|
28
|
+
*/
|
|
29
|
+
constructor(
|
|
30
|
+
props: MotionTransformProps,
|
|
31
|
+
protected element: MotionTransformElement,
|
|
32
|
+
protected size: MotionTransformSize
|
|
33
|
+
) {
|
|
34
|
+
watch([this.element.element, this.open], this.makeOpen)
|
|
35
|
+
watch([this.element.element, this.teleport], this.makeTeleport)
|
|
36
|
+
|
|
37
|
+
if (props.open) {
|
|
38
|
+
requestAnimationFrame(() => {
|
|
39
|
+
this.open.value = Boolean(props.open)
|
|
40
|
+
this.calculations()
|
|
41
|
+
})
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/** Computed open flag/ Вычисляемый флаг открытия */
|
|
46
|
+
readonly isOpen = computed(() => this.open.value)
|
|
47
|
+
|
|
48
|
+
/** Checks if the element should be shown/ Проверяет, следует ли показывать элемент */
|
|
49
|
+
readonly isShow = computed<boolean>(() => this.open.value || this.show.value)
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Checks if teleportation should be disabled.
|
|
53
|
+
*
|
|
54
|
+
* Проверяет, нужно ли отключить телепортацию.
|
|
55
|
+
*/
|
|
56
|
+
isTeleportClose(): boolean {
|
|
57
|
+
return this.teleport.value && !this.open.value
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Changes in the state of the open window.
|
|
62
|
+
*
|
|
63
|
+
* Изменения состояния открытого окна.
|
|
64
|
+
* @param open opening status/ статус открытия
|
|
65
|
+
* @param animation opening with animation/ открытие с анимацией
|
|
66
|
+
*/
|
|
67
|
+
set(
|
|
68
|
+
open: boolean,
|
|
69
|
+
animation = true
|
|
70
|
+
) {
|
|
71
|
+
if (this.open.value !== open) {
|
|
72
|
+
if (
|
|
73
|
+
animation
|
|
74
|
+
&& this.element.isAnimation()
|
|
75
|
+
) {
|
|
76
|
+
this.show.value = true
|
|
77
|
+
|
|
78
|
+
requestAnimationFrame(() => {
|
|
79
|
+
this.calculations()
|
|
80
|
+
this.make()
|
|
81
|
+
|
|
82
|
+
requestAnimationFrame(() => {
|
|
83
|
+
this.open.value = open
|
|
84
|
+
})
|
|
85
|
+
})
|
|
86
|
+
} else {
|
|
87
|
+
this.open.value = open
|
|
88
|
+
this.calculations()
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
setTimeout(() => this.reset(), 480)
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Status switching.
|
|
97
|
+
*
|
|
98
|
+
* Переключение статуса.
|
|
99
|
+
*/
|
|
100
|
+
toggle(): void {
|
|
101
|
+
this.set(!this.open.value)
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Resets the data to the initial state.
|
|
106
|
+
*
|
|
107
|
+
* Сбрасывает данные в первичное состояние.
|
|
108
|
+
*/
|
|
109
|
+
reset(): this {
|
|
110
|
+
if (this.show.value) {
|
|
111
|
+
this.show.value = false
|
|
112
|
+
|
|
113
|
+
if (this.isTeleportClose()) {
|
|
114
|
+
this.teleport.value = false
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
this.make()
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
return this
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Update of the display class.
|
|
125
|
+
*
|
|
126
|
+
* Обновление класса показа.
|
|
127
|
+
*/
|
|
128
|
+
protected readonly makeShow = () => {
|
|
129
|
+
const element = this.element.getElement()
|
|
130
|
+
|
|
131
|
+
if (element) {
|
|
132
|
+
element.dataset.show = this.show.value ? 'show' : 'none'
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* Update of the opening class.
|
|
138
|
+
*
|
|
139
|
+
* Обновление класса открытия.
|
|
140
|
+
*/
|
|
141
|
+
protected readonly makeOpen = () => {
|
|
142
|
+
const element = this.element.getElement()
|
|
143
|
+
|
|
144
|
+
if (element) {
|
|
145
|
+
element.dataset.open = this.open.value ? 'open' : 'none'
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Update of the teleport class.
|
|
151
|
+
*
|
|
152
|
+
* Обновление класса телепорта.
|
|
153
|
+
*/
|
|
154
|
+
protected readonly makeTeleport = () => {
|
|
155
|
+
const element = this.element.getElement()
|
|
156
|
+
|
|
157
|
+
if (element) {
|
|
158
|
+
element.dataset.teleport = this.teleport.value ? 'teleport' : 'none'
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Calculations before animation.
|
|
164
|
+
*
|
|
165
|
+
* Вычисления перед анимацией.
|
|
166
|
+
*/
|
|
167
|
+
protected calculations(): void {
|
|
168
|
+
this.size.update()
|
|
169
|
+
this.toTeleport()
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
/**
|
|
173
|
+
* Animation control.
|
|
174
|
+
*
|
|
175
|
+
* Управление анимацией.
|
|
176
|
+
*/
|
|
177
|
+
protected toTeleport(): void {
|
|
178
|
+
if (this.element.isWindow()) {
|
|
179
|
+
this.teleport.value = this.isShow.value
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
/**
|
|
184
|
+
* Updates the list of styles.
|
|
185
|
+
*
|
|
186
|
+
* Обновляет список стилей.
|
|
187
|
+
*/
|
|
188
|
+
protected make() {
|
|
189
|
+
this.makeShow()
|
|
190
|
+
this.makeMain()
|
|
191
|
+
this.makeContext()
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
/**
|
|
195
|
+
* Updates the list of styles for the main element.
|
|
196
|
+
*
|
|
197
|
+
* Обновляет список стилей для главного элемента.
|
|
198
|
+
*/
|
|
199
|
+
protected makeMain(): void {
|
|
200
|
+
const element = this.element.getElement()
|
|
201
|
+
|
|
202
|
+
if (element) {
|
|
203
|
+
const style = this.element.style
|
|
204
|
+
|
|
205
|
+
if (this.show.value) {
|
|
206
|
+
element.style.setProperty(style.top, this.size.top)
|
|
207
|
+
element.style.setProperty(style.left, this.size.left)
|
|
208
|
+
element.style.setProperty(style.height, this.size.height)
|
|
209
|
+
element.style.setProperty(style.scale, this.size.scale)
|
|
210
|
+
element.style.setProperty(style.headWidth, this.size.headWidth)
|
|
211
|
+
element.style.setProperty(style.headHeight, this.size.headHeight)
|
|
212
|
+
element.style.setProperty(style.headScale, this.size.headScale)
|
|
213
|
+
element.style.setProperty(style.bodyHeight, this.size.bodyHeight)
|
|
214
|
+
} else {
|
|
215
|
+
element.style.removeProperty(style.top)
|
|
216
|
+
element.style.removeProperty(style.left)
|
|
217
|
+
element.style.removeProperty(style.height)
|
|
218
|
+
element.style.removeProperty(style.scale)
|
|
219
|
+
element.style.removeProperty(style.headWidth)
|
|
220
|
+
element.style.removeProperty(style.headHeight)
|
|
221
|
+
element.style.removeProperty(style.headScale)
|
|
222
|
+
element.style.removeProperty(style.bodyHeight)
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
/**
|
|
228
|
+
* Updates the list of styles for the context element.
|
|
229
|
+
*
|
|
230
|
+
* Обновляет список стилей для элемента контекста.
|
|
231
|
+
*/
|
|
232
|
+
protected makeContext(): void {
|
|
233
|
+
const context = this.element.getElementContext()
|
|
234
|
+
|
|
235
|
+
if (context) {
|
|
236
|
+
const style = this.element.style
|
|
237
|
+
|
|
238
|
+
if (
|
|
239
|
+
this.element.isWindow()
|
|
240
|
+
&& this.isShow.value
|
|
241
|
+
) {
|
|
242
|
+
context.style.setProperty(style.contextWidth, this.size.contextWidth)
|
|
243
|
+
context.style.setProperty(style.contextHeight, this.size.contextHeight)
|
|
244
|
+
} else {
|
|
245
|
+
context.style.removeProperty(style.contextWidth)
|
|
246
|
+
context.style.removeProperty(style.contextHeight)
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import type { ComputedRef, Ref } from 'vue'
|
|
2
|
+
import type { ConstrBind } from '@dxtmisha/functional'
|
|
3
|
+
|
|
4
|
+
import type { MotionTransformEmits, MotionTransformExpose } from './types'
|
|
5
|
+
import type { MotionTransformProps } from './props'
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Options for MotionTransform events/
|
|
9
|
+
* Опции для событий MotionTransform
|
|
10
|
+
*/
|
|
11
|
+
export type MotionTransformEmitOptions = {
|
|
12
|
+
/** Source area type (head, body, top, script)/ Тип области источника (head, body, top, script) */
|
|
13
|
+
type: 'head' | 'body' | 'top' | 'script'
|
|
14
|
+
/** Open state after transform/ Состояние открытия после трансформации */
|
|
15
|
+
open: boolean
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* List of CSS classes for MotionTransform styling/
|
|
20
|
+
* Список CSS классов для стилизации MotionTransform
|
|
21
|
+
*/
|
|
22
|
+
export type MotionTransformClassList = {
|
|
23
|
+
/** Show state class/ Класс состояния видимости */
|
|
24
|
+
show: string
|
|
25
|
+
/** Open state class/ Класс состояния открытия */
|
|
26
|
+
open: string
|
|
27
|
+
/** Window mode class/ Класс режима окна */
|
|
28
|
+
window: string
|
|
29
|
+
|
|
30
|
+
/** Click feedback class/ Класс отклика на клик */
|
|
31
|
+
click: string
|
|
32
|
+
/** Ignore element class/ Класс игнорирования элемента */
|
|
33
|
+
none: string
|
|
34
|
+
/** Global ignore class/ Глобальный класс игнорирования */
|
|
35
|
+
noneGlobal: string
|
|
36
|
+
/** Close trigger class/ Класс триггера закрытия */
|
|
37
|
+
close: string
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Style variable names for MotionTransform layout/
|
|
42
|
+
* Имена стилевых переменных для раскладки MotionTransform
|
|
43
|
+
*/
|
|
44
|
+
export type MotionTransformStyle = {
|
|
45
|
+
/** Context width CSS var/ CSS‑переменная ширины контекста */
|
|
46
|
+
contextWidth: string
|
|
47
|
+
/** Context height CSS var/ CSS‑переменная высоты контекста */
|
|
48
|
+
contextHeight: string
|
|
49
|
+
/** Head scale CSS var/ CSS‑переменная масштаба заголовка */
|
|
50
|
+
headScale: string
|
|
51
|
+
/** Top position CSS var/ CSS‑переменная верхней позиции */
|
|
52
|
+
top: string
|
|
53
|
+
/** Left position CSS var/ CSS‑переменная левой позиции */
|
|
54
|
+
left: string
|
|
55
|
+
/** Head width CSS var/ CSS‑переменная ширины заголовка */
|
|
56
|
+
headWidth: string
|
|
57
|
+
/** Height CSS var/ CSS‑переменная высоты */
|
|
58
|
+
height: string
|
|
59
|
+
/** Scale CSS var/ CSS‑переменная масштаба */
|
|
60
|
+
scale: string
|
|
61
|
+
/** Head height CSS var/ CSS‑переменная высоты заголовка */
|
|
62
|
+
headHeight: string
|
|
63
|
+
/** Body height CSS var/ CSS‑переменная высоты тела */
|
|
64
|
+
bodyHeight: string
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Slot props passed to head/body slots/
|
|
69
|
+
* Параметры слота, передаваемые в head/body
|
|
70
|
+
*/
|
|
71
|
+
export type MotionTransformControlItem = {
|
|
72
|
+
/** Reactive open state/ Реактивное состояние открытия */
|
|
73
|
+
isOpen: ComputedRef<boolean>
|
|
74
|
+
/** Visible or preparing to show/ Видим либо готовится к показу */
|
|
75
|
+
isShow: ComputedRef<boolean>
|
|
76
|
+
/** Helper CSS classes/ Вспомогательные CSS‑классы */
|
|
77
|
+
classes: MotionTransformClassList
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Component map for including MotionTransform/
|
|
82
|
+
* Карта компонентов для подключения MotionTransform
|
|
83
|
+
*/
|
|
84
|
+
export type MotionTransformComponentInclude = {
|
|
85
|
+
/** MotionTransform component key/ Ключ компонента MotionTransform */
|
|
86
|
+
motionTransform?: object
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Event map for MotionTransform include/
|
|
91
|
+
* Карта событий для подключения MotionTransform
|
|
92
|
+
*/
|
|
93
|
+
export type MotionTransformEmitsInclude = {
|
|
94
|
+
/** Transform event with native event and options/ Событие трансформации с нативным событием и опциями */
|
|
95
|
+
transform?: MotionTransformEmits['transform']
|
|
96
|
+
/** Lightweight transform event with options only/ Облегчённое событие трансформации только с опциями */
|
|
97
|
+
transformLite?: MotionTransformEmits['transformLite']
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Interface for MotionTransform expose inclusion/
|
|
102
|
+
* Интерфейс для включения expose MotionTransform
|
|
103
|
+
*/
|
|
104
|
+
export interface MotionTransformExposeInclude extends MotionTransformExpose {
|
|
105
|
+
motionTransformElement: Ref<ConstrBind<MotionTransformExpose> | undefined>
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
/**
|
|
109
|
+
* Props used to include and configure MotionTransform/
|
|
110
|
+
* Свойства для подключения и настройки MotionTransform
|
|
111
|
+
*/
|
|
112
|
+
export interface MotionTransformPropsInclude {
|
|
113
|
+
/** Open state/ Состояние открытия */
|
|
114
|
+
open?: boolean
|
|
115
|
+
/** Click on head opens component/ Клик по заголовку открывает компонент */
|
|
116
|
+
clickOpen?: boolean
|
|
117
|
+
/** Auto close on outside click/ Авто‑закрытие при клике вне */
|
|
118
|
+
autoClose?: boolean
|
|
119
|
+
/** Additional attributes for MotionTransform/ Дополнительные атрибуты для MotionTransform */
|
|
120
|
+
motionTransformAttrs?: ConstrBind<MotionTransformProps>
|
|
121
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
{
|
|
2
|
+
"z-index": {
|
|
3
|
+
"_type": "var"
|
|
4
|
+
},
|
|
5
|
+
"background-full": {
|
|
6
|
+
"_type": "var"
|
|
7
|
+
},
|
|
8
|
+
"background-color": {
|
|
9
|
+
"_type": "var"
|
|
10
|
+
},
|
|
11
|
+
"box-shadow": {
|
|
12
|
+
"_type": "var"
|
|
13
|
+
},
|
|
14
|
+
"#context": {},
|
|
15
|
+
"#head": {},
|
|
16
|
+
"#body": {},
|
|
17
|
+
"#backdrop": {},
|
|
18
|
+
"#scrim": {},
|
|
19
|
+
"#clickNone": {},
|
|
20
|
+
"~section": {},
|
|
21
|
+
"~animationHeadPosition": {
|
|
22
|
+
"~top": {},
|
|
23
|
+
"~toBottom": {},
|
|
24
|
+
"_default": "top"
|
|
25
|
+
},
|
|
26
|
+
"~adaptive": {
|
|
27
|
+
"~planeAlways": {
|
|
28
|
+
"content": "none"
|
|
29
|
+
},
|
|
30
|
+
"group|plane": {
|
|
31
|
+
"link|plane": "{??adaptive.planeAlways}",
|
|
32
|
+
"_type": "media-group"
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
interface MotionTransformPropsToken {
|
|
2
|
+
// :type [!] System label / Системная метка
|
|
3
|
+
section?: boolean
|
|
4
|
+
animationHeadPosition?: 'top' | 'toBottom'
|
|
5
|
+
adaptive?: 'planeAlways'
|
|
6
|
+
// :type [!] System label / Системная метка
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface MotionTransformPropsBasic {
|
|
10
|
+
// Status
|
|
11
|
+
'open'?: boolean
|
|
12
|
+
|
|
13
|
+
// Value
|
|
14
|
+
'ignore'?: HTMLElement | string
|
|
15
|
+
'ignoreSelector'?: string
|
|
16
|
+
|
|
17
|
+
// Style
|
|
18
|
+
'clickOpen'?: boolean
|
|
19
|
+
'autoClose'?: boolean
|
|
20
|
+
'animationShow'?: boolean
|
|
21
|
+
|
|
22
|
+
// Event
|
|
23
|
+
'modelOpen'?: boolean
|
|
24
|
+
'onUpdate:open'?: (value: boolean) => void
|
|
25
|
+
'onUpdate:modelOpen'?: (value: boolean) => void
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* Type describing incoming properties.
|
|
30
|
+
*
|
|
31
|
+
* Тип, описывающий входящие свойства.
|
|
32
|
+
*/
|
|
33
|
+
export interface MotionTransformProps extends MotionTransformPropsBasic, MotionTransformPropsToken {
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Default value for property.
|
|
38
|
+
*
|
|
39
|
+
* Значение по умолчанию для свойства.
|
|
40
|
+
*/
|
|
41
|
+
export const defaultsMotionTransform = {
|
|
42
|
+
clickOpen: true,
|
|
43
|
+
autoClose: true,
|
|
44
|
+
animationShow: true,
|
|
45
|
+
...{
|
|
46
|
+
// :default [!] System label / Системная метка
|
|
47
|
+
animationHeadPosition: 'top'
|
|
48
|
+
// :default [!] System label / Системная метка
|
|
49
|
+
}
|
|
50
|
+
}
|
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
@use "@dxtmisha/styles/properties" as ui;
|
|
2
|
+
|
|
3
|
+
@mixin mixinMotionTransform {
|
|
4
|
+
@include ui.initByCustom('sys.left', auto);
|
|
5
|
+
@include ui.initByCustom('sys.top', auto);
|
|
6
|
+
@include ui.initByCustom('sys.height', auto);
|
|
7
|
+
@include ui.initByCustom('sys.scale', 1);
|
|
8
|
+
@include ui.initByCustom('sys.context.width', auto);
|
|
9
|
+
@include ui.initByCustom('sys.context.height', auto);
|
|
10
|
+
@include ui.initByCustom('sys.head.width', auto);
|
|
11
|
+
@include ui.initByCustom('sys.head.height', auto);
|
|
12
|
+
@include ui.initByCustom('sys.head.scale', 1);
|
|
13
|
+
@include ui.initByCustom('sys.body.height', auto);
|
|
14
|
+
|
|
15
|
+
position: relative;
|
|
16
|
+
|
|
17
|
+
height: ui.v('??sys.head.height', auto);
|
|
18
|
+
|
|
19
|
+
background-color: transparent;
|
|
20
|
+
box-shadow: none;
|
|
21
|
+
|
|
22
|
+
content: "--WINDOW--";
|
|
23
|
+
|
|
24
|
+
transition-property: background-color, box-shadow, height, transform, scale;
|
|
25
|
+
transition-timing-function: ui.v('d.ref.transitionFunction.e40i80');
|
|
26
|
+
transition-duration: ui.v('d.sys.transitionDuration.container.close');
|
|
27
|
+
|
|
28
|
+
&__context {
|
|
29
|
+
width: ui.v('??sys.context.width', auto);
|
|
30
|
+
height: ui.v('??sys.context.height', auto);
|
|
31
|
+
|
|
32
|
+
content: "--ANIMATION--";
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
&__head {
|
|
36
|
+
opacity: 1;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
&__body {
|
|
40
|
+
position: absolute;
|
|
41
|
+
top: 0;
|
|
42
|
+
opacity: 0;
|
|
43
|
+
|
|
44
|
+
transition: opacity 67ms linear 50ms;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
&__backdrop {
|
|
48
|
+
position: sticky;
|
|
49
|
+
top: 0;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
&__background {
|
|
53
|
+
visibility: hidden;
|
|
54
|
+
position: fixed;
|
|
55
|
+
inset: 0;
|
|
56
|
+
opacity: 0;
|
|
57
|
+
|
|
58
|
+
transition-property: opacity, visibility;
|
|
59
|
+
transition-timing-function: ui.v('d.ref.transitionFunction.e40i80');
|
|
60
|
+
transition-duration: ui.v('d.sys.transitionDuration.container.close');
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
&[data-teleport="teleport"] {
|
|
64
|
+
position: fixed;
|
|
65
|
+
overflow-x: hidden;
|
|
66
|
+
overflow-y: auto;
|
|
67
|
+
@include ui.inset();
|
|
68
|
+
z-index: ui.v('??zIndex');
|
|
69
|
+
|
|
70
|
+
height: ui.v('??sys.height', auto);
|
|
71
|
+
|
|
72
|
+
background: ui.v('??backgroundFull');
|
|
73
|
+
@include ui.gradient(ui.v('??backgroundColor'));
|
|
74
|
+
@include ui.scale(ui.v('??sys.scale', 1));
|
|
75
|
+
transform-origin: ui.v('??sys.left', auto) ui.v('??sys.top', auto);
|
|
76
|
+
|
|
77
|
+
@include ui.subclass('head') {
|
|
78
|
+
width: ui.v('??sys.head.width', auto);
|
|
79
|
+
|
|
80
|
+
@include ui.scale(ui.v('??sys.head.scale', 1));
|
|
81
|
+
transform-origin: ui.dirLeft() top;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
&[data-show="show"] {
|
|
86
|
+
overflow-y: hidden;
|
|
87
|
+
|
|
88
|
+
@include ui.subclass('head') {
|
|
89
|
+
transition: opacity 67ms linear 50ms, visibility 67ms linear 50ms;
|
|
90
|
+
|
|
91
|
+
> * {
|
|
92
|
+
margin-top: 0 !important;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
&[data-open="open"] {
|
|
98
|
+
height: ui.v('??sys.body.height', auto);
|
|
99
|
+
|
|
100
|
+
@include ui.subclass('head') {
|
|
101
|
+
visibility: hidden;
|
|
102
|
+
position: absolute;
|
|
103
|
+
top: 0;
|
|
104
|
+
right: 0;
|
|
105
|
+
left: 0;
|
|
106
|
+
opacity: 0;
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
@include ui.subclass('body') {
|
|
110
|
+
position: static;
|
|
111
|
+
opacity: 1;
|
|
112
|
+
|
|
113
|
+
transition: opacity 60ms linear 60ms;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
&[data-show="show"] {
|
|
117
|
+
@include ui.subclass('head') {
|
|
118
|
+
transition: opacity 60ms linear 60ms, visibility 60ms linear 60ms;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
&[data-teleport="teleport"] {
|
|
123
|
+
height: 100%;
|
|
124
|
+
|
|
125
|
+
box-shadow: ui.v('??boxShadow');
|
|
126
|
+
|
|
127
|
+
@include ui.scale(none);
|
|
128
|
+
|
|
129
|
+
transition-duration: ui.v('d.sys.transitionDuration.container.open');
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
&--section {
|
|
134
|
+
@include ui.subclass('head') {
|
|
135
|
+
visibility: visible;
|
|
136
|
+
position: static;
|
|
137
|
+
opacity: 1;
|
|
138
|
+
|
|
139
|
+
transition-property: transform, scale;
|
|
140
|
+
transition-timing-function: ui.v('d.ref.transitionFunction.e40i80');
|
|
141
|
+
transition-duration: ui.v('d.sys.transitionDuration.container.close');
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
@include ui.subclass('body') {
|
|
145
|
+
position: static;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
&[data-open="open"] {
|
|
149
|
+
@include ui.subclass('head') {
|
|
150
|
+
visibility: visible;
|
|
151
|
+
position: static;
|
|
152
|
+
opacity: 1;
|
|
153
|
+
|
|
154
|
+
@include ui.scale(none);
|
|
155
|
+
|
|
156
|
+
transition-property: transform, scale;
|
|
157
|
+
transition-timing-function: ui.v('d.ref.transitionFunction.e40i80');
|
|
158
|
+
transition-duration: ui.v('d.sys.transitionDuration.container.open');
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
&--animationHeadPosition--toBottom:not([data-teleport="teleport"]):not(&--section) {
|
|
164
|
+
&[data-show="show"] {
|
|
165
|
+
@include ui.subclass('head') {
|
|
166
|
+
position: absolute;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
@include ui.subclass('body') {
|
|
171
|
+
top: auto;
|
|
172
|
+
bottom: 0;
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
@include ui.subclass('head') {
|
|
176
|
+
top: auto;
|
|
177
|
+
bottom: 0;
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
}
|