|
|
@@ -19,6 +19,11 @@ export function createConfig({ dev = true } = {}) {
|
|
|
card: '0 0 13px 0 rgba(74, 53, 107, 0.08)'
|
|
|
}
|
|
|
}
|
|
|
+ // preflights: [
|
|
|
+ // {
|
|
|
+ // getCSS: () => createEnterPlugin()
|
|
|
+ // }
|
|
|
+ // ]
|
|
|
// transformers: [transformerDirectives()]
|
|
|
// rules: [createEnterPlugin()]
|
|
|
// variants: [createEnterPlugin()]
|
|
|
@@ -30,48 +35,62 @@ export default createConfig()
|
|
|
* Used for animation when the element is displayed
|
|
|
* @param maxOutput The larger the maxOutput output, the larger the generated css volume
|
|
|
*/
|
|
|
-function createEnterPlugin(maxOutput = 10) {
|
|
|
- const createCss = (index: number, d = 'x') => {
|
|
|
- const upd = d.toUpperCase()
|
|
|
- return {
|
|
|
- [`*> .enter-${d}:nth-child(${index})`]: {
|
|
|
- transform: `translate${upd}(50px)`
|
|
|
- },
|
|
|
- [`*> .-enter-${d}:nth-child(${index})`]: {
|
|
|
- transform: `translate${upd}(-50px)`
|
|
|
- },
|
|
|
- [`* > .enter-${d}:nth-child(${index}),* > .-enter-${d}:nth-child(${index})`]: {
|
|
|
- 'z-index': `${10 - index}`,
|
|
|
- opacity: '0',
|
|
|
- animation: `enter-${d}-animation 0.4s ease-in-out 0.3s`,
|
|
|
- 'animation-fill-mode': 'forwards',
|
|
|
- 'animation-delay': `${(index * 1) / 10}s`
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- const handler = () => {
|
|
|
- const addRawCss = {}
|
|
|
- for (let index = 1; index < maxOutput; index++) {
|
|
|
- Object.assign(m, {
|
|
|
- ...createCss(index, 'x'),
|
|
|
- ...createCss(index, 'y')
|
|
|
- })
|
|
|
- }
|
|
|
- return {
|
|
|
- ...addRawCss,
|
|
|
- [`@keyframes enter-x-animation`]: {
|
|
|
- to: {
|
|
|
- opacity: '1',
|
|
|
- transform: 'translateX(0)'
|
|
|
- }
|
|
|
- },
|
|
|
- [`@keyframes enter-y-animation`]: {
|
|
|
- to: {
|
|
|
- opacity: '1',
|
|
|
- transform: 'translateY(0)'
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- return [/^enter-(x|y)/, () => handler()]
|
|
|
-}
|
|
|
+// function createEnterPlugin(maxOutput = 10): string {
|
|
|
+// const createCss = (index: number, d = 'x') => {
|
|
|
+// const upd = d.toUpperCase()
|
|
|
+// return {
|
|
|
+// [`*> .enter-${d}:nth-child(${index})`]: {
|
|
|
+// transform: `translate${upd}(50px)`
|
|
|
+// },
|
|
|
+// [`*> .-enter-${d}:nth-child(${index})`]: {
|
|
|
+// transform: `translate${upd}(-50px)`
|
|
|
+// },
|
|
|
+// [`* > .enter-${d}:nth-child(${index}),* > .-enter-${d}:nth-child(${index})`]: {
|
|
|
+// 'z-index': `${10 - index}`,
|
|
|
+// opacity: '0',
|
|
|
+// animation: `enter-${d}-animation 0.4s ease-in-out 0.3s`,
|
|
|
+// 'animation-fill-mode': 'forwards',
|
|
|
+// 'animation-delay': `${(index * 1) / 10}s`
|
|
|
+// }
|
|
|
+// }
|
|
|
+// }
|
|
|
+// const handler = () => {
|
|
|
+// const addRawCss = {}
|
|
|
+// for (let index = 1; index < maxOutput; index++) {
|
|
|
+// Object.assign(addRawCss, {
|
|
|
+// ...createCss(index, 'x'),
|
|
|
+// ...createCss(index, 'y')
|
|
|
+// })
|
|
|
+// }
|
|
|
+// const entriesToCss = (arr?: CSSEntries) => {
|
|
|
+// if (!arr) return ''
|
|
|
+// return clearIdenticalEntries(arr)
|
|
|
+// .map(([key, value]) => {
|
|
|
+// if (isObject(value)) {
|
|
|
+// return value !== null ? `${key} {${entriesToCss(normalizeCSSEntries(value))}}` : undefined
|
|
|
+// }
|
|
|
+// return value !== null ? `${key}:${value};` : undefined
|
|
|
+// })
|
|
|
+// .filter(Boolean)
|
|
|
+// .join('')
|
|
|
+// }
|
|
|
+// return entriesToCss(
|
|
|
+// normalizeCSSEntries({
|
|
|
+// ...addRawCss,
|
|
|
+// [`@keyframes enter-x-animation`]: {
|
|
|
+// to: {
|
|
|
+// opacity: '1',
|
|
|
+// transform: 'translateX(0)'
|
|
|
+// }
|
|
|
+// },
|
|
|
+// [`@keyframes enter-y-animation`]: {
|
|
|
+// to: {
|
|
|
+// opacity: '1',
|
|
|
+// transform: 'translateY(0)'
|
|
|
+// }
|
|
|
+// }
|
|
|
+// })
|
|
|
+// )
|
|
|
+// }
|
|
|
+// return handler()
|
|
|
+// }
|