@onesy/ui-react 1.0.198 → 1.0.200

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.
package/Button/Button.js CHANGED
@@ -274,15 +274,15 @@ const Button = props_ => {
274
274
  fab,
275
275
  chip,
276
276
  icon,
277
- focus: focus_,
277
+ focus: focusProps,
278
278
  value,
279
279
  noIconRootFontSize,
280
280
  firstLevelChildren,
281
281
  noFontSize,
282
282
  readOnly,
283
283
  disabled: disabled_,
284
- onFocus: onFocus_,
285
- onBlur: onBlur_,
284
+ onFocus: onFocusProps,
285
+ onBlur: onBlurProps,
286
286
  IconWrapperComponent = 'span',
287
287
  InteractionProps = {},
288
288
  IconWrapperProps,
@@ -297,7 +297,7 @@ const Button = props_ => {
297
297
  const {
298
298
  classes
299
299
  } = useStyle();
300
- const [focus, setFocus] = _react.default.useState(focus_ !== undefined ? focus_ : false);
300
+ const [focus, setFocus] = _react.default.useState(focusProps !== undefined ? focusProps : false);
301
301
  const refs = {
302
302
  root: _react.default.useRef(undefined),
303
303
  ids: {
@@ -416,12 +416,12 @@ const Button = props_ => {
416
416
  delete styles.label.color;
417
417
  }
418
418
  const onFocus = event => {
419
- if (focus_ === undefined && event.target === refs.root.current && !disabled) setFocus(true);
420
- if ((0, _utils.is)('function', onFocus_)) onFocus_(event);
419
+ if (focusProps === undefined && event.target === refs.root.current && !disabled) setFocus(true);
420
+ if ((0, _utils.is)('function', onFocusProps)) onFocusProps(event);
421
421
  };
422
422
  const onBlur = event_0 => {
423
- if (focus_ === undefined && !disabled) setFocus(false);
424
- if ((0, _utils.is)('function', onBlur_)) onBlur_(event_0);
423
+ if (focusProps === undefined && !disabled) setFocus(false);
424
+ if ((0, _utils.is)('function', onBlurProps)) onBlurProps(event_0);
425
425
  };
426
426
  const IconElement = selected && iconSelected || children_;
427
427
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Surface, _objectSpread(_objectSpread({
@@ -446,7 +446,7 @@ const Button = props_ => {
446
446
  onFocus: onFocus,
447
447
  onBlur: onBlur,
448
448
  Component: Component,
449
- className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Button', theme) && [`onesy-Button-root`, `onesy-Button-version-${version}`, `onesy-Button-size-${size}`, fullWidth && `onesy-Button-full-width`, start && `onesy-Button-start`, end && `onesy-Button-end`, selected && `onesy-Button-selected`, loading && `onesy-Button-loading`, focus && `onesy-Button-focus`, disabled && `onesy-Button-disabled`], className, classes.root, classes[`size_${size}`], classes[`version_${version}`], classes[`color_${color}`], elevation && !disabled && ['filled', 'tonal'].includes(version) && classes.elevation, start && classes.start, end && classes.end, fullWidth && classes.fullWidth, icon && [classes.icon, classes[`icon_size_${size}`]], fab && [classes.fab, classes[`fab_size_${size}`]], chip && [classes.chip, classes[`chip_size_${size}`]], disabled && [classes.disabled, classes[`disabled_version_${version}`]]]),
449
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Button', theme) && [`onesy-Button-root`, `onesy-Button-version-${version}`, `onesy-Button-size-${size}`, fullWidth && `onesy-Button-full-width`, start && `onesy-Button-start`, end && `onesy-Button-end`, selected && `onesy-Button-selected`, loading && `onesy-Button-loading`, focus && `onesy-Button-focus`, readOnly && `onesy-Button-readOnly`, disabled && `onesy-Button-disabled`], className, classes.root, classes[`size_${size}`], classes[`version_${version}`], classes[`color_${color}`], elevation && !disabled && ['filled', 'tonal'].includes(version) && classes.elevation, start && classes.start, end && classes.end, fullWidth && classes.fullWidth, icon && [classes.icon, classes[`icon_size_${size}`]], fab && [classes.fab, classes[`fab_size_${size}`]], chip && [classes.chip, classes[`chip_size_${size}`]], disabled && [classes.disabled, classes[`disabled_version_${version}`]]]),
450
450
  style: _objectSpread(_objectSpread({}, styles.root), style)
451
451
  }, other), {}, {
452
452
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Interaction, _objectSpread({
@@ -66,7 +66,7 @@ const CardButton = props_ => {
66
66
  onFocus: onFocus,
67
67
  onBlur: onBlur,
68
68
  href: href,
69
- className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('CardButton', theme) && [`onesy-CardButton-root`, focus && `onesy-CardButton-focus`, disabled && `onesy-CardButton-disabled`], className, classes.root])
69
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('CardButton', theme) && [`onesy-CardButton-root`, focus && `onesy-CardButton-focus`, readOnly && `onesy-CardButton-readOnly`, disabled && `onesy-CardButton-disabled`], className, classes.root])
70
70
  }, other), {}, {
71
71
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(Interaction, _objectSpread({
72
72
  border: false,
@@ -424,7 +424,7 @@ const Checkbox = props_ => {
424
424
  "aria-disabled": disabled,
425
425
  disabled: disabled,
426
426
  Component: Component,
427
- className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Checkbox', theme) && ['onesy-Checkbox-root', `onesy-Checkbox-version-${version}`, `onesy-Checkbox-size-${size}`, value && `onesy-Checkbox-checked`, disabled && `onesy-Checkbox-disabled`], className, classes.root, disabled && classes.disabled])
427
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Checkbox', theme) && ['onesy-Checkbox-root', `onesy-Checkbox-version-${version}`, `onesy-Checkbox-size-${size}`, value && `onesy-Checkbox-checked`, readOnly && `onesy-Checkbox-readOnly`, disabled && `onesy-Checkbox-disabled`], className, classes.root, disabled && classes.disabled])
428
428
  }, other), {}, {
429
429
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(IconItem, {
430
430
  size: size,
@@ -25,6 +25,7 @@ export declare type IListItem = ISurface & {
25
25
  noBackground?: boolean;
26
26
  noOutline?: boolean;
27
27
  fullWidth?: boolean;
28
+ focus?: boolean;
28
29
  value?: any;
29
30
  onClick?: (event: React.MouseEvent<any>) => any;
30
31
  onFocus?: (event: React.FocusEvent<any>) => any;
@@ -15,7 +15,7 @@ var _Interaction = _interopRequireDefault(require("../Interaction"));
15
15
  var _Type = _interopRequireDefault(require("../Type"));
16
16
  var _utils2 = require("../utils");
17
17
  var _jsxRuntime = require("react/jsx-runtime");
18
- const _excluded = ["ref", "tonal", "color", "colorSelected", "inset", "primary", "secondary", "tertiary", "preselected", "selected", "start", "startAlign", "end", "endAlign", "size", "noPadding", "href", "button", "shape", "shapePosition", "menuItem", "footer", "tabIndex", "interaction", "fullWidth", "noOutline", "noBackground", "disabled", "onClick", "onFocus", "onBlur", "onMouseEnter", "onMouseLeave", "onClose", "RootComponent", "WrapperProps", "RootProps", "InteractionProps", "PrimaryProps", "SecondaryProps", "TertiaryProps", "MainProps", "AsideProps", "AsideStartProps", "AsideEndProps", "Component", "className", "style", "children"];
18
+ const _excluded = ["ref", "tonal", "color", "colorSelected", "inset", "primary", "secondary", "tertiary", "preselected", "selected", "start", "startAlign", "end", "endAlign", "size", "noPadding", "href", "button", "shape", "shapePosition", "menuItem", "footer", "tabIndex", "interaction", "fullWidth", "noOutline", "noBackground", "focus", "readOnly", "disabled", "onClick", "onFocus", "onBlur", "onMouseEnter", "onMouseLeave", "onClose", "RootComponent", "WrapperProps", "RootProps", "InteractionProps", "PrimaryProps", "SecondaryProps", "TertiaryProps", "MainProps", "AsideProps", "AsideStartProps", "AsideEndProps", "Component", "className", "style", "children"];
19
19
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
20
20
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2.default)(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
21
21
  const useStyle = (0, _styleReact.style)(theme => {
@@ -256,14 +256,16 @@ const ListItem = props_ => {
256
256
  fullWidth = true,
257
257
  noOutline,
258
258
  noBackground,
259
+ focus: focusProps,
260
+ readOnly,
259
261
  disabled,
260
262
  onClick,
261
- onFocus,
262
- onBlur,
263
+ onFocus: onFocusProps,
264
+ onBlur: onBlurProps,
263
265
  onMouseEnter,
264
266
  onMouseLeave,
265
267
  onClose: onClose_,
266
- RootComponent: RootComponent_ = 'div',
268
+ RootComponent: RootComponentProps = 'div',
267
269
  WrapperProps,
268
270
  RootProps,
269
271
  InteractionProps,
@@ -283,6 +285,7 @@ const ListItem = props_ => {
283
285
  const {
284
286
  classes
285
287
  } = useStyle();
288
+ const [focus, setFocus] = _react.default.useState(focusProps !== undefined ? focusProps : false);
286
289
  const refs = {
287
290
  root: _react.default.useRef(undefined),
288
291
  props: _react.default.useRef(undefined),
@@ -292,6 +295,14 @@ const ListItem = props_ => {
292
295
  }
293
296
  };
294
297
  refs.props.current = props;
298
+ const onFocus = event => {
299
+ if (focusProps === undefined && event.target === refs.root.current && !disabled) setFocus(true);
300
+ if ((0, _utils.is)('function', onFocusProps)) onFocusProps(event);
301
+ };
302
+ const onBlur = event_0 => {
303
+ if (focusProps === undefined && !disabled) setFocus(false);
304
+ if ((0, _utils.is)('function', onBlurProps)) onBlurProps(event_0);
305
+ };
295
306
  const styles = {
296
307
  root: {},
297
308
  icon: {
@@ -302,7 +313,7 @@ const ListItem = props_ => {
302
313
  secondary: {},
303
314
  tertiary: {}
304
315
  };
305
- let RootComponent = RootComponent_;
316
+ let RootComponent = RootComponentProps;
306
317
  if (href) RootComponent = 'a';
307
318
  const colorToUse = selected ? colorSelected : color;
308
319
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(Surface, _objectSpread(_objectSpread(_objectSpread({
@@ -314,7 +325,6 @@ const ListItem = props_ => {
314
325
  },
315
326
  tonal: tonal,
316
327
  color: colorToUse,
317
- tabIndex: tabIndex !== undefined ? tabIndex : button && !disabled ? 0 : undefined,
318
328
  "aria-labelledby": refs.ids.primary,
319
329
  "aria-describedby": refs.ids.secondary,
320
330
  "aria-selected": selected,
@@ -326,18 +336,20 @@ const ListItem = props_ => {
326
336
  }, other), {}, {
327
337
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(RootComponent, _objectSpread(_objectSpread({
328
338
  href: href,
339
+ tabIndex: tabIndex !== undefined ? tabIndex : button && !(readOnly || disabled) ? 0 : undefined,
329
340
  onClick: onClick,
330
341
  onFocus: onFocus,
331
342
  onBlur: onBlur,
332
343
  onMouseEnter: onMouseEnter,
333
344
  onMouseLeave: onMouseLeave
334
345
  }, RootProps), {}, {
335
- className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('ListItem', theme) && ['onesy-ListItem-root', `onesy-ListItem-size-${size}`, preselected && `onesy-ListItem-preselected`, selected && `onesy-ListItem-selected`, disabled && `onesy-ListItem-disabled`, inset && !start && `onesy-ListItem-inset`], RootProps === null || RootProps === void 0 ? void 0 : RootProps.className, classes.root, !menuItem && classes[`size_${size}`], classes[`shape_${shape}_position_${shapePosition}`], inset && !start && classes[`inset_size_${size}`], menuItem && [classes[`menuItem_size_${size}`], inset && classes[`menuItem_inset_size_${size}`]], (href || button) && classes.button, noPadding && classes.noPadding, disabled && classes.disabled]),
346
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('ListItem', theme) && ['onesy-ListItem-root', `onesy-ListItem-size-${size}`, preselected && `onesy-ListItem-preselected`, selected && `onesy-ListItem-selected`, readOnly && `onesy-ListItem-readOnly`, disabled && `onesy-ListItem-disabled`, inset && !start && `onesy-ListItem-inset`], RootProps === null || RootProps === void 0 ? void 0 : RootProps.className, classes.root, !menuItem && classes[`size_${size}`], classes[`shape_${shape}_position_${shapePosition}`], inset && !start && classes[`inset_size_${size}`], menuItem && [classes[`menuItem_size_${size}`], inset && classes[`menuItem_inset_size_${size}`]], (href || button) && classes.button, noPadding && classes.noPadding, disabled && classes.disabled]),
336
347
  style: _objectSpread(_objectSpread({}, style), styles.root),
337
348
  disabled: disabled,
338
349
  children: [(href || button || interaction) && /*#__PURE__*/(0, _jsxRuntime.jsx)(Interaction, _objectSpread({
339
350
  border: false,
340
351
  preselected: (InteractionProps === null || InteractionProps === void 0 ? void 0 : InteractionProps.focus) || preselected || undefined,
352
+ pulse: focus,
341
353
  selected: selected,
342
354
  disabled: disabled
343
355
  }, InteractionProps)), start && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", _objectSpread(_objectSpread(_objectSpread({}, AsideProps), AsideStartProps), {}, {
@@ -249,7 +249,7 @@ const NavigationItem = props_ => {
249
249
  onMouseDown: onMouseDown,
250
250
  onMouseEnter: onMouseEnter,
251
251
  onMouseLeave: onMouseLeave,
252
- className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('NavigationItem', theme) && ['onesy-NavigationItem-root', selected && 'onesy-NavigationItem-selected', hover && `onesy-NavigationItem-hover`, mouseDown && `onesy-NavigationItem-mouse-down`, focus && `onesy-NavigationItem-focus`, disabled && `onesy-NavigationItem-disabled`], className, classes.root, vertical && classes.vertical, disabled && classes.disabled]),
252
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('NavigationItem', theme) && ['onesy-NavigationItem-root', selected && 'onesy-NavigationItem-selected', hover && `onesy-NavigationItem-hover`, mouseDown && `onesy-NavigationItem-mouse-down`, focus && `onesy-NavigationItem-focus`, readOnly && `onesy-NavigationItem-readOnly`, disabled && `onesy-NavigationItem-disabled`], className, classes.root, vertical && classes.vertical, disabled && classes.disabled]),
253
253
  style: _objectSpread({}, style)
254
254
  }, other), {}, {
255
255
  children: /*#__PURE__*/(0, _jsxRuntime.jsxs)(Line, {
package/Radio/Radio.js CHANGED
@@ -259,7 +259,7 @@ const Radio = props_ => {
259
259
  "aria-disabled": disabled,
260
260
  disabled: disabled,
261
261
  Component: Component,
262
- className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Radio', theme) && ['onesy-Radio-root', `onesy-Radio-version-${version}`, `onesy-Radio-size-${size}`, value && `onesy-Radio-checked`, disabled && `onesy-Radio-disabled`], className, classes.root, disabled && classes.disabled])
262
+ className: (0, _styleReact.classNames)([(0, _utils2.staticClassName)('Radio', theme) && ['onesy-Radio-root', `onesy-Radio-version-${version}`, `onesy-Radio-size-${size}`, value && `onesy-Radio-checked`, readOnly && `onesy-Radio-readOnly`, disabled && `onesy-Radio-disabled`], className, classes.root, disabled && classes.disabled])
263
263
  }, other), {}, {
264
264
  children: (0, _utils.is)('function', render) ? render(value, _objectSpread(_objectSpread(_objectSpread({}, props), other), {}, {
265
265
  tonal,
package/Tab/Tab.js CHANGED
@@ -165,7 +165,7 @@ const Tab = props_ => {
165
165
  }, TooltipProps) : undefined;
166
166
  const t7 = !(readOnly || disabled) ? 0 : -1;
167
167
  const t8 = "tab";
168
- const t9 = (0, _styleReact.classNames)([(0, _utils2.staticClassName)("Tab", theme) && ["onesy-Tab-root", `onesy-Tab-version-${version}`, `onesy-Tab-size-${size}`, active && "onesy-Tab-active", disabled && "onesy-Tab-disabled"], className, classes.root, classes[`size_${size}`], active && classes.active, disabled && classes.disabled]);
168
+ const t9 = (0, _styleReact.classNames)([(0, _utils2.staticClassName)("Tab", theme) && ["onesy-Tab-root", `onesy-Tab-version-${version}`, `onesy-Tab-size-${size}`, active && "onesy-Tab-active", readOnly && "onesy-Tab-readOnly", disabled && "onesy-Tab-disabled"], className, classes.root, classes[`size_${size}`], active && classes.active, disabled && classes.disabled]);
169
169
  let t10;
170
170
  if ($[0] !== Interaction || $[1] !== focus) {
171
171
  t10 = /*#__PURE__*/(0, _jsxRuntime.jsx)(Interaction, {
@@ -266,15 +266,15 @@ const Button = props_ => {
266
266
  fab,
267
267
  chip,
268
268
  icon,
269
- focus: focus_,
269
+ focus: focusProps,
270
270
  value,
271
271
  noIconRootFontSize,
272
272
  firstLevelChildren,
273
273
  noFontSize,
274
274
  readOnly,
275
275
  disabled: disabled_,
276
- onFocus: onFocus_,
277
- onBlur: onBlur_,
276
+ onFocus: onFocusProps,
277
+ onBlur: onBlurProps,
278
278
  IconWrapperComponent = 'span',
279
279
  InteractionProps = {},
280
280
  IconWrapperProps,
@@ -289,7 +289,7 @@ const Button = props_ => {
289
289
  const {
290
290
  classes
291
291
  } = useStyle();
292
- const [focus, setFocus] = React.useState(focus_ !== undefined ? focus_ : false);
292
+ const [focus, setFocus] = React.useState(focusProps !== undefined ? focusProps : false);
293
293
  const refs = {
294
294
  root: React.useRef(undefined),
295
295
  ids: {
@@ -408,12 +408,12 @@ const Button = props_ => {
408
408
  delete styles.label.color;
409
409
  }
410
410
  const onFocus = event => {
411
- if (focus_ === undefined && event.target === refs.root.current && !disabled) setFocus(true);
412
- if (is('function', onFocus_)) onFocus_(event);
411
+ if (focusProps === undefined && event.target === refs.root.current && !disabled) setFocus(true);
412
+ if (is('function', onFocusProps)) onFocusProps(event);
413
413
  };
414
414
  const onBlur = event_0 => {
415
- if (focus_ === undefined && !disabled) setFocus(false);
416
- if (is('function', onBlur_)) onBlur_(event_0);
415
+ if (focusProps === undefined && !disabled) setFocus(false);
416
+ if (is('function', onBlurProps)) onBlurProps(event_0);
417
417
  };
418
418
  const IconElement = selected && iconSelected || children_;
419
419
  return /*#__PURE__*/_jsxs(Surface, _objectSpread(_objectSpread({
@@ -438,7 +438,7 @@ const Button = props_ => {
438
438
  onFocus: onFocus,
439
439
  onBlur: onBlur,
440
440
  Component: Component,
441
- className: classNames([staticClassName('Button', theme) && [`onesy-Button-root`, `onesy-Button-version-${version}`, `onesy-Button-size-${size}`, fullWidth && `onesy-Button-full-width`, start && `onesy-Button-start`, end && `onesy-Button-end`, selected && `onesy-Button-selected`, loading && `onesy-Button-loading`, focus && `onesy-Button-focus`, disabled && `onesy-Button-disabled`], className, classes.root, classes[`size_${size}`], classes[`version_${version}`], classes[`color_${color}`], elevation && !disabled && ['filled', 'tonal'].includes(version) && classes.elevation, start && classes.start, end && classes.end, fullWidth && classes.fullWidth, icon && [classes.icon, classes[`icon_size_${size}`]], fab && [classes.fab, classes[`fab_size_${size}`]], chip && [classes.chip, classes[`chip_size_${size}`]], disabled && [classes.disabled, classes[`disabled_version_${version}`]]]),
441
+ className: classNames([staticClassName('Button', theme) && [`onesy-Button-root`, `onesy-Button-version-${version}`, `onesy-Button-size-${size}`, fullWidth && `onesy-Button-full-width`, start && `onesy-Button-start`, end && `onesy-Button-end`, selected && `onesy-Button-selected`, loading && `onesy-Button-loading`, focus && `onesy-Button-focus`, readOnly && `onesy-Button-readOnly`, disabled && `onesy-Button-disabled`], className, classes.root, classes[`size_${size}`], classes[`version_${version}`], classes[`color_${color}`], elevation && !disabled && ['filled', 'tonal'].includes(version) && classes.elevation, start && classes.start, end && classes.end, fullWidth && classes.fullWidth, icon && [classes.icon, classes[`icon_size_${size}`]], fab && [classes.fab, classes[`fab_size_${size}`]], chip && [classes.chip, classes[`chip_size_${size}`]], disabled && [classes.disabled, classes[`disabled_version_${version}`]]]),
442
442
  style: _objectSpread(_objectSpread({}, styles.root), style)
443
443
  }, other), {}, {
444
444
  children: [/*#__PURE__*/_jsx(Interaction, _objectSpread({
@@ -58,7 +58,7 @@ const CardButton = props_ => {
58
58
  onFocus: onFocus,
59
59
  onBlur: onBlur,
60
60
  href: href,
61
- className: classNames([staticClassName('CardButton', theme) && [`onesy-CardButton-root`, focus && `onesy-CardButton-focus`, disabled && `onesy-CardButton-disabled`], className, classes.root])
61
+ className: classNames([staticClassName('CardButton', theme) && [`onesy-CardButton-root`, focus && `onesy-CardButton-focus`, readOnly && `onesy-CardButton-readOnly`, disabled && `onesy-CardButton-disabled`], className, classes.root])
62
62
  }, other), {}, {
63
63
  children: [/*#__PURE__*/_jsx(Interaction, _objectSpread({
64
64
  border: false,
@@ -415,7 +415,7 @@ const Checkbox = props_ => {
415
415
  "aria-disabled": disabled,
416
416
  disabled: disabled,
417
417
  Component: Component,
418
- className: classNames([staticClassName('Checkbox', theme) && ['onesy-Checkbox-root', `onesy-Checkbox-version-${version}`, `onesy-Checkbox-size-${size}`, value && `onesy-Checkbox-checked`, disabled && `onesy-Checkbox-disabled`], className, classes.root, disabled && classes.disabled])
418
+ className: classNames([staticClassName('Checkbox', theme) && ['onesy-Checkbox-root', `onesy-Checkbox-version-${version}`, `onesy-Checkbox-size-${size}`, value && `onesy-Checkbox-checked`, readOnly && `onesy-Checkbox-readOnly`, disabled && `onesy-Checkbox-disabled`], className, classes.root, disabled && classes.disabled])
419
419
  }, other), {}, {
420
420
  children: [/*#__PURE__*/_jsx(IconItem, {
421
421
  size: size,
@@ -1,6 +1,6 @@
1
1
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
2
2
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
- const _excluded = ["ref", "tonal", "color", "colorSelected", "inset", "primary", "secondary", "tertiary", "preselected", "selected", "start", "startAlign", "end", "endAlign", "size", "noPadding", "href", "button", "shape", "shapePosition", "menuItem", "footer", "tabIndex", "interaction", "fullWidth", "noOutline", "noBackground", "disabled", "onClick", "onFocus", "onBlur", "onMouseEnter", "onMouseLeave", "onClose", "RootComponent", "WrapperProps", "RootProps", "InteractionProps", "PrimaryProps", "SecondaryProps", "TertiaryProps", "MainProps", "AsideProps", "AsideStartProps", "AsideEndProps", "Component", "className", "style", "children"];
3
+ const _excluded = ["ref", "tonal", "color", "colorSelected", "inset", "primary", "secondary", "tertiary", "preselected", "selected", "start", "startAlign", "end", "endAlign", "size", "noPadding", "href", "button", "shape", "shapePosition", "menuItem", "footer", "tabIndex", "interaction", "fullWidth", "noOutline", "noBackground", "focus", "readOnly", "disabled", "onClick", "onFocus", "onBlur", "onMouseEnter", "onMouseLeave", "onClose", "RootComponent", "WrapperProps", "RootProps", "InteractionProps", "PrimaryProps", "SecondaryProps", "TertiaryProps", "MainProps", "AsideProps", "AsideStartProps", "AsideEndProps", "Component", "className", "style", "children"];
4
4
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
5
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
6
  import React from 'react';
@@ -248,14 +248,16 @@ const ListItem = props_ => {
248
248
  fullWidth = true,
249
249
  noOutline,
250
250
  noBackground,
251
+ focus: focusProps,
252
+ readOnly,
251
253
  disabled,
252
254
  onClick,
253
- onFocus,
254
- onBlur,
255
+ onFocus: onFocusProps,
256
+ onBlur: onBlurProps,
255
257
  onMouseEnter,
256
258
  onMouseLeave,
257
259
  onClose: onClose_,
258
- RootComponent: RootComponent_ = 'div',
260
+ RootComponent: RootComponentProps = 'div',
259
261
  WrapperProps,
260
262
  RootProps,
261
263
  InteractionProps,
@@ -275,6 +277,7 @@ const ListItem = props_ => {
275
277
  const {
276
278
  classes
277
279
  } = useStyle();
280
+ const [focus, setFocus] = React.useState(focusProps !== undefined ? focusProps : false);
278
281
  const refs = {
279
282
  root: React.useRef(undefined),
280
283
  props: React.useRef(undefined),
@@ -284,6 +287,14 @@ const ListItem = props_ => {
284
287
  }
285
288
  };
286
289
  refs.props.current = props;
290
+ const onFocus = event => {
291
+ if (focusProps === undefined && event.target === refs.root.current && !disabled) setFocus(true);
292
+ if (is('function', onFocusProps)) onFocusProps(event);
293
+ };
294
+ const onBlur = event_0 => {
295
+ if (focusProps === undefined && !disabled) setFocus(false);
296
+ if (is('function', onBlurProps)) onBlurProps(event_0);
297
+ };
287
298
  const styles = {
288
299
  root: {},
289
300
  icon: {
@@ -294,7 +305,7 @@ const ListItem = props_ => {
294
305
  secondary: {},
295
306
  tertiary: {}
296
307
  };
297
- let RootComponent = RootComponent_;
308
+ let RootComponent = RootComponentProps;
298
309
  if (href) RootComponent = 'a';
299
310
  const colorToUse = selected ? colorSelected : color;
300
311
  return /*#__PURE__*/_jsxs(Surface, _objectSpread(_objectSpread(_objectSpread({
@@ -306,7 +317,6 @@ const ListItem = props_ => {
306
317
  },
307
318
  tonal: tonal,
308
319
  color: colorToUse,
309
- tabIndex: tabIndex !== undefined ? tabIndex : button && !disabled ? 0 : undefined,
310
320
  "aria-labelledby": refs.ids.primary,
311
321
  "aria-describedby": refs.ids.secondary,
312
322
  "aria-selected": selected,
@@ -318,18 +328,20 @@ const ListItem = props_ => {
318
328
  }, other), {}, {
319
329
  children: [/*#__PURE__*/_jsxs(RootComponent, _objectSpread(_objectSpread({
320
330
  href: href,
331
+ tabIndex: tabIndex !== undefined ? tabIndex : button && !(readOnly || disabled) ? 0 : undefined,
321
332
  onClick: onClick,
322
333
  onFocus: onFocus,
323
334
  onBlur: onBlur,
324
335
  onMouseEnter: onMouseEnter,
325
336
  onMouseLeave: onMouseLeave
326
337
  }, RootProps), {}, {
327
- className: classNames([staticClassName('ListItem', theme) && ['onesy-ListItem-root', `onesy-ListItem-size-${size}`, preselected && `onesy-ListItem-preselected`, selected && `onesy-ListItem-selected`, disabled && `onesy-ListItem-disabled`, inset && !start && `onesy-ListItem-inset`], RootProps?.className, classes.root, !menuItem && classes[`size_${size}`], classes[`shape_${shape}_position_${shapePosition}`], inset && !start && classes[`inset_size_${size}`], menuItem && [classes[`menuItem_size_${size}`], inset && classes[`menuItem_inset_size_${size}`]], (href || button) && classes.button, noPadding && classes.noPadding, disabled && classes.disabled]),
338
+ className: classNames([staticClassName('ListItem', theme) && ['onesy-ListItem-root', `onesy-ListItem-size-${size}`, preselected && `onesy-ListItem-preselected`, selected && `onesy-ListItem-selected`, readOnly && `onesy-ListItem-readOnly`, disabled && `onesy-ListItem-disabled`, inset && !start && `onesy-ListItem-inset`], RootProps?.className, classes.root, !menuItem && classes[`size_${size}`], classes[`shape_${shape}_position_${shapePosition}`], inset && !start && classes[`inset_size_${size}`], menuItem && [classes[`menuItem_size_${size}`], inset && classes[`menuItem_inset_size_${size}`]], (href || button) && classes.button, noPadding && classes.noPadding, disabled && classes.disabled]),
328
339
  style: _objectSpread(_objectSpread({}, style), styles.root),
329
340
  disabled: disabled,
330
341
  children: [(href || button || interaction) && /*#__PURE__*/_jsx(Interaction, _objectSpread({
331
342
  border: false,
332
343
  preselected: InteractionProps?.focus || preselected || undefined,
344
+ pulse: focus,
333
345
  selected: selected,
334
346
  disabled: disabled
335
347
  }, InteractionProps)), start && /*#__PURE__*/_jsx("span", _objectSpread(_objectSpread(_objectSpread({}, AsideProps), AsideStartProps), {}, {
@@ -238,7 +238,7 @@ const NavigationItem = props_ => {
238
238
  onMouseDown: onMouseDown,
239
239
  onMouseEnter: onMouseEnter,
240
240
  onMouseLeave: onMouseLeave,
241
- className: classNames([staticClassName('NavigationItem', theme) && ['onesy-NavigationItem-root', selected && 'onesy-NavigationItem-selected', hover && `onesy-NavigationItem-hover`, mouseDown && `onesy-NavigationItem-mouse-down`, focus && `onesy-NavigationItem-focus`, disabled && `onesy-NavigationItem-disabled`], className, classes.root, vertical && classes.vertical, disabled && classes.disabled]),
241
+ className: classNames([staticClassName('NavigationItem', theme) && ['onesy-NavigationItem-root', selected && 'onesy-NavigationItem-selected', hover && `onesy-NavigationItem-hover`, mouseDown && `onesy-NavigationItem-mouse-down`, focus && `onesy-NavigationItem-focus`, readOnly && `onesy-NavigationItem-readOnly`, disabled && `onesy-NavigationItem-disabled`], className, classes.root, vertical && classes.vertical, disabled && classes.disabled]),
242
242
  style: _objectSpread({}, style)
243
243
  }, other), {}, {
244
244
  children: /*#__PURE__*/_jsxs(Line, {
@@ -251,7 +251,7 @@ const Radio = props_ => {
251
251
  "aria-disabled": disabled,
252
252
  disabled: disabled,
253
253
  Component: Component,
254
- className: classNames([staticClassName('Radio', theme) && ['onesy-Radio-root', `onesy-Radio-version-${version}`, `onesy-Radio-size-${size}`, value && `onesy-Radio-checked`, disabled && `onesy-Radio-disabled`], className, classes.root, disabled && classes.disabled])
254
+ className: classNames([staticClassName('Radio', theme) && ['onesy-Radio-root', `onesy-Radio-version-${version}`, `onesy-Radio-size-${size}`, value && `onesy-Radio-checked`, readOnly && `onesy-Radio-readOnly`, disabled && `onesy-Radio-disabled`], className, classes.root, disabled && classes.disabled])
255
255
  }, other), {}, {
256
256
  children: is('function', render) ? render(value, _objectSpread(_objectSpread(_objectSpread({}, props), other), {}, {
257
257
  tonal,
package/esm/Tab/Tab.js CHANGED
@@ -157,7 +157,7 @@ const Tab = props_ => {
157
157
  }, TooltipProps) : undefined;
158
158
  const t7 = !(readOnly || disabled) ? 0 : -1;
159
159
  const t8 = "tab";
160
- const t9 = classNames([staticClassName("Tab", theme) && ["onesy-Tab-root", `onesy-Tab-version-${version}`, `onesy-Tab-size-${size}`, active && "onesy-Tab-active", disabled && "onesy-Tab-disabled"], className, classes.root, classes[`size_${size}`], active && classes.active, disabled && classes.disabled]);
160
+ const t9 = classNames([staticClassName("Tab", theme) && ["onesy-Tab-root", `onesy-Tab-version-${version}`, `onesy-Tab-size-${size}`, active && "onesy-Tab-active", readOnly && "onesy-Tab-readOnly", disabled && "onesy-Tab-disabled"], className, classes.root, classes[`size_${size}`], active && classes.active, disabled && classes.disabled]);
161
161
  let t10;
162
162
  if ($[0] !== Interaction || $[1] !== focus) {
163
163
  t10 = /*#__PURE__*/_jsx(Interaction, {
package/esm/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license UiReact v1.0.197
1
+ /** @license UiReact v1.0.199
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** @license UiReact v1.0.197
1
+ /** @license UiReact v1.0.199
2
2
  *
3
3
  * This source code is licensed under the MIT license found in the
4
4
  * LICENSE file in the root directory of this source tree.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@onesy/ui-react",
3
- "version": "1.0.198",
3
+ "version": "1.0.200",
4
4
  "description": "UI for React",
5
5
  "repository": "https://github.com/onesy-me/onesy.git",
6
6
  "author": "Lazar Erić <lazareric1@proton.me>",