@pittorica/text-field-react 0.25.0 → 0.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -4,16 +4,33 @@ The `TextField` component.
4
4
 
5
5
  ## Installation
6
6
 
7
- ```bash
7
+ \`\`\`bash
8
8
  npm install @pittorica/text-field-react
9
- ```
9
+ \`\`\`
10
10
 
11
11
  ## Usage
12
12
 
13
- ```jsx
13
+ \`\`\`jsx
14
14
  import { TextField } from '@pittorica/text-field-react';
15
- // TODO: Add usage example
16
- ```
15
+
16
+ function MyForm() {
17
+ return (
18
+
19
+ <form>
20
+ <TextField.Root
21
+ label="Username"
22
+ name="username"
23
+ required // Mark as required
24
+ color="source" // Default color is now 'source'
25
+ size="sm"
26
+ helperText="Enter your username." >
27
+ <TextField.Input placeholder="e.g. john_doe" />
28
+ </TextField.Root>
29
+ <button type="submit">Submit</button>
30
+ </form>
31
+ );
32
+ }
33
+ \`\`\`
17
34
 
18
35
  ## License
19
36
 
@@ -12,6 +12,7 @@ export type TextFieldRootProps<E extends ElementType = 'div'> = BoxProps<E> & {
12
12
  color?: PittoricaColor;
13
13
  disabled?: boolean;
14
14
  name?: string;
15
+ required?: boolean;
15
16
  /** @default 'sm' */
16
17
  size?: TextFieldSize;
17
18
  };
@@ -19,7 +20,7 @@ export type TextFieldRootProps<E extends ElementType = 'div'> = BoxProps<E> & {
19
20
  * Root container for TextField. Orchestrates layout, context, and sizes.
20
21
  */
21
22
  export declare const TextFieldRoot: {
22
- <E extends ElementType = "div">({ children, label, helperText, error, color, disabled, name, size, className, style, as, ...props }: TextFieldRootProps<E>): import("react/jsx-runtime").JSX.Element;
23
+ <E extends ElementType = "div">({ children, label, helperText, error, color, disabled, name, required, size, className, style, as, ...props }: TextFieldRootProps<E>): import("react/jsx-runtime").JSX.Element;
23
24
  displayName: string;
24
25
  };
25
26
  /**
@@ -43,8 +44,11 @@ export declare const TextFieldSlot: {
43
44
  displayName: string;
44
45
  };
45
46
  export declare const TextField: {
47
+ <E extends ElementType = "div">({ children, label, helperText, error, color, disabled, name, required, size, className, style, as, ...props }: TextFieldRootProps<E>): import("react/jsx-runtime").JSX.Element;
48
+ displayName: string;
49
+ } & {
46
50
  Root: {
47
- <E extends ElementType = "div">({ children, label, helperText, error, color, disabled, name, size, className, style, as, ...props }: TextFieldRootProps<E>): import("react/jsx-runtime").JSX.Element;
51
+ <E extends ElementType = "div">({ children, label, helperText, error, color, disabled, name, required, size, className, style, as, ...props }: TextFieldRootProps<E>): import("react/jsx-runtime").JSX.Element;
48
52
  displayName: string;
49
53
  };
50
54
  Input: {
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../src/TextField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEZ,KAAK,WAAW,EAChB,KAAK,SAAS,EAGf,MAAM,OAAO,CAAC;AAIf,OAAO,EAAO,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,KAAK,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAuBtD;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,WAAW,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG;IAC5E,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,IAAI,CAAC,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa;KAAI,CAAC,SAAS,WAAW,+GAahD,kBAAkB,CAAC,CAAC,CAAC;;CA2DvB,CAAC;AAIF;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,cAAc;8BAGxB,mBAAmB;;CAarB,CAAC;AAIF;;;GAGG;AACH,eAAO,MAAM,aAAa;KAAI,CAAC,SAAS,WAAW,iDAKhD,QAAQ,CAAC,CAAC,CAAC;;CAWb,CAAC;AAEF,eAAO,MAAM,SAAS;;SA/HQ,CAAC,SAAS,WAAW,+GAahD,kBAAkB,CAAC,CAAC,CAAC;;;;kCA2ErB,mBAAmB;;;;SAqBQ,CAAC,SAAS,WAAW,iDAKhD,QAAQ,CAAC,CAAC,CAAC;;;CAiBb,CAAC"}
1
+ {"version":3,"file":"TextField.d.ts","sourceRoot":"","sources":["../src/TextField.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAEZ,KAAK,WAAW,EAChB,KAAK,SAAS,EAGf,MAAM,OAAO,CAAC;AAIf,OAAO,EAAO,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAG5D,KAAK,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAwBtD;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,WAAW,GAAG,KAAK,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG;IAC5E,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,cAAc,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oBAAoB;IACpB,IAAI,CAAC,EAAE,aAAa,CAAC;CACtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa;KAAI,CAAC,SAAS,WAAW,yHAchD,kBAAkB,CAAC,CAAC,CAAC;;CA6DvB,CAAC;AAIF;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,cAAc;8BAGxB,mBAAmB;;CAoBrB,CAAC;AAIF;;;GAGG;AACH,eAAO,MAAM,aAAa;KAAI,CAAC,SAAS,WAAW,iDAKhD,QAAQ,CAAC,CAAC,CAAC;;CAWb,CAAC;AAEF,eAAO,MAAM,SAAS;KAzIQ,CAAC,SAAS,WAAW,yHAchD,kBAAkB,CAAC,CAAC,CAAC;;;;SAdM,CAAC,SAAS,WAAW,yHAchD,kBAAkB,CAAC,CAAC,CAAC;;;;kCA6ErB,mBAAmB;;;;SA4BQ,CAAC,SAAS,WAAW,iDAKhD,QAAQ,CAAC,CAAC,CAAC;;;CAiBZ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,2 @@
1
- export type { TextFieldInputProps, TextFieldRootProps } from './TextField.js';
2
- export { TextField, TextFieldInput, TextFieldRoot, TextFieldSlot, } from './TextField.js';
1
+ export * from './TextField.js';
3
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EACL,SAAS,EACT,cAAc,EACd,aAAa,EACb,aAAa,GACd,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -1,158 +1,162 @@
1
- import { jsx as u, jsxs as J } from "react/jsx-runtime";
2
- import { createContext as K, useId as L, use as M } from "react";
3
- function S(t) {
4
- var r, a, i = "";
1
+ import { jsx as x, jsxs as q } from "react/jsx-runtime";
2
+ import { createContext as K, useId as I, use as M } from "react";
3
+ function W(t) {
4
+ var e, r, i = "";
5
5
  if (typeof t == "string" || typeof t == "number") i += t;
6
6
  else if (typeof t == "object") if (Array.isArray(t)) {
7
7
  var p = t.length;
8
- for (r = 0; r < p; r++) t[r] && (a = S(t[r])) && (i && (i += " "), i += a);
9
- } else for (a in t) t[a] && (i && (i += " "), i += a);
8
+ for (e = 0; e < p; e++) t[e] && (r = W(t[e])) && (i && (i += " "), i += r);
9
+ } else for (r in t) t[r] && (i && (i += " "), i += r);
10
10
  return i;
11
11
  }
12
- function B() {
13
- for (var t, r, a = 0, i = "", p = arguments.length; a < p; a++) (t = arguments[a]) && (r = S(t)) && (i && (i += " "), i += r);
12
+ function L() {
13
+ for (var t, e, r = 0, i = "", p = arguments.length; r < p; r++) (t = arguments[r]) && (e = W(t)) && (i && (i += " "), i += e);
14
14
  return i;
15
15
  }
16
- function j(t) {
17
- var r, a, i = "";
16
+ function C(t) {
17
+ var e, r, i = "";
18
18
  if (typeof t == "string" || typeof t == "number") i += t;
19
19
  else if (typeof t == "object") if (Array.isArray(t)) {
20
20
  var p = t.length;
21
- for (r = 0; r < p; r++) t[r] && (a = j(t[r])) && (i && (i += " "), i += a);
22
- } else for (a in t) t[a] && (i && (i += " "), i += a);
21
+ for (e = 0; e < p; e++) t[e] && (r = C(t[e])) && (i && (i += " "), i += r);
22
+ } else for (r in t) t[r] && (i && (i += " "), i += r);
23
23
  return i;
24
24
  }
25
- function O() {
26
- for (var t, r, a = 0, i = "", p = arguments.length; a < p; a++) (t = arguments[a]) && (r = j(t)) && (i && (i += " "), i += r);
25
+ function P() {
26
+ for (var t, e, r = 0, i = "", p = arguments.length; r < p; r++) (t = arguments[r]) && (e = C(t)) && (i && (i += " "), i += e);
27
27
  return i;
28
28
  }
29
- const z = ({
29
+ const S = ({
30
30
  as: t,
31
- children: r,
32
- display: a,
31
+ children: e,
32
+ display: r,
33
33
  m: i,
34
34
  mt: p,
35
35
  mr: s,
36
36
  mb: o,
37
- ml: l,
37
+ ml: d,
38
38
  mx: n,
39
39
  my: c,
40
- p: f,
41
- pt: v,
42
- pr: m,
43
- pb: g,
44
- pl: h,
45
- px: d,
46
- py: x,
40
+ p: u,
41
+ pt: f,
42
+ pr: v,
43
+ pb: l,
44
+ pl: m,
45
+ px: g,
46
+ py: h,
47
47
  width: $,
48
48
  height: y,
49
49
  position: b,
50
50
  style: T,
51
51
  className: N,
52
52
  disabled: w,
53
+ required: R,
53
54
  ...F
54
55
  }) => {
55
- const R = t || "div", e = {};
56
- a && (e.display = a), $ && (e.width = $), y && (e.height = y), b && (e.position = b), i && (e.margin = `var(--pittorica-space-${i})`), p && (e.marginTop = `var(--pittorica-space-${p})`), s && (e.marginRight = `var(--pittorica-space-${s})`), o && (e.marginBottom = `var(--pittorica-space-${o})`), l && (e.marginLeft = `var(--pittorica-space-${l})`), n && (e.marginLeft = `var(--pittorica-space-${n})`, e.marginRight = `var(--pittorica-space-${n})`), c && (e.marginTop = `var(--pittorica-space-${c})`, e.marginBottom = `var(--pittorica-space-${c})`), f && (e.padding = `var(--pittorica-space-${f})`), v && (e.paddingTop = `var(--pittorica-space-${v})`), m && (e.paddingRight = `var(--pittorica-space-${m})`), g && (e.paddingBottom = `var(--pittorica-space-${g})`), h && (e.paddingLeft = `var(--pittorica-space-${h})`), d && (e.paddingLeft = `var(--pittorica-space-${d})`, e.paddingRight = `var(--pittorica-space-${d})`), x && (e.paddingTop = `var(--pittorica-space-${x})`, e.paddingBottom = `var(--pittorica-space-${x})`);
57
- const A = {
56
+ const A = t || "div", a = {};
57
+ r && (a.display = r), $ && (a.width = $), y && (a.height = y), b && (a.position = b), i && (a.margin = `var(--pittorica-space-${i})`), p && (a.marginTop = `var(--pittorica-space-${p})`), s && (a.marginRight = `var(--pittorica-space-${s})`), o && (a.marginBottom = `var(--pittorica-space-${o})`), d && (a.marginLeft = `var(--pittorica-space-${d})`), n && (a.marginLeft = `var(--pittorica-space-${n})`, a.marginRight = `var(--pittorica-space-${n})`), c && (a.marginTop = `var(--pittorica-space-${c})`, a.marginBottom = `var(--pittorica-space-${c})`), u && (a.padding = `var(--pittorica-space-${u})`), f && (a.paddingTop = `var(--pittorica-space-${f})`), v && (a.paddingRight = `var(--pittorica-space-${v})`), l && (a.paddingBottom = `var(--pittorica-space-${l})`), m && (a.paddingLeft = `var(--pittorica-space-${m})`), g && (a.paddingLeft = `var(--pittorica-space-${g})`, a.paddingRight = `var(--pittorica-space-${g})`), h && (a.paddingTop = `var(--pittorica-space-${h})`, a.paddingBottom = `var(--pittorica-space-${h})`);
58
+ const B = {
58
59
  ...T,
59
- ...e
60
+ ...a
60
61
  };
61
- return /* @__PURE__ */ u(
62
- R,
62
+ return /* @__PURE__ */ x(
63
+ A,
63
64
  {
64
- className: O("pittorica-box", N),
65
- style: A,
65
+ className: P("pittorica-box", N),
66
+ style: B,
66
67
  disabled: w,
68
+ required: R,
67
69
  ...F,
68
- children: r
70
+ children: e
69
71
  }
70
72
  );
71
73
  };
72
- z.displayName = "Box";
73
- function W(t) {
74
- var r, a, i = "";
74
+ S.displayName = "Box";
75
+ function k(t) {
76
+ var e, r, i = "";
75
77
  if (typeof t == "string" || typeof t == "number") i += t;
76
78
  else if (typeof t == "object") if (Array.isArray(t)) {
77
79
  var p = t.length;
78
- for (r = 0; r < p; r++) t[r] && (a = W(t[r])) && (i && (i += " "), i += a);
79
- } else for (a in t) t[a] && (i && (i += " "), i += a);
80
+ for (e = 0; e < p; e++) t[e] && (r = k(t[e])) && (i && (i += " "), i += r);
81
+ } else for (r in t) t[r] && (i && (i += " "), i += r);
80
82
  return i;
81
83
  }
82
- function I() {
83
- for (var t, r, a = 0, i = "", p = arguments.length; a < p; a++) (t = arguments[a]) && (r = W(t)) && (i && (i += " "), i += r);
84
+ function j() {
85
+ for (var t, e, r = 0, i = "", p = arguments.length; r < p; r++) (t = arguments[r]) && (e = k(t)) && (i && (i += " "), i += e);
84
86
  return i;
85
87
  }
86
- function C(t) {
87
- var r, a, i = "";
88
+ function E(t) {
89
+ var e, r, i = "";
88
90
  if (typeof t == "string" || typeof t == "number") i += t;
89
91
  else if (typeof t == "object") if (Array.isArray(t)) {
90
92
  var p = t.length;
91
- for (r = 0; r < p; r++) t[r] && (a = C(t[r])) && (i && (i += " "), i += a);
92
- } else for (a in t) t[a] && (i && (i += " "), i += a);
93
+ for (e = 0; e < p; e++) t[e] && (r = E(t[e])) && (i && (i += " "), i += r);
94
+ } else for (r in t) t[r] && (i && (i += " "), i += r);
93
95
  return i;
94
96
  }
95
- function P() {
96
- for (var t, r, a = 0, i = "", p = arguments.length; a < p; a++) (t = arguments[a]) && (r = C(t)) && (i && (i += " "), i += r);
97
+ function Q() {
98
+ for (var t, e, r = 0, i = "", p = arguments.length; r < p; r++) (t = arguments[r]) && (e = E(t)) && (i && (i += " "), i += e);
97
99
  return i;
98
100
  }
99
- const k = ({
101
+ const O = ({
100
102
  as: t,
101
- children: r,
102
- display: a,
103
+ children: e,
104
+ display: r,
103
105
  m: i,
104
106
  mt: p,
105
107
  mr: s,
106
108
  mb: o,
107
- ml: l,
109
+ ml: d,
108
110
  mx: n,
109
111
  my: c,
110
- p: f,
111
- pt: v,
112
- pr: m,
113
- pb: g,
114
- pl: h,
115
- px: d,
116
- py: x,
112
+ p: u,
113
+ pt: f,
114
+ pr: v,
115
+ pb: l,
116
+ pl: m,
117
+ px: g,
118
+ py: h,
117
119
  width: $,
118
120
  height: y,
119
121
  position: b,
120
122
  style: T,
121
123
  className: N,
122
124
  disabled: w,
125
+ required: R,
123
126
  ...F
124
127
  }) => {
125
- const R = t || "div", e = {};
126
- a && (e.display = a), $ && (e.width = $), y && (e.height = y), b && (e.position = b), i && (e.margin = `var(--pittorica-space-${i})`), p && (e.marginTop = `var(--pittorica-space-${p})`), s && (e.marginRight = `var(--pittorica-space-${s})`), o && (e.marginBottom = `var(--pittorica-space-${o})`), l && (e.marginLeft = `var(--pittorica-space-${l})`), n && (e.marginLeft = `var(--pittorica-space-${n})`, e.marginRight = `var(--pittorica-space-${n})`), c && (e.marginTop = `var(--pittorica-space-${c})`, e.marginBottom = `var(--pittorica-space-${c})`), f && (e.padding = `var(--pittorica-space-${f})`), v && (e.paddingTop = `var(--pittorica-space-${v})`), m && (e.paddingRight = `var(--pittorica-space-${m})`), g && (e.paddingBottom = `var(--pittorica-space-${g})`), h && (e.paddingLeft = `var(--pittorica-space-${h})`), d && (e.paddingLeft = `var(--pittorica-space-${d})`, e.paddingRight = `var(--pittorica-space-${d})`), x && (e.paddingTop = `var(--pittorica-space-${x})`, e.paddingBottom = `var(--pittorica-space-${x})`);
127
- const A = {
128
+ const A = t || "div", a = {};
129
+ r && (a.display = r), $ && (a.width = $), y && (a.height = y), b && (a.position = b), i && (a.margin = `var(--pittorica-space-${i})`), p && (a.marginTop = `var(--pittorica-space-${p})`), s && (a.marginRight = `var(--pittorica-space-${s})`), o && (a.marginBottom = `var(--pittorica-space-${o})`), d && (a.marginLeft = `var(--pittorica-space-${d})`), n && (a.marginLeft = `var(--pittorica-space-${n})`, a.marginRight = `var(--pittorica-space-${n})`), c && (a.marginTop = `var(--pittorica-space-${c})`, a.marginBottom = `var(--pittorica-space-${c})`), u && (a.padding = `var(--pittorica-space-${u})`), f && (a.paddingTop = `var(--pittorica-space-${f})`), v && (a.paddingRight = `var(--pittorica-space-${v})`), l && (a.paddingBottom = `var(--pittorica-space-${l})`), m && (a.paddingLeft = `var(--pittorica-space-${m})`), g && (a.paddingLeft = `var(--pittorica-space-${g})`, a.paddingRight = `var(--pittorica-space-${g})`), h && (a.paddingTop = `var(--pittorica-space-${h})`, a.paddingBottom = `var(--pittorica-space-${h})`);
130
+ const B = {
128
131
  ...T,
129
- ...e
132
+ ...a
130
133
  };
131
- return /* @__PURE__ */ u(
132
- R,
134
+ return /* @__PURE__ */ x(
135
+ A,
133
136
  {
134
- className: P("pittorica-box", N),
135
- style: A,
137
+ className: Q("pittorica-box", N),
138
+ style: B,
136
139
  disabled: w,
140
+ required: R,
137
141
  ...F,
138
- children: r
142
+ children: e
139
143
  }
140
144
  );
141
145
  };
142
- k.displayName = "Box";
143
- const E = ({
146
+ O.displayName = "Box";
147
+ const D = ({
144
148
  children: t,
145
- as: r,
146
- size: a,
149
+ as: e,
150
+ size: r,
147
151
  weight: i = "regular",
148
152
  align: p,
149
153
  truncate: s = !1,
150
154
  color: o,
151
- className: l,
155
+ className: d,
152
156
  style: n,
153
157
  ...c
154
158
  }) => {
155
- const f = r || "span", v = (o == null ? void 0 : o.startsWith("#")) || (o == null ? void 0 : o.startsWith("rgb")) || (o == null ? void 0 : o.startsWith("hsl")), m = /* @__PURE__ */ new Set([
159
+ const u = e || "span", f = (o == null ? void 0 : o.startsWith("#")) || (o == null ? void 0 : o.startsWith("rgb")) || (o == null ? void 0 : o.startsWith("hsl")), v = /* @__PURE__ */ new Set([
156
160
  "danger",
157
161
  "success",
158
162
  "error",
@@ -164,144 +168,162 @@ const E = ({
164
168
  "slate",
165
169
  "blue",
166
170
  "red"
167
- ]), g = (() => {
171
+ ]), l = (() => {
168
172
  if (o)
169
- return o === "inherit" ? "inherit" : v ? o : m.has(o) ? `var(--pittorica-${o}-9)` : o;
170
- })(), h = a ? typeof a == "string" ? `pittorica-text--size-${a}` : I({
171
- [`pittorica-text--size-${a.initial}`]: a.initial,
172
- [`pittorica-text--xs-size-${a.xs}`]: a.xs,
173
- [`pittorica-text--sm-size-${a.sm}`]: a.sm,
174
- [`pittorica-text--md-size-${a.md}`]: a.md,
175
- [`pittorica-text--lg-size-${a.lg}`]: a.lg,
176
- [`pittorica-text--xl-size-${a.xl}`]: a.xl
177
- }) : null, d = {
173
+ return o === "inherit" ? "inherit" : f ? o : v.has(o) ? `var(--pittorica-${o}-9)` : o;
174
+ })(), m = r ? typeof r == "string" ? `pittorica-text--size-${r}` : j({
175
+ [`pittorica-text--size-${r.initial}`]: r.initial,
176
+ [`pittorica-text--xs-size-${r.xs}`]: r.xs,
177
+ [`pittorica-text--sm-size-${r.sm}`]: r.sm,
178
+ [`pittorica-text--md-size-${r.md}`]: r.md,
179
+ [`pittorica-text--lg-size-${r.lg}`]: r.lg,
180
+ [`pittorica-text--xl-size-${r.xl}`]: r.xl
181
+ }) : null, g = {
178
182
  ...n,
179
183
  textAlign: p,
180
- color: g
184
+ color: l
181
185
  };
182
- return /* @__PURE__ */ u(
183
- k,
186
+ return /* @__PURE__ */ x(
187
+ O,
184
188
  {
185
- as: f,
186
- className: I(
189
+ as: u,
190
+ className: j(
187
191
  "pittorica-text",
188
- h,
192
+ m,
189
193
  { "pittorica-text--truncate": s },
190
- l
194
+ d
191
195
  ),
192
196
  "data-weight": i,
193
- style: d,
197
+ style: g,
194
198
  ...c,
195
199
  children: t
196
200
  }
197
201
  );
198
202
  };
199
- E.displayName = "Text";
200
- const q = K(null), Q = () => {
201
- const t = M(q);
203
+ D.displayName = "Text";
204
+ const G = K(null), U = () => {
205
+ const t = M(G);
202
206
  if (!t)
203
207
  throw new Error(
204
208
  "TextField components must be wrapped in <TextField.Root />"
205
209
  );
206
210
  return t;
207
- }, D = ({
211
+ }, z = ({
208
212
  children: t,
209
- label: r,
210
- helperText: a,
213
+ label: e,
214
+ helperText: r,
211
215
  error: i,
212
- color: p = "indigo",
216
+ color: p = "source",
213
217
  disabled: s,
214
218
  name: o,
215
- size: l = "sm",
216
- className: n,
217
- style: c,
219
+ required: d,
220
+ size: n = "sm",
221
+ className: c,
222
+ style: u,
218
223
  as: f,
219
224
  ...v
220
225
  }) => {
221
- const m = L(), g = L(), d = p !== "inherit" && !(p != null && p.startsWith("#")) && !(p != null && p.startsWith("rgb")) ? `var(--pittorica-${p}-9)` : p;
222
- return /* @__PURE__ */ u(q, { value: { inputId: m, helperId: g, disabled: s, size: l, name: o }, children: /* @__PURE__ */ J(
223
- z,
226
+ const l = I(), m = I(), h = p !== "inherit" && !(p != null && p.startsWith("#")) && !(p != null && p.startsWith("rgb")) ? `var(--pittorica-${p}-9)` : p;
227
+ return /* @__PURE__ */ x(
228
+ G,
224
229
  {
225
- as: f || "div",
226
- className: B(
227
- "pittorica-text-field-root",
228
- `pittorica-text-field--${l}`,
229
- n
230
- ),
231
- "data-error": i,
232
- ...v,
233
- children: [
234
- r && /* @__PURE__ */ u(
235
- E,
236
- {
237
- as: "label",
238
- htmlFor: m,
239
- weight: "medium",
240
- style: {
241
- paddingLeft: "4px",
242
- fontSize: "var(--pittorica-font-size-1)",
243
- marginBottom: "4px",
244
- display: "inline-block"
245
- },
246
- children: r
247
- }
248
- ),
249
- /* @__PURE__ */ u(
250
- "div",
251
- {
252
- className: "pittorica-text-field-input-wrapper",
253
- "data-disabled": s,
254
- style: {
255
- "--pittorica-source-color": d,
256
- ...c
257
- },
258
- children: t
259
- }
260
- ),
261
- a && /* @__PURE__ */ u("div", { id: g, className: "pittorica-text-field-helper", children: a })
262
- ]
230
+ value: { inputId: l, helperId: m, disabled: s, size: n, name: o, required: d },
231
+ children: /* @__PURE__ */ q(
232
+ S,
233
+ {
234
+ as: f || "div",
235
+ className: L(
236
+ "pittorica-text-field-root",
237
+ `pittorica-text-field--${n}`,
238
+ c
239
+ ),
240
+ "data-error": i,
241
+ ...v,
242
+ children: [
243
+ e && /* @__PURE__ */ q(
244
+ D,
245
+ {
246
+ as: "label",
247
+ htmlFor: l,
248
+ weight: "medium",
249
+ style: {
250
+ paddingLeft: "4px",
251
+ fontSize: "var(--pittorica-font-size-1)",
252
+ marginBottom: "4px",
253
+ display: "inline-block"
254
+ },
255
+ children: [
256
+ e,
257
+ " ",
258
+ d && /* @__PURE__ */ x("span", { "aria-hidden": "true", children: "*" })
259
+ ]
260
+ }
261
+ ),
262
+ /* @__PURE__ */ x(
263
+ "div",
264
+ {
265
+ className: "pittorica-text-field-input-wrapper",
266
+ "data-disabled": s,
267
+ style: {
268
+ "--pittorica-source-color": h,
269
+ ...u
270
+ },
271
+ children: t
272
+ }
273
+ ),
274
+ r && /* @__PURE__ */ x("div", { id: m, className: "pittorica-text-field-helper", children: r })
275
+ ]
276
+ }
277
+ )
263
278
  }
264
- ) });
265
- }, G = ({
279
+ );
280
+ }, H = ({
266
281
  className: t,
267
- ...r
282
+ ...e
268
283
  }) => {
269
- const { inputId: a, helperId: i, disabled: p, name: s } = Q();
270
- return /* @__PURE__ */ u(
284
+ const {
285
+ inputId: r,
286
+ helperId: i,
287
+ disabled: p,
288
+ name: s,
289
+ required: o
290
+ } = U();
291
+ return /* @__PURE__ */ x(
271
292
  "input",
272
293
  {
273
294
  name: s,
274
- ...r,
275
- id: a,
295
+ ...e,
296
+ id: r,
276
297
  "aria-describedby": i,
277
298
  disabled: p,
278
- className: B("pittorica-text-field-input", t)
299
+ required: o,
300
+ className: L("pittorica-text-field-input", t)
279
301
  }
280
302
  );
281
- }, H = ({
303
+ }, J = ({
282
304
  children: t,
283
- className: r,
284
- as: a,
305
+ className: e,
306
+ as: r,
285
307
  ...i
286
- }) => /* @__PURE__ */ u(
287
- z,
308
+ }) => /* @__PURE__ */ x(
309
+ S,
288
310
  {
289
- as: a || "div",
290
- className: B("pittorica-text-field-slot", r),
311
+ as: r || "div",
312
+ className: L("pittorica-text-field-slot", e),
291
313
  ...i,
292
314
  children: t
293
315
  }
294
- ), X = {
295
- Root: D,
296
- Input: G,
297
- Slot: H
298
- };
299
- D.displayName = "TextField.Root";
300
- G.displayName = "TextField.Input";
301
- H.displayName = "TextField.Slot";
316
+ ), Y = Object.assign(z, {
317
+ Root: z,
318
+ Input: H,
319
+ Slot: J
320
+ });
321
+ z.displayName = "TextField.Root";
322
+ H.displayName = "TextField.Input";
323
+ J.displayName = "TextField.Slot";
302
324
  export {
303
- X as TextField,
304
- G as TextFieldInput,
305
- D as TextFieldRoot,
306
- H as TextFieldSlot
325
+ Y as TextField,
326
+ H as TextFieldInput,
327
+ z as TextFieldRoot,
328
+ J as TextFieldSlot
307
329
  };
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@pittorica/text-field-react",
3
- "version": "0.25.0",
3
+ "version": "0.26.1",
4
+ "homepage": "https://pittorica.dcdavidev.me",
4
5
  "type": "module",
5
6
  "main": "./dist/index.js",
6
7
  "module": "./dist/index.js",
@@ -10,8 +11,8 @@
10
11
  ],
11
12
  "dependencies": {
12
13
  "clsx": "^2.1.1",
13
- "@pittorica/text-react": "0.25.0",
14
- "@pittorica/box-react": "0.25.0"
14
+ "@pittorica/box-react": "0.26.1",
15
+ "@pittorica/text-react": "0.26.1"
15
16
  },
16
17
  "devDependencies": {
17
18
  "@tabler/icons-react": "^3.36.1",
@@ -22,11 +23,11 @@
22
23
  "@vitejs/plugin-react": "^4.0.0",
23
24
  "jsdom": "^22.0.0",
24
25
  "typescript": "^5.0.0",
25
- "vite": "^5.0.0",
26
- "vitest": "^2.1.9",
27
- "@pittorica/flex-react": "0.25.0",
28
- "@pittorica/theme-react": "0.25.0",
29
- "pittorica": "0.25.0"
26
+ "vite": "^6.4.1",
27
+ "vitest": "^3.2.4",
28
+ "@pittorica/flex-react": "0.26.1",
29
+ "@pittorica/theme-react": "0.26.1",
30
+ "pittorica": "0.26.1"
30
31
  },
31
32
  "peerDependencies": {
32
33
  "react": ">=19",
@@ -36,7 +37,7 @@
36
37
  "build": "npm run clean && npm run build:js && npm run build:types",
37
38
  "build:js": "vite build",
38
39
  "build:types": "tsc -p tsconfig.json",
39
- "clean": "rm -rf dist",
40
+ "clean": "rm -rf dist *.tsbuildinfo",
40
41
  "test": "vitest run",
41
42
  "test:watch": "vitest"
42
43
  }
@@ -1,16 +0,0 @@
1
- import type { Meta, StoryObj } from '@storybook/react';
2
- import { TextField } from './TextField.js';
3
- /**
4
- * TextField component following Radix UI's compact design.
5
- * Supports 5 sizes and compound component architecture for slots.
6
- */
7
- declare const meta: Meta<typeof TextField.Root>;
8
- export default meta;
9
- export declare const Basic: StoryObj;
10
- /**
11
- * Visualization of the 5 sizes scaling height and font-size.
12
- */
13
- export declare const AllSizes: StoryObj;
14
- export declare const WithDecorators: StoryObj;
15
- export declare const Search: StoryObj;
16
- //# sourceMappingURL=TextField.stories.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TextField.stories.d.ts","sourceRoot":"","sources":["../src/TextField.stories.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;;GAGG;AACH,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,CAAC,IAAI,CAiBrC,CAAC;AAEF,eAAe,IAAI,CAAC;AAEpB,eAAO,MAAM,KAAK,EAAE,QAUnB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,EAAE,QAoBtB,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,QAuB5B,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,QAqBpB,CAAC"}
@@ -1,5 +0,0 @@
1
- /**
2
- * @vitest-environment jsdom
3
- */
4
- import '@testing-library/jest-dom';
5
- //# sourceMappingURL=TextField.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TextField.test.d.ts","sourceRoot":"","sources":["../src/TextField.test.tsx"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,2BAA2B,CAAC"}