@salutejs/plasma-new-hope 0.324.0-canary.1983.15135554391.0 → 0.324.0-canary.1984.15139244526.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/cjs/components/Calendar/hooks/useMonths.js +3 -1
  2. package/cjs/components/Calendar/hooks/useMonths.js.map +1 -1
  3. package/cjs/components/Calendar/hooks/useQuarters.js +3 -1
  4. package/cjs/components/Calendar/hooks/useQuarters.js.map +1 -1
  5. package/cjs/components/Calendar/hooks/useYears.js +3 -1
  6. package/cjs/components/Calendar/hooks/useYears.js.map +1 -1
  7. package/cjs/components/Calendar/utils/getDateWithModification.js +30 -24
  8. package/cjs/components/Calendar/utils/getDateWithModification.js.map +1 -1
  9. package/cjs/components/Mask/Mask.js +9 -2
  10. package/cjs/components/Mask/Mask.js.map +1 -1
  11. package/emotion/cjs/components/Calendar/hooks/useMonths.js +3 -1
  12. package/emotion/cjs/components/Calendar/hooks/useQuarters.js +3 -1
  13. package/emotion/cjs/components/Calendar/hooks/useYears.js +3 -1
  14. package/emotion/cjs/components/Calendar/utils/getDateWithModification.js +30 -24
  15. package/emotion/cjs/components/Mask/Mask.js +9 -2
  16. package/emotion/cjs/engines/emotion.js +3 -8
  17. package/emotion/es/components/Calendar/hooks/useMonths.js +3 -1
  18. package/emotion/es/components/Calendar/hooks/useQuarters.js +3 -1
  19. package/emotion/es/components/Calendar/hooks/useYears.js +3 -1
  20. package/emotion/es/components/Calendar/utils/getDateWithModification.js +30 -24
  21. package/emotion/es/components/Mask/Mask.js +9 -2
  22. package/emotion/es/engines/emotion.js +3 -8
  23. package/es/components/Calendar/hooks/useMonths.js +3 -1
  24. package/es/components/Calendar/hooks/useMonths.js.map +1 -1
  25. package/es/components/Calendar/hooks/useQuarters.js +3 -1
  26. package/es/components/Calendar/hooks/useQuarters.js.map +1 -1
  27. package/es/components/Calendar/hooks/useYears.js +3 -1
  28. package/es/components/Calendar/hooks/useYears.js.map +1 -1
  29. package/es/components/Calendar/utils/getDateWithModification.js +30 -24
  30. package/es/components/Calendar/utils/getDateWithModification.js.map +1 -1
  31. package/es/components/Mask/Mask.js +9 -2
  32. package/es/components/Mask/Mask.js.map +1 -1
  33. package/package.json +2 -2
  34. package/styled-components/cjs/components/Calendar/hooks/useMonths.js +3 -1
  35. package/styled-components/cjs/components/Calendar/hooks/useQuarters.js +3 -1
  36. package/styled-components/cjs/components/Calendar/hooks/useYears.js +3 -1
  37. package/styled-components/cjs/components/Calendar/utils/getDateWithModification.js +30 -24
  38. package/styled-components/cjs/components/Mask/Mask.js +9 -2
  39. package/styled-components/cjs/engines/styled-components.js +3 -8
  40. package/styled-components/es/components/Calendar/hooks/useMonths.js +3 -1
  41. package/styled-components/es/components/Calendar/hooks/useQuarters.js +3 -1
  42. package/styled-components/es/components/Calendar/hooks/useYears.js +3 -1
  43. package/styled-components/es/components/Calendar/utils/getDateWithModification.js +30 -24
  44. package/styled-components/es/components/Mask/Mask.js +9 -2
  45. package/styled-components/es/engines/styled-components.js +3 -8
  46. package/types/components/Calendar/hooks/types.d.ts +7 -2
  47. package/types/components/Calendar/hooks/types.d.ts.map +1 -1
  48. package/types/components/Calendar/hooks/useMonths.d.ts +1 -1
  49. package/types/components/Calendar/hooks/useMonths.d.ts.map +1 -1
  50. package/types/components/Calendar/hooks/useQuarters.d.ts +1 -1
  51. package/types/components/Calendar/hooks/useQuarters.d.ts.map +1 -1
  52. package/types/components/Calendar/hooks/useYears.d.ts +1 -1
  53. package/types/components/Calendar/hooks/useYears.d.ts.map +1 -1
  54. package/types/components/Calendar/utils/getDateWithModification.d.ts.map +1 -1
  55. package/types/components/Mask/Mask.d.ts.map +1 -1
  56. package/types/engines/emotion.d.ts.map +1 -1
  57. package/types/engines/styled-components.d.ts.map +1 -1
@@ -20,7 +20,8 @@ var useMonths = function useMonths(_ref) {
20
20
  min = _ref.min,
21
21
  max = _ref.max,
22
22
  _ref$locale = _ref.locale,
23
- locale = _ref$locale === void 0 ? 'ru' : _ref$locale;
23
+ locale = _ref$locale === void 0 ? 'ru' : _ref$locale,
24
+ includeEdgeDates = _ref.includeEdgeDates;
24
25
  return React.useMemo(function () {
25
26
  var months = constants.SHORT_MONTH_NAME[locale].map(function (monthName, monthIndex) {
26
27
  return {
@@ -45,6 +46,7 @@ var useMonths = function useMonths(_ref) {
45
46
  type: types.CalendarState.Months,
46
47
  min: min,
47
48
  max: max,
49
+ includeEdgeDates: includeEdgeDates,
48
50
  eventList: eventList,
49
51
  disabledList: disabledList
50
52
  });
@@ -1 +1 @@
1
- {"version":3,"file":"useMonths.js","sources":["../../../../src/components/Calendar/hooks/useMonths.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport type { DateItem } from '../Calendar.types';\nimport {\n SHORT_MONTH_NAME,\n isSelectedMonth,\n isCurrentMonth,\n getMatrix,\n MONTH_NAMES,\n isDateInRange,\n getDatesWithModifications,\n} from '../utils';\nimport { CalendarState } from '../store/types';\n\nimport { UseMonthsArgs } from './types';\n\n/**\n * Хук для получения списка месяцев.\n */\nexport const useMonths = ({ date, value, eventList, disabledList, min, max, locale = 'ru' }: UseMonthsArgs) =>\n useMemo(() => {\n const months = SHORT_MONTH_NAME[locale].map((monthName, monthIndex) => {\n return {\n monthName,\n monthIndex,\n isCurrent: isCurrentMonth(date, monthIndex),\n isSelected: Array.isArray(value)\n ? Boolean(value.find((v) => isSelectedMonth(date, monthIndex, v)))\n : isSelectedMonth(date, monthIndex, value),\n inRange: Array.isArray(value) ? isDateInRange(date.year, monthIndex, 1, value) : false,\n monthFullName: MONTH_NAMES[locale][monthIndex],\n date: { year: date.year, monthIndex, day: 1 },\n };\n });\n\n if (eventList?.length || disabledList?.length || max || min) {\n const modifiedMonths = getDatesWithModifications({\n dates: months,\n type: CalendarState.Months,\n min,\n max,\n eventList,\n disabledList,\n });\n return getMatrix<DateItem>(modifiedMonths, 3);\n }\n\n return getMatrix<DateItem>(months, 3);\n }, [date, value, eventList, disabledList, max, min, locale]);\n"],"names":["useMonths","_ref","date","value","eventList","disabledList","min","max","_ref$locale","locale","useMemo","months","SHORT_MONTH_NAME","map","monthName","monthIndex","isCurrent","isCurrentMonth","isSelected","Array","isArray","Boolean","find","v","isSelectedMonth","inRange","isDateInRange","year","monthFullName","MONTH_NAMES","day","length","modifiedMonths","getDatesWithModifications","dates","type","CalendarState","Months","getMatrix"],"mappings":";;;;;;;;;;;AAgBA;AACA;AACA;IACaA,SAAS,GAAG,SAAZA,SAASA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,KAAK,GAAAF,IAAA,CAALE,KAAK;IAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS;IAAEC,YAAY,GAAAJ,IAAA,CAAZI,YAAY;IAAEC,GAAG,GAAAL,IAAA,CAAHK,GAAG;IAAEC,GAAG,GAAAN,IAAA,CAAHM,GAAG;IAAAC,WAAA,GAAAP,IAAA,CAAEQ,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,WAAA,CAAA;EAAA,OACrFE,aAAO,CAAC,YAAM;AACV,IAAA,IAAMC,MAAM,GAAGC,0BAAgB,CAACH,MAAM,CAAC,CAACI,GAAG,CAAC,UAACC,SAAS,EAAEC,UAAU,EAAK;MACnE,OAAO;AACHD,QAAAA,SAAS,EAATA,SAAS;AACTC,QAAAA,UAAU,EAAVA,UAAU;AACVC,QAAAA,SAAS,EAAEC,iCAAc,CAACf,IAAI,EAAEa,UAAU,CAAC;AAC3CG,QAAAA,UAAU,EAAEC,KAAK,CAACC,OAAO,CAACjB,KAAK,CAAC,GAC1BkB,OAAO,CAAClB,KAAK,CAACmB,IAAI,CAAC,UAACC,CAAC,EAAA;AAAA,UAAA,OAAKC,kCAAe,CAACtB,IAAI,EAAEa,UAAU,EAAEQ,CAAC,CAAC,CAAA;SAAC,CAAA,CAAC,GAChEC,kCAAe,CAACtB,IAAI,EAAEa,UAAU,EAAEZ,KAAK,CAAC;QAC9CsB,OAAO,EAAEN,KAAK,CAACC,OAAO,CAACjB,KAAK,CAAC,GAAGuB,iCAAa,CAACxB,IAAI,CAACyB,IAAI,EAAEZ,UAAU,EAAE,CAAC,EAAEZ,KAAK,CAAC,GAAG,KAAK;AACtFyB,QAAAA,aAAa,EAAEC,qBAAW,CAACpB,MAAM,CAAC,CAACM,UAAU,CAAC;AAC9Cb,QAAAA,IAAI,EAAE;UAAEyB,IAAI,EAAEzB,IAAI,CAACyB,IAAI;AAAEZ,UAAAA,UAAU,EAAVA,UAAU;AAAEe,UAAAA,GAAG,EAAE,CAAA;AAAE,SAAA;OAC/C,CAAA;AACL,KAAC,CAAC,CAAA;AAEF,IAAA,IAAI1B,SAAS,KAATA,IAAAA,IAAAA,SAAS,eAATA,SAAS,CAAE2B,MAAM,IAAI1B,YAAY,aAAZA,YAAY,KAAA,KAAA,CAAA,IAAZA,YAAY,CAAE0B,MAAM,IAAIxB,GAAG,IAAID,GAAG,EAAE;MACzD,IAAM0B,cAAc,GAAGC,iDAAyB,CAAC;AAC7CC,QAAAA,KAAK,EAAEvB,MAAM;QACbwB,IAAI,EAAEC,mBAAa,CAACC,MAAM;AAC1B/B,QAAAA,GAAG,EAAHA,GAAG;AACHC,QAAAA,GAAG,EAAHA,GAAG;AACHH,QAAAA,SAAS,EAATA,SAAS;AACTC,QAAAA,YAAY,EAAZA,YAAAA;AACJ,OAAC,CAAC,CAAA;AACF,MAAA,OAAOiC,4BAAS,CAAWN,cAAc,EAAE,CAAC,CAAC,CAAA;AACjD,KAAA;AAEA,IAAA,OAAOM,4BAAS,CAAW3B,MAAM,EAAE,CAAC,CAAC,CAAA;AACzC,GAAC,EAAE,CAACT,IAAI,EAAEC,KAAK,EAAEC,SAAS,EAAEC,YAAY,EAAEE,GAAG,EAAED,GAAG,EAAEG,MAAM,CAAC,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"useMonths.js","sources":["../../../../src/components/Calendar/hooks/useMonths.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport type { DateItem } from '../Calendar.types';\nimport {\n SHORT_MONTH_NAME,\n isSelectedMonth,\n isCurrentMonth,\n getMatrix,\n MONTH_NAMES,\n isDateInRange,\n getDatesWithModifications,\n} from '../utils';\nimport { CalendarState } from '../store/types';\n\nimport { UseMonthsArgs } from './types';\n\n/**\n * Хук для получения списка месяцев.\n */\nexport const useMonths = ({\n date,\n value,\n eventList,\n disabledList,\n min,\n max,\n locale = 'ru',\n includeEdgeDates,\n}: UseMonthsArgs) =>\n useMemo(() => {\n const months = SHORT_MONTH_NAME[locale].map((monthName, monthIndex) => {\n return {\n monthName,\n monthIndex,\n isCurrent: isCurrentMonth(date, monthIndex),\n isSelected: Array.isArray(value)\n ? Boolean(value.find((v) => isSelectedMonth(date, monthIndex, v)))\n : isSelectedMonth(date, monthIndex, value),\n inRange: Array.isArray(value) ? isDateInRange(date.year, monthIndex, 1, value) : false,\n monthFullName: MONTH_NAMES[locale][monthIndex],\n date: { year: date.year, monthIndex, day: 1 },\n };\n });\n\n if (eventList?.length || disabledList?.length || max || min) {\n const modifiedMonths = getDatesWithModifications({\n dates: months,\n type: CalendarState.Months,\n min,\n max,\n includeEdgeDates,\n eventList,\n disabledList,\n });\n return getMatrix<DateItem>(modifiedMonths, 3);\n }\n\n return getMatrix<DateItem>(months, 3);\n }, [date, value, eventList, disabledList, max, min, locale]);\n"],"names":["useMonths","_ref","date","value","eventList","disabledList","min","max","_ref$locale","locale","includeEdgeDates","useMemo","months","SHORT_MONTH_NAME","map","monthName","monthIndex","isCurrent","isCurrentMonth","isSelected","Array","isArray","Boolean","find","v","isSelectedMonth","inRange","isDateInRange","year","monthFullName","MONTH_NAMES","day","length","modifiedMonths","getDatesWithModifications","dates","type","CalendarState","Months","getMatrix"],"mappings":";;;;;;;;;;;AAgBA;AACA;AACA;IACaA,SAAS,GAAG,SAAZA,SAASA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAClBC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,KAAK,GAAAF,IAAA,CAALE,KAAK;IACLC,SAAS,GAAAH,IAAA,CAATG,SAAS;IACTC,YAAY,GAAAJ,IAAA,CAAZI,YAAY;IACZC,GAAG,GAAAL,IAAA,CAAHK,GAAG;IACHC,GAAG,GAAAN,IAAA,CAAHM,GAAG;IAAAC,WAAA,GAAAP,IAAA,CACHQ,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,WAAA;IACbE,gBAAgB,GAAAT,IAAA,CAAhBS,gBAAgB,CAAA;EAAA,OAEhBC,aAAO,CAAC,YAAM;AACV,IAAA,IAAMC,MAAM,GAAGC,0BAAgB,CAACJ,MAAM,CAAC,CAACK,GAAG,CAAC,UAACC,SAAS,EAAEC,UAAU,EAAK;MACnE,OAAO;AACHD,QAAAA,SAAS,EAATA,SAAS;AACTC,QAAAA,UAAU,EAAVA,UAAU;AACVC,QAAAA,SAAS,EAAEC,iCAAc,CAAChB,IAAI,EAAEc,UAAU,CAAC;AAC3CG,QAAAA,UAAU,EAAEC,KAAK,CAACC,OAAO,CAAClB,KAAK,CAAC,GAC1BmB,OAAO,CAACnB,KAAK,CAACoB,IAAI,CAAC,UAACC,CAAC,EAAA;AAAA,UAAA,OAAKC,kCAAe,CAACvB,IAAI,EAAEc,UAAU,EAAEQ,CAAC,CAAC,CAAA;SAAC,CAAA,CAAC,GAChEC,kCAAe,CAACvB,IAAI,EAAEc,UAAU,EAAEb,KAAK,CAAC;QAC9CuB,OAAO,EAAEN,KAAK,CAACC,OAAO,CAAClB,KAAK,CAAC,GAAGwB,iCAAa,CAACzB,IAAI,CAAC0B,IAAI,EAAEZ,UAAU,EAAE,CAAC,EAAEb,KAAK,CAAC,GAAG,KAAK;AACtF0B,QAAAA,aAAa,EAAEC,qBAAW,CAACrB,MAAM,CAAC,CAACO,UAAU,CAAC;AAC9Cd,QAAAA,IAAI,EAAE;UAAE0B,IAAI,EAAE1B,IAAI,CAAC0B,IAAI;AAAEZ,UAAAA,UAAU,EAAVA,UAAU;AAAEe,UAAAA,GAAG,EAAE,CAAA;AAAE,SAAA;OAC/C,CAAA;AACL,KAAC,CAAC,CAAA;AAEF,IAAA,IAAI3B,SAAS,KAATA,IAAAA,IAAAA,SAAS,eAATA,SAAS,CAAE4B,MAAM,IAAI3B,YAAY,aAAZA,YAAY,KAAA,KAAA,CAAA,IAAZA,YAAY,CAAE2B,MAAM,IAAIzB,GAAG,IAAID,GAAG,EAAE;MACzD,IAAM2B,cAAc,GAAGC,iDAAyB,CAAC;AAC7CC,QAAAA,KAAK,EAAEvB,MAAM;QACbwB,IAAI,EAAEC,mBAAa,CAACC,MAAM;AAC1BhC,QAAAA,GAAG,EAAHA,GAAG;AACHC,QAAAA,GAAG,EAAHA,GAAG;AACHG,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBN,QAAAA,SAAS,EAATA,SAAS;AACTC,QAAAA,YAAY,EAAZA,YAAAA;AACJ,OAAC,CAAC,CAAA;AACF,MAAA,OAAOkC,4BAAS,CAAWN,cAAc,EAAE,CAAC,CAAC,CAAA;AACjD,KAAA;AAEA,IAAA,OAAOM,4BAAS,CAAW3B,MAAM,EAAE,CAAC,CAAC,CAAA;AACzC,GAAC,EAAE,CAACV,IAAI,EAAEC,KAAK,EAAEC,SAAS,EAAEC,YAAY,EAAEE,GAAG,EAAED,GAAG,EAAEG,MAAM,CAAC,CAAC,CAAA;AAAA;;;;"}
@@ -18,7 +18,8 @@ var useQuarters = function useQuarters(_ref) {
18
18
  eventList = _ref.eventList,
19
19
  disabledList = _ref.disabledList,
20
20
  min = _ref.min,
21
- max = _ref.max;
21
+ max = _ref.max,
22
+ includeEdgeDates = _ref.includeEdgeDates;
22
23
  return React.useMemo(function () {
23
24
  var quarters = constants.QUARTER_NAMES.map(function (quarterName) {
24
25
  var _quarterDates$quarter = constants.quarterDates[quarterName],
@@ -44,6 +45,7 @@ var useQuarters = function useQuarters(_ref) {
44
45
  type: types.CalendarState.Quarters,
45
46
  min: min,
46
47
  max: max,
48
+ includeEdgeDates: includeEdgeDates,
47
49
  eventList: eventList,
48
50
  disabledList: disabledList
49
51
  });
@@ -1 +1 @@
1
- {"version":3,"file":"useQuarters.js","sources":["../../../../src/components/Calendar/hooks/useQuarters.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport type { DateItem } from '../Calendar.types';\nimport {\n QUARTER_NAMES,\n getMatrix,\n isDateInRange,\n getDatesWithModifications,\n quarterDates,\n isSelectedMonth as isSelectedQuarter,\n isCurrentMonth as isCurrentQuarter,\n} from '../utils';\nimport { CalendarState } from '../store/types';\n\nimport type { UseQuartersArgs } from './types';\n\n/**\n * Хук для получения списка месяцев.\n */\nexport const useQuarters = ({ date, value, eventList, disabledList, min, max }: UseQuartersArgs) =>\n useMemo(() => {\n const quarters = QUARTER_NAMES.map((quarterName: string) => {\n const { monthIndex, day } = quarterDates[quarterName];\n\n return {\n quarterName,\n isCurrent: isCurrentQuarter(date, monthIndex),\n isSelected: Array.isArray(value)\n ? Boolean(value.find((v) => isSelectedQuarter(date, monthIndex, v)))\n : isSelectedQuarter(date, monthIndex, value),\n inRange: Array.isArray(value) ? isDateInRange(date.year, monthIndex, day, value) : false,\n date: { year: date.year, monthIndex, day: 1 },\n };\n });\n\n if (eventList?.length || disabledList?.length || max || min) {\n const modifiedQuarters = getDatesWithModifications({\n dates: quarters,\n type: CalendarState.Quarters,\n min,\n max,\n eventList,\n disabledList,\n });\n\n return getMatrix<DateItem>(modifiedQuarters, 2);\n }\n\n return getMatrix<DateItem>(quarters, 2);\n }, [date, value, eventList, disabledList, max, min]);\n"],"names":["useQuarters","_ref","date","value","eventList","disabledList","min","max","useMemo","quarters","QUARTER_NAMES","map","quarterName","_quarterDates$quarter","quarterDates","monthIndex","day","isCurrent","isCurrentQuarter","isSelected","Array","isArray","Boolean","find","v","isSelectedQuarter","inRange","isDateInRange","year","length","modifiedQuarters","getDatesWithModifications","dates","type","CalendarState","Quarters","getMatrix"],"mappings":";;;;;;;;;;;AAgBA;AACA;AACA;IACaA,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,KAAK,GAAAF,IAAA,CAALE,KAAK;IAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS;IAAEC,YAAY,GAAAJ,IAAA,CAAZI,YAAY;IAAEC,GAAG,GAAAL,IAAA,CAAHK,GAAG;IAAEC,GAAG,GAAAN,IAAA,CAAHM,GAAG,CAAA;EAAA,OACxEC,aAAO,CAAC,YAAM;IACV,IAAMC,QAAQ,GAAGC,uBAAa,CAACC,GAAG,CAAC,UAACC,WAAmB,EAAK;AACxD,MAAA,IAAAC,qBAAA,GAA4BC,sBAAY,CAACF,WAAW,CAAC;QAA7CG,UAAU,GAAAF,qBAAA,CAAVE,UAAU;QAAEC,GAAG,GAAAH,qBAAA,CAAHG,GAAG,CAAA;MAEvB,OAAO;AACHJ,QAAAA,WAAW,EAAXA,WAAW;AACXK,QAAAA,SAAS,EAAEC,iCAAgB,CAAChB,IAAI,EAAEa,UAAU,CAAC;AAC7CI,QAAAA,UAAU,EAAEC,KAAK,CAACC,OAAO,CAAClB,KAAK,CAAC,GAC1BmB,OAAO,CAACnB,KAAK,CAACoB,IAAI,CAAC,UAACC,CAAC,EAAA;AAAA,UAAA,OAAKC,kCAAiB,CAACvB,IAAI,EAAEa,UAAU,EAAES,CAAC,CAAC,CAAA;SAAC,CAAA,CAAC,GAClEC,kCAAiB,CAACvB,IAAI,EAAEa,UAAU,EAAEZ,KAAK,CAAC;QAChDuB,OAAO,EAAEN,KAAK,CAACC,OAAO,CAAClB,KAAK,CAAC,GAAGwB,iCAAa,CAACzB,IAAI,CAAC0B,IAAI,EAAEb,UAAU,EAAEC,GAAG,EAAEb,KAAK,CAAC,GAAG,KAAK;AACxFD,QAAAA,IAAI,EAAE;UAAE0B,IAAI,EAAE1B,IAAI,CAAC0B,IAAI;AAAEb,UAAAA,UAAU,EAAVA,UAAU;AAAEC,UAAAA,GAAG,EAAE,CAAA;AAAE,SAAA;OAC/C,CAAA;AACL,KAAC,CAAC,CAAA;AAEF,IAAA,IAAIZ,SAAS,KAATA,IAAAA,IAAAA,SAAS,eAATA,SAAS,CAAEyB,MAAM,IAAIxB,YAAY,aAAZA,YAAY,KAAA,KAAA,CAAA,IAAZA,YAAY,CAAEwB,MAAM,IAAItB,GAAG,IAAID,GAAG,EAAE;MACzD,IAAMwB,gBAAgB,GAAGC,iDAAyB,CAAC;AAC/CC,QAAAA,KAAK,EAAEvB,QAAQ;QACfwB,IAAI,EAAEC,mBAAa,CAACC,QAAQ;AAC5B7B,QAAAA,GAAG,EAAHA,GAAG;AACHC,QAAAA,GAAG,EAAHA,GAAG;AACHH,QAAAA,SAAS,EAATA,SAAS;AACTC,QAAAA,YAAY,EAAZA,YAAAA;AACJ,OAAC,CAAC,CAAA;AAEF,MAAA,OAAO+B,4BAAS,CAAWN,gBAAgB,EAAE,CAAC,CAAC,CAAA;AACnD,KAAA;AAEA,IAAA,OAAOM,4BAAS,CAAW3B,QAAQ,EAAE,CAAC,CAAC,CAAA;AAC3C,GAAC,EAAE,CAACP,IAAI,EAAEC,KAAK,EAAEC,SAAS,EAAEC,YAAY,EAAEE,GAAG,EAAED,GAAG,CAAC,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"useQuarters.js","sources":["../../../../src/components/Calendar/hooks/useQuarters.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport type { DateItem } from '../Calendar.types';\nimport {\n QUARTER_NAMES,\n getMatrix,\n isDateInRange,\n getDatesWithModifications,\n quarterDates,\n isSelectedMonth as isSelectedQuarter,\n isCurrentMonth as isCurrentQuarter,\n} from '../utils';\nimport { CalendarState } from '../store/types';\n\nimport type { UseQuartersArgs } from './types';\n\n/**\n * Хук для получения списка месяцев.\n */\nexport const useQuarters = ({ date, value, eventList, disabledList, min, max, includeEdgeDates }: UseQuartersArgs) =>\n useMemo(() => {\n const quarters = QUARTER_NAMES.map((quarterName: string) => {\n const { monthIndex, day } = quarterDates[quarterName];\n\n return {\n quarterName,\n isCurrent: isCurrentQuarter(date, monthIndex),\n isSelected: Array.isArray(value)\n ? Boolean(value.find((v) => isSelectedQuarter(date, monthIndex, v)))\n : isSelectedQuarter(date, monthIndex, value),\n inRange: Array.isArray(value) ? isDateInRange(date.year, monthIndex, day, value) : false,\n date: { year: date.year, monthIndex, day: 1 },\n };\n });\n\n if (eventList?.length || disabledList?.length || max || min) {\n const modifiedQuarters = getDatesWithModifications({\n dates: quarters,\n type: CalendarState.Quarters,\n min,\n max,\n includeEdgeDates,\n eventList,\n disabledList,\n });\n\n return getMatrix<DateItem>(modifiedQuarters, 2);\n }\n\n return getMatrix<DateItem>(quarters, 2);\n }, [date, value, eventList, disabledList, max, min]);\n"],"names":["useQuarters","_ref","date","value","eventList","disabledList","min","max","includeEdgeDates","useMemo","quarters","QUARTER_NAMES","map","quarterName","_quarterDates$quarter","quarterDates","monthIndex","day","isCurrent","isCurrentQuarter","isSelected","Array","isArray","Boolean","find","v","isSelectedQuarter","inRange","isDateInRange","year","length","modifiedQuarters","getDatesWithModifications","dates","type","CalendarState","Quarters","getMatrix"],"mappings":";;;;;;;;;;;AAgBA;AACA;AACA;IACaA,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,KAAK,GAAAF,IAAA,CAALE,KAAK;IAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS;IAAEC,YAAY,GAAAJ,IAAA,CAAZI,YAAY;IAAEC,GAAG,GAAAL,IAAA,CAAHK,GAAG;IAAEC,GAAG,GAAAN,IAAA,CAAHM,GAAG;IAAEC,gBAAgB,GAAAP,IAAA,CAAhBO,gBAAgB,CAAA;EAAA,OAC1FC,aAAO,CAAC,YAAM;IACV,IAAMC,QAAQ,GAAGC,uBAAa,CAACC,GAAG,CAAC,UAACC,WAAmB,EAAK;AACxD,MAAA,IAAAC,qBAAA,GAA4BC,sBAAY,CAACF,WAAW,CAAC;QAA7CG,UAAU,GAAAF,qBAAA,CAAVE,UAAU;QAAEC,GAAG,GAAAH,qBAAA,CAAHG,GAAG,CAAA;MAEvB,OAAO;AACHJ,QAAAA,WAAW,EAAXA,WAAW;AACXK,QAAAA,SAAS,EAAEC,iCAAgB,CAACjB,IAAI,EAAEc,UAAU,CAAC;AAC7CI,QAAAA,UAAU,EAAEC,KAAK,CAACC,OAAO,CAACnB,KAAK,CAAC,GAC1BoB,OAAO,CAACpB,KAAK,CAACqB,IAAI,CAAC,UAACC,CAAC,EAAA;AAAA,UAAA,OAAKC,kCAAiB,CAACxB,IAAI,EAAEc,UAAU,EAAES,CAAC,CAAC,CAAA;SAAC,CAAA,CAAC,GAClEC,kCAAiB,CAACxB,IAAI,EAAEc,UAAU,EAAEb,KAAK,CAAC;QAChDwB,OAAO,EAAEN,KAAK,CAACC,OAAO,CAACnB,KAAK,CAAC,GAAGyB,iCAAa,CAAC1B,IAAI,CAAC2B,IAAI,EAAEb,UAAU,EAAEC,GAAG,EAAEd,KAAK,CAAC,GAAG,KAAK;AACxFD,QAAAA,IAAI,EAAE;UAAE2B,IAAI,EAAE3B,IAAI,CAAC2B,IAAI;AAAEb,UAAAA,UAAU,EAAVA,UAAU;AAAEC,UAAAA,GAAG,EAAE,CAAA;AAAE,SAAA;OAC/C,CAAA;AACL,KAAC,CAAC,CAAA;AAEF,IAAA,IAAIb,SAAS,KAATA,IAAAA,IAAAA,SAAS,eAATA,SAAS,CAAE0B,MAAM,IAAIzB,YAAY,aAAZA,YAAY,KAAA,KAAA,CAAA,IAAZA,YAAY,CAAEyB,MAAM,IAAIvB,GAAG,IAAID,GAAG,EAAE;MACzD,IAAMyB,gBAAgB,GAAGC,iDAAyB,CAAC;AAC/CC,QAAAA,KAAK,EAAEvB,QAAQ;QACfwB,IAAI,EAAEC,mBAAa,CAACC,QAAQ;AAC5B9B,QAAAA,GAAG,EAAHA,GAAG;AACHC,QAAAA,GAAG,EAAHA,GAAG;AACHC,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBJ,QAAAA,SAAS,EAATA,SAAS;AACTC,QAAAA,YAAY,EAAZA,YAAAA;AACJ,OAAC,CAAC,CAAA;AAEF,MAAA,OAAOgC,4BAAS,CAAWN,gBAAgB,EAAE,CAAC,CAAC,CAAA;AACnD,KAAA;AAEA,IAAA,OAAOM,4BAAS,CAAW3B,QAAQ,EAAE,CAAC,CAAC,CAAA;AAC3C,GAAC,EAAE,CAACR,IAAI,EAAEC,KAAK,EAAEC,SAAS,EAAEC,YAAY,EAAEE,GAAG,EAAED,GAAG,CAAC,CAAC,CAAA;AAAA;;;;"}
@@ -19,7 +19,8 @@ var useYears = function useYears(_ref) {
19
19
  eventList = _ref.eventList,
20
20
  disabledList = _ref.disabledList,
21
21
  min = _ref.min,
22
- max = _ref.max;
22
+ max = _ref.max,
23
+ includeEdgeDates = _ref.includeEdgeDates;
23
24
  return React.useMemo(function () {
24
25
  // type-coverage:ignore-next-line
25
26
  var years = Array.from(Array(constants.YEAR_RENDER_COUNT), function (_, i) {
@@ -44,6 +45,7 @@ var useYears = function useYears(_ref) {
44
45
  type: types.CalendarState.Years,
45
46
  min: min,
46
47
  max: max,
48
+ includeEdgeDates: includeEdgeDates,
47
49
  eventList: eventList,
48
50
  disabledList: disabledList
49
51
  });
@@ -1 +1 @@
1
- {"version":3,"file":"useYears.js","sources":["../../../../src/components/Calendar/hooks/useYears.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport {\n YEAR_RENDER_COUNT,\n isCurrentYear,\n isSelectedYear,\n getMatrix,\n isDateInRange,\n getDatesWithModifications,\n} from '../utils';\nimport type { DateItem } from '../Calendar.types';\nimport { CalendarState } from '../store/types';\n\nimport type { UseYearsArgs } from './types';\n\n/**\n * Хук для получения списка годов.\n */\nexport const useYears = ({ date, value, startYear, eventList, disabledList, min, max }: UseYearsArgs) =>\n useMemo(() => {\n // type-coverage:ignore-next-line\n const years = Array.from(Array(YEAR_RENDER_COUNT), (_, i) => {\n const yearValue = startYear + i;\n\n return {\n isCurrent: isCurrentYear(startYear + i),\n isSelected: Array.isArray(value)\n ? Boolean(value.find((v) => isSelectedYear(yearValue, v)))\n : isSelectedYear(yearValue, value),\n inRange: Array.isArray(value) ? isDateInRange(yearValue, 0, 1, value) : false,\n date: { year: yearValue, monthIndex: 0, day: 1 },\n yearValue,\n };\n });\n\n if (eventList?.length || disabledList?.length || max || min) {\n const modifiedMonths = getDatesWithModifications({\n dates: years,\n type: CalendarState.Years,\n min,\n max,\n eventList,\n disabledList,\n });\n return getMatrix<DateItem>(modifiedMonths, 3);\n }\n\n return getMatrix<DateItem>(years, 3);\n }, [date, startYear, value, eventList, disabledList, max, min]);\n"],"names":["useYears","_ref","date","value","startYear","eventList","disabledList","min","max","useMemo","years","Array","from","YEAR_RENDER_COUNT","_","i","yearValue","isCurrent","isCurrentYear","isSelected","isArray","Boolean","find","v","isSelectedYear","inRange","isDateInRange","year","monthIndex","day","length","modifiedMonths","getDatesWithModifications","dates","type","CalendarState","Years","getMatrix"],"mappings":";;;;;;;;;;;AAeA;AACA;AACA;IACaA,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAEC,KAAK,GAAAF,IAAA,CAALE,KAAK;IAAEC,SAAS,GAAAH,IAAA,CAATG,SAAS;IAAEC,SAAS,GAAAJ,IAAA,CAATI,SAAS;IAAEC,YAAY,GAAAL,IAAA,CAAZK,YAAY;IAAEC,GAAG,GAAAN,IAAA,CAAHM,GAAG;IAAEC,GAAG,GAAAP,IAAA,CAAHO,GAAG,CAAA;EAAA,OAChFC,aAAO,CAAC,YAAM;AACV;AACA,IAAA,IAAMC,KAAK,GAAGC,KAAK,CAACC,IAAI,CAACD,KAAK,CAACE,2BAAiB,CAAC,EAAE,UAACC,CAAC,EAAEC,CAAC,EAAK;AACzD,MAAA,IAAMC,SAAS,GAAGZ,SAAS,GAAGW,CAAC,CAAA;MAE/B,OAAO;AACHE,QAAAA,SAAS,EAAEC,gCAAa,CAACd,SAAS,GAAGW,CAAC,CAAC;AACvCI,QAAAA,UAAU,EAAER,KAAK,CAACS,OAAO,CAACjB,KAAK,CAAC,GAC1BkB,OAAO,CAAClB,KAAK,CAACmB,IAAI,CAAC,UAACC,CAAC,EAAA;AAAA,UAAA,OAAKC,iCAAc,CAACR,SAAS,EAAEO,CAAC,CAAC,CAAA;AAAA,SAAA,CAAC,CAAC,GACxDC,iCAAc,CAACR,SAAS,EAAEb,KAAK,CAAC;AACtCsB,QAAAA,OAAO,EAAEd,KAAK,CAACS,OAAO,CAACjB,KAAK,CAAC,GAAGuB,iCAAa,CAACV,SAAS,EAAE,CAAC,EAAE,CAAC,EAAEb,KAAK,CAAC,GAAG,KAAK;AAC7ED,QAAAA,IAAI,EAAE;AAAEyB,UAAAA,IAAI,EAAEX,SAAS;AAAEY,UAAAA,UAAU,EAAE,CAAC;AAAEC,UAAAA,GAAG,EAAE,CAAA;SAAG;AAChDb,QAAAA,SAAS,EAATA,SAAAA;OACH,CAAA;AACL,KAAC,CAAC,CAAA;AAEF,IAAA,IAAIX,SAAS,KAATA,IAAAA,IAAAA,SAAS,eAATA,SAAS,CAAEyB,MAAM,IAAIxB,YAAY,aAAZA,YAAY,KAAA,KAAA,CAAA,IAAZA,YAAY,CAAEwB,MAAM,IAAItB,GAAG,IAAID,GAAG,EAAE;MACzD,IAAMwB,cAAc,GAAGC,iDAAyB,CAAC;AAC7CC,QAAAA,KAAK,EAAEvB,KAAK;QACZwB,IAAI,EAAEC,mBAAa,CAACC,KAAK;AACzB7B,QAAAA,GAAG,EAAHA,GAAG;AACHC,QAAAA,GAAG,EAAHA,GAAG;AACHH,QAAAA,SAAS,EAATA,SAAS;AACTC,QAAAA,YAAY,EAAZA,YAAAA;AACJ,OAAC,CAAC,CAAA;AACF,MAAA,OAAO+B,4BAAS,CAAWN,cAAc,EAAE,CAAC,CAAC,CAAA;AACjD,KAAA;AAEA,IAAA,OAAOM,4BAAS,CAAW3B,KAAK,EAAE,CAAC,CAAC,CAAA;AACxC,GAAC,EAAE,CAACR,IAAI,EAAEE,SAAS,EAAED,KAAK,EAAEE,SAAS,EAAEC,YAAY,EAAEE,GAAG,EAAED,GAAG,CAAC,CAAC,CAAA;AAAA;;;;"}
1
+ {"version":3,"file":"useYears.js","sources":["../../../../src/components/Calendar/hooks/useYears.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport {\n YEAR_RENDER_COUNT,\n isCurrentYear,\n isSelectedYear,\n getMatrix,\n isDateInRange,\n getDatesWithModifications,\n} from '../utils';\nimport type { DateItem } from '../Calendar.types';\nimport { CalendarState } from '../store/types';\n\nimport type { UseYearsArgs } from './types';\n\n/**\n * Хук для получения списка годов.\n */\nexport const useYears = ({\n date,\n value,\n startYear,\n eventList,\n disabledList,\n min,\n max,\n includeEdgeDates,\n}: UseYearsArgs) =>\n useMemo(() => {\n // type-coverage:ignore-next-line\n const years = Array.from(Array(YEAR_RENDER_COUNT), (_, i) => {\n const yearValue = startYear + i;\n\n return {\n isCurrent: isCurrentYear(startYear + i),\n isSelected: Array.isArray(value)\n ? Boolean(value.find((v) => isSelectedYear(yearValue, v)))\n : isSelectedYear(yearValue, value),\n inRange: Array.isArray(value) ? isDateInRange(yearValue, 0, 1, value) : false,\n date: { year: yearValue, monthIndex: 0, day: 1 },\n yearValue,\n };\n });\n\n if (eventList?.length || disabledList?.length || max || min) {\n const modifiedMonths = getDatesWithModifications({\n dates: years,\n type: CalendarState.Years,\n min,\n max,\n includeEdgeDates,\n eventList,\n disabledList,\n });\n return getMatrix<DateItem>(modifiedMonths, 3);\n }\n\n return getMatrix<DateItem>(years, 3);\n }, [date, startYear, value, eventList, disabledList, max, min]);\n"],"names":["useYears","_ref","date","value","startYear","eventList","disabledList","min","max","includeEdgeDates","useMemo","years","Array","from","YEAR_RENDER_COUNT","_","i","yearValue","isCurrent","isCurrentYear","isSelected","isArray","Boolean","find","v","isSelectedYear","inRange","isDateInRange","year","monthIndex","day","length","modifiedMonths","getDatesWithModifications","dates","type","CalendarState","Years","getMatrix"],"mappings":";;;;;;;;;;;AAeA;AACA;AACA;IACaA,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAAA;AAAA,EAAA,IACjBC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJC,KAAK,GAAAF,IAAA,CAALE,KAAK;IACLC,SAAS,GAAAH,IAAA,CAATG,SAAS;IACTC,SAAS,GAAAJ,IAAA,CAATI,SAAS;IACTC,YAAY,GAAAL,IAAA,CAAZK,YAAY;IACZC,GAAG,GAAAN,IAAA,CAAHM,GAAG;IACHC,GAAG,GAAAP,IAAA,CAAHO,GAAG;IACHC,gBAAgB,GAAAR,IAAA,CAAhBQ,gBAAgB,CAAA;EAAA,OAEhBC,aAAO,CAAC,YAAM;AACV;AACA,IAAA,IAAMC,KAAK,GAAGC,KAAK,CAACC,IAAI,CAACD,KAAK,CAACE,2BAAiB,CAAC,EAAE,UAACC,CAAC,EAAEC,CAAC,EAAK;AACzD,MAAA,IAAMC,SAAS,GAAGb,SAAS,GAAGY,CAAC,CAAA;MAE/B,OAAO;AACHE,QAAAA,SAAS,EAAEC,gCAAa,CAACf,SAAS,GAAGY,CAAC,CAAC;AACvCI,QAAAA,UAAU,EAAER,KAAK,CAACS,OAAO,CAAClB,KAAK,CAAC,GAC1BmB,OAAO,CAACnB,KAAK,CAACoB,IAAI,CAAC,UAACC,CAAC,EAAA;AAAA,UAAA,OAAKC,iCAAc,CAACR,SAAS,EAAEO,CAAC,CAAC,CAAA;AAAA,SAAA,CAAC,CAAC,GACxDC,iCAAc,CAACR,SAAS,EAAEd,KAAK,CAAC;AACtCuB,QAAAA,OAAO,EAAEd,KAAK,CAACS,OAAO,CAAClB,KAAK,CAAC,GAAGwB,iCAAa,CAACV,SAAS,EAAE,CAAC,EAAE,CAAC,EAAEd,KAAK,CAAC,GAAG,KAAK;AAC7ED,QAAAA,IAAI,EAAE;AAAE0B,UAAAA,IAAI,EAAEX,SAAS;AAAEY,UAAAA,UAAU,EAAE,CAAC;AAAEC,UAAAA,GAAG,EAAE,CAAA;SAAG;AAChDb,QAAAA,SAAS,EAATA,SAAAA;OACH,CAAA;AACL,KAAC,CAAC,CAAA;AAEF,IAAA,IAAIZ,SAAS,KAATA,IAAAA,IAAAA,SAAS,eAATA,SAAS,CAAE0B,MAAM,IAAIzB,YAAY,aAAZA,YAAY,KAAA,KAAA,CAAA,IAAZA,YAAY,CAAEyB,MAAM,IAAIvB,GAAG,IAAID,GAAG,EAAE;MACzD,IAAMyB,cAAc,GAAGC,iDAAyB,CAAC;AAC7CC,QAAAA,KAAK,EAAEvB,KAAK;QACZwB,IAAI,EAAEC,mBAAa,CAACC,KAAK;AACzB9B,QAAAA,GAAG,EAAHA,GAAG;AACHC,QAAAA,GAAG,EAAHA,GAAG;AACHC,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBJ,QAAAA,SAAS,EAATA,SAAS;AACTC,QAAAA,YAAY,EAAZA,YAAAA;AACJ,OAAC,CAAC,CAAA;AACF,MAAA,OAAOgC,4BAAS,CAAWN,cAAc,EAAE,CAAC,CAAC,CAAA;AACjD,KAAA;AAEA,IAAA,OAAOM,4BAAS,CAAW3B,KAAK,EAAE,CAAC,CAAC,CAAA;AACxC,GAAC,EAAE,CAACT,IAAI,EAAEE,SAAS,EAAED,KAAK,EAAEE,SAAS,EAAEC,YAAY,EAAEE,GAAG,EAAED,GAAG,CAAC,CAAC,CAAA;AAAA;;;;"}
@@ -47,7 +47,7 @@ var normalizeDate = function normalizeDate(date, type) {
47
47
  date.setMonth(0);
48
48
  }
49
49
  };
50
- var isDisabledNextDate = function isDisabledNextDate(_ref, type, max) {
50
+ var isDisabledNextDate = function isDisabledNextDate(_ref, type, max, includeEdgeDates) {
51
51
  var year = _ref.year,
52
52
  monthIndex = _ref.monthIndex,
53
53
  day = _ref.day;
@@ -59,13 +59,14 @@ var isDisabledNextDate = function isDisabledNextDate(_ref, type, max) {
59
59
  var currentDate = new Date(year, monthIndex, day);
60
60
  dateOperationHandler[type].add(currentDate);
61
61
  var isOut = true;
62
- while (isOut && currentDate <= maxDate) {
63
- isOut = maxDate <= currentDate;
62
+ var maxDateCondition = includeEdgeDates ? currentDate < maxDate : currentDate <= maxDate;
63
+ while (isOut && maxDateCondition) {
64
+ isOut = false;
64
65
  dateOperationHandler[type].add(currentDate);
65
66
  }
66
67
  return isOut;
67
68
  };
68
- var isDisabledPreviousDate = function isDisabledPreviousDate(_ref2, type, min) {
69
+ var isDisabledPreviousDate = function isDisabledPreviousDate(_ref2, type, min, includeEdgeDates) {
69
70
  var year = _ref2.year,
70
71
  monthIndex = _ref2.monthIndex,
71
72
  day = _ref2.day;
@@ -77,54 +78,59 @@ var isDisabledPreviousDate = function isDisabledPreviousDate(_ref2, type, min) {
77
78
  var currentDate = new Date(year, monthIndex, day);
78
79
  dateOperationHandler[type].subtract(currentDate);
79
80
  var isOut = true;
80
- while (isOut && currentDate >= minDate) {
81
- isOut = minDate >= currentDate;
81
+ var minDateCondition = includeEdgeDates ? currentDate > minDate : currentDate >= minDate;
82
+ while (isOut && minDateCondition) {
83
+ isOut = false;
82
84
  dateOperationHandler[type].subtract(currentDate);
83
85
  }
84
86
  return isOut;
85
87
  };
86
- var getDisabledDates = function getDisabledDates(list, type, min, max) {
88
+ var getDisabledDates = function getDisabledDates(list, type, min, max, includeEdgeDates) {
87
89
  var disabledDate = [];
88
- if (isDisabledPreviousDate(list[0], type, min)) {
90
+ if (isDisabledPreviousDate(list[0], type, min, includeEdgeDates)) {
89
91
  disabledDate.push('previous');
90
92
  }
91
- if (isDisabledNextDate(list[list.length - 1], type, max)) {
93
+ if (isDisabledNextDate(list[list.length - 1], type, max, includeEdgeDates)) {
92
94
  disabledDate.push('next');
93
95
  }
94
96
  return disabledDate.join(',');
95
97
  };
96
- var isDisabledArrowLeft = function isDisabledArrowLeft(date, min) {
98
+ var isDisabledArrowLeft = function isDisabledArrowLeft(date, min, includeEdgeDates) {
97
99
  var currentDate = new Date(date);
98
100
  currentDate.setDate(currentDate.getDate() - 1);
99
- return min && min >= currentDate || min && min >= date;
101
+ var disableCondition = min && (includeEdgeDates ? min > currentDate : min >= currentDate);
102
+ return disableCondition;
100
103
  };
101
- var isDisabledArrowRight = function isDisabledArrowRight(date, max) {
104
+ var isDisabledArrowRight = function isDisabledArrowRight(date, max, includeEdgeDates) {
102
105
  var currentDate = new Date(date);
103
106
  currentDate.setDate(currentDate.getDate() + 1);
104
- return max && max <= currentDate || max && max <= date;
107
+ var disableCondition = max && (includeEdgeDates ? max < currentDate : max <= currentDate);
108
+ return disableCondition;
105
109
  };
106
- var isDisabledArrowUp = function isDisabledArrowUp(date, min) {
110
+ var isDisabledArrowUp = function isDisabledArrowUp(date, min, includeEdgeDates) {
107
111
  var currentDate = new Date(date);
108
112
  currentDate.setDate(date.getDate() - 7);
109
- return min && min >= currentDate;
113
+ var disableCondition = min && (includeEdgeDates ? min > currentDate : min >= currentDate);
114
+ return disableCondition;
110
115
  };
111
- var isDisabledArrowDown = function isDisabledArrowDown(date, max) {
116
+ var isDisabledArrowDown = function isDisabledArrowDown(date, max, includeEdgeDates) {
112
117
  var currentDate = new Date(date);
113
118
  currentDate.setDate(date.getDate() + 7);
114
- return max && max <= currentDate;
119
+ var disableCondition = max && (includeEdgeDates ? max < currentDate : max <= currentDate);
120
+ return disableCondition;
115
121
  };
116
- var getDisabledArrowKey = function getDisabledArrowKey(currentDate, min, max) {
122
+ var getDisabledArrowKey = function getDisabledArrowKey(currentDate, min, max, includeEdgeDates) {
117
123
  var disabledArrowKey = [];
118
- if (isDisabledArrowLeft(currentDate, min)) {
124
+ if (isDisabledArrowLeft(currentDate, min, includeEdgeDates)) {
119
125
  disabledArrowKey.push('left');
120
126
  }
121
- if (isDisabledArrowRight(currentDate, max)) {
127
+ if (isDisabledArrowRight(currentDate, max, includeEdgeDates)) {
122
128
  disabledArrowKey.push('right');
123
129
  }
124
- if (isDisabledArrowDown(currentDate, max)) {
130
+ if (isDisabledArrowDown(currentDate, max, includeEdgeDates)) {
125
131
  disabledArrowKey.push('down');
126
132
  }
127
- if (isDisabledArrowUp(currentDate, min)) {
133
+ if (isDisabledArrowUp(currentDate, min, includeEdgeDates)) {
128
134
  disabledArrowKey.push('up');
129
135
  }
130
136
  return disabledArrowKey.join(',');
@@ -153,7 +159,7 @@ var getDatesWithModifications = function getDatesWithModifications(_ref3) {
153
159
  var date = _ref5.date;
154
160
  return date;
155
161
  });
156
- var disabledDates = getDisabledDates(datesList, type, min, max);
162
+ var disabledDates = getDisabledDates(datesList, type, min, max, includeEdgeDates);
157
163
  return dates.map(function (dateItem) {
158
164
  var date = dateItem.date;
159
165
  var year = date.year,
@@ -178,7 +184,7 @@ var getDatesWithModifications = function getDatesWithModifications(_ref3) {
178
184
  dateItem.events = eventsMap.get(keyDate);
179
185
  dateItem.disabled = disabledDatesMap.has(keyDate) || isOutOfMinMaxRange;
180
186
  dateItem.isOutOfMinMaxRange = isOutOfMinMaxRange;
181
- dateItem.disabledArrowKey = getDisabledArrowKey(currentDate, min, max);
187
+ dateItem.disabledArrowKey = getDisabledArrowKey(currentDate, min, max, includeEdgeDates);
182
188
  dateItem.disabledDates = disabledDates;
183
189
  return dateItem;
184
190
  });
@@ -1 +1 @@
1
- {"version":3,"file":"getDateWithModification.js","sources":["../../../../src/components/Calendar/utils/getDateWithModification.ts"],"sourcesContent":["import type { DateItem, DateObject, DisabledDay, EventDay } from '../Calendar.types';\nimport { CalendarState, CalendarStateType } from '../store/types';\n\nimport { getPropsMap } from './calendarGridHelper';\n\ntype GetDatesWithModificationsArgs = {\n dates: DateItem[];\n type: CalendarStateType;\n eventList?: EventDay[];\n disabledList?: DisabledDay[];\n includeEdgeDates?: boolean;\n min?: Date;\n max?: Date;\n};\n\ntype DateOperationHandler = {\n [k in CalendarStateType]: {\n [t in 'add' | 'subtract']: (date: Date) => number;\n };\n};\n\nconst dateOperationHandler: DateOperationHandler = {\n Days: {\n add: (date: Date) => date.setDate(date.getDate() + 1),\n subtract: (date: Date) => date.setDate(date.getDate() - 1),\n },\n Months: {\n add: (date: Date) => date.setMonth(date.getMonth() + 1),\n subtract: (date: Date) => date.setMonth(date.getMonth() - 1),\n },\n Quarters: {\n add: (date: Date) => date.setMonth(date.getMonth() + 3),\n subtract: (date: Date) => date.setMonth(date.getMonth() - 3),\n },\n Years: {\n add: (date: Date) => date.setFullYear(date.getFullYear() + 1),\n subtract: (date: Date) => date.setFullYear(date.getFullYear() - 1),\n },\n};\n\nconst normalizeDate = (date: Date, type: CalendarStateType) => {\n if (type === CalendarState.Months || type === CalendarState.Years) {\n date.setDate(1);\n }\n\n if (type === CalendarState.Years) {\n date.setMonth(0);\n }\n};\n\nconst isDisabledNextDate = ({ year, monthIndex, day }: DateObject, type: CalendarStateType, max?: Date) => {\n if (!max) {\n return false;\n }\n\n const maxDate = new Date(max);\n\n normalizeDate(maxDate, type);\n\n const currentDate = new Date(year, monthIndex, day);\n dateOperationHandler[type].add(currentDate);\n\n let isOut = true;\n\n while (isOut && currentDate <= maxDate) {\n isOut = maxDate <= currentDate;\n\n dateOperationHandler[type].add(currentDate);\n }\n\n return isOut;\n};\n\nconst isDisabledPreviousDate = ({ year, monthIndex, day }: DateObject, type: CalendarStateType, min?: Date) => {\n if (!min) {\n return false;\n }\n\n const minDate = new Date(min);\n\n normalizeDate(minDate, type);\n\n const currentDate = new Date(year, monthIndex, day);\n dateOperationHandler[type].subtract(currentDate);\n\n let isOut = true;\n\n while (isOut && currentDate >= minDate) {\n isOut = minDate >= currentDate;\n\n dateOperationHandler[type].subtract(currentDate);\n }\n\n return isOut;\n};\n\nconst getDisabledDates = (list: DateObject[], type: CalendarStateType, min?: Date, max?: Date) => {\n const disabledDate: string[] = [];\n\n if (isDisabledPreviousDate(list[0], type, min)) {\n disabledDate.push('previous');\n }\n\n if (isDisabledNextDate(list[list.length - 1], type, max)) {\n disabledDate.push('next');\n }\n\n return disabledDate.join(',');\n};\n\nconst isDisabledArrowLeft = (date: Date, min?: Date) => {\n const currentDate = new Date(date);\n\n currentDate.setDate(currentDate.getDate() - 1);\n\n return (min && min >= currentDate) || (min && min >= date);\n};\n\nconst isDisabledArrowRight = (date: Date, max?: Date) => {\n const currentDate = new Date(date);\n\n currentDate.setDate(currentDate.getDate() + 1);\n\n return (max && max <= currentDate) || (max && max <= date);\n};\n\nconst isDisabledArrowUp = (date: Date, min?: Date) => {\n const currentDate = new Date(date);\n\n currentDate.setDate(date.getDate() - 7);\n\n return min && min >= currentDate;\n};\n\nconst isDisabledArrowDown = (date: Date, max?: Date) => {\n const currentDate = new Date(date);\n\n currentDate.setDate(date.getDate() + 7);\n\n return max && max <= currentDate;\n};\n\nconst getDisabledArrowKey = (currentDate: Date, min?: Date, max?: Date) => {\n const disabledArrowKey: string[] = [];\n\n if (isDisabledArrowLeft(currentDate, min)) {\n disabledArrowKey.push('left');\n }\n\n if (isDisabledArrowRight(currentDate, max)) {\n disabledArrowKey.push('right');\n }\n\n if (isDisabledArrowDown(currentDate, max)) {\n disabledArrowKey.push('down');\n }\n\n if (isDisabledArrowUp(currentDate, min)) {\n disabledArrowKey.push('up');\n }\n\n return disabledArrowKey.join(',');\n};\n\n/**\n * Метод модифицирующий дату (добавляющий свойства events и disabled).\n */\nexport const getDatesWithModifications = ({\n dates,\n type,\n eventList = [],\n disabledList = [],\n includeEdgeDates,\n min,\n max,\n}: GetDatesWithModificationsArgs) => {\n const eventsMap = getPropsMap(eventList);\n const disabledDatesMap = getPropsMap(disabledList);\n\n const filteredDates =\n type === CalendarState.Days ? dates.filter(({ isDayInCurrentMonth }) => isDayInCurrentMonth) : dates;\n const datesList = filteredDates.map(({ date }) => date);\n\n const disabledDates = getDisabledDates(datesList, type, min, max);\n\n return dates.map((dateItem) => {\n const { date } = dateItem;\n const { year, monthIndex, day } = date;\n\n const keyDate = `${year}-${monthIndex}-${day}`;\n const currentDate = new Date(year, monthIndex, day);\n\n const minDate = min && new Date(min);\n minDate && normalizeDate(minDate, type);\n\n const maxDate = max && new Date(max);\n maxDate && normalizeDate(maxDate, type);\n\n let minValue: boolean | undefined;\n let maxValue: boolean | undefined;\n\n if (type === CalendarState.Days) {\n minValue = min && (includeEdgeDates ? min > currentDate : min >= currentDate);\n maxValue = max && (includeEdgeDates ? max < currentDate : max <= currentDate);\n } else {\n minValue = minDate && minDate > currentDate;\n maxValue = maxDate && maxDate < currentDate;\n }\n\n const isOutOfMinMaxRange = minValue || maxValue;\n\n dateItem.events = eventsMap.get(keyDate);\n dateItem.disabled = disabledDatesMap.has(keyDate) || isOutOfMinMaxRange;\n\n dateItem.isOutOfMinMaxRange = isOutOfMinMaxRange;\n dateItem.disabledArrowKey = getDisabledArrowKey(currentDate, min, max);\n dateItem.disabledDates = disabledDates;\n\n return dateItem;\n });\n};\n"],"names":["dateOperationHandler","Days","add","date","setDate","getDate","subtract","Months","setMonth","getMonth","Quarters","Years","setFullYear","getFullYear","normalizeDate","type","CalendarState","isDisabledNextDate","_ref","max","year","monthIndex","day","maxDate","Date","currentDate","isOut","isDisabledPreviousDate","_ref2","min","minDate","getDisabledDates","list","disabledDate","push","length","join","isDisabledArrowLeft","isDisabledArrowRight","isDisabledArrowUp","isDisabledArrowDown","getDisabledArrowKey","disabledArrowKey","getDatesWithModifications","_ref3","dates","_ref3$eventList","eventList","_ref3$disabledList","disabledList","includeEdgeDates","eventsMap","getPropsMap","disabledDatesMap","filteredDates","filter","_ref4","isDayInCurrentMonth","datesList","map","_ref5","disabledDates","dateItem","keyDate","concat","minValue","maxValue","isOutOfMinMaxRange","events","get","disabled","has"],"mappings":"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"}
1
+ {"version":3,"file":"getDateWithModification.js","sources":["../../../../src/components/Calendar/utils/getDateWithModification.ts"],"sourcesContent":["import type { DateItem, DateObject, DisabledDay, EventDay } from '../Calendar.types';\nimport { CalendarState, CalendarStateType } from '../store/types';\n\nimport { getPropsMap } from './calendarGridHelper';\n\ntype GetDatesWithModificationsArgs = {\n dates: DateItem[];\n type: CalendarStateType;\n eventList?: EventDay[];\n disabledList?: DisabledDay[];\n includeEdgeDates?: boolean;\n min?: Date;\n max?: Date;\n};\n\ntype DateOperationHandler = {\n [k in CalendarStateType]: {\n [t in 'add' | 'subtract']: (date: Date) => number;\n };\n};\n\nconst dateOperationHandler: DateOperationHandler = {\n Days: {\n add: (date: Date) => date.setDate(date.getDate() + 1),\n subtract: (date: Date) => date.setDate(date.getDate() - 1),\n },\n Months: {\n add: (date: Date) => date.setMonth(date.getMonth() + 1),\n subtract: (date: Date) => date.setMonth(date.getMonth() - 1),\n },\n Quarters: {\n add: (date: Date) => date.setMonth(date.getMonth() + 3),\n subtract: (date: Date) => date.setMonth(date.getMonth() - 3),\n },\n Years: {\n add: (date: Date) => date.setFullYear(date.getFullYear() + 1),\n subtract: (date: Date) => date.setFullYear(date.getFullYear() - 1),\n },\n};\n\nconst normalizeDate = (date: Date, type: CalendarStateType) => {\n if (type === CalendarState.Months || type === CalendarState.Years) {\n date.setDate(1);\n }\n\n if (type === CalendarState.Years) {\n date.setMonth(0);\n }\n};\n\nconst isDisabledNextDate = (\n { year, monthIndex, day }: DateObject,\n type: CalendarStateType,\n max?: Date,\n includeEdgeDates?: boolean,\n) => {\n if (!max) {\n return false;\n }\n\n const maxDate = new Date(max);\n\n normalizeDate(maxDate, type);\n\n const currentDate = new Date(year, monthIndex, day);\n dateOperationHandler[type].add(currentDate);\n\n let isOut = true;\n const maxDateCondition = includeEdgeDates ? currentDate < maxDate : currentDate <= maxDate;\n\n while (isOut && maxDateCondition) {\n isOut = false;\n\n dateOperationHandler[type].add(currentDate);\n }\n\n return isOut;\n};\n\nconst isDisabledPreviousDate = (\n { year, monthIndex, day }: DateObject,\n type: CalendarStateType,\n min?: Date,\n includeEdgeDates?: boolean,\n) => {\n if (!min) {\n return false;\n }\n\n const minDate = new Date(min);\n\n normalizeDate(minDate, type);\n\n const currentDate = new Date(year, monthIndex, day);\n dateOperationHandler[type].subtract(currentDate);\n\n let isOut = true;\n const minDateCondition = includeEdgeDates ? currentDate > minDate : currentDate >= minDate;\n\n while (isOut && minDateCondition) {\n isOut = false;\n\n dateOperationHandler[type].subtract(currentDate);\n }\n\n return isOut;\n};\n\nconst getDisabledDates = (\n list: DateObject[],\n type: CalendarStateType,\n min?: Date,\n max?: Date,\n includeEdgeDates?: boolean,\n) => {\n const disabledDate: string[] = [];\n\n if (isDisabledPreviousDate(list[0], type, min, includeEdgeDates)) {\n disabledDate.push('previous');\n }\n\n if (isDisabledNextDate(list[list.length - 1], type, max, includeEdgeDates)) {\n disabledDate.push('next');\n }\n\n return disabledDate.join(',');\n};\n\nconst isDisabledArrowLeft = (date: Date, min?: Date, includeEdgeDates?: boolean) => {\n const currentDate = new Date(date);\n\n currentDate.setDate(currentDate.getDate() - 1);\n\n const disableCondition = min && (includeEdgeDates ? min > currentDate : min >= currentDate);\n\n return disableCondition;\n};\n\nconst isDisabledArrowRight = (date: Date, max?: Date, includeEdgeDates?: boolean) => {\n const currentDate = new Date(date);\n\n currentDate.setDate(currentDate.getDate() + 1);\n\n const disableCondition = max && (includeEdgeDates ? max < currentDate : max <= currentDate);\n\n return disableCondition;\n};\n\nconst isDisabledArrowUp = (date: Date, min?: Date, includeEdgeDates?: boolean) => {\n const currentDate = new Date(date);\n\n currentDate.setDate(date.getDate() - 7);\n\n const disableCondition = min && (includeEdgeDates ? min > currentDate : min >= currentDate);\n\n return disableCondition;\n};\n\nconst isDisabledArrowDown = (date: Date, max?: Date, includeEdgeDates?: boolean) => {\n const currentDate = new Date(date);\n\n currentDate.setDate(date.getDate() + 7);\n\n const disableCondition = max && (includeEdgeDates ? max < currentDate : max <= currentDate);\n\n return disableCondition;\n};\n\nconst getDisabledArrowKey = (currentDate: Date, min?: Date, max?: Date, includeEdgeDates?: boolean) => {\n const disabledArrowKey: string[] = [];\n\n if (isDisabledArrowLeft(currentDate, min, includeEdgeDates)) {\n disabledArrowKey.push('left');\n }\n\n if (isDisabledArrowRight(currentDate, max, includeEdgeDates)) {\n disabledArrowKey.push('right');\n }\n\n if (isDisabledArrowDown(currentDate, max, includeEdgeDates)) {\n disabledArrowKey.push('down');\n }\n\n if (isDisabledArrowUp(currentDate, min, includeEdgeDates)) {\n disabledArrowKey.push('up');\n }\n\n return disabledArrowKey.join(',');\n};\n\n/**\n * Метод модифицирующий дату (добавляющий свойства events и disabled).\n */\nexport const getDatesWithModifications = ({\n dates,\n type,\n eventList = [],\n disabledList = [],\n includeEdgeDates,\n min,\n max,\n}: GetDatesWithModificationsArgs) => {\n const eventsMap = getPropsMap(eventList);\n const disabledDatesMap = getPropsMap(disabledList);\n\n const filteredDates =\n type === CalendarState.Days ? dates.filter(({ isDayInCurrentMonth }) => isDayInCurrentMonth) : dates;\n const datesList = filteredDates.map(({ date }) => date);\n\n const disabledDates = getDisabledDates(datesList, type, min, max, includeEdgeDates);\n\n return dates.map((dateItem) => {\n const { date } = dateItem;\n const { year, monthIndex, day } = date;\n\n const keyDate = `${year}-${monthIndex}-${day}`;\n const currentDate = new Date(year, monthIndex, day);\n\n const minDate = min && new Date(min);\n minDate && normalizeDate(minDate, type);\n\n const maxDate = max && new Date(max);\n maxDate && normalizeDate(maxDate, type);\n\n let minValue: boolean | undefined;\n let maxValue: boolean | undefined;\n\n if (type === CalendarState.Days) {\n minValue = min && (includeEdgeDates ? min > currentDate : min >= currentDate);\n maxValue = max && (includeEdgeDates ? max < currentDate : max <= currentDate);\n } else {\n minValue = minDate && minDate > currentDate;\n maxValue = maxDate && maxDate < currentDate;\n }\n\n const isOutOfMinMaxRange = minValue || maxValue;\n\n dateItem.events = eventsMap.get(keyDate);\n dateItem.disabled = disabledDatesMap.has(keyDate) || isOutOfMinMaxRange;\n\n dateItem.isOutOfMinMaxRange = isOutOfMinMaxRange;\n dateItem.disabledArrowKey = getDisabledArrowKey(currentDate, min, max, includeEdgeDates);\n dateItem.disabledDates = disabledDates;\n\n return dateItem;\n });\n};\n"],"names":["dateOperationHandler","Days","add","date","setDate","getDate","subtract","Months","setMonth","getMonth","Quarters","Years","setFullYear","getFullYear","normalizeDate","type","CalendarState","isDisabledNextDate","_ref","max","includeEdgeDates","year","monthIndex","day","maxDate","Date","currentDate","isOut","maxDateCondition","isDisabledPreviousDate","_ref2","min","minDate","minDateCondition","getDisabledDates","list","disabledDate","push","length","join","isDisabledArrowLeft","disableCondition","isDisabledArrowRight","isDisabledArrowUp","isDisabledArrowDown","getDisabledArrowKey","disabledArrowKey","getDatesWithModifications","_ref3","dates","_ref3$eventList","eventList","_ref3$disabledList","disabledList","eventsMap","getPropsMap","disabledDatesMap","filteredDates","filter","_ref4","isDayInCurrentMonth","datesList","map","_ref5","disabledDates","dateItem","keyDate","concat","minValue","maxValue","isOutOfMinMaxRange","events","get","disabled","has"],"mappings":"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"}
@@ -11,7 +11,7 @@ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
11
11
  var React__default = /*#__PURE__*/_interopDefault(React);
12
12
  var maskInputCompose__default = /*#__PURE__*/_interopDefault(maskInputCompose);
13
13
 
14
- var _excluded = ["maskFormat"];
14
+ var _excluded = ["mask", "maskFormat"];
15
15
  var defaultFormatChars = [{
16
16
  str: '0',
17
17
  regexp: /[0-9]/
@@ -28,7 +28,8 @@ var defaultFormatChars = [{
28
28
  var composeMask = function composeMask(InputComponent) {
29
29
  var MaskedInput = maskInputCompose__default.default(InputComponent);
30
30
  return /*#__PURE__*/React.forwardRef(function (_ref, outerRef) {
31
- var _ref$maskFormat = _ref.maskFormat,
31
+ var mask = _ref.mask,
32
+ _ref$maskFormat = _ref.maskFormat,
32
33
  maskFormat = _ref$maskFormat === void 0 ? defaultFormatChars : _ref$maskFormat,
33
34
  rest = _rollupPluginBabelHelpers.objectWithoutProperties(_ref, _excluded);
34
35
  // TODO: replace inside react-maskinput 'getReference' on 'forwardRef'
@@ -39,8 +40,14 @@ var composeMask = function composeMask(InputComponent) {
39
40
  React.useImperativeHandle(outerRef, function () {
40
41
  return ref;
41
42
  }, [ref]);
43
+ if (!mask) {
44
+ return /*#__PURE__*/React__default.default.createElement(InputComponent, _rollupPluginBabelHelpers.extends({
45
+ ref: setRef
46
+ }, rest));
47
+ }
42
48
  return /*#__PURE__*/React__default.default.createElement(MaskedInput, _rollupPluginBabelHelpers.extends({
43
49
  getReference: setRef,
50
+ mask: mask,
44
51
  maskFormat: maskFormat
45
52
  }, rest));
46
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Mask.js","sources":["../../../src/components/Mask/Mask.tsx"],"sourcesContent":["import React, { forwardRef, useImperativeHandle, useState } from 'react';\nimport type { FC } from 'react';\nimport maskInputCompose from '@salutejs/react-maskinput';\n\nimport type { CustomInputProps, MaskProps } from './Mask.types';\n\nconst defaultFormatChars = [\n {\n str: '0',\n regexp: /[0-9]/,\n },\n {\n str: '*',\n regexp: /./,\n },\n {\n str: 'a',\n regexp: /[a-zA-Z]/,\n },\n {\n str: 'я',\n regexp: /[а-яА-ЯёЁ]/,\n },\n];\n\nexport const composeMask = <T extends CustomInputProps>(InputComponent: FC<T>) => {\n const MaskedInput = maskInputCompose(InputComponent);\n\n return forwardRef<HTMLInputElement, T & MaskProps>(({ maskFormat = defaultFormatChars, ...rest }, outerRef) => {\n // TODO: replace inside react-maskinput 'getReference' on 'forwardRef'\n const [ref, setRef] = useState<HTMLInputElement | null>(null);\n\n useImperativeHandle(outerRef, () => ref as HTMLInputElement, [ref]);\n\n return <MaskedInput getReference={setRef} maskFormat={maskFormat} {...(rest as T)} />;\n });\n};\n"],"names":["defaultFormatChars","str","regexp","composeMask","InputComponent","MaskedInput","maskInputCompose","forwardRef","_ref","outerRef","_ref$maskFormat","maskFormat","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","ref","setRef","useImperativeHandle","React","createElement","_extends","getReference"],"mappings":";;;;;;;;;;;;;;AAMA,IAAMA,kBAAkB,GAAG,CACvB;AACIC,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,OAAA;AACZ,CAAC,EACD;AACID,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,GAAA;AACZ,CAAC,EACD;AACID,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,UAAA;AACZ,CAAC,EACD;AACID,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,YAAA;AACZ,CAAC,CACJ,CAAA;IAEYC,WAAW,GAAG,SAAdA,WAAWA,CAAgCC,cAAqB,EAAK;AAC9E,EAAA,IAAMC,WAAW,GAAGC,iCAAgB,CAACF,cAAc,CAAC,CAAA;AAEpD,EAAA,oBAAOG,gBAAU,CAAkC,UAAAC,IAAA,EAA+CC,QAAQ,EAAK;AAAA,IAAA,IAAAC,eAAA,GAAAF,IAAA,CAAzDG,UAAU;AAAVA,MAAAA,UAAU,GAAAD,eAAA,KAAGV,KAAAA,CAAAA,GAAAA,kBAAkB,GAAAU,eAAA;AAAKE,MAAAA,IAAI,GAAAC,iDAAA,CAAAL,IAAA,EAAAM,SAAA,CAAA,CAAA;AAC1F;AACA,IAAA,IAAAC,SAAA,GAAsBC,cAAQ,CAA0B,IAAI,CAAC;MAAAC,UAAA,GAAAC,uCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAtDI,MAAAA,GAAG,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,MAAM,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;IAElBI,yBAAmB,CAACZ,QAAQ,EAAE,YAAA;AAAA,MAAA,OAAMU,GAAG,CAAA;AAAA,KAAoB,EAAE,CAACA,GAAG,CAAC,CAAC,CAAA;AAEnE,IAAA,oBAAOG,sBAAA,CAAAC,aAAA,CAAClB,WAAW,EAAAmB,iCAAA,CAAA;AAACC,MAAAA,YAAY,EAAEL,MAAO;AAACT,MAAAA,UAAU,EAAEA,UAAAA;KAAiBC,EAAAA,IAAI,CAAS,CAAC,CAAA;AACzF,GAAC,CAAC,CAAA;AACN;;;;"}
1
+ {"version":3,"file":"Mask.js","sources":["../../../src/components/Mask/Mask.tsx"],"sourcesContent":["import React, { forwardRef, useImperativeHandle, useState } from 'react';\nimport type { FC } from 'react';\nimport maskInputCompose from '@salutejs/react-maskinput';\n\nimport type { CustomInputProps, MaskProps } from './Mask.types';\n\nconst defaultFormatChars = [\n {\n str: '0',\n regexp: /[0-9]/,\n },\n {\n str: '*',\n regexp: /./,\n },\n {\n str: 'a',\n regexp: /[a-zA-Z]/,\n },\n {\n str: 'я',\n regexp: /[а-яА-ЯёЁ]/,\n },\n];\n\nexport const composeMask = <T extends CustomInputProps>(InputComponent: FC<T>) => {\n const MaskedInput = maskInputCompose(InputComponent);\n\n return forwardRef<HTMLInputElement, T & MaskProps>(\n ({ mask, maskFormat = defaultFormatChars, ...rest }, outerRef) => {\n // TODO: replace inside react-maskinput 'getReference' on 'forwardRef'\n const [ref, setRef] = useState<HTMLInputElement | null>(null);\n\n useImperativeHandle(outerRef, () => ref as HTMLInputElement, [ref]);\n\n if (!mask) {\n return <InputComponent ref={setRef} {...(rest as T)} />;\n }\n\n return <MaskedInput getReference={setRef} mask={mask} maskFormat={maskFormat} {...(rest as T)} />;\n },\n );\n};\n"],"names":["defaultFormatChars","str","regexp","composeMask","InputComponent","MaskedInput","maskInputCompose","forwardRef","_ref","outerRef","mask","_ref$maskFormat","maskFormat","rest","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","ref","setRef","useImperativeHandle","React","createElement","_extends","getReference"],"mappings":";;;;;;;;;;;;;;AAMA,IAAMA,kBAAkB,GAAG,CACvB;AACIC,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,OAAA;AACZ,CAAC,EACD;AACID,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,GAAA;AACZ,CAAC,EACD;AACID,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,UAAA;AACZ,CAAC,EACD;AACID,EAAAA,GAAG,EAAE,GAAG;AACRC,EAAAA,MAAM,EAAE,YAAA;AACZ,CAAC,CACJ,CAAA;IAEYC,WAAW,GAAG,SAAdA,WAAWA,CAAgCC,cAAqB,EAAK;AAC9E,EAAA,IAAMC,WAAW,GAAGC,iCAAgB,CAACF,cAAc,CAAC,CAAA;AAEpD,EAAA,oBAAOG,gBAAU,CACb,UAAAC,IAAA,EAAqDC,QAAQ,EAAK;AAAA,IAAA,IAA/DC,IAAI,GAAAF,IAAA,CAAJE,IAAI;MAAAC,eAAA,GAAAH,IAAA,CAAEI,UAAU;AAAVA,MAAAA,UAAU,GAAAD,eAAA,KAAGX,KAAAA,CAAAA,GAAAA,kBAAkB,GAAAW,eAAA;AAAKE,MAAAA,IAAI,GAAAC,iDAAA,CAAAN,IAAA,EAAAO,SAAA,CAAA,CAAA;AAC7C;AACA,IAAA,IAAAC,SAAA,GAAsBC,cAAQ,CAA0B,IAAI,CAAC;MAAAC,UAAA,GAAAC,uCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAAtDI,MAAAA,GAAG,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,MAAAA,MAAM,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;IAElBI,yBAAmB,CAACb,QAAQ,EAAE,YAAA;AAAA,MAAA,OAAMW,GAAG,CAAA;AAAA,KAAoB,EAAE,CAACA,GAAG,CAAC,CAAC,CAAA;IAEnE,IAAI,CAACV,IAAI,EAAE;AACP,MAAA,oBAAOa,sBAAA,CAAAC,aAAA,CAACpB,cAAc,EAAAqB,iCAAA,CAAA;AAACL,QAAAA,GAAG,EAAEC,MAAAA;OAAaR,EAAAA,IAAI,CAAS,CAAC,CAAA;AAC3D,KAAA;AAEA,IAAA,oBAAOU,sBAAA,CAAAC,aAAA,CAACnB,WAAW,EAAAoB,iCAAA,CAAA;AAACC,MAAAA,YAAY,EAAEL,MAAO;AAACX,MAAAA,IAAI,EAAEA,IAAK;AAACE,MAAAA,UAAU,EAAEA,UAAAA;KAAiBC,EAAAA,IAAI,CAAS,CAAC,CAAA;AACrG,GACJ,CAAC,CAAA;AACL;;;;"}
@@ -18,7 +18,8 @@ var useMonths = exports.useMonths = function useMonths(_ref) {
18
18
  min = _ref.min,
19
19
  max = _ref.max,
20
20
  _ref$locale = _ref.locale,
21
- locale = _ref$locale === void 0 ? 'ru' : _ref$locale;
21
+ locale = _ref$locale === void 0 ? 'ru' : _ref$locale,
22
+ includeEdgeDates = _ref.includeEdgeDates;
22
23
  return (0, _react.useMemo)(function () {
23
24
  var months = _utils.SHORT_MONTH_NAME[locale].map(function (monthName, monthIndex) {
24
25
  return {
@@ -43,6 +44,7 @@ var useMonths = exports.useMonths = function useMonths(_ref) {
43
44
  type: _types.CalendarState.Months,
44
45
  min: min,
45
46
  max: max,
47
+ includeEdgeDates: includeEdgeDates,
46
48
  eventList: eventList,
47
49
  disabledList: disabledList
48
50
  });
@@ -16,7 +16,8 @@ var useQuarters = exports.useQuarters = function useQuarters(_ref) {
16
16
  eventList = _ref.eventList,
17
17
  disabledList = _ref.disabledList,
18
18
  min = _ref.min,
19
- max = _ref.max;
19
+ max = _ref.max,
20
+ includeEdgeDates = _ref.includeEdgeDates;
20
21
  return (0, _react.useMemo)(function () {
21
22
  var quarters = _utils.QUARTER_NAMES.map(function (quarterName) {
22
23
  var _quarterDates$quarter = _utils.quarterDates[quarterName],
@@ -42,6 +43,7 @@ var useQuarters = exports.useQuarters = function useQuarters(_ref) {
42
43
  type: _types.CalendarState.Quarters,
43
44
  min: min,
44
45
  max: max,
46
+ includeEdgeDates: includeEdgeDates,
45
47
  eventList: eventList,
46
48
  disabledList: disabledList
47
49
  });
@@ -17,7 +17,8 @@ var useYears = exports.useYears = function useYears(_ref) {
17
17
  eventList = _ref.eventList,
18
18
  disabledList = _ref.disabledList,
19
19
  min = _ref.min,
20
- max = _ref.max;
20
+ max = _ref.max,
21
+ includeEdgeDates = _ref.includeEdgeDates;
21
22
  return (0, _react.useMemo)(function () {
22
23
  // type-coverage:ignore-next-line
23
24
  var years = Array.from(Array(_utils.YEAR_RENDER_COUNT), function (_, i) {
@@ -42,6 +43,7 @@ var useYears = exports.useYears = function useYears(_ref) {
42
43
  type: _types.CalendarState.Years,
43
44
  min: min,
44
45
  max: max,
46
+ includeEdgeDates: includeEdgeDates,
45
47
  eventList: eventList,
46
48
  disabledList: disabledList
47
49
  });
@@ -48,7 +48,7 @@ var normalizeDate = function normalizeDate(date, type) {
48
48
  date.setMonth(0);
49
49
  }
50
50
  };
51
- var isDisabledNextDate = function isDisabledNextDate(_ref, type, max) {
51
+ var isDisabledNextDate = function isDisabledNextDate(_ref, type, max, includeEdgeDates) {
52
52
  var year = _ref.year,
53
53
  monthIndex = _ref.monthIndex,
54
54
  day = _ref.day;
@@ -60,13 +60,14 @@ var isDisabledNextDate = function isDisabledNextDate(_ref, type, max) {
60
60
  var currentDate = new Date(year, monthIndex, day);
61
61
  dateOperationHandler[type].add(currentDate);
62
62
  var isOut = true;
63
- while (isOut && currentDate <= maxDate) {
64
- isOut = maxDate <= currentDate;
63
+ var maxDateCondition = includeEdgeDates ? currentDate < maxDate : currentDate <= maxDate;
64
+ while (isOut && maxDateCondition) {
65
+ isOut = false;
65
66
  dateOperationHandler[type].add(currentDate);
66
67
  }
67
68
  return isOut;
68
69
  };
69
- var isDisabledPreviousDate = function isDisabledPreviousDate(_ref2, type, min) {
70
+ var isDisabledPreviousDate = function isDisabledPreviousDate(_ref2, type, min, includeEdgeDates) {
70
71
  var year = _ref2.year,
71
72
  monthIndex = _ref2.monthIndex,
72
73
  day = _ref2.day;
@@ -78,54 +79,59 @@ var isDisabledPreviousDate = function isDisabledPreviousDate(_ref2, type, min) {
78
79
  var currentDate = new Date(year, monthIndex, day);
79
80
  dateOperationHandler[type].subtract(currentDate);
80
81
  var isOut = true;
81
- while (isOut && currentDate >= minDate) {
82
- isOut = minDate >= currentDate;
82
+ var minDateCondition = includeEdgeDates ? currentDate > minDate : currentDate >= minDate;
83
+ while (isOut && minDateCondition) {
84
+ isOut = false;
83
85
  dateOperationHandler[type].subtract(currentDate);
84
86
  }
85
87
  return isOut;
86
88
  };
87
- var getDisabledDates = function getDisabledDates(list, type, min, max) {
89
+ var getDisabledDates = function getDisabledDates(list, type, min, max, includeEdgeDates) {
88
90
  var disabledDate = [];
89
- if (isDisabledPreviousDate(list[0], type, min)) {
91
+ if (isDisabledPreviousDate(list[0], type, min, includeEdgeDates)) {
90
92
  disabledDate.push('previous');
91
93
  }
92
- if (isDisabledNextDate(list[list.length - 1], type, max)) {
94
+ if (isDisabledNextDate(list[list.length - 1], type, max, includeEdgeDates)) {
93
95
  disabledDate.push('next');
94
96
  }
95
97
  return disabledDate.join(',');
96
98
  };
97
- var isDisabledArrowLeft = function isDisabledArrowLeft(date, min) {
99
+ var isDisabledArrowLeft = function isDisabledArrowLeft(date, min, includeEdgeDates) {
98
100
  var currentDate = new Date(date);
99
101
  currentDate.setDate(currentDate.getDate() - 1);
100
- return min && min >= currentDate || min && min >= date;
102
+ var disableCondition = min && (includeEdgeDates ? min > currentDate : min >= currentDate);
103
+ return disableCondition;
101
104
  };
102
- var isDisabledArrowRight = function isDisabledArrowRight(date, max) {
105
+ var isDisabledArrowRight = function isDisabledArrowRight(date, max, includeEdgeDates) {
103
106
  var currentDate = new Date(date);
104
107
  currentDate.setDate(currentDate.getDate() + 1);
105
- return max && max <= currentDate || max && max <= date;
108
+ var disableCondition = max && (includeEdgeDates ? max < currentDate : max <= currentDate);
109
+ return disableCondition;
106
110
  };
107
- var isDisabledArrowUp = function isDisabledArrowUp(date, min) {
111
+ var isDisabledArrowUp = function isDisabledArrowUp(date, min, includeEdgeDates) {
108
112
  var currentDate = new Date(date);
109
113
  currentDate.setDate(date.getDate() - 7);
110
- return min && min >= currentDate;
114
+ var disableCondition = min && (includeEdgeDates ? min > currentDate : min >= currentDate);
115
+ return disableCondition;
111
116
  };
112
- var isDisabledArrowDown = function isDisabledArrowDown(date, max) {
117
+ var isDisabledArrowDown = function isDisabledArrowDown(date, max, includeEdgeDates) {
113
118
  var currentDate = new Date(date);
114
119
  currentDate.setDate(date.getDate() + 7);
115
- return max && max <= currentDate;
120
+ var disableCondition = max && (includeEdgeDates ? max < currentDate : max <= currentDate);
121
+ return disableCondition;
116
122
  };
117
- var getDisabledArrowKey = function getDisabledArrowKey(currentDate, min, max) {
123
+ var getDisabledArrowKey = function getDisabledArrowKey(currentDate, min, max, includeEdgeDates) {
118
124
  var disabledArrowKey = [];
119
- if (isDisabledArrowLeft(currentDate, min)) {
125
+ if (isDisabledArrowLeft(currentDate, min, includeEdgeDates)) {
120
126
  disabledArrowKey.push('left');
121
127
  }
122
- if (isDisabledArrowRight(currentDate, max)) {
128
+ if (isDisabledArrowRight(currentDate, max, includeEdgeDates)) {
123
129
  disabledArrowKey.push('right');
124
130
  }
125
- if (isDisabledArrowDown(currentDate, max)) {
131
+ if (isDisabledArrowDown(currentDate, max, includeEdgeDates)) {
126
132
  disabledArrowKey.push('down');
127
133
  }
128
- if (isDisabledArrowUp(currentDate, min)) {
134
+ if (isDisabledArrowUp(currentDate, min, includeEdgeDates)) {
129
135
  disabledArrowKey.push('up');
130
136
  }
131
137
  return disabledArrowKey.join(',');
@@ -154,7 +160,7 @@ var getDatesWithModifications = exports.getDatesWithModifications = function get
154
160
  var date = _ref5.date;
155
161
  return date;
156
162
  });
157
- var disabledDates = getDisabledDates(datesList, type, min, max);
163
+ var disabledDates = getDisabledDates(datesList, type, min, max, includeEdgeDates);
158
164
  return dates.map(function (dateItem) {
159
165
  var date = dateItem.date;
160
166
  var year = date.year,
@@ -179,7 +185,7 @@ var getDatesWithModifications = exports.getDatesWithModifications = function get
179
185
  dateItem.events = eventsMap.get(keyDate);
180
186
  dateItem.disabled = disabledDatesMap.has(keyDate) || isOutOfMinMaxRange;
181
187
  dateItem.isOutOfMinMaxRange = isOutOfMinMaxRange;
182
- dateItem.disabledArrowKey = getDisabledArrowKey(currentDate, min, max);
188
+ dateItem.disabledArrowKey = getDisabledArrowKey(currentDate, min, max, includeEdgeDates);
183
189
  dateItem.disabledDates = disabledDates;
184
190
  return dateItem;
185
191
  });
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.composeMask = void 0;
8
8
  var _react = /*#__PURE__*/_interopRequireWildcard(/*#__PURE__*/require("react"));
9
9
  var _reactMaskinput = /*#__PURE__*/_interopRequireDefault(/*#__PURE__*/require("@salutejs/react-maskinput"));
10
- var _excluded = ["maskFormat"];
10
+ var _excluded = ["mask", "maskFormat"];
11
11
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
12
12
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
13
13
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
@@ -36,7 +36,8 @@ var defaultFormatChars = [{
36
36
  var composeMask = exports.composeMask = function composeMask(InputComponent) {
37
37
  var MaskedInput = (0, _reactMaskinput["default"])(InputComponent);
38
38
  return /*#__PURE__*/(0, _react.forwardRef)(function (_ref, outerRef) {
39
- var _ref$maskFormat = _ref.maskFormat,
39
+ var mask = _ref.mask,
40
+ _ref$maskFormat = _ref.maskFormat,
40
41
  maskFormat = _ref$maskFormat === void 0 ? defaultFormatChars : _ref$maskFormat,
41
42
  rest = _objectWithoutProperties(_ref, _excluded);
42
43
  // TODO: replace inside react-maskinput 'getReference' on 'forwardRef'
@@ -47,8 +48,14 @@ var composeMask = exports.composeMask = function composeMask(InputComponent) {
47
48
  (0, _react.useImperativeHandle)(outerRef, function () {
48
49
  return ref;
49
50
  }, [ref]);
51
+ if (!mask) {
52
+ return /*#__PURE__*/_react["default"].createElement(InputComponent, _extends({
53
+ ref: setRef
54
+ }, rest));
55
+ }
50
56
  return /*#__PURE__*/_react["default"].createElement(MaskedInput, _extends({
51
57
  getReference: setRef,
58
+ mask: mask,
52
59
  maskFormat: maskFormat
53
60
  }, rest));
54
61
  });