smart-webcomponents-react 14.2.83 → 14.3.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.
- package/alertwindow/alertwindow.d.ts +5 -5
- package/alertwindow/alertwindow.esm.js +10 -85
- package/alertwindow/alertwindow.umd.js +1134 -1209
- package/array/array.d.ts +5 -5
- package/array/array.esm.js +13 -88
- package/array/array.umd.js +752 -827
- package/barcode/barcode.d.ts +3 -3
- package/barcode/barcode.esm.js +6 -61
- package/barcode/barcode.umd.js +311 -366
- package/button/dropdownbutton.d.ts +2 -2
- package/button/multisplitbutton.d.ts +2 -2
- package/calendar/calendar.d.ts +2 -2
- package/calendar/calendar.esm.js +4 -49
- package/calendar/calendar.umd.js +710 -755
- package/card/cardview.d.ts +1 -1
- package/cardview/cardview.d.ts +1 -1
- package/cardview/cardview.esm.js +2 -37
- package/cardview/cardview.umd.js +515 -550
- package/chart/chart.d.ts +9 -9
- package/chart/chart.esm.js +18 -133
- package/chart/chart.umd.js +822 -937
- package/chart/ganttchart.d.ts +20 -20
- package/combobox/combobox.d.ts +4 -4
- package/combobox/combobox.esm.js +8 -73
- package/combobox/combobox.umd.js +1341 -1406
- package/datetimepicker/datetimepicker.d.ts +1 -1
- package/datetimepicker/datetimepicker.esm.js +2 -37
- package/datetimepicker/datetimepicker.umd.js +826 -861
- package/dialogwindow/dialogwindow.d.ts +5 -5
- package/dialogwindow/dialogwindow.esm.js +10 -85
- package/dialogwindow/dialogwindow.umd.js +1134 -1209
- package/dockinglayout/dockinglayout.d.ts +7 -7
- package/dockinglayout/dockinglayout.esm.js +14 -109
- package/dockinglayout/dockinglayout.umd.js +765 -860
- package/dropdownbutton/dropdownbutton.d.ts +2 -2
- package/dropdownbutton/dropdownbutton.esm.js +4 -49
- package/dropdownbutton/dropdownbutton.umd.js +527 -572
- package/dropdownlist/dropdownlist.d.ts +4 -4
- package/dropdownlist/dropdownlist.esm.js +8 -73
- package/dropdownlist/dropdownlist.umd.js +1275 -1340
- package/editor/editor.d.ts +11 -9
- package/editor/editor.esm.js +14 -109
- package/editor/editor.umd.js +911 -1006
- package/fileupload/fileupload.d.ts +2 -1
- package/filterbuilder/filterbuilder.d.ts +1 -1
- package/filterbuilder/filterbuilder.esm.js +2 -37
- package/filterbuilder/filterbuilder.umd.js +463 -498
- package/filterpanel/filterpanel.d.ts +1 -1
- package/filterpanel/filterpanel.esm.js +2 -37
- package/filterpanel/filterpanel.umd.js +354 -389
- package/form/form.d.ts +1 -1
- package/form/form.esm.js +4 -49
- package/form/form.umd.js +1016 -1061
- package/form/formgroup.d.ts +1 -1
- package/ganttchart/ganttchart.d.ts +20 -20
- package/ganttchart/ganttchart.esm.js +40 -265
- package/ganttchart/ganttchart.umd.js +1666 -1891
- package/gauge/gauge.d.ts +2 -2
- package/gauge/gauge.esm.js +4 -49
- package/gauge/gauge.umd.js +664 -709
- package/grid/grid.d.ts +56 -51
- package/grid/grid.esm.js +96 -460
- package/grid/grid.umd.js +2107 -2471
- package/index.d.ts +45 -3
- package/input/input.d.ts +2 -2
- package/input/input.esm.js +4 -49
- package/input/input.umd.js +505 -550
- package/input/numberinput.d.ts +2 -2
- package/input/phoneinput.d.ts +4 -4
- package/kanban/kanban.d.ts +6 -6
- package/kanban/kanban.esm.js +12 -97
- package/kanban/kanban.umd.js +1334 -1419
- package/layout/dockinglayout.d.ts +7 -7
- package/listbox/listbox.d.ts +5 -5
- package/listbox/listbox.esm.js +10 -85
- package/listbox/listbox.umd.js +1170 -1245
- package/listmenu/listmenu.d.ts +1 -1
- package/listmenu/listmenu.esm.js +2 -37
- package/listmenu/listmenu.umd.js +1005 -1040
- package/menu/listmenu.d.ts +1 -1
- package/menu/menu.d.ts +1 -1
- package/menu/menu.esm.js +2 -37
- package/menu/menu.umd.js +1025 -1060
- package/multilinetextbox/multilinetextbox.d.ts +1 -1
- package/multilinetextbox/multilinetextbox.esm.js +2 -37
- package/multilinetextbox/multilinetextbox.umd.js +907 -942
- package/multilinewindow/multilinewindow.d.ts +5 -5
- package/multilinewindow/multilinewindow.esm.js +10 -85
- package/multilinewindow/multilinewindow.umd.js +1134 -1209
- package/multisplitbutton/multisplitbutton.d.ts +2 -2
- package/multisplitbutton/multisplitbutton.esm.js +4 -49
- package/multisplitbutton/multisplitbutton.umd.js +941 -986
- package/numberinput/numberinput.d.ts +2 -2
- package/numberinput/numberinput.esm.js +4 -49
- package/numberinput/numberinput.umd.js +348 -393
- package/numerictextbox/numerictextbox.d.ts +1 -1
- package/numerictextbox/numerictextbox.esm.js +2 -37
- package/numerictextbox/numerictextbox.umd.js +592 -627
- package/package.json +1 -1
- package/phoneinput/phoneinput.d.ts +4 -4
- package/phoneinput/phoneinput.esm.js +8 -73
- package/phoneinput/phoneinput.umd.js +386 -451
- package/pivottable/pivottable.d.ts +3 -3
- package/pivottable/pivottable.esm.js +6 -61
- package/pivottable/pivottable.umd.js +762 -817
- package/progresswindow/progresswindow.d.ts +5 -5
- package/progresswindow/progresswindow.esm.js +10 -85
- package/progresswindow/progresswindow.umd.js +1134 -1209
- package/promptwindow/promptwindow.d.ts +5 -5
- package/promptwindow/promptwindow.esm.js +10 -85
- package/promptwindow/promptwindow.umd.js +1134 -1209
- package/qrcode/qrcode.d.ts +3 -3
- package/qrcode/qrcode.esm.js +6 -61
- package/qrcode/qrcode.umd.js +333 -388
- package/querybuilder/querybuilder.d.ts +6 -1
- package/querybuilder/querybuilder.esm.js +14 -38
- package/querybuilder/querybuilder.umd.js +446 -470
- package/rating/rating.d.ts +1 -1
- package/rating/rating.esm.js +2 -37
- package/rating/rating.umd.js +261 -296
- package/scheduler/scheduler.d.ts +17 -17
- package/scheduler/scheduler.esm.js +34 -229
- package/scheduler/scheduler.umd.js +1782 -1977
- package/slider/slider.d.ts +2 -2
- package/slider/slider.esm.js +4 -49
- package/slider/slider.umd.js +642 -687
- package/source/modules/smart.accordion.js +1 -1
- package/source/modules/smart.array.js +2 -2
- package/source/modules/smart.barcode.js +1 -1
- package/source/modules/smart.breadcrumb.js +1 -1
- package/source/modules/smart.button.js +1 -1
- package/source/modules/smart.buttongroup.js +1 -1
- package/source/modules/smart.calendar.js +3 -3
- package/source/modules/smart.card.js +1 -1
- package/source/modules/smart.cardview.js +4 -4
- package/source/modules/smart.carousel.js +1 -1
- package/source/modules/smart.chart.js +1 -1
- package/source/modules/smart.checkbox.js +1 -1
- package/source/modules/smart.checkinput.js +2 -2
- package/source/modules/smart.chip.js +1 -1
- package/source/modules/smart.colorinput.js +2 -2
- package/source/modules/smart.colorpanel.js +2 -2
- package/source/modules/smart.colorpicker.js +2 -2
- package/source/modules/smart.combobox.js +2 -2
- package/source/modules/smart.common.js +1 -1
- package/source/modules/smart.countryinput.js +2 -2
- package/source/modules/smart.dateinput.js +3 -3
- package/source/modules/smart.daterangeinput.js +4 -4
- package/source/modules/smart.datetimepicker.js +3 -3
- package/source/modules/smart.dockinglayout.js +1 -1
- package/source/modules/smart.dropdownbutton.js +1 -1
- package/source/modules/smart.dropdownlist.js +2 -2
- package/source/modules/smart.editor.js +5 -5
- package/source/modules/smart.element.js +1 -1
- package/source/modules/smart.fileupload.js +3 -3
- package/source/modules/smart.form.js +2 -2
- package/source/modules/smart.formulaparser.js +1 -1
- package/source/modules/smart.ganttchart.js +5 -5
- package/source/modules/smart.gauge.js +1 -1
- package/source/modules/smart.grid.js +14 -14
- package/source/modules/smart.gridpanel.js +4 -4
- package/source/modules/smart.input.js +2 -2
- package/source/modules/smart.kanban.js +5 -5
- package/source/modules/smart.layout.js +1 -1
- package/source/modules/smart.led.js +1 -1
- package/source/modules/smart.listbox.js +2 -2
- package/source/modules/smart.listmenu.js +1 -1
- package/source/modules/smart.map.js +1 -1
- package/source/modules/smart.maskedtextbox.js +2 -2
- package/source/modules/smart.menu.js +1 -1
- package/source/modules/smart.multicomboinput.js +2 -2
- package/source/modules/smart.multiinput.js +2 -2
- package/source/modules/smart.multilinetextbox.js +2 -2
- package/source/modules/smart.multisplitbutton.js +2 -2
- package/source/modules/smart.numberinput.js +2 -2
- package/source/modules/smart.numerictextbox.js +2 -2
- package/source/modules/smart.pager.js +2 -2
- package/source/modules/smart.passwordinput.js +2 -2
- package/source/modules/smart.passwordtextbox.js +2 -2
- package/source/modules/smart.path.js +1 -1
- package/source/modules/smart.phoneinput.js +2 -2
- package/source/modules/smart.pivottable.js +3 -3
- package/source/modules/smart.progressbar.js +1 -1
- package/source/modules/smart.qrcode.js +1 -1
- package/source/modules/smart.querybuilder.js +5 -5
- package/source/modules/smart.radiobutton.js +1 -1
- package/source/modules/smart.rating.js +1 -1
- package/source/modules/smart.router.js +1 -1
- package/source/modules/smart.scheduler.js +4 -4
- package/source/modules/smart.scrollbar.js +1 -1
- package/source/modules/smart.slider.js +1 -1
- package/source/modules/smart.sortable.js +1 -1
- package/source/modules/smart.splitter.js +1 -1
- package/source/modules/smart.switchbutton.js +1 -1
- package/source/modules/smart.table.js +3 -3
- package/source/modules/smart.tabs.js +1 -1
- package/source/modules/smart.tank.js +1 -1
- package/source/modules/smart.textarea.js +2 -2
- package/source/modules/smart.textbox.js +2 -2
- package/source/modules/smart.timeinput.js +2 -2
- package/source/modules/smart.timepicker.js +1 -1
- package/source/modules/smart.toast.js +1 -1
- package/source/modules/smart.tooltip.js +1 -1
- package/source/modules/smart.tree.js +1 -1
- package/source/modules/smart.validator.js +1 -1
- package/source/modules/smart.window.js +2 -2
- package/source/smart.accordion.js +1 -1
- package/source/smart.ajax.js +1 -1
- package/source/smart.array.js +1 -1
- package/source/smart.barcode.js +1 -1
- package/source/smart.bootstrap.js +1 -1
- package/source/smart.breadcrumb.js +1 -1
- package/source/smart.button.js +1 -1
- package/source/smart.buttongroup.js +1 -1
- package/source/smart.calendar.js +2 -2
- package/source/smart.card.js +1 -1
- package/source/smart.cardview.js +1 -1
- package/source/smart.carousel.js +1 -1
- package/source/smart.chart.annotations.js +1 -1
- package/source/smart.chart.api.js +1 -1
- package/source/smart.chart.core.js +1 -1
- package/source/smart.chart.js +1 -1
- package/source/smart.chart.rangeselector.js +1 -1
- package/source/smart.chart.waterfall.js +1 -1
- package/source/smart.checkbox.js +1 -1
- package/source/smart.checkinput.js +1 -1
- package/source/smart.chip.js +1 -1
- package/source/smart.colorinput.js +1 -1
- package/source/smart.colorpanel.js +1 -1
- package/source/smart.colorpicker.js +1 -1
- package/source/smart.combobox.js +1 -1
- package/source/smart.complex.js +1 -1
- package/source/smart.core.js +1 -1
- package/source/smart.countryinput.js +1 -1
- package/source/smart.data.js +1 -1
- package/source/smart.date.js +1 -1
- package/source/smart.dateformatpanel.js +1 -1
- package/source/smart.dateinput.js +1 -1
- package/source/smart.daterangeinput.js +1 -1
- package/source/smart.datetimepicker.js +1 -1
- package/source/smart.dockinglayout.js +1 -1
- package/source/smart.draw.js +1 -1
- package/source/smart.dropdownbutton.js +1 -1
- package/source/smart.dropdownlist.js +1 -1
- package/source/smart.editor.js +2 -2
- package/source/smart.element.js +1 -1
- package/source/smart.elements.js +17 -17
- package/source/smart.export.js +1 -1
- package/source/smart.fileupload.js +2 -2
- package/source/smart.filter.js +1 -1
- package/source/smart.filterbuilder.js +2 -2
- package/source/smart.filterpanel.js +1 -1
- package/source/smart.form.js +1 -1
- package/source/smart.format.js +1 -1
- package/source/smart.formulaparser.js +1 -1
- package/source/smart.ganttchart.js +2 -2
- package/source/smart.gauge.js +1 -1
- package/source/smart.grid.cell.js +2 -2
- package/source/smart.grid.chart.js +1 -1
- package/source/smart.grid.column.js +1 -1
- package/source/smart.grid.core.js +2 -2
- package/source/smart.grid.dialog.js +2 -2
- package/source/smart.grid.edit.js +2 -2
- package/source/smart.grid.export.js +1 -1
- package/source/smart.grid.filter.js +1 -1
- package/source/smart.grid.group.js +1 -1
- package/source/smart.grid.js +1 -1
- package/source/smart.grid.menu.js +2 -2
- package/source/smart.grid.pager.js +1 -1
- package/source/smart.grid.reorder.js +1 -1
- package/source/smart.grid.resize.js +2 -2
- package/source/smart.grid.row.js +1 -1
- package/source/smart.grid.select.js +2 -2
- package/source/smart.grid.sort.js +1 -1
- package/source/smart.grid.toolbar.js +2 -2
- package/source/smart.grid.tree.js +1 -1
- package/source/smart.grid.view.js +2 -2
- package/source/smart.gridpanel.js +1 -1
- package/source/smart.input.js +2 -2
- package/source/smart.kanban.js +2 -2
- package/source/smart.layout.js +1 -1
- package/source/smart.led.js +1 -1
- package/source/smart.listbox.js +2 -2
- package/source/smart.listmenu.js +1 -1
- package/source/smart.map.js +1 -1
- package/source/smart.maskedtextbox.js +1 -1
- package/source/smart.math.js +1 -1
- package/source/smart.menu.js +1 -1
- package/source/smart.multicomboinput.js +1 -1
- package/source/smart.multiinput.js +1 -1
- package/source/smart.multilinetextbox.js +1 -1
- package/source/smart.multisplitbutton.js +1 -1
- package/source/smart.numberformatpanel.js +1 -1
- package/source/smart.numberinput.js +1 -1
- package/source/smart.numeric.js +1 -1
- package/source/smart.numerictextbox.js +1 -1
- package/source/smart.pager.js +1 -1
- package/source/smart.passwordinput.js +1 -1
- package/source/smart.passwordtextbox.js +1 -1
- package/source/smart.path.js +1 -1
- package/source/smart.phoneinput.js +1 -1
- package/source/smart.pivottable.js +1 -1
- package/source/smart.powerbutton.js +1 -1
- package/source/smart.progressbar.js +1 -1
- package/source/smart.qrcode.js +1 -1
- package/source/smart.radiobutton.js +1 -1
- package/source/smart.rating.js +1 -1
- package/source/smart.router.js +1 -1
- package/source/smart.scheduler.js +1 -1
- package/source/smart.scrollbar.js +1 -1
- package/source/smart.slider.js +1 -1
- package/source/smart.sortable.js +1 -1
- package/source/smart.splitter.js +1 -1
- package/source/smart.switchbutton.js +1 -1
- package/source/smart.table.js +1 -1
- package/source/smart.tabs.js +1 -1
- package/source/smart.tank.js +1 -1
- package/source/smart.textarea.js +1 -1
- package/source/smart.textbox.js +1 -1
- package/source/smart.tickintervalhandler.js +1 -1
- package/source/smart.timeinput.js +1 -1
- package/source/smart.timepicker.js +1 -1
- package/source/smart.toast.js +1 -1
- package/source/smart.tooltip.js +1 -1
- package/source/smart.tree.js +1 -1
- package/source/smart.validationpanel.js +1 -1
- package/source/smart.validator.js +1 -1
- package/source/smart.window.js +1 -1
- package/source/styles/components/smart.grid.css +1 -1
- package/source/styles/default/scss/smart.grid.scss +10 -3
- package/source/styles/default/smart.grid.css +7 -3
- package/source/styles/smart.default.css +1 -1
- package/source/typescript/smart.editor.d.ts +4 -2
- package/source/typescript/smart.elements.d.ts +45 -3
- package/source/typescript/smart.fileupload.d.ts +2 -1
- package/source/typescript/smart.grid.d.ts +34 -0
- package/source/typescript/smart.querybuilder.d.ts +5 -0
- package/splitter/splitter.d.ts +3 -3
- package/splitter/splitter.esm.js +6 -61
- package/splitter/splitter.umd.js +901 -956
- package/table/pivottable.d.ts +3 -3
- package/table/table.d.ts +7 -7
- package/table/table.esm.js +14 -109
- package/table/table.umd.js +1278 -1373
- package/tabs/tabs.d.ts +4 -4
- package/tabs/tabs.esm.js +8 -73
- package/tabs/tabs.umd.js +875 -940
- package/tabs/tabswindow.d.ts +5 -5
- package/tabswindow/tabswindow.d.ts +5 -5
- package/tabswindow/tabswindow.esm.js +10 -85
- package/tabswindow/tabswindow.umd.js +1134 -1209
- package/tank/tank.d.ts +2 -2
- package/tank/tank.esm.js +4 -49
- package/tank/tank.umd.js +598 -643
- package/textbox/multilinetextbox.d.ts +1 -1
- package/textbox/numerictextbox.d.ts +1 -1
- package/timepicker/datetimepicker.d.ts +1 -1
- package/toast/toast.d.ts +1 -1
- package/toast/toast.esm.js +2 -37
- package/toast/toast.umd.js +397 -432
- package/tree/tree.d.ts +4 -4
- package/tree/tree.esm.js +8 -73
- package/tree/tree.umd.js +1310 -1375
- package/waitwindow/waitwindow.d.ts +5 -5
- package/waitwindow/waitwindow.esm.js +10 -85
- package/waitwindow/waitwindow.umd.js +1134 -1209
- package/window/alertwindow.d.ts +5 -5
- package/window/dialogwindow.d.ts +5 -5
- package/window/multilinewindow.d.ts +5 -5
- package/window/progresswindow.d.ts +5 -5
- package/window/promptwindow.d.ts +5 -5
- package/window/tabswindow.d.ts +5 -5
- package/window/waitwindow.d.ts +5 -5
- package/window/window.d.ts +5 -5
- package/window/window.esm.js +10 -85
- package/window/window.umd.js +1134 -1209
package/cardview/cardview.umd.js
CHANGED
|
@@ -2,560 +2,525 @@
|
|
|
2
2
|
require('../source/modules/smart.cardview');
|
|
3
3
|
|
|
4
4
|
(function (global, factory) {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('react')) :
|
|
6
|
+
typeof define === 'function' && define.amd ? define(['exports', 'react'], factory) :
|
|
7
|
+
(factory((global.cardview = {}),global.React));
|
|
8
8
|
}(this, (function (exports,React) { 'use strict';
|
|
9
9
|
|
|
10
|
-
|
|
10
|
+
React = React && React.hasOwnProperty('default') ? React['default'] : React;
|
|
11
11
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
12
|
+
const Smart = window.Smart;
|
|
13
|
+
/**
|
|
14
|
+
CardView creates Card-based layout. Supports Filtering, Sorting, Grouping, Editing and UI Virtualization.
|
|
15
|
+
*/
|
|
16
|
+
class CardView extends React.Component {
|
|
17
|
+
constructor(props) {
|
|
18
|
+
super(props);
|
|
19
|
+
this.componentRef = React.createRef();
|
|
20
|
+
}
|
|
21
|
+
// Gets the id of the React component.
|
|
22
|
+
get id() {
|
|
23
|
+
if (!this._id) {
|
|
24
|
+
this._id = 'CardView' + Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
|
|
25
|
+
}
|
|
26
|
+
return this._id;
|
|
27
|
+
}
|
|
28
|
+
/** Toggles the button for adding new cards.
|
|
29
|
+
* Property type: boolean
|
|
30
|
+
*/
|
|
31
|
+
get addNewButton() {
|
|
32
|
+
return this.nativeElement ? this.nativeElement.addNewButton : undefined;
|
|
33
|
+
}
|
|
34
|
+
set addNewButton(value) {
|
|
35
|
+
if (this.nativeElement) {
|
|
36
|
+
this.nativeElement.addNewButton = value;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/** Allows reordering by dragging cards.
|
|
40
|
+
* Property type: boolean
|
|
41
|
+
*/
|
|
42
|
+
get allowDrag() {
|
|
43
|
+
return this.nativeElement ? this.nativeElement.allowDrag : undefined;
|
|
44
|
+
}
|
|
45
|
+
set allowDrag(value) {
|
|
46
|
+
if (this.nativeElement) {
|
|
47
|
+
this.nativeElement.allowDrag = value;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/** Sets or gets the animation mode. Animation is disabled when the property is set to 'none'
|
|
51
|
+
* Property type: Animation | string
|
|
52
|
+
*/
|
|
53
|
+
get animation() {
|
|
54
|
+
return this.nativeElement ? this.nativeElement.animation : undefined;
|
|
55
|
+
}
|
|
56
|
+
set animation(value) {
|
|
57
|
+
if (this.nativeElement) {
|
|
58
|
+
this.nativeElement.animation = value;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/** Describes the height for each card.
|
|
62
|
+
* Property type: number | null
|
|
63
|
+
*/
|
|
64
|
+
get cardHeight() {
|
|
65
|
+
return this.nativeElement ? this.nativeElement.cardHeight : undefined;
|
|
66
|
+
}
|
|
67
|
+
set cardHeight(value) {
|
|
68
|
+
if (this.nativeElement) {
|
|
69
|
+
this.nativeElement.cardHeight = value;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/** Describes the orientation of the card cells.
|
|
73
|
+
* Property type: Orientation | string
|
|
74
|
+
*/
|
|
75
|
+
get cellOrientation() {
|
|
76
|
+
return this.nativeElement ? this.nativeElement.cellOrientation : undefined;
|
|
77
|
+
}
|
|
78
|
+
set cellOrientation(value) {
|
|
79
|
+
if (this.nativeElement) {
|
|
80
|
+
this.nativeElement.cellOrientation = value;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/** Allows collapsing the card content.
|
|
84
|
+
* Property type: boolean
|
|
85
|
+
*/
|
|
86
|
+
get collapsible() {
|
|
87
|
+
return this.nativeElement ? this.nativeElement.collapsible : undefined;
|
|
88
|
+
}
|
|
89
|
+
set collapsible(value) {
|
|
90
|
+
if (this.nativeElement) {
|
|
91
|
+
this.nativeElement.collapsible = value;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/** Describes the columns properties:label - Sets the column namedataField - Sets the dataField nameicon - Sets the icon for the columnformatSettings - Sets the settings about the format for the current columnformatFunction - Function for customizing the value
|
|
95
|
+
* Property type: CardViewColumn[]
|
|
96
|
+
*/
|
|
97
|
+
get columns() {
|
|
98
|
+
return this.nativeElement ? this.nativeElement.columns : undefined;
|
|
99
|
+
}
|
|
100
|
+
set columns(value) {
|
|
101
|
+
if (this.nativeElement) {
|
|
102
|
+
this.nativeElement.columns = value;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/** Describes which data field to be set as cover.
|
|
106
|
+
* Property type: string
|
|
107
|
+
*/
|
|
108
|
+
get coverField() {
|
|
109
|
+
return this.nativeElement ? this.nativeElement.coverField : undefined;
|
|
110
|
+
}
|
|
111
|
+
set coverField(value) {
|
|
112
|
+
if (this.nativeElement) {
|
|
113
|
+
this.nativeElement.coverField = value;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/** Describes the cover image fit property.
|
|
117
|
+
* Property type: CardViewCoverMode | string
|
|
118
|
+
*/
|
|
119
|
+
get coverMode() {
|
|
120
|
+
return this.nativeElement ? this.nativeElement.coverMode : undefined;
|
|
121
|
+
}
|
|
122
|
+
set coverMode(value) {
|
|
123
|
+
if (this.nativeElement) {
|
|
124
|
+
this.nativeElement.coverMode = value;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
/** Determines the data source for the item that will be displayed inside the card.
|
|
128
|
+
* Property type: any
|
|
129
|
+
*/
|
|
130
|
+
get dataSource() {
|
|
131
|
+
return this.nativeElement ? this.nativeElement.dataSource : undefined;
|
|
132
|
+
}
|
|
133
|
+
set dataSource(value) {
|
|
134
|
+
if (this.nativeElement) {
|
|
135
|
+
this.nativeElement.dataSource = value;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
/** Sets the grid's data source settings when the dataSource property is set to an Array or URL.
|
|
139
|
+
* Property type: DataSourceSettings
|
|
140
|
+
*/
|
|
141
|
+
get dataSourceSettings() {
|
|
142
|
+
return this.nativeElement ? this.nativeElement.dataSourceSettings : undefined;
|
|
143
|
+
}
|
|
144
|
+
set dataSourceSettings(value) {
|
|
145
|
+
if (this.nativeElement) {
|
|
146
|
+
this.nativeElement.dataSourceSettings = value;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
/** Allows the edit option for the cards.
|
|
150
|
+
* Property type: boolean
|
|
151
|
+
*/
|
|
152
|
+
get editable() {
|
|
153
|
+
return this.nativeElement ? this.nativeElement.editable : undefined;
|
|
154
|
+
}
|
|
155
|
+
set editable(value) {
|
|
156
|
+
if (this.nativeElement) {
|
|
157
|
+
this.nativeElement.editable = value;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
/** Sets or gets the header position. The header contains the Customize, Filter, Sort, and Search buttons.
|
|
161
|
+
* Property type: CardViewHeaderPosition | string
|
|
162
|
+
*/
|
|
163
|
+
get headerPosition() {
|
|
164
|
+
return this.nativeElement ? this.nativeElement.headerPosition : undefined;
|
|
165
|
+
}
|
|
166
|
+
set headerPosition(value) {
|
|
167
|
+
if (this.nativeElement) {
|
|
168
|
+
this.nativeElement.headerPosition = value;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
/** Sets or gets the locale. Used in conjunction with the property messages.
|
|
172
|
+
* Property type: string
|
|
173
|
+
*/
|
|
174
|
+
get locale() {
|
|
175
|
+
return this.nativeElement ? this.nativeElement.locale : undefined;
|
|
176
|
+
}
|
|
177
|
+
set locale(value) {
|
|
178
|
+
if (this.nativeElement) {
|
|
179
|
+
this.nativeElement.locale = value;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
/** Sets or gets an object specifying strings used in the widget that can be localized. Used in conjunction with the property locale.
|
|
183
|
+
* Property type: any
|
|
184
|
+
*/
|
|
185
|
+
get messages() {
|
|
186
|
+
return this.nativeElement ? this.nativeElement.messages : undefined;
|
|
187
|
+
}
|
|
188
|
+
set messages(value) {
|
|
189
|
+
if (this.nativeElement) {
|
|
190
|
+
this.nativeElement.messages = value;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
/** Sets or gets the value indicating whether the element is aligned to support locales using right-to-left fonts.
|
|
194
|
+
* Property type: boolean
|
|
195
|
+
*/
|
|
196
|
+
get rightToLeft() {
|
|
197
|
+
return this.nativeElement ? this.nativeElement.rightToLeft : undefined;
|
|
198
|
+
}
|
|
199
|
+
set rightToLeft(value) {
|
|
200
|
+
if (this.nativeElement) {
|
|
201
|
+
this.nativeElement.rightToLeft = value;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
/** Determines the theme. Theme defines the look of the element
|
|
205
|
+
* Property type: string
|
|
206
|
+
*/
|
|
207
|
+
get theme() {
|
|
208
|
+
return this.nativeElement ? this.nativeElement.theme : undefined;
|
|
209
|
+
}
|
|
210
|
+
set theme(value) {
|
|
211
|
+
if (this.nativeElement) {
|
|
212
|
+
this.nativeElement.theme = value;
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
/** Describes the scrolling behavior of the element.
|
|
216
|
+
* Property type: Scrolling | string
|
|
217
|
+
*/
|
|
218
|
+
get scrolling() {
|
|
219
|
+
return this.nativeElement ? this.nativeElement.scrolling : undefined;
|
|
220
|
+
}
|
|
221
|
+
set scrolling(value) {
|
|
222
|
+
if (this.nativeElement) {
|
|
223
|
+
this.nativeElement.scrolling = value;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
/** Describes which data field to be set as title.
|
|
227
|
+
* Property type: string
|
|
228
|
+
*/
|
|
229
|
+
get titleField() {
|
|
230
|
+
return this.nativeElement ? this.nativeElement.titleField : undefined;
|
|
231
|
+
}
|
|
232
|
+
set titleField(value) {
|
|
233
|
+
if (this.nativeElement) {
|
|
234
|
+
this.nativeElement.titleField = value;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
// Gets the properties of the React component.
|
|
238
|
+
get properties() {
|
|
239
|
+
return ["addNewButton", "allowDrag", "animation", "cardHeight", "cellOrientation", "collapsible", "columns", "coverField", "coverMode", "dataSource", "dataSourceSettings", "editable", "headerPosition", "locale", "messages", "rightToLeft", "theme", "scrolling", "titleField"];
|
|
240
|
+
}
|
|
241
|
+
// Gets the events of the React component.
|
|
242
|
+
get eventListeners() {
|
|
243
|
+
return ["onFilter", "onSort", "onOpen", "onOpening", "onClose", "onClosing", "onDragStart", "onDragging", "onDragEnd", "onCreate", "onReady"];
|
|
244
|
+
}
|
|
245
|
+
/** Adds filtering
|
|
246
|
+
* @param {string[]} filters. Filter information
|
|
247
|
+
* @param {string} operator?. Logical operator between the filters of different fields
|
|
248
|
+
*/
|
|
249
|
+
addFilter(filters, operator) {
|
|
250
|
+
if (this.nativeElement.isRendered) {
|
|
251
|
+
this.nativeElement.addFilter(filters, operator);
|
|
252
|
+
}
|
|
253
|
+
else {
|
|
254
|
+
this.nativeElement.whenRendered(() => {
|
|
255
|
+
this.nativeElement.addFilter(filters, operator);
|
|
256
|
+
});
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
/** Adds a new record
|
|
260
|
+
* @param {number | string} recordId?. The id of the record to add
|
|
261
|
+
* @param {any} data?. The data of the record to add
|
|
262
|
+
* @param {string} position?. The position to add the record to. Possible values: 'first' and 'last'.
|
|
263
|
+
*/
|
|
264
|
+
addRecord(recordId, data, position) {
|
|
265
|
+
if (this.nativeElement.isRendered) {
|
|
266
|
+
this.nativeElement.addRecord(recordId, data, position);
|
|
267
|
+
}
|
|
268
|
+
else {
|
|
269
|
+
this.nativeElement.whenRendered(() => {
|
|
270
|
+
this.nativeElement.addRecord(recordId, data, position);
|
|
271
|
+
});
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
/** Adds sorting
|
|
275
|
+
* @param {[] | string} dataFields. The data field(s) to sort by
|
|
276
|
+
* @param {[] | string} orderBy. The sort direction(s) to sort the data field(s) by
|
|
277
|
+
*/
|
|
278
|
+
addSort(dataFields, orderBy) {
|
|
279
|
+
if (this.nativeElement.isRendered) {
|
|
280
|
+
this.nativeElement.addSort(dataFields, orderBy);
|
|
281
|
+
}
|
|
282
|
+
else {
|
|
283
|
+
this.nativeElement.whenRendered(() => {
|
|
284
|
+
this.nativeElement.addSort(dataFields, orderBy);
|
|
285
|
+
});
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
/** Begins an edit operation
|
|
289
|
+
* @param {number | string} recordId. The id of the record to edit
|
|
290
|
+
*/
|
|
291
|
+
beginEdit(recordId) {
|
|
292
|
+
if (this.nativeElement.isRendered) {
|
|
293
|
+
this.nativeElement.beginEdit(recordId);
|
|
294
|
+
}
|
|
295
|
+
else {
|
|
296
|
+
this.nativeElement.whenRendered(() => {
|
|
297
|
+
this.nativeElement.beginEdit(recordId);
|
|
298
|
+
});
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
/** Ends the current edit operation and discards changes
|
|
302
|
+
*/
|
|
303
|
+
cancelEdit() {
|
|
304
|
+
if (this.nativeElement.isRendered) {
|
|
305
|
+
this.nativeElement.cancelEdit();
|
|
306
|
+
}
|
|
307
|
+
else {
|
|
308
|
+
this.nativeElement.whenRendered(() => {
|
|
309
|
+
this.nativeElement.cancelEdit();
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
/** Closes any open header panel (drop down)
|
|
314
|
+
*/
|
|
315
|
+
closePanel() {
|
|
316
|
+
if (this.nativeElement.isRendered) {
|
|
317
|
+
this.nativeElement.closePanel();
|
|
318
|
+
}
|
|
319
|
+
else {
|
|
320
|
+
this.nativeElement.whenRendered(() => {
|
|
321
|
+
this.nativeElement.closePanel();
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
/** Ends the current edit operation and saves changes
|
|
326
|
+
*/
|
|
327
|
+
endEdit() {
|
|
328
|
+
if (this.nativeElement.isRendered) {
|
|
329
|
+
this.nativeElement.endEdit();
|
|
330
|
+
}
|
|
331
|
+
else {
|
|
332
|
+
this.nativeElement.whenRendered(() => {
|
|
333
|
+
this.nativeElement.endEdit();
|
|
334
|
+
});
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
/** Makes sure a record is visible by scrolling to it. If succcessful, the method returns the HTML element of the record's card.
|
|
338
|
+
* @param {number | string} recordId. The id of the record to scroll to
|
|
339
|
+
* @returns {HTMLElement}
|
|
340
|
+
*/
|
|
341
|
+
ensureVisible(recordId) {
|
|
342
|
+
const result = this.nativeElement.ensureVisible(recordId);
|
|
343
|
+
return result;
|
|
344
|
+
}
|
|
345
|
+
/** Opens the "Customize cards" header panel (drop down)
|
|
346
|
+
*/
|
|
347
|
+
openCustomizePanel() {
|
|
348
|
+
if (this.nativeElement.isRendered) {
|
|
349
|
+
this.nativeElement.openCustomizePanel();
|
|
350
|
+
}
|
|
351
|
+
else {
|
|
352
|
+
this.nativeElement.whenRendered(() => {
|
|
353
|
+
this.nativeElement.openCustomizePanel();
|
|
354
|
+
});
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
/** Opens the "Filter" header panel (drop down)
|
|
358
|
+
*/
|
|
359
|
+
openFilterPanel() {
|
|
360
|
+
if (this.nativeElement.isRendered) {
|
|
361
|
+
this.nativeElement.openFilterPanel();
|
|
362
|
+
}
|
|
363
|
+
else {
|
|
364
|
+
this.nativeElement.whenRendered(() => {
|
|
365
|
+
this.nativeElement.openFilterPanel();
|
|
366
|
+
});
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
/** Opens the "Sort" header panel (drop down)
|
|
370
|
+
*/
|
|
371
|
+
openSortPanel() {
|
|
372
|
+
if (this.nativeElement.isRendered) {
|
|
373
|
+
this.nativeElement.openSortPanel();
|
|
374
|
+
}
|
|
375
|
+
else {
|
|
376
|
+
this.nativeElement.whenRendered(() => {
|
|
377
|
+
this.nativeElement.openSortPanel();
|
|
378
|
+
});
|
|
379
|
+
}
|
|
380
|
+
}
|
|
381
|
+
/** Removes filtering
|
|
382
|
+
*/
|
|
383
|
+
removeFilter() {
|
|
384
|
+
if (this.nativeElement.isRendered) {
|
|
385
|
+
this.nativeElement.removeFilter();
|
|
386
|
+
}
|
|
387
|
+
else {
|
|
388
|
+
this.nativeElement.whenRendered(() => {
|
|
389
|
+
this.nativeElement.removeFilter();
|
|
390
|
+
});
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
/** Removes a record
|
|
394
|
+
* @param {number | string} recordId. The id of the record to remove
|
|
395
|
+
*/
|
|
396
|
+
removeRecord(recordId) {
|
|
397
|
+
if (this.nativeElement.isRendered) {
|
|
398
|
+
this.nativeElement.removeRecord(recordId);
|
|
399
|
+
}
|
|
400
|
+
else {
|
|
401
|
+
this.nativeElement.whenRendered(() => {
|
|
402
|
+
this.nativeElement.removeRecord(recordId);
|
|
403
|
+
});
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
/** Removes sorting
|
|
407
|
+
*/
|
|
408
|
+
removeSort() {
|
|
409
|
+
if (this.nativeElement.isRendered) {
|
|
410
|
+
this.nativeElement.removeSort();
|
|
411
|
+
}
|
|
412
|
+
else {
|
|
413
|
+
this.nativeElement.whenRendered(() => {
|
|
414
|
+
this.nativeElement.removeSort();
|
|
415
|
+
});
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
/** Shows a column
|
|
419
|
+
* @param {string} dataField. The data field of the column
|
|
420
|
+
*/
|
|
421
|
+
showColumn(dataField) {
|
|
422
|
+
if (this.nativeElement.isRendered) {
|
|
423
|
+
this.nativeElement.showColumn(dataField);
|
|
424
|
+
}
|
|
425
|
+
else {
|
|
426
|
+
this.nativeElement.whenRendered(() => {
|
|
427
|
+
this.nativeElement.showColumn(dataField);
|
|
428
|
+
});
|
|
429
|
+
}
|
|
430
|
+
}
|
|
431
|
+
componentDidRender(initialize) {
|
|
432
|
+
const that = this;
|
|
433
|
+
const props = {};
|
|
434
|
+
const events = {};
|
|
435
|
+
let styles = null;
|
|
436
|
+
for (let prop in that.props) {
|
|
437
|
+
if (prop === 'children') {
|
|
438
|
+
continue;
|
|
439
|
+
}
|
|
440
|
+
if (prop === 'style') {
|
|
441
|
+
styles = that.props[prop];
|
|
442
|
+
continue;
|
|
443
|
+
}
|
|
444
|
+
if (prop.startsWith('on') && that.properties.indexOf(prop) === -1) {
|
|
445
|
+
events[prop] = that.props[prop];
|
|
446
|
+
continue;
|
|
447
|
+
}
|
|
448
|
+
props[prop] = that.props[prop];
|
|
449
|
+
}
|
|
450
|
+
if (initialize) {
|
|
451
|
+
that.nativeElement = this.componentRef.current;
|
|
452
|
+
}
|
|
453
|
+
for (let prop in props) {
|
|
454
|
+
if (prop === 'class' || prop === 'className') {
|
|
455
|
+
const classNames = props[prop].trim().split(' ');
|
|
456
|
+
for (let className in classNames) {
|
|
457
|
+
if (!that.nativeElement.classList.contains(classNames[className]) && classNames[className] !== "") {
|
|
458
|
+
that.nativeElement.classList.add(classNames[className]);
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
continue;
|
|
462
|
+
}
|
|
463
|
+
if (props[prop] !== that.nativeElement[prop]) {
|
|
464
|
+
const normalizeProp = (str) => {
|
|
465
|
+
return str.replace(/-([a-z])/g, function (g) {
|
|
466
|
+
return g[1].toUpperCase();
|
|
467
|
+
});
|
|
468
|
+
};
|
|
469
|
+
if (prop === 'hover' || prop === 'active' || prop === 'focus' || prop === 'selected') {
|
|
470
|
+
that.nativeElement.setAttribute(prop, '');
|
|
471
|
+
}
|
|
472
|
+
const normalizedProp = normalizeProp(prop);
|
|
473
|
+
that.nativeElement[normalizedProp] = props[prop];
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
for (let eventName in events) {
|
|
477
|
+
that[eventName] = events[eventName];
|
|
478
|
+
that.nativeElement[eventName.toLowerCase()] = events[eventName];
|
|
479
|
+
}
|
|
480
|
+
if (initialize) {
|
|
481
|
+
Smart.Render();
|
|
482
|
+
if (that.onCreate) {
|
|
483
|
+
that.onCreate();
|
|
484
|
+
}
|
|
485
|
+
that.nativeElement.whenRendered(() => {
|
|
486
|
+
if (that.onReady) {
|
|
487
|
+
that.onReady();
|
|
488
|
+
}
|
|
489
|
+
});
|
|
490
|
+
}
|
|
491
|
+
// setup styles.
|
|
492
|
+
if (styles) {
|
|
493
|
+
for (let styleName in styles) {
|
|
494
|
+
that.nativeElement.style[styleName] = styles[styleName];
|
|
495
|
+
}
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
componentDidMount() {
|
|
499
|
+
this.componentDidRender(true);
|
|
500
|
+
}
|
|
501
|
+
componentDidUpdate() {
|
|
502
|
+
this.componentDidRender(false);
|
|
503
|
+
}
|
|
504
|
+
componentWillUnmount() {
|
|
505
|
+
const that = this;
|
|
506
|
+
if (!that.nativeElement) {
|
|
507
|
+
return;
|
|
508
|
+
}
|
|
509
|
+
that.nativeElement.whenRenderedCallbacks = [];
|
|
510
|
+
for (let i = 0; i < that.eventListeners.length; i++) {
|
|
511
|
+
const eventName = that.eventListeners[i];
|
|
512
|
+
that.nativeElement.removeEventListener(eventName.substring(2).toLowerCase(), that[eventName]);
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
render() {
|
|
516
|
+
return (React.createElement("smart-card-view", { ref: this.componentRef }, this.props.children));
|
|
517
|
+
}
|
|
518
|
+
}
|
|
36
519
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
*/
|
|
41
|
-
class CardView extends React.Component {
|
|
42
|
-
constructor(props) {
|
|
43
|
-
super(props);
|
|
44
|
-
this.componentRef = React.createRef();
|
|
45
|
-
}
|
|
46
|
-
// Gets the id of the React component.
|
|
47
|
-
get id() {
|
|
48
|
-
if (!this._id) {
|
|
49
|
-
this._id = 'CardView' + Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
|
|
50
|
-
}
|
|
51
|
-
return this._id;
|
|
52
|
-
}
|
|
53
|
-
/** Toggles the button for adding new cards.
|
|
54
|
-
* Property type: boolean
|
|
55
|
-
*/
|
|
56
|
-
get addNewButton() {
|
|
57
|
-
return this.nativeElement ? this.nativeElement.addNewButton : undefined;
|
|
58
|
-
}
|
|
59
|
-
set addNewButton(value) {
|
|
60
|
-
if (this.nativeElement) {
|
|
61
|
-
this.nativeElement.addNewButton = value;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
/** Allows reordering by dragging cards.
|
|
65
|
-
* Property type: boolean
|
|
66
|
-
*/
|
|
67
|
-
get allowDrag() {
|
|
68
|
-
return this.nativeElement ? this.nativeElement.allowDrag : undefined;
|
|
69
|
-
}
|
|
70
|
-
set allowDrag(value) {
|
|
71
|
-
if (this.nativeElement) {
|
|
72
|
-
this.nativeElement.allowDrag = value;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
/** Sets or gets the animation mode. Animation is disabled when the property is set to 'none'
|
|
76
|
-
* Property type: Animation | string
|
|
77
|
-
*/
|
|
78
|
-
get animation() {
|
|
79
|
-
return this.nativeElement ? this.nativeElement.animation : undefined;
|
|
80
|
-
}
|
|
81
|
-
set animation(value) {
|
|
82
|
-
if (this.nativeElement) {
|
|
83
|
-
this.nativeElement.animation = value;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
/** Describes the height for each card.
|
|
87
|
-
* Property type: number | null
|
|
88
|
-
*/
|
|
89
|
-
get cardHeight() {
|
|
90
|
-
return this.nativeElement ? this.nativeElement.cardHeight : undefined;
|
|
91
|
-
}
|
|
92
|
-
set cardHeight(value) {
|
|
93
|
-
if (this.nativeElement) {
|
|
94
|
-
this.nativeElement.cardHeight = value;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
/** Describes the orientation of the card cells.
|
|
98
|
-
* Property type: Orientation | string
|
|
99
|
-
*/
|
|
100
|
-
get cellOrientation() {
|
|
101
|
-
return this.nativeElement ? this.nativeElement.cellOrientation : undefined;
|
|
102
|
-
}
|
|
103
|
-
set cellOrientation(value) {
|
|
104
|
-
if (this.nativeElement) {
|
|
105
|
-
this.nativeElement.cellOrientation = value;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
/** Allows collapsing the card content.
|
|
109
|
-
* Property type: boolean
|
|
110
|
-
*/
|
|
111
|
-
get collapsible() {
|
|
112
|
-
return this.nativeElement ? this.nativeElement.collapsible : undefined;
|
|
113
|
-
}
|
|
114
|
-
set collapsible(value) {
|
|
115
|
-
if (this.nativeElement) {
|
|
116
|
-
this.nativeElement.collapsible = value;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
/** Describes the columns properties:label - Sets the column namedataField - Sets the dataField nameicon - Sets the icon for the columnformatSettings - Sets the settings about the format for the current columnformatFunction - Function for customizing the value
|
|
120
|
-
* Property type: CardViewColumn[]
|
|
121
|
-
*/
|
|
122
|
-
get columns() {
|
|
123
|
-
return this.nativeElement ? this.nativeElement.columns : undefined;
|
|
124
|
-
}
|
|
125
|
-
set columns(value) {
|
|
126
|
-
if (this.nativeElement) {
|
|
127
|
-
this.nativeElement.columns = value;
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
/** Describes which data field to be set as cover.
|
|
131
|
-
* Property type: string
|
|
132
|
-
*/
|
|
133
|
-
get coverField() {
|
|
134
|
-
return this.nativeElement ? this.nativeElement.coverField : undefined;
|
|
135
|
-
}
|
|
136
|
-
set coverField(value) {
|
|
137
|
-
if (this.nativeElement) {
|
|
138
|
-
this.nativeElement.coverField = value;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
/** Describes the cover image fit property.
|
|
142
|
-
* Property type: CardViewCoverMode | string
|
|
143
|
-
*/
|
|
144
|
-
get coverMode() {
|
|
145
|
-
return this.nativeElement ? this.nativeElement.coverMode : undefined;
|
|
146
|
-
}
|
|
147
|
-
set coverMode(value) {
|
|
148
|
-
if (this.nativeElement) {
|
|
149
|
-
this.nativeElement.coverMode = value;
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
/** Determines the data source for the item that will be displayed inside the card.
|
|
153
|
-
* Property type: any
|
|
154
|
-
*/
|
|
155
|
-
get dataSource() {
|
|
156
|
-
return this.nativeElement ? this.nativeElement.dataSource : undefined;
|
|
157
|
-
}
|
|
158
|
-
set dataSource(value) {
|
|
159
|
-
if (this.nativeElement) {
|
|
160
|
-
this.nativeElement.dataSource = value;
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
/** Sets the grid's data source settings when the dataSource property is set to an Array or URL.
|
|
164
|
-
* Property type: DataSourceSettings
|
|
165
|
-
*/
|
|
166
|
-
get dataSourceSettings() {
|
|
167
|
-
return this.nativeElement ? this.nativeElement.dataSourceSettings : undefined;
|
|
168
|
-
}
|
|
169
|
-
set dataSourceSettings(value) {
|
|
170
|
-
if (this.nativeElement) {
|
|
171
|
-
this.nativeElement.dataSourceSettings = value;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
/** Allows the edit option for the cards.
|
|
175
|
-
* Property type: boolean
|
|
176
|
-
*/
|
|
177
|
-
get editable() {
|
|
178
|
-
return this.nativeElement ? this.nativeElement.editable : undefined;
|
|
179
|
-
}
|
|
180
|
-
set editable(value) {
|
|
181
|
-
if (this.nativeElement) {
|
|
182
|
-
this.nativeElement.editable = value;
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
/** Sets or gets the header position. The header contains the Customize, Filter, Sort, and Search buttons.
|
|
186
|
-
* Property type: CardViewHeaderPosition | string
|
|
187
|
-
*/
|
|
188
|
-
get headerPosition() {
|
|
189
|
-
return this.nativeElement ? this.nativeElement.headerPosition : undefined;
|
|
190
|
-
}
|
|
191
|
-
set headerPosition(value) {
|
|
192
|
-
if (this.nativeElement) {
|
|
193
|
-
this.nativeElement.headerPosition = value;
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
/** Sets or gets the locale. Used in conjunction with the property messages.
|
|
197
|
-
* Property type: string
|
|
198
|
-
*/
|
|
199
|
-
get locale() {
|
|
200
|
-
return this.nativeElement ? this.nativeElement.locale : undefined;
|
|
201
|
-
}
|
|
202
|
-
set locale(value) {
|
|
203
|
-
if (this.nativeElement) {
|
|
204
|
-
this.nativeElement.locale = value;
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
/** Sets or gets an object specifying strings used in the widget that can be localized. Used in conjunction with the property locale.
|
|
208
|
-
* Property type: any
|
|
209
|
-
*/
|
|
210
|
-
get messages() {
|
|
211
|
-
return this.nativeElement ? this.nativeElement.messages : undefined;
|
|
212
|
-
}
|
|
213
|
-
set messages(value) {
|
|
214
|
-
if (this.nativeElement) {
|
|
215
|
-
this.nativeElement.messages = value;
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
/** Sets or gets the value indicating whether the element is aligned to support locales using right-to-left fonts.
|
|
219
|
-
* Property type: boolean
|
|
220
|
-
*/
|
|
221
|
-
get rightToLeft() {
|
|
222
|
-
return this.nativeElement ? this.nativeElement.rightToLeft : undefined;
|
|
223
|
-
}
|
|
224
|
-
set rightToLeft(value) {
|
|
225
|
-
if (this.nativeElement) {
|
|
226
|
-
this.nativeElement.rightToLeft = value;
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
/** Determines the theme. Theme defines the look of the element
|
|
230
|
-
* Property type: string
|
|
231
|
-
*/
|
|
232
|
-
get theme() {
|
|
233
|
-
return this.nativeElement ? this.nativeElement.theme : undefined;
|
|
234
|
-
}
|
|
235
|
-
set theme(value) {
|
|
236
|
-
if (this.nativeElement) {
|
|
237
|
-
this.nativeElement.theme = value;
|
|
238
|
-
}
|
|
239
|
-
}
|
|
240
|
-
/** Describes the scrolling behavior of the element.
|
|
241
|
-
* Property type: Scrolling | string
|
|
242
|
-
*/
|
|
243
|
-
get scrolling() {
|
|
244
|
-
return this.nativeElement ? this.nativeElement.scrolling : undefined;
|
|
245
|
-
}
|
|
246
|
-
set scrolling(value) {
|
|
247
|
-
if (this.nativeElement) {
|
|
248
|
-
this.nativeElement.scrolling = value;
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
/** Describes which data field to be set as title.
|
|
252
|
-
* Property type: string
|
|
253
|
-
*/
|
|
254
|
-
get titleField() {
|
|
255
|
-
return this.nativeElement ? this.nativeElement.titleField : undefined;
|
|
256
|
-
}
|
|
257
|
-
set titleField(value) {
|
|
258
|
-
if (this.nativeElement) {
|
|
259
|
-
this.nativeElement.titleField = value;
|
|
260
|
-
}
|
|
261
|
-
}
|
|
262
|
-
// Gets the properties of the React component.
|
|
263
|
-
get properties() {
|
|
264
|
-
return ["addNewButton", "allowDrag", "animation", "cardHeight", "cellOrientation", "collapsible", "columns", "coverField", "coverMode", "dataSource", "dataSourceSettings", "editable", "headerPosition", "locale", "messages", "rightToLeft", "theme", "scrolling", "titleField"];
|
|
265
|
-
}
|
|
266
|
-
// Gets the events of the React component.
|
|
267
|
-
get eventListeners() {
|
|
268
|
-
return ["onFilter", "onSort", "onOpen", "onOpening", "onClose", "onClosing", "onDragStart", "onDragging", "onDragEnd", "onCreate", "onReady"];
|
|
269
|
-
}
|
|
270
|
-
/** Adds filtering
|
|
271
|
-
* @param {string[]} filters. Filter information
|
|
272
|
-
* @param {string} operator?. Logical operator between the filters of different fields
|
|
273
|
-
*/
|
|
274
|
-
addFilter(filters, operator) {
|
|
275
|
-
if (this.nativeElement.isRendered) {
|
|
276
|
-
this.nativeElement.addFilter(filters, operator);
|
|
277
|
-
}
|
|
278
|
-
else {
|
|
279
|
-
this.nativeElement.whenRendered(() => {
|
|
280
|
-
this.nativeElement.addFilter(filters, operator);
|
|
281
|
-
});
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
|
-
/** Adds a new record
|
|
285
|
-
* @param {number | string} recordId?. The id of the record to add
|
|
286
|
-
* @param {any} data?. The data of the record to add
|
|
287
|
-
* @param {string} position?. The position to add the record to. Possible values: 'first' and 'last'.
|
|
288
|
-
*/
|
|
289
|
-
addRecord(recordId, data, position) {
|
|
290
|
-
if (this.nativeElement.isRendered) {
|
|
291
|
-
this.nativeElement.addRecord(recordId, data, position);
|
|
292
|
-
}
|
|
293
|
-
else {
|
|
294
|
-
this.nativeElement.whenRendered(() => {
|
|
295
|
-
this.nativeElement.addRecord(recordId, data, position);
|
|
296
|
-
});
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
/** Adds sorting
|
|
300
|
-
* @param {[] | string} dataFields. The data field(s) to sort by
|
|
301
|
-
* @param {[] | string} orderBy. The sort direction(s) to sort the data field(s) by
|
|
302
|
-
*/
|
|
303
|
-
addSort(dataFields, orderBy) {
|
|
304
|
-
if (this.nativeElement.isRendered) {
|
|
305
|
-
this.nativeElement.addSort(dataFields, orderBy);
|
|
306
|
-
}
|
|
307
|
-
else {
|
|
308
|
-
this.nativeElement.whenRendered(() => {
|
|
309
|
-
this.nativeElement.addSort(dataFields, orderBy);
|
|
310
|
-
});
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
/** Begins an edit operation
|
|
314
|
-
* @param {number | string} recordId. The id of the record to edit
|
|
315
|
-
*/
|
|
316
|
-
beginEdit(recordId) {
|
|
317
|
-
if (this.nativeElement.isRendered) {
|
|
318
|
-
this.nativeElement.beginEdit(recordId);
|
|
319
|
-
}
|
|
320
|
-
else {
|
|
321
|
-
this.nativeElement.whenRendered(() => {
|
|
322
|
-
this.nativeElement.beginEdit(recordId);
|
|
323
|
-
});
|
|
324
|
-
}
|
|
325
|
-
}
|
|
326
|
-
/** Ends the current edit operation and discards changes
|
|
327
|
-
*/
|
|
328
|
-
cancelEdit() {
|
|
329
|
-
if (this.nativeElement.isRendered) {
|
|
330
|
-
this.nativeElement.cancelEdit();
|
|
331
|
-
}
|
|
332
|
-
else {
|
|
333
|
-
this.nativeElement.whenRendered(() => {
|
|
334
|
-
this.nativeElement.cancelEdit();
|
|
335
|
-
});
|
|
336
|
-
}
|
|
337
|
-
}
|
|
338
|
-
/** Closes any open header panel (drop down)
|
|
339
|
-
*/
|
|
340
|
-
closePanel() {
|
|
341
|
-
if (this.nativeElement.isRendered) {
|
|
342
|
-
this.nativeElement.closePanel();
|
|
343
|
-
}
|
|
344
|
-
else {
|
|
345
|
-
this.nativeElement.whenRendered(() => {
|
|
346
|
-
this.nativeElement.closePanel();
|
|
347
|
-
});
|
|
348
|
-
}
|
|
349
|
-
}
|
|
350
|
-
/** Ends the current edit operation and saves changes
|
|
351
|
-
*/
|
|
352
|
-
endEdit() {
|
|
353
|
-
if (this.nativeElement.isRendered) {
|
|
354
|
-
this.nativeElement.endEdit();
|
|
355
|
-
}
|
|
356
|
-
else {
|
|
357
|
-
this.nativeElement.whenRendered(() => {
|
|
358
|
-
this.nativeElement.endEdit();
|
|
359
|
-
});
|
|
360
|
-
}
|
|
361
|
-
}
|
|
362
|
-
/** Makes sure a record is visible by scrolling to it. If succcessful, the method returns the HTML element of the record's card.
|
|
363
|
-
* @param {number | string} recordId. The id of the record to scroll to
|
|
364
|
-
* @returns {HTMLElement}
|
|
365
|
-
*/
|
|
366
|
-
ensureVisible(recordId) {
|
|
367
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
368
|
-
const getResultOnRender = () => {
|
|
369
|
-
return new Promise(resolve => {
|
|
370
|
-
this.nativeElement.whenRendered(() => {
|
|
371
|
-
const result = this.nativeElement.ensureVisible(recordId);
|
|
372
|
-
resolve(result);
|
|
373
|
-
});
|
|
374
|
-
});
|
|
375
|
-
};
|
|
376
|
-
const result = yield getResultOnRender();
|
|
377
|
-
return result;
|
|
378
|
-
});
|
|
379
|
-
}
|
|
380
|
-
/** Opens the "Customize cards" header panel (drop down)
|
|
381
|
-
*/
|
|
382
|
-
openCustomizePanel() {
|
|
383
|
-
if (this.nativeElement.isRendered) {
|
|
384
|
-
this.nativeElement.openCustomizePanel();
|
|
385
|
-
}
|
|
386
|
-
else {
|
|
387
|
-
this.nativeElement.whenRendered(() => {
|
|
388
|
-
this.nativeElement.openCustomizePanel();
|
|
389
|
-
});
|
|
390
|
-
}
|
|
391
|
-
}
|
|
392
|
-
/** Opens the "Filter" header panel (drop down)
|
|
393
|
-
*/
|
|
394
|
-
openFilterPanel() {
|
|
395
|
-
if (this.nativeElement.isRendered) {
|
|
396
|
-
this.nativeElement.openFilterPanel();
|
|
397
|
-
}
|
|
398
|
-
else {
|
|
399
|
-
this.nativeElement.whenRendered(() => {
|
|
400
|
-
this.nativeElement.openFilterPanel();
|
|
401
|
-
});
|
|
402
|
-
}
|
|
403
|
-
}
|
|
404
|
-
/** Opens the "Sort" header panel (drop down)
|
|
405
|
-
*/
|
|
406
|
-
openSortPanel() {
|
|
407
|
-
if (this.nativeElement.isRendered) {
|
|
408
|
-
this.nativeElement.openSortPanel();
|
|
409
|
-
}
|
|
410
|
-
else {
|
|
411
|
-
this.nativeElement.whenRendered(() => {
|
|
412
|
-
this.nativeElement.openSortPanel();
|
|
413
|
-
});
|
|
414
|
-
}
|
|
415
|
-
}
|
|
416
|
-
/** Removes filtering
|
|
417
|
-
*/
|
|
418
|
-
removeFilter() {
|
|
419
|
-
if (this.nativeElement.isRendered) {
|
|
420
|
-
this.nativeElement.removeFilter();
|
|
421
|
-
}
|
|
422
|
-
else {
|
|
423
|
-
this.nativeElement.whenRendered(() => {
|
|
424
|
-
this.nativeElement.removeFilter();
|
|
425
|
-
});
|
|
426
|
-
}
|
|
427
|
-
}
|
|
428
|
-
/** Removes a record
|
|
429
|
-
* @param {number | string} recordId. The id of the record to remove
|
|
430
|
-
*/
|
|
431
|
-
removeRecord(recordId) {
|
|
432
|
-
if (this.nativeElement.isRendered) {
|
|
433
|
-
this.nativeElement.removeRecord(recordId);
|
|
434
|
-
}
|
|
435
|
-
else {
|
|
436
|
-
this.nativeElement.whenRendered(() => {
|
|
437
|
-
this.nativeElement.removeRecord(recordId);
|
|
438
|
-
});
|
|
439
|
-
}
|
|
440
|
-
}
|
|
441
|
-
/** Removes sorting
|
|
442
|
-
*/
|
|
443
|
-
removeSort() {
|
|
444
|
-
if (this.nativeElement.isRendered) {
|
|
445
|
-
this.nativeElement.removeSort();
|
|
446
|
-
}
|
|
447
|
-
else {
|
|
448
|
-
this.nativeElement.whenRendered(() => {
|
|
449
|
-
this.nativeElement.removeSort();
|
|
450
|
-
});
|
|
451
|
-
}
|
|
452
|
-
}
|
|
453
|
-
/** Shows a column
|
|
454
|
-
* @param {string} dataField. The data field of the column
|
|
455
|
-
*/
|
|
456
|
-
showColumn(dataField) {
|
|
457
|
-
if (this.nativeElement.isRendered) {
|
|
458
|
-
this.nativeElement.showColumn(dataField);
|
|
459
|
-
}
|
|
460
|
-
else {
|
|
461
|
-
this.nativeElement.whenRendered(() => {
|
|
462
|
-
this.nativeElement.showColumn(dataField);
|
|
463
|
-
});
|
|
464
|
-
}
|
|
465
|
-
}
|
|
466
|
-
componentDidRender(initialize) {
|
|
467
|
-
const that = this;
|
|
468
|
-
const props = {};
|
|
469
|
-
const events = {};
|
|
470
|
-
let styles = null;
|
|
471
|
-
for (let prop in that.props) {
|
|
472
|
-
if (prop === 'children') {
|
|
473
|
-
continue;
|
|
474
|
-
}
|
|
475
|
-
if (prop === 'style') {
|
|
476
|
-
styles = that.props[prop];
|
|
477
|
-
continue;
|
|
478
|
-
}
|
|
479
|
-
if (prop.startsWith('on') && that.properties.indexOf(prop) === -1) {
|
|
480
|
-
events[prop] = that.props[prop];
|
|
481
|
-
continue;
|
|
482
|
-
}
|
|
483
|
-
props[prop] = that.props[prop];
|
|
484
|
-
}
|
|
485
|
-
if (initialize) {
|
|
486
|
-
that.nativeElement = this.componentRef.current;
|
|
487
|
-
}
|
|
488
|
-
for (let prop in props) {
|
|
489
|
-
if (prop === 'class' || prop === 'className') {
|
|
490
|
-
const classNames = props[prop].trim().split(' ');
|
|
491
|
-
for (let className in classNames) {
|
|
492
|
-
if (!that.nativeElement.classList.contains(classNames[className]) && classNames[className] !== "") {
|
|
493
|
-
that.nativeElement.classList.add(classNames[className]);
|
|
494
|
-
}
|
|
495
|
-
}
|
|
496
|
-
continue;
|
|
497
|
-
}
|
|
498
|
-
if (props[prop] !== that.nativeElement[prop]) {
|
|
499
|
-
const normalizeProp = (str) => {
|
|
500
|
-
return str.replace(/-([a-z])/g, function (g) {
|
|
501
|
-
return g[1].toUpperCase();
|
|
502
|
-
});
|
|
503
|
-
};
|
|
504
|
-
if (prop === 'hover' || prop === 'active' || prop === 'focus' || prop === 'selected') {
|
|
505
|
-
that.nativeElement.setAttribute(prop, '');
|
|
506
|
-
}
|
|
507
|
-
const normalizedProp = normalizeProp(prop);
|
|
508
|
-
that.nativeElement[normalizedProp] = props[prop];
|
|
509
|
-
}
|
|
510
|
-
}
|
|
511
|
-
for (let eventName in events) {
|
|
512
|
-
that[eventName] = events[eventName];
|
|
513
|
-
that.nativeElement[eventName.toLowerCase()] = events[eventName];
|
|
514
|
-
}
|
|
515
|
-
if (initialize) {
|
|
516
|
-
Smart.Render();
|
|
517
|
-
if (that.onCreate) {
|
|
518
|
-
that.onCreate();
|
|
519
|
-
}
|
|
520
|
-
that.nativeElement.whenRendered(() => {
|
|
521
|
-
if (that.onReady) {
|
|
522
|
-
that.onReady();
|
|
523
|
-
}
|
|
524
|
-
});
|
|
525
|
-
}
|
|
526
|
-
// setup styles.
|
|
527
|
-
if (styles) {
|
|
528
|
-
for (let styleName in styles) {
|
|
529
|
-
that.nativeElement.style[styleName] = styles[styleName];
|
|
530
|
-
}
|
|
531
|
-
}
|
|
532
|
-
}
|
|
533
|
-
componentDidMount() {
|
|
534
|
-
this.componentDidRender(true);
|
|
535
|
-
}
|
|
536
|
-
componentDidUpdate() {
|
|
537
|
-
this.componentDidRender(false);
|
|
538
|
-
}
|
|
539
|
-
componentWillUnmount() {
|
|
540
|
-
const that = this;
|
|
541
|
-
if (!that.nativeElement) {
|
|
542
|
-
return;
|
|
543
|
-
}
|
|
544
|
-
that.nativeElement.whenRenderedCallbacks = [];
|
|
545
|
-
for (let i = 0; i < that.eventListeners.length; i++) {
|
|
546
|
-
const eventName = that.eventListeners[i];
|
|
547
|
-
that.nativeElement.removeEventListener(eventName.substring(2).toLowerCase(), that[eventName]);
|
|
548
|
-
}
|
|
549
|
-
}
|
|
550
|
-
render() {
|
|
551
|
-
return (React.createElement("smart-card-view", { ref: this.componentRef }, this.props.children));
|
|
552
|
-
}
|
|
553
|
-
}
|
|
520
|
+
exports.Smart = Smart;
|
|
521
|
+
exports.CardView = CardView;
|
|
522
|
+
exports.default = CardView;
|
|
554
523
|
|
|
555
|
-
|
|
556
|
-
exports.CardView = CardView;
|
|
557
|
-
exports.default = CardView;
|
|
558
|
-
|
|
559
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
524
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
560
525
|
|
|
561
526
|
})));
|