@hawiyah/react 0.0.0-stage → 0.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +73 -0
- package/NOTICE +19 -0
- package/PORTAL.md +74 -0
- package/README.md +461 -2
- package/dist/calendar.d.ts +52 -0
- package/dist/calendar.d.ts.map +1 -0
- package/dist/calendar.js +148 -0
- package/dist/calendar.js.map +1 -0
- package/dist/content-navigation.d.ts +15 -0
- package/dist/content-navigation.d.ts.map +1 -0
- package/dist/content-navigation.js +29 -0
- package/dist/content-navigation.js.map +1 -0
- package/dist/display.d.ts +421 -0
- package/dist/display.d.ts.map +1 -0
- package/dist/display.js +208 -0
- package/dist/display.js.map +1 -0
- package/dist/expanded-content.d.ts +217 -0
- package/dist/expanded-content.d.ts.map +1 -0
- package/dist/expanded-content.js +124 -0
- package/dist/expanded-content.js.map +1 -0
- package/dist/expanded-controls.d.ts +107 -0
- package/dist/expanded-controls.d.ts.map +1 -0
- package/dist/expanded-controls.js +142 -0
- package/dist/expanded-controls.js.map +1 -0
- package/dist/expanded-interactive.d.ts +116 -0
- package/dist/expanded-interactive.d.ts.map +1 -0
- package/dist/expanded-interactive.js +204 -0
- package/dist/expanded-interactive.js.map +1 -0
- package/dist/expanded-layout.d.ts +80 -0
- package/dist/expanded-layout.d.ts.map +1 -0
- package/dist/expanded-layout.js +26 -0
- package/dist/expanded-layout.js.map +1 -0
- package/dist/expanded-shared.d.ts +3 -0
- package/dist/expanded-shared.d.ts.map +1 -0
- package/dist/expanded-shared.js +14 -0
- package/dist/expanded-shared.js.map +1 -0
- package/dist/file-upload-list.d.ts +10 -0
- package/dist/file-upload-list.d.ts.map +1 -0
- package/dist/file-upload-list.js +7 -0
- package/dist/file-upload-list.js.map +1 -0
- package/dist/forms.d.ts +34 -0
- package/dist/forms.d.ts.map +1 -0
- package/dist/forms.js +65 -0
- package/dist/forms.js.map +1 -0
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +17 -0
- package/dist/index.js.map +1 -0
- package/dist/interactive.d.ts +60 -0
- package/dist/interactive.d.ts.map +1 -0
- package/dist/interactive.js +321 -0
- package/dist/interactive.js.map +1 -0
- package/dist/mobile-top-bar.d.ts +14 -0
- package/dist/mobile-top-bar.d.ts.map +1 -0
- package/dist/mobile-top-bar.js +8 -0
- package/dist/mobile-top-bar.js.map +1 -0
- package/dist/navigation-drawer.d.ts +20 -0
- package/dist/navigation-drawer.d.ts.map +1 -0
- package/dist/navigation-drawer.js +37 -0
- package/dist/navigation-drawer.js.map +1 -0
- package/dist/portal.d.ts +27 -0
- package/dist/portal.d.ts.map +1 -0
- package/dist/portal.js +16 -0
- package/dist/portal.js.map +1 -0
- package/dist/search-field.d.ts +15 -0
- package/dist/search-field.d.ts.map +1 -0
- package/dist/search-field.js +113 -0
- package/dist/search-field.js.map +1 -0
- package/dist/shared.d.ts +35 -0
- package/dist/shared.d.ts.map +1 -0
- package/dist/shared.js +78 -0
- package/dist/shared.js.map +1 -0
- package/dist/site-verification.d.ts +10 -0
- package/dist/site-verification.d.ts.map +1 -0
- package/dist/site-verification.js +16 -0
- package/dist/site-verification.js.map +1 -0
- package/package.json +54 -3
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useId, useRef, useState } from 'react';
|
|
3
|
+
import { sortRows } from '@hawiyah/core';
|
|
4
|
+
import { Button, Radio, Textarea } from './forms.js';
|
|
5
|
+
import { Avatar, Badge, Card } from './display.js';
|
|
6
|
+
import { cx, useControllable } from './shared.js';
|
|
7
|
+
export function Link({ external, disabled = false, variant, 'data-variant': dataVariant, className, target, rel, href, tabIndex, onClick, onAuxClick, ...props }) {
|
|
8
|
+
const unavailable = disabled || props['aria-disabled'] === true || props['aria-disabled'] === 'true';
|
|
9
|
+
return _jsx("a", { ...props, className: cx('hw-link', className), "data-variant": variant ?? dataVariant, href: unavailable ? undefined : href, role: unavailable ? 'link' : props.role, "aria-disabled": unavailable || undefined, tabIndex: unavailable ? -1 : tabIndex, target: external ? '_blank' : target, rel: external ? [rel, 'noopener', 'noreferrer'].filter(Boolean).join(' ') : rel, onClick: event => { if (unavailable) {
|
|
10
|
+
event.preventDefault();
|
|
11
|
+
event.stopPropagation();
|
|
12
|
+
}
|
|
13
|
+
else
|
|
14
|
+
onClick?.(event); }, onAuxClick: event => { if (unavailable) {
|
|
15
|
+
event.preventDefault();
|
|
16
|
+
event.stopPropagation();
|
|
17
|
+
}
|
|
18
|
+
else
|
|
19
|
+
onAuxClick?.(event); } });
|
|
20
|
+
}
|
|
21
|
+
export function IconButton({ label, shape, variant = 'ghost', className, children, ...props }) { return _jsx(Button, { ...props, variant: variant, "data-shape": shape ?? props['data-shape'], "aria-label": label, className: cx('hw-icon-button', className), children: _jsx("span", { "aria-hidden": "true", children: children }) }); }
|
|
22
|
+
export function ButtonGroup({ label, variant, orientation, className, ...props }) { return _jsx("div", { ...props, "data-variant": variant ?? props['data-variant'], "data-orientation": orientation ?? props['data-orientation'], role: "group", "aria-label": label, className: cx('hw-button-group', className) }); }
|
|
23
|
+
export function Chip({ onRemove, removeLabel = 'Remove', disabled, tone = 'neutral', children, className, ...props }) { return _jsxs("span", { ...props, className: cx('hw-chip', className), "data-tone": tone, children: [children, onRemove && _jsx(Button, { variant: "ghost", size: "sm", disabled: disabled, "aria-label": removeLabel, onClick: onRemove, children: _jsx("span", { className: "hw-icon", "data-icon": "cancel-01", "data-size": "md", "aria-hidden": "true" }) })] }); }
|
|
24
|
+
export function DescriptionList({ items, className, ...props }) { return _jsx("dl", { ...props, className: cx('hw-description-list', className), children: items.map((item, index) => _jsxs("div", { children: [_jsx("dt", { children: item.term }), _jsx("dd", { children: item.description })] }, item.key ?? index)) }); }
|
|
25
|
+
export function Stat({ label, value, description, trend, className, ...props }) { return _jsxs("div", { ...props, className: cx('hw-stat', className), children: [_jsxs("dl", { children: [_jsx("dt", { children: label }), _jsx("dd", { className: "hw-stat-value", children: value })] }), description && _jsx("p", { children: description }), trend && _jsx("div", { className: "hw-stat-trend", children: trend })] }); }
|
|
26
|
+
export function Timeline({ items, label = 'Timeline', className, ...props }) { return _jsx("ol", { ...props, className: cx('hw-timeline', className), "aria-label": props['aria-label'] ?? label, children: items.map(item => _jsxs("li", { "data-state": item.status, "aria-current": item.status === 'active' ? 'step' : undefined, children: [_jsx("h3", { children: item.title }), item.description && _jsx("div", { children: item.description }), item.dateLabel && _jsx("time", { dateTime: item.dateTime, children: item.dateLabel })] }, item.id)) }); }
|
|
27
|
+
export function Meter({ label, className, ...props }) { return _jsx("meter", { ...props, "aria-label": label, className: cx('hw-meter', className) }); }
|
|
28
|
+
export function AvatarGroup({ items, label, max = 5, getOverflowLabel = count => `${count} more people`, className, ...props }) {
|
|
29
|
+
const rounded = Math.floor(max);
|
|
30
|
+
const visible = items.slice(0, Number.isNaN(rounded) ? 5 : Math.max(0, rounded));
|
|
31
|
+
const remaining = items.length - visible.length;
|
|
32
|
+
return _jsxs("div", { ...props, className: cx('hw-avatar-group', className), role: "group", "aria-label": label, children: [visible.map((item, index) => _jsx(Avatar, { ...item }, index)), remaining > 0 && _jsxs("span", { className: "hw-avatar", role: "img", "aria-label": getOverflowLabel(remaining), children: ["+", remaining] })] });
|
|
33
|
+
}
|
|
34
|
+
export function DataTable({ columns, rows, caption, rowKey = (_, index) => index, sort, defaultSort = null, onSortChange, locale = 'ar-SA', emptyMessage = 'لا توجد سجلات', getSortLabel, className, variant, size, wrapperProps, ...props }) {
|
|
35
|
+
const captionId = useId();
|
|
36
|
+
const [sorting, setSort] = useControllable(sort, defaultSort, next => { if (next)
|
|
37
|
+
onSortChange?.(next); });
|
|
38
|
+
const sorted = sorting ? sortRows(rows, sorting.key, sorting.direction, locale) : rows;
|
|
39
|
+
return _jsx("div", { tabIndex: 0, role: "region", "aria-labelledby": captionId, ...wrapperProps, className: cx('hw-table-wrap', wrapperProps?.className), children: _jsxs("table", { ...props, "data-variant": variant ?? props['data-variant'], "data-size": size ?? props['data-size'], className: cx('hw-table hw-data-table', className), children: [_jsx("caption", { id: captionId, children: caption }), _jsx("thead", { children: _jsx("tr", { children: columns.map(column => { const active = sorting?.key === column.key; const direction = active && sorting.direction === 'ascending' ? 'descending' : 'ascending'; return _jsx("th", { scope: "col", "aria-sort": column.sortable ? active ? sorting.direction : 'none' : undefined, children: column.sortable ? _jsxs(Button, { variant: "ghost", "aria-label": getSortLabel?.(column.label, direction), onClick: () => setSort({ key: column.key, direction }), children: [column.label, _jsx("span", { className: "hw-icon", "data-size": "sm", "aria-hidden": "true", "data-icon": active ? sorting.direction === 'ascending' ? 'arrow-up-02' : 'arrow-down-02' : 'arrow-data-transfer-vertical' })] }) : column.label }, column.key); }) }) }), _jsx("tbody", { children: sorted.length ? sorted.map((row, index) => _jsx("tr", { children: columns.map(column => { const content = column.render ? column.render(row[column.key], row) : String(row[column.key] ?? ''); return column.rowHeader ? _jsx("th", { scope: "row", children: content }, column.key) : _jsx("td", { children: content }, column.key); }) }, rowKey(row, index))) : _jsx("tr", { children: _jsx("td", { colSpan: columns.length || 1, children: emptyMessage }) }) })] }) });
|
|
40
|
+
}
|
|
41
|
+
export function ServiceCard({ title, description, href, action, actionLabel = 'View service', category, metadata, icon, children, className, ...props }) { return _jsxs(Card, { ...props, className: cx('hw-service-card', className), header: _jsxs(_Fragment, { children: [icon && _jsx("span", { "aria-hidden": "true", children: icon }), _jsxs("div", { children: [category && _jsx(Badge, { children: category }), _jsx("h3", { children: title })] })] }), footer: action ?? (href && _jsx(Link, { href: href, children: actionLabel })), children: [description && _jsx("p", { children: description }), metadata && _jsx(DescriptionList, { items: metadata }), children] }); }
|
|
42
|
+
export function ServiceDetails({ title, description, metadata, requirements, requirementsLabel = 'Requirements', action, children, className, ...props }) { return _jsxs("article", { ...props, className: cx('hw-service-details', className), children: [_jsxs("header", { children: [_jsx("h2", { children: title }), description && _jsx("p", { children: description })] }), metadata && _jsx(DescriptionList, { items: metadata }), requirements && _jsxs("section", { children: [_jsx("h3", { children: requirementsLabel }), _jsx("ul", { children: requirements.map((item, index) => _jsx("li", { children: item }, index)) })] }), children, action && _jsx("footer", { children: action })] }); }
|
|
43
|
+
export function PortalHeader({ brand, brandHref, navigation, navigationLabel = 'التنقل الرئيسي', menuLabel = 'القائمة', navigationId, mainId, skipLabel = 'انتقل إلى المحتوى', actions, notice, children, className, onKeyDown, onBlur, ...props }) {
|
|
44
|
+
const id = useId();
|
|
45
|
+
const [open, setOpen] = useState(false);
|
|
46
|
+
const container = useRef(null);
|
|
47
|
+
const trigger = useRef(null);
|
|
48
|
+
const navId = navigationId ?? `${id}-navigation`;
|
|
49
|
+
const [branch, setBranch] = useState(null);
|
|
50
|
+
const closeNavigation = () => { setBranch(null); setOpen(false); };
|
|
51
|
+
useEffect(() => {
|
|
52
|
+
if (!open && !branch)
|
|
53
|
+
return;
|
|
54
|
+
const root = container.current;
|
|
55
|
+
const outside = (event) => {
|
|
56
|
+
const target = event.target;
|
|
57
|
+
if (!branch?.contains(target))
|
|
58
|
+
setBranch(null);
|
|
59
|
+
if (!root?.contains(target))
|
|
60
|
+
setOpen(false);
|
|
61
|
+
};
|
|
62
|
+
root?.ownerDocument.addEventListener('pointerdown', outside);
|
|
63
|
+
return () => root?.ownerDocument.removeEventListener('pointerdown', outside);
|
|
64
|
+
}, [open, branch]);
|
|
65
|
+
const link = (item, overview = false) => _jsx(Link, { href: item.href, className: overview ? 'hw-portal-branch-overview' : undefined, "aria-current": item.current ? 'page' : undefined, onClick: closeNavigation, children: item.label });
|
|
66
|
+
return _jsxs("header", { ...props, className: cx('hw-portal-header', className), onKeyDown: event => {
|
|
67
|
+
onKeyDown?.(event);
|
|
68
|
+
if (event.defaultPrevented || event.key !== 'Escape')
|
|
69
|
+
return;
|
|
70
|
+
if (branch?.isConnected) {
|
|
71
|
+
event.preventDefault();
|
|
72
|
+
event.stopPropagation();
|
|
73
|
+
setBranch(null);
|
|
74
|
+
branch.querySelector(':scope > summary')?.focus();
|
|
75
|
+
}
|
|
76
|
+
else if (open) {
|
|
77
|
+
event.preventDefault();
|
|
78
|
+
event.stopPropagation();
|
|
79
|
+
closeNavigation();
|
|
80
|
+
trigger.current?.focus();
|
|
81
|
+
}
|
|
82
|
+
}, onBlur: event => {
|
|
83
|
+
onBlur?.(event);
|
|
84
|
+
const target = event.relatedTarget ?? event.currentTarget.ownerDocument.activeElement;
|
|
85
|
+
if (!branch?.contains(target))
|
|
86
|
+
setBranch(null);
|
|
87
|
+
if (!event.currentTarget.contains(target))
|
|
88
|
+
setOpen(false);
|
|
89
|
+
}, children: [mainId && _jsx("a", { className: "hw-skip-link", href: `#${mainId}`, children: skipLabel }), notice && _jsx("div", { className: "hw-portal-notice", children: notice }), _jsxs("div", { ref: container, className: "hw-portal-header-main", children: [brandHref ? _jsx(Link, { href: brandHref, className: "hw-portal-brand", children: brand }) : _jsx("div", { className: "hw-portal-brand", children: brand }), !!navigation?.length && _jsxs(_Fragment, { children: [_jsxs("button", { ref: trigger, className: "hw-button hw-portal-menu-toggle", type: "button", "aria-expanded": open, "aria-controls": navId, onClick: () => { setBranch(null); setOpen(!open); }, children: [_jsx("span", { className: "hw-icon", "data-icon": open ? 'cancel-01' : 'menu-01', "aria-hidden": "true" }), menuLabel] }), _jsx("nav", { id: navId, "aria-label": navigationLabel, "data-open": open, children: _jsx("ul", { children: navigation.map(item => {
|
|
90
|
+
const groups = item.groups?.filter(group => group.links.length);
|
|
91
|
+
if (!groups?.length)
|
|
92
|
+
return _jsx("li", { children: link(item) }, item.href);
|
|
93
|
+
const childCurrent = groups.some(group => group.links.some(child => child.current));
|
|
94
|
+
const current = item.current || childCurrent;
|
|
95
|
+
return _jsx("li", { children: _jsxs("details", { "data-hw-portal-branch": "", className: "hw-portal-branch", "data-current": current || undefined, open: Boolean(branch?.isConnected && branch.dataset.branchHref === item.href), "data-branch-href": item.href, children: [_jsx("summary", { onClick: event => {
|
|
96
|
+
event.preventDefault();
|
|
97
|
+
const details = event.currentTarget.parentElement;
|
|
98
|
+
setBranch(branch === details ? null : details);
|
|
99
|
+
}, children: item.label }), _jsxs("div", { className: "hw-portal-branch-panel", children: [link({ ...item, current: item.current && !childCurrent }, true), groups.map((group, i) => _jsxs("section", { className: "hw-portal-branch-group", children: [group.label && _jsx("h2", { children: group.label }), _jsx("ul", { children: group.links.map(child => _jsx("li", { children: link(child) }, child.href)) })] }, i))] })] }) }, item.href);
|
|
100
|
+
}) }) })] }), actions && _jsx("div", { className: "hw-portal-actions", children: actions }), children] })] });
|
|
101
|
+
}
|
|
102
|
+
export function PortalFooter({ brand, description, links, linksLabel = 'روابط التذييل', legal, groups = [], legalLinks = [], legalLinksLabel = 'السياسات وإمكانية الوصول', support, supportLabel = 'المساعدة والتواصل', partners, externalLabel = 'يفتح في نافذة جديدة', children, className, ...props }) {
|
|
103
|
+
const linkList = (items) => _jsx("ul", { className: "hw-portal-footer-links", children: items.map((item, index) => _jsx("li", { children: _jsxs(Link, { href: item.href, external: item.external, children: [item.label, item.external && _jsxs(_Fragment, { children: [_jsx("span", { className: "hw-portal-footer-external hw-icon", "data-icon": "link-square-02", "data-size": "sm", "aria-hidden": "true" }), _jsxs("span", { className: "hw-sr-only", children: [" \u00B7 ", externalLabel] })] })] }) }, index)) });
|
|
104
|
+
return _jsxs("footer", { ...props, className: cx('hw-portal-footer', className), children: [_jsxs("div", { className: "hw-portal-footer-main", children: [(brand || description) && _jsxs("div", { className: "hw-portal-footer-brand", children: [brand && _jsx("div", { className: "hw-portal-footer-brand-marks", children: brand }), description && _jsx("p", { children: description })] }), !!links?.length && _jsxs("nav", { className: "hw-portal-footer-group", "aria-label": linksLabel, children: [_jsx("h2", { children: linksLabel }), linkList(links)] }), groups.map((group, index) => group.links.length > 0 && _jsxs("nav", { className: "hw-portal-footer-group", "aria-label": group.title, children: [_jsx("h2", { children: group.title }), linkList(group.links)] }, index)), support && _jsxs("section", { className: "hw-portal-footer-support", "aria-label": supportLabel, children: [_jsx("h2", { children: supportLabel }), _jsx("div", { className: "hw-portal-footer-support-content", children: support })] }), children && _jsx("div", { className: "hw-portal-footer-extra", children: children })] }), (legal || legalLinks.length > 0 || partners) && _jsxs("div", { className: "hw-portal-footer-bottom", children: [legal && _jsx("small", { children: legal }), legalLinks.length > 0 && _jsx("nav", { className: "hw-portal-footer-legal", "aria-label": legalLinksLabel, children: linkList(legalLinks) }), partners && _jsx("div", { className: "hw-portal-footer-partners", children: partners })] })] });
|
|
105
|
+
}
|
|
106
|
+
export function Feedback({ label, value, defaultValue = { helpful: '', comment: '' }, onValueChange, onFeedback, yesLabel = 'Yes', noLabel = 'No', commentLabel = 'Tell us more (optional)', submitLabel = 'Send feedback', successMessage = 'Thank you for your feedback.', choiceVariant = 'text', disabled, className, onReset, ...props }) {
|
|
107
|
+
const id = useId();
|
|
108
|
+
const [current, setCurrent] = useControllable(value, defaultValue, onValueChange);
|
|
109
|
+
const [sent, setSent] = useState(false);
|
|
110
|
+
return _jsxs("form", { ...props, className: cx('hw-feedback', className), "data-choice-variant": choiceVariant, onReset: event => { onReset?.(event); const native = event.nativeEvent; queueMicrotask(() => { if (!native.defaultPrevented) {
|
|
111
|
+
if (value === undefined)
|
|
112
|
+
setCurrent(defaultValue);
|
|
113
|
+
setSent(false);
|
|
114
|
+
} }); }, onSubmit: event => { event.preventDefault(); if (disabled || !current.helpful)
|
|
115
|
+
return; onFeedback?.(current); setSent(true); }, children: [_jsxs("fieldset", { disabled: disabled, children: [_jsx("legend", { children: label }), _jsxs("div", { className: "hw-feedback-actions", children: [_jsx(Radio, { name: `${id}-helpful`, label: _jsxs(_Fragment, { children: [_jsx("span", { className: "hw-icon hw-feedback-icon", "data-icon": "thumbs-up", "aria-hidden": "true" }), _jsx("span", { className: "hw-feedback-label", children: yesLabel })] }), value: "yes", checked: current.helpful === 'yes', required: true, onChange: () => { setCurrent({ ...current, helpful: 'yes' }); setSent(false); } }), _jsx(Radio, { name: `${id}-helpful`, label: _jsxs(_Fragment, { children: [_jsx("span", { className: "hw-icon hw-feedback-icon", "data-icon": "thumbs-down", "aria-hidden": "true" }), _jsx("span", { className: "hw-feedback-label", children: noLabel })] }), value: "no", checked: current.helpful === 'no', onChange: () => { setCurrent({ ...current, helpful: 'no' }); setSent(false); } })] }), _jsx(Textarea, { label: commentLabel, name: "comment", value: current.comment, onChange: event => { setCurrent({ ...current, comment: event.currentTarget.value }); setSent(false); } }), _jsx(Button, { type: "submit", disabled: disabled || !current.helpful, children: submitLabel })] }), _jsx("div", { role: "status", children: sent ? successMessage : null })] });
|
|
116
|
+
}
|
|
117
|
+
export function CookieConsent({ title, description, value, defaultValue = null, onValueChange, acceptLabel = 'Accept optional cookies', rejectLabel = 'Reject optional cookies', policyHref, policyLabel = 'Cookie policy', className, ...props }) {
|
|
118
|
+
const id = useId();
|
|
119
|
+
const [choice, setChoice] = useControllable(value, defaultValue, next => { if (next)
|
|
120
|
+
onValueChange?.(next); });
|
|
121
|
+
return _jsxs("section", { ...props, hidden: choice !== null, className: cx('hw-cookie-consent', className), "aria-labelledby": `${id}-title`, children: [_jsx("h2", { id: `${id}-title`, children: title }), _jsx("p", { children: description }), policyHref && _jsx(Link, { href: policyHref, children: policyLabel }), _jsxs("div", { className: "hw-inline", children: [_jsx(Button, { variant: "secondary", onClick: () => setChoice('rejected'), children: rejectLabel }), _jsx(Button, { onClick: () => setChoice('accepted'), children: acceptLabel })] })] });
|
|
122
|
+
}
|
|
123
|
+
export function NotificationList({ items, label, emptyMessage = 'No notifications', onMarkRead, getMarkReadLabel = () => 'Mark as read', unreadLabel = 'Unread', className, ...props }) { const id = useId(); return _jsxs("section", { ...props, className: cx('hw-notification-list', className), "aria-labelledby": `${id}-title`, children: [_jsx("h2", { id: `${id}-title`, children: label }), items.length ? _jsx("ul", { children: items.map(item => _jsxs("li", { "data-state": item.read ? 'read' : 'unread', children: [_jsx("h3", { children: item.href ? _jsx(Link, { href: item.href, children: item.title }) : item.title }), !item.read && _jsx(Badge, { tone: "info", children: unreadLabel }), item.description && _jsx("p", { children: item.description }), item.dateLabel && _jsx("time", { dateTime: item.dateTime, children: item.dateLabel }), !item.read && onMarkRead && _jsx(Button, { variant: "ghost", onClick: () => onMarkRead(item.id), children: getMarkReadLabel(item) })] }, item.id)) }) : _jsx("p", { children: emptyMessage })] }); }
|
|
124
|
+
//# sourceMappingURL=expanded-content.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expanded-content.js","sourceRoot":"","sources":["../src/expanded-content.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import type { ComponentPropsWithRef, ReactNode } from 'react';
|
|
2
|
+
import type { Option } from '@hawiyah/core';
|
|
3
|
+
import type { TextFieldProps } from './forms.js';
|
|
4
|
+
import type { FieldDecoration } from './shared.js';
|
|
5
|
+
export interface InputGroupProps extends ComponentPropsWithRef<'div'> {
|
|
6
|
+
start?: ReactNode;
|
|
7
|
+
end?: ReactNode;
|
|
8
|
+
}
|
|
9
|
+
export declare function InputGroup({ start, end, children, className, ...props }: InputGroupProps): import("react").JSX.Element;
|
|
10
|
+
export interface PasswordFieldProps extends Omit<TextFieldProps, 'type'> {
|
|
11
|
+
visible?: boolean;
|
|
12
|
+
defaultVisible?: boolean;
|
|
13
|
+
onVisibleChange?: (visible: boolean) => void;
|
|
14
|
+
showLabel?: string;
|
|
15
|
+
hideLabel?: string;
|
|
16
|
+
toggleVariant?: 'icon' | 'text';
|
|
17
|
+
}
|
|
18
|
+
export declare function PasswordField({ visible, defaultVisible, onVisibleChange, showLabel, hideLabel, toggleVariant, label, hint, error, className, ref, ...props }: PasswordFieldProps): import("react").JSX.Element;
|
|
19
|
+
export { SearchField } from './search-field.js';
|
|
20
|
+
export type { SearchFieldProps } from './search-field.js';
|
|
21
|
+
export interface NumberFieldProps extends Omit<TextFieldProps, 'type'> {
|
|
22
|
+
}
|
|
23
|
+
export declare function NumberField({ className, ...props }: NumberFieldProps): import("react").JSX.Element;
|
|
24
|
+
export interface SliderProps extends Omit<TextFieldProps, 'type' | 'value' | 'defaultValue' | 'onChange'> {
|
|
25
|
+
value?: number;
|
|
26
|
+
defaultValue?: number;
|
|
27
|
+
onValueChange?: (value: number) => void;
|
|
28
|
+
showValue?: boolean;
|
|
29
|
+
formatValue?: (value: number) => string;
|
|
30
|
+
}
|
|
31
|
+
export declare function Slider({ value, defaultValue, onValueChange, showValue, formatValue, min, max, label, hint, error, ref, className, onPointerDown, onKeyDown, ...props }: SliderProps): import("react").JSX.Element;
|
|
32
|
+
export interface RangeSliderProps extends Omit<ComponentPropsWithRef<'fieldset'>, 'onChange' | 'defaultValue'>, FieldDecoration {
|
|
33
|
+
value?: readonly [number, number];
|
|
34
|
+
defaultValue?: readonly [number, number];
|
|
35
|
+
onValueChange?: (value: [number, number]) => void;
|
|
36
|
+
min?: number;
|
|
37
|
+
max?: number;
|
|
38
|
+
step?: number;
|
|
39
|
+
lowerLabel: string;
|
|
40
|
+
upperLabel: string;
|
|
41
|
+
name?: string;
|
|
42
|
+
lowerName?: string;
|
|
43
|
+
upperName?: string;
|
|
44
|
+
form?: string;
|
|
45
|
+
readOnly?: boolean;
|
|
46
|
+
formatValue?: (value: number) => string;
|
|
47
|
+
}
|
|
48
|
+
export declare function RangeSlider({ value, defaultValue, onValueChange, min, max, step, lowerLabel, upperLabel, name, lowerName, upperName, form, readOnly, formatValue, label, hint, error, className, disabled, ...props }: RangeSliderProps): import("react").JSX.Element;
|
|
49
|
+
export interface RatingProps extends Omit<ComponentPropsWithRef<'fieldset'>, 'onChange' | 'defaultValue'>, FieldDecoration {
|
|
50
|
+
value?: number;
|
|
51
|
+
defaultValue?: number;
|
|
52
|
+
onValueChange?: (value: number) => void;
|
|
53
|
+
max?: number;
|
|
54
|
+
name?: string;
|
|
55
|
+
form?: string;
|
|
56
|
+
required?: boolean;
|
|
57
|
+
readOnly?: boolean;
|
|
58
|
+
getRatingLabel?: (value: number, max: number) => string;
|
|
59
|
+
}
|
|
60
|
+
export declare function Rating({ value, defaultValue, onValueChange, max, name, form, required, readOnly, getRatingLabel, label, hint, error, className, disabled, ...props }: RatingProps): import("react").JSX.Element;
|
|
61
|
+
/** Read-only aggregate score; use Rating for integer input selection. */
|
|
62
|
+
export interface RatingDisplayProps extends ComponentPropsWithRef<'div'> {
|
|
63
|
+
label: string;
|
|
64
|
+
value?: number;
|
|
65
|
+
max?: number;
|
|
66
|
+
showValue?: boolean;
|
|
67
|
+
getValueLabel?: (value: number, max: number) => string;
|
|
68
|
+
}
|
|
69
|
+
export declare function RatingDisplay({ label, value, max, showValue, getValueLabel, className, ...props }: RatingDisplayProps): import("react").JSX.Element;
|
|
70
|
+
export interface PinInputProps extends Omit<TextFieldProps, 'type' | 'value' | 'defaultValue' | 'onChange' | 'maxLength'> {
|
|
71
|
+
value?: string;
|
|
72
|
+
defaultValue?: string;
|
|
73
|
+
onValueChange?: (value: string) => void;
|
|
74
|
+
length?: number;
|
|
75
|
+
showSlots?: boolean;
|
|
76
|
+
}
|
|
77
|
+
export declare function PinInput({ value, defaultValue, onValueChange, length, showSlots, label, hint, error, ref, className, ...props }: PinInputProps): import("react").JSX.Element;
|
|
78
|
+
export interface TagInputProps extends Omit<TextFieldProps, 'type' | 'value' | 'defaultValue' | 'onChange'> {
|
|
79
|
+
value?: readonly string[];
|
|
80
|
+
defaultValue?: readonly string[];
|
|
81
|
+
onValueChange?: (value: string[]) => void;
|
|
82
|
+
getRemoveLabel?: (tag: string) => string;
|
|
83
|
+
requiredMessage?: string;
|
|
84
|
+
}
|
|
85
|
+
export declare function TagInput({ value, defaultValue, onValueChange, getRemoveLabel, requiredMessage, label, hint, error, name, ref, onKeyDown, className, ...props }: TagInputProps): import("react").JSX.Element;
|
|
86
|
+
export interface MultiSelectProps extends Omit<ComponentPropsWithRef<'fieldset'>, 'onChange' | 'defaultValue'>, FieldDecoration {
|
|
87
|
+
label: ReactNode;
|
|
88
|
+
options: readonly Option[];
|
|
89
|
+
value?: readonly string[];
|
|
90
|
+
defaultValue?: readonly string[];
|
|
91
|
+
onValueChange?: (value: string[]) => void;
|
|
92
|
+
name?: string;
|
|
93
|
+
form?: string;
|
|
94
|
+
required?: boolean;
|
|
95
|
+
readOnly?: boolean;
|
|
96
|
+
searchLabel?: string;
|
|
97
|
+
emptyMessage?: string;
|
|
98
|
+
requiredMessage?: string;
|
|
99
|
+
}
|
|
100
|
+
export declare function MultiSelect({ options, value, defaultValue, onValueChange, name, form, required, readOnly, searchLabel, emptyMessage, requiredMessage, label, hint, error, className, disabled, ...props }: MultiSelectProps): import("react").JSX.Element;
|
|
101
|
+
export interface FileDropzoneProps extends Omit<TextFieldProps, 'type' | 'value' | 'defaultValue' | 'readOnly'> {
|
|
102
|
+
onFilesChange?: (files: File[]) => void;
|
|
103
|
+
dropLabel?: string;
|
|
104
|
+
getRejectedMessage?: (files: File[]) => string;
|
|
105
|
+
}
|
|
106
|
+
export declare function FileDropzone({ onFilesChange, dropLabel, getRejectedMessage, label, hint, error, ref, onChange, className, ...props }: FileDropzoneProps): import("react").JSX.Element;
|
|
107
|
+
//# sourceMappingURL=expanded-controls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expanded-controls.d.ts","sourceRoot":"","sources":["../src/expanded-controls.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useId, useRef, useState } from 'react';
|
|
3
|
+
import { clampRange, filterOptions, isDisabled, normalizeDigits, normalizeRatingMax, normalizeRatingValue } from '@hawiyah/core';
|
|
4
|
+
import { Button, TextField } from './forms.js';
|
|
5
|
+
import { assignRef, cx, Field, useControllable, useFieldControl } from './shared.js';
|
|
6
|
+
import { useFormReset } from './expanded-shared.js';
|
|
7
|
+
export function InputGroup({ start, end, children, className, ...props }) { return _jsxs("div", { ...props, className: cx('hw-input-group', className), children: [start != null && _jsx("span", { className: "hw-input-addon", children: start }), children, end != null && _jsx("span", { className: "hw-input-addon", children: end })] }); }
|
|
8
|
+
export function PasswordField({ visible, defaultVisible = false, onVisibleChange, showLabel = 'Show password', hideLabel = 'Hide password', toggleVariant = 'icon', label, hint, error, className, ref, ...props }) {
|
|
9
|
+
const id = useId();
|
|
10
|
+
const input = useRef(null);
|
|
11
|
+
const [shown, setShown] = useControllable(visible, defaultVisible, onVisibleChange);
|
|
12
|
+
useFormReset(input, () => { if (visible === undefined)
|
|
13
|
+
setShown(defaultVisible); }, props.form);
|
|
14
|
+
return _jsx(Field, { label: label, hint: hint, error: error, controlId: props.id ?? id, required: props.required, className: "hw-password-field", children: _jsxs("div", { className: "hw-password-control", children: [_jsx(TextField, { ...props, ref: node => { input.current = node; assignRef(ref, node); }, className: className, type: shown ? 'text' : 'password' }), _jsx(Button, { className: "hw-password-toggle", "data-toggle-variant": toggleVariant, variant: "ghost", disabled: props.disabled, "aria-label": shown ? hideLabel : showLabel, "aria-pressed": shown, "aria-controls": props.id ?? id, onClick: () => { if (input.current && !isDisabled(input.current))
|
|
15
|
+
setShown(!shown); }, children: toggleVariant === 'text' ? shown ? hideLabel : showLabel : _jsx("span", { className: "hw-password-icon", "aria-hidden": "true" }) })] }) });
|
|
16
|
+
}
|
|
17
|
+
export { SearchField } from './search-field.js';
|
|
18
|
+
export function NumberField({ className, ...props }) { return _jsx(TextField, { ...props, type: "number", className: cx('hw-number-field', className) }); }
|
|
19
|
+
function SliderInput(props) {
|
|
20
|
+
const field = useFieldControl(props);
|
|
21
|
+
return _jsx("input", { ...props, ...field, className: cx('hw-slider', props.className) });
|
|
22
|
+
}
|
|
23
|
+
export function Slider({ value, defaultValue, onValueChange, showValue = true, formatValue = String, min = 0, max = 100, label, hint, error, ref, className, onPointerDown, onKeyDown, ...props }) {
|
|
24
|
+
const id = useId();
|
|
25
|
+
const input = useRef(null);
|
|
26
|
+
const initial = defaultValue ?? (Number(min) + Number(max)) / 2;
|
|
27
|
+
const [current, setCurrent] = useControllable(value, initial, onValueChange);
|
|
28
|
+
useFormReset(input, () => { if (value === undefined)
|
|
29
|
+
setCurrent(initial); }, props.form);
|
|
30
|
+
return _jsxs(Field, { label: label, hint: hint, error: error, controlId: props.id ?? id, children: [_jsx(SliderInput, { ...props, min: min, max: max, type: "range", value: current, className: className, ref: node => { input.current = node; assignRef(ref, node); }, "aria-valuetext": formatValue(current), "aria-readonly": props.readOnly || props['aria-readonly'], onPointerDown: event => { onPointerDown?.(event); if (props.readOnly)
|
|
31
|
+
event.preventDefault(); }, onKeyDown: event => { onKeyDown?.(event); if (props.readOnly && ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', 'Home', 'End', 'PageUp', 'PageDown'].includes(event.key))
|
|
32
|
+
event.preventDefault(); }, onChange: event => { if (props.readOnly || isDisabled(event.currentTarget)) {
|
|
33
|
+
event.currentTarget.value = String(current);
|
|
34
|
+
return;
|
|
35
|
+
} setCurrent(event.currentTarget.valueAsNumber); } }), showValue && _jsx("output", { htmlFor: props.id ?? id, children: formatValue(current) })] });
|
|
36
|
+
}
|
|
37
|
+
export function RangeSlider({ value, defaultValue = [0, 100], onValueChange, min = 0, max = 100, step, lowerLabel, upperLabel, name, lowerName, upperName, form, readOnly, formatValue = String, label, hint, error, className, disabled, ...props }) {
|
|
38
|
+
const id = useId();
|
|
39
|
+
const first = useRef(null);
|
|
40
|
+
const [stored, setStored] = useControllable(value, defaultValue, next => onValueChange?.([next[0], next[1]]));
|
|
41
|
+
const current = clampRange([stored[0], stored[1]], min, max, 'lower');
|
|
42
|
+
useFormReset(first, () => { if (value === undefined)
|
|
43
|
+
setStored(defaultValue); }, form);
|
|
44
|
+
return _jsxs("fieldset", { ...props, disabled: disabled, className: cx('hw-range-slider', className), "aria-describedby": [hint ? `${id}-hint` : '', error ? `${id}-error` : ''].filter(Boolean).join(' ') || undefined, "aria-invalid": error ? true : undefined, children: [label != null && _jsx("legend", { className: "hw-label", children: label }), _jsx(Slider, { ref: first, label: lowerLabel, name: lowerName ?? name, form: form, min: min, max: current[1], step: step, value: current[0], readOnly: readOnly, disabled: disabled, formatValue: formatValue, onValueChange: lower => setStored(clampRange([lower, current[1]], min, max, 'lower')) }), _jsx(Slider, { label: upperLabel, name: upperName ?? name, form: form, min: current[0], max: max, step: step, value: current[1], readOnly: readOnly, disabled: disabled, formatValue: formatValue, onValueChange: upper => setStored(clampRange([current[0], upper], min, max, 'upper')) }), hint && _jsx("p", { className: "hw-hint", id: `${id}-hint`, children: hint }), error && _jsx("p", { className: "hw-error", id: `${id}-error`, children: error })] });
|
|
45
|
+
}
|
|
46
|
+
export function Rating({ value, defaultValue = 0, onValueChange, max = 5, name, form, required, readOnly, getRatingLabel = (number, total) => `${number} من ${total}`, label, hint, error, className, disabled, ...props }) {
|
|
47
|
+
const id = useId();
|
|
48
|
+
const input = useRef(null);
|
|
49
|
+
const total = normalizeRatingMax(max);
|
|
50
|
+
const [stored, setCurrent] = useControllable(value, defaultValue, onValueChange);
|
|
51
|
+
const current = Math.floor(normalizeRatingValue(stored, total));
|
|
52
|
+
useFormReset(input, () => { if (value === undefined)
|
|
53
|
+
setCurrent(defaultValue); }, form);
|
|
54
|
+
return _jsxs("fieldset", { ...props, className: cx('hw-rating', className), disabled: disabled, "data-hw-readonly": readOnly || undefined, "aria-describedby": [hint ? `${id}-hint` : '', error ? `${id}-error` : ''].filter(Boolean).join(' ') || undefined, "aria-invalid": error ? true : undefined, children: [_jsx("legend", { className: "hw-label", children: label }), Array.from({ length: total }, (_, index) => index + 1).map(number => _jsxs("label", { children: [_jsx("input", { ref: number === 1 ? input : undefined, type: "radio", className: "hw-radio", name: name ?? id, form: form, value: number, checked: current === number, required: required, "aria-label": getRatingLabel(number, total), "aria-disabled": readOnly || undefined, onClick: event => { if (readOnly)
|
|
55
|
+
event.preventDefault(); }, onKeyDown: event => { if (readOnly && ['ArrowLeft', 'ArrowRight', 'ArrowUp', 'ArrowDown', ' '].includes(event.key))
|
|
56
|
+
event.preventDefault(); }, onChange: event => { if (!readOnly && !isDisabled(event.currentTarget))
|
|
57
|
+
setCurrent(number); } }), _jsx("span", { "aria-hidden": "true", "data-state": number <= current ? 'selected' : undefined, children: "\u2605" })] }, number)), hint && _jsx("p", { id: `${id}-hint`, className: "hw-hint", children: hint }), error && _jsx("p", { id: `${id}-error`, className: "hw-error", children: error })] });
|
|
58
|
+
}
|
|
59
|
+
export function RatingDisplay({ label, value = 0, max = 5, showValue = true, getValueLabel = (score, total) => `${score} من ${total}`, className, ...props }) {
|
|
60
|
+
const total = normalizeRatingMax(max), score = normalizeRatingValue(value, total);
|
|
61
|
+
return _jsxs("div", { ...props, className: cx('hw-rating-display', className), role: "img", "aria-label": props['aria-label'] ?? `${label}: ${getValueLabel(score, total)}`, children: [_jsx("span", { className: "hw-rating-stars", "aria-hidden": "true", children: Array.from({ length: total }, (_, index) => _jsxs("span", { className: "hw-rating-star", children: ["\u2605", _jsx("span", { className: "hw-rating-fill", style: { '--hw-rating-fill': `${Math.min(1, Math.max(0, score - index)) * 100}%` } })] }, index)) }), showValue && _jsxs("span", { className: "hw-rating-score", "aria-hidden": "true", children: [score, "/", total] })] });
|
|
62
|
+
}
|
|
63
|
+
export function PinInput({ value, defaultValue = '', onValueChange, length = 6, showSlots = false, label, hint, error, ref, className, ...props }) {
|
|
64
|
+
const id = useId();
|
|
65
|
+
const input = useRef(null);
|
|
66
|
+
const count = Math.max(1, Math.min(32, Math.floor(length)));
|
|
67
|
+
const normalize = (text) => normalizeDigits(text).replace(/[^0-9]/gu, '').slice(0, count);
|
|
68
|
+
const [stored, setStored] = useControllable(value, normalize(defaultValue), onValueChange);
|
|
69
|
+
const current = normalize(stored);
|
|
70
|
+
useFormReset(input, () => { if (value === undefined)
|
|
71
|
+
setStored(normalize(defaultValue)); }, props.form);
|
|
72
|
+
return _jsxs(Field, { label: label, hint: hint, error: error, required: props.required, controlId: props.id ?? id, className: "hw-pin-input", children: [_jsx(TextField, { ...props, ref: node => { input.current = node; assignRef(ref, node); }, className: className, type: "text", inputMode: "numeric", autoComplete: "one-time-code", pattern: `[0-9]{${count}}`, maxLength: count, value: current, onChange: event => setStored(normalize(event.currentTarget.value)) }), showSlots && _jsx("span", { "aria-hidden": "true", className: "hw-pin-slots", children: Array.from({ length: count }, (_, index) => _jsx("span", { children: current[index] || '·' }, index)) })] });
|
|
73
|
+
}
|
|
74
|
+
export function TagInput({ value, defaultValue = [], onValueChange, getRemoveLabel = tag => `Remove ${tag}`, requiredMessage = 'Add at least one tag.', label, hint, error, name, ref, onKeyDown, className, ...props }) {
|
|
75
|
+
const composing = useRef(false);
|
|
76
|
+
const id = useId();
|
|
77
|
+
const input = useRef(null);
|
|
78
|
+
const [query, setQuery] = useState('');
|
|
79
|
+
const [tags, setTags] = useControllable(value, defaultValue, next => onValueChange?.([...next]));
|
|
80
|
+
useFormReset(input, () => { if (value === undefined)
|
|
81
|
+
setTags(defaultValue); setQuery(''); }, props.form);
|
|
82
|
+
useEffect(() => { input.current?.setCustomValidity(props.required && !tags.length ? requiredMessage : ''); }, [props.required, tags.length, requiredMessage]);
|
|
83
|
+
return _jsxs(Field, { label: label, hint: hint, error: error, required: props.required, controlId: props.id ?? id, className: "hw-tag-input", children: [_jsx("div", { className: "hw-inline", children: tags.map(tag => _jsxs("span", { className: "hw-chip", children: [tag, !props.readOnly && _jsx(Button, { variant: "ghost", size: "sm", disabled: props.disabled, "aria-label": getRemoveLabel(tag), onClick: () => { if (input.current && !isDisabled(input.current)) {
|
|
84
|
+
setTags(tags.filter(item => item !== tag));
|
|
85
|
+
input.current.focus();
|
|
86
|
+
} }, children: _jsx("span", { className: "hw-icon", "data-icon": "cancel-01", "data-size": "md", "aria-hidden": "true" }) }), _jsx("input", { type: "hidden", name: name, form: props.form, value: tag, disabled: props.disabled })] }, tag)) }), _jsx(TextField, { ...props, required: false, "aria-required": props.required ? true : props['aria-required'], ref: node => { input.current = node; assignRef(ref, node); }, className: className, type: "text", value: query, onChange: event => setQuery(event.currentTarget.value), onCompositionStart: event => { composing.current = true; props.onCompositionStart?.(event); }, onCompositionEnd: event => { composing.current = false; props.onCompositionEnd?.(event); }, onKeyDown: event => { onKeyDown?.(event); if (event.defaultPrevented || props.disabled || props.readOnly || isDisabled(event.currentTarget) || composing.current || event.nativeEvent.isComposing || event.ctrlKey || event.altKey || event.metaKey)
|
|
87
|
+
return; if ((event.key === 'Enter' || event.key === ',') && query.trim()) {
|
|
88
|
+
event.preventDefault();
|
|
89
|
+
const tag = query.trim();
|
|
90
|
+
if (tag && !tags.includes(tag))
|
|
91
|
+
setTags([...tags, tag]);
|
|
92
|
+
setQuery('');
|
|
93
|
+
}
|
|
94
|
+
else if (event.key === 'Backspace' && !query && tags.length) {
|
|
95
|
+
event.preventDefault();
|
|
96
|
+
setTags(tags.slice(0, -1));
|
|
97
|
+
} } })] });
|
|
98
|
+
}
|
|
99
|
+
export function MultiSelect({ options, value, defaultValue = [], onValueChange, name, form, required, readOnly, searchLabel = 'Search options', emptyMessage = 'No options found', requiredMessage = 'Choose at least one option.', label, hint, error, className, disabled, ...props }) {
|
|
100
|
+
const id = useId();
|
|
101
|
+
const input = useRef(null);
|
|
102
|
+
const [query, setQuery] = useState('');
|
|
103
|
+
const [selected, setSelected] = useControllable(value, defaultValue, next => onValueChange?.([...next]));
|
|
104
|
+
const allowed = selected.filter(item => options.some(option => option.value === item && !option.disabled));
|
|
105
|
+
const results = filterOptions(options, query);
|
|
106
|
+
useFormReset(input, () => { if (value === undefined)
|
|
107
|
+
setSelected(defaultValue); setQuery(''); }, form);
|
|
108
|
+
useEffect(() => { input.current?.setCustomValidity(required && !disabled && !allowed.length ? requiredMessage : ''); }, [required, disabled, allowed.length, requiredMessage]);
|
|
109
|
+
return _jsxs("fieldset", { ...props, disabled: disabled, className: cx('hw-multi-select', className), "aria-describedby": [hint ? `${id}-hint` : '', error ? `${id}-error` : ''].filter(Boolean).join(' ') || undefined, "aria-invalid": error ? true : undefined, children: [_jsxs("legend", { className: "hw-label", children: [label, required && _jsx("span", { "aria-hidden": "true", children: " *" })] }), _jsx(TextField, { ref: input, form: form, type: "search", "aria-label": searchLabel, "aria-required": required || undefined, "aria-describedby": [hint ? `${id}-hint` : '', error ? `${id}-error` : ''].filter(Boolean).join(' ') || undefined, "aria-invalid": error ? true : undefined, value: query, onChange: event => setQuery(event.currentTarget.value), disabled: disabled }), _jsxs("div", { className: "hw-stack", children: [results.map(option => _jsxs("label", { className: "hw-choice", children: [_jsx("input", { className: "hw-checkbox", type: "checkbox", checked: allowed.includes(option.value), disabled: disabled || readOnly || option.disabled, value: option.value, onChange: event => { if (!disabled && !readOnly)
|
|
110
|
+
setSelected(event.currentTarget.checked ? [...allowed, option.value] : allowed.filter(item => item !== option.value)); } }), option.label] }, option.value)), !results.length && _jsx("p", { className: "hw-hint", children: emptyMessage })] }), allowed.map(item => _jsx("input", { type: "hidden", name: name, form: form, value: item, disabled: disabled }, item)), hint && _jsx("p", { id: `${id}-hint`, className: "hw-hint", children: hint }), error && _jsx("p", { id: `${id}-error`, className: "hw-error", children: error })] });
|
|
111
|
+
}
|
|
112
|
+
export function FileDropzone({ onFilesChange, dropLabel = 'Drop files here or choose files', getRejectedMessage = () => 'Some files do not match the accepted file types.', label, hint, error, ref, onChange, className, ...props }) {
|
|
113
|
+
const input = useRef(null);
|
|
114
|
+
const id = useId();
|
|
115
|
+
const [dragging, setDragging] = useState(false);
|
|
116
|
+
const [files, setFiles] = useState([]);
|
|
117
|
+
const [rejection, setRejection] = useState('');
|
|
118
|
+
useFormReset(input, () => { setFiles([]); setRejection(''); }, props.form);
|
|
119
|
+
const unavailable = () => props.disabled || !input.current || isDisabled(input.current);
|
|
120
|
+
const accept = (file) => !props.accept || props.accept.split(',').some(raw => { const type = raw.trim().toLowerCase(); return type.startsWith('.') ? file.name.toLowerCase().endsWith(type) : type.endsWith('/*') ? file.type.toLowerCase().startsWith(type.slice(0, -1)) : file.type.toLowerCase() === type; });
|
|
121
|
+
const rejectSelection = (files) => {
|
|
122
|
+
const rejected = files.filter(file => !accept(file));
|
|
123
|
+
if (!rejected.length)
|
|
124
|
+
return false;
|
|
125
|
+
if (input.current)
|
|
126
|
+
input.current.value = '';
|
|
127
|
+
setFiles([]);
|
|
128
|
+
setRejection(getRejectedMessage(rejected));
|
|
129
|
+
onFilesChange?.([]);
|
|
130
|
+
return true;
|
|
131
|
+
};
|
|
132
|
+
return _jsx("div", { className: cx('hw-file-dropzone', className), "data-state": dragging ? 'dragging' : rejection || error ? 'error' : undefined, onDragOver: event => { if (event.dataTransfer.types.includes('Files')) {
|
|
133
|
+
event.preventDefault();
|
|
134
|
+
setDragging(!unavailable());
|
|
135
|
+
} }, onDragLeave: event => { if (!event.currentTarget.contains(event.relatedTarget))
|
|
136
|
+
setDragging(false); }, onDrop: event => { event.preventDefault(); setDragging(false); if (unavailable() || !input.current)
|
|
137
|
+
return; const incoming = Array.from(event.dataTransfer.files); if (rejectSelection(incoming))
|
|
138
|
+
return; const accepted = props.multiple ? incoming : incoming.slice(0, 1); const transfer = new DataTransfer(); accepted.forEach(file => transfer.items.add(file)); input.current.files = transfer.files; input.current.dispatchEvent(new Event('change', { bubbles: true })); }, children: _jsxs(Field, { label: label ?? dropLabel, hint: hint, error: rejection || error, required: props.required, controlId: props.id ?? id, children: [_jsx(TextField, { ...props, ref: node => { input.current = node; assignRef(ref, node); }, type: "file", onChange: event => { if (unavailable())
|
|
139
|
+
return; onChange?.(event); const next = Array.from(event.currentTarget.files ?? []); if (rejectSelection(next))
|
|
140
|
+
return; setFiles(next); setRejection(''); onFilesChange?.(next); } }), files.length > 0 && _jsx("ul", { children: files.map((file, index) => _jsx("li", { children: file.name }, `${file.name}-${index}`)) })] }) });
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=expanded-controls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expanded-controls.js","sourceRoot":"","sources":["../src/expanded-controls.tsx"],"names":[],"mappings":"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"}
|