@douglasneuroinformatics/libui 6.2.0 → 6.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (106) hide show
  1. package/dist/components/ComboBox/ComboBox.d.ts +27 -0
  2. package/dist/components/ComboBox/ComboBox.d.ts.map +1 -0
  3. package/dist/components/ComboBox/ComboBox.js +37 -0
  4. package/dist/components/ComboBox/ComboBox.js.map +1 -0
  5. package/dist/components/ComboBox/ComboBoxChips.d.ts +9 -0
  6. package/dist/components/ComboBox/ComboBoxChips.d.ts.map +1 -0
  7. package/dist/components/ComboBox/ComboBoxChips.js +17 -0
  8. package/dist/components/ComboBox/ComboBoxChips.js.map +1 -0
  9. package/dist/components/ComboBox/ComboBoxClear.d.ts +4 -0
  10. package/dist/components/ComboBox/ComboBoxClear.d.ts.map +1 -0
  11. package/dist/components/ComboBox/ComboBoxClear.js +10 -0
  12. package/dist/components/ComboBox/ComboBoxClear.js.map +1 -0
  13. package/dist/components/ComboBox/ComboBoxCollection.d.ts +4 -0
  14. package/dist/components/ComboBox/ComboBoxCollection.d.ts.map +1 -0
  15. package/dist/components/ComboBox/ComboBoxCollection.js +7 -0
  16. package/dist/components/ComboBox/ComboBoxCollection.js.map +1 -0
  17. package/dist/components/ComboBox/ComboBoxContent.d.ts +4 -0
  18. package/dist/components/ComboBox/ComboBoxContent.d.ts.map +1 -0
  19. package/dist/components/ComboBox/ComboBoxContent.js +8 -0
  20. package/dist/components/ComboBox/ComboBoxContent.js.map +1 -0
  21. package/dist/components/ComboBox/ComboBoxEmpty.d.ts +4 -0
  22. package/dist/components/ComboBox/ComboBoxEmpty.d.ts.map +1 -0
  23. package/dist/components/ComboBox/ComboBoxEmpty.js +8 -0
  24. package/dist/components/ComboBox/ComboBoxEmpty.js.map +1 -0
  25. package/dist/components/ComboBox/ComboBoxGroup.d.ts +4 -0
  26. package/dist/components/ComboBox/ComboBoxGroup.d.ts.map +1 -0
  27. package/dist/components/ComboBox/ComboBoxGroup.js +8 -0
  28. package/dist/components/ComboBox/ComboBoxGroup.js.map +1 -0
  29. package/dist/components/ComboBox/ComboBoxInput.d.ts +7 -0
  30. package/dist/components/ComboBox/ComboBoxInput.d.ts.map +1 -0
  31. package/dist/components/ComboBox/ComboBoxInput.js +17 -0
  32. package/dist/components/ComboBox/ComboBoxInput.js.map +1 -0
  33. package/dist/components/ComboBox/ComboBoxItem.d.ts +4 -0
  34. package/dist/components/ComboBox/ComboBoxItem.d.ts.map +1 -0
  35. package/dist/components/ComboBox/ComboBoxItem.js +9 -0
  36. package/dist/components/ComboBox/ComboBoxItem.js.map +1 -0
  37. package/dist/components/ComboBox/ComboBoxLabel.d.ts +4 -0
  38. package/dist/components/ComboBox/ComboBoxLabel.d.ts.map +1 -0
  39. package/dist/components/ComboBox/ComboBoxLabel.js +8 -0
  40. package/dist/components/ComboBox/ComboBoxLabel.js.map +1 -0
  41. package/dist/components/ComboBox/ComboBoxList.d.ts +4 -0
  42. package/dist/components/ComboBox/ComboBoxList.d.ts.map +1 -0
  43. package/dist/components/ComboBox/ComboBoxList.js +8 -0
  44. package/dist/components/ComboBox/ComboBoxList.js.map +1 -0
  45. package/dist/components/ComboBox/ComboBoxSeparator.d.ts +4 -0
  46. package/dist/components/ComboBox/ComboBoxSeparator.d.ts.map +1 -0
  47. package/dist/components/ComboBox/ComboBoxSeparator.js +8 -0
  48. package/dist/components/ComboBox/ComboBoxSeparator.js.map +1 -0
  49. package/dist/components/ComboBox/ComboBoxTrigger.d.ts +4 -0
  50. package/dist/components/ComboBox/ComboBoxTrigger.d.ts.map +1 -0
  51. package/dist/components/ComboBox/ComboBoxTrigger.js +9 -0
  52. package/dist/components/ComboBox/ComboBoxTrigger.js.map +1 -0
  53. package/dist/components/ComboBox/ComboBoxValue.d.ts +4 -0
  54. package/dist/components/ComboBox/ComboBoxValue.d.ts.map +1 -0
  55. package/dist/components/ComboBox/ComboBoxValue.js +7 -0
  56. package/dist/components/ComboBox/ComboBoxValue.js.map +1 -0
  57. package/dist/components/DatePicker/Calendar.js +1 -1
  58. package/dist/components/DatePicker/Calendar.js.map +1 -1
  59. package/dist/components/InputGroup/InputGroup.d.ts +4 -0
  60. package/dist/components/InputGroup/InputGroup.d.ts.map +1 -0
  61. package/dist/components/InputGroup/InputGroup.js +8 -0
  62. package/dist/components/InputGroup/InputGroup.js.map +1 -0
  63. package/dist/components/InputGroup/InputGroupAddon.d.ts +8 -0
  64. package/dist/components/InputGroup/InputGroupAddon.d.ts.map +1 -0
  65. package/dist/components/InputGroup/InputGroupAddon.js +23 -0
  66. package/dist/components/InputGroup/InputGroupAddon.js.map +1 -0
  67. package/dist/components/InputGroup/InputGroupButton.d.ts +9 -0
  68. package/dist/components/InputGroup/InputGroupButton.d.ts.map +1 -0
  69. package/dist/components/InputGroup/InputGroupButton.js +29 -0
  70. package/dist/components/InputGroup/InputGroupButton.js.map +1 -0
  71. package/dist/components/InputGroup/InputGroupInput.d.ts +4 -0
  72. package/dist/components/InputGroup/InputGroupInput.d.ts.map +1 -0
  73. package/dist/components/InputGroup/InputGroupInput.js +9 -0
  74. package/dist/components/InputGroup/InputGroupInput.js.map +1 -0
  75. package/dist/components/InputGroup/InputGroupText.d.ts +4 -0
  76. package/dist/components/InputGroup/InputGroupText.d.ts.map +1 -0
  77. package/dist/components/InputGroup/InputGroupText.js +8 -0
  78. package/dist/components/InputGroup/InputGroupText.js.map +1 -0
  79. package/dist/components/InputGroup/InputGroupTextArea.d.ts +4 -0
  80. package/dist/components/InputGroup/InputGroupTextArea.d.ts.map +1 -0
  81. package/dist/components/InputGroup/InputGroupTextArea.js +9 -0
  82. package/dist/components/InputGroup/InputGroupTextArea.js.map +1 -0
  83. package/package.json +2 -1
  84. package/src/components/ComboBox/ComboBox.stories.tsx +31 -0
  85. package/src/components/ComboBox/ComboBox.tsx +41 -0
  86. package/src/components/ComboBox/ComboBoxChips.tsx +69 -0
  87. package/src/components/ComboBox/ComboBoxClear.tsx +23 -0
  88. package/src/components/ComboBox/ComboBoxCollection.tsx +7 -0
  89. package/src/components/ComboBox/ComboBoxContent.tsx +39 -0
  90. package/src/components/ComboBox/ComboBoxEmpty.tsx +18 -0
  91. package/src/components/ComboBox/ComboBoxGroup.tsx +9 -0
  92. package/src/components/ComboBox/ComboBoxInput.tsx +51 -0
  93. package/src/components/ComboBox/ComboBoxItem.tsx +28 -0
  94. package/src/components/ComboBox/ComboBoxLabel.tsx +15 -0
  95. package/src/components/ComboBox/ComboBoxList.tsx +18 -0
  96. package/src/components/ComboBox/ComboBoxSeparator.tsx +15 -0
  97. package/src/components/ComboBox/ComboBoxTrigger.tsx +23 -0
  98. package/src/components/ComboBox/ComboBoxValue.tsx +7 -0
  99. package/src/components/DatePicker/Calendar.tsx +1 -1
  100. package/src/components/InputGroup/InputGroup.stories.tsx +27 -0
  101. package/src/components/InputGroup/InputGroup.tsx +19 -0
  102. package/src/components/InputGroup/InputGroupAddon.tsx +42 -0
  103. package/src/components/InputGroup/InputGroupButton.tsx +50 -0
  104. package/src/components/InputGroup/InputGroupInput.tsx +20 -0
  105. package/src/components/InputGroup/InputGroupText.tsx +17 -0
  106. package/src/components/InputGroup/InputGroupTextArea.tsx +20 -0
@@ -0,0 +1,50 @@
1
+ import * as React from 'react';
2
+
3
+ import { cva } from 'class-variance-authority';
4
+ import type { VariantProps } from 'class-variance-authority';
5
+
6
+ import { cn } from '#utils';
7
+
8
+ import { Button } from '../Button/Button.tsx';
9
+
10
+ const inputGroupButtonVariants = cva('gap-2 text-sm flex items-center shadow-none', {
11
+ defaultVariants: {
12
+ size: 'xs'
13
+ },
14
+ variants: {
15
+ size: {
16
+ 'icon-sm': 'size-8 p-0 has-[>svg]:p-0',
17
+ 'icon-xs': 'size-6 rounded-[calc(var(--radius)-3px)] p-0 has-[>svg]:p-0',
18
+ sm: '',
19
+ xs: "h-6 gap-1 rounded-[calc(var(--radius)-3px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5"
20
+ }
21
+ }
22
+ });
23
+
24
+ const buttonSizeMap = {
25
+ 'icon-sm': 'icon',
26
+ 'icon-xs': 'icon',
27
+ sm: 'sm',
28
+ xs: 'sm'
29
+ } as const;
30
+
31
+ const InputGroupButton = ({
32
+ className,
33
+ size = 'xs',
34
+ type = 'button',
35
+ variant = 'ghost',
36
+ ...props
37
+ }: Omit<React.ComponentProps<typeof Button>, 'size'> & VariantProps<typeof inputGroupButtonVariants>) => {
38
+ return (
39
+ <Button
40
+ className={cn(inputGroupButtonVariants({ size }), className)}
41
+ data-size={size}
42
+ size={buttonSizeMap[size ?? 'xs']}
43
+ type={type}
44
+ variant={variant}
45
+ {...props}
46
+ />
47
+ );
48
+ };
49
+
50
+ export { InputGroupButton };
@@ -0,0 +1,20 @@
1
+ import * as React from 'react';
2
+
3
+ import { cn } from '#utils';
4
+
5
+ import { Input } from '../Input/Input.tsx';
6
+
7
+ const InputGroupInput = ({ className, ...props }: React.ComponentProps<'input'>) => {
8
+ return (
9
+ <Input
10
+ className={cn(
11
+ 'flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent',
12
+ className
13
+ )}
14
+ data-slot="input-group-control"
15
+ {...props}
16
+ />
17
+ );
18
+ };
19
+
20
+ export { InputGroupInput };
@@ -0,0 +1,17 @@
1
+ import * as React from 'react';
2
+
3
+ import { cn } from '#utils';
4
+
5
+ const InputGroupText = ({ className, ...props }: React.ComponentProps<'span'>) => {
6
+ return (
7
+ <span
8
+ className={cn(
9
+ "text-muted-foreground flex items-center gap-2 text-sm [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",
10
+ className
11
+ )}
12
+ {...props}
13
+ />
14
+ );
15
+ };
16
+
17
+ export { InputGroupText };
@@ -0,0 +1,20 @@
1
+ import * as React from 'react';
2
+
3
+ import { cn } from '#utils';
4
+
5
+ import { TextArea } from '../TextArea/TextArea.tsx';
6
+
7
+ const InputGroupTextArea = ({ className, ...props }: React.ComponentProps<'textarea'>) => {
8
+ return (
9
+ <TextArea
10
+ className={cn(
11
+ 'flex-1 resize-none rounded-none border-0 bg-transparent py-2 shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent',
12
+ className
13
+ )}
14
+ data-slot="input-group-control"
15
+ {...props}
16
+ />
17
+ );
18
+ };
19
+
20
+ export { InputGroupTextArea };