@bigbinary/neeto-molecules 3.16.80 → 3.16.81
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.
package/dist/DateRangeFilter.js
CHANGED
|
@@ -155,7 +155,7 @@ var DateRangeFilter = function DateRangeFilter(_ref) {
|
|
|
155
155
|
dateFormat: requiredDateFormat,
|
|
156
156
|
picker: "date",
|
|
157
157
|
type: "range",
|
|
158
|
-
|
|
158
|
+
value: [startDate ? dayjs(startDate) : null, endDate ? dayjs(endDate) : null],
|
|
159
159
|
onChange: function onChange(_ref2) {
|
|
160
160
|
var _ref3 = _slicedToArray(_ref2, 2),
|
|
161
161
|
startDate = _ref3[0],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangeFilter.js","sources":["../src/components/DateRangeFilter/utils.js","../src/components/DateRangeFilter/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { dayjs } from \"neetocommons/utils\";\n\nexport const defaultTimePeriodOptions = () => {\n const today = dayjs().startOf(\"day\");\n const startOfLastWeek = today.subtract(7, \"day\").startOf(\"week\");\n\n const endOfLastWeek = today.subtract(7, \"day\").endOf(\"week\");\n const lastMonthStart = today.subtract(1, \"month\").startOf(\"month\");\n const lastMonthEnd = today.subtract(1, \"month\").endOf(\"month\");\n const thisQuarterStart = dayjs().startOf(\"quarter\");\n const thisQuarterEnd = dayjs().endOf(\"quarter\");\n const lastQuarterStart = dayjs().subtract(1, \"quarter\").startOf(\"quarter\");\n const lastQuarterEnd = dayjs().subtract(1, \"quarter\").endOf(\"quarter\");\n const startOfLastYear = dayjs().subtract(1, \"year\").startOf(\"year\");\n const endOfLastYear = dayjs().subtract(1, \"year\").endOf(\"year\");\n const startOfYear = dayjs().startOf(\"year\");\n const endOfYear = dayjs().endOf(\"year\");\n\n const startOf24Hours = dayjs().subtract(24, \"hour\");\n const now = dayjs();\n const startOfLast7Days = dayjs().subtract(7, \"day\");\n const startOfWeek = dayjs().startOf(\"week\");\n const startOfLast30Days = dayjs().subtract(30, \"day\");\n const startOfMonth = today.startOf(\"month\");\n\n return [\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.allTime\"),\n value: { startDate: null, endDate: null, rangeType: \"all\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last24Hours\"),\n value: { startDate: startOf24Hours, endDate: now, rangeType: \"hours\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last7Days\"),\n value: {\n startDate: startOfLast7Days,\n endDate: now,\n rangeType: \"days\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisWeek\"),\n value: { startDate: startOfWeek, endDate: now, rangeType: \"week\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastWeek\"),\n value: {\n startDate: startOfLastWeek,\n endDate: endOfLastWeek,\n rangeType: \"week\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last30Days\"),\n value: {\n startDate: startOfLast30Days,\n endDate: now,\n rangeType: \"days\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisMonth\"),\n value: { startDate: startOfMonth, endDate: now, rangeType: \"month\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastMonth\"),\n value: {\n startDate: lastMonthStart,\n endDate: lastMonthEnd,\n rangeType: \"month\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisQuarter\"),\n value: {\n startDate: thisQuarterStart,\n endDate: thisQuarterEnd,\n rangeType: \"quarter\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastQuarter\"),\n value: {\n startDate: lastQuarterStart,\n endDate: lastQuarterEnd,\n rangeType: \"quarter\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisYear\"),\n value: { startDate: startOfYear, endDate: endOfYear, rangeType: \"year\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastYear\"),\n value: {\n startDate: startOfLastYear,\n endDate: endOfLastYear,\n rangeType: \"year\",\n },\n },\n {\n label: t(\n \"neetoMolecules.dateRangeFilter.timePeriodOptions.customDuration\"\n ),\n value: \"custom\",\n },\n ];\n};\n","import { globalProps } from \"neetocommons/initializers\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Select, DatePicker } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\n\nimport { defaultTimePeriodOptions } from \"./utils\";\n\nconst DateRangeFilter = ({\n timePeriodOptions,\n timePeriod,\n setTimePeriod,\n datePickerProps,\n}) => {\n const isCustom =\n timePeriod?.value === \"custom\" || timePeriod?.value?.rangeType === \"custom\";\n\n const startDate = timePeriod?.value?.startDate;\n const endDate = timePeriod?.value?.endDate;\n const requiredDateFormat = globalProps?.user?.dateFormat;\n\n const options = timePeriodOptions || defaultTimePeriodOptions();\n\n return (\n <div className=\"flex flex-wrap gap-3\" data-testid=\"date-range-filter\">\n <div className=\"w-40\">\n <Select\n {...{ options }}\n required\n getOptionValue={prop(\"label\")}\n strategy=\"fixed\"\n value={timePeriod || options[0]}\n onChange={option => setTimePeriod(option)}\n />\n </div>\n {isCustom && (\n <div\n className=\"max-w-sm flex-grow\"\n data-testid=\"date-range-filter-custom-duration-picker\"\n >\n <DatePicker\n autoFocus\n className=\"w-full\"\n dateFormat={requiredDateFormat}\n picker=\"date\"\n type=\"range\"\n defaultValue={[\n startDate ? dayjs(startDate) : null,\n endDate ? dayjs(endDate) : null,\n ]}\n onChange={([startDate, endDate]) => {\n setTimePeriod({\n label: timePeriod?.label,\n value: { startDate, endDate, rangeType: \"custom\" },\n });\n }}\n {...datePickerProps}\n />\n </div>\n )}\n </div>\n );\n};\n\nDateRangeFilter.propTypes = {\n /**\n * An array of objects that can be passed to the component which can be used to override default filter options.\n */\n timePeriodOptions: PropTypes.arrayOf(\n PropTypes.shape({ label: PropTypes.string, value: PropTypes.object })\n ),\n /**\n * The state corresponding to the currently selected date range filter.\n */\n timePeriod: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.object,\n }),\n /**\n * The setter method for `timePeriod` state.\n */\n setTimePeriod: PropTypes.func,\n /**\n * These props will be passed to the date range picker for custom date range selection.\n */\n datePickerProps: PropTypes.object,\n};\n\nexport default DateRangeFilter;\n"],"names":["defaultTimePeriodOptions","today","dayjs","startOf","startOfLastWeek","subtract","endOfLastWeek","endOf","lastMonthStart","lastMonthEnd","thisQuarterStart","thisQuarterEnd","lastQuarterStart","lastQuarterEnd","startOfLastYear","endOfLastYear","startOfYear","endOfYear","startOf24Hours","now","startOfLast7Days","startOfWeek","startOfLast30Days","startOfMonth","label","t","value","startDate","endDate","rangeType","DateRangeFilter","_ref","_timePeriod$value","_timePeriod$value2","_timePeriod$value3","_globalProps$user","timePeriodOptions","timePeriod","setTimePeriod","datePickerProps","isCustom","requiredDateFormat","globalProps","user","dateFormat","options","_jsxs","className","children","_jsx","Select","required","getOptionValue","prop","strategy","onChange","option","DatePicker","_objectSpread","autoFocus","picker","type","defaultValue","_ref2","_ref3","_slicedToArray"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DateRangeFilter.js","sources":["../src/components/DateRangeFilter/utils.js","../src/components/DateRangeFilter/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { dayjs } from \"neetocommons/utils\";\n\nexport const defaultTimePeriodOptions = () => {\n const today = dayjs().startOf(\"day\");\n const startOfLastWeek = today.subtract(7, \"day\").startOf(\"week\");\n\n const endOfLastWeek = today.subtract(7, \"day\").endOf(\"week\");\n const lastMonthStart = today.subtract(1, \"month\").startOf(\"month\");\n const lastMonthEnd = today.subtract(1, \"month\").endOf(\"month\");\n const thisQuarterStart = dayjs().startOf(\"quarter\");\n const thisQuarterEnd = dayjs().endOf(\"quarter\");\n const lastQuarterStart = dayjs().subtract(1, \"quarter\").startOf(\"quarter\");\n const lastQuarterEnd = dayjs().subtract(1, \"quarter\").endOf(\"quarter\");\n const startOfLastYear = dayjs().subtract(1, \"year\").startOf(\"year\");\n const endOfLastYear = dayjs().subtract(1, \"year\").endOf(\"year\");\n const startOfYear = dayjs().startOf(\"year\");\n const endOfYear = dayjs().endOf(\"year\");\n\n const startOf24Hours = dayjs().subtract(24, \"hour\");\n const now = dayjs();\n const startOfLast7Days = dayjs().subtract(7, \"day\");\n const startOfWeek = dayjs().startOf(\"week\");\n const startOfLast30Days = dayjs().subtract(30, \"day\");\n const startOfMonth = today.startOf(\"month\");\n\n return [\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.allTime\"),\n value: { startDate: null, endDate: null, rangeType: \"all\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last24Hours\"),\n value: { startDate: startOf24Hours, endDate: now, rangeType: \"hours\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last7Days\"),\n value: {\n startDate: startOfLast7Days,\n endDate: now,\n rangeType: \"days\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisWeek\"),\n value: { startDate: startOfWeek, endDate: now, rangeType: \"week\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastWeek\"),\n value: {\n startDate: startOfLastWeek,\n endDate: endOfLastWeek,\n rangeType: \"week\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last30Days\"),\n value: {\n startDate: startOfLast30Days,\n endDate: now,\n rangeType: \"days\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisMonth\"),\n value: { startDate: startOfMonth, endDate: now, rangeType: \"month\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastMonth\"),\n value: {\n startDate: lastMonthStart,\n endDate: lastMonthEnd,\n rangeType: \"month\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisQuarter\"),\n value: {\n startDate: thisQuarterStart,\n endDate: thisQuarterEnd,\n rangeType: \"quarter\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastQuarter\"),\n value: {\n startDate: lastQuarterStart,\n endDate: lastQuarterEnd,\n rangeType: \"quarter\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisYear\"),\n value: { startDate: startOfYear, endDate: endOfYear, rangeType: \"year\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastYear\"),\n value: {\n startDate: startOfLastYear,\n endDate: endOfLastYear,\n rangeType: \"year\",\n },\n },\n {\n label: t(\n \"neetoMolecules.dateRangeFilter.timePeriodOptions.customDuration\"\n ),\n value: \"custom\",\n },\n ];\n};\n","import { globalProps } from \"neetocommons/initializers\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Select, DatePicker } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\n\nimport { defaultTimePeriodOptions } from \"./utils\";\n\nconst DateRangeFilter = ({\n timePeriodOptions,\n timePeriod,\n setTimePeriod,\n datePickerProps,\n}) => {\n const isCustom =\n timePeriod?.value === \"custom\" || timePeriod?.value?.rangeType === \"custom\";\n\n const startDate = timePeriod?.value?.startDate;\n const endDate = timePeriod?.value?.endDate;\n const requiredDateFormat = globalProps?.user?.dateFormat;\n\n const options = timePeriodOptions || defaultTimePeriodOptions();\n\n return (\n <div className=\"flex flex-wrap gap-3\" data-testid=\"date-range-filter\">\n <div className=\"w-40\">\n <Select\n {...{ options }}\n required\n getOptionValue={prop(\"label\")}\n strategy=\"fixed\"\n value={timePeriod || options[0]}\n onChange={option => setTimePeriod(option)}\n />\n </div>\n {isCustom && (\n <div\n className=\"max-w-sm flex-grow\"\n data-testid=\"date-range-filter-custom-duration-picker\"\n >\n <DatePicker\n autoFocus\n className=\"w-full\"\n dateFormat={requiredDateFormat}\n picker=\"date\"\n type=\"range\"\n value={[\n startDate ? dayjs(startDate) : null,\n endDate ? dayjs(endDate) : null,\n ]}\n onChange={([startDate, endDate]) => {\n setTimePeriod({\n label: timePeriod?.label,\n value: { startDate, endDate, rangeType: \"custom\" },\n });\n }}\n {...datePickerProps}\n />\n </div>\n )}\n </div>\n );\n};\n\nDateRangeFilter.propTypes = {\n /**\n * An array of objects that can be passed to the component which can be used to override default filter options.\n */\n timePeriodOptions: PropTypes.arrayOf(\n PropTypes.shape({ label: PropTypes.string, value: PropTypes.object })\n ),\n /**\n * The state corresponding to the currently selected date range filter.\n */\n timePeriod: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.object,\n }),\n /**\n * The setter method for `timePeriod` state.\n */\n setTimePeriod: PropTypes.func,\n /**\n * These props will be passed to the date range picker for custom date range selection.\n */\n datePickerProps: PropTypes.object,\n};\n\nexport default DateRangeFilter;\n"],"names":["defaultTimePeriodOptions","today","dayjs","startOf","startOfLastWeek","subtract","endOfLastWeek","endOf","lastMonthStart","lastMonthEnd","thisQuarterStart","thisQuarterEnd","lastQuarterStart","lastQuarterEnd","startOfLastYear","endOfLastYear","startOfYear","endOfYear","startOf24Hours","now","startOfLast7Days","startOfWeek","startOfLast30Days","startOfMonth","label","t","value","startDate","endDate","rangeType","DateRangeFilter","_ref","_timePeriod$value","_timePeriod$value2","_timePeriod$value3","_globalProps$user","timePeriodOptions","timePeriod","setTimePeriod","datePickerProps","isCustom","requiredDateFormat","globalProps","user","dateFormat","options","_jsxs","className","children","_jsx","Select","required","getOptionValue","prop","strategy","onChange","option","DatePicker","_objectSpread","autoFocus","picker","type","_ref2","_ref3","_slicedToArray"],"mappings":"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"}
|
|
@@ -157,7 +157,7 @@ var DateRangeFilter = function DateRangeFilter(_ref) {
|
|
|
157
157
|
dateFormat: requiredDateFormat,
|
|
158
158
|
picker: "date",
|
|
159
159
|
type: "range",
|
|
160
|
-
|
|
160
|
+
value: [startDate ? utils.dayjs(startDate) : null, endDate ? utils.dayjs(endDate) : null],
|
|
161
161
|
onChange: function onChange(_ref2) {
|
|
162
162
|
var _ref3 = _slicedToArray(_ref2, 2),
|
|
163
163
|
startDate = _ref3[0],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateRangeFilter.js","sources":["../../src/components/DateRangeFilter/utils.js","../../src/components/DateRangeFilter/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { dayjs } from \"neetocommons/utils\";\n\nexport const defaultTimePeriodOptions = () => {\n const today = dayjs().startOf(\"day\");\n const startOfLastWeek = today.subtract(7, \"day\").startOf(\"week\");\n\n const endOfLastWeek = today.subtract(7, \"day\").endOf(\"week\");\n const lastMonthStart = today.subtract(1, \"month\").startOf(\"month\");\n const lastMonthEnd = today.subtract(1, \"month\").endOf(\"month\");\n const thisQuarterStart = dayjs().startOf(\"quarter\");\n const thisQuarterEnd = dayjs().endOf(\"quarter\");\n const lastQuarterStart = dayjs().subtract(1, \"quarter\").startOf(\"quarter\");\n const lastQuarterEnd = dayjs().subtract(1, \"quarter\").endOf(\"quarter\");\n const startOfLastYear = dayjs().subtract(1, \"year\").startOf(\"year\");\n const endOfLastYear = dayjs().subtract(1, \"year\").endOf(\"year\");\n const startOfYear = dayjs().startOf(\"year\");\n const endOfYear = dayjs().endOf(\"year\");\n\n const startOf24Hours = dayjs().subtract(24, \"hour\");\n const now = dayjs();\n const startOfLast7Days = dayjs().subtract(7, \"day\");\n const startOfWeek = dayjs().startOf(\"week\");\n const startOfLast30Days = dayjs().subtract(30, \"day\");\n const startOfMonth = today.startOf(\"month\");\n\n return [\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.allTime\"),\n value: { startDate: null, endDate: null, rangeType: \"all\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last24Hours\"),\n value: { startDate: startOf24Hours, endDate: now, rangeType: \"hours\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last7Days\"),\n value: {\n startDate: startOfLast7Days,\n endDate: now,\n rangeType: \"days\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisWeek\"),\n value: { startDate: startOfWeek, endDate: now, rangeType: \"week\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastWeek\"),\n value: {\n startDate: startOfLastWeek,\n endDate: endOfLastWeek,\n rangeType: \"week\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last30Days\"),\n value: {\n startDate: startOfLast30Days,\n endDate: now,\n rangeType: \"days\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisMonth\"),\n value: { startDate: startOfMonth, endDate: now, rangeType: \"month\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastMonth\"),\n value: {\n startDate: lastMonthStart,\n endDate: lastMonthEnd,\n rangeType: \"month\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisQuarter\"),\n value: {\n startDate: thisQuarterStart,\n endDate: thisQuarterEnd,\n rangeType: \"quarter\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastQuarter\"),\n value: {\n startDate: lastQuarterStart,\n endDate: lastQuarterEnd,\n rangeType: \"quarter\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisYear\"),\n value: { startDate: startOfYear, endDate: endOfYear, rangeType: \"year\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastYear\"),\n value: {\n startDate: startOfLastYear,\n endDate: endOfLastYear,\n rangeType: \"year\",\n },\n },\n {\n label: t(\n \"neetoMolecules.dateRangeFilter.timePeriodOptions.customDuration\"\n ),\n value: \"custom\",\n },\n ];\n};\n","import { globalProps } from \"neetocommons/initializers\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Select, DatePicker } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\n\nimport { defaultTimePeriodOptions } from \"./utils\";\n\nconst DateRangeFilter = ({\n timePeriodOptions,\n timePeriod,\n setTimePeriod,\n datePickerProps,\n}) => {\n const isCustom =\n timePeriod?.value === \"custom\" || timePeriod?.value?.rangeType === \"custom\";\n\n const startDate = timePeriod?.value?.startDate;\n const endDate = timePeriod?.value?.endDate;\n const requiredDateFormat = globalProps?.user?.dateFormat;\n\n const options = timePeriodOptions || defaultTimePeriodOptions();\n\n return (\n <div className=\"flex flex-wrap gap-3\" data-testid=\"date-range-filter\">\n <div className=\"w-40\">\n <Select\n {...{ options }}\n required\n getOptionValue={prop(\"label\")}\n strategy=\"fixed\"\n value={timePeriod || options[0]}\n onChange={option => setTimePeriod(option)}\n />\n </div>\n {isCustom && (\n <div\n className=\"max-w-sm flex-grow\"\n data-testid=\"date-range-filter-custom-duration-picker\"\n >\n <DatePicker\n autoFocus\n className=\"w-full\"\n dateFormat={requiredDateFormat}\n picker=\"date\"\n type=\"range\"\n defaultValue={[\n startDate ? dayjs(startDate) : null,\n endDate ? dayjs(endDate) : null,\n ]}\n onChange={([startDate, endDate]) => {\n setTimePeriod({\n label: timePeriod?.label,\n value: { startDate, endDate, rangeType: \"custom\" },\n });\n }}\n {...datePickerProps}\n />\n </div>\n )}\n </div>\n );\n};\n\nDateRangeFilter.propTypes = {\n /**\n * An array of objects that can be passed to the component which can be used to override default filter options.\n */\n timePeriodOptions: PropTypes.arrayOf(\n PropTypes.shape({ label: PropTypes.string, value: PropTypes.object })\n ),\n /**\n * The state corresponding to the currently selected date range filter.\n */\n timePeriod: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.object,\n }),\n /**\n * The setter method for `timePeriod` state.\n */\n setTimePeriod: PropTypes.func,\n /**\n * These props will be passed to the date range picker for custom date range selection.\n */\n datePickerProps: PropTypes.object,\n};\n\nexport default DateRangeFilter;\n"],"names":["defaultTimePeriodOptions","today","dayjs","startOf","startOfLastWeek","subtract","endOfLastWeek","endOf","lastMonthStart","lastMonthEnd","thisQuarterStart","thisQuarterEnd","lastQuarterStart","lastQuarterEnd","startOfLastYear","endOfLastYear","startOfYear","endOfYear","startOf24Hours","now","startOfLast7Days","startOfWeek","startOfLast30Days","startOfMonth","label","t","value","startDate","endDate","rangeType","DateRangeFilter","_ref","_timePeriod$value","_timePeriod$value2","_timePeriod$value3","_globalProps$user","timePeriodOptions","timePeriod","setTimePeriod","datePickerProps","isCustom","requiredDateFormat","globalProps","user","dateFormat","options","_jsxs","className","children","_jsx","Select","required","getOptionValue","prop","strategy","onChange","option","DatePicker","_objectSpread","autoFocus","picker","type","defaultValue","_ref2","_ref3","_slicedToArray"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DateRangeFilter.js","sources":["../../src/components/DateRangeFilter/utils.js","../../src/components/DateRangeFilter/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { dayjs } from \"neetocommons/utils\";\n\nexport const defaultTimePeriodOptions = () => {\n const today = dayjs().startOf(\"day\");\n const startOfLastWeek = today.subtract(7, \"day\").startOf(\"week\");\n\n const endOfLastWeek = today.subtract(7, \"day\").endOf(\"week\");\n const lastMonthStart = today.subtract(1, \"month\").startOf(\"month\");\n const lastMonthEnd = today.subtract(1, \"month\").endOf(\"month\");\n const thisQuarterStart = dayjs().startOf(\"quarter\");\n const thisQuarterEnd = dayjs().endOf(\"quarter\");\n const lastQuarterStart = dayjs().subtract(1, \"quarter\").startOf(\"quarter\");\n const lastQuarterEnd = dayjs().subtract(1, \"quarter\").endOf(\"quarter\");\n const startOfLastYear = dayjs().subtract(1, \"year\").startOf(\"year\");\n const endOfLastYear = dayjs().subtract(1, \"year\").endOf(\"year\");\n const startOfYear = dayjs().startOf(\"year\");\n const endOfYear = dayjs().endOf(\"year\");\n\n const startOf24Hours = dayjs().subtract(24, \"hour\");\n const now = dayjs();\n const startOfLast7Days = dayjs().subtract(7, \"day\");\n const startOfWeek = dayjs().startOf(\"week\");\n const startOfLast30Days = dayjs().subtract(30, \"day\");\n const startOfMonth = today.startOf(\"month\");\n\n return [\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.allTime\"),\n value: { startDate: null, endDate: null, rangeType: \"all\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last24Hours\"),\n value: { startDate: startOf24Hours, endDate: now, rangeType: \"hours\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last7Days\"),\n value: {\n startDate: startOfLast7Days,\n endDate: now,\n rangeType: \"days\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisWeek\"),\n value: { startDate: startOfWeek, endDate: now, rangeType: \"week\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastWeek\"),\n value: {\n startDate: startOfLastWeek,\n endDate: endOfLastWeek,\n rangeType: \"week\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.last30Days\"),\n value: {\n startDate: startOfLast30Days,\n endDate: now,\n rangeType: \"days\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisMonth\"),\n value: { startDate: startOfMonth, endDate: now, rangeType: \"month\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastMonth\"),\n value: {\n startDate: lastMonthStart,\n endDate: lastMonthEnd,\n rangeType: \"month\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisQuarter\"),\n value: {\n startDate: thisQuarterStart,\n endDate: thisQuarterEnd,\n rangeType: \"quarter\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastQuarter\"),\n value: {\n startDate: lastQuarterStart,\n endDate: lastQuarterEnd,\n rangeType: \"quarter\",\n },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.thisYear\"),\n value: { startDate: startOfYear, endDate: endOfYear, rangeType: \"year\" },\n },\n {\n label: t(\"neetoMolecules.dateRangeFilter.timePeriodOptions.lastYear\"),\n value: {\n startDate: startOfLastYear,\n endDate: endOfLastYear,\n rangeType: \"year\",\n },\n },\n {\n label: t(\n \"neetoMolecules.dateRangeFilter.timePeriodOptions.customDuration\"\n ),\n value: \"custom\",\n },\n ];\n};\n","import { globalProps } from \"neetocommons/initializers\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Select, DatePicker } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { prop } from \"ramda\";\n\nimport { defaultTimePeriodOptions } from \"./utils\";\n\nconst DateRangeFilter = ({\n timePeriodOptions,\n timePeriod,\n setTimePeriod,\n datePickerProps,\n}) => {\n const isCustom =\n timePeriod?.value === \"custom\" || timePeriod?.value?.rangeType === \"custom\";\n\n const startDate = timePeriod?.value?.startDate;\n const endDate = timePeriod?.value?.endDate;\n const requiredDateFormat = globalProps?.user?.dateFormat;\n\n const options = timePeriodOptions || defaultTimePeriodOptions();\n\n return (\n <div className=\"flex flex-wrap gap-3\" data-testid=\"date-range-filter\">\n <div className=\"w-40\">\n <Select\n {...{ options }}\n required\n getOptionValue={prop(\"label\")}\n strategy=\"fixed\"\n value={timePeriod || options[0]}\n onChange={option => setTimePeriod(option)}\n />\n </div>\n {isCustom && (\n <div\n className=\"max-w-sm flex-grow\"\n data-testid=\"date-range-filter-custom-duration-picker\"\n >\n <DatePicker\n autoFocus\n className=\"w-full\"\n dateFormat={requiredDateFormat}\n picker=\"date\"\n type=\"range\"\n value={[\n startDate ? dayjs(startDate) : null,\n endDate ? dayjs(endDate) : null,\n ]}\n onChange={([startDate, endDate]) => {\n setTimePeriod({\n label: timePeriod?.label,\n value: { startDate, endDate, rangeType: \"custom\" },\n });\n }}\n {...datePickerProps}\n />\n </div>\n )}\n </div>\n );\n};\n\nDateRangeFilter.propTypes = {\n /**\n * An array of objects that can be passed to the component which can be used to override default filter options.\n */\n timePeriodOptions: PropTypes.arrayOf(\n PropTypes.shape({ label: PropTypes.string, value: PropTypes.object })\n ),\n /**\n * The state corresponding to the currently selected date range filter.\n */\n timePeriod: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.object,\n }),\n /**\n * The setter method for `timePeriod` state.\n */\n setTimePeriod: PropTypes.func,\n /**\n * These props will be passed to the date range picker for custom date range selection.\n */\n datePickerProps: PropTypes.object,\n};\n\nexport default DateRangeFilter;\n"],"names":["defaultTimePeriodOptions","today","dayjs","startOf","startOfLastWeek","subtract","endOfLastWeek","endOf","lastMonthStart","lastMonthEnd","thisQuarterStart","thisQuarterEnd","lastQuarterStart","lastQuarterEnd","startOfLastYear","endOfLastYear","startOfYear","endOfYear","startOf24Hours","now","startOfLast7Days","startOfWeek","startOfLast30Days","startOfMonth","label","t","value","startDate","endDate","rangeType","DateRangeFilter","_ref","_timePeriod$value","_timePeriod$value2","_timePeriod$value3","_globalProps$user","timePeriodOptions","timePeriod","setTimePeriod","datePickerProps","isCustom","requiredDateFormat","globalProps","user","dateFormat","options","_jsxs","className","children","_jsx","Select","required","getOptionValue","prop","strategy","onChange","option","DatePicker","_objectSpread","autoFocus","picker","type","_ref2","_ref3","_slicedToArray"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-molecules",
|
|
3
|
-
"version": "3.16.
|
|
3
|
+
"version": "3.16.81",
|
|
4
4
|
"description": "A package of reusable molecular components for neeto products.",
|
|
5
5
|
"repository": "git@github.com:bigbinary/neeto-molecules.git",
|
|
6
6
|
"author": "Amaljith K <amaljith.k@bigbinary.com>",
|