@ziyarago/ui 0.8.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +12 -0
- package/README.md +7 -7
- package/THIRD_PARTY_NOTICES.md +2 -2
- package/assets/fonts/jetbrains-mono/jetbrains-mono-cyrillic-ext.woff2 +0 -0
- package/assets/fonts/jetbrains-mono/jetbrains-mono-cyrillic.woff2 +0 -0
- package/assets/fonts/jetbrains-mono/jetbrains-mono-latin-ext.woff2 +0 -0
- package/assets/fonts/jetbrains-mono/jetbrains-mono-latin.woff2 +0 -0
- package/assets/fonts/manrope/manrope-cyrillic-ext.woff2 +0 -0
- package/assets/fonts/manrope/manrope-cyrillic.woff2 +0 -0
- package/assets/fonts/manrope/manrope-latin-ext.woff2 +0 -0
- package/assets/fonts/manrope/manrope-latin.woff2 +0 -0
- package/dist/llms-full.txt +210 -2
- package/dist/llms.txt +15 -3
- package/dist/manifest.json +2808 -989
- package/dist/style.css +33 -5
- package/docs/INTEGRATION.md +3 -3
- package/docs/MIGRATION.md +3 -1
- package/package.json +2 -2
- package/src/compat/index.js +3 -2
- package/src/compat/vite.js +1 -1
- package/src/core/bools.js +1 -1
- package/src/core/components2.js +3 -3
- package/src/core/components7.js +13 -0
- package/src/core/pages.js +17 -6
- package/src/i18n/components/QiblaCompass.js +5 -0
- package/src/i18n/components/index.js +2 -0
- package/src/meta/domain.js +10 -0
- package/src/meta/forms.js +4 -0
- package/src/meta/groups.js +2 -2
- package/src/meta/pages.js +139 -0
- package/src/meta/templates.json +1391 -1
- package/src/react/index.js +12 -0
- package/src/styles/components5.css +1 -1
- package/src/styles/components8.css +20 -1
- package/src/styles/effects.css +2 -1
- package/src/styles/fonts.css +9 -1
- package/src/vue/index.js +1 -1
- package/types/react.d.ts +686 -0
- package/types/vue-global.d.ts +12 -0
- package/types/vue.d.ts +478 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
## [0.10.0](https://github.com/ziyarago/ui/compare/v0.9.0...v0.10.0) (2026-10-21)
|
|
2
|
+
|
|
3
|
+
### Features
|
|
4
|
+
|
|
5
|
+
* page templates wave 4 (itinerary, prayer, group manager, public tour), QiblaCompass, bundled fonts, auth page and compat fixes ([4809362](https://github.com/ziyarago/ui/commit/48093620085425bb936a44294c6d2c6cf2a888f6))
|
|
6
|
+
|
|
7
|
+
## [0.9.0](https://github.com/ziyarago/ui/compare/v0.8.0...v0.9.0) (2026-10-21)
|
|
8
|
+
|
|
9
|
+
### Features
|
|
10
|
+
|
|
11
|
+
* page templates wave 3 (article, changelog, help, states, legal, locations, booking flow) ([435d5b8](https://github.com/ziyarago/ui/commit/435d5b8209a527c845897968da4ffe8a8e009618))
|
|
12
|
+
|
|
1
13
|
## [0.8.0](https://github.com/ziyarago/ui/compare/v0.7.0...v0.8.0) (2026-10-21)
|
|
2
14
|
|
|
3
15
|
### Features
|
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
<p align="center"><a href="https://ziyara.vip"><img src="https://raw.githubusercontent.com/ziyarago/ui/main/docs/images/hero-dark.png" alt="ziyarago/ui: glass design system for Vue, Nuxt and React" width="100%"></a></p>
|
|
6
6
|
|
|
7
|
-
Glass design system for Vue 3, Nuxt and React:
|
|
7
|
+
Glass design system for Vue 3, Nuxt and React: 208 components, 40 page templates, OKLCH tokens, dark and light, RTL and Arabic, 16 interface languages. One framework-neutral core with thin adapters. Built for Umrah and Hajj products, usable anywhere.
|
|
8
8
|
|
|
9
9
|
<table>
|
|
10
10
|
<tr>
|
|
@@ -12,8 +12,8 @@ Glass design system for Vue 3, Nuxt and React: 196 components, 29 page templates
|
|
|
12
12
|
<td width="50%"><img src="https://raw.githubusercontent.com/ziyarago/ui/main/docs/images/hero-rtl.png" alt="Arabic RTL"><br><sub>Arabic, RTL mirrored</sub></td>
|
|
13
13
|
</tr>
|
|
14
14
|
<tr>
|
|
15
|
-
<td><img src="https://raw.githubusercontent.com/ziyarago/ui/main/docs/images/components.png" alt="Component catalog"><br><sub>
|
|
16
|
-
<td><img src="https://raw.githubusercontent.com/ziyarago/ui/main/docs/images/templates.png" alt="Page templates"><br><sub>
|
|
15
|
+
<td><img src="https://raw.githubusercontent.com/ziyarago/ui/main/docs/images/components.png" alt="Component catalog"><br><sub>208 components with props and live examples</sub></td>
|
|
16
|
+
<td><img src="https://raw.githubusercontent.com/ziyarago/ui/main/docs/images/templates.png" alt="Page templates"><br><sub>40 page templates</sub></td>
|
|
17
17
|
</tr>
|
|
18
18
|
<tr>
|
|
19
19
|
<td><img src="https://raw.githubusercontent.com/ziyarago/ui/main/docs/images/button-docs.png" alt="Props docs"><br><sub>Every prop and variant documented</sub></td>
|
|
@@ -24,7 +24,7 @@ Glass design system for Vue 3, Nuxt and React: 196 components, 29 page templates
|
|
|
24
24
|
Files:
|
|
25
25
|
|
|
26
26
|
```
|
|
27
|
-
src/core/ components*.js, pages.js:
|
|
27
|
+
src/core/ components*.js, pages.js: 208 components and 40 page templates as { state, slots, render(ctx) }; no framework imports
|
|
28
28
|
src/vue/ Vue 3 adapter (UiButton, UiAppShell … + install(app))
|
|
29
29
|
src/react/ React adapter (same names)
|
|
30
30
|
src/theme.js useUiTheme(): theme · palette · dir → <html> attributes, persisted
|
|
@@ -59,7 +59,7 @@ Types ship with the package. Only 9 core components have typed props so far; the
|
|
|
59
59
|
|
|
60
60
|
### Requirements and notes
|
|
61
61
|
- Node 18+ for tooling; any bundler that handles ES modules and CSS imports (Vite, webpack 5, Nuxt, Next). The package is plain ESM, not pre-bundled.
|
|
62
|
-
- Fonts: Manrope (Latin, Cyrillic), Thmanyah Sans (Arabic, `dir="rtl"`), JetBrains Mono (code).
|
|
62
|
+
- Fonts: Manrope (Latin, Cyrillic), Thmanyah Sans (Arabic, `dir="rtl"`), JetBrains Mono (code). All three ship in `assets/fonts` and load from your own origin, no Google request. Full table, weight mapping and self-hosting: docs site `/docs/fonts`. Colors: `/docs/colors`. Icons (Lucide) and map tiles load from the network — see `THIRD_PARTY_NOTICES.md` for self-hosting.
|
|
63
63
|
- SSR: components render on the server; icons, `UiMap`, `UiRichEditor`, `UiTour` and `useUiTheme()` touch `document` only on the client.
|
|
64
64
|
- Palettes via `data-palette="gold|tamam"`, theme via `data-theme="dark|light"`, direction via `dir="rtl"` on `<html>`.
|
|
65
65
|
- Releases: see `docs/PUBLISHING.md`, history in `CHANGELOG.md`.
|
|
@@ -87,7 +87,7 @@ Controls and density-bearing components take `size="xs|sm|md|lg|xl"` (default `m
|
|
|
87
87
|
## Conventions
|
|
88
88
|
- Controlled inputs: Vue `v-model` / `@change`; React `modelValue` + `onChange(value)`.
|
|
89
89
|
- Slots: Vue named slots (`#actions`, `#footer`); React props `actions`, `footer`.
|
|
90
|
-
- Icons are Lucide names (`icon="search"`). SVGs are fetched once from unpkg `lucide-static@0.460.0` and inlined as data-URI masks (they take `currentColor`).
|
|
90
|
+
- Icons are Lucide names (`icon="search"`). SVGs are fetched once from unpkg `lucide-static@0.460.0` and inlined as data-URI masks (they take `currentColor`). Under a strict CSP (`connect-src 'self'`) the CDN request is blocked: copy `lucide-static/icons` to your public folder and call `setIconBase('/icons/')` from `@ziyarago/ui` before mount.
|
|
91
91
|
- Theme: `[data-theme=dark|light]`, palette `[data-palette=gold|tamam]`, direction `dir`.
|
|
92
92
|
- Formatters `fmt.num / sar / dur`: `-1 → ∞`, NaN/null → `—`, `1 м 05 с`.
|
|
93
93
|
- Brand fill for ONE hero element per view.
|
|
@@ -99,7 +99,7 @@ Surfaces: Card · Modal · Drawer · Toast
|
|
|
99
99
|
Data: KpiTile · Progress · Ring · DataTable · KanbanColumn · KanbanCard · Timeline
|
|
100
100
|
Navigation: TopNav · SideNav · Breadcrumbs · Pagination
|
|
101
101
|
Layout: AppShell · PageHeader · AuthLayout
|
|
102
|
-
Domain: LeadCard · HotelCard · TourCard · PrayerTimes · RamadanTracker · CallRow
|
|
102
|
+
Domain: LeadCard · HotelCard · TourCard · PrayerTimes · RamadanTracker · QiblaCompass · CallRow
|
|
103
103
|
|
|
104
104
|
## Not done yet
|
|
105
105
|
TypeScript typings, a build step (the package ships ES source), tests, DatePicker, CommandPalette, Map components, i18n bundle (6 locales), and a Flutter widget port (tokens.json is ready for it).
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
| Asset | Source | License | How it is used |
|
|
4
4
|
|---|---|---|---|
|
|
5
5
|
| Thmanyah Sans, Serif Display, Serif Text | https://font.thmanyah.com | Free, including commercial use (check the foundry page before redistributing changes) | Shipped in `assets/fonts/thmanyah` for Arabic and RTL |
|
|
6
|
-
| Manrope | https://fonts.google.com/specimen/Manrope | SIL OFL 1.1 |
|
|
7
|
-
| JetBrains Mono | https://www.jetbrains.com/lp/mono/ | SIL OFL 1.1 |
|
|
6
|
+
| Manrope | https://fonts.google.com/specimen/Manrope | SIL OFL 1.1 | Shipped in `assets/fonts/manrope` (variable woff2, latin and cyrillic) |
|
|
7
|
+
| JetBrains Mono | https://www.jetbrains.com/lp/mono/ | SIL OFL 1.1 | Shipped in `assets/fonts/jetbrains-mono` (variable woff2, latin and cyrillic) |
|
|
8
8
|
| Lucide icons | https://lucide.dev | ISC | Fetched at runtime from unpkg; set a self-hosted path with `setIconBase()` |
|
|
9
9
|
| Map tiles (`UiMap`) | CARTO basemaps, © OpenStreetMap contributors | ODbL data, CARTO terms | Requested at runtime; keep the attribution the component shows |
|
|
10
10
|
| ZiyaraGo logo and 3D icons | ZiyaraGo | All rights reserved | not shipped in the package; shown on ziyara.vip for demonstration only |
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/dist/llms-full.txt
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# @ziyarago/ui
|
|
2
2
|
|
|
3
|
-
> ZiyaraGo UI — glass design system for Umrah and Hajj products. OKLCH tokens, two palettes, dark and light, RTL, Thmanyah. One framework-neutral core with Vue 3, Nuxt and React adapters,
|
|
3
|
+
> ZiyaraGo UI — glass design system for Umrah and Hajj products. OKLCH tokens, two palettes, dark and light, RTL, Thmanyah. One framework-neutral core with Vue 3, Nuxt and React adapters, 208 components and 40 page templates.
|
|
4
4
|
|
|
5
|
-
Version 0.
|
|
5
|
+
Version 0.10.0. Docs: https://ziyara.vip . Manifest (machine readable): https://ziyara.vip/manifest.json
|
|
6
6
|
|
|
7
7
|
## Setup
|
|
8
8
|
- import { UiButton } from '@ziyarago/ui/vue'
|
|
@@ -520,6 +520,9 @@ Props:
|
|
|
520
520
|
- `placeholder`: string. Placeholder text.
|
|
521
521
|
- `hint`: string. Helper text under the control. Hidden while error is set.
|
|
522
522
|
- `error`: string. Error message under the control. Turns the control red and is announced with role="alert".
|
|
523
|
+
- `required`: boolean = false. Adds a red asterisk to the label and the native required attribute.
|
|
524
|
+
- `name`: string. Native name attribute of the input.
|
|
525
|
+
- `autofocus`: boolean. Focuses the input on mount.
|
|
523
526
|
- `autocomplete`: string = "current-password". Native autocomplete token. Use "new-password" on sign-up and password-change forms so managers offer to generate one.
|
|
524
527
|
- `size`: 'xs' | 'sm' | 'md' | 'lg' | 'xl' = "md". Control height, font and padding scale.
|
|
525
528
|
Events:
|
|
@@ -961,6 +964,7 @@ Props:
|
|
|
961
964
|
- `error`: string. Failure message shown in a danger alert above the fields.
|
|
962
965
|
- `loading`: boolean = false. Disables the submit button and shows a spinner.
|
|
963
966
|
- `showForgot`: boolean = true. Show the "Forgot password?" link.
|
|
967
|
+
- `showRemember`: boolean = true. Show the "Remember device" checkbox. Hide it when your backend has no such option; the submit payload then keeps remember: true.
|
|
964
968
|
- `submitLabel`: string = "Sign in". Submit button text. Wins over labels.submit.
|
|
965
969
|
- `labels`: { email?: string; password?: string; remember?: string; forgot?: string; submit?: string } = "{ email: 'Email or phone', password: 'Password', remember: 'Remember device', forgot: 'Forgot password?', submit: 'Sign in' }". Texts of the form; any missing key keeps its English default.
|
|
966
970
|
- `size`: 'xs' | 'sm' | 'md' | 'lg' | 'xl' = "md". Control height, font and padding scale.
|
|
@@ -1947,6 +1951,16 @@ Props:
|
|
|
1947
1951
|
Notes:
|
|
1948
1952
|
- Exposed as role="img" with aria-label "Day N of 30".
|
|
1949
1953
|
|
|
1954
|
+
## UiQiblaCompass (domain)
|
|
1955
|
+
Compass dial with a Kaaba marker pointing to the Qibla and the bearing in degrees below it.
|
|
1956
|
+
Props:
|
|
1957
|
+
- `bearing` (required): number = 0. Qibla bearing in degrees clockwise from true north, 0 to 360; other values wrap.
|
|
1958
|
+
- `heading`: number = 0. Direction the device points to, in degrees. The dial turns against it so the marker follows the real Qibla; 0 keeps north up.
|
|
1959
|
+
- `distance`: string. Optional small caption under the bearing, such as "4 210 km to the Kaaba".
|
|
1960
|
+
- `size`: 'xs' | 'sm' | 'md' | 'lg' | 'xl' | number = "md". Diameter: xs 120, sm 160, md 200, lg 250, xl 300 px; a number is used as px.
|
|
1961
|
+
Notes:
|
|
1962
|
+
- Exposed as role="img" with a label that states the bearing. Compute the bearing and heading yourself (geolocation and DeviceOrientation); the component only draws them.
|
|
1963
|
+
|
|
1950
1964
|
## UiBookingCard (domain)
|
|
1951
1965
|
Compact booking summary: code, status, guest, hotel, dates and total.
|
|
1952
1966
|
Props:
|
|
@@ -2503,6 +2517,200 @@ Notes:
|
|
|
2503
2517
|
- Place inside AppShell; fill only the slots you need.
|
|
2504
2518
|
- Filters sit left of the results and stack above them under 860 px. Fill empty only when there are no results.
|
|
2505
2519
|
|
|
2520
|
+
## UiPageArticle (pages)
|
|
2521
|
+
Article template: cover, post body, sticky table of contents, share row and related posts.
|
|
2522
|
+
Props:
|
|
2523
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2524
|
+
- `subtitle`: string. Caption under the heading.
|
|
2525
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2526
|
+
Slots:
|
|
2527
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2528
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2529
|
+
- cover: Cover image area with title and author line; a gradient Card or LazyImage.
|
|
2530
|
+
- body: Article text; Heading, Text, Code, Alert.
|
|
2531
|
+
- toc: Sticky table of contents; Card with a list of anchor links.
|
|
2532
|
+
- share: Share and reaction row; Button, IconButton, CopyButton.
|
|
2533
|
+
- related: Related posts; Card grid.
|
|
2534
|
+
Notes:
|
|
2535
|
+
- Place inside AppShell; fill only the slots you need.
|
|
2536
|
+
- Body, share and related share the main column; the table of contents stays visible on the right while the body scrolls and drops under the body below 860 px.
|
|
2537
|
+
|
|
2538
|
+
## UiPageChangelog (pages)
|
|
2539
|
+
Changelog template: release timeline grouped by version with new, fix and improved tags, a filter and a subscribe card.
|
|
2540
|
+
Props:
|
|
2541
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2542
|
+
- `subtitle`: string. Caption under the heading.
|
|
2543
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2544
|
+
Slots:
|
|
2545
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2546
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2547
|
+
- filters: Tag filter; FilterChips, SearchInput.
|
|
2548
|
+
- timeline: Releases grouped by version; Card, Chip, Divider.
|
|
2549
|
+
- subscribe: Sticky subscribe card; Card, TextField, Button.
|
|
2550
|
+
Notes:
|
|
2551
|
+
- Place inside AppShell; fill only the slots you need.
|
|
2552
|
+
- Filters and timeline share the main column; the subscribe card is a sticky side column.
|
|
2553
|
+
|
|
2554
|
+
## UiPageHelp (pages)
|
|
2555
|
+
Help center home: search, category grid, popular articles and a contact card.
|
|
2556
|
+
Props:
|
|
2557
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2558
|
+
- `subtitle`: string. Caption under the heading.
|
|
2559
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2560
|
+
Slots:
|
|
2561
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2562
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2563
|
+
- search: Large search field; SearchInput.
|
|
2564
|
+
- categories: Category tiles; Card with IconTile.
|
|
2565
|
+
- popular: Popular articles list; Card.
|
|
2566
|
+
- contact: Contact options; Card, Button.
|
|
2567
|
+
Notes:
|
|
2568
|
+
- Place inside AppShell; fill only the slots you need.
|
|
2569
|
+
- Popular articles and contact share a row and wrap on narrow screens. For a single question list use PageFaq.
|
|
2570
|
+
|
|
2571
|
+
## UiPageStates (pages)
|
|
2572
|
+
State gallery: empty list, no results, no permission, offline, error with retry, loading and success on one page.
|
|
2573
|
+
Props:
|
|
2574
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2575
|
+
- `subtitle`: string. Caption under the heading.
|
|
2576
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2577
|
+
Slots:
|
|
2578
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2579
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2580
|
+
- empty: Empty list; EmptyState with a primary action.
|
|
2581
|
+
- noresults: No search results; EmptyState with a reset action.
|
|
2582
|
+
- forbidden: No permission; EmptyState with a request-access action.
|
|
2583
|
+
- offline: Offline; DataState state="offline".
|
|
2584
|
+
- error: Error with retry; DataState state="error".
|
|
2585
|
+
- loading: Loading; Skeleton or DataState state="loading".
|
|
2586
|
+
- success: Success confirmation; Alert tone="success" or EmptyState.
|
|
2587
|
+
Notes:
|
|
2588
|
+
- Place inside AppShell; fill only the slots you need.
|
|
2589
|
+
- The first six slots sit in two rows of auto-fit cards; success spans the full width.
|
|
2590
|
+
|
|
2591
|
+
## UiPageLegal (pages)
|
|
2592
|
+
Legal document template: last-updated line, sticky table of contents, numbered sections and a contact card.
|
|
2593
|
+
Props:
|
|
2594
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2595
|
+
- `subtitle`: string. Caption under the heading.
|
|
2596
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2597
|
+
Slots:
|
|
2598
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2599
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2600
|
+
- meta: Version, last-updated date and print or download buttons; Chip, Button.
|
|
2601
|
+
- toc: Sticky table of contents; Card with anchor links.
|
|
2602
|
+
- document: Document sections; Card, Heading, Text.
|
|
2603
|
+
- contact: Questions card; Card, Button.
|
|
2604
|
+
Notes:
|
|
2605
|
+
- Place inside AppShell; fill only the slots you need.
|
|
2606
|
+
- The table of contents sits left of the document and stacks above it under 860 px.
|
|
2607
|
+
|
|
2608
|
+
## UiPageLocations (pages)
|
|
2609
|
+
Locations template: filters, a scrollable list of places and a sticky map panel.
|
|
2610
|
+
Props:
|
|
2611
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2612
|
+
- `subtitle`: string. Caption under the heading.
|
|
2613
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2614
|
+
Slots:
|
|
2615
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2616
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2617
|
+
- filters: Search and category filters; SearchInput, FilterChips.
|
|
2618
|
+
- list: Places list; Card rows.
|
|
2619
|
+
- map: Map panel; Map, or a gradient placeholder.
|
|
2620
|
+
Notes:
|
|
2621
|
+
- Place inside AppShell; fill only the slots you need.
|
|
2622
|
+
- The list is a fixed-width column left of the map; under 860 px the map goes below the list.
|
|
2623
|
+
|
|
2624
|
+
## UiPageBookingFlow (pages)
|
|
2625
|
+
Booking flow template: stepper, the active step content, back and continue buttons and a sticky summary card.
|
|
2626
|
+
Props:
|
|
2627
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2628
|
+
- `subtitle`: string. Caption under the heading.
|
|
2629
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2630
|
+
Slots:
|
|
2631
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2632
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2633
|
+
- steps: Progress; Stepper.
|
|
2634
|
+
- content: Content of the active step (search, pick, guests, confirm); Card, DatePicker, OptionCards, NumberInput.
|
|
2635
|
+
- nav: Back and Continue buttons.
|
|
2636
|
+
- summary: Booking summary; Card, Descriptions.
|
|
2637
|
+
Notes:
|
|
2638
|
+
- Place inside AppShell; fill only the slots you need.
|
|
2639
|
+
- Render only the active step in content. The summary stays visible on the right and goes below the step under 860 px.
|
|
2640
|
+
|
|
2641
|
+
## UiPageItinerary (pages)
|
|
2642
|
+
Itinerary template: day tabs, a timeline of stops for the chosen day, transport and hotel blocks and a sticky trip summary card.
|
|
2643
|
+
Props:
|
|
2644
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2645
|
+
- `subtitle`: string. Caption under the heading.
|
|
2646
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2647
|
+
Slots:
|
|
2648
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2649
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2650
|
+
- days: Day switcher; Tabs or PillTabs.
|
|
2651
|
+
- timeline: Stops of the active day with times and places; Card, Timeline, StatRow.
|
|
2652
|
+
- transport: Flights, buses and transfers of the day; Card, StatRow.
|
|
2653
|
+
- hotel: Where the group stays that night; Card, Badge, IconTile.
|
|
2654
|
+
- summary: Trip summary; Card, Descriptions, Progress.
|
|
2655
|
+
Notes:
|
|
2656
|
+
- Place inside AppShell; fill only the slots you need.
|
|
2657
|
+
- Render only the active day in timeline, transport and hotel. The summary stays visible on the right and goes below the day under 860 px.
|
|
2658
|
+
|
|
2659
|
+
## UiPagePrayer (pages)
|
|
2660
|
+
Prayer times template: a location picker, today's times with the next prayer highlighted, a month table and a sticky Qibla compass.
|
|
2661
|
+
Props:
|
|
2662
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2663
|
+
- `subtitle`: string. Caption under the heading.
|
|
2664
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2665
|
+
Slots:
|
|
2666
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2667
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2668
|
+
- location: City and method pickers; Select, PillSelect, SegmentedControl.
|
|
2669
|
+
- today: Today's prayers and the countdown to the next one; Card, PrayerTimes.
|
|
2670
|
+
- month: Prayer times for the whole month; Card, DataTable.
|
|
2671
|
+
- qibla: Qibla direction; Card, QiblaCompass.
|
|
2672
|
+
Notes:
|
|
2673
|
+
- Place inside AppShell; fill only the slots you need.
|
|
2674
|
+
- The Qibla card stays visible on the right and goes below the times under 860 px.
|
|
2675
|
+
|
|
2676
|
+
## UiPageGroupManager (pages)
|
|
2677
|
+
Group manager template: trip summary, pilgrims table with document and visa status, bulk actions, rooming and a sticky payments summary.
|
|
2678
|
+
Props:
|
|
2679
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2680
|
+
- `subtitle`: string. Caption under the heading.
|
|
2681
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2682
|
+
Slots:
|
|
2683
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2684
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2685
|
+
- trip: Trip header with dates, route and counters; Card, StatStrip, Progress.
|
|
2686
|
+
- toolbar: Search and status filters; SearchInput, FilterChips.
|
|
2687
|
+
- bulk: Actions for the selected pilgrims; Button, Badge.
|
|
2688
|
+
- pilgrims: Pilgrims table with documents and visa; Card, DataTable, Badge.
|
|
2689
|
+
- rooms: Rooming assignment; Card, RoomGrid.
|
|
2690
|
+
- payments: Payments summary and manager contact; Card, Progress, ContactPanel.
|
|
2691
|
+
Notes:
|
|
2692
|
+
- Place inside AppShell; fill only the slots you need.
|
|
2693
|
+
- The payments card stays visible on the right and goes below the table under 860 px.
|
|
2694
|
+
|
|
2695
|
+
## UiPageTourPublic (pages)
|
|
2696
|
+
Public tour page: header, gradient gallery area, highlights, itinerary accordion, included and excluded lists, reviews and a sticky price and booking card. Has no shell and follows the theme.
|
|
2697
|
+
Props:
|
|
2698
|
+
- `title`: string. Page heading. The built-in header renders only when title is set and the header slot is empty.
|
|
2699
|
+
- `subtitle`: string. Caption under the heading.
|
|
2700
|
+
- `crumbs`: { label: string; href?: string }[]. Breadcrumb trail above the title.
|
|
2701
|
+
Slots:
|
|
2702
|
+
- header: Custom page header; replaces the built-in title/subtitle/crumbs header.
|
|
2703
|
+
- actions: Buttons on the right of the built-in header. With a title they sit beside it; without a title they render alone, right-aligned (unless the header slot is filled).
|
|
2704
|
+
- gallery: Hero area made of gradients or photos; Gallery, Card.
|
|
2705
|
+
- highlights: Key facts and highlights; StatStrip, IconTile.
|
|
2706
|
+
- itinerary: Day by day program; Accordion.
|
|
2707
|
+
- included: What the price includes and excludes; Card, Descriptions.
|
|
2708
|
+
- reviews: Pilgrim reviews; Card, Rating, Avatar.
|
|
2709
|
+
- booking: Price, dates, seats and the booking button; Card, Button.
|
|
2710
|
+
Notes:
|
|
2711
|
+
- Render the page on its own, without AppShell: it supplies its own width and padding in your layout.
|
|
2712
|
+
- The booking card stays visible on the right and goes below the content under 860 px.
|
|
2713
|
+
|
|
2506
2714
|
## UiPageNotifications (pages)
|
|
2507
2715
|
Notifications template: filters, a feed grouped by day and an empty state. Put Mark all read in actions.
|
|
2508
2716
|
Props:
|
package/dist/llms.txt
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# @ziyarago/ui
|
|
2
2
|
|
|
3
|
-
> ZiyaraGo UI — glass design system for Umrah and Hajj products. OKLCH tokens, two palettes, dark and light, RTL, Thmanyah. One framework-neutral core with Vue 3, Nuxt and React adapters,
|
|
3
|
+
> ZiyaraGo UI — glass design system for Umrah and Hajj products. OKLCH tokens, two palettes, dark and light, RTL, Thmanyah. One framework-neutral core with Vue 3, Nuxt and React adapters, 208 components and 40 page templates.
|
|
4
4
|
|
|
5
|
-
Version 0.
|
|
5
|
+
Version 0.10.0. Docs: https://ziyara.vip . Manifest (machine readable): https://ziyara.vip/manifest.json
|
|
6
6
|
|
|
7
7
|
## Setup
|
|
8
8
|
- import { UiButton } from '@ziyarago/ui/vue'
|
|
@@ -200,6 +200,7 @@ Umrah, Hajj, hotel and CRM blocks.
|
|
|
200
200
|
- UiTourCard: Tour or virtual-tour card with session count and a seat-occupancy bar.
|
|
201
201
|
- UiPrayerTimes: Row of daily prayer times with the upcoming prayer highlighted.
|
|
202
202
|
- UiRamadanTracker: Thirty-day Ramadan progress strip; the last ten days and odd nights are marked.
|
|
203
|
+
- UiQiblaCompass: Compass dial with a Kaaba marker pointing to the Qibla and the bearing in degrees below it.
|
|
203
204
|
- UiBookingCard: Compact booking summary: code, status, guest, hotel, dates and total.
|
|
204
205
|
- UiGuestCard: Guest profile card with avatar, country, stay length and tags.
|
|
205
206
|
- UiRoomGrid: Tile grid of rooms colored by housekeeping status; use for front-desk room selection.
|
|
@@ -240,6 +241,17 @@ Ready layouts with named slots.
|
|
|
240
241
|
- UiPageTeam: Team template: member stats, members table, roles and permissions matrix, and an invite form.
|
|
241
242
|
- UiPageIntegrations: Integrations template: connection cards, API keys and webhooks.
|
|
242
243
|
- UiPageSearch: Search template: query field, filter sidebar, result groups and an empty state.
|
|
244
|
+
- UiPageArticle: Article template: cover, post body, sticky table of contents, share row and related posts.
|
|
245
|
+
- UiPageChangelog: Changelog template: release timeline grouped by version with new, fix and improved tags, a filter and a subscribe card.
|
|
246
|
+
- UiPageHelp: Help center home: search, category grid, popular articles and a contact card.
|
|
247
|
+
- UiPageStates: State gallery: empty list, no results, no permission, offline, error with retry, loading and success on one page.
|
|
248
|
+
- UiPageLegal: Legal document template: last-updated line, sticky table of contents, numbered sections and a contact card.
|
|
249
|
+
- UiPageLocations: Locations template: filters, a scrollable list of places and a sticky map panel.
|
|
250
|
+
- UiPageBookingFlow: Booking flow template: stepper, the active step content, back and continue buttons and a sticky summary card.
|
|
251
|
+
- UiPageItinerary: Itinerary template: day tabs, a timeline of stops for the chosen day, transport and hotel blocks and a sticky trip summary card.
|
|
252
|
+
- UiPagePrayer: Prayer times template: a location picker, today's times with the next prayer highlighted, a month table and a sticky Qibla compass.
|
|
253
|
+
- UiPageGroupManager: Group manager template: trip summary, pilgrims table with document and visa status, bulk actions, rooming and a sticky payments summary.
|
|
254
|
+
- UiPageTourPublic: Public tour page: header, gradient gallery area, highlights, itinerary accordion, included and excluded lists, reviews and a sticky price and booking card. Has no shell and follows the theme.
|
|
243
255
|
- UiPageNotifications: Notifications template: filters, a feed grouped by day and an empty state. Put Mark all read in actions.
|
|
244
256
|
- UiPageInbox: Inbox template: filters and conversation list, the open thread with a composer, and a customer panel.
|
|
245
257
|
- UiPageCheckout: Checkout template: step indicator, cart items, delivery address, payment and an order summary column.
|
|
@@ -248,6 +260,6 @@ Ready layouts with named slots.
|
|
|
248
260
|
- UiPageAuth: Sign-in page template without the app shell, as a centered card or a split layout.
|
|
249
261
|
- UiPageStatus: Full-page status screen (404, 401, maintenance, coming soon) with one action.
|
|
250
262
|
|
|
251
|
-
Page templates: UiPageDashboard (header, hero, kpis, occupancy, funnel, top, activity); UiPageCrm (header, summary, filters, board, calls); UiPageBookings (header, stats, toolbar, bulk, table, pager); UiPageCatalog (header, filters, toolbar, grid, pager); UiPageDetail (header, gallery, summary, tabs, booking, history); UiPageSettings (header, subnav, profile, notifications, integrations, danger); UiPageAuth (background, logo, form, footer); UiPagePatterns (header, hero, strip, statlines, chartcard, listrows, countries, tiles, versus, segbar, activity, actioncard); UiPageUserList (header, stats, filters, toolbar, table, drawer); UiPageProfile (profile, tabs, about, activity, plan); UiPageForm (header, main, media, side, actions); UiPageOrder (header, status, items, shipping, side); UiPageAuth (aside, logo, form, footer); UiPageStatus (code, message, action); UiPageAccount (header, tabs, panel); UiPageFaq (search, cats, answers, contact); UiPagePricing (toggle, plans, faq); UiPageLanding (hero, logos, features, proof, pricing, cta, footer); UiPageOnboarding (header, progress, steps, checklist, tips); UiPageCheckout (header, steps, items, address, payment, summary); UiPageInbox (header, filters, list, thread, composer, customer); UiPageNotifications (header, filters, feed, empty); UiPageAnalytics (header, period, kpis, trend, breakdown, table); UiPageCalendar (header, toolbar, grid, mini, details); UiPageKanban (header, filters, board, detail); UiPageBilling (header, plan, usage, invoices, methods, upgrade); UiPageTeam (header, stats, members, roles, invite); UiPageIntegrations (header, filters, connections, keys, webhooks); UiPageSearch (header, search, filters, results, empty)
|
|
263
|
+
Page templates: UiPageDashboard (header, hero, kpis, occupancy, funnel, top, activity); UiPageCrm (header, summary, filters, board, calls); UiPageBookings (header, stats, toolbar, bulk, table, pager); UiPageCatalog (header, filters, toolbar, grid, pager); UiPageDetail (header, gallery, summary, tabs, booking, history); UiPageSettings (header, subnav, profile, notifications, integrations, danger); UiPageAuth (background, logo, form, footer); UiPagePatterns (header, hero, strip, statlines, chartcard, listrows, countries, tiles, versus, segbar, activity, actioncard); UiPageUserList (header, stats, filters, toolbar, table, drawer); UiPageProfile (profile, tabs, about, activity, plan); UiPageForm (header, main, media, side, actions); UiPageOrder (header, status, items, shipping, side); UiPageAuth (aside, logo, form, footer); UiPageStatus (code, message, action); UiPageAccount (header, tabs, panel); UiPageFaq (search, cats, answers, contact); UiPagePricing (toggle, plans, faq); UiPageLanding (hero, logos, features, proof, pricing, cta, footer); UiPageOnboarding (header, progress, steps, checklist, tips); UiPageCheckout (header, steps, items, address, payment, summary); UiPageInbox (header, filters, list, thread, composer, customer); UiPageNotifications (header, filters, feed, empty); UiPageAnalytics (header, period, kpis, trend, breakdown, table); UiPageCalendar (header, toolbar, grid, mini, details); UiPageKanban (header, filters, board, detail); UiPageBilling (header, plan, usage, invoices, methods, upgrade); UiPageTeam (header, stats, members, roles, invite); UiPageIntegrations (header, filters, connections, keys, webhooks); UiPageSearch (header, search, filters, results, empty); UiPageArticle (header, cover, body, toc, share, related); UiPageChangelog (header, filters, timeline, subscribe); UiPageHelp (header, search, categories, popular, contact); UiPageStates (header, empty, noresults, forbidden, offline, error, loading, success); UiPageLegal (header, meta, toc, document, contact); UiPageLocations (header, filters, list, map); UiPageBookingFlow (header, steps, content, nav, summary); UiPageItinerary (header, days, timeline, transport, hotel, summary); UiPagePrayer (header, location, today, month, qibla); UiPageGroupManager (header, trip, toolbar, bulk, pilgrims, rooms, payments); UiPageTourPublic (header, gallery, highlights, itinerary, included, reviews, booking)
|
|
252
264
|
|
|
253
265
|
Full API of every component: llms-full.txt
|