From bc5c9133a62febea043cb97356121e257cbea51c Mon Sep 17 00:00:00 2001 From: Ahmed Rezk Date: Mon, 27 Jan 2025 10:44:16 -0700 Subject: [PATCH 01/10] add spectre to gitignore --- .gitignore | 2 + .../components/ui/menubar.tsx-E | 263 ++++++++++++++++++ 2 files changed, 265 insertions(+) create mode 100644 apps/expo-nativewind/components/ui/menubar.tsx-E diff --git a/.gitignore b/.gitignore index be6d1ab9..5383b806 100644 --- a/.gitignore +++ b/.gitignore @@ -34,6 +34,8 @@ package-lock.json .*.swo .*.swn .*.swm +.*.swm +*-E # Sublime Text *.sublime-project diff --git a/apps/expo-nativewind/components/ui/menubar.tsx-E b/apps/expo-nativewind/components/ui/menubar.tsx-E new file mode 100644 index 00000000..c36e488a --- /dev/null +++ b/apps/expo-nativewind/components/ui/menubar.tsx-E @@ -0,0 +1,263 @@ +import * as MenubarPrimitive from '@rn-primitives/menubar'; +import * as React from 'react'; +import { Platform, Text, View } from 'react-native'; +import { Check } from '~/lib/icons/Check'; +import { ChevronDown } from '~/lib/icons/ChevronDown'; +import { ChevronRight } from '~/lib/icons/ChevronRight'; +import { ChevronUp } from '~/lib/icons/ChevronUp'; +import { cn } from '~/lib/utils'; +import { TextClassContext } from '~/components/ui/text'; + +const MenubarMenu = MenubarPrimitive.Menu; + +const MenubarGroup = MenubarPrimitive.Group; + +const MenubarPortal = MenubarPrimitive.Portal; + +const MenubarSub = MenubarPrimitive.Sub; + +const MenubarRadioGroup = MenubarPrimitive.RadioGroup; + +const Menubar = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +Menubar.displayName = MenubarPrimitive.Root.displayName; + +const MenubarTrigger = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => { + const { value } = MenubarPrimitive.useRootContext(); + const { value: itemValue } = MenubarPrimitive.useMenuContext(); + + return ( + + ); +}); +MenubarTrigger.displayName = MenubarPrimitive.Trigger.displayName; + +const MenubarSubTrigger = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef & { + inset?: boolean; + } +>(({ className, inset, children, ...props }, ref) => { + const { open } = MenubarPrimitive.useSubContext(); + const Icon = Platform.OS === 'web' ? ChevronRight : open ? ChevronUp : ChevronDown; + return ( + + + <>{children} + + + + ); +}); +MenubarSubTrigger.displayName = MenubarPrimitive.SubTrigger.displayName; + +const MenubarSubContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => { + const { open } = MenubarPrimitive.useSubContext(); + return ( + + ); +}); +MenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName; + +const MenubarContent = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef & { portalHost?: string } +>(({ className, portalHost, ...props }, ref) => { + const { value } = MenubarPrimitive.useRootContext(); + const { value: itemValue } = MenubarPrimitive.useMenuContext(); + return ( + + + + ); +}); +MenubarContent.displayName = MenubarPrimitive.Content.displayName; + +const MenubarItem = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef & { + inset?: boolean; + } +>(({ className, inset, ...props }, ref) => ( + + + +)); +MenubarItem.displayName = MenubarPrimitive.Item.displayName; + +const MenubarCheckboxItem = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, checked, ...props }, ref) => ( + + + + + + + <>{children} + +)); +MenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName; + +const MenubarRadioItem = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, children, ...props }, ref) => ( + + + + + + + <>{children} + +)); +MenubarRadioItem.displayName = MenubarPrimitive.RadioItem.displayName; + +const MenubarLabel = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef & { + inset?: boolean; + } +>(({ className, inset, ...props }, ref) => ( + +)); +MenubarLabel.displayName = MenubarPrimitive.Label.displayName; + +const MenubarSeparator = React.forwardRef< + React.ElementRef, + React.ComponentPropsWithoutRef +>(({ className, ...props }, ref) => ( + +)); +MenubarSeparator.displayName = MenubarPrimitive.Separator.displayName; + +const MenubarShortcut = ({ className, ...props }: React.ComponentPropsWithoutRef) => { + return ( + + ); +}; +MenubarShortcut.displayName = 'MenubarShortcut'; + +export { + Menubar, + MenubarCheckboxItem, + MenubarContent, + MenubarGroup, + MenubarItem, + MenubarLabel, + MenubarMenu, + MenubarPortal, + MenubarRadioGroup, + MenubarRadioItem, + MenubarSeparator, + MenubarShortcut, + MenubarSub, + MenubarSubContent, + MenubarSubTrigger, + MenubarTrigger, +}; From 4a98b7eb177e63797297878b8b1cc4e38c37750c Mon Sep 17 00:00:00 2001 From: Ahmed Rezk Date: Mon, 27 Jan 2025 10:48:33 -0700 Subject: [PATCH 02/10] replace brand to --- apps/docs/astro.config.mjs | 6 +- apps/docs/package.json | 66 +-- apps/docs/src/components/Head.astro | 4 +- apps/docs/src/content/docs/accordion.mdx | 12 +- apps/docs/src/content/docs/alert-dialog.mdx | 16 +- apps/docs/src/content/docs/aspect-ratio.mdx | 6 +- apps/docs/src/content/docs/avatar.mdx | 8 +- apps/docs/src/content/docs/checkbox.mdx | 12 +- apps/docs/src/content/docs/collapsible.mdx | 12 +- apps/docs/src/content/docs/context-menu.mdx | 16 +- apps/docs/src/content/docs/dialog.mdx | 16 +- apps/docs/src/content/docs/dropdown-menu.mdx | 16 +- apps/docs/src/content/docs/hooks.mdx | 22 +- apps/docs/src/content/docs/hover-card.mdx | 16 +- apps/docs/src/content/docs/label.mdx | 14 +- apps/docs/src/content/docs/menubar.mdx | 16 +- .../docs/src/content/docs/navigation-menu.mdx | 16 +- apps/docs/src/content/docs/popover.mdx | 16 +- apps/docs/src/content/docs/portal.mdx | 10 +- apps/docs/src/content/docs/progress.mdx | 12 +- apps/docs/src/content/docs/radio-group.mdx | 12 +- apps/docs/src/content/docs/select.mdx | 16 +- apps/docs/src/content/docs/separator.mdx | 8 +- apps/docs/src/content/docs/slider.mdx | 14 +- apps/docs/src/content/docs/slot.mdx | 12 +- apps/docs/src/content/docs/switch.mdx | 12 +- apps/docs/src/content/docs/table.mdx | 6 +- apps/docs/src/content/docs/tabs.mdx | 12 +- apps/docs/src/content/docs/toast.mdx | 14 +- apps/docs/src/content/docs/toggle-group.mdx | 12 +- apps/docs/src/content/docs/toggle.mdx | 12 +- apps/docs/src/content/docs/toolbar.mdx | 12 +- apps/docs/src/content/docs/tooltip.mdx | 16 +- apps/docs/src/content/docs/types.mdx | 4 +- apps/docs/src/content/docs/utils.mdx | 12 +- apps/docs/src/lib/utils.ts | 2 +- .../app/(components)/navigation-menu.tsx | 2 +- .../app/(components)/slider.tsx | 2 +- .../app/(components)/toolbar.tsx | 2 +- apps/expo-nativewind/app/_layout.tsx | 2 +- .../components/ui/accordion.tsx | 2 +- .../components/ui/alert-dialog.tsx | 2 +- .../components/ui/aspect-ratio.tsx | 2 +- apps/expo-nativewind/components/ui/avatar.tsx | 2 +- apps/expo-nativewind/components/ui/card.tsx | 2 +- .../components/ui/checkbox.tsx | 2 +- .../components/ui/collapsible.tsx | 2 +- .../components/ui/context-menu.tsx | 2 +- apps/expo-nativewind/components/ui/dialog.tsx | 2 +- .../components/ui/dropdown-menu.tsx | 2 +- .../components/ui/hover-card.tsx | 2 +- apps/expo-nativewind/components/ui/label.tsx | 2 +- .../expo-nativewind/components/ui/menubar.tsx | 2 +- .../components/ui/navigation-menu.tsx | 2 +- .../expo-nativewind/components/ui/popover.tsx | 2 +- .../components/ui/progress.tsx | 2 +- .../components/ui/radio-group.tsx | 2 +- apps/expo-nativewind/components/ui/select.tsx | 2 +- .../components/ui/separator.tsx | 2 +- apps/expo-nativewind/components/ui/switch.tsx | 2 +- apps/expo-nativewind/components/ui/table.tsx | 2 +- apps/expo-nativewind/components/ui/tabs.tsx | 2 +- apps/expo-nativewind/components/ui/text.tsx | 4 +- .../components/ui/toggle-group.tsx | 2 +- apps/expo-nativewind/components/ui/toggle.tsx | 2 +- .../expo-nativewind/components/ui/tooltip.tsx | 2 +- .../components/ui/typography.tsx | 4 +- apps/expo-nativewind/package.json | 62 +-- apps/expo-stylesheet/app/_layout.tsx | 2 +- apps/expo-stylesheet/components/ui/select.tsx | 2 +- apps/expo-stylesheet/package.json | 62 +-- apps/nextjs-nativewind/next.config.mjs | 60 +-- apps/nextjs-nativewind/package.json | 62 +-- apps/nextjs-nativewind/src/app/page.tsx | 2 +- .../src/components/NavigationMenuExample.tsx | 2 +- .../src/components/SliderExample.tsx | 2 +- .../src/components/ui/accordion.tsx | 2 +- .../src/components/ui/alert-dialog.tsx | 2 +- .../src/components/ui/aspect-ratio.tsx | 2 +- .../src/components/ui/avatar.tsx | 2 +- .../src/components/ui/card.tsx | 2 +- .../src/components/ui/checkbox.tsx | 2 +- .../src/components/ui/collapsible.tsx | 2 +- .../src/components/ui/context-menu.tsx | 2 +- .../src/components/ui/dialog.tsx | 2 +- .../src/components/ui/dropdown-menu.tsx | 2 +- .../src/components/ui/hover-card.tsx | 2 +- .../src/components/ui/label.tsx | 2 +- .../src/components/ui/menubar.tsx | 2 +- .../src/components/ui/navigation-menu.tsx | 2 +- .../src/components/ui/popover.tsx | 2 +- .../src/components/ui/progress.tsx | 2 +- .../src/components/ui/radio-group.tsx | 2 +- .../src/components/ui/select.tsx | 2 +- .../src/components/ui/separator.tsx | 2 +- .../src/components/ui/switch.tsx | 2 +- .../src/components/ui/table.tsx | 2 +- .../src/components/ui/tabs.tsx | 2 +- .../src/components/ui/text.tsx | 4 +- .../src/components/ui/toggle-group.tsx | 2 +- .../src/components/ui/toggle.tsx | 2 +- .../src/components/ui/tooltip.tsx | 2 +- .../src/components/ui/typography.tsx | 4 +- package.json | 2 +- packages/accordion/package.json | 8 +- packages/accordion/src/accordion.tsx | 4 +- packages/accordion/src/accordion.web.tsx | 4 +- packages/accordion/src/types.ts | 2 +- packages/alert-dialog/package.json | 12 +- packages/alert-dialog/src/alert-dialog.tsx | 6 +- .../alert-dialog/src/alert-dialog.web.tsx | 4 +- packages/alert-dialog/src/types.ts | 2 +- packages/aspect-ratio/package.json | 6 +- packages/aspect-ratio/src/aspect-ratio.tsx | 4 +- packages/avatar/package.json | 8 +- packages/avatar/src/avatar.tsx | 4 +- packages/avatar/src/types.ts | 2 +- packages/checkbox/package.json | 8 +- packages/checkbox/src/checkbox.tsx | 4 +- packages/checkbox/src/checkbox.web.tsx | 4 +- packages/checkbox/src/types.ts | 2 +- packages/collapsible/package.json | 8 +- packages/collapsible/src/collapsible.tsx | 4 +- packages/collapsible/src/collapsible.web.tsx | 4 +- packages/collapsible/src/types.ts | 2 +- packages/context-menu/package.json | 14 +- packages/context-menu/src/context-menu.tsx | 6 +- .../context-menu/src/context-menu.web.tsx | 6 +- packages/context-menu/src/types.ts | 2 +- packages/dialog/package.json | 12 +- packages/dialog/src/dialog.tsx | 6 +- packages/dialog/src/dialog.web.tsx | 4 +- packages/dialog/src/types.ts | 2 +- packages/dropdown-menu/package.json | 14 +- packages/dropdown-menu/src/dropdown-menu.tsx | 6 +- .../dropdown-menu/src/dropdown-menu.web.tsx | 6 +- packages/dropdown-menu/src/types.ts | 2 +- packages/hooks/package.json | 4 +- packages/hooks/src/useRelativePosition.tsx | 2 +- packages/hover-card/package.json | 14 +- packages/hover-card/src/hover-card.tsx | 6 +- packages/hover-card/src/hover-card.web.tsx | 4 +- packages/hover-card/src/types.ts | 2 +- packages/label/package.json | 6 +- packages/label/src/label.tsx | 2 +- packages/label/src/label.web.tsx | 2 +- packages/label/src/types.ts | 2 +- packages/menubar/package.json | 14 +- packages/menubar/src/menubar.tsx | 6 +- packages/menubar/src/menubar.web.tsx | 6 +- packages/menubar/src/types.ts | 2 +- packages/navigation-menu/package.json | 14 +- .../navigation-menu/src/navigation-menu.tsx | 6 +- .../src/navigation-menu.web.tsx | 6 +- packages/navigation-menu/src/types.ts | 2 +- packages/popover/package.json | 12 +- packages/popover/src/popover.tsx | 6 +- packages/popover/src/popover.web.tsx | 4 +- packages/popover/src/types.ts | 2 +- packages/portal/package.json | 2 +- packages/progress/package.json | 6 +- packages/progress/src/progress.tsx | 2 +- packages/progress/src/progress.web.tsx | 2 +- packages/progress/src/types.ts | 2 +- packages/radio-group/package.json | 6 +- packages/radio-group/src/radio-group.tsx | 2 +- packages/radio-group/src/radio-group.web.tsx | 2 +- packages/radio-group/src/types.ts | 2 +- packages/select/package.json | 12 +- packages/select/src/select.tsx | 6 +- packages/select/src/select.web.tsx | 4 +- packages/select/src/types.ts | 2 +- packages/separator/package.json | 6 +- packages/separator/src/separator.tsx | 2 +- packages/separator/src/types.ts | 2 +- packages/slider/package.json | 6 +- packages/slider/src/slider.tsx | 2 +- packages/slider/src/slider.web.tsx | 2 +- packages/slider/src/types.ts | 2 +- packages/slot/package.json | 2 +- packages/switch/package.json | 6 +- packages/switch/src/switch.tsx | 2 +- packages/switch/src/switch.web.tsx | 2 +- packages/switch/src/types.ts | 2 +- packages/table/package.json | 6 +- packages/table/src/table.tsx | 4 +- packages/tabs/package.json | 6 +- packages/tabs/src/tabs.tsx | 2 +- packages/tabs/src/tabs.web.tsx | 2 +- packages/tabs/src/types.ts | 2 +- packages/toast/package.json | 6 +- packages/toast/src/toast.tsx | 2 +- packages/toast/src/types.ts | 2 +- packages/toggle-group/package.json | 8 +- packages/toggle-group/src/toggle-group.tsx | 4 +- .../toggle-group/src/toggle-group.web.tsx | 4 +- packages/toggle-group/src/types.ts | 2 +- packages/toggle/package.json | 6 +- packages/toggle/src/toggle.tsx | 2 +- packages/toggle/src/toggle.web.tsx | 2 +- packages/toggle/src/types.ts | 2 +- packages/toolbar/package.json | 8 +- packages/toolbar/src/toolbar.tsx | 4 +- packages/toolbar/src/toolbar.web.tsx | 4 +- packages/toolbar/src/types.ts | 2 +- packages/tooltip/package.json | 12 +- packages/tooltip/src/tooltip.tsx | 6 +- packages/tooltip/src/tooltip.web.tsx | 4 +- packages/tooltip/src/types.ts | 2 +- packages/types/package.json | 2 +- packages/utils/package.json | 2 +- pnpm-lock.yaml | 416 +++++++++--------- 212 files changed, 893 insertions(+), 893 deletions(-) diff --git a/apps/docs/astro.config.mjs b/apps/docs/astro.config.mjs index 92bd1a40..c10a78bd 100644 --- a/apps/docs/astro.config.mjs +++ b/apps/docs/astro.config.mjs @@ -11,14 +11,14 @@ export default defineConfig({ integrations: [ starlight({ favicon: '/favicon.png', - title: 'rn-primitives', - description: 'Documentation for rn-primitives', + title: 'rnr-method', + description: 'Documentation for rnr-method', components: { ThemeSelect: './src/components/ThemeSelect.astro', Head: './src/components/Head.astro', }, social: { - github: 'https://github.com/roninoss/rn-primitives', + github: 'https://github.com/roninoss/rnr-method', }, sidebar: [ { diff --git a/apps/docs/package.json b/apps/docs/package.json index c861e885..e54da954 100644 --- a/apps/docs/package.json +++ b/apps/docs/package.json @@ -1,5 +1,5 @@ { - "name": "@rn-primitives/docs", + "name": "@rnr-method/docs", "type": "module", "version": "0.0.1", "scripts": { @@ -20,38 +20,38 @@ "@radix-ui/react-collapsible": "^1.1.0", "@radix-ui/react-dropdown-menu": "^2.1.1", "@radix-ui/react-slot": "^1.1.0", - "@rn-primitives/accordion": "workspace:*", - "@rn-primitives/alert-dialog": "workspace:*", - "@rn-primitives/aspect-ratio": "workspace:*", - "@rn-primitives/avatar": "workspace:*", - "@rn-primitives/checkbox": "workspace:*", - "@rn-primitives/collapsible": "workspace:*", - "@rn-primitives/context-menu": "workspace:*", - "@rn-primitives/dialog": "workspace:*", - "@rn-primitives/dropdown-menu": "workspace:*", - "@rn-primitives/hooks": "workspace:*", - "@rn-primitives/hover-card": "workspace:*", - "@rn-primitives/label": "workspace:*", - "@rn-primitives/menubar": "workspace:*", - "@rn-primitives/navigation-menu": "workspace:*", - "@rn-primitives/popover": "workspace:*", - "@rn-primitives/portal": "workspace:*", - "@rn-primitives/progress": "workspace:*", - "@rn-primitives/radio-group": "workspace:*", - "@rn-primitives/select": "workspace:*", - "@rn-primitives/separator": "workspace:*", - "@rn-primitives/slider": "workspace:*", - "@rn-primitives/slot": "workspace:*", - "@rn-primitives/switch": "workspace:*", - "@rn-primitives/table": "workspace:*", - "@rn-primitives/tabs": "workspace:*", - "@rn-primitives/toast": "workspace:*", - "@rn-primitives/toggle": "workspace:*", - "@rn-primitives/toggle-group": "workspace:*", - "@rn-primitives/toolbar": "workspace:*", - "@rn-primitives/tooltip": "workspace:*", - "@rn-primitives/types": "workspace:*", - "@rn-primitives/utils": "workspace:*", + "@rnr-method/accordion": "workspace:*", + "@rnr-method/alert-dialog": "workspace:*", + "@rnr-method/aspect-ratio": "workspace:*", + "@rnr-method/avatar": "workspace:*", + "@rnr-method/checkbox": "workspace:*", + "@rnr-method/collapsible": "workspace:*", + "@rnr-method/context-menu": "workspace:*", + "@rnr-method/dialog": "workspace:*", + "@rnr-method/dropdown-menu": "workspace:*", + "@rnr-method/hooks": "workspace:*", + "@rnr-method/hover-card": "workspace:*", + "@rnr-method/label": "workspace:*", + "@rnr-method/menubar": "workspace:*", + "@rnr-method/navigation-menu": "workspace:*", + "@rnr-method/popover": "workspace:*", + "@rnr-method/portal": "workspace:*", + "@rnr-method/progress": "workspace:*", + "@rnr-method/radio-group": "workspace:*", + "@rnr-method/select": "workspace:*", + "@rnr-method/separator": "workspace:*", + "@rnr-method/slider": "workspace:*", + "@rnr-method/slot": "workspace:*", + "@rnr-method/switch": "workspace:*", + "@rnr-method/table": "workspace:*", + "@rnr-method/tabs": "workspace:*", + "@rnr-method/toast": "workspace:*", + "@rnr-method/toggle": "workspace:*", + "@rnr-method/toggle-group": "workspace:*", + "@rnr-method/toolbar": "workspace:*", + "@rnr-method/tooltip": "workspace:*", + "@rnr-method/types": "workspace:*", + "@rnr-method/utils": "workspace:*", "@types/react": "~18.3.12", "@types/react-dom": "^18.2.19", "@vercel/analytics": "^1.3.1", diff --git a/apps/docs/src/components/Head.astro b/apps/docs/src/components/Head.astro index f216f6d7..397d9cd5 100644 --- a/apps/docs/src/components/Head.astro +++ b/apps/docs/src/components/Head.astro @@ -7,8 +7,8 @@ import Default from '@astrojs/starlight/components/Head.astro' - - + +