@salesforce/webapp-template-app-react-sample-b2e-experimental 1.62.2 → 1.64.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 (27) hide show
  1. package/dist/.a4drules/skills/feature-graphql-graphql-data-access/SKILL.md +1 -1
  2. package/dist/.a4drules/skills/feature-micro-frontend-micro-frontend/SKILL.md +1 -1
  3. package/dist/.a4drules/skills/feature-react-agentforce-conversation-client-embedded-agent/SKILL.md +1 -1
  4. package/dist/.a4drules/skills/feature-react-chart-analytics-charts/SKILL.md +1 -1
  5. package/dist/.a4drules/webapp.md +0 -2
  6. package/dist/CHANGELOG.md +19 -0
  7. package/dist/force-app/main/default/webapplications/appreactsampleb2e/package.json +11 -4
  8. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/alert.tsx +61 -54
  9. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/button.tsx +57 -57
  10. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/card.tsx +86 -75
  11. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/dialog.tsx +129 -110
  12. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/field.tsx +208 -193
  13. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/index.ts +64 -64
  14. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/input.tsx +14 -14
  15. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/label.tsx +17 -14
  16. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/pagination.tsx +108 -88
  17. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/select.tsx +156 -146
  18. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/separator.tsx +19 -19
  19. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/skeleton.tsx +10 -10
  20. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/spinner.tsx +12 -11
  21. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/table.tsx +96 -69
  22. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components/ui/tabs.tsx +71 -61
  23. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/components.json +1 -1
  24. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/lib/utils.ts +3 -3
  25. package/dist/force-app/main/default/webapplications/appreactsampleb2e/src/styles/global.css +107 -107
  26. package/dist/package.json +1 -1
  27. package/package.json +1 -1
@@ -1,112 +1,132 @@
1
- import * as React from "react";
1
+ import * as React from 'react';
2
2
 
3
- import { cn } from "../../lib/utils";
4
- import { Button } from "./button";
5
- import { ChevronLeftIcon, ChevronRightIcon, MoreHorizontalIcon } from "lucide-react";
3
+ import { cn } from '../../lib/utils';
4
+ import { Button } from './button';
5
+ import {
6
+ ChevronLeftIcon,
7
+ ChevronRightIcon,
8
+ MoreHorizontalIcon,
9
+ } from 'lucide-react';
6
10
 
7
- function Pagination({ className, ...props }: React.ComponentProps<"nav">) {
8
- return (
9
- <nav
10
- role="navigation"
11
- aria-label="pagination"
12
- data-slot="pagination"
13
- className={cn("mx-auto flex w-full justify-center", className)}
14
- {...props}
15
- />
16
- );
11
+ function Pagination({ className, ...props }: React.ComponentProps<'nav'>) {
12
+ return (
13
+ <nav
14
+ role="navigation"
15
+ aria-label="pagination"
16
+ data-slot="pagination"
17
+ className={cn('mx-auto flex w-full justify-center', className)}
18
+ {...props}
19
+ />
20
+ );
17
21
  }
18
22
 
19
- function PaginationContent({ className, ...props }: React.ComponentProps<"ul">) {
20
- return (
21
- <ul
22
- data-slot="pagination-content"
23
- className={cn("gap-0.5 flex items-center", className)}
24
- {...props}
25
- />
26
- );
23
+ function PaginationContent({
24
+ className,
25
+ ...props
26
+ }: React.ComponentProps<'ul'>) {
27
+ return (
28
+ <ul
29
+ data-slot="pagination-content"
30
+ className={cn('gap-0.5 flex items-center', className)}
31
+ {...props}
32
+ />
33
+ );
27
34
  }
28
35
 
29
- function PaginationItem({ ...props }: React.ComponentProps<"li">) {
30
- return <li data-slot="pagination-item" {...props} />;
36
+ function PaginationItem({ ...props }: React.ComponentProps<'li'>) {
37
+ return <li data-slot="pagination-item" {...props} />;
31
38
  }
32
39
 
33
40
  type PaginationLinkProps = {
34
- isActive?: boolean;
35
- } & Pick<React.ComponentProps<typeof Button>, "size"> &
36
- React.ComponentProps<"a">;
41
+ isActive?: boolean;
42
+ } & Pick<React.ComponentProps<typeof Button>, 'size'> &
43
+ React.ComponentProps<'a'>;
37
44
 
38
- function PaginationLink({ className, isActive, size = "icon", ...props }: PaginationLinkProps) {
39
- return (
40
- <Button asChild variant={isActive ? "outline" : "ghost"} size={size} className={cn(className)}>
41
- <a
42
- aria-current={isActive ? "page" : undefined}
43
- data-slot="pagination-link"
44
- data-active={isActive}
45
- {...props}
46
- />
47
- </Button>
48
- );
45
+ function PaginationLink({
46
+ className,
47
+ isActive,
48
+ size = 'icon',
49
+ ...props
50
+ }: PaginationLinkProps) {
51
+ return (
52
+ <Button
53
+ asChild
54
+ variant={isActive ? 'outline' : 'ghost'}
55
+ size={size}
56
+ className={cn(className)}
57
+ >
58
+ <a
59
+ aria-current={isActive ? 'page' : undefined}
60
+ data-slot="pagination-link"
61
+ data-active={isActive}
62
+ {...props}
63
+ />
64
+ </Button>
65
+ );
49
66
  }
50
67
 
51
68
  function PaginationPrevious({
52
- className,
53
- text = "Previous",
54
- ...props
69
+ className,
70
+ text = 'Previous',
71
+ ...props
55
72
  }: React.ComponentProps<typeof PaginationLink> & { text?: string }) {
56
- return (
57
- <PaginationLink
58
- aria-label="Go to previous page"
59
- size="default"
60
- className={cn("pl-1.5!", className)}
61
- {...props}
62
- >
63
- <ChevronLeftIcon data-icon="inline-start" className="cn-rtl-flip" />
64
- <span className="hidden sm:block">{text}</span>
65
- </PaginationLink>
66
- );
73
+ return (
74
+ <PaginationLink
75
+ aria-label="Go to previous page"
76
+ size="default"
77
+ className={cn('pl-1.5!', className)}
78
+ {...props}
79
+ >
80
+ <ChevronLeftIcon data-icon="inline-start" className="cn-rtl-flip" />
81
+ <span className="hidden sm:block">{text}</span>
82
+ </PaginationLink>
83
+ );
67
84
  }
68
85
 
69
86
  function PaginationNext({
70
- className,
71
- text = "Next",
72
- ...props
87
+ className,
88
+ text = 'Next',
89
+ ...props
73
90
  }: React.ComponentProps<typeof PaginationLink> & { text?: string }) {
74
- return (
75
- <PaginationLink
76
- aria-label="Go to next page"
77
- size="default"
78
- className={cn("pr-1.5!", className)}
79
- {...props}
80
- >
81
- <span className="hidden sm:block">{text}</span>
82
- <ChevronRightIcon data-icon="inline-end" className="cn-rtl-flip" />
83
- </PaginationLink>
84
- );
91
+ return (
92
+ <PaginationLink
93
+ aria-label="Go to next page"
94
+ size="default"
95
+ className={cn('pr-1.5!', className)}
96
+ {...props}
97
+ >
98
+ <span className="hidden sm:block">{text}</span>
99
+ <ChevronRightIcon data-icon="inline-end" className="cn-rtl-flip" />
100
+ </PaginationLink>
101
+ );
85
102
  }
86
103
 
87
- function PaginationEllipsis({ className, ...props }: React.ComponentProps<"span">) {
88
- return (
89
- <span
90
- aria-hidden
91
- data-slot="pagination-ellipsis"
92
- className={cn(
93
- "size-8 [&_svg:not([class*='size-'])]:size-4 flex items-center justify-center",
94
- className,
95
- )}
96
- {...props}
97
- >
98
- <MoreHorizontalIcon />
99
- <span className="sr-only">More pages</span>
100
- </span>
101
- );
104
+ function PaginationEllipsis({
105
+ className,
106
+ ...props
107
+ }: React.ComponentProps<'span'>) {
108
+ return (
109
+ <span
110
+ aria-hidden
111
+ data-slot="pagination-ellipsis"
112
+ className={cn(
113
+ "size-8 [&_svg:not([class*='size-'])]:size-4 flex items-center justify-center",
114
+ className
115
+ )}
116
+ {...props}
117
+ >
118
+ <MoreHorizontalIcon />
119
+ <span className="sr-only">More pages</span>
120
+ </span>
121
+ );
102
122
  }
103
123
 
104
124
  export {
105
- Pagination,
106
- PaginationContent,
107
- PaginationEllipsis,
108
- PaginationItem,
109
- PaginationLink,
110
- PaginationNext,
111
- PaginationPrevious,
125
+ Pagination,
126
+ PaginationContent,
127
+ PaginationEllipsis,
128
+ PaginationItem,
129
+ PaginationLink,
130
+ PaginationNext,
131
+ PaginationPrevious,
112
132
  };
@@ -1,183 +1,193 @@
1
- import * as React from "react";
2
- import { Select as SelectPrimitive } from "radix-ui";
1
+ import * as React from 'react';
2
+ import { Select as SelectPrimitive } from 'radix-ui';
3
3
 
4
- import { cn } from "../../lib/utils";
5
- import { ChevronDownIcon, CheckIcon, ChevronUpIcon } from "lucide-react";
4
+ import { cn } from '../../lib/utils';
5
+ import { ChevronDownIcon, CheckIcon, ChevronUpIcon } from 'lucide-react';
6
6
 
7
- function Select({ ...props }: React.ComponentProps<typeof SelectPrimitive.Root>) {
8
- return <SelectPrimitive.Root data-slot="select" {...props} />;
7
+ function Select({
8
+ ...props
9
+ }: React.ComponentProps<typeof SelectPrimitive.Root>) {
10
+ return <SelectPrimitive.Root data-slot="select" {...props} />;
9
11
  }
10
12
 
11
- function SelectGroup({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Group>) {
12
- return (
13
- <SelectPrimitive.Group
14
- data-slot="select-group"
15
- className={cn("scroll-my-1 p-1", className)}
16
- {...props}
17
- />
18
- );
13
+ function SelectGroup({
14
+ className,
15
+ ...props
16
+ }: React.ComponentProps<typeof SelectPrimitive.Group>) {
17
+ return (
18
+ <SelectPrimitive.Group
19
+ data-slot="select-group"
20
+ className={cn('scroll-my-1 p-1', className)}
21
+ {...props}
22
+ />
23
+ );
19
24
  }
20
25
 
21
- function SelectValue({ ...props }: React.ComponentProps<typeof SelectPrimitive.Value>) {
22
- return <SelectPrimitive.Value data-slot="select-value" {...props} />;
26
+ function SelectValue({
27
+ ...props
28
+ }: React.ComponentProps<typeof SelectPrimitive.Value>) {
29
+ return <SelectPrimitive.Value data-slot="select-value" {...props} />;
23
30
  }
24
31
 
25
32
  function SelectTrigger({
26
- className,
27
- size = "default",
28
- children,
29
- ...props
33
+ className,
34
+ size = 'default',
35
+ children,
36
+ ...props
30
37
  }: React.ComponentProps<typeof SelectPrimitive.Trigger> & {
31
- size?: "sm" | "default";
38
+ size?: 'sm' | 'default';
32
39
  }) {
33
- return (
34
- <SelectPrimitive.Trigger
35
- data-slot="select-trigger"
36
- data-size={size}
37
- className={cn(
38
- "border-input data-placeholder:text-muted-foreground dark:bg-input/30 dark:hover:bg-input/50 focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 gap-1.5 rounded-lg border bg-transparent py-2 pr-2 pl-2.5 text-sm transition-colors select-none focus-visible:ring-3 aria-invalid:ring-3 data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] *:data-[slot=select-value]:gap-1.5 [&_svg:not([class*='size-'])]:size-4 flex w-fit items-center justify-between whitespace-nowrap outline-none disabled:cursor-not-allowed disabled:opacity-50 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center [&_svg]:pointer-events-none [&_svg]:shrink-0",
39
- className,
40
- )}
41
- {...props}
42
- >
43
- {children}
44
- <SelectPrimitive.Icon asChild>
45
- <ChevronDownIcon className="text-muted-foreground size-4 pointer-events-none" />
46
- </SelectPrimitive.Icon>
47
- </SelectPrimitive.Trigger>
48
- );
40
+ return (
41
+ <SelectPrimitive.Trigger
42
+ data-slot="select-trigger"
43
+ data-size={size}
44
+ className={cn(
45
+ "border-input data-placeholder:text-muted-foreground dark:bg-input/30 dark:hover:bg-input/50 focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 gap-1.5 rounded-lg border bg-transparent py-2 pr-2 pl-2.5 text-sm transition-colors select-none focus-visible:ring-3 aria-invalid:ring-3 data-[size=default]:h-8 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] *:data-[slot=select-value]:gap-1.5 [&_svg:not([class*='size-'])]:size-4 flex w-fit items-center justify-between whitespace-nowrap outline-none disabled:cursor-not-allowed disabled:opacity-50 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center [&_svg]:pointer-events-none [&_svg]:shrink-0",
46
+ className
47
+ )}
48
+ {...props}
49
+ >
50
+ {children}
51
+ <SelectPrimitive.Icon asChild>
52
+ <ChevronDownIcon className="text-muted-foreground size-4 pointer-events-none" />
53
+ </SelectPrimitive.Icon>
54
+ </SelectPrimitive.Trigger>
55
+ );
49
56
  }
50
57
 
51
58
  function SelectContent({
52
- className,
53
- children,
54
- position = "item-aligned",
55
- align = "center",
56
- ...props
59
+ className,
60
+ children,
61
+ position = 'item-aligned',
62
+ align = 'center',
63
+ ...props
57
64
  }: React.ComponentProps<typeof SelectPrimitive.Content>) {
58
- return (
59
- <SelectPrimitive.Portal>
60
- <SelectPrimitive.Content
61
- data-slot="select-content"
62
- data-align-trigger={position === "item-aligned"}
63
- className={cn(
64
- "bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 ring-foreground/10 min-w-36 rounded-lg shadow-md ring-1 duration-100 relative z-50 max-h-(--radix-select-content-available-height) origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto data-[align-trigger=true]:animate-none",
65
- position === "popper" &&
66
- "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
67
- className,
68
- )}
69
- position={position}
70
- align={align}
71
- {...props}
72
- >
73
- <SelectScrollUpButton />
74
- <SelectPrimitive.Viewport
75
- data-position={position}
76
- className={cn(
77
- "data-[position=popper]:h-(--radix-select-trigger-height) data-[position=popper]:w-full data-[position=popper]:min-w-(--radix-select-trigger-width)",
78
- position === "popper" && "",
79
- )}
80
- >
81
- {children}
82
- </SelectPrimitive.Viewport>
83
- <SelectScrollDownButton />
84
- </SelectPrimitive.Content>
85
- </SelectPrimitive.Portal>
86
- );
65
+ return (
66
+ <SelectPrimitive.Portal>
67
+ <SelectPrimitive.Content
68
+ data-slot="select-content"
69
+ data-align-trigger={position === 'item-aligned'}
70
+ className={cn(
71
+ 'bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 ring-foreground/10 min-w-36 rounded-lg shadow-md ring-1 duration-100 relative z-50 max-h-(--radix-select-content-available-height) origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto data-[align-trigger=true]:animate-none',
72
+ position === 'popper' &&
73
+ 'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1',
74
+ className
75
+ )}
76
+ position={position}
77
+ align={align}
78
+ {...props}
79
+ >
80
+ <SelectScrollUpButton />
81
+ <SelectPrimitive.Viewport
82
+ data-position={position}
83
+ className={cn(
84
+ 'data-[position=popper]:h-(--radix-select-trigger-height) data-[position=popper]:w-full data-[position=popper]:min-w-(--radix-select-trigger-width)',
85
+ position === 'popper' && ''
86
+ )}
87
+ >
88
+ {children}
89
+ </SelectPrimitive.Viewport>
90
+ <SelectScrollDownButton />
91
+ </SelectPrimitive.Content>
92
+ </SelectPrimitive.Portal>
93
+ );
87
94
  }
88
95
 
89
- function SelectLabel({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Label>) {
90
- return (
91
- <SelectPrimitive.Label
92
- data-slot="select-label"
93
- className={cn("text-muted-foreground px-1.5 py-1 text-xs", className)}
94
- {...props}
95
- />
96
- );
96
+ function SelectLabel({
97
+ className,
98
+ ...props
99
+ }: React.ComponentProps<typeof SelectPrimitive.Label>) {
100
+ return (
101
+ <SelectPrimitive.Label
102
+ data-slot="select-label"
103
+ className={cn('text-muted-foreground px-1.5 py-1 text-xs', className)}
104
+ {...props}
105
+ />
106
+ );
97
107
  }
98
108
 
99
109
  function SelectItem({
100
- className,
101
- children,
102
- ...props
110
+ className,
111
+ children,
112
+ ...props
103
113
  }: React.ComponentProps<typeof SelectPrimitive.Item>) {
104
- return (
105
- <SelectPrimitive.Item
106
- data-slot="select-item"
107
- className={cn(
108
- "focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2 relative flex w-full cursor-default items-center outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",
109
- className,
110
- )}
111
- {...props}
112
- >
113
- <span className="pointer-events-none absolute right-2 flex size-4 items-center justify-center">
114
- <SelectPrimitive.ItemIndicator>
115
- <CheckIcon className="pointer-events-none" />
116
- </SelectPrimitive.ItemIndicator>
117
- </span>
118
- <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>
119
- </SelectPrimitive.Item>
120
- );
114
+ return (
115
+ <SelectPrimitive.Item
116
+ data-slot="select-item"
117
+ className={cn(
118
+ "focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2 relative flex w-full cursor-default items-center outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",
119
+ className
120
+ )}
121
+ {...props}
122
+ >
123
+ <span className="pointer-events-none absolute right-2 flex size-4 items-center justify-center">
124
+ <SelectPrimitive.ItemIndicator>
125
+ <CheckIcon className="pointer-events-none" />
126
+ </SelectPrimitive.ItemIndicator>
127
+ </span>
128
+ <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>
129
+ </SelectPrimitive.Item>
130
+ );
121
131
  }
122
132
 
123
133
  function SelectSeparator({
124
- className,
125
- ...props
134
+ className,
135
+ ...props
126
136
  }: React.ComponentProps<typeof SelectPrimitive.Separator>) {
127
- return (
128
- <SelectPrimitive.Separator
129
- data-slot="select-separator"
130
- className={cn("bg-border -mx-1 my-1 h-px pointer-events-none", className)}
131
- {...props}
132
- />
133
- );
137
+ return (
138
+ <SelectPrimitive.Separator
139
+ data-slot="select-separator"
140
+ className={cn('bg-border -mx-1 my-1 h-px pointer-events-none', className)}
141
+ {...props}
142
+ />
143
+ );
134
144
  }
135
145
 
136
146
  function SelectScrollUpButton({
137
- className,
138
- ...props
147
+ className,
148
+ ...props
139
149
  }: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>) {
140
- return (
141
- <SelectPrimitive.ScrollUpButton
142
- data-slot="select-scroll-up-button"
143
- className={cn(
144
- "bg-popover z-10 flex cursor-default items-center justify-center py-1 [&_svg:not([class*='size-'])]:size-4",
145
- className,
146
- )}
147
- {...props}
148
- >
149
- <ChevronUpIcon />
150
- </SelectPrimitive.ScrollUpButton>
151
- );
150
+ return (
151
+ <SelectPrimitive.ScrollUpButton
152
+ data-slot="select-scroll-up-button"
153
+ className={cn(
154
+ "bg-popover z-10 flex cursor-default items-center justify-center py-1 [&_svg:not([class*='size-'])]:size-4",
155
+ className
156
+ )}
157
+ {...props}
158
+ >
159
+ <ChevronUpIcon />
160
+ </SelectPrimitive.ScrollUpButton>
161
+ );
152
162
  }
153
163
 
154
164
  function SelectScrollDownButton({
155
- className,
156
- ...props
165
+ className,
166
+ ...props
157
167
  }: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>) {
158
- return (
159
- <SelectPrimitive.ScrollDownButton
160
- data-slot="select-scroll-down-button"
161
- className={cn(
162
- "bg-popover z-10 flex cursor-default items-center justify-center py-1 [&_svg:not([class*='size-'])]:size-4",
163
- className,
164
- )}
165
- {...props}
166
- >
167
- <ChevronDownIcon />
168
- </SelectPrimitive.ScrollDownButton>
169
- );
168
+ return (
169
+ <SelectPrimitive.ScrollDownButton
170
+ data-slot="select-scroll-down-button"
171
+ className={cn(
172
+ "bg-popover z-10 flex cursor-default items-center justify-center py-1 [&_svg:not([class*='size-'])]:size-4",
173
+ className
174
+ )}
175
+ {...props}
176
+ >
177
+ <ChevronDownIcon />
178
+ </SelectPrimitive.ScrollDownButton>
179
+ );
170
180
  }
171
181
 
172
182
  export {
173
- Select,
174
- SelectContent,
175
- SelectGroup,
176
- SelectItem,
177
- SelectLabel,
178
- SelectScrollDownButton,
179
- SelectScrollUpButton,
180
- SelectSeparator,
181
- SelectTrigger,
182
- SelectValue,
183
+ Select,
184
+ SelectContent,
185
+ SelectGroup,
186
+ SelectItem,
187
+ SelectLabel,
188
+ SelectScrollDownButton,
189
+ SelectScrollUpButton,
190
+ SelectSeparator,
191
+ SelectTrigger,
192
+ SelectValue,
183
193
  };
@@ -1,26 +1,26 @@
1
- import * as React from "react";
2
- import { Separator as SeparatorPrimitive } from "radix-ui";
1
+ import * as React from 'react';
2
+ import { Separator as SeparatorPrimitive } from 'radix-ui';
3
3
 
4
- import { cn } from "../../lib/utils";
4
+ import { cn } from '../../lib/utils';
5
5
 
6
6
  function Separator({
7
- className,
8
- orientation = "horizontal",
9
- decorative = true,
10
- ...props
7
+ className,
8
+ orientation = 'horizontal',
9
+ decorative = true,
10
+ ...props
11
11
  }: React.ComponentProps<typeof SeparatorPrimitive.Root>) {
12
- return (
13
- <SeparatorPrimitive.Root
14
- data-slot="separator"
15
- decorative={decorative}
16
- orientation={orientation}
17
- className={cn(
18
- "bg-border shrink-0 data-horizontal:h-px data-horizontal:w-full data-vertical:w-px data-vertical:self-stretch",
19
- className,
20
- )}
21
- {...props}
22
- />
23
- );
12
+ return (
13
+ <SeparatorPrimitive.Root
14
+ data-slot="separator"
15
+ decorative={decorative}
16
+ orientation={orientation}
17
+ className={cn(
18
+ 'bg-border shrink-0 data-horizontal:h-px data-horizontal:w-full data-vertical:w-px data-vertical:self-stretch',
19
+ className
20
+ )}
21
+ {...props}
22
+ />
23
+ );
24
24
  }
25
25
 
26
26
  export { Separator };
@@ -1,14 +1,14 @@
1
- import * as React from "react";
2
- import { cn } from "../../lib/utils";
1
+ import * as React from 'react';
2
+ import { cn } from '../../lib/utils';
3
3
 
4
- function Skeleton({ className, ...props }: React.ComponentProps<"div">) {
5
- return (
6
- <div
7
- data-slot="skeleton"
8
- className={cn("bg-accent animate-pulse rounded-md", className)}
9
- {...props}
10
- />
11
- );
4
+ function Skeleton({ className, ...props }: React.ComponentProps<'div'>) {
5
+ return (
6
+ <div
7
+ data-slot="skeleton"
8
+ className={cn('bg-accent animate-pulse rounded-md', className)}
9
+ {...props}
10
+ />
11
+ );
12
12
  }
13
13
 
14
14
  export { Skeleton };