@prestizni-software/server-dem 0.7.4 → 0.7.5

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 (517) hide show
  1. package/AutoUpdateClientManagerClass.d.ts +141 -0
  2. package/AutoUpdateClientManagerClass.js +656 -0
  3. package/AutoUpdateClientManagerClass.js.map +1 -0
  4. package/AutoUpdateManagerClass.d.ts +102 -0
  5. package/AutoUpdateManagerClass.js +117 -0
  6. package/AutoUpdateManagerClass.js.map +1 -0
  7. package/AutoUpdateServerManagerClass.d.ts +208 -0
  8. package/AutoUpdateServerManagerClass.js +913 -0
  9. package/AutoUpdateServerManagerClass.js.map +1 -0
  10. package/AutoUpdatedClientObjectClass.d.ts +215 -0
  11. package/AutoUpdatedClientObjectClass.js +911 -0
  12. package/AutoUpdatedClientObjectClass.js.map +1 -0
  13. package/AutoUpdatedServerObjectClass.d.ts +134 -0
  14. package/AutoUpdatedServerObjectClass.js +346 -0
  15. package/AutoUpdatedServerObjectClass.js.map +1 -0
  16. package/ClientTypes.d.ts +15 -0
  17. package/ClientTypes.js +52 -0
  18. package/ClientTypes.js.map +1 -0
  19. package/CommonTypes.d.ts +259 -0
  20. package/CommonTypes.js +233 -0
  21. package/CommonTypes.js.map +1 -0
  22. package/CommonTypes_server.d.ts +1 -0
  23. package/CommonTypes_server.js +2 -0
  24. package/CommonTypes_server.js.map +1 -0
  25. package/{dist/DEMErrors.js.map → DEMErrors.js.map} +1 -1
  26. package/ServerTypes.d.ts +16 -0
  27. package/ServerTypes.js +60 -0
  28. package/ServerTypes.js.map +1 -0
  29. package/client.d.ts +6 -0
  30. package/client.js +7 -0
  31. package/client.js.map +1 -0
  32. package/coverage/lcov-report/block-navigation.js +71 -0
  33. package/coverage/lcov-report/block-navigation.js.map +1 -0
  34. package/coverage/lcov-report/prettify.js +478 -0
  35. package/coverage/lcov-report/prettify.js.map +1 -0
  36. package/coverage/lcov-report/sorter.js +177 -0
  37. package/coverage/lcov-report/sorter.js.map +1 -0
  38. package/dist/AutoUpdateClientManagerClass.d.ts +20 -0
  39. package/dist/AutoUpdateClientManagerClass.js +283 -0
  40. package/dist/AutoUpdateClientManagerClass.js.map +1 -0
  41. package/dist/AutoUpdateManagerClass.d.ts +17 -96
  42. package/dist/AutoUpdateManagerClass.js +15 -73
  43. package/dist/AutoUpdateManagerClass.js.map +1 -1
  44. package/dist/AutoUpdateServerManagerClass.d.ts +18 -207
  45. package/dist/AutoUpdateServerManagerClass.js +198 -680
  46. package/dist/AutoUpdateServerManagerClass.js.map +1 -1
  47. package/dist/AutoUpdatedClientObjectClass.d.ts +63 -206
  48. package/dist/AutoUpdatedClientObjectClass.js +660 -707
  49. package/dist/AutoUpdatedClientObjectClass.js.map +1 -1
  50. package/dist/AutoUpdatedServerObjectClass.d.ts +13 -126
  51. package/dist/AutoUpdatedServerObjectClass.js +92 -315
  52. package/dist/AutoUpdatedServerObjectClass.js.map +1 -1
  53. package/dist/ClientTypes.d.ts +13 -0
  54. package/dist/ClientTypes.js +70 -0
  55. package/dist/ClientTypes.js.map +1 -0
  56. package/dist/CommonTypes.d.ts +3 -266
  57. package/dist/CommonTypes.js +4 -234
  58. package/dist/CommonTypes.js.map +1 -1
  59. package/dist/CommonTypes_server.d.ts +1 -1
  60. package/dist/CommonTypes_server.js +2 -1
  61. package/dist/CommonTypes_server.js.map +1 -1
  62. package/dist/ServerTypes.d.ts +13 -0
  63. package/dist/ServerTypes.js +78 -0
  64. package/dist/ServerTypes.js.map +1 -0
  65. package/dist/TestTypes.d.ts +1 -0
  66. package/dist/TestTypes.js +7 -0
  67. package/dist/TestTypes.js.map +1 -0
  68. package/dist/client.d.ts +1 -0
  69. package/dist/client.js +12 -0
  70. package/dist/client.js.map +1 -0
  71. package/dist/coverage/lcov-report/block-navigation.d.ts +1 -0
  72. package/dist/coverage/lcov-report/block-navigation.js +71 -0
  73. package/dist/coverage/lcov-report/block-navigation.js.map +1 -0
  74. package/dist/coverage/lcov-report/prettify.d.ts +0 -0
  75. package/dist/coverage/lcov-report/prettify.js +736 -0
  76. package/dist/coverage/lcov-report/prettify.js.map +1 -0
  77. package/dist/coverage/lcov-report/sorter.d.ts +1 -0
  78. package/dist/coverage/lcov-report/sorter.js +177 -0
  79. package/dist/coverage/lcov-report/sorter.js.map +1 -0
  80. package/dist/dist/AutoUpdateClientManagerClass.d.ts +19 -0
  81. package/dist/dist/AutoUpdateClientManagerClass.js +284 -0
  82. package/dist/dist/AutoUpdateClientManagerClass.js.map +1 -0
  83. package/dist/dist/AutoUpdateManagerClass.d.ts +23 -0
  84. package/dist/dist/AutoUpdateManagerClass.js +60 -0
  85. package/dist/dist/AutoUpdateManagerClass.js.map +1 -0
  86. package/dist/dist/AutoUpdateServerManagerClass.d.ts +50 -0
  87. package/dist/dist/AutoUpdateServerManagerClass.js +413 -0
  88. package/dist/dist/AutoUpdateServerManagerClass.js.map +1 -0
  89. package/dist/dist/AutoUpdatedClientObjectClass.d.ts +72 -0
  90. package/dist/dist/AutoUpdatedClientObjectClass.js +865 -0
  91. package/dist/dist/AutoUpdatedClientObjectClass.js.map +1 -0
  92. package/dist/dist/AutoUpdatedServerObjectClass.d.ts +15 -0
  93. package/dist/dist/AutoUpdatedServerObjectClass.js +124 -0
  94. package/dist/dist/AutoUpdatedServerObjectClass.js.map +1 -0
  95. package/dist/dist/ClientTypes.d.ts +13 -0
  96. package/dist/dist/ClientTypes.js +71 -0
  97. package/dist/dist/ClientTypes.js.map +1 -0
  98. package/dist/dist/CommonTypes.d.ts +3 -0
  99. package/dist/dist/CommonTypes.js +20 -0
  100. package/dist/dist/CommonTypes.js.map +1 -0
  101. package/dist/dist/CommonTypes_server.d.ts +1 -0
  102. package/dist/dist/CommonTypes_server.js +4 -0
  103. package/dist/dist/CommonTypes_server.js.map +1 -0
  104. package/dist/dist/ServerTypes.d.ts +13 -0
  105. package/dist/dist/ServerTypes.js +79 -0
  106. package/dist/dist/ServerTypes.js.map +1 -0
  107. package/dist/dist/TestTypes.d.ts +1 -0
  108. package/dist/dist/TestTypes.js +8 -0
  109. package/dist/dist/TestTypes.js.map +1 -0
  110. package/dist/dist/client.d.ts +1 -0
  111. package/dist/dist/client.js +13 -0
  112. package/dist/dist/client.js.map +1 -0
  113. package/dist/dist/coverage/lcov-report/block-navigation.d.ts +1 -0
  114. package/dist/dist/coverage/lcov-report/block-navigation.js +71 -0
  115. package/dist/dist/coverage/lcov-report/block-navigation.js.map +1 -0
  116. package/dist/dist/coverage/lcov-report/prettify.d.ts +0 -0
  117. package/dist/dist/coverage/lcov-report/prettify.js +736 -0
  118. package/dist/dist/coverage/lcov-report/prettify.js.map +1 -0
  119. package/dist/dist/coverage/lcov-report/sorter.d.ts +1 -0
  120. package/dist/dist/coverage/lcov-report/sorter.js +177 -0
  121. package/dist/dist/coverage/lcov-report/sorter.js.map +1 -0
  122. package/dist/dist/dist/AutoUpdateClientManagerClass.d.ts +19 -0
  123. package/dist/dist/dist/AutoUpdateClientManagerClass.js +285 -0
  124. package/dist/dist/dist/AutoUpdateClientManagerClass.js.map +1 -0
  125. package/dist/dist/dist/AutoUpdateManagerClass.d.ts +23 -0
  126. package/dist/dist/dist/AutoUpdateManagerClass.js +61 -0
  127. package/dist/dist/dist/AutoUpdateManagerClass.js.map +1 -0
  128. package/dist/dist/dist/AutoUpdateServerManagerClass.d.ts +158 -0
  129. package/dist/dist/dist/AutoUpdateServerManagerClass.js +414 -0
  130. package/dist/dist/dist/AutoUpdateServerManagerClass.js.map +1 -0
  131. package/dist/dist/dist/AutoUpdatedClientObjectClass.d.ts +72 -0
  132. package/dist/dist/dist/AutoUpdatedClientObjectClass.js +866 -0
  133. package/dist/dist/dist/AutoUpdatedClientObjectClass.js.map +1 -0
  134. package/dist/dist/dist/AutoUpdatedServerObjectClass.d.ts +15 -0
  135. package/dist/dist/dist/AutoUpdatedServerObjectClass.js +125 -0
  136. package/dist/dist/dist/AutoUpdatedServerObjectClass.js.map +1 -0
  137. package/dist/dist/dist/ClientTypes.d.ts +13 -0
  138. package/dist/dist/dist/ClientTypes.js +72 -0
  139. package/dist/dist/dist/ClientTypes.js.map +1 -0
  140. package/dist/dist/dist/CommonTypes.d.ts +3 -0
  141. package/dist/dist/dist/CommonTypes.js +21 -0
  142. package/dist/dist/dist/CommonTypes.js.map +1 -0
  143. package/dist/dist/dist/CommonTypes_server.d.ts +1 -0
  144. package/dist/dist/dist/CommonTypes_server.js +5 -0
  145. package/dist/dist/dist/CommonTypes_server.js.map +1 -0
  146. package/dist/dist/dist/ServerTypes.d.ts +13 -0
  147. package/dist/dist/dist/ServerTypes.js +80 -0
  148. package/dist/dist/dist/ServerTypes.js.map +1 -0
  149. package/dist/dist/dist/TestTypes.d.ts +1 -0
  150. package/dist/dist/dist/TestTypes.js +9 -0
  151. package/dist/dist/dist/TestTypes.js.map +1 -0
  152. package/dist/dist/dist/client.d.ts +1 -0
  153. package/dist/dist/dist/client.js +14 -0
  154. package/dist/dist/dist/client.js.map +1 -0
  155. package/dist/dist/dist/coverage/lcov-report/block-navigation.d.ts +1 -0
  156. package/dist/dist/dist/coverage/lcov-report/block-navigation.js +71 -0
  157. package/dist/dist/dist/coverage/lcov-report/block-navigation.js.map +1 -0
  158. package/dist/dist/dist/coverage/lcov-report/prettify.d.ts +0 -0
  159. package/dist/dist/dist/coverage/lcov-report/prettify.js +736 -0
  160. package/dist/dist/dist/coverage/lcov-report/prettify.js.map +1 -0
  161. package/dist/dist/dist/coverage/lcov-report/sorter.d.ts +1 -0
  162. package/dist/dist/dist/coverage/lcov-report/sorter.js +177 -0
  163. package/dist/dist/dist/coverage/lcov-report/sorter.js.map +1 -0
  164. package/dist/dist/dist/expo-test/app/(tabs)/_layout.d.ts +1 -0
  165. package/dist/dist/dist/expo-test/app/(tabs)/_layout.js +27 -0
  166. package/dist/dist/dist/expo-test/app/(tabs)/_layout.js.map +1 -0
  167. package/dist/dist/dist/expo-test/app/(tabs)/explore.d.ts +1 -0
  168. package/dist/dist/dist/expo-test/app/(tabs)/explore.js +95 -0
  169. package/dist/dist/dist/expo-test/app/(tabs)/explore.js.map +1 -0
  170. package/dist/dist/dist/expo-test/app/(tabs)/index.d.ts +1 -0
  171. package/dist/dist/dist/expo-test/app/(tabs)/index.js +81 -0
  172. package/dist/dist/dist/expo-test/app/(tabs)/index.js.map +1 -0
  173. package/dist/dist/dist/expo-test/app/_layout.d.ts +4 -0
  174. package/dist/dist/dist/expo-test/app/_layout.js +22 -0
  175. package/dist/dist/dist/expo-test/app/_layout.js.map +1 -0
  176. package/dist/dist/dist/expo-test/app/modal.d.ts +1 -0
  177. package/dist/dist/dist/expo-test/app/modal.js +28 -0
  178. package/dist/dist/dist/expo-test/app/modal.js.map +1 -0
  179. package/dist/dist/dist/expo-test/components/external-link.d.ts +4 -0
  180. package/dist/dist/dist/expo-test/components/external-link.js +18 -0
  181. package/dist/dist/dist/expo-test/components/external-link.js.map +1 -0
  182. package/dist/dist/dist/expo-test/components/haptic-tab.d.ts +1 -0
  183. package/dist/dist/dist/expo-test/components/haptic-tab.js +15 -0
  184. package/dist/dist/dist/expo-test/components/haptic-tab.js.map +1 -0
  185. package/dist/dist/dist/expo-test/components/hello-wave.d.ts +1 -0
  186. package/dist/dist/dist/expo-test/components/hello-wave.js +19 -0
  187. package/dist/dist/dist/expo-test/components/hello-wave.js.map +1 -0
  188. package/dist/dist/dist/expo-test/components/parallax-scroll-view.d.ts +5 -0
  189. package/dist/dist/dist/expo-test/components/parallax-scroll-view.js +53 -0
  190. package/dist/dist/dist/expo-test/components/parallax-scroll-view.js.map +1 -0
  191. package/dist/dist/dist/expo-test/components/themed-text.d.ts +7 -0
  192. package/dist/dist/dist/expo-test/components/themed-text.js +43 -0
  193. package/dist/dist/dist/expo-test/components/themed-text.js.map +1 -0
  194. package/dist/dist/dist/expo-test/components/themed-view.d.ts +6 -0
  195. package/dist/dist/dist/expo-test/components/themed-view.js +10 -0
  196. package/dist/dist/dist/expo-test/components/themed-view.js.map +1 -0
  197. package/dist/dist/dist/expo-test/components/ui/collapsible.d.ts +4 -0
  198. package/dist/dist/dist/expo-test/components/ui/collapsible.js +34 -0
  199. package/dist/dist/dist/expo-test/components/ui/collapsible.js.map +1 -0
  200. package/dist/dist/dist/expo-test/components/ui/icon-symbol.d.ts +11 -0
  201. package/dist/dist/dist/expo-test/components/ui/icon-symbol.ios.d.ts +7 -0
  202. package/dist/dist/dist/expo-test/components/ui/icon-symbol.ios.js +14 -0
  203. package/dist/dist/dist/expo-test/components/ui/icon-symbol.ios.js.map +1 -0
  204. package/dist/dist/dist/expo-test/components/ui/icon-symbol.js +25 -0
  205. package/dist/dist/dist/expo-test/components/ui/icon-symbol.js.map +1 -0
  206. package/dist/dist/dist/expo-test/constants/theme.d.ts +26 -0
  207. package/dist/dist/dist/expo-test/constants/theme.js +53 -0
  208. package/dist/dist/dist/expo-test/constants/theme.js.map +1 -0
  209. package/dist/dist/dist/expo-test/eslint.config.d.ts +2 -0
  210. package/dist/dist/dist/expo-test/eslint.config.js +11 -0
  211. package/dist/dist/dist/expo-test/eslint.config.js.map +1 -0
  212. package/dist/dist/dist/expo-test/hooks/use-color-scheme.d.ts +1 -0
  213. package/dist/dist/dist/expo-test/hooks/use-color-scheme.js +5 -0
  214. package/dist/dist/dist/expo-test/hooks/use-color-scheme.js.map +1 -0
  215. package/dist/dist/dist/expo-test/hooks/use-color-scheme.web.d.ts +4 -0
  216. package/dist/dist/dist/expo-test/hooks/use-color-scheme.web.js +20 -0
  217. package/dist/dist/dist/expo-test/hooks/use-color-scheme.web.js.map +1 -0
  218. package/dist/dist/dist/expo-test/hooks/use-theme-color.d.ts +1 -0
  219. package/dist/dist/dist/expo-test/hooks/use-theme-color.js +20 -0
  220. package/dist/dist/dist/expo-test/hooks/use-theme-color.js.map +1 -0
  221. package/dist/dist/dist/expo-test/scripts/reset-project.d.ts +2 -0
  222. package/dist/dist/dist/expo-test/scripts/reset-project.js +98 -0
  223. package/dist/dist/dist/expo-test/scripts/reset-project.js.map +1 -0
  224. package/dist/dist/dist/jest.config.d.ts +21 -0
  225. package/dist/dist/dist/jest.config.js +20 -0
  226. package/dist/dist/dist/jest.config.js.map +1 -0
  227. package/dist/dist/dist/server.d.ts +1 -0
  228. package/dist/dist/dist/server.js +16 -0
  229. package/dist/dist/dist/server.js.map +1 -0
  230. package/dist/dist/dist/socket_test.d.ts +1 -0
  231. package/dist/dist/dist/socket_test.js +24 -0
  232. package/dist/dist/dist/socket_test.js.map +1 -0
  233. package/dist/dist/dist/test.d.ts +1 -0
  234. package/dist/dist/dist/test.js +7 -0
  235. package/dist/dist/dist/test.js.map +1 -0
  236. package/dist/dist/dist/test_client.d.ts +1 -0
  237. package/dist/dist/dist/test_client.js +26 -0
  238. package/dist/dist/dist/test_client.js.map +1 -0
  239. package/dist/dist/dist/test_lib.d.ts +2 -0
  240. package/dist/dist/dist/test_lib.js +85 -0
  241. package/dist/dist/dist/test_lib.js.map +1 -0
  242. package/dist/dist/dist/test_server.d.ts +1 -0
  243. package/dist/dist/dist/test_server.js +54 -0
  244. package/dist/dist/dist/test_server.js.map +1 -0
  245. package/dist/dist/dist/tests/dem.test.d.ts +1 -0
  246. package/dist/dist/dist/tests/dem.test.js +341 -0
  247. package/dist/dist/dist/tests/dem.test.js.map +1 -0
  248. package/dist/dist/expo-test/app/(tabs)/_layout.d.ts +1 -0
  249. package/dist/dist/expo-test/app/(tabs)/_layout.js +26 -0
  250. package/dist/dist/expo-test/app/(tabs)/_layout.js.map +1 -0
  251. package/dist/dist/expo-test/app/(tabs)/explore.d.ts +1 -0
  252. package/dist/dist/expo-test/app/(tabs)/explore.js +94 -0
  253. package/dist/dist/expo-test/app/(tabs)/explore.js.map +1 -0
  254. package/dist/dist/expo-test/app/(tabs)/index.d.ts +1 -0
  255. package/dist/dist/expo-test/app/(tabs)/index.js +80 -0
  256. package/dist/dist/expo-test/app/(tabs)/index.js.map +1 -0
  257. package/dist/dist/expo-test/app/_layout.d.ts +4 -0
  258. package/dist/dist/expo-test/app/_layout.js +21 -0
  259. package/dist/dist/expo-test/app/_layout.js.map +1 -0
  260. package/dist/dist/expo-test/app/modal.d.ts +1 -0
  261. package/dist/dist/expo-test/app/modal.js +27 -0
  262. package/dist/dist/expo-test/app/modal.js.map +1 -0
  263. package/dist/dist/expo-test/components/external-link.d.ts +4 -0
  264. package/dist/dist/expo-test/components/external-link.js +17 -0
  265. package/dist/dist/expo-test/components/external-link.js.map +1 -0
  266. package/dist/dist/expo-test/components/haptic-tab.d.ts +1 -0
  267. package/dist/dist/expo-test/components/haptic-tab.js +14 -0
  268. package/dist/dist/expo-test/components/haptic-tab.js.map +1 -0
  269. package/dist/dist/expo-test/components/hello-wave.d.ts +1 -0
  270. package/dist/dist/expo-test/components/hello-wave.js +18 -0
  271. package/dist/dist/expo-test/components/hello-wave.js.map +1 -0
  272. package/dist/dist/expo-test/components/parallax-scroll-view.d.ts +5 -0
  273. package/dist/dist/expo-test/components/parallax-scroll-view.js +52 -0
  274. package/dist/dist/expo-test/components/parallax-scroll-view.js.map +1 -0
  275. package/dist/dist/expo-test/components/themed-text.d.ts +7 -0
  276. package/dist/dist/expo-test/components/themed-text.js +42 -0
  277. package/dist/dist/expo-test/components/themed-text.js.map +1 -0
  278. package/dist/dist/expo-test/components/themed-view.d.ts +6 -0
  279. package/dist/dist/expo-test/components/themed-view.js +9 -0
  280. package/dist/dist/expo-test/components/themed-view.js.map +1 -0
  281. package/dist/dist/expo-test/components/ui/collapsible.d.ts +4 -0
  282. package/dist/dist/expo-test/components/ui/collapsible.js +33 -0
  283. package/dist/dist/expo-test/components/ui/collapsible.js.map +1 -0
  284. package/dist/dist/expo-test/components/ui/icon-symbol.d.ts +11 -0
  285. package/dist/dist/expo-test/components/ui/icon-symbol.ios.d.ts +7 -0
  286. package/dist/dist/expo-test/components/ui/icon-symbol.ios.js +13 -0
  287. package/dist/dist/expo-test/components/ui/icon-symbol.ios.js.map +1 -0
  288. package/dist/dist/expo-test/components/ui/icon-symbol.js +24 -0
  289. package/dist/dist/expo-test/components/ui/icon-symbol.js.map +1 -0
  290. package/dist/dist/expo-test/constants/theme.d.ts +26 -0
  291. package/dist/dist/expo-test/constants/theme.js +52 -0
  292. package/dist/dist/expo-test/constants/theme.js.map +1 -0
  293. package/dist/dist/expo-test/eslint.config.d.ts +2 -0
  294. package/dist/dist/expo-test/eslint.config.js +11 -0
  295. package/dist/dist/expo-test/eslint.config.js.map +1 -0
  296. package/dist/dist/expo-test/hooks/use-color-scheme.d.ts +1 -0
  297. package/dist/dist/expo-test/hooks/use-color-scheme.js +4 -0
  298. package/dist/dist/expo-test/hooks/use-color-scheme.js.map +1 -0
  299. package/dist/dist/expo-test/hooks/use-color-scheme.web.d.ts +4 -0
  300. package/dist/dist/expo-test/hooks/use-color-scheme.web.js +19 -0
  301. package/dist/dist/expo-test/hooks/use-color-scheme.web.js.map +1 -0
  302. package/dist/dist/expo-test/hooks/use-theme-color.d.ts +1 -0
  303. package/dist/dist/expo-test/hooks/use-theme-color.js +19 -0
  304. package/dist/dist/expo-test/hooks/use-theme-color.js.map +1 -0
  305. package/dist/dist/expo-test/scripts/reset-project.d.ts +2 -0
  306. package/dist/dist/expo-test/scripts/reset-project.js +98 -0
  307. package/dist/dist/expo-test/scripts/reset-project.js.map +1 -0
  308. package/dist/dist/jest.config.d.ts +21 -0
  309. package/dist/dist/jest.config.js +19 -0
  310. package/dist/dist/jest.config.js.map +1 -0
  311. package/dist/dist/server.d.ts +1 -0
  312. package/dist/dist/server.js +15 -0
  313. package/dist/dist/server.js.map +1 -0
  314. package/dist/dist/socket_test.d.ts +1 -0
  315. package/dist/dist/socket_test.js +23 -0
  316. package/dist/dist/socket_test.js.map +1 -0
  317. package/dist/dist/test.d.ts +1 -0
  318. package/dist/dist/test.js +6 -0
  319. package/dist/dist/test.js.map +1 -0
  320. package/dist/dist/test_client.d.ts +1 -0
  321. package/dist/dist/test_client.js +25 -0
  322. package/dist/dist/test_client.js.map +1 -0
  323. package/dist/dist/test_lib.d.ts +2 -0
  324. package/dist/dist/test_lib.js +84 -0
  325. package/dist/dist/test_lib.js.map +1 -0
  326. package/dist/dist/test_server.d.ts +1 -0
  327. package/dist/dist/test_server.js +53 -0
  328. package/dist/dist/test_server.js.map +1 -0
  329. package/dist/dist/tests/dem.test.d.ts +1 -0
  330. package/dist/dist/tests/dem.test.js +340 -0
  331. package/dist/dist/tests/dem.test.js.map +1 -0
  332. package/dist/expo-test/app/(tabs)/_layout.d.ts +1 -0
  333. package/dist/expo-test/app/(tabs)/_layout.js +25 -0
  334. package/dist/expo-test/app/(tabs)/_layout.js.map +1 -0
  335. package/dist/expo-test/app/(tabs)/explore.d.ts +1 -0
  336. package/dist/expo-test/app/(tabs)/explore.js +93 -0
  337. package/dist/expo-test/app/(tabs)/explore.js.map +1 -0
  338. package/dist/expo-test/app/(tabs)/index.d.ts +1 -0
  339. package/dist/expo-test/app/(tabs)/index.js +79 -0
  340. package/dist/expo-test/app/(tabs)/index.js.map +1 -0
  341. package/dist/expo-test/app/_layout.d.ts +4 -0
  342. package/dist/expo-test/app/_layout.js +20 -0
  343. package/dist/expo-test/app/_layout.js.map +1 -0
  344. package/dist/expo-test/app/modal.d.ts +1 -0
  345. package/dist/expo-test/app/modal.js +26 -0
  346. package/dist/expo-test/app/modal.js.map +1 -0
  347. package/dist/expo-test/components/external-link.d.ts +4 -0
  348. package/dist/expo-test/components/external-link.js +16 -0
  349. package/dist/expo-test/components/external-link.js.map +1 -0
  350. package/dist/expo-test/components/haptic-tab.d.ts +1 -0
  351. package/dist/expo-test/components/haptic-tab.js +13 -0
  352. package/dist/expo-test/components/haptic-tab.js.map +1 -0
  353. package/dist/expo-test/components/hello-wave.d.ts +1 -0
  354. package/dist/expo-test/components/hello-wave.js +17 -0
  355. package/dist/expo-test/components/hello-wave.js.map +1 -0
  356. package/dist/expo-test/components/parallax-scroll-view.d.ts +5 -0
  357. package/dist/expo-test/components/parallax-scroll-view.js +51 -0
  358. package/dist/expo-test/components/parallax-scroll-view.js.map +1 -0
  359. package/dist/expo-test/components/themed-text.d.ts +7 -0
  360. package/dist/expo-test/components/themed-text.js +41 -0
  361. package/dist/expo-test/components/themed-text.js.map +1 -0
  362. package/dist/expo-test/components/themed-view.d.ts +6 -0
  363. package/dist/expo-test/components/themed-view.js +8 -0
  364. package/dist/expo-test/components/themed-view.js.map +1 -0
  365. package/dist/expo-test/components/ui/collapsible.d.ts +4 -0
  366. package/dist/expo-test/components/ui/collapsible.js +32 -0
  367. package/dist/expo-test/components/ui/collapsible.js.map +1 -0
  368. package/dist/expo-test/components/ui/icon-symbol.d.ts +11 -0
  369. package/dist/expo-test/components/ui/icon-symbol.ios.d.ts +7 -0
  370. package/dist/expo-test/components/ui/icon-symbol.ios.js +12 -0
  371. package/dist/expo-test/components/ui/icon-symbol.ios.js.map +1 -0
  372. package/dist/expo-test/components/ui/icon-symbol.js +23 -0
  373. package/dist/expo-test/components/ui/icon-symbol.js.map +1 -0
  374. package/dist/expo-test/constants/theme.d.ts +26 -0
  375. package/dist/expo-test/constants/theme.js +51 -0
  376. package/dist/expo-test/constants/theme.js.map +1 -0
  377. package/dist/expo-test/eslint.config.d.ts +2 -0
  378. package/dist/expo-test/eslint.config.js +11 -0
  379. package/dist/expo-test/eslint.config.js.map +1 -0
  380. package/dist/expo-test/hooks/use-color-scheme.d.ts +1 -0
  381. package/dist/expo-test/hooks/use-color-scheme.js +3 -0
  382. package/dist/expo-test/hooks/use-color-scheme.js.map +1 -0
  383. package/dist/expo-test/hooks/use-color-scheme.web.d.ts +4 -0
  384. package/dist/expo-test/hooks/use-color-scheme.web.js +18 -0
  385. package/dist/expo-test/hooks/use-color-scheme.web.js.map +1 -0
  386. package/dist/expo-test/hooks/use-theme-color.d.ts +1 -0
  387. package/dist/expo-test/hooks/use-theme-color.js +18 -0
  388. package/dist/expo-test/hooks/use-theme-color.js.map +1 -0
  389. package/dist/expo-test/scripts/reset-project.d.ts +2 -0
  390. package/dist/expo-test/scripts/reset-project.js +98 -0
  391. package/dist/expo-test/scripts/reset-project.js.map +1 -0
  392. package/dist/jest.config.d.ts +21 -0
  393. package/dist/jest.config.js +18 -0
  394. package/dist/jest.config.js.map +1 -0
  395. package/dist/server.d.ts +1 -8
  396. package/dist/server.js +13 -8
  397. package/dist/server.js.map +1 -1
  398. package/dist/socket_test.d.ts +1 -0
  399. package/dist/socket_test.js +22 -0
  400. package/dist/socket_test.js.map +1 -0
  401. package/dist/test.d.ts +1 -0
  402. package/dist/test.js +5 -0
  403. package/dist/test.js.map +1 -0
  404. package/dist/test_client.d.ts +1 -0
  405. package/dist/test_client.js +24 -0
  406. package/dist/test_client.js.map +1 -0
  407. package/dist/test_lib.d.ts +12 -0
  408. package/dist/test_lib.js +83 -0
  409. package/dist/test_lib.js.map +1 -0
  410. package/dist/test_server.d.ts +1 -0
  411. package/dist/test_server.js +52 -0
  412. package/dist/test_server.js.map +1 -0
  413. package/dist/tests/dem.test.d.ts +1 -0
  414. package/dist/tests/dem.test.js +339 -0
  415. package/dist/tests/dem.test.js.map +1 -0
  416. package/expo-test/app/(tabs)/_layout.d.ts +2 -0
  417. package/expo-test/app/(tabs)/_layout.js +24 -0
  418. package/expo-test/app/(tabs)/_layout.js.map +1 -0
  419. package/expo-test/app/(tabs)/explore.d.ts +1 -0
  420. package/expo-test/app/(tabs)/explore.js +92 -0
  421. package/expo-test/app/(tabs)/explore.js.map +1 -0
  422. package/expo-test/app/(tabs)/index.d.ts +1 -0
  423. package/expo-test/app/(tabs)/index.js +78 -0
  424. package/expo-test/app/(tabs)/index.js.map +1 -0
  425. package/expo-test/app/_layout.d.ts +5 -0
  426. package/expo-test/app/_layout.js +19 -0
  427. package/expo-test/app/_layout.js.map +1 -0
  428. package/expo-test/app/modal.d.ts +1 -0
  429. package/expo-test/app/modal.js +25 -0
  430. package/expo-test/app/modal.js.map +1 -0
  431. package/expo-test/components/external-link.d.ts +7 -0
  432. package/expo-test/components/external-link.js +15 -0
  433. package/expo-test/components/external-link.js.map +1 -0
  434. package/expo-test/components/haptic-tab.d.ts +2 -0
  435. package/expo-test/components/haptic-tab.js +12 -0
  436. package/expo-test/components/haptic-tab.js.map +1 -0
  437. package/expo-test/components/hello-wave.d.ts +1 -0
  438. package/expo-test/components/hello-wave.js +16 -0
  439. package/expo-test/components/hello-wave.js.map +1 -0
  440. package/expo-test/components/parallax-scroll-view.d.ts +10 -0
  441. package/expo-test/components/parallax-scroll-view.js +50 -0
  442. package/expo-test/components/parallax-scroll-view.js.map +1 -0
  443. package/expo-test/components/themed-text.d.ts +7 -0
  444. package/expo-test/components/themed-text.js +40 -0
  445. package/expo-test/components/themed-text.js.map +1 -0
  446. package/expo-test/components/themed-view.d.ts +6 -0
  447. package/expo-test/components/themed-view.js +7 -0
  448. package/expo-test/components/themed-view.js.map +1 -0
  449. package/expo-test/components/ui/collapsible.d.ts +4 -0
  450. package/expo-test/components/ui/collapsible.js +31 -0
  451. package/expo-test/components/ui/collapsible.js.map +1 -0
  452. package/expo-test/components/ui/icon-symbol.d.ts +25 -0
  453. package/expo-test/components/ui/icon-symbol.ios.d.ts +9 -0
  454. package/expo-test/components/ui/icon-symbol.ios.js +11 -0
  455. package/expo-test/components/ui/icon-symbol.ios.js.map +1 -0
  456. package/expo-test/components/ui/icon-symbol.js +22 -0
  457. package/expo-test/components/ui/icon-symbol.js.map +1 -0
  458. package/expo-test/constants/theme.d.ts +32 -0
  459. package/expo-test/constants/theme.js +50 -0
  460. package/expo-test/constants/theme.js.map +1 -0
  461. package/expo-test/eslint.config.d.ts +2 -0
  462. package/expo-test/eslint.config.js +11 -0
  463. package/expo-test/eslint.config.js.map +1 -0
  464. package/expo-test/hooks/use-color-scheme.d.ts +1 -0
  465. package/expo-test/hooks/use-color-scheme.js +2 -0
  466. package/expo-test/hooks/use-color-scheme.js.map +1 -0
  467. package/expo-test/hooks/use-color-scheme.web.d.ts +4 -0
  468. package/expo-test/hooks/use-color-scheme.web.js +17 -0
  469. package/expo-test/hooks/use-color-scheme.web.js.map +1 -0
  470. package/expo-test/hooks/use-theme-color.d.ts +9 -0
  471. package/expo-test/hooks/use-theme-color.js +17 -0
  472. package/expo-test/hooks/use-theme-color.js.map +1 -0
  473. package/expo-test/scripts/reset-project.d.ts +2 -0
  474. package/expo-test/scripts/reset-project.js +98 -0
  475. package/expo-test/scripts/reset-project.js.map +1 -0
  476. package/index.d.ts +4 -0
  477. package/index.js +5 -0
  478. package/index.js.map +1 -0
  479. package/jest.config.d.ts +3 -0
  480. package/jest.config.js +17 -0
  481. package/jest.config.js.map +1 -0
  482. package/package.json +23 -42
  483. package/server.d.ts +8 -0
  484. package/server.js +9 -0
  485. package/server.js.map +1 -0
  486. package/sync/ServerChangeTracker.js.map +1 -0
  487. package/version.d.ts +21 -0
  488. package/version.js +22 -0
  489. package/version.js.map +1 -0
  490. package/README.md +0 -18
  491. package/dist/sync/ServerChangeTracker.js.map +0 -1
  492. package/dist/tsconfig.tsbuildinfo +0 -1
  493. /package/{dist/DEMErrors.d.ts → DEMErrors.d.ts} +0 -0
  494. /package/{dist/DEMErrors.js → DEMErrors.js} +0 -0
  495. /package/{dist/sync → sync}/ClientStateReconciler.d.ts +0 -0
  496. /package/{dist/sync → sync}/ClientStateReconciler.js +0 -0
  497. /package/{dist/sync → sync}/ClientStateReconciler.js.map +0 -0
  498. /package/{dist/sync → sync}/ServerChangeTracker.d.ts +0 -0
  499. /package/{dist/sync → sync}/ServerChangeTracker.js +0 -0
  500. /package/{dist/sync → sync}/index.d.ts +0 -0
  501. /package/{dist/sync → sync}/index.js +0 -0
  502. /package/{dist/sync → sync}/index.js.map +0 -0
  503. /package/{dist/sync → sync}/storage/IClientStorageAdapter.d.ts +0 -0
  504. /package/{dist/sync → sync}/storage/IClientStorageAdapter.js +0 -0
  505. /package/{dist/sync → sync}/storage/IClientStorageAdapter.js.map +0 -0
  506. /package/{dist/sync → sync}/storage/IndexedDbStorageAdapter.d.ts +0 -0
  507. /package/{dist/sync → sync}/storage/IndexedDbStorageAdapter.js +0 -0
  508. /package/{dist/sync → sync}/storage/IndexedDbStorageAdapter.js.map +0 -0
  509. /package/{dist/sync → sync}/storage/LocalStorageAdapter.d.ts +0 -0
  510. /package/{dist/sync → sync}/storage/LocalStorageAdapter.js +0 -0
  511. /package/{dist/sync → sync}/storage/LocalStorageAdapter.js.map +0 -0
  512. /package/{dist/sync → sync}/storage/MemoryStorageAdapter.d.ts +0 -0
  513. /package/{dist/sync → sync}/storage/MemoryStorageAdapter.js +0 -0
  514. /package/{dist/sync → sync}/storage/MemoryStorageAdapter.js.map +0 -0
  515. /package/{dist/sync → sync}/types.d.ts +0 -0
  516. /package/{dist/sync → sync}/types.js +0 -0
  517. /package/{dist/sync → sync}/types.js.map +0 -0
@@ -1,346 +1,123 @@
1
- import { AutoUpdatedClientObject, getMetadataRecursive, processIsRefProperties, } from "./AutoUpdatedClientObjectClass.js";
2
- import { EVENT_UPDATE, EVENT_DELETE, EVENT_INTERNAL_PRE_LOADED, DEMError, DEMErrorCode, } from "./CommonTypes.js";
1
+ import { AutoUpdatedClientObject, getMetadataRecursive, } from "./AutoUpdatedClientObjectClass.js";
2
+ import "reflect-metadata";
3
3
  import { ObjectId } from "mongodb";
4
- export class AutoUpdatedServerObject extends AutoUpdatedClientObject {
5
- isServer;
4
+ export async function createAutoUpdatedClass(classParam, className, socket, data, loggers, parentManager, emitter) {
5
+ const instance = new AutoUpdatedServerObject(socket, data, loggers, Reflect.getMetadata("props", classParam.prototype), className, classParam, parentManager, emitter);
6
+ await instance.loadFromDB();
7
+ await instance.isPreLoadedAsync();
8
+ return instance;
9
+ }
10
+ // ---------------------- Class ----------------------
11
+ class AutoUpdatedServerObject extends AutoUpdatedClientObject {
12
+ isServer = true;
6
13
  entry;
7
- saveLock = Promise.resolve();
8
- loadPromise = null;
9
- _isUpdating = false;
10
- constructor(classParam, socket, data, loggers, className, parentManager, emitter) {
11
- if (!classParam ||
12
- !socket ||
13
- !data ||
14
- !loggers ||
15
- !className ||
16
- !parentManager ||
17
- !emitter) {
18
- super();
19
- this.isServer = true;
20
- this.entry = null;
21
- this.parentManager = parentManager;
22
- if (!classParam &&
23
- !socket &&
24
- !data &&
25
- !loggers &&
26
- !className &&
27
- !parentManager &&
28
- !emitter) {
29
- return;
14
+ constructor(socket, data, loggers, properties, className, classProp, parentManager, emitter) {
15
+ super(socket, data, loggers, properties, className, classProp, parentManager, {
16
+ update: (x) => { },
17
+ delete: (x) => { },
18
+ new: (x) => { },
19
+ }, emitter, true);
20
+ for (const prop of properties) {
21
+ if (typeof prop !== "string")
22
+ continue;
23
+ const isRef = getMetadataRecursive("isRef", classProp.prototype, prop);
24
+ if (isRef && this.data[prop]) {
25
+ this.data[prop] = Array.isArray(this.data[prop])
26
+ ? this.data[prop]
27
+ .map((item) => item ? new ObjectId(item) : null)
28
+ .filter(Boolean)
29
+ : new ObjectId(this.data[prop]);
30
30
  }
31
- else
32
- throw new DEMError(DEMErrorCode.MISSING_ARGUMENT, "Missing arguments for AutoUpdatedServerObject: " + className);
33
31
  }
34
- super(classParam, socket, data, loggers, className, parentManager, {
35
- update: (_x, _key) => { },
36
- delete: (_x) => { },
37
- new: (_x) => { },
38
- progress: (_x) => { },
39
- }, emitter, true);
40
- this.isServer = true;
41
- this.entry = null;
42
32
  this.parentManager = parentManager;
43
- // Cache refProps statically on constructor
44
- const classParamAny = classParam;
45
- if (!classParamAny.__refPropsCache) {
46
- classParamAny.__refPropsCache = this.properties.filter((prop) => getMetadataRecursive("isRef", this, prop));
47
- }
48
- // Convert reference IDs to ObjectIds on the server side in-place
49
- const dataRec = this.data;
50
- if (dataRec && typeof dataRec === "object") {
51
- for (const prop of classParamAny.__refPropsCache) {
52
- const val = dataRec[prop];
53
- if (!val)
54
- continue;
55
- if (Array.isArray(val)) {
56
- for (let i = 0; i < val.length; i++) {
57
- const item = val[i];
58
- if (item && !(item instanceof ObjectId)) {
59
- const idStr = item._id ? item._id.toString() : item.toString();
60
- if (idStr !== {}.toString() && ObjectId.isValid(idStr)) {
61
- val[i] = new ObjectId(idStr);
62
- }
63
- }
64
- }
65
- }
66
- else if (!(val instanceof ObjectId)) {
67
- const idStr = val._id ? val._id.toString() : val.toString();
68
- if (idStr !== {}.toString() && ObjectId.isValid(idStr)) {
69
- dataRec[prop] = new ObjectId(idStr);
70
- }
33
+ this.entry = null;
34
+ }
35
+ async loadFromDB() {
36
+ try {
37
+ this.entry = await this.parentManager.managers[this.className].model.findOne({
38
+ _id: this.data._id,
39
+ });
40
+ if (!this.entry) {
41
+ this.entry = await this.parentManager.managers[this.className].model.create(this.data);
42
+ for (const prop of this.properties) {
43
+ const pointer = getMetadataRecursive("refsTo", this.classProp.prototype, prop.toString());
44
+ if (!pointer || !this.data[prop])
45
+ continue;
46
+ this.data["_id"] = this.entry._id;
47
+ await this.createdWithParent(pointer.split(":"), this.data[prop].toString());
71
48
  }
72
49
  }
50
+ this.data = this.entry.toObject();
73
51
  }
74
- }
75
- /**
76
- * Persists active document changes to MongoDB with queue serialization.
77
- *
78
- * @returns Promise resolving when database write finishes.
79
- */
80
- async save() {
81
- this.saveLock = (this.saveLock ?? Promise.resolve())
82
- .catch(() => { })
83
- .then(async () => {
84
- if (this.entry && this.entry !== this) {
85
- await this.entry.save();
86
- }
87
- else if (this.entry && typeof this.entry.$__save === "function") {
88
- await this.entry.$__save();
89
- }
90
- });
91
- await this.saveLock;
92
- }
93
- /**
94
- * Loads entity document data directly from MongoDB by ID.
95
- *
96
- * @returns Promise resolving when data is populated.
97
- * @throws {DEMError} Throws DEMErrorCode.MISSING_ID or DOCUMENT_NOT_FOUND.
98
- */
99
- async loadFromDB() {
100
- if (this.loadPromise)
101
- return this.loadPromise;
102
- this.loadPromise = (async () => {
103
- const _id = this.data._id;
104
- if (!_id)
105
- throw new DEMError(DEMErrorCode.MISSING_ID, "No id.");
106
- // Use the model from the parent manager
107
- this.entry = await this.parentManager.model.findById(_id);
108
- if (!this.entry)
109
- throw new DEMError(DEMErrorCode.DOCUMENT_NOT_FOUND, `Object not found in DB: ${this.className} with ID ${_id}`);
110
- const docObj = typeof this.entry.toObject === "function" ? this.entry.toObject() : this.entry;
111
- this.data = this.handleDataCleanup(docObj);
112
- this.isLoading = false;
113
- this.generateSettersAndGetters();
114
- this.emitter.emit(EVENT_INTERNAL_PRE_LOADED + this.EmitterID);
115
- })();
116
- return this.loadPromise;
117
- }
118
- /**
119
- * Ingests existing MongoDB Mongoose document into instance state.
120
- *
121
- * @param document - Mongoose Typegoose document.
122
- */
123
- loadFromDocument(document) {
124
- this.entry = document;
125
- const docObj = typeof document.toObject === "function" ? document.toObject() : document;
126
- this.data = this.handleDataCleanup(docObj);
127
- this.isLoading = false;
128
- this.generateSettersAndGetters();
129
- this.emitter.emit(EVENT_INTERNAL_PRE_LOADED + this.EmitterID);
130
- }
131
- _cachedExtractedData = null;
132
- /**
133
- * Cleans raw object data and invalidates the cached extracted data representation.
134
- *
135
- * @param data - Raw entity data object.
136
- * @returns Cleaned entity data object.
137
- */
138
- handleDataCleanup(data) {
139
- this._cachedExtractedData = null;
140
- return super.handleDataCleanup(data);
141
- }
142
- /**
143
- * Serialized data payload with resolved reference identifiers, cached for performance.
144
- *
145
- * @returns Extracted data representation of the entity.
146
- */
147
- get extractedData() {
148
- if (this._cachedExtractedData)
149
- return this._cachedExtractedData;
150
- const extracted = processIsRefProperties(this.data, this, null, [], {}, this.loggers).newData;
151
- this._cachedExtractedData = extracted;
152
- return extracted;
153
- }
154
- /**
155
- * Sets a property value on the entity with deadlock-safe queueing during onUpdate hooks.
156
- *
157
- * @param key - Property key to modify.
158
- * @param val - Value to set.
159
- * @returns Promise resolving to operation outcome.
160
- */
161
- async setValue(key, val) {
162
- if (this._isUpdating &&
163
- typeof this.setValueQueueInternal === "function") {
164
- return this.setValueQueueInternal(key, val, false, false, true);
52
+ catch (error) {
53
+ this.loggers.error("Error loading object from database: " + error.message);
54
+ this.loggers.error(error.stack);
55
+ throw error;
165
56
  }
166
- return await super.setValue(key, val);
167
57
  }
168
- /**
169
- * Internal setter with re-entrant write queue lock support.
170
- *
171
- * @param key - Property key.
172
- * @param val - Value to set.
173
- * @param silent - Whether socket broadcast is skipped.
174
- * @param noGet - Whether local update bypasses get.
175
- * @param noUpdate - Whether onUpdate hook is skipped.
176
- * @param isParentUpdate - Whether mutation originated from parent.
177
- * @returns Promise resolving to update outcome.
178
- */
179
- async setValue__(key, val, silent = false, noGet = false, noUpdate = false, isParentUpdate = false) {
180
- if (this._isUpdating &&
181
- typeof this.setValueQueueInternal === "function") {
182
- return this.setValueQueueInternal(key, val, silent, noGet, noUpdate, isParentUpdate);
183
- }
184
- return await super.setValue__(key, val, silent, noGet, noUpdate, isParentUpdate);
58
+ async setValue_(key, val) {
59
+ return await this.setValue__(key, val);
185
60
  }
186
- /**
187
- * Internal database and memory setter executing MongoDB updates and socket events.
188
- *
189
- * @param key - Property key to modify.
190
- * @param value - Value to set.
191
- * @param silent - Whether socket broadcast is bypassed.
192
- * @param noUpdate - Whether onUpdate hook is bypassed.
193
- * @returns Promise resolving to setter outcome.
194
- */
195
- async setValueInternal(key, value, silent = false, noUpdate = false) {
196
- if (key === "__proto__" ||
197
- key === "constructor" ||
198
- key === "prototype") {
199
- return { success: false, msg: `Invalid property key: ${key}` };
200
- }
61
+ handleNewObject(_data) {
62
+ throw new Error("Cannot create new objects like this.");
63
+ }
64
+ async setValueInternal(key, value, _silent = false) {
201
65
  try {
202
- const _id = this.data._id;
203
- if (!_id)
204
- throw new DEMError(DEMErrorCode.MISSING_ID, `Cannot update object ${this.className} - missing _id.`);
205
- this.entry ??= await this.parentManager.model.findById(_id);
206
- if (!this.entry)
207
- throw new DEMError(DEMErrorCode.OBJECT_NOT_FOUND, "Object not found in DB.");
208
- // Check if property is part of properties or schema, regardless of current undefined value
209
- const isPersisted = this.properties.includes(key) ||
210
- this.entry[key] !== undefined ||
211
- Boolean(this.entry.schema?.path?.(key));
212
- if (isPersisted) {
213
- this.saveLock = (this.saveLock ?? Promise.resolve())
214
- .catch(() => { })
215
- .then(async () => {
216
- if (typeof this.parentManager.model?.updateOne === "function") {
217
- await this.parentManager.model.updateOne({ _id }, { $set: { [key]: value } });
218
- }
219
- else if (this.entry && typeof this.entry.save === "function") {
220
- await this.entry.save();
221
- }
222
- if (this.entry) {
223
- this.entry[key] = value;
224
- }
225
- });
226
- await this.saveLock;
227
- }
228
- this.data[key] = value;
229
- this._cachedExtractedData = null;
230
- if (this.parentManager) {
231
- this.parentManager.startupPayloadCache = null;
232
- }
233
- if (!silent) {
234
- if (this.parentManager && this.parentManager.changeTracker) {
235
- this.parentManager.changeTracker.recordChange("update", _id.toString(), { [key]: value });
236
- }
237
- const update = this.makeUpdate(key, value);
238
- const event = EVENT_UPDATE + this.className + _id.toString();
239
- this.socket.emit(event, update);
240
- if (this.parentManager &&
241
- typeof this.parentManager.checkPermissionBoundaries ===
242
- "function") {
243
- await this.parentManager.checkPermissionBoundaries(this);
244
- }
245
- }
246
- return { success: true, msg: "Success" };
66
+ await this.parentManager.managers[this.className].model.updateOne({ _id: this.data._id }, { $set: { [key]: value } });
67
+ const update = this.makeUpdate(key, value);
68
+ const event = "update" + this.className + this.data._id;
69
+ this.socket.emit(event, update);
70
+ return {
71
+ success: true,
72
+ msg: "Updated",
73
+ };
247
74
  }
248
75
  catch (error) {
249
- this.loggers.error?.(`Error saving object [${this.className}: ${this.data._id?.toString() ?? "not loaded"}]: ${error.message}`);
250
- return { success: false, msg: "Error saving object: " + error.message };
76
+ this.loggers.error("Error saving object: " + error.message);
77
+ this.loggers.error(error.stack);
78
+ return {
79
+ success: false,
80
+ msg: "Error saving object: " + error.message,
81
+ };
251
82
  }
252
83
  }
253
- /**
254
- * Deletes entity from MongoDB and emits delete socket events.
255
- *
256
- * @param once - Internal flag for single-pass deletion.
257
- * @returns Promise resolving to deletion outcome.
258
- */
259
84
  async destroy(once = false) {
260
- const _id = this.data._id;
261
- if (!_id)
262
- return { success: false, message: "Missing _id" };
263
85
  if (!once) {
264
- return await this.parentManager.deleteObject(_id);
86
+ return await this.parentManager.deleteObject(this.data._id);
265
87
  }
266
- // Wait for any pending saves to complete before deleting
267
- await (this.saveLock ?? Promise.resolve()).catch(() => { });
268
88
  try {
269
- this.entry ??= await this.parentManager.model.findById(_id);
270
- if (this.entry) {
271
- await this.onDeletion();
272
- await this.entry.deleteOne();
273
- }
274
- this.loggers.debug?.("Deleted object from server " + this.className);
89
+ const res = await this.entry.deleteOne({ _id: this.data._id });
90
+ this.loggers.debug("Deleted object from server " + this.className);
91
+ this.loggers.debug(res.deletedCount + " deleted.");
275
92
  }
276
93
  catch (error) {
277
- this.loggers.error?.(`Error deleting object from database - ${this.className} - ${_id.toString()}: ${error.message}`);
94
+ this.loggers.error("Error deleting object from database - " +
95
+ this.className +
96
+ " - " +
97
+ this.data._id);
98
+ this.loggers.error(error.message);
99
+ this.loggers.error(error.stack);
278
100
  return {
279
101
  success: false,
280
- message: "Deletion unsuccessful: " + error.message,
102
+ message: "Deletion uncussessful: " + error.message,
281
103
  };
282
104
  }
283
- this.socket.emit(EVENT_DELETE + this.className, _id.toString());
284
- await this.wipeSelf();
285
- return { success: true, message: "Deleted" };
105
+ this.socket.emit("delete" + this.className, this.data._id);
106
+ this.socket.removeAllListeners("update" + this.className + this.data._id);
107
+ this.socket.removeAllListeners("delete" + this.className);
108
+ this.wipeSelf();
109
+ return {
110
+ success: true,
111
+ message: "Deleted",
112
+ };
286
113
  }
287
- /**
288
- * Executes configured onUpdate hook with deadlock-safe write execution.
289
- *
290
- * @param noUpdate - Whether hook execution is skipped.
291
- * @param key - Modified property key.
292
- */
293
- async onUpdate(noUpdate = false, key) {
294
- if (noUpdate || this._isUpdating)
114
+ async onUpdate(noUpdate = false) {
115
+ if (noUpdate)
295
116
  return;
296
- this._isUpdating = true;
297
- try {
298
- if (this.parentManager.options?.onUpdate) {
299
- await this.parentManager.options.onUpdate(this, async (key, val) => {
300
- // Bypass writeQueue chaining to prevent recursive deadlock while in onUpdate
301
- return this.setValueQueueInternal(key, val, false, false, true);
302
- }, key);
303
- }
304
- }
305
- finally {
306
- this._isUpdating = false;
307
- if (this.parentManager &&
308
- typeof this.parentManager.checkPermissionBoundaries ===
309
- "function") {
310
- await this.parentManager.checkPermissionBoundaries(this);
311
- }
312
- }
313
- }
314
- /**
315
- * Executes configured onDeletion hook prior to database removal.
316
- */
317
- async onDeletion() {
318
- if (this.parentManager.options?.onDeletion) {
319
- await this.parentManager.options.onDeletion(this);
320
- }
321
- }
322
- }
323
- /**
324
- * Instantiates and loads an AutoUpdatedServerObject instance.
325
- *
326
- * @param classParam - Constructor of the server entity class.
327
- * @param className - Managed entity class name.
328
- * @param socket - Socket server or transport instance.
329
- * @param data - Entity identifier or initial data object.
330
- * @param loggers - Logging interfaces.
331
- * @param parentManager - Host server manager.
332
- * @param emitter - Shared event emitter.
333
- * @param document - Optional pre-loaded Mongoose document.
334
- * @returns Promise resolving to the initialized server entity.
335
- */
336
- export async function createAutoUpdatedClass(classParam, className, socket, data, loggers, parentManager, emitter, document) {
337
- const obj = new classParam(classParam, socket, data, loggers, className, parentManager, emitter);
338
- if (document) {
339
- obj.loadFromDocument(document);
340
- }
341
- else {
342
- await obj.loadFromDB();
117
+ await this.parentManager.options?.onUpdate?.(this, (a, b) => {
118
+ return this.setValue__(a, b, false, true, true);
119
+ });
343
120
  }
344
- return obj;
345
121
  }
122
+ //# sourceMappingURL=AutoUpdatedServerObjectClass.js.map
346
123
  //# sourceMappingURL=AutoUpdatedServerObjectClass.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AutoUpdatedServerObjectClass.js","sourceRoot":"","sources":["../AutoUpdatedServerObjectClass.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AutoUpdatedServerObjectClass.js","sourceRoot":"","sources":["../AutoUpdatedServerObjectClass.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ export class Test {
2
+ _id: any;
3
+ active: any;
4
+ status: any;
5
+ description: any;
6
+ ref: any;
7
+ refarr: any;
8
+ obj: any;
9
+ parent: any;
10
+ }
11
+ export class Test2 {
12
+ _id: any;
13
+ }
@@ -0,0 +1,70 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
4
+ r = Reflect.decorate(decorators, target, key, desc);
5
+ else
6
+ for (var i = decorators.length - 1; i >= 0; i--)
7
+ if (d = decorators[i])
8
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
10
+ };
11
+ var __metadata = (this && this.__metadata) || function (k, v) {
12
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function")
13
+ return Reflect.metadata(k, v);
14
+ };
15
+ import { classProp, classRef, populatedRef } from "./CommonTypes.js";
16
+ import { Status } from "./TestTypes.js";
17
+ export class Test {
18
+ _id;
19
+ active;
20
+ status;
21
+ description;
22
+ ref;
23
+ refarr;
24
+ obj;
25
+ parent;
26
+ }
27
+ __decorate([
28
+ classProp,
29
+ __metadata("design:type", String)
30
+ ], Test.prototype, "_id", void 0);
31
+ __decorate([
32
+ classProp,
33
+ __metadata("design:type", Boolean)
34
+ ], Test.prototype, "active", void 0);
35
+ __decorate([
36
+ classProp,
37
+ __metadata("design:type", String)
38
+ ], Test.prototype, "status", void 0);
39
+ __decorate([
40
+ classProp,
41
+ __metadata("design:type", Object)
42
+ ], Test.prototype, "description", void 0);
43
+ __decorate([
44
+ classProp,
45
+ classRef(),
46
+ __metadata("design:type", Object)
47
+ ], Test.prototype, "ref", void 0);
48
+ __decorate([
49
+ classProp,
50
+ classRef(),
51
+ __metadata("design:type", Array)
52
+ ], Test.prototype, "refarr", void 0);
53
+ __decorate([
54
+ classProp,
55
+ __metadata("design:type", Object)
56
+ ], Test.prototype, "obj", void 0);
57
+ __decorate([
58
+ classProp,
59
+ populatedRef("Test:refarr"),
60
+ __metadata("design:type", Object)
61
+ ], Test.prototype, "parent", void 0);
62
+ export class Test2 {
63
+ _id;
64
+ }
65
+ __decorate([
66
+ classProp,
67
+ __metadata("design:type", String)
68
+ ], Test2.prototype, "_id", void 0);
69
+ //# sourceMappingURL=ClientTypes.js.map
70
+ //# sourceMappingURL=ClientTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClientTypes.js","sourceRoot":"","sources":["../ClientTypes.js"],"names":[],"mappings":"AAAA,IAAI,UAAU,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,UAAU,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI;IACjF,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC7H,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;QAAE,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC;;QAC1H,KAAK,IAAI,CAAC,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YAAE,IAAI,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC;gBAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;IAClJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC;AACF,IAAI,UAAU,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC;IACxD,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,OAAO,CAAC,QAAQ,KAAK,UAAU;QAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC7G,CAAC,CAAC;AACF,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrE,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,MAAM,OAAO,IAAI;IACb,GAAG,CAAC;IACJ,MAAM,CAAC;IACP,MAAM,CAAC;IACP,WAAW,CAAC;IACZ,GAAG,CAAC;IACJ,MAAM,CAAC;IACP,GAAG,CAAC;IACJ,MAAM,CAAC;CACV;AACD,UAAU,CAAC;IACP,SAAS;IACT,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC;CACpC,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAClC,UAAU,CAAC;IACP,SAAS;IACT,UAAU,CAAC,aAAa,EAAE,OAAO,CAAC;CACrC,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AACrC,UAAU,CAAC;IACP,SAAS;IACT,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC;CACpC,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AACrC,UAAU,CAAC;IACP,SAAS;IACT,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC;CACpC,EAAE,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;AAC1C,UAAU,CAAC;IACP,SAAS;IACT,QAAQ,EAAE;IACV,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC;CACpC,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAClC,UAAU,CAAC;IACP,SAAS;IACT,QAAQ,EAAE;IACV,UAAU,CAAC,aAAa,EAAE,KAAK,CAAC;CACnC,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AACrC,UAAU,CAAC;IACP,SAAS;IACT,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC;CACpC,EAAE,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAClC,UAAU,CAAC;IACP,SAAS;IACT,YAAY,CAAC,aAAa,CAAC;IAC3B,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC;CACpC,EAAE,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AACrC,MAAM,OAAO,KAAK;IACd,GAAG,CAAC;CACP;AACD,UAAU,CAAC;IACP,SAAS;IACT,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC;CACpC,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AACnC,uCAAuC"}