@lindle/linoardo 1.0.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/dist/index.cjs ADDED
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ var jsxRuntime = require('react/jsx-runtime');
4
+
5
+ // src/button.tsx
6
+ function Button({ variant = "solid", className = "", ...props }) {
7
+ const base = "btn-base focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand-600";
8
+ const tone = variant === "solid" ? "bg-brand-600 text-white hover:opacity-90" : "border border-brand-600 text-brand-600 hover:bg-brand-600/5";
9
+ return /* @__PURE__ */ jsxRuntime.jsx("button", { className: `${base} ${tone} ${className}`, ...props });
10
+ }
11
+
12
+ exports.Button = Button;
13
+ //# sourceMappingURL=index.cjs.map
14
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/button.tsx"],"names":["jsx"],"mappings":";;;;;AAMO,SAAS,MAAA,CAAO,EAAE,OAAA,GAAU,OAAA,EAAS,YAAY,EAAA,EAAI,GAAG,OAAM,EAAgB;AACnF,EAAA,MAAM,IAAA,GAAO,uFAAA;AACb,EAAA,MAAM,IAAA,GACJ,OAAA,KAAY,OAAA,GACR,0CAAA,GACA,6DAAA;AAEN,EAAA,uBAAOA,cAAA,CAAC,QAAA,EAAA,EAAO,SAAA,EAAW,CAAA,EAAG,IAAI,CAAA,CAAA,EAAI,IAAI,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA,EAAK,GAAG,KAAA,EAAO,CAAA;AACvE","file":"index.cjs","sourcesContent":["import * as React from 'react';\n\nexport type ButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> & {\n variant?: 'solid' | 'outline';\n};\n\nexport function Button({ variant = 'solid', className = '', ...props }: ButtonProps) {\n const base = 'btn-base focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand-600';\n const tone =\n variant === 'solid'\n ? 'bg-brand-600 text-white hover:opacity-90'\n : 'border border-brand-600 text-brand-600 hover:bg-brand-600/5';\n\n return <button className={`${base} ${tone} ${className}`} {...props} />;\n}\n"]}
@@ -0,0 +1,9 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import * as React from 'react';
3
+
4
+ type ButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> & {
5
+ variant?: 'solid' | 'outline';
6
+ };
7
+ declare function Button({ variant, className, ...props }: ButtonProps): react_jsx_runtime.JSX.Element;
8
+
9
+ export { Button, type ButtonProps };
@@ -0,0 +1,9 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import * as React from 'react';
3
+
4
+ type ButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> & {
5
+ variant?: 'solid' | 'outline';
6
+ };
7
+ declare function Button({ variant, className, ...props }: ButtonProps): react_jsx_runtime.JSX.Element;
8
+
9
+ export { Button, type ButtonProps };
package/dist/index.js ADDED
@@ -0,0 +1,12 @@
1
+ import { jsx } from 'react/jsx-runtime';
2
+
3
+ // src/button.tsx
4
+ function Button({ variant = "solid", className = "", ...props }) {
5
+ const base = "btn-base focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand-600";
6
+ const tone = variant === "solid" ? "bg-brand-600 text-white hover:opacity-90" : "border border-brand-600 text-brand-600 hover:bg-brand-600/5";
7
+ return /* @__PURE__ */ jsx("button", { className: `${base} ${tone} ${className}`, ...props });
8
+ }
9
+
10
+ export { Button };
11
+ //# sourceMappingURL=index.js.map
12
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/button.tsx"],"names":[],"mappings":";;;AAMO,SAAS,MAAA,CAAO,EAAE,OAAA,GAAU,OAAA,EAAS,YAAY,EAAA,EAAI,GAAG,OAAM,EAAgB;AACnF,EAAA,MAAM,IAAA,GAAO,uFAAA;AACb,EAAA,MAAM,IAAA,GACJ,OAAA,KAAY,OAAA,GACR,0CAAA,GACA,6DAAA;AAEN,EAAA,uBAAO,GAAA,CAAC,QAAA,EAAA,EAAO,SAAA,EAAW,CAAA,EAAG,IAAI,CAAA,CAAA,EAAI,IAAI,CAAA,CAAA,EAAI,SAAS,CAAA,CAAA,EAAK,GAAG,KAAA,EAAO,CAAA;AACvE","file":"index.js","sourcesContent":["import * as React from 'react';\n\nexport type ButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> & {\n variant?: 'solid' | 'outline';\n};\n\nexport function Button({ variant = 'solid', className = '', ...props }: ButtonProps) {\n const base = 'btn-base focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-brand-600';\n const tone =\n variant === 'solid'\n ? 'bg-brand-600 text-white hover:opacity-90'\n : 'border border-brand-600 text-brand-600 hover:bg-brand-600/5';\n\n return <button className={`${base} ${tone} ${className}`} {...props} />;\n}\n"]}
@@ -0,0 +1,339 @@
1
+ /*! tailwindcss v4.1.13 | MIT License | https://tailwindcss.com */
2
+ @layer properties;
3
+ @layer theme, base, components, utilities;
4
+ @layer theme {
5
+ :root, :host {
6
+ --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
7
+ "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
8
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
9
+ "Courier New", monospace;
10
+ --color-white: #fff;
11
+ --spacing: 0.25rem;
12
+ --font-weight-medium: 500;
13
+ --radius-md: 0.5rem;
14
+ --default-font-family: var(--font-sans);
15
+ --default-mono-font-family: var(--font-mono);
16
+ --color-brand-600: oklch(0.62 0.13 250);
17
+ }
18
+ }
19
+ @layer base {
20
+ *, ::after, ::before, ::backdrop, ::file-selector-button {
21
+ box-sizing: border-box;
22
+ margin: 0;
23
+ padding: 0;
24
+ border: 0 solid;
25
+ }
26
+ html, :host {
27
+ line-height: 1.5;
28
+ -webkit-text-size-adjust: 100%;
29
+ tab-size: 4;
30
+ font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
31
+ font-feature-settings: var(--default-font-feature-settings, normal);
32
+ font-variation-settings: var(--default-font-variation-settings, normal);
33
+ -webkit-tap-highlight-color: transparent;
34
+ }
35
+ hr {
36
+ height: 0;
37
+ color: inherit;
38
+ border-top-width: 1px;
39
+ }
40
+ abbr:where([title]) {
41
+ -webkit-text-decoration: underline dotted;
42
+ text-decoration: underline dotted;
43
+ }
44
+ h1, h2, h3, h4, h5, h6 {
45
+ font-size: inherit;
46
+ font-weight: inherit;
47
+ }
48
+ a {
49
+ color: inherit;
50
+ -webkit-text-decoration: inherit;
51
+ text-decoration: inherit;
52
+ }
53
+ b, strong {
54
+ font-weight: bolder;
55
+ }
56
+ code, kbd, samp, pre {
57
+ font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
58
+ font-feature-settings: var(--default-mono-font-feature-settings, normal);
59
+ font-variation-settings: var(--default-mono-font-variation-settings, normal);
60
+ font-size: 1em;
61
+ }
62
+ small {
63
+ font-size: 80%;
64
+ }
65
+ sub, sup {
66
+ font-size: 75%;
67
+ line-height: 0;
68
+ position: relative;
69
+ vertical-align: baseline;
70
+ }
71
+ sub {
72
+ bottom: -0.25em;
73
+ }
74
+ sup {
75
+ top: -0.5em;
76
+ }
77
+ table {
78
+ text-indent: 0;
79
+ border-color: inherit;
80
+ border-collapse: collapse;
81
+ }
82
+ :-moz-focusring {
83
+ outline: auto;
84
+ }
85
+ progress {
86
+ vertical-align: baseline;
87
+ }
88
+ summary {
89
+ display: list-item;
90
+ }
91
+ ol, ul, menu {
92
+ list-style: none;
93
+ }
94
+ img, svg, video, canvas, audio, iframe, embed, object {
95
+ display: block;
96
+ vertical-align: middle;
97
+ }
98
+ img, video {
99
+ max-width: 100%;
100
+ height: auto;
101
+ }
102
+ button, input, select, optgroup, textarea, ::file-selector-button {
103
+ font: inherit;
104
+ font-feature-settings: inherit;
105
+ font-variation-settings: inherit;
106
+ letter-spacing: inherit;
107
+ color: inherit;
108
+ border-radius: 0;
109
+ background-color: transparent;
110
+ opacity: 1;
111
+ }
112
+ :where(select:is([multiple], [size])) optgroup {
113
+ font-weight: bolder;
114
+ }
115
+ :where(select:is([multiple], [size])) optgroup option {
116
+ padding-inline-start: 20px;
117
+ }
118
+ ::file-selector-button {
119
+ margin-inline-end: 4px;
120
+ }
121
+ ::placeholder {
122
+ opacity: 1;
123
+ }
124
+ @supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
125
+ ::placeholder {
126
+ color: currentcolor;
127
+ @supports (color: color-mix(in lab, red, red)) {
128
+ color: color-mix(in oklab, currentcolor 50%, transparent);
129
+ }
130
+ }
131
+ }
132
+ textarea {
133
+ resize: vertical;
134
+ }
135
+ ::-webkit-search-decoration {
136
+ -webkit-appearance: none;
137
+ }
138
+ ::-webkit-date-and-time-value {
139
+ min-height: 1lh;
140
+ text-align: inherit;
141
+ }
142
+ ::-webkit-datetime-edit {
143
+ display: inline-flex;
144
+ }
145
+ ::-webkit-datetime-edit-fields-wrapper {
146
+ padding: 0;
147
+ }
148
+ ::-webkit-datetime-edit, ::-webkit-datetime-edit-year-field, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute-field, ::-webkit-datetime-edit-second-field, ::-webkit-datetime-edit-millisecond-field, ::-webkit-datetime-edit-meridiem-field {
149
+ padding-block: 0;
150
+ }
151
+ ::-webkit-calendar-picker-indicator {
152
+ line-height: 1;
153
+ }
154
+ :-moz-ui-invalid {
155
+ box-shadow: none;
156
+ }
157
+ button, input:where([type="button"], [type="reset"], [type="submit"]), ::file-selector-button {
158
+ appearance: button;
159
+ }
160
+ ::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
161
+ height: auto;
162
+ }
163
+ [hidden]:where(:not([hidden="until-found"])) {
164
+ display: none !important;
165
+ }
166
+ }
167
+ @layer utilities {
168
+ .contents {
169
+ display: contents;
170
+ }
171
+ .border {
172
+ border-style: var(--tw-border-style);
173
+ border-width: 1px;
174
+ }
175
+ .border-brand-600 {
176
+ border-color: var(--color-brand-600);
177
+ }
178
+ .bg-brand-600 {
179
+ background-color: var(--color-brand-600);
180
+ }
181
+ .text-brand-600 {
182
+ color: var(--color-brand-600);
183
+ }
184
+ .text-white {
185
+ color: var(--color-white);
186
+ }
187
+ .outline {
188
+ outline-style: var(--tw-outline-style);
189
+ outline-width: 1px;
190
+ }
191
+ .hover\:bg-brand-600\/5 {
192
+ &:hover {
193
+ @media (hover: hover) {
194
+ background-color: color-mix(in srgb, oklch(0.62 0.13 250) 5%, transparent);
195
+ @supports (color: color-mix(in lab, red, red)) {
196
+ background-color: color-mix(in oklab, var(--color-brand-600) 5%, transparent);
197
+ }
198
+ }
199
+ }
200
+ }
201
+ .hover\:opacity-90 {
202
+ &:hover {
203
+ @media (hover: hover) {
204
+ opacity: 90%;
205
+ }
206
+ }
207
+ }
208
+ .focus-visible\:ring-2 {
209
+ &:focus-visible {
210
+ --tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
211
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
212
+ }
213
+ }
214
+ .focus-visible\:ring-brand-600 {
215
+ &:focus-visible {
216
+ --tw-ring-color: var(--color-brand-600);
217
+ }
218
+ }
219
+ .focus-visible\:outline-none {
220
+ &:focus-visible {
221
+ --tw-outline-style: none;
222
+ outline-style: none;
223
+ }
224
+ }
225
+ }
226
+ @layer utilities {
227
+ .btn-base {
228
+ display: inline-flex;
229
+ align-items: center;
230
+ justify-content: center;
231
+ border-radius: var(--radius-md);
232
+ padding-inline: calc(var(--spacing) * 4);
233
+ padding-block: calc(var(--spacing) * 2);
234
+ --tw-font-weight: var(--font-weight-medium);
235
+ font-weight: var(--font-weight-medium);
236
+ }
237
+ }
238
+ @property --tw-border-style {
239
+ syntax: "*";
240
+ inherits: false;
241
+ initial-value: solid;
242
+ }
243
+ @property --tw-outline-style {
244
+ syntax: "*";
245
+ inherits: false;
246
+ initial-value: solid;
247
+ }
248
+ @property --tw-shadow {
249
+ syntax: "*";
250
+ inherits: false;
251
+ initial-value: 0 0 #0000;
252
+ }
253
+ @property --tw-shadow-color {
254
+ syntax: "*";
255
+ inherits: false;
256
+ }
257
+ @property --tw-shadow-alpha {
258
+ syntax: "<percentage>";
259
+ inherits: false;
260
+ initial-value: 100%;
261
+ }
262
+ @property --tw-inset-shadow {
263
+ syntax: "*";
264
+ inherits: false;
265
+ initial-value: 0 0 #0000;
266
+ }
267
+ @property --tw-inset-shadow-color {
268
+ syntax: "*";
269
+ inherits: false;
270
+ }
271
+ @property --tw-inset-shadow-alpha {
272
+ syntax: "<percentage>";
273
+ inherits: false;
274
+ initial-value: 100%;
275
+ }
276
+ @property --tw-ring-color {
277
+ syntax: "*";
278
+ inherits: false;
279
+ }
280
+ @property --tw-ring-shadow {
281
+ syntax: "*";
282
+ inherits: false;
283
+ initial-value: 0 0 #0000;
284
+ }
285
+ @property --tw-inset-ring-color {
286
+ syntax: "*";
287
+ inherits: false;
288
+ }
289
+ @property --tw-inset-ring-shadow {
290
+ syntax: "*";
291
+ inherits: false;
292
+ initial-value: 0 0 #0000;
293
+ }
294
+ @property --tw-ring-inset {
295
+ syntax: "*";
296
+ inherits: false;
297
+ }
298
+ @property --tw-ring-offset-width {
299
+ syntax: "<length>";
300
+ inherits: false;
301
+ initial-value: 0px;
302
+ }
303
+ @property --tw-ring-offset-color {
304
+ syntax: "*";
305
+ inherits: false;
306
+ initial-value: #fff;
307
+ }
308
+ @property --tw-ring-offset-shadow {
309
+ syntax: "*";
310
+ inherits: false;
311
+ initial-value: 0 0 #0000;
312
+ }
313
+ @property --tw-font-weight {
314
+ syntax: "*";
315
+ inherits: false;
316
+ }
317
+ @layer properties {
318
+ @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
319
+ *, ::before, ::after, ::backdrop {
320
+ --tw-border-style: solid;
321
+ --tw-outline-style: solid;
322
+ --tw-shadow: 0 0 #0000;
323
+ --tw-shadow-color: initial;
324
+ --tw-shadow-alpha: 100%;
325
+ --tw-inset-shadow: 0 0 #0000;
326
+ --tw-inset-shadow-color: initial;
327
+ --tw-inset-shadow-alpha: 100%;
328
+ --tw-ring-color: initial;
329
+ --tw-ring-shadow: 0 0 #0000;
330
+ --tw-inset-ring-color: initial;
331
+ --tw-inset-ring-shadow: 0 0 #0000;
332
+ --tw-ring-inset: initial;
333
+ --tw-ring-offset-width: 0px;
334
+ --tw-ring-offset-color: #fff;
335
+ --tw-ring-offset-shadow: 0 0 #0000;
336
+ --tw-font-weight: initial;
337
+ }
338
+ }
339
+ }
package/package.json ADDED
@@ -0,0 +1,51 @@
1
+ {
2
+ "name": "@lindle/linoardo",
3
+ "version": "1.0.1",
4
+ "description": "",
5
+ "keywords": [],
6
+ "author": "",
7
+ "license": "ISC",
8
+ "type": "module",
9
+ "dependencies": {
10
+ "react": "^19.1.1",
11
+ "react-dom": "^19.1.1"
12
+ },
13
+ "devDependencies": {
14
+ "@tailwindcss/postcss": "^4.1.13",
15
+ "@types/react": "^19.1.13",
16
+ "@types/react-dom": "^19.1.9",
17
+ "postcss": "^8.5.6",
18
+ "postcss-cli": "^11.0.1",
19
+ "tailwindcss": "^4.1.13",
20
+ "tsup": "^8.5.0",
21
+ "typescript": "^5.9.2"
22
+ },
23
+ "main": "dist/index.cjs",
24
+ "module": "dist/index.js",
25
+ "types": "dist/index.d.ts",
26
+ "files": [
27
+ "dist"
28
+ ],
29
+ "sideEffects": [
30
+ "dist/styles.css"
31
+ ],
32
+ "exports": {
33
+ ".": {
34
+ "types": "./dist/index.d.ts",
35
+ "import": "./dist/index.js",
36
+ "require": "./dist/index.cjs"
37
+ },
38
+ "./styles.css": "./dist/styles.css"
39
+ },
40
+ "scripts": {
41
+ "build:js": "tsup",
42
+ "build:css": "postcss src/styles.css -o dist/styles.css",
43
+ "build": "pnpm run build:js && pnpm run build:css",
44
+ "pubcheck": "npm pack --dry-run",
45
+ "prepublishOnly": "pnpm run build"
46
+ },
47
+ "peerDependencies": {
48
+ "react": ">=18",
49
+ "react-dom": ">=18"
50
+ }
51
+ }