create-nextjs-cms 0.6.3 → 0.6.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-nextjs-cms",
3
- "version": "0.6.3",
3
+ "version": "0.6.4",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "bin": {
@@ -54,7 +54,7 @@ export default async function CMSLayout({ children }: { children: React.ReactNod
54
54
  >
55
55
  <Providers session={session ?? undefined}>
56
56
  <HydrateClient>
57
- <Layout logoUrlPath={cmsConfig.ui.logo} logoText={cmsConfig.ui.logoText}>
57
+ <Layout logoUrlPath={cmsConfig.ui.logo} logoText={cmsConfig.ui.logoText} isRTL={isRTL}>
58
58
  {children}
59
59
  </Layout>
60
60
  </HydrateClient>
@@ -13,10 +13,12 @@ function Layout({
13
13
  children,
14
14
  logoUrlPath,
15
15
  logoText,
16
+ isRTL,
16
17
  }: {
17
18
  children: React.ReactNode
18
19
  logoUrlPath: string
19
20
  logoText: string
21
+ isRTL: boolean
20
22
  }) {
21
23
  const [showMobileSidebar, setShowMobileSidebar] = useState(false)
22
24
  const session = useSession({
@@ -44,6 +46,7 @@ function Layout({
44
46
  mobileSidebar={showMobileSidebar}
45
47
  logoUrlPath={logoUrlPath}
46
48
  logoText={logoText}
49
+ isRTL={isRTL}
47
50
  />
48
51
  {showMobileSidebar && (
49
52
  // Display a black transparent div to close the sidebar when clicked outside
@@ -55,7 +58,8 @@ function Layout({
55
58
  <div
56
59
  className={classNames({
57
60
  'transition-all duration-100 ease-in-out': true,
58
- 'float-right rtl:float-left': true,
61
+ 'float-right': !isRTL,
62
+ 'float-left': isRTL,
59
63
  'w-full md:w-[calc(100%-275px)]': true,
60
64
  })}
61
65
  >
@@ -12,7 +12,7 @@ import { trpc } from '@/app/_trpc/client'
12
12
  import { useToast } from '@/components/ui/use-toast'
13
13
  import { logout, useSession } from 'nextjs-cms/auth/react'
14
14
 
15
- const Sidebar = (props: SidebarProps & { logoUrlPath: string; logoText: string }) => {
15
+ const Sidebar = (props: SidebarProps & { logoUrlPath: string; logoText: string; isRTL: boolean }) => {
16
16
  const t = useI18n()
17
17
  const session = useSession()
18
18
  const [navItems] = trpc.navigation.getSidebar.useSuspenseQuery()
@@ -30,7 +30,6 @@ const Sidebar = (props: SidebarProps & { logoUrlPath: string; logoText: string }
30
30
  })
31
31
  }
32
32
  }
33
- const isRTL = session?.data?.user?.locale === 'ar'
34
33
  return (
35
34
  <div
36
35
  className={classNames({
@@ -39,12 +38,14 @@ const Sidebar = (props: SidebarProps & { logoUrlPath: string; logoText: string }
39
38
  'transition-all duration-100 ease-in-out': true,
40
39
  'w-[300px] md:w-[275px]': true,
41
40
  // LTR: sidebar on left, slides in from left
42
- 'left-0 md:translate-x-0': true,
43
- '-translate-x-full': !props.mobileSidebar,
41
+ 'left-0': !props.isRTL,
42
+ 'md:translate-x-0': !props.isRTL,
43
+ '-translate-x-full': !props.isRTL && !props.mobileSidebar,
44
44
  // RTL: sidebar on right, slides in from right
45
- 'rtl:left-auto rtl:right-0': true,
46
- 'rtl:translate-x-full rtl:md:translate-x-0': !props.mobileSidebar,
47
- 'rtl:translate-x-0': props.mobileSidebar,
45
+ 'right-0': props.isRTL,
46
+ 'translate-x-full md:translate-x-0': props.isRTL && !props.mobileSidebar,
47
+ // Mobile sidebar shown (both LTR and RTL)
48
+ 'translate-x-0': props.mobileSidebar,
48
49
  })}
49
50
  >
50
51
  <div
@@ -64,7 +65,7 @@ const Sidebar = (props: SidebarProps & { logoUrlPath: string; logoText: string }
64
65
  {props.logoText}
65
66
  </span>
66
67
  </div>
67
- <ScrollArea dir={isRTL ? 'rtl' : 'ltr'} type='always' className='grow'>
68
+ <ScrollArea dir={props.isRTL ? 'rtl' : 'ltr'} type='always' className='grow'>
68
69
  <ul
69
70
  className={classNames({
70
71
  'my-2 flex flex-col items-stretch gap-2': true,
@@ -28,7 +28,7 @@ export default function SidebarDropdownItem({ item, closeSideBar }: SidebarItemP
28
28
  {open ? (
29
29
  <ChevronUpIcon className='h-5 w-5' />
30
30
  ) : (
31
- <ChevronDownIcon className='h-5 w-5 rtl:rotate-0' />
31
+ <ChevronDownIcon className='h-5 w-5' />
32
32
  )}
33
33
  </span>
34
34
  </li>
@@ -65,7 +65,7 @@
65
65
  "nanoid": "^5.1.2",
66
66
  "next": "16.1.1",
67
67
  "next-themes": "^0.4.6",
68
- "nextjs-cms": "0.6.3",
68
+ "nextjs-cms": "0.6.4",
69
69
  "plaiceholder": "^3.0.0",
70
70
  "prettier-plugin-tailwindcss": "^0.7.2",
71
71
  "qrcode": "^1.5.4",
@@ -98,7 +98,7 @@
98
98
  "eslint-config-prettier": "^10.0.1",
99
99
  "eslint-plugin-prettier": "^5.2.3",
100
100
  "fs-extra": "^11.3.3",
101
- "nextjs-cms-kit": "0.6.3",
101
+ "nextjs-cms-kit": "0.6.4",
102
102
  "postcss": "^8.5.1",
103
103
  "prettier": "3.5.0",
104
104
  "raw-loader": "^4.0.2",