Skip to content

23 simonyi konf#52

Merged
berenteb merged 11 commits into
mainfrom
23-simonyi-konf
Mar 8, 2026
Merged

23 simonyi konf#52
berenteb merged 11 commits into
mainfrom
23-simonyi-konf

Conversation

@peterlipt

Copy link
Copy Markdown
Contributor

No description provided.

@github-actions

github-actions Bot commented Mar 3, 2026

Copy link
Copy Markdown

🚀 Expo preview is ready!

  • Project → konferenciapp
  • Platforms → android, ios
  • Scheme → konferenciapp
  • Runtime Version → exposdk:55.0.0
  • More info

Learn more about 𝝠 Expo Github Action

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the app for the next Simonyi Conference release by upgrading Expo/React Native dependencies, updating branding assets/colors, and adjusting conference UI/logic to handle new API behaviors (time-only timestamps and nullable presenters) plus “pre-conference” home content.

Changes:

  • Upgraded Expo/React Native (and related packages) and refreshed yarn.lock.
  • Added time parsing helpers and made presenter nullable across types, services, and UI.
  • Added “pre-conference” home CTA text and gated schedule/status indicators behind a configurable conference date.

Reviewed changes

Copilot reviewed 15 out of 26 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
yarn.lock Locks updated dependency graph for Expo/RN upgrades.
package.json Bumps Expo/RN and several Expo modules to newer versions.
utils/presentation.utils.ts Adds parseTime and uses it for presentation time comparisons.
utils/date.utils.ts Adds isConferenceDay() based on EXPO_PUBLIC_CONFERENCE_DATE.
types/conference-api.type.ts Allows PresentationDto.presenter to be null.
services/conference.service.ts Uses parseTime for sorting; guards presenter image prefixing; improves timestamp formatting.
components/schedule/layouts/presentation-details-page.tsx Guards presenter rendering when presenter is null.
components/schedule/elements/presentation-item.tsx Guards presenter name/image; gates “past” styling behind conference day.
components/schedule/elements/presentation-status-indicator.tsx Disables current/upcoming indicators outside conference day.
app/(tabs)/home/index.tsx Shows schedule only on conference day; otherwise shows PR CTA content.
components/common/home-pr-text.tsx New component rendering pre-conference registration CTA.
services/i18n_data.ts Adds i18n strings for PR CTA content (EN/HU).
config/axios.config.ts Sets default API base URL and adds verbose request/response logging + PostHog override.
.env.example Documents EXPO_PUBLIC_CONFERENCE_DATE.
theme/extendedColors.ts Updates primary palette to new branding colors.
tailwind.config.js Updates Tailwind primary palette to match branding colors.
components/base/logo.tsx Switches logo rendering to expo-image and new SVG assets per theme.
assets/Full.svg Adds new light-theme logo SVG.
assets/FullSand.svg Adds new dark-theme logo SVG.
assets/notification-icon.png Adds notification icon asset.
Comments suppressed due to low confidence (4)

services/i18n_data.ts:21

  • The conference date is hard-coded into the localized PR text. This duplicates a time-sensitive value across locales and can easily drift from EXPO_PUBLIC_CONFERENCE_DATE (or require multiple edits when the date changes). Consider using an i18n interpolation placeholder (e.g., {{date}}) and formatting a single configured date in code.
        prText: 'The Simonyi Conference will be held on March 24, 2026! We look forward to seeing you there!',
        prRegistrationPre: 'Want to join us? Register now!',
        prRegistrationLink: 'https://konferencia.simonyi.bme.hu',
        prRegistrationBtn: 'Go to registration',

services/i18n_data.ts:87

  • Same issue in the HU locale block: the conference date is embedded directly in the translation string, duplicating a time-sensitive value across locales. Prefer an interpolated placeholder populated from a single configured date so both locales stay consistent.
        prText: 'A Simonyi Konferencia 2026. március 24-én kerül megrendezésre! Várunk sok szeretettel!',
        prRegistrationPre: 'Szeretnél részt venni az eseményen? Regisztrálj még ma!',
        prRegistrationLink: 'https://konferencia.simonyi.bme.hu',
        prRegistrationBtn: 'Tovább a regisztrációra',

app/(tabs)/home/index.tsx:25

  • useConference() runs (and will refetch every minute) even when showPresentations is false, so the app will still hit the conference API in the pre-conference PR-text state. Consider adding an enabled option to useConference (react-query) and passing enabled: showPresentations so the query is disabled when presentations are hidden.
  const conference = useConference();
  const news = useNews();
  const { t } = useTranslation();
  const isArchive = useFeatureFlag('archive_mode');
  const showPresentations = isConferenceDay();

components/common/home-pr-text.tsx:23

  • Linking.openURL(...) returns a Promise and can reject (invalid URL / no handler). Currently the rejection is ignored, which can lead to unhandled promise warnings and a broken CTA. Consider checking Linking.canOpenURL and/or await + catch to show a user-friendly error if opening the registration link fails.
        <StyledButton
          variant='primary'
          className='w-full'
          onPress={() => Linking.openURL(t('home.prRegistrationLink'))}
        >

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread utils/date.utils.ts Outdated
Comment thread config/axios.config.ts Outdated
Comment thread config/axios.config.ts Outdated
@berenteb berenteb merged commit 259f143 into main Mar 8, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants