calendar
All repositories: gitoria
1.9 KB
# Month view> This is the CALENDAR'S COPY (calendar.worldapi.org#2): it also shows the user's events on the days and holds the> editor (see the app's README). The description below is the plain component; `dates.hl` is added.A month with prev / next buttons on top, the month's name and the year between them, and the days below.Weeks start on Monday; the days of the neighbouring months are dimmed; today is marked. Month and weekdaynames follow the browser's language, today follows the browser's time zone.Live demo: https://components.hybriel.worldapi.org/month-view## Use it in an appCopy the folder `components/month-view/` (files `month-view.hl`, `clock.hl`, `month-view.js`) and the month-viewrules of `styles.hl` into the app, serve `month-view.js` as a file route, then compose it into a page:```import MonthView from './month-view.hl'View {MonthView { }script { src = "/month-view.js" }}```- One month view per page: a composed component's members are the page's state (COMPONENTS.md §12).- Colours are the semantic tokens of `shared/tokens.hl` only; the accent is the app's `colorAccent`.## What it showsThe server's month at first (UTC date), then the browser's own today and language once the page runs; pagingstarts from there. Setting the start month from the page (`MonthView { year = 2026 month = 1 }`) is not tested.## Data outNone yet: the page cannot read the month shown, and an `emit` from the component did not reach a handler in thepage (see STATUS.md). The first app that needs the month (calendar events) adds it.## Markup and states`<month-view>` holds a `<header>` (buttons `#month-prev`, `#month-next`, title `#month-title`) and a `<table>` of sixweeks. A day is an `<li>` with `<time datetime="YYYY-MM-DD">`; class `outside` = a neighbouring month's day,`today` = today. Narrow screens: the table fills the width with smaller cells; wide: taller cells.Do not use it for: choosing a date in a form (see the date picker, when it exists).
Branches
- mainmain branch
Latest commits
- 2881119fcalendar mission 001 (4/4): code order — README layout + same-output test, STATUS, LOG, report; tests/letcount.py (sub-folders), tests/realdata-baseline.mjs, tests/realdata-compare.pymre
- 3b2a4cd0calendar mission 001 (3/4): code order — let only where reassigned (147 dropped incl. components/month-view; 110 left: 67 reassigned, 43 loop-bound); gates 78/0 (3 of 4 runs; 1 known 'next month' flake) + 18/0, live-data run = step 2mre
- f5ce6b1dcalendar mission 001 (2/4): code order — topics, map, thin faces: lib/util.hl, lib/events(-helpers).hl (+calendarView/settingsView/soonOf), lib/settings.hl, lib/users.hl (+userOfLoginCode, tagOf), lib/api(-helpers).hl; project.hl = map; login route takes &req/&sessions (failed-login reason now kept); gates 78/0 + 18/0mre
- c6fbd011calendar mission 001 (1/4): code order — files moved: lib/events.hl, lib/users.hl, components/styles.hl (imports only); gates 78/0 + 18/0, live-data run identicalmre
- d6c59290calendar: Hybriel master 06617221 (plugin allocators 3a781359 + 413f60e4, mpackdb 2cb7ae5e, http1 773de63e); gates 78/0 + 18/0mre
- 7bd0337ccalendar: Hybriel master 190aa11d (fc838894 GC correctness, #126 closure scopes, #127); gates 78/0 + 18/0mre
- ff41310ccalendar: Hybriel master 8efba065 (#126 memory, #48 lambda copy; audit: no & needed)mre
- 14ba08c7antcolony#40: mission references point to the moved missionsmre
- 99c73346antcolony#40: history (LOG.md), worker briefs (missions/) and reports moved here from antcolony, numbered per project; old numbers in antcolony docs/mission-map.mdmre
- 76edaa62calendar: Hybriel master ff51cf46 (re-vendor round, static workaround removed)mre
- 90a3fc2cdeploy.sh: back up live storage/.sessions/.env before every deploy (newest 5 kept)mre
- 6722b72ddeploy.sh: never send .git or .gitignore to Byrodinmre
- be099807State of 2026-09-27, before the move to gitoriamre