@apia/query 5.0.1 → 5.0.6

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.
@@ -0,0 +1,206 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
+ var __publicField = (obj, key, value) => {
4
+ __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
+ return value;
6
+ };
7
+ class QueryPivotPresentationState {
8
+ constructor(state, revision = 0, capturePivotFilters = true) {
9
+ __publicField(this, "rows");
10
+ __publicField(this, "columns");
11
+ __publicField(this, "aggregatorColumns");
12
+ __publicField(this, "aggregator");
13
+ __publicField(this, "renderer");
14
+ __publicField(this, "rowSort");
15
+ __publicField(this, "columnSort");
16
+ __publicField(this, "pivotFilters");
17
+ __publicField(this, "revision");
18
+ this.rows = [...state.rows || []];
19
+ this.columns = [...state.cols || []];
20
+ this.aggregatorColumns = [...state.vals || []];
21
+ this.aggregator = QueryPivotPresentationState.contractName(
22
+ state.aggregatorName
23
+ );
24
+ this.renderer = QueryPivotPresentationState.contractName(state.rendererName);
25
+ this.rowSort = QueryPivotPresentationState.contractSort(state.rowOrder);
26
+ this.columnSort = QueryPivotPresentationState.contractSort(state.colOrder);
27
+ this.pivotFilters = capturePivotFilters ? QueryPivotPresentationState.captureFilters(state) : [];
28
+ this.revision = revision;
29
+ }
30
+ static valueFilter(filters) {
31
+ const result = {};
32
+ (filters || []).forEach((filter) => {
33
+ if (filter.allSelected)
34
+ return;
35
+ const selected = new Set(filter.selectedValues || []);
36
+ const excluded = (filter.possibleValues || []).filter(
37
+ (value) => !selected.has(value)
38
+ );
39
+ if (excluded.length > 0) {
40
+ result[filter.field] = excluded.reduce(
41
+ (values, value) => {
42
+ values[value] = true;
43
+ return values;
44
+ },
45
+ {}
46
+ );
47
+ }
48
+ });
49
+ return result;
50
+ }
51
+ /**
52
+ * Preserves restrictive selections while applying a newer presentation snapshot.
53
+ */
54
+ static merge(previous, current) {
55
+ if (!previous)
56
+ return current;
57
+ const previousByField = new Map(
58
+ (previous.pivotFilters || []).map((filter) => [filter.field, filter])
59
+ );
60
+ const currentFields = new Set(
61
+ (current.pivotFilters || []).map((filter) => filter.field)
62
+ );
63
+ const pivotFilters = (current.pivotFilters || []).map((filter) => {
64
+ const prior = previousByField.get(filter.field);
65
+ if (!filter.allSelected || !prior || prior.allSelected) {
66
+ return filter;
67
+ }
68
+ const possibleValues = filter.possibleValues.length > 0 ? filter.possibleValues : prior.possibleValues;
69
+ const possible = new Set(possibleValues);
70
+ const selectedValues = prior.selectedValues.filter(
71
+ (value) => possible.has(value)
72
+ );
73
+ return {
74
+ ...filter,
75
+ possibleValues,
76
+ selectedValues,
77
+ allSelected: false
78
+ };
79
+ });
80
+ (previous.pivotFilters || []).forEach((filter) => {
81
+ if (!currentFields.has(filter.field)) {
82
+ pivotFilters.push(filter);
83
+ }
84
+ });
85
+ return {
86
+ ...previous,
87
+ ...current,
88
+ pivotFilters,
89
+ revision: Math.max(previous.revision || 0, current.revision || 0)
90
+ };
91
+ }
92
+ static aggregatorName(value) {
93
+ return AGGREGATORS[value || ""] || value || "Count";
94
+ }
95
+ static rendererName(value) {
96
+ return RENDERERS[value || ""] || value || "Table";
97
+ }
98
+ static pivotSort(value) {
99
+ if (value === "VALUE_ASC")
100
+ return "value_a_to_z";
101
+ if (value === "VALUE_DESC")
102
+ return "value_z_to_a";
103
+ return "key_a_to_z";
104
+ }
105
+ static captureFilters(state) {
106
+ const valuesByField = QueryPivotPresentationState.valuesByField(state.data);
107
+ const excluded = state.valueFilter || {};
108
+ return [...valuesByField.entries()].map(([field, values]) => {
109
+ const possibleValues = [...values];
110
+ const excludedValues = excluded[field] || {};
111
+ const selectedValues = possibleValues.filter(
112
+ (value) => !Object.prototype.hasOwnProperty.call(excludedValues, value)
113
+ );
114
+ const allSelected = selectedValues.length === possibleValues.length;
115
+ return {
116
+ field,
117
+ role: state.rows?.includes(field) ? "ROW" : state.cols?.includes(field) ? "COLUMN" : "UNUSED",
118
+ possibleValues,
119
+ selectedValues: allSelected ? [] : selectedValues,
120
+ allSelected
121
+ };
122
+ });
123
+ }
124
+ static valuesByField(data) {
125
+ const values = /* @__PURE__ */ new Map();
126
+ const addRecord = (record) => {
127
+ Object.entries(record).forEach(([field, value]) => {
128
+ if (!values.has(field))
129
+ values.set(field, /* @__PURE__ */ new Set());
130
+ values.get(field).add(value == null ? "null" : String(value));
131
+ });
132
+ };
133
+ if (typeof data === "function") {
134
+ data((record) => addRecord(record));
135
+ return values;
136
+ }
137
+ if (!Array.isArray(data) || data.length === 0)
138
+ return values;
139
+ if (Array.isArray(data[0])) {
140
+ const rows = data;
141
+ const headers = rows[0] || [];
142
+ headers.forEach((header) => values.set(String(header), /* @__PURE__ */ new Set()));
143
+ rows.slice(1).forEach((row) => {
144
+ headers.forEach((header, index) => {
145
+ values.get(String(header)).add(
146
+ row[index] == null ? "null" : String(row[index])
147
+ );
148
+ });
149
+ });
150
+ return values;
151
+ }
152
+ data.forEach(addRecord);
153
+ return values;
154
+ }
155
+ static contractName(value) {
156
+ return (value || "").trim().replace(/[^a-zA-Z0-9]+/g, "_").toUpperCase();
157
+ }
158
+ static contractSort(value) {
159
+ if (value === "value_a_to_z")
160
+ return "VALUE_ASC";
161
+ if (value === "value_z_to_a")
162
+ return "VALUE_DESC";
163
+ return "LABEL_ASC";
164
+ }
165
+ }
166
+ const AGGREGATORS = {
167
+ COUNT: "Count",
168
+ COUNT_UNIQUE_VALUES: "Count Unique Values",
169
+ LIST_UNIQUE_VALUES: "List Unique Values",
170
+ SUM: "Sum",
171
+ INTEGER_SUM: "Integer Sum",
172
+ AVERAGE: "Average",
173
+ MEDIAN: "Median",
174
+ SAMPLE_VARIANCE: "Sample Variance",
175
+ SAMPLE_STANDARD_DEVIATION: "Sample Standard Deviation",
176
+ MINIMUM: "Minimum",
177
+ MAXIMUM: "Maximum",
178
+ FIRST: "First",
179
+ LAST: "Last",
180
+ SUM_OVER_SUM: "Sum over Sum",
181
+ SUM_AS_FRACTION_OF_TOTAL: "Sum as Fraction of Total",
182
+ SUM_AS_FRACTION_OF_ROWS: "Sum as Fraction of Rows",
183
+ SUM_AS_FRACTION_OF_COLUMNS: "Sum as Fraction of Columns",
184
+ COUNT_AS_FRACTION_OF_TOTAL: "Count as Fraction of Total",
185
+ COUNT_AS_FRACTION_OF_ROWS: "Count as Fraction of Rows",
186
+ COUNT_AS_FRACTION_OF_COLUMNS: "Count as Fraction of Columns"
187
+ };
188
+ const RENDERERS = {
189
+ TABLE: "Table",
190
+ TABLE_HEATMAP: "Table Heatmap",
191
+ TABLE_COL_HEATMAP: "Table Col Heatmap",
192
+ TABLE_ROW_HEATMAP: "Table Row Heatmap",
193
+ EXPORTABLE_TSV: "Exportable TSV",
194
+ GROUPED_COLUMN_CHART: "Grouped Column Chart",
195
+ STACKED_COLUMN_CHART: "Stacked Column Chart",
196
+ GROUPED_BAR_CHART: "Grouped Bar Chart",
197
+ STACKED_BAR_CHART: "Stacked Bar Chart",
198
+ LINE_CHART: "Line Chart",
199
+ DOT_CHART: "Dot Chart",
200
+ AREA_CHART: "Area Chart",
201
+ SCATTER_CHART: "Scatter Chart",
202
+ MULTIPLE_PIE_CHART: "Multiple Pie Chart"
203
+ };
204
+
205
+ export { QueryPivotPresentationState };
206
+ //# sourceMappingURL=QueryPivotPresentationState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QueryPivotPresentationState.js","sources":["../src/QueryPivotPresentationState.ts"],"sourcesContent":["import {\r\n PivotTableUIProps,\r\n TableInput,\r\n TQuerySort,\r\n} from '@apia/charts';\r\n\r\nexport type TQueryPivotFieldRole = 'ROW' | 'COLUMN' | 'UNUSED';\r\n\r\nexport type TQueryPivotFieldFilter = {\r\n field: string;\r\n role: TQueryPivotFieldRole;\r\n possibleValues: string[];\r\n selectedValues: string[];\r\n allSelected: boolean;\r\n};\r\n\r\n/**\r\n * Serializable, complete functional state of one interactive pivot.\r\n */\r\nexport class QueryPivotPresentationState {\r\n rows: string[];\r\n columns: string[];\r\n aggregatorColumns: string[];\r\n aggregator: string;\r\n renderer: string;\r\n rowSort: string;\r\n columnSort: string;\r\n pivotFilters: TQueryPivotFieldFilter[];\r\n revision: number;\r\n\r\n public constructor(\r\n state: Omit<PivotTableUIProps, 'onChange'>,\r\n revision = 0,\r\n capturePivotFilters = true,\r\n ) {\r\n this.rows = [...(state.rows || [])];\r\n this.columns = [...(state.cols || [])];\r\n this.aggregatorColumns = [...(state.vals || [])];\r\n this.aggregator = QueryPivotPresentationState.contractName(\r\n state.aggregatorName,\r\n );\r\n this.renderer = QueryPivotPresentationState.contractName(state.rendererName);\r\n this.rowSort = QueryPivotPresentationState.contractSort(state.rowOrder);\r\n this.columnSort = QueryPivotPresentationState.contractSort(state.colOrder);\r\n this.pivotFilters = capturePivotFilters\r\n ? QueryPivotPresentationState.captureFilters(state)\r\n : [];\r\n this.revision = revision;\r\n }\r\n\r\n public static valueFilter(\r\n filters?: TQueryPivotFieldFilter[],\r\n ): NonNullable<PivotTableUIProps['valueFilter']> {\r\n const result: NonNullable<PivotTableUIProps['valueFilter']> = {};\r\n (filters || []).forEach((filter) => {\r\n if (filter.allSelected) return;\r\n const selected = new Set(filter.selectedValues || []);\r\n const excluded = (filter.possibleValues || []).filter(\r\n (value) => !selected.has(value),\r\n );\r\n if (excluded.length > 0) {\r\n result[filter.field] = excluded.reduce<Record<string, boolean>>(\r\n (values, value) => {\r\n values[value] = true;\r\n return values;\r\n },\r\n {},\r\n );\r\n }\r\n });\r\n return result;\r\n }\r\n\r\n /**\r\n * Preserves restrictive selections while applying a newer presentation snapshot.\r\n */\r\n public static merge(\r\n previous: QueryPivotPresentationState | undefined,\r\n current: QueryPivotPresentationState,\r\n ): QueryPivotPresentationState {\r\n if (!previous) return current;\r\n const previousByField = new Map(\r\n (previous.pivotFilters || []).map((filter) => [filter.field, filter]),\r\n );\r\n const currentFields = new Set(\r\n (current.pivotFilters || []).map((filter) => filter.field),\r\n );\r\n const pivotFilters = (current.pivotFilters || []).map((filter) => {\r\n const prior = previousByField.get(filter.field);\r\n if (!filter.allSelected || !prior || prior.allSelected) {\r\n return filter;\r\n }\r\n const possibleValues =\r\n filter.possibleValues.length > 0\r\n ? filter.possibleValues\r\n : prior.possibleValues;\r\n const possible = new Set(possibleValues);\r\n const selectedValues = prior.selectedValues.filter((value) =>\r\n possible.has(value),\r\n );\r\n return {\r\n ...filter,\r\n possibleValues,\r\n selectedValues,\r\n allSelected: false,\r\n };\r\n });\r\n (previous.pivotFilters || []).forEach((filter) => {\r\n if (!currentFields.has(filter.field)) {\r\n pivotFilters.push(filter);\r\n }\r\n });\r\n return {\r\n ...previous,\r\n ...current,\r\n pivotFilters,\r\n revision: Math.max(previous.revision || 0, current.revision || 0),\r\n };\r\n }\r\n\r\n public static aggregatorName(value?: string) {\r\n return AGGREGATORS[value || ''] || value || 'Count';\r\n }\r\n\r\n public static rendererName(value?: string) {\r\n return RENDERERS[value || ''] || value || 'Table';\r\n }\r\n\r\n public static pivotSort(value?: string): TQuerySort {\r\n if (value === 'VALUE_ASC') return 'value_a_to_z';\r\n if (value === 'VALUE_DESC') return 'value_z_to_a';\r\n return 'key_a_to_z';\r\n }\r\n\r\n private static captureFilters(\r\n state: Omit<PivotTableUIProps, 'onChange'>,\r\n ): TQueryPivotFieldFilter[] {\r\n const valuesByField = QueryPivotPresentationState.valuesByField(state.data);\r\n const excluded = state.valueFilter || {};\r\n return [...valuesByField.entries()].map(([field, values]) => {\r\n const possibleValues = [...values];\r\n const excludedValues = excluded[field] || {};\r\n const selectedValues = possibleValues.filter(\r\n (value) => !Object.prototype.hasOwnProperty.call(excludedValues, value),\r\n );\r\n const allSelected = selectedValues.length === possibleValues.length;\r\n return {\r\n field,\r\n role: state.rows?.includes(field)\r\n ? 'ROW'\r\n : state.cols?.includes(field)\r\n ? 'COLUMN'\r\n : 'UNUSED',\r\n possibleValues,\r\n selectedValues: allSelected ? [] : selectedValues,\r\n allSelected,\r\n };\r\n });\r\n }\r\n\r\n private static valuesByField(data: TableInput) {\r\n const values = new Map<string, Set<string>>();\r\n const addRecord = (record: Record<string, unknown>) => {\r\n Object.entries(record).forEach(([field, value]) => {\r\n if (!values.has(field)) values.set(field, new Set<string>());\r\n values.get(field)!.add(value == null ? 'null' : String(value));\r\n });\r\n };\r\n\r\n if (typeof data === 'function') {\r\n data((record) => addRecord(record));\r\n return values;\r\n }\r\n if (!Array.isArray(data) || data.length === 0) return values;\r\n if (Array.isArray(data[0])) {\r\n const rows = data as string[][];\r\n const headers = rows[0] || [];\r\n headers.forEach((header) => values.set(String(header), new Set<string>()));\r\n rows.slice(1).forEach((row) => {\r\n headers.forEach((header, index) => {\r\n values.get(String(header))!.add(\r\n row[index] == null ? 'null' : String(row[index]),\r\n );\r\n });\r\n });\r\n return values;\r\n }\r\n (data as Array<Record<string, string>>).forEach(addRecord);\r\n return values;\r\n }\r\n\r\n private static contractName(value?: string) {\r\n return (value || '').trim().replace(/[^a-zA-Z0-9]+/g, '_').toUpperCase();\r\n }\r\n\r\n private static contractSort(value?: TQuerySort) {\r\n if (value === 'value_a_to_z') return 'VALUE_ASC';\r\n if (value === 'value_z_to_a') return 'VALUE_DESC';\r\n return 'LABEL_ASC';\r\n }\r\n}\r\n\r\nconst AGGREGATORS: Record<string, string> = {\r\n COUNT: 'Count',\r\n COUNT_UNIQUE_VALUES: 'Count Unique Values',\r\n LIST_UNIQUE_VALUES: 'List Unique Values',\r\n SUM: 'Sum',\r\n INTEGER_SUM: 'Integer Sum',\r\n AVERAGE: 'Average',\r\n MEDIAN: 'Median',\r\n SAMPLE_VARIANCE: 'Sample Variance',\r\n SAMPLE_STANDARD_DEVIATION: 'Sample Standard Deviation',\r\n MINIMUM: 'Minimum',\r\n MAXIMUM: 'Maximum',\r\n FIRST: 'First',\r\n LAST: 'Last',\r\n SUM_OVER_SUM: 'Sum over Sum',\r\n SUM_AS_FRACTION_OF_TOTAL: 'Sum as Fraction of Total',\r\n SUM_AS_FRACTION_OF_ROWS: 'Sum as Fraction of Rows',\r\n SUM_AS_FRACTION_OF_COLUMNS: 'Sum as Fraction of Columns',\r\n COUNT_AS_FRACTION_OF_TOTAL: 'Count as Fraction of Total',\r\n COUNT_AS_FRACTION_OF_ROWS: 'Count as Fraction of Rows',\r\n COUNT_AS_FRACTION_OF_COLUMNS: 'Count as Fraction of Columns',\r\n};\r\n\r\nconst RENDERERS: Record<string, string> = {\r\n TABLE: 'Table',\r\n TABLE_HEATMAP: 'Table Heatmap',\r\n TABLE_COL_HEATMAP: 'Table Col Heatmap',\r\n TABLE_ROW_HEATMAP: 'Table Row Heatmap',\r\n EXPORTABLE_TSV: 'Exportable TSV',\r\n GROUPED_COLUMN_CHART: 'Grouped Column Chart',\r\n STACKED_COLUMN_CHART: 'Stacked Column Chart',\r\n GROUPED_BAR_CHART: 'Grouped Bar Chart',\r\n STACKED_BAR_CHART: 'Stacked Bar Chart',\r\n LINE_CHART: 'Line Chart',\r\n DOT_CHART: 'Dot Chart',\r\n AREA_CHART: 'Area Chart',\r\n SCATTER_CHART: 'Scatter Chart',\r\n MULTIPLE_PIE_CHART: 'Multiple Pie Chart',\r\n};\r\n"],"names":[],"mappings":"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"}
@@ -39,10 +39,10 @@ const Pagination = observer(
39
39
  onRefresh: () => {
40
40
  controller.refresh();
41
41
  },
42
- pageCount: controller.state.navigation.showPagination ? controller.state.navigation.pagesCount <= 0 ? 1 : controller.state.navigation.pagesCount : 0,
43
- recordsCount: controller.state.navigation.showRegisterAmount ? controller.state.navigation.registers : -1,
42
+ pageCount: controller.state.navigation.showPagination !== false ? controller.state.navigation.pagesCount <= 0 ? 1 : controller.state.navigation.pagesCount : 0,
43
+ recordsCount: controller.state.navigation.showRegisterAmount !== false ? controller.state.navigation.registers : -1,
44
44
  appliedFilters: controller.table.getFilters().filter((c) => c.hasValue()).length,
45
- reachedMax: controller.state.navigation.reachedMax,
45
+ reachedMax: controller.state.navigation.hasReachedMax,
46
46
  hasMore: controller.state.navigation.hasMore,
47
47
  areAllFiltersApplied: controller.state.areAllFiltersApplied,
48
48
  onDeleteFilters: () => controller.clearFilters(),
@@ -1 +1 @@
1
- {"version":3,"file":"Pagination.js","sources":["../../src/components/Pagination.tsx"],"sourcesContent":["import { observer } from 'mobx-react-lite';\r\nimport { Pagination as PG } from '@apia/components';\r\nimport { getLabel } from '@apia/util';\r\nimport { ListFunctionalityController } from '../ListFunctionalityController';\r\nimport { ListController } from '../ListController';\r\n\r\nconst labels = {\r\n deleteFilters: getLabel('btnClearFilter').text,\r\n firstPage: getLabel('btnNavFirst').text,\r\n information: getLabel('lblInfo').text,\r\n lastPage: getLabel('btnNavLast').text,\r\n nextPage: getLabel('btnNavNext').text,\r\n maximize: getLabel('lblMaximizeWindow').text,\r\n minimize: getLabel('lblMinimizeWindow').text,\r\n moreData: getLabel('lblMoreData').text,\r\n page: getLabel('lblPage').text,\r\n pageInputInstructions: getLabel('btnNavFirst').text,\r\n previousPage: getLabel('btnNavPrev').text,\r\n refresh: getLabel('btnAct').text,\r\n totalRecords: getLabel('lblTotReg').text,\r\n totalRecordsReached: getLabel('msgTotRegReached').text,\r\n registersPerPage: getLabel('lblQryParamPagNum').text,\r\n};\r\n\r\nexport const Pagination = observer(\r\n ({\r\n controller,\r\n fncController,\r\n variant,\r\n }: {\r\n controller: ListController;\r\n fncController?: ListFunctionalityController;\r\n variant?: 'primary' | 'secondary' | 'datagrid';\r\n }) => {\r\n return (\r\n <PG\r\n onRegistersPerPageChange={\r\n controller.configuration?.canSetRegistersPerPage\r\n ? controller.setRegistersPerPage.bind(controller)\r\n : undefined\r\n }\r\n registersPerPage={controller.registersPerPage}\r\n variant={variant}\r\n currentPage={controller.state.navigation.currentPage}\r\n onPageChange={(page) => {\r\n controller.page(page);\r\n }}\r\n onRefresh={() => {\r\n controller.refresh();\r\n }}\r\n pageCount={\r\n controller.state.navigation.showPagination\r\n ? controller.state.navigation.pagesCount <= 0\r\n ? 1\r\n : controller.state.navigation.pagesCount\r\n : 0\r\n }\r\n recordsCount={\r\n controller.state.navigation.showRegisterAmount\r\n ? controller.state.navigation.registers\r\n : -1\r\n }\r\n appliedFilters={\r\n controller.table.getFilters().filter((c) => c.hasValue()).length\r\n }\r\n reachedMax={controller.state.navigation.reachedMax}\r\n hasMore={controller.state.navigation.hasMore}\r\n areAllFiltersApplied={controller.state.areAllFiltersApplied}\r\n onDeleteFilters={() => controller.clearFilters()}\r\n labels={labels}\r\n isMaximized={fncController?.state.isMaximized}\r\n onMaximize={\r\n fncController\r\n ? () => {\r\n fncController!.state.isMaximized =\r\n !fncController?.state.isMaximized;\r\n if (fncController?.state.isMaximized) {\r\n document\r\n .querySelector('.twoColumnsList')\r\n ?.classList.add('maximized');\r\n } else {\r\n document\r\n .querySelector('.twoColumnsList')\r\n ?.classList.remove('maximized');\r\n }\r\n }\r\n : undefined\r\n }\r\n />\r\n );\r\n },\r\n);\r\n"],"names":["PG"],"mappings":"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"}
1
+ {"version":3,"file":"Pagination.js","sources":["../../src/components/Pagination.tsx"],"sourcesContent":["import { observer } from 'mobx-react-lite';\r\nimport { Pagination as PG } from '@apia/components';\r\nimport { getLabel } from '@apia/util';\r\nimport { ListFunctionalityController } from '../ListFunctionalityController';\r\nimport { ListController } from '../ListController';\r\n\r\nconst labels = {\r\n deleteFilters: getLabel('btnClearFilter').text,\r\n firstPage: getLabel('btnNavFirst').text,\r\n information: getLabel('lblInfo').text,\r\n lastPage: getLabel('btnNavLast').text,\r\n nextPage: getLabel('btnNavNext').text,\r\n maximize: getLabel('lblMaximizeWindow').text,\r\n minimize: getLabel('lblMinimizeWindow').text,\r\n moreData: getLabel('lblMoreData').text,\r\n page: getLabel('lblPage').text,\r\n pageInputInstructions: getLabel('btnNavFirst').text,\r\n previousPage: getLabel('btnNavPrev').text,\r\n refresh: getLabel('btnAct').text,\r\n totalRecords: getLabel('lblTotReg').text,\r\n totalRecordsReached: getLabel('msgTotRegReached').text,\r\n registersPerPage: getLabel('lblQryParamPagNum').text,\r\n};\r\n\r\nexport const Pagination = observer(\r\n ({\r\n controller,\r\n fncController,\r\n variant,\r\n }: {\r\n controller: ListController;\r\n fncController?: ListFunctionalityController;\r\n variant?: 'primary' | 'secondary' | 'datagrid';\r\n }) => {\r\n return (\r\n <PG\r\n onRegistersPerPageChange={\r\n controller.configuration?.canSetRegistersPerPage\r\n ? controller.setRegistersPerPage.bind(controller)\r\n : undefined\r\n }\r\n registersPerPage={controller.registersPerPage}\r\n variant={variant}\r\n currentPage={controller.state.navigation.currentPage}\r\n onPageChange={(page) => {\r\n controller.page(page);\r\n }}\r\n onRefresh={() => {\r\n controller.refresh();\r\n }}\r\n pageCount={\r\n controller.state.navigation.showPagination !== false\r\n ? controller.state.navigation.pagesCount <= 0\r\n ? 1\r\n : controller.state.navigation.pagesCount\r\n : 0\r\n }\r\n recordsCount={\r\n controller.state.navigation.showRegisterAmount !== false\r\n ? controller.state.navigation.registers\r\n : -1\r\n }\r\n appliedFilters={\r\n controller.table.getFilters().filter((c) => c.hasValue()).length\r\n }\r\n reachedMax={controller.state.navigation.hasReachedMax}\r\n hasMore={controller.state.navigation.hasMore}\r\n areAllFiltersApplied={controller.state.areAllFiltersApplied}\r\n onDeleteFilters={() => controller.clearFilters()}\r\n labels={labels}\r\n isMaximized={fncController?.state.isMaximized}\r\n onMaximize={\r\n fncController\r\n ? () => {\r\n fncController!.state.isMaximized =\r\n !fncController?.state.isMaximized;\r\n if (fncController?.state.isMaximized) {\r\n document\r\n .querySelector('.twoColumnsList')\r\n ?.classList.add('maximized');\r\n } else {\r\n document\r\n .querySelector('.twoColumnsList')\r\n ?.classList.remove('maximized');\r\n }\r\n }\r\n : undefined\r\n }\r\n />\r\n );\r\n },\r\n);\r\n"],"names":["PG"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,4 +6,5 @@ export { getDateFromString } from './utils/getStringFromDate.js';
6
6
  export { ModalListController } from './ModalListController.js';
7
7
  export { ListFunctionalityController } from './ListFunctionalityController.js';
8
8
  export { PivotTableConfig, QueriesFunctionalityController, TApiaChartDefinition, TChartData } from './QueriesFunctionalityController.js';
9
+ export { QueryPivotPresentationState, TQueryPivotFieldFilter, TQueryPivotFieldRole } from './QueryPivotPresentationState.js';
9
10
  //# sourceMappingURL=index.d.ts.map
package/dist/index.js CHANGED
@@ -3,6 +3,7 @@ export { ListController } from './ListController.js';
3
3
  export { ModalListController } from './ModalListController.js';
4
4
  export { ListFunctionalityController } from './ListFunctionalityController.js';
5
5
  export { QueriesFunctionalityController } from './QueriesFunctionalityController.js';
6
+ export { QueryPivotPresentationState } from './QueryPivotPresentationState.js';
6
7
  export { getDateFromString } from './utils/getStringFromDate.js';
7
8
  export { getStringFromDate } from './utils/getDateFromString.js';
8
9
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
package/dist/types.d.ts CHANGED
@@ -1,7 +1,11 @@
1
1
  import { ApiContext } from '@apia/api2';
2
2
 
3
+ /**
4
+ * Runtime services required by query controllers to access Apia and dates.
5
+ */
3
6
  type TQueryEnvironment = {
4
7
  context: ApiContext;
8
+ queryId?: string | number;
5
9
  getDateFromString?: (str: string, timeFormat?: boolean) => Date | undefined;
6
10
  getStringFromDate?: (str: Date, timeFormat?: boolean) => string | undefined;
7
11
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apia/query",
3
- "version": "5.0.1",
3
+ "version": "5.0.6",
4
4
  "sideEffects": false,
5
5
  "author": "Alexis Leite <alexisleite@live.com>",
6
6
  "main": "dist/index.js",
@@ -28,15 +28,15 @@
28
28
  "registry": "https://registry.npmjs.org/"
29
29
  },
30
30
  "dependencies": {
31
- "@apia/api2": "^5.0.1",
32
- "@apia/charts": "^5.0.1",
33
- "@apia/components": "^5.0.1",
34
- "@apia/table2-controller": "^5.0.1",
35
- "@apia/theme": "^5.0.1",
36
- "@apia/util": "^5.0.1",
31
+ "@apia/api2": "^5.0.6",
32
+ "@apia/charts": "^5.0.6",
33
+ "@apia/components": "^5.0.6",
34
+ "@apia/table2-controller": "^5.0.6",
35
+ "@apia/theme": "^5.0.6",
36
+ "@apia/util": "^5.0.6",
37
37
  "dayjs": "^1.11.13",
38
38
  "mobx": "6.12.3",
39
39
  "mobx-react-lite": "3.4.3"
40
40
  },
41
- "gitHead": "6d9a616690ac8454136310af79a721a8ccd6588d"
41
+ "gitHead": "09595104ae2cdb68bdf406ebd5b53b2ed0b54ec0"
42
42
  }