@colijnit/ioneconnector 2.0.7 → 2.1.8

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 (235) hide show
  1. package/build/connector.d.ts +2 -1
  2. package/build/connector.js +3 -13
  3. package/build/connector.js.map +1 -1
  4. package/build/connector.unit.test.js +6 -15
  5. package/build/connector.unit.test.js.map +1 -1
  6. package/build/enum/backend-service-name.enum.js +1 -0
  7. package/build/enum/backend-service-name.enum.js.map +1 -1
  8. package/build/enum/datasession-service-method.enum.js +1 -0
  9. package/build/enum/datasession-service-method.enum.js.map +1 -1
  10. package/build/enum/db-boolean-value-type.enum.js +1 -0
  11. package/build/enum/db-boolean-value-type.enum.js.map +1 -1
  12. package/build/enum/end-point.enum.js +1 -0
  13. package/build/enum/end-point.enum.js.map +1 -1
  14. package/build/enum/filter-type.enum.d.ts +4 -0
  15. package/build/enum/filter-type.enum.js +9 -0
  16. package/build/enum/filter-type.enum.js.map +1 -0
  17. package/build/enum/login-service-method.enum.js +1 -0
  18. package/build/enum/login-service-method.enum.js.map +1 -1
  19. package/build/enum/object-config-kind.d.ts +9 -0
  20. package/build/enum/object-config-kind.js +14 -0
  21. package/build/enum/object-config-kind.js.map +1 -0
  22. package/build/enum/object-configuration-data-type.enum.d.ts +7 -0
  23. package/build/enum/object-configuration-data-type.enum.js +12 -0
  24. package/build/enum/object-configuration-data-type.enum.js.map +1 -0
  25. package/build/enum/object-configuration-value-type.enum.d.ts +10 -0
  26. package/build/enum/object-configuration-value-type.enum.js +15 -0
  27. package/build/enum/object-configuration-value-type.enum.js.map +1 -0
  28. package/build/enum/object-right-type.enum.d.ts +5 -0
  29. package/build/enum/object-right-type.enum.js +10 -0
  30. package/build/enum/object-right-type.enum.js.map +1 -0
  31. package/build/enum/one-zero-bool-db-type.enum.js +1 -0
  32. package/build/enum/one-zero-bool-db-type.enum.js.map +1 -1
  33. package/build/enum/public-service-method.enum.js +1 -0
  34. package/build/enum/public-service-method.enum.js.map +1 -1
  35. package/build/enum/search-data-type.enum.d.ts +4 -0
  36. package/build/enum/search-data-type.enum.js +9 -0
  37. package/build/enum/search-data-type.enum.js.map +1 -0
  38. package/build/enum/search-property-state.enum.d.ts +5 -0
  39. package/build/enum/search-property-state.enum.js +10 -0
  40. package/build/enum/search-property-state.enum.js.map +1 -0
  41. package/build/enum/sort-direction.d.ts +5 -0
  42. package/build/enum/sort-direction.js +13 -0
  43. package/build/enum/sort-direction.js.map +1 -0
  44. package/build/enum/sort-type.enum.d.ts +6 -0
  45. package/build/enum/sort-type.enum.js +11 -0
  46. package/build/enum/sort-type.enum.js.map +1 -0
  47. package/build/enum/true-false-db-type.enum.js +1 -0
  48. package/build/enum/true-false-db-type.enum.js.map +1 -1
  49. package/build/enum/user-right-type.enum.d.ts +7 -0
  50. package/build/enum/user-right-type.enum.js +12 -0
  51. package/build/enum/user-right-type.enum.js.map +1 -0
  52. package/build/enum/value-comparison-type.enum.d.ts +15 -0
  53. package/build/enum/value-comparison-type.enum.js +32 -0
  54. package/build/enum/value-comparison-type.enum.js.map +1 -0
  55. package/build/enum/yes-no-db-type.enum.js +1 -0
  56. package/build/enum/yes-no-db-type.enum.js.map +1 -1
  57. package/build/factory/business-object-factory.d.ts +16 -0
  58. package/build/factory/business-object-factory.js +178 -0
  59. package/build/factory/business-object-factory.js.map +1 -0
  60. package/build/factory/business-object-serializer.d.ts +11 -0
  61. package/build/factory/business-object-serializer.js +146 -0
  62. package/build/factory/business-object-serializer.js.map +1 -0
  63. package/build/factory/decorators/bo-factory-step.decorator.d.ts +4 -0
  64. package/build/factory/decorators/bo-factory-step.decorator.js +17 -0
  65. package/build/factory/decorators/bo-factory-step.decorator.js.map +1 -0
  66. package/build/factory/decorators/bo-serializer-step.decorator.d.ts +4 -0
  67. package/build/factory/decorators/bo-serializer-step.decorator.js +17 -0
  68. package/build/factory/decorators/bo-serializer-step.decorator.js.map +1 -0
  69. package/build/factory/decorators/boolean.decorator.js +5 -4
  70. package/build/factory/decorators/boolean.decorator.js.map +1 -1
  71. package/build/factory/decorators/business-object-data.decorator.d.ts +22 -0
  72. package/build/factory/decorators/business-object-data.decorator.js +87 -0
  73. package/build/factory/decorators/business-object-data.decorator.js.map +1 -0
  74. package/build/factory/decorators/co-inject.decorator.d.ts +6 -0
  75. package/build/factory/decorators/co-inject.decorator.js +54 -0
  76. package/build/factory/decorators/co-inject.decorator.js.map +1 -0
  77. package/build/factory/decorators/complex-array.decorator.js +2 -1
  78. package/build/factory/decorators/complex-array.decorator.js.map +1 -1
  79. package/build/factory/decorators/complex-field.decorator.js +2 -1
  80. package/build/factory/decorators/complex-field.decorator.js.map +1 -1
  81. package/build/factory/decorators/date-field.decorator.js +1 -0
  82. package/build/factory/decorators/date-field.decorator.js.map +1 -1
  83. package/build/factory/decorators/db-field-alias.decorator.js +1 -0
  84. package/build/factory/decorators/db-field-alias.decorator.js.map +1 -1
  85. package/build/factory/decorators/db-method-value.decorator.d.ts +5 -0
  86. package/build/factory/decorators/db-method-value.decorator.js +20 -0
  87. package/build/factory/decorators/db-method-value.decorator.js.map +1 -0
  88. package/build/factory/decorators/db-number.decorator.d.ts +5 -0
  89. package/build/factory/decorators/db-number.decorator.js +35 -0
  90. package/build/factory/decorators/db-number.decorator.js.map +1 -0
  91. package/build/factory/decorators/default-send-value.decorator.d.ts +6 -0
  92. package/build/factory/decorators/default-send-value.decorator.js +53 -0
  93. package/build/factory/decorators/default-send-value.decorator.js.map +1 -0
  94. package/build/factory/decorators/exclude-when-empty-string.decorator.d.ts +5 -0
  95. package/build/factory/decorators/exclude-when-empty-string.decorator.js +20 -0
  96. package/build/factory/decorators/exclude-when-empty-string.decorator.js.map +1 -0
  97. package/build/factory/decorators/json.decorator.js +1 -0
  98. package/build/factory/decorators/json.decorator.js.map +1 -1
  99. package/build/factory/decorators/map-property.decorator.js +1 -0
  100. package/build/factory/decorators/map-property.decorator.js.map +1 -1
  101. package/build/factory/decorators/no-db-field.decorator.js +1 -0
  102. package/build/factory/decorators/no-db-field.decorator.js.map +1 -1
  103. package/build/factory/decorators/number-string.decorator.d.ts +6 -0
  104. package/build/factory/decorators/number-string.decorator.js +24 -0
  105. package/build/factory/decorators/number-string.decorator.js.map +1 -0
  106. package/build/factory/decorators/simple-method-tag.decorator.d.ts +5 -0
  107. package/build/factory/decorators/simple-method-tag.decorator.js +31 -0
  108. package/build/factory/decorators/simple-method-tag.decorator.js.map +1 -0
  109. package/build/factory/decorators/simple-property-tag.decorator.d.ts +5 -0
  110. package/build/factory/decorators/simple-property-tag.decorator.js +38 -0
  111. package/build/factory/decorators/simple-property-tag.decorator.js.map +1 -0
  112. package/build/factory/decorators/string-number.decorator.js +1 -0
  113. package/build/factory/decorators/string-number.decorator.js.map +1 -1
  114. package/build/interface/business-object-data-shape.d.ts +19 -0
  115. package/build/interface/business-object-data-shape.js +3 -0
  116. package/build/interface/business-object-data-shape.js.map +1 -0
  117. package/build/interface/check-precision-and-scale-result.d.ts +4 -0
  118. package/build/interface/check-precision-and-scale-result.js +3 -0
  119. package/build/interface/check-precision-and-scale-result.js.map +1 -0
  120. package/build/interface/check-within-stepped-bounds-result.d.ts +4 -0
  121. package/build/interface/check-within-stepped-bounds-result.js +3 -0
  122. package/build/interface/check-within-stepped-bounds-result.js.map +1 -0
  123. package/build/interface/filter-property.d.ts +9 -0
  124. package/build/interface/filter-property.js +3 -0
  125. package/build/interface/filter-property.js.map +1 -0
  126. package/build/interface/precision-scale-object.d.ts +4 -0
  127. package/build/interface/precision-scale-object.js +3 -0
  128. package/build/interface/precision-scale-object.js.map +1 -0
  129. package/build/interface/search-property.d.ts +11 -0
  130. package/build/interface/search-property.js +3 -0
  131. package/build/interface/search-property.js.map +1 -0
  132. package/build/interface/sort-property.d.ts +11 -0
  133. package/build/interface/sort-property.js +3 -0
  134. package/build/interface/sort-property.js.map +1 -0
  135. package/build/interface/text-part.d.ts +4 -0
  136. package/build/interface/text-part.js +3 -0
  137. package/build/interface/text-part.js.map +1 -0
  138. package/build/interface/value-comparison-type-view-wrapper.d.ts +6 -0
  139. package/build/interface/value-comparison-type-view-wrapper.js +3 -0
  140. package/build/interface/value-comparison-type-view-wrapper.js.map +1 -0
  141. package/build/model/business-object.d.ts +11 -2
  142. package/build/model/business-object.js +27 -60
  143. package/build/model/business-object.js.map +1 -1
  144. package/build/model/constant/java-constants.js +1 -0
  145. package/build/model/constant/java-constants.js.map +1 -1
  146. package/build/model/data-service-data.js +1 -0
  147. package/build/model/data-service-data.js.map +1 -1
  148. package/build/model/data-service-response-data.js +9 -8
  149. package/build/model/data-service-response-data.js.map +1 -1
  150. package/build/model/field-validation.js +1 -0
  151. package/build/model/field-validation.js.map +1 -1
  152. package/build/model/login-response.js +1 -0
  153. package/build/model/login-response.js.map +1 -1
  154. package/build/model/login.js +1 -0
  155. package/build/model/login.js.map +1 -1
  156. package/build/model/object-configuration.d.ts +50 -0
  157. package/build/model/object-configuration.js +190 -0
  158. package/build/model/object-configuration.js.map +1 -0
  159. package/build/model/options.js +1 -0
  160. package/build/model/options.js.map +1 -1
  161. package/build/model/paging-parameters.interface.js +1 -0
  162. package/build/model/paging-parameters.interface.js.map +1 -1
  163. package/build/model/paging-parameters.js +5 -4
  164. package/build/model/paging-parameters.js.map +1 -1
  165. package/build/model/public-service-request-data.d.ts +5 -0
  166. package/build/model/public-service-request-data.js +3 -0
  167. package/build/model/public-service-request-data.js.map +1 -0
  168. package/build/model/server-response-data.d.ts +1 -1
  169. package/build/model/session.js +1 -0
  170. package/build/model/session.js.map +1 -1
  171. package/build/model/validation-message.js +6 -5
  172. package/build/model/validation-message.js.map +1 -1
  173. package/build/model/validation-result.js +1 -0
  174. package/build/model/validation-result.js.map +1 -1
  175. package/build/provider/ajax.service.d.ts +2 -1
  176. package/build/provider/ajax.service.js +20 -32
  177. package/build/provider/ajax.service.js.map +1 -1
  178. package/build/provider/base-backend-connection.service.js +8 -20
  179. package/build/provider/base-backend-connection.service.js.map +1 -1
  180. package/build/service/business-object-factory.js +2 -1
  181. package/build/service/business-object-factory.js.map +1 -1
  182. package/build/service/datasession.service.js +3 -13
  183. package/build/service/datasession.service.js.map +1 -1
  184. package/build/service/encrypt.service.js +1 -0
  185. package/build/service/encrypt.service.js.map +1 -1
  186. package/build/service/login.service.js +28 -38
  187. package/build/service/login.service.js.map +1 -1
  188. package/build/service/public.service.js +1 -0
  189. package/build/service/public.service.js.map +1 -1
  190. package/build/type/business-object-id-type.d.ts +1 -1
  191. package/build/type/business-object-id-type.js +1 -0
  192. package/build/type/business-object-id-type.js.map +1 -1
  193. package/build/type/object-configuration-default-value-type.d.ts +1 -1
  194. package/build/utils/array-utils.d.ts +33 -0
  195. package/build/utils/array-utils.js +345 -1
  196. package/build/utils/array-utils.js.map +1 -1
  197. package/build/utils/business-object-utils.d.ts +16 -0
  198. package/build/utils/business-object-utils.js +180 -1
  199. package/build/utils/business-object-utils.js.map +1 -1
  200. package/build/utils/date-utils.d.ts +2 -0
  201. package/build/utils/date-utils.js +11 -1
  202. package/build/utils/date-utils.js.map +1 -1
  203. package/build/utils/function/any-nill.function.d.ts +1 -0
  204. package/build/utils/function/any-nill.function.js +17 -0
  205. package/build/utils/function/any-nill.function.js.map +1 -0
  206. package/build/utils/function/is-nill.function.js +1 -0
  207. package/build/utils/function/is-nill.function.js.map +1 -1
  208. package/build/utils/function/not-nill.function.js +1 -0
  209. package/build/utils/function/not-nill.function.js.map +1 -1
  210. package/build/utils/function-utils.d.ts +4 -0
  211. package/build/utils/function-utils.js +32 -0
  212. package/build/utils/function-utils.js.map +1 -0
  213. package/build/utils/image-utils.js +1 -0
  214. package/build/utils/image-utils.js.map +1 -1
  215. package/build/utils/map-utils.d.ts +4 -0
  216. package/build/utils/map-utils.js +32 -0
  217. package/build/utils/map-utils.js.map +1 -0
  218. package/build/utils/number-utils.d.ts +33 -3
  219. package/build/utils/number-utils.js +227 -17
  220. package/build/utils/number-utils.js.map +1 -1
  221. package/build/utils/object-utils.d.ts +13 -7
  222. package/build/utils/object-utils.js +143 -55
  223. package/build/utils/object-utils.js.map +1 -1
  224. package/build/utils/parameter-value-conversion-utils.js +1 -0
  225. package/build/utils/parameter-value-conversion-utils.js.map +1 -1
  226. package/build/utils/promise-utils.js +4 -12
  227. package/build/utils/promise-utils.js.map +1 -1
  228. package/build/utils/ref-code-utils.js +1 -0
  229. package/build/utils/ref-code-utils.js.map +1 -1
  230. package/build/utils/string-utils.d.ts +20 -1
  231. package/build/utils/string-utils.js +182 -4
  232. package/build/utils/string-utils.js.map +1 -1
  233. package/build/utils/url-utils.js +1 -0
  234. package/build/utils/url-utils.js.map +1 -1
  235. package/package.json +4 -2
@@ -1,12 +1,110 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ArrayUtils = void 0;
3
4
  const not_nill_function_1 = require("./function/not-nill.function");
5
+ const number_utils_1 = require("./number-utils");
6
+ const is_nill_function_1 = require("./function/is-nill.function");
7
+ const object_utils_1 = require("./object-utils");
8
+ const string_utils_1 = require("./string-utils");
9
+ const map_utils_1 = require("./map-utils");
4
10
  class ArrayUtils {
11
+ static InsertElement(index, element, array) {
12
+ if (!Array.isArray(array) || Math.abs(index) > array.length || (0, is_nill_function_1.isNill)(index)) {
13
+ return false;
14
+ }
15
+ const lenBefore = array.length;
16
+ array.splice(index, 0, element);
17
+ return (array.length === lenBefore + 1);
18
+ }
19
+ static InsertElementRightOf(rightOfItem, itemToInsert, array) {
20
+ if (array) {
21
+ ArrayUtils.InsertElement(array.indexOf(rightOfItem) + 1, itemToInsert, array);
22
+ }
23
+ }
24
+ static RemoveElement(element, array) {
25
+ if (!Array.isArray(array)) {
26
+ return false;
27
+ }
28
+ const index = array.indexOf(element);
29
+ return ArrayUtils.RemoveElementAtIndex(index, array);
30
+ }
31
+ static MoveElement(element, toIndex, array) {
32
+ if (!Array.isArray(array) || (0, is_nill_function_1.isNill)(toIndex)) {
33
+ return false;
34
+ }
35
+ const fromIndex = array.indexOf(element);
36
+ const toIndexCorrected = number_utils_1.NumberUtils.GetNearestNumberWithinBounds(toIndex, 0, array.length - 1);
37
+ if (fromIndex === -1 || array[toIndexCorrected] === element) {
38
+ return false;
39
+ }
40
+ array.splice(toIndexCorrected, 0, array.splice(fromIndex, 1)[0]);
41
+ return true;
42
+ }
43
+ static SwapElements(elementOne, elementTwo, array) {
44
+ if (!Array.isArray(array)) {
45
+ return false;
46
+ }
47
+ const elOneIdx = array.indexOf(elementTwo);
48
+ const elTwoIdx = array.indexOf(elementOne);
49
+ if (elOneIdx === -1 || elTwoIdx === -1) {
50
+ return false;
51
+ }
52
+ array[elOneIdx] = array.splice(elTwoIdx, 1, array[elOneIdx])[0];
53
+ return true;
54
+ }
55
+ static RemoveElementAtIndex(index, array) {
56
+ if (number_utils_1.NumberUtils.IsNaN(index) || index < 0 || !Array.isArray(array) || array.length === 0) {
57
+ return false;
58
+ }
59
+ if (index in array) {
60
+ array.splice(index, 1);
61
+ return true;
62
+ }
63
+ else {
64
+ return false;
65
+ }
66
+ }
67
+ static RemoveElementsByFilter(array, filterFunction) {
68
+ if (!ArrayUtils.IsArrayWithElements(array) || !filterFunction) {
69
+ return false;
70
+ }
71
+ let atLeastOneRemoved = false;
72
+ const len = array.length;
73
+ for (let i = len - 1; i >= 0; i--) {
74
+ const item = array[i];
75
+ if (filterFunction.call(this, item) === true) {
76
+ array.splice(i, 1);
77
+ atLeastOneRemoved = true;
78
+ }
79
+ }
80
+ return atLeastOneRemoved;
81
+ }
82
+ static RemoveLastElementOf(array) {
83
+ if (!array) {
84
+ return false;
85
+ }
86
+ else {
87
+ return ArrayUtils.RemoveElementAtIndex(array.length - 1, array);
88
+ }
89
+ }
90
+ static ReplaceElement(elementIn, elementOut, array) {
91
+ if (!array || !Array.isArray(array)) {
92
+ return;
93
+ }
94
+ const indexOut = array.indexOf(elementOut);
95
+ if (indexOut > -1) {
96
+ ArrayUtils.InsertElement(indexOut, elementIn, array);
97
+ ArrayUtils.RemoveElement(elementOut, array);
98
+ }
99
+ }
100
+ static ToggleElement(toggle, elements) {
101
+ elements.indexOf(toggle) > -1 ? ArrayUtils.RemoveElement(toggle, elements) : elements.push(toggle);
102
+ }
5
103
  static ContainsAnElementFoundBy(array, finder) {
6
104
  if (!array || !finder) {
7
105
  return false;
8
106
  }
9
- return not_nill_function_1.notNill(this.Find(array, finder));
107
+ return (0, not_nill_function_1.notNill)(this.Find(array, finder));
10
108
  }
11
109
  static Find(array, foundBy) {
12
110
  if (!array || !foundBy) {
@@ -20,6 +118,212 @@ class ArrayUtils {
20
118
  }
21
119
  return undefined;
22
120
  }
121
+ static FindAll(array, foundBy) {
122
+ const answer = [];
123
+ if (!array || !foundBy) {
124
+ return answer;
125
+ }
126
+ for (let i = 0, len = array.length; i < len; i++) {
127
+ const itemCur = array[i];
128
+ if (foundBy(itemCur)) {
129
+ answer.push(itemCur);
130
+ }
131
+ }
132
+ return answer;
133
+ }
134
+ static GetMaxCalculatedValue(array, itemValueFunction) {
135
+ if (!array || !itemValueFunction) {
136
+ return NaN;
137
+ }
138
+ let max = undefined;
139
+ const len = array.length;
140
+ for (let i = 0; i < len; i++) {
141
+ const valueCur = itemValueFunction.call(this, array[i]);
142
+ if (!max || valueCur > max) {
143
+ max = valueCur;
144
+ }
145
+ }
146
+ return max;
147
+ }
148
+ static FillUntilLength(array, requiredLength, fillerElement = undefined) {
149
+ if (!array || !requiredLength) {
150
+ return false;
151
+ }
152
+ if (array.length >= requiredLength) {
153
+ return false;
154
+ }
155
+ const spotsRemaining = requiredLength - array.length;
156
+ for (let i = 0; i < spotsRemaining; i++) {
157
+ array.push(fillerElement);
158
+ }
159
+ return true;
160
+ }
161
+ static GetNthElementInPossiblySparseArray(array, elementNumber) {
162
+ if (!array || !elementNumber || elementNumber < 1) {
163
+ return undefined;
164
+ }
165
+ return this._AsDenseArray(array)[elementNumber - 1];
166
+ }
167
+ static GetFirstElementInPossiblySparseArray(array) {
168
+ return this.GetNthElementInPossiblySparseArray(array, 1);
169
+ }
170
+ static GetSecondElementInPossiblySparseArray(array) {
171
+ return this.GetNthElementInPossiblySparseArray(array, 2);
172
+ }
173
+ static GetNumberOfElementsInPossiblySparseArray(array) {
174
+ if (!array) {
175
+ return undefined;
176
+ }
177
+ return this._AsDenseArray(array).length;
178
+ }
179
+ static CountWhere(array, whereFunction) {
180
+ if (!ArrayUtils.IsArrayWithElements(array) || !whereFunction) {
181
+ return 0;
182
+ }
183
+ let count = 0;
184
+ const len = array.length;
185
+ for (let i = 0; i < len; i++) {
186
+ if (whereFunction.call(this, array[i])) {
187
+ count++;
188
+ }
189
+ }
190
+ return count;
191
+ }
192
+ static SortAlphabetically(theArray, propertyName = undefined, reverseOrder = false) {
193
+ if (!theArray || !Array.isArray(theArray)) {
194
+ return;
195
+ }
196
+ const switcher = reverseOrder ? -1 : 1;
197
+ const stringSort = string_utils_1.StringUtils.IsStringWithLength(propertyName);
198
+ theArray.sort((itemOne, itemTwo) => {
199
+ const valOne = stringSort ? itemOne[propertyName] : itemOne;
200
+ const valTwo = stringSort ? itemTwo[propertyName] : itemTwo;
201
+ return (valOne > valTwo ? 1 : (valOne < valTwo ? -1 : 0)) * switcher;
202
+ });
203
+ }
204
+ static Shuffle(theArray) {
205
+ if (!theArray || !Array.isArray(theArray)) {
206
+ return;
207
+ }
208
+ let counter = theArray.length;
209
+ while (counter > 0) {
210
+ const index = Math.floor(Math.random() * counter);
211
+ counter--;
212
+ const temp = theArray[counter];
213
+ theArray[counter] = theArray[index];
214
+ theArray[index] = temp;
215
+ }
216
+ }
217
+ static GetGroupBy(theArray, groupByProp) {
218
+ const map = new Map();
219
+ if (!theArray || theArray.length === 0 || !groupByProp) {
220
+ return map;
221
+ }
222
+ theArray.forEach((item) => {
223
+ const propValue = item[groupByProp];
224
+ if (Array.isArray(propValue)) {
225
+ const len = propValue.length;
226
+ for (let i = 0; i < len; i++) {
227
+ const propValCur = propValue[i];
228
+ map_utils_1.MapUtils.InsertArrayItemIntoMap(map, propValCur, item);
229
+ }
230
+ }
231
+ else {
232
+ map_utils_1.MapUtils.InsertArrayItemIntoMap(map, propValue, item);
233
+ }
234
+ });
235
+ return map;
236
+ }
237
+ static ContainAllEqualElements(arrayOne, arrayTwo) {
238
+ if (!arrayOne || !arrayTwo || arrayOne.length !== arrayTwo.length) {
239
+ return false;
240
+ }
241
+ for (let i = 0, len = arrayOne.length; i < len; i++) {
242
+ if (arrayOne[i] !== arrayTwo[i]) {
243
+ return false;
244
+ }
245
+ }
246
+ return true;
247
+ }
248
+ static ContainAnyEqualElements(arrayOne, arrayTwo) {
249
+ if (!arrayOne || !arrayTwo) {
250
+ return false;
251
+ }
252
+ const lenOne = arrayOne.length;
253
+ for (let indexOne = 0; indexOne < lenOne; indexOne++) {
254
+ const itemOne = arrayOne[indexOne];
255
+ const lenTwo = arrayTwo.length;
256
+ for (let i = 0; i < lenTwo; i++) {
257
+ if (itemOne === arrayTwo[i]) {
258
+ return true;
259
+ }
260
+ }
261
+ }
262
+ return false;
263
+ }
264
+ static IsArrayWithElements(arrayToCheck, classItemsMustBeInstanceOf) {
265
+ if ((0, is_nill_function_1.isNill)(arrayToCheck)) {
266
+ return false;
267
+ }
268
+ if (Array.isArray(arrayToCheck) && arrayToCheck.length > 0) {
269
+ if (classItemsMustBeInstanceOf) {
270
+ return arrayToCheck[0] instanceof classItemsMustBeInstanceOf;
271
+ }
272
+ else {
273
+ return true;
274
+ }
275
+ }
276
+ else {
277
+ return false;
278
+ }
279
+ }
280
+ static IsEmptyArray(arrayToCheck) {
281
+ return !!arrayToCheck && Array.isArray(arrayToCheck) && arrayToCheck.length === 0;
282
+ }
283
+ static SearchFor(array, id, property) {
284
+ if (array && array.hasOwnProperty("length") && (string_utils_1.StringUtils.IsStringWithLength(id) || number_utils_1.NumberUtils.IsNumber(id))) {
285
+ for (let i = 0, len = array.length; i < len; i++) {
286
+ const subject = array[i];
287
+ if (property) {
288
+ if (subject[property] === id) {
289
+ return subject;
290
+ }
291
+ }
292
+ else if (typeof subject["getId"] === "function") {
293
+ if (subject["getId"]() === id) {
294
+ return subject;
295
+ }
296
+ }
297
+ else {
298
+ if (subject["id"] === id) {
299
+ return subject;
300
+ }
301
+ }
302
+ }
303
+ }
304
+ }
305
+ static ArrayToString(array) {
306
+ if (!array) {
307
+ return "";
308
+ }
309
+ let returnStr = "";
310
+ const len = array.length;
311
+ for (let i = 0; i < len; i++) {
312
+ returnStr += array[i].toString() + ", ";
313
+ }
314
+ returnStr = string_utils_1.StringUtils.RemoveLastChars(returnStr, 2);
315
+ return returnStr;
316
+ }
317
+ static PushIfNotExist(item, array) {
318
+ if (!array) {
319
+ return false;
320
+ }
321
+ if (array.indexOf(item) === -1) {
322
+ array.push(item);
323
+ return true;
324
+ }
325
+ return false;
326
+ }
23
327
  static CloneArray(array) {
24
328
  let answer = [];
25
329
  if (array) {
@@ -27,6 +331,46 @@ class ArrayUtils {
27
331
  }
28
332
  return answer;
29
333
  }
334
+ static CloneArrayAndItsItems(array, arrayItemsClass, deepClone = false) {
335
+ const cloneArray = [];
336
+ if (array) {
337
+ for (let i = 0, len = array.length; i < len; i++) {
338
+ if (deepClone) {
339
+ cloneArray.push(object_utils_1.ObjectUtils.GetDeepClone(array[i]));
340
+ }
341
+ else {
342
+ cloneArray.push(object_utils_1.ObjectUtils.GetShallowClone(array[i], arrayItemsClass));
343
+ }
344
+ }
345
+ }
346
+ else {
347
+ return [];
348
+ }
349
+ return cloneArray;
350
+ }
351
+ static LengthOf(array) {
352
+ return !!array ? array.length : 0;
353
+ }
354
+ static PlaceElementAfterOther(array, elementToPlace, afterThisElement) {
355
+ if (array) {
356
+ const afterThisElIdx = array.indexOf(afterThisElement);
357
+ const elToPlaceIdx = array.indexOf(elementToPlace);
358
+ if (afterThisElIdx >= elToPlaceIdx) {
359
+ ArrayUtils.MoveElement(elementToPlace, afterThisElIdx + 1, array);
360
+ }
361
+ }
362
+ }
363
+ static ConvertIntoFlatArray(array) {
364
+ return array.reduce((acc, val) => acc.concat(val), []);
365
+ }
366
+ static _AsDenseArray(sparseArray) {
367
+ if (!sparseArray) {
368
+ return [];
369
+ }
370
+ return sparseArray.filter((item) => {
371
+ return item !== undefined && item !== null;
372
+ });
373
+ }
30
374
  }
31
375
  exports.ArrayUtils = ArrayUtils;
32
376
  //# sourceMappingURL=array-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"array-utils.js","sourceRoot":"","sources":["../../src/utils/array-utils.ts"],"names":[],"mappings":";;AAAA,oEAAqD;AAGrD,MAAa,UAAU;IAQZ,MAAM,CAAC,wBAAwB,CAAI,KAAU,EAAE,MAA+B;QACjF,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE;YACnB,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,2BAAO,CAAC,IAAI,CAAC,IAAI,CAAI,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,CAAC;IAcM,MAAM,CAAC,IAAI,CAAI,KAAU,EAAE,OAA6B;QAC3D,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE;YACpB,OAAO,SAAS,CAAC;SACpB;QAED,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,GAAG,GAAW,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAC9D,MAAM,OAAO,GAAM,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,OAAO,CAAC,OAAO,CAAC,EAAG;gBACnB,OAAO,OAAO,CAAC;aAClB;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAGM,MAAM,CAAC,UAAU,CAAI,KAAU;QAClC,IAAI,MAAM,GAAQ,EAAE,CAAC;QAErB,IAAI,KAAK,EAAE;YACP,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC3B;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AApDD,gCAoDC"}
1
+ {"version":3,"file":"array-utils.js","sourceRoot":"","sources":["../../src/utils/array-utils.ts"],"names":[],"mappings":";;;AAAA,oEAAqD;AACrD,iDAA2C;AAC3C,kEAAmD;AACnD,iDAA2C;AAC3C,iDAA2C;AAC3C,2CAAqC;AAGrC,MAAa,UAAU;IASZ,MAAM,CAAC,aAAa,CAAI,KAAa,EAAE,OAAU,EAAE,KAAU;QAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,IAAA,yBAAM,EAAC,KAAK,CAAC,EAAE;YAG1E,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,SAAS,GAAW,KAAK,CAAC,MAAM,CAAC;QACvC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,GAAG,CAAC,CAAC,CAAC;IAC5C,CAAC;IAEM,MAAM,CAAC,oBAAoB,CAAI,WAAc,EAAE,YAAe,EAAE,KAAU;QAC7E,IAAI,KAAK,EAAE;YACP,UAAU,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;SACjF;IACL,CAAC;IAUM,MAAM,CAAC,aAAa,CAAI,OAAU,EAAE,KAAU;QACjD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,KAAK,GAAW,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7C,OAAO,UAAU,CAAC,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAUM,MAAM,CAAC,WAAW,CAAI,OAAU,EAAE,OAAe,EAAE,KAAU;QAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAA,yBAAM,EAAC,OAAO,CAAC,EAAE;YAC1C,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,SAAS,GAAW,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,gBAAgB,GAAW,0BAAW,CAAC,4BAA4B,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACxG,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,OAAO,EAAE;YAEzD,OAAO,KAAK,CAAC;SAChB;QACD,KAAK,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC;IAChB,CAAC;IAGM,MAAM,CAAC,YAAY,CAAI,UAAa,EAAE,UAAa,EAAE,KAAU;QAClE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACvB,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,QAAQ,GAAW,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAW,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACnD,IAAI,QAAQ,KAAK,CAAC,CAAC,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE;YACpC,OAAO,KAAK,CAAC;SAChB;QAED,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC;IAChB,CAAC;IAUM,MAAM,CAAC,oBAAoB,CAAC,KAAa,EAAE,KAAY;QAC1D,IAAI,0BAAW,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACtF,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,KAAK,IAAI,KAAK,EAAE;YAChB,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACvB,OAAO,IAAI,CAAC;SACf;aAAM;YACH,OAAO,KAAK,CAAC;SAChB;IACL,CAAC;IAGM,MAAM,CAAC,sBAAsB,CAAC,KAAY,EAAE,cAAsC;QACrF,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,EAAE;YAC3D,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,iBAAiB,GAAY,KAAK,CAAC;QAEvC,MAAM,GAAG,GAAW,KAAK,CAAC,MAAM,CAAC;QACjC,KAAK,IAAI,CAAC,GAAW,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACvC,MAAM,IAAI,GAAQ,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,IAAI,EAAE;gBAC1C,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnB,iBAAiB,GAAG,IAAI,CAAC;aAC5B;SACJ;QAED,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAGM,MAAM,CAAC,mBAAmB,CAAC,KAAY;QAC1C,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,KAAK,CAAC;SAChB;aAAM;YACH,OAAO,UAAU,CAAC,oBAAoB,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;SACnE;IACL,CAAC;IAGM,MAAM,CAAC,cAAc,CAAI,SAAY,EAAE,UAAa,EAAE,KAAU;QACnE,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACjC,OAAO;SACV;QAED,MAAM,QAAQ,GAAW,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACnD,IAAI,QAAQ,GAAG,CAAC,CAAC,EAAE;YACf,UAAU,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACrD,UAAU,CAAC,aAAa,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;SAC/C;IACL,CAAC;IAGM,MAAM,CAAC,aAAa,CAAI,MAAS,EAAE,QAAa;QACnD,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvG,CAAC;IASM,MAAM,CAAC,wBAAwB,CAAI,KAAU,EAAE,MAA+B;QACjF,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,EAAE;YACnB,OAAO,KAAK,CAAC;SAChB;QAED,OAAO,IAAA,2BAAO,EAAC,IAAI,CAAC,IAAI,CAAI,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,CAAC;IAcM,MAAM,CAAC,IAAI,CAAI,KAAU,EAAE,OAA6B;QAC3D,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE;YACpB,OAAO,SAAS,CAAC;SACpB;QAED,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,GAAG,GAAW,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAC9D,MAAM,OAAO,GAAM,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,OAAO,CAAC,OAAO,CAAC,EAAG;gBACnB,OAAO,OAAO,CAAC;aAClB;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAGM,MAAM,CAAC,OAAO,CAAI,KAAU,EAAE,OAA6B;QAC9D,MAAM,MAAM,GAAQ,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE;YACpB,OAAO,MAAM,CAAC;SACjB;QAED,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,GAAG,GAAW,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAC9D,MAAM,OAAO,GAAM,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;gBAClB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACxB;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAOM,MAAM,CAAC,qBAAqB,CAAI,KAAU,EAAE,iBAAsC;QACrF,IAAI,CAAC,KAAK,IAAI,CAAC,iBAAiB,EAAE;YAC9B,OAAO,GAAG,CAAC;SACd;QAED,IAAI,GAAG,GAAW,SAAS,CAAC;QAE5B,MAAM,GAAG,GAAW,KAAK,CAAC,MAAM,CAAC;QACjC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,QAAQ,GAAW,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAChE,IAAI,CAAC,GAAG,IAAI,QAAQ,GAAG,GAAG,EAAE;gBACxB,GAAG,GAAG,QAAQ,CAAC;aAClB;SACJ;QAED,OAAO,GAAG,CAAC;IACf,CAAC;IAUM,MAAM,CAAC,eAAe,CAAI,KAAU,EAAE,cAAsB,EAAE,gBAAmB,SAAS;QAC7F,IAAI,CAAC,KAAK,IAAI,CAAC,cAAc,EAAE;YAC3B,OAAO,KAAK,CAAC;SAChB;QACD,IAAI,KAAK,CAAC,MAAM,IAAI,cAAc,EAAE;YAChC,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,cAAc,GAAW,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC;QAC7D,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,EAAE,EAAE;YAC7C,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SAC7B;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAQM,MAAM,CAAC,kCAAkC,CAAI,KAAU,EAAE,aAAqB;QACjF,IAAI,CAAC,KAAK,IAAI,CAAC,aAAa,IAAI,aAAa,GAAG,CAAC,EAAE;YAC/C,OAAO,SAAS,CAAC;SACpB;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;IACxD,CAAC;IAEM,MAAM,CAAC,oCAAoC,CAAI,KAAU;QAC5D,OAAO,IAAI,CAAC,kCAAkC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,qCAAqC,CAAI,KAAU;QAC7D,OAAO,IAAI,CAAC,kCAAkC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;IAOM,MAAM,CAAC,wCAAwC,CAAI,KAAU;QAChE,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,SAAS,CAAC;SACpB;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;IAC5C,CAAC;IAGM,MAAM,CAAC,UAAU,CAAI,KAAU,EAAE,aAAmC;QACvE,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE;YAC1D,OAAO,CAAC,CAAC;SACZ;QAED,IAAI,KAAK,GAAW,CAAC,CAAC;QAEtB,MAAM,GAAG,GAAW,KAAK,CAAC,MAAM,CAAC;QACjC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAClC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;gBACpC,KAAK,EAAE,CAAC;aACX;SACJ;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAQM,MAAM,CAAC,kBAAkB,CAAI,QAAa,EAAE,eAAuB,SAAS,EAAE,eAAwB,KAAK;QAC9G,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACvC,OAAO;SACV;QAED,MAAM,QAAQ,GAAW,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC/C,MAAM,UAAU,GAAY,0BAAW,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QACzE,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAU,EAAE,OAAU,EAAE,EAAE;YACrC,MAAM,MAAM,GAAQ,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACjE,MAAM,MAAM,GAAQ,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;YACjE,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;QACzE,CAAC,CAAC,CAAC;IACP,CAAC;IAGM,MAAM,CAAC,OAAO,CAAI,QAAa;QAClC,IAAI,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACvC,OAAO;SACV;QAED,IAAI,OAAO,GAAW,QAAQ,CAAC,MAAM,CAAC;QACtC,OAAO,OAAO,GAAG,CAAC,EAAE;YAChB,MAAM,KAAK,GAAW,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC;YAE1D,OAAO,EAAE,CAAC;YAEV,MAAM,IAAI,GAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;YAClC,QAAQ,CAAC,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;YACpC,QAAQ,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;SAC1B;IACL,CAAC;IAQM,MAAM,CAAC,UAAU,CAAI,QAAa,EAAE,WAAmB;QAC1D,MAAM,GAAG,GAAkB,IAAI,GAAG,EAAY,CAAC;QAE/C,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE;YACpD,OAAO,GAAG,CAAC;SACd;QAED,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAO,EAAE,EAAE;YAEzB,MAAM,SAAS,GAAQ,IAAI,CAAC,WAAW,CAAC,CAAC;YACzC,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBAC1B,MAAM,GAAG,GAAW,SAAS,CAAC,MAAM,CAAC;gBACrC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;oBAClC,MAAM,UAAU,GAAQ,SAAS,CAAC,CAAC,CAAC,CAAC;oBACrC,oBAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;iBAC1D;aACJ;iBAAM;gBACH,oBAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;aACzD;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,GAAG,CAAC;IACf,CAAC;IAEM,MAAM,CAAC,uBAAuB,CAAC,QAAe,EAAE,QAAe;QAClE,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE;YAC/D,OAAO,KAAK,CAAC;SAChB;QAED,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,GAAG,GAAW,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YACjE,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE;gBAC7B,OAAO,KAAK,CAAC;aAChB;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAGM,MAAM,CAAC,uBAAuB,CAAC,QAAe,EAAE,QAAe;QAClE,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE;YACxB,OAAO,KAAK,CAAC;SAChB;QAED,MAAM,MAAM,GAAW,QAAQ,CAAC,MAAM,CAAC;QACvC,KAAK,IAAI,QAAQ,GAAW,CAAC,EAAE,QAAQ,GAAG,MAAM,EAAE,QAAQ,EAAE,EAAE;YAC1D,MAAM,OAAO,GAAQ,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACxC,MAAM,MAAM,GAAW,QAAQ,CAAC,MAAM,CAAC;YACvC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;gBACrC,IAAI,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE;oBACzB,OAAO,IAAI,CAAC;iBACf;aACJ;SACJ;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAGM,MAAM,CAAC,mBAAmB,CAAI,YAAiB,EAAE,0BAAgC;QACpF,IAAI,IAAA,yBAAM,EAAC,YAAY,CAAC,EAAE;YACtB,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;YACxD,IAAI,0BAA0B,EAAE;gBAC5B,OAAO,YAAY,CAAC,CAAC,CAAC,YAAY,0BAA0B,CAAC;aAChE;iBAAM;gBACH,OAAO,IAAI,CAAC;aACf;SACJ;aAAM;YACH,OAAO,KAAK,CAAC;SAChB;IACL,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,YAAmB;QAC1C,OAAO,CAAC,CAAC,YAAY,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC;IACtF,CAAC;IAEM,MAAM,CAAC,SAAS,CAAI,KAAU,EAAE,EAAO,EAAE,QAAiB;QAC7D,IAAI,KAAK,IAAI,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,0BAAW,CAAC,kBAAkB,CAAC,EAAE,CAAC,IAAI,0BAAW,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE;YAC7G,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,GAAG,GAAW,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;gBAC9D,MAAM,OAAO,GAAM,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,QAAQ,EAAE;oBACV,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE;wBAC1B,OAAO,OAAO,CAAC;qBAClB;iBACJ;qBAAM,IAAI,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,UAAU,EAAE;oBAC/C,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE;wBAC3B,OAAO,OAAO,CAAC;qBAClB;iBACJ;qBAAM;oBACH,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE;wBACtB,OAAO,OAAO,CAAC;qBAClB;iBACJ;aACJ;SACJ;IACL,CAAC;IAGM,MAAM,CAAC,aAAa,CAAC,KAAY;QACpC,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,EAAE,CAAC;SACb;QAED,IAAI,SAAS,GAAW,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAW,KAAK,CAAC,MAAM,CAAC;QACjC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAClC,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC;SAC3C;QACD,SAAS,GAAG,0BAAW,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACtD,OAAO,SAAS,CAAC;IACrB,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,IAAS,EAAE,KAAY;QAChD,IAAI,CAAC,KAAK,EAAE;YACR,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;YAC5B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,OAAO,IAAI,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAGM,MAAM,CAAC,UAAU,CAAI,KAAU;QAClC,IAAI,MAAM,GAAQ,EAAE,CAAC;QAErB,IAAI,KAAK,EAAE;YACP,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC3B;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAWM,MAAM,CAAC,qBAAqB,CAAI,KAAU,EAAE,eAAqB,EAAE,YAAqB,KAAK;QAChG,MAAM,UAAU,GAAQ,EAAE,CAAC;QAE3B,IAAI,KAAK,EAAE;YACP,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,GAAG,GAAW,KAAK,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;gBAC9D,IAAI,SAAS,EAAE;oBACX,UAAU,CAAC,IAAI,CAAC,0BAAW,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBACvD;qBAAM;oBACH,UAAU,CAAC,IAAI,CAAC,0BAAW,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC;iBAC3E;aACJ;SACJ;aAAM;YACH,OAAO,EAAE,CAAC;SACb;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAEM,MAAM,CAAC,QAAQ,CAAC,KAAY;QAC/B,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,CAAC;IAGM,MAAM,CAAC,sBAAsB,CAAC,KAAY,EAAE,cAAmB,EAAE,gBAAqB;QACzF,IAAI,KAAK,EAAE;YACP,MAAM,cAAc,GAAW,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC/D,MAAM,YAAY,GAAW,KAAK,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;YAC3D,IAAI,cAAc,IAAI,YAAY,EAAE;gBAChC,UAAU,CAAC,WAAW,CAAC,cAAc,EAAE,cAAc,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;aACrE;SACJ;IACL,CAAC;IAEM,MAAM,CAAC,oBAAoB,CAAI,KAAY;QAC9C,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;IAC3D,CAAC;IAGO,MAAM,CAAC,aAAa,CAAI,WAAgB;QAC5C,IAAI,CAAC,WAAW,EAAE;YACd,OAAO,EAAE,CAAC;SACb;QAED,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,IAAS,EAAE,EAAE;YACpC,OAAO,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,IAAI,CAAC;QAC/C,CAAC,CAAC,CAAC;IACP,CAAC;CACJ;AA/hBD,gCA+hBC"}
@@ -1,4 +1,20 @@
1
1
  import { BusinessObjectIDType } from "../type/business-object-id-type";
2
+ import { BusinessObject } from '../model/business-object';
2
3
  export declare class BusinessObjectUtils {
4
+ static FindItemById<T extends BusinessObject>(modelArray: T[], id: BusinessObjectIDType): T;
5
+ static FindItemByProp<T extends BusinessObject>(modelArray: T[], prop: string, valueMatch: any): T;
6
+ static RemoveElementById<T extends BusinessObject>(modelArray: T[], idOfItemToRemove: BusinessObjectIDType): void;
7
+ static PutBoInList<T extends BusinessObject>(boList: T[], businessObject: T): void;
8
+ static GetId(businessObject: any): BusinessObjectIDType;
9
+ static GetIdAsString(businessObject: BusinessObject): string;
10
+ static GetIdsAsString(businessObjects: BusinessObject[]): string;
3
11
  static IsEqualBoId(idA: BusinessObjectIDType, idB: BusinessObjectIDType): boolean;
12
+ static AreEqual(objectA: any, objectB: any): boolean;
13
+ static GetDisplayName(firstName: string, prefix: string, familyName: string): string;
14
+ static GetDisplayPersonalName(firstName: string, initials: string, prefix: string, familyName: string): string;
15
+ static GetDisplayInitials(firstName: string, familyName: string): string;
16
+ static GetDisplayInitialsForOneFullName(fullName: string): string;
17
+ static GetDescriptionValue(boClass: any, boObject: BusinessObject): any;
18
+ static GetIsActive(endDate: Date): boolean;
19
+ static GetBoAsConcreteClassOrNullObject(businessObject: BusinessObject, boClasses: any[], orNullObject: BusinessObject): BusinessObject;
4
20
  }
@@ -1,11 +1,96 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BusinessObjectUtils = void 0;
4
+ const CircularJSON = require("circular-json");
3
5
  const not_nill_function_1 = require("./function/not-nill.function");
4
6
  const object_utils_1 = require("./object-utils");
7
+ const business_object_1 = require("../model/business-object");
8
+ const array_utils_1 = require("./array-utils");
9
+ const string_utils_1 = require("./string-utils");
10
+ const number_utils_1 = require("./number-utils");
11
+ const is_nill_function_1 = require("./function/is-nill.function");
12
+ const business_object_data_decorator_1 = require("../factory/decorators/business-object-data.decorator");
5
13
  class BusinessObjectUtils {
14
+ static FindItemById(modelArray, id) {
15
+ if (!modelArray) {
16
+ return undefined;
17
+ }
18
+ let foundModel = undefined;
19
+ const len = modelArray.length;
20
+ for (let i = 0; i < len; i++) {
21
+ const modelCur = modelArray[i];
22
+ if (modelCur && !!modelCur.getId && this.IsEqualBoId(modelCur.getId(), id)) {
23
+ foundModel = modelCur;
24
+ break;
25
+ }
26
+ }
27
+ return foundModel;
28
+ }
29
+ static FindItemByProp(modelArray, prop, valueMatch) {
30
+ if (!modelArray) {
31
+ return undefined;
32
+ }
33
+ let foundModel = undefined;
34
+ const len = modelArray.length;
35
+ for (let i = 0; i < len; i++) {
36
+ const modelCur = modelArray[i];
37
+ if (modelCur && modelCur[prop] === valueMatch) {
38
+ foundModel = modelCur;
39
+ break;
40
+ }
41
+ }
42
+ return foundModel;
43
+ }
44
+ static RemoveElementById(modelArray, idOfItemToRemove) {
45
+ array_utils_1.ArrayUtils.RemoveElementsByFilter(modelArray, (item) => {
46
+ return !!item && this.IsEqualBoId(item.getId(), idOfItemToRemove);
47
+ });
48
+ }
49
+ static PutBoInList(boList, businessObject) {
50
+ if (boList && businessObject) {
51
+ const businessObjectId = businessObject.getId();
52
+ const boObjInList = boList.find((bo) => bo.getId() === businessObjectId);
53
+ if (boObjInList && businessObject.getId()) {
54
+ array_utils_1.ArrayUtils.ReplaceElement(businessObject, boObjInList, boList);
55
+ }
56
+ else {
57
+ boList.push(businessObject);
58
+ }
59
+ }
60
+ }
61
+ static GetId(businessObject) {
62
+ if (businessObject && businessObject instanceof business_object_1.BusinessObject) {
63
+ return businessObject.getId();
64
+ }
65
+ }
66
+ static GetIdAsString(businessObject) {
67
+ let result = "";
68
+ const boId = businessObject ? businessObject.getId() : undefined;
69
+ if (boId) {
70
+ if (string_utils_1.StringUtils.IsString(boId)) {
71
+ result = boId;
72
+ }
73
+ else if (number_utils_1.NumberUtils.IsNumber(boId)) {
74
+ result = "" + boId;
75
+ }
76
+ else {
77
+ result = JSON.stringify(boId);
78
+ }
79
+ }
80
+ return result;
81
+ }
82
+ static GetIdsAsString(businessObjects) {
83
+ let result = "";
84
+ if (businessObjects) {
85
+ businessObjects.forEach(bo => {
86
+ result += this.GetIdAsString(bo);
87
+ });
88
+ }
89
+ return result;
90
+ }
6
91
  static IsEqualBoId(idA, idB) {
7
92
  let isEqualId = false;
8
- if (not_nill_function_1.notNill(idA) && not_nill_function_1.notNill(idB)) {
93
+ if ((0, not_nill_function_1.notNill)(idA) && (0, not_nill_function_1.notNill)(idB)) {
9
94
  if (idA === idB) {
10
95
  isEqualId = true;
11
96
  }
@@ -15,6 +100,100 @@ class BusinessObjectUtils {
15
100
  }
16
101
  return isEqualId;
17
102
  }
103
+ static AreEqual(objectA, objectB) {
104
+ if (!objectA && !objectB) {
105
+ return true;
106
+ }
107
+ else if (!objectA || !objectB) {
108
+ return false;
109
+ }
110
+ if (object_utils_1.ObjectUtils.GetClassName(objectA) === object_utils_1.ObjectUtils.GetClassName(objectB)) {
111
+ if ((0, is_nill_function_1.isNill)(objectA.getId()) && (0, is_nill_function_1.isNill)(objectB.getId())) {
112
+ return CircularJSON.stringify(objectA) === CircularJSON.stringify(objectB);
113
+ }
114
+ else {
115
+ return this.IsEqualBoId(objectA.getId(), objectB.getId());
116
+ }
117
+ }
118
+ else {
119
+ return objectA === objectB;
120
+ }
121
+ }
122
+ static GetDisplayName(firstName, prefix, familyName) {
123
+ if (!firstName) {
124
+ if (prefix) {
125
+ return string_utils_1.StringUtils.Format("{0} {1}", [prefix, familyName]);
126
+ }
127
+ else {
128
+ return familyName;
129
+ }
130
+ }
131
+ if (prefix) {
132
+ return string_utils_1.StringUtils.Format("{0} {1} {2}", [firstName, prefix, familyName]);
133
+ }
134
+ else {
135
+ return string_utils_1.StringUtils.Format("{0} {1}", [firstName, familyName]);
136
+ }
137
+ }
138
+ static GetDisplayPersonalName(firstName, initials, prefix, familyName) {
139
+ if (!firstName && initials) {
140
+ if (prefix) {
141
+ return string_utils_1.StringUtils.Format("{0} {1} {2}", [initials, prefix, familyName]);
142
+ }
143
+ return string_utils_1.StringUtils.Format("{0} {1}", [initials, familyName]);
144
+ }
145
+ return BusinessObjectUtils.GetDisplayName(firstName, prefix, familyName);
146
+ }
147
+ static GetDisplayInitials(firstName, familyName) {
148
+ if (!firstName && !familyName) {
149
+ return "";
150
+ }
151
+ if (!firstName) {
152
+ return string_utils_1.StringUtils.GetFirstCapital(familyName).toUpperCase();
153
+ }
154
+ else {
155
+ return string_utils_1.StringUtils.Format("{0}{1}", [firstName[0], string_utils_1.StringUtils.GetFirstCapital(familyName)]).toUpperCase();
156
+ }
157
+ }
158
+ static GetDisplayInitialsForOneFullName(fullName) {
159
+ if (!fullName) {
160
+ return "";
161
+ }
162
+ const name = fullName.replace(/[^a-zA-Z0-9\s]/gi, "");
163
+ const parts = name.split(" ");
164
+ const first = parts.shift();
165
+ if (!parts.length) {
166
+ return first.substr(0, 2).toUpperCase();
167
+ }
168
+ const initials = first.substr(0, 1);
169
+ parts.sort((part1, part2) => part2.length - part1.length);
170
+ return (initials + parts[0].substr(0, 1)).toUpperCase();
171
+ }
172
+ static GetDescriptionValue(boClass, boObject) {
173
+ if (boClass && boObject) {
174
+ return boObject[business_object_data_decorator_1.BusinessObjectDataDecorator.GetDescriptionField(boClass)];
175
+ }
176
+ }
177
+ static GetIsActive(endDate) {
178
+ return (endDate ? endDate > new Date() : true);
179
+ }
180
+ static GetBoAsConcreteClassOrNullObject(businessObject, boClasses, orNullObject) {
181
+ let givenBoOfCorrectClass = false;
182
+ if (boClasses) {
183
+ for (let i = 0, len = boClasses.length; i < len; i++) {
184
+ if (businessObject instanceof boClasses[i]) {
185
+ givenBoOfCorrectClass = true;
186
+ break;
187
+ }
188
+ }
189
+ }
190
+ if (givenBoOfCorrectClass) {
191
+ return businessObject;
192
+ }
193
+ else {
194
+ return orNullObject;
195
+ }
196
+ }
18
197
  }
19
198
  exports.BusinessObjectUtils = BusinessObjectUtils;
20
199
  //# sourceMappingURL=business-object-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"business-object-utils.js","sourceRoot":"","sources":["../../src/utils/business-object-utils.ts"],"names":[],"mappings":";;AACA,oEAAqD;AACrD,iDAA2C;AAG3C,MAAa,mBAAmB;IACrB,MAAM,CAAC,WAAW,CAAC,GAAyB,EAAE,GAAyB;QAC1E,IAAI,SAAS,GAAY,KAAK,CAAC;QAE/B,IAAI,2BAAO,CAAC,GAAG,CAAC,IAAI,2BAAO,CAAC,GAAG,CAAC,EAAE;YAC9B,IAAI,GAAG,KAAK,GAAG,EAAE;gBACb,SAAS,GAAG,IAAI,CAAC;aACpB;iBAAM;gBAEH,SAAS,GAAG,0BAAW,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;aAChD;SACJ;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ;AAfD,kDAeC"}
1
+ {"version":3,"file":"business-object-utils.js","sourceRoot":"","sources":["../../src/utils/business-object-utils.ts"],"names":[],"mappings":";;;AAAA,8CAA8C;AAE9C,oEAAqD;AACrD,iDAA2C;AAC3C,8DAAwD;AACxD,+CAAyC;AACzC,iDAA2C;AAC3C,iDAA2C;AAC3C,kEAAmD;AACnD,yGAAiG;AAGjG,MAAa,mBAAmB;IAGrB,MAAM,CAAC,YAAY,CAA2B,UAAe,EAAE,EAAwB;QAC1F,IAAI,CAAC,UAAU,EAAE;YACb,OAAO,SAAS,CAAC;SACpB;QAED,IAAI,UAAU,GAAM,SAAS,CAAC;QAC9B,MAAM,GAAG,GAAW,UAAU,CAAC,MAAM,CAAC;QACtC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,QAAQ,GAAM,UAAU,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE;gBACxE,UAAU,GAAG,QAAQ,CAAC;gBACtB,MAAM;aACT;SACJ;QACD,OAAO,UAAU,CAAC;IACtB,CAAC;IAEM,MAAM,CAAC,cAAc,CAA2B,UAAe,EAAE,IAAY,EAAE,UAAe;QACjG,IAAI,CAAC,UAAU,EAAE;YACb,OAAO,SAAS,CAAC;SACpB;QAED,IAAI,UAAU,GAAM,SAAS,CAAC;QAC9B,MAAM,GAAG,GAAW,UAAU,CAAC,MAAM,CAAC;QACtC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAClC,MAAM,QAAQ,GAAM,UAAU,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,UAAU,EAAE;gBAC3C,UAAU,GAAG,QAAQ,CAAC;gBACtB,MAAM;aACT;SACJ;QACD,OAAO,UAAU,CAAC;IACtB,CAAC;IAGM,MAAM,CAAC,iBAAiB,CAA2B,UAAe,EAAE,gBAAsC;QAC7G,wBAAU,CAAC,sBAAsB,CAAC,UAAU,EAAE,CAAC,IAAO,EAAE,EAAE;YACtD,OAAO,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,gBAAgB,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;IACP,CAAC;IAGM,MAAM,CAAC,WAAW,CAA2B,MAAW,EAAE,cAAiB;QAC9E,IAAI,MAAM,IAAI,cAAc,EAAE;YAC1B,MAAM,gBAAgB,GAAyB,cAAc,CAAC,KAAK,EAAE,CAAC;YACtE,MAAM,WAAW,GAAmB,MAAM,CAAC,IAAI,CAAC,CAAC,EAAkB,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,gBAAgB,CAAC,CAAC;YACzG,IAAI,WAAW,IAAI,cAAc,CAAC,KAAK,EAAE,EAAE;gBACvC,wBAAU,CAAC,cAAc,CAAC,cAAc,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;aAClE;iBAAM;gBACH,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;aAC/B;SACJ;IACL,CAAC;IAGM,MAAM,CAAC,KAAK,CAAC,cAAmB;QACnC,IAAI,cAAc,IAAI,cAAc,YAAY,gCAAc,EAAE;YAC5D,OAAO,cAAc,CAAC,KAAK,EAAE,CAAC;SACjC;IACL,CAAC;IAEM,MAAM,CAAC,aAAa,CAAC,cAA8B;QACtD,IAAI,MAAM,GAAW,EAAE,CAAC;QACxB,MAAM,IAAI,GAAyB,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QACvF,IAAI,IAAI,EAAE;YACN,IAAI,0BAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBAC5B,MAAM,GAAY,IAAI,CAAC;aAC1B;iBAAM,IAAI,0BAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACnC,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC;aACtB;iBAAM;gBACH,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;aACjC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,eAAiC;QAC1D,IAAI,MAAM,GAAW,EAAE,CAAC;QACxB,IAAI,eAAe,EAAE;YACjB,eAAe,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;gBACzB,MAAM,IAAI,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;YACrC,CAAC,CAAC,CAAC;SACN;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,GAAyB,EAAE,GAAyB;QAC1E,IAAI,SAAS,GAAY,KAAK,CAAC;QAE/B,IAAI,IAAA,2BAAO,EAAC,GAAG,CAAC,IAAI,IAAA,2BAAO,EAAC,GAAG,CAAC,EAAE;YAC9B,IAAI,GAAG,KAAK,GAAG,EAAE;gBACb,SAAS,GAAG,IAAI,CAAC;aACpB;iBAAM;gBAEH,SAAS,GAAG,0BAAW,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;aAChD;SACJ;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAQM,MAAM,CAAC,QAAQ,CAAC,OAAY,EAAE,OAAY;QAC7C,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE;YACtB,OAAO,IAAI,CAAC;SACf;aAAM,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE;YAC7B,OAAO,KAAK,CAAC;SAChB;QAED,IAAI,0BAAW,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,0BAAW,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;YACzE,IAAI,IAAA,yBAAM,EAAC,OAAO,CAAC,KAAK,EAAE,CAAC,IAAI,IAAA,yBAAM,EAAC,OAAO,CAAC,KAAK,EAAE,CAAC,EAAE;gBACpD,OAAO,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,KAAK,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;aAC9E;iBAAM;gBACH,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;aAC7D;SACJ;aAAM;YACH,OAAO,OAAO,KAAK,OAAO,CAAC;SAC9B;IACL,CAAC;IAGM,MAAM,CAAC,cAAc,CAAC,SAAiB,EAAE,MAAc,EAAE,UAAkB;QAC9E,IAAI,CAAC,SAAS,EAAE;YACZ,IAAI,MAAM,EAAE;gBACR,OAAO,0BAAW,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;aAC9D;iBAAM;gBACH,OAAO,UAAU,CAAC;aACrB;SACJ;QAED,IAAI,MAAM,EAAE;YACR,OAAO,0BAAW,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;SAC7E;aAAM;YACH,OAAO,0BAAW,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC,CAAC;SACjE;IACL,CAAC;IAGM,MAAM,CAAC,sBAAsB,CAAC,SAAiB,EAAE,QAAgB,EAAE,MAAc,EAAE,UAAkB;QACxG,IAAI,CAAC,SAAS,IAAI,QAAQ,EAAE;YACxB,IAAI,MAAM,EAAE;gBACR,OAAO,0BAAW,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC;aAC5E;YACD,OAAO,0BAAW,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;SAEhE;QACD,OAAO,mBAAmB,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC7E,CAAC;IAGM,MAAM,CAAC,kBAAkB,CAAC,SAAiB,EAAE,UAAkB;QAClE,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU,EAAE;YAC3B,OAAO,EAAE,CAAC;SACb;QACD,IAAI,CAAC,SAAS,EAAE;YACZ,OAAO,0BAAW,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,WAAW,EAAE,CAAC;SAChE;aAAM;YACH,OAAO,0BAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,0BAAW,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAC9G;IACL,CAAC;IAGM,MAAM,CAAC,gCAAgC,CAAC,QAAgB;QAC3D,IAAI,CAAC,QAAQ,EAAE;YACX,OAAO,EAAE,CAAC;SACb;QACD,MAAM,IAAI,GAAW,QAAQ,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAa,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,KAAK,GAAW,KAAK,CAAC,KAAK,EAAE,CAAC;QACpC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE;YACf,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAC3C;QACD,MAAM,QAAQ,GAAW,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5C,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1D,OAAO,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5D,CAAC;IAGM,MAAM,CAAC,mBAAmB,CAAC,OAAY,EAAE,QAAwB;QACpE,IAAI,OAAO,IAAI,QAAQ,EAAE;YACrB,OAAO,QAAQ,CAAC,4DAA2B,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;SAC7E;IACL,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,OAAa;QAEnC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAGM,MAAM,CAAC,gCAAgC,CAAC,cAA8B,EAAE,SAAgB,EAAE,YAA4B;QACzH,IAAI,qBAAqB,GAAY,KAAK,CAAC;QAC3C,IAAI,SAAS,EAAE;YACX,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,GAAG,GAAW,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;gBAClE,IAAI,cAAc,YAAY,SAAS,CAAC,CAAC,CAAC,EAAE;oBACxC,qBAAqB,GAAG,IAAI,CAAC;oBAC7B,MAAM;iBACT;aACJ;SACJ;QAED,IAAI,qBAAqB,EAAE;YACvB,OAAO,cAAc,CAAC;SACzB;aAAM;YACH,OAAO,YAAY,CAAC;SACvB;IACL,CAAC;CACJ;AAvND,kDAuNC"}
@@ -1,3 +1,5 @@
1
1
  export declare class DateUtils {
2
2
  static StringAsDate(str: string): Date;
3
+ static GetDaysFromNow(date: Date): number;
4
+ static GetDayDifference(from: Date, to: Date): number;
3
5
  }
@@ -1,15 +1,25 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DateUtils = void 0;
3
4
  const not_nill_function_1 = require("./function/not-nill.function");
4
5
  class DateUtils {
5
6
  static StringAsDate(str) {
6
- if (not_nill_function_1.notNill(str)) {
7
+ if ((0, not_nill_function_1.notNill)(str)) {
7
8
  return new Date(str);
8
9
  }
9
10
  else {
10
11
  return undefined;
11
12
  }
12
13
  }
14
+ static GetDaysFromNow(date) {
15
+ return DateUtils.GetDayDifference(new Date(Date.now()), date);
16
+ }
17
+ static GetDayDifference(from, to) {
18
+ if (!from || !to) {
19
+ return NaN;
20
+ }
21
+ return ((to.getTime() - from.getTime()) / 1000 / 60 / 60 / 24);
22
+ }
13
23
  }
14
24
  exports.DateUtils = DateUtils;
15
25
  //# sourceMappingURL=date-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date-utils.js","sourceRoot":"","sources":["../../src/utils/date-utils.ts"],"names":[],"mappings":";;AAAA,oEAAqD;AAGrD,MAAa,SAAS;IACX,MAAM,CAAC,YAAY,CAAC,GAAW;QAClC,IAAI,2BAAO,CAAC,GAAG,CAAC,EAAE;YACd,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;SACxB;aAAM;YACH,OAAO,SAAS,CAAC;SACpB;IACL,CAAC;CACJ;AARD,8BAQC"}
1
+ {"version":3,"file":"date-utils.js","sourceRoot":"","sources":["../../src/utils/date-utils.ts"],"names":[],"mappings":";;;AAAA,oEAAqD;AAGrD,MAAa,SAAS;IACX,MAAM,CAAC,YAAY,CAAC,GAAW;QAClC,IAAI,IAAA,2BAAO,EAAC,GAAG,CAAC,EAAE;YACd,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC;SACxB;aAAM;YACH,OAAO,SAAS,CAAC;SACpB;IACL,CAAC;IAEM,MAAM,CAAC,cAAc,CAAC,IAAU;QACnC,OAAO,SAAS,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAC,IAAU,EAAE,EAAQ;QAC/C,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,EAAE;YACd,OAAO,GAAG,CAAC;SACd;QACD,OAAO,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACnE,CAAC;CACJ;AAnBD,8BAmBC"}
@@ -0,0 +1 @@
1
+ export declare function anyNill(...values: any[]): boolean;