@skedulo/sked-ui 19.20.0 → 19.21.1

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.
@@ -6,6 +6,7 @@ interface IconButtonProps {
6
6
  icon: IconNames;
7
7
  tooltipContent: ITooltipProps['content'];
8
8
  tooltipDelay?: ITooltipProps['delayShow'];
9
+ disableTooltip?: boolean;
9
10
  }
10
11
  export declare type IIconButton = IconButtonProps & Partial<IButtonProps>;
11
12
  export declare const IconButton: React.FC<IIconButton>;
@@ -1,5 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { IDateSelectorProps } from './elements/DateSelector';
3
+ import { INavigationButtonProps } from './elements/NavigationButtons';
3
4
  import { IRangeProps, RangePicker, RangeType } from './elements/RangePicker';
4
5
  import { ValidationProps } from '../forms/elements/FormElements';
5
6
  export interface IBaseCalendarControlProps extends ValidationProps {
@@ -12,7 +13,7 @@ export interface IBaseCalendarControlProps extends ValidationProps {
12
13
  */
13
14
  selected?: Date;
14
15
  }
15
- export interface ICalendarControlProps extends React.HTMLAttributes<HTMLDivElement>, IBaseCalendarControlProps, IDateSelectorProps, IRangeProps {
16
+ export interface ICalendarControlProps extends React.HTMLAttributes<HTMLDivElement>, IBaseCalendarControlProps, IDateSelectorProps, INavigationButtonProps, IRangeProps {
16
17
  /**
17
18
  * Whenever the user clicks the `Today` button this callback is triggered
18
19
  */
@@ -22,7 +23,7 @@ export declare function useCalendarControlsContext(): ICalendarControlProps;
22
23
  declare function CalendarControls(props: ICalendarControlProps): JSX.Element;
23
24
  declare namespace CalendarControls {
24
25
  var TodayButton: React.FC<import("./elements/TodayButton").ITodayButtonProps>;
25
- var NavigationButtons: (props: import("./elements/DateSelector").IBaseDateSelectorProps) => JSX.Element;
26
+ var NavigationButtons: (props: INavigationButtonProps) => JSX.Element;
26
27
  var DateSelector: React.FC<IDateSelectorProps>;
27
28
  var RangePicker: React.FC<IRangeProps>;
28
29
  }
@@ -1,2 +1,5 @@
1
1
  import { IBaseDateSelectorProps } from './DateSelector';
2
- export declare const NavigationButtons: (props: IBaseDateSelectorProps) => JSX.Element;
2
+ export interface INavigationButtonProps extends IBaseDateSelectorProps {
3
+ hideTooltipIfDisabled?: boolean;
4
+ }
5
+ export declare const NavigationButtons: (props: INavigationButtonProps) => JSX.Element;
package/dist/index.js CHANGED
@@ -14344,17 +14344,24 @@ var IconButton = function IconButton(_ref) {
14344
14344
  buttonType = _ref.buttonType,
14345
14345
  className = _ref.className,
14346
14346
  tooltipDelay = _ref.tooltipDelay,
14347
- otherProps = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref, ["icon", "tooltipContent", "buttonType", "className", "tooltipDelay"]);
14347
+ disableTooltip = _ref.disableTooltip,
14348
+ otherProps = _babel_runtime_helpers_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1___default()(_ref, ["icon", "tooltipContent", "buttonType", "className", "tooltipDelay", "disableTooltip"]);
14349
+
14350
+ var button = react__WEBPACK_IMPORTED_MODULE_2__["createElement"](_button_Button__WEBPACK_IMPORTED_MODULE_5__["Button"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
14351
+ buttonType: buttonType || 'transparent',
14352
+ className: classnames__WEBPACK_IMPORTED_MODULE_3___default()('sked-button--icon-only', className),
14353
+ icon: icon
14354
+ }, otherProps));
14355
+
14356
+ if (disableTooltip) {
14357
+ return button;
14358
+ }
14348
14359
 
14349
14360
  return react__WEBPACK_IMPORTED_MODULE_2__["createElement"](_popups_tooltip_Tooltip__WEBPACK_IMPORTED_MODULE_4__["Tooltip"], {
14350
14361
  content: tooltipContent,
14351
14362
  position: "top",
14352
14363
  delayShow: tooltipDelay
14353
- }, react__WEBPACK_IMPORTED_MODULE_2__["createElement"](_button_Button__WEBPACK_IMPORTED_MODULE_5__["Button"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
14354
- buttonType: buttonType || 'transparent',
14355
- className: classnames__WEBPACK_IMPORTED_MODULE_3___default()('sked-button--icon-only', className),
14356
- icon: icon
14357
- }, otherProps)));
14364
+ }, button);
14358
14365
  };
14359
14366
 
14360
14367
  /***/ }),
@@ -17448,7 +17455,9 @@ var NavigationButtons = function NavigationButtons(props) {
17448
17455
  onDateSelect = _calendarControlProps.onDateSelect,
17449
17456
  selected = _calendarControlProps.selected,
17450
17457
  minDate = _calendarControlProps.minDate,
17451
- maxDate = _calendarControlProps.maxDate;
17458
+ maxDate = _calendarControlProps.maxDate,
17459
+ _calendarControlProps3 = _calendarControlProps.hideTooltipIfDisabled,
17460
+ hideTooltipIfDisabled = _calendarControlProps3 === void 0 ? false : _calendarControlProps3;
17452
17461
 
17453
17462
  var backwardsHandler = function backwardsHandler() {
17454
17463
  return onDateSelect(Object(_CalendarControls_utils__WEBPACK_IMPORTED_MODULE_4__["moveDate"])(selected, selectedRange, 'backward'));
@@ -17458,6 +17467,8 @@ var NavigationButtons = function NavigationButtons(props) {
17458
17467
  return onDateSelect(Object(_CalendarControls_utils__WEBPACK_IMPORTED_MODULE_4__["moveDate"])(selected, selectedRange, 'forward'));
17459
17468
  };
17460
17469
 
17470
+ var isBackwardsDisabled = minDate && selected <= minDate;
17471
+ var isForwardsDisabled = maxDate && selected >= maxDate;
17461
17472
  var previousTooltip = Object(lodash__WEBPACK_IMPORTED_MODULE_1__["capitalize"])("Previous ".concat(_RangePicker__WEBPACK_IMPORTED_MODULE_5__["dateRangeLabel"][selectedRange]));
17462
17473
  var nextTooltip = Object(lodash__WEBPACK_IMPORTED_MODULE_1__["capitalize"])("Next ".concat(_RangePicker__WEBPACK_IMPORTED_MODULE_5__["dateRangeLabel"][selectedRange]));
17463
17474
  return react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement("div", {
@@ -17467,16 +17478,18 @@ var NavigationButtons = function NavigationButtons(props) {
17467
17478
  icon: "chevronLeft",
17468
17479
  "data-sk-name": "navigate-backwards",
17469
17480
  onClick: backwardsHandler,
17470
- disabled: minDate && selected <= minDate,
17481
+ disabled: isBackwardsDisabled,
17471
17482
  compact: true,
17483
+ disableTooltip: hideTooltipIfDisabled && isBackwardsDisabled,
17472
17484
  tooltipContent: previousTooltip
17473
17485
  }), react__WEBPACK_IMPORTED_MODULE_2___default.a.createElement(___WEBPACK_IMPORTED_MODULE_3__["IconButton"], {
17474
17486
  className: "sk-inline-flex",
17475
17487
  icon: "chevronRight",
17476
17488
  "data-sk-name": "navigate-forwards",
17477
17489
  onClick: forwardsHandler,
17478
- disabled: maxDate && selected >= maxDate,
17490
+ disabled: isForwardsDisabled,
17479
17491
  compact: true,
17492
+ disableTooltip: hideTooltipIfDisabled && isForwardsDisabled,
17480
17493
  tooltipContent: nextTooltip
17481
17494
  }));
17482
17495
  };
@@ -59818,7 +59831,7 @@ var MultiSearchSelect = function MultiSearchSelect(_ref2) {
59818
59831
  selectPopperModifiers = _useSelectPopperConfi.selectPopperModifiers;
59819
59832
 
59820
59833
  react__WEBPACK_IMPORTED_MODULE_5__["useEffect"](function () {
59821
- setKeyedSelectedItems(lodash_keyBy__WEBPACK_IMPORTED_MODULE_8___default()(selectedItems, 'label'));
59834
+ setKeyedSelectedItems(lodash_keyBy__WEBPACK_IMPORTED_MODULE_8___default()(selectedItems, 'value'));
59822
59835
  }, [selectedItems]);
59823
59836
  react__WEBPACK_IMPORTED_MODULE_5__["useEffect"](function () {
59824
59837
  if (!inputValue) {
@@ -59867,7 +59880,7 @@ var MultiSearchSelect = function MultiSearchSelect(_ref2) {
59867
59880
  className: className
59868
59881
  }), selectedItems.map(function (selectedItem, index) {
59869
59882
  return react__WEBPACK_IMPORTED_MODULE_5__["createElement"](_select_components__WEBPACK_IMPORTED_MODULE_13__["MultiSelectPill"], _babel_runtime_helpers_extends__WEBPACK_IMPORTED_MODULE_0___default()({
59870
- key: itemToString(selectedItem),
59883
+ key: "".concat(index, "-").concat(itemToString(selectedItem)),
59871
59884
  text: itemToString(selectedItem),
59872
59885
  disabled: disabled
59873
59886
  }, getSelectedItemProps({
@@ -59881,11 +59894,11 @@ var MultiSearchSelect = function MultiSearchSelect(_ref2) {
59881
59894
  var Item = function Item(item, index) {
59882
59895
  if (item.value !== _select_utils__WEBPACK_IMPORTED_MODULE_11__["SELECT_ALL_ID"]) {
59883
59896
  return react__WEBPACK_IMPORTED_MODULE_5__["createElement"](_select_components__WEBPACK_IMPORTED_MODULE_13__["MultiSelectMenuItem"], {
59884
- key: itemToString(item),
59897
+ key: "".concat(index, "-").concat(itemToString(item)),
59885
59898
  item: item,
59886
59899
  ItemRenderer: ItemRenderer,
59887
59900
  index: index,
59888
- isSelected: !!keyedSelectedItems[item.label],
59901
+ isSelected: !!keyedSelectedItems[item.value],
59889
59902
  highlightedIndex: highlightedIndex,
59890
59903
  getItemProps: getItemProps
59891
59904
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skedulo/sked-ui",
3
- "version": "19.20.0",
3
+ "version": "19.21.1",
4
4
  "license": "UNLICENSED",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",