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
|
@@ -2,461 +2,396 @@
|
|
|
2
2
|
require('../source/modules/smart.phoneinput');
|
|
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.phoneinput = {}),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
|
+
The Phone Input specifies an input field where the user can enter and validate a phone number.
|
|
15
|
+
*/
|
|
16
|
+
class PhoneInput 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 = 'PhoneInput' + Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
|
|
25
|
+
}
|
|
26
|
+
return this._id;
|
|
27
|
+
}
|
|
28
|
+
/** Enables or disables the element.
|
|
29
|
+
* Property type: boolean
|
|
30
|
+
*/
|
|
31
|
+
get disabled() {
|
|
32
|
+
return this.nativeElement ? this.nativeElement.disabled : undefined;
|
|
33
|
+
}
|
|
34
|
+
set disabled(value) {
|
|
35
|
+
if (this.nativeElement) {
|
|
36
|
+
this.nativeElement.disabled = value;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
/** Sets additional class names to the Input drop down.
|
|
40
|
+
* Property type: any
|
|
41
|
+
*/
|
|
42
|
+
get dropDownClassList() {
|
|
43
|
+
return this.nativeElement ? this.nativeElement.dropDownClassList : undefined;
|
|
44
|
+
}
|
|
45
|
+
set dropDownClassList(value) {
|
|
46
|
+
if (this.nativeElement) {
|
|
47
|
+
this.nativeElement.dropDownClassList = value;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
/** Determines the position of the drop down button.
|
|
51
|
+
* Property type: DropDownButtonPosition | string
|
|
52
|
+
*/
|
|
53
|
+
get dropDownButtonPosition() {
|
|
54
|
+
return this.nativeElement ? this.nativeElement.dropDownButtonPosition : undefined;
|
|
55
|
+
}
|
|
56
|
+
set dropDownButtonPosition(value) {
|
|
57
|
+
if (this.nativeElement) {
|
|
58
|
+
this.nativeElement.dropDownButtonPosition = value;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/** Sets the height of the drop down. By default it's set to an empty string. In this case the height of the drop down is controlled by a CSS variable.
|
|
62
|
+
* Property type: string | number
|
|
63
|
+
*/
|
|
64
|
+
get dropDownHeight() {
|
|
65
|
+
return this.nativeElement ? this.nativeElement.dropDownHeight : undefined;
|
|
66
|
+
}
|
|
67
|
+
set dropDownHeight(value) {
|
|
68
|
+
if (this.nativeElement) {
|
|
69
|
+
this.nativeElement.dropDownHeight = value;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
/** Sets the width of the drop down. By default it's set to an empty string. In this case the width of the drop down is controlled by a CSS variable.
|
|
73
|
+
* Property type: string | number
|
|
74
|
+
*/
|
|
75
|
+
get dropDownWidth() {
|
|
76
|
+
return this.nativeElement ? this.nativeElement.dropDownWidth : undefined;
|
|
77
|
+
}
|
|
78
|
+
set dropDownWidth(value) {
|
|
79
|
+
if (this.nativeElement) {
|
|
80
|
+
this.nativeElement.dropDownWidth = value;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
/** Sets or gets an object specifying strings used in the widget that can be localized. Used in conjunction with the property locale.
|
|
84
|
+
* Property type: any
|
|
85
|
+
*/
|
|
86
|
+
get messages() {
|
|
87
|
+
return this.nativeElement ? this.nativeElement.messages : undefined;
|
|
88
|
+
}
|
|
89
|
+
set messages(value) {
|
|
90
|
+
if (this.nativeElement) {
|
|
91
|
+
this.nativeElement.messages = value;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/** Sets or gets the name attribute for the element. Name is used when submiting data inside an HTML form.
|
|
95
|
+
* Property type: string
|
|
96
|
+
*/
|
|
97
|
+
get name() {
|
|
98
|
+
return this.nativeElement ? this.nativeElement.name : undefined;
|
|
99
|
+
}
|
|
100
|
+
set name(value) {
|
|
101
|
+
if (this.nativeElement) {
|
|
102
|
+
this.nativeElement.name = value;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/** Determines whether the input will be in international or national mode i.e whether the input will start with '+'.
|
|
106
|
+
* Property type: boolean
|
|
107
|
+
*/
|
|
108
|
+
get nationalMode() {
|
|
109
|
+
return this.nativeElement ? this.nativeElement.nationalMode : undefined;
|
|
110
|
+
}
|
|
111
|
+
set nationalMode(value) {
|
|
112
|
+
if (this.nativeElement) {
|
|
113
|
+
this.nativeElement.nationalMode = value;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
/** Determines whether the drop down is opened or not.
|
|
117
|
+
* Property type: boolean
|
|
118
|
+
*/
|
|
119
|
+
get opened() {
|
|
120
|
+
return this.nativeElement ? this.nativeElement.opened : undefined;
|
|
121
|
+
}
|
|
122
|
+
set opened(value) {
|
|
123
|
+
if (this.nativeElement) {
|
|
124
|
+
this.nativeElement.opened = value;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
/** Sets or gets an array of country codes which will be used instead of the default one with all countries. The country code should be ISO 3166-1 alpha-2 codes(https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
|
|
128
|
+
* Property type: any
|
|
129
|
+
*/
|
|
130
|
+
get onlyCountries() {
|
|
131
|
+
return this.nativeElement ? this.nativeElement.onlyCountries : undefined;
|
|
132
|
+
}
|
|
133
|
+
set onlyCountries(value) {
|
|
134
|
+
if (this.nativeElement) {
|
|
135
|
+
this.nativeElement.onlyCountries = value;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
/** Determines the placeholder of the input.
|
|
139
|
+
* Property type: string
|
|
140
|
+
*/
|
|
141
|
+
get placeholder() {
|
|
142
|
+
return this.nativeElement ? this.nativeElement.placeholder : undefined;
|
|
143
|
+
}
|
|
144
|
+
set placeholder(value) {
|
|
145
|
+
if (this.nativeElement) {
|
|
146
|
+
this.nativeElement.placeholder = value;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
/** Sets or gets the selected country of the element. The country code should be ISO 3166-1 alpha-2 codes(https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
|
|
150
|
+
* Property type: string
|
|
151
|
+
*/
|
|
152
|
+
get selectedCountry() {
|
|
153
|
+
return this.nativeElement ? this.nativeElement.selectedCountry : undefined;
|
|
154
|
+
}
|
|
155
|
+
set selectedCountry(value) {
|
|
156
|
+
if (this.nativeElement) {
|
|
157
|
+
this.nativeElement.selectedCountry = value;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
/** Sets or gets the value indicating whether the element is aligned to support locales using right-to-left fonts.
|
|
161
|
+
* Property type: boolean
|
|
162
|
+
*/
|
|
163
|
+
get rightToLeft() {
|
|
164
|
+
return this.nativeElement ? this.nativeElement.rightToLeft : undefined;
|
|
165
|
+
}
|
|
166
|
+
set rightToLeft(value) {
|
|
167
|
+
if (this.nativeElement) {
|
|
168
|
+
this.nativeElement.rightToLeft = value;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
/** Determines the theme for the element. Themes define the look of the elements.
|
|
172
|
+
* Property type: string
|
|
173
|
+
*/
|
|
174
|
+
get theme() {
|
|
175
|
+
return this.nativeElement ? this.nativeElement.theme : undefined;
|
|
176
|
+
}
|
|
177
|
+
set theme(value) {
|
|
178
|
+
if (this.nativeElement) {
|
|
179
|
+
this.nativeElement.theme = value;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
/** If is set to true, the element cannot be focused.
|
|
183
|
+
* Property type: boolean
|
|
184
|
+
*/
|
|
185
|
+
get unfocusable() {
|
|
186
|
+
return this.nativeElement ? this.nativeElement.unfocusable : undefined;
|
|
187
|
+
}
|
|
188
|
+
set unfocusable(value) {
|
|
189
|
+
if (this.nativeElement) {
|
|
190
|
+
this.nativeElement.unfocusable = value;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
/** Sets or gets the value of the element.
|
|
194
|
+
* Property type: string
|
|
195
|
+
*/
|
|
196
|
+
get value() {
|
|
197
|
+
return this.nativeElement ? this.nativeElement.value : undefined;
|
|
198
|
+
}
|
|
199
|
+
set value(value) {
|
|
200
|
+
if (this.nativeElement) {
|
|
201
|
+
this.nativeElement.value = value;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
// Gets the properties of the React component.
|
|
205
|
+
get properties() {
|
|
206
|
+
return ["disabled", "dropDownClassList", "dropDownButtonPosition", "dropDownHeight", "dropDownWidth", "messages", "name", "nationalMode", "opened", "onlyCountries", "placeholder", "selectedCountry", "rightToLeft", "theme", "unfocusable", "value"];
|
|
207
|
+
}
|
|
208
|
+
// Gets the events of the React component.
|
|
209
|
+
get eventListeners() {
|
|
210
|
+
return ["onChange", "onChanging", "onItemClick", "onCreate", "onReady"];
|
|
211
|
+
}
|
|
212
|
+
/** Closes the drop down.
|
|
213
|
+
*/
|
|
214
|
+
close() {
|
|
215
|
+
if (this.nativeElement.isRendered) {
|
|
216
|
+
this.nativeElement.close();
|
|
217
|
+
}
|
|
218
|
+
else {
|
|
219
|
+
this.nativeElement.whenRendered(() => {
|
|
220
|
+
this.nativeElement.close();
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
/** Ensures that the active ( selected ) item is always visible.
|
|
225
|
+
*/
|
|
226
|
+
ensureVisible() {
|
|
227
|
+
if (this.nativeElement.isRendered) {
|
|
228
|
+
this.nativeElement.ensureVisible();
|
|
229
|
+
}
|
|
230
|
+
else {
|
|
231
|
+
this.nativeElement.whenRendered(() => {
|
|
232
|
+
this.nativeElement.ensureVisible();
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
/** Returns the entered phone number with formatting.
|
|
237
|
+
* @param {boolean} isInternational?. When you use 'false', the national phone number will be returned and the international phone number, when you use 'true' as parameter.
|
|
238
|
+
* @returns {string}
|
|
239
|
+
*/
|
|
240
|
+
getNumber(isInternational) {
|
|
241
|
+
const result = this.nativeElement.getNumber(isInternational);
|
|
242
|
+
return result;
|
|
243
|
+
}
|
|
244
|
+
/** Returns an item by its country dial code. The item is an object with 'label', 'value', 'iso2' and 'dialCode' properties.
|
|
245
|
+
* @param {string} dialCode?. Returns the national or international phone number
|
|
246
|
+
* @returns {any}
|
|
247
|
+
*/
|
|
248
|
+
getItemByDialCode(dialCode) {
|
|
249
|
+
const result = this.nativeElement.getItemByDialCode(dialCode);
|
|
250
|
+
return result;
|
|
251
|
+
}
|
|
252
|
+
/** Returns the selected item. The item is an object with 'label', 'value', 'iso2' and 'dialCode' properties.
|
|
253
|
+
* @returns {any}
|
|
254
|
+
*/
|
|
255
|
+
getSelectedItem() {
|
|
256
|
+
const result = this.nativeElement.getSelectedItem();
|
|
257
|
+
return result;
|
|
258
|
+
}
|
|
259
|
+
/** Returns true or false depending on whether the entered phone number is valid.
|
|
260
|
+
* @returns {boolean}
|
|
261
|
+
*/
|
|
262
|
+
isValidNumber() {
|
|
263
|
+
const result = this.nativeElement.isValidNumber();
|
|
264
|
+
return result;
|
|
265
|
+
}
|
|
266
|
+
/** Validates the entered phone number.
|
|
267
|
+
*/
|
|
268
|
+
validate() {
|
|
269
|
+
if (this.nativeElement.isRendered) {
|
|
270
|
+
this.nativeElement.validate();
|
|
271
|
+
}
|
|
272
|
+
else {
|
|
273
|
+
this.nativeElement.whenRendered(() => {
|
|
274
|
+
this.nativeElement.validate();
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
/** Opens the drop down.
|
|
279
|
+
*/
|
|
280
|
+
open() {
|
|
281
|
+
if (this.nativeElement.isRendered) {
|
|
282
|
+
this.nativeElement.open();
|
|
283
|
+
}
|
|
284
|
+
else {
|
|
285
|
+
this.nativeElement.whenRendered(() => {
|
|
286
|
+
this.nativeElement.open();
|
|
287
|
+
});
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
/** Selects the text inside the input or if it is readonly then the element is focused.
|
|
291
|
+
*/
|
|
292
|
+
select() {
|
|
293
|
+
if (this.nativeElement.isRendered) {
|
|
294
|
+
this.nativeElement.select();
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
this.nativeElement.whenRendered(() => {
|
|
298
|
+
this.nativeElement.select();
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
componentDidRender(initialize) {
|
|
303
|
+
const that = this;
|
|
304
|
+
const props = {};
|
|
305
|
+
const events = {};
|
|
306
|
+
let styles = null;
|
|
307
|
+
for (let prop in that.props) {
|
|
308
|
+
if (prop === 'children') {
|
|
309
|
+
continue;
|
|
310
|
+
}
|
|
311
|
+
if (prop === 'style') {
|
|
312
|
+
styles = that.props[prop];
|
|
313
|
+
continue;
|
|
314
|
+
}
|
|
315
|
+
if (prop.startsWith('on') && that.properties.indexOf(prop) === -1) {
|
|
316
|
+
events[prop] = that.props[prop];
|
|
317
|
+
continue;
|
|
318
|
+
}
|
|
319
|
+
props[prop] = that.props[prop];
|
|
320
|
+
}
|
|
321
|
+
if (initialize) {
|
|
322
|
+
that.nativeElement = this.componentRef.current;
|
|
323
|
+
}
|
|
324
|
+
for (let prop in props) {
|
|
325
|
+
if (prop === 'class' || prop === 'className') {
|
|
326
|
+
const classNames = props[prop].trim().split(' ');
|
|
327
|
+
for (let className in classNames) {
|
|
328
|
+
if (!that.nativeElement.classList.contains(classNames[className]) && classNames[className] !== "") {
|
|
329
|
+
that.nativeElement.classList.add(classNames[className]);
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
continue;
|
|
333
|
+
}
|
|
334
|
+
if (props[prop] !== that.nativeElement[prop]) {
|
|
335
|
+
const normalizeProp = (str) => {
|
|
336
|
+
return str.replace(/-([a-z])/g, function (g) {
|
|
337
|
+
return g[1].toUpperCase();
|
|
338
|
+
});
|
|
339
|
+
};
|
|
340
|
+
if (prop === 'hover' || prop === 'active' || prop === 'focus' || prop === 'selected') {
|
|
341
|
+
that.nativeElement.setAttribute(prop, '');
|
|
342
|
+
}
|
|
343
|
+
const normalizedProp = normalizeProp(prop);
|
|
344
|
+
that.nativeElement[normalizedProp] = props[prop];
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
for (let eventName in events) {
|
|
348
|
+
that[eventName] = events[eventName];
|
|
349
|
+
that.nativeElement[eventName.toLowerCase()] = events[eventName];
|
|
350
|
+
}
|
|
351
|
+
if (initialize) {
|
|
352
|
+
Smart.Render();
|
|
353
|
+
if (that.onCreate) {
|
|
354
|
+
that.onCreate();
|
|
355
|
+
}
|
|
356
|
+
that.nativeElement.whenRendered(() => {
|
|
357
|
+
if (that.onReady) {
|
|
358
|
+
that.onReady();
|
|
359
|
+
}
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
// setup styles.
|
|
363
|
+
if (styles) {
|
|
364
|
+
for (let styleName in styles) {
|
|
365
|
+
that.nativeElement.style[styleName] = styles[styleName];
|
|
366
|
+
}
|
|
367
|
+
}
|
|
368
|
+
}
|
|
369
|
+
componentDidMount() {
|
|
370
|
+
this.componentDidRender(true);
|
|
371
|
+
}
|
|
372
|
+
componentDidUpdate() {
|
|
373
|
+
this.componentDidRender(false);
|
|
374
|
+
}
|
|
375
|
+
componentWillUnmount() {
|
|
376
|
+
const that = this;
|
|
377
|
+
if (!that.nativeElement) {
|
|
378
|
+
return;
|
|
379
|
+
}
|
|
380
|
+
that.nativeElement.whenRenderedCallbacks = [];
|
|
381
|
+
for (let i = 0; i < that.eventListeners.length; i++) {
|
|
382
|
+
const eventName = that.eventListeners[i];
|
|
383
|
+
that.nativeElement.removeEventListener(eventName.substring(2).toLowerCase(), that[eventName]);
|
|
384
|
+
}
|
|
385
|
+
}
|
|
386
|
+
render() {
|
|
387
|
+
return (React.createElement("smart-phone-input", { ref: this.componentRef }, this.props.children));
|
|
388
|
+
}
|
|
389
|
+
}
|
|
36
390
|
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
*/
|
|
41
|
-
class PhoneInput 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 = 'PhoneInput' + Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1);
|
|
50
|
-
}
|
|
51
|
-
return this._id;
|
|
52
|
-
}
|
|
53
|
-
/** Enables or disables the element.
|
|
54
|
-
* Property type: boolean
|
|
55
|
-
*/
|
|
56
|
-
get disabled() {
|
|
57
|
-
return this.nativeElement ? this.nativeElement.disabled : undefined;
|
|
58
|
-
}
|
|
59
|
-
set disabled(value) {
|
|
60
|
-
if (this.nativeElement) {
|
|
61
|
-
this.nativeElement.disabled = value;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
/** Sets additional class names to the Input drop down.
|
|
65
|
-
* Property type: any
|
|
66
|
-
*/
|
|
67
|
-
get dropDownClassList() {
|
|
68
|
-
return this.nativeElement ? this.nativeElement.dropDownClassList : undefined;
|
|
69
|
-
}
|
|
70
|
-
set dropDownClassList(value) {
|
|
71
|
-
if (this.nativeElement) {
|
|
72
|
-
this.nativeElement.dropDownClassList = value;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
/** Determines the position of the drop down button.
|
|
76
|
-
* Property type: DropDownButtonPosition | string
|
|
77
|
-
*/
|
|
78
|
-
get dropDownButtonPosition() {
|
|
79
|
-
return this.nativeElement ? this.nativeElement.dropDownButtonPosition : undefined;
|
|
80
|
-
}
|
|
81
|
-
set dropDownButtonPosition(value) {
|
|
82
|
-
if (this.nativeElement) {
|
|
83
|
-
this.nativeElement.dropDownButtonPosition = value;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
/** Sets the height of the drop down. By default it's set to an empty string. In this case the height of the drop down is controlled by a CSS variable.
|
|
87
|
-
* Property type: string | number
|
|
88
|
-
*/
|
|
89
|
-
get dropDownHeight() {
|
|
90
|
-
return this.nativeElement ? this.nativeElement.dropDownHeight : undefined;
|
|
91
|
-
}
|
|
92
|
-
set dropDownHeight(value) {
|
|
93
|
-
if (this.nativeElement) {
|
|
94
|
-
this.nativeElement.dropDownHeight = value;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
/** Sets the width of the drop down. By default it's set to an empty string. In this case the width of the drop down is controlled by a CSS variable.
|
|
98
|
-
* Property type: string | number
|
|
99
|
-
*/
|
|
100
|
-
get dropDownWidth() {
|
|
101
|
-
return this.nativeElement ? this.nativeElement.dropDownWidth : undefined;
|
|
102
|
-
}
|
|
103
|
-
set dropDownWidth(value) {
|
|
104
|
-
if (this.nativeElement) {
|
|
105
|
-
this.nativeElement.dropDownWidth = value;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
/** Sets or gets an object specifying strings used in the widget that can be localized. Used in conjunction with the property locale.
|
|
109
|
-
* Property type: any
|
|
110
|
-
*/
|
|
111
|
-
get messages() {
|
|
112
|
-
return this.nativeElement ? this.nativeElement.messages : undefined;
|
|
113
|
-
}
|
|
114
|
-
set messages(value) {
|
|
115
|
-
if (this.nativeElement) {
|
|
116
|
-
this.nativeElement.messages = value;
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
/** Sets or gets the name attribute for the element. Name is used when submiting data inside an HTML form.
|
|
120
|
-
* Property type: string
|
|
121
|
-
*/
|
|
122
|
-
get name() {
|
|
123
|
-
return this.nativeElement ? this.nativeElement.name : undefined;
|
|
124
|
-
}
|
|
125
|
-
set name(value) {
|
|
126
|
-
if (this.nativeElement) {
|
|
127
|
-
this.nativeElement.name = value;
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
/** Determines whether the input will be in international or national mode i.e whether the input will start with '+'.
|
|
131
|
-
* Property type: boolean
|
|
132
|
-
*/
|
|
133
|
-
get nationalMode() {
|
|
134
|
-
return this.nativeElement ? this.nativeElement.nationalMode : undefined;
|
|
135
|
-
}
|
|
136
|
-
set nationalMode(value) {
|
|
137
|
-
if (this.nativeElement) {
|
|
138
|
-
this.nativeElement.nationalMode = value;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
/** Determines whether the drop down is opened or not.
|
|
142
|
-
* Property type: boolean
|
|
143
|
-
*/
|
|
144
|
-
get opened() {
|
|
145
|
-
return this.nativeElement ? this.nativeElement.opened : undefined;
|
|
146
|
-
}
|
|
147
|
-
set opened(value) {
|
|
148
|
-
if (this.nativeElement) {
|
|
149
|
-
this.nativeElement.opened = value;
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
/** Sets or gets an array of country codes which will be used instead of the default one with all countries. The country code should be ISO 3166-1 alpha-2 codes(https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
|
|
153
|
-
* Property type: any
|
|
154
|
-
*/
|
|
155
|
-
get onlyCountries() {
|
|
156
|
-
return this.nativeElement ? this.nativeElement.onlyCountries : undefined;
|
|
157
|
-
}
|
|
158
|
-
set onlyCountries(value) {
|
|
159
|
-
if (this.nativeElement) {
|
|
160
|
-
this.nativeElement.onlyCountries = value;
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
/** Determines the placeholder of the input.
|
|
164
|
-
* Property type: string
|
|
165
|
-
*/
|
|
166
|
-
get placeholder() {
|
|
167
|
-
return this.nativeElement ? this.nativeElement.placeholder : undefined;
|
|
168
|
-
}
|
|
169
|
-
set placeholder(value) {
|
|
170
|
-
if (this.nativeElement) {
|
|
171
|
-
this.nativeElement.placeholder = value;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
/** Sets or gets the selected country of the element. The country code should be ISO 3166-1 alpha-2 codes(https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
|
|
175
|
-
* Property type: string
|
|
176
|
-
*/
|
|
177
|
-
get selectedCountry() {
|
|
178
|
-
return this.nativeElement ? this.nativeElement.selectedCountry : undefined;
|
|
179
|
-
}
|
|
180
|
-
set selectedCountry(value) {
|
|
181
|
-
if (this.nativeElement) {
|
|
182
|
-
this.nativeElement.selectedCountry = value;
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
/** Sets or gets the value indicating whether the element is aligned to support locales using right-to-left fonts.
|
|
186
|
-
* Property type: boolean
|
|
187
|
-
*/
|
|
188
|
-
get rightToLeft() {
|
|
189
|
-
return this.nativeElement ? this.nativeElement.rightToLeft : undefined;
|
|
190
|
-
}
|
|
191
|
-
set rightToLeft(value) {
|
|
192
|
-
if (this.nativeElement) {
|
|
193
|
-
this.nativeElement.rightToLeft = value;
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
/** Determines the theme for the element. Themes define the look of the elements.
|
|
197
|
-
* Property type: string
|
|
198
|
-
*/
|
|
199
|
-
get theme() {
|
|
200
|
-
return this.nativeElement ? this.nativeElement.theme : undefined;
|
|
201
|
-
}
|
|
202
|
-
set theme(value) {
|
|
203
|
-
if (this.nativeElement) {
|
|
204
|
-
this.nativeElement.theme = value;
|
|
205
|
-
}
|
|
206
|
-
}
|
|
207
|
-
/** If is set to true, the element cannot be focused.
|
|
208
|
-
* Property type: boolean
|
|
209
|
-
*/
|
|
210
|
-
get unfocusable() {
|
|
211
|
-
return this.nativeElement ? this.nativeElement.unfocusable : undefined;
|
|
212
|
-
}
|
|
213
|
-
set unfocusable(value) {
|
|
214
|
-
if (this.nativeElement) {
|
|
215
|
-
this.nativeElement.unfocusable = value;
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
/** Sets or gets the value of the element.
|
|
219
|
-
* Property type: string
|
|
220
|
-
*/
|
|
221
|
-
get value() {
|
|
222
|
-
return this.nativeElement ? this.nativeElement.value : undefined;
|
|
223
|
-
}
|
|
224
|
-
set value(value) {
|
|
225
|
-
if (this.nativeElement) {
|
|
226
|
-
this.nativeElement.value = value;
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
// Gets the properties of the React component.
|
|
230
|
-
get properties() {
|
|
231
|
-
return ["disabled", "dropDownClassList", "dropDownButtonPosition", "dropDownHeight", "dropDownWidth", "messages", "name", "nationalMode", "opened", "onlyCountries", "placeholder", "selectedCountry", "rightToLeft", "theme", "unfocusable", "value"];
|
|
232
|
-
}
|
|
233
|
-
// Gets the events of the React component.
|
|
234
|
-
get eventListeners() {
|
|
235
|
-
return ["onChange", "onChanging", "onItemClick", "onCreate", "onReady"];
|
|
236
|
-
}
|
|
237
|
-
/** Closes the drop down.
|
|
238
|
-
*/
|
|
239
|
-
close() {
|
|
240
|
-
if (this.nativeElement.isRendered) {
|
|
241
|
-
this.nativeElement.close();
|
|
242
|
-
}
|
|
243
|
-
else {
|
|
244
|
-
this.nativeElement.whenRendered(() => {
|
|
245
|
-
this.nativeElement.close();
|
|
246
|
-
});
|
|
247
|
-
}
|
|
248
|
-
}
|
|
249
|
-
/** Ensures that the active ( selected ) item is always visible.
|
|
250
|
-
*/
|
|
251
|
-
ensureVisible() {
|
|
252
|
-
if (this.nativeElement.isRendered) {
|
|
253
|
-
this.nativeElement.ensureVisible();
|
|
254
|
-
}
|
|
255
|
-
else {
|
|
256
|
-
this.nativeElement.whenRendered(() => {
|
|
257
|
-
this.nativeElement.ensureVisible();
|
|
258
|
-
});
|
|
259
|
-
}
|
|
260
|
-
}
|
|
261
|
-
/** Returns the entered phone number with formatting.
|
|
262
|
-
* @param {boolean} isInternational?. When you use 'false', the national phone number will be returned and the international phone number, when you use 'true' as parameter.
|
|
263
|
-
* @returns {string}
|
|
264
|
-
*/
|
|
265
|
-
getNumber(isInternational) {
|
|
266
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
267
|
-
const getResultOnRender = () => {
|
|
268
|
-
return new Promise(resolve => {
|
|
269
|
-
this.nativeElement.whenRendered(() => {
|
|
270
|
-
const result = this.nativeElement.getNumber(isInternational);
|
|
271
|
-
resolve(result);
|
|
272
|
-
});
|
|
273
|
-
});
|
|
274
|
-
};
|
|
275
|
-
const result = yield getResultOnRender();
|
|
276
|
-
return result;
|
|
277
|
-
});
|
|
278
|
-
}
|
|
279
|
-
/** Returns an item by its country dial code. The item is an object with 'label', 'value', 'iso2' and 'dialCode' properties.
|
|
280
|
-
* @param {string} dialCode?. Returns the national or international phone number
|
|
281
|
-
* @returns {any}
|
|
282
|
-
*/
|
|
283
|
-
getItemByDialCode(dialCode) {
|
|
284
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
285
|
-
const getResultOnRender = () => {
|
|
286
|
-
return new Promise(resolve => {
|
|
287
|
-
this.nativeElement.whenRendered(() => {
|
|
288
|
-
const result = this.nativeElement.getItemByDialCode(dialCode);
|
|
289
|
-
resolve(result);
|
|
290
|
-
});
|
|
291
|
-
});
|
|
292
|
-
};
|
|
293
|
-
const result = yield getResultOnRender();
|
|
294
|
-
return result;
|
|
295
|
-
});
|
|
296
|
-
}
|
|
297
|
-
/** Returns the selected item. The item is an object with 'label', 'value', 'iso2' and 'dialCode' properties.
|
|
298
|
-
* @returns {any}
|
|
299
|
-
*/
|
|
300
|
-
getSelectedItem() {
|
|
301
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
302
|
-
const getResultOnRender = () => {
|
|
303
|
-
return new Promise(resolve => {
|
|
304
|
-
this.nativeElement.whenRendered(() => {
|
|
305
|
-
const result = this.nativeElement.getSelectedItem();
|
|
306
|
-
resolve(result);
|
|
307
|
-
});
|
|
308
|
-
});
|
|
309
|
-
};
|
|
310
|
-
const result = yield getResultOnRender();
|
|
311
|
-
return result;
|
|
312
|
-
});
|
|
313
|
-
}
|
|
314
|
-
/** Returns true or false depending on whether the entered phone number is valid.
|
|
315
|
-
* @returns {boolean}
|
|
316
|
-
*/
|
|
317
|
-
isValidNumber() {
|
|
318
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
319
|
-
const getResultOnRender = () => {
|
|
320
|
-
return new Promise(resolve => {
|
|
321
|
-
this.nativeElement.whenRendered(() => {
|
|
322
|
-
const result = this.nativeElement.isValidNumber();
|
|
323
|
-
resolve(result);
|
|
324
|
-
});
|
|
325
|
-
});
|
|
326
|
-
};
|
|
327
|
-
const result = yield getResultOnRender();
|
|
328
|
-
return result;
|
|
329
|
-
});
|
|
330
|
-
}
|
|
331
|
-
/** Validates the entered phone number.
|
|
332
|
-
*/
|
|
333
|
-
validate() {
|
|
334
|
-
if (this.nativeElement.isRendered) {
|
|
335
|
-
this.nativeElement.validate();
|
|
336
|
-
}
|
|
337
|
-
else {
|
|
338
|
-
this.nativeElement.whenRendered(() => {
|
|
339
|
-
this.nativeElement.validate();
|
|
340
|
-
});
|
|
341
|
-
}
|
|
342
|
-
}
|
|
343
|
-
/** Opens the drop down.
|
|
344
|
-
*/
|
|
345
|
-
open() {
|
|
346
|
-
if (this.nativeElement.isRendered) {
|
|
347
|
-
this.nativeElement.open();
|
|
348
|
-
}
|
|
349
|
-
else {
|
|
350
|
-
this.nativeElement.whenRendered(() => {
|
|
351
|
-
this.nativeElement.open();
|
|
352
|
-
});
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
/** Selects the text inside the input or if it is readonly then the element is focused.
|
|
356
|
-
*/
|
|
357
|
-
select() {
|
|
358
|
-
if (this.nativeElement.isRendered) {
|
|
359
|
-
this.nativeElement.select();
|
|
360
|
-
}
|
|
361
|
-
else {
|
|
362
|
-
this.nativeElement.whenRendered(() => {
|
|
363
|
-
this.nativeElement.select();
|
|
364
|
-
});
|
|
365
|
-
}
|
|
366
|
-
}
|
|
367
|
-
componentDidRender(initialize) {
|
|
368
|
-
const that = this;
|
|
369
|
-
const props = {};
|
|
370
|
-
const events = {};
|
|
371
|
-
let styles = null;
|
|
372
|
-
for (let prop in that.props) {
|
|
373
|
-
if (prop === 'children') {
|
|
374
|
-
continue;
|
|
375
|
-
}
|
|
376
|
-
if (prop === 'style') {
|
|
377
|
-
styles = that.props[prop];
|
|
378
|
-
continue;
|
|
379
|
-
}
|
|
380
|
-
if (prop.startsWith('on') && that.properties.indexOf(prop) === -1) {
|
|
381
|
-
events[prop] = that.props[prop];
|
|
382
|
-
continue;
|
|
383
|
-
}
|
|
384
|
-
props[prop] = that.props[prop];
|
|
385
|
-
}
|
|
386
|
-
if (initialize) {
|
|
387
|
-
that.nativeElement = this.componentRef.current;
|
|
388
|
-
}
|
|
389
|
-
for (let prop in props) {
|
|
390
|
-
if (prop === 'class' || prop === 'className') {
|
|
391
|
-
const classNames = props[prop].trim().split(' ');
|
|
392
|
-
for (let className in classNames) {
|
|
393
|
-
if (!that.nativeElement.classList.contains(classNames[className]) && classNames[className] !== "") {
|
|
394
|
-
that.nativeElement.classList.add(classNames[className]);
|
|
395
|
-
}
|
|
396
|
-
}
|
|
397
|
-
continue;
|
|
398
|
-
}
|
|
399
|
-
if (props[prop] !== that.nativeElement[prop]) {
|
|
400
|
-
const normalizeProp = (str) => {
|
|
401
|
-
return str.replace(/-([a-z])/g, function (g) {
|
|
402
|
-
return g[1].toUpperCase();
|
|
403
|
-
});
|
|
404
|
-
};
|
|
405
|
-
if (prop === 'hover' || prop === 'active' || prop === 'focus' || prop === 'selected') {
|
|
406
|
-
that.nativeElement.setAttribute(prop, '');
|
|
407
|
-
}
|
|
408
|
-
const normalizedProp = normalizeProp(prop);
|
|
409
|
-
that.nativeElement[normalizedProp] = props[prop];
|
|
410
|
-
}
|
|
411
|
-
}
|
|
412
|
-
for (let eventName in events) {
|
|
413
|
-
that[eventName] = events[eventName];
|
|
414
|
-
that.nativeElement[eventName.toLowerCase()] = events[eventName];
|
|
415
|
-
}
|
|
416
|
-
if (initialize) {
|
|
417
|
-
Smart.Render();
|
|
418
|
-
if (that.onCreate) {
|
|
419
|
-
that.onCreate();
|
|
420
|
-
}
|
|
421
|
-
that.nativeElement.whenRendered(() => {
|
|
422
|
-
if (that.onReady) {
|
|
423
|
-
that.onReady();
|
|
424
|
-
}
|
|
425
|
-
});
|
|
426
|
-
}
|
|
427
|
-
// setup styles.
|
|
428
|
-
if (styles) {
|
|
429
|
-
for (let styleName in styles) {
|
|
430
|
-
that.nativeElement.style[styleName] = styles[styleName];
|
|
431
|
-
}
|
|
432
|
-
}
|
|
433
|
-
}
|
|
434
|
-
componentDidMount() {
|
|
435
|
-
this.componentDidRender(true);
|
|
436
|
-
}
|
|
437
|
-
componentDidUpdate() {
|
|
438
|
-
this.componentDidRender(false);
|
|
439
|
-
}
|
|
440
|
-
componentWillUnmount() {
|
|
441
|
-
const that = this;
|
|
442
|
-
if (!that.nativeElement) {
|
|
443
|
-
return;
|
|
444
|
-
}
|
|
445
|
-
that.nativeElement.whenRenderedCallbacks = [];
|
|
446
|
-
for (let i = 0; i < that.eventListeners.length; i++) {
|
|
447
|
-
const eventName = that.eventListeners[i];
|
|
448
|
-
that.nativeElement.removeEventListener(eventName.substring(2).toLowerCase(), that[eventName]);
|
|
449
|
-
}
|
|
450
|
-
}
|
|
451
|
-
render() {
|
|
452
|
-
return (React.createElement("smart-phone-input", { ref: this.componentRef }, this.props.children));
|
|
453
|
-
}
|
|
454
|
-
}
|
|
391
|
+
exports.Smart = Smart;
|
|
392
|
+
exports.PhoneInput = PhoneInput;
|
|
393
|
+
exports.default = PhoneInput;
|
|
455
394
|
|
|
456
|
-
|
|
457
|
-
exports.PhoneInput = PhoneInput;
|
|
458
|
-
exports.default = PhoneInput;
|
|
459
|
-
|
|
460
|
-
Object.defineProperty(exports, '__esModule', { value: true });
|
|
395
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
461
396
|
|
|
462
397
|
})));
|