@oneplatformdev/ui 0.1.99-beta.26 → 0.1.99-beta.261

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 (241) hide show
  1. package/Accordion/Accordion.d.ts +1 -1
  2. package/Accordion/Accordion.d.ts.map +1 -1
  3. package/Accordion/Accordion.js +48 -26
  4. package/Accordion/Accordion.js.map +1 -1
  5. package/AlertDialog/AlertDialog.stories.js +67 -23
  6. package/AlertDialog/AlertDialog.stories.js.map +1 -1
  7. package/AlertDialog/AlertDialogRoot.d.ts.map +1 -1
  8. package/AlertDialog/AlertDialogRoot.js +20 -18
  9. package/AlertDialog/AlertDialogRoot.js.map +1 -1
  10. package/Button/Button.d.ts.map +1 -1
  11. package/Button/Button.js +43 -43
  12. package/Button/Button.js.map +1 -1
  13. package/Button/Button.stories.js +15 -12
  14. package/Button/Button.stories.js.map +1 -1
  15. package/Button/Button.utils.d.ts +3 -0
  16. package/Button/Button.utils.d.ts.map +1 -0
  17. package/Button/Button.utils.js +14 -0
  18. package/Button/Button.utils.js.map +1 -0
  19. package/Button/buttonVariants.d.ts +2 -2
  20. package/Button/buttonVariants.d.ts.map +1 -1
  21. package/Button/buttonVariants.js +38 -6
  22. package/Button/buttonVariants.js.map +1 -1
  23. package/Button/index.d.ts +1 -0
  24. package/Button/index.d.ts.map +1 -1
  25. package/Button/index.js +8 -6
  26. package/Button/index.js.map +1 -1
  27. package/ButtonIcon/ButtonIcon.d.ts.map +1 -1
  28. package/ButtonIcon/ButtonIcon.js +41 -39
  29. package/ButtonIcon/ButtonIcon.js.map +1 -1
  30. package/ButtonIcon/ButtonIcon.stories.js +35 -33
  31. package/ButtonIcon/ButtonIcon.stories.js.map +1 -1
  32. package/ButtonIcon/buttonIconVariants.d.ts +1 -1
  33. package/ButtonIcon/buttonIconVariants.d.ts.map +1 -1
  34. package/ButtonIcon/buttonIconVariants.js +3 -2
  35. package/ButtonIcon/buttonIconVariants.js.map +1 -1
  36. package/CHANGELOG.md +1511 -0
  37. package/Calendar/Calendar.js +5 -4
  38. package/Calendar/Calendar.js.map +1 -1
  39. package/Card/Card.d.ts.map +1 -1
  40. package/Card/Card.js +22 -21
  41. package/Card/Card.js.map +1 -1
  42. package/Checkbox/Checkbox.d.ts.map +1 -1
  43. package/Checkbox/Checkbox.js +36 -34
  44. package/Checkbox/Checkbox.js.map +1 -1
  45. package/Checkbox/Checkbox.stories.js +108 -0
  46. package/Checkbox/Checkbox.stories.js.map +1 -0
  47. package/Checkbox/Checkbox.types.d.ts +2 -1
  48. package/Checkbox/Checkbox.types.d.ts.map +1 -1
  49. package/Combobox/Combobox.d.ts +4 -2
  50. package/Combobox/Combobox.d.ts.map +1 -1
  51. package/Combobox/Combobox.js +222 -194
  52. package/Combobox/Combobox.js.map +1 -1
  53. package/Combobox/Combobox.stories.js +231 -85
  54. package/Combobox/Combobox.stories.js.map +1 -1
  55. package/Combobox/Combobox.types.d.ts +88 -24
  56. package/Combobox/Combobox.types.d.ts.map +1 -1
  57. package/Combobox/Combobox.types.js +4 -1
  58. package/Combobox/Combobox.types.js.map +1 -1
  59. package/Combobox/ComboboxOptionItem.d.ts +5 -3
  60. package/Combobox/ComboboxOptionItem.d.ts.map +1 -1
  61. package/Combobox/ComboboxOptionItem.js +81 -23
  62. package/Combobox/ComboboxOptionItem.js.map +1 -1
  63. package/Combobox/ComboboxRenderContent.d.ts +28 -0
  64. package/Combobox/ComboboxRenderContent.d.ts.map +1 -0
  65. package/Combobox/ComboboxRenderContent.js +143 -0
  66. package/Combobox/ComboboxRenderContent.js.map +1 -0
  67. package/Combobox/ComboboxRenderOptions.d.ts +4 -0
  68. package/Combobox/ComboboxRenderOptions.d.ts.map +1 -0
  69. package/Combobox/ComboboxRenderOptions.js +53 -0
  70. package/Combobox/ComboboxRenderOptions.js.map +1 -0
  71. package/Combobox/ComboboxRenderTrigger.d.ts +18 -0
  72. package/Combobox/ComboboxRenderTrigger.d.ts.map +1 -0
  73. package/Combobox/ComboboxRenderTrigger.js +120 -0
  74. package/Combobox/ComboboxRenderTrigger.js.map +1 -0
  75. package/Command/Command.d.ts +6 -1
  76. package/Command/Command.d.ts.map +1 -1
  77. package/Command/Command.js +61 -43
  78. package/Command/Command.js.map +1 -1
  79. package/ContextPopover/ContextDropdownMenu.d.ts +12 -0
  80. package/ContextPopover/ContextDropdownMenu.d.ts.map +1 -0
  81. package/ContextPopover/ContextDropdownMenu.js +41 -0
  82. package/ContextPopover/ContextDropdownMenu.js.map +1 -0
  83. package/ContextPopover/ContextPopover.d.ts +12 -0
  84. package/ContextPopover/ContextPopover.d.ts.map +1 -0
  85. package/ContextPopover/ContextPopover.js +34 -0
  86. package/ContextPopover/ContextPopover.js.map +1 -0
  87. package/ContextPopover/index.d.ts +4 -0
  88. package/ContextPopover/index.d.ts.map +1 -0
  89. package/ContextPopover/index.js +9 -0
  90. package/ContextPopover/index.js.map +1 -0
  91. package/ContextPopover/useContextPopoverHandler.d.ts +14 -0
  92. package/ContextPopover/useContextPopoverHandler.d.ts.map +1 -0
  93. package/ContextPopover/useContextPopoverHandler.js +21 -0
  94. package/ContextPopover/useContextPopoverHandler.js.map +1 -0
  95. package/DataTable/DataTable.js +16 -15
  96. package/DataTable/DataTable.js.map +1 -1
  97. package/Dialog/Dialog.d.ts +4 -1
  98. package/Dialog/Dialog.d.ts.map +1 -1
  99. package/Dialog/Dialog.js +83 -40
  100. package/Dialog/Dialog.js.map +1 -1
  101. package/Dialog/Dialog.stories.js +109 -0
  102. package/Dialog/Dialog.stories.js.map +1 -0
  103. package/Dialog/Dialog.types.d.ts +4 -0
  104. package/Dialog/Dialog.types.d.ts.map +1 -0
  105. package/Dialog/Dialog.types.js +2 -0
  106. package/Dialog/Dialog.types.js.map +1 -0
  107. package/Dialog/index.d.ts +1 -0
  108. package/Dialog/index.d.ts.map +1 -1
  109. package/Dialog/useDialogClosePosition.d.ts +11 -0
  110. package/Dialog/useDialogClosePosition.d.ts.map +1 -0
  111. package/Dialog/useDialogClosePosition.js +50 -0
  112. package/Dialog/useDialogClosePosition.js.map +1 -0
  113. package/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  114. package/DropdownMenu/DropdownMenu.js +33 -20
  115. package/DropdownMenu/DropdownMenu.js.map +1 -1
  116. package/Dropzone/Dropzone.d.ts.map +1 -1
  117. package/Dropzone/Dropzone.js +46 -28
  118. package/Dropzone/Dropzone.js.map +1 -1
  119. package/Dropzone/Dropzone.stories.js +100 -0
  120. package/Dropzone/Dropzone.stories.js.map +1 -0
  121. package/Dropzone/Dropzone.types.js +6 -6
  122. package/Dropzone/Dropzone.types.js.map +1 -1
  123. package/Form/FormRenderControl.d.ts +1 -1
  124. package/Form/FormRenderControl.d.ts.map +1 -1
  125. package/Form/FormRenderControl.js +55 -14
  126. package/Form/FormRenderControl.js.map +1 -1
  127. package/Form/FormRenderControl.types.d.ts +6 -2
  128. package/Form/FormRenderControl.types.d.ts.map +1 -1
  129. package/FormCombobox/FormCombobox.d.ts +4 -2
  130. package/FormCombobox/FormCombobox.d.ts.map +1 -1
  131. package/FormCombobox/FormCombobox.js +30 -17
  132. package/FormCombobox/FormCombobox.js.map +1 -1
  133. package/FormCombobox/FormCombobox.types.d.ts +6 -2
  134. package/FormCombobox/FormCombobox.types.d.ts.map +1 -1
  135. package/FormDatePicker/FormDatePicker.d.ts.map +1 -1
  136. package/FormDatePicker/FormDatePicker.js +18 -16
  137. package/FormDatePicker/FormDatePicker.js.map +1 -1
  138. package/FormDropzone/FormDropzone.d.ts.map +1 -1
  139. package/FormDropzone/FormDropzone.js +11 -9
  140. package/FormDropzone/FormDropzone.js.map +1 -1
  141. package/FormInput/FormInput.d.ts.map +1 -1
  142. package/FormInput/FormInput.js +47 -27
  143. package/FormInput/FormInput.js.map +1 -1
  144. package/FormInput/FormInput.stories.js +61 -0
  145. package/FormInput/FormInput.stories.js.map +1 -0
  146. package/FormInput/FormInput.types.d.ts +1 -0
  147. package/FormInput/FormInput.types.d.ts.map +1 -1
  148. package/FormSelect/FormSelect.d.ts.map +1 -1
  149. package/FormSelect/FormSelect.js +21 -17
  150. package/FormSelect/FormSelect.js.map +1 -1
  151. package/FormTextarea/FormTextarea.d.ts.map +1 -1
  152. package/FormTextarea/FormTextarea.js +15 -12
  153. package/FormTextarea/FormTextarea.js.map +1 -1
  154. package/InfoBlock/InfoBlock.d.ts +7 -0
  155. package/InfoBlock/InfoBlock.d.ts.map +1 -0
  156. package/InfoBlock/InfoBlock.js +28 -0
  157. package/InfoBlock/InfoBlock.js.map +1 -0
  158. package/InfoBlock/InfoBlock.stories.js +50 -0
  159. package/InfoBlock/InfoBlock.stories.js.map +1 -0
  160. package/InfoBlock/InfoBlock.types.d.ts +9 -0
  161. package/InfoBlock/InfoBlock.types.d.ts.map +1 -0
  162. package/InfoBlock/InfoBlock.types.js +2 -0
  163. package/InfoBlock/InfoBlock.types.js.map +1 -0
  164. package/InfoBlock/index.d.ts +3 -0
  165. package/InfoBlock/index.d.ts.map +1 -0
  166. package/InfoBlock/index.js +5 -0
  167. package/InfoBlock/index.js.map +1 -0
  168. package/InfoBlock/infoBlockVariants.d.ts +6 -0
  169. package/InfoBlock/infoBlockVariants.d.ts.map +1 -0
  170. package/InfoBlock/infoBlockVariants.js +27 -0
  171. package/InfoBlock/infoBlockVariants.js.map +1 -0
  172. package/Input/Input.d.ts.map +1 -1
  173. package/Input/Input.js +65 -51
  174. package/Input/Input.js.map +1 -1
  175. package/Input/Input.stories.js +154 -0
  176. package/Input/Input.stories.js.map +1 -0
  177. package/Input/Input.types.d.ts +1 -0
  178. package/Input/Input.types.d.ts.map +1 -1
  179. package/LoadingMask/LoadingMask.d.ts +1 -2
  180. package/LoadingMask/LoadingMask.d.ts.map +1 -1
  181. package/LoadingMask/LoadingMask.js +8 -8
  182. package/LoadingMask/LoadingMask.js.map +1 -1
  183. package/LoadingMask/LoadingMask.types.d.ts +1 -0
  184. package/LoadingMask/LoadingMask.types.d.ts.map +1 -1
  185. package/Popover/Popover.d.ts +3 -1
  186. package/Popover/Popover.d.ts.map +1 -1
  187. package/Popover/Popover.js +15 -10
  188. package/Popover/Popover.js.map +1 -1
  189. package/ScrollArea/ScrollArea.d.ts +5 -1
  190. package/ScrollArea/ScrollArea.d.ts.map +1 -1
  191. package/ScrollArea/ScrollArea.js +23 -17
  192. package/ScrollArea/ScrollArea.js.map +1 -1
  193. package/Search/Search.d.ts.map +1 -1
  194. package/Search/Search.js +40 -31
  195. package/Search/Search.js.map +1 -1
  196. package/Select/Select.d.ts.map +1 -1
  197. package/Select/Select.js +53 -48
  198. package/Select/Select.js.map +1 -1
  199. package/Select/Select.types.d.ts +4 -0
  200. package/Select/Select.types.d.ts.map +1 -1
  201. package/Select/SelectRoot.d.ts.map +1 -1
  202. package/Select/SelectRoot.js +78 -65
  203. package/Select/SelectRoot.js.map +1 -1
  204. package/Switch/Switch.d.ts +1 -1
  205. package/Switch/Switch.d.ts.map +1 -1
  206. package/Switch/Switch.js +19 -9
  207. package/Switch/Switch.js.map +1 -1
  208. package/Switch/Switch.stories.js +62 -0
  209. package/Switch/Switch.stories.js.map +1 -0
  210. package/TablePagination/TablePagination.js +9 -8
  211. package/TablePagination/TablePagination.js.map +1 -1
  212. package/Textarea/Textarea.d.ts.map +1 -1
  213. package/Textarea/Textarea.js +50 -45
  214. package/Textarea/Textarea.js.map +1 -1
  215. package/Textarea/Textarea.types.d.ts +3 -1
  216. package/Textarea/Textarea.types.d.ts.map +1 -1
  217. package/Toast/Toast.d.ts +1 -1
  218. package/Toast/toastVariants.d.ts +1 -1
  219. package/Tooltip/QuestionMarkIcon.svg.js +6 -0
  220. package/Tooltip/QuestionMarkIcon.svg.js.map +1 -0
  221. package/Tooltip/Tooltip.d.ts.map +1 -1
  222. package/Tooltip/Tooltip.js +52 -32
  223. package/Tooltip/Tooltip.js.map +1 -1
  224. package/Tooltip/Tooltip.types.d.ts +10 -0
  225. package/Tooltip/Tooltip.types.d.ts.map +1 -1
  226. package/Tooltip/tooltipVariants.d.ts +4 -0
  227. package/Tooltip/tooltipVariants.d.ts.map +1 -0
  228. package/Tooltip/tooltipVariants.js +23 -0
  229. package/Tooltip/tooltipVariants.js.map +1 -0
  230. package/index.d.ts +2 -0
  231. package/index.d.ts.map +1 -1
  232. package/index.js +342 -332
  233. package/index.js.map +1 -1
  234. package/package.json +7 -5
  235. package/vite-env.d.js +2 -0
  236. package/vite-env.d.js.map +1 -0
  237. package/vite-env.d.ts +7 -0
  238. package/Combobox/ComboboxOptions.d.ts +0 -4
  239. package/Combobox/ComboboxOptions.d.ts.map +0 -1
  240. package/Combobox/ComboboxOptions.js +0 -65
  241. package/Combobox/ComboboxOptions.js.map +0 -1
@@ -0,0 +1,120 @@
1
+ import { jsx as r, jsxs as d, Fragment as b } from "react/jsx-runtime";
2
+ import { DEFAULT_COMBOBOX_TYPE as h } from "./Combobox.types.js";
3
+ import { Button as v } from "../Button/Button.js";
4
+ import "../Button/buttonVariants.js";
5
+ import { useMemo as w } from "react";
6
+ import { cn as u } from "@oneplatformdev/utils";
7
+ import { LoadingMask as x } from "../LoadingMask/LoadingMask.js";
8
+ import "../LoadingMask/RenderLoadingMask.js";
9
+ import { XIcon as f, ChevronDown as y } from "lucide-react";
10
+ import { PopoverTrigger as C } from "../Popover/Popover.js";
11
+ import { ScrollArea as N } from "../ScrollArea/ScrollArea.js";
12
+ const g = (o) => {
13
+ const { value: n, flattenOptions: a = [], selectedOptions: t = /* @__PURE__ */ new Map() } = o;
14
+ return w(() => {
15
+ if (!n) return [];
16
+ const c = Array.from(t.values()), i = Array.isArray(n) ? n : [n], p = [...a.filter((l) => i.find((s) => String(s).toLowerCase() === String(l.value).toLowerCase())), ...c].reduce((l, s) => (!s || l.has(s.value) || l.set(s.value, { ...s, label: s.label || s.value }), l), /* @__PURE__ */ new Map());
17
+ return p.size ? Array.from(p.values()) : i.map((l) => ({ value: l, label: String(l) }));
18
+ }, [n, a, t]);
19
+ }, k = (o) => {
20
+ const { type: n = h, placeholder: a, onSelect: t, open: c } = o, i = g(o);
21
+ return i.length ? n === "single" ? /* @__PURE__ */ r("span", { className: "truncate overflow-hidden whitespace-nowrap break-words line-clamp-1 pr-8", children: i[0].label }) : n === "multi" ? /* @__PURE__ */ r(
22
+ N,
23
+ {
24
+ className: u(
25
+ "w-full h-auto min-h-5 max-h-20.25",
26
+ "overflow-y-auto overflow-x-hidden"
27
+ ),
28
+ slotProps: {
29
+ viewport: {
30
+ className: "[&>div]:block!"
31
+ }
32
+ },
33
+ children: /* @__PURE__ */ r("div", { className: "p-0 gap-1 flex flex-wrap w-full pr-11", children: i.map((e) => e ? /* @__PURE__ */ d(
34
+ "div",
35
+ {
36
+ className: u(
37
+ "flex items-center justify-center",
38
+ "py-1 px-2 min-h-5 w-fit gap-1",
39
+ "bg-[#9368FF] rounded-sm",
40
+ "text-[#FCFCFC] leading-none text-xs font-semibold",
41
+ "cursor-pointer",
42
+ "truncate"
43
+ ),
44
+ onClick: (p) => {
45
+ c && (p.preventDefault(), p.stopPropagation(), t?.(e));
46
+ },
47
+ children: [
48
+ /* @__PURE__ */ r("span", { className: "whitespace-pre-wrap wrap-break-word line-clamp-1", children: e.label }),
49
+ /* @__PURE__ */ r(f, { className: "size-3! shrink-0 text-white!" })
50
+ ]
51
+ },
52
+ e.value
53
+ ) : null) })
54
+ }
55
+ ) : "No supported to render" : /* @__PURE__ */ r("span", { className: "text-gray-400 whitespace-pre-wrap break-words line-clamp-1 pr-11", children: a });
56
+ }, m = (o) => {
57
+ const { children: n, prevented: a = !0, onClick: t, className: c, ...i } = o;
58
+ return /* @__PURE__ */ r(
59
+ "div",
60
+ {
61
+ ...i,
62
+ className: u(
63
+ "absolute top-1/2 -translate-y-1/2 right-1",
64
+ "flex items-center justify-center",
65
+ "w-10 h-10 [&_svg]:size-5!",
66
+ "opacity-50 cursor-pointer hover:opacity-100",
67
+ c
68
+ ),
69
+ onClick: (e) => {
70
+ if (!a) return t?.(e);
71
+ e.stopPropagation(), e.preventDefault(), t?.(e);
72
+ },
73
+ children: n
74
+ }
75
+ );
76
+ }, A = (o) => {
77
+ const { open: n, onClearSelections: a } = o, t = g(o);
78
+ return n ? t.length ? /* @__PURE__ */ r(m, { onClick: () => a?.(), children: /* @__PURE__ */ r(f, {}) }) : null : /* @__PURE__ */ r(m, { prevented: !1, children: /* @__PURE__ */ r(y, {}) });
79
+ }, B = (o) => {
80
+ const {
81
+ type: n,
82
+ open: a,
83
+ initialLoading: t,
84
+ callbackStateParams: c,
85
+ disabled: i,
86
+ renderTrigger: e
87
+ } = o;
88
+ return /* @__PURE__ */ r(C, { asChild: !0, className: "border-input", children: /* @__PURE__ */ d(
89
+ v,
90
+ {
91
+ variant: e ? "none" : "contained",
92
+ color: "secondary",
93
+ role: "combobox",
94
+ "aria-expanded": a,
95
+ className: u(
96
+ "relative w-full justify-between bg-transparent",
97
+ !e && "font-normal text-sm",
98
+ "border border-border",
99
+ a && "border-1 outline-hidden ring-1 ring-ring",
100
+ n === "multi" && "pr-0",
101
+ "focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring",
102
+ e && "p-0",
103
+ e && a && "p-0 border-1 ring-0 ring-transparent"
104
+ ),
105
+ disabled: i || t,
106
+ children: [
107
+ t && /* @__PURE__ */ r(x, { fullWidth: !0 }),
108
+ !t && e && e(c),
109
+ !t && !e && /* @__PURE__ */ d(b, { children: [
110
+ /* @__PURE__ */ r(k, { ...o }),
111
+ /* @__PURE__ */ r(A, { ...o })
112
+ ] })
113
+ ]
114
+ }
115
+ ) });
116
+ };
117
+ export {
118
+ B as ComboboxRenderTrigger
119
+ };
120
+ //# sourceMappingURL=ComboboxRenderTrigger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ComboboxRenderTrigger.js","sources":["../../src/Combobox/ComboboxRenderTrigger.tsx"],"sourcesContent":["import {\n ComboboxCallbackStateParamsRenderHandler,\n ComboboxCallbackStateParamsUnion,\n ComboboxOption,\n ComboboxProps, ComboboxSelectedType,\n DEFAULT_COMBOBOX_TYPE\n} from \"./Combobox.types\";\nimport { Button } from \"../Button\";\nimport { cn } from \"@oneplatformdev/utils\";\nimport { LoadingMask } from \"../LoadingMask\";\nimport { ChevronDown, XIcon } from \"lucide-react\";\nimport { PopoverTrigger } from \"../Popover\";\nimport { HTMLAttributes, useMemo } from \"react\";\nimport { ScrollArea } from \"../ScrollArea\";\n\ntype ComboboxRenderTriggerProps<Data extends object = object> = {\n type: ComboboxSelectedType,\n value: ComboboxProps<Data, 'single'>['value'] | ComboboxProps<Data, 'multi'>['value'];\n open: boolean;\n initialLoading: boolean;\n flattenOptions: ComboboxOption<Data>[];\n selectedOptions?: Map<ComboboxOption<Data>['value'], ComboboxOption<Data>>;\n onSelect?: (option: ComboboxOption<Data>) => void;\n onClearSelections?: () => void;\n\n callbackStateParams: ComboboxCallbackStateParamsUnion<Data>;\n renderTrigger?: ComboboxCallbackStateParamsRenderHandler<Data>;\n\n placeholder?: string;\n disabled?: boolean;\n}\n\nconst useValues = <Data extends object>(\n props: ComboboxRenderTriggerProps<Data>\n): ComboboxOption<Data>[] => {\n const { value, flattenOptions = [], selectedOptions = new Map() } = props;\n return useMemo(() => {\n if (!value) return [];\n const selectedOption = Array.from(selectedOptions.values());\n const vls = Array.isArray(value) ? value : [ value ];\n const flattenedOptionValues = flattenOptions.filter(o => {\n return vls.find(v => String(v).toLowerCase() === String(o.value).toLowerCase())\n });\n\n const labels = [ ...flattenedOptionValues, ...selectedOption ]\n .reduce<Map<ComboboxOption<Data>['value'], ComboboxOption<Data>>>((acc, o) => {\n if (!o) return acc;\n if (acc.has(o.value)) return acc;\n acc.set(o.value, { ...o, label: o.label || o.value });\n return acc;\n }, new Map())\n if (!labels.size) return vls.map(v => ({ value: v, label: String(v) }));\n return Array.from(labels.values());\n }, [ value, flattenOptions, selectedOptions ])\n}\n\nconst ComboboxRenderTriggerLabel = <Data extends object = object>(\n props: ComboboxRenderTriggerProps<Data>\n) => {\n const { type = DEFAULT_COMBOBOX_TYPE, placeholder, onSelect, open } = props;\n const values = useValues(props);\n\n if (!values.length) {\n return (\n <span className=\"text-gray-400 whitespace-pre-wrap break-words line-clamp-1 pr-11\">\n {placeholder}\n </span>\n )\n }\n\n if (type === 'single') {\n return (\n <span className=\"truncate overflow-hidden whitespace-nowrap break-words line-clamp-1 pr-8\">\n {values[0].label}\n </span>\n )\n }\n\n if (type === 'multi') {\n return (\n <ScrollArea\n className={cn(\n \"w-full h-auto min-h-5 max-h-20.25\",\n 'overflow-y-auto overflow-x-hidden',\n )}\n slotProps={{\n viewport: {\n className: '[&>div]:block!',\n }\n }}\n >\n <div className=\"p-0 gap-1 flex flex-wrap w-full pr-11\">\n {values.map((item) => {\n if (!item) return null;\n return (\n <div\n key={item.value}\n className={cn(\n 'flex items-center justify-center',\n 'py-1 px-2 min-h-5 w-fit gap-1',\n 'bg-[#9368FF] rounded-sm',\n 'text-[#FCFCFC] leading-none text-xs font-semibold',\n 'cursor-pointer',\n 'truncate',\n )}\n onClick={(e) => {\n if(!open) return;\n e.preventDefault();\n e.stopPropagation();\n onSelect?.(item)\n }}\n >\n <span className='whitespace-pre-wrap wrap-break-word line-clamp-1'>\n {item.label}\n </span>\n <XIcon className='size-3! shrink-0 text-white!'/>\n </div>\n );\n })}\n </div>\n </ScrollArea>\n )\n }\n\n return 'No supported to render'\n}\n\nconst EndAdornmentWrapper = (\n props: HTMLAttributes<HTMLDivElement> & {\n prevented?: boolean;\n }\n) => {\n const { children, prevented = true, onClick, className, ...rest } = props;\n return (\n <div\n {...rest}\n className={cn(\n 'absolute top-1/2 -translate-y-1/2 right-1',\n 'flex items-center justify-center',\n 'w-10 h-10 [&_svg]:size-5!',\n 'opacity-50 cursor-pointer hover:opacity-100',\n className,\n )}\n onClick={(e) => {\n if (!prevented) return onClick?.(e);\n e.stopPropagation();\n e.preventDefault();\n onClick?.(e);\n }}\n >\n {children}\n </div>\n )\n}\nconst ComboboxRenderTriggerEndAdornment = <Data extends object = object>(\n props: ComboboxRenderTriggerProps<Data>\n) => {\n const { open, onClearSelections } = props;\n const values = useValues(props);\n\n if (!open) {\n return (\n <EndAdornmentWrapper prevented={false}>\n <ChevronDown/>\n </EndAdornmentWrapper>\n )\n }\n\n if (!values.length) return null\n\n return (\n <EndAdornmentWrapper onClick={() => onClearSelections?.()}>\n <XIcon/>\n </EndAdornmentWrapper>\n )\n}\n\nexport const ComboboxRenderTrigger = <Data extends object>(\n props: ComboboxRenderTriggerProps<Data>\n) => {\n const {\n type,\n open,\n initialLoading,\n callbackStateParams,\n disabled,\n renderTrigger,\n } = props;\n\n return (\n <PopoverTrigger asChild className=\"border-input\">\n <Button\n variant={renderTrigger ? 'none' : 'contained'}\n color='secondary'\n role=\"combobox\"\n aria-expanded={open}\n className={cn(\n 'relative w-full justify-between bg-transparent',\n !renderTrigger && 'font-normal text-sm',\n 'border border-border',\n open && 'border-1 outline-hidden ring-1 ring-ring',\n type === 'multi' && 'pr-0',\n 'focus-visible:outline-hidden focus-visible:ring-1 focus-visible:ring-ring',\n renderTrigger && 'p-0',\n renderTrigger && open && 'p-0 border-1 ring-0 ring-transparent',\n )}\n disabled={disabled || initialLoading}\n >\n {initialLoading && <LoadingMask fullWidth/>}\n {!initialLoading && renderTrigger && renderTrigger(callbackStateParams)}\n {!initialLoading && !renderTrigger && (\n <>\n <ComboboxRenderTriggerLabel {...props} />\n <ComboboxRenderTriggerEndAdornment {...props} />\n </>\n )}\n </Button>\n </PopoverTrigger>\n )\n}\n"],"names":["useValues","props","value","flattenOptions","selectedOptions","useMemo","selectedOption","vls","labels","o","v","acc","ComboboxRenderTriggerLabel","type","DEFAULT_COMBOBOX_TYPE","placeholder","onSelect","open","values","jsx","ScrollArea","cn","item","jsxs","e","XIcon","EndAdornmentWrapper","children","prevented","onClick","className","rest","ComboboxRenderTriggerEndAdornment","onClearSelections","ChevronDown","ComboboxRenderTrigger","initialLoading","callbackStateParams","disabled","renderTrigger","PopoverTrigger","Button","LoadingMask","Fragment"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import { Command as CommandPrimitive } from 'cmdk';
2
2
  import { Dialog } from '../Dialog';
3
+ import { HTMLAttributes } from 'react';
3
4
  import * as React from "react";
4
5
  declare function Command({ className, ...props }: React.ComponentProps<typeof CommandPrimitive>): import("react/jsx-runtime").JSX.Element;
5
6
  declare function CommandDialog({ title, description, children, className, showCloseButton, ...props }: React.ComponentProps<typeof Dialog> & {
@@ -8,7 +9,11 @@ declare function CommandDialog({ title, description, children, className, showCl
8
9
  className?: string;
9
10
  showCloseButton?: boolean;
10
11
  }): import("react/jsx-runtime").JSX.Element;
11
- declare function CommandInput({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Input>): import("react/jsx-runtime").JSX.Element;
12
+ declare function CommandInput(props: React.ComponentProps<typeof CommandPrimitive.Input> & {
13
+ slotProps?: {
14
+ wrapper?: HTMLAttributes<HTMLDivElement>;
15
+ };
16
+ }): import("react/jsx-runtime").JSX.Element;
12
17
  declare function CommandList({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.List>): import("react/jsx-runtime").JSX.Element;
13
18
  declare function CommandEmpty({ ...props }: React.ComponentProps<typeof CommandPrimitive.Empty>): import("react/jsx-runtime").JSX.Element;
14
19
  declare function CommandGroup({ className, ...props }: React.ComponentProps<typeof CommandPrimitive.Group>): import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../../src/Command/Command.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,MAAM,CAAA;AAIlD,OAAO,EACL,MAAM,EAKP,MAAM,WAAW,CAAA;AAElB,iBAAS,OAAO,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,2CAWhE;AAED,iBAAS,aAAa,CAAC,EACE,KAAyB,EACzB,WAA8C,EAC9C,QAAQ,EACR,SAAS,EACT,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,GAAG;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,2CAiBA;AAED,iBAAS,YAAY,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAiB3E;AAED,iBAAS,WAAW,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAWzE;AAED,iBAAS,YAAY,CAAC,EACE,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAQ3E;AAED,iBAAS,YAAY,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAW3E;AAED,iBAAS,gBAAgB,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,SAAS,CAAC,2CAQnF;AAED,iBAAS,WAAW,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAWzE;AAED,iBAAS,eAAe,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,2CAWvD;AAED,OAAO,EACL,OAAO,EACP,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EACjB,CAAA"}
1
+ {"version":3,"file":"Command.d.ts","sourceRoot":"","sources":["../../src/Command/Command.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,MAAM,CAAA;AAIlD,OAAO,EACL,MAAM,EAKP,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,iBAAS,OAAO,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,2CAWhE;AAED,iBAAS,aAAa,CAAC,EACE,KAAyB,EACzB,WAA8C,EAC9C,QAAQ,EACR,SAAS,EACT,eAAsB,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,MAAM,CAAC,GAAG;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,OAAO,CAAA;CAC1B,2CAiBA;AAED,iBAAS,YAAY,CACnB,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,GAAG;IAC3D,SAAS,CAAC,EAAE;QACV,OAAO,CAAC,EAAE,cAAc,CAAC,cAAc,CAAC,CAAC;KAC1C,CAAA;CACF,2CAmCF;AAGD,iBAAS,WAAW,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAWzE;AAED,iBAAS,YAAY,CAAC,EACE,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAQ3E;AAED,iBAAS,YAAY,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,KAAK,CAAC,2CAW3E;AAED,iBAAS,gBAAgB,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,SAAS,CAAC,2CAQnF;AAED,iBAAS,WAAW,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAczE;AAED,iBAAS,eAAe,CAAC,EACE,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,2CAWvD;AAED,OAAO,EACL,OAAO,EACP,aAAa,EACb,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,eAAe,EACf,gBAAgB,EAChB,gBAAgB,EACjB,CAAA"}
@@ -1,16 +1,16 @@
1
- import { jsx as o, jsxs as r } from "react/jsx-runtime";
2
- import { Command as n } from "cmdk";
3
- import { Command as L } from "cmdk";
1
+ import { jsx as o, jsxs as m } from "react/jsx-runtime";
2
+ import { Command as r } from "cmdk";
3
+ import { Command as A } from "cmdk";
4
4
  import { SearchIcon as c } from "lucide-react";
5
5
  import { cn as a } from "@oneplatformdev/utils";
6
- import { Dialog as l, DialogHeader as p, DialogTitle as u, DialogDescription as g, DialogContent as f } from "../Dialog/Dialog.js";
6
+ import { Dialog as p, DialogHeader as l, DialogTitle as u, DialogDescription as g, DialogContent as h } from "../Dialog/Dialog.js";
7
7
  import "../Dialog/DialogOverlayScope.js";
8
- function h({
8
+ function f({
9
9
  className: e,
10
10
  ...t
11
11
  }) {
12
12
  return /* @__PURE__ */ o(
13
- n,
13
+ r,
14
14
  {
15
15
  "data-slot": "command",
16
16
  className: a(
@@ -21,61 +21,76 @@ function h({
21
21
  }
22
22
  );
23
23
  }
24
- function y({
24
+ function C({
25
25
  title: e = "Command Palette",
26
26
  description: t = "Search for a command to run...",
27
- children: d,
28
- className: m,
27
+ children: n,
28
+ className: d,
29
29
  showCloseButton: s = !0,
30
30
  ...i
31
31
  }) {
32
- return /* @__PURE__ */ r(l, { ...i, children: [
33
- /* @__PURE__ */ r(p, { className: "sr-only", children: [
32
+ return /* @__PURE__ */ m(p, { ...i, children: [
33
+ /* @__PURE__ */ m(l, { className: "sr-only", children: [
34
34
  /* @__PURE__ */ o(u, { children: e }),
35
35
  /* @__PURE__ */ o(g, { children: t })
36
36
  ] }),
37
37
  /* @__PURE__ */ o(
38
- f,
38
+ h,
39
39
  {
40
- className: a("overflow-hidden p-0", m),
40
+ className: a("overflow-hidden p-0", d),
41
41
  showCloseButton: s,
42
- children: /* @__PURE__ */ o(h, { className: "[&_[cmdk-group-heading]]:text-muted-foreground **:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children: d })
42
+ children: /* @__PURE__ */ o(f, { className: "[&_[cmdk-group-heading]]:text-muted-foreground **:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children: n })
43
43
  }
44
44
  )
45
45
  ] });
46
46
  }
47
- function N({
48
- className: e,
49
- ...t
50
- }) {
51
- return /* @__PURE__ */ r(
47
+ function b(e) {
48
+ const {
49
+ className: t,
50
+ slotProps: n,
51
+ ...d
52
+ } = e;
53
+ return /* @__PURE__ */ m(
52
54
  "div",
53
55
  {
54
56
  "data-slot": "command-input-wrapper",
55
- className: "flex h-9 items-center gap-2 border-b px-3",
57
+ ...n?.wrapper,
58
+ className: a(
59
+ "flex min-h-10 items-center gap-0 border-b border-[#E8E9EB] p-0 pb-2",
60
+ n?.wrapper?.className
61
+ ),
56
62
  children: [
57
- /* @__PURE__ */ o(c, { className: "size-4 shrink-0 opacity-50" }),
63
+ /* @__PURE__ */ o("div", { className: "flex items-center justify-center h-10 px-2", children: /* @__PURE__ */ o(
64
+ c,
65
+ {
66
+ strokeWidth: 1.5,
67
+ className: "size-6 shrink-0 text-[#666A78]"
68
+ }
69
+ ) }),
58
70
  /* @__PURE__ */ o(
59
- n.Input,
71
+ r.Input,
60
72
  {
61
73
  "data-slot": "command-input",
62
74
  className: a(
63
- "placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50",
64
- e
75
+ "flex h-10 w-full",
76
+ "placeholder:text-[#666A78] text-base",
77
+ "bg-transparent rounded-md outline-hidden",
78
+ "disabled:cursor-not-allowed disabled:opacity-50",
79
+ t
65
80
  ),
66
- ...t
81
+ ...d
67
82
  }
68
83
  )
69
84
  ]
70
85
  }
71
86
  );
72
87
  }
73
- function b({
88
+ function y({
74
89
  className: e,
75
90
  ...t
76
91
  }) {
77
92
  return /* @__PURE__ */ o(
78
- n.List,
93
+ r.List,
79
94
  {
80
95
  "data-slot": "command-list",
81
96
  className: a(
@@ -90,7 +105,7 @@ function D({
90
105
  ...e
91
106
  }) {
92
107
  return /* @__PURE__ */ o(
93
- n.Empty,
108
+ r.Empty,
94
109
  {
95
110
  "data-slot": "command-empty",
96
111
  className: "py-6 text-center text-sm",
@@ -98,12 +113,12 @@ function D({
98
113
  }
99
114
  );
100
115
  }
101
- function I({
116
+ function E({
102
117
  className: e,
103
118
  ...t
104
119
  }) {
105
120
  return /* @__PURE__ */ o(
106
- n.Group,
121
+ r.Group,
107
122
  {
108
123
  "data-slot": "command-group",
109
124
  className: a(
@@ -114,12 +129,12 @@ function I({
114
129
  }
115
130
  );
116
131
  }
117
- function S({
132
+ function I({
118
133
  className: e,
119
134
  ...t
120
135
  }) {
121
136
  return /* @__PURE__ */ o(
122
- n.Separator,
137
+ r.Separator,
123
138
  {
124
139
  "data-slot": "command-separator",
125
140
  className: a("bg-border -mx-1 h-px", e),
@@ -127,16 +142,19 @@ function S({
127
142
  }
128
143
  );
129
144
  }
130
- function z({
145
+ function S({
131
146
  className: e,
132
147
  ...t
133
148
  }) {
134
149
  return /* @__PURE__ */ o(
135
- n.Item,
150
+ r.Item,
136
151
  {
137
152
  "data-slot": "command-item",
138
153
  className: a(
139
- "data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
154
+ "relative flex items-center gap-2 rounded-md px-2 py-1.5 min-h-10 text-sm",
155
+ "cursor-pointer select-none",
156
+ "outline-hidden data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
157
+ "data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground",
140
158
  e
141
159
  ),
142
160
  ...t
@@ -160,15 +178,15 @@ function j({
160
178
  );
161
179
  }
162
180
  export {
163
- h as Command,
164
- y as CommandDialog,
181
+ f as Command,
182
+ C as CommandDialog,
165
183
  D as CommandEmpty,
166
- I as CommandGroup,
167
- N as CommandInput,
168
- z as CommandItem,
169
- b as CommandList,
170
- L as CommandPrimitive,
171
- S as CommandSeparator,
184
+ E as CommandGroup,
185
+ b as CommandInput,
186
+ S as CommandItem,
187
+ y as CommandList,
188
+ A as CommandPrimitive,
189
+ I as CommandSeparator,
172
190
  j as CommandShortcut
173
191
  };
174
192
  //# sourceMappingURL=Command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Command.js","sources":["../../src/Command/Command.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Command as CommandPrimitive } from \"cmdk\"\nimport { SearchIcon } from \"lucide-react\"\n\nimport { cn } from \"@oneplatformdev/utils\"\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from \"../Dialog\"\n\nfunction Command({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive>) {\n return (\n <CommandPrimitive\n data-slot=\"command\"\n className={cn(\n \"bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandDialog({\n title = \"Command Palette\",\n description = \"Search for a command to run...\",\n children,\n className,\n showCloseButton = true,\n ...props\n }: React.ComponentProps<typeof Dialog> & {\n title?: string\n description?: string\n className?: string\n showCloseButton?: boolean\n}) {\n return (\n <Dialog {...props}>\n <DialogHeader className=\"sr-only\">\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent\n className={cn(\"overflow-hidden p-0\", className)}\n showCloseButton={showCloseButton}\n >\n <Command className=\"[&_[cmdk-group-heading]]:text-muted-foreground **:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n )\n}\n\nfunction CommandInput({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.Input>) {\n return (\n <div\n data-slot=\"command-input-wrapper\"\n className=\"flex h-9 items-center gap-2 border-b px-3\"\n >\n <SearchIcon className=\"size-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n data-slot=\"command-input\"\n className={cn(\n \"placeholder:text-muted-foreground flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50\",\n className\n )}\n {...props}\n />\n </div>\n )\n}\n\nfunction CommandList({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.List>) {\n return (\n <CommandPrimitive.List\n data-slot=\"command-list\"\n className={cn(\n \"max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandEmpty({\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.Empty>) {\n return (\n <CommandPrimitive.Empty\n data-slot=\"command-empty\"\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n )\n}\n\nfunction CommandGroup({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.Group>) {\n return (\n <CommandPrimitive.Group\n data-slot=\"command-group\"\n className={cn(\n \"text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandSeparator({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.Separator>) {\n return (\n <CommandPrimitive.Separator\n data-slot=\"command-separator\"\n className={cn(\"bg-border -mx-1 h-px\", className)}\n {...props}\n />\n )\n}\n\nfunction CommandItem({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.Item>) {\n return (\n <CommandPrimitive.Item\n data-slot=\"command-item\"\n className={cn(\n \"data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandShortcut({\n className,\n ...props\n }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"command-shortcut\"\n className={cn(\n \"text-muted-foreground ml-auto text-xs tracking-widest\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandShortcut,\n CommandSeparator,\n CommandPrimitive\n}\n"],"names":["Command","className","props","jsx","CommandPrimitive","cn","CommandDialog","title","description","children","showCloseButton","jsxs","Dialog","DialogHeader","DialogTitle","DialogDescription","DialogContent","CommandInput","SearchIcon","CommandList","CommandEmpty","CommandGroup","CommandSeparator","CommandItem","CommandShortcut"],"mappings":"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"}
1
+ {"version":3,"file":"Command.js","sources":["../../src/Command/Command.tsx"],"sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\nimport { Command as CommandPrimitive } from \"cmdk\"\nimport { SearchIcon } from \"lucide-react\"\n\nimport { cn } from \"@oneplatformdev/utils\"\nimport {\n Dialog,\n DialogContent,\n DialogDescription,\n DialogHeader,\n DialogTitle,\n} from \"../Dialog\"\nimport { HTMLAttributes } from \"react\";\n\nfunction Command({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive>) {\n return (\n <CommandPrimitive\n data-slot=\"command\"\n className={cn(\n \"bg-popover text-popover-foreground flex h-full w-full flex-col overflow-hidden rounded-md\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandDialog({\n title = \"Command Palette\",\n description = \"Search for a command to run...\",\n children,\n className,\n showCloseButton = true,\n ...props\n }: React.ComponentProps<typeof Dialog> & {\n title?: string\n description?: string\n className?: string\n showCloseButton?: boolean\n}) {\n return (\n <Dialog {...props}>\n <DialogHeader className=\"sr-only\">\n <DialogTitle>{title}</DialogTitle>\n <DialogDescription>{description}</DialogDescription>\n </DialogHeader>\n <DialogContent\n className={cn(\"overflow-hidden p-0\", className)}\n showCloseButton={showCloseButton}\n >\n <Command className=\"[&_[cmdk-group-heading]]:text-muted-foreground **:data-[slot=command-input-wrapper]:h-12 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group]]:px-2 [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n )\n}\n\nfunction CommandInput(\n props: React.ComponentProps<typeof CommandPrimitive.Input> & {\n slotProps?: {\n wrapper?: HTMLAttributes<HTMLDivElement>,\n }\n }\n) {\n const {\n className,\n slotProps,\n ...rest\n } = props;\n return (\n <div\n data-slot=\"command-input-wrapper\"\n {...slotProps?.wrapper}\n className={cn(\n \"flex min-h-10 items-center gap-0 border-b border-[#E8E9EB] p-0 pb-2\",\n slotProps?.wrapper?.className\n )}\n >\n <div className='flex items-center justify-center h-10 px-2'>\n <SearchIcon\n strokeWidth={1.5}\n className=\"size-6 shrink-0 text-[#666A78]\"\n />\n </div>\n <CommandPrimitive.Input\n data-slot=\"command-input\"\n className={cn(\n 'flex h-10 w-full',\n 'placeholder:text-[#666A78] text-base',\n 'bg-transparent rounded-md outline-hidden',\n 'disabled:cursor-not-allowed disabled:opacity-50',\n className\n )}\n {...rest}\n />\n </div>\n )\n}\n\n\nfunction CommandList({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.List>) {\n return (\n <CommandPrimitive.List\n data-slot=\"command-list\"\n className={cn(\n \"max-h-[300px] scroll-py-1 overflow-x-hidden overflow-y-auto\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandEmpty({\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.Empty>) {\n return (\n <CommandPrimitive.Empty\n data-slot=\"command-empty\"\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n )\n}\n\nfunction CommandGroup({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.Group>) {\n return (\n <CommandPrimitive.Group\n data-slot=\"command-group\"\n className={cn(\n \"text-foreground [&_[cmdk-group-heading]]:text-muted-foreground overflow-hidden p-1 [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandSeparator({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.Separator>) {\n return (\n <CommandPrimitive.Separator\n data-slot=\"command-separator\"\n className={cn(\"bg-border -mx-1 h-px\", className)}\n {...props}\n />\n )\n}\n\nfunction CommandItem({\n className,\n ...props\n }: React.ComponentProps<typeof CommandPrimitive.Item>) {\n return (\n <CommandPrimitive.Item\n data-slot=\"command-item\"\n className={cn(\n 'relative flex items-center gap-2 rounded-md px-2 py-1.5 min-h-10 text-sm',\n 'cursor-pointer select-none',\n 'outline-hidden data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*=\\'size-\\'])]:size-4',\n \"data-[selected=true]:bg-accent data-[selected=true]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground\",\n className\n )}\n {...props}\n />\n )\n}\n\nfunction CommandShortcut({\n className,\n ...props\n }: React.ComponentProps<\"span\">) {\n return (\n <span\n data-slot=\"command-shortcut\"\n className={cn(\n \"text-muted-foreground ml-auto text-xs tracking-widest\",\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandShortcut,\n CommandSeparator,\n CommandPrimitive\n}\n"],"names":["Command","className","props","jsx","CommandPrimitive","cn","CommandDialog","title","description","children","showCloseButton","jsxs","Dialog","DialogHeader","DialogTitle","DialogDescription","DialogContent","CommandInput","slotProps","rest","SearchIcon","CommandList","CommandEmpty","CommandGroup","CommandSeparator","CommandItem","CommandShortcut"],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { ComponentPropsWithoutRef } from 'react';
2
+ import { DropdownMenu } from '../DropdownMenu';
3
+ export interface IContextDropdownMenuProps extends ComponentPropsWithoutRef<typeof DropdownMenu> {
4
+ coords: {
5
+ x: number;
6
+ y: number;
7
+ };
8
+ }
9
+ export declare const ContextDropdownMenu: import('react').ForwardRefExoticComponent<IContextDropdownMenuProps & {
10
+ children?: import('react').ReactNode | undefined;
11
+ } & import('react').RefAttributes<HTMLDivElement>>;
12
+ //# sourceMappingURL=ContextDropdownMenu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextDropdownMenu.d.ts","sourceRoot":"","sources":["../../src/ContextPopover/ContextDropdownMenu.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAiC,MAAM,OAAO,CAAC;AAChF,OAAO,EACN,YAAY,EAGZ,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,yBAChB,SAAQ,wBAAwB,CAAC,OAAO,YAAY,CAAC;IACrD,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACjC;AAED,eAAO,MAAM,mBAAmB;;kDAqC9B,CAAA"}
@@ -0,0 +1,41 @@
1
+ import { jsxs as p, jsx as o } from "react/jsx-runtime";
2
+ import { forwardRef as l } from "react";
3
+ import { DropdownMenu as u, DropdownMenuTrigger as c, DropdownMenuContent as d } from "../DropdownMenu/DropdownMenu.js";
4
+ const f = l((r, n) => {
5
+ const { coords: e, children: i, ...s } = r, a = new DOMRect(e.x, e.y, 0, 0);
6
+ return /* @__PURE__ */ p(u, { ...s, children: [
7
+ /* @__PURE__ */ o(c, { asChild: !0, children: /* @__PURE__ */ o(
8
+ "div",
9
+ {
10
+ ref: (t) => {
11
+ t && Object.defineProperty(t, "getBoundingClientRect", {
12
+ value: () => a,
13
+ writable: !0,
14
+ configurable: !0
15
+ });
16
+ },
17
+ className: "fixed w-[1px] h-[1px] opacity-0 pointer-events-none z-50",
18
+ style: {
19
+ left: e?.x || 0,
20
+ top: e?.y || 0
21
+ }
22
+ }
23
+ ) }),
24
+ /* @__PURE__ */ o(
25
+ d,
26
+ {
27
+ ref: n,
28
+ className: "p-2 relative w-auto h-fit min-w-[150px] max-h-[300px] overflow-y-auto",
29
+ align: "start",
30
+ sideOffset: 5,
31
+ onCloseAutoFocus: (t) => t.preventDefault(),
32
+ children: i
33
+ }
34
+ )
35
+ ] });
36
+ });
37
+ f.displayName = "ContextDropdownMenu";
38
+ export {
39
+ f as ContextDropdownMenu
40
+ };
41
+ //# sourceMappingURL=ContextDropdownMenu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextDropdownMenu.js","sources":["../../src/ContextPopover/ContextDropdownMenu.tsx"],"sourcesContent":["'use client';\n\nimport { ComponentPropsWithoutRef, forwardRef, PropsWithChildren } from \"react\";\nimport {\n\tDropdownMenu,\n\tDropdownMenuContent,\n\tDropdownMenuTrigger\n} from \"../DropdownMenu\";\n\nexport interface IContextDropdownMenuProps\n\textends ComponentPropsWithoutRef<typeof DropdownMenu> {\n\tcoords: { x: number; y: number };\n}\n\nexport const ContextDropdownMenu = forwardRef<\n\tHTMLDivElement,\n\tPropsWithChildren<IContextDropdownMenuProps>\n>((props, ref) => {\n\tconst { coords, children, ...rest } = props;\n\tconst virtualTriggerRect = new DOMRect(coords.x, coords.y, 0, 0);\n\treturn (\n\t\t<DropdownMenu {...rest}>\n\t\t\t<DropdownMenuTrigger asChild>\n\t\t\t\t<div\n\t\t\t\t\tref={(node) => {\n\t\t\t\t\t\tif (node) {\n\t\t\t\t\t\t\tObject.defineProperty(node, 'getBoundingClientRect', {\n\t\t\t\t\t\t\t\tvalue: () => virtualTriggerRect,\n\t\t\t\t\t\t\t\twritable: true,\n\t\t\t\t\t\t\t\tconfigurable: true,\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t\tclassName='fixed w-[1px] h-[1px] opacity-0 pointer-events-none z-50'\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tleft: coords?.x || 0,\n\t\t\t\t\t\ttop: coords?.y || 0,\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t</DropdownMenuTrigger>\n\t\t\t<DropdownMenuContent\n\t\t\t\tref={ref}\n\t\t\t\tclassName=\"p-2 relative w-auto h-fit min-w-[150px] max-h-[300px] overflow-y-auto\"\n\t\t\t\talign=\"start\"\n\t\t\t\tsideOffset={5}\n\t\t\t\tonCloseAutoFocus={(event) => event.preventDefault()}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</DropdownMenuContent>\n\t\t</DropdownMenu>\n\t)\n})\n\nContextDropdownMenu.displayName = 'ContextDropdownMenu'\n"],"names":["ContextDropdownMenu","forwardRef","props","ref","coords","children","rest","virtualTriggerRect","jsxs","DropdownMenu","jsx","DropdownMenuTrigger","node","DropdownMenuContent","event"],"mappings":";;;AAcO,MAAMA,IAAsBC,EAGjC,CAACC,GAAOC,MAAQ;AACjB,QAAM,EAAE,QAAAC,GAAQ,UAAAC,GAAU,GAAGC,MAASJ,GAChCK,IAAqB,IAAI,QAAQH,EAAO,GAAGA,EAAO,GAAG,GAAG,CAAC;AAC/D,SACC,gBAAAI,EAACC,GAAA,EAAc,GAAGH,GACjB,UAAA;AAAA,IAAA,gBAAAI,EAACC,GAAA,EAAoB,SAAO,IAC3B,UAAA,gBAAAD;AAAA,MAAC;AAAA,MAAA;AAAA,QACA,KAAK,CAACE,MAAS;AACd,UAAIA,KACH,OAAO,eAAeA,GAAM,yBAAyB;AAAA,YACpD,OAAO,MAAML;AAAA,YACb,UAAU;AAAA,YACV,cAAc;AAAA,UAAA,CACd;AAAA,QAEH;AAAA,QACA,WAAU;AAAA,QACV,OAAO;AAAA,UACN,MAAMH,GAAQ,KAAK;AAAA,UACnB,KAAKA,GAAQ,KAAK;AAAA,QAAA;AAAA,MACnB;AAAA,IAAA,GAEF;AAAA,IACA,gBAAAM;AAAA,MAACG;AAAA,MAAA;AAAA,QACA,KAAAV;AAAA,QACA,WAAU;AAAA,QACV,OAAM;AAAA,QACN,YAAY;AAAA,QACZ,kBAAkB,CAACW,MAAUA,EAAM,eAAA;AAAA,QAElC,UAAAT;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,GACD;AAEF,CAAC;AAEDL,EAAoB,cAAc;"}
@@ -0,0 +1,12 @@
1
+ import { ComponentPropsWithoutRef } from 'react';
2
+ import { Popover } from '../Popover';
3
+ export interface IContextPopoverProps extends ComponentPropsWithoutRef<typeof Popover> {
4
+ coords: {
5
+ x: number;
6
+ y: number;
7
+ };
8
+ }
9
+ export declare const ContextPopover: import('react').ForwardRefExoticComponent<IContextPopoverProps & {
10
+ children?: import('react').ReactNode | undefined;
11
+ } & import('react').RefAttributes<HTMLDivElement>>;
12
+ //# sourceMappingURL=ContextPopover.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextPopover.d.ts","sourceRoot":"","sources":["../../src/ContextPopover/ContextPopover.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAiC,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,OAAO,EAAkC,MAAM,YAAY,CAAC;AAErE,MAAM,WAAW,oBAChB,SAAQ,wBAAwB,CAAC,OAAO,OAAO,CAAC;IAChD,MAAM,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACjC;AAED,eAAO,MAAM,cAAc;;kDA2BzB,CAAA"}
@@ -0,0 +1,34 @@
1
+ import { jsxs as i, jsx as e } from "react/jsx-runtime";
2
+ import { forwardRef as a } from "react";
3
+ import { Popover as l, PopoverTrigger as f, PopoverContent as x } from "../Popover/Popover.js";
4
+ const m = a((t, r) => {
5
+ const { coords: o, children: p, ...n } = t;
6
+ return /* @__PURE__ */ i(l, { ...n, children: [
7
+ /* @__PURE__ */ e(f, { asChild: !0, children: /* @__PURE__ */ e(
8
+ "div",
9
+ {
10
+ className: "fixed w-[1px] h-[1px] opacity-0 pointer-events-none z-50",
11
+ style: {
12
+ left: o?.x || 0,
13
+ top: o?.y || 0
14
+ }
15
+ }
16
+ ) }),
17
+ /* @__PURE__ */ e(
18
+ x,
19
+ {
20
+ ref: r,
21
+ className: "p-2 relative w-auto h-fit min-w-[150px] max-h-[300px] overflow-y-auto",
22
+ align: "start",
23
+ sideOffset: 5,
24
+ onOpenAutoFocus: (s) => s.preventDefault(),
25
+ children: p
26
+ }
27
+ )
28
+ ] });
29
+ });
30
+ m.displayName = "ContextPopover";
31
+ export {
32
+ m as ContextPopover
33
+ };
34
+ //# sourceMappingURL=ContextPopover.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ContextPopover.js","sources":["../../src/ContextPopover/ContextPopover.tsx"],"sourcesContent":["import { ComponentPropsWithoutRef, forwardRef, PropsWithChildren } from \"react\";\nimport { Popover, PopoverContent, PopoverTrigger } from \"../Popover\";\n\nexport interface IContextPopoverProps\n\textends ComponentPropsWithoutRef<typeof Popover> {\n\tcoords: { x: number; y: number };\n}\n\nexport const ContextPopover = forwardRef<\n\tHTMLDivElement,\n\tPropsWithChildren<IContextPopoverProps>\n>((props, ref) => {\n\tconst { coords, children, ...rest } = props;\n\treturn (\n\t\t<Popover {...rest}>\n\t\t\t<PopoverTrigger asChild>\n\t\t\t\t<div\n\t\t\t\t\tclassName='fixed w-[1px] h-[1px] opacity-0 pointer-events-none z-50'\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tleft: coords?.x || 0,\n\t\t\t\t\t\ttop: coords?.y || 0,\n\t\t\t\t\t}}\n\t\t\t\t/>\n\t\t\t</PopoverTrigger>\n\t\t\t<PopoverContent\n\t\t\t\tref={ref}\n\t\t\t\tclassName=\"p-2 relative w-auto h-fit min-w-[150px] max-h-[300px] overflow-y-auto\"\n\t\t\t\talign=\"start\"\n\t\t\t\tsideOffset={5}\n\t\t\t\tonOpenAutoFocus={(event) => event.preventDefault()}\n\t\t\t>\n\t\t\t\t{children}\n\t\t\t</PopoverContent>\n\t\t</Popover>\n\t)\n})\n\nContextPopover.displayName = 'ContextPopover'\n"],"names":["ContextPopover","forwardRef","props","ref","coords","children","rest","jsxs","Popover","jsx","PopoverTrigger","PopoverContent","event"],"mappings":";;;AAQO,MAAMA,IAAiBC,EAG5B,CAACC,GAAOC,MAAQ;AACjB,QAAM,EAAE,QAAAC,GAAQ,UAAAC,GAAU,GAAGC,MAASJ;AACtC,SACC,gBAAAK,EAACC,GAAA,EAAS,GAAGF,GACZ,UAAA;AAAA,IAAA,gBAAAG,EAACC,GAAA,EAAe,SAAO,IACtB,UAAA,gBAAAD;AAAA,MAAC;AAAA,MAAA;AAAA,QACA,WAAU;AAAA,QACV,OAAO;AAAA,UACN,MAAML,GAAQ,KAAK;AAAA,UACnB,KAAKA,GAAQ,KAAK;AAAA,QAAA;AAAA,MACnB;AAAA,IAAA,GAEF;AAAA,IACA,gBAAAK;AAAA,MAACE;AAAA,MAAA;AAAA,QACA,KAAAR;AAAA,QACA,WAAU;AAAA,QACV,OAAM;AAAA,QACN,YAAY;AAAA,QACZ,iBAAiB,CAACS,MAAUA,EAAM,eAAA;AAAA,QAEjC,UAAAP;AAAA,MAAA;AAAA,IAAA;AAAA,EACF,GACD;AAEF,CAAC;AAEDL,EAAe,cAAc;"}
@@ -0,0 +1,4 @@
1
+ export * from './ContextPopover';
2
+ export * from './ContextDropdownMenu';
3
+ export * from './useContextPopoverHandler';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ContextPopover/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAA;AAChC,cAAc,uBAAuB,CAAA;AACrC,cAAc,4BAA4B,CAAA"}
@@ -0,0 +1,9 @@
1
+ import { ContextPopover as r } from "./ContextPopover.js";
2
+ import { ContextDropdownMenu as n } from "./ContextDropdownMenu.js";
3
+ import { useContextPopoverHandler as x } from "./useContextPopoverHandler.js";
4
+ export {
5
+ n as ContextDropdownMenu,
6
+ r as ContextPopover,
7
+ x as useContextPopoverHandler
8
+ };
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
@@ -0,0 +1,14 @@
1
+ import { MouseEvent } from 'react';
2
+ export declare const useContextPopoverHandler: <Data, Element extends HTMLDivElement = HTMLDivElement>() => {
3
+ onContext: (event: MouseEvent, data: Data) => void;
4
+ ref: import('react').RefObject<Element>;
5
+ open: boolean;
6
+ setOpen: import('react').Dispatch<import('react').SetStateAction<boolean>>;
7
+ coords: {
8
+ x: number;
9
+ y: number;
10
+ };
11
+ data: Data | null;
12
+ };
13
+ export type IUseContextPopoverHandler<Data> = ReturnType<typeof useContextPopoverHandler<Data>>;
14
+ //# sourceMappingURL=useContextPopoverHandler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useContextPopoverHandler.d.ts","sourceRoot":"","sources":["../../src/ContextPopover/useContextPopoverHandler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiC,MAAM,OAAO,CAAC;AAGlE,eAAO,MAAM,wBAAwB,GACpC,IAAI,EACJ,OAAO,SAAS,cAAc,GAAG,cAAc;uBAeT,UAAU,QAAQ,IAAI;;;;;;;;;CAgB5D,CAAA;AAED,MAAM,MAAM,yBAAyB,CAAC,IAAI,IAAI,UAAU,CAAC,OAAO,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC"}
@@ -0,0 +1,21 @@
1
+ import { useState as o, useRef as f, useCallback as i } from "react";
2
+ import { useOnClickOutside as p } from "@oneplatformdev/hooks";
3
+ const m = () => {
4
+ const [n, t] = o(!1), [r, u] = o({ x: 0, y: 0 }), [a, s] = o(null), l = f(null);
5
+ return p(l, () => {
6
+ n && (t(!1), s(null));
7
+ }), {
8
+ onContext: i((e, c) => {
9
+ e.preventDefault(), u({ x: e.clientX, y: e.clientY }), s(c), t(!0);
10
+ }, []),
11
+ ref: l,
12
+ open: n,
13
+ setOpen: t,
14
+ coords: r,
15
+ data: a
16
+ };
17
+ };
18
+ export {
19
+ m as useContextPopoverHandler
20
+ };
21
+ //# sourceMappingURL=useContextPopoverHandler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useContextPopoverHandler.js","sources":["../../src/ContextPopover/useContextPopoverHandler.ts"],"sourcesContent":["import { MouseEvent, useCallback, useRef, useState } from \"react\";\nimport { useOnClickOutside } from \"@oneplatformdev/hooks\";\n\nexport const useContextPopoverHandler = <\n\tData,\n\tElement extends HTMLDivElement = HTMLDivElement\n>() => {\n\tconst [ open, setOpen ] = useState(false);\n\tconst [ coords, setCoords ] = useState({ x: 0, y: 0 });\n\tconst [ data, setData ] = useState<Data | null>(null);\n\n\tconst ref = useRef<Element>(null!);\n\n\tuseOnClickOutside(ref, () => {\n\t\tif (open) {\n\t\t\tsetOpen(false);\n\t\t\tsetData(null);\n\t\t}\n\t});\n\n\tconst onContext = useCallback((event: MouseEvent, data: Data) => {\n\t\tevent.preventDefault()\n\n\t\tsetCoords({ x: event.clientX, y: event.clientY });\n\t\tsetData(data);\n\t\tsetOpen(true);\n\t}, [])\n\n\treturn {\n\t\tonContext,\n\t\tref,\n\t\topen,\n\t\tsetOpen,\n\t\tcoords,\n\t\tdata,\n\t}\n}\n\nexport type IUseContextPopoverHandler<Data> = ReturnType<typeof useContextPopoverHandler<Data>>;\n"],"names":["useContextPopoverHandler","open","setOpen","useState","coords","setCoords","data","setData","ref","useRef","useOnClickOutside","useCallback","event"],"mappings":";;AAGO,MAAMA,IAA2B,MAGjC;AACN,QAAM,CAAEC,GAAMC,CAAQ,IAAIC,EAAS,EAAK,GAClC,CAAEC,GAAQC,CAAU,IAAIF,EAAS,EAAE,GAAG,GAAG,GAAG,GAAG,GAC/C,CAAEG,GAAMC,CAAQ,IAAIJ,EAAsB,IAAI,GAE9CK,IAAMC,EAAgB,IAAK;AAEjC,SAAAC,EAAkBF,GAAK,MAAM;AAC5B,IAAIP,MACHC,EAAQ,EAAK,GACbK,EAAQ,IAAI;AAAA,EAEd,CAAC,GAUM;AAAA,IACN,WATiBI,EAAY,CAACC,GAAmBN,MAAe;AAChE,MAAAM,EAAM,eAAA,GAENP,EAAU,EAAE,GAAGO,EAAM,SAAS,GAAGA,EAAM,SAAS,GAChDL,EAAQD,CAAI,GACZJ,EAAQ,EAAI;AAAA,IACb,GAAG,CAAA,CAAE;AAAA,IAIJ,KAAAM;AAAA,IACA,MAAAP;AAAA,IACA,SAAAC;AAAA,IACA,QAAAE;AAAA,IACA,MAAAE;AAAA,EAAA;AAEF;"}