@colijnit/ioneconnector 2.0.6 → 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 (264) hide show
  1. package/build/connector.d.ts +2 -1
  2. package/build/connector.js +4 -13
  3. package/build/connector.js.map +1 -0
  4. package/build/connector.unit.test.js +31 -15
  5. package/build/connector.unit.test.js.map +1 -0
  6. package/build/enum/backend-service-name.enum.js +2 -0
  7. package/build/enum/backend-service-name.enum.js.map +1 -0
  8. package/build/enum/datasession-service-method.enum.js +2 -0
  9. package/build/enum/datasession-service-method.enum.js.map +1 -0
  10. package/build/enum/db-boolean-value-type.enum.js +2 -0
  11. package/build/enum/db-boolean-value-type.enum.js.map +1 -0
  12. package/build/enum/end-point.enum.js +2 -0
  13. package/build/enum/end-point.enum.js.map +1 -0
  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 +2 -0
  18. package/build/enum/login-service-method.enum.js.map +1 -0
  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 +2 -0
  32. package/build/enum/one-zero-bool-db-type.enum.js.map +1 -0
  33. package/build/enum/public-service-method.enum.js +2 -0
  34. package/build/enum/public-service-method.enum.js.map +1 -0
  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 +2 -0
  48. package/build/enum/true-false-db-type.enum.js.map +1 -0
  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 +2 -0
  56. package/build/enum/yes-no-db-type.enum.js.map +1 -0
  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 +6 -4
  70. package/build/factory/decorators/boolean.decorator.js.map +1 -0
  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 +3 -1
  78. package/build/factory/decorators/complex-array.decorator.js.map +1 -0
  79. package/build/factory/decorators/complex-field.decorator.js +3 -1
  80. package/build/factory/decorators/complex-field.decorator.js.map +1 -0
  81. package/build/factory/decorators/date-field.decorator.js +2 -0
  82. package/build/factory/decorators/date-field.decorator.js.map +1 -0
  83. package/build/factory/decorators/db-field-alias.decorator.js +2 -0
  84. package/build/factory/decorators/db-field-alias.decorator.js.map +1 -0
  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 +2 -0
  98. package/build/factory/decorators/json.decorator.js.map +1 -0
  99. package/build/factory/decorators/map-property.decorator.js +2 -0
  100. package/build/factory/decorators/map-property.decorator.js.map +1 -0
  101. package/build/factory/decorators/no-db-field.decorator.js +2 -0
  102. package/build/factory/decorators/no-db-field.decorator.js.map +1 -0
  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 +2 -0
  113. package/build/factory/decorators/string-number.decorator.js.map +1 -0
  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 +28 -60
  143. package/build/model/business-object.js.map +1 -0
  144. package/build/model/constant/java-constants.js +2 -0
  145. package/build/model/constant/java-constants.js.map +1 -0
  146. package/build/model/data-service-data.js +2 -0
  147. package/build/model/data-service-data.js.map +1 -0
  148. package/build/model/data-service-response-data.interface.js +1 -0
  149. package/build/model/data-service-response-data.interface.js.map +1 -0
  150. package/build/model/data-service-response-data.js +10 -8
  151. package/build/model/data-service-response-data.js.map +1 -0
  152. package/build/model/data-service-response-exception.js +1 -0
  153. package/build/model/data-service-response-exception.js.map +1 -0
  154. package/build/model/data-service-response-root.js +1 -0
  155. package/build/model/data-service-response-root.js.map +1 -0
  156. package/build/model/field-validation.interface.js +1 -0
  157. package/build/model/field-validation.interface.js.map +1 -0
  158. package/build/model/field-validation.js +2 -0
  159. package/build/model/field-validation.js.map +1 -0
  160. package/build/model/field-validations-object.interface.js +1 -0
  161. package/build/model/field-validations-object.interface.js.map +1 -0
  162. package/build/model/field-validations-object.js +1 -0
  163. package/build/model/field-validations-object.js.map +1 -0
  164. package/build/model/login-response.interface.js +1 -0
  165. package/build/model/login-response.interface.js.map +1 -0
  166. package/build/model/login-response.js +2 -0
  167. package/build/model/login-response.js.map +1 -0
  168. package/build/model/login.js +2 -0
  169. package/build/model/login.js.map +1 -0
  170. package/build/model/object-configuration.d.ts +50 -0
  171. package/build/model/object-configuration.js +190 -0
  172. package/build/model/object-configuration.js.map +1 -0
  173. package/build/model/options.js +2 -0
  174. package/build/model/options.js.map +1 -0
  175. package/build/model/paging-parameters.interface.js +2 -0
  176. package/build/model/paging-parameters.interface.js.map +1 -0
  177. package/build/model/paging-parameters.js +6 -4
  178. package/build/model/paging-parameters.js.map +1 -0
  179. package/build/model/public-service-request-data.d.ts +5 -0
  180. package/build/model/public-service-request-data.js +3 -0
  181. package/build/model/public-service-request-data.js.map +1 -0
  182. package/build/model/server-response-data.d.ts +1 -1
  183. package/build/model/server-response-data.js +1 -0
  184. package/build/model/server-response-data.js.map +1 -0
  185. package/build/model/server-stack-trace-element.js +1 -0
  186. package/build/model/server-stack-trace-element.js.map +1 -0
  187. package/build/model/session.js +2 -0
  188. package/build/model/session.js.map +1 -0
  189. package/build/model/validation-message.interface.js +1 -0
  190. package/build/model/validation-message.interface.js.map +1 -0
  191. package/build/model/validation-message.js +7 -5
  192. package/build/model/validation-message.js.map +1 -0
  193. package/build/model/validation-result.interface.js +1 -0
  194. package/build/model/validation-result.interface.js.map +1 -0
  195. package/build/model/validation-result.js +2 -0
  196. package/build/model/validation-result.js.map +1 -0
  197. package/build/provider/ajax.service.d.ts +2 -1
  198. package/build/provider/ajax.service.js +21 -32
  199. package/build/provider/ajax.service.js.map +1 -0
  200. package/build/provider/base-backend-connection.service.js +9 -22
  201. package/build/provider/base-backend-connection.service.js.map +1 -0
  202. package/build/service/business-object-factory.js +3 -1
  203. package/build/service/business-object-factory.js.map +1 -0
  204. package/build/service/datasession.service.js +4 -13
  205. package/build/service/datasession.service.js.map +1 -0
  206. package/build/service/encrypt.service.js +2 -0
  207. package/build/service/encrypt.service.js.map +1 -0
  208. package/build/service/encrypt.service.unit.test.js +1 -0
  209. package/build/service/encrypt.service.unit.test.js.map +1 -0
  210. package/build/service/login.service.d.ts +3 -2
  211. package/build/service/login.service.js +32 -26
  212. package/build/service/login.service.js.map +1 -0
  213. package/build/service/public.service.js +2 -0
  214. package/build/service/public.service.js.map +1 -0
  215. package/build/tests/int/connector.int.test.js +1 -0
  216. package/build/tests/int/connector.int.test.js.map +1 -0
  217. package/build/type/business-object-id-type.d.ts +1 -1
  218. package/build/type/business-object-id-type.js +2 -0
  219. package/build/type/business-object-id-type.js.map +1 -0
  220. package/build/type/object-configuration-default-value-type.d.ts +1 -1
  221. package/build/type/object-configuration-default-value-type.js +1 -0
  222. package/build/type/object-configuration-default-value-type.js.map +1 -0
  223. package/build/utils/array-utils.d.ts +33 -0
  224. package/build/utils/array-utils.js +346 -1
  225. package/build/utils/array-utils.js.map +1 -0
  226. package/build/utils/business-object-utils.d.ts +16 -0
  227. package/build/utils/business-object-utils.js +181 -1
  228. package/build/utils/business-object-utils.js.map +1 -0
  229. package/build/utils/date-utils.d.ts +2 -0
  230. package/build/utils/date-utils.js +12 -1
  231. package/build/utils/date-utils.js.map +1 -0
  232. package/build/utils/function/any-nill.function.d.ts +1 -0
  233. package/build/utils/function/any-nill.function.js +17 -0
  234. package/build/utils/function/any-nill.function.js.map +1 -0
  235. package/build/utils/function/is-nill.function.js +2 -0
  236. package/build/utils/function/is-nill.function.js.map +1 -0
  237. package/build/utils/function/not-nill.function.js +2 -0
  238. package/build/utils/function/not-nill.function.js.map +1 -0
  239. package/build/utils/function-utils.d.ts +4 -0
  240. package/build/utils/function-utils.js +32 -0
  241. package/build/utils/function-utils.js.map +1 -0
  242. package/build/utils/image-utils.js +2 -0
  243. package/build/utils/image-utils.js.map +1 -0
  244. package/build/utils/map-utils.d.ts +4 -0
  245. package/build/utils/map-utils.js +32 -0
  246. package/build/utils/map-utils.js.map +1 -0
  247. package/build/utils/number-utils.d.ts +33 -3
  248. package/build/utils/number-utils.js +228 -17
  249. package/build/utils/number-utils.js.map +1 -0
  250. package/build/utils/object-utils.d.ts +13 -7
  251. package/build/utils/object-utils.js +144 -55
  252. package/build/utils/object-utils.js.map +1 -0
  253. package/build/utils/parameter-value-conversion-utils.js +2 -0
  254. package/build/utils/parameter-value-conversion-utils.js.map +1 -0
  255. package/build/utils/promise-utils.js +5 -12
  256. package/build/utils/promise-utils.js.map +1 -0
  257. package/build/utils/ref-code-utils.js +2 -0
  258. package/build/utils/ref-code-utils.js.map +1 -0
  259. package/build/utils/string-utils.d.ts +20 -1
  260. package/build/utils/string-utils.js +183 -4
  261. package/build/utils/string-utils.js.map +1 -0
  262. package/build/utils/url-utils.js +2 -0
  263. package/build/utils/url-utils.js.map +1 -0
  264. package/package.json +4 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public.service.js","sourceRoot":"","sources":["../../src/service/public.service.ts"],"names":[],"mappings":";;;AAAA,iFAAqE;AAGrE,mFAAuE;AAIvE,MAAa,aAAa;IAMtB,YAAY,iBAA+C,EAAE,iBAAiC;QAC1F,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;IAChD,CAAC;IAEM,YAAY;QACf,OAAO,IAAI,OAAO,CAAC,CAAC,OAAiB,EAAE,EAAE;YACrC,IAAI,CAAC,KAAK,CAAC,gDAAmB,CAAC,YAAY,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAc,EAAE,EAAE;gBAC5E,IAAI,CAAC,kBAAkB,CAAC,SAAS,GAAG,MAAM,CAAC;gBAC3C,OAAO,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,MAA2B,EAAE,IAAS,EAAE,UAAmB;QACrE,IAAI,IAAI,KAAK,SAAS,EAAE;YACpB,IAAI,GAAG,EAAE,CAAC;SACb;QACD,IAAI,UAAU,KAAK,SAAS,EAAE;YAC1B,UAAU,GAAG,IAAI,CAAC;SACrB;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,8CAAkB,CAAC,aAAa,CAAC,CAAC;IACnG,CAAC;CACJ;AA7BD,sCA6BC"}
@@ -11,3 +11,4 @@ const options = {
11
11
  const connector = new connector_1.Connector(options);
12
12
  describe("Connector", () => {
13
13
  });
14
+ //# sourceMappingURL=connector.int.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connector.int.test.js","sourceRoot":"","sources":["../../../src/tests/int/connector.int.test.ts"],"names":[],"mappings":";;AAAA,+CAA0C;AAG1C,MAAM,OAAO,GAAY;IACrB,GAAG,EAAE,4BAA4B;IACjC,OAAO,EAAE,4BAA4B;IACrC,MAAM,EAAE,GAAG;IACX,OAAO,EAAE,KAAK;IACd,kBAAkB,EAAE,IAAI;CAC3B,CAAC;AAEF,MAAM,SAAS,GAAc,IAAI,qBAAS,CAAC,OAAO,CAAC,CAAC;AAEpD,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;AA+B3B,CAAC,CAAC,CAAC"}
@@ -1,4 +1,4 @@
1
- export declare type BusinessObjectIDType = number | string | Object;
1
+ export type BusinessObjectIDType = number | string | Object;
2
2
  export declare namespace BusinessObjectIDType {
3
3
  function IsBoIDTypeVal(val: any): boolean;
4
4
  }
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BusinessObjectIDType = void 0;
3
4
  const number_utils_1 = require("../utils/number-utils");
4
5
  const string_utils_1 = require("../utils/string-utils");
5
6
  const object_utils_1 = require("../utils/object-utils");
@@ -10,3 +11,4 @@ var BusinessObjectIDType;
10
11
  }
11
12
  BusinessObjectIDType.IsBoIDTypeVal = IsBoIDTypeVal;
12
13
  })(BusinessObjectIDType = exports.BusinessObjectIDType || (exports.BusinessObjectIDType = {}));
14
+ //# sourceMappingURL=business-object-id-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"business-object-id-type.js","sourceRoot":"","sources":["../../src/type/business-object-id-type.ts"],"names":[],"mappings":";;;AAAA,wDAAkD;AAClD,wDAAkD;AAClD,wDAAkD;AAWlD,IAAiB,oBAAoB,CAIpC;AAJD,WAAiB,oBAAoB;IACjC,SAAgB,aAAa,CAAC,GAAQ;QAClC,OAAO,0BAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,0BAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,0BAAW,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;IACpG,CAAC;IAFe,kCAAa,gBAE5B,CAAA;AACL,CAAC,EAJgB,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAIpC"}
@@ -1 +1 @@
1
- export declare type ObjectConfigurationDefaultValueType = number | number[] | string | string[] | Date | boolean | undefined;
1
+ export type ObjectConfigurationDefaultValueType = number | number[] | string | string[] | Date | boolean | undefined;
@@ -1,2 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=object-configuration-default-value-type.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-configuration-default-value-type.js","sourceRoot":"","sources":["../../src/type/object-configuration-default-value-type.ts"],"names":[],"mappings":""}
@@ -1,5 +1,38 @@
1
1
  export declare class ArrayUtils {
2
+ static InsertElement<T>(index: number, element: T, array: T[]): boolean;
3
+ static InsertElementRightOf<T>(rightOfItem: T, itemToInsert: T, array: T[]): void;
4
+ static RemoveElement<T>(element: T, array: T[]): boolean;
5
+ static MoveElement<T>(element: T, toIndex: number, array: T[]): boolean;
6
+ static SwapElements<T>(elementOne: T, elementTwo: T, array: T[]): boolean;
7
+ static RemoveElementAtIndex(index: number, array: any[]): boolean;
8
+ static RemoveElementsByFilter(array: any[], filterFunction: (item: any) => boolean): boolean;
9
+ static RemoveLastElementOf(array: any[]): boolean;
10
+ static ReplaceElement<T>(elementIn: T, elementOut: T, array: T[]): void;
11
+ static ToggleElement<T>(toggle: T, elements: T[]): void;
2
12
  static ContainsAnElementFoundBy<T>(array: T[], finder: (element: T) => boolean): boolean;
3
13
  static Find<T>(array: T[], foundBy: (item: T) => boolean): T;
14
+ static FindAll<T>(array: T[], foundBy: (item: T) => boolean): T[];
15
+ static GetMaxCalculatedValue<T>(array: T[], itemValueFunction: (item: T) => number): number;
16
+ static FillUntilLength<T>(array: T[], requiredLength: number, fillerElement?: T): boolean;
17
+ static GetNthElementInPossiblySparseArray<T>(array: T[], elementNumber: number): T;
18
+ static GetFirstElementInPossiblySparseArray<T>(array: T[]): T;
19
+ static GetSecondElementInPossiblySparseArray<T>(array: T[]): T;
20
+ static GetNumberOfElementsInPossiblySparseArray<T>(array: T[]): number;
21
+ static CountWhere<T>(array: T[], whereFunction: (item: T) => boolean): number;
22
+ static SortAlphabetically<T>(theArray: T[], propertyName?: string, reverseOrder?: boolean): void;
23
+ static Shuffle<T>(theArray: T[]): void;
24
+ static GetGroupBy<T>(theArray: T[], groupByProp: string): Map<any, T[]>;
25
+ static ContainAllEqualElements(arrayOne: any[], arrayTwo: any[]): boolean;
26
+ static ContainAnyEqualElements(arrayOne: any[], arrayTwo: any[]): boolean;
27
+ static IsArrayWithElements<T>(arrayToCheck: T[], classItemsMustBeInstanceOf?: any): boolean;
28
+ static IsEmptyArray(arrayToCheck: any[]): boolean;
29
+ static SearchFor<T>(array: T[], id: any, property?: string): T;
30
+ static ArrayToString(array: any[]): string;
31
+ static PushIfNotExist(item: any, array: any[]): boolean;
4
32
  static CloneArray<T>(array: T[]): T[];
33
+ static CloneArrayAndItsItems<T>(array: T[], arrayItemsClass?: any, deepClone?: boolean): T[];
34
+ static LengthOf(array: any[]): number;
35
+ static PlaceElementAfterOther(array: any[], elementToPlace: any, afterThisElement: any): void;
36
+ static ConvertIntoFlatArray<T>(array: T[][]): T[];
37
+ private static _AsDenseArray;
5
38
  }
@@ -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,5 +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;
376
+ //# sourceMappingURL=array-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array-utils.js","sourceRoot":"","sources":["../../src/utils/array-utils.ts"],"names":[],"mappings":"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"}
@@ -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
  }