@televet/kibble-ui 1.16.1-beta.30eeeuh.3 → 1.16.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.
@@ -1 +1,2 @@
1
1
  export * from './Alert';
2
+ export * from './Spinner';
@@ -5,7 +5,7 @@ export interface DatePickerProps {
5
5
  date: Date | null;
6
6
  onDateChange?: (date: Date | null) => void;
7
7
  dateFormat?: string | DateFormats;
8
- inputProps?: Omit<TextInputProps, 'onChange' | 'value' | 'isClearable' | 'onClear'>;
8
+ inputProps?: Omit<TextInputProps, 'onChange' | 'value'>;
9
9
  placement?: PlacementWithLogical;
10
10
  minYear?: number;
11
11
  maxYear?: number;
@@ -1,6 +1,5 @@
1
1
  import React from 'react';
2
2
  import { Dict } from 'shared/types';
3
- import { HelperTextAlignment } from './formControl.types';
4
3
  export interface WithFormControlProps {
5
4
  errorText?: string;
6
5
  helperText?: string;
@@ -12,6 +11,6 @@ export interface WithFormControlProps {
12
11
  label?: string;
13
12
  labelStyle?: Dict;
14
13
  formControlStyle?: Dict;
15
- helperTextAlignment?: HelperTextAlignment;
14
+ helperTextAlignment?: 'start' | 'end';
16
15
  }
17
16
  export declare function withFormControl<P extends WithFormControlProps>(Component: React.ComponentType<P>): React.FC<P>;
@@ -1,21 +1,10 @@
1
1
  import React, { ForwardedRef, ReactElement } from 'react';
2
2
  import { InputProps as CInputProps } from '@chakra-ui/react';
3
3
  import { WithFormControlProps } from '../FormControl/formControl.component';
4
- import { FormControlSize } from '../FormControl/formControl.types';
5
- export interface TextInputBaseProps extends WithFormControlProps, CInputProps {
4
+ export interface TextInputProps extends WithFormControlProps, CInputProps {
6
5
  leftElement?: ReactElement;
7
6
  rightElement?: ReactElement;
8
7
  inputRef?: ForwardedRef<HTMLInputElement>;
9
- size?: FormControlSize;
10
8
  }
11
- export interface DefaultTextInputProps extends TextInputBaseProps {
12
- isClearable?: never;
13
- onClear?: never;
14
- }
15
- export interface ClearableTextInputProps extends TextInputBaseProps {
16
- isClearable: boolean;
17
- onClear: (val: string | number | readonly string[]) => void;
18
- }
19
- export declare type TextInputProps = DefaultTextInputProps | ClearableTextInputProps;
20
9
  declare const WrappedTextInput: React.ForwardRefExoticComponent<TextInputProps & React.RefAttributes<HTMLInputElement>>;
21
10
  export { WrappedTextInput as TextInput };
package/build/index.js CHANGED
@@ -3666,6 +3666,26 @@ var AlertConfig = {
3666
3666
  },
3667
3667
  };
3668
3668
 
3669
+ var SpinnerSizMap = {
3670
+ xs: 12,
3671
+ sm: 16,
3672
+ md: 24,
3673
+ lg: 32,
3674
+ xl: 48,
3675
+ };
3676
+
3677
+ var spin = react.keyframes(templateObject_1$1 || (templateObject_1$1 = __makeTemplateObject(["\n from {transform: rotate(0deg);}\n to {transform: rotate(360deg)}\n "], ["\n from {transform: rotate(0deg);}\n to {transform: rotate(360deg)}\n "])));
3678
+ var Spinner = function (_a) {
3679
+ var _b = _a.size, size = _b === void 0 ? 'md' : _b, darkMode = _a.darkMode;
3680
+ var colors = useTheme().colors;
3681
+ var spinnerColor = useAdaptiveColorMap(colors.icon, 'active', darkMode);
3682
+ var spinnerSize = SpinnerSizMap[size];
3683
+ var animation = "0.45s linear 0s infinite normal none running ".concat(spin);
3684
+ return (React__default["default"].createElement(react.Box, { as: "div", display: "inline-block", animation: animation, borderWidth: "2px", borderStyle: "solid", borderTopColor: spinnerColor, borderRightColor: spinnerColor, borderLeftColor: "transparent", borderBottomColor: "transparent", height: "".concat(spinnerSize, "px"), width: "".concat(spinnerSize, "px"), borderRadius: "".concat(spinnerSize, "px") },
3685
+ React__default["default"].createElement(react.Box, { as: "span", border: 0, w: "1px", h: "1px", m: "-1px", p: 0, overflow: "hidden", position: "absolute" }, "Loading...")));
3686
+ };
3687
+ var templateObject_1$1;
3688
+
3669
3689
  var notificationCounterSize = {
3670
3690
  xs: 'sm',
3671
3691
  sm: 'md',
@@ -4006,33 +4026,12 @@ var FormControlConfig = {
4006
4026
 
4007
4027
  var TextareaConfig = __assign({}, FormControlConfig);
4008
4028
 
4009
- var closeButtonSize = {
4010
- sm: 5,
4011
- md: 5,
4012
- lg: 6,
4013
- };
4014
- var ClearButton = function (_a) {
4015
- var handleClear = _a.handleClear, _b = _a.size, size = _b === void 0 ? 'md' : _b;
4016
- var colors = useTheme().colors;
4017
- return (React__default["default"].createElement(react.Button, { color: colors.icon.light.default, display: "inline-flex", minW: "auto", w: closeButtonSize[size], h: closeButtonSize[size], variant: "unstyled", opacity: 0.5, _hover: { opacity: 0.8 }, _active: { opacity: 1 }, mr: size === 'sm' ? 3 : 4, onClick: handleClear },
4018
- React__default["default"].createElement(Icon, { name: "close", color: "currentColor", size: size === 'lg' ? 'sm' : 'xs' })));
4019
- };
4020
-
4021
- var TextInput = withFormControl(function (_a) {
4022
- var _b = _a.isClearable, isClearable = _b === void 0 ? false : _b, _c = _a.size, size = _c === void 0 ? 'md' : _c, props = __rest(_a, ["isClearable", "size"]);
4023
- var leftElement = props.leftElement, inputRef = props.inputRef; props.isFieldInline; var onClear = props.onClear, value = props.value, domProps = __rest(props, ["leftElement", "inputRef", "isFieldInline", "onClear", "value"]);
4024
- var rightElement = props.rightElement;
4025
- var handleClear = function () {
4026
- if (onClear) {
4027
- onClear(value || '');
4028
- }
4029
- };
4030
- if (isClearable && !!value) {
4031
- rightElement = React__default["default"].createElement(ClearButton, { size: size, handleClear: handleClear });
4032
- }
4029
+ var TextInput = withFormControl(function (props) {
4030
+ // the disabled styles coming from the FormControlConfig weren't getting applied to the TextInput, so they're added inline instead
4031
+ var leftElement = props.leftElement, rightElement = props.rightElement, inputRef = props.inputRef; props.isFieldInline; var domProps = __rest(props, ["leftElement", "rightElement", "inputRef", "isFieldInline"]);
4033
4032
  return (React__default["default"].createElement(react.InputGroup, null,
4034
4033
  leftElement ? React__default["default"].createElement(react.InputLeftElement, { children: leftElement, h: "100%" }) : null,
4035
- React__default["default"].createElement(react.Input, __assign({}, domProps, { ref: inputRef, size: size, value: value })),
4034
+ React__default["default"].createElement(react.Input, __assign({ ref: inputRef }, domProps)),
4036
4035
  rightElement ? React__default["default"].createElement(react.InputRightElement, { children: rightElement, h: "100%" }) : null));
4037
4036
  });
4038
4037
  var WrappedTextInput = React.forwardRef(function (props, ref) { return (React__default["default"].createElement(TextInput, __assign({ inputRef: ref }, props))); });
@@ -16121,6 +16120,7 @@ exports.RatingDot = RatingDot;
16121
16120
  exports.RatingDots = RatingDots;
16122
16121
  exports.Select = WrappedSelect;
16123
16122
  exports.SelectConfig = SelectConfig;
16123
+ exports.Spinner = Spinner;
16124
16124
  exports.Switch = WrappedSwitch;
16125
16125
  exports.SwitchConfig = SwitchConfig;
16126
16126
  exports.Tab = Tab;