cursedbelt 5.46.0 → 5.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/dist/react/charts/IntervalTimeline.d.ts.map +1 -1
- package/dist/react/charts/IntervalTimeline.js +2 -2
- package/dist/react/charts/IntervalTimeline.js.map +1 -1
- package/dist/react/chat/DateMarker.d.ts +4 -0
- package/dist/react/chat/DateMarker.d.ts.map +1 -1
- package/dist/react/chat/DateMarker.js +15 -2
- package/dist/react/chat/DateMarker.js.map +1 -1
- package/dist/react/components/Button.d.ts.map +1 -1
- package/dist/react/components/Button.js +5 -0
- package/dist/react/components/Button.js.map +1 -1
- package/dist/react/components/DataTable/DataTable.d.ts.map +1 -1
- package/dist/react/components/DataTable/DataTable.js +1 -1
- package/dist/react/components/DataTable/DataTable.js.map +1 -1
- package/dist/react/components/DataTable/SortHeader.d.ts +4 -1
- package/dist/react/components/DataTable/SortHeader.d.ts.map +1 -1
- package/dist/react/components/DataTable/SortHeader.js +22 -5
- package/dist/react/components/DataTable/SortHeader.js.map +1 -1
- package/dist/react/components/DataTable/types.d.ts +10 -0
- package/dist/react/components/DataTable/types.d.ts.map +1 -1
- package/dist/react/components/DataTable/types.js.map +1 -1
- package/dist/react/components/DropdownMenu.js +10 -4
- package/dist/react/components/DropdownMenu.js.map +1 -1
- package/dist/react/components/Field.d.ts +9 -1
- package/dist/react/components/Field.d.ts.map +1 -1
- package/dist/react/components/Field.js +3 -3
- package/dist/react/components/Field.js.map +1 -1
- package/dist/react/components/ListToolbar.d.ts +5 -0
- package/dist/react/components/ListToolbar.d.ts.map +1 -1
- package/dist/react/components/ListToolbar.js +14 -2
- package/dist/react/components/ListToolbar.js.map +1 -1
- package/dist/react/components/SecretInput.d.ts +4 -2
- package/dist/react/components/SecretInput.d.ts.map +1 -1
- package/dist/react/components/SecretInput.js +2 -2
- package/dist/react/components/SecretInput.js.map +1 -1
- package/dist/react/components/auth/AuthCard.d.ts.map +1 -1
- package/dist/react/components/auth/AuthCard.js +5 -1
- package/dist/react/components/auth/AuthCard.js.map +1 -1
- package/dist/react/components/auth/PasswordSetFields.d.ts.map +1 -1
- package/dist/react/components/auth/PasswordSetFields.js +2 -2
- package/dist/react/components/auth/PasswordSetFields.js.map +1 -1
- package/dist/react/components/auth/PasswordStrengthMeter.d.ts.map +1 -1
- package/dist/react/components/auth/PasswordStrengthMeter.js +3 -1
- package/dist/react/components/auth/PasswordStrengthMeter.js.map +1 -1
- package/dist/react/components/auth/RegisterForm.js +1 -1
- package/dist/react/components/auth/RegisterForm.js.map +1 -1
- package/dist/react/components/auth/SignupForm.d.ts.map +1 -1
- package/dist/react/components/auth/SignupForm.js +4 -2
- package/dist/react/components/auth/SignupForm.js.map +1 -1
- package/dist/react/components/auth/TotpEntry.d.ts.map +1 -1
- package/dist/react/components/auth/TotpEntry.js +18 -1
- package/dist/react/components/auth/TotpEntry.js.map +1 -1
- package/dist/react/components/auth/fields.d.ts +3 -1
- package/dist/react/components/auth/fields.d.ts.map +1 -1
- package/dist/react/components/auth/fields.js +6 -2
- package/dist/react/components/auth/fields.js.map +1 -1
- package/dist/react/components/calendar/DayAgenda.d.ts.map +1 -1
- package/dist/react/components/calendar/DayAgenda.js +4 -2
- package/dist/react/components/calendar/DayAgenda.js.map +1 -1
- package/dist/react/components/calendar/EventChip.d.ts +5 -1
- package/dist/react/components/calendar/EventChip.d.ts.map +1 -1
- package/dist/react/components/calendar/EventChip.js +10 -3
- package/dist/react/components/calendar/EventChip.js.map +1 -1
- package/dist/react/components/calendar/MonthGrid.js +1 -1
- package/dist/react/components/calendar/MonthGrid.js.map +1 -1
- package/dist/react/components/calendar/WeekView.d.ts.map +1 -1
- package/dist/react/components/calendar/WeekView.js +2 -2
- package/dist/react/components/calendar/WeekView.js.map +1 -1
- package/dist/react/components/calendar/colorUtils.d.ts.map +1 -1
- package/dist/react/components/calendar/colorUtils.js +13 -11
- package/dist/react/components/calendar/colorUtils.js.map +1 -1
- package/dist/react/components/fieldErrorText.d.ts +12 -0
- package/dist/react/components/fieldErrorText.d.ts.map +1 -0
- package/dist/react/components/fieldErrorText.js +12 -0
- package/dist/react/components/fieldErrorText.js.map +1 -0
- package/dist/react/deep-link/resume.d.ts.map +1 -1
- package/dist/react/deep-link/resume.js +9 -2
- package/dist/react/deep-link/resume.js.map +1 -1
- package/dist/react/file-tree/FileTree.d.ts +3 -0
- package/dist/react/file-tree/FileTree.d.ts.map +1 -1
- package/dist/react/file-tree/FileTree.js +12 -1
- package/dist/react/file-tree/FileTree.js.map +1 -1
- package/dist/react/file-tree/FolderViewMenus.d.ts +3 -1
- package/dist/react/file-tree/FolderViewMenus.d.ts.map +1 -1
- package/dist/react/file-tree/FolderViewMenus.js +51 -15
- package/dist/react/file-tree/FolderViewMenus.js.map +1 -1
- package/dist/react/file-tree/folderView.d.ts +25 -4
- package/dist/react/file-tree/folderView.d.ts.map +1 -1
- package/dist/react/file-tree/folderView.js +49 -9
- package/dist/react/file-tree/folderView.js.map +1 -1
- package/dist/react/file-tree/index.d.ts +2 -1
- package/dist/react/file-tree/index.d.ts.map +1 -1
- package/dist/react/file-tree/index.js +2 -1
- package/dist/react/file-tree/index.js.map +1 -1
- package/dist/react/file-tree/useFolderView.d.ts +34 -4
- package/dist/react/file-tree/useFolderView.d.ts.map +1 -1
- package/dist/react/file-tree/useFolderView.js +43 -11
- package/dist/react/file-tree/useFolderView.js.map +1 -1
- package/dist/react/media/PlayerStrip.d.ts +9 -1
- package/dist/react/media/PlayerStrip.d.ts.map +1 -1
- package/dist/react/media/PlayerStrip.js +30 -6
- package/dist/react/media/PlayerStrip.js.map +1 -1
- package/dist/react/media/splitActions.d.ts +15 -0
- package/dist/react/media/splitActions.d.ts.map +1 -0
- package/dist/react/media/splitActions.js +16 -0
- package/dist/react/media/splitActions.js.map +1 -0
- package/dist/react/nav/TopBar.d.ts +1 -0
- package/dist/react/nav/TopBar.d.ts.map +1 -1
- package/dist/react/nav/TopBar.js +5 -1
- package/dist/react/nav/TopBar.js.map +1 -1
- package/dist/styles-areas/analytics.css +26 -25
- package/dist/styles-areas/calendar.css +4 -4
- package/dist/styles-areas/data-table.css +26 -25
- package/dist/styles-areas/workbench.css +5 -5
- package/dist/styles-utilities.css +32 -8
- package/package.json +5 -1
- package/scripts/demoCoverage.spec.ts +33 -0
- package/scripts/demoCoverage.ts +124 -0
- package/src/react/charts/IntervalTimeline.tsx +6 -4
- package/src/react/chat/DateMarker.tsx +22 -6
- package/src/react/chat/MessageThread.spec.tsx +25 -1
- package/src/react/components/Button.spec.tsx +11 -0
- package/src/react/components/Button.tsx +5 -0
- package/src/react/components/DataTable/DataTable.spec.tsx +43 -0
- package/src/react/components/DataTable/DataTable.tsx +1 -0
- package/src/react/components/DataTable/SortHeader.tsx +45 -5
- package/src/react/components/DataTable/types.ts +10 -0
- package/src/react/components/DropdownMenu.spec.tsx +26 -0
- package/src/react/components/DropdownMenu.tsx +10 -3
- package/src/react/components/Field.spec.tsx +24 -0
- package/src/react/components/Field.tsx +15 -5
- package/src/react/components/ListToolbar.tsx +20 -3
- package/src/react/components/SecretInput.tsx +5 -1
- package/src/react/components/auth/AuthCard.spec.tsx +8 -0
- package/src/react/components/auth/AuthCard.tsx +4 -1
- package/src/react/components/auth/PasswordSetFields.tsx +7 -11
- package/src/react/components/auth/PasswordStrengthMeter.tsx +5 -3
- package/src/react/components/auth/RegisterForm.tsx +6 -6
- package/src/react/components/auth/SignupForm.spec.tsx +17 -0
- package/src/react/components/auth/SignupForm.tsx +11 -10
- package/src/react/components/auth/TotpEntry.spec.tsx +27 -0
- package/src/react/components/auth/TotpEntry.tsx +18 -1
- package/src/react/components/auth/fields.tsx +8 -1
- package/src/react/components/calendar/DayAgenda.spec.tsx +9 -0
- package/src/react/components/calendar/DayAgenda.tsx +5 -2
- package/src/react/components/calendar/EventChip.spec.tsx +12 -8
- package/src/react/components/calendar/EventChip.tsx +11 -6
- package/src/react/components/calendar/MonthGrid.tsx +1 -1
- package/src/react/components/calendar/WeekView.tsx +5 -3
- package/src/react/components/calendar/colorUtils.ts +13 -11
- package/src/react/components/fieldErrorText.tsx +17 -0
- package/src/react/deep-link/resume.spec.tsx +16 -0
- package/src/react/deep-link/resume.ts +9 -2
- package/src/react/file-tree/FileTree.tsx +14 -1
- package/src/react/file-tree/FolderViewMenus.tsx +57 -17
- package/src/react/file-tree/folderView.spec.ts +63 -1
- package/src/react/file-tree/folderView.ts +63 -12
- package/src/react/file-tree/folderViewTree.spec.tsx +111 -16
- package/src/react/file-tree/index.ts +15 -1
- package/src/react/file-tree/useFolderView.ts +73 -12
- package/src/react/media/PlayerStrip.tsx +53 -4
- package/src/react/media/playerStrip.spec.tsx +20 -0
- package/src/react/media/splitActions.ts +23 -0
- package/src/react/nav/TopBar.spec.tsx +8 -0
- package/src/react/nav/TopBar.tsx +5 -0
- package/src/styles-areas/analytics.css +26 -25
- package/src/styles-areas/calendar.css +4 -4
- package/src/styles-areas/data-table.css +26 -25
- package/src/styles-areas/workbench.css +5 -5
- package/src/styles-utilities.css +32 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SortHeader.js","sourceRoot":"","sources":["../../../../src/react/components/DataTable/SortHeader.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D;;;;;;;;;;;;GAYG;AACH,MAAM,YAAY,GAAG,CAAC,KAAa,EAAE,QAAmB,EAAE,EAAE,CAAC,CAC3D,KAAC,OAAO,IAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAC,QAAQ,YACnC,QAAQ,GACD,CACX,CAAC;
|
|
1
|
+
{"version":3,"file":"SortHeader.js","sourceRoot":"","sources":["../../../../src/react/components/DataTable/SortHeader.tsx"],"names":[],"mappings":"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"}
|
|
@@ -86,6 +86,16 @@ export interface ColDef<TRow = Record<string, unknown>> {
|
|
|
86
86
|
* Applies to the grid; the card tiers already choose their own fields.
|
|
87
87
|
*/
|
|
88
88
|
hideBelow?: 'sm' | 'md' | 'lg';
|
|
89
|
+
/**
|
|
90
|
+
* A glyph the header shows INSTEAD of its label when the table (its container) is narrower
|
|
91
|
+
* than 42rem — {@link hideBelow}'s `'sm'` step — Spotify's clock over the duration column. `label` stays the
|
|
92
|
+
* accessible name, the hover tip and the Columns-menu name; only the painted text gives way.
|
|
93
|
+
*
|
|
94
|
+
* 🔴 Why (forge task 2577): apps/music's Length column read "LE…" at 390px. "LENGTH" and its
|
|
95
|
+
* sort arrow need ~90px, and on a phone those pixels belong to the title, which is already
|
|
96
|
+
* truncating real titles. A truncated word is a header nobody can read; a glyph is one.
|
|
97
|
+
*/
|
|
98
|
+
headerIcon?: ReactNode;
|
|
89
99
|
/**
|
|
90
100
|
* Drop order when the table is too NARROW for its declared tracks — HIGHER numbers go first.
|
|
91
101
|
* Columns without one never drop. The table measures its own width and collapses the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/react/components/DataTable/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/react/components/DataTable/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/react/components/DataTable/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/react/components/DataTable/types.ts"],"names":[],"mappings":"AA0KA;;;;;;;;;;;;;GAaG;AACH,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,QAAQ;IACR,KAAK;IACL,OAAO;IACP,UAAU;IACV,UAAU;IACV,IAAI;IACJ,SAAS;IACT,UAAU;IACV,OAAO;IACP,OAAO;IACP,SAAS;CACV,CAAC,CAAC;AAEH;sFACsF;AACtF,MAAM,UAAU,eAAe,CAAO,GAAiB;IACrD,OAAO,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,IAAI,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACxE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAO,GAAiB,EAAE,MAA0B;IACtF,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACnG,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;IAC5D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACpC,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,oCAAoC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAC/G,CAAC;IACF,OAAO,OAAO;QACZ,CAAC,CAAC,iCAAiC,GAAG,CAAC,GAAG,uJAAuJ;QACjM,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,kBAAkB,CAAO,GAAiB;IACxD,IAAI,GAAG,CAAC,KAAK;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC;IAChC,IAAI,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI;QAAE,OAAO,OAAO,CAAC;IAC/C,OAAO,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;AAC7D,CAAC;AA+CD;;;;GAIG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,UAAU,CAAC"}
|
|
@@ -45,7 +45,13 @@ export function DropdownMenu({ trigger, items, align = 'start', side = 'bottom',
|
|
|
45
45
|
}
|
|
46
46
|
function MenuSections({ items }) {
|
|
47
47
|
const sections = useMemo(() => arrangeMenuItems(items), [items]);
|
|
48
|
-
|
|
48
|
+
/*
|
|
49
|
+
* One row that can be checked gives every row of this menu the check column, as a native menu
|
|
50
|
+
* does: otherwise the toggles' icons sit 24px right of their neighbours' (the player's ⋯, forge
|
|
51
|
+
* task 2568). A submenu is its own menu and decides for itself.
|
|
52
|
+
*/
|
|
53
|
+
const inset = items.some((item) => !item.divider && item.checked !== undefined);
|
|
54
|
+
return sections.map((section, index) => (_jsxs(Fragment, { children: [index > 0 && _jsx(RDrop.Separator, { className: 'my-1 h-px bg-border' }), section.map((item) => (_jsx(DropdownItem, { item: item, inset: inset }, item.key)))] }, section[0]?.key ?? index)));
|
|
49
55
|
}
|
|
50
56
|
/** The label, with the disabled reason under it when there is one. */
|
|
51
57
|
function ItemLabel({ item }) {
|
|
@@ -57,17 +63,17 @@ function ItemLabel({ item }) {
|
|
|
57
63
|
function ItemTrailing({ item }) {
|
|
58
64
|
return (_jsxs(_Fragment, { children: [item.description && _jsx("span", { className: 'ml-auto text-xs text-muted-foreground', children: item.description }), item.shortcut && (_jsx("kbd", { "data-cb-menu-shortcut": '', className: cn('font-sans text-caption tracking-wide text-muted-foreground', !item.description && 'ml-auto', 'pl-4'), children: formatHotkey(item.shortcut) }))] }));
|
|
59
65
|
}
|
|
60
|
-
function DropdownItem({ item }) {
|
|
66
|
+
function DropdownItem({ item, inset }) {
|
|
61
67
|
const container = useFloatingContainer();
|
|
62
68
|
if (item.divider) {
|
|
63
69
|
return _jsx(RDrop.Separator, { className: 'my-1 h-px bg-border' });
|
|
64
70
|
}
|
|
65
71
|
if (item.children?.length) {
|
|
66
|
-
return (_jsxs(RDrop.Sub, { children: [_jsxs(RDrop.SubTrigger, { className: cn(FLOATING_ITEM_BASE, 'justify-between'), children: [_jsxs("span", { className: 'flex items-center gap-2', children: [item.icon && (_jsx("span", { className: 'inline-flex size-4 items-center justify-center', "aria-hidden": true, children: item.icon })), item.label] }), _jsx(ChevronRight, { className: 'size-4 opacity-60' })] }), _jsx(RDrop.Portal, { container: container, children: _jsx(RDrop.SubContent, { className: cn(FLOATING_CONTENT_BASE, FLOATING_ANIMATION, 'min-w-32 p-1'), sideOffset: 2, collisionPadding: FLOATING_COLLISION_PADDING, children: _jsx(MenuSections, { items: item.children }) }) })] }));
|
|
72
|
+
return (_jsxs(RDrop.Sub, { children: [_jsxs(RDrop.SubTrigger, { className: cn(FLOATING_ITEM_BASE, 'justify-between', inset && 'pl-8'), children: [_jsxs("span", { className: 'flex items-center gap-2', children: [item.icon && (_jsx("span", { className: 'inline-flex size-4 items-center justify-center', "aria-hidden": true, children: item.icon })), item.label] }), _jsx(ChevronRight, { className: 'size-4 opacity-60' })] }), _jsx(RDrop.Portal, { container: container, children: _jsx(RDrop.SubContent, { className: cn(FLOATING_CONTENT_BASE, FLOATING_ANIMATION, 'min-w-32 p-1'), sideOffset: 2, collisionPadding: FLOATING_COLLISION_PADDING, children: _jsx(MenuSections, { items: item.children }) }) })] }));
|
|
67
73
|
}
|
|
68
74
|
if (item.checked !== undefined) {
|
|
69
75
|
return (_jsxs(RDrop.CheckboxItem, { checked: item.checked, onCheckedChange: () => item.onClick?.(), disabled: item.disabled || !!item.disabledReason, title: item.title ?? item.disabledReason, className: cn(FLOATING_ITEM_BASE, 'pl-8', item.destructive && 'text-destructive focus:text-destructive'), children: [_jsx(RDrop.ItemIndicator, { className: 'absolute left-2 flex size-4 items-center justify-center', children: _jsx(Check, { className: 'size-3' }) }), item.icon && (_jsx("span", { className: 'inline-flex size-4 items-center justify-center', "aria-hidden": true, children: item.icon })), _jsx(ItemLabel, { item: item }), _jsx(ItemTrailing, { item: item })] }));
|
|
70
76
|
}
|
|
71
|
-
return (_jsxs(RDrop.Item, { onSelect: () => item.onClick?.(), disabled: item.disabled || !!item.disabledReason, title: item.title ?? item.disabledReason, className: cn(FLOATING_ITEM_BASE, item.destructive && 'text-destructive focus:bg-destructive/10 focus:text-destructive'), children: [item.icon && (_jsx("span", { className: 'inline-flex size-4 items-center justify-center', "aria-hidden": true, children: item.icon })), _jsx(ItemLabel, { item: item }), _jsx(ItemTrailing, { item: item })] }));
|
|
77
|
+
return (_jsxs(RDrop.Item, { onSelect: () => item.onClick?.(), disabled: item.disabled || !!item.disabledReason, title: item.title ?? item.disabledReason, className: cn(FLOATING_ITEM_BASE, inset && 'pl-8', item.destructive && 'text-destructive focus:bg-destructive/10 focus:text-destructive'), children: [item.icon && (_jsx("span", { className: 'inline-flex size-4 items-center justify-center', "aria-hidden": true, children: item.icon })), _jsx(ItemLabel, { item: item }), _jsx(ItemTrailing, { item: item })] }));
|
|
72
78
|
}
|
|
73
79
|
//# sourceMappingURL=DropdownMenu.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropdownMenu.js","sourceRoot":"","sources":["../../../src/react/components/DropdownMenu.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,KAAK,MAAM,+BAA+B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAkB,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACzF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EACL,kBAAkB,EAClB,0BAA0B,EAC1B,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,0BAA0B,CAAC;AA4ElC;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,OAAO,EACP,KAAK,EACL,KAAK,GAAG,OAAO,EACf,IAAI,GAAG,QAAQ,EACf,SAAS,EACT,IAAI,EACJ,YAAY,GACM;IAClB,MAAM,SAAS,GAAG,oBAAoB,EAAE,CAAC;IACzC,gFAAgF;IAChF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,IAAI,IAAI,OAAO,CAAC;IAC/B,MAAM,OAAO,GAAG,WAAW,CACzB,CAAC,IAAa,EAAE,EAAE;QAChB,IAAI,IAAI,KAAK,SAAS;YAAE,UAAU,CAAC,IAAI,CAAC,CAAC;QACzC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC,EACD,CAAC,IAAI,EAAE,YAAY,CAAC,CACrB,CAAC;IACF;;;;;OAKG;IACH,MAAM,UAAU,GAAG,MAAM,CAA2B,IAAI,CAAC,CAAC;IAC1D,MAAM,WAAW,GAAG,eAAe,CAAC;QAClC,IAAI,EAAE,MAAM;QACZ,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QAC/B,MAAM,EAAE,CAAC,UAAU,CAAC;QACpB,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,aAAa;KACxB,CAAC,CAAC;IACH,OAAO,CACL,MAAC,KAAK,CAAC,IAAI,IAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,aAC7C,KAAC,KAAK,CAAC,OAAO,IAAC,OAAO,QAAC,GAAG,EAAE,UAAU,YACnC,OAAO,GACM,EAChB,KAAC,KAAK,CAAC,MAAM,IAAC,SAAS,EAAE,SAAS,YAChC,MAAC,KAAK,CAAC,OAAO,IACZ,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,CAAC,EACb,gBAAgB,EAAE,0BAA0B,EAC5C,cAAc,EAAE,WAAW,CAAC,cAAc,EAC1C,oBAAoB,EAAE,WAAW,CAAC,oBAAoB,EACtD,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,cAAc,EAAE,SAAS,CAAC,aAEnF,KAAC,YAAY,IAAC,KAAK,EAAE,KAAK,GAAI,EAC9B,KAAC,KAAK,CAAC,KAAK,IAAC,SAAS,EAAC,aAAa,GAAG,IACzB,GACH,IACJ,CACd,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EAAE,KAAK,EAA0C;IACrE,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CACtC,MAAC,QAAQ,eACN,KAAK,GAAG,CAAC,IAAI,KAAC,KAAK,CAAC,SAAS,IAAC,SAAS,EAAC,qBAAqB,GAAG,EAChE,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACrB,KAAC,YAAY,IAAgB,IAAI,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"DropdownMenu.js","sourceRoot":"","sources":["../../../src/react/components/DropdownMenu.tsx"],"names":[],"mappings":"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"}
|
|
@@ -51,6 +51,14 @@ interface FieldBaseProps {
|
|
|
51
51
|
* reachability gate caught exactly that: "Create an account" did nothing.
|
|
52
52
|
*/
|
|
53
53
|
reserveErrorSpace?: boolean;
|
|
54
|
+
/**
|
|
55
|
+
* Live feedback on the VALUE — a password-strength meter, a character count — in the error's
|
|
56
|
+
* slot under the control: shown while there is no error, giving the slot to the error while
|
|
57
|
+
* one shows (FRM-10), and never folded into the ⓘ the way help is. With `reserveErrorSpace`
|
|
58
|
+
* it holds the reserved line itself, so it must fit one line of `text-sm`. (Forge task 2466:
|
|
59
|
+
* the meter used to sit BELOW the reserved empty line, 34px from the field it measures.)
|
|
60
|
+
*/
|
|
61
|
+
status?: ReactNode;
|
|
54
62
|
/**
|
|
55
63
|
* How wide the CONTROL may grow — a cap, never a fixed width (see {@link FieldWidth}). The
|
|
56
64
|
* label, description and error keep the row's full width.
|
|
@@ -112,5 +120,5 @@ export type FieldProps = FieldBaseProps & ({
|
|
|
112
120
|
* Usable outside a `FormProvider` (label + control render; no error) so option-form
|
|
113
121
|
* snippets can reuse it, but the error wiring needs a form context.
|
|
114
122
|
*/
|
|
115
|
-
export declare function Field({ name, label, hint, description, required, children, className, reserveErrorSpace, width, descriptionOnNarrow, layout, group, }: FieldProps): import("react").JSX.Element;
|
|
123
|
+
export declare function Field({ name, label, hint, description, required, children, className, reserveErrorSpace, status, width, descriptionOnNarrow, layout, group, }: FieldProps): import("react").JSX.Element;
|
|
116
124
|
//# sourceMappingURL=Field.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Field.d.ts","sourceRoot":"","sources":["../../../src/react/components/Field.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Field.d.ts","sourceRoot":"","sources":["../../../src/react/components/Field.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,YAAY,EAAE,KAAK,SAAS,EAAS,MAAM,OAAO,CAAC;AAI/F,OAAO,EACL,sBAAsB,EAEtB,eAAe,EACf,KAAK,UAAU,EAEhB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,CAAC;AAEnD;;uFAEuF;AACvF,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,cAAc,EAAE,IAAI,GAAG,SAAS,CAAC;IACjC,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAC;CACxC;AAED,UAAU,cAAc;IACtB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,sEAAsE;IACtE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB;;;;OAIG;IACH,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB;;;;OAIG;IACH,MAAM,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;;;;;;;;OAYG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;;;;;;OAQG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;;;;OAKG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,CAAC;CAClD;AAED,MAAM,MAAM,UAAU,GAAG,cAAc,GACrC,CACI;IACE,KAAK,CAAC,EAAE,KAAK,CAAC;IACd;;;;;OAKG;IACH,QAAQ,EAAE,YAAY,GAAG,CAAC,CAAC,OAAO,EAAE,gBAAgB,KAAK,SAAS,CAAC,CAAC;CACrE,GACD;IACE;;;;;;;;;;OAUG;IACH,KAAK,EAAE,IAAI,CAAC;IACZ,4CAA4C;IAC5C,QAAQ,EAAE,SAAS,CAAC;CACrB,CACJ,CAAC;AAEJ;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,KAAK,CAAC,EACpB,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,iBAAyB,EACzB,MAAM,EACN,KAAK,EACL,mBAA4B,EAC5B,MAAkB,EAClB,KAAa,GACd,EAAE,UAAU,+BAqKZ"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { AlertCircle } from 'lucide-react';
|
|
3
2
|
import { cloneElement, isValidElement, useId } from 'react';
|
|
4
3
|
import { get, useFormContext } from 'react-hook-form';
|
|
5
4
|
import { cn } from '../lib/cn.js';
|
|
5
|
+
import { FieldErrorText } from './fieldErrorText.js';
|
|
6
6
|
import { DESCRIPTION_FOLD_CHARS, FIELD_WIDTH_CLASS, HELP_FOLD_CHARS, naturalFieldWidth, } from '../lib/field.js';
|
|
7
7
|
import { InfoHint } from './InfoHint.js';
|
|
8
8
|
export { DESCRIPTION_FOLD_CHARS, HELP_FOLD_CHARS };
|
|
@@ -24,7 +24,7 @@ export { DESCRIPTION_FOLD_CHARS, HELP_FOLD_CHARS };
|
|
|
24
24
|
* Usable outside a `FormProvider` (label + control render; no error) so option-form
|
|
25
25
|
* snippets can reuse it, but the error wiring needs a form context.
|
|
26
26
|
*/
|
|
27
|
-
export function Field({ name, label, hint, description, required, children, className, reserveErrorSpace = false, width, descriptionOnNarrow = 'auto', layout = 'stacked', group = false, }) {
|
|
27
|
+
export function Field({ name, label, hint, description, required, children, className, reserveErrorSpace = false, status, width, descriptionOnNarrow = 'auto', layout = 'stacked', group = false, }) {
|
|
28
28
|
const form = useFormContext();
|
|
29
29
|
const errors = form?.formState.errors;
|
|
30
30
|
const error = (errors && name ? get(errors, name)?.message : undefined);
|
|
@@ -77,6 +77,6 @@ export function Field({ name, label, hint, description, required, children, clas
|
|
|
77
77
|
'aria-labelledby': label != null ? labelId : undefined,
|
|
78
78
|
'aria-describedby': describedBy,
|
|
79
79
|
}
|
|
80
|
-
: {}), children: [label != null || hint != null || folds || foldsAlways ? (_jsxs("div", { className: 'flex min-w-0 items-center gap-1', "data-cb-field-head": '', children: [label != null ? (group ? (_jsxs("span", { id: labelId, className: 'text-sm font-medium text-foreground', "data-cb-field-label": '', children: [label, asterisk] })) : (_jsxs("label", { htmlFor: id, className: 'text-sm font-medium text-foreground', "data-cb-field-label": '', children: [label, asterisk] }))) : null, foldsAlways ? (_jsxs(InfoHint, { title: labelTitle, label: hintLabel, children: [hint != null ? _jsx("p", { className: 'mb-1', children: hint }) : null, description] })) : null, hint != null && !folds && !foldsAlways ? _jsx(InfoHint, { title: labelTitle, label: hintLabel, children: hint }) : null, folds ? (_jsxs(_Fragment, { children: [hint != null ? (_jsx("span", { className: 'inline-flex max-sm:hidden', children: _jsx(InfoHint, { title: labelTitle, label: hintLabel, children: hint }) })) : null, _jsx("span", { className: 'inline-flex sm:hidden', children: _jsxs(InfoHint, { title: labelTitle, label: hintLabel, children: [hint != null ? _jsx("p", { className: 'mb-1', children: hint }) : null, description] }) })] })) : null] })) : null, widthClass ? (_jsx("div", { className: cn('w-full', widthClass), "data-cb-field-control": '', children: control })) : (control), description != null ? (_jsx("p", { id: descId, "data-cb-field-description": '', "data-cb-field-help": '', className: cn('m-0 line-clamp-2 text-xs font-normal leading-snug text-muted-foreground', (error || foldsAlways) && 'sr-only', folds && 'max-sm:hidden'), children: description })) : null, error ? (
|
|
80
|
+
: {}), children: [label != null || hint != null || folds || foldsAlways ? (_jsxs("div", { className: 'flex min-w-0 items-center gap-1', "data-cb-field-head": '', children: [label != null ? (group ? (_jsxs("span", { id: labelId, className: 'text-sm font-medium text-foreground', "data-cb-field-label": '', children: [label, asterisk] })) : (_jsxs("label", { htmlFor: id, className: 'text-sm font-medium text-foreground', "data-cb-field-label": '', children: [label, asterisk] }))) : null, foldsAlways ? (_jsxs(InfoHint, { title: labelTitle, label: hintLabel, children: [hint != null ? _jsx("p", { className: 'mb-1', children: hint }) : null, description] })) : null, hint != null && !folds && !foldsAlways ? _jsx(InfoHint, { title: labelTitle, label: hintLabel, children: hint }) : null, folds ? (_jsxs(_Fragment, { children: [hint != null ? (_jsx("span", { className: 'inline-flex max-sm:hidden', children: _jsx(InfoHint, { title: labelTitle, label: hintLabel, children: hint }) })) : null, _jsx("span", { className: 'inline-flex sm:hidden', children: _jsxs(InfoHint, { title: labelTitle, label: hintLabel, children: [hint != null ? _jsx("p", { className: 'mb-1', children: hint }) : null, description] }) })] })) : null] })) : null, widthClass ? (_jsx("div", { className: cn('w-full', widthClass), "data-cb-field-control": '', children: control })) : (control), description != null ? (_jsx("p", { id: descId, "data-cb-field-description": '', "data-cb-field-help": '', className: cn('m-0 line-clamp-2 text-xs font-normal leading-snug text-muted-foreground', (error || foldsAlways) && 'sr-only', folds && 'max-sm:hidden'), children: description })) : null, error ? (_jsx(FieldErrorText, { id: errId, children: error })) : status != null ? (_jsx("div", { className: 'min-h-[1lh] text-sm', "data-cb-field-status": '', children: status })) : reserveErrorSpace && (description == null || foldsAlways) ? (_jsx("p", { "aria-hidden": true, className: 'min-h-[1lh] text-sm', "data-cc-field-error-reserved": '' })) : null] }));
|
|
81
81
|
}
|
|
82
82
|
//# sourceMappingURL=Field.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Field.js","sourceRoot":"","sources":["../../../src/react/components/Field.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Field.js","sourceRoot":"","sources":["../../../src/react/components/Field.tsx"],"names":[],"mappings":"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"}
|
|
@@ -73,6 +73,11 @@ export interface ListToolbarProps {
|
|
|
73
73
|
* keeps the controls right when everything fits on one line and lets them ride down as
|
|
74
74
|
* a group when it does not.
|
|
75
75
|
*
|
|
76
|
+
* Except with chips, from `sm:`: a strip sized to its content took the whole row and wrapped the
|
|
77
|
+
* controls under it (18 genres in flix, at 1440 AND 2560 — forge task 2560), breaking the one
|
|
78
|
+
* line this component exists for. There the row stops wrapping and the strip becomes a scroll
|
|
79
|
+
* lane (`flex-1`, `min-w-0` from its own root) between a fixed search box and fixed controls.
|
|
80
|
+
*
|
|
76
81
|
* No `role='toolbar'`: that role promises arrow-key roving focus between its controls,
|
|
77
82
|
* which would take the arrow keys away from the text box and the native `<select>`
|
|
78
83
|
* that live on this line. Tab order is the correct affordance here.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListToolbar.d.ts","sourceRoot":"","sources":["../../../src/react/components/ListToolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGxE,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9B,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;IACrC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,KAAK,IAAI,CAAC;IACzD,iEAAiE;IACjE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oEAAoE;IACpE,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,kFAAkF;IAClF,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,wFAAwF;IACxF,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,mDAAmD;IACnD,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED
|
|
1
|
+
{"version":3,"file":"ListToolbar.d.ts","sourceRoot":"","sources":["../../../src/react/components/ListToolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGxE,MAAM,WAAW,gBAAgB;IAC/B;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,sFAAsF;IACtF,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC9B,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC;IACrC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,KAAK,IAAI,CAAC;IACzD,iEAAiE;IACjE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oEAAoE;IACpE,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,kFAAkF;IAClF,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,wFAAwF;IACxF,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,mDAAmD;IACnD,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,wBAAgB,WAAW,CAAC,EAC1B,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,KAAK,EACL,SAAgB,EAChB,YAAY,EACZ,UAAkB,EAClB,aAAa,EACb,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,GACV,EAAE,gBAAgB,+BAsDlB"}
|
|
@@ -36,6 +36,11 @@ import { SearchInput } from './SearchInput.js';
|
|
|
36
36
|
* keeps the controls right when everything fits on one line and lets them ride down as
|
|
37
37
|
* a group when it does not.
|
|
38
38
|
*
|
|
39
|
+
* Except with chips, from `sm:`: a strip sized to its content took the whole row and wrapped the
|
|
40
|
+
* controls under it (18 genres in flix, at 1440 AND 2560 — forge task 2560), breaking the one
|
|
41
|
+
* line this component exists for. There the row stops wrapping and the strip becomes a scroll
|
|
42
|
+
* lane (`flex-1`, `min-w-0` from its own root) between a fixed search box and fixed controls.
|
|
43
|
+
*
|
|
39
44
|
* No `role='toolbar'`: that role promises arrow-key roving focus between its controls,
|
|
40
45
|
* which would take the arrow keys away from the text box and the native `<select>`
|
|
41
46
|
* that live on this line. Tab order is the correct affordance here.
|
|
@@ -57,10 +62,17 @@ export function ListToolbar({ search, onSearchChange, searchPlaceholder, searchL
|
|
|
57
62
|
const showSearch = search !== undefined && onSearchChange !== undefined;
|
|
58
63
|
const showChips = chips !== undefined && chips.length > 0 && onChipChange !== undefined;
|
|
59
64
|
const showRight = Boolean(sort) || Boolean(view) || Boolean(actions);
|
|
60
|
-
return (_jsxs("div", { className: cn('flex flex-wrap items-center gap-x-3 gap-y-2',
|
|
65
|
+
return (_jsxs("div", { className: cn('flex flex-wrap items-center gap-x-3 gap-y-2',
|
|
66
|
+
// From `sm:` a row WITH chips never wraps: the chips are the one item that can give way
|
|
67
|
+
// (a scroll lane), so they take what the search box and the controls leave. Without
|
|
68
|
+
// chips nothing on the line can scroll, so it keeps wrapping rather than overflow.
|
|
69
|
+
showChips && 'sm:flex-nowrap', className), children: [showSearch ? (_jsx(SearchInput, { syntax: false, value: search, onChange: onSearchChange, placeholder: searchPlaceholder ?? 'Search', "aria-label": searchLabel ?? searchPlaceholder ?? 'Search',
|
|
61
70
|
// Full width on a phone (the chips then wrap beneath it, still tappable);
|
|
62
71
|
// a fixed, modest column from `sm:` so the chips share the line rather than
|
|
63
72
|
// being pushed off it by a box that grows with the container.
|
|
64
|
-
className: 'w-full min-w-40 sm:w-56' })) : null, showChips ? (_jsx(ChipFilterStrip, { options: [...chips], value: chipValue, onChange: onChipChange, multi: multiChips, ...(chipsAllLabel === undefined ? {} : { allLabel: chipsAllLabel })
|
|
73
|
+
className: 'w-full min-w-40 sm:w-56 sm:shrink-0' })) : null, showChips ? (_jsx(ChipFilterStrip, { options: [...chips], value: chipValue, onChange: onChipChange, multi: multiChips, ...(chipsAllLabel === undefined ? {} : { allLabel: chipsAllLabel }),
|
|
74
|
+
// The scroll lane. Sized to its CONTENT, twenty chips took the whole row and pushed
|
|
75
|
+
// sort/view onto a second line at 1440 and 2560 (forge task 2560, flix's genres).
|
|
76
|
+
className: 'sm:flex-1' })) : null, filters, showRight ? (_jsxs("span", { className: cn('ml-auto flex flex-wrap items-center gap-2', showChips && 'sm:shrink-0 sm:flex-nowrap'), children: [sort, view, actions] })) : null] }));
|
|
65
77
|
}
|
|
66
78
|
//# sourceMappingURL=ListToolbar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListToolbar.js","sourceRoot":"","sources":["../../../src/react/components/ListToolbar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AA0C/C
|
|
1
|
+
{"version":3,"file":"ListToolbar.js","sourceRoot":"","sources":["../../../src/react/components/ListToolbar.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAC;AAClC,OAAO,EAAE,eAAe,EAAmB,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AA0C/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AACH,MAAM,UAAU,WAAW,CAAC,EAC1B,MAAM,EACN,cAAc,EACd,iBAAiB,EACjB,WAAW,EACX,KAAK,EACL,SAAS,GAAG,IAAI,EAChB,YAAY,EACZ,UAAU,GAAG,KAAK,EAClB,aAAa,EACb,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,SAAS,GACQ;IACjB,MAAM,UAAU,GAAG,MAAM,KAAK,SAAS,IAAI,cAAc,KAAK,SAAS,CAAC;IACxE,MAAM,SAAS,GAAG,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,YAAY,KAAK,SAAS,CAAC;IACxF,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAErE,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,6CAA6C;QAC7C,wFAAwF;QACxF,oFAAoF;QACpF,mFAAmF;QACnF,SAAS,IAAI,gBAAgB,EAC7B,SAAS,CACV,aAEA,UAAU,CAAC,CAAC,CAAC,CAIZ,KAAC,WAAW,IACV,MAAM,EAAE,KAAK,EACb,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAE,iBAAiB,IAAI,QAAQ,gBAC9B,WAAW,IAAI,iBAAiB,IAAI,QAAQ;gBACxD,0EAA0E;gBAC1E,4EAA4E;gBAC5E,8DAA8D;gBAC9D,SAAS,EAAC,qCAAqC,GAC/C,CACH,CAAC,CAAC,CAAC,IAAI,EACP,SAAS,CAAC,CAAC,CAAC,CACX,KAAC,eAAe,IACd,OAAO,EAAE,CAAC,GAAG,KAAK,CAAC,EACnB,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,UAAU,KACb,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;gBACpE,oFAAoF;gBACpF,kFAAkF;gBAClF,SAAS,EAAC,WAAW,GACrB,CACH,CAAC,CAAC,CAAC,IAAI,EACP,OAAO,EACP,SAAS,CAAC,CAAC,CAAC,CACX,gBAAM,SAAS,EAAE,EAAE,CAAC,2CAA2C,EAAE,SAAS,IAAI,4BAA4B,CAAC,aACxG,IAAI,EACJ,IAAI,EACJ,OAAO,IACH,CACR,CAAC,CAAC,CAAC,IAAI,IACJ,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type CSSProperties, type KeyboardEvent, type ReactNode } from 'react';
|
|
1
|
+
import { type CSSProperties, type FocusEvent, type KeyboardEvent, type ReactNode } from 'react';
|
|
2
2
|
import { type ControlSize } from '../lib/field.js';
|
|
3
3
|
import { type StyleableProps } from '../styling.js';
|
|
4
4
|
export type SecretInputSlot = 'root' | 'input' | 'button';
|
|
@@ -57,6 +57,8 @@ export interface SecretInputProps extends StyleableProps<SecretInputSlot> {
|
|
|
57
57
|
disabled?: boolean;
|
|
58
58
|
/** Fires on Enter in THIS field — the login/rotation forms submit from their last field. */
|
|
59
59
|
onEnter?: (event: KeyboardEvent<HTMLInputElement>) => void;
|
|
60
|
+
/** Fires when the INPUT loses focus — a form library's touched/validate-on-blur hook. */
|
|
61
|
+
onBlur?: (event: FocusEvent<HTMLInputElement>) => void;
|
|
60
62
|
className?: string;
|
|
61
63
|
style?: CSSProperties;
|
|
62
64
|
/** Container height on the shared control-height scale (`--control-h-*`, task
|
|
@@ -69,5 +71,5 @@ export interface SecretInputProps extends StyleableProps<SecretInputSlot> {
|
|
|
69
71
|
* otherwise. Reveal is uncontrolled by default; pass `reveal` to drive it from a
|
|
70
72
|
* parent (a "reveal all"). Tailwind-first, overridable per slot. No icon dependency.
|
|
71
73
|
*/
|
|
72
|
-
export declare const SecretInput: ({ value, onChange, reveal, onToggleReveal, label, placeholder, autoComplete, showToggle, showCopy, onCopied, onCopy, actions, id, name, "aria-invalid": ariaInvalid, "aria-describedby": ariaDescribedBy, autoFocus, disabled, onEnter, className, style, classNames, styles, unstyled, size, }: SecretInputProps) => import("react").JSX.Element;
|
|
74
|
+
export declare const SecretInput: ({ value, onChange, reveal, onToggleReveal, label, placeholder, autoComplete, showToggle, showCopy, onCopied, onCopy, actions, id, name, "aria-invalid": ariaInvalid, "aria-describedby": ariaDescribedBy, autoFocus, disabled, onEnter, onBlur, className, style, classNames, styles, unstyled, size, }: SecretInputProps) => import("react").JSX.Element;
|
|
73
75
|
//# sourceMappingURL=SecretInput.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecretInput.d.ts","sourceRoot":"","sources":["../../../src/react/components/SecretInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"SecretInput.d.ts","sourceRoot":"","sources":["../../../src/react/components/SecretInput.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAE,KAAK,UAAU,EAAE,KAAK,aAAa,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAE1G,OAAO,EAAwB,KAAK,WAAW,EAAqB,MAAM,iBAAiB,CAAC;AAC5F,OAAO,EAA8B,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAiEhF,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAE1D,MAAM,WAAW,gBAAiB,SAAQ,cAAc,CAAC,eAAe,CAAC;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;gEAC4D;IAC5D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,oFAAoF;IACpF,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;kEAE8D;IAC9D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;uEACmE;IACnE,cAAc,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5C,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;2CACuC;IACvC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,4FAA4F;IAC5F,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IAC3D,yFAAyF;IACzF,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;kCAC8B;IAC9B,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAI,ySA2BzB,gBAAgB,gCAoFlB,CAAC"}
|
|
@@ -19,7 +19,7 @@ const BTN_CLASS = `h-auto min-h-0 w-auto inline-flex shrink-0 items-center justi
|
|
|
19
19
|
* otherwise. Reveal is uncontrolled by default; pass `reveal` to drive it from a
|
|
20
20
|
* parent (a "reveal all"). Tailwind-first, overridable per slot. No icon dependency.
|
|
21
21
|
*/
|
|
22
|
-
export const SecretInput = ({ value, onChange, reveal, onToggleReveal, label = 'secret value', placeholder, autoComplete = 'off', showToggle = true, showCopy = true, onCopied, onCopy, actions, id, name, 'aria-invalid': ariaInvalid, 'aria-describedby': ariaDescribedBy, autoFocus = false, disabled, onEnter, className, style, classNames, styles, unstyled, size = 'md', }) => {
|
|
22
|
+
export const SecretInput = ({ value, onChange, reveal, onToggleReveal, label = 'secret value', placeholder, autoComplete = 'off', showToggle = true, showCopy = true, onCopied, onCopy, actions, id, name, 'aria-invalid': ariaInvalid, 'aria-describedby': ariaDescribedBy, autoFocus = false, disabled, onEnter, onBlur, className, style, classNames, styles, unstyled, size = 'md', }) => {
|
|
23
23
|
const [internalShown, setInternalShown] = useState(false);
|
|
24
24
|
const { copied: internalCopied, copy } = useCopyToClipboard();
|
|
25
25
|
// `onCopy` bypasses `useCopyToClipboard`, so its "copied ✓" tick has to be kept
|
|
@@ -46,7 +46,7 @@ export const SecretInput = ({ value, onChange, reveal, onToggleReveal, label = '
|
|
|
46
46
|
return (_jsxs("div", { className: resolveClass(`flex items-center gap-0.5 ${CONTROL_HEIGHT_CLASS[size]} ${TAP_TARGET_HEIGHT} rounded-field border border-field-border bg-field-bg px-1 transition focus-within:border-field-ring focus-within:ring-2 focus-within:ring-field-ring/30 has-[[aria-invalid=true]]:border-field-error`, classNames?.root ?? className, unstyled), style: resolveStyle({}, styles?.root ?? style, unstyled), children: [_jsx("input", { id: id, name: name,
|
|
47
47
|
// guardrails-ignore no-raw-inputs: this IS the SecretInput Field-family
|
|
48
48
|
// primitive — wraps the raw masked-text input it exposes.
|
|
49
|
-
type: shown ? 'text' : 'password', value: value, readOnly: readOnly, onChange: onChange ? (e) => onChange(e.target.value) : undefined, onKeyDown: onEnter ? (e) => {
|
|
49
|
+
type: shown ? 'text' : 'password', value: value, readOnly: readOnly, onChange: onChange ? (e) => onChange(e.target.value) : undefined, onBlur: onBlur, onKeyDown: onEnter ? (e) => {
|
|
50
50
|
if (e.key === 'Enter')
|
|
51
51
|
onEnter(e);
|
|
52
52
|
} : undefined, disabled: disabled, placeholder: placeholder, "aria-label": label, "aria-invalid": ariaInvalid, "aria-describedby": ariaDescribedBy, autoComplete: autoComplete, spellCheck: false,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SecretInput.js","sourceRoot":"","sources":["../../../src/react/components/SecretInput.tsx"],"names":[],"mappings":";AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"SecretInput.js","sourceRoot":"","sources":["../../../src/react/components/SecretInput.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthCard.d.ts","sourceRoot":"","sources":["../../../../src/react/components/auth/AuthCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,MAAM,WAAW,aAAa;IAC5B,qCAAqC;IACrC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,yCAAyC;IACzC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;+CAC2C;IAC3C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,UAAiB,EACjB,MAAc,EACd,QAAQ,EACR,SAAS,GACV,EAAE,aAAa,+
|
|
1
|
+
{"version":3,"file":"AuthCard.d.ts","sourceRoot":"","sources":["../../../../src/react/components/auth/AuthCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,MAAM,WAAW,aAAa;IAC5B,qCAAqC;IACrC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,yCAAyC;IACzC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;+CAC2C;IAC3C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,EACvB,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,UAAiB,EACjB,MAAc,EACd,QAAQ,EACR,SAAS,GACV,EAAE,aAAa,+BA6Cf"}
|
|
@@ -11,6 +11,10 @@ import { Surface } from '../Surface.js';
|
|
|
11
11
|
* under every accent, light and dark.
|
|
12
12
|
*/
|
|
13
13
|
export function AuthCard({ title, subtitle, logo, footer, fullScreen = true, aurora = false, children, className, }) {
|
|
14
|
-
return (_jsxs("div", { className: cn('flex w-full flex-col items-center justify-center gap-6 p-4',
|
|
14
|
+
return (_jsxs("div", { className: cn('flex w-full flex-col items-center justify-center gap-6 p-4',
|
|
15
|
+
// The page colour belongs to the full-screen page only. Embedded, the card sits on its
|
|
16
|
+
// host's surface — painting `bg-background` there drew a slab around it, a box on a box
|
|
17
|
+
// inside the host's panel (forge task 2466).
|
|
18
|
+
aurora ? 'dark cb-aurora cb-auth-aurora' : fullScreen && 'bg-background', fullScreen && 'min-h-dvh', className), children: [aurora ? _jsx(AmbientBackdrop, { position: 'absolute' }) : null, _jsxs("div", { className: 'flex w-full max-w-sm flex-col gap-6', children: [(logo != null || title != null || subtitle != null) && (_jsxs("div", { className: 'flex flex-col items-center gap-2 text-center', children: [logo != null ? _jsx("div", { className: 'mb-1', children: logo }) : null, title != null ? (_jsx("h1", { className: cn('text-2xl font-semibold text-foreground', aurora && 'cb-gradient-text'), children: title })) : null, subtitle != null ? _jsx("p", { className: 'text-sm text-muted-foreground', children: subtitle }) : null] })), _jsx(Surface, { level: aurora ? 'glass' : 'raised', pad: 'lg', radius: 'xl', className: 'w-full', children: children }), footer != null ? (_jsx("div", { className: 'text-center text-sm text-muted-foreground', children: footer })) : null] })] }));
|
|
15
19
|
}
|
|
16
20
|
//# sourceMappingURL=AuthCard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AuthCard.js","sourceRoot":"","sources":["../../../../src/react/components/auth/AuthCard.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAkCxC;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,EACvB,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,UAAU,GAAG,IAAI,EACjB,MAAM,GAAG,KAAK,EACd,QAAQ,EACR,SAAS,GACK;IACd,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,4DAA4D,
|
|
1
|
+
{"version":3,"file":"AuthCard.js","sourceRoot":"","sources":["../../../../src/react/components/auth/AuthCard.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAkCxC;;;;;;;GAOG;AACH,MAAM,UAAU,QAAQ,CAAC,EACvB,KAAK,EACL,QAAQ,EACR,IAAI,EACJ,MAAM,EACN,UAAU,GAAG,IAAI,EACjB,MAAM,GAAG,KAAK,EACd,QAAQ,EACR,SAAS,GACK;IACd,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CACX,4DAA4D;QAC5D,uFAAuF;QACvF,wFAAwF;QACxF,6CAA6C;QAC7C,MAAM,CAAC,CAAC,CAAC,+BAA+B,CAAC,CAAC,CAAC,UAAU,IAAI,eAAe,EACxE,UAAU,IAAI,WAAW,EACzB,SAAS,CACV,aAIA,MAAM,CAAC,CAAC,CAAC,KAAC,eAAe,IAAC,QAAQ,EAAC,UAAU,GAAG,CAAC,CAAC,CAAC,IAAI,EAExD,eAAK,SAAS,EAAC,qCAAqC,aACjD,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI,CAAC,IAAI,CACtD,eAAK,SAAS,EAAC,8CAA8C,aAC1D,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,cAAK,SAAS,EAAC,MAAM,YAAE,IAAI,GAAO,CAAC,CAAC,CAAC,IAAI,EACxD,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CACf,aACE,SAAS,EAAE,EAAE,CACX,wCAAwC,EACxC,MAAM,IAAI,kBAAkB,CAC7B,YAEA,KAAK,GACH,CACN,CAAC,CAAC,CAAC,IAAI,EACP,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,YAAG,SAAS,EAAC,+BAA+B,YAAE,QAAQ,GAAK,CAAC,CAAC,CAAC,IAAI,IAClF,CACP,EAED,KAAC,OAAO,IAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,SAAS,EAAC,QAAQ,YACjF,QAAQ,GACD,EAET,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,CAChB,cAAK,SAAS,EAAC,2CAA2C,YAAE,MAAM,GAAO,CAC1E,CAAC,CAAC,CAAC,IAAI,IACJ,IACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordSetFields.d.ts","sourceRoot":"","sources":["../../../../src/react/components/auth/PasswordSetFields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,MAAM,WAAW,sBAAsB;IACrC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,iBAAqB,EACrB,YAAmB,EACnB,WAAkB,EAClB,aAA8B,EAC9B,YAAqC,EACrC,YAA4B,EAC5B,WAA+B,EAC/B,SAAS,GACV,EAAE,sBAAsB,+
|
|
1
|
+
{"version":3,"file":"PasswordSetFields.d.ts","sourceRoot":"","sources":["../../../../src/react/components/auth/PasswordSetFields.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,MAAM,WAAW,sBAAsB;IACrC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,iBAAqB,EACrB,YAAmB,EACnB,WAAkB,EAClB,aAA8B,EAC9B,YAAqC,EACrC,YAA4B,EAC5B,WAA+B,EAC/B,SAAS,GACV,EAAE,sBAAsB,+BAkBxB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx,
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useFormContext } from 'react-hook-form';
|
|
3
3
|
import { AuthPasswordField } from './fields.js';
|
|
4
4
|
import { PasswordStrengthMeter } from './PasswordStrengthMeter.js';
|
|
@@ -12,6 +12,6 @@ import { PasswordStrengthMeter } from './PasswordStrengthMeter.js';
|
|
|
12
12
|
export function PasswordSetFields({ minPasswordLength = 8, showStrength = true, showConfirm = true, passwordLabel = 'New password', confirmLabel = 'Confirm new password', passwordName = 'newPassword', confirmName = 'confirmPassword', autoFocus, }) {
|
|
13
13
|
const { watch } = useFormContext();
|
|
14
14
|
const password = watch(passwordName);
|
|
15
|
-
return (_jsxs(_Fragment, { children: [
|
|
15
|
+
return (_jsxs(_Fragment, { children: [_jsx(AuthPasswordField, { name: passwordName, label: passwordLabel, autoComplete: 'new-password', autoFocus: autoFocus, status: showStrength && password ? _jsx(PasswordStrengthMeter, { value: password, minLength: minPasswordLength }) : undefined }), showConfirm ? (_jsx(AuthPasswordField, { name: confirmName, label: confirmLabel, autoComplete: 'new-password' })) : null] }));
|
|
16
16
|
}
|
|
17
17
|
//# sourceMappingURL=PasswordSetFields.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordSetFields.js","sourceRoot":"","sources":["../../../../src/react/components/auth/PasswordSetFields.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAanE;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,iBAAiB,GAAG,CAAC,EACrB,YAAY,GAAG,IAAI,EACnB,WAAW,GAAG,IAAI,EAClB,aAAa,GAAG,cAAc,EAC9B,YAAY,GAAG,sBAAsB,EACrC,YAAY,GAAG,aAAa,EAC5B,WAAW,GAAG,iBAAiB,EAC/B,SAAS,GACc;IACvB,MAAM,EAAE,KAAK,EAAE,GAAG,cAAc,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAW,CAAC;IAE/C,OAAO,CACL,8BACE,
|
|
1
|
+
{"version":3,"file":"PasswordSetFields.js","sourceRoot":"","sources":["../../../../src/react/components/auth/PasswordSetFields.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAanE;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,iBAAiB,GAAG,CAAC,EACrB,YAAY,GAAG,IAAI,EACnB,WAAW,GAAG,IAAI,EAClB,aAAa,GAAG,cAAc,EAC9B,YAAY,GAAG,sBAAsB,EACrC,YAAY,GAAG,aAAa,EAC5B,WAAW,GAAG,iBAAiB,EAC/B,SAAS,GACc;IACvB,MAAM,EAAE,KAAK,EAAE,GAAG,cAAc,EAAE,CAAC;IACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAW,CAAC;IAE/C,OAAO,CACL,8BACE,KAAC,iBAAiB,IAChB,IAAI,EAAE,YAAY,EAClB,KAAK,EAAE,aAAa,EACpB,YAAY,EAAC,cAAc,EAC3B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,YAAY,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAC,qBAAqB,IAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,GAAI,CAAC,CAAC,CAAC,SAAS,GACvH,EACD,WAAW,CAAC,CAAC,CAAC,CACb,KAAC,iBAAiB,IAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAC,cAAc,GAAG,CAC1F,CAAC,CAAC,CAAC,IAAI,IACP,CACJ,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordStrengthMeter.d.ts","sourceRoot":"","sources":["../../../../src/react/components/auth/PasswordStrengthMeter.tsx"],"names":[],"mappings":"AAmBA,MAAM,WAAW,0BAA0B;IACzC,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,uFAAuF;IACvF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,KAAK,EACL,SAAa,EACb,SAAS,GACV,EAAE,0BAA0B,
|
|
1
|
+
{"version":3,"file":"PasswordStrengthMeter.d.ts","sourceRoot":"","sources":["../../../../src/react/components/auth/PasswordStrengthMeter.tsx"],"names":[],"mappings":"AAmBA,MAAM,WAAW,0BAA0B;IACzC,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,uFAAuF;IACvF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,EACpC,KAAK,EACL,SAAa,EACb,SAAS,GACV,EAAE,0BAA0B,sCA8B5B"}
|
|
@@ -26,6 +26,8 @@ export function PasswordStrengthMeter({ value, minLength = 8, className, }) {
|
|
|
26
26
|
if (!value)
|
|
27
27
|
return null;
|
|
28
28
|
const tone = SEGMENT_TONE[level];
|
|
29
|
-
|
|
29
|
+
// ONE line (forge task 2466): it sits in a field's error slot (`Field status`), which is one
|
|
30
|
+
// line of `text-sm` tall, so the bars and the word share a row rather than stacking.
|
|
31
|
+
return (_jsxs("div", { className: cn('flex min-h-[1lh] items-center gap-3 text-sm', className), children: [_jsx("div", { className: 'flex flex-1 gap-1', "aria-hidden": true, children: [0, 1, 2, 3].map((i) => (_jsx("span", { className: cn('h-1 flex-1 rounded-full transition-colors', i < score ? tone : 'bg-muted') }, i))) }), _jsxs("p", { className: 'm-0 shrink-0 text-xs text-muted-foreground', role: 'status', "aria-label": `Password strength: ${LABEL[level]}`, children: ["Password strength: ", _jsx("span", { className: 'font-medium text-foreground', children: LABEL[level] }), _jsxs("span", { className: 'sr-only', children: [" (", Math.round(fraction * 100), "%)"] })] })] }));
|
|
30
32
|
}
|
|
31
33
|
//# sourceMappingURL=PasswordStrengthMeter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PasswordStrengthMeter.js","sourceRoot":"","sources":["../../../../src/react/components/auth/PasswordStrengthMeter.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAA8B,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE1F,+EAA+E;AAC/E,MAAM,YAAY,GAA4D;IAC5E,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,YAAY;IAClB,IAAI,EAAE,iBAAiB;IACvB,MAAM,EAAE,YAAY;CACrB,CAAC;AAEF,MAAM,KAAK,GAA0C;IACnD,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;CACjB,CAAC;AAUF;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,EACpC,KAAK,EACL,SAAS,GAAG,CAAC,EACb,SAAS,GACkB;IAC3B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC3E,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,IAAI,GAAG,YAAY,CAAC,KAAgD,CAAC,CAAC;IAE5E,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"PasswordStrengthMeter.js","sourceRoot":"","sources":["../../../../src/react/components/auth/PasswordStrengthMeter.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAA8B,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE1F,+EAA+E;AAC/E,MAAM,YAAY,GAA4D;IAC5E,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE,YAAY;IAClB,IAAI,EAAE,iBAAiB;IACvB,MAAM,EAAE,YAAY;CACrB,CAAC;AAEF,MAAM,KAAK,GAA0C;IACnD,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;CACjB,CAAC;AAUF;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,EACpC,KAAK,EACL,SAAS,GAAG,CAAC,EACb,SAAS,GACkB;IAC3B,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,qBAAqB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IAC3E,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,IAAI,GAAG,YAAY,CAAC,KAAgD,CAAC,CAAC;IAE5E,6FAA6F;IAC7F,qFAAqF;IACrF,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,6CAA6C,EAAE,SAAS,CAAC,aAC1E,cAAK,SAAS,EAAC,mBAAmB,iCAC/B,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACvB,eAEE,SAAS,EAAE,EAAE,CACX,2CAA2C,EAC3C,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAC9B,IAJI,CAAC,CAKN,CACH,CAAC,GACE,EACN,aACE,SAAS,EAAC,4CAA4C,EACtD,IAAI,EAAC,QAAQ,gBACD,sBAAsB,KAAK,CAAC,KAAK,CAAC,EAAE,oCAE7B,eAAM,SAAS,EAAC,6BAA6B,YAAE,KAAK,CAAC,KAAK,CAAC,GAAQ,EACtF,gBAAM,SAAS,EAAC,SAAS,mBAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,UAAU,IAC/D,IACA,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -28,6 +28,6 @@ export function RegisterForm({ onSubmit, onSuccess, mapError, submitLabel = 'Cre
|
|
|
28
28
|
}), [minPasswordLength]);
|
|
29
29
|
const form = useForm(makeFormConfig(schema, { password: '', confirmPassword: '' }));
|
|
30
30
|
const password = form.watch('password');
|
|
31
|
-
return (_jsxs(AuthForm, { form: form, onSubmit: onSubmit, onSuccess: onSuccess, mapError: mapError, submitLabel: submitLabel, notice: notice, footer: footer, children: [children,
|
|
31
|
+
return (_jsxs(AuthForm, { form: form, onSubmit: onSubmit, onSuccess: onSuccess, mapError: mapError, submitLabel: submitLabel, notice: notice, footer: footer, children: [children, _jsx(AuthPasswordField, { name: 'password', label: 'Password', autoComplete: 'new-password', status: showStrength && password ? _jsx(PasswordStrengthMeter, { value: password, minLength: minPasswordLength }) : undefined }), _jsx(AuthPasswordField, { name: 'confirmPassword', label: 'Confirm password', autoComplete: 'new-password' })] }));
|
|
32
32
|
}
|
|
33
33
|
//# sourceMappingURL=RegisterForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RegisterForm.js","sourceRoot":"","sources":["../../../../src/react/components/auth/RegisterForm.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,OAAO,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAyBnE;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,WAAW,GAAG,gBAAgB,EAC9B,iBAAiB,GAAG,CAAC,EACrB,YAAY,GAAG,IAAI,EACnB,MAAM,EACN,MAAM,EACN,QAAQ,GACU;IAClB,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CACH,CAAC;SACE,MAAM,CAAC;QACN,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,iBAAiB,aAAa,CAAC;QACzE,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;KAC5B,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,eAAe,EAAE;QAC/C,IAAI,EAAE,CAAC,iBAAiB,CAAC;QACzB,OAAO,EAAE,wBAAwB;KAClC,CAAC,EACN,CAAC,iBAAiB,CAAC,CACpB,CAAC;IAEF,MAAM,IAAI,GAAG,OAAO,CAClB,cAAc,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,CAC9D,CAAC;IAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAExC,OAAO,CACL,MAAC,QAAQ,IACP,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,aAEb,QAAQ,EAET,
|
|
1
|
+
{"version":3,"file":"RegisterForm.js","sourceRoot":"","sources":["../../../../src/react/components/auth/RegisterForm.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,OAAO,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAyBnE;;;;;;;GAOG;AACH,MAAM,UAAU,YAAY,CAAC,EAC3B,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,WAAW,GAAG,gBAAgB,EAC9B,iBAAiB,GAAG,CAAC,EACrB,YAAY,GAAG,IAAI,EACnB,MAAM,EACN,MAAM,EACN,QAAQ,GACU;IAClB,MAAM,MAAM,GAAG,OAAO,CACpB,GAAG,EAAE,CACH,CAAC;SACE,MAAM,CAAC;QACN,QAAQ,EAAE,CAAC;aACR,MAAM,EAAE;aACR,GAAG,CAAC,iBAAiB,EAAE,gBAAgB,iBAAiB,aAAa,CAAC;QACzE,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;KAC5B,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,eAAe,EAAE;QAC/C,IAAI,EAAE,CAAC,iBAAiB,CAAC;QACzB,OAAO,EAAE,wBAAwB;KAClC,CAAC,EACN,CAAC,iBAAiB,CAAC,CACpB,CAAC;IAEF,MAAM,IAAI,GAAG,OAAO,CAClB,cAAc,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,CAC9D,CAAC;IAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAExC,OAAO,CACL,MAAC,QAAQ,IACP,IAAI,EAAE,IAAI,EACV,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,aAEb,QAAQ,EAET,KAAC,iBAAiB,IAChB,IAAI,EAAC,UAAU,EACf,KAAK,EAAC,UAAU,EAChB,YAAY,EAAC,cAAc,EAC3B,MAAM,EAAE,YAAY,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAC,qBAAqB,IAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,GAAI,CAAC,CAAC,CAAC,SAAS,GACvH,EAEF,KAAC,iBAAiB,IAChB,IAAI,EAAC,iBAAiB,EACtB,KAAK,EAAC,kBAAkB,EACxB,YAAY,EAAC,cAAc,GAC3B,IACO,CACZ,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignupForm.d.ts","sourceRoot":"","sources":["../../../../src/react/components/auth/SignupForm.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"SignupForm.d.ts","sourceRoot":"","sources":["../../../../src/react/components/auth/SignupForm.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAkB,MAAM,OAAO,CAAC;AASvD,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEnF,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,eAAgB,SAAQ,YAAY;IACnD,QAAQ,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC1C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,oEAAoE;IACpE,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,oEAAoE;IACpE,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,0EAA0E;IAC1E,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,oFAAoF;IACpF,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;mCAE+B;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACtC,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,UAAoB,EACpB,WAA8B,EAC9B,iBAAqB,EACrB,WAAkB,EAClB,YAAmB,EACnB,KAAK,EACL,SAAgB,EAChB,aAAa,EACb,MAAM,EACN,MAAM,EACN,QAAQ,GACT,EAAE,eAAe,+BA4FjB"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { useMemo } from 'react';
|
|
2
|
+
import { useId, useMemo } from 'react';
|
|
3
3
|
import { Controller, useForm } from 'react-hook-form';
|
|
4
4
|
import { z } from 'zod';
|
|
5
5
|
import { makeFormConfig } from '../../lib/form.js';
|
|
6
6
|
import { Checkbox } from '../Checkbox.js';
|
|
7
|
+
import { FieldErrorText } from '../fieldErrorText.js';
|
|
7
8
|
import { AuthForm } from './AuthForm.js';
|
|
8
9
|
import { AuthPasswordField, AuthTextField } from './fields.js';
|
|
9
10
|
import { PasswordStrengthMeter } from './PasswordStrengthMeter.js';
|
|
@@ -39,6 +40,7 @@ export function SignupForm({ onSubmit, onSuccess, mapError, emailLabel = 'Email'
|
|
|
39
40
|
acceptTerms: defaultValues?.acceptTerms ?? false,
|
|
40
41
|
}));
|
|
41
42
|
const password = form.watch('password');
|
|
42
|
-
|
|
43
|
+
const termsErrorId = useId();
|
|
44
|
+
return (_jsxs(AuthForm, { form: form, onSubmit: onSubmit, onSuccess: onSuccess, mapError: mapError, submitLabel: submitLabel, notice: notice, footer: footer, children: [_jsx(AuthTextField, { name: 'email', label: emailLabel, type: 'email', inputMode: 'email', autoComplete: 'email', autoFocus: autoFocus }), children, _jsx(AuthPasswordField, { name: 'password', label: 'Password', autoComplete: 'new-password', status: showStrength && password ? _jsx(PasswordStrengthMeter, { value: password, minLength: minPasswordLength }) : undefined }), showConfirm ? (_jsx(AuthPasswordField, { name: 'confirmPassword', label: 'Confirm password', autoComplete: 'new-password' })) : null, hasTerms ? (_jsx(Controller, { name: 'acceptTerms', control: form.control, render: ({ field }) => (_jsxs("div", { className: 'flex flex-col gap-1.5', children: [_jsx(Checkbox, { checked: field.value, onCheckedChange: (v) => field.onChange(v === true), "aria-invalid": form.formState.errors.acceptTerms ? true : undefined, "aria-describedby": form.formState.errors.acceptTerms ? termsErrorId : undefined, label: terms }), form.formState.errors.acceptTerms ? (_jsx(FieldErrorText, { id: termsErrorId, children: form.formState.errors.acceptTerms.message })) : null] })) })) : null] }));
|
|
43
45
|
}
|
|
44
46
|
//# sourceMappingURL=SignupForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SignupForm.js","sourceRoot":"","sources":["../../../../src/react/components/auth/SignupForm.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAkB,OAAO,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"SignupForm.js","sourceRoot":"","sources":["../../../../src/react/components/auth/SignupForm.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TotpEntry.d.ts","sourceRoot":"","sources":["../../../../src/react/components/auth/TotpEntry.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAA6B,MAAM,OAAO,CAAC;AASlE,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEnF,MAAM,WAAW,UAAU;IACzB,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,gFAAgF;IAChF,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,QAAQ,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACxC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,yCAAyC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,WAAsB,EACtB,MAAU,EACV,iBAAwB,EACxB,UAAiB,EACjB,MAAM,EACN,MAAM,GACP,EAAE,cAAc,+
|
|
1
|
+
{"version":3,"file":"TotpEntry.d.ts","sourceRoot":"","sources":["../../../../src/react/components/auth/TotpEntry.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAA6B,MAAM,OAAO,CAAC;AASlE,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEnF,MAAM,WAAW,UAAU;IACzB,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,gFAAgF;IAChF,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,cAAe,SAAQ,YAAY;IAClD,QAAQ,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;IACxC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,yCAAyC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,2EAA2E;IAC3E,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,WAAsB,EACtB,MAAU,EACV,iBAAwB,EACxB,UAAiB,EACjB,MAAM,EACN,MAAM,GACP,EAAE,cAAc,+BA2HhB"}
|