@tipp/ui 1.4.25 → 1.4.26

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 (46) hide show
  1. package/dist/atoms/index.cjs +37 -13
  2. package/dist/atoms/index.cjs.map +1 -1
  3. package/dist/atoms/index.js +1 -1
  4. package/dist/atoms/select.cjs +26 -2
  5. package/dist/atoms/select.cjs.map +1 -1
  6. package/dist/atoms/select.d.cts +9 -2
  7. package/dist/atoms/select.d.ts +9 -2
  8. package/dist/atoms/select.js +1 -1
  9. package/dist/chunk-AA46GU2O.js +59 -0
  10. package/dist/chunk-AA46GU2O.js.map +1 -0
  11. package/dist/chunk-EA4OHG4N.js +98 -0
  12. package/dist/chunk-EA4OHG4N.js.map +1 -0
  13. package/dist/chunk-JZCXPFFN.js +47 -0
  14. package/dist/chunk-JZCXPFFN.js.map +1 -0
  15. package/dist/chunk-QQTD44PM.js +49 -0
  16. package/dist/chunk-QQTD44PM.js.map +1 -0
  17. package/dist/chunk-QYTUXY23.js +41 -0
  18. package/dist/chunk-QYTUXY23.js.map +1 -0
  19. package/dist/chunk-QZ6PXWPS.js +36 -0
  20. package/dist/chunk-QZ6PXWPS.js.map +1 -0
  21. package/dist/chunk-TIPWA4O6.js +46 -0
  22. package/dist/chunk-TIPWA4O6.js.map +1 -0
  23. package/dist/chunk-UNBE7CCN.js +98 -0
  24. package/dist/chunk-UNBE7CCN.js.map +1 -0
  25. package/dist/chunk-WDIFRVLH.js +97 -0
  26. package/dist/chunk-WDIFRVLH.js.map +1 -0
  27. package/dist/chunk-XKRCZGMT.js +49 -0
  28. package/dist/chunk-XKRCZGMT.js.map +1 -0
  29. package/dist/chunk-XLLFOQLR.js +98 -0
  30. package/dist/chunk-XLLFOQLR.js.map +1 -0
  31. package/dist/chunk-Z4GDSP7H.js +59 -0
  32. package/dist/chunk-Z4GDSP7H.js.map +1 -0
  33. package/dist/chunk-ZCMYEIG5.js +98 -0
  34. package/dist/chunk-ZCMYEIG5.js.map +1 -0
  35. package/dist/index.cjs +39 -15
  36. package/dist/index.cjs.map +1 -1
  37. package/dist/index.css +3 -0
  38. package/dist/index.css.map +1 -1
  39. package/dist/index.js +6 -6
  40. package/dist/molecules/expand-table/index.js +1 -1
  41. package/dist/molecules/expand-table/row.js +1 -1
  42. package/dist/molecules/index.js +2 -2
  43. package/dist/molecules/navigation.js +1 -1
  44. package/dist/molecules/tag-selector.js +1 -1
  45. package/package.json +1 -1
  46. package/src/atoms/select.tsx +43 -4
package/dist/index.js CHANGED
@@ -29,9 +29,6 @@ import {
29
29
  import {
30
30
  LearningPost
31
31
  } from "./chunk-CLBSZCMO.js";
32
- import {
33
- ThemeProvider
34
- } from "./chunk-BVNXAZ4W.js";
35
32
  import {
36
33
  Navigation
37
34
  } from "./chunk-F44BXTHN.js";
@@ -41,6 +38,11 @@ import {
41
38
  import {
42
39
  TagSelector
43
40
  } from "./chunk-XBI2YSRP.js";
41
+ import {
42
+ ThemeProvider
43
+ } from "./chunk-BVNXAZ4W.js";
44
+ import "./chunk-BSTJBBEX.js";
45
+ import "./chunk-NDUKDKGB.js";
44
46
  import "./chunk-PSINRHYW.js";
45
47
  import {
46
48
  EchartDefaultProps
@@ -48,8 +50,6 @@ import {
48
50
  import {
49
51
  HorizontalBarChart
50
52
  } from "./chunk-SGMO4KBC.js";
51
- import "./chunk-BSTJBBEX.js";
52
- import "./chunk-NDUKDKGB.js";
53
53
  import "./chunk-KTVZ4KLX.js";
54
54
  import {
55
55
  Form
@@ -96,7 +96,7 @@ import {
96
96
  } from "./chunk-TVDKGMBI.js";
97
97
  import {
98
98
  Select
99
- } from "./chunk-3JRNKBMN.js";
99
+ } from "./chunk-AA46GU2O.js";
100
100
  import {
101
101
  Separator
102
102
  } from "./chunk-HYITAA4J.js";
@@ -20,7 +20,7 @@ import "../../chunk-FPD73OHW.js";
20
20
  import "../../chunk-ZKZDVS7G.js";
21
21
  import "../../chunk-MUNMDHRF.js";
22
22
  import "../../chunk-TVDKGMBI.js";
23
- import "../../chunk-3JRNKBMN.js";
23
+ import "../../chunk-AA46GU2O.js";
24
24
  import "../../chunk-HYITAA4J.js";
25
25
  import "../../chunk-5H3YPCZK.js";
26
26
  import "../../chunk-XQOL7UBI.js";
@@ -16,7 +16,7 @@ import "../../chunk-FPD73OHW.js";
16
16
  import "../../chunk-ZKZDVS7G.js";
17
17
  import "../../chunk-MUNMDHRF.js";
18
18
  import "../../chunk-TVDKGMBI.js";
19
- import "../../chunk-3JRNKBMN.js";
19
+ import "../../chunk-AA46GU2O.js";
20
20
  import "../../chunk-HYITAA4J.js";
21
21
  import "../../chunk-5H3YPCZK.js";
22
22
  import "../../chunk-XQOL7UBI.js";
@@ -13,7 +13,6 @@ import {
13
13
  import {
14
14
  LearningPost
15
15
  } from "../chunk-CLBSZCMO.js";
16
- import "../chunk-BVNXAZ4W.js";
17
16
  import {
18
17
  Navigation
19
18
  } from "../chunk-F44BXTHN.js";
@@ -23,6 +22,7 @@ import {
23
22
  import {
24
23
  TagSelector
25
24
  } from "../chunk-XBI2YSRP.js";
25
+ import "../chunk-BVNXAZ4W.js";
26
26
  import "../chunk-BSTJBBEX.js";
27
27
  import "../chunk-NDUKDKGB.js";
28
28
  import "../chunk-KTVZ4KLX.js";
@@ -40,7 +40,7 @@ import "../chunk-FPD73OHW.js";
40
40
  import "../chunk-ZKZDVS7G.js";
41
41
  import "../chunk-MUNMDHRF.js";
42
42
  import "../chunk-TVDKGMBI.js";
43
- import "../chunk-3JRNKBMN.js";
43
+ import "../chunk-AA46GU2O.js";
44
44
  import "../chunk-HYITAA4J.js";
45
45
  import "../chunk-5H3YPCZK.js";
46
46
  import "../chunk-XQOL7UBI.js";
@@ -16,7 +16,7 @@ import "../chunk-FPD73OHW.js";
16
16
  import "../chunk-ZKZDVS7G.js";
17
17
  import "../chunk-MUNMDHRF.js";
18
18
  import "../chunk-TVDKGMBI.js";
19
- import "../chunk-3JRNKBMN.js";
19
+ import "../chunk-AA46GU2O.js";
20
20
  import "../chunk-HYITAA4J.js";
21
21
  import "../chunk-5H3YPCZK.js";
22
22
  import "../chunk-XQOL7UBI.js";
@@ -16,7 +16,7 @@ import "../chunk-FPD73OHW.js";
16
16
  import "../chunk-ZKZDVS7G.js";
17
17
  import "../chunk-MUNMDHRF.js";
18
18
  import "../chunk-TVDKGMBI.js";
19
- import "../chunk-3JRNKBMN.js";
19
+ import "../chunk-AA46GU2O.js";
20
20
  import "../chunk-HYITAA4J.js";
21
21
  import "../chunk-5H3YPCZK.js";
22
22
  import "../chunk-XQOL7UBI.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tipp/ui",
3
- "version": "1.4.25",
3
+ "version": "1.4.26",
4
4
  "private": false,
5
5
  "sideEffects": false,
6
6
  "type": "module",
@@ -1,5 +1,9 @@
1
1
  import { Select as RadixSelect } from '@radix-ui/themes';
2
- import { forwardRef, useMemo } from 'react';
2
+ import { createContext, forwardRef, useContext, useMemo } from 'react';
3
+
4
+ const SelectContext = createContext<{ error?: boolean }>({
5
+ error: false,
6
+ });
3
7
 
4
8
  export type ContentProps = RadixSelect.ContentProps & {
5
9
  isNavigation?: boolean;
@@ -7,11 +11,13 @@ export type ContentProps = RadixSelect.ContentProps & {
7
11
 
8
12
  const Content = forwardRef<HTMLDivElement, ContentProps>((props, ref) => {
9
13
  const { className, isNavigation, ...rest } = props;
14
+ const { error } = useContext(SelectContext);
10
15
 
11
16
  const cls = useMemo(() => {
12
17
  const etc = isNavigation ? 'nav-select' : '';
13
- return [etc, className].join(' ');
14
- }, [className, isNavigation]);
18
+ const errorCls = error ? 'tipp-error' : '';
19
+ return [etc, errorCls, className].join(' ');
20
+ }, [className, error, isNavigation]);
15
21
 
16
22
  return (
17
23
  <RadixSelect.Content
@@ -22,10 +28,43 @@ const Content = forwardRef<HTMLDivElement, ContentProps>((props, ref) => {
22
28
  />
23
29
  );
24
30
  });
25
-
26
31
  Content.displayName = 'Select.Content';
27
32
 
33
+ const Trigger = forwardRef<HTMLButtonElement, RadixSelect.TriggerProps>(
34
+ (props, ref) => {
35
+ const { className, ...rest } = props;
36
+ const { error } = useContext(SelectContext);
37
+
38
+ const cls = useMemo(() => {
39
+ const errorCls = error ? 'error' : '';
40
+ return [errorCls, className].join(' ');
41
+ }, [className, error]);
42
+
43
+ return <RadixSelect.Trigger {...rest} className={cls} ref={ref} />;
44
+ }
45
+ );
46
+
47
+ Trigger.displayName = 'Select.Trigger';
48
+
49
+ type RootProps = RadixSelect.RootProps & {
50
+ error?: boolean;
51
+ };
52
+
53
+ function Root(props: RootProps): React.ReactElement {
54
+ const { error, ...rest } = props;
55
+
56
+ return (
57
+ <SelectContext.Provider value={{ error }}>
58
+ <RadixSelect.Root {...rest} />
59
+ </SelectContext.Provider>
60
+ );
61
+ }
62
+
63
+ Root.displayName = 'Select.Root';
64
+
28
65
  export const Select = {
29
66
  ...RadixSelect,
67
+ Root,
68
+ Trigger,
30
69
  Content,
31
70
  };