@pagepocket/shared 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  export * from "./utils/base64.js";
2
2
  export * from "./utils/dates.js";
3
+ export * from "./utils/fallback.js";
4
+ export * from "./utils/memory-cache.js";
3
5
  export * from "./utils/utf8.js";
4
6
  export * from "./utils/mime.js";
5
7
  export * from "./utils/url.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,7 @@
1
1
  export * from "./utils/base64.js";
2
2
  export * from "./utils/dates.js";
3
+ export * from "./utils/fallback.js";
4
+ export * from "./utils/memory-cache.js";
3
5
  export * from "./utils/utf8.js";
4
6
  export * from "./utils/mime.js";
5
7
  export * from "./utils/url.js";
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"base64.d.ts","sourceRoot":"","sources":["../../src/utils/base64.ts"],"names":[],"mappings":"AA0BA,eAAO,MAAM,aAAa,GAAI,OAAO,UAAU,KAAG,MAiBjD,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,KAAG,UAe9C,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,MAO3C,CAAC"}
1
+ {"version":3,"file":"base64.d.ts","sourceRoot":"","sources":["../../src/utils/base64.ts"],"names":[],"mappings":"AAqBA,eAAO,MAAM,aAAa,GAAI,OAAO,UAAU,KAAG,MAejD,CAAC;AAEF,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,KAAG,UAe9C,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,MAAM,MAAM,KAAG,MAO3C,CAAC"}
@@ -1,11 +1,5 @@
1
- const getGlobalBuffer = () => {
2
- return globalThis.Buffer;
3
- };
4
- const joinCharCodes = (bytes) => {
5
- return bytes.reduce((acc, code) => {
6
- return `${acc}${String.fromCharCode(code)}`;
7
- }, "");
8
- };
1
+ const getGlobalBuffer = () => globalThis.Buffer;
2
+ const joinCharCodes = (bytes) => bytes.reduce((acc, code) => `${acc}${String.fromCharCode(code)}`, "");
9
3
  const bufferFromToUint8Array = (value) => {
10
4
  const bytes = new Uint8Array(value);
11
5
  return Uint8Array.from(bytes);
@@ -20,9 +14,7 @@ export const bytesToBase64 = (bytes) => {
20
14
  const start = index * chunkSize;
21
15
  return bytes.subarray(start, start + chunkSize);
22
16
  });
23
- const binary = chunks.reduce((acc, chunk) => {
24
- return `${acc}${joinCharCodes(chunk)}`;
25
- }, "");
17
+ const binary = chunks.reduce((acc, chunk) => `${acc}${joinCharCodes(chunk)}`, "");
26
18
  return btoa(binary);
27
19
  };
28
20
  export const base64ToBytes = (base64) => {
@@ -1 +1 @@
1
- {"version":3,"file":"base64.js","sourceRoot":"","sources":["../../src/utils/base64.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base64.js","sourceRoot":"","sources":["../../src/utils/base64.ts"],"names":[],"mappings":"AAWA,MAAM,eAAe,GAAG,GAAG,EAAE,CAAE,UAA+B,CAAC,MAAM,CAAC;AAEtE,MAAM,aAAa,GAAG,CAAC,KAAiB,EAAE,EAAE,CAC1C,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AAExE,MAAM,sBAAsB,GAAG,CAAC,KAAuB,EAAc,EAAE;IACrE,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,KAA+B,CAAC,CAAC;IAC9D,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAiB,EAAU,EAAE;IACzD,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;IACrC,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC;IACzB,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;QAC3F,MAAM,KAAK,GAAG,KAAK,GAAG,SAAS,CAAC;QAChC,OAAO,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAElF,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC;AACtB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,MAAc,EAAc,EAAE;IAC1D,MAAM,UAAU,GAAG,eAAe,EAAE,CAAC;IACrC,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,EAAE,QAAQ,CAAC,CAAC;QACpD,OAAO,sBAAsB,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAClC,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAE5C,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACzC,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,IAAY,EAAU,EAAE;IACnD,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QACnD,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,aAAa,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"dates.d.ts","sourceRoot":"","sources":["../../src/utils/dates.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,GAAI,GAAG,IAAI,KAAG,MAE/C,CAAC"}
1
+ {"version":3,"file":"dates.d.ts","sourceRoot":"","sources":["../../src/utils/dates.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,qBAAqB,GAAI,GAAG,IAAI,KAAG,MAA4C,CAAC"}
@@ -1,5 +1,3 @@
1
1
  import dayjs from "dayjs";
2
- export const formatCompactDateTime = (d) => {
3
- return dayjs(d).format("YYYYMMDD-HHmmss");
4
- };
2
+ export const formatCompactDateTime = (d) => dayjs(d).format("YYYYMMDD-HHmmss");
5
3
  //# sourceMappingURL=dates.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dates.js","sourceRoot":"","sources":["../../src/utils/dates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAO,EAAU,EAAE;IACvD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAC5C,CAAC,CAAC"}
1
+ {"version":3,"file":"dates.js","sourceRoot":"","sources":["../../src/utils/dates.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAO,EAAU,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Execute a function and return a fallback value when it throws.
3
+ *
4
+ * Usage:
5
+ * const strategies = withFallback(() => readBuiltinStrategiesUnsafe(), []);
6
+ */
7
+ export declare const withFallback: <T>(run: () => T, fallback: T) => T;
8
+ //# sourceMappingURL=fallback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fallback.d.ts","sourceRoot":"","sources":["../../src/utils/fallback.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,UAAU,CAAC,KAAG,CAM3D,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Execute a function and return a fallback value when it throws.
3
+ *
4
+ * Usage:
5
+ * const strategies = withFallback(() => readBuiltinStrategiesUnsafe(), []);
6
+ */
7
+ export const withFallback = (run, fallback) => {
8
+ try {
9
+ return run();
10
+ }
11
+ catch {
12
+ return fallback;
13
+ }
14
+ };
15
+ //# sourceMappingURL=fallback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fallback.js","sourceRoot":"","sources":["../../src/utils/fallback.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAI,GAAY,EAAE,QAAW,EAAK,EAAE;IAC9D,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC;IACf,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * A lightweight in-memory cache with optional per-entry TTL.
3
+ *
4
+ * Usage:
5
+ * const cache = new MemoryCache<string, User>();
6
+ * cache.set("alice", { name: "Alice" }, 60_000); // TTL 60s
7
+ * cache.get("alice"); // { name: "Alice" } | undefined
8
+ * cache.getOrSet("bob", () => fetchUser("bob"), 30_000);
9
+ * cache.delete("alice");
10
+ * cache.clear();
11
+ */
12
+ export declare class MemoryCache<K, V> {
13
+ private readonly store;
14
+ /**
15
+ * Retrieve a cached value. Returns `undefined` when the key is missing or expired.
16
+ */
17
+ get(key: K): V | undefined;
18
+ /**
19
+ * Store a value. An optional `ttlMs` (milliseconds) marks the entry as
20
+ * expirable; omit it (or pass `undefined`) for an entry that never expires.
21
+ */
22
+ set(key: K, value: V, ttlMs?: number): void;
23
+ /**
24
+ * Return the cached value for `key`. On cache-miss (or expiry) call `factory`
25
+ * to compute the value, cache it, and return it.
26
+ *
27
+ * Usage:
28
+ * const strategies = cache.getOrSet("builtin", () => loadStrategies());
29
+ */
30
+ getOrSet(key: K, factory: () => V, ttlMs?: number): V;
31
+ delete(key: K): boolean;
32
+ clear(): void;
33
+ get size(): number;
34
+ has(key: K): boolean;
35
+ }
36
+ //# sourceMappingURL=memory-cache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-cache.d.ts","sourceRoot":"","sources":["../../src/utils/memory-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,qBAAa,WAAW,CAAC,CAAC,EAAE,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA+B;IAErD;;OAEG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS;IAe1B;;;OAGG;IACH,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI;IAK3C;;;;;;OAMG;IACH,QAAQ,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,CAAC;IAarD,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;IAIvB,KAAK,IAAI,IAAI;IAIb,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO;CAGrB"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * A lightweight in-memory cache with optional per-entry TTL.
3
+ *
4
+ * Usage:
5
+ * const cache = new MemoryCache<string, User>();
6
+ * cache.set("alice", { name: "Alice" }, 60_000); // TTL 60s
7
+ * cache.get("alice"); // { name: "Alice" } | undefined
8
+ * cache.getOrSet("bob", () => fetchUser("bob"), 30_000);
9
+ * cache.delete("alice");
10
+ * cache.clear();
11
+ */
12
+ export class MemoryCache {
13
+ store = new Map();
14
+ /**
15
+ * Retrieve a cached value. Returns `undefined` when the key is missing or expired.
16
+ */
17
+ get(key) {
18
+ const entry = this.store.get(key);
19
+ if (!entry) {
20
+ return undefined;
21
+ }
22
+ if (isExpired(entry)) {
23
+ this.store.delete(key);
24
+ return undefined;
25
+ }
26
+ return entry.value;
27
+ }
28
+ /**
29
+ * Store a value. An optional `ttlMs` (milliseconds) marks the entry as
30
+ * expirable; omit it (or pass `undefined`) for an entry that never expires.
31
+ */
32
+ set(key, value, ttlMs) {
33
+ const expiresAt = ttlMs !== undefined ? Date.now() + ttlMs : undefined;
34
+ this.store.set(key, { value, expiresAt });
35
+ }
36
+ /**
37
+ * Return the cached value for `key`. On cache-miss (or expiry) call `factory`
38
+ * to compute the value, cache it, and return it.
39
+ *
40
+ * Usage:
41
+ * const strategies = cache.getOrSet("builtin", () => loadStrategies());
42
+ */
43
+ getOrSet(key, factory, ttlMs) {
44
+ const existing = this.get(key);
45
+ if (existing !== undefined) {
46
+ return existing;
47
+ }
48
+ const value = factory();
49
+ this.set(key, value, ttlMs);
50
+ return value;
51
+ }
52
+ delete(key) {
53
+ return this.store.delete(key);
54
+ }
55
+ clear() {
56
+ this.store.clear();
57
+ }
58
+ get size() {
59
+ return this.store.size;
60
+ }
61
+ has(key) {
62
+ return this.get(key) !== undefined;
63
+ }
64
+ }
65
+ const isExpired = (entry) => entry.expiresAt !== undefined && Date.now() > entry.expiresAt;
66
+ //# sourceMappingURL=memory-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-cache.js","sourceRoot":"","sources":["../../src/utils/memory-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,MAAM,OAAO,WAAW;IACL,KAAK,GAAG,IAAI,GAAG,EAAoB,CAAC;IAErD;;OAEG;IACH,GAAG,CAAC,GAAM;QACR,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,KAAK,CAAC,KAAK,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,GAAG,CAAC,GAAM,EAAE,KAAQ,EAAE,KAAc;QAClC,MAAM,SAAS,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;QACvE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;OAMG;IACH,QAAQ,CAAC,GAAM,EAAE,OAAgB,EAAE,KAAc;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE/B,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,KAAK,GAAG,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAE5B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,GAAM;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC;IACrC,CAAC;CACF;AAOD,MAAM,SAAS,GAAG,CAAI,KAAoB,EAAW,EAAE,CACrD,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"utf8.d.ts","sourceRoot":"","sources":["../../src/utils/utf8.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,GAAI,OAAO,UAAU,KAAG,MAAM,GAAG,SAM7D,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,OAAO,UAAU,KAAG,MAMrD,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,UAEzC,CAAC"}
1
+ {"version":3,"file":"utf8.d.ts","sourceRoot":"","sources":["../../src/utils/utf8.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,gBAAgB,GAAI,OAAO,UAAU,KAAG,MAAM,GAAG,SAM7D,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,OAAO,UAAU,KAAG,MAMrD,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,KAAG,UAA4C,CAAC"}
@@ -14,7 +14,5 @@ export const decodeUtf8Lenient = (bytes) => {
14
14
  return "";
15
15
  }
16
16
  };
17
- export const encodeUtf8 = (text) => {
18
- return new TextEncoder().encode(text);
19
- };
17
+ export const encodeUtf8 = (text) => new TextEncoder().encode(text);
20
18
  //# sourceMappingURL=utf8.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"utf8.js","sourceRoot":"","sources":["../../src/utils/utf8.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAiB,EAAsB,EAAE;IACxE,IAAI,CAAC;QACH,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAiB,EAAU,EAAE;IAC7D,IAAI,CAAC;QACH,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAc,EAAE;IACrD,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACxC,CAAC,CAAC"}
1
+ {"version":3,"file":"utf8.js","sourceRoot":"","sources":["../../src/utils/utf8.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAiB,EAAsB,EAAE;IACxE,IAAI,CAAC;QACH,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACjE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAiB,EAAU,EAAE;IAC7D,IAAI,CAAC;QACH,OAAO,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAc,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pagepocket/shared",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "description": "Shared cross-package utilities for PagePocket.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -27,7 +27,7 @@
27
27
  },
28
28
  "license": "ISC",
29
29
  "scripts": {
30
- "build": "node -e \"require('node:fs').mkdirSync('dist',{recursive:true})\" && pnpm run build:types && pnpm run build:esm",
30
+ "build": "pnpm run build:types && pnpm run build:esm",
31
31
  "build:types": "tsc -p tsconfig.types.json",
32
32
  "build:esm": "tsc -p tsconfig.esm.json",
33
33
  "test": "tsx --test specs/*.spec.ts"