@ai-matrx/design-system 0.49.32 → 0.49.33
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/CHANGELOG.md +9 -0
- package/dist/data-table/copy-helpers.d.cts +1 -1
- package/dist/data-table/copy-helpers.d.ts +1 -1
- package/dist/data-table/filter-engine.d.cts +1 -1
- package/dist/data-table/filter-engine.d.ts +1 -1
- package/dist/data-table/host.d.cts +1 -1
- package/dist/data-table/host.d.ts +1 -1
- package/dist/data-table/index.cjs +18 -6
- package/dist/data-table/index.cjs.map +1 -1
- package/dist/data-table/index.d.cts +5 -3
- package/dist/data-table/index.d.ts +5 -3
- package/dist/data-table/index.js +18 -6
- package/dist/data-table/index.js.map +1 -1
- package/dist/data-table/infer-filter.d.cts +1 -1
- package/dist/data-table/infer-filter.d.ts +1 -1
- package/dist/data-table/layered-filters.d.cts +1 -1
- package/dist/data-table/layered-filters.d.ts +1 -1
- package/dist/data-table/query-control.d.cts +1 -1
- package/dist/data-table/query-control.d.ts +1 -1
- package/dist/data-table/types.cjs.map +1 -1
- package/dist/data-table/types.d.cts +1 -1
- package/dist/data-table/types.d.ts +1 -1
- package/dist/data-table/url-state.d.cts +1 -1
- package/dist/data-table/url-state.d.ts +1 -1
- package/dist/data-table/xlsx.d.cts +1 -1
- package/dist/data-table/xlsx.d.ts +1 -1
- package/dist/{layered-filters-DmI_v_ku.d.cts → layered-filters-Bxc5mB6_.d.cts} +7 -2
- package/dist/{layered-filters-QG3LUn_h.d.ts → layered-filters-rDTFmgfK.d.ts} +7 -2
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
|
-
import { h as MatrxDataTableProps, i as TableViewSnapshot, d as MatrxDataTableRecordControls, j as MatrxDataTableRead, k as ColumnMarker, M as MatrxColumnDef, l as MatrxDrillDimension, m as MatrxDrillMeasure, n as MatrxDrillQuestion, o as MatrxDrillAnswers } from '../layered-filters-
|
|
4
|
-
export { A as AnyOfColumnSearch, p as CellEditType, q as CellEditsMap, f as ColumnFilterKind, a as ColumnFilterValue, C as ColumnFiltersState, r as MATRX_DRILL_GRAINS, s as MATRX_DRILL_MAX_LEVELS, t as MATRX_DRILL_NONE, u as MATRX_DRILL_OTHER_COLUMN, v as MATRX_DRILL_PIVOT_COLUMNS, w as MatrxDataTableContextMenuConfig, g as MatrxDataTableCopyConfig, x as MatrxDataTableCoverageConfig, c as MatrxDataTableDensity, y as MatrxDataTableDetailConfig, z as MatrxDataTableDrillConfig, B as MatrxDataTableEditConfig, D as MatrxDataTableEmptyState, E as MatrxDataTableExpandedDetailConfig, F as MatrxDataTableFacetsConfig, G as MatrxDataTableFilterUi, H as MatrxDataTableGroupingConfig, I as MatrxDataTableHierarchyConfig, J as MatrxDataTableHierarchyMove, K as MatrxDataTableMobileCardControls, N as MatrxDataTableMultiExpandedDetailConfig, O as MatrxDataTableQueryControl, e as MatrxDataTableQueryState, P as MatrxDataTableReadStatus, Q as MatrxDataTableSelectionConfig, R as MatrxDataTableSingleExpandedDetailConfig, U as MatrxDataTableSourceProcessing, V as MatrxDataTableSpreadsheetConfig, W as MatrxDataTableStyleConfig, X as MatrxDataTableSummaryConfig, Y as MatrxDataTableSummaryContext, Z as MatrxDataTableSummaryMetric, _ as MatrxDataTableToolbar, $ as MatrxDataTableUrlStateConfig, a0 as MatrxDataTableVirtualizeConfig, a1 as MatrxDataTableWindowConfig, a2 as MatrxDrillAnswerRow, a3 as MatrxDrillCrumb, a4 as MatrxDrillDimensionKind, a5 as MatrxDrillFilter, a6 as MatrxDrillGrain, a7 as MatrxDrillNode, a8 as MatrxDrillOther, a9 as MatrxDrillPivotColumn, aa as MatrxDrillRequest, ab as MatrxTablePagination, ac as NumberFilterOp, ad as SavedTableViewTab, ae as SortDirection, S as SortState, af as SpreadsheetSelection, ag as TableRankedSearchOptions, b as TableSavedViewsProps, T as TableSearchMatchMode, ah as TableSearchRole, ai as TableSearchScope, aj as TableViewQuery, ak as TableViewTab, al as TableViewTabs, am as TableViewTabsProps, an as TableViewTabsStore, ao as TextFilterMode, ap as ToolbarFacet, aq as addressHasDrill, ar as bucketLabel, as as bucketWindow, at as buildDrillTree, au as dimensionFor, av as dimensionRefLabel, aw as dimensionRefs, ax as drillCrumbs, ay as drillInto, az as drillIsGrouped, aA as drillPath, aB as drillQuestionFromParams, aC as drillQuestionToParams, aD as drillRequestKey, aE as drillRequests, aF as drillToRecords, aG as drillValueLabel, aH as emptyDrillQuestion, aI as inferTableSearchRole, aJ as nextDrillLevel, aK as otherOf, aL as parseDimensionRef, aM as pivotCell, aN as pivotColumns, aO as rankTableSearchRows, aP as resolveTableSearchScopes, aQ as sameDrillQuestion, aR as zoomOutTo } from '../layered-filters-
|
|
3
|
+
import { h as MatrxDataTableProps, i as TableViewSnapshot, d as MatrxDataTableRecordControls, j as MatrxDataTableRead, k as ColumnMarker, M as MatrxColumnDef, l as MatrxDrillDimension, m as MatrxDrillMeasure, n as MatrxDrillQuestion, o as MatrxDrillAnswers } from '../layered-filters-Bxc5mB6_.cjs';
|
|
4
|
+
export { A as AnyOfColumnSearch, p as CellEditType, q as CellEditsMap, f as ColumnFilterKind, a as ColumnFilterValue, C as ColumnFiltersState, r as MATRX_DRILL_GRAINS, s as MATRX_DRILL_MAX_LEVELS, t as MATRX_DRILL_NONE, u as MATRX_DRILL_OTHER_COLUMN, v as MATRX_DRILL_PIVOT_COLUMNS, w as MatrxDataTableContextMenuConfig, g as MatrxDataTableCopyConfig, x as MatrxDataTableCoverageConfig, c as MatrxDataTableDensity, y as MatrxDataTableDetailConfig, z as MatrxDataTableDrillConfig, B as MatrxDataTableEditConfig, D as MatrxDataTableEmptyState, E as MatrxDataTableExpandedDetailConfig, F as MatrxDataTableFacetsConfig, G as MatrxDataTableFilterUi, H as MatrxDataTableGroupingConfig, I as MatrxDataTableHierarchyConfig, J as MatrxDataTableHierarchyMove, K as MatrxDataTableMobileCardControls, N as MatrxDataTableMultiExpandedDetailConfig, O as MatrxDataTableQueryControl, e as MatrxDataTableQueryState, P as MatrxDataTableReadStatus, Q as MatrxDataTableSelectionConfig, R as MatrxDataTableSingleExpandedDetailConfig, U as MatrxDataTableSourceProcessing, V as MatrxDataTableSpreadsheetConfig, W as MatrxDataTableStyleConfig, X as MatrxDataTableSummaryConfig, Y as MatrxDataTableSummaryContext, Z as MatrxDataTableSummaryMetric, _ as MatrxDataTableToolbar, $ as MatrxDataTableUrlStateConfig, a0 as MatrxDataTableVirtualizeConfig, a1 as MatrxDataTableWindowConfig, a2 as MatrxDrillAnswerRow, a3 as MatrxDrillCrumb, a4 as MatrxDrillDimensionKind, a5 as MatrxDrillFilter, a6 as MatrxDrillGrain, a7 as MatrxDrillNode, a8 as MatrxDrillOther, a9 as MatrxDrillPivotColumn, aa as MatrxDrillRequest, ab as MatrxTablePagination, ac as NumberFilterOp, ad as SavedTableViewTab, ae as SortDirection, S as SortState, af as SpreadsheetSelection, ag as TableRankedSearchOptions, b as TableSavedViewsProps, T as TableSearchMatchMode, ah as TableSearchRole, ai as TableSearchScope, aj as TableViewQuery, ak as TableViewTab, al as TableViewTabs, am as TableViewTabsProps, an as TableViewTabsStore, ao as TextFilterMode, ap as ToolbarFacet, aq as addressHasDrill, ar as bucketLabel, as as bucketWindow, at as buildDrillTree, au as dimensionFor, av as dimensionRefLabel, aw as dimensionRefs, ax as drillCrumbs, ay as drillInto, az as drillIsGrouped, aA as drillPath, aB as drillQuestionFromParams, aC as drillQuestionToParams, aD as drillRequestKey, aE as drillRequests, aF as drillToRecords, aG as drillValueLabel, aH as emptyDrillQuestion, aI as inferTableSearchRole, aJ as nextDrillLevel, aK as otherOf, aL as parseDimensionRef, aM as pivotCell, aN as pivotColumns, aO as rankTableSearchRows, aP as resolveTableSearchScopes, aQ as sameDrillQuestion, aR as zoomOutTo } from '../layered-filters-Bxc5mB6_.cjs';
|
|
5
5
|
import { TableReadFailureProps, TableStaleNoticeProps } from './host.cjs';
|
|
6
6
|
export { MatrxDataTableHost, MatrxDataTableProvider, MatrxTableRowAlchemy, TableContextMenuBoundaryProps, TableDoors, TableEntityRefProps, TableLinkProps, TableMenuIconProps, TablePeekProps, TableSidePanelProps, TableToolbarActionProps, TableWindowPanelProps, useMatrxDataTableHost, useMatrxTableRowAlchemy } from './host.cjs';
|
|
7
7
|
import { CopyControlProps } from './copy-types.cjs';
|
|
@@ -327,13 +327,15 @@ interface MatrxDrillAnswerTableProps {
|
|
|
327
327
|
question: MatrxDrillQuestion;
|
|
328
328
|
onQuestionChange: (next: MatrxDrillQuestion) => void;
|
|
329
329
|
answers: MatrxDrillAnswers;
|
|
330
|
+
/** Declared drill paths; a click follows the one its level sits on. */
|
|
331
|
+
paths?: readonly (readonly string[])[] | undefined;
|
|
330
332
|
/** A read that failed, in words. */
|
|
331
333
|
error?: string | null | undefined;
|
|
332
334
|
rowNoun?: string | undefined;
|
|
333
335
|
emptyLabel?: string | undefined;
|
|
334
336
|
className?: string | undefined;
|
|
335
337
|
}
|
|
336
|
-
declare function MatrxDrillAnswerTable({ dimensions, measures, question, onQuestionChange, answers, error, rowNoun, emptyLabel, className, }: MatrxDrillAnswerTableProps): React.JSX.Element;
|
|
338
|
+
declare function MatrxDrillAnswerTable({ dimensions, measures, question, onQuestionChange, answers, paths, error, rowNoun, emptyLabel, className, }: MatrxDrillAnswerTableProps): React.JSX.Element;
|
|
337
339
|
|
|
338
340
|
declare function MatrxDrillGroupByMenu({ dimensions, question, onQuestionChange, }: {
|
|
339
341
|
dimensions: readonly MatrxDrillDimension[];
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
|
-
import { h as MatrxDataTableProps, i as TableViewSnapshot, d as MatrxDataTableRecordControls, j as MatrxDataTableRead, k as ColumnMarker, M as MatrxColumnDef, l as MatrxDrillDimension, m as MatrxDrillMeasure, n as MatrxDrillQuestion, o as MatrxDrillAnswers } from '../layered-filters-
|
|
4
|
-
export { A as AnyOfColumnSearch, p as CellEditType, q as CellEditsMap, f as ColumnFilterKind, a as ColumnFilterValue, C as ColumnFiltersState, r as MATRX_DRILL_GRAINS, s as MATRX_DRILL_MAX_LEVELS, t as MATRX_DRILL_NONE, u as MATRX_DRILL_OTHER_COLUMN, v as MATRX_DRILL_PIVOT_COLUMNS, w as MatrxDataTableContextMenuConfig, g as MatrxDataTableCopyConfig, x as MatrxDataTableCoverageConfig, c as MatrxDataTableDensity, y as MatrxDataTableDetailConfig, z as MatrxDataTableDrillConfig, B as MatrxDataTableEditConfig, D as MatrxDataTableEmptyState, E as MatrxDataTableExpandedDetailConfig, F as MatrxDataTableFacetsConfig, G as MatrxDataTableFilterUi, H as MatrxDataTableGroupingConfig, I as MatrxDataTableHierarchyConfig, J as MatrxDataTableHierarchyMove, K as MatrxDataTableMobileCardControls, N as MatrxDataTableMultiExpandedDetailConfig, O as MatrxDataTableQueryControl, e as MatrxDataTableQueryState, P as MatrxDataTableReadStatus, Q as MatrxDataTableSelectionConfig, R as MatrxDataTableSingleExpandedDetailConfig, U as MatrxDataTableSourceProcessing, V as MatrxDataTableSpreadsheetConfig, W as MatrxDataTableStyleConfig, X as MatrxDataTableSummaryConfig, Y as MatrxDataTableSummaryContext, Z as MatrxDataTableSummaryMetric, _ as MatrxDataTableToolbar, $ as MatrxDataTableUrlStateConfig, a0 as MatrxDataTableVirtualizeConfig, a1 as MatrxDataTableWindowConfig, a2 as MatrxDrillAnswerRow, a3 as MatrxDrillCrumb, a4 as MatrxDrillDimensionKind, a5 as MatrxDrillFilter, a6 as MatrxDrillGrain, a7 as MatrxDrillNode, a8 as MatrxDrillOther, a9 as MatrxDrillPivotColumn, aa as MatrxDrillRequest, ab as MatrxTablePagination, ac as NumberFilterOp, ad as SavedTableViewTab, ae as SortDirection, S as SortState, af as SpreadsheetSelection, ag as TableRankedSearchOptions, b as TableSavedViewsProps, T as TableSearchMatchMode, ah as TableSearchRole, ai as TableSearchScope, aj as TableViewQuery, ak as TableViewTab, al as TableViewTabs, am as TableViewTabsProps, an as TableViewTabsStore, ao as TextFilterMode, ap as ToolbarFacet, aq as addressHasDrill, ar as bucketLabel, as as bucketWindow, at as buildDrillTree, au as dimensionFor, av as dimensionRefLabel, aw as dimensionRefs, ax as drillCrumbs, ay as drillInto, az as drillIsGrouped, aA as drillPath, aB as drillQuestionFromParams, aC as drillQuestionToParams, aD as drillRequestKey, aE as drillRequests, aF as drillToRecords, aG as drillValueLabel, aH as emptyDrillQuestion, aI as inferTableSearchRole, aJ as nextDrillLevel, aK as otherOf, aL as parseDimensionRef, aM as pivotCell, aN as pivotColumns, aO as rankTableSearchRows, aP as resolveTableSearchScopes, aQ as sameDrillQuestion, aR as zoomOutTo } from '../layered-filters-
|
|
3
|
+
import { h as MatrxDataTableProps, i as TableViewSnapshot, d as MatrxDataTableRecordControls, j as MatrxDataTableRead, k as ColumnMarker, M as MatrxColumnDef, l as MatrxDrillDimension, m as MatrxDrillMeasure, n as MatrxDrillQuestion, o as MatrxDrillAnswers } from '../layered-filters-rDTFmgfK.js';
|
|
4
|
+
export { A as AnyOfColumnSearch, p as CellEditType, q as CellEditsMap, f as ColumnFilterKind, a as ColumnFilterValue, C as ColumnFiltersState, r as MATRX_DRILL_GRAINS, s as MATRX_DRILL_MAX_LEVELS, t as MATRX_DRILL_NONE, u as MATRX_DRILL_OTHER_COLUMN, v as MATRX_DRILL_PIVOT_COLUMNS, w as MatrxDataTableContextMenuConfig, g as MatrxDataTableCopyConfig, x as MatrxDataTableCoverageConfig, c as MatrxDataTableDensity, y as MatrxDataTableDetailConfig, z as MatrxDataTableDrillConfig, B as MatrxDataTableEditConfig, D as MatrxDataTableEmptyState, E as MatrxDataTableExpandedDetailConfig, F as MatrxDataTableFacetsConfig, G as MatrxDataTableFilterUi, H as MatrxDataTableGroupingConfig, I as MatrxDataTableHierarchyConfig, J as MatrxDataTableHierarchyMove, K as MatrxDataTableMobileCardControls, N as MatrxDataTableMultiExpandedDetailConfig, O as MatrxDataTableQueryControl, e as MatrxDataTableQueryState, P as MatrxDataTableReadStatus, Q as MatrxDataTableSelectionConfig, R as MatrxDataTableSingleExpandedDetailConfig, U as MatrxDataTableSourceProcessing, V as MatrxDataTableSpreadsheetConfig, W as MatrxDataTableStyleConfig, X as MatrxDataTableSummaryConfig, Y as MatrxDataTableSummaryContext, Z as MatrxDataTableSummaryMetric, _ as MatrxDataTableToolbar, $ as MatrxDataTableUrlStateConfig, a0 as MatrxDataTableVirtualizeConfig, a1 as MatrxDataTableWindowConfig, a2 as MatrxDrillAnswerRow, a3 as MatrxDrillCrumb, a4 as MatrxDrillDimensionKind, a5 as MatrxDrillFilter, a6 as MatrxDrillGrain, a7 as MatrxDrillNode, a8 as MatrxDrillOther, a9 as MatrxDrillPivotColumn, aa as MatrxDrillRequest, ab as MatrxTablePagination, ac as NumberFilterOp, ad as SavedTableViewTab, ae as SortDirection, S as SortState, af as SpreadsheetSelection, ag as TableRankedSearchOptions, b as TableSavedViewsProps, T as TableSearchMatchMode, ah as TableSearchRole, ai as TableSearchScope, aj as TableViewQuery, ak as TableViewTab, al as TableViewTabs, am as TableViewTabsProps, an as TableViewTabsStore, ao as TextFilterMode, ap as ToolbarFacet, aq as addressHasDrill, ar as bucketLabel, as as bucketWindow, at as buildDrillTree, au as dimensionFor, av as dimensionRefLabel, aw as dimensionRefs, ax as drillCrumbs, ay as drillInto, az as drillIsGrouped, aA as drillPath, aB as drillQuestionFromParams, aC as drillQuestionToParams, aD as drillRequestKey, aE as drillRequests, aF as drillToRecords, aG as drillValueLabel, aH as emptyDrillQuestion, aI as inferTableSearchRole, aJ as nextDrillLevel, aK as otherOf, aL as parseDimensionRef, aM as pivotCell, aN as pivotColumns, aO as rankTableSearchRows, aP as resolveTableSearchScopes, aQ as sameDrillQuestion, aR as zoomOutTo } from '../layered-filters-rDTFmgfK.js';
|
|
5
5
|
import { TableReadFailureProps, TableStaleNoticeProps } from './host.js';
|
|
6
6
|
export { MatrxDataTableHost, MatrxDataTableProvider, MatrxTableRowAlchemy, TableContextMenuBoundaryProps, TableDoors, TableEntityRefProps, TableLinkProps, TableMenuIconProps, TablePeekProps, TableSidePanelProps, TableToolbarActionProps, TableWindowPanelProps, useMatrxDataTableHost, useMatrxTableRowAlchemy } from './host.js';
|
|
7
7
|
import { CopyControlProps } from './copy-types.js';
|
|
@@ -327,13 +327,15 @@ interface MatrxDrillAnswerTableProps {
|
|
|
327
327
|
question: MatrxDrillQuestion;
|
|
328
328
|
onQuestionChange: (next: MatrxDrillQuestion) => void;
|
|
329
329
|
answers: MatrxDrillAnswers;
|
|
330
|
+
/** Declared drill paths; a click follows the one its level sits on. */
|
|
331
|
+
paths?: readonly (readonly string[])[] | undefined;
|
|
330
332
|
/** A read that failed, in words. */
|
|
331
333
|
error?: string | null | undefined;
|
|
332
334
|
rowNoun?: string | undefined;
|
|
333
335
|
emptyLabel?: string | undefined;
|
|
334
336
|
className?: string | undefined;
|
|
335
337
|
}
|
|
336
|
-
declare function MatrxDrillAnswerTable({ dimensions, measures, question, onQuestionChange, answers, error, rowNoun, emptyLabel, className, }: MatrxDrillAnswerTableProps): React.JSX.Element;
|
|
338
|
+
declare function MatrxDrillAnswerTable({ dimensions, measures, question, onQuestionChange, answers, paths, error, rowNoun, emptyLabel, className, }: MatrxDrillAnswerTableProps): React.JSX.Element;
|
|
337
339
|
|
|
338
340
|
declare function MatrxDrillGroupByMenu({ dimensions, question, onQuestionChange, }: {
|
|
339
341
|
dimensions: readonly MatrxDrillDimension[];
|
package/dist/data-table/index.js
CHANGED
|
@@ -43832,14 +43832,23 @@ function drillPath(question, dimensions) {
|
|
|
43832
43832
|
if (question.path && question.path.length > 0) return question.path;
|
|
43833
43833
|
return dimensions.map((d) => d.kind === "time" ? `${d.key}:month` : d.key);
|
|
43834
43834
|
}
|
|
43835
|
-
function nextDrillLevel(question, dimensions) {
|
|
43835
|
+
function nextDrillLevel(question, dimensions, paths = []) {
|
|
43836
|
+
const deepest = question.by[question.by.length - 1];
|
|
43837
|
+
const usedRefs = /* @__PURE__ */ new Set([...question.where.map((w) => w.dim), ...question.by]);
|
|
43838
|
+
if (deepest) {
|
|
43839
|
+
for (const levels of paths) {
|
|
43840
|
+
const at2 = levels.indexOf(deepest);
|
|
43841
|
+
if (at2 < 0) continue;
|
|
43842
|
+
const next = levels.slice(at2 + 1).find((ref) => !usedRefs.has(ref) && dimensionFor(dimensions, ref));
|
|
43843
|
+
if (next) return next;
|
|
43844
|
+
}
|
|
43845
|
+
}
|
|
43836
43846
|
const path2 = drillPath(question, dimensions);
|
|
43837
43847
|
const used = /* @__PURE__ */ new Set([
|
|
43838
43848
|
...question.where.map((w) => parseDimensionRef(w.dim).key),
|
|
43839
43849
|
...question.by.map((b) => parseDimensionRef(b).key),
|
|
43840
43850
|
...question.across ? [parseDimensionRef(question.across).key] : []
|
|
43841
43851
|
]);
|
|
43842
|
-
const deepest = question.by[question.by.length - 1];
|
|
43843
43852
|
const from = deepest ? path2.indexOf(deepest) : -1;
|
|
43844
43853
|
const ordered = from >= 0 ? [...path2.slice(from + 1), ...path2.slice(0, from)] : path2;
|
|
43845
43854
|
for (const ref of ordered) {
|
|
@@ -43847,10 +43856,10 @@ function nextDrillLevel(question, dimensions) {
|
|
|
43847
43856
|
}
|
|
43848
43857
|
return null;
|
|
43849
43858
|
}
|
|
43850
|
-
function drillInto(question, groups, dimensions, into) {
|
|
43859
|
+
function drillInto(question, groups, dimensions, into, paths = []) {
|
|
43851
43860
|
const added = question.by.filter((ref) => ref in groups).map((ref) => ({ dim: ref, value: groups[ref] ?? null }));
|
|
43852
43861
|
const narrowed = { ...question, where: [...question.where, ...added] };
|
|
43853
|
-
const next = into === void 0 ? nextDrillLevel(question, dimensions) : into;
|
|
43862
|
+
const next = into === void 0 ? nextDrillLevel(question, dimensions, paths) : into;
|
|
43854
43863
|
return { ...narrowed, by: next ? [next] : [], across: next && question.across === next ? null : question.across ?? null };
|
|
43855
43864
|
}
|
|
43856
43865
|
function drillToRecords(question, groups) {
|
|
@@ -44091,6 +44100,7 @@ function normalize(q) {
|
|
|
44091
44100
|
|
|
44092
44101
|
// src/data-table/DrillAnswerTable.tsx
|
|
44093
44102
|
import { Fragment as Fragment11, jsx as jsx41, jsxs as jsxs31 } from "react/jsx-runtime";
|
|
44103
|
+
var NO_PATHS = [];
|
|
44094
44104
|
function plural(n2, noun) {
|
|
44095
44105
|
return `${n2.toLocaleString()} ${n2 === 1 ? noun : `${noun}s`}`;
|
|
44096
44106
|
}
|
|
@@ -44147,6 +44157,7 @@ function MatrxDrillAnswerTable({
|
|
|
44147
44157
|
question,
|
|
44148
44158
|
onQuestionChange,
|
|
44149
44159
|
answers,
|
|
44160
|
+
paths = NO_PATHS,
|
|
44150
44161
|
error,
|
|
44151
44162
|
rowNoun = "record",
|
|
44152
44163
|
emptyLabel = "No value",
|
|
@@ -44163,7 +44174,7 @@ function MatrxDrillAnswerTable({
|
|
|
44163
44174
|
[question, answers, dimensions, measures]
|
|
44164
44175
|
);
|
|
44165
44176
|
const pivot = Boolean(question.across) && columns !== null && columns.length > 0;
|
|
44166
|
-
const next = nextDrillLevel(question, dimensions);
|
|
44177
|
+
const next = nextDrillLevel(question, dimensions, paths);
|
|
44167
44178
|
const nextLabel = next ? dimensionRefLabel(dimensions, next) : null;
|
|
44168
44179
|
const byKeys = new Set(question.by.map((ref) => parseDimensionRef(ref).key));
|
|
44169
44180
|
const filteredKeys = new Set(question.where.map((w) => parseDimensionRef(w.dim).key));
|
|
@@ -44240,7 +44251,7 @@ function MatrxDrillAnswerTable({
|
|
|
44240
44251
|
const scope = { ...question, by: question.by.slice(0, node.level + 1) };
|
|
44241
44252
|
const intoRef = deepest ? next : question.by[node.level + 1] ?? null;
|
|
44242
44253
|
const intoLabel = intoRef ? dimensionRefLabel(dimensions, intoRef) : null;
|
|
44243
|
-
const drill = () => onQuestionChange(drillInto(scope, node.groups, dimensions, intoRef));
|
|
44254
|
+
const drill = () => onQuestionChange(drillInto(scope, node.groups, dimensions, intoRef, paths));
|
|
44244
44255
|
const records = () => onQuestionChange(drillToRecords(scope, node.groups));
|
|
44245
44256
|
return /* @__PURE__ */ jsxs31(Fragment10, { children: [
|
|
44246
44257
|
/* @__PURE__ */ jsx41(
|
|
@@ -53871,6 +53882,7 @@ function MatrxDataTableCore(coreProps) {
|
|
|
53871
53882
|
question: drill.question,
|
|
53872
53883
|
onQuestionChange: drill.onQuestionChange,
|
|
53873
53884
|
answers: drill.answers,
|
|
53885
|
+
...drill.paths ? { paths: drill.paths } : {},
|
|
53874
53886
|
error: drill.error,
|
|
53875
53887
|
rowNoun: drill.rowNoun ?? grouping?.rowNoun ?? "record",
|
|
53876
53888
|
emptyLabel: drill.emptyLabel
|