@michalrakus/x-react-web-lib 1.17.0 → 1.19.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.
Files changed (43) hide show
  1. package/lib/components/XAutoComplete.d.ts +9 -9
  2. package/lib/components/XAutoComplete.js +7 -78
  3. package/lib/components/XAutoCompleteBase.d.ts +39 -7
  4. package/lib/components/XAutoCompleteBase.js +351 -64
  5. package/lib/components/XAutoCompleteDT.d.ts +10 -6
  6. package/lib/components/XAutoCompleteDT.js +3 -69
  7. package/lib/components/XCalendar.d.ts +1 -2
  8. package/lib/components/XCalendar.js +79 -10
  9. package/lib/components/XFormBase.js +5 -1
  10. package/lib/components/XFormComponent.js +9 -6
  11. package/lib/components/XFormDataTable2.d.ts +15 -1
  12. package/lib/components/XFormDataTable2.js +24 -4
  13. package/lib/components/XFormRowCol/XFormCol.d.ts +1 -0
  14. package/lib/components/XFormRowCol/XFormCol.js +1 -1
  15. package/lib/components/XFormRowCol/XFormInlineRow.d.ts +1 -0
  16. package/lib/components/XFormRowCol/XFormInlineRow.js +1 -1
  17. package/lib/components/XFormRowCol/XFormRow.d.ts +1 -0
  18. package/lib/components/XFormRowCol/XFormRow.js +1 -1
  19. package/lib/components/XFormRowCol/XFormRowCol.d.ts +1 -0
  20. package/lib/components/XFormRowCol/XFormRowCol.js +1 -1
  21. package/lib/components/XInputDate.d.ts +0 -1
  22. package/lib/components/XInputDate.js +4 -18
  23. package/lib/components/XInputDateDT.d.ts +9 -10
  24. package/lib/components/XInputDateDT.js +35 -39
  25. package/lib/components/XInputDecimal.js +1 -1
  26. package/lib/components/XInputTextarea.js +1 -1
  27. package/lib/components/XInputTextareaDT.d.ts +12 -0
  28. package/lib/components/XInputTextareaDT.js +44 -0
  29. package/lib/components/XLazyDataTable.d.ts +4 -2
  30. package/lib/components/XLazyDataTable.js +17 -4
  31. package/lib/components/XSearchBrowseParams.d.ts +2 -2
  32. package/lib/components/XSearchButton.js +2 -2
  33. package/lib/components/XSearchButtonDT.js +2 -2
  34. package/lib/components/XUtils.d.ts +4 -0
  35. package/lib/components/XUtils.js +51 -11
  36. package/lib/components/XUtilsMetadata.js +1 -1
  37. package/lib/serverApi/FindParam.d.ts +12 -2
  38. package/lib/serverApi/FindParam.js +3 -2
  39. package/lib/serverApi/XUtilsCommon.d.ts +5 -0
  40. package/lib/serverApi/XUtilsCommon.js +43 -0
  41. package/lib/serverApi/XUtilsConversions.d.ts +1 -0
  42. package/lib/serverApi/XUtilsConversions.js +63 -5
  43. package/package.json +1 -1
@@ -27,7 +27,7 @@ var __read = (this && this.__read) || function (o, n) {
27
27
  return ar;
28
28
  };
29
29
  Object.defineProperty(exports, "__esModule", { value: true });
30
- exports.convertValue = exports.convertObject = exports.AsUIType = exports.booleanAsUIText = exports.intervalAsUI = exports.intervalFromUI = exports.datetimeFormatUI = exports.dateFormatCalendar = exports.dateFormatUI = exports.timeFromModel = exports.datetimeAsUI = exports.dateAsUI = exports.dateFromModel = exports.numberFromModel = exports.numberAsUI = exports.intFromUI = exports.stringAsDB = exports.stringAsUI = exports.stringFromUI = void 0;
30
+ exports.convertValue = exports.convertObject = exports.AsUIType = exports.booleanAsUIText = exports.intervalAsUI = exports.intervalFromUI = exports.datetimeFormatUI = exports.dateFormatCalendar = exports.dateFormatUI = exports.timeFromModel = exports.datetimeAsUI = exports.dateAsUI = exports.dateFromUI = exports.dateFromModel = exports.numberFromModel = exports.numberAsUI = exports.intFromUI = exports.stringAsDB = exports.stringAsUI = exports.stringFromUI = void 0;
31
31
  var XUtilsCommon_1 = require("./XUtilsCommon");
32
32
  var XLocale_1 = require("../components/XLocale");
33
33
  var XUtilsMetadataCommon_1 = require("./XUtilsMetadataCommon");
@@ -54,14 +54,17 @@ exports.stringAsDB = stringAsDB;
54
54
  function intFromUI(stringValue) {
55
55
  // convert stringValue (e.g. 1234) into integer number
56
56
  // if stringValue is invalid, returns undefined
57
- var value;
57
+ var value = undefined;
58
58
  if (stringValue === '') {
59
59
  value = null;
60
60
  }
61
61
  else {
62
- value = parseInt(stringValue, 10); // 1234xxx vrati number 1234, preto testujeme aj value.toString() !== stringValue
63
- if (isNaN(value) || value.toString() !== stringValue) {
64
- value = undefined;
62
+ if (XUtilsCommon_1.XUtilsCommon.isInt(stringValue)) {
63
+ // 1234xxx vrati number 1234, preto sme spravili test isInt
64
+ value = parseInt(stringValue, 10);
65
+ if (isNaN(value)) {
66
+ value = undefined;
67
+ }
65
68
  }
66
69
  }
67
70
  return value;
@@ -105,6 +108,61 @@ function dateFromModel(value) {
105
108
  return dateValue;
106
109
  }
107
110
  exports.dateFromModel = dateFromModel;
111
+ function dateFromUI(valueString) {
112
+ // converts valueString (e.g. 21.2.2024) into Date
113
+ // if stringValue is invalid, returns undefined
114
+ var valueDate = undefined;
115
+ if (valueString === '') {
116
+ valueDate = null;
117
+ }
118
+ else {
119
+ // null znamena nezadane (doplni sa podla aktualneho datumu), undefined znamena zadana nekorektna hodnota
120
+ var day = void 0;
121
+ var month = null;
122
+ var year = null;
123
+ var posDot = valueString.indexOf('.');
124
+ if (posDot === -1) {
125
+ day = intFromUI(valueString);
126
+ }
127
+ else {
128
+ day = intFromUI(valueString.substring(0, posDot));
129
+ var rest = valueString.substring(posDot + 1);
130
+ var posDot2 = rest.indexOf('.');
131
+ if (posDot2 === -1) {
132
+ month = intFromUI(rest);
133
+ }
134
+ else {
135
+ month = intFromUI(rest.substring(0, posDot2));
136
+ year = intFromUI(rest.substring(posDot2 + 1));
137
+ }
138
+ }
139
+ // doplnime mesiac a rok ak uzivatel nezadal (ak mame undefined, tak umyselne nedoplname)
140
+ if (month === null) {
141
+ month = XUtilsCommon_1.XUtilsCommon.today().getMonth() + 1; // o 1 mesiac viac (januar je 0)
142
+ }
143
+ if (year === null) {
144
+ year = XUtilsCommon_1.XUtilsCommon.today().getFullYear();
145
+ }
146
+ // ak day alebo month alebo year zostal undefined, tak user zadal nekorektnu hodnotu - vratime undefined
147
+ if (day && month && year) {
148
+ var monthStr = month.toString();
149
+ if (monthStr.length < 2) {
150
+ monthStr = "0" + monthStr;
151
+ }
152
+ var dayStr = day.toString();
153
+ if (dayStr.length < 2) {
154
+ dayStr = "0" + dayStr;
155
+ }
156
+ valueDate = new Date("".concat(year, "-").concat(monthStr, "-").concat(dayStr));
157
+ if (isNaN(valueDate)) {
158
+ // ak je nekorektny datum (napr. 2024-13-01)
159
+ valueDate = undefined;
160
+ }
161
+ }
162
+ }
163
+ return valueDate;
164
+ }
165
+ exports.dateFromUI = dateFromUI;
108
166
  function dateAsUI(value) {
109
167
  if (value !== null) {
110
168
  return (0, XUtilsCommon_1.dateFormat)(value, dateFormatUI());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@michalrakus/x-react-web-lib",
3
- "version": "1.17.0",
3
+ "version": "1.19.0",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "clean": "rimraf lib",