@a-type/ui 5.0.21 → 5.0.22

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 (47) hide show
  1. package/dist/esm/components/autocomplete/Autocomplete.d.ts +22 -22
  2. package/dist/esm/components/collapsible/Collapsible.d.ts +4 -4
  3. package/dist/esm/components/collapsible/Collapsible.stories.d.ts +1 -1
  4. package/dist/esm/components/colorMode/ColorModeToggle.d.ts +1 -1
  5. package/dist/esm/components/colorMode/ColorModeToggle.js.map +1 -1
  6. package/dist/esm/components/combobox/Combobox.d.ts +27 -27
  7. package/dist/esm/components/combobox/Combobox.js +2 -2
  8. package/dist/esm/components/combobox/Combobox.js.map +1 -1
  9. package/dist/esm/components/contextMenu/contextMenu.d.ts +6 -6
  10. package/dist/esm/components/contextMenu/contextMenu.stories.d.ts +5 -5
  11. package/dist/esm/components/dialog/Dialog.d.ts +9 -7
  12. package/dist/esm/components/dialog/Dialog.stories.d.ts +6 -6
  13. package/dist/esm/components/dropdownMenu/DropdownMenu.d.ts +12 -12
  14. package/dist/esm/components/forms/FormikForm.d.ts +2 -2
  15. package/dist/esm/components/forms/FormikForm.stories.d.ts +2 -2
  16. package/dist/esm/components/forms/ToggleGroupField.d.ts +3 -3
  17. package/dist/esm/components/forms/ToggleGroupField.js +3 -3
  18. package/dist/esm/components/forms/ToggleGroupField.js.map +1 -1
  19. package/dist/esm/components/lightbox/Lightbox.d.ts +5 -5
  20. package/dist/esm/components/lightbox/Lightbox.stories.d.ts +6 -6
  21. package/dist/esm/components/popover/Popover.d.ts +4 -4
  22. package/dist/esm/components/progress/Progress.d.ts +8 -8
  23. package/dist/esm/components/progress/Progress.stories.d.ts +8 -8
  24. package/dist/esm/components/scrollArea/ScrollArea.d.ts +7 -7
  25. package/dist/esm/components/select/Select.d.ts +15 -15
  26. package/dist/esm/components/select/Select.stories.d.ts +13 -13
  27. package/dist/esm/components/slider/Slider.d.ts +12 -12
  28. package/dist/esm/components/slider/Slider.stories.d.ts +8 -8
  29. package/dist/esm/components/switch/Switch.d.ts +2 -2
  30. package/dist/esm/components/switch/Switch.stories.d.ts +3 -3
  31. package/dist/esm/components/tabs/tabs.d.ts +8 -8
  32. package/dist/esm/components/toasts/toasts.d.ts +1 -1
  33. package/dist/esm/components/toasts/toasts.js +1 -0
  34. package/dist/esm/components/toasts/toasts.js.map +1 -1
  35. package/dist/esm/components/toasts/toasts.stories.js +8 -1
  36. package/dist/esm/components/toasts/toasts.stories.js.map +1 -1
  37. package/dist/esm/components/toggleGroup/toggleGroup.d.ts +5 -4
  38. package/dist/esm/components/toggleGroup/toggleGroup.stories.d.ts +7 -3
  39. package/dist/esm/components/toggleGroup/toggleGroup.stories.js +5 -1
  40. package/dist/esm/components/toggleGroup/toggleGroup.stories.js.map +1 -1
  41. package/package.json +3 -3
  42. package/src/components/colorMode/ColorModeToggle.tsx +2 -2
  43. package/src/components/combobox/Combobox.tsx +8 -2
  44. package/src/components/forms/ToggleGroupField.tsx +13 -10
  45. package/src/components/toasts/toasts.stories.tsx +13 -0
  46. package/src/components/toasts/toasts.tsx +1 -0
  47. package/src/components/toggleGroup/toggleGroup.stories.tsx +5 -1
@@ -2,10 +2,14 @@ import type { StoryObj } from '@storybook/react';
2
2
  import { ToggleGroup } from './toggleGroup.js';
3
3
  declare const meta: {
4
4
  title: string;
5
- component: import("react").FunctionComponent<import("./toggleGroup.js").ToggleGroupProps & import("react").RefAttributes<HTMLDivElement>> & {
6
- Item: import("react").FunctionComponent<import("@base-ui/react/toggle").ToggleProps & import("react").RefAttributes<HTMLButtonElement>>;
5
+ component: import("react").FunctionComponent<import("@base-ui/react").ToggleGroup.Props<string> & import("react").RefAttributes<HTMLDivElement>> & {
6
+ Item: import("react").FunctionComponent<import("@base-ui/react").Toggle.Props<string> & import("react").RefAttributes<HTMLButtonElement>>;
7
+ };
8
+ argTypes: {
9
+ multiple: {
10
+ type: "boolean";
11
+ };
7
12
  };
8
- argTypes: {};
9
13
  parameters: {
10
14
  controls: {
11
15
  expanded: boolean;
@@ -4,7 +4,11 @@ import { ToggleGroup } from './toggleGroup.js';
4
4
  const meta = {
5
5
  title: 'Components/ToggleGroup',
6
6
  component: ToggleGroup,
7
- argTypes: {},
7
+ argTypes: {
8
+ multiple: {
9
+ type: 'boolean',
10
+ },
11
+ },
8
12
  parameters: {
9
13
  controls: { expanded: true },
10
14
  },
@@ -1 +1 @@
1
- {"version":3,"file":"toggleGroup.stories.js","sourceRoot":"","sources":["../../../../src/components/toggleGroup/toggleGroup.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,IAAI,GAAG;IACZ,KAAK,EAAE,wBAAwB;IAC/B,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE,EAAE;IACZ,UAAU,EAAE;QACX,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC5B;CACkC,CAAC;AAErC,eAAe,IAAI,CAAC;AAIpB,MAAM,CAAC,MAAM,OAAO,GAAU;IAC7B,MAAM,CAAC,IAAI;QACV,OAAO,CACN,MAAC,WAAW,oBAAK,IAAI,eACpB,KAAC,WAAW,CAAC,IAAI,2BAA4B,EAC7C,KAAC,WAAW,CAAC,IAAI,2BAA4B,EAC7C,KAAC,WAAW,CAAC,IAAI,2BAA4B,KAChC,CACd,CAAC;IACH,CAAC;CACD,CAAC"}
1
+ {"version":3,"file":"toggleGroup.stories.js","sourceRoot":"","sources":["../../../../src/components/toggleGroup/toggleGroup.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,MAAM,IAAI,GAAG;IACZ,KAAK,EAAE,wBAAwB;IAC/B,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE;QACT,QAAQ,EAAE;YACT,IAAI,EAAE,SAAS;SACf;KACD;IACD,UAAU,EAAE;QACX,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;KAC5B;CACkC,CAAC;AAErC,eAAe,IAAI,CAAC;AAIpB,MAAM,CAAC,MAAM,OAAO,GAAU;IAC7B,MAAM,CAAC,IAAI;QACV,OAAO,CACN,MAAC,WAAW,oBAAK,IAAI,eACpB,KAAC,WAAW,CAAC,IAAI,2BAA4B,EAC7C,KAAC,WAAW,CAAC,IAAI,2BAA4B,EAC7C,KAAC,WAAW,CAAC,IAAI,2BAA4B,KAChC,CACd,CAAC;IACH,CAAC;CACD,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@a-type/ui",
3
- "version": "5.0.21",
3
+ "version": "5.0.22",
4
4
  "type": "module",
5
5
  "repository": {
6
6
  "url": "https://github.com/a-type/ui"
@@ -40,8 +40,8 @@
40
40
  "unocss": "^66"
41
41
  },
42
42
  "dependencies": {
43
- "@a-type/utils": "^1.1.4",
44
- "@base-ui/react": "^1.0.0",
43
+ "@a-type/utils": "^1.1.9",
44
+ "@base-ui/react": "^1.4.0",
45
45
  "@emotion/is-prop-valid": "^1.4.0",
46
46
  "@unocss/preset-mini": "66.5.4",
47
47
  "@unocss/preset-wind3": "66.5.4",
@@ -4,7 +4,7 @@ import { Icon } from '../icon/Icon.js';
4
4
  import { ToggleGroup } from '../toggleGroup/toggleGroup.js';
5
5
 
6
6
  export interface ColorModeToggleProps
7
- extends Omit<ToggleGroupProps, 'type' | 'onValueChange' | 'value'> {
7
+ extends Omit<ToggleGroupProps<string>, 'type' | 'onValueChange' | 'value'> {
8
8
  value?: 'light' | 'dark' | 'system';
9
9
  onValueChange?: (value: 'light' | 'dark' | 'system', event: any) => void;
10
10
  }
@@ -23,7 +23,7 @@ export function ColorModeToggle({
23
23
  value={[value]}
24
24
  onValueChange={([value], ev) => {
25
25
  if (userOnValueChange) {
26
- userOnValueChange(value, ev);
26
+ userOnValueChange(value as 'light' | 'dark' | 'system', ev);
27
27
  } else {
28
28
  setColorMode(value as 'light' | 'dark' | 'system');
29
29
  }
@@ -118,7 +118,8 @@ export function ComboboxComposedInput({
118
118
  className,
119
119
  )}
120
120
  >
121
- <Input.Input
121
+ <BaseCombobox.Combobox.Input
122
+ render={<Input.Input />}
122
123
  autoComplete="off"
123
124
  ref={ref}
124
125
  className={clsx(
@@ -137,7 +138,12 @@ export function ComboboxComposedInput({
137
138
  return (
138
139
  <Input.Border ref={ref} className={className}>
139
140
  {icon}
140
- <Input.Input autoComplete="off" minLength={3} {...props} />
141
+ <BaseCombobox.Combobox.Input
142
+ render={<Input.Input />}
143
+ autoComplete="off"
144
+ minLength={3}
145
+ {...props}
146
+ />
141
147
  {clearAndCaret}
142
148
  {children}
143
149
  </Input.Border>
@@ -3,14 +3,15 @@ import { ToggleGroup, ToggleGroupProps } from '../toggleGroup/toggleGroup.js';
3
3
  import { FieldLabel } from './FieldLabel.js';
4
4
  import { FieldRoot } from './TextField.js';
5
5
 
6
- export type ToggleGroupFieldProps = ToggleGroupProps & {
7
- name: string;
8
- label?: string;
9
- required?: boolean;
10
- className?: string;
11
- id?: string;
12
- type?: 'single' | 'multiple';
13
- };
6
+ export type ToggleGroupFieldProps<Value extends string> =
7
+ ToggleGroupProps<Value> & {
8
+ name: string;
9
+ label?: string;
10
+ required?: boolean;
11
+ className?: string;
12
+ id?: string;
13
+ type?: 'single' | 'multiple';
14
+ };
14
15
 
15
16
  function ToggleGroupFieldDefault({
16
17
  name,
@@ -18,9 +19,10 @@ function ToggleGroupFieldDefault({
18
19
  required,
19
20
  className,
20
21
  type = 'single',
22
+ multiple,
21
23
  id,
22
24
  ...props
23
- }: ToggleGroupFieldProps) {
25
+ }: ToggleGroupFieldProps<string>) {
24
26
  const [fieldProps, _, tools] = useField({ name, required, ...props });
25
27
 
26
28
  return (
@@ -29,12 +31,13 @@ function ToggleGroupFieldDefault({
29
31
  <ToggleGroup
30
32
  {...fieldProps}
31
33
  onValueChange={(v) => {
32
- if (type === 'multiple') {
34
+ if (multiple || type === 'multiple') {
33
35
  tools.setValue(v);
34
36
  } else {
35
37
  tools.setValue(v[0]);
36
38
  }
37
39
  }}
40
+ multiple={multiple || type === 'multiple'}
38
41
  {...props}
39
42
  id={id}
40
43
  className={className}
@@ -122,6 +122,19 @@ export const Default: Story = {
122
122
  >
123
123
  Show Rich Toast
124
124
  </Button>
125
+ <Button
126
+ onClick={() => {
127
+ toast({
128
+ id: 'unique-toast-id',
129
+ title: 'Unique Toast',
130
+ description:
131
+ "This toast has a unique ID. If you click the button multiple times, it won't create multiple toasts, but will update the existing one.",
132
+ timeout: 20_000,
133
+ });
134
+ }}
135
+ >
136
+ Show Unique Toast
137
+ </Button>
125
138
  </Box>
126
139
  );
127
140
  },
@@ -210,6 +210,7 @@ function baseToast(
210
210
  maybeOptions?: ToastOptions,
211
211
  ) {
212
212
  const finalOptions = toOptions(messageOrOptions, maybeOptions);
213
+ console.log('finalOptions', finalOptions);
213
214
  return manager.add(finalOptions);
214
215
  }
215
216
 
@@ -4,7 +4,11 @@ import { ToggleGroup } from './toggleGroup.js';
4
4
  const meta = {
5
5
  title: 'Components/ToggleGroup',
6
6
  component: ToggleGroup,
7
- argTypes: {},
7
+ argTypes: {
8
+ multiple: {
9
+ type: 'boolean',
10
+ },
11
+ },
8
12
  parameters: {
9
13
  controls: { expanded: true },
10
14
  },