@rws-aoa/react-library 9.2.0 → 9.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/dist/chunks/{FieldError.B4HiPjPm.js → FieldError.Uxuk6F4l.js} +2 -2
  2. package/dist/chunks/{FieldError.B4HiPjPm.js.map → FieldError.Uxuk6F4l.js.map} +1 -1
  3. package/dist/chunks/{createTheme.edEUUU41.js → createTheme.DcLTlIky.js} +2 -2
  4. package/dist/chunks/{createTheme.edEUUU41.js.map → createTheme.DcLTlIky.js.map} +1 -1
  5. package/dist/chunks/{lodash.CdkV4gpV.js → lodash.9n5aMaxx.js} +121 -119
  6. package/dist/chunks/{lodash.CdkV4gpV.js.map → lodash.9n5aMaxx.js.map} +1 -1
  7. package/dist/components-domain/ivon-project-planning/IvonProjectPlanning.d.ts.map +1 -1
  8. package/dist/components-domain/ivon-project-planning/IvonProjectPlanning.js +118 -61
  9. package/dist/components-domain/ivon-project-planning/IvonProjectPlanning.js.map +1 -1
  10. package/dist/components-domain/ivon-project-planning/_IvonDataGrid/IvonDataGrid.d.ts +3 -1
  11. package/dist/components-domain/ivon-project-planning/_IvonDataGrid/IvonDataGrid.d.ts.map +1 -1
  12. package/dist/components-domain/ivon-project-planning/_IvonDataGrid/IvonDataGrid.js +64 -58
  13. package/dist/components-domain/ivon-project-planning/_IvonDataGrid/IvonDataGrid.js.map +1 -1
  14. package/dist/components-domain/ivon-project-planning/_IvonPopup/IvonPopupRenderer.d.ts +10 -0
  15. package/dist/components-domain/ivon-project-planning/_IvonPopup/IvonPopupRenderer.d.ts.map +1 -0
  16. package/dist/components-domain/ivon-project-planning/_IvonPopup/IvonPopupRenderer.js +233 -0
  17. package/dist/components-domain/ivon-project-planning/_IvonPopup/IvonPopupRenderer.js.map +1 -0
  18. package/dist/components-domain/ivon-project-planning/_IvonProjectPlanningView/IvonProjectPlanningView.d.ts +5 -3
  19. package/dist/components-domain/ivon-project-planning/_IvonProjectPlanningView/IvonProjectPlanningView.d.ts.map +1 -1
  20. package/dist/components-domain/ivon-project-planning/_IvonProjectPlanningView/IvonProjectPlanningView.js +66 -63
  21. package/dist/components-domain/ivon-project-planning/_IvonProjectPlanningView/IvonProjectPlanningView.js.map +1 -1
  22. package/dist/components-domain/ivon-project-planning/_IvonSchematicView/IvonSchematicView.d.ts +2 -1
  23. package/dist/components-domain/ivon-project-planning/_IvonSchematicView/IvonSchematicView.d.ts.map +1 -1
  24. package/dist/components-domain/ivon-project-planning/_IvonSchematicView/IvonSchematicView.js +39 -38
  25. package/dist/components-domain/ivon-project-planning/_IvonSchematicView/IvonSchematicView.js.map +1 -1
  26. package/dist/components-domain/ivon-project-planning/_backend/backend.d.ts +2 -0
  27. package/dist/components-domain/ivon-project-planning/_backend/backend.d.ts.map +1 -1
  28. package/dist/components-domain/ivon-project-planning/_backend/backend.js +5 -1
  29. package/dist/components-domain/ivon-project-planning/_backend/backend.js.map +1 -1
  30. package/dist/components-domain/ivon-project-planning/_dummy-data/ivon3-dynamic-popup.json.d.ts +143 -0
  31. package/dist/components-domain/ivon-project-planning/_dummy-data/ivon3-test-data.json.d.ts +100 -19
  32. package/dist/components-domain/ivon-project-planning/_helpers/IvonDataBridge.d.ts +3 -3
  33. package/dist/components-domain/ivon-project-planning/_helpers/IvonDataBridge.d.ts.map +1 -1
  34. package/dist/components-domain/ivon-project-planning/_helpers/IvonDataBridge.js +28 -12
  35. package/dist/components-domain/ivon-project-planning/_helpers/IvonDataBridge.js.map +1 -1
  36. package/dist/components-domain/ivon-project-planning/_helpers/IvonPopupDataBridge.d.ts +7 -0
  37. package/dist/components-domain/ivon-project-planning/_helpers/IvonPopupDataBridge.d.ts.map +1 -0
  38. package/dist/components-domain/ivon-project-planning/_helpers/IvonPopupDataBridge.js +16 -0
  39. package/dist/components-domain/ivon-project-planning/_helpers/IvonPopupDataBridge.js.map +1 -0
  40. package/dist/components-domain/ivon-project-planning/_helpers/IvonUtility.d.ts +1 -0
  41. package/dist/components-domain/ivon-project-planning/_helpers/IvonUtility.d.ts.map +1 -1
  42. package/dist/components-domain/ivon-project-planning/_helpers/IvonUtility.js +9 -6
  43. package/dist/components-domain/ivon-project-planning/_helpers/IvonUtility.js.map +1 -1
  44. package/dist/components-domain/ivon-project-planning/_types/ivon-types.d.ts +16 -1
  45. package/dist/components-domain/ivon-project-planning/_types/ivon-types.d.ts.map +1 -1
  46. package/dist/components-domain/ivon-project-planning/_types/popup-types.d.ts +28 -0
  47. package/dist/components-domain/ivon-project-planning/_types/popup-types.d.ts.map +1 -0
  48. package/dist/components-domain/ivon-project-planning/_types/popup-types.js +2 -0
  49. package/dist/components-domain/ivon-project-planning/_types/popup-types.js.map +1 -0
  50. package/dist/components-generic/atoms/_menu/menu-item/MenuItem.js +1 -1
  51. package/dist/components-generic/atoms/_menu/user-menu/UserMenu.js +1 -1
  52. package/dist/components-generic/atoms/button/Button.js +1 -1
  53. package/dist/components-generic/atoms/icon-button/IconButton.js +1 -1
  54. package/dist/components-generic/atoms/input/Input.js +1 -1
  55. package/dist/components-generic/atoms/list/List.js +1 -1
  56. package/dist/components-generic/atoms/no-permission/PermissionWrapper.js +1 -1
  57. package/dist/components-generic/atoms/notification/Notification.js +1 -1
  58. package/dist/components-generic/atoms/progress-bar/Progressbar.d.ts +21 -0
  59. package/dist/components-generic/atoms/progress-bar/Progressbar.d.ts.map +1 -0
  60. package/dist/components-generic/atoms/progress-bar/Progressbar.js +44 -0
  61. package/dist/components-generic/atoms/progress-bar/Progressbar.js.map +1 -0
  62. package/dist/components-generic/atoms/section-header/SectionHeader.js +1 -1
  63. package/dist/components-generic/atoms/selection-buttons/checkbox/Checkbox.js +1 -1
  64. package/dist/components-generic/atoms/selection-buttons/radio-button/RadioButton.js +1 -1
  65. package/dist/components-generic/atoms/table/Table.d.ts +5 -5
  66. package/dist/components-generic/atoms/table/Table.d.ts.map +1 -1
  67. package/dist/components-generic/atoms/table/Table.js +1 -1
  68. package/dist/components-generic/atoms/table/Table.js.map +1 -1
  69. package/dist/components-generic/atoms/table/_QuickSearchToolbar.js +1 -1
  70. package/dist/components-generic/atoms/tooltip/Tooltip.js +1 -1
  71. package/dist/components-generic/molecules/field-error/FieldError.js +1 -1
  72. package/dist/components-generic/molecules/form-error/FormError.js +1 -1
  73. package/dist/components-generic/molecules/form-modal/FormModal.js +2 -2
  74. package/dist/components-generic/molecules/modal/Modal.js +1 -1
  75. package/dist/components-generic/molecules/navigation-bar/NavigationBar.js +1 -1
  76. package/dist/components-generic/molecules/no-label-number-field/NoLabelNumberField.js +2 -2
  77. package/dist/components-generic/molecules/upload-button/UploadButton.js +1 -1
  78. package/dist/contexts/TanstackFormContext.js +1 -1
  79. package/dist/index.d.ts +1 -0
  80. package/dist/index.d.ts.map +1 -1
  81. package/dist/index.js +33 -31
  82. package/dist/index.js.map +1 -1
  83. package/package.json +5 -1
  84. package/dist/components-domain/ivon-project-planning/_IvonPopup/IvonDeklaagPopup.d.ts +0 -9
  85. package/dist/components-domain/ivon-project-planning/_IvonPopup/IvonDeklaagPopup.d.ts.map +0 -1
  86. package/dist/components-domain/ivon-project-planning/_IvonPopup/IvonDeklaagPopup.js +0 -231
  87. package/dist/components-domain/ivon-project-planning/_IvonPopup/IvonDeklaagPopup.js.map +0 -1
@@ -0,0 +1,233 @@
1
+ import { jsx as s, jsxs as D } from "react/jsx-runtime";
2
+ import { c as H } from "../../../chunks/compiler-runtime.BNHg76kC.js";
3
+ import { Typography as I, Tab as J, TextField as E, DialogActions as K, Tabs as L } from "@mui/material";
4
+ import { a as V } from "../../../chunks/lodash.9n5aMaxx.js";
5
+ import * as W from "react";
6
+ import { useState as G } from "react";
7
+ import { AoaButton as q } from "../../../components-generic/atoms/button/Button.js";
8
+ import { AoaModal as Q } from "../../../components-generic/molecules/modal/Modal.js";
9
+ import { i as X, d as Y, c as Z, s as ee, a as te, b as oe, P as d } from "../../../chunks/createTheme.DcLTlIky.js";
10
+ import { ThemeContext as ne } from "@emotion/react";
11
+ const re = (t) => {
12
+ const e = {
13
+ systemProps: {},
14
+ otherProps: {}
15
+ }, n = t?.theme?.unstable_sxConfig ?? Y;
16
+ return Object.keys(t).forEach((o) => {
17
+ n[o] ? e.systemProps[o] = t[o] : e.otherProps[o] = t[o];
18
+ }), e;
19
+ };
20
+ function se(t) {
21
+ const {
22
+ sx: e,
23
+ ...n
24
+ } = t, {
25
+ systemProps: o,
26
+ otherProps: c
27
+ } = re(n);
28
+ let u;
29
+ return Array.isArray(e) ? u = [o, ...e] : typeof e == "function" ? u = (...p) => {
30
+ const f = e(...p);
31
+ return X(f) ? {
32
+ ...o,
33
+ ...f
34
+ } : o;
35
+ } : u = {
36
+ ...o,
37
+ ...e
38
+ }, {
39
+ ...c,
40
+ sx: u
41
+ };
42
+ }
43
+ function ae(t) {
44
+ return Object.keys(t).length === 0;
45
+ }
46
+ function le(t = null) {
47
+ const e = W.useContext(ne);
48
+ return !e || ae(e) ? t : e;
49
+ }
50
+ const ce = Z();
51
+ function ie(t = ce) {
52
+ return le(t);
53
+ }
54
+ const U = (t) => t, ue = () => {
55
+ let t = U;
56
+ return {
57
+ configure(e) {
58
+ t = e;
59
+ },
60
+ generate(e) {
61
+ return t(e);
62
+ },
63
+ reset() {
64
+ t = U;
65
+ }
66
+ };
67
+ }, z = ue();
68
+ function me(t = {}) {
69
+ const {
70
+ themeId: e,
71
+ defaultTheme: n,
72
+ defaultClassName: o = "MuiBox-root",
73
+ generateClassName: c
74
+ } = t, u = ee("div", {
75
+ shouldForwardProp: (f) => f !== "theme" && f !== "sx" && f !== "as"
76
+ })(te);
77
+ return /* @__PURE__ */ W.forwardRef(function(h, F) {
78
+ const m = ie(n), {
79
+ className: M,
80
+ component: y = "div",
81
+ ...i
82
+ } = se(h);
83
+ return /* @__PURE__ */ s(u, {
84
+ as: y,
85
+ ref: F,
86
+ className: oe(M, c ? c(o) : o),
87
+ theme: e && m[e] || m,
88
+ ...i
89
+ });
90
+ });
91
+ }
92
+ const de = {
93
+ active: "active",
94
+ checked: "checked",
95
+ completed: "completed",
96
+ disabled: "disabled",
97
+ error: "error",
98
+ expanded: "expanded",
99
+ focused: "focused",
100
+ focusVisible: "focusVisible",
101
+ open: "open",
102
+ readOnly: "readOnly",
103
+ required: "required",
104
+ selected: "selected"
105
+ };
106
+ function fe(t, e, n = "Mui") {
107
+ const o = de[e];
108
+ return o ? `${n}-${o}` : `${z.generate(t)}-${e}`;
109
+ }
110
+ function he(t, e, n = "Mui") {
111
+ const o = {};
112
+ return e.forEach((c) => {
113
+ o[c] = fe(t, c, n);
114
+ }), o;
115
+ }
116
+ const pe = he("MuiBox", ["root"]), P = me({
117
+ defaultClassName: pe.root,
118
+ generateClassName: z.generate
119
+ });
120
+ process.env.NODE_ENV !== "production" && (P.propTypes = {
121
+ // ┌────────────────────────────── Warning ──────────────────────────────┐
122
+ // │ These PropTypes are generated from the TypeScript type definitions. │
123
+ // │ To update them, edit the d.ts file and run `pnpm proptypes`. │
124
+ // └─────────────────────────────────────────────────────────────────────┘
125
+ /**
126
+ * @ignore
127
+ */
128
+ children: d.node,
129
+ /**
130
+ * The component used for the root node.
131
+ * Either a string to use a HTML element or a component.
132
+ */
133
+ component: d.elementType,
134
+ /**
135
+ * The system prop that allows defining system overrides as well as additional CSS styles.
136
+ */
137
+ sx: d.oneOfType([d.arrayOf(d.oneOfType([d.func, d.object, d.bool])), d.func, d.object])
138
+ });
139
+ function Oe(t) {
140
+ const e = H.c(36), {
141
+ template: n,
142
+ item: o,
143
+ onClose: c,
144
+ onSave: u
145
+ } = t, [p, f] = G(!0), [h, F] = G(0), [m, M] = G(o);
146
+ let y;
147
+ e[0] !== c ? (y = () => {
148
+ f(!1), c();
149
+ }, e[0] = c, e[1] = y) : y = e[1];
150
+ const i = y;
151
+ let S;
152
+ e[2] !== m || e[3] !== i || e[4] !== u ? (S = () => {
153
+ u(m), i();
154
+ }, e[2] = m, e[3] = i, e[4] = u, e[5] = S) : S = e[5];
155
+ const $ = S;
156
+ let O;
157
+ e[6] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (O = (a, l) => {
158
+ M((r) => V.set({
159
+ ...r
160
+ }, a, l));
161
+ }, e[6] = O) : O = e[6];
162
+ const j = O;
163
+ let B;
164
+ e[7] !== m ? (B = (a) => {
165
+ const l = V.get(m, a.key);
166
+ if (a.editable)
167
+ switch (a.type) {
168
+ case "numberInput":
169
+ return /* @__PURE__ */ s(E, { onChange: (r) => j(a.key, r.target.value), type: "number", value: l ?? "" });
170
+ case "textInput":
171
+ return /* @__PURE__ */ s(E, { onChange: (r) => j(a.key, r.target.value), value: l ?? "" });
172
+ case void 0:
173
+ return /* @__PURE__ */ s(E, { onChange: (r) => j(a.key, r.target.value), value: l ?? "" });
174
+ default:
175
+ return /* @__PURE__ */ s(E, { onChange: (r) => j(a.key, r.target.value), value: l ?? "" });
176
+ }
177
+ return /* @__PURE__ */ s(I, { children: String(l ?? "") });
178
+ }, e[7] = m, e[8] = B) : B = e[8];
179
+ const R = B;
180
+ let b;
181
+ e[9] !== i ? (b = /* @__PURE__ */ s(q, { onClick: i, type: "secondary", children: "Annuleren" }), e[9] = i, e[10] = b) : b = e[10];
182
+ let x;
183
+ e[11] !== $ ? (x = /* @__PURE__ */ s(q, { onClick: $, type: "primary", children: "Opslaan" }), e[11] = $, e[12] = x) : x = e[12];
184
+ let g;
185
+ e[13] !== b || e[14] !== x ? (g = /* @__PURE__ */ D(K, { children: [
186
+ b,
187
+ x
188
+ ] }), e[13] = b, e[14] = x, e[15] = g) : g = e[15];
189
+ let N, A;
190
+ e[16] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (N = (a, l) => F(l), A = {
191
+ borderBottom: 1,
192
+ borderColor: "divider"
193
+ }, e[16] = N, e[17] = A) : (N = e[16], A = e[17]);
194
+ let C;
195
+ e[18] !== n?.tabs ? (C = n?.tabs.map(ye), e[18] = n?.tabs, e[19] = C) : C = e[19];
196
+ let v;
197
+ e[20] !== h || e[21] !== C ? (v = /* @__PURE__ */ s(L, { onChange: N, sx: A, value: h, children: C }), e[20] = h, e[21] = C, e[22] = v) : v = e[22];
198
+ let T;
199
+ e[23] !== h || e[24] !== R || e[25] !== n?.tabs ? (T = n?.tabs.map((a, l) => l === h ? /* @__PURE__ */ s(P, { sx: {
200
+ backgroundColor: "var(--color-rijks-grey-1)",
201
+ borderTop: "none",
202
+ p: 2
203
+ }, children: /* @__PURE__ */ s(P, { sx: {
204
+ display: "flex",
205
+ flexDirection: "column",
206
+ gap: "1rem"
207
+ }, children: a.fields.map((r) => /* @__PURE__ */ D(P, { children: [
208
+ /* @__PURE__ */ D(I, { fontWeight: "bold", children: [
209
+ r.label,
210
+ ":"
211
+ ] }),
212
+ R(r)
213
+ ] }, r.key)) }) }, l) : null), e[23] = h, e[24] = R, e[25] = n?.tabs, e[26] = T) : T = e[26];
214
+ let k;
215
+ e[27] !== v || e[28] !== T ? (k = /* @__PURE__ */ D(P, { children: [
216
+ v,
217
+ T
218
+ ] }), e[27] = v, e[28] = T, e[29] = k) : k = e[29];
219
+ const w = n?.title;
220
+ let _;
221
+ return e[30] !== i || e[31] !== p || e[32] !== k || e[33] !== w || e[34] !== g ? (_ = /* @__PURE__ */ s(Q, { closeAction: i, dialogActions: g, dialogContent: k, open: p, topic: w }), e[30] = i, e[31] = p, e[32] = k, e[33] = w, e[34] = g, e[35] = _) : _ = e[35], _;
222
+ }
223
+ function ye(t, e) {
224
+ return /* @__PURE__ */ s(J, { label: t.label, sx: {
225
+ "&.Mui-selected": {
226
+ backgroundColor: "var(--color-rijks-grey-1)"
227
+ }
228
+ } }, e);
229
+ }
230
+ export {
231
+ Oe as PopupRenderer
232
+ };
233
+ //# sourceMappingURL=IvonPopupRenderer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IvonPopupRenderer.js","sources":["../../../../../../node_modules/@mui/system/esm/styleFunctionSx/extendSxProp.js","../../../../../../node_modules/@mui/system/esm/useThemeWithoutDefault/useThemeWithoutDefault.js","../../../../../../node_modules/@mui/system/esm/useTheme/useTheme.js","../../../../../../node_modules/@mui/system/node_modules/@mui/utils/esm/ClassNameGenerator/ClassNameGenerator.js","../../../../../../node_modules/@mui/system/esm/createBox/createBox.js","../../../../../../node_modules/@mui/system/node_modules/@mui/utils/esm/generateUtilityClass/generateUtilityClass.js","../../../../../../node_modules/@mui/system/node_modules/@mui/utils/esm/generateUtilityClasses/generateUtilityClasses.js","../../../../../../node_modules/@mui/system/esm/Box/boxClasses.js","../../../../../../node_modules/@mui/system/esm/Box/Box.js","../../../../src/components-domain/ivon-project-planning/_IvonPopup/IvonPopupRenderer.tsx"],"sourcesContent":["import { isPlainObject } from '@mui/utils/deepmerge';\nimport defaultSxConfig from \"./defaultSxConfig.js\";\nconst splitProps = props => {\n const result = {\n systemProps: {},\n otherProps: {}\n };\n const config = props?.theme?.unstable_sxConfig ?? defaultSxConfig;\n Object.keys(props).forEach(prop => {\n if (config[prop]) {\n result.systemProps[prop] = props[prop];\n } else {\n result.otherProps[prop] = props[prop];\n }\n });\n return result;\n};\nexport default function extendSxProp(props) {\n const {\n sx: inSx,\n ...other\n } = props;\n const {\n systemProps,\n otherProps\n } = splitProps(other);\n let finalSx;\n if (Array.isArray(inSx)) {\n finalSx = [systemProps, ...inSx];\n } else if (typeof inSx === 'function') {\n finalSx = (...args) => {\n const result = inSx(...args);\n if (!isPlainObject(result)) {\n return systemProps;\n }\n return {\n ...systemProps,\n ...result\n };\n };\n } else {\n finalSx = {\n ...systemProps,\n ...inSx\n };\n }\n return {\n ...otherProps,\n sx: finalSx\n };\n}","'use client';\n\nimport * as React from 'react';\nimport { ThemeContext } from '@mui/styled-engine';\nfunction isObjectEmpty(obj) {\n return Object.keys(obj).length === 0;\n}\nfunction useTheme(defaultTheme = null) {\n const contextTheme = React.useContext(ThemeContext);\n return !contextTheme || isObjectEmpty(contextTheme) ? defaultTheme : contextTheme;\n}\nexport default useTheme;","'use client';\n\nimport createTheme from \"../createTheme/index.js\";\nimport useThemeWithoutDefault from \"../useThemeWithoutDefault/index.js\";\nexport const systemDefaultTheme = createTheme();\nfunction useTheme(defaultTheme = systemDefaultTheme) {\n return useThemeWithoutDefault(defaultTheme);\n}\nexport default useTheme;","const defaultGenerator = componentName => componentName;\nconst createClassNameGenerator = () => {\n let generate = defaultGenerator;\n return {\n configure(generator) {\n generate = generator;\n },\n generate(componentName) {\n return generate(componentName);\n },\n reset() {\n generate = defaultGenerator;\n }\n };\n};\nconst ClassNameGenerator = createClassNameGenerator();\nexport default ClassNameGenerator;","'use client';\n\nimport * as React from 'react';\nimport clsx from 'clsx';\nimport styled from '@mui/styled-engine';\nimport styleFunctionSx, { extendSxProp } from \"../styleFunctionSx/index.js\";\nimport useTheme from \"../useTheme/index.js\";\nimport { jsx as _jsx } from \"react/jsx-runtime\";\nexport default function createBox(options = {}) {\n const {\n themeId,\n defaultTheme,\n defaultClassName = 'MuiBox-root',\n generateClassName\n } = options;\n const BoxRoot = styled('div', {\n shouldForwardProp: prop => prop !== 'theme' && prop !== 'sx' && prop !== 'as'\n })(styleFunctionSx);\n const Box = /*#__PURE__*/React.forwardRef(function Box(inProps, ref) {\n const theme = useTheme(defaultTheme);\n const {\n className,\n component = 'div',\n ...other\n } = extendSxProp(inProps);\n return /*#__PURE__*/_jsx(BoxRoot, {\n as: component,\n ref: ref,\n className: clsx(className, generateClassName ? generateClassName(defaultClassName) : defaultClassName),\n theme: themeId ? theme[themeId] || theme : theme,\n ...other\n });\n });\n return Box;\n}","import ClassNameGenerator from \"../ClassNameGenerator/index.js\";\nexport const globalStateClasses = {\n active: 'active',\n checked: 'checked',\n completed: 'completed',\n disabled: 'disabled',\n error: 'error',\n expanded: 'expanded',\n focused: 'focused',\n focusVisible: 'focusVisible',\n open: 'open',\n readOnly: 'readOnly',\n required: 'required',\n selected: 'selected'\n};\nexport default function generateUtilityClass(componentName, slot, globalStatePrefix = 'Mui') {\n const globalStateClass = globalStateClasses[slot];\n return globalStateClass ? `${globalStatePrefix}-${globalStateClass}` : `${ClassNameGenerator.generate(componentName)}-${slot}`;\n}\nexport function isGlobalState(slot) {\n return globalStateClasses[slot] !== undefined;\n}","import generateUtilityClass from \"../generateUtilityClass/index.js\";\nexport default function generateUtilityClasses(componentName, slots, globalStatePrefix = 'Mui') {\n const result = {};\n slots.forEach(slot => {\n result[slot] = generateUtilityClass(componentName, slot, globalStatePrefix);\n });\n return result;\n}","import generateUtilityClasses from '@mui/utils/generateUtilityClasses';\nconst boxClasses = generateUtilityClasses('MuiBox', ['root']);\nexport default boxClasses;","'use client';\n\nimport PropTypes from 'prop-types';\nimport ClassNameGenerator from '@mui/utils/ClassNameGenerator';\nimport createBox from \"../createBox/index.js\";\nimport boxClasses from \"./boxClasses.js\";\nconst Box = createBox({\n defaultClassName: boxClasses.root,\n generateClassName: ClassNameGenerator.generate\n});\nprocess.env.NODE_ENV !== \"production\" ? Box.propTypes /* remove-proptypes */ = {\n // ┌────────────────────────────── Warning ──────────────────────────────┐\n // │ These PropTypes are generated from the TypeScript type definitions. │\n // │ To update them, edit the d.ts file and run `pnpm proptypes`. │\n // └─────────────────────────────────────────────────────────────────────┘\n /**\n * @ignore\n */\n children: PropTypes.node,\n /**\n * The component used for the root node.\n * Either a string to use a HTML element or a component.\n */\n component: PropTypes.elementType,\n /**\n * The system prop that allows defining system overrides as well as additional CSS styles.\n */\n sx: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.func, PropTypes.object, PropTypes.bool])), PropTypes.func, PropTypes.object])\n} : void 0;\nexport default Box;","import { DialogActions, Tab, Tabs, TextField, Typography } from '@mui/material';\nimport { Box } from '@mui/system';\nimport lodash from 'lodash';\nimport { useState } from 'react';\nimport { AoaButton } from '../../../components-generic/atoms/button/Button';\nimport { AoaModal } from '../../../components-generic/molecules/modal/Modal';\nimport type { PopupTemplate, PopupField } from '../_types/popup-types';\n\ninterface PopupRendererProps {\n readonly item: Record<string, any>;\n onClose(this: void): void;\n onSave(this: void, updatedItem: Record<string, any>): void;\n readonly template: PopupTemplate;\n}\n\nexport function PopupRenderer({ template, item, onClose, onSave }: PopupRendererProps) {\n const [open, setOpen] = useState(true);\n const [activeTab, setActiveTab] = useState(0);\n const [formData, setFormData] = useState<Record<string, any>>(item);\n\n const handleClose = () => {\n setOpen(false);\n onClose();\n };\n\n const handleSave = () => {\n onSave(formData);\n handleClose();\n };\n\n const handleFieldChange = (key: string, value: any) => {\n setFormData((prev) => lodash.set({ ...prev }, key, value));\n };\n\n const renderField = (field: PopupField) => {\n const value = lodash.get(formData, field.key);\n if (field.editable) {\n switch (field.type) {\n case 'numberInput':\n return <TextField onChange={(newValue) => handleFieldChange(field.key, newValue.target.value)} type='number' value={value ?? ''} />;\n case 'textInput':\n return <TextField onChange={(newValue) => handleFieldChange(field.key, newValue.target.value)} value={value ?? ''} />;\n case undefined:\n return <TextField onChange={(newValue) => handleFieldChange(field.key, newValue.target.value)} value={value ?? ''} />;\n default:\n return <TextField onChange={(newValue) => handleFieldChange(field.key, newValue.target.value)} value={value ?? ''} />;\n }\n }\n\n return <Typography>{String(value ?? '')}</Typography>;\n };\n\n return (\n <AoaModal\n closeAction={handleClose}\n dialogActions={\n <DialogActions>\n <AoaButton onClick={handleClose} type='secondary'>\n Annuleren\n </AoaButton>\n <AoaButton onClick={handleSave} type='primary'>\n Opslaan\n </AoaButton>\n </DialogActions>\n }\n dialogContent={\n <Box>\n <Tabs\n onChange={(__, value) => setActiveTab(value)}\n sx={{\n borderBottom: 1,\n borderColor: 'divider'\n }}\n value={activeTab}\n >\n {template?.tabs.map((tab, item) => (\n <Tab\n key={item}\n label={tab.label}\n sx={{\n '&.Mui-selected': {\n backgroundColor: 'var(--color-rijks-grey-1)'\n }\n }}\n />\n ))}\n </Tabs>\n {template?.tabs.map((tab, item) =>\n item === activeTab ? (\n <Box\n key={item}\n sx={{\n backgroundColor: `var(--color-rijks-grey-1)`,\n borderTop: 'none',\n p: 2\n }}\n >\n <Box sx={{ display: 'flex', flexDirection: 'column', gap: '1rem' }}>\n {tab.fields.map((field) => (\n <Box key={field.key}>\n <Typography fontWeight='bold'>{field.label}:</Typography>\n {renderField(field)}\n </Box>\n ))}\n </Box>\n </Box>\n ) : null\n )}\n </Box>\n }\n open={open}\n topic={template?.title}\n />\n );\n}\n"],"names":["splitProps","props","result","config","defaultSxConfig","prop","extendSxProp","inSx","other","systemProps","otherProps","finalSx","args","isPlainObject","isObjectEmpty","obj","useTheme","defaultTheme","contextTheme","React","ThemeContext","systemDefaultTheme","createTheme","useThemeWithoutDefault","defaultGenerator","componentName","createClassNameGenerator","generate","generator","ClassNameGenerator","createBox","options","themeId","defaultClassName","generateClassName","BoxRoot","styled","styleFunctionSx","inProps","ref","theme","className","component","_jsx","clsx","globalStateClasses","generateUtilityClass","slot","globalStatePrefix","globalStateClass","generateUtilityClasses","slots","boxClasses","Box","PropTypes","PopupRenderer","t0","$","_c","template","item","onClose","onSave","open","setOpen","useState","activeTab","setActiveTab","formData","setFormData","t1","handleClose","t2","handleSave","t3","Symbol","for","key","value","prev","lodash","set","handleFieldChange","t4","field","value_0","get","editable","type","jsx","TextField","newValue_2","newValue","target","newValue_1","undefined","newValue_0","Typography","String","renderField","t5","AoaButton","t6","t7","DialogActions","t8","t9","__","value_1","borderBottom","borderColor","t10","tabs","map","_temp","t11","Tabs","t12","tab_0","item_1","backgroundColor","borderTop","p","display","flexDirection","gap","tab","fields","field_0","jsxs","label","t13","t14","title","t15","AoaModal","item_0","Tab"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8]}
@@ -1,11 +1,13 @@
1
- import { IvonDataGridBlockData, IvonDataGridCellData } from '../_IvonDataGrid/IvonDataGrid';
1
+ import { IvonDataGridCellData } from '../_IvonDataGrid/IvonDataGrid';
2
2
  import { IvonDataBridge } from '../_helpers/IvonDataBridge';
3
+ import { LaneSegmentPlan } from '../_types/ivon-types';
3
4
  interface ProjectPlanningViewProps {
4
5
  cellClickHandler(this: void, row: number, column: number, data?: IvonDataGridCellData): void;
5
6
  readonly dataBridge: IvonDataBridge;
6
- itemClickHandler(this: void, row: number, column: number, data: IvonDataGridBlockData): void;
7
+ itemClickHandler(this: void, data: LaneSegmentPlan | undefined): void;
8
+ readonly laneSerialNumber: number | undefined;
7
9
  readonly maxHeight: number;
8
10
  }
9
- export declare function ProjectPlanningView({ maxHeight, dataBridge, cellClickHandler, itemClickHandler }: ProjectPlanningViewProps): import("react/jsx-runtime").JSX.Element;
11
+ export declare function ProjectPlanningView({ maxHeight, dataBridge, laneSerialNumber, cellClickHandler, itemClickHandler }: ProjectPlanningViewProps): import("react/jsx-runtime").JSX.Element;
10
12
  export {};
11
13
  //# sourceMappingURL=IvonProjectPlanningView.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IvonProjectPlanningView.d.ts","sourceRoot":"","sources":["../../../../src/components-domain/ivon-project-planning/_IvonProjectPlanningView/IvonProjectPlanningView.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACjG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,UAAU,wBAAwB;IAChC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC7F,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,qBAAqB,GAAG,IAAI,CAAC;IAC7F,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,EAAE,wBAAwB,2CA8C1H"}
1
+ {"version":3,"file":"IvonProjectPlanningView.d.ts","sourceRoot":"","sources":["../../../../src/components-domain/ivon-project-planning/_IvonProjectPlanningView/IvonProjectPlanningView.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAyB,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACjG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,UAAU,wBAAwB;IAChC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC7F,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,GAAG,SAAS,GAAG,IAAI,CAAC;IACtE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AASD,wBAAgB,mBAAmB,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,EAAE,wBAAwB,2CAoE5I"}
@@ -1,70 +1,73 @@
1
- import { jsx as U } from "react/jsx-runtime";
2
- import { c as j } from "../../../chunks/compiler-runtime.BNHg76kC.js";
3
- import { IvonDataGrid as M } from "../_IvonDataGrid/IvonDataGrid.js";
4
- import { ivonUtility as v } from "../_helpers/IvonUtility.js";
5
- function E($) {
6
- const e = j.c(35), {
7
- maxHeight: w,
8
- dataBridge: t,
9
- cellClickHandler: b,
10
- itemClickHandler: C
11
- } = $;
12
- let g;
13
- e[0] !== t ? (g = () => {
14
- const l = [];
15
- for (const [o, i] of t.getLaneSegments().entries())
16
- for (const B of i.plans)
17
- l.push({
18
- startPosition: Math.abs(v.convertUnit(i.kmFrom - t.getTrackStart())),
19
- endPosition: Math.abs(v.convertUnit(i.kmTo - t.getTrackStart())),
20
- row: t.getYears().indexOf(B.year),
21
- value: `${B.description}`,
22
- color: B.color
23
- });
24
- return l;
25
- }, e[0] = t, e[1] = g) : g = e[1];
26
- const T = g;
1
+ import { jsx as I } from "react/jsx-runtime";
2
+ import { c as Y } from "../../../chunks/compiler-runtime.BNHg76kC.js";
3
+ import { IvonDataGrid as E } from "../_IvonDataGrid/IvonDataGrid.js";
4
+ import { ivonUtility as y } from "../_helpers/IvonUtility.js";
5
+ function W(N) {
6
+ const t = Y.c(41), {
7
+ maxHeight: C,
8
+ dataBridge: e,
9
+ laneSerialNumber: H,
10
+ cellClickHandler: k,
11
+ itemClickHandler: _
12
+ } = N;
13
+ let r, s, c, P, a, d, g, n;
14
+ if (t[0] !== k || t[1] !== e || t[2] !== _ || t[3] !== H) {
15
+ const b = [], M = (i, u, l) => b.find((o) => o.startPosition === i && o.endPosition === u && o.row === l)?.plan, B = () => {
16
+ const i = [];
17
+ for (const [u, l] of e.getLaneSegments().filter((o) => o.laneSerialNumber === H).entries())
18
+ for (const o of l.plans) {
19
+ const $ = Math.abs(y.convertUnit(l.kmFrom - e.getTrackStart())), j = Math.abs(y.convertUnit(l.kmTo - e.getTrackStart())), D = e.getYears().indexOf(o.year);
20
+ i.push({
21
+ startPosition: $,
22
+ endPosition: j,
23
+ scale: o.description.includes("schade") ? 0.5 : 1,
24
+ row: D,
25
+ value: `${o.description}`,
26
+ color: o.color,
27
+ type: o.type
28
+ }), b.push({
29
+ startPosition: $,
30
+ endPosition: j,
31
+ row: D,
32
+ plan: o
33
+ });
34
+ }
35
+ return i;
36
+ };
37
+ let v;
38
+ t[12] !== e ? (v = e.getBorders().map((i, u) => ({
39
+ startPosition: Math.abs(y.convertUnit(i.hectometer - e.getTrackStart() + i.distanceToHectometer)),
40
+ color: i.color,
41
+ width: 4
42
+ })), t[12] = e, t[13] = v) : v = t[13], s = v;
43
+ let S;
44
+ t[14] !== k ? (S = (i, u, l) => k(i, u, l), t[14] = k, t[15] = S) : S = t[15], c = S;
45
+ const O = (i) => _(M(i.startPosition, i.endPosition, i.row));
46
+ let T;
47
+ t[16] !== e ? (T = y.widthBasedOnTrackLength(e.getTrackLength()), t[16] = e, t[17] = T) : T = t[17], P = T, g = "ivon-project-planning-view";
48
+ const U = `${P}px`;
49
+ t[18] !== U ? (n = {
50
+ display: "flex",
51
+ flexDirection: "row",
52
+ width: U
53
+ }, t[18] = U, t[19] = n) : n = t[19], r = E, a = (i) => O(i), d = B(), t[0] = k, t[1] = e, t[2] = _, t[3] = H, t[4] = r, t[5] = s, t[6] = c, t[7] = P, t[8] = a, t[9] = d, t[10] = g, t[11] = n;
54
+ } else
55
+ r = t[4], s = t[5], c = t[6], P = t[7], a = t[8], d = t[9], g = t[10], n = t[11];
27
56
  let m;
28
- e[2] !== t ? (m = t.getBorders().map((l, o) => ({
29
- startPosition: Math.abs(v.convertUnit(l.hectometer - t.getTrackStart())),
30
- color: l.color,
31
- width: 4
32
- })), e[2] = t, e[3] = m) : m = e[3];
33
- const y = m;
34
- let h;
35
- e[4] !== b ? (h = (l, o, i) => b(l, o, i), e[4] = b, e[5] = h) : h = e[5];
36
- const H = h;
37
- let k;
38
- e[6] !== C ? (k = (l, o, i) => C(l, o, i), e[6] = C, e[7] = k) : k = e[7];
39
- const P = k;
57
+ t[20] !== c ? (m = (b, M, B) => c(b, M, B), t[20] = c, t[21] = m) : m = t[21];
58
+ let w;
59
+ t[22] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (w = [], t[22] = w) : w = t[22];
60
+ let f;
61
+ t[23] !== e ? (f = e.getTrackLength(), t[23] = e, t[24] = f) : f = t[24];
40
62
  let p;
41
- e[8] !== t ? (p = v.widthBasedOnTrackLength(t.getTrackLength()), e[8] = t, e[9] = p) : p = e[9];
42
- const L = p, S = `${L}px`;
43
- let n;
44
- e[10] !== S ? (n = {
45
- display: "flex",
46
- flexDirection: "row",
47
- width: S
48
- }, e[10] = S, e[11] = n) : n = e[11];
49
- let r;
50
- e[12] !== P ? (r = (l, o, i) => P(l, o, i), e[12] = P, e[13] = r) : r = e[13];
51
- let s;
52
- e[14] !== T ? (s = T(), e[14] = T, e[15] = s) : s = e[15];
53
- let c;
54
- e[16] !== H ? (c = (l, o, i) => H(l, o, i), e[16] = H, e[17] = c) : c = e[17];
63
+ t[25] !== e ? (p = e.getYears(), t[25] = e, t[26] = p) : p = t[26];
64
+ const L = `${P}px`;
65
+ let h;
66
+ t[27] !== r || t[28] !== s || t[29] !== C || t[30] !== a || t[31] !== d || t[32] !== m || t[33] !== f || t[34] !== p.length || t[35] !== L ? (h = /* @__PURE__ */ I(r, { blockClickHandler: a, blocks: d, boundaries: s, cellClickHandler: m, cells: w, columns: f, height: C, rows: p.length, width: L }), t[27] = r, t[28] = s, t[29] = C, t[30] = a, t[31] = d, t[32] = m, t[33] = f, t[34] = p.length, t[35] = L, t[36] = h) : h = t[36];
55
67
  let x;
56
- e[18] === /* @__PURE__ */ Symbol.for("react.memo_cache_sentinel") ? (x = [], e[18] = x) : x = e[18];
57
- let a;
58
- e[19] !== t ? (a = t.getTrackLength(), e[19] = t, e[20] = a) : a = e[20];
59
- let d;
60
- e[21] !== t ? (d = t.getYears(), e[21] = t, e[22] = d) : d = e[22];
61
- const _ = `${L}px`;
62
- let f;
63
- e[23] !== y || e[24] !== w || e[25] !== c || e[26] !== a || e[27] !== d.length || e[28] !== _ || e[29] !== r || e[30] !== s ? (f = /* @__PURE__ */ U(M, { blockClickHandler: r, blocks: s, boundaries: y, cellClickHandler: c, cells: x, columns: a, height: w, rows: d.length, width: _ }), e[23] = y, e[24] = w, e[25] = c, e[26] = a, e[27] = d.length, e[28] = _, e[29] = r, e[30] = s, e[31] = f) : f = e[31];
64
- let u;
65
- return e[32] !== f || e[33] !== n ? (u = /* @__PURE__ */ U("div", { id: "ivon-project-planning-view", style: n, children: f }), e[32] = f, e[33] = n, e[34] = u) : u = e[34], u;
68
+ return t[37] !== h || t[38] !== g || t[39] !== n ? (x = /* @__PURE__ */ I("div", { id: g, style: n, children: h }), t[37] = h, t[38] = g, t[39] = n, t[40] = x) : x = t[40], x;
66
69
  }
67
70
  export {
68
- E as ProjectPlanningView
71
+ W as ProjectPlanningView
69
72
  };
70
73
  //# sourceMappingURL=IvonProjectPlanningView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IvonProjectPlanningView.js","sources":["../../../../src/components-domain/ivon-project-planning/_IvonProjectPlanningView/IvonProjectPlanningView.tsx"],"sourcesContent":["import { IvonDataGrid } from '../_IvonDataGrid/IvonDataGrid';\nimport type { IvonDataGridBlockData, IvonDataGridCellData } from '../_IvonDataGrid/IvonDataGrid';\nimport type { IvonDataBridge } from '../_helpers/IvonDataBridge';\nimport { ivonUtility } from '../_helpers/IvonUtility';\n\ninterface ProjectPlanningViewProps {\n cellClickHandler(this: void, row: number, column: number, data?: IvonDataGridCellData): void;\n readonly dataBridge: IvonDataBridge;\n itemClickHandler(this: void, row: number, column: number, data: IvonDataGridBlockData): void;\n readonly maxHeight: number;\n}\n\nexport function ProjectPlanningView({ maxHeight, dataBridge, cellClickHandler, itemClickHandler }: ProjectPlanningViewProps) {\n const buildBlocks = () => {\n const blocks: IvonDataGridBlockData[] = [];\n for (const [_index, segment] of dataBridge.getLaneSegments().entries()) {\n for (const plan of segment.plans) {\n blocks.push({\n startPosition: Math.abs(ivonUtility.convertUnit(segment.kmFrom - dataBridge.getTrackStart())),\n endPosition: Math.abs(ivonUtility.convertUnit(segment.kmTo - dataBridge.getTrackStart())),\n row: dataBridge.getYears().indexOf(plan.year),\n value: `${plan.description}`,\n color: plan.color\n });\n }\n }\n\n return blocks;\n };\n\n const boundaries = dataBridge.getBorders().map((border, _index) => {\n return {\n startPosition: Math.abs(ivonUtility.convertUnit(border.hectometer - dataBridge.getTrackStart())),\n color: border.color,\n width: 4\n };\n });\n\n const gridCellClicked = (row: number, column: number, data?: IvonDataGridCellData) => cellClickHandler(row, column, data);\n const gridItemClicked = (row: number, column: number, data: IvonDataGridBlockData) => itemClickHandler(row, column, data);\n\n const gridWidth = ivonUtility.widthBasedOnTrackLength(dataBridge.getTrackLength());\n\n return (\n <div id='ivon-project-planning-view' style={{ display: 'flex', flexDirection: 'row', width: `${gridWidth}px` }}>\n <IvonDataGrid\n blockClickHandler={(row, column, data) => gridItemClicked(row, column, data)}\n blocks={buildBlocks()}\n boundaries={boundaries}\n cellClickHandler={(row, column, data) => gridCellClicked(row, column, data)}\n cells={[]}\n columns={dataBridge.getTrackLength()}\n height={maxHeight}\n rows={dataBridge.getYears().length}\n width={`${gridWidth}px`}\n />\n </div>\n );\n}\n"],"names":["ProjectPlanningView","t0","$","_c","maxHeight","dataBridge","cellClickHandler","itemClickHandler","t1","blocks","_index","segment","getLaneSegments","entries","plan","plans","push","startPosition","Math","abs","ivonUtility","convertUnit","kmFrom","getTrackStart","endPosition","kmTo","row","getYears","indexOf","year","value","description","color","buildBlocks","t2","getBorders","map","border","_index_0","hectometer","width","boundaries","t3","column","data","gridCellClicked","t4","row_0","column_0","data_0","gridItemClicked","t5","widthBasedOnTrackLength","getTrackLength","gridWidth","t6","t7","display","flexDirection","t8","row_1","column_1","data_1","t9","t10","row_2","column_2","data_2","t11","Symbol","for","t12","t13","t14","t15","length","IvonDataGrid","t16"],"mappings":"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"}
1
+ {"version":3,"file":"IvonProjectPlanningView.js","sources":["../../../../src/components-domain/ivon-project-planning/_IvonProjectPlanningView/IvonProjectPlanningView.tsx"],"sourcesContent":["import { IvonDataGrid } from '../_IvonDataGrid/IvonDataGrid';\nimport type { IvonDataGridBlockData, IvonDataGridCellData } from '../_IvonDataGrid/IvonDataGrid';\nimport type { IvonDataBridge } from '../_helpers/IvonDataBridge';\nimport { ivonUtility } from '../_helpers/IvonUtility';\nimport type { LaneSegmentPlan } from '../_types/ivon-types';\n\ninterface ProjectPlanningViewProps {\n cellClickHandler(this: void, row: number, column: number, data?: IvonDataGridCellData): void;\n readonly dataBridge: IvonDataBridge;\n itemClickHandler(this: void, data: LaneSegmentPlan | undefined): void;\n readonly laneSerialNumber: number | undefined;\n readonly maxHeight: number;\n}\n\ninterface laneSegmentPlanMapping {\n endPosition: number;\n plan: LaneSegmentPlan;\n row: number;\n startPosition: number;\n}\n\nexport function ProjectPlanningView({ maxHeight, dataBridge, laneSerialNumber, cellClickHandler, itemClickHandler }: ProjectPlanningViewProps) {\n const laneSegmentPlanMapping: laneSegmentPlanMapping[] = [];\n\n const getMappedLaneSegment = (startPosition: number, endPosition: number, row: number) => {\n return laneSegmentPlanMapping.find((item) => item.startPosition === startPosition && item.endPosition === endPosition && item.row === row)?.plan;\n };\n\n const buildBlocks = () => {\n const blocks: IvonDataGridBlockData[] = [];\n for (const [_index, segment] of dataBridge\n .getLaneSegments()\n .filter((lane) => lane.laneSerialNumber === laneSerialNumber)\n .entries()) {\n for (const plan of segment.plans) {\n const startPosition = Math.abs(ivonUtility.convertUnit(segment.kmFrom - dataBridge.getTrackStart()));\n const endPosition = Math.abs(ivonUtility.convertUnit(segment.kmTo - dataBridge.getTrackStart()));\n const row = dataBridge.getYears().indexOf(plan.year);\n\n blocks.push({\n startPosition,\n endPosition,\n scale: plan.description.includes('schade') ? 0.5 : 1,\n row,\n value: `${plan.description}`,\n color: plan.color,\n type: plan.type\n });\n\n laneSegmentPlanMapping.push({\n startPosition,\n endPosition,\n row,\n plan\n });\n }\n }\n\n return blocks;\n };\n\n const boundaries = dataBridge.getBorders().map((border, _index) => {\n return {\n startPosition: Math.abs(ivonUtility.convertUnit(border.hectometer - dataBridge.getTrackStart() + border.distanceToHectometer)),\n color: border.color,\n width: 4\n };\n });\n\n const gridCellClicked = (row: number, column: number, data?: IvonDataGridCellData) => cellClickHandler(row, column, data);\n const gridItemClicked = (data: IvonDataGridBlockData) => itemClickHandler(getMappedLaneSegment(data.startPosition, data.endPosition, data.row));\n\n const gridWidth = ivonUtility.widthBasedOnTrackLength(dataBridge.getTrackLength());\n\n return (\n <div id='ivon-project-planning-view' style={{ display: 'flex', flexDirection: 'row', width: `${gridWidth}px` }}>\n <IvonDataGrid\n blockClickHandler={(data) => gridItemClicked(data)}\n blocks={buildBlocks()}\n boundaries={boundaries}\n cellClickHandler={(row, column, data) => gridCellClicked(row, column, data)}\n cells={[]}\n columns={dataBridge.getTrackLength()}\n height={maxHeight}\n rows={dataBridge.getYears().length}\n width={`${gridWidth}px`}\n />\n </div>\n );\n}\n"],"names":["ProjectPlanningView","t0","$","_c","maxHeight","dataBridge","laneSerialNumber","cellClickHandler","itemClickHandler","T0","boundaries","gridCellClicked","gridWidth","t1","t2","t3","t4","laneSegmentPlanMapping","getMappedLaneSegment","startPosition","endPosition","row","find","item","plan","buildBlocks","blocks","_index","segment","getLaneSegments","filter","lane","entries","plans","startPosition_0","Math","abs","ivonUtility","convertUnit","kmFrom","getTrackStart","endPosition_0","kmTo","row_0","getYears","indexOf","year","push","scale","description","includes","value","color","type","t5","getBorders","map","border","_index_0","hectometer","distanceToHectometer","width","t6","row_1","column","data","gridItemClicked","data_0","t7","widthBasedOnTrackLength","getTrackLength","t8","display","flexDirection","IvonDataGrid","data_1","row_2","column_0","data_2","Symbol","for","t9","t10","length","t11"],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { IvonDataBridge } from '../_helpers/IvonDataBridge';
2
+ import { Pavement } from '../_types/ivon-types';
2
3
  interface SchematicViewProps {
3
4
  readonly dataBridge: IvonDataBridge;
4
- itemClickHandler(this: void, segmentIndex: number, row: number): void;
5
+ itemClickHandler(this: void, pavement: Pavement): void;
5
6
  readonly maxHeight: number;
6
7
  }
7
8
  export declare function SchematicView({ maxHeight, dataBridge, itemClickHandler }: SchematicViewProps): import("react/jsx-runtime").JSX.Element;
@@ -1 +1 @@
1
- {"version":3,"file":"IvonSchematicView.d.ts","sourceRoot":"","sources":["../../../../src/components-domain/ivon-project-planning/_IvonSchematicView/IvonSchematicView.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACtE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,aAAa,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,kBAAkB,2CAmE5F"}
1
+ {"version":3,"file":"IvonSchematicView.d.ts","sourceRoot":"","sources":["../../../../src/components-domain/ivon-project-planning/_IvonSchematicView/IvonSchematicView.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEjE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAErD,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;IACpC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IACvD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,wBAAgB,aAAa,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,gBAAgB,EAAE,EAAE,kBAAkB,2CAoE5F"}
@@ -1,55 +1,56 @@
1
- import { jsx as D } from "react/jsx-runtime";
2
- import { c as F } from "../../../chunks/compiler-runtime.BNHg76kC.js";
1
+ import { jsx as x } from "react/jsx-runtime";
2
+ import { c as B } from "../../../chunks/compiler-runtime.BNHg76kC.js";
3
3
  import "react";
4
- import { IvonDataGrid as L } from "../_IvonDataGrid/IvonDataGrid.js";
5
- import { ivonUtility as r } from "../_helpers/IvonUtility.js";
6
- function E(s) {
7
- const t = F.c(16), {
8
- maxHeight: f,
4
+ import { IvonDataGrid as F } from "../_IvonDataGrid/IvonDataGrid.js";
5
+ import { ivonUtility as c } from "../_helpers/IvonUtility.js";
6
+ function E(n) {
7
+ const t = B.c(16), {
8
+ maxHeight: p,
9
9
  dataBridge: i,
10
- itemClickHandler: h
11
- } = s;
12
- let c;
13
- t[0] !== i ? (c = r.widthBasedOnTrackLength(i.getTrackLength()), t[0] = i, t[1] = c) : c = t[1];
14
- const T = c;
10
+ itemClickHandler: f
11
+ } = n;
15
12
  let l;
16
- t[2] !== i || t[3] !== h || t[4] !== f ? (l = () => {
17
- const k = [], H = i.getBorders().map(S);
18
- for (const [x, d] of i.getLaneSegments().entries()) {
19
- const p = d.kmFrom, u = d.kmTo, P = Math.abs(r.convertUnit(u) - r.convertUnit(p)), U = d.pavements.length;
20
- k.push(/* @__PURE__ */ D(L, { blockClickHandler: (e) => h(x, e), blocks: d.pavements.map((e, B) => ({
13
+ t[0] !== i ? (l = c.widthBasedOnTrackLength(i.getTrackLength()), t[0] = i, t[1] = l) : l = t[1];
14
+ const D = l;
15
+ let a;
16
+ t[2] !== i || t[3] !== f || t[4] !== p ? (a = () => {
17
+ const k = [], S = i.getBorders().map($);
18
+ for (const [T, r] of i.getSchematics().entries()) {
19
+ const d = r.kmFrom, u = r.kmTo, P = Math.abs(c.convertUnit(u) - c.convertUnit(d)), H = r.laneSchematics.length;
20
+ k.push(/* @__PURE__ */ x(F, { blockClickHandler: (e) => f(r.laneSchematics[e.row].pavements[0]), blocks: r.laneSchematics.map((e, U) => ({
21
21
  startPosition: 0,
22
22
  endPosition: P,
23
- row: B,
24
- value: e.pavementType,
23
+ scale: 1,
24
+ row: U,
25
+ value: e.pavements[0].pavementType,
25
26
  color: "rijks-skyblue"
26
- })), boundaries: H.filter((e) => i.isDirectionFlipped() ? e.startPosition >= u && e.startPosition < p : e.startPosition >= p && e.startPosition < u).map((e) => ({
27
- startPosition: Math.abs(r.convertUnit(e.startPosition - p)),
27
+ })), boundaries: S.filter((e) => i.isDirectionFlipped() ? e.startPosition >= u && e.startPosition < d : e.startPosition >= d && e.startPosition < u).map((e) => ({
28
+ startPosition: Math.abs(c.convertUnit(e.startPosition - d)),
28
29
  color: e.color,
29
30
  width: e.width
30
- })), cells: [], columns: P, height: f, rows: U, width: `${r.laneSegmentWidth() * P}px` }, x));
31
+ })), cells: [], columns: P, height: p, rows: H, width: `${c.laneSegmentWidth() * P}px` }, T));
31
32
  }
32
33
  return k;
33
- }, t[2] = i, t[3] = h, t[4] = f, t[5] = l) : l = t[5];
34
- const g = l;
35
- let a;
36
- t[6] !== i ? (a = () => i.isDirectionFlipped() ? "row-reverse" : "row", t[6] = i, t[7] = a) : a = t[7];
37
- const w = a(), v = `${T}px`;
34
+ }, t[2] = i, t[3] = f, t[4] = p, t[5] = a) : a = t[5];
35
+ const w = a;
36
+ let m;
37
+ t[6] !== i ? (m = () => i.isDirectionFlipped() ? "row-reverse" : "row", t[6] = i, t[7] = m) : m = t[7];
38
+ const v = m(), g = `${D}px`;
38
39
  let o;
39
- t[8] !== w || t[9] !== v ? (o = {
40
+ t[8] !== v || t[9] !== g ? (o = {
40
41
  display: "flex",
41
- flexDirection: w,
42
- width: v
43
- }, t[8] = w, t[9] = v, t[10] = o) : o = t[10];
44
- let n;
45
- t[11] !== g ? (n = g(), t[11] = g, t[12] = n) : n = t[12];
46
- let m;
47
- return t[13] !== o || t[14] !== n ? (m = /* @__PURE__ */ D("div", { id: "ivon-schematic-view", style: o, children: n }), t[13] = o, t[14] = n, t[15] = m) : m = t[15], m;
42
+ flexDirection: v,
43
+ width: g
44
+ }, t[8] = v, t[9] = g, t[10] = o) : o = t[10];
45
+ let s;
46
+ t[11] !== w ? (s = w(), t[11] = w, t[12] = s) : s = t[12];
47
+ let h;
48
+ return t[13] !== o || t[14] !== s ? (h = /* @__PURE__ */ x("div", { id: "ivon-schematic-view", style: o, children: s }), t[13] = o, t[14] = s, t[15] = h) : h = t[15], h;
48
49
  }
49
- function S(s, t) {
50
+ function $(n, t) {
50
51
  return {
51
- startPosition: s.hectometer + s.distanceToHectometer,
52
- color: s.color,
52
+ startPosition: n.hectometer + n.distanceToHectometer,
53
+ color: n.color,
53
54
  width: 4
54
55
  };
55
56
  }