ilyass-tv-kit 1.0.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/README.md +80 -0
- package/dist/animations/index.d.mts +60 -0
- package/dist/animations/index.d.ts +60 -0
- package/dist/animations/index.js +190 -0
- package/dist/animations/index.mjs +74 -0
- package/dist/chunk-656U4BHL.mjs +130 -0
- package/dist/chunk-GLAVLQFS.mjs +10 -0
- package/dist/chunk-ZSOYM7E5.mjs +78 -0
- package/dist/index.d.mts +5 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +277 -0
- package/dist/index.mjs +84 -0
- package/dist/tokens/index.d.mts +75 -0
- package/dist/tokens/index.d.ts +75 -0
- package/dist/tokens/index.js +105 -0
- package/dist/tokens/index.mjs +8 -0
- package/dist/utils/index.d.mts +5 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.js +36 -0
- package/dist/utils/index.mjs +6 -0
- package/package.json +75 -0
package/README.md
ADDED
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# ILYASS TV Kit
|
|
2
|
+
|
|
3
|
+
Premium UI/Animation kit for ILYASS TV projects. Shared components, animations, design tokens, and utilities.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install ilyass-tv-kit framer-motion
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Usage
|
|
12
|
+
|
|
13
|
+
### Animation Variants
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { fadeIn, fadeInUp, staggerContainer, scaleIn } from "ilyass-tv-kit"
|
|
17
|
+
import { motion } from "framer-motion"
|
|
18
|
+
|
|
19
|
+
<motion.div variants={fadeIn} initial="hidden" whileInView="visible">
|
|
20
|
+
Animated content
|
|
21
|
+
</motion.div>
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### Pre-typed Motion Components
|
|
25
|
+
|
|
26
|
+
```tsx
|
|
27
|
+
import { MotionDiv, MotionSection } from "ilyass-tv-kit"
|
|
28
|
+
|
|
29
|
+
<MotionDiv variants={fadeInUp} initial="hidden" whileInView="visible">
|
|
30
|
+
Typed motion.div
|
|
31
|
+
</MotionDiv>
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### cn Utility
|
|
35
|
+
|
|
36
|
+
```tsx
|
|
37
|
+
import { cn } from "ilyass-tv-kit"
|
|
38
|
+
|
|
39
|
+
cn("px-4 py-2", isActive && "bg-blue-500")
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
### Design Tokens
|
|
43
|
+
|
|
44
|
+
```tsx
|
|
45
|
+
import { darkTheme, lightTheme } from "ilyass-tv-kit"
|
|
46
|
+
|
|
47
|
+
// Apply theme to :root
|
|
48
|
+
Object.entries(darkTheme).forEach(([key, value]) => {
|
|
49
|
+
document.documentElement.style.setProperty(key, value)
|
|
50
|
+
})
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
## Package Contents
|
|
54
|
+
|
|
55
|
+
| Path | Exports |
|
|
56
|
+
|------|---------|
|
|
57
|
+
| `ilyass-tv-kit` | All |
|
|
58
|
+
| `ilyass-tv-kit/animations` | Variants + Motion components |
|
|
59
|
+
| `ilyass-tv-kit/utils` | cn utility |
|
|
60
|
+
| `ilyass-tv-kit/tokens` | Dark/Light theme tokens |
|
|
61
|
+
|
|
62
|
+
## Variants
|
|
63
|
+
|
|
64
|
+
| Variant | Effect | Duration |
|
|
65
|
+
|---------|--------|----------|
|
|
66
|
+
| `fadeIn` | Opacity + y:20 | 0.6s |
|
|
67
|
+
| `fadeInUp` | Opacity + y:40 | 0.7s |
|
|
68
|
+
| `fadeInLeft` | Opacity + x:-30 | 0.6s |
|
|
69
|
+
| `fadeInRight` | Opacity + x:30 | 0.6s |
|
|
70
|
+
| `scaleIn` | Opacity + scale:0.92 | 0.5s |
|
|
71
|
+
| `slideUp` | Opacity + y:100% | 0.8s |
|
|
72
|
+
| `staggerContainer` | staggerChildren: 0.08s | - |
|
|
73
|
+
| `listStagger` | staggerChildren: 0.04s | - |
|
|
74
|
+
| `listItem` | Opacity + x:-10 | 0.3s |
|
|
75
|
+
|
|
76
|
+
All use the custom easing `[0.16, 1, 0.3, 1]`.
|
|
77
|
+
|
|
78
|
+
## License
|
|
79
|
+
|
|
80
|
+
MIT
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import * as framer_motion from 'framer-motion';
|
|
2
|
+
import { Variants } from 'framer-motion';
|
|
3
|
+
|
|
4
|
+
declare const ease: readonly [0.16, 1, 0.3, 1];
|
|
5
|
+
declare const fadeIn: Variants;
|
|
6
|
+
declare const fadeInUp: Variants;
|
|
7
|
+
declare const fadeInLeft: Variants;
|
|
8
|
+
declare const fadeInRight: Variants;
|
|
9
|
+
declare const scaleIn: Variants;
|
|
10
|
+
declare const staggerContainer: Variants;
|
|
11
|
+
declare const slideUp: Variants;
|
|
12
|
+
declare const float: Variants;
|
|
13
|
+
declare const cardHover: {
|
|
14
|
+
rest: {
|
|
15
|
+
scale: number;
|
|
16
|
+
boxShadow: string;
|
|
17
|
+
transition: {
|
|
18
|
+
duration: number;
|
|
19
|
+
ease: readonly [0.16, 1, 0.3, 1];
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
hover: {
|
|
23
|
+
scale: number;
|
|
24
|
+
boxShadow: string;
|
|
25
|
+
transition: {
|
|
26
|
+
duration: number;
|
|
27
|
+
ease: readonly [0.16, 1, 0.3, 1];
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
declare const pageTransition: Variants;
|
|
32
|
+
declare const sidebarVariants: Variants;
|
|
33
|
+
declare const mobileMenu: Variants;
|
|
34
|
+
declare const dropdown: Variants;
|
|
35
|
+
declare const shimmer: Variants;
|
|
36
|
+
declare const buttonTap: {
|
|
37
|
+
scale: number;
|
|
38
|
+
};
|
|
39
|
+
declare const listStagger: Variants;
|
|
40
|
+
declare const listItem: Variants;
|
|
41
|
+
|
|
42
|
+
declare const MotionDiv: framer_motion.ForwardRefComponent<HTMLDivElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
43
|
+
declare const MotionSpan: framer_motion.ForwardRefComponent<HTMLSpanElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
44
|
+
declare const MotionSection: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
45
|
+
declare const MotionNav: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
46
|
+
declare const MotionLi: framer_motion.ForwardRefComponent<HTMLLIElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
47
|
+
declare const MotionButton: framer_motion.ForwardRefComponent<HTMLButtonElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
48
|
+
declare const MotionA: framer_motion.ForwardRefComponent<HTMLAnchorElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
49
|
+
declare const MotionImg: framer_motion.ForwardRefComponent<HTMLImageElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
50
|
+
declare const MotionP: framer_motion.ForwardRefComponent<HTMLParagraphElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
51
|
+
declare const MotionH1: framer_motion.ForwardRefComponent<HTMLHeadingElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
52
|
+
declare const MotionH2: framer_motion.ForwardRefComponent<HTMLHeadingElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
53
|
+
declare const MotionH3: framer_motion.ForwardRefComponent<HTMLHeadingElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
54
|
+
declare const MotionUl: framer_motion.ForwardRefComponent<HTMLUListElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
55
|
+
declare const MotionHeader: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
56
|
+
declare const MotionFooter: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
57
|
+
declare const MotionMain: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
58
|
+
declare const MotionAside: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
59
|
+
|
|
60
|
+
export { MotionA, MotionAside, MotionButton, MotionDiv, MotionFooter, MotionH1, MotionH2, MotionH3, MotionHeader, MotionImg, MotionLi, MotionMain, MotionNav, MotionP, MotionSection, MotionSpan, MotionUl, buttonTap, cardHover, dropdown, ease, fadeIn, fadeInLeft, fadeInRight, fadeInUp, float, listItem, listStagger, mobileMenu, pageTransition, scaleIn, shimmer, sidebarVariants, slideUp, staggerContainer };
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import * as framer_motion from 'framer-motion';
|
|
2
|
+
import { Variants } from 'framer-motion';
|
|
3
|
+
|
|
4
|
+
declare const ease: readonly [0.16, 1, 0.3, 1];
|
|
5
|
+
declare const fadeIn: Variants;
|
|
6
|
+
declare const fadeInUp: Variants;
|
|
7
|
+
declare const fadeInLeft: Variants;
|
|
8
|
+
declare const fadeInRight: Variants;
|
|
9
|
+
declare const scaleIn: Variants;
|
|
10
|
+
declare const staggerContainer: Variants;
|
|
11
|
+
declare const slideUp: Variants;
|
|
12
|
+
declare const float: Variants;
|
|
13
|
+
declare const cardHover: {
|
|
14
|
+
rest: {
|
|
15
|
+
scale: number;
|
|
16
|
+
boxShadow: string;
|
|
17
|
+
transition: {
|
|
18
|
+
duration: number;
|
|
19
|
+
ease: readonly [0.16, 1, 0.3, 1];
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
hover: {
|
|
23
|
+
scale: number;
|
|
24
|
+
boxShadow: string;
|
|
25
|
+
transition: {
|
|
26
|
+
duration: number;
|
|
27
|
+
ease: readonly [0.16, 1, 0.3, 1];
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
declare const pageTransition: Variants;
|
|
32
|
+
declare const sidebarVariants: Variants;
|
|
33
|
+
declare const mobileMenu: Variants;
|
|
34
|
+
declare const dropdown: Variants;
|
|
35
|
+
declare const shimmer: Variants;
|
|
36
|
+
declare const buttonTap: {
|
|
37
|
+
scale: number;
|
|
38
|
+
};
|
|
39
|
+
declare const listStagger: Variants;
|
|
40
|
+
declare const listItem: Variants;
|
|
41
|
+
|
|
42
|
+
declare const MotionDiv: framer_motion.ForwardRefComponent<HTMLDivElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
43
|
+
declare const MotionSpan: framer_motion.ForwardRefComponent<HTMLSpanElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
44
|
+
declare const MotionSection: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
45
|
+
declare const MotionNav: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
46
|
+
declare const MotionLi: framer_motion.ForwardRefComponent<HTMLLIElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
47
|
+
declare const MotionButton: framer_motion.ForwardRefComponent<HTMLButtonElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
48
|
+
declare const MotionA: framer_motion.ForwardRefComponent<HTMLAnchorElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
49
|
+
declare const MotionImg: framer_motion.ForwardRefComponent<HTMLImageElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
50
|
+
declare const MotionP: framer_motion.ForwardRefComponent<HTMLParagraphElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
51
|
+
declare const MotionH1: framer_motion.ForwardRefComponent<HTMLHeadingElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
52
|
+
declare const MotionH2: framer_motion.ForwardRefComponent<HTMLHeadingElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
53
|
+
declare const MotionH3: framer_motion.ForwardRefComponent<HTMLHeadingElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
54
|
+
declare const MotionUl: framer_motion.ForwardRefComponent<HTMLUListElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
55
|
+
declare const MotionHeader: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
56
|
+
declare const MotionFooter: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
57
|
+
declare const MotionMain: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
58
|
+
declare const MotionAside: framer_motion.ForwardRefComponent<HTMLElement, framer_motion.HTMLMotionProps<Tag>>;
|
|
59
|
+
|
|
60
|
+
export { MotionA, MotionAside, MotionButton, MotionDiv, MotionFooter, MotionH1, MotionH2, MotionH3, MotionHeader, MotionImg, MotionLi, MotionMain, MotionNav, MotionP, MotionSection, MotionSpan, MotionUl, buttonTap, cardHover, dropdown, ease, fadeIn, fadeInLeft, fadeInRight, fadeInUp, float, listItem, listStagger, mobileMenu, pageTransition, scaleIn, shimmer, sidebarVariants, slideUp, staggerContainer };
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
|
|
20
|
+
// src/animations/index.ts
|
|
21
|
+
var animations_exports = {};
|
|
22
|
+
__export(animations_exports, {
|
|
23
|
+
MotionA: () => MotionA,
|
|
24
|
+
MotionAside: () => MotionAside,
|
|
25
|
+
MotionButton: () => MotionButton,
|
|
26
|
+
MotionDiv: () => MotionDiv,
|
|
27
|
+
MotionFooter: () => MotionFooter,
|
|
28
|
+
MotionH1: () => MotionH1,
|
|
29
|
+
MotionH2: () => MotionH2,
|
|
30
|
+
MotionH3: () => MotionH3,
|
|
31
|
+
MotionHeader: () => MotionHeader,
|
|
32
|
+
MotionImg: () => MotionImg,
|
|
33
|
+
MotionLi: () => MotionLi,
|
|
34
|
+
MotionMain: () => MotionMain,
|
|
35
|
+
MotionNav: () => MotionNav,
|
|
36
|
+
MotionP: () => MotionP,
|
|
37
|
+
MotionSection: () => MotionSection,
|
|
38
|
+
MotionSpan: () => MotionSpan,
|
|
39
|
+
MotionUl: () => MotionUl,
|
|
40
|
+
buttonTap: () => buttonTap,
|
|
41
|
+
cardHover: () => cardHover,
|
|
42
|
+
dropdown: () => dropdown,
|
|
43
|
+
ease: () => ease,
|
|
44
|
+
fadeIn: () => fadeIn,
|
|
45
|
+
fadeInLeft: () => fadeInLeft,
|
|
46
|
+
fadeInRight: () => fadeInRight,
|
|
47
|
+
fadeInUp: () => fadeInUp,
|
|
48
|
+
float: () => float,
|
|
49
|
+
listItem: () => listItem,
|
|
50
|
+
listStagger: () => listStagger,
|
|
51
|
+
mobileMenu: () => mobileMenu,
|
|
52
|
+
pageTransition: () => pageTransition,
|
|
53
|
+
scaleIn: () => scaleIn,
|
|
54
|
+
shimmer: () => shimmer,
|
|
55
|
+
sidebarVariants: () => sidebarVariants,
|
|
56
|
+
slideUp: () => slideUp,
|
|
57
|
+
staggerContainer: () => staggerContainer
|
|
58
|
+
});
|
|
59
|
+
module.exports = __toCommonJS(animations_exports);
|
|
60
|
+
|
|
61
|
+
// src/animations/variants.ts
|
|
62
|
+
var ease = [0.16, 1, 0.3, 1];
|
|
63
|
+
var fadeIn = {
|
|
64
|
+
hidden: { opacity: 0, y: 20 },
|
|
65
|
+
visible: { opacity: 1, y: 0, transition: { duration: 0.6, ease } }
|
|
66
|
+
};
|
|
67
|
+
var fadeInUp = {
|
|
68
|
+
hidden: { opacity: 0, y: 40 },
|
|
69
|
+
visible: { opacity: 1, y: 0, transition: { duration: 0.7, ease } }
|
|
70
|
+
};
|
|
71
|
+
var fadeInLeft = {
|
|
72
|
+
hidden: { opacity: 0, x: -30 },
|
|
73
|
+
visible: { opacity: 1, x: 0, transition: { duration: 0.6, ease } }
|
|
74
|
+
};
|
|
75
|
+
var fadeInRight = {
|
|
76
|
+
hidden: { opacity: 0, x: 30 },
|
|
77
|
+
visible: { opacity: 1, x: 0, transition: { duration: 0.6, ease } }
|
|
78
|
+
};
|
|
79
|
+
var scaleIn = {
|
|
80
|
+
hidden: { opacity: 0, scale: 0.92 },
|
|
81
|
+
visible: { opacity: 1, scale: 1, transition: { duration: 0.5, ease } }
|
|
82
|
+
};
|
|
83
|
+
var staggerContainer = {
|
|
84
|
+
hidden: {},
|
|
85
|
+
visible: {
|
|
86
|
+
transition: { staggerChildren: 0.08, delayChildren: 0.1 }
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
var slideUp = {
|
|
90
|
+
hidden: { opacity: 0, y: "100%" },
|
|
91
|
+
visible: { opacity: 1, y: 0, transition: { duration: 0.8, ease } }
|
|
92
|
+
};
|
|
93
|
+
var float = {
|
|
94
|
+
animate: {
|
|
95
|
+
y: [0, -10, 0],
|
|
96
|
+
transition: { duration: 4, repeat: Infinity, ease: "easeInOut" }
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
var cardHover = {
|
|
100
|
+
rest: { scale: 1, boxShadow: "var(--shadow-card)", transition: { duration: 0.3, ease } },
|
|
101
|
+
hover: { scale: 1.02, boxShadow: "var(--shadow-card-hover)", transition: { duration: 0.3, ease } }
|
|
102
|
+
};
|
|
103
|
+
var pageTransition = {
|
|
104
|
+
initial: { opacity: 0, y: 12 },
|
|
105
|
+
enter: { opacity: 1, y: 0, transition: { duration: 0.4, ease } },
|
|
106
|
+
exit: { opacity: 0, y: -12, transition: { duration: 0.2, ease } }
|
|
107
|
+
};
|
|
108
|
+
var sidebarVariants = {
|
|
109
|
+
open: { width: 260, transition: { duration: 0.3, ease } },
|
|
110
|
+
closed: { width: 72, transition: { duration: 0.3, ease } }
|
|
111
|
+
};
|
|
112
|
+
var mobileMenu = {
|
|
113
|
+
closed: { x: "-100%", transition: { duration: 0.3, ease } },
|
|
114
|
+
open: { x: 0, transition: { duration: 0.3, ease } }
|
|
115
|
+
};
|
|
116
|
+
var dropdown = {
|
|
117
|
+
closed: { opacity: 0, y: -8, scale: 0.96, pointerEvents: "none" },
|
|
118
|
+
open: { opacity: 1, y: 0, scale: 1, pointerEvents: "auto", transition: { duration: 0.2, ease } }
|
|
119
|
+
};
|
|
120
|
+
var shimmer = {
|
|
121
|
+
hidden: { backgroundPosition: "-200% 0" },
|
|
122
|
+
visible: { backgroundPosition: "200% 0", transition: { duration: 2, repeat: Infinity, ease: "linear" } }
|
|
123
|
+
};
|
|
124
|
+
var buttonTap = { scale: 0.97 };
|
|
125
|
+
var listStagger = {
|
|
126
|
+
hidden: {},
|
|
127
|
+
visible: { transition: { staggerChildren: 0.04, delayChildren: 0.05 } }
|
|
128
|
+
};
|
|
129
|
+
var listItem = {
|
|
130
|
+
hidden: { opacity: 0, x: -10 },
|
|
131
|
+
visible: { opacity: 1, x: 0, transition: { duration: 0.3, ease } }
|
|
132
|
+
};
|
|
133
|
+
|
|
134
|
+
// src/animations/motion.ts
|
|
135
|
+
var import_framer_motion = require("framer-motion");
|
|
136
|
+
var MotionDiv = import_framer_motion.motion.div;
|
|
137
|
+
var MotionSpan = import_framer_motion.motion.span;
|
|
138
|
+
var MotionSection = import_framer_motion.motion.section;
|
|
139
|
+
var MotionNav = import_framer_motion.motion.nav;
|
|
140
|
+
var MotionLi = import_framer_motion.motion.li;
|
|
141
|
+
var MotionButton = import_framer_motion.motion.button;
|
|
142
|
+
var MotionA = import_framer_motion.motion.a;
|
|
143
|
+
var MotionImg = import_framer_motion.motion.img;
|
|
144
|
+
var MotionP = import_framer_motion.motion.p;
|
|
145
|
+
var MotionH1 = import_framer_motion.motion.h1;
|
|
146
|
+
var MotionH2 = import_framer_motion.motion.h2;
|
|
147
|
+
var MotionH3 = import_framer_motion.motion.h3;
|
|
148
|
+
var MotionUl = import_framer_motion.motion.ul;
|
|
149
|
+
var MotionHeader = import_framer_motion.motion.header;
|
|
150
|
+
var MotionFooter = import_framer_motion.motion.footer;
|
|
151
|
+
var MotionMain = import_framer_motion.motion.main;
|
|
152
|
+
var MotionAside = import_framer_motion.motion.aside;
|
|
153
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
154
|
+
0 && (module.exports = {
|
|
155
|
+
MotionA,
|
|
156
|
+
MotionAside,
|
|
157
|
+
MotionButton,
|
|
158
|
+
MotionDiv,
|
|
159
|
+
MotionFooter,
|
|
160
|
+
MotionH1,
|
|
161
|
+
MotionH2,
|
|
162
|
+
MotionH3,
|
|
163
|
+
MotionHeader,
|
|
164
|
+
MotionImg,
|
|
165
|
+
MotionLi,
|
|
166
|
+
MotionMain,
|
|
167
|
+
MotionNav,
|
|
168
|
+
MotionP,
|
|
169
|
+
MotionSection,
|
|
170
|
+
MotionSpan,
|
|
171
|
+
MotionUl,
|
|
172
|
+
buttonTap,
|
|
173
|
+
cardHover,
|
|
174
|
+
dropdown,
|
|
175
|
+
ease,
|
|
176
|
+
fadeIn,
|
|
177
|
+
fadeInLeft,
|
|
178
|
+
fadeInRight,
|
|
179
|
+
fadeInUp,
|
|
180
|
+
float,
|
|
181
|
+
listItem,
|
|
182
|
+
listStagger,
|
|
183
|
+
mobileMenu,
|
|
184
|
+
pageTransition,
|
|
185
|
+
scaleIn,
|
|
186
|
+
shimmer,
|
|
187
|
+
sidebarVariants,
|
|
188
|
+
slideUp,
|
|
189
|
+
staggerContainer
|
|
190
|
+
});
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import {
|
|
2
|
+
MotionA,
|
|
3
|
+
MotionAside,
|
|
4
|
+
MotionButton,
|
|
5
|
+
MotionDiv,
|
|
6
|
+
MotionFooter,
|
|
7
|
+
MotionH1,
|
|
8
|
+
MotionH2,
|
|
9
|
+
MotionH3,
|
|
10
|
+
MotionHeader,
|
|
11
|
+
MotionImg,
|
|
12
|
+
MotionLi,
|
|
13
|
+
MotionMain,
|
|
14
|
+
MotionNav,
|
|
15
|
+
MotionP,
|
|
16
|
+
MotionSection,
|
|
17
|
+
MotionSpan,
|
|
18
|
+
MotionUl,
|
|
19
|
+
buttonTap,
|
|
20
|
+
cardHover,
|
|
21
|
+
dropdown,
|
|
22
|
+
ease,
|
|
23
|
+
fadeIn,
|
|
24
|
+
fadeInLeft,
|
|
25
|
+
fadeInRight,
|
|
26
|
+
fadeInUp,
|
|
27
|
+
float,
|
|
28
|
+
listItem,
|
|
29
|
+
listStagger,
|
|
30
|
+
mobileMenu,
|
|
31
|
+
pageTransition,
|
|
32
|
+
scaleIn,
|
|
33
|
+
shimmer,
|
|
34
|
+
sidebarVariants,
|
|
35
|
+
slideUp,
|
|
36
|
+
staggerContainer
|
|
37
|
+
} from "../chunk-656U4BHL.mjs";
|
|
38
|
+
export {
|
|
39
|
+
MotionA,
|
|
40
|
+
MotionAside,
|
|
41
|
+
MotionButton,
|
|
42
|
+
MotionDiv,
|
|
43
|
+
MotionFooter,
|
|
44
|
+
MotionH1,
|
|
45
|
+
MotionH2,
|
|
46
|
+
MotionH3,
|
|
47
|
+
MotionHeader,
|
|
48
|
+
MotionImg,
|
|
49
|
+
MotionLi,
|
|
50
|
+
MotionMain,
|
|
51
|
+
MotionNav,
|
|
52
|
+
MotionP,
|
|
53
|
+
MotionSection,
|
|
54
|
+
MotionSpan,
|
|
55
|
+
MotionUl,
|
|
56
|
+
buttonTap,
|
|
57
|
+
cardHover,
|
|
58
|
+
dropdown,
|
|
59
|
+
ease,
|
|
60
|
+
fadeIn,
|
|
61
|
+
fadeInLeft,
|
|
62
|
+
fadeInRight,
|
|
63
|
+
fadeInUp,
|
|
64
|
+
float,
|
|
65
|
+
listItem,
|
|
66
|
+
listStagger,
|
|
67
|
+
mobileMenu,
|
|
68
|
+
pageTransition,
|
|
69
|
+
scaleIn,
|
|
70
|
+
shimmer,
|
|
71
|
+
sidebarVariants,
|
|
72
|
+
slideUp,
|
|
73
|
+
staggerContainer
|
|
74
|
+
};
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
// src/animations/variants.ts
|
|
2
|
+
var ease = [0.16, 1, 0.3, 1];
|
|
3
|
+
var fadeIn = {
|
|
4
|
+
hidden: { opacity: 0, y: 20 },
|
|
5
|
+
visible: { opacity: 1, y: 0, transition: { duration: 0.6, ease } }
|
|
6
|
+
};
|
|
7
|
+
var fadeInUp = {
|
|
8
|
+
hidden: { opacity: 0, y: 40 },
|
|
9
|
+
visible: { opacity: 1, y: 0, transition: { duration: 0.7, ease } }
|
|
10
|
+
};
|
|
11
|
+
var fadeInLeft = {
|
|
12
|
+
hidden: { opacity: 0, x: -30 },
|
|
13
|
+
visible: { opacity: 1, x: 0, transition: { duration: 0.6, ease } }
|
|
14
|
+
};
|
|
15
|
+
var fadeInRight = {
|
|
16
|
+
hidden: { opacity: 0, x: 30 },
|
|
17
|
+
visible: { opacity: 1, x: 0, transition: { duration: 0.6, ease } }
|
|
18
|
+
};
|
|
19
|
+
var scaleIn = {
|
|
20
|
+
hidden: { opacity: 0, scale: 0.92 },
|
|
21
|
+
visible: { opacity: 1, scale: 1, transition: { duration: 0.5, ease } }
|
|
22
|
+
};
|
|
23
|
+
var staggerContainer = {
|
|
24
|
+
hidden: {},
|
|
25
|
+
visible: {
|
|
26
|
+
transition: { staggerChildren: 0.08, delayChildren: 0.1 }
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
var slideUp = {
|
|
30
|
+
hidden: { opacity: 0, y: "100%" },
|
|
31
|
+
visible: { opacity: 1, y: 0, transition: { duration: 0.8, ease } }
|
|
32
|
+
};
|
|
33
|
+
var float = {
|
|
34
|
+
animate: {
|
|
35
|
+
y: [0, -10, 0],
|
|
36
|
+
transition: { duration: 4, repeat: Infinity, ease: "easeInOut" }
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
var cardHover = {
|
|
40
|
+
rest: { scale: 1, boxShadow: "var(--shadow-card)", transition: { duration: 0.3, ease } },
|
|
41
|
+
hover: { scale: 1.02, boxShadow: "var(--shadow-card-hover)", transition: { duration: 0.3, ease } }
|
|
42
|
+
};
|
|
43
|
+
var pageTransition = {
|
|
44
|
+
initial: { opacity: 0, y: 12 },
|
|
45
|
+
enter: { opacity: 1, y: 0, transition: { duration: 0.4, ease } },
|
|
46
|
+
exit: { opacity: 0, y: -12, transition: { duration: 0.2, ease } }
|
|
47
|
+
};
|
|
48
|
+
var sidebarVariants = {
|
|
49
|
+
open: { width: 260, transition: { duration: 0.3, ease } },
|
|
50
|
+
closed: { width: 72, transition: { duration: 0.3, ease } }
|
|
51
|
+
};
|
|
52
|
+
var mobileMenu = {
|
|
53
|
+
closed: { x: "-100%", transition: { duration: 0.3, ease } },
|
|
54
|
+
open: { x: 0, transition: { duration: 0.3, ease } }
|
|
55
|
+
};
|
|
56
|
+
var dropdown = {
|
|
57
|
+
closed: { opacity: 0, y: -8, scale: 0.96, pointerEvents: "none" },
|
|
58
|
+
open: { opacity: 1, y: 0, scale: 1, pointerEvents: "auto", transition: { duration: 0.2, ease } }
|
|
59
|
+
};
|
|
60
|
+
var shimmer = {
|
|
61
|
+
hidden: { backgroundPosition: "-200% 0" },
|
|
62
|
+
visible: { backgroundPosition: "200% 0", transition: { duration: 2, repeat: Infinity, ease: "linear" } }
|
|
63
|
+
};
|
|
64
|
+
var buttonTap = { scale: 0.97 };
|
|
65
|
+
var listStagger = {
|
|
66
|
+
hidden: {},
|
|
67
|
+
visible: { transition: { staggerChildren: 0.04, delayChildren: 0.05 } }
|
|
68
|
+
};
|
|
69
|
+
var listItem = {
|
|
70
|
+
hidden: { opacity: 0, x: -10 },
|
|
71
|
+
visible: { opacity: 1, x: 0, transition: { duration: 0.3, ease } }
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
// src/animations/motion.ts
|
|
75
|
+
import { motion } from "framer-motion";
|
|
76
|
+
var MotionDiv = motion.div;
|
|
77
|
+
var MotionSpan = motion.span;
|
|
78
|
+
var MotionSection = motion.section;
|
|
79
|
+
var MotionNav = motion.nav;
|
|
80
|
+
var MotionLi = motion.li;
|
|
81
|
+
var MotionButton = motion.button;
|
|
82
|
+
var MotionA = motion.a;
|
|
83
|
+
var MotionImg = motion.img;
|
|
84
|
+
var MotionP = motion.p;
|
|
85
|
+
var MotionH1 = motion.h1;
|
|
86
|
+
var MotionH2 = motion.h2;
|
|
87
|
+
var MotionH3 = motion.h3;
|
|
88
|
+
var MotionUl = motion.ul;
|
|
89
|
+
var MotionHeader = motion.header;
|
|
90
|
+
var MotionFooter = motion.footer;
|
|
91
|
+
var MotionMain = motion.main;
|
|
92
|
+
var MotionAside = motion.aside;
|
|
93
|
+
|
|
94
|
+
export {
|
|
95
|
+
ease,
|
|
96
|
+
fadeIn,
|
|
97
|
+
fadeInUp,
|
|
98
|
+
fadeInLeft,
|
|
99
|
+
fadeInRight,
|
|
100
|
+
scaleIn,
|
|
101
|
+
staggerContainer,
|
|
102
|
+
slideUp,
|
|
103
|
+
float,
|
|
104
|
+
cardHover,
|
|
105
|
+
pageTransition,
|
|
106
|
+
sidebarVariants,
|
|
107
|
+
mobileMenu,
|
|
108
|
+
dropdown,
|
|
109
|
+
shimmer,
|
|
110
|
+
buttonTap,
|
|
111
|
+
listStagger,
|
|
112
|
+
listItem,
|
|
113
|
+
MotionDiv,
|
|
114
|
+
MotionSpan,
|
|
115
|
+
MotionSection,
|
|
116
|
+
MotionNav,
|
|
117
|
+
MotionLi,
|
|
118
|
+
MotionButton,
|
|
119
|
+
MotionA,
|
|
120
|
+
MotionImg,
|
|
121
|
+
MotionP,
|
|
122
|
+
MotionH1,
|
|
123
|
+
MotionH2,
|
|
124
|
+
MotionH3,
|
|
125
|
+
MotionUl,
|
|
126
|
+
MotionHeader,
|
|
127
|
+
MotionFooter,
|
|
128
|
+
MotionMain,
|
|
129
|
+
MotionAside
|
|
130
|
+
};
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
// src/tokens/colors.ts
|
|
2
|
+
var darkTheme = {
|
|
3
|
+
"--bg-primary": "#06061a",
|
|
4
|
+
"--bg-secondary": "#080828",
|
|
5
|
+
"--bg-tertiary": "#0a0a30",
|
|
6
|
+
"--surface": "#0b0b2e",
|
|
7
|
+
"--surface-hover": "#10103d",
|
|
8
|
+
"--surface-elevated": "#121242",
|
|
9
|
+
"--border": "rgba(34, 211, 238, 0.08)",
|
|
10
|
+
"--border-light": "rgba(255, 255, 255, 0.03)",
|
|
11
|
+
"--border-accent": "rgba(34, 211, 238, 0.18)",
|
|
12
|
+
"--text-primary": "#f0f0fa",
|
|
13
|
+
"--text-secondary": "#9292c0",
|
|
14
|
+
"--text-muted": "#5a5a8a",
|
|
15
|
+
"--accent": "#22d3ee",
|
|
16
|
+
"--accent-light": "#67e8f9",
|
|
17
|
+
"--accent-dark": "#0891b2",
|
|
18
|
+
"--accent-gradient": "linear-gradient(135deg, #22d3ee, #6366f1)",
|
|
19
|
+
"--accent-subtle": "rgba(34, 211, 238, 0.08)",
|
|
20
|
+
"--accent-green": "#34d399",
|
|
21
|
+
"--accent-orange": "#fbbf24",
|
|
22
|
+
"--accent-pink": "#f472b6",
|
|
23
|
+
"--accent-cyan": "#22d3ee",
|
|
24
|
+
"--accent-purple": "#a78bfa",
|
|
25
|
+
"--success": "#34d399",
|
|
26
|
+
"--warning": "#fbbf24",
|
|
27
|
+
"--error": "#f87171",
|
|
28
|
+
"--gradient-blue": "linear-gradient(135deg, #1e3a5f, #2563eb)",
|
|
29
|
+
"--gradient-green": "linear-gradient(135deg, #065f46, #10b981)",
|
|
30
|
+
"--gradient-orange": "linear-gradient(135deg, #92400e, #f59e0b)",
|
|
31
|
+
"--gradient-pink": "linear-gradient(135deg, #831843, #ec4899)",
|
|
32
|
+
"--gradient-cyan": "linear-gradient(135deg, #164e63, #06b6d4)",
|
|
33
|
+
"--gradient-purple": "linear-gradient(135deg, #4c1d95, #8b5cf6)",
|
|
34
|
+
"--gradient-page-bg": "linear-gradient(180deg, #06061a 0%, #080828 40%, #0a0a2c 100%)",
|
|
35
|
+
"--glass-bg": "rgba(8, 8, 36, 0.82)",
|
|
36
|
+
"--glass-border": "rgba(34, 211, 238, 0.06)"
|
|
37
|
+
};
|
|
38
|
+
var lightTheme = {
|
|
39
|
+
"--bg-primary": "#ffffff",
|
|
40
|
+
"--bg-secondary": "#f8faff",
|
|
41
|
+
"--bg-tertiary": "#f0f5ff",
|
|
42
|
+
"--surface": "#ffffff",
|
|
43
|
+
"--surface-hover": "#f8faff",
|
|
44
|
+
"--surface-elevated": "#ffffff",
|
|
45
|
+
"--border": "rgba(37, 99, 235, 0.08)",
|
|
46
|
+
"--border-light": "rgba(0, 0, 0, 0.04)",
|
|
47
|
+
"--border-accent": "rgba(37, 99, 235, 0.18)",
|
|
48
|
+
"--text-primary": "#0a0a1a",
|
|
49
|
+
"--text-secondary": "#52527a",
|
|
50
|
+
"--text-muted": "#8a8aaa",
|
|
51
|
+
"--accent": "#2563eb",
|
|
52
|
+
"--accent-light": "#3b82f6",
|
|
53
|
+
"--accent-dark": "#1d4ed8",
|
|
54
|
+
"--accent-gradient": "linear-gradient(135deg, #2563eb, #3b82f6)",
|
|
55
|
+
"--accent-subtle": "rgba(37, 99, 235, 0.08)",
|
|
56
|
+
"--accent-green": "#10b981",
|
|
57
|
+
"--accent-orange": "#f59e0b",
|
|
58
|
+
"--accent-pink": "#ec4899",
|
|
59
|
+
"--accent-cyan": "#06b6d4",
|
|
60
|
+
"--accent-purple": "#8b5cf6",
|
|
61
|
+
"--success": "#10b981",
|
|
62
|
+
"--warning": "#f59e0b",
|
|
63
|
+
"--error": "#ef4444",
|
|
64
|
+
"--gradient-blue": "linear-gradient(135deg, #dbeafe, #3b82f6)",
|
|
65
|
+
"--gradient-green": "linear-gradient(135deg, #d1fae5, #10b981)",
|
|
66
|
+
"--gradient-orange": "linear-gradient(135deg, #fef3c7, #f59e0b)",
|
|
67
|
+
"--gradient-pink": "linear-gradient(135deg, #fce7f3, #ec4899)",
|
|
68
|
+
"--gradient-cyan": "linear-gradient(135deg, #cffafe, #06b6d4)",
|
|
69
|
+
"--gradient-purple": "linear-gradient(135deg, #ede9fe, #8b5cf6)",
|
|
70
|
+
"--gradient-page-bg": "linear-gradient(180deg, #ffffff 0%, #f8faff 40%, #f0f5ff 100%)",
|
|
71
|
+
"--glass-bg": "rgba(255, 255, 255, 0.72)",
|
|
72
|
+
"--glass-border": "rgba(255, 255, 255, 0.25)"
|
|
73
|
+
};
|
|
74
|
+
|
|
75
|
+
export {
|
|
76
|
+
darkTheme,
|
|
77
|
+
lightTheme
|
|
78
|
+
};
|
package/dist/index.d.mts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { MotionA, MotionAside, MotionButton, MotionDiv, MotionFooter, MotionH1, MotionH2, MotionH3, MotionHeader, MotionImg, MotionLi, MotionMain, MotionNav, MotionP, MotionSection, MotionSpan, MotionUl, buttonTap, cardHover, dropdown, ease, fadeIn, fadeInLeft, fadeInRight, fadeInUp, float, listItem, listStagger, mobileMenu, pageTransition, scaleIn, shimmer, sidebarVariants, slideUp, staggerContainer } from './animations/index.mjs';
|
|
2
|
+
export { cn } from './utils/index.mjs';
|
|
3
|
+
export { ThemeTokens, darkTheme, lightTheme } from './tokens/index.mjs';
|
|
4
|
+
import 'framer-motion';
|
|
5
|
+
import 'clsx';
|