@jirawatpyk/aura-react 5.14.0 → 5.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/README.md +13 -0
- package/dist/aura.bundle.js +153 -21
- package/dist/cjs/index.cjs +153 -21
- package/dist/esm/Breadcrumb.js +76 -6
- package/dist/esm/Button.js +6 -2
- package/dist/esm/Checkbox.js +12 -2
- package/dist/esm/FilterBar.js +7 -1
- package/dist/esm/IconButton.js +7 -2
- package/dist/esm/Progress.js +14 -2
- package/dist/esm/Table.js +5 -2
- package/dist/esm/Tabs.js +7 -1
- package/dist/esm/display.js +8 -3
- package/dist/esm/strings.js +4 -0
- package/dist/esm/strings.sv.js +4 -0
- package/dist/esm/strings.th.js +4 -0
- package/dist/index.d.cts +57 -4
- package/dist/index.d.ts +57 -4
- package/dist/locales/sv.cjs +4 -0
- package/dist/locales/sv.d.cts +4 -0
- package/dist/locales/sv.d.ts +4 -0
- package/dist/locales/th.cjs +4 -0
- package/dist/locales/th.d.cts +4 -0
- package/dist/locales/th.d.ts +4 -0
- package/dist/server/index.cjs +20 -3
- package/dist/server/index.d.cts +14 -0
- package/dist/server/index.d.ts +14 -0
- package/dist/server/index.js +20 -3
- package/dist/styles.css +96 -0
- package/dist/styles.layer.css +96 -0
- package/package.json +1 -1
package/dist/esm/display.js
CHANGED
|
@@ -52,8 +52,11 @@ function cardElement(props, ref) {
|
|
|
52
52
|
"interactive",
|
|
53
53
|
"as",
|
|
54
54
|
"className",
|
|
55
|
-
"titleId"
|
|
55
|
+
"titleId",
|
|
56
|
+
"header",
|
|
57
|
+
"flushBelow"
|
|
56
58
|
]);
|
|
59
|
+
const head = props.header !== void 0 && props.header !== null && props.header !== false;
|
|
57
60
|
return h(
|
|
58
61
|
props.as || "section",
|
|
59
62
|
Object.assign({}, rest, {
|
|
@@ -62,12 +65,13 @@ function cardElement(props, ref) {
|
|
|
62
65
|
"aura-card",
|
|
63
66
|
creative && "aura-card--creative",
|
|
64
67
|
props.interactive && "is-interactive",
|
|
68
|
+
props.flushBelow && "aura-card--flush-below-" + props.flushBelow,
|
|
65
69
|
props.className
|
|
66
70
|
),
|
|
67
71
|
/* A titled card is labelled by its title; otherwise the caller's aria-labelledby stays (5.8). */
|
|
68
|
-
"aria-labelledby": props.title && props.titleId ? props.titleId : props["aria-labelledby"]
|
|
72
|
+
"aria-labelledby": !head && props.title && props.titleId ? props.titleId : props["aria-labelledby"]
|
|
69
73
|
}),
|
|
70
|
-
props.title || props.actions ? /* @__PURE__ */ React.createElement("div", { className: "aura-card__head" }, /* @__PURE__ */ React.createElement("div", { className: "aura-card__heading" }, props.title ? h("h" + (props.headingLevel || 3), { className: "aura-card__title", id: props.titleId }, props.title) : null, props.description ? /* @__PURE__ */ React.createElement("p", { className: "aura-card__desc" }, props.description) : null), props.actions ? /* @__PURE__ */ React.createElement("div", { className: "aura-card__actions" }, props.actions) : null) : null,
|
|
74
|
+
head || props.title || props.actions ? /* @__PURE__ */ React.createElement("div", { className: "aura-card__head" }, /* @__PURE__ */ React.createElement("div", { className: "aura-card__heading" }, head ? props.header : null, !head && props.title ? h("h" + (props.headingLevel || 3), { className: "aura-card__title", id: props.titleId }, props.title) : null, !head && props.description ? /* @__PURE__ */ React.createElement("p", { className: "aura-card__desc" }, props.description) : null), props.actions ? /* @__PURE__ */ React.createElement("div", { className: "aura-card__actions" }, props.actions) : null) : null,
|
|
71
75
|
props.children ? /* @__PURE__ */ React.createElement("div", { className: "aura-card__body" }, props.children) : null,
|
|
72
76
|
props.footer ? /* @__PURE__ */ React.createElement("div", { className: "aura-card__foot" }, props.footer) : null
|
|
73
77
|
);
|
|
@@ -202,6 +206,7 @@ function buttonClass(opts = {}) {
|
|
|
202
206
|
"aura-btn--" + (opts.variant || "primary"),
|
|
203
207
|
opts.size === "sm" && "aura-btn--sm",
|
|
204
208
|
opts.fullWidth && "aura-btn--full",
|
|
209
|
+
opts.touchHeight && "aura-btn--touch",
|
|
205
210
|
opts.loading && "is-loading",
|
|
206
211
|
opts.className
|
|
207
212
|
);
|
package/dist/esm/strings.js
CHANGED
|
@@ -122,6 +122,10 @@ const STRINGS = {
|
|
|
122
122
|
pageN: function(p) {
|
|
123
123
|
return "Page " + p;
|
|
124
124
|
},
|
|
125
|
+
progressReserved: function(v, r, max) {
|
|
126
|
+
return n(v) + " of " + n(max) + " used, " + n(r) + " reserved";
|
|
127
|
+
},
|
|
128
|
+
breadcrumbMore: "Show the full path",
|
|
125
129
|
accepts: function(list, max) {
|
|
126
130
|
return [list, max && "up to " + max + " each"].filter(Boolean).join(", ");
|
|
127
131
|
}
|
package/dist/esm/strings.sv.js
CHANGED
|
@@ -118,6 +118,10 @@ const sv = {
|
|
|
118
118
|
pageN: function(p) {
|
|
119
119
|
return "Sida " + p;
|
|
120
120
|
},
|
|
121
|
+
progressReserved: function(v, r, max) {
|
|
122
|
+
return nsv(v) + " av " + nsv(max) + " anv\xE4nda, " + nsv(r) + " reserverade";
|
|
123
|
+
},
|
|
124
|
+
breadcrumbMore: "Visa hela s\xF6kv\xE4gen",
|
|
121
125
|
accepts: function(list, max) {
|
|
122
126
|
return [list, max && "h\xF6gst " + max + " per fil"].filter(Boolean).join(", ");
|
|
123
127
|
}
|
package/dist/esm/strings.th.js
CHANGED
|
@@ -118,6 +118,10 @@ const th = {
|
|
|
118
118
|
pageN: function(p) {
|
|
119
119
|
return "\u0E2B\u0E19\u0E49\u0E32 " + p;
|
|
120
120
|
},
|
|
121
|
+
progressReserved: function(v, r, max) {
|
|
122
|
+
return "\u0E43\u0E0A\u0E49\u0E41\u0E25\u0E49\u0E27 " + n(v) + " \u0E08\u0E32\u0E01 " + n(max) + " \u0E08\u0E2D\u0E07\u0E44\u0E27\u0E49 " + n(r);
|
|
123
|
+
},
|
|
124
|
+
breadcrumbMore: "\u0E41\u0E2A\u0E14\u0E07\u0E40\u0E2A\u0E49\u0E19\u0E17\u0E32\u0E07\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14",
|
|
121
125
|
accepts: function(list, max) {
|
|
122
126
|
return [list, max && "\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19 " + max + " \u0E15\u0E48\u0E2D\u0E44\u0E1F\u0E25\u0E4C"].filter(Boolean).join(" \xB7 ");
|
|
123
127
|
}
|
package/dist/index.d.cts
CHANGED
|
@@ -20,6 +20,9 @@ export interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElem
|
|
|
20
20
|
fullWidth?: boolean | undefined;
|
|
21
21
|
/** `sm` is 32px with tighter padding, for toolbars, table rows and card footers. Default `md` (44px). */
|
|
22
22
|
size?: ButtonSize | undefined;
|
|
23
|
+
/** 44px tall below 640px (the viewport's), whatever `size` — a small button that phones get at full touch height
|
|
24
|
+
* (5.15, Chamber-OS 100). From 640px up it keeps its size. */
|
|
25
|
+
touchHeight?: boolean | undefined;
|
|
23
26
|
}
|
|
24
27
|
/** A link that looks like a Button: give `Button` an `href` and it renders an `<a>` (navigation, not actions). */
|
|
25
28
|
export interface ButtonLinkProps extends Omit<React$1.AnchorHTMLAttributes<HTMLAnchorElement>, "children"> {
|
|
@@ -38,6 +41,9 @@ export interface ButtonLinkProps extends Omit<React$1.AnchorHTMLAttributes<HTMLA
|
|
|
38
41
|
fullWidth?: boolean | undefined;
|
|
39
42
|
/** `sm` is 32px with tighter padding. Default `md` (44px). */
|
|
40
43
|
size?: ButtonSize | undefined;
|
|
44
|
+
/** 44px tall below 640px (the viewport's), whatever `size` — a small button that phones get at full touch height
|
|
45
|
+
* (5.15, Chamber-OS 100). From 640px up it keeps its size. */
|
|
46
|
+
touchHeight?: boolean | undefined;
|
|
41
47
|
/** A router's link to render instead of `<a>`, e.g. `Link` from `next/link` (client-side navigation). It gets `href`, `className`, the children and the ref. */
|
|
42
48
|
linkComponent?: React$1.ElementType | undefined;
|
|
43
49
|
}
|
|
@@ -279,6 +285,13 @@ export interface CheckboxProps extends Omit<React$1.InputHTMLAttributes<HTMLInpu
|
|
|
279
285
|
disabled?: boolean | undefined;
|
|
280
286
|
tabIndex?: number | undefined;
|
|
281
287
|
className?: string | undefined;
|
|
288
|
+
/** How far a click counts around a box without visible text (5.15, Chamber-OS 99): `box` (default, 16×16),
|
|
289
|
+
* `target` (24×24, WCAG 2.5.8, as DataTable's selection column) or `{ x, y }` — px added on each side, so
|
|
290
|
+
* `{ x: 12, y: 8 }` is a 40×32 area. The box looks the same; a labelled checkbox's whole label is its target. */
|
|
291
|
+
hitArea?: "box" | "target" | {
|
|
292
|
+
x: number;
|
|
293
|
+
y: number;
|
|
294
|
+
} | undefined;
|
|
282
295
|
}
|
|
283
296
|
/** 32px round button holding one icon. */
|
|
284
297
|
export interface IconButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
@@ -289,6 +302,9 @@ export interface IconButtonProps extends React$1.ButtonHTMLAttributes<HTMLButton
|
|
|
289
302
|
label: string;
|
|
290
303
|
/** Icon size. Default `sm` (16). */
|
|
291
304
|
size?: "sm" | "md" | undefined;
|
|
305
|
+
/** 44×44 below 640px (the viewport's) instead of 32×32 — a phone sheet's close button, a card's ⋯ trigger
|
|
306
|
+
* (5.15, Chamber-OS 100). */
|
|
307
|
+
touchHeight?: boolean | undefined;
|
|
292
308
|
}
|
|
293
309
|
export interface MenuItem {
|
|
294
310
|
label?: string | undefined;
|
|
@@ -415,6 +431,12 @@ export interface FilterBarProps {
|
|
|
415
431
|
/** The search takes all the room the controls leave in its row, instead of stopping at 360px with the count and
|
|
416
432
|
* actions pushed to the end (5.12). */
|
|
417
433
|
searchGrow?: boolean | undefined;
|
|
434
|
+
/** `fill`: the filter controls share their row in equal columns (at least 120px each, wrapping when they can't),
|
|
435
|
+
* and the count and actions keep to the end (5.15, Chamber-OS 92). Default `auto`: each at its own width. */
|
|
436
|
+
controlsLayout?: "auto" | "fill" | undefined;
|
|
437
|
+
/** Below this width (the viewport's) the search takes a row of its own above the controls. Default `md` (768px);
|
|
438
|
+
* `lg` (1024px) for bars with several filters (5.15, Chamber-OS 92). */
|
|
439
|
+
stackBelow?: "md" | "lg" | undefined;
|
|
418
440
|
className?: string | undefined;
|
|
419
441
|
}
|
|
420
442
|
/** One command in the palette. */
|
|
@@ -623,6 +645,12 @@ export interface CardProps extends Omit<React$1.HTMLAttributes<HTMLElement>, "ti
|
|
|
623
645
|
className?: string | undefined;
|
|
624
646
|
/** id for the title element; the card is then labelled by it (aria-labelledby). */
|
|
625
647
|
titleId?: string | undefined;
|
|
648
|
+
/** Free head content in place of `title` and `description` (5.15, Chamber-OS 87): skeleton bars while the card
|
|
649
|
+
* loads, a status pill above a title you mark up yourself. No heading is added; `actions` still sit top-right. */
|
|
650
|
+
header?: React$1.ReactNode | undefined;
|
|
651
|
+
/** Below this width (the viewport's) the card drops its border, surface and shadow — a list whose rows become
|
|
652
|
+
* cards of their own on a phone, so there are no cards in a card (5.15, Chamber-OS 93). Padding is kept. */
|
|
653
|
+
flushBelow?: "sm" | "md" | "lg" | undefined;
|
|
626
654
|
}
|
|
627
655
|
export interface TabItem {
|
|
628
656
|
id: string;
|
|
@@ -658,8 +686,10 @@ export interface TabsProps {
|
|
|
658
686
|
/** `underline` (default) or `segmented`: the tabs as a pill track with the selected one raised, like
|
|
659
687
|
* SegmentedControl, keeping every Tabs behaviour (panels, keepMounted, activation, tabProps). (5.10, Chamber-OS 72) */
|
|
660
688
|
variant?: "underline" | "segmented" | undefined;
|
|
661
|
-
/**
|
|
662
|
-
|
|
689
|
+
/** Tabs share the full width equally: the segmented track (5.10), or underline tabs (5.15, Chamber-OS 90).
|
|
690
|
+
* `'below-sm' | 'below-md' | 'below-lg'` only below that width (the viewport's) — `below-lg` for phone and tablet
|
|
691
|
+
* layouts, tabs at their own width on a desktop. */
|
|
692
|
+
fullWidth?: boolean | "below-sm" | "below-md" | "below-lg" | undefined;
|
|
663
693
|
/** Link tabs: what the current link is (5.14). `page` (default) for routes; `location` for links to sections of
|
|
664
694
|
* this page (`#contacts`). */
|
|
665
695
|
current?: "page" | "location" | undefined;
|
|
@@ -713,8 +743,16 @@ export interface BreadcrumbProps {
|
|
|
713
743
|
label: string;
|
|
714
744
|
href?: string | undefined;
|
|
715
745
|
onClick?: (() => void) | undefined;
|
|
746
|
+
/** Attributes for this item's `<li>` — `data-slot`, `data-testid` (5.15, Chamber-OS 94). */
|
|
747
|
+
itemProps?: (React$1.LiHTMLAttributes<HTMLLIElement> & DataAttributes) | undefined;
|
|
748
|
+
/** Attributes for the item's link, button or text (5.15): `data-*`, `target`, `rel`… Its `onClick` runs before
|
|
749
|
+
* the item's own. */
|
|
750
|
+
linkProps?: (React$1.AnchorHTMLAttributes<HTMLAnchorElement> & Omit<React$1.ButtonHTMLAttributes<HTMLButtonElement>, keyof React$1.AnchorHTMLAttributes<HTMLAnchorElement>> & DataAttributes) | undefined;
|
|
716
751
|
}>;
|
|
717
752
|
label?: string | undefined;
|
|
753
|
+
/** Below this width (the viewport's) a trail of three or more shows the first item, "…" and the last; the "…"
|
|
754
|
+
* button shows the rest (5.15, Chamber-OS 94). Decided in CSS, so the server's HTML is already right. */
|
|
755
|
+
collapseBelow?: "sm" | "md" | undefined;
|
|
718
756
|
/** Your router's link (e.g. `Link` from `next/link`) for this component; defaults to AuraProvider's `linkComponent`, then `<a>`. */
|
|
719
757
|
linkComponent?: React$1.ElementType | undefined;
|
|
720
758
|
className?: string | undefined;
|
|
@@ -956,8 +994,11 @@ export interface DrawerProps extends Pick<React$1.HTMLAttributes<HTMLDivElement>
|
|
|
956
994
|
/** The close button's accessible name and tooltip, saying what it closes ("Close payment drawer"). Default: the
|
|
957
995
|
* built-in "Close" in the provider's language. (5.9) */
|
|
958
996
|
closeLabel?: string | undefined;
|
|
959
|
-
/** Attributes for the close button, e.g. `{ 'data-testid': 'pay-sheet-close' }
|
|
960
|
-
|
|
997
|
+
/** Attributes for the close button, e.g. `{ 'data-testid': 'pay-sheet-close' }` (5.9), or `touchHeight: true` for a
|
|
998
|
+
* 44px close button on phones (5.15). */
|
|
999
|
+
closeProps?: (ButtonAttributes & {
|
|
1000
|
+
touchHeight?: boolean | undefined;
|
|
1001
|
+
}) | undefined;
|
|
961
1002
|
}
|
|
962
1003
|
export type Breakpoint = "base" | "sm" | "md" | "lg" | "xl";
|
|
963
1004
|
export type Responsive<T> = T | Partial<Record<Breakpoint, T>>;
|
|
@@ -1027,6 +1068,10 @@ export interface TableProps extends Omit<React$1.TableHTMLAttributes<HTMLTableEl
|
|
|
1027
1068
|
/** `false` (5.13) drops the frame — border, radius, background — and the outer cells' side padding, so the table
|
|
1028
1069
|
* lines up with the content around it, e.g. flush inside a Card under its heading. Default `true`. */
|
|
1029
1070
|
bordered?: boolean | undefined;
|
|
1071
|
+
/** How stacked rows look (5.15, Chamber-OS 85): `list` (default) — one frame, rows divided by rules; `cards` —
|
|
1072
|
+
* each row its own framed card, spaced like DataTable's cards, with no frame around them. From the `stackBelow`
|
|
1073
|
+
* width up the table is unchanged. The table then sits in one more `div` (`.aura-tbl-cards`). */
|
|
1074
|
+
stackStyle?: "list" | "cards" | undefined;
|
|
1030
1075
|
className?: string | undefined;
|
|
1031
1076
|
children?: React$1.ReactNode | undefined;
|
|
1032
1077
|
}
|
|
@@ -1213,6 +1258,9 @@ export interface ProgressProps {
|
|
|
1213
1258
|
showValue?: boolean | undefined;
|
|
1214
1259
|
/** Replaces the % text, e.g. "3 of 5 files". Also read out as aria-valuetext. */
|
|
1215
1260
|
valueLabel?: React$1.ReactNode | undefined;
|
|
1261
|
+
/** A reserved amount drawn after `value` as a striped segment of the same tone — queued sends on a quota
|
|
1262
|
+
* (5.15, Chamber-OS 89). Both counts are read out ("2 of 6 used, 1 reserved") unless `valueLabel` is given. */
|
|
1263
|
+
secondaryValue?: number | undefined;
|
|
1216
1264
|
hint?: React$1.ReactNode | undefined;
|
|
1217
1265
|
tone?: Tone | undefined;
|
|
1218
1266
|
size?: "sm" | "md" | undefined;
|
|
@@ -1429,6 +1477,7 @@ export declare function buttonClass(opts?: {
|
|
|
1429
1477
|
size?: ButtonProps["size"];
|
|
1430
1478
|
fullWidth?: boolean | undefined;
|
|
1431
1479
|
loading?: boolean | undefined;
|
|
1480
|
+
touchHeight?: boolean | undefined;
|
|
1432
1481
|
className?: string | undefined;
|
|
1433
1482
|
}): string;
|
|
1434
1483
|
export declare const Alert: React$1.ForwardRefExoticComponent<AlertProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
@@ -1612,6 +1661,10 @@ export interface AuraStrings {
|
|
|
1612
1661
|
pagination: string;
|
|
1613
1662
|
pageN: (p: number) => string;
|
|
1614
1663
|
accepts: (list?: string, max?: number | string) => string;
|
|
1664
|
+
/** Progress with a reserved segment (5.15): "2 of 6 used, 1 reserved". */
|
|
1665
|
+
progressReserved: (value: number, reserved: number, max: number) => string;
|
|
1666
|
+
/** The collapsed middle of a Breadcrumb (5.15). */
|
|
1667
|
+
breadcrumbMore: string;
|
|
1615
1668
|
}
|
|
1616
1669
|
/** Built-in strings by locale. th and sv also ship as packs (`@jirawatpyk/aura-react/locales/th`, `/sv`, 5.9); in 6.0
|
|
1617
1670
|
* only en stays built in and a Thai or Swedish app passes its pack to AuraProvider `strings`. */
|
package/dist/index.d.ts
CHANGED
|
@@ -20,6 +20,9 @@ export interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElem
|
|
|
20
20
|
fullWidth?: boolean | undefined;
|
|
21
21
|
/** `sm` is 32px with tighter padding, for toolbars, table rows and card footers. Default `md` (44px). */
|
|
22
22
|
size?: ButtonSize | undefined;
|
|
23
|
+
/** 44px tall below 640px (the viewport's), whatever `size` — a small button that phones get at full touch height
|
|
24
|
+
* (5.15, Chamber-OS 100). From 640px up it keeps its size. */
|
|
25
|
+
touchHeight?: boolean | undefined;
|
|
23
26
|
}
|
|
24
27
|
/** A link that looks like a Button: give `Button` an `href` and it renders an `<a>` (navigation, not actions). */
|
|
25
28
|
export interface ButtonLinkProps extends Omit<React$1.AnchorHTMLAttributes<HTMLAnchorElement>, "children"> {
|
|
@@ -38,6 +41,9 @@ export interface ButtonLinkProps extends Omit<React$1.AnchorHTMLAttributes<HTMLA
|
|
|
38
41
|
fullWidth?: boolean | undefined;
|
|
39
42
|
/** `sm` is 32px with tighter padding. Default `md` (44px). */
|
|
40
43
|
size?: ButtonSize | undefined;
|
|
44
|
+
/** 44px tall below 640px (the viewport's), whatever `size` — a small button that phones get at full touch height
|
|
45
|
+
* (5.15, Chamber-OS 100). From 640px up it keeps its size. */
|
|
46
|
+
touchHeight?: boolean | undefined;
|
|
41
47
|
/** A router's link to render instead of `<a>`, e.g. `Link` from `next/link` (client-side navigation). It gets `href`, `className`, the children and the ref. */
|
|
42
48
|
linkComponent?: React$1.ElementType | undefined;
|
|
43
49
|
}
|
|
@@ -279,6 +285,13 @@ export interface CheckboxProps extends Omit<React$1.InputHTMLAttributes<HTMLInpu
|
|
|
279
285
|
disabled?: boolean | undefined;
|
|
280
286
|
tabIndex?: number | undefined;
|
|
281
287
|
className?: string | undefined;
|
|
288
|
+
/** How far a click counts around a box without visible text (5.15, Chamber-OS 99): `box` (default, 16×16),
|
|
289
|
+
* `target` (24×24, WCAG 2.5.8, as DataTable's selection column) or `{ x, y }` — px added on each side, so
|
|
290
|
+
* `{ x: 12, y: 8 }` is a 40×32 area. The box looks the same; a labelled checkbox's whole label is its target. */
|
|
291
|
+
hitArea?: "box" | "target" | {
|
|
292
|
+
x: number;
|
|
293
|
+
y: number;
|
|
294
|
+
} | undefined;
|
|
282
295
|
}
|
|
283
296
|
/** 32px round button holding one icon. */
|
|
284
297
|
export interface IconButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElement> {
|
|
@@ -289,6 +302,9 @@ export interface IconButtonProps extends React$1.ButtonHTMLAttributes<HTMLButton
|
|
|
289
302
|
label: string;
|
|
290
303
|
/** Icon size. Default `sm` (16). */
|
|
291
304
|
size?: "sm" | "md" | undefined;
|
|
305
|
+
/** 44×44 below 640px (the viewport's) instead of 32×32 — a phone sheet's close button, a card's ⋯ trigger
|
|
306
|
+
* (5.15, Chamber-OS 100). */
|
|
307
|
+
touchHeight?: boolean | undefined;
|
|
292
308
|
}
|
|
293
309
|
export interface MenuItem {
|
|
294
310
|
label?: string | undefined;
|
|
@@ -415,6 +431,12 @@ export interface FilterBarProps {
|
|
|
415
431
|
/** The search takes all the room the controls leave in its row, instead of stopping at 360px with the count and
|
|
416
432
|
* actions pushed to the end (5.12). */
|
|
417
433
|
searchGrow?: boolean | undefined;
|
|
434
|
+
/** `fill`: the filter controls share their row in equal columns (at least 120px each, wrapping when they can't),
|
|
435
|
+
* and the count and actions keep to the end (5.15, Chamber-OS 92). Default `auto`: each at its own width. */
|
|
436
|
+
controlsLayout?: "auto" | "fill" | undefined;
|
|
437
|
+
/** Below this width (the viewport's) the search takes a row of its own above the controls. Default `md` (768px);
|
|
438
|
+
* `lg` (1024px) for bars with several filters (5.15, Chamber-OS 92). */
|
|
439
|
+
stackBelow?: "md" | "lg" | undefined;
|
|
418
440
|
className?: string | undefined;
|
|
419
441
|
}
|
|
420
442
|
/** One command in the palette. */
|
|
@@ -623,6 +645,12 @@ export interface CardProps extends Omit<React$1.HTMLAttributes<HTMLElement>, "ti
|
|
|
623
645
|
className?: string | undefined;
|
|
624
646
|
/** id for the title element; the card is then labelled by it (aria-labelledby). */
|
|
625
647
|
titleId?: string | undefined;
|
|
648
|
+
/** Free head content in place of `title` and `description` (5.15, Chamber-OS 87): skeleton bars while the card
|
|
649
|
+
* loads, a status pill above a title you mark up yourself. No heading is added; `actions` still sit top-right. */
|
|
650
|
+
header?: React$1.ReactNode | undefined;
|
|
651
|
+
/** Below this width (the viewport's) the card drops its border, surface and shadow — a list whose rows become
|
|
652
|
+
* cards of their own on a phone, so there are no cards in a card (5.15, Chamber-OS 93). Padding is kept. */
|
|
653
|
+
flushBelow?: "sm" | "md" | "lg" | undefined;
|
|
626
654
|
}
|
|
627
655
|
export interface TabItem {
|
|
628
656
|
id: string;
|
|
@@ -658,8 +686,10 @@ export interface TabsProps {
|
|
|
658
686
|
/** `underline` (default) or `segmented`: the tabs as a pill track with the selected one raised, like
|
|
659
687
|
* SegmentedControl, keeping every Tabs behaviour (panels, keepMounted, activation, tabProps). (5.10, Chamber-OS 72) */
|
|
660
688
|
variant?: "underline" | "segmented" | undefined;
|
|
661
|
-
/**
|
|
662
|
-
|
|
689
|
+
/** Tabs share the full width equally: the segmented track (5.10), or underline tabs (5.15, Chamber-OS 90).
|
|
690
|
+
* `'below-sm' | 'below-md' | 'below-lg'` only below that width (the viewport's) — `below-lg` for phone and tablet
|
|
691
|
+
* layouts, tabs at their own width on a desktop. */
|
|
692
|
+
fullWidth?: boolean | "below-sm" | "below-md" | "below-lg" | undefined;
|
|
663
693
|
/** Link tabs: what the current link is (5.14). `page` (default) for routes; `location` for links to sections of
|
|
664
694
|
* this page (`#contacts`). */
|
|
665
695
|
current?: "page" | "location" | undefined;
|
|
@@ -713,8 +743,16 @@ export interface BreadcrumbProps {
|
|
|
713
743
|
label: string;
|
|
714
744
|
href?: string | undefined;
|
|
715
745
|
onClick?: (() => void) | undefined;
|
|
746
|
+
/** Attributes for this item's `<li>` — `data-slot`, `data-testid` (5.15, Chamber-OS 94). */
|
|
747
|
+
itemProps?: (React$1.LiHTMLAttributes<HTMLLIElement> & DataAttributes) | undefined;
|
|
748
|
+
/** Attributes for the item's link, button or text (5.15): `data-*`, `target`, `rel`… Its `onClick` runs before
|
|
749
|
+
* the item's own. */
|
|
750
|
+
linkProps?: (React$1.AnchorHTMLAttributes<HTMLAnchorElement> & Omit<React$1.ButtonHTMLAttributes<HTMLButtonElement>, keyof React$1.AnchorHTMLAttributes<HTMLAnchorElement>> & DataAttributes) | undefined;
|
|
716
751
|
}>;
|
|
717
752
|
label?: string | undefined;
|
|
753
|
+
/** Below this width (the viewport's) a trail of three or more shows the first item, "…" and the last; the "…"
|
|
754
|
+
* button shows the rest (5.15, Chamber-OS 94). Decided in CSS, so the server's HTML is already right. */
|
|
755
|
+
collapseBelow?: "sm" | "md" | undefined;
|
|
718
756
|
/** Your router's link (e.g. `Link` from `next/link`) for this component; defaults to AuraProvider's `linkComponent`, then `<a>`. */
|
|
719
757
|
linkComponent?: React$1.ElementType | undefined;
|
|
720
758
|
className?: string | undefined;
|
|
@@ -956,8 +994,11 @@ export interface DrawerProps extends Pick<React$1.HTMLAttributes<HTMLDivElement>
|
|
|
956
994
|
/** The close button's accessible name and tooltip, saying what it closes ("Close payment drawer"). Default: the
|
|
957
995
|
* built-in "Close" in the provider's language. (5.9) */
|
|
958
996
|
closeLabel?: string | undefined;
|
|
959
|
-
/** Attributes for the close button, e.g. `{ 'data-testid': 'pay-sheet-close' }
|
|
960
|
-
|
|
997
|
+
/** Attributes for the close button, e.g. `{ 'data-testid': 'pay-sheet-close' }` (5.9), or `touchHeight: true` for a
|
|
998
|
+
* 44px close button on phones (5.15). */
|
|
999
|
+
closeProps?: (ButtonAttributes & {
|
|
1000
|
+
touchHeight?: boolean | undefined;
|
|
1001
|
+
}) | undefined;
|
|
961
1002
|
}
|
|
962
1003
|
export type Breakpoint = "base" | "sm" | "md" | "lg" | "xl";
|
|
963
1004
|
export type Responsive<T> = T | Partial<Record<Breakpoint, T>>;
|
|
@@ -1027,6 +1068,10 @@ export interface TableProps extends Omit<React$1.TableHTMLAttributes<HTMLTableEl
|
|
|
1027
1068
|
/** `false` (5.13) drops the frame — border, radius, background — and the outer cells' side padding, so the table
|
|
1028
1069
|
* lines up with the content around it, e.g. flush inside a Card under its heading. Default `true`. */
|
|
1029
1070
|
bordered?: boolean | undefined;
|
|
1071
|
+
/** How stacked rows look (5.15, Chamber-OS 85): `list` (default) — one frame, rows divided by rules; `cards` —
|
|
1072
|
+
* each row its own framed card, spaced like DataTable's cards, with no frame around them. From the `stackBelow`
|
|
1073
|
+
* width up the table is unchanged. The table then sits in one more `div` (`.aura-tbl-cards`). */
|
|
1074
|
+
stackStyle?: "list" | "cards" | undefined;
|
|
1030
1075
|
className?: string | undefined;
|
|
1031
1076
|
children?: React$1.ReactNode | undefined;
|
|
1032
1077
|
}
|
|
@@ -1213,6 +1258,9 @@ export interface ProgressProps {
|
|
|
1213
1258
|
showValue?: boolean | undefined;
|
|
1214
1259
|
/** Replaces the % text, e.g. "3 of 5 files". Also read out as aria-valuetext. */
|
|
1215
1260
|
valueLabel?: React$1.ReactNode | undefined;
|
|
1261
|
+
/** A reserved amount drawn after `value` as a striped segment of the same tone — queued sends on a quota
|
|
1262
|
+
* (5.15, Chamber-OS 89). Both counts are read out ("2 of 6 used, 1 reserved") unless `valueLabel` is given. */
|
|
1263
|
+
secondaryValue?: number | undefined;
|
|
1216
1264
|
hint?: React$1.ReactNode | undefined;
|
|
1217
1265
|
tone?: Tone | undefined;
|
|
1218
1266
|
size?: "sm" | "md" | undefined;
|
|
@@ -1429,6 +1477,7 @@ export declare function buttonClass(opts?: {
|
|
|
1429
1477
|
size?: ButtonProps["size"];
|
|
1430
1478
|
fullWidth?: boolean | undefined;
|
|
1431
1479
|
loading?: boolean | undefined;
|
|
1480
|
+
touchHeight?: boolean | undefined;
|
|
1432
1481
|
className?: string | undefined;
|
|
1433
1482
|
}): string;
|
|
1434
1483
|
export declare const Alert: React$1.ForwardRefExoticComponent<AlertProps & React$1.RefAttributes<HTMLDivElement>>;
|
|
@@ -1612,6 +1661,10 @@ export interface AuraStrings {
|
|
|
1612
1661
|
pagination: string;
|
|
1613
1662
|
pageN: (p: number) => string;
|
|
1614
1663
|
accepts: (list?: string, max?: number | string) => string;
|
|
1664
|
+
/** Progress with a reserved segment (5.15): "2 of 6 used, 1 reserved". */
|
|
1665
|
+
progressReserved: (value: number, reserved: number, max: number) => string;
|
|
1666
|
+
/** The collapsed middle of a Breadcrumb (5.15). */
|
|
1667
|
+
breadcrumbMore: string;
|
|
1615
1668
|
}
|
|
1616
1669
|
/** Built-in strings by locale. th and sv also ship as packs (`@jirawatpyk/aura-react/locales/th`, `/sv`, 5.9); in 6.0
|
|
1617
1670
|
* only en stays built in and a Thai or Swedish app passes its pack to AuraProvider `strings`. */
|
package/dist/locales/sv.cjs
CHANGED
|
@@ -143,6 +143,10 @@ var sv = {
|
|
|
143
143
|
pageN: function(p) {
|
|
144
144
|
return "Sida " + p;
|
|
145
145
|
},
|
|
146
|
+
progressReserved: function(v, r, max) {
|
|
147
|
+
return nsv(v) + " av " + nsv(max) + " anv\xE4nda, " + nsv(r) + " reserverade";
|
|
148
|
+
},
|
|
149
|
+
breadcrumbMore: "Visa hela s\xF6kv\xE4gen",
|
|
146
150
|
accepts: function(list, max) {
|
|
147
151
|
return [list, max && "h\xF6gst " + max + " per fil"].filter(Boolean).join(", ");
|
|
148
152
|
}
|
package/dist/locales/sv.d.cts
CHANGED
|
@@ -83,6 +83,10 @@ export interface AuraStrings {
|
|
|
83
83
|
pagination: string;
|
|
84
84
|
pageN: (p: number) => string;
|
|
85
85
|
accepts: (list?: string, max?: number | string) => string;
|
|
86
|
+
/** Progress with a reserved segment (5.15): "2 of 6 used, 1 reserved". */
|
|
87
|
+
progressReserved: (value: number, reserved: number, max: number) => string;
|
|
88
|
+
/** The collapsed middle of a Breadcrumb (5.15). */
|
|
89
|
+
breadcrumbMore: string;
|
|
86
90
|
}
|
|
87
91
|
/** Built-in strings by locale. th and sv also ship as packs (`@jirawatpyk/aura-react/locales/th`, `/sv`, 5.9); in 6.0
|
|
88
92
|
* only en stays built in and a Thai or Swedish app passes its pack to AuraProvider `strings`. */
|
package/dist/locales/sv.d.ts
CHANGED
|
@@ -83,6 +83,10 @@ export interface AuraStrings {
|
|
|
83
83
|
pagination: string;
|
|
84
84
|
pageN: (p: number) => string;
|
|
85
85
|
accepts: (list?: string, max?: number | string) => string;
|
|
86
|
+
/** Progress with a reserved segment (5.15): "2 of 6 used, 1 reserved". */
|
|
87
|
+
progressReserved: (value: number, reserved: number, max: number) => string;
|
|
88
|
+
/** The collapsed middle of a Breadcrumb (5.15). */
|
|
89
|
+
breadcrumbMore: string;
|
|
86
90
|
}
|
|
87
91
|
/** Built-in strings by locale. th and sv also ship as packs (`@jirawatpyk/aura-react/locales/th`, `/sv`, 5.9); in 6.0
|
|
88
92
|
* only en stays built in and a Thai or Swedish app passes its pack to AuraProvider `strings`. */
|
package/dist/locales/th.cjs
CHANGED
|
@@ -143,6 +143,10 @@ var th = {
|
|
|
143
143
|
pageN: function(p) {
|
|
144
144
|
return "\u0E2B\u0E19\u0E49\u0E32 " + p;
|
|
145
145
|
},
|
|
146
|
+
progressReserved: function(v, r, max) {
|
|
147
|
+
return "\u0E43\u0E0A\u0E49\u0E41\u0E25\u0E49\u0E27 " + n(v) + " \u0E08\u0E32\u0E01 " + n(max) + " \u0E08\u0E2D\u0E07\u0E44\u0E27\u0E49 " + n(r);
|
|
148
|
+
},
|
|
149
|
+
breadcrumbMore: "\u0E41\u0E2A\u0E14\u0E07\u0E40\u0E2A\u0E49\u0E19\u0E17\u0E32\u0E07\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14",
|
|
146
150
|
accepts: function(list, max) {
|
|
147
151
|
return [list, max && "\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19 " + max + " \u0E15\u0E48\u0E2D\u0E44\u0E1F\u0E25\u0E4C"].filter(Boolean).join(" \xB7 ");
|
|
148
152
|
}
|
package/dist/locales/th.d.cts
CHANGED
|
@@ -83,6 +83,10 @@ export interface AuraStrings {
|
|
|
83
83
|
pagination: string;
|
|
84
84
|
pageN: (p: number) => string;
|
|
85
85
|
accepts: (list?: string, max?: number | string) => string;
|
|
86
|
+
/** Progress with a reserved segment (5.15): "2 of 6 used, 1 reserved". */
|
|
87
|
+
progressReserved: (value: number, reserved: number, max: number) => string;
|
|
88
|
+
/** The collapsed middle of a Breadcrumb (5.15). */
|
|
89
|
+
breadcrumbMore: string;
|
|
86
90
|
}
|
|
87
91
|
/** Built-in strings by locale. th and sv also ship as packs (`@jirawatpyk/aura-react/locales/th`, `/sv`, 5.9); in 6.0
|
|
88
92
|
* only en stays built in and a Thai or Swedish app passes its pack to AuraProvider `strings`. */
|
package/dist/locales/th.d.ts
CHANGED
|
@@ -83,6 +83,10 @@ export interface AuraStrings {
|
|
|
83
83
|
pagination: string;
|
|
84
84
|
pageN: (p: number) => string;
|
|
85
85
|
accepts: (list?: string, max?: number | string) => string;
|
|
86
|
+
/** Progress with a reserved segment (5.15): "2 of 6 used, 1 reserved". */
|
|
87
|
+
progressReserved: (value: number, reserved: number, max: number) => string;
|
|
88
|
+
/** The collapsed middle of a Breadcrumb (5.15). */
|
|
89
|
+
breadcrumbMore: string;
|
|
86
90
|
}
|
|
87
91
|
/** Built-in strings by locale. th and sv also ship as packs (`@jirawatpyk/aura-react/locales/th`, `/sv`, 5.9); in 6.0
|
|
88
92
|
* only en stays built in and a Thai or Swedish app passes its pack to AuraProvider `strings`. */
|
package/dist/server/index.cjs
CHANGED
|
@@ -327,6 +327,10 @@ var th = {
|
|
|
327
327
|
pageN: function(p) {
|
|
328
328
|
return "\u0E2B\u0E19\u0E49\u0E32 " + p;
|
|
329
329
|
},
|
|
330
|
+
progressReserved: function(v, r, max) {
|
|
331
|
+
return "\u0E43\u0E0A\u0E49\u0E41\u0E25\u0E49\u0E27 " + n(v) + " \u0E08\u0E32\u0E01 " + n(max) + " \u0E08\u0E2D\u0E07\u0E44\u0E27\u0E49 " + n(r);
|
|
332
|
+
},
|
|
333
|
+
breadcrumbMore: "\u0E41\u0E2A\u0E14\u0E07\u0E40\u0E2A\u0E49\u0E19\u0E17\u0E32\u0E07\u0E17\u0E31\u0E49\u0E07\u0E2B\u0E21\u0E14",
|
|
330
334
|
accepts: function(list, max) {
|
|
331
335
|
return [list, max && "\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19 " + max + " \u0E15\u0E48\u0E2D\u0E44\u0E1F\u0E25\u0E4C"].filter(Boolean).join(" \xB7 ");
|
|
332
336
|
}
|
|
@@ -453,6 +457,10 @@ var sv = {
|
|
|
453
457
|
pageN: function(p) {
|
|
454
458
|
return "Sida " + p;
|
|
455
459
|
},
|
|
460
|
+
progressReserved: function(v, r, max) {
|
|
461
|
+
return nsv(v) + " av " + nsv(max) + " anv\xE4nda, " + nsv(r) + " reserverade";
|
|
462
|
+
},
|
|
463
|
+
breadcrumbMore: "Visa hela s\xF6kv\xE4gen",
|
|
456
464
|
accepts: function(list, max) {
|
|
457
465
|
return [list, max && "h\xF6gst " + max + " per fil"].filter(Boolean).join(", ");
|
|
458
466
|
}
|
|
@@ -580,6 +588,10 @@ var STRINGS = {
|
|
|
580
588
|
pageN: function(p) {
|
|
581
589
|
return "Page " + p;
|
|
582
590
|
},
|
|
591
|
+
progressReserved: function(v, r, max) {
|
|
592
|
+
return n2(v) + " of " + n2(max) + " used, " + n2(r) + " reserved";
|
|
593
|
+
},
|
|
594
|
+
breadcrumbMore: "Show the full path",
|
|
583
595
|
accepts: function(list, max) {
|
|
584
596
|
return [list, max && "up to " + max + " each"].filter(Boolean).join(", ");
|
|
585
597
|
}
|
|
@@ -1106,8 +1118,11 @@ function cardElement(props, ref) {
|
|
|
1106
1118
|
"interactive",
|
|
1107
1119
|
"as",
|
|
1108
1120
|
"className",
|
|
1109
|
-
"titleId"
|
|
1121
|
+
"titleId",
|
|
1122
|
+
"header",
|
|
1123
|
+
"flushBelow"
|
|
1110
1124
|
]);
|
|
1125
|
+
const head = props.header !== void 0 && props.header !== null && props.header !== false;
|
|
1111
1126
|
return h2(
|
|
1112
1127
|
props.as || "section",
|
|
1113
1128
|
Object.assign({}, rest, {
|
|
@@ -1116,12 +1131,13 @@ function cardElement(props, ref) {
|
|
|
1116
1131
|
"aura-card",
|
|
1117
1132
|
creative && "aura-card--creative",
|
|
1118
1133
|
props.interactive && "is-interactive",
|
|
1134
|
+
props.flushBelow && "aura-card--flush-below-" + props.flushBelow,
|
|
1119
1135
|
props.className
|
|
1120
1136
|
),
|
|
1121
1137
|
/* A titled card is labelled by its title; otherwise the caller's aria-labelledby stays (5.8). */
|
|
1122
|
-
"aria-labelledby": props.title && props.titleId ? props.titleId : props["aria-labelledby"]
|
|
1138
|
+
"aria-labelledby": !head && props.title && props.titleId ? props.titleId : props["aria-labelledby"]
|
|
1123
1139
|
}),
|
|
1124
|
-
props.title || props.actions ? /* @__PURE__ */ React3.createElement("div", { className: "aura-card__head" }, /* @__PURE__ */ React3.createElement("div", { className: "aura-card__heading" }, props.title ? h2("h" + (props.headingLevel || 3), { className: "aura-card__title", id: props.titleId }, props.title) : null, props.description ? /* @__PURE__ */ React3.createElement("p", { className: "aura-card__desc" }, props.description) : null), props.actions ? /* @__PURE__ */ React3.createElement("div", { className: "aura-card__actions" }, props.actions) : null) : null,
|
|
1140
|
+
head || props.title || props.actions ? /* @__PURE__ */ React3.createElement("div", { className: "aura-card__head" }, /* @__PURE__ */ React3.createElement("div", { className: "aura-card__heading" }, head ? props.header : null, !head && props.title ? h2("h" + (props.headingLevel || 3), { className: "aura-card__title", id: props.titleId }, props.title) : null, !head && props.description ? /* @__PURE__ */ React3.createElement("p", { className: "aura-card__desc" }, props.description) : null), props.actions ? /* @__PURE__ */ React3.createElement("div", { className: "aura-card__actions" }, props.actions) : null) : null,
|
|
1125
1141
|
props.children ? /* @__PURE__ */ React3.createElement("div", { className: "aura-card__body" }, props.children) : null,
|
|
1126
1142
|
props.footer ? /* @__PURE__ */ React3.createElement("div", { className: "aura-card__foot" }, props.footer) : null
|
|
1127
1143
|
);
|
|
@@ -1256,6 +1272,7 @@ function buttonClass(opts = {}) {
|
|
|
1256
1272
|
"aura-btn--" + (opts.variant || "primary"),
|
|
1257
1273
|
opts.size === "sm" && "aura-btn--sm",
|
|
1258
1274
|
opts.fullWidth && "aura-btn--full",
|
|
1275
|
+
opts.touchHeight && "aura-btn--touch",
|
|
1259
1276
|
opts.loading && "is-loading",
|
|
1260
1277
|
opts.className
|
|
1261
1278
|
);
|
package/dist/server/index.d.cts
CHANGED
|
@@ -20,6 +20,9 @@ export interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElem
|
|
|
20
20
|
fullWidth?: boolean | undefined;
|
|
21
21
|
/** `sm` is 32px with tighter padding, for toolbars, table rows and card footers. Default `md` (44px). */
|
|
22
22
|
size?: ButtonSize | undefined;
|
|
23
|
+
/** 44px tall below 640px (the viewport's), whatever `size` — a small button that phones get at full touch height
|
|
24
|
+
* (5.15, Chamber-OS 100). From 640px up it keeps its size. */
|
|
25
|
+
touchHeight?: boolean | undefined;
|
|
23
26
|
}
|
|
24
27
|
/** An AURA icon name, or any icon element (e.g. `<Building />` from lucide-react). AURA sizes it and hides it from screen readers. */
|
|
25
28
|
export type IconInput = IconName | React$1.ReactElement;
|
|
@@ -80,6 +83,12 @@ export interface CardProps extends Omit<React$1.HTMLAttributes<HTMLElement>, "ti
|
|
|
80
83
|
className?: string | undefined;
|
|
81
84
|
/** id for the title element; the card is then labelled by it (aria-labelledby). */
|
|
82
85
|
titleId?: string | undefined;
|
|
86
|
+
/** Free head content in place of `title` and `description` (5.15, Chamber-OS 87): skeleton bars while the card
|
|
87
|
+
* loads, a status pill above a title you mark up yourself. No heading is added; `actions` still sit top-right. */
|
|
88
|
+
header?: React$1.ReactNode | undefined;
|
|
89
|
+
/** Below this width (the viewport's) the card drops its border, surface and shadow — a list whose rows become
|
|
90
|
+
* cards of their own on a phone, so there are no cards in a card (5.15, Chamber-OS 93). Padding is kept. */
|
|
91
|
+
flushBelow?: "sm" | "md" | "lg" | undefined;
|
|
83
92
|
}
|
|
84
93
|
export interface AvatarProps {
|
|
85
94
|
/** Accessible name; also gives the initials and a stable colour. */
|
|
@@ -281,6 +290,10 @@ export interface AuraStrings {
|
|
|
281
290
|
pagination: string;
|
|
282
291
|
pageN: (p: number) => string;
|
|
283
292
|
accepts: (list?: string, max?: number | string) => string;
|
|
293
|
+
/** Progress with a reserved segment (5.15): "2 of 6 used, 1 reserved". */
|
|
294
|
+
progressReserved: (value: number, reserved: number, max: number) => string;
|
|
295
|
+
/** The collapsed middle of a Breadcrumb (5.15). */
|
|
296
|
+
breadcrumbMore: string;
|
|
284
297
|
}
|
|
285
298
|
/** Built-in strings by locale. th and sv also ship as packs (`@jirawatpyk/aura-react/locales/th`, `/sv`, 5.9); in 6.0
|
|
286
299
|
* only en stays built in and a Thai or Swedish app passes its pack to AuraProvider `strings`. */
|
|
@@ -338,6 +351,7 @@ export declare function buttonClass(opts?: {
|
|
|
338
351
|
size?: ButtonProps["size"];
|
|
339
352
|
fullWidth?: boolean | undefined;
|
|
340
353
|
loading?: boolean | undefined;
|
|
354
|
+
touchHeight?: boolean | undefined;
|
|
341
355
|
className?: string | undefined;
|
|
342
356
|
}): string;
|
|
343
357
|
declare function ServerAlert(props: Omit<AlertProps, "onDismiss">): React$1.ReactElement;
|
package/dist/server/index.d.ts
CHANGED
|
@@ -20,6 +20,9 @@ export interface ButtonProps extends React$1.ButtonHTMLAttributes<HTMLButtonElem
|
|
|
20
20
|
fullWidth?: boolean | undefined;
|
|
21
21
|
/** `sm` is 32px with tighter padding, for toolbars, table rows and card footers. Default `md` (44px). */
|
|
22
22
|
size?: ButtonSize | undefined;
|
|
23
|
+
/** 44px tall below 640px (the viewport's), whatever `size` — a small button that phones get at full touch height
|
|
24
|
+
* (5.15, Chamber-OS 100). From 640px up it keeps its size. */
|
|
25
|
+
touchHeight?: boolean | undefined;
|
|
23
26
|
}
|
|
24
27
|
/** An AURA icon name, or any icon element (e.g. `<Building />` from lucide-react). AURA sizes it and hides it from screen readers. */
|
|
25
28
|
export type IconInput = IconName | React$1.ReactElement;
|
|
@@ -80,6 +83,12 @@ export interface CardProps extends Omit<React$1.HTMLAttributes<HTMLElement>, "ti
|
|
|
80
83
|
className?: string | undefined;
|
|
81
84
|
/** id for the title element; the card is then labelled by it (aria-labelledby). */
|
|
82
85
|
titleId?: string | undefined;
|
|
86
|
+
/** Free head content in place of `title` and `description` (5.15, Chamber-OS 87): skeleton bars while the card
|
|
87
|
+
* loads, a status pill above a title you mark up yourself. No heading is added; `actions` still sit top-right. */
|
|
88
|
+
header?: React$1.ReactNode | undefined;
|
|
89
|
+
/** Below this width (the viewport's) the card drops its border, surface and shadow — a list whose rows become
|
|
90
|
+
* cards of their own on a phone, so there are no cards in a card (5.15, Chamber-OS 93). Padding is kept. */
|
|
91
|
+
flushBelow?: "sm" | "md" | "lg" | undefined;
|
|
83
92
|
}
|
|
84
93
|
export interface AvatarProps {
|
|
85
94
|
/** Accessible name; also gives the initials and a stable colour. */
|
|
@@ -281,6 +290,10 @@ export interface AuraStrings {
|
|
|
281
290
|
pagination: string;
|
|
282
291
|
pageN: (p: number) => string;
|
|
283
292
|
accepts: (list?: string, max?: number | string) => string;
|
|
293
|
+
/** Progress with a reserved segment (5.15): "2 of 6 used, 1 reserved". */
|
|
294
|
+
progressReserved: (value: number, reserved: number, max: number) => string;
|
|
295
|
+
/** The collapsed middle of a Breadcrumb (5.15). */
|
|
296
|
+
breadcrumbMore: string;
|
|
284
297
|
}
|
|
285
298
|
/** Built-in strings by locale. th and sv also ship as packs (`@jirawatpyk/aura-react/locales/th`, `/sv`, 5.9); in 6.0
|
|
286
299
|
* only en stays built in and a Thai or Swedish app passes its pack to AuraProvider `strings`. */
|
|
@@ -338,6 +351,7 @@ export declare function buttonClass(opts?: {
|
|
|
338
351
|
size?: ButtonProps["size"];
|
|
339
352
|
fullWidth?: boolean | undefined;
|
|
340
353
|
loading?: boolean | undefined;
|
|
354
|
+
touchHeight?: boolean | undefined;
|
|
341
355
|
className?: string | undefined;
|
|
342
356
|
}): string;
|
|
343
357
|
declare function ServerAlert(props: Omit<AlertProps, "onDismiss">): React$1.ReactElement;
|