@equinor/apollo-components 1.8.0 → 1.8.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.
package/dist/index.d.ts CHANGED
@@ -71,6 +71,7 @@ interface CellConfig<T> {
71
71
  declare type RowSelectionMode = 'single' | 'multiple';
72
72
  declare type DataTableConfig<T> = {
73
73
  height?: string;
74
+ tableLayout?: 'auto' | 'fixed';
74
75
  sortable?: boolean;
75
76
  virtual?: boolean;
76
77
  rowSelectionMode?: RowSelectionMode;
package/dist/index.js CHANGED
@@ -195,24 +195,12 @@ var ChipsCell = (props) => {
195
195
  // src/cells/DynamicCell.tsx
196
196
  var import_eds_core_react4 = require("@equinor/eds-core-react");
197
197
  var import_react_table = require("@tanstack/react-table");
198
- var import_styled_components6 = __toESM(require("styled-components"));
198
+ var import_styled_components5 = __toESM(require("styled-components"));
199
199
 
200
200
  // src/cells/StickyCell.tsx
201
201
  var import_eds_core_react3 = require("@equinor/eds-core-react");
202
202
  var import_styled_components4 = __toESM(require("styled-components"));
203
- var StickyCell = (0, import_styled_components4.default)(import_eds_core_react3.Table.Cell)`
204
- position: sticky;
205
- right: 0;
206
- top: 0;
207
- z-index: 4;
208
- `;
209
- var StickyHeaderCell = (0, import_styled_components4.default)(StickyCell)`
210
- z-index: 5;
211
- `;
212
-
213
- // src/cells/styles.ts
214
- var import_styled_components5 = require("styled-components");
215
- var leftCellShadow = import_styled_components5.css`
203
+ var leftCellShadow = import_styled_components4.css`
216
204
  &:before {
217
205
  box-shadow: -1px 0 1px -1px inset;
218
206
  content: ' ';
@@ -223,15 +211,24 @@ var leftCellShadow = import_styled_components5.css`
223
211
  width: 1px;
224
212
  }
225
213
  `;
214
+ var StickyCell = (0, import_styled_components4.default)(import_eds_core_react3.Table.Cell)`
215
+ position: sticky;
216
+ right: 0;
217
+ top: 0;
218
+ z-index: 4;
219
+ background-clip: padding-box;
220
+ ${leftCellShadow}
221
+ `;
222
+ var StickyHeaderCell = (0, import_styled_components4.default)(StickyCell)`
223
+ z-index: 5;
224
+ `;
226
225
 
227
226
  // src/cells/DynamicCell.tsx
228
227
  var import_jsx_runtime4 = require("react/jsx-runtime");
229
- var StyledStickyCell = (0, import_styled_components6.default)(StickyCell)`
230
- background-clip: padding-box;
231
- ${leftCellShadow}
228
+ var StyledStickyCell = (0, import_styled_components5.default)(StickyCell)`
232
229
  ${(props) => props.backgroundColor ? `background-color: ${props.backgroundColor} !important;` : ``}
233
230
  `;
234
- var StyledCell = (0, import_styled_components6.default)(import_eds_core_react4.Table.Cell)`
231
+ var StyledCell = (0, import_styled_components5.default)(import_eds_core_react4.Table.Cell)`
235
232
  ${(props) => props.backgroundColor ? `background-color: ${props.backgroundColor} !important;` : ``}
236
233
  `;
237
234
  function DynamicCell({ cell, highlight, getStickyCellColor }) {
@@ -253,12 +250,12 @@ function DynamicCell({ cell, highlight, getStickyCellColor }) {
253
250
 
254
251
  // src/cells/HierarchyCell.tsx
255
252
  var import_eds_tokens4 = require("@equinor/eds-tokens");
256
- var import_styled_components8 = __toESM(require("styled-components"));
253
+ var import_styled_components7 = __toESM(require("styled-components"));
257
254
 
258
255
  // src/cells/TypographyCustom.tsx
259
256
  var import_eds_core_react5 = require("@equinor/eds-core-react");
260
257
  var import_eds_tokens3 = require("@equinor/eds-tokens");
261
- var import_styled_components7 = __toESM(require("styled-components"));
258
+ var import_styled_components6 = __toESM(require("styled-components"));
262
259
  var import_jsx_runtime5 = require("react/jsx-runtime");
263
260
  var truncateStyle = {
264
261
  overflow: "hidden",
@@ -294,7 +291,7 @@ var TypographyCustom = (props) => {
294
291
  style: { ...styleFromProps, ...noWrap ? truncateStyle : {} }
295
292
  });
296
293
  };
297
- var HoverCapture = import_styled_components7.default.div`
294
+ var HoverCapture = import_styled_components6.default.div`
298
295
  position: relative;
299
296
  z-index: 0;
300
297
 
@@ -305,7 +302,7 @@ var HoverCapture = import_styled_components7.default.div`
305
302
  opacity: 1;
306
303
  }
307
304
  `;
308
- var ShowAllWrapperWrapper = import_styled_components7.default.div`
305
+ var ShowAllWrapperWrapper = import_styled_components6.default.div`
309
306
  position: absolute;
310
307
  z-index: 1;
311
308
  pointer-events: none;
@@ -317,14 +314,14 @@ var ShowAllWrapperWrapper = import_styled_components7.default.div`
317
314
 
318
315
  // src/cells/HierarchyCell.tsx
319
316
  var import_jsx_runtime6 = require("react/jsx-runtime");
320
- var CellWrapper = (0, import_styled_components8.default)(TypographyCustom)`
317
+ var CellWrapper = (0, import_styled_components7.default)(TypographyCustom)`
321
318
  height: 100%;
322
319
  display: flex;
323
320
  align-items: center;
324
321
 
325
322
  ${({ depth, expanded }) => expanded && depth === 0 && "font-weight: bold;"}
326
323
 
327
- ${({ depth }) => depth > 0 && import_styled_components8.css`
324
+ ${({ depth }) => depth > 0 && import_styled_components7.css`
328
325
  border-left: 3px solid ${import_eds_tokens4.tokens.colors.infographic.primary__moss_green_34.hex};
329
326
  gap: 0.5rem;
330
327
  .--divider {
@@ -352,9 +349,9 @@ function HierarchyCell(cell, options = {}) {
352
349
  // src/cells/SelectColumnDef.tsx
353
350
  var import_eds_core_react6 = require("@equinor/eds-core-react");
354
351
  var import_eds_icons3 = require("@equinor/eds-icons");
355
- var import_styled_components9 = __toESM(require("styled-components"));
352
+ var import_styled_components8 = __toESM(require("styled-components"));
356
353
  var import_jsx_runtime7 = require("react/jsx-runtime");
357
- var CellWrapper2 = import_styled_components9.default.div`
354
+ var CellWrapper2 = import_styled_components8.default.div`
358
355
  display: flex;
359
356
  align-items: center;
360
357
  width: 48px;
@@ -410,7 +407,7 @@ function SelectColumnDef(selectionMode) {
410
407
  var import_react_table3 = require("@tanstack/react-table");
411
408
  var import_jotai3 = require("jotai");
412
409
  var import_react4 = require("react");
413
- var import_styled_components15 = __toESM(require("styled-components"));
410
+ var import_styled_components14 = __toESM(require("styled-components"));
414
411
 
415
412
  // src/DataTable/atoms.ts
416
413
  var import_jotai = require("jotai");
@@ -425,9 +422,9 @@ var import_eds_core_react11 = require("@equinor/eds-core-react");
425
422
 
426
423
  // src/DataTable/components/PlaceholderRow.tsx
427
424
  var import_eds_core_react7 = require("@equinor/eds-core-react");
428
- var import_styled_components10 = __toESM(require("styled-components"));
425
+ var import_styled_components9 = __toESM(require("styled-components"));
429
426
  var import_jsx_runtime8 = require("react/jsx-runtime");
430
- var PlaceholderTextWrapper = import_styled_components10.default.div`
427
+ var PlaceholderTextWrapper = import_styled_components9.default.div`
431
428
  display: flex;
432
429
  justify-content: center;
433
430
  `;
@@ -453,17 +450,14 @@ var import_eds_core_react9 = require("@equinor/eds-core-react");
453
450
  var import_eds_core_react8 = require("@equinor/eds-core-react");
454
451
  var import_eds_icons4 = require("@equinor/eds-icons");
455
452
  var import_react_table2 = require("@tanstack/react-table");
456
- var import_styled_components11 = __toESM(require("styled-components"));
453
+ var import_styled_components10 = __toESM(require("styled-components"));
457
454
  var import_jsx_runtime9 = require("react/jsx-runtime");
458
- var HeaderDiv = import_styled_components11.default.div`
455
+ var HeaderDiv = import_styled_components10.default.div`
459
456
  display: flex;
460
457
  align-items: center;
461
458
  gap: 0.25rem;
462
459
  z-index: 5;
463
460
  `;
464
- var StyledStickyCell2 = (0, import_styled_components11.default)(StickyCell)`
465
- ${leftCellShadow}
466
- `;
467
461
  var HeaderCell = ({ header }) => {
468
462
  var _a;
469
463
  const style = {
@@ -476,7 +470,7 @@ var HeaderCell = ({ header }) => {
476
470
  colSpan: header.colSpan
477
471
  };
478
472
  if ((_a = header.column.columnDef.meta) == null ? void 0 : _a.sticky)
479
- return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(StyledStickyCell2, {
473
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(StickyHeaderCell, {
480
474
  ...cellProps,
481
475
  children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(HeaderContent, {
482
476
  header
@@ -605,18 +599,18 @@ function BasicTable({
605
599
  var import_eds_core_react14 = require("@equinor/eds-core-react");
606
600
  var import_eds_icons7 = require("@equinor/eds-icons");
607
601
  var import_jotai2 = require("jotai");
608
- var import_styled_components14 = __toESM(require("styled-components"));
602
+ var import_styled_components13 = __toESM(require("styled-components"));
609
603
 
610
604
  // src/DataTable/filters/DebouncedInput.tsx
611
605
  var import_eds_core_react12 = require("@equinor/eds-core-react");
612
606
  var import_eds_icons5 = require("@equinor/eds-icons");
613
607
  var import_react2 = require("react");
614
- var import_styled_components12 = __toESM(require("styled-components"));
608
+ var import_styled_components11 = __toESM(require("styled-components"));
615
609
  var import_jsx_runtime13 = require("react/jsx-runtime");
616
- var Wrapper3 = import_styled_components12.default.div`
610
+ var Wrapper3 = import_styled_components11.default.div`
617
611
  width: 200px;
618
612
  `;
619
- var CloseButton = (0, import_styled_components12.default)(import_eds_core_react12.Button)`
613
+ var CloseButton = (0, import_styled_components11.default)(import_eds_core_react12.Button)`
620
614
  width: 24px;
621
615
  height: 24px;
622
616
  `;
@@ -677,7 +671,7 @@ var fuzzyFilter = (row, columnId, value, addMeta) => {
677
671
  var import_eds_core_react13 = require("@equinor/eds-core-react");
678
672
  var import_eds_icons6 = require("@equinor/eds-icons");
679
673
  var import_react3 = require("react");
680
- var import_styled_components13 = __toESM(require("styled-components"));
674
+ var import_styled_components12 = __toESM(require("styled-components"));
681
675
 
682
676
  // src/DataTable/utils.tsx
683
677
  function capitalizeHeader(context) {
@@ -703,12 +697,12 @@ function prependSelectColumn(columns, config) {
703
697
 
704
698
  // src/DataTable/components/ColumnSelect.tsx
705
699
  var import_jsx_runtime14 = require("react/jsx-runtime");
706
- var ColumnSelectContent = import_styled_components13.default.div`
700
+ var ColumnSelectContent = import_styled_components12.default.div`
707
701
  display: grid;
708
702
  grid-template-columns: repeat(2, 1fr);
709
703
  grid-gap: 0.5rem;
710
704
  `;
711
- var ActionsWrapper = import_styled_components13.default.div`
705
+ var ActionsWrapper = import_styled_components12.default.div`
712
706
  display: flex;
713
707
  align-items: center;
714
708
  justify-content: flex-end;
@@ -790,14 +784,14 @@ function ColumnSelect({ table }) {
790
784
 
791
785
  // src/DataTable/components/DataTableHeader.tsx
792
786
  var import_jsx_runtime15 = require("react/jsx-runtime");
793
- var DataTableHeaderWrapper = import_styled_components14.default.div`
787
+ var DataTableHeaderWrapper = import_styled_components13.default.div`
794
788
  display: flex;
795
789
  align-items: center;
796
790
  justify-content: space-between;
797
791
  gap: 0.5rem;
798
792
  padding: ${(props) => props.captionPadding ?? "1rem"};
799
793
  `;
800
- var FilterContainer = import_styled_components14.default.div`
794
+ var FilterContainer = import_styled_components13.default.div`
801
795
  display: flex;
802
796
  align-items: center;
803
797
  gap: 1rem;
@@ -903,7 +897,7 @@ function VirtualTable({
903
897
 
904
898
  // src/DataTable/DataTable.tsx
905
899
  var import_jsx_runtime18 = require("react/jsx-runtime");
906
- var DataTableWrapper = import_styled_components15.default.div`
900
+ var DataTableWrapper = import_styled_components14.default.div`
907
901
  width: ${(props) => props.width ?? "100%"};
908
902
 
909
903
  .--table-container {
@@ -912,8 +906,10 @@ var DataTableWrapper = import_styled_components15.default.div`
912
906
  overflow: auto;
913
907
 
914
908
  table {
915
- width: 100%;
916
- table-layout: auto;
909
+ width: ${(props) => props.width ?? "100%"};
910
+ height: ${(props) => props.height ?? "100%"};
911
+ table-layout: ${(props) => props.tableLayout ?? "fixed"};
912
+ border-collapse: collapse;
917
913
  }
918
914
  }
919
915
  `;
@@ -976,9 +972,9 @@ function DataTable({
976
972
  }, [table, config == null ? void 0 : config.expandAllByDefault]);
977
973
  const tableContainerRef = (0, import_react4.useRef)(null);
978
974
  return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(DataTableWrapper, {
979
- captionPadding: header == null ? void 0 : header.captionPadding,
980
975
  height: config == null ? void 0 : config.height,
981
976
  width: config == null ? void 0 : config.width,
977
+ tableLayout: config == null ? void 0 : config.tableLayout,
982
978
  children: [
983
979
  /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DataTableHeader, {
984
980
  tableCaption: header == null ? void 0 : header.tableCaption,
package/dist/index.mjs CHANGED
@@ -152,19 +152,7 @@ import styled5 from "styled-components";
152
152
 
153
153
  // src/cells/StickyCell.tsx
154
154
  import { Table } from "@equinor/eds-core-react";
155
- import styled4 from "styled-components";
156
- var StickyCell = styled4(Table.Cell)`
157
- position: sticky;
158
- right: 0;
159
- top: 0;
160
- z-index: 4;
161
- `;
162
- var StickyHeaderCell = styled4(StickyCell)`
163
- z-index: 5;
164
- `;
165
-
166
- // src/cells/styles.ts
167
- import { css as css2 } from "styled-components";
155
+ import styled4, { css as css2 } from "styled-components";
168
156
  var leftCellShadow = css2`
169
157
  &:before {
170
158
  box-shadow: -1px 0 1px -1px inset;
@@ -176,12 +164,21 @@ var leftCellShadow = css2`
176
164
  width: 1px;
177
165
  }
178
166
  `;
167
+ var StickyCell = styled4(Table.Cell)`
168
+ position: sticky;
169
+ right: 0;
170
+ top: 0;
171
+ z-index: 4;
172
+ background-clip: padding-box;
173
+ ${leftCellShadow}
174
+ `;
175
+ var StickyHeaderCell = styled4(StickyCell)`
176
+ z-index: 5;
177
+ `;
179
178
 
180
179
  // src/cells/DynamicCell.tsx
181
180
  import { jsx as jsx4 } from "react/jsx-runtime";
182
181
  var StyledStickyCell = styled5(StickyCell)`
183
- background-clip: padding-box;
184
- ${leftCellShadow}
185
182
  ${(props) => props.backgroundColor ? `background-color: ${props.backgroundColor} !important;` : ``}
186
183
  `;
187
184
  var StyledCell = styled5(Table2.Cell)`
@@ -422,9 +419,6 @@ var HeaderDiv = styled10.div`
422
419
  gap: 0.25rem;
423
420
  z-index: 5;
424
421
  `;
425
- var StyledStickyCell2 = styled10(StickyCell)`
426
- ${leftCellShadow}
427
- `;
428
422
  var HeaderCell = ({ header }) => {
429
423
  var _a;
430
424
  const style = {
@@ -437,7 +431,7 @@ var HeaderCell = ({ header }) => {
437
431
  colSpan: header.colSpan
438
432
  };
439
433
  if ((_a = header.column.columnDef.meta) == null ? void 0 : _a.sticky)
440
- return /* @__PURE__ */ jsx9(StyledStickyCell2, {
434
+ return /* @__PURE__ */ jsx9(StickyHeaderCell, {
441
435
  ...cellProps,
442
436
  children: /* @__PURE__ */ jsx9(HeaderContent, {
443
437
  header
@@ -873,8 +867,10 @@ var DataTableWrapper = styled14.div`
873
867
  overflow: auto;
874
868
 
875
869
  table {
876
- width: 100%;
877
- table-layout: auto;
870
+ width: ${(props) => props.width ?? "100%"};
871
+ height: ${(props) => props.height ?? "100%"};
872
+ table-layout: ${(props) => props.tableLayout ?? "fixed"};
873
+ border-collapse: collapse;
878
874
  }
879
875
  }
880
876
  `;
@@ -937,9 +933,9 @@ function DataTable({
937
933
  }, [table, config == null ? void 0 : config.expandAllByDefault]);
938
934
  const tableContainerRef = useRef2(null);
939
935
  return /* @__PURE__ */ jsxs11(DataTableWrapper, {
940
- captionPadding: header == null ? void 0 : header.captionPadding,
941
936
  height: config == null ? void 0 : config.height,
942
937
  width: config == null ? void 0 : config.width,
938
+ tableLayout: config == null ? void 0 : config.tableLayout,
943
939
  children: [
944
940
  /* @__PURE__ */ jsx18(DataTableHeader, {
945
941
  tableCaption: header == null ? void 0 : header.tableCaption,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@equinor/apollo-components",
3
- "version": "1.8.0",
3
+ "version": "1.8.1",
4
4
  "license": "MIT",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",