@vincisys/eyeson 0.1.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.
- package/README.md +27 -0
- package/dist/Button.d.ts +5 -0
- package/dist/Button.d.ts.map +1 -0
- package/dist/Button.js +120 -0
- package/dist/Combobox.d.ts +3 -0
- package/dist/Combobox.d.ts.map +1 -0
- package/dist/Combobox.js +128 -0
- package/dist/Input.d.ts +3 -0
- package/dist/Input.d.ts.map +1 -0
- package/dist/Input.js +153 -0
- package/dist/components/Button/Button.d.ts +21 -0
- package/dist/components/Button/Button.d.ts.map +1 -0
- package/dist/components/ComboBox/Combobox.d.ts +52 -0
- package/dist/components/ComboBox/Combobox.d.ts.map +1 -0
- package/dist/components/Input/Input.d.ts +30 -0
- package/dist/components/Input/Input.d.ts.map +1 -0
- package/dist/constants/colors.d.ts +3 -0
- package/dist/constants/colors.d.ts.map +1 -0
- package/dist/styles.css +90 -0
- package/package.json +88 -0
- package/styles.css +1 -0
package/README.md
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# eyeson-design-system
|
|
2
|
+
|
|
3
|
+
Componentes React + estilos (Tailwind) para o design system da Eyeson.
|
|
4
|
+
|
|
5
|
+
## Instalação
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm i eyeson-design-system
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Uso (CSS)
|
|
12
|
+
|
|
13
|
+
Importe o CSS do design system uma vez no seu app:
|
|
14
|
+
|
|
15
|
+
```ts
|
|
16
|
+
import 'eyeson-design-system/styles.css'
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
### Dark mode
|
|
20
|
+
|
|
21
|
+
Se seu app usa `dark` class-based (Tailwind), aplique `.dark` no `html`/`body` (ou no seu root) e os tokens vão acompanhar.
|
|
22
|
+
|
|
23
|
+
## Uso (componentes)
|
|
24
|
+
|
|
25
|
+
```ts
|
|
26
|
+
import { Button } from 'eyeson-design-system'
|
|
27
|
+
```
|
package/dist/Button.d.ts
ADDED
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { default } from './components/Button/Button';
|
|
2
|
+
export { COLORS } from './constants/colors';
|
|
3
|
+
export type { ButtonProps, ButtonColor, ButtonIconPosition, ButtonSize, ButtonVariant, } from './components/Button/Button';
|
|
4
|
+
export type { EdsSemanticColor } from './constants/colors';
|
|
5
|
+
//# sourceMappingURL=Button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../src/Button.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,YAAY,EACX,WAAW,EACX,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,aAAa,GACb,MAAM,4BAA4B,CAAC;AACpC,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC"}
|
package/dist/Button.js
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { Button as e } from "@base-ui/react/button";
|
|
2
|
+
import t from "clsx";
|
|
3
|
+
import { Loader2 as n } from "lucide-react";
|
|
4
|
+
import { Fragment as r, jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
5
|
+
var o = {
|
|
6
|
+
Button: "_Button_s1y2z_1",
|
|
7
|
+
"color-blue-background": "_color-blue-background_s1y2z_20",
|
|
8
|
+
"color-blue-dark": "_color-blue-dark_s1y2z_25",
|
|
9
|
+
"color-blue-main": "_color-blue-main_s1y2z_29",
|
|
10
|
+
"color-blue-middle": "_color-blue-middle_s1y2z_33",
|
|
11
|
+
"color-green-background": "_color-green-background_s1y2z_37",
|
|
12
|
+
"color-green-dark": "_color-green-dark_s1y2z_42",
|
|
13
|
+
"color-green-main": "_color-green-main_s1y2z_46",
|
|
14
|
+
"color-green-middle": "_color-green-middle_s1y2z_51",
|
|
15
|
+
"color-neutral-background": "_color-neutral-background_s1y2z_56",
|
|
16
|
+
"color-neutral-disabled": "_color-neutral-disabled_s1y2z_61",
|
|
17
|
+
"color-neutral-elements": "_color-neutral-elements_s1y2z_66",
|
|
18
|
+
"color-neutral-main": "_color-neutral-main_s1y2z_70",
|
|
19
|
+
"color-orange-background": "_color-orange-background_s1y2z_74",
|
|
20
|
+
"color-orange-dark": "_color-orange-dark_s1y2z_79",
|
|
21
|
+
"color-orange-main": "_color-orange-main_s1y2z_83",
|
|
22
|
+
"color-orange-middle": "_color-orange-middle_s1y2z_87",
|
|
23
|
+
"color-red-background": "_color-red-background_s1y2z_92",
|
|
24
|
+
"color-red-dark": "_color-red-dark_s1y2z_97",
|
|
25
|
+
"color-red-main": "_color-red-main_s1y2z_102",
|
|
26
|
+
"color-red-middle": "_color-red-middle_s1y2z_106",
|
|
27
|
+
sizeSm: "_sizeSm_s1y2z_111",
|
|
28
|
+
IconWrap: "_IconWrap_s1y2z_120",
|
|
29
|
+
sizeMd: "_sizeMd_s1y2z_125",
|
|
30
|
+
sizeLg: "_sizeLg_s1y2z_139",
|
|
31
|
+
block: "_block_s1y2z_153",
|
|
32
|
+
variantSolid: "_variantSolid_s1y2z_157",
|
|
33
|
+
variantOutline: "_variantOutline_s1y2z_190",
|
|
34
|
+
variantGhost: "_variantGhost_s1y2z_248",
|
|
35
|
+
variantLink: "_variantLink_s1y2z_279",
|
|
36
|
+
Icon: "_Icon_s1y2z_120",
|
|
37
|
+
Spinner: "_Spinner_s1y2z_348",
|
|
38
|
+
"button-spin": "_button-spin_s1y2z_1"
|
|
39
|
+
}, s = {
|
|
40
|
+
solid: o.variantSolid,
|
|
41
|
+
outline: o.variantOutline,
|
|
42
|
+
ghost: o.variantGhost,
|
|
43
|
+
link: o.variantLink
|
|
44
|
+
}, c = {
|
|
45
|
+
sm: o.sizeSm,
|
|
46
|
+
md: o.sizeMd,
|
|
47
|
+
lg: o.sizeLg
|
|
48
|
+
}, l = {
|
|
49
|
+
"blue-background": o["color-blue-background"],
|
|
50
|
+
"blue-dark": o["color-blue-dark"],
|
|
51
|
+
"blue-main": o["color-blue-main"],
|
|
52
|
+
"blue-middle": o["color-blue-middle"],
|
|
53
|
+
"green-background": o["color-green-background"],
|
|
54
|
+
"green-dark": o["color-green-dark"],
|
|
55
|
+
"green-main": o["color-green-main"],
|
|
56
|
+
"green-middle": o["color-green-middle"],
|
|
57
|
+
"neutral-background": o["color-neutral-background"],
|
|
58
|
+
"neutral-disabled": o["color-neutral-disabled"],
|
|
59
|
+
"neutral-elements": o["color-neutral-elements"],
|
|
60
|
+
"neutral-main": o["color-neutral-main"],
|
|
61
|
+
"orange-background": o["color-orange-background"],
|
|
62
|
+
"orange-dark": o["color-orange-dark"],
|
|
63
|
+
"orange-main": o["color-orange-main"],
|
|
64
|
+
"orange-middle": o["color-orange-middle"],
|
|
65
|
+
"red-background": o["color-red-background"],
|
|
66
|
+
"red-dark": o["color-red-dark"],
|
|
67
|
+
"red-main": o["color-red-main"],
|
|
68
|
+
"red-middle": o["color-red-middle"]
|
|
69
|
+
}, u = {
|
|
70
|
+
sm: 18,
|
|
71
|
+
md: 22,
|
|
72
|
+
lg: 28
|
|
73
|
+
};
|
|
74
|
+
function d({ text: d = "Button", className: f, icon: p, iconPosition: m = "start", variant: h = "solid", color: g = "blue-main", size: _ = "md", fluid: v = !1, isLoading: y = !1, disabled: b, ...x }) {
|
|
75
|
+
let S = u[_], C = !!(b || y), w = y || p ? /* @__PURE__ */ i("span", {
|
|
76
|
+
className: o.IconWrap,
|
|
77
|
+
"aria-hidden": !0,
|
|
78
|
+
children: y ? /* @__PURE__ */ i(n, {
|
|
79
|
+
className: t(o.Icon, o.Spinner),
|
|
80
|
+
size: S
|
|
81
|
+
}) : p && /* @__PURE__ */ i(p, {
|
|
82
|
+
className: o.Icon,
|
|
83
|
+
size: S
|
|
84
|
+
})
|
|
85
|
+
}) : null;
|
|
86
|
+
return /* @__PURE__ */ i(e, {
|
|
87
|
+
className: t(o.Button, l[g], c[_], s[h], v && o.block, f),
|
|
88
|
+
disabled: C,
|
|
89
|
+
"data-loading": y || void 0,
|
|
90
|
+
"aria-busy": y || void 0,
|
|
91
|
+
...x,
|
|
92
|
+
children: m === "end" ? /* @__PURE__ */ a(r, { children: [d, w] }) : /* @__PURE__ */ a(r, { children: [w, d] })
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
//#endregion
|
|
96
|
+
//#region src/constants/colors.ts
|
|
97
|
+
var f = [
|
|
98
|
+
"blue-background",
|
|
99
|
+
"blue-dark",
|
|
100
|
+
"blue-main",
|
|
101
|
+
"blue-middle",
|
|
102
|
+
"green-background",
|
|
103
|
+
"green-dark",
|
|
104
|
+
"green-main",
|
|
105
|
+
"green-middle",
|
|
106
|
+
"neutral-background",
|
|
107
|
+
"neutral-disabled",
|
|
108
|
+
"neutral-elements",
|
|
109
|
+
"neutral-main",
|
|
110
|
+
"orange-background",
|
|
111
|
+
"orange-dark",
|
|
112
|
+
"orange-main",
|
|
113
|
+
"orange-middle",
|
|
114
|
+
"red-background",
|
|
115
|
+
"red-dark",
|
|
116
|
+
"red-main",
|
|
117
|
+
"red-middle"
|
|
118
|
+
];
|
|
119
|
+
//#endregion
|
|
120
|
+
export { f as COLORS, d as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../src/Combobox.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AACzD,YAAY,EACX,aAAa,EACb,cAAc,EACd,aAAa,GACb,MAAM,gCAAgC,CAAC"}
|
package/dist/Combobox.js
ADDED
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import e from "clsx";
|
|
2
|
+
import { Check as t, ChevronDown as n, X as r } from "lucide-react";
|
|
3
|
+
import { jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
4
|
+
import { useId as o } from "react";
|
|
5
|
+
import { Combobox as s } from "@base-ui/react/combobox";
|
|
6
|
+
var c = {
|
|
7
|
+
Root: "_Root_mce06_1",
|
|
8
|
+
LabelRow: "_LabelRow_mce06_13",
|
|
9
|
+
LabelText: "_LabelText_mce06_20",
|
|
10
|
+
Required: "_Required_mce06_29",
|
|
11
|
+
InputGroup: "_InputGroup_mce06_33",
|
|
12
|
+
Input: "_Input_mce06_33",
|
|
13
|
+
Actions: "_Actions_mce06_106",
|
|
14
|
+
IconButton: "_IconButton_mce06_113",
|
|
15
|
+
Icon: "_Icon_mce06_113",
|
|
16
|
+
Positioner: "_Positioner_mce06_152",
|
|
17
|
+
Popup: "_Popup_mce06_157",
|
|
18
|
+
Empty: "_Empty_mce06_170",
|
|
19
|
+
List: "_List_mce06_177",
|
|
20
|
+
Item: "_Item_mce06_186",
|
|
21
|
+
ItemIndicator: "_ItemIndicator_mce06_217",
|
|
22
|
+
ItemText: "_ItemText_mce06_227",
|
|
23
|
+
SupportingText: "_SupportingText_mce06_233"
|
|
24
|
+
}, l = s.Root;
|
|
25
|
+
function u({ label: u = "Label", items: d, placeholder: f = "Selecione uma opção", disabled: p = !1, required: m = !1, fluid: h = !1, state: g = "default", supportingText: _ = "", errorMessage: v = "Selecione uma opção válida", emptyMessage: y = "Nenhum resultado.", readOnly: b = !0, id: x, name: S, value: C, defaultValue: w, onValueChange: T, getItemLabel: E, getItemValue: D, renderItem: O, className: k, inputProps: A }) {
|
|
26
|
+
let j = o(), M = x ?? j, N = g === "invalid", P = N || !!_, F = (e) => E ? E(e) : e.label ?? "", I = (e) => D ? D(e) : e.value ?? F(e), L = (e) => {
|
|
27
|
+
T?.(e);
|
|
28
|
+
}, R = E ? (e) => E(e) : void 0, z = D ? (e) => D(e) : void 0;
|
|
29
|
+
return /* @__PURE__ */ a("div", {
|
|
30
|
+
className: e(c.Root, k),
|
|
31
|
+
"data-fluid": h || void 0,
|
|
32
|
+
children: [
|
|
33
|
+
/* @__PURE__ */ i("div", {
|
|
34
|
+
className: c.LabelRow,
|
|
35
|
+
children: /* @__PURE__ */ a("label", {
|
|
36
|
+
className: c.LabelText,
|
|
37
|
+
htmlFor: M,
|
|
38
|
+
children: [/* @__PURE__ */ i("span", { children: u }), m && /* @__PURE__ */ i("span", {
|
|
39
|
+
className: c.Required,
|
|
40
|
+
children: "*"
|
|
41
|
+
})]
|
|
42
|
+
})
|
|
43
|
+
}),
|
|
44
|
+
/* @__PURE__ */ a(l, {
|
|
45
|
+
items: d,
|
|
46
|
+
name: S,
|
|
47
|
+
disabled: p,
|
|
48
|
+
required: m,
|
|
49
|
+
onValueChange: T ? L : void 0,
|
|
50
|
+
...C === void 0 ? w === void 0 ? {} : { defaultValue: w } : { value: C },
|
|
51
|
+
itemToStringLabel: R,
|
|
52
|
+
itemToStringValue: z,
|
|
53
|
+
children: [/* @__PURE__ */ a(s.InputGroup, {
|
|
54
|
+
className: c.InputGroup,
|
|
55
|
+
"data-state": g,
|
|
56
|
+
"data-disabled": p || void 0,
|
|
57
|
+
children: [/* @__PURE__ */ i(s.Input, {
|
|
58
|
+
...A,
|
|
59
|
+
id: M,
|
|
60
|
+
className: c.Input,
|
|
61
|
+
placeholder: f,
|
|
62
|
+
disabled: p,
|
|
63
|
+
readOnly: b,
|
|
64
|
+
required: m,
|
|
65
|
+
"aria-invalid": N || void 0,
|
|
66
|
+
"aria-describedby": P ? `${M}-desc` : void 0
|
|
67
|
+
}), /* @__PURE__ */ a("div", {
|
|
68
|
+
className: c.Actions,
|
|
69
|
+
children: [/* @__PURE__ */ i(s.Clear, {
|
|
70
|
+
className: c.IconButton,
|
|
71
|
+
"aria-label": "Limpar seleção",
|
|
72
|
+
"data-disabled": p || void 0,
|
|
73
|
+
children: /* @__PURE__ */ i(r, {
|
|
74
|
+
className: c.Icon,
|
|
75
|
+
strokeWidth: 2,
|
|
76
|
+
"aria-hidden": !0
|
|
77
|
+
})
|
|
78
|
+
}), /* @__PURE__ */ i(s.Trigger, {
|
|
79
|
+
className: c.IconButton,
|
|
80
|
+
"aria-label": "Abrir lista",
|
|
81
|
+
"data-disabled": p || void 0,
|
|
82
|
+
children: /* @__PURE__ */ i(n, {
|
|
83
|
+
className: c.Icon,
|
|
84
|
+
strokeWidth: 2,
|
|
85
|
+
"aria-hidden": !0
|
|
86
|
+
})
|
|
87
|
+
})]
|
|
88
|
+
})]
|
|
89
|
+
}), /* @__PURE__ */ i(s.Portal, { children: /* @__PURE__ */ i(s.Positioner, {
|
|
90
|
+
className: c.Positioner,
|
|
91
|
+
sideOffset: 4,
|
|
92
|
+
children: /* @__PURE__ */ a(s.Popup, {
|
|
93
|
+
className: c.Popup,
|
|
94
|
+
children: [/* @__PURE__ */ i(s.Empty, { children: /* @__PURE__ */ i("div", {
|
|
95
|
+
className: c.Empty,
|
|
96
|
+
children: y
|
|
97
|
+
}) }), /* @__PURE__ */ i(s.List, {
|
|
98
|
+
className: c.List,
|
|
99
|
+
children: (e) => /* @__PURE__ */ a(s.Item, {
|
|
100
|
+
value: e,
|
|
101
|
+
className: c.Item,
|
|
102
|
+
children: [/* @__PURE__ */ i(s.ItemIndicator, {
|
|
103
|
+
className: c.ItemIndicator,
|
|
104
|
+
children: /* @__PURE__ */ i(t, {
|
|
105
|
+
size: 14,
|
|
106
|
+
strokeWidth: 2.5,
|
|
107
|
+
"aria-hidden": !0
|
|
108
|
+
})
|
|
109
|
+
}), O ? O(e) : /* @__PURE__ */ i("span", {
|
|
110
|
+
className: c.ItemText,
|
|
111
|
+
children: F(e)
|
|
112
|
+
})]
|
|
113
|
+
}, I(e))
|
|
114
|
+
})]
|
|
115
|
+
})
|
|
116
|
+
}) })]
|
|
117
|
+
}),
|
|
118
|
+
P && /* @__PURE__ */ i("div", {
|
|
119
|
+
id: `${M}-desc`,
|
|
120
|
+
className: c.SupportingText,
|
|
121
|
+
"data-state": N ? "invalid" : void 0,
|
|
122
|
+
children: N ? v : _
|
|
123
|
+
})
|
|
124
|
+
]
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
//#endregion
|
|
128
|
+
export { u as default };
|
package/dist/Input.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../src/Input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,YAAY,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC"}
|
package/dist/Input.js
ADDED
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import e from "clsx";
|
|
2
|
+
import { Info as t, Loader2 as n } from "lucide-react";
|
|
3
|
+
import { jsx as r, jsxs as i } from "react/jsx-runtime";
|
|
4
|
+
import { Input as a } from "@base-ui/react/input";
|
|
5
|
+
import { useId as o, useState as s } from "react";
|
|
6
|
+
//#region node_modules/brazilian-values/dist/brazilian-values.mjs
|
|
7
|
+
var c = /\D/g, l = function(e) {
|
|
8
|
+
return e.replace(c, "");
|
|
9
|
+
}, ee = function(e) {
|
|
10
|
+
return l(e).replace(/(\d{5})(\d{1,3})/, "$1-$2");
|
|
11
|
+
}, u = function(e) {
|
|
12
|
+
return l(e).replace(/(\d{2})(\d)/, "$1.$2").replace(/(\d{3})(\d)/, "$1.$2").replace(/(\d{3})(\d)/, "$1/$2").replace(/(\d{4})(\d{1,2})$/, "$1-$2");
|
|
13
|
+
}, d = function(e) {
|
|
14
|
+
return l(e).replace(/(\d{3})(\d)/, "$1.$2").replace(/(\d{3})(\d)/, "$1.$2").replace(/(\d{3})(\d{1,2})$/, "$1-$2");
|
|
15
|
+
}, f = function(e) {
|
|
16
|
+
return (e.match(/\d/g)?.length ?? 0) <= 11;
|
|
17
|
+
}, p = function(e) {
|
|
18
|
+
return f(e) ? d(e) : u(e);
|
|
19
|
+
}, te = function(e) {
|
|
20
|
+
return l(e).replace(/(\d{1,2})/, "($1").replace(/(\(\d{2})(\d{1,4})/, "$1) $2").replace(/( \d{4})(\d{1,4})/, "$1-$2").replace(/( \d{4})(?:-)(\d{1})(\d{4})/, "$1$2-$3");
|
|
21
|
+
}, m = {
|
|
22
|
+
Root: "_Root_twox3_1",
|
|
23
|
+
LabelRow: "_LabelRow_twox3_13",
|
|
24
|
+
LabelLeft: "_LabelLeft_twox3_20",
|
|
25
|
+
LabelText: "_LabelText_twox3_27",
|
|
26
|
+
Required: "_Required_twox3_36",
|
|
27
|
+
SupportLink: "_SupportLink_twox3_40",
|
|
28
|
+
TooltipButton: "_TooltipButton_twox3_54",
|
|
29
|
+
Control: "_Control_twox3_71",
|
|
30
|
+
Adornment: "_Adornment_twox3_83",
|
|
31
|
+
SpinnerWrap: "_SpinnerWrap_twox3_90",
|
|
32
|
+
Spinner: "_Spinner_twox3_90",
|
|
33
|
+
"input-spin": "_input-spin_twox3_1",
|
|
34
|
+
Input: "_Input_twox3_132",
|
|
35
|
+
FloatingLabel: "_FloatingLabel_twox3_152",
|
|
36
|
+
SupportingText: "_SupportingText_twox3_188"
|
|
37
|
+
};
|
|
38
|
+
//#endregion
|
|
39
|
+
//#region src/components/Input/Input.tsx
|
|
40
|
+
function h({ className: c, label: l = "Label", texto: f, disabled: h = !1, state: g = "default", inputType: _ = "text", required: v = !1, placeholder: y = "Digite algo...", errorMessage: b = "Campo obrigatório", fluid: x = !1, format: S, tooltip: C = null, linkText: w = null, linkUrl: T = null, supportLink: ne = null, supportLinkUrl: re = null, supportingText: E = "", lazy: D = !1, floatingLabel: O = !1, disableAutocomplete: k = !1, isLoading: A = !1, loadingIconPosition: j = "end", defaultValue: M, value: N, id: P, name: F, onBlur: I, onFocus: L, onKeyDown: R, onClick: z, onChange: B, ...V }) {
|
|
41
|
+
let H = o(), U = P ?? H, [W, G] = s(() => M?.toString() ?? ""), K = N !== void 0, q = (K ? N : W)?.toString() ?? "", J = ne ?? w, Y = re ?? T, ie = (e) => {
|
|
42
|
+
switch (S) {
|
|
43
|
+
case "cep": return ee(e);
|
|
44
|
+
case "cpf": return d(e);
|
|
45
|
+
case "cnpj": return u(e);
|
|
46
|
+
case "cpfOrCnpj": return p(e);
|
|
47
|
+
case "phone": return te(e);
|
|
48
|
+
default: return e;
|
|
49
|
+
}
|
|
50
|
+
}, X = (e, t) => {
|
|
51
|
+
let n = ie(e);
|
|
52
|
+
K || G(n), B?.(n, t);
|
|
53
|
+
}, Z = g === "invalid", Q = h || A, $ = A ? /* @__PURE__ */ r("span", {
|
|
54
|
+
className: e(m.Adornment, m.SpinnerWrap),
|
|
55
|
+
"data-position": j,
|
|
56
|
+
"aria-hidden": !0,
|
|
57
|
+
children: /* @__PURE__ */ r(n, {
|
|
58
|
+
className: m.Spinner,
|
|
59
|
+
size: 16
|
|
60
|
+
})
|
|
61
|
+
}) : null;
|
|
62
|
+
return /* @__PURE__ */ i("div", {
|
|
63
|
+
className: e(m.Root, c),
|
|
64
|
+
"data-fluid": x || void 0,
|
|
65
|
+
children: [
|
|
66
|
+
/* @__PURE__ */ i("div", {
|
|
67
|
+
className: m.LabelRow,
|
|
68
|
+
children: [/* @__PURE__ */ i("div", {
|
|
69
|
+
className: m.LabelLeft,
|
|
70
|
+
children: [/* @__PURE__ */ i("label", {
|
|
71
|
+
className: m.LabelText,
|
|
72
|
+
htmlFor: U,
|
|
73
|
+
children: [/* @__PURE__ */ r("span", { children: l }), v && /* @__PURE__ */ r("span", {
|
|
74
|
+
className: m.Required,
|
|
75
|
+
children: "*"
|
|
76
|
+
})]
|
|
77
|
+
}), C && /* @__PURE__ */ r("button", {
|
|
78
|
+
type: "button",
|
|
79
|
+
className: m.TooltipButton,
|
|
80
|
+
"aria-label": C,
|
|
81
|
+
title: C,
|
|
82
|
+
disabled: Q,
|
|
83
|
+
children: /* @__PURE__ */ r(t, {
|
|
84
|
+
size: 16,
|
|
85
|
+
"aria-hidden": !0
|
|
86
|
+
})
|
|
87
|
+
})]
|
|
88
|
+
}), J && Y && /* @__PURE__ */ r("a", {
|
|
89
|
+
className: m.SupportLink,
|
|
90
|
+
href: Y,
|
|
91
|
+
"aria-disabled": Q || void 0,
|
|
92
|
+
tabIndex: Q ? -1 : 0,
|
|
93
|
+
onClick: (e) => {
|
|
94
|
+
Q && e.preventDefault();
|
|
95
|
+
},
|
|
96
|
+
children: J
|
|
97
|
+
})]
|
|
98
|
+
}),
|
|
99
|
+
/* @__PURE__ */ i("div", {
|
|
100
|
+
className: m.Control,
|
|
101
|
+
"data-disabled": Q || void 0,
|
|
102
|
+
"data-state": g,
|
|
103
|
+
"data-floating": O || void 0,
|
|
104
|
+
"data-has-value": q ? !0 : void 0,
|
|
105
|
+
children: [
|
|
106
|
+
O && /* @__PURE__ */ r("span", {
|
|
107
|
+
className: m.FloatingLabel,
|
|
108
|
+
children: l
|
|
109
|
+
}),
|
|
110
|
+
j === "start" && $,
|
|
111
|
+
/* @__PURE__ */ r(a, {
|
|
112
|
+
...V,
|
|
113
|
+
id: U,
|
|
114
|
+
name: F,
|
|
115
|
+
className: m.Input,
|
|
116
|
+
disabled: Q,
|
|
117
|
+
type: _,
|
|
118
|
+
required: v,
|
|
119
|
+
placeholder: y,
|
|
120
|
+
autoComplete: k ? "off" : V.autoComplete,
|
|
121
|
+
"aria-invalid": Z || void 0,
|
|
122
|
+
"aria-describedby": Z ? `${U}-desc` : void 0,
|
|
123
|
+
"aria-busy": A || void 0,
|
|
124
|
+
value: K ? N : void 0,
|
|
125
|
+
defaultValue: K ? void 0 : M,
|
|
126
|
+
onClick: z,
|
|
127
|
+
onKeyDown: R,
|
|
128
|
+
onFocus: L,
|
|
129
|
+
onBlur: (e) => {
|
|
130
|
+
I?.(e), D && X(e.currentTarget.value, e);
|
|
131
|
+
},
|
|
132
|
+
onChange: (e) => {
|
|
133
|
+
D || X(e.currentTarget.value, e);
|
|
134
|
+
}
|
|
135
|
+
}),
|
|
136
|
+
j === "end" && $
|
|
137
|
+
]
|
|
138
|
+
}),
|
|
139
|
+
f && /* @__PURE__ */ r("div", {
|
|
140
|
+
className: m.SupportingText,
|
|
141
|
+
children: f
|
|
142
|
+
}),
|
|
143
|
+
(Z || E) && /* @__PURE__ */ r("div", {
|
|
144
|
+
id: `${U}-desc`,
|
|
145
|
+
className: m.SupportingText,
|
|
146
|
+
"data-state": Z ? "invalid" : g,
|
|
147
|
+
children: Z ? b : E
|
|
148
|
+
})
|
|
149
|
+
]
|
|
150
|
+
});
|
|
151
|
+
}
|
|
152
|
+
//#endregion
|
|
153
|
+
export { h as default };
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Button as BaseUiButton } from '@base-ui/react/button';
|
|
2
|
+
import { type LucideIcon } from 'lucide-react';
|
|
3
|
+
import type { ComponentProps } from 'react';
|
|
4
|
+
import type { EdsSemanticColor } from '@/constants/colors';
|
|
5
|
+
export type ButtonVariant = 'solid' | 'outline' | 'ghost' | 'link';
|
|
6
|
+
export type ButtonSize = 'sm' | 'md' | 'lg';
|
|
7
|
+
export type ButtonIconPosition = 'start' | 'end';
|
|
8
|
+
export type ButtonColor = EdsSemanticColor;
|
|
9
|
+
export type ButtonProps = Omit<ComponentProps<typeof BaseUiButton>, 'className' | 'children'> & {
|
|
10
|
+
className?: string;
|
|
11
|
+
text?: string;
|
|
12
|
+
variant?: ButtonVariant;
|
|
13
|
+
color?: ButtonColor;
|
|
14
|
+
size?: ButtonSize;
|
|
15
|
+
fluid?: boolean;
|
|
16
|
+
icon?: LucideIcon;
|
|
17
|
+
iconPosition?: ButtonIconPosition;
|
|
18
|
+
isLoading?: boolean;
|
|
19
|
+
};
|
|
20
|
+
export default function Button({ text, className, icon: IconComponent, iconPosition, variant, color, size, fluid, isLoading, disabled, ...props }: ButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
21
|
+
//# sourceMappingURL=Button.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../src/components/Button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAAW,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAG3D,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAEnE,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAE5C,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,KAAK,CAAC;AAEjD,MAAM,MAAM,WAAW,GAAG,gBAAgB,CAAC;AA4C3C,MAAM,MAAM,WAAW,GAAG,IAAI,CAC7B,cAAc,CAAC,OAAO,YAAY,CAAC,EACnC,WAAW,GAAG,UAAU,CACxB,GAAG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC9B,IAAe,EACf,SAAS,EACT,IAAI,EAAE,aAAa,EACnB,YAAsB,EACtB,OAAiB,EACjB,KAAmB,EACnB,IAAW,EACX,KAAa,EACb,SAAiB,EACjB,QAAQ,EACR,GAAG,KAAK,EACR,EAAE,WAAW,2CAgDb"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { type ComponentProps, type ReactNode } from 'react';
|
|
2
|
+
export type ComboboxState = 'default' | 'valid' | 'invalid';
|
|
3
|
+
export type ComboboxOption = {
|
|
4
|
+
label: string;
|
|
5
|
+
value: string;
|
|
6
|
+
};
|
|
7
|
+
export type ComboboxProps<T = ComboboxOption> = {
|
|
8
|
+
/** Texto do label acima do campo. */
|
|
9
|
+
label?: string;
|
|
10
|
+
/** Lista de itens disponíveis para seleção. */
|
|
11
|
+
items: readonly T[];
|
|
12
|
+
/** Texto exibido quando nenhum item está selecionado. */
|
|
13
|
+
placeholder?: string;
|
|
14
|
+
/** Desativa o campo, impedindo interação. */
|
|
15
|
+
disabled?: boolean;
|
|
16
|
+
/** Indica que o campo é obrigatório, exibindo asterisco. */
|
|
17
|
+
required?: boolean;
|
|
18
|
+
/** Faz o campo ocupar 100% da largura do container. */
|
|
19
|
+
fluid?: boolean;
|
|
20
|
+
/** Estado visual do campo. */
|
|
21
|
+
state?: ComboboxState;
|
|
22
|
+
/** Texto auxiliar exibido abaixo do campo no estado padrão. */
|
|
23
|
+
supportingText?: string;
|
|
24
|
+
/** Mensagem exibida abaixo do campo no estado inválido. */
|
|
25
|
+
errorMessage?: string;
|
|
26
|
+
/** Mensagem exibida quando nenhum item corresponde à busca. */
|
|
27
|
+
emptyMessage?: string;
|
|
28
|
+
/** Impede que o usuário digite no campo; a seleção ocorre apenas pela lista. */
|
|
29
|
+
readOnly?: boolean;
|
|
30
|
+
/** `id` nativo do input. Gerado automaticamente se omitido. */
|
|
31
|
+
id?: string;
|
|
32
|
+
/** `name` nativo do input, útil para submissão de formulários. */
|
|
33
|
+
name?: string;
|
|
34
|
+
/** Item atualmente selecionado (modo controlado). */
|
|
35
|
+
value?: T | null;
|
|
36
|
+
/** Item selecionado na montagem (modo não-controlado). */
|
|
37
|
+
defaultValue?: T | null;
|
|
38
|
+
/** Callback chamado quando o item selecionado muda. */
|
|
39
|
+
onValueChange?: (value: T | null) => void;
|
|
40
|
+
/** Retorna o texto exibido no input para um dado item. */
|
|
41
|
+
getItemLabel?: (item: T) => string;
|
|
42
|
+
/** Retorna o valor único que identifica um item. */
|
|
43
|
+
getItemValue?: (item: T) => string;
|
|
44
|
+
/** Renderização customizada de cada item na lista. */
|
|
45
|
+
renderItem?: (item: T) => ReactNode;
|
|
46
|
+
/** Classe CSS extra aplicada ao elemento raiz. */
|
|
47
|
+
className?: string;
|
|
48
|
+
/** Props extras repassadas ao `<input>` nativo. */
|
|
49
|
+
inputProps?: Omit<ComponentProps<'input'>, 'className' | 'disabled' | 'id' | 'name' | 'placeholder' | 'readOnly' | 'required'>;
|
|
50
|
+
};
|
|
51
|
+
export default function Combobox<T = ComboboxOption>({ label, items, placeholder, disabled, required, fluid, state, supportingText, errorMessage, emptyMessage, readOnly, id, name, value, defaultValue, onValueChange, getItemLabel, getItemValue, renderItem, className, inputProps, }: ComboboxProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
52
|
+
//# sourceMappingURL=Combobox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Combobox.d.ts","sourceRoot":"","sources":["../../../src/components/ComboBox/Combobox.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAS,KAAK,cAAc,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAGnE,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,cAAc,IAAI;IAC/C,qCAAqC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,KAAK,EAAE,SAAS,CAAC,EAAE,CAAC;IACpB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uDAAuD;IACvD,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gFAAgF;IAChF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACjB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IACxB,uDAAuD;IACvD,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,0DAA0D;IAC1D,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC;IACnC,oDAAoD;IACpD,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,CAAC;IACnC,sDAAsD;IACtD,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,SAAS,CAAC;IACpC,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mDAAmD;IACnD,UAAU,CAAC,EAAE,IAAI,CAChB,cAAc,CAAC,OAAO,CAAC,EACrB,WAAW,GACX,UAAU,GACV,IAAI,GACJ,MAAM,GACN,aAAa,GACb,UAAU,GACV,UAAU,CACZ,CAAC;CACF,CAAC;AAeF,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,CAAC,GAAG,cAAc,EAAE,EACpD,KAAe,EACf,KAAK,EACL,WAAmC,EACnC,QAAgB,EAChB,QAAgB,EAChB,KAAa,EACb,KAAiB,EACjB,cAAmB,EACnB,YAA2C,EAC3C,YAAkC,EAClC,QAAe,EACf,EAAE,EACF,IAAI,EACJ,KAAK,EACL,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,SAAS,EACT,UAAU,GACV,EAAE,aAAa,CAAC,CAAC,CAAC,2CAmKlB"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type ChangeEvent, type ComponentProps } from 'react';
|
|
2
|
+
export type InputState = 'default' | 'valid' | 'loading' | 'invalid';
|
|
3
|
+
export type InputFormat = 'cep' | 'cpf' | 'cnpj' | 'cpfOrCnpj' | 'phone';
|
|
4
|
+
export type InputProps = Omit<ComponentProps<'input'>, 'className' | 'type' | 'required' | 'onChange'> & {
|
|
5
|
+
className?: string;
|
|
6
|
+
label?: string;
|
|
7
|
+
texto?: string;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
state?: InputState;
|
|
10
|
+
inputType?: 'text' | 'email';
|
|
11
|
+
required?: boolean;
|
|
12
|
+
placeholder?: string;
|
|
13
|
+
errorMessage?: string;
|
|
14
|
+
fluid?: boolean;
|
|
15
|
+
format?: InputFormat;
|
|
16
|
+
tooltip?: string | null;
|
|
17
|
+
linkText?: string | null;
|
|
18
|
+
linkUrl?: string | null;
|
|
19
|
+
supportLink?: string | null;
|
|
20
|
+
supportLinkUrl?: string | null;
|
|
21
|
+
supportingText?: string;
|
|
22
|
+
lazy?: boolean;
|
|
23
|
+
floatingLabel?: boolean;
|
|
24
|
+
disableAutocomplete?: boolean;
|
|
25
|
+
isLoading?: boolean;
|
|
26
|
+
loadingIconPosition?: 'start' | 'end';
|
|
27
|
+
onChange?: (value: string, event: ChangeEvent<HTMLInputElement>) => void;
|
|
28
|
+
};
|
|
29
|
+
export default function Input({ className, label, texto, disabled, state, inputType, required, placeholder, errorMessage, fluid, format, tooltip, linkText, linkUrl, supportLink, supportLinkUrl, supportingText, lazy, floatingLabel, disableAutocomplete, isLoading, loadingIconPosition, defaultValue, value, id, name, onBlur, onFocus, onKeyDown, onClick, onChange, ...props }: InputProps): import("react/jsx-runtime").JSX.Element;
|
|
30
|
+
//# sourceMappingURL=Input.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../../src/components/Input/Input.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAmB,KAAK,WAAW,EAAE,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAU/E,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,CAAC;AACrE,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,WAAW,GAAG,OAAO,CAAC;AAEzE,MAAM,MAAM,UAAU,GAAG,IAAI,CAC5B,cAAc,CAAC,OAAO,CAAC,EACvB,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,UAAU,CAC9C,GAAG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC7B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mBAAmB,CAAC,EAAE,OAAO,GAAG,KAAK,CAAC;IACtC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;CACzE,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,EAC7B,SAAS,EACT,KAAe,EACf,KAAK,EACL,QAAgB,EAChB,KAAiB,EACjB,SAAkB,EAClB,QAAgB,EAChB,WAA8B,EAC9B,YAAkC,EAClC,KAAa,EACb,MAAM,EACN,OAAc,EACd,QAAe,EACf,OAAc,EACd,WAAkB,EAClB,cAAqB,EACrB,cAAmB,EACnB,IAAY,EACZ,aAAqB,EACrB,mBAA2B,EAC3B,SAAiB,EACjB,mBAA2B,EAC3B,YAAY,EACZ,KAAK,EACL,EAAE,EACF,IAAI,EACJ,MAAM,EACN,OAAO,EACP,SAAS,EACT,OAAO,EACP,QAAQ,EACR,GAAG,KAAK,EACR,EAAE,UAAU,2CAgKZ"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export declare const COLORS: readonly ["blue-background", "blue-dark", "blue-main", "blue-middle", "green-background", "green-dark", "green-main", "green-middle", "neutral-background", "neutral-disabled", "neutral-elements", "neutral-main", "orange-background", "orange-dark", "orange-main", "orange-middle", "red-background", "red-dark", "red-main", "red-middle"];
|
|
2
|
+
export type EdsSemanticColor = (typeof COLORS)[number];
|
|
3
|
+
//# sourceMappingURL=colors.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../src/constants/colors.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM,iVAqBT,CAAC;AAGX,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
package/dist/styles.css
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
@font-face {
|
|
2
|
+
font-family: 'GT Walsheim Pro';
|
|
3
|
+
src: url('/fonts/GTWalsheimPro-Thin.ttf') format('truetype');
|
|
4
|
+
font-weight: 100;
|
|
5
|
+
font-style: normal;
|
|
6
|
+
font-display: swap;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
@font-face {
|
|
10
|
+
font-family: 'GT Walsheim Pro';
|
|
11
|
+
src: url('/fonts/GTWalsheimPro-Light.ttf') format('truetype');
|
|
12
|
+
font-weight: 300;
|
|
13
|
+
font-style: normal;
|
|
14
|
+
font-display: swap;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
@font-face {
|
|
18
|
+
font-family: 'GT Walsheim Pro';
|
|
19
|
+
src: url('/fonts/GTWalsheimPro-Regular.ttf') format('truetype');
|
|
20
|
+
font-weight: 400;
|
|
21
|
+
font-style: normal;
|
|
22
|
+
font-display: swap;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
@font-face {
|
|
26
|
+
font-family: 'GT Walsheim Pro';
|
|
27
|
+
src: url('/fonts/GTWalsheimPro-Medium.ttf') format('truetype');
|
|
28
|
+
font-weight: 500;
|
|
29
|
+
font-style: normal;
|
|
30
|
+
font-display: swap;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
@font-face {
|
|
34
|
+
font-family: 'GT Walsheim Pro';
|
|
35
|
+
src: url('/fonts/GTWalsheimPro-Bold.ttf') format('truetype');
|
|
36
|
+
font-weight: 700;
|
|
37
|
+
font-style: normal;
|
|
38
|
+
font-display: swap;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
html {
|
|
42
|
+
font-family: 'GT Walsheim Pro', system-ui, sans-serif;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
:root {
|
|
46
|
+
--eds-border-radius-button: 4px;
|
|
47
|
+
--eds-border-radius-lil: 6px;
|
|
48
|
+
--eds-border-radius-extra-small: 8px;
|
|
49
|
+
--eds-border-radius-small: 12px;
|
|
50
|
+
--eds-border-radius-medium: 16px;
|
|
51
|
+
--eds-border-radius-large: 20px;
|
|
52
|
+
--eds-border-radius-extra-large: 24px;
|
|
53
|
+
--eds-border-radius-circle: 50%;
|
|
54
|
+
|
|
55
|
+
--eds-color-blue-background: #9ec1d4;
|
|
56
|
+
--eds-color-blue-dark: #013652;
|
|
57
|
+
--eds-color-blue-main: #0074ae;
|
|
58
|
+
--eds-color-blue-middle: #4f90b2;
|
|
59
|
+
|
|
60
|
+
--eds-color-green-background: #c3e5b1;
|
|
61
|
+
--eds-color-green-dark: #21480d;
|
|
62
|
+
--eds-color-green-main: #60cb27;
|
|
63
|
+
--eds-color-green-middle: #8cc96b;
|
|
64
|
+
|
|
65
|
+
--eds-color-neutral-background: #f5f5f5;
|
|
66
|
+
--eds-color-neutral-disabled: #b5b5b5;
|
|
67
|
+
--eds-color-neutral-elements: #6d6863;
|
|
68
|
+
--eds-color-neutral-main: #181818;
|
|
69
|
+
|
|
70
|
+
--eds-color-orange-background: #ffd4b5;
|
|
71
|
+
--eds-color-orange-dark: #7f4418;
|
|
72
|
+
--eds-color-orange-main: #f58220;
|
|
73
|
+
--eds-color-orange-middle: #fab07a;
|
|
74
|
+
|
|
75
|
+
--eds-color-red-background: #ffb7ae;
|
|
76
|
+
--eds-color-red-dark: #ffb7ae;
|
|
77
|
+
--eds-color-red-main: #f5432c;
|
|
78
|
+
--eds-color-red-middle: #ff7f6e;
|
|
79
|
+
|
|
80
|
+
--eds-color-grey-disabled: var(--eds-color-neutral-disabled);
|
|
81
|
+
|
|
82
|
+
--eds-color-outline-border: hsl(240 5.9% 90%);
|
|
83
|
+
--eds-color-outline-text: hsl(240 10% 3.9%);
|
|
84
|
+
--eds-color-outline-hover-bg: hsl(240 4.8% 95.9%);
|
|
85
|
+
--eds-color-outline-hover-text: hsl(240 10% 3.9%);
|
|
86
|
+
--eds-color-outline-focus-ring: hsl(240 5% 64.9% / 0.45);
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
._Button_s1y2z_1{--eds-btn-accent:var(--eds-color-blue-main);box-sizing:border-box;color:inherit;-webkit-user-select:none;user-select:none;cursor:pointer;background-color:#0000;border:0 solid #0000;justify-content:center;align-items:center;margin:0;font-family:inherit;font-weight:700;display:inline-flex}._color-blue-background_s1y2z_20{--eds-btn-accent:var(--eds-color-blue-background);--eds-btn-solid-fg:#181818}._color-blue-dark_s1y2z_25{--eds-btn-accent:var(--eds-color-blue-dark)}._color-blue-main_s1y2z_29{--eds-btn-accent:var(--eds-color-blue-main)}._color-blue-middle_s1y2z_33{--eds-btn-accent:var(--eds-color-blue-middle)}._color-green-background_s1y2z_37{--eds-btn-accent:var(--eds-color-green-background);--eds-btn-solid-fg:#181818}._color-green-dark_s1y2z_42{--eds-btn-accent:var(--eds-color-green-dark)}._color-green-main_s1y2z_46{--eds-btn-accent:var(--eds-color-green-main);--eds-btn-solid-fg:#181818}._color-green-middle_s1y2z_51{--eds-btn-accent:var(--eds-color-green-middle);--eds-btn-solid-fg:#181818}._color-neutral-background_s1y2z_56{--eds-btn-accent:var(--eds-color-neutral-background);--eds-btn-solid-fg:#181818}._color-neutral-disabled_s1y2z_61{--eds-btn-accent:var(--eds-color-neutral-disabled);--eds-btn-solid-fg:#181818}._color-neutral-elements_s1y2z_66{--eds-btn-accent:var(--eds-color-neutral-elements)}._color-neutral-main_s1y2z_70{--eds-btn-accent:var(--eds-color-neutral-main)}._color-orange-background_s1y2z_74{--eds-btn-accent:var(--eds-color-orange-background);--eds-btn-solid-fg:#181818}._color-orange-dark_s1y2z_79{--eds-btn-accent:var(--eds-color-orange-dark)}._color-orange-main_s1y2z_83{--eds-btn-accent:var(--eds-color-orange-main)}._color-orange-middle_s1y2z_87{--eds-btn-accent:var(--eds-color-orange-middle);--eds-btn-solid-fg:#181818}._color-red-background_s1y2z_92{--eds-btn-accent:var(--eds-color-red-background);--eds-btn-solid-fg:#181818}._color-red-dark_s1y2z_97{--eds-btn-accent:var(--eds-color-red-dark);--eds-btn-solid-fg:#181818}._color-red-main_s1y2z_102{--eds-btn-accent:var(--eds-color-red-main)}._color-red-middle_s1y2z_106{--eds-btn-accent:var(--eds-color-red-middle);--eds-btn-solid-fg:#181818}._sizeSm_s1y2z_111{border-radius:var(--eds-border-radius-lil,6px);gap:.375rem;min-height:32px;padding:0 1rem;font-size:.875rem;line-height:1.25rem}._sizeSm_s1y2z_111 ._IconWrap_s1y2z_120{width:1.125rem;height:1.125rem}._sizeMd_s1y2z_125{border-radius:var(--eds-border-radius-extra-small,8px);gap:.5rem;min-height:40px;padding:0 1.5rem;font-size:1rem;line-height:1.5rem}._sizeMd_s1y2z_125 ._IconWrap_s1y2z_120{width:1.375rem;height:1.375rem}._sizeLg_s1y2z_139{border-radius:var(--eds-border-radius-extra-small,8px);gap:.875rem;min-height:48px;padding:0 2rem;font-size:1.25rem;line-height:1.75rem}._sizeLg_s1y2z_139 ._IconWrap_s1y2z_120{width:1.75rem;height:1.75rem}._block_s1y2z_153{width:100%}._variantSolid_s1y2z_157{background-color:var(--eds-btn-accent);color:var(--eds-btn-solid-fg,#fff)}@media (hover:hover){._variantSolid_s1y2z_157:hover:not([data-disabled]){background-color:color-mix(in srgb, var(--eds-btn-accent) 78%, black)}}._variantSolid_s1y2z_157:active:not([data-disabled]){filter:brightness(.92)}._variantSolid_s1y2z_157:focus-visible{outline:2px solid var(--eds-btn-accent);outline-offset:2px}._variantSolid_s1y2z_157[data-disabled]:not([data-loading]){background-color:var(--eds-color-neutral-disabled);color:#181818;cursor:not-allowed}._variantSolid_s1y2z_157[data-loading][data-disabled]{background-color:var(--eds-btn-accent);color:var(--eds-btn-solid-fg,#fff);cursor:wait;filter:none}._variantOutline_s1y2z_190{border-width:1px;border-color:color-mix(in srgb, var(--eds-btn-accent) 42%, var(--eds-color-outline-border));color:var(--eds-btn-accent);background-color:#0000}@media (hover:hover){._variantOutline_s1y2z_190:hover:not([data-disabled]){border-color:color-mix(in srgb, var(--eds-btn-accent) 58%, var(--eds-color-outline-border));background-color:color-mix(in srgb, var(--eds-btn-accent) 10%, transparent);color:color-mix(in srgb, var(--eds-btn-accent) 88%, black)}}._variantOutline_s1y2z_190:active:not([data-disabled]){filter:brightness(.98)}._variantOutline_s1y2z_190:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--eds-btn-accent) 38%, transparent);outline:none}._variantOutline_s1y2z_190[data-disabled]:not([data-loading]){border-color:var(--eds-color-outline-border);color:var(--eds-color-grey-disabled);cursor:not-allowed;opacity:.5;background-color:#0000}._variantOutline_s1y2z_190[data-loading][data-disabled]{border-color:color-mix(in srgb, var(--eds-btn-accent) 42%, var(--eds-color-outline-border));color:var(--eds-btn-accent);cursor:wait;filter:none;opacity:1;background-color:#0000}._variantGhost_s1y2z_248{color:var(--eds-btn-accent);background-color:#0000}@media (hover:hover){._variantGhost_s1y2z_248:hover:not([data-disabled]){color:color-mix(in srgb, var(--eds-btn-accent) 78%, black)}}._variantGhost_s1y2z_248:active:not([data-disabled]){filter:brightness(.95)}._variantGhost_s1y2z_248:focus-visible{outline:2px solid var(--eds-btn-accent);outline-offset:2px}._variantGhost_s1y2z_248[data-disabled]:not([data-loading]){color:var(--eds-color-grey-disabled);cursor:not-allowed}._variantGhost_s1y2z_248[data-loading][data-disabled]{color:var(--eds-btn-accent);cursor:wait;filter:none}._variantLink_s1y2z_279{min-height:unset;color:var(--eds-btn-accent);text-decoration:underline;-webkit-text-decoration-color:var(--eds-btn-accent);text-decoration-color:var(--eds-btn-accent);text-underline-offset:.15em;background:0 0;padding:.125rem 0}._sizeSm_s1y2z_111._variantLink_s1y2z_279{gap:.375rem;font-size:.875rem;line-height:1.25rem}._sizeMd_s1y2z_125._variantLink_s1y2z_279{gap:.5rem;font-size:1rem;line-height:1.5rem}._sizeLg_s1y2z_139._variantLink_s1y2z_279{gap:.5rem;font-size:1.25rem;line-height:1.75rem}@media (hover:hover){._variantLink_s1y2z_279:hover:not([data-disabled]){color:color-mix(in srgb, var(--eds-btn-accent) 78%, black);-webkit-text-decoration-color:color-mix(in srgb, var(--eds-btn-accent) 78%, black);text-decoration-color:color-mix(in srgb, var(--eds-btn-accent) 78%, black)}}._variantLink_s1y2z_279:focus-visible{outline:2px solid var(--eds-btn-accent);outline-offset:2px}._variantLink_s1y2z_279[data-disabled]:not([data-loading]){color:var(--eds-color-grey-disabled);-webkit-text-decoration-color:var(--eds-color-grey-disabled);text-decoration-color:var(--eds-color-grey-disabled);cursor:not-allowed}._variantLink_s1y2z_279[data-loading][data-disabled]{color:var(--eds-btn-accent);-webkit-text-decoration-color:var(--eds-btn-accent);text-decoration-color:var(--eds-btn-accent);cursor:wait}._IconWrap_s1y2z_120{flex-shrink:0;justify-content:center;align-items:center;display:flex}._Icon_s1y2z_120{width:100%;height:100%;display:block}._Spinner_s1y2z_348{animation:.7s linear infinite _button-spin_s1y2z_1}@keyframes _button-spin_s1y2z_1{to{transform:rotate(360deg)}}._Root_mce06_1{box-sizing:border-box;flex-direction:column;gap:.375rem;width:214px;display:inline-flex}._Root_mce06_1[data-fluid]{width:100%}._LabelRow_mce06_13{justify-content:space-between;align-items:center;gap:.75rem;display:flex}._LabelText_mce06_20{color:var(--eds-color-neutral-main);align-items:baseline;gap:.25rem;font-size:.875rem;line-height:1.25rem;display:inline-flex}._Required_mce06_29{color:var(--eds-color-red-main)}._InputGroup_mce06_33{border:1px solid var(--eds-color-outline-border);border-radius:var(--eds-border-radius-extra-small,8px);background-color:#fff;align-items:center;gap:.25rem;width:100%;height:36px;padding:0 .5rem 0 .75rem;display:inline-flex;position:relative}._InputGroup_mce06_33[data-state=invalid]{border-color:color-mix(in srgb, var(--eds-color-red-main) 55%, var(--eds-color-outline-border))}._InputGroup_mce06_33[data-state=valid]{border-color:color-mix(in srgb, var(--eds-color-green-main) 55%, var(--eds-color-outline-border))}._InputGroup_mce06_33:focus-within{border-color:color-mix(in srgb, var(--eds-color-neutral-elements) 35%, var(--eds-color-outline-border));box-shadow:0 0 0 3px var(--eds-color-outline-focus-ring)}._InputGroup_mce06_33[data-disabled]{background-color:var(--eds-color-neutral-background);border-color:var(--eds-color-outline-border);opacity:.7;cursor:not-allowed}._Input_mce06_33{box-sizing:border-box;min-width:0;font:inherit;color:var(--eds-color-neutral-main);background:0 0;border:0;outline:0;flex:1;margin:0;padding:0;font-size:1rem;line-height:1.5rem}._Input_mce06_33::placeholder{color:var(--eds-color-neutral-elements);opacity:1}._Input_mce06_33:disabled{cursor:not-allowed}._Input_mce06_33[readonly]:not(:disabled){cursor:pointer}._Actions_mce06_106{flex-shrink:0;align-items:center;gap:.125rem;display:inline-flex}._IconButton_mce06_113{all:unset;box-sizing:border-box;width:28px;height:28px;color:var(--eds-color-neutral-elements);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}._IconButton_mce06_113:hover:not([data-disabled]){color:var(--eds-color-neutral-main);background:color-mix(in srgb, var(--eds-color-neutral-elements) 8%, transparent)}._IconButton_mce06_113:focus-visible{outline:2px solid var(--eds-color-blue-main);outline-offset:2px}._IconButton_mce06_113[data-disabled]{opacity:.5;cursor:not-allowed;pointer-events:none}._Icon_mce06_113{flex-shrink:0;width:16px;height:16px}._Positioner_mce06_152{z-index:50;outline:0}._Popup_mce06_157{box-sizing:border-box;min-width:var(--anchor-width);border:1px solid var(--eds-color-outline-border);border-radius:var(--eds-border-radius-extra-small,8px);background-color:#fff;max-height:280px;padding:.25rem 0;overflow:visible;box-shadow:0 4px 6px -1px #00000012,0 2px 4px -2px #0000000f}._Empty_mce06_170{color:var(--eds-color-neutral-elements);padding:.625rem .75rem;font-size:.875rem;line-height:1.25rem}._List_mce06_177{box-sizing:border-box;overscroll-behavior:contain;outline:0;max-height:240px;padding:.125rem;overflow-y:auto}._Item_mce06_186{box-sizing:border-box;width:100%;font:inherit;color:var(--eds-color-neutral-main);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:.5rem;padding:.5rem .625rem;font-size:.875rem;line-height:1.25rem;display:flex}._Item_mce06_186[data-highlighted]{background:color-mix(in srgb, var(--eds-color-neutral-elements) 10%, transparent)}._Item_mce06_186[data-disabled]{opacity:.5;cursor:not-allowed}._ItemIndicator_mce06_217{width:1rem;height:1rem;color:var(--eds-color-blue-main);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}._ItemText_mce06_227{flex:1;min-width:0;display:block}._SupportingText_mce06_233{color:var(--eds-color-neutral-elements);font-size:.75rem;line-height:1rem}._SupportingText_mce06_233[data-state=invalid]{color:var(--eds-color-red-main)}._Root_twox3_1{box-sizing:border-box;flex-direction:column;gap:.375rem;width:214px;display:inline-flex}._Root_twox3_1[data-fluid]{width:100%}._LabelRow_twox3_13{justify-content:space-between;align-items:center;gap:.75rem;display:flex}._LabelLeft_twox3_20{align-items:center;gap:.5rem;min-width:0;display:inline-flex}._LabelText_twox3_27{color:var(--eds-color-neutral-main);align-items:baseline;gap:.25rem;font-size:.875rem;line-height:1.25rem;display:inline-flex}._Required_twox3_36{color:var(--eds-color-red-main)}._SupportLink_twox3_40{color:var(--eds-color-blue-main);text-underline-offset:.15em;white-space:nowrap;font-size:.875rem;line-height:1.25rem;text-decoration:underline}._SupportLink_twox3_40[aria-disabled=true]{opacity:.6;pointer-events:none}._TooltipButton_twox3_54{all:unset;width:28px;height:28px;color:var(--eds-color-neutral-elements);cursor:help;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}._TooltipButton_twox3_54:focus-visible{outline:2px solid var(--eds-color-blue-main);outline-offset:2px}._Control_twox3_71{border:1px solid var(--eds-color-outline-border);border-radius:var(--eds-border-radius-extra-small,8px);background-color:#fff;align-items:center;width:100%;height:36px;padding:0 .75rem;display:inline-flex;position:relative}._Adornment_twox3_83{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}._SpinnerWrap_twox3_90{color:var(--eds-color-blue-main)}._Spinner_twox3_90{animation:.7s linear infinite _input-spin_twox3_1}@keyframes _input-spin_twox3_1{to{transform:rotate(360deg)}}._Control_twox3_71[data-state=invalid]{border-color:color-mix(in srgb, var(--eds-color-red-main) 55%, var(--eds-color-outline-border))}._Control_twox3_71[data-state=valid]{border-color:color-mix(in srgb, var(--eds-color-green-main) 55%, var(--eds-color-outline-border))}._Control_twox3_71[data-state=loading]{border-color:color-mix(in srgb, var(--eds-color-blue-main) 45%, var(--eds-color-outline-border))}._Control_twox3_71:focus-within{border-color:color-mix(in srgb, var(--eds-color-neutral-elements) 35%, var(--eds-color-outline-border));box-shadow:0 0 0 3px var(--eds-color-outline-focus-ring)}._Control_twox3_71[data-disabled]{background-color:var(--eds-color-neutral-background);border-color:var(--eds-color-outline-border);opacity:.7;cursor:not-allowed}._Input_twox3_132{box-sizing:border-box;min-width:0;font:inherit;color:var(--eds-color-neutral-main);background:0 0;border:0;outline:0;flex:1;margin:0;padding:0;font-size:1rem;line-height:1.5rem}._Input_twox3_132::placeholder{color:var(--eds-color-neutral-elements);opacity:1}._FloatingLabel_twox3_152{color:var(--eds-color-neutral-elements);pointer-events:none;background:0 0;padding:0 .125rem;font-size:1rem;line-height:1.5rem;transition:transform .16s,font-size .16s,top .16s,color .16s;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}._Control_twox3_71[data-floating=true]{padding-top:.75rem}._Control_twox3_71[data-floating=true] ._Input_twox3_132::placeholder{opacity:0}._Control_twox3_71[data-floating=true][data-has-value] ._FloatingLabel_twox3_152,._Control_twox3_71[data-floating=true]:focus-within ._FloatingLabel_twox3_152{color:var(--eds-color-neutral-elements);background:#fff;font-size:.75rem;line-height:1rem;top:.35rem;transform:translateY(0)}._SupportingText_twox3_188{color:var(--eds-color-neutral-elements);font-size:.75rem;line-height:1rem}._SupportingText_twox3_188[data-state=invalid]{color:var(--eds-color-red-main)}
|
|
90
|
+
/*$vite$:1*/
|
package/package.json
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@vincisys/eyeson",
|
|
3
|
+
"private": false,
|
|
4
|
+
"version": "0.1.0",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"files": [
|
|
7
|
+
"dist",
|
|
8
|
+
"styles.css"
|
|
9
|
+
],
|
|
10
|
+
"exports": {
|
|
11
|
+
"./Button": {
|
|
12
|
+
"types": "./dist/Button.d.ts",
|
|
13
|
+
"import": "./dist/Button.js",
|
|
14
|
+
"default": "./dist/Button.js"
|
|
15
|
+
},
|
|
16
|
+
"./Input": {
|
|
17
|
+
"types": "./dist/Input.d.ts",
|
|
18
|
+
"import": "./dist/Input.js",
|
|
19
|
+
"default": "./dist/Input.js"
|
|
20
|
+
},
|
|
21
|
+
"./Combobox": {
|
|
22
|
+
"types": "./dist/Combobox.d.ts",
|
|
23
|
+
"import": "./dist/Combobox.js",
|
|
24
|
+
"default": "./dist/Combobox.js"
|
|
25
|
+
},
|
|
26
|
+
"./styles.css": "./styles.css"
|
|
27
|
+
},
|
|
28
|
+
"sideEffects": [
|
|
29
|
+
"**/*.css"
|
|
30
|
+
],
|
|
31
|
+
"scripts": {
|
|
32
|
+
"dev": "vite",
|
|
33
|
+
"build": "rm -rf dist && vite build && tsc -p tsconfig.dts.json && node scripts/merge-styles.mjs",
|
|
34
|
+
"build:js": "vite build",
|
|
35
|
+
"build:types": "tsc -p tsconfig.dts.json",
|
|
36
|
+
"typecheck": "tsc -b",
|
|
37
|
+
"lint": "eslint .",
|
|
38
|
+
"preview": "vite preview",
|
|
39
|
+
"storybook": "storybook dev -p 6006",
|
|
40
|
+
"build-storybook": "storybook build",
|
|
41
|
+
"prepublishOnly": "npm run build"
|
|
42
|
+
},
|
|
43
|
+
"dependencies": {
|
|
44
|
+
"@fontsource-variable/geist": "^5.2.8",
|
|
45
|
+
"@tanstack/react-table": "^8.21.3",
|
|
46
|
+
"brazilian-values": "^0.13.1",
|
|
47
|
+
"class-variance-authority": "^0.7.1"
|
|
48
|
+
},
|
|
49
|
+
"peerDependencies": {
|
|
50
|
+
"@base-ui/react": "^1.3.0",
|
|
51
|
+
"clsx": "^2.1.1",
|
|
52
|
+
"lucide-react": ">=0.400.0",
|
|
53
|
+
"react": ">=18",
|
|
54
|
+
"react-dom": ">=18"
|
|
55
|
+
},
|
|
56
|
+
"devDependencies": {
|
|
57
|
+
"@base-ui/react": "^1.3.0",
|
|
58
|
+
"@chromatic-com/storybook": "^5.1.1",
|
|
59
|
+
"@eslint/js": "^9.39.4",
|
|
60
|
+
"@storybook/addon-a11y": "^10.3.4",
|
|
61
|
+
"@storybook/addon-docs": "^10.3.4",
|
|
62
|
+
"@storybook/addon-onboarding": "^10.3.4",
|
|
63
|
+
"@storybook/addon-vitest": "^10.3.4",
|
|
64
|
+
"@storybook/react-vite": "^10.3.4",
|
|
65
|
+
"@types/node": "^24.12.2",
|
|
66
|
+
"@types/react": "^19.2.14",
|
|
67
|
+
"@types/react-dom": "^19.2.3",
|
|
68
|
+
"@vitejs/plugin-react": "^6.0.1",
|
|
69
|
+
"@vitest/browser-playwright": "^4.1.3",
|
|
70
|
+
"@vitest/coverage-v8": "^4.1.3",
|
|
71
|
+
"clsx": "^2.1.1",
|
|
72
|
+
"eslint": "^9.39.4",
|
|
73
|
+
"eslint-plugin-react-hooks": "^7.0.1",
|
|
74
|
+
"eslint-plugin-react-refresh": "^0.5.2",
|
|
75
|
+
"eslint-plugin-storybook": "^10.3.4",
|
|
76
|
+
"globals": "^17.4.0",
|
|
77
|
+
"lucide-react": "^1.7.0",
|
|
78
|
+
"playwright": "^1.59.1",
|
|
79
|
+
"react": "^19.2.4",
|
|
80
|
+
"react-dom": "^19.2.4",
|
|
81
|
+
"shadcn": "^4.1.2",
|
|
82
|
+
"storybook": "^10.3.4",
|
|
83
|
+
"typescript": "~6.0.2",
|
|
84
|
+
"typescript-eslint": "^8.58.0",
|
|
85
|
+
"vite": "^8.0.4",
|
|
86
|
+
"vitest": "^4.1.3"
|
|
87
|
+
}
|
|
88
|
+
}
|
package/styles.css
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
@import './dist/styles.css';
|