@pega/lists-react 9.0.0-build.19.4 → 9.0.0-build.19.6

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 (63) hide show
  1. package/lib/Core/Components/Toolbar/AdvanceToolbar.d.ts.map +1 -1
  2. package/lib/Core/Components/Toolbar/AdvanceToolbar.js +2 -13
  3. package/lib/Core/Components/Toolbar/AdvanceToolbar.js.map +1 -1
  4. package/lib/Core/Components/Toolbar/FieldSelector.d.ts +1 -0
  5. package/lib/Core/Components/Toolbar/FieldSelector.d.ts.map +1 -1
  6. package/lib/Core/Components/Toolbar/FieldSelector.js +3 -2
  7. package/lib/Core/Components/Toolbar/FieldSelector.js.map +1 -1
  8. package/lib/Core/Components/Toolbar/Grouping.types.d.ts +0 -6
  9. package/lib/Core/Components/Toolbar/Grouping.types.d.ts.map +1 -1
  10. package/lib/Core/Components/Toolbar/Grouping.types.js.map +1 -1
  11. package/lib/Core/Components/Toolbar/hooks/useGroup/DateFunctionSelector.d.ts +14 -18
  12. package/lib/Core/Components/Toolbar/hooks/useGroup/DateFunctionSelector.d.ts.map +1 -1
  13. package/lib/Core/Components/Toolbar/hooks/useGroup/DateFunctionSelector.js +14 -15
  14. package/lib/Core/Components/Toolbar/hooks/useGroup/DateFunctionSelector.js.map +1 -1
  15. package/lib/Core/Components/Toolbar/hooks/useGroup/GroupRenderer.d.ts +3 -2
  16. package/lib/Core/Components/Toolbar/hooks/useGroup/GroupRenderer.d.ts.map +1 -1
  17. package/lib/Core/Components/Toolbar/hooks/useGroup/GroupRenderer.js +4 -4
  18. package/lib/Core/Components/Toolbar/hooks/useGroup/GroupRenderer.js.map +1 -1
  19. package/lib/Core/Components/Toolbar/hooks/useGroup/useGroup.d.ts.map +1 -1
  20. package/lib/Core/Components/Toolbar/hooks/useGroup/useGroup.js +6 -3
  21. package/lib/Core/Components/Toolbar/hooks/useGroup/useGroup.js.map +1 -1
  22. package/lib/Core/Components/Toolbar/hooks/useSort/Row.d.ts +4 -4
  23. package/lib/Core/Components/Toolbar/hooks/useSort/Row.d.ts.map +1 -1
  24. package/lib/Core/Components/Toolbar/hooks/useSort/Row.js +6 -6
  25. package/lib/Core/Components/Toolbar/hooks/useSort/Row.js.map +1 -1
  26. package/lib/Core/Components/Toolbar/hooks/useSort/SortRenderer.d.ts +2 -1
  27. package/lib/Core/Components/Toolbar/hooks/useSort/SortRenderer.d.ts.map +1 -1
  28. package/lib/Core/Components/Toolbar/hooks/useSort/SortRenderer.js +8 -2
  29. package/lib/Core/Components/Toolbar/hooks/useSort/SortRenderer.js.map +1 -1
  30. package/lib/Core/Components/Toolbar/hooks/useSort/useSort.d.ts.map +1 -1
  31. package/lib/Core/Components/Toolbar/hooks/useSort/useSort.js +2 -2
  32. package/lib/Core/Components/Toolbar/hooks/useSort/useSort.js.map +1 -1
  33. package/lib/Core/Views/Map/index.js +1 -1
  34. package/lib/Core/Views/Map/index.js.map +1 -1
  35. package/lib/Core/Views/Timeline/Timeline.d.ts.map +1 -1
  36. package/lib/Core/Views/Timeline/Timeline.js +11 -11
  37. package/lib/Core/Views/Timeline/Timeline.js.map +1 -1
  38. package/lib/Core/Views/Timeline/Timeline.styles.d.ts +1 -1
  39. package/lib/Core/Views/Timeline/Timeline.styles.d.ts.map +1 -1
  40. package/lib/Core/Views/Timeline/Timeline.styles.js +7 -10
  41. package/lib/Core/Views/Timeline/Timeline.styles.js.map +1 -1
  42. package/lib/Core/Views/Timeline/Timeline.types.d.ts +7 -9
  43. package/lib/Core/Views/Timeline/Timeline.types.d.ts.map +1 -1
  44. package/lib/Core/Views/Timeline/Timeline.types.js.map +1 -1
  45. package/lib/Core/Views/Timeline/__tests__/Timeline.mocks.d.ts +2 -2
  46. package/lib/Core/Views/Timeline/__tests__/Timeline.mocks.d.ts.map +1 -1
  47. package/lib/Core/Views/Timeline/__tests__/Timeline.mocks.js.map +1 -1
  48. package/lib/Core/Views/Timeline/index.d.ts.map +1 -1
  49. package/lib/Core/Views/Timeline/index.js +3 -3
  50. package/lib/Core/Views/Timeline/index.js.map +1 -1
  51. package/lib/Core/Views/Timeline/utils.d.ts +8 -10
  52. package/lib/Core/Views/Timeline/utils.d.ts.map +1 -1
  53. package/lib/Core/Views/Timeline/utils.js +136 -58
  54. package/lib/Core/Views/Timeline/utils.js.map +1 -1
  55. package/package.json +7 -7
  56. package/lib/Core/Components/Toolbar/Timeline/TimelineToolbar.d.ts +0 -7
  57. package/lib/Core/Components/Toolbar/Timeline/TimelineToolbar.d.ts.map +0 -1
  58. package/lib/Core/Components/Toolbar/Timeline/TimelineToolbar.js +0 -109
  59. package/lib/Core/Components/Toolbar/Timeline/TimelineToolbar.js.map +0 -1
  60. package/lib/Core/Views/Timeline/utility.d.ts +0 -8
  61. package/lib/Core/Views/Timeline/utility.d.ts.map +0 -1
  62. package/lib/Core/Views/Timeline/utility.js +0 -120
  63. package/lib/Core/Views/Timeline/utility.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Timeline.mocks.js","sourceRoot":"","sources":["../../../../../Core/Views/Timeline/__tests__/Timeline.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Link, CurrencyDisplay, Text, HTML } from '@pega/cosmos-react-core';\n\nimport type TimelineProps from '../Timeline.types';\n\nconst activity: TimelineProps['activity'] = [\n {\n id: '1',\n date: Date.UTC(2025, 2, 20, 19, 28, 22),\n title: 'Email blast: \"Buy today\"',\n icon: 'bell-off-solid',\n content: [\n {\n id: '11',\n name: 'Progress and Risk',\n value: <HTML content='<ul><li>Progress</li><li>Risk</li></ul>' />\n }\n ]\n },\n {\n id: '2',\n date: Date.UTC(2025, 2, 20, 18, 6, 22),\n title: 'Confirm eligibility',\n icon: 'circle-stacked-mixed'\n },\n {\n id: '3',\n date: Date.UTC(2023, 2, 10, 9, 26, 22),\n title: 'Review customer bill',\n status: { variant: 'pending', children: 'Wait' }\n },\n {\n id: '4',\n date: Date.UTC(2022, 7, 10, 18, 6, 22),\n title: 'Confirm eligibility',\n icon: 'circle-stacked-mixed'\n },\n {\n id: '5',\n date: Date.UTC(2022, 6, 18, 0, 1, 22),\n title: (\n <Link href='https://www.pega.com' target='_blank'>\n Visit Pega\n </Link>\n )\n },\n {\n id: '6',\n date: Date.UTC(2021, 6, 10, 13, 20, 22),\n title: 'Update plat',\n icon: 'bulb-solid',\n status: { variant: 'success', children: 'Good' }\n },\n {\n id: '7',\n date: Date.UTC(2021, 1, 20, 13, 20, 22),\n title: 'Sent over request',\n icon: 'bulb-solid',\n defaultExpanded: true,\n status: { variant: 'success', children: 'Good' },\n content: [\n { id: '31', name: 'Date range', value: <Text>Jan 1, 2021 - May 3, 2021</Text> },\n {\n id: '32',\n name: \"What's next\",\n value: (\n <Text>\n We will fulfill your request within 3 business days. You will receive your statement\n copy via mail at 23 Main St. Boston, MA.\n </Text>\n )\n },\n {\n id: '33',\n name: 'Current due amount',\n value: <CurrencyDisplay value={1343.45} currencyISOCode='USD' />\n }\n ]\n },\n {\n id: '8',\n date: Date.UTC(2021, 1, 20, 13, 19, 22),\n title: 'Fulfill customer request for last month’s billing statement',\n icon: 'layers',\n status: { variant: 'pending', children: 'Wait' },\n content: [\n { id: '41', name: 'Date range', value: <Text>Jan 1, 2021 - May 3, 2021</Text> },\n {\n id: '42',\n name: \"What's next\",\n value: (\n <Text>\n We will fulfill your request within 3 business days. You will receive your statement\n copy via mail at 23 Main St. Boston, MA.\n </Text>\n )\n },\n {\n id: '43',\n name: 'Current due amount',\n value: <CurrencyDisplay value={121} currencyISOCode='USD' />\n }\n ]\n },\n {\n id: '9',\n date: Date.UTC(2021, 1, 20, 0, 1, 22),\n title: (\n <Link href='https://community.pega.com/support' target='_blank'>\n Visit Pega support for assistance\n </Link>\n )\n },\n {\n id: '10',\n date: Date.UTC(2021, 1, 19, 13, 20, 22),\n title: 'Sent over request',\n icon: 'bulb-solid',\n status: { variant: 'success', children: 'Good' },\n content: [\n { id: '61', name: 'Date range', value: <Text>Jan 1, 2021 - May 3, 2021</Text> },\n {\n id: '62',\n name: \"What's next\",\n value: (\n <Text>\n We will fulfill your request within 3 business days. You will receive your statement\n copy via mail at 23 Main St. Boston, MA.\n </Text>\n )\n },\n {\n id: '64',\n name: 'Current due amount long label',\n value: <CurrencyDisplay value={248.87} currencyISOCode='USD' />\n }\n ]\n },\n {\n id: '11',\n date: Date.UTC(2021, 1, 17, 36, 20, 22),\n title: 'Initial claim received',\n status: { variant: 'pending', children: 'Wait' }\n },\n {\n id: '12',\n date: Date.UTC(2020, 12, 15, 13, 19, 22),\n title: 'Balance inquiry',\n icon: 'phone-solid',\n status: { variant: 'pending', children: 'Wait' }\n },\n {\n id: '13',\n date: Date.UTC(2020, 2, 20, 19, 28, 22),\n title: 'Email blast: \"Best Offer\"',\n icon: 'bell-off-solid'\n },\n {\n id: '14',\n date: Date.UTC(2020, 1, 12, 10, 25, 48),\n title: 'Receive customer bill',\n icon: 'layers',\n status: { variant: 'success', children: 'Good' }\n }\n];\n\nexport default activity;\n"]}
1
+ {"version":3,"file":"Timeline.mocks.js","sourceRoot":"","sources":["../../../../../Core/Views/Timeline/__tests__/Timeline.mocks.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Link, CurrencyDisplay, Text, HTML } from '@pega/cosmos-react-core';\n\nimport type { ActivityObject } from '../Timeline.types';\n\nconst activity: ActivityObject[] = [\n {\n id: '1',\n date: Date.UTC(2025, 2, 20, 19, 28, 22),\n title: 'Email blast: \"Buy today\"',\n icon: 'bell-off-solid',\n content: [\n {\n id: '11',\n name: 'Progress and Risk',\n value: <HTML content='<ul><li>Progress</li><li>Risk</li></ul>' />\n }\n ]\n },\n {\n id: '2',\n date: Date.UTC(2025, 2, 20, 18, 6, 22),\n title: 'Confirm eligibility',\n icon: 'circle-stacked-mixed'\n },\n {\n id: '3',\n date: Date.UTC(2023, 2, 10, 9, 26, 22),\n title: 'Review customer bill',\n status: { variant: 'pending', children: 'Wait' }\n },\n {\n id: '4',\n date: Date.UTC(2022, 7, 10, 18, 6, 22),\n title: 'Confirm eligibility',\n icon: 'circle-stacked-mixed'\n },\n {\n id: '5',\n date: Date.UTC(2022, 6, 18, 0, 1, 22),\n title: (\n <Link href='https://www.pega.com' target='_blank'>\n Visit Pega\n </Link>\n )\n },\n {\n id: '6',\n date: Date.UTC(2021, 6, 10, 13, 20, 22),\n title: 'Update plat',\n icon: 'bulb-solid',\n status: { variant: 'success', children: 'Good' }\n },\n {\n id: '7',\n date: Date.UTC(2021, 1, 20, 13, 20, 22),\n title: 'Sent over request',\n icon: 'bulb-solid',\n defaultExpanded: true,\n status: { variant: 'success', children: 'Good' },\n content: [\n { id: '31', name: 'Date range', value: <Text>Jan 1, 2021 - May 3, 2021</Text> },\n {\n id: '32',\n name: \"What's next\",\n value: (\n <Text>\n We will fulfill your request within 3 business days. You will receive your statement\n copy via mail at 23 Main St. Boston, MA.\n </Text>\n )\n },\n {\n id: '33',\n name: 'Current due amount',\n value: <CurrencyDisplay value={1343.45} currencyISOCode='USD' />\n }\n ]\n },\n {\n id: '8',\n date: Date.UTC(2021, 1, 20, 13, 19, 22),\n title: 'Fulfill customer request for last month’s billing statement',\n icon: 'layers',\n status: { variant: 'pending', children: 'Wait' },\n content: [\n { id: '41', name: 'Date range', value: <Text>Jan 1, 2021 - May 3, 2021</Text> },\n {\n id: '42',\n name: \"What's next\",\n value: (\n <Text>\n We will fulfill your request within 3 business days. You will receive your statement\n copy via mail at 23 Main St. Boston, MA.\n </Text>\n )\n },\n {\n id: '43',\n name: 'Current due amount',\n value: <CurrencyDisplay value={121} currencyISOCode='USD' />\n }\n ]\n },\n {\n id: '9',\n date: Date.UTC(2021, 1, 20, 0, 1, 22),\n title: (\n <Link href='https://community.pega.com/support' target='_blank'>\n Visit Pega support for assistance\n </Link>\n )\n },\n {\n id: '10',\n date: Date.UTC(2021, 1, 19, 13, 20, 22),\n title: 'Sent over request',\n icon: 'bulb-solid',\n status: { variant: 'success', children: 'Good' },\n content: [\n { id: '61', name: 'Date range', value: <Text>Jan 1, 2021 - May 3, 2021</Text> },\n {\n id: '62',\n name: \"What's next\",\n value: (\n <Text>\n We will fulfill your request within 3 business days. You will receive your statement\n copy via mail at 23 Main St. Boston, MA.\n </Text>\n )\n },\n {\n id: '64',\n name: 'Current due amount long label',\n value: <CurrencyDisplay value={248.87} currencyISOCode='USD' />\n }\n ]\n },\n {\n id: '11',\n date: Date.UTC(2021, 1, 17, 36, 20, 22),\n title: 'Initial claim received',\n status: { variant: 'pending', children: 'Wait' }\n },\n {\n id: '12',\n date: Date.UTC(2020, 12, 15, 13, 19, 22),\n title: 'Balance inquiry',\n icon: 'phone-solid',\n status: { variant: 'pending', children: 'Wait' }\n },\n {\n id: '13',\n date: Date.UTC(2020, 2, 20, 19, 28, 22),\n title: 'Email blast: \"Best Offer\"',\n icon: 'bell-off-solid'\n },\n {\n id: '14',\n date: Date.UTC(2020, 1, 12, 10, 25, 48),\n title: 'Receive customer bill',\n icon: 'layers',\n status: { variant: 'success', children: 'Good' }\n }\n];\n\nexport default activity;\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Timeline/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAkElE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;CACxB;AAED,QAAA,MAAM,QAAQ,GAAI,UAAU,iBAAiB,4CAwF5C,CAAC;AAEF,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Timeline/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAkElE,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;CACxB;AAED,QAAA,MAAM,QAAQ,GAAI,UAAU,iBAAiB,4CA2F5C,CAAC;AAEF,eAAe,QAAQ,CAAC"}
@@ -14,7 +14,7 @@ import EmptyContainer from '../../Components/DefaultComponents/EmptyContainer';
14
14
  import { isFilterApplied } from '../../Utils';
15
15
  import useTranslate from '../../Hooks/useTranslate';
16
16
  import TimelineInner from './Timeline';
17
- import getActivity, { mapDateFnToGroupOption } from './utility';
17
+ import getActivities from './utils';
18
18
  const StyledTimeline = styled(TimelineInner)(({ theme }) => {
19
19
  return css `
20
20
  flex: 1;
@@ -74,12 +74,12 @@ const Timeline = ({ view }) => {
74
74
  setLoading(false);
75
75
  }
76
76
  }, [count.total, rows.length, paginationEndIndex, visibleGroupHeaders]);
77
- const activity = useMemo(() => getActivity(rows, columns, meta), [rows, columns, meta]);
77
+ const activities = useMemo(() => getActivities(groupHeaders, columns, meta, groups?.[0]), [groupHeaders, columns, meta, groups?.[0]]);
78
78
  let loadMore;
79
79
  if (hasMore) {
80
80
  loadMore = onLoadMore;
81
81
  }
82
- return (_jsx(RsCardWrapper, { children: _jsxs(StyledTimelineContainer, { view: view, isFullscreen: isFullscreen, children: [_jsx(Toolbar, { view: view }), _jsx(RenderView, { view: view, type: EXTERNAL_FILTERS }), _jsxs(StyledRowContainer, { className: 'container row-container', isFullscreen: isFullscreen, view: view, children: [_jsx(StyledTimeline, { activity: activity || [], currentTime: new Date(), groupBy: mapDateFnToGroupOption(groups?.[0]?.dateFunction), loading: loading || !rows || !!view.isLoading, loadMore: loadMore, "data-test-id": 'Timeline', ref: ref }), domContainer && hasNoRecords && (_jsx(EmptyContainer, { message: isFilterApplied({ filterExpression, searchText, externalState }, meta.externalFilters)
82
+ return (_jsx(RsCardWrapper, { children: _jsxs(StyledTimelineContainer, { view: view, isFullscreen: isFullscreen, children: [_jsx(Toolbar, { view: view }), _jsx(RenderView, { view: view, type: EXTERNAL_FILTERS }), _jsxs(StyledRowContainer, { className: 'container row-container', isFullscreen: isFullscreen, view: view, children: [_jsx(StyledTimeline, { activities: activities, currentTime: new Date(), groupBy: groups?.[0], loading: loading || !rows || !!view.isLoading, loadMore: loadMore, "data-test-id": 'Timeline', ref: ref }), domContainer && hasNoRecords && (_jsx(EmptyContainer, { message: isFilterApplied({ filterExpression, searchText, externalState }, meta.externalFilters)
83
83
  ? translate('No records found')
84
84
  : translate('No records') }))] })] }) }));
85
85
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../Core/Views/Timeline/index.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAC1E,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAGjF,oDAAoD;AACpD,aAAa;AACb,OAAO,OAAO,MAAM,0BAA0B,CAAC;AAC/C,OAAO,UAAU,MAAM,6CAA6C,CAAC;AACrE,OAAO,QAAQ,MAAM,yCAAyC,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,mCAAmC,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACjG,OAAO,cAAc,MAAM,mDAAmD,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,YAAY,MAAM,0BAA0B,CAAC;AAEpD,OAAO,aAAa,MAAM,YAAY,CAAC;AACvC,OAAO,WAAW,EAAE,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAEhE,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;IACzD,OAAO,GAAG,CAAA;;0BAEc,KAAK,CAAC,IAAI,CAAC,OAAO;;GAEzC,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,cAAc,CAAC,YAAY,GAAG,gBAAgB,CAAC;AAO/C,MAAM,uBAAuB,GAAG,MAAM,CAAC,GAAG,CACxC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE;IACzB,OAAO,GAAG,CAAA;;QAEN,GAAG,EAAE,CAAC,sBAAsB,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;KACvD,CAAC;AACJ,CAAC,CACF,CAAC;AAOF,MAAM,kBAAkB,GAAG,MAAM,CAAC,GAAG,CAA0B,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE;IACxF,MAAM,EACJ,UAAU,EACV,cAAc,EACd,IAAI,EAAE,EAAE,SAAS,EAAE,EACpB,GAAG,IAAI,CAAC;IACT,OAAO,GAAG,CAAA;MACN,GAAG,EAAE,CAAC,mCAAmC,EAAE;;kBAE/B,SAAS,IAAI,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;;;;cAIxD,UAAU,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,UAAU,IAAI,CAAC,CAAC,CAAC,MAAM;GACnE,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,0BAA0B,GAAG,EAAE,CAAC;AACtC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AAMrC,MAAM,QAAQ,GAAG,CAAC,EAAE,IAAI,EAAqB,EAAE,EAAE;IAC/C,MAAM,YAAY,GAAG,CAAC,CAAC,oBAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;IACnD,MAAM,CAAC,SAAS,CAAC,GAAG,YAAY,EAAE,CAAC;IACnC,MAAM,EACJ,IAAI,EACJ,IAAI,GAAG,EAAE,SAAS,EAAE,EAA4B,EAAE,OAAO,EAAE,EAAE,EAAsB,EACnF,OAAO,EACP,YAAY,EACZ,KAAK,EACL,YAAY,EACZ,YAAY,EACb,GAAG,IAAI,CAAC;IACT,MAAM,EAAE,gBAAgB,EAAE,aAAa,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACzF,MAAM,GAAG,GAAG,MAAM,CAAmB,IAAI,CAAC,CAAC;IAC3C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE7C,MAAM,KAAK,GAAG,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IACjC,MAAM,mBAAmB,GAAG,YAAY,EAAE,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;IAC5F,MAAM,kBAAkB,GAAG,iBAAiB,EAAE,eAAe,EAAE,QAAQ,IAAI,CAAC,CAAC;IAE7E,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,UAAU,CAAC,IAAI,CAAC,CAAC;YACjB,MAAM,QAAQ,GACZ,IAAK,CAAC,MAAM,GAAG,mBAAmB,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,yBAAyB,CAAC,CAAC;YACxF,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,IAAK,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAE/E,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YACnB,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,IAAI,CAAC,YAAY,IAAI,0BAA0B;YACzD,EAAE,EAAE,iBAAiB;SACtB,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnC,SAAS,CAAC,GAAG,EAAE;QACb,UAAU,CAAC,IAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,kBAAkB,IAAI,IAAK,CAAC,MAAM,GAAG,mBAAmB,IAAI,IAAK,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,EAAE,CAAC;YAC7F,UAAU,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,IAAK,CAAC,MAAM,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAC,CAAC;IAEzE,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAExF,IAAI,QAAQ,CAAC;IACb,IAAI,OAAO,EAAE,CAAC;QACZ,QAAQ,GAAG,UAAU,CAAC;IACxB,CAAC;IAED,OAAO,CACL,KAAC,aAAa,cACZ,MAAC,uBAAuB,IAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,YAAY,aAC7D,KAAC,OAAO,IAAC,IAAI,EAAE,IAAI,GAAI,EACvB,KAAC,UAAU,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,GAAI,EAElD,MAAC,kBAAkB,IACjB,SAAS,EAAC,yBAAyB,EACnC,YAAY,EAAE,YAAY,EAC1B,IAAI,EAAE,IAAI,aAEV,KAAC,cAAc,IACb,QAAQ,EAAE,QAAQ,IAAI,EAAE,EACxB,WAAW,EAAE,IAAI,IAAI,EAAE,EACvB,OAAO,EAAE,sBAAsB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,EAC1D,OAAO,EAAE,OAAO,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,EAC7C,QAAQ,EAAE,QAAQ,kBACL,UAAU,EACvB,GAAG,EAAE,GAAG,GACR,EACD,YAAY,IAAI,YAAY,IAAI,CAC/B,KAAC,cAAc,IACb,OAAO,EACL,eAAe,CACb,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,EAC/C,IAAI,CAAC,eAAe,CACrB;gCACC,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC;gCAC/B,CAAC,CAAC,SAAS,CAAC,YAAY,CAAC,GAE7B,CACH,IACkB,IACG,GACZ,CACjB,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC","sourcesContent":["import { useEffect, useCallback, useMemo, useState, useRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { defaultThemeProp, useFullscreenContext } from '@pega/cosmos-react-core';\nimport type { RsCoreTypes } from 'pega-repeating-structures-core';\n\n// TODO remove ts-ignore once Toolbar migrated to TS\n// @ts-ignore\nimport Toolbar from '../../Components/Toolbar';\nimport RenderView from '../../Components/RenderingEngine/RenderView';\nimport getCount from '../../Components/Toolbar/utils/getCount';\nimport { EXTERNAL_FILTERS } from '../../constants';\nimport RsCardWrapper from '../RsCardWrapper';\nimport { generateRSDataContainerHeightStyles, generateRSHeightStyles } from '../../Utils/styles';\nimport EmptyContainer from '../../Components/DefaultComponents/EmptyContainer';\nimport { isFilterApplied } from '../../Utils';\nimport useTranslate from '../../Hooks/useTranslate';\n\nimport TimelineInner from './Timeline';\nimport getActivity, { mapDateFnToGroupOption } from './utility';\n\nconst StyledTimeline = styled(TimelineInner)(({ theme }) => {\n return css`\n flex: 1;\n padding-inline-end: ${theme.base.spacing};\n overflow: auto;\n `;\n});\n\nStyledTimeline.defaultProps = defaultThemeProp;\n\ninterface StyledTimelineContainerProps {\n view: RsCoreTypes.View;\n isFullscreen: boolean;\n}\n\nconst StyledTimelineContainer = styled.div<StyledTimelineContainerProps>(\n ({ view, isFullscreen }) => {\n return css`\n position: relative;\n ${() => generateRSHeightStyles({ view, isFullscreen })}\n `;\n }\n);\n\ninterface StyledRowContainerProps {\n isFullscreen: boolean;\n view: RsCoreTypes.View;\n}\n\nconst StyledRowContainer = styled.div<StyledRowContainerProps>(({ isFullscreen, view }) => {\n const {\n bodyHeight,\n totalItemCount,\n meta: { basicMode }\n } = view;\n return css`\n ${() => generateRSDataContainerHeightStyles()};\n position: relative;\n min-height: ${basicMode && totalItemCount === 0 ? '100px' : 'auto'};\n flex-grow: 0;\n\n /* Adjust height based on number of rows configured */\n height: ${bodyHeight && !isFullscreen ? `${bodyHeight}px` : 'auto'};\n `;\n});\n\nconst INITIAL_DEFAULT_CHUNK_SIZE = 40;\nconst APPEND_DEFAULT_CHUNK_SIZE = 25;\n\nexport interface TimelineViewProps {\n view: RsCoreTypes.View;\n}\n\nconst Timeline = ({ view }: TimelineViewProps) => {\n const isFullscreen = !!useFullscreenContext()?.[0];\n const [translate] = useTranslate();\n const {\n rows,\n meta = { fieldDefs: [] as RsCoreTypes.FieldDef[], itemKey: '' } as RsCoreTypes.Meta,\n columns,\n groupHeaders,\n state,\n domContainer,\n hasNoRecords\n } = view;\n const { filterExpression, externalState, searchText, paginationOptions, groups } = state;\n const ref = useRef<HTMLTableElement>(null);\n const [loading, setLoading] = useState(false);\n const [hasMore, setHasMore] = useState(true);\n\n const count = getCount({ view });\n const visibleGroupHeaders = groupHeaders?.filter(({ isVisible }) => isVisible)?.length ?? 0;\n const paginationEndIndex = paginationOptions?.rootVirtualiser?.endIndex ?? 0;\n\n const onLoadMore = useCallback(() => {\n if (!loading) {\n setLoading(true);\n const endIndex =\n rows!.length + visibleGroupHeaders + (meta.numberOfRows || APPEND_DEFAULT_CHUNK_SIZE);\n view.type.onPaginate({ startIndex: 0, endIndex, id: 'rootVirtualiser' });\n }\n }, [loading, view.type, meta.numberOfRows, rows!.length, visibleGroupHeaders]);\n\n useEffect(() => {\n view.type.onPaginate({\n startIndex: 0,\n endIndex: meta.numberOfRows || INITIAL_DEFAULT_CHUNK_SIZE,\n id: 'rootVirtualiser'\n });\n }, [view.type, meta.numberOfRows]);\n\n useEffect(() => {\n setHasMore(rows!.length !== count.total);\n if (paginationEndIndex <= rows!.length + visibleGroupHeaders || rows!.length === count.total) {\n setLoading(false);\n }\n }, [count.total, rows!.length, paginationEndIndex, visibleGroupHeaders]);\n\n const activity = useMemo(() => getActivity(rows, columns, meta), [rows, columns, meta]);\n\n let loadMore;\n if (hasMore) {\n loadMore = onLoadMore;\n }\n\n return (\n <RsCardWrapper>\n <StyledTimelineContainer view={view} isFullscreen={isFullscreen}>\n <Toolbar view={view} />\n <RenderView view={view} type={EXTERNAL_FILTERS} />\n\n <StyledRowContainer\n className='container row-container'\n isFullscreen={isFullscreen}\n view={view}\n >\n <StyledTimeline\n activity={activity || []}\n currentTime={new Date()}\n groupBy={mapDateFnToGroupOption(groups?.[0]?.dateFunction)}\n loading={loading || !rows || !!view.isLoading}\n loadMore={loadMore}\n data-test-id='Timeline'\n ref={ref}\n />\n {domContainer && hasNoRecords && (\n <EmptyContainer\n message={\n isFilterApplied(\n { filterExpression, searchText, externalState },\n meta.externalFilters\n )\n ? translate('No records found')\n : translate('No records')\n }\n />\n )}\n </StyledRowContainer>\n </StyledTimelineContainer>\n </RsCardWrapper>\n );\n};\n\nexport default Timeline;\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../Core/Views/Timeline/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useEffect, useCallback, useMemo, useState, useRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { defaultThemeProp, useFullscreenContext } from '@pega/cosmos-react-core';\nimport type { RsCoreTypes } from 'pega-repeating-structures-core';\n\n// TODO remove ts-ignore once Toolbar migrated to TS\n// @ts-ignore\nimport Toolbar from '../../Components/Toolbar';\nimport RenderView from '../../Components/RenderingEngine/RenderView';\nimport getCount from '../../Components/Toolbar/utils/getCount';\nimport { EXTERNAL_FILTERS } from '../../constants';\nimport RsCardWrapper from '../RsCardWrapper';\nimport { generateRSDataContainerHeightStyles, generateRSHeightStyles } from '../../Utils/styles';\nimport EmptyContainer from '../../Components/DefaultComponents/EmptyContainer';\nimport { isFilterApplied } from '../../Utils';\nimport useTranslate from '../../Hooks/useTranslate';\n\nimport TimelineInner from './Timeline';\nimport getActivities from './utils';\n\nconst StyledTimeline = styled(TimelineInner)(({ theme }) => {\n return css`\n flex: 1;\n padding-inline-end: ${theme.base.spacing};\n overflow: auto;\n `;\n});\n\nStyledTimeline.defaultProps = defaultThemeProp;\n\ninterface StyledTimelineContainerProps {\n view: RsCoreTypes.View;\n isFullscreen: boolean;\n}\n\nconst StyledTimelineContainer = styled.div<StyledTimelineContainerProps>(\n ({ view, isFullscreen }) => {\n return css`\n position: relative;\n ${() => generateRSHeightStyles({ view, isFullscreen })}\n `;\n }\n);\n\ninterface StyledRowContainerProps {\n isFullscreen: boolean;\n view: RsCoreTypes.View;\n}\n\nconst StyledRowContainer = styled.div<StyledRowContainerProps>(({ isFullscreen, view }) => {\n const {\n bodyHeight,\n totalItemCount,\n meta: { basicMode }\n } = view;\n return css`\n ${() => generateRSDataContainerHeightStyles()};\n position: relative;\n min-height: ${basicMode && totalItemCount === 0 ? '100px' : 'auto'};\n flex-grow: 0;\n\n /* Adjust height based on number of rows configured */\n height: ${bodyHeight && !isFullscreen ? `${bodyHeight}px` : 'auto'};\n `;\n});\n\nconst INITIAL_DEFAULT_CHUNK_SIZE = 40;\nconst APPEND_DEFAULT_CHUNK_SIZE = 25;\n\nexport interface TimelineViewProps {\n view: RsCoreTypes.View;\n}\n\nconst Timeline = ({ view }: TimelineViewProps) => {\n const isFullscreen = !!useFullscreenContext()?.[0];\n const [translate] = useTranslate();\n const {\n rows,\n meta = { fieldDefs: [] as RsCoreTypes.FieldDef[], itemKey: '' } as RsCoreTypes.Meta,\n columns,\n groupHeaders,\n state,\n domContainer,\n hasNoRecords\n } = view;\n const { filterExpression, externalState, searchText, paginationOptions, groups } = state;\n const ref = useRef<HTMLTableElement>(null);\n const [loading, setLoading] = useState(false);\n const [hasMore, setHasMore] = useState(true);\n\n const count = getCount({ view });\n const visibleGroupHeaders = groupHeaders?.filter(({ isVisible }) => isVisible)?.length ?? 0;\n const paginationEndIndex = paginationOptions?.rootVirtualiser?.endIndex ?? 0;\n\n const onLoadMore = useCallback(() => {\n if (!loading) {\n setLoading(true);\n const endIndex =\n rows!.length + visibleGroupHeaders + (meta.numberOfRows || APPEND_DEFAULT_CHUNK_SIZE);\n view.type.onPaginate({ startIndex: 0, endIndex, id: 'rootVirtualiser' });\n }\n }, [loading, view.type, meta.numberOfRows, rows!.length, visibleGroupHeaders]);\n\n useEffect(() => {\n view.type.onPaginate({\n startIndex: 0,\n endIndex: meta.numberOfRows || INITIAL_DEFAULT_CHUNK_SIZE,\n id: 'rootVirtualiser'\n });\n }, [view.type, meta.numberOfRows]);\n\n useEffect(() => {\n setHasMore(rows!.length !== count.total);\n if (paginationEndIndex <= rows!.length + visibleGroupHeaders || rows!.length === count.total) {\n setLoading(false);\n }\n }, [count.total, rows!.length, paginationEndIndex, visibleGroupHeaders]);\n\n const activities = useMemo(\n () => getActivities(groupHeaders, columns, meta, groups?.[0]),\n [groupHeaders, columns, meta, groups?.[0]]\n );\n\n let loadMore;\n if (hasMore) {\n loadMore = onLoadMore;\n }\n\n return (\n <RsCardWrapper>\n <StyledTimelineContainer view={view} isFullscreen={isFullscreen}>\n <Toolbar view={view} />\n <RenderView view={view} type={EXTERNAL_FILTERS} />\n\n <StyledRowContainer\n className='container row-container'\n isFullscreen={isFullscreen}\n view={view}\n >\n <StyledTimeline\n activities={activities}\n currentTime={new Date()}\n groupBy={groups?.[0]}\n loading={loading || !rows || !!view.isLoading}\n loadMore={loadMore}\n data-test-id='Timeline'\n ref={ref}\n />\n {domContainer && hasNoRecords && (\n <EmptyContainer\n message={\n isFilterApplied(\n { filterExpression, searchText, externalState },\n meta.externalFilters\n )\n ? translate('No records found')\n : translate('No records')\n }\n />\n )}\n </StyledRowContainer>\n </StyledTimelineContainer>\n </RsCardWrapper>\n );\n};\n\nexport default Timeline;\n"]}
@@ -1,12 +1,10 @@
1
- import type { ActivityObject, TimelineGroupBy } from './Timeline.types';
2
- export declare function getDatePartAsDate(date: string | number | Date): Date;
3
- export declare function getMonthYearPartAsDate(date: string | number | Date): Date;
4
- export declare function getYearPartAsDate(date: string | number | Date): Date;
5
- export declare function isSameDate(firstDate: string | number | Date, secondDate: string | number | Date): boolean;
6
- export declare function isSameMonthYear(firstDate: string | number | Date, secondDate: string | number | Date): boolean;
7
- export declare function isSameYear(firstDate: string | number | Date, secondDate: string | number | Date): boolean;
8
- export declare function isSameQuarterYear(firstDate: string | number | Date, secondDate: string | number | Date): boolean;
9
- export declare function isSameGroup(firstDate: string | number | Date | undefined, secondDate: string | number | Date | undefined, groupBy: TimelineGroupBy): boolean;
10
- export declare function groupByActivity(activity: ActivityObject[], groupBy: TimelineGroupBy): ActivityObject[][];
1
+ import type { DateTimeVariant } from '@pega/cosmos-react-core/lib/components/DateTime/DateTime.types';
2
+ import type { RsCoreTypes } from 'pega-repeating-structures-core';
3
+ import type { Group } from 'pega-repeating-structures-core/lib/types/State.types';
4
+ import type TimelineProps from './Timeline.types';
5
+ export declare const dateDisplayVariants: Partial<Record<NonNullable<Group['dateFunction']>, DateTimeVariant>>;
6
+ declare const getActivities: (groupHeaders: RsCoreTypes.View["groupHeaders"], columns: RsCoreTypes.View["columns"], { timelineFields, timezone, defaultRowHeight }: RsCoreTypes.View["meta"], groupBy?: Group) => TimelineProps["activities"];
7
+ export default getActivities;
8
+ export declare function calculateBodyMaxHeight(maxHeight: string | number | undefined, domContainer: HTMLElement | undefined, pContainer: HTMLElement | null | undefined): string | undefined;
11
9
  export declare function isFutureDate(date: string | number | Date | undefined, current: Date): boolean;
12
10
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Timeline/utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExE,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAGpE;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAGzE;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,CAGpE;AAED,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EACjC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GACjC,OAAO,CAET;AAED,wBAAgB,eAAe,CAC7B,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EACjC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GACjC,OAAO,CAIT;AAED,wBAAgB,UAAU,CACxB,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EACjC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GACjC,OAAO,CAET;AAED,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EACjC,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GACjC,OAAO,CAET;AAED,wBAAgB,WAAW,CACzB,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,EAC7C,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,EAC9C,OAAO,EAAE,eAAe,GACvB,OAAO,CAqBT;AAED,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,cAAc,EAAE,EAC1B,OAAO,EAAE,eAAe,GACvB,cAAc,EAAE,EAAE,CAUpB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,EAAE,IAAI,GAAG,OAAO,CAG7F"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Timeline/utils.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gEAAgE,CAAC;AAGtG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAElE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sDAAsD,CAAC;AAMlF,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAmDlD,eAAO,MAAM,mBAAmB,EAAE,OAAO,CACvC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,eAAe,CAAC,CAS5D,CAAC;AAqCF,QAAA,MAAM,aAAa,GACjB,cAAc,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,EAC9C,SAAS,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,EACpC,gDAAgD,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EACxE,UAAU,KAAK,KACd,aAAa,CAAC,YAAY,CA2D5B,CAAC;AAEF,eAAe,aAAa,CAAC;AAE7B,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EACtC,YAAY,EAAE,WAAW,GAAG,SAAS,EACrC,UAAU,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,sBAc3C;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,OAAO,EAAE,IAAI,GAAG,OAAO,CAG7F"}
@@ -1,62 +1,140 @@
1
- import { getQuarter, parseToDate } from '@pega/cosmos-react-core/lib/components/DateTime/Input/utils';
2
- export function getDatePartAsDate(date) {
3
- const parsedDate = parseToDate(date);
4
- return new Date(parsedDate.getUTCFullYear(), parsedDate.getUTCMonth(), parsedDate.getUTCDate());
5
- }
6
- export function getMonthYearPartAsDate(date) {
7
- const parsedDate = parseToDate(date);
8
- return new Date(parsedDate.getUTCFullYear(), parsedDate.getUTCMonth());
9
- }
10
- export function getYearPartAsDate(date) {
11
- const parsedDate = parseToDate(date);
12
- return new Date(parsedDate.getUTCFullYear());
13
- }
14
- export function isSameDate(firstDate, secondDate) {
15
- return getDatePartAsDate(firstDate).getTime() === getDatePartAsDate(secondDate).getTime();
16
- }
17
- export function isSameMonthYear(firstDate, secondDate) {
18
- return (getMonthYearPartAsDate(firstDate).getTime() === getMonthYearPartAsDate(secondDate).getTime());
19
- }
20
- export function isSameYear(firstDate, secondDate) {
21
- return getYearPartAsDate(firstDate).getTime() === getYearPartAsDate(secondDate).getTime();
22
- }
23
- export function isSameQuarterYear(firstDate, secondDate) {
24
- return isSameYear(firstDate, secondDate) && getQuarter(firstDate) === getQuarter(secondDate);
25
- }
26
- export function isSameGroup(firstDate, secondDate, groupBy) {
27
- if (!firstDate || !secondDate)
28
- return false;
29
- switch (groupBy) {
30
- case 'none': {
31
- return true;
32
- }
33
- case 'date': {
34
- return isSameDate(firstDate, secondDate);
35
- }
36
- case 'monthyear': {
37
- return isSameMonthYear(firstDate, secondDate);
38
- }
39
- case 'quarteryear': {
40
- return isSameQuarterYear(firstDate, secondDate);
41
- }
42
- case 'year': {
43
- return isSameYear(firstDate, secondDate);
44
- }
45
- default:
46
- return false;
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import dayjs from 'dayjs';
3
+ import timezonePlugin from 'dayjs/plugin/timezone';
4
+ import { DateTimeDisplay, NoValue, parseToDate } from '@pega/cosmos-react-core';
5
+ import { FieldType, ROW_DENSITY } from 'pega-repeating-structures-core/lib/types/Meta.types';
6
+ import RenderingEngine from '../../Components/RenderingEngine/RenderCell';
7
+ import ValueRenderer from '../../Components/RenderingEngine/ValueRenderer';
8
+ dayjs.extend(timezonePlugin);
9
+ const getStatusVariant = (data) => {
10
+ let variant;
11
+ const warnStrings = ['fail', 'cancel', 'reject', 'revoke', 'stopped', 'warn'];
12
+ const infoStrings = ['open', 'hold', 'info', 'new'];
13
+ const successStrings = ['resolved', 'completed', 'success'];
14
+ const pendingStrings = ['pending'];
15
+ if (new RegExp(warnStrings.join('|'), 'i').test(data)) {
16
+ variant = 'warn';
17
+ }
18
+ else if (new RegExp(infoStrings.join('|'), 'i').test(data)) {
19
+ variant = 'info';
20
+ }
21
+ else if (new RegExp(successStrings.join('|'), 'i').test(data)) {
22
+ variant = 'success';
23
+ }
24
+ else if (new RegExp(pendingStrings.join('|'), 'i').test(data)) {
25
+ variant = 'pending';
26
+ }
27
+ else {
28
+ variant = 'info';
29
+ }
30
+ return variant;
31
+ };
32
+ const getFieldsAsActivityContent = (columns, row) => {
33
+ return columns
34
+ ?.filter(column => column.field.name !== 'RowActionMenu' && !column.hidden)
35
+ ?.map(column => {
36
+ return {
37
+ id: column.field.id,
38
+ name: column.field.label,
39
+ value: _jsx(ValueRenderer, { column: column, row: row })
40
+ };
41
+ });
42
+ };
43
+ const convertDateToTimezone = (value, timezone) => {
44
+ return (dayjs(value)
45
+ .tz(timezone)
46
+ // cSpell:disable-next-line
47
+ .format('YYYY-MM-DDTHH:mm:ss'));
48
+ };
49
+ export const dateDisplayVariants = {
50
+ YEARS: 'year',
51
+ QUARTERS: 'quarteryear',
52
+ MONTHS: 'monthyear',
53
+ WEEKS: 'week',
54
+ DAYS: 'date',
55
+ HOURS: 'datetime',
56
+ MINUTES: 'datetime'
57
+ };
58
+ const renderHeader = (header, groupBy, groupByColumn) => {
59
+ if (!groupByColumn || !header.name) {
60
+ return _jsx(NoValue, {});
61
+ }
62
+ if (groupBy?.dateFunction && typeof header.name !== 'boolean') {
63
+ return (_jsx(DateTimeDisplay, { variant: dateDisplayVariants[groupBy.dateFunction] ?? 'datetime', format: 'long', value: header.name }));
64
+ }
65
+ groupByColumn.setExecutionContext(null);
66
+ return (_jsx(RenderingEngine, { ...groupByColumn.getRenderingEngineProps(), context: {
67
+ getValue: () => header.name,
68
+ getExecutionContext: () => ({
69
+ getValue: () => header.data,
70
+ name: 'groupHeader'
71
+ })
72
+ } }));
73
+ };
74
+ const getActivities = (groupHeaders, columns, { timelineFields, timezone, defaultRowHeight }, groupBy) => {
75
+ const { title, date, status: statusProp, icon, content } = timelineFields ?? {};
76
+ const titleColumn = columns?.find(({ field }) => field.name === title?.name);
77
+ const dateColumn = columns?.find(({ field }) => field.name === date?.name);
78
+ const contentColumn = columns?.find(({ field }) => field.name === content?.name);
79
+ const groupByColumn = columns?.find(({ field }) => field.id === groupBy?.columnId);
80
+ return (groupHeaders ?? [])
81
+ .map(header => {
82
+ return {
83
+ header: renderHeader(header, groupBy, groupByColumn),
84
+ activity: (header.getRows() ?? [])
85
+ .map(row => {
86
+ const data = row.getContext().getValue();
87
+ const dateValue = date?.name ? data[date.name] : undefined;
88
+ const dateFieldType = dateColumn?.field?.type;
89
+ const isDateOnlyFieldType = dateFieldType === FieldType.DATE ||
90
+ dateFieldType === FieldType.DATE_ONLY ||
91
+ dateFieldType === FieldType.DATE_TIMELINE;
92
+ // Activity Object date can't be undefined
93
+ if (!dateValue) {
94
+ return undefined;
95
+ }
96
+ const statusData = statusProp?.name ? data[statusProp.name] : undefined;
97
+ const status = statusData
98
+ ? {
99
+ variant: getStatusVariant(statusData),
100
+ children: statusData
101
+ }
102
+ : undefined;
103
+ const activity = {
104
+ id: row.key,
105
+ title: title?.name && data[title.name] && titleColumn ? (_jsx(ValueRenderer, { column: titleColumn, row: row })) : (_jsx(NoValue, {})),
106
+ date: timezone && dateColumn?.formatterAllowed && dateFieldType && !isDateOnlyFieldType // Date only value should be formatted without timezone
107
+ ? convertDateToTimezone(dateValue, timezone)
108
+ : dateValue,
109
+ dateVariant: isDateOnlyFieldType ? 'date' : 'datetime',
110
+ icon: icon?.name ? data[icon.name] : undefined,
111
+ defaultExpanded: defaultRowHeight === ROW_DENSITY.WRAP_CONTENT,
112
+ content: contentColumn ? (_jsx(ValueRenderer, { column: contentColumn, row: row })) : (getFieldsAsActivityContent(columns, row)),
113
+ status: statusProp?.getCustomContent ? statusProp.getCustomContent(row) : status
114
+ };
115
+ return activity;
116
+ })
117
+ ?.filter((item) => !!item)
118
+ };
119
+ })
120
+ .filter(({ activity }) => activity.length > 0);
121
+ };
122
+ export default getActivities;
123
+ export function calculateBodyMaxHeight(maxHeight, domContainer, pContainer) {
124
+ if (maxHeight === undefined)
125
+ return;
126
+ if (!domContainer || !pContainer)
127
+ return;
128
+ const extraHeight = domContainer.offsetHeight - pContainer.offsetHeight;
129
+ if (typeof maxHeight === 'string' && maxHeight.startsWith('--')) {
130
+ // Means it is a css variable which is a string, and it needs to be computed with calc function
131
+ // If css variable is not defined then fallback to default max height i.e. 550px
132
+ const defaultMaxHeight = `calc(550px + ${extraHeight}px + 32px)`;
133
+ return `calc(var(${maxHeight}, ${defaultMaxHeight}) - ${extraHeight}px - 32px)`;
134
+ }
135
+ if (typeof maxHeight === 'number') {
136
+ return `${maxHeight - extraHeight - 32}px`;
47
137
  }
48
- }
49
- export function groupByActivity(activity, groupBy) {
50
- return activity.reduce((result, item, index) => {
51
- const isFirstItemInGroup = !isSameGroup(activity[index - 1]?.date, item.date, groupBy);
52
- if (isFirstItemInGroup) {
53
- result.push([item]);
54
- }
55
- else {
56
- result[result.length - 1].push(item);
57
- }
58
- return result;
59
- }, []);
60
138
  }
61
139
  export function isFutureDate(date, current) {
62
140
  if (!date || !current)
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../Core/Views/Timeline/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n getQuarter,\n parseToDate\n} from '@pega/cosmos-react-core/lib/components/DateTime/Input/utils';\n\nimport type { ActivityObject, TimelineGroupBy } from './Timeline.types';\n\nexport function getDatePartAsDate(date: string | number | Date): Date {\n const parsedDate = parseToDate(date);\n return new Date(parsedDate.getUTCFullYear(), parsedDate.getUTCMonth(), parsedDate.getUTCDate());\n}\n\nexport function getMonthYearPartAsDate(date: string | number | Date): Date {\n const parsedDate = parseToDate(date);\n return new Date(parsedDate.getUTCFullYear(), parsedDate.getUTCMonth());\n}\n\nexport function getYearPartAsDate(date: string | number | Date): Date {\n const parsedDate = parseToDate(date);\n return new Date(parsedDate.getUTCFullYear());\n}\n\nexport function isSameDate(\n firstDate: string | number | Date,\n secondDate: string | number | Date\n): boolean {\n return getDatePartAsDate(firstDate).getTime() === getDatePartAsDate(secondDate).getTime();\n}\n\nexport function isSameMonthYear(\n firstDate: string | number | Date,\n secondDate: string | number | Date\n): boolean {\n return (\n getMonthYearPartAsDate(firstDate).getTime() === getMonthYearPartAsDate(secondDate).getTime()\n );\n}\n\nexport function isSameYear(\n firstDate: string | number | Date,\n secondDate: string | number | Date\n): boolean {\n return getYearPartAsDate(firstDate).getTime() === getYearPartAsDate(secondDate).getTime();\n}\n\nexport function isSameQuarterYear(\n firstDate: string | number | Date,\n secondDate: string | number | Date\n): boolean {\n return isSameYear(firstDate, secondDate) && getQuarter(firstDate) === getQuarter(secondDate);\n}\n\nexport function isSameGroup(\n firstDate: string | number | Date | undefined,\n secondDate: string | number | Date | undefined,\n groupBy: TimelineGroupBy\n): boolean {\n if (!firstDate || !secondDate) return false;\n switch (groupBy) {\n case 'none': {\n return true;\n }\n case 'date': {\n return isSameDate(firstDate, secondDate);\n }\n case 'monthyear': {\n return isSameMonthYear(firstDate, secondDate);\n }\n case 'quarteryear': {\n return isSameQuarterYear(firstDate, secondDate);\n }\n case 'year': {\n return isSameYear(firstDate, secondDate);\n }\n default:\n return false;\n }\n}\n\nexport function groupByActivity(\n activity: ActivityObject[],\n groupBy: TimelineGroupBy\n): ActivityObject[][] {\n return activity.reduce((result: ActivityObject[][], item, index) => {\n const isFirstItemInGroup = !isSameGroup(activity[index - 1]?.date, item.date, groupBy);\n if (isFirstItemInGroup) {\n result.push([item]);\n } else {\n result[result.length - 1].push(item);\n }\n return result;\n }, []);\n}\n\nexport function isFutureDate(date: string | number | Date | undefined, current: Date): boolean {\n if (!date || !current) return false;\n return parseToDate(date).getTime() > current.getTime();\n}\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../Core/Views/Timeline/utils.tsx"],"names":[],"mappings":"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","sourcesContent":["import dayjs from 'dayjs';\nimport timezonePlugin from 'dayjs/plugin/timezone';\nimport type { ReactText } from 'react';\n\nimport type { DateTimeVariant } from '@pega/cosmos-react-core/lib/components/DateTime/DateTime.types';\nimport { DateTimeDisplay, NoValue, parseToDate } from '@pega/cosmos-react-core';\nimport type { FieldValueListProps, StatusProps } from '@pega/cosmos-react-core';\nimport type { RsCoreTypes } from 'pega-repeating-structures-core';\nimport { FieldType, ROW_DENSITY } from 'pega-repeating-structures-core/lib/types/Meta.types';\nimport type { Group } from 'pega-repeating-structures-core/lib/types/State.types';\n\nimport RenderingEngine from '../../Components/RenderingEngine/RenderCell';\nimport ValueRenderer from '../../Components/RenderingEngine/ValueRenderer';\n\nimport type { ActivityObject } from './Timeline.types';\nimport type TimelineProps from './Timeline.types';\n\ndayjs.extend(timezonePlugin);\nconst getStatusVariant = (data: string): StatusProps['variant'] => {\n let variant: StatusProps['variant'];\n const warnStrings = ['fail', 'cancel', 'reject', 'revoke', 'stopped', 'warn'];\n const infoStrings = ['open', 'hold', 'info', 'new'];\n const successStrings = ['resolved', 'completed', 'success'];\n const pendingStrings = ['pending'];\n\n if (new RegExp(warnStrings.join('|'), 'i').test(data)) {\n variant = 'warn';\n } else if (new RegExp(infoStrings.join('|'), 'i').test(data)) {\n variant = 'info';\n } else if (new RegExp(successStrings.join('|'), 'i').test(data)) {\n variant = 'success';\n } else if (new RegExp(pendingStrings.join('|'), 'i').test(data)) {\n variant = 'pending';\n } else {\n variant = 'info';\n }\n return variant;\n};\n\nconst getFieldsAsActivityContent = (\n columns: RsCoreTypes.View['columns'],\n row: RsCoreTypes.Row\n): FieldValueListProps['fields'] | undefined => {\n return columns\n ?.filter(column => column.field.name !== 'RowActionMenu' && !column.hidden)\n ?.map(column => {\n return {\n id: column.field.id,\n name: column.field.label,\n value: <ValueRenderer column={column} row={row} />\n };\n });\n};\n\nconst convertDateToTimezone = (\n value: string | number | Date,\n timezone: RsCoreTypes.Meta['timezone']\n): string => {\n return (\n dayjs(value)\n .tz(timezone)\n // cSpell:disable-next-line\n .format('YYYY-MM-DDTHH:mm:ss')\n );\n};\n\nexport const dateDisplayVariants: Partial<\n Record<NonNullable<Group['dateFunction']>, DateTimeVariant>\n> = {\n YEARS: 'year',\n QUARTERS: 'quarteryear',\n MONTHS: 'monthyear',\n WEEKS: 'week',\n DAYS: 'date',\n HOURS: 'datetime',\n MINUTES: 'datetime'\n};\n\nconst renderHeader = (\n header: RsCoreTypes.GroupGenerator,\n groupBy?: Group,\n groupByColumn?: RsCoreTypes.Column\n) => {\n if (!groupByColumn || !header.name) {\n return <NoValue />;\n }\n\n if (groupBy?.dateFunction && typeof header.name !== 'boolean') {\n return (\n <DateTimeDisplay\n variant={dateDisplayVariants[groupBy.dateFunction] ?? 'datetime'}\n format='long'\n value={header.name}\n />\n );\n }\n\n groupByColumn.setExecutionContext(null);\n\n return (\n <RenderingEngine\n {...groupByColumn.getRenderingEngineProps()}\n context={{\n getValue: () => header.name,\n getExecutionContext: () => ({\n getValue: () => header.data,\n name: 'groupHeader'\n })\n }}\n />\n );\n};\n\nconst getActivities = (\n groupHeaders: RsCoreTypes.View['groupHeaders'],\n columns: RsCoreTypes.View['columns'],\n { timelineFields, timezone, defaultRowHeight }: RsCoreTypes.View['meta'],\n groupBy?: Group\n): TimelineProps['activities'] => {\n const { title, date, status: statusProp, icon, content } = timelineFields ?? {};\n const titleColumn = columns?.find(({ field }) => field.name === title?.name);\n const dateColumn = columns?.find(({ field }) => field.name === date?.name);\n const contentColumn = columns?.find(({ field }) => field.name === content?.name);\n const groupByColumn = columns?.find(({ field }) => field.id === groupBy?.columnId);\n return (groupHeaders ?? [])\n .map(header => {\n return {\n header: renderHeader(header, groupBy, groupByColumn),\n activity: (header.getRows() ?? [])\n .map(row => {\n const data = row.getContext().getValue();\n const dateValue = date?.name ? data[date.name] : undefined;\n const dateFieldType = dateColumn?.field?.type;\n const isDateOnlyFieldType =\n dateFieldType === FieldType.DATE ||\n dateFieldType === FieldType.DATE_ONLY ||\n dateFieldType === FieldType.DATE_TIMELINE;\n\n // Activity Object date can't be undefined\n if (!dateValue) {\n return undefined;\n }\n const statusData = statusProp?.name ? data[statusProp.name] : undefined;\n const status = statusData\n ? {\n variant: getStatusVariant(statusData as string),\n children: statusData as ReactText\n }\n : undefined;\n const activity: ActivityObject = {\n id: row.key as string,\n title:\n title?.name && data[title.name] && titleColumn ? (\n <ValueRenderer column={titleColumn} row={row} />\n ) : (\n <NoValue />\n ),\n date:\n timezone && dateColumn?.formatterAllowed && dateFieldType && !isDateOnlyFieldType // Date only value should be formatted without timezone\n ? convertDateToTimezone(dateValue as string, timezone)\n : (dateValue as string),\n dateVariant: isDateOnlyFieldType ? 'date' : 'datetime',\n icon: icon?.name ? (data[icon.name] as string) : undefined,\n defaultExpanded: defaultRowHeight === ROW_DENSITY.WRAP_CONTENT,\n content: contentColumn ? (\n <ValueRenderer column={contentColumn} row={row} />\n ) : (\n getFieldsAsActivityContent(columns, row)\n ),\n status: statusProp?.getCustomContent ? statusProp.getCustomContent(row) : status\n };\n return activity;\n })\n ?.filter((item): item is ActivityObject => !!item)\n };\n })\n .filter(({ activity }) => activity.length > 0);\n};\n\nexport default getActivities;\n\nexport function calculateBodyMaxHeight(\n maxHeight: string | number | undefined,\n domContainer: HTMLElement | undefined,\n pContainer: HTMLElement | null | undefined\n) {\n if (maxHeight === undefined) return;\n if (!domContainer || !pContainer) return;\n const extraHeight = domContainer.offsetHeight - pContainer.offsetHeight;\n if (typeof maxHeight === 'string' && maxHeight.startsWith('--')) {\n // Means it is a css variable which is a string, and it needs to be computed with calc function\n // If css variable is not defined then fallback to default max height i.e. 550px\n const defaultMaxHeight = `calc(550px + ${extraHeight}px + 32px)`;\n return `calc(var(${maxHeight}, ${defaultMaxHeight}) - ${extraHeight}px - 32px)`;\n }\n if (typeof maxHeight === 'number') {\n return `${maxHeight - extraHeight - 32}px`;\n }\n}\n\nexport function isFutureDate(date: string | number | Date | undefined, current: Date): boolean {\n if (!date || !current) return false;\n return parseToDate(date).getTime() > current.getTime();\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pega/lists-react",
3
- "version": "9.0.0-build.19.4",
3
+ "version": "9.0.0-build.19.6",
4
4
  "description": "Repeating view structures such as Table, Gallery(Repeating layouts), Kanban etc.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "author": "Pegasystems",
@@ -14,9 +14,9 @@
14
14
  "build": "tsc -b tsconfig.build.json"
15
15
  },
16
16
  "dependencies": {
17
- "@pega/cosmos-react-condition-builder": "9.0.0-build.19.4",
18
- "@pega/cosmos-react-core": "9.0.0-build.19.4",
19
- "@pega/cosmos-react-rte": "9.0.0-build.19.4",
17
+ "@pega/cosmos-react-condition-builder": "9.0.0-build.19.6",
18
+ "@pega/cosmos-react-core": "9.0.0-build.19.6",
19
+ "@pega/cosmos-react-rte": "9.0.0-build.19.6",
20
20
  "@types/lodash-es": "^4.17.12",
21
21
  "@types/react": "^17.0.62 || ^18.3.3",
22
22
  "@types/react-dom": "^17.0.20 || ^18.3.0",
@@ -24,8 +24,8 @@
24
24
  "dayjs": "^1.11.13",
25
25
  "fast-deep-equal": "^3.1.3",
26
26
  "lodash-es": "^4.17.23",
27
- "pega-repeating-structures-core": "npm:@pega/lists-core@9.0.0-build.19.4",
28
- "pega-ui-list-data-apis": "npm:@pega/lists-core-utils@9.0.0-build.19.4",
27
+ "pega-repeating-structures-core": "npm:@pega/lists-core@9.0.0-build.19.6",
28
+ "pega-ui-list-data-apis": "npm:@pega/lists-core-utils@9.0.0-build.19.6",
29
29
  "polished": "^4.1.0",
30
30
  "prop-types": "^15.8.1",
31
31
  "react": "^17.0.0 || ^18.0.0",
@@ -44,7 +44,7 @@
44
44
  "@testing-library/react": "^16.0.0",
45
45
  "@testing-library/user-event": "^14.6.1",
46
46
  "jest-axe": "^8.0.0",
47
- "srs-utils": "9.0.0-build.19.4",
47
+ "srs-utils": "9.0.0-build.19.6",
48
48
  "typescript": "~5.9.3"
49
49
  }
50
50
  }
@@ -1,7 +0,0 @@
1
- import type { OmitStrict, ListToolbarProps } from '@pega/cosmos-react-core';
2
- import type { RsCoreTypes } from 'pega-repeating-structures-core';
3
- declare const TimelineToolbar: ({ view, ...restProps }: {
4
- view: RsCoreTypes.View;
5
- } & OmitStrict<ListToolbarProps, "sort" | "group">) => import("react/jsx-runtime").JSX.Element;
6
- export default TimelineToolbar;
7
- //# sourceMappingURL=TimelineToolbar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TimelineToolbar.d.ts","sourceRoot":"","sources":["../../../../../Core/Components/Toolbar/Timeline/TimelineToolbar.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAG5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAMlE,QAAA,MAAM,eAAe,GAAI,wBAGtB;IACD,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;CACxB,GAAG,UAAU,CAAC,gBAAgB,EAAE,MAAM,GAAG,OAAO,CAAC,4CAiHjD,CAAC;AAEF,eAAe,eAAe,CAAC"}
@@ -1,109 +0,0 @@
1
- import { jsx as _jsx } from "react/jsx-runtime";
2
- import { useMemo } from 'react';
3
- import { ListToolbar, useI18n } from '@pega/cosmos-react-core';
4
- import { TOOLBAR_FEATURES } from '../../../constants';
5
- import { mapDateFnToGroupOption } from '../../../Views/Timeline/utility';
6
- const TimelineToolbar = ({ view, ...restProps }) => {
7
- const t = useI18n();
8
- const displaySort = view.shouldDisplayFeature(TOOLBAR_FEATURES.SORT);
9
- const displayGrouping = view.shouldDisplayFeature(TOOLBAR_FEATURES.GROUPING);
10
- const sort = useMemo(() => {
11
- const selected = view.state.sortingOrder?.[0]?.order === 'asc' ? 'ascending' : 'descending';
12
- return {
13
- mode: 'single-select',
14
- items: [
15
- {
16
- id: 'descending',
17
- text: t('timeline_toolbar_sort_descending'),
18
- icon: 'arrow-down',
19
- selected: selected === 'descending'
20
- },
21
- {
22
- id: 'ascending',
23
- text: t('timeline_toolbar_sort_ascending'),
24
- icon: 'arrow-up',
25
- selected: selected === 'ascending'
26
- }
27
- ],
28
- onItemClick: id => {
29
- if (view.state?.sortingOrder?.[0]) {
30
- view.type.applySorting([
31
- {
32
- ...view.state.sortingOrder[0],
33
- order: id === 'ascending' ? 'asc' : 'desc'
34
- }
35
- ]);
36
- }
37
- }
38
- };
39
- }, [view.state.sortingOrder, view.type.applySorting]);
40
- const group = useMemo(() => {
41
- const selected = mapDateFnToGroupOption(view.state.groups?.[0]?.dateFunction);
42
- return {
43
- mode: 'single-select',
44
- items: [
45
- {
46
- id: 'date',
47
- text: t('timeline_toolbar_group_date'),
48
- selected: selected === 'date'
49
- },
50
- {
51
- id: 'monthyear',
52
- text: t('timeline_toolbar_group_monthyear'),
53
- selected: selected === 'monthyear'
54
- },
55
- {
56
- id: 'quarteryear',
57
- text: t('timeline_toolbar_group_quarteryear'),
58
- selected: selected === 'quarteryear'
59
- },
60
- {
61
- id: 'year',
62
- text: t('timeline_toolbar_group_year'),
63
- selected: selected === 'year'
64
- },
65
- {
66
- id: 'none',
67
- text: t('timeline_toolbar_group_none'),
68
- selected: selected === 'none'
69
- }
70
- ],
71
- onItemClick: id => {
72
- let dateFunction;
73
- switch (id) {
74
- case 'year':
75
- dateFunction = 'YEARS';
76
- break;
77
- case 'quarteryear':
78
- dateFunction = 'QUARTERS';
79
- break;
80
- case 'monthyear':
81
- dateFunction = 'MONTHS';
82
- break;
83
- case 'date':
84
- dateFunction = 'DAYS';
85
- break;
86
- default:
87
- }
88
- view.type.applyGrouping(dateFunction && view.meta.timelineFields?.date?.label
89
- ? [
90
- {
91
- columnId: view.meta.timelineFields.date.label,
92
- dateFunction,
93
- level: 0,
94
- order: view.state.sortingOrder?.[0]?.order ?? 'desc'
95
- }
96
- ]
97
- : []);
98
- }
99
- };
100
- }, [
101
- view.state.groups,
102
- view.type.applyGrouping,
103
- view.meta.timelineFields?.date,
104
- view.state.sortingOrder
105
- ]);
106
- return (_jsx(ListToolbar, { ...restProps, sort: displaySort ? sort : undefined, group: view.meta.grouping && displayGrouping ? group : undefined }));
107
- };
108
- export default TimelineToolbar;
109
- //# sourceMappingURL=TimelineToolbar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TimelineToolbar.js","sourceRoot":"","sources":["../../../../../Core/Components/Toolbar/Timeline/TimelineToolbar.tsx"],"names":[],"mappings":"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","sourcesContent":["import { useMemo } from 'react';\n\nimport type { OmitStrict, ListToolbarProps } from '@pega/cosmos-react-core';\nimport type { PresetMenuProps } from '@pega/cosmos-react-core/lib/components/ListToolbar/ListToolbar.types';\nimport type { Group } from 'pega-repeating-structures-core/types/State.types';\nimport type { RsCoreTypes } from 'pega-repeating-structures-core';\nimport { ListToolbar, useI18n } from '@pega/cosmos-react-core';\n\nimport { TOOLBAR_FEATURES } from '../../../constants';\nimport { mapDateFnToGroupOption } from '../../../Views/Timeline/utility';\n\nconst TimelineToolbar = ({\n view,\n ...restProps\n}: {\n view: RsCoreTypes.View;\n} & OmitStrict<ListToolbarProps, 'sort' | 'group'>) => {\n const t = useI18n();\n const displaySort = view.shouldDisplayFeature(TOOLBAR_FEATURES.SORT);\n const displayGrouping = view.shouldDisplayFeature(TOOLBAR_FEATURES.GROUPING);\n\n const sort: PresetMenuProps = useMemo(() => {\n const selected = view.state.sortingOrder?.[0]?.order === 'asc' ? 'ascending' : 'descending';\n return {\n mode: 'single-select',\n items: [\n {\n id: 'descending',\n text: t('timeline_toolbar_sort_descending'),\n icon: 'arrow-down',\n selected: selected === 'descending'\n },\n {\n id: 'ascending',\n text: t('timeline_toolbar_sort_ascending'),\n icon: 'arrow-up',\n selected: selected === 'ascending'\n }\n ],\n onItemClick: id => {\n if (view.state?.sortingOrder?.[0]) {\n view.type.applySorting([\n {\n ...view.state.sortingOrder[0],\n order: id === 'ascending' ? 'asc' : 'desc'\n }\n ]);\n }\n }\n };\n }, [view.state.sortingOrder, view.type.applySorting]);\n\n const group: PresetMenuProps = useMemo(() => {\n const selected = mapDateFnToGroupOption(view.state.groups?.[0]?.dateFunction);\n\n return {\n mode: 'single-select',\n items: [\n {\n id: 'date',\n text: t('timeline_toolbar_group_date'),\n selected: selected === 'date'\n },\n {\n id: 'monthyear',\n text: t('timeline_toolbar_group_monthyear'),\n selected: selected === 'monthyear'\n },\n {\n id: 'quarteryear',\n text: t('timeline_toolbar_group_quarteryear'),\n selected: selected === 'quarteryear'\n },\n {\n id: 'year',\n text: t('timeline_toolbar_group_year'),\n selected: selected === 'year'\n },\n {\n id: 'none',\n text: t('timeline_toolbar_group_none'),\n selected: selected === 'none'\n }\n ],\n onItemClick: id => {\n let dateFunction: Group['dateFunction'];\n switch (id) {\n case 'year':\n dateFunction = 'YEARS';\n break;\n case 'quarteryear':\n dateFunction = 'QUARTERS';\n break;\n case 'monthyear':\n dateFunction = 'MONTHS';\n break;\n case 'date':\n dateFunction = 'DAYS';\n break;\n default:\n }\n view.type.applyGrouping(\n dateFunction && view.meta.timelineFields?.date?.label\n ? [\n {\n columnId: view.meta.timelineFields.date.label,\n dateFunction,\n level: 0,\n order: view.state.sortingOrder?.[0]?.order ?? 'desc'\n }\n ]\n : []\n );\n }\n };\n }, [\n view.state.groups,\n view.type.applyGrouping,\n view.meta.timelineFields?.date,\n view.state.sortingOrder\n ]);\n\n return (\n <ListToolbar\n {...restProps}\n sort={displaySort ? sort : undefined}\n group={view.meta.grouping && displayGrouping ? group : undefined}\n />\n );\n};\n\nexport default TimelineToolbar;\n"]}
@@ -1,8 +0,0 @@
1
- import type { Group } from 'pega-repeating-structures-core/lib/types/State.types';
2
- import type { RsCoreTypes } from 'pega-repeating-structures-core';
3
- import type { ActivityObject, TimelineGroupBy } from './Timeline.types';
4
- declare const getActivity: (rows: RsCoreTypes.View["rows"], columns: RsCoreTypes.View["columns"], { timelineFields, timezone, defaultRowHeight }: RsCoreTypes.View["meta"]) => ActivityObject[] | undefined;
5
- export default getActivity;
6
- export declare const mapDateFnToGroupOption: (dateFunction: Group["dateFunction"]) => TimelineGroupBy;
7
- export declare function calculateBodyMaxHeight(maxHeight: string | number | undefined, domContainer: HTMLElement | undefined, pContainer: HTMLElement | null | undefined): string | undefined;
8
- //# sourceMappingURL=utility.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"utility.d.ts","sourceRoot":"","sources":["../../../../Core/Views/Timeline/utility.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sDAAsD,CAAC;AAIlF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAIlE,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAmDxE,QAAA,MAAM,WAAW,GACf,MAAM,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,EAC9B,SAAS,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,EACpC,gDAAgD,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,KACvE,cAAc,EAAE,GAAG,SAqDrB,CAAC;AAEF,eAAe,WAAW,CAAC;AAE3B,eAAO,MAAM,sBAAsB,GAAI,cAAc,KAAK,CAAC,cAAc,CAAC,KAAG,eAa5E,CAAC;AAEF,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,EACtC,YAAY,EAAE,WAAW,GAAG,SAAS,EACrC,UAAU,EAAE,WAAW,GAAG,IAAI,GAAG,SAAS,sBAc3C"}