@nxgt/material 3.54.0 → 3.55.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/CHANGELOG.md +6 -0
- package/README.md +1 -0
- package/dist/{async-slice-DDSsekfm.js → async-slice-yhXT9cml.js} +2 -2
- package/dist/{button-Ct8DSLVv.js → button-CD7f4KFL.js} +1 -1
- package/dist/charts.js +3 -3
- package/dist/{chip-BzoNsd-W.js → chip-Cl7Wm8Pn.js} +2 -2
- package/dist/{code-editor-DsLQeiZc.js → code-editor-tOhXy6Qo.js} +6 -6
- package/dist/code-editor.js +5 -5
- package/dist/{code-language-items-4zXlIEZ0.js → code-language-items-BxlY6onk.js} +2 -2
- package/dist/components/components.css +4 -0
- package/dist/components/ui/display/seat-ring/seat-ring-index.css +125 -0
- package/dist/components/ui/display/seat-ring/seat-ring-ring.css +87 -0
- package/dist/components/ui/display/seat-ring/seat-ring.css +139 -0
- package/dist/{components-DFG2mgsM.js → components-B58ZWZYR.js} +15485 -15285
- package/dist/components.js +26 -26
- package/dist/{dialog-DwPmwmA3.js → dialog-BzfHcRo6.js} +4 -4
- package/dist/dnd.js +1 -1
- package/dist/{dropdown-menu-CDN6Nqx6.js → dropdown-menu-DUZF4xAJ.js} +1 -1
- package/dist/editor.js +9 -9
- package/dist/{empty-state-Bb9W9did.js → empty-state-D9o2id1p.js} +2 -2
- package/dist/{escape-owner-DI_lg2ID.js → escape-owner-BYs2_7T5.js} +1 -1
- package/dist/{field-blur-context-Dg1nwWOV.js → field-blur-context-ZsK8OTNg.js} +1 -1
- package/dist/{field-blur-BcJH8H9B.js → field-blur-r1tHwqdF.js} +1 -1
- package/dist/hooks.js +2 -2
- package/dist/{hover-card-Qse4gnop.js → hover-card-NfF8taLj.js} +2 -2
- package/dist/{i18n-provider-DlVPS58N.js → i18n-provider-TQAEPlJ5.js} +1 -1
- package/dist/i18n.js +5 -5
- package/dist/{icon-badge-DVPBQOKe.js → icon-badge-BlaY_a-P.js} +3 -3
- package/dist/{icon-button-C3wDxsh6.js → icon-button-B8tdlP6R.js} +1 -1
- package/dist/lib/components/ui/display/index.d.ts +1 -0
- package/dist/lib/components/ui/display/seat-ring/index.d.ts +2 -0
- package/dist/lib/components/ui/display/seat-ring/partials/empty-seat.d.ts +5 -0
- package/dist/lib/components/ui/display/seat-ring/partials/seat-body.d.ts +9 -0
- package/dist/lib/components/ui/display/seat-ring/partials/seat-item.d.ts +17 -0
- package/dist/lib/components/ui/display/seat-ring/seat-ring.d.ts +9 -0
- package/dist/lib/components/ui/display/seat-ring/seat-ring.utils.d.ts +9 -0
- package/dist/lib/components/ui/display/seat-ring/types.d.ts +67 -0
- package/dist/lib/components/ui/display/seat-ring/use-seat-ring.d.ts +12 -0
- package/dist/lib/components/ui/fields/contacts/placeholders.d.ts +1 -1
- package/dist/lib/i18n/resources/en/en.d.ts +3 -0
- package/dist/lib/i18n/resources/en/material.json.d.ts +3 -0
- package/dist/lib/i18n/resources/fr/fr.d.ts +3 -0
- package/dist/lib/i18n/resources/fr/material.json.d.ts +3 -0
- package/dist/lib/i18n/resources/resources.d.ts +6 -0
- package/dist/lib/i18n/translator.d.ts +1 -1
- package/dist/lib.js +1 -1
- package/dist/main.js +43 -43
- package/dist/map.js +8 -8
- package/dist/material.css +1 -1
- package/dist/pdf-reader.js +1 -1
- package/dist/print.js +2 -2
- package/dist/{public-BoVE0ffh.js → public-tWgM204K.js} +9 -9
- package/dist/{rich-code-block-DAUM7Yh_.js → rich-code-block-0OcsqURY.js} +5 -5
- package/dist/{sortable-provider-BLXsGE_0.js → sortable-provider-DzFAlPU_.js} +2 -2
- package/dist/{spinner-Rg4PnBPH.js → spinner-GKZcQmrR.js} +1 -1
- package/dist/{stored-language-B1lJMPbR.js → stored-language-B39mABN7.js} +2 -0
- package/dist/theme-picker.js +2 -2
- package/dist/{theme-toggle-jVdxF_mc.js → theme-toggle-C8idk_jQ.js} +1 -1
- package/dist/{toolbar-items-BFY_hns5.js → toolbar-items-BrJI-BCs.js} +4 -4
- package/dist/{translate-material-q-JNxP1m.js → translate-material-hUA-UAP6.js} +2 -2
- package/dist/{translator-BU1o3_l9.js → translator-1ql2sxrx.js} +1 -1
- package/dist/{use-chat-composer-DGbDuIUa.js → use-chat-composer-DQpb8ZXV.js} +16 -16
- package/dist/{use-heading-spy-CP63sAcS.js → use-heading-spy-vlPOI1Aj.js} +1 -1
- package/dist/{use-material-translation-nNF8fUXz.js → use-material-translation-B1p5y3s9.js} +2 -2
- package/docs/components/data-display.md +65 -0
- package/docs/previews/data-display-seatring.webp +0 -0
- package/lib/components/components.css +4 -0
- package/lib/components/ui/display/seat-ring/seat-ring-index.css +125 -0
- package/lib/components/ui/display/seat-ring/seat-ring-ring.css +87 -0
- package/lib/components/ui/display/seat-ring/seat-ring.css +139 -0
- package/package.json +1 -1
package/dist/pdf-reader.js
CHANGED
package/dist/print.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as e } from "./i18n-provider-
|
|
2
|
-
import { t } from "./translate-material-
|
|
1
|
+
import { r as e } from "./i18n-provider-TQAEPlJ5.js";
|
|
2
|
+
import { t } from "./translate-material-hUA-UAP6.js";
|
|
3
3
|
import { Children as n, createContext as r, isValidElement as i, useCallback as a, useContext as o, useEffect as s, useMemo as c, useState as l } from "react";
|
|
4
4
|
import { jsx as u, jsxs as d } from "react/jsx-runtime";
|
|
5
5
|
import { resolvePdfFileName as f } from "@nxgt/material-core/pdf-file-name";
|
|
@@ -3,21 +3,21 @@ import { n as t } from "./ui.utils-CAnKTCw5.js";
|
|
|
3
3
|
import { t as n } from "./utils-BLfntITJ.js";
|
|
4
4
|
import { o as r } from "./dist-DVRQkaTK.js";
|
|
5
5
|
import { c as i, i as a, l as o, n as s, o as c, s as l } from "./dist-lmHmz_bu.js";
|
|
6
|
-
import { n as u, s as d } from "./spinner-
|
|
6
|
+
import { n as u, s as d } from "./spinner-GKZcQmrR.js";
|
|
7
7
|
import { i as f } from "./dist-C4wtXCjf.js";
|
|
8
8
|
import { r as p, t as m } from "./in-dialog-Vwkyp-M5.js";
|
|
9
|
-
import { C as h, D as g, E as _, O as v, S as y, T as b, _ as x, f as S, g as ee, k as te, r as ne, t as C, u as re, w } from "./dialog-
|
|
10
|
-
import { c as T, d as ie, f as E, i as ae, l as oe, n as se, o as D, t as ce, u as O } from "./dropdown-menu-
|
|
11
|
-
import { S as le, a as k, d as A, g as ue, h as de, i as fe, m as pe, n as j, r as me, t as M, u as he, w as ge } from "./toolbar-items-
|
|
12
|
-
import { t as N } from "./use-material-translation-
|
|
13
|
-
import { t as _e } from "./button-
|
|
14
|
-
import { n as ve, t as ye } from "./icon-button-
|
|
9
|
+
import { C as h, D as g, E as _, O as v, S as y, T as b, _ as x, f as S, g as ee, k as te, r as ne, t as C, u as re, w } from "./dialog-BzfHcRo6.js";
|
|
10
|
+
import { c as T, d as ie, f as E, i as ae, l as oe, n as se, o as D, t as ce, u as O } from "./dropdown-menu-DUZF4xAJ.js";
|
|
11
|
+
import { S as le, a as k, d as A, g as ue, h as de, i as fe, m as pe, n as j, r as me, t as M, u as he, w as ge } from "./toolbar-items-BrJI-BCs.js";
|
|
12
|
+
import { t as N } from "./use-material-translation-B1p5y3s9.js";
|
|
13
|
+
import { t as _e } from "./button-CD7f4KFL.js";
|
|
14
|
+
import { n as ve, t as ye } from "./icon-button-B8tdlP6R.js";
|
|
15
15
|
import { t as be } from "./useEvent-2fKq-6w8.js";
|
|
16
16
|
import { n as xe, t as Se } from "./toggle-group-BkH23Jk4.js";
|
|
17
|
-
import { o as Ce } from "./escape-owner-
|
|
17
|
+
import { o as Ce } from "./escape-owner-BYs2_7T5.js";
|
|
18
18
|
import { n as we } from "./use-slice-reducer-BGkeGtML.js";
|
|
19
19
|
import { r as Te } from "./use-csp-nonce-ZKs9k-ov.js";
|
|
20
|
-
import { n as Ee, t as De } from "./empty-state-
|
|
20
|
+
import { n as Ee, t as De } from "./empty-state-D9o2id1p.js";
|
|
21
21
|
import { t as Oe } from "./client-only.utils-3nHNzCki.js";
|
|
22
22
|
import { t as ke } from "./use-scroll-away-PQRFZkT2.js";
|
|
23
23
|
import * as P from "react";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { r as e } from "./spinner-
|
|
2
|
-
import { c as t, n, t as r } from "./dropdown-menu-
|
|
3
|
-
import { t as i } from "./use-material-translation-
|
|
4
|
-
import { a, i as o, n as s, o as c, t as l } from "./code-language-items-
|
|
1
|
+
import { r as e } from "./spinner-GKZcQmrR.js";
|
|
2
|
+
import { c as t, n, t as r } from "./dropdown-menu-DUZF4xAJ.js";
|
|
3
|
+
import { t as i } from "./use-material-translation-B1p5y3s9.js";
|
|
4
|
+
import { a, i as o, n as s, o as c, t as l } from "./code-language-items-BxlY6onk.js";
|
|
5
5
|
import { i as u, n as d, r as f, s as p } from "./dist-C3GR7kJd.js";
|
|
6
6
|
import { t as m } from "./code-block-spec-CGLKRhwD.js";
|
|
7
7
|
import { Suspense as h, lazy as g, useEffect as _, useRef as v, useState as y } from "react";
|
|
@@ -143,7 +143,7 @@ function M({ node: e, editor: t, updateAttributes: n, editable: r, wrap: a, onWr
|
|
|
143
143
|
}
|
|
144
144
|
//#endregion
|
|
145
145
|
//#region lib/components/ui/widgets/editor/extensions/code/code-block-open.tsx
|
|
146
|
-
var N = g(() => import("./code-editor-
|
|
146
|
+
var N = g(() => import("./code-editor-tOhXy6Qo.js").then((e) => e.n).then((e) => ({ default: e.CodeEditor })));
|
|
147
147
|
function P() {
|
|
148
148
|
let { t: e } = i();
|
|
149
149
|
return /* @__PURE__ */ b("div", {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as e } from "./utils-BLfntITJ.js";
|
|
2
2
|
import { t } from "./dist-DVRQkaTK.js";
|
|
3
|
-
import { t as n } from "./use-material-translation-
|
|
4
|
-
import { t as r } from "./icon-button-
|
|
3
|
+
import { t as n } from "./use-material-translation-B1p5y3s9.js";
|
|
4
|
+
import { t as r } from "./icon-button-B8tdlP6R.js";
|
|
5
5
|
import { t as i } from "./compose-refs-DZ0iIVF-.js";
|
|
6
6
|
import a, { cloneElement as o, createContext as s, forwardRef as c, memo as l, useCallback as u, useContext as d, useEffect as f, useId as p, useLayoutEffect as m, useMemo as h, useReducer as g, useRef as _, useState as v } from "react";
|
|
7
7
|
import { jsx as y } from "react/jsx-runtime";
|
|
@@ -3,7 +3,7 @@ import { n as t, t as n } from "./utils-BLfntITJ.js";
|
|
|
3
3
|
import { i as r, o as i } from "./dist-DVRQkaTK.js";
|
|
4
4
|
import { a, c as o, i as s, l as c, n as l, o as u, r as d, s as f, t as p, u as m } from "./dist-lmHmz_bu.js";
|
|
5
5
|
import { a as h, c as g, d as _, i as v, l as y, o as b, r as x, t as S, u as C } from "./floating-ui.dom-KkZSW8_E.js";
|
|
6
|
-
import { t as w } from "./use-material-translation-
|
|
6
|
+
import { t as w } from "./use-material-translation-B1p5y3s9.js";
|
|
7
7
|
import * as T from "react";
|
|
8
8
|
import { useLayoutEffect as E, useRef as D, useSyncExternalStore as O } from "react";
|
|
9
9
|
import { jsx as k, jsxs as A } from "react/jsx-runtime";
|
|
@@ -1334,6 +1334,7 @@ var t = {
|
|
|
1334
1334
|
busy: "Busy",
|
|
1335
1335
|
active: "Active"
|
|
1336
1336
|
},
|
|
1337
|
+
"seat-ring": { empty: "Empty seat" },
|
|
1337
1338
|
"country-field": { placeholder: "Country" },
|
|
1338
1339
|
"duration-field": {
|
|
1339
1340
|
hours: "h",
|
|
@@ -4174,6 +4175,7 @@ var t = {
|
|
|
4174
4175
|
busy: "Occupé",
|
|
4175
4176
|
active: "Actif"
|
|
4176
4177
|
},
|
|
4178
|
+
"seat-ring": { empty: "Place libre" },
|
|
4177
4179
|
"country-field": { placeholder: "Pays" },
|
|
4178
4180
|
"duration-field": {
|
|
4179
4181
|
hours: "h",
|
package/dist/theme-picker.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { t as e } from "./utils-BLfntITJ.js";
|
|
2
2
|
import { a as t, i as n, n as r, o as i, r as a, t as o } from "./bubble-input-B7BVd9fX.js";
|
|
3
3
|
import { a as s, r as c } from "./icon-sprites-CaYXzOL4.js";
|
|
4
|
-
import { t as l } from "./use-material-translation-
|
|
4
|
+
import { t as l } from "./use-material-translation-B1p5y3s9.js";
|
|
5
5
|
import { t as u } from "./use-theme-BCLireTd.js";
|
|
6
6
|
import { a as d, r as f } from "./theme-context-Cofk6vgs.js";
|
|
7
|
-
import { t as p } from "./theme-toggle-
|
|
7
|
+
import { t as p } from "./theme-toggle-C8idk_jQ.js";
|
|
8
8
|
import { n as m, t as h } from "./nxgt-theme-ivgNca3z.js";
|
|
9
9
|
import { useContext as g } from "react";
|
|
10
10
|
import { jsx as _, jsxs as v } from "react/jsx-runtime";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as e } from "./use-material-translation-
|
|
1
|
+
import { t as e } from "./use-material-translation-B1p5y3s9.js";
|
|
2
2
|
import { i as t } from "./theme-store-BdPp43cV.js";
|
|
3
3
|
import { n, t as r } from "./use-theme-BCLireTd.js";
|
|
4
4
|
import { r as i } from "./theme-context-Cofk6vgs.js";
|
|
@@ -2,13 +2,13 @@ import { t as e } from "./utils-BLfntITJ.js";
|
|
|
2
2
|
import { t } from "./warn-once-C_e47JM8.js";
|
|
3
3
|
import { o as n, r, t as i } from "./dist-DVRQkaTK.js";
|
|
4
4
|
import { a, c as o, i as s, l as c, r as l, s as u } from "./dist-lmHmz_bu.js";
|
|
5
|
-
import { C as d, S as f, d as p, f as m, m as h, p as g, r as _, u as v } from "./spinner-
|
|
5
|
+
import { C as d, S as f, d as p, f as m, m as h, p as g, r as _, u as v } from "./spinner-GKZcQmrR.js";
|
|
6
6
|
import { i as y, n as b, r as x, t as S } from "./dist-C4wtXCjf.js";
|
|
7
7
|
import { a as C, c as w, l as T, o as E, r as ee, s as te, t as ne } from "./in-dialog-Vwkyp-M5.js";
|
|
8
|
-
import { A as re, M as ie, N as ae, b as oe, d as se, f as ce, i as le, j as ue, l as de, n as fe, o as pe, r as me, t as he, u as ge, y as _e } from "./dropdown-menu-
|
|
8
|
+
import { A as re, M as ie, N as ae, b as oe, d as se, f as ce, i as le, j as ue, l as de, n as fe, o as pe, r as me, t as he, u as ge, y as _e } from "./dropdown-menu-DUZF4xAJ.js";
|
|
9
9
|
import { a as ve, n as ye, r as be, t as xe } from "./dist-B7RjY7SL.js";
|
|
10
|
-
import { t as Se } from "./use-material-translation-
|
|
11
|
-
import { o as Ce } from "./escape-owner-
|
|
10
|
+
import { t as Se } from "./use-material-translation-B1p5y3s9.js";
|
|
11
|
+
import { o as Ce } from "./escape-owner-BYs2_7T5.js";
|
|
12
12
|
import * as D from "react";
|
|
13
13
|
import { createContext as O, useCallback as we, useContext as k, useEffect as A, useId as Te, useLayoutEffect as j, useMemo as M, useReducer as Ee, useRef as N, useState as P } from "react";
|
|
14
14
|
import { Fragment as F, jsx as I, jsxs as L } from "react/jsx-runtime";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "./stored-language-
|
|
2
|
-
import { a as e, r as t, t as n } from "./translator-
|
|
1
|
+
import "./stored-language-B39mABN7.js";
|
|
2
|
+
import { a as e, r as t, t as n } from "./translator-1ql2sxrx.js";
|
|
3
3
|
//#region lib/i18n/translate-material.ts
|
|
4
4
|
var r = /* @__PURE__ */ new WeakMap();
|
|
5
5
|
function i(e) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as e } from "./is-production-GLw59WU8.js";
|
|
2
|
-
import { a as t, i as n, r, t as i } from "./stored-language-
|
|
2
|
+
import { a as t, i as n, r, t as i } from "./stored-language-B39mABN7.js";
|
|
3
3
|
import { t as a } from "./get-CTzJAwfc.js";
|
|
4
4
|
//#region ../../node_modules/@formatjs/fast-memoize/index.js
|
|
5
5
|
function o(e, t) {
|
|
@@ -5,39 +5,39 @@ import { t as r } from "./warn-once-C_e47JM8.js";
|
|
|
5
5
|
import { n as i } from "./use-shape-morph-DXdy2X5g.js";
|
|
6
6
|
import { n as a, o, t as s } from "./dist-DVRQkaTK.js";
|
|
7
7
|
import { a as c, c as l, i as u, l as d, n as f, o as p, r as m, s as h, t as g } from "./dist-lmHmz_bu.js";
|
|
8
|
-
import { _, a as v, b as y, c as b, g as x, h as S, i as C, n as w, o as T, r as E, s as D, t as O, v as k, x as A, y as ee } from "./spinner-
|
|
8
|
+
import { _, a as v, b as y, c as b, g as x, h as S, i as C, n as w, o as T, r as E, s as D, t as O, v as k, x as A, y as ee } from "./spinner-GKZcQmrR.js";
|
|
9
9
|
import { a as j, i as M, n as N, r as te, t as ne } from "./dist-C4wtXCjf.js";
|
|
10
10
|
import { i as P, n as re, t as ie } from "./in-dialog-Vwkyp-M5.js";
|
|
11
|
-
import { A as F, C as ae, D as oe, E as se, O as I, S as ce, T as le, _ as ue, b as de, f as fe, g as pe, k as me, l as he, m as ge, n as _e, o as ve, r as ye, s as be, t as xe, u as Se, v as Ce, w as we, x as Te, y as Ee } from "./dialog-
|
|
11
|
+
import { A as F, C as ae, D as oe, E as se, O as I, S as ce, T as le, _ as ue, b as de, f as fe, g as pe, k as me, l as he, m as ge, n as _e, o as ve, r as ye, s as be, t as xe, u as Se, v as Ce, w as we, x as Te, y as Ee } from "./dialog-BzfHcRo6.js";
|
|
12
12
|
import { A as De, C as Oe, D as ke, E as Ae, O as je, S as Me, T as Ne, _ as Pe, a as Fe, b as Ie, d as Le, f as Re, g as ze, h as Be, i as Ve, k as He, l as Ue, m as We, n as Ge, o as Ke, p as qe, r as Je, s as Ye, t as Xe, u as Ze, v as Qe, w as $e, x as et, y as tt } from "./floating-ui.dom-KkZSW8_E.js";
|
|
13
|
-
import { D as nt, E as rt, N as it, O as at, c as L, d as ot, f as st, i as ct, k as lt, m as ut, n as dt, o as ft, p as pt, t as mt, u as ht } from "./dropdown-menu-
|
|
14
|
-
import { a as gt, i as _t, n as vt } from "./field-blur-context-
|
|
15
|
-
import { C as yt, S as bt, a as xt, c as St, d as Ct, l as wt, n as Tt, o as Et, s as Dt, u as Ot } from "./toolbar-items-
|
|
13
|
+
import { D as nt, E as rt, N as it, O as at, c as L, d as ot, f as st, i as ct, k as lt, m as ut, n as dt, o as ft, p as pt, t as mt, u as ht } from "./dropdown-menu-DUZF4xAJ.js";
|
|
14
|
+
import { a as gt, i as _t, n as vt } from "./field-blur-context-ZsK8OTNg.js";
|
|
15
|
+
import { C as yt, S as bt, a as xt, c as St, d as Ct, l as wt, n as Tt, o as Et, s as Dt, u as Ot } from "./toolbar-items-BrJI-BCs.js";
|
|
16
16
|
import { a as kt, i as At, n as jt, o as Mt, t as Nt } from "./bubble-input-B7BVd9fX.js";
|
|
17
17
|
import { i as Pt } from "./dist-B7RjY7SL.js";
|
|
18
18
|
import { o as Ft, s as It, t as Lt } from "./use-click-lock-BZYtTmVt.js";
|
|
19
19
|
import { a as Rt, r as zt } from "./icon-sprites-CaYXzOL4.js";
|
|
20
|
-
import "./stored-language-
|
|
21
|
-
import { a as Bt } from "./translator-
|
|
20
|
+
import "./stored-language-B39mABN7.js";
|
|
21
|
+
import { a as Bt } from "./translator-1ql2sxrx.js";
|
|
22
22
|
import { h as Vt } from "./get-CTzJAwfc.js";
|
|
23
23
|
import { t as Ht } from "./isEmpty-F_g3jLf8.js";
|
|
24
|
-
import { t as R } from "./use-material-translation-
|
|
25
|
-
import { i as Ut, r as Wt, t as Gt } from "./button-
|
|
26
|
-
import { t as z } from "./icon-button-
|
|
24
|
+
import { t as R } from "./use-material-translation-B1p5y3s9.js";
|
|
25
|
+
import { i as Ut, r as Wt, t as Gt } from "./button-CD7f4KFL.js";
|
|
26
|
+
import { t as z } from "./icon-button-B8tdlP6R.js";
|
|
27
27
|
import { t as Kt } from "./use-ssr-media-query-C6M5m8sf.js";
|
|
28
28
|
import { n as qt, t as Jt } from "./util-4heV2LPI.js";
|
|
29
29
|
import { t as Yt } from "./useEvent-2fKq-6w8.js";
|
|
30
|
-
import { f as Xt } from "./field-blur-
|
|
30
|
+
import { f as Xt } from "./field-blur-r1tHwqdF.js";
|
|
31
31
|
import { c as Zt, i as Qt, l as $t, o as en, r as tn, s as nn, t as rn } from "./dist-C3GR7kJd.js";
|
|
32
32
|
import { i as an } from "./toggle-group-BkH23Jk4.js";
|
|
33
|
-
import { a as on, i as sn, o as cn } from "./escape-owner-
|
|
33
|
+
import { a as on, i as sn, o as cn } from "./escape-owner-BYs2_7T5.js";
|
|
34
34
|
import { n as ln } from "./use-slice-reducer-BGkeGtML.js";
|
|
35
35
|
import { t as un } from "./browser-only-DQ94lWF8.js";
|
|
36
36
|
import { t as dn } from "./compose-refs-DZ0iIVF-.js";
|
|
37
|
-
import { n as fn, r as pn, t as mn } from "./chip-
|
|
38
|
-
import { n as hn, t as gn } from "./icon-badge-
|
|
37
|
+
import { n as fn, r as pn, t as mn } from "./chip-Cl7Wm8Pn.js";
|
|
38
|
+
import { n as hn, t as gn } from "./icon-badge-BlaY_a-P.js";
|
|
39
39
|
import { r as _n } from "./use-csp-nonce-ZKs9k-ov.js";
|
|
40
|
-
import { t as vn } from "./empty-state-
|
|
40
|
+
import { t as vn } from "./empty-state-D9o2id1p.js";
|
|
41
41
|
import { t as yn } from "./skeleton-DSdtr2qc.js";
|
|
42
42
|
import { H as bn, V as xn, X as Sn, bt as Cn, it as wn, lt as Tn, n as En, t as Dn, xt as On, yt as kn } from "./dist-moutbfbd.js";
|
|
43
43
|
import { t as An } from "./markdown-Dw_uH7j7.js";
|
|
@@ -11353,7 +11353,7 @@ var tC = (e = {}) => jn({
|
|
|
11353
11353
|
let [{ default: t }, { lowlight: n }, { richCodeBlock: r }] = await Promise.all([
|
|
11354
11354
|
import("./dist-CRMFGjng.js"),
|
|
11355
11355
|
import("./lowlight-OtcjU2Sa.js"),
|
|
11356
|
-
import("./rich-code-block-
|
|
11356
|
+
import("./rich-code-block-0OcsqURY.js")
|
|
11357
11357
|
]);
|
|
11358
11358
|
return [r(t, {
|
|
11359
11359
|
lowlight: n,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as e } from "./i18n-provider-
|
|
1
|
+
import { r as e } from "./i18n-provider-TQAEPlJ5.js";
|
|
2
2
|
import { _ as t, g as n, h as r, n as i, v as a, y as o } from "./number.utils-BG_eEt5g.js";
|
|
3
3
|
import { useCallback as s, useEffect as c, useMemo as l, useRef as u, useState as d } from "react";
|
|
4
4
|
import { busySettler as f, busySettler as p, createSubmitGuard as m, createSubmitGuard as h } from "@nxgt/material-core/submit-guard";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { r as e } from "./i18n-provider-
|
|
2
|
-
import { t } from "./translate-material-
|
|
1
|
+
import { r as e } from "./i18n-provider-TQAEPlJ5.js";
|
|
2
|
+
import { t } from "./translate-material-hUA-UAP6.js";
|
|
3
3
|
import { useCallback as n } from "react";
|
|
4
4
|
//#region lib/i18n/use-material-translation.ts
|
|
5
5
|
function r() {
|
|
@@ -8,6 +8,7 @@ from `@nxgt/material/components`.
|
|
|
8
8
|
| --- | --- | --- |
|
|
9
9
|
| <img src="../previews/data-display-avatar.webp" width="96" alt=""> | [Avatar](#avatar) | Image with a fallback and an optional online / offline dot |
|
|
10
10
|
| <img src="../previews/data-display-avatargroup.webp" width="96" alt=""> | [AvatarGroup](#avatargroup) | Overlapping avatars with a `+N` overflow |
|
|
11
|
+
| <img src="../previews/data-display-seatring.webp" width="96" alt=""> | [SeatRing](#seatring) | Participants as seats around a circle or in a grid, optionally pickable |
|
|
11
12
|
| <img src="../previews/data-display-shape.webp" width="96" alt=""> | [Shape](#shape) | Material 3 Expressive's shapes as a backdrop, an icon container or a mask for a photo |
|
|
12
13
|
| <img src="../previews/data-display-badge.webp" width="96" alt=""> | [Badge](#badge) | Status pill, 20 px, in seven tones, soft or outlined, with an optional decorative `icon` before the words |
|
|
13
14
|
| <img src="../previews/data-display-countbadge.webp" width="96" alt=""> | [CountBadge](#countbadge) | Count in the corner of its children |
|
|
@@ -127,6 +128,70 @@ array (`people.map(...)`); a single wrapper component or fragment counts as one.
|
|
|
127
128
|
|
|
128
129
|
---
|
|
129
130
|
|
|
131
|
+
## SeatRing
|
|
132
|
+
|
|
133
|
+

|
|
134
|
+
|
|
135
|
+
Participants as seats: around a circle when there is room, in a grid on a
|
|
136
|
+
phone. A seating plan, a round-table meeting, a party-game lobby. Each seat has
|
|
137
|
+
an avatar, a name, a status written in words and a badge; with `selectionMode`
|
|
138
|
+
it is a listbox to pick one or several seats from.
|
|
139
|
+
|
|
140
|
+
```tsx
|
|
141
|
+
import { SeatRing } from '@nxgt/material/components';
|
|
142
|
+
|
|
143
|
+
<SeatRing
|
|
144
|
+
aria-label="Players"
|
|
145
|
+
seats={[
|
|
146
|
+
{ id: 'ada', label: 'Ada Example', status: { label: 'Ready', tone: 'success' }, badge: 'Host' },
|
|
147
|
+
{ id: 'bo', label: 'Bo Sample', status: { label: 'Away', tone: 'warning' } },
|
|
148
|
+
{ id: 'free', label: 'Free', empty: true },
|
|
149
|
+
]}
|
|
150
|
+
highlightedId="ada"
|
|
151
|
+
centerSlot={<p>Round 2</p>}
|
|
152
|
+
selectionMode="single"
|
|
153
|
+
value={target}
|
|
154
|
+
onValueChange={setTarget}
|
|
155
|
+
/>
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
| Prop | Type | Default | Notes |
|
|
159
|
+
| --- | --- | --- | --- |
|
|
160
|
+
| `seats` | `Seat[]` | required | `{ id, label, avatar?: { src?, fallback? }, status?: { label, tone? }, badge?, disabled?, empty? }`; clockwise from the top |
|
|
161
|
+
| `layout` | `'ring' \| 'grid'` | `'ring'` | `ring` falls back to the grid in a narrow box and past the seat limit (10 seats) |
|
|
162
|
+
| `size` | `'sm' \| 'md' \| 'lg'` | `'md'` | seat width 4.75, 6 or 8rem; ring from a box of 32, 38 or 46rem; at most 10 seats on the circle |
|
|
163
|
+
| `selectionMode` | `'none' \| 'single' \| 'multiple'` | `'none'` | `none`: a list; otherwise a listbox |
|
|
164
|
+
| `value`, `defaultValue`, `onValueChange` | `string \| null` (single), `string[]` (multiple) | — | controlled or not |
|
|
165
|
+
| `highlightedId` | `string` | — | emphasised seat (whose turn it is); `aria-current="true"` on it, in a list and in a listbox |
|
|
166
|
+
| `renderAvatar`, `renderStatus`, `renderBadge` | `(seat) => ReactNode` | — | replace the default avatar, status line or badge |
|
|
167
|
+
| `renderEmptySeat` | `(seat) => ReactNode` | dashed circle and "Empty seat" | content of an empty seat |
|
|
168
|
+
| `centerSlot` | `ReactNode` | — | middle of the ring (a timer, a title); above the seats in the grid |
|
|
169
|
+
| `aria-label` / `aria-labelledby` | `string` | — | names the list or the listbox: always give one |
|
|
170
|
+
|
|
171
|
+
The layout follows the component's own width (a container query), not the
|
|
172
|
+
window, so it also collapses in a narrow column or a dialog. The grid is two columns
|
|
173
|
+
at 30rem or less and auto-fill above it, with a 44px minimum seat height. The circle is CSS only, so server markup has
|
|
174
|
+
no `style` attribute and a strict CSP is fine.
|
|
175
|
+
|
|
176
|
+
**Accessibility**
|
|
177
|
+
|
|
178
|
+
- Not selectable: a `list` of `listitem`s. Selectable: a `listbox` of `option`s
|
|
179
|
+
(`aria-multiselectable` in `multiple`).
|
|
180
|
+
- A roving tab stop sits on the chosen seat, else the first taken one. Arrow
|
|
181
|
+
keys, Home and End move the focus (an empty seat is skipped); Space or Enter
|
|
182
|
+
picks, and pressing the chosen seat again clears it.
|
|
183
|
+
- A seat is named by its label and its status text, never by colour alone.
|
|
184
|
+
- In a listbox, empty and `disabled` seats are `aria-disabled`, and a disabled
|
|
185
|
+
seat can be reached but not picked (in a list, `disabled` only dims the seat).
|
|
186
|
+
- Put no button in a selectable seat: interactive content (an "Invite" action
|
|
187
|
+
in `renderEmptySeat`) belongs to a non-selectable ring.
|
|
188
|
+
- Seat changes are not animated beyond a colour fade, which stops under
|
|
189
|
+
`prefers-reduced-motion`.
|
|
190
|
+
|
|
191
|
+
**Storybook:** `Data display/SeatRing` · **Vue:** not yet (#1931)
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
130
195
|
## Shape
|
|
131
196
|
|
|
132
197
|

|
|
Binary file
|
|
@@ -134,6 +134,10 @@
|
|
|
134
134
|
@import "./ui/display/period-cards/period-cards.css";
|
|
135
135
|
@import "./ui/layout/sidebar/sidebar-tokens.css";
|
|
136
136
|
@import "./ui/display/avatar/avatar.css";
|
|
137
|
+
/* SeatRing: seats as a grid or on a circle by its own width. */
|
|
138
|
+
@import "./ui/display/seat-ring/seat-ring.css";
|
|
139
|
+
@import "./ui/display/seat-ring/seat-ring-index.css";
|
|
140
|
+
@import "./ui/display/seat-ring/seat-ring-ring.css";
|
|
137
141
|
/* Alert and Banner span the row in the form grids (#1497). */
|
|
138
142
|
@import "./ui/feedback/alert/alert.css";
|
|
139
143
|
@import "./ui/display/stat-card/stat-card.css";
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
/* SeatRing: the seat count `--n` and the seat's index `--i`, from data
|
|
2
|
+
* attributes, for the circle's trigonometry (seat-ring-ring.css). Server
|
|
3
|
+
* markup carries no `style`. Up to 10 seats (RING_LIMIT); more is a grid. */
|
|
4
|
+
@layer components {
|
|
5
|
+
.nxgt-seat-ring[data-count="1"] {
|
|
6
|
+
--n: 1;
|
|
7
|
+
}
|
|
8
|
+
.nxgt-seat-ring[data-count="2"] {
|
|
9
|
+
--n: 2;
|
|
10
|
+
}
|
|
11
|
+
.nxgt-seat-ring[data-count="3"] {
|
|
12
|
+
--n: 3;
|
|
13
|
+
}
|
|
14
|
+
.nxgt-seat-ring[data-count="4"] {
|
|
15
|
+
--n: 4;
|
|
16
|
+
}
|
|
17
|
+
.nxgt-seat-ring[data-count="5"] {
|
|
18
|
+
--n: 5;
|
|
19
|
+
}
|
|
20
|
+
.nxgt-seat-ring[data-count="6"] {
|
|
21
|
+
--n: 6;
|
|
22
|
+
}
|
|
23
|
+
.nxgt-seat-ring[data-count="7"] {
|
|
24
|
+
--n: 7;
|
|
25
|
+
}
|
|
26
|
+
.nxgt-seat-ring[data-count="8"] {
|
|
27
|
+
--n: 8;
|
|
28
|
+
}
|
|
29
|
+
.nxgt-seat-ring[data-count="9"] {
|
|
30
|
+
--n: 9;
|
|
31
|
+
}
|
|
32
|
+
.nxgt-seat-ring[data-count="10"] {
|
|
33
|
+
--n: 10;
|
|
34
|
+
}
|
|
35
|
+
.nxgt-seat-ring[data-count="11"] {
|
|
36
|
+
--n: 11;
|
|
37
|
+
}
|
|
38
|
+
.nxgt-seat-ring[data-count="12"] {
|
|
39
|
+
--n: 12;
|
|
40
|
+
}
|
|
41
|
+
.nxgt-seat-ring[data-count="13"] {
|
|
42
|
+
--n: 13;
|
|
43
|
+
}
|
|
44
|
+
.nxgt-seat-ring[data-count="14"] {
|
|
45
|
+
--n: 14;
|
|
46
|
+
}
|
|
47
|
+
.nxgt-seat-ring[data-count="15"] {
|
|
48
|
+
--n: 15;
|
|
49
|
+
}
|
|
50
|
+
.nxgt-seat-ring[data-count="16"] {
|
|
51
|
+
--n: 16;
|
|
52
|
+
}
|
|
53
|
+
.nxgt-seat-ring[data-count="17"] {
|
|
54
|
+
--n: 17;
|
|
55
|
+
}
|
|
56
|
+
.nxgt-seat-ring[data-count="18"] {
|
|
57
|
+
--n: 18;
|
|
58
|
+
}
|
|
59
|
+
.nxgt-seat-ring[data-count="19"] {
|
|
60
|
+
--n: 19;
|
|
61
|
+
}
|
|
62
|
+
.nxgt-seat-ring[data-count="20"] {
|
|
63
|
+
--n: 20;
|
|
64
|
+
}
|
|
65
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="0"] {
|
|
66
|
+
--i: 0;
|
|
67
|
+
}
|
|
68
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="1"] {
|
|
69
|
+
--i: 1;
|
|
70
|
+
}
|
|
71
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="2"] {
|
|
72
|
+
--i: 2;
|
|
73
|
+
}
|
|
74
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="3"] {
|
|
75
|
+
--i: 3;
|
|
76
|
+
}
|
|
77
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="4"] {
|
|
78
|
+
--i: 4;
|
|
79
|
+
}
|
|
80
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="5"] {
|
|
81
|
+
--i: 5;
|
|
82
|
+
}
|
|
83
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="6"] {
|
|
84
|
+
--i: 6;
|
|
85
|
+
}
|
|
86
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="7"] {
|
|
87
|
+
--i: 7;
|
|
88
|
+
}
|
|
89
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="8"] {
|
|
90
|
+
--i: 8;
|
|
91
|
+
}
|
|
92
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="9"] {
|
|
93
|
+
--i: 9;
|
|
94
|
+
}
|
|
95
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="10"] {
|
|
96
|
+
--i: 10;
|
|
97
|
+
}
|
|
98
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="11"] {
|
|
99
|
+
--i: 11;
|
|
100
|
+
}
|
|
101
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="12"] {
|
|
102
|
+
--i: 12;
|
|
103
|
+
}
|
|
104
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="13"] {
|
|
105
|
+
--i: 13;
|
|
106
|
+
}
|
|
107
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="14"] {
|
|
108
|
+
--i: 14;
|
|
109
|
+
}
|
|
110
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="15"] {
|
|
111
|
+
--i: 15;
|
|
112
|
+
}
|
|
113
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="16"] {
|
|
114
|
+
--i: 16;
|
|
115
|
+
}
|
|
116
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="17"] {
|
|
117
|
+
--i: 17;
|
|
118
|
+
}
|
|
119
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="18"] {
|
|
120
|
+
--i: 18;
|
|
121
|
+
}
|
|
122
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"][data-index="19"] {
|
|
123
|
+
--i: 19;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/* SeatRing's circle: CSS trigonometry on `--i`, `--n` (seat-ring-index.css)
|
|
2
|
+
* and `--seat-dir` (-1 in a right-to-left box, so the ring is mirrored). The
|
|
3
|
+
* three container queries only switch `--ring-k` on the orbit once the box
|
|
4
|
+
* fits the seat size (32rem small, 38rem medium, 46rem large); every rule
|
|
5
|
+
* below reads it, as 0 (the grid of seat-ring.css) or 1 (the circle), so the
|
|
6
|
+
* circle's rules are written once. */
|
|
7
|
+
@layer components {
|
|
8
|
+
@container seat-ring (min-width: 32rem) {
|
|
9
|
+
.nxgt-seat-ring[data-layout="ring"][data-size="sm"]
|
|
10
|
+
[data-slot="seat-ring-orbit"] {
|
|
11
|
+
--ring-k: 1;
|
|
12
|
+
--ring-abs: absolute;
|
|
13
|
+
--ring-block: block;
|
|
14
|
+
--ring-ratio: 1;
|
|
15
|
+
--ring-margin: auto;
|
|
16
|
+
--ring-size: min(
|
|
17
|
+
100%,
|
|
18
|
+
max(calc(var(--seat) * 3.2), calc(var(--seat) * (var(--n) * 0.6 + 1))),
|
|
19
|
+
56rem
|
|
20
|
+
);
|
|
21
|
+
--ring-w: var(--seat);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
@container seat-ring (min-width: 38rem) {
|
|
25
|
+
.nxgt-seat-ring[data-layout="ring"][data-size="md"]
|
|
26
|
+
[data-slot="seat-ring-orbit"] {
|
|
27
|
+
--ring-k: 1;
|
|
28
|
+
--ring-abs: absolute;
|
|
29
|
+
--ring-block: block;
|
|
30
|
+
--ring-ratio: 1;
|
|
31
|
+
--ring-margin: auto;
|
|
32
|
+
--ring-size: min(
|
|
33
|
+
100%,
|
|
34
|
+
max(calc(var(--seat) * 3.2), calc(var(--seat) * (var(--n) * 0.6 + 1))),
|
|
35
|
+
56rem
|
|
36
|
+
);
|
|
37
|
+
--ring-w: var(--seat);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
@container seat-ring (min-width: 46rem) {
|
|
41
|
+
.nxgt-seat-ring[data-layout="ring"][data-size="lg"]
|
|
42
|
+
[data-slot="seat-ring-orbit"] {
|
|
43
|
+
--ring-k: 1;
|
|
44
|
+
--ring-abs: absolute;
|
|
45
|
+
--ring-block: block;
|
|
46
|
+
--ring-ratio: 1;
|
|
47
|
+
--ring-margin: auto;
|
|
48
|
+
--ring-size: min(
|
|
49
|
+
100%,
|
|
50
|
+
max(calc(var(--seat) * 3.2), calc(var(--seat) * (var(--n) * 0.6 + 1))),
|
|
51
|
+
56rem
|
|
52
|
+
);
|
|
53
|
+
--ring-w: var(--seat);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.nxgt-seat-ring [data-slot="seat-ring-orbit"] {
|
|
58
|
+
position: relative;
|
|
59
|
+
display: var(--ring-block, flex);
|
|
60
|
+
inline-size: var(--ring-size, auto);
|
|
61
|
+
aspect-ratio: var(--ring-ratio, auto);
|
|
62
|
+
margin-inline: var(--ring-margin, 0);
|
|
63
|
+
}
|
|
64
|
+
.nxgt-seat-ring [data-slot="seat-ring-list"] {
|
|
65
|
+
position: var(--ring-abs, static);
|
|
66
|
+
inset: 0;
|
|
67
|
+
}
|
|
68
|
+
.nxgt-seat-ring [data-slot="seat-ring-seat"] {
|
|
69
|
+
--a: calc(360deg * var(--i, 0) / var(--n, 1));
|
|
70
|
+
position: var(--ring-abs, relative);
|
|
71
|
+
inline-size: var(--ring-w, auto);
|
|
72
|
+
left: calc(
|
|
73
|
+
var(--ring-k, 0) *
|
|
74
|
+
(50% + (50% - var(--seat) / 2) * sin(var(--a)) * var(--seat-dir))
|
|
75
|
+
);
|
|
76
|
+
top: calc(
|
|
77
|
+
var(--ring-k, 0) *
|
|
78
|
+
(50% - (50% - var(--seat) / 2) * cos(var(--a)))
|
|
79
|
+
);
|
|
80
|
+
translate: calc(var(--ring-k, 0) * -50%) calc(var(--ring-k, 0) * -50%);
|
|
81
|
+
}
|
|
82
|
+
.nxgt-seat-ring [data-slot="seat-ring-center"] {
|
|
83
|
+
position: var(--ring-abs, static);
|
|
84
|
+
/* The square inside the circle of seats: the orbit's radius less a seat and a half. */
|
|
85
|
+
inset: calc(50% - 0.5 * max(0px, 50% - 1.1 * var(--seat)));
|
|
86
|
+
}
|
|
87
|
+
}
|