@jirawatpyk/aura-tokens 4.13.0 → 4.15.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/aura-tailwind.css +1 -1
- package/aura.css +3 -1
- package/components/aura.bundle.js +116 -16
- package/components/aura.components.css +48 -8
- package/components/index.d.ts +20 -1
- package/figma-variables.csv +2 -0
- package/package.json +1 -1
- package/tokens.json +7 -3
package/aura-tailwind.css
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* AURA v4.
|
|
1
|
+
/* AURA v4.15.0 — Tailwind v4 theme. GENERATED by scripts/build-tokens.js from tokens.json. Do not edit by hand.
|
|
2
2
|
* @import "tailwindcss";
|
|
3
3
|
* @import "@jirawatpyk/aura-tokens/tailwind.css";
|
|
4
4
|
* Gives bg-bg-surface, text-fg-primary, border-border-strong, p-aura-6, rounded-aura-xl, shadow-aura-overlay,
|
package/aura.css
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* AURA v4.
|
|
1
|
+
/* AURA v4.15.0 — GENERATED by scripts/build-tokens.js from tokens.json. Do not edit by hand. */
|
|
2
2
|
/* Fonts: load aura-fonts.css (or the <link> tags in README) separately, so a blocked Google Fonts never breaks this file. */
|
|
3
3
|
|
|
4
4
|
:root, [data-theme="light"] {
|
|
@@ -310,6 +310,7 @@
|
|
|
310
310
|
--aura-dialog-md: 560px;
|
|
311
311
|
--aura-dialog-lg: 720px;
|
|
312
312
|
--aura-sidenav-width: 240px;
|
|
313
|
+
--aura-sidenav-rail-width: 64px;
|
|
313
314
|
--aura-tooltip-max: 240px;
|
|
314
315
|
--aura-drawer-sm: 360px;
|
|
315
316
|
--aura-drawer-md: 480px;
|
|
@@ -320,6 +321,7 @@
|
|
|
320
321
|
--aura-popover-max-height: 320px;
|
|
321
322
|
--aura-input-font-size: 14px;
|
|
322
323
|
--aura-touch-target: 44px;
|
|
324
|
+
--aura-table-row-height: 48px;
|
|
323
325
|
--aura-bp-sm: 640px;
|
|
324
326
|
--aura-bp-md: 768px;
|
|
325
327
|
--aura-bp-lg: 1024px;
|
|
@@ -123,6 +123,7 @@ window.Aura = (() => {
|
|
|
123
123
|
useAuraLocale: () => useAuraLocale,
|
|
124
124
|
useBreakpoint: () => useBreakpoint,
|
|
125
125
|
useColorScheme: () => useColorScheme,
|
|
126
|
+
useDensity: () => useDensity,
|
|
126
127
|
useFormatDate: () => useFormatDate,
|
|
127
128
|
useResponsive: () => useResponsive
|
|
128
129
|
});
|
|
@@ -218,7 +219,7 @@ window.Aura = (() => {
|
|
|
218
219
|
|
|
219
220
|
// src/Icon.tsx
|
|
220
221
|
var h = React2.createElement;
|
|
221
|
-
var ICONS = { "check": [["path", { "d": "M20 6 9 17l-5-5" }]], "x": [["path", { "d": "M18 6 6 18" }], ["path", { "d": "m6 6 12 12" }]], "plus": [["path", { "d": "M5 12h14" }], ["path", { "d": "M12 5v14" }]], "minus": [["path", { "d": "M5 12h14" }]], "search": [["path", { "d": "m21 21-4.34-4.34" }], ["circle", { "cx": "11", "cy": "11", "r": "8" }]], "chevron-down": [["path", { "d": "m6 9 6 6 6-6" }]], "chevron-up": [["path", { "d": "m18 15-6-6-6 6" }]], "chevron-left": [["path", { "d": "m15 18-6-6 6-6" }]], "chevron-right": [["path", { "d": "m9 18 6-6-6-6" }]], "arrow-right": [["path", { "d": "M5 12h14" }], ["path", { "d": "m12 5 7 7-7 7" }]], "arrow-up-right": [["path", { "d": "M7 7h10v10" }], ["path", { "d": "M7 17 17 7" }]], "arrow-up-down": [["path", { "d": "m21 16-4 4-4-4" }], ["path", { "d": "M17 20V4" }], ["path", { "d": "m3 8 4-4 4 4" }], ["path", { "d": "M7 4v16" }]], "loader-circle": [["path", { "d": "M21 12a9 9 0 1 1-6.219-8.56" }]], "circle-alert": [["circle", { "cx": "12", "cy": "12", "r": "10" }], ["line", { "x1": "12", "x2": "12", "y1": "8", "y2": "12" }], ["line", { "x1": "12", "x2": "12.01", "y1": "16", "y2": "16" }]], "circle-check": [["circle", { "cx": "12", "cy": "12", "r": "10" }], ["path", { "d": "m16 9-5.5 5.5L8 12" }]], "info": [["circle", { "cx": "12", "cy": "12", "r": "10" }], ["path", { "d": "M12 16v-4" }], ["path", { "d": "M12 8h.01" }]], "triangle-alert": [["path", { "d": "m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3" }], ["path", { "d": "M12 9v4" }], ["path", { "d": "M12 17h.01" }]], "settings": [["path", { "d": "M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915" }], ["circle", { "cx": "12", "cy": "12", "r": "3" }]], "user": [["path", { "d": "M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2" }], ["circle", { "cx": "12", "cy": "7", "r": "4" }]], "users": [["path", { "d": "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2" }], ["path", { "d": "M16 3.128a4 4 0 0 1 0 7.744" }], ["path", { "d": "M22 21v-2a4 4 0 0 0-3-3.87" }], ["circle", { "cx": "9", "cy": "7", "r": "4" }]], "filter": [["path", { "d": "M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z" }]], "ellipsis": [["circle", { "cx": "12", "cy": "12", "r": "1" }], ["circle", { "cx": "19", "cy": "12", "r": "1" }], ["circle", { "cx": "5", "cy": "12", "r": "1" }]], "external-link": [["path", { "d": "M15 3h6v6" }], ["path", { "d": "M10 14 21 3" }], ["path", { "d": "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6" }]], "copy": [["rect", { "width": "14", "height": "14", "x": "8", "y": "8", "rx": "2", "ry": "2" }], ["path", { "d": "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2" }]], "trash-2": [["path", { "d": "M10 11v6" }], ["path", { "d": "M14 11v6" }], ["path", { "d": "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6" }], ["path", { "d": "M3 6h18" }], ["path", { "d": "M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2" }]], "pencil": [["path", { "d": "M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z" }], ["path", { "d": "m15 5 4 4" }]], "download": [["path", { "d": "M12 15V3" }], ["path", { "d": "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }], ["path", { "d": "m7 10 5 5 5-5" }]], "upload": [["path", { "d": "M12 3v12" }], ["path", { "d": "m17 8-5-5-5 5" }], ["path", { "d": "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }]], "calendar": [["path", { "d": "M8 2v3" }], ["path", { "d": "M16 2v3" }], ["rect", { "x": "3", "y": "3", "width": "18", "height": "18", "rx": "2" }], ["path", { "d": "M3 9h18" }]], "bell": [["path", { "d": "M10.268 21a2 2 0 0 0 3.464 0" }], ["path", { "d": "M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326" }]], "menu": [["path", { "d": "M4 5h16" }], ["path", { "d": "M4 12h16" }], ["path", { "d": "M4 19h16" }]], "eye": [["path", { "d": "M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0" }], ["circle", { "cx": "12", "cy": "12", "r": "3" }]], "log-out": [["path", { "d": "m16 17 5-5-5-5" }], ["path", { "d": "M21 12H9" }], ["path", { "d": "M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4" }]], "circle": [["circle", { "cx": "12", "cy": "12", "r": "10" }]], "circle-dot-dashed": [["path", { "d": "M10.1 2.18a9.93 9.93 0 0 1 3.8 0" }], ["path", { "d": "M17.6 3.71a9.95 9.95 0 0 1 2.69 2.7" }], ["path", { "d": "M21.82 10.1a9.93 9.93 0 0 1 0 3.8" }], ["path", { "d": "M20.29 17.6a9.95 9.95 0 0 1-2.7 2.69" }], ["path", { "d": "M13.9 21.82a9.94 9.94 0 0 1-3.8 0" }], ["path", { "d": "M6.4 20.29a9.95 9.95 0 0 1-2.69-2.7" }], ["path", { "d": "M2.18 13.9a9.93 9.93 0 0 1 0-3.8" }], ["path", { "d": "M3.71 6.4a9.95 9.95 0 0 1 2.7-2.69" }], ["circle", { "cx": "12", "cy": "12", "r": "1" }]], "ban": [["circle", { "cx": "12", "cy": "12", "r": "10" }], ["path", { "d": "M4.929 4.929 19.07 19.071" }]], "arrow-up": [["path", { "d": "m5 12 7-7 7 7" }], ["path", { "d": "M12 19V5" }]], "arrow-down": [["path", { "d": "M12 5v14" }], ["path", { "d": "m19 12-7 7-7-7" }]], "inbox": [["polyline", { "points": "22 12 16 12 14 15 10 15 8 12 2 12" }], ["path", { "d": "M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z" }]], "pin": [["path", { "d": "M12 17v5" }], ["path", { "d": "M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z" }]], "pin-off": [["path", { "d": "M12 17v5" }], ["path", { "d": "M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89" }], ["path", { "d": "m2 2 20 20" }], ["path", { "d": "M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11" }]], "eye-off": [["path", { "d": "M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49" }], ["path", { "d": "M14.084 14.158a3 3 0 0 1-4.242-4.242" }], ["path", { "d": "M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143" }], ["path", { "d": "m2 2 20 20" }]], "columns-3": [["rect", { "width": "18", "height": "18", "x": "3", "y": "3", "rx": "2" }], ["path", { "d": "M9 3v18" }], ["path", { "d": "M15 3v18" }]], "arrow-left": [["path", { "d": "m12 19-7-7 7-7" }], ["path", { "d": "M19 12H5" }]], "rotate-ccw": [["path", { "d": "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8" }], ["path", { "d": "M3 3v5h5" }]], "house": [["path", { "d": "M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8" }], ["path", { "d": "M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" }]], "layout-dashboard": [["rect", { "width": "7", "height": "9", "x": "3", "y": "3", "rx": "1" }], ["rect", { "width": "7", "height": "5", "x": "14", "y": "3", "rx": "1" }], ["rect", { "width": "7", "height": "9", "x": "14", "y": "12", "rx": "1" }], ["rect", { "width": "7", "height": "5", "x": "3", "y": "16", "rx": "1" }]], "folder": [["path", { "d": "M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z" }]], "chart-column": [["path", { "d": "M3 3v16a2 2 0 0 0 2 2h16" }], ["path", { "d": "M18 17V9" }], ["path", { "d": "M13 17V5" }], ["path", { "d": "M8 17v-3" }]], "file-text": [["path", { "d": "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z" }], ["path", { "d": "M14 2v5a1 1 0 0 0 1 1h5" }], ["path", { "d": "M10 9H8" }], ["path", { "d": "M16 13H8" }], ["path", { "d": "M16 17H8" }]], "mail": [["path", { "d": "m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7" }], ["rect", { "x": "2", "y": "4", "width": "20", "height": "16", "rx": "2" }]], "lock": [["rect", { "width": "18", "height": "11", "x": "3", "y": "11", "rx": "2", "ry": "2" }], ["path", { "d": "M7 11V7a5 5 0 0 1 10 0v4" }]], "clock": [["circle", { "cx": "12", "cy": "12", "r": "10" }], ["path", { "d": "M12 6v6l4 2" }]], "trending-up": [["path", { "d": "M16 7h6v6" }], ["path", { "d": "m22 7-8.5 8.5-5-5L2 17" }]], "trending-down": [["path", { "d": "M16 17h6v-6" }], ["path", { "d": "m22 17-8.5-8.5-5 5L2 7" }]], "image": [["rect", { "width": "18", "height": "18", "x": "3", "y": "3", "rx": "2", "ry": "2" }], ["circle", { "cx": "9", "cy": "9", "r": "2" }], ["path", { "d": "m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21" }]], "paperclip": [["path", { "d": "m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551" }]], "cloud-upload": [["path", { "d": "M12 13v8" }], ["path", { "d": "M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242" }], ["path", { "d": "m8 17 4-4 4 4" }]], "file": [["path", { "d": "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z" }], ["path", { "d": "M14 2v5a1 1 0 0 0 1 1h5" }]], "sun": [["circle", { "cx": "12", "cy": "12", "r": "4" }], ["path", { "d": "M12 2v2" }], ["path", { "d": "M12 20v2" }], ["path", { "d": "m4.93 4.93 1.41 1.41" }], ["path", { "d": "m17.66 17.66 1.41 1.41" }], ["path", { "d": "M2 12h2" }], ["path", { "d": "M20 12h2" }], ["path", { "d": "m6.34 17.66-1.41 1.41" }], ["path", { "d": "m19.07 4.93-1.41 1.41" }]], "moon": [["path", { "d": "M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401" }]], "monitor": [["rect", { "width": "20", "height": "14", "x": "2", "y": "3", "rx": "2" }], ["line", { "x1": "8", "x2": "16", "y1": "21", "y2": "21" }], ["line", { "x1": "12", "x2": "12", "y1": "17", "y2": "21" }]] };
|
|
222
|
+
var ICONS = { "check": [["path", { "d": "M20 6 9 17l-5-5" }]], "x": [["path", { "d": "M18 6 6 18" }], ["path", { "d": "m6 6 12 12" }]], "plus": [["path", { "d": "M5 12h14" }], ["path", { "d": "M12 5v14" }]], "minus": [["path", { "d": "M5 12h14" }]], "search": [["path", { "d": "m21 21-4.34-4.34" }], ["circle", { "cx": "11", "cy": "11", "r": "8" }]], "chevron-down": [["path", { "d": "m6 9 6 6 6-6" }]], "chevron-up": [["path", { "d": "m18 15-6-6-6 6" }]], "chevron-left": [["path", { "d": "m15 18-6-6 6-6" }]], "chevron-right": [["path", { "d": "m9 18 6-6-6-6" }]], "arrow-right": [["path", { "d": "M5 12h14" }], ["path", { "d": "m12 5 7 7-7 7" }]], "arrow-up-right": [["path", { "d": "M7 7h10v10" }], ["path", { "d": "M7 17 17 7" }]], "arrow-up-down": [["path", { "d": "m21 16-4 4-4-4" }], ["path", { "d": "M17 20V4" }], ["path", { "d": "m3 8 4-4 4 4" }], ["path", { "d": "M7 4v16" }]], "loader-circle": [["path", { "d": "M21 12a9 9 0 1 1-6.219-8.56" }]], "circle-alert": [["circle", { "cx": "12", "cy": "12", "r": "10" }], ["line", { "x1": "12", "x2": "12", "y1": "8", "y2": "12" }], ["line", { "x1": "12", "x2": "12.01", "y1": "16", "y2": "16" }]], "circle-check": [["circle", { "cx": "12", "cy": "12", "r": "10" }], ["path", { "d": "m16 9-5.5 5.5L8 12" }]], "info": [["circle", { "cx": "12", "cy": "12", "r": "10" }], ["path", { "d": "M12 16v-4" }], ["path", { "d": "M12 8h.01" }]], "triangle-alert": [["path", { "d": "m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3" }], ["path", { "d": "M12 9v4" }], ["path", { "d": "M12 17h.01" }]], "settings": [["path", { "d": "M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915" }], ["circle", { "cx": "12", "cy": "12", "r": "3" }]], "user": [["path", { "d": "M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2" }], ["circle", { "cx": "12", "cy": "7", "r": "4" }]], "users": [["path", { "d": "M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2" }], ["path", { "d": "M16 3.128a4 4 0 0 1 0 7.744" }], ["path", { "d": "M22 21v-2a4 4 0 0 0-3-3.87" }], ["circle", { "cx": "9", "cy": "7", "r": "4" }]], "filter": [["path", { "d": "M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z" }]], "ellipsis": [["circle", { "cx": "12", "cy": "12", "r": "1" }], ["circle", { "cx": "19", "cy": "12", "r": "1" }], ["circle", { "cx": "5", "cy": "12", "r": "1" }]], "external-link": [["path", { "d": "M15 3h6v6" }], ["path", { "d": "M10 14 21 3" }], ["path", { "d": "M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6" }]], "copy": [["rect", { "width": "14", "height": "14", "x": "8", "y": "8", "rx": "2", "ry": "2" }], ["path", { "d": "M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2" }]], "trash-2": [["path", { "d": "M10 11v6" }], ["path", { "d": "M14 11v6" }], ["path", { "d": "M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6" }], ["path", { "d": "M3 6h18" }], ["path", { "d": "M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2" }]], "pencil": [["path", { "d": "M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z" }], ["path", { "d": "m15 5 4 4" }]], "download": [["path", { "d": "M12 15V3" }], ["path", { "d": "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }], ["path", { "d": "m7 10 5 5 5-5" }]], "upload": [["path", { "d": "M12 3v12" }], ["path", { "d": "m17 8-5-5-5 5" }], ["path", { "d": "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4" }]], "calendar": [["path", { "d": "M8 2v3" }], ["path", { "d": "M16 2v3" }], ["rect", { "x": "3", "y": "3", "width": "18", "height": "18", "rx": "2" }], ["path", { "d": "M3 9h18" }]], "bell": [["path", { "d": "M10.268 21a2 2 0 0 0 3.464 0" }], ["path", { "d": "M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326" }]], "menu": [["path", { "d": "M4 5h16" }], ["path", { "d": "M4 12h16" }], ["path", { "d": "M4 19h16" }]], "eye": [["path", { "d": "M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0" }], ["circle", { "cx": "12", "cy": "12", "r": "3" }]], "log-out": [["path", { "d": "m16 17 5-5-5-5" }], ["path", { "d": "M21 12H9" }], ["path", { "d": "M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4" }]], "circle": [["circle", { "cx": "12", "cy": "12", "r": "10" }]], "circle-dot-dashed": [["path", { "d": "M10.1 2.18a9.93 9.93 0 0 1 3.8 0" }], ["path", { "d": "M17.6 3.71a9.95 9.95 0 0 1 2.69 2.7" }], ["path", { "d": "M21.82 10.1a9.93 9.93 0 0 1 0 3.8" }], ["path", { "d": "M20.29 17.6a9.95 9.95 0 0 1-2.7 2.69" }], ["path", { "d": "M13.9 21.82a9.94 9.94 0 0 1-3.8 0" }], ["path", { "d": "M6.4 20.29a9.95 9.95 0 0 1-2.69-2.7" }], ["path", { "d": "M2.18 13.9a9.93 9.93 0 0 1 0-3.8" }], ["path", { "d": "M3.71 6.4a9.95 9.95 0 0 1 2.7-2.69" }], ["circle", { "cx": "12", "cy": "12", "r": "1" }]], "ban": [["circle", { "cx": "12", "cy": "12", "r": "10" }], ["path", { "d": "M4.929 4.929 19.07 19.071" }]], "arrow-up": [["path", { "d": "m5 12 7-7 7 7" }], ["path", { "d": "M12 19V5" }]], "arrow-down": [["path", { "d": "M12 5v14" }], ["path", { "d": "m19 12-7 7-7-7" }]], "inbox": [["polyline", { "points": "22 12 16 12 14 15 10 15 8 12 2 12" }], ["path", { "d": "M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z" }]], "pin": [["path", { "d": "M12 17v5" }], ["path", { "d": "M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H8a2 2 0 0 0 0 4 1 1 0 0 1 1 1z" }]], "pin-off": [["path", { "d": "M12 17v5" }], ["path", { "d": "M15 9.34V7a1 1 0 0 1 1-1 2 2 0 0 0 0-4H7.89" }], ["path", { "d": "m2 2 20 20" }], ["path", { "d": "M9 9v1.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h11" }]], "eye-off": [["path", { "d": "M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49" }], ["path", { "d": "M14.084 14.158a3 3 0 0 1-4.242-4.242" }], ["path", { "d": "M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143" }], ["path", { "d": "m2 2 20 20" }]], "columns-3": [["rect", { "width": "18", "height": "18", "x": "3", "y": "3", "rx": "2" }], ["path", { "d": "M9 3v18" }], ["path", { "d": "M15 3v18" }]], "arrow-left": [["path", { "d": "m12 19-7-7 7-7" }], ["path", { "d": "M19 12H5" }]], "rotate-ccw": [["path", { "d": "M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8" }], ["path", { "d": "M3 3v5h5" }]], "house": [["path", { "d": "M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8" }], ["path", { "d": "M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z" }]], "layout-dashboard": [["rect", { "width": "7", "height": "9", "x": "3", "y": "3", "rx": "1" }], ["rect", { "width": "7", "height": "5", "x": "14", "y": "3", "rx": "1" }], ["rect", { "width": "7", "height": "9", "x": "14", "y": "12", "rx": "1" }], ["rect", { "width": "7", "height": "5", "x": "3", "y": "16", "rx": "1" }]], "folder": [["path", { "d": "M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z" }]], "chart-column": [["path", { "d": "M3 3v16a2 2 0 0 0 2 2h16" }], ["path", { "d": "M18 17V9" }], ["path", { "d": "M13 17V5" }], ["path", { "d": "M8 17v-3" }]], "file-text": [["path", { "d": "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z" }], ["path", { "d": "M14 2v5a1 1 0 0 0 1 1h5" }], ["path", { "d": "M10 9H8" }], ["path", { "d": "M16 13H8" }], ["path", { "d": "M16 17H8" }]], "mail": [["path", { "d": "m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7" }], ["rect", { "x": "2", "y": "4", "width": "20", "height": "16", "rx": "2" }]], "lock": [["rect", { "width": "18", "height": "11", "x": "3", "y": "11", "rx": "2", "ry": "2" }], ["path", { "d": "M7 11V7a5 5 0 0 1 10 0v4" }]], "clock": [["circle", { "cx": "12", "cy": "12", "r": "10" }], ["path", { "d": "M12 6v6l4 2" }]], "trending-up": [["path", { "d": "M16 7h6v6" }], ["path", { "d": "m22 7-8.5 8.5-5-5L2 17" }]], "trending-down": [["path", { "d": "M16 17h6v-6" }], ["path", { "d": "m22 17-8.5-8.5-5 5L2 7" }]], "image": [["rect", { "width": "18", "height": "18", "x": "3", "y": "3", "rx": "2", "ry": "2" }], ["circle", { "cx": "9", "cy": "9", "r": "2" }], ["path", { "d": "m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21" }]], "paperclip": [["path", { "d": "m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551" }]], "cloud-upload": [["path", { "d": "M12 13v8" }], ["path", { "d": "M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242" }], ["path", { "d": "m8 17 4-4 4 4" }]], "file": [["path", { "d": "M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z" }], ["path", { "d": "M14 2v5a1 1 0 0 0 1 1h5" }]], "sun": [["circle", { "cx": "12", "cy": "12", "r": "4" }], ["path", { "d": "M12 2v2" }], ["path", { "d": "M12 20v2" }], ["path", { "d": "m4.93 4.93 1.41 1.41" }], ["path", { "d": "m17.66 17.66 1.41 1.41" }], ["path", { "d": "M2 12h2" }], ["path", { "d": "M20 12h2" }], ["path", { "d": "m6.34 17.66-1.41 1.41" }], ["path", { "d": "m19.07 4.93-1.41 1.41" }]], "moon": [["path", { "d": "M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401" }]], "monitor": [["rect", { "width": "20", "height": "14", "x": "2", "y": "3", "rx": "2" }], ["line", { "x1": "8", "x2": "16", "y1": "21", "y2": "21" }], ["line", { "x1": "12", "x2": "12", "y1": "17", "y2": "21" }]], "panel-left-close": [["rect", { "width": "18", "height": "18", "x": "3", "y": "3", "rx": "2" }], ["path", { "d": "M9 3v18" }], ["path", { "d": "m16 15-3-3 3-3" }]], "panel-left-open": [["rect", { "width": "18", "height": "18", "x": "3", "y": "3", "rx": "2" }], ["path", { "d": "M9 3v18" }], ["path", { "d": "m14 9 3 3-3 3" }]] };
|
|
222
223
|
var SIZES = { sm: 16, md: 20, lg: 24 };
|
|
223
224
|
var Icon = React2.forwardRef(function Icon2(props, ref) {
|
|
224
225
|
const size = SIZES[props.size] || props.size || 16;
|
|
@@ -295,6 +296,8 @@ window.Aura = (() => {
|
|
|
295
296
|
breadcrumb: "Breadcrumb",
|
|
296
297
|
navigation: "Navigation",
|
|
297
298
|
openNav: "Open navigation",
|
|
299
|
+
collapseNav: "Collapse sidebar",
|
|
300
|
+
expandNav: "Expand sidebar",
|
|
298
301
|
searching: "Searching\u2026",
|
|
299
302
|
noMatches: "No matches",
|
|
300
303
|
clear: function(what) {
|
|
@@ -406,6 +409,8 @@ window.Aura = (() => {
|
|
|
406
409
|
breadcrumb: "\u0E40\u0E2A\u0E49\u0E19\u0E17\u0E32\u0E07",
|
|
407
410
|
navigation: "\u0E40\u0E21\u0E19\u0E39",
|
|
408
411
|
openNav: "\u0E40\u0E1B\u0E34\u0E14\u0E40\u0E21\u0E19\u0E39",
|
|
412
|
+
collapseNav: "\u0E22\u0E48\u0E2D\u0E41\u0E16\u0E1A\u0E40\u0E21\u0E19\u0E39",
|
|
413
|
+
expandNav: "\u0E02\u0E22\u0E32\u0E22\u0E41\u0E16\u0E1A\u0E40\u0E21\u0E19\u0E39",
|
|
409
414
|
searching: "\u0E01\u0E33\u0E25\u0E31\u0E07\u0E04\u0E49\u0E19\u0E2B\u0E32\u2026",
|
|
410
415
|
noMatches: "\u0E44\u0E21\u0E48\u0E1E\u0E1A\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23\u0E17\u0E35\u0E48\u0E15\u0E23\u0E07\u0E01\u0E31\u0E19",
|
|
411
416
|
clear: function(what) {
|
|
@@ -517,6 +522,8 @@ window.Aura = (() => {
|
|
|
517
522
|
breadcrumb: "Br\xF6dsmulor",
|
|
518
523
|
navigation: "Navigering",
|
|
519
524
|
openNav: "\xD6ppna menyn",
|
|
525
|
+
collapseNav: "F\xE4ll ihop sidof\xE4ltet",
|
|
526
|
+
expandNav: "F\xE4ll ut sidof\xE4ltet",
|
|
520
527
|
searching: "S\xF6ker\u2026",
|
|
521
528
|
noMatches: "Inga tr\xE4ffar",
|
|
522
529
|
clear: function(what) {
|
|
@@ -609,6 +616,8 @@ window.Aura = (() => {
|
|
|
609
616
|
};
|
|
610
617
|
var LocaleContext = React3.createContext(null);
|
|
611
618
|
function AuraProvider(props) {
|
|
619
|
+
const outer = React3.useContext(LocaleContext);
|
|
620
|
+
const density = props.density || outer && outer.density || null;
|
|
612
621
|
const value = React3.useMemo(
|
|
613
622
|
function() {
|
|
614
623
|
const base = props.locale && STRINGS[props.locale] || STRINGS.en;
|
|
@@ -616,12 +625,13 @@ window.Aura = (() => {
|
|
|
616
625
|
locale: props.locale || "en",
|
|
617
626
|
calendar: props.calendar || null,
|
|
618
627
|
strings: props.strings ? Object.assign({}, base, props.strings) : base,
|
|
619
|
-
linkComponent: props.linkComponent || null
|
|
628
|
+
linkComponent: props.linkComponent || null,
|
|
629
|
+
density
|
|
620
630
|
};
|
|
621
631
|
},
|
|
622
|
-
[props.locale, props.calendar, props.strings, props.linkComponent]
|
|
632
|
+
[props.locale, props.calendar, props.strings, props.linkComponent, density]
|
|
623
633
|
);
|
|
624
|
-
return /* @__PURE__ */ React3.createElement(LocaleContext.Provider, { value }, props.children);
|
|
634
|
+
return /* @__PURE__ */ React3.createElement(LocaleContext.Provider, { value }, props.density ? /* @__PURE__ */ React3.createElement("div", { className: "aura-density", "data-density": props.density }, props.children) : props.children);
|
|
625
635
|
}
|
|
626
636
|
function useAuraLocale() {
|
|
627
637
|
return React3.useContext(LocaleContext) || { locale: null, calendar: null, strings: STRINGS.en };
|
|
@@ -630,6 +640,10 @@ window.Aura = (() => {
|
|
|
630
640
|
const ctx = React3.useContext(LocaleContext);
|
|
631
641
|
return own || ctx && ctx.linkComponent || "a";
|
|
632
642
|
}
|
|
643
|
+
function useDensity() {
|
|
644
|
+
const ctx = React3.useContext(LocaleContext);
|
|
645
|
+
return ctx && ctx.density || void 0;
|
|
646
|
+
}
|
|
633
647
|
function useStrings() {
|
|
634
648
|
return useAuraLocale().strings;
|
|
635
649
|
}
|
|
@@ -2722,6 +2736,7 @@ window.Aura = (() => {
|
|
|
2722
2736
|
}
|
|
2723
2737
|
function Command(props) {
|
|
2724
2738
|
const t = useStrings();
|
|
2739
|
+
const density = useDensity();
|
|
2725
2740
|
const id = uid(), listId = id + "-list";
|
|
2726
2741
|
const box = React25.useRef(null);
|
|
2727
2742
|
const input = React25.useRef(null);
|
|
@@ -2833,6 +2848,7 @@ window.Aura = (() => {
|
|
|
2833
2848
|
"div",
|
|
2834
2849
|
{
|
|
2835
2850
|
className: "aura-dialog-layer aura-command-layer",
|
|
2851
|
+
"data-density": density,
|
|
2836
2852
|
onKeyDown: function(e) {
|
|
2837
2853
|
modal.onKeyDown(e);
|
|
2838
2854
|
e.stopPropagation();
|
|
@@ -3002,6 +3018,7 @@ window.Aura = (() => {
|
|
|
3002
3018
|
var import_react_dom7 = __toESM(require_react_dom(), 1);
|
|
3003
3019
|
var Dialog = React27.forwardRef(function Dialog2(props, ref) {
|
|
3004
3020
|
const t = useStrings();
|
|
3021
|
+
const density = useDensity();
|
|
3005
3022
|
const own = React27.useRef(null), merged = useMergedRef(ref, own), titleId = uid(), descId = uid();
|
|
3006
3023
|
function close() {
|
|
3007
3024
|
if (props.dismissible !== false && props.onClose) props.onClose();
|
|
@@ -3014,7 +3031,7 @@ window.Aura = (() => {
|
|
|
3014
3031
|
});
|
|
3015
3032
|
if (!modal.ready) return null;
|
|
3016
3033
|
return (0, import_react_dom7.createPortal)(
|
|
3017
|
-
/* @__PURE__ */ React27.createElement("div", { className: "aura-dialog-layer", onKeyDown: modal.onKeyDown }, /* @__PURE__ */ React27.createElement("div", { className: "aura-scrim", onClick: close, "aria-hidden": true }), /* @__PURE__ */ React27.createElement(
|
|
3034
|
+
/* @__PURE__ */ React27.createElement("div", { className: "aura-dialog-layer", "data-density": density, onKeyDown: modal.onKeyDown }, /* @__PURE__ */ React27.createElement("div", { className: "aura-scrim", onClick: close, "aria-hidden": true }), /* @__PURE__ */ React27.createElement(
|
|
3018
3035
|
"div",
|
|
3019
3036
|
{
|
|
3020
3037
|
ref: merged,
|
|
@@ -3035,6 +3052,7 @@ window.Aura = (() => {
|
|
|
3035
3052
|
});
|
|
3036
3053
|
var Drawer = React27.forwardRef(function Drawer2(props, ref) {
|
|
3037
3054
|
const t = useStrings();
|
|
3055
|
+
const density = useDensity();
|
|
3038
3056
|
const own = React27.useRef(null), merged = useMergedRef(ref, own), titleId = uid(), descId = uid();
|
|
3039
3057
|
function close() {
|
|
3040
3058
|
if (props.dismissible !== false && props.onClose) props.onClose();
|
|
@@ -3048,7 +3066,7 @@ window.Aura = (() => {
|
|
|
3048
3066
|
if (!modal.ready) return null;
|
|
3049
3067
|
const side = props.side === "left" ? "left" : "right";
|
|
3050
3068
|
return (0, import_react_dom7.createPortal)(
|
|
3051
|
-
/* @__PURE__ */ React27.createElement("div", { className: "aura-dialog-layer aura-drawer-layer", onKeyDown: modal.onKeyDown }, /* @__PURE__ */ React27.createElement("div", { className: "aura-scrim", onClick: close, "aria-hidden": true }), /* @__PURE__ */ React27.createElement(
|
|
3069
|
+
/* @__PURE__ */ React27.createElement("div", { className: "aura-dialog-layer aura-drawer-layer", "data-density": density, onKeyDown: modal.onKeyDown }, /* @__PURE__ */ React27.createElement("div", { className: "aura-scrim", onClick: close, "aria-hidden": true }), /* @__PURE__ */ React27.createElement(
|
|
3052
3070
|
"div",
|
|
3053
3071
|
{
|
|
3054
3072
|
ref: merged,
|
|
@@ -3079,7 +3097,7 @@ window.Aura = (() => {
|
|
|
3079
3097
|
{ key: "owner", label: "OWNER" }
|
|
3080
3098
|
];
|
|
3081
3099
|
var SKELETON_WIDTHS = ["72%", "56%", "84%", "44%", "64%"];
|
|
3082
|
-
var
|
|
3100
|
+
var ROW_H_DEFAULT = 48;
|
|
3083
3101
|
var OVERSCAN = 8;
|
|
3084
3102
|
var FLEX_MIN = 160;
|
|
3085
3103
|
var DataTable = React28.forwardRef(function DataTable2(props, ref) {
|
|
@@ -3165,6 +3183,14 @@ window.Aura = (() => {
|
|
|
3165
3183
|
return px != null && boxWidth[0] < px;
|
|
3166
3184
|
}
|
|
3167
3185
|
const scrollRef = React28.useRef(null);
|
|
3186
|
+
const rowH = React28.useState(ROW_H_DEFAULT);
|
|
3187
|
+
const ROW_H = rowH[0];
|
|
3188
|
+
useIsoLayoutEffect(function() {
|
|
3189
|
+
const el = wrapRef.current;
|
|
3190
|
+
if (!el || typeof getComputedStyle === "undefined") return;
|
|
3191
|
+
const v = parseFloat(getComputedStyle(el).getPropertyValue("--aura-table-row-height"));
|
|
3192
|
+
if (v > 0 && v !== rowH[0]) rowH[1](v);
|
|
3193
|
+
});
|
|
3168
3194
|
const pending = React28.useRef(null);
|
|
3169
3195
|
const resizing = React28.useRef(false);
|
|
3170
3196
|
useIsoLayoutEffect(function() {
|
|
@@ -4027,6 +4053,7 @@ window.Aura = (() => {
|
|
|
4027
4053
|
"div",
|
|
4028
4054
|
{
|
|
4029
4055
|
ref: wrapMerged,
|
|
4056
|
+
"data-density": props.density,
|
|
4030
4057
|
className: cx("aura-table aura-table--stacked", refreshing && "is-refreshing", props.className),
|
|
4031
4058
|
role: "region",
|
|
4032
4059
|
"aria-label": props.label,
|
|
@@ -4055,6 +4082,7 @@ window.Aura = (() => {
|
|
|
4055
4082
|
"div",
|
|
4056
4083
|
{
|
|
4057
4084
|
ref: wrapMerged,
|
|
4085
|
+
"data-density": props.density,
|
|
4058
4086
|
className: cx("aura-table", scrolledX[0] && "is-scrolled-x", refreshing && "is-refreshing", props.className)
|
|
4059
4087
|
},
|
|
4060
4088
|
refreshing ? /* @__PURE__ */ React28.createElement("span", { className: "aura-table__busy-bar", "aria-hidden": true }) : null,
|
|
@@ -4221,6 +4249,7 @@ window.Aura = (() => {
|
|
|
4221
4249
|
|
|
4222
4250
|
// src/SideNav.tsx
|
|
4223
4251
|
var React31 = __toESM(require_react(), 1);
|
|
4252
|
+
var import_react_dom8 = __toESM(require_react_dom(), 1);
|
|
4224
4253
|
function contains(it, id) {
|
|
4225
4254
|
return !!id && !!it.children && it.children.some(function(c) {
|
|
4226
4255
|
return c.id === id || contains(c, id);
|
|
@@ -4236,6 +4265,39 @@ window.Aura = (() => {
|
|
|
4236
4265
|
props.onChange
|
|
4237
4266
|
);
|
|
4238
4267
|
const active = st[0];
|
|
4268
|
+
const col = useMaybeControlled(props.collapsed, !!props.defaultCollapsed, props.onCollapsedChange);
|
|
4269
|
+
const collapsed = col[0];
|
|
4270
|
+
const tipState = React31.useState(null), tip = tipState[0], setTip = tipState[1];
|
|
4271
|
+
React31.useEffect(
|
|
4272
|
+
function() {
|
|
4273
|
+
if (!collapsed) setTip(null);
|
|
4274
|
+
},
|
|
4275
|
+
[collapsed]
|
|
4276
|
+
);
|
|
4277
|
+
React31.useEffect(
|
|
4278
|
+
function() {
|
|
4279
|
+
if (!tip) return;
|
|
4280
|
+
function esc(e) {
|
|
4281
|
+
if (e.key === "Escape") setTip(null);
|
|
4282
|
+
}
|
|
4283
|
+
document.addEventListener("keydown", esc);
|
|
4284
|
+
return function() {
|
|
4285
|
+
document.removeEventListener("keydown", esc);
|
|
4286
|
+
};
|
|
4287
|
+
},
|
|
4288
|
+
[tip]
|
|
4289
|
+
);
|
|
4290
|
+
function tipHandlers(label) {
|
|
4291
|
+
if (!collapsed) return {};
|
|
4292
|
+
function show2(e) {
|
|
4293
|
+
const r = e.currentTarget.getBoundingClientRect();
|
|
4294
|
+
setTip({ text: label, top: r.top + r.height / 2, left: r.right + 8 });
|
|
4295
|
+
}
|
|
4296
|
+
function hide() {
|
|
4297
|
+
setTip(null);
|
|
4298
|
+
}
|
|
4299
|
+
return { onMouseEnter: show2, onFocus: show2, onMouseLeave: hide, onBlur: hide };
|
|
4300
|
+
}
|
|
4239
4301
|
const sections = props.sections || [{ items: props.items || [] }];
|
|
4240
4302
|
const openState = React31.useState({}), toggled = openState[0], setToggled = openState[1];
|
|
4241
4303
|
function isOpen(it) {
|
|
@@ -4281,8 +4343,10 @@ window.Aura = (() => {
|
|
|
4281
4343
|
visible[j].focus();
|
|
4282
4344
|
}
|
|
4283
4345
|
function inner(it, group, open) {
|
|
4346
|
+
const marked = it.count != null && it.count > 0 || it.badge != null;
|
|
4284
4347
|
return [
|
|
4285
|
-
it.icon ? /* @__PURE__ */ React31.createElement(Icon, { key: "i", name: it.icon }) : null,
|
|
4348
|
+
it.icon ? /* @__PURE__ */ React31.createElement(Icon, { key: "i", name: it.icon }) : collapsed ? /* @__PURE__ */ React31.createElement("span", { key: "i", className: "aura-nav__initial", "aria-hidden": "true" }, it.label.charAt(0)) : null,
|
|
4349
|
+
collapsed && marked ? /* @__PURE__ */ React31.createElement("span", { key: "d", className: "aura-nav__dot", "aria-hidden": "true" }) : null,
|
|
4286
4350
|
/* @__PURE__ */ React31.createElement("span", { key: "l", className: "aura-nav__label" }, it.label),
|
|
4287
4351
|
it.badge != null ? /* @__PURE__ */ React31.createElement("span", { key: "b", className: "aura-nav__badge" }, it.badge) : null,
|
|
4288
4352
|
it.count != null ? /* @__PURE__ */ React31.createElement("span", { key: "c", className: "aura-nav__count" }, it.count) : null,
|
|
@@ -4291,7 +4355,7 @@ window.Aura = (() => {
|
|
|
4291
4355
|
}
|
|
4292
4356
|
function item(it, depth) {
|
|
4293
4357
|
if (it.children) {
|
|
4294
|
-
const open = isOpen(it);
|
|
4358
|
+
const open = !collapsed && isOpen(it);
|
|
4295
4359
|
const listId = base + "-" + it.id;
|
|
4296
4360
|
const holdsActive = contains(it, active);
|
|
4297
4361
|
return /* @__PURE__ */ React31.createElement("li", { key: it.id, className: "aura-nav__group" }, /* @__PURE__ */ React31.createElement(
|
|
@@ -4302,10 +4366,15 @@ window.Aura = (() => {
|
|
|
4302
4366
|
"aria-expanded": open,
|
|
4303
4367
|
"aria-controls": listId,
|
|
4304
4368
|
style: depth ? { ["--aura-nav-depth"]: depth } : void 0,
|
|
4369
|
+
...tipHandlers(it.label),
|
|
4305
4370
|
onClick: function() {
|
|
4306
4371
|
const next = Object.assign({}, toggled);
|
|
4307
4372
|
next[it.id] = !open;
|
|
4308
4373
|
setToggled(next);
|
|
4374
|
+
if (collapsed) {
|
|
4375
|
+
setTip(null);
|
|
4376
|
+
col[1](false);
|
|
4377
|
+
}
|
|
4309
4378
|
},
|
|
4310
4379
|
onKeyDown: function(e) {
|
|
4311
4380
|
if (e.key === "ArrowRight" && !open) {
|
|
@@ -4324,6 +4393,7 @@ window.Aura = (() => {
|
|
|
4324
4393
|
}
|
|
4325
4394
|
const on = active === it.id;
|
|
4326
4395
|
const common = {
|
|
4396
|
+
...tipHandlers(it.label),
|
|
4327
4397
|
className: cx("aura-nav__item", on && "is-active"),
|
|
4328
4398
|
"aria-current": on ? "page" : void 0,
|
|
4329
4399
|
style: depth ? { ["--aura-nav-depth"]: depth } : void 0,
|
|
@@ -4342,7 +4412,8 @@ window.Aura = (() => {
|
|
|
4342
4412
|
if (typeof ref === "function") ref(el);
|
|
4343
4413
|
else if (ref) ref.current = el;
|
|
4344
4414
|
},
|
|
4345
|
-
className: cx("aura-nav", props.className),
|
|
4415
|
+
className: cx("aura-nav", collapsed && "aura-nav--collapsed", props.className),
|
|
4416
|
+
"data-collapsed": collapsed ? "" : void 0,
|
|
4346
4417
|
"aria-label": props.label || t.mainNav,
|
|
4347
4418
|
onKeyDown
|
|
4348
4419
|
},
|
|
@@ -4352,7 +4423,31 @@ window.Aura = (() => {
|
|
|
4352
4423
|
return item(it, 0);
|
|
4353
4424
|
})));
|
|
4354
4425
|
})),
|
|
4355
|
-
props.footer ? /* @__PURE__ */ React31.createElement("div", { className: "aura-nav__footer" }, props.footer) : null
|
|
4426
|
+
props.footer ? /* @__PURE__ */ React31.createElement("div", { className: "aura-nav__footer" }, props.footer) : null,
|
|
4427
|
+
props.collapsible ? /* @__PURE__ */ React31.createElement("div", { className: "aura-nav__toggle" }, /* @__PURE__ */ React31.createElement(
|
|
4428
|
+
IconButton,
|
|
4429
|
+
{
|
|
4430
|
+
icon: collapsed ? "panel-left-open" : "panel-left-close",
|
|
4431
|
+
label: collapsed ? t.expandNav : t.collapseNav,
|
|
4432
|
+
size: "md",
|
|
4433
|
+
onClick: function() {
|
|
4434
|
+
setTip(null);
|
|
4435
|
+
col[1](!collapsed);
|
|
4436
|
+
}
|
|
4437
|
+
}
|
|
4438
|
+
)) : null,
|
|
4439
|
+
tip && typeof document !== "undefined" ? (0, import_react_dom8.createPortal)(
|
|
4440
|
+
/* @__PURE__ */ React31.createElement(
|
|
4441
|
+
"div",
|
|
4442
|
+
{
|
|
4443
|
+
className: "aura-tooltip aura-tooltip--right",
|
|
4444
|
+
"aria-hidden": "true",
|
|
4445
|
+
style: { top: tip.top, left: tip.left }
|
|
4446
|
+
},
|
|
4447
|
+
tip.text
|
|
4448
|
+
),
|
|
4449
|
+
document.body
|
|
4450
|
+
) : null
|
|
4356
4451
|
);
|
|
4357
4452
|
});
|
|
4358
4453
|
|
|
@@ -4517,7 +4612,10 @@ window.Aura = (() => {
|
|
|
4517
4612
|
if (navEl.props.onChange) navEl.props.onChange(id);
|
|
4518
4613
|
setOpen(false);
|
|
4519
4614
|
},
|
|
4520
|
-
className: cx(navEl.props.className, "is-in-drawer")
|
|
4615
|
+
className: cx(navEl.props.className, "is-in-drawer"),
|
|
4616
|
+
/* The drawer is already full-size: never a rail, no collapse button. */
|
|
4617
|
+
collapsed: false,
|
|
4618
|
+
collapsible: false
|
|
4521
4619
|
}) : props.nav;
|
|
4522
4620
|
return /* @__PURE__ */ React38.createElement("div", { ref, className: cx("aura-shell", compact && "is-compact", props.className) }, !compact ? /* @__PURE__ */ React38.createElement("div", { className: "aura-shell__nav" }, nav) : null, compact ? /* @__PURE__ */ React38.createElement(
|
|
4523
4621
|
Drawer,
|
|
@@ -4598,7 +4696,7 @@ window.Aura = (() => {
|
|
|
4598
4696
|
|
|
4599
4697
|
// src/TimePicker.tsx
|
|
4600
4698
|
var React41 = __toESM(require_react(), 1);
|
|
4601
|
-
var
|
|
4699
|
+
var import_react_dom9 = __toESM(require_react_dom(), 1);
|
|
4602
4700
|
function pad2(n2) {
|
|
4603
4701
|
return (n2 < 10 ? "0" : "") + n2;
|
|
4604
4702
|
}
|
|
@@ -4795,7 +4893,7 @@ window.Aura = (() => {
|
|
|
4795
4893
|
}
|
|
4796
4894
|
}
|
|
4797
4895
|
const error = errState[0] || props.error;
|
|
4798
|
-
const list = open && mounted && pos[0] ? (0,
|
|
4896
|
+
const list = open && mounted && pos[0] ? (0, import_react_dom9.createPortal)(
|
|
4799
4897
|
/* @__PURE__ */ React41.createElement("div", { ref: listRef, className: "aura-combo__popover aura-time__popover", style: pos[0] }, /* @__PURE__ */ React41.createElement("ul", { id: listId, role: "listbox", "aria-label": props.label, className: "aura-combo__list" }, slots.map(function(s, i) {
|
|
4800
4898
|
const dis = blocked(s), sel = s === value;
|
|
4801
4899
|
return /* @__PURE__ */ React41.createElement(
|
|
@@ -5747,7 +5845,7 @@ window.Aura = (() => {
|
|
|
5747
5845
|
|
|
5748
5846
|
// src/Popover.tsx
|
|
5749
5847
|
var React51 = __toESM(require_react(), 1);
|
|
5750
|
-
var
|
|
5848
|
+
var import_react_dom10 = __toESM(require_react_dom(), 1);
|
|
5751
5849
|
function position(anchor, pop, placement) {
|
|
5752
5850
|
const r = anchor.getBoundingClientRect(), pw = pop.offsetWidth, ph = pop.offsetHeight, vw = window.innerWidth, vh = window.innerHeight, gap = 6;
|
|
5753
5851
|
let side = (placement || "bottom-start").split("-")[0], align = (placement || "bottom-start").split("-")[1] || "start";
|
|
@@ -5759,6 +5857,7 @@ window.Aura = (() => {
|
|
|
5759
5857
|
}
|
|
5760
5858
|
var Popover = React51.forwardRef(function Popover2(props, ref) {
|
|
5761
5859
|
const t = useStrings();
|
|
5860
|
+
const density = useDensity();
|
|
5762
5861
|
const auto = uid(), id = props.id || auto;
|
|
5763
5862
|
const st = useMaybeControlled(props.open, !!props.defaultOpen, props.onOpenChange);
|
|
5764
5863
|
const open = !!st[0];
|
|
@@ -5810,12 +5909,13 @@ window.Aura = (() => {
|
|
|
5810
5909
|
[open, mounted]
|
|
5811
5910
|
);
|
|
5812
5911
|
const child = React51.Children.only(props.trigger);
|
|
5813
|
-
const panel = open && mounted ? (0,
|
|
5912
|
+
const panel = open && mounted ? (0, import_react_dom10.createPortal)(
|
|
5814
5913
|
/* @__PURE__ */ React51.createElement(
|
|
5815
5914
|
"div",
|
|
5816
5915
|
{
|
|
5817
5916
|
ref: popMerged,
|
|
5818
5917
|
id,
|
|
5918
|
+
"data-density": density,
|
|
5819
5919
|
role: "dialog",
|
|
5820
5920
|
"aria-modal": false,
|
|
5821
5921
|
"aria-label": props.title ? void 0 : props.label,
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
box-sizing: border-box;
|
|
8
8
|
height: var(--aura-button-height);
|
|
9
9
|
white-space: nowrap; flex-shrink: 0; /* a pill never wraps its label */
|
|
10
|
-
padding: 0 var(--aura-space-6);
|
|
10
|
+
padding: 0 var(--aura-button-padding-x, var(--aura-space-6));
|
|
11
11
|
border-radius: var(--aura-button-radius);
|
|
12
12
|
border: 0;
|
|
13
13
|
background: transparent;
|
|
@@ -74,14 +74,14 @@ a.aura-btn { text-decoration: none; }
|
|
|
74
74
|
}
|
|
75
75
|
.aura-table__scroll { position: relative; overflow: auto; overscroll-behavior: contain; }
|
|
76
76
|
.aura-table__head {
|
|
77
|
-
position: sticky; top: 0; z-index: 3;
|
|
78
|
-
display: flex; height: var(--aura-
|
|
77
|
+
position: sticky; top: 0; z-index: 3; box-sizing: border-box; /* the hairline is inside the row height */
|
|
78
|
+
display: flex; height: var(--aura-table-row-height);
|
|
79
79
|
background: var(--aura-bg-canvas);
|
|
80
80
|
border-bottom: 1px solid var(--aura-border-default);
|
|
81
81
|
font-family: var(--font-mono); font-size: 12px; color: var(--aura-fg-secondary);
|
|
82
82
|
}
|
|
83
83
|
.aura-table__row {
|
|
84
|
-
display: flex; height: var(--aura-
|
|
84
|
+
box-sizing: border-box; display: flex; height: var(--aura-table-row-height); /* exactly the virtual row height */
|
|
85
85
|
background: var(--aura-bg-surface);
|
|
86
86
|
border-bottom: 1px solid var(--aura-border-default);
|
|
87
87
|
font-size: 13px;
|
|
@@ -105,7 +105,7 @@ a.aura-btn { text-decoration: none; }
|
|
|
105
105
|
/* Server mode refresh: the previous page stays, inactive, under a progress bar until the next one arrives */
|
|
106
106
|
.aura-table.is-refreshing .aura-table__row, .aura-table.is-refreshing .aura-table__card { opacity: 0.6; pointer-events: none; }
|
|
107
107
|
.aura-table__busy-bar {
|
|
108
|
-
position: absolute; z-index: 6; top: calc(var(--aura-
|
|
108
|
+
position: absolute; z-index: 6; top: calc(var(--aura-table-row-height) - 2px); left: 0; right: 0; height: 2px; overflow: hidden;
|
|
109
109
|
border-radius: var(--aura-radius-full); pointer-events: none;
|
|
110
110
|
}
|
|
111
111
|
.aura-table--stacked .aura-table__busy-bar { top: 0; }
|
|
@@ -117,7 +117,7 @@ a.aura-btn { text-decoration: none; }
|
|
|
117
117
|
|
|
118
118
|
/* Cells: text cells stay block so long values end in an ellipsis */
|
|
119
119
|
.aura-table__td {
|
|
120
|
-
box-sizing: border-box; height: 100%; line-height: calc(var(--aura-
|
|
120
|
+
box-sizing: border-box; height: 100%; line-height: calc(var(--aura-table-row-height) - 1px);
|
|
121
121
|
overflow: hidden; text-overflow: ellipsis; white-space: nowrap; padding-right: var(--aura-space-4);
|
|
122
122
|
}
|
|
123
123
|
.aura-table__td .aura-pill, .aura-table__td .aura-dropdown, .aura-table__td > .aura-icon-btn, .aura-table__td > .aura-btn { vertical-align: middle; }
|
|
@@ -130,7 +130,7 @@ a.aura-btn { text-decoration: none; }
|
|
|
130
130
|
.aura-table__gutter { flex: none; width: var(--aura-space-6); position: sticky; left: 0; z-index: 2; background: inherit; }
|
|
131
131
|
.aura-table__gutter--end { position: static; }
|
|
132
132
|
.aura-table__picker {
|
|
133
|
-
position: absolute; top: 0; right: 0; z-index: 5; width: var(--aura-space-12); height: calc(var(--aura-
|
|
133
|
+
position: absolute; top: 0; right: 0; z-index: 5; width: var(--aura-space-12); height: calc(var(--aura-table-row-height) - 1px);
|
|
134
134
|
display: flex; align-items: center; justify-content: center; background: var(--aura-bg-canvas); border-top-right-radius: calc(var(--aura-card-radius) - 1px);
|
|
135
135
|
}
|
|
136
136
|
.aura-table__gutter--end.has-picker {
|
|
@@ -228,7 +228,7 @@ a.aura-btn { text-decoration: none; }
|
|
|
228
228
|
|
|
229
229
|
/* Footer + pager */
|
|
230
230
|
.aura-table__foot {
|
|
231
|
-
height: var(--aura-
|
|
231
|
+
height: var(--aura-table-row-height); display: flex; align-items: center; justify-content: space-between;
|
|
232
232
|
padding: 0 var(--aura-space-3) 0 var(--aura-space-6);
|
|
233
233
|
border-top: 1px solid var(--aura-border-default); background: var(--aura-bg-surface);
|
|
234
234
|
font-size: 13px; color: var(--aura-fg-secondary); font-variant-numeric: tabular-nums;
|
|
@@ -596,6 +596,30 @@ a.aura-btn { text-decoration: none; }
|
|
|
596
596
|
.aura-nav__sub { margin-top: 2px; }
|
|
597
597
|
.aura-nav__sub[hidden] { display: none; }
|
|
598
598
|
.aura-nav__footer { padding: var(--aura-space-3); border-top: 1px solid var(--aura-border-default); }
|
|
599
|
+
/* Collapse toggle and the icon-only rail (4.15). */
|
|
600
|
+
.aura-nav { transition: width var(--aura-duration-base) var(--aura-ease); }
|
|
601
|
+
.aura-nav__toggle { display: flex; padding: var(--aura-space-2) var(--aura-space-3); border-top: 1px solid var(--aura-border-default); }
|
|
602
|
+
.aura-nav--collapsed { width: var(--aura-sidenav-rail-width); }
|
|
603
|
+
.aura-nav--collapsed .aura-nav__toggle { justify-content: center; }
|
|
604
|
+
.aura-nav--collapsed .aura-nav__header, .aura-nav--collapsed .aura-nav__footer { padding-left: var(--aura-space-2); padding-right: var(--aura-space-2); overflow: hidden; }
|
|
605
|
+
.aura-nav--collapsed .aura-nav__item { position: relative; justify-content: center; gap: 0; padding: 0; }
|
|
606
|
+
.aura-nav--collapsed .aura-nav__label, .aura-nav--collapsed .aura-nav__count, .aura-nav--collapsed .aura-nav__badge, .aura-nav--collapsed .aura-nav__title {
|
|
607
|
+
position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
|
|
608
|
+
}
|
|
609
|
+
.aura-nav--collapsed .aura-nav__chevron { display: none; }
|
|
610
|
+
.aura-nav--collapsed .aura-nav__section + .aura-nav__section { margin-top: var(--aura-space-3); padding-top: var(--aura-space-3); border-top: 1px solid var(--aura-border-default); }
|
|
611
|
+
.aura-nav--collapsed .aura-nav__item--group.has-active { background: var(--aura-bg-selected); }
|
|
612
|
+
.aura-nav--collapsed .aura-nav__item--group.has-active .aura-icon { color: var(--aura-fg-accent); }
|
|
613
|
+
.aura-nav__initial {
|
|
614
|
+
display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border-radius: var(--aura-radius-sm);
|
|
615
|
+
background: var(--aura-status-neutral-bg); color: var(--aura-status-neutral-fg); font-size: 12px; font-weight: 600; text-transform: uppercase;
|
|
616
|
+
}
|
|
617
|
+
.aura-nav__dot {
|
|
618
|
+
position: absolute; top: 6px; left: calc(50% + 5px); width: 8px; height: 8px; border-radius: var(--aura-radius-full);
|
|
619
|
+
background: var(--aura-fg-accent); box-shadow: 0 0 0 2px var(--aura-bg-canvas);
|
|
620
|
+
}
|
|
621
|
+
.aura-tooltip--right { transform: translateY(-50%); white-space: nowrap; }
|
|
622
|
+
@media (prefers-reduced-motion: reduce) { .aura-nav { transition: none; } }
|
|
599
623
|
|
|
600
624
|
/* ---------- Breadcrumb ---------- */
|
|
601
625
|
.aura-crumbs ol { display: flex; flex-wrap: wrap; align-items: center; gap: var(--aura-space-1) var(--aura-space-2); list-style: none; margin: 0; padding: 0; font-family: var(--font-sans); font-size: 13px; }
|
|
@@ -1241,3 +1265,19 @@ button.aura-stepper__step:hover .aura-stepper__label { text-decoration: underlin
|
|
|
1241
1265
|
}
|
|
1242
1266
|
@media (prefers-reduced-motion: reduce) { .aura-command { animation: none; } }
|
|
1243
1267
|
|
|
1268
|
+
/* Density. data-density="compact" on <html> or any container (AuraProvider density="compact" and DataTable
|
|
1269
|
+
* density do it for you): 36px fields and buttons, 40px table rows, less button padding — for dense admin screens.
|
|
1270
|
+
* Touch screens keep 44px targets whatever the density. "comfortable" inside compact switches back. */
|
|
1271
|
+
[data-density='compact'] {
|
|
1272
|
+
--aura-input-height: 36px; --aura-button-height: 36px; --aura-table-row-height: 40px;
|
|
1273
|
+
--aura-button-padding-x: var(--aura-space-4);
|
|
1274
|
+
}
|
|
1275
|
+
[data-density='comfortable'] {
|
|
1276
|
+
--aura-input-height: 44px; --aura-button-height: 44px; --aura-table-row-height: 48px;
|
|
1277
|
+
--aura-button-padding-x: var(--aura-space-6);
|
|
1278
|
+
}
|
|
1279
|
+
@media (pointer: coarse) {
|
|
1280
|
+
[data-density='compact'] { --aura-input-height: 44px; --aura-button-height: 44px; --aura-table-row-height: 48px; --aura-button-padding-x: var(--aura-space-6); }
|
|
1281
|
+
}
|
|
1282
|
+
.aura-density { display: contents; }
|
|
1283
|
+
|
package/components/index.d.ts
CHANGED
|
@@ -149,13 +149,15 @@ export interface DataTableProps {
|
|
|
149
149
|
/** Controlled pinned columns (keys); pair with onPinnedColumnsChange. */
|
|
150
150
|
pinnedColumns?: string[];
|
|
151
151
|
onPinnedColumnsChange?: (keys: string[]) => void;
|
|
152
|
+
/** `compact` = 40px rows (48px on touch screens). Default: the surrounding density. */
|
|
153
|
+
density?: "comfortable" | "compact";
|
|
152
154
|
/** Container width in px below which rows render as stacked cards (phones). Try 640. Measured with ResizeObserver, so it follows the container, not the window. */
|
|
153
155
|
stackBelow?: number;
|
|
154
156
|
className?: string;
|
|
155
157
|
}
|
|
156
158
|
/** An AURA icon name, or any icon element (e.g. `<Building />` from lucide-react). AURA sizes it and hides it from screen readers. */
|
|
157
159
|
export type IconInput = IconName | React$1.ReactElement;
|
|
158
|
-
export type IconName = "check" | "x" | "plus" | "minus" | "search" | "chevron-down" | "chevron-up" | "chevron-left" | "chevron-right" | "arrow-right" | "arrow-up-right" | "arrow-up-down" | "loader-circle" | "circle-alert" | "circle-check" | "info" | "triangle-alert" | "settings" | "user" | "users" | "filter" | "ellipsis" | "external-link" | "copy" | "trash-2" | "pencil" | "download" | "upload" | "calendar" | "bell" | "menu" | "eye" | "log-out" | "circle" | "circle-dot-dashed" | "ban" | "arrow-up" | "arrow-down" | "inbox" | "pin" | "pin-off" | "eye-off" | "columns-3" | "arrow-left" | "rotate-ccw" | "house" | "layout-dashboard" | "folder" | "chart-column" | "file-text" | "mail" | "lock" | "clock" | "trending-up" | "trending-down" | "image" | "paperclip" | "cloud-upload" | "file" | "sun" | "moon" | "monitor";
|
|
160
|
+
export type IconName = "check" | "x" | "plus" | "minus" | "search" | "chevron-down" | "chevron-up" | "chevron-left" | "chevron-right" | "arrow-right" | "arrow-up-right" | "arrow-up-down" | "loader-circle" | "circle-alert" | "circle-check" | "info" | "triangle-alert" | "settings" | "user" | "users" | "filter" | "ellipsis" | "external-link" | "copy" | "trash-2" | "pencil" | "download" | "upload" | "calendar" | "bell" | "menu" | "eye" | "log-out" | "circle" | "circle-dot-dashed" | "ban" | "arrow-up" | "arrow-down" | "inbox" | "pin" | "pin-off" | "eye-off" | "columns-3" | "arrow-left" | "rotate-ccw" | "house" | "layout-dashboard" | "folder" | "chart-column" | "file-text" | "mail" | "lock" | "clock" | "trending-up" | "trending-down" | "image" | "paperclip" | "cloud-upload" | "file" | "sun" | "moon" | "monitor" | "panel-left-close" | "panel-left-open";
|
|
159
161
|
/** Lucide stroke icon drawn inline in currentColor. */
|
|
160
162
|
export interface IconProps {
|
|
161
163
|
/** A name from the set, or an icon element of your own (sized and styled the same way). */
|
|
@@ -184,6 +186,8 @@ export interface AuraProviderProps {
|
|
|
184
186
|
calendar?: "buddhist" | "gregory";
|
|
185
187
|
/** Override individual strings. */
|
|
186
188
|
strings?: Partial<Record<string, string | ((...args: any[]) => string)>>;
|
|
189
|
+
/** `compact`: 36px fields and buttons, 40px table rows — dense admin screens. Touch screens keep 44px. Default: comfortable (or an ancestor's `data-density`). */
|
|
190
|
+
density?: "comfortable" | "compact";
|
|
187
191
|
/** Your router's link (e.g. `Link` from `next/link`), used by every AURA component that renders a link: Button with `href`, SideNav, Breadcrumb, Stat, Pagination, DataTable row links. It gets `href`, `className`, `aria-current`, the children and the ref. A component's own `linkComponent` wins. */
|
|
188
192
|
linkComponent?: React$1.ElementType;
|
|
189
193
|
children?: React$1.ReactNode;
|
|
@@ -525,6 +529,15 @@ export interface SideNavProps {
|
|
|
525
529
|
label?: string;
|
|
526
530
|
/** Router link for items with `href`; defaults to the AuraProvider's `linkComponent`, then `<a>`. */
|
|
527
531
|
linkComponent?: React$1.ElementType;
|
|
532
|
+
/** Icon-only rail (`aura-sidenav-rail-width`, 64px). Labels show as tooltips and stay the accessible names; a group
|
|
533
|
+
* expands the rail when clicked. Controlled; pair with `onCollapsedChange`. */
|
|
534
|
+
collapsed?: boolean;
|
|
535
|
+
/** Starting state when `collapsed` isn't controlled. Default false. */
|
|
536
|
+
defaultCollapsed?: boolean;
|
|
537
|
+
/** Called by the toggle button, and by a group clicked in the rail (with `false`). Save it to keep the choice. */
|
|
538
|
+
onCollapsedChange?: (collapsed: boolean) => void;
|
|
539
|
+
/** Adds a collapse / expand button at the bottom. AppShell hides it in its phone drawer. */
|
|
540
|
+
collapsible?: boolean;
|
|
528
541
|
className?: string;
|
|
529
542
|
}
|
|
530
543
|
export interface BreadcrumbProps {
|
|
@@ -1147,6 +1160,8 @@ export interface AuraStrings {
|
|
|
1147
1160
|
breadcrumb: string;
|
|
1148
1161
|
navigation: string;
|
|
1149
1162
|
openNav: string;
|
|
1163
|
+
collapseNav: string;
|
|
1164
|
+
expandNav: string;
|
|
1150
1165
|
searching: string;
|
|
1151
1166
|
noMatches: string;
|
|
1152
1167
|
clear: (what?: string) => string;
|
|
@@ -1216,11 +1231,15 @@ export interface AuraLocaleValue {
|
|
|
1216
1231
|
strings: AuraStrings;
|
|
1217
1232
|
/** The router link set on AuraProvider, if any. */
|
|
1218
1233
|
linkComponent?: React$1.ElementType | null;
|
|
1234
|
+
/** The density set on the nearest AuraProvider that sets one (null: none, i.e. comfortable unless an ancestor's data-density says otherwise). */
|
|
1235
|
+
density?: "comfortable" | "compact" | null;
|
|
1219
1236
|
}
|
|
1220
1237
|
/** Sets the language of built-in labels (and the default date locale) for everything inside. */
|
|
1221
1238
|
export declare function AuraProvider(props: AuraProviderProps): React$1.ReactElement;
|
|
1222
1239
|
/** { locale, calendar, strings } from the nearest AuraProvider (English strings when there is none). */
|
|
1223
1240
|
export declare function useAuraLocale(): AuraLocaleValue;
|
|
1241
|
+
/** The provider's density, for portals that render outside its wrapper. */
|
|
1242
|
+
export declare function useDensity(): "comfortable" | "compact" | undefined;
|
|
1224
1243
|
export declare const Stat: React$1.ForwardRefExoticComponent<StatProps & React$1.RefAttributes<HTMLElement>>;
|
|
1225
1244
|
/** Parse typed time: 9 · 09 · 930 · 0930 · 9:30 · 9.30 · 09.30 น. · 9:30 pm → "HH:mm" (24-hour) or null. */
|
|
1226
1245
|
export declare function parseTime(text: string | null | undefined): string | null;
|
package/figma-variables.csv
CHANGED
|
@@ -239,6 +239,7 @@ size/dialog-sm,number,light,400,,GAP
|
|
|
239
239
|
size/dialog-md,number,light,560,,GAP
|
|
240
240
|
size/dialog-lg,number,light,720,,GAP
|
|
241
241
|
size/sidenav-width,number,light,240,,GAP
|
|
242
|
+
size/sidenav-rail-width,number,light,64,SideNav collapsed to an icon-only rail (`collapsed`). ADDED 4.15.,GAP
|
|
242
243
|
size/tooltip-max,number,light,240,,GAP
|
|
243
244
|
size/drawer-sm,number,light,360,"Drawer width, small (filters, quick detail). ADDED 4.2.",GAP
|
|
244
245
|
size/drawer-md,number,light,480,"Drawer width, default (record detail). ADDED 4.2.",GAP
|
|
@@ -249,3 +250,4 @@ size/cal-cell,number,light,36,Calendar day cell (DatePicker). 40px on touch scre
|
|
|
249
250
|
size/popover-max-height,number,light,320,Max height of Combobox listbox and DatePicker popover lists. ADDED 4.2.,GAP
|
|
250
251
|
size/input-font-size,number,light,14,"Text size in inputs, textareas, selects and pickers. Phones (<640px) use at least 16px so iOS Safari does not zoom on focus. ADDED 4.11.",GAP
|
|
251
252
|
size/touch-target,number,light,44,"Minimum hit area on touch screens (pointer: coarse): IconButton, and Radio / Checkbox / Switch rows (WCAG 2.5.5). ADDED 4.11.",GAP
|
|
253
|
+
size/table-row-height,number,light,48,DataTable row and header height. 40px in compact density on fine pointers; 48px on touch. ADDED 4.14.,GAP
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jirawatpyk/aura-tokens",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.15.0",
|
|
4
4
|
"description": "AURA Design System — tokens (CSS variables, Tailwind preset, Figma variables), theme contrast checks and token lint.",
|
|
5
5
|
"main": "tailwind.tokens.cjs",
|
|
6
6
|
"types": "components/index.d.ts",
|
package/tokens.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"version": "4.
|
|
2
|
+
"version": "4.15.0",
|
|
3
3
|
"meta": {
|
|
4
4
|
"name": "AURA Design System",
|
|
5
5
|
"tier": "3-tier",
|
|
@@ -279,6 +279,7 @@
|
|
|
279
279
|
"dialog-md": "560px",
|
|
280
280
|
"dialog-lg": "720px",
|
|
281
281
|
"sidenav-width": "240px",
|
|
282
|
+
"sidenav-rail-width": "64px",
|
|
282
283
|
"tooltip-max": "240px",
|
|
283
284
|
"drawer-sm": "360px",
|
|
284
285
|
"drawer-md": "480px",
|
|
@@ -288,7 +289,8 @@
|
|
|
288
289
|
"cal-cell": "36px",
|
|
289
290
|
"popover-max-height": "320px",
|
|
290
291
|
"input-font-size": "14px",
|
|
291
|
-
"touch-target": "44px"
|
|
292
|
+
"touch-target": "44px",
|
|
293
|
+
"table-row-height": "48px"
|
|
292
294
|
},
|
|
293
295
|
"breakpoint": {
|
|
294
296
|
"bp-sm": "640px",
|
|
@@ -539,6 +541,8 @@
|
|
|
539
541
|
"progress-track": "Empty part of Progress and FileUpload bars (fill). Its edge carries the 3:1. ADDED 4.11.",
|
|
540
542
|
"progress-track-edge": "1px inset edge of Progress / upload tracks: ≥3:1 on bg-surface and bg-canvas in both themes (WCAG 1.4.11), so the track reads without the fill. ADDED 4.11.",
|
|
541
543
|
"input-font-size": "Text size in inputs, textareas, selects and pickers. Phones (<640px) use at least 16px so iOS Safari does not zoom on focus. ADDED 4.11.",
|
|
542
|
-
"touch-target": "Minimum hit area on touch screens (pointer: coarse): IconButton, and Radio / Checkbox / Switch rows (WCAG 2.5.5). ADDED 4.11."
|
|
544
|
+
"touch-target": "Minimum hit area on touch screens (pointer: coarse): IconButton, and Radio / Checkbox / Switch rows (WCAG 2.5.5). ADDED 4.11.",
|
|
545
|
+
"table-row-height": "DataTable row and header height. 40px in compact density on fine pointers; 48px on touch. ADDED 4.14.",
|
|
546
|
+
"sidenav-rail-width": "SideNav collapsed to an icon-only rail (`collapsed`). ADDED 4.15."
|
|
543
547
|
}
|
|
544
548
|
}
|