@divayth/brick-ui 0.2.4 → 0.3.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.
Files changed (38) hide show
  1. package/README.md +17 -4
  2. package/dist/index.js +16 -14
  3. package/dist/styles.css +1 -1
  4. package/dist/ui/Autocomplete/Autocomplete.d.ts +2 -3
  5. package/dist/ui/Autocomplete/Autocomplete.d.ts.map +1 -1
  6. package/dist/ui/Autocomplete/Autocomplete.js +3 -3
  7. package/dist/ui/Date/DateInput.d.ts +3 -6
  8. package/dist/ui/Date/DateInput.d.ts.map +1 -1
  9. package/dist/ui/Date/DateInput.js +44 -48
  10. package/dist/ui/Input/Input.d.ts +4 -10
  11. package/dist/ui/Input/Input.d.ts.map +1 -1
  12. package/dist/ui/Input/Input.js +27 -29
  13. package/dist/ui/Input/Input.module.css.js +8 -6
  14. package/dist/ui/Select/Select.d.ts +3 -4
  15. package/dist/ui/Select/Select.d.ts.map +1 -1
  16. package/dist/ui/Select/Select.js +4 -142
  17. package/dist/ui/Select/Select.module.css.js +17 -21
  18. package/dist/ui/Select/Select.types.d.ts +36 -23
  19. package/dist/ui/Select/Select.types.d.ts.map +1 -1
  20. package/dist/ui/Select/SelectControl.d.ts +3 -0
  21. package/dist/ui/Select/SelectControl.d.ts.map +1 -0
  22. package/dist/ui/Select/SelectControl.js +150 -0
  23. package/dist/ui/Select/SelectOption.d.ts.map +1 -1
  24. package/dist/ui/Select/SelectOption.js +11 -10
  25. package/dist/ui/Select/SelectOption.module.css.js +9 -0
  26. package/dist/ui/Select/SelectOptions.d.ts.map +1 -1
  27. package/dist/ui/Select/SelectOptions.js +1 -1
  28. package/dist/ui/Select/SelectOptions.module.css.js +7 -0
  29. package/dist/ui/Select/SelectSearch.d.ts.map +1 -1
  30. package/dist/ui/Select/SelectSearch.js +22 -7
  31. package/dist/ui/Select/SelectSearch.module.css.js +10 -8
  32. package/dist/ui/Tabs/TabsList.js +5 -5
  33. package/dist/ui/Textarea/Textarea.d.ts +8 -0
  34. package/dist/ui/Textarea/Textarea.d.ts.map +1 -0
  35. package/dist/ui/Textarea/Textarea.js +77 -0
  36. package/dist/ui/index.d.ts +4 -2
  37. package/dist/ui/index.d.ts.map +1 -1
  38. package/package.json +2 -2
@@ -1,11 +1,13 @@
1
- const e = "_root_1l343_1", l = "_hiddenValue_1l343_7", o = "_value_1l343_13", t = {
2
- root: e,
3
- hiddenValue: l,
4
- value: o
1
+ const c = "_root_29ccb_1", t = "_input_29ccb_7", o = "_hiddenValue_29ccb_14", _ = "_value_29ccb_20", e = {
2
+ root: c,
3
+ input: t,
4
+ hiddenValue: o,
5
+ value: _
5
6
  };
6
7
  export {
7
- t as default,
8
- l as hiddenValue,
9
- e as root,
10
- o as value
8
+ e as default,
9
+ o as hiddenValue,
10
+ t as input,
11
+ c as root,
12
+ _ as value
11
13
  };
@@ -1,21 +1,21 @@
1
1
  "use client";
2
- import { jsx as l } from "react/jsx-runtime";
3
- import { twMerge as e } from "tailwind-merge";
2
+ import { jsx as e } from "react/jsx-runtime";
3
+ import { twMerge as l } from "tailwind-merge";
4
4
  import { Flex as i } from "../Flex/Flex.js";
5
5
  const f = ({
6
6
  children: r,
7
7
  direction: o = "row",
8
8
  className: t,
9
9
  ...a
10
- }) => /* @__PURE__ */ l(
10
+ }) => /* @__PURE__ */ e(
11
11
  i,
12
12
  {
13
13
  role: "tablist",
14
14
  "aria-orientation": o === "row" ? "horizontal" : "vertical",
15
15
  direction: o,
16
16
  gap: "none",
17
- className: e(
18
- "rounded-lg",
17
+ className: l(
18
+ "rounded-lg overflow-hidden",
19
19
  o === "row" ? "w-fit" : "w-full",
20
20
  t
21
21
  ),
@@ -0,0 +1,8 @@
1
+ import { type ComponentProps } from "react";
2
+ import type { InputControlProps } from "../Input/Input.js";
3
+ export type TextareaProps = InputControlProps & Omit<ComponentProps<"textarea">, "size"> & {
4
+ minRows?: number;
5
+ maxRows?: number;
6
+ };
7
+ export declare const Textarea: ({ id: idProps, label, error, size, fullWidth, className, startIcon, endIcon, rows, minRows, maxRows, value, defaultValue, onInput, ref: forwardedRef, ...props }: TextareaProps) => import("react").JSX.Element;
8
+ //# sourceMappingURL=Textarea.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Textarea.d.ts","sourceRoot":"","sources":["../../../src/ui/Textarea/Textarea.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAkC,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAI5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAG3D,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAC3C,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,GAAG;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAqBJ,eAAO,MAAM,QAAQ,GAAI,kKAiBtB,aAAa,gCAqDf,CAAC"}
@@ -0,0 +1,77 @@
1
+ "use client";
2
+ import { jsxs as L, jsx as l } from "react/jsx-runtime";
3
+ import { useId as W, useRef as j, useLayoutEffect as v } from "react";
4
+ import { useComposedRefs as H } from "@radix-ui/react-compose-refs";
5
+ import N from "clsx";
6
+ import { Field as i } from "../Field/Field.js";
7
+ import e from "../Input/Input.module.css.js";
8
+ const T = (o, m, s) => {
9
+ const n = Math.max(1, Math.floor(m)), d = Math.max(n, Math.floor(s ?? 1 / 0)), { paddingTop: f, paddingBottom: c, lineHeight: a } = getComputedStyle(o), h = parseFloat(f) + parseFloat(c);
10
+ o.classList.add(e.measuring), o.rows = n;
11
+ const r = Math.ceil(
12
+ (o.scrollHeight - h) / parseFloat(a)
13
+ );
14
+ o.rows = Math.min(d, Math.max(n, r)), o.classList.remove(e.measuring);
15
+ }, A = ({
16
+ id: o,
17
+ label: m,
18
+ error: s,
19
+ size: n = "md",
20
+ fullWidth: d = !1,
21
+ className: f,
22
+ startIcon: c,
23
+ endIcon: a,
24
+ rows: h = 2,
25
+ minRows: r = h,
26
+ maxRows: p,
27
+ value: g,
28
+ defaultValue: M,
29
+ onInput: b,
30
+ ref: y,
31
+ ...z
32
+ }) => {
33
+ const C = W(), u = o ?? C, x = j(null), E = H(x, y);
34
+ return v(() => {
35
+ const t = x.current;
36
+ if (!t) return;
37
+ const w = () => T(t, r, p);
38
+ w();
39
+ let F = t.clientWidth;
40
+ const I = new ResizeObserver(() => {
41
+ F !== t.clientWidth && (F = t.clientWidth, w());
42
+ });
43
+ return I.observe(t), () => I.disconnect();
44
+ }, [g, M, r, p]), /* @__PURE__ */ L(i.Root, { className: d ? "w-full" : "w-auto", children: [
45
+ m && /* @__PURE__ */ l(i.Label, { htmlFor: u, label: m }),
46
+ /* @__PURE__ */ L(i.Control, { size: n, multiline: !0, children: [
47
+ c && /* @__PURE__ */ l(i.Icon, { icon: c }),
48
+ /* @__PURE__ */ l(
49
+ "textarea",
50
+ {
51
+ ref: E,
52
+ id: u,
53
+ rows: Math.max(1, Math.floor(r)),
54
+ value: g,
55
+ defaultValue: M,
56
+ onInput: (t) => {
57
+ T(t.currentTarget, r, p), b?.(t);
58
+ },
59
+ className: N(
60
+ e.input,
61
+ e.multiple,
62
+ s && e.error,
63
+ c && e.withStartIcon,
64
+ a && e.withEndIcon,
65
+ f
66
+ ),
67
+ ...z
68
+ }
69
+ ),
70
+ a && /* @__PURE__ */ l(i.Icon, { icon: a, position: "end" })
71
+ ] }),
72
+ s && /* @__PURE__ */ l(i.Error, { id: `${u}-error`, error: s })
73
+ ] });
74
+ };
75
+ export {
76
+ A as Textarea
77
+ };
@@ -24,10 +24,12 @@ export { Drawer, type DrawerProps, type DrawerPosition, type DrawerSize, } from
24
24
  export { DateText, type DateProps } from "./DateText/DateText.js";
25
25
  export { FeedList, type FeedListProps } from "./FeedList/FeedList.js";
26
26
  export { Field, type ControlSize, type FieldLabelProps, type FieldControlProps, type FieldIconProps, type FieldErrorProps, } from "./Field/Field.js";
27
- export { Input, type InputProps } from "./Input/Input.js";
27
+ export { Input, type InputProps, type InputControlProps } from "./Input/Input.js";
28
+ export { Textarea, type TextareaProps } from "./Textarea/Textarea.js";
28
29
  export { DateInput, type DateInputProps } from "./Date/DateInput.js";
29
30
  export { MultipleChip, type MultipleChipProps, type MultipleChipOption, } from "./MultipleChip/MultipleChip.js";
30
31
  export { Sticky, type StickyProps } from "./Sticky/Sticky.js";
31
32
  export { Autocomplete, type AutocompleteProps, } from "./Autocomplete/Autocomplete.js";
32
- export { Select, type SelectProps, type SelectControlProps, type SelectOption, type SelectValue, } from "./Select/Select.js";
33
+ export { Select } from "./Select/Select.js";
34
+ export { type SelectProps, type SelectControlProps, type SelectCommonProps, type SelectOption, type SelectValue, } from "./Select/Select.types.js";
33
35
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@divayth/brick-ui",
3
- "version": "0.2.4",
3
+ "version": "0.3.1",
4
4
  "description": "React components for Brick UI",
5
5
  "type": "module",
6
6
  "files": [
@@ -42,7 +42,7 @@
42
42
  "devDependencies": {
43
43
  "@fontsource-variable/inter": "^5.3.0",
44
44
  "@storybook/addon-docs": "^10.3.6",
45
- "@storybook/react-vite": "^8.5.3",
45
+ "@storybook/react-vite": "^10.6.1",
46
46
  "@tailwindcss/vite": "^4.0.0",
47
47
  "@types/js-cookie": "^3.0.6",
48
48
  "@types/node": "^22.0.0",