@nxgt/material 3.88.0 → 3.88.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/dist/{button-h9hXBEQB.js → button-DuTNpo28.js} +2 -2
- package/dist/{calculator-Dn_KL0b0.js → calculator-DsGk_fCw.js} +2 -2
- package/dist/calculator-field.js +2 -2
- package/dist/calculator.js +1 -1
- package/dist/charts.js +1 -1
- package/dist/components/ui/dates/duration-field/duration-field-expressive.css +1 -1
- package/dist/components/ui/dates/picker-trigger/typed-box-expressive.css +5 -24
- package/dist/{components-BIATLurA.js → components-DiEY0nrG.js} +49 -48
- package/dist/components.js +6 -6
- package/dist/{conversion-variant-Cf0sEmnS.js → conversion-variant-DfQiOwYC.js} +1 -1
- package/dist/editor.js +2 -2
- package/dist/{empty-state-CCRfjt0n.js → empty-state-D7ofGDU_.js} +7 -6
- package/dist/{hooks-Dzc6xz5t.js → hooks-CpvvZCs7.js} +1 -1
- package/dist/hooks.js +2 -2
- package/dist/lib/components/ui/collections/server-table/server-table-classes.d.ts +5 -2
- package/dist/lib/components/ui/dates/picker-trigger/typed-box.d.ts +1 -1
- package/dist/lib/components/ui/display/list-tile/list-tile.d.ts +2 -1
- package/dist/lib/components/ui/display/list-tile/partials/list-tile-line.d.ts +1 -1
- package/dist/lib/components/ui/display/list-tile/partials/list-tile-row.d.ts +3 -1
- package/dist/main.js +7 -7
- package/dist/map.js +1 -1
- package/dist/material.css +1 -1
- package/dist/pdf-reader.js +1 -1
- package/dist/{public-CX7ik5Yg.js → public-CzLMnSsS.js} +2 -2
- package/dist/{use-chat-composer-BjKhuLfT.js → use-chat-composer-C9DG7O1Z.js} +2 -2
- package/dist/{use-heading-spy-CGTTRV2N.js → use-heading-spy-kyOSe9rb.js} +1 -1
- package/docs/components/data-table-filter-and-lists.md +1 -1
- package/lib/components/ui/dates/duration-field/duration-field-expressive.css +1 -1
- package/lib/components/ui/dates/picker-trigger/typed-box-expressive.css +5 -24
- package/package.json +1 -1
package/dist/pdf-reader.js
CHANGED
|
@@ -11,7 +11,7 @@ import { a as m, c as h, i as g, l as _, n as v, o as ee, r as y, s as b, t as t
|
|
|
11
11
|
import { c as x, d as S, f as C, i as w, l as T, n as E, o as D, t as re, u as O } from "./dropdown-menu-xUUE5X6T.js";
|
|
12
12
|
import { a as k, b as ie, d as ae, f as oe, i as se, n as A, o as ce, r as le, s as j, t as M, u as ue, v as de } from "./toolbar-items-CZ1lJXZZ.js";
|
|
13
13
|
import { t as fe } from "./dist-DkQbkF9T.js";
|
|
14
|
-
import { t as pe } from "./button-
|
|
14
|
+
import { t as pe } from "./button-DuTNpo28.js";
|
|
15
15
|
import { t as N } from "./use-material-translation-BdrItuwY.js";
|
|
16
16
|
import { n as me, t as he } from "./icon-button-DE1EcO2-.js";
|
|
17
17
|
import { t as ge } from "./useEvent-2fKq-6w8.js";
|
|
@@ -20,7 +20,7 @@ import { i as ye } from "./escape-owner-DpaP0lm1.js";
|
|
|
20
20
|
import { n as be } from "./use-slice-reducer-BGkeGtML.js";
|
|
21
21
|
import { t as xe } from "./input-CC2joTjB.js";
|
|
22
22
|
import { r as Se } from "./use-csp-nonce-ZKs9k-ov.js";
|
|
23
|
-
import { n as Ce, t as we } from "./empty-state-
|
|
23
|
+
import { n as Ce, t as we } from "./empty-state-D7ofGDU_.js";
|
|
24
24
|
import { r as Te, t as Ee, u as De } from "./dialog-Bul68q8u.js";
|
|
25
25
|
import { t as Oe } from "./client-only.utils-3nHNzCki.js";
|
|
26
26
|
import { t as ke } from "./use-scroll-away-PQRFZkT2.js";
|
|
@@ -20,7 +20,7 @@ import { t as mt } from "./dist-DkQbkF9T.js";
|
|
|
20
20
|
import { o as ht, s as gt, t as _t } from "./use-click-lock-Bwg_caHO.js";
|
|
21
21
|
import { a as vt, r as yt } from "./icon-sprites-CaYXzOL4.js";
|
|
22
22
|
import { t as bt } from "./warn-once-C_e47JM8.js";
|
|
23
|
-
import { r as xt, t as St } from "./button-
|
|
23
|
+
import { r as xt, t as St } from "./button-DuTNpo28.js";
|
|
24
24
|
import { a as Ct } from "./translator-DoVsjUff.js";
|
|
25
25
|
import { h as wt } from "./get-CTzJAwfc.js";
|
|
26
26
|
import { t as Tt } from "./isEmpty-F_g3jLf8.js";
|
|
@@ -40,7 +40,7 @@ import { n as Wt, r as Gt, t as Kt } from "./chip-C-RAjar5.js";
|
|
|
40
40
|
import { a as qt, c as Jt, o as Yt, r as Xt, s as Zt, t as Qt } from "./input-CC2joTjB.js";
|
|
41
41
|
import { t as $t } from "./text-field-BAdY-kpO.js";
|
|
42
42
|
import { r as en } from "./use-csp-nonce-ZKs9k-ov.js";
|
|
43
|
-
import { t as tn } from "./empty-state-
|
|
43
|
+
import { t as tn } from "./empty-state-D7ofGDU_.js";
|
|
44
44
|
import { t as nn } from "./skeleton-DSdtr2qc.js";
|
|
45
45
|
import { l as rn, n as an, o as on, r as sn, s as cn, t as ln, u as un } from "./dialog-Bul68q8u.js";
|
|
46
46
|
import { t as dn } from "./icon-badge-0Xo9q7Ey.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as e } from "./utils-BLfntITJ.js";
|
|
2
2
|
import { a as t, c as n, d as r, i, n as a, r as o, t as s, u as c } from "./alert-dialog-CEGs7LMN.js";
|
|
3
|
-
import { a as l } from "./button-
|
|
3
|
+
import { a as l } from "./button-DuTNpo28.js";
|
|
4
4
|
import { i as u } from "./translate-material-BrYBBZ66.js";
|
|
5
5
|
import { t as d } from "./use-material-translation-BdrItuwY.js";
|
|
6
6
|
import { _ as f, g as p, h as m, t as h, v as g, y as _ } from "./date.utils-JTEIo3mM.js";
|
|
@@ -1049,7 +1049,7 @@ Its props are `ServerTableProps<T>`; `filter` is a `ServerTableFilter`,
|
|
|
1049
1049
|
| `loadMoreLabel` | `string` | "Load more" | with `footer="load-more"`: the button's label |
|
|
1050
1050
|
| `hideOnSinglePage` | `boolean` | `false` | hides the footer's range and Previous / Next when the result is one page (no previous, no next), in the table, cards and tiles layouts; the count is still announced by the live region but no longer shown, so put it in `description` or keep the footer. With `bulkActions` the footer stays for "N rows selected", without its pager |
|
|
1051
1051
|
| `bandActions` | `'stacked' \| 'inline'` | `'stacked'` | with `filter`, where `actions` sit below 768px: `'stacked'` gives them a row above the search; `'inline'` keeps them on the search's row (the search takes the room left), for a lone icon action such as a "+". An action wider than 3.5rem wraps under the search. From 768px both are the same. With a cards or tiles list on a phone, neither applies: [the two-row header](#the-phone-header-of-a-list-in-cards-or-tiles) puts the actions on its second row |
|
|
1052
|
-
| `surface` | `'card' \| 'none'` | `'card'` | the list's own surface: `'card'` a translucent background and 16px of padding (below 768px neither: the layout owns the page gutter and the tiles sit at it, so a `ServerTable` outside a layout that adds a gutter now sits flush with the screen edge below 768px and the caller wraps it in its own padding); `'none'` neither, for a `ServerTable` placed in a `Card`, a page section or any surface that already frames it, so the screen shows one surface, not a frame inside a frame (the tiles keep their own grouped border) |
|
|
1052
|
+
| `surface` | `'card' \| 'none'` | `'card'` | the list's own surface: `'card'` a translucent background and 16px of padding (below 768px neither: the layout owns the page gutter and the tiles sit at it, so a `ServerTable` outside a layout that adds a gutter now sits flush with the screen edge below 768px and the caller wraps it in its own padding); `'none'` neither, for a `ServerTable` placed in a `Card`, a page section or any surface that already frames it, so the screen shows one surface, not a frame inside a frame (the tiles keep their own grouped border); the table's header band and rows also line up flush with the container's other content, as the table's own 4px wrapper padding (room for its shadow on the card surface) is zeroed |
|
|
1053
1053
|
| `filterRef` | `Ref<ServerTableFilterHandle>` | — | with `filter`: `filterRef.current.focus()` focuses the Filter's first control, the search, else the first quick filter, "Add filter" or "Filters (N)" the width shows |
|
|
1054
1054
|
| `sorting` | `createSorting(…)` | — | headers sorted from the URL; without it, no column is sortable (the server sorts, so pass `sorting` to let people sort), and the phone list bar shows only for selection |
|
|
1055
1055
|
| `filters` | `tableFilters(model)` | — | without `filter`: "nothing matches" and its clear |
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* DurationField's one-line field (`variant="segments"`, the default), over
|
|
2
|
-
* the date fields'
|
|
2
|
+
* the date fields' shared bordered box (typed-box-expressive.css) and its segments
|
|
3
3
|
* (segmented-input-expressive.css): "1 h 29 min", each amount followed by
|
|
4
4
|
* its muted unit, then one −/+ pair. Every focus ring is drawn inside the
|
|
5
5
|
* field (an inset outline), never clipped. The box keeps its focus boundary
|
|
@@ -1,41 +1,23 @@
|
|
|
1
|
-
/* The date, range and time fields' box, over the field box.
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
1
|
+
/* The date, range and time fields' box, over the field box. The same box at
|
|
2
|
+
* rest as a text field (surface, hairline border, radius, hover and filled
|
|
3
|
+
* tint: the shared bordered box, #2406), with a 2px primary boundary
|
|
4
|
+
* while a segment has focus or the picker is open and an error boundary when
|
|
5
|
+
* invalid. The segments are in segmented-input-expressive.css.
|
|
5
6
|
* `data-tonal` belongs to the date and time fields: the typed box and
|
|
6
7
|
* the sheet entry box. No other field sets it. */
|
|
7
8
|
@layer components {
|
|
8
9
|
.nxgt-field-box.nxgt-field-box[data-tonal] {
|
|
9
|
-
--_fx-fill: color-mix(in oklab, var(--primary) 7%, var(--background));
|
|
10
|
-
--_fx-fill-hover: color-mix(
|
|
11
|
-
in oklab,
|
|
12
|
-
var(--primary) 11%,
|
|
13
|
-
var(--background)
|
|
14
|
-
);
|
|
15
10
|
--_fx-tint: color-mix(in oklab, var(--primary) 14%, var(--background));
|
|
16
11
|
--_fx-pill: var(--primary);
|
|
17
12
|
--_fx-pill-fg: var(--primary-foreground);
|
|
18
13
|
--_fx-line: var(--primary-text);
|
|
19
14
|
--_fx-err: var(--error);
|
|
20
|
-
border-color: transparent;
|
|
21
|
-
background-color: var(--_fx-fill);
|
|
22
15
|
}
|
|
23
16
|
:is(.dark, [data-theme="dark"]) .nxgt-field-box.nxgt-field-box[data-tonal] {
|
|
24
|
-
--_fx-fill: color-mix(in oklab, var(--primary) 18%, var(--background));
|
|
25
|
-
--_fx-fill-hover: color-mix(
|
|
26
|
-
in oklab,
|
|
27
|
-
var(--primary) 22%,
|
|
28
|
-
var(--background)
|
|
29
|
-
);
|
|
30
17
|
--_fx-tint: color-mix(in oklab, var(--primary) 34%, var(--background));
|
|
31
18
|
--_fx-pill: var(--primary-text);
|
|
32
19
|
--_fx-pill-fg: var(--background);
|
|
33
20
|
}
|
|
34
|
-
/* Hover: the fill steps up, and the field box's hover border stays away. */
|
|
35
|
-
.nxgt-field-box.nxgt-field-box[data-tonal]:hover {
|
|
36
|
-
border-color: transparent;
|
|
37
|
-
background-color: var(--_fx-fill-hover);
|
|
38
|
-
}
|
|
39
21
|
.nxgt-field-box.nxgt-field-box[data-tonal]:is(
|
|
40
22
|
[data-focused],
|
|
41
23
|
[data-open]:not([data-open="false"])
|
|
@@ -48,7 +30,6 @@
|
|
|
48
30
|
[data-invalid="false"]
|
|
49
31
|
) {
|
|
50
32
|
border-color: var(--_fx-err);
|
|
51
|
-
background-color: color-mix(in oklab, var(--error) 7%, var(--background));
|
|
52
33
|
}
|
|
53
34
|
.nxgt-field-box.nxgt-field-box.nxgt-field-box[data-tonal][data-invalid]:not(
|
|
54
35
|
[data-invalid="false"]
|