@veracity/vui 1.5.0-beta.0 → 1.5.0-rc.0

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 (72) hide show
  1. package/dist/cjs/accordion/accordion.types.d.ts +1 -1
  2. package/dist/cjs/accordion/accordion.types.d.ts.map +1 -1
  3. package/dist/cjs/accordion/accordionItem.js +1 -1
  4. package/dist/cjs/buttonGroup/buttonGroup.d.ts.map +1 -1
  5. package/dist/cjs/buttonGroup/buttonGroup.js +4 -0
  6. package/dist/cjs/input/consts.d.ts +3 -0
  7. package/dist/cjs/input/consts.d.ts.map +1 -1
  8. package/dist/cjs/input/consts.js +4 -1
  9. package/dist/cjs/input/helpText.d.ts +5 -0
  10. package/dist/cjs/input/helpText.d.ts.map +1 -0
  11. package/dist/cjs/input/helpText.js +36 -0
  12. package/dist/cjs/input/input.d.ts +2 -0
  13. package/dist/cjs/input/input.d.ts.map +1 -1
  14. package/dist/cjs/input/input.js +8 -4
  15. package/dist/cjs/input/input.types.d.ts +9 -1
  16. package/dist/cjs/input/input.types.d.ts.map +1 -1
  17. package/dist/cjs/list/listText.d.ts.map +1 -1
  18. package/dist/cjs/list/listText.js +1 -1
  19. package/dist/cjs/select/select.d.ts.map +1 -1
  20. package/dist/cjs/select/select.js +1 -1
  21. package/dist/cjs/select/select.types.d.ts +2 -0
  22. package/dist/cjs/select/select.types.d.ts.map +1 -1
  23. package/dist/cjs/select/selectButton.d.ts.map +1 -1
  24. package/dist/cjs/select/selectButton.js +1 -1
  25. package/dist/cjs/select/selectOption.d.ts.map +1 -1
  26. package/dist/cjs/select/selectOption.js +2 -2
  27. package/dist/cjs/utils/styles.d.ts +7 -0
  28. package/dist/cjs/utils/styles.d.ts.map +1 -1
  29. package/dist/cjs/utils/styles.js +10 -11
  30. package/dist/esm/accordion/accordion.types.d.ts +1 -1
  31. package/dist/esm/accordion/accordion.types.d.ts.map +1 -1
  32. package/dist/esm/accordion/accordionItem.js +1 -1
  33. package/dist/esm/buttonGroup/buttonGroup.d.ts.map +1 -1
  34. package/dist/esm/buttonGroup/buttonGroup.js +4 -0
  35. package/dist/esm/input/consts.d.ts +3 -0
  36. package/dist/esm/input/consts.d.ts.map +1 -1
  37. package/dist/esm/input/consts.js +3 -0
  38. package/dist/esm/input/helpText.d.ts +5 -0
  39. package/dist/esm/input/helpText.d.ts.map +1 -0
  40. package/dist/esm/input/helpText.js +19 -0
  41. package/dist/esm/input/input.d.ts +2 -0
  42. package/dist/esm/input/input.d.ts.map +1 -1
  43. package/dist/esm/input/input.js +9 -5
  44. package/dist/esm/input/input.types.d.ts +9 -1
  45. package/dist/esm/input/input.types.d.ts.map +1 -1
  46. package/dist/esm/list/listText.d.ts.map +1 -1
  47. package/dist/esm/list/listText.js +2 -2
  48. package/dist/esm/select/select.d.ts.map +1 -1
  49. package/dist/esm/select/select.js +2 -1
  50. package/dist/esm/select/select.types.d.ts +2 -0
  51. package/dist/esm/select/select.types.d.ts.map +1 -1
  52. package/dist/esm/select/selectButton.d.ts.map +1 -1
  53. package/dist/esm/select/selectButton.js +2 -2
  54. package/dist/esm/select/selectOption.d.ts.map +1 -1
  55. package/dist/esm/select/selectOption.js +3 -3
  56. package/dist/esm/utils/styles.d.ts +7 -0
  57. package/dist/esm/utils/styles.d.ts.map +1 -1
  58. package/dist/esm/utils/styles.js +9 -10
  59. package/package.json +1 -1
  60. package/src/accordion/accordion.types.ts +1 -1
  61. package/src/accordion/accordionItem.tsx +1 -1
  62. package/src/buttonGroup/buttonGroup.tsx +4 -0
  63. package/src/input/consts.ts +4 -0
  64. package/src/input/helpText.tsx +36 -0
  65. package/src/input/input.tsx +18 -9
  66. package/src/input/input.types.ts +11 -0
  67. package/src/list/listText.tsx +11 -2
  68. package/src/select/select.tsx +2 -1
  69. package/src/select/select.types.ts +2 -0
  70. package/src/select/selectButton.tsx +6 -2
  71. package/src/select/selectOption.tsx +4 -2
  72. package/src/utils/styles.ts +12 -10
@@ -16,7 +16,7 @@ export declare type AccordionItemProps = ListItemProps & {
16
16
  children?: ReactNode;
17
17
  content?: ReactNode;
18
18
  collapsed?: boolean;
19
- title?: string;
19
+ title?: string | ReactNode;
20
20
  onToggle?: (event: AccordionOnToggleEvent) => void;
21
21
  };
22
22
  export declare type AccordionItemArrowProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"accordion.types.d.ts","sourceRoot":"","sources":["../../../src/accordion/accordion.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,cAAc,GAAG,WAAW,GACtC,YAAY,CAAC,WAAW,CAAC,GAAG;IAC1B,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAC7B,CAAA;AAEH,oBAAY,eAAe,GAAG,MAAM,GAAG,MAAM,CAAA;AAE7C,oBAAY,sBAAsB,GAAG;IACnC,EAAE,EAAE,eAAe,CAAA;IACnB,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,oBAAY,kBAAkB,GAAG,aAAa,GAAG;IAE/C,EAAE,EAAE,eAAe,CAAA;IAEnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,QAAQ,CAAC,EAAE,SAAS,CAAA;IAEpB,OAAO,CAAC,EAAE,SAAS,CAAA;IAEnB,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;CACnD,CAAA;AAED,oBAAY,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAA"}
1
+ {"version":3,"file":"accordion.types.d.ts","sourceRoot":"","sources":["../../../src/accordion/accordion.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,cAAc,GAAG,WAAW,GACtC,YAAY,CAAC,WAAW,CAAC,GAAG;IAC1B,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAC7B,CAAA;AAEH,oBAAY,eAAe,GAAG,MAAM,GAAG,MAAM,CAAA;AAE7C,oBAAY,sBAAsB,GAAG;IACnC,EAAE,EAAE,eAAe,CAAA;IACnB,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,oBAAY,kBAAkB,GAAG,aAAa,GAAG;IAE/C,EAAE,EAAE,eAAe,CAAA;IAEnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,QAAQ,CAAC,EAAE,SAAS,CAAA;IAEpB,OAAO,CAAC,EAAE,SAAS,CAAA;IAEnB,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAE1B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;CACnD,CAAA;AAED,oBAAY,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAA"}
@@ -59,7 +59,7 @@ const AccordionItem = (props) => {
59
59
  };
60
60
  return (react_1.default.createElement(list_1.ListItem, Object.assign({ borderBottom: "1px solid grey.40", className: (0, utils_1.cs)('vui-accordion-item', className), disabled: disabled, flexDirection: "column", h: "auto", hoverBg: "blue.10", id: `${id}`, w: "100%" }, rest),
61
61
  react_1.default.createElement(box_1.Box, { cursor: disabled ? 'not-allowed' : 'pointer', justifyContent: "space-between", onClick: toggle, py: 2, w: "100%" },
62
- react_1.default.createElement(box_1.Box, { fontWeight: "500 " }, title),
62
+ react_1.default.createElement(box_1.Box, { fontWeight: typeof title === 'string' ? '500' : 'inherit' }, title),
63
63
  react_1.default.createElement(box_1.Box, null,
64
64
  react_1.default.createElement(accordionItemArrow_1.default, { collapsed: collapsedInternal }))),
65
65
  !collapsedInternal && (react_1.default.createElement(box_1.Box, { mb: 2, mt: 2, w: "100%" }, children !== null && children !== void 0 ? children : content))));
@@ -1 +1 @@
1
- {"version":3,"file":"buttonGroup.d.ts","sourceRoot":"","sources":["../../../src/buttonGroup/buttonGroup.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAItD,eAAO,MAAM,eAAe;;sBAA2D,MAAM;SAuC5F,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,yDAiBtB,CAAA;AAEF,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"buttonGroup.d.ts","sourceRoot":"","sources":["../../../src/buttonGroup/buttonGroup.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAItD,eAAO,MAAM,eAAe;;sBAA2D,MAAM;SA2C5F,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,yDAiBtB,CAAA;AAEF,eAAe,WAAW,CAAA"}
@@ -75,6 +75,10 @@ exports.ButtonGroupBase = core_1.styled.divBox `
75
75
  border-color: ${p => core_1.th.color(p.innerBorderColor)};
76
76
  }
77
77
 
78
+ > *:disabled {
79
+ border-color: disabled.border;
80
+ }
81
+
78
82
  //
79
83
  > .${utils_1.activeClassName} {
80
84
  background-color: ${p => core_1.th.color(`${p.colorScheme}.${utils_1.activeItemShade}`)};
@@ -1,3 +1,6 @@
1
1
  import { InputStateMapping } from './input.types';
2
+ export declare const greyLightColor = "grey.10";
3
+ export declare const greyColor = "grey.80";
4
+ export declare const redColor = "red.80";
2
5
  export declare const inputStateMapping: InputStateMapping;
3
6
  //# sourceMappingURL=consts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../src/input/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEjD,eAAO,MAAM,iBAAiB,EAAE,iBAuB/B,CAAA"}
1
+ {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../src/input/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEjD,eAAO,MAAM,cAAc,YAAY,CAAA;AACvC,eAAO,MAAM,SAAS,YAAY,CAAA;AAClC,eAAO,MAAM,QAAQ,WAAW,CAAA;AAEhC,eAAO,MAAM,iBAAiB,EAAE,iBAuB/B,CAAA"}
@@ -1,6 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.inputStateMapping = void 0;
3
+ exports.inputStateMapping = exports.redColor = exports.greyColor = exports.greyLightColor = void 0;
4
+ exports.greyLightColor = 'grey.10';
5
+ exports.greyColor = 'grey.80';
6
+ exports.redColor = 'red.80';
4
7
  exports.inputStateMapping = {
5
8
  error: {
6
9
  colorScheme: 'red',
@@ -0,0 +1,5 @@
1
+ import { HelpTextProps } from './input.types';
2
+ /** Displaying help text bellow an input.. */
3
+ export declare const HelpText: import("../core").VuiComponent<"div", HelpTextProps>;
4
+ export default HelpText;
5
+ //# sourceMappingURL=helpText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpText.d.ts","sourceRoot":"","sources":["../../../src/input/helpText.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE7C,6CAA6C;AAC7C,eAAO,MAAM,QAAQ,sDAsBnB,CAAA;AAEF,eAAe,QAAQ,CAAA"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ var __rest = (this && this.__rest) || function (s, e) {
3
+ var t = {};
4
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
5
+ t[p] = s[p];
6
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
7
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
8
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
9
+ t[p[i]] = s[p[i]];
10
+ }
11
+ return t;
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.HelpText = void 0;
18
+ const react_1 = __importDefault(require("react"));
19
+ const core_1 = require("../core");
20
+ const icon_1 = __importDefault(require("../icon"));
21
+ const p_1 = __importDefault(require("../p"));
22
+ const utils_1 = require("../utils");
23
+ const consts_1 = require("./consts");
24
+ const context_1 = require("./context");
25
+ /** Displaying help text bellow an input.. */
26
+ exports.HelpText = (0, core_1.vui)((props, ref) => {
27
+ const { className, children, isError } = props, rest = __rest(props, ["className", "children", "isError"]);
28
+ const inputProps = (0, context_1.useInputContext)();
29
+ const mergedProps = Object.assign(Object.assign({}, inputProps), props);
30
+ const styles = (0, core_1.useStyleConfig)('Input', mergedProps);
31
+ const color = isError ? consts_1.redColor : consts_1.greyColor;
32
+ return (react_1.default.createElement(p_1.default, Object.assign({ className: (0, utils_1.cs)('vui-inputHelpText', className), color: color, display: "flex", py: 1, ref: ref }, styles.helpText, rest),
33
+ isError && react_1.default.createElement(icon_1.default, { mr: 1, name: "falExclamationTriangle", pathFill: consts_1.redColor, size: "sm" }),
34
+ children));
35
+ });
36
+ exports.default = exports.HelpText;
@@ -1,4 +1,5 @@
1
1
  import { VuiComponent } from '../core';
2
+ import HelpText from './helpText';
2
3
  import { InputProps } from './input.types';
3
4
  import InputIcon from './inputIcon';
4
5
  import InputInput from './inputInput';
@@ -11,6 +12,7 @@ export declare const InputBase: import("styled-components").StyledComponent<"div
11
12
  export declare const Input: VuiComponent<"div", InputProps> & {
12
13
  Icon: typeof InputIcon;
13
14
  Input: typeof InputInput;
15
+ HelpText: typeof HelpText;
14
16
  };
15
17
  export default Input;
16
18
  //# sourceMappingURL=input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/input/input.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+B,YAAY,EAAE,MAAM,SAAS,CAAA;AAMnE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,UAAU,MAAM,cAAc,CAAA;AAErC,eAAO,MAAM,SAAS,+HAiBrB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK;UAkHV,gBAAgB;WACf,iBAAiB;CACzB,CAAA;AAKD,eAAe,KAAK,CAAA"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/input/input.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+B,YAAY,EAAE,MAAM,SAAS,CAAA;AAMnE,OAAO,QAAQ,MAAM,YAAY,CAAA;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,UAAU,MAAM,cAAc,CAAA;AAErC,eAAO,MAAM,SAAS,+HAiBrB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK;UAwHV,gBAAgB;WACf,iBAAiB;cACd,eAAe;CAC1B,CAAA;AAMD,eAAe,KAAK,CAAA"}
@@ -45,6 +45,7 @@ const utils_1 = require("../utils");
45
45
  const consts_1 = require("./consts");
46
46
  const context_1 = require("./context");
47
47
  const helpers_1 = require("./helpers");
48
+ const helpText_1 = __importDefault(require("./helpText"));
48
49
  const inputIcon_1 = __importDefault(require("./inputIcon"));
49
50
  const inputInput_1 = __importDefault(require("./inputInput"));
50
51
  exports.InputBase = core_1.styled.divBox `
@@ -73,7 +74,7 @@ exports.InputBase = core_1.styled.divBox `
73
74
  exports.Input = (0, core_1.vui)((props, ref) => {
74
75
  var _a, _b, _c, _d;
75
76
  const [count, setCount] = (0, react_1.useState)((0, helpers_1.getInitialCount)(props));
76
- const { autoComplete, autoFocus, children, className, colorScheme, defaultValue, disabled, iconLeft, iconRight, id, input, inputProps, inputRef, isInvalid, itemLeft, itemRight, max, maxLength, min, name, onBlur, onChange: onChangeProp, onFocus, pattern, placeholder, readOnly, required, showCount, size, state = '', stateMapping, step, type = 'text', value, variant } = props, rest = __rest(props, ["autoComplete", "autoFocus", "children", "className", "colorScheme", "defaultValue", "disabled", "iconLeft", "iconRight", "id", "input", "inputProps", "inputRef", "isInvalid", "itemLeft", "itemRight", "max", "maxLength", "min", "name", "onBlur", "onChange", "onFocus", "pattern", "placeholder", "readOnly", "required", "showCount", "size", "state", "stateMapping", "step", "type", "value", "variant"]);
77
+ const { autoComplete, autoFocus, children, className, colorScheme, defaultValue, disabled, errorText, iconLeft, iconRight, id, input, inputProps, inputRef, isInvalid, itemLeft, itemRight, helpText, max, maxLength, min, name, onBlur, onChange: onChangeProp, onFocus, pattern, placeholder, readOnly, required, showCount, size, state = '', stateMapping, step, type = 'text', value, variant } = props, rest = __rest(props, ["autoComplete", "autoFocus", "children", "className", "colorScheme", "defaultValue", "disabled", "errorText", "iconLeft", "iconRight", "id", "input", "inputProps", "inputRef", "isInvalid", "itemLeft", "itemRight", "helpText", "max", "maxLength", "min", "name", "onBlur", "onChange", "onFocus", "pattern", "placeholder", "readOnly", "required", "showCount", "size", "state", "stateMapping", "step", "type", "value", "variant"]);
77
78
  const states = Object.assign(Object.assign({}, consts_1.inputStateMapping), stateMapping);
78
79
  const computedColorScheme = (0, utils_1.filterUndefined)({
79
80
  colorScheme: (_a = colorScheme !== null && colorScheme !== void 0 ? colorScheme : (isInvalid ? 'red' : undefined)) !== null && _a !== void 0 ? _a : (_b = states[state]) === null || _b === void 0 ? void 0 : _b.colorScheme
@@ -86,7 +87,7 @@ exports.Input = (0, core_1.vui)((props, ref) => {
86
87
  }
87
88
  const aliasedProps = (0, utils_1.filterUndefined)({
88
89
  'aria-disabled': disabled,
89
- bg: readOnly ? 'grey.10' : undefined,
90
+ bg: readOnly ? consts_1.greyLightColor : undefined,
90
91
  focusWithinBorderColor: !readOnly ? 'transparent' : undefined,
91
92
  focusWithinRingColor: readOnly ? 'transparent' : undefined
92
93
  });
@@ -117,11 +118,14 @@ exports.Input = (0, core_1.vui)((props, ref) => {
117
118
  (0, utils_1.isString)(iconRight) ? react_1.default.createElement(inputIcon_1.default, { mr: 1, name: iconRight }) : iconRight,
118
119
  itemRight,
119
120
  state && react_1.default.createElement(inputIcon_1.default, Object.assign({ mr: 1 }, (_d = states[state]) === null || _d === void 0 ? void 0 : _d.iconProps)),
120
- showCount && (react_1.default.createElement(t_1.T, { className: "vui-inputCount", color: "grey.80", position: "absolute", right: 0, size: "sm", top: "calc(100% + 1px)" },
121
+ showCount && (react_1.default.createElement(t_1.T, { className: "vui-inputCount", color: consts_1.greyColor, position: "absolute", right: 0, size: "sm", top: "calc(100% + 1px)" },
121
122
  count,
122
123
  " / ",
123
- maxLength)))));
124
+ maxLength))),
125
+ !!helpText && react_1.default.createElement(helpText_1.default, null, helpText),
126
+ !!errorText && react_1.default.createElement(helpText_1.default, { isError: true }, errorText)));
124
127
  });
125
128
  exports.Input.Icon = inputIcon_1.default;
126
129
  exports.Input.Input = inputInput_1.default;
130
+ exports.Input.HelpText = helpText_1.default;
127
131
  exports.default = exports.Input;
@@ -1,5 +1,6 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { IconProp, IconProps } from '../icon';
3
+ import { PProps } from '../p';
3
4
  import { SystemProps } from '../system';
4
5
  import { ThemingProps } from '../theme';
5
6
  import { ChangeEventHandler, FocusEventHandler, PropsOf } from '../utils';
@@ -15,6 +16,8 @@ export declare type InputProps = SystemProps & ThemingProps<'Input'> & {
15
16
  defaultValue?: number | string;
16
17
  /** Passed to the inner input. */
17
18
  disabled?: boolean;
19
+ /** Socket displaying error text bellow an input. */
20
+ errorText?: string | React.ReactNode;
18
21
  /** Socket displaying an icon on the left. */
19
22
  iconLeft?: IconProp | JSX.Element;
20
23
  /** Socket displaying an icon on the right. */
@@ -31,6 +34,8 @@ export declare type InputProps = SystemProps & ThemingProps<'Input'> & {
31
34
  itemLeft?: React.ReactNode;
32
35
  /** Socket displaying a custom element on the right. */
33
36
  itemRight?: React.ReactNode;
37
+ /** Socket displaying help text bellow an input. */
38
+ helpText?: React.ReactNode | string;
34
39
  /** Passed to the inner input. */
35
40
  max?: number | string;
36
41
  /** Passed to the inner input. */
@@ -66,6 +71,9 @@ export declare type InputProps = SystemProps & ThemingProps<'Input'> & {
66
71
  /** Passed to the inner input. */
67
72
  value?: number | string;
68
73
  };
74
+ export declare type HelpTextProps = PProps & {
75
+ isError?: boolean;
76
+ };
69
77
  export declare type InputState = 'default' | 'error' | 'loading' | 'success';
70
78
  export declare type InputStateMapping = Record<string, {
71
79
  colorScheme?: InputProps['colorScheme'];
@@ -1 +1 @@
1
- {"version":3,"file":"input.types.d.ts","sourceRoot":"","sources":["../../../src/input/input.types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"input.types.d.ts","sourceRoot":"","sources":["../../../src/input/input.types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"listText.d.ts","sourceRoot":"","sources":["../../../src/list/listText.tsx"],"names":[],"mappings":"AAGA,OAAU,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAIhC,yCAAyC;AACzC,eAAO,MAAM,QAAQ,gDAKnB,CAAA;AAEF,eAAe,QAAQ,CAAA"}
1
+ {"version":3,"file":"listText.d.ts","sourceRoot":"","sources":["../../../src/list/listText.tsx"],"names":[],"mappings":"AAGA,OAAU,EAAE,MAAM,EAAE,MAAM,MAAM,CAAA;AAIhC,yCAAyC;AACzC,eAAO,MAAM,QAAQ,gDAcnB,CAAA;AAEF,eAAe,QAAQ,CAAA"}
@@ -24,6 +24,6 @@ const context_1 = require("./context");
24
24
  exports.ListText = (0, core_1.vui)((props, ref) => {
25
25
  const { className } = props, rest = __rest(props, ["className"]);
26
26
  const styles = (0, core_1.useStyleConfig)('List', (0, context_1.useListContext)());
27
- return react_1.default.createElement(t_1.default, Object.assign({ className: (0, utils_1.cs)('vui-listText', className), fontSize: "inherit", ref: ref }, styles.text, rest));
27
+ return (react_1.default.createElement(t_1.default, Object.assign({ className: (0, utils_1.cs)('vui-listText', className), fontSize: "inherit", ref: ref }, utils_1.ellipsisOverflow, styles.text, rest)));
28
28
  });
29
29
  exports.default = exports.ListText;
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/select/select.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAO5C;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,eAoDxC;yBApDe,MAAM;;;;;;;;;AA2DtB,eAAe,MAAM,CAAA"}
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../src/select/select.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAO5C;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,KAAK,EAAE,WAAW,eAqDxC;yBArDe,MAAM;;;;;;;;;AA4DtB,eAAe,MAAM,CAAA"}
@@ -49,7 +49,7 @@ function Select(props) {
49
49
  react_1.default.createElement(popover_1.Popover, Object.assign({ matchWidth: true }, rest),
50
50
  react_1.default.createElement(react_1.default.Fragment, null, selectButton !== null && selectButton !== void 0 ? selectButton : react_1.default.createElement(selectButton_1.default, null),
51
51
  react_1.default.createElement(selectContent_1.default, null,
52
- react_1.default.createElement(selectGroup_1.default, null, children !== null && children !== void 0 ? children : (_a = options === null || options === void 0 ? void 0 : options.map) === null || _a === void 0 ? void 0 : _a.call(options, option => react_1.default.createElement(selectOption_1.default, Object.assign({ key: option.value }, option)))))))));
52
+ react_1.default.createElement(selectGroup_1.default, null, children !== null && children !== void 0 ? children : (_a = options === null || options === void 0 ? void 0 : options.map) === null || _a === void 0 ? void 0 : _a.call(options, option => react_1.default.createElement(selectOption_1.default, Object.assign({ key: option.value, title: option.text }, option)))))))));
53
53
  }
54
54
  exports.Select = Select;
55
55
  Select.Button = selectButton_1.default;
@@ -36,6 +36,8 @@ export declare type SelectOptionData = {
36
36
  export declare type SelectOptionProps = ListItemProps & {
37
37
  /** Currently selected value. Can be a string/number or array of those when using 'isMultiple'. */
38
38
  value?: SelectValue;
39
+ /** Hover title text. */
40
+ title?: string;
39
41
  };
40
42
  export declare type SelectValue = number | string;
41
43
  //# sourceMappingURL=select.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"select.types.d.ts","sourceRoot":"","sources":["../../../src/select/select.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAElD,oBAAY,iBAAiB,GAAG,WAAW,CAAA;AAE3C,oBAAY,kBAAkB,GAAG,mBAAmB,CAAA;AAEpD,oBAAY,aAAa,GAAG,IAAI,CAC9B,WAAW,EACX,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAC/G,GACC,mBAAmB,CAAA;AAErB,oBAAY,gBAAgB,GAAG,SAAS,CAAA;AAExC,oBAAY,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,GAC9C,YAAY,GACZ,cAAc,GAAG;IACf,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,0FAA0F;IAC1F,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,+DAA+D;IAC/D,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC5B,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,iCAAiC;IACjC,YAAY,CAAC,EAAE,SAAS,CAAA;CACzB,CAAA;AAEH,oBAAY,gBAAgB,GAAG;IAC7B,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,+BAA+B;IAC/B,KAAK,EAAE,WAAW,CAAA;CACnB,CAAA;AAED,oBAAY,iBAAiB,GAAG,aAAa,GAAG;IAC9C,mGAAmG;IACnG,KAAK,CAAC,EAAE,WAAW,CAAA;CACpB,CAAA;AAED,oBAAY,WAAW,GAAG,MAAM,GAAG,MAAM,CAAA"}
1
+ {"version":3,"file":"select.types.d.ts","sourceRoot":"","sources":["../../../src/select/select.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAClD,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9D,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAElD,oBAAY,iBAAiB,GAAG,WAAW,CAAA;AAE3C,oBAAY,kBAAkB,GAAG,mBAAmB,CAAA;AAEpD,oBAAY,aAAa,GAAG,IAAI,CAC9B,WAAW,EACX,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,MAAM,GAAG,SAAS,CAC/G,GACC,mBAAmB,CAAA;AAErB,oBAAY,gBAAgB,GAAG,SAAS,CAAA;AAExC,oBAAY,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,GAC9C,YAAY,GACZ,cAAc,GAAG;IACf,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,+DAA+D;IAC/D,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,0FAA0F;IAC1F,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,+DAA+D;IAC/D,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC5B,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,yDAAyD;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,iCAAiC;IACjC,YAAY,CAAC,EAAE,SAAS,CAAA;CACzB,CAAA;AAEH,oBAAY,gBAAgB,GAAG;IAC7B,uCAAuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,+BAA+B;IAC/B,KAAK,EAAE,WAAW,CAAA;CACnB,CAAA;AAED,oBAAY,iBAAiB,GAAG,aAAa,GAAG;IAC9C,mGAAmG;IACnG,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,wBAAwB;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,oBAAY,WAAW,GAAG,MAAM,GAAG,MAAM,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"selectButton.d.ts","sourceRoot":"","sources":["../../../src/select/selectButton.tsx"],"names":[],"mappings":"AASA;;;;GAIG;AACH,eAAO,MAAM,YAAY,2EAgDvB,CAAA;AAEF,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"selectButton.d.ts","sourceRoot":"","sources":["../../../src/select/selectButton.tsx"],"names":[],"mappings":"AASA;;;;GAIG;AACH,eAAO,MAAM,YAAY,2EAoDvB,CAAA;AAEF,eAAe,YAAY,CAAA"}
@@ -73,6 +73,6 @@ exports.SelectButton = (0, core_1.vui)((props, ref) => {
73
73
  hoverBorderColor: 'red.80'
74
74
  }
75
75
  : {};
76
- return (react_1.default.createElement(popover_1.PopoverTrigger, Object.assign({ as: button_1.LineButton, bg: "white", className: (0, utils_1.cs)('vui-selectButton', className), colorScheme: "prussian", disabled: disabled, focusRing: 2, fontWeight: "regular", iconRight: react_1.default.createElement(button_1.default.Icon, { color: iconColor, ml: "auto", name: "falAngleDown" }), isFullWidth: true, px: 1, ref: ref, text: react_1.default.createElement(button_1.default.Text, { color: textColor }, text), userSelect: "text" }, styles.button, readOnlyProps, isInvalidProps, rest)));
76
+ return (react_1.default.createElement(popover_1.PopoverTrigger, Object.assign({ as: button_1.LineButton, bg: "white", className: (0, utils_1.cs)('vui-selectButton', className), colorScheme: "prussian", disabled: disabled, focusRing: 2, fontWeight: "regular", iconRight: react_1.default.createElement(button_1.default.Icon, { color: iconColor, ml: "auto", name: "falAngleDown" }), isFullWidth: true, px: 1, ref: ref, text: react_1.default.createElement(button_1.default.Text, Object.assign({ color: textColor }, utils_1.ellipsisOverflow), text), userSelect: "text" }, styles.button, readOnlyProps, isInvalidProps, rest)));
77
77
  });
78
78
  exports.default = exports.SelectButton;
@@ -1 +1 @@
1
- {"version":3,"file":"selectOption.d.ts","sourceRoot":"","sources":["../../../src/select/selectOption.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElD;;;;GAIG;AACH,eAAO,MAAM,YAAY,yDA6CvB,CAAA;AAEF,eAAe,YAAY,CAAA"}
1
+ {"version":3,"file":"selectOption.d.ts","sourceRoot":"","sources":["../../../src/select/selectOption.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElD;;;;GAIG;AACH,eAAO,MAAM,YAAY,yDA+CvB,CAAA;AAEF,eAAe,YAAY,CAAA"}
@@ -29,7 +29,7 @@ const context_1 = require("./context");
29
29
  */
30
30
  exports.SelectOption = (0, core_1.vui)((props, ref) => {
31
31
  var _a, _b;
32
- const { children, className, disabled, onClick: onClickProp, value: valueProp } = props, rest = __rest(props, ["children", "className", "disabled", "onClick", "value"]);
32
+ const { children, className, disabled, title, onClick: onClickProp, value: valueProp } = props, rest = __rest(props, ["children", "className", "disabled", "title", "onClick", "value"]);
33
33
  const { instance } = (_a = (0, popover_1.usePopoverContext)()) !== null && _a !== void 0 ? _a : {};
34
34
  const { isMultiple, name, onChange, value } = (_b = (0, context_1.useSelectContext)()) !== null && _b !== void 0 ? _b : {};
35
35
  const styles = (0, core_1.useStyleConfig)('Select', (0, context_1.useSelectContext)());
@@ -47,7 +47,7 @@ exports.SelectOption = (0, core_1.vui)((props, ref) => {
47
47
  onChange === null || onChange === void 0 ? void 0 : onChange(clonedEvent);
48
48
  !isMultiple && (instance === null || instance === void 0 ? void 0 : instance.hide());
49
49
  });
50
- return (react_1.default.createElement(list_1.ListItem, Object.assign({ className: (0, utils_1.cs)('vui-selectOption', className), disabled: disabled, isInteractive: true, isSelected: isSelected, onClick: onClick, ref: ref, value: valueProp }, styles.item, rest), children !== null && children !== void 0 ? children : (isMultiple && (react_1.default.createElement(react_1.default.Fragment, null,
50
+ return (react_1.default.createElement(list_1.ListItem, Object.assign({ className: (0, utils_1.cs)('vui-selectOption', className), disabled: disabled, isInteractive: true, isSelected: isSelected, onClick: onClick, ref: ref, title: title, value: valueProp }, styles.item, rest, utils_1.ellipsisOverflow), children !== null && children !== void 0 ? children : (isMultiple && (react_1.default.createElement(react_1.default.Fragment, null,
51
51
  react_1.default.createElement(checkbox_1.Checkbox, { checked: isSelected, disabled: disabled, mr: 1 }),
52
52
  react_1.default.createElement(list_1.List.Text, null, props.text))))));
53
53
  });
@@ -1,5 +1,12 @@
1
+ import { Property } from 'csstype';
1
2
  /** Concatenates individual className arguments and returns a single string. */
2
3
  export declare function cs(...classNames: any[]): string;
3
4
  /** Converts hex color value to rgb with optional alpha property. */
4
5
  export declare function hexToRGBA(hex: string, alpha?: number): string;
6
+ /** Styling to add ellipsis for long texts. */
7
+ export declare const ellipsisOverflow: {
8
+ overflow: string;
9
+ textOverflow: string;
10
+ whiteSpace: Property.WhiteSpace;
11
+ };
5
12
  //# sourceMappingURL=styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/utils/styles.ts"],"names":[],"mappings":"AAAA,+EAA+E;AAC/E,wBAAgB,EAAE,CAAC,GAAG,UAAU,EAAE,GAAG,EAAE,UAEtC;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,UAuBpD"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../src/utils/styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAA;AAElC,+EAA+E;AAC/E,wBAAgB,EAAE,CAAC,GAAG,UAAU,EAAE,GAAG,EAAE,UAEtC;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,UAgBpD;AAED,8CAA8C;AAC9C,eAAO,MAAM,gBAAgB;;;;CAI5B,CAAA"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.hexToRGBA = exports.cs = void 0;
3
+ exports.ellipsisOverflow = exports.hexToRGBA = exports.cs = void 0;
4
4
  /** Concatenates individual className arguments and returns a single string. */
5
5
  function cs(...classNames) {
6
6
  return classNames.filter(Boolean).join(' ');
@@ -9,23 +9,22 @@ exports.cs = cs;
9
9
  /** Converts hex color value to rgb with optional alpha property. */
10
10
  function hexToRGBA(hex, alpha) {
11
11
  let hexStr = hex;
12
- if (hexStr.charAt(0) === '#') {
12
+ if (hexStr.charAt(0) === '#')
13
13
  hexStr = hexStr.slice(1);
14
- }
15
- if (hexStr.length < 4) {
14
+ if (hexStr.length < 4)
16
15
  hexStr = hexStr
17
16
  .split('')
18
17
  .map(char => char + char)
19
18
  .join('');
20
- }
21
19
  const r = parseInt(hexStr.slice(0, 2), 16);
22
20
  const g = parseInt(hexStr.slice(2, 4), 16);
23
21
  const b = parseInt(hexStr.slice(4, 6), 16);
24
- if (alpha !== undefined) {
25
- return `rgba(${r}, ${g}, ${b}, ${alpha})`;
26
- }
27
- else {
28
- return `rgb(${r}, ${g}, ${b})`;
29
- }
22
+ return alpha !== undefined ? `rgba(${r}, ${g}, ${b}, ${alpha})` : `rgb(${r}, ${g}, ${b})`;
30
23
  }
31
24
  exports.hexToRGBA = hexToRGBA;
25
+ /** Styling to add ellipsis for long texts. */
26
+ exports.ellipsisOverflow = {
27
+ overflow: 'hidden',
28
+ textOverflow: 'ellipsis',
29
+ whiteSpace: 'nowrap'
30
+ };
@@ -16,7 +16,7 @@ export declare type AccordionItemProps = ListItemProps & {
16
16
  children?: ReactNode;
17
17
  content?: ReactNode;
18
18
  collapsed?: boolean;
19
- title?: string;
19
+ title?: string | ReactNode;
20
20
  onToggle?: (event: AccordionOnToggleEvent) => void;
21
21
  };
22
22
  export declare type AccordionItemArrowProps = {
@@ -1 +1 @@
1
- {"version":3,"file":"accordion.types.d.ts","sourceRoot":"","sources":["../../../src/accordion/accordion.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,cAAc,GAAG,WAAW,GACtC,YAAY,CAAC,WAAW,CAAC,GAAG;IAC1B,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAC7B,CAAA;AAEH,oBAAY,eAAe,GAAG,MAAM,GAAG,MAAM,CAAA;AAE7C,oBAAY,sBAAsB,GAAG;IACnC,EAAE,EAAE,eAAe,CAAA;IACnB,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,oBAAY,kBAAkB,GAAG,aAAa,GAAG;IAE/C,EAAE,EAAE,eAAe,CAAA;IAEnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,QAAQ,CAAC,EAAE,SAAS,CAAA;IAEpB,OAAO,CAAC,EAAE,SAAS,CAAA;IAEnB,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;CACnD,CAAA;AAED,oBAAY,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAA"}
1
+ {"version":3,"file":"accordion.types.d.ts","sourceRoot":"","sources":["../../../src/accordion/accordion.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAA;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AAEvC,oBAAY,cAAc,GAAG,WAAW,GACtC,YAAY,CAAC,WAAW,CAAC,GAAG;IAC1B,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAA;CAC7B,CAAA;AAEH,oBAAY,eAAe,GAAG,MAAM,GAAG,MAAM,CAAA;AAE7C,oBAAY,sBAAsB,GAAG;IACnC,EAAE,EAAE,eAAe,CAAA;IACnB,SAAS,EAAE,OAAO,CAAA;CACnB,CAAA;AAED,oBAAY,kBAAkB,GAAG,aAAa,GAAG;IAE/C,EAAE,EAAE,eAAe,CAAA;IAEnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB,QAAQ,CAAC,EAAE,SAAS,CAAA;IAEpB,OAAO,CAAC,EAAE,SAAS,CAAA;IAEnB,SAAS,CAAC,EAAE,OAAO,CAAA;IAEnB,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAE1B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAA;CACnD,CAAA;AAED,oBAAY,uBAAuB,GAAG;IACpC,SAAS,CAAC,EAAE,OAAO,CAAA;CACpB,CAAA"}
@@ -19,7 +19,7 @@ export const AccordionItem = (props) => {
19
19
  };
20
20
  return (React.createElement(ListItem, { borderBottom: "1px solid grey.40", className: cs('vui-accordion-item', className), disabled: disabled, flexDirection: "column", h: "auto", hoverBg: "blue.10", id: `${id}`, w: "100%", ...rest },
21
21
  React.createElement(Box, { cursor: disabled ? 'not-allowed' : 'pointer', justifyContent: "space-between", onClick: toggle, py: 2, w: "100%" },
22
- React.createElement(Box, { fontWeight: "500 " }, title),
22
+ React.createElement(Box, { fontWeight: typeof title === 'string' ? '500' : 'inherit' }, title),
23
23
  React.createElement(Box, null,
24
24
  React.createElement(AccordionItemArrow, { collapsed: collapsedInternal }))),
25
25
  !collapsedInternal && (React.createElement(Box, { mb: 2, mt: 2, w: "100%" }, children ?? content))));
@@ -1 +1 @@
1
- {"version":3,"file":"buttonGroup.d.ts","sourceRoot":"","sources":["../../../src/buttonGroup/buttonGroup.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAItD,eAAO,MAAM,eAAe;;sBAA2D,MAAM;SAuC5F,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,yDAiBtB,CAAA;AAEF,eAAe,WAAW,CAAA"}
1
+ {"version":3,"file":"buttonGroup.d.ts","sourceRoot":"","sources":["../../../src/buttonGroup/buttonGroup.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAItD,eAAO,MAAM,eAAe;;sBAA2D,MAAM;SA2C5F,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,yDAiBtB,CAAA;AAEF,eAAe,WAAW,CAAA"}
@@ -38,6 +38,10 @@ export const ButtonGroupBase = styled.divBox `
38
38
  border-color: ${p => th.color(p.innerBorderColor)};
39
39
  }
40
40
 
41
+ > *:disabled {
42
+ border-color: disabled.border;
43
+ }
44
+
41
45
  //
42
46
  > .${activeClassName} {
43
47
  background-color: ${p => th.color(`${p.colorScheme}.${activeItemShade}`)};
@@ -1,3 +1,6 @@
1
1
  import { InputStateMapping } from './input.types';
2
+ export declare const greyLightColor = "grey.10";
3
+ export declare const greyColor = "grey.80";
4
+ export declare const redColor = "red.80";
2
5
  export declare const inputStateMapping: InputStateMapping;
3
6
  //# sourceMappingURL=consts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../src/input/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEjD,eAAO,MAAM,iBAAiB,EAAE,iBAuB/B,CAAA"}
1
+ {"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../src/input/consts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEjD,eAAO,MAAM,cAAc,YAAY,CAAA;AACvC,eAAO,MAAM,SAAS,YAAY,CAAA;AAClC,eAAO,MAAM,QAAQ,WAAW,CAAA;AAEhC,eAAO,MAAM,iBAAiB,EAAE,iBAuB/B,CAAA"}
@@ -1,3 +1,6 @@
1
+ export const greyLightColor = 'grey.10';
2
+ export const greyColor = 'grey.80';
3
+ export const redColor = 'red.80';
1
4
  export const inputStateMapping = {
2
5
  error: {
3
6
  colorScheme: 'red',
@@ -0,0 +1,5 @@
1
+ import { HelpTextProps } from './input.types';
2
+ /** Displaying help text bellow an input.. */
3
+ export declare const HelpText: import("../core").VuiComponent<"div", HelpTextProps>;
4
+ export default HelpText;
5
+ //# sourceMappingURL=helpText.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpText.d.ts","sourceRoot":"","sources":["../../../src/input/helpText.tsx"],"names":[],"mappings":"AAQA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAE7C,6CAA6C;AAC7C,eAAO,MAAM,QAAQ,sDAsBnB,CAAA;AAEF,eAAe,QAAQ,CAAA"}
@@ -0,0 +1,19 @@
1
+ import React from 'react';
2
+ import { useStyleConfig, vui } from '../core';
3
+ import Icon from '../icon';
4
+ import P from '../p';
5
+ import { cs } from '../utils';
6
+ import { greyColor, redColor } from './consts';
7
+ import { useInputContext } from './context';
8
+ /** Displaying help text bellow an input.. */
9
+ export const HelpText = vui((props, ref) => {
10
+ const { className, children, isError, ...rest } = props;
11
+ const inputProps = useInputContext();
12
+ const mergedProps = { ...inputProps, ...props };
13
+ const styles = useStyleConfig('Input', mergedProps);
14
+ const color = isError ? redColor : greyColor;
15
+ return (React.createElement(P, { className: cs('vui-inputHelpText', className), color: color, display: "flex", py: 1, ref: ref, ...styles.helpText, ...rest },
16
+ isError && React.createElement(Icon, { mr: 1, name: "falExclamationTriangle", pathFill: redColor, size: "sm" }),
17
+ children));
18
+ });
19
+ export default HelpText;
@@ -1,4 +1,5 @@
1
1
  import { VuiComponent } from '../core';
2
+ import HelpText from './helpText';
2
3
  import { InputProps } from './input.types';
3
4
  import InputIcon from './inputIcon';
4
5
  import InputInput from './inputInput';
@@ -11,6 +12,7 @@ export declare const InputBase: import("styled-components").StyledComponent<"div
11
12
  export declare const Input: VuiComponent<"div", InputProps> & {
12
13
  Icon: typeof InputIcon;
13
14
  Input: typeof InputInput;
15
+ HelpText: typeof HelpText;
14
16
  };
15
17
  export default Input;
16
18
  //# sourceMappingURL=input.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/input/input.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+B,YAAY,EAAE,MAAM,SAAS,CAAA;AAMnE,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,UAAU,MAAM,cAAc,CAAA;AAErC,eAAO,MAAM,SAAS,+HAiBrB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK;UAkHV,gBAAgB;WACf,iBAAiB;CACzB,CAAA;AAKD,eAAe,KAAK,CAAA"}
1
+ {"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../../src/input/input.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA+B,YAAY,EAAE,MAAM,SAAS,CAAA;AAMnE,OAAO,QAAQ,MAAM,YAAY,CAAA;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,SAAS,MAAM,aAAa,CAAA;AACnC,OAAO,UAAU,MAAM,cAAc,CAAA;AAErC,eAAO,MAAM,SAAS,+HAiBrB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,KAAK;UAwHV,gBAAgB;WACf,iBAAiB;cACd,eAAe;CAC1B,CAAA;AAMD,eAAe,KAAK,CAAA"}
@@ -2,9 +2,10 @@ import React, { useMemo, useState } from 'react';
2
2
  import { styled, useStyleConfig, vui } from '../core';
3
3
  import { T } from '../t';
4
4
  import { cs, filterUndefined, isString } from '../utils';
5
- import { inputStateMapping } from './consts';
5
+ import { greyColor, greyLightColor, inputStateMapping } from './consts';
6
6
  import { InputProvider } from './context';
7
7
  import { getInitialCount } from './helpers';
8
+ import HelpText from './helpText';
8
9
  import InputIcon from './inputIcon';
9
10
  import InputInput from './inputInput';
10
11
  export const InputBase = styled.divBox `
@@ -32,7 +33,7 @@ export const InputBase = styled.divBox `
32
33
  */
33
34
  export const Input = vui((props, ref) => {
34
35
  const [count, setCount] = useState(getInitialCount(props));
35
- const { autoComplete, autoFocus, children, className, colorScheme, defaultValue, disabled, iconLeft, iconRight, id, input, inputProps, inputRef, isInvalid, itemLeft, itemRight, max, maxLength, min, name, onBlur, onChange: onChangeProp, onFocus, pattern, placeholder, readOnly, required, showCount, size, state = '', stateMapping, step, type = 'text', value, variant, ...rest } = props;
36
+ const { autoComplete, autoFocus, children, className, colorScheme, defaultValue, disabled, errorText, iconLeft, iconRight, id, input, inputProps, inputRef, isInvalid, itemLeft, itemRight, helpText, max, maxLength, min, name, onBlur, onChange: onChangeProp, onFocus, pattern, placeholder, readOnly, required, showCount, size, state = '', stateMapping, step, type = 'text', value, variant, ...rest } = props;
36
37
  const states = { ...inputStateMapping, ...stateMapping };
37
38
  const computedColorScheme = filterUndefined({
38
39
  colorScheme: colorScheme ?? (isInvalid ? 'red' : undefined) ?? states[state]?.colorScheme
@@ -45,7 +46,7 @@ export const Input = vui((props, ref) => {
45
46
  }
46
47
  const aliasedProps = filterUndefined({
47
48
  'aria-disabled': disabled,
48
- bg: readOnly ? 'grey.10' : undefined,
49
+ bg: readOnly ? greyLightColor : undefined,
49
50
  focusWithinBorderColor: !readOnly ? 'transparent' : undefined,
50
51
  focusWithinRingColor: readOnly ? 'transparent' : undefined
51
52
  });
@@ -77,11 +78,14 @@ export const Input = vui((props, ref) => {
77
78
  isString(iconRight) ? React.createElement(InputIcon, { mr: 1, name: iconRight }) : iconRight,
78
79
  itemRight,
79
80
  state && React.createElement(InputIcon, { mr: 1, ...states[state]?.iconProps }),
80
- showCount && (React.createElement(T, { className: "vui-inputCount", color: "grey.80", position: "absolute", right: 0, size: "sm", top: "calc(100% + 1px)" },
81
+ showCount && (React.createElement(T, { className: "vui-inputCount", color: greyColor, position: "absolute", right: 0, size: "sm", top: "calc(100% + 1px)" },
81
82
  count,
82
83
  " / ",
83
- maxLength)))));
84
+ maxLength))),
85
+ !!helpText && React.createElement(HelpText, null, helpText),
86
+ !!errorText && React.createElement(HelpText, { isError: true }, errorText)));
84
87
  });
85
88
  Input.Icon = InputIcon;
86
89
  Input.Input = InputInput;
90
+ Input.HelpText = HelpText;
87
91
  export default Input;
@@ -1,5 +1,6 @@
1
- /// <reference types="react" />
1
+ import React from 'react';
2
2
  import { IconProp, IconProps } from '../icon';
3
+ import { PProps } from '../p';
3
4
  import { SystemProps } from '../system';
4
5
  import { ThemingProps } from '../theme';
5
6
  import { ChangeEventHandler, FocusEventHandler, PropsOf } from '../utils';
@@ -15,6 +16,8 @@ export declare type InputProps = SystemProps & ThemingProps<'Input'> & {
15
16
  defaultValue?: number | string;
16
17
  /** Passed to the inner input. */
17
18
  disabled?: boolean;
19
+ /** Socket displaying error text bellow an input. */
20
+ errorText?: string | React.ReactNode;
18
21
  /** Socket displaying an icon on the left. */
19
22
  iconLeft?: IconProp | JSX.Element;
20
23
  /** Socket displaying an icon on the right. */
@@ -31,6 +34,8 @@ export declare type InputProps = SystemProps & ThemingProps<'Input'> & {
31
34
  itemLeft?: React.ReactNode;
32
35
  /** Socket displaying a custom element on the right. */
33
36
  itemRight?: React.ReactNode;
37
+ /** Socket displaying help text bellow an input. */
38
+ helpText?: React.ReactNode | string;
34
39
  /** Passed to the inner input. */
35
40
  max?: number | string;
36
41
  /** Passed to the inner input. */
@@ -66,6 +71,9 @@ export declare type InputProps = SystemProps & ThemingProps<'Input'> & {
66
71
  /** Passed to the inner input. */
67
72
  value?: number | string;
68
73
  };
74
+ export declare type HelpTextProps = PProps & {
75
+ isError?: boolean;
76
+ };
69
77
  export declare type InputState = 'default' | 'error' | 'loading' | 'success';
70
78
  export declare type InputStateMapping = Record<string, {
71
79
  colorScheme?: InputProps['colorScheme'];