hans-ui-design-lib 0.0.34 → 0.0.36
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 +37 -10
- package/dist/index.css +1 -1
- package/dist/index.d.ts +4 -3
- package/package.json +9 -5
package/README.md
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
# Hans UI Design Library
|
|
2
2
|
|
|
3
|
-
A **React + TypeScript
|
|
3
|
+
A **React + TypeScript Component Library** that serves as the base design system for personal projects.
|
|
4
4
|
This library provides reusable, styled and documented UI components with a consistent structure and best practices.
|
|
5
5
|
|
|
6
6
|
## 🚀 Features
|
|
7
7
|
|
|
8
|
-
- ⚛️ **React 19** with **TypeScript** for type safety
|
|
8
|
+
- ⚛️ **React 19.1.1** with **TypeScript 5.8.3** for type safety
|
|
9
9
|
- 🎨 **TailwindCSS + SCSS** for styling flexibility
|
|
10
10
|
- 📖 **Storybook** for interactive component documentation
|
|
11
11
|
- ✅ **Vitest + React Testing Library + JSDOM** for unit and integration testing
|
|
@@ -24,11 +24,26 @@ npm install hans-ui-design-lib
|
|
|
24
24
|
|
|
25
25
|
## 🛠️ Usage
|
|
26
26
|
|
|
27
|
+
In a root file of your application, define:
|
|
28
|
+
|
|
29
|
+
```tsx
|
|
30
|
+
import 'hans-ui-design-lib/style.css';
|
|
31
|
+
|
|
32
|
+
...
|
|
33
|
+
|
|
34
|
+
// Put the data-theme combination of your choice in the html or body tags:
|
|
35
|
+
// (if you don't choose it, the Fallback is gona be the combination1)
|
|
36
|
+
<html data-theme="combination1">
|
|
37
|
+
...
|
|
38
|
+
</html>
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
Import and use the component you wish passing the props you want:
|
|
42
|
+
|
|
27
43
|
```tsx
|
|
28
|
-
import 'hans-ui-design-lib/style.css'; // Can be imported in a root file from your project
|
|
29
44
|
import { Button } from 'hans-ui-design-lib';
|
|
30
45
|
|
|
31
|
-
<Button label="Button"
|
|
46
|
+
<Button label="Button" />;
|
|
32
47
|
```
|
|
33
48
|
|
|
34
49
|
## 🧑💻 Development
|
|
@@ -50,7 +65,7 @@ npm run dev
|
|
|
50
65
|
Run tests:
|
|
51
66
|
|
|
52
67
|
```bash
|
|
53
|
-
npm test
|
|
68
|
+
npm run test
|
|
54
69
|
```
|
|
55
70
|
|
|
56
71
|
Run tests with coverage:
|
|
@@ -71,6 +86,12 @@ Build the package:
|
|
|
71
86
|
npm run build
|
|
72
87
|
```
|
|
73
88
|
|
|
89
|
+
Start the server:
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
npm run start
|
|
93
|
+
```
|
|
94
|
+
|
|
74
95
|
## 🚢 Exporting
|
|
75
96
|
|
|
76
97
|
When developing a component, to export it to the lib, you can add those lines into the files:
|
|
@@ -120,8 +141,8 @@ UPDATE-TYPES: patch | minor | major
|
|
|
120
141
|
|
|
121
142
|
## 🛠️ Tech Stack
|
|
122
143
|
|
|
123
|
-
- **React 19**
|
|
124
|
-
- **TypeScript**
|
|
144
|
+
- **React 19.1.1**
|
|
145
|
+
- **TypeScript 5.8.3**
|
|
125
146
|
- **Vite**
|
|
126
147
|
- **Storybook**
|
|
127
148
|
- **TailwindCSS**
|
|
@@ -134,8 +155,8 @@ UPDATE-TYPES: patch | minor | major
|
|
|
134
155
|
|
|
135
156
|
## 📜 History of commands used to build this project:
|
|
136
157
|
|
|
137
|
-
```
|
|
138
|
-
npm create vite@latest
|
|
158
|
+
```bash
|
|
159
|
+
npm create vite@latest hans-ui-design-lib -- --template react-ts
|
|
139
160
|
|
|
140
161
|
npm i -D eslint @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-config-prettier eslint-plugin-react eslint-plugin-react-hooks prettier
|
|
141
162
|
|
|
@@ -145,7 +166,13 @@ npx storybook@latest init --builder @storybook/builder-vite
|
|
|
145
166
|
|
|
146
167
|
npm i -D vitest @testing-library/react @testing-library/jest-dom @types/testing-library\_\_jest-dom jsdom
|
|
147
168
|
|
|
169
|
+
npm i -D @vitest/coverage-v8 @vitest/ui
|
|
170
|
+
|
|
148
171
|
npm i -D sass
|
|
149
172
|
|
|
150
|
-
npm i react-icons
|
|
173
|
+
npm i -D react-icons
|
|
174
|
+
|
|
175
|
+
npm i -D @originjs/vite-plugin-federation
|
|
176
|
+
|
|
177
|
+
npm i -D react-to-webcomponent
|
|
151
178
|
```
|
package/dist/index.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-outline-style:solid;--tw-font-weight:initial}}}*,:before,:after{box-sizing:border-box;font-family:Nunito Sans,Helvetica Neue,Helvetica,Arial,sans-serif}ol,ul{list-style:none}a{color:inherit;text-decoration:none}img,picture,video,canvas,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit;background:0 0;border:none;outline:none}html,body,#root{height:100%}body{-webkit-font-smoothing:antialiased;line-height:1.5}.hans-button{cursor:pointer;align-items:center;gap:calc(var(--spacing)*1);border-radius:3.40282e38px;display:flex}.hans-button:disabled,.hans-button[disabled]{cursor:not-allowed;opacity:.5}.hans-button:disabled>*{pointer-events:none}.hans-button-small{padding-inline:calc(var(--spacing)*4);padding-block:calc(var(--spacing)*1)}.hans-button-medium{padding-inline:calc(var(--spacing)*5);padding-block:calc(var(--spacing)*2)}.hans-button-large{padding-inline:calc(var(--spacing)*6);padding-block:calc(var(--spacing)*3)}.hans-button-primary.hans-button-strong{background-color:var(--primary-strong-color);color:var(--primary-neutral-color)}.hans-button-primary.hans-button-default{background-color:var(--primary-default-color);color:var(--white)}.hans-button-primary.hans-button-neutral{background-color:var(--primary-neutral-color);color:var(--primary-strong-color)}.hans-button-primary.hans-button-outline{border-color:var(--primary-default-color);color:var(--primary-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-primary.hans-button-transparent{color:var(--primary-default-color);background-color:#0000}.hans-button-secondary.hans-button-strong{background-color:var(--secondary-strong-color);color:var(--secondary-neutral-color)}.hans-button-secondary.hans-button-default{background-color:var(--secondary-default-color);color:var(--white)}.hans-button-secondary.hans-button-neutral{background-color:var(--secondary-neutral-color);color:var(--secondary-strong-color)}.hans-button-secondary.hans-button-outline{border-color:var(--secondary-default-color);color:var(--secondary-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-secondary.hans-button-transparent{color:var(--secondary-default-color);background-color:#0000}.hans-button-success.hans-button-strong{background-color:var(--success-strong-color);color:var(--success-neutral-color)}.hans-button-success.hans-button-default{background-color:var(--success-default-color);color:var(--white)}.hans-button-success.hans-button-neutral{background-color:var(--success-neutral-color);color:var(--success-strong-color)}.hans-button-success.hans-button-outline{border-color:var(--success-default-color);color:var(--success-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-success.hans-button-transparent{color:var(--success-default-color);background-color:#0000}.hans-button-danger.hans-button-strong{background-color:var(--danger-strong-color);color:var(--danger-neutral-color)}.hans-button-danger.hans-button-default{background-color:var(--danger-default-color);color:var(--white)}.hans-button-danger.hans-button-neutral{background-color:var(--danger-neutral-color);color:var(--danger-strong-color)}.hans-button-danger.hans-button-outline{border-color:var(--danger-default-color);color:var(--danger-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-danger.hans-button-transparent{color:var(--danger-default-color);background-color:#0000}.hans-button-warning.hans-button-strong{background-color:var(--warning-strong-color);color:var(--warning-neutral-color)}.hans-button-warning.hans-button-default{background-color:var(--warning-default-color);color:var(--white)}.hans-button-warning.hans-button-neutral{background-color:var(--warning-neutral-color);color:var(--warning-strong-color)}.hans-button-warning.hans-button-outline{border-color:var(--warning-default-color);color:var(--warning-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-warning.hans-button-transparent{color:var(--warning-default-color);background-color:#0000}.hans-button-info.hans-button-strong{background-color:var(--info-strong-color);color:var(--info-neutral-color)}.hans-button-info.hans-button-default{background-color:var(--info-default-color);color:var(--white)}.hans-button-info.hans-button-neutral{background-color:var(--info-neutral-color);color:var(--info-strong-color)}.hans-button-info.hans-button-outline{border-color:var(--info-default-color);color:var(--info-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-info.hans-button-transparent{color:var(--info-default-color);background-color:#0000}.hans-icon{justify-content:center;align-items:center;display:inline-flex}.hans-icon-small{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.hans-icon-medium{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.hans-icon-large{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.hans-icon-loading{height:calc(var(--spacing)*4);width:calc(var(--spacing)*4);animation:var(--animate-pulse);background-color:var(--gray-300);border-radius:3.40282e38px}:root{--purple-900:#2e1a73;--purple-500:#8257e5;--purple-300:#bba7ff;--blue-900:#1b3c8e;--blue-500:#3d8bff;--blue-300:#a8c9ff;--green-900:#027a43;--green-500:#04d361;--green-300:#a3f3c4;--red-900:#8b1e34;--red-500:#e83f5b;--red-300:#ffa3b1;--yellow-900:#ff8c42;--yellow-500:#f7b500;--yellow-300:#ffe9a3;--gray-900:#0e0e10;--gray-700:#2d2d33;--gray-500:#7a7a85;--gray-300:#c7c7d1;--gray-100:#f2f2f5;--black:#000;--white:#fff}[data-theme=combination1]{--primary-strong-color:var(--purple-900);--primary-default-color:var(--purple-500);--primary-neutral-color:var(--purple-300);--secondary-strong-color:var(--blue-900);--secondary-default-color:var(--blue-500);--secondary-neutral-color:var(--blue-300);--success-strong-color:var(--green-900);--success-default-color:var(--green-500);--success-neutral-color:var(--green-300);--danger-strong-color:var(--red-900);--danger-default-color:var(--red-500);--danger-neutral-color:var(--red-300);--warning-strong-color:var(--yellow-900);--warning-default-color:var(--yellow-500);--warning-neutral-color:var(--yellow-300);--info-strong-color:var(--blue-900);--info-default-color:var(--blue-500);--info-neutral-color:var(--blue-300);--background-color:var(--gray-100);--text-color:var(--gray-900)}[data-theme=combination2]{--primary-strong-color:var(--purple-900);--primary-default-color:var(--purple-500);--primary-neutral-color:var(--purple-300);--secondary-strong-color:var(--green-900);--secondary-default-color:var(--green-500);--secondary-neutral-color:var(--green-300);--success-strong-color:var(--green-900);--success-default-color:var(--green-500);--success-neutral-color:var(--green-300);--danger-strong-color:var(--red-900);--danger-default-color:var(--red-500);--danger-neutral-color:var(--red-300);--warning-strong-color:var(--yellow-900);--warning-default-color:var(--yellow-500);--warning-neutral-color:var(--yellow-300);--info-strong-color:var(--green-900);--info-default-color:var(--green-500);--info-neutral-color:var(--green-300);--background-color:var(--gray-900);--text-color:var(--gray-100)}[data-theme=combination3]{--primary-strong-color:var(--yellow-900);--primary-default-color:var(--yellow-500);--primary-neutral-color:var(--yellow-300);--secondary-strong-color:var(--purple-900);--secondary-default-color:var(--purple-500);--secondary-neutral-color:var(--purple-300);--success-strong-color:var(--green-900);--success-default-color:var(--green-500);--success-neutral-color:var(--green-300);--danger-strong-color:var(--red-900);--danger-default-color:var(--red-500);--danger-neutral-color:var(--red-300);--warning-strong-color:var(--yellow-900);--warning-default-color:var(--yellow-500);--warning-neutral-color:var(--yellow-300);--info-strong-color:var(--yellow-900);--info-default-color:var(--yellow-500);--info-neutral-color:var(--yellow-300);--background-color:var(--gray-100);--text-color:var(--gray-900)}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-bold:700;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;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");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.\!mx-2{margin-inline:calc(var(--spacing)*2)!important}.\!my-1{margin-block:calc(var(--spacing)*1)!important}.\!my-4{margin-block:calc(var(--spacing)*4)!important}.mt-1{margin-top:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.flex{display:flex}.h-auto{height:auto}.w-6{width:calc(var(--spacing)*6)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.\!text-xl{font-size:var(--text-xl)!important;line-height:var(--tw-leading,var(--text-xl--line-height))!important}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\!font-bold{--tw-font-weight:var(--font-weight-bold)!important;font-weight:var(--font-weight-bold)!important}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-\[var\(--purple-500\)\]{color:var(--purple-500)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;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");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
|
|
1
|
+
/*! tailwindcss v4.1.14 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-outline-style:solid;--tw-font-weight:initial}}}*,:before,:after{box-sizing:border-box;font-family:Nunito Sans,Helvetica Neue,Helvetica,Arial,sans-serif}ol,ul{list-style:none}a{color:inherit;text-decoration:none}img,picture,video,canvas,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit;background:0 0;border:none;outline:none}html,body,#root{height:100%}body{-webkit-font-smoothing:antialiased;line-height:1.5}.hans-button{cursor:pointer;align-items:center;gap:calc(var(--spacing)*1);border-radius:3.40282e38px;display:flex}.hans-button:disabled,.hans-button[disabled]{cursor:not-allowed;opacity:.5}.hans-button:disabled>*{pointer-events:none}.hans-button-small{padding-inline:calc(var(--spacing)*4);padding-block:calc(var(--spacing)*1)}.hans-button-medium{padding-inline:calc(var(--spacing)*5);padding-block:calc(var(--spacing)*2)}.hans-button-large{padding-inline:calc(var(--spacing)*6);padding-block:calc(var(--spacing)*3)}.hans-button-primary.hans-button-strong{background-color:var(--primary-strong-color);color:var(--primary-neutral-color)}.hans-button-primary.hans-button-default{background-color:var(--primary-default-color);color:var(--white)}.hans-button-primary.hans-button-neutral{background-color:var(--primary-neutral-color);color:var(--primary-strong-color)}.hans-button-primary.hans-button-outline{border-color:var(--primary-default-color);color:var(--primary-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-primary.hans-button-transparent{color:var(--primary-default-color);background-color:#0000}.hans-button-secondary.hans-button-strong{background-color:var(--secondary-strong-color);color:var(--secondary-neutral-color)}.hans-button-secondary.hans-button-default{background-color:var(--secondary-default-color);color:var(--white)}.hans-button-secondary.hans-button-neutral{background-color:var(--secondary-neutral-color);color:var(--secondary-strong-color)}.hans-button-secondary.hans-button-outline{border-color:var(--secondary-default-color);color:var(--secondary-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-secondary.hans-button-transparent{color:var(--secondary-default-color);background-color:#0000}.hans-button-success.hans-button-strong{background-color:var(--success-strong-color);color:var(--success-neutral-color)}.hans-button-success.hans-button-default{background-color:var(--success-default-color);color:var(--white)}.hans-button-success.hans-button-neutral{background-color:var(--success-neutral-color);color:var(--success-strong-color)}.hans-button-success.hans-button-outline{border-color:var(--success-default-color);color:var(--success-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-success.hans-button-transparent{color:var(--success-default-color);background-color:#0000}.hans-button-danger.hans-button-strong{background-color:var(--danger-strong-color);color:var(--danger-neutral-color)}.hans-button-danger.hans-button-default{background-color:var(--danger-default-color);color:var(--white)}.hans-button-danger.hans-button-neutral{background-color:var(--danger-neutral-color);color:var(--danger-strong-color)}.hans-button-danger.hans-button-outline{border-color:var(--danger-default-color);color:var(--danger-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-danger.hans-button-transparent{color:var(--danger-default-color);background-color:#0000}.hans-button-warning.hans-button-strong{background-color:var(--warning-strong-color);color:var(--warning-neutral-color)}.hans-button-warning.hans-button-default{background-color:var(--warning-default-color);color:var(--white)}.hans-button-warning.hans-button-neutral{background-color:var(--warning-neutral-color);color:var(--warning-strong-color)}.hans-button-warning.hans-button-outline{border-color:var(--warning-default-color);color:var(--warning-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-warning.hans-button-transparent{color:var(--warning-default-color);background-color:#0000}.hans-button-info.hans-button-strong{background-color:var(--info-strong-color);color:var(--info-neutral-color)}.hans-button-info.hans-button-default{background-color:var(--info-default-color);color:var(--white)}.hans-button-info.hans-button-neutral{background-color:var(--info-neutral-color);color:var(--info-strong-color)}.hans-button-info.hans-button-outline{border-color:var(--info-default-color);color:var(--info-strong-color);outline-style:var(--tw-outline-style);background-color:#0000;outline-width:1px}.hans-button-info.hans-button-transparent{color:var(--info-default-color);background-color:#0000}.hans-icon{justify-content:center;align-items:center;display:inline-flex}.hans-icon-small{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.hans-icon-medium{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.hans-icon-large{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.hans-icon-loading{height:calc(var(--spacing)*4);width:calc(var(--spacing)*4);animation:var(--animate-pulse);background-color:var(--gray-300);border-radius:3.40282e38px}:root{--purple-900:#2e1a73;--purple-500:#8257e5;--purple-300:#bba7ff;--blue-900:#1b3c8e;--blue-500:#3d8bff;--blue-300:#a8c9ff;--green-900:#027a43;--green-500:#04d361;--green-300:#a3f3c4;--red-900:#8b1e34;--red-500:#e83f5b;--red-300:#ffa3b1;--yellow-900:#ff8c42;--yellow-500:#f7b500;--yellow-300:#ffe9a3;--gray-900:#0e0e10;--gray-700:#2d2d33;--gray-500:#7a7a85;--gray-300:#c7c7d1;--gray-100:#f2f2f5;--black:#000;--white:#fff;--primary-strong-color:var(--purple-900);--primary-default-color:var(--purple-500);--primary-neutral-color:var(--purple-300);--secondary-strong-color:var(--blue-900);--secondary-default-color:var(--blue-500);--secondary-neutral-color:var(--blue-300);--success-strong-color:var(--green-900);--success-default-color:var(--green-500);--success-neutral-color:var(--green-300);--danger-strong-color:var(--red-900);--danger-default-color:var(--red-500);--danger-neutral-color:var(--red-300);--warning-strong-color:var(--yellow-900);--warning-default-color:var(--yellow-500);--warning-neutral-color:var(--yellow-300);--info-strong-color:var(--blue-900);--info-default-color:var(--blue-500);--info-neutral-color:var(--blue-300);--background-color:var(--gray-100);--text-color:var(--gray-900)}[data-theme=combination1]{--primary-strong-color:var(--purple-900);--primary-default-color:var(--purple-500);--primary-neutral-color:var(--purple-300);--secondary-strong-color:var(--blue-900);--secondary-default-color:var(--blue-500);--secondary-neutral-color:var(--blue-300);--success-strong-color:var(--green-900);--success-default-color:var(--green-500);--success-neutral-color:var(--green-300);--danger-strong-color:var(--red-900);--danger-default-color:var(--red-500);--danger-neutral-color:var(--red-300);--warning-strong-color:var(--yellow-900);--warning-default-color:var(--yellow-500);--warning-neutral-color:var(--yellow-300);--info-strong-color:var(--blue-900);--info-default-color:var(--blue-500);--info-neutral-color:var(--blue-300);--background-color:var(--gray-100);--text-color:var(--gray-900)}[data-theme=combination2]{--primary-strong-color:var(--green-900);--primary-default-color:var(--green-500);--primary-neutral-color:var(--green-300);--secondary-strong-color:var(--purple-900);--secondary-default-color:var(--purple-500);--secondary-neutral-color:var(--purple-300);--success-strong-color:var(--green-900);--success-default-color:var(--green-500);--success-neutral-color:var(--green-300);--danger-strong-color:var(--red-900);--danger-default-color:var(--red-500);--danger-neutral-color:var(--red-300);--warning-strong-color:var(--yellow-900);--warning-default-color:var(--yellow-500);--warning-neutral-color:var(--yellow-300);--info-strong-color:var(--green-900);--info-default-color:var(--green-500);--info-neutral-color:var(--green-300);--background-color:var(--gray-900);--text-color:var(--gray-100)}[data-theme=combination3]{--primary-strong-color:var(--yellow-900);--primary-default-color:var(--yellow-500);--primary-neutral-color:var(--yellow-300);--secondary-strong-color:var(--purple-900);--secondary-default-color:var(--purple-500);--secondary-neutral-color:var(--purple-300);--success-strong-color:var(--green-900);--success-default-color:var(--green-500);--success-neutral-color:var(--green-300);--danger-strong-color:var(--red-900);--danger-default-color:var(--red-500);--danger-neutral-color:var(--red-300);--warning-strong-color:var(--yellow-900);--warning-default-color:var(--yellow-500);--warning-neutral-color:var(--yellow-300);--info-strong-color:var(--yellow-900);--info-default-color:var(--yellow-500);--info-neutral-color:var(--yellow-300);--background-color:var(--gray-100);--text-color:var(--gray-900)}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-bold:700;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;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");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.\!mx-2{margin-inline:calc(var(--spacing)*2)!important}.\!my-1{margin-block:calc(var(--spacing)*1)!important}.\!my-4{margin-block:calc(var(--spacing)*4)!important}.mt-1{margin-top:calc(var(--spacing)*1)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.flex{display:flex}.h-auto{height:auto}.w-6{width:calc(var(--spacing)*6)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:calc(var(--spacing)*2)}.gap-4{gap:calc(var(--spacing)*4)}.\!text-xl{font-size:var(--text-xl)!important;line-height:var(--tw-leading,var(--text-xl--line-height))!important}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\!font-bold{--tw-font-weight:var(--font-weight-bold)!important;font-weight:var(--font-weight-bold)!important}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-\[var\(--primary-default-color\)\]{color:var(--primary-default-color)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}}*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;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");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@keyframes pulse{50%{opacity:.5}}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { default as default_2 } from 'react';
|
|
1
|
+
import { default as default_2 } from '../../../../node_modules/react';
|
|
2
|
+
import { default as default_3 } from '../../../node_modules/react';
|
|
2
3
|
import { JSX } from 'react/jsx-runtime';
|
|
3
4
|
|
|
4
5
|
export declare const Button: default_2.MemoExoticComponent<(props: ButtonProps) => JSX.Element>;
|
|
@@ -18,9 +19,9 @@ declare type Color = 'primary' | 'secondary' | 'success' | 'danger' | 'warning'
|
|
|
18
19
|
|
|
19
20
|
export declare const DynamicIconImports: Record<string, () => Promise<IconLibrary>>;
|
|
20
21
|
|
|
21
|
-
export declare const Icon:
|
|
22
|
+
export declare const Icon: default_3.FC<IconProps>;
|
|
22
23
|
|
|
23
|
-
export declare type IconLibrary = Record<string,
|
|
24
|
+
export declare type IconLibrary = Record<string, default_3.ComponentType<default_3.SVGProps<SVGSVGElement>>>;
|
|
24
25
|
|
|
25
26
|
export declare interface IconProps {
|
|
26
27
|
name?: string;
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "hans-ui-design-lib",
|
|
3
3
|
"description": "UI Design System Base Lib",
|
|
4
4
|
"author": "Victor Hanszman",
|
|
5
|
-
"version": "0.0.
|
|
5
|
+
"version": "0.0.36",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"license": "MIT",
|
|
8
8
|
"main": "dist/index.cjs.js",
|
|
@@ -31,9 +31,11 @@
|
|
|
31
31
|
"start": "vite",
|
|
32
32
|
"preview": "vite preview",
|
|
33
33
|
"storybook": "storybook dev -p 6006",
|
|
34
|
-
"build-storybook": "storybook build",
|
|
35
|
-
"build": "vite build && npm run copy:assets",
|
|
36
34
|
"copy:assets": "cpx \"src/assets/**/*\" dist/assets",
|
|
35
|
+
"build": "vite build && npm run copy:assets",
|
|
36
|
+
"build-storybook": "storybook build",
|
|
37
|
+
"build:mf": "vite --config vite-mf.config.ts build",
|
|
38
|
+
"publish:mf": "npm run build:mf && npx cpx \"cdn/**\" ../some-deploy-folder-or-script || true",
|
|
37
39
|
"publish:patch": "npm version patch --no-git-tag-version && npm publish",
|
|
38
40
|
"publish:minor": "npm version minor --no-git-tag-version && npm publish",
|
|
39
41
|
"publish:major": "npm version major --no-git-tag-version && npm publish",
|
|
@@ -59,14 +61,15 @@
|
|
|
59
61
|
"devDependencies": {
|
|
60
62
|
"@chromatic-com/storybook": "^4.1.1",
|
|
61
63
|
"@eslint/js": "^9.36.0",
|
|
64
|
+
"@originjs/vite-plugin-federation": "^1.4.1",
|
|
62
65
|
"@storybook/addon-a11y": "^9.1.8",
|
|
63
66
|
"@storybook/addon-docs": "^9.1.8",
|
|
64
67
|
"@storybook/react-vite": "^9.1.8",
|
|
65
68
|
"@tailwindcss/vite": "^4.1.14",
|
|
66
69
|
"@testing-library/jest-dom": "^6.8.0",
|
|
67
70
|
"@testing-library/react": "^16.3.0",
|
|
68
|
-
"@types/react": "^19.
|
|
69
|
-
"@types/react-dom": "^19.
|
|
71
|
+
"@types/react": "^19.2.2",
|
|
72
|
+
"@types/react-dom": "^19.2.2",
|
|
70
73
|
"@types/testing-library__jest-dom": "^5.14.9",
|
|
71
74
|
"@typescript-eslint/eslint-plugin": "^8.44.1",
|
|
72
75
|
"@typescript-eslint/parser": "^8.44.1",
|
|
@@ -87,6 +90,7 @@
|
|
|
87
90
|
"playwright": "^1.55.1",
|
|
88
91
|
"prettier": "^3.6.2",
|
|
89
92
|
"react-icons": "^5.5.0",
|
|
93
|
+
"react-to-webcomponent": "^2.0.1",
|
|
90
94
|
"sass": "^1.93.2",
|
|
91
95
|
"storybook": "^9.1.8",
|
|
92
96
|
"tailwindcss": "^4.1.14",
|