2026-10-18 21:46:55 +02:00
|
|
|
/// Halkyon's look, shared by its apps: the theme around cobalt and copper
|
|
|
|
|
/// (`appTheme`), the bundled Noto Sans (`appFontFamily`), Material 3's
|
|
|
|
|
/// window sizes (`WindowSize`), and the widgets every app's screens are
|
|
|
|
|
/// built of, with their texts in English and German
|
|
|
|
|
/// (`HalkyonUiLocalizations`, whose delegate an app adds to its own).
|
|
|
|
|
library;
|
|
|
|
|
|
|
|
|
|
export 'l10n/halkyon_ui_localizations.dart';
|
|
|
|
|
export 'src/layout/readable_width.dart';
|
|
|
|
|
export 'src/layout/window_size.dart';
|
|
|
|
|
export 'src/theme/app_fonts.dart';
|
|
|
|
|
export 'src/theme/app_theme.dart';
|
|
|
|
|
export 'src/theme/brand.dart';
|
|
|
|
|
export 'src/theme/palette_color.dart';
|
|
|
|
|
export 'src/theme/theme_extras.dart';
|
|
|
|
|
export 'src/widget/adaptive_sheet.dart';
|
|
|
|
|
export 'src/widget/app_loading_indicator.dart';
|
|
|
|
|
export 'src/widget/brand_wordmark.dart';
|
|
|
|
|
export 'src/widget/chevron_field.dart';
|
|
|
|
|
export 'src/widget/collapsing_row.dart';
|
|
|
|
|
export 'src/widget/confirm_dialog.dart';
|
|
|
|
|
export 'src/widget/count_badge.dart';
|
|
|
|
|
export 'src/widget/count_stepper.dart';
|
|
|
|
|
export 'src/widget/empty_list_message.dart';
|
feat(learn,app): explanations wait behind a question mark beside their title
What explains a setting or a section, rather than what is the person's
own, moves behind halkyon_ui's HelpButton, beside its title through the
new ExplainedTitle (the developer's review of 3 Nov 2026): in Learn's
settings (citations, the Pomodoro timer, grammar, the web search,
Jellyfin, the device's dictionaries, counting one's learning), the study
settings, export's progress, the Jellyfin tags and the study button's
back first; in halkyon_app, setting up a password, adding SimpleLogin,
own keys not allowed, the profile page's link back and the operator's
grant sheet.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
2026-11-03 22:24:39 +01:00
|
|
|
export 'src/widget/explained_title.dart';
|
2026-10-18 21:46:55 +02:00
|
|
|
export 'src/widget/field_label.dart';
|
|
|
|
|
export 'src/widget/floating_navigation_bar.dart';
|
feat(ui): tabs folding into the title, in Learn's and Train's Profile (ADR 0030, D60)
halkyon_ui's FoldingTabs: the tab row under the app bar's title at the
top, scrolling away with the content, the chosen tab's name then small
under the title, which, tapped, scrolls back up to the row, as Strava's.
Learn's Profile (Profile, Statistics) is built on it, and Train's
Profile in tabs: Progress (your body, the last 12 weeks, this year),
Days, and Plans where the device doesn't record.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
2026-10-31 19:12:11 +01:00
|
|
|
export 'src/widget/folding_tabs.dart';
|
2026-10-18 21:46:55 +02:00
|
|
|
export 'src/widget/found_by_id.dart';
|
2026-11-03 21:27:16 +01:00
|
|
|
export 'src/widget/help_button.dart';
|
2026-10-18 21:46:55 +02:00
|
|
|
export 'src/widget/keyboard_back_on_resume.dart';
|
|
|
|
|
export 'src/widget/launch_screen.dart';
|
|
|
|
|
export 'src/widget/lift_while_dragged.dart';
|
|
|
|
|
export 'src/widget/more_info_sheet.dart';
|
2026-10-30 23:52:39 +01:00
|
|
|
export 'src/widget/navigation_frame.dart';
|
2026-10-18 21:46:55 +02:00
|
|
|
export 'src/widget/palette_color_picker.dart';
|
|
|
|
|
export 'src/widget/reorder_grip.dart';
|
|
|
|
|
export 'src/widget/reorder_toggle.dart';
|
|
|
|
|
export 'src/widget/screen_tint.dart';
|
|
|
|
|
export 'src/widget/scroll_hiding_fab.dart';
|
|
|
|
|
export 'src/widget/section_card.dart';
|
feat(learn): Explore by what a licence allows, a skeleton while the library loads, and an assistant's agreement per provider (ADR 0005, rule 12; ADR 0021, D66)
- Explore filters by what a studyset's licence lets a learner do: adapt
it (no NoDerivatives) and use it commercially (no NonCommercial),
which the instance reads from the release's licence
(ExploreQuery.adaptable, commercial) and the app the same way
(LicenseUse). An instance from before ignores both.
- While the studysets are read, the Library shows shimmering skeletons
of their cards rather than a spinner: halkyon_ui's new Shimmer and
SkeletonBox, still where the system asks for no animations.
- The scope's "Include private studysets" is offered only while the
person has a private studyset.
- An agreement to what goes where is per provider (protocol and host):
agreeing to one assistant agrees to every assistant of that provider,
those granted later too, and the agreement sheet says so. No
migration: it is written on every grant of the provider, so taking
one back keeps it for the others, and read per provider from any of
them.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
2026-11-02 01:09:04 +01:00
|
|
|
export 'src/widget/skeleton.dart';
|
2026-10-18 21:46:55 +02:00
|
|
|
export 'src/widget/sliver_centered.dart';
|
|
|
|
|
export 'src/widget/tab_visibility.dart';
|
|
|
|
|
export 'src/widget/text_limits.dart';
|
|
|
|
|
export 'src/widget/tinted_frame.dart';
|
|
|
|
|
export 'src/widget/title_with_kicker.dart';
|
|
|
|
|
export 'src/widget/top_gradient.dart';
|
|
|
|
|
export 'src/widget/undo_snack_bar.dart';
|