@js-empire/emperor-ui 1.1.0 → 1.2.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.
Files changed (110) hide show
  1. package/.storybook/vitest.setup.ts +3 -3
  2. package/.vscode/extensions.json +1 -3
  3. package/README.md +0 -21
  4. package/dist/emperor-ui.js +71 -0
  5. package/dist/emperor-ui.umd.cjs +49 -0
  6. package/dist/features-animation-D_Ss-HYx.js +1938 -0
  7. package/dist/globals.css +1 -0
  8. package/dist/icons/emperor-ui-logo.ico +0 -0
  9. package/dist/images/avatar-female.jpg +0 -0
  10. package/dist/images/avatar-male.jpg +0 -0
  11. package/dist/images/emperor-ui-logo.png +0 -0
  12. package/dist/index-C3mfrNCk.js +1630 -0
  13. package/dist/index-CZpTSGZs.js +5 -0
  14. package/dist/index-SRvFgjzo.js +26257 -0
  15. package/dist/index.d.ts +706 -0
  16. package/dist/src-UW24ZMRV-Ducut0ty.js +5 -0
  17. package/eslint.config.js +5 -14
  18. package/package.json +4 -4
  19. package/src/components/atoms/brand/brand.stories.tsx +3 -3
  20. package/src/components/atoms/brand/brand.tsx +3 -3
  21. package/src/components/atoms/column/column.stories.tsx +5 -4
  22. package/src/components/atoms/column/column.tsx +2 -2
  23. package/src/components/atoms/container/column.stories.tsx +5 -4
  24. package/src/components/atoms/container/container.tsx +2 -2
  25. package/src/components/atoms/portal/portal.stories.tsx +4 -4
  26. package/src/components/atoms/portal/portal.tsx +4 -2
  27. package/src/components/atoms/row/row.stories.tsx +5 -4
  28. package/src/components/atoms/row/row.tsx +2 -2
  29. package/src/components/atoms/uploader/avatar-label.tsx +2 -2
  30. package/src/components/atoms/uploader/stories/uploader.stories.tsx +127 -8
  31. package/src/components/atoms/uploader/upload-file-error-box.tsx +1 -1
  32. package/src/components/atoms/uploader/upload-file-input.tsx +2 -2
  33. package/src/components/atoms/uploader/upload-file-label.tsx +1 -1
  34. package/src/components/atoms/uploader/upload-file-listing.tsx +6 -4
  35. package/src/components/atoms/uploader/uploader.tsx +4 -4
  36. package/src/components/atoms/uploader/view-image-modal.tsx +6 -5
  37. package/src/components/molecules/filter/filter.tsx +2 -2
  38. package/src/components/molecules/item-card/item-card.tsx +2 -2
  39. package/src/components/molecules/nav-bar/nav-bar-item.tsx +3 -3
  40. package/src/components/molecules/nav-bar/nav-bar.tsx +4 -4
  41. package/src/components/molecules/nav-bar/stories/hover-effect/nav-bar-hover-effect.stories.tsx +4 -4
  42. package/src/components/molecules/nav-bar/stories/nav-bar.stories.tsx +4 -4
  43. package/src/components/molecules/nav-bar/styles/styles.ts +2 -1
  44. package/src/components/molecules/nav-bar/sub-items-box.tsx +2 -2
  45. package/src/components/molecules/scaffold/scaffold.stories.tsx +3 -3
  46. package/src/components/molecules/scaffold/scaffold.tsx +4 -4
  47. package/src/components/molecules/side-bar/compact-side-bar.tsx +5 -3
  48. package/src/components/molecules/side-bar/side-bar-drawer.tsx +3 -3
  49. package/src/components/molecules/side-bar/side-bar.stories.tsx +9 -8
  50. package/src/components/molecules/side-bar/side-bar.tsx +2 -2
  51. package/src/components/molecules/side-bar/styles/styles.ts +1 -1
  52. package/src/components/organisms/footer/copy-rights-box.tsx +27 -0
  53. package/src/components/organisms/footer/footer.tsx +69 -14
  54. package/src/components/organisms/footer/index.ts +4 -0
  55. package/src/components/organisms/footer/policies-box.tsx +26 -0
  56. package/src/components/organisms/footer/quick-links-box.tsx +45 -0
  57. package/src/components/organisms/footer/social-links-box.tsx +32 -0
  58. package/src/components/organisms/footer/stories/footer.stories.tsx +61 -0
  59. package/src/components/organisms/footer/styles/classes.ts +58 -2
  60. package/src/components/organisms/footer/styles/styles.ts +2 -5
  61. package/src/components/organisms/header/header.tsx +5 -5
  62. package/src/components/organisms/header/segmented-header-content.tsx +3 -3
  63. package/src/components/organisms/header/stories/header.stories.tsx +8 -7
  64. package/src/components/organisms/header/styles/styles.ts +1 -1
  65. package/src/components/organisms/index.ts +1 -1
  66. package/src/components/organisms/item-details/item-details.tsx +2 -2
  67. package/src/components/organisms/listings/listings.tsx +2 -2
  68. package/src/components/templates/landing-page/landing-page.stories.tsx +3 -3
  69. package/src/components/templates/landing-page/landing-page.tsx +5 -5
  70. package/src/constants/defaults.ts +1 -1
  71. package/src/constants/fake.ts +3 -0
  72. package/src/constants/footer.tsx +157 -0
  73. package/src/constants/index.ts +1 -0
  74. package/src/context/emperor-ui-context.ts +1 -1
  75. package/src/context/navigation-context.ts +1 -1
  76. package/src/context/uploader-context.ts +1 -1
  77. package/src/hooks/use-emperor-ui.ts +1 -1
  78. package/src/hooks/use-navigation.ts +1 -1
  79. package/src/hooks/use-uploader-context.ts +1 -1
  80. package/src/hooks/use-uploader.tsx +42 -106
  81. package/src/main.tsx +1 -1
  82. package/src/mocks/header.tsx +1 -1
  83. package/src/providers/config-provider.tsx +4 -4
  84. package/src/providers/emperor-ui-provider.tsx +2 -2
  85. package/src/providers/navigation-provider.tsx +3 -3
  86. package/src/providers/uploader-provider.tsx +2 -2
  87. package/src/types/components/atoms/brand.ts +1 -1
  88. package/src/types/components/atoms/column.ts +1 -1
  89. package/src/types/components/atoms/container.ts +1 -1
  90. package/src/types/components/atoms/portal.ts +1 -1
  91. package/src/types/components/atoms/row.ts +1 -1
  92. package/src/types/components/atoms/uploader.ts +4 -11
  93. package/src/types/components/molecules/filter/filter.ts +1 -1
  94. package/src/types/components/molecules/footer/footer.ts +60 -1
  95. package/src/types/components/molecules/header/header.ts +1 -1
  96. package/src/types/components/molecules/item-card/item-card.ts +1 -1
  97. package/src/types/components/molecules/item-details/item-details.ts +1 -1
  98. package/src/types/components/molecules/listings/listings.ts +1 -1
  99. package/src/types/components/molecules/nav-bar/nav-bar.ts +2 -1
  100. package/src/types/components/molecules/scaffold/scaffold.ts +1 -1
  101. package/src/types/components/molecules/side-bar/side-bar.ts +1 -1
  102. package/src/types/components/templates/landing-page.ts +1 -1
  103. package/src/types/context/navigation.ts +1 -1
  104. package/src/utils/compress-images.ts +1 -1
  105. package/src/utils/index.ts +1 -0
  106. package/src/utils/storybook.tsx +3 -3
  107. package/src/utils/uploader.ts +148 -0
  108. package/tsconfig.app.json +1 -10
  109. package/vite.config.ts +1 -10
  110. package/vitest.shims.d.ts +1 -1
@@ -1,4 +1,4 @@
1
- import { useEmperorUI } from "@hooks";
1
+ import { useEmperorUI } from "@/hooks";
2
2
  import { useState } from "react";
3
3
  import {
4
4
  Button,
@@ -10,8 +10,8 @@ import {
10
10
  Divider,
11
11
  DrawerFooter,
12
12
  } from "@heroui/react";
13
- import { SideBarProps } from "@types";
14
- import { cn } from "@utils";
13
+ import { SideBarProps } from "@/types";
14
+ import { cn } from "@/utils";
15
15
  import { sideBarItemClasses, sideBarItemStyles } from "./styles";
16
16
 
17
17
  export const SideBarDrawer = ({
@@ -1,9 +1,10 @@
1
- import type { Meta, StoryObj } from "@storybook/react";
2
- import { Brand, SideBar } from "@components";
3
- import { getStorybookDecorators } from "@utils";
1
+ import type { Meta, StoryObj } from "@storybook/react-vite";
2
+ import { Brand, SideBar } from "@/components";
3
+ import { getStorybookDecorators } from "@/utils";
4
4
  import { MenuIcon } from "lucide-react";
5
5
  import { useDisclosure } from "@heroui/react";
6
- import { MOCK_HEADER_ACTIONS, MOCK_HEADER_ITEMS } from "@mocks";
6
+ import { MOCK_HEADER_ACTIONS, MOCK_HEADER_ITEMS } from "@/mocks";
7
+ import { SideBarProps } from "@/types";
7
8
 
8
9
  const meta: Meta<typeof SideBar> = {
9
10
  title: "Molecules/SideBar",
@@ -33,7 +34,7 @@ export const Default: Story = {
33
34
  startContent: <MenuIcon className="size-4" />,
34
35
  },
35
36
  },
36
- render: (args) => {
37
+ render: (args: SideBarProps) => {
37
38
  const { isOpen, onOpenChange } = useDisclosure();
38
39
 
39
40
  return <SideBar {...args} isOpen={isOpen} onOpenChange={onOpenChange} />;
@@ -48,7 +49,7 @@ export const WithItems: Story = {
48
49
  startContent: <MenuIcon className="size-4" />,
49
50
  },
50
51
  },
51
- render: (args) => {
52
+ render: (args: SideBarProps) => {
52
53
  const { isOpen, onOpenChange } = useDisclosure();
53
54
 
54
55
  return (
@@ -70,7 +71,7 @@ export const WithActions: Story = {
70
71
  startContent: <MenuIcon className="size-4" />,
71
72
  },
72
73
  },
73
- render: (args) => {
74
+ render: (args: SideBarProps) => {
74
75
  const { isOpen, onOpenChange } = useDisclosure();
75
76
 
76
77
  return (
@@ -89,7 +90,7 @@ export const Compact: Story = {
89
90
  args: {
90
91
  variant: "compact",
91
92
  },
92
- render: (args) => {
93
+ render: (args: SideBarProps) => {
93
94
  const { isOpen, onOpenChange } = useDisclosure();
94
95
 
95
96
  return (
@@ -1,8 +1,8 @@
1
- import { cn } from "@utils";
1
+ import { cn } from "@/utils";
2
2
  import { VariantProps } from "class-variance-authority";
3
3
  import { forwardRef, ComponentProps } from "react";
4
4
  import { sideBarClasses } from "./styles";
5
- import type { SideBarProps } from "@types";
5
+ import type { SideBarProps } from "@/types";
6
6
  import { SideBarDrawer } from "./side-bar-drawer";
7
7
  import { CompactSideBar } from "./compact-side-bar";
8
8
 
@@ -1,4 +1,4 @@
1
- import { SideBarItemStylesProps } from "@types";
1
+ import { SideBarItemStylesProps } from "@/types";
2
2
  import { CSSProperties } from "react";
3
3
 
4
4
  export const sideBarItemStyles = ({
@@ -0,0 +1,27 @@
1
+ import { cn } from "@heroui/react";
2
+ import { FooterProps } from "@/types";
3
+ import { copyRightsClasses } from "./styles";
4
+
5
+ export function CopyRightsBox({ copyRights, classNames }: FooterProps) {
6
+ return (
7
+ <section
8
+ data-slot="emperor-footer-policies"
9
+ className={cn(
10
+ copyRightsClasses({
11
+ className: cn(classNames?.copyRightsWrapper),
12
+ }),
13
+ )}
14
+ >
15
+ <p
16
+ className={cn(
17
+ "flex items-center gap-1 text-sm text-gray-400 text-center",
18
+ classNames?.copyRightsText,
19
+ )}
20
+ >
21
+ <span>©</span>
22
+ <span>{copyRights?.year}</span>
23
+ <span>{copyRights?.text}</span>
24
+ </p>
25
+ </section>
26
+ );
27
+ }
@@ -1,20 +1,75 @@
1
- import type { FooterProps } from "@types";
2
- import { cn } from "@utils";
1
+ import type { FooterProps } from "@/types";
2
+ import { cn } from "@/utils";
3
3
  import { VariantProps } from "class-variance-authority";
4
4
  import { ComponentProps, forwardRef } from "react";
5
- import { footerClasses, footerStyles } from "./styles";
5
+ import { contentClasses, footerClasses, footerStyles } from "./styles";
6
+ import {
7
+ PoliciesBox,
8
+ QuickLinksBox,
9
+ SocialLinksBox,
10
+ CopyRightsBox,
11
+ } from "@/components";
12
+ import { Divider } from "@heroui/react";
6
13
 
7
14
  export const Footer = forwardRef<
8
15
  HTMLElement,
9
16
  ComponentProps<"footer"> & VariantProps<typeof footerClasses> & FooterProps
10
- >(({ className, variant = "default", children, ...props }, ref) => {
11
- return (
12
- <footer
13
- ref={ref}
14
- data-slot="emperor-footer"
15
- className={cn(footerClasses({ variant, className }))}
16
- style={footerStyles({})}
17
- {...props}
18
- ></footer>
19
- );
20
- });
17
+ >(
18
+ (
19
+ {
20
+ className,
21
+ classNames,
22
+ policies,
23
+ copyRights,
24
+ socialLinks,
25
+ contacts,
26
+ quickLinks,
27
+ variant = "default",
28
+ children,
29
+ ...props
30
+ },
31
+ ref,
32
+ ) => {
33
+ return (
34
+ <footer
35
+ ref={ref}
36
+ data-slot="emperor-footer"
37
+ className={cn(
38
+ footerClasses({
39
+ variant,
40
+ className: cn(className, classNames?.base),
41
+ }),
42
+ )}
43
+ style={footerStyles({})}
44
+ {...props}
45
+ >
46
+ <div
47
+ data-slot="emperor-footer-content"
48
+ className={cn(
49
+ contentClasses({
50
+ className: cn(className, classNames?.content),
51
+ }),
52
+ )}
53
+ >
54
+ {children}
55
+ </div>
56
+
57
+ <QuickLinksBox quickLinks={quickLinks} classNames={classNames} />
58
+
59
+ <Divider className="col-span-full bg-background/30" />
60
+
61
+ <div
62
+ className={cn(
63
+ "col-span-full flex flex-col gap-4 justify-between items-center w-full",
64
+ "md:flex-row",
65
+ )}
66
+ >
67
+ <SocialLinksBox socialLinks={socialLinks} classNames={classNames} />
68
+ <PoliciesBox policies={policies} classNames={classNames} />
69
+ </div>
70
+
71
+ <CopyRightsBox copyRights={copyRights} classNames={classNames} />
72
+ </footer>
73
+ );
74
+ },
75
+ );
@@ -1 +1,5 @@
1
1
  export * from "./footer";
2
+ export * from "./policies-box";
3
+ export * from "./copy-rights-box";
4
+ export * from "./social-links-box";
5
+ export * from "./quick-links-box";
@@ -0,0 +1,26 @@
1
+ import { cn, Link } from "@heroui/react";
2
+ import { FooterProps } from "@/types";
3
+ import { policiesClasses } from "./styles";
4
+
5
+ export function PoliciesBox({ policies, classNames }: FooterProps) {
6
+ return (
7
+ <section
8
+ data-slot="emperor-footer-policies"
9
+ className={cn(
10
+ policiesClasses({
11
+ className: cn(classNames?.policiesWrapper),
12
+ }),
13
+ )}
14
+ >
15
+ {policies?.map((policy) => (
16
+ <Link
17
+ key={policy.href}
18
+ href={policy.href}
19
+ className={cn(classNames?.policy)}
20
+ >
21
+ {policy.label}
22
+ </Link>
23
+ ))}
24
+ </section>
25
+ );
26
+ }
@@ -0,0 +1,45 @@
1
+ import { cn, Link } from "@heroui/react";
2
+ import { FooterProps } from "@/types";
3
+ import { quickLinksClasses } from "./styles";
4
+
5
+ export function QuickLinksBox({ quickLinks, classNames }: FooterProps) {
6
+ return (
7
+ <section
8
+ data-slot="emperor-footer-quick-links"
9
+ className={cn(
10
+ quickLinksClasses({
11
+ className: cn(classNames?.quickLinksWrapper),
12
+ }),
13
+ )}
14
+ >
15
+ {quickLinks?.map(({ links, title }) => (
16
+ <div
17
+ key={title}
18
+ className={cn("flex flex-col gap-4", classNames?.quickLinksItem)}
19
+ >
20
+ <h3
21
+ className={cn("text-lg font-semibold", classNames?.quickLinksTitle)}
22
+ >
23
+ {title}
24
+ </h3>
25
+
26
+ <ul className={cn("flex flex-col gap-2", classNames?.quickLinksList)}>
27
+ {links?.map(({ href, label, isExternal }) => (
28
+ <Link
29
+ key={href}
30
+ href={href}
31
+ target={isExternal ? "_blank" : "_self"}
32
+ className={cn(
33
+ " text-gray-400 hover:text-white transition-all duration-300 ease-in-out",
34
+ classNames?.quickLinksLink,
35
+ )}
36
+ >
37
+ {label}
38
+ </Link>
39
+ ))}
40
+ </ul>
41
+ </div>
42
+ ))}
43
+ </section>
44
+ );
45
+ }
@@ -0,0 +1,32 @@
1
+ import { cn, Link } from "@heroui/react";
2
+ import { FooterProps } from "@/types";
3
+ import { socialLinksClasses } from "./styles";
4
+
5
+ export function SocialLinksBox({ socialLinks, classNames }: FooterProps) {
6
+ return (
7
+ <section
8
+ data-slot="emperor-footer-social-links"
9
+ className={cn(
10
+ socialLinksClasses({
11
+ className: cn(classNames?.socialLinksWrapper),
12
+ }),
13
+ )}
14
+ >
15
+ {socialLinks?.map(({ href, icon, label }) => (
16
+ <Link
17
+ key={href}
18
+ href={href}
19
+ className={cn(
20
+ "flex items-center gap-2 text-sm text-gray-400 hover:text-white transition-all duration-300 ease-in-out",
21
+ classNames?.socialLink,
22
+ )}
23
+ target="_blank"
24
+ rel="noopener noreferrer"
25
+ >
26
+ {icon}
27
+ {label}
28
+ </Link>
29
+ ))}
30
+ </section>
31
+ );
32
+ }
@@ -0,0 +1,61 @@
1
+ import type { Meta, StoryObj } from "@storybook/react-vite";
2
+ import { Brand, Footer } from "@/components";
3
+ import { getStorybookDecorators } from "@/utils";
4
+ import { FooterProps } from "@/types";
5
+ import {
6
+ FAKE_PARAGRAPH,
7
+ FAKE_SENTENCE,
8
+ quickLinks,
9
+ policies,
10
+ copyRights,
11
+ contacts,
12
+ socialLinks,
13
+ } from "@/constants";
14
+ import { Button } from "@heroui/react";
15
+
16
+ const meta: Meta<typeof Footer> = {
17
+ title: "Organisms/Footer",
18
+ component: Footer,
19
+ parameters: {
20
+ layout: "fullscreen",
21
+ },
22
+ tags: ["autodocs"],
23
+ decorators: getStorybookDecorators({}),
24
+ };
25
+
26
+ export default meta;
27
+
28
+ type Story = StoryObj<typeof meta>;
29
+
30
+ export const Default: Story = {
31
+ args: {
32
+ quickLinks,
33
+ policies,
34
+ copyRights,
35
+ contacts,
36
+ socialLinks,
37
+ },
38
+ render: (args: FooterProps) => {
39
+ return (
40
+ <div className="flex flex-col gap-6">
41
+ <main className="w-full container mx-auto p-5 flex flex-col gap-6">
42
+ <p>{FAKE_PARAGRAPH}</p>
43
+ </main>
44
+
45
+ <Footer
46
+ classNames={{
47
+ content: "p-5 gap-8 items-center md:items-start",
48
+ }}
49
+ {...args}
50
+ >
51
+ <Brand />
52
+ <p className="text-center md:text-left">{FAKE_SENTENCE}</p>
53
+
54
+ <Button color="primary" className="w-fit">
55
+ Join now
56
+ </Button>
57
+ </Footer>
58
+ </div>
59
+ );
60
+ },
61
+ };
@@ -1,15 +1,71 @@
1
1
  import { cva } from "class-variance-authority";
2
2
 
3
3
  export const footerClasses = cva(
4
- [""],
4
+ [
5
+ "w-full grid md:grid-cols-[1fr_2fr] gap-4 p-5 min-h-80",
6
+ "bg-foreground text-background",
7
+ ],
5
8
  {
6
9
  variants: {
7
10
  variant: {
8
11
  default: [],
9
-
10
12
  },
11
13
  },
12
14
  defaultVariants: {},
13
15
  compoundVariants: [],
14
16
  },
15
17
  );
18
+
19
+ export const contentClasses = cva(["flex flex-col gap-4"], {
20
+ variants: {},
21
+ defaultVariants: {},
22
+ compoundVariants: [],
23
+ });
24
+
25
+ export const policiesClasses = cva(
26
+ [
27
+ "col-span-full w-fit flex flex-col items-center gap-4 p-5 text-center",
28
+ "md:flex-row",
29
+ ],
30
+ {
31
+ variants: {},
32
+ defaultVariants: {},
33
+ compoundVariants: [],
34
+ },
35
+ );
36
+
37
+ export const socialLinksClasses = cva(
38
+ ["w-fit flex p-5 gap-4 items-center flex-wrap"],
39
+ {
40
+ variants: {},
41
+ defaultVariants: {},
42
+ compoundVariants: [],
43
+ },
44
+ );
45
+
46
+ export const copyRightsClasses = cva(
47
+ ["col-span-full w-fit flex p-2 mx-auto text-center"],
48
+ {
49
+ variants: {},
50
+ defaultVariants: {},
51
+ compoundVariants: [],
52
+ },
53
+ );
54
+
55
+ export const contactsClasses = cva([""], {
56
+ variants: {},
57
+ defaultVariants: {},
58
+ compoundVariants: [],
59
+ });
60
+
61
+ export const quickLinksClasses = cva(
62
+ [
63
+ "grid gap-4 p-5 w-fit mx-auto",
64
+ "sm:w-full sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4",
65
+ ],
66
+ {
67
+ variants: {},
68
+ defaultVariants: {},
69
+ compoundVariants: [],
70
+ },
71
+ );
@@ -1,9 +1,6 @@
1
1
  import { CSSProperties } from "react";
2
2
 
3
-
4
- export const footerStyles = ({
5
-
6
- }: {}): CSSProperties => {
7
-
3
+ // eslint-disable-next-line @typescript-eslint/no-empty-object-type, no-empty-pattern
4
+ export const footerStyles = ({}: {}): CSSProperties => {
8
5
  return {};
9
6
  };
@@ -1,12 +1,12 @@
1
- import { useEmperorUI } from "@hooks";
2
- import type { HeaderProps, NavBarHoverEffect, NavBarVariant } from "@types";
3
- import { cn } from "@utils";
1
+ import { useEmperorUI } from "@/hooks";
2
+ import type { HeaderProps, NavBarHoverEffect, NavBarVariant } from "@/types";
3
+ import { cn } from "@/utils";
4
4
  import { VariantProps } from "class-variance-authority";
5
5
  import { ComponentProps, forwardRef } from "react";
6
- import { Brand, NavBar, SideBar } from "@components";
6
+ import { Brand, NavBar, SideBar } from "@/components";
7
7
  import { headerClasses, headerStyles } from "./styles";
8
8
  import { useDisclosure } from "@heroui/react";
9
- import { MOCK_HEADER_ITEMS, MOCK_HEADER_ACTIONS } from "@mocks";
9
+ import { MOCK_HEADER_ITEMS, MOCK_HEADER_ACTIONS } from "@/mocks";
10
10
  import { SegmentedHeaderContent } from "./segmented-header-content";
11
11
 
12
12
  export const Header = forwardRef<
@@ -1,7 +1,7 @@
1
- import { SegmentedHeaderContentProps } from "@types";
1
+ import { SegmentedHeaderContentProps } from "@/types";
2
2
  import { Children } from "react";
3
- import { Row } from "@components";
4
- import { useEmperorUI } from "@hooks";
3
+ import { Row } from "@/components";
4
+ import { useEmperorUI } from "@/hooks";
5
5
  import { getGlassEffectStyles } from "./styles/styles";
6
6
 
7
7
  export const SegmentedHeaderContent = ({
@@ -1,11 +1,12 @@
1
- import type { Meta, StoryObj } from "@storybook/react";
2
- import { Brand, Header, NavBar } from "@components";
3
- import { getStorybookDecorators } from "@utils";
4
- import { FAKE_PARAGRAPH } from "@constants";
5
- import { MOCK_HEADER_ITEMS } from "@mocks";
1
+ import type { Meta, StoryObj } from "@storybook/react-vite";
2
+ import { Brand, Header, NavBar } from "@/components";
3
+ import { getStorybookDecorators } from "@/utils";
4
+ import { FAKE_PARAGRAPH } from "@/constants";
5
+ import { MOCK_HEADER_ITEMS } from "@/mocks";
6
+ import { HeaderProps } from "@/types";
6
7
 
7
8
  const meta: Meta<typeof Header> = {
8
- title: "Molecules/Header",
9
+ title: "Organisms/Header",
9
10
  component: Header,
10
11
  parameters: {
11
12
  layout: "fullscreen",
@@ -34,7 +35,7 @@ export const Floating: Story = {
34
35
  args: {
35
36
  variant: "floating",
36
37
  },
37
- render: (args) => {
38
+ render: (args: HeaderProps) => {
38
39
  return (
39
40
  <div>
40
41
  <Header {...args} />
@@ -1,5 +1,5 @@
1
1
  import { CSSProperties } from "react";
2
- import { HeaderGlassEffect, HeaderStylesProps } from "@types";
2
+ import { HeaderGlassEffect, HeaderStylesProps } from "@/types";
3
3
 
4
4
  export const getGlassEffectStyles = ({
5
5
  glassEffect,
@@ -1,4 +1,4 @@
1
1
  export * from "./item-details";
2
2
  export * from "./listings";
3
3
  export * from "./footer";
4
- export * from "./header";
4
+ export * from "./header";
@@ -1,5 +1,5 @@
1
- import type { ItemDetailsProps } from "src";
2
- import { cn } from "@utils";
1
+ import type { ItemDetailsProps } from "@/types";
2
+ import { cn } from "@/utils";
3
3
 
4
4
  export function ItemDetails({ className }: ItemDetailsProps) {
5
5
  return <div className={cn("", className)}>ItemDetails Component</div>;
@@ -1,5 +1,5 @@
1
- import type { ListingsProps } from "src";
2
- import { cn } from "@utils";
1
+ import type { ListingsProps } from "@/types";
2
+ import { cn } from "@/utils";
3
3
 
4
4
  export function Listings({ className }: ListingsProps) {
5
5
  return <div className={cn("", className)}>Listings Component</div>;
@@ -1,6 +1,6 @@
1
- import type { Meta, StoryObj } from "@storybook/react";
2
- import { LandingPage } from "@components";
3
- import { getStorybookDecorators } from "@utils";
1
+ import type { Meta, StoryObj } from "@storybook/react-vite";
2
+ import { LandingPage } from "@/components";
3
+ import { getStorybookDecorators } from "@/utils";
4
4
 
5
5
  const meta: Meta<typeof LandingPage> = {
6
6
  title: "Templates/LandingPage",
@@ -1,11 +1,11 @@
1
1
  import { forwardRef, ComponentProps } from "react";
2
2
  import { VariantProps } from "class-variance-authority";
3
- import { cn } from "@utils";
4
- import { LandingPageProps } from "@types";
3
+ import { cn } from "@/utils";
4
+ import { LandingPageProps } from "@/types";
5
5
  import { landingPageClasses } from "./styles";
6
- import { Brand, Header, NavBar } from "@components";
7
- import { MOCK_HEADER_ITEMS_WITH_SUB_ITEMS } from "@mocks";
8
- import { FAKE_PARAGRAPH } from "@constants";
6
+ import { Brand, Header, NavBar } from "@/components";
7
+ import { MOCK_HEADER_ITEMS_WITH_SUB_ITEMS } from "@/mocks";
8
+ import { FAKE_PARAGRAPH } from "@/constants";
9
9
 
10
10
  const GLASS_EFFECT_CONFIG = {
11
11
  enabled: true,
@@ -1,4 +1,4 @@
1
- import type { ColorsPalette, EmperorUIConfig } from "@types";
1
+ import type { ColorsPalette, EmperorUIConfig } from "@/types";
2
2
 
3
3
  export const defaultColorsPalette: ColorsPalette = {
4
4
  primary: "#006FEE",
@@ -1,2 +1,5 @@
1
+ export const FAKE_SENTENCE =
2
+ "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor.";
3
+
1
4
  export const FAKE_PARAGRAPH =
2
5
  "Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla consequat massa quis enim. Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer tincidunt. Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis, feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet. Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue. Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus. Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, blandit vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus. Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt. Duis leo. Sed fringilla mauris sit amet nibh. Donec sodales sagittis magna. Sed consequat, leo eget bibendum sodales, augue velit cursus nunc,";