mcr-design-systems 1.0.9 → 1.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,11 @@
1
- import { jsx as r, jsxs as N } from "react/jsx-runtime";
2
- import l, { useMemo as f } from "react";
3
- import { tv as B } from "../../node_modules/tailwind-variants/dist/index.js";
4
- import { Typography as I } from "../Typography/index.js";
1
+ import { jsx as a, jsxs as y } from "react/jsx-runtime";
2
+ import o, { useMemo as z } from "react";
3
+ import { tv as N } from "../../node_modules/tailwind-variants/dist/index.js";
4
+ import { Typography as B } from "../Typography/index.js";
5
5
  import "clsx";
6
6
  import "tailwind-merge";
7
- import { dataTestId as _ } from "../../shared/utils/dataTestId.js";
8
- const j = {
7
+ import { dataTestId as I } from "../../shared/utils/dataTestId.js";
8
+ const _ = {
9
9
  info: "bg-fg-accent-info-strong",
10
10
  success: "bg-fg-accent-success-strong",
11
11
  warning: "bg-fg-accent-warning-strong",
@@ -15,7 +15,7 @@ const j = {
15
15
  neutral: "bg-fg-neutral-subtle",
16
16
  outline: "bg-fg-neutral-subtle",
17
17
  boldest: "bg-bg-selected-boldest-rest"
18
- }, D = B({
18
+ }, j = N({
19
19
  base: "font-medium inline-flex w-fit select-none items-center",
20
20
  variants: {
21
21
  variant: {
@@ -106,7 +106,7 @@ const j = {
106
106
  className: "bg-bg-selected-boldest-rest"
107
107
  }
108
108
  ]
109
- }), m = l.memo(({ icon: t, iconAriaLabel: e }) => /* @__PURE__ */ r(
109
+ }), d = o.memo(({ icon: t, iconAriaLabel: e }) => /* @__PURE__ */ a(
110
110
  "span",
111
111
  {
112
112
  "aria-label": e,
@@ -115,72 +115,72 @@ const j = {
115
115
  children: typeof t == "function" ? t({ size: 16, name: "user-03" }) : t
116
116
  }
117
117
  ));
118
- m.displayName = "BadgeIcon";
119
- const p = l.memo(({ variant: t, emphasize: e }) => /* @__PURE__ */ r(
118
+ d.displayName = "BadgeIcon";
119
+ const f = o.memo(({ variant: t, emphasize: e }) => /* @__PURE__ */ a(
120
120
  "span",
121
121
  {
122
- className: `h-1.5 w-1.5 rounded-full ${e ? "bg-fg-neutral-inverse" : j[t]}`,
122
+ className: `h-1.5 w-1.5 rounded-full ${e ? "bg-fg-neutral-inverse" : _[t]}`,
123
123
  "aria-hidden": "true"
124
124
  }
125
125
  ));
126
- p.displayName = "BadgeDot";
127
- const O = l.forwardRef(
126
+ f.displayName = "BadgeDot";
127
+ const D = o.forwardRef(
128
128
  ({
129
129
  children: t,
130
130
  icon: e,
131
- iconAriaLabel: h,
132
- variant: a = "neutral",
131
+ iconAriaLabel: m,
132
+ variant: r = "neutral",
133
133
  size: n = "md",
134
134
  pill: g = !1,
135
- emphasize: v = !1,
135
+ emphasize: p = !1,
136
136
  disabled: s = !1,
137
137
  className: c,
138
138
  withIcon: i,
139
- dataTestIdName: b = "Badge",
140
- dot: u = !1,
141
- ...x
142
- }, w) => {
143
- const o = a === "outline" ? !1 : v, { id: y } = f(() => _(b), [b]), d = !!e, z = f(
144
- () => D({
145
- variant: a,
139
+ dataTestIdName: h = "Badge",
140
+ dot: b = !1,
141
+ ...v
142
+ }, x) => {
143
+ const l = r === "outline" ? !1 : p, u = !!e, w = z(
144
+ () => j({
145
+ variant: r,
146
146
  size: n,
147
147
  pill: g,
148
- emphasize: o,
148
+ emphasize: l,
149
149
  disabled: s,
150
- withIcon: d || i,
150
+ withIcon: u || i,
151
151
  className: c
152
152
  }),
153
153
  [
154
- a,
154
+ r,
155
155
  n,
156
156
  g,
157
- o,
157
+ l,
158
158
  s,
159
- d,
159
+ u,
160
160
  i,
161
161
  c
162
162
  ]
163
163
  );
164
- return !t && !e && !u ? null : /* @__PURE__ */ N(
164
+ return !t && !e && !b ? null : /* @__PURE__ */ y(
165
165
  "div",
166
166
  {
167
- ref: w,
168
- className: z,
167
+ ref: x,
168
+ className: w,
169
169
  "aria-disabled": s || void 0,
170
170
  role: "status",
171
171
  tabIndex: s ? -1 : 0,
172
- "data-testid": y,
173
- ...x,
172
+ ...I(h),
173
+ ...v,
174
174
  children: [
175
- e && /* @__PURE__ */ r(m, { icon: e, iconAriaLabel: h }),
176
- u && !e && /* @__PURE__ */ r(p, { variant: a, emphasize: o }),
177
- t && /* @__PURE__ */ r(I, { variants: "action-emphasize", size: n, children: t })
175
+ e && /* @__PURE__ */ a(d, { icon: e, iconAriaLabel: m }),
176
+ b && !e && /* @__PURE__ */ a(f, { variant: r, emphasize: l }),
177
+ t && /* @__PURE__ */ a(B, { variants: "action-emphasize", size: n, children: t })
178
178
  ]
179
179
  }
180
180
  );
181
181
  }
182
182
  );
183
- O.displayName = "Badge";
183
+ D.displayName = "Badge";
184
184
  export {
185
- O as default
185
+ D as default
186
186
  };
@@ -1,25 +1,26 @@
1
- import { jsxs as v, jsx as r } from "react/jsx-runtime";
1
+ import { jsxs as T, jsx as n } from "react/jsx-runtime";
2
2
  import "react";
3
- import { button as T } from "./helper/index.js";
4
- import { cn as O } from "../../shared/utils/cn.js";
5
- import { dataTestId as S } from "../../shared/utils/dataTestId.js";
3
+ import { button as v } from "./helper/index.js";
4
+ import { cn as w } from "../../shared/utils/cn.js";
5
+ import { dataTestId as L } from "../../shared/utils/dataTestId.js";
6
6
  import a from "../Icon/Icon.js";
7
- import { Typography as j } from "../Typography/index.js";
8
- function A({
9
- variant: o = "primary",
10
- size: n = "medium",
7
+ import { Typography as O } from "../Typography/index.js";
8
+ import S from "../Loading/index.js";
9
+ function D({
10
+ variant: i = "primary",
11
+ size: s = "medium",
11
12
  iconOnly: u = !1,
12
13
  leadingIcon: m,
13
14
  trailingIcon: c,
14
- icon: i,
15
+ icon: o,
15
16
  loading: e = !1,
16
17
  className: l,
17
18
  children: d,
18
19
  disabled: p,
19
20
  ...f
20
21
  }) {
21
- const t = u && !!i, h = () => {
22
- switch (n) {
22
+ const r = u && !!o, h = () => {
23
+ switch (s) {
23
24
  case "xx-small":
24
25
  return 16;
25
26
  case "x-small":
@@ -33,7 +34,7 @@ function A({
33
34
  return 24;
34
35
  }
35
36
  }, x = () => {
36
- switch (n) {
37
+ switch (s) {
37
38
  case "xx-small":
38
39
  return "sm";
39
40
  case "x-small":
@@ -47,40 +48,32 @@ function A({
47
48
  default:
48
49
  return "md";
49
50
  }
50
- }, s = h(), y = e ? /* @__PURE__ */ r(
51
- a,
52
- {
53
- name: "activity-heart",
54
- size: s,
55
- className: "animate-spin",
56
- "aria-hidden": "true"
57
- }
58
- ) : null, I = m && !e ? /* @__PURE__ */ r(a, { name: m, size: s, "aria-hidden": "true" }) : null, z = c && !e ? /* @__PURE__ */ r(a, { name: c, size: s, "aria-hidden": "true" }) : null, b = t && !e ? /* @__PURE__ */ r(a, { name: i, size: s, "aria-hidden": "true" }) : null;
59
- return /* @__PURE__ */ v(
51
+ }, t = h(), y = e ? /* @__PURE__ */ n(S, { width: t, thickness: t / 5 }) : null, I = m && !e ? /* @__PURE__ */ n(a, { name: m, size: t, "aria-hidden": "true" }) : null, b = c && !e ? /* @__PURE__ */ n(a, { name: c, size: t, "aria-hidden": "true" }) : null, z = r && !e ? /* @__PURE__ */ n(a, { name: o, size: t, "aria-hidden": "true" }) : null;
52
+ return /* @__PURE__ */ T(
60
53
  "button",
61
54
  {
62
- className: O(
63
- T({
64
- variant: o,
65
- size: n,
66
- iconOnly: t,
67
- spacing: t ? void 0 : n
55
+ className: w(
56
+ v({
57
+ variant: i,
58
+ size: s,
59
+ iconOnly: r,
60
+ spacing: r ? void 0 : s
68
61
  }),
69
62
  l
70
63
  ),
71
64
  disabled: p || e,
72
- ...S("button"),
65
+ ...L("button"),
73
66
  ...f,
74
67
  children: [
75
68
  e && y,
76
- !e && !t && I,
77
- !e && t && b,
78
- !t && /* @__PURE__ */ r(j, { as: "div", variants: "action", size: x(), children: d }),
79
- !e && !t && z
69
+ !e && !r && I,
70
+ !e && r && z,
71
+ !r && /* @__PURE__ */ n(O, { as: "div", variants: "action", size: x(), children: d }),
72
+ !e && !r && b
80
73
  ]
81
74
  }
82
75
  );
83
76
  }
84
77
  export {
85
- A as default
78
+ D as default
86
79
  };
@@ -1,11 +1,12 @@
1
1
  import { default as React } from 'react';
2
- interface CheckBoxProps extends React.InputHTMLAttributes<HTMLInputElement> {
2
+ export interface CheckBoxProps extends React.InputHTMLAttributes<HTMLInputElement> {
3
3
  disabled?: boolean;
4
4
  label?: string;
5
5
  helpText?: string;
6
6
  id?: string;
7
7
  indeterminate?: boolean;
8
8
  onCheckedChange?: (checked: boolean) => void;
9
+ checkBoxSize?: 'medium' | 'large';
9
10
  }
10
11
  declare const CheckBox: React.ForwardRefExoticComponent<CheckBoxProps & React.RefAttributes<HTMLInputElement>>;
11
12
  export default CheckBox;
@@ -0,0 +1,85 @@
1
+ import { jsxs as i, jsx as e } from "react/jsx-runtime";
2
+ import b, { useRef as k, useEffect as N } from "react";
3
+ import { checkBoxInputContainerVariants as I, checkBoxVariants as R } from "./variants.js";
4
+ import { Typography as d } from "../Typography/index.js";
5
+ import "clsx";
6
+ import "tailwind-merge";
7
+ import { dataTestId as z } from "../../shared/utils/dataTestId.js";
8
+ import B from "../Icon/Icon.js";
9
+ const j = b.forwardRef(
10
+ ({
11
+ disabled: o,
12
+ label: m,
13
+ helpText: l,
14
+ id: f,
15
+ checked: a,
16
+ onChange: s,
17
+ indeterminate: t,
18
+ onCheckedChange: c,
19
+ checkBoxSize: u = "medium",
20
+ ...h
21
+ }, n) => {
22
+ const p = k(null);
23
+ N(() => {
24
+ const r = p.current || n?.current;
25
+ r && (r.indeterminate = !!t);
26
+ }, [t, n]);
27
+ const x = (r) => {
28
+ const v = r.target.checked;
29
+ s && s(r), c && c(v);
30
+ }, g = () => t ? "minus" : "check", y = () => t || a;
31
+ return /* @__PURE__ */ i("div", { ...z("checkbox"), className: "flex items-start gap-2", children: [
32
+ /* @__PURE__ */ i("div", { className: I({}), children: [
33
+ /* @__PURE__ */ e(
34
+ "input",
35
+ {
36
+ ...h,
37
+ ref: n || p,
38
+ defaultChecked: a,
39
+ id: f,
40
+ value: a ? "on" : "off",
41
+ checked: s || c ? a : void 0,
42
+ className: R({ disabled: o, indeterminate: t }),
43
+ type: "checkbox",
44
+ disabled: o,
45
+ onChange: x
46
+ }
47
+ ),
48
+ /* @__PURE__ */ e(
49
+ B,
50
+ {
51
+ className: `pointer-events-none absolute left-1/2 top-1/2 z-0 -translate-x-1/2 -translate-y-1/2 transition-opacity text-fg-checkbox ${y() ? "opacity-100" : "opacity-0"}`,
52
+ size: 16,
53
+ name: g()
54
+ }
55
+ )
56
+ ] }),
57
+ m && /* @__PURE__ */ i("div", { children: [
58
+ /* @__PURE__ */ e(
59
+ d,
60
+ {
61
+ htmlFor: f,
62
+ as: "label",
63
+ variants: "body",
64
+ size: u == "medium" ? "md" : "lg",
65
+ color: o ? "fg-brand-disabled" : "fg-neutral-main",
66
+ children: m
67
+ }
68
+ ),
69
+ l && /* @__PURE__ */ e(
70
+ d,
71
+ {
72
+ variants: "paragraph",
73
+ size: u === "medium" ? "sm" : "md",
74
+ color: o ? "fg-brand-disabled" : "fg-neutral-subtle",
75
+ children: l
76
+ }
77
+ )
78
+ ] })
79
+ ] });
80
+ }
81
+ );
82
+ j.displayName = "CheckBox";
83
+ export {
84
+ j as default
85
+ };
@@ -4,7 +4,7 @@ export declare const checkBoxInputContainerVariants: import('tailwind-variants')
4
4
  medium: string;
5
5
  large: string;
6
6
  };
7
- }, undefined, "relative flex items-center", {
7
+ }, undefined, "relative flex items-center mt-1", {
8
8
  size: {
9
9
  small: string;
10
10
  medium: string;
@@ -16,7 +16,7 @@ export declare const checkBoxInputContainerVariants: import('tailwind-variants')
16
16
  medium: string;
17
17
  large: string;
18
18
  };
19
- }, undefined, "relative flex items-center", unknown, unknown, undefined>>;
19
+ }, undefined, "relative flex items-center mt-1", unknown, unknown, undefined>>;
20
20
  export declare const checkBoxVariants: import('tailwind-variants').TVReturnType<{
21
21
  size: {
22
22
  small: string;
@@ -0,0 +1,39 @@
1
+ import { tv as e } from "../../node_modules/tailwind-variants/dist/index.js";
2
+ const a = e({
3
+ base: "relative flex items-center mt-1",
4
+ variants: {
5
+ size: {
6
+ small: "size-4",
7
+ medium: "size-5",
8
+ large: "size-6"
9
+ }
10
+ },
11
+ defaultVariants: {
12
+ size: "medium"
13
+ }
14
+ }), d = e({
15
+ // base: "before:content[''] checked:bg-foreground-brand peer cursor-pointer appearance-none rounded-[4px] border-2 border-neutral-strongest transition-all transition-colors duration-0 checked:border-none hover:shadow-hover-stage disabled:hover:shadow-none",
16
+ base: "before:content[''] peer cursor-pointer appearance-none rounded-sm border-2 border-neutral-strongest transition-all transition-colors duration-0 duration-300 bg-bg-level-2 checked:bg-bg-brand-rest checked:hover:bg-bg-brand-hover focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-bg-brand-rest",
17
+ variants: {
18
+ size: {
19
+ small: "size-4",
20
+ medium: "size-5",
21
+ large: "size-6"
22
+ },
23
+ disabled: {
24
+ true: "disabled:border-foreground-disabled cursor-default border-neutral bg-bg-level-2 checked:border-none disabled:cursor-not-allowed disabled:bg-bg-level-2 checked:disabled:bg-bg-brand-disabled",
25
+ false: "checked:border-active hover:border-fg-brand-rest checked:hover:border-bg-brand-hover"
26
+ },
27
+ indeterminate: {
28
+ true: "bg-bg-brand-rest border-bg-brand-rest hover:bg-bg-brand-hover hover:border-bg-brand-hover",
29
+ false: ""
30
+ }
31
+ },
32
+ defaultVariants: {
33
+ size: "medium"
34
+ }
35
+ });
36
+ export {
37
+ a as checkBoxInputContainerVariants,
38
+ d as checkBoxVariants
39
+ };
@@ -32,6 +32,7 @@ const q = (n) => {
32
32
  error: j,
33
33
  clearText: M,
34
34
  optionalProps: h,
35
+ // inputSize,
35
36
  ...e
36
37
  }, k) => {
37
38
  const [L, v] = D(!1), g = V || q(f), c = B(
@@ -1,5 +1,5 @@
1
1
  import { InputBaseProps } from '../InputBase';
2
- interface InputNumberProps extends InputBaseProps {
2
+ export interface InputNumberProps extends InputBaseProps {
3
3
  label?: string;
4
4
  helpText?: string;
5
5
  error?: boolean;
@@ -0,0 +1,70 @@
1
+ import { jsxs as o, jsx as r } from "react/jsx-runtime";
2
+ import { forwardRef as y, memo as g } from "react";
3
+ import "clsx";
4
+ import "tailwind-merge";
5
+ import { dataTestId as v } from "../../shared/utils/dataTestId.js";
6
+ import b from "../InputBase/index.js";
7
+ import { Typography as a } from "../Typography/index.js";
8
+ import I from "../Icon/Icon.js";
9
+ const c = y(
10
+ ({
11
+ label: i,
12
+ helpText: n,
13
+ error: e,
14
+ color: s,
15
+ disabled: p,
16
+ width: l,
17
+ padding: d,
18
+ centered: f = !0,
19
+ ...t
20
+ }, u) => /* @__PURE__ */ o(
21
+ "div",
22
+ {
23
+ style: {
24
+ width: l
25
+ },
26
+ ...v("InputNumber"),
27
+ children: [
28
+ i && /* @__PURE__ */ o("div", { children: [
29
+ /* @__PURE__ */ r(a, { variants: "label", size: "md", color: "default", children: i }),
30
+ t.required && /* @__PURE__ */ r(a, { variants: "label", size: "md", color: "fg-accent-error", children: "*" })
31
+ ] }),
32
+ /* @__PURE__ */ r(
33
+ b,
34
+ {
35
+ ref: u,
36
+ disabled: p,
37
+ width: l,
38
+ type: "number",
39
+ onKeyDown: (m) => {
40
+ ["e", "E", "+", "-", "."].includes(m.key) && m.preventDefault();
41
+ },
42
+ ...t,
43
+ color: e ? "error" : s || "primary",
44
+ style: {
45
+ padding: d,
46
+ textAlign: f ? "center" : "left",
47
+ ...t.style
48
+ }
49
+ }
50
+ ),
51
+ n && /* @__PURE__ */ o("div", { className: "flex items-center gap-1", children: [
52
+ e && /* @__PURE__ */ r(I, { name: "alert-circle", color: "error" }),
53
+ /* @__PURE__ */ r(
54
+ a,
55
+ {
56
+ variants: "paragraph",
57
+ color: e ? "fg-accent-error" : "fg-neutral-subtle",
58
+ children: n
59
+ }
60
+ )
61
+ ] })
62
+ ]
63
+ }
64
+ )
65
+ );
66
+ c.displayName = "InputNumber";
67
+ const w = g(c);
68
+ export {
69
+ w as default
70
+ };
@@ -1,6 +1,7 @@
1
1
  export interface LoadingProps {
2
2
  width?: string | number;
3
3
  thickness?: number;
4
+ className?: string;
4
5
  }
5
- declare const Loading: ({ width, thickness }: LoadingProps) => import("react/jsx-runtime").JSX.Element;
6
+ declare const Loading: ({ width, thickness, className }: LoadingProps) => import("react/jsx-runtime").JSX.Element;
6
7
  export default Loading;
@@ -1,22 +1,24 @@
1
- import { jsx as d } from "react/jsx-runtime";
1
+ import { jsx as i } from "react/jsx-runtime";
2
2
  import "clsx";
3
3
  import "tailwind-merge";
4
- import { dataTestId as t } from "../../shared/utils/dataTestId.js";
5
- const f = ({ width: i = 80, thickness: a = 12 }) => /* @__PURE__ */ d(
4
+ import { dataTestId as o } from "../../shared/utils/dataTestId.js";
5
+ const s = ({ width: a = 80, thickness: r = 12, className: t }) => /* @__PURE__ */ i(
6
6
  "div",
7
7
  {
8
- ...t("Loading"),
9
- className: "loading-spinner",
8
+ ...o("Loading"),
9
+ className: `loading-spinner ${t ?? ""}`,
10
10
  style: {
11
- width: i,
11
+ width: a,
12
12
  aspectRatio: "1",
13
13
  borderRadius: "50%",
14
- background: `radial-gradient(farthest-side, #d4d4d8 94%, #0000) top/${a}px ${a}px no-repeat, conic-gradient(#fff 10%, #d4d4d8)`,
15
- WebkitMask: `radial-gradient(farthest-side, #0000 calc(100% - ${a}px), #fff 0)`,
16
- animation: "l13 1s infinite linear"
14
+ background: `radial-gradient(farthest-side, currentColor 94%, #0000) top/${r}px ${r}px no-repeat, conic-gradient(transparent 10%, currentColor)`,
15
+ WebkitMask: `radial-gradient(farthest-side, #0000 calc(100% - ${r}px), #fff 0)`,
16
+ animation: "l13 1s infinite linear",
17
+ color: "inherit"
18
+ // inherit color from Tailwind class
17
19
  }
18
20
  }
19
21
  );
20
22
  export {
21
- f as default
23
+ s as default
22
24
  };
@@ -1,7 +1,7 @@
1
1
  import { jsxs as l, jsx as s } from "react/jsx-runtime";
2
2
  import * as n from "react";
3
3
  import G from "../../node_modules/libphonenumber-js/examples.mobile.json.js";
4
- import { cn as b } from "../../shared/utils/cn.js";
4
+ import { cn as C } from "../../shared/utils/cn.js";
5
5
  import { COUNTRIES_DATA as Q } from "../../shared/flags/countries-data.js";
6
6
  import { FLAG_POSITIONS as W } from "../../shared/flags/flag-positions.js";
7
7
  import { FLAG_BASE64 as Y } from "../../shared/flags/base64.js";
@@ -19,7 +19,7 @@ const v = ({
19
19
  return /* @__PURE__ */ s("div", { className: "w-[30px] h-[20px] overflow-hidden rounded-xs", children: t === void 0 ? /* @__PURE__ */ s(K, {}) : /* @__PURE__ */ s(
20
20
  "div",
21
21
  {
22
- className: b(),
22
+ className: C(),
23
23
  style: {
24
24
  backgroundImage: `url('${Y}')`,
25
25
  backgroundPosition: `${t.x}px ${t.y}px`,
@@ -72,20 +72,20 @@ const v = ({
72
72
  // placeholder = 'Enter phone number',
73
73
  ...k
74
74
  }, A) => {
75
- const [y, L] = n.useState(!1), [T, w] = n.useState(!1), [i, V] = n.useState(
75
+ const [b, L] = n.useState(!1), [T, y] = n.useState(!1), [i, V] = n.useState(
76
76
  t || a[0]?.code || "us"
77
- ), [h, S] = n.useState(""), g = n.useRef(null), I = y, x = n.useCallback((e) => {
78
- L(e), e || S("");
77
+ ), [h, w] = n.useState(""), S = n.useRef(null), I = b, g = n.useCallback((e) => {
78
+ L(e), e || w("");
79
79
  }, []), m = n.useMemo(
80
80
  () => a.find((e) => e.code === i) || a[0],
81
81
  [a, i]
82
- ), _ = n.useMemo(() => d || ee(i), [i, d]), C = q({
82
+ ), _ = n.useMemo(() => d || ee(i), [i, d]), x = q({
83
83
  size: z,
84
84
  opened: I,
85
85
  inputFocused: T
86
86
  }), $ = n.useCallback(
87
87
  (e) => {
88
- if (o?.(e), x(!1), V(e.code), t && t.trim()) {
88
+ if (o?.(e), g(!1), V(e.code), t && t.trim()) {
89
89
  const r = F(
90
90
  t,
91
91
  e.code
@@ -97,7 +97,7 @@ const v = ({
97
97
  });
98
98
  }
99
99
  },
100
- [o, x, t, c]
100
+ [o, g, t, c]
101
101
  ), E = n.useMemo(() => a.filter(
102
102
  (e) => e.name.toLowerCase().includes(h.toLowerCase()) || e.code.toLowerCase().includes(h.toLowerCase())
103
103
  ).map((e) => ({
@@ -137,12 +137,12 @@ const v = ({
137
137
  },
138
138
  [m, c, i, t]
139
139
  );
140
- return console.log(g.current?.clientWidth), /* @__PURE__ */ l("div", { className: b("flex items-center", O), ref: g, children: [
140
+ return /* @__PURE__ */ l("div", { className: C("flex items-center", O), ref: S, children: [
141
141
  /* @__PURE__ */ s(
142
142
  H,
143
143
  {
144
- open: y,
145
- onOpenChange: x,
144
+ open: b,
145
+ onOpenChange: g,
146
146
  items: E,
147
147
  value: i,
148
148
  onValueChange: (e) => {
@@ -157,10 +157,10 @@ const v = ({
157
157
  searchPlaceholder: P,
158
158
  enableVirtualization: !0,
159
159
  onSearchChange: (e) => {
160
- S(e);
160
+ w(e);
161
161
  },
162
- width: g.current?.clientWidth || "auto",
163
- children: /* @__PURE__ */ l("div", { className: C.countryButton(), children: [
162
+ width: S.current?.clientWidth || "auto",
163
+ children: /* @__PURE__ */ l("div", { className: x.countryButton(), children: [
164
164
  /* @__PURE__ */ s(v, { countryCode: i }),
165
165
  /* @__PURE__ */ l("div", { className: "flex gap-xs-4", children: [
166
166
  /* @__PURE__ */ l(N, { variants: "body", size: "md", children: [
@@ -172,17 +172,17 @@ const v = ({
172
172
  ] })
173
173
  }
174
174
  ),
175
- /* @__PURE__ */ s("div", { className: C.inputContainer({ error: R }), children: /* @__PURE__ */ s(
175
+ /* @__PURE__ */ s("div", { className: x.inputContainer({ error: R }), children: /* @__PURE__ */ s(
176
176
  "input",
177
177
  {
178
178
  ...k,
179
179
  ref: A,
180
- className: b(C.input()),
180
+ className: C(x.input()),
181
181
  placeholder: _,
182
182
  value: t,
183
183
  onChange: B,
184
- onFocus: () => w(!0),
185
- onBlur: () => w(!1),
184
+ onFocus: () => y(!0),
185
+ onBlur: () => y(!1),
186
186
  "data-testid": D
187
187
  }
188
188
  ) })
@@ -5,6 +5,7 @@ export interface HelpTextProps {
5
5
  haveIcon?: boolean;
6
6
  iconsCustom?: React.ReactNode;
7
7
  className?: string;
8
+ iconsSize?: number;
8
9
  }
9
10
  declare const HelpText: React.FC<HelpTextProps>;
10
11
  export default HelpText;
@@ -1,43 +1,44 @@
1
- import { jsxs as i, jsx as e } from "react/jsx-runtime";
1
+ import { jsxs as c, jsx as a } from "react/jsx-runtime";
2
2
  import "react";
3
- import { Typography as c } from "../Typography/index.js";
3
+ import { Typography as f } from "../Typography/index.js";
4
4
  import s from "../Icon/Icon.js";
5
- const u = ({
6
- text: r,
7
- error: a = !1,
8
- haveIcon: l = !0,
9
- iconsCustom: t,
10
- className: n
11
- }) => r ? /* @__PURE__ */ i("div", { className: `flex items-center gap-1 ${n || ""}`, children: [
12
- a && (t || /* @__PURE__ */ e(
5
+ const d = ({
6
+ text: t,
7
+ error: r = !1,
8
+ haveIcon: n = !0,
9
+ iconsCustom: l,
10
+ className: m,
11
+ iconsSize: e = 16
12
+ }) => t ? /* @__PURE__ */ c("div", { className: `flex items-center gap-1 ${m || ""}`, children: [
13
+ r && (l || /* @__PURE__ */ a(
13
14
  s,
14
15
  {
15
16
  name: "alert-octagon",
16
17
  className: "text-fg-accent-error",
17
- variant: "solid",
18
- size: 16
18
+ size: typeof e == "number" ? e : 16,
19
+ variant: "solid"
19
20
  }
20
21
  )),
21
- l && !a && /* @__PURE__ */ e(
22
+ n && !r && /* @__PURE__ */ a(
22
23
  s,
23
24
  {
24
25
  name: "help-circle",
25
26
  variant: "line",
26
27
  className: "text-fg-neutral-subtle",
27
- size: 16
28
+ size: typeof e == "number" ? e : 16
28
29
  }
29
30
  ),
30
- /* @__PURE__ */ e("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ e(
31
- c,
31
+ /* @__PURE__ */ a("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ a(
32
+ f,
32
33
  {
33
34
  variants: "paragraph",
34
35
  size: "sm",
35
- color: a ? "fg-accent-error" : "fg-neutral-subtle",
36
+ color: r ? "fg-accent-error" : "fg-neutral-subtle",
36
37
  className: "font-body-sm",
37
- children: r
38
+ children: t
38
39
  }
39
40
  ) })
40
41
  ] }) : null;
41
42
  export {
42
- u as default
43
+ d as default
43
44
  };
@@ -1,50 +1,51 @@
1
1
  import { jsxs as r, jsx as a } from "react/jsx-runtime";
2
2
  import { forwardRef as T, memo as p } from "react";
3
3
  import I from "../InputBase/index.js";
4
- import { Typography as m } from "../Typography/index.js";
4
+ import { Typography as n } from "../Typography/index.js";
5
5
  import H from "./HelperText.js";
6
6
  import "clsx";
7
7
  import "tailwind-merge";
8
8
  import { dataTestId as A } from "../../shared/utils/dataTestId.js";
9
9
  const d = T(
10
10
  ({
11
- label: n,
11
+ label: s,
12
12
  helpText: x,
13
- error: s,
14
- color: o,
15
- disabled: f,
13
+ error: l,
14
+ color: f,
15
+ disabled: o,
16
16
  readOnly: u,
17
- width: l,
17
+ width: c,
18
18
  type: i,
19
19
  iconsCustom: g,
20
- iconsSize: c = 24,
20
+ iconsSize: m = 24,
21
21
  fontSize: h,
22
22
  optionalProps: e,
23
23
  indicatorLength: v,
24
24
  haveIcon: y,
25
+ // inputSize = 'md',
25
26
  clearText: b,
26
27
  ...t
27
28
  }, N) => /* @__PURE__ */ r(
28
29
  "div",
29
30
  {
30
31
  style: {
31
- width: l
32
+ width: c
32
33
  },
33
34
  ...A("TextField"),
34
35
  children: [
35
36
  /* @__PURE__ */ r("div", { className: "flex items-center justify-between", children: [
36
- n && /* @__PURE__ */ r("div", { className: "mb-1 flex items-center gap-[2px]", children: [
37
+ s && /* @__PURE__ */ r("div", { className: "mb-1 flex items-center gap-[2px]", children: [
37
38
  /* @__PURE__ */ a(
38
- m,
39
+ n,
39
40
  {
40
41
  variants: "action",
41
42
  size: "sm",
42
43
  color: "fg-neutral-subtle",
43
- children: n
44
+ children: s
44
45
  }
45
46
  ),
46
47
  t.required && /* @__PURE__ */ a(
47
- m,
48
+ n,
48
49
  {
49
50
  variants: "action",
50
51
  size: "sm",
@@ -55,7 +56,7 @@ const d = T(
55
56
  )
56
57
  ] }),
57
58
  i === "textarea" && e?.showIndicator && /* @__PURE__ */ r(
58
- m,
59
+ n,
59
60
  {
60
61
  variants: "action",
61
62
  size: "sm",
@@ -74,12 +75,12 @@ const d = T(
74
75
  I,
75
76
  {
76
77
  ref: N,
77
- disabled: f,
78
+ disabled: o,
78
79
  readOnly: u,
79
- width: l,
80
+ width: c,
80
81
  type: i,
81
82
  fontSize: h,
82
- iconsSize: typeof c == "number" ? c : 24,
83
+ iconsSize: typeof m == "number" ? m : 24,
83
84
  optionalProps: e,
84
85
  clearText: b,
85
86
  InputComponent: i === "textarea" ? /* @__PURE__ */ a(
@@ -95,7 +96,7 @@ const d = T(
95
96
  }
96
97
  ) : void 0,
97
98
  ...t,
98
- color: s ? "error" : o || "primary"
99
+ color: l ? "error" : f || "primary"
99
100
  }
100
101
  ),
101
102
  /* @__PURE__ */ a(
@@ -103,8 +104,9 @@ const d = T(
103
104
  {
104
105
  className: "mt-1",
105
106
  text: x,
106
- error: s,
107
+ error: l,
107
108
  haveIcon: y,
109
+ iconsSize: m,
108
110
  iconsCustom: g
109
111
  }
110
112
  )
package/dist/index.d.ts CHANGED
@@ -57,10 +57,14 @@ export type { InputDatePickerProps } from './components/InputDatePicker';
57
57
  export type { QuantityInputProps } from './components/QuantityInput';
58
58
  export { default as TextField } from './components/TextField';
59
59
  export type { TextFieldProps } from './components/TextField';
60
+ export { default as InputNumber } from './components/InputNumber';
61
+ export type { InputNumberProps } from './components/InputNumber';
60
62
  export { default as TopNavigationBar } from './components/TopNavigationBar';
61
63
  export type { TopNavigationBarProps } from './components/TopNavigationBar';
62
64
  export { default as InputBase } from './components/InputBase';
63
65
  export type { InputBaseProps } from './components/InputBase';
66
+ export { default as CheckBox } from './components/CheckBox';
67
+ export type { CheckBoxProps } from './components/CheckBox';
64
68
  export { Icons } from './components/Icon';
65
69
  export type { IconProps, IconName } from './components/Icon';
66
70
  export { default as HelperText } from './components/TextField/HelperText';
package/dist/index.js CHANGED
@@ -4,15 +4,15 @@ import { default as x } from "./components/ButtonFilter/index.js";
4
4
  import { default as d } from "./components/Avatar/index.js";
5
5
  import { default as l } from "./components/AvatarGroup/index.js";
6
6
  import { default as n } from "./components/Loading/index.js";
7
- import { Box as g } from "./components/Box/index.js";
7
+ import { Box as c } from "./components/Box/index.js";
8
8
  import { default as P } from "./components/Divider/index.js";
9
9
  import { Popover as I } from "./components/Popover/index.js";
10
10
  import { Dropdown as C } from "./components/Dropdown/index.js";
11
- import { default as w } from "./components/Select/index.js";
12
- import { MenuItem as S } from "./components/MenuItem/index.js";
13
- import { Typography as k } from "./components/Typography/index.js";
11
+ import { default as b } from "./components/Select/index.js";
12
+ import { MenuItem as w } from "./components/MenuItem/index.js";
13
+ import { Typography as S } from "./components/Typography/index.js";
14
14
  import { Image as A } from "./components/Image/index.js";
15
- import { ToastProvider as R, Toast as V, ToastAction as M, ToastClose as F, ToastViewport as H } from "./components/Toast/index.js";
15
+ import { ToastProvider as R, Toast as V, ToastAction as M, ToastClose as N, ToastViewport as F } from "./components/Toast/index.js";
16
16
  import { PhoneInput as z } from "./components/PhoneInput/index.js";
17
17
  import { ToastProvider as U } from "./components/Toast/ToastProvider.js";
18
18
  import { useToast as j } from "./components/Toast/hooks.js";
@@ -28,93 +28,97 @@ import { YearGrid as xo } from "./components/DatePicker/YearGrid.js";
28
28
  import { CalendarGrid as io } from "./components/DatePicker/CalendarGrid.js";
29
29
  import { DateRangePicker as uo } from "./components/DatePicker/DateRangePicker.js";
30
30
  import { default as To } from "./components/InputPassword/index.js";
31
- import { default as co } from "./components/InputDatePicker/index.js";
31
+ import { default as go } from "./components/InputDatePicker/index.js";
32
32
  import { default as ho } from "./components/TextField/index.js";
33
- import { default as vo } from "./components/TopNavigationBar/index.js";
34
- import { default as Bo } from "./components/InputBase/index.js";
35
- import { default as Do } from "./components/Icon/Icon.js";
36
- import { default as bo } from "./components/TextField/HelperText.js";
37
- import { PIN as yo } from "./components/PIN/index.js";
38
- import { ProgressBar as Go } from "./components/ProgressBar/index.js";
39
- import { Breadcrumb as Vo } from "./components/Breadcrumb/index.js";
40
- import { default as Fo } from "./components/Modal/index.js";
41
- import { getColorVar as No, getSemanticColorVar as zo, getSpacingVar as Lo } from "./tokens/index.js";
33
+ import { default as vo } from "./components/InputNumber/index.js";
34
+ import { default as Bo } from "./components/TopNavigationBar/index.js";
35
+ import { default as ko } from "./components/InputBase/index.js";
36
+ import { default as Do } from "./components/CheckBox/index.js";
37
+ import { default as yo } from "./components/Icon/Icon.js";
38
+ import { default as Go } from "./components/TextField/HelperText.js";
39
+ import { PIN as Vo } from "./components/PIN/index.js";
40
+ import { ProgressBar as No } from "./components/ProgressBar/index.js";
41
+ import { Breadcrumb as Ho } from "./components/Breadcrumb/index.js";
42
+ import { default as Lo } from "./components/Modal/index.js";
43
+ import { getColorVar as Yo, getSemanticColorVar as jo, getSpacingVar as qo } from "./tokens/index.js";
42
44
  import "clsx";
43
45
  import "tailwind-merge";
44
- import { dataTestId as Yo, generateTestId as jo } from "./shared/utils/dataTestId.js";
45
- import { alphaColors as Eo, baseColors as Jo, colorScales as Ko, ringColors as Oo } from "./tokens/primitives/colors.js";
46
- import { typography as Wo } from "./tokens/primitives/typography.js";
47
- import { borderRadius as Zo, shadows as _o, spacing as $o, transitions as or, zIndex as rr } from "./tokens/primitives/layout.js";
48
- import { ThemeProvider as tr } from "./tokens/theme.js";
49
- import { useTheme as pr } from "./tokens/hooks.js";
50
- import { themeUtils as mr } from "./tokens/utils.js";
51
- import { generateTailwindConfig as sr } from "./tokens/tailwind-config.js";
52
- import { semanticTokens as ir } from "./tokens/semantic.js";
46
+ import { dataTestId as Jo, generateTestId as Ko } from "./shared/utils/dataTestId.js";
47
+ import { alphaColors as Qo, baseColors as Wo, colorScales as Xo, ringColors as Zo } from "./tokens/primitives/colors.js";
48
+ import { typography as $o } from "./tokens/primitives/typography.js";
49
+ import { borderRadius as rr, shadows as er, spacing as tr, transitions as ar, zIndex as pr } from "./tokens/primitives/layout.js";
50
+ import { ThemeProvider as mr } from "./tokens/theme.js";
51
+ import { useTheme as sr } from "./tokens/hooks.js";
52
+ import { themeUtils as ir } from "./tokens/utils.js";
53
+ import { generateTailwindConfig as ur } from "./tokens/tailwind-config.js";
54
+ import { semanticTokens as Tr } from "./tokens/semantic.js";
53
55
  export {
54
56
  a as Alert,
55
57
  d as Avatar,
56
58
  l as AvatarGroup,
57
- g as Box,
58
- Vo as Breadcrumb,
59
+ c as Box,
60
+ Ho as Breadcrumb,
59
61
  f as Button,
60
62
  x as ButtonFilter,
61
63
  io as CalendarGrid,
64
+ Do as CheckBox,
62
65
  _ as Chip,
63
66
  to as DatePicker,
64
67
  ao as DatePickerHeader,
65
68
  uo as DateRangePicker,
66
69
  P as Divider,
67
70
  C as Dropdown,
68
- bo as HelperText,
69
- Do as Icons,
71
+ Go as HelperText,
72
+ yo as Icons,
70
73
  A as Image,
71
- Bo as InputBase,
72
- co as InputDatePicker,
74
+ ko as InputBase,
75
+ go as InputDatePicker,
76
+ vo as InputNumber,
73
77
  To as InputPassword,
74
78
  n as Loading,
75
- S as MenuItem,
76
- Fo as Modal,
79
+ w as MenuItem,
80
+ Lo as Modal,
77
81
  fo as MonthGrid,
78
- yo as PIN,
82
+ Vo as PIN,
79
83
  z as PhoneInput,
80
84
  I as Popover,
81
- Go as ProgressBar,
85
+ No as ProgressBar,
82
86
  E as Radio,
83
87
  R as RadixToastProvider,
84
- w as Select,
88
+ b as Select,
85
89
  Q as Sidebar,
86
90
  K as Switch,
87
91
  X as Tabs,
88
92
  ho as TextField,
89
- tr as ThemeProvider,
93
+ mr as ThemeProvider,
90
94
  V as Toast,
91
95
  M as ToastAction,
92
- F as ToastClose,
96
+ N as ToastClose,
93
97
  U as ToastProvider,
94
- H as ToastViewport,
98
+ F as ToastViewport,
95
99
  oo as Tooltip,
96
100
  ro as TooltipProvider,
97
- vo as TopNavigationBar,
98
- k as Typography,
101
+ Bo as TopNavigationBar,
102
+ S as Typography,
99
103
  xo as YearGrid,
100
- Eo as alphaColors,
101
- Jo as baseColors,
102
- Zo as borderRadius,
103
- Ko as colorScales,
104
- Yo as dataTestId,
105
- sr as generateTailwindConfig,
106
- jo as generateTestId,
107
- No as getColorVar,
108
- zo as getSemanticColorVar,
109
- Lo as getSpacingVar,
110
- Oo as ringColors,
111
- ir as semanticTokens,
112
- _o as shadows,
113
- $o as spacing,
114
- mr as themeUtils,
115
- or as transitions,
116
- Wo as typography,
117
- pr as useTheme,
104
+ Qo as alphaColors,
105
+ Wo as baseColors,
106
+ rr as borderRadius,
107
+ Xo as colorScales,
108
+ Jo as dataTestId,
109
+ ur as generateTailwindConfig,
110
+ Ko as generateTestId,
111
+ Yo as getColorVar,
112
+ jo as getSemanticColorVar,
113
+ qo as getSpacingVar,
114
+ Zo as ringColors,
115
+ Tr as semanticTokens,
116
+ er as shadows,
117
+ tr as spacing,
118
+ ir as themeUtils,
119
+ ar as transitions,
120
+ $o as typography,
121
+ sr as useTheme,
118
122
  j as useToast,
119
- rr as zIndex
123
+ pr as zIndex
120
124
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mcr-design-systems",
3
3
  "private": false,
4
- "version": "1.0.9",
4
+ "version": "1.0.11",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "types": "dist/index.d.ts",