react-graph-grid 0.1.4 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/README.md +4 -0
  2. package/{src/css → dist}/default.css +2 -1
  3. package/dist/index.esm.js +21 -0
  4. package/dist/index.js +56 -0
  5. package/dist/index10.esm.js +3844 -0
  6. package/dist/index10.js +3848 -0
  7. package/dist/index11.esm.js +4121 -0
  8. package/dist/index11.js +4125 -0
  9. package/dist/index12.esm.js +5238 -0
  10. package/dist/index12.js +5242 -0
  11. package/dist/index13.esm.js +5466 -0
  12. package/dist/index13.js +5470 -0
  13. package/dist/index14.esm.js +22 -0
  14. package/dist/index14.js +26 -0
  15. package/dist/index15.esm.js +402 -0
  16. package/dist/index15.js +403 -0
  17. package/dist/index16.esm.js +507 -0
  18. package/dist/index16.js +507 -0
  19. package/dist/index17.esm.js +256 -0
  20. package/dist/index17.js +257 -0
  21. package/dist/index18.esm.js +261 -0
  22. package/dist/index18.js +263 -0
  23. package/dist/index19.esm.js +623 -0
  24. package/dist/index19.js +624 -0
  25. package/dist/index2.esm.js +6 -0
  26. package/dist/index2.js +2 -0
  27. package/dist/index20.esm.js +219 -0
  28. package/dist/index20.js +220 -0
  29. package/dist/index21.esm.js +298 -0
  30. package/dist/index21.js +299 -0
  31. package/dist/index22.esm.js +662 -0
  32. package/dist/index22.js +663 -0
  33. package/dist/index23.esm.js +340 -0
  34. package/dist/index23.js +341 -0
  35. package/dist/index24.esm.js +269 -0
  36. package/dist/index24.js +270 -0
  37. package/dist/index25.esm.js +600 -0
  38. package/dist/index25.js +601 -0
  39. package/dist/index26.esm.js +245 -0
  40. package/dist/index26.js +246 -0
  41. package/dist/index27.esm.js +136 -0
  42. package/dist/index27.js +137 -0
  43. package/dist/index28.esm.js +70 -0
  44. package/dist/index28.js +70 -0
  45. package/dist/index29.esm.js +748 -0
  46. package/dist/index29.js +748 -0
  47. package/dist/index30.esm.js +363 -0
  48. package/dist/index30.js +363 -0
  49. package/dist/index4.esm.js +27 -0
  50. package/dist/index4.js +27 -0
  51. package/dist/index5.esm.js +35 -0
  52. package/dist/index5.js +39 -0
  53. package/dist/index6.esm.js +200 -0
  54. package/dist/index6.js +204 -0
  55. package/dist/index7.esm.js +9 -0
  56. package/dist/index7.js +13 -0
  57. package/dist/index8.esm.js +65 -0
  58. package/dist/index8.js +68 -0
  59. package/dist/index9.esm.js +102 -0
  60. package/dist/index9.js +103 -0
  61. package/package.json +6 -3
  62. package/eslint.config.js +0 -29
  63. package/index.html +0 -13
  64. package/index.js +0 -19
  65. package/npm.aps +0 -0
  66. package/src/Base.jsx +0 -81
  67. package/src/Card.jsx +0 -333
  68. package/src/Dropdown.jsx +0 -339
  69. package/src/FieldEdit.jsx +0 -376
  70. package/src/Graph.jsx +0 -482
  71. package/src/Grid.jsx +0 -887
  72. package/src/GridCD.jsx +0 -180
  73. package/src/GridDB.jsx +0 -897
  74. package/src/GridFE.jsx +0 -753
  75. package/src/GridFL.jsx +0 -468
  76. package/src/GridGR.jsx +0 -311
  77. package/src/GridPK.jsx +0 -414
  78. package/src/Modal.jsx +0 -511
  79. package/src/Overlay.jsx +0 -140
  80. package/src/Tests/DebugApp.jsx +0 -334
  81. package/src/Tests/TestData.jsx +0 -251
  82. package/src/Themes/DefaultGridTheme.jsx +0 -36
  83. package/src/Themes/Images.jsx +0 -438
  84. package/src/Themes/Translate.jsx +0 -76
  85. package/src/css/default_.css +0 -945
  86. package/src/main.jsx +0 -10
  87. package/vite.config.js +0 -14
  88. /package/{public → dist}/IM.svg +0 -0
@@ -0,0 +1,748 @@
1
+ var TestData = class TestData {
2
+ getFamily(e) {
3
+ e = e || { grid: {} };
4
+ const family = [
5
+ {
6
+ Id: 1,
7
+ ParentId: [3, 4],
8
+ Name: "Mikle",
9
+ SecondName: "Razumtsev",
10
+ Date: "26/01/1979",
11
+ Comment: "Good boy",
12
+ Hometown: "Voronezh",
13
+ HometownId: 1
14
+ },
15
+ {
16
+ Id: 2,
17
+ ParentId: [0],
18
+ Name: "Nataly",
19
+ SecondName: "Sche..",
20
+ Date: "14/01/1999",
21
+ Comment: "Good girl",
22
+ Hometown: "Hanty-Mansiysk",
23
+ HometownId: 12
24
+ },
25
+ {
26
+ Id: 3,
27
+ ParentId: [11, 23],
28
+ Name: "Lyuda",
29
+ SecondName: "Razumtseva",
30
+ Date: "03/07/1953",
31
+ Comment: "Mommy",
32
+ Hometown: "Novosibirsk",
33
+ HometownId: 8
34
+ },
35
+ {
36
+ Id: 4,
37
+ ParentId: [5, 22],
38
+ Name: "Borya",
39
+ SecondName: "Razumtsev",
40
+ Date: "14/06/1953",
41
+ Comment: "Papa",
42
+ Hometown: "Grafskaya",
43
+ HometownId: 2
44
+ },
45
+ {
46
+ Id: 5,
47
+ ParentId: [0],
48
+ Name: "Nina",
49
+ SecondName: "Razumtseva",
50
+ Date: "17/06/1917",
51
+ Comment: "Babushka",
52
+ Hometown: "Ustyuzhna",
53
+ HometownId: 9
54
+ },
55
+ {
56
+ Id: 6,
57
+ ParentId: [3, 4],
58
+ Name: "Evgenia",
59
+ SecondName: "Batyreva",
60
+ Date: "31/10/1974",
61
+ Comment: "Sister",
62
+ Hometown: "Voronezh",
63
+ HometownId: 1
64
+ },
65
+ {
66
+ Id: 7,
67
+ ParentId: [9, 10],
68
+ Name: "Ilia",
69
+ SecondName: "Razumtsev",
70
+ Date: "16/09/1980",
71
+ Comment: "Brother 1",
72
+ Hometown: "Pskov",
73
+ HometownId: 4
74
+ },
75
+ {
76
+ Id: 8,
77
+ ParentId: [9, 10],
78
+ Name: "Mitka",
79
+ SecondName: "Razumtsev",
80
+ Date: "04/07/1989",
81
+ Comment: "Brother 2",
82
+ Hometown: "Pskov",
83
+ HometownId: 4
84
+ },
85
+ {
86
+ Id: 9,
87
+ ParentId: [5, 22],
88
+ Name: "Kolya",
89
+ SecondName: "Razumtsev",
90
+ Date: "02/11/1954",
91
+ Comment: "Dadya",
92
+ Hometown: "Grafskaya",
93
+ HometownId: 2
94
+ },
95
+ {
96
+ Id: 10,
97
+ ParentId: [11, 23],
98
+ Name: "Lara",
99
+ SecondName: "Razumtseva",
100
+ Date: "31/01/1961",
101
+ Comment: "Tetya",
102
+ Hometown: "Elista",
103
+ HometownId: 5
104
+ },
105
+ {
106
+ Id: 11,
107
+ ParentId: [0],
108
+ Name: "Valya",
109
+ SecondName: "Mukhlynova",
110
+ Date: "23/06/1933",
111
+ Comment: "Babushka",
112
+ Hometown: "Elista",
113
+ HometownId: 5
114
+ },
115
+ {
116
+ Id: 12,
117
+ ParentId: [6, 32],
118
+ Name: "Dashka",
119
+ SecondName: "Markelova",
120
+ Date: "08/06/2000",
121
+ Comment: "Plemyannica 1",
122
+ Hometown: "Elista",
123
+ HometownId: 5
124
+ },
125
+ {
126
+ Id: 13,
127
+ ParentId: [6, 32],
128
+ Name: "Katka",
129
+ SecondName: "Markelova",
130
+ Date: "27/05/2003",
131
+ Comment: "Plemyannica 2",
132
+ Hometown: "Elista",
133
+ HometownId: 5
134
+ },
135
+ {
136
+ Id: 14,
137
+ ParentId: [6, 31],
138
+ Name: "Tuyanka",
139
+ SecondName: "Batyreva",
140
+ Date: "15/11/2010",
141
+ Comment: "Plemyannica 3",
142
+ Hometown: "Elista",
143
+ HometownId: 5
144
+ },
145
+ {
146
+ Id: 15,
147
+ ParentId: [0],
148
+ Name: "Shura",
149
+ SecondName: "Pelushskaya",
150
+ Date: "22/04/1919",
151
+ Comment: "Dv. Babushka",
152
+ Hometown: "Ustyuzhna",
153
+ HometownId: 9
154
+ },
155
+ {
156
+ Id: 16,
157
+ ParentId: [15],
158
+ Name: "Ira",
159
+ SecondName: "Pelushskaya",
160
+ Date: "11/06/1947",
161
+ Comment: "Dv. Tetya",
162
+ Hometown: "Pskov",
163
+ HometownId: 4
164
+ },
165
+ {
166
+ Id: 17,
167
+ ParentId: [11, 23],
168
+ Name: "Sveta",
169
+ SecondName: "Dolginova",
170
+ Date: "10/11/1954",
171
+ Comment: "Tetya",
172
+ Hometown: "Novosibirsk",
173
+ HometownId: 8
174
+ },
175
+ {
176
+ Id: 18,
177
+ ParentId: [11, 23],
178
+ Name: "Rita",
179
+ SecondName: "Dolginova",
180
+ Date: "23/10/1956",
181
+ Comment: "Tetya",
182
+ Hometown: "Novosibirsk",
183
+ HometownId: 8
184
+ },
185
+ {
186
+ Id: 19,
187
+ ParentId: [11, 23],
188
+ Name: "Nadya",
189
+ SecondName: "Shaula",
190
+ Date: "11/11/1958",
191
+ Comment: "Tetya",
192
+ Hometown: "Novosibirsk",
193
+ HometownId: 8
194
+ },
195
+ {
196
+ Id: 20,
197
+ ParentId: [11, 23],
198
+ Name: "Vitia",
199
+ SecondName: "Dolginov",
200
+ Date: "11/11/1958",
201
+ Comment: "Dadya",
202
+ Hometown: "Novosibirsk",
203
+ HometownId: 8
204
+ },
205
+ {
206
+ Id: 21,
207
+ ParentId: [11, 23],
208
+ Name: "Tanya",
209
+ SecondName: "Dolginova",
210
+ Date: "07/01/1963",
211
+ Comment: "Tetya",
212
+ Hometown: "Elista",
213
+ HometownId: 5
214
+ },
215
+ {
216
+ Id: 22,
217
+ ParentId: [0],
218
+ Name: "Misha",
219
+ SecondName: "Razumtsev",
220
+ Date: "05/11/1918",
221
+ Comment: "Ded",
222
+ Hometown: "Grafskaya",
223
+ HometownId: 2
224
+ },
225
+ {
226
+ Id: 23,
227
+ ParentId: [0],
228
+ Name: "Zambo",
229
+ SecondName: "Dolginov",
230
+ Date: "24/04/1926",
231
+ Comment: "Ded 2",
232
+ Hometown: "Elista",
233
+ HometownId: 5
234
+ },
235
+ {
236
+ Id: 24,
237
+ ParentId: [18, 34],
238
+ Name: "Alina",
239
+ SecondName: "Ushakova",
240
+ Date: "??/??/????",
241
+ Comment: "Dv. Sister",
242
+ Hometown: "Elista",
243
+ HometownId: 5
244
+ },
245
+ {
246
+ Id: 25,
247
+ ParentId: [19, 33],
248
+ Name: "Igor",
249
+ SecondName: "Shaula",
250
+ Date: "??/??/????",
251
+ Comment: "Dv. Brother",
252
+ Hometown: "Energodar",
253
+ HometownId: 14
254
+ },
255
+ {
256
+ Id: 26,
257
+ ParentId: [19, 33],
258
+ Name: "Dima",
259
+ SecondName: "Shaula",
260
+ Date: "??/??/????",
261
+ Comment: "Dv. Brother",
262
+ Hometown: "Energodar",
263
+ HometownId: 14
264
+ },
265
+ {
266
+ Id: 27,
267
+ ParentId: [20, 35],
268
+ Name: "Olga",
269
+ SecondName: "Dolginova",
270
+ Date: "??/??/????",
271
+ Comment: "Dv. Sister",
272
+ Hometown: "Elista",
273
+ HometownId: 5
274
+ },
275
+ {
276
+ Id: 28,
277
+ ParentId: [20, 35],
278
+ Name: "Venia",
279
+ SecondName: "Dolginov",
280
+ Date: "??/??/????",
281
+ Comment: "Dv. Brother",
282
+ Hometown: "Elista",
283
+ HometownId: 5
284
+ },
285
+ {
286
+ Id: 29,
287
+ ParentId: [20, 36],
288
+ Name: "Oleg",
289
+ SecondName: "Dolginov",
290
+ Date: "10/11/????",
291
+ Comment: "Dv. Brother",
292
+ Hometown: "Elista",
293
+ HometownId: 5
294
+ },
295
+ {
296
+ Id: 30,
297
+ ParentId: [0],
298
+ Name: "Yura",
299
+ SecondName: "Pelushskiy",
300
+ Date: "??/??/1921",
301
+ Comment: "Dv. Ded",
302
+ Hometown: "Ustyuzhna",
303
+ HometownId: 9
304
+ },
305
+ {
306
+ Id: 31,
307
+ ParentId: [0],
308
+ Name: "Sanal",
309
+ SecondName: "Batyrev",
310
+ Date: "11/06/????",
311
+ Comment: "Muzh Sestry 3",
312
+ Hometown: "Elista",
313
+ HometownId: 5
314
+ },
315
+ {
316
+ Id: 32,
317
+ ParentId: [0],
318
+ Name: "Dima",
319
+ SecondName: "Markelov",
320
+ Date: "??/??/????",
321
+ Comment: "Muzh Sestry 2",
322
+ Hometown: "Elista",
323
+ HometownId: 5
324
+ },
325
+ {
326
+ Id: 33,
327
+ ParentId: [0],
328
+ Name: "Slava",
329
+ SecondName: "Shaula",
330
+ Date: "??/??/????",
331
+ Comment: "Muzh Teti",
332
+ Hometown: "Energodar",
333
+ HometownId: 14
334
+ },
335
+ {
336
+ Id: 34,
337
+ ParentId: [0],
338
+ Name: "Sasha",
339
+ SecondName: "Ushakov",
340
+ Date: "??/??/????",
341
+ Comment: "Muzh Teti",
342
+ Hometown: "Elista",
343
+ HometownId: 5
344
+ },
345
+ {
346
+ Id: 35,
347
+ ParentId: [0],
348
+ Name: "Toma",
349
+ SecondName: "???",
350
+ Date: "??/??/????",
351
+ Comment: "Mat Olgi i Veni",
352
+ Hometown: "Elista",
353
+ HometownId: 5
354
+ },
355
+ {
356
+ Id: 36,
357
+ ParentId: [0],
358
+ Name: "Ira",
359
+ SecondName: "???",
360
+ Date: "??/??/????",
361
+ Comment: "Mat Olega",
362
+ Hometown: "Elista",
363
+ HometownId: 5
364
+ }
365
+ ];
366
+ if (e.autocompleteColumn) {
367
+ e.grid._autocomplDict = {};
368
+ e.grid._autocomplCount = 0;
369
+ }
370
+ let rows = [];
371
+ for (let row of family) {
372
+ if (!this.passRow(e.grid, row, e.autocompleteColumn)) continue;
373
+ if (e.autocompleteColumn) {
374
+ e.grid._autocomplCount++;
375
+ if (e.grid._autocomplCount > 10) break;
376
+ let cellValue = row[e.autocompleteColumn.name];
377
+ e.grid._autocomplDict[String(cellValue).toLowerCase()] = 1;
378
+ rows.push(cellValue);
379
+ } else rows.push(row);
380
+ }
381
+ if (!e.autocompleteColumn) {
382
+ e.grid.totalRows = rows.length;
383
+ if (e.grid.columns) {
384
+ let sortCol = null;
385
+ for (let col of e.grid.columns) if (col.asc || col.desc) {
386
+ sortCol = col;
387
+ break;
388
+ }
389
+ if (sortCol != null) rows.sort(function(a, b) {
390
+ return a[sortCol.name] > b[sortCol.name] ? sortCol.asc ? 1 : -1 : sortCol.asc ? -1 : 1;
391
+ });
392
+ }
393
+ }
394
+ if (e.autocompleteColumn) rows.sort(function(a, b) {
395
+ return a > b ? 1 : -1;
396
+ });
397
+ else {
398
+ rows = e.grid.pageSize > 0 && e.grid.pageNumber > 0 ? rows.slice((e.grid.pageNumber - 1) * e.grid.pageSize, e.grid.pageNumber * e.grid.pageSize) : rows;
399
+ e.grid.rows = rows;
400
+ }
401
+ return rows;
402
+ }
403
+ GetFamilyColumns() {
404
+ return [
405
+ {
406
+ name: "Id",
407
+ sortable: true,
408
+ filtrable: true
409
+ },
410
+ {
411
+ name: "Name",
412
+ sortable: true,
413
+ filtrable: true
414
+ },
415
+ {
416
+ name: "SecondName",
417
+ sortable: true,
418
+ filtrable: true
419
+ },
420
+ {
421
+ name: "Date",
422
+ sortable: true,
423
+ type: "date"
424
+ },
425
+ {
426
+ name: "Comment",
427
+ sortable: true,
428
+ filtrable: true
429
+ },
430
+ {
431
+ name: "Hometown",
432
+ sortable: true,
433
+ filtrable: true,
434
+ type: "lookup",
435
+ keyField: "HometownId",
436
+ refKeyField: "Id",
437
+ refNameField: "City",
438
+ getRows: (e) => {
439
+ return new Promise(function(resolve, reject) {
440
+ const rows = new TestData().getCity(e);
441
+ if (rows != null) resolve(rows);
442
+ else reject(Error("Error getting rows"));
443
+ });
444
+ }
445
+ }
446
+ ];
447
+ }
448
+ getCity(e) {
449
+ const cities = [
450
+ {
451
+ Id: 1,
452
+ City: "Voronezh",
453
+ ParentId: [
454
+ 1,
455
+ 3,
456
+ 4,
457
+ 5,
458
+ 6,
459
+ 7,
460
+ 8,
461
+ 9,
462
+ 10,
463
+ 11,
464
+ 12,
465
+ 13,
466
+ 14,
467
+ 15,
468
+ 16,
469
+ 17,
470
+ 18,
471
+ 19,
472
+ 20,
473
+ 21,
474
+ 22,
475
+ 23
476
+ ]
477
+ },
478
+ {
479
+ Id: 2,
480
+ City: "Grafskaya",
481
+ ParentId: [
482
+ 1,
483
+ 3,
484
+ 4,
485
+ 5,
486
+ 6,
487
+ 7,
488
+ 9,
489
+ 10,
490
+ 11,
491
+ 15,
492
+ 16,
493
+ 17,
494
+ 18,
495
+ 19,
496
+ 20,
497
+ 21,
498
+ 22,
499
+ 23
500
+ ]
501
+ },
502
+ {
503
+ Id: 3,
504
+ City: "Moskow",
505
+ ParentId: [
506
+ 1,
507
+ 2,
508
+ 3,
509
+ 4,
510
+ 5,
511
+ 6,
512
+ 7,
513
+ 8,
514
+ 9,
515
+ 10,
516
+ 11,
517
+ 12,
518
+ 13,
519
+ 14,
520
+ 15,
521
+ 16,
522
+ 23,
523
+ 28,
524
+ 29
525
+ ]
526
+ },
527
+ {
528
+ Id: 4,
529
+ City: "Pskov",
530
+ ParentId: [
531
+ 1,
532
+ 3,
533
+ 4,
534
+ 5,
535
+ 6,
536
+ 7,
537
+ 8,
538
+ 9,
539
+ 10,
540
+ 11,
541
+ 14,
542
+ 15,
543
+ 16,
544
+ 30
545
+ ]
546
+ },
547
+ {
548
+ Id: 5,
549
+ City: "Elista",
550
+ ParentId: [
551
+ 1,
552
+ 3,
553
+ 4,
554
+ 5,
555
+ 6,
556
+ 7,
557
+ 8,
558
+ 9,
559
+ 10,
560
+ 11,
561
+ 12,
562
+ 13,
563
+ 14,
564
+ 17,
565
+ 18,
566
+ 19,
567
+ 20,
568
+ 21,
569
+ 23,
570
+ 24,
571
+ 25,
572
+ 26,
573
+ 27,
574
+ 28,
575
+ 29
576
+ ]
577
+ },
578
+ {
579
+ Id: 6,
580
+ City: "Pyatigorsk",
581
+ ParentId: [
582
+ 1,
583
+ 3,
584
+ 4,
585
+ 6,
586
+ 12,
587
+ 13,
588
+ 14
589
+ ]
590
+ },
591
+ {
592
+ Id: 7,
593
+ City: "Piter",
594
+ ParentId: [
595
+ 1,
596
+ 2,
597
+ 3,
598
+ 4,
599
+ 5,
600
+ 6,
601
+ 7,
602
+ 8,
603
+ 9,
604
+ 10,
605
+ 11,
606
+ 14,
607
+ 15,
608
+ 16
609
+ ]
610
+ },
611
+ {
612
+ Id: 8,
613
+ City: "Novosibirsk",
614
+ ParentId: [
615
+ 1,
616
+ 3,
617
+ 4,
618
+ 11,
619
+ 14,
620
+ 17,
621
+ 18,
622
+ 19,
623
+ 20,
624
+ 23
625
+ ]
626
+ },
627
+ {
628
+ Id: 9,
629
+ City: "Ustyuzhna",
630
+ ParentId: [
631
+ 5,
632
+ 15,
633
+ 30
634
+ ]
635
+ },
636
+ {
637
+ Id: 10,
638
+ City: "Army",
639
+ ParentId: [
640
+ 1,
641
+ 7,
642
+ 8,
643
+ 9,
644
+ 20
645
+ ]
646
+ },
647
+ {
648
+ Id: 11,
649
+ City: "Bali",
650
+ ParentId: [2]
651
+ },
652
+ {
653
+ Id: 12,
654
+ City: "Hanty-Mansiysk",
655
+ ParentId: [2]
656
+ },
657
+ {
658
+ Id: 13,
659
+ City: "Paris",
660
+ ParentId: [21]
661
+ },
662
+ {
663
+ Id: 14,
664
+ City: "Energodar",
665
+ ParentId: [
666
+ 19,
667
+ 25,
668
+ 26
669
+ ]
670
+ }
671
+ ];
672
+ if (e.autocompleteColumn) {
673
+ e.grid._autocomplDict = {};
674
+ e.grid._autocomplCount = 0;
675
+ }
676
+ let rows = [];
677
+ for (let row of cities) {
678
+ if (!this.passRow(e.grid, row, e.autocompleteColumn)) continue;
679
+ if (e.filters && e.filters.length) {
680
+ let filter = e.filters[0];
681
+ filter = filter.filter ? filter.filter : filter;
682
+ if (!row["ParentId"] || row["ParentId"].indexOf(+filter) < 0) continue;
683
+ }
684
+ if (e.autocompleteColumn) {
685
+ e.grid._autocomplCount++;
686
+ if (e.grid._autocomplCount > 10) break;
687
+ let cellValue = row[e.autocompleteColumn.name];
688
+ e.grid._autocomplDict[String(cellValue).toLowerCase()] = 1;
689
+ rows.push(cellValue);
690
+ } else rows.push(row);
691
+ }
692
+ if (!e.autocompleteColumn && e.grid) {
693
+ e.grid.totalRows = rows.length;
694
+ if (e.grid.columns) {
695
+ let sortCol = null;
696
+ for (let col of e.grid.columns) if (col.asc || col.desc) {
697
+ sortCol = col;
698
+ break;
699
+ }
700
+ if (sortCol != null) rows.sort(function(a, b) {
701
+ return a[sortCol.name] > b[sortCol.name] ? sortCol.asc ? 1 : -1 : sortCol.asc ? -1 : 1;
702
+ });
703
+ }
704
+ }
705
+ if (e.autocompleteColumn) rows.sort(function(a, b) {
706
+ return a > b ? 1 : -1;
707
+ });
708
+ else {
709
+ rows = e.grid.pageSize > 0 && e.grid.pageNumber > 0 ? rows.slice((e.grid.pageNumber - 1) * e.grid.pageSize, e.grid.pageNumber * e.grid.pageSize) : rows;
710
+ e.grid.rows = rows;
711
+ }
712
+ return rows;
713
+ }
714
+ GetCityColumns() {
715
+ return [{
716
+ name: "Id",
717
+ sortable: true
718
+ }, {
719
+ name: "City",
720
+ sortable: true,
721
+ filtrable: true
722
+ }];
723
+ }
724
+ passRow(grid, row, autocompleteColumn) {
725
+ if (!grid || !grid.columns) return true;
726
+ for (let col of grid.columns) {
727
+ if (!col.filtrable || (col.filter == null || col.filter == "") && !autocompleteColumn) continue;
728
+ const cellValue = String(row[col.name]).toLowerCase();
729
+ if (cellValue == "") return false;
730
+ const filter = col.filter == null || col.filter == "" ? "" : col.filter.toLowerCase();
731
+ if (filter != "") {
732
+ if (autocompleteColumn) {
733
+ if (autocompleteColumn == col && cellValue.indexOf(filter) != 0 || autocompleteColumn != col && cellValue != filter) return false;
734
+ } else if (cellValue != filter) return false;
735
+ }
736
+ if (autocompleteColumn && grid._autocomplDict[cellValue]) return false;
737
+ }
738
+ return true;
739
+ }
740
+ GetCities = function(e) {
741
+ return new Promise(function(resolve, reject) {
742
+ const rows = new TestData().getCity(e);
743
+ if (rows != null) resolve(rows);
744
+ else reject(Error("Error getting rows"));
745
+ });
746
+ };
747
+ };
748
+ exports.TestData = TestData;