@mindlogic-ai/logician-ui 3.0.0-alpha.34 → 3.0.0-alpha.35

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 (75) hide show
  1. package/dist/components/Pagination/Pagination.d.ts.map +1 -1
  2. package/dist/components/Pagination/Pagination.js +7 -20
  3. package/dist/components/Pagination/Pagination.js.map +1 -1
  4. package/dist/components/Pagination/Pagination.mjs +7 -20
  5. package/dist/components/Pagination/Pagination.mjs.map +1 -1
  6. package/dist/components/Select/Combobox.d.ts +28 -0
  7. package/dist/components/Select/Combobox.d.ts.map +1 -0
  8. package/dist/components/Select/Combobox.js +47 -0
  9. package/dist/components/Select/Combobox.js.map +1 -0
  10. package/dist/components/Select/Combobox.mjs +45 -0
  11. package/dist/components/Select/Combobox.mjs.map +1 -0
  12. package/dist/components/Select/ComboboxField.d.ts +12 -0
  13. package/dist/components/Select/ComboboxField.d.ts.map +1 -0
  14. package/dist/components/Select/ComboboxField.js +34 -0
  15. package/dist/components/Select/ComboboxField.js.map +1 -0
  16. package/dist/components/Select/ComboboxField.mjs +32 -0
  17. package/dist/components/Select/ComboboxField.mjs.map +1 -0
  18. package/dist/components/Select/Select.d.ts +29 -3
  19. package/dist/components/Select/Select.d.ts.map +1 -1
  20. package/dist/components/Select/Select.js +41 -156
  21. package/dist/components/Select/Select.js.map +1 -1
  22. package/dist/components/Select/Select.mjs +43 -158
  23. package/dist/components/Select/Select.mjs.map +1 -1
  24. package/dist/components/Select/Select.styles.d.ts +91 -62
  25. package/dist/components/Select/Select.styles.d.ts.map +1 -1
  26. package/dist/components/Select/Select.styles.js +67 -69
  27. package/dist/components/Select/Select.styles.js.map +1 -1
  28. package/dist/components/Select/Select.styles.mjs +63 -66
  29. package/dist/components/Select/Select.styles.mjs.map +1 -1
  30. package/dist/components/Select/Select.types.d.ts +31 -8
  31. package/dist/components/Select/Select.types.d.ts.map +1 -1
  32. package/dist/components/Select/SelectField.d.ts +11 -0
  33. package/dist/components/Select/SelectField.d.ts.map +1 -0
  34. package/dist/components/Select/SelectField.js +32 -0
  35. package/dist/components/Select/SelectField.js.map +1 -0
  36. package/dist/components/Select/SelectField.mjs +30 -0
  37. package/dist/components/Select/SelectField.mjs.map +1 -0
  38. package/dist/components/Select/index.d.ts +4 -0
  39. package/dist/components/Select/index.d.ts.map +1 -1
  40. package/dist/index.js +27 -9
  41. package/dist/index.js.map +1 -1
  42. package/dist/index.mjs +4 -1
  43. package/dist/index.mjs.map +1 -1
  44. package/package.json +1 -3
  45. package/src/components/FormIntegration/FormIntegration.stories.tsx +7 -13
  46. package/src/components/FormIntegration/README.md +1 -1
  47. package/src/components/Pagination/Pagination.tsx +7 -26
  48. package/src/components/Select/Combobox.stories.tsx +172 -0
  49. package/src/components/Select/Combobox.tsx +69 -0
  50. package/src/components/Select/ComboboxField.tsx +86 -0
  51. package/src/components/Select/Comparison.stories.tsx +38 -321
  52. package/src/components/Select/Select.stories.tsx +691 -404
  53. package/src/components/Select/Select.styles.ts +64 -76
  54. package/src/components/Select/Select.tsx +76 -202
  55. package/src/components/Select/Select.types.ts +33 -13
  56. package/src/components/Select/SelectField.tsx +87 -0
  57. package/src/components/Select/index.ts +8 -0
  58. package/dist/components/Select/MenuList/MenuList.d.ts +0 -4
  59. package/dist/components/Select/MenuList/MenuList.d.ts.map +0 -1
  60. package/dist/components/Select/MenuList/MenuList.types.d.ts +0 -9
  61. package/dist/components/Select/MenuList/MenuList.types.d.ts.map +0 -1
  62. package/dist/components/Select/MenuList/VirtualizedMenuList.d.ts +0 -4
  63. package/dist/components/Select/MenuList/VirtualizedMenuList.d.ts.map +0 -1
  64. package/dist/components/Select/MenuList/VirtualizedMenuListContext.d.ts +0 -9
  65. package/dist/components/Select/MenuList/VirtualizedMenuListContext.d.ts.map +0 -1
  66. package/dist/components/Select/MenuList/index.d.ts +0 -4
  67. package/dist/components/Select/MenuList/index.d.ts.map +0 -1
  68. package/dist/components/Select/_utils/resolveStyle.d.ts +0 -5
  69. package/dist/components/Select/_utils/resolveStyle.d.ts.map +0 -1
  70. package/src/components/Select/MenuList/MenuList.tsx +0 -87
  71. package/src/components/Select/MenuList/MenuList.types.ts +0 -21
  72. package/src/components/Select/MenuList/VirtualizedMenuList.tsx +0 -136
  73. package/src/components/Select/MenuList/VirtualizedMenuListContext.tsx +0 -35
  74. package/src/components/Select/MenuList/index.ts +0 -3
  75. package/src/components/Select/_utils/resolveStyle.ts +0 -21
@@ -2,79 +2,77 @@
2
2
  'use strict';
3
3
 
4
4
  /**
5
- * Select component styles (Chakra v3 compatible)
5
+ * Shared style objects for the Select and Combobox components.
6
6
  *
7
- * Defaults mirror the Input component (Chakra v3 `Input` recipe + Logician
8
- * Input.tsx overrides) so the two controls share the same border, hover,
9
- * focus, font, and disabled/readOnly behavior. When the Input component
10
- * changes, update these values to match.
11
- *
12
- * Reference (kept in sync with Input.tsx):
13
- * borderColor: gray.400
14
- * _hover : primary.lighter
15
- * _focus : primary.main
16
- * _invalid : danger.main
17
- * borderRadius: 6 (Chakra `l2` -> Logician `radii.sm`)
18
- * minHeight : 40 (Chakra md, `sizes.10`)
19
- * fontSize : 1em (Chakra textStyle `sm`, inherits responsively)
20
- * fontWeight : 500 (Chakra textStyle `sm` -> `subtitleAndP.medium`)
21
- * paddingX : 12px (Chakra md, `px: 3`)
7
+ * These mirror the Input component (`Input.tsx`) so the form controls share
8
+ * the same border, hover, focus and disabled behavior. They are applied on
9
+ * top of Chakra's built-in `select` / `combobox` slot recipes via the `css`
10
+ * prop only the design-system deltas live here. When `Input.tsx` changes,
11
+ * update these values to match.
22
12
  */
23
- const getPlaceholderStyles = (colors) => ({
24
- color: colors.gray500,
25
- fontSize: '1em',
26
- fontWeight: 500,
27
- });
28
- const getMenuStyles = (colors) => ({
29
- width: 'max-content',
30
- minWidth: '100%',
31
- backgroundColor: 'white',
32
- borderRadius: 8,
33
- border: `1px solid ${colors.gray300}`,
34
- marginTop: 12,
13
+ const focusVars = {
14
+ '--focus-color': 'var(--chakra-colors-primary-main)',
15
+ '--error-color': 'var(--chakra-colors-danger-main)',
16
+ };
17
+ const fieldBase = {
18
+ ...focusVars,
19
+ bg: 'white',
20
+ borderColor: 'gray.400',
21
+ _hover: { borderColor: 'primary.lighter' },
22
+ _focus: { borderColor: 'primary.main' },
23
+ _invalid: {
24
+ borderColor: 'danger.main',
25
+ _hover: { borderColor: 'danger.main' },
26
+ _focus: { borderColor: 'danger.main' },
27
+ },
28
+ _disabled: {
29
+ opacity: 1,
30
+ cursor: 'not-allowed',
31
+ bg: 'gray.50',
32
+ color: 'gray.1000',
33
+ fontWeight: 'semibold',
34
+ },
35
+ };
36
+ /** Select trigger — the clickable control. */
37
+ const triggerStyles = {
38
+ ...fieldBase,
39
+ cursor: 'pointer',
40
+ _open: { borderColor: 'primary.main' },
41
+ };
42
+ /** Combobox text input — the typeable control. */
43
+ const inputStyles = {
44
+ ...fieldBase,
45
+ };
46
+ /** Dropdown panel for both Select and Combobox. */
47
+ const contentStyles = {
48
+ bg: 'white',
49
+ borderColor: 'gray.300',
50
+ borderWidth: '1px',
51
+ borderRadius: '8px',
35
52
  boxShadow: '0px 5px 20px 0px rgba(0, 0, 0, 0.10)',
36
- zIndex: 9,
37
- });
38
- const getOptionStyles = ({ isSelected, isDisabled, colors, }) => ({
39
- cursor: isDisabled ? 'not-allowed' : 'pointer',
40
- minHeight: 36,
41
- margin: '4px 0',
42
- borderRadius: 4,
43
- fontSize: 14,
44
- backgroundColor: isSelected ? colors.primaryLightest : 'white',
45
- color: isSelected
46
- ? colors.primaryDark
47
- : isDisabled
48
- ? colors.gray500
49
- : colors.gray1200,
50
- fontWeight: isSelected ? 700 : 400,
51
- '&:hover': {
52
- backgroundColor: isSelected ? colors.primaryLightest : colors.gray50,
53
+ padding: '4px',
54
+ };
55
+ /** Individual option for both Select and Combobox. */
56
+ const itemStyles = {
57
+ borderRadius: '4px',
58
+ cursor: 'pointer',
59
+ color: 'gray.1200',
60
+ _highlighted: { bg: 'gray.50' },
61
+ _checked: {
62
+ bg: 'primary.extralight',
63
+ color: 'primary.dark',
64
+ fontWeight: 'bold',
53
65
  },
54
- });
55
- const getControlStyles = (variant, colors) => {
56
- const baseStyles = {
57
- borderRadius: 6,
58
- cursor: 'pointer',
59
- minHeight: 40,
60
- fontSize: '1em',
61
- fontWeight: 500,
62
- paddingLeft: 12,
63
- paddingRight: 8,
64
- backgroundColor: 'white',
65
- };
66
- if (variant === 'danger') {
67
- return {
68
- ...baseStyles,
69
- border: `1px solid ${colors.dangerColor}`,
70
- boxShadow: `0 0 0 1px ${colors.dangerColor}`,
71
- };
72
- }
73
- return baseStyles;
66
+ _disabled: { color: 'gray.500', cursor: 'not-allowed' },
67
+ };
68
+ /** Dropdown chevron — softened so it doesn't outweigh adjacent icons. */
69
+ const indicatorStyles = {
70
+ color: 'gray.600',
74
71
  };
75
72
 
76
- exports.getControlStyles = getControlStyles;
77
- exports.getMenuStyles = getMenuStyles;
78
- exports.getOptionStyles = getOptionStyles;
79
- exports.getPlaceholderStyles = getPlaceholderStyles;
73
+ exports.contentStyles = contentStyles;
74
+ exports.indicatorStyles = indicatorStyles;
75
+ exports.inputStyles = inputStyles;
76
+ exports.itemStyles = itemStyles;
77
+ exports.triggerStyles = triggerStyles;
80
78
  //# sourceMappingURL=Select.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.styles.js","sources":["../../../src/components/Select/Select.styles.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;AAkBG;MAIU,oBAAoB,GAAG,CAAC,MAAoB,MAAM;IAC7D,KAAK,EAAE,MAAM,CAAC,OAAO;AACrB,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,UAAU,EAAE,GAAG;AAChB,CAAA;MAEY,aAAa,GAAG,CAAC,MAAoB,MAAM;AACtD,IAAA,KAAK,EAAE,aAAa;AACpB,IAAA,QAAQ,EAAE,MAAM;AAChB,IAAA,eAAe,EAAE,OAAO;AACxB,IAAA,YAAY,EAAE,CAAC;AACf,IAAA,MAAM,EAAE,CAAA,UAAA,EAAa,MAAM,CAAC,OAAO,CAAA,CAAE;AACrC,IAAA,SAAS,EAAE,EAAE;AACb,IAAA,SAAS,EAAE,sCAAsC;AACjD,IAAA,MAAM,EAAE,CAAC;AACV,CAAA;AAEM,MAAM,eAAe,GAAG,CAAC,EAC9B,UAAU,EACV,UAAU,EACV,MAAM,GAKP,MAAM;IACL,MAAM,EAAE,UAAU,GAAG,aAAa,GAAG,SAAS;AAC9C,IAAA,SAAS,EAAE,EAAE;AACb,IAAA,MAAM,EAAE,OAAO;AACf,IAAA,YAAY,EAAE,CAAC;AACf,IAAA,QAAQ,EAAE,EAAE;IACZ,eAAe,EAAE,UAAU,GAAG,MAAM,CAAC,eAAe,GAAG,OAAO;AAC9D,IAAA,KAAK,EAAE;UACH,MAAM,CAAC;AACT,UAAE;cACE,MAAM,CAAC;cACP,MAAM,CAAC,QAAQ;IACrB,UAAU,EAAE,UAAU,GAAG,GAAG,GAAG,GAAG;AAClC,IAAA,SAAS,EAAE;AACT,QAAA,eAAe,EAAE,UAAU,GAAG,MAAM,CAAC,eAAe,GAAG,MAAM,CAAC,MAAM;AACrE,KAAA;AACF,CAAA;MAEY,gBAAgB,GAAG,CAAC,OAAe,EAAE,MAAoB,KAAI;AACxE,IAAA,MAAM,UAAU,GAAG;AACjB,QAAA,YAAY,EAAE,CAAC;AACf,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,SAAS,EAAE,EAAE;AACb,QAAA,QAAQ,EAAE,KAAK;AACf,QAAA,UAAU,EAAE,GAAG;AACf,QAAA,WAAW,EAAE,EAAE;AACf,QAAA,YAAY,EAAE,CAAC;AACf,QAAA,eAAe,EAAE,OAAO;KACzB;AAED,IAAA,IAAI,OAAO,KAAK,QAAQ,EAAE;QACxB,OAAO;AACL,YAAA,GAAG,UAAU;AACb,YAAA,MAAM,EAAE,CAAA,UAAA,EAAa,MAAM,CAAC,WAAW,CAAA,CAAE;AACzC,YAAA,SAAS,EAAE,CAAA,UAAA,EAAa,MAAM,CAAC,WAAW,CAAA,CAAE;SAC7C;IACH;AAEA,IAAA,OAAO,UAAU;AACnB;;;;;;;"}
1
+ {"version":3,"file":"Select.styles.js","sources":["../../../src/components/Select/Select.styles.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAAA;;;;;;;;AAQG;AAEH,MAAM,SAAS,GAAG;AAChB,IAAA,eAAe,EAAE,mCAAmC;AACpD,IAAA,eAAe,EAAE,kCAAkC;CACpD;AAED,MAAM,SAAS,GAAG;AAChB,IAAA,GAAG,SAAS;AACZ,IAAA,EAAE,EAAE,OAAO;AACX,IAAA,WAAW,EAAE,UAAU;AACvB,IAAA,MAAM,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE;AAC1C,IAAA,MAAM,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE;AACvC,IAAA,QAAQ,EAAE;AACR,QAAA,WAAW,EAAE,aAAa;AAC1B,QAAA,MAAM,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE;AACtC,QAAA,MAAM,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE;AACvC,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,OAAO,EAAE,CAAC;AACV,QAAA,MAAM,EAAE,aAAa;AACrB,QAAA,EAAE,EAAE,SAAS;AACb,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,UAAU,EAAE,UAAU;AACvB,KAAA;CACF;AAED;AACO,MAAM,aAAa,GAAG;AAC3B,IAAA,GAAG,SAAS;AACZ,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,KAAK,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE;;AAGxC;AACO,MAAM,WAAW,GAAG;AACzB,IAAA,GAAG,SAAS;;AAGd;AACO,MAAM,aAAa,GAAG;AAC3B,IAAA,EAAE,EAAE,OAAO;AACX,IAAA,WAAW,EAAE,UAAU;AACvB,IAAA,WAAW,EAAE,KAAK;AAClB,IAAA,YAAY,EAAE,KAAK;AACnB,IAAA,SAAS,EAAE,sCAAsC;AACjD,IAAA,OAAO,EAAE,KAAK;;AAGhB;AACO,MAAM,UAAU,GAAG;AACxB,IAAA,YAAY,EAAE,KAAK;AACnB,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,KAAK,EAAE,WAAW;AAClB,IAAA,YAAY,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;AAC/B,IAAA,QAAQ,EAAE;AACR,QAAA,EAAE,EAAE,oBAAoB;AACxB,QAAA,KAAK,EAAE,cAAc;AACrB,QAAA,UAAU,EAAE,MAAM;AACnB,KAAA;IACD,SAAS,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE;;AAGzD;AACO,MAAM,eAAe,GAAG;AAC7B,IAAA,KAAK,EAAE,UAAU;;;;;;;;;"}
@@ -1,75 +1,72 @@
1
1
  "use client";
2
2
  /**
3
- * Select component styles (Chakra v3 compatible)
3
+ * Shared style objects for the Select and Combobox components.
4
4
  *
5
- * Defaults mirror the Input component (Chakra v3 `Input` recipe + Logician
6
- * Input.tsx overrides) so the two controls share the same border, hover,
7
- * focus, font, and disabled/readOnly behavior. When the Input component
8
- * changes, update these values to match.
9
- *
10
- * Reference (kept in sync with Input.tsx):
11
- * borderColor: gray.400
12
- * _hover : primary.lighter
13
- * _focus : primary.main
14
- * _invalid : danger.main
15
- * borderRadius: 6 (Chakra `l2` -> Logician `radii.sm`)
16
- * minHeight : 40 (Chakra md, `sizes.10`)
17
- * fontSize : 1em (Chakra textStyle `sm`, inherits responsively)
18
- * fontWeight : 500 (Chakra textStyle `sm` -> `subtitleAndP.medium`)
19
- * paddingX : 12px (Chakra md, `px: 3`)
5
+ * These mirror the Input component (`Input.tsx`) so the form controls share
6
+ * the same border, hover, focus and disabled behavior. They are applied on
7
+ * top of Chakra's built-in `select` / `combobox` slot recipes via the `css`
8
+ * prop only the design-system deltas live here. When `Input.tsx` changes,
9
+ * update these values to match.
20
10
  */
21
- const getPlaceholderStyles = (colors) => ({
22
- color: colors.gray500,
23
- fontSize: '1em',
24
- fontWeight: 500,
25
- });
26
- const getMenuStyles = (colors) => ({
27
- width: 'max-content',
28
- minWidth: '100%',
29
- backgroundColor: 'white',
30
- borderRadius: 8,
31
- border: `1px solid ${colors.gray300}`,
32
- marginTop: 12,
11
+ const focusVars = {
12
+ '--focus-color': 'var(--chakra-colors-primary-main)',
13
+ '--error-color': 'var(--chakra-colors-danger-main)',
14
+ };
15
+ const fieldBase = {
16
+ ...focusVars,
17
+ bg: 'white',
18
+ borderColor: 'gray.400',
19
+ _hover: { borderColor: 'primary.lighter' },
20
+ _focus: { borderColor: 'primary.main' },
21
+ _invalid: {
22
+ borderColor: 'danger.main',
23
+ _hover: { borderColor: 'danger.main' },
24
+ _focus: { borderColor: 'danger.main' },
25
+ },
26
+ _disabled: {
27
+ opacity: 1,
28
+ cursor: 'not-allowed',
29
+ bg: 'gray.50',
30
+ color: 'gray.1000',
31
+ fontWeight: 'semibold',
32
+ },
33
+ };
34
+ /** Select trigger — the clickable control. */
35
+ const triggerStyles = {
36
+ ...fieldBase,
37
+ cursor: 'pointer',
38
+ _open: { borderColor: 'primary.main' },
39
+ };
40
+ /** Combobox text input — the typeable control. */
41
+ const inputStyles = {
42
+ ...fieldBase,
43
+ };
44
+ /** Dropdown panel for both Select and Combobox. */
45
+ const contentStyles = {
46
+ bg: 'white',
47
+ borderColor: 'gray.300',
48
+ borderWidth: '1px',
49
+ borderRadius: '8px',
33
50
  boxShadow: '0px 5px 20px 0px rgba(0, 0, 0, 0.10)',
34
- zIndex: 9,
35
- });
36
- const getOptionStyles = ({ isSelected, isDisabled, colors, }) => ({
37
- cursor: isDisabled ? 'not-allowed' : 'pointer',
38
- minHeight: 36,
39
- margin: '4px 0',
40
- borderRadius: 4,
41
- fontSize: 14,
42
- backgroundColor: isSelected ? colors.primaryLightest : 'white',
43
- color: isSelected
44
- ? colors.primaryDark
45
- : isDisabled
46
- ? colors.gray500
47
- : colors.gray1200,
48
- fontWeight: isSelected ? 700 : 400,
49
- '&:hover': {
50
- backgroundColor: isSelected ? colors.primaryLightest : colors.gray50,
51
+ padding: '4px',
52
+ };
53
+ /** Individual option for both Select and Combobox. */
54
+ const itemStyles = {
55
+ borderRadius: '4px',
56
+ cursor: 'pointer',
57
+ color: 'gray.1200',
58
+ _highlighted: { bg: 'gray.50' },
59
+ _checked: {
60
+ bg: 'primary.extralight',
61
+ color: 'primary.dark',
62
+ fontWeight: 'bold',
51
63
  },
52
- });
53
- const getControlStyles = (variant, colors) => {
54
- const baseStyles = {
55
- borderRadius: 6,
56
- cursor: 'pointer',
57
- minHeight: 40,
58
- fontSize: '1em',
59
- fontWeight: 500,
60
- paddingLeft: 12,
61
- paddingRight: 8,
62
- backgroundColor: 'white',
63
- };
64
- if (variant === 'danger') {
65
- return {
66
- ...baseStyles,
67
- border: `1px solid ${colors.dangerColor}`,
68
- boxShadow: `0 0 0 1px ${colors.dangerColor}`,
69
- };
70
- }
71
- return baseStyles;
64
+ _disabled: { color: 'gray.500', cursor: 'not-allowed' },
65
+ };
66
+ /** Dropdown chevron — softened so it doesn't outweigh adjacent icons. */
67
+ const indicatorStyles = {
68
+ color: 'gray.600',
72
69
  };
73
70
 
74
- export { getControlStyles, getMenuStyles, getOptionStyles, getPlaceholderStyles };
71
+ export { contentStyles, indicatorStyles, inputStyles, itemStyles, triggerStyles };
75
72
  //# sourceMappingURL=Select.styles.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.styles.mjs","sources":["../../../src/components/Select/Select.styles.ts"],"sourcesContent":[null],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;AAkBG;MAIU,oBAAoB,GAAG,CAAC,MAAoB,MAAM;IAC7D,KAAK,EAAE,MAAM,CAAC,OAAO;AACrB,IAAA,QAAQ,EAAE,KAAK;AACf,IAAA,UAAU,EAAE,GAAG;AAChB,CAAA;MAEY,aAAa,GAAG,CAAC,MAAoB,MAAM;AACtD,IAAA,KAAK,EAAE,aAAa;AACpB,IAAA,QAAQ,EAAE,MAAM;AAChB,IAAA,eAAe,EAAE,OAAO;AACxB,IAAA,YAAY,EAAE,CAAC;AACf,IAAA,MAAM,EAAE,CAAA,UAAA,EAAa,MAAM,CAAC,OAAO,CAAA,CAAE;AACrC,IAAA,SAAS,EAAE,EAAE;AACb,IAAA,SAAS,EAAE,sCAAsC;AACjD,IAAA,MAAM,EAAE,CAAC;AACV,CAAA;AAEM,MAAM,eAAe,GAAG,CAAC,EAC9B,UAAU,EACV,UAAU,EACV,MAAM,GAKP,MAAM;IACL,MAAM,EAAE,UAAU,GAAG,aAAa,GAAG,SAAS;AAC9C,IAAA,SAAS,EAAE,EAAE;AACb,IAAA,MAAM,EAAE,OAAO;AACf,IAAA,YAAY,EAAE,CAAC;AACf,IAAA,QAAQ,EAAE,EAAE;IACZ,eAAe,EAAE,UAAU,GAAG,MAAM,CAAC,eAAe,GAAG,OAAO;AAC9D,IAAA,KAAK,EAAE;UACH,MAAM,CAAC;AACT,UAAE;cACE,MAAM,CAAC;cACP,MAAM,CAAC,QAAQ;IACrB,UAAU,EAAE,UAAU,GAAG,GAAG,GAAG,GAAG;AAClC,IAAA,SAAS,EAAE;AACT,QAAA,eAAe,EAAE,UAAU,GAAG,MAAM,CAAC,eAAe,GAAG,MAAM,CAAC,MAAM;AACrE,KAAA;AACF,CAAA;MAEY,gBAAgB,GAAG,CAAC,OAAe,EAAE,MAAoB,KAAI;AACxE,IAAA,MAAM,UAAU,GAAG;AACjB,QAAA,YAAY,EAAE,CAAC;AACf,QAAA,MAAM,EAAE,SAAS;AACjB,QAAA,SAAS,EAAE,EAAE;AACb,QAAA,QAAQ,EAAE,KAAK;AACf,QAAA,UAAU,EAAE,GAAG;AACf,QAAA,WAAW,EAAE,EAAE;AACf,QAAA,YAAY,EAAE,CAAC;AACf,QAAA,eAAe,EAAE,OAAO;KACzB;AAED,IAAA,IAAI,OAAO,KAAK,QAAQ,EAAE;QACxB,OAAO;AACL,YAAA,GAAG,UAAU;AACb,YAAA,MAAM,EAAE,CAAA,UAAA,EAAa,MAAM,CAAC,WAAW,CAAA,CAAE;AACzC,YAAA,SAAS,EAAE,CAAA,UAAA,EAAa,MAAM,CAAC,WAAW,CAAA,CAAE;SAC7C;IACH;AAEA,IAAA,OAAO,UAAU;AACnB;;;;"}
1
+ {"version":3,"file":"Select.styles.mjs","sources":["../../../src/components/Select/Select.styles.ts"],"sourcesContent":[null],"names":[],"mappings":";AAAA;;;;;;;;AAQG;AAEH,MAAM,SAAS,GAAG;AAChB,IAAA,eAAe,EAAE,mCAAmC;AACpD,IAAA,eAAe,EAAE,kCAAkC;CACpD;AAED,MAAM,SAAS,GAAG;AAChB,IAAA,GAAG,SAAS;AACZ,IAAA,EAAE,EAAE,OAAO;AACX,IAAA,WAAW,EAAE,UAAU;AACvB,IAAA,MAAM,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE;AAC1C,IAAA,MAAM,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE;AACvC,IAAA,QAAQ,EAAE;AACR,QAAA,WAAW,EAAE,aAAa;AAC1B,QAAA,MAAM,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE;AACtC,QAAA,MAAM,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE;AACvC,KAAA;AACD,IAAA,SAAS,EAAE;AACT,QAAA,OAAO,EAAE,CAAC;AACV,QAAA,MAAM,EAAE,aAAa;AACrB,QAAA,EAAE,EAAE,SAAS;AACb,QAAA,KAAK,EAAE,WAAW;AAClB,QAAA,UAAU,EAAE,UAAU;AACvB,KAAA;CACF;AAED;AACO,MAAM,aAAa,GAAG;AAC3B,IAAA,GAAG,SAAS;AACZ,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,KAAK,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE;;AAGxC;AACO,MAAM,WAAW,GAAG;AACzB,IAAA,GAAG,SAAS;;AAGd;AACO,MAAM,aAAa,GAAG;AAC3B,IAAA,EAAE,EAAE,OAAO;AACX,IAAA,WAAW,EAAE,UAAU;AACvB,IAAA,WAAW,EAAE,KAAK;AAClB,IAAA,YAAY,EAAE,KAAK;AACnB,IAAA,SAAS,EAAE,sCAAsC;AACjD,IAAA,OAAO,EAAE,KAAK;;AAGhB;AACO,MAAM,UAAU,GAAG;AACxB,IAAA,YAAY,EAAE,KAAK;AACnB,IAAA,MAAM,EAAE,SAAS;AACjB,IAAA,KAAK,EAAE,WAAW;AAClB,IAAA,YAAY,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE;AAC/B,IAAA,QAAQ,EAAE;AACR,QAAA,EAAE,EAAE,oBAAoB;AACxB,QAAA,KAAK,EAAE,cAAc;AACrB,QAAA,UAAU,EAAE,MAAM;AACnB,KAAA;IACD,SAAS,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE;;AAGzD;AACO,MAAM,eAAe,GAAG;AAC7B,IAAA,KAAK,EAAE,UAAU;;;;;"}
@@ -1,11 +1,34 @@
1
- import { GroupBase, Props } from 'react-select';
2
- export type SelectVariant = 'default' | 'danger';
3
- export type SelectProps<Option, IsMulti extends boolean, Group extends GroupBase<Option>> = Props<Option, IsMulti, Group> & {
4
- variant?: SelectVariant;
5
- invalid?: boolean;
6
- };
7
- export type SelectOption<T> = {
1
+ import type { ReactNode } from 'react';
2
+ export type SelectSize = 'xs' | 'sm' | 'md' | 'lg';
3
+ export interface SelectOption<T = string> {
8
4
  label: string;
9
5
  value: T;
10
- };
6
+ disabled?: boolean;
7
+ }
8
+ interface FieldBaseProps<T> {
9
+ /** Options rendered in the dropdown. */
10
+ options: SelectOption<T>[];
11
+ /** Controlled selected value. */
12
+ value?: T | null;
13
+ /** Initial value for uncontrolled usage. */
14
+ defaultValue?: T | null;
15
+ /** Called with the selected value, or `null` when the selection is cleared. */
16
+ onChange?: (value: T | null) => void;
17
+ placeholder?: string;
18
+ /** Optional label rendered above the control. */
19
+ label?: ReactNode;
20
+ size?: SelectSize;
21
+ invalid?: boolean;
22
+ disabled?: boolean;
23
+ readOnly?: boolean;
24
+ required?: boolean;
25
+ name?: string;
26
+ width?: string | number;
27
+ }
28
+ export type SelectFieldProps<T = string> = FieldBaseProps<T>;
29
+ export interface ComboboxFieldProps<T = string> extends FieldBaseProps<T> {
30
+ /** Content shown when no option matches the typed query. */
31
+ emptyText?: ReactNode;
32
+ }
33
+ export {};
11
34
  //# sourceMappingURL=Select.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Select.types.d.ts","sourceRoot":"","sources":["../../../src/components/Select/Select.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEjD,MAAM,MAAM,WAAW,CACrB,MAAM,EACN,OAAO,SAAS,OAAO,EACvB,KAAK,SAAS,SAAS,CAAC,MAAM,CAAC,IAC7B,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,GAAG;IAClC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,CAAC,IAAI;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;CACV,CAAC"}
1
+ {"version":3,"file":"Select.types.d.ts","sourceRoot":"","sources":["../../../src/components/Select/Select.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEnD,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,MAAM;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,cAAc,CAAC,CAAC;IACxB,wCAAwC;IACxC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3B,iCAAiC;IACjC,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACjB,4CAA4C;IAC5C,YAAY,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACxB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iDAAiD;IACjD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,gBAAgB,CAAC,CAAC,GAAG,MAAM,IAAI,cAAc,CAAC,CAAC,CAAC,CAAC;AAE7D,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,MAAM,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IACvE,4DAA4D;IAC5D,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB"}
@@ -0,0 +1,11 @@
1
+ import { SelectFieldProps } from './Select.types';
2
+ /**
3
+ * Single-select dropdown with the Logician design-system styling applied.
4
+ * The ergonomic counterpart to `Input` — pass `options`, `value` and
5
+ * `onChange` and it renders the full Select composition internally.
6
+ *
7
+ * For multi-select, grouped options or custom layouts, compose the `Select`
8
+ * primitives directly.
9
+ */
10
+ export declare function SelectField<T = string>({ options, value, defaultValue, onChange, placeholder, label, size, invalid, disabled, readOnly, required, name, width, }: SelectFieldProps<T>): import("react/jsx-runtime").JSX.Element;
11
+ //# sourceMappingURL=SelectField.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectField.d.ts","sourceRoot":"","sources":["../../../src/components/Select/SelectField.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAAC,CAAC,GAAG,MAAM,EAAE,EACtC,OAAO,EACP,KAAK,EACL,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,KAAK,EACL,IAAW,EACX,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,IAAI,EACJ,KAAc,GACf,EAAE,gBAAgB,CAAC,CAAC,CAAC,2CA0DrB"}
@@ -0,0 +1,32 @@
1
+ "use client";
2
+ 'use strict';
3
+
4
+ var jsxRuntime = require('react/jsx-runtime');
5
+ var React = require('react');
6
+ var react = require('@chakra-ui/react');
7
+ var Select = require('./Select.js');
8
+
9
+ /**
10
+ * Single-select dropdown with the Logician design-system styling applied.
11
+ * The ergonomic counterpart to `Input` — pass `options`, `value` and
12
+ * `onChange` and it renders the full Select composition internally.
13
+ *
14
+ * For multi-select, grouped options or custom layouts, compose the `Select`
15
+ * primitives directly.
16
+ */
17
+ function SelectField({ options, value, defaultValue, onChange, placeholder, label, size = 'md', invalid, disabled, readOnly, required, name, width = 'full', }) {
18
+ const collection = React.useMemo(() => react.createListCollection({
19
+ items: options,
20
+ itemToValue: (item) => String(item.value),
21
+ itemToString: (item) => item.label,
22
+ isItemDisabled: (item) => Boolean(item.disabled),
23
+ }), [options]);
24
+ const toKeys = (val) => val === null || val === undefined ? [] : [String(val)];
25
+ return (jsxRuntime.jsxs(Select.Select.Root, { collection: collection, size: size, width: width, invalid: invalid, disabled: disabled, readOnly: readOnly, required: required, name: name, value: value === undefined ? undefined : toKeys(value), defaultValue: defaultValue === undefined ? undefined : toKeys(defaultValue), onValueChange: (details) => {
26
+ const selected = details.items[0];
27
+ onChange?.(selected ? selected.value : null);
28
+ }, children: [jsxRuntime.jsx(Select.Select.HiddenSelect, {}), label != null && jsxRuntime.jsx(Select.Select.Label, { children: label }), jsxRuntime.jsxs(Select.Select.Control, { children: [jsxRuntime.jsx(Select.Select.Trigger, { children: jsxRuntime.jsx(Select.Select.ValueText, { placeholder: placeholder }) }), jsxRuntime.jsx(Select.Select.IndicatorGroup, { children: jsxRuntime.jsx(Select.Select.Indicator, {}) })] }), jsxRuntime.jsx(react.Portal, { children: jsxRuntime.jsx(Select.Select.Positioner, { children: jsxRuntime.jsx(Select.Select.Content, { children: options.map((option) => (jsxRuntime.jsxs(Select.Select.Item, { item: option, children: [jsxRuntime.jsx(Select.Select.ItemText, { children: option.label }), jsxRuntime.jsx(Select.Select.ItemIndicator, {})] }, String(option.value)))) }) }) })] }));
29
+ }
30
+
31
+ exports.SelectField = SelectField;
32
+ //# sourceMappingURL=SelectField.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectField.js","sources":["../../../src/components/Select/SelectField.tsx"],"sourcesContent":[null],"names":["useMemo","createListCollection","_jsxs","Select","_jsx","Portal"],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ "use client";
2
+ import { jsxs, jsx } from 'react/jsx-runtime';
3
+ import { useMemo } from 'react';
4
+ import { createListCollection, Portal } from '@chakra-ui/react';
5
+ import { Select } from './Select.mjs';
6
+
7
+ /**
8
+ * Single-select dropdown with the Logician design-system styling applied.
9
+ * The ergonomic counterpart to `Input` — pass `options`, `value` and
10
+ * `onChange` and it renders the full Select composition internally.
11
+ *
12
+ * For multi-select, grouped options or custom layouts, compose the `Select`
13
+ * primitives directly.
14
+ */
15
+ function SelectField({ options, value, defaultValue, onChange, placeholder, label, size = 'md', invalid, disabled, readOnly, required, name, width = 'full', }) {
16
+ const collection = useMemo(() => createListCollection({
17
+ items: options,
18
+ itemToValue: (item) => String(item.value),
19
+ itemToString: (item) => item.label,
20
+ isItemDisabled: (item) => Boolean(item.disabled),
21
+ }), [options]);
22
+ const toKeys = (val) => val === null || val === undefined ? [] : [String(val)];
23
+ return (jsxs(Select.Root, { collection: collection, size: size, width: width, invalid: invalid, disabled: disabled, readOnly: readOnly, required: required, name: name, value: value === undefined ? undefined : toKeys(value), defaultValue: defaultValue === undefined ? undefined : toKeys(defaultValue), onValueChange: (details) => {
24
+ const selected = details.items[0];
25
+ onChange?.(selected ? selected.value : null);
26
+ }, children: [jsx(Select.HiddenSelect, {}), label != null && jsx(Select.Label, { children: label }), jsxs(Select.Control, { children: [jsx(Select.Trigger, { children: jsx(Select.ValueText, { placeholder: placeholder }) }), jsx(Select.IndicatorGroup, { children: jsx(Select.Indicator, {}) })] }), jsx(Portal, { children: jsx(Select.Positioner, { children: jsx(Select.Content, { children: options.map((option) => (jsxs(Select.Item, { item: option, children: [jsx(Select.ItemText, { children: option.label }), jsx(Select.ItemIndicator, {})] }, String(option.value)))) }) }) })] }));
27
+ }
28
+
29
+ export { SelectField };
30
+ //# sourceMappingURL=SelectField.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectField.mjs","sources":["../../../src/components/Select/SelectField.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":"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"}
@@ -1,3 +1,7 @@
1
+ export { Combobox } from './Combobox';
2
+ export { ComboboxField } from './ComboboxField';
1
3
  export { Select } from './Select';
2
4
  export type * from './Select.types';
5
+ export { SelectField } from './SelectField';
6
+ export { createListCollection, useFilter, useListCollection, } from '@chakra-ui/react';
3
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,mBAAmB,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Select/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,mBAAmB,gBAAgB,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EACL,oBAAoB,EACpB,SAAS,EACT,iBAAiB,GAClB,MAAM,kBAAkB,CAAC"}
package/dist/index.js CHANGED
@@ -78,7 +78,11 @@ var SeeMoreButton = require('./components/SeeMoreButton/SeeMoreButton.js');
78
78
  var SegmentedControl = require('./components/SegmentedControl/SegmentedControl.js');
79
79
  var ProgressSegment = require('./components/SegmentedProgressBar/ProgressSegment.js');
80
80
  var SegmentedProgressBar = require('./components/SegmentedProgressBar/SegmentedProgressBar.js');
81
+ var Combobox = require('./components/Select/Combobox.js');
82
+ var ComboboxField = require('./components/Select/ComboboxField.js');
81
83
  var Select = require('./components/Select/Select.js');
84
+ var SelectField = require('./components/Select/SelectField.js');
85
+ var react = require('@chakra-ui/react');
82
86
  var Slider = require('./components/Slider/Slider.js');
83
87
  var SliderControl = require('./components/Slider/SliderControl/SliderControl.js');
84
88
  var SliderFilledTrack = require('./components/Slider/SliderFilledTrack/SliderFilledTrack.js');
@@ -101,7 +105,6 @@ var TabList = require('./components/Tabs/TabList/TabList.js');
101
105
  var TabPanel = require('./components/Tabs/TabPanel.js');
102
106
  var TabPanels = require('./components/Tabs/TabPanels.js');
103
107
  var Tabs = require('./components/Tabs/Tabs.js');
104
- var react = require('@chakra-ui/react');
105
108
  var Tag = require('./components/Tag/Tag.js');
106
109
  var Tag_styles = require('./components/Tag/Tag.styles.js');
107
110
  var TagCloseButton = require('./components/Tag/TagCloseButton/TagCloseButton.js');
@@ -219,7 +222,30 @@ exports.SeeMoreButton = SeeMoreButton.SeeMoreButton;
219
222
  exports.SegmentedControl = SegmentedControl.SegmentedControl;
220
223
  exports.ProgressSegment = ProgressSegment.ProgressSegment;
221
224
  exports.SegmentedProgressBar = SegmentedProgressBar.SegmentedProgressBar;
225
+ exports.Combobox = Combobox.Combobox;
226
+ exports.ComboboxField = ComboboxField.ComboboxField;
222
227
  exports.Select = Select.Select;
228
+ exports.SelectField = SelectField.SelectField;
229
+ Object.defineProperty(exports, "TagLeftIcon", {
230
+ enumerable: true,
231
+ get: function () { return react.Icon; }
232
+ });
233
+ Object.defineProperty(exports, "TagRightIcon", {
234
+ enumerable: true,
235
+ get: function () { return react.Icon; }
236
+ });
237
+ Object.defineProperty(exports, "createListCollection", {
238
+ enumerable: true,
239
+ get: function () { return react.createListCollection; }
240
+ });
241
+ Object.defineProperty(exports, "useFilter", {
242
+ enumerable: true,
243
+ get: function () { return react.useFilter; }
244
+ });
245
+ Object.defineProperty(exports, "useListCollection", {
246
+ enumerable: true,
247
+ get: function () { return react.useListCollection; }
248
+ });
223
249
  exports.Slider = Slider.Slider;
224
250
  exports.SliderControl = SliderControl.SliderControl;
225
251
  exports.SliderFilledTrack = SliderFilledTrack.SliderFilledTrack;
@@ -242,14 +268,6 @@ exports.TabList = TabList.TabList;
242
268
  exports.TabPanel = TabPanel.TabPanel;
243
269
  exports.TabPanels = TabPanels.TabPanels;
244
270
  exports.Tabs = Tabs.Tabs;
245
- Object.defineProperty(exports, "TagLeftIcon", {
246
- enumerable: true,
247
- get: function () { return react.Icon; }
248
- });
249
- Object.defineProperty(exports, "TagRightIcon", {
250
- enumerable: true,
251
- get: function () { return react.Icon; }
252
- });
253
271
  exports.Tag = Tag.Tag;
254
272
  exports.getTagStyles = Tag_styles.getTagStyles;
255
273
  exports.tagColorPaletteStyles = Tag_styles.tagColorPaletteStyles;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index.mjs CHANGED
@@ -76,7 +76,11 @@ export { SeeMoreButton } from './components/SeeMoreButton/SeeMoreButton.mjs';
76
76
  export { SegmentedControl } from './components/SegmentedControl/SegmentedControl.mjs';
77
77
  export { ProgressSegment } from './components/SegmentedProgressBar/ProgressSegment.mjs';
78
78
  export { SegmentedProgressBar } from './components/SegmentedProgressBar/SegmentedProgressBar.mjs';
79
+ export { Combobox } from './components/Select/Combobox.mjs';
80
+ export { ComboboxField } from './components/Select/ComboboxField.mjs';
79
81
  export { Select } from './components/Select/Select.mjs';
82
+ export { SelectField } from './components/Select/SelectField.mjs';
83
+ export { Icon as TagLeftIcon, Icon as TagRightIcon, createListCollection, useFilter, useListCollection } from '@chakra-ui/react';
80
84
  export { Slider } from './components/Slider/Slider.mjs';
81
85
  export { SliderControl } from './components/Slider/SliderControl/SliderControl.mjs';
82
86
  export { SliderFilledTrack } from './components/Slider/SliderFilledTrack/SliderFilledTrack.mjs';
@@ -99,7 +103,6 @@ export { TabList } from './components/Tabs/TabList/TabList.mjs';
99
103
  export { TabPanel } from './components/Tabs/TabPanel.mjs';
100
104
  export { TabPanels } from './components/Tabs/TabPanels.mjs';
101
105
  export { Tabs } from './components/Tabs/Tabs.mjs';
102
- export { Icon as TagLeftIcon, Icon as TagRightIcon } from '@chakra-ui/react';
103
106
  export { Tag } from './components/Tag/Tag.mjs';
104
107
  export { getTagStyles, tagColorPaletteStyles, tagColorPalettes, tagVariants } from './components/Tag/Tag.styles.mjs';
105
108
  export { TagCloseButton } from './components/Tag/TagCloseButton/TagCloseButton.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mindlogic-ai/logician-ui",
3
- "version": "3.0.0-alpha.34",
3
+ "version": "3.0.0-alpha.35",
4
4
  "description": "A comprehensive React design system built on Chakra UI",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -60,7 +60,6 @@
60
60
  },
61
61
  "dependencies": {
62
62
  "@mdxeditor/editor": "^3.45.1",
63
- "@tanstack/react-virtual": "^3.0.0",
64
63
  "@types/lodash": "^4.17.20",
65
64
  "chakra-dayzed-datepicker": "3.0.0",
66
65
  "date-fns": "^2.30.0",
@@ -70,7 +69,6 @@
70
69
  "polished": "^4.3.0",
71
70
  "react-markdown": "^10.1.0",
72
71
  "react-pin-input": "^1.3.0",
73
- "react-select": "^5.8.0",
74
72
  "react-spinners": "^0.17.0",
75
73
  "recharts": "^3.1.2",
76
74
  "rehype-katex": "^7.0.1",