@cdmx/wappler_ag_grid 0.0.1 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -0
- package/app_connect/components.hjson +262 -0
- package/dmx-ag-grid.js +64 -71
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -165,6 +165,62 @@
|
|
|
165
165
|
"defaultValue": 20,
|
|
166
166
|
"help": "Number of rows to show per page"
|
|
167
167
|
},
|
|
168
|
+
{
|
|
169
|
+
"name": "timezone",
|
|
170
|
+
"attribute": "timezone",
|
|
171
|
+
"title": "Timezone",
|
|
172
|
+
"type": "droplist",
|
|
173
|
+
"defaultValue": '',
|
|
174
|
+
"values": [
|
|
175
|
+
{title: 'Local', value: ''},
|
|
176
|
+
{title: 'UTC - Coordinated Universal Time', value: 'UTC'},
|
|
177
|
+
{title: 'GMT - Greenwich Mean Time', value: 'GMT'},
|
|
178
|
+
{title: 'PST - Pacific Standard Time', value: 'PST'},
|
|
179
|
+
{title: 'PDT - Pacific Daylight Time', value: 'PDT'},
|
|
180
|
+
{title: 'EST - Eastern Standard Time', value: 'EST'},
|
|
181
|
+
{title: 'EDT - Eastern Daylight Time', value: 'EDT'},
|
|
182
|
+
{title: 'CST - Central Standard Time', value: 'CST'},
|
|
183
|
+
{title: 'CDT - Central Daylight Time', value: 'CDT'},
|
|
184
|
+
{title: 'MST - Mountain Standard Time', value: 'MST'},
|
|
185
|
+
{title: 'MDT - Mountain Daylight Time', value: 'MDT'},
|
|
186
|
+
{title: 'HST - Hawaii Standard Time', value: 'HST'},
|
|
187
|
+
{title: 'AKST - Alaska Standard Time', value: 'AKST'},
|
|
188
|
+
{title: 'AKDT - Alaska Daylight Time', value: 'AKDT'},
|
|
189
|
+
{title: 'AEST - Australian Eastern Standard Time', value: 'AEST'},
|
|
190
|
+
{title: 'AEDT - Australian Eastern Daylight Time', value: 'AEDT'},
|
|
191
|
+
{title: 'ACST - Australian Central Standard Time', value: 'ACST'},
|
|
192
|
+
{title: 'ACDT - Australian Central Daylight Time', value: 'ACDT'},
|
|
193
|
+
{title: 'AWST - Australian Western Standard Time', value: 'AWST'},
|
|
194
|
+
{title: 'BST - British Summer Time', value: 'BST'},
|
|
195
|
+
{title: 'IST - Indian Standard Time', value: 'IST'},
|
|
196
|
+
{title: 'JST - Japan Standard Time', value: 'JST'},
|
|
197
|
+
{title: 'CET - Central European Time', value: 'CET'},
|
|
198
|
+
{title: 'CEST - Central European Summer Time', value: 'CEST'},
|
|
199
|
+
{title: 'EET - Eastern European Time', value: 'EET'},
|
|
200
|
+
{title: 'EEST - Eastern European Summer Time', value: 'EEST'},
|
|
201
|
+
{title: 'MSK - Moscow Standard Time', value: 'MSK'},
|
|
202
|
+
{title: 'IST - Israel Standard Time', value: 'IST'},
|
|
203
|
+
{title: 'NZST - New Zealand Standard Time', value: 'NZST'},
|
|
204
|
+
{title: 'NZDT - New Zealand Daylight Time', value: 'NZDT'},
|
|
205
|
+
{title: 'NST - Newfoundland Standard Time', value: 'NST'},
|
|
206
|
+
{title: 'NDT - Newfoundland Daylight Time', value: 'NDT'},
|
|
207
|
+
{title: 'AST - Atlantic Standard Time', value: 'AST'},
|
|
208
|
+
{title: 'ADT - Atlantic Daylight Time', value: 'ADT'},
|
|
209
|
+
{title: 'GMT+1 - Central European Standard Time', value: 'GMT+1'},
|
|
210
|
+
{title: 'GMT+2 - Eastern European Standard Time', value: 'GMT+2'},
|
|
211
|
+
{title: 'GMT+3 - Moscow Standard Time', value: 'GMT+3'},
|
|
212
|
+
{title: 'GMT+4 - Gulf Standard Time', value: 'GMT+4'},
|
|
213
|
+
{title: 'GMT+5 - Pakistan Standard Time', value: 'GMT+5'},
|
|
214
|
+
{title: 'GMT+6 - Central Asia Standard Time', value: 'GMT+6'},
|
|
215
|
+
{title: 'GMT+7 - Southeast Asia Standard Time', value: 'GMT+7'},
|
|
216
|
+
{title: 'GMT+8 - China Standard Time', value: 'GMT+8'},
|
|
217
|
+
{title: 'GMT+9 - Japan Standard Time', value: 'GMT+9'},
|
|
218
|
+
{title: 'GMT+10 - Australian Eastern Standard Time', value: 'GMT+10'},
|
|
219
|
+
{title: 'GMT+11 - Solomon Islands Time', value: 'GMT+11'},
|
|
220
|
+
{title: 'GMT+12 - New Zealand Standard Time', value: 'GMT+12'}
|
|
221
|
+
],
|
|
222
|
+
"help": "Timezone for Date Fields"
|
|
223
|
+
},
|
|
168
224
|
{
|
|
169
225
|
"name": "fixedHeader",
|
|
170
226
|
"attribute": "fixedHeader",
|
|
@@ -386,7 +442,213 @@
|
|
|
386
442
|
]
|
|
387
443
|
}
|
|
388
444
|
]
|
|
445
|
+
},
|
|
446
|
+
{
|
|
447
|
+
"group": "📒 Data Manipulation",
|
|
448
|
+
"variables": [
|
|
449
|
+
{
|
|
450
|
+
"name": "data_changes",
|
|
451
|
+
"attributeStartsWith": "dmx-bind",
|
|
452
|
+
"attribute": "data_changes",
|
|
453
|
+
"title": "Configure Fields",
|
|
454
|
+
"type": "boolean",
|
|
455
|
+
"display": "fieldset",
|
|
456
|
+
"show": [
|
|
457
|
+
"dataChanges"
|
|
458
|
+
],
|
|
459
|
+
"noChangeOnHide": true,
|
|
460
|
+
"groupEnabler": true,
|
|
461
|
+
"help": "Add custom values for the field data based on value, ex: field: status, value: false, new_value: Disabled"
|
|
462
|
+
"children": [
|
|
463
|
+
{
|
|
464
|
+
"name": "help",
|
|
465
|
+
"type": "static",
|
|
466
|
+
"help": "Add custom values for the field data based on value, ex: field: status, value: false, new_value: Disabled"
|
|
467
|
+
},
|
|
468
|
+
{
|
|
469
|
+
"name": "dataChanges",
|
|
470
|
+
"attribute": "dmx-bind:data_changes",
|
|
471
|
+
"title": "Fields Data",
|
|
472
|
+
"type": "grid",
|
|
473
|
+
"dataBindings": true,
|
|
474
|
+
"key": "field",
|
|
475
|
+
"jsonFormat": true,
|
|
476
|
+
"encloseBT": true,
|
|
477
|
+
"jsonBT": true,
|
|
478
|
+
"initDisplay": "none",
|
|
479
|
+
"columns": [
|
|
480
|
+
{
|
|
481
|
+
"field": "field",
|
|
482
|
+
"caption": "Field",
|
|
483
|
+
"size": "10%",
|
|
484
|
+
"editable": {
|
|
485
|
+
"type": "text"
|
|
486
|
+
}
|
|
487
|
+
},
|
|
488
|
+
{
|
|
489
|
+
"field": "value",
|
|
490
|
+
"caption": "Value",
|
|
491
|
+
"size": "10%",
|
|
492
|
+
"editable": {
|
|
493
|
+
"type": "text"
|
|
494
|
+
}
|
|
495
|
+
},
|
|
496
|
+
{
|
|
497
|
+
field: "new_value",
|
|
498
|
+
caption: "New Value",
|
|
499
|
+
size: "10%",
|
|
500
|
+
editable: {
|
|
501
|
+
type: "text"
|
|
502
|
+
}
|
|
503
|
+
}
|
|
504
|
+
],
|
|
505
|
+
"newRecord": {
|
|
506
|
+
"name": "",
|
|
507
|
+
"value": "",
|
|
508
|
+
"field": "",
|
|
509
|
+
"new_value": ""
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
]
|
|
513
|
+
}
|
|
514
|
+
]
|
|
515
|
+
},
|
|
516
|
+
{
|
|
517
|
+
"group": "📒 Custom Headers",
|
|
518
|
+
"variables": [
|
|
519
|
+
{
|
|
520
|
+
"name": "cnames",
|
|
521
|
+
"attributeStartsWith": "dmx-bind",
|
|
522
|
+
"attribute": "cnames",
|
|
523
|
+
"title": "Configure Header Names",
|
|
524
|
+
"type": "boolean",
|
|
525
|
+
"display": "fieldset",
|
|
526
|
+
"show": [
|
|
527
|
+
"listCustomNames"
|
|
528
|
+
],
|
|
529
|
+
"noChangeOnHide": true,
|
|
530
|
+
"groupEnabler": true,
|
|
531
|
+
"help": "Add custom headers to column"
|
|
532
|
+
"children": [
|
|
533
|
+
{
|
|
534
|
+
"name": "help",
|
|
535
|
+
"type": "static",
|
|
536
|
+
"help": "Add custom headers to column"
|
|
537
|
+
},
|
|
538
|
+
{
|
|
539
|
+
"name": "listCustomNames",
|
|
540
|
+
"attribute": "dmx-bind:cnames",
|
|
541
|
+
"title": "Header Names",
|
|
542
|
+
"type": "grid",
|
|
543
|
+
"dataBindings": true,
|
|
544
|
+
"key": "field",
|
|
545
|
+
"jsonFormat": true,
|
|
546
|
+
"encloseBT": true,
|
|
547
|
+
"jsonBT": true,
|
|
548
|
+
"initDisplay": "none",
|
|
549
|
+
"columns": [
|
|
550
|
+
{
|
|
551
|
+
"field": "field",
|
|
552
|
+
"caption": "Field",
|
|
553
|
+
"size": "20%",
|
|
554
|
+
"editable": {
|
|
555
|
+
"type": "text"
|
|
556
|
+
}
|
|
557
|
+
},
|
|
558
|
+
{
|
|
559
|
+
field: "custom_name",
|
|
560
|
+
caption: "Name",
|
|
561
|
+
size: "20%",
|
|
562
|
+
editable: {
|
|
563
|
+
type: "text"
|
|
564
|
+
},
|
|
565
|
+
help: "Identity, Name,etc"
|
|
566
|
+
}
|
|
567
|
+
],
|
|
568
|
+
"newRecord": {
|
|
569
|
+
"name": "",
|
|
570
|
+
"value": "",
|
|
571
|
+
"field": "",
|
|
572
|
+
"custom_name": ""
|
|
573
|
+
}
|
|
574
|
+
}
|
|
575
|
+
]
|
|
576
|
+
}
|
|
577
|
+
]
|
|
578
|
+
},
|
|
579
|
+
{
|
|
580
|
+
"group": "📒 Custom Widths",
|
|
581
|
+
"variables": [
|
|
582
|
+
{
|
|
583
|
+
"name": "cwidths",
|
|
584
|
+
"attributeStartsWith": "dmx-bind",
|
|
585
|
+
"attribute": "cwidths",
|
|
586
|
+
"title": "Configure Custom Widths",
|
|
587
|
+
"type": "boolean",
|
|
588
|
+
"display": "fieldset",
|
|
589
|
+
"show": [
|
|
590
|
+
"listCustomWidths",
|
|
591
|
+
],
|
|
592
|
+
"noChangeOnHide": true,
|
|
593
|
+
"groupEnabler": true,
|
|
594
|
+
"help": "Add custom widths for the field"
|
|
595
|
+
"children": [
|
|
596
|
+
{
|
|
597
|
+
"name": "help",
|
|
598
|
+
"type": "static",
|
|
599
|
+
"help": "Add custom widths for the field"
|
|
600
|
+
},
|
|
601
|
+
{
|
|
602
|
+
"name": "listCustomWidths",
|
|
603
|
+
"attribute": "dmx-bind:cwidths",
|
|
604
|
+
"title": "Column Name",
|
|
605
|
+
"type": "grid",
|
|
606
|
+
"dataBindings": true,
|
|
607
|
+
"key": "field",
|
|
608
|
+
"jsonFormat": true,
|
|
609
|
+
"encloseBT": true,
|
|
610
|
+
"jsonBT": true,
|
|
611
|
+
"initDisplay": "none",
|
|
612
|
+
"columns": [
|
|
613
|
+
{
|
|
614
|
+
"field": "field",
|
|
615
|
+
"caption": "Field",
|
|
616
|
+
"size": "20%",
|
|
617
|
+
"editable": {
|
|
618
|
+
"type": "text"
|
|
619
|
+
}
|
|
620
|
+
},
|
|
621
|
+
{
|
|
622
|
+
field: "min_width",
|
|
623
|
+
caption: "Min Width",
|
|
624
|
+
size: "20%",
|
|
625
|
+
editable: {
|
|
626
|
+
type: "text"
|
|
627
|
+
},
|
|
628
|
+
help: "Min Width",
|
|
629
|
+
},
|
|
630
|
+
{
|
|
631
|
+
field: "max_width",
|
|
632
|
+
caption: "Max Width",
|
|
633
|
+
size: "20%",
|
|
634
|
+
editable: {
|
|
635
|
+
type: "text"
|
|
636
|
+
},
|
|
637
|
+
help: "Max Width",
|
|
638
|
+
}
|
|
639
|
+
],
|
|
640
|
+
"newRecord": {
|
|
641
|
+
"name": "",
|
|
642
|
+
"value": "",
|
|
643
|
+
"field": "",
|
|
644
|
+
"custom_name": ""
|
|
645
|
+
}
|
|
646
|
+
}
|
|
647
|
+
]
|
|
648
|
+
}
|
|
649
|
+
]
|
|
389
650
|
}
|
|
651
|
+
|
|
390
652
|
],
|
|
391
653
|
"actionsScheme": [],
|
|
392
654
|
"children": [],
|
package/dmx-ag-grid.js
CHANGED
|
@@ -4,6 +4,9 @@ dmx.Component('ag-grid', {
|
|
|
4
4
|
rowData: [],
|
|
5
5
|
column_defs: [],
|
|
6
6
|
cstyles: null,
|
|
7
|
+
cnames: null,
|
|
8
|
+
cwidths: null,
|
|
9
|
+
data_changes: null,
|
|
7
10
|
gridInstance: null,
|
|
8
11
|
domLayout: 'autoHeight',
|
|
9
12
|
enableCellTextSelection: true,
|
|
@@ -34,71 +37,31 @@ dmx.Component('ag-grid', {
|
|
|
34
37
|
fixedHeader: false,
|
|
35
38
|
topbarClass: null,
|
|
36
39
|
fixedHeaderOffset: 100,
|
|
37
|
-
fixedTopOffset: 80
|
|
40
|
+
fixedTopOffset: 80,
|
|
41
|
+
fixedHorizonatalScroll: false,
|
|
42
|
+
timezone: null
|
|
38
43
|
},
|
|
39
44
|
|
|
40
45
|
attributes: {
|
|
41
|
-
id: {
|
|
42
|
-
|
|
43
|
-
},
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
},
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
},
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
},
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
},
|
|
60
|
-
domLayout: {
|
|
61
|
-
default: 'autoHeight'
|
|
62
|
-
},
|
|
63
|
-
enableCellTextSelection: {
|
|
64
|
-
type: Boolean,
|
|
65
|
-
default: true
|
|
66
|
-
},
|
|
67
|
-
rowSelection: {
|
|
68
|
-
type: Boolean,
|
|
69
|
-
default: false
|
|
70
|
-
},
|
|
71
|
-
suppressRowDeselection: {
|
|
72
|
-
type: Boolean,
|
|
73
|
-
default: false
|
|
74
|
-
},
|
|
75
|
-
pagination: {
|
|
76
|
-
type: Boolean,
|
|
77
|
-
default: true
|
|
78
|
-
},
|
|
79
|
-
paginationPageSize: {
|
|
80
|
-
default: 20
|
|
81
|
-
},
|
|
82
|
-
rowHeight: {
|
|
83
|
-
type: Number,
|
|
84
|
-
default: null
|
|
85
|
-
},
|
|
86
|
-
headerHeight: {
|
|
87
|
-
type: Number,
|
|
88
|
-
default: null
|
|
89
|
-
},
|
|
90
|
-
suppressRowClickSelection: {
|
|
91
|
-
type: Boolean,
|
|
92
|
-
default: false
|
|
93
|
-
},
|
|
94
|
-
suppressMenuHide: {
|
|
95
|
-
type: Boolean,
|
|
96
|
-
default: false
|
|
97
|
-
},
|
|
98
|
-
suppressMovableColumns: {
|
|
99
|
-
type: Boolean,
|
|
100
|
-
default: false
|
|
101
|
-
},
|
|
46
|
+
id: { default: null },
|
|
47
|
+
rowData: { type: Array, default: [] },
|
|
48
|
+
column_defs: { type: Array, default: [] },
|
|
49
|
+
cstyles: { type: Object, default: {} },
|
|
50
|
+
cnames: { type: Object, default: {} },
|
|
51
|
+
cwidths: { type: Object, default: {} },
|
|
52
|
+
data_changes: { type: Object, default: {} },
|
|
53
|
+
data: { type: Array, default: [] },
|
|
54
|
+
domLayout: { default: 'autoHeight' },
|
|
55
|
+
enableCellTextSelection: { type: Boolean, default: true },
|
|
56
|
+
rowSelection: { type: Boolean, default: false },
|
|
57
|
+
suppressRowDeselection: { type: Boolean, default: false },
|
|
58
|
+
pagination: { type: Boolean, default: true },
|
|
59
|
+
paginationPageSize: { default: 20 },
|
|
60
|
+
rowHeight: { type: Number, default: null },
|
|
61
|
+
headerHeight: { type: Number, default: null },
|
|
62
|
+
suppressRowClickSelection: { type: Boolean, default: false },
|
|
63
|
+
suppressMenuHide: { type: Boolean, default: false },
|
|
64
|
+
suppressMovableColumns: { type: Boolean, default: false },
|
|
102
65
|
enableCellExpressions: {
|
|
103
66
|
type: Boolean,
|
|
104
67
|
default: false
|
|
@@ -173,7 +136,9 @@ dmx.Component('ag-grid', {
|
|
|
173
136
|
fixedTopOffset: {
|
|
174
137
|
type: Number,
|
|
175
138
|
default: 80
|
|
176
|
-
}
|
|
139
|
+
},
|
|
140
|
+
fixedHorizonatalScroll: { type: Boolean, default: false },
|
|
141
|
+
timezone: {type: Text, default: '' }
|
|
177
142
|
},
|
|
178
143
|
|
|
179
144
|
methods: {
|
|
@@ -190,7 +155,9 @@ dmx.Component('ag-grid', {
|
|
|
190
155
|
const fixedHeader = this.props.fixedHeader;
|
|
191
156
|
const fixedHeaderOffset = this.props.fixedHeaderOffset;
|
|
192
157
|
const topbarClass = this.props.topbarClass;
|
|
193
|
-
const fixedTopOffset = this.props.fixedTopOffset
|
|
158
|
+
const fixedTopOffset = this.props.fixedTopOffset;
|
|
159
|
+
const timezone = this.props.timezone || false;
|
|
160
|
+
const dataChanges = this.props.data_changes;
|
|
194
161
|
let columnDefs = [];
|
|
195
162
|
let exportToCSV = this.props.exportToCSV;
|
|
196
163
|
if (!rowData || rowData.length === 0) {
|
|
@@ -238,9 +205,9 @@ dmx.Component('ag-grid', {
|
|
|
238
205
|
hour: 'numeric',
|
|
239
206
|
minute: 'numeric',
|
|
240
207
|
hour12: true,
|
|
241
|
-
timeZone:
|
|
208
|
+
timeZone: timezone
|
|
242
209
|
};
|
|
243
|
-
return date.toLocaleString('en-
|
|
210
|
+
return date.toLocaleString('en-IN', options).toUpperCase();
|
|
244
211
|
} else {
|
|
245
212
|
const options = {
|
|
246
213
|
day: '2-digit',
|
|
@@ -250,7 +217,7 @@ dmx.Component('ag-grid', {
|
|
|
250
217
|
minute: 'numeric',
|
|
251
218
|
hour12: true
|
|
252
219
|
};
|
|
253
|
-
return date.toLocaleString('en-
|
|
220
|
+
return date.toLocaleString('en-IN', options).toUpperCase();
|
|
254
221
|
}
|
|
255
222
|
}
|
|
256
223
|
}
|
|
@@ -280,7 +247,16 @@ dmx.Component('ag-grid', {
|
|
|
280
247
|
return 'text';
|
|
281
248
|
}
|
|
282
249
|
}
|
|
283
|
-
|
|
250
|
+
function getValueGetter(key, dataChanges) {
|
|
251
|
+
return function(params) {
|
|
252
|
+
let value = params.data[key];
|
|
253
|
+
if (dataChanges.hasOwnProperty(key)) {
|
|
254
|
+
const change = dataChanges[key];
|
|
255
|
+
value = change.new_value;
|
|
256
|
+
}
|
|
257
|
+
return value;
|
|
258
|
+
};
|
|
259
|
+
}
|
|
284
260
|
if (Array.isArray(this.props.column_defs) && this.props.column_defs.length > 0) {
|
|
285
261
|
columnDefs = this.props.column_defs;
|
|
286
262
|
} else {
|
|
@@ -314,7 +290,7 @@ dmx.Component('ag-grid', {
|
|
|
314
290
|
}
|
|
315
291
|
} else if (dataType === 'date') {
|
|
316
292
|
filter = 'agDateColumnFilter';
|
|
317
|
-
valueFormatter = (params) => formatTime(params,
|
|
293
|
+
valueFormatter = (params) => formatTime(params, timezone);
|
|
318
294
|
} else {
|
|
319
295
|
filter = 'agTextColumnFilter';
|
|
320
296
|
valueFormatter = blankOrNullValueFormatter;
|
|
@@ -329,6 +305,9 @@ dmx.Component('ag-grid', {
|
|
|
329
305
|
filterValueGetter = eval(`(params) => ${definition.filterGetter}`);
|
|
330
306
|
}
|
|
331
307
|
}
|
|
308
|
+
else {
|
|
309
|
+
valueGetter = getValueGetter(key, dataChanges);
|
|
310
|
+
}
|
|
332
311
|
function extractConditionParts(condition) {
|
|
333
312
|
const parts = condition.match(/(.+?)(===|==|!=|>|<|>=|<=)(.+)/);
|
|
334
313
|
if (parts) {
|
|
@@ -373,14 +352,28 @@ const cstyles = this.props.cstyles
|
|
|
373
352
|
}
|
|
374
353
|
return null;
|
|
375
354
|
}
|
|
355
|
+
cnames = this.props.cnames
|
|
356
|
+
cwidths = this.props.cwidths
|
|
357
|
+
if (cnames.hasOwnProperty(key)) {
|
|
358
|
+
console.log(key)
|
|
359
|
+
const cname = cnames[key]
|
|
360
|
+
headerName = cname ? cname.custom_name : humanize(key);
|
|
361
|
+
}
|
|
362
|
+
else {
|
|
363
|
+
headerName = humanize(key);
|
|
364
|
+
}
|
|
376
365
|
return {
|
|
377
|
-
headerName:
|
|
366
|
+
headerName: headerName,
|
|
378
367
|
field: key,
|
|
379
368
|
filter: filter,
|
|
380
369
|
valueFormatter: valueFormatter,
|
|
381
370
|
valueGetter: valueGetter,
|
|
382
371
|
filterValueGetter: filterValueGetter,
|
|
383
|
-
cellStyle: applyCellStyle
|
|
372
|
+
cellStyle: applyCellStyle,
|
|
373
|
+
...(cwidths.hasOwnProperty(key) && {
|
|
374
|
+
minWidth: parseInt(cwidths[key].min_width),
|
|
375
|
+
maxWidth: parseInt(cwidths[key].max_width),
|
|
376
|
+
}),
|
|
384
377
|
};
|
|
385
378
|
});
|
|
386
379
|
}
|