@k3-tech/react-kit 0.0.59 → 0.0.61

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 (62) hide show
  1. package/dist/index.js +978 -851
  2. package/dist/kit/builder/data-table/components/DataTable.d.ts +7 -1
  3. package/dist/kit/builder/data-table/components/DataTable.d.ts.map +1 -1
  4. package/dist/kit/builder/form/components/FormBuilderField.d.ts.map +1 -1
  5. package/dist/kit/builder/form/components/fields/ArrayField.d.ts.map +1 -1
  6. package/dist/kit/builder/form/components/fields/CheckboxField.d.ts.map +1 -1
  7. package/dist/kit/builder/form/components/fields/DateField.d.ts.map +1 -1
  8. package/dist/kit/builder/form/components/fields/DatePickerField.d.ts.map +1 -1
  9. package/dist/kit/builder/form/components/fields/DateRangePickerField.d.ts.map +1 -1
  10. package/dist/kit/builder/form/components/fields/DateTimePickerField.d.ts.map +1 -1
  11. package/dist/kit/builder/form/components/fields/DateTimeRangePickerField.d.ts.map +1 -1
  12. package/dist/kit/builder/form/components/fields/FileField.d.ts.map +1 -1
  13. package/dist/kit/builder/form/components/fields/MonthPickerField.d.ts.map +1 -1
  14. package/dist/kit/builder/form/components/fields/MonthRangePickerField.d.ts.map +1 -1
  15. package/dist/kit/builder/form/components/fields/NumberField.d.ts.map +1 -1
  16. package/dist/kit/builder/form/components/fields/RadioField.d.ts.map +1 -1
  17. package/dist/kit/builder/form/components/fields/SelectField.d.ts.map +1 -1
  18. package/dist/kit/builder/form/components/fields/SwitchField.d.ts.map +1 -1
  19. package/dist/kit/builder/form/components/fields/TextField.d.ts.map +1 -1
  20. package/dist/kit/builder/form/components/fields/TextareaField.d.ts.map +1 -1
  21. package/dist/kit/builder/form/components/fields/TimePickerField.d.ts.map +1 -1
  22. package/dist/kit/builder/form/components/fields/TimeRangePickerField.d.ts.map +1 -1
  23. package/dist/kit/builder/form/types.d.ts +6 -1
  24. package/dist/kit/builder/form/types.d.ts.map +1 -1
  25. package/dist/kit/components/autocomplete/Autocomplete.d.ts +2 -1
  26. package/dist/kit/components/autocomplete/Autocomplete.d.ts.map +1 -1
  27. package/dist/kit/components/fileuploader/FileUploader.d.ts +1 -1
  28. package/dist/kit/components/fileuploader/FileUploader.d.ts.map +1 -1
  29. package/dist/kit/components/fileuploader/types.d.ts +1 -0
  30. package/dist/kit/components/fileuploader/types.d.ts.map +1 -1
  31. package/dist/kit/components/info-tooltip/InfoTooltip.d.ts +6 -0
  32. package/dist/kit/components/info-tooltip/InfoTooltip.d.ts.map +1 -0
  33. package/dist/kit/themes/clean-slate.css +6 -2
  34. package/dist/kit/themes/default.css +6 -2
  35. package/dist/kit/themes/minimal-modern.css +6 -2
  36. package/dist/kit/themes/spotify.css +6 -2
  37. package/package.json +1 -1
  38. package/src/kit/builder/data-table/components/DataTable.tsx +110 -97
  39. package/src/kit/builder/form/components/FormBuilderField.tsx +17 -2
  40. package/src/kit/builder/form/components/fields/ArrayField.tsx +1 -0
  41. package/src/kit/builder/form/components/fields/CheckboxField.tsx +21 -8
  42. package/src/kit/builder/form/components/fields/DateField.tsx +1 -0
  43. package/src/kit/builder/form/components/fields/DatePickerField.tsx +1 -0
  44. package/src/kit/builder/form/components/fields/DateRangePickerField.tsx +3 -2
  45. package/src/kit/builder/form/components/fields/DateTimePickerField.tsx +1 -0
  46. package/src/kit/builder/form/components/fields/DateTimeRangePickerField.tsx +1 -0
  47. package/src/kit/builder/form/components/fields/FileField.tsx +1 -0
  48. package/src/kit/builder/form/components/fields/MonthPickerField.tsx +1 -0
  49. package/src/kit/builder/form/components/fields/MonthRangePickerField.tsx +1 -0
  50. package/src/kit/builder/form/components/fields/NumberField.tsx +70 -2
  51. package/src/kit/builder/form/components/fields/RadioField.tsx +1 -0
  52. package/src/kit/builder/form/components/fields/SelectField.tsx +1 -0
  53. package/src/kit/builder/form/components/fields/SwitchField.tsx +11 -0
  54. package/src/kit/builder/form/components/fields/TextField.tsx +1 -0
  55. package/src/kit/builder/form/components/fields/TextareaField.tsx +2 -1
  56. package/src/kit/builder/form/components/fields/TimePickerField.tsx +1 -0
  57. package/src/kit/builder/form/components/fields/TimeRangePickerField.tsx +1 -0
  58. package/src/kit/builder/form/types.ts +6 -1
  59. package/src/kit/components/autocomplete/Autocomplete.tsx +6 -3
  60. package/src/kit/components/fileuploader/FileUploader.tsx +2 -0
  61. package/src/kit/components/fileuploader/types.ts +2 -0
  62. package/src/kit/components/info-tooltip/InfoTooltip.tsx +18 -0
@@ -2,8 +2,8 @@ import { useCombobox } from 'downshift';
2
2
  import { Check, ChevronsUpDown, Loader2, X } from 'lucide-react';
3
3
  import {
4
4
  forwardRef,
5
- ReactElement,
6
- RefAttributes,
5
+ type ReactElement,
6
+ type RefAttributes,
7
7
  useCallback,
8
8
  useEffect,
9
9
  useImperativeHandle,
@@ -54,6 +54,7 @@ export type AutocompleteProps<T = unknown> = {
54
54
  defaultValue?: string | number | null | Array<string | number>;
55
55
  allowCustomValue?: boolean;
56
56
  clearable?: boolean;
57
+ dataTestID?: string;
57
58
  initialSelectedOptions?: AutocompleteOption<T> | AutocompleteOption<T>[];
58
59
  loadSelected?: (
59
60
  values: Array<string | number>,
@@ -83,6 +84,7 @@ export function Autocomplete<T = unknown>({
83
84
  defaultValue,
84
85
  allowCustomValue = false,
85
86
  clearable = true,
87
+ dataTestID,
86
88
  initialSelectedOptions,
87
89
  loadSelected,
88
90
  }: AutocompleteProps<T>, ref?: any) {
@@ -554,7 +556,7 @@ export function Autocomplete<T = unknown>({
554
556
  <div
555
557
  inert={disabled}
556
558
  className={cn(
557
- 'flex min-h-10 items-center gap-2 rounded-md border border-border bg-background px-3 py-2 text-sm',
559
+ 'flex min-h-9 items-center gap-2 rounded-md border border-border bg-background px-3 py-2 text-sm',
558
560
  'ring-offset-background',
559
561
  'focus-within:outline-none focus-within:ring-2 focus-within:ring-ring focus-within:ring-offset-2',
560
562
  disabled && 'cursor-not-allowed opacity-50',
@@ -612,6 +614,7 @@ export function Autocomplete<T = unknown>({
612
614
  }
613
615
  },
614
616
  })}
617
+ data-testid={dataTestID}
615
618
  className={cn(
616
619
  'flex-1 bg-transparent outline-none placeholder:text-muted-foreground',
617
620
  width ? 'w-full' : 'min-w-[120px]'
@@ -214,6 +214,7 @@ export function FileUploader({
214
214
  withImagePreview = false,
215
215
  placeholder = "Drag and drop files here, or click to select",
216
216
  className,
217
+ dataTestID
217
218
  }: FileUploaderProps) {
218
219
  const isControlled = value !== undefined;
219
220
  const [files, setFiles] = useState<FileRecord[]>(() => defaultValue ?? []);
@@ -747,6 +748,7 @@ export function FileUploader({
747
748
  ) : null}
748
749
  <div {...getRootProps({ className: rootClasses })}>
749
750
  <input
751
+ data-testid={dataTestID}
750
752
  {...getInputProps({
751
753
  onClick: (e) => {
752
754
  (e.target as HTMLInputElement).value = "";
@@ -89,4 +89,6 @@ export type FileUploaderProps = {
89
89
  placeholder?: string;
90
90
  /** Additional className */
91
91
  className?: string;
92
+
93
+ dataTestID?: string
92
94
  };
@@ -0,0 +1,18 @@
1
+ import { Tooltip, TooltipContent, TooltipTrigger } from '@/shadcn/ui/tooltip';
2
+ import { InfoIcon } from 'lucide-react';
3
+
4
+ export interface InfoTooltipProps {
5
+ content: React.ReactNode;
6
+ iconSize?: string | number;
7
+ }
8
+
9
+ export default function InfoTooltip({ iconSize, content }: InfoTooltipProps) {
10
+ return (
11
+ <Tooltip>
12
+ <TooltipTrigger>
13
+ <InfoIcon size={iconSize} />
14
+ </TooltipTrigger>
15
+ <TooltipContent>{content}</TooltipContent>
16
+ </Tooltip>
17
+ );
18
+ }