ぼざクリタグ広場 https://hub.nizika.monster
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

69 lines
1.7 KiB

  1. import DateTimeField from '@/components/common/DateTimeField'
  2. import Label from '@/components/common/Label'
  3. import { Button } from '@/components/ui/button'
  4. import type { FC } from 'react'
  5. type Props = {
  6. originalCreatedFrom: string | null
  7. setOriginalCreatedFrom: (x: string | null) => void
  8. originalCreatedBefore: string | null
  9. setOriginalCreatedBefore: (x: string | null) => void }
  10. export default (({ originalCreatedFrom,
  11. setOriginalCreatedFrom,
  12. originalCreatedBefore,
  13. setOriginalCreatedBefore }: Props) => (
  14. <div>
  15. <Label>オリジナルの作成日時</Label>
  16. <div className="my-1 flex">
  17. <div className="w-80">
  18. <DateTimeField
  19. className="mr-2"
  20. value={originalCreatedFrom ?? undefined}
  21. onChange={setOriginalCreatedFrom}
  22. onBlur={ev => {
  23. const v = ev.target.value
  24. if (!(v))
  25. return
  26. const d = new Date (v)
  27. if (d.getMinutes () === 0 && d.getHours () === 0)
  28. d.setDate (d.getDate () + 1)
  29. else
  30. d.setMinutes (d.getMinutes () + 1)
  31. setOriginalCreatedBefore (d.toISOString ())
  32. }}/>
  33. 以降
  34. </div>
  35. <div>
  36. <Button
  37. className="bg-gray-600 text-white rounded"
  38. onClick={() => {
  39. setOriginalCreatedFrom (null)
  40. }}>
  41. リセット
  42. </Button>
  43. </div>
  44. </div>
  45. <div className="my-1 flex">
  46. <div className="w-80">
  47. <DateTimeField
  48. className="mr-2"
  49. value={originalCreatedBefore ?? undefined}
  50. onChange={setOriginalCreatedBefore}/>
  51. より前
  52. </div>
  53. <div>
  54. <Button
  55. className="bg-gray-600 text-white rounded"
  56. onClick={() => {
  57. setOriginalCreatedBefore (null)
  58. }}>
  59. リセット
  60. </Button>
  61. </div>
  62. </div>
  63. </div>)) satisfies FC<Props>