@brosco/ui 0.0.52 → 0.0.54

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/dist/index.css CHANGED
@@ -1,4 +1,15 @@
1
1
  /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
2
+ @layer properties {
3
+ @supports (((-webkit-hyphens: none)) and (not (margin-trim: inline))) or
4
+ ((-moz-orient: inline) and (not (color: rgb(from red r g b)))) {
5
+ *,
6
+ :before,
7
+ :after,
8
+ ::backdrop {
9
+ --tw-font-weight: initial;
10
+ }
11
+ }
12
+ }
2
13
  @layer theme {
3
14
  :root {
4
15
  --eclipse: var(--color-zinc-900);
@@ -13,189 +24,11 @@
13
24
  }
14
25
  @layer components {
15
26
  .button {
16
- --color: transparent;
17
- --bg: transparent;
18
- --bg-hover: var(--bg);
19
- --bg-active: var(--bg-hover);
20
- --fg: currentColor;
21
- }
22
- .button--primary {
23
- --color: var(--primary);
24
- }
25
- .button--secondary {
26
- --color: var(--secondary);
27
- }
28
- .button--success {
29
- --color: var(--success);
30
- }
31
- .button--danger {
32
- --color: var(--danger);
33
- }
34
- .button--solid {
35
- --bg: var(--color);
36
- --bg-hover: var(--bg);
37
- }
38
- @supports (color: color-mix(in lab, red, red)) {
39
- .button--solid {
40
- --bg-hover: color-mix(in oklab, var(--bg) 90%, var(--eclipse) 10%);
41
- }
42
- }
43
- .button--solid {
44
- --bg-active: var(--bg);
45
- }
46
- @supports (color: color-mix(in lab, red, red)) {
47
- .button--solid {
48
- --bg-active: color-mix(in oklab, var(--bg) 80%, var(--eclipse) 20%);
49
- }
50
- }
51
- .button--solid {
52
- --fg: var(--color-white);
53
- }
54
- .button--solid.button--secondary {
55
- --bg: var(--color);
56
- }
57
- @supports (color: color-mix(in lab, red, red)) {
58
- .button--solid.button--secondary {
59
- --bg: color-mix(in oklab, var(--color) 5%, transparent);
60
- }
61
- }
62
- .button--solid.button--secondary {
63
- --bg-hover: var(--bg);
64
- }
65
- @supports (color: color-mix(in lab, red, red)) {
66
- .button--solid.button--secondary {
67
- --bg-hover: color-mix(in oklab, var(--bg) 95%, var(--eclipse) 5%);
68
- }
69
- }
70
- .button--solid.button--secondary {
71
- --bg-active: var(--bg);
72
- }
73
- @supports (color: color-mix(in lab, red, red)) {
74
- .button--solid.button--secondary {
75
- --bg-active: color-mix(in oklab, var(--bg) 90%, var(--eclipse) 10%);
76
- }
77
- }
78
- .button--solid.button--secondary {
79
- --fg: var(--color);
80
- }
81
- .button--bordered,
82
- .button--light {
83
- --fg: var(--color);
84
- --bg-hover: var(--fg);
85
- }
86
- @supports (color: color-mix(in lab, red, red)) {
87
- .button--bordered,
88
- .button--light {
89
- --bg-hover: color-mix(in oklab, var(--fg) 5%, transparent);
90
- }
91
- }
92
- .button {
93
- justify-content: center;
94
- align-items: center;
95
- gap: calc(var(--spacing, 0.25rem) * 2);
96
27
  --tw-font-weight: var(--font-weight-medium, 500);
97
28
  font-weight: var(--font-weight-medium, 500);
98
- white-space: nowrap;
99
- color: var(--fg);
100
- transition-property:
101
- color,
102
- background-color,
103
- border-color,
104
- outline-color,
105
- text-decoration-color,
106
- fill,
107
- stroke,
108
- --tw-gradient-from,
109
- --tw-gradient-via,
110
- --tw-gradient-to,
111
- opacity,
112
- box-shadow,
113
- transform,
114
- translate,
115
- scale,
116
- rotate,
117
- filter,
118
- -webkit-backdrop-filter,
119
- backdrop-filter,
120
- display,
121
- content-visibility,
122
- overlay,
123
- pointer-events;
124
- transition-timing-function: var(
125
- --tw-ease,
126
- var(--default-transition-timing-function, cubic-bezier(0.4, 0, 0.2, 1))
127
- );
128
- transition-duration: var(
129
- --tw-duration,
130
- var(--default-transition-duration, 0.15s)
131
- );
132
- -webkit-user-select: none;
133
- user-select: none;
134
- display: inline-flex;
135
- }
136
- .button:focus-visible {
137
- --tw-outline-style: none;
138
- outline-style: none;
139
- }
140
- .button:enabled {
141
- cursor: pointer;
142
- }
143
- .button:disabled {
144
- pointer-events: none;
145
- opacity: 0.5;
146
- }
147
- .button:hover {
148
- background-color: var(--bg-hover);
149
- }
150
- .button:active {
151
- --tw-scale-x: 95%;
152
- --tw-scale-y: 95%;
153
- --tw-scale-z: 95%;
154
- scale: var(--tw-scale-x) var(--tw-scale-y);
155
- background-color: var(--bg-active);
156
- }
157
- .button[data-pending="true"] {
158
- pointer-events: none;
159
- }
160
- .button--solid {
161
- background-color: var(--bg);
162
- }
163
- .button--bordered {
164
- border-style: var(--tw-border-style);
165
- border-width: 2px;
166
- border-color: var(--fg);
167
- }
168
- .button--bordered:focus-visible:not([data-pending]) {
169
- --tw-ring-color: currentcolor;
170
- --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0
171
- calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
172
- box-shadow:
173
- var(--tw-inset-shadow), var(--tw-inset-ring-shadow),
174
- var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
175
- --tw-ring-offset-width: 2px;
176
- --tw-ring-offset-shadow: var(--tw-ring-inset,) 0 0 0
177
- var(--tw-ring-offset-width) var(--tw-ring-offset-color);
178
- }
179
- .button--light {
180
- text-underline-offset: 6px;
181
- text-decoration-line: underline;
182
- position: relative;
183
- }
184
- @media (hover: hover) {
185
- .button--light:hover {
186
- text-decoration-line: none;
187
- }
188
- }
189
- .button--light:focus-visible:not([data-pending]):after {
190
- top: calc(var(--spacing, 0.25rem) * 2);
191
- right: calc(var(--spacing, 0.25rem) * 3);
192
- left: calc(var(--spacing, 0.25rem) * 3);
193
- height: calc(var(--spacing, 0.25rem) * 0.5);
194
- content: "";
195
- background-color: currentColor;
196
- position: absolute;
197
- }
198
- .spinner {
199
- animation: var(--animate-spin, spin 1s linear infinite);
200
29
  }
201
30
  }
31
+ /*@property --tw-font-weight {
32
+ syntax: "*";
33
+ inherits: false;
34
+ }*/
package/dist/index.d.ts CHANGED
@@ -1,3 +1,2 @@
1
1
  import "./_css/styles.css";
2
2
  export * from "./button";
3
- export * from "./spinner";
package/dist/ui.js ADDED
@@ -0,0 +1,89 @@
1
+ import { Button as e } from "@base-ui/react";
2
+ import { cn as t } from "cn";
3
+ import { jsx as n, jsxs as r } from "react/jsx-runtime";
4
+ import { tv as i } from "tailwind-variants";
5
+ import './index.css';//#region src/spinner/spinner.tsx
6
+ var a = ({ className: e, size: r = 24 }) => /* @__PURE__ */ n("svg", {
7
+ stroke: "currentColor",
8
+ fill: "currentColor",
9
+ strokeWidth: "0",
10
+ version: "1.1",
11
+ viewBox: "0 0 16 16",
12
+ height: r,
13
+ width: r,
14
+ xmlns: "http://www.w3.org/2000/svg",
15
+ className: t("spinner", e),
16
+ children: /* @__PURE__ */ n("path", { d: "M16 8c-0.020-1.045-0.247-2.086-0.665-3.038-0.417-0.953-1.023-1.817-1.766-2.53s-1.624-1.278-2.578-1.651c-0.953-0.374-1.978-0.552-2.991-0.531-1.013 0.020-2.021 0.24-2.943 0.646-0.923 0.405-1.758 0.992-2.449 1.712s-1.237 1.574-1.597 2.497c-0.361 0.923-0.533 1.914-0.512 2.895 0.020 0.981 0.234 1.955 0.627 2.847 0.392 0.892 0.961 1.7 1.658 2.368s1.523 1.195 2.416 1.543c0.892 0.348 1.851 0.514 2.799 0.493 0.949-0.020 1.89-0.227 2.751-0.608 0.862-0.379 1.642-0.929 2.287-1.604s1.154-1.472 1.488-2.335c0.204-0.523 0.342-1.069 0.415-1.622 0.019 0.001 0.039 0.002 0.059 0.002 0.552 0 1-0.448 1-1 0-0.028-0.001-0.056-0.004-0.083h0.004zM14.411 10.655c-0.367 0.831-0.898 1.584-1.55 2.206s-1.422 1.112-2.254 1.434c-0.832 0.323-1.723 0.476-2.608 0.454-0.884-0.020-1.759-0.215-2.56-0.57-0.801-0.354-1.526-0.867-2.125-1.495s-1.071-1.371-1.38-2.173c-0.31-0.801-0.457-1.66-0.435-2.512s0.208-1.694 0.551-2.464c0.342-0.77 0.836-1.468 1.441-2.044s1.321-1.029 2.092-1.326c0.771-0.298 1.596-0.438 2.416-0.416s1.629 0.202 2.368 0.532c0.74 0.329 1.41 0.805 1.963 1.387s0.988 1.27 1.272 2.011c0.285 0.74 0.418 1.532 0.397 2.32h0.004c-0.002 0.027-0.004 0.055-0.004 0.083 0 0.516 0.39 0.94 0.892 0.994-0.097 0.544-0.258 1.075-0.481 1.578z" })
17
+ }), o = i({
18
+ base: "button",
19
+ variants: {
20
+ variant: {
21
+ solid: "button--solid",
22
+ bordered: "button--bordered",
23
+ light: "button--light"
24
+ },
25
+ color: {
26
+ primary: "button--primary",
27
+ secondary: "button--secondary",
28
+ success: "button--success",
29
+ danger: "button--danger"
30
+ },
31
+ rounded: {
32
+ full: "rounded-full",
33
+ lg: "rounded-lg",
34
+ md: "rounded-md",
35
+ sm: "rounded-sm",
36
+ none: "rounded-none"
37
+ },
38
+ size: {
39
+ sm: "h-9 text-sm",
40
+ md: "h-10 text-sm",
41
+ lg: "h-11 text-base"
42
+ },
43
+ isIconOnly: {
44
+ true: "shrink-0",
45
+ false: "px-4"
46
+ },
47
+ fullWidth: { true: "w-full" }
48
+ },
49
+ defaultVariants: {
50
+ variant: "solid",
51
+ color: "primary",
52
+ rounded: "lg",
53
+ size: "md"
54
+ },
55
+ compoundVariants: [
56
+ {
57
+ isIconOnly: !0,
58
+ size: "sm",
59
+ class: "w-9"
60
+ },
61
+ {
62
+ isIconOnly: !0,
63
+ size: "md",
64
+ class: "w-10"
65
+ },
66
+ {
67
+ isIconOnly: !0,
68
+ size: "lg",
69
+ class: "w-11"
70
+ }
71
+ ]
72
+ }), s = ({ children: i, icon: s, className: c, variant: l, color: u, rounded: d, size: f, isIconOnly: p, fullWidth: m, isPending: h, ...g }) => {
73
+ let _ = t(o({
74
+ variant: l,
75
+ color: u,
76
+ rounded: d,
77
+ size: f,
78
+ isIconOnly: p,
79
+ fullWidth: m
80
+ }), c);
81
+ return /* @__PURE__ */ r(e, {
82
+ className: _,
83
+ "data-pending": h,
84
+ ...g,
85
+ children: [h ? /* @__PURE__ */ n(a, {}) : s, !p && /* @__PURE__ */ n("span", { children: i })]
86
+ });
87
+ };
88
+ //#endregion
89
+ export { s as Button };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brosco/ui",
3
- "version": "0.0.52",
3
+ "version": "0.0.54",
4
4
  "type": "module",
5
5
  "files": [
6
6
  "dist"
package/dist/index.js DELETED
@@ -1 +0,0 @@
1
- import{Button as e}from"@base-ui/react";import{cn as t}from"cn";import{jsx as n,jsxs as r}from"react/jsx-runtime";import{tv as i}from"tailwind-variants";import './index.css';var a=({className:e,size:r=24})=>n(`svg`,{stroke:`currentColor`,fill:`currentColor`,strokeWidth:`0`,version:`1.1`,viewBox:`0 0 16 16`,height:r,width:r,xmlns:`http://www.w3.org/2000/svg`,className:t(`spinner`,e),children:n(`path`,{d:`M16 8c-0.020-1.045-0.247-2.086-0.665-3.038-0.417-0.953-1.023-1.817-1.766-2.53s-1.624-1.278-2.578-1.651c-0.953-0.374-1.978-0.552-2.991-0.531-1.013 0.020-2.021 0.24-2.943 0.646-0.923 0.405-1.758 0.992-2.449 1.712s-1.237 1.574-1.597 2.497c-0.361 0.923-0.533 1.914-0.512 2.895 0.020 0.981 0.234 1.955 0.627 2.847 0.392 0.892 0.961 1.7 1.658 2.368s1.523 1.195 2.416 1.543c0.892 0.348 1.851 0.514 2.799 0.493 0.949-0.020 1.89-0.227 2.751-0.608 0.862-0.379 1.642-0.929 2.287-1.604s1.154-1.472 1.488-2.335c0.204-0.523 0.342-1.069 0.415-1.622 0.019 0.001 0.039 0.002 0.059 0.002 0.552 0 1-0.448 1-1 0-0.028-0.001-0.056-0.004-0.083h0.004zM14.411 10.655c-0.367 0.831-0.898 1.584-1.55 2.206s-1.422 1.112-2.254 1.434c-0.832 0.323-1.723 0.476-2.608 0.454-0.884-0.020-1.759-0.215-2.56-0.57-0.801-0.354-1.526-0.867-2.125-1.495s-1.071-1.371-1.38-2.173c-0.31-0.801-0.457-1.66-0.435-2.512s0.208-1.694 0.551-2.464c0.342-0.77 0.836-1.468 1.441-2.044s1.321-1.029 2.092-1.326c0.771-0.298 1.596-0.438 2.416-0.416s1.629 0.202 2.368 0.532c0.74 0.329 1.41 0.805 1.963 1.387s0.988 1.27 1.272 2.011c0.285 0.74 0.418 1.532 0.397 2.32h0.004c-0.002 0.027-0.004 0.055-0.004 0.083 0 0.516 0.39 0.94 0.892 0.994-0.097 0.544-0.258 1.075-0.481 1.578z`})}),o=i({base:`button`,variants:{variant:{solid:`button--solid`,bordered:`button--bordered`,light:`button--light`},color:{primary:`button--primary`,secondary:`button--secondary`,success:`button--success`,danger:`button--danger`},rounded:{full:`rounded-full`,lg:`rounded-lg`,md:`rounded-md`,sm:`rounded-sm`,none:`rounded-none`},size:{sm:`h-9 text-sm`,md:`h-10 text-sm`,lg:`h-11 text-base`},isIconOnly:{true:`shrink-0`,false:`px-4`},fullWidth:{true:`w-full`}},defaultVariants:{variant:`solid`,color:`primary`,rounded:`lg`,size:`md`},compoundVariants:[{isIconOnly:!0,size:`sm`,class:`w-9`},{isIconOnly:!0,size:`md`,class:`w-10`},{isIconOnly:!0,size:`lg`,class:`w-11`}]}),s=({children:i,icon:s,className:c,variant:l,color:u,rounded:d,size:f,isIconOnly:p,fullWidth:m,isPending:h,...g})=>{let _=t(o({variant:l,color:u,rounded:d,size:f,isIconOnly:p,fullWidth:m}),c);return r(e,{className:_,"data-pending":h,...g,children:[h?n(a,{}):s,!p&&n(`span`,{children:i})]})};export{s as Button,a as Spinner};