@genesislcap/grid-pro 15.8.1 → 15.8.2-FUI-0.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.
@@ -1,5 +1,4 @@
1
1
  import { SocketObservable, FilteredDataServerResult, MetadataDetail, RequestServerResult, DataserverParams, RequestParams, Datasource } from '@genesislcap/foundation-comms';
2
- import { PagingMode } from './datasource.types';
3
2
  /**
4
3
  * Type definition for configuration options used for streams.
5
4
  * @remarks
@@ -40,9 +39,6 @@ export type ServerSideDatasourceOptions = {
40
39
  maxRows?: number;
41
40
  maxView?: number;
42
41
  rowId?: string;
43
- zeroBasedViewNumber?: boolean;
44
- pagingMode?: PagingMode | undefined;
45
- criteriaOnlyRequest?: boolean;
46
42
  usePolling?: boolean;
47
43
  };
48
44
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"base.types.d.ts","sourceRoot":"","sources":["../../../src/datasource/base.types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,UAAU,EACX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAEhD;;;;;GAKG;AACH,MAAM,MAAM,2BAA2B,GAAG;IACxC,0BAA0B,CAAC,EAAE,CAC3B,cAAc,CAAC,EAAE,GAAG,KACjB,OAAO,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACzD,uBAAuB,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjF;;;OAGG;IACH,sBAAsB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;QACjD,MAAM,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAC9C,UAAU,EAAE,UAAU,CAAC;KACxB,CAAC,CAAC;IACH;;;OAGG;IACH,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC5D;;;OAGG;IACH,2BAA2B,CAAC,EAAE,MAAM,IAAI,CAAC;IACzC,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,8DAA8D;IAC9D,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,qEAAqE;IACrE,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,gBAAgB,GAAG,aAAa,CAAC;IAClD,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACxC,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IAEnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;IACpC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,wBAAwB;;;CAG3B,CAAC;AAEX;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EACA,YAAY,GACZ,qBAAqB,GACrB,eAAe,GACf,UAAU,GACV,QAAQ,GACR,UAAU,GACV,SAAS,CAAC;CACf,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAAG,WAAW,CAAC,8BAA8B,CAAC,CAAC"}
1
+ {"version":3,"file":"base.types.d.ts","sourceRoot":"","sources":["../../../src/datasource/base.types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,gBAAgB,EAChB,aAAa,EACb,UAAU,EACX,MAAM,+BAA+B,CAAC;AAEvC;;;;;GAKG;AACH,MAAM,MAAM,2BAA2B,GAAG;IACxC,0BAA0B,CAAC,EAAE,CAC3B,cAAc,CAAC,EAAE,GAAG,KACjB,OAAO,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACzD,uBAAuB,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACjF;;;OAGG;IACH,sBAAsB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;QACjD,MAAM,EAAE,gBAAgB,CAAC,mBAAmB,CAAC,CAAC;QAC9C,UAAU,EAAE,UAAU,CAAC;KACxB,CAAC,CAAC;IACH;;;OAGG;IACH,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC5D;;;OAGG;IACH,2BAA2B,CAAC,EAAE,MAAM,IAAI,CAAC;IACzC,sBAAsB,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,8DAA8D;IAC9D,qBAAqB,CAAC,EAAE,MAAM,IAAI,CAAC;IACnC,qEAAqE;IACrE,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,gBAAgB,GAAG,aAAa,CAAC;IAClD,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IACxC,eAAe,CAAC,EAAE,cAAc,EAAE,CAAC;IAEnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,wBAAwB;;;CAG3B,CAAC;AAEX;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GAAG;IAC3C,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EACA,YAAY,GACZ,qBAAqB,GACrB,eAAe,GACf,UAAU,GACV,QAAQ,GACR,UAAU,GACV,SAAS,CAAC;CACf,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,wBAAwB,GAAG,WAAW,CAAC,8BAA8B,CAAC,CAAC"}
@@ -5,12 +5,4 @@
5
5
  * @public
6
6
  */
7
7
  export type DatasourceType = 'client' | 'server';
8
- /**
9
- * Available paging modes for server-side datasources
10
- * @remarks - This type defines the paging approach used for server-side data fetching
11
- * - 'viewBased': Uses VIEW_NUMBER and NEXT_VIEW (1 by 1 increment)
12
- * - 'offsetBased': Uses OFFSET and NEXT_OFFSET (based on maxRows increment)
13
- * @public
14
- */
15
- export type PagingMode = 'viewBased' | 'offsetBased';
16
8
  //# sourceMappingURL=datasource.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"datasource.types.d.ts","sourceRoot":"","sources":["../../../src/datasource/datasource.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAEjD;;;;;;GAMG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"datasource.types.d.ts","sourceRoot":"","sources":["../../../src/datasource/datasource.types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { Datasource, DatasourceOptions } from '@genesislcap/foundation-comms';
2
2
  import { JSONSerializer } from '@genesislcap/foundation-utils';
3
3
  import { GridProBaseDatasource } from './base.datasource';
4
- import { PagingMode } from './datasource.types';
5
4
  declare const GridProServerSideDatasource_base: (new (...args: any[]) => {
6
5
  #_container: import("@genesislcap/foundation-utils").FoundationLayoutContainer | import("@genesislcap/foundation-utils").LayoutCacheContainer | import("@genesislcap/foundation-utils").DOMContainer;
7
6
  #_latestTokenCode: string;
@@ -373,6 +372,10 @@ declare const GridProServerSideDatasource_base: (new (...args: any[]) => {
373
372
  * A Genesis Datasource element, for server-side | SSRM-compatible data fetching and used exclusively by the GridPro element.
374
373
  * @remarks Only supports Server-Side Row Model. Requires `@ag-grid-enterprise/server-side-row-model` setup and valid AG Grid Enterprise license.
375
374
  *
375
+ * **Supported resources**: DATASERVER resources, and REQUEST_SERVER (req/rep) resources that declare
376
+ * `criteriaOnlyRequest`. A req/rep resource without it reports a `resource-type` error and no
377
+ * datasource is attached to the grid.
378
+ *
376
379
  * **Custom Sort Indicators**: This datasource automatically applies custom sort indicators that are always visible (instead of only on hover).
377
380
  * Sortable columns will show a subtle sort icon even when not sorted, and active sort indicators will be more prominent.
378
381
  * The custom styling uses AG Grid's native icon font for consistency with the grid theme.
@@ -402,24 +405,11 @@ declare const GridProServerSideDatasource_base: (new (...args: any[]) => {
402
405
  export declare class GridProServerSideDatasource extends GridProServerSideDatasource_base {
403
406
  serializer: JSONSerializer;
404
407
  pollingDatasource: Datasource;
405
- /**
406
- * The starting VIEW_NUMBER of the data to be fetched.
407
- * @remarks The VIEW_NUMBER isincremented by the grid as the user scrolls or changes pages.
408
- */
409
- zeroBasedViewNumber: boolean;
410
408
  /**
411
409
  * Enable live updates for the grid.
412
410
  * @remarks Only works with DATASERVER resources (StreamDatasource) right now.
413
411
  */
414
412
  liveUpdates: boolean;
415
- /**
416
- * The paging mode to use for data fetching.
417
- * @remarks
418
- * - "viewBased": Uses VIEW_NUMBER and NEXT_VIEW (1 by 1 increment)
419
- * - "offsetBased": Uses OFFSET and NEXT_OFFSET (based on maxRows increment)
420
- * - undefined: Auto-determines based on criteriaOnlyRequest availability
421
- */
422
- pagingMode: PagingMode | undefined;
423
413
  request: any;
424
414
  private indexes;
425
415
  private ssrmDatasource;
@@ -450,6 +440,21 @@ export declare class GridProServerSideDatasource extends GridProServerSideDataso
450
440
  destroy(): Promise<void>;
451
441
  restart(): Promise<void>;
452
442
  private clearRowData;
443
+ /**
444
+ * Checks whether the resolved resource can be served through the Server-Side Row Model.
445
+ * @remarks
446
+ * REQUEST_SERVER (req/rep) resources are only supported when the request reply declares
447
+ * `criteriaOnlyRequest` (`CRITERIA_ONLY_REQUEST` in its metadata). SSRM drives a req/rep
448
+ * resource purely through `DETAILS` - `CRITERIA_MATCH` for the grid filter model, `ORDER_BY`
449
+ * for the sort model and `OFFSET`/`VIEW_NUMBER` for paging - and sends an empty `REQUEST`
450
+ * payload. A request reply without `criteriaOnlyRequest` expects its inputs in `REQUEST`
451
+ * instead, so filtering, sorting and paging would silently do nothing.
452
+ *
453
+ * DATASERVER resources are always supported.
454
+ * @returns `true` when SSRM can be used, `false` after reporting a `resource-type` error.
455
+ * @internal
456
+ */
457
+ private isSsrmSupportedForResource;
453
458
  private getResourceIndexes;
454
459
  private createReqRepRequest;
455
460
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"server-side.datasource.d.ts","sourceRoot":"","sources":["../../../src/datasource/server-side.datasource.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,UAAU,EACV,iBAAiB,EAYlB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,cAAc,EAEf,MAAM,+BAA+B,CAAC;AAYvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;;;;;;;;kBA6DlB,CAAA;;;;;;;;8BAkBS,CAAA,cAAc,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAiBN,CAAC;4IAIwB,CAAC;wFAKnC,CAAC;+IAInB,CAAC;2FAIpB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAsCkB,CAAC;;;;;;;;;;;;;;;;;;;;;;;mBAmD+D,CAAC;;;;;;;;;;;;;6BAmB9C,CAAC;8BACf,CAAC;kBAIxB,CAAF;;oBAIa,CAAC;;sBAIV,CAAJ;oBAEgB,CAAC;;;;;;;;gDAiBS,CAAC;;;;;;;;;;;;;;;;;;uBA6Bf,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4EA+E2C,CAAC;yBAE7C,CAAV;UAAoD,GAAG;WAClB,GAAG;;gBAE7B,GAAG;;;;;;;WAaR,GADH;YACG,GAAL;;;;;;;;;;;oBA0CQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA8LV,CADJ;cAGoB,CAAC;eAId,CAAC;gBAC+C,CAAC;;;;;;;;;;;;;;SAqC7C,CAAC;;;iBACgC,CAAC;;AAxlB7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAGa,2BAA4B,SAAQ,gCAAqC;IACpE,UAAU,EAAG,cAAc,CAAC;IAChC,iBAAiB,EAAG,UAAU,CAAC;IAC3C;;;OAGG;IAC6D,mBAAmB,UAAS;IAE5F;;;OAGG;IACmD,WAAW,UAAS;IAE1E;;;;;;OAMG;IACiC,UAAU,EAAE,UAAU,GAAG,SAAS,CAAC;IAE3D,OAAO,EAAE,GAAG,CAAM;IAE9B,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,cAAc,CAA8D;IACpF,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,OAAO,CAAC,uBAAuB,CAA6B;IAE5D,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAOtD,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAaxD,iBAAiB;IAUjB,oBAAoB;IAUX,SAAS,IAAI,IAAI;IAO1B;;;;OAIG;IACG,kBAAkB,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAwDnE;;;OAGG;IACH,OAAO,CAAC,mCAAmC;IAgB3C;;;OAGG;IACH,OAAO,CAAC,oCAAoC;IAatC,IAAI;IAkIK,OAAO;IAqBP,OAAO;IAKtB,OAAO,CAAC,YAAY;IAmBpB,OAAO,CAAC,kBAAkB;YAgDZ,mBAAmB;IAKjC;;;;;;;;;;;;OAYG;YACW,kBAAkB;IA+BhC;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB,CAA+B;IAEzD;;;;;;;;;OASG;IACH,OAAO,CAAC,0BAA0B,CAAS;IAE3C;;;;;;OAMG;IACI,uBAAuB;IAM9B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,wBAAwB;IAsEhC,OAAO,CAAC,yBAAyB;YAyCnB,sBAAsB;YA2DtB,eAAe;IAmBpB,gBAAgB,CAAC,WAAW,EAAE,GAAG,GAAG,GAAG;IAIvC,QAAQ;CAGlB"}
1
+ {"version":3,"file":"server-side.datasource.d.ts","sourceRoot":"","sources":["../../../src/datasource/server-side.datasource.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,UAAU,EACV,iBAAiB,EAYlB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAEL,cAAc,EAEf,MAAM,+BAA+B,CAAC;AAYvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;;;;;;;;kBA8DhC,CAAA;;;;;;;;8BAmBgD,CAAC,cAAe,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;yBAgB3E,CAAC;4IAGwC,CAAA;wFAKlB,CAAC;+IAIT,CAAC;2FAGV,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2BAwCqB,CAAC;;;;;;;;;;;;;;;;;;;;;;;mBA+CvB,CAAC;;;;;;;;;;;;;6BA2BT,CAAC;8BACgB,CAAC;kBAGjB,CAAC;;oBAEK,CAAC;;sBAMW,CAAC;oBAGE,CAAC;;;;;;;;gDAgB3B,CAAC;;;;;;;;;;;;;;;;;;uBA2BsC,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4EA4Ed,CAAC;yBAKb,CAAA;UACA,GAAG;WACf,GAAD;;gBAGqB,GAAG;;;;;;;WAWe,GAAG;YACxC,GAAG;;;;;;;;;;;oBA2CsD,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6K7D,CAAC;cAGD,CAAC;eAC4B,CAAC;gBAMb,CAAC;;;;;;;;;;;;;;SAiCN,CAAC;;;iBAI8B,CAAC;;AA7kBtD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAGa,2BAA4B,SAAQ,gCAAqC;IACpE,UAAU,EAAG,cAAc,CAAC;IAChC,iBAAiB,EAAG,UAAU,CAAC;IAC3C;;;OAGG;IACmD,WAAW,UAAS;IAE9D,OAAO,EAAE,GAAG,CAAM;IAE9B,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,cAAc,CAA8D;IACpF,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,OAAO,CAAC,uBAAuB,CAA6B;IAE5D,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAOtD,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM;IAaxD,iBAAiB;IAUjB,oBAAoB;IAUX,SAAS,IAAI,IAAI;IAO1B;;;;OAIG;IACG,kBAAkB,CAAC,MAAM,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAwDnE;;;OAGG;IACH,OAAO,CAAC,mCAAmC;IAgB3C;;;OAGG;IACH,OAAO,CAAC,oCAAoC;IAatC,IAAI;IAqIK,OAAO;IAqBP,OAAO;IAKtB,OAAO,CAAC,YAAY;IAmBpB;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,0BAA0B;IAYlC,OAAO,CAAC,kBAAkB;YAgDZ,mBAAmB;IAKjC;;;;;;;;;;;;OAYG;YACW,kBAAkB;IA+BhC;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB,CAA+B;IAEzD;;;;;;;;;OASG;IACH,OAAO,CAAC,0BAA0B,CAAS;IAE3C;;;;;;OAMG;IACI,uBAAuB;IAM9B;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,wBAAwB;IAsEhC,OAAO,CAAC,yBAAyB;YAyCnB,sBAAsB;YA2DtB,eAAe;IAmBpB,gBAAgB,CAAC,WAAW,EAAE,GAAG,GAAG,GAAG;IAIvC,QAAQ;CAGlB"}
@@ -2,7 +2,6 @@ import { IServerSideDatasource, LoadSuccessParams, SetFilterModel, SortModelItem
2
2
  import { Auth, Connect, MetadataDetail, DatasourceOptions } from '@genesislcap/foundation-comms';
3
3
  import { UUID } from '@genesislcap/foundation-utils';
4
4
  import { ServerSideDatasourceOptions } from './base.types';
5
- import { PagingMode } from './datasource.types';
6
5
  /**
7
6
  * Base class for server-side resource datasources used in Grid Pro SSRM implementations.
8
7
  * Provides common logic for filtering, sorting, and infinite-scroll row counting.
@@ -25,9 +24,6 @@ export declare abstract class BaseServerSideDatasource implements IServerSideDat
25
24
  protected resourceColDefs: MetadataDetail[];
26
25
  protected maxRows: number;
27
26
  protected maxView: number;
28
- protected zeroBasedViewNumber: boolean;
29
- protected pagingMode?: PagingMode | undefined;
30
- protected criteriaOnlyRequest?: boolean;
31
27
  sourceRef: string;
32
28
  lastSuccessRowData: LoadSuccessParams;
33
29
  /**
@@ -106,16 +102,11 @@ export declare abstract class BaseServerSideDatasource implements IServerSideDat
106
102
  protected criteriaForDateModel(k: string, model: any): string | null;
107
103
  protected getFiltersByType(filterType: string): string[];
108
104
  protected getCorrectRowCount(params: IServerSideGetRowsParams<any, any>): any;
109
- protected get isNotFirstViewNumber(): boolean;
110
105
  /** Completes an SSRM request with zero rows and invokes `onNoDataAvailableFunc` on the first block only. @internal */
111
106
  protected completeEmptyResult(params: IServerSideGetRowsParams): void;
112
107
  /** Invokes `onNoDataAvailableFunc` when the first SSRM block has no rows. @internal */
113
108
  protected notifyNoDataAvailableIfEmpty(params: IServerSideGetRowsParams, successRowData: LoadSuccessParams): void;
114
109
  protected notifyNoDataAvailable(): void;
115
110
  protected notifyDataAvailable(): void;
116
- /**
117
- * Determines the effective paging mode based on criteriaOnlyRequest availability and user settings
118
- */
119
- protected getEffectivePagingMode(): PagingMode;
120
111
  }
121
112
  //# sourceMappingURL=server-side.resource-base.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server-side.resource-base.d.ts","sourceRoot":"","sources":["../../../src/datasource/server-side.resource-base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-side.resource-base.d.ts","sourceRoot":"","sources":["../../../src/datasource/server-side.resource-base.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,15 @@ import { ServerSideDatasourceOptions } from './base.types';
4
4
  import { BaseServerSideDatasource } from './server-side.resource-base';
5
5
  /**
6
6
  * The REQUEST_SERVER IServerSideDatasource implementation, used for SSRM (Server-Side Row Model) in the grid.
7
+ * @remarks
8
+ * Only request replies supporting criteria-only requests (`criteriaOnlyRequest`) can be served this
9
+ * way: every SSRM concern is expressed through `DETAILS` (`CRITERIA_MATCH` for the filter model,
10
+ * `ORDER_BY` for the sort model, `OFFSET` for paging) with an empty `REQUEST` payload.
11
+ * {@link @genesislcap/grid-pro#GridProServerSideDatasource} enforces this before constructing the
12
+ * datasource.
13
+ *
14
+ * Paging is therefore always offset-based - `criteriaOnlyRequest` guarantees `OFFSET` support, so
15
+ * there is no `VIEW_NUMBER` fallback to choose between.
7
16
  * @beta
8
17
  */
9
18
  export declare class ReqRepServerSideDatasource extends BaseServerSideDatasource implements IServerSideDatasource {
@@ -49,17 +58,8 @@ export declare class ReqRepServerSideDatasource extends BaseServerSideDatasource
49
58
  */
50
59
  private debouncedCreateStream;
51
60
  private discoveredTotalRowCount;
52
- private currentNextOffset;
53
61
  constructor(options: ServerSideDatasourceOptions);
54
62
  getRows(params: IServerSideGetRowsParams): Promise<void>;
55
- /**
56
- * Advance the view/offset position based on paging mode
57
- */
58
- private advancePagingPosition;
59
- /**
60
- * Determine if this is the last view/page
61
- */
62
- private determineIsLastView;
63
63
  /**
64
64
  * Schedules polling stream creation if enabled.
65
65
  * @remarks
@@ -1 +1 @@
1
- {"version":3,"file":"server-side.resource-reqrep.d.ts","sourceRoot":"","sources":["../../../src/datasource/server-side.resource-reqrep.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EAEzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,mBAAmB,EAInB,iBAAiB,EAGlB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAOvE;;;GAGG;AACH,qBAAa,0BACX,SAAQ,wBACR,YAAW,qBAAqB;IAEhC,uBAAuB,EAAE,CAAC,cAAc,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAEhF;;;OAGG;IACH,OAAO,CAAC,sBAAsB,CAAC,CAG5B;IAEH;;OAEG;IACH,OAAO,CAAC,mBAAmB,CAAC,CAAwC;IAEpE;;OAEG;IACH,OAAO,CAAC,yBAAyB,CAAC,CAAqB;IAEvD;;;OAGG;IACH,OAAO,CAAC,uBAAuB,CAAC,CAAM;IAEtC;;OAEG;IACH,OAAO,CAAC,UAAU,CAAU;IAE5B;;OAEG;IACH,OAAO,CAAC,eAAe,CAAC,CAAwC;IAEhE;;OAEG;IACH,OAAO,CAAC,uBAAuB,CAAC,CAAa;IAE7C;;;OAGG;IACH,OAAO,CAAC,mBAAmB,CAAC,CAAgB;IAE5C;;;OAGG;IACH,OAAO,CAAC,qBAAqB,CAA8B;IAG3D,OAAO,CAAC,uBAAuB,CAAuB;IACtD,OAAO,CAAC,iBAAiB,CAAa;gBAE1B,OAAO,EAAE,2BAA2B;IA6B1C,OAAO,CAAC,MAAM,EAAE,wBAAwB;IAmC9C;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAe7B;;OAEG;YACW,mBAAmB;IAsCjC;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,mBAAmB;IA+E3B,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM;IActE,OAAO,CAAC,uBAAuB;IAoB/B;;;OAGG;cACa,YAAY,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC;IAgC1E,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB3D,OAAO;IAUb;;;;;;;;;;OAUG;YACW,mBAAmB;IAkCjC;;;;;;;;OAQG;IACH,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,mBAAmB;CAoB5B"}
1
+ {"version":3,"file":"server-side.resource-reqrep.d.ts","sourceRoot":"","sources":["../../../src/datasource/server-side.resource-reqrep.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EAEzB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,mBAAmB,EAInB,iBAAiB,EAGlB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAC;AAOvE;;;;;;;;;;;;GAYG;AACH,qBAAa,0BACX,SAAQ,wBACR,YAAW,qBAAqB;IAEhC,uBAAuB,EAAE,CAAC,cAAc,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAEhF;;;OAGG;IACH,OAAO,CAAC,sBAAsB,CAAC,CAG5B;IAEH;;OAEG;IACH,OAAO,CAAC,mBAAmB,CAAC,CAAwC;IAEpE;;OAEG;IACH,OAAO,CAAC,yBAAyB,CAAC,CAAqB;IAEvD;;;OAGG;IACH,OAAO,CAAC,uBAAuB,CAAC,CAAM;IAEtC;;OAEG;IACH,OAAO,CAAC,UAAU,CAAU;IAE5B;;OAEG;IACH,OAAO,CAAC,eAAe,CAAC,CAAwC;IAEhE;;OAEG;IACH,OAAO,CAAC,uBAAuB,CAAC,CAAa;IAE7C;;;OAGG;IACH,OAAO,CAAC,mBAAmB,CAAC,CAAgB;IAE5C;;;OAGG;IACH,OAAO,CAAC,qBAAqB,CAA8B;IAG3D,OAAO,CAAC,uBAAuB,CAAuB;gBAE1C,OAAO,EAAE,2BAA2B;IAmB1C,OAAO,CAAC,MAAM,EAAE,wBAAwB;IA2B9C;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,mBAAmB;IAyD3B,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,wBAAwB,GAAG,MAAM;IActE,OAAO,CAAC,uBAAuB;IAoB/B;;;OAGG;cACa,YAAY,CAAC,MAAM,EAAE,wBAAwB,GAAG,OAAO,CAAC,OAAO,CAAC;IAgC1E,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAc3D,OAAO;IAUb;;;;;;;;;;OAUG;YACW,mBAAmB;IAkCjC;;;;;;;;OAQG;IACH,OAAO,CAAC,oBAAoB;IAqB5B,OAAO,CAAC,mBAAmB;CAQ5B"}
@@ -134,6 +134,70 @@ export declare const StringEditor: React.ForwardRefExoticComponent<
134
134
  >;
135
135
  export type StringEditorRef = StringEditorWC;
136
136
 
137
+ export declare const GridProColumn: React.ForwardRefExoticComponent<
138
+ React.PropsWithChildren<
139
+ Omit<PublicOf<GridProColumnWC>, 'children' | 'style'> &
140
+ HTMLWCProps & {
141
+ }
142
+ > & React.RefAttributes<GridProColumnWC>
143
+ >;
144
+ export type GridProColumnRef = GridProColumnWC;
145
+
146
+ export declare const GridProClientSideDatasource: React.ForwardRefExoticComponent<
147
+ React.PropsWithChildren<
148
+ Omit<PublicOf<GridProClientSideDatasourceWC>, 'children' | 'style'> &
149
+ HTMLWCProps & {
150
+ onBaseDatasourceError?: (event: CustomEvent<BaseDatasourceErrorEventDetail>) => void;
151
+ onDatasourceError?: (event: CustomEvent<DatasourceErrorEventDetail>) => void;
152
+ onBaseDatasourceConnected?: (event: CustomEvent<unknown>) => void;
153
+ onDatasourceLoadingFinished?: (event: CustomEvent<unknown>) => void;
154
+ onDatasourceNoDataAvailable?: (event: CustomEvent<unknown>) => void;
155
+ onDatasourceDataChanged?: (event: CustomEvent<DataChangedEventDetail>) => void;
156
+ onDatasourceInitialize?: (event: CustomEvent<InitializeEventDetail>) => void;
157
+ onDatasourceDestroy?: (event: CustomEvent<unknown>) => void;
158
+ onDatasourceDataCleared?: (event: CustomEvent<DataClearedEventDetail>) => void;
159
+ onDatasourceSchemaUpdated?: (event: CustomEvent<SchemaUpdatedEventDetail>) => void;
160
+ onDatasourceFiltersRestored?: (event: CustomEvent<unknown>) => void;
161
+ onDatasourceDataLoaded?: (event: CustomEvent<DataLoadedEventDetail>) => void;
162
+ onDatasourceLoadingStarted?: (event: CustomEvent<unknown>) => void;
163
+ onDatasourceMoreDataAvailable?: (event: CustomEvent<MoreDataAvailableEventDetail>) => void;
164
+ onDatasourceReady?: (event: CustomEvent<unknown>) => void;
165
+ onDatasourceInit?: (event: CustomEvent<unknown>) => void;
166
+ onMoreRowsChanged?: (event: CustomEvent<MoreRowsDetail>) => void;
167
+ onDatasourceSizeChanged?: (event: CustomEvent<GrigProGenesisDatasourceSizeChangedEventDetail>) => void;
168
+ }
169
+ > & React.RefAttributes<GridProClientSideDatasourceWC>
170
+ >;
171
+ export type GridProClientSideDatasourceRef = GridProClientSideDatasourceWC;
172
+
173
+ export declare const GridProServerSideDatasource: React.ForwardRefExoticComponent<
174
+ React.PropsWithChildren<
175
+ Omit<PublicOf<GridProServerSideDatasourceWC>, 'children' | 'style'> &
176
+ HTMLWCProps & {
177
+ onBaseDatasourceError?: (event: CustomEvent<BaseDatasourceErrorEventDetail>) => void;
178
+ onDatasourceError?: (event: CustomEvent<DatasourceErrorEventDetail>) => void;
179
+ onBaseDatasourceConnected?: (event: CustomEvent<unknown>) => void;
180
+ onDatasourceLoadingFinished?: (event: CustomEvent<unknown>) => void;
181
+ onDatasourceNoDataAvailable?: (event: CustomEvent<unknown>) => void;
182
+ onDatasourceDataChanged?: (event: CustomEvent<DataChangedEventDetail>) => void;
183
+ onCacheFilterConfig?: (event: CustomEvent<unknown>) => void;
184
+ onRefreshServerSide?: (event: CustomEvent<RefreshServerSideEventDetail>) => void;
185
+ onSetServerSideDatasource?: (event: CustomEvent<unknown>) => void;
186
+ onDatasourceLoadingStarted?: (event: CustomEvent<unknown>) => void;
187
+ onAddGridCssClass?: (event: CustomEvent<GridCssClassEventDetail>) => void;
188
+ onRemoveGridCssClass?: (event: CustomEvent<GridCssClassEventDetail>) => void;
189
+ onDatasourceInitialize?: (event: CustomEvent<InitializeEventDetail>) => void;
190
+ onDatasourceInit?: (event: CustomEvent<unknown>) => void;
191
+ onDatasourceSchemaUpdated?: (event: CustomEvent<SchemaUpdatedEventDetail>) => void;
192
+ onDatasourceFiltersRestored?: (event: CustomEvent<unknown>) => void;
193
+ onDatasourceDataCleared?: (event: CustomEvent<DataClearedEventDetail>) => void;
194
+ onApplyServerSideTransaction?: (event: CustomEvent<unknown>) => void;
195
+ onDatasourceReady?: (event: CustomEvent<unknown>) => void;
196
+ }
197
+ > & React.RefAttributes<GridProServerSideDatasourceWC>
198
+ >;
199
+ export type GridProServerSideDatasourceRef = GridProServerSideDatasourceWC;
200
+
137
201
  export declare const ActionRenderer: React.ForwardRefExoticComponent<
138
202
  React.PropsWithChildren<
139
203
  Omit<PublicOf<ActionRendererWC>, 'children' | 'style'> &
@@ -206,70 +270,6 @@ export declare const AgTextRenderer: React.ForwardRefExoticComponent<
206
270
  >;
207
271
  export type AgTextRendererRef = AgTextRendererWC;
208
272
 
209
- export declare const GridProColumn: React.ForwardRefExoticComponent<
210
- React.PropsWithChildren<
211
- Omit<PublicOf<GridProColumnWC>, 'children' | 'style'> &
212
- HTMLWCProps & {
213
- }
214
- > & React.RefAttributes<GridProColumnWC>
215
- >;
216
- export type GridProColumnRef = GridProColumnWC;
217
-
218
- export declare const GridProClientSideDatasource: React.ForwardRefExoticComponent<
219
- React.PropsWithChildren<
220
- Omit<PublicOf<GridProClientSideDatasourceWC>, 'children' | 'style'> &
221
- HTMLWCProps & {
222
- onBaseDatasourceError?: (event: CustomEvent<BaseDatasourceErrorEventDetail>) => void;
223
- onDatasourceError?: (event: CustomEvent<DatasourceErrorEventDetail>) => void;
224
- onBaseDatasourceConnected?: (event: CustomEvent<unknown>) => void;
225
- onDatasourceLoadingFinished?: (event: CustomEvent<unknown>) => void;
226
- onDatasourceNoDataAvailable?: (event: CustomEvent<unknown>) => void;
227
- onDatasourceDataChanged?: (event: CustomEvent<DataChangedEventDetail>) => void;
228
- onDatasourceInitialize?: (event: CustomEvent<InitializeEventDetail>) => void;
229
- onDatasourceDestroy?: (event: CustomEvent<unknown>) => void;
230
- onDatasourceDataCleared?: (event: CustomEvent<DataClearedEventDetail>) => void;
231
- onDatasourceSchemaUpdated?: (event: CustomEvent<SchemaUpdatedEventDetail>) => void;
232
- onDatasourceFiltersRestored?: (event: CustomEvent<unknown>) => void;
233
- onDatasourceDataLoaded?: (event: CustomEvent<DataLoadedEventDetail>) => void;
234
- onDatasourceLoadingStarted?: (event: CustomEvent<unknown>) => void;
235
- onDatasourceMoreDataAvailable?: (event: CustomEvent<MoreDataAvailableEventDetail>) => void;
236
- onDatasourceReady?: (event: CustomEvent<unknown>) => void;
237
- onDatasourceInit?: (event: CustomEvent<unknown>) => void;
238
- onMoreRowsChanged?: (event: CustomEvent<MoreRowsDetail>) => void;
239
- onDatasourceSizeChanged?: (event: CustomEvent<GrigProGenesisDatasourceSizeChangedEventDetail>) => void;
240
- }
241
- > & React.RefAttributes<GridProClientSideDatasourceWC>
242
- >;
243
- export type GridProClientSideDatasourceRef = GridProClientSideDatasourceWC;
244
-
245
- export declare const GridProServerSideDatasource: React.ForwardRefExoticComponent<
246
- React.PropsWithChildren<
247
- Omit<PublicOf<GridProServerSideDatasourceWC>, 'children' | 'style'> &
248
- HTMLWCProps & {
249
- onBaseDatasourceError?: (event: CustomEvent<BaseDatasourceErrorEventDetail>) => void;
250
- onDatasourceError?: (event: CustomEvent<DatasourceErrorEventDetail>) => void;
251
- onBaseDatasourceConnected?: (event: CustomEvent<unknown>) => void;
252
- onDatasourceLoadingFinished?: (event: CustomEvent<unknown>) => void;
253
- onDatasourceNoDataAvailable?: (event: CustomEvent<unknown>) => void;
254
- onDatasourceDataChanged?: (event: CustomEvent<DataChangedEventDetail>) => void;
255
- onCacheFilterConfig?: (event: CustomEvent<unknown>) => void;
256
- onRefreshServerSide?: (event: CustomEvent<RefreshServerSideEventDetail>) => void;
257
- onSetServerSideDatasource?: (event: CustomEvent<unknown>) => void;
258
- onDatasourceLoadingStarted?: (event: CustomEvent<unknown>) => void;
259
- onAddGridCssClass?: (event: CustomEvent<GridCssClassEventDetail>) => void;
260
- onRemoveGridCssClass?: (event: CustomEvent<GridCssClassEventDetail>) => void;
261
- onDatasourceInitialize?: (event: CustomEvent<InitializeEventDetail>) => void;
262
- onDatasourceInit?: (event: CustomEvent<unknown>) => void;
263
- onDatasourceSchemaUpdated?: (event: CustomEvent<SchemaUpdatedEventDetail>) => void;
264
- onDatasourceFiltersRestored?: (event: CustomEvent<unknown>) => void;
265
- onDatasourceDataCleared?: (event: CustomEvent<DataClearedEventDetail>) => void;
266
- onApplyServerSideTransaction?: (event: CustomEvent<unknown>) => void;
267
- onDatasourceReady?: (event: CustomEvent<unknown>) => void;
268
- }
269
- > & React.RefAttributes<GridProServerSideDatasourceWC>
270
- >;
271
- export type GridProServerSideDatasourceRef = GridProServerSideDatasourceWC;
272
-
273
273
  export declare const GridProGenesisDatasource: React.ForwardRefExoticComponent<
274
274
  React.PropsWithChildren<
275
275
  Omit<PublicOf<GridProGenesisDatasourceWC>, 'children' | 'style'> &
@@ -59,6 +59,10 @@ const serverSideSortIndicatorCSS = `
59
59
  * A Genesis Datasource element, for server-side | SSRM-compatible data fetching and used exclusively by the GridPro element.
60
60
  * @remarks Only supports Server-Side Row Model. Requires `@ag-grid-enterprise/server-side-row-model` setup and valid AG Grid Enterprise license.
61
61
  *
62
+ * **Supported resources**: DATASERVER resources, and REQUEST_SERVER (req/rep) resources that declare
63
+ * `criteriaOnlyRequest`. A req/rep resource without it reports a `resource-type` error and no
64
+ * datasource is attached to the grid.
65
+ *
62
66
  * **Custom Sort Indicators**: This datasource automatically applies custom sort indicators that are always visible (instead of only on hover).
63
67
  * Sortable columns will show a subtle sort icon even when not sorted, and active sort indicators will be more prominent.
64
68
  * The custom styling uses AG Grid's native icon font for consistency with the grid theme.
@@ -88,11 +92,6 @@ const serverSideSortIndicatorCSS = `
88
92
  let GridProServerSideDatasource = class GridProServerSideDatasource extends LifecycleMixin(GridProBaseDatasource) {
89
93
  constructor() {
90
94
  super(...arguments);
91
- /**
92
- * The starting VIEW_NUMBER of the data to be fetched.
93
- * @remarks The VIEW_NUMBER isincremented by the grid as the user scrolls or changes pages.
94
- */
95
- this.zeroBasedViewNumber = false;
96
95
  /**
97
96
  * Enable live updates for the grid.
98
97
  * @remarks Only works with DATASERVER resources (StreamDatasource) right now.
@@ -279,6 +278,12 @@ let GridProServerSideDatasource = class GridProServerSideDatasource extends Life
279
278
  this.setDisconnected(true);
280
279
  return;
281
280
  }
281
+ if (!this.isSsrmSupportedForResource()) {
282
+ this.clearRowData();
283
+ // No datasource is attached, so AG Grid never calls getRows() for this resource.
284
+ this.$emit(datasourceEventNames.setServerSideDatasource, { datasource: null });
285
+ return;
286
+ }
282
287
  this.$emit(gridProGenesisDatasourceEventNames.dataInit);
283
288
  this.setDisconnected(false);
284
289
  this.indexes = this.getResourceIndexes(this.datasource.availableIndexes, this.datasource.availableSortableFields);
@@ -311,9 +316,6 @@ let GridProServerSideDatasource = class GridProServerSideDatasource extends Life
311
316
  maxRows: +this.maxRows,
312
317
  maxView: +this.maxView,
313
318
  rowId: this.rowId,
314
- zeroBasedViewNumber: this.zeroBasedViewNumber,
315
- pagingMode: this.pagingMode,
316
- criteriaOnlyRequest: this.datasource.criteriaOnlyRequest,
317
319
  });
318
320
  }
319
321
  else {
@@ -330,7 +332,6 @@ let GridProServerSideDatasource = class GridProServerSideDatasource extends Life
330
332
  maxRows: +this.maxRows,
331
333
  maxView: +this.maxView,
332
334
  rowId: this.rowId,
333
- zeroBasedViewNumber: this.zeroBasedViewNumber,
334
335
  });
335
336
  }
336
337
  // Emit event to set server side datasource
@@ -389,6 +390,27 @@ let GridProServerSideDatasource = class GridProServerSideDatasource extends Life
389
390
  });
390
391
  this.transactionData = undefined;
391
392
  }
393
+ /**
394
+ * Checks whether the resolved resource can be served through the Server-Side Row Model.
395
+ * @remarks
396
+ * REQUEST_SERVER (req/rep) resources are only supported when the request reply declares
397
+ * `criteriaOnlyRequest` (`CRITERIA_ONLY_REQUEST` in its metadata). SSRM drives a req/rep
398
+ * resource purely through `DETAILS` - `CRITERIA_MATCH` for the grid filter model, `ORDER_BY`
399
+ * for the sort model and `OFFSET`/`VIEW_NUMBER` for paging - and sends an empty `REQUEST`
400
+ * payload. A request reply without `criteriaOnlyRequest` expects its inputs in `REQUEST`
401
+ * instead, so filtering, sorting and paging would silently do nothing.
402
+ *
403
+ * DATASERVER resources are always supported.
404
+ * @returns `true` when SSRM can be used, `false` after reporting a `resource-type` error.
405
+ * @internal
406
+ */
407
+ isSsrmSupportedForResource() {
408
+ if (!this.isRequestServer || this.datasource.criteriaOnlyRequest) {
409
+ return true;
410
+ }
411
+ this.handleErrors(`Server-side row model is not supported for the REQUEST_SERVER resource '${this.resourceName}' because it does not support criteria-only requests. Set 'criteriaOnlyRequest = true' on the request reply definition, or use a client-side datasource for this resource.`, 'resource-type');
412
+ return false;
413
+ }
392
414
  getResourceIndexes(avaialbleIndexes, availableSortableFields) {
393
415
  const resourceIndexesMap = new Map();
394
416
  const allSortableFields = new Set();
@@ -668,15 +690,9 @@ __decorate([
668
690
  __decorate([
669
691
  Datasource
670
692
  ], GridProServerSideDatasource.prototype, "pollingDatasource", void 0);
671
- __decorate([
672
- attr({ mode: 'boolean', attribute: 'zero-based-view-number' })
673
- ], GridProServerSideDatasource.prototype, "zeroBasedViewNumber", void 0);
674
693
  __decorate([
675
694
  attr({ mode: 'boolean', attribute: 'live-updates' })
676
695
  ], GridProServerSideDatasource.prototype, "liveUpdates", void 0);
677
- __decorate([
678
- attr({ attribute: 'paging-mode' })
679
- ], GridProServerSideDatasource.prototype, "pagingMode", void 0);
680
696
  __decorate([
681
697
  observable
682
698
  ], GridProServerSideDatasource.prototype, "request", void 0);
@@ -1,5 +1,5 @@
1
1
  import { __awaiter, __decorate } from "tslib";
2
- import { Auth, Connect, logger, } from '@genesislcap/foundation-comms';
2
+ import { Auth, Connect } from '@genesislcap/foundation-comms';
3
3
  import { UUID } from '@genesislcap/foundation-utils';
4
4
  /**
5
5
  * Base class for server-side resource datasources used in Grid Pro SSRM implementations.
@@ -9,7 +9,6 @@ import { UUID } from '@genesislcap/foundation-utils';
9
9
  */
10
10
  export class BaseServerSideDatasource {
11
11
  constructor(options) {
12
- var _a;
13
12
  this.rowData = new Map();
14
13
  /**
15
14
  * The number of rows in the grid. THIS DO NOT CONSIDER CRITERIA_MATCH scenarios.
@@ -36,9 +35,6 @@ export class BaseServerSideDatasource {
36
35
  this.maxRows = options.maxRows;
37
36
  this.maxView = options.maxView;
38
37
  this.rowId = options.rowId;
39
- this.zeroBasedViewNumber = options.zeroBasedViewNumber;
40
- this.pagingMode = options.pagingMode;
41
- this.criteriaOnlyRequest = (_a = options.criteriaOnlyRequest) !== null && _a !== void 0 ? _a : false;
42
38
  }
43
39
  /**
44
40
  * Gets a resource parameter, handling both REQUEST_SERVER (DETAILS structure) and DATASERVER (flat structure)
@@ -385,9 +381,6 @@ export class BaseServerSideDatasource {
385
381
  }
386
382
  return rowCount;
387
383
  }
388
- get isNotFirstViewNumber() {
389
- return this.zeroBasedViewNumber ? this.currentSequenceId > 0 : this.currentSequenceId > 1;
390
- }
391
384
  /** Completes an SSRM request with zero rows and invokes `onNoDataAvailableFunc` on the first block only. @internal */
392
385
  completeEmptyResult(params) {
393
386
  var _a, _b;
@@ -420,22 +413,6 @@ export class BaseServerSideDatasource {
420
413
  var _a;
421
414
  (_a = this.onDataAvailableFunc) === null || _a === void 0 ? void 0 : _a.call(this);
422
415
  }
423
- /**
424
- * Determines the effective paging mode based on criteriaOnlyRequest availability and user settings
425
- */
426
- getEffectivePagingMode() {
427
- // If user explicitly set a paging mode
428
- if (this.pagingMode) {
429
- // If criteriaOnlyRequest is not available but user wants offsetBased, warn and use viewBased
430
- if (this.pagingMode === 'offsetBased' && !this.criteriaOnlyRequest) {
431
- logger.warn('offsetBased paging mode requires criteriaOnlyRequest support. Falling back to viewBased mode.');
432
- return 'viewBased';
433
- }
434
- return this.pagingMode;
435
- }
436
- // Auto-determine based on criteriaOnlyRequest availability
437
- return this.criteriaOnlyRequest ? 'offsetBased' : 'viewBased';
438
- }
439
416
  }
440
417
  __decorate([
441
418
  Auth