@hawiyah/vue 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 +70 -0
- package/README.md +388 -2
- package/dist/calendar.d.ts +183 -0
- package/dist/calendar.d.ts.map +1 -0
- package/dist/calendar.js +448 -0
- package/dist/calendar.js.map +1 -0
- package/dist/content-navigation.d.ts +61 -0
- package/dist/content-navigation.d.ts.map +1 -0
- package/dist/content-navigation.js +31 -0
- package/dist/content-navigation.js.map +1 -0
- package/dist/content.d.ts +392 -0
- package/dist/content.d.ts.map +1 -0
- package/dist/content.js +310 -0
- package/dist/content.js.map +1 -0
- package/dist/controls.d.ts +657 -0
- package/dist/controls.d.ts.map +1 -0
- package/dist/controls.js +679 -0
- package/dist/controls.js.map +1 -0
- package/dist/display.d.ts +387 -0
- package/dist/display.d.ts.map +1 -0
- package/dist/display.js +293 -0
- package/dist/display.js.map +1 -0
- package/dist/expansion-interactive.d.ts +476 -0
- package/dist/expansion-interactive.d.ts.map +1 -0
- package/dist/expansion-interactive.js +613 -0
- package/dist/expansion-interactive.js.map +1 -0
- package/dist/file-upload-list.d.ts +54 -0
- package/dist/file-upload-list.d.ts.map +1 -0
- package/dist/file-upload-list.js +21 -0
- package/dist/file-upload-list.js.map +1 -0
- package/dist/forms.d.ts +388 -0
- package/dist/forms.d.ts.map +1 -0
- package/dist/forms.js +156 -0
- package/dist/forms.js.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +16 -0
- package/dist/index.js.map +1 -0
- package/dist/interactive.d.ts +240 -0
- package/dist/interactive.d.ts.map +1 -0
- package/dist/interactive.js +341 -0
- package/dist/interactive.js.map +1 -0
- package/dist/layout.d.ts +755 -0
- package/dist/layout.d.ts.map +1 -0
- package/dist/layout.js +101 -0
- package/dist/layout.js.map +1 -0
- package/dist/mobile-top-bar.d.ts +47 -0
- package/dist/mobile-top-bar.d.ts.map +1 -0
- package/dist/mobile-top-bar.js +18 -0
- package/dist/mobile-top-bar.js.map +1 -0
- package/dist/native-attributes.d.ts +38 -0
- package/dist/native-attributes.d.ts.map +1 -0
- package/dist/native-attributes.js +27 -0
- package/dist/native-attributes.js.map +1 -0
- package/dist/navigation-drawer.d.ts +87 -0
- package/dist/navigation-drawer.d.ts.map +1 -0
- package/dist/navigation-drawer.js +56 -0
- package/dist/navigation-drawer.js.map +1 -0
- package/dist/patterns.d.ts +455 -0
- package/dist/patterns.d.ts.map +1 -0
- package/dist/patterns.js +355 -0
- package/dist/patterns.js.map +1 -0
- package/dist/portal.d.ts +174 -0
- package/dist/portal.d.ts.map +1 -0
- package/dist/portal.js +36 -0
- package/dist/portal.js.map +1 -0
- package/dist/search-field.d.ts +87 -0
- package/dist/search-field.d.ts.map +1 -0
- package/dist/search-field.js +123 -0
- package/dist/search-field.js.map +1 -0
- package/dist/shared.d.ts +46 -0
- package/dist/shared.d.ts.map +1 -0
- package/dist/shared.js +40 -0
- package/dist/shared.js.map +1 -0
- package/dist/site-verification.d.ts +63 -0
- package/dist/site-verification.d.ts.map +1 -0
- package/dist/site-verification.js +34 -0
- package/dist/site-verification.js.map +1 -0
- package/package.json +53 -3
package/dist/display.js
ADDED
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
import { computed, defineComponent, h, mergeProps, nextTick, onBeforeUnmount, onMounted, onUpdated, ref, useId, watch } from 'vue';
|
|
2
|
+
import { createAccordionMotion, getPaginationItems, normalizePaginationPage, normalizePaginationTotal, observeFieldValue } from '@hawiyah/core';
|
|
3
|
+
import { Button } from './forms.js';
|
|
4
|
+
import { useValue } from './shared.js';
|
|
5
|
+
const AccordionDetail = defineComponent({
|
|
6
|
+
props: { title: { type: String, required: true }, open: { type: Boolean, default: undefined }, name: String },
|
|
7
|
+
emits: { change: (_open) => true },
|
|
8
|
+
setup(props, { slots, emit }) {
|
|
9
|
+
const details = ref();
|
|
10
|
+
const content = ref();
|
|
11
|
+
const open = ref(props.open ?? false);
|
|
12
|
+
const initialOpen = open.value;
|
|
13
|
+
let motion;
|
|
14
|
+
const change = (next) => { open.value = next; emit('change', next); };
|
|
15
|
+
const setupMotion = () => {
|
|
16
|
+
motion?.destroy();
|
|
17
|
+
if (props.name)
|
|
18
|
+
details.value.setAttribute('name', props.name);
|
|
19
|
+
else
|
|
20
|
+
details.value.removeAttribute('name');
|
|
21
|
+
motion = createAccordionMotion(details.value, content.value, change);
|
|
22
|
+
motion.setOpen(open.value, true);
|
|
23
|
+
};
|
|
24
|
+
onMounted(setupMotion);
|
|
25
|
+
watch(() => props.name, () => { if (details.value)
|
|
26
|
+
setupMotion(); }, { flush: 'post' });
|
|
27
|
+
// Preserve the native-details contract: open initializes the item and a
|
|
28
|
+
// changed prop updates it, while user toggles still work without a listener.
|
|
29
|
+
watch(() => props.open, next => { open.value = next ?? false; });
|
|
30
|
+
watch(open, next => motion?.setOpen(next), { flush: 'post' });
|
|
31
|
+
onBeforeUnmount(() => motion?.destroy());
|
|
32
|
+
return () => h('details', { ref: details, class: 'hw-accordion-item', name: props.name, open: initialOpen, onToggle: () => motion?.nativeToggle() }, [
|
|
33
|
+
h('summary', { class: 'hw-accordion-trigger', onClick: (event) => { event.preventDefault(); change(!open.value); } }, props.title),
|
|
34
|
+
h('div', { ref: content, class: 'hw-accordion-content' }, slots.default?.()),
|
|
35
|
+
]);
|
|
36
|
+
},
|
|
37
|
+
});
|
|
38
|
+
export const Accordion = defineComponent({
|
|
39
|
+
name: 'HwAccordion', inheritAttrs: false,
|
|
40
|
+
props: { items: { type: Array, required: true }, exclusive: Boolean },
|
|
41
|
+
emits: { toggle: (_value, _open) => true },
|
|
42
|
+
setup(props, { attrs, slots, emit }) {
|
|
43
|
+
const group = `hw-${useId()}`;
|
|
44
|
+
return () => h('div', mergeProps(attrs, { class: 'hw-accordion' }), props.items.map(item => h(AccordionDetail, { key: item.value, title: item.title, name: props.exclusive ? group : undefined, open: item.open, onChange: (next) => emit('toggle', item.value, next) }, () => slots[item.value]?.() ?? item.content)));
|
|
45
|
+
},
|
|
46
|
+
});
|
|
47
|
+
export const Card = defineComponent({
|
|
48
|
+
name: 'HwCard', inheritAttrs: false,
|
|
49
|
+
props: { variant: String, href: String, disabled: Boolean },
|
|
50
|
+
setup(props, { attrs, slots }) {
|
|
51
|
+
return () => {
|
|
52
|
+
const action = props.href !== undefined;
|
|
53
|
+
const { onClick, ...rest } = attrs;
|
|
54
|
+
return h(action ? 'a' : 'article', mergeProps(rest, {
|
|
55
|
+
class: ['hw-card', action && 'hw-card-action'],
|
|
56
|
+
'data-variant': props.variant ?? attrs['data-variant'], 'data-disabled': props.disabled || undefined,
|
|
57
|
+
...(action ? { href: props.disabled ? undefined : props.href, role: props.disabled ? 'link' : attrs.role, 'aria-disabled': props.disabled || undefined, tabindex: props.disabled ? -1 : attrs.tabindex } : {}),
|
|
58
|
+
onClick: (event) => {
|
|
59
|
+
if (props.disabled) {
|
|
60
|
+
event.preventDefault();
|
|
61
|
+
event.stopPropagation();
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
for (const handler of Array.isArray(onClick) ? onClick : [onClick])
|
|
65
|
+
if (typeof handler === 'function')
|
|
66
|
+
handler(event);
|
|
67
|
+
},
|
|
68
|
+
}), [slots.header && h('header', { class: 'hw-card-header' }, slots.header()), h('div', { class: 'hw-card-body' }, slots.default?.()), slots.footer && h('footer', { class: 'hw-card-footer' }, slots.footer())]);
|
|
69
|
+
};
|
|
70
|
+
},
|
|
71
|
+
});
|
|
72
|
+
export const Badge = defineComponent({
|
|
73
|
+
name: 'HwBadge', inheritAttrs: false, props: { tone: { type: String, default: 'neutral' }, variant: String },
|
|
74
|
+
setup(props, { attrs, slots }) { return () => h('span', mergeProps(attrs, { class: 'hw-badge', 'data-tone': props.tone, 'data-variant': props.variant ?? attrs['data-variant'] }), slots.default?.()); },
|
|
75
|
+
});
|
|
76
|
+
export const Alert = defineComponent({
|
|
77
|
+
name: 'HwAlert', inheritAttrs: false, props: { tone: { type: String, default: 'info' }, title: String, variant: String },
|
|
78
|
+
setup(props, { attrs, slots }) { return () => h('div', mergeProps({ role: props.tone === 'danger' ? 'alert' : 'status' }, attrs, { class: 'hw-alert', 'data-tone': props.tone, 'data-variant': props.variant ?? attrs['data-variant'] }), h('div', { class: 'hw-alert-content' }, [props.title && h('strong', {}, props.title), slots.default?.()])); },
|
|
79
|
+
});
|
|
80
|
+
export const Table = defineComponent({
|
|
81
|
+
name: 'HwTable', inheritAttrs: false,
|
|
82
|
+
props: { columns: Array, rows: { type: Array, default: () => [] }, caption: String, variant: String, size: String, emptyMessage: { type: String, default: 'لا توجد سجلات' }, wrapperProps: Object, rowKey: Function },
|
|
83
|
+
setup(props, { attrs, slots }) {
|
|
84
|
+
const captionId = useId();
|
|
85
|
+
return () => h('div', mergeProps({ class: 'hw-table-wrap', tabindex: 0, role: props.caption ? 'region' : undefined, 'aria-labelledby': props.caption ? captionId : undefined }, props.wrapperProps ?? {}), [h('table', mergeProps(attrs, { class: 'hw-table', 'data-variant': props.variant ?? attrs['data-variant'], 'data-size': props.size ?? attrs['data-size'] }), [
|
|
86
|
+
props.caption && h('caption', { id: captionId }, props.caption),
|
|
87
|
+
props.columns ? [h('thead', {}, [h('tr', {}, props.columns.map(column => h('th', { key: column.key, scope: 'col' }, column.header)))]), h('tbody', {}, props.rows.length ? props.rows.map((row, index) => h('tr', { key: props.rowKey?.(row, index) ?? index }, props.columns.map(column => h(column.rowHeader ? 'th' : 'td', { key: column.key, scope: column.rowHeader ? 'row' : undefined }, slots[`cell:${column.key}`]?.({ row, index }) ?? column.cell?.(row, index) ?? String(row[column.key] ?? ''))))) : h('tr', {}, h('td', { colspan: props.columns.length || 1 }, props.emptyMessage)))] : slots.default?.(),
|
|
88
|
+
])]);
|
|
89
|
+
},
|
|
90
|
+
});
|
|
91
|
+
const PaginationJumpInput = defineComponent({
|
|
92
|
+
props: { start: { type: Number, required: true }, end: { type: Number, required: true } },
|
|
93
|
+
setup(props) {
|
|
94
|
+
const element = ref();
|
|
95
|
+
let presence;
|
|
96
|
+
onMounted(() => { if (element.value)
|
|
97
|
+
presence = observeFieldValue(element.value); });
|
|
98
|
+
onUpdated(() => presence?.refresh());
|
|
99
|
+
onBeforeUnmount(() => presence?.destroy());
|
|
100
|
+
return () => h('input', { ref: element, class: 'hw-input', 'data-hw-jump-input': '', 'data-hw-filled': 'true', form: '', type: 'number', inputmode: 'numeric', required: true, min: props.start, max: props.end, step: 1, value: props.start, onInput: (event) => {
|
|
101
|
+
const input = event.currentTarget;
|
|
102
|
+
if (input.dataset.hwJumpTouched === 'true') {
|
|
103
|
+
if (input.checkValidity())
|
|
104
|
+
input.removeAttribute('aria-invalid');
|
|
105
|
+
else
|
|
106
|
+
input.setAttribute('aria-invalid', 'true');
|
|
107
|
+
}
|
|
108
|
+
} });
|
|
109
|
+
},
|
|
110
|
+
});
|
|
111
|
+
export const Pagination = defineComponent({
|
|
112
|
+
name: 'HwPagination', inheritAttrs: false,
|
|
113
|
+
props: {
|
|
114
|
+
modelValue: Number, defaultValue: { type: Number, default: 1 }, totalPages: { type: Number, required: true },
|
|
115
|
+
label: { type: String, default: 'ترقيم الصفحات' }, previousLabel: { type: String, default: 'الصفحة السابقة' }, nextLabel: { type: String, default: 'الصفحة التالية' },
|
|
116
|
+
pageLabel: { type: Function, default: (page) => 'الصفحة ' + page },
|
|
117
|
+
formatPage: { type: Function, default: String }, siblingCount: { type: Number, default: 1 },
|
|
118
|
+
disabled: Boolean, hideOnSinglePage: Boolean,
|
|
119
|
+
gapLabel: { type: Function, default: (start, end) => 'الصفحات ' + start + ' إلى ' + end },
|
|
120
|
+
jumpLabel: { type: String, default: 'الانتقال إلى صفحة' }, goLabel: { type: String, default: 'انتقال' },
|
|
121
|
+
},
|
|
122
|
+
emits: { 'update:modelValue': (_value) => true },
|
|
123
|
+
setup(props, { attrs, emit }) {
|
|
124
|
+
const model = useValue(() => props.modelValue, props.defaultValue, value => emit('update:modelValue', value));
|
|
125
|
+
const root = ref();
|
|
126
|
+
const total = computed(() => normalizePaginationTotal(props.totalPages)), current = computed(() => normalizePaginationPage(model.value.value, total.value));
|
|
127
|
+
let pendingFocus = null;
|
|
128
|
+
let ancestorObserver;
|
|
129
|
+
const close = (except) => root.value?.querySelectorAll('.hw-pagination-gap[open]').forEach(details => { if (details !== except)
|
|
130
|
+
details.open = false; });
|
|
131
|
+
const blocked = () => props.disabled || !!root.value?.querySelector(':scope > [data-hw-page]')?.matches(':disabled');
|
|
132
|
+
const syncInherited = () => {
|
|
133
|
+
const unavailable = blocked();
|
|
134
|
+
root.value?.querySelectorAll('.hw-pagination-gap > summary').forEach(summary => {
|
|
135
|
+
if (unavailable) {
|
|
136
|
+
summary.setAttribute('aria-disabled', 'true');
|
|
137
|
+
summary.tabIndex = -1;
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
summary.removeAttribute('aria-disabled');
|
|
141
|
+
summary.removeAttribute('tabindex');
|
|
142
|
+
}
|
|
143
|
+
});
|
|
144
|
+
if (unavailable)
|
|
145
|
+
close();
|
|
146
|
+
};
|
|
147
|
+
const focusCurrent = () => { if (pendingFocus !== null) {
|
|
148
|
+
const requested = pendingFocus;
|
|
149
|
+
pendingFocus = null;
|
|
150
|
+
if (current.value === requested)
|
|
151
|
+
root.value?.querySelector('[aria-current="page"]')?.focus();
|
|
152
|
+
} };
|
|
153
|
+
watch([current, total, () => props.disabled, () => props.siblingCount], () => { close(); syncInherited(); focusCurrent(); }, { flush: 'post' });
|
|
154
|
+
const outside = (event) => { if (root.value && !root.value.contains(event.target))
|
|
155
|
+
close(); };
|
|
156
|
+
onMounted(() => {
|
|
157
|
+
const node = root.value;
|
|
158
|
+
if (!node)
|
|
159
|
+
return;
|
|
160
|
+
node.ownerDocument.addEventListener('click', outside);
|
|
161
|
+
const Observer = node.ownerDocument.defaultView?.MutationObserver;
|
|
162
|
+
ancestorObserver = Observer ? new Observer(syncInherited) : undefined;
|
|
163
|
+
for (let ancestor = node.parentElement; ancestor; ancestor = ancestor.parentElement)
|
|
164
|
+
if (ancestor.tagName === 'FIELDSET')
|
|
165
|
+
ancestorObserver?.observe(ancestor, { attributes: true, attributeFilter: ['disabled'] });
|
|
166
|
+
syncInherited();
|
|
167
|
+
});
|
|
168
|
+
onUpdated(syncInherited);
|
|
169
|
+
onBeforeUnmount(() => { root.value?.ownerDocument.removeEventListener('click', outside); ancestorObserver?.disconnect(); });
|
|
170
|
+
const select = (requested, gap) => {
|
|
171
|
+
if (blocked() || !Number.isFinite(requested))
|
|
172
|
+
return;
|
|
173
|
+
const next = normalizePaginationPage(requested, total.value);
|
|
174
|
+
close();
|
|
175
|
+
if (gap) {
|
|
176
|
+
gap.querySelector('summary')?.focus();
|
|
177
|
+
pendingFocus = next !== current.value ? next : null;
|
|
178
|
+
}
|
|
179
|
+
if (next !== current.value)
|
|
180
|
+
model.set(next);
|
|
181
|
+
void nextTick(focusCurrent);
|
|
182
|
+
};
|
|
183
|
+
const jump = (node, start, end) => {
|
|
184
|
+
const input = node.querySelector('input');
|
|
185
|
+
if (!input || blocked())
|
|
186
|
+
return;
|
|
187
|
+
input.dataset.hwJumpTouched = 'true';
|
|
188
|
+
if (input.checkValidity() && Number.isInteger(input.valueAsNumber) && input.valueAsNumber >= start && input.valueAsNumber <= end) {
|
|
189
|
+
input.removeAttribute('aria-invalid');
|
|
190
|
+
select(input.valueAsNumber, node.closest('details'));
|
|
191
|
+
}
|
|
192
|
+
else {
|
|
193
|
+
input.setAttribute('aria-invalid', 'true');
|
|
194
|
+
input.reportValidity();
|
|
195
|
+
}
|
|
196
|
+
};
|
|
197
|
+
return () => h('nav', mergeProps({ 'aria-label': props.label }, attrs, { ref: root, class: 'hw-pagination', 'data-disabled': props.disabled || undefined, hidden: attrs.hidden || props.hideOnSinglePage && total.value === 1,
|
|
198
|
+
onClickCapture: (event) => { if (blocked()) {
|
|
199
|
+
event.preventDefault();
|
|
200
|
+
event.stopPropagation();
|
|
201
|
+
syncInherited();
|
|
202
|
+
} },
|
|
203
|
+
onKeydown: (event) => {
|
|
204
|
+
if (blocked() && ['Enter', ' '].includes(event.key)) {
|
|
205
|
+
event.preventDefault();
|
|
206
|
+
syncInherited();
|
|
207
|
+
return;
|
|
208
|
+
}
|
|
209
|
+
if (event.defaultPrevented || event.key !== 'Escape')
|
|
210
|
+
return;
|
|
211
|
+
const details = event.target.closest('.hw-pagination-gap[open]');
|
|
212
|
+
if (details) {
|
|
213
|
+
event.preventDefault();
|
|
214
|
+
details.open = false;
|
|
215
|
+
details.querySelector('summary')?.focus();
|
|
216
|
+
}
|
|
217
|
+
},
|
|
218
|
+
}), [
|
|
219
|
+
h('button', { class: 'hw-button hw-pagination-arrow', 'data-variant': 'ghost', 'data-hw-previous': '', type: 'button', 'aria-label': props.previousLabel, disabled: props.disabled || current.value === 1, onClick: () => select(current.value - 1) }),
|
|
220
|
+
...getPaginationItems(current.value, total.value, props.siblingCount).map(item => {
|
|
221
|
+
if (typeof item === 'number')
|
|
222
|
+
return h('button', { key: item, class: 'hw-button hw-pagination-item', 'data-variant': 'ghost', 'data-hw-page': item, type: 'button', disabled: props.disabled, 'aria-label': props.pageLabel(item), 'aria-current': current.value === item ? 'page' : undefined, onClick: () => select(item) }, props.formatPage(item));
|
|
223
|
+
if (props.disabled)
|
|
224
|
+
return h('span', { key: 'gap-' + item.start, class: 'hw-pagination-ellipsis', 'aria-hidden': 'true' }, '…');
|
|
225
|
+
return h('details', { key: 'gap-' + item.start, class: 'hw-pagination-gap', onToggle: (event) => { const details = event.currentTarget; if (blocked())
|
|
226
|
+
syncInherited();
|
|
227
|
+
else if (details.open)
|
|
228
|
+
close(details); } }, [
|
|
229
|
+
h('summary', { class: 'hw-pagination-gap-trigger', 'aria-label': props.gapLabel(item.start, item.end) }, '…'),
|
|
230
|
+
h('div', { class: 'hw-pagination-menu' }, item.end - item.start < 100 ?
|
|
231
|
+
Array.from({ length: item.end - item.start + 1 }, (_, index) => item.start + index).map(page => h('button', { key: page, type: 'button', class: 'hw-button hw-pagination-item', 'data-variant': 'ghost', 'data-hw-page': page, 'aria-label': props.pageLabel(page), onClick: (event) => select(page, event.currentTarget.closest('details')) }, props.formatPage(page))) :
|
|
232
|
+
h('div', { class: 'hw-pagination-jump', onKeydown: (event) => { if (event.key === 'Enter') {
|
|
233
|
+
event.preventDefault();
|
|
234
|
+
jump(event.currentTarget, item.start, item.end);
|
|
235
|
+
} } }, [
|
|
236
|
+
h('label', { class: 'hw-label' }, [props.jumpLabel, h(PaginationJumpInput, { start: item.start, end: item.end })]),
|
|
237
|
+
h('button', { type: 'button', class: 'hw-button', 'data-hw-jump-submit': '', onClick: (event) => jump(event.currentTarget.parentElement, item.start, item.end) }, props.goLabel),
|
|
238
|
+
])),
|
|
239
|
+
]);
|
|
240
|
+
}),
|
|
241
|
+
h('button', { class: 'hw-button hw-pagination-arrow', 'data-variant': 'ghost', 'data-hw-next': '', type: 'button', 'aria-label': props.nextLabel, disabled: props.disabled || current.value === total.value, onClick: () => select(current.value + 1) }),
|
|
242
|
+
]);
|
|
243
|
+
},
|
|
244
|
+
});
|
|
245
|
+
export const Breadcrumb = defineComponent({
|
|
246
|
+
name: 'HwBreadcrumb', inheritAttrs: false, props: { items: { type: Array, required: true }, label: { type: String, default: 'مسار التنقل' } },
|
|
247
|
+
setup(props, { attrs }) { return () => h('nav', mergeProps({ 'aria-label': props.label }, attrs, { class: 'hw-breadcrumb' }), [h('ol', {}, props.items.map((item, index) => h('li', { key: index }, [h(item.href && !item.disabled ? 'a' : 'span', { href: item.disabled ? undefined : item.href, role: item.disabled ? 'link' : undefined, 'aria-disabled': item.disabled || undefined, 'aria-current': item.current || index === props.items.length - 1 ? 'page' : undefined }, item.label)])))]); },
|
|
248
|
+
});
|
|
249
|
+
export const Progress = defineComponent({
|
|
250
|
+
name: 'HwProgress', inheritAttrs: false, props: { label: { type: String, required: true }, value: Number, max: { type: Number, default: 100 } },
|
|
251
|
+
setup(props, { attrs }) { return () => h('progress', mergeProps(attrs, { class: 'hw-progress', 'aria-label': props.label, value: props.value, max: props.max })); },
|
|
252
|
+
});
|
|
253
|
+
export const Skeleton = defineComponent({ name: 'HwSkeleton', inheritAttrs: false, setup(_, { attrs }) { return () => h('span', mergeProps(attrs, { class: 'hw-skeleton', 'aria-hidden': 'true' })); } });
|
|
254
|
+
export const Spinner = defineComponent({ name: 'HwSpinner', inheritAttrs: false, props: { label: { type: String, default: 'Loading' } }, setup(props, { attrs }) { return () => h('span', mergeProps(attrs, { class: 'hw-spinner', role: 'status' }), [h('span', { class: 'hw-sr-only' }, props.label)]); } });
|
|
255
|
+
export const Avatar = defineComponent({
|
|
256
|
+
name: 'HwAvatar', inheritAttrs: false, props: { name: { type: String, required: true }, src: String, initials: String, size: String, variant: String },
|
|
257
|
+
setup(props, { attrs }) {
|
|
258
|
+
const imageFailed = ref(false);
|
|
259
|
+
watch(() => props.src, () => { imageFailed.value = false; }, { flush: 'sync' });
|
|
260
|
+
return () => {
|
|
261
|
+
const visible = !!props.src && !imageFailed.value;
|
|
262
|
+
const src = props.src;
|
|
263
|
+
return h('span', mergeProps(attrs, { class: 'hw-avatar', 'data-size': props.size ?? attrs['data-size'], 'data-variant': props.variant ?? attrs['data-variant'], role: visible ? undefined : 'img', 'aria-label': visible ? undefined : props.name }), visible ? [h('img', { key: src, src, alt: props.name, onError: () => { if (props.src === src)
|
|
264
|
+
imageFailed.value = true; } })] : h('span', { 'aria-hidden': 'true' }, props.initials ?? props.name.trim().split(/\s+/u).slice(0, 2).map(word => Array.from(word)[0]).join('')));
|
|
265
|
+
};
|
|
266
|
+
},
|
|
267
|
+
});
|
|
268
|
+
export const Divider = defineComponent({
|
|
269
|
+
name: 'HwDivider', inheritAttrs: false,
|
|
270
|
+
props: {
|
|
271
|
+
tone: String,
|
|
272
|
+
orientation: String,
|
|
273
|
+
},
|
|
274
|
+
setup(props, { attrs }) {
|
|
275
|
+
return () => h('hr', mergeProps({ 'data-tone': props.tone, 'aria-orientation': props.orientation }, attrs, { class: 'hw-divider' }));
|
|
276
|
+
},
|
|
277
|
+
});
|
|
278
|
+
export const Stepper = defineComponent({
|
|
279
|
+
name: 'HwStepper', inheritAttrs: false, props: { items: { type: Array, required: true }, current: String, activeIndex: Number, label: { type: String, default: 'التقدم' } },
|
|
280
|
+
setup(props, { attrs }) {
|
|
281
|
+
return () => h('ol', mergeProps({ 'aria-label': props.label }, attrs, { class: 'hw-stepper' }), props.items.map((item, index) => {
|
|
282
|
+
const requested = props.activeIndex ?? props.items.findIndex(step => step.value === props.current);
|
|
283
|
+
const current = Number.isInteger(requested) && requested >= -1 && requested <= props.items.length ? requested : -1;
|
|
284
|
+
const status = item.status ?? (index === current ? 'current' : index < current ? 'complete' : 'upcoming');
|
|
285
|
+
return h('li', { key: item.value, class: 'hw-step', 'data-state': status, 'aria-current': status === 'current' ? 'step' : undefined }, [h('span', {}, item.label), item.description && h('p', { class: 'hw-hint' }, item.description)]);
|
|
286
|
+
}));
|
|
287
|
+
},
|
|
288
|
+
});
|
|
289
|
+
export const EmptyState = defineComponent({
|
|
290
|
+
name: 'HwEmptyState', inheritAttrs: false, props: { title: { type: String, required: true }, description: String },
|
|
291
|
+
setup(props, { attrs, slots }) { return () => h('div', mergeProps(attrs, { class: 'hw-empty' }), [slots.icon && h('span', { 'aria-hidden': 'true' }, slots.icon()), h('h3', {}, props.title), props.description && h('p', {}, props.description), slots.default?.(), slots.action?.()]); },
|
|
292
|
+
});
|
|
293
|
+
//# sourceMappingURL=display.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"display.js","sourceRoot":"","sources":["../src/display.ts"],"names":[],"mappings":"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"}
|