bianic-ui 2.5.0 → 2.5.1-beta.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.
@@ -13,8 +13,9 @@ export interface TextAreaProps extends ComponentPropsWithoutRef<'textarea'> {
13
13
  value?: string;
14
14
  readOnly?: boolean;
15
15
  autoComplete?: string;
16
+ isValid?: boolean | null;
16
17
  }
17
- declare function TextArea({ descText, disabled, id, size, label, placeholder, required, rows, maxLength, value, readOnly, autoComplete, ...props }: TextAreaProps): React.JSX.Element;
18
+ declare function TextArea({ descText, disabled, id, size, label, placeholder, required, rows, maxLength, value, readOnly, autoComplete, isValid, ...props }: TextAreaProps): React.JSX.Element;
18
19
  declare namespace TextArea {
19
20
  var defaultProps: {
20
21
  disabled: boolean;
package/dist/esm/index.js CHANGED
@@ -1550,10 +1550,10 @@ var ContextualButton = forwardRef(function (_a, ref) {
1550
1550
  : 'text-primary-white'
1551
1551
  : textColorConfig[variant];
1552
1552
  var stateColor = stateColorConfig[isSelected ? 'selected' : 'default'];
1553
- return (React.createElement("button", __assign({ ref: ref, className: "bianic-contextual-button box-border flex flex-row items-center rounded-radius-sm border border-transparent p-[1px] outline-none ".concat(stateColor, " ").concat(textColor) }, props, { disabled: disabled }),
1553
+ return (React.createElement("button", __assign({ ref: ref, className: "bianic-contextual-button box-border flex min-h-[22px] flex-row items-center rounded-radius-sm border border-transparent p-[1px] outline-none ".concat(stateColor, " ").concat(textColor) }, props, { disabled: disabled }),
1554
1554
  icon,
1555
- label && (React.createElement("div", { className: "label flex max-h-[46px] items-center px-[5px] text-[12px] leading-none" },
1556
- React.createElement("span", { className: "mr-0.5" }, label),
1555
+ label && (React.createElement("div", { className: "label flex max-h-[46px] items-center gap-x-0.5 px-[5px] text-[12px] leading-none" },
1556
+ React.createElement("span", null, label),
1557
1557
  actionElement))));
1558
1558
  });
1559
1559
 
@@ -2238,7 +2238,7 @@ var styleConfig = {
2238
2238
  iconStyle: '',
2239
2239
  },
2240
2240
  text: {
2241
- fieldStyle: 'pe-8',
2241
+ fieldStyle: '',
2242
2242
  iconStyle: 'pointer-events-none',
2243
2243
  },
2244
2244
  number: {
@@ -2299,9 +2299,13 @@ var TextInput = forwardRef(function (_a, ref) {
2299
2299
  return (React.createElement("div", { className: "bianic-text-input-container bianic-fgc-container group/form flex w-full flex-col gap-y-2 text-bia-black" },
2300
2300
  label && (React.createElement(FormLabel, { htmlFor: id, required: required, readOnly: readOnly }, label)),
2301
2301
  React.createElement("div", { className: "relative w-full ".concat(disabledClass) },
2302
- React.createElement("input", __assign({ className: "bianic-text-input bianic-fgc-target w-full rounded read-only:pointer-events-none read-only:border-bia-grey-light-50 hover:rounded-b-none focus:rounded-b-none focus-visible:outline-none disabled:cursor-not-allowed disabled:border-bia-grey-dark-10 disabled:bg-bia-grey-light-80 disabled:text-bia-grey-active ".concat(extendedInputClassName), disabled: disabled, id: id, placeholder: placeholder || label, readOnly: readOnly, required: required, type: typeVariant, value: value, onChange: function (e) { return onChange(e); }, maxLength: maxLength, autoComplete: autoComplete, ref: ref, style: { paddingRight: "".concat(10 + Number(iconSize), "px") } }, props)),
2303
- React.createElement("div", { className: "absolute inset-y-0 flex items-center pl-3 ".concat(actionElement ? '' : iconStyle, " ").concat(iconPosition, " ").concat(iconSizing) }, iconElement)),
2304
- (descText || maxLength) && (React.createElement("div", { className: "bianic-text-input-desc flex justify-between gap-1 whitespace-nowrap text-xs ".concat(descColor) },
2302
+ React.createElement("input", __assign({ className: "bianic-text-input bianic-fgc-target w-full rounded read-only:pointer-events-none read-only:border-bia-grey-light-50 hover:rounded-b-none focus:rounded-b-none focus-visible:outline-none disabled:cursor-not-allowed disabled:border-bia-grey-dark-10 disabled:bg-bia-grey-light-80 disabled:text-bia-grey-active ".concat(extendedInputClassName), disabled: disabled, id: id, placeholder: placeholder || label, readOnly: readOnly, required: required, type: typeVariant, value: value, onChange: function (e) { return onChange(e); }, maxLength: maxLength, autoComplete: autoComplete, ref: ref, style: {
2303
+ paddingRight: iconElement
2304
+ ? "".concat(10 + Number(iconSize), "px")
2305
+ : undefined,
2306
+ } }, props)),
2307
+ iconElement && (React.createElement("div", { className: "absolute inset-y-0 flex items-center pl-3 ".concat(actionElement ? '' : iconStyle, " ").concat(iconPosition, " ").concat(iconSizing) }, iconElement))),
2308
+ (descText || maxLength) && (React.createElement("div", { className: "bianic-text-input-desc flex justify-between gap-1 text-xs ".concat(descColor) },
2305
2309
  React.createElement("span", null, descText),
2306
2310
  maxLength && (React.createElement("span", null,
2307
2311
  remainWords,
@@ -2378,17 +2382,31 @@ var sizeConfig$a = {
2378
2382
  };
2379
2383
 
2380
2384
  function TextArea(_a) {
2381
- var descText = _a.descText, _b = _a.disabled, disabled = _b === void 0 ? false : _b, id = _a.id, _c = _a.size, size = _c === void 0 ? 'md' : _c, label = _a.label, _d = _a.placeholder, placeholder = _d === void 0 ? '' : _d, required = _a.required, rows = _a.rows, _e = _a.maxLength, maxLength = _e === void 0 ? undefined : _e, value = _a.value, _f = _a.readOnly, readOnly = _f === void 0 ? false : _f, _g = _a.autoComplete, autoComplete = _g === void 0 ? 'off' : _g, props = __rest(_a, ["descText", "disabled", "id", "size", "label", "placeholder", "required", "rows", "maxLength", "value", "readOnly", "autoComplete"]);
2385
+ var descText = _a.descText, _b = _a.disabled, disabled = _b === void 0 ? false : _b, id = _a.id, _c = _a.size, size = _c === void 0 ? 'md' : _c, label = _a.label, _d = _a.placeholder, placeholder = _d === void 0 ? '' : _d, required = _a.required, rows = _a.rows, _e = _a.maxLength, maxLength = _e === void 0 ? undefined : _e, value = _a.value, _f = _a.readOnly, readOnly = _f === void 0 ? false : _f, _g = _a.autoComplete, autoComplete = _g === void 0 ? 'off' : _g, _h = _a.isValid, isValid = _h === void 0 ? null : _h, props = __rest(_a, ["descText", "disabled", "id", "size", "label", "placeholder", "required", "rows", "maxLength", "value", "readOnly", "autoComplete", "isValid"]);
2382
2386
  var inputRow = rows !== null && rows !== void 0 ? rows : 4;
2383
2387
  var inputClass = sizeConfig$a[size].inputClass;
2384
2388
  var remainWords = maxLength ? maxLength - (value ? value.length : 0) : 0;
2389
+ var isExistValidation = isValid !== null;
2390
+ var descColor = 'text-primary-cool';
2391
+ if (!disabled && isExistValidation && isValid)
2392
+ descColor = 'text-bia-green';
2393
+ if (!disabled && isExistValidation && !isValid)
2394
+ descColor = 'text-bia-red';
2395
+ var bottomBorderColor = 'enabled:hover:border-b-bia-blue enabled:focus:border-b-bia-blue';
2396
+ if (!disabled && isExistValidation && isValid)
2397
+ bottomBorderColor =
2398
+ 'enabled:hover:border-b-bia-green enabled:focus:border-b-bia-green';
2399
+ if (!disabled && isExistValidation && !isValid)
2400
+ bottomBorderColor =
2401
+ 'enabled:hover:border-b-bia-red enabled:focus:border-b-bia-red';
2385
2402
  var disabledClass = disabled ? 'cursor-not-allowed' : '';
2403
+ var extendedInputClassName = "".concat(inputClass, " ").concat(bottomBorderColor);
2386
2404
  return (React.createElement("div", { className: "field-group group/form flex w-full flex-col gap-y-2" },
2387
2405
  label && (React.createElement(FormLabel, { htmlFor: id, required: required, readOnly: readOnly }, label)),
2388
2406
  React.createElement("div", { className: "relative h-fit w-full min-w-[250px] ".concat(disabledClass) },
2389
2407
  React.createElement(ResizeIcon, { className: "absolute bottom-[11px] right-[5px]" }),
2390
- React.createElement("textarea", __assign({ className: "field bianic-text-area w-full rounded border border-bia-grey-dark-10 bg-primary-white p-2.5 read-only:pointer-events-none focus-visible:outline-none enabled:hover:rounded-b-none enabled:hover:border-b-bia-blue enabled:focus:rounded-b-none enabled:focus:border-b-bia-blue disabled:cursor-not-allowed disabled:bg-bia-grey-light-80 disabled:text-bia-grey-active ".concat(inputClass), rows: inputRow, id: id, placeholder: placeholder, disabled: disabled, maxLength: maxLength, value: value, autoComplete: autoComplete, readOnly: readOnly }, props))),
2391
- React.createElement("div", { className: "desc flex justify-between gap-1 text-xs text-primary-cool" },
2408
+ React.createElement("textarea", __assign({ className: "field bianic-text-area w-full rounded border border-bia-grey-dark-10 bg-primary-white p-2.5 read-only:pointer-events-none focus-visible:outline-none enabled:hover:rounded-b-none enabled:focus:rounded-b-none disabled:cursor-not-allowed disabled:bg-bia-grey-light-80 disabled:text-bia-grey-active ".concat(extendedInputClassName), rows: inputRow, id: id, placeholder: placeholder, disabled: disabled, maxLength: maxLength, value: value, autoComplete: autoComplete, readOnly: readOnly }, props))),
2409
+ React.createElement("div", { className: "desc flex justify-between gap-1 text-xs ".concat(descColor) },
2392
2410
  descText && React.createElement("span", null, descText),
2393
2411
  maxLength && (React.createElement("span", null,
2394
2412
  remainWords,
@@ -3649,8 +3667,8 @@ var colorConfig$1 = {
3649
3667
  };
3650
3668
  var sizeConfig$3 = {
3651
3669
  container: 'min-h-fit p-5 text-wrap',
3652
- 'form-sm': 'h-[30px] whitespace-nowrap px-2.5',
3653
- 'form-md': 'h-10 whitespace-nowrap px-2.5',
3670
+ 'form-sm': 'min-h-[30px] h-fit whitespace-nowrap p-[7px]',
3671
+ 'form-md': 'min-h-[40px] h-fit whitespace-nowrap px-2.5 py-[9.5px]',
3654
3672
  };
3655
3673
 
3656
3674
  var InfoPanel = function (_a) {