tinybase 7.0.0-beta.1 → 7.0.0-beta.3

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 (329) hide show
  1. package/@types/common/index.d.ts +1 -1
  2. package/@types/mergeable-store/index.d.ts +2 -1
  3. package/@types/mergeable-store/with-schemas/index.d.ts +5 -3
  4. package/@types/omni/index.d.ts +2 -0
  5. package/@types/omni/with-schemas/index.d.ts +2 -0
  6. package/@types/persisters/index.d.ts +4 -0
  7. package/@types/persisters/persister-automerge/index.d.ts +4 -6
  8. package/@types/persisters/persister-automerge/with-schemas/index.d.ts +7 -8
  9. package/@types/persisters/persister-browser/index.d.ts +97 -6
  10. package/@types/persisters/persister-browser/with-schemas/index.d.ts +113 -6
  11. package/@types/persisters/persister-cr-sqlite-wasm/index.d.ts +4 -0
  12. package/@types/persisters/persister-cr-sqlite-wasm/with-schemas/index.d.ts +7 -2
  13. package/@types/persisters/persister-durable-object-sql-storage/index.d.ts +6 -2
  14. package/@types/persisters/persister-durable-object-sql-storage/with-schemas/index.d.ts +5 -0
  15. package/@types/persisters/persister-durable-object-storage/index.d.ts +1 -2
  16. package/@types/persisters/persister-durable-object-storage/with-schemas/index.d.ts +3 -2
  17. package/@types/persisters/persister-electric-sql/index.d.ts +4 -0
  18. package/@types/persisters/persister-electric-sql/with-schemas/index.d.ts +7 -2
  19. package/@types/persisters/persister-expo-sqlite/index.d.ts +5 -2
  20. package/@types/persisters/persister-expo-sqlite/with-schemas/index.d.ts +7 -2
  21. package/@types/persisters/persister-file/index.d.ts +1 -2
  22. package/@types/persisters/persister-file/with-schemas/index.d.ts +3 -2
  23. package/@types/persisters/persister-indexed-db/with-schemas/index.d.ts +3 -2
  24. package/@types/persisters/persister-libsql/index.d.ts +4 -0
  25. package/@types/persisters/persister-libsql/with-schemas/index.d.ts +7 -2
  26. package/@types/persisters/persister-partykit-client/with-schemas/index.d.ts +3 -2
  27. package/@types/persisters/persister-pglite/index.d.ts +7 -3
  28. package/@types/persisters/persister-pglite/with-schemas/index.d.ts +9 -3
  29. package/@types/persisters/persister-postgres/index.d.ts +5 -2
  30. package/@types/persisters/persister-postgres/with-schemas/index.d.ts +7 -2
  31. package/@types/persisters/persister-powersync/index.d.ts +4 -0
  32. package/@types/persisters/persister-powersync/with-schemas/index.d.ts +7 -2
  33. package/@types/persisters/persister-react-native-mmkv/index.d.ts +117 -0
  34. package/@types/persisters/persister-react-native-mmkv/with-schemas/index.d.ts +133 -0
  35. package/@types/persisters/persister-react-native-sqlite/index.d.ts +184 -0
  36. package/@types/persisters/persister-react-native-sqlite/with-schemas/index.d.ts +207 -0
  37. package/@types/persisters/persister-remote/with-schemas/index.d.ts +3 -2
  38. package/@types/persisters/persister-sqlite-bun/index.d.ts +5 -2
  39. package/@types/persisters/persister-sqlite-bun/with-schemas/index.d.ts +7 -2
  40. package/@types/persisters/persister-sqlite-wasm/index.d.ts +6 -2
  41. package/@types/persisters/persister-sqlite-wasm/with-schemas/index.d.ts +8 -2
  42. package/@types/persisters/persister-sqlite3/index.d.ts +5 -2
  43. package/@types/persisters/persister-sqlite3/with-schemas/index.d.ts +7 -2
  44. package/@types/persisters/persister-yjs/with-schemas/index.d.ts +3 -2
  45. package/@types/persisters/with-schemas/index.d.ts +4 -0
  46. package/@types/queries/index.d.ts +1 -1
  47. package/@types/queries/with-schemas/index.d.ts +4 -8
  48. package/@types/store/index.d.ts +34 -19
  49. package/@types/store/with-schemas/index.d.ts +28 -13
  50. package/@types/synchronizers/index.d.ts +1 -0
  51. package/@types/synchronizers/synchronizer-broadcast-channel/with-schemas/index.d.ts +3 -2
  52. package/@types/synchronizers/synchronizer-local/with-schemas/index.d.ts +3 -2
  53. package/@types/synchronizers/synchronizer-ws-client/index.d.ts +4 -2
  54. package/@types/synchronizers/synchronizer-ws-client/with-schemas/index.d.ts +1 -0
  55. package/@types/synchronizers/synchronizer-ws-server/index.d.ts +7 -7
  56. package/@types/synchronizers/synchronizer-ws-server/with-schemas/index.d.ts +7 -7
  57. package/@types/synchronizers/synchronizer-ws-server-durable-object/index.d.ts +1 -0
  58. package/@types/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.d.ts +1 -0
  59. package/@types/synchronizers/synchronizer-ws-server-simple/index.d.ts +1 -1
  60. package/@types/synchronizers/synchronizer-ws-server-simple/with-schemas/index.d.ts +1 -1
  61. package/@types/synchronizers/with-schemas/index.d.ts +4 -2
  62. package/@types/ui-react/index.d.ts +6 -1
  63. package/@types/ui-react/with-schemas/index.d.ts +6 -1
  64. package/@types/ui-react-dom/index.d.ts +153 -20
  65. package/@types/ui-react-dom/with-schemas/index.d.ts +72 -20
  66. package/@types/ui-react-inspector/index.d.ts +8 -0
  67. package/@types/ui-react-inspector/with-schemas/index.d.ts +27 -1925
  68. package/agents.md +343 -0
  69. package/checkpoints/index.js +11 -6
  70. package/checkpoints/with-schemas/index.js +11 -6
  71. package/common/index.js +8 -4
  72. package/common/with-schemas/index.js +8 -4
  73. package/index.js +63 -31
  74. package/indexes/index.js +10 -5
  75. package/indexes/with-schemas/index.js +10 -5
  76. package/mergeable-store/index.js +54 -22
  77. package/mergeable-store/with-schemas/index.js +54 -22
  78. package/metrics/index.js +10 -5
  79. package/metrics/with-schemas/index.js +10 -5
  80. package/min/checkpoints/index.js +1 -1
  81. package/min/checkpoints/index.js.gz +0 -0
  82. package/min/checkpoints/with-schemas/index.js +1 -1
  83. package/min/checkpoints/with-schemas/index.js.gz +0 -0
  84. package/min/common/index.js +1 -1
  85. package/min/common/index.js.gz +0 -0
  86. package/min/common/with-schemas/index.js +1 -1
  87. package/min/common/with-schemas/index.js.gz +0 -0
  88. package/min/index.js +1 -1
  89. package/min/index.js.gz +0 -0
  90. package/min/indexes/index.js +1 -1
  91. package/min/indexes/index.js.gz +0 -0
  92. package/min/indexes/with-schemas/index.js +1 -1
  93. package/min/indexes/with-schemas/index.js.gz +0 -0
  94. package/min/mergeable-store/index.js +1 -1
  95. package/min/mergeable-store/index.js.gz +0 -0
  96. package/min/mergeable-store/with-schemas/index.js +1 -1
  97. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  98. package/min/metrics/index.js +1 -1
  99. package/min/metrics/index.js.gz +0 -0
  100. package/min/metrics/with-schemas/index.js +1 -1
  101. package/min/metrics/with-schemas/index.js.gz +0 -0
  102. package/min/omni/index.js +1 -1
  103. package/min/omni/index.js.gz +0 -0
  104. package/min/omni/with-schemas/index.js +1 -1
  105. package/min/omni/with-schemas/index.js.gz +0 -0
  106. package/min/persisters/index.js +1 -1
  107. package/min/persisters/index.js.gz +0 -0
  108. package/min/persisters/persister-automerge/index.js +1 -1
  109. package/min/persisters/persister-automerge/index.js.gz +0 -0
  110. package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  111. package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  112. package/min/persisters/persister-browser/index.js +1 -1
  113. package/min/persisters/persister-browser/index.js.gz +0 -0
  114. package/min/persisters/persister-browser/with-schemas/index.js +1 -1
  115. package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  116. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  117. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  118. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  119. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  120. package/min/persisters/persister-durable-object-sql-storage/index.js +1 -1
  121. package/min/persisters/persister-durable-object-sql-storage/index.js.gz +0 -0
  122. package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js +1 -1
  123. package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js.gz +0 -0
  124. package/min/persisters/persister-durable-object-storage/index.js +1 -1
  125. package/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
  126. package/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -1
  127. package/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
  128. package/min/persisters/persister-electric-sql/index.js +1 -1
  129. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  130. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  131. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  132. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  133. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  134. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  135. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  136. package/min/persisters/persister-file/index.js +1 -1
  137. package/min/persisters/persister-file/index.js.gz +0 -0
  138. package/min/persisters/persister-file/with-schemas/index.js +1 -1
  139. package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  140. package/min/persisters/persister-indexed-db/index.js +1 -1
  141. package/min/persisters/persister-indexed-db/index.js.gz +0 -0
  142. package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  143. package/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  144. package/min/persisters/persister-libsql/index.js +1 -1
  145. package/min/persisters/persister-libsql/index.js.gz +0 -0
  146. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  147. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  148. package/min/persisters/persister-partykit-client/index.js +1 -1
  149. package/min/persisters/persister-partykit-client/index.js.gz +0 -0
  150. package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  151. package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  152. package/min/persisters/persister-partykit-server/index.js +1 -1
  153. package/min/persisters/persister-partykit-server/index.js.gz +0 -0
  154. package/min/persisters/persister-partykit-server/with-schemas/index.js +1 -1
  155. package/min/persisters/persister-partykit-server/with-schemas/index.js.gz +0 -0
  156. package/min/persisters/persister-pglite/index.js +1 -1
  157. package/min/persisters/persister-pglite/index.js.gz +0 -0
  158. package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  159. package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  160. package/min/persisters/persister-postgres/index.js +1 -1
  161. package/min/persisters/persister-postgres/index.js.gz +0 -0
  162. package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  163. package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  164. package/min/persisters/persister-powersync/index.js +1 -1
  165. package/min/persisters/persister-powersync/index.js.gz +0 -0
  166. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  167. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  168. package/min/persisters/persister-react-native-mmkv/index.js +1 -0
  169. package/min/persisters/persister-react-native-mmkv/index.js.gz +0 -0
  170. package/min/persisters/persister-react-native-mmkv/with-schemas/index.js +1 -0
  171. package/min/persisters/persister-react-native-mmkv/with-schemas/index.js.gz +0 -0
  172. package/min/persisters/persister-react-native-sqlite/index.js +1 -0
  173. package/min/persisters/persister-react-native-sqlite/index.js.gz +0 -0
  174. package/min/persisters/persister-react-native-sqlite/with-schemas/index.js +1 -0
  175. package/min/persisters/persister-react-native-sqlite/with-schemas/index.js.gz +0 -0
  176. package/min/persisters/persister-remote/index.js +1 -1
  177. package/min/persisters/persister-remote/index.js.gz +0 -0
  178. package/min/persisters/persister-remote/with-schemas/index.js +1 -1
  179. package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  180. package/min/persisters/persister-sqlite-bun/index.js +1 -1
  181. package/min/persisters/persister-sqlite-bun/index.js.gz +0 -0
  182. package/min/persisters/persister-sqlite-bun/with-schemas/index.js +1 -1
  183. package/min/persisters/persister-sqlite-bun/with-schemas/index.js.gz +0 -0
  184. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  185. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  186. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  187. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  188. package/min/persisters/persister-sqlite3/index.js +1 -1
  189. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  190. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  191. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  192. package/min/persisters/persister-yjs/index.js +1 -1
  193. package/min/persisters/persister-yjs/index.js.gz +0 -0
  194. package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  195. package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  196. package/min/persisters/with-schemas/index.js +1 -1
  197. package/min/persisters/with-schemas/index.js.gz +0 -0
  198. package/min/queries/index.js +1 -1
  199. package/min/queries/index.js.gz +0 -0
  200. package/min/queries/with-schemas/index.js +1 -1
  201. package/min/queries/with-schemas/index.js.gz +0 -0
  202. package/min/relationships/index.js +1 -1
  203. package/min/relationships/index.js.gz +0 -0
  204. package/min/relationships/with-schemas/index.js +1 -1
  205. package/min/relationships/with-schemas/index.js.gz +0 -0
  206. package/min/store/index.js +1 -1
  207. package/min/store/index.js.gz +0 -0
  208. package/min/store/with-schemas/index.js +1 -1
  209. package/min/store/with-schemas/index.js.gz +0 -0
  210. package/min/synchronizers/index.js +1 -1
  211. package/min/synchronizers/index.js.gz +0 -0
  212. package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  213. package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  214. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  215. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  216. package/min/synchronizers/synchronizer-local/index.js +1 -1
  217. package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  218. package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  219. package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  220. package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  221. package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  222. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  223. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  224. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  225. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  226. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  227. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  228. package/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
  229. package/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
  230. package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
  231. package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
  232. package/min/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
  233. package/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
  234. package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
  235. package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
  236. package/min/synchronizers/with-schemas/index.js +1 -1
  237. package/min/synchronizers/with-schemas/index.js.gz +0 -0
  238. package/min/ui-react/index.js +1 -1
  239. package/min/ui-react/index.js.gz +0 -0
  240. package/min/ui-react/with-schemas/index.js +1 -1
  241. package/min/ui-react/with-schemas/index.js.gz +0 -0
  242. package/min/ui-react-dom/index.js +1 -1
  243. package/min/ui-react-dom/index.js.gz +0 -0
  244. package/min/ui-react-dom/with-schemas/index.js +1 -1
  245. package/min/ui-react-dom/with-schemas/index.js.gz +0 -0
  246. package/min/ui-react-inspector/index.js +1 -1
  247. package/min/ui-react-inspector/index.js.gz +0 -0
  248. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  249. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  250. package/min/with-schemas/index.js +1 -1
  251. package/min/with-schemas/index.js.gz +0 -0
  252. package/omni/index.js +2178 -1203
  253. package/omni/with-schemas/index.js +2178 -1203
  254. package/package.json +91 -11
  255. package/persisters/index.js +16 -10
  256. package/persisters/persister-automerge/index.js +15 -9
  257. package/persisters/persister-automerge/with-schemas/index.js +15 -9
  258. package/persisters/persister-browser/index.js +41 -9
  259. package/persisters/persister-browser/with-schemas/index.js +41 -9
  260. package/persisters/persister-cr-sqlite-wasm/index.js +16 -10
  261. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +16 -10
  262. package/persisters/persister-durable-object-sql-storage/index.js +16 -10
  263. package/persisters/persister-durable-object-sql-storage/with-schemas/index.js +16 -10
  264. package/persisters/persister-durable-object-storage/index.js +14 -8
  265. package/persisters/persister-durable-object-storage/with-schemas/index.js +14 -8
  266. package/persisters/persister-electric-sql/index.js +16 -10
  267. package/persisters/persister-electric-sql/with-schemas/index.js +16 -10
  268. package/persisters/persister-expo-sqlite/index.js +16 -10
  269. package/persisters/persister-expo-sqlite/with-schemas/index.js +16 -10
  270. package/persisters/persister-file/index.js +14 -8
  271. package/persisters/persister-file/with-schemas/index.js +14 -8
  272. package/persisters/persister-indexed-db/index.js +14 -8
  273. package/persisters/persister-indexed-db/with-schemas/index.js +14 -8
  274. package/persisters/persister-libsql/index.js +16 -10
  275. package/persisters/persister-libsql/with-schemas/index.js +16 -10
  276. package/persisters/persister-partykit-client/index.js +14 -8
  277. package/persisters/persister-partykit-client/with-schemas/index.js +14 -8
  278. package/persisters/persister-partykit-server/index.js +7 -3
  279. package/persisters/persister-partykit-server/with-schemas/index.js +7 -3
  280. package/persisters/persister-pglite/index.js +15 -9
  281. package/persisters/persister-pglite/with-schemas/index.js +15 -9
  282. package/persisters/persister-postgres/index.js +15 -9
  283. package/persisters/persister-postgres/with-schemas/index.js +15 -9
  284. package/persisters/persister-powersync/index.js +16 -10
  285. package/persisters/persister-powersync/with-schemas/index.js +16 -10
  286. package/persisters/persister-react-native-mmkv/index.js +465 -0
  287. package/persisters/persister-react-native-mmkv/with-schemas/index.js +465 -0
  288. package/persisters/persister-react-native-sqlite/index.js +1195 -0
  289. package/persisters/persister-react-native-sqlite/with-schemas/index.js +1195 -0
  290. package/persisters/persister-remote/index.js +16 -10
  291. package/persisters/persister-remote/with-schemas/index.js +16 -10
  292. package/persisters/persister-sqlite-bun/index.js +16 -10
  293. package/persisters/persister-sqlite-bun/with-schemas/index.js +16 -10
  294. package/persisters/persister-sqlite-wasm/index.js +16 -10
  295. package/persisters/persister-sqlite-wasm/with-schemas/index.js +16 -10
  296. package/persisters/persister-sqlite3/index.js +16 -10
  297. package/persisters/persister-sqlite3/with-schemas/index.js +16 -10
  298. package/persisters/persister-yjs/index.js +20 -12
  299. package/persisters/persister-yjs/with-schemas/index.js +20 -12
  300. package/persisters/with-schemas/index.js +16 -10
  301. package/queries/index.js +20 -12
  302. package/queries/with-schemas/index.js +20 -12
  303. package/readme.md +13 -13
  304. package/relationships/index.js +10 -5
  305. package/relationships/with-schemas/index.js +10 -5
  306. package/releases.md +179 -41
  307. package/store/index.js +50 -18
  308. package/store/with-schemas/index.js +50 -18
  309. package/synchronizers/index.js +16 -10
  310. package/synchronizers/synchronizer-broadcast-channel/index.js +17 -11
  311. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +17 -11
  312. package/synchronizers/synchronizer-local/index.js +17 -11
  313. package/synchronizers/synchronizer-local/with-schemas/index.js +17 -11
  314. package/synchronizers/synchronizer-ws-client/index.js +16 -10
  315. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +16 -10
  316. package/synchronizers/synchronizer-ws-server/index.js +16 -10
  317. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +16 -10
  318. package/synchronizers/synchronizer-ws-server-durable-object/index.js +16 -10
  319. package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +16 -10
  320. package/synchronizers/synchronizer-ws-server-simple/index.js +8 -4
  321. package/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +8 -4
  322. package/synchronizers/with-schemas/index.js +16 -10
  323. package/ui-react/index.js +408 -374
  324. package/ui-react/with-schemas/index.js +408 -374
  325. package/ui-react-dom/index.js +883 -437
  326. package/ui-react-dom/with-schemas/index.js +883 -437
  327. package/ui-react-inspector/index.js +1761 -556
  328. package/ui-react-inspector/with-schemas/index.js +1761 -556
  329. package/with-schemas/index.js +63 -31
@@ -12,14 +12,20 @@ const strReplace = (str, searchValue, replaceValue) =>
12
12
  str.replace(searchValue, replaceValue);
13
13
 
14
14
  const promise = Promise;
15
+ const getIfNotFunction =
16
+ (predicate = isNullish) =>
17
+ (value, then, otherwise) =>
18
+ predicate(value) ? otherwise?.() : then(value);
15
19
  const THOUSAND = 1e3;
16
20
  const startInterval = (callback, sec, immediate) => {
17
21
  return setInterval(callback, sec * THOUSAND);
18
22
  };
19
23
  const stopInterval = clearInterval;
20
- const isUndefined = (thing) => thing == void 0;
21
- const ifNotUndefined = (value, then, otherwise) =>
22
- isUndefined(value) ? otherwise?.() : then(value);
24
+ const isNullish = (thing) => thing == null;
25
+ const isUndefined = (thing) => thing === void 0;
26
+ const isNull = (thing) => thing === null;
27
+ const ifNotNullish = getIfNotFunction(isNullish);
28
+ const ifNotUndefined = getIfNotFunction(isUndefined);
23
29
  const isString = (thing) => getTypeOf(thing) == STRING;
24
30
  const isArray = (thing) => Array.isArray(thing);
25
31
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -102,12 +108,12 @@ const object = Object;
102
108
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
103
109
  const objEntries = object.entries;
104
110
  const isObject = (obj) =>
105
- !isUndefined(obj) &&
106
- ifNotUndefined(
111
+ !isNullish(obj) &&
112
+ ifNotNullish(
107
113
  getPrototypeOf(obj),
108
114
  (objPrototype) =>
109
115
  objPrototype == object.prototype ||
110
- isUndefined(getPrototypeOf(objPrototype)),
116
+ isNullish(getPrototypeOf(objPrototype)),
111
117
 
112
118
  /* istanbul ignore next */
113
119
  () => true,
@@ -136,7 +142,7 @@ const mapForEach = (map, cb) =>
136
142
  const mapMap = (coll, cb) =>
137
143
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
138
144
  const mapSet = (map, key, value) =>
139
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
145
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
140
146
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
141
147
  if (!collHas(map, key)) {
142
148
  mapSet(map, key, getDefaultValue());
@@ -223,7 +229,7 @@ const getDefaultedTabularConfigMap = (
223
229
  0,
224
230
  objSize(defaultObj),
225
231
  );
226
- if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
232
+ if (!isNull(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
227
233
  then(id, defaultedConfig[0]);
228
234
  mapSet(configMap, id, defaultedConfig);
229
235
  }
@@ -372,7 +378,7 @@ const getListenerFunctions = (getThing) => {
372
378
  const index = size(ids);
373
379
  if (index == size(path)) {
374
380
  listener(thing, ...ids, ...extraArgsGetter(ids));
375
- } else if (isUndefined(path[index])) {
381
+ } else if (isNull(path[index])) {
376
382
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
377
383
  callWithIds(...ids, id2),
378
384
  );
@@ -1117,7 +1123,7 @@ const createCustomSqlitePersister = (
1117
1123
  ` ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
1118
1124
  );
1119
1125
  if (d != dataVersion || s != schemaVersion || c != totalChanges) {
1120
- if (dataVersion != null) {
1126
+ if (!isNullish(dataVersion)) {
1121
1127
  listener();
1122
1128
  }
1123
1129
  dataVersion = d;
@@ -13,14 +13,20 @@ const strReplace = (str, searchValue, replaceValue) =>
13
13
  str.replace(searchValue, replaceValue);
14
14
 
15
15
  const promise = Promise;
16
+ const getIfNotFunction =
17
+ (predicate = isNullish) =>
18
+ (value, then, otherwise) =>
19
+ predicate(value) ? otherwise?.() : then(value);
16
20
  const THOUSAND = 1e3;
17
21
  const startInterval = (callback, sec, immediate) => {
18
22
  return setInterval(callback, sec * THOUSAND);
19
23
  };
20
24
  const stopInterval = clearInterval;
21
- const isUndefined = (thing) => thing == void 0;
22
- const ifNotUndefined = (value, then, otherwise) =>
23
- isUndefined(value) ? otherwise?.() : then(value);
25
+ const isNullish = (thing) => thing == null;
26
+ const isUndefined = (thing) => thing === void 0;
27
+ const isNull = (thing) => thing === null;
28
+ const ifNotNullish = getIfNotFunction(isNullish);
29
+ const ifNotUndefined = getIfNotFunction(isUndefined);
24
30
  const isString = (thing) => getTypeOf(thing) == STRING;
25
31
  const isArray = (thing) => Array.isArray(thing);
26
32
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -53,12 +59,12 @@ const object = Object;
53
59
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
54
60
  const objEntries = object.entries;
55
61
  const isObject = (obj) =>
56
- !isUndefined(obj) &&
57
- ifNotUndefined(
62
+ !isNullish(obj) &&
63
+ ifNotNullish(
58
64
  getPrototypeOf(obj),
59
65
  (objPrototype) =>
60
66
  objPrototype == object.prototype ||
61
- isUndefined(getPrototypeOf(objPrototype)),
67
+ isNullish(getPrototypeOf(objPrototype)),
62
68
 
63
69
  /* istanbul ignore next */
64
70
  () => true,
@@ -110,7 +116,7 @@ const mapForEach = (map, cb) =>
110
116
  const mapMap = (coll, cb) =>
111
117
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
112
118
  const mapSet = (map, key, value) =>
113
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
119
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
114
120
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
115
121
  if (!collHas(map, key)) {
116
122
  mapSet(map, key, getDefaultValue());
@@ -229,7 +235,7 @@ const getListenerFunctions = (getThing) => {
229
235
  const index = size(ids);
230
236
  if (index == size(path)) {
231
237
  listener(thing, ...ids, ...extraArgsGetter(ids));
232
- } else if (isUndefined(path[index])) {
238
+ } else if (isNull(path[index])) {
233
239
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
234
240
  callWithIds(...ids, id2),
235
241
  );
@@ -571,7 +577,7 @@ const getDefaultedTabularConfigMap = (
571
577
  0,
572
578
  objSize(defaultObj),
573
579
  );
574
- if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
580
+ if (!isNull(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
575
581
  then(id, defaultedConfig[0]);
576
582
  mapSet(configMap, id, defaultedConfig);
577
583
  }
@@ -1134,7 +1140,7 @@ const createCustomSqlitePersister = (
1134
1140
  ` ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
1135
1141
  );
1136
1142
  if (d != dataVersion || s != schemaVersion || c != totalChanges) {
1137
- if (dataVersion != null) {
1143
+ if (!isNullish(dataVersion)) {
1138
1144
  listener();
1139
1145
  }
1140
1146
  dataVersion = d;
@@ -13,14 +13,20 @@ const strReplace = (str, searchValue, replaceValue) =>
13
13
  str.replace(searchValue, replaceValue);
14
14
 
15
15
  const promise = Promise;
16
+ const getIfNotFunction =
17
+ (predicate = isNullish) =>
18
+ (value, then, otherwise) =>
19
+ predicate(value) ? otherwise?.() : then(value);
16
20
  const THOUSAND = 1e3;
17
21
  const startInterval = (callback, sec, immediate) => {
18
22
  return setInterval(callback, sec * THOUSAND);
19
23
  };
20
24
  const stopInterval = clearInterval;
21
- const isUndefined = (thing) => thing == void 0;
22
- const ifNotUndefined = (value, then, otherwise) =>
23
- isUndefined(value) ? otherwise?.() : then(value);
25
+ const isNullish = (thing) => thing == null;
26
+ const isUndefined = (thing) => thing === void 0;
27
+ const isNull = (thing) => thing === null;
28
+ const ifNotNullish = getIfNotFunction(isNullish);
29
+ const ifNotUndefined = getIfNotFunction(isUndefined);
24
30
  const isString = (thing) => getTypeOf(thing) == STRING;
25
31
  const isArray = (thing) => Array.isArray(thing);
26
32
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -53,12 +59,12 @@ const object = Object;
53
59
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
54
60
  const objEntries = object.entries;
55
61
  const isObject = (obj) =>
56
- !isUndefined(obj) &&
57
- ifNotUndefined(
62
+ !isNullish(obj) &&
63
+ ifNotNullish(
58
64
  getPrototypeOf(obj),
59
65
  (objPrototype) =>
60
66
  objPrototype == object.prototype ||
61
- isUndefined(getPrototypeOf(objPrototype)),
67
+ isNullish(getPrototypeOf(objPrototype)),
62
68
 
63
69
  /* istanbul ignore next */
64
70
  () => true,
@@ -110,7 +116,7 @@ const mapForEach = (map, cb) =>
110
116
  const mapMap = (coll, cb) =>
111
117
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
112
118
  const mapSet = (map, key, value) =>
113
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
119
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
114
120
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
115
121
  if (!collHas(map, key)) {
116
122
  mapSet(map, key, getDefaultValue());
@@ -229,7 +235,7 @@ const getListenerFunctions = (getThing) => {
229
235
  const index = size(ids);
230
236
  if (index == size(path)) {
231
237
  listener(thing, ...ids, ...extraArgsGetter(ids));
232
- } else if (isUndefined(path[index])) {
238
+ } else if (isNull(path[index])) {
233
239
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
234
240
  callWithIds(...ids, id2),
235
241
  );
@@ -571,7 +577,7 @@ const getDefaultedTabularConfigMap = (
571
577
  0,
572
578
  objSize(defaultObj),
573
579
  );
574
- if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
580
+ if (!isNull(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
575
581
  then(id, defaultedConfig[0]);
576
582
  mapSet(configMap, id, defaultedConfig);
577
583
  }
@@ -1134,7 +1140,7 @@ const createCustomSqlitePersister = (
1134
1140
  ` ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
1135
1141
  );
1136
1142
  if (d != dataVersion || s != schemaVersion || c != totalChanges) {
1137
- if (dataVersion != null) {
1143
+ if (!isNullish(dataVersion)) {
1138
1144
  listener();
1139
1145
  }
1140
1146
  dataVersion = d;
@@ -4,9 +4,15 @@ const V = 'v';
4
4
  const UNDEFINED = '\uFFFC';
5
5
  const strStartsWith = (str, prefix) => str.startsWith(prefix);
6
6
 
7
- const isUndefined = (thing) => thing == void 0;
8
- const ifNotUndefined = (value, then, otherwise) =>
9
- isUndefined(value) ? otherwise?.() : then(value);
7
+ const getIfNotFunction =
8
+ (predicate = isNullish) =>
9
+ (value, then, otherwise) =>
10
+ predicate(value) ? otherwise?.() : then(value);
11
+ const isNullish = (thing) => thing == null;
12
+ const isUndefined = (thing) => thing === void 0;
13
+ const isNull = (thing) => thing === null;
14
+ const ifNotNullish = getIfNotFunction(isNullish);
15
+ const ifNotUndefined = getIfNotFunction(isUndefined);
10
16
  const isArray = (thing) => Array.isArray(thing);
11
17
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
12
18
  const size = (arrayOrString) => arrayOrString.length;
@@ -33,12 +39,12 @@ const object = Object;
33
39
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
34
40
  const objEntries = object.entries;
35
41
  const isObject = (obj) =>
36
- !isUndefined(obj) &&
37
- ifNotUndefined(
42
+ !isNullish(obj) &&
43
+ ifNotNullish(
38
44
  getPrototypeOf(obj),
39
45
  (objPrototype) =>
40
46
  objPrototype == object.prototype ||
41
- isUndefined(getPrototypeOf(objPrototype)),
47
+ isNullish(getPrototypeOf(objPrototype)),
42
48
 
43
49
  /* istanbul ignore next */
44
50
  () => true,
@@ -70,7 +76,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
70
76
  const mapNew = (entries) => new Map(entries);
71
77
  const mapGet = (map, key) => map?.get(key);
72
78
  const mapSet = (map, key, value) =>
73
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
79
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
74
80
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
75
81
  if (!collHas(map, key)) {
76
82
  mapSet(map, key, getDefaultValue());
@@ -201,7 +207,7 @@ const getListenerFunctions = (getThing) => {
201
207
  const index = size(ids);
202
208
  if (index == size(path)) {
203
209
  listener(thing, ...ids, ...extraArgsGetter(ids));
204
- } else if (isUndefined(path[index])) {
210
+ } else if (isNull(path[index])) {
205
211
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
206
212
  callWithIds(...ids, id2),
207
213
  );
@@ -4,9 +4,15 @@ const V = 'v';
4
4
  const UNDEFINED = '\uFFFC';
5
5
  const strStartsWith = (str, prefix) => str.startsWith(prefix);
6
6
 
7
- const isUndefined = (thing) => thing == void 0;
8
- const ifNotUndefined = (value, then, otherwise) =>
9
- isUndefined(value) ? otherwise?.() : then(value);
7
+ const getIfNotFunction =
8
+ (predicate = isNullish) =>
9
+ (value, then, otherwise) =>
10
+ predicate(value) ? otherwise?.() : then(value);
11
+ const isNullish = (thing) => thing == null;
12
+ const isUndefined = (thing) => thing === void 0;
13
+ const isNull = (thing) => thing === null;
14
+ const ifNotNullish = getIfNotFunction(isNullish);
15
+ const ifNotUndefined = getIfNotFunction(isUndefined);
10
16
  const isArray = (thing) => Array.isArray(thing);
11
17
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
12
18
  const size = (arrayOrString) => arrayOrString.length;
@@ -33,12 +39,12 @@ const object = Object;
33
39
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
34
40
  const objEntries = object.entries;
35
41
  const isObject = (obj) =>
36
- !isUndefined(obj) &&
37
- ifNotUndefined(
42
+ !isNullish(obj) &&
43
+ ifNotNullish(
38
44
  getPrototypeOf(obj),
39
45
  (objPrototype) =>
40
46
  objPrototype == object.prototype ||
41
- isUndefined(getPrototypeOf(objPrototype)),
47
+ isNullish(getPrototypeOf(objPrototype)),
42
48
 
43
49
  /* istanbul ignore next */
44
50
  () => true,
@@ -70,7 +76,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
70
76
  const mapNew = (entries) => new Map(entries);
71
77
  const mapGet = (map, key) => map?.get(key);
72
78
  const mapSet = (map, key, value) =>
73
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
79
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
74
80
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
75
81
  if (!collHas(map, key)) {
76
82
  mapSet(map, key, getDefaultValue());
@@ -201,7 +207,7 @@ const getListenerFunctions = (getThing) => {
201
207
  const index = size(ids);
202
208
  if (index == size(path)) {
203
209
  listener(thing, ...ids, ...extraArgsGetter(ids));
204
- } else if (isUndefined(path[index])) {
210
+ } else if (isNull(path[index])) {
205
211
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
206
212
  callWithIds(...ids, id2),
207
213
  );
@@ -12,14 +12,20 @@ const strReplace = (str, searchValue, replaceValue) =>
12
12
  str.replace(searchValue, replaceValue);
13
13
 
14
14
  const promise = Promise;
15
+ const getIfNotFunction =
16
+ (predicate = isNullish) =>
17
+ (value, then, otherwise) =>
18
+ predicate(value) ? otherwise?.() : then(value);
15
19
  const THOUSAND = 1e3;
16
20
  const startInterval = (callback, sec, immediate) => {
17
21
  return setInterval(callback, sec * THOUSAND);
18
22
  };
19
23
  const stopInterval = clearInterval;
20
- const isUndefined = (thing) => thing == void 0;
21
- const ifNotUndefined = (value, then, otherwise) =>
22
- isUndefined(value) ? otherwise?.() : then(value);
24
+ const isNullish = (thing) => thing == null;
25
+ const isUndefined = (thing) => thing === void 0;
26
+ const isNull = (thing) => thing === null;
27
+ const ifNotNullish = getIfNotFunction(isNullish);
28
+ const ifNotUndefined = getIfNotFunction(isUndefined);
23
29
  const isString = (thing) => getTypeOf(thing) == STRING;
24
30
  const isArray = (thing) => Array.isArray(thing);
25
31
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -102,12 +108,12 @@ const object = Object;
102
108
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
103
109
  const objEntries = object.entries;
104
110
  const isObject = (obj) =>
105
- !isUndefined(obj) &&
106
- ifNotUndefined(
111
+ !isNullish(obj) &&
112
+ ifNotNullish(
107
113
  getPrototypeOf(obj),
108
114
  (objPrototype) =>
109
115
  objPrototype == object.prototype ||
110
- isUndefined(getPrototypeOf(objPrototype)),
116
+ isNullish(getPrototypeOf(objPrototype)),
111
117
 
112
118
  /* istanbul ignore next */
113
119
  () => true,
@@ -136,7 +142,7 @@ const mapForEach = (map, cb) =>
136
142
  const mapMap = (coll, cb) =>
137
143
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
138
144
  const mapSet = (map, key, value) =>
139
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
145
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
140
146
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
141
147
  if (!collHas(map, key)) {
142
148
  mapSet(map, key, getDefaultValue());
@@ -223,7 +229,7 @@ const getDefaultedTabularConfigMap = (
223
229
  0,
224
230
  objSize(defaultObj),
225
231
  );
226
- if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
232
+ if (!isNull(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
227
233
  then(id, defaultedConfig[0]);
228
234
  mapSet(configMap, id, defaultedConfig);
229
235
  }
@@ -372,7 +378,7 @@ const getListenerFunctions = (getThing) => {
372
378
  const index = size(ids);
373
379
  if (index == size(path)) {
374
380
  listener(thing, ...ids, ...extraArgsGetter(ids));
375
- } else if (isUndefined(path[index])) {
381
+ } else if (isNull(path[index])) {
376
382
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
377
383
  callWithIds(...ids, id2),
378
384
  );
@@ -1117,7 +1123,7 @@ const createCustomSqlitePersister = (
1117
1123
  ` ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
1118
1124
  );
1119
1125
  if (d != dataVersion || s != schemaVersion || c != totalChanges) {
1120
- if (dataVersion != null) {
1126
+ if (!isNullish(dataVersion)) {
1121
1127
  listener();
1122
1128
  }
1123
1129
  dataVersion = d;
@@ -12,14 +12,20 @@ const strReplace = (str, searchValue, replaceValue) =>
12
12
  str.replace(searchValue, replaceValue);
13
13
 
14
14
  const promise = Promise;
15
+ const getIfNotFunction =
16
+ (predicate = isNullish) =>
17
+ (value, then, otherwise) =>
18
+ predicate(value) ? otherwise?.() : then(value);
15
19
  const THOUSAND = 1e3;
16
20
  const startInterval = (callback, sec, immediate) => {
17
21
  return setInterval(callback, sec * THOUSAND);
18
22
  };
19
23
  const stopInterval = clearInterval;
20
- const isUndefined = (thing) => thing == void 0;
21
- const ifNotUndefined = (value, then, otherwise) =>
22
- isUndefined(value) ? otherwise?.() : then(value);
24
+ const isNullish = (thing) => thing == null;
25
+ const isUndefined = (thing) => thing === void 0;
26
+ const isNull = (thing) => thing === null;
27
+ const ifNotNullish = getIfNotFunction(isNullish);
28
+ const ifNotUndefined = getIfNotFunction(isUndefined);
23
29
  const isString = (thing) => getTypeOf(thing) == STRING;
24
30
  const isArray = (thing) => Array.isArray(thing);
25
31
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -102,12 +108,12 @@ const object = Object;
102
108
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
103
109
  const objEntries = object.entries;
104
110
  const isObject = (obj) =>
105
- !isUndefined(obj) &&
106
- ifNotUndefined(
111
+ !isNullish(obj) &&
112
+ ifNotNullish(
107
113
  getPrototypeOf(obj),
108
114
  (objPrototype) =>
109
115
  objPrototype == object.prototype ||
110
- isUndefined(getPrototypeOf(objPrototype)),
116
+ isNullish(getPrototypeOf(objPrototype)),
111
117
 
112
118
  /* istanbul ignore next */
113
119
  () => true,
@@ -136,7 +142,7 @@ const mapForEach = (map, cb) =>
136
142
  const mapMap = (coll, cb) =>
137
143
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
138
144
  const mapSet = (map, key, value) =>
139
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
145
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
140
146
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
141
147
  if (!collHas(map, key)) {
142
148
  mapSet(map, key, getDefaultValue());
@@ -223,7 +229,7 @@ const getDefaultedTabularConfigMap = (
223
229
  0,
224
230
  objSize(defaultObj),
225
231
  );
226
- if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
232
+ if (!isNull(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
227
233
  then(id, defaultedConfig[0]);
228
234
  mapSet(configMap, id, defaultedConfig);
229
235
  }
@@ -372,7 +378,7 @@ const getListenerFunctions = (getThing) => {
372
378
  const index = size(ids);
373
379
  if (index == size(path)) {
374
380
  listener(thing, ...ids, ...extraArgsGetter(ids));
375
- } else if (isUndefined(path[index])) {
381
+ } else if (isNull(path[index])) {
376
382
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
377
383
  callWithIds(...ids, id2),
378
384
  );
@@ -1117,7 +1123,7 @@ const createCustomSqlitePersister = (
1117
1123
  ` ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
1118
1124
  );
1119
1125
  if (d != dataVersion || s != schemaVersion || c != totalChanges) {
1120
- if (dataVersion != null) {
1126
+ if (!isNullish(dataVersion)) {
1121
1127
  listener();
1122
1128
  }
1123
1129
  dataVersion = d;
@@ -14,14 +14,20 @@ const strReplace = (str, searchValue, replaceValue) =>
14
14
  str.replace(searchValue, replaceValue);
15
15
 
16
16
  const promise = Promise;
17
+ const getIfNotFunction =
18
+ (predicate = isNullish) =>
19
+ (value, then, otherwise) =>
20
+ predicate(value) ? otherwise?.() : then(value);
17
21
  const THOUSAND = 1e3;
18
22
  const startInterval = (callback, sec, immediate) => {
19
23
  return setInterval(callback, sec * THOUSAND);
20
24
  };
21
25
  const stopInterval = clearInterval;
22
- const isUndefined = (thing) => thing == void 0;
23
- const ifNotUndefined = (value, then, otherwise) =>
24
- isUndefined(value) ? otherwise?.() : then(value);
26
+ const isNullish = (thing) => thing == null;
27
+ const isUndefined = (thing) => thing === void 0;
28
+ const isNull = (thing) => thing === null;
29
+ const ifNotNullish = getIfNotFunction(isNullish);
30
+ const ifNotUndefined = getIfNotFunction(isUndefined);
25
31
  const isString = (thing) => getTypeOf(thing) == STRING;
26
32
  const isArray = (thing) => Array.isArray(thing);
27
33
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -104,12 +110,12 @@ const object = Object;
104
110
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
105
111
  const objEntries = object.entries;
106
112
  const isObject = (obj) =>
107
- !isUndefined(obj) &&
108
- ifNotUndefined(
113
+ !isNullish(obj) &&
114
+ ifNotNullish(
109
115
  getPrototypeOf(obj),
110
116
  (objPrototype) =>
111
117
  objPrototype == object.prototype ||
112
- isUndefined(getPrototypeOf(objPrototype)),
118
+ isNullish(getPrototypeOf(objPrototype)),
113
119
 
114
120
  /* istanbul ignore next */
115
121
  () => true,
@@ -138,7 +144,7 @@ const mapForEach = (map, cb) =>
138
144
  const mapMap = (coll, cb) =>
139
145
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
140
146
  const mapSet = (map, key, value) =>
141
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
147
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
142
148
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
143
149
  if (!collHas(map, key)) {
144
150
  mapSet(map, key, getDefaultValue());
@@ -225,7 +231,7 @@ const getDefaultedTabularConfigMap = (
225
231
  0,
226
232
  objSize(defaultObj),
227
233
  );
228
- if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
234
+ if (!isNull(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
229
235
  then(id, defaultedConfig[0]);
230
236
  mapSet(configMap, id, defaultedConfig);
231
237
  }
@@ -374,7 +380,7 @@ const getListenerFunctions = (getThing) => {
374
380
  const index = size(ids);
375
381
  if (index == size(path)) {
376
382
  listener(thing, ...ids, ...extraArgsGetter(ids));
377
- } else if (isUndefined(path[index])) {
383
+ } else if (isNull(path[index])) {
378
384
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
379
385
  callWithIds(...ids, id2),
380
386
  );
@@ -1119,7 +1125,7 @@ const createCustomSqlitePersister = (
1119
1125
  ` ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
1120
1126
  );
1121
1127
  if (d != dataVersion || s != schemaVersion || c != totalChanges) {
1122
- if (dataVersion != null) {
1128
+ if (!isNullish(dataVersion)) {
1123
1129
  listener();
1124
1130
  }
1125
1131
  dataVersion = d;
@@ -14,14 +14,20 @@ const strReplace = (str, searchValue, replaceValue) =>
14
14
  str.replace(searchValue, replaceValue);
15
15
 
16
16
  const promise = Promise;
17
+ const getIfNotFunction =
18
+ (predicate = isNullish) =>
19
+ (value, then, otherwise) =>
20
+ predicate(value) ? otherwise?.() : then(value);
17
21
  const THOUSAND = 1e3;
18
22
  const startInterval = (callback, sec, immediate) => {
19
23
  return setInterval(callback, sec * THOUSAND);
20
24
  };
21
25
  const stopInterval = clearInterval;
22
- const isUndefined = (thing) => thing == void 0;
23
- const ifNotUndefined = (value, then, otherwise) =>
24
- isUndefined(value) ? otherwise?.() : then(value);
26
+ const isNullish = (thing) => thing == null;
27
+ const isUndefined = (thing) => thing === void 0;
28
+ const isNull = (thing) => thing === null;
29
+ const ifNotNullish = getIfNotFunction(isNullish);
30
+ const ifNotUndefined = getIfNotFunction(isUndefined);
25
31
  const isString = (thing) => getTypeOf(thing) == STRING;
26
32
  const isArray = (thing) => Array.isArray(thing);
27
33
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -104,12 +110,12 @@ const object = Object;
104
110
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
105
111
  const objEntries = object.entries;
106
112
  const isObject = (obj) =>
107
- !isUndefined(obj) &&
108
- ifNotUndefined(
113
+ !isNullish(obj) &&
114
+ ifNotNullish(
109
115
  getPrototypeOf(obj),
110
116
  (objPrototype) =>
111
117
  objPrototype == object.prototype ||
112
- isUndefined(getPrototypeOf(objPrototype)),
118
+ isNullish(getPrototypeOf(objPrototype)),
113
119
 
114
120
  /* istanbul ignore next */
115
121
  () => true,
@@ -138,7 +144,7 @@ const mapForEach = (map, cb) =>
138
144
  const mapMap = (coll, cb) =>
139
145
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
140
146
  const mapSet = (map, key, value) =>
141
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
147
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
142
148
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
143
149
  if (!collHas(map, key)) {
144
150
  mapSet(map, key, getDefaultValue());
@@ -225,7 +231,7 @@ const getDefaultedTabularConfigMap = (
225
231
  0,
226
232
  objSize(defaultObj),
227
233
  );
228
- if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
234
+ if (!isNull(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
229
235
  then(id, defaultedConfig[0]);
230
236
  mapSet(configMap, id, defaultedConfig);
231
237
  }
@@ -374,7 +380,7 @@ const getListenerFunctions = (getThing) => {
374
380
  const index = size(ids);
375
381
  if (index == size(path)) {
376
382
  listener(thing, ...ids, ...extraArgsGetter(ids));
377
- } else if (isUndefined(path[index])) {
383
+ } else if (isNull(path[index])) {
378
384
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
379
385
  callWithIds(...ids, id2),
380
386
  );
@@ -1119,7 +1125,7 @@ const createCustomSqlitePersister = (
1119
1125
  ` ${DATA_VERSION} d,${SCHEMA_VERSION} s,TOTAL_CHANGES() c FROM ${PRAGMA}${DATA_VERSION} JOIN ${PRAGMA}${SCHEMA_VERSION}`,
1120
1126
  );
1121
1127
  if (d != dataVersion || s != schemaVersion || c != totalChanges) {
1122
- if (dataVersion != null) {
1128
+ if (!isNullish(dataVersion)) {
1123
1129
  listener();
1124
1130
  }
1125
1131
  dataVersion = d;