periplo-ui 3.18.0 → 3.19.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.
@@ -18,6 +18,7 @@ interface Option {
18
18
  interface Props {
19
19
  onValueChange?: (value: string) => void;
20
20
  defaultValue?: string;
21
+ value?: string;
21
22
  placeholder?: string;
22
23
  options: Array<Option>;
23
24
  className?: string;
@@ -26,4 +27,4 @@ interface Props {
26
27
  id?: string;
27
28
  onKeyDown?: (event: React.KeyboardEvent<HTMLButtonElement>) => void;
28
29
  }
29
- export declare function Select({ onValueChange, defaultValue, options, placeholder, className, disabled, error, id, onKeyDown, ...props }: Readonly<Props>): import("react/jsx-runtime").JSX.Element;
30
+ export declare function Select({ onValueChange, defaultValue, value, options, placeholder, className, disabled, error, id, onKeyDown, ...props }: Readonly<Props>): import("react/jsx-runtime").JSX.Element;
@@ -1,9 +1,9 @@
1
1
  import { jsxs, jsx } from 'react/jsx-runtime';
2
+ import { CaretDown, CaretUp, Check } from '@phosphor-icons/react/dist/ssr';
2
3
  import * as SelectPrimitive from '@radix-ui/react-select';
3
4
  import * as React from 'react';
4
- import { cn } from '../../lib/utils.js';
5
- import { CaretDown, CaretUp, Check } from '@phosphor-icons/react/dist/ssr';
6
5
  import { buttonVariants } from '../Button/Button.js';
6
+ import { cn } from '../../lib/utils.js';
7
7
 
8
8
  const SelectRoot = SelectPrimitive.Root;
9
9
  const SelectGroup = SelectPrimitive.Group;
@@ -84,6 +84,7 @@ SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
84
84
  function Select({
85
85
  onValueChange,
86
86
  defaultValue,
87
+ value,
87
88
  options,
88
89
  placeholder,
89
90
  className,
@@ -94,24 +95,34 @@ function Select({
94
95
  ...props
95
96
  }) {
96
97
  return /* @__PURE__ */ jsxs("div", { className: "flex w-full flex-col gap-1", children: [
97
- /* @__PURE__ */ jsxs(SelectRoot, { ...props, onValueChange, defaultValue, disabled, children: [
98
- /* @__PURE__ */ jsx(
99
- SelectTrigger,
100
- {
101
- id,
102
- onKeyDown,
103
- "aria-invalid": error ? "true" : "false",
104
- className: cn(
105
- buttonVariants({ variant: "input" }),
106
- "flex justify-between",
107
- error && "border-none ring-1 ring-error-400 focus-within:ring-error-700",
108
- className
98
+ /* @__PURE__ */ jsxs(
99
+ SelectRoot,
100
+ {
101
+ ...props,
102
+ onValueChange,
103
+ value,
104
+ defaultValue,
105
+ disabled,
106
+ children: [
107
+ /* @__PURE__ */ jsx(
108
+ SelectTrigger,
109
+ {
110
+ id,
111
+ onKeyDown,
112
+ "aria-invalid": error ? "true" : "false",
113
+ className: cn(
114
+ buttonVariants({ variant: "input" }),
115
+ "flex justify-between",
116
+ error && "border-none ring-1 ring-error-400 focus-within:ring-error-700",
117
+ className
118
+ ),
119
+ children: /* @__PURE__ */ jsx(SelectValue, { placeholder })
120
+ }
109
121
  ),
110
- children: /* @__PURE__ */ jsx(SelectValue, { placeholder })
111
- }
112
- ),
113
- /* @__PURE__ */ jsx(SelectContent, { children: options.map((option) => /* @__PURE__ */ jsx(SelectItem, { value: option.value, "data-testid": option.value, children: option.label }, option.value)) })
114
- ] }),
122
+ /* @__PURE__ */ jsx(SelectContent, { children: options.map((option) => /* @__PURE__ */ jsx(SelectItem, { value: option.value, "data-testid": option.value, children: option.label }, option.value)) })
123
+ ]
124
+ }
125
+ ),
115
126
  typeof error === "string" && /* @__PURE__ */ jsx("span", { className: "text-sm text-error-500", children: error })
116
127
  ] });
117
128
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import * as SelectPrimitive from '@radix-ui/react-select'\nimport * as React from 'react'\n\nimport { cn } from '@/lib/utils'\nimport { CaretDown, CaretUp, Check } from '@phosphor-icons/react/dist/ssr'\nimport { buttonVariants } from '../Button'\n\nconst SelectRoot = SelectPrimitive.Root\n\nconst SelectGroup = SelectPrimitive.Group\n\nconst SelectValue = SelectPrimitive.Value\n\nconst SelectTrigger = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Trigger ref={ref} className={className} {...props}>\n {children}\n <SelectPrimitive.Icon asChild>\n <CaretDown className=\"h-4 w-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n))\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName\n\nconst SelectScrollUpButton = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.ScrollUpButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollUpButton\n ref={ref}\n className={cn('flex cursor-default items-center justify-center py-1', className)}\n {...props}\n >\n <CaretUp className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollUpButton>\n))\nSelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName\n\nconst SelectScrollDownButton = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.ScrollDownButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollDownButton\n ref={ref}\n className={cn('flex cursor-default items-center justify-center py-1', className)}\n {...props}\n >\n <CaretDown className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollDownButton>\n))\nSelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName\n\nconst SelectContent = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\n>(({ className, children, position = 'popper', ...props }, ref) => (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n ref={ref}\n className={cn(\n 'relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-[#fff] text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=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',\n position === 'popper' &&\n 'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1',\n className,\n )}\n position={position}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n 'p-1',\n position === 'popper' &&\n 'h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]',\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n))\nSelectContent.displayName = SelectPrimitive.Content.displayName\n\nconst SelectLabel = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Label ref={ref} className={cn('py-1.5 pl-8 pr-2 text-sm font-semibold', className)} {...props} />\n))\nSelectLabel.displayName = SelectPrimitive.Label.displayName\n\nconst SelectItem = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Item\n ref={ref}\n className={cn(\n 'relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-neutral-100 focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <Check className=\"h-4 w-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n))\nSelectItem.displayName = SelectPrimitive.Item.displayName\n\nconst SelectSeparator = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Separator ref={ref} className={cn('bg-muted -mx-1 my-1 h-px', className)} {...props} />\n))\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName\n\nexport {\n SelectRoot,\n SelectGroup,\n SelectValue,\n SelectTrigger,\n SelectContent,\n SelectLabel,\n SelectItem,\n SelectSeparator,\n SelectScrollUpButton,\n SelectScrollDownButton,\n}\ninterface Option {\n value: string\n label: React.ReactElement | string | number\n}\ninterface Props {\n onValueChange?: (value: string) => void\n defaultValue?: string\n placeholder?: string\n options: Array<Option>\n className?: string\n disabled?: boolean\n error?: boolean | string\n id?: string\n onKeyDown?: (event: React.KeyboardEvent<HTMLButtonElement>) => void\n}\n\nexport function Select({\n onValueChange,\n defaultValue,\n options,\n placeholder,\n className,\n disabled = false,\n error,\n id,\n onKeyDown,\n ...props\n}: Readonly<Props>) {\n return (\n <div className=\"flex w-full flex-col gap-1\">\n <SelectRoot {...props} onValueChange={onValueChange} defaultValue={defaultValue} disabled={disabled}>\n <SelectTrigger\n id={id}\n onKeyDown={onKeyDown}\n aria-invalid={error ? 'true' : 'false'}\n className={cn(\n buttonVariants({ variant: 'input' }),\n 'flex justify-between',\n error && 'border-none ring-1 ring-error-400 focus-within:ring-error-700',\n className,\n )}\n >\n <SelectValue placeholder={placeholder} />\n </SelectTrigger>\n <SelectContent>\n {options.map((option) => (\n <SelectItem key={option.value} value={option.value} data-testid={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </SelectRoot>\n {typeof error === 'string' && <span className=\"text-sm text-error-500\">{error}</span>}\n </div>\n )\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sources":["../../../src/components/Select/Select.tsx"],"sourcesContent":["import { CaretDown, CaretUp, Check } from '@phosphor-icons/react/dist/ssr'\nimport * as SelectPrimitive from '@radix-ui/react-select'\nimport * as React from 'react'\n\nimport { buttonVariants } from '../Button'\n\nimport { cn } from '@/lib/utils'\n\nconst SelectRoot = SelectPrimitive.Root\n\nconst SelectGroup = SelectPrimitive.Group\n\nconst SelectValue = SelectPrimitive.Value\n\nconst SelectTrigger = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Trigger ref={ref} className={className} {...props}>\n {children}\n <SelectPrimitive.Icon asChild>\n <CaretDown className=\"h-4 w-4 opacity-50\" />\n </SelectPrimitive.Icon>\n </SelectPrimitive.Trigger>\n))\nSelectTrigger.displayName = SelectPrimitive.Trigger.displayName\n\nconst SelectScrollUpButton = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.ScrollUpButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollUpButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollUpButton\n ref={ref}\n className={cn('flex cursor-default items-center justify-center py-1', className)}\n {...props}\n >\n <CaretUp className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollUpButton>\n))\nSelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName\n\nconst SelectScrollDownButton = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.ScrollDownButton>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.ScrollDownButton>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.ScrollDownButton\n ref={ref}\n className={cn('flex cursor-default items-center justify-center py-1', className)}\n {...props}\n >\n <CaretDown className=\"h-4 w-4\" />\n </SelectPrimitive.ScrollDownButton>\n))\nSelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName\n\nconst SelectContent = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Content>\n>(({ className, children, position = 'popper', ...props }, ref) => (\n <SelectPrimitive.Portal>\n <SelectPrimitive.Content\n ref={ref}\n className={cn(\n 'relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-[#fff] text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=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',\n position === 'popper' &&\n 'data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1',\n className,\n )}\n position={position}\n {...props}\n >\n <SelectScrollUpButton />\n <SelectPrimitive.Viewport\n className={cn(\n 'p-1',\n position === 'popper' &&\n 'h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]',\n )}\n >\n {children}\n </SelectPrimitive.Viewport>\n <SelectScrollDownButton />\n </SelectPrimitive.Content>\n </SelectPrimitive.Portal>\n))\nSelectContent.displayName = SelectPrimitive.Content.displayName\n\nconst SelectLabel = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Label>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Label>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Label ref={ref} className={cn('py-1.5 pl-8 pr-2 text-sm font-semibold', className)} {...props} />\n))\nSelectLabel.displayName = SelectPrimitive.Label.displayName\n\nconst SelectItem = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Item>\n>(({ className, children, ...props }, ref) => (\n <SelectPrimitive.Item\n ref={ref}\n className={cn(\n 'relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none focus:bg-neutral-100 focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50',\n className,\n )}\n {...props}\n >\n <span className=\"absolute left-2 flex h-3.5 w-3.5 items-center justify-center\">\n <SelectPrimitive.ItemIndicator>\n <Check className=\"h-4 w-4\" />\n </SelectPrimitive.ItemIndicator>\n </span>\n\n <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>\n </SelectPrimitive.Item>\n))\nSelectItem.displayName = SelectPrimitive.Item.displayName\n\nconst SelectSeparator = React.forwardRef<\n React.ComponentRef<typeof SelectPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof SelectPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <SelectPrimitive.Separator ref={ref} className={cn('bg-muted -mx-1 my-1 h-px', className)} {...props} />\n))\nSelectSeparator.displayName = SelectPrimitive.Separator.displayName\n\nexport {\n SelectRoot,\n SelectGroup,\n SelectValue,\n SelectTrigger,\n SelectContent,\n SelectLabel,\n SelectItem,\n SelectSeparator,\n SelectScrollUpButton,\n SelectScrollDownButton,\n}\ninterface Option {\n value: string\n label: React.ReactElement | string | number\n}\ninterface Props {\n onValueChange?: (value: string) => void\n defaultValue?: string\n value?: string\n placeholder?: string\n options: Array<Option>\n className?: string\n disabled?: boolean\n error?: boolean | string\n id?: string\n onKeyDown?: (event: React.KeyboardEvent<HTMLButtonElement>) => void\n}\n\nexport function Select({\n onValueChange,\n defaultValue,\n value,\n options,\n placeholder,\n className,\n disabled = false,\n error,\n id,\n onKeyDown,\n ...props\n}: Readonly<Props>) {\n return (\n <div className=\"flex w-full flex-col gap-1\">\n <SelectRoot\n {...props}\n onValueChange={onValueChange}\n value={value}\n defaultValue={defaultValue}\n disabled={disabled}\n >\n <SelectTrigger\n id={id}\n onKeyDown={onKeyDown}\n aria-invalid={error ? 'true' : 'false'}\n className={cn(\n buttonVariants({ variant: 'input' }),\n 'flex justify-between',\n error && 'border-none ring-1 ring-error-400 focus-within:ring-error-700',\n className,\n )}\n >\n <SelectValue placeholder={placeholder} />\n </SelectTrigger>\n <SelectContent>\n {options.map((option) => (\n <SelectItem key={option.value} value={option.value} data-testid={option.value}>\n {option.label}\n </SelectItem>\n ))}\n </SelectContent>\n </SelectRoot>\n {typeof error === 'string' && <span className=\"text-sm text-error-500\">{error}</span>}\n </div>\n )\n}\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "periplo-ui",
3
3
  "description": "IATI UI library",
4
4
  "private": false,
5
- "version": "3.18.0",
5
+ "version": "3.19.0",
6
6
  "type": "module",
7
7
  "main": "dist/index.js",
8
8
  "types": "dist/index.d.ts",