aboutsummaryrefslogtreecommitdiff
path: root/src/lib.ts
AgeCommit message (Collapse)Author
2023-01-25Add intro modalTerry Truong
2023-01-24For search, jump to 'appropriate' scaleTerry Truong
2023-01-22Add deployment docs and scriptTerry Truong
Add DEPLOY.md and prebuild.sh Update READMEs Change project name
2023-01-21Do more minor refactoringTerry Truong
Document some variables coupled between client and server. Add more term consistency ('unit', 'event density'). Make console messages more consistent.
2023-01-21Move general utility funcs into util.tsTerry Truong
2023-01-21Adjust frontend coding styleTerry Truong
2023-01-16Add makeThrottled*() function generatorsTerry Truong
2023-01-15Avoid tick label overlapTerry Truong
Use rotation for horizontal timelines with long tick labels. For other labels, look for overlap, and hide problematic ones. Use darker text to indicate minor ticks instead of minor offset.
2023-01-15Fix searches failing in certain casesTerry Truong
Fix server handling of 'incl' query param Force update of idToEvent for certain searches Adjust search-highlight-removal code to avoid pending-search case Fix event-transition-skipping code in updateLayout() to handle quick repeated calls
2023-01-15Add visual indication of pan/zoom failureTerry Truong
Add tick display data to Tick objects Add 'movement fail' divs Add animateWithClass() utility function Add animate-show-then-fade class
2023-01-14Allow showing events without imagesTerry Truong
Add setting for showing such events Fix searches not always avoiding filtered categories
2023-01-14Localise code for date displayTerry Truong
2023-01-14Extend info modal date displayTerry Truong
Show combined descriptions for certain (imprecise) starts and ends. Conditionally display start and end separately.
2023-01-14Improve date display in info modalTerry Truong
Make desc field of EventInfo optional Don't require desc in type=info result Fix image not showing in info modal
2023-01-06Add settings modalTerry Truong
Add saving, loading, default vals, and device-detection, to store.ts. Add setting for hiding minor tick labels.
2023-01-06Jump to and highlight search resultsTerry Truong
Use a 'searchTarget' prop of Timeline to trigger jumping to a search result. Make TimeLine prioritise search result in layout. When querying for events in App, check for a search target, and use incl= to retrieve it. On server, for the incl= query param, don't include the event if outside specified range.
2023-01-05Add partially-complete search modalTerry Truong
For now, use placeholder code for jumping to a search result. Add db index for case-insensitive event title searching. Make type=info requests accept title instead of ID (for looking up a searched-for title). Make EventInfo contain an Event field (for showing info in search suggestions). Add titleToEvent map in App, for use by SearchModal to look up searched-for titles. Add keyboard shortcuts to open/close search and info modals.
2023-01-04Add event info modalTerry Truong
Add InfoModal.vue, SCollapsible.vue, and icons. Update Timeline.vue, App.vue, lib.ts, and store.ts to display modal. For testing, send/use dummy EventInfo from server (still waiting on image downloads).
2023-01-04Remove server-side conversion of YearDates >4713 BC to CalDatesTerry Truong
The conversion was originally intended to simply the code. But, as events may span years before and after 4713 BC, the conversion introduces the possibility of having both YearDates and CalDates in the same event, which is unhelpful.
2023-01-03Query server when zoomed in enough even if within an already queried rangeTerry Truong
For server query parameter range=date1.date2, exclude date2 Fix unnecessary calendar-to-year date conversion when building sql query For frontend DateRangeTree class, rename has() to contains()
2023-01-03Merge branch 'frontend-update' into backend-updateTerry Truong
2023-01-02Make baseline time-spans non-overlappingTerry Truong
Remove time-span labels Fix firstDate/lastDate being passed to TimelineState instead of startDate/endDate
2023-01-02Adjust wikidata event specifiersTerry Truong
Do minor refactors: - Swap fmt=1 and fmt=2 in 'events' table - Make documentation consistently use BC and AD - import argparse at start of scripts
2022-12-30Add timeline position labelTerry Truong
2022-12-29Make server send error for breaking unit-count limitTerry Truong
2022-12-29Include events in units partially within displayTerry Truong
2022-12-29Show event-count data on timelineTerry Truong
Backend: Send event-count data to client in EventResponse instance Fix certain usages of gregorian calendar instead of julian Move HistDate, SCALES, etc, into cal.py Frontend: Make App update a unitCountMaps object using event-count data from server Make TimeLine show visual indication of unit counts Add showEventCounts option to store Update unit tests
2022-12-27Avoid dashed event-line at scales at/above event-start precisionTerry Truong
2022-12-26Make minor ticks more evenly spreadTerry Truong
Fix getNumDisplayUnits() not account for lack of 0 CE Add getNumSubUnits() in lib.ts
2022-12-25Add minor ticksTerry Truong
Add lower-bounds parameter to getScaleRatio()
2022-12-18Add unit testingTerry Truong
Install vitest, happy-dom, and @testing-library/vue Add lib.ts and rbtree.ts tests in tests/ Modularise some date-range-managing code from App.vue into lib.ts
2022-10-20Add gcal to client-side HistDatesTerry Truong
Add YearDate and CalDate Restrict non-calendar HistDates to years before 4713 BC
2022-10-20Add basic abbreviation for displayed datesTerry Truong
Remove scroll direction reversal in horizontal mode Fix some linting errors
2022-10-18Serialise event-req handlingTerry Truong
Also skip unnecessary render on startup
2022-10-18Keep track of date ranges where server has no more resultsTerry Truong
- In TimeLine.vue, separate idToEvent and idToPos, to avoid sending event-req while a previous one is still waiting on a server response - In histDate, add cmp() method
2022-10-18Use RBTree to store events, and lookup by date rangeTerry Truong
Currently produces TypeErrors from rbtree.ts's single_rotate() saying 'save is null'. This also happens when using minimally-adapted rbtree.js. Not sure how to resolve this.
2022-10-17Display event data from serverTerry Truong
Add queryServer() Add image display Add conversions from JSON responses to HistDate and HistEvent
2022-10-16Add basic display of placeholder eventsTerry Truong
Make App hold an event map, passing it to TimeLine children, which use it to display events. A TimeLine emits an 'events-req' if more events in their range could be displayed, which may cause App to add placeholder events to the map.
2022-10-15Pass TimeLine offsets to BaseLineTerry Truong
Add TimelineState
2022-10-15Make new timelines copy existing onesTerry Truong
2022-10-15Make stepDate() faster for high step countsTerry Truong
2022-10-15Make BaseLine spans use TimeLine start/end offsetsTerry Truong
Change TimelineRange to hold years not HistDates
2022-10-15Fix more bugs due to not excluding 0 CETerry Truong
2022-10-15On zooming out, align dates with start of units (eg: 1970-1-1 not 1970-2-4)Terry Truong
Make getMovedBounds() non-globals-dependent
2022-10-14Account for there being no year 0 CETerry Truong
2022-10-14Avoid displaying pre-JDN dates with sub-year scaleTerry Truong
2022-10-14Allow non-unit-aligned timelinesTerry Truong
- Remove paddedMinDate/etc - Add getMovedBounds(), Ticks, JDN_EPOCH - In lib.ts, add getScaleRatio(), and fix off-by-year bug in getMonthDiff()
2022-10-12Convert to represent dates instead of numbersTerry Truong
- Add HistDate class - Adapt TimeLine and BaseLine to work with HistDates - For own-size-watching components, add onMounted() hook to run before ResizeObserver is set up
2022-10-11Add global store, do general refactorTerry Truong
Resolve typescript issues Make terminology more consistent
2022-10-10Prevent span-regions in baseline becoming too small to seeTerry Truong