@baseplate-dev/ui-components 0.6.3 → 0.6.5

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 (43) hide show
  1. package/CHANGELOG.md +22 -0
  2. package/dist/base-styles.css +6 -8
  3. package/dist/components/ui/badge/badge.d.ts +3 -0
  4. package/dist/components/ui/badge/badge.d.ts.map +1 -1
  5. package/dist/components/ui/badge/badge.js +7 -4
  6. package/dist/components/ui/badge/badge.js.map +1 -1
  7. package/dist/components/ui/button/button.d.ts +1 -1
  8. package/dist/components/ui/button/button.d.ts.map +1 -1
  9. package/dist/components/ui/combobox-field/combobox-field.d.ts +2 -1
  10. package/dist/components/ui/combobox-field/combobox-field.d.ts.map +1 -1
  11. package/dist/components/ui/combobox-field/combobox-field.js +2 -2
  12. package/dist/components/ui/combobox-field/combobox-field.js.map +1 -1
  13. package/dist/components/ui/empty/empty.d.ts +17 -0
  14. package/dist/components/ui/empty/empty.d.ts.map +1 -0
  15. package/dist/components/ui/empty/empty.js +39 -0
  16. package/dist/components/ui/empty/empty.js.map +1 -0
  17. package/dist/components/ui/index.d.ts +2 -1
  18. package/dist/components/ui/index.d.ts.map +1 -1
  19. package/dist/components/ui/index.js +2 -1
  20. package/dist/components/ui/index.js.map +1 -1
  21. package/dist/components/ui/item/item.d.ts +29 -0
  22. package/dist/components/ui/item/item.d.ts.map +1 -0
  23. package/dist/components/ui/item/item.js +85 -0
  24. package/dist/components/ui/item/item.js.map +1 -0
  25. package/dist/components/ui/record-view/record-view.js +1 -1
  26. package/dist/components/ui/sidebar/sidebar.js +1 -1
  27. package/dist/constants/strings.d.ts +0 -2
  28. package/dist/constants/strings.d.ts.map +1 -1
  29. package/dist/constants/strings.js +0 -2
  30. package/dist/constants/strings.js.map +1 -1
  31. package/dist/contexts/component-strings.d.ts +0 -2
  32. package/dist/contexts/component-strings.d.ts.map +1 -1
  33. package/dist/hooks/use-event-callback.js +1 -1
  34. package/dist/hooks/use-event-callback.js.map +1 -1
  35. package/dist/theme.css +0 -1
  36. package/dist/utilities.css +0 -4
  37. package/dist/utils/generic-forward-ref.js +1 -1
  38. package/dist/utils/generic-forward-ref.js.map +1 -1
  39. package/package.json +6 -6
  40. package/dist/components/ui/empty-display/empty-display.d.ts +0 -30
  41. package/dist/components/ui/empty-display/empty-display.d.ts.map +0 -1
  42. package/dist/components/ui/empty-display/empty-display.js +0 -14
  43. package/dist/components/ui/empty-display/empty-display.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # @baseplate-dev/ui-components
2
2
 
3
+ ## 0.6.5
4
+
5
+ ### Patch Changes
6
+
7
+ - [#840](https://github.com/halfdomelabs/baseplate/pull/840) [`c24a24a`](https://github.com/halfdomelabs/baseplate/commit/c24a24ac9d2b66623acb0fda9c6ff2b3b80c0a6d) Thanks [@kingston](https://github.com/kingston)! - Replace EmptyDisplay with composable Empty component from shadcn
8
+
9
+ - [#859](https://github.com/halfdomelabs/baseplate/pull/859) [`fc8f158`](https://github.com/halfdomelabs/baseplate/commit/fc8f1582f1702d2d6f6eaa60607da7bb777750b5) Thanks [@kingston](https://github.com/kingston)! - Add hover styles for badges rendered as buttons and use semantic hover color tokens
10
+
11
+ - [#847](https://github.com/halfdomelabs/baseplate/pull/847) [`497904a`](https://github.com/halfdomelabs/baseplate/commit/497904a9b5088171f95c5e16bcda542fb5e98610) Thanks [@kingston](https://github.com/kingston)! - Connect theme builder UI to code generation. Theme color configuration from the project definition now drives the generated `styles.css` instead of hardcoded values. Default theme uses slate base with indigo primary. Remove explicit hover color variables (primaryHover, secondaryHover, destructiveHover) and linkVisited — hover is now computed via `color-mix` in CSS. Add palette swatch selection to theme color picker. Split preview into surface and interactive sections with input group and alert components.
12
+
13
+ - Updated dependencies [[`8dcf7b3`](https://github.com/halfdomelabs/baseplate/commit/8dcf7b3c909672487bad61b7a4465d1860092363)]:
14
+ - @baseplate-dev/utils@0.6.5
15
+
16
+ ## 0.6.4
17
+
18
+ ### Patch Changes
19
+
20
+ - [#837](https://github.com/halfdomelabs/baseplate/pull/837) [`ba315aa`](https://github.com/halfdomelabs/baseplate/commit/ba315aaaec0e8842ec7fadb765b1fed5e3abda5a) Thanks [@kingston](https://github.com/kingston)! - Add `inputValue` prop to `ComboboxField` for controlled input state.
21
+
22
+ - Updated dependencies []:
23
+ - @baseplate-dev/utils@0.6.4
24
+
3
25
  ## 0.6.3
4
26
 
5
27
  ### Patch Changes
@@ -37,16 +37,15 @@
37
37
  --error: oklch(0.971 0.013 17.38);
38
38
  --error-foreground: oklch(0.258 0.092 26.042);
39
39
  --primary: oklch(0.424 0.181 265.638);
40
- --primary-hover: oklch(0.379 0.138 265.522);
40
+ --primary-hover: color-mix(in oklab, var(--primary) 85%, black);
41
41
  --primary-foreground: oklch(0.984 0.003 247.858);
42
42
  --secondary: oklch(0.968 0.007 247.896);
43
- --secondary-hover: oklch(0.869 0.02 252.894);
43
+ --secondary-hover: color-mix(in oklab, var(--secondary) 80%, black);
44
44
  --secondary-foreground: oklch(0.208 0.04 265.755);
45
45
  --destructive: oklch(0.637 0.237 25.331);
46
- --destructive-hover: oklch(0.505 0.213 27.518);
46
+ --destructive-hover: color-mix(in oklab, var(--destructive) 85%, black);
47
47
  --destructive-foreground: oklch(0.984 0.003 247.858);
48
48
  --link: oklch(0.488 0.217 264.376);
49
- --link-visited: oklch(0.424 0.181 265.638);
50
49
  --border: oklch(0.929 0.013 255.508);
51
50
  --input: oklch(0.929 0.013 255.508);
52
51
  --ring: oklch(0.714 0.143 254.624);
@@ -72,16 +71,15 @@ html[data-theme='dark'] {
72
71
  --error: oklch(0.258 0.092 26.042);
73
72
  --error-foreground: oklch(0.971 0.013 17.38);
74
73
  --primary: oklch(0.282 0.087 267.935);
75
- --primary-hover: oklch(0.424 0.181 265.638);
74
+ --primary-hover: color-mix(in oklab, var(--primary) 85%, white);
76
75
  --primary-foreground: oklch(0.984 0.003 247.858);
77
76
  --secondary: oklch(0.279 0.037 260.031);
78
- --secondary-hover: oklch(0.446 0.037 257.281);
77
+ --secondary-hover: color-mix(in oklab, var(--secondary) 80%, white);
79
78
  --secondary-foreground: oklch(0.984 0.003 247.858);
80
79
  --destructive: oklch(0.396 0.141 25.723);
81
- --destructive-hover: oklch(0.505 0.213 27.518);
80
+ --destructive-hover: color-mix(in oklab, var(--destructive) 85%, white);
82
81
  --destructive-foreground: oklch(0.984 0.003 247.858);
83
82
  --link: oklch(0.546 0.215 262.881);
84
- --link-visited: oklch(0.488 0.217 264.376);
85
83
  --border: oklch(1 0.003 265 / 10%);
86
84
  --input: oklch(1 0.003 265 / 15%);
87
85
  --ring: oklch(0.623 0.188 259.815);
@@ -7,6 +7,9 @@ declare const badgeVariants: (props?: ({
7
7
  /**
8
8
  * Displays a badge or a component that looks like a badge.
9
9
  *
10
+ * ShadCN changes:
11
+ * - Added [button&]:hover styles so badges rendered as buttons get hover effects.
12
+ *
10
13
  * https://ui.shadcn.com/docs/components/badge
11
14
  */
12
15
  declare function Badge({ className, variant, render, ...props }: useRender.ComponentProps<'span'> & VariantProps<typeof badgeVariants>): React.ReactElement;
@@ -1 +1 @@
1
- {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/badge/badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAKtD,QAAA,MAAM,aAAa;;8EAqBlB,CAAC;AAEF;;;;GAIG;AACH,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,OAAmB,EACnB,MAAM,EACN,GAAG,KAAK,EACT,EAAE,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,GACjC,YAAY,CAAC,OAAO,aAAa,CAAC,GAAG,KAAK,CAAC,YAAY,CAexD;AAED,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"badge.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/badge/badge.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAKtD,QAAA,MAAM,aAAa;;8EAsBlB,CAAC;AAEF;;;;;;;GAOG;AACH,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,OAAmB,EACnB,MAAM,EACN,GAAG,KAAK,EACT,EAAE,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,GACjC,YAAY,CAAC,OAAO,aAAa,CAAC,GAAG,KAAK,CAAC,YAAY,CAexD;AAED,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
@@ -5,10 +5,10 @@ import { cn } from '#src/utils/index.js';
5
5
  const badgeVariants = cva('group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!', {
6
6
  variants: {
7
7
  variant: {
8
- default: 'bg-primary text-primary-foreground [a&]:hover:bg-primary/80',
9
- secondary: 'bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/80',
10
- destructive: 'bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/20',
11
- outline: 'border-border text-foreground [a&]:hover:bg-muted [a&]:hover:text-muted-foreground',
8
+ default: 'bg-primary text-primary-foreground [a&]:hover:bg-primary-hover [button&]:hover:bg-primary-hover',
9
+ secondary: 'bg-secondary text-secondary-foreground [a&]:hover:bg-secondary-hover [button&]:hover:bg-secondary-hover',
10
+ destructive: 'bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a&]:hover:bg-destructive/20 [button&]:hover:bg-destructive/20',
11
+ outline: 'border-border text-foreground [a&]:hover:bg-muted [a&]:hover:text-muted-foreground [button&]:hover:bg-muted [button&]:hover:text-muted-foreground',
12
12
  ghost: 'hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50',
13
13
  link: 'text-primary underline-offset-4 hover:underline',
14
14
  },
@@ -20,6 +20,9 @@ const badgeVariants = cva('group/badge inline-flex h-5 w-fit shrink-0 items-cent
20
20
  /**
21
21
  * Displays a badge or a component that looks like a badge.
22
22
  *
23
+ * ShadCN changes:
24
+ * - Added [button&]:hover styles so badges rendered as buttons get hover effects.
25
+ *
23
26
  * https://ui.shadcn.com/docs/components/badge
24
27
  */
25
28
  function Badge({ className, variant = 'default', render, ...props }) {
@@ -1 +1 @@
1
- {"version":3,"file":"badge.js","sourceRoot":"","sources":["../../../../src/components/ui/badge/badge.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAE/C,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AAEzC,MAAM,aAAa,GAAG,GAAG,CACvB,4eAA4e,EAC5e;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,6DAA6D;YACtE,SAAS,EACP,mEAAmE;YACrE,WAAW,EACT,iKAAiK;YACnK,OAAO,EACL,oFAAoF;YACtF,KAAK,EACH,mEAAmE;YACrE,IAAI,EAAE,iDAAiD;SACxD;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;KACnB;CACF,CACF,CAAC;AAEF;;;;GAIG;AACH,SAAS,KAAK,CAAC,EACb,SAAS,EACT,OAAO,GAAG,SAAS,EACnB,MAAM,EACN,GAAG,KAAK,EAE0B;IAClC,OAAO,SAAS,CAAC;QACf,cAAc,EAAE,MAAM;QACtB,KAAK,EAAE,UAAU,CACf;YACE,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC;SACrD,EACD,KAAK,CACN;QACD,MAAM;QACN,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,OAAO;SACR;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"badge.js","sourceRoot":"","sources":["../../../../src/components/ui/badge/badge.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAE/C,OAAO,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AAEzC,MAAM,aAAa,GAAG,GAAG,CACvB,4eAA4e,EAC5e;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EACL,iGAAiG;YACnG,SAAS,EACP,yGAAyG;YAC3G,WAAW,EACT,mMAAmM;YACrM,OAAO,EACL,mJAAmJ;YACrJ,KAAK,EACH,mEAAmE;YACrE,IAAI,EAAE,iDAAiD;SACxD;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;KACnB;CACF,CACF,CAAC;AAEF;;;;;;;GAOG;AACH,SAAS,KAAK,CAAC,EACb,SAAS,EACT,OAAO,GAAG,SAAS,EACnB,MAAM,EACN,GAAG,KAAK,EAE0B;IAClC,OAAO,SAAS,CAAC;QACf,cAAc,EAAE,MAAM;QACtB,KAAK,EAAE,UAAU,CACf;YACE,SAAS,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC;SACrD,EACD,KAAK,CACN;QACD,MAAM;QACN,KAAK,EAAE;YACL,IAAI,EAAE,OAAO;YACb,OAAO;SACR;KACF,CAAC,CAAC;AACL,CAAC;AAED,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC"}
@@ -16,7 +16,7 @@ export interface ButtonProps extends ButtonPrimitive.Props, VariantProps<typeof
16
16
  *
17
17
  * https://ui.shadcn.com/docs/components/button
18
18
  */
19
- declare function Button({ className, variant, size, justify, ...props }: React.ComponentProps<'button'> & VariantProps<typeof buttonVariants> & {
19
+ declare function Button({ className, variant, size, justify, ...props }: ButtonPrimitive.Props & VariantProps<typeof buttonVariants> & {
20
20
  render?: ButtonPrimitive.Props['render'];
21
21
  }): React.ReactElement;
22
22
  export { Button };
@@ -1 +1 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/button/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,MAAM,WAAW,WACf,SAAQ,eAAe,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,cAAc,CAAC;CAAG;AAEvE;;;;;;;;;;;GAWG;AACH,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAO,EACP,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GAC/B,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,MAAM,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;CAC1C,GAAG,KAAK,CAAC,YAAY,CAQvB;AAED,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/button/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAEpC,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAElE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGtD,MAAM,WAAW,WACf,SAAQ,eAAe,CAAC,KAAK,EAAE,YAAY,CAAC,OAAO,cAAc,CAAC;CAAG;AAEvE;;;;;;;;;;;GAWG;AACH,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAO,EACP,GAAG,KAAK,EACT,EAAE,eAAe,CAAC,KAAK,GACtB,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,MAAM,CAAC,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;CAC1C,GAAG,KAAK,CAAC,YAAY,CAQvB;AAED,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -8,12 +8,13 @@ export interface ComboboxFieldProps<OptionType> extends SelectOptionProps<Option
8
8
  disabled?: boolean;
9
9
  value?: string | null;
10
10
  onChange?: (value: string | null) => void;
11
+ inputValue?: string;
11
12
  onInputValueChange?: (value: string) => void;
12
13
  }
13
14
  /**
14
15
  * Field with label and error states that wraps a Combobox component.
15
16
  */
16
- declare function ComboboxField<OptionType>({ label, description, error, value, placeholder, options, renderItemLabel, onChange, onInputValueChange, getOptionLabel, getOptionValue, className, noResultsText, disabled, }: ComboboxFieldProps<OptionType> & AddOptionRequiredFields<OptionType>): React.ReactElement;
17
+ declare function ComboboxField<OptionType>({ label, description, error, value, placeholder, options, renderItemLabel, onChange, inputValue, onInputValueChange, getOptionLabel, getOptionValue, className, noResultsText, disabled, }: ComboboxFieldProps<OptionType> & AddOptionRequiredFields<OptionType>): React.ReactElement;
17
18
  interface ComboboxFieldControllerPropsBase<OptionType, TFieldValues extends FieldValues = FieldValues, TFieldName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>> extends Omit<ComboboxFieldProps<OptionType>, 'value'> {
18
19
  control: Control<TFieldValues>;
19
20
  name: TFieldName;
@@ -1 +1 @@
1
- {"version":3,"file":"combobox-field.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/combobox-field/combobox-field.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAIvE,OAAO,KAAK,EACV,uBAAuB,EACvB,cAAc,EACd,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAoB5B,MAAM,WAAW,kBAAkB,CAAC,UAAU,CAC5C,SAAQ,iBAAiB,CAAC,UAAU,CAAC,EAAE,cAAc;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAED;;GAEG;AACH,iBAAS,aAAa,CAAC,UAAU,EAAE,EACjC,KAAK,EACL,WAAW,EACX,KAAK,EACL,KAAK,EACL,WAAW,EACX,OAAO,EACP,eAAe,EACf,QAAQ,EACR,kBAAkB,EAClB,cAA0D,EAC1D,cAAiE,EACjE,SAAS,EACT,aAAa,EACb,QAAQ,GACT,EAAE,kBAAkB,CAAC,UAAU,CAAC,GAC/B,uBAAuB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,YAAY,CA4CzD;AAED,UAAU,gCAAgC,CACxC,UAAU,EACV,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,UAAU,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,CACpE,SAAQ,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrD,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC/B,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,KAAK,4BAA4B,CAC/B,UAAU,EACV,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,UAAU,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,IAClE,gCAAgC,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;AAE3E,iBAAS,uBAAuB,CAC9B,UAAU,EACV,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,UAAU,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EACpE,EACA,IAAI,EACJ,OAAO,EACP,GAAG,IAAI,EACR,EAAE,4BAA4B,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,CAAC,GACnE,uBAAuB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,YAAY,CAiBzD;AAED,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,CAAC"}
1
+ {"version":3,"file":"combobox-field.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/combobox-field/combobox-field.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAIvE,OAAO,KAAK,EACV,uBAAuB,EACvB,cAAc,EACd,iBAAiB,EAClB,MAAM,oBAAoB,CAAC;AAoB5B,MAAM,WAAW,kBAAkB,CAAC,UAAU,CAC5C,SAAQ,iBAAiB,CAAC,UAAU,CAAC,EAAE,cAAc;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9C;AAED;;GAEG;AACH,iBAAS,aAAa,CAAC,UAAU,EAAE,EACjC,KAAK,EACL,WAAW,EACX,KAAK,EACL,KAAK,EACL,WAAW,EACX,OAAO,EACP,eAAe,EACf,QAAQ,EACR,UAAU,EACV,kBAAkB,EAClB,cAA0D,EAC1D,cAAiE,EACjE,SAAS,EACT,aAAa,EACb,QAAQ,GACT,EAAE,kBAAkB,CAAC,UAAU,CAAC,GAC/B,uBAAuB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,YAAY,CA6CzD;AAED,UAAU,gCAAgC,CACxC,UAAU,EACV,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,UAAU,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,CACpE,SAAQ,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrD,OAAO,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IAC/B,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,KAAK,4BAA4B,CAC/B,UAAU,EACV,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,UAAU,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,IAClE,gCAAgC,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;AAE3E,iBAAS,uBAAuB,CAC9B,UAAU,EACV,YAAY,SAAS,WAAW,GAAG,WAAW,EAC9C,UAAU,SAAS,SAAS,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,YAAY,CAAC,EACpE,EACA,IAAI,EACJ,OAAO,EACP,GAAG,IAAI,EACR,EAAE,4BAA4B,CAAC,UAAU,EAAE,YAAY,EAAE,UAAU,CAAC,GACnE,uBAAuB,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,YAAY,CAiBzD;AAED,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,CAAC"}
@@ -8,13 +8,13 @@ import { Field, FieldDescription, FieldError, FieldLabel, } from '../field/field
8
8
  /**
9
9
  * Field with label and error states that wraps a Combobox component.
10
10
  */
11
- function ComboboxField({ label, description, error, value, placeholder, options, renderItemLabel, onChange, onInputValueChange, getOptionLabel = (val) => val.label, getOptionValue = (val) => val.value, className, noResultsText, disabled, }) {
11
+ function ComboboxField({ label, description, error, value, placeholder, options, renderItemLabel, onChange, inputValue, onInputValueChange, getOptionLabel = (val) => val.label, getOptionValue = (val) => val.value, className, noResultsText, disabled, }) {
12
12
  const { comboboxNoResults } = useComponentStrings();
13
13
  const id = useId();
14
14
  const selectedOption = options.find((o) => getOptionValue(o) === value) ?? null;
15
15
  return (_jsxs(Field, { "data-invalid": !!error, className: className, children: [_jsx(FieldLabel, { htmlFor: id, children: label }), _jsxs(Combobox, { value: selectedOption, onValueChange: (option) => {
16
16
  onChange?.(option ? getOptionValue(option) : null);
17
- }, onInputValueChange: onInputValueChange, disabled: disabled, items: options, itemToStringLabel: getOptionLabel, itemToStringValue: (option) => getOptionValue(option) ?? '', autoHighlight: true, children: [_jsx(ComboboxInput, { id: id, placeholder: placeholder }), _jsxs(ComboboxContent, { children: [_jsx(ComboboxEmpty, { children: noResultsText ?? comboboxNoResults }), _jsx(ComboboxList, { children: (option) => {
17
+ }, inputValue: inputValue, onInputValueChange: onInputValueChange, disabled: disabled, items: options, itemToStringLabel: getOptionLabel, itemToStringValue: (option) => getOptionValue(option) ?? '', autoHighlight: true, children: [_jsx(ComboboxInput, { id: id, placeholder: placeholder }), _jsxs(ComboboxContent, { children: [_jsx(ComboboxEmpty, { children: noResultsText ?? comboboxNoResults }), _jsx(ComboboxList, { children: (option) => {
18
18
  const val = getOptionValue(option);
19
19
  const optionLabel = getOptionLabel(option);
20
20
  return (_jsx(ComboboxItem, { value: option, children: renderItemLabel
@@ -1 +1 @@
1
- {"version":3,"file":"combobox-field.js","sourceRoot":"","sources":["../../../../src/components/ui/combobox-field/combobox-field.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"combobox-field.js","sourceRoot":"","sources":["../../../../src/components/ui/combobox-field/combobox-field.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { VariantProps } from 'class-variance-authority';
2
+ /**
3
+ * A composable empty state component.
4
+ *
5
+ * https://ui.shadcn.com/docs/components/base/empty
6
+ */
7
+ declare function Empty({ className, ...props }: React.ComponentProps<'div'>): React.ReactElement;
8
+ declare function EmptyHeader({ className, ...props }: React.ComponentProps<'div'>): React.ReactElement;
9
+ declare const emptyMediaVariants: (props?: ({
10
+ variant?: "default" | "icon" | null | undefined;
11
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
+ declare function EmptyMedia({ className, variant, ...props }: React.ComponentProps<'div'> & VariantProps<typeof emptyMediaVariants>): React.ReactElement;
13
+ declare function EmptyTitle({ className, ...props }: React.ComponentProps<'div'>): React.ReactElement;
14
+ declare function EmptyDescription({ className, ...props }: React.ComponentProps<'p'>): React.ReactElement;
15
+ declare function EmptyContent({ className, ...props }: React.ComponentProps<'div'>): React.ReactElement;
16
+ export { Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, emptyMediaVariants, EmptyTitle, };
17
+ //# sourceMappingURL=empty.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"empty.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/empty/empty.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAM7D;;;;GAIG;AACH,iBAAS,KAAK,CAAC,EACb,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAWlD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAWlD;AAED,QAAA,MAAM,kBAAkB;;8EAavB,CAAC;AAEF,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,OAAmB,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAC5B,YAAY,CAAC,OAAO,kBAAkB,CAAC,GAAG,KAAK,CAAC,YAAY,CAS7D;AAED,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAQlD;AAED,iBAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,CAWhD;AAED,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAWlD;AAED,OAAO,EACL,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,UAAU,GACX,CAAC"}
@@ -0,0 +1,39 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { cva } from 'class-variance-authority';
3
+ import { cn } from '#src/utils/cn.js';
4
+ /**
5
+ * A composable empty state component.
6
+ *
7
+ * https://ui.shadcn.com/docs/components/base/empty
8
+ */
9
+ function Empty({ className, ...props }) {
10
+ return (_jsx("div", { "data-slot": "empty", className: cn('flex min-w-0 flex-1 flex-col items-center justify-center gap-6 rounded-lg border-dashed p-6 text-center text-balance md:p-12', className), ...props }));
11
+ }
12
+ function EmptyHeader({ className, ...props }) {
13
+ return (_jsx("div", { "data-slot": "empty-header", className: cn('flex max-w-sm flex-col items-center gap-2 text-center', className), ...props }));
14
+ }
15
+ const emptyMediaVariants = cva('mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0', {
16
+ variants: {
17
+ variant: {
18
+ default: 'bg-transparent',
19
+ icon: "flex size-10 shrink-0 items-center justify-center rounded-lg bg-muted text-foreground [&_svg:not([class*='size-'])]:size-6",
20
+ },
21
+ },
22
+ defaultVariants: {
23
+ variant: 'default',
24
+ },
25
+ });
26
+ function EmptyMedia({ className, variant = 'default', ...props }) {
27
+ return (_jsx("div", { "data-slot": "empty-icon", "data-variant": variant, className: cn(emptyMediaVariants({ variant, className })), ...props }));
28
+ }
29
+ function EmptyTitle({ className, ...props }) {
30
+ return (_jsx("div", { "data-slot": "empty-title", className: cn('text-lg font-medium tracking-tight', className), ...props }));
31
+ }
32
+ function EmptyDescription({ className, ...props }) {
33
+ return (_jsx("div", { "data-slot": "empty-description", className: cn('text-sm/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary', className), ...props }));
34
+ }
35
+ function EmptyContent({ className, ...props }) {
36
+ return (_jsx("div", { "data-slot": "empty-content", className: cn('flex w-full max-w-sm min-w-0 flex-col items-center gap-4 text-sm text-balance', className), ...props }));
37
+ }
38
+ export { Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, emptyMediaVariants, EmptyTitle, };
39
+ //# sourceMappingURL=empty.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"empty.js","sourceRoot":"","sources":["../../../../src/components/ui/empty/empty.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAE/C,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAEtC;;;;GAIG;AACH,SAAS,KAAK,CAAC,EACb,SAAS,EACT,GAAG,KAAK,EACoB;IAC5B,OAAO,CACL,2BACY,OAAO,EACjB,SAAS,EAAE,EAAE,CACX,8HAA8H,EAC9H,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACoB;IAC5B,OAAO,CACL,2BACY,cAAc,EACxB,SAAS,EAAE,EAAE,CACX,uDAAuD,EACvD,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,MAAM,kBAAkB,GAAG,GAAG,CAC5B,6FAA6F,EAC7F;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,gBAAgB;YACzB,IAAI,EAAE,4HAA4H;SACnI;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;KACnB;CACF,CACF,CAAC;AAEF,SAAS,UAAU,CAAC,EAClB,SAAS,EACT,OAAO,GAAG,SAAS,EACnB,GAAG,KAAK,EAE+B;IACvC,OAAO,CACL,2BACY,YAAY,kBACR,OAAO,EACrB,SAAS,EAAE,EAAE,CAAC,kBAAkB,CAAC,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,KACrD,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,SAAS,EACT,GAAG,KAAK,EACoB;IAC5B,OAAO,CACL,2BACY,aAAa,EACvB,SAAS,EAAE,EAAE,CAAC,oCAAoC,EAAE,SAAS,CAAC,KAC1D,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,EACxB,SAAS,EACT,GAAG,KAAK,EACkB;IAC1B,OAAO,CACL,2BACY,mBAAmB,EAC7B,SAAS,EAAE,EAAE,CACX,yGAAyG,EACzG,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EACpB,SAAS,EACT,GAAG,KAAK,EACoB;IAC5B,OAAO,CACL,2BACY,eAAe,EACzB,SAAS,EAAE,EAAE,CACX,+EAA+E,EAC/E,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAC;AACJ,CAAC;AAED,OAAO,EACL,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,kBAAkB,EAClB,UAAU,GACX,CAAC"}
@@ -20,7 +20,7 @@ export * from './date-picker-field/date-picker-field.js';
20
20
  export * from './date-time-picker-field/date-time-picker-field.js';
21
21
  export * from './dialog/dialog.js';
22
22
  export * from './dropdown/dropdown.js';
23
- export * from './empty-display/empty-display.js';
23
+ export * from './empty/empty.js';
24
24
  export * from './error-display/error-display.js';
25
25
  export * from './errorable-loader/errorable-loader.js';
26
26
  export * from './field/field.js';
@@ -29,6 +29,7 @@ export * from './form-item/form-item.js';
29
29
  export * from './input-field/input-field.js';
30
30
  export * from './input-group/input-group.js';
31
31
  export * from './input/input.js';
32
+ export * from './item/item.js';
32
33
  export * from './json-diff-viewer/json-diff-viewer.js';
33
34
  export * from './label/label.js';
34
35
  export * from './loader/loader.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC;AACzD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oDAAoD,CAAC;AACnE,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,kBAAkB,CAAC;AACjC,cAAc,sCAAsC,CAAC;AACrD,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC;AACjC,cAAc,wCAAwC,CAAC;AACvD,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC;AACzD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oDAAoD,CAAC;AACnE,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,kBAAkB,CAAC;AACjC,cAAc,sCAAsC,CAAC;AACrD,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wCAAwC,CAAC;AACvD,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
@@ -20,7 +20,7 @@ export * from './date-picker-field/date-picker-field.js';
20
20
  export * from './date-time-picker-field/date-time-picker-field.js';
21
21
  export * from './dialog/dialog.js';
22
22
  export * from './dropdown/dropdown.js';
23
- export * from './empty-display/empty-display.js';
23
+ export * from './empty/empty.js';
24
24
  export * from './error-display/error-display.js';
25
25
  export * from './errorable-loader/errorable-loader.js';
26
26
  export * from './field/field.js';
@@ -29,6 +29,7 @@ export * from './form-item/form-item.js';
29
29
  export * from './input-field/input-field.js';
30
30
  export * from './input-group/input-group.js';
31
31
  export * from './input/input.js';
32
+ export * from './item/item.js';
32
33
  export * from './json-diff-viewer/json-diff-viewer.js';
33
34
  export * from './label/label.js';
34
35
  export * from './loader/loader.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC;AACzD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oDAAoD,CAAC;AACnE,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kCAAkC,CAAC;AACjD,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,kBAAkB,CAAC;AACjC,cAAc,sCAAsC,CAAC;AACrD,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC;AACjC,cAAc,wCAAwC,CAAC;AACvD,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/ui/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,gCAAgC,CAAC;AAC/C,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,0CAA0C,CAAC;AACzD,cAAc,0CAA0C,CAAC;AACzD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,4CAA4C,CAAC;AAC3D,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,oDAAoD,CAAC;AACnE,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kCAAkC,CAAC;AACjD,cAAc,wCAAwC,CAAC;AACvD,cAAc,kBAAkB,CAAC;AACjC,cAAc,sCAAsC,CAAC;AACrD,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wCAAwC,CAAC;AACvD,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gDAAgD,CAAC;AAC/D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,sCAAsC,CAAC;AACrD,cAAc,sCAAsC,CAAC;AACrD,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oCAAoC,CAAC;AACnD,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,29 @@
1
+ import type { VariantProps } from 'class-variance-authority';
2
+ import type React from 'react';
3
+ import { useRender } from '@base-ui/react/use-render';
4
+ import { Separator } from '../separator/separator.js';
5
+ declare const itemVariants: (props?: ({
6
+ variant?: "default" | "outline" | "muted" | null | undefined;
7
+ size?: "sm" | "default" | "xs" | null | undefined;
8
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
9
+ declare const itemMediaVariants: (props?: ({
10
+ variant?: "default" | "image" | "icon" | null | undefined;
11
+ } & import("class-variance-authority/types").ClassProp) | undefined) => string;
12
+ /**
13
+ * A versatile flex container for displaying content with media, title,
14
+ * description, and actions.
15
+ *
16
+ * https://ui.shadcn.com/docs/components/base/item
17
+ */
18
+ declare function Item({ className, variant, size, render, ...props }: useRender.ComponentProps<'div'> & VariantProps<typeof itemVariants>): React.ReactElement;
19
+ declare function ItemActions({ className, ...props }: React.ComponentProps<'div'>): React.ReactElement;
20
+ declare function ItemContent({ className, ...props }: React.ComponentProps<'div'>): React.ReactElement;
21
+ declare function ItemDescription({ className, ...props }: React.ComponentProps<'p'>): React.ReactElement;
22
+ declare function ItemFooter({ className, ...props }: React.ComponentProps<'div'>): React.ReactElement;
23
+ declare function ItemGroup({ className, ...props }: React.ComponentProps<'div'>): React.ReactElement;
24
+ declare function ItemHeader({ className, ...props }: React.ComponentProps<'div'>): React.ReactElement;
25
+ declare function ItemMedia({ className, variant, ...props }: React.ComponentProps<'div'> & VariantProps<typeof itemMediaVariants>): React.ReactElement;
26
+ declare function ItemSeparator({ className, ...props }: React.ComponentProps<typeof Separator>): React.ReactElement;
27
+ declare function ItemTitle({ className, ...props }: React.ComponentProps<'div'>): React.ReactElement;
28
+ export { Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, itemMediaVariants, ItemSeparator, ItemTitle, itemVariants, };
29
+ //# sourceMappingURL=item.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/item/item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAKtD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,QAAA,MAAM,YAAY;;;8EAoBjB,CAAC;AAEF,QAAA,MAAM,iBAAiB;;8EAetB,CAAC;AAEF;;;;;GAKG;AACH,iBAAS,IAAI,CAAC,EACZ,SAAS,EACT,OAAmB,EACnB,IAAgB,EAChB,MAAM,EACN,GAAG,KAAK,EACT,EAAE,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,GAChC,YAAY,CAAC,OAAO,YAAY,CAAC,GAAG,KAAK,CAAC,YAAY,CAgBvD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAQlD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAWlD;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,YAAY,CAWhD;AAED,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAWlD;AAED,iBAAS,SAAS,CAAC,EACjB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAYlD;AAED,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAWlD;AAED,iBAAS,SAAS,CAAC,EACjB,SAAS,EACT,OAAmB,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAC5B,YAAY,CAAC,OAAO,iBAAiB,CAAC,GAAG,KAAK,CAAC,YAAY,CAS5D;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,SAAS,CAAC,GAAG,KAAK,CAAC,YAAY,CAS7D;AAED,iBAAS,SAAS,CAAC,EACjB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,CAWlD;AAED,OAAO,EACL,IAAI,EACJ,WAAW,EACX,WAAW,EACX,eAAe,EACf,UAAU,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,aAAa,EACb,SAAS,EACT,YAAY,GACb,CAAC"}
@@ -0,0 +1,85 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { mergeProps } from '@base-ui/react/merge-props';
3
+ import { useRender } from '@base-ui/react/use-render';
4
+ import { cva } from 'class-variance-authority';
5
+ import { cn } from '#src/utils/index.js';
6
+ import { Separator } from '../separator/separator.js';
7
+ const itemVariants = cva('group/item flex w-full flex-wrap items-center rounded-lg border text-sm transition-colors duration-100 outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 [a]:transition-colors [a]:hover:bg-muted', {
8
+ variants: {
9
+ variant: {
10
+ default: 'border-transparent',
11
+ outline: 'border-border',
12
+ muted: 'border-transparent bg-muted/50',
13
+ },
14
+ size: {
15
+ default: 'gap-2.5 px-3 py-2.5',
16
+ sm: 'gap-2.5 px-3 py-2.5',
17
+ xs: 'gap-2 px-2.5 py-2 in-data-[slot=dropdown-menu-content]:p-0',
18
+ },
19
+ },
20
+ defaultVariants: {
21
+ variant: 'default',
22
+ size: 'default',
23
+ },
24
+ });
25
+ const itemMediaVariants = cva('flex shrink-0 items-center justify-center gap-2 group-has-data-[slot=item-description]/item:translate-y-0.5 group-has-data-[slot=item-description]/item:self-start [&_svg]:pointer-events-none', {
26
+ variants: {
27
+ variant: {
28
+ default: 'bg-transparent',
29
+ icon: "[&_svg:not([class*='size-'])]:size-4",
30
+ image: 'size-10 overflow-hidden rounded-sm group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 [&_img]:size-full [&_img]:object-cover',
31
+ },
32
+ },
33
+ defaultVariants: {
34
+ variant: 'default',
35
+ },
36
+ });
37
+ /**
38
+ * A versatile flex container for displaying content with media, title,
39
+ * description, and actions.
40
+ *
41
+ * https://ui.shadcn.com/docs/components/base/item
42
+ */
43
+ function Item({ className, variant = 'default', size = 'default', render, ...props }) {
44
+ return useRender({
45
+ defaultTagName: 'div',
46
+ props: mergeProps({
47
+ className: cn(itemVariants({ variant, size, className })),
48
+ }, props),
49
+ render,
50
+ state: {
51
+ slot: 'item',
52
+ variant,
53
+ size,
54
+ },
55
+ });
56
+ }
57
+ function ItemActions({ className, ...props }) {
58
+ return (_jsx("div", { "data-slot": "item-actions", className: cn('flex items-center gap-2', className), ...props }));
59
+ }
60
+ function ItemContent({ className, ...props }) {
61
+ return (_jsx("div", { "data-slot": "item-content", className: cn('flex flex-1 flex-col gap-1 group-data-[size=xs]/item:gap-0 [&+[data-slot=item-content]]:flex-none', className), ...props }));
62
+ }
63
+ function ItemDescription({ className, ...props }) {
64
+ return (_jsx("p", { "data-slot": "item-description", className: cn('line-clamp-2 text-left text-sm leading-normal font-normal text-muted-foreground group-data-[size=xs]/item:text-xs [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary', className), ...props }));
65
+ }
66
+ function ItemFooter({ className, ...props }) {
67
+ return (_jsx("div", { "data-slot": "item-footer", className: cn('flex basis-full items-center justify-between gap-2', className), ...props }));
68
+ }
69
+ function ItemGroup({ className, ...props }) {
70
+ return (_jsx("div", { role: "list", "data-slot": "item-group", className: cn('group/item-group flex w-full flex-col gap-4 has-data-[size=sm]:gap-2.5 has-data-[size=xs]:gap-2', className), ...props }));
71
+ }
72
+ function ItemHeader({ className, ...props }) {
73
+ return (_jsx("div", { "data-slot": "item-header", className: cn('flex basis-full items-center justify-between gap-2', className), ...props }));
74
+ }
75
+ function ItemMedia({ className, variant = 'default', ...props }) {
76
+ return (_jsx("div", { "data-slot": "item-media", "data-variant": variant, className: cn(itemMediaVariants({ variant, className })), ...props }));
77
+ }
78
+ function ItemSeparator({ className, ...props }) {
79
+ return (_jsx(Separator, { ...props, "data-slot": "item-separator", orientation: "horizontal", className: cn('my-2', className) }));
80
+ }
81
+ function ItemTitle({ className, ...props }) {
82
+ return (_jsx("div", { "data-slot": "item-title", className: cn('line-clamp-1 flex w-fit items-center gap-2 text-sm leading-snug font-medium underline-offset-4', className), ...props }));
83
+ }
84
+ export { Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, itemMediaVariants, ItemSeparator, ItemTitle, itemVariants, };
85
+ //# sourceMappingURL=item.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item.js","sourceRoot":"","sources":["../../../../src/components/ui/item/item.tsx"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ function RecordViewItem({ className, title, children, }) {
10
10
  return (_jsxs("div", { className: cn('flex min-w-24 flex-col', className), children: [_jsx("div", { className: "text-sm font-medium text-muted-foreground", children: title }), _jsx("div", { className: "font-medium", children: children })] }));
11
11
  }
12
12
  function RecordViewActions({ className, children, }) {
13
- return (_jsx("div", { className: cn('flex items-center gap-2', className), children: children }));
13
+ return (_jsx("div", { className: cn('flex items-center gap-4', className), children: children }));
14
14
  }
15
15
  export { RecordView, RecordViewActions, RecordViewItem, RecordViewItemList };
16
16
  //# sourceMappingURL=record-view.js.map
@@ -50,7 +50,7 @@ function SidebarProvider({ defaultOpen = true, open: openProp, onOpenChange: set
50
50
  _setOpen(openState);
51
51
  }
52
52
  // This sets the cookie to keep the sidebar state.
53
- // eslint-disable-next-line unicorn/no-document-cookie -- to ensure browser compatability
53
+ // oxlint-disable-next-line unicorn/no-document-cookie -- to ensure browser compatability
54
54
  document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;
55
55
  }, [setOpenProp, open]);
56
56
  // Helper to toggle the sidebar.
@@ -2,8 +2,6 @@
2
2
  * Default strings for components that can be overriden by the ComponentStringContext.
3
3
  */
4
4
  export declare const DEFAULT_COMPONENT_STRINGS: {
5
- emptyDisplayDefaultHeader: string;
6
- emptyDisplayDefaultContent: string;
7
5
  errorDisplayDefaultHeader: string;
8
6
  errorDisplayDefaultContent: string;
9
7
  buttonCancel: string;
@@ -1 +1 @@
1
- {"version":3,"file":"strings.d.ts","sourceRoot":"","sources":["../../src/constants/strings.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;CAUrC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,OAAO,yBAAyB,CAAC"}
1
+ {"version":3,"file":"strings.d.ts","sourceRoot":"","sources":["../../src/constants/strings.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;CAQrC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,OAAO,yBAAyB,CAAC"}
@@ -2,8 +2,6 @@
2
2
  * Default strings for components that can be overriden by the ComponentStringContext.
3
3
  */
4
4
  export const DEFAULT_COMPONENT_STRINGS = {
5
- emptyDisplayDefaultHeader: 'No items found',
6
- emptyDisplayDefaultContent: 'There is no content here yet.',
7
5
  errorDisplayDefaultHeader: 'Sorry, something went wrong',
8
6
  errorDisplayDefaultContent: 'We encountered an error showing this page.',
9
7
  buttonCancel: 'Cancel',
@@ -1 +1 @@
1
- {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../src/constants/strings.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,yBAAyB,EAAE,gBAAgB;IAC3C,0BAA0B,EAAE,+BAA+B;IAC3D,yBAAyB,EAAE,6BAA6B;IACxD,0BAA0B,EAAE,4CAA4C;IACxE,YAAY,EAAE,QAAQ;IACtB,aAAa,EAAE,SAAS;IACxB,iBAAiB,EAAE,kBAAkB;IACrC,oBAAoB,EAAE,mBAAmB;IACzC,eAAe,EAAE,YAAY;CAC9B,CAAC"}
1
+ {"version":3,"file":"strings.js","sourceRoot":"","sources":["../../src/constants/strings.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,yBAAyB,EAAE,6BAA6B;IACxD,0BAA0B,EAAE,4CAA4C;IACxE,YAAY,EAAE,QAAQ;IACtB,aAAa,EAAE,SAAS;IACxB,iBAAiB,EAAE,kBAAkB;IACrC,oBAAoB,EAAE,mBAAmB;IACzC,eAAe,EAAE,YAAY;CAC9B,CAAC"}
@@ -5,8 +5,6 @@ export declare const useComponentStrings: () => ComponentStrings;
5
5
  * @public
6
6
  */
7
7
  export declare const ComponentStringsProvider: React.Provider<{
8
- emptyDisplayDefaultHeader: string;
9
- emptyDisplayDefaultContent: string;
10
8
  errorDisplayDefaultHeader: string;
11
9
  errorDisplayDefaultContent: string;
12
10
  buttonCancel: string;
@@ -1 +1 @@
1
- {"version":3,"file":"component-strings.d.ts","sourceRoot":"","sources":["../../src/contexts/component-strings.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAQlE,eAAO,MAAM,mBAAmB,QAAO,gBACI,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;EAAmC,CAAC"}
1
+ {"version":3,"file":"component-strings.d.ts","sourceRoot":"","sources":["../../src/contexts/component-strings.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAQlE,eAAO,MAAM,mBAAmB,QAAO,gBACI,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;EAAmC,CAAC"}
@@ -9,7 +9,7 @@ export function useEventCallback(fn) {
9
9
  if (!current) {
10
10
  return;
11
11
  }
12
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return -- safe to return the function
12
+ // oxlint-disable-next-line typescript/no-unsafe-return -- safe to return the function
13
13
  return (...args) => current(...args);
14
14
  }, []);
15
15
  }
@@ -1 +1 @@
1
- {"version":3,"file":"use-event-callback.js","sourceRoot":"","sources":["../../src/hooks/use-event-callback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAYnD,MAAM,UAAU,gBAAgB,CAC9B,EAA+B;IAE/B,MAAM,GAAG,GAAG,MAAM,CAA8B,EAAE,CAAC,CAAC;IAEpD,SAAS,CAAC,GAAG,EAAE;QACb,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;IACnB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAET,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;QACxB,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,8FAA8F;QAC9F,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IACvC,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"use-event-callback.js","sourceRoot":"","sources":["../../src/hooks/use-event-callback.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAYnD,MAAM,UAAU,gBAAgB,CAC9B,EAA+B;IAE/B,MAAM,GAAG,GAAG,MAAM,CAA8B,EAAE,CAAC,CAAC;IAEpD,SAAS,CAAC,GAAG,EAAE;QACb,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;IACnB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAET,OAAO,OAAO,CAAC,GAAG,EAAE;QAClB,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;QACxB,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,sFAAsF;QACtF,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IACvC,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC"}
package/dist/theme.css CHANGED
@@ -53,7 +53,6 @@
53
53
  --color-destructive-hover: var(--destructive-hover);
54
54
 
55
55
  --color-link: var(--link);
56
- --color-link-visited: var(--link-visited);
57
56
 
58
57
  --color-border: var(--border);
59
58
  --color-input: var(--input);
@@ -91,10 +91,6 @@
91
91
  &:hover {
92
92
  @apply underline;
93
93
  }
94
-
95
- &:visited {
96
- @apply text-link-visited;
97
- }
98
94
  }
99
95
  }
100
96
 
@@ -4,7 +4,7 @@ import { forwardRef } from 'react';
4
4
  *
5
5
  * Taken from https://fettblog.eu/typescript-react-generic-forward-refs/
6
6
  */
7
- // eslint-disable-next-line @typescript-eslint/no-empty-object-type
7
+ // oxlint-disable-next-line typescript/no-empty-object-type
8
8
  export function genericForwardRef(render, displayName) {
9
9
  const newElem = forwardRef(render);
10
10
  if (displayName) {
@@ -1 +1 @@
1
- {"version":3,"file":"generic-forward-ref.js","sourceRoot":"","sources":["../../src/utils/generic-forward-ref.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC;;;;GAIG;AAEH,mEAAmE;AACnE,MAAM,UAAU,iBAAiB,CAC/B,MAAkE,EAClE,WAAoB;IAEpB,MAAM,OAAO,GAAG,UAAU,CACxB,MAG8B,CACqC,CAAC;IAEtE,IAAI,WAAW,EAAE,CAAC;QACf,OAAoC,CAAC,WAAW,GAAG,WAAW,CAAC;IAClE,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"generic-forward-ref.js","sourceRoot":"","sources":["../../src/utils/generic-forward-ref.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAEnC;;;;GAIG;AAEH,2DAA2D;AAC3D,MAAM,UAAU,iBAAiB,CAC/B,MAAkE,EAClE,WAAoB;IAEpB,MAAM,OAAO,GAAG,UAAU,CACxB,MAG8B,CACqC,CAAC;IAEtE,IAAI,WAAW,EAAE,CAAC;QACf,OAAoC,CAAC,WAAW,GAAG,WAAW,CAAC;IAClE,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@baseplate-dev/ui-components",
3
- "version": "0.6.3",
3
+ "version": "0.6.5",
4
4
  "description": "Shared UI component library",
5
5
  "keywords": [
6
6
  "baseplate",
@@ -71,7 +71,7 @@
71
71
  "tailwind-merge": "3.3.1",
72
72
  "zod": "^4.3.6",
73
73
  "zustand": "5.0.3",
74
- "@baseplate-dev/utils": "0.6.3"
74
+ "@baseplate-dev/utils": "0.6.5"
75
75
  },
76
76
  "devDependencies": {
77
77
  "@codemirror/state": "^6.5.4",
@@ -84,12 +84,12 @@
84
84
  "@testing-library/jest-dom": "6.9.1",
85
85
  "@testing-library/react": "16.2.0",
86
86
  "@testing-library/user-event": "14.6.1",
87
- "@types/node": "^22.17.2",
87
+ "@types/node": "^24.12.0",
88
88
  "@vitejs/plugin-react": "5.0.2",
89
89
  "cpx2": "8.0.0",
90
90
  "eslint": "9.39.2",
91
91
  "jsdom": "26.0.0",
92
- "oxlint": "1.55.0",
92
+ "oxlint": "1.56.0",
93
93
  "prettier": "3.8.1",
94
94
  "storybook": "10.2.13",
95
95
  "tailwindcss": "4.1.18",
@@ -98,10 +98,10 @@
98
98
  "vite": "7.1.12",
99
99
  "vite-plugin-svgr": "4.5.0",
100
100
  "vitest": "4.0.16",
101
- "@baseplate-dev/tools": "0.6.3"
101
+ "@baseplate-dev/tools": "0.6.5"
102
102
  },
103
103
  "engines": {
104
- "node": "^22.0.0"
104
+ "node": "^24.0.0"
105
105
  },
106
106
  "volta": {
107
107
  "extends": "../../package.json"
@@ -1,30 +0,0 @@
1
- import type React from 'react';
2
- import type { IconElement } from '#src/types/react.js';
3
- interface EmptyDisplayProps {
4
- /**
5
- * Optional class name to be applied to the empty state div
6
- */
7
- className?: string;
8
- /**
9
- * Optional icon to be displayed (if not passed, a generic empty state icon will be displayed)
10
- */
11
- icon?: IconElement;
12
- /**
13
- * Header to be displayed (if not passed, a generic empty header will be displayed)
14
- */
15
- header?: React.ReactNode;
16
- /**
17
- * Subtitle to be displayed (if a string is passed, it will be displayed as-is, otherwise a generic empty message will be displayed)
18
- */
19
- subtitle?: React.ReactNode;
20
- /**
21
- * Optional actions to be displayed below the empty message
22
- */
23
- actions?: React.ReactNode;
24
- }
25
- /**
26
- * Displays a generic empty state with a header and subtitle.
27
- */
28
- declare function EmptyDisplay({ className, icon: Icon, header, subtitle, actions, }: EmptyDisplayProps): React.ReactElement;
29
- export { EmptyDisplay };
30
- //# sourceMappingURL=empty-display.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"empty-display.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/empty-display/empty-display.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAKvD,UAAU,iBAAiB;IACzB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB;;OAEG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B;;OAEG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED;;GAEG;AACH,iBAAS,YAAY,CAAC,EACpB,SAAS,EACT,IAAI,EAAE,IAA2B,EACjC,MAAM,EACN,QAAQ,EACR,OAAO,GACR,EAAE,iBAAiB,GAAG,KAAK,CAAC,YAAY,CAiBxC;AAED,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -1,14 +0,0 @@
1
- 'use client';
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import { MdFormatListBulleted } from 'react-icons/md';
4
- import { useComponentStrings } from '#src/contexts/component-strings.js';
5
- import { cn } from '#src/utils/cn.js';
6
- /**
7
- * Displays a generic empty state with a header and subtitle.
8
- */
9
- function EmptyDisplay({ className, icon: Icon = MdFormatListBulleted, header, subtitle, actions, }) {
10
- const strings = useComponentStrings();
11
- return (_jsx("div", { className: cn('flex h-full items-center justify-center', className), children: _jsxs("div", { className: "flex max-w-xl flex-col items-center space-y-4 text-center", children: [_jsx("div", { children: _jsx(Icon, { className: "size-20 text-muted-foreground" }) }), _jsx("h1", { children: header ?? strings.emptyDisplayDefaultHeader }), _jsx("p", { className: "text-muted-foreground", children: subtitle ?? strings.emptyDisplayDefaultContent }), actions] }) }));
12
- }
13
- export { EmptyDisplay };
14
- //# sourceMappingURL=empty-display.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"empty-display.js","sourceRoot":"","sources":["../../../../src/components/ui/empty-display/empty-display.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAIb,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAItD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAyBtC;;GAEG;AACH,SAAS,YAAY,CAAC,EACpB,SAAS,EACT,IAAI,EAAE,IAAI,GAAG,oBAAoB,EACjC,MAAM,EACN,QAAQ,EACR,OAAO,GACW;IAClB,MAAM,OAAO,GAAG,mBAAmB,EAAE,CAAC;IAEtC,OAAO,CACL,cAAK,SAAS,EAAE,EAAE,CAAC,yCAAyC,EAAE,SAAS,CAAC,YACtE,eAAK,SAAS,EAAC,2DAA2D,aACxE,wBACE,KAAC,IAAI,IAAC,SAAS,EAAC,+BAA+B,GAAG,GAC9C,EACN,uBAAK,MAAM,IAAI,OAAO,CAAC,yBAAyB,GAAM,EACtD,YAAG,SAAS,EAAC,uBAAuB,YACjC,QAAQ,IAAI,OAAO,CAAC,0BAA0B,GAC7C,EACH,OAAO,IACJ,GACF,CACP,CAAC;AACJ,CAAC;AAED,OAAO,EAAE,YAAY,EAAE,CAAC"}