1
0
mirror of https://github.com/Unleash/unleash.git synced 2025-08-04 13:48:56 +02:00
unleash.unleash/frontend/src/utils
Thomas Heartman 02d4edbf40
feat: Display example date for date formatting reasons (#10444)
Adds an example date as a detail of the locale picker, so that the user
can see what effect their chosen locale would have on date formatting:

<img width="436" height="157" alt="image"
src="https://github.com/user-attachments/assets/d5757380-3cda-4857-99d7-bac8866d31f5"
/>

The example wraps on smaller screens: 

<img width="291" height="207" alt="image"
src="https://github.com/user-attachments/assets/e3ef1678-6846-4027-b563-253195e2de99"
/>


The example date is the **date and time of the very first commit in the
Unleash repo**. By some stroke of luck, it happens to have everything
we're looking for:
- A date that is more than the 12th (to clearly differentiate between
days and months)
- A month that is less than 10 (to show whether leading zeroes are shown
or not)
- An hour that is more than 11 to show whether it's a 24-hour clock or
an AM/PM system

The date string is without a time zone offset because that means it'll
always be interpreted as local time for the user. MDN's [docs on Date
and what happens when you call it with a time
string](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#date_time_string_format)
state that:

> When the time zone offset is absent, date-only forms are interpreted
as a UTC time and **date-time forms are interpreted as a local time**.

I've checked this by changing my locale. With the timezone offset, the
time changes based on my timezone, but without it, it always shows as
the expected value.
2025-07-31 11:07:32 +02:00
..
api-payload-constraint-replacer.test.ts chore(1-3842): don't reorder constraint properties / make id's non-optional (#10160) 2025-06-19 10:09:38 +02:00
api-payload-constraint-replacer.ts chore(1-3842): don't reorder constraint properties / make id's non-optional (#10160) 2025-06-19 10:09:38 +02:00
apiUtils.ts
arraysHaveSameItems.test.ts
arraysHaveSameItems.ts
calculatePercentage.ts
capitalizeFirst.ts
cleanConstraint.test.ts
cleanConstraint.ts Remove uses of one of / use operator checks instead (#10328) 2025-07-08 11:10:45 +02:00
createEmptyConstraint.ts chore(1-3842): don't reorder constraint properties / make id's non-optional (#10160) 2025-06-19 10:09:38 +02:00
createFeatureStrategy.test.ts
createFeatureStrategy.ts
createLocalStorage.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
cyclicIterator.test.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
cyclicIterator.ts
deepOmit.test.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
deepOmit.ts
env.test.ts
env.ts
format-tag.ts Feat/tag type frontend display (#9630) 2025-03-31 11:55:49 +02:00
formatAccessText.test.ts
formatAccessText.ts
formatConstraintValue.ts Constraint values list (#9592) 2025-03-24 14:26:58 +01:00
formatDate.ts feat: Display example date for date formatting reasons (#10444) 2025-07-31 11:07:32 +02:00
formatOperatorDescription.ts delete legacy constraint accordion (#10110) 2025-06-11 12:22:55 +02:00
formatPath.test.ts
formatPath.ts
formatUnknownError.test.ts
formatUnknownError.ts
getFeatureMetrics.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
getFeatureTypeIcons.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
getTechnicalDebtColor.ts feat: rename health to technical debt (#10063) 2025-06-04 11:01:17 +02:00
instanceTrial.test.ts
instanceTrial.ts
nonEmptyArray.ts
objectId.test.ts
objectId.ts
operatorsForContext.ts Remove uses of one of / use operator checks instead (#10328) 2025-07-08 11:10:45 +02:00
paginate.test.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
paginate.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
parseParameter.test.ts
parseParameter.ts
permissions.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
projectFilterGenerator.ts
removeEmptyStringFields.test.ts
removeEmptyStringFields.ts
reorderObject.test.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
reorderObject.ts
resizeScreen.ts
routePathHelpers.ts
search.ts
serializeQueryParams.ts
sortStrategyParameters.test.ts
sortStrategyParameters.ts
sortTypes.test.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
sortTypes.ts
storage.test.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
storage.ts feat: redirect logic refactor (#9734) 2025-04-17 12:07:08 +02:00
strategyNames.tsx chore!: removing userId strategy for new installations of Unleash (#9800) 2025-06-04 09:30:13 +02:00
testIds.ts
testRenderer.tsx feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
testServer.ts
traffic-calculations.test.ts feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
traffic-calculations.ts fix: Data usage graphs don't work in UTC-n time zones (#9530) 2025-03-13 15:44:10 +01:00
unique-change-request-id.ts
unique.ts
unknownify.ts
validateParameterValue.test.ts
validateParameterValue.ts
variants.ts
withTableState.test.tsx feat: Unleash v7 ESM migration (#9877) 2025-05-14 09:47:12 +02:00
withTableState.ts