@semcore/date-picker 3.5.3 → 3.6.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 (65) hide show
  1. package/CHANGELOG.md +3 -3
  2. package/lib/cjs/DatePicker.js +7 -3
  3. package/lib/cjs/DatePicker.js.map +1 -1
  4. package/lib/cjs/DateRangePicker.js +4 -2
  5. package/lib/cjs/DateRangePicker.js.map +1 -1
  6. package/lib/cjs/MonthPicker.js +4 -2
  7. package/lib/cjs/MonthPicker.js.map +1 -1
  8. package/lib/cjs/MonthRangePicker.js +4 -2
  9. package/lib/cjs/MonthRangePicker.js.map +1 -1
  10. package/lib/cjs/components/Calendar.js +17 -17
  11. package/lib/cjs/components/InputTrigger.js +21 -20
  12. package/lib/cjs/components/InputTrigger.js.map +1 -1
  13. package/lib/cjs/components/PickerAbstract.js +25 -56
  14. package/lib/cjs/components/PickerAbstract.js.map +1 -1
  15. package/lib/cjs/components/RangePickerAbstract.js +25 -59
  16. package/lib/cjs/components/RangePickerAbstract.js.map +1 -1
  17. package/lib/cjs/components/index.js +16 -15
  18. package/lib/cjs/components/index.js.map +1 -1
  19. package/lib/cjs/index.d.js.map +1 -1
  20. package/lib/cjs/translations/__intergalactic-dynamic-locales.js +49 -0
  21. package/lib/cjs/translations/__intergalactic-dynamic-locales.js.map +1 -0
  22. package/lib/cjs/translations/de.json +4 -1
  23. package/lib/cjs/translations/en.json +4 -1
  24. package/lib/cjs/translations/es.json +4 -1
  25. package/lib/cjs/translations/fr.json +4 -1
  26. package/lib/cjs/translations/it.json +4 -1
  27. package/lib/cjs/translations/ja.json +4 -1
  28. package/lib/cjs/translations/ko.json +4 -1
  29. package/lib/cjs/translations/pt.json +4 -1
  30. package/lib/cjs/translations/tr.json +4 -1
  31. package/lib/cjs/translations/vi.json +4 -1
  32. package/lib/cjs/translations/zh.json +4 -1
  33. package/lib/es6/DatePicker.js +6 -3
  34. package/lib/es6/DatePicker.js.map +1 -1
  35. package/lib/es6/DateRangePicker.js +4 -2
  36. package/lib/es6/DateRangePicker.js.map +1 -1
  37. package/lib/es6/MonthPicker.js +4 -2
  38. package/lib/es6/MonthPicker.js.map +1 -1
  39. package/lib/es6/MonthRangePicker.js +4 -2
  40. package/lib/es6/MonthRangePicker.js.map +1 -1
  41. package/lib/es6/components/Calendar.js +17 -17
  42. package/lib/es6/components/InputTrigger.js +21 -20
  43. package/lib/es6/components/InputTrigger.js.map +1 -1
  44. package/lib/es6/components/PickerAbstract.js +25 -46
  45. package/lib/es6/components/PickerAbstract.js.map +1 -1
  46. package/lib/es6/components/RangePickerAbstract.js +25 -48
  47. package/lib/es6/components/RangePickerAbstract.js.map +1 -1
  48. package/lib/es6/components/index.js +16 -15
  49. package/lib/es6/components/index.js.map +1 -1
  50. package/lib/es6/index.d.js.map +1 -1
  51. package/lib/es6/translations/__intergalactic-dynamic-locales.js +27 -0
  52. package/lib/es6/translations/__intergalactic-dynamic-locales.js.map +1 -0
  53. package/lib/es6/translations/de.json +4 -1
  54. package/lib/es6/translations/en.json +4 -1
  55. package/lib/es6/translations/es.json +4 -1
  56. package/lib/es6/translations/fr.json +4 -1
  57. package/lib/es6/translations/it.json +4 -1
  58. package/lib/es6/translations/ja.json +4 -1
  59. package/lib/es6/translations/ko.json +4 -1
  60. package/lib/es6/translations/pt.json +4 -1
  61. package/lib/es6/translations/tr.json +4 -1
  62. package/lib/es6/translations/vi.json +4 -1
  63. package/lib/es6/translations/zh.json +4 -1
  64. package/lib/types/index.d.ts +2 -2
  65. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"RangePickerAbstract.js","names":["i18n","de","en","es","fr","it","ja","ru","zh","pt","ko","vi","tr","INTERACTION_TAGS","defaultDisplayedPeriod","Date","setHours","getEndDate","value","Array","isArray","startDate","endDate","RangePickerAbstract","dirtyValue","direction","displayedPeriod","asProps","action","date","dayjs","navigateStep","toDate","handlers","navigateView","e","target","currentTarget","highlighted","state","day","keyDiff","keyCode","setNextDisplayedPeriod","next_highlighted","right_period","month_right_period","getMonth","month_displayed_Period","subtract","length","handlerChange","preventDefault","includes","tagName","add","keyStep","setState","visible","undefined","props","size","empty","onKeyDown","handlerKeyDown","Picker","CORE_INSTANCE","periods","getDefaultPeriods","unclearable","buttons","tabIndex","children","Boolean","index","locale","Intl","DateTimeFormat","month","year","format","startOf","onClick","bindHandlerNavigateClick","disabled","onHighlightedChange","onVisibleChange","onChange","onDisplayedPeriodChange","handlerApply","getI18nText","Children","styles","providedAriaLabel","sstyled","Dropdown","defaultValue","defaultHighlighted","defaultVisible","Component","style","i18nEnhance","amount","unit","Apply","Button","Reset"],"sources":["../../../src/components/RangePickerAbstract.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, CORE_INSTANCE, sstyled } from '@semcore/core';\nimport Button from '@semcore/button';\nimport { Box, Flex } from '@semcore/flex-box';\nimport Divider from '@semcore/divider';\nimport Dropdown from '@semcore/dropdown';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport de from '../translations/de.json';\nimport en from '../translations/en.json';\nimport es from '../translations/es.json';\nimport fr from '../translations/fr.json';\nimport it from '../translations/it.json';\nimport ja from '../translations/ja.json';\nimport pt from '../translations/pt.json';\nimport ru from '../translations/ru.json';\nimport zh from '../translations/zh.json';\nimport ko from '../translations/ko.json';\nimport vi from '../translations/vi.json';\nimport tr from '../translations/tr.json';\n\nimport style from '../style/date-picker.shadow.css';\n\nconst i18n = { de, en, es, fr, it, ja, ru, zh, pt, ko, vi, tr };\n\nconst INTERACTION_TAGS = ['INPUT'];\n\nconst defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));\n\nfunction getEndDate(value) {\n if (!Array.isArray(value)) return null;\n const [startDate, endDate = startDate] = value;\n return endDate;\n}\n\nclass RangePickerAbstract extends Component {\n static displayName = 'DatePicker';\n static style = style;\n\n static defaultProps({ value, defaultValue }) {\n return {\n i18n,\n locale: 'en',\n defaultDisplayedPeriod:\n getEndDate(value) || getEndDate(defaultValue) || defaultDisplayedPeriod,\n defaultValue: [],\n defaultHighlighted: [],\n defaultVisible: false,\n disabled: [],\n size: 'm',\n };\n }\n\n static enhance = [i18nEnhance()];\n\n static add = (date, amount, unit) => {\n return dayjs(date).add(amount, unit).toDate();\n };\n\n static subtract = (date, amount, unit) => {\n return dayjs(date).subtract(amount, unit).toDate();\n };\n\n navigateStep;\n keyDiff;\n keyStep;\n\n state = {\n dirtyValue: [],\n };\n\n uncontrolledProps() {\n return {\n displayedPeriod: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.handlers.highlighted([]);\n this.setState({ dirtyValue: [] });\n this.handlers.displayedPeriod(\n getEndDate(this.asProps.value ?? undefined) || this.props.defaultDisplayedPeriod,\n );\n }\n },\n ],\n highlighted: null,\n value: [\n null,\n (value) => {\n this.handlers.visible(false);\n this.handlers.displayedPeriod(getEndDate([value[0] ?? undefined, value[1] ?? undefined]));\n },\n ],\n };\n }\n\n navigateView = (direction) => {\n const { displayedPeriod } = this.asProps;\n const action = direction >= 1 ? 'add' : 'subtract';\n const date = dayjs(displayedPeriod)[action](1, this.navigateStep).toDate();\n this.handlers.displayedPeriod(date);\n };\n\n bindHandlerNavigateClick = (direction) => () => this.navigateView(direction);\n\n handlerKeyDown = (e) => {\n if (e.target !== e.currentTarget) return;\n const { displayedPeriod, highlighted } = this.asProps;\n const { dirtyValue } = this.state;\n const day = this.keyDiff[e.keyCode];\n\n const setNextDisplayedPeriod = (next_highlighted) => {\n const [, right_period] = next_highlighted;\n\n if (right_period) {\n const month_right_period = right_period.getMonth();\n const month_displayed_Period = displayedPeriod.getMonth();\n if (month_right_period - month_displayed_Period > 1) {\n return RangePickerAbstract.subtract(right_period, 1, 'month');\n } else if (month_right_period - month_displayed_Period < 0) {\n return right_period;\n }\n }\n return displayedPeriod;\n };\n\n if (e.keyCode === 32 && highlighted.length) {\n this.handlerChange(highlighted[1] || highlighted[0]);\n e.preventDefault();\n }\n if (day) {\n if (INTERACTION_TAGS.includes(e.target.tagName)) return;\n if (highlighted.length) {\n let next_highlighted;\n if (dirtyValue.length === 1) {\n next_highlighted = [\n dirtyValue[0],\n dayjs(highlighted[1] || highlighted[0])\n .add(day, this.keyStep)\n .toDate(),\n ];\n } else {\n next_highlighted = [dayjs(highlighted[0]).add(day, this.keyStep).toDate()];\n }\n this.handlers.highlighted(next_highlighted);\n this.handlers.displayedPeriod(setNextDisplayedPeriod(next_highlighted));\n } else {\n this.handlers.highlighted([displayedPeriod]);\n }\n e.preventDefault();\n }\n };\n\n handlerApply = (value) => {\n const [startDate, endDate = startDate] = value;\n this.handlerChange([]);\n this.handlers.value([startDate, endDate]);\n };\n\n handlerChange = (date) => {\n let { dirtyValue } = this.state;\n let highlighted = [];\n if (Array.isArray(date)) {\n dirtyValue = date;\n } else if (!dirtyValue.length) {\n dirtyValue = [date];\n highlighted = [date];\n } else if (dirtyValue.length >= 2) {\n dirtyValue = [date];\n highlighted = [date];\n } else if (dirtyValue[0] > date) {\n dirtyValue = [date, dirtyValue[0]];\n } else {\n dirtyValue = [dirtyValue[0], date];\n }\n\n this.setState({ dirtyValue }, () => {\n this.handlers.highlighted(highlighted);\n });\n };\n\n getDefaultPeriods() {\n return [];\n }\n\n getTriggerProps() {\n const { value, size } = this.asProps;\n return {\n size,\n empty: !value[0] && !value[1],\n onKeyDown: this.handlerKeyDown,\n };\n }\n\n getPopperProps() {\n const Picker = this[CORE_INSTANCE];\n const { periods = this.getDefaultPeriods(), unclearable } = this.asProps;\n\n const buttons = (\n <>\n <Picker.Apply />\n {!unclearable && <Picker.Reset ml={2} />}\n </>\n );\n\n return {\n tabIndex: 0,\n onKeyDown: this.handlerKeyDown,\n children: (\n <>\n <Flex>\n <Box mr={2}>\n <Picker.Header>\n <Picker.Prev />\n <Picker.Title />\n </Picker.Header>\n <Picker.Calendar />\n </Box>\n <Box ml={2}>\n <Picker.Header>\n <Picker.Title />\n <Picker.Next />\n </Picker.Header>\n <Picker.Calendar />\n </Box>\n {Boolean(periods.length) ? (\n <>\n <Divider m=\"-16px 16px\" orientation=\"vertical\" h=\"auto\" />\n <Flex direction=\"column\">\n <Picker.Period />\n <Flex mt=\"auto\">{buttons}</Flex>\n </Flex>\n </>\n ) : (\n <Flex mt={4}>{buttons}</Flex>\n )}\n </Flex>\n </>\n ),\n };\n }\n\n getHeaderProps() {\n const Picker = this[CORE_INSTANCE];\n return {\n children: (\n <>\n <Picker.Prev />\n <Picker.Title />\n <Picker.Next />\n </>\n ),\n };\n }\n\n getTitleProps(props, index) {\n const { locale, displayedPeriod } = this.asProps;\n return {\n children: new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n dayjs(displayedPeriod).add(index, this.navigateStep).startOf(this.navigateStep).toDate(),\n ),\n };\n }\n\n getNextProps() {\n return {\n onClick: this.bindHandlerNavigateClick(1),\n };\n }\n\n getPrevProps() {\n return {\n onClick: this.bindHandlerNavigateClick(-1),\n };\n }\n\n getCalendarProps(props, index) {\n const {\n locale,\n displayedPeriod,\n disabled,\n value,\n highlighted,\n onHighlightedChange,\n onVisibleChange,\n } = this.asProps;\n const { dirtyValue } = this.state;\n\n return {\n locale,\n displayedPeriod: dayjs(displayedPeriod)\n .add(index, this.navigateStep)\n .startOf(this.navigateStep)\n .toDate(),\n disabled,\n highlighted,\n onHighlightedChange,\n onVisibleChange,\n value: dirtyValue.length ? dirtyValue : value,\n onChange: this.handlerChange,\n };\n }\n\n getPeriodProps() {\n const {\n periods = this.getDefaultPeriods(),\n value,\n onHighlightedChange,\n onDisplayedPeriodChange,\n } = this.asProps;\n const { dirtyValue } = this.state;\n return {\n periods,\n value: dirtyValue.length ? dirtyValue : value,\n onChange: this.handlerApply,\n onHighlightedChange,\n onDisplayedPeriodChange,\n };\n }\n\n getApplyProps() {\n const { value, getI18nText } = this.asProps;\n const { dirtyValue } = this.state;\n return {\n getI18nText,\n onClick: () => this.handlerApply(dirtyValue.length ? dirtyValue : value),\n };\n }\n\n getResetProps() {\n const { getI18nText } = this.asProps;\n return {\n getI18nText,\n onClick: () => this.handlerApply([]),\n };\n }\n\n render() {\n const { Children, styles, 'aria-label': providedAriaLabel } = this.asProps;\n\n return sstyled(styles)(\n <Root\n render={Dropdown}\n use:aria-label={providedAriaLabel}\n interaction=\"focus\"\n __excludeProps={['onChange', 'value']}\n >\n <Children />\n </Root>,\n );\n }\n}\n\nfunction Apply(props) {\n const { getI18nText } = props;\n return <Root render={Button} use=\"primary\" children={getI18nText('apply')} />;\n}\n\nfunction Reset(props) {\n const { getI18nText } = props;\n return <Root render={Button} use=\"tertiary\" theme=\"muted\" children={getI18nText('reset')} />;\n}\n\nexport { Apply, Reset };\n\nexport default RangePickerAbstract;\n"],"mappings":"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"}
1
+ {"version":3,"file":"RangePickerAbstract.js","names":["INTERACTION_TAGS","defaultDisplayedPeriod","Date","setHours","getEndDate","value","Array","isArray","startDate","endDate","RangePickerAbstract","dirtyValue","direction","displayedPeriod","asProps","action","date","dayjs","navigateStep","toDate","handlers","navigateView","e","target","currentTarget","highlighted","state","day","keyDiff","keyCode","setNextDisplayedPeriod","next_highlighted","right_period","month_right_period","getMonth","month_displayed_Period","subtract","length","handlerChange","preventDefault","includes","tagName","add","keyStep","setState","visible","undefined","props","size","empty","onKeyDown","handlerKeyDown","Picker","CORE_INSTANCE","periods","getDefaultPeriods","unclearable","buttons","tabIndex","children","Boolean","index","locale","Intl","DateTimeFormat","month","year","format","startOf","onClick","bindHandlerNavigateClick","getI18nText","disabled","onHighlightedChange","onVisibleChange","onChange","onDisplayedPeriodChange","handlerApply","Children","styles","providedAriaLabel","sstyled","Dropdown","defaultValue","i18n","localizedMessages","defaultHighlighted","defaultVisible","Component","style","i18nEnhance","amount","unit","Apply","Button","Reset"],"sources":["../../../src/components/RangePickerAbstract.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, CORE_INSTANCE, sstyled } from '@semcore/core';\nimport Button from '@semcore/button';\nimport { Box, Flex } from '@semcore/flex-box';\nimport Divider from '@semcore/divider';\nimport Dropdown from '@semcore/dropdown';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from '../translations/__intergalactic-dynamic-locales';\n\nimport style from '../style/date-picker.shadow.css';\n\nconst INTERACTION_TAGS = ['INPUT'];\n\nconst defaultDisplayedPeriod = new Date(new Date().setHours(0, 0, 0, 0));\n\nfunction getEndDate(value) {\n if (!Array.isArray(value)) return null;\n const [startDate, endDate = startDate] = value;\n return endDate;\n}\n\nclass RangePickerAbstract extends Component {\n static displayName = 'DatePicker';\n static style = style;\n\n static defaultProps({ value, defaultValue }) {\n return {\n i18n: localizedMessages,\n locale: 'en',\n defaultDisplayedPeriod:\n getEndDate(value) || getEndDate(defaultValue) || defaultDisplayedPeriod,\n defaultValue: [],\n defaultHighlighted: [],\n defaultVisible: false,\n disabled: [],\n size: 'm',\n };\n }\n\n static enhance = [i18nEnhance(localizedMessages)];\n\n static add = (date, amount, unit) => {\n return dayjs(date).add(amount, unit).toDate();\n };\n\n static subtract = (date, amount, unit) => {\n return dayjs(date).subtract(amount, unit).toDate();\n };\n\n navigateStep;\n keyDiff;\n keyStep;\n\n state = {\n dirtyValue: [],\n };\n\n uncontrolledProps() {\n return {\n displayedPeriod: null,\n visible: [\n null,\n (visible) => {\n if (!visible) {\n this.handlers.highlighted([]);\n this.setState({ dirtyValue: [] });\n this.handlers.displayedPeriod(\n getEndDate(this.asProps.value ?? undefined) || this.props.defaultDisplayedPeriod,\n );\n }\n },\n ],\n highlighted: null,\n value: [\n null,\n (value) => {\n this.handlers.visible(false);\n this.handlers.displayedPeriod(getEndDate([value[0] ?? undefined, value[1] ?? undefined]));\n },\n ],\n };\n }\n\n navigateView = (direction) => {\n const { displayedPeriod } = this.asProps;\n const action = direction >= 1 ? 'add' : 'subtract';\n const date = dayjs(displayedPeriod)[action](1, this.navigateStep).toDate();\n this.handlers.displayedPeriod(date);\n };\n\n bindHandlerNavigateClick = (direction) => () => this.navigateView(direction);\n\n handlerKeyDown = (e) => {\n if (e.target !== e.currentTarget) return;\n const { displayedPeriod, highlighted } = this.asProps;\n const { dirtyValue } = this.state;\n const day = this.keyDiff[e.keyCode];\n\n const setNextDisplayedPeriod = (next_highlighted) => {\n const [, right_period] = next_highlighted;\n\n if (right_period) {\n const month_right_period = right_period.getMonth();\n const month_displayed_Period = displayedPeriod.getMonth();\n if (month_right_period - month_displayed_Period > 1) {\n return RangePickerAbstract.subtract(right_period, 1, 'month');\n } else if (month_right_period - month_displayed_Period < 0) {\n return right_period;\n }\n }\n return displayedPeriod;\n };\n\n if (e.keyCode === 32 && highlighted.length) {\n this.handlerChange(highlighted[1] || highlighted[0]);\n e.preventDefault();\n }\n if (day) {\n if (INTERACTION_TAGS.includes(e.target.tagName)) return;\n if (highlighted.length) {\n let next_highlighted;\n if (dirtyValue.length === 1) {\n next_highlighted = [\n dirtyValue[0],\n dayjs(highlighted[1] || highlighted[0])\n .add(day, this.keyStep)\n .toDate(),\n ];\n } else {\n next_highlighted = [dayjs(highlighted[0]).add(day, this.keyStep).toDate()];\n }\n this.handlers.highlighted(next_highlighted);\n this.handlers.displayedPeriod(setNextDisplayedPeriod(next_highlighted));\n } else {\n this.handlers.highlighted([displayedPeriod]);\n }\n e.preventDefault();\n }\n };\n\n handlerApply = (value) => {\n const [startDate, endDate = startDate] = value;\n this.handlerChange([]);\n this.handlers.value([startDate, endDate]);\n };\n\n handlerChange = (date) => {\n let { dirtyValue } = this.state;\n let highlighted = [];\n if (Array.isArray(date)) {\n dirtyValue = date;\n } else if (!dirtyValue.length) {\n dirtyValue = [date];\n highlighted = [date];\n } else if (dirtyValue.length >= 2) {\n dirtyValue = [date];\n highlighted = [date];\n } else if (dirtyValue[0] > date) {\n dirtyValue = [date, dirtyValue[0]];\n } else {\n dirtyValue = [dirtyValue[0], date];\n }\n\n this.setState({ dirtyValue }, () => {\n this.handlers.highlighted(highlighted);\n });\n };\n\n getDefaultPeriods() {\n return [];\n }\n\n getTriggerProps() {\n const { value, size } = this.asProps;\n return {\n size,\n empty: !value[0] && !value[1],\n onKeyDown: this.handlerKeyDown,\n };\n }\n\n getPopperProps() {\n const Picker = this[CORE_INSTANCE];\n const { periods = this.getDefaultPeriods(), unclearable } = this.asProps;\n\n const buttons = (\n <>\n <Picker.Apply />\n {!unclearable && <Picker.Reset ml={2} />}\n </>\n );\n\n return {\n tabIndex: 0,\n onKeyDown: this.handlerKeyDown,\n children: (\n <>\n <Flex>\n <Box mr={2}>\n <Picker.Header>\n <Picker.Prev />\n <Picker.Title />\n </Picker.Header>\n <Picker.Calendar />\n </Box>\n <Box ml={2}>\n <Picker.Header>\n <Picker.Title />\n <Picker.Next />\n </Picker.Header>\n <Picker.Calendar />\n </Box>\n {Boolean(periods.length) ? (\n <>\n <Divider m=\"-16px 16px\" orientation=\"vertical\" h=\"auto\" />\n <Flex direction=\"column\">\n <Picker.Period />\n <Flex mt=\"auto\">{buttons}</Flex>\n </Flex>\n </>\n ) : (\n <Flex mt={4}>{buttons}</Flex>\n )}\n </Flex>\n </>\n ),\n };\n }\n\n getHeaderProps() {\n const Picker = this[CORE_INSTANCE];\n return {\n children: (\n <>\n <Picker.Prev />\n <Picker.Title />\n <Picker.Next />\n </>\n ),\n };\n }\n\n getTitleProps(props, index) {\n const { locale, displayedPeriod } = this.asProps;\n return {\n children: new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n dayjs(displayedPeriod).add(index, this.navigateStep).startOf(this.navigateStep).toDate(),\n ),\n };\n }\n\n getNextProps() {\n return {\n onClick: this.bindHandlerNavigateClick(1),\n getI18nText: this.asProps.getI18nText,\n };\n }\n\n getPrevProps() {\n return {\n onClick: this.bindHandlerNavigateClick(-1),\n getI18nText: this.asProps.getI18nText,\n };\n }\n\n getCalendarProps(props, index) {\n const {\n locale,\n displayedPeriod,\n disabled,\n value,\n highlighted,\n onHighlightedChange,\n onVisibleChange,\n } = this.asProps;\n const { dirtyValue } = this.state;\n\n return {\n locale,\n displayedPeriod: dayjs(displayedPeriod)\n .add(index, this.navigateStep)\n .startOf(this.navigateStep)\n .toDate(),\n disabled,\n highlighted,\n onHighlightedChange,\n onVisibleChange,\n value: dirtyValue.length ? dirtyValue : value,\n onChange: this.handlerChange,\n };\n }\n\n getPeriodProps() {\n const {\n periods = this.getDefaultPeriods(),\n value,\n onHighlightedChange,\n onDisplayedPeriodChange,\n } = this.asProps;\n const { dirtyValue } = this.state;\n return {\n periods,\n value: dirtyValue.length ? dirtyValue : value,\n onChange: this.handlerApply,\n onHighlightedChange,\n onDisplayedPeriodChange,\n };\n }\n\n getApplyProps() {\n const { value, getI18nText } = this.asProps;\n const { dirtyValue } = this.state;\n return {\n getI18nText,\n onClick: () => this.handlerApply(dirtyValue.length ? dirtyValue : value),\n };\n }\n\n getResetProps() {\n const { getI18nText } = this.asProps;\n return {\n getI18nText,\n onClick: () => this.handlerApply([]),\n };\n }\n\n render() {\n const { Children, styles, 'aria-label': providedAriaLabel } = this.asProps;\n\n return sstyled(styles)(\n <Root\n render={Dropdown}\n use:aria-label={providedAriaLabel}\n interaction=\"focus\"\n __excludeProps={['onChange', 'value']}\n >\n <Children />\n </Root>,\n );\n }\n}\n\nfunction Apply(props) {\n const { getI18nText } = props;\n return <Root render={Button} use=\"primary\" children={getI18nText('apply')} />;\n}\n\nfunction Reset(props) {\n const { getI18nText } = props;\n return <Root render={Button} use=\"tertiary\" theme=\"muted\" children={getI18nText('reset')} />;\n}\n\nexport { Apply, Reset };\n\nexport default RangePickerAbstract;\n"],"mappings":"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"}
@@ -94,8 +94,7 @@ function Popper(props) {
94
94
 
95
95
  var SPopper = _dropdown["default"].Popper;
96
96
  return _ref9 = (0, _core.sstyled)(props.styles), /*#__PURE__*/_react["default"].createElement(SPopper, _ref9.cn("SPopper", _objectSpread({}, (0, _core.assignProps)({
97
- "role": "region",
98
- "aria-label": "calendar-container"
97
+ "role": "region"
99
98
  }, _ref3))));
100
99
  }
101
100
 
@@ -119,14 +118,15 @@ var Title = function Title(_ref13) {
119
118
 
120
119
  exports.Title = Title;
121
120
 
122
- function Prev() {
121
+ function Prev(_ref14) {
123
122
  var _ref6 = arguments[0];
123
+ var getI18nText = _ref14.getI18nText;
124
124
  return /*#__PURE__*/_react["default"].createElement(_button["default"], (0, _core.assignProps)({
125
125
  "use": "tertiary",
126
126
  "theme": "muted",
127
127
  "size": "l",
128
128
  "tabIndex": -1,
129
- "aria-label": "Prev period"
129
+ "aria-label": getI18nText('prev')
130
130
  }, _ref6));
131
131
  }
132
132
 
@@ -134,14 +134,15 @@ Prev.defaultProps = {
134
134
  children: /*#__PURE__*/_react["default"].createElement(_m["default"], null)
135
135
  };
136
136
 
137
- function Next() {
137
+ function Next(_ref15) {
138
138
  var _ref7 = arguments[0];
139
+ var getI18nText = _ref15.getI18nText;
139
140
  return /*#__PURE__*/_react["default"].createElement(_button["default"], (0, _core.assignProps)({
140
141
  "use": "tertiary",
141
142
  "theme": "muted",
142
143
  "size": "l",
143
144
  "tabIndex": -1,
144
- "aria-label": "Next period"
145
+ "aria-label": getI18nText('next')
145
146
  }, _ref7));
146
147
  }
147
148
 
@@ -152,12 +153,12 @@ var stylesBtn = (
152
153
  /*__reshadow_css_start__*/
153
154
  _core.sstyled.insert(
154
155
  /*__inner_css_start__*/
155
- ".___SInner_yc1hj_gg_{justify-content:flex-start}"
156
+ ".___SInner_zkskj_gg_{justify-content:flex-start}"
156
157
  /*__inner_css_end__*/
157
- , "yc1hj_gg_")
158
+ , "zkskj_gg_")
158
159
  /*__reshadow_css_end__*/
159
160
  , {
160
- "__SInner": "___SInner_yc1hj_gg_"
161
+ "__SInner": "___SInner_zkskj_gg_"
161
162
  });
162
163
 
163
164
  var Period = /*#__PURE__*/function (_Component) {
@@ -210,12 +211,12 @@ var Period = /*#__PURE__*/function (_Component) {
210
211
  periods = _this$asProps.periods,
211
212
  onHighlightedChange = _this$asProps.onHighlightedChange,
212
213
  onDisplayedPeriodChange = _this$asProps.onDisplayedPeriodChange;
213
- return _ref12 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SPeriod, _ref12.cn("SPeriod", _objectSpread({}, (0, _core.assignProps)({}, _ref8))), periods.map(function (_ref14, i) {
214
- var period = _ref14.value,
215
- onClick = _ref14.onClick,
216
- onMouseEnter = _ref14.onMouseEnter,
217
- onMouseLeave = _ref14.onMouseLeave,
218
- other = (0, _objectWithoutProperties2["default"])(_ref14, _excluded);
214
+ return _ref12 = (0, _core.sstyled)(styles), /*#__PURE__*/_react["default"].createElement(SPeriod, _ref12.cn("SPeriod", _objectSpread({}, (0, _core.assignProps)({}, _ref8))), periods.map(function (_ref16, i) {
215
+ var period = _ref16.value,
216
+ onClick = _ref16.onClick,
217
+ onMouseEnter = _ref16.onMouseEnter,
218
+ onMouseLeave = _ref16.onMouseLeave,
219
+ other = (0, _objectWithoutProperties2["default"])(_ref16, _excluded);
219
220
  return /*#__PURE__*/_react["default"].createElement(_button["default"], (0, _extends2["default"])({
220
221
  use: "tertiary",
221
222
  theme: "muted",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["Trigger","Dropdown","ButtonTrigger","InputTrigger","InputTriggerBase","Indicator","MaskedInput","Addon","SingleDateInput","DateRange","DateRangeFromInput","DateRangeToInput","Popper","props","SPopper","sstyled","styles","Header","SHeader","Box","Title","Children","STitle","Prev","Button","defaultProps","children","Next","stylesBtn","Period","period","value","compareMonth","monthOne","monthTwo","dayjs","isSame","Array","isArray","length","SPeriod","asProps","onChange","periods","onHighlightedChange","onDisplayedPeriodChange","map","i","onClick","onMouseEnter","onMouseLeave","other","getActiveControl","callAllEventHandlers","toDate","Date","Component"],"sources":["../../../src/components/index.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport Dropdown from '@semcore/dropdown';\nimport { Box } from '@semcore/flex-box';\nimport Button from '@semcore/button';\nimport ChevronLeft from '@semcore/icon/ChevronLeft/m';\nimport ChevronRight from '@semcore/icon/ChevronRight/m';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport ButtonTrigger from './ButtonTrigger';\nimport InputTriggerBase from './InputTrigger';\n\n/** @deprecated `DatePicker.Trigger` is deprecated, consider migrating to `DatePicker.InputTrigger` instead */\nexport function Trigger() {\n return <Root render={Dropdown.Trigger} tag={ButtonTrigger} />;\n}\n\nexport function InputTrigger() {\n return (\n <Root\n render={Dropdown.Trigger}\n tag={InputTriggerBase}\n __excludeProps={['role', 'aria-haspopup', 'onChange', 'value']}\n />\n );\n}\nInputTrigger.Indicator = InputTriggerBase.Indicator;\nInputTrigger.MaskedInput = InputTriggerBase.MaskedInput;\nInputTrigger.Addon = InputTriggerBase.Addon;\nInputTrigger.SingleDateInput = InputTriggerBase.SingleDateInput;\nInputTrigger.DateRange = InputTriggerBase.DateRange;\nInputTrigger.DateRangeFromInput = InputTriggerBase.DateRangeFromInput;\nInputTrigger.DateRangeToInput = InputTriggerBase.DateRangeToInput;\n\nexport function Popper(props) {\n const SPopper = Root;\n return sstyled(props.styles)(\n <SPopper render={Dropdown.Popper} role=\"region\" aria-label=\"calendar-container\" />,\n );\n}\n\nexport function Header(props) {\n const SHeader = Root;\n return sstyled(props.styles)(<SHeader render={Box} />);\n}\n\nexport const Title = ({ Children, styles }) => {\n const STitle = Root;\n return sstyled(styles)(\n <STitle render={Box}>\n <Children />\n </STitle>,\n );\n};\n\nexport function Prev() {\n return (\n <Root\n render={Button}\n use=\"tertiary\"\n theme=\"muted\"\n size=\"l\"\n tabIndex={-1}\n aria-label=\"Prev period\"\n />\n );\n}\n\nPrev.defaultProps = {\n children: <ChevronLeft />,\n};\n\nexport function Next() {\n return (\n <Root\n render={Button}\n use=\"tertiary\"\n theme=\"muted\"\n size=\"l\"\n tabIndex={-1}\n aria-label=\"Next period\"\n />\n );\n}\n\nNext.defaultProps = {\n children: <ChevronRight />,\n};\n\nconst stylesBtn = sstyled.css`\n SInner {\n justify-content: flex-start;\n }\n`;\n\nexport class Period extends Component {\n getActiveControl = (period = [], value) => {\n function compareMonth(monthOne, monthTwo) {\n return dayjs(monthOne).isSame(dayjs(monthTwo), 'date');\n }\n\n if (!period || !value) return false;\n if (Array.isArray(value) && period.length !== value.length) return false;\n if (Array.isArray(value)) {\n return compareMonth(period[0], value[0]) && compareMonth(period[1], value[1]);\n }\n\n return compareMonth(period[0], value);\n };\n\n render() {\n const SPeriod = Root;\n const { styles, value, onChange, periods, onHighlightedChange, onDisplayedPeriodChange } =\n this.asProps;\n\n return sstyled(styles)(\n <SPeriod render={Box}>\n {periods.map(({ value: period, onClick, onMouseEnter, onMouseLeave, ...other }, i) => (\n <Button\n use=\"tertiary\"\n theme=\"muted\"\n styles={stylesBtn}\n key={i}\n active={this.getActiveControl(period, value)}\n onClick={callAllEventHandlers(onClick, () => onChange(period))}\n onMouseEnter={callAllEventHandlers(onMouseEnter, () => {\n onHighlightedChange(period);\n onDisplayedPeriodChange(dayjs(period[0]).toDate());\n })}\n onMouseLeave={callAllEventHandlers(onMouseLeave, () => {\n onHighlightedChange([]);\n onDisplayedPeriodChange(value[0] ? dayjs(value[0]).toDate() : new Date());\n })}\n {...other}\n />\n ))}\n </SPeriod>,\n );\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["Trigger","Dropdown","ButtonTrigger","InputTrigger","InputTriggerBase","Indicator","MaskedInput","Addon","SingleDateInput","DateRange","DateRangeFromInput","DateRangeToInput","Popper","props","SPopper","sstyled","styles","Header","SHeader","Box","Title","Children","STitle","Prev","getI18nText","Button","defaultProps","children","Next","stylesBtn","Period","period","value","compareMonth","monthOne","monthTwo","dayjs","isSame","Array","isArray","length","SPeriod","asProps","onChange","periods","onHighlightedChange","onDisplayedPeriodChange","map","i","onClick","onMouseEnter","onMouseLeave","other","getActiveControl","callAllEventHandlers","toDate","Date","Component"],"sources":["../../../src/components/index.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport { Component, Root, sstyled } from '@semcore/core';\nimport Dropdown from '@semcore/dropdown';\nimport { Box } from '@semcore/flex-box';\nimport Button from '@semcore/button';\nimport ChevronLeft from '@semcore/icon/ChevronLeft/m';\nimport ChevronRight from '@semcore/icon/ChevronRight/m';\nimport { callAllEventHandlers } from '@semcore/utils/lib/assignProps';\nimport ButtonTrigger from './ButtonTrigger';\nimport InputTriggerBase from './InputTrigger';\n\n/** @deprecated `DatePicker.Trigger` is deprecated, consider migrating to `DatePicker.InputTrigger` instead */\nexport function Trigger() {\n return <Root render={Dropdown.Trigger} tag={ButtonTrigger} />;\n}\n\nexport function InputTrigger() {\n return (\n <Root\n render={Dropdown.Trigger}\n tag={InputTriggerBase}\n __excludeProps={['role', 'aria-haspopup', 'onChange', 'value']}\n />\n );\n}\nInputTrigger.Indicator = InputTriggerBase.Indicator;\nInputTrigger.MaskedInput = InputTriggerBase.MaskedInput;\nInputTrigger.Addon = InputTriggerBase.Addon;\nInputTrigger.SingleDateInput = InputTriggerBase.SingleDateInput;\nInputTrigger.DateRange = InputTriggerBase.DateRange;\nInputTrigger.DateRangeFromInput = InputTriggerBase.DateRangeFromInput;\nInputTrigger.DateRangeToInput = InputTriggerBase.DateRangeToInput;\n\nexport function Popper(props) {\n const SPopper = Root;\n return sstyled(props.styles)(<SPopper render={Dropdown.Popper} role=\"region\" />);\n}\n\nexport function Header(props) {\n const SHeader = Root;\n return sstyled(props.styles)(<SHeader render={Box} />);\n}\n\nexport const Title = ({ Children, styles }) => {\n const STitle = Root;\n return sstyled(styles)(\n <STitle render={Box}>\n <Children />\n </STitle>,\n );\n};\n\nexport function Prev({ getI18nText }) {\n return (\n <Root\n render={Button}\n use=\"tertiary\"\n theme=\"muted\"\n size=\"l\"\n tabIndex={-1}\n aria-label={getI18nText('prev')}\n />\n );\n}\n\nPrev.defaultProps = {\n children: <ChevronLeft />,\n};\n\nexport function Next({ getI18nText }) {\n return (\n <Root\n render={Button}\n use=\"tertiary\"\n theme=\"muted\"\n size=\"l\"\n tabIndex={-1}\n aria-label={getI18nText('next')}\n />\n );\n}\n\nNext.defaultProps = {\n children: <ChevronRight />,\n};\n\nconst stylesBtn = sstyled.css`\n SInner {\n justify-content: flex-start;\n }\n`;\n\nexport class Period extends Component {\n getActiveControl = (period = [], value) => {\n function compareMonth(monthOne, monthTwo) {\n return dayjs(monthOne).isSame(dayjs(monthTwo), 'date');\n }\n\n if (!period || !value) return false;\n if (Array.isArray(value) && period.length !== value.length) return false;\n if (Array.isArray(value)) {\n return compareMonth(period[0], value[0]) && compareMonth(period[1], value[1]);\n }\n\n return compareMonth(period[0], value);\n };\n\n render() {\n const SPeriod = Root;\n const { styles, value, onChange, periods, onHighlightedChange, onDisplayedPeriodChange } =\n this.asProps;\n\n return sstyled(styles)(\n <SPeriod render={Box}>\n {periods.map(({ value: period, onClick, onMouseEnter, onMouseLeave, ...other }, i) => (\n <Button\n use=\"tertiary\"\n theme=\"muted\"\n styles={stylesBtn}\n key={i}\n active={this.getActiveControl(period, value)}\n onClick={callAllEventHandlers(onClick, () => onChange(period))}\n onMouseEnter={callAllEventHandlers(onMouseEnter, () => {\n onHighlightedChange(period);\n onDisplayedPeriodChange(dayjs(period[0]).toDate());\n })}\n onMouseLeave={callAllEventHandlers(onMouseLeave, () => {\n onHighlightedChange([]);\n onDisplayedPeriodChange(value[0] ? dayjs(value[0]).toDate() : new Date());\n })}\n {...other}\n />\n ))}\n </SPeriod>,\n );\n }\n}\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React, { ChangeEvent, ComponentProps } from 'react';\nimport dayjs from 'dayjs';\nimport { Box, IBoxProps } from '@semcore/flex-box';\nimport Button from '@semcore/button';\nimport { CProps, Merge, PropGetterFn, ReturnEl } from '@semcore/core';\nimport Dropdown, { IDropdownProps } from '@semcore/dropdown';\nimport { IWithI18nEnhanceProps } from '@semcore/utils/lib/enhances/i18nEnhance';\nimport BaseTrigger from '@semcore/base-trigger';\nimport Input from '@semcore/input';\nimport InputMask from '@semcore/input-mask';\n\nexport type DateConstructorParams = string | number | Date;\n\nexport interface ICalendarProps extends IBoxProps {\n /**\n * Locale for displaying the days of a week and months, to be transferred to `Intl`\n * @default en\n * */\n locale?: NavigatorLanguage['language'];\n /**\n * Array of dates blocked for selection\n * Accepts the date or the range of dates for specifying infinity ([Date | false, Date | false]), crontab(6,7)\n * */\n disabled?: (Date | (Date | false)[] | string)[];\n /**\n * @ignore\n * */\n highlighted?: DateConstructorParams[];\n /**\n * @ignore\n * */\n onHighlightedChange?: (date: Date[]) => void;\n /**\n * The selected date, accepts everything which is accepted by `new Date()`\n * */\n value?: DateConstructorParams[];\n /**\n * To be activated upon selecting the date\n * */\n onChange?: (date: Date[]) => void;\n /**\n * Date for showing the necessary month\n * @default new Date()\n * */\n displayedPeriod?: Date;\n}\n\nexport interface ICalendarDaysContext {\n days: ICalendarUnitProps[];\n}\n\nexport interface ICalendarMonthsContext {\n months: ICalendarUnitProps[];\n}\n\nexport interface ICalendarUnitProps extends IBoxProps {\n selected?: boolean;\n outdated?: boolean;\n disabled?: boolean;\n today?: boolean;\n startSelected?: boolean;\n endSelected?: boolean;\n highlighted?: boolean;\n startHighlighted?: boolean;\n endHighlighted?: boolean;\n children?: React.ReactNode;\n}\n\nexport interface ICalendarContext {\n getUnitProps: PropGetterFn;\n}\n\ndeclare const Calendar: (<T>(\n props: CProps<ICalendarProps & T, ICalendarContext, IAbstractDatePickerHandlers>,\n) => ReturnEl) & {\n Unit: <T>(props: ICalendarUnitProps & T) => ReturnEl;\n};\n\nexport interface IDatePickerProps extends IDropdownProps, IWithI18nEnhanceProps {\n /**\n * The selected date, accepts everything which is accepted by `new Date()`\n * */\n value?: DateConstructorParams;\n /**\n * To be activated upon selecting the date\n * */\n onChange?: (date: Date) => void;\n /**\n * Array of dates blocked for selection\n * */\n disabled?: (Date | (Date | false)[] | string)[];\n /**\n * Date for showing the necessary month\n * @default new Date()\n * */\n displayedPeriod?: DateConstructorParams;\n /**\n * To be activated upon changing the current shown month\n * */\n onDisplayedPeriodChange?: (date: Date) => void;\n /**\n * Component size\n * @default m\n */\n size?: 'm' | 'l';\n /**\n * The selected date, accepts everything which is accepted by `new Date()`\n * */\n highlighted?: DateConstructorParams[];\n /**\n * Default value selected date, accepts everything which is accepted by `new Date()`\n * */\n defaultValue?: DateConstructorParams;\n /**\n * Default value date for showing the necessary month\n * */\n defaultDisplayedPeriod?: DateConstructorParams;\n /**\n * Default value selected date, accepts everything which is accepted by `new Date()`\n * */\n defaultHighlighted?: DateConstructorParams[];\n}\n\nexport interface IDateRangePickerProps extends IDropdownProps, IWithI18nEnhanceProps {\n /**\n * The selected date, accepts everything which is accepted by `new Date()`\n * */\n value?: DateConstructorParams[];\n /**\n * Default value selected date, accepts everything which is accepted by `new Date()`\n * */\n defaultValue?: DateConstructorParams[];\n /**\n * Default value date for showing the necessary month\n * */\n defaultDisplayedPeriod?: DateConstructorParams;\n /**\n * Default value selected date, accepts everything which is accepted by `new Date()`\n * */\n defaultHighlighted?: DateConstructorParams[];\n /**\n * To be activated upon selecting the date\n * */\n onChange?: (date: Date[]) => void;\n /**\n * Array of dates blocked for selection\n * */\n disabled?: (Date | (Date | false)[] | string)[];\n /**\n * Date for showing the necessary month\n * @default new Date()\n * */\n displayedPeriod?: DateConstructorParams;\n /**\n * To be activated upon changing the current shown month\n * */\n onDisplayedPeriodChange?: (date: Date) => void;\n /**\n * Component size\n * @default m\n */\n size?: 'm' | 'l' | 'xl';\n /**\n * The selected date, accepts everything which is accepted by `new Date()`\n * */\n highlighted?: DateConstructorParams[];\n /**\n * Remove the 'Reset' button\n * */\n unclearable?: boolean;\n /**\n * To be activated upon selecting the date\n * */\n onHighlightedChange?: (date: Date[]) => void;\n /**\n * Array of periods\n * [{value: [new Date(), new Date()], children: \"Today\"}]\n * @default Past 2 days / Past week / Past 2 week / Past month / Past 2 month\n * */\n periods?: (ComponentProps<typeof Button> & { value: Date[] })[];\n}\n\nexport interface IDateRangePickerPeriodProps extends IBoxProps {\n /**\n * Current selected period\n * */\n value?: DateConstructorParams[];\n /**\n * To be activated by clicking the button for switching the selected period.\n * */\n onChange?: (date: Date[]) => void;\n /**\n * To be activated by hovering a cursor over the button for changing the current displayed month.\n * */\n onDisplayedPeriodChange?: (date: Date) => void;\n /**\n * To be activated by hovering a cursor over the button for selecting the dates.\n * */\n onHighlightedChange?: (date: Date[]) => void;\n /**\n * Array of periods\n * [{value: [new Date(), new Date()], children: \"Today\"}]\n * @default Past 2 days / Past week / Past 2 week / Past month / Past 2 month\n * */\n periods?: (ComponentProps<typeof Button> & { value: Date[] })[];\n}\n\nexport interface IDatePickerContext {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n getHeaderProps: PropGetterFn;\n getTitleProps: PropGetterFn;\n getNextProps: PropGetterFn;\n getPrevProps: PropGetterFn;\n getCalendarProps: PropGetterFn;\n getTodayProps: PropGetterFn;\n}\n\nexport interface IAbstractDatePickerHandlers {\n displayedPeriod: (value: DateConstructorParams) => void;\n visible: (index: boolean) => void;\n highlighted: (list: DateConstructorParams[]) => void;\n value: (index: DateConstructorParams) => void;\n}\n\nexport interface IDatePickerHandlers {\n visible: (index: boolean) => void;\n}\n\nexport interface IInputTriggerProps {\n value: Date;\n /**\n * Date input placeholder characters\n * @default { year: 'Y'; month: 'M'; day: 'D' }\n */\n placeholders: { year: string; month: string; day: string };\n onChange: (date: Date, event: ChangeEvent) => void;\n locale: string;\n onDisplayedPeriodChange: (date: Date) => void;\n}\n\nexport interface ISingleDateInputProps extends IInputTriggerProps {}\n\nexport interface IDateRangeProps extends IInputTriggerProps {}\n\nexport interface IDatePickerMaskedInputProps {\n date: Date;\n onDateChange: (date: Date, event: ChangeEvent) => void;\n onDisplayedPeriodChange: (date: Date) => void;\n locale: string;\n parts: { year: Boolean; month: Boolean; day: Boolean };\n disabledDates: (Date | (Date | false)[] | string)[];\n}\n\ndeclare const InputTrigger: (<T>(\n props: Merge<ComponentProps<typeof Dropdown.Trigger>, IInputTriggerProps> & T,\n) => ReturnEl) & {\n Addon: typeof Input.Addon;\n Value: typeof Input.Value;\n SingleDateInput: (<T>(\n props: Merge<ComponentProps<typeof InputMask>, ISingleDateInputProps> & T,\n ) => ReturnEl) & {\n Indicator: typeof Input.Addon;\n MaskedInput: <T>(\n props: Merge<ComponentProps<typeof InputMask.Value>, IDatePickerMaskedInputProps> & T,\n ) => ReturnEl;\n };\n DateRange: (<T>(\n props: Merge<ComponentProps<typeof InputMask>, IDateRangeProps> & T,\n ) => ReturnEl) & {\n Indicator: typeof Input.Addon;\n RangeSep: typeof Input.Addon;\n FromMaskedInput: <T>(\n props: Merge<ComponentProps<typeof InputMask.Value>, IDatePickerMaskedInputProps> & T,\n ) => ReturnEl;\n ToMaskedInput: <T>(\n props: Merge<ComponentProps<typeof InputMask.Value>, IDatePickerMaskedInputProps> & T,\n ) => ReturnEl;\n };\n};\n\ndeclare const DatePicker: ((\n props: CProps<IDatePickerProps, IDatePickerContext & ICalendarDaysContext, IDatePickerHandlers>,\n) => ReturnEl) & {\n /** @deprecated `DatePicker.Trigger` is deprecated, consider migrating to `DatePicker.InputTrigger` instead */\n Trigger: (<T>(\n props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,\n ) => ReturnEl) & {\n Addon: typeof BaseTrigger.Addon;\n Text: typeof BaseTrigger.Text;\n };\n InputTrigger: typeof InputTrigger;\n Popper: typeof Dropdown.Popper;\n Header: typeof Box;\n Title: <T>(props: CProps<IDatePickerProps & IBoxProps & T, IDatePickerContext>) => ReturnEl;\n Prev: typeof Button;\n Next: typeof Button;\n Calendar: typeof Calendar;\n Today: typeof Box;\n add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n};\n\nexport interface IDateRangePickerContext {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n getHeaderProps: PropGetterFn;\n getTitleProps: PropGetterFn;\n getNextProps: PropGetterFn;\n getPrevProps: PropGetterFn;\n getCalendarProps: PropGetterFn;\n getPeriodProps: PropGetterFn;\n}\n\ndeclare const DateRangePicker: ((\n props: CProps<\n IDateRangePickerProps,\n IDateRangePickerContext & ICalendarDaysContext,\n IDatePickerHandlers\n >,\n) => ReturnEl) & {\n /** @deprecated `DatePicker.Trigger` is deprecated, consider migrating to `DatePicker.InputTrigger` instead */\n Trigger: (<T>(\n props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,\n ) => ReturnEl) & {\n Addon: typeof BaseTrigger.Addon;\n Text: typeof BaseTrigger.Text;\n };\n InputTrigger: typeof InputTrigger;\n Popper: <T>(props: ComponentProps<typeof Dropdown.Popper> & T) => ReturnEl;\n Header: typeof Box;\n Title: <T>(\n props: CProps<IDateRangePickerProps & IBoxProps & T, IDateRangePickerContext>,\n ) => ReturnEl;\n Prev: typeof Button;\n Next: typeof Button;\n Calendar: typeof Calendar;\n Period: <T>(props: IDateRangePickerPeriodProps & T) => ReturnEl;\n Apply: typeof Button;\n Reset: typeof Button;\n add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n};\n\nexport interface IMonthPickerContext {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n getHeaderProps: PropGetterFn;\n getTitleProps: PropGetterFn;\n getNextProps: PropGetterFn;\n getPrevProps: PropGetterFn;\n getCalendarProps: PropGetterFn;\n}\n\ndeclare const MonthPicker: ((\n props: CProps<\n IDatePickerProps,\n IMonthPickerContext & ICalendarMonthsContext,\n IDatePickerHandlers\n >,\n) => ReturnEl) & {\n /** @deprecated `DatePicker.Trigger` is deprecated, consider migrating to `DatePicker.InputTrigger` instead */\n Trigger: (<T>(\n props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,\n ) => ReturnEl) & {\n Addon: typeof BaseTrigger.Addon;\n Text: typeof BaseTrigger.Text;\n };\n InputTrigger: typeof InputTrigger;\n Popper: typeof Dropdown.Popper;\n Header: typeof Box;\n Title: <T>(props: CProps<IDatePickerProps & IBoxProps & T, IMonthPickerContext>) => ReturnEl;\n Prev: typeof Button;\n Next: typeof Button;\n Calendar: typeof Calendar;\n add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n};\n\nexport interface IMonthRangePickerContext {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n getHeaderProps: PropGetterFn;\n getTitleProps: PropGetterFn;\n getNextProps: PropGetterFn;\n getPrevProps: PropGetterFn;\n getCalendarProps: PropGetterFn;\n getPeriodProps: PropGetterFn;\n}\n\ndeclare const MonthRangePicker: ((\n props: CProps<\n IDateRangePickerProps,\n IMonthRangePickerContext & ICalendarMonthsContext,\n IDatePickerHandlers\n >,\n) => ReturnEl) & {\n /** @deprecated `DatePicker.Trigger` is deprecated, consider migrating to `DatePicker.InputTrigger` instead */\n Trigger: (<T>(\n props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,\n ) => ReturnEl) & {\n Addon: typeof BaseTrigger.Addon;\n Text: typeof BaseTrigger.Text;\n };\n InputTrigger: typeof InputTrigger;\n Popper: typeof Dropdown.Popper;\n Header: typeof Box;\n Title: <T>(\n props: CProps<IDateRangePickerProps & IBoxProps & T, IMonthRangePickerContext>,\n ) => ReturnEl;\n Prev: typeof Button;\n Next: typeof Button;\n Calendar: typeof Calendar;\n Period: <T>(props: IDateRangePickerPeriodProps & T) => ReturnEl;\n Apply: typeof Button;\n Reset: typeof Button;\n add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n};\n\nexport { DatePicker, DateRangePicker, MonthPicker, MonthRangePicker };\n"],"mappings":""}
1
+ {"version":3,"file":"index.d.js","names":[],"sources":["../../src/index.d.ts"],"sourcesContent":["import React, { ChangeEvent, ComponentProps } from 'react';\nimport dayjs from 'dayjs';\nimport { Box, IBoxProps } from '@semcore/flex-box';\nimport Button from '@semcore/button';\nimport { CProps, Merge, PropGetterFn, ReturnEl } from '@semcore/core';\nimport Dropdown, { IDropdownProps } from '@semcore/dropdown';\nimport { IWithI18nEnhanceProps } from '@semcore/utils/lib/enhances/i18nEnhance';\nimport BaseTrigger from '@semcore/base-trigger';\nimport Input from '@semcore/input';\nimport InputMask from '@semcore/input-mask';\n\nexport type DateConstructorParams = string | number | Date;\n\nexport interface ICalendarProps extends IBoxProps {\n /**\n * Locale for displaying the days of a week and months, to be transferred to `Intl`\n * @default en\n * */\n locale?: NavigatorLanguage['language'];\n /**\n * Array of dates blocked for selection\n * Accepts the date or the range of dates for specifying infinity ([Date | false, Date | false]), crontab(6,7)\n * */\n disabled?: (Date | (Date | false)[] | string)[];\n /**\n * @ignore\n * */\n highlighted?: DateConstructorParams[];\n /**\n * @ignore\n * */\n onHighlightedChange?: (date: Date[]) => void;\n /**\n * The selected date, accepts everything which is accepted by `new Date()`\n * */\n value?: DateConstructorParams[];\n /**\n * To be activated upon selecting the date\n * */\n onChange?: (date: Date[]) => void;\n /**\n * Date for showing the necessary month\n * @default new Date()\n * */\n displayedPeriod?: Date;\n}\n\nexport interface ICalendarDaysContext {\n days: ICalendarUnitProps[];\n}\n\nexport interface ICalendarMonthsContext {\n months: ICalendarUnitProps[];\n}\n\nexport interface ICalendarUnitProps extends IBoxProps {\n selected?: boolean;\n outdated?: boolean;\n disabled?: boolean;\n today?: boolean;\n startSelected?: boolean;\n endSelected?: boolean;\n highlighted?: boolean;\n startHighlighted?: boolean;\n endHighlighted?: boolean;\n children?: React.ReactNode;\n}\n\nexport interface ICalendarContext {\n getUnitProps: PropGetterFn;\n}\n\ndeclare const Calendar: (<T>(\n props: CProps<ICalendarProps & T, ICalendarContext, IAbstractDatePickerHandlers>,\n) => ReturnEl) & {\n Unit: <T>(props: ICalendarUnitProps & T) => ReturnEl;\n};\n\nexport interface IDatePickerProps extends IDropdownProps, IWithI18nEnhanceProps {\n /**\n * The selected date, accepts everything which is accepted by `new Date()`\n * */\n value?: DateConstructorParams;\n /**\n * To be activated upon selecting the date\n * */\n onChange?: (date: Date) => void;\n /**\n * Array of dates blocked for selection\n * */\n disabled?: (Date | (Date | false)[] | string)[];\n /**\n * Date for showing the necessary month\n * @default new Date()\n * */\n displayedPeriod?: DateConstructorParams;\n /**\n * To be activated upon changing the current shown month\n * */\n onDisplayedPeriodChange?: (date: Date) => void;\n /**\n * Component size\n * @default m\n */\n size?: 'm' | 'l';\n /**\n * The selected date, accepts everything which is accepted by `new Date()`\n * */\n highlighted?: DateConstructorParams[];\n /**\n * Default value selected date, accepts everything which is accepted by `new Date()`\n * */\n defaultValue?: DateConstructorParams;\n /**\n * Default value date for showing the necessary month\n * */\n defaultDisplayedPeriod?: DateConstructorParams;\n /**\n * Default value selected date, accepts everything which is accepted by `new Date()`\n * */\n defaultHighlighted?: DateConstructorParams[];\n}\n\nexport interface IDateRangePickerProps extends IDropdownProps, IWithI18nEnhanceProps {\n /**\n * The selected date, accepts everything which is accepted by `new Date()`\n * */\n value?: DateConstructorParams[];\n /**\n * Default value selected date, accepts everything which is accepted by `new Date()`\n * */\n defaultValue?: DateConstructorParams[];\n /**\n * Default value date for showing the necessary month\n * */\n defaultDisplayedPeriod?: DateConstructorParams;\n /**\n * Default value selected date, accepts everything which is accepted by `new Date()`\n * */\n defaultHighlighted?: DateConstructorParams[];\n /**\n * To be activated upon selecting the date\n * */\n onChange?: (date: Date[]) => void;\n /**\n * Array of dates blocked for selection\n * */\n disabled?: (Date | (Date | false)[] | string)[];\n /**\n * Date for showing the necessary month\n * @default new Date()\n * */\n displayedPeriod?: DateConstructorParams;\n /**\n * To be activated upon changing the current shown month\n * */\n onDisplayedPeriodChange?: (date: Date) => void;\n /**\n * Component size\n * @default m\n */\n size?: 'm' | 'l' | 'xl';\n /**\n * The selected date, accepts everything which is accepted by `new Date()`\n * */\n highlighted?: DateConstructorParams[];\n /**\n * Remove the 'Reset' button\n * */\n unclearable?: boolean;\n /**\n * To be activated upon selecting the date\n * */\n onHighlightedChange?: (date: Date[]) => void;\n /**\n * Array of periods\n * [{value: [new Date(), new Date()], children: \"Today\"}]\n * @default Past 2 days / Past week / Past 2 week / Past month / Past 2 month\n * */\n periods?: (ComponentProps<typeof Button> & { value: Date[] })[];\n}\n\nexport interface IDateRangePickerPeriodProps extends IBoxProps {\n /**\n * Current selected period\n * */\n value?: DateConstructorParams[];\n /**\n * To be activated by clicking the button for switching the selected period.\n * */\n onChange?: (date: Date[]) => void;\n /**\n * To be activated by hovering a cursor over the button for changing the current displayed month.\n * */\n onDisplayedPeriodChange?: (date: Date) => void;\n /**\n * To be activated by hovering a cursor over the button for selecting the dates.\n * */\n onHighlightedChange?: (date: Date[]) => void;\n /**\n * Array of periods\n * [{value: [new Date(), new Date()], children: \"Today\"}]\n * @default Past 2 days / Past week / Past 2 week / Past month / Past 2 month\n * */\n periods?: (ComponentProps<typeof Button> & { value: Date[] })[];\n}\n\nexport interface IDatePickerContext {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n getHeaderProps: PropGetterFn;\n getTitleProps: PropGetterFn;\n getNextProps: PropGetterFn;\n getPrevProps: PropGetterFn;\n getCalendarProps: PropGetterFn;\n getTodayProps: PropGetterFn;\n}\n\nexport interface IAbstractDatePickerHandlers {\n displayedPeriod: (value: DateConstructorParams) => void;\n visible: (index: boolean) => void;\n highlighted: (list: DateConstructorParams[]) => void;\n value: (index: DateConstructorParams) => void;\n}\n\nexport interface IDatePickerHandlers {\n visible: (index: boolean) => void;\n}\n\nexport interface IInputTriggerProps {\n value: Date;\n /**\n * Date input placeholder characters\n * @default { year: 'Y'; month: 'M'; day: 'D' }\n */\n placeholders: { year: string; month: string; day: string };\n onChange: (date: Date, event: ChangeEvent) => void;\n locale?: string;\n onDisplayedPeriodChange: (date: Date) => void;\n}\n\nexport interface ISingleDateInputProps extends IInputTriggerProps {}\n\nexport interface IDateRangeProps extends IInputTriggerProps {}\n\nexport interface IDatePickerMaskedInputProps {\n date: Date;\n onDateChange: (date: Date, event: ChangeEvent) => void;\n onDisplayedPeriodChange: (date: Date) => void;\n locale?: string;\n parts: { year: Boolean; month: Boolean; day: Boolean };\n disabledDates: (Date | (Date | false)[] | string)[];\n}\n\ndeclare const InputTrigger: (<T>(\n props: Merge<ComponentProps<typeof Dropdown.Trigger>, IInputTriggerProps> & T,\n) => ReturnEl) & {\n Addon: typeof Input.Addon;\n Value: typeof Input.Value;\n SingleDateInput: (<T>(\n props: Merge<ComponentProps<typeof InputMask>, ISingleDateInputProps> & T,\n ) => ReturnEl) & {\n Indicator: typeof Input.Addon;\n MaskedInput: <T>(\n props: Merge<ComponentProps<typeof InputMask.Value>, IDatePickerMaskedInputProps> & T,\n ) => ReturnEl;\n };\n DateRange: (<T>(\n props: Merge<ComponentProps<typeof InputMask>, IDateRangeProps> & T,\n ) => ReturnEl) & {\n Indicator: typeof Input.Addon;\n RangeSep: typeof Input.Addon;\n FromMaskedInput: <T>(\n props: Merge<ComponentProps<typeof InputMask.Value>, IDatePickerMaskedInputProps> & T,\n ) => ReturnEl;\n ToMaskedInput: <T>(\n props: Merge<ComponentProps<typeof InputMask.Value>, IDatePickerMaskedInputProps> & T,\n ) => ReturnEl;\n };\n};\n\ndeclare const DatePicker: ((\n props: CProps<IDatePickerProps, IDatePickerContext & ICalendarDaysContext, IDatePickerHandlers>,\n) => ReturnEl) & {\n /** @deprecated `DatePicker.Trigger` is deprecated, consider migrating to `DatePicker.InputTrigger` instead */\n Trigger: (<T>(\n props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,\n ) => ReturnEl) & {\n Addon: typeof BaseTrigger.Addon;\n Text: typeof BaseTrigger.Text;\n };\n InputTrigger: typeof InputTrigger;\n Popper: typeof Dropdown.Popper;\n Header: typeof Box;\n Title: <T>(props: CProps<IDatePickerProps & IBoxProps & T, IDatePickerContext>) => ReturnEl;\n Prev: typeof Button;\n Next: typeof Button;\n Calendar: typeof Calendar;\n Today: typeof Box;\n add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n};\n\nexport interface IDateRangePickerContext {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n getHeaderProps: PropGetterFn;\n getTitleProps: PropGetterFn;\n getNextProps: PropGetterFn;\n getPrevProps: PropGetterFn;\n getCalendarProps: PropGetterFn;\n getPeriodProps: PropGetterFn;\n}\n\ndeclare const DateRangePicker: ((\n props: CProps<\n IDateRangePickerProps,\n IDateRangePickerContext & ICalendarDaysContext,\n IDatePickerHandlers\n >,\n) => ReturnEl) & {\n /** @deprecated `DatePicker.Trigger` is deprecated, consider migrating to `DatePicker.InputTrigger` instead */\n Trigger: (<T>(\n props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,\n ) => ReturnEl) & {\n Addon: typeof BaseTrigger.Addon;\n Text: typeof BaseTrigger.Text;\n };\n InputTrigger: typeof InputTrigger;\n Popper: <T>(props: ComponentProps<typeof Dropdown.Popper> & T) => ReturnEl;\n Header: typeof Box;\n Title: <T>(\n props: CProps<IDateRangePickerProps & IBoxProps & T, IDateRangePickerContext>,\n ) => ReturnEl;\n Prev: typeof Button;\n Next: typeof Button;\n Calendar: typeof Calendar;\n Period: <T>(props: IDateRangePickerPeriodProps & T) => ReturnEl;\n Apply: typeof Button;\n Reset: typeof Button;\n add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n};\n\nexport interface IMonthPickerContext {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n getHeaderProps: PropGetterFn;\n getTitleProps: PropGetterFn;\n getNextProps: PropGetterFn;\n getPrevProps: PropGetterFn;\n getCalendarProps: PropGetterFn;\n}\n\ndeclare const MonthPicker: ((\n props: CProps<\n IDatePickerProps,\n IMonthPickerContext & ICalendarMonthsContext,\n IDatePickerHandlers\n >,\n) => ReturnEl) & {\n /** @deprecated `DatePicker.Trigger` is deprecated, consider migrating to `DatePicker.InputTrigger` instead */\n Trigger: (<T>(\n props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,\n ) => ReturnEl) & {\n Addon: typeof BaseTrigger.Addon;\n Text: typeof BaseTrigger.Text;\n };\n InputTrigger: typeof InputTrigger;\n Popper: typeof Dropdown.Popper;\n Header: typeof Box;\n Title: <T>(props: CProps<IDatePickerProps & IBoxProps & T, IMonthPickerContext>) => ReturnEl;\n Prev: typeof Button;\n Next: typeof Button;\n Calendar: typeof Calendar;\n add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n};\n\nexport interface IMonthRangePickerContext {\n getTriggerProps: PropGetterFn;\n getPopperProps: PropGetterFn;\n getHeaderProps: PropGetterFn;\n getTitleProps: PropGetterFn;\n getNextProps: PropGetterFn;\n getPrevProps: PropGetterFn;\n getCalendarProps: PropGetterFn;\n getPeriodProps: PropGetterFn;\n}\n\ndeclare const MonthRangePicker: ((\n props: CProps<\n IDateRangePickerProps,\n IMonthRangePickerContext & ICalendarMonthsContext,\n IDatePickerHandlers\n >,\n) => ReturnEl) & {\n /** @deprecated `DatePicker.Trigger` is deprecated, consider migrating to `DatePicker.InputTrigger` instead */\n Trigger: (<T>(\n props: Merge<ComponentProps<typeof Dropdown.Trigger>, ComponentProps<typeof BaseTrigger>> & T,\n ) => ReturnEl) & {\n Addon: typeof BaseTrigger.Addon;\n Text: typeof BaseTrigger.Text;\n };\n InputTrigger: typeof InputTrigger;\n Popper: typeof Dropdown.Popper;\n Header: typeof Box;\n Title: <T>(\n props: CProps<IDateRangePickerProps & IBoxProps & T, IMonthRangePickerContext>,\n ) => ReturnEl;\n Prev: typeof Button;\n Next: typeof Button;\n Calendar: typeof Calendar;\n Period: <T>(props: IDateRangePickerPeriodProps & T) => ReturnEl;\n Apply: typeof Button;\n Reset: typeof Button;\n add: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n subtract: (date: number | Date, amount: number, unit: dayjs.OpUnitType) => Date;\n};\n\nexport { DatePicker, DateRangePicker, MonthPicker, MonthRangePicker };\n"],"mappings":""}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.localizedMessages = void 0;
9
+
10
+ var _de = _interopRequireDefault(require("./de.json"));
11
+
12
+ var _en = _interopRequireDefault(require("./en.json"));
13
+
14
+ var _es = _interopRequireDefault(require("./es.json"));
15
+
16
+ var _fr = _interopRequireDefault(require("./fr.json"));
17
+
18
+ var _it = _interopRequireDefault(require("./it.json"));
19
+
20
+ var _ja = _interopRequireDefault(require("./ja.json"));
21
+
22
+ var _ko = _interopRequireDefault(require("./ko.json"));
23
+
24
+ var _pt = _interopRequireDefault(require("./pt.json"));
25
+
26
+ var _ru = _interopRequireDefault(require("./ru.json"));
27
+
28
+ var _tr = _interopRequireDefault(require("./tr.json"));
29
+
30
+ var _vi = _interopRequireDefault(require("./vi.json"));
31
+
32
+ var _zh = _interopRequireDefault(require("./zh.json"));
33
+
34
+ var localizedMessages = {
35
+ de: _de["default"],
36
+ en: _en["default"],
37
+ es: _es["default"],
38
+ fr: _fr["default"],
39
+ it: _it["default"],
40
+ ja: _ja["default"],
41
+ ko: _ko["default"],
42
+ pt: _pt["default"],
43
+ ru: _ru["default"],
44
+ tr: _tr["default"],
45
+ vi: _vi["default"],
46
+ zh: _zh["default"]
47
+ };
48
+ exports.localizedMessages = localizedMessages;
49
+ //# sourceMappingURL=__intergalactic-dynamic-locales.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"__intergalactic-dynamic-locales.js","names":["localizedMessages","de","en","es","fr","it","ja","ko","pt","ru","tr","vi","zh"],"sources":["../../../src/translations/__intergalactic-dynamic-locales.ts"],"sourcesContent":["import de from './de.json';\nimport en from './en.json';\nimport es from './es.json';\nimport fr from './fr.json';\nimport it from './it.json';\nimport ja from './ja.json';\nimport ko from './ko.json';\nimport pt from './pt.json';\nimport ru from './ru.json';\nimport tr from './tr.json';\nimport vi from './vi.json';\nimport zh from './zh.json';\n\nexport const localizedMessages = {\n de,\n en,\n es,\n fr,\n it,\n ja,\n ko,\n pt,\n ru,\n tr,\n vi,\n zh,\n};\n"],"mappings":";;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEO,IAAMA,iBAAiB,GAAG;EAC/BC,EAAE,EAAFA,cAD+B;EAE/BC,EAAE,EAAFA,cAF+B;EAG/BC,EAAE,EAAFA,cAH+B;EAI/BC,EAAE,EAAFA,cAJ+B;EAK/BC,EAAE,EAAFA,cAL+B;EAM/BC,EAAE,EAAFA,cAN+B;EAO/BC,EAAE,EAAFA,cAP+B;EAQ/BC,EAAE,EAAFA,cAR+B;EAS/BC,EAAE,EAAFA,cAT+B;EAU/BC,EAAE,EAAFA,cAV+B;EAW/BC,EAAE,EAAFA,cAX+B;EAY/BC,EAAE,EAAFA;AAZ+B,CAA1B"}
@@ -9,5 +9,8 @@
9
9
  "last2Months": "Letzte 2 Monate",
10
10
  "last3Months": "Letzte 3 Monate",
11
11
  "last6Months": "Letzte 6 Monate",
12
- "last12Months": "Letzte 12 Monate"
12
+ "last12Months": "Letzte 12 Monate",
13
+ "prev": "Voriger Zeitraum",
14
+ "next": "Nächster Zeitraum",
15
+ "input": "Datumsfeld"
13
16
  }
@@ -9,5 +9,8 @@
9
9
  "last2Months": "Last 2 months",
10
10
  "last3Months": "Last 3 months",
11
11
  "last6Months": "Last 6 months",
12
- "last12Months": "Last 12 months"
12
+ "last12Months": "Last 12 months",
13
+ "prev": "Previous period",
14
+ "next": "Next period",
15
+ "input": "Date field"
13
16
  }
@@ -9,5 +9,8 @@
9
9
  "last2Months": "Últimos 2 meses",
10
10
  "last3Months": "Últimos 3 meses",
11
11
  "last6Months": "Últimos 6 meses",
12
- "last12Months": "Últimos 12 meses"
12
+ "last12Months": "Últimos 12 meses",
13
+ "prev": "Periodo precedente",
14
+ "next": "Periodo siguiente",
15
+ "input": "Campo de datos"
13
16
  }
@@ -9,5 +9,8 @@
9
9
  "last2Months": "2 derniers mois",
10
10
  "last3Months": "3 derniers mois",
11
11
  "last6Months": "6 derniers mois",
12
- "last12Months": "12 derniers mois"
12
+ "last12Months": "12 derniers mois",
13
+ "prev": "Période précédente",
14
+ "next": "Période suivante",
15
+ "input": "Champ de date"
13
16
  }
@@ -9,5 +9,8 @@
9
9
  "last2Months": "Ultimi 2 mesi",
10
10
  "last3Months": "Ultimi 3 mesi",
11
11
  "last6Months": "Ultimi 6 mesi",
12
- "last12Months": "Ultimi 12 mesi"
12
+ "last12Months": "Ultimi 12 mesi",
13
+ "prev": "Periodo precedente",
14
+ "next": "Periodo successivo",
15
+ "input": "Campo data"
13
16
  }
@@ -9,5 +9,8 @@
9
9
  "last2Months": "過去2か月間",
10
10
  "last3Months": "過去3か月間",
11
11
  "last6Months": "過去6か月間",
12
- "last12Months": "過去12か月間"
12
+ "last12Months": "過去12か月間",
13
+ "prev": "前期間",
14
+ "next": "次の期間",
15
+ "input": "データフィールド"
13
16
  }
@@ -9,5 +9,8 @@
9
9
  "last2Months": "최근 2개월",
10
10
  "last3Months": "최근 3개월",
11
11
  "last6Months": "최근 6개월",
12
- "last12Months": "최근 12개월"
12
+ "last12Months": "최근 12개월",
13
+ "prev": "지난 기간",
14
+ "next": "다음 기간",
15
+ "input": "날짜 필드"
13
16
  }
@@ -9,5 +9,8 @@
9
9
  "last2Months": "Últimos 2 meses",
10
10
  "last3Months": "Últimos 3 meses",
11
11
  "last6Months": "Últimos 6 meses",
12
- "last12Months": "Últimos 12 meses"
12
+ "last12Months": "Últimos 12 meses",
13
+ "prev": "Período anterior",
14
+ "next": "Próximo período",
15
+ "input": "Campo de data"
13
16
  }
@@ -9,5 +9,8 @@
9
9
  "last2Months": "Son 2 ay",
10
10
  "last3Months": "Son 3 ay",
11
11
  "last6Months": "Son 6 ay",
12
- "last12Months": "Son 12 ay"
12
+ "last12Months": "Son 12 ay",
13
+ "prev": "Önceki dönem",
14
+ "next": "Sonraki dönem",
15
+ "input": "Tarih alanı"
13
16
  }
@@ -9,5 +9,8 @@
9
9
  "last2Months": "2 tháng qua",
10
10
  "last3Months": "3 tháng qua",
11
11
  "last6Months": "6 tháng qua",
12
- "last12Months": "12 tháng qua"
12
+ "last12Months": "12 tháng qua",
13
+ "prev": "Giai đoạn trước",
14
+ "next": "Giai đoạn tới",
15
+ "input": "Trường ngày tháng"
13
16
  }
@@ -9,5 +9,8 @@
9
9
  "last2Months": "过去 2 个月",
10
10
  "last3Months": "过去 3 个月",
11
11
  "last6Months": "过去 6 个月",
12
- "last12Months": "过去 12 个月"
12
+ "last12Months": "过去 12 个月",
13
+ "prev": "上一个时段",
14
+ "next": "下一时段",
15
+ "input": "日期字段"
13
16
  }
@@ -27,6 +27,7 @@ import { Header, Next, Popper, Prev, Title, Trigger, InputTrigger } from './comp
27
27
  import { CalendarDays as Calendar } from './components/Calendar';
28
28
  import PickerAbstract from './components/PickerAbstract';
29
29
  import { getLocaleDate } from './utils/formatDate';
30
+ import { localizedMessages } from './translations/__intergalactic-dynamic-locales';
30
31
  export var DatePickerRoot = /*#__PURE__*/function (_PickerAbstract) {
31
32
  _inherits(DatePickerRoot, _PickerAbstract);
32
33
 
@@ -81,7 +82,8 @@ export var DatePickerRoot = /*#__PURE__*/function (_PickerAbstract) {
81
82
  onDisplayedPeriodChange = _this$asProps2.onDisplayedPeriodChange,
82
83
  locale = _this$asProps2.locale,
83
84
  disabled = _this$asProps2.disabled,
84
- size = _this$asProps2.size;
85
+ size = _this$asProps2.size,
86
+ getI18nText = _this$asProps2.getI18nText;
85
87
  return _objectSpread(_objectSpread({}, _get(_getPrototypeOf(DatePickerRoot.prototype), "getTriggerProps", this).call(this)), {}, {
86
88
  value: value,
87
89
  onChange: onChange,
@@ -91,7 +93,8 @@ export var DatePickerRoot = /*#__PURE__*/function (_PickerAbstract) {
91
93
  disabledDates: disabled,
92
94
  children: function children() {
93
95
  return /*#__PURE__*/React.createElement(InputTrigger.SingleDateInput, null);
94
- }
96
+ },
97
+ getI18nText: getI18nText
95
98
  });
96
99
  }
97
100
  }, {
@@ -174,7 +177,7 @@ var Today = /*#__PURE__*/function (_Component) {
174
177
  return Today;
175
178
  }(Component);
176
179
 
177
- _defineProperty(Today, "enhance", [i18nEnhance()]);
180
+ _defineProperty(Today, "enhance", [i18nEnhance(localizedMessages)]);
178
181
 
179
182
  var DatePicker = createComponent(DatePickerRoot, {
180
183
  Trigger: Trigger,
@@ -1 +1 @@
1
- {"version":3,"file":"DatePicker.js","names":["React","dayjs","createComponent","Component","Root","sstyled","Box","Button","Divider","i18nEnhance","Header","Next","Popper","Prev","Title","Trigger","InputTrigger","CalendarDays","Calendar","PickerAbstract","getLocaleDate","DatePickerRoot","handlers","value","Date","setHours","asProps","locale","placeholder","children","onChange","onDisplayedPeriodChange","disabled","size","w","disabledDates","displayedPeriod","Intl","DateTimeFormat","month","year","format","startOf","toDate","i18n","onClick","handlerToday","props","defaultProps","Today","SToday","styles","getI18nText","DatePicker","parent"],"sources":["../../src/DatePicker.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport Button from '@semcore/button';\nimport Divider from '@semcore/divider';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { Header, Next, Popper, Prev, Title, Trigger, InputTrigger } from './components';\nimport { CalendarDays as Calendar } from './components/Calendar';\nimport PickerAbstract from './components/PickerAbstract';\nimport { getLocaleDate } from './utils/formatDate';\n\nexport class DatePickerRoot extends PickerAbstract {\n static displayName = 'DatePicker';\n\n static defaultProps = (props) => ({\n ...PickerAbstract.defaultProps(props),\n children: (\n <>\n <DatePicker.Trigger />\n <DatePicker.Popper />\n </>\n ),\n });\n\n navigateStep = 'month';\n keyStep = 'day';\n keyDiff = {\n 37: -1,\n 38: -7,\n 39: 1,\n 40: 7,\n };\n\n handlerToday = () => {\n this.handlers.value(new Date(new Date().setHours(0, 0, 0, 0)));\n };\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select date',\n children: value ? getLocaleDate(value, locale) : null,\n };\n }\n\n getInputTriggerProps() {\n const { value, onChange, onDisplayedPeriodChange, locale, disabled, size } = this.asProps;\n\n return {\n ...super.getTriggerProps(),\n value,\n onChange,\n onDisplayedPeriodChange,\n locale,\n w: size === 'm' ? 145 : 160,\n disabledDates: disabled,\n children: () => <InputTrigger.SingleDateInput />,\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n children: (\n <>\n <DatePicker.Header />\n <DatePicker.Calendar />\n <Divider ml={-4} mt={4} w=\"calc(100% + 32px)\" />\n <DatePicker.Today />\n </>\n ),\n };\n }\n\n getTitleProps() {\n const { displayedPeriod, locale } = this.asProps;\n return {\n ...super.getTitleProps(),\n children: new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n dayjs(displayedPeriod).startOf('month').toDate(),\n ),\n };\n }\n\n getTodayProps() {\n const { i18n, locale } = this.asProps;\n return {\n i18n,\n locale,\n onClick: this.handlerToday,\n };\n }\n}\n\nclass Today extends Component {\n static enhance = [i18nEnhance()];\n\n render() {\n const SToday = Root;\n const { styles, getI18nText } = this.asProps;\n return sstyled(styles)(\n <SToday render={Box}>\n <Button use=\"tertiary\" children={getI18nText('today')} />\n </SToday>,\n );\n }\n}\n\nconst DatePicker = createComponent(\n DatePickerRoot,\n {\n Trigger,\n InputTrigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Today,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default DatePicker;\n"],"mappings":"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"}
1
+ {"version":3,"file":"DatePicker.js","names":["React","dayjs","createComponent","Component","Root","sstyled","Box","Button","Divider","i18nEnhance","Header","Next","Popper","Prev","Title","Trigger","InputTrigger","CalendarDays","Calendar","PickerAbstract","getLocaleDate","localizedMessages","DatePickerRoot","handlers","value","Date","setHours","asProps","locale","placeholder","children","onChange","onDisplayedPeriodChange","disabled","size","getI18nText","w","disabledDates","displayedPeriod","Intl","DateTimeFormat","month","year","format","startOf","toDate","i18n","onClick","handlerToday","props","defaultProps","Today","SToday","styles","DatePicker","parent"],"sources":["../../src/DatePicker.jsx"],"sourcesContent":["import React from 'react';\nimport dayjs from 'dayjs';\nimport createComponent, { Component, Root, sstyled } from '@semcore/core';\nimport { Box } from '@semcore/flex-box';\nimport Button from '@semcore/button';\nimport Divider from '@semcore/divider';\nimport i18nEnhance from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { Header, Next, Popper, Prev, Title, Trigger, InputTrigger } from './components';\nimport { CalendarDays as Calendar } from './components/Calendar';\nimport PickerAbstract from './components/PickerAbstract';\nimport { getLocaleDate } from './utils/formatDate';\nimport { localizedMessages } from './translations/__intergalactic-dynamic-locales';\n\nexport class DatePickerRoot extends PickerAbstract {\n static displayName = 'DatePicker';\n\n static defaultProps = (props) => ({\n ...PickerAbstract.defaultProps(props),\n children: (\n <>\n <DatePicker.Trigger />\n <DatePicker.Popper />\n </>\n ),\n });\n\n navigateStep = 'month';\n keyStep = 'day';\n keyDiff = {\n 37: -1,\n 38: -7,\n 39: 1,\n 40: 7,\n };\n\n handlerToday = () => {\n this.handlers.value(new Date(new Date().setHours(0, 0, 0, 0)));\n };\n\n getTriggerProps() {\n const { value, locale } = this.asProps;\n return {\n ...super.getTriggerProps(),\n placeholder: 'Select date',\n children: value ? getLocaleDate(value, locale) : null,\n };\n }\n\n getInputTriggerProps() {\n const { value, onChange, onDisplayedPeriodChange, locale, disabled, size, getI18nText } =\n this.asProps;\n\n return {\n ...super.getTriggerProps(),\n value,\n onChange,\n onDisplayedPeriodChange,\n locale,\n w: size === 'm' ? 145 : 160,\n disabledDates: disabled,\n children: () => <InputTrigger.SingleDateInput />,\n getI18nText,\n };\n }\n\n getPopperProps() {\n return {\n ...super.getPopperProps(),\n children: (\n <>\n <DatePicker.Header />\n <DatePicker.Calendar />\n <Divider ml={-4} mt={4} w=\"calc(100% + 32px)\" />\n <DatePicker.Today />\n </>\n ),\n };\n }\n\n getTitleProps() {\n const { displayedPeriod, locale } = this.asProps;\n return {\n ...super.getTitleProps(),\n children: new Intl.DateTimeFormat(locale, { month: 'long', year: 'numeric' }).format(\n dayjs(displayedPeriod).startOf('month').toDate(),\n ),\n };\n }\n\n getTodayProps() {\n const { i18n, locale } = this.asProps;\n return {\n i18n,\n locale,\n onClick: this.handlerToday,\n };\n }\n}\n\nclass Today extends Component {\n static enhance = [i18nEnhance(localizedMessages)];\n\n render() {\n const SToday = Root;\n const { styles, getI18nText } = this.asProps;\n return sstyled(styles)(\n <SToday render={Box}>\n <Button use=\"tertiary\" children={getI18nText('today')} />\n </SToday>,\n );\n }\n}\n\nconst DatePicker = createComponent(\n DatePickerRoot,\n {\n Trigger,\n InputTrigger,\n Popper,\n Header,\n Title,\n Prev,\n Next,\n Calendar,\n Today,\n },\n {\n parent: Calendar,\n },\n);\n\nexport default DatePicker;\n"],"mappings":"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"}
@@ -100,7 +100,8 @@ var DateRangePickerRoot = /*#__PURE__*/function (_RangePickerAbstract) {
100
100
  onDisplayedPeriodChange = _this$asProps2.onDisplayedPeriodChange,
101
101
  locale = _this$asProps2.locale,
102
102
  disabled = _this$asProps2.disabled,
103
- size = _this$asProps2.size;
103
+ size = _this$asProps2.size,
104
+ getI18nText = _this$asProps2.getI18nText;
104
105
  return _objectSpread(_objectSpread({}, _get(_getPrototypeOf(DateRangePickerRoot.prototype), "getTriggerProps", this).call(this)), {}, {
105
106
  value: value,
106
107
  onChange: onChange,
@@ -110,7 +111,8 @@ var DateRangePickerRoot = /*#__PURE__*/function (_RangePickerAbstract) {
110
111
  disabledDates: disabled,
111
112
  children: function children() {
112
113
  return /*#__PURE__*/React.createElement(InputTrigger.DateRange, null);
113
- }
114
+ },
115
+ getI18nText: getI18nText
114
116
  });
115
117
  }
116
118
  }]);