@evinvest/uikit 0.23.0 → 0.24.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 +4 -0
- package/dist/generated/button.js +4 -2
- package/dist/generated/button.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -388,6 +388,10 @@ landing (TS) sources — e.g. `Badge` keeps cabinet's `success` variant, and
|
|
|
388
388
|
`Button` keeps landing's square icon shape at every size, as the separate `icon`
|
|
389
389
|
boolean it always was in Rust (see [docs/spec/variants.md](../../docs/spec/variants.md)).
|
|
390
390
|
|
|
391
|
+
`size="touch"` is the 44 px pointer-target floor (WCAG 2.5.5) for touch-first
|
|
392
|
+
screens: `min-h-11` with `lg`'s padding, and a 44 × 44 square with `icon`. It is
|
|
393
|
+
a button step only — `Input` and `SelectTrigger` already clear it at `lg`.
|
|
394
|
+
|
|
391
395
|
## Limitations
|
|
392
396
|
|
|
393
397
|
Reproducing everything dep-light means some behaviour is intentionally reduced,
|
package/dist/generated/button.js
CHANGED
|
@@ -12,14 +12,16 @@ const buttonSizeClasses = {
|
|
|
12
12
|
"sm": "h-8 gap-1.5 px-3 has-[>svg]:px-2.5",
|
|
13
13
|
"md": "h-9 px-4 py-[var(--control-py)] has-[>svg]:px-3",
|
|
14
14
|
"lg": "h-10 px-6 has-[>svg]:px-4",
|
|
15
|
-
"xl": "px-[var(--control-px)] py-[var(--control-py)] text-[length:var(--control-text)]"
|
|
15
|
+
"xl": "px-[var(--control-px)] py-[var(--control-py)] text-[length:var(--control-text)]",
|
|
16
|
+
"touch": "min-h-11 px-6 has-[>svg]:px-4"
|
|
16
17
|
};
|
|
17
18
|
const buttonIconSizeClasses = {
|
|
18
19
|
"xs": "h-7 aspect-square px-0",
|
|
19
20
|
"sm": "h-8 aspect-square px-0",
|
|
20
21
|
"md": "h-9 aspect-square px-0",
|
|
21
22
|
"lg": "h-10 aspect-square px-0",
|
|
22
|
-
"xl": "aspect-square p-[var(--control-py)]"
|
|
23
|
+
"xl": "aspect-square p-[var(--control-py)]",
|
|
24
|
+
"touch": "size-11 px-0"
|
|
23
25
|
};
|
|
24
26
|
export {
|
|
25
27
|
BUTTON_BASE,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/generated/button.ts"],"sourcesContent":["// AUTO-GENERATED by `nix run .#gen` — do not edit.\n\nexport const BUTTON_BASE = \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-[var(--control-radius)] text-sm font-medium transition-all cursor-pointer disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-accent-error/20 aria-invalid:border-accent-error\";\n\nexport const buttonVariantClasses = {\n \"primary\": \"bg-primary text-on-primary hover:bg-primary/90 focus-visible:ring-0 focus-visible:outline-solid focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring\",\n \"secondary\": \"bg-secondary text-on-secondary hover:bg-secondary/80 focus-visible:ring-0 focus-visible:outline-solid focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring\",\n \"outline\": \"border border-input bg-transparent shadow-xs hover:bg-hover hover:text-ink\",\n \"ghost\": \"hover:bg-hover hover:text-ink\",\n \"destructive\": \"bg-accent-error text-on-accent-error hover:bg-accent-error/90 focus-visible:ring-accent-error/20 focus-visible:ring-0 focus-visible:outline-solid focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring\",\n \"link\": \"text-primary-ink underline-offset-4 hover:underline\",\n} as const;\nexport type ButtonVariant = keyof typeof buttonVariantClasses;\n\nexport const buttonSizeClasses = {\n \"xs\": \"h-7 gap-1 px-2 text-xs has-[>svg]:px-1.5\",\n \"sm\": \"h-8 gap-1.5 px-3 has-[>svg]:px-2.5\",\n \"md\": \"h-9 px-4 py-[var(--control-py)] has-[>svg]:px-3\",\n \"lg\": \"h-10 px-6 has-[>svg]:px-4\",\n \"xl\": \"px-[var(--control-px)] py-[var(--control-py)] text-[length:var(--control-text)]\",\n} as const;\nexport type ButtonSize = keyof typeof buttonSizeClasses;\n\nexport const buttonIconSizeClasses = {\n \"xs\": \"h-7 aspect-square px-0\",\n \"sm\": \"h-8 aspect-square px-0\",\n \"md\": \"h-9 aspect-square px-0\",\n \"lg\": \"h-10 aspect-square px-0\",\n \"xl\": \"aspect-square p-[var(--control-py)]\",\n} as const;\nexport type ButtonIconSize = keyof typeof buttonIconSizeClasses;\n"],"mappings":"AAEO,MAAM,cAAc;AAEpB,MAAM,uBAAuB;AAAA,EAClC,WAAW;AAAA,EACX,aAAa;AAAA,EACb,WAAW;AAAA,EACX,SAAS;AAAA,EACT,eAAe;AAAA,EACf,QAAQ;AACV;AAGO,MAAM,oBAAoB;AAAA,EAC/B,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;
|
|
1
|
+
{"version":3,"sources":["../../src/generated/button.ts"],"sourcesContent":["// AUTO-GENERATED by `nix run .#gen` — do not edit.\n\nexport const BUTTON_BASE = \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-[var(--control-radius)] text-sm font-medium transition-all cursor-pointer disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-accent-error/20 aria-invalid:border-accent-error\";\n\nexport const buttonVariantClasses = {\n \"primary\": \"bg-primary text-on-primary hover:bg-primary/90 focus-visible:ring-0 focus-visible:outline-solid focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring\",\n \"secondary\": \"bg-secondary text-on-secondary hover:bg-secondary/80 focus-visible:ring-0 focus-visible:outline-solid focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring\",\n \"outline\": \"border border-input bg-transparent shadow-xs hover:bg-hover hover:text-ink\",\n \"ghost\": \"hover:bg-hover hover:text-ink\",\n \"destructive\": \"bg-accent-error text-on-accent-error hover:bg-accent-error/90 focus-visible:ring-accent-error/20 focus-visible:ring-0 focus-visible:outline-solid focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-ring\",\n \"link\": \"text-primary-ink underline-offset-4 hover:underline\",\n} as const;\nexport type ButtonVariant = keyof typeof buttonVariantClasses;\n\nexport const buttonSizeClasses = {\n \"xs\": \"h-7 gap-1 px-2 text-xs has-[>svg]:px-1.5\",\n \"sm\": \"h-8 gap-1.5 px-3 has-[>svg]:px-2.5\",\n \"md\": \"h-9 px-4 py-[var(--control-py)] has-[>svg]:px-3\",\n \"lg\": \"h-10 px-6 has-[>svg]:px-4\",\n \"xl\": \"px-[var(--control-px)] py-[var(--control-py)] text-[length:var(--control-text)]\",\n \"touch\": \"min-h-11 px-6 has-[>svg]:px-4\",\n} as const;\nexport type ButtonSize = keyof typeof buttonSizeClasses;\n\nexport const buttonIconSizeClasses = {\n \"xs\": \"h-7 aspect-square px-0\",\n \"sm\": \"h-8 aspect-square px-0\",\n \"md\": \"h-9 aspect-square px-0\",\n \"lg\": \"h-10 aspect-square px-0\",\n \"xl\": \"aspect-square p-[var(--control-py)]\",\n \"touch\": \"size-11 px-0\",\n} as const;\nexport type ButtonIconSize = keyof typeof buttonIconSizeClasses;\n"],"mappings":"AAEO,MAAM,cAAc;AAEpB,MAAM,uBAAuB;AAAA,EAClC,WAAW;AAAA,EACX,aAAa;AAAA,EACb,WAAW;AAAA,EACX,SAAS;AAAA,EACT,eAAe;AAAA,EACf,QAAQ;AACV;AAGO,MAAM,oBAAoB;AAAA,EAC/B,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,SAAS;AACX;AAGO,MAAM,wBAAwB;AAAA,EACnC,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,MAAM;AAAA,EACN,SAAS;AACX;","names":[]}
|
package/dist/index.d.ts
CHANGED
|
@@ -287,6 +287,7 @@ declare const buttonSizeClasses: {
|
|
|
287
287
|
readonly md: "h-9 px-4 py-[var(--control-py)] has-[>svg]:px-3";
|
|
288
288
|
readonly lg: "h-10 px-6 has-[>svg]:px-4";
|
|
289
289
|
readonly xl: "px-[var(--control-px)] py-[var(--control-py)] text-[length:var(--control-text)]";
|
|
290
|
+
readonly touch: "min-h-11 px-6 has-[>svg]:px-4";
|
|
290
291
|
};
|
|
291
292
|
type ButtonSize = keyof typeof buttonSizeClasses;
|
|
292
293
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@evinvest/uikit",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.24.0",
|
|
4
4
|
"description": "Dep-light React UI kit: shadcn-semantics components with zero @radix-ui / cva, mirroring the ev_lib::uikit Rust feature. Ships the shared design tokens.",
|
|
5
5
|
"license": "BlueOak-1.0.0",
|
|
6
6
|
"publishConfig": {
|