docs: define dashboard time presentation
This commit is contained in:
13
DESIGN.md
13
DESIGN.md
@@ -1,7 +1,7 @@
|
||||
# Design System — ZarinPal Merchant Analytics
|
||||
|
||||
- Status: Draft baseline for approval
|
||||
- Version: 0.1.0
|
||||
- Version: 0.1.1
|
||||
- Last updated: 2026-08-20
|
||||
- Direction: Persian-first RTL
|
||||
|
||||
@@ -124,7 +124,7 @@ Navigation labels should describe merchant tasks, not internal database concepts
|
||||
|
||||
- Root UI is `lang="fa" dir="rtl"`.
|
||||
- Technical identifiers, URLs, hashes, and mixed Latin values use isolated LTR spans (`dir="ltr"`) to prevent bidi corruption.
|
||||
- Use `Intl.NumberFormat`/`Intl.DateTimeFormat`; specifications must choose Persian vs Latin digits, Jalali vs Gregorian display, timezone, and Rial/Toman terminology before implementation.
|
||||
- Use `Intl.NumberFormat`/`Intl.DateTimeFormat`. Display merchant-facing dates in the Jalali calendar and `Asia/Tehran`; API instants remain ISO-8601 UTC. Specifications must still choose Persian vs Latin digits and Rial/Toman terminology before implementation.
|
||||
- Do not concatenate translated fragments. Write complete Persian strings with correct نیمفاصله.
|
||||
- Authentication errors must not reveal whether a username exists.
|
||||
|
||||
@@ -142,6 +142,7 @@ Navigation labels should describe merchant tasks, not internal database concepts
|
||||
|
||||
| Version | Date | Decision |
|
||||
|---|---|---|
|
||||
| 0.1.1 | 2026-08-20 | Fixed merchant-facing time presentation to the Jalali calendar in `Asia/Tehran`, with explicit UTC API instants. |
|
||||
| 0.1.0 | 2026-08-20 | Established ZarinPal-inspired RTL foundation from supplied public/panel screenshots; fixed SvelteKit/Svelte/TypeScript/Tailwind stack; defined responsive shell, core components, accessibility, chart, and motion rules. |
|
||||
|
||||
Any material token/component/interaction change increments this version and adds a row describing why it changed. A surprising or difficult-to-reverse change also receives an ADR.
|
||||
@@ -150,8 +151,6 @@ Any material token/component/interaction change increments this version and adds
|
||||
|
||||
1. Licensed Yekan-family assets vs open `Vazirmatn` fallback.
|
||||
2. Persian or Latin digits for dashboard values.
|
||||
3. Jalali display with Gregorian API values, and the authoritative reporting timezone.
|
||||
4. Rial-only vs Toman display and conversion wording.
|
||||
5. Exact information architecture and MVP metric set after the analytics spec.
|
||||
6. Whether a dark theme is required; it is not assumed merely because the public site uses dark feature sections.
|
||||
|
||||
3. Rial-only vs Toman display and conversion wording.
|
||||
4. Exact information architecture and MVP metric set after the analytics spec.
|
||||
5. Whether a dark theme is required; it is not assumed merely because the public site uses dark feature sections.
|
||||
|
||||
@@ -24,6 +24,7 @@ Give a non-technical merchant a fast, trustworthy Persian RTL view of payment pe
|
||||
6. Filters and pagination are reflected in the URL where sharing/reload is useful.
|
||||
7. Every screen implements loading, empty, partial-data, stale, unauthorized, forbidden, and recoverable-error behavior as applicable.
|
||||
8. Responsive behavior and component contracts follow `DESIGN.md`.
|
||||
9. Merchant-facing dates use the Jalali calendar in `Asia/Tehran`; API instants remain explicit ISO-8601 UTC and filtering sends unambiguous boundaries.
|
||||
|
||||
## Frontend architecture baseline
|
||||
|
||||
@@ -51,4 +52,3 @@ Give a non-technical merchant a fast, trustworthy Persian RTL view of payment pe
|
||||
- OpenAPI/interface contract and error format
|
||||
- Decisions listed in `DESIGN.md`
|
||||
- Static adapter fallback/routing behavior under the final Nginx configuration
|
||||
|
||||
|
||||
Reference in New Issue
Block a user