@e280/stz 0.3.3 → 0.3.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@e280/stz",
3
- "version": "0.3.3",
3
+ "version": "0.3.4",
4
4
  "description": "everyday ts fns for everything",
5
5
  "license": "MIT",
6
6
  "author": "Chase Moskal <chasemoskal@gmail.com>",
package/s/data/bytes.ts CHANGED
@@ -10,5 +10,20 @@ export const bytes = Object.freeze({
10
10
  random(count: number) {
11
11
  return crypto.getRandomValues(new Uint8Array(count))
12
12
  },
13
+
14
+ concat(parts: Uint8Array[]) {
15
+ let size = 0
16
+ for (const part of parts) size += part.byteLength
17
+
18
+ const bytes = new Uint8Array(size)
19
+
20
+ let offset = 0
21
+ for (const part of parts) {
22
+ bytes.set(part, offset)
23
+ offset += part.byteLength
24
+ }
25
+
26
+ return bytes as Uint8Array
27
+ },
13
28
  })
14
29
 
package/s/utensils/map.ts CHANGED
@@ -5,7 +5,11 @@ type MapLike<K, V> = {
5
5
  set(key: K, value: V): unknown
6
6
  }
7
7
 
8
- export function need<K, V>(map: Pick<MapLike<K, V>, "has" | "get">, key: K, err = "need failed") {
8
+ export function need<K, V>(
9
+ map: Pick<MapLike<K, V>, "has" | "get">,
10
+ key: K,
11
+ err = (typeof key === "string" ? `needed key not found "${key}"` : "needed key not found"),
12
+ ) {
9
13
  if (map.has(key))
10
14
  return map.get(key) as V
11
15
  else
package/x/data/bytes.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export declare const bytes: Readonly<{
2
2
  eq(a: Uint8Array, b: Uint8Array): boolean;
3
3
  random(count: number): Uint8Array<ArrayBuffer>;
4
+ concat(parts: Uint8Array[]): Uint8Array;
4
5
  }>;
package/x/data/bytes.js CHANGED
@@ -10,5 +10,17 @@ export const bytes = Object.freeze({
10
10
  random(count) {
11
11
  return crypto.getRandomValues(new Uint8Array(count));
12
12
  },
13
+ concat(parts) {
14
+ let size = 0;
15
+ for (const part of parts)
16
+ size += part.byteLength;
17
+ const bytes = new Uint8Array(size);
18
+ let offset = 0;
19
+ for (const part of parts) {
20
+ bytes.set(part, offset);
21
+ offset += part.byteLength;
22
+ }
23
+ return bytes;
24
+ },
13
25
  });
14
26
  //# sourceMappingURL=bytes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bytes.js","sourceRoot":"","sources":["../../s/data/bytes.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAClC,EAAE,CAAC,CAAa,EAAE,CAAa;QAC9B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QACvC,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;YAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QACtD,OAAO,IAAI,KAAK,CAAC,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,KAAa;QACnB,OAAO,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;IACrD,CAAC;CACD,CAAC,CAAA"}
1
+ {"version":3,"file":"bytes.js","sourceRoot":"","sources":["../../s/data/bytes.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAClC,EAAE,CAAC,CAAa,EAAE,CAAa;QAC9B,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QACvC,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE;YAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;QACtD,OAAO,IAAI,KAAK,CAAC,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,KAAa;QACnB,OAAO,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAA;IACrD,CAAC;IAED,MAAM,CAAC,KAAmB;QACzB,IAAI,IAAI,GAAG,CAAC,CAAA;QACZ,KAAK,MAAM,IAAI,IAAI,KAAK;YAAE,IAAI,IAAI,IAAI,CAAC,UAAU,CAAA;QAEjD,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAA;QAElC,IAAI,MAAM,GAAG,CAAC,CAAA;QACd,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAC1B,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;YACvB,MAAM,IAAI,IAAI,CAAC,UAAU,CAAA;QAC1B,CAAC;QAED,OAAO,KAAmB,CAAA;IAC3B,CAAC;CACD,CAAC,CAAA"}
package/x/utensils/map.js CHANGED
@@ -1,4 +1,4 @@
1
- export function need(map, key, err = "need failed") {
1
+ export function need(map, key, err = (typeof key === "string" ? `needed key not found "${key}"` : "needed key not found")) {
2
2
  if (map.has(key))
3
3
  return map.get(key);
4
4
  else
@@ -1 +1 @@
1
- {"version":3,"file":"map.js","sourceRoot":"","sources":["../../s/utensils/map.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,IAAI,CAAO,GAAuC,EAAE,GAAM,EAAE,GAAG,GAAG,aAAa;IAC9F,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACf,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAM,CAAA;;QAExB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;AACtB,CAAC;AAED,MAAM,UAAU,SAAS,CAAO,GAAkB,EAAE,GAAM,EAAE,IAAa;IACxE,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACf,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAE,CAAA;SAChB,CAAC;QACL,MAAM,KAAK,GAAG,IAAI,EAAE,CAAA;QACpB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACnB,OAAO,KAAK,CAAA;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,OAAO,CAA6C,GAAM,EAAE,OAAyB;IACpG,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO;QACjC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACpB,OAAO,GAAG,CAAA;AACX,CAAC"}
1
+ {"version":3,"file":"map.js","sourceRoot":"","sources":["../../s/utensils/map.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,IAAI,CAClB,GAAuC,EACvC,GAAM,EACN,GAAG,GAAG,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,yBAAyB,GAAG,GAAG,CAAC,CAAC,CAAC,sBAAsB,CAAC;IAE3F,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACf,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAM,CAAA;;QAExB,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,CAAA;AACtB,CAAC;AAED,MAAM,UAAU,SAAS,CAAO,GAAkB,EAAE,GAAM,EAAE,IAAa;IACxE,IAAI,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QACf,OAAO,GAAG,CAAC,GAAG,CAAC,GAAG,CAAE,CAAA;SAChB,CAAC;QACL,MAAM,KAAK,GAAG,IAAI,EAAE,CAAA;QACpB,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACnB,OAAO,KAAK,CAAA;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,OAAO,CAA6C,GAAM,EAAE,OAAyB;IACpG,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO;QACjC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;IACpB,OAAO,GAAG,CAAA;AACX,CAAC"}