@nxgt/material 3.45.0 → 3.47.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 +63 -0
- package/README.md +10 -3
- package/dist/{async-slice-D9LAUgth.js → async-slice-DlvKCKAa.js} +2 -2
- package/dist/{button-b_kruV_L.js → button-yaltbQmC.js} +1 -1
- package/dist/charts.js +3 -3
- package/dist/{chip-6O3t9GXt.js → chip-BqWbbr1b.js} +1 -1
- package/dist/{code-editor-BtDOgUET.js → code-editor-C9qBNoYb.js} +4 -4
- package/dist/code-editor.js +4 -4
- package/dist/{code-language-items-374m-OK8.js → code-language-items-DAHtfQ7W.js} +2 -2
- package/dist/{components-BG-BTfJP.js → components-DFPy96C3.js} +16282 -14755
- package/dist/components.js +26 -26
- package/dist/{dialog-8Ua9uuJW.js → dialog-CCCcnTIx.js} +4 -4
- package/dist/dnd.js +1 -1
- package/dist/{dropdown-menu-DJEeT1XT.js → dropdown-menu-Df8785nt.js} +1 -1
- package/dist/editor.js +7 -7
- package/dist/{empty-state-CrhrmNqn.js → empty-state-DcF4TBzi.js} +1 -1
- package/dist/hooks.js +28 -40
- package/dist/{i18n-provider-hrtFm9jD.js → i18n-provider-C0fB0sEL.js} +1 -1
- package/dist/i18n.js +5 -5
- package/dist/{icon-badge-Cpke1tCf.js → icon-badge-aJ22mKGh.js} +1 -1
- package/dist/lib/components/ui/display/enrolment-card/enrolment-card.d.ts +12 -0
- package/dist/lib/components/ui/display/enrolment-card/index.d.ts +2 -0
- package/dist/lib/components/ui/display/enrolment-card/partials/enrolment-header.d.ts +14 -0
- package/dist/lib/components/ui/display/enrolment-card/partials/enrolment-verification.d.ts +15 -0
- package/dist/lib/components/ui/display/enrolment-card/types.d.ts +49 -0
- package/dist/lib/components/ui/display/enrolment-card/use-enrolment-card-labels.d.ts +3 -0
- package/dist/lib/components/ui/display/index.d.ts +2 -0
- package/dist/lib/components/ui/display/recovery-codes-status/index.d.ts +2 -0
- package/dist/lib/components/ui/display/recovery-codes-status/partials/recovery-count.d.ts +11 -0
- package/dist/lib/components/ui/display/recovery-codes-status/recovery-codes-status.d.ts +12 -0
- package/dist/lib/components/ui/display/recovery-codes-status/types.d.ts +44 -0
- package/dist/lib/components/ui/display/recovery-codes-status/use-recovery-codes-status-labels.d.ts +3 -0
- package/dist/lib/components/ui/display/timeline/index.d.ts +1 -1
- package/dist/lib/components/ui/display/timeline/partials/timeline-day-heading.d.ts +14 -0
- package/dist/lib/components/ui/display/timeline/partials/timeline-empty.d.ts +8 -0
- package/dist/lib/components/ui/display/timeline/partials/timeline-groups.d.ts +22 -0
- package/dist/lib/components/ui/display/timeline/partials/timeline-item-body.d.ts +13 -0
- package/dist/lib/components/ui/display/timeline/partials/timeline-item-card.d.ts +5 -0
- package/dist/lib/components/ui/display/timeline/partials/timeline-item-rail.d.ts +8 -0
- package/dist/lib/components/ui/display/timeline/partials/timeline-item-time.d.ts +12 -0
- package/dist/lib/components/ui/display/timeline/partials/timeline-skeleton.d.ts +4 -0
- package/dist/lib/components/ui/display/timeline/timeline-item.d.ts +13 -2
- package/dist/lib/components/ui/display/timeline/timeline-marker.d.ts +12 -0
- package/dist/lib/components/ui/display/timeline/timeline-rows.d.ts +23 -0
- package/dist/lib/components/ui/display/timeline/timeline.d.ts +32 -2
- package/dist/lib/components/ui/display/timeline/types.d.ts +6 -0
- package/dist/lib/components/ui/feedback/alert/alert.d.ts +7 -1
- package/dist/lib/components/ui/feedback/index.d.ts +1 -0
- package/dist/lib/components/ui/feedback/step-up-dialog/index.d.ts +2 -0
- package/dist/lib/components/ui/feedback/step-up-dialog/partials/step-up-body.d.ts +15 -0
- package/dist/lib/components/ui/feedback/step-up-dialog/partials/step-up-footer.d.ts +22 -0
- package/dist/lib/components/ui/feedback/step-up-dialog/partials/step-up-header.d.ts +10 -0
- package/dist/lib/components/ui/feedback/step-up-dialog/step-up-dialog.d.ts +16 -0
- package/dist/lib/components/ui/feedback/step-up-dialog/types.d.ts +55 -0
- package/dist/lib/components/ui/feedback/step-up-dialog/use-step-up-labels.d.ts +3 -0
- package/dist/lib/components/ui/feedback/step-up-dialog/use-step-up-state.d.ts +12 -0
- package/dist/lib/components/ui/feedback/step-up-dialog/use-title-focus.d.ts +5 -0
- package/dist/lib/components/ui/fields/contacts/placeholders.d.ts +1 -1
- package/dist/lib/components/ui/fields/index.d.ts +1 -0
- package/dist/lib/components/ui/fields/verification-code/describe-verification.d.ts +53 -0
- package/dist/lib/components/ui/fields/verification-code/index.d.ts +4 -0
- package/dist/lib/components/ui/fields/verification-code/partials/code-input.d.ts +12 -0
- package/dist/lib/components/ui/fields/verification-code/partials/code-message.d.ts +11 -0
- package/dist/lib/components/ui/fields/verification-code/partials/code-slots.d.ts +18 -0
- package/dist/lib/components/ui/fields/verification-code/partials/code-surface.d.ts +12 -0
- package/dist/lib/components/ui/fields/verification-code/partials/form-actions.d.ts +14 -0
- package/dist/lib/components/ui/fields/verification-code/partials/label-row.d.ts +10 -0
- package/dist/lib/components/ui/fields/verification-code/partials/locked-alert.d.ts +17 -0
- package/dist/lib/components/ui/fields/verification-code/partials/method-switch.d.ts +8 -0
- package/dist/lib/components/ui/fields/verification-code/partials/recovery-input.d.ts +7 -0
- package/dist/lib/components/ui/fields/verification-code/partials/resend-line.d.ts +10 -0
- package/dist/lib/components/ui/fields/verification-code/partials/status-line.d.ts +10 -0
- package/dist/lib/components/ui/fields/verification-code/throttle.d.ts +10 -0
- package/dist/lib/components/ui/fields/verification-code/types.d.ts +138 -0
- package/dist/lib/components/ui/fields/verification-code/use-answer-focus.d.ts +32 -0
- package/dist/lib/components/ui/fields/verification-code/use-code-entry.d.ts +43 -0
- package/dist/lib/components/ui/fields/verification-code/use-code-lock.d.ts +36 -0
- package/dist/lib/components/ui/fields/verification-code/use-code-resend.d.ts +29 -0
- package/dist/lib/components/ui/fields/verification-code/use-code-submit.d.ts +23 -0
- package/dist/lib/components/ui/fields/verification-code/use-entry-anchors.d.ts +6 -0
- package/dist/lib/components/ui/fields/verification-code/use-focus-on-switch.d.ts +7 -0
- package/dist/lib/components/ui/fields/verification-code/use-resend-focus.d.ts +20 -0
- package/dist/lib/components/ui/fields/verification-code/use-resend.d.ts +11 -0
- package/dist/lib/components/ui/fields/verification-code/use-short-reminder.d.ts +24 -0
- package/dist/lib/components/ui/fields/verification-code/use-stale-answer.d.ts +52 -0
- package/dist/lib/components/ui/fields/verification-code/use-throttle-focus.d.ts +16 -0
- package/dist/lib/components/ui/fields/verification-code/use-throttle.d.ts +10 -0
- package/dist/lib/components/ui/fields/verification-code/use-typed-value.d.ts +18 -0
- package/dist/lib/components/ui/fields/verification-code/use-verification-labels.d.ts +3 -0
- package/dist/lib/components/ui/fields/verification-code/verification-code.d.ts +11 -0
- package/dist/lib/components/ui/fields/verification-code/verification-lock-provider.d.ts +54 -0
- package/dist/lib/components/ui/layout/stepper/partials/header-nav.d.ts +10 -0
- package/dist/lib/components/ui/layout/stepper/partials/header-segments.d.ts +6 -0
- package/dist/lib/components/ui/layout/stepper/partials/header-summary.d.ts +12 -0
- package/dist/lib/components/ui/layout/stepper/partials/stepper-content.d.ts +8 -0
- package/dist/lib/components/ui/layout/stepper/partials/stepper-step-text.d.ts +13 -0
- package/dist/lib/components/ui/layout/stepper/stepper-connector.d.ts +6 -0
- package/dist/lib/components/ui/layout/stepper/stepper-header.d.ts +12 -0
- package/dist/lib/components/ui/layout/stepper/stepper-icon.d.ts +5 -0
- package/dist/lib/components/ui/layout/stepper/stepper-layout.d.ts +25 -0
- package/dist/lib/components/ui/layout/stepper/stepper-step.d.ts +9 -2
- package/dist/lib/components/ui/layout/stepper/stepper.d.ts +13 -3
- package/dist/lib/components/ui/overlays/dialog/dialog-parts.d.ts +8 -1
- package/dist/lib/i18n/resources/en/en.d.ts +59 -0
- package/dist/lib/i18n/resources/en/material.json.d.ts +61 -2
- package/dist/lib/i18n/resources/fr/fr.d.ts +59 -0
- package/dist/lib/i18n/resources/fr/material.json.d.ts +61 -2
- package/dist/lib/i18n/resources/resources.d.ts +118 -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 +4 -4
- package/dist/material.css +1 -1
- package/dist/pdf-reader.js +1 -1
- package/dist/print.js +2 -2
- package/dist/{public-DPPmNtZB.js → public-zVb_Nq_D.js} +6 -6
- package/dist/{rich-code-block-KQYR0qt3.js → rich-code-block-DMWZZJma.js} +4 -4
- package/dist/{sortable-provider-hPPTMtJA.js → sortable-provider-DstbgMVf.js} +1 -1
- package/dist/{spinner-Dd0os4cb.js → spinner-C4CgDEYm.js} +1 -1
- package/dist/{stored-language-Blyb68vN.js → stored-language-IaL1Ftn_.js} +122 -4
- package/dist/styles.css +8 -0
- package/dist/theme-picker.js +2 -2
- package/dist/{theme-toggle-BDRRkkiA.js → theme-toggle-CGW2_K54.js} +1 -1
- package/dist/{toolbar-items-D3hw7XZE.js → toolbar-items-CsLGJMEJ.js} +2 -2
- package/dist/{translate-material-CdJBbURx.js → translate-material-v9u-e7Kd.js} +2 -2
- package/dist/{translator-38JuN_VD.js → translator-Dk4_qE6U.js} +1 -1
- package/dist/{use-chat-composer-utGkZQ6X.js → use-chat-composer-Brcb5f7r.js} +12 -12
- package/dist/{use-heading-spy-bTccmEMF.js → use-heading-spy-DjKixjLm.js} +43 -31
- package/dist/{use-material-translation-DLsfkMxp.js → use-material-translation-DOkTaWK_.js} +2 -2
- package/docs/README.md +1 -0
- package/docs/components/README.md +1 -1
- package/docs/components/buttons-and-actions.md +2 -1
- package/docs/components/data-display.md +133 -4
- package/docs/components/feedback-and-status.md +113 -1
- package/docs/components/form-fields.md +163 -0
- package/docs/components/navigation-and-layout.md +66 -23
- package/docs/components/overlays-and-menus.md +3 -1
- package/docs/guides/i18n.md +4 -1
- package/docs/guides/ssr.md +3 -1
- package/docs/guides/two-factor.md +78 -0
- package/docs/previews/data-display-enrolmentcard.webp +0 -0
- package/docs/previews/data-display-recoverycodesstatus.webp +0 -0
- package/docs/previews/data-display-timeline.webp +0 -0
- package/docs/previews/feedback-status-stepupdialog.webp +0 -0
- package/docs/previews/form-fields-verificationcode.webp +0 -0
- package/docs/previews/navigation-layout-stepper.webp +0 -0
- package/docs/roadmap.md +30 -0
- package/lib/styles.css +8 -0
- package/package.json +2 -2
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
/** Lifts the document-wide lock. For tests and stories: a page cannot do this. */
|
|
3
|
+
export declare function resetDocumentVerificationLock(): void;
|
|
4
|
+
/**
|
|
5
|
+
* A scope for the page-wide lock of the code checks under it. Once any
|
|
6
|
+
* `VerificationCode` under it is answered `locked`, every authenticator or
|
|
7
|
+
* recovery code field under it stays locked until the page is loaded again: a
|
|
8
|
+
* remount, a step change or closing a dialog never lifts it. A code sent by
|
|
9
|
+
* e-mail is not held by it. Without a provider the scope is the whole
|
|
10
|
+
* document.
|
|
11
|
+
*/
|
|
12
|
+
export declare function VerificationLockProvider({ children, }: {
|
|
13
|
+
children?: ReactNode;
|
|
14
|
+
}): import("react").JSX.Element;
|
|
15
|
+
/**
|
|
16
|
+
* Internal: `claim(id, own)` is true for the one form of the scope that is the
|
|
17
|
+
* lock's alert, and for the same `id` again (a re-render, Strict Mode). Made
|
|
18
|
+
* while rendering, because a `role="alert"` added after the element is
|
|
19
|
+
* inserted is not reliably announced. Under a provider the scope is claimed
|
|
20
|
+
* the same on the server and the client (so the markup matches). With no
|
|
21
|
+
* provider the document scope is shared by every request on the server, so
|
|
22
|
+
* "the first form" is not the same on both sides: a form whose own answer
|
|
23
|
+
* locked it (`own`) is an alert on both, and a form the document lock holds
|
|
24
|
+
* (only on the client, after hydration) takes the first-form rule.
|
|
25
|
+
*/
|
|
26
|
+
export declare function useAlertClaim(): (id: string, own: boolean) => boolean;
|
|
27
|
+
/**
|
|
28
|
+
* The claim rule, pure: whether the form `id` is the lock's alert, and whether
|
|
29
|
+
* it becomes the scope's recorded owner. With no provider and `own` set, the
|
|
30
|
+
* answer is `true` on a server and on a client alike, so hydration matches.
|
|
31
|
+
*/
|
|
32
|
+
export declare function claimsAlert({ scoped, client, own, owner, id, }: {
|
|
33
|
+
scoped: boolean;
|
|
34
|
+
client: boolean;
|
|
35
|
+
own: boolean;
|
|
36
|
+
owner: string | undefined;
|
|
37
|
+
id: string;
|
|
38
|
+
}): {
|
|
39
|
+
alert: boolean;
|
|
40
|
+
record: boolean;
|
|
41
|
+
};
|
|
42
|
+
export type VerificationLockValue = {
|
|
43
|
+
locked: boolean;
|
|
44
|
+
/** The words of the answer that locked, when it had any. */
|
|
45
|
+
message?: ReactNode;
|
|
46
|
+
/** Locks the scope, as an answer of `locked` does. */
|
|
47
|
+
lock: (message?: ReactNode) => void;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* The page-wide lock of the nearest {@link VerificationLockProvider}, for the
|
|
51
|
+
* parts of an app outside the components. A server render, and the hydration
|
|
52
|
+
* that follows it, always read it unlocked.
|
|
53
|
+
*/
|
|
54
|
+
export declare function useVerificationLock(): VerificationLockValue;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Back and Next. At an end a button is `aria-disabled` instead of `disabled`:
|
|
3
|
+
* it stays focusable, so focus never drops to the page when the last click
|
|
4
|
+
* lands on it, and the click does nothing.
|
|
5
|
+
*/
|
|
6
|
+
export declare function HeaderNav({ active, total, onChange, }: {
|
|
7
|
+
active: number;
|
|
8
|
+
total: number;
|
|
9
|
+
onChange: (value: number) => void;
|
|
10
|
+
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Step } from '../stepper.js';
|
|
2
|
+
/**
|
|
3
|
+
* The live part of the phone header: the chip, the title, the description
|
|
4
|
+
* and, for a screen reader only, the current step's state when it failed and
|
|
5
|
+
* how many steps failed. A change of step is announced as one message.
|
|
6
|
+
*/
|
|
7
|
+
export declare function HeaderSummary({ steps, active, chipId, stepOf, }: {
|
|
8
|
+
steps: Step[];
|
|
9
|
+
active: number;
|
|
10
|
+
chipId: string;
|
|
11
|
+
stepOf: string;
|
|
12
|
+
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
/** Under the steps of a horizontal or responsive Stepper: the current step's
|
|
3
|
+
* `content` card and its description. */
|
|
4
|
+
export declare function StepperContent({ content, description, helperClassName, }: {
|
|
5
|
+
content?: ReactNode;
|
|
6
|
+
description?: ReactNode;
|
|
7
|
+
helperClassName: string;
|
|
8
|
+
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { StepperState } from '../step-state.js';
|
|
3
|
+
import { StepperOrientation } from '../stepper-layout.js';
|
|
4
|
+
/** The words of one step: "Step 02 · Optional", the title, the vertical
|
|
5
|
+
* description and the state, which a screen reader gets as text. */
|
|
6
|
+
export declare function StepperStepText({ state, orientation, label, title, optional, description, }: {
|
|
7
|
+
state: StepperState;
|
|
8
|
+
orientation: StepperOrientation;
|
|
9
|
+
label: ReactNode;
|
|
10
|
+
title: ReactNode;
|
|
11
|
+
optional?: boolean;
|
|
12
|
+
description?: ReactNode;
|
|
13
|
+
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { StepperOrientation } from './stepper-layout.js';
|
|
2
|
+
/** The pill track between two steps; its fill slides in with the spring. */
|
|
3
|
+
export declare function StepperConnector({ orientation, done, }: {
|
|
4
|
+
orientation: StepperOrientation;
|
|
5
|
+
done: boolean;
|
|
6
|
+
}): import("react").JSX.Element;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Step } from './stepper.js';
|
|
2
|
+
/**
|
|
3
|
+
* The phone header (below `sm`): "Step 3 of 5", the title, the description, a
|
|
4
|
+
* segmented progress bar and, with `onChange`, Back / Next. Always rendered;
|
|
5
|
+
* CSS hides it from `sm`, so the server and the client agree. The group is
|
|
6
|
+
* named by the visible chip, not by a copy of its text.
|
|
7
|
+
*/
|
|
8
|
+
export declare function StepperHeader({ steps, active, onChange, }: {
|
|
9
|
+
steps: Step[];
|
|
10
|
+
active: number;
|
|
11
|
+
onChange?: (value: number) => void;
|
|
12
|
+
}): import("react").JSX.Element;
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { StepperState } from './step-state.js';
|
|
3
|
+
/**
|
|
4
|
+
* The indicator of one step: a 48px box holding a shape that springs between
|
|
5
|
+
* 40px (rest) and 48px (current / failed), and pops when the state changes
|
|
6
|
+
* (not on the first render, so the server and the client agree).
|
|
7
|
+
*/
|
|
3
8
|
export declare function StepperIcon({ icon, state, fallback, }: {
|
|
4
9
|
icon?: ReactNode;
|
|
5
10
|
state: StepperState;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The class tables of a `Stepper`. The layout is chosen by CSS breakpoints,
|
|
3
|
+
* never by a media query hook, so the server and the client render the same
|
|
4
|
+
* markup. Literal strings, so Tailwind finds every class.
|
|
5
|
+
*
|
|
6
|
+
* - `horizontal`: a row from `sm`; the phone header below.
|
|
7
|
+
* - `vertical`: a column from `sm`; the phone header below.
|
|
8
|
+
* - `responsive`: a column below `sm`, a row from `sm`; no header.
|
|
9
|
+
*/
|
|
10
|
+
export type StepperOrientation = 'horizontal' | 'vertical' | 'responsive';
|
|
11
|
+
type Layout = {
|
|
12
|
+
root: string;
|
|
13
|
+
list: string;
|
|
14
|
+
item: string;
|
|
15
|
+
button: string;
|
|
16
|
+
text: string;
|
|
17
|
+
connector: string;
|
|
18
|
+
connectorFill: {
|
|
19
|
+
rest: string;
|
|
20
|
+
done: string;
|
|
21
|
+
};
|
|
22
|
+
helper: string;
|
|
23
|
+
};
|
|
24
|
+
export declare const LAYOUTS: Record<StepperOrientation, Layout>;
|
|
25
|
+
export {};
|
|
@@ -1,17 +1,24 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { StepperState } from './step-state.js';
|
|
3
|
+
import { StepperOrientation } from './stepper-layout.js';
|
|
3
4
|
export type StepperStepProps = {
|
|
4
5
|
id: string;
|
|
5
6
|
index: number;
|
|
6
7
|
state: StepperState;
|
|
7
8
|
current: boolean;
|
|
8
|
-
|
|
9
|
+
last: boolean;
|
|
10
|
+
done: boolean;
|
|
11
|
+
orientation: StepperOrientation;
|
|
9
12
|
icon?: ReactNode;
|
|
10
13
|
label: ReactNode;
|
|
11
14
|
title: ReactNode;
|
|
15
|
+
optional?: boolean;
|
|
16
|
+
/** Vertical only: the current step's description, under its title. */
|
|
12
17
|
description?: ReactNode;
|
|
18
|
+
/** Vertical only: the card under the current step. */
|
|
19
|
+
content?: ReactNode;
|
|
13
20
|
name?: string;
|
|
14
21
|
onSelect?: () => void;
|
|
15
22
|
};
|
|
16
23
|
/** One `<li>` of a `Stepper`. Internal: not exported from the barrel. */
|
|
17
|
-
export declare function StepperStep({ id, index, state, current,
|
|
24
|
+
export declare function StepperStep({ id, index, state, current, last, done, orientation, icon, label, title, optional, description, content, name, onSelect, }: StepperStepProps): import("react").JSX.Element;
|
|
@@ -6,14 +6,24 @@ export type Step = {
|
|
|
6
6
|
title: ReactNode;
|
|
7
7
|
description?: ReactNode;
|
|
8
8
|
status?: StepperStatus;
|
|
9
|
+
/** Marks the step "· Optional" (and "Optional" in the phone header). */
|
|
10
|
+
optional?: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* A card shown while this step is current: under it in the vertical
|
|
13
|
+
* layout, under the steps in the others (and under the header on a phone).
|
|
14
|
+
*/
|
|
15
|
+
content?: ReactNode;
|
|
9
16
|
};
|
|
10
17
|
export type StepperProps = {
|
|
11
18
|
steps: Step[];
|
|
12
19
|
active?: number;
|
|
13
20
|
/**
|
|
14
|
-
* `'
|
|
15
|
-
*
|
|
16
|
-
*
|
|
21
|
+
* `'horizontal'` is a row from `sm` (640px) and `'vertical'` a column at
|
|
22
|
+
* every width; below `sm` both swap the step list for a compact header
|
|
23
|
+
* card with Back / Next (when `onChange` is given). `'responsive'` lists
|
|
24
|
+
* every step in a column below `sm` and lays them in a row from there,
|
|
25
|
+
* with no header. The layout is chosen by CSS, so the server and the
|
|
26
|
+
* client render the same markup.
|
|
17
27
|
*/
|
|
18
28
|
orientation?: 'horizontal' | 'vertical' | 'responsive';
|
|
19
29
|
renderStepLabel?: (step: Step, index: number) => ReactNode;
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
import { Dialog as DialogPrimitive } from 'radix-ui';
|
|
2
2
|
import { ComponentProps } from 'react';
|
|
3
3
|
declare function DialogHeader({ className, ...props }: ComponentProps<'div'>): import("react").JSX.Element;
|
|
4
|
-
declare function DialogFooter({ className, ...props }: ComponentProps<'div'>
|
|
4
|
+
declare function DialogFooter({ className, stackOnPhone, ...props }: ComponentProps<'div'> & {
|
|
5
|
+
/**
|
|
6
|
+
* Phones: the actions stack, full width, the main one at the bottom (the
|
|
7
|
+
* default). `false` keeps one row, the first action on the left and the
|
|
8
|
+
* last on the right, for two short actions such as Cancel and Confirm.
|
|
9
|
+
*/
|
|
10
|
+
stackOnPhone?: boolean;
|
|
11
|
+
}): import("react").JSX.Element;
|
|
5
12
|
declare function DialogTitle({ className, ...props }: ComponentProps<typeof DialogPrimitive.Title>): import("react").JSX.Element;
|
|
6
13
|
declare function DialogDescription({ className, ...props }: ComponentProps<typeof DialogPrimitive.Description>): import("react").JSX.Element;
|
|
7
14
|
export { DialogDescription, DialogFooter, DialogHeader, DialogTitle };
|
|
@@ -749,6 +749,58 @@ export declare const en: {
|
|
|
749
749
|
close: string;
|
|
750
750
|
};
|
|
751
751
|
};
|
|
752
|
+
"verification-code": {
|
|
753
|
+
label: string;
|
|
754
|
+
"recovery-label": string;
|
|
755
|
+
"use-recovery": string;
|
|
756
|
+
"use-app": string;
|
|
757
|
+
"use-email": string;
|
|
758
|
+
confirm: string;
|
|
759
|
+
resend: string;
|
|
760
|
+
resent: string;
|
|
761
|
+
sending: string;
|
|
762
|
+
"new-code": string;
|
|
763
|
+
"try-again": string;
|
|
764
|
+
wrong: string;
|
|
765
|
+
"tries-left": string;
|
|
766
|
+
incomplete: string;
|
|
767
|
+
"incomplete-recovery": string;
|
|
768
|
+
expired: string;
|
|
769
|
+
failed: string;
|
|
770
|
+
locked: string;
|
|
771
|
+
throttled: string;
|
|
772
|
+
"throttled-minutes": string;
|
|
773
|
+
"throttled-seconds": string;
|
|
774
|
+
"throttled-minutes-app": string;
|
|
775
|
+
"throttled-seconds-app": string;
|
|
776
|
+
"locked-badge": string;
|
|
777
|
+
};
|
|
778
|
+
"step-up-dialog": {
|
|
779
|
+
title: string;
|
|
780
|
+
description: string;
|
|
781
|
+
"description-app": string;
|
|
782
|
+
"description-email": string;
|
|
783
|
+
"description-email-to": string;
|
|
784
|
+
requesting: string;
|
|
785
|
+
cancel: string;
|
|
786
|
+
confirmed: string;
|
|
787
|
+
};
|
|
788
|
+
"enrolment-card": {
|
|
789
|
+
title: string;
|
|
790
|
+
description: string;
|
|
791
|
+
activate: string;
|
|
792
|
+
cancel: string;
|
|
793
|
+
"sessions-notice": string;
|
|
794
|
+
};
|
|
795
|
+
"recovery-codes-status": {
|
|
796
|
+
title: string;
|
|
797
|
+
description: string;
|
|
798
|
+
remaining: string;
|
|
799
|
+
"none-left": string;
|
|
800
|
+
"none-left-hint": string;
|
|
801
|
+
"new-codes": string;
|
|
802
|
+
"new-codes-hint": string;
|
|
803
|
+
};
|
|
752
804
|
zod: {
|
|
753
805
|
required: string;
|
|
754
806
|
invalid_type: {
|
|
@@ -1140,6 +1192,7 @@ export declare const en: {
|
|
|
1140
1192
|
timeline: {
|
|
1141
1193
|
label: string;
|
|
1142
1194
|
empty: string;
|
|
1195
|
+
events: string;
|
|
1143
1196
|
};
|
|
1144
1197
|
copy: {
|
|
1145
1198
|
copy: string;
|
|
@@ -1283,6 +1336,12 @@ export declare const en: {
|
|
|
1283
1336
|
step: string;
|
|
1284
1337
|
completed: string;
|
|
1285
1338
|
error: string;
|
|
1339
|
+
"step-of": string;
|
|
1340
|
+
back: string;
|
|
1341
|
+
next: string;
|
|
1342
|
+
optional: string;
|
|
1343
|
+
attention: string;
|
|
1344
|
+
failed: string;
|
|
1286
1345
|
};
|
|
1287
1346
|
"location-field": {
|
|
1288
1347
|
placeholder: string;
|
|
@@ -739,6 +739,58 @@ declare const _default: {
|
|
|
739
739
|
"close": "Close"
|
|
740
740
|
}
|
|
741
741
|
},
|
|
742
|
+
"verification-code": {
|
|
743
|
+
"label": "Code",
|
|
744
|
+
"recovery-label": "Recovery code",
|
|
745
|
+
"use-recovery": "Use a recovery code",
|
|
746
|
+
"use-app": "Use my authenticator app",
|
|
747
|
+
"use-email": "Use the code sent to you",
|
|
748
|
+
"confirm": "Confirm",
|
|
749
|
+
"resend": "Resend the code",
|
|
750
|
+
"resent": "A new code was sent.",
|
|
751
|
+
"sending": "Sending a new code…",
|
|
752
|
+
"new-code": "New code",
|
|
753
|
+
"try-again": "Try again",
|
|
754
|
+
"wrong": "Wrong code.",
|
|
755
|
+
"tries-left": "{count, plural, one {# try left.} other {# tries left.}}",
|
|
756
|
+
"incomplete": "Enter all {count} digits.",
|
|
757
|
+
"incomplete-recovery": "Enter your recovery code.",
|
|
758
|
+
"expired": "This code has expired.",
|
|
759
|
+
"failed": "The code could not be checked. Try again.",
|
|
760
|
+
"locked": "Too many wrong codes. Try again later.",
|
|
761
|
+
"throttled": "Too many requests. Wait a moment and try again.",
|
|
762
|
+
"throttled-minutes": "Wait {n} min before asking for a new code.",
|
|
763
|
+
"throttled-seconds": "Wait {n} s before asking for a new code.",
|
|
764
|
+
"throttled-minutes-app": "Wait {n} min before trying again.",
|
|
765
|
+
"throttled-seconds-app": "Wait {n} s before trying again.",
|
|
766
|
+
"locked-badge": "Locked"
|
|
767
|
+
},
|
|
768
|
+
"step-up-dialog": {
|
|
769
|
+
"title": "Confirm it's you",
|
|
770
|
+
"description": "For your security, confirm it's you to continue.",
|
|
771
|
+
"description-app": "Enter the code from your authenticator app to continue.",
|
|
772
|
+
"description-email": "Enter the code we sent you to continue.",
|
|
773
|
+
"description-email-to": "Enter the code we sent to {destination} to continue.",
|
|
774
|
+
"requesting": "Sending you a code…",
|
|
775
|
+
"cancel": "Cancel",
|
|
776
|
+
"confirmed": "Confirmed. Finishing up…"
|
|
777
|
+
},
|
|
778
|
+
"enrolment-card": {
|
|
779
|
+
"title": "Set up your authenticator app",
|
|
780
|
+
"description": "Scan the QR code with your authenticator app, then type the code it shows.",
|
|
781
|
+
"activate": "Activate",
|
|
782
|
+
"cancel": "Cancel",
|
|
783
|
+
"sessions-notice": "Turning this on signs you out on your other devices."
|
|
784
|
+
},
|
|
785
|
+
"recovery-codes-status": {
|
|
786
|
+
"title": "Recovery codes",
|
|
787
|
+
"description": "Each code signs you in once if you lose access to your authenticator app.",
|
|
788
|
+
"remaining": "{count, plural, one {# recovery code left} other {# recovery codes left}}",
|
|
789
|
+
"none-left": "No recovery codes left",
|
|
790
|
+
"none-left-hint": "Make a new set now, or you could be locked out if you lose your authenticator app.",
|
|
791
|
+
"new-codes": "New codes",
|
|
792
|
+
"new-codes-hint": "A new set replaces the old codes, which stop working."
|
|
793
|
+
},
|
|
742
794
|
"zod": {
|
|
743
795
|
"required": "This field is required.",
|
|
744
796
|
"invalid_type": {
|
|
@@ -1129,7 +1181,8 @@ declare const _default: {
|
|
|
1129
1181
|
},
|
|
1130
1182
|
"timeline": {
|
|
1131
1183
|
"label": "Timeline",
|
|
1132
|
-
"empty": "No activity yet"
|
|
1184
|
+
"empty": "No activity yet",
|
|
1185
|
+
"events": "{count, plural, one {# event} other {# events}}"
|
|
1133
1186
|
},
|
|
1134
1187
|
"copy": {
|
|
1135
1188
|
"copy": "Copy",
|
|
@@ -1272,7 +1325,13 @@ declare const _default: {
|
|
|
1272
1325
|
"stepper": {
|
|
1273
1326
|
"step": "Step {step}",
|
|
1274
1327
|
"completed": "Completed",
|
|
1275
|
-
"error": "Error"
|
|
1328
|
+
"error": "Error",
|
|
1329
|
+
"step-of": "Step {step} of {total}",
|
|
1330
|
+
"back": "Back",
|
|
1331
|
+
"next": "Next",
|
|
1332
|
+
"optional": "Optional",
|
|
1333
|
+
"attention": "Needs attention",
|
|
1334
|
+
"failed": "Steps needing attention: {count}"
|
|
1276
1335
|
},
|
|
1277
1336
|
"location-field": {
|
|
1278
1337
|
"placeholder": "No location selected",
|
|
@@ -749,6 +749,58 @@ export declare const fr: {
|
|
|
749
749
|
close: string;
|
|
750
750
|
};
|
|
751
751
|
};
|
|
752
|
+
"verification-code": {
|
|
753
|
+
label: string;
|
|
754
|
+
"recovery-label": string;
|
|
755
|
+
"use-recovery": string;
|
|
756
|
+
"use-app": string;
|
|
757
|
+
"use-email": string;
|
|
758
|
+
confirm: string;
|
|
759
|
+
resend: string;
|
|
760
|
+
resent: string;
|
|
761
|
+
sending: string;
|
|
762
|
+
"new-code": string;
|
|
763
|
+
"try-again": string;
|
|
764
|
+
wrong: string;
|
|
765
|
+
"tries-left": string;
|
|
766
|
+
incomplete: string;
|
|
767
|
+
"incomplete-recovery": string;
|
|
768
|
+
expired: string;
|
|
769
|
+
failed: string;
|
|
770
|
+
locked: string;
|
|
771
|
+
throttled: string;
|
|
772
|
+
"throttled-minutes": string;
|
|
773
|
+
"throttled-seconds": string;
|
|
774
|
+
"throttled-minutes-app": string;
|
|
775
|
+
"throttled-seconds-app": string;
|
|
776
|
+
"locked-badge": string;
|
|
777
|
+
};
|
|
778
|
+
"step-up-dialog": {
|
|
779
|
+
title: string;
|
|
780
|
+
description: string;
|
|
781
|
+
"description-app": string;
|
|
782
|
+
"description-email": string;
|
|
783
|
+
"description-email-to": string;
|
|
784
|
+
requesting: string;
|
|
785
|
+
cancel: string;
|
|
786
|
+
confirmed: string;
|
|
787
|
+
};
|
|
788
|
+
"enrolment-card": {
|
|
789
|
+
title: string;
|
|
790
|
+
description: string;
|
|
791
|
+
activate: string;
|
|
792
|
+
cancel: string;
|
|
793
|
+
"sessions-notice": string;
|
|
794
|
+
};
|
|
795
|
+
"recovery-codes-status": {
|
|
796
|
+
title: string;
|
|
797
|
+
description: string;
|
|
798
|
+
remaining: string;
|
|
799
|
+
"none-left": string;
|
|
800
|
+
"none-left-hint": string;
|
|
801
|
+
"new-codes": string;
|
|
802
|
+
"new-codes-hint": string;
|
|
803
|
+
};
|
|
752
804
|
zod: {
|
|
753
805
|
required: string;
|
|
754
806
|
invalid_type: {
|
|
@@ -1140,6 +1192,7 @@ export declare const fr: {
|
|
|
1140
1192
|
timeline: {
|
|
1141
1193
|
label: string;
|
|
1142
1194
|
empty: string;
|
|
1195
|
+
events: string;
|
|
1143
1196
|
};
|
|
1144
1197
|
copy: {
|
|
1145
1198
|
copy: string;
|
|
@@ -1283,6 +1336,12 @@ export declare const fr: {
|
|
|
1283
1336
|
step: string;
|
|
1284
1337
|
completed: string;
|
|
1285
1338
|
error: string;
|
|
1339
|
+
"step-of": string;
|
|
1340
|
+
back: string;
|
|
1341
|
+
next: string;
|
|
1342
|
+
optional: string;
|
|
1343
|
+
attention: string;
|
|
1344
|
+
failed: string;
|
|
1286
1345
|
};
|
|
1287
1346
|
"location-field": {
|
|
1288
1347
|
placeholder: string;
|
|
@@ -739,6 +739,58 @@ declare const _default: {
|
|
|
739
739
|
"close": "Fermer"
|
|
740
740
|
}
|
|
741
741
|
},
|
|
742
|
+
"verification-code": {
|
|
743
|
+
"label": "Code",
|
|
744
|
+
"recovery-label": "Code de récupération",
|
|
745
|
+
"use-recovery": "Utiliser un code de récupération",
|
|
746
|
+
"use-app": "Utiliser mon application d'authentification",
|
|
747
|
+
"use-email": "Utiliser le code envoyé",
|
|
748
|
+
"confirm": "Confirmer",
|
|
749
|
+
"resend": "Renvoyer le code",
|
|
750
|
+
"resent": "Un nouveau code a été envoyé.",
|
|
751
|
+
"sending": "Envoi d'un nouveau code…",
|
|
752
|
+
"new-code": "Nouveau code",
|
|
753
|
+
"try-again": "Réessayer",
|
|
754
|
+
"wrong": "Code incorrect.",
|
|
755
|
+
"tries-left": "{count, plural, one {# essai restant.} other {# essais restants.}}",
|
|
756
|
+
"incomplete": "Saisissez les {count} chiffres.",
|
|
757
|
+
"incomplete-recovery": "Saisissez votre code de récupération.",
|
|
758
|
+
"expired": "Ce code a expiré.",
|
|
759
|
+
"failed": "Le code n'a pas pu être vérifié. Réessayez.",
|
|
760
|
+
"locked": "Trop de codes incorrects. Réessayez plus tard.",
|
|
761
|
+
"throttled": "Trop de demandes. Patientez un instant avant de réessayer.",
|
|
762
|
+
"throttled-minutes": "Patientez {n} min avant de redemander un code.",
|
|
763
|
+
"throttled-seconds": "Patientez {n} s avant de redemander un code.",
|
|
764
|
+
"throttled-minutes-app": "Patientez {n} min avant de réessayer.",
|
|
765
|
+
"throttled-seconds-app": "Patientez {n} s avant de réessayer.",
|
|
766
|
+
"locked-badge": "Verrouillé"
|
|
767
|
+
},
|
|
768
|
+
"step-up-dialog": {
|
|
769
|
+
"title": "Confirmez que c'est bien vous",
|
|
770
|
+
"description": "Pour votre sécurité, confirmez que c'est bien vous pour continuer.",
|
|
771
|
+
"description-app": "Saisissez le code de votre application d'authentification pour continuer.",
|
|
772
|
+
"description-email": "Saisissez le code que nous vous avons envoyé pour continuer.",
|
|
773
|
+
"description-email-to": "Saisissez le code envoyé à {destination} pour continuer.",
|
|
774
|
+
"requesting": "Envoi d'un code…",
|
|
775
|
+
"cancel": "Annuler",
|
|
776
|
+
"confirmed": "Confirmé. Finalisation…"
|
|
777
|
+
},
|
|
778
|
+
"enrolment-card": {
|
|
779
|
+
"title": "Configurez votre application d'authentification",
|
|
780
|
+
"description": "Scannez le code QR avec votre application d'authentification, puis saisissez le code qu'elle affiche.",
|
|
781
|
+
"activate": "Activer",
|
|
782
|
+
"cancel": "Annuler",
|
|
783
|
+
"sessions-notice": "L'activation vous déconnecte de vos autres appareils."
|
|
784
|
+
},
|
|
785
|
+
"recovery-codes-status": {
|
|
786
|
+
"title": "Codes de récupération",
|
|
787
|
+
"description": "Chaque code vous connecte une seule fois si vous perdez l'accès à votre application d'authentification.",
|
|
788
|
+
"remaining": "{count, plural, one {# code de récupération restant} other {# codes de récupération restants}}",
|
|
789
|
+
"none-left": "Plus aucun code de récupération",
|
|
790
|
+
"none-left-hint": "Créez dès maintenant un nouveau lot, sinon vous risquez d'être bloqué si vous perdez votre application d'authentification.",
|
|
791
|
+
"new-codes": "Nouveaux codes",
|
|
792
|
+
"new-codes-hint": "Un nouveau lot remplace les anciens codes, qui cessent de fonctionner."
|
|
793
|
+
},
|
|
742
794
|
"zod": {
|
|
743
795
|
"required": "Ce champ est requis.",
|
|
744
796
|
"invalid_type": {
|
|
@@ -1129,7 +1181,8 @@ declare const _default: {
|
|
|
1129
1181
|
},
|
|
1130
1182
|
"timeline": {
|
|
1131
1183
|
"label": "Chronologie",
|
|
1132
|
-
"empty": "Aucune activité"
|
|
1184
|
+
"empty": "Aucune activité",
|
|
1185
|
+
"events": "{count, plural, one {# événement} other {# événements}}"
|
|
1133
1186
|
},
|
|
1134
1187
|
"copy": {
|
|
1135
1188
|
"copy": "Copier",
|
|
@@ -1272,7 +1325,13 @@ declare const _default: {
|
|
|
1272
1325
|
"stepper": {
|
|
1273
1326
|
"step": "Étape {step}",
|
|
1274
1327
|
"completed": "Terminée",
|
|
1275
|
-
"error": "Erreur"
|
|
1328
|
+
"error": "Erreur",
|
|
1329
|
+
"step-of": "Étape {step} sur {total}",
|
|
1330
|
+
"back": "Précédent",
|
|
1331
|
+
"next": "Suivant",
|
|
1332
|
+
"optional": "Facultative",
|
|
1333
|
+
"attention": "À corriger",
|
|
1334
|
+
"failed": "Étapes à corriger : {count}"
|
|
1276
1335
|
},
|
|
1277
1336
|
"location-field": {
|
|
1278
1337
|
"placeholder": "Aucun emplacement sélectionné",
|