Brand and design · Hi-fi screens · S28 Profile · Sign in with Apple upgrade

Data-binding map: S28 Profile · Sign in with Apple upgrade

Data-binding map of Profile · Sign in with Apple upgrade: every field to its source, and what each required state shows.

Generated by botgumi-design index from ../../screens.json. Edit that file, not this page.

Every field S28 shows and where it comes from.

Field Source (endpoint or local state) Format Fallback
SIWA card api GET /me auth_provider · me.auth_provider = anonymous — hidden for apple
ASAuthorizationAppleIDProvider → POST /v1/auth/apple device apple_sign_in · From the board's data-bind; no row in data-binding.md yet.
ASAuthorizationAppleIDProvider → POST /v1/auth/apple call POST /auth/apple
derived: first grapheme of me.display_name derived avatar_initial · From the board's data-bind; no row in data-binding.md yet.
me.display_name api GET /me display_name · From the board's data-bind; no row in data-binding.md yet.
me.entitlement.status / product_id / trial_ends_at api GET /me entitlement.status · From the board's data-bind; no row in data-binding.md yet.
me.entitlement.status / product_id / trial_ends_at api GET /me entitlement.product_id
me.entitlement.status / product_id / trial_ends_at api GET /me entitlement.trial_ends_at
me.level.title + level api GET /me level.title · From the board's data-bind; no row in data-binding.md yet.
me.level.title + level api GET /me level.level
me.settings.practice_languages api GET /me settings.practice_languages · From the board's data-bind; no row in data-binding.md yet.
me.settings.reminder_time api GET /me settings.reminder_time · From the board's data-bind; no row in data-binding.md yet.
me.stats.ability api GET /me stats.ability · From the board's data-bind; no row in data-binding.md yet.
me.stats.completed_sessions api GET /me stats.completed_sessions · From the board's data-bind; no row in data-binding.md yet.
me.streak.current api GET /me streak.current · From the board's data-bind; no row in data-binding.md yet.
weekly_quests.quests[0] (title: Accept-Language) api GET /weekly-quests quests[] · From the board's data-bind; no row in data-binding.md yet.
weekly_quests.quests[1] (title: Accept-Language) api GET /weekly-quests quests[] · From the board's data-bind; no row in data-binding.md yet.
weekly_quests.quests[2] (title: Accept-Language) api GET /weekly-quests quests[] · From the board's data-bind; no row in data-binding.md yet.
weekly_quests.week_start / week_end api GET /weekly-quests week_start · From the board's data-bind; no row in data-binding.md yet.
weekly_quests.week_start / week_end api GET /weekly-quests week_end

Derived values

Computed on device; each from the sources it names.

Value From How
avatar_initial api GET /me display_name The first grapheme of the display name.

Binds on the boards

The data-bind values across every state.

  • ASAuthorizationAppleIDProvider → POST /v1/auth/apple
  • derived: first grapheme of me.display_name
  • me.auth_provider = anonymous
  • me.display_name
  • me.entitlement.status / product_id / trial_ends_at
  • me.level.title + level
  • me.settings.practice_languages
  • me.settings.reminder_time
  • me.stats.ability
  • me.stats.completed_sessions
  • me.streak.current
  • weekly_quests.quests[0] (title: Accept-Language)
  • weekly_quests.quests[1] (title: Accept-Language)
  • weekly_quests.quests[2] (title: Accept-Language)
  • weekly_quests.week_start / week_end

States

  • Loading: From states.md (Profile): skeleton stats
  • Empty: From states.md (Profile): weekly quests none → section hidden
  • Error (retryable / not): From states.md (Profile): inline Retry · fatal: generic error
  • Offline: From states.md (Profile): cached /me