ShareLinkForm.jsx 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import React from 'react';
  2. import { withTranslation } from 'react-i18next';
  3. import { withUnstatedContainers } from './UnstatedUtils';
  4. import AppContainer from '../services/AppContainer';
  5. import PageContainer from '../services/PageContainer';
  6. const ShareLinkForm = (props) => {
  7. return (
  8. <div className="share-link-form border p-3">
  9. <h4>Expiration Date</h4>
  10. <form>
  11. <fieldset className="form-group">
  12. <div className="row">
  13. <legend className="col-form-label col-3"></legend>
  14. <div>
  15. <div className="custom-control custom-radio mb-2">
  16. <input id="customRadio1" name="customRadio" type="radio" className="custom-control-input"></input>
  17. <label className="custom-control-label" htmlFor="customRadio1">Unlimited</label>
  18. </div>
  19. <div className="custom-control custom-radio mb-2">
  20. <input id="customRadio2" name="customRadio" type="radio" className="custom-control-input"></input>
  21. <label className="custom-control-label" htmlFor="customRadio2">
  22. <div className="row align-items-center m-0">
  23. <input className="form-control col-2" type="number" min="1" max="7" value="7"></input>
  24. <span className="col-auto">Days</span>
  25. </div>
  26. </label>
  27. </div>
  28. <div className="custom-control custom-radio mb-2">
  29. <input id="customRadio3" name="customRadio" type="radio" className="custom-control-input"></input>
  30. <label className="custom-control-label" htmlFor="customRadio3">
  31. Custom
  32. <div className="date-picker">Date Picker</div>
  33. </label>
  34. </div>
  35. </div>
  36. </div>
  37. </fieldset>
  38. <hr />
  39. <div className="form-group row">
  40. <label htmlFor="inputDesc" className="offset-3 col-form-label">Description</label>
  41. <div className="col-5">
  42. <input type="text" className="form-control" id="inputDesc" placeholder="Enter description"></input>
  43. </div>
  44. </div>
  45. <div className="form-inline">
  46. <button type="button" className="ml-auto btn btn-primary">Issue</button>
  47. </div>
  48. </form>
  49. </div>
  50. );
  51. };
  52. /**
  53. * Wrapper component for using unstated
  54. */
  55. const ShareLinkFormWrapper = withUnstatedContainers(ShareLinkForm, [AppContainer, PageContainer]);
  56. export default withTranslation()(ShareLinkFormWrapper);