@genesislcap/grid-pro 14.481.1-alpha-69af5f8.0 → 14.481.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/custom-elements.json +521 -841
- package/dist/dts/datasource/server-side.datasource.d.ts.map +1 -1
- package/dist/dts/datasource/server-side.resource-base.d.ts +2 -26
- package/dist/dts/datasource/server-side.resource-base.d.ts.map +1 -1
- package/dist/dts/datasource/server-side.resource-dataserver.d.ts +1 -7
- package/dist/dts/datasource/server-side.resource-dataserver.d.ts.map +1 -1
- package/dist/dts/datasource/server-side.resource-reqrep.d.ts +1 -1
- package/dist/dts/datasource/server-side.resource-reqrep.d.ts.map +1 -1
- package/dist/dts/react.d.ts +9 -9
- package/dist/esm/datasource/server-side.datasource.js +2 -13
- package/dist/esm/datasource/server-side.resource-base.js +135 -204
- package/dist/esm/datasource/server-side.resource-dataserver.js +23 -205
- package/dist/esm/datasource/server-side.resource-reqrep.js +2 -3
- package/dist/react.cjs +6 -6
- package/dist/react.mjs +5 -5
- package/package.json +14 -14
|
@@ -27,32 +27,9 @@ export class DataserverServerSideDatasource extends BaseServerSideDatasource {
|
|
|
27
27
|
getRows(params) {
|
|
28
28
|
return __awaiter(this, void 0, void 0, function* () {
|
|
29
29
|
var _a, _b;
|
|
30
|
-
//
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
// AG Grid's SSRM cache, which makes AG Grid re-invoke getRows() with fresh params. This
|
|
34
|
-
// (now superseded) invocation must therefore stop here: continuing would race the re-init
|
|
35
|
-
// and attach a second subscription for stale params. That race was the root cause of two
|
|
36
|
-
// observed bugs: rows from the PREVIOUS criteria leaking into the new filter's result set,
|
|
37
|
-
// and broken loads when the stale call recreated the stream on a destroyed datasource.
|
|
38
|
-
//
|
|
39
|
-
// CRITICAL: the superseded request MUST still be resolved via params.fail() - never left
|
|
40
|
-
// dangling. AG Grid's RowNodeBlockLoader caps concurrent datasource requests
|
|
41
|
-
// (maxConcurrentDatasourceRequests, default 2) and only releases a slot when
|
|
42
|
-
// success()/fail() is invoked. A silent return leaks the slot FOREVER; after two
|
|
43
|
-
// filter/sort changes both slots are gone and the grid permanently stops issuing
|
|
44
|
-
// getRows() - no purge, scroll or new filter can ever revive it (observed as: clearing
|
|
45
|
-
// a filter leaves an empty grid, re-filtering does nothing). fail() here is safe: the
|
|
46
|
-
// purge already destroyed the cache this request belongs to, and LazyCache.onLoadFailed
|
|
47
|
-
// no-ops on a dead cache (guarded internally) - so the only effect is freeing the slot.
|
|
48
|
-
if (yield this.setupFiltering(params)) {
|
|
49
|
-
params.fail();
|
|
50
|
-
return;
|
|
51
|
-
}
|
|
52
|
-
if (yield this.setupSorting(params)) {
|
|
53
|
-
params.fail();
|
|
54
|
-
return;
|
|
55
|
-
}
|
|
30
|
+
// Use separated filtering and sorting setup
|
|
31
|
+
yield this.setupFiltering(params);
|
|
32
|
+
yield this.setupSorting(params);
|
|
56
33
|
if (this.pagination && !this.isNewPageSize && this.currentSequenceId > 0) {
|
|
57
34
|
const requestFilter = JSON.stringify((_a = params.request.filterModel) !== null && _a !== void 0 ? _a : {});
|
|
58
35
|
const currentFilter = JSON.stringify((_b = this.currentFilterModel) !== null && _b !== void 0 ? _b : {});
|
|
@@ -64,21 +41,7 @@ export class DataserverServerSideDatasource extends BaseServerSideDatasource {
|
|
|
64
41
|
if (!this.dataserverStream) {
|
|
65
42
|
this.dataserverStream = yield this.createDataserverStreamFunc(this.resourceParams);
|
|
66
43
|
}
|
|
67
|
-
const blockStartRow = Number.isFinite(Number(params.request.startRow))
|
|
68
|
-
? Number(params.request.startRow)
|
|
69
|
-
: 0;
|
|
70
|
-
const blockEndRow = Number.isFinite(Number(params.request.endRow))
|
|
71
|
-
? Number(params.request.endRow)
|
|
72
|
-
: blockStartRow + Number(this.maxRows);
|
|
73
|
-
// Infinite scroll keeps a session-cumulative row cache (see handleCurrentStreamLoad);
|
|
74
|
-
// when it already covers this block (AG Grid re-requesting a purged block, or an earlier
|
|
75
|
-
// over-delivery prefetched it), or the stream already ended, no further stream messages
|
|
76
|
-
// may ever arrive for this request - it must be resolved from the cache, synchronously.
|
|
77
|
-
const blockAlreadyCovered = !this.pagination &&
|
|
78
|
-
this.currentSequenceId >= 1 &&
|
|
79
|
-
(this.rowData.size >= blockEndRow || !this.moreRows);
|
|
80
44
|
if (this.currentSequenceId >= 1 &&
|
|
81
|
-
!blockAlreadyCovered &&
|
|
82
45
|
(this.moreRows || params.request.startRow >= Number(this.maxRows))) {
|
|
83
46
|
if (this.pagination) {
|
|
84
47
|
const startRow = Number.isFinite(Number(params.request.startRow))
|
|
@@ -95,80 +58,16 @@ export class DataserverServerSideDatasource extends BaseServerSideDatasource {
|
|
|
95
58
|
this.connect.getMoreRows(this.sourceRef, viewNumber);
|
|
96
59
|
}
|
|
97
60
|
}
|
|
98
|
-
// NOTE: getRows() deliberately does NOT unsubscribe previous subscriptions here - this
|
|
99
|
-
// stream is tied to a live server-side feed (a DATA_LOGON session), and .unsubscribe()
|
|
100
|
-
// sends DATA_LOGOFF to the SERVER, killing the whole session (confirmed: every later
|
|
101
|
-
// block request failed outright after an experimental per-block unsubscribe). Earlier
|
|
102
|
-
// subscriptions go inert via their own applyResult flag once resolved.
|
|
103
61
|
let applyResult = true;
|
|
104
|
-
const clearSafetyTimer = (timer) => {
|
|
105
|
-
if (timer !== undefined) {
|
|
106
|
-
clearTimeout(timer);
|
|
107
|
-
}
|
|
108
|
-
};
|
|
109
|
-
const resolveBlock = (timer) => {
|
|
110
|
-
if (!applyResult) {
|
|
111
|
-
return;
|
|
112
|
-
}
|
|
113
|
-
applyResult = false;
|
|
114
|
-
clearSafetyTimer(timer);
|
|
115
|
-
const allRows = Array.from(this.rowData.values());
|
|
116
|
-
const successRowData = {
|
|
117
|
-
// Non-pagination: deliver only THIS block's slice of the session-cumulative
|
|
118
|
-
// cache - AG Grid SSRM expects each request to receive exactly the rows for its
|
|
119
|
-
// own startRow..endRow range, not everything loaded so far.
|
|
120
|
-
rowData: this.pagination ? allRows : allRows.slice(blockStartRow, blockEndRow),
|
|
121
|
-
};
|
|
122
|
-
successRowData.rowCount = this.getCorrectRowCount(params);
|
|
123
|
-
this.lastSuccessRowData = successRowData;
|
|
124
|
-
params.success(successRowData);
|
|
125
|
-
this.notifyNoDataAvailableIfEmpty(params, successRowData);
|
|
126
|
-
};
|
|
127
|
-
if (blockAlreadyCovered) {
|
|
128
|
-
resolveBlock();
|
|
129
|
-
return;
|
|
130
|
-
}
|
|
131
|
-
// Safety valve: a block must never stay pending forever if the stream goes quiet without
|
|
132
|
-
// delivering a full batch (anomalous, but an eternally-spinning grid is the worst outcome).
|
|
133
|
-
// Resolving short with the honest accumulated count makes AG Grid end the dataset there.
|
|
134
|
-
const safetyTimer = setTimeout(() => {
|
|
135
|
-
if (applyResult) {
|
|
136
|
-
logger.warn(`SSRM block ${blockStartRow}-${blockEndRow} for ${this.resourceName} timed out waiting for a full batch; resolving with ${this.rowData.size} accumulated row(s).`);
|
|
137
|
-
resolveBlock(safetyTimer);
|
|
138
|
-
}
|
|
139
|
-
}, DataserverServerSideDatasource.BLOCK_RESOLVE_TIMEOUT_MS);
|
|
140
62
|
this.dataserverStreamSubscription = this.dataserverStream.subscribe((dataserverResult) => {
|
|
141
63
|
var _a;
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
const messageType = dataserverResult === null || dataserverResult === void 0 ? void 0 : dataserverResult.MESSAGE_TYPE;
|
|
148
|
-
if (messageType &&
|
|
149
|
-
(messageType === MessageType.LOGOFF_ACK || messageType === MessageType.MSG_NACK)) {
|
|
150
|
-
applyResult = false;
|
|
151
|
-
clearSafetyTimer(safetyTimer);
|
|
152
|
-
if (this.errorHandlerFunc) {
|
|
153
|
-
const errorMessage = messageType === MessageType.LOGOFF_ACK
|
|
154
|
-
? `Connection lost to ${this.resourceName}`
|
|
155
|
-
: `Authentication failed for ${this.resourceName}`;
|
|
156
|
-
this.errorHandlerFunc(errorMessage, 'connection');
|
|
157
|
-
}
|
|
158
|
-
params.fail();
|
|
159
|
-
return;
|
|
160
|
-
}
|
|
161
|
-
if (this.pagination) {
|
|
162
|
-
// Original vendor behaviour for paginated mode: each message resolves the
|
|
163
|
-
// request (page swap), including the corrective snapshot() workaround for GSF's
|
|
164
|
-
// criteria-blind ROWS_COUNT.
|
|
64
|
+
const incomingRowCount = (_a = dataserverResult === null || dataserverResult === void 0 ? void 0 : dataserverResult.ROW) === null || _a === void 0 ? void 0 : _a.length;
|
|
65
|
+
const shouldApply = applyResult || (incomingRowCount > 0 && this.rowData.size === 0);
|
|
66
|
+
if (shouldApply) {
|
|
165
67
|
DOM.queueUpdate(() => __awaiter(this, void 0, void 0, function* () {
|
|
166
68
|
var _a, _b;
|
|
167
|
-
if (!applyResult) {
|
|
168
|
-
return;
|
|
169
|
-
}
|
|
170
69
|
// TODO: this is a bit of hack, due GSF not returning a different ROWS_COUNT when there is a CRITERIA_MATCH
|
|
171
|
-
if (this.resourceParams.CRITERIA_MATCH &&
|
|
70
|
+
if (this.resourceParams.CRITERIA_MATCH && this.pagination) {
|
|
172
71
|
const updatedInfo = yield this.connect.snapshot(this.resourceName, {
|
|
173
72
|
MAX_ROWS: this.maxView,
|
|
174
73
|
MAX_VIEW: this.maxView,
|
|
@@ -180,55 +79,14 @@ export class DataserverServerSideDatasource extends BaseServerSideDatasource {
|
|
|
180
79
|
this.clientRowsCount = 0;
|
|
181
80
|
}
|
|
182
81
|
else {
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
// the stream signals no more rows) but never under-reports - the dangerous
|
|
187
|
-
// direction, as AG Grid stops requesting blocks once the count is reached.
|
|
188
|
-
const rowsCount = (_a = updatedInfo.ROWS_COUNT) !== null && _a !== void 0 ? _a : 0;
|
|
189
|
-
const rowLength = (_b = updatedInfo.ROW) === null || _b === void 0 ? void 0 : _b.length;
|
|
190
|
-
this.serverRowsCount =
|
|
191
|
-
rowLength !== undefined ? Math.max(rowsCount, rowLength) : rowsCount;
|
|
82
|
+
this.serverRowsCount = this.resourceParams.CRITERIA_MATCH
|
|
83
|
+
? ((_b = (_a = updatedInfo.ROW) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : updatedInfo.ROWS_COUNT)
|
|
84
|
+
: updatedInfo.ROWS_COUNT;
|
|
192
85
|
}
|
|
193
|
-
this.criteriaRowCountResolved = true;
|
|
194
86
|
}
|
|
195
|
-
clearSafetyTimer(safetyTimer);
|
|
196
87
|
this.applyServerSideData(params, dataserverResult);
|
|
197
88
|
applyResult = false;
|
|
198
89
|
}));
|
|
199
|
-
return;
|
|
200
|
-
}
|
|
201
|
-
// Infinite scroll: GSF delivers one MAX_ROWS batch split across SEVERAL stream
|
|
202
|
-
// messages when a selective CRITERIA_MATCH makes matches sparse (observed on a live
|
|
203
|
-
// trace: SEQUENCE_IDs 1-7 carrying 14+17+7+12+22+25+3 = exactly 100 = MAX_ROWS rows).
|
|
204
|
-
// Resolving on the first message - the previous behaviour - handed AG Grid a fraction
|
|
205
|
-
// of the block and dropped the rest, which rendered as "ERR" stub rows. Instead,
|
|
206
|
-
// accumulate every message into the session cache and resolve only once this block's
|
|
207
|
-
// full extent is covered or the dataset genuinely ended.
|
|
208
|
-
if (dataserverResult && dataserverResult.MORE_ROWS !== undefined) {
|
|
209
|
-
this.moreRows = dataserverResult.MORE_ROWS;
|
|
210
|
-
}
|
|
211
|
-
if (dataserverResult && dataserverResult.ROW) {
|
|
212
|
-
const nextMessage = dataServerResultFilter(dataserverResult);
|
|
213
|
-
this.handleCurrentStreamLoad(nextMessage);
|
|
214
|
-
this.currentSequenceId = dataserverResult.SEQUENCE_ID;
|
|
215
|
-
if (this.currentSequenceId === 1) {
|
|
216
|
-
this.sourceRef = dataserverResult.SOURCE_REF;
|
|
217
|
-
if (this.serverRowsCount === 0) {
|
|
218
|
-
this.serverRowsCount = (_a = dataserverResult.ROWS_COUNT) !== null && _a !== void 0 ? _a : this.rowData.size;
|
|
219
|
-
}
|
|
220
|
-
}
|
|
221
|
-
}
|
|
222
|
-
else if (this.currentSequenceId === 0 && !this.moreRows) {
|
|
223
|
-
// The session's very first response carries no rows at all - the criteria
|
|
224
|
-
// matches nothing; resolve as empty instead of waiting for the timeout.
|
|
225
|
-
applyResult = false;
|
|
226
|
-
clearSafetyTimer(safetyTimer);
|
|
227
|
-
this.completeEmptyResult(params);
|
|
228
|
-
return;
|
|
229
|
-
}
|
|
230
|
-
if (this.rowData.size >= blockEndRow || !this.moreRows) {
|
|
231
|
-
DOM.queueUpdate(() => resolveBlock(safetyTimer));
|
|
232
90
|
}
|
|
233
91
|
});
|
|
234
92
|
});
|
|
@@ -276,11 +134,10 @@ export class DataserverServerSideDatasource extends BaseServerSideDatasource {
|
|
|
276
134
|
if (this.serverRowsCount === 0) {
|
|
277
135
|
this.serverRowsCount = (_a = result.ROWS_COUNT) !== null && _a !== void 0 ? _a : this.rowData.size;
|
|
278
136
|
}
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
// blocks after the first one.
|
|
137
|
+
if (this.getResourceParam('CRITERIA_MATCH') && result.ROW) {
|
|
138
|
+
this.serverRowsCount = result.ROW.length;
|
|
139
|
+
this.clientRowsCount = result.ROW.length;
|
|
140
|
+
}
|
|
284
141
|
}
|
|
285
142
|
const successRowData = {
|
|
286
143
|
rowData: Array.from(this.rowData.values()),
|
|
@@ -306,39 +163,31 @@ export class DataserverServerSideDatasource extends BaseServerSideDatasource {
|
|
|
306
163
|
this.resourceParams.ORDER_BY = null;
|
|
307
164
|
this.resourceParams.REVERSE = null;
|
|
308
165
|
yield this.refreshDatasource(params);
|
|
309
|
-
|
|
310
|
-
// matching contract on setupFiltering() in server-side.resource-base.ts.
|
|
311
|
-
return true;
|
|
166
|
+
return;
|
|
312
167
|
}
|
|
313
168
|
else if (toBeAppliedSortModel.length > 0) {
|
|
314
169
|
const coldIdBeingSorted = toBeAppliedSortModel[0].colId; // Not allowing multiple sorts by user
|
|
315
170
|
const sortTypeBeingApplied = toBeAppliedSortModel[0].sort;
|
|
316
171
|
const orderByAndToBeSortedColIds = this.getOrderByAndToBeSortedColIds(this.resourceIndexes, coldIdBeingSorted);
|
|
317
172
|
if (!orderByAndToBeSortedColIds) {
|
|
173
|
+
this.calculatedRowsCount = 0;
|
|
318
174
|
const availableIndexes = getAvailableIndexes(this.resourceIndexes);
|
|
319
175
|
const availableIndexFields = getAvailableIndexFields(this.resourceIndexes);
|
|
320
|
-
logger.warn(`The FIELD/column (${coldIdBeingSorted}) being sorted is not part of an INDEX, required for the [orderBy] operation
|
|
176
|
+
logger.warn(`The FIELD/column (${coldIdBeingSorted}) being sorted is not part of an INDEX, required for the [orderBy] operation. See https://learn.genesis.global/docs/database/data-types/index-entities/`);
|
|
321
177
|
logger.debug('Available indexes:', availableIndexes);
|
|
322
178
|
logger.debug('Columns that can be sorted with the available indexes:', availableIndexFields);
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
// grid workspace/settings carried a sort on a non-indexed column - the user had no
|
|
326
|
-
// way to recover except clearing the sort manually. Remember the model so
|
|
327
|
-
// identical follow-up requests don't re-warn, leave ORDER_BY/REVERSE untouched,
|
|
328
|
-
// and let getRows() carry on unsorted.
|
|
329
|
-
this.currentSortModel = toBeAppliedSortModel;
|
|
330
|
-
return false;
|
|
179
|
+
params.fail();
|
|
180
|
+
return;
|
|
331
181
|
}
|
|
332
182
|
else if (JSON.stringify(toBeAppliedSortModel) !== JSON.stringify(this.currentSortModel)) {
|
|
333
183
|
this.currentSortModel = toBeAppliedSortModel;
|
|
334
184
|
this.resourceParams.ORDER_BY = orderByAndToBeSortedColIds.orderBy;
|
|
335
185
|
this.resourceParams.REVERSE = sortTypeBeingApplied === 'desc' ? true : false;
|
|
336
186
|
yield this.refreshDatasource(params);
|
|
337
|
-
return
|
|
187
|
+
return;
|
|
338
188
|
}
|
|
339
189
|
}
|
|
340
190
|
}
|
|
341
|
-
return false;
|
|
342
191
|
});
|
|
343
192
|
}
|
|
344
193
|
destroy() {
|
|
@@ -354,45 +203,14 @@ export class DataserverServerSideDatasource extends BaseServerSideDatasource {
|
|
|
354
203
|
});
|
|
355
204
|
}
|
|
356
205
|
handleCurrentStreamLoad(result) {
|
|
357
|
-
var _a, _b
|
|
206
|
+
var _a, _b;
|
|
358
207
|
if (!result)
|
|
359
208
|
return;
|
|
360
|
-
|
|
361
|
-
// Infinite scroll instead accumulates a session-cumulative cache: GSF splits one MAX_ROWS
|
|
362
|
-
// batch across several incremental messages when a CRITERIA_MATCH filter is selective, and
|
|
363
|
-
// later batches append after earlier ones - replacing the buffer on every message threw
|
|
364
|
-
// away all but the latest fragment (see the accumulation comment in getRows()). Maps
|
|
365
|
-
// preserve insertion order, so the cache stays in server delivery order and can be sliced
|
|
366
|
-
// by block range.
|
|
367
|
-
const rows = this.pagination ? new Map() : new Map(this.rowData);
|
|
209
|
+
const rows = new Map();
|
|
368
210
|
(_a = result.inserts) === null || _a === void 0 ? void 0 : _a.forEach((insertData) => {
|
|
369
211
|
rows.set(insertData[this.rowId], insertData);
|
|
370
212
|
});
|
|
371
|
-
|
|
372
|
-
// rows may be partial (only changed fields), so merge them into the cached row rather than
|
|
373
|
-
// clobbering it; DELETE rows drop out of the cache. (Previously an update/delete-only
|
|
374
|
-
// message replaced the whole buffer with an EMPTY map, wiping every loaded row.)
|
|
375
|
-
(_b = result.updates) === null || _b === void 0 ? void 0 : _b.forEach((updateData) => {
|
|
376
|
-
const key = updateData === null || updateData === void 0 ? void 0 : updateData[this.rowId];
|
|
377
|
-
if (key === undefined) {
|
|
378
|
-
return;
|
|
379
|
-
}
|
|
380
|
-
const existing = rows.get(key);
|
|
381
|
-
rows.set(key, existing ? Object.assign(Object.assign({}, existing), updateData) : updateData);
|
|
382
|
-
});
|
|
383
|
-
(_c = result.deletes) === null || _c === void 0 ? void 0 : _c.forEach((deleteData) => {
|
|
384
|
-
const key = deleteData === null || deleteData === void 0 ? void 0 : deleteData[this.rowId];
|
|
385
|
-
if (key !== undefined) {
|
|
386
|
-
rows.delete(key);
|
|
387
|
-
}
|
|
388
|
-
});
|
|
389
|
-
this.clientRowsCount += (_e = (_d = result.inserts) === null || _d === void 0 ? void 0 : _d.length) !== null && _e !== void 0 ? _e : 0;
|
|
213
|
+
this.clientRowsCount += (_b = result.inserts.length) !== null && _b !== void 0 ? _b : 0;
|
|
390
214
|
this.rowData = rows;
|
|
391
215
|
}
|
|
392
216
|
}
|
|
393
|
-
/**
|
|
394
|
-
* How long a non-paginated SSRM block may stay pending before it is force-resolved with
|
|
395
|
-
* whatever rows have accumulated so far. See the safety valve in getRows().
|
|
396
|
-
* @internal
|
|
397
|
-
*/
|
|
398
|
-
DataserverServerSideDatasource.BLOCK_RESOLVE_TIMEOUT_MS = 10000;
|
|
@@ -255,7 +255,7 @@ export class ReqRepServerSideDatasource extends BaseServerSideDatasource {
|
|
|
255
255
|
this.currentSortModel = null;
|
|
256
256
|
this.resourceParams.DETAILS.ORDER_BY = undefined;
|
|
257
257
|
yield this.refreshDatasource(params);
|
|
258
|
-
return
|
|
258
|
+
return;
|
|
259
259
|
}
|
|
260
260
|
else if (toBeAppliedSortModel.length > 0) {
|
|
261
261
|
const coldIdBeingSorted = toBeAppliedSortModel[0].colId; // Not allowing multiple sorts by user
|
|
@@ -266,11 +266,10 @@ export class ReqRepServerSideDatasource extends BaseServerSideDatasource {
|
|
|
266
266
|
this.resourceParams.DETAILS.ORDER_BY =
|
|
267
267
|
coldIdBeingSorted + (sortTypeBeingApplied === 'desc' ? ' DESC' : ' ASC'); // Use the column directly
|
|
268
268
|
yield this.refreshDatasource(params);
|
|
269
|
-
return
|
|
269
|
+
return;
|
|
270
270
|
}
|
|
271
271
|
}
|
|
272
272
|
}
|
|
273
|
-
return false;
|
|
274
273
|
});
|
|
275
274
|
}
|
|
276
275
|
refreshDatasource(params) {
|
package/dist/react.cjs
CHANGED
|
@@ -121,6 +121,11 @@ const StringEditor = React.forwardRef(function StringEditor(props, ref) {
|
|
|
121
121
|
return React.createElement(customElements.getName(StringEditorWC) ?? '%%prefix%%-string-editor', { ...rest, ref }, children);
|
|
122
122
|
});
|
|
123
123
|
|
|
124
|
+
const GridProColumn = React.forwardRef(function GridProColumn(props, ref) {
|
|
125
|
+
const { children, ...rest } = props;
|
|
126
|
+
return React.createElement(customElements.getName(GridProColumnWC) ?? 'grid-pro-column', { ...rest, ref }, children);
|
|
127
|
+
});
|
|
128
|
+
|
|
124
129
|
const ActionRenderer = React.forwardRef(function ActionRenderer(props, ref) {
|
|
125
130
|
const { children, ...rest } = props;
|
|
126
131
|
return React.createElement(customElements.getName(ActionRendererWC) ?? '%%prefix%%-grid-pro-action-renderer', { ...rest, ref }, children);
|
|
@@ -161,11 +166,6 @@ const AgTextRenderer = React.forwardRef(function AgTextRenderer(props, ref) {
|
|
|
161
166
|
return React.createElement(customElements.getName(AgTextRendererWC) ?? '%%prefix%%-grid-text-renderer', { ...rest, ref }, children);
|
|
162
167
|
});
|
|
163
168
|
|
|
164
|
-
const GridProColumn = React.forwardRef(function GridProColumn(props, ref) {
|
|
165
|
-
const { children, ...rest } = props;
|
|
166
|
-
return React.createElement(customElements.getName(GridProColumnWC) ?? 'grid-pro-column', { ...rest, ref }, children);
|
|
167
|
-
});
|
|
168
|
-
|
|
169
169
|
const GridProClientSideDatasource = React.forwardRef(function GridProClientSideDatasource(props, ref) {
|
|
170
170
|
const { onBaseDatasourceError, onDatasourceError, onBaseDatasourceConnected, onDatasourceLoadingFinished, onDatasourceNoDataAvailable, onDatasourceDataChanged, onDatasourceInitialize, onDatasourceDestroy, onDatasourceDataCleared, onDatasourceSchemaUpdated, onDatasourceFiltersRestored, onDatasourceDataLoaded, onDatasourceLoadingStarted, onDatasourceMoreDataAvailable, onDatasourceReady, onDatasourceInit, onMoreRowsChanged, onDatasourceSizeChanged, children, ...rest } = props;
|
|
171
171
|
const _innerRef = React.useRef(null);
|
|
@@ -491,6 +491,7 @@ module.exports = {
|
|
|
491
491
|
NumberEditor,
|
|
492
492
|
SelectEditor,
|
|
493
493
|
StringEditor,
|
|
494
|
+
GridProColumn,
|
|
494
495
|
ActionRenderer,
|
|
495
496
|
ActionsMenuRenderer,
|
|
496
497
|
BooleanRenderer,
|
|
@@ -499,7 +500,6 @@ module.exports = {
|
|
|
499
500
|
StatusPillRenderer,
|
|
500
501
|
AgTextFieldRenderer,
|
|
501
502
|
AgTextRenderer,
|
|
502
|
-
GridProColumn,
|
|
503
503
|
GridProClientSideDatasource,
|
|
504
504
|
GridProServerSideDatasource,
|
|
505
505
|
GridProGenesisDatasource,
|
package/dist/react.mjs
CHANGED
|
@@ -119,6 +119,11 @@ export const StringEditor = React.forwardRef(function StringEditor(props, ref) {
|
|
|
119
119
|
return React.createElement(customElements.getName(StringEditorWC) ?? '%%prefix%%-string-editor', { ...rest, ref }, children);
|
|
120
120
|
});
|
|
121
121
|
|
|
122
|
+
export const GridProColumn = React.forwardRef(function GridProColumn(props, ref) {
|
|
123
|
+
const { children, ...rest } = props;
|
|
124
|
+
return React.createElement(customElements.getName(GridProColumnWC) ?? 'grid-pro-column', { ...rest, ref }, children);
|
|
125
|
+
});
|
|
126
|
+
|
|
122
127
|
export const ActionRenderer = React.forwardRef(function ActionRenderer(props, ref) {
|
|
123
128
|
const { children, ...rest } = props;
|
|
124
129
|
return React.createElement(customElements.getName(ActionRendererWC) ?? '%%prefix%%-grid-pro-action-renderer', { ...rest, ref }, children);
|
|
@@ -159,11 +164,6 @@ export const AgTextRenderer = React.forwardRef(function AgTextRenderer(props, re
|
|
|
159
164
|
return React.createElement(customElements.getName(AgTextRendererWC) ?? '%%prefix%%-grid-text-renderer', { ...rest, ref }, children);
|
|
160
165
|
});
|
|
161
166
|
|
|
162
|
-
export const GridProColumn = React.forwardRef(function GridProColumn(props, ref) {
|
|
163
|
-
const { children, ...rest } = props;
|
|
164
|
-
return React.createElement(customElements.getName(GridProColumnWC) ?? 'grid-pro-column', { ...rest, ref }, children);
|
|
165
|
-
});
|
|
166
|
-
|
|
167
167
|
export const GridProClientSideDatasource = React.forwardRef(function GridProClientSideDatasource(props, ref) {
|
|
168
168
|
const { onBaseDatasourceError, onDatasourceError, onBaseDatasourceConnected, onDatasourceLoadingFinished, onDatasourceNoDataAvailable, onDatasourceDataChanged, onDatasourceInitialize, onDatasourceDestroy, onDatasourceDataCleared, onDatasourceSchemaUpdated, onDatasourceFiltersRestored, onDatasourceDataLoaded, onDatasourceLoadingStarted, onDatasourceMoreDataAvailable, onDatasourceReady, onDatasourceInit, onMoreRowsChanged, onDatasourceSizeChanged, children, ...rest } = props;
|
|
169
169
|
const _innerRef = React.useRef(null);
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@genesislcap/grid-pro",
|
|
3
3
|
"description": "Genesis Foundation AG Grid",
|
|
4
|
-
"version": "14.481.1
|
|
4
|
+
"version": "14.481.1",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"license": "SEE LICENSE IN license.txt",
|
|
7
7
|
"main": "dist/esm/index.js",
|
|
@@ -40,20 +40,20 @@
|
|
|
40
40
|
}
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
|
-
"@genesislcap/foundation-testing": "14.481.1
|
|
44
|
-
"@genesislcap/genx": "14.481.1
|
|
45
|
-
"@genesislcap/rollup-builder": "14.481.1
|
|
46
|
-
"@genesislcap/ts-builder": "14.481.1
|
|
47
|
-
"@genesislcap/uvu-playwright-builder": "14.481.1
|
|
48
|
-
"@genesislcap/vite-builder": "14.481.1
|
|
49
|
-
"@genesislcap/webpack-builder": "14.481.1
|
|
43
|
+
"@genesislcap/foundation-testing": "14.481.1",
|
|
44
|
+
"@genesislcap/genx": "14.481.1",
|
|
45
|
+
"@genesislcap/rollup-builder": "14.481.1",
|
|
46
|
+
"@genesislcap/ts-builder": "14.481.1",
|
|
47
|
+
"@genesislcap/uvu-playwright-builder": "14.481.1",
|
|
48
|
+
"@genesislcap/vite-builder": "14.481.1",
|
|
49
|
+
"@genesislcap/webpack-builder": "14.481.1"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@genesislcap/foundation-comms": "14.481.1
|
|
53
|
-
"@genesislcap/foundation-criteria": "14.481.1
|
|
54
|
-
"@genesislcap/foundation-logger": "14.481.1
|
|
55
|
-
"@genesislcap/foundation-ui": "14.481.1
|
|
56
|
-
"@genesislcap/foundation-utils": "14.481.1
|
|
52
|
+
"@genesislcap/foundation-comms": "14.481.1",
|
|
53
|
+
"@genesislcap/foundation-criteria": "14.481.1",
|
|
54
|
+
"@genesislcap/foundation-logger": "14.481.1",
|
|
55
|
+
"@genesislcap/foundation-ui": "14.481.1",
|
|
56
|
+
"@genesislcap/foundation-utils": "14.481.1",
|
|
57
57
|
"@microsoft/fast-colors": "5.3.1",
|
|
58
58
|
"@microsoft/fast-components": "2.30.6",
|
|
59
59
|
"@microsoft/fast-element": "1.14.0",
|
|
@@ -91,5 +91,5 @@
|
|
|
91
91
|
"require": "./dist/react.cjs"
|
|
92
92
|
}
|
|
93
93
|
},
|
|
94
|
-
"gitHead": "
|
|
94
|
+
"gitHead": "ec791d244e2462e29460e07998203398336d231b"
|
|
95
95
|
}
|