@peculiar/react-components 0.0.2-alpha.263 → 0.0.2-alpha.268

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 (111) hide show
  1. package/dist/cjs/Autocomplete/autocomplete.js +239 -0
  2. package/dist/cjs/Autocomplete/autocomplete.js.map +1 -0
  3. package/dist/cjs/Autocomplete/index.js +6 -0
  4. package/dist/cjs/Autocomplete/index.js.map +1 -0
  5. package/dist/cjs/Chip/chip.js +41 -12
  6. package/dist/cjs/Chip/chip.js.map +1 -1
  7. package/dist/cjs/Fab/fab.js +2 -0
  8. package/dist/cjs/Fab/fab.js.map +1 -1
  9. package/dist/cjs/IconButton/icon_button.js +3 -0
  10. package/dist/cjs/IconButton/icon_button.js.map +1 -1
  11. package/dist/cjs/Modal/modal.js +3 -3
  12. package/dist/cjs/Modal/modal.js.map +1 -1
  13. package/dist/cjs/Popover/popover.js +23 -2
  14. package/dist/cjs/Popover/popover.js.map +1 -1
  15. package/dist/cjs/Popper/popper.js +23 -2
  16. package/dist/cjs/Popper/popper.js.map +1 -1
  17. package/dist/cjs/Tabs/tabs.js.map +1 -1
  18. package/dist/cjs/hooks/index.js +5 -1
  19. package/dist/cjs/hooks/index.js.map +1 -1
  20. package/dist/cjs/hooks/use_autocomplete.js +344 -0
  21. package/dist/cjs/hooks/use_autocomplete.js.map +1 -0
  22. package/dist/cjs/hooks/use_event_callback.js +44 -0
  23. package/dist/cjs/hooks/use_event_callback.js.map +1 -0
  24. package/dist/cjs/index.js +1 -1
  25. package/dist/esm/Autocomplete/autocomplete.js +232 -0
  26. package/dist/esm/Autocomplete/autocomplete.js.map +1 -0
  27. package/dist/esm/Autocomplete/index.js +2 -0
  28. package/dist/esm/Autocomplete/index.js.map +1 -0
  29. package/dist/esm/Chip/chip.js +41 -12
  30. package/dist/esm/Chip/chip.js.map +1 -1
  31. package/dist/esm/Fab/fab.js +2 -0
  32. package/dist/esm/Fab/fab.js.map +1 -1
  33. package/dist/esm/IconButton/icon_button.js +3 -0
  34. package/dist/esm/IconButton/icon_button.js.map +1 -1
  35. package/dist/esm/Modal/modal.js +3 -3
  36. package/dist/esm/Modal/modal.js.map +1 -1
  37. package/dist/esm/Popover/popover.js +23 -2
  38. package/dist/esm/Popover/popover.js.map +1 -1
  39. package/dist/esm/Popper/popper.js +23 -2
  40. package/dist/esm/Popper/popper.js.map +1 -1
  41. package/dist/esm/Tabs/tabs.js.map +1 -1
  42. package/dist/esm/hooks/index.js +2 -0
  43. package/dist/esm/hooks/index.js.map +1 -1
  44. package/dist/esm/hooks/use_autocomplete.js +337 -0
  45. package/dist/esm/hooks/use_autocomplete.js.map +1 -0
  46. package/dist/esm/hooks/use_event_callback.js +21 -0
  47. package/dist/esm/hooks/use_event_callback.js.map +1 -0
  48. package/dist/esm/index.js +1 -1
  49. package/dist/esnext/Autocomplete/autocomplete.js +236 -0
  50. package/dist/esnext/Autocomplete/autocomplete.js.map +1 -0
  51. package/dist/esnext/Autocomplete/index.js +2 -0
  52. package/dist/esnext/Autocomplete/index.js.map +1 -0
  53. package/dist/esnext/Chip/chip.js +54 -5
  54. package/dist/esnext/Chip/chip.js.map +1 -1
  55. package/dist/esnext/Fab/fab.js +2 -0
  56. package/dist/esnext/Fab/fab.js.map +1 -1
  57. package/dist/esnext/IconButton/icon_button.js +3 -0
  58. package/dist/esnext/IconButton/icon_button.js.map +1 -1
  59. package/dist/esnext/Modal/modal.js +3 -3
  60. package/dist/esnext/Modal/modal.js.map +1 -1
  61. package/dist/esnext/Popover/popover.js +21 -2
  62. package/dist/esnext/Popover/popover.js.map +1 -1
  63. package/dist/esnext/Popper/popper.js +21 -2
  64. package/dist/esnext/Popper/popper.js.map +1 -1
  65. package/dist/esnext/Tabs/tabs.js.map +1 -1
  66. package/dist/esnext/hooks/index.js +2 -0
  67. package/dist/esnext/hooks/index.js.map +1 -1
  68. package/dist/esnext/hooks/use_autocomplete.js +332 -0
  69. package/dist/esnext/hooks/use_autocomplete.js.map +1 -0
  70. package/dist/esnext/hooks/use_event_callback.js +16 -0
  71. package/dist/esnext/hooks/use_event_callback.js.map +1 -0
  72. package/dist/esnext/index.js +1 -1
  73. package/dist/types/Autocomplete/autocomplete.d.ts +72 -0
  74. package/dist/types/Autocomplete/index.d.ts +1 -0
  75. package/dist/types/Chip/chip.d.ts +1 -1
  76. package/dist/types/Modal/modal.d.ts +1 -1
  77. package/dist/types/Popover/popover.d.ts +7 -3
  78. package/dist/types/Popper/popper.d.ts +6 -2
  79. package/dist/types/hooks/index.d.ts +2 -0
  80. package/dist/types/hooks/use_autocomplete.d.ts +90 -0
  81. package/dist/types/hooks/use_event_callback.d.ts +4 -0
  82. package/dist/types/index.d.ts +1 -1
  83. package/package.json +24 -24
  84. package/dist/cjs/ComboBox/combo_box.js +0 -262
  85. package/dist/cjs/ComboBox/combo_box.js.map +0 -1
  86. package/dist/cjs/ComboBox/index.js +0 -6
  87. package/dist/cjs/ComboBox/index.js.map +0 -1
  88. package/dist/cjs/SelectPicker/index.js +0 -6
  89. package/dist/cjs/SelectPicker/index.js.map +0 -1
  90. package/dist/cjs/SelectPicker/select_picker.js +0 -445
  91. package/dist/cjs/SelectPicker/select_picker.js.map +0 -1
  92. package/dist/esm/ComboBox/combo_box.js +0 -240
  93. package/dist/esm/ComboBox/combo_box.js.map +0 -1
  94. package/dist/esm/ComboBox/index.js +0 -2
  95. package/dist/esm/ComboBox/index.js.map +0 -1
  96. package/dist/esm/SelectPicker/index.js +0 -2
  97. package/dist/esm/SelectPicker/index.js.map +0 -1
  98. package/dist/esm/SelectPicker/select_picker.js +0 -422
  99. package/dist/esm/SelectPicker/select_picker.js.map +0 -1
  100. package/dist/esnext/ComboBox/combo_box.js +0 -214
  101. package/dist/esnext/ComboBox/combo_box.js.map +0 -1
  102. package/dist/esnext/ComboBox/index.js +0 -2
  103. package/dist/esnext/ComboBox/index.js.map +0 -1
  104. package/dist/esnext/SelectPicker/index.js +0 -2
  105. package/dist/esnext/SelectPicker/index.js.map +0 -1
  106. package/dist/esnext/SelectPicker/select_picker.js +0 -418
  107. package/dist/esnext/SelectPicker/select_picker.js.map +0 -1
  108. package/dist/types/ComboBox/combo_box.d.ts +0 -19
  109. package/dist/types/ComboBox/index.d.ts +0 -1
  110. package/dist/types/SelectPicker/index.d.ts +0 -1
  111. package/dist/types/SelectPicker/select_picker.d.ts +0 -89
@@ -5,6 +5,7 @@ import { CloseSmallIcon } from '../icons';
5
5
  const stylesBase = () => css({
6
6
  label: 'Chip',
7
7
  display: 'inline-flex',
8
+ maxWidth: '100%',
8
9
  fontFamily: 'inherit',
9
10
  outline: '0',
10
11
  boxSizing: 'border-box',
@@ -32,7 +33,7 @@ const stylesClickable = () => css({
32
33
  userSelect: 'none',
33
34
  WebkitTapHighlightColor: 'transparent',
34
35
  });
35
- const stylesVariantContained = (props) => css({
36
+ const stylesVariantContainedColorNotDefault = (props) => css({
36
37
  label: 'contained',
37
38
  backgroundColor: `var(--pv-color-${props.color})`,
38
39
  color: 'var(--pv-color-white)',
@@ -53,7 +54,27 @@ const stylesVariantContained = (props) => css({
53
54
  backgroundColor: 'var(--pv-color-gray-4)',
54
55
  }),
55
56
  });
56
- const stylesVariantOutlined = (props) => css({
57
+ const stylesVariantContainedColorDefault = (props) => css({
58
+ label: 'contained-default',
59
+ backgroundColor: 'var(--pv-color-gray-4)',
60
+ color: 'var(--pv-color-black)',
61
+ ...(typeof props.onClick === 'function' && !props.disabled && {
62
+ '&:hover': {
63
+ backgroundColor: 'var(--pv-color-gray-7)',
64
+ },
65
+ '&:focus': {
66
+ backgroundColor: 'var(--pv-color-gray-6)',
67
+ },
68
+ '&:active': {
69
+ backgroundColor: 'var(--pv-color-gray-5)',
70
+ },
71
+ }),
72
+ ...(props.disabled && {
73
+ color: 'var(--pv-color-gray-8)',
74
+ backgroundColor: 'var(--pv-color-gray-4)',
75
+ }),
76
+ });
77
+ const stylesVariantOutlinedColorNotDefault = (props) => css({
57
78
  label: 'outlined',
58
79
  backgroundColor: 'transparent',
59
80
  color: `var(--pv-color-${props.color})`,
@@ -74,6 +95,27 @@ const stylesVariantOutlined = (props) => css({
74
95
  borderColor: 'var(--pv-color-gray-4)',
75
96
  }),
76
97
  });
98
+ const stylesVariantOutlinedColorDefault = (props) => css({
99
+ label: 'outlined-default',
100
+ backgroundColor: 'transparent',
101
+ color: 'var(--pv-color-gray-10)',
102
+ borderColor: 'var(--pv-color-gray-6)',
103
+ ...(typeof props.onClick === 'function' && !props.disabled && {
104
+ '&:hover': {
105
+ backgroundColor: 'var(--pv-color-gray-3)',
106
+ },
107
+ '&:focus': {
108
+ backgroundColor: 'var(--pv-color-gray-4)',
109
+ },
110
+ '&:active': {
111
+ backgroundColor: 'var(--pv-color-gray-5)',
112
+ },
113
+ }),
114
+ ...(props.disabled && {
115
+ color: 'var(--pv-color-gray-8)',
116
+ borderColor: 'var(--pv-color-gray-4)',
117
+ }),
118
+ });
77
119
  const stylesDeleteAction = () => css({
78
120
  label: 'delete',
79
121
  width: '24px',
@@ -83,6 +125,7 @@ const stylesDeleteAction = () => css({
83
125
  margin: '0px calc(var(--pv-size-base) * -1) 0 var(--pv-size-base)',
84
126
  transition: 'opacity 200ms',
85
127
  opacity: '0.6',
128
+ flexShrink: 0,
86
129
  '&:hover': {
87
130
  opacity: '1',
88
131
  },
@@ -121,11 +164,17 @@ export const Chip = React.forwardRef((props, ref) => {
121
164
  [stylesBase()]: true,
122
165
  [stylesDisabled()]: disabled,
123
166
  [stylesClickable()]: clickable && !disabled,
124
- [stylesVariantContained(props)]: variant !== 'outlined',
125
- [stylesVariantOutlined(props)]: variant === 'outlined',
167
+ ...(color !== 'default' && {
168
+ [stylesVariantContainedColorNotDefault(props)]: variant === 'contained',
169
+ [stylesVariantOutlinedColorNotDefault(props)]: variant === 'outlined',
170
+ }),
171
+ ...(color === 'default' && {
172
+ [stylesVariantContainedColorDefault(props)]: variant === 'contained',
173
+ [stylesVariantOutlinedColorDefault(props)]: variant === 'outlined',
174
+ }),
126
175
  [className]: !!className,
127
176
  }) }),
128
- React.createElement(Typography, { variant: "b3", component: "span", color: "inherit" }, children),
177
+ React.createElement(Typography, { variant: "b3", component: "span", color: "inherit", noWrap: true }, children),
129
178
  renderDeleteAction()));
130
179
  });
131
180
  Chip.displayName = 'Chip';
@@ -1 +1 @@
1
- {"version":3,"file":"chip.js","sourceRoot":"","sources":["../../../src/Chip/chip.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chip.js","sourceRoot":"","sources":["../../../src/Chip/chip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAwC1C,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC3B,KAAK,EAAE,MAAM;IACb,OAAO,EAAE,aAAa;IACtB,QAAQ,EAAE,MAAM;IAChB,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,GAAG;IACZ,SAAS,EAAE,YAAY;IACvB,YAAY,EAAE,uBAAuB;IACrC,OAAO,EAAE,yBAAyB;IAClC,MAAM,EAAE,uBAAuB;IAC/B,eAAe,EAAE,aAAa;IAC9B,UAAU,EAAE,2EAA2E;IACvF,MAAM,EAAE,uBAAuB;IAC/B,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,uBAAuB;IAC/B,aAAa,EAAE,QAAQ;IACvB,cAAc,EAAE,QAAQ;IACxB,UAAU,EAAE,QAAQ;IACpB,UAAU,EAAE,QAAQ;IACpB,cAAc,EAAE,MAAM;CACvB,CAAC,CAAC;AAEH,MAAM,cAAc,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC/B,KAAK,EAAE,UAAU;IACjB,aAAa,EAAE,MAAM;CACtB,CAAC,CAAC;AAEH,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAChC,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,SAAS;IACjB,UAAU,EAAE,MAAM;IAClB,uBAAuB,EAAE,aAAa;CACvC,CAAC,CAAC;AAEH,MAAM,qCAAqC,GAAG,CAAC,KAAgB,EAAE,EAAE,CAAC,GAAG,CAAC;IACtE,KAAK,EAAE,WAAW;IAClB,eAAe,EAAE,kBAAkB,KAAK,CAAC,KAAK,GAAG;IACjD,KAAK,EAAE,uBAAuB;IAC9B,GAAG,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,UAAU,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI;QAC5D,SAAS,EAAE;YACT,eAAe,EAAE,kBAAkB,KAAK,CAAC,KAAK,UAAU;SACzD;QACD,SAAS,EAAE;YACT,eAAe,EAAE,kBAAkB,KAAK,CAAC,KAAK,UAAU;SACzD;QACD,UAAU,EAAE;YACV,eAAe,EAAE,kBAAkB,KAAK,CAAC,KAAK,UAAU;YACxD,SAAS,EAAE,+BAA+B;SAC3C;KACF,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI;QACpB,KAAK,EAAE,wBAAwB;QAC/B,eAAe,EAAE,wBAAwB;KAC1C,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,kCAAkC,GAAG,CAAC,KAAgB,EAAE,EAAE,CAAC,GAAG,CAAC;IACnE,KAAK,EAAE,mBAAmB;IAC1B,eAAe,EAAE,wBAAwB;IACzC,KAAK,EAAE,uBAAuB;IAC9B,GAAG,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,UAAU,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI;QAC5D,SAAS,EAAE;YACT,eAAe,EAAE,wBAAwB;SAC1C;QACD,SAAS,EAAE;YACT,eAAe,EAAE,wBAAwB;SAC1C;QACD,UAAU,EAAE;YACV,eAAe,EAAE,wBAAwB;SAC1C;KACF,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI;QACpB,KAAK,EAAE,wBAAwB;QAC/B,eAAe,EAAE,wBAAwB;KAC1C,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,oCAAoC,GAAG,CAAC,KAAgB,EAAE,EAAE,CAAC,GAAG,CAAC;IACrE,KAAK,EAAE,UAAU;IACjB,eAAe,EAAE,aAAa;IAC9B,KAAK,EAAE,kBAAkB,KAAK,CAAC,KAAK,GAAG;IACvC,WAAW,EAAE,kBAAkB,KAAK,CAAC,KAAK,UAAU;IACpD,GAAG,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,UAAU,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI;QAC5D,SAAS,EAAE;YACT,eAAe,EAAE,kBAAkB,KAAK,CAAC,KAAK,UAAU;SACzD;QACD,SAAS,EAAE;YACT,eAAe,EAAE,kBAAkB,KAAK,CAAC,KAAK,UAAU;SACzD;QACD,UAAU,EAAE;YACV,eAAe,EAAE,kBAAkB,KAAK,CAAC,KAAK,UAAU;SACzD;KACF,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI;QACpB,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,wBAAwB;KACtC,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,iCAAiC,GAAG,CAAC,KAAgB,EAAE,EAAE,CAAC,GAAG,CAAC;IAClE,KAAK,EAAE,kBAAkB;IACzB,eAAe,EAAE,aAAa;IAC9B,KAAK,EAAE,yBAAyB;IAChC,WAAW,EAAE,wBAAwB;IACrC,GAAG,CAAC,OAAO,KAAK,CAAC,OAAO,KAAK,UAAU,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI;QAC5D,SAAS,EAAE;YACT,eAAe,EAAE,wBAAwB;SAC1C;QACD,SAAS,EAAE;YACT,eAAe,EAAE,wBAAwB;SAC1C;QACD,UAAU,EAAE;YACV,eAAe,EAAE,wBAAwB;SAC1C;KACF,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,QAAQ,IAAI;QACpB,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,wBAAwB;KACtC,CAAC;CACH,CAAC,CAAC;AAEH,MAAM,kBAAkB,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IACnC,KAAK,EAAE,QAAQ;IACf,KAAK,EAAE,MAAM;IACb,MAAM,EAAE,MAAM;IACd,MAAM,EAAE,SAAS;IACjB,uBAAuB,EAAE,aAAa;IACtC,MAAM,EAAE,0DAA0D;IAClE,UAAU,EAAE,eAAe;IAC3B,OAAO,EAAE,KAAK;IACd,UAAU,EAAE,CAAC;IACb,SAAS,EAAE;QACT,OAAO,EAAE,GAAG;KACb;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAA4B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC7E,MAAM,EACJ,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,OAAO,EACP,KAAK,EACL,SAAS,EACT,OAAO,EACP,QAAQ,EACR,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IACV,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEnC,MAAM,SAAS,GAAG;QAChB,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QACtC,eAAe,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;QAC5C,QAAQ,EAAE,SAAS,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;QAChD,OAAO;KACR,CAAC;IAEF,MAAM,iBAAiB,GAAG,CAAC,KAAoC,EAAE,EAAE;QACjE,iDAAiD;QACjD,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,IAAI,QAAQ,EAAE;YACZ,QAAQ,CAAC,KAAK,CAAC,CAAC;SACjB;IACH,CAAC,CAAC;IAEF,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,IAAI,CAAC,QAAQ,EAAE;YACb,OAAO,IAAI,CAAC;SACb;QAED,MAAM,aAAa,GAAG;YACpB,aAAa,EAAE,IAAI;YACnB,SAAS,EAAE,EAAE,CAAC,kBAAkB,EAAE,CAAC;YACnC,OAAO,EAAE,iBAAiB;SAC3B,CAAC;QAEF,IAAI,UAAU,EAAE;YACd,OAAO,KAAK,CAAC,YAAY,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;SACtD;QAED,OAAO,CACL,oBAAC,cAAc,oBAAK,aAAa,EAAI,CACtC,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO,CACL,6CACM,KAAK,EACL,SAAS,IACb,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC;YACZ,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI;YACpB,CAAC,cAAc,EAAE,CAAC,EAAE,QAAQ;YAC5B,CAAC,eAAe,EAAE,CAAC,EAAE,SAAS,IAAI,CAAC,QAAQ;YAC3C,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI;gBACzB,CAAC,qCAAqC,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,KAAK,WAAW;gBACvE,CAAC,oCAAoC,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,KAAK,UAAU;aACtE,CAAC;YACF,GAAG,CAAC,KAAK,KAAK,SAAS,IAAI;gBACzB,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,KAAK,WAAW;gBACpE,CAAC,iCAAiC,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,KAAK,UAAU;aACnE,CAAC;YACF,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;SACzB,CAAC;QAEF,oBAAC,UAAU,IACT,OAAO,EAAC,IAAI,EACZ,SAAS,EAAC,MAAM,EAChB,KAAK,EAAC,SAAS,EACf,MAAM,UAEL,QAAQ,CACE;QACZ,kBAAkB,EAAE,CACjB,CACP,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;AAE1B,IAAI,CAAC,YAAY,GAAG;IAClB,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,WAAW;IACpB,KAAK,EAAE,WAAW;CACnB,CAAC"}
@@ -17,8 +17,10 @@ export const Fab = React.forwardRef((props, ref) => {
17
17
  });
18
18
  Fab.displayName = 'Fab';
19
19
  Fab.defaultProps = {
20
+ // eslint-disable-next-line react/default-props-match-prop-types
20
21
  disabled: false,
21
22
  variant: 'contained',
23
+ // eslint-disable-next-line react/default-props-match-prop-types
22
24
  color: 'primary',
23
25
  };
24
26
  //# sourceMappingURL=fab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"fab.js","sourceRoot":"","sources":["../../../src/Fab/fab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAmB,MAAM,eAAe,CAAC;AAc5D,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC3B,KAAK,EAAE,KAAK;IACZ,YAAY,EAAE,KAAK;IACnB,MAAM,EAAE,wBAAwB;IAChC,KAAK,EAAE,wBAAwB;IAC/B,OAAO,EAAE,uBAAuB;CACjC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAA8B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC9E,MAAM,EACJ,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IAEV,OAAO,CACL,oBAAC,UAAU,oBACL,KAAK,IACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC;YACZ,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI;YACpB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;SACzB,CAAC,EACF,IAAI,EAAC,OAAO,KAEX,QAAQ,CACE,CACd,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC;AAExB,GAAG,CAAC,YAAY,GAAG;IACjB,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,WAAW;IACpB,KAAK,EAAE,SAAS;CACjB,CAAC"}
1
+ {"version":3,"file":"fab.js","sourceRoot":"","sources":["../../../src/Fab/fab.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAmB,MAAM,eAAe,CAAC;AAc5D,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC3B,KAAK,EAAE,KAAK;IACZ,YAAY,EAAE,KAAK;IACnB,MAAM,EAAE,wBAAwB;IAChC,KAAK,EAAE,wBAAwB;IAC/B,OAAO,EAAE,uBAAuB;CACjC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAA8B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC9E,MAAM,EACJ,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IAEV,OAAO,CACL,oBAAC,UAAU,oBACL,KAAK,IACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC;YACZ,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI;YACpB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;SACzB,CAAC,EACF,IAAI,EAAC,OAAO,KAEX,QAAQ,CACE,CACd,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC;AAExB,GAAG,CAAC,YAAY,GAAG;IACjB,gEAAgE;IAChE,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,WAAW;IACpB,gEAAgE;IAChE,KAAK,EAAE,SAAS;CACjB,CAAC"}
@@ -18,8 +18,11 @@ export const IconButton = React.forwardRef((props, ref) => {
18
18
  });
19
19
  IconButton.displayName = 'IconButton';
20
20
  IconButton.defaultProps = {
21
+ // eslint-disable-next-line react/default-props-match-prop-types
21
22
  disabled: false,
23
+ // eslint-disable-next-line react/default-props-match-prop-types
22
24
  color: 'default',
25
+ // eslint-disable-next-line react/default-props-match-prop-types
23
26
  size: 'medium',
24
27
  };
25
28
  //# sourceMappingURL=icon_button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"icon_button.js","sourceRoot":"","sources":["../../../src/IconButton/icon_button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAe,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAWpC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC3B,kBAAkB,EAAE,wBAAwB;CAC7C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAqC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC5F,MAAM,EACJ,KAAK,EACL,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IAEV,MAAM,SAAS,GAAG,CAChB,oBAAC,MAAM,gCACO,KAAK,EACjB,QAAQ,EAAE,QAAQ,IACd,KAAK,IACT,GAAG,EAAE,GAAG,EACR,cAAc,QACd,SAAS,EAAE,EAAE,CAAC;YACZ,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI;YACpB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;SACzB,CAAC,IACF,CACH,CAAC;IAEF,IAAI,CAAC,KAAK,IAAI,QAAQ,EAAE;QACtB,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,CACL,oBAAC,OAAO,IACN,KAAK,EAAE,KAAK,EACZ,KAAK,EAAC,OAAO,EACb,IAAI,EAAC,OAAO,IAEX,SAAS,CACF,CACX,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC;AAEtC,UAAU,CAAC,YAAY,GAAG;IACxB,QAAQ,EAAE,KAAK;IACf,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,QAAQ;CACf,CAAC"}
1
+ {"version":3,"file":"icon_button.js","sourceRoot":"","sources":["../../../src/IconButton/icon_button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAe,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAWpC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC3B,kBAAkB,EAAE,wBAAwB;CAC7C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAqC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC5F,MAAM,EACJ,KAAK,EACL,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IAEV,MAAM,SAAS,GAAG,CAChB,oBAAC,MAAM,gCACO,KAAK,EACjB,QAAQ,EAAE,QAAQ,IACd,KAAK,IACT,GAAG,EAAE,GAAG,EACR,cAAc,QACd,SAAS,EAAE,EAAE,CAAC;YACZ,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI;YACpB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;SACzB,CAAC,IACF,CACH,CAAC;IAEF,IAAI,CAAC,KAAK,IAAI,QAAQ,EAAE;QACtB,OAAO,SAAS,CAAC;KAClB;IAED,OAAO,CACL,oBAAC,OAAO,IACN,KAAK,EAAE,KAAK,EACZ,KAAK,EAAC,OAAO,EACb,IAAI,EAAC,OAAO,IAEX,SAAS,CACF,CACX,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC;AAEtC,UAAU,CAAC,YAAY,GAAG;IACxB,gEAAgE;IAChE,QAAQ,EAAE,KAAK;IACf,gEAAgE;IAChE,KAAK,EAAE,SAAS;IAChB,gEAAgE;IAChE,IAAI,EAAE,QAAQ;CACf,CAAC"}
@@ -22,12 +22,12 @@ export const Modal = React.forwardRef((props, ref) => {
22
22
  if (!keepMounted && !open) {
23
23
  return null;
24
24
  }
25
- const handleBackdropClick = () => {
25
+ const handleBackdropClick = (event) => {
26
26
  if (disableBackdropClick) {
27
27
  return;
28
28
  }
29
29
  if (onClose) {
30
- onClose();
30
+ onClose(event);
31
31
  }
32
32
  };
33
33
  const handleKeyDown = (event) => {
@@ -39,7 +39,7 @@ export const Modal = React.forwardRef((props, ref) => {
39
39
  }
40
40
  event.stopPropagation();
41
41
  if (onClose) {
42
- onClose();
42
+ onClose(event);
43
43
  }
44
44
  };
45
45
  return (React.createElement(Portal, null,
@@ -1 +1 @@
1
- {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../../src/Modal/modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAiB,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAsDpC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC3B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,OAAO;IACjB,MAAM,EAAE,IAAI;IACZ,GAAG,EAAE,CAAC;IACN,MAAM,EAAE,CAAC;IACT,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;CACR,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC7B,KAAK,EAAE,QAAQ;IACf,UAAU,EAAE,QAAQ;CACrB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAA6B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IAC/E,MAAM,EACJ,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EAChB,OAAO,EACP,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IACV,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEjD,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE;QACzB,OAAO,IAAI,CAAC;KACb;IAED,MAAM,mBAAmB,GAAG,GAAG,EAAE;QAC/B,IAAI,oBAAoB,EAAE;YACxB,OAAO;SACR;QAED,IAAI,OAAO,EAAE;YACX,OAAO,EAAE,CAAC;SACX;IACH,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,KAA0C,EAAE,EAAE;QACnE,IAAI,oBAAoB,EAAE;YACxB,OAAO;SACR;QAED,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;YAC1B,OAAO;SACR;QAED,KAAK,CAAC,eAAe,EAAE,CAAC;QAExB,IAAI,OAAO,EAAE;YACX,OAAO,EAAE,CAAC;SACX;IACH,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,MAAM;QACL,6CACM,KAAK,IACT,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC;gBACZ,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI;gBACpB,CAAC,YAAY,EAAE,CAAC,EAAE,CAAC,IAAI,IAAI,MAAM;gBACjC,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;aACzB,CAAC,EACF,IAAI,EAAC,cAAc,iBACN,CAAC,IAAI,EAClB,SAAS,EAAE,aAAa;YAExB,oBAAC,QAAQ,oBACH,aAAa,IACjB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,EAC/B,QAAQ,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAC/B,kBAAkB,EAAE,kBAAkB,IACtC;YACF,oBAAC,SAAS,IACR,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EACxC,gBAAgB,EAAE,gBAAgB,IAEjC,QAAQ,CACC,CACR,CACC,CACV,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC;AAE5B,KAAK,CAAC,YAAY,GAAG;IACnB,kBAAkB,EAAE,GAAG;IACvB,oBAAoB,EAAE,KAAK;IAC3B,oBAAoB,EAAE,KAAK;IAC3B,WAAW,EAAE,KAAK;IAClB,mBAAmB,EAAE,KAAK;CAC3B,CAAC"}
1
+ {"version":3,"file":"modal.js","sourceRoot":"","sources":["../../../src/Modal/modal.tsx"],"names":[],"mappings":"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"}
@@ -14,9 +14,27 @@ const stylesBase = () => css({
14
14
  boxShadow: 'var(--pv-shadow-light-low)',
15
15
  });
16
16
  export const Popover = React.forwardRef((props, ref) => {
17
- const { open, children, anchorEl, placement, onClose, className, modalProps, ...other } = props;
17
+ const { open, children, anchorEl, placement, onClose, className, modalProps, allowUseSameWidth, ...other } = props;
18
18
  const [popperElement, setPopperElement] = React.useState(null);
19
- const { styles, attributes } = usePopper(anchorEl, popperElement, { placement });
19
+ const sameWidthModifier = React.useMemo(() => ({
20
+ name: 'sameWidth',
21
+ enabled: allowUseSameWidth,
22
+ phase: 'beforeWrite',
23
+ requires: ['computeStyles'],
24
+ fn: ({ state }) => {
25
+ // eslint-disable-next-line no-param-reassign
26
+ state.styles.popper.width = `${state.rects.reference.width}px`;
27
+ },
28
+ effect: ({ state }) => {
29
+ // @ts-ignore
30
+ // eslint-disable-next-line no-param-reassign
31
+ state.elements.popper.style.width = `${state.elements.reference.offsetWidth}px`;
32
+ },
33
+ }), []);
34
+ const { styles, attributes } = usePopper(anchorEl, popperElement, {
35
+ placement,
36
+ modifiers: [sameWidthModifier],
37
+ });
20
38
  return (React.createElement(Modal, Object.assign({}, modalProps, { ref: ref, open: open, onClose: onClose, backdropProps: {
21
39
  invisible: true,
22
40
  } }),
@@ -29,5 +47,6 @@ export const Popover = React.forwardRef((props, ref) => {
29
47
  Popover.displayName = 'Popover';
30
48
  Popover.defaultProps = {
31
49
  placement: 'bottom-end',
50
+ allowUseSameWidth: false,
32
51
  };
33
52
  //# sourceMappingURL=popover.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"popover.js","sourceRoot":"","sources":["../../../src/Popover/popover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,KAAK,EAAc,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AA+BpC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC3B,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,mBAAmB;IAC7B,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,mBAAmB;IAC9B,SAAS,EAAE,MAAM;IACjB,SAAS,EAAE,4BAA4B;CACxC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAA+B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACnF,MAAM,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,SAAS,EACT,UAAU,EACV,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IAEV,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CACtC,QAAQ,EACR,aAAa,EACb,EAAE,SAAS,EAAE,CACd,CAAC;IAEF,OAAO,CACL,oBAAC,KAAK,oBACA,UAAU,IACd,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE;YACb,SAAS,EAAE,IAAI;SAChB;QAED,oBAAC,IAAI,IACH,EAAE,EAAE,IAAI,EACR,GAAG,EAAE,gBAAgB;YAErB,oBAAC,GAAG,oBACE,KAAK,IACT,YAAY,EAAE,CAAC,EACf,UAAU,EAAC,OAAO,EAClB,QAAQ,EAAE,CAAC,CAAC,EACZ,KAAK,EAAE,MAAM,CAAC,MAAM,IAChB,UAAU,CAAC,MAAM,IACrB,SAAS,EAAE,EAAE,CAAC;oBACZ,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI;oBACpB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;iBACzB,CAAC,KAED,QAAQ,CACL,CACD,CACD,CACT,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;AAEhC,OAAO,CAAC,YAAY,GAAG;IACrB,SAAS,EAAE,YAAY;CACxB,CAAC"}
1
+ {"version":3,"file":"popover.js","sourceRoot":"","sources":["../../../src/Popover/popover.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAyB,MAAM,cAAc,CAAC;AAChE,OAAO,EAAE,KAAK,EAAc,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAmCpC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC3B,KAAK,EAAE,SAAS;IAChB,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE,mBAAmB;IAC7B,QAAQ,EAAE,MAAM;IAChB,SAAS,EAAE,mBAAmB;IAC9B,SAAS,EAAE,MAAM;IACjB,SAAS,EAAE,4BAA4B;CACxC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAA+B,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACnF,MAAM,EACJ,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,OAAO,EACP,SAAS,EACT,UAAU,EACV,iBAAiB,EACjB,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IAEV,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,iBAAiB,GAA0B,KAAK,CAAC,OAAO,CAC5D,GAAG,EAAE,CAAC,CAAC;QACL,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,iBAAiB;QAC1B,KAAK,EAAE,aAAa;QACpB,QAAQ,EAAE,CAAC,eAAe,CAAC;QAC3B,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAChB,6CAA6C;YAC7C,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;QACjE,CAAC;QACD,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YACpB,aAAa;YACb,6CAA6C;YAC7C,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,IAAI,CAAC;QAClF,CAAC;KACF,CAAC,EACF,EAAE,CACH,CAAC;IACF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CACtC,QAAQ,EACR,aAAa,EACb;QACE,SAAS;QACT,SAAS,EAAE,CAAC,iBAAiB,CAAC;KAC/B,CACF,CAAC;IAEF,OAAO,CACL,oBAAC,KAAK,oBACA,UAAU,IACd,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE;YACb,SAAS,EAAE,IAAI;SAChB;QAED,oBAAC,IAAI,IACH,EAAE,EAAE,IAAI,EACR,GAAG,EAAE,gBAAgB;YAErB,oBAAC,GAAG,oBACE,KAAK,IACT,YAAY,EAAE,CAAC,EACf,UAAU,EAAC,OAAO,EAClB,QAAQ,EAAE,CAAC,CAAC,EACZ,KAAK,EAAE,MAAM,CAAC,MAAM,IAChB,UAAU,CAAC,MAAM,IACrB,SAAS,EAAE,EAAE,CAAC;oBACZ,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI;oBACpB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;iBACzB,CAAC,KAED,QAAQ,CACL,CACD,CACD,CACT,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;AAEhC,OAAO,CAAC,YAAY,GAAG;IACrB,SAAS,EAAE,YAAY;IACvB,iBAAiB,EAAE,KAAK;CACzB,CAAC"}
@@ -2,9 +2,27 @@ import React from 'react';
2
2
  import { usePopper } from 'react-popper';
3
3
  import { Portal } from '../Portal';
4
4
  export const Popper = (props) => {
5
- const { children, anchorEl, placement, open, disablePortal, ...other } = props;
5
+ const { children, anchorEl, placement, open, disablePortal, allowUseSameWidth, ...other } = props;
6
6
  const [popperElement, setPopperElement] = React.useState(null);
7
- const { styles, attributes } = usePopper(anchorEl, popperElement, { placement });
7
+ const sameWidthModifier = React.useMemo(() => ({
8
+ name: 'sameWidth',
9
+ enabled: allowUseSameWidth,
10
+ phase: 'beforeWrite',
11
+ requires: ['computeStyles'],
12
+ fn: ({ state }) => {
13
+ // eslint-disable-next-line no-param-reassign
14
+ state.styles.popper.width = `${state.rects.reference.width}px`;
15
+ },
16
+ effect: ({ state }) => {
17
+ // @ts-ignore
18
+ // eslint-disable-next-line no-param-reassign
19
+ state.elements.popper.style.width = `${state.elements.reference.offsetWidth}px`;
20
+ },
21
+ }), []);
22
+ const { styles, attributes } = usePopper(anchorEl, popperElement, {
23
+ placement,
24
+ modifiers: [sameWidthModifier],
25
+ });
8
26
  const tooltip = (React.createElement("div", Object.assign({}, other, { ref: setPopperElement, style: styles.popper, role: "tooltip" }, attributes.popper), children));
9
27
  const render = () => {
10
28
  if (!disablePortal) {
@@ -17,5 +35,6 @@ export const Popper = (props) => {
17
35
  Popper.displayName = 'Popper';
18
36
  Popper.defaultProps = {
19
37
  placement: 'bottom',
38
+ allowUseSameWidth: false,
20
39
  };
21
40
  //# sourceMappingURL=popper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"popper.js","sourceRoot":"","sources":["../../../src/Popper/popper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AA2BnC,MAAM,CAAC,MAAM,MAAM,GAA0B,CAAC,KAAK,EAAE,EAAE;IACrD,MAAM,EACJ,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,aAAa,EACb,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IACV,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CACtC,QAAQ,EACR,aAAa,EACb,EAAE,SAAS,EAAE,CACd,CAAC;IAEF,MAAM,OAAO,GAAG,CACd,6CACM,KAAK,IACT,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EACpB,IAAI,EAAC,SAAS,IACV,UAAU,CAAC,MAAM,GAEpB,QAAQ,CACL,CACP,CAAC;IAEF,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO,CACL,oBAAC,MAAM,QACJ,OAAO,CACD,CACV,CAAC;SACH;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,OAAO,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC;AAE9B,MAAM,CAAC,YAAY,GAAG;IACpB,SAAS,EAAE,QAAQ;CACpB,CAAC"}
1
+ {"version":3,"file":"popper.js","sourceRoot":"","sources":["../../../src/Popper/popper.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,SAAS,EAA6C,MAAM,cAAc,CAAC;AACpF,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AA+BnC,MAAM,CAAC,MAAM,MAAM,GAA0B,CAAC,KAAK,EAAE,EAAE;IACrD,MAAM,EACJ,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,IAAI,EACJ,aAAa,EACb,iBAAiB,EACjB,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IACV,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/D,MAAM,iBAAiB,GAA0B,KAAK,CAAC,OAAO,CAC5D,GAAG,EAAE,CAAC,CAAC;QACL,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,iBAAiB;QAC1B,KAAK,EAAE,aAAa;QACpB,QAAQ,EAAE,CAAC,eAAe,CAAC;QAC3B,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YAChB,6CAA6C;YAC7C,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,IAAI,CAAC;QACjE,CAAC;QACD,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;YACpB,aAAa;YACb,6CAA6C;YAC7C,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,IAAI,CAAC;QAClF,CAAC;KACF,CAAC,EACF,EAAE,CACH,CAAC;IACF,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,SAAS,CACtC,QAAQ,EACR,aAAa,EACb;QACE,SAAS;QACT,SAAS,EAAE,CAAC,iBAAiB,CAAC;KAC/B,CACF,CAAC;IAEF,MAAM,OAAO,GAAG,CACd,6CACM,KAAK,IACT,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EACpB,IAAI,EAAC,SAAS,IACV,UAAU,CAAC,MAAM,GAEpB,QAAQ,CACL,CACP,CAAC;IAEF,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,IAAI,CAAC,aAAa,EAAE;YAClB,OAAO,CACL,oBAAC,MAAM,QACJ,OAAO,CACD,CACV,CAAC;SACH;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IAEF,OAAO,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAC;AAE9B,MAAM,CAAC,YAAY,GAAG;IACpB,SAAS,EAAE,QAAQ;IACnB,iBAAiB,EAAE,KAAK;CACzB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/Tabs/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAwBpC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC3B,KAAK,EAAE,MAAM;IACb,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,MAAM;CAClB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAgC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACjF,MAAM,EACJ,QAAQ,EAAE,YAAY,EACtB,SAAS,EACT,QAAQ,EACR,KAAK,EACL,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IAEV,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE;QAC1D,IAAI,CAAC,KAAK,CAAC,cAAc,CAAa,KAAK,CAAC,EAAE;YAC5C,OAAO,IAAI,CAAC;SACb;QAED,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,KAAK,EAAE;YACpC,OAAO,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;YAEzF,OAAO,IAAI,CAAC;SACb;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,UAAU,KAAK,KAAK,CAAC;QAEtC,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;YAC/B,aAAa;YACb,QAAQ;YACR,QAAQ;SACT,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,6CACM,KAAK,IACT,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,SAAS,EACd,SAAS,EAAE,EAAE,CAAC;YACZ,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI;YACpB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;SACzB,CAAC,KAED,QAAQ,CACL,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../src/Tabs/tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAwBpC,MAAM,UAAU,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC;IAC3B,KAAK,EAAE,MAAM;IACb,UAAU,EAAE,QAAQ;IACpB,SAAS,EAAE,MAAM;CAClB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAgC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;IACjF,MAAM,EACJ,QAAQ,EAAE,YAAY,EACtB,SAAS,EACT,QAAQ,EACR,KAAK,EACL,GAAG,KAAK,EACT,GAAG,KAAK,CAAC;IAEV,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CACjC,YAAY,EACZ,CAAC,KAAmD,EAAE,EAAE;QACtD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAa,KAAK,CAAC,EAAE;YAC5C,OAAO,IAAI,CAAC;SACb;QAED,IAAI,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,KAAK,EAAE;YACpC,OAAO,CAAC,KAAK,CAAC,yEAAyE,CAAC,CAAC;YAEzF,OAAO,IAAI,CAAC;SACb;QAED,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,UAAU,KAAK,KAAK,CAAC;QAEtC,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;YAC/B,aAAa;YACb,QAAQ;YACR,QAAQ;SACT,CAAC,CAAC;IACL,CAAC,CACF,CAAC;IAEF,OAAO,CACL,6CACM,KAAK,IACT,GAAG,EAAE,GAAG,EACR,IAAI,EAAC,SAAS,EACd,SAAS,EAAE,EAAE,CAAC;YACZ,CAAC,UAAU,EAAE,CAAC,EAAE,IAAI;YACpB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,SAAS;SACzB,CAAC,KAED,QAAQ,CACL,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -5,4 +5,6 @@ export { useControllableState } from './use_controllable';
5
5
  export { useId } from './use_id';
6
6
  export { useImage } from './use_image';
7
7
  export { useWindowEventListener } from './use_window_event_listener';
8
+ export { useAutocomplete, } from './use_autocomplete';
9
+ export { useEventCallback } from './use_event_callback';
8
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAuB,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAA6B,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,YAAY,EAAuB,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAA6B,MAAM,oBAAoB,CAAC;AACrF,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EACL,eAAe,GAKhB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,332 @@
1
+ import React from 'react';
2
+ import { useId } from './use_id';
3
+ import { useControllableState } from './use_controllable';
4
+ import { useEventCallback } from './use_event_callback';
5
+ /**
6
+ *
7
+ */
8
+ const defaultFilterOptions = (options, value, getOptionLabel) => {
9
+ if (!options || !options.length) {
10
+ return [];
11
+ }
12
+ return options.filter((option) => {
13
+ const labelValue = getOptionLabel(option).trim().toLowerCase();
14
+ const searchValue = value.trim().toLowerCase();
15
+ return labelValue.includes(searchValue);
16
+ });
17
+ };
18
+ export function useAutocomplete(props) {
19
+ const { id: idProp, options, defaultValue = props.multiple ? [] : null, value: valueProp, disableCloseOnSelect = false, multiple = false, groupBy,
20
+ // @ts-ignore
21
+ getOptionLabel = (option) => option.label ?? option, filterOptions = defaultFilterOptions, onOpen, onClose, onInputChange, onChange, } = props;
22
+ const id = useId(idProp);
23
+ const anchorEl = React.useRef(null);
24
+ const listboxRef = React.useRef(null);
25
+ const highlightedIndexRef = React.useRef(-1);
26
+ const [popupOpen, setPopupOpen] = React.useState(false);
27
+ const [searchValue, setSearchValue] = React.useState('');
28
+ const [value, setValue] = useControllableState({
29
+ value: valueProp,
30
+ defaultValue,
31
+ });
32
+ const filteredOptions = popupOpen
33
+ ? filterOptions(options, searchValue, getOptionLabel)
34
+ : [];
35
+ const validOptionIndex = (index, direction) => {
36
+ if (!listboxRef.current || index === -1) {
37
+ return -1;
38
+ }
39
+ let nextFocus = index;
40
+ while (true) {
41
+ // Out of range
42
+ if ((direction === 'next' && nextFocus === filteredOptions.length)
43
+ || (direction === 'previous' && nextFocus === -1)) {
44
+ return -1;
45
+ }
46
+ const option = listboxRef.current.querySelector(`[data-option-index="${nextFocus}"]`);
47
+ if ((option && !option.hasAttribute('tabindex'))) {
48
+ // Move to the next element.
49
+ nextFocus += direction === 'next' ? 1 : -1;
50
+ }
51
+ else {
52
+ return nextFocus;
53
+ }
54
+ }
55
+ };
56
+ const setHighlightedIndex = useEventCallback((index, reason = 'auto') => {
57
+ highlightedIndexRef.current = index;
58
+ const listboxNode = listboxRef.current;
59
+ if (!listboxNode) {
60
+ return;
61
+ }
62
+ const prevOptionNode = listboxNode.querySelector('[role="option"][data-focused="true"]');
63
+ if (prevOptionNode) {
64
+ prevOptionNode.setAttribute('data-focused', 'false');
65
+ }
66
+ if (index === -1) {
67
+ listboxNode.scrollTop = 0;
68
+ return;
69
+ }
70
+ const option = listboxNode.querySelector(`[data-option-index="${index}"]`);
71
+ if (!option) {
72
+ return;
73
+ }
74
+ option.setAttribute('data-focused', 'true');
75
+ // Scroll active descendant into view.
76
+ // Logic copied from https://www.w3.org/TR/wai-aria-practices/examples/listbox/js/listbox.js
77
+ //
78
+ // Consider this API instead once it has a better browser support:
79
+ // .scrollIntoView({ scrollMode: 'if-needed', block: 'nearest' });
80
+ if (listboxNode.scrollHeight > listboxNode.clientHeight && reason !== 'mouse') {
81
+ const element = option;
82
+ const scrollBottom = listboxNode.clientHeight + listboxNode.scrollTop;
83
+ const elementBottom = element.offsetTop + element.offsetHeight;
84
+ if (elementBottom > scrollBottom) {
85
+ listboxNode.scrollTop = elementBottom - listboxNode.clientHeight;
86
+ }
87
+ else if (element.offsetTop - element.offsetHeight * (groupBy ? 1.3 : 0) < listboxNode.scrollTop) {
88
+ listboxNode.scrollTop = element.offsetTop - element.offsetHeight * (groupBy ? 1.3 : 0);
89
+ }
90
+ }
91
+ });
92
+ const changeHighlightedIndex = useEventCallback((diff, direction = 'next', reason = 'auto') => {
93
+ if (!popupOpen) {
94
+ return;
95
+ }
96
+ const getNextIndex = () => {
97
+ const maxIndex = filteredOptions.length - 1;
98
+ if (diff === 'reset') {
99
+ return -1;
100
+ }
101
+ if (diff === 'start') {
102
+ return 0;
103
+ }
104
+ if (diff === 'end') {
105
+ return maxIndex;
106
+ }
107
+ const newIndex = highlightedIndexRef.current + diff;
108
+ if (newIndex < 0) {
109
+ if (newIndex === -1) {
110
+ return -1;
111
+ }
112
+ if ((highlightedIndexRef.current !== -1) || Math.abs(diff) > 1) {
113
+ return 0;
114
+ }
115
+ return maxIndex;
116
+ }
117
+ if (newIndex > maxIndex) {
118
+ if (newIndex === maxIndex + 1) {
119
+ return -1;
120
+ }
121
+ if (Math.abs(diff) > 1) {
122
+ return maxIndex;
123
+ }
124
+ return 0;
125
+ }
126
+ return newIndex;
127
+ };
128
+ const nextIndex = validOptionIndex(getNextIndex(), direction);
129
+ setHighlightedIndex(nextIndex, reason);
130
+ });
131
+ const syncHighlightedIndex = React.useCallback(() => {
132
+ if (!popupOpen) {
133
+ return;
134
+ }
135
+ const valueItem = Array.isArray(value) ? value[0] : value;
136
+ if (filteredOptions.length === 0 || valueItem == null) {
137
+ changeHighlightedIndex('reset');
138
+ return;
139
+ }
140
+ if (!listboxRef.current) {
141
+ return;
142
+ }
143
+ if (valueItem != null) {
144
+ const itemIndex = filteredOptions.findIndex((o) => o === valueItem);
145
+ if (itemIndex === -1) {
146
+ changeHighlightedIndex('reset');
147
+ }
148
+ else {
149
+ setHighlightedIndex(itemIndex);
150
+ }
151
+ return;
152
+ }
153
+ // Prevent the highlighted index to leak outside the boundaries.
154
+ if (highlightedIndexRef.current >= filteredOptions.length - 1) {
155
+ setHighlightedIndex(filteredOptions.length - 1);
156
+ return;
157
+ }
158
+ setHighlightedIndex(highlightedIndexRef.current);
159
+ }, [
160
+ filteredOptions.length,
161
+ multiple ? false : value,
162
+ changeHighlightedIndex,
163
+ setHighlightedIndex,
164
+ popupOpen,
165
+ searchValue,
166
+ multiple,
167
+ ]);
168
+ const handleListboxRef = useEventCallback((node) => {
169
+ listboxRef.current = node;
170
+ if (!node) {
171
+ return;
172
+ }
173
+ syncHighlightedIndex();
174
+ });
175
+ React.useEffect(() => {
176
+ syncHighlightedIndex();
177
+ }, [syncHighlightedIndex]);
178
+ const handleOpen = (event) => {
179
+ if (popupOpen) {
180
+ return;
181
+ }
182
+ setPopupOpen(true);
183
+ if (onOpen) {
184
+ onOpen(event);
185
+ }
186
+ };
187
+ const handleClick = (event) => {
188
+ handleOpen(event);
189
+ };
190
+ const handleClose = (event) => {
191
+ if (!popupOpen) {
192
+ return;
193
+ }
194
+ setPopupOpen(false);
195
+ setSearchValue('');
196
+ if (onClose) {
197
+ onClose(event);
198
+ }
199
+ };
200
+ const selectNewValue = (event, option) => {
201
+ let newValue = option;
202
+ if (multiple) {
203
+ newValue = Array.isArray(value) ? value.slice() : [];
204
+ const itemIndex = newValue.findIndex((v) => option === v);
205
+ if (itemIndex === -1) {
206
+ newValue.push(option);
207
+ }
208
+ else {
209
+ newValue.splice(itemIndex, 1);
210
+ }
211
+ }
212
+ setValue(newValue);
213
+ if (!disableCloseOnSelect) {
214
+ handleClose(event);
215
+ }
216
+ if (onChange) {
217
+ onChange(event, newValue);
218
+ }
219
+ };
220
+ const handleInputChange = (event) => {
221
+ const { value: valueInput } = event.target;
222
+ setSearchValue(valueInput);
223
+ if (onInputChange) {
224
+ onInputChange(event, valueInput);
225
+ }
226
+ };
227
+ const handleKeyDown = (event) => {
228
+ // Wait until IME is settled.
229
+ if (event.which !== 229) {
230
+ switch (event.key) {
231
+ case 'ArrowDown':
232
+ // Prevent cursor move
233
+ event.preventDefault();
234
+ changeHighlightedIndex(1, 'next', 'keyboard');
235
+ break;
236
+ case 'ArrowUp':
237
+ // Prevent cursor move
238
+ event.preventDefault();
239
+ changeHighlightedIndex(-1, 'previous', 'keyboard');
240
+ break;
241
+ case 'Enter':
242
+ // Avoid early form validation, let the end-users continue filling the form.
243
+ event.preventDefault();
244
+ if (highlightedIndexRef.current !== -1 && popupOpen) {
245
+ const option = filteredOptions[highlightedIndexRef.current];
246
+ selectNewValue(event, option);
247
+ }
248
+ break;
249
+ default:
250
+ }
251
+ }
252
+ };
253
+ const handleOptionClick = (event) => {
254
+ const index = Number(event.currentTarget.getAttribute('data-option-index'));
255
+ const option = filteredOptions[index];
256
+ selectNewValue(event, option);
257
+ };
258
+ const handleTagDelete = (option) => (event) => {
259
+ selectNewValue(event, option);
260
+ };
261
+ let groupedOptions = filteredOptions;
262
+ if (groupBy) {
263
+ groupedOptions = filteredOptions.reduce((acc, option, index) => {
264
+ const group = groupBy(option);
265
+ if (acc.length > 0 && acc[acc.length - 1].group === group) {
266
+ acc[acc.length - 1].options.push(option);
267
+ }
268
+ else {
269
+ acc.push({
270
+ key: index,
271
+ index,
272
+ group,
273
+ options: [option],
274
+ });
275
+ }
276
+ return acc;
277
+ }, []);
278
+ }
279
+ return {
280
+ getRootProps: () => ({
281
+ ref: anchorEl,
282
+ 'aria-expanded': popupOpen,
283
+ 'aria-haspopup': 'listbox',
284
+ onClick: handleClick,
285
+ }),
286
+ getListboxProps: () => ({
287
+ ref: handleListboxRef,
288
+ role: 'listbox',
289
+ tabIndex: -1,
290
+ id: `${id}-listbox`,
291
+ }),
292
+ getInputProps: () => ({
293
+ type: 'search',
294
+ value: searchValue,
295
+ autoComplete: 'off',
296
+ autoCapitalize: 'none',
297
+ autoCorrect: 'false',
298
+ spellCheck: 'false',
299
+ onChange: handleInputChange,
300
+ }),
301
+ getOptionProps: (option, index) => {
302
+ const selected = (Array.isArray(value) ? value : [value]).some((v) => v != null && option === v);
303
+ return {
304
+ key: getOptionLabel(option),
305
+ tabIndex: -1,
306
+ role: 'option',
307
+ id: `${id}-option-${index}`,
308
+ 'data-option-index': index,
309
+ 'aria-selected': selected,
310
+ onClick: handleOptionClick,
311
+ };
312
+ },
313
+ getPopoverProps: () => ({
314
+ open: popupOpen,
315
+ anchorEl: anchorEl.current,
316
+ onClose: handleClose,
317
+ onKeyDown: handleKeyDown,
318
+ }),
319
+ getTagProps: (option, index) => ({
320
+ key: index,
321
+ 'data-tag-index': index,
322
+ tabIndex: -1,
323
+ onDelete: handleTagDelete(option),
324
+ }),
325
+ getOptionLabel,
326
+ groupedOptions,
327
+ popupOpen,
328
+ value,
329
+ id,
330
+ };
331
+ }
332
+ //# sourceMappingURL=use_autocomplete.js.map