@synerise/ds-subtle-form 1.1.58 → 1.1.59

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 (34) hide show
  1. package/CHANGELOG.md +4 -0
  2. package/dist/Elements/DatePicker/DatePicker.d.ts +2 -2
  3. package/dist/Elements/DatePicker/DatePicker.js +64 -95
  4. package/dist/Elements/DatePicker/DatePicker.styles.d.ts +2 -2
  5. package/dist/Elements/DatePicker/DatePicker.styles.js +9 -11
  6. package/dist/Elements/DatePicker/DatePicker.types.d.ts +3 -3
  7. package/dist/Elements/DatePicker/DatePicker.types.js +1 -1
  8. package/dist/Elements/DatePicker/utils.js +9 -5
  9. package/dist/Elements/Field/Field.d.ts +2 -2
  10. package/dist/Elements/Field/Field.js +41 -65
  11. package/dist/Elements/Input/Input.d.ts +2 -2
  12. package/dist/Elements/Input/Input.js +44 -73
  13. package/dist/Elements/Input/Input.types.d.ts +2 -2
  14. package/dist/Elements/Input/Input.types.js +1 -1
  15. package/dist/Elements/Select/Select.d.ts +2 -2
  16. package/dist/Elements/Select/Select.js +40 -77
  17. package/dist/Elements/Select/Select.styles.d.ts +1 -1
  18. package/dist/Elements/Select/Select.styles.js +6 -5
  19. package/dist/Elements/Select/Select.types.d.ts +2 -2
  20. package/dist/Elements/Select/Select.types.js +1 -1
  21. package/dist/Elements/TextArea/TextArea.d.ts +2 -2
  22. package/dist/Elements/TextArea/TextArea.js +68 -108
  23. package/dist/Elements/TextArea/TextArea.types.d.ts +2 -2
  24. package/dist/Elements/TextArea/TextArea.types.js +1 -1
  25. package/dist/SubtleForm.d.ts +5 -5
  26. package/dist/SubtleForm.js +9 -7
  27. package/dist/SubtleForm.styles.d.ts +8 -8
  28. package/dist/SubtleForm.styles.js +34 -51
  29. package/dist/SubtleForm.types.d.ts +2 -2
  30. package/dist/SubtleForm.types.js +1 -1
  31. package/dist/index.js +4 -1
  32. package/dist/modules.d.js +1 -1
  33. package/dist/modules.d.ts +0 -0
  34. package/package.json +11 -11
package/CHANGELOG.md CHANGED
@@ -3,6 +3,10 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.1.59](https://github.com/Synerise/synerise-design/compare/@synerise/ds-subtle-form@1.1.58...@synerise/ds-subtle-form@1.1.59) (2026-03-24)
7
+
8
+ **Note:** Version bump only for package @synerise/ds-subtle-form
9
+
6
10
  ## [1.1.58](https://github.com/Synerise/synerise-design/compare/@synerise/ds-subtle-form@1.1.57...@synerise/ds-subtle-form@1.1.58) (2026-03-20)
7
11
 
8
12
  **Note:** Version bump only for package @synerise/ds-subtle-form
@@ -1,5 +1,5 @@
1
- import React from 'react';
2
- import { type SubtleDatePickerProps } from './DatePicker.types';
1
+ import { default as React } from 'react';
2
+ import { SubtleDatePickerProps } from './DatePicker.types';
3
3
  declare const SubtleDatePicker: {
4
4
  ({ value, suffix, suffixTooltip, format: dateFormat, label, children, labelTooltip, placeholder, onApply, onClear, errorText, error, activeProp, onDropdownVisibleChange, disabled, ...rest }: SubtleDatePickerProps): React.JSX.Element;
5
5
  displayName: string;
@@ -1,113 +1,82 @@
1
- var _excluded = ["value", "suffix", "suffixTooltip", "format", "label", "children", "labelTooltip", "placeholder", "onApply", "onClear", "errorText", "error", "activeProp", "onDropdownVisibleChange", "disabled"];
2
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
3
- function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
4
- import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
5
- import { useTheme } from '@synerise/ds-core';
6
- import DatePicker from '@synerise/ds-date-picker';
7
- import format from '@synerise/ds-date-picker/dist/format';
8
- import Icon, { CalendarM } from '@synerise/ds-icon';
9
- import Tooltip from '@synerise/ds-tooltip';
10
- import * as S from '../../SubtleForm.styles';
11
- import { MaskedDatePlaceholder, SelectContainer } from './DatePicker.styles';
12
- import { getFormattingString, replaceLettersWithUnderscore } from './utils';
13
- var SubtleDatePicker = function SubtleDatePicker(_ref) {
14
- var value = _ref.value,
15
- suffix = _ref.suffix,
16
- suffixTooltip = _ref.suffixTooltip,
17
- dateFormat = _ref.format,
18
- label = _ref.label,
19
- children = _ref.children,
20
- labelTooltip = _ref.labelTooltip,
21
- placeholder = _ref.placeholder,
22
- _onApply = _ref.onApply,
23
- onClear = _ref.onClear,
24
- errorText = _ref.errorText,
25
- error = _ref.error,
26
- activeProp = _ref.activeProp,
27
- _onDropdownVisibleChange = _ref.onDropdownVisibleChange,
28
- disabled = _ref.disabled,
29
- rest = _objectWithoutPropertiesLoose(_ref, _excluded);
30
- var _useState = useState(false),
31
- active = _useState[0],
32
- setActive = _useState[1];
33
- var _useState2 = useState(false),
34
- blurred = _useState2[0],
35
- setBlurred = _useState2[1];
36
- var containerRef = useRef(null);
37
- var theme = useTheme();
38
- var hasError = error || !!errorText;
39
- var showTime = rest.showTime;
40
- var dateFormattingString = useMemo(function () {
41
- return getFormattingString(dateFormat, showTime);
42
- }, [dateFormat, showTime]);
43
- var formatValue = useCallback(function (val) {
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { useState, useRef, useMemo, useCallback, useEffect } from "react";
3
+ import { useTheme } from "@synerise/ds-core";
4
+ import DatePicker from "@synerise/ds-date-picker";
5
+ import format from "@synerise/ds-date-picker/dist/format";
6
+ import Icon, { CalendarM } from "@synerise/ds-icon";
7
+ import Tooltip from "@synerise/ds-tooltip";
8
+ import { Subtle, SubtleFormField, Inactive, MainContent, Suffix } from "../../SubtleForm.styles.js";
9
+ import { SelectContainer, MaskedDatePlaceholder } from "./DatePicker.styles.js";
10
+ import { getFormattingString, replaceLettersWithUnderscore } from "./utils.js";
11
+ const SubtleDatePicker = ({
12
+ value,
13
+ suffix,
14
+ suffixTooltip,
15
+ format: dateFormat,
16
+ label,
17
+ children,
18
+ labelTooltip,
19
+ placeholder,
20
+ onApply,
21
+ onClear,
22
+ errorText,
23
+ error,
24
+ activeProp,
25
+ onDropdownVisibleChange,
26
+ disabled,
27
+ ...rest
28
+ }) => {
29
+ const [active, setActive] = useState(false);
30
+ const [blurred, setBlurred] = useState(false);
31
+ const containerRef = useRef(null);
32
+ const theme = useTheme();
33
+ const hasError = error || !!errorText;
34
+ const {
35
+ showTime
36
+ } = rest;
37
+ const dateFormattingString = useMemo(() => getFormattingString(dateFormat, showTime), [dateFormat, showTime]);
38
+ const formatValue = useCallback((val) => {
44
39
  if (!val) {
45
- return '';
40
+ return "";
46
41
  }
47
42
  return format(val, dateFormattingString);
48
43
  }, [dateFormattingString]);
49
- var getDisplayText = useCallback(function () {
44
+ const getDisplayText = useCallback(() => {
50
45
  return value && !!String(value).trim() ? formatValue(value) : placeholder;
51
46
  }, [value, placeholder, formatValue]);
52
- useEffect(function () {
47
+ useEffect(() => {
53
48
  if (error) {
54
49
  setActive(false);
55
50
  setBlurred(true);
56
51
  }
57
52
  }, [error, errorText]);
58
- var handleActivate = useCallback(function () {
53
+ const handleActivate = useCallback(() => {
59
54
  setActive(true);
60
55
  setBlurred(false);
61
56
  }, []);
62
- var handleDeactivate = useCallback(function () {
57
+ const handleDeactivate = useCallback(() => {
63
58
  setActive(false);
64
59
  setBlurred(true);
65
60
  }, []);
66
- return /*#__PURE__*/React.createElement(S.Subtle, {
67
- className: "ds-subtle-form"
68
- }, /*#__PURE__*/React.createElement(S.SubtleFormField, {
69
- active: active || hasError,
70
- label: label,
71
- tooltip: labelTooltip
72
- }, /*#__PURE__*/React.createElement(SelectContainer, {
73
- disabled: !!disabled,
74
- ref: containerRef,
75
- className: "ds-subtle-date-picker",
76
- active: active || hasError
77
- }, active && !blurred || hasError ? /*#__PURE__*/React.createElement(DatePicker, _extends({}, rest, {
78
- value: value,
79
- onApply: function onApply(date) {
80
- handleDeactivate();
81
- _onApply && _onApply(date);
82
- },
83
- onClear: !disabled ? function () {
84
- handleDeactivate();
85
- onClear && onClear();
86
- } : undefined,
87
- error: error,
88
- errorText: errorText,
89
- autoFocus: !hasError,
90
- format: dateFormat,
91
- onDropdownVisibleChange: function onDropdownVisibleChange(visible) {
92
- setActive(visible);
93
- setBlurred(!visible);
94
- _onDropdownVisibleChange && _onDropdownVisibleChange(visible);
95
- }
96
- })) : /*#__PURE__*/React.createElement(S.Inactive, {
97
- disabled: disabled,
98
- onClick: !disabled ? handleActivate : undefined,
99
- blurred: blurred,
100
- mask: !value
101
- }, /*#__PURE__*/React.createElement(S.MainContent, {
102
- hasMargin: true
103
- }, getDisplayText(), !disabled && /*#__PURE__*/React.createElement(MaskedDatePlaceholder, null, replaceLettersWithUnderscore(dateFormattingString))), !active && /*#__PURE__*/React.createElement(S.Suffix, {
104
- select: true
105
- }, /*#__PURE__*/React.createElement(Tooltip, {
106
- title: suffixTooltip
107
- }, suffix != null ? suffix : /*#__PURE__*/React.createElement(Icon, {
108
- component: /*#__PURE__*/React.createElement(CalendarM, null),
109
- color: theme.palette['grey-600']
110
- })))))));
61
+ return /* @__PURE__ */ jsx(Subtle, { className: "ds-subtle-form", children: /* @__PURE__ */ jsx(SubtleFormField, { active: active || hasError, label, tooltip: labelTooltip, children: /* @__PURE__ */ jsx(SelectContainer, { disabled: !!disabled, ref: containerRef, className: "ds-subtle-date-picker", active: active || hasError, children: active && !blurred || hasError ? /* @__PURE__ */ jsx(DatePicker, { ...rest, value, onApply: (date) => {
62
+ handleDeactivate();
63
+ onApply && onApply(date);
64
+ }, onClear: !disabled ? () => {
65
+ handleDeactivate();
66
+ onClear && onClear();
67
+ } : void 0, error, errorText, autoFocus: !hasError, format: dateFormat, onDropdownVisibleChange: (visible) => {
68
+ setActive(visible);
69
+ setBlurred(!visible);
70
+ onDropdownVisibleChange && onDropdownVisibleChange(visible);
71
+ } }) : /* @__PURE__ */ jsxs(Inactive, { disabled, onClick: !disabled ? handleActivate : void 0, blurred, mask: !value, children: [
72
+ /* @__PURE__ */ jsxs(MainContent, { hasMargin: true, children: [
73
+ getDisplayText(),
74
+ !disabled && /* @__PURE__ */ jsx(MaskedDatePlaceholder, { children: replaceLettersWithUnderscore(dateFormattingString) })
75
+ ] }),
76
+ !active && /* @__PURE__ */ jsx(Suffix, { select: true, children: /* @__PURE__ */ jsx(Tooltip, { title: suffixTooltip, children: suffix ?? /* @__PURE__ */ jsx(Icon, { component: /* @__PURE__ */ jsx(CalendarM, {}), color: theme.palette["grey-600"] }) }) })
77
+ ] }) }) }) });
78
+ };
79
+ SubtleDatePicker.displayName = "SubtleDatePicker";
80
+ export {
81
+ SubtleDatePicker as default
111
82
  };
112
- SubtleDatePicker.displayName = 'SubtleDatePicker';
113
- export default SubtleDatePicker;
@@ -1,7 +1,7 @@
1
- export declare const SelectContainer: import("styled-components").StyledComponent<"div", any, {
1
+ export declare const SelectContainer: import('styled-components').StyledComponent<"div", any, {
2
2
  active: boolean;
3
3
  disabled: boolean;
4
4
  }, never>;
5
- export declare const MaskedDatePlaceholder: import("styled-components").StyledComponent<"div", any, {
5
+ export declare const MaskedDatePlaceholder: import('styled-components').StyledComponent<"div", any, {
6
6
  disabled?: boolean;
7
7
  }, never>;
@@ -1,15 +1,13 @@
1
- import styled, { css } from 'styled-components';
2
- export var SelectContainer = styled.div.withConfig({
1
+ import styled, { css } from "styled-components";
2
+ const SelectContainer = /* @__PURE__ */ styled.div.withConfig({
3
3
  displayName: "DatePickerstyles__SelectContainer",
4
4
  componentId: "sc-xiwxgz-0"
5
- })(["position:relative;min-height:32px;width:100%;", " > div{margin:0;}", ""], function (props) {
6
- return props.active && css(["margin:-2px 0 0 -1px;"]);
7
- }, function (props) {
8
- return !!props.disabled && css(["&&{cursor:not-allowed;}"]);
9
- });
10
- export var MaskedDatePlaceholder = styled.div.withConfig({
5
+ })(["position:relative;min-height:32px;width:100%;", " > div{margin:0;}", ""], (props) => props.active && css(["margin:-2px 0 0 -1px;"]), (props) => !!props.disabled && css(["&&{cursor:not-allowed;}"]));
6
+ const MaskedDatePlaceholder = /* @__PURE__ */ styled.div.withConfig({
11
7
  displayName: "DatePickerstyles__MaskedDatePlaceholder",
12
8
  componentId: "sc-xiwxgz-1"
13
- })(["font-size:13px;color:transparent;position:absolute;left:0;top:8px;transition:", ";"], function (props) {
14
- return props.disabled ? 'none' : 'left 0.1s ease-in 0.2s, color 0.1s ease-in 0.2s';
15
- });
9
+ })(["font-size:13px;color:transparent;position:absolute;left:0;top:8px;transition:", ";"], (props) => props.disabled ? "none" : "left 0.1s ease-in 0.2s, color 0.1s ease-in 0.2s");
10
+ export {
11
+ MaskedDatePlaceholder,
12
+ SelectContainer
13
+ };
@@ -1,6 +1,6 @@
1
- import type { ReactNode } from 'react';
2
- import { type DatePickerProps as DsDatePickerProps } from '@synerise/ds-date-picker';
3
- import { type SubtleFieldProps } from '../../SubtleForm.types';
1
+ import { ReactNode } from 'react';
2
+ import { DatePickerProps as DsDatePickerProps } from '@synerise/ds-date-picker';
3
+ import { SubtleFieldProps } from '../../SubtleForm.types';
4
4
  export type SubtleDatePickerProps = {
5
5
  activeProp?: boolean;
6
6
  placeholder?: string;
@@ -1 +1 @@
1
- export {};
1
+
@@ -1,9 +1,13 @@
1
- export var replaceLettersWithUnderscore = function replaceLettersWithUnderscore(input) {
2
- return input.replace(/[a-zA-Z]/g, '_ ');
1
+ const replaceLettersWithUnderscore = (input) => {
2
+ return input.replace(/[a-zA-Z]/g, "_ ");
3
3
  };
4
- export var getFormattingString = function getFormattingString(formatProp, showTime) {
4
+ const getFormattingString = (formatProp, showTime) => {
5
5
  if (!formatProp) {
6
- return showTime ? 'dd-MM-yyyy, HH:mm' : 'dd-MM-yyyy';
6
+ return showTime ? "dd-MM-yyyy, HH:mm" : "dd-MM-yyyy";
7
7
  }
8
8
  return formatProp;
9
- };
9
+ };
10
+ export {
11
+ getFormattingString,
12
+ replaceLettersWithUnderscore
13
+ };
@@ -1,5 +1,5 @@
1
- import React from 'react';
2
- import { type SubtleFieldProps } from '../../SubtleForm.types';
1
+ import { default as React } from 'react';
2
+ import { SubtleFieldProps } from '../../SubtleForm.types';
3
3
  declare const SubtleField: {
4
4
  ({ disabled, suffix, suffixTooltip, label, labelTooltip, activeElement, inactiveElement, mask, maskVisible, errorText, active: activeProp, }: SubtleFieldProps): React.JSX.Element;
5
5
  displayName: string;
@@ -1,74 +1,50 @@
1
- import React, { useCallback, useEffect, useRef, useState } from 'react';
2
- import { useTheme } from '@synerise/ds-core';
3
- import Icon, { EditS } from '@synerise/ds-icon';
4
- import Tooltip from '@synerise/ds-tooltip';
5
- import { useOnClickOutside } from '@synerise/ds-utils';
6
- import * as S from '../../SubtleForm.styles';
7
- import { MaskedDatePlaceholder } from '../DatePicker/DatePicker.styles';
8
- var SubtleField = function SubtleField(_ref) {
9
- var disabled = _ref.disabled,
10
- suffix = _ref.suffix,
11
- suffixTooltip = _ref.suffixTooltip,
12
- label = _ref.label,
13
- labelTooltip = _ref.labelTooltip,
14
- activeElement = _ref.activeElement,
15
- inactiveElement = _ref.inactiveElement,
16
- mask = _ref.mask,
17
- maskVisible = _ref.maskVisible,
18
- errorText = _ref.errorText,
19
- activeProp = _ref.active;
20
- var _useState = useState(activeProp),
21
- active = _useState[0],
22
- setActive = _useState[1];
23
- var _useState2 = useState(false),
24
- blurred = _useState2[0],
25
- setBlurred = _useState2[1];
26
- var containerRef = useRef(null);
27
- var handleDeactivate = useCallback(function () {
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { useState, useRef, useCallback, useEffect } from "react";
3
+ import { useTheme } from "@synerise/ds-core";
4
+ import Icon, { EditS } from "@synerise/ds-icon";
5
+ import Tooltip from "@synerise/ds-tooltip";
6
+ import { useOnClickOutside } from "@synerise/ds-utils";
7
+ import { Subtle, SubtleFormField, Container, Inactive, MainContent, Suffix } from "../../SubtleForm.styles.js";
8
+ import { MaskedDatePlaceholder } from "../DatePicker/DatePicker.styles.js";
9
+ const SubtleField = ({
10
+ disabled,
11
+ suffix,
12
+ suffixTooltip,
13
+ label,
14
+ labelTooltip,
15
+ activeElement,
16
+ inactiveElement,
17
+ mask,
18
+ maskVisible,
19
+ errorText,
20
+ active: activeProp
21
+ }) => {
22
+ const [active, setActive] = useState(activeProp);
23
+ const [blurred, setBlurred] = useState(false);
24
+ const containerRef = useRef(null);
25
+ const handleDeactivate = useCallback(() => {
28
26
  setActive(false);
29
27
  setBlurred(true);
30
28
  }, []);
31
- var handleActivate = useCallback(function () {
29
+ const handleActivate = useCallback(() => {
32
30
  setActive(true);
33
31
  setBlurred(false);
34
32
  }, []);
35
- var theme = useTheme();
36
- useEffect(function () {
37
- return setActive(activeProp);
38
- }, [activeProp]);
39
- var isActive = Boolean(errorText || active && !blurred && !!activeElement);
40
- useOnClickOutside(containerRef, function () {
33
+ const theme = useTheme();
34
+ useEffect(() => setActive(activeProp), [activeProp]);
35
+ const isActive = Boolean(errorText || active && !blurred && !!activeElement);
36
+ useOnClickOutside(containerRef, () => {
41
37
  handleDeactivate();
42
38
  });
43
- return /*#__PURE__*/React.createElement(S.Subtle, {
44
- className: "ds-subtle-form",
45
- disabled: disabled
46
- }, /*#__PURE__*/React.createElement(S.SubtleFormField, {
47
- active: isActive,
48
- label: label,
49
- tooltip: labelTooltip
50
- }, /*#__PURE__*/React.createElement(S.Container, {
51
- ref: containerRef,
52
- className: "ds-subtle-field",
53
- active: active
54
- }, isActive && activeElement ? activeElement() : /*#__PURE__*/React.createElement(S.Inactive, {
55
- tabIndex: 0,
56
- onFocus: !disabled ? handleActivate : undefined,
57
- onClick: !disabled ? handleActivate : undefined,
58
- onBlur: handleDeactivate,
59
- blurred: blurred,
60
- disabled: disabled,
61
- mask: maskVisible
62
- }, /*#__PURE__*/React.createElement(S.MainContent, {
63
- hasMargin: true
64
- }, inactiveElement && inactiveElement(), !disabled && maskVisible && /*#__PURE__*/React.createElement(MaskedDatePlaceholder, null, mask)), !active && !disabled && /*#__PURE__*/React.createElement(S.Suffix, {
65
- select: true
66
- }, /*#__PURE__*/React.createElement(Tooltip, {
67
- title: suffixTooltip
68
- }, suffix != null ? suffix : /*#__PURE__*/React.createElement(Icon, {
69
- component: /*#__PURE__*/React.createElement(EditS, null),
70
- color: theme.palette['grey-600']
71
- })))))));
39
+ return /* @__PURE__ */ jsx(Subtle, { className: "ds-subtle-form", disabled, children: /* @__PURE__ */ jsx(SubtleFormField, { active: isActive, label, tooltip: labelTooltip, children: /* @__PURE__ */ jsx(Container, { ref: containerRef, className: "ds-subtle-field", active, children: isActive && activeElement ? activeElement() : /* @__PURE__ */ jsxs(Inactive, { tabIndex: 0, onFocus: !disabled ? handleActivate : void 0, onClick: !disabled ? handleActivate : void 0, onBlur: handleDeactivate, blurred, disabled, mask: maskVisible, children: [
40
+ /* @__PURE__ */ jsxs(MainContent, { hasMargin: true, children: [
41
+ inactiveElement && inactiveElement(),
42
+ !disabled && maskVisible && /* @__PURE__ */ jsx(MaskedDatePlaceholder, { children: mask })
43
+ ] }),
44
+ !active && !disabled && /* @__PURE__ */ jsx(Suffix, { select: true, children: /* @__PURE__ */ jsx(Tooltip, { title: suffixTooltip, children: suffix ?? /* @__PURE__ */ jsx(Icon, { component: /* @__PURE__ */ jsx(EditS, {}), color: theme.palette["grey-600"] }) }) })
45
+ ] }) }) }) });
46
+ };
47
+ SubtleField.displayName = "SubtleField";
48
+ export {
49
+ SubtleField as default
72
50
  };
73
- SubtleField.displayName = 'SubtleField';
74
- export default SubtleField;
@@ -1,5 +1,5 @@
1
- import React from 'react';
2
- import { type SubtleInputProps } from './Input.types';
1
+ import { default as React } from 'react';
2
+ import { SubtleInputProps } from './Input.types';
3
3
  declare const SubtleInput: {
4
4
  ({ disabled, value, onChange, placeholder, label, labelTooltip, suffixTooltip, suffix, error, errorText, inputProps, ...rest }: SubtleInputProps): React.JSX.Element;
5
5
  displayName: string;
@@ -1,83 +1,54 @@
1
- var _excluded = ["disabled", "value", "onChange", "placeholder", "label", "labelTooltip", "suffixTooltip", "suffix", "error", "errorText", "inputProps"];
2
- function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
3
- function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
4
- import React, { useCallback, useRef, useState } from 'react';
5
- import { useTheme } from '@synerise/ds-core';
6
- import Icon, { EditS } from '@synerise/ds-icon';
7
- import { Input } from '@synerise/ds-input';
8
- import Tooltip from '@synerise/ds-tooltip';
9
- import * as S from '../../SubtleForm.styles';
10
- import { focusPadding } from '../../SubtleForm.styles';
11
- var SubtleInput = function SubtleInput(_ref) {
12
- var disabled = _ref.disabled,
13
- value = _ref.value,
14
- _onChange = _ref.onChange,
15
- placeholder = _ref.placeholder,
16
- label = _ref.label,
17
- labelTooltip = _ref.labelTooltip,
18
- suffixTooltip = _ref.suffixTooltip,
19
- suffix = _ref.suffix,
20
- error = _ref.error,
21
- errorText = _ref.errorText,
22
- inputProps = _ref.inputProps,
23
- rest = _objectWithoutPropertiesLoose(_ref, _excluded);
24
- var _useState = useState(false),
25
- active = _useState[0],
26
- setActive = _useState[1];
27
- var _useState2 = useState(false),
28
- blurred = _useState2[0],
29
- setBlurred = _useState2[1];
30
- var containerRef = useRef(null);
31
- var theme = useTheme();
32
- var hasError = error || !!errorText;
33
- var handleDeactivate = useCallback(function (event) {
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ import { useState, useRef, useCallback } from "react";
3
+ import { useTheme } from "@synerise/ds-core";
4
+ import Icon, { EditS } from "@synerise/ds-icon";
5
+ import { Input } from "@synerise/ds-input";
6
+ import Tooltip from "@synerise/ds-tooltip";
7
+ import { Subtle, SubtleFormField, Container, focusPadding, Inactive, MainContent, Suffix } from "../../SubtleForm.styles.js";
8
+ const SubtleInput = ({
9
+ disabled,
10
+ value,
11
+ onChange,
12
+ placeholder,
13
+ label,
14
+ labelTooltip,
15
+ suffixTooltip,
16
+ suffix,
17
+ error,
18
+ errorText,
19
+ inputProps,
20
+ ...rest
21
+ }) => {
22
+ const [active, setActive] = useState(false);
23
+ const [blurred, setBlurred] = useState(false);
24
+ const containerRef = useRef(null);
25
+ const theme = useTheme();
26
+ const hasError = error || !!errorText;
27
+ const handleDeactivate = useCallback((event) => {
34
28
  if (inputProps) {
35
- var onBlur = inputProps.onBlur;
29
+ const {
30
+ onBlur
31
+ } = inputProps;
36
32
  onBlur && onBlur(event);
37
33
  }
38
34
  setActive(false);
39
35
  setBlurred(true);
40
36
  }, [inputProps]);
41
- var handleActivate = useCallback(function () {
37
+ const handleActivate = useCallback(() => {
42
38
  setActive(true);
43
39
  setBlurred(false);
44
40
  }, []);
45
- return /*#__PURE__*/React.createElement(S.Subtle, {
46
- className: "ds-subtle-form"
47
- }, /*#__PURE__*/React.createElement(S.SubtleFormField, {
48
- active: active,
49
- label: label,
50
- tooltip: labelTooltip
51
- }, /*#__PURE__*/React.createElement(S.Container, {
52
- ref: containerRef,
53
- className: "ds-subtle-input",
54
- active: active,
55
- disabled: disabled
56
- }, (active || hasError) && !disabled ? /*#__PURE__*/React.createElement(Input, _extends({
57
- autoFocus: !hasError && !disabled,
58
- disabled: disabled,
59
- onChange: function onChange(event) {
60
- _onChange && _onChange(event.currentTarget.value);
61
- },
62
- onBlur: !disabled ? handleDeactivate : undefined,
63
- value: value,
64
- style: {
65
- margin: 0,
66
- padding: focusPadding
67
- },
68
- placeholder: placeholder,
69
- error: error,
70
- errorText: errorText
71
- }, rest, inputProps)) : /*#__PURE__*/React.createElement(S.Inactive, {
72
- onClick: !disabled ? handleActivate : undefined,
73
- blurred: blurred,
74
- disabled: disabled
75
- }, /*#__PURE__*/React.createElement(S.MainContent, null, value && !!value.trim() ? value : placeholder), /*#__PURE__*/React.createElement(S.Suffix, null, /*#__PURE__*/React.createElement(Tooltip, {
76
- title: suffixTooltip
77
- }, suffix != null ? suffix : /*#__PURE__*/React.createElement(Icon, {
78
- component: /*#__PURE__*/React.createElement(EditS, null),
79
- color: theme.palette['grey-600']
80
- })))))));
41
+ return /* @__PURE__ */ jsx(Subtle, { className: "ds-subtle-form", children: /* @__PURE__ */ jsx(SubtleFormField, { active, label, tooltip: labelTooltip, children: /* @__PURE__ */ jsx(Container, { ref: containerRef, className: "ds-subtle-input", active, disabled, children: (active || hasError) && !disabled ? /* @__PURE__ */ jsx(Input, { autoFocus: !hasError && !disabled, disabled, onChange: (event) => {
42
+ onChange && onChange(event.currentTarget.value);
43
+ }, onBlur: !disabled ? handleDeactivate : void 0, value, style: {
44
+ margin: 0,
45
+ padding: focusPadding
46
+ }, placeholder, error, errorText, ...rest, ...inputProps }) : /* @__PURE__ */ jsxs(Inactive, { onClick: !disabled ? handleActivate : void 0, blurred, disabled, children: [
47
+ /* @__PURE__ */ jsx(MainContent, { children: value && !!value.trim() ? value : placeholder }),
48
+ /* @__PURE__ */ jsx(Suffix, { children: /* @__PURE__ */ jsx(Tooltip, { title: suffixTooltip, children: suffix ?? /* @__PURE__ */ jsx(Icon, { component: /* @__PURE__ */ jsx(EditS, {}), color: theme.palette["grey-600"] }) }) })
49
+ ] }) }) }) });
50
+ };
51
+ SubtleInput.displayName = "SubtleInput";
52
+ export {
53
+ SubtleInput as default
81
54
  };
82
- SubtleInput.displayName = 'SubtleInput';
83
- export default SubtleInput;
@@ -1,5 +1,5 @@
1
- import { type InputProps } from 'antd/lib/input';
2
- import { type SubtleFieldProps } from '../../SubtleForm.types';
1
+ import { InputProps } from 'antd/lib/input';
2
+ import { SubtleFieldProps } from '../../SubtleForm.types';
3
3
  export type SubtleInputProps = {
4
4
  onChange?: (value: string) => void;
5
5
  value?: string;
@@ -1 +1 @@
1
- export {};
1
+
@@ -1,5 +1,5 @@
1
- import React from 'react';
2
- import { type SubtleSelectProps } from './Select.types';
1
+ import { default as React } from 'react';
2
+ import { SubtleSelectProps } from './Select.types';
3
3
  declare const SubtleSelect: {
4
4
  ({ disabled, value, suffix, suffixTooltip, label, children, labelTooltip, placeholder, error, errorText, dropdownAlign, ...rest }: SubtleSelectProps): React.JSX.Element;
5
5
  displayName: string;