lib0 0.2.93 → 0.2.94

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 (85) hide show
  1. package/coverage/tmp/coverage-40409-1715766144203-0.json +1 -0
  2. package/dist/{broadcastchannel-80813eea.cjs → broadcastchannel-d3d8f202.cjs} +2 -2
  3. package/dist/{broadcastchannel-80813eea.cjs.map → broadcastchannel-d3d8f202.cjs.map} +1 -1
  4. package/dist/broadcastchannel.cjs +5 -5
  5. package/dist/{buffer-f11b8d4d.cjs → buffer-f10b0247.cjs} +2 -2
  6. package/dist/{buffer-f11b8d4d.cjs.map → buffer-f10b0247.cjs.map} +1 -1
  7. package/dist/buffer.cjs +4 -4
  8. package/dist/cache.cjs +2 -2
  9. package/dist/component.cjs +3 -3
  10. package/dist/{diff-fbaa426b.cjs → diff-38d8f45b.cjs} +2 -2
  11. package/dist/{diff-fbaa426b.cjs.map → diff-38d8f45b.cjs.map} +1 -1
  12. package/dist/diff.cjs +3 -3
  13. package/dist/{environment-f4d7c3e5.cjs → environment-45676492.cjs} +4 -4
  14. package/dist/environment-45676492.cjs.map +1 -0
  15. package/dist/environment.cjs +3 -3
  16. package/dist/{function-314fdc56.cjs → function-18d343cf.cjs} +2 -2
  17. package/dist/{function-314fdc56.cjs.map → function-18d343cf.cjs.map} +1 -1
  18. package/dist/function.cjs +2 -2
  19. package/dist/index.cjs +9 -9
  20. package/dist/{indexeddb-8d495848.cjs → indexeddb-0cbb4d6f.cjs} +2 -2
  21. package/dist/{indexeddb-8d495848.cjs.map → indexeddb-0cbb4d6f.cjs.map} +1 -1
  22. package/dist/indexeddb.cjs +2 -2
  23. package/dist/indexeddbV2.cjs +287 -0
  24. package/dist/indexeddbV2.cjs.map +1 -0
  25. package/dist/indexeddbV2.d.ts +35 -0
  26. package/dist/indexeddbV2.d.ts.map +1 -0
  27. package/dist/indexeddbV2.test.d.ts +3 -0
  28. package/dist/indexeddbV2.test.d.ts.map +1 -0
  29. package/dist/jwt.cjs +4 -4
  30. package/dist/list.cjs +2 -2
  31. package/dist/logging.cjs +3 -3
  32. package/dist/logging.common.cjs +3 -3
  33. package/dist/logging.node.cjs +3 -3
  34. package/dist/{object-fecf6a7b.cjs → object-b0539a4e.cjs} +11 -2
  35. package/dist/object-b0539a4e.cjs.map +1 -0
  36. package/dist/object.cjs +2 -1
  37. package/dist/object.cjs.map +1 -1
  38. package/dist/object.d.ts +3 -0
  39. package/dist/object.d.ts.map +1 -1
  40. package/dist/performance.node.cjs +2 -2
  41. package/dist/pledge.cjs +307 -0
  42. package/dist/pledge.cjs.map +1 -0
  43. package/dist/pledge.d.ts +68 -0
  44. package/dist/pledge.d.ts.map +1 -0
  45. package/dist/pledge.test.d.ts +6 -0
  46. package/dist/pledge.test.d.ts.map +1 -0
  47. package/dist/{prng-e4f28259.cjs → prng-4ea69eec.cjs} +2 -2
  48. package/dist/{prng-e4f28259.cjs.map → prng-4ea69eec.cjs.map} +1 -1
  49. package/dist/prng.cjs +5 -5
  50. package/dist/{promise-afe9dfc3.cjs → promise-7d13a97c.cjs} +22 -2
  51. package/dist/promise-7d13a97c.cjs.map +1 -0
  52. package/dist/promise.cjs +2 -1
  53. package/dist/promise.cjs.map +1 -1
  54. package/dist/promise.d.ts +1 -0
  55. package/dist/promise.d.ts.map +1 -1
  56. package/dist/promise.test.d.ts.map +1 -1
  57. package/dist/rabin-gf2-polynomial.cjs +4 -4
  58. package/dist/rabin-uncached.cjs +4 -4
  59. package/dist/rabin.cjs +4 -4
  60. package/dist/testing.cjs +7 -7
  61. package/dist/url.cjs +1 -1
  62. package/environment.js +2 -2
  63. package/indexeddbV2.d.ts +35 -0
  64. package/indexeddbV2.d.ts.map +1 -0
  65. package/indexeddbV2.js +265 -0
  66. package/indexeddbV2.test.d.ts +3 -0
  67. package/indexeddbV2.test.d.ts.map +1 -0
  68. package/object.d.ts +3 -0
  69. package/object.d.ts.map +1 -1
  70. package/object.js +8 -1
  71. package/package.json +1 -1
  72. package/pledge.d.ts +68 -0
  73. package/pledge.d.ts.map +1 -0
  74. package/pledge.js +292 -0
  75. package/pledge.test.d.ts +6 -0
  76. package/pledge.test.d.ts.map +1 -0
  77. package/promise.d.ts +1 -0
  78. package/promise.d.ts.map +1 -1
  79. package/promise.js +19 -1
  80. package/promise.test.d.ts.map +1 -1
  81. package/test.js +4 -0
  82. package/coverage/tmp/coverage-45503-1710701602083-0.json +0 -1
  83. package/dist/environment-f4d7c3e5.cjs.map +0 -1
  84. package/dist/object-fecf6a7b.cjs.map +0 -1
  85. package/dist/promise-afe9dfc3.cjs.map +0 -1
@@ -0,0 +1,287 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var pledge = require('./pledge.cjs');
6
+ require('./queue.cjs');
7
+ require('./object-b0539a4e.cjs');
8
+
9
+ /* eslint-env browser */
10
+
11
+ /* c8 ignore start */
12
+
13
+ /**
14
+ * IDB Request to Pledge transformer
15
+ *
16
+ * @param {pledge.PledgeInstance<any>} p
17
+ * @param {IDBRequest} request
18
+ */
19
+ const bindPledge = (p, request) => {
20
+ // @ts-ignore
21
+ request.onerror = event => p.cancel(event.target.error);
22
+ // @ts-ignore
23
+ request.onsuccess = event => p.resolve(event.target.result);
24
+ };
25
+
26
+ /**
27
+ * @param {string} name
28
+ * @param {function(IDBDatabase):any} initDB Called when the database is first created
29
+ * @return {pledge.PledgeInstance<IDBDatabase>}
30
+ */
31
+ const openDB = (name, initDB) => {
32
+ /**
33
+ * @type {pledge.PledgeInstance<IDBDatabase>}
34
+ */
35
+ const p = pledge.create();
36
+ const request = indexedDB.open(name);
37
+ /**
38
+ * @param {any} event
39
+ */
40
+ request.onupgradeneeded = event => initDB(event.target.result);
41
+ /**
42
+ * @param {any} event
43
+ */
44
+ request.onerror = event => p.cancel(event.target.error);
45
+ /**
46
+ * @param {any} event
47
+ */
48
+ request.onsuccess = event => {
49
+ /**
50
+ * @type {IDBDatabase}
51
+ */
52
+ const db = event.target.result;
53
+ db.onversionchange = () => { db.close(); };
54
+ p.resolve(db);
55
+ };
56
+ return p
57
+ };
58
+
59
+ /**
60
+ * @param {pledge.Pledge<string>} name
61
+ * @return {pledge.PledgeInstance<void>}
62
+ */
63
+ const deleteDB = name => pledge.createWithDependencies((p, name) => bindPledge(p, indexedDB.deleteDatabase(name)), name);
64
+
65
+ /**
66
+ * @param {IDBDatabase} db
67
+ * @param {Array<Array<string>|Array<string|IDBObjectStoreParameters|undefined>>} definitions
68
+ */
69
+ const createStores = (db, definitions) => definitions.forEach(d =>
70
+ // @ts-ignore
71
+ db.createObjectStore.apply(db, d)
72
+ );
73
+
74
+ /**
75
+ * @param {pledge.Pledge<IDBDatabase>} db
76
+ * @param {pledge.Pledge<Array<string>>} stores
77
+ * @param {"readwrite"|"readonly"} [access]
78
+ * @return {pledge.Pledge<Array<IDBObjectStore>>}
79
+ */
80
+ const transact = (db, stores, access = 'readwrite') => pledge.createWithDependencies((p, db, stores) => {
81
+ const transaction = db.transaction(stores, access);
82
+ p.resolve(stores.map(store => getStore(transaction, store)));
83
+ }, db, stores);
84
+
85
+ /**
86
+ * @param {IDBObjectStore} store
87
+ * @param {pledge.Pledge<IDBKeyRange|undefined>} [range]
88
+ * @return {pledge.PledgeInstance<number>}
89
+ */
90
+ const count = (store, range) => pledge.createWithDependencies((p, store, range) => bindPledge(p, store.count(range)), store, range);
91
+
92
+ /**
93
+ * @param {pledge.Pledge<IDBObjectStore>} store
94
+ * @param {pledge.Pledge<String | number | ArrayBuffer | Date | Array<any>>} key
95
+ * @return {pledge.PledgeInstance<String | number | ArrayBuffer | Date | Array<any>>}
96
+ */
97
+ const get = (store, key) => pledge.createWithDependencies((p, store, key) => bindPledge(p, store.get(key)), store, key);
98
+
99
+ /**
100
+ * @param {pledge.Pledge<IDBObjectStore>} store
101
+ * @param {String | number | ArrayBuffer | Date | IDBKeyRange | Array<any> } key
102
+ */
103
+ const del = (store, key) => pledge.createWithDependencies((p, store, key) => bindPledge(p, store.delete(key)), store, key);
104
+
105
+ /**
106
+ * @param {pledge.Pledge<IDBObjectStore>} store
107
+ * @param {String | number | ArrayBuffer | Date | boolean} item
108
+ * @param {String | number | ArrayBuffer | Date | Array<any>} [key]
109
+ */
110
+ const put = (store, item, key) => pledge.createWithDependencies((p, store, item, key) => bindPledge(p, store.put(item, key)), store, item, key);
111
+
112
+ /**
113
+ * @param {pledge.Pledge<IDBObjectStore>} store
114
+ * @param {String | number | ArrayBuffer | Date | boolean} item
115
+ * @param {String | number | ArrayBuffer | Date | Array<any>} key
116
+ * @return {pledge.PledgeInstance<any>}
117
+ */
118
+ const add = (store, item, key) => pledge.createWithDependencies((p, store, item, key) => bindPledge(p, store.add(item, key)), store, item, key);
119
+
120
+ /**
121
+ * @param {pledge.Pledge<IDBObjectStore>} store
122
+ * @param {String | number | ArrayBuffer | Date} item
123
+ * @return {pledge.PledgeInstance<number>} Returns the generated key
124
+ */
125
+ const addAutoKey = (store, item) => pledge.createWithDependencies((p, store, item) => bindPledge(p, store.add(item)), store, item);
126
+
127
+ /**
128
+ * @param {pledge.Pledge<IDBObjectStore>} store
129
+ * @param {IDBKeyRange} [range]
130
+ * @param {number} [limit]
131
+ * @return {pledge.PledgeInstance<Array<any>>}
132
+ */
133
+ const getAll = (store, range, limit) => pledge.createWithDependencies((p, store, range, limit) => bindPledge(p, store.getAll(range, limit)), store, range, limit);
134
+
135
+ /**
136
+ * @param {pledge.Pledge<IDBObjectStore>} store
137
+ * @param {IDBKeyRange} [range]
138
+ * @param {number} [limit]
139
+ * @return {pledge.PledgeInstance<Array<any>>}
140
+ */
141
+ const getAllKeys = (store, range, limit) => pledge.createWithDependencies((p, store, range, limit) => bindPledge(p, store.getAllKeys(range, limit)), store, range, limit);
142
+
143
+ /**
144
+ * @param {IDBObjectStore} store
145
+ * @param {IDBKeyRange|null} query
146
+ * @param {'next'|'prev'|'nextunique'|'prevunique'} direction
147
+ * @return {pledge.PledgeInstance<any>}
148
+ */
149
+ const queryFirst = (store, query, direction) => {
150
+ /**
151
+ * @type {any}
152
+ */
153
+ let first = null;
154
+ return iterateKeys(store, query, key => {
155
+ first = key;
156
+ return false
157
+ }, direction).map(() => first)
158
+ };
159
+
160
+ /**
161
+ * @param {IDBObjectStore} store
162
+ * @param {IDBKeyRange?} [range]
163
+ * @return {pledge.PledgeInstance<any>}
164
+ */
165
+ const getLastKey = (store, range = null) => queryFirst(store, range, 'prev');
166
+
167
+ /**
168
+ * @param {IDBObjectStore} store
169
+ * @param {IDBKeyRange?} [range]
170
+ * @return {pledge.PledgeInstance<any>}
171
+ */
172
+ const getFirstKey = (store, range = null) => queryFirst(store, range, 'next');
173
+
174
+ /**
175
+ * @typedef KeyValuePair
176
+ * @type {Object}
177
+ * @property {any} k key
178
+ * @property {any} v Value
179
+ */
180
+
181
+ /**
182
+ * @param {pledge.Pledge<IDBObjectStore>} store
183
+ * @param {pledge.Pledge<IDBKeyRange|undefined>} [range]
184
+ * @param {pledge.Pledge<number|undefined>} [limit]
185
+ * @return {pledge.PledgeInstance<Array<KeyValuePair>>}
186
+ */
187
+ const getAllKeysValues = (store, range, limit) => pledge.createWithDependencies((p, store, range, limit) => {
188
+ pledge.all([getAllKeys(store, range, limit), getAll(store, range, limit)]).map(([ks, vs]) => ks.map((k, i) => ({ k, v: vs[i] }))).whenResolved(p.resolve.bind(p));
189
+ }, store, range, limit);
190
+
191
+ /**
192
+ * @param {pledge.PledgeInstance<void>} p
193
+ * @param {any} request
194
+ * @param {function(IDBCursorWithValue):void|boolean|Promise<void|boolean>} f
195
+ */
196
+ const iterateOnRequest = (p, request, f) => {
197
+ request.onerror = p.cancel.bind(p);
198
+ /**
199
+ * @param {any} event
200
+ */
201
+ request.onsuccess = async event => {
202
+ const cursor = event.target.result;
203
+ if (cursor === null || (await f(cursor)) === false) {
204
+ p.resolve(undefined);
205
+ return
206
+ }
207
+ cursor.continue();
208
+ };
209
+ };
210
+
211
+ /**
212
+ * Iterate on keys and values
213
+ * @param {pledge.Pledge<IDBObjectStore>} store
214
+ * @param {pledge.Pledge<IDBKeyRange|null>} keyrange
215
+ * @param {function(any,any):void|boolean|Promise<void|boolean>} f Callback that receives (value, key)
216
+ * @param {'next'|'prev'|'nextunique'|'prevunique'} direction
217
+ */
218
+ const iterate = (store, keyrange, f, direction = 'next') => pledge.createWithDependencies((p, store, keyrange) => {
219
+ iterateOnRequest(p, store.openCursor(keyrange, direction), cursor => f(cursor.value, cursor.key));
220
+ }, store, keyrange);
221
+
222
+ /**
223
+ * Iterate on the keys (no values)
224
+ *
225
+ * @param {pledge.Pledge<IDBObjectStore>} store
226
+ * @param {pledge.Pledge<IDBKeyRange|null>} keyrange
227
+ * @param {function(any):void|boolean|Promise<void|boolean>} f callback that receives the key
228
+ * @param {'next'|'prev'|'nextunique'|'prevunique'} direction
229
+ */
230
+ const iterateKeys = (store, keyrange, f, direction = 'next') => pledge.createWithDependencies((p, store, keyrange) => {
231
+ iterateOnRequest(p, store.openKeyCursor(keyrange, direction), cursor => f(cursor.key));
232
+ }, store, keyrange);
233
+
234
+ /**
235
+ * Open store from transaction
236
+ * @param {IDBTransaction} t
237
+ * @param {String} store
238
+ * @returns {IDBObjectStore}
239
+ */
240
+ const getStore = (t, store) => t.objectStore(store);
241
+
242
+ /**
243
+ * @param {any} lower
244
+ * @param {any} upper
245
+ * @param {boolean} lowerOpen
246
+ * @param {boolean} upperOpen
247
+ */
248
+ const createIDBKeyRangeBound = (lower, upper, lowerOpen, upperOpen) => IDBKeyRange.bound(lower, upper, lowerOpen, upperOpen);
249
+
250
+ /**
251
+ * @param {any} upper
252
+ * @param {boolean} upperOpen
253
+ */
254
+ const createIDBKeyRangeUpperBound = (upper, upperOpen) => IDBKeyRange.upperBound(upper, upperOpen);
255
+
256
+ /**
257
+ * @param {any} lower
258
+ * @param {boolean} lowerOpen
259
+ */
260
+ const createIDBKeyRangeLowerBound = (lower, lowerOpen) => IDBKeyRange.lowerBound(lower, lowerOpen);
261
+
262
+ /* c8 ignore stop */
263
+
264
+ exports.add = add;
265
+ exports.addAutoKey = addAutoKey;
266
+ exports.bindPledge = bindPledge;
267
+ exports.count = count;
268
+ exports.createIDBKeyRangeBound = createIDBKeyRangeBound;
269
+ exports.createIDBKeyRangeLowerBound = createIDBKeyRangeLowerBound;
270
+ exports.createIDBKeyRangeUpperBound = createIDBKeyRangeUpperBound;
271
+ exports.createStores = createStores;
272
+ exports.del = del;
273
+ exports.deleteDB = deleteDB;
274
+ exports.get = get;
275
+ exports.getAll = getAll;
276
+ exports.getAllKeys = getAllKeys;
277
+ exports.getAllKeysValues = getAllKeysValues;
278
+ exports.getFirstKey = getFirstKey;
279
+ exports.getLastKey = getLastKey;
280
+ exports.getStore = getStore;
281
+ exports.iterate = iterate;
282
+ exports.iterateKeys = iterateKeys;
283
+ exports.openDB = openDB;
284
+ exports.put = put;
285
+ exports.queryFirst = queryFirst;
286
+ exports.transact = transact;
287
+ //# sourceMappingURL=indexeddbV2.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexeddbV2.cjs","sources":["../indexeddbV2.js"],"sourcesContent":["/* eslint-env browser */\n\n/**\n * Helpers to work with IndexedDB.\n * This is an experimental implementation using Pledge instead of Promise.\n *\n * @experimental\n *\n * @module indexeddbv2\n */\n\nimport * as pledge from './pledge.js'\n\n/* c8 ignore start */\n\n/**\n * IDB Request to Pledge transformer\n *\n * @param {pledge.PledgeInstance<any>} p\n * @param {IDBRequest} request\n */\nexport const bindPledge = (p, request) => {\n // @ts-ignore\n request.onerror = event => p.cancel(event.target.error)\n // @ts-ignore\n request.onsuccess = event => p.resolve(event.target.result)\n}\n\n/**\n * @param {string} name\n * @param {function(IDBDatabase):any} initDB Called when the database is first created\n * @return {pledge.PledgeInstance<IDBDatabase>}\n */\nexport const openDB = (name, initDB) => {\n /**\n * @type {pledge.PledgeInstance<IDBDatabase>}\n */\n const p = pledge.create()\n const request = indexedDB.open(name)\n /**\n * @param {any} event\n */\n request.onupgradeneeded = event => initDB(event.target.result)\n /**\n * @param {any} event\n */\n request.onerror = event => p.cancel(event.target.error)\n /**\n * @param {any} event\n */\n request.onsuccess = event => {\n /**\n * @type {IDBDatabase}\n */\n const db = event.target.result\n db.onversionchange = () => { db.close() }\n p.resolve(db)\n }\n return p\n}\n\n/**\n * @param {pledge.Pledge<string>} name\n * @return {pledge.PledgeInstance<void>}\n */\nexport const deleteDB = name => pledge.createWithDependencies((p, name) => bindPledge(p, indexedDB.deleteDatabase(name)), name)\n\n/**\n * @param {IDBDatabase} db\n * @param {Array<Array<string>|Array<string|IDBObjectStoreParameters|undefined>>} definitions\n */\nexport const createStores = (db, definitions) => definitions.forEach(d =>\n // @ts-ignore\n db.createObjectStore.apply(db, d)\n)\n\n/**\n * @param {pledge.Pledge<IDBDatabase>} db\n * @param {pledge.Pledge<Array<string>>} stores\n * @param {\"readwrite\"|\"readonly\"} [access]\n * @return {pledge.Pledge<Array<IDBObjectStore>>}\n */\nexport const transact = (db, stores, access = 'readwrite') => pledge.createWithDependencies((p, db, stores) => {\n const transaction = db.transaction(stores, access)\n p.resolve(stores.map(store => getStore(transaction, store)))\n}, db, stores)\n\n/**\n * @param {IDBObjectStore} store\n * @param {pledge.Pledge<IDBKeyRange|undefined>} [range]\n * @return {pledge.PledgeInstance<number>}\n */\nexport const count = (store, range) => pledge.createWithDependencies((p, store, range) => bindPledge(p, store.count(range)), store, range)\n\n/**\n * @param {pledge.Pledge<IDBObjectStore>} store\n * @param {pledge.Pledge<String | number | ArrayBuffer | Date | Array<any>>} key\n * @return {pledge.PledgeInstance<String | number | ArrayBuffer | Date | Array<any>>}\n */\nexport const get = (store, key) => pledge.createWithDependencies((p, store, key) => bindPledge(p, store.get(key)), store, key)\n\n/**\n * @param {pledge.Pledge<IDBObjectStore>} store\n * @param {String | number | ArrayBuffer | Date | IDBKeyRange | Array<any> } key\n */\nexport const del = (store, key) => pledge.createWithDependencies((p, store, key) => bindPledge(p, store.delete(key)), store, key)\n\n/**\n * @param {pledge.Pledge<IDBObjectStore>} store\n * @param {String | number | ArrayBuffer | Date | boolean} item\n * @param {String | number | ArrayBuffer | Date | Array<any>} [key]\n */\nexport const put = (store, item, key) => pledge.createWithDependencies((p, store, item, key) => bindPledge(p, store.put(item, key)), store, item, key)\n\n/**\n * @param {pledge.Pledge<IDBObjectStore>} store\n * @param {String | number | ArrayBuffer | Date | boolean} item\n * @param {String | number | ArrayBuffer | Date | Array<any>} key\n * @return {pledge.PledgeInstance<any>}\n */\nexport const add = (store, item, key) => pledge.createWithDependencies((p, store, item, key) => bindPledge(p, store.add(item, key)), store, item, key)\n\n/**\n * @param {pledge.Pledge<IDBObjectStore>} store\n * @param {String | number | ArrayBuffer | Date} item\n * @return {pledge.PledgeInstance<number>} Returns the generated key\n */\nexport const addAutoKey = (store, item) => pledge.createWithDependencies((p, store, item) => bindPledge(p, store.add(item)), store, item)\n\n/**\n * @param {pledge.Pledge<IDBObjectStore>} store\n * @param {IDBKeyRange} [range]\n * @param {number} [limit]\n * @return {pledge.PledgeInstance<Array<any>>}\n */\nexport const getAll = (store, range, limit) => pledge.createWithDependencies((p, store, range, limit) => bindPledge(p, store.getAll(range, limit)), store, range, limit)\n\n/**\n * @param {pledge.Pledge<IDBObjectStore>} store\n * @param {IDBKeyRange} [range]\n * @param {number} [limit]\n * @return {pledge.PledgeInstance<Array<any>>}\n */\nexport const getAllKeys = (store, range, limit) => pledge.createWithDependencies((p, store, range, limit) => bindPledge(p, store.getAllKeys(range, limit)), store, range, limit)\n\n/**\n * @param {IDBObjectStore} store\n * @param {IDBKeyRange|null} query\n * @param {'next'|'prev'|'nextunique'|'prevunique'} direction\n * @return {pledge.PledgeInstance<any>}\n */\nexport const queryFirst = (store, query, direction) => {\n /**\n * @type {any}\n */\n let first = null\n return iterateKeys(store, query, key => {\n first = key\n return false\n }, direction).map(() => first)\n}\n\n/**\n * @param {IDBObjectStore} store\n * @param {IDBKeyRange?} [range]\n * @return {pledge.PledgeInstance<any>}\n */\nexport const getLastKey = (store, range = null) => queryFirst(store, range, 'prev')\n\n/**\n * @param {IDBObjectStore} store\n * @param {IDBKeyRange?} [range]\n * @return {pledge.PledgeInstance<any>}\n */\nexport const getFirstKey = (store, range = null) => queryFirst(store, range, 'next')\n\n/**\n * @typedef KeyValuePair\n * @type {Object}\n * @property {any} k key\n * @property {any} v Value\n */\n\n/**\n * @param {pledge.Pledge<IDBObjectStore>} store\n * @param {pledge.Pledge<IDBKeyRange|undefined>} [range]\n * @param {pledge.Pledge<number|undefined>} [limit]\n * @return {pledge.PledgeInstance<Array<KeyValuePair>>}\n */\nexport const getAllKeysValues = (store, range, limit) => pledge.createWithDependencies((p, store, range, limit) => {\n pledge.all([getAllKeys(store, range, limit), getAll(store, range, limit)]).map(([ks, vs]) => ks.map((k, i) => ({ k, v: vs[i] }))).whenResolved(p.resolve.bind(p))\n}, store, range, limit)\n\n/**\n * @param {pledge.PledgeInstance<void>} p\n * @param {any} request\n * @param {function(IDBCursorWithValue):void|boolean|Promise<void|boolean>} f\n */\nconst iterateOnRequest = (p, request, f) => {\n request.onerror = p.cancel.bind(p)\n /**\n * @param {any} event\n */\n request.onsuccess = async event => {\n const cursor = event.target.result\n if (cursor === null || (await f(cursor)) === false) {\n p.resolve(undefined)\n return\n }\n cursor.continue()\n }\n}\n\n/**\n * Iterate on keys and values\n * @param {pledge.Pledge<IDBObjectStore>} store\n * @param {pledge.Pledge<IDBKeyRange|null>} keyrange\n * @param {function(any,any):void|boolean|Promise<void|boolean>} f Callback that receives (value, key)\n * @param {'next'|'prev'|'nextunique'|'prevunique'} direction\n */\nexport const iterate = (store, keyrange, f, direction = 'next') => pledge.createWithDependencies((p, store, keyrange) => {\n iterateOnRequest(p, store.openCursor(keyrange, direction), cursor => f(cursor.value, cursor.key))\n}, store, keyrange)\n\n/**\n * Iterate on the keys (no values)\n *\n * @param {pledge.Pledge<IDBObjectStore>} store\n * @param {pledge.Pledge<IDBKeyRange|null>} keyrange\n * @param {function(any):void|boolean|Promise<void|boolean>} f callback that receives the key\n * @param {'next'|'prev'|'nextunique'|'prevunique'} direction\n */\nexport const iterateKeys = (store, keyrange, f, direction = 'next') => pledge.createWithDependencies((p, store, keyrange) => {\n iterateOnRequest(p, store.openKeyCursor(keyrange, direction), cursor => f(cursor.key))\n}, store, keyrange)\n\n/**\n * Open store from transaction\n * @param {IDBTransaction} t\n * @param {String} store\n * @returns {IDBObjectStore}\n */\nexport const getStore = (t, store) => t.objectStore(store)\n\n/**\n * @param {any} lower\n * @param {any} upper\n * @param {boolean} lowerOpen\n * @param {boolean} upperOpen\n */\nexport const createIDBKeyRangeBound = (lower, upper, lowerOpen, upperOpen) => IDBKeyRange.bound(lower, upper, lowerOpen, upperOpen)\n\n/**\n * @param {any} upper\n * @param {boolean} upperOpen\n */\nexport const createIDBKeyRangeUpperBound = (upper, upperOpen) => IDBKeyRange.upperBound(upper, upperOpen)\n\n/**\n * @param {any} lower\n * @param {boolean} lowerOpen\n */\nexport const createIDBKeyRangeLowerBound = (lower, lowerOpen) => IDBKeyRange.lowerBound(lower, lowerOpen)\n\n/* c8 ignore stop */\n"],"names":["pledge.create","pledge.createWithDependencies","pledge.all"],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ export function bindPledge(p: pledge.PledgeInstance<any>, request: IDBRequest): void;
2
+ export function openDB(name: string, initDB: (arg0: IDBDatabase) => any): pledge.PledgeInstance<IDBDatabase>;
3
+ export function deleteDB(name: pledge.Pledge<string>): pledge.PledgeInstance<void>;
4
+ export function createStores(db: IDBDatabase, definitions: Array<Array<string> | Array<string | IDBObjectStoreParameters | undefined>>): void;
5
+ export function transact(db: pledge.Pledge<IDBDatabase>, stores: pledge.Pledge<Array<string>>, access?: "readonly" | "readwrite" | undefined): pledge.Pledge<Array<IDBObjectStore>>;
6
+ export function count(store: IDBObjectStore, range?: pledge.Pledge<IDBKeyRange | undefined>): pledge.PledgeInstance<number>;
7
+ export function get(store: pledge.Pledge<IDBObjectStore>, key: pledge.Pledge<string | number | ArrayBuffer | Date | Array<any>>): pledge.PledgeInstance<string | number | ArrayBuffer | Date | Array<any>>;
8
+ export function del(store: pledge.Pledge<IDBObjectStore>, key: string | number | ArrayBuffer | Date | IDBKeyRange | Array<any>): pledge.PledgeInstance<any, Error>;
9
+ export function put(store: pledge.Pledge<IDBObjectStore>, item: string | number | ArrayBuffer | Date | boolean, key?: string | number | any[] | Date | ArrayBuffer | undefined): pledge.PledgeInstance<any, Error>;
10
+ export function add(store: pledge.Pledge<IDBObjectStore>, item: string | number | ArrayBuffer | Date | boolean, key: string | number | ArrayBuffer | Date | Array<any>): pledge.PledgeInstance<any>;
11
+ export function addAutoKey(store: pledge.Pledge<IDBObjectStore>, item: string | number | ArrayBuffer | Date): pledge.PledgeInstance<number>;
12
+ export function getAll(store: pledge.Pledge<IDBObjectStore>, range?: IDBKeyRange | undefined, limit?: number | undefined): pledge.PledgeInstance<Array<any>>;
13
+ export function getAllKeys(store: pledge.Pledge<IDBObjectStore>, range?: IDBKeyRange | undefined, limit?: number | undefined): pledge.PledgeInstance<Array<any>>;
14
+ export function queryFirst(store: IDBObjectStore, query: IDBKeyRange | null, direction: 'next' | 'prev' | 'nextunique' | 'prevunique'): pledge.PledgeInstance<any>;
15
+ export function getLastKey(store: IDBObjectStore, range?: IDBKeyRange | null | undefined): pledge.PledgeInstance<any>;
16
+ export function getFirstKey(store: IDBObjectStore, range?: IDBKeyRange | null | undefined): pledge.PledgeInstance<any>;
17
+ export function getAllKeysValues(store: pledge.Pledge<IDBObjectStore>, range?: pledge.Pledge<IDBKeyRange | undefined>, limit?: pledge.Pledge<number | undefined>): pledge.PledgeInstance<Array<KeyValuePair>>;
18
+ export function iterate(store: pledge.Pledge<IDBObjectStore>, keyrange: pledge.Pledge<IDBKeyRange | null>, f: (arg0: any, arg1: any) => void | boolean | Promise<void | boolean>, direction?: 'next' | 'prev' | 'nextunique' | 'prevunique'): pledge.PledgeInstance<any, Error>;
19
+ export function iterateKeys(store: pledge.Pledge<IDBObjectStore>, keyrange: pledge.Pledge<IDBKeyRange | null>, f: (arg0: any) => void | boolean | Promise<void | boolean>, direction?: 'next' | 'prev' | 'nextunique' | 'prevunique'): pledge.PledgeInstance<any, Error>;
20
+ export function getStore(t: IDBTransaction, store: string): IDBObjectStore;
21
+ export function createIDBKeyRangeBound(lower: any, upper: any, lowerOpen: boolean, upperOpen: boolean): IDBKeyRange;
22
+ export function createIDBKeyRangeUpperBound(upper: any, upperOpen: boolean): IDBKeyRange;
23
+ export function createIDBKeyRangeLowerBound(lower: any, lowerOpen: boolean): IDBKeyRange;
24
+ export type KeyValuePair = {
25
+ /**
26
+ * key
27
+ */
28
+ k: any;
29
+ /**
30
+ * Value
31
+ */
32
+ v: any;
33
+ };
34
+ import * as pledge from './pledge.js';
35
+ //# sourceMappingURL=indexeddbV2.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexeddbV2.d.ts","sourceRoot":"","sources":["../indexeddbV2.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export function testRetrieveElements(): Promise<void>;
2
+ export function testBlocked(): Promise<void>;
3
+ //# sourceMappingURL=indexeddbV2.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexeddbV2.test.d.ts","sourceRoot":"","sources":["../indexeddbV2.test.js"],"names":[],"mappings":"AA0BO,sDAoEN;AAGM,6CAgBN"}
package/dist/jwt.cjs CHANGED
@@ -3,19 +3,19 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var error = require('./error-8582d695.cjs');
6
- var buffer = require('./buffer-f11b8d4d.cjs');
6
+ var buffer = require('./buffer-f10b0247.cjs');
7
7
  var string = require('./string-6d104757.cjs');
8
8
  var json = require('./json-092190a1.cjs');
9
9
  var ecdsa = require('./ecdsa.cjs');
10
10
  var time = require('./time-bc2081b9.cjs');
11
- require('./environment-f4d7c3e5.cjs');
11
+ require('./environment-45676492.cjs');
12
12
  require('./map-0dabcc55.cjs');
13
13
  require('./conditions-f5c0c102.cjs');
14
14
  require('./storage.cjs');
15
- require('./function-314fdc56.cjs');
15
+ require('./function-18d343cf.cjs');
16
16
  require('./array-704ca50e.cjs');
17
17
  require('./set-0f209abb.cjs');
18
- require('./object-fecf6a7b.cjs');
18
+ require('./object-b0539a4e.cjs');
19
19
  require('./math-08e068f9.cjs');
20
20
  require('./encoding-882cb136.cjs');
21
21
  require('./number-466d8922.cjs');
package/dist/list.cjs CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var _function = require('./function-314fdc56.cjs');
5
+ var _function = require('./function-18d343cf.cjs');
6
6
  var error = require('./error-8582d695.cjs');
7
7
  require('./array-704ca50e.cjs');
8
8
  require('./set-0f209abb.cjs');
9
- require('./object-fecf6a7b.cjs');
9
+ require('./object-b0539a4e.cjs');
10
10
 
11
11
  class ListNode {
12
12
  constructor () {
package/dist/logging.cjs CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var environment = require('./environment-f4d7c3e5.cjs');
5
+ var environment = require('./environment-45676492.cjs');
6
6
  var set = require('./set-0f209abb.cjs');
7
7
  var pair = require('./pair-ab022bc3.cjs');
8
8
  var dom = require('./dom-16daf1a0.cjs');
@@ -15,8 +15,8 @@ require('./string-6d104757.cjs');
15
15
  require('./array-704ca50e.cjs');
16
16
  require('./conditions-f5c0c102.cjs');
17
17
  require('./storage.cjs');
18
- require('./function-314fdc56.cjs');
19
- require('./object-fecf6a7b.cjs');
18
+ require('./function-18d343cf.cjs');
19
+ require('./object-b0539a4e.cjs');
20
20
  require('./symbol-c5caa724.cjs');
21
21
  require('./time-bc2081b9.cjs');
22
22
  require('./metric.cjs');
@@ -4,8 +4,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var symbol = require('./symbol-c5caa724.cjs');
6
6
  var time = require('./time-bc2081b9.cjs');
7
- var environment = require('./environment-f4d7c3e5.cjs');
8
- var _function = require('./function-314fdc56.cjs');
7
+ var environment = require('./environment-45676492.cjs');
8
+ var _function = require('./function-18d343cf.cjs');
9
9
  var json = require('./json-092190a1.cjs');
10
10
  require('./metric.cjs');
11
11
  require('./math-08e068f9.cjs');
@@ -15,7 +15,7 @@ require('./array-704ca50e.cjs');
15
15
  require('./set-0f209abb.cjs');
16
16
  require('./conditions-f5c0c102.cjs');
17
17
  require('./storage.cjs');
18
- require('./object-fecf6a7b.cjs');
18
+ require('./object-b0539a4e.cjs');
19
19
 
20
20
  const BOLD = symbol.create();
21
21
  const UNBOLD = symbol.create();
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var environment = require('./environment-f4d7c3e5.cjs');
5
+ var environment = require('./environment-45676492.cjs');
6
6
  var logging_common = require('./logging.common.cjs');
7
7
  require('./map-0dabcc55.cjs');
8
8
  require('./string-6d104757.cjs');
@@ -10,8 +10,8 @@ require('./array-704ca50e.cjs');
10
10
  require('./set-0f209abb.cjs');
11
11
  require('./conditions-f5c0c102.cjs');
12
12
  require('./storage.cjs');
13
- require('./function-314fdc56.cjs');
14
- require('./object-fecf6a7b.cjs');
13
+ require('./function-18d343cf.cjs');
14
+ require('./object-b0539a4e.cjs');
15
15
  require('./symbol-c5caa724.cjs');
16
16
  require('./time-bc2081b9.cjs');
17
17
  require('./metric.cjs');
@@ -49,11 +49,18 @@ const map = (obj, f) => {
49
49
  };
50
50
 
51
51
  /**
52
+ * @deprecated use object.size instead
52
53
  * @param {Object<string,any>} obj
53
54
  * @return {number}
54
55
  */
55
56
  const length = obj => keys(obj).length;
56
57
 
58
+ /**
59
+ * @param {Object<string,any>} obj
60
+ * @return {number}
61
+ */
62
+ const size = obj => keys(obj).length;
63
+
57
64
  /**
58
65
  * @param {Object<string,any>} obj
59
66
  * @param {function(any,string):boolean} f
@@ -107,7 +114,7 @@ const hasProperty = (obj, key) => Object.prototype.hasOwnProperty.call(obj, key)
107
114
  * @param {Object<string,any>} b
108
115
  * @return {boolean}
109
116
  */
110
- const equalFlat = (a, b) => a === b || (length(a) === length(b) && every(a, (val, key) => (val !== undefined || hasProperty(b, key)) && b[key] === val));
117
+ const equalFlat = (a, b) => a === b || (size(a) === size(b) && every(a, (val, key) => (val !== undefined || hasProperty(b, key)) && b[key] === val));
111
118
 
112
119
  var object = /*#__PURE__*/Object.freeze({
113
120
  __proto__: null,
@@ -117,6 +124,7 @@ var object = /*#__PURE__*/Object.freeze({
117
124
  forEach: forEach,
118
125
  map: map,
119
126
  length: length,
127
+ size: size,
120
128
  some: some,
121
129
  isEmpty: isEmpty,
122
130
  every: every,
@@ -135,5 +143,6 @@ exports.keys = keys;
135
143
  exports.length = length;
136
144
  exports.map = map;
137
145
  exports.object = object;
146
+ exports.size = size;
138
147
  exports.some = some;
139
- //# sourceMappingURL=object-fecf6a7b.cjs.map
148
+ //# sourceMappingURL=object-b0539a4e.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-b0539a4e.cjs","sources":["../object.js"],"sourcesContent":["/**\n * Utility functions for working with EcmaScript objects.\n *\n * @module object\n */\n\n/**\n * @return {Object<string,any>} obj\n */\nexport const create = () => Object.create(null)\n\n/**\n * Object.assign\n */\nexport const assign = Object.assign\n\n/**\n * @param {Object<string,any>} obj\n */\nexport const keys = Object.keys\n\n/**\n * @template V\n * @param {{[k:string]:V}} obj\n * @param {function(V,string):any} f\n */\nexport const forEach = (obj, f) => {\n for (const key in obj) {\n f(obj[key], key)\n }\n}\n\n/**\n * @todo implement mapToArray & map\n *\n * @template R\n * @param {Object<string,any>} obj\n * @param {function(any,string):R} f\n * @return {Array<R>}\n */\nexport const map = (obj, f) => {\n const results = []\n for (const key in obj) {\n results.push(f(obj[key], key))\n }\n return results\n}\n\n/**\n * @deprecated use object.size instead\n * @param {Object<string,any>} obj\n * @return {number}\n */\nexport const length = obj => keys(obj).length\n\n/**\n * @param {Object<string,any>} obj\n * @return {number}\n */\nexport const size = obj => keys(obj).length\n\n/**\n * @param {Object<string,any>} obj\n * @param {function(any,string):boolean} f\n * @return {boolean}\n */\nexport const some = (obj, f) => {\n for (const key in obj) {\n if (f(obj[key], key)) {\n return true\n }\n }\n return false\n}\n\n/**\n * @param {Object|undefined} obj\n */\nexport const isEmpty = obj => {\n // eslint-disable-next-line\n for (const _k in obj) {\n return false\n }\n return true\n}\n\n/**\n * @param {Object<string,any>} obj\n * @param {function(any,string):boolean} f\n * @return {boolean}\n */\nexport const every = (obj, f) => {\n for (const key in obj) {\n if (!f(obj[key], key)) {\n return false\n }\n }\n return true\n}\n\n/**\n * Calls `Object.prototype.hasOwnProperty`.\n *\n * @param {any} obj\n * @param {string|symbol} key\n * @return {boolean}\n */\nexport const hasProperty = (obj, key) => Object.prototype.hasOwnProperty.call(obj, key)\n\n/**\n * @param {Object<string,any>} a\n * @param {Object<string,any>} b\n * @return {boolean}\n */\nexport const equalFlat = (a, b) => a === b || (size(a) === size(b) && every(a, (val, key) => (val !== undefined || hasProperty(b, key)) && b[key] === val))\n"],"names":[],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,MAAM,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,IAAI,EAAC;AAC/C;AACA;AACA;AACA;AACY,MAAC,MAAM,GAAG,MAAM,CAAC,OAAM;AACnC;AACA;AACA;AACA;AACY,MAAC,IAAI,GAAG,MAAM,CAAC,KAAI;AAC/B;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK;AACnC,EAAE,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;AACzB,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,EAAC;AACpB,GAAG;AACH,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK;AAC/B,EAAE,MAAM,OAAO,GAAG,GAAE;AACpB,EAAE,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;AACzB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,EAAC;AAClC,GAAG;AACH,EAAE,OAAO,OAAO;AAChB,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,OAAM;AAC7C;AACA;AACA;AACA;AACA;AACY,MAAC,IAAI,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,OAAM;AAC3C;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK;AAChC,EAAE,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;AACzB,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE;AAC1B,MAAM,OAAO,IAAI;AACjB,KAAK;AACL,GAAG;AACH,EAAE,OAAO,KAAK;AACd,EAAC;AACD;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,GAAG,IAAI;AAC9B;AACA,EAAE,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE;AACxB,IAAI,OAAO,KAAK;AAChB,GAAG;AACH,EAAE,OAAO,IAAI;AACb,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK;AACjC,EAAE,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE;AACzB,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,EAAE;AAC3B,MAAM,OAAO,KAAK;AAClB,KAAK;AACL,GAAG;AACH,EAAE,OAAO,IAAI;AACb,EAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAC;AACvF;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,GAAG,KAAK,SAAS,IAAI,WAAW,CAAC,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/object.cjs CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var object = require('./object-fecf6a7b.cjs');
5
+ var object = require('./object-b0539a4e.cjs');
6
6
 
7
7
 
8
8
 
@@ -16,5 +16,6 @@ exports.isEmpty = object.isEmpty;
16
16
  exports.keys = object.keys;
17
17
  exports.length = object.length;
18
18
  exports.map = object.map;
19
+ exports.size = object.size;
19
20
  exports.some = object.some;
20
21
  //# sourceMappingURL=object.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"object.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"object.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;"}
package/dist/object.d.ts CHANGED
@@ -26,6 +26,9 @@ export function map<R>(obj: {
26
26
  export function length(obj: {
27
27
  [x: string]: any;
28
28
  }): number;
29
+ export function size(obj: {
30
+ [x: string]: any;
31
+ }): number;
29
32
  export function some(obj: {
30
33
  [x: string]: any;
31
34
  }, f: (arg0: any, arg1: string) => boolean): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../object.js"],"names":[],"mappings":"AASO;QAFY,MAAM,GAAC,GAAG;EAEkB;AAE/C;;GAEG;AACH;;;;;EAAmC;AAEnC;;GAEG;AACH;;;EAA+B;AAOxB;;sBAFe,MAAM,KAAE,GAAG,QAMhC;AAUM;QAJW,MAAM,GAAC,GAAG;aACR,GAAG,QAAC,MAAM,aAS7B;AAMM;QAHW,MAAM,GAAC,GAAG;IAChB,MAAM,CAE2B;AAOtC;QAJW,MAAM,GAAC,GAAG;aACR,GAAG,QAAC,MAAM,KAAE,OAAO,GAC3B,OAAO,CASlB;AAKM,6BAFI,MAAM,GAAC,SAAS,WAQ1B;AAOM;QAJW,MAAM,GAAC,GAAG;aACR,GAAG,QAAC,MAAM,KAAE,OAAO,GAC3B,OAAO,CASlB;AASM,iCAJI,GAAG,OACH,MAAM,GAAC,MAAM,GACZ,OAAO,CAEoE;AAOhF;QAJW,MAAM,GAAC,GAAG;;QACV,MAAM,GAAC,GAAG;IAChB,OAAO,CAE4I"}
1
+ {"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../object.js"],"names":[],"mappings":"AASO;QAFY,MAAM,GAAC,GAAG;EAEkB;AAE/C;;GAEG;AACH;;;;;EAAmC;AAEnC;;GAEG;AACH;;;EAA+B;AAOxB;;sBAFe,MAAM,KAAE,GAAG,QAMhC;AAUM;QAJW,MAAM,GAAC,GAAG;aACR,GAAG,QAAC,MAAM,aAS7B;AAOM;QAHW,MAAM,GAAC,GAAG;IAChB,MAAM,CAE2B;AAMtC;QAHW,MAAM,GAAC,GAAG;IAChB,MAAM,CAEyB;AAOpC;QAJW,MAAM,GAAC,GAAG;aACR,GAAG,QAAC,MAAM,KAAE,OAAO,GAC3B,OAAO,CASlB;AAKM,6BAFI,MAAM,GAAC,SAAS,WAQ1B;AAOM;QAJW,MAAM,GAAC,GAAG;aACR,GAAG,QAAC,MAAM,KAAE,OAAO,GAC3B,OAAO,CASlB;AASM,iCAJI,GAAG,OACH,MAAM,GAAC,MAAM,GACZ,OAAO,CAEoE;AAOhF;QAJW,MAAM,GAAC,GAAG;;QACV,MAAM,GAAC,GAAG;IAChB,OAAO,CAEwI"}
@@ -3,11 +3,11 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var node_perf_hooks = require('node:perf_hooks');
6
- var _function = require('./function-314fdc56.cjs');
6
+ var _function = require('./function-18d343cf.cjs');
7
7
  var time = require('./time-bc2081b9.cjs');
8
8
  require('./array-704ca50e.cjs');
9
9
  require('./set-0f209abb.cjs');
10
- require('./object-fecf6a7b.cjs');
10
+ require('./object-b0539a4e.cjs');
11
11
  require('./metric.cjs');
12
12
  require('./math-08e068f9.cjs');
13
13