
Security News
Crates.io Implements Trusted Publishing Support
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
react-timezone-select
Advanced tools
Another react timezone select component, I know.. However this one has a few key benefits!
While looking around for a good option, I had trouble finding a timezone select components which:
1) Adjusted the choices automatically with Daylight Savings Time (DST)
2) Didn't have a huge list of choices to scroll through when technically only 24 (ish) are necessary
Update: v0.7+ now built with
spacetime
instead ofmoment.js
, reducing bundle size by ~66%!
This demo is also available in the ./examples
directory. Simply run npm start
after installing everything and webpack dev server should begin, where you will be able to find the demo locally at localhost:3001
.
There is also a Codesandbox usage example for adjusting the timezone of a selected spacetime
object, like how one might use this in a real app.
npm install --save-prod react-timezone-select
import React, { useState } from 'react'
import ReactDOM from 'react-dom'
import TimezoneSelect from 'react-timezone-select'
const App = () => {
const [selectedTimezone, setSelectedTimezone] = useState({})
return (
<div className='App'>
<h2>react-timezone-select</h2>
<blockquote>Please make a selection</blockquote>
<div className='select-wrapper'>
<TimezoneSelect
value={selectedTimezone}
onChange={setSelectedTimezone}
/>
</div>
<h3>Output:</h3>
<div className='code'>
<span style={{ fontWeight: '500' }}>selectedTimezone: {'{'}</span>{' '}
<br />
<span style={{ marginLeft: '20px', fontWeight: '500' }}>
value: '{selectedTimezone.value}'
</span>
<br />
<span style={{ marginLeft: '20px', fontWeight: '500' }}>
label: '{selectedTimezone.label}'
</span>
<br />
<span style={{ marginLeft: '20px', fontWeight: '500' }}>
altName: '{selectedTimezone.altName}'
</span>
<br />
<span style={{ marginLeft: '20px', fontWeight: '500' }}>
abbrev: '{selectedTimezone.abbrev}'
</span>
<br />
{'}'}
</div>
</div>
)
}
const rootElement = document.getElementById('root')
ReactDOM.render(<App />, rootElement)
value
- { value: string, label: string, altName: string, abbrev: string }
onBlur
- () => void
onChange
- (timezone) => void
timezone
is, for example: {
value: 'America/Juneau'
label: '(GMT-8:00) Alaska (AHDT)'
altName: 'Alaskan Daylight Time'
abbrev: 'AHDT'
}
labelStyle
- 'original' | 'altName' | 'abbrev'
react-select
propsNew in 0.9.0 - We've added multiple label styles, based upon a generous pull request and the
spacetime-informal
library.
original
altName
abbrev
The demo page will show you all three types of values available for each selected timezone.
Pull requests are always welcome!
FAQs
Usable, dynamic React Timezone Select
The npm package react-timezone-select receives a total of 76,004 weekly downloads. As such, react-timezone-select popularity was classified as popular.
We found that react-timezone-select demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Crates.io adds Trusted Publishing support, enabling secure GitHub Actions-based crate releases without long-lived API tokens.
Research
/Security News
Undocumented protestware found in 28 npm packages disrupts UI for Russian-language users visiting Russian and Belarusian domains.
Research
/Security News
North Korean threat actors deploy 67 malicious npm packages using the newly discovered XORIndex malware loader.