lib0 0.2.62 → 0.2.64
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.
- package/README.md +5 -5
- package/array.d.ts +5 -5
- package/array.d.ts.map +1 -1
- package/array.js +26 -10
- package/array.test.d.ts +6 -4
- package/array.test.d.ts.map +1 -1
- package/bin/gendocs.js +0 -1
- package/bin/gentesthtml.js +54 -0
- package/broadcastchannel.d.ts.map +1 -1
- package/broadcastchannel.js +4 -4
- package/buffer.d.ts.map +1 -1
- package/buffer.js +6 -4
- package/conditions.js +1 -1
- package/coverage/tmp/coverage-17397-1678220559587-0.json +1 -0
- package/crypto.d.ts.map +1 -1
- package/crypto.js +6 -5
- package/crypto.test.d.ts.map +1 -1
- package/decoding.d.ts.map +1 -1
- package/decoding.js +7 -4
- package/deno.json +7 -0
- package/deno.lock +122 -0
- package/dist/{array-42d0736b.cjs → array-a1682de6.cjs} +28 -12
- package/dist/array-a1682de6.cjs.map +1 -0
- package/dist/array.cjs +2 -2
- package/dist/array.d.ts +5 -5
- package/dist/array.d.ts.map +1 -1
- package/dist/array.test.d.ts +6 -4
- package/dist/array.test.d.ts.map +1 -1
- package/dist/{broadcastchannel-8d21c21c.cjs → broadcastchannel-4e5909e2.cjs} +8 -8
- package/dist/broadcastchannel-4e5909e2.cjs.map +1 -0
- package/dist/broadcastchannel.cjs +12 -12
- package/dist/broadcastchannel.d.ts.map +1 -1
- package/dist/{buffer-22bb9fae.cjs → buffer-9b566988.cjs} +20 -16
- package/dist/buffer-9b566988.cjs.map +1 -0
- package/dist/buffer.cjs +11 -11
- package/dist/buffer.d.ts.map +1 -1
- package/dist/cache.cjs +7 -7
- package/dist/component.cjs +9 -9
- package/dist/{conditions-fb475c70.cjs → conditions-f5c0c102.cjs} +2 -2
- package/dist/conditions-f5c0c102.cjs.map +1 -0
- package/dist/conditions.cjs +1 -1
- package/dist/crypto.cjs +17 -16
- package/dist/crypto.cjs.map +1 -1
- package/dist/crypto.d.ts.map +1 -1
- package/dist/crypto.test.d.ts.map +1 -1
- package/dist/decoding.cjs +11 -11
- package/dist/decoding.d.ts.map +1 -1
- package/dist/{diff-ee50c530.cjs → diff-55061848.cjs} +2 -2
- package/dist/{diff-ee50c530.cjs.map → diff-55061848.cjs.map} +1 -1
- package/dist/diff.cjs +5 -5
- package/dist/{dom-58958c04.cjs → dom-7ef10fba.cjs} +4 -32
- package/dist/dom-7ef10fba.cjs.map +1 -0
- package/dist/dom.cjs +2 -2
- package/dist/dom.d.ts.map +1 -1
- package/dist/encoding.cjs +11 -11
- package/dist/encoding.d.ts.map +1 -1
- package/dist/encoding.test.d.ts +2 -1
- package/dist/encoding.test.d.ts.map +1 -1
- package/dist/{environment-f6386808.cjs → environment-01c0e75b.cjs} +20 -19
- package/dist/environment-01c0e75b.cjs.map +1 -0
- package/dist/environment.cjs +8 -8
- package/dist/environment.d.ts.map +1 -1
- package/dist/{error-873c9cbf.cjs → error-8582d695.cjs} +4 -4
- package/dist/error-8582d695.cjs.map +1 -0
- package/dist/error.cjs +1 -1
- package/dist/error.d.ts.map +1 -1
- package/dist/{eventloop-c60b5658.cjs → eventloop-d0571621.cjs} +5 -5
- package/dist/eventloop-d0571621.cjs.map +1 -0
- package/dist/eventloop.cjs +1 -1
- package/dist/eventloop.d.ts.map +1 -1
- package/dist/eventloop.test.d.ts +6 -5
- package/dist/eventloop.test.d.ts.map +1 -1
- package/dist/{function-40d38a5b.cjs → function-35e8ddea.cjs} +6 -3
- package/dist/function-35e8ddea.cjs.map +1 -0
- package/dist/function.cjs +4 -4
- package/dist/function.d.ts.map +1 -1
- package/dist/function.test.d.ts +3 -1
- package/dist/function.test.d.ts.map +1 -1
- package/dist/index.cjs +22 -22
- package/dist/{indexeddb-7b2c0026.cjs → indexeddb-1f25af34.cjs} +7 -30
- package/dist/indexeddb-1f25af34.cjs.map +1 -0
- package/dist/indexeddb.cjs +4 -4
- package/dist/indexeddb.d.ts.map +1 -1
- package/dist/list.cjs +7 -6
- package/dist/list.cjs.map +1 -1
- package/dist/list.d.ts.map +1 -1
- package/dist/list.test.d.ts +2 -2
- package/dist/list.test.d.ts.map +1 -1
- package/dist/{logging-ba24d049.cjs → logging-641c32f4.cjs} +55 -50
- package/dist/logging-641c32f4.cjs.map +1 -0
- package/dist/logging.cjs +12 -12
- package/dist/logging.d.ts.map +1 -1
- package/dist/{map-28a001c9.cjs → map-9a5915e4.cjs} +6 -5
- package/dist/map-9a5915e4.cjs.map +1 -0
- package/dist/map.cjs +1 -1
- package/dist/map.d.ts +1 -1
- package/dist/map.d.ts.map +1 -1
- package/dist/map.test.d.ts +1 -1
- package/dist/map.test.d.ts.map +1 -1
- package/dist/{number-e62129bc.cjs → number-f97e141a.cjs} +2 -2
- package/dist/number-f97e141a.cjs.map +1 -0
- package/dist/number.cjs +1 -1
- package/dist/{object-fe9c0021.cjs → object-aad630ed.cjs} +6 -3
- package/dist/object-aad630ed.cjs.map +1 -0
- package/dist/object.cjs +1 -1
- package/dist/object.d.ts +3 -3
- package/dist/object.d.ts.map +1 -1
- package/dist/object.test.d.ts.map +1 -1
- package/dist/observable.cjs +3 -3
- package/dist/{prng-4493ba85.cjs → prng-cd2451c9.cjs} +5 -4
- package/dist/prng-cd2451c9.cjs.map +1 -0
- package/dist/prng.cjs +12 -12
- package/dist/prng.d.ts.map +1 -1
- package/dist/{promise-1a9fe712.cjs → promise-a4f32c85.cjs} +3 -3
- package/dist/promise-a4f32c85.cjs.map +1 -0
- package/dist/promise.cjs +2 -2
- package/dist/random.test.d.ts +1 -0
- package/dist/random.test.d.ts.map +1 -1
- package/dist/rollup.config.d.ts +2 -28
- package/dist/{set-b596ef38.cjs → set-0f209abb.cjs} +4 -7
- package/dist/set-0f209abb.cjs.map +1 -0
- package/dist/set.cjs +1 -1
- package/dist/set.d.ts.map +1 -1
- package/dist/set.test.d.ts +1 -1
- package/dist/set.test.d.ts.map +1 -1
- package/dist/sort.test.d.ts +2 -1
- package/dist/sort.test.d.ts.map +1 -1
- package/dist/storage.cjs +6 -5
- package/dist/storage.cjs.map +1 -1
- package/dist/storage.d.ts.map +1 -1
- package/dist/{string-ad04f734.cjs → string-b1bee84b.cjs} +8 -7
- package/dist/string-b1bee84b.cjs.map +1 -0
- package/dist/string.cjs +1 -1
- package/dist/string.d.ts.map +1 -1
- package/dist/symbol.test.d.ts +3 -0
- package/dist/symbol.test.d.ts.map +1 -0
- package/dist/testing.cjs +42 -40
- package/dist/testing.cjs.map +1 -1
- package/dist/testing.d.ts +1 -1
- package/dist/testing.d.ts.map +1 -1
- package/dist/testing.test.d.ts +1 -0
- package/dist/testing.test.d.ts.map +1 -1
- package/dist/{time-e00067da.cjs → time-bc2081b9.cjs} +2 -2
- package/dist/time-bc2081b9.cjs.map +1 -0
- package/dist/time.cjs +1 -1
- package/dist/{tree-b67c7947.cjs → tree-9f3c8837.cjs} +23 -22
- package/dist/tree-9f3c8837.cjs.map +1 -0
- package/dist/tree.cjs +1 -1
- package/dist/tree.d.ts.map +1 -1
- package/dist/url.cjs +2 -2
- package/dist/url.cjs.map +1 -1
- package/dist/webcrypto.deno.cjs +12 -0
- package/dist/webcrypto.deno.cjs.map +1 -0
- package/dist/webcrypto.deno.d.ts +3 -0
- package/dist/webcrypto.deno.d.ts.map +1 -0
- package/dist/{websocket-a48155c2.cjs → websocket-85f1d597.cjs} +2 -2
- package/dist/{websocket-a48155c2.cjs.map → websocket-85f1d597.cjs.map} +1 -1
- package/dist/websocket.cjs +5 -5
- package/dom.d.ts.map +1 -1
- package/dom.js +2 -30
- package/encoding.d.ts.map +1 -1
- package/encoding.js +2 -3
- package/encoding.test.d.ts +2 -1
- package/encoding.test.d.ts.map +1 -1
- package/environment.d.ts.map +1 -1
- package/environment.js +15 -14
- package/error.d.ts.map +1 -1
- package/error.js +3 -3
- package/eventloop.d.ts.map +1 -1
- package/eventloop.js +4 -4
- package/eventloop.test.d.ts +6 -5
- package/eventloop.test.d.ts.map +1 -1
- package/function.d.ts.map +1 -1
- package/function.js +3 -0
- package/function.test.d.ts +3 -1
- package/function.test.d.ts.map +1 -1
- package/indexeddb.d.ts.map +1 -1
- package/indexeddb.js +4 -27
- package/list.d.ts.map +1 -1
- package/list.js +2 -1
- package/list.test.d.ts +2 -2
- package/list.test.d.ts.map +1 -1
- package/logging.d.ts.map +1 -1
- package/logging.js +47 -42
- package/map.d.ts +1 -1
- package/map.d.ts.map +1 -1
- package/map.js +5 -4
- package/map.test.d.ts +1 -1
- package/map.test.d.ts.map +1 -1
- package/number.js +1 -1
- package/object.d.ts +3 -3
- package/object.d.ts.map +1 -1
- package/object.js +5 -2
- package/object.test.d.ts.map +1 -1
- package/package.json +16 -12
- package/prng.d.ts.map +1 -1
- package/prng.js +2 -1
- package/promise.js +1 -1
- package/random.test.d.ts +1 -0
- package/random.test.d.ts.map +1 -1
- package/rollup.config.d.ts +2 -28
- package/set.d.ts.map +1 -1
- package/set.js +3 -6
- package/set.test.d.ts +1 -1
- package/set.test.d.ts.map +1 -1
- package/sort.test.d.ts +2 -1
- package/sort.test.d.ts.map +1 -1
- package/storage.d.ts.map +1 -1
- package/storage.js +6 -5
- package/string.d.ts.map +1 -1
- package/string.js +7 -6
- package/symbol.test.d.ts +3 -0
- package/symbol.test.d.ts.map +1 -0
- package/test.html +148 -2
- package/test.js +5 -3
- package/testing.d.ts +1 -1
- package/testing.d.ts.map +1 -1
- package/testing.js +24 -22
- package/testing.test.d.ts +1 -0
- package/testing.test.d.ts.map +1 -1
- package/time.js +1 -1
- package/tree.d.ts.map +1 -1
- package/tree.js +22 -21
- package/url.js +1 -1
- package/webcrypto.deno.d.ts +3 -0
- package/webcrypto.deno.d.ts.map +1 -0
- package/webcrypto.deno.js +4 -0
- package/dist/array-42d0736b.cjs.map +0 -1
- package/dist/broadcastchannel-8d21c21c.cjs.map +0 -1
- package/dist/buffer-22bb9fae.cjs.map +0 -1
- package/dist/conditions-fb475c70.cjs.map +0 -1
- package/dist/dom-58958c04.cjs.map +0 -1
- package/dist/environment-f6386808.cjs.map +0 -1
- package/dist/error-873c9cbf.cjs.map +0 -1
- package/dist/eventloop-c60b5658.cjs.map +0 -1
- package/dist/function-40d38a5b.cjs.map +0 -1
- package/dist/indexeddb-7b2c0026.cjs.map +0 -1
- package/dist/logging-ba24d049.cjs.map +0 -1
- package/dist/map-28a001c9.cjs.map +0 -1
- package/dist/number-e62129bc.cjs.map +0 -1
- package/dist/object-fe9c0021.cjs.map +0 -1
- package/dist/prng-4493ba85.cjs.map +0 -1
- package/dist/promise-1a9fe712.cjs.map +0 -1
- package/dist/set-b596ef38.cjs.map +0 -1
- package/dist/string-ad04f734.cjs.map +0 -1
- package/dist/time-e00067da.cjs.map +0 -1
- package/dist/tree-b67c7947.cjs.map +0 -1
package/README.md
CHANGED
|
@@ -78,7 +78,7 @@ import module from 'lib0/[module].js'
|
|
|
78
78
|
<details><summary><b>[lib0/array]</b> Utility module to work with Arrays.</summary>
|
|
79
79
|
<pre>import * as array from 'lib0/array'</pre>
|
|
80
80
|
<dl>
|
|
81
|
-
<b><code>array.last(arr:
|
|
81
|
+
<b><code>array.last(arr: ArrayLike<L>): L</code></b><br>
|
|
82
82
|
<dd><p>Return the last element of an array. The element must exist</p></dd>
|
|
83
83
|
<b><code>array.create(): Array<C></code></b><br>
|
|
84
84
|
<b><code>array.copy(a: Array<D>): Array<D></code></b><br>
|
|
@@ -86,15 +86,15 @@ import module from 'lib0/[module].js'
|
|
|
86
86
|
<dd><p>Append elements from src to dest</p></dd>
|
|
87
87
|
<b><code>array.from(arraylike: ArrayLike<T>|Iterable<T>): T</code></b><br>
|
|
88
88
|
<dd><p>Transforms something array-like to an actual Array.</p></dd>
|
|
89
|
-
<b><code>array.every(arr:
|
|
89
|
+
<b><code>array.every(arr: ARR, f: function(ITEM, number, ARR):boolean): boolean</code></b><br>
|
|
90
90
|
<dd><p>True iff condition holds on every element in the Array.</p></dd>
|
|
91
|
-
<b><code>array.some(arr:
|
|
91
|
+
<b><code>array.some(arr: ARR, f: function(S, number, ARR):boolean): boolean</code></b><br>
|
|
92
92
|
<dd><p>True iff condition holds on some element in the Array.</p></dd>
|
|
93
|
-
<b><code>array.equalFlat(a:
|
|
93
|
+
<b><code>array.equalFlat(a: ArrayLike<ELEM>, b: ArrayLike<ELEM>): boolean</code></b><br>
|
|
94
94
|
<b><code>array.flatten(arr: Array<Array<ELEM>>): Array<ELEM></code></b><br>
|
|
95
95
|
<b><code>array.isArray</code></b><br>
|
|
96
96
|
<b><code>array.unique(arr: Array<T>): Array<T></code></b><br>
|
|
97
|
-
<b><code>array.uniqueBy(arr:
|
|
97
|
+
<b><code>array.uniqueBy(arr: ArrayLike<T>, mapper: function(T):M): Array<T></code></b><br>
|
|
98
98
|
</dl>
|
|
99
99
|
</details>
|
|
100
100
|
<details><summary><b>[lib0/binary]</b> Binary data constants.</summary>
|
package/array.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export function last<L>(arr: L
|
|
1
|
+
export function last<L>(arr: ArrayLike<L>): L;
|
|
2
2
|
export function create<C>(): C[];
|
|
3
3
|
export function copy<D>(a: D[]): D[];
|
|
4
4
|
export function appendTo<M>(dest: M[], src: M[]): void;
|
|
@@ -16,11 +16,11 @@ export const from: {
|
|
|
16
16
|
<T_3>(iterable: Iterable<T_3> | ArrayLike<T_3>): T_3[];
|
|
17
17
|
<T_4, U_1>(iterable: Iterable<T_4> | ArrayLike<T_4>, mapfn: (v: T_4, k: number) => U_1, thisArg?: any): U_1[];
|
|
18
18
|
};
|
|
19
|
-
export function every<ITEM
|
|
20
|
-
export function some<S
|
|
21
|
-
export function equalFlat<ELEM>(a: ELEM
|
|
19
|
+
export function every<ITEM, ARR extends ArrayLike<ITEM>>(arr: ARR, f: (arg0: ITEM, arg1: number, arg2: ARR) => boolean): boolean;
|
|
20
|
+
export function some<S, ARR extends ArrayLike<S>>(arr: ARR, f: (arg0: S, arg1: number, arg2: ARR) => boolean): boolean;
|
|
21
|
+
export function equalFlat<ELEM>(a: ArrayLike<ELEM>, b: ArrayLike<ELEM>): boolean;
|
|
22
22
|
export function flatten<ELEM>(arr: ELEM[][]): ELEM[];
|
|
23
23
|
export const isArray: (arg: any) => arg is any[];
|
|
24
24
|
export function unique<T_1>(arr: T_1[]): T_1[];
|
|
25
|
-
export function uniqueBy<T_1, M>(arr: T_1
|
|
25
|
+
export function uniqueBy<T_1, M>(arr: ArrayLike<T_1>, mapper: (arg0: T_1) => M): T_1[];
|
|
26
26
|
//# sourceMappingURL=array.d.ts.map
|
package/array.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["array.js"],"names":[],"mappings":"AAeO,
|
|
1
|
+
{"version":3,"file":"array.d.ts","sourceRoot":"","sources":["array.js"],"names":[],"mappings":"AAeO,8CAAuC;AAMvC,iCAAiD;AAOjD,qCAAqD;AASrD,uDAIN;AAED;;;;;;;GAOG;AACH;;;;;EAA8B;AAavB,yFAHmB,MAAM,gBAAO,OAAO,GAClC,OAAO,CASlB;AAYM,+EAHgB,MAAM,gBAAO,OAAO,GAC/B,OAAO,CASlB;AASM,yEAFK,OAAO,CAEqF;AAOjG,qDAAoE;AAE3E,iDAAoC;AAO7B,+CAAyC;AASzC,uFAkBN"}
|
package/array.js
CHANGED
|
@@ -10,7 +10,7 @@ import * as set from './set.js'
|
|
|
10
10
|
* Return the last element of an array. The element must exist
|
|
11
11
|
*
|
|
12
12
|
* @template L
|
|
13
|
-
* @param {
|
|
13
|
+
* @param {ArrayLike<L>} arr
|
|
14
14
|
* @return {L}
|
|
15
15
|
*/
|
|
16
16
|
export const last = arr => arr[arr.length - 1]
|
|
@@ -56,29 +56,45 @@ export const from = Array.from
|
|
|
56
56
|
*
|
|
57
57
|
* @function
|
|
58
58
|
* @template ITEM
|
|
59
|
+
* @template {ArrayLike<ITEM>} ARR
|
|
59
60
|
*
|
|
60
|
-
* @param {
|
|
61
|
-
* @param {function(ITEM, number,
|
|
61
|
+
* @param {ARR} arr
|
|
62
|
+
* @param {function(ITEM, number, ARR):boolean} f
|
|
62
63
|
* @return {boolean}
|
|
63
64
|
*/
|
|
64
|
-
export const every = (arr, f) =>
|
|
65
|
+
export const every = (arr, f) => {
|
|
66
|
+
for (let i = 0; i < arr.length; i++) {
|
|
67
|
+
if (!f(arr[i], i, arr)) {
|
|
68
|
+
return false
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
return true
|
|
72
|
+
}
|
|
65
73
|
|
|
66
74
|
/**
|
|
67
75
|
* True iff condition holds on some element in the Array.
|
|
68
76
|
*
|
|
69
77
|
* @function
|
|
70
78
|
* @template S
|
|
71
|
-
* @
|
|
72
|
-
* @param {
|
|
79
|
+
* @template {ArrayLike<S>} ARR
|
|
80
|
+
* @param {ARR} arr
|
|
81
|
+
* @param {function(S, number, ARR):boolean} f
|
|
73
82
|
* @return {boolean}
|
|
74
83
|
*/
|
|
75
|
-
export const some = (arr, f) =>
|
|
84
|
+
export const some = (arr, f) => {
|
|
85
|
+
for (let i = 0; i < arr.length; i++) {
|
|
86
|
+
if (f(arr[i], i, arr)) {
|
|
87
|
+
return true
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
return false
|
|
91
|
+
}
|
|
76
92
|
|
|
77
93
|
/**
|
|
78
94
|
* @template ELEM
|
|
79
95
|
*
|
|
80
|
-
* @param {
|
|
81
|
-
* @param {
|
|
96
|
+
* @param {ArrayLike<ELEM>} a
|
|
97
|
+
* @param {ArrayLike<ELEM>} b
|
|
82
98
|
* @return {boolean}
|
|
83
99
|
*/
|
|
84
100
|
export const equalFlat = (a, b) => a.length === b.length && every(a, (item, index) => item === b[index])
|
|
@@ -102,7 +118,7 @@ export const unique = arr => from(set.from(arr))
|
|
|
102
118
|
/**
|
|
103
119
|
* @template T
|
|
104
120
|
* @template M
|
|
105
|
-
* @param {
|
|
121
|
+
* @param {ArrayLike<T>} arr
|
|
106
122
|
* @param {function(T):M} mapper
|
|
107
123
|
* @return {Array<T>}
|
|
108
124
|
*/
|
package/array.test.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
export function testAppend(
|
|
2
|
-
export function
|
|
3
|
-
export function
|
|
4
|
-
export function
|
|
1
|
+
export function testAppend(_tc: t.TestCase): void;
|
|
2
|
+
export function testBasic(_tc: t.TestCase): void;
|
|
3
|
+
export function testflatten(_tc: t.TestCase): void;
|
|
4
|
+
export function testEvery(_tc: t.TestCase): void;
|
|
5
|
+
export function testIsArray(_tc: t.TestCase): void;
|
|
6
|
+
export function testUnique(_tc: t.TestCase): void;
|
|
5
7
|
import * as t from "./testing.js";
|
|
6
8
|
//# sourceMappingURL=array.test.d.ts.map
|
package/array.test.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"array.test.d.ts","sourceRoot":"","sources":["array.test.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"array.test.d.ts","sourceRoot":"","sources":["array.test.js"],"names":[],"mappings":"AAMO,gCAFI,EAAE,QAAQ,QAMpB;AAKM,+BAFI,EAAE,QAAQ,QAMpB;AAKM,iCAFI,EAAE,QAAQ,QAKpB;AAKM,+BAFI,EAAE,QAAQ,QAQpB;AAKM,iCAFI,EAAE,QAAQ,QASpB;AAKM,gCAFI,EAAE,QAAQ,QAOpB"}
|
package/bin/gendocs.js
CHANGED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
|
|
2
|
+
import fs from 'fs'
|
|
3
|
+
import * as object from '../object.js'
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* @type {Object<string,string>}
|
|
7
|
+
*/
|
|
8
|
+
const exports = {}
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* @param {any} v
|
|
12
|
+
* @param {string} k
|
|
13
|
+
* @param {string} pkgName
|
|
14
|
+
* @param {string} pathPrefix
|
|
15
|
+
*/
|
|
16
|
+
const extractModMap = (v, k, pkgName, pathPrefix) => {
|
|
17
|
+
if (k[0] !== '.') return
|
|
18
|
+
if (typeof v === 'object') {
|
|
19
|
+
extractModMap(v.browser || v.module || v.import, k, pkgName, pathPrefix)
|
|
20
|
+
} else if (v && v[0] === '.') {
|
|
21
|
+
exports[pkgName + k.slice(1)] = pathPrefix + v.slice(1)
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
const rootPkgJson = JSON.parse(fs.readFileSync('./package.json'))
|
|
25
|
+
/**
|
|
26
|
+
* @param {object} pkgJson
|
|
27
|
+
* @param {string} pathPrefix
|
|
28
|
+
*/
|
|
29
|
+
const extractPkgJsonInfo = (pkgJson, pathPrefix) => object.forEach(pkgJson.exports, (v, k) => extractModMap(v, k, pkgJson.name, pathPrefix))
|
|
30
|
+
extractPkgJsonInfo(rootPkgJson, '.')
|
|
31
|
+
object.forEach(rootPkgJson.dependencies, (_v, depName) => {
|
|
32
|
+
const prefix = `./node_modules/${depName}`
|
|
33
|
+
const depPkgJson = JSON.parse(fs.readFileSync(prefix + '/package.json'))
|
|
34
|
+
extractPkgJsonInfo(depPkgJson, prefix)
|
|
35
|
+
})
|
|
36
|
+
|
|
37
|
+
const testHtml = `
|
|
38
|
+
<!DOCTYPE html>
|
|
39
|
+
<html>
|
|
40
|
+
<head>
|
|
41
|
+
<title>Testing lib0</title>
|
|
42
|
+
<script type="importmap">
|
|
43
|
+
{
|
|
44
|
+
"imports": ${JSON.stringify(exports, null, 2)}
|
|
45
|
+
}
|
|
46
|
+
</script>
|
|
47
|
+
</head>
|
|
48
|
+
<body>
|
|
49
|
+
<script type="module" src="./test.js"></script>
|
|
50
|
+
</body>
|
|
51
|
+
</html>
|
|
52
|
+
`
|
|
53
|
+
|
|
54
|
+
console.log(testHtml)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"broadcastchannel.d.ts","sourceRoot":"","sources":["broadcastchannel.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"broadcastchannel.d.ts","sourceRoot":"","sources":["broadcastchannel.js"],"names":[],"mappings":"AAuFO,gCAHI,MAAM,YACG,GAAG,QAAE,GAAG,KAAE,GAAG,UAAb,GAAG,QAAE,GAAG,KAAE,GAAG,CAKhC;AASM,kCAHI,MAAM,YACG,GAAG,QAAE,GAAG,KAAE,GAAG,WAUhC;AAUM,8BAJI,MAAM,QACN,GAAG,WACH,GAAG,QAMb;;UA/Fa,WAAa,GAAG,QAAE,GAAG,KAAE,GAAG,CAAC;QAC3B,GAAG"}
|
package/broadcastchannel.js
CHANGED
|
@@ -33,7 +33,7 @@ import * as storage from './storage.js'
|
|
|
33
33
|
*/
|
|
34
34
|
const channels = new Map()
|
|
35
35
|
|
|
36
|
-
/*
|
|
36
|
+
/* c8 ignore start */
|
|
37
37
|
class LocalStoragePolyfill {
|
|
38
38
|
/**
|
|
39
39
|
* @param {string} room
|
|
@@ -54,9 +54,10 @@ class LocalStoragePolyfill {
|
|
|
54
54
|
storage.varStorage.setItem(this.room, buffer.toBase64(buffer.createUint8ArrayFromArrayBuffer(buf)))
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
+
/* c8 ignore stop */
|
|
57
58
|
|
|
58
|
-
/* istanbul ignore next */
|
|
59
59
|
// Use BroadcastChannel or Polyfill
|
|
60
|
+
/* c8 ignore next */
|
|
60
61
|
const BC = typeof BroadcastChannel === 'undefined' ? LocalStoragePolyfill : BroadcastChannel
|
|
61
62
|
|
|
62
63
|
/**
|
|
@@ -67,10 +68,10 @@ const getChannel = room =>
|
|
|
67
68
|
map.setIfUndefined(channels, room, () => {
|
|
68
69
|
const subs = set.create()
|
|
69
70
|
const bc = new BC(room)
|
|
70
|
-
/* istanbul ignore next */
|
|
71
71
|
/**
|
|
72
72
|
* @param {{data:ArrayBuffer}} e
|
|
73
73
|
*/
|
|
74
|
+
/* c8 ignore next */
|
|
74
75
|
bc.onmessage = e => subs.forEach(sub => sub(e.data, 'broadcastchannel'))
|
|
75
76
|
return {
|
|
76
77
|
bc, subs
|
|
@@ -99,7 +100,6 @@ export const subscribe = (room, f) => {
|
|
|
99
100
|
export const unsubscribe = (room, f) => {
|
|
100
101
|
const channel = getChannel(room)
|
|
101
102
|
const unsubscribed = channel.subs.delete(f)
|
|
102
|
-
/* istanbul ignore else */
|
|
103
103
|
if (unsubscribed && channel.subs.size === 0) {
|
|
104
104
|
channel.bc.close()
|
|
105
105
|
channels.delete(room)
|
package/buffer.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["buffer.js"],"names":[],"mappings":"AAcO,6CAFI,MAAM,cAEgD;AAS1D,4DAJI,WAAW,cACX,MAAM,UACN,MAAM,cAE4G;AAOtH,wDAFI,WAAW,cAEyD;AAG/E;;;GAGG;AACH,gCAHW,UAAU,GACT,MAAM,CASjB;
|
|
1
|
+
{"version":3,"file":"buffer.d.ts","sourceRoot":"","sources":["buffer.js"],"names":[],"mappings":"AAcO,6CAFI,MAAM,cAEgD;AAS1D,4DAJI,WAAW,cACX,MAAM,UACN,MAAM,cAE4G;AAOtH,wDAFI,WAAW,cAEyD;AAG/E;;;GAGG;AACH,gCAHW,UAAU,GACT,MAAM,CASjB;AAUD;;;GAGG;AACH,8BAHW,MAAM,GACL,UAAU,CAUrB;AAuBM,2CAHI,UAAU,GACT,UAAU,CAMrB;AASM,gCAHI,GAAG,GACF,UAAU,CAMrB;AAQM,+BAHI,UAAU,GACT,GAAG,CAE8D"}
|
package/buffer.js
CHANGED
|
@@ -30,7 +30,7 @@ export const createUint8ArrayViewFromArrayBuffer = (buffer, byteOffset, length)
|
|
|
30
30
|
*/
|
|
31
31
|
export const createUint8ArrayFromArrayBuffer = buffer => new Uint8Array(buffer)
|
|
32
32
|
|
|
33
|
-
/*
|
|
33
|
+
/* c8 ignore start */
|
|
34
34
|
/**
|
|
35
35
|
* @param {Uint8Array} bytes
|
|
36
36
|
* @return {string}
|
|
@@ -43,6 +43,7 @@ const toBase64Browser = bytes => {
|
|
|
43
43
|
// eslint-disable-next-line no-undef
|
|
44
44
|
return btoa(s)
|
|
45
45
|
}
|
|
46
|
+
/* c8 ignore stop */
|
|
46
47
|
|
|
47
48
|
/**
|
|
48
49
|
* @param {Uint8Array} bytes
|
|
@@ -50,7 +51,7 @@ const toBase64Browser = bytes => {
|
|
|
50
51
|
*/
|
|
51
52
|
const toBase64Node = bytes => Buffer.from(bytes.buffer, bytes.byteOffset, bytes.byteLength).toString('base64')
|
|
52
53
|
|
|
53
|
-
/*
|
|
54
|
+
/* c8 ignore start */
|
|
54
55
|
/**
|
|
55
56
|
* @param {string} s
|
|
56
57
|
* @return {Uint8Array}
|
|
@@ -64,6 +65,7 @@ const fromBase64Browser = s => {
|
|
|
64
65
|
}
|
|
65
66
|
return bytes
|
|
66
67
|
}
|
|
68
|
+
/* c8 ignore stop */
|
|
67
69
|
|
|
68
70
|
/**
|
|
69
71
|
* @param {string} s
|
|
@@ -73,10 +75,10 @@ const fromBase64Node = s => {
|
|
|
73
75
|
return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength)
|
|
74
76
|
}
|
|
75
77
|
|
|
76
|
-
/*
|
|
78
|
+
/* c8 ignore next */
|
|
77
79
|
export const toBase64 = env.isBrowser ? toBase64Browser : toBase64Node
|
|
78
80
|
|
|
79
|
-
/*
|
|
81
|
+
/* c8 ignore next */
|
|
80
82
|
export const fromBase64 = env.isBrowser ? fromBase64Browser : fromBase64Node
|
|
81
83
|
|
|
82
84
|
/**
|
package/conditions.js
CHANGED