@uva-glass/component-library 3.0.10 → 3.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{Lexical.prod-CoFvB6ST.js → Lexical.prod-pVkgOp1j.js} +6 -6
- package/dist/Lexical.prod-pVkgOp1j.js.map +1 -0
- package/dist/{LexicalClipboard.prod-BceK2u8q.js → LexicalClipboard.prod-DIvwPtmL.js} +4 -4
- package/dist/{LexicalClipboard.prod-BceK2u8q.js.map → LexicalClipboard.prod-DIvwPtmL.js.map} +1 -1
- package/dist/{LexicalLink.prod-DgAdBBH7.js → LexicalLink.prod-NMeHB9CR.js} +3 -3
- package/dist/{LexicalLink.prod-DgAdBBH7.js.map → LexicalLink.prod-NMeHB9CR.js.map} +1 -1
- package/dist/{LexicalList.prod-BsGg0KUo.js → LexicalList.prod-CicvwkCx.js} +10 -8
- package/dist/LexicalList.prod-CicvwkCx.js.map +1 -0
- package/dist/{LexicalSelection.prod-CajyzNb9.js → LexicalSelection.prod-mQvH0_ap.js} +2 -2
- package/dist/{LexicalSelection.prod-CajyzNb9.js.map → LexicalSelection.prod-mQvH0_ap.js.map} +1 -1
- package/dist/{LexicalTable.prod-CNsOdwua.js → LexicalTable.prod-Bb6g8CAC.js} +240 -231
- package/dist/LexicalTable.prod-Bb6g8CAC.js.map +1 -0
- package/dist/{LexicalUtils.prod-CqRL6ZhZ.js → LexicalUtils.prod-C_aSRWfh.js} +2 -2
- package/dist/{LexicalUtils.prod-CqRL6ZhZ.js.map → LexicalUtils.prod-C_aSRWfh.js.map} +1 -1
- package/dist/{TablePlugin-CFD5PSMc.js → TablePlugin-o1MveXq2.js} +4 -4
- package/dist/{TablePlugin-CFD5PSMc.js.map → TablePlugin-o1MveXq2.js.map} +1 -1
- package/dist/TimelineItem-v4zDdKUz.js +52 -0
- package/dist/TimelineItem-v4zDdKUz.js.map +1 -0
- package/dist/__mocks__/svgrMock.js.map +1 -1
- package/dist/assets/TimelineItem.css +1 -0
- package/dist/assets/VarIndicator.css +1 -1
- package/dist/assets/variables.css +3 -3
- package/dist/components/Accordion/Accordion.test.js.map +1 -1
- package/dist/components/AccordionCard/AccordionCard.test.js.map +1 -1
- package/dist/components/ActionList/ActionList.test.js.map +1 -1
- package/dist/components/AppStatusBar/AppStatusBar.test.js.map +1 -1
- package/dist/components/Attention/Attention.test.js.map +1 -1
- package/dist/components/Backdrop/Backdrop.test.js.map +1 -1
- package/dist/components/Buttons/Button.test.js.map +1 -1
- package/dist/components/Buttons/LinkButton.test.js +1 -1
- package/dist/components/Buttons/LinkButton.test.js.map +1 -1
- package/dist/components/Buttons/MenuButton.test.js +1 -1
- package/dist/components/Buttons/MenuButton.test.js.map +1 -1
- package/dist/components/CheckboxTree/CheckboxTree.js +1 -1
- package/dist/components/FormInput/FormInput.js +1 -1
- package/dist/components/InputField/InputField.stories.js +1 -1
- package/dist/components/Label/Label.test.js.map +1 -1
- package/dist/components/MultiSelect/MultiSelect.js +1 -1
- package/dist/components/MultiSelect/MultiSelect.stories.js +1 -1
- package/dist/components/MultiSelect/components/MultiSelectHeader.js +1 -1
- package/dist/components/MultiSelect/index.js +1 -1
- package/dist/components/OverlayStepBar/OverlayStepBar.js +1 -1
- package/dist/components/PeriodSelector/PeriodSelector.js +1 -1
- package/dist/components/ProgrammeCard/ProgrammeCard.stories.js +1 -1
- package/dist/components/RteEditor/EditorHeader/EditorHeader.js +1 -1
- package/dist/components/RteEditor/Plugins/BlockFormatPlugin/BlockFormatPlugin.js +1 -1
- package/dist/components/RteEditor/Plugins/HistoryPlugin/HistoryPlugin.js +2 -2
- package/dist/components/RteEditor/Plugins/LinkPlugin/AddLinkForm/AddLinkFrom.js +2 -2
- package/dist/components/RteEditor/Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js +1 -1
- package/dist/components/RteEditor/Plugins/LinkPlugin/LinkPlugin.js +4 -4
- package/dist/components/RteEditor/Plugins/LinkPlugin/helpers.js +1 -1
- package/dist/components/RteEditor/Plugins/ListPlugin/ListPlugin.js +3 -3
- package/dist/components/RteEditor/Plugins/PasteHandlerPlugin/PasteHandlerPlugin.js +3 -3
- package/dist/components/RteEditor/Plugins/TablePlugin/AddTableFrom.js +1 -1
- package/dist/components/RteEditor/Plugins/TablePlugin/TablePlugin.js +3 -3
- package/dist/components/RteEditor/Plugins/TablePlugin/helpers.js +2 -2
- package/dist/components/RteEditor/Plugins/TablePlugin/index.js +1 -1
- package/dist/components/RteEditor/Plugins/ToolbarPlugin/ToolbarPlugin.js +3 -3
- package/dist/components/RteEditor/Plugins/index.js +1 -1
- package/dist/components/RteEditor/RteEditor.js +31 -31
- package/dist/components/RteEditor/helpers.js +4 -4
- package/dist/components/Timeline/Timeline.d.ts +28 -0
- package/dist/components/Timeline/Timeline.js +29 -0
- package/dist/components/Timeline/Timeline.js.map +1 -0
- package/dist/components/Timeline/Timeline.stories.d.ts +5 -0
- package/dist/components/Timeline/Timeline.stories.js +43 -0
- package/dist/components/Timeline/Timeline.stories.js.map +1 -0
- package/dist/components/Timeline/Timeline.test.d.ts +0 -0
- package/dist/components/Timeline/Timeline.test.js +80 -0
- package/dist/components/Timeline/Timeline.test.js.map +1 -0
- package/dist/components/Timeline/TimelineItem.d.ts +2 -0
- package/dist/components/Timeline/TimelineItem.js +7 -0
- package/dist/components/Timeline/TimelineItem.js.map +1 -0
- package/dist/components/Timeline/index.d.ts +1 -0
- package/dist/components/Timeline/index.js +5 -0
- package/dist/components/Timeline/index.js.map +1 -0
- package/dist/components/Timeline/mockTimelineItem.d.ts +30 -0
- package/dist/components/Timeline/mockTimelineItem.js +95 -0
- package/dist/components/Timeline/mockTimelineItem.js.map +1 -0
- package/dist/components/VarIndicator/VarIndicator.js +11 -11
- package/dist/components/VarIndicator/VarIndicator.js.map +1 -1
- package/dist/components/VarIndicator/VarIndicator.stories.js.map +1 -1
- package/dist/components/VarIndicator/VarIndicator.test.js.map +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +23 -21
- package/dist/components/index.js.map +1 -1
- package/dist/{helpers-C-JeRM2f.js → helpers-CtrLGKFA.js} +4 -4
- package/dist/{helpers-C-JeRM2f.js.map → helpers-CtrLGKFA.js.map} +1 -1
- package/dist/index.js +23 -21
- package/dist/index.js.map +1 -1
- package/dist/setupTests.js.map +1 -1
- package/package.json +8 -8
- package/dist/Lexical.prod-CoFvB6ST.js.map +0 -1
- package/dist/LexicalList.prod-BsGg0KUo.js.map +0 -1
- package/dist/LexicalTable.prod-CNsOdwua.js.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { W as d, v as h, B as m, X as S, z as w, H as v, x as C, A as p, $ as E } from "../../../../LexicalTable.prod-
|
|
2
|
-
import { T as u } from "../../../../Lexical.prod-
|
|
1
|
+
import { W as d, v as h, B as m, X as S, z as w, H as v, x as C, A as p, $ as E } from "../../../../LexicalTable.prod-Bb6g8CAC.js";
|
|
2
|
+
import { T as u } from "../../../../Lexical.prod-pVkgOp1j.js";
|
|
3
3
|
const b = 100, D = (e, n) => {
|
|
4
4
|
const t = E(0, 0, !1);
|
|
5
5
|
for (let o = 0; o < e; o++) {
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { jsxs as L, jsx as n } from "react/jsx-runtime";
|
|
2
2
|
import { o as P } from "../../../../LexicalComposerContext.prod-DLlRM5wP.js";
|
|
3
|
-
import { a as g, l as h, g as y } from "../../../../Lexical.prod-
|
|
3
|
+
import { a as g, l as h, g as y } from "../../../../Lexical.prod-pVkgOp1j.js";
|
|
4
4
|
import { useState as C, useRef as E, useCallback as T, useEffect as m } from "react";
|
|
5
|
-
import { L as b } from "../../../../LexicalTable.prod-
|
|
5
|
+
import { L as b } from "../../../../LexicalTable.prod-Bb6g8CAC.js";
|
|
6
6
|
import { BlockFormatPlugin as N } from "../BlockFormatPlugin/BlockFormatPlugin.js";
|
|
7
7
|
import { ListPlugin as k } from "../ListPlugin/ListPlugin.js";
|
|
8
8
|
import { LinkPlugin as x } from "../LinkPlugin/LinkPlugin.js";
|
|
9
9
|
import { HistoryPlugin as B } from "../HistoryPlugin/HistoryPlugin.js";
|
|
10
|
-
import { T as S } from "../../../../TablePlugin-
|
|
10
|
+
import { T as S } from "../../../../TablePlugin-o1MveXq2.js";
|
|
11
11
|
import { TableCellContextMenu as z } from "../TablePlugin/TableCellContextMenu/TableCellContextMenu.js";
|
|
12
12
|
import { s as A } from "../../../../RteEditor.module-oFMKEW6f.js";
|
|
13
13
|
import { setScrollableContainers as w, removeScrollableContainers as K } from "../../helpers.js";
|
|
@@ -3,7 +3,7 @@ import { BlockFormatPlugin as l } from "./BlockFormatPlugin/BlockFormatPlugin.js
|
|
|
3
3
|
import { ListPlugin as n } from "./ListPlugin/ListPlugin.js";
|
|
4
4
|
import { LinkPlugin as m, getLinkNodeTag as x } from "./LinkPlugin/LinkPlugin.js";
|
|
5
5
|
import { HistoryPlugin as p } from "./HistoryPlugin/HistoryPlugin.js";
|
|
6
|
-
import { T as a } from "../../../TablePlugin-
|
|
6
|
+
import { T as a } from "../../../TablePlugin-o1MveXq2.js";
|
|
7
7
|
import { TableCellContextMenu as T } from "./TablePlugin/TableCellContextMenu/TableCellContextMenu.js";
|
|
8
8
|
export {
|
|
9
9
|
l as BlockFormatPlugin,
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import { jsx as h, jsxs as O, Fragment as Pe } from "react/jsx-runtime";
|
|
2
2
|
import { t as Je, r as Ve, o as P } from "../../LexicalComposerContext.prod-DLlRM5wP.js";
|
|
3
|
-
import { aB as Te, ad as z, T as Re, a as p, ah as j, d as q, w as Xe, X as I, l as g, M as Ge, N as m, aC as
|
|
3
|
+
import { aB as Te, ad as z, T as Re, a as p, ah as j, d as q, w as Xe, X as I, l as g, M as Ge, N as m, aC as Ye, ac as Ie, o as Qe, n as Me, aD as Ze, G as et, aA as K, ax as tt, aE as nt, aF as rt, aG as ot, r as ne, aH as it, aI as st, Z as at, C as lt, g as ut, L as ct, aJ as dt, aK as fe, b as me, B as ft, y as re, A as mt, a0 as Fe, aL as pe, u as pt, q as gt, m as ht, aM as ge, p as Ct, aN as yt, aO as Et, aP as wt, aw as vt, J as bt, I as _t, aQ as St, K as kt, x as xt, v as Nt, i as Lt, E as he, aR as Dt, t as $t, am as G, al as Y, aS as Pt, aT as Tt, ao as Rt, an as It } from "../../Lexical.prod-pVkgOp1j.js";
|
|
4
4
|
import * as oe from "react";
|
|
5
5
|
import { useMemo as J, useLayoutEffect as U, useEffect as k, useState as M, useRef as Ke, Suspense as Mt, forwardRef as Oe, useCallback as Ft } from "react";
|
|
6
|
-
import { $ as H, E as A, m as Kt, h as de } from "../../LexicalUtils.prod-
|
|
6
|
+
import { $ as H, E as A, m as Kt, h as de } from "../../LexicalUtils.prod-C_aSRWfh.js";
|
|
7
7
|
import { flushSync as Ot, createPortal as At } from "react-dom";
|
|
8
|
-
import { D as Ce, _ as ye, h as zt, m as Bt } from "../../LexicalClipboard.prod-
|
|
9
|
-
import { W as Ee, G as we } from "../../LexicalSelection.prod-
|
|
10
|
-
import { q as Ae, W as ze, n as Ut } from "../../LexicalList.prod-
|
|
11
|
-
import { h as Be, O as ve, N as ie, d as Ht, p as Wt } from "../../LexicalLink.prod-
|
|
12
|
-
import {
|
|
13
|
-
import { a as
|
|
8
|
+
import { D as Ce, _ as ye, h as zt, m as Bt } from "../../LexicalClipboard.prod-DIvwPtmL.js";
|
|
9
|
+
import { W as Ee, G as we } from "../../LexicalSelection.prod-mQvH0_ap.js";
|
|
10
|
+
import { q as Ae, W as ze, n as Ut } from "../../LexicalList.prod-CicvwkCx.js";
|
|
11
|
+
import { h as Be, O as ve, N as ie, d as Ht, p as Wt } from "../../LexicalLink.prod-NMeHB9CR.js";
|
|
12
|
+
import { e as jt, g as qt, f as Jt, d as Vt, b as Ue, F as Xt, t as Gt } from "../../LexicalTable.prod-Bb6g8CAC.js";
|
|
13
|
+
import { a as Yt, w as Qt, M as Zt } from "../../helpers-CtrLGKFA.js";
|
|
14
14
|
import { c as en } from "../../clsx-OuTLNxxd.js";
|
|
15
15
|
import { exportMap as tn, isStartingWithHtmlTag as nn, mergeBoldStrongTags as rn } from "./helpers.js";
|
|
16
16
|
import { s as R } from "../../RteEditor.module-oFMKEW6f.js";
|
|
17
17
|
import { ToolBarPlugin as on } from "./Plugins/ToolbarPlugin/ToolbarPlugin.js";
|
|
18
18
|
import { useTranslation as sn } from "./hooks/useTranslation.js";
|
|
19
|
-
import "../../TablePlugin-
|
|
19
|
+
import "../../TablePlugin-o1MveXq2.js";
|
|
20
20
|
import "./Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
21
21
|
import "./hooks/components/Flyout.js";
|
|
22
22
|
import "../Buttons/Button.js";
|
|
@@ -41,7 +41,7 @@ import { UvaTheme as ln } from "./UvaTheme/UvaTheme.js";
|
|
|
41
41
|
import { EditorHeader as un } from "./EditorHeader/EditorHeader.js";
|
|
42
42
|
import { LanguageProvider as cn, useLanguage as dn } from "./Providers/LanguageProvider.js";
|
|
43
43
|
import { PasteHandlerPlugin as fn } from "./Plugins/PasteHandlerPlugin/PasteHandlerPlugin.js";
|
|
44
|
-
const He = typeof window < "u" && window.document !== void 0 && window.document.createElement !== void 0, mn = He ? U : k,
|
|
44
|
+
const He = typeof window < "u" && window.document !== void 0 && window.document.createElement !== void 0, mn = He ? U : k, Q = { tag: "history-merge" };
|
|
45
45
|
function pn({ initialConfig: n, children: e }) {
|
|
46
46
|
const t = J(() => {
|
|
47
47
|
const { theme: o, namespace: i, nodes: r, onError: s, editorState: a, html: l } = n, u = Je(null, o), c = Te({ editable: n.editable, html: l, namespace: i, nodes: r, onError: (d) => s(d, c), theme: o });
|
|
@@ -55,20 +55,20 @@ function pn({ initialConfig: n, children: e }) {
|
|
|
55
55
|
const v = He ? document.activeElement : null;
|
|
56
56
|
(p() !== null || v !== null && v === d.getRootElement()) && y.select();
|
|
57
57
|
}
|
|
58
|
-
},
|
|
58
|
+
}, Q);
|
|
59
59
|
else if (f !== null) switch (typeof f) {
|
|
60
60
|
case "string": {
|
|
61
61
|
const C = d.parseEditorState(f);
|
|
62
|
-
d.setEditorState(C,
|
|
62
|
+
d.setEditorState(C, Q);
|
|
63
63
|
break;
|
|
64
64
|
}
|
|
65
65
|
case "object":
|
|
66
|
-
d.setEditorState(f,
|
|
66
|
+
d.setEditorState(f, Q);
|
|
67
67
|
break;
|
|
68
68
|
case "function":
|
|
69
69
|
d.update(() => {
|
|
70
70
|
z().isEmpty() && f(d);
|
|
71
|
-
},
|
|
71
|
+
}, Q);
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
}(c, a), [c, u];
|
|
@@ -174,8 +174,8 @@ function be(n, e) {
|
|
|
174
174
|
}
|
|
175
175
|
return null;
|
|
176
176
|
}
|
|
177
|
-
const W = typeof window < "u" && window.document !== void 0 && window.document.createElement !== void 0, bn = W && "documentMode" in document ? document.documentMode : null, _n = !(!W || !("InputEvent" in window) || bn) && "getTargetRanges" in new window.InputEvent("input"), Sn = W && /Version\/[\d.]+.*Safari/.test(navigator.userAgent), _e = W && /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream, kn = W && /^(?=.*Chrome).*/i.test(navigator.userAgent), xn = W && /AppleWebKit\/[\d.]+/.test(navigator.userAgent) && !kn, Se =
|
|
178
|
-
function
|
|
177
|
+
const W = typeof window < "u" && window.document !== void 0 && window.document.createElement !== void 0, bn = W && "documentMode" in document ? document.documentMode : null, _n = !(!W || !("InputEvent" in window) || bn) && "getTargetRanges" in new window.InputEvent("input"), Sn = W && /Version\/[\d.]+.*Safari/.test(navigator.userAgent), _e = W && /iPad|iPhone|iPod/.test(navigator.userAgent) && !window.MSStream, kn = W && /^(?=.*Chrome).*/i.test(navigator.userAgent), xn = W && /AppleWebKit\/[\d.]+/.test(navigator.userAgent) && !kn, Se = Qe();
|
|
178
|
+
function Z(n) {
|
|
179
179
|
let e = null;
|
|
180
180
|
if (A(n, DragEvent) ? e = n.dataTransfer : A(n, ClipboardEvent) && (e = n.clipboardData), e === null) return [!1, [], !1];
|
|
181
181
|
const t = e.types, o = t.includes("Files"), i = t.includes("text/html") || t.includes("text/plain");
|
|
@@ -322,7 +322,7 @@ function Nn(n) {
|
|
|
322
322
|
const e = p();
|
|
323
323
|
return !!g(e) && (n.blur(), !0);
|
|
324
324
|
}, m), n.registerCommand(st, (e) => {
|
|
325
|
-
const [, t] =
|
|
325
|
+
const [, t] = Z(e);
|
|
326
326
|
if (t.length > 0) {
|
|
327
327
|
const i = be(e.clientX, e.clientY);
|
|
328
328
|
if (i !== null) {
|
|
@@ -344,10 +344,10 @@ function Nn(n) {
|
|
|
344
344
|
const o = p();
|
|
345
345
|
return !!g(o);
|
|
346
346
|
}, m), n.registerCommand(it, (e) => {
|
|
347
|
-
const [t] =
|
|
347
|
+
const [t] = Z(e), o = p();
|
|
348
348
|
return !(t && !g(o));
|
|
349
349
|
}, m), n.registerCommand(ot, (e) => {
|
|
350
|
-
const [t] =
|
|
350
|
+
const [t] = Z(e), o = p();
|
|
351
351
|
if (t && !g(o)) return !1;
|
|
352
352
|
const i = be(e.clientX, e.clientY);
|
|
353
353
|
if (i !== null) {
|
|
@@ -361,14 +361,14 @@ function Nn(n) {
|
|
|
361
361
|
g(i) ? i.removeText() : K(i) && i.getNodes().forEach((r) => r.remove());
|
|
362
362
|
});
|
|
363
363
|
}(e, n), !0), m), n.registerCommand(Ie, (e) => {
|
|
364
|
-
const [, t, o] =
|
|
365
|
-
return t.length > 0 && !o ? (n.dispatchCommand(Se, t), !0) : Me(e.target) &&
|
|
364
|
+
const [, t, o] = Z(e);
|
|
365
|
+
return t.length > 0 && !o ? (n.dispatchCommand(Se, t), !0) : Me(e.target) && Ze(e.target) ? !1 : p() !== null && (function(i, r) {
|
|
366
366
|
i.preventDefault(), r.update(() => {
|
|
367
367
|
const s = p(), a = A(i, InputEvent) || A(i, KeyboardEvent) ? null : i.clipboardData;
|
|
368
368
|
a != null && s !== null && Ce(a, s, r);
|
|
369
369
|
}, { tag: "paste" });
|
|
370
370
|
}(e, n), !0);
|
|
371
|
-
}, m), n.registerCommand(
|
|
371
|
+
}, m), n.registerCommand(Ye, (e) => {
|
|
372
372
|
const t = p();
|
|
373
373
|
return g(t) && se(t), !1;
|
|
374
374
|
}, m), n.registerCommand(Ge, (e) => {
|
|
@@ -645,21 +645,21 @@ function Jn(n, e, t) {
|
|
|
645
645
|
const a = s.redoStack, l = s.undoStack;
|
|
646
646
|
if (l.length !== 0) {
|
|
647
647
|
const u = s.current, c = l.pop();
|
|
648
|
-
u !== null && (a.push(u), r.dispatchCommand(G, !0)), l.length === 0 && r.dispatchCommand(
|
|
648
|
+
u !== null && (a.push(u), r.dispatchCommand(G, !0)), l.length === 0 && r.dispatchCommand(Y, !1), s.current = c || null, c && c.editor.setEditorState(c.editorState, { tag: "historic" });
|
|
649
649
|
}
|
|
650
650
|
}(n, e), !0), m), n.registerCommand(Rt, () => (function(r, s) {
|
|
651
651
|
const a = s.redoStack, l = s.undoStack;
|
|
652
652
|
if (a.length !== 0) {
|
|
653
653
|
const u = s.current;
|
|
654
|
-
u !== null && (l.push(u), r.dispatchCommand(
|
|
654
|
+
u !== null && (l.push(u), r.dispatchCommand(Y, !0));
|
|
655
655
|
const c = a.pop();
|
|
656
656
|
a.length === 0 && r.dispatchCommand(G, !1), s.current = c || null, c && c.editor.setEditorState(c.editorState, { tag: "historic" });
|
|
657
657
|
}
|
|
658
|
-
}(n, e), !0), m), n.registerCommand(Tt, () => ($e(e), !1), m), n.registerCommand(Pt, () => ($e(e), n.dispatchCommand(G, !1), n.dispatchCommand(
|
|
658
|
+
}(n, e), !0), m), n.registerCommand(Tt, () => ($e(e), !1), m), n.registerCommand(Pt, () => ($e(e), n.dispatchCommand(G, !1), n.dispatchCommand(Y, !1), !0), m), n.registerUpdateListener(({ editorState: r, prevEditorState: s, dirtyLeaves: a, dirtyElements: l, tags: u }) => {
|
|
659
659
|
const c = e.current, d = e.redoStack, f = e.undoStack, C = c === null ? null : c.editorState;
|
|
660
660
|
if (c !== null && r === C) return;
|
|
661
661
|
const y = o(s, r, c, a, l, u);
|
|
662
|
-
if (y === ue) d.length !== 0 && (e.redoStack = [], n.dispatchCommand(G, !1)), c !== null && (f.push({ ...c }), n.dispatchCommand(
|
|
662
|
+
if (y === ue) d.length !== 0 && (e.redoStack = [], n.dispatchCommand(G, !1)), c !== null && (f.push({ ...c }), n.dispatchCommand(Y, !0));
|
|
663
663
|
else if (y === ce) return;
|
|
664
664
|
e.current = { editor: n, editorState: r };
|
|
665
665
|
}));
|
|
@@ -686,7 +686,7 @@ function Gn({ hasCellMerge: n = !0, hasCellBackgroundColor: e = !0, hasTabHandle
|
|
|
686
686
|
});
|
|
687
687
|
}, [i, e, n]), null;
|
|
688
688
|
}
|
|
689
|
-
const qe = 200,
|
|
689
|
+
const qe = 200, Yn = ({
|
|
690
690
|
currentLanguage: n = "NL",
|
|
691
691
|
initialValue: e = "",
|
|
692
692
|
placeholder: t = "",
|
|
@@ -770,8 +770,8 @@ const qe = 200, Zn = ({
|
|
|
770
770
|
/* @__PURE__ */ h(Gn, {}),
|
|
771
771
|
/* @__PURE__ */ h(Xn, {}),
|
|
772
772
|
/* @__PURE__ */ h(An, {}),
|
|
773
|
-
/* @__PURE__ */ h(zn, { validateUrl:
|
|
774
|
-
/* @__PURE__ */ h(
|
|
773
|
+
/* @__PURE__ */ h(zn, { validateUrl: Yt }),
|
|
774
|
+
/* @__PURE__ */ h(Qt, { matchers: Zt }),
|
|
775
775
|
/* @__PURE__ */ h(Bn, {}),
|
|
776
776
|
/* @__PURE__ */ h(On, { onChange: N }),
|
|
777
777
|
/* @__PURE__ */ h(fn, {})
|
|
@@ -790,7 +790,7 @@ const qe = 200, Zn = ({
|
|
|
790
790
|
maxWords: a = qe,
|
|
791
791
|
onChange: l
|
|
792
792
|
}) => /* @__PURE__ */ h(cn, { children: /* @__PURE__ */ h(
|
|
793
|
-
|
|
793
|
+
Yn,
|
|
794
794
|
{
|
|
795
795
|
currentLanguage: n,
|
|
796
796
|
initialValue: e,
|
|
@@ -804,7 +804,7 @@ const qe = 200, Zn = ({
|
|
|
804
804
|
}
|
|
805
805
|
) });
|
|
806
806
|
export {
|
|
807
|
-
|
|
807
|
+
Yn as Rte,
|
|
808
808
|
zr as RteEditor
|
|
809
809
|
};
|
|
810
810
|
//# sourceMappingURL=RteEditor.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { h as s } from "../../LexicalLink.prod-
|
|
2
|
-
import { q as n, W as i } from "../../LexicalList.prod-
|
|
3
|
-
import { ab as a, R as c } from "../../Lexical.prod-
|
|
4
|
-
import {
|
|
1
|
+
import { h as s } from "../../LexicalLink.prod-NMeHB9CR.js";
|
|
2
|
+
import { q as n, W as i } from "../../LexicalList.prod-CicvwkCx.js";
|
|
3
|
+
import { ab as a, R as c } from "../../Lexical.prod-pVkgOp1j.js";
|
|
4
|
+
import { t as m, F as b, b as g } from "../../LexicalTable.prod-Bb6g8CAC.js";
|
|
5
5
|
const h = (e) => /^<(b|i|u|strong|em|mark|small|del|ins|sub|sup|div|p|span|h[1-6]|a|img|table|tr|td|th|ul|ol|li|blockquote|pre|code|br)(\s+[^>]*)?>/i.test(e.trim()), v = (e) => {
|
|
6
6
|
let r = e.replace(/<b><strong>/gi, "<strong>");
|
|
7
7
|
return r = r.replace(/<\/strong><\/b>/gi, "</strong>"), r;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
type NodeTypes = 'active' | 'draft' | 'rejected' | 'verified' | 'submitted';
|
|
2
|
+
export interface TimelineItemProps {
|
|
3
|
+
/** Title of the node */
|
|
4
|
+
title: string;
|
|
5
|
+
/** Type of the node active, draft, rejected, verified, submitted */
|
|
6
|
+
type: NodeTypes;
|
|
7
|
+
/** Reason for rejection on verified node */
|
|
8
|
+
reason?: string;
|
|
9
|
+
/** Subtitle of the node */
|
|
10
|
+
subtitle?: string;
|
|
11
|
+
/** Tasks to be completed */
|
|
12
|
+
tasks?: {
|
|
13
|
+
title?: string;
|
|
14
|
+
assignee?: string;
|
|
15
|
+
}[];
|
|
16
|
+
/** If the task is completed */
|
|
17
|
+
completed: boolean;
|
|
18
|
+
}
|
|
19
|
+
export interface TimelineProps {
|
|
20
|
+
/** Is the task is completed */
|
|
21
|
+
timelineData: TimelineItemProps[];
|
|
22
|
+
/** Label of the button is inclomplete tasks are hidden */
|
|
23
|
+
showLabel: string;
|
|
24
|
+
/** Label of the button is inclomplete tasks are shown */
|
|
25
|
+
hideLabel: string;
|
|
26
|
+
}
|
|
27
|
+
export declare const Timeline: ({ timelineData, showLabel, hideLabel }: TimelineProps) => import("react/jsx-runtime").JSX.Element;
|
|
28
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { jsxs as s, jsx as o, Fragment as h } from "react/jsx-runtime";
|
|
2
|
+
import { useState as u, createElement as r } from "react";
|
|
3
|
+
import { c } from "../../clsx-OuTLNxxd.js";
|
|
4
|
+
import { s as t, T as a } from "../../TimelineItem-v4zDdKUz.js";
|
|
5
|
+
import { Button as T } from "../Buttons/Button.js";
|
|
6
|
+
import "../Buttons/LinkButton.js";
|
|
7
|
+
import "@react-aria/button";
|
|
8
|
+
const y = ({ timelineData: n, showLabel: p, hideLabel: _ }) => {
|
|
9
|
+
const [i, d] = u(!1), f = n.filter((e) => e.completed), m = n.filter((e) => !e.completed);
|
|
10
|
+
return /* @__PURE__ */ s("div", { className: t.timeline__container, children: [
|
|
11
|
+
m.length > 0 && /* @__PURE__ */ o(
|
|
12
|
+
"div",
|
|
13
|
+
{
|
|
14
|
+
className: c(t["timeline__button-container"], [
|
|
15
|
+
i && t["timeline__button-container--active"]
|
|
16
|
+
]),
|
|
17
|
+
children: /* @__PURE__ */ o(T, { variant: "blank-subtle", onClick: () => d(!i), children: i ? `${_}` : `${p}` })
|
|
18
|
+
}
|
|
19
|
+
),
|
|
20
|
+
/* @__PURE__ */ s("ul", { className: t.timeline__list, children: [
|
|
21
|
+
i ? /* @__PURE__ */ o(h, { children: m.map((e, l) => /* @__PURE__ */ r(a, { ...e, key: `${l}_${e.title}` })) }) : /* @__PURE__ */ o("li", { className: c(t.timeline__item, t["timeline__item--todo"]) }),
|
|
22
|
+
f.map((e, l) => /* @__PURE__ */ r(a, { ...e, key: `${l}_${e.title}` }))
|
|
23
|
+
] })
|
|
24
|
+
] });
|
|
25
|
+
};
|
|
26
|
+
export {
|
|
27
|
+
y as Timeline
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=Timeline.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Timeline.js","sources":["../../../src/components/Timeline/Timeline.tsx"],"sourcesContent":["import clsx from 'clsx';\nimport { useState } from 'react';\n\nimport styles from './Timeline.module.css';\n\nimport { TimelineItem } from 'components/Timeline/TimelineItem';\nimport { Button } from 'components/Buttons';\n\ntype NodeTypes = 'active' | 'draft' | 'rejected' | 'verified' | 'submitted';\n\nexport interface TimelineItemProps {\n /** Title of the node */\n title: string;\n /** Type of the node active, draft, rejected, verified, submitted */\n type: NodeTypes;\n /** Reason for rejection on verified node */\n reason?: string;\n /** Subtitle of the node */\n subtitle?: string;\n /** Tasks to be completed */\n tasks?: {\n title?: string;\n assignee?: string;\n }[];\n /** If the task is completed */\n completed: boolean;\n}\nexport interface TimelineProps {\n /** Is the task is completed */\n timelineData: TimelineItemProps[];\n /** Label of the button is inclomplete tasks are hidden */\n showLabel: string;\n /** Label of the button is inclomplete tasks are shown */\n hideLabel: string;\n}\n\nexport const Timeline = ({ timelineData, showLabel, hideLabel }: TimelineProps) => {\n const [showTodo, setShowTodo] = useState(false);\n const completedTasks = timelineData.filter((task) => task.completed);\n const pendingTasks = timelineData.filter((task) => !task.completed);\n\n return (\n <div className={styles['timeline__container']}>\n {pendingTasks.length > 0 && (\n <div\n className={clsx(styles['timeline__button-container'], [\n showTodo && styles['timeline__button-container--active'],\n ])}\n >\n <Button variant=\"blank-subtle\" onClick={() => setShowTodo(!showTodo)}>\n {showTodo ? `${hideLabel}` : `${showLabel}`}\n </Button>\n </div>\n )}\n <ul className={styles['timeline__list']}>\n {showTodo ? (\n <>\n {pendingTasks.map((data: TimelineItemProps, idx: number) => (\n <TimelineItem {...data} key={`${idx}_${data.title}`} />\n ))}\n </>\n ) : (\n <li className={clsx(styles['timeline__item'], styles['timeline__item--todo'])}></li>\n )}\n {completedTasks.map((data: TimelineItemProps, idx: number) => (\n <TimelineItem {...data} key={`${idx}_${data.title}`} />\n ))}\n </ul>\n </div>\n );\n};\n"],"names":["Timeline","timelineData","showLabel","hideLabel","showTodo","setShowTodo","useState","completedTasks","task","pendingTasks","jsxs","styles","jsx","clsx","Button","Fragment","data","idx","createElement","TimelineItem"],"mappings":";;;;;;;AAoCO,MAAMA,IAAW,CAAC,EAAE,cAAAC,GAAc,WAAAC,GAAW,WAAAC,QAA+B;AACjF,QAAM,CAACC,GAAUC,CAAW,IAAIC,EAAS,EAAK,GACxCC,IAAiBN,EAAa,OAAO,CAACO,MAASA,EAAK,SAAS,GAC7DC,IAAeR,EAAa,OAAO,CAACO,MAAS,CAACA,EAAK,SAAS;AAElE,SACG,gBAAAE,EAAA,OAAA,EAAI,WAAWC,EAAO,qBACpB,UAAA;AAAA,IAAAF,EAAa,SAAS,KACrB,gBAAAG;AAAA,MAAC;AAAA,MAAA;AAAA,QACC,WAAWC,EAAKF,EAAO,4BAA4B,GAAG;AAAA,UACpDP,KAAYO,EAAO,oCAAoC;AAAA,QAAA,CACxD;AAAA,QAED,4BAACG,GAAO,EAAA,SAAQ,gBAAe,SAAS,MAAMT,EAAY,CAACD,CAAQ,GAChE,cAAW,GAAGD,CAAS,KAAK,GAAGD,CAAS,GAC3C,CAAA;AAAA,MAAA;AAAA,IACF;AAAA,IAED,gBAAAQ,EAAA,MAAA,EAAG,WAAWC,EAAO,gBACnB,UAAA;AAAA,MAAAP,IAEI,gBAAAQ,EAAAG,GAAA,EAAA,UAAAN,EAAa,IAAI,CAACO,GAAyBC,MACzC,gBAAAC,EAAAC,GAAA,EAAc,GAAGH,GAAM,KAAK,GAAGC,CAAG,IAAID,EAAK,KAAK,GAAA,CAAI,CACtD,EACH,CAAA,IAEA,gBAAAJ,EAAC,MAAG,EAAA,WAAWC,EAAKF,EAAO,gBAAmBA,EAAO,sBAAsB,CAAC,GAAG;AAAA,MAEhFJ,EAAe,IAAI,CAACS,GAAyBC,wBAC3CE,GAAc,EAAA,GAAGH,GAAM,KAAK,GAAGC,CAAG,IAAID,EAAK,KAAK,IAAI,CACtD;AAAA,IAAA,EACH,CAAA;AAAA,EAAA,GACF;AAEJ;"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { Meta } from '@storybook/react';
|
|
2
|
+
import { TimelineProps } from './Timeline';
|
|
3
|
+
declare const _default: Meta<TimelineProps>;
|
|
4
|
+
export default _default;
|
|
5
|
+
export declare const TimelineExample: import('@storybook/core/csf').AnnotatedStoryFn<import('@storybook/react').ReactRenderer, TimelineProps>;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import { Timeline as e } from "./Timeline.js";
|
|
3
|
+
import { MOCK_TIMELINE_ITEM as i } from "./mockTimelineItem.js";
|
|
4
|
+
const n = "<Timeline data=[] showLabel={string} hideLabel={string} />", c = {
|
|
5
|
+
title: "Organisms/Timeline",
|
|
6
|
+
component: e,
|
|
7
|
+
argTypes: {
|
|
8
|
+
timelineData: {
|
|
9
|
+
description: "Data for the timeline",
|
|
10
|
+
control: {
|
|
11
|
+
type: "object"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
14
|
+
showLabel: {
|
|
15
|
+
description: "Label of the button if inclomplete tasks are hidden",
|
|
16
|
+
control: {
|
|
17
|
+
type: "text"
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
hideLabel: {
|
|
21
|
+
description: "Label of the button if inclomplete tasks are shown",
|
|
22
|
+
control: {
|
|
23
|
+
type: "text"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
parameters: {
|
|
28
|
+
inspectComponent: e,
|
|
29
|
+
codeString: n
|
|
30
|
+
}
|
|
31
|
+
}, a = (t) => /* @__PURE__ */ o(e, { ...t }), s = {
|
|
32
|
+
timelineData: i,
|
|
33
|
+
showLabel: "Toon vervolgstappen",
|
|
34
|
+
hideLabel: "Verberg vervolgstappen"
|
|
35
|
+
}, l = a.bind({});
|
|
36
|
+
l.args = {
|
|
37
|
+
...s
|
|
38
|
+
};
|
|
39
|
+
export {
|
|
40
|
+
l as TimelineExample,
|
|
41
|
+
c as default
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=Timeline.stories.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Timeline.stories.js","sources":["../../../src/components/Timeline/Timeline.stories.tsx"],"sourcesContent":["import type { Meta, StoryFn } from '@storybook/react';\nimport type { TimelineProps, TimelineItemProps } from './Timeline';\n\nimport { Timeline } from './Timeline';\nimport { MOCK_TIMELINE_ITEM } from './mockTimelineItem';\n\nconst codeString = '<Timeline data=[] showLabel={string} hideLabel={string} />';\n\n// eslint-disable-next-line import/no-default-export\nexport default {\n title: 'Organisms/Timeline',\n component: Timeline,\n argTypes: {\n timelineData: {\n description: 'Data for the timeline',\n control: {\n type: 'object',\n },\n },\n showLabel: {\n description: 'Label of the button if inclomplete tasks are hidden',\n control: {\n type: 'text',\n },\n },\n hideLabel: {\n description: 'Label of the button if inclomplete tasks are shown',\n control: {\n type: 'text',\n },\n },\n },\n parameters: {\n inspectComponent: Timeline,\n codeString: codeString,\n },\n} as Meta<TimelineProps>;\n\nconst Template: StoryFn<TimelineProps> = (args) => <Timeline {...args} />;\n\nconst defaultArgs: Partial<TimelineProps> = {\n timelineData: MOCK_TIMELINE_ITEM as TimelineItemProps[],\n showLabel: 'Toon vervolgstappen',\n hideLabel: 'Verberg vervolgstappen',\n};\n\nexport const TimelineExample = Template.bind({});\nTimelineExample.args = {\n ...defaultArgs,\n};\n"],"names":["codeString","Timeline_stories","Timeline","Template","args","jsx","defaultArgs","MOCK_TIMELINE_ITEM","TimelineExample"],"mappings":";;;AAMA,MAAMA,IAAa,8DAGJC,IAAA;AAAA,EACb,OAAO;AAAA,EACP,WAAWC;AAAA,EACX,UAAU;AAAA,IACR,cAAc;AAAA,MACZ,aAAa;AAAA,MACb,SAAS;AAAA,QACP,MAAM;AAAA,MAAA;AAAA,IAEV;AAAA,IACA,WAAW;AAAA,MACT,aAAa;AAAA,MACb,SAAS;AAAA,QACP,MAAM;AAAA,MAAA;AAAA,IAEV;AAAA,IACA,WAAW;AAAA,MACT,aAAa;AAAA,MACb,SAAS;AAAA,QACP,MAAM;AAAA,MAAA;AAAA,IACR;AAAA,EAEJ;AAAA,EACA,YAAY;AAAA,IACV,kBAAkBA;AAAA,IAClB,YAAAF;AAAA,EAAA;AAEJ,GAEMG,IAAmC,CAACC,MAAU,gBAAAC,EAAAH,GAAA,EAAU,GAAGE,GAAM,GAEjEE,IAAsC;AAAA,EAC1C,cAAcC;AAAA,EACd,WAAW;AAAA,EACX,WAAW;AACb,GAEaC,IAAkBL,EAAS,KAAK,CAAE,CAAA;AAC/CK,EAAgB,OAAO;AAAA,EACrB,GAAGF;AACL;"}
|
|
File without changes
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { jsx as o } from "react/jsx-runtime";
|
|
2
|
+
import "../../index-Z7qwJmRM.js";
|
|
3
|
+
import { r as n, s as e, f as i } from "../../react.esm-BOUd0cvD.js";
|
|
4
|
+
import { MOCK_TIMELINE_ITEM as r } from "./mockTimelineItem.js";
|
|
5
|
+
import "react";
|
|
6
|
+
import "../Buttons/Button.js";
|
|
7
|
+
import "../Buttons/LinkButton.js";
|
|
8
|
+
import "@react-aria/button";
|
|
9
|
+
import "../Checkbox/Checkbox.js";
|
|
10
|
+
import "@react-aria/dialog";
|
|
11
|
+
import "@react-aria/focus";
|
|
12
|
+
import "@react-aria/overlays";
|
|
13
|
+
import "../OverlayCloseButton/OverlayCloseButton.js";
|
|
14
|
+
import "../GridRow/GridRow.js";
|
|
15
|
+
import "../IconButton/IconButton.js";
|
|
16
|
+
import "../Input/Input.js";
|
|
17
|
+
import "../InputField/InputField.js";
|
|
18
|
+
import "react-router";
|
|
19
|
+
import "../../TablePlugin-o1MveXq2.js";
|
|
20
|
+
import "../RteEditor/Providers/LanguageProvider.js";
|
|
21
|
+
import "../RteEditor/Plugins/LinkPlugin/LinkContextMenu/LinkContextMenu.js";
|
|
22
|
+
import "../RteEditor/hooks/components/Flyout.js";
|
|
23
|
+
import "../../index-B3c5pcHk.js";
|
|
24
|
+
import "../SelectListbox/SelectListbox.js";
|
|
25
|
+
import "../SelectListbox/SelectProvider.js";
|
|
26
|
+
import "../Sortable/components/SortableItem.js";
|
|
27
|
+
import "../../SortableProvider-Ck_XnBVq.js";
|
|
28
|
+
import { Timeline as p } from "./Timeline.js";
|
|
29
|
+
describe("should render", () => {
|
|
30
|
+
it("should render completed items", () => {
|
|
31
|
+
n(
|
|
32
|
+
/* @__PURE__ */ o(
|
|
33
|
+
p,
|
|
34
|
+
{
|
|
35
|
+
timelineData: r,
|
|
36
|
+
showLabel: "Toon vervolgstappen",
|
|
37
|
+
hideLabel: "Verberg vervolgstappen"
|
|
38
|
+
}
|
|
39
|
+
)
|
|
40
|
+
), expect(e.getByText("Concept")).toBeInTheDocument(), expect(e.getByText("Vakgegevens afgewezen")).toBeInTheDocument(), expect(e.getByText("Geverifieerd 1 van 3")).toBeInTheDocument(), expect(e.getByText("Concept ingediend")).toBeInTheDocument(), expect(e.getByText("Aangemaakt")).toBeInTheDocument();
|
|
41
|
+
}), it("should switch label when button is clicked", () => {
|
|
42
|
+
n(
|
|
43
|
+
/* @__PURE__ */ o(
|
|
44
|
+
p,
|
|
45
|
+
{
|
|
46
|
+
timelineData: r,
|
|
47
|
+
showLabel: "Toon vervolgstappen",
|
|
48
|
+
hideLabel: "Verberg vervolgstappen"
|
|
49
|
+
}
|
|
50
|
+
)
|
|
51
|
+
);
|
|
52
|
+
const t = e.getByRole("button", { name: "Toon vervolgstappen" });
|
|
53
|
+
expect(t).toBeInTheDocument(), i.click(t), expect(e.getByText("Verberg vervolgstappen")).toBeInTheDocument();
|
|
54
|
+
}), it("should show incomplete tasks if button is clicked", () => {
|
|
55
|
+
n(
|
|
56
|
+
/* @__PURE__ */ o(
|
|
57
|
+
p,
|
|
58
|
+
{
|
|
59
|
+
timelineData: r,
|
|
60
|
+
showLabel: "Toon vervolgstappen",
|
|
61
|
+
hideLabel: "Verberg vervolgstappen"
|
|
62
|
+
}
|
|
63
|
+
)
|
|
64
|
+
);
|
|
65
|
+
const t = e.getByRole("button", { name: "Toon vervolgstappen" });
|
|
66
|
+
expect(t).toBeInTheDocument(), i.click(t), expect(e.getByText("Verberg vervolgstappen")).toBeInTheDocument(), expect(e.getByText("Actief")).toBeInTheDocument();
|
|
67
|
+
}), it("should not show button if there are no incomplete tasks", () => {
|
|
68
|
+
n(
|
|
69
|
+
/* @__PURE__ */ o(
|
|
70
|
+
p,
|
|
71
|
+
{
|
|
72
|
+
timelineData: r.filter(({ completed: t }) => t),
|
|
73
|
+
showLabel: "Toon vervolgstappen",
|
|
74
|
+
hideLabel: "Verberg vervolgstappen"
|
|
75
|
+
}
|
|
76
|
+
)
|
|
77
|
+
), expect(e.queryByText("Toon vervolgstappen")).not.toBeInTheDocument();
|
|
78
|
+
});
|
|
79
|
+
});
|
|
80
|
+
//# sourceMappingURL=Timeline.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Timeline.test.js","sources":["../../../src/components/Timeline/Timeline.test.tsx"],"sourcesContent":["import '@testing-library/jest-dom';\nimport { fireEvent, render, screen } from '@testing-library/react';\n\nimport type { TimelineItemProps } from './Timeline';\n\nimport { MOCK_TIMELINE_ITEM } from './mockTimelineItem';\n\nimport { Timeline } from 'components';\n\ndescribe('should render', () => {\n it('should render completed items', () => {\n render(\n <Timeline\n timelineData={MOCK_TIMELINE_ITEM as TimelineItemProps[]}\n showLabel=\"Toon vervolgstappen\"\n hideLabel=\"Verberg vervolgstappen\"\n />\n );\n expect(screen.getByText('Concept')).toBeInTheDocument();\n expect(screen.getByText('Vakgegevens afgewezen')).toBeInTheDocument();\n expect(screen.getByText('Geverifieerd 1 van 3')).toBeInTheDocument();\n expect(screen.getByText('Concept ingediend')).toBeInTheDocument();\n expect(screen.getByText('Aangemaakt')).toBeInTheDocument();\n });\n\n it('should switch label when button is clicked', () => {\n render(\n <Timeline\n timelineData={MOCK_TIMELINE_ITEM as TimelineItemProps[]}\n showLabel=\"Toon vervolgstappen\"\n hideLabel=\"Verberg vervolgstappen\"\n />\n );\n const button = screen.getByRole('button', { name: 'Toon vervolgstappen' });\n expect(button).toBeInTheDocument();\n fireEvent.click(button);\n expect(screen.getByText('Verberg vervolgstappen')).toBeInTheDocument();\n });\n\n it('should show incomplete tasks if button is clicked', () => {\n render(\n <Timeline\n timelineData={MOCK_TIMELINE_ITEM as TimelineItemProps[]}\n showLabel=\"Toon vervolgstappen\"\n hideLabel=\"Verberg vervolgstappen\"\n />\n );\n const button = screen.getByRole('button', { name: 'Toon vervolgstappen' });\n expect(button).toBeInTheDocument();\n fireEvent.click(button);\n expect(screen.getByText('Verberg vervolgstappen')).toBeInTheDocument();\n expect(screen.getByText('Actief')).toBeInTheDocument();\n });\n\n it('should not show button if there are no incomplete tasks', () => {\n render(\n <Timeline\n timelineData={(MOCK_TIMELINE_ITEM as TimelineItemProps[]).filter(({ completed }) => completed)}\n showLabel=\"Toon vervolgstappen\"\n hideLabel=\"Verberg vervolgstappen\"\n />\n );\n expect(screen.queryByText('Toon vervolgstappen')).not.toBeInTheDocument();\n });\n});\n"],"names":["render","jsx","Timeline","MOCK_TIMELINE_ITEM","screen","button","fireEvent","completed"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AASA,SAAS,iBAAiB,MAAM;AAC9B,KAAG,iCAAiC,MAAM;AACxC,IAAAA;AAAA,MACE,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,cAAcC;AAAA,UACd,WAAU;AAAA,UACV,WAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IAEd,GACA,OAAOC,EAAO,UAAU,SAAS,CAAC,EAAE,kBAAkB,GACtD,OAAOA,EAAO,UAAU,uBAAuB,CAAC,EAAE,kBAAkB,GACpE,OAAOA,EAAO,UAAU,sBAAsB,CAAC,EAAE,kBAAkB,GACnE,OAAOA,EAAO,UAAU,mBAAmB,CAAC,EAAE,kBAAkB,GAChE,OAAOA,EAAO,UAAU,YAAY,CAAC,EAAE,kBAAkB;AAAA,EAAA,CAC1D,GAED,GAAG,8CAA8C,MAAM;AACrD,IAAAJ;AAAA,MACE,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,cAAcC;AAAA,UACd,WAAU;AAAA,UACV,WAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IAEd;AACA,UAAME,IAASD,EAAO,UAAU,UAAU,EAAE,MAAM,uBAAuB;AAClE,WAAAC,CAAM,EAAE,kBAAkB,GACjCC,EAAU,MAAMD,CAAM,GACtB,OAAOD,EAAO,UAAU,wBAAwB,CAAC,EAAE,kBAAkB;AAAA,EAAA,CACtE,GAED,GAAG,qDAAqD,MAAM;AAC5D,IAAAJ;AAAA,MACE,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,cAAcC;AAAA,UACd,WAAU;AAAA,UACV,WAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IAEd;AACA,UAAME,IAASD,EAAO,UAAU,UAAU,EAAE,MAAM,uBAAuB;AAClE,WAAAC,CAAM,EAAE,kBAAkB,GACjCC,EAAU,MAAMD,CAAM,GACtB,OAAOD,EAAO,UAAU,wBAAwB,CAAC,EAAE,kBAAkB,GACrE,OAAOA,EAAO,UAAU,QAAQ,CAAC,EAAE,kBAAkB;AAAA,EAAA,CACtD,GAED,GAAG,2DAA2D,MAAM;AAClE,IAAAJ;AAAA,MACE,gBAAAC;AAAA,QAACC;AAAA,QAAA;AAAA,UACC,cAAeC,EAA2C,OAAO,CAAC,EAAE,WAAAI,EAAA,MAAgBA,CAAS;AAAA,UAC7F,WAAU;AAAA,UACV,WAAU;AAAA,QAAA;AAAA,MAAA;AAAA,IAEd,GACA,OAAOH,EAAO,YAAY,qBAAqB,CAAC,EAAE,IAAI,kBAAkB;AAAA,EAAA,CACzE;AACH,CAAC;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TimelineItem.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Timeline';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export declare const MOCK_TIMELINE_ITEM: ({
|
|
2
|
+
title: string;
|
|
3
|
+
type: string;
|
|
4
|
+
reason: string;
|
|
5
|
+
subtitle: string;
|
|
6
|
+
tasks: {
|
|
7
|
+
title: string;
|
|
8
|
+
assignee: string;
|
|
9
|
+
}[];
|
|
10
|
+
completed: boolean;
|
|
11
|
+
} | {
|
|
12
|
+
title: string;
|
|
13
|
+
type: string;
|
|
14
|
+
tasks: {
|
|
15
|
+
title: string;
|
|
16
|
+
assignee: string;
|
|
17
|
+
}[];
|
|
18
|
+
completed: boolean;
|
|
19
|
+
reason?: undefined;
|
|
20
|
+
subtitle?: undefined;
|
|
21
|
+
} | {
|
|
22
|
+
title: string;
|
|
23
|
+
type: string;
|
|
24
|
+
reason: string;
|
|
25
|
+
subtitle: string;
|
|
26
|
+
tasks: {
|
|
27
|
+
title: string;
|
|
28
|
+
}[];
|
|
29
|
+
completed: boolean;
|
|
30
|
+
})[];
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
const e = [
|
|
2
|
+
{
|
|
3
|
+
title: "Actief",
|
|
4
|
+
type: "active",
|
|
5
|
+
completed: !1,
|
|
6
|
+
reason: "",
|
|
7
|
+
subtitle: "",
|
|
8
|
+
tasks: []
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
title: "Verificatie",
|
|
12
|
+
type: "submitted",
|
|
13
|
+
reason: "",
|
|
14
|
+
subtitle: "3 openstaande verificatietaken",
|
|
15
|
+
tasks: [
|
|
16
|
+
{
|
|
17
|
+
title: "Vakgegevens te verifiëren door",
|
|
18
|
+
assignee: "Opleidingsdirecteur"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
title: "Vakgegevens te verifiëren door",
|
|
22
|
+
assignee: "Opleidingscoördinator"
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
title: "Vakgegevens te verifiëren door",
|
|
26
|
+
assignee: "Studiegidsredacteur"
|
|
27
|
+
}
|
|
28
|
+
],
|
|
29
|
+
completed: !1
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
title: "Concept",
|
|
33
|
+
type: "draft",
|
|
34
|
+
reason: "",
|
|
35
|
+
subtitle: "",
|
|
36
|
+
tasks: [
|
|
37
|
+
{
|
|
38
|
+
title: "Afwijsreden: gegevens mbt de aanbiedingen kloppen nog niet.",
|
|
39
|
+
assignee: "Jane Doe als opleidingscoördinator, 14 mei 2024, 16:39"
|
|
40
|
+
}
|
|
41
|
+
],
|
|
42
|
+
completed: !0
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
title: "Vakgegevens afgewezen",
|
|
46
|
+
type: "rejected",
|
|
47
|
+
tasks: [
|
|
48
|
+
{
|
|
49
|
+
title: "Afwijsreden: gegevens mbt de aanbiedingen kloppen nog niet.",
|
|
50
|
+
assignee: "Jane Doe als opleidingscoördinator, 14 mei 2024, 16:39"
|
|
51
|
+
}
|
|
52
|
+
],
|
|
53
|
+
completed: !0
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
title: "Geverifieerd 1 van 3",
|
|
57
|
+
type: "verified",
|
|
58
|
+
reason: "ongeldig door afwijzing",
|
|
59
|
+
subtitle: "",
|
|
60
|
+
tasks: [
|
|
61
|
+
{
|
|
62
|
+
title: "Jan Doe als opleidingsdirecteur, 14 mei 2024, 16:38"
|
|
63
|
+
}
|
|
64
|
+
],
|
|
65
|
+
completed: !0
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
title: "Concept ingediend",
|
|
69
|
+
type: "submitted",
|
|
70
|
+
reason: "",
|
|
71
|
+
subtitle: "",
|
|
72
|
+
tasks: [
|
|
73
|
+
{
|
|
74
|
+
title: "John Doe als vakcoördinator, 14 mei 2024, 16:37"
|
|
75
|
+
}
|
|
76
|
+
],
|
|
77
|
+
completed: !0
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
title: "Aangemaakt",
|
|
81
|
+
type: "draft",
|
|
82
|
+
reason: "ongeldig door afwijzing",
|
|
83
|
+
subtitle: "",
|
|
84
|
+
tasks: [
|
|
85
|
+
{
|
|
86
|
+
title: "Glass jaarkopie, 14 mei 2024, 16:35"
|
|
87
|
+
}
|
|
88
|
+
],
|
|
89
|
+
completed: !0
|
|
90
|
+
}
|
|
91
|
+
];
|
|
92
|
+
export {
|
|
93
|
+
e as MOCK_TIMELINE_ITEM
|
|
94
|
+
};
|
|
95
|
+
//# sourceMappingURL=mockTimelineItem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mockTimelineItem.js","sources":["../../../src/components/Timeline/mockTimelineItem.ts"],"sourcesContent":["export const MOCK_TIMELINE_ITEM = [\n {\n title: 'Actief',\n type: 'active',\n completed: false,\n reason: '',\n subtitle: '',\n tasks: [],\n },\n {\n title: 'Verificatie',\n type: 'submitted',\n reason: '',\n subtitle: '3 openstaande verificatietaken',\n tasks: [\n {\n title: 'Vakgegevens te verifiëren door',\n assignee: 'Opleidingsdirecteur',\n },\n {\n title: 'Vakgegevens te verifiëren door',\n assignee: 'Opleidingscoördinator',\n },\n {\n title: 'Vakgegevens te verifiëren door',\n assignee: 'Studiegidsredacteur',\n },\n ],\n completed: false,\n },\n {\n title: 'Concept',\n type: 'draft',\n reason: '',\n subtitle: '',\n tasks: [\n {\n title: 'Afwijsreden: gegevens mbt de aanbiedingen kloppen nog niet.',\n assignee: 'Jane Doe als opleidingscoördinator, 14 mei 2024, 16:39',\n },\n ],\n completed: true,\n },\n {\n title: 'Vakgegevens afgewezen',\n type: 'rejected',\n tasks: [\n {\n title: 'Afwijsreden: gegevens mbt de aanbiedingen kloppen nog niet.',\n assignee: 'Jane Doe als opleidingscoördinator, 14 mei 2024, 16:39',\n },\n ],\n completed: true,\n },\n {\n title: 'Geverifieerd 1 van 3',\n type: 'verified',\n reason: 'ongeldig door afwijzing',\n subtitle: '',\n tasks: [\n {\n title: 'Jan Doe als opleidingsdirecteur, 14 mei 2024, 16:38',\n },\n ],\n completed: true,\n },\n {\n title: 'Concept ingediend',\n type: 'submitted',\n reason: '',\n subtitle: '',\n tasks: [\n {\n title: 'John Doe als vakcoördinator, 14 mei 2024, 16:37',\n },\n ],\n completed: true,\n },\n {\n title: 'Aangemaakt',\n type: 'draft',\n reason: 'ongeldig door afwijzing',\n subtitle: '',\n tasks: [\n {\n title: 'Glass jaarkopie, 14 mei 2024, 16:35',\n },\n ],\n completed: true,\n },\n];\n"],"names":["MOCK_TIMELINE_ITEM"],"mappings":"AAAO,MAAMA,IAAqB;AAAA,EAChC;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,IACN,WAAW;AAAA,IACX,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,OAAO,CAAA;AAAA,EACT;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,OAAO;AAAA,MACL;AAAA,QACE,OAAO;AAAA,QACP,UAAU;AAAA,MACZ;AAAA,MACA;AAAA,QACE,OAAO;AAAA,QACP,UAAU;AAAA,MACZ;AAAA,MACA;AAAA,QACE,OAAO;AAAA,QACP,UAAU;AAAA,MAAA;AAAA,IAEd;AAAA,IACA,WAAW;AAAA,EACb;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,OAAO;AAAA,MACL;AAAA,QACE,OAAO;AAAA,QACP,UAAU;AAAA,MAAA;AAAA,IAEd;AAAA,IACA,WAAW;AAAA,EACb;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,IACN,OAAO;AAAA,MACL;AAAA,QACE,OAAO;AAAA,QACP,UAAU;AAAA,MAAA;AAAA,IAEd;AAAA,IACA,WAAW;AAAA,EACb;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,OAAO;AAAA,MACL;AAAA,QACE,OAAO;AAAA,MAAA;AAAA,IAEX;AAAA,IACA,WAAW;AAAA,EACb;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,OAAO;AAAA,MACL;AAAA,QACE,OAAO;AAAA,MAAA;AAAA,IAEX;AAAA,IACA,WAAW;AAAA,EACb;AAAA,EACA;AAAA,IACE,OAAO;AAAA,IACP,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,OAAO;AAAA,MACL;AAAA,QACE,OAAO;AAAA,MAAA;AAAA,IAEX;AAAA,IACA,WAAW;AAAA,EAAA;AAEf;"}
|