52faf2658bf278bc2979f3fa342bb122.json 11 KB
{"ast":null,"code":"import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { getValue, updateValues } from '../utils/miscUtil';\nimport { getClosingViewDate, isSameYear, isSameMonth, isSameDecade } from '../utils/dateUtil';\n\nfunction getStartEndDistance(startDate, endDate, picker, generateConfig) {\n  var startNext = getClosingViewDate(startDate, picker, generateConfig, 1);\n\n  function getDistance(compareFunc) {\n    if (compareFunc(startDate, endDate)) {\n      return 'same';\n    }\n\n    if (compareFunc(startNext, endDate)) {\n      return 'closing';\n    }\n\n    return 'far';\n  }\n\n  switch (picker) {\n    case 'year':\n      return getDistance(function (start, end) {\n        return isSameDecade(generateConfig, start, end);\n      });\n\n    case 'quarter':\n    case 'month':\n      return getDistance(function (start, end) {\n        return isSameYear(generateConfig, start, end);\n      });\n\n    default:\n      return getDistance(function (start, end) {\n        return isSameMonth(generateConfig, start, end);\n      });\n  }\n}\n\nfunction getRangeViewDate(values, index, picker, generateConfig) {\n  var startDate = getValue(values, 0);\n  var endDate = getValue(values, 1);\n\n  if (index === 0) {\n    return startDate;\n  }\n\n  if (startDate && endDate) {\n    var distance = getStartEndDistance(startDate, endDate, picker, generateConfig);\n\n    switch (distance) {\n      case 'same':\n        return startDate;\n\n      case 'closing':\n        return startDate;\n\n      default:\n        return getClosingViewDate(endDate, picker, generateConfig, -1);\n    }\n  }\n\n  return startDate;\n}\n\nexport default function useRangeViewDates(_ref) {\n  var values = _ref.values,\n      picker = _ref.picker,\n      defaultDates = _ref.defaultDates,\n      generateConfig = _ref.generateConfig;\n\n  var _React$useState = React.useState(function () {\n    return [getValue(defaultDates, 0), getValue(defaultDates, 1)];\n  }),\n      _React$useState2 = _slicedToArray(_React$useState, 2),\n      defaultViewDates = _React$useState2[0],\n      setDefaultViewDates = _React$useState2[1];\n\n  var _React$useState3 = React.useState(null),\n      _React$useState4 = _slicedToArray(_React$useState3, 2),\n      viewDates = _React$useState4[0],\n      setInternalViewDates = _React$useState4[1];\n\n  var startDate = getValue(values, 0);\n  var endDate = getValue(values, 1);\n\n  function getViewDate(index) {\n    // If set default view date, use it\n    if (defaultViewDates[index]) {\n      return defaultViewDates[index];\n    }\n\n    return getValue(viewDates, index) || getRangeViewDate(values, index, picker, generateConfig) || startDate || endDate || generateConfig.getNow();\n  }\n\n  function setViewDate(viewDate, index) {\n    if (viewDate) {\n      var newViewDates = updateValues(viewDates, viewDate, index); // Set view date will clean up default one\n\n      setDefaultViewDates( // Should always be an array\n      updateValues(defaultViewDates, null, index) || [null, null]); // Reset another one when not have value\n\n      var anotherIndex = (index + 1) % 2;\n\n      if (!getValue(values, anotherIndex)) {\n        newViewDates = updateValues(newViewDates, viewDate, anotherIndex);\n      }\n\n      setInternalViewDates(newViewDates);\n    } else if (startDate || endDate) {\n      // Reset all when has values when `viewDate` is `null` which means from open trigger\n      setInternalViewDates(null);\n    }\n  }\n\n  return [getViewDate, setViewDate];\n}","map":{"version":3,"sources":["C:/Users/kkwan_000/Desktop/git/2017110269/minsung/node_modules/rc-picker/es/hooks/useRangeViewDates.js"],"names":["_slicedToArray","React","getValue","updateValues","getClosingViewDate","isSameYear","isSameMonth","isSameDecade","getStartEndDistance","startDate","endDate","picker","generateConfig","startNext","getDistance","compareFunc","start","end","getRangeViewDate","values","index","distance","useRangeViewDates","_ref","defaultDates","_React$useState","useState","_React$useState2","defaultViewDates","setDefaultViewDates","_React$useState3","_React$useState4","viewDates","setInternalViewDates","getViewDate","getNow","setViewDate","viewDate","newViewDates","anotherIndex"],"mappings":"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","sourcesContent":["import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { getValue, updateValues } from '../utils/miscUtil';\nimport { getClosingViewDate, isSameYear, isSameMonth, isSameDecade } from '../utils/dateUtil';\n\nfunction getStartEndDistance(startDate, endDate, picker, generateConfig) {\n  var startNext = getClosingViewDate(startDate, picker, generateConfig, 1);\n\n  function getDistance(compareFunc) {\n    if (compareFunc(startDate, endDate)) {\n      return 'same';\n    }\n\n    if (compareFunc(startNext, endDate)) {\n      return 'closing';\n    }\n\n    return 'far';\n  }\n\n  switch (picker) {\n    case 'year':\n      return getDistance(function (start, end) {\n        return isSameDecade(generateConfig, start, end);\n      });\n\n    case 'quarter':\n    case 'month':\n      return getDistance(function (start, end) {\n        return isSameYear(generateConfig, start, end);\n      });\n\n    default:\n      return getDistance(function (start, end) {\n        return isSameMonth(generateConfig, start, end);\n      });\n  }\n}\n\nfunction getRangeViewDate(values, index, picker, generateConfig) {\n  var startDate = getValue(values, 0);\n  var endDate = getValue(values, 1);\n\n  if (index === 0) {\n    return startDate;\n  }\n\n  if (startDate && endDate) {\n    var distance = getStartEndDistance(startDate, endDate, picker, generateConfig);\n\n    switch (distance) {\n      case 'same':\n        return startDate;\n\n      case 'closing':\n        return startDate;\n\n      default:\n        return getClosingViewDate(endDate, picker, generateConfig, -1);\n    }\n  }\n\n  return startDate;\n}\n\nexport default function useRangeViewDates(_ref) {\n  var values = _ref.values,\n      picker = _ref.picker,\n      defaultDates = _ref.defaultDates,\n      generateConfig = _ref.generateConfig;\n\n  var _React$useState = React.useState(function () {\n    return [getValue(defaultDates, 0), getValue(defaultDates, 1)];\n  }),\n      _React$useState2 = _slicedToArray(_React$useState, 2),\n      defaultViewDates = _React$useState2[0],\n      setDefaultViewDates = _React$useState2[1];\n\n  var _React$useState3 = React.useState(null),\n      _React$useState4 = _slicedToArray(_React$useState3, 2),\n      viewDates = _React$useState4[0],\n      setInternalViewDates = _React$useState4[1];\n\n  var startDate = getValue(values, 0);\n  var endDate = getValue(values, 1);\n\n  function getViewDate(index) {\n    // If set default view date, use it\n    if (defaultViewDates[index]) {\n      return defaultViewDates[index];\n    }\n\n    return getValue(viewDates, index) || getRangeViewDate(values, index, picker, generateConfig) || startDate || endDate || generateConfig.getNow();\n  }\n\n  function setViewDate(viewDate, index) {\n    if (viewDate) {\n      var newViewDates = updateValues(viewDates, viewDate, index); // Set view date will clean up default one\n\n      setDefaultViewDates( // Should always be an array\n      updateValues(defaultViewDates, null, index) || [null, null]); // Reset another one when not have value\n\n      var anotherIndex = (index + 1) % 2;\n\n      if (!getValue(values, anotherIndex)) {\n        newViewDates = updateValues(newViewDates, viewDate, anotherIndex);\n      }\n\n      setInternalViewDates(newViewDates);\n    } else if (startDate || endDate) {\n      // Reset all when has values when `viewDate` is `null` which means from open trigger\n      setInternalViewDates(null);\n    }\n  }\n\n  return [getViewDate, setViewDate];\n}"]},"metadata":{},"sourceType":"module"}