igniteui-grid-lite 0.4.0-beta.3 → 0.4.0

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.
@@ -298,434 +298,610 @@
298
298
  },
299
299
  {
300
300
  "kind": "javascript-module",
301
- "path": "src/controllers/data-operation.ts",
301
+ "path": "src/components/cell.ts",
302
302
  "declarations": [
303
303
  {
304
304
  "kind": "class",
305
- "description": "",
306
- "name": "DataOperationsController",
305
+ "description": "Component representing a DOM cell of the Igc grid.",
306
+ "name": "IgcGridLiteCell",
307
307
  "members": [
308
308
  {
309
309
  "kind": "field",
310
- "name": "sorting",
311
- "privacy": "protected",
312
- "default": "new SortDataOperation<T>()"
310
+ "name": "tagName",
311
+ "privacy": "public",
312
+ "static": true,
313
+ "readonly": true
314
+ },
315
+ {
316
+ "kind": "method",
317
+ "name": "register",
318
+ "privacy": "public",
319
+ "static": true,
320
+ "return": {
321
+ "type": {
322
+ "text": "void"
323
+ }
324
+ }
313
325
  },
314
326
  {
315
327
  "kind": "field",
316
- "name": "filtering",
317
- "privacy": "protected",
318
- "default": "new FilterDataOperation<T>()"
328
+ "name": "value",
329
+ "type": {
330
+ "text": "PropertyType<T>"
331
+ },
332
+ "privacy": "public",
333
+ "description": "The value which will be rendered by the component."
319
334
  },
320
335
  {
321
- "kind": "method",
322
- "name": "hostConnected",
323
- "privacy": "public"
336
+ "kind": "field",
337
+ "name": "column",
338
+ "type": {
339
+ "text": "ColumnConfiguration<T>"
340
+ },
341
+ "privacy": "public",
342
+ "description": "A reference to the column configuration object."
324
343
  },
325
344
  {
326
345
  "kind": "field",
327
- "name": "hasCustomSort",
328
- "privacy": "protected",
329
- "readonly": true
346
+ "name": "active",
347
+ "type": {
348
+ "text": "boolean"
349
+ },
350
+ "privacy": "public",
351
+ "default": "false",
352
+ "description": "Indicates whether this is the active cell in the grid.",
353
+ "attribute": "active",
354
+ "reflects": true
330
355
  },
331
356
  {
332
357
  "kind": "field",
333
- "name": "hasCustomFilter",
334
- "privacy": "protected",
335
- "readonly": true
358
+ "name": "row",
359
+ "type": {
360
+ "text": "IgcGridLiteRow<T>"
361
+ },
362
+ "privacy": "public",
363
+ "description": "The parent row component holding this cell."
336
364
  },
337
365
  {
338
366
  "kind": "field",
339
- "name": "customFilter",
340
- "privacy": "protected",
341
- "readonly": true
367
+ "name": "rowIndex",
368
+ "type": {
369
+ "text": "number"
370
+ },
371
+ "privacy": "public",
372
+ "default": "-1"
342
373
  },
343
374
  {
344
375
  "kind": "field",
345
- "name": "customSort",
346
- "privacy": "protected",
347
- "readonly": true
376
+ "name": "cellTemplate",
377
+ "type": {
378
+ "text": "(context: IgcCellContext<T>) => unknown | undefined"
379
+ },
380
+ "privacy": "public"
348
381
  },
349
382
  {
350
- "kind": "method",
351
- "name": "apply",
352
- "privacy": "public",
353
- "parameters": [
354
- {
355
- "name": "data",
356
- "type": {
357
- "text": "T[]"
358
- }
359
- },
360
- {
361
- "name": "state",
362
- "type": {
363
- "text": "StateController<T>"
364
- }
365
- }
366
- ]
367
- }
368
- ]
369
- },
370
- {
371
- "kind": "function",
372
- "name": "createDataOperationsController",
373
- "return": {
374
- "type": {
375
- "text": "DataOperationsController<T>"
383
+ "kind": "field",
384
+ "name": "context",
385
+ "type": {
386
+ "text": "IgcCellContext<T>"
387
+ },
388
+ "privacy": "protected",
389
+ "readonly": true
376
390
  }
377
- },
378
- "parameters": [
391
+ ],
392
+ "attributes": [
379
393
  {
380
- "name": "host",
394
+ "name": "active",
381
395
  "type": {
382
- "text": "GridHost<T>"
383
- }
396
+ "text": "boolean"
397
+ },
398
+ "default": "false",
399
+ "description": "Indicates whether this is the active cell in the grid.",
400
+ "fieldName": "active"
384
401
  }
385
- ]
402
+ ],
403
+ "superclass": {
404
+ "name": "LitElement",
405
+ "package": "lit"
406
+ },
407
+ "customElement": true
386
408
  }
387
409
  ],
388
410
  "exports": [
389
411
  {
390
412
  "kind": "js",
391
- "name": "createDataOperationsController",
392
- "declaration": {
393
- "name": "createDataOperationsController",
394
- "module": "src/controllers/data-operation.ts"
395
- }
396
- },
397
- {
398
- "kind": "js",
399
- "name": "DataOperationsController",
413
+ "name": "default",
400
414
  "declaration": {
401
- "name": "DataOperationsController",
402
- "module": "src/controllers/data-operation.ts"
415
+ "name": "IgcGridLiteCell",
416
+ "module": "src/components/cell.ts"
403
417
  }
404
418
  }
405
419
  ]
406
420
  },
407
421
  {
408
422
  "kind": "javascript-module",
409
- "path": "src/controllers/dom.ts",
423
+ "path": "src/components/column.ts",
410
424
  "declarations": [
411
425
  {
412
426
  "kind": "class",
413
427
  "description": "",
414
- "name": "GridDOMController",
428
+ "name": "IgcGridLiteColumn",
415
429
  "members": [
416
430
  {
417
431
  "kind": "field",
418
- "name": "_host",
432
+ "name": "tagName",
433
+ "privacy": "public",
434
+ "static": true,
435
+ "readonly": true
436
+ },
437
+ {
438
+ "kind": "method",
439
+ "name": "register",
440
+ "privacy": "public",
441
+ "static": true,
442
+ "return": {
443
+ "type": {
444
+ "text": "void"
445
+ }
446
+ }
447
+ },
448
+ {
449
+ "kind": "field",
450
+ "name": "_setConfig",
419
451
  "type": {
420
- "text": "GridHost<T>"
452
+ "text": "(config: BaseColumnConfiguration<T>) => void | undefined"
421
453
  },
422
454
  "privacy": "protected",
423
- "readonly": true,
424
- "default": "host"
455
+ "description": "Callback context to notify the parent grid about configuration changes"
425
456
  },
426
457
  {
427
458
  "kind": "field",
428
- "name": "_state",
459
+ "name": "field",
429
460
  "type": {
430
- "text": "StateController<T>"
461
+ "text": "Keys<T>"
431
462
  },
432
- "privacy": "protected",
433
- "readonly": true,
434
- "default": "state"
463
+ "privacy": "public",
464
+ "description": "The field from the data for this column.",
465
+ "attribute": "field"
435
466
  },
436
467
  {
437
468
  "kind": "field",
438
- "name": "columnSizes",
469
+ "name": "dataType",
439
470
  "type": {
440
- "text": "StyleInfo"
471
+ "text": "'number' | 'string' | 'boolean' | undefined"
441
472
  },
442
473
  "privacy": "public",
443
- "default": "{}"
474
+ "default": "'string'",
475
+ "description": "The data type of the column's values.",
476
+ "attribute": "data-type"
444
477
  },
445
478
  {
446
- "kind": "method",
447
- "name": "hostConnected",
479
+ "kind": "field",
480
+ "name": "header",
481
+ "type": {
482
+ "text": "string | undefined"
483
+ },
448
484
  "privacy": "public",
449
- "return": {
450
- "type": {
451
- "text": "void"
452
- }
453
- }
485
+ "description": "The header text of the column.",
486
+ "attribute": "header"
454
487
  },
455
488
  {
456
- "kind": "method",
457
- "name": "hostUpdate",
489
+ "kind": "field",
490
+ "name": "width",
491
+ "type": {
492
+ "text": "string | undefined"
493
+ },
458
494
  "privacy": "public",
459
- "return": {
460
- "type": {
461
- "text": "void"
462
- }
463
- }
495
+ "description": "The width of the column.",
496
+ "attribute": "width"
464
497
  },
465
498
  {
466
- "kind": "method",
467
- "name": "setScrollOffset",
499
+ "kind": "field",
500
+ "name": "hidden",
501
+ "type": {
502
+ "text": "boolean"
503
+ },
468
504
  "privacy": "public",
469
- "return": {
470
- "type": {
471
- "text": "void"
472
- }
473
- }
505
+ "default": "false",
506
+ "description": "Indicates whether the column is hidden.",
507
+ "attribute": "hidden"
474
508
  },
475
509
  {
476
- "kind": "method",
477
- "name": "setGridColumnSizes",
478
- "privacy": "protected",
479
- "return": {
480
- "type": {
481
- "text": "void"
482
- }
483
- }
510
+ "kind": "field",
511
+ "name": "resizable",
512
+ "type": {
513
+ "text": "boolean"
514
+ },
515
+ "privacy": "public",
516
+ "default": "false",
517
+ "description": "Indicates whether the column is resizable.",
518
+ "attribute": "resizable"
484
519
  },
485
520
  {
486
- "kind": "method",
487
- "name": "getActiveRowStyles",
488
- "privacy": "public",
489
- "return": {
490
- "type": {
491
- "text": "StyleInfo"
492
- }
521
+ "kind": "field",
522
+ "name": "sortable",
523
+ "type": {
524
+ "text": "boolean"
493
525
  },
494
- "parameters": [
495
- {
496
- "name": "index",
497
- "type": {
498
- "text": "number"
499
- }
500
- }
501
- ]
502
- }
503
- ]
504
- },
505
- {
506
- "kind": "function",
507
- "name": "createDomController",
508
- "return": {
509
- "type": {
510
- "text": "GridDOMController<T>"
526
+ "privacy": "public",
527
+ "default": "false",
528
+ "description": "Indicates whether the column is sortable.",
529
+ "attribute": "sortable"
530
+ },
531
+ {
532
+ "kind": "field",
533
+ "name": "sortingCaseSensitive",
534
+ "type": {
535
+ "text": "boolean"
536
+ },
537
+ "privacy": "public",
538
+ "default": "false",
539
+ "description": "Whether sort operations will be case sensitive.",
540
+ "attribute": "sorting-case-sensitive"
541
+ },
542
+ {
543
+ "kind": "field",
544
+ "name": "sortConfiguration",
545
+ "type": {
546
+ "text": "ColumnSortConfiguration<T> | undefined"
547
+ },
548
+ "privacy": "public",
549
+ "description": "Sort configuration for the column (e.g., custom comparer)."
550
+ },
551
+ {
552
+ "kind": "field",
553
+ "name": "filterable",
554
+ "type": {
555
+ "text": "boolean"
556
+ },
557
+ "privacy": "public",
558
+ "default": "false",
559
+ "description": "Indicates whether the column is filterable.",
560
+ "attribute": "filterable"
561
+ },
562
+ {
563
+ "kind": "field",
564
+ "name": "filteringCaseSensitive",
565
+ "type": {
566
+ "text": "boolean"
567
+ },
568
+ "privacy": "public",
569
+ "default": "false",
570
+ "description": "Whether filter operations will be case sensitive.",
571
+ "attribute": "filtering-case-sensitive"
572
+ },
573
+ {
574
+ "kind": "field",
575
+ "name": "headerTemplate",
576
+ "type": {
577
+ "text": "(params: IgcHeaderContext<T>) => unknown | undefined"
578
+ },
579
+ "privacy": "public",
580
+ "description": "Custom header template for the column."
581
+ },
582
+ {
583
+ "kind": "field",
584
+ "name": "cellTemplate",
585
+ "type": {
586
+ "text": "(params: IgcCellContext<T, any>) => unknown | undefined"
587
+ },
588
+ "privacy": "public",
589
+ "description": "Custom cell template for the column."
511
590
  }
512
- },
513
- "parameters": [
591
+ ],
592
+ "attributes": [
514
593
  {
515
- "name": "host",
594
+ "name": "field",
516
595
  "type": {
517
- "text": "GridHost<T>"
518
- }
596
+ "text": "Keys<T>"
597
+ },
598
+ "description": "The field from the data for this column.",
599
+ "fieldName": "field"
519
600
  },
520
601
  {
521
- "name": "state",
602
+ "name": "data-type",
522
603
  "type": {
523
- "text": "StateController<T>"
524
- }
604
+ "text": "'number' | 'string' | 'boolean' | undefined"
605
+ },
606
+ "default": "'string'",
607
+ "description": "The data type of the column's values.",
608
+ "fieldName": "dataType"
609
+ },
610
+ {
611
+ "name": "header",
612
+ "type": {
613
+ "text": "string | undefined"
614
+ },
615
+ "description": "The header text of the column.",
616
+ "fieldName": "header"
617
+ },
618
+ {
619
+ "name": "width",
620
+ "type": {
621
+ "text": "string | undefined"
622
+ },
623
+ "description": "The width of the column.",
624
+ "fieldName": "width"
625
+ },
626
+ {
627
+ "name": "hidden",
628
+ "type": {
629
+ "text": "boolean"
630
+ },
631
+ "default": "false",
632
+ "description": "Indicates whether the column is hidden.",
633
+ "fieldName": "hidden"
634
+ },
635
+ {
636
+ "name": "resizable",
637
+ "type": {
638
+ "text": "boolean"
639
+ },
640
+ "default": "false",
641
+ "description": "Indicates whether the column is resizable.",
642
+ "fieldName": "resizable"
643
+ },
644
+ {
645
+ "name": "sortable",
646
+ "type": {
647
+ "text": "boolean"
648
+ },
649
+ "default": "false",
650
+ "description": "Indicates whether the column is sortable.",
651
+ "fieldName": "sortable"
652
+ },
653
+ {
654
+ "name": "sorting-case-sensitive",
655
+ "type": {
656
+ "text": "boolean"
657
+ },
658
+ "default": "false",
659
+ "description": "Whether sort operations will be case sensitive.",
660
+ "fieldName": "sortingCaseSensitive"
661
+ },
662
+ {
663
+ "name": "filterable",
664
+ "type": {
665
+ "text": "boolean"
666
+ },
667
+ "default": "false",
668
+ "description": "Indicates whether the column is filterable.",
669
+ "fieldName": "filterable"
670
+ },
671
+ {
672
+ "name": "filtering-case-sensitive",
673
+ "type": {
674
+ "text": "boolean"
675
+ },
676
+ "default": "false",
677
+ "description": "Whether filter operations will be case sensitive.",
678
+ "fieldName": "filteringCaseSensitive"
525
679
  }
526
- ]
680
+ ],
681
+ "superclass": {
682
+ "name": "LitElement",
683
+ "package": "lit"
684
+ },
685
+ "tagName": "igc-grid-lite-column",
686
+ "customElement": true
527
687
  }
528
688
  ],
529
689
  "exports": [
530
690
  {
531
691
  "kind": "js",
532
- "name": "createDomController",
533
- "declaration": {
534
- "name": "createDomController",
535
- "module": "src/controllers/dom.ts"
536
- }
537
- },
538
- {
539
- "kind": "js",
540
- "name": "GridDOMController",
692
+ "name": "IgcGridLiteColumn",
541
693
  "declaration": {
542
- "name": "GridDOMController",
543
- "module": "src/controllers/dom.ts"
694
+ "name": "IgcGridLiteColumn",
695
+ "module": "src/components/column.ts"
544
696
  }
545
697
  }
546
698
  ]
547
699
  },
548
700
  {
549
701
  "kind": "javascript-module",
550
- "path": "src/controllers/filter.ts",
702
+ "path": "src/components/filter-row.ts",
551
703
  "declarations": [
552
704
  {
553
705
  "kind": "class",
554
706
  "description": "",
555
- "name": "FilterController",
707
+ "name": "IgcFilterRow",
556
708
  "members": [
557
709
  {
558
710
  "kind": "field",
559
- "name": "_stateController",
560
- "type": {
561
- "text": "StateController<T>"
562
- },
563
- "privacy": "private",
564
- "readonly": true,
565
- "default": "state"
711
+ "name": "tagName",
712
+ "privacy": "public",
713
+ "static": true,
714
+ "readonly": true
715
+ },
716
+ {
717
+ "kind": "method",
718
+ "name": "register",
719
+ "privacy": "public",
720
+ "static": true
566
721
  },
567
722
  {
568
723
  "kind": "field",
569
724
  "name": "state",
570
725
  "type": {
571
- "text": "FilterState<T>"
726
+ "text": "StateController<T>"
572
727
  },
573
- "privacy": "public",
574
- "default": "new FilterState()"
728
+ "privacy": "public"
575
729
  },
576
730
  {
577
731
  "kind": "field",
578
- "name": "host",
579
- "privacy": "public",
732
+ "name": "isNumeric",
733
+ "privacy": "protected",
580
734
  "readonly": true
581
735
  },
582
736
  {
583
737
  "kind": "field",
584
- "name": "filterRow",
585
- "type": {
586
- "text": "IgcFilterRow<T> | null"
587
- },
588
- "privacy": "public",
738
+ "name": "filterController",
739
+ "privacy": "protected",
589
740
  "readonly": true
590
741
  },
591
742
  {
592
743
  "kind": "field",
593
- "name": "#virtualizer",
594
- "privacy": "private",
744
+ "name": "condition",
745
+ "privacy": "protected",
595
746
  "readonly": true
596
747
  },
597
748
  {
598
- "kind": "method",
599
- "name": "#emitFilteringEvent",
600
- "privacy": "private",
601
- "parameters": [
602
- {
603
- "name": "expression",
604
- "type": {
605
- "text": "FilterExpression<T>"
606
- }
607
- },
608
- {
609
- "name": "type",
610
- "type": {
611
- "text": "'add' | 'modify' | 'remove'"
612
- }
613
- }
614
- ]
749
+ "kind": "field",
750
+ "name": "active",
751
+ "type": {
752
+ "text": "boolean"
753
+ },
754
+ "privacy": "public",
755
+ "default": "false"
756
+ },
757
+ {
758
+ "kind": "field",
759
+ "name": "input",
760
+ "type": {
761
+ "text": "IgcInputComponent"
762
+ },
763
+ "privacy": "public"
764
+ },
765
+ {
766
+ "kind": "field",
767
+ "name": "conditionElement",
768
+ "type": {
769
+ "text": "IgcIconComponent"
770
+ },
771
+ "privacy": "public"
772
+ },
773
+ {
774
+ "kind": "field",
775
+ "name": "dropdown",
776
+ "type": {
777
+ "text": "IgcDropdownComponent"
778
+ },
779
+ "privacy": "public"
780
+ },
781
+ {
782
+ "kind": "field",
783
+ "name": "column",
784
+ "type": {
785
+ "text": "ColumnConfiguration<T>"
786
+ },
787
+ "privacy": "public",
788
+ "default": "DEFAULT_COLUMN_CONFIG"
789
+ },
790
+ {
791
+ "kind": "field",
792
+ "name": "expression",
793
+ "type": {
794
+ "text": "FilterExpression<T>"
795
+ },
796
+ "privacy": "public"
615
797
  },
616
798
  {
617
799
  "kind": "method",
618
- "name": "#emitFilteredEvent",
619
- "privacy": "private",
620
- "parameters": [
621
- {
622
- "name": "detail",
623
- "optional": true,
624
- "type": {
625
- "text": "IgcFilteredEvent<T>"
626
- }
627
- }
628
- ]
800
+ "name": "#setDefaultExpression",
801
+ "privacy": "private"
629
802
  },
630
803
  {
631
804
  "kind": "method",
632
- "name": "#filter",
805
+ "name": "#removeExpression",
633
806
  "privacy": "private",
634
807
  "parameters": [
635
808
  {
636
809
  "name": "expression",
637
810
  "type": {
638
- "text": "FilterExpression<T> | FilterExpression<T>[]"
811
+ "text": "FilterExpression<T>"
639
812
  }
640
813
  }
641
814
  ]
642
815
  },
643
816
  {
644
817
  "kind": "method",
645
- "name": "hostConnected",
646
- "privacy": "public"
647
- },
648
- {
649
- "kind": "method",
650
- "name": "hostUpdate",
651
- "privacy": "public",
652
- "return": {
653
- "type": {
654
- "text": "void"
655
- }
656
- }
818
+ "name": "#show",
819
+ "privacy": "private"
657
820
  },
658
821
  {
659
822
  "kind": "method",
660
- "name": "get",
661
- "privacy": "public",
823
+ "name": "#handleConditionChanged",
824
+ "privacy": "private",
662
825
  "parameters": [
663
826
  {
664
- "name": "key",
827
+ "name": "event",
665
828
  "type": {
666
- "text": "Keys<T>"
829
+ "text": "CustomEvent<IgcDropdownItemComponent>"
667
830
  }
668
831
  }
669
832
  ]
670
833
  },
671
834
  {
672
835
  "kind": "method",
673
- "name": "reset",
674
- "privacy": "public",
836
+ "name": "#handleInput",
837
+ "privacy": "private",
675
838
  "parameters": [
676
839
  {
677
- "name": "key",
678
- "optional": true,
840
+ "name": "event",
679
841
  "type": {
680
- "text": "Keys<T>"
842
+ "text": "CustomEvent<string>"
681
843
  }
682
844
  }
683
845
  ]
684
846
  },
685
847
  {
686
848
  "kind": "method",
687
- "name": "setActiveColumn",
688
- "privacy": "public",
849
+ "name": "#handleKeydown",
850
+ "privacy": "private",
689
851
  "parameters": [
690
852
  {
691
- "name": "column",
692
- "optional": true,
853
+ "name": "event",
693
854
  "type": {
694
- "text": "ColumnConfiguration<T>"
855
+ "text": "KeyboardEvent"
695
856
  }
696
857
  }
697
858
  ]
698
859
  },
699
860
  {
700
861
  "kind": "method",
701
- "name": "getDefaultExpression",
702
- "privacy": "public",
862
+ "name": "#handleResetClick",
863
+ "privacy": "private"
864
+ },
865
+ {
866
+ "kind": "method",
867
+ "name": "#openDropdownList",
868
+ "privacy": "private"
869
+ },
870
+ {
871
+ "kind": "method",
872
+ "name": "activeChanged",
873
+ "privacy": "protected"
874
+ },
875
+ {
876
+ "kind": "method",
877
+ "name": "#chipCriteriaFor",
878
+ "privacy": "private",
703
879
  "parameters": [
704
880
  {
705
- "name": "column",
881
+ "name": "expression",
706
882
  "type": {
707
- "text": "ColumnConfiguration<T>"
883
+ "text": "FilterExpression<T>"
708
884
  }
709
885
  }
710
886
  ]
711
887
  },
712
888
  {
713
889
  "kind": "method",
714
- "name": "removeAllExpressions",
715
- "privacy": "public",
890
+ "name": "#chipSelectFor",
891
+ "privacy": "private",
716
892
  "parameters": [
717
893
  {
718
- "name": "key",
894
+ "name": "expression",
719
895
  "type": {
720
- "text": "Keys<T>"
896
+ "text": "FilterExpression<T>"
721
897
  }
722
898
  }
723
899
  ]
724
900
  },
725
901
  {
726
902
  "kind": "method",
727
- "name": "removeExpression",
728
- "privacy": "public",
903
+ "name": "#chipRemoveFor",
904
+ "privacy": "private",
729
905
  "parameters": [
730
906
  {
731
907
  "name": "expression",
@@ -737,835 +913,948 @@
737
913
  },
738
914
  {
739
915
  "kind": "method",
740
- "name": "filterWithEvent",
741
- "privacy": "public",
916
+ "name": "renderCriteriaButton",
917
+ "privacy": "protected",
742
918
  "parameters": [
743
919
  {
744
- "name": "expression",
920
+ "name": "expr",
745
921
  "type": {
746
922
  "text": "FilterExpression<T>"
747
923
  }
748
924
  },
749
925
  {
750
- "name": "type",
926
+ "name": "index",
751
927
  "type": {
752
- "text": "'add' | 'modify' | 'remove'"
928
+ "text": "number"
753
929
  }
754
930
  }
755
931
  ]
756
932
  },
757
933
  {
758
934
  "kind": "method",
759
- "name": "filter",
760
- "privacy": "public",
935
+ "name": "renderExpressionChip",
936
+ "privacy": "protected",
761
937
  "parameters": [
762
938
  {
763
- "name": "expression",
939
+ "name": "props",
764
940
  "type": {
765
- "text": "FilterExpression<T> | FilterExpression<T>[]"
941
+ "text": "ExpressionChipProps<T>"
766
942
  }
767
943
  }
768
944
  ]
769
- }
770
- ]
771
- }
772
- ],
773
- "exports": [
774
- {
775
- "kind": "js",
776
- "name": "FilterController",
777
- "declaration": {
778
- "name": "FilterController",
779
- "module": "src/controllers/filter.ts"
780
- }
781
- }
782
- ]
783
- },
784
- {
785
- "kind": "javascript-module",
786
- "path": "src/controllers/navigation.ts",
787
- "declarations": [
788
- {
789
- "kind": "class",
790
- "description": "",
791
- "name": "NavigationController",
792
- "members": [
793
- {
794
- "kind": "field",
795
- "name": "handlers",
796
- "privacy": "protected",
797
- "default": "new Map( Object.entries({ ArrowDown: this.arrowDown, ArrowUp: this.arrowUp, ArrowLeft: this.arrowLeft, ArrowRight: this.arrowRight, Home: this.home, End: this.end, }) )"
798
945
  },
799
946
  {
800
- "kind": "field",
801
- "name": "_virtualizer",
802
- "privacy": "protected",
803
- "readonly": true
947
+ "kind": "method",
948
+ "name": "renderActiveChips",
949
+ "privacy": "protected"
804
950
  },
805
951
  {
806
- "kind": "field",
807
- "name": "_navigationState",
808
- "privacy": "protected",
809
- "default": "NAVIGATION_STATE"
952
+ "kind": "method",
953
+ "name": "renderFilterActions",
954
+ "privacy": "protected"
810
955
  },
811
956
  {
812
- "kind": "field",
813
- "name": "_active",
814
- "privacy": "protected",
815
- "default": "SENTINEL_NODE"
957
+ "kind": "method",
958
+ "name": "renderDropdown",
959
+ "privacy": "protected"
816
960
  },
817
961
  {
818
- "kind": "field",
819
- "name": "nextNode",
820
- "privacy": "protected",
821
- "readonly": true
962
+ "kind": "method",
963
+ "name": "renderDropdownTarget",
964
+ "privacy": "protected"
822
965
  },
823
966
  {
824
- "kind": "field",
825
- "name": "_columns",
826
- "privacy": "protected",
827
- "readonly": true
967
+ "kind": "method",
968
+ "name": "renderInputArea",
969
+ "privacy": "protected"
828
970
  },
829
971
  {
830
- "kind": "field",
831
- "name": "_firstColumn",
832
- "privacy": "protected",
833
- "readonly": true
972
+ "kind": "method",
973
+ "name": "renderActiveState",
974
+ "privacy": "protected"
834
975
  },
835
976
  {
836
977
  "kind": "method",
837
- "name": "getPreviousColumn",
978
+ "name": "renderInactiveChips",
838
979
  "privacy": "protected",
839
980
  "parameters": [
840
981
  {
841
- "name": "key",
982
+ "name": "column",
842
983
  "type": {
843
- "text": "Keys<T>"
984
+ "text": "ColumnConfiguration<T>"
985
+ }
986
+ },
987
+ {
988
+ "name": "state",
989
+ "type": {
990
+ "text": "FilterExpressionTree<T>"
844
991
  }
845
992
  }
846
993
  ]
847
994
  },
848
995
  {
849
996
  "kind": "method",
850
- "name": "getNextColumn",
997
+ "name": "renderFilterState",
851
998
  "privacy": "protected",
852
999
  "parameters": [
853
1000
  {
854
- "name": "key",
1001
+ "name": "column",
855
1002
  "type": {
856
- "text": "Keys<T>"
1003
+ "text": "ColumnConfiguration<T>"
857
1004
  }
858
1005
  }
859
1006
  ]
860
1007
  },
861
1008
  {
862
1009
  "kind": "method",
863
- "name": "queryRowByIndex",
864
- "privacy": "protected",
865
- "parameters": [
866
- {
867
- "name": "index",
868
- "type": {
869
- "text": "number"
870
- }
871
- }
872
- ]
1010
+ "name": "renderInactiveState",
1011
+ "privacy": "protected"
1012
+ }
1013
+ ],
1014
+ "superclass": {
1015
+ "name": "LitElement",
1016
+ "package": "lit"
1017
+ },
1018
+ "customElement": true
1019
+ }
1020
+ ],
1021
+ "exports": [
1022
+ {
1023
+ "kind": "js",
1024
+ "name": "default",
1025
+ "declaration": {
1026
+ "name": "IgcFilterRow",
1027
+ "module": "src/components/filter-row.ts"
1028
+ }
1029
+ }
1030
+ ]
1031
+ },
1032
+ {
1033
+ "kind": "javascript-module",
1034
+ "path": "src/components/grid.ts",
1035
+ "declarations": [
1036
+ {
1037
+ "kind": "class",
1038
+ "description": "IgcGridLite is a web component for displaying data in a tabular format quick and easy.\n\nOut of the box it provides row virtualization, sort and filter operations (client and server side),\nthe ability to template cells and headers and column hiding.",
1039
+ "name": "IgcGridLite",
1040
+ "members": [
1041
+ {
1042
+ "kind": "field",
1043
+ "name": "tagName",
1044
+ "privacy": "public",
1045
+ "static": true,
1046
+ "readonly": true
873
1047
  },
874
1048
  {
875
1049
  "kind": "method",
876
- "name": "scrollToCell",
877
- "privacy": "protected",
878
- "parameters": [
879
- {
880
- "name": "node",
881
- "type": {
882
- "text": "ActiveNode<T>"
883
- }
1050
+ "name": "register",
1051
+ "privacy": "public",
1052
+ "static": true,
1053
+ "return": {
1054
+ "type": {
1055
+ "text": "void"
884
1056
  }
885
- ]
1057
+ }
886
1058
  },
887
1059
  {
888
1060
  "kind": "field",
889
- "name": "active",
890
- "type": {
891
- "text": "ActiveNode<T>"
892
- },
893
- "privacy": "public"
1061
+ "name": "_stateController",
1062
+ "privacy": "protected",
1063
+ "readonly": true
894
1064
  },
895
1065
  {
896
- "kind": "method",
897
- "name": "home",
898
- "privacy": "protected"
1066
+ "kind": "field",
1067
+ "name": "_domController",
1068
+ "privacy": "protected",
1069
+ "readonly": true
899
1070
  },
900
1071
  {
901
- "kind": "method",
902
- "name": "end",
903
- "privacy": "protected"
1072
+ "kind": "field",
1073
+ "name": "_dataController",
1074
+ "privacy": "protected",
1075
+ "readonly": true
904
1076
  },
905
1077
  {
906
- "kind": "method",
907
- "name": "arrowDown",
908
- "privacy": "protected"
1078
+ "kind": "field",
1079
+ "name": "_stateProvider",
1080
+ "privacy": "protected",
1081
+ "readonly": true,
1082
+ "default": "new ContextProvider(this, { context: GRID_STATE_CONTEXT, initialValue: this._stateController, })"
909
1083
  },
910
1084
  {
911
- "kind": "method",
912
- "name": "arrowUp",
913
- "privacy": "protected"
1085
+ "kind": "field",
1086
+ "name": "_columnUpdateProvider",
1087
+ "privacy": "protected",
1088
+ "readonly": true,
1089
+ "default": "new ContextProvider(this, { context: COLUMN_UPDATE_CONTEXT, initialValue: ((config: ColumnConfiguration<T>) => { this._updateConfiguration(config); }) as any, })"
914
1090
  },
915
1091
  {
916
- "kind": "method",
917
- "name": "arrowLeft",
918
- "privacy": "protected"
1092
+ "kind": "field",
1093
+ "name": "_initialSortExpressions",
1094
+ "type": {
1095
+ "text": "SortingExpression<T>[]"
1096
+ },
1097
+ "privacy": "private",
1098
+ "default": "[]"
919
1099
  },
920
1100
  {
921
- "kind": "method",
922
- "name": "arrowRight",
923
- "privacy": "protected"
1101
+ "kind": "field",
1102
+ "name": "_initialFilterExpressions",
1103
+ "type": {
1104
+ "text": "FilterExpression<T>[]"
1105
+ },
1106
+ "privacy": "private",
1107
+ "default": "[]"
924
1108
  },
925
1109
  {
926
1110
  "kind": "method",
927
- "name": "hostDisconnected",
928
- "privacy": "public"
1111
+ "name": "_updateObservers",
1112
+ "privacy": "private",
1113
+ "return": {
1114
+ "type": {
1115
+ "text": "void"
1116
+ }
1117
+ }
929
1118
  },
930
1119
  {
931
1120
  "kind": "method",
932
- "name": "navigate",
933
- "privacy": "public",
1121
+ "name": "_updateConfiguration",
1122
+ "privacy": "private",
1123
+ "return": {
1124
+ "type": {
1125
+ "text": "void"
1126
+ }
1127
+ },
934
1128
  "parameters": [
935
1129
  {
936
- "name": "event",
1130
+ "name": "config",
937
1131
  "type": {
938
- "text": "KeyboardEvent"
1132
+ "text": "ColumnConfiguration<T>"
939
1133
  }
940
1134
  }
941
1135
  ]
942
1136
  },
943
1137
  {
944
- "kind": "method",
945
- "name": "navigateTo",
1138
+ "kind": "field",
1139
+ "name": "_dataState",
1140
+ "type": {
1141
+ "text": "T[]"
1142
+ },
1143
+ "privacy": "protected",
1144
+ "default": "[]"
1145
+ },
1146
+ {
1147
+ "kind": "field",
1148
+ "name": "data",
1149
+ "type": {
1150
+ "text": "T[]"
1151
+ },
946
1152
  "privacy": "public",
947
- "parameters": [
948
- {
949
- "name": "row",
950
- "type": {
951
- "text": "number"
952
- }
953
- },
954
- {
955
- "name": "column",
956
- "optional": true,
957
- "type": {
958
- "text": "Keys<T>"
959
- }
960
- },
961
- {
962
- "name": "activate",
963
- "default": "false"
964
- }
965
- ]
966
- }
967
- ]
968
- }
969
- ],
970
- "exports": [
971
- {
972
- "kind": "js",
973
- "name": "NavigationController",
974
- "declaration": {
975
- "name": "NavigationController",
976
- "module": "src/controllers/navigation.ts"
977
- }
978
- }
979
- ]
980
- },
981
- {
982
- "kind": "javascript-module",
983
- "path": "src/controllers/resize.ts",
984
- "declarations": [
985
- {
986
- "kind": "class",
987
- "description": "",
988
- "name": "ResizeController",
989
- "members": [
1153
+ "default": "[]",
1154
+ "description": "The data source for the grid."
1155
+ },
990
1156
  {
991
1157
  "kind": "field",
992
- "name": "indicatorActive",
1158
+ "name": "autoGenerate",
993
1159
  "type": {
994
1160
  "text": "boolean"
995
1161
  },
996
1162
  "privacy": "public",
997
- "default": "false"
1163
+ "default": "false",
1164
+ "description": "Whether the grid will try to \"resolve\" its column configuration based on the passed\ndata source.",
1165
+ "attribute": "auto-generate"
998
1166
  },
999
1167
  {
1000
1168
  "kind": "field",
1001
- "name": "indicatorOffset",
1169
+ "name": "sortingOptions",
1002
1170
  "type": {
1003
- "text": "number"
1171
+ "text": "GridLiteSortingOptions"
1004
1172
  },
1005
1173
  "privacy": "public",
1006
- "default": "0"
1174
+ "default": "{ mode: 'multiple', }",
1175
+ "description": "Sort configuration property for the grid."
1007
1176
  },
1008
1177
  {
1009
- "kind": "method",
1010
- "name": "#maxSize",
1011
- "privacy": "private",
1012
- "parameters": [
1013
- {
1014
- "name": "key",
1015
- "type": {
1016
- "text": "Keys<T>"
1017
- }
1018
- },
1019
- {
1020
- "name": "headerWidth",
1021
- "type": {
1022
- "text": "number"
1023
- }
1024
- }
1025
- ]
1178
+ "kind": "field",
1179
+ "name": "dataPipelineConfiguration",
1180
+ "type": {
1181
+ "text": "DataPipelineConfiguration<T>"
1182
+ },
1183
+ "privacy": "public",
1184
+ "description": "Configuration object which controls remote data operations for the grid."
1026
1185
  },
1027
1186
  {
1028
- "kind": "method",
1029
- "name": "start",
1187
+ "kind": "field",
1188
+ "name": "sortingExpressions",
1030
1189
  "privacy": "public",
1031
- "parameters": [
1032
- {
1033
- "name": "header",
1034
- "type": {
1035
- "text": "IgcGridLiteHeader<T>"
1036
- },
1037
- "description": "the"
1038
- }
1039
- ],
1040
- "description": "Begins resizing a column by showing and positioning the resize indicator in relation to the column."
1190
+ "description": "Get the sort state for the grid.",
1191
+ "type": {
1192
+ "text": "SortingExpression<T>[]"
1193
+ }
1041
1194
  },
1042
1195
  {
1043
- "kind": "method",
1044
- "name": "stop",
1196
+ "kind": "field",
1197
+ "name": "filterExpressions",
1045
1198
  "privacy": "public",
1046
- "description": "Stops and resets the resizing state."
1199
+ "description": "Get the filter state for the grid.",
1200
+ "type": {
1201
+ "text": "FilterExpression<T>[]"
1202
+ }
1047
1203
  },
1048
1204
  {
1049
- "kind": "method",
1050
- "name": "resize",
1205
+ "kind": "field",
1206
+ "name": "columns",
1207
+ "type": {
1208
+ "text": "ColumnConfiguration<T>[]"
1209
+ },
1051
1210
  "privacy": "public",
1052
- "parameters": [
1053
- {
1054
- "name": "column",
1055
- "type": {
1056
- "text": "ColumnConfiguration<T>"
1057
- }
1058
- },
1059
- {
1060
- "name": "width",
1061
- "type": {
1062
- "text": "number"
1063
- }
1064
- },
1065
- {
1066
- "name": "sizerOffset",
1067
- "optional": true,
1068
- "type": {
1069
- "text": "number"
1070
- }
1071
- }
1072
- ]
1211
+ "readonly": true
1073
1212
  },
1074
1213
  {
1075
- "kind": "method",
1076
- "name": "autosize",
1214
+ "kind": "field",
1215
+ "name": "rows",
1077
1216
  "privacy": "public",
1078
- "parameters": [
1079
- {
1080
- "name": "column",
1081
- "type": {
1082
- "text": "ColumnConfiguration<T>"
1083
- }
1084
- },
1085
- {
1086
- "name": "header",
1087
- "type": {
1088
- "text": "IgcGridLiteHeader<T>"
1089
- }
1090
- }
1091
- ]
1092
- },
1093
- {
1094
- "kind": "method",
1095
- "name": "hostConnected",
1096
- "privacy": "public"
1217
+ "description": "Returns the collection of rendered row elements in the grid.",
1218
+ "readonly": true
1097
1219
  },
1098
- {
1099
- "kind": "method",
1100
- "name": "renderIndicator",
1101
- "privacy": "public",
1102
- "description": "Renders the resize indicator in the grid."
1103
- }
1104
- ]
1105
- }
1106
- ],
1107
- "exports": [
1108
- {
1109
- "kind": "js",
1110
- "name": "ResizeController",
1111
- "declaration": {
1112
- "name": "ResizeController",
1113
- "module": "src/controllers/resize.ts"
1114
- }
1115
- }
1116
- ]
1117
- },
1118
- {
1119
- "kind": "javascript-module",
1120
- "path": "src/controllers/sort.ts",
1121
- "declarations": [
1122
- {
1123
- "kind": "class",
1124
- "description": "",
1125
- "name": "SortController",
1126
- "members": [
1127
1220
  {
1128
1221
  "kind": "field",
1129
- "name": "state",
1222
+ "name": "dataView",
1130
1223
  "type": {
1131
- "text": "SortState<T>"
1224
+ "text": "ReadonlyArray<T>"
1132
1225
  },
1133
1226
  "privacy": "public",
1134
- "default": "new Map()"
1227
+ "description": "Returns the state of the data source after sort/filter operations\nhave been applied.",
1228
+ "readonly": true
1135
1229
  },
1136
1230
  {
1137
1231
  "kind": "field",
1138
- "name": "#isMultipleSort",
1139
- "privacy": "private",
1232
+ "name": "totalItems",
1233
+ "type": {
1234
+ "text": "number"
1235
+ },
1236
+ "privacy": "public",
1237
+ "description": "The total number of items in the IgcGridLite.dataView collection.",
1140
1238
  "readonly": true
1141
1239
  },
1142
1240
  {
1143
- "kind": "field",
1144
- "name": "#isTriStateSort",
1145
- "privacy": "private",
1146
- "readonly": true
1241
+ "kind": "method",
1242
+ "name": "dataChanged",
1243
+ "privacy": "protected"
1147
1244
  },
1148
1245
  {
1149
1246
  "kind": "method",
1150
- "name": "#resolveSortOptions",
1247
+ "name": "pipeline",
1248
+ "privacy": "protected"
1249
+ },
1250
+ {
1251
+ "kind": "method",
1252
+ "name": "_hasAssignedColumns",
1151
1253
  "privacy": "private",
1152
- "parameters": [
1153
- {
1154
- "name": "column",
1155
- "optional": true,
1156
- "type": {
1157
- "text": "ColumnConfiguration<T>"
1158
- }
1254
+ "return": {
1255
+ "type": {
1256
+ "text": "boolean"
1159
1257
  }
1160
- ]
1258
+ }
1161
1259
  },
1162
1260
  {
1163
1261
  "kind": "method",
1164
- "name": "#createDefaultExpression",
1262
+ "name": "_handleSlotChange",
1165
1263
  "privacy": "private",
1264
+ "return": {
1265
+ "type": {
1266
+ "text": "void"
1267
+ }
1268
+ },
1166
1269
  "parameters": [
1167
1270
  {
1168
- "name": "key",
1271
+ "name": "event",
1169
1272
  "type": {
1170
- "text": "Keys<T>"
1273
+ "text": "Event"
1171
1274
  }
1172
1275
  }
1173
1276
  ]
1174
1277
  },
1175
1278
  {
1176
1279
  "kind": "method",
1177
- "name": "#orderBy",
1178
- "privacy": "private",
1280
+ "name": "filter",
1281
+ "privacy": "public",
1179
1282
  "return": {
1180
1283
  "type": {
1181
- "text": "SortingDirection"
1284
+ "text": "void"
1182
1285
  }
1183
1286
  },
1184
1287
  "parameters": [
1185
1288
  {
1186
- "name": "dir",
1187
- "optional": true,
1289
+ "name": "config",
1188
1290
  "type": {
1189
- "text": "SortingDirection"
1291
+ "text": "FilterExpression<T> | FilterExpression<T>[]"
1190
1292
  }
1191
1293
  }
1192
- ]
1294
+ ],
1295
+ "description": "Performs a filter operation in the grid based on the passed expression(s)."
1193
1296
  },
1194
1297
  {
1195
1298
  "kind": "method",
1196
- "name": "#emitSortingEvent",
1197
- "privacy": "private",
1299
+ "name": "sort",
1300
+ "privacy": "public",
1198
1301
  "parameters": [
1199
1302
  {
1200
- "name": "detail",
1303
+ "name": "expressions",
1201
1304
  "type": {
1202
- "text": "SortingExpression<T>"
1305
+ "text": "SortingExpression<T> | SortingExpression<T>[]"
1203
1306
  }
1204
1307
  }
1205
- ]
1308
+ ],
1309
+ "description": "Performs a sort operation in the grid based on the passed expression(s)."
1206
1310
  },
1207
1311
  {
1208
1312
  "kind": "method",
1209
- "name": "#emitSortedEvent",
1210
- "privacy": "private",
1313
+ "name": "clearSort",
1314
+ "privacy": "public",
1315
+ "return": {
1316
+ "type": {
1317
+ "text": "void"
1318
+ }
1319
+ },
1211
1320
  "parameters": [
1212
1321
  {
1213
- "name": "detail",
1322
+ "name": "key",
1323
+ "optional": true,
1214
1324
  "type": {
1215
- "text": "SortingExpression<T>"
1325
+ "text": "Keys<T>"
1216
1326
  }
1217
1327
  }
1218
- ]
1328
+ ],
1329
+ "description": "Resets the current sort state of the control."
1219
1330
  },
1220
1331
  {
1221
1332
  "kind": "method",
1222
- "name": "#setExpression",
1223
- "privacy": "private",
1333
+ "name": "clearFilter",
1334
+ "privacy": "public",
1335
+ "return": {
1336
+ "type": {
1337
+ "text": "void"
1338
+ }
1339
+ },
1224
1340
  "parameters": [
1225
1341
  {
1226
- "name": "expression",
1342
+ "name": "key",
1343
+ "optional": true,
1227
1344
  "type": {
1228
- "text": "SortingExpression<T>"
1345
+ "text": "Keys<T>"
1229
1346
  }
1230
1347
  }
1231
- ]
1348
+ ],
1349
+ "description": "Resets the current filter state of the control."
1232
1350
  },
1233
1351
  {
1234
1352
  "kind": "method",
1235
- "name": "sortFromHeaderClick",
1353
+ "name": "navigateTo",
1236
1354
  "privacy": "public",
1237
1355
  "parameters": [
1356
+ {
1357
+ "name": "row",
1358
+ "type": {
1359
+ "text": "number"
1360
+ },
1361
+ "description": "The row index to navigate to"
1362
+ },
1238
1363
  {
1239
1364
  "name": "column",
1365
+ "optional": true,
1240
1366
  "type": {
1241
- "text": "ColumnConfiguration<T>"
1242
- }
1367
+ "text": "Keys<T>"
1368
+ },
1369
+ "description": "The column field to navigate to, if any"
1370
+ },
1371
+ {
1372
+ "name": "activate",
1373
+ "default": "false",
1374
+ "description": "Optionally also activate the navigated cell"
1243
1375
  }
1244
- ]
1376
+ ],
1377
+ "description": "Navigates to a position in the grid based on provided row index and column field."
1245
1378
  },
1246
1379
  {
1247
1380
  "kind": "method",
1248
- "name": "prepareExpression",
1381
+ "name": "getColumn",
1249
1382
  "privacy": "public",
1250
1383
  "return": {
1251
1384
  "type": {
1252
- "text": "SortingExpression<T>"
1385
+ "text": "ColumnConfiguration<T> | undefined"
1253
1386
  }
1254
1387
  },
1255
1388
  "parameters": [
1256
1389
  {
1257
- "name": "column",
1390
+ "name": "id",
1258
1391
  "type": {
1259
- "text": "ColumnConfiguration<T>"
1392
+ "text": "Keys<T> | number"
1260
1393
  }
1261
1394
  }
1262
- ]
1395
+ ],
1396
+ "description": "Returns a ColumnConfiguration for a given column."
1263
1397
  },
1264
1398
  {
1265
1399
  "kind": "method",
1266
- "name": "reset",
1267
- "privacy": "public",
1400
+ "name": "_bodyClickHandler",
1401
+ "privacy": "protected",
1402
+ "return": {
1403
+ "type": {
1404
+ "text": "void"
1405
+ }
1406
+ },
1268
1407
  "parameters": [
1269
1408
  {
1270
- "name": "key",
1271
- "optional": true,
1409
+ "name": "event",
1272
1410
  "type": {
1273
- "text": "Keys<T>"
1411
+ "text": "PointerEvent"
1274
1412
  }
1275
1413
  }
1276
1414
  ]
1277
1415
  },
1278
1416
  {
1279
1417
  "kind": "method",
1280
- "name": "_sort",
1418
+ "name": "_bodyKeydownHandler",
1281
1419
  "privacy": "protected",
1420
+ "return": {
1421
+ "type": {
1422
+ "text": "void"
1423
+ }
1424
+ },
1282
1425
  "parameters": [
1283
1426
  {
1284
- "name": "expressions",
1427
+ "name": "event",
1285
1428
  "type": {
1286
- "text": "SortingExpression<T> | SortingExpression<T>[]"
1429
+ "text": "KeyboardEvent"
1287
1430
  }
1288
1431
  }
1289
1432
  ]
1290
1433
  },
1434
+ {
1435
+ "kind": "field",
1436
+ "name": "_renderRow",
1437
+ "type": {
1438
+ "text": "RenderItemFunction<T>"
1439
+ },
1440
+ "privacy": "protected"
1441
+ },
1291
1442
  {
1292
1443
  "kind": "method",
1293
- "name": "sort",
1444
+ "name": "_renderHeaderRow",
1445
+ "privacy": "protected"
1446
+ },
1447
+ {
1448
+ "kind": "method",
1449
+ "name": "_renderBody",
1450
+ "privacy": "protected"
1451
+ },
1452
+ {
1453
+ "kind": "method",
1454
+ "name": "_renderFilterRow",
1455
+ "privacy": "protected"
1456
+ },
1457
+ {
1458
+ "kind": "method",
1459
+ "name": "addEventListener",
1294
1460
  "privacy": "public",
1461
+ "return": {
1462
+ "type": {
1463
+ "text": "void"
1464
+ }
1465
+ },
1295
1466
  "parameters": [
1296
1467
  {
1297
- "name": "expressions",
1468
+ "name": "type",
1298
1469
  "type": {
1299
- "text": "SortingExpression<T> | SortingExpression<T>[]"
1470
+ "text": "K"
1471
+ }
1472
+ },
1473
+ {
1474
+ "name": "listener",
1475
+ "type": {
1476
+ "text": "(this: HTMLElement, ev: M[K]) => any"
1477
+ }
1478
+ },
1479
+ {
1480
+ "name": "options",
1481
+ "optional": true,
1482
+ "type": {
1483
+ "text": "boolean | AddEventListenerOptions"
1300
1484
  }
1301
1485
  }
1302
- ]
1486
+ ],
1487
+ "inheritedFrom": {
1488
+ "name": "EventEmitterBase",
1489
+ "module": "src/internal/mixins/event-emitter.ts"
1490
+ }
1303
1491
  },
1304
1492
  {
1305
1493
  "kind": "method",
1306
- "name": "hostConnected",
1307
- "privacy": "public"
1494
+ "name": "removeEventListener",
1495
+ "privacy": "public",
1496
+ "return": {
1497
+ "type": {
1498
+ "text": "void"
1499
+ }
1500
+ },
1501
+ "parameters": [
1502
+ {
1503
+ "name": "type",
1504
+ "type": {
1505
+ "text": "K"
1506
+ }
1507
+ },
1508
+ {
1509
+ "name": "listener",
1510
+ "type": {
1511
+ "text": "(this: HTMLElement, ev: M[K]) => any"
1512
+ }
1513
+ },
1514
+ {
1515
+ "name": "options",
1516
+ "optional": true,
1517
+ "type": {
1518
+ "text": "boolean | EventListenerOptions"
1519
+ }
1520
+ }
1521
+ ],
1522
+ "inheritedFrom": {
1523
+ "name": "EventEmitterBase",
1524
+ "module": "src/internal/mixins/event-emitter.ts"
1525
+ }
1526
+ },
1527
+ {
1528
+ "kind": "method",
1529
+ "name": "emitEvent",
1530
+ "privacy": "public",
1531
+ "return": {
1532
+ "type": {
1533
+ "text": "boolean"
1534
+ }
1535
+ },
1536
+ "parameters": [
1537
+ {
1538
+ "name": "type",
1539
+ "type": {
1540
+ "text": "K"
1541
+ }
1542
+ },
1543
+ {
1544
+ "name": "eventInitDict",
1545
+ "optional": true,
1546
+ "type": {
1547
+ "text": "CustomEventInit<D>"
1548
+ }
1549
+ }
1550
+ ],
1551
+ "inheritedFrom": {
1552
+ "name": "EventEmitterBase",
1553
+ "module": "src/internal/mixins/event-emitter.ts"
1554
+ }
1308
1555
  }
1309
- ]
1556
+ ],
1557
+ "events": [
1558
+ {
1559
+ "description": "Emitted when sorting is initiated through the UI.",
1560
+ "name": "sorting"
1561
+ },
1562
+ {
1563
+ "description": "Emitted when a sort operation initiated through the UI has completed.",
1564
+ "name": "sorted"
1565
+ },
1566
+ {
1567
+ "description": "Emitted when filtering is initiated through the UI.",
1568
+ "name": "filtering"
1569
+ },
1570
+ {
1571
+ "description": "Emitted when a filter operation initiated through the UI has completed.",
1572
+ "name": "filtered"
1573
+ },
1574
+ {
1575
+ "type": {
1576
+ "text": "CustomEvent"
1577
+ },
1578
+ "inheritedFrom": {
1579
+ "name": "EventEmitterBase",
1580
+ "module": "src/internal/mixins/event-emitter.ts"
1581
+ }
1582
+ }
1583
+ ],
1584
+ "attributes": [
1585
+ {
1586
+ "name": "auto-generate",
1587
+ "type": {
1588
+ "text": "boolean"
1589
+ },
1590
+ "default": "false",
1591
+ "description": "Whether the grid will try to \"resolve\" its column configuration based on the passed\ndata source.",
1592
+ "fieldName": "autoGenerate",
1593
+ "attribute": "auto-generate"
1594
+ }
1595
+ ],
1596
+ "superclass": {
1597
+ "name": "EventEmitterBase",
1598
+ "module": "/src/internal/mixins/event-emitter.js"
1599
+ },
1600
+ "tagName": "igc-grid-lite",
1601
+ "customElement": true
1310
1602
  }
1311
1603
  ],
1312
1604
  "exports": [
1313
1605
  {
1314
1606
  "kind": "js",
1315
- "name": "SortController",
1607
+ "name": "IgcGridLite",
1316
1608
  "declaration": {
1317
- "name": "SortController",
1318
- "module": "src/controllers/sort.ts"
1609
+ "name": "IgcGridLite",
1610
+ "module": "src/components/grid.ts"
1319
1611
  }
1320
1612
  }
1321
1613
  ]
1322
1614
  },
1323
1615
  {
1324
1616
  "kind": "javascript-module",
1325
- "path": "src/controllers/state.ts",
1617
+ "path": "src/components/header-row.ts",
1326
1618
  "declarations": [
1327
1619
  {
1328
1620
  "kind": "class",
1329
1621
  "description": "",
1330
- "name": "StateController",
1622
+ "name": "IgcGridLiteHeaderRow",
1331
1623
  "members": [
1332
1624
  {
1333
1625
  "kind": "field",
1334
- "name": "_columns",
1335
- "type": {
1336
- "text": "ColumnConfiguration<T>[]"
1337
- },
1338
- "privacy": "private",
1339
- "default": "[]"
1340
- },
1341
- {
1342
- "kind": "field",
1343
- "name": "_observersCallback",
1344
- "type": {
1345
- "text": "() => void"
1346
- },
1347
- "privacy": "private",
1348
- "readonly": true,
1349
- "default": "observersCallback"
1350
- },
1351
- {
1352
- "kind": "field",
1353
- "name": "host",
1354
- "type": {
1355
- "text": "GridHost<T>"
1356
- },
1357
- "privacy": "public",
1358
- "readonly": true,
1359
- "description": "The grid host element.",
1360
- "default": "host"
1361
- },
1362
- {
1363
- "kind": "field",
1364
- "name": "sorting",
1365
- "type": {
1366
- "text": "SortController<T>"
1367
- },
1626
+ "name": "tagName",
1368
1627
  "privacy": "public",
1369
- "readonly": true,
1370
- "default": "new SortController(this.host)"
1628
+ "static": true,
1629
+ "readonly": true
1371
1630
  },
1372
1631
  {
1373
- "kind": "field",
1374
- "name": "filtering",
1375
- "type": {
1376
- "text": "FilterController<T>"
1377
- },
1632
+ "kind": "method",
1633
+ "name": "register",
1378
1634
  "privacy": "public",
1379
- "readonly": true,
1380
- "default": "new FilterController(this)"
1635
+ "static": true,
1636
+ "return": {
1637
+ "type": {
1638
+ "text": "void"
1639
+ }
1640
+ }
1381
1641
  },
1382
1642
  {
1383
1643
  "kind": "field",
1384
- "name": "navigation",
1644
+ "name": "_state",
1385
1645
  "type": {
1386
- "text": "NavigationController<T>"
1646
+ "text": "StateController<T> | undefined"
1387
1647
  },
1388
- "privacy": "public",
1389
- "readonly": true,
1390
- "default": "new NavigationController(this)"
1648
+ "privacy": "private",
1649
+ "readonly": true
1391
1650
  },
1392
1651
  {
1393
1652
  "kind": "field",
1394
- "name": "resizing",
1653
+ "name": "columns",
1395
1654
  "type": {
1396
- "text": "ResizeController<T>"
1655
+ "text": "ColumnConfiguration<T>[]"
1397
1656
  },
1398
1657
  "privacy": "public",
1399
- "readonly": true,
1400
- "default": "new ResizeController(this.host)"
1658
+ "default": "[]"
1401
1659
  },
1402
1660
  {
1403
1661
  "kind": "field",
1404
- "name": "columns",
1662
+ "name": "headers",
1405
1663
  "type": {
1406
- "text": "ColumnConfiguration<T>[]"
1664
+ "text": "IgcGridLiteHeader<T>[]"
1407
1665
  },
1408
1666
  "privacy": "public",
1409
1667
  "readonly": true
1410
1668
  },
1411
1669
  {
1412
- "kind": "field",
1413
- "name": "headerRow",
1414
- "type": {
1415
- "text": "IgcGridLiteHeaderRow<T> | null"
1416
- },
1670
+ "kind": "method",
1671
+ "name": "_setActiveFilterColumn",
1672
+ "privacy": "private",
1673
+ "return": {
1674
+ "type": {
1675
+ "text": "void"
1676
+ }
1677
+ },
1678
+ "parameters": [
1679
+ {
1680
+ "name": "event",
1681
+ "type": {
1682
+ "text": "PointerEvent"
1683
+ }
1684
+ }
1685
+ ]
1686
+ }
1687
+ ],
1688
+ "superclass": {
1689
+ "name": "LitElement",
1690
+ "package": "lit"
1691
+ },
1692
+ "customElement": true
1693
+ }
1694
+ ],
1695
+ "exports": [
1696
+ {
1697
+ "kind": "js",
1698
+ "name": "default",
1699
+ "declaration": {
1700
+ "name": "IgcGridLiteHeaderRow",
1701
+ "module": "src/components/header-row.ts"
1702
+ }
1703
+ }
1704
+ ]
1705
+ },
1706
+ {
1707
+ "kind": "javascript-module",
1708
+ "path": "src/components/header.ts",
1709
+ "declarations": [
1710
+ {
1711
+ "kind": "class",
1712
+ "description": "",
1713
+ "name": "IgcGridLiteHeader",
1714
+ "members": [
1715
+ {
1716
+ "kind": "field",
1717
+ "name": "tagName",
1417
1718
  "privacy": "public",
1418
- "description": "Returns the header row element of the grid.",
1719
+ "static": true,
1419
1720
  "readonly": true
1420
1721
  },
1722
+ {
1723
+ "kind": "method",
1724
+ "name": "register",
1725
+ "privacy": "public",
1726
+ "static": true,
1727
+ "return": {
1728
+ "type": {
1729
+ "text": "void"
1730
+ }
1731
+ }
1732
+ },
1421
1733
  {
1422
1734
  "kind": "field",
1423
- "name": "filterRow",
1735
+ "name": "context",
1424
1736
  "type": {
1425
- "text": "IgcFilterRow<T> | null"
1737
+ "text": "IgcHeaderContext<T>"
1426
1738
  },
1427
- "privacy": "public",
1428
- "description": "Returns the filter row element of the grid.",
1739
+ "privacy": "protected",
1429
1740
  "readonly": true
1430
1741
  },
1431
1742
  {
1432
1743
  "kind": "field",
1433
- "name": "rows",
1434
- "type": {
1435
- "text": "IgcGridLiteRow<T>[]"
1436
- },
1437
- "privacy": "public",
1438
- "description": "Returns the data row elements of the grid.",
1744
+ "name": "isSortable",
1745
+ "privacy": "protected",
1439
1746
  "readonly": true
1440
1747
  },
1441
1748
  {
1442
1749
  "kind": "field",
1443
- "name": "virtualizer",
1750
+ "name": "resizeController",
1751
+ "privacy": "protected",
1752
+ "readonly": true
1753
+ },
1754
+ {
1755
+ "kind": "field",
1756
+ "name": "state",
1444
1757
  "type": {
1445
- "text": "IgcVirtualizer | null"
1758
+ "text": "StateController<T>"
1446
1759
  },
1447
- "privacy": "public",
1448
- "description": "Returns the virtualizer element of the grid.",
1449
- "readonly": true
1760
+ "privacy": "public"
1450
1761
  },
1451
1762
  {
1452
1763
  "kind": "field",
1453
- "name": "active",
1764
+ "name": "column",
1454
1765
  "type": {
1455
- "text": "ActiveNode<T>"
1766
+ "text": "ColumnConfiguration<T>"
1456
1767
  },
1457
- "privacy": "public",
1458
- "description": "Sets the currently active node in the grid."
1768
+ "privacy": "public"
1459
1769
  },
1460
1770
  {
1461
1771
  "kind": "method",
1462
- "name": "hostUpdate",
1463
- "privacy": "public",
1464
- "return": {
1465
- "type": {
1466
- "text": "void"
1467
- }
1468
- }
1772
+ "name": "#addResizeEventHandlers",
1773
+ "privacy": "private"
1469
1774
  },
1470
1775
  {
1471
1776
  "kind": "method",
1472
- "name": "setColumnConfiguration",
1473
- "privacy": "public",
1474
- "return": {
1475
- "type": {
1476
- "text": "void"
1477
- }
1478
- },
1777
+ "name": "#handleClick",
1778
+ "privacy": "private",
1479
1779
  "parameters": [
1480
1780
  {
1481
- "name": "columns",
1781
+ "name": "e",
1482
1782
  "type": {
1483
- "text": "ColumnConfiguration<T>[]"
1783
+ "text": "Event"
1484
1784
  }
1485
1785
  }
1486
1786
  ]
1487
1787
  },
1488
1788
  {
1489
- "kind": "method",
1490
- "name": "setAutoColumnConfiguration",
1491
- "privacy": "public",
1492
- "return": {
1493
- "type": {
1494
- "text": "void"
1495
- }
1496
- }
1789
+ "kind": "field",
1790
+ "name": "#handleResize",
1791
+ "privacy": "private"
1497
1792
  },
1498
1793
  {
1499
1794
  "kind": "method",
1500
- "name": "updateColumnsConfiguration",
1501
- "privacy": "public",
1502
- "return": {
1503
- "type": {
1504
- "text": "void"
1505
- }
1506
- },
1795
+ "name": "#handleResizeStart",
1796
+ "privacy": "private",
1507
1797
  "parameters": [
1508
1798
  {
1509
- "name": "config",
1799
+ "name": "ev",
1510
1800
  "type": {
1511
- "text": "ColumnConfiguration<T>[]"
1801
+ "text": "PointerEvent"
1512
1802
  }
1513
1803
  }
1514
1804
  ]
1515
- }
1516
- ]
1517
- },
1518
- {
1519
- "kind": "function",
1520
- "name": "createStateController",
1521
- "return": {
1522
- "type": {
1523
- "text": "StateController<T>"
1524
- }
1525
- },
1526
- "parameters": [
1805
+ },
1527
1806
  {
1528
- "name": "host",
1529
- "type": {
1530
- "text": "GridHost<T>"
1531
- }
1807
+ "kind": "field",
1808
+ "name": "#handlePointerLost",
1809
+ "privacy": "private"
1532
1810
  },
1533
1811
  {
1534
- "name": "observersCallback",
1535
- "type": {
1536
- "text": "() => void"
1537
- }
1812
+ "kind": "field",
1813
+ "name": "#handleAutosize",
1814
+ "privacy": "private"
1815
+ },
1816
+ {
1817
+ "kind": "method",
1818
+ "name": "renderSortPart",
1819
+ "privacy": "protected"
1820
+ },
1821
+ {
1822
+ "kind": "method",
1823
+ "name": "renderContentPart",
1824
+ "privacy": "protected"
1825
+ },
1826
+ {
1827
+ "kind": "method",
1828
+ "name": "renderResizePart",
1829
+ "privacy": "protected"
1538
1830
  }
1539
- ]
1831
+ ],
1832
+ "superclass": {
1833
+ "name": "LitElement",
1834
+ "package": "lit"
1835
+ },
1836
+ "customElement": true
1540
1837
  }
1541
1838
  ],
1542
1839
  "exports": [
1543
1840
  {
1544
1841
  "kind": "js",
1545
- "name": "createStateController",
1546
- "declaration": {
1547
- "name": "createStateController",
1548
- "module": "src/controllers/state.ts"
1549
- }
1550
- },
1551
- {
1552
- "kind": "js",
1553
- "name": "StateController",
1842
+ "name": "default",
1554
1843
  "declaration": {
1555
- "name": "StateController",
1556
- "module": "src/controllers/state.ts"
1844
+ "name": "IgcGridLiteHeader",
1845
+ "module": "src/components/header.ts"
1557
1846
  }
1558
1847
  }
1559
1848
  ]
1560
1849
  },
1561
1850
  {
1562
1851
  "kind": "javascript-module",
1563
- "path": "src/components/cell.ts",
1852
+ "path": "src/components/row.ts",
1564
1853
  "declarations": [
1565
1854
  {
1566
1855
  "kind": "class",
1567
- "description": "Component representing a DOM cell of the Igc grid.",
1568
- "name": "IgcGridLiteCell",
1856
+ "description": "Component representing the DOM row in the IgcGridLite.",
1857
+ "name": "IgcGridLiteRow",
1569
1858
  "members": [
1570
1859
  {
1571
1860
  "kind": "field",
@@ -1587,64 +1876,48 @@
1587
1876
  },
1588
1877
  {
1589
1878
  "kind": "field",
1590
- "name": "value",
1879
+ "name": "data",
1591
1880
  "type": {
1592
- "text": "PropertyType<T>"
1881
+ "text": "T | undefined"
1593
1882
  },
1594
- "privacy": "public",
1595
- "description": "The value which will be rendered by the component."
1883
+ "privacy": "public"
1596
1884
  },
1597
1885
  {
1598
1886
  "kind": "field",
1599
- "name": "column",
1887
+ "name": "columns",
1600
1888
  "type": {
1601
- "text": "ColumnConfiguration<T>"
1889
+ "text": "Array<ColumnConfiguration<T>>"
1602
1890
  },
1603
1891
  "privacy": "public",
1604
- "description": "A reference to the column configuration object."
1892
+ "default": "[]"
1605
1893
  },
1606
1894
  {
1607
1895
  "kind": "field",
1608
- "name": "active",
1896
+ "name": "activeNode",
1609
1897
  "type": {
1610
- "text": "boolean"
1898
+ "text": "ActiveNode<T> | undefined"
1611
1899
  },
1612
- "privacy": "public",
1613
- "default": "false",
1614
- "description": "Indicates whether this is the active cell in the grid.",
1615
- "attribute": "active",
1616
- "reflects": true
1900
+ "privacy": "public"
1617
1901
  },
1618
1902
  {
1619
1903
  "kind": "field",
1620
- "name": "row",
1904
+ "name": "index",
1621
1905
  "type": {
1622
- "text": "IgcGridLiteRow<T>"
1906
+ "text": "number"
1623
1907
  },
1624
1908
  "privacy": "public",
1625
- "description": "The parent row component holding this cell."
1909
+ "default": "-1"
1626
1910
  },
1627
1911
  {
1628
1912
  "kind": "field",
1629
- "name": "context",
1913
+ "name": "cells",
1630
1914
  "type": {
1631
- "text": "IgcCellContext<T>"
1915
+ "text": "IgcGridLiteCell<T>[]"
1632
1916
  },
1633
- "privacy": "protected",
1917
+ "privacy": "public",
1634
1918
  "readonly": true
1635
1919
  }
1636
1920
  ],
1637
- "attributes": [
1638
- {
1639
- "name": "active",
1640
- "type": {
1641
- "text": "boolean"
1642
- },
1643
- "default": "false",
1644
- "description": "Indicates whether this is the active cell in the grid.",
1645
- "fieldName": "active"
1646
- }
1647
- ],
1648
1921
  "superclass": {
1649
1922
  "name": "LitElement",
1650
1923
  "package": "lit"
@@ -1657,20 +1930,20 @@
1657
1930
  "kind": "js",
1658
1931
  "name": "default",
1659
1932
  "declaration": {
1660
- "name": "IgcGridLiteCell",
1661
- "module": "src/components/cell.ts"
1933
+ "name": "IgcGridLiteRow",
1934
+ "module": "src/components/row.ts"
1662
1935
  }
1663
1936
  }
1664
1937
  ]
1665
1938
  },
1666
1939
  {
1667
1940
  "kind": "javascript-module",
1668
- "path": "src/components/column.ts",
1941
+ "path": "src/components/virtualizer.ts",
1669
1942
  "declarations": [
1670
1943
  {
1671
1944
  "kind": "class",
1672
1945
  "description": "",
1673
- "name": "IgcGridLiteColumn",
1946
+ "name": "IgcVirtualizer",
1674
1947
  "members": [
1675
1948
  {
1676
1949
  "kind": "field",
@@ -1679,6 +1952,15 @@
1679
1952
  "static": true,
1680
1953
  "readonly": true
1681
1954
  },
1955
+ {
1956
+ "kind": "field",
1957
+ "name": "layout",
1958
+ "type": {
1959
+ "text": "LitVirtualizer['layout']"
1960
+ },
1961
+ "privacy": "public",
1962
+ "default": "{ type: IgcFlowLayout, }"
1963
+ },
1682
1964
  {
1683
1965
  "kind": "method",
1684
1966
  "name": "register",
@@ -1692,669 +1974,191 @@
1692
1974
  },
1693
1975
  {
1694
1976
  "kind": "field",
1695
- "name": "_setConfig",
1696
- "type": {
1697
- "text": "(config: BaseColumnConfiguration<T>) => void | undefined"
1698
- },
1699
- "privacy": "protected",
1700
- "description": "Callback context to notify the parent grid about configuration changes"
1701
- },
1702
- {
1703
- "kind": "field",
1704
- "name": "field",
1705
- "type": {
1706
- "text": "Keys<T>"
1707
- },
1708
- "privacy": "public",
1709
- "description": "The field from the data for this column.",
1710
- "attribute": "field"
1711
- },
1712
- {
1713
- "kind": "field",
1714
- "name": "dataType",
1715
- "type": {
1716
- "text": "'number' | 'string' | 'boolean' | undefined"
1717
- },
1718
- "privacy": "public",
1719
- "default": "'string'",
1720
- "description": "The data type of the column's values.",
1721
- "attribute": "data-type"
1722
- },
1723
- {
1724
- "kind": "field",
1725
- "name": "header",
1726
- "type": {
1727
- "text": "string | undefined"
1728
- },
1729
- "privacy": "public",
1730
- "description": "The header text of the column.",
1731
- "attribute": "header"
1732
- },
1733
- {
1734
- "kind": "field",
1735
- "name": "width",
1736
- "type": {
1737
- "text": "string | undefined"
1738
- },
1739
- "privacy": "public",
1740
- "description": "The width of the column.",
1741
- "attribute": "width"
1742
- },
1743
- {
1744
- "kind": "field",
1745
- "name": "hidden",
1977
+ "name": "scroller",
1746
1978
  "type": {
1747
1979
  "text": "boolean"
1748
1980
  },
1749
1981
  "privacy": "public",
1750
- "default": "false",
1751
- "description": "Indicates whether the column is hidden.",
1752
- "attribute": "hidden"
1753
- },
1982
+ "default": "true"
1983
+ }
1984
+ ],
1985
+ "superclass": {
1986
+ "name": "LitVirtualizer",
1987
+ "package": "@lit-labs/virtualizer/LitVirtualizer.js"
1988
+ }
1989
+ }
1990
+ ],
1991
+ "exports": [
1992
+ {
1993
+ "kind": "js",
1994
+ "name": "default",
1995
+ "declaration": {
1996
+ "name": "IgcVirtualizer",
1997
+ "module": "src/components/virtualizer.ts"
1998
+ }
1999
+ }
2000
+ ]
2001
+ },
2002
+ {
2003
+ "kind": "javascript-module",
2004
+ "path": "src/controllers/data-operation.ts",
2005
+ "declarations": [
2006
+ {
2007
+ "kind": "class",
2008
+ "description": "",
2009
+ "name": "DataOperationsController",
2010
+ "members": [
1754
2011
  {
1755
2012
  "kind": "field",
1756
- "name": "resizable",
1757
- "type": {
1758
- "text": "boolean"
1759
- },
1760
- "privacy": "public",
1761
- "default": "false",
1762
- "description": "Indicates whether the column is resizable.",
1763
- "attribute": "resizable"
2013
+ "name": "sorting",
2014
+ "privacy": "protected",
2015
+ "default": "new SortDataOperation<T>()"
1764
2016
  },
1765
2017
  {
1766
2018
  "kind": "field",
1767
- "name": "sortable",
1768
- "type": {
1769
- "text": "boolean"
1770
- },
1771
- "privacy": "public",
1772
- "default": "false",
1773
- "description": "Indicates whether the column is sortable.",
1774
- "attribute": "sortable"
2019
+ "name": "filtering",
2020
+ "privacy": "protected",
2021
+ "default": "new FilterDataOperation<T>()"
1775
2022
  },
1776
2023
  {
1777
- "kind": "field",
1778
- "name": "sortingCaseSensitive",
1779
- "type": {
1780
- "text": "boolean"
1781
- },
1782
- "privacy": "public",
1783
- "default": "false",
1784
- "description": "Whether sort operations will be case sensitive.",
1785
- "attribute": "sorting-case-sensitive"
2024
+ "kind": "method",
2025
+ "name": "hostConnected",
2026
+ "privacy": "public"
1786
2027
  },
1787
2028
  {
1788
2029
  "kind": "field",
1789
- "name": "sortConfiguration",
1790
- "type": {
1791
- "text": "ColumnSortConfiguration<T> | undefined"
1792
- },
1793
- "privacy": "public",
1794
- "description": "Sort configuration for the column (e.g., custom comparer)."
2030
+ "name": "hasCustomSort",
2031
+ "privacy": "protected",
2032
+ "readonly": true
1795
2033
  },
1796
2034
  {
1797
2035
  "kind": "field",
1798
- "name": "filterable",
1799
- "type": {
1800
- "text": "boolean"
1801
- },
1802
- "privacy": "public",
1803
- "default": "false",
1804
- "description": "Indicates whether the column is filterable.",
1805
- "attribute": "filterable"
2036
+ "name": "hasCustomFilter",
2037
+ "privacy": "protected",
2038
+ "readonly": true
1806
2039
  },
1807
2040
  {
1808
2041
  "kind": "field",
1809
- "name": "filteringCaseSensitive",
1810
- "type": {
1811
- "text": "boolean"
1812
- },
1813
- "privacy": "public",
1814
- "default": "false",
1815
- "description": "Whether filter operations will be case sensitive.",
1816
- "attribute": "filtering-case-sensitive"
2042
+ "name": "customFilter",
2043
+ "privacy": "protected",
2044
+ "readonly": true
1817
2045
  },
1818
2046
  {
1819
2047
  "kind": "field",
1820
- "name": "headerTemplate",
1821
- "type": {
1822
- "text": "(params: IgcHeaderContext<T>) => unknown | undefined"
1823
- },
1824
- "privacy": "public",
1825
- "description": "Custom header template for the column."
2048
+ "name": "customSort",
2049
+ "privacy": "protected",
2050
+ "readonly": true
1826
2051
  },
1827
2052
  {
1828
- "kind": "field",
1829
- "name": "cellTemplate",
1830
- "type": {
1831
- "text": "(params: IgcCellContext<T>) => unknown | undefined"
1832
- },
2053
+ "kind": "method",
2054
+ "name": "apply",
1833
2055
  "privacy": "public",
1834
- "description": "Custom cell template for the column."
2056
+ "parameters": [
2057
+ {
2058
+ "name": "data",
2059
+ "type": {
2060
+ "text": "T[]"
2061
+ }
2062
+ },
2063
+ {
2064
+ "name": "state",
2065
+ "type": {
2066
+ "text": "StateController<T>"
2067
+ }
2068
+ }
2069
+ ]
1835
2070
  }
1836
- ],
1837
- "attributes": [
1838
- {
1839
- "name": "field",
1840
- "type": {
1841
- "text": "Keys<T>"
1842
- },
1843
- "description": "The field from the data for this column.",
1844
- "fieldName": "field"
1845
- },
1846
- {
1847
- "name": "data-type",
1848
- "type": {
1849
- "text": "'number' | 'string' | 'boolean' | undefined"
1850
- },
1851
- "default": "'string'",
1852
- "description": "The data type of the column's values.",
1853
- "fieldName": "dataType"
1854
- },
1855
- {
1856
- "name": "header",
1857
- "type": {
1858
- "text": "string | undefined"
1859
- },
1860
- "description": "The header text of the column.",
1861
- "fieldName": "header"
1862
- },
1863
- {
1864
- "name": "width",
1865
- "type": {
1866
- "text": "string | undefined"
1867
- },
1868
- "description": "The width of the column.",
1869
- "fieldName": "width"
1870
- },
1871
- {
1872
- "name": "hidden",
1873
- "type": {
1874
- "text": "boolean"
1875
- },
1876
- "default": "false",
1877
- "description": "Indicates whether the column is hidden.",
1878
- "fieldName": "hidden"
1879
- },
2071
+ ]
2072
+ },
2073
+ {
2074
+ "kind": "function",
2075
+ "name": "createDataOperationsController",
2076
+ "return": {
2077
+ "type": {
2078
+ "text": "DataOperationsController<T>"
2079
+ }
2080
+ },
2081
+ "parameters": [
1880
2082
  {
1881
- "name": "resizable",
2083
+ "name": "host",
1882
2084
  "type": {
1883
- "text": "boolean"
1884
- },
1885
- "default": "false",
1886
- "description": "Indicates whether the column is resizable.",
1887
- "fieldName": "resizable"
1888
- },
1889
- {
1890
- "name": "sortable",
1891
- "type": {
1892
- "text": "boolean"
1893
- },
1894
- "default": "false",
1895
- "description": "Indicates whether the column is sortable.",
1896
- "fieldName": "sortable"
1897
- },
1898
- {
1899
- "name": "sorting-case-sensitive",
1900
- "type": {
1901
- "text": "boolean"
1902
- },
1903
- "default": "false",
1904
- "description": "Whether sort operations will be case sensitive.",
1905
- "fieldName": "sortingCaseSensitive"
1906
- },
1907
- {
1908
- "name": "filterable",
1909
- "type": {
1910
- "text": "boolean"
1911
- },
1912
- "default": "false",
1913
- "description": "Indicates whether the column is filterable.",
1914
- "fieldName": "filterable"
1915
- },
1916
- {
1917
- "name": "filtering-case-sensitive",
1918
- "type": {
1919
- "text": "boolean"
1920
- },
1921
- "default": "false",
1922
- "description": "Whether filter operations will be case sensitive.",
1923
- "fieldName": "filteringCaseSensitive"
2085
+ "text": "GridHost<T>"
2086
+ }
1924
2087
  }
1925
- ],
1926
- "superclass": {
1927
- "name": "LitElement",
1928
- "package": "lit"
1929
- },
1930
- "tagName": "igc-grid-lite-column",
1931
- "customElement": true
2088
+ ]
1932
2089
  }
1933
2090
  ],
1934
2091
  "exports": [
1935
2092
  {
1936
2093
  "kind": "js",
1937
- "name": "IgcGridLiteColumn",
2094
+ "name": "createDataOperationsController",
1938
2095
  "declaration": {
1939
- "name": "IgcGridLiteColumn",
1940
- "module": "src/components/column.ts"
1941
- }
1942
- }
1943
- ]
1944
- },
1945
- {
1946
- "kind": "javascript-module",
1947
- "path": "src/components/filter-row.ts",
1948
- "declarations": [
1949
- {
1950
- "kind": "class",
1951
- "description": "",
1952
- "name": "IgcFilterRow",
1953
- "members": [
1954
- {
1955
- "kind": "field",
1956
- "name": "tagName",
1957
- "privacy": "public",
1958
- "static": true,
1959
- "readonly": true
1960
- },
1961
- {
1962
- "kind": "method",
1963
- "name": "register",
1964
- "privacy": "public",
1965
- "static": true
1966
- },
1967
- {
1968
- "kind": "field",
1969
- "name": "state",
1970
- "type": {
1971
- "text": "StateController<T>"
1972
- },
1973
- "privacy": "public"
1974
- },
1975
- {
1976
- "kind": "field",
1977
- "name": "isNumeric",
1978
- "privacy": "protected",
1979
- "readonly": true
1980
- },
1981
- {
1982
- "kind": "field",
1983
- "name": "filterController",
1984
- "privacy": "protected",
1985
- "readonly": true
1986
- },
1987
- {
1988
- "kind": "field",
1989
- "name": "condition",
1990
- "privacy": "protected",
1991
- "readonly": true
1992
- },
1993
- {
1994
- "kind": "field",
1995
- "name": "active",
1996
- "type": {
1997
- "text": "boolean"
1998
- },
1999
- "privacy": "public",
2000
- "default": "false"
2001
- },
2002
- {
2003
- "kind": "field",
2004
- "name": "input",
2005
- "type": {
2006
- "text": "IgcInputComponent"
2007
- },
2008
- "privacy": "public"
2009
- },
2010
- {
2011
- "kind": "field",
2012
- "name": "conditionElement",
2013
- "type": {
2014
- "text": "IgcIconComponent"
2015
- },
2016
- "privacy": "public"
2017
- },
2018
- {
2019
- "kind": "field",
2020
- "name": "dropdown",
2021
- "type": {
2022
- "text": "IgcDropdownComponent"
2023
- },
2024
- "privacy": "public"
2025
- },
2026
- {
2027
- "kind": "field",
2028
- "name": "column",
2029
- "type": {
2030
- "text": "ColumnConfiguration<T>"
2031
- },
2032
- "privacy": "public",
2033
- "default": "DEFAULT_COLUMN_CONFIG"
2034
- },
2035
- {
2036
- "kind": "field",
2037
- "name": "expression",
2038
- "type": {
2039
- "text": "FilterExpression<T>"
2040
- },
2041
- "privacy": "public"
2042
- },
2043
- {
2044
- "kind": "method",
2045
- "name": "#setDefaultExpression",
2046
- "privacy": "private"
2047
- },
2048
- {
2049
- "kind": "method",
2050
- "name": "#removeExpression",
2051
- "privacy": "private",
2052
- "parameters": [
2053
- {
2054
- "name": "expression",
2055
- "type": {
2056
- "text": "FilterExpression<T>"
2057
- }
2058
- }
2059
- ]
2060
- },
2061
- {
2062
- "kind": "method",
2063
- "name": "#show",
2064
- "privacy": "private"
2065
- },
2066
- {
2067
- "kind": "method",
2068
- "name": "#handleConditionChanged",
2069
- "privacy": "private",
2070
- "parameters": [
2071
- {
2072
- "name": "event",
2073
- "type": {
2074
- "text": "CustomEvent<IgcDropdownItemComponent>"
2075
- }
2076
- }
2077
- ]
2078
- },
2079
- {
2080
- "kind": "method",
2081
- "name": "#handleInput",
2082
- "privacy": "private",
2083
- "parameters": [
2084
- {
2085
- "name": "event",
2086
- "type": {
2087
- "text": "CustomEvent<string>"
2088
- }
2089
- }
2090
- ]
2091
- },
2092
- {
2093
- "kind": "method",
2094
- "name": "#handleKeydown",
2095
- "privacy": "private",
2096
- "parameters": [
2097
- {
2098
- "name": "event",
2099
- "type": {
2100
- "text": "KeyboardEvent"
2101
- }
2102
- }
2103
- ]
2104
- },
2105
- {
2106
- "kind": "method",
2107
- "name": "#handleResetClick",
2108
- "privacy": "private"
2109
- },
2110
- {
2111
- "kind": "method",
2112
- "name": "#openDropdownList",
2113
- "privacy": "private"
2114
- },
2115
- {
2116
- "kind": "method",
2117
- "name": "activeChanged",
2118
- "privacy": "protected"
2119
- },
2120
- {
2121
- "kind": "method",
2122
- "name": "#chipCriteriaFor",
2123
- "privacy": "private",
2124
- "parameters": [
2125
- {
2126
- "name": "expression",
2127
- "type": {
2128
- "text": "FilterExpression<T>"
2129
- }
2130
- }
2131
- ]
2132
- },
2133
- {
2134
- "kind": "method",
2135
- "name": "#chipSelectFor",
2136
- "privacy": "private",
2137
- "parameters": [
2138
- {
2139
- "name": "expression",
2140
- "type": {
2141
- "text": "FilterExpression<T>"
2142
- }
2143
- }
2144
- ]
2145
- },
2146
- {
2147
- "kind": "method",
2148
- "name": "#chipRemoveFor",
2149
- "privacy": "private",
2150
- "parameters": [
2151
- {
2152
- "name": "expression",
2153
- "type": {
2154
- "text": "FilterExpression<T>"
2155
- }
2156
- }
2157
- ]
2158
- },
2159
- {
2160
- "kind": "method",
2161
- "name": "renderCriteriaButton",
2162
- "privacy": "protected",
2163
- "parameters": [
2164
- {
2165
- "name": "expr",
2166
- "type": {
2167
- "text": "FilterExpression<T>"
2168
- }
2169
- },
2170
- {
2171
- "name": "index",
2172
- "type": {
2173
- "text": "number"
2174
- }
2175
- }
2176
- ]
2177
- },
2178
- {
2179
- "kind": "method",
2180
- "name": "renderExpressionChip",
2181
- "privacy": "protected",
2182
- "parameters": [
2183
- {
2184
- "name": "props",
2185
- "type": {
2186
- "text": "ExpressionChipProps<T>"
2187
- }
2188
- }
2189
- ]
2190
- },
2191
- {
2192
- "kind": "method",
2193
- "name": "renderActiveChips",
2194
- "privacy": "protected"
2195
- },
2196
- {
2197
- "kind": "method",
2198
- "name": "renderFilterActions",
2199
- "privacy": "protected"
2200
- },
2201
- {
2202
- "kind": "method",
2203
- "name": "renderDropdown",
2204
- "privacy": "protected"
2205
- },
2206
- {
2207
- "kind": "method",
2208
- "name": "renderDropdownTarget",
2209
- "privacy": "protected"
2210
- },
2211
- {
2212
- "kind": "method",
2213
- "name": "renderInputArea",
2214
- "privacy": "protected"
2215
- },
2216
- {
2217
- "kind": "method",
2218
- "name": "renderActiveState",
2219
- "privacy": "protected"
2220
- },
2221
- {
2222
- "kind": "method",
2223
- "name": "renderInactiveChips",
2224
- "privacy": "protected",
2225
- "parameters": [
2226
- {
2227
- "name": "column",
2228
- "type": {
2229
- "text": "ColumnConfiguration<T>"
2230
- }
2231
- },
2232
- {
2233
- "name": "state",
2234
- "type": {
2235
- "text": "FilterExpressionTree<T>"
2236
- }
2237
- }
2238
- ]
2239
- },
2240
- {
2241
- "kind": "method",
2242
- "name": "renderFilterState",
2243
- "privacy": "protected",
2244
- "parameters": [
2245
- {
2246
- "name": "column",
2247
- "type": {
2248
- "text": "ColumnConfiguration<T>"
2249
- }
2250
- }
2251
- ]
2252
- },
2253
- {
2254
- "kind": "method",
2255
- "name": "renderInactiveState",
2256
- "privacy": "protected"
2257
- }
2258
- ],
2259
- "superclass": {
2260
- "name": "LitElement",
2261
- "package": "lit"
2262
- },
2263
- "customElement": true
2264
- }
2265
- ],
2266
- "exports": [
2096
+ "name": "createDataOperationsController",
2097
+ "module": "src/controllers/data-operation.ts"
2098
+ }
2099
+ },
2267
2100
  {
2268
2101
  "kind": "js",
2269
- "name": "default",
2102
+ "name": "DataOperationsController",
2270
2103
  "declaration": {
2271
- "name": "IgcFilterRow",
2272
- "module": "src/components/filter-row.ts"
2104
+ "name": "DataOperationsController",
2105
+ "module": "src/controllers/data-operation.ts"
2273
2106
  }
2274
2107
  }
2275
2108
  ]
2276
2109
  },
2277
2110
  {
2278
2111
  "kind": "javascript-module",
2279
- "path": "src/components/grid.ts",
2112
+ "path": "src/controllers/dom.ts",
2280
2113
  "declarations": [
2281
2114
  {
2282
2115
  "kind": "class",
2283
- "description": "IgcGridLite is a web component for displaying data in a tabular format quick and easy.\n\nOut of the box it provides row virtualization, sort and filter operations (client and server side),\nthe ability to template cells and headers and column hiding.",
2284
- "name": "IgcGridLite",
2116
+ "description": "",
2117
+ "name": "GridDOMController",
2285
2118
  "members": [
2286
2119
  {
2287
2120
  "kind": "field",
2288
- "name": "tagName",
2289
- "privacy": "public",
2290
- "static": true,
2291
- "readonly": true
2292
- },
2293
- {
2294
- "kind": "method",
2295
- "name": "register",
2296
- "privacy": "public",
2297
- "static": true,
2298
- "return": {
2299
- "type": {
2300
- "text": "void"
2301
- }
2302
- }
2303
- },
2304
- {
2305
- "kind": "field",
2306
- "name": "_stateController",
2307
- "privacy": "protected",
2308
- "readonly": true
2309
- },
2310
- {
2311
- "kind": "field",
2312
- "name": "_domController",
2313
- "privacy": "protected",
2314
- "readonly": true
2315
- },
2316
- {
2317
- "kind": "field",
2318
- "name": "_dataController",
2319
- "privacy": "protected",
2320
- "readonly": true
2321
- },
2322
- {
2323
- "kind": "field",
2324
- "name": "_stateProvider",
2121
+ "name": "_host",
2122
+ "type": {
2123
+ "text": "GridHost<T>"
2124
+ },
2325
2125
  "privacy": "protected",
2326
2126
  "readonly": true,
2327
- "default": "new ContextProvider(this, { context: GRID_STATE_CONTEXT, initialValue: this._stateController, })"
2127
+ "default": "host"
2328
2128
  },
2329
2129
  {
2330
2130
  "kind": "field",
2331
- "name": "_columnUpdateProvider",
2131
+ "name": "_state",
2132
+ "type": {
2133
+ "text": "StateController<T>"
2134
+ },
2332
2135
  "privacy": "protected",
2333
2136
  "readonly": true,
2334
- "default": "new ContextProvider(this, { context: COLUMN_UPDATE_CONTEXT, initialValue: ((config: ColumnConfiguration<T>) => { this._updateConfiguration(config); }) as any, })"
2137
+ "default": "state"
2335
2138
  },
2336
2139
  {
2337
2140
  "kind": "field",
2338
- "name": "_initialSortExpressions",
2141
+ "name": "columnSizes",
2339
2142
  "type": {
2340
- "text": "SortingExpression<T>[]"
2143
+ "text": "StyleInfo"
2341
2144
  },
2342
- "privacy": "private",
2343
- "default": "[]"
2145
+ "privacy": "public",
2146
+ "default": "{}"
2344
2147
  },
2345
2148
  {
2346
- "kind": "field",
2347
- "name": "_initialFilterExpressions",
2348
- "type": {
2349
- "text": "FilterExpression<T>[]"
2350
- },
2351
- "privacy": "private",
2352
- "default": "[]"
2149
+ "kind": "method",
2150
+ "name": "hostConnected",
2151
+ "privacy": "public",
2152
+ "return": {
2153
+ "type": {
2154
+ "text": "void"
2155
+ }
2156
+ }
2353
2157
  },
2354
2158
  {
2355
2159
  "kind": "method",
2356
- "name": "_updateObservers",
2357
- "privacy": "private",
2160
+ "name": "hostUpdate",
2161
+ "privacy": "public",
2358
2162
  "return": {
2359
2163
  "type": {
2360
2164
  "text": "void"
@@ -2363,854 +2167,1003 @@
2363
2167
  },
2364
2168
  {
2365
2169
  "kind": "method",
2366
- "name": "_updateConfiguration",
2367
- "privacy": "private",
2170
+ "name": "setScrollOffset",
2171
+ "privacy": "public",
2368
2172
  "return": {
2369
2173
  "type": {
2370
2174
  "text": "void"
2371
2175
  }
2372
- },
2373
- "parameters": [
2374
- {
2375
- "name": "config",
2376
- "type": {
2377
- "text": "ColumnConfiguration<T>"
2378
- }
2379
- }
2380
- ]
2176
+ }
2381
2177
  },
2382
2178
  {
2383
- "kind": "field",
2384
- "name": "_dataState",
2385
- "type": {
2386
- "text": "T[]"
2387
- },
2179
+ "kind": "method",
2180
+ "name": "setGridColumnSizes",
2388
2181
  "privacy": "protected",
2389
- "default": "[]"
2390
- },
2391
- {
2392
- "kind": "field",
2393
- "name": "data",
2394
- "type": {
2395
- "text": "T[]"
2396
- },
2397
- "privacy": "public",
2398
- "default": "[]",
2399
- "description": "The data source for the grid."
2182
+ "return": {
2183
+ "type": {
2184
+ "text": "void"
2185
+ }
2186
+ }
2400
2187
  },
2401
2188
  {
2402
- "kind": "field",
2403
- "name": "autoGenerate",
2404
- "type": {
2405
- "text": "boolean"
2406
- },
2189
+ "kind": "method",
2190
+ "name": "getActiveRowStyles",
2407
2191
  "privacy": "public",
2408
- "default": "false",
2409
- "description": "Whether the grid will try to \"resolve\" its column configuration based on the passed\ndata source.",
2410
- "attribute": "auto-generate"
2411
- },
2412
- {
2413
- "kind": "field",
2414
- "name": "sortingOptions",
2415
- "type": {
2416
- "text": "GridLiteSortingOptions"
2192
+ "return": {
2193
+ "type": {
2194
+ "text": "StyleInfo"
2195
+ }
2417
2196
  },
2418
- "privacy": "public",
2419
- "default": "{ mode: 'multiple', }",
2420
- "description": "Sort configuration property for the grid."
2421
- },
2197
+ "parameters": [
2198
+ {
2199
+ "name": "index",
2200
+ "type": {
2201
+ "text": "number"
2202
+ }
2203
+ }
2204
+ ]
2205
+ }
2206
+ ]
2207
+ },
2208
+ {
2209
+ "kind": "function",
2210
+ "name": "createDomController",
2211
+ "return": {
2212
+ "type": {
2213
+ "text": "GridDOMController<T>"
2214
+ }
2215
+ },
2216
+ "parameters": [
2422
2217
  {
2423
- "kind": "field",
2424
- "name": "dataPipelineConfiguration",
2218
+ "name": "host",
2425
2219
  "type": {
2426
- "text": "DataPipelineConfiguration<T>"
2427
- },
2428
- "privacy": "public",
2429
- "description": "Configuration object which controls remote data operations for the grid."
2220
+ "text": "GridHost<T>"
2221
+ }
2430
2222
  },
2431
2223
  {
2432
- "kind": "field",
2433
- "name": "sortingExpressions",
2434
- "privacy": "public",
2435
- "description": "Get the sort state for the grid.",
2224
+ "name": "state",
2436
2225
  "type": {
2437
- "text": "SortingExpression<T>[]"
2226
+ "text": "StateController<T>"
2438
2227
  }
2439
- },
2228
+ }
2229
+ ]
2230
+ }
2231
+ ],
2232
+ "exports": [
2233
+ {
2234
+ "kind": "js",
2235
+ "name": "createDomController",
2236
+ "declaration": {
2237
+ "name": "createDomController",
2238
+ "module": "src/controllers/dom.ts"
2239
+ }
2240
+ },
2241
+ {
2242
+ "kind": "js",
2243
+ "name": "GridDOMController",
2244
+ "declaration": {
2245
+ "name": "GridDOMController",
2246
+ "module": "src/controllers/dom.ts"
2247
+ }
2248
+ }
2249
+ ]
2250
+ },
2251
+ {
2252
+ "kind": "javascript-module",
2253
+ "path": "src/controllers/filter.ts",
2254
+ "declarations": [
2255
+ {
2256
+ "kind": "class",
2257
+ "description": "",
2258
+ "name": "FilterController",
2259
+ "members": [
2440
2260
  {
2441
2261
  "kind": "field",
2442
- "name": "filterExpressions",
2443
- "privacy": "public",
2444
- "description": "Get the filter state for the grid.",
2262
+ "name": "_stateController",
2445
2263
  "type": {
2446
- "text": "FilterExpression<T>[]"
2447
- }
2264
+ "text": "StateController<T>"
2265
+ },
2266
+ "privacy": "private",
2267
+ "readonly": true,
2268
+ "default": "state"
2448
2269
  },
2449
2270
  {
2450
2271
  "kind": "field",
2451
- "name": "columns",
2272
+ "name": "state",
2452
2273
  "type": {
2453
- "text": "ColumnConfiguration<T>[]"
2274
+ "text": "FilterState<T>"
2454
2275
  },
2455
2276
  "privacy": "public",
2456
- "readonly": true
2277
+ "default": "new FilterState()"
2457
2278
  },
2458
2279
  {
2459
2280
  "kind": "field",
2460
- "name": "rows",
2281
+ "name": "host",
2461
2282
  "privacy": "public",
2462
- "description": "Returns the collection of rendered row elements in the grid.",
2463
2283
  "readonly": true
2464
2284
  },
2465
2285
  {
2466
2286
  "kind": "field",
2467
- "name": "dataView",
2287
+ "name": "filterRow",
2468
2288
  "type": {
2469
- "text": "ReadonlyArray<T>"
2289
+ "text": "IgcFilterRow<T> | null"
2470
2290
  },
2471
2291
  "privacy": "public",
2472
- "description": "Returns the state of the data source after sort/filter operations\nhave been applied.",
2473
2292
  "readonly": true
2474
2293
  },
2475
2294
  {
2476
2295
  "kind": "field",
2477
- "name": "totalItems",
2478
- "type": {
2479
- "text": "number"
2480
- },
2481
- "privacy": "public",
2482
- "description": "The total number of items in the IgcGridLite.dataView collection.",
2296
+ "name": "#virtualizer",
2297
+ "privacy": "private",
2483
2298
  "readonly": true
2484
2299
  },
2485
2300
  {
2486
2301
  "kind": "method",
2487
- "name": "dataChanged",
2488
- "privacy": "protected"
2489
- },
2490
- {
2491
- "kind": "method",
2492
- "name": "pipeline",
2493
- "privacy": "protected"
2302
+ "name": "#emitFilteringEvent",
2303
+ "privacy": "private",
2304
+ "parameters": [
2305
+ {
2306
+ "name": "expression",
2307
+ "type": {
2308
+ "text": "FilterExpression<T>"
2309
+ }
2310
+ },
2311
+ {
2312
+ "name": "type",
2313
+ "type": {
2314
+ "text": "'add' | 'modify' | 'remove'"
2315
+ }
2316
+ }
2317
+ ]
2494
2318
  },
2495
2319
  {
2496
2320
  "kind": "method",
2497
- "name": "_hasAssignedColumns",
2321
+ "name": "#emitFilteredEvent",
2498
2322
  "privacy": "private",
2499
- "return": {
2500
- "type": {
2501
- "text": "boolean"
2323
+ "parameters": [
2324
+ {
2325
+ "name": "detail",
2326
+ "optional": true,
2327
+ "type": {
2328
+ "text": "IgcFilteredEvent<T>"
2329
+ }
2502
2330
  }
2503
- }
2331
+ ]
2504
2332
  },
2505
2333
  {
2506
2334
  "kind": "method",
2507
- "name": "_handleSlotChange",
2335
+ "name": "#filter",
2508
2336
  "privacy": "private",
2509
- "return": {
2510
- "type": {
2511
- "text": "void"
2512
- }
2513
- },
2514
2337
  "parameters": [
2515
2338
  {
2516
- "name": "event",
2339
+ "name": "expression",
2517
2340
  "type": {
2518
- "text": "Event"
2341
+ "text": "FilterExpression<T> | FilterExpression<T>[]"
2519
2342
  }
2520
2343
  }
2521
2344
  ]
2522
2345
  },
2523
2346
  {
2524
2347
  "kind": "method",
2525
- "name": "filter",
2348
+ "name": "hostConnected",
2349
+ "privacy": "public"
2350
+ },
2351
+ {
2352
+ "kind": "method",
2353
+ "name": "hostUpdate",
2526
2354
  "privacy": "public",
2527
2355
  "return": {
2528
2356
  "type": {
2529
2357
  "text": "void"
2530
2358
  }
2531
- },
2359
+ }
2360
+ },
2361
+ {
2362
+ "kind": "method",
2363
+ "name": "get",
2364
+ "privacy": "public",
2532
2365
  "parameters": [
2533
2366
  {
2534
- "name": "config",
2367
+ "name": "key",
2535
2368
  "type": {
2536
- "text": "FilterExpression<T> | FilterExpression<T>[]"
2369
+ "text": "Keys<T>"
2537
2370
  }
2538
2371
  }
2539
- ],
2540
- "description": "Performs a filter operation in the grid based on the passed expression(s)."
2372
+ ]
2541
2373
  },
2542
2374
  {
2543
2375
  "kind": "method",
2544
- "name": "sort",
2376
+ "name": "reset",
2545
2377
  "privacy": "public",
2546
2378
  "parameters": [
2547
2379
  {
2548
- "name": "expressions",
2380
+ "name": "key",
2381
+ "optional": true,
2549
2382
  "type": {
2550
- "text": "SortingExpression<T> | SortingExpression<T>[]"
2383
+ "text": "Keys<T>"
2551
2384
  }
2552
2385
  }
2553
- ],
2554
- "description": "Performs a sort operation in the grid based on the passed expression(s)."
2386
+ ]
2555
2387
  },
2556
2388
  {
2557
2389
  "kind": "method",
2558
- "name": "clearSort",
2390
+ "name": "setActiveColumn",
2559
2391
  "privacy": "public",
2560
- "return": {
2561
- "type": {
2562
- "text": "void"
2563
- }
2564
- },
2565
2392
  "parameters": [
2566
2393
  {
2567
- "name": "key",
2394
+ "name": "column",
2568
2395
  "optional": true,
2569
2396
  "type": {
2570
- "text": "Keys<T>"
2397
+ "text": "ColumnConfiguration<T>"
2571
2398
  }
2572
2399
  }
2573
- ],
2574
- "description": "Resets the current sort state of the control."
2400
+ ]
2575
2401
  },
2576
2402
  {
2577
2403
  "kind": "method",
2578
- "name": "clearFilter",
2404
+ "name": "getDefaultExpression",
2579
2405
  "privacy": "public",
2580
- "return": {
2581
- "type": {
2582
- "text": "void"
2406
+ "parameters": [
2407
+ {
2408
+ "name": "column",
2409
+ "type": {
2410
+ "text": "ColumnConfiguration<T>"
2411
+ }
2583
2412
  }
2584
- },
2413
+ ]
2414
+ },
2415
+ {
2416
+ "kind": "method",
2417
+ "name": "removeAllExpressions",
2418
+ "privacy": "public",
2585
2419
  "parameters": [
2586
2420
  {
2587
2421
  "name": "key",
2588
- "optional": true,
2589
2422
  "type": {
2590
2423
  "text": "Keys<T>"
2591
2424
  }
2592
2425
  }
2593
- ],
2594
- "description": "Resets the current filter state of the control."
2426
+ ]
2595
2427
  },
2596
2428
  {
2597
2429
  "kind": "method",
2598
- "name": "navigateTo",
2430
+ "name": "removeExpression",
2599
2431
  "privacy": "public",
2600
2432
  "parameters": [
2601
2433
  {
2602
- "name": "row",
2434
+ "name": "expression",
2603
2435
  "type": {
2604
- "text": "number"
2605
- },
2606
- "description": "The row index to navigate to"
2607
- },
2436
+ "text": "FilterExpression<T>"
2437
+ }
2438
+ }
2439
+ ]
2440
+ },
2441
+ {
2442
+ "kind": "method",
2443
+ "name": "filterWithEvent",
2444
+ "privacy": "public",
2445
+ "parameters": [
2608
2446
  {
2609
- "name": "column",
2610
- "optional": true,
2447
+ "name": "expression",
2611
2448
  "type": {
2612
- "text": "Keys<T>"
2613
- },
2614
- "description": "The column field to navigate to, if any"
2449
+ "text": "FilterExpression<T>"
2450
+ }
2615
2451
  },
2616
2452
  {
2617
- "name": "activate",
2618
- "default": "false",
2619
- "description": "Optionally also activate the navigated cell"
2453
+ "name": "type",
2454
+ "type": {
2455
+ "text": "'add' | 'modify' | 'remove'"
2456
+ }
2620
2457
  }
2621
- ],
2622
- "description": "Navigates to a position in the grid based on provided row index and column field."
2458
+ ]
2623
2459
  },
2624
2460
  {
2625
2461
  "kind": "method",
2626
- "name": "getColumn",
2462
+ "name": "filter",
2627
2463
  "privacy": "public",
2628
- "return": {
2629
- "type": {
2630
- "text": "ColumnConfiguration<T> | undefined"
2464
+ "parameters": [
2465
+ {
2466
+ "name": "expression",
2467
+ "type": {
2468
+ "text": "FilterExpression<T> | FilterExpression<T>[]"
2469
+ }
2631
2470
  }
2632
- },
2471
+ ]
2472
+ }
2473
+ ]
2474
+ }
2475
+ ],
2476
+ "exports": [
2477
+ {
2478
+ "kind": "js",
2479
+ "name": "FilterController",
2480
+ "declaration": {
2481
+ "name": "FilterController",
2482
+ "module": "src/controllers/filter.ts"
2483
+ }
2484
+ }
2485
+ ]
2486
+ },
2487
+ {
2488
+ "kind": "javascript-module",
2489
+ "path": "src/controllers/navigation.ts",
2490
+ "declarations": [
2491
+ {
2492
+ "kind": "class",
2493
+ "description": "",
2494
+ "name": "NavigationController",
2495
+ "members": [
2496
+ {
2497
+ "kind": "field",
2498
+ "name": "handlers",
2499
+ "privacy": "protected",
2500
+ "default": "new Map( Object.entries({ ArrowDown: this.arrowDown, ArrowUp: this.arrowUp, ArrowLeft: this.arrowLeft, ArrowRight: this.arrowRight, Home: this.home, End: this.end, }) )"
2501
+ },
2502
+ {
2503
+ "kind": "field",
2504
+ "name": "_virtualizer",
2505
+ "privacy": "protected",
2506
+ "readonly": true
2507
+ },
2508
+ {
2509
+ "kind": "field",
2510
+ "name": "_navigationState",
2511
+ "privacy": "protected",
2512
+ "default": "NAVIGATION_STATE"
2513
+ },
2514
+ {
2515
+ "kind": "field",
2516
+ "name": "_active",
2517
+ "privacy": "protected",
2518
+ "default": "SENTINEL_NODE"
2519
+ },
2520
+ {
2521
+ "kind": "field",
2522
+ "name": "nextNode",
2523
+ "privacy": "protected",
2524
+ "readonly": true
2525
+ },
2526
+ {
2527
+ "kind": "field",
2528
+ "name": "_columns",
2529
+ "privacy": "protected",
2530
+ "readonly": true
2531
+ },
2532
+ {
2533
+ "kind": "field",
2534
+ "name": "_firstColumn",
2535
+ "privacy": "protected",
2536
+ "readonly": true
2537
+ },
2538
+ {
2539
+ "kind": "method",
2540
+ "name": "getPreviousColumn",
2541
+ "privacy": "protected",
2633
2542
  "parameters": [
2634
2543
  {
2635
- "name": "id",
2544
+ "name": "key",
2636
2545
  "type": {
2637
- "text": "Keys<T> | number"
2546
+ "text": "Keys<T>"
2638
2547
  }
2639
2548
  }
2640
- ],
2641
- "description": "Returns a ColumnConfiguration for a given column."
2549
+ ]
2642
2550
  },
2643
2551
  {
2644
2552
  "kind": "method",
2645
- "name": "_bodyClickHandler",
2553
+ "name": "getNextColumn",
2646
2554
  "privacy": "protected",
2647
- "return": {
2648
- "type": {
2649
- "text": "void"
2555
+ "parameters": [
2556
+ {
2557
+ "name": "key",
2558
+ "type": {
2559
+ "text": "Keys<T>"
2560
+ }
2650
2561
  }
2651
- },
2562
+ ]
2563
+ },
2564
+ {
2565
+ "kind": "method",
2566
+ "name": "queryRowByIndex",
2567
+ "privacy": "protected",
2652
2568
  "parameters": [
2653
2569
  {
2654
- "name": "event",
2570
+ "name": "index",
2655
2571
  "type": {
2656
- "text": "PointerEvent"
2572
+ "text": "number"
2657
2573
  }
2658
2574
  }
2659
2575
  ]
2660
2576
  },
2661
2577
  {
2662
2578
  "kind": "method",
2663
- "name": "_bodyKeydownHandler",
2579
+ "name": "scrollToCell",
2664
2580
  "privacy": "protected",
2665
- "return": {
2666
- "type": {
2667
- "text": "void"
2668
- }
2669
- },
2670
2581
  "parameters": [
2671
2582
  {
2672
- "name": "event",
2583
+ "name": "node",
2673
2584
  "type": {
2674
- "text": "KeyboardEvent"
2585
+ "text": "ActiveNode<T>"
2675
2586
  }
2676
2587
  }
2677
2588
  ]
2678
2589
  },
2679
2590
  {
2680
2591
  "kind": "field",
2681
- "name": "_renderRow",
2592
+ "name": "active",
2682
2593
  "type": {
2683
- "text": "RenderItemFunction<T>"
2594
+ "text": "ActiveNode<T>"
2684
2595
  },
2596
+ "privacy": "public"
2597
+ },
2598
+ {
2599
+ "kind": "method",
2600
+ "name": "home",
2685
2601
  "privacy": "protected"
2686
2602
  },
2687
2603
  {
2688
2604
  "kind": "method",
2689
- "name": "_renderHeaderRow",
2605
+ "name": "end",
2690
2606
  "privacy": "protected"
2691
2607
  },
2692
2608
  {
2693
2609
  "kind": "method",
2694
- "name": "_renderBody",
2610
+ "name": "arrowDown",
2695
2611
  "privacy": "protected"
2696
2612
  },
2697
2613
  {
2698
2614
  "kind": "method",
2699
- "name": "_renderFilterRow",
2615
+ "name": "arrowUp",
2700
2616
  "privacy": "protected"
2701
2617
  },
2702
2618
  {
2703
2619
  "kind": "method",
2704
- "name": "addEventListener",
2705
- "privacy": "public",
2706
- "return": {
2707
- "type": {
2708
- "text": "void"
2709
- }
2710
- },
2711
- "parameters": [
2712
- {
2713
- "name": "type",
2714
- "type": {
2715
- "text": "K"
2716
- }
2717
- },
2718
- {
2719
- "name": "listener",
2720
- "type": {
2721
- "text": "(this: HTMLElement, ev: M[K]) => any"
2722
- }
2723
- },
2724
- {
2725
- "name": "options",
2726
- "optional": true,
2727
- "type": {
2728
- "text": "boolean | AddEventListenerOptions"
2729
- }
2730
- }
2731
- ],
2732
- "inheritedFrom": {
2733
- "name": "EventEmitterBase",
2734
- "module": "src/internal/mixins/event-emitter.ts"
2735
- }
2620
+ "name": "arrowLeft",
2621
+ "privacy": "protected"
2736
2622
  },
2737
2623
  {
2738
2624
  "kind": "method",
2739
- "name": "removeEventListener",
2625
+ "name": "arrowRight",
2626
+ "privacy": "protected"
2627
+ },
2628
+ {
2629
+ "kind": "method",
2630
+ "name": "hostDisconnected",
2631
+ "privacy": "public"
2632
+ },
2633
+ {
2634
+ "kind": "method",
2635
+ "name": "navigate",
2740
2636
  "privacy": "public",
2741
- "return": {
2742
- "type": {
2743
- "text": "void"
2744
- }
2745
- },
2746
2637
  "parameters": [
2747
2638
  {
2748
- "name": "type",
2749
- "type": {
2750
- "text": "K"
2751
- }
2752
- },
2753
- {
2754
- "name": "listener",
2755
- "type": {
2756
- "text": "(this: HTMLElement, ev: M[K]) => any"
2757
- }
2758
- },
2759
- {
2760
- "name": "options",
2761
- "optional": true,
2639
+ "name": "event",
2762
2640
  "type": {
2763
- "text": "boolean | EventListenerOptions"
2641
+ "text": "KeyboardEvent"
2764
2642
  }
2765
2643
  }
2766
- ],
2767
- "inheritedFrom": {
2768
- "name": "EventEmitterBase",
2769
- "module": "src/internal/mixins/event-emitter.ts"
2770
- }
2644
+ ]
2771
2645
  },
2772
2646
  {
2773
2647
  "kind": "method",
2774
- "name": "emitEvent",
2648
+ "name": "navigateTo",
2775
2649
  "privacy": "public",
2776
- "return": {
2777
- "type": {
2778
- "text": "boolean"
2779
- }
2780
- },
2781
2650
  "parameters": [
2782
2651
  {
2783
- "name": "type",
2652
+ "name": "row",
2784
2653
  "type": {
2785
- "text": "K"
2654
+ "text": "number"
2786
2655
  }
2787
2656
  },
2788
2657
  {
2789
- "name": "eventInitDict",
2658
+ "name": "column",
2790
2659
  "optional": true,
2791
2660
  "type": {
2792
- "text": "CustomEventInit<D>"
2661
+ "text": "Keys<T>"
2793
2662
  }
2663
+ },
2664
+ {
2665
+ "name": "activate",
2666
+ "default": "false"
2794
2667
  }
2795
- ],
2796
- "inheritedFrom": {
2797
- "name": "EventEmitterBase",
2798
- "module": "src/internal/mixins/event-emitter.ts"
2799
- }
2800
- }
2801
- ],
2802
- "events": [
2803
- {
2804
- "description": "Emitted when sorting is initiated through the UI.",
2805
- "name": "sorting"
2806
- },
2807
- {
2808
- "description": "Emitted when a sort operation initiated through the UI has completed.",
2809
- "name": "sorted"
2810
- },
2811
- {
2812
- "description": "Emitted when filtering is initiated through the UI.",
2813
- "name": "filtering"
2814
- },
2815
- {
2816
- "description": "Emitted when a filter operation initiated through the UI has completed.",
2817
- "name": "filtered"
2818
- },
2819
- {
2820
- "type": {
2821
- "text": "CustomEvent"
2822
- },
2823
- "inheritedFrom": {
2824
- "name": "EventEmitterBase",
2825
- "module": "src/internal/mixins/event-emitter.ts"
2826
- }
2827
- }
2828
- ],
2829
- "attributes": [
2830
- {
2831
- "name": "auto-generate",
2832
- "type": {
2833
- "text": "boolean"
2834
- },
2835
- "default": "false",
2836
- "description": "Whether the grid will try to \"resolve\" its column configuration based on the passed\ndata source.",
2837
- "fieldName": "autoGenerate",
2838
- "attribute": "auto-generate"
2668
+ ]
2839
2669
  }
2840
- ],
2841
- "superclass": {
2842
- "name": "EventEmitterBase",
2843
- "module": "/src/internal/mixins/event-emitter.js"
2844
- },
2845
- "tagName": "igc-grid-lite",
2846
- "customElement": true
2670
+ ]
2847
2671
  }
2848
2672
  ],
2849
2673
  "exports": [
2850
2674
  {
2851
2675
  "kind": "js",
2852
- "name": "IgcGridLite",
2676
+ "name": "NavigationController",
2853
2677
  "declaration": {
2854
- "name": "IgcGridLite",
2855
- "module": "src/components/grid.ts"
2678
+ "name": "NavigationController",
2679
+ "module": "src/controllers/navigation.ts"
2856
2680
  }
2857
2681
  }
2858
2682
  ]
2859
2683
  },
2860
2684
  {
2861
2685
  "kind": "javascript-module",
2862
- "path": "src/components/header-row.ts",
2686
+ "path": "src/controllers/resize.ts",
2863
2687
  "declarations": [
2864
2688
  {
2865
2689
  "kind": "class",
2866
2690
  "description": "",
2867
- "name": "IgcGridLiteHeaderRow",
2691
+ "name": "ResizeController",
2868
2692
  "members": [
2869
2693
  {
2870
2694
  "kind": "field",
2871
- "name": "tagName",
2872
- "privacy": "public",
2873
- "static": true,
2874
- "readonly": true
2875
- },
2876
- {
2877
- "kind": "method",
2878
- "name": "register",
2695
+ "name": "indicatorActive",
2696
+ "type": {
2697
+ "text": "boolean"
2698
+ },
2879
2699
  "privacy": "public",
2880
- "static": true,
2881
- "return": {
2882
- "type": {
2883
- "text": "void"
2884
- }
2885
- }
2700
+ "default": "false"
2886
2701
  },
2887
2702
  {
2888
2703
  "kind": "field",
2889
- "name": "_state",
2704
+ "name": "indicatorOffset",
2890
2705
  "type": {
2891
- "text": "StateController<T> | undefined"
2706
+ "text": "number"
2892
2707
  },
2708
+ "privacy": "public",
2709
+ "default": "0"
2710
+ },
2711
+ {
2712
+ "kind": "method",
2713
+ "name": "#maxSize",
2893
2714
  "privacy": "private",
2894
- "readonly": true
2715
+ "parameters": [
2716
+ {
2717
+ "name": "key",
2718
+ "type": {
2719
+ "text": "Keys<T>"
2720
+ }
2721
+ },
2722
+ {
2723
+ "name": "headerWidth",
2724
+ "type": {
2725
+ "text": "number"
2726
+ }
2727
+ }
2728
+ ]
2895
2729
  },
2896
2730
  {
2897
- "kind": "field",
2898
- "name": "columns",
2899
- "type": {
2900
- "text": "ColumnConfiguration<T>[]"
2901
- },
2731
+ "kind": "method",
2732
+ "name": "start",
2902
2733
  "privacy": "public",
2903
- "default": "[]"
2734
+ "parameters": [
2735
+ {
2736
+ "name": "header",
2737
+ "type": {
2738
+ "text": "IgcGridLiteHeader<T>"
2739
+ },
2740
+ "description": "the"
2741
+ }
2742
+ ],
2743
+ "description": "Begins resizing a column by showing and positioning the resize indicator in relation to the column."
2904
2744
  },
2905
2745
  {
2906
- "kind": "field",
2907
- "name": "headers",
2908
- "type": {
2909
- "text": "IgcGridLiteHeader<T>[]"
2910
- },
2746
+ "kind": "method",
2747
+ "name": "stop",
2911
2748
  "privacy": "public",
2912
- "readonly": true
2749
+ "description": "Stops and resets the resizing state."
2913
2750
  },
2914
2751
  {
2915
2752
  "kind": "method",
2916
- "name": "_setActiveFilterColumn",
2917
- "privacy": "private",
2918
- "return": {
2919
- "type": {
2920
- "text": "void"
2753
+ "name": "resize",
2754
+ "privacy": "public",
2755
+ "parameters": [
2756
+ {
2757
+ "name": "column",
2758
+ "type": {
2759
+ "text": "ColumnConfiguration<T>"
2760
+ }
2761
+ },
2762
+ {
2763
+ "name": "width",
2764
+ "type": {
2765
+ "text": "number"
2766
+ }
2767
+ },
2768
+ {
2769
+ "name": "sizerOffset",
2770
+ "optional": true,
2771
+ "type": {
2772
+ "text": "number"
2773
+ }
2921
2774
  }
2922
- },
2775
+ ]
2776
+ },
2777
+ {
2778
+ "kind": "method",
2779
+ "name": "autosize",
2780
+ "privacy": "public",
2923
2781
  "parameters": [
2924
2782
  {
2925
- "name": "event",
2783
+ "name": "column",
2926
2784
  "type": {
2927
- "text": "PointerEvent"
2785
+ "text": "ColumnConfiguration<T>"
2786
+ }
2787
+ },
2788
+ {
2789
+ "name": "header",
2790
+ "type": {
2791
+ "text": "IgcGridLiteHeader<T>"
2928
2792
  }
2929
2793
  }
2930
2794
  ]
2795
+ },
2796
+ {
2797
+ "kind": "method",
2798
+ "name": "hostConnected",
2799
+ "privacy": "public"
2800
+ },
2801
+ {
2802
+ "kind": "method",
2803
+ "name": "renderIndicator",
2804
+ "privacy": "public",
2805
+ "description": "Renders the resize indicator in the grid."
2931
2806
  }
2932
- ],
2933
- "superclass": {
2934
- "name": "LitElement",
2935
- "package": "lit"
2936
- },
2937
- "customElement": true
2807
+ ]
2938
2808
  }
2939
2809
  ],
2940
2810
  "exports": [
2941
2811
  {
2942
2812
  "kind": "js",
2943
- "name": "default",
2813
+ "name": "ResizeController",
2944
2814
  "declaration": {
2945
- "name": "IgcGridLiteHeaderRow",
2946
- "module": "src/components/header-row.ts"
2815
+ "name": "ResizeController",
2816
+ "module": "src/controllers/resize.ts"
2947
2817
  }
2948
2818
  }
2949
2819
  ]
2950
2820
  },
2951
2821
  {
2952
2822
  "kind": "javascript-module",
2953
- "path": "src/components/header.ts",
2823
+ "path": "src/controllers/sort.ts",
2954
2824
  "declarations": [
2955
2825
  {
2956
2826
  "kind": "class",
2957
2827
  "description": "",
2958
- "name": "IgcGridLiteHeader",
2828
+ "name": "SortController",
2959
2829
  "members": [
2960
2830
  {
2961
2831
  "kind": "field",
2962
- "name": "tagName",
2963
- "privacy": "public",
2964
- "static": true,
2965
- "readonly": true
2966
- },
2967
- {
2968
- "kind": "method",
2969
- "name": "register",
2832
+ "name": "state",
2833
+ "type": {
2834
+ "text": "SortState<T>"
2835
+ },
2970
2836
  "privacy": "public",
2971
- "static": true,
2972
- "return": {
2973
- "type": {
2974
- "text": "void"
2975
- }
2976
- }
2837
+ "default": "new Map()"
2977
2838
  },
2978
2839
  {
2979
2840
  "kind": "field",
2980
- "name": "context",
2981
- "type": {
2982
- "text": "IgcHeaderContext<T>"
2983
- },
2984
- "privacy": "protected",
2841
+ "name": "#isMultipleSort",
2842
+ "privacy": "private",
2985
2843
  "readonly": true
2986
2844
  },
2987
2845
  {
2988
2846
  "kind": "field",
2989
- "name": "isSortable",
2990
- "privacy": "protected",
2847
+ "name": "#isTriStateSort",
2848
+ "privacy": "private",
2991
2849
  "readonly": true
2992
2850
  },
2993
2851
  {
2994
- "kind": "field",
2995
- "name": "resizeController",
2996
- "privacy": "protected",
2997
- "readonly": true
2852
+ "kind": "method",
2853
+ "name": "#resolveSortOptions",
2854
+ "privacy": "private",
2855
+ "parameters": [
2856
+ {
2857
+ "name": "column",
2858
+ "optional": true,
2859
+ "type": {
2860
+ "text": "ColumnConfiguration<T>"
2861
+ }
2862
+ }
2863
+ ]
2998
2864
  },
2999
2865
  {
3000
- "kind": "field",
3001
- "name": "state",
3002
- "type": {
3003
- "text": "StateController<T>"
3004
- },
3005
- "privacy": "public"
2866
+ "kind": "method",
2867
+ "name": "#createDefaultExpression",
2868
+ "privacy": "private",
2869
+ "parameters": [
2870
+ {
2871
+ "name": "key",
2872
+ "type": {
2873
+ "text": "Keys<T>"
2874
+ }
2875
+ }
2876
+ ]
3006
2877
  },
3007
2878
  {
3008
- "kind": "field",
3009
- "name": "column",
3010
- "type": {
3011
- "text": "ColumnConfiguration<T>"
2879
+ "kind": "method",
2880
+ "name": "#orderBy",
2881
+ "privacy": "private",
2882
+ "return": {
2883
+ "type": {
2884
+ "text": "SortingDirection"
2885
+ }
3012
2886
  },
3013
- "privacy": "public"
2887
+ "parameters": [
2888
+ {
2889
+ "name": "dir",
2890
+ "optional": true,
2891
+ "type": {
2892
+ "text": "SortingDirection"
2893
+ }
2894
+ }
2895
+ ]
3014
2896
  },
3015
2897
  {
3016
2898
  "kind": "method",
3017
- "name": "#addResizeEventHandlers",
3018
- "privacy": "private"
2899
+ "name": "#emitSortingEvent",
2900
+ "privacy": "private",
2901
+ "parameters": [
2902
+ {
2903
+ "name": "detail",
2904
+ "type": {
2905
+ "text": "SortingExpression<T>"
2906
+ }
2907
+ }
2908
+ ]
3019
2909
  },
3020
2910
  {
3021
2911
  "kind": "method",
3022
- "name": "#handleClick",
2912
+ "name": "#emitSortedEvent",
3023
2913
  "privacy": "private",
3024
2914
  "parameters": [
3025
2915
  {
3026
- "name": "e",
2916
+ "name": "detail",
3027
2917
  "type": {
3028
- "text": "Event"
2918
+ "text": "SortingExpression<T>"
3029
2919
  }
3030
2920
  }
3031
2921
  ]
3032
2922
  },
3033
2923
  {
3034
- "kind": "field",
3035
- "name": "#handleResize",
3036
- "privacy": "private"
2924
+ "kind": "method",
2925
+ "name": "#setExpression",
2926
+ "privacy": "private",
2927
+ "parameters": [
2928
+ {
2929
+ "name": "expression",
2930
+ "type": {
2931
+ "text": "SortingExpression<T>"
2932
+ }
2933
+ }
2934
+ ]
3037
2935
  },
3038
2936
  {
3039
2937
  "kind": "method",
3040
- "name": "#handleResizeStart",
3041
- "privacy": "private",
2938
+ "name": "sortFromHeaderClick",
2939
+ "privacy": "public",
3042
2940
  "parameters": [
3043
2941
  {
3044
- "name": "ev",
2942
+ "name": "column",
3045
2943
  "type": {
3046
- "text": "PointerEvent"
2944
+ "text": "ColumnConfiguration<T>"
3047
2945
  }
3048
2946
  }
3049
2947
  ]
3050
2948
  },
3051
2949
  {
3052
- "kind": "field",
3053
- "name": "#handlePointerLost",
3054
- "privacy": "private"
2950
+ "kind": "method",
2951
+ "name": "prepareExpression",
2952
+ "privacy": "public",
2953
+ "return": {
2954
+ "type": {
2955
+ "text": "SortingExpression<T>"
2956
+ }
2957
+ },
2958
+ "parameters": [
2959
+ {
2960
+ "name": "column",
2961
+ "type": {
2962
+ "text": "ColumnConfiguration<T>"
2963
+ }
2964
+ }
2965
+ ]
3055
2966
  },
3056
2967
  {
3057
- "kind": "field",
3058
- "name": "#handleAutosize",
3059
- "privacy": "private"
2968
+ "kind": "method",
2969
+ "name": "reset",
2970
+ "privacy": "public",
2971
+ "parameters": [
2972
+ {
2973
+ "name": "key",
2974
+ "optional": true,
2975
+ "type": {
2976
+ "text": "Keys<T>"
2977
+ }
2978
+ }
2979
+ ]
3060
2980
  },
3061
2981
  {
3062
2982
  "kind": "method",
3063
- "name": "renderSortPart",
3064
- "privacy": "protected"
2983
+ "name": "_sort",
2984
+ "privacy": "protected",
2985
+ "parameters": [
2986
+ {
2987
+ "name": "expressions",
2988
+ "type": {
2989
+ "text": "SortingExpression<T> | SortingExpression<T>[]"
2990
+ }
2991
+ }
2992
+ ]
3065
2993
  },
3066
2994
  {
3067
2995
  "kind": "method",
3068
- "name": "renderContentPart",
3069
- "privacy": "protected"
2996
+ "name": "sort",
2997
+ "privacy": "public",
2998
+ "parameters": [
2999
+ {
3000
+ "name": "expressions",
3001
+ "type": {
3002
+ "text": "SortingExpression<T> | SortingExpression<T>[]"
3003
+ }
3004
+ }
3005
+ ]
3070
3006
  },
3071
3007
  {
3072
3008
  "kind": "method",
3073
- "name": "renderResizePart",
3074
- "privacy": "protected"
3009
+ "name": "hostConnected",
3010
+ "privacy": "public"
3075
3011
  }
3076
- ],
3077
- "superclass": {
3078
- "name": "LitElement",
3079
- "package": "lit"
3080
- },
3081
- "customElement": true
3012
+ ]
3082
3013
  }
3083
3014
  ],
3084
3015
  "exports": [
3085
3016
  {
3086
3017
  "kind": "js",
3087
- "name": "default",
3018
+ "name": "SortController",
3088
3019
  "declaration": {
3089
- "name": "IgcGridLiteHeader",
3090
- "module": "src/components/header.ts"
3020
+ "name": "SortController",
3021
+ "module": "src/controllers/sort.ts"
3091
3022
  }
3092
3023
  }
3093
3024
  ]
3094
3025
  },
3095
3026
  {
3096
3027
  "kind": "javascript-module",
3097
- "path": "src/components/row.ts",
3028
+ "path": "src/controllers/state.ts",
3098
3029
  "declarations": [
3099
3030
  {
3100
3031
  "kind": "class",
3101
- "description": "Component representing the DOM row in the IgcGridLite.",
3102
- "name": "IgcGridLiteRow",
3032
+ "description": "",
3033
+ "name": "StateController",
3103
3034
  "members": [
3104
3035
  {
3105
3036
  "kind": "field",
3106
- "name": "tagName",
3037
+ "name": "_columns",
3038
+ "type": {
3039
+ "text": "ColumnConfiguration<T>[]"
3040
+ },
3041
+ "privacy": "private",
3042
+ "default": "[]"
3043
+ },
3044
+ {
3045
+ "kind": "field",
3046
+ "name": "_observersCallback",
3047
+ "type": {
3048
+ "text": "() => void"
3049
+ },
3050
+ "privacy": "private",
3051
+ "readonly": true,
3052
+ "default": "observersCallback"
3053
+ },
3054
+ {
3055
+ "kind": "field",
3056
+ "name": "host",
3057
+ "type": {
3058
+ "text": "GridHost<T>"
3059
+ },
3107
3060
  "privacy": "public",
3108
- "static": true,
3109
- "readonly": true
3061
+ "readonly": true,
3062
+ "description": "The grid host element.",
3063
+ "default": "host"
3110
3064
  },
3111
3065
  {
3112
- "kind": "method",
3113
- "name": "register",
3066
+ "kind": "field",
3067
+ "name": "sorting",
3068
+ "type": {
3069
+ "text": "SortController<T>"
3070
+ },
3114
3071
  "privacy": "public",
3115
- "static": true,
3116
- "return": {
3117
- "type": {
3118
- "text": "void"
3119
- }
3120
- }
3072
+ "readonly": true,
3073
+ "default": "new SortController(this.host)"
3121
3074
  },
3122
3075
  {
3123
3076
  "kind": "field",
3124
- "name": "data",
3077
+ "name": "filtering",
3125
3078
  "type": {
3126
- "text": "T | undefined"
3079
+ "text": "FilterController<T>"
3127
3080
  },
3128
- "privacy": "public"
3081
+ "privacy": "public",
3082
+ "readonly": true,
3083
+ "default": "new FilterController(this)"
3084
+ },
3085
+ {
3086
+ "kind": "field",
3087
+ "name": "navigation",
3088
+ "type": {
3089
+ "text": "NavigationController<T>"
3090
+ },
3091
+ "privacy": "public",
3092
+ "readonly": true,
3093
+ "default": "new NavigationController(this)"
3094
+ },
3095
+ {
3096
+ "kind": "field",
3097
+ "name": "resizing",
3098
+ "type": {
3099
+ "text": "ResizeController<T>"
3100
+ },
3101
+ "privacy": "public",
3102
+ "readonly": true,
3103
+ "default": "new ResizeController(this.host)"
3129
3104
  },
3130
3105
  {
3131
3106
  "kind": "field",
3132
3107
  "name": "columns",
3133
3108
  "type": {
3134
- "text": "Array<ColumnConfiguration<T>>"
3109
+ "text": "ColumnConfiguration<T>[]"
3135
3110
  },
3136
3111
  "privacy": "public",
3137
- "default": "[]"
3112
+ "readonly": true
3138
3113
  },
3139
3114
  {
3140
3115
  "kind": "field",
3141
- "name": "activeNode",
3116
+ "name": "headerRow",
3142
3117
  "type": {
3143
- "text": "ActiveNode<T> | undefined"
3118
+ "text": "IgcGridLiteHeaderRow<T> | null"
3144
3119
  },
3145
- "privacy": "public"
3120
+ "privacy": "public",
3121
+ "description": "Returns the header row element of the grid.",
3122
+ "readonly": true
3146
3123
  },
3147
3124
  {
3148
3125
  "kind": "field",
3149
- "name": "index",
3126
+ "name": "filterRow",
3150
3127
  "type": {
3151
- "text": "number"
3128
+ "text": "IgcFilterRow<T> | null"
3152
3129
  },
3153
3130
  "privacy": "public",
3154
- "default": "-1"
3131
+ "description": "Returns the filter row element of the grid.",
3132
+ "readonly": true
3155
3133
  },
3156
3134
  {
3157
3135
  "kind": "field",
3158
- "name": "cells",
3136
+ "name": "rows",
3159
3137
  "type": {
3160
- "text": "IgcGridLiteCell<T>[]"
3138
+ "text": "IgcGridLiteRow<T>[]"
3161
3139
  },
3162
3140
  "privacy": "public",
3141
+ "description": "Returns the data row elements of the grid.",
3163
3142
  "readonly": true
3164
- }
3165
- ],
3166
- "superclass": {
3167
- "name": "LitElement",
3168
- "package": "lit"
3169
- },
3170
- "customElement": true
3171
- }
3172
- ],
3173
- "exports": [
3174
- {
3175
- "kind": "js",
3176
- "name": "default",
3177
- "declaration": {
3178
- "name": "IgcGridLiteRow",
3179
- "module": "src/components/row.ts"
3180
- }
3181
- }
3182
- ]
3183
- },
3184
- {
3185
- "kind": "javascript-module",
3186
- "path": "src/components/virtualizer.ts",
3187
- "declarations": [
3188
- {
3189
- "kind": "class",
3190
- "description": "",
3191
- "name": "IgcVirtualizer",
3192
- "members": [
3143
+ },
3193
3144
  {
3194
3145
  "kind": "field",
3195
- "name": "tagName",
3146
+ "name": "virtualizer",
3147
+ "type": {
3148
+ "text": "IgcVirtualizer | null"
3149
+ },
3196
3150
  "privacy": "public",
3197
- "static": true,
3151
+ "description": "Returns the virtualizer element of the grid.",
3198
3152
  "readonly": true
3199
3153
  },
3200
3154
  {
3201
3155
  "kind": "field",
3202
- "name": "layout",
3156
+ "name": "active",
3203
3157
  "type": {
3204
- "text": "LitVirtualizer['layout']"
3158
+ "text": "ActiveNode<T>"
3205
3159
  },
3206
3160
  "privacy": "public",
3207
- "default": "{ type: IgcFlowLayout, }"
3161
+ "description": "Sets the currently active node in the grid."
3208
3162
  },
3209
3163
  {
3210
3164
  "kind": "method",
3211
- "name": "register",
3165
+ "name": "hostUpdate",
3212
3166
  "privacy": "public",
3213
- "static": true,
3214
3167
  "return": {
3215
3168
  "type": {
3216
3169
  "text": "void"
@@ -3218,28 +3171,92 @@
3218
3171
  }
3219
3172
  },
3220
3173
  {
3221
- "kind": "field",
3222
- "name": "scroller",
3223
- "type": {
3224
- "text": "boolean"
3174
+ "kind": "method",
3175
+ "name": "setColumnConfiguration",
3176
+ "privacy": "public",
3177
+ "return": {
3178
+ "type": {
3179
+ "text": "void"
3180
+ }
3225
3181
  },
3182
+ "parameters": [
3183
+ {
3184
+ "name": "columns",
3185
+ "type": {
3186
+ "text": "ColumnConfiguration<T>[]"
3187
+ }
3188
+ }
3189
+ ]
3190
+ },
3191
+ {
3192
+ "kind": "method",
3193
+ "name": "setAutoColumnConfiguration",
3226
3194
  "privacy": "public",
3227
- "default": "true"
3195
+ "return": {
3196
+ "type": {
3197
+ "text": "void"
3198
+ }
3199
+ }
3200
+ },
3201
+ {
3202
+ "kind": "method",
3203
+ "name": "updateColumnsConfiguration",
3204
+ "privacy": "public",
3205
+ "return": {
3206
+ "type": {
3207
+ "text": "void"
3208
+ }
3209
+ },
3210
+ "parameters": [
3211
+ {
3212
+ "name": "config",
3213
+ "type": {
3214
+ "text": "ColumnConfiguration<T>[]"
3215
+ }
3216
+ }
3217
+ ]
3228
3218
  }
3229
- ],
3230
- "superclass": {
3231
- "name": "LitVirtualizer",
3232
- "package": "@lit-labs/virtualizer/LitVirtualizer.js"
3233
- }
3219
+ ]
3220
+ },
3221
+ {
3222
+ "kind": "function",
3223
+ "name": "createStateController",
3224
+ "return": {
3225
+ "type": {
3226
+ "text": "StateController<T>"
3227
+ }
3228
+ },
3229
+ "parameters": [
3230
+ {
3231
+ "name": "host",
3232
+ "type": {
3233
+ "text": "GridHost<T>"
3234
+ }
3235
+ },
3236
+ {
3237
+ "name": "observersCallback",
3238
+ "type": {
3239
+ "text": "() => void"
3240
+ }
3241
+ }
3242
+ ]
3234
3243
  }
3235
3244
  ],
3236
3245
  "exports": [
3237
3246
  {
3238
3247
  "kind": "js",
3239
- "name": "default",
3248
+ "name": "createStateController",
3240
3249
  "declaration": {
3241
- "name": "IgcVirtualizer",
3242
- "module": "src/components/virtualizer.ts"
3250
+ "name": "createStateController",
3251
+ "module": "src/controllers/state.ts"
3252
+ }
3253
+ },
3254
+ {
3255
+ "kind": "js",
3256
+ "name": "StateController",
3257
+ "declaration": {
3258
+ "name": "StateController",
3259
+ "module": "src/controllers/state.ts"
3243
3260
  }
3244
3261
  }
3245
3262
  ]