@addev-be/ui 2.5.20 → 2.7.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 (48) hide show
  1. package/dist/components/forms/BillitIdentifier/index.d.ts +6 -0
  2. package/dist/components/forms/BillitIdentifier/index.js +71 -0
  3. package/dist/components/forms/BillitIdentifier/styles.d.ts +2 -0
  4. package/dist/components/forms/BillitIdentifier/styles.js +15 -0
  5. package/dist/components/forms/Form/FormGroup.d.ts +1 -0
  6. package/dist/components/forms/Form/FormGroup.js +2 -2
  7. package/dist/components/forms/Form/Row.js +1 -1
  8. package/dist/components/forms/Form/Select.d.ts +3 -1
  9. package/dist/components/forms/Form/Select.js +19 -10
  10. package/dist/components/forms/Form/index.d.ts +4 -1
  11. package/dist/components/forms/Form/styles.d.ts +5 -3
  12. package/dist/components/forms/Form/styles.js +19 -14
  13. package/dist/components/forms/styles.js +1 -1
  14. package/dist/components/ui/Card/index.d.ts +2 -1
  15. package/dist/components/ui/Card/styles.d.ts +2 -1
  16. package/dist/components/ui/Card/styles.js +2 -1
  17. package/dist/components/ui/TabsView/TabsList.d.ts +1 -0
  18. package/dist/components/ui/TabsView/TabsList.js +4 -2
  19. package/dist/components/ui/TabsView/TabsView.d.ts +3 -1
  20. package/dist/components/ui/TabsView/TabsView.js +2 -2
  21. package/dist/components/ui/TabsView/styles.js +4 -4
  22. package/dist/index.d.ts +1 -0
  23. package/dist/index.js +1 -0
  24. package/dist/providers/ThemeProvider/defaultTheme.js +1 -0
  25. package/dist/providers/ThemeProvider/helpers.d.ts +1 -1
  26. package/dist/providers/ThemeProvider/index.js +1 -1
  27. package/dist/providers/ThemeProvider/types.d.ts +1 -1
  28. package/dist/services/sqlRequests.d.ts +1 -1
  29. package/package.json +2 -2
  30. package/src/components/forms/BillitIdentifier/index.tsx +78 -0
  31. package/src/components/forms/BillitIdentifier/styles.tsx +43 -0
  32. package/src/components/forms/Form/FormGroup.tsx +4 -2
  33. package/src/components/forms/Form/Row.tsx +2 -6
  34. package/src/components/forms/Form/Select.tsx +24 -7
  35. package/src/components/forms/Form/styles.ts +31 -67
  36. package/src/components/forms/styles.ts +1 -1
  37. package/src/components/ui/Card/index.tsx +3 -1
  38. package/src/components/ui/Card/styles.ts +7 -3
  39. package/src/components/ui/TabsView/TabsList.tsx +6 -1
  40. package/src/components/ui/TabsView/TabsView.tsx +6 -2
  41. package/src/components/ui/TabsView/styles.ts +11 -3
  42. package/src/index.ts +1 -0
  43. package/src/providers/ThemeProvider/defaultTheme.ts +1 -0
  44. package/src/providers/ThemeProvider/helpers.ts +1 -1
  45. package/src/providers/ThemeProvider/index.ts +8 -1
  46. package/src/providers/ThemeProvider/types.ts +1 -1
  47. package/src/services/sqlRequests.ts +6 -0
  48. package/tsconfig.tsbuildinfo +1 -1
@@ -0,0 +1,6 @@
1
+ import { InputHTMLAttributes } from 'react';
2
+ export interface BillitIdentifierProps extends Omit<InputHTMLAttributes<HTMLInputElement>, 'value' | 'onChange'> {
3
+ value?: string;
4
+ onChange?: (value: string) => void;
5
+ }
6
+ export declare const BillitIdentifier: ({ value, onChange, ...inputProps }: BillitIdentifierProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __rest = (this && this.__rest) || function (s, e) {
14
+ var t = {};
15
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
16
+ t[p] = s[p];
17
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
18
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
19
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
20
+ t[p[i]] = s[p[i]];
21
+ }
22
+ return t;
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.BillitIdentifier = void 0;
26
+ var jsx_runtime_1 = require("react/jsx-runtime");
27
+ var styles_1 = require("./styles");
28
+ var react_1 = require("react");
29
+ var BillitIdentifier = function (_a) {
30
+ var _b = _a.value, value = _b === void 0 ? '' : _b, onChange = _a.onChange, inputProps = __rest(_a, ["value", "onChange"]);
31
+ var parseValue = function (fullValue) {
32
+ if (!fullValue) {
33
+ return ['', ''];
34
+ }
35
+ var match = fullValue.match(/^(VAT|GLN):(.*)$/);
36
+ if (match) {
37
+ return [match[1], match[2]];
38
+ }
39
+ return ['', fullValue];
40
+ };
41
+ var _c = parseValue(value), prefix = _c[0], textValue = _c[1];
42
+ var _d = (0, react_1.useState)(prefix), localPrefix = _d[0], setLocalPrefix = _d[1];
43
+ var _e = (0, react_1.useState)(textValue), localValue = _e[0], setLocalValue = _e[1];
44
+ (0, react_1.useEffect)(function () {
45
+ var _a = parseValue(value), newPrefix = _a[0], newValue = _a[1];
46
+ setLocalPrefix(newPrefix);
47
+ setLocalValue(newValue);
48
+ }, [value]);
49
+ var handlePrefixChange = function (newPrefix) {
50
+ setLocalPrefix(newPrefix);
51
+ if (newPrefix === '') {
52
+ onChange === null || onChange === void 0 ? void 0 : onChange('');
53
+ }
54
+ else {
55
+ var fullValue = "".concat(newPrefix, ":").concat(localValue);
56
+ onChange === null || onChange === void 0 ? void 0 : onChange(fullValue);
57
+ }
58
+ };
59
+ var handleValueChange = function (newValue) {
60
+ setLocalValue(newValue);
61
+ if (localPrefix === '') {
62
+ onChange === null || onChange === void 0 ? void 0 : onChange('');
63
+ }
64
+ else {
65
+ var fullValue = "".concat(localPrefix, ":").concat(newValue);
66
+ onChange === null || onChange === void 0 ? void 0 : onChange(fullValue);
67
+ }
68
+ };
69
+ return ((0, jsx_runtime_1.jsx)(styles_1.BillitIdentifierContainer, { children: (0, jsx_runtime_1.jsxs)(styles_1.BillitIdentifierWrapper, { children: [(0, jsx_runtime_1.jsxs)("select", { value: localPrefix, onChange: function (e) { return handlePrefixChange(e.target.value); }, children: [(0, jsx_runtime_1.jsx)("option", { value: "", children: "(Aucun)" }), (0, jsx_runtime_1.jsx)("option", { value: "VAT", children: "VAT" }), (0, jsx_runtime_1.jsx)("option", { value: "GLN", children: "GLN" })] }), (0, jsx_runtime_1.jsx)("input", __assign({}, inputProps, { type: "text", value: localValue, onChange: function (e) { return handleValueChange(e.target.value); } }))] }) }));
70
+ };
71
+ exports.BillitIdentifier = BillitIdentifier;
@@ -0,0 +1,2 @@
1
+ export declare const BillitIdentifierContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
2
+ export declare const BillitIdentifierWrapper: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.BillitIdentifierWrapper = exports.BillitIdentifierContainer = void 0;
11
+ var styles_1 = require("../styles");
12
+ var styled_components_1 = __importDefault(require("styled-components"));
13
+ exports.BillitIdentifierContainer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n width: 100%;\n position: relative;\n"], ["\n display: flex;\n width: 100%;\n position: relative;\n"])));
14
+ exports.BillitIdentifierWrapper = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n width: 100%;\n\n & > select {\n ", "\n width: auto;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n border-right: none;\n flex-shrink: 0;\n padding-right: var(--space-2);\n background-color: var(--color-base-100);\n\n &:focus {\n outline: none;\n }\n }\n\n & > input {\n ", "\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n flex: 1;\n\n &:focus {\n outline: none;\n }\n }\n\n &:focus-within {\n outline: 2px solid var(--color-primary-500);\n }\n"], ["\n display: flex;\n width: 100%;\n\n & > select {\n ", "\n width: auto;\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n border-right: none;\n flex-shrink: 0;\n padding-right: var(--space-2);\n background-color: var(--color-base-100);\n\n &:focus {\n outline: none;\n }\n }\n\n & > input {\n ", "\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n flex: 1;\n\n &:focus {\n outline: none;\n }\n }\n\n &:focus-within {\n outline: 2px solid var(--color-primary-500);\n }\n"])), styles_1.inputStyle, styles_1.inputStyle);
15
+ var templateObject_1, templateObject_2;
@@ -6,6 +6,7 @@ type FormGroupProps = PropsWithChildren<{
6
6
  title?: string;
7
7
  subTitle?: string;
8
8
  icon?: IconFC;
9
+ columns?: number;
9
10
  }>;
10
11
  export declare const FormGroup: FC<FormGroupProps>;
11
12
  export {};
@@ -4,7 +4,7 @@ exports.FormGroup = void 0;
4
4
  var jsx_runtime_1 = require("react/jsx-runtime");
5
5
  var styles_1 = require("./styles");
6
6
  var FormGroup = function (_a) {
7
- var children = _a.children, color = _a.color, title = _a.title, subTitle = _a.subTitle, Icon = _a.icon;
8
- return ((0, jsx_runtime_1.jsxs)(styles_1.FormGroupContainer, { color: color, children: [(title || subTitle) && ((0, jsx_runtime_1.jsxs)(styles_1.FormGroupHeader, { children: [Icon && (0, jsx_runtime_1.jsx)(Icon, {}), title && (0, jsx_runtime_1.jsx)("h3", { children: title }), subTitle && (0, jsx_runtime_1.jsx)("h4", { children: subTitle })] })), children] }));
7
+ var children = _a.children, color = _a.color, title = _a.title, subTitle = _a.subTitle, Icon = _a.icon, columns = _a.columns;
8
+ return ((0, jsx_runtime_1.jsxs)(styles_1.FormGroupContainer, { "$color": color, "$columns": columns, children: [(title || subTitle) && ((0, jsx_runtime_1.jsxs)(styles_1.FormGroupHeader, { "$columns": columns, children: [Icon && (0, jsx_runtime_1.jsx)(Icon, {}), title && (0, jsx_runtime_1.jsx)("h3", { children: title }), subTitle && (0, jsx_runtime_1.jsx)("h4", { children: subTitle })] })), children] }));
9
9
  };
10
10
  exports.FormGroup = FormGroup;
@@ -5,6 +5,6 @@ var jsx_runtime_1 = require("react/jsx-runtime");
5
5
  var styles_1 = require("./styles");
6
6
  var FormRow = function (_a) {
7
7
  var label = _a.label, Icon = _a.icon, readOnly = _a.readOnly, children = _a.children;
8
- return ((0, jsx_runtime_1.jsxs)(styles_1.FormRowContainer, { className: readOnly ? 'read-only' : '', children: [(label || Icon) && ((0, jsx_runtime_1.jsxs)(styles_1.FormRowLabel, { children: [Icon && (0, jsx_runtime_1.jsx)(Icon, {}), label] })), (0, jsx_runtime_1.jsx)(styles_1.FormRowInputContainer, { children: children })] }));
8
+ return ((0, jsx_runtime_1.jsxs)(styles_1.FormRowContainer, { className: readOnly ? 'read-only' : '', children: [(label || Icon) && ((0, jsx_runtime_1.jsxs)(styles_1.FormRowLabel, { children: [Icon && (0, jsx_runtime_1.jsx)(Icon, {}), label] })), children] }));
9
9
  };
10
10
  exports.FormRow = FormRow;
@@ -8,6 +8,8 @@ type SelectProps<T> = {
8
8
  readOnly?: boolean;
9
9
  onChange?: (value: T | null) => void;
10
10
  ref?: ForwardedRef<HTMLSelectElement>;
11
+ allowNull?: boolean;
12
+ nullText?: string;
11
13
  };
12
- export declare const Select: <T>({ icon, label, items, itemKey, itemLabel, readOnly, onChange, value, ref, ...props }: FormRowProps & Omit<SelectHTMLAttributes<HTMLSelectElement>, "value" | "onChange"> & SelectProps<T>) => import("react/jsx-runtime").JSX.Element;
14
+ export declare const Select: <T>({ icon, label, items, itemKey, itemLabel, readOnly, onChange, value, ref, allowNull, nullText, ...props }: FormRowProps & Omit<SelectHTMLAttributes<HTMLSelectElement>, "value" | "onChange"> & SelectProps<T>) => import("react/jsx-runtime").JSX.Element;
13
15
  export {};
@@ -28,23 +28,32 @@ var Row_1 = require("./Row");
28
28
  var react_1 = require("react");
29
29
  var styles_1 = require("./styles");
30
30
  var Select = function (_a) {
31
- var icon = _a.icon, label = _a.label, items = _a.items, itemKey = _a.itemKey, itemLabel = _a.itemLabel, readOnly = _a.readOnly, onChange = _a.onChange, value = _a.value, ref = _a.ref, props = __rest(_a, ["icon", "label", "items", "itemKey", "itemLabel", "readOnly", "onChange", "value", "ref"]);
31
+ var icon = _a.icon, label = _a.label, items = _a.items, itemKey = _a.itemKey, itemLabel = _a.itemLabel, readOnly = _a.readOnly, onChange = _a.onChange, value = _a.value, ref = _a.ref, _b = _a.allowNull, allowNull = _b === void 0 ? false : _b, _c = _a.nullText, nullText = _c === void 0 ? 'Aucun(e)' : _c, props = __rest(_a, ["icon", "label", "items", "itemKey", "itemLabel", "readOnly", "onChange", "value", "ref", "allowNull", "nullText"]);
32
32
  var selectRef = (0, react_1.useRef)(null);
33
33
  (0, react_1.useImperativeHandle)(ref, function () { return selectRef.current; }, []);
34
34
  var onSelectChange = (0, react_1.useCallback)(function (event) {
35
35
  var _a;
36
36
  if (onChange) {
37
37
  var selectedValue_1 = event.target.value;
38
- var selectedItem = items.find(function (item, index) { return itemKey(item, index) == selectedValue_1; });
39
- onChange(selectedItem !== null && selectedItem !== void 0 ? selectedItem : null);
38
+ if (allowNull && selectedValue_1 === null) {
39
+ onChange(null);
40
+ }
41
+ else {
42
+ var selectedItem = items.find(function (item, index) { return itemKey(item, index) == selectedValue_1; });
43
+ onChange(selectedItem || null);
44
+ }
40
45
  (_a = selectRef.current) === null || _a === void 0 ? void 0 : _a.blur();
41
46
  }
42
- }, [items, itemKey, onChange]);
43
- var selectedValue = value ? itemKey(value, -1) : undefined;
44
- return ((0, jsx_runtime_1.jsx)(Row_1.FormRow, { label: label, icon: icon, readOnly: readOnly, children: readOnly ? ((0, jsx_runtime_1.jsx)(styles_1.ReadOnlyValue, { children: (value !== null ? itemLabel(value, 0) : '-') || '-' })) : ((0, jsx_runtime_1.jsx)("select", __assign({}, props, { disabled: readOnly, value: selectedValue, onChange: onSelectChange, ref: selectRef, children: items.map(function (item, index) {
45
- var key = itemKey(item, index);
46
- var label = itemLabel(item, index);
47
- return ((0, jsx_runtime_1.jsx)("option", { value: key, children: label }, key));
48
- }) }))) }));
47
+ }, [items, itemKey, onChange, allowNull]);
48
+ var selectedValue = value
49
+ ? itemKey(value, -1)
50
+ : allowNull
51
+ ? null
52
+ : undefined;
53
+ return ((0, jsx_runtime_1.jsx)(Row_1.FormRow, { label: label, icon: icon, readOnly: readOnly, children: readOnly ? ((0, jsx_runtime_1.jsx)(styles_1.ReadOnlyValue, { children: (value !== null ? itemLabel(value, 0) : '-') || '-' })) : ((0, jsx_runtime_1.jsxs)("select", __assign({}, props, { disabled: readOnly, value: selectedValue || '', onChange: onSelectChange, ref: selectRef, children: [allowNull && ((0, jsx_runtime_1.jsx)("option", { disabled: !allowNull, value: "", children: nullText })), items.map(function (item, index) {
54
+ var key = itemKey(item, index);
55
+ var label = itemLabel(item, index);
56
+ return ((0, jsx_runtime_1.jsx)("option", { value: key, children: label }, key));
57
+ })] }))) }));
49
58
  };
50
59
  exports.Select = Select;
@@ -40,6 +40,7 @@ export declare const CardForm: {
40
40
  title?: string;
41
41
  subTitle?: string;
42
42
  icon?: import("../../..").IconFC;
43
+ columns?: number;
43
44
  } & {
44
45
  children?: import("react").ReactNode | undefined;
45
46
  }>;
@@ -52,7 +53,7 @@ export declare const CardForm: {
52
53
  children?: import("react").ReactNode | undefined;
53
54
  } & import("react").InputHTMLAttributes<HTMLInputElement>>;
54
55
  Row: FC<import("./Row").FormRowProps>;
55
- Select: <T>({ icon, label, items, itemKey, itemLabel, readOnly, onChange, value, ref, ...props }: import("./Row").FormRowProps & Omit<import("react").SelectHTMLAttributes<HTMLSelectElement>, "value" | "onChange"> & {
56
+ Select: <T>({ icon, label, items, itemKey, itemLabel, readOnly, onChange, value, ref, allowNull, nullText, ...props }: import("./Row").FormRowProps & Omit<import("react").SelectHTMLAttributes<HTMLSelectElement>, "value" | "onChange"> & {
56
57
  items: T[];
57
58
  value: T | null;
58
59
  itemKey: (item: T, index: number) => string;
@@ -60,6 +61,8 @@ export declare const CardForm: {
60
61
  readOnly?: boolean;
61
62
  onChange?: ((value: T | null) => void) | undefined;
62
63
  ref?: import("react").ForwardedRef<HTMLSelectElement>;
64
+ allowNull?: boolean;
65
+ nullText?: string;
63
66
  }) => import("react/jsx-runtime").JSX.Element;
64
67
  TextArea: FC<{
65
68
  label?: string;
@@ -1,11 +1,13 @@
1
1
  import { ThemeColorWithIntensity } from '../../../providers/ThemeProvider/types';
2
2
  export declare const FormGroupContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").FieldsetHTMLAttributes<HTMLFieldSetElement>, HTMLFieldSetElement>, {
3
- color?: ThemeColorWithIntensity;
3
+ $color?: ThemeColorWithIntensity;
4
+ $columns?: number;
5
+ }>> & string;
6
+ export declare const FormGroupHeader: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {
7
+ $columns?: number;
4
8
  }>> & string;
5
- export declare const FormGroupHeader: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
6
9
  export declare const inputCss: import("styled-components").RuleSet<object>;
7
10
  export declare const FormRowLabel: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLSpanElement>, HTMLSpanElement>, never>> & string;
8
- export declare const FormRowInputContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>> & string;
9
11
  export declare const FormRowContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").LabelHTMLAttributes<HTMLLabelElement>, HTMLLabelElement>, {
10
12
  $readOnly?: boolean;
11
13
  }>> & string;
@@ -37,23 +37,28 @@ var __importStar = (this && this.__importStar) || (function () {
37
37
  };
38
38
  })();
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
- exports.FormCondensedFields = exports.FormFields = exports.ReadOnlyValue = exports.StyledCheckbox = exports.FormRowContainer = exports.FormRowInputContainer = exports.FormRowLabel = exports.inputCss = exports.FormGroupHeader = exports.FormGroupContainer = void 0;
40
+ exports.FormCondensedFields = exports.FormFields = exports.ReadOnlyValue = exports.StyledCheckbox = exports.FormRowContainer = exports.FormRowLabel = exports.inputCss = exports.FormGroupHeader = exports.FormGroupContainer = void 0;
41
41
  var styled_components_1 = __importStar(require("styled-components"));
42
42
  var responsive_1 = require("../../../helpers/responsive");
43
- exports.FormGroupContainer = styled_components_1.default.fieldset(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n background: var(--color-base-100);\n border-radius: var(--rounded-md);\n box-shadow: var(--shadow-md);\n\n // Ensure children are not larger than the container\n min-width: 0;\n\n padding: var(--space-2);\n gap: var(--space-1);\n\n ", " {\n padding: var(--space-4);\n gap: var(--space-2);\n }\n\n margin: 0;\n border: 1px solid var(--color-base-300);\n border-left: 8px solid ", ";\n"], ["\n display: flex;\n flex-direction: column;\n background: var(--color-base-100);\n border-radius: var(--rounded-md);\n box-shadow: var(--shadow-md);\n\n // Ensure children are not larger than the container\n min-width: 0;\n\n padding: var(--space-2);\n gap: var(--space-1);\n\n ", " {\n padding: var(--space-4);\n gap: var(--space-2);\n }\n\n margin: 0;\n border: 1px solid var(--color-base-300);\n border-left: 8px solid ", ";\n"])), responsive_1.mediaQueries.lgUp, function (_a) {
44
- var _b = _a.color, color = _b === void 0 ? 'base' : _b;
45
- return "var(--color-".concat(color, ")");
43
+ exports.FormGroupContainer = styled_components_1.default.fieldset(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: grid;\n grid-template-columns: repeat(", ", 1fr);\n\n background: var(--color-base-50);\n border-radius: var(--rounded-md);\n box-shadow: var(--shadow-md);\n\n // Ensure children are not larger than the container\n min-width: 0;\n\n padding: var(--space-2);\n gap: var(--space-1);\n\n ", " {\n padding: var(--space-4);\n gap: var(--space-2);\n }\n\n margin: 0;\n border: 1px solid var(--color-base-200);\n border-left: 8px solid ", ";\n"], ["\n display: grid;\n grid-template-columns: repeat(", ", 1fr);\n\n background: var(--color-base-50);\n border-radius: var(--rounded-md);\n box-shadow: var(--shadow-md);\n\n // Ensure children are not larger than the container\n min-width: 0;\n\n padding: var(--space-2);\n gap: var(--space-1);\n\n ", " {\n padding: var(--space-4);\n gap: var(--space-2);\n }\n\n margin: 0;\n border: 1px solid var(--color-base-200);\n border-left: 8px solid ", ";\n"])), function (_a) {
44
+ var _b = _a.$columns, $columns = _b === void 0 ? 1 : _b;
45
+ return $columns;
46
+ }, responsive_1.mediaQueries.lgUp, function (_a) {
47
+ var _b = _a.$color, $color = _b === void 0 ? 'base' : _b;
48
+ return "var(--color-".concat($color, ")");
46
49
  });
47
- exports.FormGroupHeader = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--space-2);\n\n & > h3 {\n margin: 0;\n font-size: var(--text-lg);\n font-weight: bold;\n }\n & > h4 {\n margin: 0;\n font-size: var(--text-sm);\n font-weight: var(--font-normal);\n color: var(--color-text-500);\n }\n\n & > svg {\n width: var(--space-6);\n height: var(--space-6);\n }\n"], ["\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--space-2);\n\n & > h3 {\n margin: 0;\n font-size: var(--text-lg);\n font-weight: bold;\n }\n & > h4 {\n margin: 0;\n font-size: var(--text-sm);\n font-weight: var(--font-normal);\n color: var(--color-text-500);\n }\n\n & > svg {\n width: var(--space-6);\n height: var(--space-6);\n }\n"])));
48
- exports.inputCss = (0, styled_components_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n font-family: inherit;\n font-size: var(--text-base);\n\n border: none;\n color: var(--color-text-800);\n background: var(--color-base-0);\n\n box-sizing: border-box;\n width: 100%;\n padding: var(--space-1);\n ", " {\n text-align: right;\n }\n\n &:focus {\n outline: none;\n }\n"], ["\n font-family: inherit;\n font-size: var(--text-base);\n\n border: none;\n color: var(--color-text-800);\n background: var(--color-base-0);\n\n box-sizing: border-box;\n width: 100%;\n padding: var(--space-1);\n ", " {\n text-align: right;\n }\n\n &:focus {\n outline: none;\n }\n"])), responsive_1.mediaQueries.lgUp);
49
- exports.FormRowLabel = styled_components_1.default.span(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n color: var(--color-text-500);\n font-size: var(--text-base);\n padding: var(--space-1) 0;\n display: flex;\n flex-direction: row;\n gap: var(--space-2);\n line-height: 1.25;\n font-weight: bold;\n align-self: flex-start;\n\n & > svg {\n width: var(--space-4);\n height: var(--space-4);\n fill: var(--color-base-500);\n flex-shrink: 0;\n }\n"], ["\n color: var(--color-text-500);\n font-size: var(--text-base);\n padding: var(--space-1) 0;\n display: flex;\n flex-direction: row;\n gap: var(--space-2);\n line-height: 1.25;\n font-weight: bold;\n align-self: flex-start;\n\n & > svg {\n width: var(--space-4);\n height: var(--space-4);\n fill: var(--color-base-500);\n flex-shrink: 0;\n }\n"])));
50
- exports.FormRowInputContainer = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n flex: 1;\n text-align: right;\n\n ", " {\n width: 100%;\n text-align: left;\n }\n\n & > select,\n & > input,\n & > textarea {\n ", "\n }\n\n & > select:focus > option {\n text-align: left;\n }\n"], ["\n flex: 1;\n text-align: right;\n\n ", " {\n width: 100%;\n text-align: left;\n }\n\n & > select,\n & > input,\n & > textarea {\n ", "\n }\n\n & > select:focus > option {\n text-align: left;\n }\n"])), responsive_1.mediaQueries.mdDown, exports.inputCss);
51
- exports.FormRowContainer = styled_components_1.default.label(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 0;\n padding: var(--space-2);\n\n ", " {\n flex-direction: row;\n gap: var(--space-2);\n padding: var(--space-1) var(--space-2);\n }\n\n border: 1px solid var(--color-base-200);\n background: var(--color-base-0);\n &:focus-within {\n outline: 2px solid var(--color-primary-500);\n z-index: 1;\n }\n\n &.read-only {\n background: none;\n border: none;\n &:focus-within {\n outline: none;\n }\n\n & + & {\n border-top: 1px solid var(--color-base-300);\n }\n\n & > div > select,\n & > div > select[disabled],\n & > div > input,\n & > div > textarea {\n background: none;\n color: var(--color-text-800);\n }\n }\n"], ["\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 0;\n padding: var(--space-2);\n\n ", " {\n flex-direction: row;\n gap: var(--space-2);\n padding: var(--space-1) var(--space-2);\n }\n\n border: 1px solid var(--color-base-200);\n background: var(--color-base-0);\n &:focus-within {\n outline: 2px solid var(--color-primary-500);\n z-index: 1;\n }\n\n &.read-only {\n background: none;\n border: none;\n &:focus-within {\n outline: none;\n }\n\n & + & {\n border-top: 1px solid var(--color-base-300);\n }\n\n & > div > select,\n & > div > select[disabled],\n & > div > input,\n & > div > textarea {\n background: none;\n color: var(--color-text-800);\n }\n }\n"])), responsive_1.mediaQueries.lgUp);
52
- exports.StyledCheckbox = styled_components_1.default.input.attrs({ type: 'checkbox' })(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n width: var(--space-4);\n height: var(--space-4);\n"], ["\n width: var(--space-4);\n height: var(--space-4);\n"])));
53
- exports.ReadOnlyValue = styled_components_1.default.span(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n font-size: var(--text-lg);\n padding: var(--space-1) 0;\n"], ["\n font-size: var(--text-lg);\n padding: var(--space-1) 0;\n"])));
54
- exports.FormFields = styled_components_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n gap: ", ";\n"], ["\n display: flex;\n flex-direction: column;\n gap: ", ";\n"])), function (_a) {
50
+ exports.FormGroupHeader = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--space-2);\n grid-column: span ", ";\n\n & > h3 {\n margin: 0;\n font-size: var(--text-lg);\n font-weight: bold;\n }\n & > h4 {\n margin: 0;\n font-size: var(--text-sm);\n font-weight: var(--font-normal);\n color: var(--color-text-500);\n }\n\n & > svg {\n width: var(--space-6);\n height: var(--space-6);\n }\n"], ["\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--space-2);\n grid-column: span ", ";\n\n & > h3 {\n margin: 0;\n font-size: var(--text-lg);\n font-weight: bold;\n }\n & > h4 {\n margin: 0;\n font-size: var(--text-sm);\n font-weight: var(--font-normal);\n color: var(--color-text-500);\n }\n\n & > svg {\n width: var(--space-6);\n height: var(--space-6);\n }\n"])), function (_a) {
51
+ var _b = _a.$columns, $columns = _b === void 0 ? 1 : _b;
52
+ return $columns;
53
+ });
54
+ exports.inputCss = (0, styled_components_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n font-family: var(--font-input);\n font-size: var(--text-base);\n font-weight: 500;\n\n border: 1px solid var(--color-base-300);\n color: var(--color-text-800);\n background: var(--color-base-0);\n\n box-sizing: border-box;\n width: 100%;\n padding: var(--space-2);\n border-radius: var(--rounded-md);\n"], ["\n font-family: var(--font-input);\n font-size: var(--text-base);\n font-weight: 500;\n\n border: 1px solid var(--color-base-300);\n color: var(--color-text-800);\n background: var(--color-base-0);\n\n box-sizing: border-box;\n width: 100%;\n padding: var(--space-2);\n border-radius: var(--rounded-md);\n"])));
55
+ exports.FormRowLabel = styled_components_1.default.span(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n color: var(--color-base-600);\n font-size: var(--text-sm);\n text-transform: uppercase;\n padding: var(--space-1) 0;\n display: flex;\n flex-direction: row;\n gap: var(--space-2);\n line-height: 1.25;\n font-weight: normal;\n align-self: flex-start;\n\n & > svg {\n width: var(--space-4);\n height: var(--space-4);\n fill: var(--color-base-500);\n flex-shrink: 0;\n }\n"], ["\n color: var(--color-base-600);\n font-size: var(--text-sm);\n text-transform: uppercase;\n padding: var(--space-1) 0;\n display: flex;\n flex-direction: row;\n gap: var(--space-2);\n line-height: 1.25;\n font-weight: normal;\n align-self: flex-start;\n\n & > svg {\n width: var(--space-4);\n height: var(--space-4);\n fill: var(--color-base-500);\n flex-shrink: 0;\n }\n"])));
56
+ exports.FormRowContainer = styled_components_1.default.label(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 0;\n padding: var(--space-2);\n\n & > select,\n & > input,\n & > textarea {\n ", "\n }\n\n &.read-only {\n & > select,\n & > select[disabled],\n & > input,\n & > textarea {\n background: none;\n color: var(--color-text-800);\n }\n }\n"], ["\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 0;\n padding: var(--space-2);\n\n & > select,\n & > input,\n & > textarea {\n ", "\n }\n\n &.read-only {\n & > select,\n & > select[disabled],\n & > input,\n & > textarea {\n background: none;\n color: var(--color-text-800);\n }\n }\n"])), exports.inputCss);
57
+ exports.StyledCheckbox = styled_components_1.default.input.attrs({ type: 'checkbox' })(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n width: var(--space-4);\n height: var(--space-4);\n"], ["\n width: var(--space-4);\n height: var(--space-4);\n"])));
58
+ exports.ReadOnlyValue = styled_components_1.default.span(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n padding: var(--space-1) 0;\n font-weight: 500;\n"], ["\n padding: var(--space-1) 0;\n font-weight: 500;\n"])));
59
+ exports.FormFields = styled_components_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n gap: ", ";\n"], ["\n display: flex;\n flex-direction: column;\n gap: ", ";\n"])), function (_a) {
55
60
  var $readOnly = _a.$readOnly;
56
61
  return ($readOnly ? '0' : 'var(--space-2)');
57
62
  });
58
- exports.FormCondensedFields = styled_components_1.default.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n\n ", " & > ", " {\n padding: var(--space-0_5) var(--space-2);\n }\n\n > ", ":not(.read-only) + ", ":not(.read-only) {\n border-top: none;\n }\n"], ["\n display: flex;\n flex-direction: column;\n\n ", " & > ", " {\n padding: var(--space-0_5) var(--space-2);\n }\n\n > ", ":not(.read-only) + ", ":not(.read-only) {\n border-top: none;\n }\n"])), responsive_1.mediaQueries.lgUp, exports.FormRowContainer, exports.FormRowContainer, exports.FormRowContainer);
59
- var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10;
63
+ exports.FormCondensedFields = styled_components_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n\n ", " & > ", " {\n padding: var(--space-0_5) var(--space-2);\n }\n\n > ", ":not(.read-only) + ", ":not(.read-only) {\n border-top: none;\n }\n"], ["\n display: flex;\n flex-direction: column;\n\n ", " & > ", " {\n padding: var(--space-0_5) var(--space-2);\n }\n\n > ", ":not(.read-only) + ", ":not(.read-only) {\n border-top: none;\n }\n"])), responsive_1.mediaQueries.lgUp, exports.FormRowContainer, exports.FormRowContainer, exports.FormRowContainer);
64
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9;
@@ -40,7 +40,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
40
40
  exports.StackedLabelContainer = exports.StyledTextArea = exports.StyledNumericFormat = exports.Input = exports.inputStyle = void 0;
41
41
  var styled_components_1 = __importStar(require("styled-components"));
42
42
  var react_number_format_1 = require("react-number-format");
43
- exports.inputStyle = (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n font-family: var(--font-sans);\n font-size: inherit;\n color: var(--color-text-800);\n background-color: var(--color-base-0);\n border: 1px solid var(--color-base-300);\n border-radius: var(--rounded-md);\n padding: var(--space-1);\n width: 100%;\n box-sizing: border-box;\n\n &:focus {\n outline: 2px solid var(--color-primary-500);\n }\n"], ["\n font-family: var(--font-sans);\n font-size: inherit;\n color: var(--color-text-800);\n background-color: var(--color-base-0);\n border: 1px solid var(--color-base-300);\n border-radius: var(--rounded-md);\n padding: var(--space-1);\n width: 100%;\n box-sizing: border-box;\n\n &:focus {\n outline: 2px solid var(--color-primary-500);\n }\n"])));
43
+ exports.inputStyle = (0, styled_components_1.css)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n font-family: var(--font-input);\n font-size: inherit;\n color: var(--color-text-800);\n background-color: var(--color-base-0);\n border: 1px solid var(--color-base-300);\n border-radius: var(--rounded-md);\n padding: var(--space-1);\n width: 100%;\n box-sizing: border-box;\n\n &:focus {\n outline: 2px solid var(--color-primary-500);\n }\n"], ["\n font-family: var(--font-input);\n font-size: inherit;\n color: var(--color-text-800);\n background-color: var(--color-base-0);\n border: 1px solid var(--color-base-300);\n border-radius: var(--rounded-md);\n padding: var(--space-1);\n width: 100%;\n box-sizing: border-box;\n\n &:focus {\n outline: 2px solid var(--color-primary-500);\n }\n"])));
44
44
  exports.Input = styled_components_1.default.input(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n ", "\n"], ["\n ", "\n"])), exports.inputStyle);
45
45
  exports.StyledNumericFormat = (0, styled_components_1.default)(react_number_format_1.NumericFormat)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n ", "\n text-align: right;\n"], ["\n ", "\n text-align: right;\n"])), exports.inputStyle);
46
46
  exports.StyledTextArea = styled_components_1.default.textarea(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n ", "\n display: block;\n"], ["\n ", "\n display: block;\n"])), exports.inputStyle);
@@ -1,6 +1,7 @@
1
1
  import { CardFooter, CardHeader } from './styles';
2
2
  import { FC, HTMLAttributes } from 'react';
3
- type CardFC = FC<HTMLAttributes<HTMLDivElement>> & {
3
+ import { SpaceProps } from '../../../helpers/styled/space';
4
+ type CardFC = FC<HTMLAttributes<HTMLDivElement> & SpaceProps> & {
4
5
  Header: typeof CardHeader;
5
6
  Footer: typeof CardFooter;
6
7
  };
@@ -1,3 +1,4 @@
1
- export declare const CardContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>, never>, never>> & string;
1
+ import { SpaceProps } from '../../../helpers/styled/space';
2
+ export declare const CardContainer: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components/dist/types").Substitute<import("styled-components").FastOmit<import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>, never>, SpaceProps>> & string;
2
3
  export declare const CardHeader: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>, never>, never>> & string;
3
4
  export declare const CardFooter: import("styled-components/dist/types").IStyledComponentBase<"web", import("styled-components").FastOmit<import("styled-components").FastOmit<import("styled-components/dist/types").Substitute<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>>, never>, never>> & string;
@@ -8,10 +8,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
8
8
  };
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.CardFooter = exports.CardHeader = exports.CardContainer = void 0;
11
+ var space_1 = require("../../../helpers/styled/space");
11
12
  var styled_components_1 = __importDefault(require("styled-components"));
12
13
  exports.CardContainer = styled_components_1.default.div.attrs({
13
14
  className: 'CardContainer',
14
- })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n background-color: var(--color-base-0);\n border-radius: var(--rounded-md);\n box-shadow: var(--shadow-md);\n padding: var(--space-4);\n border: 1px solid var(--color-base-100);\n"], ["\n display: flex;\n flex-direction: column;\n background-color: var(--color-base-0);\n border-radius: var(--rounded-md);\n box-shadow: var(--shadow-md);\n padding: var(--space-4);\n border: 1px solid var(--color-base-100);\n"])));
15
+ })(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n background-color: var(--color-base-50);\n border-radius: var(--rounded-md);\n box-shadow: var(--shadow-md);\n padding: var(--space-4);\n border: 1px solid var(--color-base-200);\n\n ", "\n"], ["\n display: flex;\n flex-direction: column;\n background-color: var(--color-base-50);\n border-radius: var(--rounded-md);\n box-shadow: var(--shadow-md);\n padding: var(--space-4);\n border: 1px solid var(--color-base-200);\n\n ", "\n"])), space_1.space);
15
16
  exports.CardHeader = styled_components_1.default.div.attrs({
16
17
  className: 'CardHeader',
17
18
  })(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n flex-direction: row;\n align-items: center;\n padding-bottom: var(--space-2);\n border-bottom: 1px solid var(--color-base-200);\n margin-bottom: var(--space-2);\n gap: var(--space-2);\n"], ["\n display: flex;\n flex-direction: row;\n align-items: center;\n padding-bottom: var(--space-2);\n border-bottom: 1px solid var(--color-base-200);\n margin-bottom: var(--space-2);\n gap: var(--space-2);\n"])));
@@ -2,6 +2,7 @@ import { FC } from 'react';
2
2
  import { SpaceProps } from '../../../helpers/styled/space';
3
3
  import { Tab } from './types';
4
4
  type TabsListProps = {
5
+ card?: boolean;
5
6
  tabs: Tab[];
6
7
  selectedIndex?: number;
7
8
  onSelectedIndexChanged?: (index: number) => void;
@@ -26,8 +26,9 @@ exports.TabsList = void 0;
26
26
  var jsx_runtime_1 = require("react/jsx-runtime");
27
27
  var react_1 = require("react");
28
28
  var styles_1 = require("./styles");
29
+ var Card_1 = require("../Card");
29
30
  var TabsList = function (_a) {
30
- var tabs = _a.tabs, selectedIndex = _a.selectedIndex, onSelectedIndexChanged = _a.onSelectedIndexChanged, spaceProps = __rest(_a, ["tabs", "selectedIndex", "onSelectedIndexChanged"]);
31
+ var card = _a.card, tabs = _a.tabs, selectedIndex = _a.selectedIndex, onSelectedIndexChanged = _a.onSelectedIndexChanged, spaceProps = __rest(_a, ["card", "tabs", "selectedIndex", "onSelectedIndexChanged"]);
31
32
  var _b = (0, react_1.useState)(selectedIndex !== null && selectedIndex !== void 0 ? selectedIndex : 0), activeIndex = _b[0], setActiveIndex = _b[1];
32
33
  (0, react_1.useEffect)(function () {
33
34
  setActiveIndex(selectedIndex !== null && selectedIndex !== void 0 ? selectedIndex : 0);
@@ -35,6 +36,7 @@ var TabsList = function (_a) {
35
36
  (0, react_1.useEffect)(function () {
36
37
  onSelectedIndexChanged === null || onSelectedIndexChanged === void 0 ? void 0 : onSelectedIndexChanged(activeIndex);
37
38
  }, [activeIndex, onSelectedIndexChanged]);
38
- return ((0, jsx_runtime_1.jsx)(styles_1.TabsListContainer, __assign({}, spaceProps, { children: tabs.map(function (tab, index) { return ((0, jsx_runtime_1.jsxs)(styles_1.TabContainer, { "$color": tab.color, "$isActive": activeIndex === index, onClick: function () { return setActiveIndex(index); }, children: [tab.icon ? (0, jsx_runtime_1.jsx)(tab.icon, {}) : null, tab.tabName] }, index)); }) })));
39
+ var tabsList = ((0, jsx_runtime_1.jsx)(styles_1.TabsListContainer, __assign({}, spaceProps, { children: tabs.map(function (tab, index) { return ((0, jsx_runtime_1.jsxs)(styles_1.TabContainer, { "$color": tab.color, "$isActive": activeIndex === index, onClick: function () { return setActiveIndex(index); }, children: [tab.icon ? (0, jsx_runtime_1.jsx)(tab.icon, {}) : null, tab.tabName] }, index)); }) })));
40
+ return card ? (0, jsx_runtime_1.jsx)(Card_1.Card, { p: "2", children: tabsList }) : tabsList;
39
41
  };
40
42
  exports.TabsList = TabsList;
@@ -1,9 +1,11 @@
1
1
  import { FC } from 'react';
2
+ import { SpaceProps } from '../../../helpers/styled/space';
2
3
  import { Tab } from './types';
3
4
  type TabsViewProps = {
4
5
  tabs: Tab[];
5
6
  overflow?: boolean;
6
7
  onSelectedTabChanged?: (tab: Tab, index: number) => void;
7
- };
8
+ card?: boolean;
9
+ } & SpaceProps;
8
10
  export declare const TabsView: FC<TabsViewProps>;
9
11
  export {};
@@ -6,12 +6,12 @@ var react_1 = require("react");
6
6
  var styles_1 = require("./styles");
7
7
  var TabsList_1 = require("./TabsList");
8
8
  var TabsView = function (_a) {
9
- var tabs = _a.tabs, _b = _a.overflow, overflow = _b === void 0 ? false : _b, onSelectedTabChanged = _a.onSelectedTabChanged;
9
+ var tabs = _a.tabs, _b = _a.overflow, overflow = _b === void 0 ? false : _b, onSelectedTabChanged = _a.onSelectedTabChanged, card = _a.card;
10
10
  var _c = (0, react_1.useState)(0), activeIndex = _c[0], setActiveIndex = _c[1];
11
11
  var activeTab = tabs[activeIndex];
12
12
  (0, react_1.useEffect)(function () {
13
13
  onSelectedTabChanged === null || onSelectedTabChanged === void 0 ? void 0 : onSelectedTabChanged(tabs[activeIndex], activeIndex);
14
14
  }, [activeIndex, tabs, onSelectedTabChanged]);
15
- return ((0, jsx_runtime_1.jsxs)(styles_1.TabsViewContainer, { children: [(0, jsx_runtime_1.jsx)(TabsList_1.TabsList, { tabs: tabs, selectedIndex: activeIndex, onSelectedIndexChanged: setActiveIndex, p: "2" }), (0, jsx_runtime_1.jsx)(styles_1.TabContentContainer, { "$isOverflow": overflow, children: activeTab.content })] }));
15
+ return ((0, jsx_runtime_1.jsxs)(styles_1.TabsViewContainer, { children: [(0, jsx_runtime_1.jsx)(TabsList_1.TabsList, { card: card, tabs: tabs, selectedIndex: activeIndex, onSelectedIndexChanged: setActiveIndex, p: card ? '0' : '2' }), (0, jsx_runtime_1.jsx)(styles_1.TabContentContainer, { "$isOverflow": overflow, children: activeTab.content })] }));
16
16
  };
17
17
  exports.TabsView = TabsView;
@@ -39,16 +39,16 @@ var __importStar = (this && this.__importStar) || (function () {
39
39
  Object.defineProperty(exports, "__esModule", { value: true });
40
40
  exports.TabContentContainer = exports.TabContainer = exports.TabsListContainer = exports.TabsViewContainer = void 0;
41
41
  var space_1 = require("../../../helpers/styled/space");
42
- var styled_components_1 = __importStar(require("styled-components"));
43
42
  var helpers_1 = require("../../../providers/ThemeProvider/helpers");
44
- exports.TabsViewContainer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n height: 100%;\n"], ["\n display: flex;\n flex-direction: column;\n height: 100%;\n"])));
45
- exports.TabsListContainer = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n gap: var(--space-4);\n flex-shrink: 0;\n overflow-x: scroll;\n scrollbar-width: none;\n font-size: var(--text-lg);\n white-space: nowrap;\n\n ", "\n"], ["\n display: flex;\n gap: var(--space-4);\n flex-shrink: 0;\n overflow-x: scroll;\n scrollbar-width: none;\n font-size: var(--text-lg);\n white-space: nowrap;\n\n ", "\n"])), space_1.space);
43
+ var styled_components_1 = __importStar(require("styled-components"));
44
+ exports.TabsViewContainer = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: flex;\n flex-direction: column;\n height: 100%;\n gap: var(--space-4);\n"], ["\n display: flex;\n flex-direction: column;\n height: 100%;\n gap: var(--space-4);\n"])));
45
+ exports.TabsListContainer = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n gap: var(--space-4);\n flex-shrink: 0;\n overflow-x: scroll;\n scrollbar-width: none;\n font-size: var(--text-base);\n white-space: nowrap;\n\n ", "\n"], ["\n display: flex;\n gap: var(--space-4);\n flex-shrink: 0;\n overflow-x: scroll;\n scrollbar-width: none;\n font-size: var(--text-base);\n white-space: nowrap;\n\n ", "\n"])), space_1.space);
46
46
  exports.TabContainer = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n height: var(--space-8);\n gap: var(--space-2);\n cursor: pointer;\n padding: 0 var(--space-2);\n color: var(--color-text-800);\n\n svg {\n height: var(--space-4);\n width: var(--space-4);\n fill: var(--color-base-800);\n }\n\n ", ";\n\n ", "\n"], ["\n display: flex;\n align-items: center;\n height: var(--space-8);\n gap: var(--space-2);\n cursor: pointer;\n padding: 0 var(--space-2);\n color: var(--color-text-800);\n\n svg {\n height: var(--space-4);\n width: var(--space-4);\n fill: var(--color-base-800);\n }\n\n ", ";\n\n ", "\n"])), function (_a) {
47
47
  var _b = _a.$color, $color = _b === void 0 ? 'primary' : _b;
48
48
  return (0, styled_components_1.css)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n &:hover {\n color: var(--color-", ");\n svg {\n fill: var(--color-", ");\n }\n }\n "], ["\n &:hover {\n color: var(--color-", ");\n svg {\n fill: var(--color-", ");\n }\n }\n "])), (0, helpers_1.getColorWithIntensity)($color, 500), (0, helpers_1.getColorWithIntensity)($color, 500));
49
49
  }, function (_a) {
50
50
  var $isActive = _a.$isActive, _b = _a.$color, $color = _b === void 0 ? 'primary' : _b;
51
- return $isActive && (0, styled_components_1.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n border-bottom: var(--space-0_5) solid;\n color: var(--color-", ");\n svg {\n fill: var(--color-", ");\n }\n "], ["\n border-bottom: var(--space-0_5) solid;\n color: var(--color-", ");\n svg {\n fill: var(--color-", ");\n }\n "])), (0, helpers_1.getColorWithIntensity)($color, 500), (0, helpers_1.getColorWithIntensity)($color, 500));
51
+ return $isActive && (0, styled_components_1.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n background: radial-gradient(\n ellipse at bottom center,\n var(--color-", "-50) 0%,\n transparent 80%\n );\n border-bottom: var(--space-0_5) solid;\n color: var(--color-", ");\n svg {\n fill: var(--color-", ");\n }\n "], ["\n background: radial-gradient(\n ellipse at bottom center,\n var(--color-", "-50) 0%,\n transparent 80%\n );\n border-bottom: var(--space-0_5) solid;\n color: var(--color-", ");\n svg {\n fill: var(--color-", ");\n }\n "])), (0, helpers_1.getColor)($color), (0, helpers_1.getColorWithIntensity)($color, 500), (0, helpers_1.getColorWithIntensity)($color, 500));
52
52
  });
53
53
  exports.TabContentContainer = styled_components_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n display: flex;\n height: 100%;\n\n ", "\n"], ["\n display: flex;\n height: 100%;\n\n ", "\n"])), function (_a) {
54
54
  var $isOverflow = _a.$isOverflow;
package/dist/index.d.ts CHANGED
@@ -15,6 +15,7 @@ export * from './components/data/SqlRequestForeignList';
15
15
  export * from './components/data/VirtualScroller';
16
16
  export * from './components/data/VirtualScroller/types';
17
17
  export * from './components/forms/AutoTextArea';
18
+ export * from './components/forms/BillitIdentifier';
18
19
  export * from './components/forms/Button';
19
20
  export * from './components/forms/Select';
20
21
  export * from './components/forms/IconButton';
package/dist/index.js CHANGED
@@ -31,6 +31,7 @@ __exportStar(require("./components/data/SqlRequestForeignList"), exports);
31
31
  __exportStar(require("./components/data/VirtualScroller"), exports);
32
32
  __exportStar(require("./components/data/VirtualScroller/types"), exports);
33
33
  __exportStar(require("./components/forms/AutoTextArea"), exports);
34
+ __exportStar(require("./components/forms/BillitIdentifier"), exports);
34
35
  __exportStar(require("./components/forms/Button"), exports);
35
36
  __exportStar(require("./components/forms/Select"), exports);
36
37
  __exportStar(require("./components/forms/IconButton"), exports);
@@ -365,6 +365,7 @@ exports.defaultTheme = {
365
365
  sans: "'Montserrat', Helvetica, Arial, Verdana, sans-serif",
366
366
  serif: "Georgia, Cambria, 'Times New Roman', Times, serif",
367
367
  mono: "Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace",
368
+ input: "'Montserrat', Helvetica, Arial, Verdana, sans-serif",
368
369
  },
369
370
  weights: {
370
371
  light: '200',
@@ -3,7 +3,7 @@ import { DeepPartial } from '../../types';
3
3
  export declare const extendTheme: (base: Theme, override?: DeepPartial<Theme>) => Theme;
4
4
  export declare const extendDefaultTheme: (override?: DeepPartial<Theme>) => Theme;
5
5
  export declare const extendDefaultDarkTheme: (override?: DeepPartial<Theme>) => Theme;
6
- export declare const getColor: (colorWithIntensity: ThemeColorWithIntensity) => ThemeColor;
6
+ export declare const getColor: (colorWithIntensity: ThemeColor | ThemeColorWithIntensity) => ThemeColor;
7
7
  export declare const getIntensity: (colorWithIntensity: ThemeColorWithIntensity) => ThemeColorIntensity;
8
8
  export declare const isThemeColorWithIntensity: (color: ThemeColor | ThemeColorWithIntensity) => color is ThemeColorWithIntensity;
9
9
  export declare const getColorWithIntensity: (color: ThemeColor | ThemeColorWithIntensity, defaultIntensity?: ThemeColorIntensity) => ThemeColorWithIntensity;
@@ -35,7 +35,7 @@ var getThemeColorsCss = function (colors, darkMode) {
35
35
  })
36
36
  .join('');
37
37
  };
38
- exports.ThemeProvider = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: contents;\n ", "\n\n a, a:visited {\n color: var(--color-primary-500);\n }\n a:active,\n a:hover {\n color: var(--color-primary-700);\n }\n"], ["\n display: contents;\n ", "\n\n a, a:visited {\n color: var(--color-primary-500);\n }\n a:active,\n a:hover {\n color: var(--color-primary-700);\n }\n"])), function (_a) {
38
+ exports.ThemeProvider = styled_components_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n display: contents;\n ", "\n\n font-family: var(--font-sans);\n font-size: var(--text-base);\n font-weight: var(--weight-normal);\n color: var(--color-text-800);\n background-color: var(--color-base-0);\n\n a,\n a:visited {\n color: var(--color-primary-500);\n }\n a:active,\n a:hover {\n color: var(--color-primary-700);\n }\n"], ["\n display: contents;\n ", "\n\n font-family: var(--font-sans);\n font-size: var(--text-base);\n font-weight: var(--weight-normal);\n color: var(--color-text-800);\n background-color: var(--color-base-0);\n\n a,\n a:visited {\n color: var(--color-primary-500);\n }\n a:active,\n a:hover {\n color: var(--color-primary-700);\n }\n"])), function (_a) {
39
39
  var _b = _a.$theme, $theme = _b === void 0 ? {} : _b, $darkTheme = _a.$darkTheme, $darkMode = _a.$darkMode;
40
40
  var theme = $darkMode ? $darkTheme !== null && $darkTheme !== void 0 ? $darkTheme : $theme : $theme;
41
41
  var darkMode = !$darkTheme && $darkMode;
@@ -7,7 +7,7 @@ export type ThemeColor = ThemeRawColor | ThemePredefinedColor;
7
7
  export type ThemeColorReference = ThemeColor | ThemeColorDefinition;
8
8
  export type ThemeColorWithIntensity = `${ThemeColor}-${ThemeColorIntensity}`;
9
9
  export type ThemeTextSize = 'xs' | 'sm' | 'base' | 'lg' | 'xl' | '2xl' | '3xl' | '4xl' | '5xl' | '6xl';
10
- export type ThemeFontFamily = 'sans' | 'serif' | 'mono';
10
+ export type ThemeFontFamily = 'sans' | 'serif' | 'mono' | 'input';
11
11
  export type ThemeFontWeight = 'light' | 'normal' | 'bold';
12
12
  export type ThemeSpace = '0' | '0_5' | '1' | '1_5' | '2' | '3' | '4' | '5' | '6' | '8' | '10' | '12' | '14' | '16' | '20' | '24' | '32' | '40' | '48' | '56' | '64' | '72' | '80' | '96' | '128';
13
13
  export type ThemeSpaceWithNegative = ThemeSpace | `-${ThemeSpace}`;
@@ -9,7 +9,7 @@ export type FieldDTO<T extends string = string> = {
9
9
  };
10
10
  export type ConditionDTO = {
11
11
  field: string;
12
- operator: 'lessThan' | 'lessThanOrEqual' | 'lessThanOrEquals' | 'equals' | 'notEquals' | 'greaterThanOrEqual' | 'greaterThanOrEquals' | 'greaterThan' | 'like' | 'contains' | 'notContains' | 'startsWith' | 'endsWith' | 'notLike' | 'inRange' | 'between' | 'isNull' | 'isNotNull' | 'inArray' | 'in' | 'not' | 'and' | 'or';
12
+ operator: 'isLessThan' | 'isLessThanOrEqual' | 'isLessThanOrEquals' | 'lessThan' | 'lessThanOrEqual' | 'lessThanOrEquals' | 'equals' | 'notEquals' | 'isGreaterThanOrEqual' | 'isGreaterThanOrEquals' | 'isGreaterThan' | 'greaterThanOrEqual' | 'greaterThanOrEquals' | 'greaterThan' | 'like' | 'contains' | 'notContains' | 'startsWith' | 'endsWith' | 'notLike' | 'inRange' | 'between' | 'isNull' | 'isNotNull' | 'inArray' | 'in' | 'not' | 'and' | 'or';
13
13
  value?: string | number | boolean | null | (string | number | boolean | null)[];
14
14
  children?: ConditionDTO[];
15
15
  type?: SqlRequestGridColumn<unknown>['type'];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@addev-be/ui",
3
- "version": "2.5.20",
3
+ "version": "2.7.0",
4
4
  "type": "module",
5
5
  "scripts": {
6
6
  "watch": "tsc -b --watch",
@@ -21,7 +21,7 @@
21
21
  "update-version": "../../node/update-version.mjs"
22
22
  },
23
23
  "devDependencies": {
24
- "@addev-be/framework-utils": "^2.5.20",
24
+ "@addev-be/framework-utils": "^2.7.0",
25
25
  "@testing-library/dom": "^10.4.1",
26
26
  "@testing-library/react": "^16.3.0",
27
27
  "@testing-library/react-hooks": "^8.0.1",