Skip to content

[PER-10623] Add IANA timezone dropdown#1028

Draft
aasandei-vsp wants to merge 13 commits into
mainfrom
PER-10623-add-IANA-timezone-dropdown
Draft

[PER-10623] Add IANA timezone dropdown#1028
aasandei-vsp wants to merge 13 commits into
mainfrom
PER-10623-add-IANA-timezone-dropdown

Conversation

@aasandei-vsp
Copy link
Copy Markdown
Contributor

No description provided.

…splay dates

Add new getStelaFolderVOs method to retrieve updated folder information
from the v2 API endpoint. This method handles both single and multiple
folder requests with optional share token support.

Add updateStelaFolder method to update folder date ranges by combining
start and end dates into EDTF interval format before sending to the server.

These changes enable proper synchronization of folder date information
between the client and server when users edit date ranges in the UI.

ISSUE: PER-10475
Add displayTime and displayEndTime getters to parse EDTF interval strings
from the server. These getters split interval values like "1985-05-20/1990-06-15"
into separate start and end dates for display in the UI.

Update template to use the new getters instead of directly accessing displayDT
and displayEndDT properties. Add fallback logic to use legacy properties when
the displayTime interval is not available.

ISSUE: PER-10475
This new component will be presentational, it will get a date input
and it will also return a selected date. It includes a calendar.

Issue: PER-10416
The time picker is a presentational component, its input si a time
object and it returns a time object as well. It contains a time
selector. It works with meridian.

Issue: PER-10416
The edit date and time component is smart, because it manages its own
state, but also the states of the time and date pickers. But still
the state is isolated to this specific component, it gets as input
a date and time object and returns back a date and time object.
It handles the time picker, the date picker, the date qualifiers, start
and end time and also shows an edtf calculated value.

Issue: PER-10416
The service has the resposability to open the modal for the edit date time
component and provide the initial data.

Issue: PER-10416
Because we are using the timezone dropdown component in three places
now, extracting it into a presentational component for reusability
seems the right approach.

It will be a generic isolated component that will provide an input and
a dropdown for choosing the timezone.

Issue: PER-10416
This component will be the smaller version to set the date and time,
it will open the modal editor for more comporehensive choices.

Issue: PER-10416
Moved all logic related to date and time types and validations, including
EDTF mappings into a single point of truth, in the edtf service. This way
the components will only be presentational and only manipulate their own
internal state.

ISSUE: PER-10416
Migrated the date and time validators and sidebar formatting onto
date-fns (parse, isValid, format, setYear), and removed dead methods
(isValidDate, isValidTime, isLeapYear, getMaxDaysInMonth) along with
the DAYS_IN_MONTH constant.
Renamed to24HourTime to parseTimeAs24Hour and folded it into
buildTimeString to drop the duplicated 12->24-hour conversion.
Also buildDateString now zero-pads partial years.

Issue: PER-1041
Backspace in an empty segment (day, month, seconds, minutes) now deletes
the last character of the previous segment and focuses it.
Auto-focus to the next field still waits for 2 digits.

Issue: PER-10416
Extract timezone logic out of EdtfService into a dedicated
TimezoneService that derives the full IANA zone list from
Intl.supportedValuesOf('timeZone') and computes offsets and
abbreviations dynamically from a reference date, so DST
transitions are reflected accurately.

The timezone dropdown now selects an IANA zone (ianaZone)
rather than a static offset/name pair, and accepts a
referenceDate input. The edit-date-time modal and sidebar
date picker pass the currently selected moment as the
reference so offsets and abbreviations stay correct across
DST boundaries, and EdtfService re-derives the stored offset
from the selected zone when serializing.

Issue: PER-10623
@aasandei-vsp aasandei-vsp self-assigned this May 25, 2026
@aasandei-vsp aasandei-vsp changed the title [PER-10623] add IANA timezone dropdown [PER-10623] Add IANA timezone dropdown May 25, 2026
@aasandei-vsp aasandei-vsp marked this pull request as draft May 25, 2026 12:21
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.

1 participant