@apia/table 4.0.26 → 4.0.28

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
@@ -589,6 +589,11 @@ interface IPagination {
589
589
  }
590
590
  declare const Pagination: React__default.MemoExoticComponent<({ appliedFilters, areAllFiltersApplied, className, currentPage, disabled, disableReduced, hasMore, hideInfo, hideMaximizeButton, hideRefreshButton, isLoading, isPerforming, listId: outerListId, onDeleteFilters, onPageChange, onRefresh, pageCount, recordsCount: outerRecordsCount, reachedMax, showMaximizeOnSmallBreakpoints, variant, }: IPagination) => React__default.JSX.Element>;
591
591
 
592
+ declare const Grouped: React__default.MemoExoticComponent<({ group, tableName, }: {
593
+ group: string;
594
+ tableName?: string;
595
+ }) => React__default.JSX.Element>;
596
+
592
597
  declare function getResponsiveTableContext(tableName: string): TResponsiveTableContext;
593
598
  declare function useResponsiveTableContext(tableName?: string): TResponsiveTableContext;
594
599
  declare const ResponsiveTableContext: React__default.MemoExoticComponent<({ allowEdition, allowRowsKeyboardSorting, avoidAutoEllipsis, allowSelection, allowSorting, avoidReparseSelectionOnRowChange, children, className, currentBreakPoint, customLabels, columns, filters, FiltersRenderer, rows, label, isMultiple, isLoading, name, statesColumns, onChangeSelection, onFilterBlur, onFilterChange, onFilterPressEnter, onRowClick, onSelectRows, onSortChange, reserveColumnsForStates, SelectionHandler, variant, }: TResponsiveTableContextProps) => React__default.JSX.Element>;
@@ -799,5 +804,5 @@ declare const TableRenderer: React__default.MemoExoticComponent<({ variant }: {
799
804
  variant?: string;
800
805
  }) => React__default.JSX.Element>;
801
806
 
802
- export { AccordionCell, AccordionDocNameCellRenderer, AccordionElement, AccordionHTMLCellRenderer, AccordionRenderer, Additional, AdditionalColumnDefaultRenderer, Controller2, DefaultCellRenderer, DefaultRowRenderer, DocNameCellRenderer, HTMLCellRenderer, type IAccordionElement, IsLoadingRenderer, NoEllipsisCellRenderer, NoRegistersRenderer, Pagination, PriorityAccordionRenderer, PriorityRenderer, RangeFilter, Responsive, ResponsiveTable, ResponsiveTableContext, RowStatesRenderer, Sort, StatusAccordionRenderer, StatusRenderer, type TAccordionCellRenderer, type TAccordionCellRendererProps, type TColoredElement, type TDocNameCellRenderer, type TDocNameCellRendererProps, type TResponsiveTableCell, type TResponsiveTableCellRenderer, type TResponsiveTableCellRendererProps, type TResponsiveTableColumn, type TResponsiveTableContext, type TResponsiveTableContextProps, type TResponsiveTableRow, type TResponsiveTableRowRenderer, type TResponsiveTableRowRendererProps, type TResponsiveTableRowState, type TResponsiveTableRowsSelectionEvent, type TResponsiveTableSortChangeEvent, type TResponsiveTableSortValue, type TResponsiveTableStoreProps, type TResponsiveTableWithRendererElement, TableContextReproducer, TableLoadingContext, TableRenderer, defaultLabels, getPriorityHandler, getResponsiveTableContext, getStatusRendererClassName, makeAccordionAsyncRenderer, makeAsyncRenderer, makeController2, responsiveTableActions, responsiveTableStore, useResponsiveTable, useResponsiveTableContext };
807
+ export { AccordionCell, AccordionDocNameCellRenderer, AccordionElement, AccordionHTMLCellRenderer, AccordionRenderer, Additional, AdditionalColumnDefaultRenderer, Controller2, DefaultCellRenderer, DefaultRowRenderer, DocNameCellRenderer, Grouped, HTMLCellRenderer, type IAccordionElement, IsLoadingRenderer, NoEllipsisCellRenderer, NoRegistersRenderer, Pagination, PriorityAccordionRenderer, PriorityRenderer, RangeFilter, Responsive, ResponsiveTable, ResponsiveTableContext, RowStatesRenderer, Sort, StatusAccordionRenderer, StatusRenderer, type TAccordionCellRenderer, type TAccordionCellRendererProps, type TColoredElement, type TDocNameCellRenderer, type TDocNameCellRendererProps, type TResponsiveTableCell, type TResponsiveTableCellRenderer, type TResponsiveTableCellRendererProps, type TResponsiveTableColumn, type TResponsiveTableContext, type TResponsiveTableContextProps, type TResponsiveTableRow, type TResponsiveTableRowRenderer, type TResponsiveTableRowRendererProps, type TResponsiveTableRowState, type TResponsiveTableRowsSelectionEvent, type TResponsiveTableSortChangeEvent, type TResponsiveTableSortValue, type TResponsiveTableStoreProps, type TResponsiveTableWithRendererElement, TableContextReproducer, TableLoadingContext, TableRenderer, defaultLabels, getPriorityHandler, getResponsiveTableContext, getStatusRendererClassName, makeAccordionAsyncRenderer, makeAsyncRenderer, makeController2, responsiveTableActions, responsiveTableStore, useResponsiveTable, useResponsiveTableContext };
803
808
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -1206,7 +1206,7 @@ const NoMemoHeaderCell = ({
1206
1206
  const column = columns[columnIndex];
1207
1207
  const additionalInfoColumns = columns.filter((c) => c.showAsAdditional);
1208
1208
  const storedWidth = persistentStorage[widthStorageName]?.[actualName]?.[column.name];
1209
- const [width, setWidth] = React.useState(storedWidth ?? 200);
1209
+ const [width, setWidth] = React.useState(storedWidth ?? column.width ?? 200);
1210
1210
  const [isResize, setIsResize] = React.useState(storedWidth !== void 0);
1211
1211
  React.useEffect(() => {
1212
1212
  return void thWidthEmitter.on("resize", (ev) => {
@@ -1240,16 +1240,24 @@ const NoMemoHeaderCell = ({
1240
1240
  );
1241
1241
  const sx = React.useMemo(
1242
1242
  () => !isResize ? {
1243
- minWidth: getColumnWidth(column.minWidth ?? column.width),
1243
+ minWidth: columnIndex === columns.length - 1 ? "100%" : getColumnWidth(column.minWidth ?? column.width),
1244
1244
  maxWidth: column.maxWidth !== void 0 ? getColumnWidth(column.maxWidth) : void 0,
1245
- width: getColumnWidth(column.width),
1245
+ width: columnIndex === columns.length - 1 ? "100%" : getColumnWidth(column.width),
1246
1246
  position: "relative"
1247
1247
  } : {
1248
1248
  width: `${width}px`,
1249
- minWidth: `${width}px`,
1249
+ minWidth: columnIndex === columns.length - 1 ? "100%" : `${width}px`,
1250
1250
  position: "relative"
1251
1251
  },
1252
- [column.maxWidth, column.minWidth, column.width, isResize, width]
1252
+ [
1253
+ column.maxWidth,
1254
+ column.minWidth,
1255
+ column.width,
1256
+ columnIndex,
1257
+ columns.length,
1258
+ isResize,
1259
+ width
1260
+ ]
1253
1261
  );
1254
1262
  const lastIsLoading = useLatest(isLoading);
1255
1263
  const buttonProps = useOtherTagButton(
@@ -1273,14 +1281,14 @@ const NoMemoHeaderCell = ({
1273
1281
  });
1274
1282
  }
1275
1283
  }),
1276
- [apiaColumnIndex, column, isSortingAllowed, onSortChange]
1284
+ [apiaColumnIndex, column, isSortingAllowed, lastIsLoading, onSortChange]
1277
1285
  )
1278
1286
  );
1279
1287
  return /* @__PURE__ */ jsx(
1280
1288
  Box,
1281
1289
  {
1282
1290
  as: "th",
1283
- style: sx,
1291
+ ...{ sx },
1284
1292
  "data-columnname": column.name,
1285
1293
  title: column.title ?? column.label ?? column.name,
1286
1294
  ...buttonProps,
@@ -2526,7 +2534,7 @@ const NoMemoInnerRender = React.forwardRef(
2526
2534
  title: isDate ? window.LBL_DATE_FILTER_FROM_TOOLTIP : filterTitle,
2527
2535
  children: [
2528
2536
  window.SHOW_REQUIRED_POSITION !== "0" && /* @__PURE__ */ jsx(RequiredMark, { isRequired: filter.required }),
2529
- /* @__PURE__ */ jsx(Box, { as: "span", children: isDate && !filter.hideToFilter ? formatMessage(window.LBL_DATE_FILTER_FROM_TXT, {
2537
+ !filter?.avoidLabel && /* @__PURE__ */ jsx(Box, { as: "span", children: isDate && !filter.hideToFilter ? formatMessage(window.LBL_DATE_FILTER_FROM_TXT, {
2530
2538
  TOK1: filterTitle
2531
2539
  }) : filterTitle }),
2532
2540
  Renderer ? /* @__PURE__ */ jsx(Renderer, { filter }) : filter.isRange ? /* @__PURE__ */ jsx(RangeFilter, { filter }) : /* @__PURE__ */ jsx(
@@ -2570,7 +2578,7 @@ const NoMemoInnerRender = React.forwardRef(
2570
2578
  {
2571
2579
  className: filter.type === "D" || filter.type === "date" ? "twoColumns" : "",
2572
2580
  children: /* @__PURE__ */ jsxs(Label, { title: window.LBL_DATE_FILTER_TO_TOOLTIP, children: [
2573
- /* @__PURE__ */ jsx(Box, { as: "span", children: formatMessage(window.LBL_DATE_FILTER_TO_TXT, {
2581
+ !filter?.avoidLabel && /* @__PURE__ */ jsx(Box, { as: "span", children: formatMessage(window.LBL_DATE_FILTER_TO_TXT, {
2574
2582
  TOK1: filterTitle
2575
2583
  }) }),
2576
2584
  /* @__PURE__ */ jsx(
@@ -3046,6 +3054,19 @@ const NoMemoPagination = ({
3046
3054
  };
3047
3055
  const Pagination = React.memo(NoMemoPagination);
3048
3056
 
3057
+ const NoMemoGrouped = ({
3058
+ group,
3059
+ tableName
3060
+ }) => {
3061
+ const { name } = useResponsiveTableContext(tableName);
3062
+ const groupedFilters = useResponsiveTable((global) => {
3063
+ const state = global.responsiveTableSlice[name];
3064
+ return state?.filters.filter((current) => current.group === group);
3065
+ }, shallowEqual);
3066
+ return /* @__PURE__ */ jsx(InnerRender, { tableName, filters: groupedFilters });
3067
+ };
3068
+ const Grouped = React.memo(NoMemoGrouped);
3069
+
3049
3070
  function setAriaAttributes(element, attribute, value) {
3050
3071
  element.setAttribute(attribute, value);
3051
3072
  }
@@ -3954,5 +3975,5 @@ const NoMemoStatusAccordionRenderer = React.forwardRef(({ cell, column }, curren
3954
3975
  NoMemoStatusAccordionRenderer.displayName = "StatusAccordionRenderer";
3955
3976
  const StatusAccordionRenderer = NoMemoStatusAccordionRenderer;
3956
3977
 
3957
- export { AccordionCell, AccordionDocNameCellRenderer, AccordionElement, AccordionHTMLCellRenderer, AccordionRenderer, Additional, AdditionalColumnDefaultRenderer, Controller2, DefaultCellRenderer, DefaultRowRenderer, DocNameCellRenderer, HTMLCellRenderer, IsLoadingRenderer, NoEllipsisCellRenderer, NoRegistersRenderer, Pagination, PriorityAccordionRenderer, PriorityRenderer, RangeFilter, Responsive, ResponsiveTable, ResponsiveTableContext, RowStatesRenderer, Sort, StatusAccordionRenderer, StatusRenderer, TableContextReproducer, TableLoadingContext, TableRenderer, defaultLabels, getPriorityHandler, getResponsiveTableContext, getStatusRendererClassName, makeAccordionAsyncRenderer, makeAsyncRenderer, makeController2, responsiveTableActions, responsiveTableStore, useResponsiveTable, useResponsiveTableContext };
3978
+ export { AccordionCell, AccordionDocNameCellRenderer, AccordionElement, AccordionHTMLCellRenderer, AccordionRenderer, Additional, AdditionalColumnDefaultRenderer, Controller2, DefaultCellRenderer, DefaultRowRenderer, DocNameCellRenderer, Grouped, HTMLCellRenderer, IsLoadingRenderer, NoEllipsisCellRenderer, NoRegistersRenderer, Pagination, PriorityAccordionRenderer, PriorityRenderer, RangeFilter, Responsive, ResponsiveTable, ResponsiveTableContext, RowStatesRenderer, Sort, StatusAccordionRenderer, StatusRenderer, TableContextReproducer, TableLoadingContext, TableRenderer, defaultLabels, getPriorityHandler, getResponsiveTableContext, getStatusRendererClassName, makeAccordionAsyncRenderer, makeAsyncRenderer, makeController2, responsiveTableActions, responsiveTableStore, useResponsiveTable, useResponsiveTableContext };
3958
3979
  //# sourceMappingURL=index.js.map