Skip to content

Commit

Permalink
feat(datepickers): introduce Datepicker component (#373)
Browse files Browse the repository at this point in the history
  • Loading branch information
Austin Green authored Jul 3, 2019
1 parent 4a3b6a6 commit 31dc792
Show file tree
Hide file tree
Showing 33 changed files with 2,493 additions and 13 deletions.
5 changes: 5 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ to install.
| [`@zendeskgarden/react-breadcrumbs`](packages/breadcrumbs) | [![npm version][breadcrumbs npm version]][breadcrumbs npm link] | [![Dependency Status][breadcrumbs dependency status]][breadcrumbs dependency link] |
| [`@zendeskgarden/react-buttons`](packages/buttons) | [![npm version][buttons npm version]][buttons npm link] | [![Dependency Status][buttons dependency status]][buttons dependency link] |
| [`@zendeskgarden/react-chrome`](packages/chrome) | [![npm version][chrome npm version]][chrome npm link] | [![Dependency Status][chrome dependency status]][chrome dependency link] |
| [`@zendeskgarden/react-datepickers`](packages/datepickers) | [![npm version][datepickers npm version]][datepickers npm link] | [![Dependency Status][datepickers dependency status]][datepickers dependency link] |
| [`@zendeskgarden/react-dropdowns`](packages/dropdowns) | [![npm version][dropdowns npm version]][dropdowns npm link] | [![Dependency Status][dropdowns dependency status]][dropdowns dependency link] |
| [`@zendeskgarden/react-forms`](packages/forms) | [![npm version][forms npm version]][forms npm link] | [![Dependency Status][forms dependency status]][forms dependency link] |
| [`@zendeskgarden/react-grid`](packages/grid) | [![npm version][grid npm version]][grid npm link] | [![Dependency Status][grid dependency status]][grid dependency link] |
Expand Down Expand Up @@ -59,6 +60,10 @@ to install.
[chrome npm link]: https://www.npmjs.com/package/@zendeskgarden/react-chrome
[chrome dependency status]: https://img.shields.io/david/zendeskgarden/react-components.svg?path=packages/chrome&style=flat-square
[chrome dependency link]: https://david-dm.org/zendeskgarden/react-components?path=packages/chrome
[datepickers npm version]: https://img.shields.io/npm/v/@zendeskgarden/react-datepickers.svg?style=flat-square
[datepickers npm link]: https://www.npmjs.com/package/@zendeskgarden/react-datepickers
[datepickers dependency status]: https://img.shields.io/david/zendeskgarden/react-components.svg?path=packages/datepickers&style=flat-square
[datepickers dependency link]: https://david-dm.org/zendeskgarden/react-components?path=packages/datepickers
[dropdowns npm version]: https://img.shields.io/npm/v/@zendeskgarden/react-dropdowns.svg?style=flat-square
[dropdowns npm link]: https://www.npmjs.com/package/@zendeskgarden/react-dropdowns
[dropdowns dependency status]: https://img.shields.io/david/zendeskgarden/react-components.svg?path=packages/dropdowns&style=flat-square
Expand Down
7 changes: 6 additions & 1 deletion babel.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,10 @@ module.exports = {
'@babel/plugin-proposal-class-properties',
'@babel/proposal-object-rest-spread',
'babel-plugin-styled-components'
]
],
env: {
production: {
plugins: [['react-remove-properties', { properties: [/data-test/u] }]]
}
}
};
11 changes: 7 additions & 4 deletions demo/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -105,17 +105,20 @@ <h1 class="c-main__title">React Components</h1>
<div class="u-mb-sm">
<a class="u-fg-inherit" href="chrome">Chrome</a>
</div>
<div class="u-mb-sm">
<a class="u-fg-inherit" href="datepickers">Datepickers</a>
</div>
<div class="u-mb-sm">
<a class="u-fg-inherit" href="dropdowns">Dropdowns</a>
</div>
<div class="u-mb-sm">
<a class="u-fg-inherit" href="forms">Forms</a>
</div>
</div>
<div class="col-xl-4 col-sm-6">
<div class="u-mb-sm">
<a class="u-fg-inherit" href="grid">Grid</a>
</div>
</div>
<div class="col-xl-4 col-sm-6">
<div class="u-mb-sm">
<a class="u-fg-inherit" href="loaders">Loaders</a>
</div>
Expand All @@ -134,11 +137,11 @@ <h1 class="c-main__title">React Components</h1>
<div class="u-mb-sm">
<a class="u-fg-inherit" href="selection">Selection</a>
</div>
</div>
<div class="col-xl-4 col-sm-6">
<div class="u-mb-sm">
<a class="u-fg-inherit" href="tables">Tables</a>
</div>
</div>
<div class="col-xl-4 col-sm-6">
<div class="u-mb-sm">
<a class="u-fg-inherit" href="tabs">Tabs</a>
</div>
Expand Down
2 changes: 2 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
"babel-eslint": "10.0.2",
"babel-jest": "24.8.0",
"babel-loader": "8.0.6",
"babel-plugin-react-remove-properties": "0.3.0",
"babel-plugin-styled-components": "1.10.5",
"chalk": "2.4.2",
"commander": "2.20.0",
Expand Down Expand Up @@ -96,6 +97,7 @@
"markdown-loader": "5.0.0",
"markdownlint-cli": "0.17.0",
"mini-css-extract-plugin": "0.7.0",
"mockdate": "2.0.3",
"node-fetch": "2.6.0",
"optimize-css-assets-webpack-plugin": "5.0.3",
"prettier": "1.18.2",
Expand Down
44 changes: 44 additions & 0 deletions packages/datepickers/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# @zendeskgarden/react-datepickers [![npm version](https://img.shields.io/npm/v/@zendeskgarden/react-datepickers.svg?style=flat-square)](https://www.npmjs.com/package/@zendeskgarden/react-datepickers)

This package includes components relating to datepickers in the
[Garden Design System](https://zendeskgarden.github.io/).

## Installation

```sh
npm install @zendeskgarden/react-datepickers

# Peer Dependencies - Also Required
npm install react react-dom prop-types styled-components @zendeskgarden/react-theming
```

## Usage

```jsx static
/**
* Include datepickers styling at the root of your application
*/
import '@zendeskgarden/react-datepickers/dist/styles.css';

import { ThemeProvider } from '@zendeskgarden/react-theming';
import { Field, Label, Input } from '@zendeskgarden/react-forms';
import { Datepicker } from '@zendeskgarden/react-datepickers';

/**
* Place a `ThemeProvider` at the root of your React application
*/
<ThemeProvider>
<Field>
<Label>Example datepicker</Label>
<Datepicker value={new Date()} onChange={selectedDate => console.log(selectedDate)}>
<Input />
</Datepicker>
</Field>
</ThemeProvider>;
```

## date-fns dependency

We currently use the v2, `date-fns@next`, distribution of [date-fns](https://date-fns.org/).
This allows us to provide a wider range of locales and include non-strict date parsing.
Ensure you are depending on locales from this version of `date-fns`.
53 changes: 53 additions & 0 deletions packages/datepickers/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
{
"name": "@zendeskgarden/react-datepickers",
"description": "Components relating to datepickers in the Garden Design System",
"license": "Apache-2.0",
"author": "Zendesk Garden <[email protected]>",
"homepage": "https://garden.zendesk.com/",
"repository": "https://github.com/zendeskgarden/react-components",
"bugs": {
"url": "https://github.com/zendeskgarden/react-components/issues"
},
"version": "0.0.0",
"main": "./dist/index.js",
"files": [
"dist"
],
"scripts": {
"build": "../../utils/scripts/build.sh",
"build:demo": "../../utils/scripts/build-demo.sh",
"start": "../../utils/scripts/start.sh"
},
"types": "dist/typings/index.d.ts",
"dependencies": {
"@zendeskgarden/container-utilities": "^0.1.0",
"classnames": "^2.2.5",
"date-fns": "^2.0.0-beta.2",
"polished": "^3.4.1",
"react-popper": "^1.3.3"
},
"peerDependencies": {
"@zendeskgarden/react-theming": "^6.0.0",
"prop-types": "^15.6.1",
"react": "^16.8.0",
"react-dom": "^16.8.0",
"styled-components": "^4.2.0"
},
"devDependencies": {
"@zendeskgarden/css-arrows": "3.1.1",
"@zendeskgarden/css-menus": "9.0.11",
"@zendeskgarden/react-theming": "^6.0.1",
"@zendeskgarden/svg-icons": "6.3.0"
},
"keywords": [
"components",
"garden",
"react",
"zendesk"
],
"publishConfig": {
"access": "public"
},
"zendeskgarden:library": "GardenDatepickers",
"zendeskgarden:src": "src/index.ts"
}
Loading

0 comments on commit 31dc792

Please sign in to comment.