Skip to content

Commit 99eae5e

Browse files
committed
feat: imageStack working for mobile images (3)
1 parent 92f69d5 commit 99eae5e

File tree

6 files changed

+57
-14
lines changed

6 files changed

+57
-14
lines changed

src/assets/images/works/index.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import summaryReactCourse from 'src/assets/images/works/react-course/summary.png'
2+
import createGoalReactCourse from 'src/assets/images/works/react-course/create-goal.png'
3+
4+
import InsumosAppointments from 'src/assets/images/works/insumos/appointments.png'
5+
import InsumosFichas from 'src/assets/images/works/insumos/fichas.png'
6+
import InsumosMachines from 'src/assets/images/works/insumos/machines.png'
7+
8+
export const ReactCourseAssets = [summaryReactCourse, createGoalReactCourse]
9+
export const InsumosAssets = [
10+
InsumosAppointments,
11+
InsumosMachines,
12+
InsumosFichas,
13+
]
72.5 KB
Loading
144 KB
Loading
69.9 KB
Loading

src/pages/Works/WorksContainer/WorkItem/ImageStack/ImageStack.tsx

Lines changed: 41 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,34 +6,66 @@ interface Props {
66
}
77

88
const ImageStack = (props: Props) => {
9-
const [transformArgs, setTransformArgs] = useState('')
10-
11-
useEffect(() => {
12-
if (props.images.length === 2) setTransformArgs('transform scale-[0.85]')
13-
if (props.images.length === 3) setTransformArgs('transform scale-[0.7]')
14-
}, [])
15-
169
return (
1710
<div className='img relative'>
1811
{props.images.map((img, index) => {
19-
let transformOrigin = ''
12+
let transformArgs = ''
13+
let transformOrigin = 'origin-center'
2014
let zIndex = ''
15+
let bgPosition = 'bg-center'
2116

2217
if (props.type === 'desktop') {
2318
if (props.images.length === 2) {
19+
transformArgs = 'transform scale-[0.85]'
20+
if (index === 0) {
21+
transformOrigin = 'origin-top-left'
22+
zIndex = 'z-10'
23+
} else {
24+
transformOrigin = 'origin-bottom-right'
25+
zIndex = 'z-1'
26+
}
27+
} else if (props.images.length === 3) {
28+
transformArgs = 'transform scale-[0.7]'
2429
if (index === 0) {
30+
zIndex = 'z-20'
31+
} else if (index === 1) {
2532
transformOrigin = 'origin-top-left'
2633
zIndex = 'z-10'
2734
} else {
2835
transformOrigin = 'origin-bottom-right'
2936
zIndex = 'z-1'
3037
}
3138
}
39+
} else if (props.type === 'mobile') {
40+
if (props.images.length === 2) {
41+
transformArgs = 'transform scale-[0.85]'
42+
if (index === 0) {
43+
transformOrigin = 'origin-top-left'
44+
zIndex = 'z-10'
45+
} else {
46+
transformOrigin = 'origin-bottom-right'
47+
zIndex = 'z-1'
48+
}
49+
} else if (props.images.length === 3) {
50+
if (index === 0) {
51+
zIndex = 'z-20'
52+
} else if (index === 1) {
53+
transformOrigin = 'origin-left'
54+
zIndex = 'z-10'
55+
transformArgs = 'transform scale-[0.7]'
56+
bgPosition = 'bg-[center_left_3rem]'
57+
} else {
58+
transformOrigin = 'origin-right'
59+
zIndex = 'z-1'
60+
transformArgs = 'transform scale-[0.7]'
61+
bgPosition = 'bg-[center_right_3rem]'
62+
}
63+
}
3264
}
3365

3466
return (
3567
<div
36-
className={`absolute ${transformArgs} ${transformOrigin} ${zIndex} flex w-full h-full bg-contain bg-no-repeat bg-center drop-shadow-lg`}
68+
className={`absolute ${bgPosition} ${transformArgs} ${transformOrigin} ${zIndex} flex w-full h-full bg-contain bg-no-repeat drop-shadow-lg`}
3769
style={{
3870
backgroundImage: `url(${img})`,
3971
}}

src/pages/Works/WorksContainer/WorksContainer.tsx

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,14 @@ import CustomCursor from 'src/components/CustomCursor/CustomCursor'
44
import WorkItem from './WorkItem/WorkItem'
55
import { useLocation, useNavigate } from 'react-router-dom'
66
import integra from 'src/assets/images/works/integra30.png'
7-
import insumos from 'src/assets/images/works/insumos.png'
87
import ponto from 'src/assets/images/works/ponto.png'
98
import swingmd from 'src/assets/images/works/swingmd.gif'
109
import iworkoff from 'src/assets/images/works/iworkoff.gif'
1110
import bcTasksDio from 'src/assets/images/works/bcTasksDio.gif'
1211
import portalRelat from 'src/assets/images/works/portal.png'
1312
import viacepflutter from 'src/assets/images/works/viacepflutter.png'
1413
import useTransitionStore from 'src/store/storeConfig'
15-
import summaryReactCourse from 'src/assets/images/works/react-course/summary.png'
16-
import createGoalReactCourse from 'src/assets/images/works/react-course/create-goal.png'
14+
import { ReactCourseAssets, InsumosAssets } from 'src/assets/images/works'
1715

1816
const WorksContainer = () => {
1917
const changeTransition = useTransitionStore((state) => state.change)
@@ -121,7 +119,7 @@ const WorksContainer = () => {
121119
description='Design & Interação'
122120
dev='Figma'
123121
year='2022'
124-
panel={[insumos]}
122+
panel={InsumosAssets}
125123
type='mobile'
126124
setScale={setScale}
127125
link='https://www.figma.com/file/EiV65w3Y2q1hC4HoilnL2m/Insumos?node-id=0%3A1&t=RLXFk325dwOK6C88-1'
@@ -131,7 +129,7 @@ const WorksContainer = () => {
131129
description='Design & Desenvolvimento'
132130
dev='React'
133131
year='2024'
134-
panel={[summaryReactCourse, createGoalReactCourse]}
132+
panel={ReactCourseAssets}
135133
type='desktop'
136134
setScale={setScale}
137135
link='https://github.com/abnerjs/reactcourse-sec-2024'

0 commit comments

Comments
 (0)