@apia/table2-component 4.0.43 → 4.0.44

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/index.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import * as react_jsx_runtime from 'react/jsx-runtime';
2
2
  import * as react from 'react';
3
- import { ReactNode, HTMLAttributes } from 'react';
4
- import { TableController, TablePlugin, Row, RowsGroup, Element } from '@apia/table2-controller';
3
+ import { TableController, TablePlugin, Element } from '@apia/table2-controller';
5
4
  export * from '@apia/table2-controller';
6
5
 
7
6
  declare const TableContext: react.Context<TableController | null>;
@@ -14,14 +13,6 @@ declare const Table: (({ controller, variant, }: {
14
13
  displayName: string;
15
14
  };
16
15
 
17
- type AdditionalCellDataRetriever = (row: Row) => Promise<ReactNode>;
18
- declare class AdditionalInformationPlugin implements TablePlugin {
19
- private onExpand;
20
- constructor(onExpand: AdditionalCellDataRetriever);
21
- onAddRow(_controller: TableController, target: RowsGroup<any>, newRow: Row): void;
22
- useElementDomProps(_controller: TableController, element: TableController | Element<any>, _context: any): HTMLAttributes<HTMLElement>;
23
- }
24
-
25
16
  declare class SessionStorageResizePlugin implements TablePlugin {
26
17
  private prefix;
27
18
  constructor(prefix: string);
@@ -37,5 +28,5 @@ declare class SessionStorageResizePlugin implements TablePlugin {
37
28
  };
38
29
  }
39
30
 
40
- export { AdditionalInformationPlugin, SessionStorageResizePlugin, type TAvailableTables, Table, TableContext, useTable };
31
+ export { SessionStorageResizePlugin, type TAvailableTables, Table, TableContext, useTable };
41
32
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1,12 +1,11 @@
1
- import { TableHead, Cell, Row as Row$1, TableBody } from '@apia/table2-controller';
1
+ import { Column, AdditionalCell, Cell, TableHead } from '@apia/table2-controller';
2
2
  export * from '@apia/table2-controller';
3
- import { jsx, Fragment, jsxs } from 'react/jsx-runtime';
4
- import { Box, Table as Table$1, getVariant, Spinner } from '@apia/theme';
5
- import { getLabel } from '@apia/util';
6
- import { makeObservable, action, observable } from 'mobx';
3
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
4
  import { observer } from 'mobx-react-lite';
8
- import { createElement, createContext, useContext, useMemo, lazy, Suspense } from 'react';
9
- import { IconButton } from '@apia/components';
5
+ import { createElement, createContext, useContext } from 'react';
6
+ import { Box, Input, Label, Table as Table$1, getVariant } from '@apia/theme';
7
+ import { Icon } from '@apia/icons';
8
+ import { DateInput, IconButton } from '@apia/components';
10
9
 
11
10
  const Resizer = () => {
12
11
  const controller = useTable();
@@ -52,65 +51,266 @@ const Resizer = () => {
52
51
  );
53
52
  };
54
53
 
55
- const Head = observer(() => {
56
- const controller = useTable();
57
- const plugins = controller.getApplicablePlugins("useElementDomProps");
58
- const CellsRendererPlugin = controller.getApplicablePlugins("getRenderers")[0]?.().cell;
59
- return /* @__PURE__ */ jsx("thead", { ...controller.head.getState("domProperties"), children: [...controller.head.rows.values()].map((row, i) => {
54
+ const HeaderRow = observer(
55
+ ({
56
+ children,
57
+ className,
58
+ row,
59
+ rowIndex
60
+ }) => {
61
+ const controller = useTable();
62
+ const plugins = controller.getApplicablePlugins("useElementDomProps");
63
+ const pluginProps = plugins.reduce((acc, plugin) => {
64
+ const props = plugin(row, rowIndex);
65
+ return { ...acc, ...props };
66
+ }, {});
60
67
  return /* @__PURE__ */ createElement(
61
68
  "tr",
62
69
  {
63
70
  ...row.getState("domProperties"),
64
- ...plugins.reduce((acc, plugin) => {
65
- const props = plugin(row, i);
66
- return { ...acc, ...props };
67
- }, {}),
71
+ ...pluginProps,
72
+ className: `${className || ""} ${row.getState("domProperties")?.className || ""} ${pluginProps.className || ""}`,
68
73
  key: row.getState("id"),
69
74
  "data-rowid": row.getState("id")
70
75
  },
71
- row.cells.map((cell, j) => {
72
- const Renderer = cell.getState("Renderer") || CellsRendererPlugin;
73
- const content = cell.getState("content");
74
- if (!controller.isColumnVisible(cell.getState("colName"))) {
75
- return null;
76
+ children
77
+ );
78
+ }
79
+ );
80
+
81
+ const ToggleFiltersButton = () => {
82
+ return /* @__PURE__ */ jsx(Icon, { title: "", name: "Filter" });
83
+ };
84
+
85
+ const iconsMap = Object.freeze({
86
+ ASC: "SortedUp",
87
+ DESC: "SortedDown",
88
+ NONE: "SortedNone"
89
+ });
90
+ const DefaultColumnRenderer = observer(({ cell }) => {
91
+ const controller = useTable();
92
+ const icon = cell instanceof Column ? iconsMap[cell.getState("sortState") || "NONE"] : null;
93
+ return /* @__PURE__ */ jsxs("span", { className: "headButton__container", children: [
94
+ /* @__PURE__ */ jsx("span", { className: "headButton__label", children: /* @__PURE__ */ jsx("span", { children: cell.getState("content") }) }),
95
+ icon && /* @__PURE__ */ jsx(Icon, { title: "", name: icon }),
96
+ !(cell instanceof AdditionalCell) && controller.getState("allowResize") && /* @__PURE__ */ jsx(Resizer, {})
97
+ ] });
98
+ });
99
+ const ColumnsRow = observer(() => {
100
+ const controller = useTable();
101
+ const plugins = controller.getApplicablePlugins("useElementDomProps");
102
+ const CellsRendererPlugin = controller.getApplicablePlugins("getRenderers")[0]?.().cell;
103
+ const row = controller.head.getHeaderRow();
104
+ if (!row) {
105
+ return null;
106
+ }
107
+ return /* @__PURE__ */ jsx(HeaderRow, { row, rowIndex: 0, children: row.cells.map((cell, j) => {
108
+ let Renderer = cell.getState("Renderer") || CellsRendererPlugin;
109
+ if (cell instanceof AdditionalCell) {
110
+ Renderer = ToggleFiltersButton;
111
+ }
112
+ const pluginProps = plugins.reduce((acc, plugin) => {
113
+ const props = plugin(cell, j);
114
+ return { ...acc, ...props };
115
+ }, {});
116
+ const handleClick = () => {
117
+ if (cell instanceof Column) {
118
+ controller.sortColumn(cell);
119
+ } else if (cell instanceof AdditionalCell) {
120
+ controller.toggleFiltersRowVisibility();
121
+ }
122
+ };
123
+ return /* @__PURE__ */ createElement(
124
+ Box,
125
+ {
126
+ as: cell.getState("tag") === "td" ? "td" : "th",
127
+ ...cell.getState("domProperties"),
128
+ ...pluginProps,
129
+ "data-colname": cell.getState("colName"),
130
+ key: cell.getState("colName"),
131
+ sx: {
132
+ ...cell.getState("domProperties")?.style,
133
+ position: "relative",
134
+ ...pluginProps.style
135
+ },
136
+ onKeyUp: (ev) => {
137
+ if (ev.key === "Enter") {
138
+ handleClick();
139
+ }
140
+ },
141
+ onClick: () => {
142
+ handleClick();
143
+ }
144
+ },
145
+ Renderer ? /* @__PURE__ */ jsx(Renderer, { cell }) : /* @__PURE__ */ jsx(DefaultColumnRenderer, { cell })
146
+ );
147
+ }) });
148
+ });
149
+
150
+ const InputFilter = observer(({ cell }) => {
151
+ return /* @__PURE__ */ jsx(
152
+ Input,
153
+ {
154
+ value: cell.getValue(),
155
+ onChange: (ev) => {
156
+ cell.setValue(ev.target.value);
157
+ },
158
+ onKeyDown: (ev) => {
159
+ if (ev.code === "Enter") {
160
+ cell.fire("filterPressEnter");
76
161
  }
77
- if (cell.getState("isHidden") || cell.getTable().getState("hiddenColumns").has(cell.getState("colName"))) {
78
- return null;
162
+ },
163
+ onBlur: () => {
164
+ cell.fire("filterBlur");
165
+ }
166
+ }
167
+ );
168
+ });
169
+
170
+ const DateFilter = observer(({ cell }) => {
171
+ return /* @__PURE__ */ jsx(
172
+ DateInput,
173
+ {
174
+ value: cell.getValue(),
175
+ onChange: (ev) => {
176
+ cell.setValue(ev);
177
+ },
178
+ onBlur: () => {
179
+ cell.fire("filterBlur");
180
+ }
181
+ }
182
+ );
183
+ });
184
+
185
+ const FilterRender = observer(({ cell }) => {
186
+ let Component = null;
187
+ switch (cell?.getState("type")) {
188
+ case "INPUT":
189
+ Component = InputFilter;
190
+ break;
191
+ case "DATE":
192
+ Component = DateFilter;
193
+ break;
194
+ case "DATERANGE":
195
+ Component = () => /* @__PURE__ */ jsx(Fragment, { children: "Not implemented" });
196
+ break;
197
+ }
198
+ if (!Component) {
199
+ return /* @__PURE__ */ jsx(Input, { disabled: true });
200
+ }
201
+ if (!cell.asAdditional()) {
202
+ return /* @__PURE__ */ jsx(Component, { cell });
203
+ }
204
+ return /* @__PURE__ */ jsxs(Label, { children: [
205
+ cell.getState("title"),
206
+ /* @__PURE__ */ jsx(Component, { cell })
207
+ ] });
208
+ });
209
+
210
+ const FiltersRow = observer(() => {
211
+ const controller = useTable();
212
+ const plugins = controller.getApplicablePlugins("useElementDomProps");
213
+ const row = controller.head.getFiltersRow();
214
+ if (!row || row.getState("isHidden")) {
215
+ return null;
216
+ }
217
+ return /* @__PURE__ */ jsx(HeaderRow, { row, rowIndex: 1, className: "filtersRow", children: row.getCells().map((cell, j) => {
218
+ const Renderer = cell.getState("Renderer") || FilterRender;
219
+ const content = cell.getState("content");
220
+ const pluginProps = plugins.reduce((acc, plugin) => {
221
+ const props = plugin(cell, j);
222
+ return { ...acc, ...props };
223
+ }, {});
224
+ return /* @__PURE__ */ createElement(
225
+ Box,
226
+ {
227
+ as: "td",
228
+ ...cell.getState("domProperties"),
229
+ ...pluginProps,
230
+ "data-colname": cell.getState("colName"),
231
+ key: cell.getState("colName"),
232
+ sx: {
233
+ ...cell.getState("domProperties")?.style,
234
+ ...pluginProps.style
79
235
  }
80
- const pluginProps = plugins.reduce((acc, plugin) => {
81
- const props = plugin(cell, j);
82
- return { ...acc, ...props };
83
- }, {});
84
- return /* @__PURE__ */ createElement(
85
- Box,
86
- {
87
- as: cell.getState("tag") === "td" ? "td" : "th",
88
- ...cell.getState("domProperties"),
89
- ...pluginProps,
90
- "data-colname": cell.getState("colName"),
91
- key: cell.getState("colName"),
92
- sx: {
93
- ...cell.getState("domProperties")?.style,
94
- position: "relative",
95
- ...pluginProps.style
96
- }
97
- },
98
- Renderer ? /* @__PURE__ */ jsx(Renderer, { cell }) : content,
99
- controller.getState("allowResize") && /* @__PURE__ */ jsx(Resizer, {})
100
- );
101
- })
236
+ },
237
+ Renderer ? /* @__PURE__ */ jsx(Renderer, { cell }) : content
102
238
  );
103
239
  }) });
104
240
  });
105
241
 
242
+ const Head = observer(() => {
243
+ const controller = useTable();
244
+ const plugins = controller.getApplicablePlugins("useElementDomProps");
245
+ const CellsRendererPlugin = controller.getApplicablePlugins("getRenderers")[0]?.().cell;
246
+ if (controller.head.getHeaderRow()) {
247
+ return /* @__PURE__ */ jsxs("thead", { ...controller.head.getState("domProperties"), children: [
248
+ /* @__PURE__ */ jsx(ColumnsRow, {}),
249
+ /* @__PURE__ */ jsx(FiltersRow, {})
250
+ ] });
251
+ }
252
+ return /* @__PURE__ */ jsx("thead", { ...controller.head.getState("domProperties"), children: [...controller.head.rows.values()].map((row, i) => {
253
+ return /* @__PURE__ */ jsx(HeaderRow, { row, rowIndex: i, children: row.cells.map((cell, j) => {
254
+ const Renderer = cell.getState("Renderer") || CellsRendererPlugin;
255
+ const content = cell.getState("content");
256
+ const pluginProps = plugins.reduce((acc, plugin) => {
257
+ const props = plugin(cell, j);
258
+ return { ...acc, ...props };
259
+ }, {});
260
+ if (cell.getState("isHidden")) {
261
+ return null;
262
+ }
263
+ return /* @__PURE__ */ createElement(
264
+ Box,
265
+ {
266
+ as: cell.getState("tag") === "td" ? "td" : "th",
267
+ ...cell.getState("domProperties"),
268
+ ...pluginProps,
269
+ "data-colname": cell.getState("colName"),
270
+ key: cell.getState("colName"),
271
+ sx: {
272
+ ...cell.getState("domProperties")?.style,
273
+ position: "relative",
274
+ ...pluginProps.style
275
+ }
276
+ },
277
+ Renderer ? /* @__PURE__ */ jsx(Renderer, { cell }) : content,
278
+ controller.getState("allowResize") && /* @__PURE__ */ jsx(Resizer, {})
279
+ );
280
+ }) });
281
+ }) });
282
+ });
283
+
284
+ const AdditionalCellRenderer = observer(
285
+ ({ cell: _ }) => {
286
+ const cell = _;
287
+ if (!cell.getTable().hasAdditionalContent()) {
288
+ return null;
289
+ }
290
+ return /* @__PURE__ */ jsx(
291
+ IconButton,
292
+ {
293
+ className: `moreInformationButton ${cell.getState("expanded") ? "expanded" : ""}`,
294
+ icon: "ArrowRight",
295
+ onClick: () => {
296
+ cell.onToggle();
297
+ }
298
+ }
299
+ );
300
+ }
301
+ );
302
+
106
303
  const RowContent = observer(({ row }) => {
107
304
  const controller = useTable();
108
305
  const plugins = controller.getApplicablePlugins("useElementDomProps");
109
306
  const CellsRendererPlugin = controller.getApplicablePlugins("getRenderers")[0]?.().cell;
110
307
  return /* @__PURE__ */ jsx(Fragment, { children: row.cells.map((cell, i) => {
111
- const Renderer = cell.getState("Renderer") || CellsRendererPlugin;
308
+ const Renderer = cell.getState("Renderer") || (cell instanceof AdditionalCell ? AdditionalCellRenderer : CellsRendererPlugin);
112
309
  const content = cell.getState("content");
113
- const isHidden = !controller.isColumnVisible(cell.getState("colName")) || cell.getState("isHidden") || cell.getTable().getState("hiddenColumns").has(cell.getState("colName"));
310
+ const isHidden = controller.head.getHeaderRow()?.getColumn(cell.getColumnName()).isHidden?.() ?? controller.head.rows[0]?.cells.find((c) => c.getState("colName") === cell.getState("colName"))?.getState("isHidden");
311
+ if (controller.head.getHeaderRow()?.getColumn(cell.getColumnName()).asAdditional?.()) {
312
+ return null;
313
+ }
114
314
  return /* @__PURE__ */ createElement(
115
315
  "td",
116
316
  {
@@ -135,19 +335,22 @@ const Row = observer(
135
335
  ({ index, row }) => {
136
336
  const controller = useTable();
137
337
  const plugins = controller.getApplicablePlugins("useElementDomProps");
138
- return /* @__PURE__ */ createElement(
139
- "tr",
140
- {
141
- ...row.getState("domProperties"),
142
- ...plugins.reduce((acc, plugin) => {
143
- const props = plugin(row, index);
144
- return { ...acc, ...props };
145
- }, {}),
146
- key: row.getState("id"),
147
- "data-rowid": row.getState("id")
148
- },
149
- /* @__PURE__ */ jsx(RowContent, { row })
150
- );
338
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
339
+ " ",
340
+ /* @__PURE__ */ createElement(
341
+ "tr",
342
+ {
343
+ ...row.getState("domProperties"),
344
+ ...plugins.reduce((acc, plugin) => {
345
+ const props = plugin(row, index);
346
+ return { ...acc, ...props };
347
+ }, {}),
348
+ key: row.getState("id"),
349
+ "data-rowid": row.getState("id")
350
+ },
351
+ /* @__PURE__ */ jsx(RowContent, { row })
352
+ )
353
+ ] });
151
354
  }
152
355
  );
153
356
 
@@ -185,186 +388,6 @@ const Table = observer(
185
388
  }
186
389
  );
187
390
 
188
- var __defProp = Object.defineProperty;
189
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
190
- var __publicField = (obj, key, value) => {
191
- __defNormalProp(obj, key + "" , value);
192
- return value;
193
- };
194
- class AdditionalRow extends Row$1 {
195
- }
196
- const ExpandButtonRenderer = observer(({ cell }) => {
197
- return /* @__PURE__ */ jsx(
198
- Box,
199
- {
200
- sx: {
201
- transform: `rotate(${cell.expanded ? "90deg" : "0"})`,
202
- transition: "transform 0.1s"
203
- },
204
- children: /* @__PURE__ */ jsx(
205
- IconButton,
206
- {
207
- icon: "ArrowRight",
208
- title: cell.expanded ? getLabel("lblCollapse").text : getLabel("lblExpand").text,
209
- onClick: () => {
210
- cell.toggle();
211
- }
212
- }
213
- )
214
- }
215
- );
216
- });
217
- const AdditionalInfoRenderer = ({ cell }) => {
218
- const C = useMemo(
219
- () => lazy(async () => {
220
- const result = await cell.retriever(cell.getRow().getPreviousRow());
221
- return { default: () => result };
222
- }),
223
- [cell]
224
- );
225
- return /* @__PURE__ */ jsx(Suspense, { fallback: /* @__PURE__ */ jsx(Spinner, {}), children: /* @__PURE__ */ jsx(C, {}) });
226
- };
227
- class AdditionalInfoCell extends Cell {
228
- constructor(props, retriever) {
229
- super(props);
230
- this.retriever = retriever;
231
- }
232
- }
233
- class AdditionalCell extends Cell {
234
- constructor(props, retriever) {
235
- super(props);
236
- this.retriever = retriever;
237
- __publicField(this, "expanded", false);
238
- makeObservable(this, {
239
- expanded: observable,
240
- expand: action,
241
- toggle: action,
242
- collapse: action
243
- });
244
- }
245
- collapseAction() {
246
- const row = this.getRow();
247
- const container = row.getContainer();
248
- const index = container.getRowIndex(row);
249
- const nextRow = container.getRowByIndex(index + 1);
250
- if (nextRow instanceof AdditionalRow) {
251
- nextRow.remove();
252
- this.expanded = false;
253
- }
254
- }
255
- expandAction() {
256
- const row = this.getRow();
257
- const container = row.getContainer();
258
- const index = container.getRowIndex(row);
259
- const nextRow = container.getRowByIndex(index + 1);
260
- if (!(nextRow instanceof AdditionalRow)) {
261
- const newRow = new AdditionalRow(`${row.getState("id")}-additional`);
262
- newRow.addCell(
263
- new AdditionalInfoCell(
264
- {
265
- colName: "additional",
266
- Renderer: AdditionalInfoRenderer,
267
- domProperties: { colSpan: row.cells.length }
268
- },
269
- this.retriever
270
- )
271
- );
272
- container.insertAfter(row, newRow);
273
- this.expanded = true;
274
- }
275
- }
276
- collapse() {
277
- const row = this.getRow();
278
- const container = row.getContainer();
279
- const index = container.getRowIndex(row);
280
- if (index !== -1) {
281
- this.collapseAction();
282
- }
283
- }
284
- expand() {
285
- const row = this.getRow();
286
- const container = row.getContainer();
287
- const index = container.getRowIndex(row);
288
- if (index !== -1) {
289
- this.expandAction();
290
- }
291
- }
292
- toggle() {
293
- if (this.expanded) {
294
- this.collapseAction();
295
- } else {
296
- this.expandAction();
297
- }
298
- }
299
- }
300
- class AdditionalInformationPlugin {
301
- constructor(onExpand) {
302
- this.onExpand = onExpand;
303
- }
304
- onAddRow(_controller, target, newRow) {
305
- if (!(newRow instanceof AdditionalRow)) {
306
- let newCell;
307
- if (target instanceof TableHead) {
308
- newCell = new Cell({
309
- colName: "additional",
310
- Renderer: () => null,
311
- domProperties: {
312
- className: "additional-column"
313
- }
314
- });
315
- } else {
316
- newCell = new AdditionalCell(
317
- {
318
- colName: "additional",
319
- Renderer: ExpandButtonRenderer,
320
- domProperties: {
321
- className: "additional-column"
322
- }
323
- },
324
- this.onExpand
325
- );
326
- }
327
- if (newRow.cells.length) {
328
- newRow.addCellBefore(newRow.cells[0], newCell);
329
- } else {
330
- newRow.addCell(newCell);
331
- }
332
- }
333
- }
334
- useElementDomProps(_controller, element, _context) {
335
- if (element instanceof Row$1 && element.getContainer() instanceof TableBody) {
336
- return {
337
- "aria-expanded": element instanceof AdditionalRow ? void 0 : element.cells.find(
338
- (c) => c instanceof AdditionalCell
339
- )?.expanded,
340
- onKeyDown: (ev) => {
341
- let row = element;
342
- if (element instanceof AdditionalRow) {
343
- row = row.getContainer()?.getRowByIndex(row.getContainer().getRowIndex(row) - 1);
344
- }
345
- if (ev.code === "ArrowRight" && ev.ctrlKey) {
346
- ev.stopPropagation();
347
- ev.preventDefault();
348
- row.cells.find(
349
- (c) => c instanceof AdditionalCell
350
- )?.expand();
351
- } else if (ev.code === "ArrowLeft" && ev.ctrlKey) {
352
- ev.stopPropagation();
353
- ev.preventDefault();
354
- row.cells.find(
355
- (c) => c instanceof AdditionalCell
356
- )?.collapse();
357
- if (element instanceof AdditionalRow) {
358
- row.cells[0].focus();
359
- }
360
- }
361
- }
362
- };
363
- }
364
- return {};
365
- }
366
- }
367
-
368
391
  class SessionStorageResizePlugin {
369
392
  constructor(prefix) {
370
393
  this.prefix = prefix;
@@ -376,7 +399,7 @@ class SessionStorageResizePlugin {
376
399
  sessionStorage.setItem(this.buildId(colName), String(newSize));
377
400
  }
378
401
  useElementDomProps(_controller, element) {
379
- if (element instanceof Cell) {
402
+ if (element instanceof Cell && !(element instanceof AdditionalCell)) {
380
403
  if (element.getRow().getContainer() instanceof TableHead) {
381
404
  const storedSize = sessionStorage.getItem(
382
405
  this.buildId(element.getState("colName"))
@@ -395,5 +418,5 @@ class SessionStorageResizePlugin {
395
418
  }
396
419
  }
397
420
 
398
- export { AdditionalInformationPlugin, SessionStorageResizePlugin, Table, TableContext, useTable };
421
+ export { SessionStorageResizePlugin, Table, TableContext, useTable };
399
422
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/component/Resizer.tsx","../src/component/Head.tsx","../src/component/Body/Row.tsx","../src/component/Body/Body.tsx","../src/component/Table.tsx","../src/plugins/AdditionalInformationPlugin.tsx","../src/plugins/SessionStorageResizePlugin.ts"],"sourcesContent":["import { useTable } from './Table';\r\n\r\nexport const Resizer = () => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('onResize');\r\n\r\n return (\r\n <div\r\n style={{\r\n cursor: 'ew-resize',\r\n position: 'absolute',\r\n right: 0,\r\n width: '30px',\r\n opacity: 0,\r\n height: '100%',\r\n top: 0,\r\n transform: 'translateX(15px)',\r\n zIndex: 2,\r\n }}\r\n className=\"resizer\"\r\n onMouseDown={(ev) => {\r\n const el = (ev.target as HTMLElement)?.closest?.('.resizer');\r\n const th = (ev.target as HTMLElement)?.closest?.('th');\r\n\r\n const colName = th?.dataset.colname;\r\n\r\n if (el instanceof HTMLElement && th instanceof HTMLElement && colName) {\r\n const initialX = ev.clientX;\r\n const initialWidth = th.getBoundingClientRect().width;\r\n\r\n const handleResize = (ev: MouseEvent) => {\r\n const dif = ev.clientX - initialX;\r\n th.style.width = `${initialWidth + dif}px`;\r\n th.style.maxWidth = `${initialWidth + dif}px`;\r\n\r\n plugins.forEach((c) => c(colName, initialWidth + dif));\r\n };\r\n\r\n const breakSubscription = () => {\r\n document.removeEventListener('mousemove', handleResize);\r\n document.removeEventListener('mouseup', breakSubscription);\r\n };\r\n\r\n document.addEventListener('mousemove', handleResize);\r\n document.addEventListener('mouseup', breakSubscription);\r\n }\r\n }}\r\n >\r\n {' '}\r\n </div>\r\n );\r\n};\r\n","import { observer } from 'mobx-react-lite';\r\nimport { useTable } from './Table';\r\nimport { Resizer } from './Resizer';\r\nimport { Box } from '@apia/theme';\r\n\r\nexport const Head = observer(() => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n const CellsRendererPlugin =\r\n controller.getApplicablePlugins('getRenderers')[0]?.().cell;\r\n\r\n return (\r\n <thead {...controller.head.getState('domProperties')}>\r\n {[...controller.head.rows.values()].map((row, i) => {\r\n return (\r\n <tr\r\n {...row.getState('domProperties')}\r\n {...plugins.reduce((acc, plugin) => {\r\n const props = plugin(row, i);\r\n return { ...acc, ...props };\r\n }, {})}\r\n key={row.getState('id')}\r\n data-rowid={row.getState('id')}\r\n >\r\n {row.cells.map((cell, j) => {\r\n const Renderer = cell.getState('Renderer') || CellsRendererPlugin;\r\n const content = cell.getState('content');\r\n\r\n if (!controller.isColumnVisible(cell.getState('colName'))) {\r\n return null;\r\n }\r\n\r\n if (\r\n cell.getState('isHidden') ||\r\n cell\r\n .getTable()\r\n .getState('hiddenColumns')\r\n .has(cell.getState('colName'))\r\n ) {\r\n return null;\r\n }\r\n\r\n const pluginProps = plugins.reduce<any>((acc, plugin) => {\r\n const props = plugin(cell, j);\r\n return { ...acc, ...props };\r\n }, {});\r\n\r\n return (\r\n <Box\r\n as={cell.getState('tag') === 'td' ? 'td' : 'th'}\r\n {...cell.getState('domProperties')}\r\n {...pluginProps}\r\n data-colname={cell.getState('colName')}\r\n key={cell.getState('colName')}\r\n sx={{\r\n ...cell.getState('domProperties')?.style,\r\n position: 'relative',\r\n ...pluginProps.style,\r\n }}\r\n >\r\n {Renderer ? <Renderer cell={cell} /> : content}\r\n {controller.getState('allowResize') && <Resizer />}\r\n </Box>\r\n );\r\n })}\r\n </tr>\r\n );\r\n })}\r\n </thead>\r\n );\r\n});\r\n","import { observer } from 'mobx-react-lite';\r\nimport { Row as RowInstance } from '@apia/table2-controller';\r\nimport { useTable } from '../Table';\r\n\r\nconst RowContent = observer(({ row }: { row: RowInstance }) => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n const CellsRendererPlugin =\r\n controller.getApplicablePlugins('getRenderers')[0]?.().cell;\r\n\r\n return (\r\n <>\r\n {row.cells.map((cell, i) => {\r\n const Renderer = cell.getState('Renderer') || CellsRendererPlugin;\r\n const content = cell.getState('content');\r\n\r\n const isHidden =\r\n !controller.isColumnVisible(cell.getState('colName')) ||\r\n cell.getState('isHidden') ||\r\n cell\r\n .getTable()\r\n .getState('hiddenColumns')\r\n .has(cell.getState('colName'));\r\n\r\n return (\r\n <td\r\n {...cell.getState('domProperties')}\r\n {...plugins.reduce((acc, plugin) => {\r\n const props = plugin(cell, i);\r\n return { ...acc, ...props };\r\n }, {})}\r\n style={{\r\n display: isHidden ? 'none' : 'table-cell',\r\n ...cell.getState('domProperties')?.style,\r\n maxWidth: 0,\r\n }}\r\n data-colname={cell.getState('colName')}\r\n key={cell.getState('colName')}\r\n >\r\n {Renderer ? <Renderer cell={cell} /> : content}\r\n </td>\r\n );\r\n })}\r\n </>\r\n );\r\n});\r\n\r\nexport const Row = observer(\r\n ({ index, row }: { index: number; row: RowInstance }) => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n\r\n return (\r\n <tr\r\n {...row.getState('domProperties')}\r\n {...plugins.reduce((acc, plugin) => {\r\n const props = plugin(row, index);\r\n return { ...acc, ...props };\r\n }, {})}\r\n key={row.getState('id')}\r\n data-rowid={row.getState('id')}\r\n >\r\n <RowContent row={row} />\r\n </tr>\r\n );\r\n },\r\n);\r\n","import { observer } from 'mobx-react-lite';\r\nimport { useTable } from '../Table';\r\nimport { Row } from './Row';\r\n\r\nexport const Body = observer(() => {\r\n const controller = useTable();\r\n\r\n return (\r\n <tbody {...controller.body.getState('domProperties')}>\r\n {controller.body.getState('rows').map((row, i) => (\r\n <Row key={row.getState('id')} index={i} row={row} />\r\n ))}\r\n </tbody>\r\n );\r\n});\r\n","import { observer } from 'mobx-react-lite';\r\nimport { TableController } from '@apia/table2-controller';\r\nimport { createContext, HTMLAttributes, useContext } from 'react';\r\nimport { getVariant, Table as PrimitiveTable } from '@apia/theme';\r\nimport { Head } from './Head';\r\nimport { Body } from './Body/Body';\r\n\r\nexport const TableContext = createContext<TableController | null>(null);\r\nexport type TAvailableTables = 'primary' | 'secondary' | 'clean';\r\n\r\nexport function useTable() {\r\n return useContext(TableContext)!;\r\n}\r\n\r\nexport const Table = observer(\r\n ({\r\n controller,\r\n variant = 'primary',\r\n }: {\r\n controller: TableController;\r\n variant?: TAvailableTables;\r\n }) => {\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n const props: HTMLAttributes<HTMLElement> = plugins.reduce((acc, plugin) => {\r\n const props = plugin(controller, null);\r\n return { ...acc, ...props };\r\n }, {});\r\n\r\n return (\r\n <TableContext.Provider value={controller}>\r\n <PrimitiveTable\r\n {...props}\r\n className={`${controller.isEditionMode ? 'editionMode' : ''} ${props.className || ''}`}\r\n {...getVariant(`layout.common.tables.${variant}`)}\r\n >\r\n <Head />\r\n <Body />\r\n </PrimitiveTable>\r\n </TableContext.Provider>\r\n );\r\n },\r\n);\r\n","import {\r\n Row,\r\n Cell,\r\n CellState,\r\n TablePlugin,\r\n TableController,\r\n TableHead,\r\n TableBody,\r\n RowsGroup,\r\n Element,\r\n} from '@apia/table2-controller';\r\nimport { Box, Spinner } from '@apia/theme';\r\nimport { getLabel } from '@apia/util';\r\nimport { makeObservable, observable, action } from 'mobx';\r\nimport { observer } from 'mobx-react-lite';\r\nimport { ReactNode, useMemo, lazy, Suspense, HTMLAttributes } from 'react';\r\nimport { IconButton } from '@apia/components';\r\n\r\ntype AdditionalCellDataRetriever = (row: Row) => Promise<ReactNode>;\r\n\r\nclass AdditionalRow extends Row {}\r\n\r\nconst ExpandButtonRenderer = observer(({ cell }: { cell: AdditionalCell }) => {\r\n return (\r\n <Box\r\n sx={{\r\n transform: `rotate(${cell.expanded ? '90deg' : '0'})`,\r\n transition: 'transform 0.1s',\r\n }}\r\n >\r\n <IconButton\r\n icon=\"ArrowRight\"\r\n title={\r\n cell.expanded\r\n ? getLabel('lblCollapse').text\r\n : getLabel('lblExpand').text\r\n }\r\n onClick={() => {\r\n cell.toggle();\r\n }}\r\n />\r\n </Box>\r\n );\r\n});\r\n\r\nconst AdditionalInfoRenderer = ({ cell }: { cell: AdditionalInfoCell }) => {\r\n const C = useMemo(\r\n () =>\r\n lazy(async () => {\r\n const result = await cell.retriever(cell.getRow()!.getPreviousRow());\r\n return { default: () => result as ReactNode };\r\n }),\r\n [cell],\r\n );\r\n return (\r\n <Suspense fallback={<Spinner />}>\r\n <C />\r\n </Suspense>\r\n );\r\n};\r\n\r\nclass AdditionalInfoCell extends Cell {\r\n constructor(\r\n props: CellState,\r\n public retriever: AdditionalCellDataRetriever,\r\n ) {\r\n super(props);\r\n }\r\n}\r\n\r\nclass AdditionalCell extends Cell {\r\n expanded = false;\r\n\r\n constructor(\r\n props: CellState,\r\n public retriever: AdditionalCellDataRetriever,\r\n ) {\r\n super(props);\r\n\r\n makeObservable(this, {\r\n expanded: observable,\r\n expand: action,\r\n toggle: action,\r\n collapse: action,\r\n });\r\n }\r\n\r\n private collapseAction() {\r\n const row = this.getRow()!;\r\n const container = row.getContainer()!;\r\n const index = container.getRowIndex(row);\r\n\r\n const nextRow = container.getRowByIndex(index + 1);\r\n if (nextRow instanceof AdditionalRow) {\r\n nextRow.remove();\r\n this.expanded = false;\r\n }\r\n }\r\n\r\n private expandAction() {\r\n const row = this.getRow()!;\r\n const container = row.getContainer()!;\r\n const index = container.getRowIndex(row);\r\n\r\n const nextRow = container.getRowByIndex(index + 1);\r\n\r\n if (!(nextRow instanceof AdditionalRow)) {\r\n const newRow = new AdditionalRow(`${row.getState('id')}-additional`);\r\n newRow.addCell(\r\n new AdditionalInfoCell(\r\n {\r\n colName: 'additional',\r\n Renderer: AdditionalInfoRenderer as any,\r\n domProperties: { colSpan: row.cells.length },\r\n },\r\n this.retriever,\r\n ),\r\n );\r\n container.insertAfter(row, newRow);\r\n this.expanded = true;\r\n }\r\n }\r\n\r\n collapse() {\r\n const row = this.getRow()!;\r\n const container = row.getContainer()!;\r\n const index = container.getRowIndex(row);\r\n\r\n if (index !== -1) {\r\n this.collapseAction();\r\n }\r\n }\r\n\r\n expand() {\r\n const row = this.getRow()!;\r\n const container = row.getContainer()!;\r\n const index = container.getRowIndex(row);\r\n\r\n if (index !== -1) {\r\n this.expandAction();\r\n }\r\n }\r\n\r\n toggle() {\r\n if (this.expanded) {\r\n this.collapseAction();\r\n } else {\r\n this.expandAction();\r\n }\r\n }\r\n}\r\n\r\nexport class AdditionalInformationPlugin implements TablePlugin {\r\n constructor(private onExpand: AdditionalCellDataRetriever) {}\r\n\r\n onAddRow(_controller: TableController, target: RowsGroup<any>, newRow: Row) {\r\n if (!(newRow instanceof AdditionalRow)) {\r\n let newCell: Cell | undefined;\r\n\r\n if (target instanceof TableHead) {\r\n newCell = new Cell({\r\n colName: 'additional',\r\n Renderer: () => null,\r\n domProperties: {\r\n className: 'additional-column',\r\n },\r\n });\r\n } else {\r\n newCell = new AdditionalCell(\r\n {\r\n colName: 'additional',\r\n Renderer: ExpandButtonRenderer as any,\r\n domProperties: {\r\n className: 'additional-column',\r\n },\r\n },\r\n this.onExpand,\r\n );\r\n }\r\n\r\n if (newRow.cells.length) {\r\n newRow.addCellBefore(newRow.cells[0], newCell);\r\n } else {\r\n newRow.addCell(newCell);\r\n }\r\n }\r\n }\r\n\r\n useElementDomProps(\r\n _controller: TableController,\r\n element: TableController | Element<any>,\r\n _context: any,\r\n ): HTMLAttributes<HTMLElement> {\r\n if (element instanceof Row && element.getContainer() instanceof TableBody) {\r\n return {\r\n 'aria-expanded':\r\n element instanceof AdditionalRow\r\n ? undefined\r\n : (\r\n element.cells.find(\r\n (c) => c instanceof AdditionalCell,\r\n ) as AdditionalCell\r\n )?.expanded,\r\n onKeyDown: (ev) => {\r\n let row = element as Row;\r\n if (element instanceof AdditionalRow) {\r\n row = row\r\n .getContainer()\r\n ?.getRowByIndex(row.getContainer()!.getRowIndex(row) - 1) as Row;\r\n }\r\n\r\n if (ev.code === 'ArrowRight' && ev.ctrlKey) {\r\n ev.stopPropagation();\r\n ev.preventDefault();\r\n (\r\n row.cells.find(\r\n (c) => c instanceof AdditionalCell,\r\n ) as AdditionalCell\r\n )?.expand();\r\n } else if (ev.code === 'ArrowLeft' && ev.ctrlKey) {\r\n ev.stopPropagation();\r\n ev.preventDefault();\r\n (\r\n row.cells.find(\r\n (c) => c instanceof AdditionalCell,\r\n ) as AdditionalCell\r\n )?.collapse();\r\n if (element instanceof AdditionalRow) {\r\n row.cells[0].focus();\r\n }\r\n }\r\n },\r\n };\r\n }\r\n\r\n return {};\r\n }\r\n}\r\n","import {\r\n TablePlugin,\r\n TableController,\r\n Cell,\r\n TableHead,\r\n Element,\r\n} from '@apia/table2-controller';\r\n\r\nexport class SessionStorageResizePlugin implements TablePlugin {\r\n constructor(private prefix: string) {}\r\n\r\n private buildId(colName: string) {\r\n return `${window.TAB_ID_REQUEST}_${this.prefix}_${colName}`;\r\n }\r\n\r\n onResize(_controller: TableController, colName: string, newSize: number) {\r\n sessionStorage.setItem(this.buildId(colName), String(newSize));\r\n }\r\n useElementDomProps(\r\n _controller: TableController,\r\n element: TableController | Element<any>,\r\n ) {\r\n if (element instanceof Cell) {\r\n if (element.getRow()!.getContainer() instanceof TableHead) {\r\n const storedSize = sessionStorage.getItem(\r\n this.buildId(element.getState('colName')),\r\n );\r\n\r\n if (storedSize) {\r\n return {\r\n style: {\r\n maxWidth: `${Number.parseInt(storedSize)}px`,\r\n width: `${Number.parseInt(storedSize)}px`,\r\n },\r\n };\r\n }\r\n }\r\n }\r\n return {};\r\n }\r\n}\r\n"],"names":["ev","props","PrimitiveTable","Row"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/component/Resizer.tsx","../src/component/Head/HeaderRow.tsx","../src/component/Head/ToggleFiltersButton.tsx","../src/component/Head/ColumnsRow.tsx","../src/component/filters/InputFilter.tsx","../src/component/filters/DateFilter.tsx","../src/component/filters/FilterRender.tsx","../src/component/Head/FiltersRow.tsx","../src/component/Head/Head.tsx","../src/component/Body/AdditionalCellRenderer.tsx","../src/component/Body/Row.tsx","../src/component/Body/Body.tsx","../src/component/Table.tsx","../src/plugins/SessionStorageResizePlugin.ts"],"sourcesContent":["import { useTable } from './Table';\r\n\r\nexport const Resizer = () => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('onResize');\r\n\r\n return (\r\n <div\r\n style={{\r\n cursor: 'ew-resize',\r\n position: 'absolute',\r\n right: 0,\r\n width: '30px',\r\n opacity: 0,\r\n height: '100%',\r\n top: 0,\r\n transform: 'translateX(15px)',\r\n zIndex: 2,\r\n }}\r\n className=\"resizer\"\r\n onMouseDown={(ev) => {\r\n const el = (ev.target as HTMLElement)?.closest?.('.resizer');\r\n const th = (ev.target as HTMLElement)?.closest?.('th');\r\n\r\n const colName = th?.dataset.colname;\r\n\r\n if (el instanceof HTMLElement && th instanceof HTMLElement && colName) {\r\n const initialX = ev.clientX;\r\n const initialWidth = th.getBoundingClientRect().width;\r\n\r\n const handleResize = (ev: MouseEvent) => {\r\n const dif = ev.clientX - initialX;\r\n th.style.width = `${initialWidth + dif}px`;\r\n th.style.maxWidth = `${initialWidth + dif}px`;\r\n\r\n plugins.forEach((c) => c(colName, initialWidth + dif));\r\n };\r\n\r\n const breakSubscription = () => {\r\n document.removeEventListener('mousemove', handleResize);\r\n document.removeEventListener('mouseup', breakSubscription);\r\n };\r\n\r\n document.addEventListener('mousemove', handleResize);\r\n document.addEventListener('mouseup', breakSubscription);\r\n }\r\n }}\r\n >\r\n {' '}\r\n </div>\r\n );\r\n};\r\n","import { Row } from '@apia/table2-controller';\r\nimport { observer } from 'mobx-react-lite';\r\nimport { ReactNode } from 'react';\r\nimport { useTable } from '../Table';\r\n\r\nexport const HeaderRow = observer(\r\n ({\r\n children,\r\n className,\r\n row,\r\n rowIndex,\r\n }: {\r\n children?: ReactNode;\r\n className?: string;\r\n row: Row;\r\n rowIndex: number;\r\n }) => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n const pluginProps = plugins.reduce((acc, plugin) => {\r\n const props = plugin(row, rowIndex);\r\n return { ...acc, ...props };\r\n }, {} as any);\r\n\r\n return (\r\n <tr\r\n {...row.getState('domProperties')}\r\n {...pluginProps}\r\n className={`${className || ''} ${row.getState('domProperties')?.className || ''} ${pluginProps.className || ''}`}\r\n key={row.getState('id')}\r\n data-rowid={row.getState('id')}\r\n >\r\n {children}\r\n </tr>\r\n );\r\n },\r\n);\r\n","import { Icon } from '@apia/icons';\r\n\r\nexport const ToggleFiltersButton = () => {\r\n return <Icon title=\"\" name=\"Filter\" />;\r\n};\r\n","import { observer } from 'mobx-react-lite';\r\nimport { useTable } from '../Table';\r\nimport { HeaderRow } from './HeaderRow';\r\nimport { Box } from '@apia/theme';\r\nimport { Resizer } from '../Resizer';\r\nimport { AdditionalCell, Cell, Column } from '@apia/table2-controller';\r\nimport { Icon } from '@apia/icons';\r\nimport { ToggleFiltersButton } from './ToggleFiltersButton';\r\n\r\nconst iconsMap = Object.freeze({\r\n ASC: 'SortedUp',\r\n DESC: 'SortedDown',\r\n NONE: 'SortedNone',\r\n});\r\n\r\nexport const DefaultColumnRenderer = observer(({ cell }: { cell: Cell }) => {\r\n const controller = useTable();\r\n\r\n const icon =\r\n cell instanceof Column\r\n ? iconsMap[cell.getState('sortState') || 'NONE']\r\n : null;\r\n\r\n return (\r\n <span className=\"headButton__container\">\r\n <span className=\"headButton__label\">\r\n <span>{cell.getState('content')}</span>\r\n </span>\r\n {icon && <Icon title=\"\" name={icon} />}\r\n {!(cell instanceof AdditionalCell) &&\r\n controller.getState('allowResize') && <Resizer />}\r\n </span>\r\n );\r\n});\r\n\r\nexport const ColumnsRow = observer(() => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n const CellsRendererPlugin =\r\n controller.getApplicablePlugins('getRenderers')[0]?.().cell;\r\n\r\n const row = controller.head.getHeaderRow();\r\n if (!row) {\r\n return null;\r\n }\r\n\r\n return (\r\n <HeaderRow row={row} rowIndex={0}>\r\n {row.cells.map((cell, j) => {\r\n let Renderer = cell.getState('Renderer') || CellsRendererPlugin;\r\n if (cell instanceof AdditionalCell) {\r\n Renderer = ToggleFiltersButton;\r\n }\r\n\r\n const pluginProps = plugins.reduce<any>((acc, plugin) => {\r\n const props = plugin(cell, j);\r\n return { ...acc, ...props };\r\n }, {});\r\n\r\n const handleClick = () => {\r\n if (cell instanceof Column) {\r\n controller.sortColumn(cell);\r\n } else if (cell instanceof AdditionalCell) {\r\n controller.toggleFiltersRowVisibility();\r\n }\r\n };\r\n\r\n return (\r\n <Box\r\n as={cell.getState('tag') === 'td' ? 'td' : 'th'}\r\n {...cell.getState('domProperties')}\r\n {...pluginProps}\r\n data-colname={cell.getState('colName')}\r\n key={cell.getState('colName')}\r\n sx={{\r\n ...cell.getState('domProperties')?.style,\r\n position: 'relative',\r\n ...pluginProps.style,\r\n }}\r\n onKeyUp={(ev) => {\r\n if (ev.key === 'Enter') {\r\n handleClick();\r\n }\r\n }}\r\n onClick={() => {\r\n handleClick();\r\n }}\r\n >\r\n {Renderer ? (\r\n <Renderer cell={cell} />\r\n ) : (\r\n <DefaultColumnRenderer cell={cell} />\r\n )}\r\n </Box>\r\n );\r\n })}\r\n </HeaderRow>\r\n );\r\n});\r\n","import { observer } from 'mobx-react-lite';\r\nimport { Input } from '@apia/theme';\r\nimport { FilterRenderer } from '@apia/table2-controller';\r\n\r\nexport const InputFilter: FilterRenderer = observer(({ cell }) => {\r\n return (\r\n <Input\r\n value={cell.getValue()}\r\n onChange={(ev) => {\r\n cell.setValue(ev.target.value);\r\n }}\r\n onKeyDown={(ev) => {\r\n if (ev.code === 'Enter') {\r\n cell.fire('filterPressEnter');\r\n }\r\n }}\r\n onBlur={() => {\r\n cell.fire('filterBlur');\r\n }}\r\n />\r\n );\r\n});\r\n","import { observer } from 'mobx-react-lite';\r\nimport { DateInput } from '@apia/components';\r\nimport { FilterRenderer } from '@apia/table2-controller';\r\n\r\nexport const DateFilter: FilterRenderer = observer(({ cell }) => {\r\n return (\r\n <DateInput\r\n value={cell.getValue()}\r\n onChange={(ev) => {\r\n cell.setValue(ev);\r\n }}\r\n onBlur={() => {\r\n cell.fire('filterBlur');\r\n }}\r\n />\r\n );\r\n});\r\n","import { observer } from 'mobx-react-lite';\r\nimport { InputFilter } from './InputFilter';\r\nimport { Input, Label } from '@apia/theme';\r\nimport { DateFilter } from './DateFilter';\r\nimport { FilterRenderer } from '@apia/table2-controller';\r\n\r\nexport const FilterRender: FilterRenderer = observer(({ cell }) => {\r\n let Component: FilterRenderer | null = null;\r\n\r\n switch (cell?.getState('type')) {\r\n case 'INPUT':\r\n Component = InputFilter;\r\n break;\r\n case 'DATE':\r\n Component = DateFilter;\r\n break;\r\n case 'DATERANGE':\r\n Component = () => <>Not implemented</>;\r\n break;\r\n }\r\n\r\n if (!Component) {\r\n return <Input disabled />;\r\n }\r\n\r\n if (!cell.asAdditional()) {\r\n return <Component cell={cell} />;\r\n }\r\n\r\n return (\r\n <Label>\r\n {cell.getState('title')}\r\n <Component cell={cell} />\r\n </Label>\r\n );\r\n});\r\n","import { observer } from 'mobx-react-lite';\r\nimport { useTable } from '../Table';\r\nimport { HeaderRow } from './HeaderRow';\r\nimport { Box } from '@apia/theme';\r\nimport { FilterRender } from '../filters/FilterRender';\r\n\r\nexport const FiltersRow = observer(() => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n\r\n const row = controller.head.getFiltersRow();\r\n if (!row || row.getState('isHidden')) {\r\n return null;\r\n }\r\n\r\n return (\r\n <HeaderRow row={row} rowIndex={1} className=\"filtersRow\">\r\n {row.getCells().map((cell, j) => {\r\n const Renderer = cell.getState('Renderer') || FilterRender;\r\n const content = cell.getState('content');\r\n\r\n const pluginProps = plugins.reduce<any>((acc, plugin) => {\r\n const props = plugin(cell, j);\r\n return { ...acc, ...props };\r\n }, {});\r\n\r\n return (\r\n <Box\r\n as={'td'}\r\n {...cell.getState('domProperties')}\r\n {...pluginProps}\r\n data-colname={cell.getState('colName')}\r\n key={cell.getState('colName')}\r\n sx={{\r\n ...cell.getState('domProperties')?.style,\r\n ...pluginProps.style,\r\n }}\r\n >\r\n {Renderer ? <Renderer cell={cell} /> : content}\r\n </Box>\r\n );\r\n })}\r\n </HeaderRow>\r\n );\r\n});\r\n","import { observer } from 'mobx-react-lite';\r\nimport { useTable } from '../Table';\r\nimport { Resizer } from '../Resizer';\r\nimport { Box } from '@apia/theme';\r\nimport { ColumnsRow } from './ColumnsRow';\r\nimport { FiltersRow } from './FiltersRow';\r\nimport { HeaderRow } from './HeaderRow';\r\n\r\nexport const Head = observer(() => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n const CellsRendererPlugin =\r\n controller.getApplicablePlugins('getRenderers')[0]?.().cell;\r\n\r\n /**\r\n * We have a problem here.\r\n *\r\n * The table can be built with columns and filters, or by adding rows to the header\r\n * in order to build custom tables.\r\n *\r\n * We need to detect what is the current situation here.\r\n */\r\n\r\n if (controller.head.getHeaderRow()) {\r\n return (\r\n <thead {...controller.head.getState('domProperties')}>\r\n <ColumnsRow />\r\n <FiltersRow />\r\n </thead>\r\n );\r\n }\r\n\r\n return (\r\n <thead {...controller.head.getState('domProperties')}>\r\n {[...controller.head.rows.values()].map((row, i) => {\r\n return (\r\n <HeaderRow row={row} rowIndex={i}>\r\n {row.cells.map((cell, j) => {\r\n const Renderer = cell.getState('Renderer') || CellsRendererPlugin;\r\n const content = cell.getState('content');\r\n\r\n const pluginProps = plugins.reduce<any>((acc, plugin) => {\r\n const props = plugin(cell, j);\r\n return { ...acc, ...props };\r\n }, {});\r\n\r\n if (cell.getState('isHidden')) {\r\n return null;\r\n }\r\n\r\n return (\r\n <Box\r\n as={cell.getState('tag') === 'td' ? 'td' : 'th'}\r\n {...cell.getState('domProperties')}\r\n {...pluginProps}\r\n data-colname={cell.getState('colName')}\r\n key={cell.getState('colName')}\r\n sx={{\r\n ...cell.getState('domProperties')?.style,\r\n position: 'relative',\r\n ...pluginProps.style,\r\n }}\r\n >\r\n {Renderer ? <Renderer cell={cell} /> : content}\r\n {controller.getState('allowResize') && <Resizer />}\r\n </Box>\r\n );\r\n })}\r\n </HeaderRow>\r\n );\r\n })}\r\n </thead>\r\n );\r\n});\r\n","import { IconButton } from '@apia/components';\r\nimport { AdditionalCell, Cell } from '@apia/table2-controller';\r\nimport { observer } from 'mobx-react-lite';\r\n\r\nexport const AdditionalCellRenderer = observer(\r\n ({ cell: _ }: { cell: Cell }) => {\r\n const cell = _ as AdditionalCell;\r\n\r\n if (!cell.getTable().hasAdditionalContent()) {\r\n return null;\r\n }\r\n\r\n return (\r\n <IconButton\r\n className={`moreInformationButton ${cell.getState('expanded') ? 'expanded' : ''}`}\r\n icon={'ArrowRight'}\r\n onClick={() => {\r\n cell.onToggle();\r\n }}\r\n />\r\n );\r\n },\r\n);\r\n","import { observer } from 'mobx-react-lite';\r\nimport { AdditionalCell, Row as RowInstance } from '@apia/table2-controller';\r\nimport { useTable } from '../Table';\r\nimport { AdditionalCellRenderer } from './AdditionalCellRenderer';\r\n\r\nconst RowContent = observer(({ row }: { row: RowInstance }) => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n const CellsRendererPlugin =\r\n controller.getApplicablePlugins('getRenderers')[0]?.().cell;\r\n\r\n return (\r\n <>\r\n {row.cells.map((cell, i) => {\r\n const Renderer =\r\n cell.getState('Renderer') ||\r\n (cell instanceof AdditionalCell\r\n ? AdditionalCellRenderer\r\n : CellsRendererPlugin);\r\n const content = cell.getState('content');\r\n\r\n const isHidden =\r\n controller.head\r\n .getHeaderRow()\r\n ?.getColumn(cell.getColumnName())\r\n .isHidden?.() ??\r\n controller.head.rows[0]?.cells\r\n .find((c) => c.getState('colName') === cell.getState('colName'))\r\n ?.getState('isHidden');\r\n\r\n if (\r\n controller.head\r\n .getHeaderRow()\r\n ?.getColumn(cell.getColumnName())\r\n .asAdditional?.()\r\n ) {\r\n return null;\r\n }\r\n\r\n return (\r\n <td\r\n {...cell.getState('domProperties')}\r\n {...plugins.reduce((acc, plugin) => {\r\n const props = plugin(cell, i);\r\n return { ...acc, ...props };\r\n }, {})}\r\n style={{\r\n display: isHidden ? 'none' : 'table-cell',\r\n ...cell.getState('domProperties')?.style,\r\n maxWidth: 0,\r\n }}\r\n data-colname={cell.getState('colName')}\r\n key={cell.getState('colName')}\r\n >\r\n {Renderer ? <Renderer cell={cell} /> : content}\r\n </td>\r\n );\r\n })}\r\n </>\r\n );\r\n});\r\n\r\nexport const Row = observer(\r\n ({ index, row }: { index: number; row: RowInstance }) => {\r\n const controller = useTable();\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n\r\n return (\r\n <>\r\n {' '}\r\n <tr\r\n {...row.getState('domProperties')}\r\n {...plugins.reduce((acc, plugin) => {\r\n const props = plugin(row, index);\r\n return { ...acc, ...props };\r\n }, {})}\r\n key={row.getState('id')}\r\n data-rowid={row.getState('id')}\r\n >\r\n <RowContent row={row} />\r\n </tr>\r\n </>\r\n );\r\n },\r\n);\r\n","import { observer } from 'mobx-react-lite';\r\nimport { useTable } from '../Table';\r\nimport { Row } from './Row';\r\n\r\nexport const Body = observer(() => {\r\n const controller = useTable();\r\n\r\n return (\r\n <tbody {...controller.body.getState('domProperties')}>\r\n {controller.body.getState('rows').map((row, i) => (\r\n <Row key={row.getState('id')} index={i} row={row} />\r\n ))}\r\n </tbody>\r\n );\r\n});\r\n","import { observer } from 'mobx-react-lite';\r\nimport { TableController } from '@apia/table2-controller';\r\nimport { createContext, HTMLAttributes, useContext } from 'react';\r\nimport { getVariant, Table as PrimitiveTable } from '@apia/theme';\r\nimport { Head } from './Head/Head';\r\nimport { Body } from './Body/Body';\r\n\r\nexport const TableContext = createContext<TableController | null>(null);\r\nexport type TAvailableTables = 'primary' | 'secondary' | 'clean';\r\n\r\nexport function useTable() {\r\n return useContext(TableContext)!;\r\n}\r\n\r\nexport const Table = observer(\r\n ({\r\n controller,\r\n variant = 'primary',\r\n }: {\r\n controller: TableController;\r\n variant?: TAvailableTables;\r\n }) => {\r\n const plugins = controller.getApplicablePlugins('useElementDomProps');\r\n const props: HTMLAttributes<HTMLElement> = plugins.reduce((acc, plugin) => {\r\n const props = plugin(controller, null);\r\n return { ...acc, ...props };\r\n }, {});\r\n\r\n return (\r\n <TableContext.Provider value={controller}>\r\n <PrimitiveTable\r\n {...props}\r\n className={`${controller.isEditionMode ? 'editionMode' : ''} ${props.className || ''}`}\r\n {...getVariant(`layout.common.tables.${variant}`)}\r\n >\r\n <Head />\r\n <Body />\r\n </PrimitiveTable>\r\n </TableContext.Provider>\r\n );\r\n },\r\n);\r\n","import {\r\n TablePlugin,\r\n TableController,\r\n Cell,\r\n TableHead,\r\n Element,\r\n AdditionalCell,\r\n} from '@apia/table2-controller';\r\n\r\nexport class SessionStorageResizePlugin implements TablePlugin {\r\n constructor(private prefix: string) {}\r\n\r\n private buildId(colName: string) {\r\n return `${window.TAB_ID_REQUEST}_${this.prefix}_${colName}`;\r\n }\r\n\r\n onResize(_controller: TableController, colName: string, newSize: number) {\r\n sessionStorage.setItem(this.buildId(colName), String(newSize));\r\n }\r\n useElementDomProps(\r\n _controller: TableController,\r\n element: TableController | Element<any>,\r\n ) {\r\n if (element instanceof Cell && !(element instanceof AdditionalCell)) {\r\n if (element.getRow()!.getContainer() instanceof TableHead) {\r\n const storedSize = sessionStorage.getItem(\r\n this.buildId(element.getState('colName')),\r\n );\r\n\r\n if (storedSize) {\r\n return {\r\n style: {\r\n maxWidth: `${Number.parseInt(storedSize)}px`,\r\n width: `${Number.parseInt(storedSize)}px`,\r\n },\r\n };\r\n }\r\n }\r\n }\r\n return {};\r\n }\r\n}\r\n"],"names":["ev","props","PrimitiveTable"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apia/table2-component",
3
- "version": "4.0.43",
3
+ "version": "4.0.44",
4
4
  "sideEffects": false,
5
5
  "author": "Alexis Leite <alexisleite@live.com>",
6
6
  "main": "dist/index.js",
@@ -30,13 +30,13 @@
30
30
  "registry": "https://registry.npmjs.org/"
31
31
  },
32
32
  "dependencies": {
33
- "@apia/components": "^4.0.43",
34
- "@apia/icons": "^4.0.43",
35
- "@apia/table2-controller": "^4.0.43",
36
- "@apia/theme": "^4.0.43",
37
- "@apia/util": "^4.0.43",
33
+ "@apia/components": "^4.0.44",
34
+ "@apia/icons": "^4.0.44",
35
+ "@apia/table2-controller": "^4.0.44",
36
+ "@apia/theme": "^4.0.44",
37
+ "@apia/util": "^4.0.44",
38
38
  "mobx": "^6.13.7",
39
39
  "mobx-react-lite": "^4.1.0"
40
40
  },
41
- "gitHead": "f4c40b69ba514626379ac45021c254ad661826f1"
41
+ "gitHead": "0822e3a7f4a7fa49b47087e8097caab678d36ef6"
42
42
  }