gaesup-world 0.0.1
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/README.md +51 -0
- package/index.html +13 -0
- package/package.json +82 -0
- package/src/gaesup/animation/actions.ts +123 -0
- package/src/gaesup/camera/cameraCollisionDetecter.tsx +53 -0
- package/src/gaesup/camera/control/map.ts +10 -0
- package/src/gaesup/camera/control/normal copy.ts +19 -0
- package/src/gaesup/camera/control/normal.ts +15 -0
- package/src/gaesup/camera/control/orbit.ts +31 -0
- package/src/gaesup/camera/index.tsx +102 -0
- package/src/gaesup/camera/type.ts +17 -0
- package/src/gaesup/component/Airplane.tsx +46 -0
- package/src/gaesup/component/Character.tsx +48 -0
- package/src/gaesup/component/Vehicle.tsx +40 -0
- package/src/gaesup/component/gltf/AirplaneGltf.tsx +31 -0
- package/src/gaesup/component/gltf/CharacterGltf.tsx +81 -0
- package/src/gaesup/component/gltf/VehicleGltf.tsx +31 -0
- package/src/gaesup/component/gltf/WheelJoint.tsx +39 -0
- package/src/gaesup/component/gltf/type.ts +6 -0
- package/src/gaesup/component/ref/airplane.tsx +83 -0
- package/src/gaesup/component/ref/character.tsx +132 -0
- package/src/gaesup/component/ref/vehicle.tsx +145 -0
- package/src/gaesup/controller/index.tsx +103 -0
- package/src/gaesup/controller/type.ts +139 -0
- package/src/gaesup/gaesupProps/index.tsx +66 -0
- package/src/gaesup/initial/callback/index.ts +73 -0
- package/src/gaesup/initial/callback/type.ts +45 -0
- package/src/gaesup/initial/controller/index.ts +143 -0
- package/src/gaesup/initial/controller/initDebug.ts +102 -0
- package/src/gaesup/initial/gaesupWorld/collider/airplane.ts +26 -0
- package/src/gaesup/initial/gaesupWorld/collider/character.ts +32 -0
- package/src/gaesup/initial/gaesupWorld/collider/gltf.ts +91 -0
- package/src/gaesup/initial/gaesupWorld/collider/index.ts +26 -0
- package/src/gaesup/initial/gaesupWorld/collider/vehicle.ts +43 -0
- package/src/gaesup/initial/gaesupWorld/index.ts +82 -0
- package/src/gaesup/initial/gaesupWorld/type.ts +37 -0
- package/src/gaesup/physics/airplane/currentSetting.ts +20 -0
- package/src/gaesup/physics/airplane/damping.ts +8 -0
- package/src/gaesup/physics/airplane/direction.ts +70 -0
- package/src/gaesup/physics/airplane/gravity.ts +11 -0
- package/src/gaesup/physics/airplane/impulse.ts +22 -0
- package/src/gaesup/physics/airplane/index.tsx +16 -0
- package/src/gaesup/physics/airplane/turn.ts +12 -0
- package/src/gaesup/physics/airplane copy/currentSetting.ts +20 -0
- package/src/gaesup/physics/airplane copy/direction.ts +52 -0
- package/src/gaesup/physics/airplane copy/gravity.ts +6 -0
- package/src/gaesup/physics/airplane copy/impulse.ts +28 -0
- package/src/gaesup/physics/airplane copy/index.tsx +14 -0
- package/src/gaesup/physics/airplane copy/turn.ts +9 -0
- package/src/gaesup/physics/character/accelaration.ts +14 -0
- package/src/gaesup/physics/character/currentSetting.ts +20 -0
- package/src/gaesup/physics/character/damping.ts +6 -0
- package/src/gaesup/physics/character/direction.ts +104 -0
- package/src/gaesup/physics/character/impulse.ts +24 -0
- package/src/gaesup/physics/character/index.tsx +20 -0
- package/src/gaesup/physics/character/jump.ts +21 -0
- package/src/gaesup/physics/character/stabilizing.ts +6 -0
- package/src/gaesup/physics/character/turn.ts +17 -0
- package/src/gaesup/physics/check/ground.ts +19 -0
- package/src/gaesup/physics/check/index.ts +12 -0
- package/src/gaesup/physics/check/moving.ts +21 -0
- package/src/gaesup/physics/check/rotate.ts +13 -0
- package/src/gaesup/physics/check/slope.ts +50 -0
- package/src/gaesup/physics/index.ts +50 -0
- package/src/gaesup/physics/type.ts +35 -0
- package/src/gaesup/physics/vehicle/currentSetting.ts +20 -0
- package/src/gaesup/physics/vehicle/damping.ts +8 -0
- package/src/gaesup/physics/vehicle/direction.ts +27 -0
- package/src/gaesup/physics/vehicle/impulse.ts +22 -0
- package/src/gaesup/physics/vehicle/index.tsx +14 -0
- package/src/gaesup/physics/vehicle/turn.ts +11 -0
- package/src/gaesup/stores/active/index.ts +19 -0
- package/src/gaesup/stores/active/type.ts +16 -0
- package/src/gaesup/stores/airplane/index.ts +6 -0
- package/src/gaesup/stores/airplane/type.ts +4 -0
- package/src/gaesup/stores/animation/index.ts +18 -0
- package/src/gaesup/stores/animation/type.ts +9 -0
- package/src/gaesup/stores/collider/index.ts +55 -0
- package/src/gaesup/stores/context/controller/index.ts +36 -0
- package/src/gaesup/stores/context/controller/reducer.ts +18 -0
- package/src/gaesup/stores/context/controller/type.ts +38 -0
- package/src/gaesup/stores/context/gaesupworld/index.ts +11 -0
- package/src/gaesup/stores/context/gaesupworld/reducer.ts +21 -0
- package/src/gaesup/stores/context/gaesupworld/type.ts +66 -0
- package/src/gaesup/stores/control/index.ts +33 -0
- package/src/gaesup/stores/control/type.ts +11 -0
- package/src/gaesup/stores/joystick/index.ts +72 -0
- package/src/gaesup/stores/joystick/type.ts +23 -0
- package/src/gaesup/stores/minimap/index.ts +5 -0
- package/src/gaesup/stores/minimap/type.ts +22 -0
- package/src/gaesup/stores/point/type.ts +6 -0
- package/src/gaesup/stores/states/index.tsx +10 -0
- package/src/gaesup/stores/states/type.ts +10 -0
- package/src/gaesup/stores/url/index.ts +6 -0
- package/src/gaesup/stores/url/type.ts +6 -0
- package/src/gaesup/styles.css.ts +26 -0
- package/src/gaesup/tools/gameboy/GameBoyButton.tsx +38 -0
- package/src/gaesup/tools/gameboy/index.tsx +36 -0
- package/src/gaesup/tools/gameboy/style.css.ts +78 -0
- package/src/gaesup/tools/gamepad/GamePadButton.tsx +31 -0
- package/src/gaesup/tools/gamepad/index.tsx +55 -0
- package/src/gaesup/tools/gamepad/style.css.ts +16 -0
- package/src/gaesup/tools/index.tsx +61 -0
- package/src/gaesup/tools/joystick/index.tsx +145 -0
- package/src/gaesup/tools/joystick/style.css.ts +40 -0
- package/src/gaesup/tools/jumpPoint/index.tsx +27 -0
- package/src/gaesup/tools/jumpPoint/style.css.ts +33 -0
- package/src/gaesup/tools/keyBoardToolTip/constant.ts +144 -0
- package/src/gaesup/tools/keyBoardToolTip/index.tsx +85 -0
- package/src/gaesup/tools/keyBoardToolTip/style.css.ts +49 -0
- package/src/gaesup/tools/minimap/index.tsx +47 -0
- package/src/gaesup/tools/minimap/style.css.ts +144 -0
- package/src/gaesup/tools/style.css.ts +34 -0
- package/src/gaesup/utils/constant.ts +1 -0
- package/src/gaesup/utils/ray.ts +23 -0
- package/src/gaesup/utils/ref.ts +17 -0
- package/src/gaesup/utils/vector.ts +40 -0
- package/src/gaesup/world/index.tsx +17 -0
- package/src/gaesup/world/type.ts +10 -0
- package/src/styles/constants/boxshadow.css.ts +499 -0
- package/src/styles/constants/constant.css.ts +81 -0
- package/src/styles/constants/direction.css.ts +168 -0
- package/src/styles/constants/flex.css.ts +68 -0
- package/src/styles/constants/gradient.css.ts +10 -0
- package/src/styles/constants/grid.css.ts +37 -0
- package/src/styles/constants/palette.css.ts +324 -0
- package/src/styles/constants/translate.css.ts +129 -0
- package/src/styles/global.css.ts +91 -0
- package/src/styles/recipe/base.css.ts +31 -0
- package/src/styles/recipe/button.css.ts +109 -0
- package/src/styles/recipe/index.css.ts +134 -0
- package/src/styles/recipe/input.css.ts +33 -0
- package/src/styles/sprinkles/color.css.ts +62 -0
- package/src/styles/sprinkles/direction.css.ts +26 -0
- package/src/styles/sprinkles/display.css.ts +25 -0
- package/src/styles/sprinkles/fontSize.css.ts +25 -0
- package/src/styles/sprinkles/grid.css.ts +25 -0
- package/src/styles/sprinkles/index.css.ts +22 -0
- package/src/styles/sprinkles/margin.css.ts +30 -0
- package/src/styles/sprinkles/padding.css.ts +30 -0
- package/src/styles/sprinkles/position.css.ts +14 -0
- package/src/styles/sprinkles/size.css.ts +23 -0
- package/src/styles/theme.css.ts +98 -0
- package/tsconfig.json +27 -0
- package/tsconfig.node.json +10 -0
- package/vite.config.ts +9 -0
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
export const translate = {
|
|
2
|
+
center: {
|
|
3
|
+
transform: "translate(-50%, -50%)",
|
|
4
|
+
},
|
|
5
|
+
left: {
|
|
6
|
+
transform: "translate(-100%, -50%)",
|
|
7
|
+
},
|
|
8
|
+
right: {
|
|
9
|
+
transform: "translate(0, -50%)",
|
|
10
|
+
},
|
|
11
|
+
top: {
|
|
12
|
+
transform: "translate(-50%, -100%)",
|
|
13
|
+
},
|
|
14
|
+
bottom: {
|
|
15
|
+
transform: "translate(-50%, 0)",
|
|
16
|
+
},
|
|
17
|
+
top_left: {
|
|
18
|
+
transform: "translate(-100%, -100%)",
|
|
19
|
+
},
|
|
20
|
+
top_right: {
|
|
21
|
+
transform: "translate(0, -100%)",
|
|
22
|
+
},
|
|
23
|
+
bottom_left: {
|
|
24
|
+
transform: "translate(-100%, 0)",
|
|
25
|
+
},
|
|
26
|
+
bottom_right: {
|
|
27
|
+
transform: "translate(0, 0)",
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export const translateX = {
|
|
32
|
+
left: { transform: "translateX(-100%)" },
|
|
33
|
+
right: { transform: "translateX(100%)" },
|
|
34
|
+
zero: { transform: "translateX(0)" },
|
|
35
|
+
left_10: { transform: "translateX(-10%)" },
|
|
36
|
+
right_10: { transform: "translateX(10%)" },
|
|
37
|
+
left_20: { transform: "translateX(-20%)" },
|
|
38
|
+
right_20: { transform: "translateX(20%)" },
|
|
39
|
+
left_30: { transform: "translateX(-30%)" },
|
|
40
|
+
right_30: { transform: "translateX(30%)" },
|
|
41
|
+
left_40: { transform: "translateX(-40%)" },
|
|
42
|
+
right_40: { transform: "translateX(40%)" },
|
|
43
|
+
left_50: { transform: "translateX(-50%)" },
|
|
44
|
+
right_50: { transform: "translateX(50%)" },
|
|
45
|
+
left_60: { transform: "translateX(-60%)" },
|
|
46
|
+
right_60: { transform: "translateX(60%)" },
|
|
47
|
+
left_70: { transform: "translateX(-70%)" },
|
|
48
|
+
right_70: { transform: "translateX(70%)" },
|
|
49
|
+
left_80: { transform: "translateX(-80%)" },
|
|
50
|
+
right_80: { transform: "translateX(80%)" },
|
|
51
|
+
left_90: { transform: "translateX(-90%)" },
|
|
52
|
+
right_90: { transform: "translateX(90%)" },
|
|
53
|
+
left_100: { transform: "translateX(-100%)" },
|
|
54
|
+
right_100: { transform: "translateX(100%)" },
|
|
55
|
+
left_1rem: { transform: "translateX(-1rem)" },
|
|
56
|
+
|
|
57
|
+
right_1rem: { transform: "translateX(1rem)" },
|
|
58
|
+
left_2rem: { transform: "translateX(-2rem)" },
|
|
59
|
+
right_2rem: { transform: "translateX(2rem)" },
|
|
60
|
+
left_3rem: { transform: "translateX(-3rem)" },
|
|
61
|
+
right_3rem: { transform: "translateX(3rem)" },
|
|
62
|
+
left_4rem: { transform: "translateX(-4rem)" },
|
|
63
|
+
right_4rem: { transform: "translateX(4rem)" },
|
|
64
|
+
left_5rem: { transform: "translateX(-5rem)" },
|
|
65
|
+
right_5rem: { transform: "translateX(5rem)" },
|
|
66
|
+
left_6rem: { transform: "translateX(-6rem)" },
|
|
67
|
+
right_6rem: { transform: "translateX(6rem)" },
|
|
68
|
+
left_7rem: { transform: "translateX(-7rem)" },
|
|
69
|
+
right_7rem: { transform: "translateX(7rem)" },
|
|
70
|
+
left_8rem: { transform: "translateX(-8rem)" },
|
|
71
|
+
right_8rem: { transform: "translateX(8rem)" },
|
|
72
|
+
left_9rem: { transform: "translateX(-9rem)" },
|
|
73
|
+
right_9rem: { transform: "translateX(9rem)" },
|
|
74
|
+
left_10rem: { transform: "translateX(-10rem)" },
|
|
75
|
+
right_10rem: { transform: "translateX(10rem)" },
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export const translateY = {
|
|
79
|
+
top: { transform: "translateY(-100%)" },
|
|
80
|
+
bottom: { transform: "translateY(100%)" },
|
|
81
|
+
zero: { transform: "translateY(0)" },
|
|
82
|
+
top_10: { transform: "translateY(-10%)" },
|
|
83
|
+
bottom_10: { transform: "translateY(10%)" },
|
|
84
|
+
top_20: { transform: "translateY(-20%)" },
|
|
85
|
+
bottom_20: { transform: "translateY(20%)" },
|
|
86
|
+
top_30: { transform: "translateY(-30%)" },
|
|
87
|
+
bottom_30: { transform: "translateY(30%)" },
|
|
88
|
+
top_40: { transform: "translateY(-40%)" },
|
|
89
|
+
bottom_40: { transform: "translateY(40%)" },
|
|
90
|
+
top_50: { transform: "translateY(-50%)" },
|
|
91
|
+
bottom_50: { transform: "translateY(50%)" },
|
|
92
|
+
top_60: { transform: "translateY(-60%)" },
|
|
93
|
+
bottom_60: { transform: "translateY(60%)" },
|
|
94
|
+
top_70: { transform: "translateY(-70%)" },
|
|
95
|
+
bottom_70: { transform: "translateY(70%)" },
|
|
96
|
+
top_80: { transform: "translateY(-80%)" },
|
|
97
|
+
bottom_80: { transform: "translateY(80%)" },
|
|
98
|
+
top_90: { transform: "translateY(-90%)" },
|
|
99
|
+
bottom_90: { transform: "translateY(90%)" },
|
|
100
|
+
top_100: { transform: "translateY(-100%)" },
|
|
101
|
+
bottom_100: { transform: "translateY(100%)" },
|
|
102
|
+
|
|
103
|
+
top_1rem: { transform: "translateY(-1rem)" },
|
|
104
|
+
bottom_1rem: { transform: "translateY(1rem)" },
|
|
105
|
+
top_2rem: { transform: "translateY(-2rem)" },
|
|
106
|
+
bottom_2rem: { transform: "translateY(2rem)" },
|
|
107
|
+
top_3rem: { transform: "translateY(-3rem)" },
|
|
108
|
+
bottom_3rem: { transform: "translateY(3rem)" },
|
|
109
|
+
top_4rem: { transform: "translateY(-4rem)" },
|
|
110
|
+
bottom_4rem: { transform: "translateY(4rem)" },
|
|
111
|
+
top_5rem: { transform: "translateY(-5rem)" },
|
|
112
|
+
bottom_5rem: { transform: "translateY(5rem)" },
|
|
113
|
+
top_6rem: { transform: "translateY(-6rem)" },
|
|
114
|
+
bottom_6rem: { transform: "translateY(6rem)" },
|
|
115
|
+
top_7rem: { transform: "translateY(-7rem)" },
|
|
116
|
+
bottom_7rem: { transform: "translateY(7rem)" },
|
|
117
|
+
top_8rem: { transform: "translateY(-8rem)" },
|
|
118
|
+
bottom_8rem: { transform: "translateY(8rem)" },
|
|
119
|
+
top_9rem: { transform: "translateY(-9rem)" },
|
|
120
|
+
bottom_9rem: { transform: "translateY(9rem)" },
|
|
121
|
+
top_10rem: { transform: "translateY(-10rem)" },
|
|
122
|
+
bottom_10rem: { transform: "translateY(10rem)" },
|
|
123
|
+
};
|
|
124
|
+
|
|
125
|
+
export const translateAll = {
|
|
126
|
+
...translate,
|
|
127
|
+
...translateX,
|
|
128
|
+
...translateY,
|
|
129
|
+
};
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { globalStyle } from "@vanilla-extract/css";
|
|
2
|
+
import { vars } from "./theme.css";
|
|
3
|
+
|
|
4
|
+
globalStyle(":root", {
|
|
5
|
+
background: vars.themes.background,
|
|
6
|
+
color: vars.themes.text.normal,
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
globalStyle("html", {
|
|
10
|
+
boxSizing: "border-box",
|
|
11
|
+
fontSize: "62.5%",
|
|
12
|
+
overflowX: "hidden",
|
|
13
|
+
padding: 0,
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
globalStyle("body", {
|
|
17
|
+
position: "relative",
|
|
18
|
+
margin: 0,
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
globalStyle("*, *::before, *::after", {
|
|
22
|
+
boxSizing: "border-box",
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
globalStyle("a", {
|
|
26
|
+
cursor: "pointer",
|
|
27
|
+
textDecoration: "none",
|
|
28
|
+
color: "inherit",
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
globalStyle("input, input:focus", {
|
|
32
|
+
border: "none",
|
|
33
|
+
borderRight: "0px",
|
|
34
|
+
borderTop: "0px",
|
|
35
|
+
borderLeft: "0px",
|
|
36
|
+
borderBottom: "0px",
|
|
37
|
+
outline: "none",
|
|
38
|
+
WebkitAppearance: "none",
|
|
39
|
+
MozAppearance: "none",
|
|
40
|
+
appearance: "none",
|
|
41
|
+
});
|
|
42
|
+
|
|
43
|
+
globalStyle("button, button:focus", {
|
|
44
|
+
border: "none",
|
|
45
|
+
outline: "none",
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
globalStyle("input::-ms-clear", {
|
|
49
|
+
display: "none",
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
globalStyle(
|
|
53
|
+
'input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button',
|
|
54
|
+
{
|
|
55
|
+
WebkitAppearance: "none",
|
|
56
|
+
MozAppearance: "none",
|
|
57
|
+
appearance: "none",
|
|
58
|
+
}
|
|
59
|
+
);
|
|
60
|
+
|
|
61
|
+
globalStyle(
|
|
62
|
+
'input[type="password"]::-ms-reveal, input[type="password"]::-ms-clear',
|
|
63
|
+
{
|
|
64
|
+
display: "none",
|
|
65
|
+
}
|
|
66
|
+
);
|
|
67
|
+
// 스크롤
|
|
68
|
+
|
|
69
|
+
globalStyle("::-webkit-scrollbar", {
|
|
70
|
+
width: "1.8rem",
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
globalStyle("::-webkit-scrollbar-thumb", {
|
|
74
|
+
background: vars.gradient.purple,
|
|
75
|
+
borderRadius: "1rem",
|
|
76
|
+
border: "0.4rem solid transparent",
|
|
77
|
+
backgroundClip: "padding-box",
|
|
78
|
+
});
|
|
79
|
+
|
|
80
|
+
globalStyle("::-webkit-scrollbar-track", {
|
|
81
|
+
WebkitBackdropFilter: "blur(10px)",
|
|
82
|
+
backdropFilter: "blur(10px)",
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
globalStyle(
|
|
86
|
+
"input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill:active",
|
|
87
|
+
{
|
|
88
|
+
transition: "background-color 10000s",
|
|
89
|
+
WebkitTextFillColor: "black !important",
|
|
90
|
+
}
|
|
91
|
+
);
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
export const flex_base: {
|
|
2
|
+
display: 'flex';
|
|
3
|
+
alignItems: 'center';
|
|
4
|
+
justifyContent: 'center';
|
|
5
|
+
textAlign: 'center';
|
|
6
|
+
} = {
|
|
7
|
+
display: 'flex',
|
|
8
|
+
alignItems: 'center',
|
|
9
|
+
justifyContent: 'center',
|
|
10
|
+
textAlign: 'center'
|
|
11
|
+
};
|
|
12
|
+
// grid base
|
|
13
|
+
export const grid_base: {
|
|
14
|
+
display: 'grid';
|
|
15
|
+
} = {
|
|
16
|
+
display: 'grid'
|
|
17
|
+
};
|
|
18
|
+
// relative base
|
|
19
|
+
export const relative_base: { position: 'relative' } = { position: 'relative' };
|
|
20
|
+
// absolute base
|
|
21
|
+
export const absolute_base: { position: 'absolute' } = { position: 'absolute' };
|
|
22
|
+
// fixed base
|
|
23
|
+
export const fixed_base: { position: 'fixed' } = { position: 'fixed' };
|
|
24
|
+
// glass base
|
|
25
|
+
export const glass_base: {
|
|
26
|
+
backdropFilter: 'blur(2rem)';
|
|
27
|
+
WebkitBackdropFilter: 'blur(2rem)';
|
|
28
|
+
} = {
|
|
29
|
+
backdropFilter: 'blur(2rem)',
|
|
30
|
+
WebkitBackdropFilter: 'blur(2rem)'
|
|
31
|
+
};
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { recipe } from "@vanilla-extract/recipes";
|
|
2
|
+
import { boxShadowHover } from "../constants/boxshadow.css";
|
|
3
|
+
import { palette } from "../constants/palette.css";
|
|
4
|
+
import { sprinkles } from "../sprinkles/index.css";
|
|
5
|
+
import { vars } from "../theme.css";
|
|
6
|
+
import { flex_relative } from "./index.css";
|
|
7
|
+
|
|
8
|
+
export const button = recipe({
|
|
9
|
+
base: [
|
|
10
|
+
flex_relative({}),
|
|
11
|
+
{
|
|
12
|
+
color: "white",
|
|
13
|
+
textAlign: "center",
|
|
14
|
+
borderRadius: "1rem",
|
|
15
|
+
margin: "0.5rem",
|
|
16
|
+
width: "100%",
|
|
17
|
+
transition: "all 0.3s ease-in",
|
|
18
|
+
cursor: "pointer",
|
|
19
|
+
},
|
|
20
|
+
],
|
|
21
|
+
variants: {
|
|
22
|
+
purple: {
|
|
23
|
+
true: {
|
|
24
|
+
background: vars.gradient.purple,
|
|
25
|
+
boxShadow: palette.purple800,
|
|
26
|
+
":hover": {
|
|
27
|
+
boxShadow: boxShadowHover.purple800_hover,
|
|
28
|
+
},
|
|
29
|
+
},
|
|
30
|
+
},
|
|
31
|
+
gray: {
|
|
32
|
+
true: {
|
|
33
|
+
background: palette.gray800,
|
|
34
|
+
boxShadow: palette.gray800,
|
|
35
|
+
":hover": {
|
|
36
|
+
boxShadow: boxShadowHover.slate700_hover,
|
|
37
|
+
},
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
glass: {
|
|
41
|
+
true: {
|
|
42
|
+
color: vars.themes.text.normal,
|
|
43
|
+
background: vars.themes.glass.normal,
|
|
44
|
+
boxShadow: `0 0 5px ${vars.themes.glass.normal}`,
|
|
45
|
+
":hover": {
|
|
46
|
+
boxShadow: `0 0 10px ${vars.themes.glass.normal}`,
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
black: {
|
|
51
|
+
false: {
|
|
52
|
+
background: palette.gray200,
|
|
53
|
+
},
|
|
54
|
+
true: {
|
|
55
|
+
background: palette.gray900,
|
|
56
|
+
color: palette.gray200,
|
|
57
|
+
},
|
|
58
|
+
},
|
|
59
|
+
},
|
|
60
|
+
compoundVariants: [
|
|
61
|
+
{
|
|
62
|
+
variants: {
|
|
63
|
+
gray: true,
|
|
64
|
+
},
|
|
65
|
+
style: sprinkles({
|
|
66
|
+
bs: { default: "gray900", hover: "slate700_hover" },
|
|
67
|
+
}),
|
|
68
|
+
},
|
|
69
|
+
],
|
|
70
|
+
});
|
|
71
|
+
|
|
72
|
+
export const mobileButton = recipe({
|
|
73
|
+
base: [
|
|
74
|
+
{
|
|
75
|
+
width: "7.5rem",
|
|
76
|
+
height: "4rem",
|
|
77
|
+
borderRadius: "1rem",
|
|
78
|
+
fontSize: "1rem",
|
|
79
|
+
backgroundColor: "rgba(0, 0, 0, 0.5)",
|
|
80
|
+
color: "white",
|
|
81
|
+
boxShadow: "0 0 0.5rem rgba(0, 0, 0, 0.5)",
|
|
82
|
+
cursor: "pointer",
|
|
83
|
+
transition: "all 0.3s ease-in",
|
|
84
|
+
margin: "0.5rem",
|
|
85
|
+
},
|
|
86
|
+
],
|
|
87
|
+
variants: {
|
|
88
|
+
character: {
|
|
89
|
+
true: {
|
|
90
|
+
background: vars.gradient.lightGreen,
|
|
91
|
+
boxShadow: "0 0 1rem rgba(5,222,250,1)",
|
|
92
|
+
color: "black",
|
|
93
|
+
":hover": {
|
|
94
|
+
boxShadow: "0 0 2rem rgba(5,222,250,1)",
|
|
95
|
+
},
|
|
96
|
+
},
|
|
97
|
+
},
|
|
98
|
+
control: {
|
|
99
|
+
true: {
|
|
100
|
+
background: vars.gradient.red,
|
|
101
|
+
boxShadow: "0 0 1rem rgba(245,177,97,1)",
|
|
102
|
+
color: "black",
|
|
103
|
+
":hover": {
|
|
104
|
+
boxShadow: "0 0 2rem rrgba(245,177,97,1)",
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
},
|
|
108
|
+
},
|
|
109
|
+
});
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { recipe } from "@vanilla-extract/recipes";
|
|
2
|
+
import { fraction, repeat } from "../constants/constant.css";
|
|
3
|
+
import { clock, direction } from "../constants/direction.css";
|
|
4
|
+
import { aligns } from "../constants/flex.css";
|
|
5
|
+
import { gridTemplateAll } from "../constants/grid.css";
|
|
6
|
+
import {
|
|
7
|
+
absolute_base,
|
|
8
|
+
fixed_base,
|
|
9
|
+
flex_base,
|
|
10
|
+
glass_base,
|
|
11
|
+
grid_base,
|
|
12
|
+
relative_base,
|
|
13
|
+
} from "./base.css";
|
|
14
|
+
|
|
15
|
+
export const glass = recipe({
|
|
16
|
+
base: [glass_base],
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
export const baseVarients = {
|
|
20
|
+
...direction,
|
|
21
|
+
...clock,
|
|
22
|
+
...aligns,
|
|
23
|
+
fullXY: {
|
|
24
|
+
width: "full",
|
|
25
|
+
height: "full",
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
export const gridVarient = {
|
|
30
|
+
...repeat,
|
|
31
|
+
...gridTemplateAll,
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
export const gridVarients = {
|
|
35
|
+
gridTemplateRows: gridVarient,
|
|
36
|
+
gridTemplateColumns: gridVarient,
|
|
37
|
+
gtr: gridVarient,
|
|
38
|
+
gtc: gridVarient,
|
|
39
|
+
gr: fraction,
|
|
40
|
+
gc: fraction,
|
|
41
|
+
};
|
|
42
|
+
|
|
43
|
+
export const gridBaseVarients = {
|
|
44
|
+
...baseVarients,
|
|
45
|
+
...gridVarients,
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
// relative
|
|
49
|
+
export const relative = recipe({
|
|
50
|
+
base: [relative_base],
|
|
51
|
+
variants: gridBaseVarients,
|
|
52
|
+
});
|
|
53
|
+
// absolute
|
|
54
|
+
export const absolute = recipe({
|
|
55
|
+
base: [absolute_base],
|
|
56
|
+
variants: {
|
|
57
|
+
...gridBaseVarients,
|
|
58
|
+
center: {
|
|
59
|
+
true: {
|
|
60
|
+
top: "50%",
|
|
61
|
+
left: "50%",
|
|
62
|
+
transform: "translate(-50%, -50%)",
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
// fixed 모음
|
|
68
|
+
export const fixed = recipe({
|
|
69
|
+
base: [fixed_base],
|
|
70
|
+
variants: baseVarients,
|
|
71
|
+
});
|
|
72
|
+
|
|
73
|
+
export const flex = recipe({
|
|
74
|
+
base: [flex_base],
|
|
75
|
+
variants: { ...baseVarients, ...gridVarients },
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
export const grid = recipe({
|
|
79
|
+
base: [grid_base],
|
|
80
|
+
variants: gridBaseVarients,
|
|
81
|
+
});
|
|
82
|
+
// flex_relative 합치기
|
|
83
|
+
export const flex_relative = recipe({
|
|
84
|
+
base: [flex_base, relative_base],
|
|
85
|
+
variants: gridBaseVarients,
|
|
86
|
+
});
|
|
87
|
+
// flex_absolute 합치기
|
|
88
|
+
export const flex_absolute = recipe({
|
|
89
|
+
base: [flex_base, absolute_base],
|
|
90
|
+
variants: {
|
|
91
|
+
...gridBaseVarients,
|
|
92
|
+
center: {
|
|
93
|
+
true: {
|
|
94
|
+
top: "50%",
|
|
95
|
+
left: "50%",
|
|
96
|
+
transform: "translate(-50%, -50%)",
|
|
97
|
+
},
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
});
|
|
101
|
+
// flex_fixed 합치기
|
|
102
|
+
export const flex_fixed = recipe({
|
|
103
|
+
base: [flex_base, fixed_base],
|
|
104
|
+
variants: gridBaseVarients,
|
|
105
|
+
});
|
|
106
|
+
// grid_relative 합치기
|
|
107
|
+
export const grid_relative = recipe({
|
|
108
|
+
base: [grid_base, relative_base],
|
|
109
|
+
variants: gridBaseVarients,
|
|
110
|
+
});
|
|
111
|
+
// grid_absolute 합치기
|
|
112
|
+
export const grid_absolute = recipe({
|
|
113
|
+
base: [grid_base, absolute_base],
|
|
114
|
+
variants: gridBaseVarients,
|
|
115
|
+
});
|
|
116
|
+
// grid_fixed 합치기
|
|
117
|
+
export const grid_fixed = recipe({
|
|
118
|
+
base: [grid_base, fixed_base],
|
|
119
|
+
variants: gridBaseVarients,
|
|
120
|
+
});
|
|
121
|
+
|
|
122
|
+
// 그라디언트 모음
|
|
123
|
+
export const gradient = recipe({
|
|
124
|
+
base: {
|
|
125
|
+
background:
|
|
126
|
+
"linear-gradient(45deg, #000000, #000000) padding-box,linear-gradient(45deg, #8e2de2, #4a00e0) border-box;",
|
|
127
|
+
},
|
|
128
|
+
variants: {
|
|
129
|
+
purple: {
|
|
130
|
+
background:
|
|
131
|
+
"linear-gradient(45deg, #000000, #000000) padding-box,linear-gradient(45deg, #8e2de2, #4a00e0) border-box;",
|
|
132
|
+
},
|
|
133
|
+
},
|
|
134
|
+
});
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { recipe } from "@vanilla-extract/recipes";
|
|
2
|
+
import { palette } from "../constants/palette.css";
|
|
3
|
+
|
|
4
|
+
export const input = recipe({
|
|
5
|
+
base: {
|
|
6
|
+
width: "100%",
|
|
7
|
+
"::-webkit-input-placeholder": {
|
|
8
|
+
color: palette.gray200,
|
|
9
|
+
},
|
|
10
|
+
},
|
|
11
|
+
variants: {
|
|
12
|
+
//glass
|
|
13
|
+
glass: {
|
|
14
|
+
true: {
|
|
15
|
+
backdropFilter: "blur(2rem)",
|
|
16
|
+
WebkitBackdropFilter: "blur(2rem)",
|
|
17
|
+
borderRadius: "1rem",
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
white: {
|
|
21
|
+
true: {
|
|
22
|
+
borderRadius: "1rem",
|
|
23
|
+
background: "rgba(255, 255, 255, 0.2)",
|
|
24
|
+
boxShadow: "0 0 10px rgba(255, 255, 255, 0.2)",
|
|
25
|
+
},
|
|
26
|
+
},
|
|
27
|
+
transparent: {
|
|
28
|
+
true: {
|
|
29
|
+
background: "transparent",
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
},
|
|
33
|
+
});
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { defineProperties } from "@vanilla-extract/sprinkles";
|
|
2
|
+
import { boxShadow, boxShadowHover } from "../constants/boxshadow.css";
|
|
3
|
+
import {
|
|
4
|
+
gradient,
|
|
5
|
+
palette,
|
|
6
|
+
rgba,
|
|
7
|
+
theme,
|
|
8
|
+
themeShadow,
|
|
9
|
+
themeShadowHover,
|
|
10
|
+
} from "../constants/palette.css";
|
|
11
|
+
|
|
12
|
+
const paletteTheme = { ...palette, ...theme, ...rgba };
|
|
13
|
+
const paletteThemeGradient = { ...palette, ...theme, ...gradient, ...rgba };
|
|
14
|
+
const boxShadows = {
|
|
15
|
+
...boxShadow,
|
|
16
|
+
...boxShadowHover,
|
|
17
|
+
...themeShadow,
|
|
18
|
+
...themeShadowHover,
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export const colorProperties = defineProperties({
|
|
22
|
+
conditions: {
|
|
23
|
+
default: {},
|
|
24
|
+
hover: { selector: "&:hover" },
|
|
25
|
+
active: { selector: "&:active" },
|
|
26
|
+
focus: { selector: "&:focus" },
|
|
27
|
+
},
|
|
28
|
+
defaultCondition: "default",
|
|
29
|
+
properties: {
|
|
30
|
+
color: paletteTheme,
|
|
31
|
+
backgroundColor: paletteThemeGradient,
|
|
32
|
+
background: paletteThemeGradient,
|
|
33
|
+
boxShadow: boxShadows,
|
|
34
|
+
tranCursor: {
|
|
35
|
+
true: {
|
|
36
|
+
transition: "all 0.3s ease-in",
|
|
37
|
+
cursor: "pointer",
|
|
38
|
+
},
|
|
39
|
+
},
|
|
40
|
+
opacity: [
|
|
41
|
+
"0",
|
|
42
|
+
"0.1",
|
|
43
|
+
"0.2",
|
|
44
|
+
"0.3",
|
|
45
|
+
"0.4",
|
|
46
|
+
"0.5",
|
|
47
|
+
"0.6",
|
|
48
|
+
"0.7",
|
|
49
|
+
"0.8",
|
|
50
|
+
"0.9",
|
|
51
|
+
"1",
|
|
52
|
+
],
|
|
53
|
+
},
|
|
54
|
+
shorthands: {
|
|
55
|
+
bg: ["background"],
|
|
56
|
+
bgc: ["backgroundColor"],
|
|
57
|
+
c: ["color"],
|
|
58
|
+
bs: ["boxShadow"],
|
|
59
|
+
tc: ["tranCursor"],
|
|
60
|
+
op: ["opacity"],
|
|
61
|
+
},
|
|
62
|
+
});
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { defineProperties } from "@vanilla-extract/sprinkles";
|
|
2
|
+
import { persent, size } from "../constants/constant.css";
|
|
3
|
+
|
|
4
|
+
const properties = { ...persent, ...size };
|
|
5
|
+
|
|
6
|
+
export const directionProperties = defineProperties({
|
|
7
|
+
conditions: {
|
|
8
|
+
mobile: {},
|
|
9
|
+
tablet: { "@media": "(min-width: 768px)" },
|
|
10
|
+
laptop: { "@media": "(min-width: 1024px)" },
|
|
11
|
+
desktop: { "@media": "(min-width: 1440px)" },
|
|
12
|
+
},
|
|
13
|
+
defaultCondition: "mobile",
|
|
14
|
+
properties: {
|
|
15
|
+
top: properties,
|
|
16
|
+
left: properties,
|
|
17
|
+
right: properties,
|
|
18
|
+
bottom: properties,
|
|
19
|
+
},
|
|
20
|
+
shorthands: {
|
|
21
|
+
t: ["top"],
|
|
22
|
+
l: ["left"],
|
|
23
|
+
r: ["right"],
|
|
24
|
+
b: ["bottom"],
|
|
25
|
+
},
|
|
26
|
+
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { defineProperties } from "@vanilla-extract/sprinkles";
|
|
2
|
+
|
|
3
|
+
export const displayProperties = defineProperties({
|
|
4
|
+
conditions: {
|
|
5
|
+
mobile: {},
|
|
6
|
+
tablet: { "@media": "(min-width: 768px)" },
|
|
7
|
+
laptop: { "@media": "(min-width: 1024px)" },
|
|
8
|
+
desktop: { "@media": "(min-width: 1440px)" },
|
|
9
|
+
},
|
|
10
|
+
defaultCondition: "mobile",
|
|
11
|
+
properties: {
|
|
12
|
+
display: ["none", "flex", "block", "inline", "grid"],
|
|
13
|
+
flexDirection: ["row", "column"],
|
|
14
|
+
justifyContent: [
|
|
15
|
+
"stretch",
|
|
16
|
+
"flex-start",
|
|
17
|
+
"center",
|
|
18
|
+
"flex-end",
|
|
19
|
+
"space-around",
|
|
20
|
+
"space-between",
|
|
21
|
+
],
|
|
22
|
+
alignItems: ["stretch", "flex-start", "center", "flex-end"],
|
|
23
|
+
textAlign: ["left", "center", "right"],
|
|
24
|
+
},
|
|
25
|
+
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { defineProperties } from "@vanilla-extract/sprinkles";
|
|
2
|
+
import { persent, size } from "../constants/constant.css";
|
|
3
|
+
|
|
4
|
+
const persentSizeRem = {
|
|
5
|
+
...persent,
|
|
6
|
+
...size,
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
export const fontSizeProperties = defineProperties({
|
|
10
|
+
conditions: {
|
|
11
|
+
mobile: {},
|
|
12
|
+
tablet: { "@media": "(min-width: 768px)" },
|
|
13
|
+
laptop: { "@media": "(min-width: 1024px)" },
|
|
14
|
+
desktop: { "@media": "(min-width: 1440px)" },
|
|
15
|
+
},
|
|
16
|
+
defaultCondition: "mobile",
|
|
17
|
+
properties: {
|
|
18
|
+
fontSize: persentSizeRem,
|
|
19
|
+
lineHeight: persentSizeRem,
|
|
20
|
+
},
|
|
21
|
+
shorthands: {
|
|
22
|
+
fs: ["fontSize"],
|
|
23
|
+
lh: ["lineHeight"],
|
|
24
|
+
},
|
|
25
|
+
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { defineProperties } from "@vanilla-extract/sprinkles";
|
|
2
|
+
import { fraction } from "../constants/constant.css";
|
|
3
|
+
import { gridTemplateColumns, gridTemplateRows } from "../constants/grid.css";
|
|
4
|
+
|
|
5
|
+
export const gridProperties = defineProperties({
|
|
6
|
+
conditions: {
|
|
7
|
+
mobile: {},
|
|
8
|
+
tablet: { "@media": "(min-width: 768px)" },
|
|
9
|
+
laptop: { "@media": "(min-width: 1024px)" },
|
|
10
|
+
desktop: { "@media": "(min-width: 1440px)" },
|
|
11
|
+
},
|
|
12
|
+
defaultCondition: "mobile",
|
|
13
|
+
properties: {
|
|
14
|
+
gridTemplateColumns: gridTemplateColumns,
|
|
15
|
+
gridTemplateRows: gridTemplateRows,
|
|
16
|
+
gridColumn: fraction,
|
|
17
|
+
gridRow: fraction,
|
|
18
|
+
},
|
|
19
|
+
shorthands: {
|
|
20
|
+
gtc: ["gridTemplateColumns"],
|
|
21
|
+
gtr: ["gridTemplateRows"],
|
|
22
|
+
gc: ["gridColumn"],
|
|
23
|
+
gr: ["gridRow"],
|
|
24
|
+
},
|
|
25
|
+
});
|