@powfix/core-js 0.15.0-beta-3 → 0.15.0-beta-4

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 (483) hide show
  1. package/dist/{client/interfaces → browser/cjs/constants}/index.browser.js +6 -4
  2. package/dist/{client/constants → browser/cjs}/index.browser.js +7 -6
  3. package/dist/{client/managers → browser/cjs/interfaces}/index.browser.js +4 -2
  4. package/dist/{client/types → browser/cjs/managers}/index.browser.js +2 -2
  5. package/dist/{client/services → browser/cjs/scripts}/index.browser.js +1 -1
  6. package/dist/{server → browser/cjs}/services/index.browser.js +1 -1
  7. package/dist/browser/cjs/services/time/index.js +18 -0
  8. package/dist/{client/scripts → browser/cjs/types}/index.browser.js +2 -1
  9. package/dist/{client → browser/cjs}/utils/ArrayUtils.js +2 -2
  10. package/dist/{client → browser/cjs}/utils/DateUtils.js +17 -17
  11. package/dist/{server → browser/cjs}/utils/JuminNumberUtils.js +2 -2
  12. package/dist/{server → browser/cjs}/utils/ObjectIdUtils.js +3 -3
  13. package/dist/{server → browser/cjs}/utils/Sequencer.js +2 -2
  14. package/dist/{client → browser/cjs}/utils/global/fallbackIfNull.js +2 -2
  15. package/dist/{client → browser/cjs}/utils/global/fallbackIfUndefined.js +2 -2
  16. package/dist/browser/cjs/utils/global/index.js +27 -0
  17. package/dist/{client → browser/cjs}/utils/global/processFirstNonNullish.js +2 -2
  18. package/dist/browser/cjs/utils/index.browser.js +33 -0
  19. package/dist/{server → browser/cjs}/utils/try-catch/index.js +1 -1
  20. package/dist/browser/esm/constants/COORDINATE.mjs +6 -0
  21. package/dist/browser/esm/constants/CRUD.mjs +19 -0
  22. package/dist/browser/esm/constants/DATE.mjs +22 -0
  23. package/dist/browser/esm/constants/DISTANCE.mjs +14 -0
  24. package/dist/browser/esm/constants/DURATION.mjs +17 -0
  25. package/dist/browser/esm/constants/NOT_NULL.mjs +1 -0
  26. package/dist/browser/esm/constants/index.browser.mjs +6 -0
  27. package/dist/browser/esm/index.browser.mjs +7 -0
  28. package/dist/browser/esm/interfaces/Coordinate.mjs +1 -0
  29. package/dist/browser/esm/interfaces/Point2.mjs +1 -0
  30. package/dist/browser/esm/interfaces/Point3.mjs +1 -0
  31. package/dist/browser/esm/interfaces/StorageProvider.mjs +1 -0
  32. package/dist/browser/esm/interfaces/index.browser.mjs +4 -0
  33. package/dist/browser/esm/managers/SessionManager.mjs +127 -0
  34. package/dist/browser/esm/managers/SessionManager.type.mjs +1 -0
  35. package/dist/browser/esm/managers/index.browser.mjs +2 -0
  36. package/dist/browser/esm/scripts/base64Polyfill.mjs +10 -0
  37. package/dist/browser/esm/scripts/index.browser.mjs +1 -0
  38. package/dist/browser/esm/services/index.browser.mjs +1 -0
  39. package/dist/browser/esm/services/time/TimeService.mjs +173 -0
  40. package/dist/browser/esm/services/time/TimeService.type.mjs +1 -0
  41. package/dist/browser/esm/services/time/index.mjs +2 -0
  42. package/dist/browser/esm/types/IntRage.mjs +1 -0
  43. package/dist/browser/esm/types/PartialExcept.mjs +1 -0
  44. package/dist/browser/esm/types/index.browser.mjs +2 -0
  45. package/dist/browser/esm/utils/ArrayUtils.mjs +26 -0
  46. package/dist/browser/esm/utils/AxiosUtils.mjs +49 -0
  47. package/dist/browser/esm/utils/BooleanUtils.mjs +5 -0
  48. package/dist/browser/esm/utils/Calc.mjs +23 -0
  49. package/dist/browser/esm/utils/CoordinateUtils.mjs +38 -0
  50. package/dist/browser/esm/utils/DateUtils.mjs +303 -0
  51. package/dist/browser/esm/utils/JuminNumberUtils.mjs +46 -0
  52. package/dist/browser/esm/utils/NumberUtils.mjs +21 -0
  53. package/dist/browser/esm/utils/ObjectIdUtils.mjs +20 -0
  54. package/dist/browser/esm/utils/Point3Utils.mjs +8 -0
  55. package/dist/browser/esm/utils/RandomUtils.mjs +60 -0
  56. package/dist/browser/esm/utils/Sequencer.mjs +141 -0
  57. package/dist/browser/esm/utils/StringUtils.mjs +33 -0
  58. package/dist/browser/esm/utils/UuidUtils.mjs +42 -0
  59. package/dist/browser/esm/utils/Validator.mjs +114 -0
  60. package/dist/browser/esm/utils/global/between.mjs +3 -0
  61. package/dist/browser/esm/utils/global/castArray.mjs +3 -0
  62. package/dist/browser/esm/utils/global/circularDistance.mjs +11 -0
  63. package/dist/browser/esm/utils/global/fallbackIfEqual.mjs +6 -0
  64. package/dist/browser/esm/utils/global/fallbackIfNull.mjs +4 -0
  65. package/dist/browser/esm/utils/global/fallbackIfUndefined.mjs +4 -0
  66. package/dist/browser/esm/utils/global/firstNonNullish.mjs +10 -0
  67. package/dist/browser/esm/utils/global/flat.mjs +113 -0
  68. package/dist/browser/esm/utils/global/index.mjs +11 -0
  69. package/dist/browser/esm/utils/global/processFirstNonNullish.mjs +8 -0
  70. package/dist/browser/esm/utils/global/pureEnum.mjs +9 -0
  71. package/dist/browser/esm/utils/global/sleep.mjs +1 -0
  72. package/dist/browser/esm/utils/index.browser.mjs +17 -0
  73. package/dist/browser/esm/utils/try-catch/TryCatch.mjs +74 -0
  74. package/dist/browser/esm/utils/try-catch/index.mjs +1 -0
  75. package/dist/browser/types/constants/index.browser.d.ts +6 -0
  76. package/dist/browser/types/index.browser.d.ts +7 -0
  77. package/dist/{server → browser/types}/interfaces/Point3.d.ts +1 -1
  78. package/dist/browser/types/interfaces/index.browser.d.ts +4 -0
  79. package/dist/{server → browser/types}/managers/SessionManager.d.ts +2 -2
  80. package/dist/{client → browser/types}/managers/SessionManager.type.d.ts +1 -1
  81. package/dist/browser/types/managers/index.browser.d.ts +2 -0
  82. package/dist/browser/types/scripts/index.browser.d.ts +1 -0
  83. package/dist/browser/types/services/index.browser.d.ts +1 -0
  84. package/dist/{client → browser/types}/services/time/TimeService.d.ts +1 -1
  85. package/dist/browser/types/services/time/index.d.ts +2 -0
  86. package/dist/browser/types/types/index.browser.d.ts +2 -0
  87. package/dist/{client → browser/types}/utils/CoordinateUtils.d.ts +1 -1
  88. package/dist/{server → browser/types}/utils/DateUtils.d.ts +1 -1
  89. package/dist/{server → browser/types}/utils/Point3Utils.d.ts +1 -1
  90. package/dist/browser/types/utils/global/index.d.ts +11 -0
  91. package/dist/browser/types/utils/index.browser.d.ts +17 -0
  92. package/dist/browser/types/utils/try-catch/index.d.ts +1 -0
  93. package/dist/node/cjs/constants/index.browser.js +22 -0
  94. package/dist/{server/interfaces/nodejs/db → node/cjs/constants}/index.js +2 -1
  95. package/dist/{client/services/time → node/cjs/constants/nodejs}/index.js +2 -2
  96. package/dist/node/cjs/index.browser.js +23 -0
  97. package/dist/node/cjs/index.js +24 -0
  98. package/dist/node/cjs/interfaces/index.browser.js +20 -0
  99. package/dist/node/cjs/interfaces/index.js +18 -0
  100. package/dist/{client/utils/try-catch → node/cjs/interfaces/nodejs/db}/index.js +1 -1
  101. package/dist/{server/constants/nodejs → node/cjs/interfaces/nodejs/db/sequelize}/index.js +6 -2
  102. package/dist/{server → node/cjs}/interfaces/nodejs/index.js +1 -1
  103. package/dist/{server → node/cjs}/managers/TransactionManager.js +13 -13
  104. package/dist/node/cjs/managers/index.browser.js +18 -0
  105. package/dist/{server/constants → node/cjs/managers}/index.js +2 -2
  106. package/dist/node/cjs/scripts/index.browser.js +17 -0
  107. package/dist/node/cjs/scripts/index.js +17 -0
  108. package/dist/node/cjs/services/index.browser.js +17 -0
  109. package/dist/{server/scripts → node/cjs/services}/index.js +2 -1
  110. package/dist/{server → node/cjs}/services/redis/RedisPublisher.js +2 -2
  111. package/dist/{server → node/cjs}/services/redis/RedisSubscriber.js +5 -5
  112. package/dist/{server → node/cjs}/services/redis/index.js +3 -3
  113. package/dist/node/cjs/services/time/index.js +18 -0
  114. package/dist/{server/scripts → node/cjs/types}/index.browser.js +2 -1
  115. package/dist/node/cjs/types/index.js +18 -0
  116. package/dist/{server → node/cjs}/utils/ArrayUtils.js +2 -2
  117. package/dist/{server → node/cjs}/utils/DateUtils.js +17 -17
  118. package/dist/{client → node/cjs}/utils/JuminNumberUtils.js +2 -2
  119. package/dist/{client → node/cjs}/utils/ObjectIdUtils.js +3 -3
  120. package/dist/{client → node/cjs}/utils/Sequencer.js +2 -2
  121. package/dist/{server → node/cjs}/utils/global/fallbackIfNull.js +2 -2
  122. package/dist/{server → node/cjs}/utils/global/fallbackIfUndefined.js +2 -2
  123. package/dist/node/cjs/utils/global/index.js +27 -0
  124. package/dist/{server → node/cjs}/utils/global/processFirstNonNullish.js +2 -2
  125. package/dist/node/cjs/utils/index.browser.js +33 -0
  126. package/dist/node/cjs/utils/index.js +18 -0
  127. package/dist/{server → node/cjs}/utils/nodejs/index.js +3 -3
  128. package/dist/{server → node/cjs}/utils/nodejs/sequelize-utils/SequelizeUtils.js +8 -8
  129. package/dist/{server → node/cjs}/utils/nodejs/sequelize-utils/index.js +2 -2
  130. package/dist/node/cjs/utils/try-catch/index.js +17 -0
  131. package/dist/node/esm/constants/COORDINATE.mjs +6 -0
  132. package/dist/node/esm/constants/CRUD.mjs +19 -0
  133. package/dist/node/esm/constants/DATE.mjs +22 -0
  134. package/dist/node/esm/constants/DISTANCE.mjs +14 -0
  135. package/dist/node/esm/constants/DURATION.mjs +17 -0
  136. package/dist/node/esm/constants/NOT_NULL.mjs +1 -0
  137. package/dist/node/esm/constants/index.browser.mjs +6 -0
  138. package/dist/node/esm/constants/index.mjs +2 -0
  139. package/dist/node/esm/constants/nodejs/TransactionManagerLogLevel.mjs +8 -0
  140. package/dist/node/esm/constants/nodejs/TransactionManagerTimeoutAction.mjs +5 -0
  141. package/dist/node/esm/constants/nodejs/index.mjs +2 -0
  142. package/dist/node/esm/index.browser.mjs +7 -0
  143. package/dist/node/esm/index.mjs +8 -0
  144. package/dist/node/esm/interfaces/Coordinate.mjs +1 -0
  145. package/dist/node/esm/interfaces/Point2.mjs +1 -0
  146. package/dist/node/esm/interfaces/Point3.mjs +1 -0
  147. package/dist/node/esm/interfaces/StorageProvider.mjs +1 -0
  148. package/dist/node/esm/interfaces/index.browser.mjs +4 -0
  149. package/dist/node/esm/interfaces/index.mjs +2 -0
  150. package/dist/node/esm/interfaces/nodejs/db/index.mjs +1 -0
  151. package/dist/node/esm/interfaces/nodejs/db/sequelize/Hook.mjs +1 -0
  152. package/dist/node/esm/interfaces/nodejs/db/sequelize/HookFn.mjs +1 -0
  153. package/dist/node/esm/interfaces/nodejs/db/sequelize/HookType.mjs +1 -0
  154. package/dist/node/esm/interfaces/nodejs/db/sequelize/ReloadOption.mjs +1 -0
  155. package/dist/node/esm/interfaces/nodejs/db/sequelize/TransactionOption.mjs +1 -0
  156. package/dist/node/esm/interfaces/nodejs/db/sequelize/UpsertOptions.mjs +1 -0
  157. package/dist/node/esm/interfaces/nodejs/db/sequelize/index.mjs +6 -0
  158. package/dist/node/esm/interfaces/nodejs/index.mjs +1 -0
  159. package/dist/node/esm/managers/SessionManager.mjs +127 -0
  160. package/dist/node/esm/managers/SessionManager.type.mjs +1 -0
  161. package/dist/node/esm/managers/TransactionManager.mjs +144 -0
  162. package/dist/node/esm/managers/TransactionManager.types.mjs +1 -0
  163. package/dist/node/esm/managers/index.browser.mjs +2 -0
  164. package/dist/node/esm/managers/index.mjs +2 -0
  165. package/dist/node/esm/scripts/base64Polyfill.mjs +10 -0
  166. package/dist/node/esm/scripts/index.browser.mjs +1 -0
  167. package/dist/node/esm/scripts/index.mjs +1 -0
  168. package/dist/node/esm/services/index.browser.mjs +1 -0
  169. package/dist/node/esm/services/index.mjs +2 -0
  170. package/dist/node/esm/services/redis/RedisClient.mjs +71 -0
  171. package/dist/node/esm/services/redis/RedisPublisher.mjs +60 -0
  172. package/dist/node/esm/services/redis/RedisSubscriber.mjs +69 -0
  173. package/dist/node/esm/services/redis/index.mjs +4 -0
  174. package/dist/node/esm/services/time/TimeService.mjs +173 -0
  175. package/dist/node/esm/services/time/TimeService.type.mjs +1 -0
  176. package/dist/node/esm/services/time/index.mjs +2 -0
  177. package/dist/node/esm/types/IntRage.mjs +1 -0
  178. package/dist/node/esm/types/PartialExcept.mjs +1 -0
  179. package/dist/node/esm/types/UpsertResult.mjs +1 -0
  180. package/dist/node/esm/types/index.browser.mjs +2 -0
  181. package/dist/node/esm/types/index.mjs +2 -0
  182. package/dist/node/esm/utils/ArrayUtils.mjs +26 -0
  183. package/dist/node/esm/utils/AxiosUtils.mjs +49 -0
  184. package/dist/node/esm/utils/BooleanUtils.mjs +5 -0
  185. package/dist/node/esm/utils/Calc.mjs +23 -0
  186. package/dist/node/esm/utils/CoordinateUtils.mjs +38 -0
  187. package/dist/node/esm/utils/DateUtils.mjs +303 -0
  188. package/dist/node/esm/utils/JuminNumberUtils.mjs +46 -0
  189. package/dist/node/esm/utils/NumberUtils.mjs +21 -0
  190. package/dist/node/esm/utils/ObjectIdUtils.mjs +20 -0
  191. package/dist/node/esm/utils/Point3Utils.mjs +8 -0
  192. package/dist/node/esm/utils/RandomUtils.mjs +60 -0
  193. package/dist/node/esm/utils/Sequencer.mjs +141 -0
  194. package/dist/node/esm/utils/StringUtils.mjs +33 -0
  195. package/dist/node/esm/utils/UuidUtils.mjs +42 -0
  196. package/dist/node/esm/utils/Validator.mjs +114 -0
  197. package/dist/node/esm/utils/global/between.mjs +3 -0
  198. package/dist/node/esm/utils/global/castArray.mjs +3 -0
  199. package/dist/node/esm/utils/global/circularDistance.mjs +11 -0
  200. package/dist/node/esm/utils/global/fallbackIfEqual.mjs +6 -0
  201. package/dist/node/esm/utils/global/fallbackIfNull.mjs +4 -0
  202. package/dist/node/esm/utils/global/fallbackIfUndefined.mjs +4 -0
  203. package/dist/node/esm/utils/global/firstNonNullish.mjs +10 -0
  204. package/dist/node/esm/utils/global/flat.mjs +113 -0
  205. package/dist/node/esm/utils/global/index.mjs +11 -0
  206. package/dist/node/esm/utils/global/processFirstNonNullish.mjs +8 -0
  207. package/dist/node/esm/utils/global/pureEnum.mjs +9 -0
  208. package/dist/node/esm/utils/global/sleep.mjs +1 -0
  209. package/dist/node/esm/utils/index.browser.mjs +17 -0
  210. package/dist/node/esm/utils/index.mjs +2 -0
  211. package/dist/node/esm/utils/nodejs/HookUtils.mjs +26 -0
  212. package/dist/node/esm/utils/nodejs/index.mjs +2 -0
  213. package/dist/node/esm/utils/nodejs/sequelize-utils/SequelizeUtils.mjs +71 -0
  214. package/dist/node/esm/utils/nodejs/sequelize-utils/index.mjs +1 -0
  215. package/dist/node/esm/utils/nodejs/sequelize-utils/types.mjs +1 -0
  216. package/dist/node/esm/utils/try-catch/TryCatch.mjs +74 -0
  217. package/dist/node/esm/utils/try-catch/index.mjs +1 -0
  218. package/dist/node/types/constants/index.browser.d.ts +6 -0
  219. package/dist/node/types/constants/index.d.ts +2 -0
  220. package/dist/node/types/constants/nodejs/index.d.ts +2 -0
  221. package/dist/node/types/index.browser.d.ts +7 -0
  222. package/dist/node/types/index.d.ts +8 -0
  223. package/dist/{client → node/types}/interfaces/Point3.d.ts +1 -1
  224. package/dist/node/types/interfaces/index.browser.d.ts +4 -0
  225. package/dist/node/types/interfaces/index.d.ts +2 -0
  226. package/dist/node/types/interfaces/nodejs/db/index.d.ts +1 -0
  227. package/dist/{server → node/types}/interfaces/nodejs/db/sequelize/Hook.d.ts +2 -2
  228. package/dist/{server → node/types}/interfaces/nodejs/db/sequelize/HookFn.d.ts +1 -1
  229. package/dist/node/types/interfaces/nodejs/db/sequelize/UpsertOptions.d.ts +4 -0
  230. package/dist/node/types/interfaces/nodejs/db/sequelize/index.d.ts +6 -0
  231. package/dist/node/types/interfaces/nodejs/index.d.ts +1 -0
  232. package/dist/{client → node/types}/managers/SessionManager.d.ts +2 -2
  233. package/dist/{server → node/types}/managers/SessionManager.type.d.ts +1 -1
  234. package/dist/{server → node/types}/managers/TransactionManager.d.ts +2 -2
  235. package/dist/{server → node/types}/managers/TransactionManager.types.d.ts +1 -1
  236. package/dist/node/types/managers/index.browser.d.ts +2 -0
  237. package/dist/node/types/managers/index.d.ts +2 -0
  238. package/dist/node/types/scripts/index.browser.d.ts +1 -0
  239. package/dist/node/types/scripts/index.d.ts +1 -0
  240. package/dist/node/types/services/index.browser.d.ts +1 -0
  241. package/dist/node/types/services/index.d.ts +2 -0
  242. package/dist/{server → node/types}/services/redis/RedisPublisher.d.ts +1 -1
  243. package/dist/{server → node/types}/services/redis/RedisSubscriber.d.ts +2 -2
  244. package/dist/node/types/services/redis/index.d.ts +3 -0
  245. package/dist/{server → node/types}/services/time/TimeService.d.ts +1 -1
  246. package/dist/node/types/services/time/index.d.ts +2 -0
  247. package/dist/node/types/types/index.browser.d.ts +2 -0
  248. package/dist/node/types/types/index.d.ts +2 -0
  249. package/dist/{server → node/types}/utils/CoordinateUtils.d.ts +1 -1
  250. package/dist/{client → node/types}/utils/DateUtils.d.ts +1 -1
  251. package/dist/{client → node/types}/utils/Point3Utils.d.ts +1 -1
  252. package/dist/node/types/utils/global/index.d.ts +11 -0
  253. package/dist/node/types/utils/index.browser.d.ts +17 -0
  254. package/dist/node/types/utils/index.d.ts +2 -0
  255. package/dist/{server → node/types}/utils/nodejs/HookUtils.d.ts +1 -1
  256. package/dist/node/types/utils/nodejs/index.d.ts +2 -0
  257. package/dist/{server → node/types}/utils/nodejs/sequelize-utils/SequelizeUtils.d.ts +1 -1
  258. package/dist/node/types/utils/nodejs/sequelize-utils/index.d.ts +1 -0
  259. package/dist/node/types/utils/try-catch/index.d.ts +1 -0
  260. package/package.json +17 -10
  261. package/dist/client/constants/index.browser.d.ts +0 -6
  262. package/dist/client/index.browser.d.ts +0 -7
  263. package/dist/client/index.browser.js +0 -23
  264. package/dist/client/interfaces/index.browser.d.ts +0 -4
  265. package/dist/client/managers/index.browser.d.ts +0 -2
  266. package/dist/client/scripts/index.browser.d.ts +0 -1
  267. package/dist/client/services/index.browser.d.ts +0 -1
  268. package/dist/client/services/time/index.d.ts +0 -2
  269. package/dist/client/types/index.browser.d.ts +0 -2
  270. package/dist/client/utils/global/index.d.ts +0 -11
  271. package/dist/client/utils/global/index.js +0 -27
  272. package/dist/client/utils/index.browser.d.ts +0 -17
  273. package/dist/client/utils/index.browser.js +0 -33
  274. package/dist/client/utils/try-catch/index.d.ts +0 -1
  275. package/dist/server/constants/index.browser.d.ts +0 -6
  276. package/dist/server/constants/index.browser.js +0 -22
  277. package/dist/server/constants/index.d.ts +0 -2
  278. package/dist/server/constants/nodejs/index.d.ts +0 -2
  279. package/dist/server/index.browser.d.ts +0 -7
  280. package/dist/server/index.browser.js +0 -23
  281. package/dist/server/index.d.ts +0 -8
  282. package/dist/server/index.js +0 -24
  283. package/dist/server/interfaces/index.browser.d.ts +0 -4
  284. package/dist/server/interfaces/index.browser.js +0 -20
  285. package/dist/server/interfaces/index.d.ts +0 -2
  286. package/dist/server/interfaces/index.js +0 -18
  287. package/dist/server/interfaces/nodejs/db/index.d.ts +0 -1
  288. package/dist/server/interfaces/nodejs/db/sequelize/UpsertOptions.d.ts +0 -4
  289. package/dist/server/interfaces/nodejs/db/sequelize/index.d.ts +0 -6
  290. package/dist/server/interfaces/nodejs/db/sequelize/index.js +0 -22
  291. package/dist/server/interfaces/nodejs/index.d.ts +0 -1
  292. package/dist/server/managers/index.browser.d.ts +0 -2
  293. package/dist/server/managers/index.browser.js +0 -18
  294. package/dist/server/managers/index.d.ts +0 -2
  295. package/dist/server/managers/index.js +0 -18
  296. package/dist/server/scripts/index.browser.d.ts +0 -1
  297. package/dist/server/scripts/index.d.ts +0 -1
  298. package/dist/server/services/index.browser.d.ts +0 -1
  299. package/dist/server/services/index.d.ts +0 -2
  300. package/dist/server/services/index.js +0 -18
  301. package/dist/server/services/redis/index.d.ts +0 -3
  302. package/dist/server/services/time/index.d.ts +0 -2
  303. package/dist/server/services/time/index.js +0 -18
  304. package/dist/server/types/index.browser.d.ts +0 -2
  305. package/dist/server/types/index.browser.js +0 -18
  306. package/dist/server/types/index.d.ts +0 -2
  307. package/dist/server/types/index.js +0 -18
  308. package/dist/server/utils/global/index.d.ts +0 -11
  309. package/dist/server/utils/global/index.js +0 -27
  310. package/dist/server/utils/index.browser.d.ts +0 -17
  311. package/dist/server/utils/index.browser.js +0 -33
  312. package/dist/server/utils/index.d.ts +0 -2
  313. package/dist/server/utils/index.js +0 -18
  314. package/dist/server/utils/nodejs/index.d.ts +0 -2
  315. package/dist/server/utils/nodejs/sequelize-utils/index.d.ts +0 -1
  316. package/dist/server/utils/try-catch/index.d.ts +0 -1
  317. /package/dist/{client → browser/cjs}/constants/COORDINATE.js +0 -0
  318. /package/dist/{client → browser/cjs}/constants/CRUD.js +0 -0
  319. /package/dist/{client → browser/cjs}/constants/DATE.js +0 -0
  320. /package/dist/{client → browser/cjs}/constants/DISTANCE.js +0 -0
  321. /package/dist/{client → browser/cjs}/constants/DURATION.js +0 -0
  322. /package/dist/{client → browser/cjs}/constants/NOT_NULL.js +0 -0
  323. /package/dist/{client → browser/cjs}/interfaces/Coordinate.js +0 -0
  324. /package/dist/{client → browser/cjs}/interfaces/Point2.js +0 -0
  325. /package/dist/{client → browser/cjs}/interfaces/Point3.js +0 -0
  326. /package/dist/{client → browser/cjs}/interfaces/StorageProvider.js +0 -0
  327. /package/dist/{client → browser/cjs}/managers/SessionManager.js +0 -0
  328. /package/dist/{client → browser/cjs}/managers/SessionManager.type.js +0 -0
  329. /package/dist/{client → browser/cjs}/scripts/base64Polyfill.js +0 -0
  330. /package/dist/{client → browser/cjs}/services/time/TimeService.js +0 -0
  331. /package/dist/{client → browser/cjs}/services/time/TimeService.type.js +0 -0
  332. /package/dist/{client → browser/cjs}/types/IntRage.js +0 -0
  333. /package/dist/{client → browser/cjs}/types/PartialExcept.js +0 -0
  334. /package/dist/{client → browser/cjs}/utils/AxiosUtils.js +0 -0
  335. /package/dist/{client → browser/cjs}/utils/BooleanUtils.js +0 -0
  336. /package/dist/{client → browser/cjs}/utils/Calc.js +0 -0
  337. /package/dist/{client → browser/cjs}/utils/CoordinateUtils.js +0 -0
  338. /package/dist/{client → browser/cjs}/utils/NumberUtils.js +0 -0
  339. /package/dist/{client → browser/cjs}/utils/Point3Utils.js +0 -0
  340. /package/dist/{client → browser/cjs}/utils/RandomUtils.js +0 -0
  341. /package/dist/{client → browser/cjs}/utils/StringUtils.js +0 -0
  342. /package/dist/{client → browser/cjs}/utils/UuidUtils.js +0 -0
  343. /package/dist/{client → browser/cjs}/utils/Validator.js +0 -0
  344. /package/dist/{client → browser/cjs}/utils/global/between.js +0 -0
  345. /package/dist/{client → browser/cjs}/utils/global/castArray.js +0 -0
  346. /package/dist/{client → browser/cjs}/utils/global/circularDistance.js +0 -0
  347. /package/dist/{client → browser/cjs}/utils/global/fallbackIfEqual.js +0 -0
  348. /package/dist/{client → browser/cjs}/utils/global/firstNonNullish.js +0 -0
  349. /package/dist/{client → browser/cjs}/utils/global/flat.js +0 -0
  350. /package/dist/{client → browser/cjs}/utils/global/pureEnum.js +0 -0
  351. /package/dist/{client → browser/cjs}/utils/global/sleep.js +0 -0
  352. /package/dist/{client → browser/cjs}/utils/try-catch/TryCatch.js +0 -0
  353. /package/dist/{client → browser/types}/constants/COORDINATE.d.ts +0 -0
  354. /package/dist/{client → browser/types}/constants/CRUD.d.ts +0 -0
  355. /package/dist/{client → browser/types}/constants/DATE.d.ts +0 -0
  356. /package/dist/{client → browser/types}/constants/DISTANCE.d.ts +0 -0
  357. /package/dist/{client → browser/types}/constants/DURATION.d.ts +0 -0
  358. /package/dist/{client → browser/types}/constants/NOT_NULL.d.ts +0 -0
  359. /package/dist/{client → browser/types}/interfaces/Coordinate.d.ts +0 -0
  360. /package/dist/{client → browser/types}/interfaces/Point2.d.ts +0 -0
  361. /package/dist/{client → browser/types}/interfaces/StorageProvider.d.ts +0 -0
  362. /package/dist/{client → browser/types}/scripts/base64Polyfill.d.ts +0 -0
  363. /package/dist/{client → browser/types}/services/time/TimeService.type.d.ts +0 -0
  364. /package/dist/{client → browser/types}/types/IntRage.d.ts +0 -0
  365. /package/dist/{client → browser/types}/types/PartialExcept.d.ts +0 -0
  366. /package/dist/{client → browser/types}/utils/ArrayUtils.d.ts +0 -0
  367. /package/dist/{client → browser/types}/utils/AxiosUtils.d.ts +0 -0
  368. /package/dist/{client → browser/types}/utils/BooleanUtils.d.ts +0 -0
  369. /package/dist/{client → browser/types}/utils/Calc.d.ts +0 -0
  370. /package/dist/{client → browser/types}/utils/JuminNumberUtils.d.ts +0 -0
  371. /package/dist/{client → browser/types}/utils/NumberUtils.d.ts +0 -0
  372. /package/dist/{client → browser/types}/utils/ObjectIdUtils.d.ts +0 -0
  373. /package/dist/{client → browser/types}/utils/RandomUtils.d.ts +0 -0
  374. /package/dist/{client → browser/types}/utils/Sequencer.d.ts +0 -0
  375. /package/dist/{client → browser/types}/utils/StringUtils.d.ts +0 -0
  376. /package/dist/{client → browser/types}/utils/UuidUtils.d.ts +0 -0
  377. /package/dist/{client → browser/types}/utils/Validator.d.ts +0 -0
  378. /package/dist/{client → browser/types}/utils/global/between.d.ts +0 -0
  379. /package/dist/{client → browser/types}/utils/global/castArray.d.ts +0 -0
  380. /package/dist/{client → browser/types}/utils/global/circularDistance.d.ts +0 -0
  381. /package/dist/{client → browser/types}/utils/global/fallbackIfEqual.d.ts +0 -0
  382. /package/dist/{client → browser/types}/utils/global/fallbackIfNull.d.ts +0 -0
  383. /package/dist/{client → browser/types}/utils/global/fallbackIfUndefined.d.ts +0 -0
  384. /package/dist/{client → browser/types}/utils/global/firstNonNullish.d.ts +0 -0
  385. /package/dist/{client → browser/types}/utils/global/flat.d.ts +0 -0
  386. /package/dist/{client → browser/types}/utils/global/processFirstNonNullish.d.ts +0 -0
  387. /package/dist/{client → browser/types}/utils/global/pureEnum.d.ts +0 -0
  388. /package/dist/{client → browser/types}/utils/global/sleep.d.ts +0 -0
  389. /package/dist/{client → browser/types}/utils/try-catch/TryCatch.d.ts +0 -0
  390. /package/dist/{server → node/cjs}/constants/COORDINATE.js +0 -0
  391. /package/dist/{server → node/cjs}/constants/CRUD.js +0 -0
  392. /package/dist/{server → node/cjs}/constants/DATE.js +0 -0
  393. /package/dist/{server → node/cjs}/constants/DISTANCE.js +0 -0
  394. /package/dist/{server → node/cjs}/constants/DURATION.js +0 -0
  395. /package/dist/{server → node/cjs}/constants/NOT_NULL.js +0 -0
  396. /package/dist/{server → node/cjs}/constants/nodejs/TransactionManagerLogLevel.js +0 -0
  397. /package/dist/{server → node/cjs}/constants/nodejs/TransactionManagerTimeoutAction.js +0 -0
  398. /package/dist/{server → node/cjs}/interfaces/Coordinate.js +0 -0
  399. /package/dist/{server → node/cjs}/interfaces/Point2.js +0 -0
  400. /package/dist/{server → node/cjs}/interfaces/Point3.js +0 -0
  401. /package/dist/{server → node/cjs}/interfaces/StorageProvider.js +0 -0
  402. /package/dist/{server → node/cjs}/interfaces/nodejs/db/sequelize/Hook.js +0 -0
  403. /package/dist/{server → node/cjs}/interfaces/nodejs/db/sequelize/HookFn.js +0 -0
  404. /package/dist/{server → node/cjs}/interfaces/nodejs/db/sequelize/HookType.js +0 -0
  405. /package/dist/{server → node/cjs}/interfaces/nodejs/db/sequelize/ReloadOption.js +0 -0
  406. /package/dist/{server → node/cjs}/interfaces/nodejs/db/sequelize/TransactionOption.js +0 -0
  407. /package/dist/{server → node/cjs}/interfaces/nodejs/db/sequelize/UpsertOptions.js +0 -0
  408. /package/dist/{server → node/cjs}/managers/SessionManager.js +0 -0
  409. /package/dist/{server → node/cjs}/managers/SessionManager.type.js +0 -0
  410. /package/dist/{server → node/cjs}/managers/TransactionManager.types.js +0 -0
  411. /package/dist/{server → node/cjs}/scripts/base64Polyfill.js +0 -0
  412. /package/dist/{server → node/cjs}/services/redis/RedisClient.js +0 -0
  413. /package/dist/{server → node/cjs}/services/time/TimeService.js +0 -0
  414. /package/dist/{server → node/cjs}/services/time/TimeService.type.js +0 -0
  415. /package/dist/{server → node/cjs}/types/IntRage.js +0 -0
  416. /package/dist/{server → node/cjs}/types/PartialExcept.js +0 -0
  417. /package/dist/{server → node/cjs}/types/UpsertResult.js +0 -0
  418. /package/dist/{server → node/cjs}/utils/AxiosUtils.js +0 -0
  419. /package/dist/{server → node/cjs}/utils/BooleanUtils.js +0 -0
  420. /package/dist/{server → node/cjs}/utils/Calc.js +0 -0
  421. /package/dist/{server → node/cjs}/utils/CoordinateUtils.js +0 -0
  422. /package/dist/{server → node/cjs}/utils/NumberUtils.js +0 -0
  423. /package/dist/{server → node/cjs}/utils/Point3Utils.js +0 -0
  424. /package/dist/{server → node/cjs}/utils/RandomUtils.js +0 -0
  425. /package/dist/{server → node/cjs}/utils/StringUtils.js +0 -0
  426. /package/dist/{server → node/cjs}/utils/UuidUtils.js +0 -0
  427. /package/dist/{server → node/cjs}/utils/Validator.js +0 -0
  428. /package/dist/{server → node/cjs}/utils/global/between.js +0 -0
  429. /package/dist/{server → node/cjs}/utils/global/castArray.js +0 -0
  430. /package/dist/{server → node/cjs}/utils/global/circularDistance.js +0 -0
  431. /package/dist/{server → node/cjs}/utils/global/fallbackIfEqual.js +0 -0
  432. /package/dist/{server → node/cjs}/utils/global/firstNonNullish.js +0 -0
  433. /package/dist/{server → node/cjs}/utils/global/flat.js +0 -0
  434. /package/dist/{server → node/cjs}/utils/global/pureEnum.js +0 -0
  435. /package/dist/{server → node/cjs}/utils/global/sleep.js +0 -0
  436. /package/dist/{server → node/cjs}/utils/nodejs/HookUtils.js +0 -0
  437. /package/dist/{server → node/cjs}/utils/nodejs/sequelize-utils/types.js +0 -0
  438. /package/dist/{server → node/cjs}/utils/try-catch/TryCatch.js +0 -0
  439. /package/dist/{server → node/types}/constants/COORDINATE.d.ts +0 -0
  440. /package/dist/{server → node/types}/constants/CRUD.d.ts +0 -0
  441. /package/dist/{server → node/types}/constants/DATE.d.ts +0 -0
  442. /package/dist/{server → node/types}/constants/DISTANCE.d.ts +0 -0
  443. /package/dist/{server → node/types}/constants/DURATION.d.ts +0 -0
  444. /package/dist/{server → node/types}/constants/NOT_NULL.d.ts +0 -0
  445. /package/dist/{server → node/types}/constants/nodejs/TransactionManagerLogLevel.d.ts +0 -0
  446. /package/dist/{server → node/types}/constants/nodejs/TransactionManagerTimeoutAction.d.ts +0 -0
  447. /package/dist/{server → node/types}/interfaces/Coordinate.d.ts +0 -0
  448. /package/dist/{server → node/types}/interfaces/Point2.d.ts +0 -0
  449. /package/dist/{server → node/types}/interfaces/StorageProvider.d.ts +0 -0
  450. /package/dist/{server → node/types}/interfaces/nodejs/db/sequelize/HookType.d.ts +0 -0
  451. /package/dist/{server → node/types}/interfaces/nodejs/db/sequelize/ReloadOption.d.ts +0 -0
  452. /package/dist/{server → node/types}/interfaces/nodejs/db/sequelize/TransactionOption.d.ts +0 -0
  453. /package/dist/{server → node/types}/scripts/base64Polyfill.d.ts +0 -0
  454. /package/dist/{server → node/types}/services/redis/RedisClient.d.ts +0 -0
  455. /package/dist/{server → node/types}/services/time/TimeService.type.d.ts +0 -0
  456. /package/dist/{server → node/types}/types/IntRage.d.ts +0 -0
  457. /package/dist/{server → node/types}/types/PartialExcept.d.ts +0 -0
  458. /package/dist/{server → node/types}/types/UpsertResult.d.ts +0 -0
  459. /package/dist/{server → node/types}/utils/ArrayUtils.d.ts +0 -0
  460. /package/dist/{server → node/types}/utils/AxiosUtils.d.ts +0 -0
  461. /package/dist/{server → node/types}/utils/BooleanUtils.d.ts +0 -0
  462. /package/dist/{server → node/types}/utils/Calc.d.ts +0 -0
  463. /package/dist/{server → node/types}/utils/JuminNumberUtils.d.ts +0 -0
  464. /package/dist/{server → node/types}/utils/NumberUtils.d.ts +0 -0
  465. /package/dist/{server → node/types}/utils/ObjectIdUtils.d.ts +0 -0
  466. /package/dist/{server → node/types}/utils/RandomUtils.d.ts +0 -0
  467. /package/dist/{server → node/types}/utils/Sequencer.d.ts +0 -0
  468. /package/dist/{server → node/types}/utils/StringUtils.d.ts +0 -0
  469. /package/dist/{server → node/types}/utils/UuidUtils.d.ts +0 -0
  470. /package/dist/{server → node/types}/utils/Validator.d.ts +0 -0
  471. /package/dist/{server → node/types}/utils/global/between.d.ts +0 -0
  472. /package/dist/{server → node/types}/utils/global/castArray.d.ts +0 -0
  473. /package/dist/{server → node/types}/utils/global/circularDistance.d.ts +0 -0
  474. /package/dist/{server → node/types}/utils/global/fallbackIfEqual.d.ts +0 -0
  475. /package/dist/{server → node/types}/utils/global/fallbackIfNull.d.ts +0 -0
  476. /package/dist/{server → node/types}/utils/global/fallbackIfUndefined.d.ts +0 -0
  477. /package/dist/{server → node/types}/utils/global/firstNonNullish.d.ts +0 -0
  478. /package/dist/{server → node/types}/utils/global/flat.d.ts +0 -0
  479. /package/dist/{server → node/types}/utils/global/processFirstNonNullish.d.ts +0 -0
  480. /package/dist/{server → node/types}/utils/global/pureEnum.d.ts +0 -0
  481. /package/dist/{server → node/types}/utils/global/sleep.d.ts +0 -0
  482. /package/dist/{server → node/types}/utils/nodejs/sequelize-utils/types.d.ts +0 -0
  483. /package/dist/{server → node/types}/utils/try-catch/TryCatch.d.ts +0 -0
@@ -0,0 +1,173 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import EventEmitter from 'eventemitter3';
11
+ const LOG_TAG = 'TimeService';
12
+ export class TimeService extends EventEmitter {
13
+ static calculateNTPResultOffset(ntpResult) {
14
+ const { t1, t2, t3, t4 } = ntpResult;
15
+ return ((t2 - t1) + (t3 - t4)) / 2;
16
+ }
17
+ constructor(options) {
18
+ super();
19
+ // Options
20
+ this.syncInterval = options === null || options === void 0 ? void 0 : options.syncInterval;
21
+ this.clientTimeProvider = options === null || options === void 0 ? void 0 : options.clientTimeProvider;
22
+ this.serverTimeProvider = options === null || options === void 0 ? void 0 : options.serverTimeProvider;
23
+ // Bind
24
+ this.sync = this.sync.bind(this);
25
+ this.fetchServerNTPResult = this.fetchServerNTPResult.bind(this);
26
+ }
27
+ getOffset(defaultValue) {
28
+ if (this.offset !== undefined) {
29
+ return this.offset;
30
+ }
31
+ if (defaultValue !== undefined) {
32
+ return defaultValue;
33
+ }
34
+ return undefined;
35
+ }
36
+ setOffset(offset) {
37
+ return this.offset = offset;
38
+ }
39
+ getSyncedAt() {
40
+ return this.syncedAt;
41
+ }
42
+ setSyncedAt(syncedAt) {
43
+ return (this.syncedAt = syncedAt);
44
+ }
45
+ getSyncInterval() {
46
+ return this.syncInterval;
47
+ }
48
+ setSyncInterval(interval) {
49
+ this.syncInterval = interval;
50
+ // Emit
51
+ this.emit('SYNC_INTERVAL_CHANGED', interval);
52
+ if (this.syncHandler !== undefined) {
53
+ this.stopSync();
54
+ this.startSync();
55
+ }
56
+ }
57
+ getClientTimeProvider() {
58
+ return this.clientTimeProvider;
59
+ }
60
+ setClientTimeProvider(provider) {
61
+ this.clientTimeProvider = provider !== null && provider !== void 0 ? provider : undefined;
62
+ }
63
+ getClientTime() {
64
+ var _a;
65
+ return (_a = this.getClientTimeProvider()) === null || _a === void 0 ? void 0 : _a();
66
+ }
67
+ getServerTimeProvider() {
68
+ return this.serverTimeProvider;
69
+ }
70
+ setServerTimeProvider(provider) {
71
+ this.serverTimeProvider = provider !== null && provider !== void 0 ? provider : undefined;
72
+ }
73
+ getServerTime() {
74
+ const offset = this.getOffset();
75
+ if (offset == null) {
76
+ return offset;
77
+ }
78
+ const clientTime = this.getClientTime();
79
+ if (clientTime == null) {
80
+ return clientTime;
81
+ }
82
+ return clientTime + offset;
83
+ }
84
+ getTime() {
85
+ var _a, _b;
86
+ return (_b = (_a = this.getServerTime()) !== null && _a !== void 0 ? _a : this.getClientTime()) !== null && _b !== void 0 ? _b : Date.now();
87
+ }
88
+ fetchServerNTPResult(t1) {
89
+ return __awaiter(this, void 0, void 0, function* () {
90
+ try {
91
+ const provider = this.getServerTimeProvider();
92
+ if (typeof provider === 'function') {
93
+ return yield provider(t1);
94
+ }
95
+ }
96
+ catch (e) {
97
+ console.error(e);
98
+ }
99
+ return null;
100
+ });
101
+ }
102
+ sync() {
103
+ return __awaiter(this, void 0, void 0, function* () {
104
+ try {
105
+ // T1 (Client Request Time)
106
+ const requestedAt = Date.now();
107
+ // Fetch server time from server
108
+ const serverNtpResult = yield this.fetchServerNTPResult(requestedAt);
109
+ // Check is null
110
+ if (serverNtpResult === null) {
111
+ console.warn(LOG_TAG, 'Failed to get server time');
112
+ return null;
113
+ }
114
+ // T2 (Server Receive Time)
115
+ const { t2 } = serverNtpResult;
116
+ // Check is not a number
117
+ if (isNaN(Number(t2))) {
118
+ // Not a Number
119
+ console.error(LOG_TAG, 'invalid server time(t2), not a number', t2);
120
+ return null;
121
+ }
122
+ // T3 (Server Transmit Time)
123
+ const { t3 } = serverNtpResult;
124
+ // Check is not a number
125
+ if (isNaN(Number(t3))) {
126
+ // Not a Number
127
+ console.error(LOG_TAG, 'invalid server time(t2), not a number', t2);
128
+ return null;
129
+ }
130
+ // T4 (Client Receive Time)
131
+ const receivedAt = Date.now();
132
+ const ntpResult = {
133
+ t1: requestedAt,
134
+ t2: t2,
135
+ t3: t3,
136
+ t4: receivedAt,
137
+ };
138
+ // Calculate offset
139
+ const offset = TimeService.calculateNTPResultOffset(ntpResult);
140
+ // Save calculated offset
141
+ this.setOffset(offset);
142
+ // Mark synced timestamp
143
+ const syncedAt = Date.now();
144
+ this.setSyncedAt(syncedAt);
145
+ this.emit('SYNCED', offset, syncedAt);
146
+ }
147
+ catch (e) {
148
+ console.error(e);
149
+ }
150
+ return null;
151
+ });
152
+ }
153
+ startSync() {
154
+ if (this.syncHandler != null) {
155
+ console.warn('sync is already started');
156
+ return;
157
+ }
158
+ const syncInterval = this.getSyncInterval();
159
+ if (syncInterval == null || syncInterval <= 0) {
160
+ console.warn('sync is not started', 'syncInterval', syncInterval);
161
+ return;
162
+ }
163
+ this.syncHandler = setInterval(this.sync.bind(this), syncInterval);
164
+ }
165
+ ;
166
+ stopSync() {
167
+ if (this.syncHandler != null) {
168
+ clearInterval(this.syncHandler);
169
+ this.syncHandler = undefined;
170
+ }
171
+ }
172
+ ;
173
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export * from "./TimeService.mjs";
2
+ export * from "./TimeService.type.mjs";
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,2 @@
1
+ export * from './IntRage.mjs';
2
+ export * from './PartialExcept.mjs';
@@ -0,0 +1,2 @@
1
+ export * from './index.browser.mjs';
2
+ export * from './UpsertResult.mjs';
@@ -0,0 +1,26 @@
1
+ import { castArray } from "./global/index.mjs";
2
+ export class ArrayUtils {
3
+ static castArray(value) {
4
+ return castArray(value);
5
+ }
6
+ /**
7
+ * 객체를 요소로 가지는 배열에서 가장 큰 값(Property)를 가지는 객체를 반환한다
8
+ * @param e 객체 배열
9
+ * @param key 값을 비교할 Property 키
10
+ */
11
+ static getGreatestObject(e, key) {
12
+ return e.reduce((prev, current) => ((prev[key] > current[key] ? prev : current)));
13
+ }
14
+ static removeDuplicate(arr) {
15
+ return [...new Set(arr)];
16
+ }
17
+ static removeObjectDuplicate(arr, key) {
18
+ return arr.filter((v, i, self) => (i === self.findIndex(e => (e[key] === v[key]))));
19
+ }
20
+ static allValuesEqual(...values) {
21
+ if (values.length === 0) {
22
+ return true;
23
+ }
24
+ return values.every((value) => value === values[0]);
25
+ }
26
+ }
@@ -0,0 +1,49 @@
1
+ export class AxiosUtils {
2
+ static headerValue2String(value) {
3
+ if (value === undefined) {
4
+ return null;
5
+ }
6
+ if (value === null || typeof value === 'string') {
7
+ return value;
8
+ }
9
+ if (Array.isArray(value)) {
10
+ if (value.length > 0) {
11
+ for (const e of value) {
12
+ if (typeof e === 'string') {
13
+ return e;
14
+ }
15
+ }
16
+ // There is no any values having string type
17
+ return null;
18
+ }
19
+ else {
20
+ return null;
21
+ }
22
+ }
23
+ return String(value);
24
+ }
25
+ static headerValue2Number(value) {
26
+ if (value === undefined) {
27
+ return null;
28
+ }
29
+ if (value === null || typeof value === 'number') {
30
+ return value;
31
+ }
32
+ if (Array.isArray(value)) {
33
+ if (value.length > 0) {
34
+ for (const e of value) {
35
+ if (typeof e === 'number') {
36
+ return e;
37
+ }
38
+ }
39
+ // There is no any values having string type
40
+ return null;
41
+ }
42
+ else {
43
+ return null;
44
+ }
45
+ }
46
+ const result = Number(value);
47
+ return isNaN(result) ? null : result;
48
+ }
49
+ }
@@ -0,0 +1,5 @@
1
+ export function parseBoolean(value, defaultValue) {
2
+ if (value === undefined || value === null)
3
+ return defaultValue;
4
+ return (value === 'true' || value === true) || (value === 1 || value === '1');
5
+ }
@@ -0,0 +1,23 @@
1
+ export class Calc {
2
+ static average(...values) {
3
+ const length = values.length;
4
+ if (length === 0) {
5
+ return NaN;
6
+ }
7
+ let sum = 0;
8
+ for (let i = 0; i < length; ++i) {
9
+ sum += values[i];
10
+ }
11
+ return sum / length;
12
+ }
13
+ static median(...values) {
14
+ const len = values.length;
15
+ if (len === 0)
16
+ return NaN;
17
+ const sorted = values.slice().sort((a, b) => a - b); // O(n log n)
18
+ const mid = len >> 1;
19
+ return len % 2 === 0
20
+ ? (sorted[mid - 1] + sorted[mid]) / 2
21
+ : sorted[mid];
22
+ }
23
+ }
@@ -0,0 +1,38 @@
1
+ export class CoordinateUtils {
2
+ static isValidLatitude(latitude) {
3
+ return /^-?([0-8]?[0-9]|90)(\.[0-9]{1,15})$/.test(latitude.toString());
4
+ }
5
+ static isValidLongitude(longitude) {
6
+ return /^-?([0-9]{1,2}|1[0-7][0-9]|180)(\.[0-9]{1,14})$/.test(longitude.toString());
7
+ }
8
+ static isValidLatitudeLongitude(latitude, longitude) {
9
+ return CoordinateUtils.isValidLatitude(latitude) && CoordinateUtils.isValidLongitude(longitude);
10
+ }
11
+ static isValidCoordinate(coordinate) {
12
+ return this.isValidLatitudeLongitude(coordinate.latitude, coordinate.longitude);
13
+ }
14
+ static crowDistance(...coordinates) {
15
+ if (coordinates.length <= 2) {
16
+ const toRad = (value) => value * Math.PI / 180;
17
+ const c1 = coordinates[0];
18
+ const c2 = coordinates[1];
19
+ if (!c1 || !c2) {
20
+ return 0;
21
+ }
22
+ const R = 6371e3;
23
+ const dLat = toRad(c2.latitude - c1.latitude);
24
+ const dLon = toRad(c2.longitude - c1.longitude);
25
+ const lat1 = toRad(c1.latitude);
26
+ const lat2 = toRad(c2.latitude);
27
+ const a = Math.sin(dLat / 2) * Math.sin(dLat / 2) +
28
+ Math.sin(dLon / 2) * Math.sin(dLon / 2) * Math.cos(lat1) * Math.cos(lat2);
29
+ const c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
30
+ return R * c;
31
+ }
32
+ let totalDistance = 0;
33
+ for (let i = 0; i < coordinates.length - 1; ++i) {
34
+ totalDistance += this.crowDistance(coordinates[i], coordinates[i + 1]);
35
+ }
36
+ return totalDistance;
37
+ }
38
+ }
@@ -0,0 +1,303 @@
1
+ import moment from "moment";
2
+ import { DATE } from "../constants/DATE.mjs";
3
+ export class DateUtils {
4
+ static isPositiveInteger(value, strict) {
5
+ if (strict) {
6
+ if (typeof value !== 'number') {
7
+ return false;
8
+ }
9
+ }
10
+ if (typeof value === 'bigint') {
11
+ return value >= 0 && value <= Number.MAX_SAFE_INTEGER;
12
+ }
13
+ if (typeof value === 'number') {
14
+ if (!Number.isSafeInteger(value)) {
15
+ return false;
16
+ }
17
+ return value >= 0 && value <= Number.MAX_SAFE_INTEGER;
18
+ }
19
+ if (typeof value === 'string') {
20
+ if (!/^(0|[1-9]\d*)$/g.test(value)) {
21
+ return false;
22
+ }
23
+ return DateUtils.isPositiveInteger(Number(value), strict);
24
+ }
25
+ return false;
26
+ }
27
+ static isMilliseconds(value, strict) {
28
+ return DateUtils.isPositiveInteger(value, strict);
29
+ }
30
+ static isSeconds(value, strict) {
31
+ return DateUtils.isPositiveInteger(value, strict);
32
+ }
33
+ static isUnix(value, strict) {
34
+ return DateUtils.isSeconds(value, strict);
35
+ }
36
+ static isISO8601(value) {
37
+ if (typeof value !== 'string') {
38
+ return false;
39
+ }
40
+ if (!/(Z)|(\+\d{2}:\d{2})$/g.test(value)) {
41
+ return false;
42
+ }
43
+ return !Number.isNaN((new Date(value)).getTime());
44
+ }
45
+ static isValid(value, format, strict) {
46
+ var _a;
47
+ if (format === undefined) {
48
+ return DateUtils.isSeconds(value, strict) || DateUtils.isMilliseconds(value, strict) || DateUtils.isISO8601(value);
49
+ }
50
+ else {
51
+ switch (format) {
52
+ case DATE.FORMAT.UNIX: return DateUtils.isUnix(value, strict);
53
+ case DATE.FORMAT.SECONDS: return DateUtils.isSeconds(value, strict);
54
+ case DATE.FORMAT.MILLISECONDS: return DateUtils.isMilliseconds(value, strict);
55
+ case DATE.FORMAT.ISO_8601: return DateUtils.isISO8601(value);
56
+ default: {
57
+ throw new Error(`unknown format: ${format}(${(_a = DATE.FORMAT.toString(format)) !== null && _a !== void 0 ? _a : 'unknown'})`);
58
+ }
59
+ }
60
+ }
61
+ }
62
+ static from(value, format, strict) {
63
+ var _a;
64
+ if (value instanceof Date) {
65
+ return value;
66
+ }
67
+ if (!DateUtils.isValid(value, format, strict)) {
68
+ throw new Error('invalid date');
69
+ }
70
+ if (format === undefined) {
71
+ if (DateUtils.isMilliseconds(value, strict)) {
72
+ return DateUtils.from(value, DATE.FORMAT.MILLISECONDS);
73
+ }
74
+ if (DateUtils.isISO8601(value)) {
75
+ return DateUtils.from(value, DATE.FORMAT.ISO_8601);
76
+ }
77
+ throw new Error(`no option to convert value to date`);
78
+ }
79
+ switch (format) {
80
+ case DATE.FORMAT.UNIX: return new Date(Number(value) * 1000);
81
+ case DATE.FORMAT.SECONDS: return new Date(Number(value) * 1000);
82
+ case DATE.FORMAT.MILLISECONDS: return new Date(Number(value));
83
+ case DATE.FORMAT.ISO_8601: return new Date(value);
84
+ default: {
85
+ throw new Error(`unknown format: ${format}(${(_a = DATE.FORMAT.toString(format)) !== null && _a !== void 0 ? _a : 'unknown'})`);
86
+ }
87
+ }
88
+ }
89
+ static fromUnix(value, strict) {
90
+ return DateUtils.from(value, DATE.FORMAT.UNIX, strict);
91
+ }
92
+ static fromSeconds(value, strict) {
93
+ return DateUtils.from(value, DATE.FORMAT.SECONDS, strict);
94
+ }
95
+ static fromMilliseconds(value, strict) {
96
+ return DateUtils.from(value, DATE.FORMAT.MILLISECONDS, strict);
97
+ }
98
+ static fromISO8601(value) {
99
+ return DateUtils.from(value, DATE.FORMAT.ISO_8601);
100
+ }
101
+ }
102
+ DateUtils.relativeDate = (input, base = Date.now()) => {
103
+ // Create new moment instance to apply new locale
104
+ const datetime = moment.isMoment(input) ? moment(input.toDate()) : moment(input);
105
+ if (!datetime.isValid()) {
106
+ console.error('core-js:DateUtils.relativeDate() datetime is invalid', datetime);
107
+ return '<INVALID DATE>';
108
+ }
109
+ return datetime.from(base);
110
+ };
111
+ DateUtils.setLocale = (language) => {
112
+ const relativeTime = DateUtils.getRelativeTimeSpec(language);
113
+ if (relativeTime !== undefined) {
114
+ moment.updateLocale(language, { relativeTime });
115
+ }
116
+ moment.locale(language);
117
+ };
118
+ DateUtils.getRelativeTimeSpec = (locale) => {
119
+ if (locale in DateUtils.relativeTimeSpecs) {
120
+ return DateUtils.relativeTimeSpecs[locale];
121
+ }
122
+ return undefined;
123
+ };
124
+ (function (DateUtils) {
125
+ DateUtils.relativeTimeSpecs = {
126
+ ko: {
127
+ future: "%s 후",
128
+ past: "%s 전",
129
+ s: number => `${number}초`,
130
+ ss: number => `${number}초`,
131
+ m: number => `${number}분`,
132
+ mm: number => `${number}분`,
133
+ h: number => `${number}시간`,
134
+ hh: number => `${number}시간`,
135
+ d: number => `${number}일`,
136
+ dd: number => `${number}일`,
137
+ M: number => `${number}개월`,
138
+ MM: number => `${number}개월`,
139
+ y: number => `${number}년`,
140
+ yy: number => `${number}년`
141
+ },
142
+ en: {
143
+ future: "in %s",
144
+ past: "%s ago",
145
+ s: number => number === 1 ? `${number} second` : `${number} seconds`,
146
+ ss: number => `${number} seconds`,
147
+ m: number => number === 1 ? `${number} minute` : `${number} minutes`,
148
+ mm: number => `${number} minutes`,
149
+ h: number => number === 1 ? `${number} hour` : `${number} hours`,
150
+ hh: number => `${number} hours`,
151
+ d: number => number === 1 ? `${number} day` : `${number} days`,
152
+ dd: number => `${number} days`,
153
+ M: number => number === 1 ? `${number} month` : `${number} months`,
154
+ MM: number => `${number} months`,
155
+ y: number => number === 1 ? `${number} year` : `${number} years`,
156
+ yy: number => `${number} years`
157
+ },
158
+ ja: {
159
+ future: "%s後",
160
+ past: "%s前",
161
+ s: number => `${number}秒`,
162
+ ss: number => `${number}秒`,
163
+ m: number => `${number}分`,
164
+ mm: number => `${number}分`,
165
+ h: number => `${number}時`,
166
+ hh: number => `${number}時`,
167
+ d: number => `${number}日`,
168
+ dd: number => `${number}日`,
169
+ M: number => `${number}月`,
170
+ MM: number => `${number}月`,
171
+ y: number => `${number}年`,
172
+ yy: number => `${number}年`
173
+ },
174
+ zh: {
175
+ future: "%s后",
176
+ past: "%s前",
177
+ s: number => `${number}秒`,
178
+ ss: number => `${number}秒`,
179
+ m: number => `${number}分钟`,
180
+ mm: number => `${number}分钟`,
181
+ h: number => `${number}个小时`,
182
+ hh: number => `${number}个小时`,
183
+ d: number => `${number}天`,
184
+ dd: number => `${number}天`,
185
+ M: number => `${number}个月`,
186
+ MM: number => `${number}个月`,
187
+ y: number => `${number}年`,
188
+ yy: number => `${number}年`
189
+ },
190
+ ru: {
191
+ future: "через %s",
192
+ past: "%s назад",
193
+ s: number => `${number} секунд`,
194
+ ss: number => `${number} секунд`,
195
+ m: number => `${number} минута`,
196
+ mm: number => `${number} минут`,
197
+ h: number => `${number} час`,
198
+ hh: number => `${number} часов`,
199
+ d: number => `${number} день`,
200
+ dd: number => `${number} дней`,
201
+ M: number => `${number} месяц`,
202
+ MM: number => `${number} месяцев`,
203
+ y: number => `${number} год`,
204
+ yy: number => `${number} лет`
205
+ },
206
+ uz: {
207
+ future: "%sdan keyin",
208
+ past: "%s avval",
209
+ s: number => `${number} soniya`,
210
+ ss: number => `${number} soniya`,
211
+ m: number => `${number} daqiqa`,
212
+ mm: number => `${number} daqiqa`,
213
+ h: number => `${number} soat`,
214
+ hh: number => `${number} soat`,
215
+ d: number => `${number} kun`,
216
+ dd: number => `${number} kun`,
217
+ M: number => `${number} oy`,
218
+ MM: number => `${number} oy`,
219
+ y: number => `${number} yil`,
220
+ yy: number => `${number} yil`
221
+ },
222
+ de: {
223
+ future: "in %s",
224
+ past: "vor %s",
225
+ s: number => `${number === 1 ? "einer" : number} Sekunde${number === 1 ? "" : "n"}`,
226
+ ss: number => `${number} Sekunde${number === 1 ? "" : "n"}`,
227
+ m: number => `${number === 1 ? "einer" : number} Minute${number === 1 ? "" : "n"}`,
228
+ mm: number => `${number} Minute${number === 1 ? "" : "n"}`,
229
+ h: number => `${number === 1 ? "einer" : number} Stunde${number === 1 ? "" : "n"}`,
230
+ hh: number => `${number} Stunde${number === 1 ? "" : "n"}`,
231
+ d: number => `${number === 1 ? "einem" : number} Tag${number === 1 ? "" : "en"}`,
232
+ dd: number => `${number} Tag${number === 1 ? "" : "en"}`,
233
+ M: number => `${number === 1 ? "einem" : number} Monat${number === 1 ? "" : "en"}`,
234
+ MM: number => `${number} Monat${number === 1 ? "" : "en"}`,
235
+ y: number => `${number === 1 ? "einem" : number} Jahr${number === 1 ? "" : "en"}`,
236
+ yy: number => `${number} Jahr${number === 1 ? "" : "en"}`
237
+ },
238
+ fr: {
239
+ future: "dans %s",
240
+ past: "il y a %s",
241
+ s: number => `quelques secondes`,
242
+ ss: number => `${number} secondes`,
243
+ m: number => `une minute`,
244
+ mm: number => `${number} minutes`,
245
+ h: number => `une heure`,
246
+ hh: number => `${number} heures`,
247
+ d: number => `un jour`,
248
+ dd: number => `${number} jours`,
249
+ M: number => `un mois`,
250
+ MM: number => `${number} mois`,
251
+ y: number => `un an`,
252
+ yy: number => `${number} ans`
253
+ },
254
+ vi: {
255
+ future: "sau %s",
256
+ past: "%s trước",
257
+ s: number => `${number} giây`,
258
+ ss: number => `${number} giây`,
259
+ m: number => `${number} phút`,
260
+ mm: number => `${number} phút`,
261
+ h: number => `${number} giờ`,
262
+ hh: number => `${number} giờ`,
263
+ d: number => `${number} ngày`,
264
+ dd: number => `${number} ngày`,
265
+ M: number => `${number} tháng`,
266
+ MM: number => `${number} tháng`,
267
+ y: number => `${number} năm`,
268
+ yy: number => `${number} năm`
269
+ },
270
+ th: {
271
+ future: "ใน %s",
272
+ past: "%s ที่แล้ว",
273
+ s: number => `${number} วินาที`,
274
+ ss: number => `${number} วินาที`,
275
+ m: number => `${number} นาที`,
276
+ mm: number => `${number} นาที`,
277
+ h: number => `${number} ชั่วโมง`,
278
+ hh: number => `${number} ชั่วโมง`,
279
+ d: number => `${number} วัน`,
280
+ dd: number => `${number} วัน`,
281
+ M: number => `${number} เดือน`,
282
+ MM: number => `${number} เดือน`,
283
+ y: number => `${number} ปี`,
284
+ yy: number => `${number} ปี`
285
+ },
286
+ fil: {
287
+ future: "sa loob ng %s",
288
+ past: "%s ang nakalipas",
289
+ s: number => `${number} segundo`,
290
+ ss: number => `${number} segundo`,
291
+ m: number => `${number} minuto`,
292
+ mm: number => `${number} minuto`,
293
+ h: number => `${number} oras`,
294
+ hh: number => `${number} oras`,
295
+ d: number => `${number} araw`,
296
+ dd: number => `${number} araw`,
297
+ M: number => `${number} buwan`,
298
+ MM: number => `${number} buwan`,
299
+ y: number => `${number} taon`,
300
+ yy: number => `${number} taon`
301
+ },
302
+ };
303
+ })(DateUtils || (DateUtils = {}));