@welshman/lib 0.1.2 → 0.2.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.
@@ -4,12 +4,14 @@ export type TaskQueueOptions<Item> = {
4
4
  };
5
5
  export declare class TaskQueue<Item> {
6
6
  readonly options: TaskQueueOptions<Item>;
7
+ _subs: ((item: Item) => void)[];
7
8
  items: Item[];
8
9
  isPaused: boolean;
9
10
  isProcessing: boolean;
10
11
  constructor(options: TaskQueueOptions<Item>);
11
12
  push(item: Item): void;
12
13
  remove(item: Item): void;
14
+ subscribe(subscriber: (item: Item) => void): () => void;
13
15
  process(): Promise<void>;
14
16
  stop(): void;
15
17
  start(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"TaskQueue.d.ts","sourceRoot":"","sources":["../src/TaskQueue.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gBAAgB,CAAC,IAAI,IAAI;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAA;CACrC,CAAA;AAED,qBAAa,SAAS,CAAC,IAAI;IAKb,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC;IAJpD,KAAK,EAAE,IAAI,EAAE,CAAK;IAClB,QAAQ,UAAQ;IAChB,YAAY,UAAQ;gBAEC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC;IAEpD,IAAI,CAAC,IAAI,EAAE,IAAI;IAKf,MAAM,CAAC,IAAI,EAAE,IAAI;IAIX,OAAO;IAwBb,IAAI;IAIJ,KAAK;IAKL,KAAK;CAGN"}
1
+ {"version":3,"file":"TaskQueue.d.ts","sourceRoot":"","sources":["../src/TaskQueue.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gBAAgB,CAAC,IAAI,IAAI;IACnC,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAA;CACrC,CAAA;AAED,qBAAa,SAAS,CAAC,IAAI;IAMb,QAAQ,CAAC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC;IALpD,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI,CAAC,EAAE,CAAK;IACpC,KAAK,EAAE,IAAI,EAAE,CAAK;IAClB,QAAQ,UAAQ;IAChB,YAAY,UAAQ;gBAEC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC;IAEpD,IAAI,CAAC,IAAI,EAAE,IAAI;IAKf,MAAM,CAAC,IAAI,EAAE,IAAI;IAIjB,SAAS,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,IAAI;IAQpC,OAAO;IA4Bb,IAAI;IAIJ,KAAK;IAKL,KAAK;CAGN"}
package/dist/TaskQueue.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { remove, yieldThread } from "./Tools.js";
2
2
  export class TaskQueue {
3
3
  options;
4
+ _subs = [];
4
5
  items = [];
5
6
  isPaused = false;
6
7
  isProcessing = false;
@@ -14,6 +15,12 @@ export class TaskQueue {
14
15
  remove(item) {
15
16
  this.items = remove(item, this.items);
16
17
  }
18
+ subscribe(subscriber) {
19
+ this._subs.push(subscriber);
20
+ return () => {
21
+ this._subs = remove(subscriber, this._subs);
22
+ };
23
+ }
17
24
  async process() {
18
25
  if (this.isProcessing || this.isPaused || this.items.length === 0) {
19
26
  return;
@@ -22,6 +29,9 @@ export class TaskQueue {
22
29
  await yieldThread();
23
30
  for (const item of this.items.splice(0, this.options.batchSize)) {
24
31
  try {
32
+ for (const subscriber of this._subs) {
33
+ subscriber(item);
34
+ }
25
35
  await this.options.processItem(item);
26
36
  }
27
37
  catch (e) {
@@ -1 +1 @@
1
- {"version":3,"file":"TaskQueue.js","sourceRoot":"","sources":["../src/TaskQueue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,YAAY,CAAA;AAO9C,MAAM,OAAO,SAAS;IAKC;IAJrB,KAAK,GAAW,EAAE,CAAA;IAClB,QAAQ,GAAG,KAAK,CAAA;IAChB,YAAY,GAAG,KAAK,CAAA;IAEpB,YAAqB,OAA+B;QAA/B,YAAO,GAAP,OAAO,CAAwB;IAAG,CAAC;IAExD,IAAI,CAAC,IAAU;QACb,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrB,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,MAAM,CAAC,IAAU;QACf,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IACvC,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClE,OAAM;QACR,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QAExB,MAAM,WAAW,EAAE,CAAA;QAEnB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAChE,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;YACtC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAClB,CAAC;QACH,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;QAEzB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO,EAAE,CAAA;QAChB,CAAC;IACH,CAAC;IAED,IAAI;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;IACtB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;QACrB,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;IACjB,CAAC;CACF"}
1
+ {"version":3,"file":"TaskQueue.js","sourceRoot":"","sources":["../src/TaskQueue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,YAAY,CAAA;AAO9C,MAAM,OAAO,SAAS;IAMC;IALrB,KAAK,GAA6B,EAAE,CAAA;IACpC,KAAK,GAAW,EAAE,CAAA;IAClB,QAAQ,GAAG,KAAK,CAAA;IAChB,YAAY,GAAG,KAAK,CAAA;IAEpB,YAAqB,OAA+B;QAA/B,YAAO,GAAP,OAAO,CAAwB;IAAG,CAAC;IAExD,IAAI,CAAC,IAAU;QACb,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrB,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,MAAM,CAAC,IAAU;QACf,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;IACvC,CAAC;IAED,SAAS,CAAC,UAAgC;QACxC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;QAE3B,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;QAC7C,CAAC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClE,OAAM;QACR,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAA;QAExB,MAAM,WAAW,EAAE,CAAA;QAEnB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAChE,IAAI,CAAC;gBACH,KAAK,MAAM,UAAU,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACpC,UAAU,CAAC,IAAI,CAAC,CAAA;gBAClB,CAAC;gBAED,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;YACtC,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;YAClB,CAAC;QACH,CAAC;QAED,IAAI,CAAC,YAAY,GAAG,KAAK,CAAA;QAEzB,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO,EAAE,CAAA;QAChB,CAAC;IACH,CAAC;IAED,IAAI;QACF,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;IACtB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAA;QACrB,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;IACjB,CAAC;CACF"}
package/dist/Tools.d.ts CHANGED
@@ -1,4 +1,8 @@
1
1
  type Obj<T = any> = Record<string, T>;
2
+ export type Nil = null | undefined;
3
+ export declare const isNil: <T>(x: T, ...args: unknown[]) => boolean;
4
+ export declare const isNotNil: <T>(x: T, ...args: unknown[]) => x is T & {};
5
+ export declare const assertNotNil: <T>(x: T, ...args: unknown[]) => NonNullable<T>;
2
6
  /** Function that does nothing and returns undefined */
3
7
  export declare const noop: (...args: unknown[]) => undefined;
4
8
  /**
@@ -100,6 +104,10 @@ export declare const MONTH: number;
100
104
  export declare const QUARTER: number;
101
105
  /** One year in seconds (approximate) */
102
106
  export declare const YEAR: number;
107
+ /** User's default locale */
108
+ export declare const LOCALE: string;
109
+ /** User's default timezone */
110
+ export declare const TIMEZONE: string;
103
111
  /**
104
112
  * Multiplies time unit by count
105
113
  * @param unit - Time unit in seconds
@@ -122,6 +130,55 @@ export declare const ago: (unit: number, count?: number) => number;
122
130
  * @returns Time in milliseconds
123
131
  */
124
132
  export declare const ms: (seconds: number) => number;
133
+ /**
134
+ * Converts seconds to date
135
+ * @param seconds - Time in seconds
136
+ * @returns Date object
137
+ */
138
+ export declare const secondsToDate: (seconds: number) => Date;
139
+ /**
140
+ * Converts date object to seconds
141
+ * @param date - Date object
142
+ * @returns timestamp in seconds
143
+ */
144
+ export declare const dateToSeconds: (date: Date) => number;
145
+ /**
146
+ * Creates a local date from a date string
147
+ * @param dateString - date string
148
+ * @param timezone - timezone string
149
+ * @returns timezone-aware Date object
150
+ */
151
+ export declare const createLocalDate: (dateString: any, timezone?: string) => Date;
152
+ /** Formatter for date+time */
153
+ export declare const dateTimeFormatter: Intl.DateTimeFormat;
154
+ /**
155
+ * Formats seconds as a datetime
156
+ * @param seconds - timestamp in seconds
157
+ * @returns datetime string
158
+ */
159
+ export declare const formatTimestamp: (seconds: number) => string;
160
+ /** Formatter for date */
161
+ export declare const dateFormatter: Intl.DateTimeFormat;
162
+ /**
163
+ * Formats seconds as a date
164
+ * @param seconds - timestamp in seconds
165
+ * @returns date string
166
+ */
167
+ export declare const formatTimestampAsDate: (ts: number) => string;
168
+ /** Formatter for time */
169
+ export declare const timeFormatter: Intl.DateTimeFormat;
170
+ /**
171
+ * Formats seconds as a time
172
+ * @param seconds - timestamp in seconds
173
+ * @returns time string
174
+ */
175
+ export declare const formatTimestampAsTime: (ts: number) => string;
176
+ /**
177
+ * Formats seconds as a relative date (x minutes ago)
178
+ * @param seconds - timestamp in seconds
179
+ * @returns relative date string
180
+ */
181
+ export declare const formatTimestampRelative: (ts: number) => string;
125
182
  /**
126
183
  * Returns the first element of an array
127
184
  * @param xs - The array
@@ -195,6 +252,13 @@ export declare const difference: <T>(a: T[], b: T[]) => T[];
195
252
  * @returns New array with element removed
196
253
  */
197
254
  export declare const remove: <T>(a: T, xs: T[]) => T[];
255
+ /**
256
+ * Removes element at index
257
+ * @param i - Index to remove
258
+ * @param xs - Source array
259
+ * @returns New array with element removed
260
+ */
261
+ export declare const removeAt: <T>(i: number, xs: T[]) => T[];
198
262
  /**
199
263
  * Returns elements from second array not present in first
200
264
  * @param a - Array of elements to exclude
@@ -277,6 +341,13 @@ export declare const sortBy: <T>(f: (x: T) => any, xs: T[]) => T[];
277
341
  * @returns Map of groups
278
342
  */
279
343
  export declare const groupBy: <T, K>(f: (x: T) => K, xs: T[]) => Map<K, T[]>;
344
+ /**
345
+ * Counts array elements by key function
346
+ * @param f - Function to generate group key
347
+ * @param xs - Array to count entries
348
+ * @returns Map of counts
349
+ */
350
+ export declare const countBy: <T, K>(f: (x: T) => K, xs: T[]) => Map<K, number>;
280
351
  /**
281
352
  * Creates map from array using key function
282
353
  * @param f - Function to generate key
@@ -308,7 +379,9 @@ export declare const chunks: <T>(n: number, xs: T[]) => T[][];
308
379
  /** Splits array into two parts at index */
309
380
  export declare const splitAt: <T>(n: number, xs: T[]) => T[][];
310
381
  /** Inserts element into array at index */
311
- export declare const insert: <T>(n: number, x: T, xs: T[]) => T[];
382
+ export declare const insertAt: <T>(n: number, x: T, xs: T[]) => T[];
383
+ /** Replaces array element at index */
384
+ export declare const replaceAt: <T>(n: number, x: T, xs: T[]) => T[];
312
385
  /** Returns random element from array */
313
386
  export declare const choice: <T>(xs: T[]) => T;
314
387
  /** Returns shuffled copy of iterable */
@@ -321,6 +394,8 @@ export declare const isIterable: (x: any) => boolean;
321
394
  export declare const toIterable: (x: any) => any;
322
395
  /** Ensures value is array by wrapping if needed */
323
396
  export declare const ensurePlural: <T>(x: T | T[]) => T[];
397
+ /** Ensures values are not undefined */
398
+ export declare const removeNil: <T>(xs: T[]) => NonNullable<T & {}>[];
324
399
  /**
325
400
  * Checks if value is a plain object
326
401
  * @param obj - Value to check
@@ -446,6 +521,17 @@ export declare const randomId: () => string;
446
521
  * @returns Promise that resolves after t milliseconds
447
522
  */
448
523
  export declare const sleep: (t: number) => Promise<unknown>;
524
+ export type PollOptions = {
525
+ signal: AbortSignal;
526
+ condition: () => boolean;
527
+ interval?: number;
528
+ };
529
+ /**
530
+ * Creates a promise that resolves after the condition completes or timeout
531
+ * @param options - PollOptions
532
+ * @returns void Promise
533
+ */
534
+ export declare const poll: ({ interval, condition, signal }: PollOptions) => Promise<void>;
449
535
  /**
450
536
  * Creates a microtask that yields to other tasks in the event loop
451
537
  * @returns Promise that resolves after yielding
@@ -481,6 +567,13 @@ export declare const batch: <T>(t: number, f: (xs: T[]) => void) => (x: T) => vo
481
567
  * @returns Function that returns promise of result
482
568
  */
483
569
  export declare const batcher: <T, U>(t: number, execute: (request: T[]) => U[] | Promise<U[]>) => (request: T) => Promise<U>;
570
+ /**
571
+ * Returns a promise that resolves after some proportion of promises complete
572
+ * @param threshold - number between 0 and 1 for how many promises to wait for
573
+ * @param promises - array of promises
574
+ * @returns promise
575
+ */
576
+ export declare const race: (threshold: number, promises: Promise<unknown>[]) => Promise<void>;
484
577
  /**
485
578
  * Removes protocol (http://, https://, etc) from URL
486
579
  * @param url - URL to process
@@ -565,6 +658,8 @@ export declare const on: <EventMap extends Record<string | symbol, any[]>, E ext
565
658
  * @returns Truncated string
566
659
  */
567
660
  export declare const ellipsize: (s: string, l: number, suffix?: string) => string;
661
+ /** Displays a list of items with oxford commas and a chosen conjunction */
662
+ export declare const displayList: <T>(xs: T[], conj?: string, n?: number) => string;
568
663
  /** Generates a hash string from input string */
569
664
  export declare const hash: (s: string) => string;
570
665
  /** Returns a function that gets the nth element of an array */
@@ -576,15 +671,17 @@ export declare const nthNe: (i: number, v: any) => (xs: any[], ...args: unknown[
576
671
  /** Returns a function that checks if key/value pairs of x match all pairs in spec */
577
672
  export declare const spec: (values: Obj | Array<any>) => (x: Obj | Array<any>, ...args: unknown[]) => boolean;
578
673
  /** Returns a function that checks equality with value */
579
- export declare const eq: <T>(v: T) => (x: T) => boolean;
674
+ export declare const eq: <T>(v: T) => (x: T, ...args: unknown[]) => boolean;
580
675
  /** Returns a function that checks inequality with value */
581
- export declare const ne: <T>(v: T) => (x: T) => boolean;
676
+ export declare const ne: <T>(v: T) => (x: T, ...args: unknown[]) => boolean;
582
677
  /** Returns a function that gets property value from object */
583
678
  export declare const prop: <T>(k: string) => (x: Record<string, unknown>) => T;
584
679
  /** Returns a function that adds/updates a property on object */
585
680
  export declare const assoc: <K extends string, T, U>(k: K, v: T) => (o: U) => U & Record<K, T>;
586
681
  /** Returns a function that removes a property on object */
587
682
  export declare const dissoc: <K extends string, T extends Obj>(k: K) => (o: T) => T;
683
+ /** Returns a function that checks whether a value is in the given sequence */
684
+ export declare const member: <T>(xs: Iterable<T>) => (x: T) => boolean;
588
685
  /**
589
686
  * Adds value to Set at key in object
590
687
  * @param m - Object mapping keys to Sets
@@ -1 +1 @@
1
- {"version":3,"file":"Tools.d.ts","sourceRoot":"","sources":["../src/Tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tools.d.ts","sourceRoot":"","sources":["../src/Tools.ts"],"names":[],"mappings":"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"}
package/dist/Tools.js CHANGED
@@ -1,4 +1,7 @@
1
1
  import { bech32, utf8 } from "@scure/base";
2
+ export const isNil = (x, ...args) => x === undefined || x === null;
3
+ export const isNotNil = (x, ...args) => x !== undefined && x !== null;
4
+ export const assertNotNil = (x, ...args) => x;
2
5
  // ----------------------------------------------------------------------------
3
6
  // Basic functional programming utilities
4
7
  // ----------------------------------------------------------------------------
@@ -155,6 +158,10 @@ export const MONTH = 30 * DAY;
155
158
  export const QUARTER = 90 * DAY;
156
159
  /** One year in seconds (approximate) */
157
160
  export const YEAR = 365 * DAY;
161
+ /** User's default locale */
162
+ export const LOCALE = new Intl.DateTimeFormat().resolvedOptions().locale;
163
+ /** User's default timezone */
164
+ export const TIMEZONE = new Date().toString().match(/GMT[^\s]+/)[0];
158
165
  /**
159
166
  * Multiplies time unit by count
160
167
  * @param unit - Time unit in seconds
@@ -177,6 +184,87 @@ export const ago = (unit, count = 1) => now() - int(unit, count);
177
184
  * @returns Time in milliseconds
178
185
  */
179
186
  export const ms = (seconds) => seconds * 1000;
187
+ /**
188
+ * Converts seconds to date
189
+ * @param seconds - Time in seconds
190
+ * @returns Date object
191
+ */
192
+ export const secondsToDate = (seconds) => new Date(seconds * 1000);
193
+ /**
194
+ * Converts date object to seconds
195
+ * @param date - Date object
196
+ * @returns timestamp in seconds
197
+ */
198
+ export const dateToSeconds = (date) => Math.round(date.valueOf() / 1000);
199
+ /**
200
+ * Creates a local date from a date string
201
+ * @param dateString - date string
202
+ * @param timezone - timezone string
203
+ * @returns timezone-aware Date object
204
+ */
205
+ export const createLocalDate = (dateString, timezone = TIMEZONE) => new Date(`${dateString} ${timezone}`);
206
+ /** Formatter for date+time */
207
+ export const dateTimeFormatter = new Intl.DateTimeFormat(LOCALE, {
208
+ dateStyle: "short",
209
+ timeStyle: "short",
210
+ });
211
+ /**
212
+ * Formats seconds as a datetime
213
+ * @param seconds - timestamp in seconds
214
+ * @returns datetime string
215
+ */
216
+ export const formatTimestamp = (seconds) => dateTimeFormatter.format(secondsToDate(seconds));
217
+ /** Formatter for date */
218
+ export const dateFormatter = new Intl.DateTimeFormat(LOCALE, {
219
+ year: "numeric",
220
+ month: "long",
221
+ day: "numeric",
222
+ });
223
+ /**
224
+ * Formats seconds as a date
225
+ * @param seconds - timestamp in seconds
226
+ * @returns date string
227
+ */
228
+ export const formatTimestampAsDate = (ts) => dateFormatter.format(secondsToDate(ts));
229
+ /** Formatter for time */
230
+ export const timeFormatter = new Intl.DateTimeFormat(LOCALE, {
231
+ timeStyle: "short",
232
+ });
233
+ /**
234
+ * Formats seconds as a time
235
+ * @param seconds - timestamp in seconds
236
+ * @returns time string
237
+ */
238
+ export const formatTimestampAsTime = (ts) => timeFormatter.format(secondsToDate(ts));
239
+ /**
240
+ * Formats seconds as a relative date (x minutes ago)
241
+ * @param seconds - timestamp in seconds
242
+ * @returns relative date string
243
+ */
244
+ export const formatTimestampRelative = (ts) => {
245
+ let unit;
246
+ let delta = now() - ts;
247
+ if (delta < int(MINUTE)) {
248
+ unit = "second";
249
+ }
250
+ else if (delta < int(HOUR)) {
251
+ unit = "minute";
252
+ delta = Math.round(delta / int(MINUTE));
253
+ }
254
+ else if (delta < int(DAY, 2)) {
255
+ unit = "hour";
256
+ delta = Math.round(delta / int(HOUR));
257
+ }
258
+ else {
259
+ unit = "day";
260
+ delta = Math.round(delta / int(DAY));
261
+ }
262
+ const locale = new Intl.RelativeTimeFormat().resolvedOptions().locale;
263
+ const formatter = new Intl.RelativeTimeFormat(locale, {
264
+ numeric: "auto",
265
+ });
266
+ return formatter.format(-delta, unit);
267
+ };
180
268
  // ----------------------------------------------------------------------------
181
269
  // Sequences
182
270
  // ----------------------------------------------------------------------------
@@ -272,6 +360,13 @@ export const difference = (a, b) => {
272
360
  * @returns New array with element removed
273
361
  */
274
362
  export const remove = (a, xs) => xs.filter(x => x !== a);
363
+ /**
364
+ * Removes element at index
365
+ * @param i - Index to remove
366
+ * @param xs - Source array
367
+ * @returns New array with element removed
368
+ */
369
+ export const removeAt = (i, xs) => [...xs.slice(0, i), ...xs.slice(i + 1)];
275
370
  /**
276
371
  * Returns elements from second array not present in first
277
372
  * @param a - Array of elements to exclude
@@ -410,6 +505,19 @@ export const groupBy = (f, xs) => {
410
505
  }
411
506
  return r;
412
507
  };
508
+ /**
509
+ * Counts array elements by key function
510
+ * @param f - Function to generate group key
511
+ * @param xs - Array to count entries
512
+ * @returns Map of counts
513
+ */
514
+ export const countBy = (f, xs) => {
515
+ const r = new Map();
516
+ for (const [k, items] of groupBy(f, xs)) {
517
+ r.set(k, items.length);
518
+ }
519
+ return r;
520
+ };
413
521
  /**
414
522
  * Creates map from array using key function
415
523
  * @param f - Function to generate key
@@ -475,7 +583,9 @@ export const chunks = (n, xs) => {
475
583
  /** Splits array into two parts at index */
476
584
  export const splitAt = (n, xs) => [xs.slice(0, n), xs.slice(n)];
477
585
  /** Inserts element into array at index */
478
- export const insert = (n, x, xs) => [...xs.slice(0, n), x, ...xs.slice(n)];
586
+ export const insertAt = (n, x, xs) => [...xs.slice(0, n), x, ...xs.slice(n)];
587
+ /** Replaces array element at index */
588
+ export const replaceAt = (n, x, xs) => [...xs.slice(0, n), x, ...xs.slice(n + 1)];
479
589
  /** Returns random element from array */
480
590
  export const choice = (xs) => xs[Math.floor(xs.length * Math.random())];
481
591
  /** Returns shuffled copy of iterable */
@@ -488,6 +598,8 @@ export const isIterable = (x) => Symbol.iterator in Object(x);
488
598
  export const toIterable = (x) => (isIterable(x) ? x : [x]);
489
599
  /** Ensures value is array by wrapping if needed */
490
600
  export const ensurePlural = (x) => (x instanceof Array ? x : [x]);
601
+ /** Ensures values are not undefined */
602
+ export const removeNil = (xs) => xs.filter(isNotNil).map(assertNotNil);
491
603
  // ----------------------------------------------------------------------------
492
604
  // Objects
493
605
  // ----------------------------------------------------------------------------
@@ -719,6 +831,23 @@ export const randomId = () => Math.random().toString().slice(2);
719
831
  * @returns Promise that resolves after t milliseconds
720
832
  */
721
833
  export const sleep = (t) => new Promise(resolve => setTimeout(resolve, t));
834
+ /**
835
+ * Creates a promise that resolves after the condition completes or timeout
836
+ * @param options - PollOptions
837
+ * @returns void Promise
838
+ */
839
+ export const poll = ({ interval = 300, condition, signal }) => new Promise(resolve => {
840
+ const int = setInterval(() => {
841
+ if (condition()) {
842
+ resolve();
843
+ clearInterval(int);
844
+ }
845
+ }, interval);
846
+ signal.addEventListener("abort", () => {
847
+ resolve();
848
+ clearInterval(int);
849
+ });
850
+ });
722
851
  /**
723
852
  * Creates a microtask that yields to other tasks in the event loop
724
853
  * @returns Promise that resolves after yielding
@@ -822,6 +951,28 @@ export const batcher = (t, execute) => {
822
951
  queue.push({ request, resolve, reject });
823
952
  });
824
953
  };
954
+ /**
955
+ * Returns a promise that resolves after some proportion of promises complete
956
+ * @param threshold - number between 0 and 1 for how many promises to wait for
957
+ * @param promises - array of promises
958
+ * @returns promise
959
+ */
960
+ export const race = (threshold, promises) => {
961
+ let count = 0;
962
+ if (threshold === 0) {
963
+ return Promise.resolve();
964
+ }
965
+ return new Promise((resolve, reject) => {
966
+ promises.forEach(p => {
967
+ p.then(() => {
968
+ count++;
969
+ if (count >= threshold * promises.length) {
970
+ resolve();
971
+ }
972
+ }).catch(reject);
973
+ });
974
+ });
975
+ };
825
976
  // ----------------------------------------------------------------------------
826
977
  // URLs
827
978
  // ----------------------------------------------------------------------------
@@ -954,6 +1105,16 @@ export const ellipsize = (s, l, suffix = "...") => {
954
1105
  }
955
1106
  return s + suffix;
956
1107
  };
1108
+ /** Displays a list of items with oxford commas and a chosen conjunction */
1109
+ export const displayList = (xs, conj = "and", n = 6) => {
1110
+ if (xs.length > n + 2) {
1111
+ return `${xs.slice(0, n).join(", ")}, ${conj} ${xs.length - n} others`;
1112
+ }
1113
+ if (xs.length < 3) {
1114
+ return xs.join(` ${conj} `);
1115
+ }
1116
+ return `${xs.slice(0, -1).join(", ")}, ${conj} ${xs.slice(-1).join("")}`;
1117
+ };
957
1118
  /** Generates a hash string from input string */
958
1119
  export const hash = (s) => Math.abs(s.split("").reduce((a, b) => ((a << 5) - a + b.charCodeAt(0)) | 0, 0)).toString();
959
1120
  // ----------------------------------------------------------------------------
@@ -983,15 +1144,17 @@ export const spec = (values) => (x, ...args) => {
983
1144
  return true;
984
1145
  };
985
1146
  /** Returns a function that checks equality with value */
986
- export const eq = (v) => (x) => x === v;
1147
+ export const eq = (v) => (x, ...args) => x === v;
987
1148
  /** Returns a function that checks inequality with value */
988
- export const ne = (v) => (x) => x !== v;
1149
+ export const ne = (v) => (x, ...args) => x !== v;
989
1150
  /** Returns a function that gets property value from object */
990
1151
  export const prop = (k) => (x) => x[k];
991
1152
  /** Returns a function that adds/updates a property on object */
992
1153
  export const assoc = (k, v) => (o) => ({ ...o, [k]: v });
993
1154
  /** Returns a function that removes a property on object */
994
1155
  export const dissoc = (k) => (o) => omit([k], o);
1156
+ /** Returns a function that checks whether a value is in the given sequence */
1157
+ export const member = (xs) => (x) => Array.from(xs).includes(x);
995
1158
  // ----------------------------------------------------------------------------
996
1159
  // Sets
997
1160
  // ----------------------------------------------------------------------------
package/dist/Tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"Tools.js","sourceRoot":"","sources":["../src/Tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tools.js","sourceRoot":"","sources":["../src/Tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@welshman/lib",
3
- "version": "0.1.2",
3
+ "version": "0.2.0",
4
4
  "author": "hodlbod",
5
5
  "license": "MIT",
6
6
  "description": "A collection of utilities.",