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
@@ -5,9 +5,15 @@ const EMPTY_STRING = '';
5
5
  const UTF8 = 'utf8';
6
6
  const UNDEFINED = '\uFFFC';
7
7
 
8
- const isUndefined = (thing) => thing == void 0;
9
- const ifNotUndefined = (value, then, otherwise) =>
10
- isUndefined(value) ? otherwise?.() : then(value);
8
+ const getIfNotFunction =
9
+ (predicate = isNullish) =>
10
+ (value, then, otherwise) =>
11
+ predicate(value) ? otherwise?.() : then(value);
12
+ const isNullish = (thing) => thing == null;
13
+ const isUndefined = (thing) => thing === void 0;
14
+ const isNull = (thing) => thing === null;
15
+ const ifNotNullish = getIfNotFunction(isNullish);
16
+ const ifNotUndefined = getIfNotFunction(isUndefined);
11
17
  const isArray = (thing) => Array.isArray(thing);
12
18
  const size = (arrayOrString) => arrayOrString.length;
13
19
  const test = (regex, subject) => regex.test(subject);
@@ -31,12 +37,12 @@ const arrayShift = (array) => array.shift();
31
37
  const object = Object;
32
38
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
33
39
  const isObject = (obj) =>
34
- !isUndefined(obj) &&
35
- ifNotUndefined(
40
+ !isNullish(obj) &&
41
+ ifNotNullish(
36
42
  getPrototypeOf(obj),
37
43
  (objPrototype) =>
38
44
  objPrototype == object.prototype ||
39
- isUndefined(getPrototypeOf(objPrototype)),
45
+ isNullish(getPrototypeOf(objPrototype)),
40
46
 
41
47
  /* istanbul ignore next */
42
48
  () => true,
@@ -62,7 +68,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
62
68
  const mapNew = (entries) => new Map(entries);
63
69
  const mapGet = (map, key) => map?.get(key);
64
70
  const mapSet = (map, key, value) =>
65
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
71
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
66
72
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
67
73
  if (!collHas(map, key)) {
68
74
  mapSet(map, key, getDefaultValue());
@@ -173,7 +179,7 @@ const getListenerFunctions = (getThing) => {
173
179
  const index = size(ids);
174
180
  if (index == size(path)) {
175
181
  listener(thing, ...ids, ...extraArgsGetter(ids));
176
- } else if (isUndefined(path[index])) {
182
+ } else if (isNull(path[index])) {
177
183
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
178
184
  callWithIds(...ids, id2),
179
185
  );
@@ -5,9 +5,15 @@ const EMPTY_STRING = '';
5
5
  const UTF8 = 'utf8';
6
6
  const UNDEFINED = '\uFFFC';
7
7
 
8
- const isUndefined = (thing) => thing == void 0;
9
- const ifNotUndefined = (value, then, otherwise) =>
10
- isUndefined(value) ? otherwise?.() : then(value);
8
+ const getIfNotFunction =
9
+ (predicate = isNullish) =>
10
+ (value, then, otherwise) =>
11
+ predicate(value) ? otherwise?.() : then(value);
12
+ const isNullish = (thing) => thing == null;
13
+ const isUndefined = (thing) => thing === void 0;
14
+ const isNull = (thing) => thing === null;
15
+ const ifNotNullish = getIfNotFunction(isNullish);
16
+ const ifNotUndefined = getIfNotFunction(isUndefined);
11
17
  const isArray = (thing) => Array.isArray(thing);
12
18
  const size = (arrayOrString) => arrayOrString.length;
13
19
  const test = (regex, subject) => regex.test(subject);
@@ -31,12 +37,12 @@ const arrayShift = (array) => array.shift();
31
37
  const object = Object;
32
38
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
33
39
  const isObject = (obj) =>
34
- !isUndefined(obj) &&
35
- ifNotUndefined(
40
+ !isNullish(obj) &&
41
+ ifNotNullish(
36
42
  getPrototypeOf(obj),
37
43
  (objPrototype) =>
38
44
  objPrototype == object.prototype ||
39
- isUndefined(getPrototypeOf(objPrototype)),
45
+ isNullish(getPrototypeOf(objPrototype)),
40
46
 
41
47
  /* istanbul ignore next */
42
48
  () => true,
@@ -62,7 +68,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
62
68
  const mapNew = (entries) => new Map(entries);
63
69
  const mapGet = (map, key) => map?.get(key);
64
70
  const mapSet = (map, key, value) =>
65
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
71
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
66
72
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
67
73
  if (!collHas(map, key)) {
68
74
  mapSet(map, key, getDefaultValue());
@@ -173,7 +179,7 @@ const getListenerFunctions = (getThing) => {
173
179
  const index = size(ids);
174
180
  if (index == size(path)) {
175
181
  listener(thing, ...ids, ...extraArgsGetter(ids));
176
- } else if (isUndefined(path[index])) {
182
+ } else if (isNull(path[index])) {
177
183
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
178
184
  callWithIds(...ids, id2),
179
185
  );
@@ -3,6 +3,10 @@ const T = 't';
3
3
  const V = 'v';
4
4
 
5
5
  const promise = Promise;
6
+ const getIfNotFunction =
7
+ (predicate = isNullish) =>
8
+ (value, then, otherwise) =>
9
+ predicate(value) ? otherwise?.() : then(value);
6
10
  const GLOBAL = globalThis;
7
11
  const WINDOW = GLOBAL.window;
8
12
  const THOUSAND = 1e3;
@@ -10,9 +14,11 @@ const startInterval = (callback, sec, immediate) => {
10
14
  return setInterval(callback, sec * THOUSAND);
11
15
  };
12
16
  const stopInterval = clearInterval;
13
- const isUndefined = (thing) => thing == void 0;
14
- const ifNotUndefined = (value, then, otherwise) =>
15
- isUndefined(value) ? otherwise?.() : then(value);
17
+ const isNullish = (thing) => thing == null;
18
+ const isUndefined = (thing) => thing === void 0;
19
+ const isNull = (thing) => thing === null;
20
+ const ifNotNullish = getIfNotFunction(isNullish);
21
+ const ifNotUndefined = getIfNotFunction(isUndefined);
16
22
  const isArray = (thing) => Array.isArray(thing);
17
23
  const size = (arrayOrString) => arrayOrString.length;
18
24
  const test = (regex, subject) => regex.test(subject);
@@ -40,12 +46,12 @@ const object = Object;
40
46
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
41
47
  const objEntries = object.entries;
42
48
  const isObject = (obj) =>
43
- !isUndefined(obj) &&
44
- ifNotUndefined(
49
+ !isNullish(obj) &&
50
+ ifNotNullish(
45
51
  getPrototypeOf(obj),
46
52
  (objPrototype) =>
47
53
  objPrototype == object.prototype ||
48
- isUndefined(getPrototypeOf(objPrototype)),
54
+ isNullish(getPrototypeOf(objPrototype)),
49
55
 
50
56
  /* istanbul ignore next */
51
57
  () => true,
@@ -68,7 +74,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
68
74
  const mapNew = (entries) => new Map(entries);
69
75
  const mapGet = (map, key) => map?.get(key);
70
76
  const mapSet = (map, key, value) =>
71
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
77
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
72
78
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
73
79
  if (!collHas(map, key)) {
74
80
  mapSet(map, key, getDefaultValue());
@@ -179,7 +185,7 @@ const getListenerFunctions = (getThing) => {
179
185
  const index = size(ids);
180
186
  if (index == size(path)) {
181
187
  listener(thing, ...ids, ...extraArgsGetter(ids));
182
- } else if (isUndefined(path[index])) {
188
+ } else if (isNull(path[index])) {
183
189
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
184
190
  callWithIds(...ids, id2),
185
191
  );
@@ -3,6 +3,10 @@ const T = 't';
3
3
  const V = 'v';
4
4
 
5
5
  const promise = Promise;
6
+ const getIfNotFunction =
7
+ (predicate = isNullish) =>
8
+ (value, then, otherwise) =>
9
+ predicate(value) ? otherwise?.() : then(value);
6
10
  const GLOBAL = globalThis;
7
11
  const WINDOW = GLOBAL.window;
8
12
  const THOUSAND = 1e3;
@@ -10,9 +14,11 @@ const startInterval = (callback, sec, immediate) => {
10
14
  return setInterval(callback, sec * THOUSAND);
11
15
  };
12
16
  const stopInterval = clearInterval;
13
- const isUndefined = (thing) => thing == void 0;
14
- const ifNotUndefined = (value, then, otherwise) =>
15
- isUndefined(value) ? otherwise?.() : then(value);
17
+ const isNullish = (thing) => thing == null;
18
+ const isUndefined = (thing) => thing === void 0;
19
+ const isNull = (thing) => thing === null;
20
+ const ifNotNullish = getIfNotFunction(isNullish);
21
+ const ifNotUndefined = getIfNotFunction(isUndefined);
16
22
  const isArray = (thing) => Array.isArray(thing);
17
23
  const size = (arrayOrString) => arrayOrString.length;
18
24
  const test = (regex, subject) => regex.test(subject);
@@ -40,12 +46,12 @@ const object = Object;
40
46
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
41
47
  const objEntries = object.entries;
42
48
  const isObject = (obj) =>
43
- !isUndefined(obj) &&
44
- ifNotUndefined(
49
+ !isNullish(obj) &&
50
+ ifNotNullish(
45
51
  getPrototypeOf(obj),
46
52
  (objPrototype) =>
47
53
  objPrototype == object.prototype ||
48
- isUndefined(getPrototypeOf(objPrototype)),
54
+ isNullish(getPrototypeOf(objPrototype)),
49
55
 
50
56
  /* istanbul ignore next */
51
57
  () => true,
@@ -68,7 +74,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
68
74
  const mapNew = (entries) => new Map(entries);
69
75
  const mapGet = (map, key) => map?.get(key);
70
76
  const mapSet = (map, key, value) =>
71
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
77
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
72
78
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
73
79
  if (!collHas(map, key)) {
74
80
  mapSet(map, key, getDefaultValue());
@@ -179,7 +185,7 @@ const getListenerFunctions = (getThing) => {
179
185
  const index = size(ids);
180
186
  if (index == size(path)) {
181
187
  listener(thing, ...ids, ...extraArgsGetter(ids));
182
- } else if (isUndefined(path[index])) {
188
+ } else if (isNull(path[index])) {
183
189
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
184
190
  callWithIds(...ids, id2),
185
191
  );
@@ -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;
@@ -4,10 +4,16 @@ const STRING = getTypeOf(EMPTY_STRING);
4
4
  const MESSAGE = 'message';
5
5
  const strStartsWith = (str, prefix) => str.startsWith(prefix);
6
6
 
7
+ const getIfNotFunction =
8
+ (predicate = isNullish) =>
9
+ (value, then, otherwise) =>
10
+ predicate(value) ? otherwise?.() : then(value);
7
11
  const isInstanceOf = (thing, cls) => thing instanceof cls;
8
- const isUndefined = (thing) => thing == void 0;
9
- const ifNotUndefined = (value, then, otherwise) =>
10
- isUndefined(value) ? otherwise?.() : then(value);
12
+ const isNullish = (thing) => thing == null;
13
+ const isUndefined = (thing) => thing === void 0;
14
+ const isNull = (thing) => thing === null;
15
+ const ifNotNullish = getIfNotFunction(isNullish);
16
+ const ifNotUndefined = getIfNotFunction(isUndefined);
11
17
  const isString = (thing) => getTypeOf(thing) == STRING;
12
18
  const isArray = (thing) => Array.isArray(thing);
13
19
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -33,12 +39,12 @@ const arrayShift = (array) => array.shift();
33
39
  const object = Object;
34
40
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
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,
@@ -64,7 +70,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
64
70
  const mapNew = (entries) => new Map(entries);
65
71
  const mapGet = (map, key) => map?.get(key);
66
72
  const mapSet = (map, key, value) =>
67
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
73
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
68
74
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
69
75
  if (!collHas(map, key)) {
70
76
  mapSet(map, key, getDefaultValue());
@@ -175,7 +181,7 @@ const getListenerFunctions = (getThing) => {
175
181
  const index = size(ids);
176
182
  if (index == size(path)) {
177
183
  listener(thing, ...ids, ...extraArgsGetter(ids));
178
- } else if (isUndefined(path[index])) {
184
+ } else if (isNull(path[index])) {
179
185
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
180
186
  callWithIds(...ids, id2),
181
187
  );
@@ -4,10 +4,16 @@ const STRING = getTypeOf(EMPTY_STRING);
4
4
  const MESSAGE = 'message';
5
5
  const strStartsWith = (str, prefix) => str.startsWith(prefix);
6
6
 
7
+ const getIfNotFunction =
8
+ (predicate = isNullish) =>
9
+ (value, then, otherwise) =>
10
+ predicate(value) ? otherwise?.() : then(value);
7
11
  const isInstanceOf = (thing, cls) => thing instanceof cls;
8
- const isUndefined = (thing) => thing == void 0;
9
- const ifNotUndefined = (value, then, otherwise) =>
10
- isUndefined(value) ? otherwise?.() : then(value);
12
+ const isNullish = (thing) => thing == null;
13
+ const isUndefined = (thing) => thing === void 0;
14
+ const isNull = (thing) => thing === null;
15
+ const ifNotNullish = getIfNotFunction(isNullish);
16
+ const ifNotUndefined = getIfNotFunction(isUndefined);
11
17
  const isString = (thing) => getTypeOf(thing) == STRING;
12
18
  const isArray = (thing) => Array.isArray(thing);
13
19
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -33,12 +39,12 @@ const arrayShift = (array) => array.shift();
33
39
  const object = Object;
34
40
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
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,
@@ -64,7 +70,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
64
70
  const mapNew = (entries) => new Map(entries);
65
71
  const mapGet = (map, key) => map?.get(key);
66
72
  const mapSet = (map, key, value) =>
67
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
73
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
68
74
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
69
75
  if (!collHas(map, key)) {
70
76
  mapSet(map, key, getDefaultValue());
@@ -175,7 +181,7 @@ const getListenerFunctions = (getThing) => {
175
181
  const index = size(ids);
176
182
  if (index == size(path)) {
177
183
  listener(thing, ...ids, ...extraArgsGetter(ids));
178
- } else if (isUndefined(path[index])) {
184
+ } else if (isNull(path[index])) {
179
185
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
180
186
  callWithIds(...ids, id2),
181
187
  );
@@ -6,10 +6,14 @@ const V = 'v';
6
6
  const strStartsWith = (str, prefix) => str.startsWith(prefix);
7
7
 
8
8
  const promise = Promise;
9
+ const getIfNotFunction =
10
+ (predicate = isNullish) =>
11
+ (value, then, otherwise) =>
12
+ predicate(value) ? otherwise?.() : then(value);
9
13
  const isInstanceOf = (thing, cls) => thing instanceof cls;
10
- const isUndefined = (thing) => thing == void 0;
11
- const ifNotUndefined = (value, then, otherwise) =>
12
- isUndefined(value) ? otherwise?.() : then(value);
14
+ const isNullish = (thing) => thing == null;
15
+ const isUndefined = (thing) => thing === void 0;
16
+ const ifNotUndefined = getIfNotFunction(isUndefined);
13
17
  const isString = (thing) => getTypeOf(thing) == STRING;
14
18
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
15
19
  const size = (arrayOrString) => arrayOrString.length;
@@ -6,10 +6,14 @@ const V = 'v';
6
6
  const strStartsWith = (str, prefix) => str.startsWith(prefix);
7
7
 
8
8
  const promise = Promise;
9
+ const getIfNotFunction =
10
+ (predicate = isNullish) =>
11
+ (value, then, otherwise) =>
12
+ predicate(value) ? otherwise?.() : then(value);
9
13
  const isInstanceOf = (thing, cls) => thing instanceof cls;
10
- const isUndefined = (thing) => thing == void 0;
11
- const ifNotUndefined = (value, then, otherwise) =>
12
- isUndefined(value) ? otherwise?.() : then(value);
14
+ const isNullish = (thing) => thing == null;
15
+ const isUndefined = (thing) => thing === void 0;
16
+ const ifNotUndefined = getIfNotFunction(isUndefined);
13
17
  const isString = (thing) => getTypeOf(thing) == STRING;
14
18
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
15
19
  const size = (arrayOrString) => arrayOrString.length;
@@ -13,10 +13,16 @@ 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 GLOBAL = globalThis;
17
- const isUndefined = (thing) => thing == void 0;
18
- const ifNotUndefined = (value, then, otherwise) =>
19
- isUndefined(value) ? otherwise?.() : then(value);
21
+ const isNullish = (thing) => thing == null;
22
+ const isUndefined = (thing) => thing === void 0;
23
+ const isNull = (thing) => thing === null;
24
+ const ifNotNullish = getIfNotFunction(isNullish);
25
+ const ifNotUndefined = getIfNotFunction(isUndefined);
20
26
  const isString = (thing) => getTypeOf(thing) == STRING;
21
27
  const isArray = (thing) => Array.isArray(thing);
22
28
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -57,12 +63,12 @@ const object = Object;
57
63
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
58
64
  const objEntries = object.entries;
59
65
  const isObject = (obj) =>
60
- !isUndefined(obj) &&
61
- ifNotUndefined(
66
+ !isNullish(obj) &&
67
+ ifNotNullish(
62
68
  getPrototypeOf(obj),
63
69
  (objPrototype) =>
64
70
  objPrototype == object.prototype ||
65
- isUndefined(getPrototypeOf(objPrototype)),
71
+ isNullish(getPrototypeOf(objPrototype)),
66
72
 
67
73
  /* istanbul ignore next */
68
74
  () => true,
@@ -109,7 +115,7 @@ const mapForEach = (map, cb) =>
109
115
  const mapMap = (coll, cb) =>
110
116
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
111
117
  const mapSet = (map, key, value) =>
112
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
118
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
113
119
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
114
120
  if (!collHas(map, key)) {
115
121
  mapSet(map, key, getDefaultValue());
@@ -237,7 +243,7 @@ const getDefaultedTabularConfigMap = (
237
243
  0,
238
244
  objSize(defaultObj),
239
245
  );
240
- if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
246
+ if (!isNull(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
241
247
  then(id, defaultedConfig[0]);
242
248
  mapSet(configMap, id, defaultedConfig);
243
249
  }
@@ -379,7 +385,7 @@ const getListenerFunctions = (getThing) => {
379
385
  const index = size(ids);
380
386
  if (index == size(path)) {
381
387
  listener(thing, ...ids, ...extraArgsGetter(ids));
382
- } else if (isUndefined(path[index])) {
388
+ } else if (isNull(path[index])) {
383
389
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
384
390
  callWithIds(...ids, id2),
385
391
  );
@@ -13,10 +13,16 @@ 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 GLOBAL = globalThis;
17
- const isUndefined = (thing) => thing == void 0;
18
- const ifNotUndefined = (value, then, otherwise) =>
19
- isUndefined(value) ? otherwise?.() : then(value);
21
+ const isNullish = (thing) => thing == null;
22
+ const isUndefined = (thing) => thing === void 0;
23
+ const isNull = (thing) => thing === null;
24
+ const ifNotNullish = getIfNotFunction(isNullish);
25
+ const ifNotUndefined = getIfNotFunction(isUndefined);
20
26
  const isString = (thing) => getTypeOf(thing) == STRING;
21
27
  const isArray = (thing) => Array.isArray(thing);
22
28
  const slice = (arrayOrString, start, end) => arrayOrString.slice(start, end);
@@ -57,12 +63,12 @@ const object = Object;
57
63
  const getPrototypeOf = (obj) => object.getPrototypeOf(obj);
58
64
  const objEntries = object.entries;
59
65
  const isObject = (obj) =>
60
- !isUndefined(obj) &&
61
- ifNotUndefined(
66
+ !isNullish(obj) &&
67
+ ifNotNullish(
62
68
  getPrototypeOf(obj),
63
69
  (objPrototype) =>
64
70
  objPrototype == object.prototype ||
65
- isUndefined(getPrototypeOf(objPrototype)),
71
+ isNullish(getPrototypeOf(objPrototype)),
66
72
 
67
73
  /* istanbul ignore next */
68
74
  () => true,
@@ -109,7 +115,7 @@ const mapForEach = (map, cb) =>
109
115
  const mapMap = (coll, cb) =>
110
116
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
111
117
  const mapSet = (map, key, value) =>
112
- isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
118
+ value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
113
119
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
114
120
  if (!collHas(map, key)) {
115
121
  mapSet(map, key, getDefaultValue());
@@ -237,7 +243,7 @@ const getDefaultedTabularConfigMap = (
237
243
  0,
238
244
  objSize(defaultObj),
239
245
  );
240
- if (!isUndefined(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
246
+ if (!isNull(defaultedConfig[0]) && !exclude(id, defaultedConfig[0])) {
241
247
  then(id, defaultedConfig[0]);
242
248
  mapSet(configMap, id, defaultedConfig);
243
249
  }
@@ -379,7 +385,7 @@ const getListenerFunctions = (getThing) => {
379
385
  const index = size(ids);
380
386
  if (index == size(path)) {
381
387
  listener(thing, ...ids, ...extraArgsGetter(ids));
382
- } else if (isUndefined(path[index])) {
388
+ } else if (isNull(path[index])) {
383
389
  arrayForEach(pathGetters[index]?.(...ids) ?? [], (id2) =>
384
390
  callWithIds(...ids, id2),
385
391
  );