tinybase 7.1.0-beta.3 → 7.1.0

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 (281) hide show
  1. package/@types/schematizers/schematizer-arktype/index.d.ts +114 -0
  2. package/@types/schematizers/schematizer-arktype/with-schemas/index.d.ts +8 -0
  3. package/@types/schematizers/schematizer-effect/index.d.ts +118 -0
  4. package/@types/schematizers/schematizer-effect/with-schemas/index.d.ts +8 -0
  5. package/@types/schematizers/schematizer-yup/index.d.ts +112 -0
  6. package/@types/schematizers/schematizer-yup/with-schemas/index.d.ts +7 -0
  7. package/checkpoints/index.js +2 -2
  8. package/checkpoints/with-schemas/index.js +2 -2
  9. package/index.js +6 -4
  10. package/indexes/index.js +2 -2
  11. package/indexes/with-schemas/index.js +2 -2
  12. package/mergeable-store/index.js +2 -2
  13. package/mergeable-store/with-schemas/index.js +2 -2
  14. package/metrics/index.js +6 -4
  15. package/metrics/with-schemas/index.js +6 -4
  16. package/min/checkpoints/index.js +1 -1
  17. package/min/checkpoints/index.js.gz +0 -0
  18. package/min/checkpoints/with-schemas/index.js +1 -1
  19. package/min/checkpoints/with-schemas/index.js.gz +0 -0
  20. package/min/index.js +1 -1
  21. package/min/index.js.gz +0 -0
  22. package/min/indexes/index.js +1 -1
  23. package/min/indexes/index.js.gz +0 -0
  24. package/min/indexes/with-schemas/index.js +1 -1
  25. package/min/indexes/with-schemas/index.js.gz +0 -0
  26. package/min/mergeable-store/index.js +1 -1
  27. package/min/mergeable-store/index.js.gz +0 -0
  28. package/min/mergeable-store/with-schemas/index.js +1 -1
  29. package/min/mergeable-store/with-schemas/index.js.gz +0 -0
  30. package/min/metrics/index.js +1 -1
  31. package/min/metrics/index.js.gz +0 -0
  32. package/min/metrics/with-schemas/index.js +1 -1
  33. package/min/metrics/with-schemas/index.js.gz +0 -0
  34. package/min/omni/index.js +1 -1
  35. package/min/omni/index.js.gz +0 -0
  36. package/min/omni/with-schemas/index.js +1 -1
  37. package/min/omni/with-schemas/index.js.gz +0 -0
  38. package/min/persisters/index.js +1 -1
  39. package/min/persisters/index.js.gz +0 -0
  40. package/min/persisters/persister-automerge/index.js +1 -1
  41. package/min/persisters/persister-automerge/index.js.gz +0 -0
  42. package/min/persisters/persister-automerge/with-schemas/index.js +1 -1
  43. package/min/persisters/persister-automerge/with-schemas/index.js.gz +0 -0
  44. package/min/persisters/persister-browser/index.js +1 -1
  45. package/min/persisters/persister-browser/index.js.gz +0 -0
  46. package/min/persisters/persister-browser/with-schemas/index.js +1 -1
  47. package/min/persisters/persister-browser/with-schemas/index.js.gz +0 -0
  48. package/min/persisters/persister-cr-sqlite-wasm/index.js +1 -1
  49. package/min/persisters/persister-cr-sqlite-wasm/index.js.gz +0 -0
  50. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +1 -1
  51. package/min/persisters/persister-cr-sqlite-wasm/with-schemas/index.js.gz +0 -0
  52. package/min/persisters/persister-durable-object-sql-storage/index.js +1 -1
  53. package/min/persisters/persister-durable-object-sql-storage/index.js.gz +0 -0
  54. package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js +1 -1
  55. package/min/persisters/persister-durable-object-sql-storage/with-schemas/index.js.gz +0 -0
  56. package/min/persisters/persister-durable-object-storage/index.js +1 -1
  57. package/min/persisters/persister-durable-object-storage/index.js.gz +0 -0
  58. package/min/persisters/persister-durable-object-storage/with-schemas/index.js +1 -1
  59. package/min/persisters/persister-durable-object-storage/with-schemas/index.js.gz +0 -0
  60. package/min/persisters/persister-electric-sql/index.js +1 -1
  61. package/min/persisters/persister-electric-sql/index.js.gz +0 -0
  62. package/min/persisters/persister-electric-sql/with-schemas/index.js +1 -1
  63. package/min/persisters/persister-electric-sql/with-schemas/index.js.gz +0 -0
  64. package/min/persisters/persister-expo-sqlite/index.js +1 -1
  65. package/min/persisters/persister-expo-sqlite/index.js.gz +0 -0
  66. package/min/persisters/persister-expo-sqlite/with-schemas/index.js +1 -1
  67. package/min/persisters/persister-expo-sqlite/with-schemas/index.js.gz +0 -0
  68. package/min/persisters/persister-file/index.js +1 -1
  69. package/min/persisters/persister-file/index.js.gz +0 -0
  70. package/min/persisters/persister-file/with-schemas/index.js +1 -1
  71. package/min/persisters/persister-file/with-schemas/index.js.gz +0 -0
  72. package/min/persisters/persister-indexed-db/index.js +1 -1
  73. package/min/persisters/persister-indexed-db/index.js.gz +0 -0
  74. package/min/persisters/persister-indexed-db/with-schemas/index.js +1 -1
  75. package/min/persisters/persister-indexed-db/with-schemas/index.js.gz +0 -0
  76. package/min/persisters/persister-libsql/index.js +1 -1
  77. package/min/persisters/persister-libsql/index.js.gz +0 -0
  78. package/min/persisters/persister-libsql/with-schemas/index.js +1 -1
  79. package/min/persisters/persister-libsql/with-schemas/index.js.gz +0 -0
  80. package/min/persisters/persister-partykit-client/index.js +1 -1
  81. package/min/persisters/persister-partykit-client/index.js.gz +0 -0
  82. package/min/persisters/persister-partykit-client/with-schemas/index.js +1 -1
  83. package/min/persisters/persister-partykit-client/with-schemas/index.js.gz +0 -0
  84. package/min/persisters/persister-pglite/index.js +1 -1
  85. package/min/persisters/persister-pglite/index.js.gz +0 -0
  86. package/min/persisters/persister-pglite/with-schemas/index.js +1 -1
  87. package/min/persisters/persister-pglite/with-schemas/index.js.gz +0 -0
  88. package/min/persisters/persister-postgres/index.js +1 -1
  89. package/min/persisters/persister-postgres/index.js.gz +0 -0
  90. package/min/persisters/persister-postgres/with-schemas/index.js +1 -1
  91. package/min/persisters/persister-postgres/with-schemas/index.js.gz +0 -0
  92. package/min/persisters/persister-powersync/index.js +1 -1
  93. package/min/persisters/persister-powersync/index.js.gz +0 -0
  94. package/min/persisters/persister-powersync/with-schemas/index.js +1 -1
  95. package/min/persisters/persister-powersync/with-schemas/index.js.gz +0 -0
  96. package/min/persisters/persister-react-native-mmkv/index.js +1 -1
  97. package/min/persisters/persister-react-native-mmkv/index.js.gz +0 -0
  98. package/min/persisters/persister-react-native-mmkv/with-schemas/index.js +1 -1
  99. package/min/persisters/persister-react-native-mmkv/with-schemas/index.js.gz +0 -0
  100. package/min/persisters/persister-react-native-sqlite/index.js +1 -1
  101. package/min/persisters/persister-react-native-sqlite/index.js.gz +0 -0
  102. package/min/persisters/persister-react-native-sqlite/with-schemas/index.js +1 -1
  103. package/min/persisters/persister-react-native-sqlite/with-schemas/index.js.gz +0 -0
  104. package/min/persisters/persister-remote/index.js +1 -1
  105. package/min/persisters/persister-remote/index.js.gz +0 -0
  106. package/min/persisters/persister-remote/with-schemas/index.js +1 -1
  107. package/min/persisters/persister-remote/with-schemas/index.js.gz +0 -0
  108. package/min/persisters/persister-sqlite-bun/index.js +1 -1
  109. package/min/persisters/persister-sqlite-bun/index.js.gz +0 -0
  110. package/min/persisters/persister-sqlite-bun/with-schemas/index.js +1 -1
  111. package/min/persisters/persister-sqlite-bun/with-schemas/index.js.gz +0 -0
  112. package/min/persisters/persister-sqlite-wasm/index.js +1 -1
  113. package/min/persisters/persister-sqlite-wasm/index.js.gz +0 -0
  114. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js +1 -1
  115. package/min/persisters/persister-sqlite-wasm/with-schemas/index.js.gz +0 -0
  116. package/min/persisters/persister-sqlite3/index.js +1 -1
  117. package/min/persisters/persister-sqlite3/index.js.gz +0 -0
  118. package/min/persisters/persister-sqlite3/with-schemas/index.js +1 -1
  119. package/min/persisters/persister-sqlite3/with-schemas/index.js.gz +0 -0
  120. package/min/persisters/persister-yjs/index.js +1 -1
  121. package/min/persisters/persister-yjs/index.js.gz +0 -0
  122. package/min/persisters/persister-yjs/with-schemas/index.js +1 -1
  123. package/min/persisters/persister-yjs/with-schemas/index.js.gz +0 -0
  124. package/min/persisters/with-schemas/index.js +1 -1
  125. package/min/persisters/with-schemas/index.js.gz +0 -0
  126. package/min/queries/index.js +1 -1
  127. package/min/queries/index.js.gz +0 -0
  128. package/min/queries/with-schemas/index.js +1 -1
  129. package/min/queries/with-schemas/index.js.gz +0 -0
  130. package/min/relationships/index.js +1 -1
  131. package/min/relationships/index.js.gz +0 -0
  132. package/min/relationships/with-schemas/index.js +1 -1
  133. package/min/relationships/with-schemas/index.js.gz +0 -0
  134. package/min/schematizers/schematizer-arktype/index.js +1 -0
  135. package/min/schematizers/schematizer-arktype/index.js.gz +0 -0
  136. package/min/schematizers/schematizer-arktype/with-schemas/index.js +1 -0
  137. package/min/schematizers/schematizer-arktype/with-schemas/index.js.gz +0 -0
  138. package/min/schematizers/schematizer-effect/index.js +1 -0
  139. package/min/schematizers/schematizer-effect/index.js.gz +0 -0
  140. package/min/schematizers/schematizer-effect/with-schemas/index.js +1 -0
  141. package/min/schematizers/schematizer-effect/with-schemas/index.js.gz +0 -0
  142. package/min/schematizers/schematizer-typebox/index.js +1 -1
  143. package/min/schematizers/schematizer-typebox/index.js.gz +0 -0
  144. package/min/schematizers/schematizer-typebox/with-schemas/index.js +1 -1
  145. package/min/schematizers/schematizer-typebox/with-schemas/index.js.gz +0 -0
  146. package/min/schematizers/schematizer-valibot/index.js +1 -1
  147. package/min/schematizers/schematizer-valibot/index.js.gz +0 -0
  148. package/min/schematizers/schematizer-valibot/with-schemas/index.js +1 -1
  149. package/min/schematizers/schematizer-valibot/with-schemas/index.js.gz +0 -0
  150. package/min/schematizers/schematizer-yup/index.js +1 -0
  151. package/min/schematizers/schematizer-yup/index.js.gz +0 -0
  152. package/min/schematizers/schematizer-yup/with-schemas/index.js +1 -0
  153. package/min/schematizers/schematizer-yup/with-schemas/index.js.gz +0 -0
  154. package/min/store/index.js +1 -1
  155. package/min/store/index.js.gz +0 -0
  156. package/min/store/with-schemas/index.js +1 -1
  157. package/min/store/with-schemas/index.js.gz +0 -0
  158. package/min/synchronizers/index.js +1 -1
  159. package/min/synchronizers/index.js.gz +0 -0
  160. package/min/synchronizers/synchronizer-broadcast-channel/index.js +1 -1
  161. package/min/synchronizers/synchronizer-broadcast-channel/index.js.gz +0 -0
  162. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +1 -1
  163. package/min/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js.gz +0 -0
  164. package/min/synchronizers/synchronizer-local/index.js +1 -1
  165. package/min/synchronizers/synchronizer-local/index.js.gz +0 -0
  166. package/min/synchronizers/synchronizer-local/with-schemas/index.js +1 -1
  167. package/min/synchronizers/synchronizer-local/with-schemas/index.js.gz +0 -0
  168. package/min/synchronizers/synchronizer-ws-client/index.js +1 -1
  169. package/min/synchronizers/synchronizer-ws-client/index.js.gz +0 -0
  170. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js +1 -1
  171. package/min/synchronizers/synchronizer-ws-client/with-schemas/index.js.gz +0 -0
  172. package/min/synchronizers/synchronizer-ws-server/index.js +1 -1
  173. package/min/synchronizers/synchronizer-ws-server/index.js.gz +0 -0
  174. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js +1 -1
  175. package/min/synchronizers/synchronizer-ws-server/with-schemas/index.js.gz +0 -0
  176. package/min/synchronizers/synchronizer-ws-server-durable-object/index.js +1 -1
  177. package/min/synchronizers/synchronizer-ws-server-durable-object/index.js.gz +0 -0
  178. package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +1 -1
  179. package/min/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js.gz +0 -0
  180. package/min/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
  181. package/min/synchronizers/synchronizer-ws-server-simple/index.js.gz +0 -0
  182. package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
  183. package/min/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js.gz +0 -0
  184. package/min/synchronizers/with-schemas/index.js +1 -1
  185. package/min/synchronizers/with-schemas/index.js.gz +0 -0
  186. package/min/ui-react-dom/index.js +1 -1
  187. package/min/ui-react-dom/index.js.gz +0 -0
  188. package/min/ui-react-dom/with-schemas/index.js +1 -1
  189. package/min/ui-react-dom/with-schemas/index.js.gz +0 -0
  190. package/min/ui-react-inspector/index.js +1 -1
  191. package/min/ui-react-inspector/index.js.gz +0 -0
  192. package/min/ui-react-inspector/with-schemas/index.js +1 -1
  193. package/min/ui-react-inspector/with-schemas/index.js.gz +0 -0
  194. package/min/with-schemas/index.js +1 -1
  195. package/min/with-schemas/index.js.gz +0 -0
  196. package/omni/index.js +19 -16
  197. package/omni/with-schemas/index.js +19 -16
  198. package/package.json +118 -2
  199. package/persisters/index.js +6 -4
  200. package/persisters/persister-automerge/index.js +2 -2
  201. package/persisters/persister-automerge/with-schemas/index.js +2 -2
  202. package/persisters/persister-browser/index.js +3 -3
  203. package/persisters/persister-browser/with-schemas/index.js +3 -3
  204. package/persisters/persister-cr-sqlite-wasm/index.js +6 -4
  205. package/persisters/persister-cr-sqlite-wasm/with-schemas/index.js +6 -4
  206. package/persisters/persister-durable-object-sql-storage/index.js +6 -4
  207. package/persisters/persister-durable-object-sql-storage/with-schemas/index.js +6 -4
  208. package/persisters/persister-durable-object-storage/index.js +3 -3
  209. package/persisters/persister-durable-object-storage/with-schemas/index.js +3 -3
  210. package/persisters/persister-electric-sql/index.js +6 -4
  211. package/persisters/persister-electric-sql/with-schemas/index.js +6 -4
  212. package/persisters/persister-expo-sqlite/index.js +6 -4
  213. package/persisters/persister-expo-sqlite/with-schemas/index.js +6 -4
  214. package/persisters/persister-file/index.js +3 -3
  215. package/persisters/persister-file/with-schemas/index.js +3 -3
  216. package/persisters/persister-indexed-db/index.js +2 -2
  217. package/persisters/persister-indexed-db/with-schemas/index.js +2 -2
  218. package/persisters/persister-libsql/index.js +6 -4
  219. package/persisters/persister-libsql/with-schemas/index.js +6 -4
  220. package/persisters/persister-partykit-client/index.js +2 -2
  221. package/persisters/persister-partykit-client/with-schemas/index.js +2 -2
  222. package/persisters/persister-pglite/index.js +3 -3
  223. package/persisters/persister-pglite/with-schemas/index.js +3 -3
  224. package/persisters/persister-postgres/index.js +3 -3
  225. package/persisters/persister-postgres/with-schemas/index.js +3 -3
  226. package/persisters/persister-powersync/index.js +6 -4
  227. package/persisters/persister-powersync/with-schemas/index.js +6 -4
  228. package/persisters/persister-react-native-mmkv/index.js +4 -4
  229. package/persisters/persister-react-native-mmkv/with-schemas/index.js +4 -4
  230. package/persisters/persister-react-native-sqlite/index.js +6 -4
  231. package/persisters/persister-react-native-sqlite/with-schemas/index.js +6 -4
  232. package/persisters/persister-remote/index.js +2 -2
  233. package/persisters/persister-remote/with-schemas/index.js +2 -2
  234. package/persisters/persister-sqlite-bun/index.js +6 -4
  235. package/persisters/persister-sqlite-bun/with-schemas/index.js +6 -4
  236. package/persisters/persister-sqlite-wasm/index.js +6 -4
  237. package/persisters/persister-sqlite-wasm/with-schemas/index.js +6 -4
  238. package/persisters/persister-sqlite3/index.js +6 -4
  239. package/persisters/persister-sqlite3/with-schemas/index.js +6 -4
  240. package/persisters/persister-yjs/index.js +2 -2
  241. package/persisters/persister-yjs/with-schemas/index.js +2 -2
  242. package/persisters/with-schemas/index.js +6 -4
  243. package/queries/index.js +1 -1
  244. package/queries/with-schemas/index.js +1 -1
  245. package/readme.md +3 -3
  246. package/relationships/index.js +2 -2
  247. package/relationships/with-schemas/index.js +2 -2
  248. package/releases.md +1 -1
  249. package/schematizers/schematizer-arktype/index.js +163 -0
  250. package/schematizers/schematizer-arktype/with-schemas/index.js +163 -0
  251. package/schematizers/schematizer-effect/index.js +137 -0
  252. package/schematizers/schematizer-effect/with-schemas/index.js +137 -0
  253. package/schematizers/schematizer-typebox/index.js +3 -2
  254. package/schematizers/schematizer-typebox/with-schemas/index.js +3 -2
  255. package/schematizers/schematizer-valibot/index.js +4 -4
  256. package/schematizers/schematizer-valibot/with-schemas/index.js +4 -4
  257. package/schematizers/schematizer-yup/index.js +100 -0
  258. package/schematizers/schematizer-yup/with-schemas/index.js +100 -0
  259. package/schematizers/schematizer-zod/index.js +2 -2
  260. package/schematizers/schematizer-zod/with-schemas/index.js +2 -2
  261. package/store/index.js +2 -2
  262. package/store/with-schemas/index.js +2 -2
  263. package/synchronizers/index.js +2 -2
  264. package/synchronizers/synchronizer-broadcast-channel/index.js +2 -2
  265. package/synchronizers/synchronizer-broadcast-channel/with-schemas/index.js +2 -2
  266. package/synchronizers/synchronizer-local/index.js +2 -2
  267. package/synchronizers/synchronizer-local/with-schemas/index.js +2 -2
  268. package/synchronizers/synchronizer-ws-client/index.js +3 -3
  269. package/synchronizers/synchronizer-ws-client/with-schemas/index.js +3 -3
  270. package/synchronizers/synchronizer-ws-server/index.js +3 -3
  271. package/synchronizers/synchronizer-ws-server/with-schemas/index.js +3 -3
  272. package/synchronizers/synchronizer-ws-server-durable-object/index.js +3 -3
  273. package/synchronizers/synchronizer-ws-server-durable-object/with-schemas/index.js +3 -3
  274. package/synchronizers/synchronizer-ws-server-simple/index.js +1 -1
  275. package/synchronizers/synchronizer-ws-server-simple/with-schemas/index.js +1 -1
  276. package/synchronizers/with-schemas/index.js +2 -2
  277. package/ui-react-dom/index.js +11 -8
  278. package/ui-react-dom/with-schemas/index.js +11 -8
  279. package/ui-react-inspector/index.js +14 -11
  280. package/ui-react-inspector/with-schemas/index.js +14 -11
  281. package/with-schemas/index.js +6 -4
@@ -74,7 +74,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
74
74
  const mapNew = (entries) => new Map(entries);
75
75
  const mapGet = (map, key) => map?.get(key);
76
76
  const mapSet = (map, key, value) =>
77
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
77
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
78
78
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
79
79
  if (!collHas(map, key)) {
80
80
  mapSet(map, key, getDefaultValue());
@@ -132,7 +132,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
132
132
  const deep = (node, p) =>
133
133
  p == size(path)
134
134
  ? arrayPush(leaves, node)
135
- : path[p] === null
135
+ : isNull(path[p])
136
136
  ? collForEach(node, (node2) => deep(node2, p + 1))
137
137
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
138
138
  deep(deepIdSet, 0);
@@ -74,7 +74,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
74
74
  const mapNew = (entries) => new Map(entries);
75
75
  const mapGet = (map, key) => map?.get(key);
76
76
  const mapSet = (map, key, value) =>
77
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
77
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
78
78
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
79
79
  if (!collHas(map, key)) {
80
80
  mapSet(map, key, getDefaultValue());
@@ -132,7 +132,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
132
132
  const deep = (node, p) =>
133
133
  p == size(path)
134
134
  ? arrayPush(leaves, node)
135
- : path[p] === null
135
+ : isNull(path[p])
136
136
  ? collForEach(node, (node2) => deep(node2, p + 1))
137
137
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
138
138
  deep(deepIdSet, 0);
@@ -51,7 +51,7 @@ const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
51
51
  const jsonString = JSON.stringify;
52
52
  const jsonParse = JSON.parse;
53
53
  const jsonStringWithUndefined = (obj) =>
54
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
54
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
55
55
  const jsonParseWithUndefined = (str) =>
56
56
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
57
57
 
@@ -64,7 +64,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
64
64
  const mapNew = (entries) => new Map(entries);
65
65
  const mapGet = (map, key) => map?.get(key);
66
66
  const mapSet = (map, key, value) =>
67
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
67
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
68
68
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
69
69
  if (!collHas(map, key)) {
70
70
  mapSet(map, key, getDefaultValue());
@@ -122,7 +122,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
122
122
  const deep = (node, p) =>
123
123
  p == size(path)
124
124
  ? arrayPush(leaves, node)
125
- : path[p] === null
125
+ : isNull(path[p])
126
126
  ? collForEach(node, (node2) => deep(node2, p + 1))
127
127
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
128
128
  deep(deepIdSet, 0);
@@ -51,7 +51,7 @@ const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
51
51
  const jsonString = JSON.stringify;
52
52
  const jsonParse = JSON.parse;
53
53
  const jsonStringWithUndefined = (obj) =>
54
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
54
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
55
55
  const jsonParseWithUndefined = (str) =>
56
56
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
57
57
 
@@ -64,7 +64,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
64
64
  const mapNew = (entries) => new Map(entries);
65
65
  const mapGet = (map, key) => map?.get(key);
66
66
  const mapSet = (map, key, value) =>
67
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
67
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
68
68
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
69
69
  if (!collHas(map, key)) {
70
70
  mapSet(map, key, getDefaultValue());
@@ -122,7 +122,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
122
122
  const deep = (node, p) =>
123
123
  p == size(path)
124
124
  ? arrayPush(leaves, node)
125
- : path[p] === null
125
+ : isNull(path[p])
126
126
  ? collForEach(node, (node2) => deep(node2, p + 1))
127
127
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
128
128
  deep(deepIdSet, 0);
@@ -22,6 +22,8 @@ const stopInterval = clearInterval;
22
22
  const isNullish = (thing) => thing == null;
23
23
  const isUndefined = (thing) => thing === void 0;
24
24
  const isNull = (thing) => thing === null;
25
+ const isTrue = (thing) => thing === true;
26
+ const isFalse = (thing) => thing === false;
25
27
  const ifNotNullish = getIfNotFunction(isNullish);
26
28
  const ifNotUndefined = getIfNotFunction(isUndefined);
27
29
  const isString = (thing) => getTypeOf(thing) == STRING;
@@ -140,7 +142,7 @@ const mapForEach = (map, cb) =>
140
142
  const mapMap = (coll, cb) =>
141
143
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
142
144
  const mapSet = (map, key, value) =>
143
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
145
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
144
146
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
145
147
  if (!collHas(map, key)) {
146
148
  mapSet(map, key, getDefaultValue());
@@ -300,7 +302,7 @@ const getConfigStructures = (configOrStoreTableName) => {
300
302
  const jsonString = JSON.stringify;
301
303
  const jsonParse = JSON.parse;
302
304
  const jsonStringWithUndefined = (obj) =>
303
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
305
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
304
306
  const jsonParseWithUndefined = (str) =>
305
307
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
306
308
 
@@ -323,7 +325,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
323
325
  const deep = (node, p) =>
324
326
  p == size(path)
325
327
  ? arrayPush(leaves, node)
326
- : path[p] === null
328
+ : isNull(path[p])
327
329
  ? collForEach(node, (node2) => deep(node2, p + 1))
328
330
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
329
331
  deep(deepIdSet, 0);
@@ -1171,7 +1173,7 @@ const createCustomSqlitePersister = (
1171
1173
  EMPTY_STRING,
1172
1174
  upsert,
1173
1175
  (cellOrValue) =>
1174
- cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1176
+ isTrue(cellOrValue) ? 1 : isFalse(cellOrValue) ? 0 : cellOrValue,
1175
1177
  void 0,
1176
1178
  );
1177
1179
  };
@@ -22,6 +22,8 @@ const stopInterval = clearInterval;
22
22
  const isNullish = (thing) => thing == null;
23
23
  const isUndefined = (thing) => thing === void 0;
24
24
  const isNull = (thing) => thing === null;
25
+ const isTrue = (thing) => thing === true;
26
+ const isFalse = (thing) => thing === false;
25
27
  const ifNotNullish = getIfNotFunction(isNullish);
26
28
  const ifNotUndefined = getIfNotFunction(isUndefined);
27
29
  const isString = (thing) => getTypeOf(thing) == STRING;
@@ -140,7 +142,7 @@ const mapForEach = (map, cb) =>
140
142
  const mapMap = (coll, cb) =>
141
143
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
142
144
  const mapSet = (map, key, value) =>
143
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
145
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
144
146
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
145
147
  if (!collHas(map, key)) {
146
148
  mapSet(map, key, getDefaultValue());
@@ -300,7 +302,7 @@ const getConfigStructures = (configOrStoreTableName) => {
300
302
  const jsonString = JSON.stringify;
301
303
  const jsonParse = JSON.parse;
302
304
  const jsonStringWithUndefined = (obj) =>
303
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
305
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
304
306
  const jsonParseWithUndefined = (str) =>
305
307
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
306
308
 
@@ -323,7 +325,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
323
325
  const deep = (node, p) =>
324
326
  p == size(path)
325
327
  ? arrayPush(leaves, node)
326
- : path[p] === null
328
+ : isNull(path[p])
327
329
  ? collForEach(node, (node2) => deep(node2, p + 1))
328
330
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
329
331
  deep(deepIdSet, 0);
@@ -1171,7 +1173,7 @@ const createCustomSqlitePersister = (
1171
1173
  EMPTY_STRING,
1172
1174
  upsert,
1173
1175
  (cellOrValue) =>
1174
- cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1176
+ isTrue(cellOrValue) ? 1 : isFalse(cellOrValue) ? 0 : cellOrValue,
1175
1177
  void 0,
1176
1178
  );
1177
1179
  };
@@ -23,6 +23,8 @@ const stopInterval = clearInterval;
23
23
  const isNullish = (thing) => thing == null;
24
24
  const isUndefined = (thing) => thing === void 0;
25
25
  const isNull = (thing) => thing === null;
26
+ const isTrue = (thing) => thing === true;
27
+ const isFalse = (thing) => thing === false;
26
28
  const ifNotNullish = getIfNotFunction(isNullish);
27
29
  const ifNotUndefined = getIfNotFunction(isUndefined);
28
30
  const isString = (thing) => getTypeOf(thing) == STRING;
@@ -95,7 +97,7 @@ const objEnsure = (obj, id, getDefaultValue) => {
95
97
  const jsonString = JSON.stringify;
96
98
  const jsonParse = JSON.parse;
97
99
  const jsonStringWithUndefined = (obj) =>
98
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
100
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
99
101
  const jsonParseWithUndefined = (str) =>
100
102
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
101
103
 
@@ -114,7 +116,7 @@ const mapForEach = (map, cb) =>
114
116
  const mapMap = (coll, cb) =>
115
117
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
116
118
  const mapSet = (map, key, value) =>
117
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
119
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
118
120
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
119
121
  if (!collHas(map, key)) {
120
122
  mapSet(map, key, getDefaultValue());
@@ -180,7 +182,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
180
182
  const deep = (node, p) =>
181
183
  p == size(path)
182
184
  ? arrayPush(leaves, node)
183
- : path[p] === null
185
+ : isNull(path[p])
184
186
  ? collForEach(node, (node2) => deep(node2, p + 1))
185
187
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
186
188
  deep(deepIdSet, 0);
@@ -1188,7 +1190,7 @@ const createCustomSqlitePersister = (
1188
1190
  EMPTY_STRING,
1189
1191
  upsert,
1190
1192
  (cellOrValue) =>
1191
- cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1193
+ isTrue(cellOrValue) ? 1 : isFalse(cellOrValue) ? 0 : cellOrValue,
1192
1194
  void 0,
1193
1195
  );
1194
1196
  };
@@ -23,6 +23,8 @@ const stopInterval = clearInterval;
23
23
  const isNullish = (thing) => thing == null;
24
24
  const isUndefined = (thing) => thing === void 0;
25
25
  const isNull = (thing) => thing === null;
26
+ const isTrue = (thing) => thing === true;
27
+ const isFalse = (thing) => thing === false;
26
28
  const ifNotNullish = getIfNotFunction(isNullish);
27
29
  const ifNotUndefined = getIfNotFunction(isUndefined);
28
30
  const isString = (thing) => getTypeOf(thing) == STRING;
@@ -95,7 +97,7 @@ const objEnsure = (obj, id, getDefaultValue) => {
95
97
  const jsonString = JSON.stringify;
96
98
  const jsonParse = JSON.parse;
97
99
  const jsonStringWithUndefined = (obj) =>
98
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
100
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
99
101
  const jsonParseWithUndefined = (str) =>
100
102
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
101
103
 
@@ -114,7 +116,7 @@ const mapForEach = (map, cb) =>
114
116
  const mapMap = (coll, cb) =>
115
117
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
116
118
  const mapSet = (map, key, value) =>
117
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
119
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
118
120
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
119
121
  if (!collHas(map, key)) {
120
122
  mapSet(map, key, getDefaultValue());
@@ -180,7 +182,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
180
182
  const deep = (node, p) =>
181
183
  p == size(path)
182
184
  ? arrayPush(leaves, node)
183
- : path[p] === null
185
+ : isNull(path[p])
184
186
  ? collForEach(node, (node2) => deep(node2, p + 1))
185
187
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
186
188
  deep(deepIdSet, 0);
@@ -1188,7 +1190,7 @@ const createCustomSqlitePersister = (
1188
1190
  EMPTY_STRING,
1189
1191
  upsert,
1190
1192
  (cellOrValue) =>
1191
- cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1193
+ isTrue(cellOrValue) ? 1 : isFalse(cellOrValue) ? 0 : cellOrValue,
1192
1194
  void 0,
1193
1195
  );
1194
1196
  };
@@ -63,7 +63,7 @@ const objEnsure = (obj, id, getDefaultValue) => {
63
63
 
64
64
  const jsonString = JSON.stringify;
65
65
  const jsonStringWithUndefined = (obj) =>
66
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
66
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
67
67
 
68
68
  const collSize = (coll) => coll?.size ?? 0;
69
69
  const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
@@ -74,7 +74,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
74
74
  const mapNew = (entries) => new Map(entries);
75
75
  const mapGet = (map, key) => map?.get(key);
76
76
  const mapSet = (map, key, value) =>
77
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
77
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
78
78
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
79
79
  if (!collHas(map, key)) {
80
80
  mapSet(map, key, getDefaultValue());
@@ -152,7 +152,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
152
152
  const deep = (node, p) =>
153
153
  p == size(path)
154
154
  ? arrayPush(leaves, node)
155
- : path[p] === null
155
+ : isNull(path[p])
156
156
  ? collForEach(node, (node2) => deep(node2, p + 1))
157
157
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
158
158
  deep(deepIdSet, 0);
@@ -63,7 +63,7 @@ const objEnsure = (obj, id, getDefaultValue) => {
63
63
 
64
64
  const jsonString = JSON.stringify;
65
65
  const jsonStringWithUndefined = (obj) =>
66
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
66
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
67
67
 
68
68
  const collSize = (coll) => coll?.size ?? 0;
69
69
  const collHas = (coll, keyOrValue) => coll?.has(keyOrValue) ?? false;
@@ -74,7 +74,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
74
74
  const mapNew = (entries) => new Map(entries);
75
75
  const mapGet = (map, key) => map?.get(key);
76
76
  const mapSet = (map, key, value) =>
77
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
77
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
78
78
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
79
79
  if (!collHas(map, key)) {
80
80
  mapSet(map, key, getDefaultValue());
@@ -152,7 +152,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
152
152
  const deep = (node, p) =>
153
153
  p == size(path)
154
154
  ? arrayPush(leaves, node)
155
- : path[p] === null
155
+ : isNull(path[p])
156
156
  ? collForEach(node, (node2) => deep(node2, p + 1))
157
157
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
158
158
  deep(deepIdSet, 0);
@@ -22,6 +22,8 @@ const stopInterval = clearInterval;
22
22
  const isNullish = (thing) => thing == null;
23
23
  const isUndefined = (thing) => thing === void 0;
24
24
  const isNull = (thing) => thing === null;
25
+ const isTrue = (thing) => thing === true;
26
+ const isFalse = (thing) => thing === false;
25
27
  const ifNotNullish = getIfNotFunction(isNullish);
26
28
  const ifNotUndefined = getIfNotFunction(isUndefined);
27
29
  const isString = (thing) => getTypeOf(thing) == STRING;
@@ -140,7 +142,7 @@ const mapForEach = (map, cb) =>
140
142
  const mapMap = (coll, cb) =>
141
143
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
142
144
  const mapSet = (map, key, value) =>
143
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
145
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
144
146
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
145
147
  if (!collHas(map, key)) {
146
148
  mapSet(map, key, getDefaultValue());
@@ -300,7 +302,7 @@ const getConfigStructures = (configOrStoreTableName) => {
300
302
  const jsonString = JSON.stringify;
301
303
  const jsonParse = JSON.parse;
302
304
  const jsonStringWithUndefined = (obj) =>
303
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
305
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
304
306
  const jsonParseWithUndefined = (str) =>
305
307
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
306
308
 
@@ -323,7 +325,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
323
325
  const deep = (node, p) =>
324
326
  p == size(path)
325
327
  ? arrayPush(leaves, node)
326
- : path[p] === null
328
+ : isNull(path[p])
327
329
  ? collForEach(node, (node2) => deep(node2, p + 1))
328
330
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
329
331
  deep(deepIdSet, 0);
@@ -1171,7 +1173,7 @@ const createCustomSqlitePersister = (
1171
1173
  EMPTY_STRING,
1172
1174
  upsert,
1173
1175
  (cellOrValue) =>
1174
- cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1176
+ isTrue(cellOrValue) ? 1 : isFalse(cellOrValue) ? 0 : cellOrValue,
1175
1177
  void 0,
1176
1178
  );
1177
1179
  };
@@ -22,6 +22,8 @@ const stopInterval = clearInterval;
22
22
  const isNullish = (thing) => thing == null;
23
23
  const isUndefined = (thing) => thing === void 0;
24
24
  const isNull = (thing) => thing === null;
25
+ const isTrue = (thing) => thing === true;
26
+ const isFalse = (thing) => thing === false;
25
27
  const ifNotNullish = getIfNotFunction(isNullish);
26
28
  const ifNotUndefined = getIfNotFunction(isUndefined);
27
29
  const isString = (thing) => getTypeOf(thing) == STRING;
@@ -140,7 +142,7 @@ const mapForEach = (map, cb) =>
140
142
  const mapMap = (coll, cb) =>
141
143
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
142
144
  const mapSet = (map, key, value) =>
143
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
145
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
144
146
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
145
147
  if (!collHas(map, key)) {
146
148
  mapSet(map, key, getDefaultValue());
@@ -300,7 +302,7 @@ const getConfigStructures = (configOrStoreTableName) => {
300
302
  const jsonString = JSON.stringify;
301
303
  const jsonParse = JSON.parse;
302
304
  const jsonStringWithUndefined = (obj) =>
303
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
305
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
304
306
  const jsonParseWithUndefined = (str) =>
305
307
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
306
308
 
@@ -323,7 +325,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
323
325
  const deep = (node, p) =>
324
326
  p == size(path)
325
327
  ? arrayPush(leaves, node)
326
- : path[p] === null
328
+ : isNull(path[p])
327
329
  ? collForEach(node, (node2) => deep(node2, p + 1))
328
330
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
329
331
  deep(deepIdSet, 0);
@@ -1171,7 +1173,7 @@ const createCustomSqlitePersister = (
1171
1173
  EMPTY_STRING,
1172
1174
  upsert,
1173
1175
  (cellOrValue) =>
1174
- cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1176
+ isTrue(cellOrValue) ? 1 : isFalse(cellOrValue) ? 0 : cellOrValue,
1175
1177
  void 0,
1176
1178
  );
1177
1179
  };
@@ -24,6 +24,8 @@ const stopInterval = clearInterval;
24
24
  const isNullish = (thing) => thing == null;
25
25
  const isUndefined = (thing) => thing === void 0;
26
26
  const isNull = (thing) => thing === null;
27
+ const isTrue = (thing) => thing === true;
28
+ const isFalse = (thing) => thing === false;
27
29
  const ifNotNullish = getIfNotFunction(isNullish);
28
30
  const ifNotUndefined = getIfNotFunction(isUndefined);
29
31
  const isString = (thing) => getTypeOf(thing) == STRING;
@@ -142,7 +144,7 @@ const mapForEach = (map, cb) =>
142
144
  const mapMap = (coll, cb) =>
143
145
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
144
146
  const mapSet = (map, key, value) =>
145
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
147
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
146
148
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
147
149
  if (!collHas(map, key)) {
148
150
  mapSet(map, key, getDefaultValue());
@@ -302,7 +304,7 @@ const getConfigStructures = (configOrStoreTableName) => {
302
304
  const jsonString = JSON.stringify;
303
305
  const jsonParse = JSON.parse;
304
306
  const jsonStringWithUndefined = (obj) =>
305
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
307
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
306
308
  const jsonParseWithUndefined = (str) =>
307
309
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
308
310
 
@@ -325,7 +327,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
325
327
  const deep = (node, p) =>
326
328
  p == size(path)
327
329
  ? arrayPush(leaves, node)
328
- : path[p] === null
330
+ : isNull(path[p])
329
331
  ? collForEach(node, (node2) => deep(node2, p + 1))
330
332
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
331
333
  deep(deepIdSet, 0);
@@ -1173,7 +1175,7 @@ const createCustomSqlitePersister = (
1173
1175
  EMPTY_STRING,
1174
1176
  upsert,
1175
1177
  (cellOrValue) =>
1176
- cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1178
+ isTrue(cellOrValue) ? 1 : isFalse(cellOrValue) ? 0 : cellOrValue,
1177
1179
  void 0,
1178
1180
  );
1179
1181
  };
@@ -24,6 +24,8 @@ const stopInterval = clearInterval;
24
24
  const isNullish = (thing) => thing == null;
25
25
  const isUndefined = (thing) => thing === void 0;
26
26
  const isNull = (thing) => thing === null;
27
+ const isTrue = (thing) => thing === true;
28
+ const isFalse = (thing) => thing === false;
27
29
  const ifNotNullish = getIfNotFunction(isNullish);
28
30
  const ifNotUndefined = getIfNotFunction(isUndefined);
29
31
  const isString = (thing) => getTypeOf(thing) == STRING;
@@ -142,7 +144,7 @@ const mapForEach = (map, cb) =>
142
144
  const mapMap = (coll, cb) =>
143
145
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
144
146
  const mapSet = (map, key, value) =>
145
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
147
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
146
148
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
147
149
  if (!collHas(map, key)) {
148
150
  mapSet(map, key, getDefaultValue());
@@ -302,7 +304,7 @@ const getConfigStructures = (configOrStoreTableName) => {
302
304
  const jsonString = JSON.stringify;
303
305
  const jsonParse = JSON.parse;
304
306
  const jsonStringWithUndefined = (obj) =>
305
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
307
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
306
308
  const jsonParseWithUndefined = (str) =>
307
309
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
308
310
 
@@ -325,7 +327,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
325
327
  const deep = (node, p) =>
326
328
  p == size(path)
327
329
  ? arrayPush(leaves, node)
328
- : path[p] === null
330
+ : isNull(path[p])
329
331
  ? collForEach(node, (node2) => deep(node2, p + 1))
330
332
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
331
333
  deep(deepIdSet, 0);
@@ -1173,7 +1175,7 @@ const createCustomSqlitePersister = (
1173
1175
  EMPTY_STRING,
1174
1176
  upsert,
1175
1177
  (cellOrValue) =>
1176
- cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1178
+ isTrue(cellOrValue) ? 1 : isFalse(cellOrValue) ? 0 : cellOrValue,
1177
1179
  void 0,
1178
1180
  );
1179
1181
  };
@@ -53,7 +53,7 @@ const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
53
53
  const jsonString = JSON.stringify;
54
54
  const jsonParse = JSON.parse;
55
55
  const jsonStringWithUndefined = (obj) =>
56
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
56
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
57
57
  const jsonParseWithUndefined = (str) =>
58
58
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
59
59
 
@@ -66,7 +66,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
66
66
  const mapNew = (entries) => new Map(entries);
67
67
  const mapGet = (map, key) => map?.get(key);
68
68
  const mapSet = (map, key, value) =>
69
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
69
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
70
70
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
71
71
  if (!collHas(map, key)) {
72
72
  mapSet(map, key, getDefaultValue());
@@ -124,7 +124,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
124
124
  const deep = (node, p) =>
125
125
  p == size(path)
126
126
  ? arrayPush(leaves, node)
127
- : path[p] === null
127
+ : isNull(path[p])
128
128
  ? collForEach(node, (node2) => deep(node2, p + 1))
129
129
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
130
130
  deep(deepIdSet, 0);
@@ -53,7 +53,7 @@ const objIsEmpty = (obj) => isObject(obj) && objSize(obj) == 0;
53
53
  const jsonString = JSON.stringify;
54
54
  const jsonParse = JSON.parse;
55
55
  const jsonStringWithUndefined = (obj) =>
56
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
56
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
57
57
  const jsonParseWithUndefined = (str) =>
58
58
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
59
59
 
@@ -66,7 +66,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
66
66
  const mapNew = (entries) => new Map(entries);
67
67
  const mapGet = (map, key) => map?.get(key);
68
68
  const mapSet = (map, key, value) =>
69
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
69
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
70
70
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
71
71
  if (!collHas(map, key)) {
72
72
  mapSet(map, key, getDefaultValue());
@@ -124,7 +124,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
124
124
  const deep = (node, p) =>
125
125
  p == size(path)
126
126
  ? arrayPush(leaves, node)
127
- : path[p] === null
127
+ : isNull(path[p])
128
128
  ? collForEach(node, (node2) => deep(node2, p + 1))
129
129
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
130
130
  deep(deepIdSet, 0);
@@ -72,7 +72,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
72
72
  const mapNew = (entries) => new Map(entries);
73
73
  const mapGet = (map, key) => map?.get(key);
74
74
  const mapSet = (map, key, value) =>
75
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
75
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
76
76
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
77
77
  if (!collHas(map, key)) {
78
78
  mapSet(map, key, getDefaultValue());
@@ -130,7 +130,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
130
130
  const deep = (node, p) =>
131
131
  p == size(path)
132
132
  ? arrayPush(leaves, node)
133
- : path[p] === null
133
+ : isNull(path[p])
134
134
  ? collForEach(node, (node2) => deep(node2, p + 1))
135
135
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
136
136
  deep(deepIdSet, 0);
@@ -72,7 +72,7 @@ const collDel = (coll, keyOrValue) => coll?.delete(keyOrValue);
72
72
  const mapNew = (entries) => new Map(entries);
73
73
  const mapGet = (map, key) => map?.get(key);
74
74
  const mapSet = (map, key, value) =>
75
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
75
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
76
76
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
77
77
  if (!collHas(map, key)) {
78
78
  mapSet(map, key, getDefaultValue());
@@ -130,7 +130,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
130
130
  const deep = (node, p) =>
131
131
  p == size(path)
132
132
  ? arrayPush(leaves, node)
133
- : path[p] === null
133
+ : isNull(path[p])
134
134
  ? collForEach(node, (node2) => deep(node2, p + 1))
135
135
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
136
136
  deep(deepIdSet, 0);
@@ -22,6 +22,8 @@ const stopInterval = clearInterval;
22
22
  const isNullish = (thing) => thing == null;
23
23
  const isUndefined = (thing) => thing === void 0;
24
24
  const isNull = (thing) => thing === null;
25
+ const isTrue = (thing) => thing === true;
26
+ const isFalse = (thing) => thing === false;
25
27
  const ifNotNullish = getIfNotFunction(isNullish);
26
28
  const ifNotUndefined = getIfNotFunction(isUndefined);
27
29
  const isString = (thing) => getTypeOf(thing) == STRING;
@@ -140,7 +142,7 @@ const mapForEach = (map, cb) =>
140
142
  const mapMap = (coll, cb) =>
141
143
  arrayMap([...(coll?.entries() ?? [])], ([key, value]) => cb(value, key));
142
144
  const mapSet = (map, key, value) =>
143
- value === void 0 ? (collDel(map, key), map) : map?.set(key, value);
145
+ isUndefined(value) ? (collDel(map, key), map) : map?.set(key, value);
144
146
  const mapEnsure = (map, key, getDefaultValue, hadExistingValue) => {
145
147
  if (!collHas(map, key)) {
146
148
  mapSet(map, key, getDefaultValue());
@@ -300,7 +302,7 @@ const getConfigStructures = (configOrStoreTableName) => {
300
302
  const jsonString = JSON.stringify;
301
303
  const jsonParse = JSON.parse;
302
304
  const jsonStringWithUndefined = (obj) =>
303
- jsonString(obj, (_key, value) => (value === void 0 ? UNDEFINED : value));
305
+ jsonString(obj, (_key, value) => (isUndefined(value) ? UNDEFINED : value));
304
306
  const jsonParseWithUndefined = (str) =>
305
307
  jsonParse(str, (_key, value) => (value === UNDEFINED ? void 0 : value));
306
308
 
@@ -323,7 +325,7 @@ const getWildcardedLeaves = (deepIdSet, path = [EMPTY_STRING]) => {
323
325
  const deep = (node, p) =>
324
326
  p == size(path)
325
327
  ? arrayPush(leaves, node)
326
- : path[p] === null
328
+ : isNull(path[p])
327
329
  ? collForEach(node, (node2) => deep(node2, p + 1))
328
330
  : arrayForEach([path[p], null], (id) => deep(mapGet(node, id), p + 1));
329
331
  deep(deepIdSet, 0);
@@ -1171,7 +1173,7 @@ const createCustomSqlitePersister = (
1171
1173
  EMPTY_STRING,
1172
1174
  upsert,
1173
1175
  (cellOrValue) =>
1174
- cellOrValue === true ? 1 : cellOrValue === false ? 0 : cellOrValue,
1176
+ isTrue(cellOrValue) ? 1 : isFalse(cellOrValue) ? 0 : cellOrValue,
1175
1177
  void 0,
1176
1178
  );
1177
1179
  };