@ltht-react/timeline 1.0.84 → 1.0.85

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/CHANGELOG.md CHANGED
@@ -3,6 +3,14 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## 1.0.85 (2022-08-02)
7
+
8
+ **Note:** Version bump only for package @ltht-react/timeline
9
+
10
+
11
+
12
+
13
+
6
14
  ## 1.0.84 (2022-07-18)
7
15
 
8
16
  **Note:** Version bump only for package @ltht-react/timeline
@@ -1,7 +1,7 @@
1
- import { FC, HTMLAttributes } from 'react';
2
- import { AuditEvent, Maybe } from '@ltht-react/types';
3
- declare const TimelineAuthor: FC<Props>;
4
- interface Props extends HTMLAttributes<HTMLDivElement> {
5
- audit: Maybe<AuditEvent>;
6
- }
7
- export default TimelineAuthor;
1
+ import { FC, HTMLAttributes } from 'react';
2
+ import { AuditEvent, Maybe } from '@ltht-react/types';
3
+ declare const TimelineAuthor: FC<Props>;
4
+ interface Props extends HTMLAttributes<HTMLDivElement> {
5
+ audit: Maybe<AuditEvent>;
6
+ }
7
+ export default TimelineAuthor;
@@ -1,35 +1,35 @@
1
- "use strict";
2
- var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
- return cooked;
5
- };
6
- var __importDefault = (this && this.__importDefault) || function (mod) {
7
- return (mod && mod.__esModule) ? mod : { "default": mod };
8
- };
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- var jsx_runtime_1 = require("react/jsx-runtime");
11
- var icon_1 = require("@ltht-react/icon");
12
- var styled_1 = __importDefault(require("@emotion/styled"));
13
- var StyledTimelineItemLeft = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n flex-grow: 1;\n"], ["\n flex-grow: 1;\n"])));
14
- var PRIMARY_AUTHOR = 'PRIMAUTH';
15
- var TimelineAuthor = function (_a) {
16
- var audit = _a.audit;
17
- if (!audit)
18
- return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
19
- var authorName = '';
20
- audit.agent.forEach(function (agent) {
21
- var _a;
22
- (_a = agent === null || agent === void 0 ? void 0 : agent.role) === null || _a === void 0 ? void 0 : _a.forEach(function (role) {
23
- var _a, _b;
24
- var isPrimaryAuthor = !!((_a = role === null || role === void 0 ? void 0 : role.coding) === null || _a === void 0 ? void 0 : _a.find(function (x) { return (x === null || x === void 0 ? void 0 : x.code) === PRIMARY_AUTHOR; }));
25
- !authorName && isPrimaryAuthor && (authorName = ((_b = agent.who) === null || _b === void 0 ? void 0 : _b.display) || '');
26
- });
27
- });
28
- if (!authorName) {
29
- return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
30
- }
31
- return (jsx_runtime_1.jsxs(StyledTimelineItemLeft, { children: [jsx_runtime_1.jsx(icon_1.UserIcon, { size: "medium" }, void 0), " by ", authorName] }, void 0));
32
- };
33
- exports.default = TimelineAuthor;
34
- var templateObject_1;
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ var jsx_runtime_1 = require("react/jsx-runtime");
11
+ var icon_1 = require("@ltht-react/icon");
12
+ var styled_1 = __importDefault(require("@emotion/styled"));
13
+ var StyledTimelineItemLeft = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n flex-grow: 1;\n"], ["\n flex-grow: 1;\n"])));
14
+ var PRIMARY_AUTHOR = 'PRIMAUTH';
15
+ var TimelineAuthor = function (_a) {
16
+ var audit = _a.audit;
17
+ if (!audit)
18
+ return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
19
+ var authorName = '';
20
+ audit.agent.forEach(function (agent) {
21
+ var _a;
22
+ (_a = agent === null || agent === void 0 ? void 0 : agent.role) === null || _a === void 0 ? void 0 : _a.forEach(function (role) {
23
+ var _a, _b;
24
+ var isPrimaryAuthor = !!((_a = role === null || role === void 0 ? void 0 : role.coding) === null || _a === void 0 ? void 0 : _a.find(function (x) { return (x === null || x === void 0 ? void 0 : x.code) === PRIMARY_AUTHOR; }));
25
+ !authorName && isPrimaryAuthor && (authorName = ((_b = agent.who) === null || _b === void 0 ? void 0 : _b.display) || '');
26
+ });
27
+ });
28
+ if (!authorName) {
29
+ return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
30
+ }
31
+ return (jsx_runtime_1.jsxs(StyledTimelineItemLeft, { children: [jsx_runtime_1.jsx(icon_1.UserIcon, { size: "medium" }, void 0), " by ", authorName] }, void 0));
32
+ };
33
+ exports.default = TimelineAuthor;
34
+ var templateObject_1;
35
35
  //# sourceMappingURL=timeline-author.js.map
@@ -1,7 +1,7 @@
1
- import { FC, HTMLAttributes } from 'react';
2
- import { Maybe } from '@ltht-react/types';
3
- declare const TimelineDescription: FC<Props>;
4
- interface Props extends HTMLAttributes<HTMLDivElement> {
5
- outcomeDesc?: Maybe<string>;
6
- }
7
- export default TimelineDescription;
1
+ import { FC, HTMLAttributes } from 'react';
2
+ import { Maybe } from '@ltht-react/types';
3
+ declare const TimelineDescription: FC<Props>;
4
+ interface Props extends HTMLAttributes<HTMLDivElement> {
5
+ outcomeDesc?: Maybe<string>;
6
+ }
7
+ export default TimelineDescription;
@@ -1,22 +1,22 @@
1
- "use strict";
2
- var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
- return cooked;
5
- };
6
- var __importDefault = (this && this.__importDefault) || function (mod) {
7
- return (mod && mod.__esModule) ? mod : { "default": mod };
8
- };
9
- Object.defineProperty(exports, "__esModule", { value: true });
10
- var jsx_runtime_1 = require("react/jsx-runtime");
11
- var react_html_parser_1 = __importDefault(require("react-html-parser"));
12
- var styled_1 = __importDefault(require("@emotion/styled"));
13
- var StyledDescription = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n p {\n margin: 0 0.2rem;\n display: inline;\n }\n"], ["\n p {\n margin: 0 0.2rem;\n display: inline;\n }\n"])));
14
- var TimelineDescription = function (props) {
15
- if (!props.outcomeDesc) {
16
- return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
17
- }
18
- return jsx_runtime_1.jsx(StyledDescription, { children: react_html_parser_1.default(props.outcomeDesc) }, void 0);
19
- };
20
- exports.default = TimelineDescription;
21
- var templateObject_1;
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ var jsx_runtime_1 = require("react/jsx-runtime");
11
+ var react_html_parser_1 = __importDefault(require("react-html-parser"));
12
+ var styled_1 = __importDefault(require("@emotion/styled"));
13
+ var StyledDescription = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n p {\n margin: 0 0.2rem;\n display: inline;\n }\n"], ["\n p {\n margin: 0 0.2rem;\n display: inline;\n }\n"])));
14
+ var TimelineDescription = function (props) {
15
+ if (!props.outcomeDesc) {
16
+ return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
17
+ }
18
+ return jsx_runtime_1.jsx(StyledDescription, { children: react_html_parser_1.default(props.outcomeDesc) }, void 0);
19
+ };
20
+ exports.default = TimelineDescription;
21
+ var templateObject_1;
22
22
  //# sourceMappingURL=timeline-description.js.map
@@ -1,3 +1,3 @@
1
- import { FC } from 'react';
2
- declare const TimelineStatus: FC;
3
- export default TimelineStatus;
1
+ import { FC } from 'react';
2
+ declare const TimelineStatus: FC;
3
+ export default TimelineStatus;
@@ -1,6 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var jsx_runtime_1 = require("react/jsx-runtime");
4
- var TimelineStatus = function () { return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0); };
5
- exports.default = TimelineStatus;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var jsx_runtime_1 = require("react/jsx-runtime");
4
+ var TimelineStatus = function () { return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0); };
5
+ exports.default = TimelineStatus;
6
6
  //# sourceMappingURL=timeline-status.js.map
@@ -1,7 +1,7 @@
1
- import { FC, HTMLAttributes } from 'react';
2
- import { AuditEvent, Maybe } from '@ltht-react/types';
3
- declare const TimelineTime: FC<Props>;
4
- interface Props extends HTMLAttributes<HTMLDivElement> {
5
- audit: Maybe<AuditEvent>;
6
- }
7
- export default TimelineTime;
1
+ import { FC, HTMLAttributes } from 'react';
2
+ import { AuditEvent, Maybe } from '@ltht-react/types';
3
+ declare const TimelineTime: FC<Props>;
4
+ interface Props extends HTMLAttributes<HTMLDivElement> {
5
+ audit: Maybe<AuditEvent>;
6
+ }
7
+ export default TimelineTime;
@@ -1,15 +1,15 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var jsx_runtime_1 = require("react/jsx-runtime");
4
- var utils_1 = require("@ltht-react/utils");
5
- var TimelineTime = function (_a) {
6
- var _b, _c;
7
- var audit = _a.audit;
8
- if (!((_c = (_b = audit === null || audit === void 0 ? void 0 : audit.period) === null || _b === void 0 ? void 0 : _b.start) === null || _c === void 0 ? void 0 : _c.value)) {
9
- return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
10
- }
11
- var time = utils_1.formatTime(new Date(audit.period.start.value));
12
- return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, { children: time }, void 0);
13
- };
14
- exports.default = TimelineTime;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var jsx_runtime_1 = require("react/jsx-runtime");
4
+ var utils_1 = require("@ltht-react/utils");
5
+ var TimelineTime = function (_a) {
6
+ var _b, _c;
7
+ var audit = _a.audit;
8
+ if (!((_c = (_b = audit === null || audit === void 0 ? void 0 : audit.period) === null || _b === void 0 ? void 0 : _b.start) === null || _c === void 0 ? void 0 : _c.value)) {
9
+ return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
10
+ }
11
+ var time = utils_1.formatTime(new Date(audit.period.start.value));
12
+ return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, { children: time }, void 0);
13
+ };
14
+ exports.default = TimelineTime;
15
15
  //# sourceMappingURL=timeline-time.js.map
@@ -1,7 +1,7 @@
1
- import { FC, HTMLAttributes } from 'react';
2
- import { AuditEvent, Maybe } from '@ltht-react/types';
3
- declare const TimelineTitle: FC<Props>;
4
- interface Props extends HTMLAttributes<HTMLDivElement> {
5
- audit: Maybe<AuditEvent>;
6
- }
7
- export default TimelineTitle;
1
+ import { FC, HTMLAttributes } from 'react';
2
+ import { AuditEvent, Maybe } from '@ltht-react/types';
3
+ declare const TimelineTitle: FC<Props>;
4
+ interface Props extends HTMLAttributes<HTMLDivElement> {
5
+ audit: Maybe<AuditEvent>;
6
+ }
7
+ export default TimelineTitle;
@@ -1,13 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- var jsx_runtime_1 = require("react/jsx-runtime");
4
- var TimelineTitle = function (_a) {
5
- var _b;
6
- var audit = _a.audit;
7
- if (!audit)
8
- return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
9
- var title = audit.metadata.isRedacted ? 'Insufficient privileges' : (_b = audit.text) === null || _b === void 0 ? void 0 : _b.text;
10
- return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, { children: title }, void 0);
11
- };
12
- exports.default = TimelineTitle;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var jsx_runtime_1 = require("react/jsx-runtime");
4
+ var TimelineTitle = function (_a) {
5
+ var _b;
6
+ var audit = _a.audit;
7
+ if (!audit)
8
+ return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
9
+ var title = audit.metadata.isRedacted ? 'Insufficient privileges' : (_b = audit.text) === null || _b === void 0 ? void 0 : _b.text;
10
+ return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, { children: title }, void 0);
11
+ };
12
+ exports.default = TimelineTitle;
13
13
  //# sourceMappingURL=timeline-title.js.map
package/lib/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import Timeline from './organisms/timeline';
2
- import { ITimelineItem } from './molecules/timeline-item';
3
- export default Timeline;
4
- export { ITimelineItem };
1
+ import Timeline from './organisms/timeline';
2
+ import { ITimelineItem } from './molecules/timeline-item';
3
+ export default Timeline;
4
+ export { ITimelineItem };
package/lib/index.js CHANGED
@@ -1,8 +1,8 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- var timeline_1 = __importDefault(require("./organisms/timeline"));
7
- exports.default = timeline_1.default;
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var timeline_1 = __importDefault(require("./organisms/timeline"));
7
+ exports.default = timeline_1.default;
8
8
  //# sourceMappingURL=index.js.map
@@ -1,14 +1,14 @@
1
- import { FC } from 'react';
2
- import { AuditEvent, Maybe } from '@ltht-react/types';
3
- declare const TimelineItem: FC<IProps>;
4
- interface IProps {
5
- timelineItem: Maybe<ITimelineItem>;
6
- }
7
- export interface ITimelineItem {
8
- auditEvent: Maybe<AuditEvent>;
9
- clickHandler?(): void;
10
- clickPrompt?: string;
11
- isSelected: boolean;
12
- deselectPrompt?: string;
13
- }
14
- export default TimelineItem;
1
+ import { FC } from 'react';
2
+ import { AuditEvent, Maybe } from '@ltht-react/types';
3
+ declare const TimelineItem: FC<IProps>;
4
+ interface IProps {
5
+ timelineItem: Maybe<ITimelineItem>;
6
+ }
7
+ export interface ITimelineItem {
8
+ auditEvent: Maybe<AuditEvent>;
9
+ clickHandler?(): void;
10
+ clickPrompt?: string;
11
+ isSelected: boolean;
12
+ deselectPrompt?: string;
13
+ }
14
+ export default TimelineItem;
@@ -1,68 +1,68 @@
1
- "use strict";
2
- var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
- return cooked;
5
- };
6
- var __assign = (this && this.__assign) || function () {
7
- __assign = Object.assign || function(t) {
8
- for (var s, i = 1, n = arguments.length; i < n; i++) {
9
- s = arguments[i];
10
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
- t[p] = s[p];
12
- }
13
- return t;
14
- };
15
- return __assign.apply(this, arguments);
16
- };
17
- var __importDefault = (this && this.__importDefault) || function (mod) {
18
- return (mod && mod.__esModule) ? mod : { "default": mod };
19
- };
20
- Object.defineProperty(exports, "__esModule", { value: true });
21
- var jsx_runtime_1 = require("react/jsx-runtime");
22
- var styled_1 = __importDefault(require("@emotion/styled"));
23
- var banner_1 = __importDefault(require("@ltht-react/banner"));
24
- var icon_1 = require("@ltht-react/icon");
25
- var styles_1 = require("@ltht-react/styles");
26
- var hooks_1 = require("@ltht-react/hooks");
27
- var utils_1 = require("@ltht-react/utils");
28
- var timeline_description_1 = __importDefault(require("../atoms/timeline-description"));
29
- var timeline_author_1 = __importDefault(require("../atoms/timeline-author"));
30
- var timeline_status_1 = __importDefault(require("../atoms/timeline-status"));
31
- var timeline_title_1 = __importDefault(require("../atoms/timeline-title"));
32
- var timeline_time_1 = __importDefault(require("../atoms/timeline-time"));
33
- var StyledTimelineItem = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: ", ";\n padding: 0.5rem;\n"], ["\n background-color: ", ";\n padding: 0.5rem;\n"])), function (_a) {
34
- var isSelected = _a.isSelected;
35
- return (isSelected ? styles_1.HIGHLIGHT_GREEN.VALUE : styles_1.TRANSLUCENT_DARK_BLUE);
36
- });
37
- var StyledTimelineItemLeft = styled_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n flex-grow: 1;\n"], ["\n flex-grow: 1;\n"])));
38
- var StyledTimelineItemRight = styled_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n text-align: right;\n"], ["\n text-align: right;\n"])));
39
- var StyledTimelineTime = styled_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n color: black;\n"], ["\n color: black;\n"])));
40
- var StyledTimelineItemTop = styled_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n display: flex;\n color: black;\n padding-bottom: 0.25rem;\n"], ["\n display: flex;\n color: black;\n padding-bottom: 0.25rem;\n"])));
41
- var StyledTimelineItemMiddle = styled_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n color: black;\n padding-bottom: 1rem;\n"], ["\n color: black;\n padding-bottom: 1rem;\n"])));
42
- var StyledTimelineItemBottom = styled_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n color: grey;\n display: flex;\n"], ["\n color: grey;\n display: flex;\n"])));
43
- var StyledTitle = styled_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n flex-grow: 1;\n color: black;\n font-size: ", ";\n font-weight: bold;\n"], ["\n flex-grow: 1;\n color: black;\n font-size: ", ";\n font-weight: bold;\n"])), function (_a) {
44
- var isMobile = _a.isMobile;
45
- return (isMobile ? 'medium' : 'large');
46
- });
47
- var StyledDescription = styled_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n color: black;\n font-size: small;\n"], ["\n color: black;\n font-size: small;\n"])));
48
- var StyledStatus = styled_1.default.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n text-align: right;\n"], ["\n text-align: right;\n"])));
49
- var StyledBanner = styled_1.default(banner_1.default)(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n margin: -0.5rem;\n margin-top: 0.5rem;\n"], ["\n margin: -0.5rem;\n margin-top: 0.5rem;\n"])));
50
- var StyledBannerContent = styled_1.default.div(templateObject_12 || (templateObject_12 = __makeTemplateObject([""], [""])));
51
- var TimelineItem = function (_a) {
52
- var timelineItem = _a.timelineItem;
53
- var width = hooks_1.useWindowSize().width;
54
- var isMobile = utils_1.isMobileView(width);
55
- if (!(timelineItem === null || timelineItem === void 0 ? void 0 : timelineItem.auditEvent)) {
56
- return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
57
- }
58
- return (jsx_runtime_1.jsx(jsx_runtime_1.Fragment, { children: jsx_runtime_1.jsxs(StyledTimelineItem, __assign({ isSelected: timelineItem.isSelected }, { children: [jsx_runtime_1.jsxs(StyledTimelineItemTop, { children: [jsx_runtime_1.jsx(StyledTitle, __assign({ isMobile: isMobile }, { children: jsx_runtime_1.jsx(timeline_title_1.default, { audit: timelineItem.auditEvent }, void 0) }), void 0),
59
- isMobile && (jsx_runtime_1.jsx(StyledTimelineTime, { children: jsx_runtime_1.jsx(timeline_time_1.default, { audit: timelineItem.auditEvent }, void 0) }, void 0))] }, void 0),
60
- jsx_runtime_1.jsx(StyledTimelineItemMiddle, { children: jsx_runtime_1.jsx(StyledDescription, { children: jsx_runtime_1.jsx(timeline_description_1.default, { outcomeDesc: timelineItem.auditEvent.outcomeDesc }, void 0) }, void 0) }, void 0),
61
- jsx_runtime_1.jsxs(StyledTimelineItemBottom, { children: [jsx_runtime_1.jsx(StyledTimelineItemLeft, { children: jsx_runtime_1.jsx(timeline_author_1.default, { audit: timelineItem.auditEvent }, void 0) }, void 0),
62
- jsx_runtime_1.jsx(StyledTimelineItemRight, { children: jsx_runtime_1.jsx(StyledStatus, { children: jsx_runtime_1.jsx(timeline_status_1.default, {}, void 0) }, void 0) }, void 0)] }, void 0),
63
- timelineItem.clickHandler && !timelineItem.isSelected && (jsx_runtime_1.jsx(StyledBanner, __assign({ type: "info", onClick: timelineItem.clickHandler }, { children: timelineItem.clickPrompt && jsx_runtime_1.jsx(StyledBannerContent, { children: timelineItem.clickPrompt }, void 0) }), void 0)),
64
- timelineItem.clickHandler && timelineItem.isSelected && (jsx_runtime_1.jsx(StyledBanner, __assign({ type: "highlight", icon: jsx_runtime_1.jsx(icon_1.InfoCircleIcon, { status: "info", size: "medium" }, void 0), onClick: timelineItem.clickHandler }, { children: timelineItem.deselectPrompt && jsx_runtime_1.jsx(StyledBannerContent, { children: timelineItem.deselectPrompt }, void 0) }), void 0))] }), void 0) }, void 0));
65
- };
66
- exports.default = TimelineItem;
67
- var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12;
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ var jsx_runtime_1 = require("react/jsx-runtime");
22
+ var styled_1 = __importDefault(require("@emotion/styled"));
23
+ var banner_1 = __importDefault(require("@ltht-react/banner"));
24
+ var icon_1 = require("@ltht-react/icon");
25
+ var styles_1 = require("@ltht-react/styles");
26
+ var hooks_1 = require("@ltht-react/hooks");
27
+ var utils_1 = require("@ltht-react/utils");
28
+ var timeline_description_1 = __importDefault(require("../atoms/timeline-description"));
29
+ var timeline_author_1 = __importDefault(require("../atoms/timeline-author"));
30
+ var timeline_status_1 = __importDefault(require("../atoms/timeline-status"));
31
+ var timeline_title_1 = __importDefault(require("../atoms/timeline-title"));
32
+ var timeline_time_1 = __importDefault(require("../atoms/timeline-time"));
33
+ var StyledTimelineItem = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n background-color: ", ";\n padding: 0.5rem;\n"], ["\n background-color: ", ";\n padding: 0.5rem;\n"])), function (_a) {
34
+ var isSelected = _a.isSelected;
35
+ return (isSelected ? styles_1.HIGHLIGHT_GREEN.VALUE : styles_1.TRANSLUCENT_DARK_BLUE);
36
+ });
37
+ var StyledTimelineItemLeft = styled_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n flex-grow: 1;\n"], ["\n flex-grow: 1;\n"])));
38
+ var StyledTimelineItemRight = styled_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n text-align: right;\n"], ["\n text-align: right;\n"])));
39
+ var StyledTimelineTime = styled_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n color: black;\n"], ["\n color: black;\n"])));
40
+ var StyledTimelineItemTop = styled_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n display: flex;\n color: black;\n padding-bottom: 0.25rem;\n"], ["\n display: flex;\n color: black;\n padding-bottom: 0.25rem;\n"])));
41
+ var StyledTimelineItemMiddle = styled_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n color: black;\n padding-bottom: 1rem;\n"], ["\n color: black;\n padding-bottom: 1rem;\n"])));
42
+ var StyledTimelineItemBottom = styled_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n color: grey;\n display: flex;\n"], ["\n color: grey;\n display: flex;\n"])));
43
+ var StyledTitle = styled_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n flex-grow: 1;\n color: black;\n font-size: ", ";\n font-weight: bold;\n"], ["\n flex-grow: 1;\n color: black;\n font-size: ", ";\n font-weight: bold;\n"])), function (_a) {
44
+ var isMobile = _a.isMobile;
45
+ return (isMobile ? 'medium' : 'large');
46
+ });
47
+ var StyledDescription = styled_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n color: black;\n font-size: small;\n"], ["\n color: black;\n font-size: small;\n"])));
48
+ var StyledStatus = styled_1.default.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n text-align: right;\n"], ["\n text-align: right;\n"])));
49
+ var StyledBanner = styled_1.default(banner_1.default)(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n margin: -0.5rem;\n margin-top: 0.5rem;\n"], ["\n margin: -0.5rem;\n margin-top: 0.5rem;\n"])));
50
+ var StyledBannerContent = styled_1.default.div(templateObject_12 || (templateObject_12 = __makeTemplateObject([""], [""])));
51
+ var TimelineItem = function (_a) {
52
+ var timelineItem = _a.timelineItem;
53
+ var width = hooks_1.useWindowSize().width;
54
+ var isMobile = utils_1.isMobileView(width);
55
+ if (!(timelineItem === null || timelineItem === void 0 ? void 0 : timelineItem.auditEvent)) {
56
+ return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
57
+ }
58
+ return (jsx_runtime_1.jsx(jsx_runtime_1.Fragment, { children: jsx_runtime_1.jsxs(StyledTimelineItem, __assign({ isSelected: timelineItem.isSelected }, { children: [jsx_runtime_1.jsxs(StyledTimelineItemTop, { children: [jsx_runtime_1.jsx(StyledTitle, __assign({ isMobile: isMobile }, { children: jsx_runtime_1.jsx(timeline_title_1.default, { audit: timelineItem.auditEvent }, void 0) }), void 0),
59
+ isMobile && (jsx_runtime_1.jsx(StyledTimelineTime, { children: jsx_runtime_1.jsx(timeline_time_1.default, { audit: timelineItem.auditEvent }, void 0) }, void 0))] }, void 0),
60
+ jsx_runtime_1.jsx(StyledTimelineItemMiddle, { children: jsx_runtime_1.jsx(StyledDescription, { children: jsx_runtime_1.jsx(timeline_description_1.default, { outcomeDesc: timelineItem.auditEvent.outcomeDesc }, void 0) }, void 0) }, void 0),
61
+ jsx_runtime_1.jsxs(StyledTimelineItemBottom, { children: [jsx_runtime_1.jsx(StyledTimelineItemLeft, { children: jsx_runtime_1.jsx(timeline_author_1.default, { audit: timelineItem.auditEvent }, void 0) }, void 0),
62
+ jsx_runtime_1.jsx(StyledTimelineItemRight, { children: jsx_runtime_1.jsx(StyledStatus, { children: jsx_runtime_1.jsx(timeline_status_1.default, {}, void 0) }, void 0) }, void 0)] }, void 0),
63
+ timelineItem.clickHandler && !timelineItem.isSelected && (jsx_runtime_1.jsx(StyledBanner, __assign({ type: "info", onClick: timelineItem.clickHandler }, { children: timelineItem.clickPrompt && jsx_runtime_1.jsx(StyledBannerContent, { children: timelineItem.clickPrompt }, void 0) }), void 0)),
64
+ timelineItem.clickHandler && timelineItem.isSelected && (jsx_runtime_1.jsx(StyledBanner, __assign({ type: "highlight", icon: jsx_runtime_1.jsx(icon_1.InfoCircleIcon, { status: "info", size: "medium" }, void 0), onClick: timelineItem.clickHandler }, { children: timelineItem.deselectPrompt && jsx_runtime_1.jsx(StyledBannerContent, { children: timelineItem.deselectPrompt }, void 0) }), void 0))] }), void 0) }, void 0));
65
+ };
66
+ exports.default = TimelineItem;
67
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12;
68
68
  //# sourceMappingURL=timeline-item.js.map
@@ -1,8 +1,8 @@
1
- import { FC } from 'react';
2
- import { Maybe } from '@ltht-react/types';
3
- import { ITimelineItem } from '../molecules/timeline-item';
4
- declare const Timeline: FC<IProps>;
5
- interface IProps {
6
- timelineItems: Maybe<ITimelineItem>[];
7
- }
8
- export default Timeline;
1
+ import { FC } from 'react';
2
+ import { Maybe } from '@ltht-react/types';
3
+ import { ITimelineItem } from '../molecules/timeline-item';
4
+ declare const Timeline: FC<IProps>;
5
+ interface IProps {
6
+ timelineItems: Maybe<ITimelineItem>[];
7
+ }
8
+ export default Timeline;
@@ -1,118 +1,118 @@
1
- "use strict";
2
- var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
- if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
- return cooked;
5
- };
6
- var __assign = (this && this.__assign) || function () {
7
- __assign = Object.assign || function(t) {
8
- for (var s, i = 1, n = arguments.length; i < n; i++) {
9
- s = arguments[i];
10
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
- t[p] = s[p];
12
- }
13
- return t;
14
- };
15
- return __assign.apply(this, arguments);
16
- };
17
- var __importDefault = (this && this.__importDefault) || function (mod) {
18
- return (mod && mod.__esModule) ? mod : { "default": mod };
19
- };
20
- Object.defineProperty(exports, "__esModule", { value: true });
21
- var jsx_runtime_1 = require("react/jsx-runtime");
22
- var styled_1 = __importDefault(require("@emotion/styled"));
23
- var icon_1 = require("@ltht-react/icon");
24
- var styles_1 = require("@ltht-react/styles");
25
- var utils_1 = require("@ltht-react/utils");
26
- var hooks_1 = require("@ltht-react/hooks");
27
- var timeline_time_1 = __importDefault(require("../atoms/timeline-time"));
28
- var timeline_item_1 = __importDefault(require("../molecules/timeline-item"));
29
- var StyledTimeline = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n margin: -0.75rem;\n"], ["\n margin: -0.75rem;\n"])));
30
- var StyledTimelineDayBody = styled_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n background-color: white;\n position: relative;\n\n &:before {\n content: '';\n position: absolute;\n z-index: 1;\n height: ", ";\n left: calc(50% - 1px);\n border-width: 0 0 0 2px;\n border-color: ", ";\n border-style: solid;\n }\n"], ["\n background-color: white;\n position: relative;\n\n &:before {\n content: '';\n position: absolute;\n z-index: 1;\n height: ", ";\n left: calc(50% - 1px);\n border-width: 0 0 0 2px;\n border-color: ", ";\n border-style: solid;\n }\n"])), function (_a) {
31
- var isMobile = _a.isMobile;
32
- return (isMobile ? '0%' : '100%');
33
- }, styles_1.TEXT_COLOURS.INFO);
34
- var StyledTimelineDayHeader = styled_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n background-color: ", ";\n padding: 0.5rem;\n text-align: center;\n font-weight: bold;\n"], ["\n background-color: ", ";\n padding: 0.5rem;\n text-align: center;\n font-weight: bold;\n"])), styles_1.BANNER_COLOURS.DEFAULT.BACKGROUND);
35
- var StyledTimelineDayItem = styled_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n display: inline-block;\n width: 100%;\n justify-content: center;\n padding: ", ";\n margin: ", ";\n"], ["\n display: inline-block;\n width: 100%;\n justify-content: center;\n padding: ", ";\n margin: ", ";\n"])), function (_a) {
36
- var isMobile = _a.isMobile;
37
- return (isMobile ? '' : '0 0.5rem');
38
- }, function (_a) {
39
- var isMobile = _a.isMobile;
40
- return (isMobile ? '0.5rem 0' : '1rem 0');
41
- });
42
- var StyledTimelineDayContent = styled_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n width: ", ";\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n"], ["\n width: ", ";\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n"])), function (_a) {
43
- var isMobile = _a.isMobile;
44
- return (isMobile ? '100%' : '49%');
45
- });
46
- var StyledTimelineDayLine = styled_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n width: 2%;\n vertical-align: top;\n margin-top: 0.125rem;\n display: inline-block;\n text-align: center;\n position: relative;\n height: 100%;\n"], ["\n width: 2%;\n vertical-align: top;\n margin-top: 0.125rem;\n display: inline-block;\n text-align: center;\n position: relative;\n height: 100%;\n"])));
47
- var StyledTimelineDayTimeLeft = styled_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n width: 49%;\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n text-align: right;\n font-weight: bold;\n"], ["\n width: 49%;\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n text-align: right;\n font-weight: bold;\n"])));
48
- var StyledTimelineDayTimeRight = styled_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n width: 49%;\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n text-align: left;\n font-weight: bold;\n"], ["\n width: 49%;\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n text-align: left;\n font-weight: bold;\n"])));
49
- var StyledOuterCircle = styled_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n .icon__circle {\n position: absolute;\n z-index: 1;\n transform: translate(-50%);\n -webkit-transform: translate(-50%);\n -ms-transform: translate(-50%);\n left: 50%;\n color: ", ";\n font-size: 0.75rem;\n }\n"], ["\n .icon__circle {\n position: absolute;\n z-index: 1;\n transform: translate(-50%);\n -webkit-transform: translate(-50%);\n -ms-transform: translate(-50%);\n left: 50%;\n color: ", ";\n font-size: 0.75rem;\n }\n"])), styles_1.TEXT_COLOURS.INFO);
50
- var StyledInnerCircle = styled_1.default.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n .icon__circle {\n position: absolute;\n z-index: 2;\n top: 0.125rem;\n transform: translate(-50%);\n -webkit-transform: translate(-50%);\n -ms-transform: translate(-50%);\n left: 50%;\n color: white;\n font-size: 0.5rem;\n }\n"], ["\n .icon__circle {\n position: absolute;\n z-index: 2;\n top: 0.125rem;\n transform: translate(-50%);\n -webkit-transform: translate(-50%);\n -ms-transform: translate(-50%);\n left: 50%;\n color: white;\n font-size: 0.5rem;\n }\n"])));
51
- var Timeline = function (props) {
52
- var _a;
53
- var rest = [];
54
- for (var _i = 1; _i < arguments.length; _i++) {
55
- rest[_i - 1] = arguments[_i];
56
- }
57
- var width = hooks_1.useWindowSize().width;
58
- var isMobile = utils_1.isMobileView(width);
59
- var audit = props.timelineItems.map(function (i) { return i === null || i === void 0 ? void 0 : i.auditEvent; });
60
- var timelineDates = {};
61
- (_a = props.timelineItems) === null || _a === void 0 ? void 0 : _a.forEach(function (timelineItem) {
62
- var _a, _b, _c, _d, _e, _f;
63
- if (!((_c = (_b = (_a = timelineItem === null || timelineItem === void 0 ? void 0 : timelineItem.auditEvent) === null || _a === void 0 ? void 0 : _a.period) === null || _b === void 0 ? void 0 : _b.start) === null || _c === void 0 ? void 0 : _c.value)) {
64
- return;
65
- }
66
- var date = utils_1.formatDateExplicitMonth(new Date((_f = (_e = (_d = timelineItem.auditEvent) === null || _d === void 0 ? void 0 : _d.period) === null || _e === void 0 ? void 0 : _e.start) === null || _f === void 0 ? void 0 : _f.value));
67
- var lookup = timelineDates[date];
68
- if (!lookup) {
69
- timelineDates[date] = [timelineItem];
70
- }
71
- else {
72
- lookup.push(timelineItem);
73
- timelineDates[date] = lookup;
74
- }
75
- });
76
- var position = 0;
77
- return (jsx_runtime_1.jsx(jsx_runtime_1.Fragment, { children: jsx_runtime_1.jsx(StyledTimeline, __assign({}, rest, { children: Object.entries(timelineDates).map(function (_a) {
78
- var key = _a[0], value = _a[1];
79
- position += 1;
80
- if (isMobile) {
81
- return (jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [jsx_runtime_1.jsx(StyledTimelineDayHeader, { children: key }, void 0),
82
- jsx_runtime_1.jsx(StyledTimelineDayBody, __assign({ isMobile: isMobile }, { children: value === null || value === void 0 ? void 0 : value.map(function (timelineItem) { return (jsx_runtime_1.jsx(StyledTimelineDayItem, __assign({ isMobile: isMobile }, { children: jsx_runtime_1.jsx(StyledTimelineDayContent, __assign({ isMobile: isMobile }, { children: jsx_runtime_1.jsx(timeline_item_1.default, { timelineItem: timelineItem }, void 0) }), void 0) }), void 0)); }) }), void 0)] }, void 0));
83
- }
84
- return (jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [jsx_runtime_1.jsx(StyledTimelineDayHeader, { children: key }, void 0),
85
- jsx_runtime_1.jsx(StyledTimelineDayBody, __assign({ isMobile: isMobile }, { children: value === null || value === void 0 ? void 0 : value.map(function (timelineItem, idx) {
86
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
87
- if (!((_c = (_b = (_a = timelineItem === null || timelineItem === void 0 ? void 0 : timelineItem.auditEvent) === null || _a === void 0 ? void 0 : _a.period) === null || _b === void 0 ? void 0 : _b.start) === null || _c === void 0 ? void 0 : _c.value)) {
88
- return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
89
- }
90
- var currentTime = utils_1.formatTime(new Date((_f = (_e = (_d = timelineItem.auditEvent) === null || _d === void 0 ? void 0 : _d.period) === null || _e === void 0 ? void 0 : _e.start) === null || _f === void 0 ? void 0 : _f.value));
91
- var previousTime = currentTime;
92
- if (idx > 0) {
93
- var previousItem = audit[idx - 1];
94
- if (!((_h = (_g = previousItem === null || previousItem === void 0 ? void 0 : previousItem.period) === null || _g === void 0 ? void 0 : _g.start) === null || _h === void 0 ? void 0 : _h.value)) {
95
- return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
96
- }
97
- previousTime = utils_1.formatTime(new Date((_k = (_j = previousItem === null || previousItem === void 0 ? void 0 : previousItem.period) === null || _j === void 0 ? void 0 : _j.start) === null || _k === void 0 ? void 0 : _k.value));
98
- }
99
- if (currentTime !== previousTime) {
100
- position += 1;
101
- }
102
- var key = currentTime + "_" + idx;
103
- if (position % 2 === 1) {
104
- return (jsx_runtime_1.jsxs(StyledTimelineDayItem, __assign({ isMobile: isMobile }, { children: [jsx_runtime_1.jsx(StyledTimelineDayContent, __assign({ isMobile: isMobile }, { children: jsx_runtime_1.jsx(timeline_item_1.default, { timelineItem: timelineItem }, void 0) }), void 0),
105
- jsx_runtime_1.jsxs(StyledTimelineDayLine, { children: [jsx_runtime_1.jsx(StyledOuterCircle, { children: jsx_runtime_1.jsx(icon_1.CircleIcon, { status: "info", size: "medium" }, void 0) }, void 0),
106
- jsx_runtime_1.jsx(StyledInnerCircle, { children: jsx_runtime_1.jsx(icon_1.CircleIcon, { status: "info", size: "medium" }, void 0) }, void 0)] }, void 0),
107
- jsx_runtime_1.jsx(StyledTimelineDayTimeRight, { children: jsx_runtime_1.jsx(timeline_time_1.default, { audit: timelineItem === null || timelineItem === void 0 ? void 0 : timelineItem.auditEvent }, void 0) }, void 0)] }), key));
108
- }
109
- return (jsx_runtime_1.jsxs(StyledTimelineDayItem, __assign({ isMobile: isMobile }, { children: [jsx_runtime_1.jsx(StyledTimelineDayTimeLeft, { children: jsx_runtime_1.jsx(timeline_time_1.default, { audit: timelineItem === null || timelineItem === void 0 ? void 0 : timelineItem.auditEvent }, void 0) }, void 0),
110
- jsx_runtime_1.jsxs(StyledTimelineDayLine, { children: [jsx_runtime_1.jsx(StyledOuterCircle, { children: jsx_runtime_1.jsx(icon_1.CircleIcon, { status: "info", size: "medium" }, void 0) }, void 0),
111
- jsx_runtime_1.jsx(StyledInnerCircle, { children: jsx_runtime_1.jsx(icon_1.CircleIcon, { status: "info", size: "medium" }, void 0) }, void 0)] }, void 0),
112
- jsx_runtime_1.jsx(StyledTimelineDayContent, __assign({ isMobile: isMobile }, { children: jsx_runtime_1.jsx(timeline_item_1.default, { timelineItem: timelineItem }, void 0) }), void 0)] }), key));
113
- }) }), void 0)] }, void 0));
114
- }) }), void 0) }, void 0));
115
- };
116
- exports.default = Timeline;
117
- var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10;
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __assign = (this && this.__assign) || function () {
7
+ __assign = Object.assign || function(t) {
8
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
9
+ s = arguments[i];
10
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11
+ t[p] = s[p];
12
+ }
13
+ return t;
14
+ };
15
+ return __assign.apply(this, arguments);
16
+ };
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ var jsx_runtime_1 = require("react/jsx-runtime");
22
+ var styled_1 = __importDefault(require("@emotion/styled"));
23
+ var icon_1 = require("@ltht-react/icon");
24
+ var styles_1 = require("@ltht-react/styles");
25
+ var utils_1 = require("@ltht-react/utils");
26
+ var hooks_1 = require("@ltht-react/hooks");
27
+ var timeline_time_1 = __importDefault(require("../atoms/timeline-time"));
28
+ var timeline_item_1 = __importDefault(require("../molecules/timeline-item"));
29
+ var StyledTimeline = styled_1.default.div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n margin: -0.75rem;\n"], ["\n margin: -0.75rem;\n"])));
30
+ var StyledTimelineDayBody = styled_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n background-color: white;\n position: relative;\n\n &:before {\n content: '';\n position: absolute;\n z-index: 1;\n height: ", ";\n left: calc(50% - 1px);\n border-width: 0 0 0 2px;\n border-color: ", ";\n border-style: solid;\n }\n"], ["\n background-color: white;\n position: relative;\n\n &:before {\n content: '';\n position: absolute;\n z-index: 1;\n height: ", ";\n left: calc(50% - 1px);\n border-width: 0 0 0 2px;\n border-color: ", ";\n border-style: solid;\n }\n"])), function (_a) {
31
+ var isMobile = _a.isMobile;
32
+ return (isMobile ? '0%' : '100%');
33
+ }, styles_1.TEXT_COLOURS.INFO);
34
+ var StyledTimelineDayHeader = styled_1.default.div(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n background-color: ", ";\n padding: 0.5rem;\n text-align: center;\n font-weight: bold;\n"], ["\n background-color: ", ";\n padding: 0.5rem;\n text-align: center;\n font-weight: bold;\n"])), styles_1.BANNER_COLOURS.DEFAULT.BACKGROUND);
35
+ var StyledTimelineDayItem = styled_1.default.div(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n display: inline-block;\n width: 100%;\n justify-content: center;\n padding: ", ";\n margin: ", ";\n"], ["\n display: inline-block;\n width: 100%;\n justify-content: center;\n padding: ", ";\n margin: ", ";\n"])), function (_a) {
36
+ var isMobile = _a.isMobile;
37
+ return (isMobile ? '' : '0 0.5rem');
38
+ }, function (_a) {
39
+ var isMobile = _a.isMobile;
40
+ return (isMobile ? '0.5rem 0' : '1rem 0');
41
+ });
42
+ var StyledTimelineDayContent = styled_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n width: ", ";\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n"], ["\n width: ", ";\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n"])), function (_a) {
43
+ var isMobile = _a.isMobile;
44
+ return (isMobile ? '100%' : '49%');
45
+ });
46
+ var StyledTimelineDayLine = styled_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n width: 2%;\n vertical-align: top;\n margin-top: 0.125rem;\n display: inline-block;\n text-align: center;\n position: relative;\n height: 100%;\n"], ["\n width: 2%;\n vertical-align: top;\n margin-top: 0.125rem;\n display: inline-block;\n text-align: center;\n position: relative;\n height: 100%;\n"])));
47
+ var StyledTimelineDayTimeLeft = styled_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n width: 49%;\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n text-align: right;\n font-weight: bold;\n"], ["\n width: 49%;\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n text-align: right;\n font-weight: bold;\n"])));
48
+ var StyledTimelineDayTimeRight = styled_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n width: 49%;\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n text-align: left;\n font-weight: bold;\n"], ["\n width: 49%;\n padding: 0 0.5rem;\n display: inline-block;\n vertical-align: top;\n text-align: left;\n font-weight: bold;\n"])));
49
+ var StyledOuterCircle = styled_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n .icon__circle {\n position: absolute;\n z-index: 1;\n transform: translate(-50%);\n -webkit-transform: translate(-50%);\n -ms-transform: translate(-50%);\n left: 50%;\n color: ", ";\n font-size: 0.75rem;\n }\n"], ["\n .icon__circle {\n position: absolute;\n z-index: 1;\n transform: translate(-50%);\n -webkit-transform: translate(-50%);\n -ms-transform: translate(-50%);\n left: 50%;\n color: ", ";\n font-size: 0.75rem;\n }\n"])), styles_1.TEXT_COLOURS.INFO);
50
+ var StyledInnerCircle = styled_1.default.div(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n .icon__circle {\n position: absolute;\n z-index: 2;\n top: 0.125rem;\n transform: translate(-50%);\n -webkit-transform: translate(-50%);\n -ms-transform: translate(-50%);\n left: 50%;\n color: white;\n font-size: 0.5rem;\n }\n"], ["\n .icon__circle {\n position: absolute;\n z-index: 2;\n top: 0.125rem;\n transform: translate(-50%);\n -webkit-transform: translate(-50%);\n -ms-transform: translate(-50%);\n left: 50%;\n color: white;\n font-size: 0.5rem;\n }\n"])));
51
+ var Timeline = function (props) {
52
+ var _a;
53
+ var rest = [];
54
+ for (var _i = 1; _i < arguments.length; _i++) {
55
+ rest[_i - 1] = arguments[_i];
56
+ }
57
+ var width = hooks_1.useWindowSize().width;
58
+ var isMobile = utils_1.isMobileView(width);
59
+ var audit = props.timelineItems.map(function (i) { return i === null || i === void 0 ? void 0 : i.auditEvent; });
60
+ var timelineDates = {};
61
+ (_a = props.timelineItems) === null || _a === void 0 ? void 0 : _a.forEach(function (timelineItem) {
62
+ var _a, _b, _c, _d, _e, _f;
63
+ if (!((_c = (_b = (_a = timelineItem === null || timelineItem === void 0 ? void 0 : timelineItem.auditEvent) === null || _a === void 0 ? void 0 : _a.period) === null || _b === void 0 ? void 0 : _b.start) === null || _c === void 0 ? void 0 : _c.value)) {
64
+ return;
65
+ }
66
+ var date = utils_1.formatDateExplicitMonth(new Date((_f = (_e = (_d = timelineItem.auditEvent) === null || _d === void 0 ? void 0 : _d.period) === null || _e === void 0 ? void 0 : _e.start) === null || _f === void 0 ? void 0 : _f.value));
67
+ var lookup = timelineDates[date];
68
+ if (!lookup) {
69
+ timelineDates[date] = [timelineItem];
70
+ }
71
+ else {
72
+ lookup.push(timelineItem);
73
+ timelineDates[date] = lookup;
74
+ }
75
+ });
76
+ var position = 0;
77
+ return (jsx_runtime_1.jsx(jsx_runtime_1.Fragment, { children: jsx_runtime_1.jsx(StyledTimeline, __assign({}, rest, { children: Object.entries(timelineDates).map(function (_a) {
78
+ var key = _a[0], value = _a[1];
79
+ position += 1;
80
+ if (isMobile) {
81
+ return (jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [jsx_runtime_1.jsx(StyledTimelineDayHeader, { children: key }, void 0),
82
+ jsx_runtime_1.jsx(StyledTimelineDayBody, __assign({ isMobile: isMobile }, { children: value === null || value === void 0 ? void 0 : value.map(function (timelineItem) { return (jsx_runtime_1.jsx(StyledTimelineDayItem, __assign({ isMobile: isMobile }, { children: jsx_runtime_1.jsx(StyledTimelineDayContent, __assign({ isMobile: isMobile }, { children: jsx_runtime_1.jsx(timeline_item_1.default, { timelineItem: timelineItem }, void 0) }), void 0) }), void 0)); }) }), void 0)] }, void 0));
83
+ }
84
+ return (jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [jsx_runtime_1.jsx(StyledTimelineDayHeader, { children: key }, void 0),
85
+ jsx_runtime_1.jsx(StyledTimelineDayBody, __assign({ isMobile: isMobile }, { children: value === null || value === void 0 ? void 0 : value.map(function (timelineItem, idx) {
86
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
87
+ if (!((_c = (_b = (_a = timelineItem === null || timelineItem === void 0 ? void 0 : timelineItem.auditEvent) === null || _a === void 0 ? void 0 : _a.period) === null || _b === void 0 ? void 0 : _b.start) === null || _c === void 0 ? void 0 : _c.value)) {
88
+ return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
89
+ }
90
+ var currentTime = utils_1.formatTime(new Date((_f = (_e = (_d = timelineItem.auditEvent) === null || _d === void 0 ? void 0 : _d.period) === null || _e === void 0 ? void 0 : _e.start) === null || _f === void 0 ? void 0 : _f.value));
91
+ var previousTime = currentTime;
92
+ if (idx > 0) {
93
+ var previousItem = audit[idx - 1];
94
+ if (!((_h = (_g = previousItem === null || previousItem === void 0 ? void 0 : previousItem.period) === null || _g === void 0 ? void 0 : _g.start) === null || _h === void 0 ? void 0 : _h.value)) {
95
+ return jsx_runtime_1.jsx(jsx_runtime_1.Fragment, {}, void 0);
96
+ }
97
+ previousTime = utils_1.formatTime(new Date((_k = (_j = previousItem === null || previousItem === void 0 ? void 0 : previousItem.period) === null || _j === void 0 ? void 0 : _j.start) === null || _k === void 0 ? void 0 : _k.value));
98
+ }
99
+ if (currentTime !== previousTime) {
100
+ position += 1;
101
+ }
102
+ var key = currentTime + "_" + idx;
103
+ if (position % 2 === 1) {
104
+ return (jsx_runtime_1.jsxs(StyledTimelineDayItem, __assign({ isMobile: isMobile }, { children: [jsx_runtime_1.jsx(StyledTimelineDayContent, __assign({ isMobile: isMobile }, { children: jsx_runtime_1.jsx(timeline_item_1.default, { timelineItem: timelineItem }, void 0) }), void 0),
105
+ jsx_runtime_1.jsxs(StyledTimelineDayLine, { children: [jsx_runtime_1.jsx(StyledOuterCircle, { children: jsx_runtime_1.jsx(icon_1.CircleIcon, { status: "info", size: "medium" }, void 0) }, void 0),
106
+ jsx_runtime_1.jsx(StyledInnerCircle, { children: jsx_runtime_1.jsx(icon_1.CircleIcon, { status: "info", size: "medium" }, void 0) }, void 0)] }, void 0),
107
+ jsx_runtime_1.jsx(StyledTimelineDayTimeRight, { children: jsx_runtime_1.jsx(timeline_time_1.default, { audit: timelineItem === null || timelineItem === void 0 ? void 0 : timelineItem.auditEvent }, void 0) }, void 0)] }), key));
108
+ }
109
+ return (jsx_runtime_1.jsxs(StyledTimelineDayItem, __assign({ isMobile: isMobile }, { children: [jsx_runtime_1.jsx(StyledTimelineDayTimeLeft, { children: jsx_runtime_1.jsx(timeline_time_1.default, { audit: timelineItem === null || timelineItem === void 0 ? void 0 : timelineItem.auditEvent }, void 0) }, void 0),
110
+ jsx_runtime_1.jsxs(StyledTimelineDayLine, { children: [jsx_runtime_1.jsx(StyledOuterCircle, { children: jsx_runtime_1.jsx(icon_1.CircleIcon, { status: "info", size: "medium" }, void 0) }, void 0),
111
+ jsx_runtime_1.jsx(StyledInnerCircle, { children: jsx_runtime_1.jsx(icon_1.CircleIcon, { status: "info", size: "medium" }, void 0) }, void 0)] }, void 0),
112
+ jsx_runtime_1.jsx(StyledTimelineDayContent, __assign({ isMobile: isMobile }, { children: jsx_runtime_1.jsx(timeline_item_1.default, { timelineItem: timelineItem }, void 0) }), void 0)] }), key));
113
+ }) }), void 0)] }, void 0));
114
+ }) }), void 0) }, void 0));
115
+ };
116
+ exports.default = Timeline;
117
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10;
118
118
  //# sourceMappingURL=timeline.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ltht-react/timeline",
3
- "version": "1.0.84",
3
+ "version": "1.0.85",
4
4
  "description": "> TODO: description",
5
5
  "author": "Jonny Dyson",
6
6
  "homepage": "",
@@ -23,14 +23,14 @@
23
23
  },
24
24
  "dependencies": {
25
25
  "@emotion/styled": "^11.0.0",
26
- "@ltht-react/banner": "^1.0.69",
27
- "@ltht-react/hooks": "^1.0.86",
28
- "@ltht-react/icon": "^1.3.96",
29
- "@ltht-react/styles": "^1.3.88",
30
- "@ltht-react/types": "^1.0.92",
31
- "@ltht-react/utils": "^1.1.94",
26
+ "@ltht-react/banner": "^1.0.70",
27
+ "@ltht-react/hooks": "^1.0.87",
28
+ "@ltht-react/icon": "^1.3.97",
29
+ "@ltht-react/styles": "^1.3.89",
30
+ "@ltht-react/types": "^1.0.93",
31
+ "@ltht-react/utils": "^1.1.95",
32
32
  "react": "^17.0.0",
33
33
  "react-html-parser": "^2.0.2"
34
34
  },
35
- "gitHead": "38d0f44e0e5dbd8453c5ef2ab169b12317219457"
35
+ "gitHead": "4007295972361bf9b74d594c439a0d7908ec1bda"
36
36
  }