lib0 0.2.57 → 0.2.59

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 (63) hide show
  1. package/README.md +1 -0
  2. package/broadcastchannel.d.ts +1 -1
  3. package/broadcastchannel.d.ts.map +1 -1
  4. package/broadcastchannel.js +17 -2
  5. package/broadcastchannel.test.d.ts +3 -0
  6. package/broadcastchannel.test.d.ts.map +1 -0
  7. package/dist/{broadcastchannel-825e3d07.cjs → broadcastchannel-02adb071.cjs} +19 -4
  8. package/dist/broadcastchannel-02adb071.cjs.map +1 -0
  9. package/dist/broadcastchannel.cjs +5 -5
  10. package/dist/broadcastchannel.d.ts +1 -1
  11. package/dist/broadcastchannel.d.ts.map +1 -1
  12. package/dist/broadcastchannel.test.d.ts +3 -0
  13. package/dist/broadcastchannel.test.d.ts.map +1 -0
  14. package/dist/{buffer-9fdf7510.cjs → buffer-5ebf4ddb.cjs} +2 -2
  15. package/dist/{buffer-9fdf7510.cjs.map → buffer-5ebf4ddb.cjs.map} +1 -1
  16. package/dist/buffer.cjs +4 -4
  17. package/dist/cache.cjs +2 -2
  18. package/dist/component.cjs +3 -3
  19. package/dist/decoding.cjs +4 -4
  20. package/dist/{diff-642271b1.cjs → diff-85090e89.cjs} +2 -2
  21. package/dist/{diff-642271b1.cjs.map → diff-85090e89.cjs.map} +1 -1
  22. package/dist/diff.cjs +3 -3
  23. package/dist/encoding.cjs +4 -4
  24. package/dist/{environment-3c81ab2f.cjs → environment-9ecc1776.cjs} +2 -2
  25. package/dist/{environment-3c81ab2f.cjs.map → environment-9ecc1776.cjs.map} +1 -1
  26. package/dist/environment.cjs +3 -3
  27. package/dist/{function-3410854f.cjs → function-0da7a13f.cjs} +2 -2
  28. package/dist/{function-3410854f.cjs.map → function-0da7a13f.cjs.map} +1 -1
  29. package/dist/function.cjs +2 -2
  30. package/dist/index.cjs +9 -9
  31. package/dist/{indexeddb-021a16e6.cjs → indexeddb-7b2c0026.cjs} +2 -3
  32. package/dist/indexeddb-7b2c0026.cjs.map +1 -0
  33. package/dist/indexeddb.cjs +1 -1
  34. package/dist/indexeddb.d.ts.map +1 -1
  35. package/dist/list.cjs +2 -2
  36. package/dist/{logging-a2dc7e43.cjs → logging-00ff6aaf.cjs} +3 -3
  37. package/dist/{logging-a2dc7e43.cjs.map → logging-00ff6aaf.cjs.map} +1 -1
  38. package/dist/logging.cjs +4 -4
  39. package/dist/{object-dcdd6eed.cjs → object-fe9c0021.cjs} +13 -1
  40. package/dist/object-fe9c0021.cjs.map +1 -0
  41. package/dist/object.cjs +2 -1
  42. package/dist/object.cjs.map +1 -1
  43. package/dist/object.d.ts +1 -0
  44. package/dist/object.d.ts.map +1 -1
  45. package/dist/object.test.d.ts +1 -1
  46. package/dist/object.test.d.ts.map +1 -1
  47. package/dist/{prng-74fce167.cjs → prng-7e1c5b0a.cjs} +2 -2
  48. package/dist/{prng-74fce167.cjs.map → prng-7e1c5b0a.cjs.map} +1 -1
  49. package/dist/prng.cjs +5 -5
  50. package/dist/testing.cjs +7 -7
  51. package/dist/url.cjs +1 -1
  52. package/indexeddb.d.ts.map +1 -1
  53. package/indexeddb.js +1 -2
  54. package/object.d.ts +1 -0
  55. package/object.d.ts.map +1 -1
  56. package/object.js +10 -0
  57. package/object.test.d.ts +1 -1
  58. package/object.test.d.ts.map +1 -1
  59. package/package.json +46 -1
  60. package/test.js +2 -0
  61. package/dist/broadcastchannel-825e3d07.cjs.map +0 -1
  62. package/dist/indexeddb-021a16e6.cjs.map +0 -1
  63. package/dist/object-dcdd6eed.cjs.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lib0",
3
- "version": "0.2.57",
3
+ "version": "0.2.59",
4
4
  "description": "",
5
5
  "sideEffects": false,
6
6
  "type": "module",
@@ -14,270 +14,315 @@
14
14
  "exports": {
15
15
  "./package.json": "./package.json",
16
16
  ".": {
17
+ "module": "./index.js",
17
18
  "import": "./index.js",
18
19
  "require": "./dist/index.cjs"
19
20
  },
20
21
  "./array.js": "./array.js",
21
22
  "./dist/array.cjs": "./dist/array.cjs",
22
23
  "./array": {
24
+ "module": "./array.js",
23
25
  "import": "./array.js",
24
26
  "require": "./dist/array.cjs"
25
27
  },
26
28
  "./binary.js": "./binary.js",
27
29
  "./dist/binary.cjs": "./dist/binary.cjs",
28
30
  "./binary": {
31
+ "module": "./binary.js",
29
32
  "import": "./binary.js",
30
33
  "require": "./dist/binary.cjs"
31
34
  },
32
35
  "./broadcastchannel.js": "./broadcastchannel.js",
33
36
  "./dist/broadcastchannel.cjs": "./dist/broadcastchannel.cjs",
34
37
  "./broadcastchannel": {
38
+ "module": "./broadcastchannel.js",
35
39
  "import": "./broadcastchannel.js",
36
40
  "require": "./dist/broadcastchannel.cjs"
37
41
  },
38
42
  "./buffer.js": "./buffer.js",
39
43
  "./dist/buffer.cjs": "./dist/buffer.cjs",
40
44
  "./buffer": {
45
+ "module": "./buffer.js",
41
46
  "import": "./buffer.js",
42
47
  "require": "./dist/buffer.cjs"
43
48
  },
44
49
  "./cache.js": "./cache.js",
45
50
  "./dist/cache.cjs": "./dist/cache.cjs",
46
51
  "./cache": {
52
+ "module": "./cache.js",
47
53
  "import": "./cache.js",
48
54
  "require": "./dist/cache.cjs"
49
55
  },
50
56
  "./component.js": "./component.js",
51
57
  "./dist/component.cjs": "./dist/component.cjs",
52
58
  "./component": {
59
+ "module": "./component.js",
53
60
  "import": "./component.js",
54
61
  "require": "./dist/component.cjs"
55
62
  },
56
63
  "./conditions.js": "./conditions.js",
57
64
  "./dist/conditions.cjs": "./dist/conditions.cjs",
58
65
  "./conditions": {
66
+ "module": "./condititons.js",
59
67
  "import": "./condititons.js",
60
68
  "require": "./dist/conditions.cjs"
61
69
  },
62
70
  "./decoding.js": "./decoding.js",
63
71
  "./dist/decoding.cjs": "./dist/decoding.cjs",
64
72
  "./decoding": {
73
+ "module": "./decoding.js",
65
74
  "import": "./decoding.js",
66
75
  "require": "./dist/decoding.cjs"
67
76
  },
68
77
  "./diff.js": "./diff.js",
69
78
  "./dist/diff.cjs": "./dist/diff.cjs",
70
79
  "./diff": {
80
+ "module": "./diff.js",
71
81
  "import": "./diff.js",
72
82
  "require": "./dist/diff.cjs"
73
83
  },
74
84
  "./dom.js": "./dom.js",
75
85
  "./dist/dom.cjs": "./dist/dom.cjs",
76
86
  "./dom": {
87
+ "module": "./dom.js",
77
88
  "import": "./dom.js",
78
89
  "require": "./dist/dom.cjs"
79
90
  },
80
91
  "./encoding.js": "./encoding.js",
81
92
  "./dist/encoding.cjs": "./dist/encoding.cjs",
82
93
  "./encoding": {
94
+ "module": "./encoding.js",
83
95
  "import": "./encoding.js",
84
96
  "require": "./dist/encoding.cjs"
85
97
  },
86
98
  "./environment.js": "./environment.js",
87
99
  "./dist/environment.cjs": "./dist/environment.cjs",
88
100
  "./environment": {
101
+ "module": "./environment.js",
89
102
  "import": "./environment.js",
90
103
  "require": "./dist/environment.cjs"
91
104
  },
92
105
  "./error.js": "./error.js",
93
106
  "./dist/error.cjs": "./dist/error.cjs",
94
107
  "./error": {
108
+ "module": "./error.js",
95
109
  "import": "./error.js",
96
110
  "require": "./dist/error.cjs"
97
111
  },
98
112
  "./eventloop.js": "./eventloop.js",
99
113
  "./dist/eventloop.cjs": "./dist/eventloop.cjs",
100
114
  "./eventloop": {
115
+ "module": "./eventloop.js",
101
116
  "import": "./eventloop.js",
102
117
  "require": "./dist/eventloop.cjs"
103
118
  },
104
119
  "./function.js": "./function.js",
105
120
  "./dist/function.cjs": "./dist/function.cjs",
106
121
  "./function": {
122
+ "module": "./function.js",
107
123
  "import": "./function.js",
108
124
  "require": "./dist/function.cjs"
109
125
  },
110
126
  "./indexeddb.js": "./indexeddb.js",
111
127
  "./dist/indexeddb.cjs": "./dist/indexeddb.cjs",
112
128
  "./indexeddb": {
129
+ "module": "./indexeddb.js",
113
130
  "import": "./indexeddb.js",
114
131
  "require": "./dist/indexeddb.cjs"
115
132
  },
116
133
  "./isomorphic.js": "./isomorphic.js",
117
134
  "./dist/isomorphic.cjs": "./dist/isomorphic.cjs",
118
135
  "./isomorphic": {
136
+ "module": "./isomorphic.js",
119
137
  "import": "./isomorphic.js",
120
138
  "require": "./dist/isomorphic.cjs"
121
139
  },
122
140
  "./iterator.js": "./iterator.js",
123
141
  "./dist/iterator.cjs": "./dist/iterator.cjs",
124
142
  "./iterator": {
143
+ "module": "./iterator.js",
125
144
  "import": "./iterator.js",
126
145
  "require": "./dist/iterator.cjs"
127
146
  },
128
147
  "./json.js": "./json.js",
129
148
  "./dist/json.cjs": "./dist/json.cjs",
130
149
  "./json": {
150
+ "module": "./json.js",
131
151
  "import": "./json.js",
132
152
  "require": "./dist/json.cjs"
133
153
  },
134
154
  "./list.js": "./list.js",
135
155
  "./dist/list.cjs": "./dist/list.cjs",
136
156
  "./list": {
157
+ "module": "./list.js",
137
158
  "import": "./list.js",
138
159
  "require": "./dist/list.cjs"
139
160
  },
140
161
  "./logging.js": "./logging.js",
141
162
  "./dist/logging.cjs": "./dist/logging.cjs",
142
163
  "./logging": {
164
+ "module": "./logging.js",
143
165
  "import": "./logging.js",
144
166
  "require": "./dist/logging.cjs"
145
167
  },
146
168
  "./map.js": "./map.js",
147
169
  "./dist/map.cjs": "./dist/map.cjs",
148
170
  "./map": {
171
+ "module": "./map.js",
149
172
  "import": "./map.js",
150
173
  "require": "./dist/map.cjs"
151
174
  },
152
175
  "./math.js": "./math.js",
153
176
  "./dist/math.cjs": "./dist/math.cjs",
154
177
  "./math": {
178
+ "module": "./math.js",
155
179
  "import": "./math.js",
156
180
  "require": "./dist/math.cjs"
157
181
  },
158
182
  "./metric.js": "./metric.js",
159
183
  "./dist/metric.cjs": "./dist/metric.cjs",
160
184
  "./metric": {
185
+ "module": "./metric.js",
161
186
  "import": "./metric.js",
162
187
  "require": "./dist/metric.cjs"
163
188
  },
164
189
  "./mutex.js": "./mutex.js",
165
190
  "./dist/mutex.cjs": "./dist/mutex.cjs",
166
191
  "./mutex": {
192
+ "module": "./mutex.js",
167
193
  "import": "./mutex.js",
168
194
  "require": "./dist/mutex.cjs"
169
195
  },
170
196
  "./number.js": "./number.js",
171
197
  "./dist/number.cjs": "./dist/number.cjs",
172
198
  "./number": {
199
+ "module": "./number.js",
173
200
  "import": "./number.js",
174
201
  "require": "./dist/number.cjs"
175
202
  },
176
203
  "./object.js": "./object.js",
177
204
  "./dist/object.cjs": "./dist/object.cjs",
178
205
  "./object": {
206
+ "module": "./object.js",
179
207
  "import": "./object.js",
180
208
  "require": "./dist/object.cjs"
181
209
  },
182
210
  "./observable.js": "./observable.js",
183
211
  "./dist/observable.cjs": "./dist/observable.cjs",
184
212
  "./observable": {
213
+ "module": "./observable.js",
185
214
  "import": "./observable.js",
186
215
  "require": "./dist/observable.cjs"
187
216
  },
188
217
  "./pair.js": "./pair.js",
189
218
  "./dist/pair.cjs": "./dist/pair.cjs",
190
219
  "./pair": {
220
+ "module": "./pair.js",
191
221
  "import": "./pair.js",
192
222
  "require": "./dist/pair.cjs"
193
223
  },
194
224
  "./prng.js": "./prng.js",
195
225
  "./dist/prng.cjs": "./dist/prng.cjs",
196
226
  "./prng": {
227
+ "module": "./prng.js",
197
228
  "import": "./prng.js",
198
229
  "require": "./dist/prng.cjs"
199
230
  },
200
231
  "./promise.js": "./promise.js",
201
232
  "./dist/promise.cjs": "./dist/promise.cjs",
202
233
  "./promise": {
234
+ "module": "./promise.js",
203
235
  "import": "./promise.js",
204
236
  "require": "./dist/promise.cjs"
205
237
  },
206
238
  "./queue.js": "./queue.js",
207
239
  "./dist/queue.cjs": "./dist/queue.cjs",
208
240
  "./queue": {
241
+ "module": "./queue.js",
209
242
  "import": "./queue.js",
210
243
  "require": "./dist/queue.cjs"
211
244
  },
212
245
  "./random.js": "./random.js",
213
246
  "./dist/random.cjs": "./dist/random.cjs",
214
247
  "./random": {
248
+ "module": "./random.js",
215
249
  "import": "./random.js",
216
250
  "require": "./dist/random.cjs"
217
251
  },
218
252
  "./set.js": "./set.js",
219
253
  "./dist/set.cjs": "./dist/set.cjs",
220
254
  "./set": {
255
+ "module": "./set.js",
221
256
  "import": "./set.js",
222
257
  "require": "./dist/set.cjs"
223
258
  },
224
259
  "./sort.js": "./sort.js",
225
260
  "./dist/sort.cjs": "./dist/sort.cjs",
226
261
  "./sort": {
262
+ "module": "./sort.js",
227
263
  "import": "./sort.js",
228
264
  "require": "./dist/sort.cjs"
229
265
  },
230
266
  "./statistics.js": "./statistics.js",
231
267
  "./dist/statistics.cjs": "./dist/statistics.cjs",
232
268
  "./statistics": {
269
+ "module": "./statistics.js",
233
270
  "import": "./statistics.js",
234
271
  "require": "./dist/statistics.cjs"
235
272
  },
236
273
  "./storage.js": "./storage.js",
237
274
  "./dist/storage.cjs": "./dist/storage.cjs",
238
275
  "./storage": {
276
+ "module": "./storage.js",
239
277
  "import": "./storage.js",
240
278
  "require": "./dist/storage.cjs"
241
279
  },
242
280
  "./string.js": "./string.js",
243
281
  "./dist/string.cjs": "./dist/string.cjs",
244
282
  "./string": {
283
+ "module": "./string.js",
245
284
  "import": "./string.js",
246
285
  "require": "./dist/string.cjs"
247
286
  },
248
287
  "./symbol.js": "./symbol.js",
249
288
  "./dist/symbol.cjs": "./dist/symbol.cjs",
250
289
  "./symbol": {
290
+ "module": "./symbol.js",
251
291
  "import": "./symbol.js",
252
292
  "require": "./dist/symbol.cjs"
253
293
  },
254
294
  "./testing.js": "./testing.js",
255
295
  "./dist/testing.cjs": "./dist/testing.cjs",
256
296
  "./testing": {
297
+ "module": "./testing.js",
257
298
  "import": "./testing.js",
258
299
  "require": "./dist/testing.cjs"
259
300
  },
260
301
  "./time.js": "./time.js",
261
302
  "./dist/time.cjs": "./dist/time.cjs",
262
303
  "./time": {
304
+ "module": "./time.js",
263
305
  "import": "./time.js",
264
306
  "require": "./dist/time.cjs"
265
307
  },
266
308
  "./tree.js": "./tree.js",
267
309
  "./dist/tree.cjs": "./dist/tree.cjs",
268
310
  "./tree": {
311
+ "module": "./tree.js",
269
312
  "import": "./tree.js",
270
313
  "require": "./dist/tree.cjs"
271
314
  },
272
315
  "./url.js": "./url.js",
273
316
  "./dist/url.cjs": "./dist/url.cjs",
274
317
  "./url": {
318
+ "module": "./url.js",
275
319
  "import": "./url.js",
276
320
  "require": "./dist/url.cjs"
277
321
  },
278
322
  "./websocket.js": "./websocket.js",
279
323
  "./dist/websocket.cjs": "./dist/websocket.cjs",
280
324
  "./websocket": {
325
+ "module": "./websocket.js",
281
326
  "import": "./websocket.js",
282
327
  "require": "./dist/websocket.cjs"
283
328
  }
package/test.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { runTests } from './testing.js'
2
2
  import * as array from './array.test.js'
3
+ import * as broadcastchannel from './broadcastchannel.test.js'
3
4
  import * as logging from './logging.test.js'
4
5
  import * as string from './string.test.js'
5
6
  import * as encoding from './encoding.test.js'
@@ -39,6 +40,7 @@ if (isBrowser) {
39
40
 
40
41
  runTests({
41
42
  array,
43
+ broadcastchannel,
42
44
  logging,
43
45
  string,
44
46
  encoding,
@@ -1 +0,0 @@
1
- {"version":3,"file":"broadcastchannel-825e3d07.cjs","sources":["../broadcastchannel.js"],"sourcesContent":["/* eslint-env browser */\n\n/**\n * Helpers for cross-tab communication using broadcastchannel with LocalStorage fallback.\n *\n * ```js\n * // In browser window A:\n * broadcastchannel.subscribe('my events', data => console.log(data))\n * broadcastchannel.publish('my events', 'Hello world!') // => A: 'Hello world!' fires synchronously in same tab\n *\n * // In browser window B:\n * broadcastchannel.publish('my events', 'hello from tab B') // => A: 'hello from tab B'\n * ```\n *\n * @module broadcastchannel\n */\n\n// @todo before next major: use Uint8Array instead as buffer object\n\nimport * as map from './map.js'\nimport * as buffer from './buffer.js'\nimport * as storage from './storage.js'\n\n/**\n * @typedef {Object} Channel\n * @property {Set<function(any, any):any>} Channel.subs\n * @property {any} Channel.bc\n */\n\n/**\n * @type {Map<string, Channel>}\n */\nconst channels = new Map()\n\nclass LocalStoragePolyfill {\n /**\n * @param {string} room\n */\n constructor (room) {\n this.room = room\n /**\n * @type {null|function({data:ArrayBuffer}):void}\n */\n this.onmessage = null\n storage.onChange(e => e.key === room && this.onmessage !== null && this.onmessage({ data: buffer.fromBase64(e.newValue || '') }))\n }\n\n /**\n * @param {ArrayBuffer} buf\n */\n postMessage (buf) {\n storage.varStorage.setItem(this.room, buffer.toBase64(buffer.createUint8ArrayFromArrayBuffer(buf)))\n }\n}\n\n// Use BroadcastChannel or Polyfill\nconst BC = typeof BroadcastChannel === 'undefined' ? LocalStoragePolyfill : BroadcastChannel\n\n/**\n * @param {string} room\n * @return {Channel}\n */\nconst getChannel = room =>\n map.setIfUndefined(channels, room, () => {\n const subs = new Set()\n const bc = new BC(room)\n /**\n * @param {{data:ArrayBuffer}} e\n */\n bc.onmessage = e => subs.forEach(sub => sub(e.data, 'broadcastchannel'))\n return {\n bc, subs\n }\n })\n\n/**\n * Subscribe to global `publish` events.\n *\n * @function\n * @param {string} room\n * @param {function(any, any):any} f\n */\nexport const subscribe = (room, f) => getChannel(room).subs.add(f)\n\n/**\n * Unsubscribe from `publish` global events.\n *\n * @function\n * @param {string} room\n * @param {function(any, any):any} f\n */\nexport const unsubscribe = (room, f) => getChannel(room).subs.delete(f)\n\n/**\n * Publish data to all subscribers (including subscribers on this tab)\n *\n * @function\n * @param {string} room\n * @param {any} data\n * @param {any} [origin]\n */\nexport const publish = (room, data, origin = null) => {\n const c = getChannel(room)\n c.bc.postMessage(data)\n c.subs.forEach(sub => sub(data, origin))\n}\n"],"names":["storage.onChange","buffer.fromBase64","storage.varStorage","buffer.toBase64","buffer.createUint8ArrayFromArrayBuffer","map.setIfUndefined"],"mappings":";;;;;;AAAA;AAsBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAM,QAAQ,GAAG,IAAI,GAAG,GAAE;AAC1B;AACA,MAAM,oBAAoB,CAAC;AAC3B;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,IAAI,EAAE;AACrB,IAAI,IAAI,CAAC,IAAI,GAAG,KAAI;AACpB;AACA;AACA;AACA,IAAI,IAAI,CAAC,SAAS,GAAG,KAAI;AACzB,IAAIA,gBAAgB,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAEC,mBAAiB,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,CAAC,EAAC;AACrI,GAAG;AACH;AACA;AACA;AACA;AACA,EAAE,WAAW,CAAC,CAAC,GAAG,EAAE;AACpB,IAAIC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAEC,iBAAe,CAACC,wCAAsC,CAAC,GAAG,CAAC,CAAC,EAAC;AACvG,GAAG;AACH,CAAC;AACD;AACA;AACA,MAAM,EAAE,GAAG,OAAO,gBAAgB,KAAK,WAAW,GAAG,oBAAoB,GAAG,iBAAgB;AAC5F;AACA;AACA;AACA;AACA;AACA,MAAM,UAAU,GAAG,IAAI;AACvB,EAAEC,kBAAkB,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM;AAC3C,IAAI,MAAM,IAAI,GAAG,IAAI,GAAG,GAAE;AAC1B,IAAI,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,IAAI,EAAC;AAC3B;AACA;AACA;AACA,IAAI,EAAE,CAAC,SAAS,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,kBAAkB,CAAC,EAAC;AAC5E,IAAI,OAAO;AACX,MAAM,EAAE,EAAE,IAAI;AACd,KAAK;AACL,GAAG,EAAC;AACJ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,SAAS,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC;AAClE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,WAAW,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAC;AACvE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACY,MAAC,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,KAAK;AACtD,EAAE,MAAM,CAAC,GAAG,UAAU,CAAC,IAAI,EAAC;AAC5B,EAAE,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,EAAC;AACxB,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,EAAC;AAC1C;;;;;;;;;;;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"indexeddb-021a16e6.cjs","sources":["../indexeddb.js"],"sourcesContent":["/* eslint-env browser */\n\n/**\n * Helpers to work with IndexedDB.\n *\n * @module indexeddb\n */\n\nimport * as promise from './promise.js'\nimport * as error from './error.js'\n\n/* istanbul ignore next */\n/**\n * IDB Request to Promise transformer\n *\n * @param {IDBRequest} request\n * @return {Promise<any>}\n */\nexport const rtop = request => promise.create((resolve, reject) => {\n /* istanbul ignore next */\n // @ts-ignore\n request.onerror = event => reject(new Error(event.target.error))\n /* istanbul ignore next */\n // @ts-ignore\n request.onblocked = () => location.reload()\n // @ts-ignore\n request.onsuccess = event => resolve(event.target.result)\n})\n\n/* istanbul ignore next */\n/**\n * @param {string} name\n * @param {function(IDBDatabase):any} initDB Called when the database is first created\n * @return {Promise<IDBDatabase>}\n */\nexport const openDB = (name, initDB) => promise.create((resolve, reject) => {\n const request = indexedDB.open(name)\n /**\n * @param {any} event\n */\n request.onupgradeneeded = event => initDB(event.target.result)\n /* istanbul ignore next */\n /**\n * @param {any} event\n */\n request.onerror = event => reject(error.create(event.target.error))\n /* istanbul ignore next */\n request.onblocked = () => location.reload()\n /**\n * @param {any} event\n */\n request.onsuccess = event => {\n /**\n * @type {IDBDatabase}\n */\n const db = event.target.result\n /* istanbul ignore next */\n db.onversionchange = () => { db.close() }\n /* istanbul ignore if */\n if (typeof addEventListener !== 'undefined') {\n addEventListener('unload', () => db.close())\n }\n resolve(db)\n }\n})\n\n/* istanbul ignore next */\n/**\n * @param {string} name\n */\nexport const deleteDB = name => rtop(indexedDB.deleteDatabase(name))\n\n/* istanbul ignore next */\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 {IDBDatabase} db\n * @param {Array<string>} stores\n * @param {\"readwrite\"|\"readonly\"} [access]\n * @return {Array<IDBObjectStore>}\n */\nexport const transact = (db, stores, access = 'readwrite') => {\n const transaction = db.transaction(stores, access)\n return stores.map(store => getStore(transaction, store))\n}\n\n/* istanbul ignore next */\n/**\n * @param {IDBObjectStore} store\n * @param {IDBKeyRange} [range]\n * @return {Promise<number>}\n */\nexport const count = (store, range) =>\n rtop(store.count(range))\n\n/* istanbul ignore next */\n/**\n * @param {IDBObjectStore} store\n * @param {String | number | ArrayBuffer | Date | Array<any> } key\n * @return {Promise<String | number | ArrayBuffer | Date | Array<any>>}\n */\nexport const get = (store, key) =>\n rtop(store.get(key))\n\n/* istanbul ignore next */\n/**\n * @param {IDBObjectStore} store\n * @param {String | number | ArrayBuffer | Date | IDBKeyRange | Array<any> } key\n */\nexport const del = (store, key) =>\n rtop(store.delete(key))\n\n/* istanbul ignore next */\n/**\n * @param {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) =>\n rtop(store.put(item, key))\n\n/* istanbul ignore next */\n/**\n * @param {IDBObjectStore} store\n * @param {String | number | ArrayBuffer | Date | boolean} item\n * @param {String | number | ArrayBuffer | Date | Array<any>} key\n * @return {Promise<any>}\n */\nexport const add = (store, item, key) =>\n rtop(store.add(item, key))\n\n/* istanbul ignore next */\n/**\n * @param {IDBObjectStore} store\n * @param {String | number | ArrayBuffer | Date} item\n * @return {Promise<number>} Returns the generated key\n */\nexport const addAutoKey = (store, item) =>\n rtop(store.add(item))\n\n/* istanbul ignore next */\n/**\n * @param {IDBObjectStore} store\n * @param {IDBKeyRange} [range]\n * @param {number} [limit]\n * @return {Promise<Array<any>>}\n */\nexport const getAll = (store, range, limit) =>\n rtop(store.getAll(range, limit))\n\n/* istanbul ignore next */\n/**\n * @param {IDBObjectStore} store\n * @param {IDBKeyRange} [range]\n * @param {number} [limit]\n * @return {Promise<Array<any>>}\n */\nexport const getAllKeys = (store, range, limit) =>\n rtop(store.getAllKeys(range, limit))\n\n/**\n * @param {IDBObjectStore} store\n * @param {IDBKeyRange|null} query\n * @param {'next'|'prev'|'nextunique'|'prevunique'} direction\n * @return {Promise<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).then(() => first)\n}\n\n/**\n * @param {IDBObjectStore} store\n * @param {IDBKeyRange?} [range]\n * @return {Promise<any>}\n */\nexport const getLastKey = (store, range = null) => queryFirst(store, range, 'prev')\n\n/**\n * @param {IDBObjectStore} store\n * @param {IDBKeyRange?} [range]\n * @return {Promise<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/* istanbul ignore next */\n/**\n * @param {IDBObjectStore} store\n * @param {IDBKeyRange} [range]\n * @param {number} [limit]\n * @return {Promise<Array<KeyValuePair>>}\n */\nexport const getAllKeysValues = (store, range, limit) =>\n // @ts-ignore\n promise.all([getAllKeys(store, range, limit), getAll(store, range, limit)]).then(([ks, vs]) => ks.map((k, i) => ({ k, v: vs[i] })))\n\n/* istanbul ignore next */\n/**\n * @param {any} request\n * @param {function(IDBCursorWithValue):void|boolean|Promise<void|boolean>} f\n * @return {Promise<void>}\n */\nconst iterateOnRequest = (request, f) => promise.create((resolve, reject) => {\n /* istanbul ignore next */\n request.onerror = reject\n /**\n * @param {any} event\n */\n request.onsuccess = async event => {\n const cursor = event.target.result\n const res = await f(cursor)\n if (cursor === null || res === false) {\n return resolve()\n }\n cursor.continue()\n }\n})\n\n/* istanbul ignore next */\n/**\n * Iterate on keys and values\n * @param {IDBObjectStore} store\n * @param {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') =>\n iterateOnRequest(store.openCursor(keyrange, direction), cursor => f(cursor.value, cursor.key))\n\n/* istanbul ignore next */\n/**\n * Iterate on the keys (no values)\n *\n * @param {IDBObjectStore} store\n * @param {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') =>\n iterateOnRequest(store.openKeyCursor(keyrange, direction), cursor => f(cursor.key))\n\n/* istanbul ignore next */\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/* istanbul ignore next */\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/* istanbul ignore next */\n/**\n * @param {any} upper\n * @param {boolean} upperOpen\n */\nexport const createIDBKeyRangeUpperBound = (upper, upperOpen) => IDBKeyRange.upperBound(upper, upperOpen)\n\n/* istanbul ignore next */\n/**\n * @param {any} lower\n * @param {boolean} lowerOpen\n */\nexport const createIDBKeyRangeLowerBound = (lower, lowerOpen) => IDBKeyRange.lowerBound(lower, lowerOpen)\n"],"names":["promise.create","error.create","promise.all"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"object-dcdd6eed.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 * @param {Object<string,any>} obj\n * @param {function(any,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 * @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 * @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 * @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<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 || (length(a) === length(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;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;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;AACY,MAAC,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,OAAM;AAC7C;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;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,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}