@process.co/ui 0.0.7 → 0.0.8

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/dist/index.d.cts CHANGED
@@ -1,7 +1,8 @@
1
1
  import * as class_variance_authority_types from 'class-variance-authority/types';
2
2
  import * as React from 'react';
3
3
  import { VariantProps } from 'class-variance-authority';
4
- export { i as fields } from './index-_mVyhd0I.cjs';
4
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
5
+ export { i as fields } from './index-yubVl0hX.cjs';
5
6
 
6
7
  declare const buttonVariants: (props?: ({
7
8
  variant?: "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | null | undefined;
@@ -11,4 +12,32 @@ declare function Button({ className, variant, size, asChild, ...props }: React.C
11
12
  asChild?: boolean;
12
13
  }): React.JSX.Element;
13
14
 
14
- export { Button, buttonVariants };
15
+ declare function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): React.JSX.Element;
16
+ declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): React.JSX.Element;
17
+ declare function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): React.JSX.Element;
18
+ declare function DropdownMenuContent({ className, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): React.JSX.Element;
19
+ declare function DropdownMenuClose({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item>): React.JSX.Element;
20
+ declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): React.JSX.Element;
21
+ declare function ConfirmationDropdownMenuItem({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
22
+ inset?: boolean;
23
+ variant?: "default" | "destructive";
24
+ }): React.JSX.Element;
25
+ declare function DropdownMenuItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
26
+ inset?: boolean;
27
+ variant?: "default" | "destructive";
28
+ }): React.JSX.Element;
29
+ declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): React.JSX.Element;
30
+ declare function DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): React.JSX.Element;
31
+ declare function DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): React.JSX.Element;
32
+ declare function DropdownMenuLabel({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
33
+ inset?: boolean;
34
+ }): React.JSX.Element;
35
+ declare function DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>): React.JSX.Element;
36
+ declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<"span">): React.JSX.Element;
37
+ declare function DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>): React.JSX.Element;
38
+ declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
39
+ inset?: boolean;
40
+ }): React.JSX.Element;
41
+ declare function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): React.JSX.Element;
42
+
43
+ export { Button, ConfirmationDropdownMenuItem, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuClose, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, buttonVariants };
package/dist/index.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  import * as class_variance_authority_types from 'class-variance-authority/types';
2
2
  import * as React from 'react';
3
3
  import { VariantProps } from 'class-variance-authority';
4
- export { i as fields } from './index-_mVyhd0I.js';
4
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
5
+ export { i as fields } from './index-yubVl0hX.js';
5
6
 
6
7
  declare const buttonVariants: (props?: ({
7
8
  variant?: "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | null | undefined;
@@ -11,4 +12,32 @@ declare function Button({ className, variant, size, asChild, ...props }: React.C
11
12
  asChild?: boolean;
12
13
  }): React.JSX.Element;
13
14
 
14
- export { Button, buttonVariants };
15
+ declare function DropdownMenu({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Root>): React.JSX.Element;
16
+ declare function DropdownMenuPortal({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Portal>): React.JSX.Element;
17
+ declare function DropdownMenuTrigger({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Trigger>): React.JSX.Element;
18
+ declare function DropdownMenuContent({ className, sideOffset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Content>): React.JSX.Element;
19
+ declare function DropdownMenuClose({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item>): React.JSX.Element;
20
+ declare function DropdownMenuGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Group>): React.JSX.Element;
21
+ declare function ConfirmationDropdownMenuItem({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
22
+ inset?: boolean;
23
+ variant?: "default" | "destructive";
24
+ }): React.JSX.Element;
25
+ declare function DropdownMenuItem({ className, inset, variant, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Item> & {
26
+ inset?: boolean;
27
+ variant?: "default" | "destructive";
28
+ }): React.JSX.Element;
29
+ declare function DropdownMenuCheckboxItem({ className, children, checked, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.CheckboxItem>): React.JSX.Element;
30
+ declare function DropdownMenuRadioGroup({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioGroup>): React.JSX.Element;
31
+ declare function DropdownMenuRadioItem({ className, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.RadioItem>): React.JSX.Element;
32
+ declare function DropdownMenuLabel({ className, inset, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Label> & {
33
+ inset?: boolean;
34
+ }): React.JSX.Element;
35
+ declare function DropdownMenuSeparator({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Separator>): React.JSX.Element;
36
+ declare function DropdownMenuShortcut({ className, ...props }: React.ComponentProps<"span">): React.JSX.Element;
37
+ declare function DropdownMenuSub({ ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.Sub>): React.JSX.Element;
38
+ declare function DropdownMenuSubTrigger({ className, inset, children, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubTrigger> & {
39
+ inset?: boolean;
40
+ }): React.JSX.Element;
41
+ declare function DropdownMenuSubContent({ className, ...props }: React.ComponentProps<typeof DropdownMenuPrimitive.SubContent>): React.JSX.Element;
42
+
43
+ export { Button, ConfirmationDropdownMenuItem, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuClose, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, buttonVariants };
package/dist/index.js CHANGED
@@ -22,6 +22,20 @@ function _define_property(obj, key, value) {
22
22
  }
23
23
  return obj;
24
24
  }
25
+ function _extends() {
26
+ _extends = Object.assign || function(target) {
27
+ for(var i = 1; i < arguments.length; i++){
28
+ var source = arguments[i];
29
+ for(var key in source){
30
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
31
+ target[key] = source[key];
32
+ }
33
+ }
34
+ }
35
+ return target;
36
+ };
37
+ return _extends.apply(this, arguments);
38
+ }
25
39
  function _iterable_to_array(iter) {
26
40
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
27
41
  }
@@ -55,6 +69,10 @@ function _non_iterable_rest() {
55
69
  function _non_iterable_spread() {
56
70
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
57
71
  }
72
+ function _object_destructuring_empty(o) {
73
+ if (o === null || o === void 0) throw new TypeError("Cannot destructure " + o);
74
+ return o;
75
+ }
58
76
  function _object_spread(target) {
59
77
  for(var i = 1; i < arguments.length; i++){
60
78
  var source = arguments[i] != null ? arguments[i] : {};
@@ -70,6 +88,30 @@ function _object_spread(target) {
70
88
  }
71
89
  return target;
72
90
  }
91
+ function ownKeys(object, enumerableOnly) {
92
+ var keys = Object.keys(object);
93
+ if (Object.getOwnPropertySymbols) {
94
+ var symbols = Object.getOwnPropertySymbols(object);
95
+ if (enumerableOnly) {
96
+ symbols = symbols.filter(function(sym) {
97
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
98
+ });
99
+ }
100
+ keys.push.apply(keys, symbols);
101
+ }
102
+ return keys;
103
+ }
104
+ function _object_spread_props(target, source) {
105
+ source = source != null ? source : {};
106
+ if (Object.getOwnPropertyDescriptors) {
107
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
108
+ } else {
109
+ ownKeys(Object(source)).forEach(function(key) {
110
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
111
+ });
112
+ }
113
+ return target;
114
+ }
73
115
  function _object_without_properties(source, excluded) {
74
116
  if (source == null) return {};
75
117
  var target = _object_without_properties_loose(source, excluded);
@@ -115,9 +157,11 @@ function _unsupported_iterable_to_array(o, minLen) {
115
157
  if (n === "Map" || n === "Set") return Array.from(n);
116
158
  if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
117
159
  }
118
- import * as React4 from 'react';
160
+ import * as React3 from 'react';
119
161
  import { createContext, useContext } from 'react';
120
162
  import { Slot } from '@radix-ui/react-slot';
163
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
164
+ import { CheckIcon, CircleIcon, ChevronRightIcon } from 'lucide-react';
121
165
  var __defProp = Object.defineProperty;
122
166
  var __export = function(target, all) {
123
167
  for(var name in all)__defProp(target, name, {
@@ -4843,7 +4887,7 @@ function Button(_param) {
4843
4887
  "asChild"
4844
4888
  ]);
4845
4889
  var Comp = asChild ? Slot : "button";
4846
- return /* @__PURE__ */ React4.createElement(Comp, _object_spread({
4890
+ return /* @__PURE__ */ React3.createElement(Comp, _object_spread({
4847
4891
  "data-slot": "button",
4848
4892
  className: cn(buttonVariants({
4849
4893
  variant: variant,
@@ -4852,12 +4896,193 @@ function Button(_param) {
4852
4896
  }))
4853
4897
  }, props));
4854
4898
  }
4899
+ function DropdownMenu(_param) {
4900
+ var props = _extends({}, _object_destructuring_empty(_param));
4901
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Root, _object_spread({
4902
+ "data-slot": "dropdown-menu"
4903
+ }, props));
4904
+ }
4905
+ function DropdownMenuPortal(_param) {
4906
+ var props = _extends({}, _object_destructuring_empty(_param));
4907
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Portal, _object_spread({
4908
+ "data-slot": "dropdown-menu-portal"
4909
+ }, props));
4910
+ }
4911
+ function DropdownMenuTrigger(_param) {
4912
+ var props = _extends({}, _object_destructuring_empty(_param));
4913
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Trigger, _object_spread({
4914
+ "data-slot": "dropdown-menu-trigger"
4915
+ }, props));
4916
+ }
4917
+ function DropdownMenuContent(_param) {
4918
+ var className = _param.className, _param_sideOffset = _param.sideOffset, sideOffset = _param_sideOffset === void 0 ? 4 : _param_sideOffset, props = _object_without_properties(_param, [
4919
+ "className",
4920
+ "sideOffset"
4921
+ ]);
4922
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Portal, null, /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Content, _object_spread({
4923
+ "data-slot": "dropdown-menu-content",
4924
+ sideOffset: sideOffset,
4925
+ className: cn("uii:bg-popover uii:text-popover-foreground uii:data-[state=open]:animate-in uii:data-[state=closed]:animate-out uii:data-[state=closed]:fade-out-0 uii:data-[state=open]:fade-in-0 uii:data-[state=closed]:zoom-out-95 uii:data-[state=open]:zoom-in-95 uii:data-[side=bottom]:slide-in-from-top-2 uii:data-[side=left]:slide-in-from-right-2 uii:data-[side=right]:slide-in-from-left-2 uii:data-[side=top]:slide-in-from-bottom-2 uii:z-50 uii:min-w-[8rem] uii:overflow-hidden uii:rounded-md uii:border uii:p-1 uii:shadow-md", className)
4926
+ }, props)));
4927
+ }
4928
+ function DropdownMenuClose(_param) {
4929
+ var className = _param.className, props = _object_without_properties(_param, [
4930
+ "className"
4931
+ ]);
4932
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Item, _object_spread({
4933
+ "data-slot": "dropdown-menu-close",
4934
+ className: "hidden"
4935
+ }, props));
4936
+ }
4937
+ function DropdownMenuGroup(_param) {
4938
+ var props = _extends({}, _object_destructuring_empty(_param));
4939
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Group, _object_spread({
4940
+ "data-slot": "dropdown-menu-group"
4941
+ }, props));
4942
+ }
4943
+ function ConfirmationDropdownMenuItem(_param) {
4944
+ var props = _extends({}, _object_destructuring_empty(_param));
4945
+ var originalOnClick = props.onClick, rest = _object_without_properties(props, [
4946
+ "onClick"
4947
+ ]);
4948
+ var _React3_useState = _sliced_to_array(React3.useState(false), 2), isConfirming = _React3_useState[0], setIsConfirming = _React3_useState[1];
4949
+ return !isConfirming ? /* @__PURE__ */ React3.createElement(DropdownMenuItem, _object_spread_props(_object_spread({}, rest), {
4950
+ onClick: function(e) {
4951
+ setIsConfirming(true);
4952
+ e.preventDefault();
4953
+ e.stopPropagation();
4954
+ }
4955
+ })) : /* @__PURE__ */ React3.createElement(DropdownMenuItem, _object_spread_props(_object_spread({}, rest), {
4956
+ onClick: function(e) {
4957
+ if (originalOnClick) {
4958
+ setIsConfirming(false);
4959
+ originalOnClick(e);
4960
+ e.preventDefault();
4961
+ e.stopPropagation();
4962
+ }
4963
+ }
4964
+ }), /* @__PURE__ */ React3.createElement("div", {
4965
+ className: "flex flex-row gap-2 items-center"
4966
+ }, /* @__PURE__ */ React3.createElement("div", {
4967
+ className: "text-destructive"
4968
+ }, "Are you sure ?")));
4969
+ }
4970
+ function DropdownMenuItem(_param) {
4971
+ var className = _param.className, inset = _param.inset, _param_variant = _param.variant, variant = _param_variant === void 0 ? "default" : _param_variant, props = _object_without_properties(_param, [
4972
+ "className",
4973
+ "inset",
4974
+ "variant"
4975
+ ]);
4976
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Item, _object_spread({
4977
+ "data-slot": "dropdown-menu-item",
4978
+ "data-inset": inset,
4979
+ "data-variant": variant,
4980
+ className: cn("uii:cursor-pointer uii:focus:bg-accent uii:focus:text-accent-foreground uii:data-[variant=destructive]:text-destructive-foreground uii:data-[variant=destructive]:focus:bg-destructive/10 uii:dark:data-[variant=destructive]:focus:bg-destructive/40 uii:data-[variant=destructive]:focus:text-destructive-foreground uii:data-[variant=destructive]:*:[svg]:!text-destructive-foreground uii:[&_svg:not([class*=text-])]:text-muted-foreground uii:relative uii:flex uii:cursor-default uii:items-center uii:gap-2 uii:rounded-sm uii:px-2 uii:py-1.5 uii:text-sm uii:outline-hidden uii:select-none uii:data-[disabled]:pointer-events-none uii:data-[disabled]:opacity-50 uii:data-[inset]:pl-8 uii:[&_svg]:pointer-events-none uii:[&_svg]:shrink-0 uii:[&_svg:not([class*=size-])]:size-4", className)
4981
+ }, props));
4982
+ }
4983
+ function DropdownMenuCheckboxItem(_param) {
4984
+ var className = _param.className, children = _param.children, checked = _param.checked, props = _object_without_properties(_param, [
4985
+ "className",
4986
+ "children",
4987
+ "checked"
4988
+ ]);
4989
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.CheckboxItem, _object_spread({
4990
+ "data-slot": "dropdown-menu-checkbox-item",
4991
+ className: cn("uii:focus:bg-accent uii:focus:text-accent-foreground uii:relative uii:flex uii:cursor-default uii:items-center uii:gap-2 uii:rounded-sm uii:py-1.5 uii:pr-2 uii:pl-8 uii:text-sm uii:outline-hidden uii:select-none uii:data-[disabled]:pointer-events-none uii:data-[disabled]:opacity-50 uii:[&_svg]:pointer-events-none uii:[&_svg]:shrink-0 uii:[&_svg:not([class*=size-])]:size-4", className),
4992
+ checked: checked
4993
+ }, props), /* @__PURE__ */ React3.createElement("span", {
4994
+ className: "uii:pointer-events-none uii:absolute uii:left-2 uii:flex uii:size-3.5 uii:items-center uii:justify-center"
4995
+ }, /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.ItemIndicator, null, /* @__PURE__ */ React3.createElement(CheckIcon, {
4996
+ className: "uii:size-4"
4997
+ }))), children);
4998
+ }
4999
+ function DropdownMenuRadioGroup(_param) {
5000
+ var props = _extends({}, _object_destructuring_empty(_param));
5001
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.RadioGroup, _object_spread({
5002
+ "data-slot": "dropdown-menu-radio-group"
5003
+ }, props));
5004
+ }
5005
+ function DropdownMenuRadioItem(_param) {
5006
+ var className = _param.className, children = _param.children, props = _object_without_properties(_param, [
5007
+ "className",
5008
+ "children"
5009
+ ]);
5010
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.RadioItem, _object_spread({
5011
+ "data-slot": "dropdown-menu-radio-item",
5012
+ className: cn("uii:focus:bg-accent uii:focus:text-accent-foreground uii:relative uii:flex uii:cursor-default uii:items-center uii:gap-2 uii:rounded-sm uii:py-1.5 uii:pr-2 uii:pl-8 uii:text-sm uii:outline-hidden uii:select-none uii:data-[disabled]:pointer-events-none uii:data-[disabled]:opacity-50 uii:[&_svg]:pointer-events-none uii:[&_svg]:shrink-0 uii:[&_svg:not([class*=size-])]:size-4", className)
5013
+ }, props), /* @__PURE__ */ React3.createElement("span", {
5014
+ className: "uii:pointer-events-none uii:absolute uii:left-2 uii:flex uii:size-3.5 uii:items-center uii:justify-center"
5015
+ }, /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.ItemIndicator, null, /* @__PURE__ */ React3.createElement(CircleIcon, {
5016
+ className: "uii:size-2 uii:fill-current"
5017
+ }))), children);
5018
+ }
5019
+ function DropdownMenuLabel(_param) {
5020
+ var className = _param.className, inset = _param.inset, props = _object_without_properties(_param, [
5021
+ "className",
5022
+ "inset"
5023
+ ]);
5024
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Label, _object_spread({
5025
+ "data-slot": "dropdown-menu-label",
5026
+ "data-inset": inset,
5027
+ className: cn("uii:px-2 uii:py-1.5 uii:text-sm uii:font-medium uii:data-[inset]:pl-8", className)
5028
+ }, props));
5029
+ }
5030
+ function DropdownMenuSeparator(_param) {
5031
+ var className = _param.className, props = _object_without_properties(_param, [
5032
+ "className"
5033
+ ]);
5034
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Separator, _object_spread({
5035
+ "data-slot": "dropdown-menu-separator",
5036
+ className: cn("uii:bg-border uii:-mx-1 uii:my-1 uii:h-px", className)
5037
+ }, props));
5038
+ }
5039
+ function DropdownMenuShortcut(_param) {
5040
+ var className = _param.className, props = _object_without_properties(_param, [
5041
+ "className"
5042
+ ]);
5043
+ return /* @__PURE__ */ React3.createElement("span", _object_spread({
5044
+ "data-slot": "dropdown-menu-shortcut",
5045
+ className: cn("uii:text-muted-foreground uii:ml-auto uii:text-xs uii:tracking-widest", className)
5046
+ }, props));
5047
+ }
5048
+ function DropdownMenuSub(_param) {
5049
+ var props = _extends({}, _object_destructuring_empty(_param));
5050
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.Sub, _object_spread({
5051
+ "data-slot": "dropdown-menu-sub"
5052
+ }, props));
5053
+ }
5054
+ function DropdownMenuSubTrigger(_param) {
5055
+ var className = _param.className, inset = _param.inset, children = _param.children, props = _object_without_properties(_param, [
5056
+ "className",
5057
+ "inset",
5058
+ "children"
5059
+ ]);
5060
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.SubTrigger, _object_spread({
5061
+ "data-slot": "dropdown-menu-sub-trigger",
5062
+ "data-inset": inset,
5063
+ className: cn("uii:focus:bg-accent uii:focus:text-accent-foreground uii:data-[state=open]:bg-accent uii:data-[state=open]:text-accent-foreground uii:flex uii:cursor-default uii:items-center uii:rounded-sm uii:px-2 uii:py-1.5 uii:text-sm uii:outline-hidden uii:select-none uii:data-[inset]:pl-8", className)
5064
+ }, props), children, /* @__PURE__ */ React3.createElement(ChevronRightIcon, {
5065
+ className: "uii:ml-auto uii:size-4"
5066
+ }));
5067
+ }
5068
+ function DropdownMenuSubContent(_param) {
5069
+ var className = _param.className, props = _object_without_properties(_param, [
5070
+ "className"
5071
+ ]);
5072
+ return /* @__PURE__ */ React3.createElement(DropdownMenuPrimitive.SubContent, _object_spread({
5073
+ "data-slot": "dropdown-menu-sub-content",
5074
+ className: cn("uii:bg-popover uii:text-popover-foreground uii:data-[state=open]:animate-in uii:data-[state=closed]:animate-out uii:data-[state=closed]:fade-out-0 uii:data-[state=open]:fade-in-0 uii:data-[state=closed]:zoom-out-95 uii:data-[state=open]:zoom-in-95 uii:data-[side=bottom]:slide-in-from-top-2 uii:data-[side=left]:slide-in-from-right-2 uii:data-[side=right]:slide-in-from-left-2 uii:data-[side=top]:slide-in-from-bottom-2 uii:z-50 uii:min-w-[8rem] uii:overflow-hidden uii:rounded-md uii:border uii:p-1 uii:shadow-lg", className)
5075
+ }, props));
5076
+ }
4855
5077
  // src/components/fields/index.tsx
4856
5078
  var fields_exports = {};
4857
5079
  __export(fields_exports, {
4858
5080
  InferredTypesContext: function() {
4859
5081
  return InferredTypesContext;
4860
5082
  },
5083
+ InferredTypesProvider: function() {
5084
+ return InferredTypesProvider;
5085
+ },
4861
5086
  Input: function() {
4862
5087
  return Input;
4863
5088
  },
@@ -4876,6 +5101,9 @@ __export(fields_exports, {
4876
5101
  getOperatorsForType: function() {
4877
5102
  return getOperatorsForType;
4878
5103
  },
5104
+ intersectTypes: function() {
5105
+ return intersectTypes;
5106
+ },
4879
5107
  parseInferSyntax: function() {
4880
5108
  return parseInferSyntax;
4881
5109
  },
@@ -4894,7 +5122,7 @@ __export(fields_exports, {
4894
5122
  });
4895
5123
  function Input(param) {
4896
5124
  var fieldName = param.fieldName, label = param.label, value = param.value, onChange = param.onChange, _param_disabled = param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, placeholder = param.placeholder, _param_expectedType = param.expectedType, expectedType = _param_expectedType === void 0 ? "string" : _param_expectedType, _param_required = param.required, required = _param_required === void 0 ? false : _param_required, _param_hasRequiredError = param.hasRequiredError, hasRequiredError = _param_hasRequiredError === void 0 ? false : _param_hasRequiredError, className = param.className, editorClassName = param.editorClassName;
4897
- var displayValue = React4.useMemo(function() {
5125
+ var displayValue = React3.useMemo(function() {
4898
5126
  if (value && (typeof value === "undefined" ? "undefined" : _type_of(value)) === "object" && "expression" in value) {
4899
5127
  return value.expression || "";
4900
5128
  }
@@ -4902,12 +5130,12 @@ function Input(param) {
4902
5130
  }, [
4903
5131
  value
4904
5132
  ]);
4905
- var isExpression = React4.useMemo(function() {
5133
+ var isExpression = React3.useMemo(function() {
4906
5134
  return value && (typeof value === "undefined" ? "undefined" : _type_of(value)) === "object" && "expression" in value;
4907
5135
  }, [
4908
5136
  value
4909
5137
  ]);
4910
- var handleChange = React4.useCallback(function(e) {
5138
+ var handleChange = React3.useCallback(function(e) {
4911
5139
  var newValue = e.target.value;
4912
5140
  if (newValue.includes("{{")) {
4913
5141
  onChange({
@@ -4921,20 +5149,20 @@ function Input(param) {
4921
5149
  onChange
4922
5150
  ]);
4923
5151
  var showError = hasRequiredError || required && !displayValue;
4924
- return /* @__PURE__ */ React4.createElement("div", {
5152
+ return /* @__PURE__ */ React3.createElement("div", {
4925
5153
  className: cn("uii:mb-2", className)
4926
- }, /* @__PURE__ */ React4.createElement("div", {
5154
+ }, /* @__PURE__ */ React3.createElement("div", {
4927
5155
  className: "uii:flex uii:items-center uii:gap-2 uii:mt-2"
4928
- }, /* @__PURE__ */ React4.createElement("label", {
5156
+ }, /* @__PURE__ */ React3.createElement("label", {
4929
5157
  htmlFor: fieldName,
4930
5158
  className: "uii:text-xs uii:font-bold uii:text-muted-foreground"
4931
- }, label, ":"), expectedType !== "$.interface.timer" && /* @__PURE__ */ React4.createElement("span", {
5159
+ }, label, ":"), expectedType !== "$.interface.timer" && /* @__PURE__ */ React3.createElement("span", {
4932
5160
  className: "uii:-mt-2 uii:inline-flex uii:px-1 uii:py-0.5 uii:bg-gray-200 uii:rounded-sm uii:text-[10px] uii:font-mono uii:text-muted-foreground uii:font-light"
4933
- }, expectedType), showError && /* @__PURE__ */ React4.createElement("span", {
5161
+ }, expectedType), showError && /* @__PURE__ */ React3.createElement("span", {
4934
5162
  className: "uii:-mt-2 uii:inline-flex uii:px-1 uii:py-0.5 uii:bg-red-100 uii:text-red-600 uii:rounded-sm uii:text-[10px] uii:font-medium"
4935
- }, "Required")), /* @__PURE__ */ React4.createElement("div", {
5163
+ }, "Required")), /* @__PURE__ */ React3.createElement("div", {
4936
5164
  className: "uii:mt-0.5"
4937
- }, /* @__PURE__ */ React4.createElement("input", {
5165
+ }, /* @__PURE__ */ React3.createElement("input", {
4938
5166
  id: fieldName,
4939
5167
  name: fieldName,
4940
5168
  type: "text",
@@ -4947,9 +5175,9 @@ function Input(param) {
4947
5175
  }
4948
5176
  function Select(param) {
4949
5177
  var fieldName = param.fieldName, label = param.label, value = param.value, onChange = param.onChange, rawOptions = param.options, _param_disabled = param.disabled, disabled = _param_disabled === void 0 ? false : _param_disabled, placeholder = param.placeholder, _param_expectedType = param.expectedType, expectedType = _param_expectedType === void 0 ? "string" : _param_expectedType, _param_required = param.required, required = _param_required === void 0 ? false : _param_required, _param_hasRequiredError = param.hasRequiredError, hasRequiredError = _param_hasRequiredError === void 0 ? false : _param_hasRequiredError, className = param.className, children = param.children;
4950
- var _React4_useState = _sliced_to_array(React4.useState(false), 2), isExpressionMode = _React4_useState[0], setIsExpressionMode = _React4_useState[1];
4951
- var _React4_useState1 = _sliced_to_array(React4.useState(""), 2), expressionValue = _React4_useState1[0], setExpressionValue = _React4_useState1[1];
4952
- var options = React4.useMemo(function() {
5178
+ var _React3_useState = _sliced_to_array(React3.useState(false), 2), isExpressionMode = _React3_useState[0], setIsExpressionMode = _React3_useState[1];
5179
+ var _React3_useState1 = _sliced_to_array(React3.useState(""), 2), expressionValue = _React3_useState1[0], setExpressionValue = _React3_useState1[1];
5180
+ var options = React3.useMemo(function() {
4953
5181
  return rawOptions.map(function(opt) {
4954
5182
  return typeof opt === "string" ? {
4955
5183
  value: opt,
@@ -4959,7 +5187,7 @@ function Select(param) {
4959
5187
  }, [
4960
5188
  rawOptions
4961
5189
  ]);
4962
- var displayValue = React4.useMemo(function() {
5190
+ var displayValue = React3.useMemo(function() {
4963
5191
  if (value && (typeof value === "undefined" ? "undefined" : _type_of(value)) === "object" && "expression" in value) {
4964
5192
  return value.expression || "";
4965
5193
  }
@@ -4967,12 +5195,12 @@ function Select(param) {
4967
5195
  }, [
4968
5196
  value
4969
5197
  ]);
4970
- var isExpression = React4.useMemo(function() {
5198
+ var isExpression = React3.useMemo(function() {
4971
5199
  return value && (typeof value === "undefined" ? "undefined" : _type_of(value)) === "object" && "expression" in value;
4972
5200
  }, [
4973
5201
  value
4974
5202
  ]);
4975
- React4.useEffect(function() {
5203
+ React3.useEffect(function() {
4976
5204
  if (isExpression) {
4977
5205
  setIsExpressionMode(true);
4978
5206
  setExpressionValue(displayValue);
@@ -4981,7 +5209,7 @@ function Select(param) {
4981
5209
  isExpression,
4982
5210
  displayValue
4983
5211
  ]);
4984
- var handleSelectChange = React4.useCallback(function(newValue) {
5212
+ var handleSelectChange = React3.useCallback(function(newValue) {
4985
5213
  if (newValue === "__expression__") {
4986
5214
  setIsExpressionMode(true);
4987
5215
  return;
@@ -4990,7 +5218,7 @@ function Select(param) {
4990
5218
  }, [
4991
5219
  onChange
4992
5220
  ]);
4993
- var handleExpressionChange = React4.useCallback(function(e) {
5221
+ var handleExpressionChange = React3.useCallback(function(e) {
4994
5222
  var newValue = e.target.value;
4995
5223
  setExpressionValue(newValue);
4996
5224
  onChange({
@@ -5000,7 +5228,7 @@ function Select(param) {
5000
5228
  }, [
5001
5229
  onChange
5002
5230
  ]);
5003
- var handleSwitchToValue = React4.useCallback(function() {
5231
+ var handleSwitchToValue = React3.useCallback(function() {
5004
5232
  setIsExpressionMode(false);
5005
5233
  setExpressionValue("");
5006
5234
  onChange("");
@@ -5035,24 +5263,24 @@ function Select(param) {
5035
5263
  },
5036
5264
  hasError: showError
5037
5265
  };
5038
- return /* @__PURE__ */ React4.createElement("div", {
5266
+ return /* @__PURE__ */ React3.createElement("div", {
5039
5267
  className: cn("uii:mb-2", className)
5040
- }, /* @__PURE__ */ React4.createElement("div", {
5268
+ }, /* @__PURE__ */ React3.createElement("div", {
5041
5269
  className: "uii:flex uii:items-center uii:gap-2 uii:mt-2"
5042
- }, /* @__PURE__ */ React4.createElement("label", {
5270
+ }, /* @__PURE__ */ React3.createElement("label", {
5043
5271
  htmlFor: fieldName,
5044
5272
  className: "uii:text-xs uii:font-bold uii:text-muted-foreground"
5045
- }, label, ":"), expectedType !== "$.interface.timer" && /* @__PURE__ */ React4.createElement("span", {
5273
+ }, label, ":"), expectedType !== "$.interface.timer" && /* @__PURE__ */ React3.createElement("span", {
5046
5274
  className: "uii:-mt-2 uii:inline-flex uii:px-1 uii:py-0.5 uii:bg-gray-200 uii:rounded-sm uii:text-[10px] uii:font-mono uii:text-muted-foreground uii:font-light"
5047
- }, expectedType), showError && /* @__PURE__ */ React4.createElement("span", {
5275
+ }, expectedType), showError && /* @__PURE__ */ React3.createElement("span", {
5048
5276
  className: "uii:-mt-2 uii:inline-flex uii:px-1 uii:py-0.5 uii:bg-red-100 uii:text-red-600 uii:rounded-sm uii:text-[10px] uii:font-medium"
5049
- }, "Required")), /* @__PURE__ */ React4.createElement("div", {
5277
+ }, "Required")), /* @__PURE__ */ React3.createElement("div", {
5050
5278
  className: "uii:mt-0.5"
5051
5279
  }, children ? // Use custom render function
5052
5280
  children(renderProps) : isExpressionMode ? // Expression mode - show input with clear button
5053
- /* @__PURE__ */ React4.createElement("div", {
5281
+ /* @__PURE__ */ React3.createElement("div", {
5054
5282
  className: "uii:flex uii:items-center uii:h-9 uii:rounded-sm uii:border uii:border-amber-500/50 uii:bg-amber-500/5"
5055
- }, /* @__PURE__ */ React4.createElement("input", {
5283
+ }, /* @__PURE__ */ React3.createElement("input", {
5056
5284
  id: fieldName,
5057
5285
  name: fieldName,
5058
5286
  type: "text",
@@ -5061,13 +5289,13 @@ function Select(param) {
5061
5289
  disabled: disabled,
5062
5290
  placeholder: "Enter expression...",
5063
5291
  className: cn("uii:flex-1 uii:h-full uii:px-3 uii:bg-transparent uii:text-sm uii:font-mono uii:text-amber-600", "uii:outline-none uii:border-none", disabled && "uii:opacity-50 uii:cursor-not-allowed")
5064
- }), /* @__PURE__ */ React4.createElement("button", {
5292
+ }), /* @__PURE__ */ React3.createElement("button", {
5065
5293
  type: "button",
5066
5294
  onClick: handleSwitchToValue,
5067
5295
  className: "uii:flex uii:items-center uii:justify-center uii:h-full uii:px-2 uii:text-amber-600 hover:uii:text-red-600 uii:border-l uii:border-amber-500/30",
5068
5296
  title: "Clear and return to value mode"
5069
5297
  }, "\xD7")) : // Value mode - show select
5070
- /* @__PURE__ */ React4.createElement("select", {
5298
+ /* @__PURE__ */ React3.createElement("select", {
5071
5299
  id: fieldName,
5072
5300
  name: fieldName,
5073
5301
  value: displayValue,
@@ -5076,15 +5304,15 @@ function Select(param) {
5076
5304
  },
5077
5305
  disabled: disabled,
5078
5306
  className: cn("uii:w-full uii:h-9 uii:px-3 uii:rounded-sm uii:border uii:bg-background uii:text-sm", "uii:outline-none uii:transition-all uii:cursor-pointer", "focus:uii:border-ring focus:uii:ring-ring/50 focus:uii:ring-[3px]", showError ? "uii:border-red-500 hover:uii:border-red-600" : "uii:border-input hover:uii:border-ring/50", disabled && "uii:opacity-50 uii:cursor-not-allowed")
5079
- }, placeholder && /* @__PURE__ */ React4.createElement("option", {
5307
+ }, placeholder && /* @__PURE__ */ React3.createElement("option", {
5080
5308
  value: "",
5081
5309
  disabled: true
5082
5310
  }, placeholder), options.map(function(opt) {
5083
- return /* @__PURE__ */ React4.createElement("option", {
5311
+ return /* @__PURE__ */ React3.createElement("option", {
5084
5312
  key: opt.value,
5085
5313
  value: opt.value
5086
5314
  }, opt.label);
5087
- }), /* @__PURE__ */ React4.createElement("option", {
5315
+ }), /* @__PURE__ */ React3.createElement("option", {
5088
5316
  value: "__expression__"
5089
5317
  }, "\uD83D\uDCDD Custom Expression"))));
5090
5318
  }
@@ -5125,6 +5353,18 @@ var InferredTypesContext = createContext(null);
5125
5353
  function useInferredTypes() {
5126
5354
  return useContext(InferredTypesContext);
5127
5355
  }
5356
+ function InferredTypesProvider(param) {
5357
+ var children = param.children;
5358
+ return /* @__PURE__ */ React.createElement(React.Fragment, null, children);
5359
+ }
5360
+ function intersectTypes(types) {
5361
+ var validTypes = types.filter(function(t) {
5362
+ return !!t && t.length > 0;
5363
+ });
5364
+ if (validTypes.length === 0) return "any";
5365
+ if (validTypes.length === 1) return validTypes[0];
5366
+ return validTypes[0];
5367
+ }
5128
5368
  function parseInferSyntax(expectedType) {
5129
5369
  var _match_;
5130
5370
  if (!expectedType || !expectedType.startsWith("$infer<")) {
@@ -5236,5 +5476,5 @@ function getOperatorsForType(type) {
5236
5476
  }
5237
5477
  ];
5238
5478
  }
5239
- export { Button, buttonVariants, fields_exports as fields }; //# sourceMappingURL=index.js.map
5479
+ export { Button, ConfirmationDropdownMenuItem, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuClose, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, buttonVariants, fields_exports as fields }; //# sourceMappingURL=index.js.map
5240
5480
  //# sourceMappingURL=index.js.map