Skip to content

Commit

Permalink
refactor(comp:*): update transition duration (#1425)
Browse files Browse the repository at this point in the history
  • Loading branch information
danranVm committed Jan 17, 2023
1 parent 33fb35f commit 3e69791
Show file tree
Hide file tree
Showing 9 changed files with 26 additions and 18 deletions.
14 changes: 11 additions & 3 deletions packages/components/_private/collapse-transition/style/index.less
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,16 @@
&-enter-active,
&-leave-active {
overflow: hidden;
transition: height var(--ix-transition-duration-medium) var(--ix-ease-in-out),
width var(--ix-transition-duration-medium) var(--ix-ease-in-out),
opacity var(--ix-transition-duration-medium) var(--ix-ease-in-out);
transition-property: height, width, opacity;
}

&-enter-active {
transition-duration: var(--ix-transition-duration-slow);
transition-timing-function: var(--ix-ease-out-quint);
}

&-leave-active {
transition-duration: var(--ix-transition-duration-medium);
transition-timing-function: var(--ix-ease-out-quint);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ export function useOverlayProps(context: DatePickerContext | DateRangePickerCont
disabled: accessor.disabled || props.readonly,
offset: defaultOffset,
placement: 'bottomStart',
transitionName: `${common.prefixCls}-fade`,
transitionName: `${common.prefixCls}-slide-auto`,
trigger: 'manual',
visible: overlayOpened.value,
'onUpdate:visible': setOverlayOpened,
Expand Down
8 changes: 5 additions & 3 deletions packages/components/style/motion/slide.less
Original file line number Diff line number Diff line change
@@ -1,18 +1,19 @@
@import '../variable/animation.less';

.slide-motion(@className, @origin, @scale, @duration: var(--ix-transition-duration-medium)) {
.slide-motion(@className, @origin, @scale) {
.@{idux-prefix}-@{className}-enter-active,
.@{idux-prefix}-@{className}-leave-active {
transform-origin: @origin;
transition-property: transform, opacity;
transition-duration: @duration;
}

.@{idux-prefix}-@{className}-enter-active {
transition-duration: var(--ix-transition-duration-medium);
transition-timing-function: var(--ix-ease-out-quint);
}

.@{idux-prefix}-@{className}-leave-active {
transition-duration: var(--ix-transition-duration-fast);
transition-timing-function: var(--ix-ease-in-quint);
}

Expand All @@ -32,7 +33,6 @@
.@{idux-prefix}-slide-auto-leave-active {
transform-origin: 0% 0%;
transition-property: transform, opacity;
transition-duration: var(--ix-transition-duration-medium);

&[data-popper-placement^='top'] {
transform-origin: 100% 100%;
Expand All @@ -44,10 +44,12 @@
}

.@{idux-prefix}-slide-auto-enter-active {
transition-duration: var(--ix-transition-duration-medium);
transition-timing-function: var(--ix-ease-out-quint);
}

.@{idux-prefix}-slide-auto-leave-active {
transition-duration: var(--ix-transition-duration-fast);
transition-timing-function: var(--ix-ease-in-quint);
}

Expand Down
4 changes: 2 additions & 2 deletions packages/components/style/themes/default.less
Original file line number Diff line number Diff line change
Expand Up @@ -94,8 +94,8 @@
--ix-spacing-2xl: 32px;

// Motion
--ix-transition-duration-fast: 0.1s;
--ix-transition-duration-medium: 0.2s;
--ix-transition-duration-fast: 0.18s;
--ix-transition-duration-medium: 0.24s;
--ix-transition-duration-slow: 0.3s;
// https://easings.net
--ix-ease-in: cubic-bezier(0.12, 0, 0.39, 0);
Expand Down
5 changes: 0 additions & 5 deletions packages/components/style/themes/seer.less
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,6 @@

// Font-Size
--ix-font-size: 12px;

// Motion
--ix-transition-duration-fast: 0.2s;
--ix-transition-duration-medium: 0.24s;
--ix-transition-duration-slow: 0.28s;
}

// 临时兼容,后面需要移除
Expand Down
4 changes: 2 additions & 2 deletions packages/components/style/variable/animation.less
Original file line number Diff line number Diff line change
Expand Up @@ -25,9 +25,9 @@
@ease-in-out-back: cubic-bezier(0.68, -0.6, 0.32, 1.6);

/* transition duration ------------------ */
@transition-duration-slow: 0.28s;
@transition-duration-slow: 0.3s;
@transition-duration-base: 0.24s;
@transition-duration-fast: 0.2s;
@transition-duration-fast: 0.18s;

@transition-all-slow: all @transition-duration-slow;
@transition-all-base: all @transition-duration-base;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ export function useOverlayProps(context: TimePickerContext | TimeRangePickerCont
disabled: accessor.disabled || props.readonly,
offset: defaultOffset,
placement: 'bottomStart',
transitionName: `${common.prefixCls}-fade`,
transitionName: `${common.prefixCls}-slide-auto`,
trigger: 'manual',
visible: overlayOpened.value,
'onUpdate:visible': setOverlayOpened,
Expand Down
2 changes: 1 addition & 1 deletion packages/pro/search/src/ProSearch.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ export default defineComponent({
searchItems,
searchStateContext.tempSearchStateAvailable,
)
const commonOverlayProps = useCommonOverlayProps(props, config, mergedPrefixCls)
const commonOverlayProps = useCommonOverlayProps(props, config, componentCommon, mergedPrefixCls)
const { focused, focus, blur } = useFocusedState(
props,
elementRef,
Expand Down
3 changes: 3 additions & 0 deletions packages/pro/search/src/composables/useCommonOverlayProps.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,22 @@
import { type ComputedRef, computed } from 'vue'

import { type ɵOverlayProps } from '@idux/components/_private/overlay'
import { type CommonConfig } from '@idux/components/config'
import { type ProSearchConfig } from '@idux/pro/config'

import { type ProSearchProps } from '../types'

export function useCommonOverlayProps(
props: ProSearchProps,
config: ProSearchConfig,
componentCommonConfig: CommonConfig,
mergedPrefixCls: ComputedRef<string>,
): ComputedRef<ɵOverlayProps> {
return computed(() => ({
container: props.overlayContainer ?? config.overlayContainer,
containerFallback: `.${mergedPrefixCls.value}-overlay-container`,
placement: 'bottomStart',
transitionName: `${componentCommonConfig.prefixCls}-slide-auto`,
offset: [0, 4],
}))
}

0 comments on commit 3e69791

Please sign in to comment.