@welshman/store 0.5.4 → 0.6.1

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 (93) hide show
  1. package/dist/lib/src/Tools.d.ts +17 -2
  2. package/dist/lib/src/Tools.d.ts.map +1 -1
  3. package/dist/lib/src/Tools.js +24 -2
  4. package/dist/lib/src/Tools.js.map +1 -1
  5. package/dist/net/src/adapter.d.ts +47 -0
  6. package/dist/net/src/adapter.d.ts.map +1 -0
  7. package/dist/net/src/adapter.js +126 -0
  8. package/dist/net/src/adapter.js.map +1 -0
  9. package/dist/net/src/auth.d.ts +40 -0
  10. package/dist/net/src/auth.d.ts.map +1 -0
  11. package/dist/net/src/auth.js +118 -0
  12. package/dist/net/src/auth.js.map +1 -0
  13. package/dist/net/src/context.d.ts +13 -0
  14. package/dist/net/src/context.d.ts.map +1 -0
  15. package/dist/net/src/context.js +10 -0
  16. package/dist/net/src/context.js.map +1 -0
  17. package/dist/net/src/diff.d.ts +56 -0
  18. package/dist/net/src/diff.d.ts.map +1 -0
  19. package/dist/net/src/diff.js +151 -0
  20. package/dist/net/src/diff.js.map +1 -0
  21. package/dist/net/src/index.d.ts +15 -0
  22. package/dist/net/src/index.d.ts.map +1 -0
  23. package/dist/net/src/index.js +15 -0
  24. package/dist/net/src/index.js.map +1 -0
  25. package/dist/net/src/message.d.ts +60 -0
  26. package/dist/net/src/message.d.ts.map +1 -0
  27. package/dist/net/src/message.js +35 -0
  28. package/dist/net/src/message.js.map +1 -0
  29. package/dist/net/src/negentropy.d.ts +48 -0
  30. package/dist/net/src/negentropy.d.ts.map +1 -0
  31. package/dist/net/src/negentropy.js +535 -0
  32. package/dist/net/src/negentropy.js.map +1 -0
  33. package/dist/net/src/policy.d.ts +41 -0
  34. package/dist/net/src/policy.d.ts.map +1 -0
  35. package/dist/net/src/policy.js +168 -0
  36. package/dist/net/src/policy.js.map +1 -0
  37. package/dist/net/src/pool.d.ts +21 -0
  38. package/dist/net/src/pool.d.ts.map +1 -0
  39. package/dist/net/src/pool.js +67 -0
  40. package/dist/net/src/pool.js.map +1 -0
  41. package/dist/net/src/publish.d.ts +45 -0
  42. package/dist/net/src/publish.d.ts.map +1 -0
  43. package/dist/net/src/publish.js +91 -0
  44. package/dist/net/src/publish.js.map +1 -0
  45. package/dist/{relay → net}/src/repository.d.ts +23 -24
  46. package/dist/net/src/repository.d.ts.map +1 -0
  47. package/dist/{relay → net}/src/repository.js +8 -19
  48. package/dist/net/src/repository.js.map +1 -0
  49. package/dist/net/src/request.d.ts +59 -0
  50. package/dist/net/src/request.d.ts.map +1 -0
  51. package/dist/net/src/request.js +202 -0
  52. package/dist/net/src/request.js.map +1 -0
  53. package/dist/net/src/socket.d.ts +43 -0
  54. package/dist/net/src/socket.d.ts.map +1 -0
  55. package/dist/net/src/socket.js +117 -0
  56. package/dist/net/src/socket.js.map +1 -0
  57. package/dist/net/src/tracker.d.ts +16 -0
  58. package/dist/net/src/tracker.d.ts.map +1 -0
  59. package/dist/net/src/tracker.js +63 -0
  60. package/dist/net/src/tracker.js.map +1 -0
  61. package/dist/net/src/util.d.ts +2 -0
  62. package/dist/net/src/util.d.ts.map +1 -0
  63. package/dist/net/src/util.js +2 -0
  64. package/dist/net/src/util.js.map +1 -0
  65. package/dist/net/src/wrapManager.d.ts +36 -0
  66. package/dist/net/src/wrapManager.d.ts.map +1 -0
  67. package/dist/net/src/wrapManager.js +90 -0
  68. package/dist/net/src/wrapManager.js.map +1 -0
  69. package/dist/store/src/repository.d.ts +1 -1
  70. package/dist/store/src/repository.d.ts.map +1 -1
  71. package/dist/store/src/repository.js.map +1 -1
  72. package/dist/util/src/Events.d.ts +0 -8
  73. package/dist/util/src/Events.d.ts.map +1 -1
  74. package/dist/util/src/Events.js +0 -4
  75. package/dist/util/src/Events.js.map +1 -1
  76. package/dist/util/src/Filters.d.ts.map +1 -1
  77. package/dist/util/src/Filters.js +1 -4
  78. package/dist/util/src/Filters.js.map +1 -1
  79. package/dist/util/src/Kinds.d.ts +10 -4
  80. package/dist/util/src/Kinds.d.ts.map +1 -1
  81. package/dist/util/src/Kinds.js +10 -4
  82. package/dist/util/src/Kinds.js.map +1 -1
  83. package/package.json +4 -4
  84. package/dist/relay/src/index.d.ts +0 -3
  85. package/dist/relay/src/index.d.ts.map +0 -1
  86. package/dist/relay/src/index.js +0 -3
  87. package/dist/relay/src/index.js.map +0 -1
  88. package/dist/relay/src/relay.d.ts +0 -13
  89. package/dist/relay/src/relay.d.ts.map +0 -1
  90. package/dist/relay/src/relay.js +0 -48
  91. package/dist/relay/src/relay.js.map +0 -1
  92. package/dist/relay/src/repository.d.ts.map +0 -1
  93. package/dist/relay/src/repository.js.map +0 -1
@@ -313,6 +313,20 @@ export declare const flatten: <T>(xs: (T | T[])[], ...args: unknown[]) => T[];
313
313
  * @returns Tuple of [matching, non-matching] arrays
314
314
  */
315
315
  export declare const partition: <T>(f: (x: T) => boolean, xs: T[]) => T[][];
316
+ /**
317
+ * Keeps items based on predicate
318
+ * @param f - Whether to remove an item from the array
319
+ * @param xs - Array of items to filter
320
+ * @returns Filtered array
321
+ */
322
+ export declare const filter: <T>(f: (x: T) => any, xs: T[]) => T[];
323
+ /**
324
+ * Removes items based on predicate
325
+ * @param f - Whether to remove an item from the array
326
+ * @param xs - Array of items to filter
327
+ * @returns Filtered array
328
+ */
329
+ export declare const reject: <T>(f: (x: T) => any, xs: T[]) => T[];
316
330
  /**
317
331
  * Returns array with duplicate elements removed
318
332
  * @param xs - Array with possible duplicates
@@ -476,6 +490,7 @@ export declare const deepMergeRight: (a: Obj, b: Obj) => Obj<any>;
476
490
  * @returns Value at key or default value
477
491
  */
478
492
  export declare const switcher: <T>(k: string, m: Record<string, T>) => T;
493
+ export declare const mapPop: <K, T>(k: K, m: Map<K, T>) => T | undefined;
479
494
  /** Returns a function that returns the boolean negation of the given function */
480
495
  export declare const complement: <T extends unknown[]>(f: (...args: T) => any) => (...args: T) => boolean;
481
496
  /**
@@ -667,8 +682,8 @@ export declare const on: <EventMap extends Record<string | symbol, any[]>, E ext
667
682
  export declare const ellipsize: (s: string, l: number, suffix?: string) => string;
668
683
  /** Displays a list of items with oxford commas and a chosen conjunction */
669
684
  export declare const displayList: <T>(xs: T[], conj?: string, n?: number) => string;
670
- /** Generates a hash string from input string */
671
- export declare const hash: (s: string) => string;
685
+ /** Generates a hash from input string */
686
+ export declare const hash: (s: string) => number;
672
687
  /** Returns a function that gets the nth element of an array */
673
688
  export declare const nth: (i: number) => <T>(xs: T[], ...args: unknown[]) => T;
674
689
  /** Returns a function that checks if nth element equals value */
@@ -1 +1 @@
1
- {"version":3,"file":"Tools.d.ts","sourceRoot":"","sources":["../../../../lib/src/Tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tools.d.ts","sourceRoot":"","sources":["../../../../lib/src/Tools.ts"],"names":[],"mappings":"AAEA,KAAK,GAAG,CAAC,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAMrC,MAAM,MAAM,GAAG,GAAG,IAAI,GAAG,SAAS,CAAA;AAElC,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,YAAkC,CAAA;AAEnF,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,gBAAkC,CAAA;AAEtF,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,mBAAO,CAAA;AAM/D,MAAM,MAAM,QAAQ,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,CAAA;AAEjD,MAAM,MAAM,YAAY,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,IAAI,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;AAEjF,MAAM,MAAM,eAAe,CAAC,CAAC,IAAI;KAC9B,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACvB,CAAA;AAMD,uDAAuD;AACvD,eAAO,MAAM,IAAI,GAAI,GAAG,MAAM,OAAO,EAAE,cAAc,CAAA;AAErD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,MAAM,CAAA;AAE1D;;;;GAIG;AACH,eAAO,MAAM,MAAM,GAChB,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,YAEzB,CAAA;AAEL;;;;GAIG;AACH,eAAO,MAAM,GAAG,GAAI,GAAG,GAAG,EAAE,GAAG,MAAM,OAAO,EAAE,YAAO,CAAA;AAErD;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,GAAG,GAAG,EAAE,GAAG,GAAG,YAoDpC,CAAA;AAMD,0CAA0C;AAC1C,eAAO,MAAM,YAAY,GAAI,GAAG,MAAM,GAAG,MAAM,WAA4B,CAAA;AAE3E,mEAAmE;AACnE,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,GAAG,SAAS,WAAW,CAAA;AAEpD,kDAAkD;AAClD,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,GAAG,SAAS,EAAE,GAAG,MAAM,GAAG,SAAS,WAAoB,CAAA;AAEpF,uDAAuD;AACvD,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,GAAG,SAAS,EAAE,GAAG,MAAM,GAAG,SAAS,WAAoB,CAAA;AAEpF,wDAAwD;AACxD,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,GAAG,SAAS,EAAE,GAAG,MAAM,GAAG,SAAS,WAAoB,CAAA;AAEpF,qDAAqD;AACrD,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,GAAG,SAAS,EAAE,GAAG,MAAM,WAAe,CAAA;AAEnE,0DAA0D;AAC1D,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,GAAG,SAAS,WAAc,CAAA;AAEvD,0DAA0D;AAC1D,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,GAAG,SAAS,WAAc,CAAA;AAEvD,sDAAsD;AACtD,eAAO,MAAM,EAAE,GAAI,GAAG,MAAM,GAAG,SAAS,EAAE,GAAG,MAAM,GAAG,SAAS,YAAoB,CAAA;AAEnF,+DAA+D;AAC/D,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,GAAG,SAAS,EAAE,GAAG,MAAM,GAAG,SAAS,YAAqB,CAAA;AAErF,yDAAyD;AACzD,eAAO,MAAM,EAAE,GAAI,GAAG,MAAM,GAAG,SAAS,EAAE,GAAG,MAAM,GAAG,SAAS,YAAoB,CAAA;AAEnF,kEAAkE;AAClE,eAAO,MAAM,GAAG,GAAI,GAAG,MAAM,GAAG,SAAS,EAAE,GAAG,MAAM,GAAG,SAAS,YAAqB,CAAA;AAErF,gEAAgE;AAChE,eAAO,MAAM,GAAG,GAAI,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,WACY,CAAA;AAE1D,gEAAgE;AAChE,eAAO,MAAM,GAAG,GAAI,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,WAM7C,CAAA;AAED,6DAA6D;AAC7D,eAAO,MAAM,GAAG,GAAI,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,WAA8C,CAAA;AAE5F,iEAAiE;AACjE,eAAO,MAAM,GAAG,GAAI,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,WAAwB,CAAA;AAEtE;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,MAAM,YAAwB,CAAA;AAExF;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,MAAM,YAA0B,CAAA;AAEzF;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,GAAG,MAAM,WAAoC,CAAA;AAEjG;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,WAAW,MAAM,EAAE,GAAG,MAAM,WACiB,CAAA;AAMnE,4BAA4B;AAE5B,eAAO,MAAM,MAAM,KAAK,CAAA;AAExB,0BAA0B;AAC1B,eAAO,MAAM,IAAI,QAAc,CAAA;AAE/B,yBAAyB;AACzB,eAAO,MAAM,GAAG,QAAY,CAAA;AAE5B,0BAA0B;AAC1B,eAAO,MAAM,IAAI,QAAU,CAAA;AAE3B,yCAAyC;AACzC,eAAO,MAAM,KAAK,QAAW,CAAA;AAE7B,2CAA2C;AAC3C,eAAO,MAAM,OAAO,QAAW,CAAA;AAE/B,wCAAwC;AACxC,eAAO,MAAM,IAAI,QAAY,CAAA;AAE7B,4BAA4B;AAC5B,eAAO,MAAM,MAAM,QAAqD,CAAA;AAExE,8BAA8B;AAC9B,eAAO,MAAM,QAAQ,QAIjB,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,GAAG,GAAI,MAAM,MAAM,EAAE,cAAS,WAAiB,CAAA;AAE5D,gDAAgD;AAChD,eAAO,MAAM,GAAG,cAAsC,CAAA;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,GAAG,GAAI,MAAM,MAAM,EAAE,cAAS,WAA6B,CAAA;AAExE;;;;GAIG;AACH,eAAO,MAAM,EAAE,GAAI,SAAS,MAAM,WAAmB,CAAA;AAErD;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,SAAS,MAAM,SAA6B,CAAA;AAE1E;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,IAAI,WAAsC,CAAA;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,eAAe,GAAI,YAAY,GAAG,EAAE,iBAAmB,SAC1B,CAAA;AAE1C,8BAA8B;AAC9B,eAAO,MAAM,iBAAiB,qBAG5B,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAI,SAAS,MAAM,WAAqD,CAAA;AAEpG,yBAAyB;AACzB,eAAO,MAAM,aAAa,qBAIxB,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,IAAI,MAAM,WAA4C,CAAA;AAE5F,yBAAyB;AACzB,eAAO,MAAM,aAAa,qBAExB,CAAA;AAEF;;;;GAIG;AACH,eAAO,MAAM,qBAAqB,GAAI,IAAI,MAAM,WAA4C,CAAA;AAE5F;;;;GAIG;AACH,eAAO,MAAM,uBAAuB,GAAI,IAAI,MAAM,WAsBjD,CAAA;AAMD;;;;GAIG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,kBAI3D,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,kBAMtE,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,MAI1D,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,QAA4B,CAAA;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,QAA+B,CAAA;AAEjF;;;;GAIG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,IAAI,CAAC,EAAE,EAAE,QAAgD,CAAA;AAEtF;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAgC,CAAA;AAE/E;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAuB,CAAA;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,QAI7D,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,QAI3D,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,QAA4B,CAAA;AAEnE;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,QAA4C,CAAA;AAE1F;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,QAAkC,CAAA;AAE3E;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,QAAqD,CAAA;AAE5F;;;;;;GAMG;AACH,wBAAiB,KAAK,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,SAAI,oCAIpD;AAED;;;;GAIG;AACH,wBAAiB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,yCAIvC;AAED,8DAA8D;AAC9D,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,QAA2B,CAAA;AAE5F;;;;GAIG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,sBAU5E,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,MAAM,OAAO,EAAE,QAAyB,CAAA;AAEvF;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,OAAO,EAAE,IAAI,CAAC,EAAE,UAazD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,EAAE,IAAI,CAAC,EAAE,QAAiB,CAAA;AAEpE;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,EAAE,IAAI,CAAC,EAAE,QAA6B,CAAA;AAEhF;;;;GAIG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,IAAI,CAAC,EAAE,QAA4B,CAAA;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,EAAE,IAAI,CAAC,EAAE,QAgBlD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,IAAI,CAAC,EAAE,QAAmB,CAAA;AAElD;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,GAAG,EAAE,IAAI,CAAC,EAAE,QAM/C,CAAA;AAEJ;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,gBAgB5D,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,EAAE,mBAOpD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,EAAE,cAQpD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,QAQjD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,aAAa,MAAM,EAAE,IAAI,CAAC,EAAE,UAkBpD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,UAQ3C,CAAA;AAED,2CAA2C;AAC3C,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,UAAkC,CAAA;AAE/E,0CAA0C;AAC1C,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,QAA2C,CAAA;AAE/F,sCAAsC;AACtC,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,QAA+C,CAAA;AAEpG,wCAAwC;AACxC,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,IAAI,CAAC,EAAE,KAAG,CAA8C,CAAA;AAElF,wCAAwC;AACxC,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,KAAG,CAAC,EACa,CAAA;AAE3D,2CAA2C;AAC3C,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,CAAC,EAAE,QAA4B,CAAA;AAExE,kCAAkC;AAClC,eAAO,MAAM,UAAU,GAAI,GAAG,GAAG,YAAiC,CAAA;AAElE,+DAA+D;AAC/D,eAAO,MAAM,UAAU,GAAI,GAAG,GAAG,QAA8B,CAAA;AAE/D,mDAAmD;AACnD,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,QAAmC,CAAA;AAE7E,uCAAuC;AACvC,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,IAAI,CAAC,EAAE,0BAA0C,CAAA;AAE9E,4DAA4D;AAC5D,eAAO,MAAM,gBAAgB,GAAI,CAAC,EAAE,IAAI,CAAC,EAAE,KAAG,CAAC,EAAE,EAOhD,CAAA;AAMD;;;;GAIG;AACH,eAAO,MAAM,MAAM,GAAI,KAAK,GAAG,YAM9B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,GAAG,EAAE,IAAI,MAAM,EAAE,EAAE,GAAG,CAAC,MAUrD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,GAAG,EAAE,IAAI,MAAM,EAAE,EAAE,GAAG,CAAC,MAQrD,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,GAAG,EAAE,IAAI,GAAG,EAAE,EAAE,GAAG,CAAC,KASzC,CACb,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,KAAK,OAAO,EAAE,GAAG,CAAC,MAUrF,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,SAAS,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,EAAE,GAAG,CAAC,KAOvD,CACb,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,sBAQjE,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,MAGjD,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,MAGlD,CAAA;AAEF,+DAA+D;AAC/D,eAAO,MAAM,aAAa,GAAI,GAAG,GAAG,EAAE,GAAG,GAAG,aAAyB,CAAA;AAErE,gEAAgE;AAChE,eAAO,MAAM,cAAc,GAAI,GAAG,GAAG,EAAE,GAAG,GAAG,aAY5C,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MACpB,CAAA;AAMvC,eAAO,MAAM,MAAM,GAAI,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,kBAM9C,CAAA;AAMD,iFAAiF;AACjF,eAAO,MAAM,UAAU,GACpB,CAAC,SAAS,OAAO,EAAE,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,KAAK,GAAG,MAC3C,GAAG,MAAM,CAAC,YACE,CAAA;AAEf;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,KAAG,CAAC,GAAG,SAc1E,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,IAAI,GAAI,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,IAAI,MAGpC,GAAG,MAAM,GAAG,SAMrB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,EAAE,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,MAAQ,CAAA;AAE9D;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,MAIzC,GAAG,MAAM,GAAG,EAAE,MAQvB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,GAAG,CAAC,GAAG,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,SACxB,CAAA;AAMpC;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,YAAO,EAAE,YAAO,WAAkD,CAAA;AAE5F;;;GAGG;AACH,eAAO,MAAM,QAAQ,QAAO,MAA2C,CAAA;AAMvE;;;;GAIG;AACH,eAAO,MAAM,KAAK,GAAI,GAAG,MAAM,qBAAmD,CAAA;AAElF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,WAAW,CAAA;IACnB,SAAS,EAAE,MAAM,OAAO,CAAA;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,IAAI,GAAI,iCAAqC,WAAW,kBAkBjE,CAAA;AAEJ;;;GAGG;AACH,eAAO,MAAM,WAAW,WAYvB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,IAAI,MAAM,EAAE,GAAG,CAAC,wBAkBrD,UAAU,CAAC,CAAC,CAAC,UASnC,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,GAAI,CAAC,EAAE,IAAI,MAAM,EAAE,GAAG,MAAM,CAAC,YAY1D,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,IAAI,MAI9C,GAAG,CAAC,SAIb,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,OAAO,GAAI,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,MAgB5E,SAAS,CAAC,KAAG,OAAO,CAAC,CAAC,CAQ/B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,IAAI,GAAI,WAAW,MAAM,EAAE,UAAU,OAAO,CAAC,OAAO,CAAC,EAAE,kBAkBnE,CAAA;AAMD;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,WAA+B,CAAA;AAExE;;;;GAIG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,WAGf,CAAA;AAEvB;;;;GAIG;AACH,eAAO,MAAM,aAAa,GAAI,KAAK,MAAM,WAAiD,CAAA;AAM1F;;;;GAIG;AACH,eAAO,MAAM,SAAS,GAAI,MAAM,MAAM,GAAG,SAAS,QAQjD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,GAAG,MAAM,QAA6C,CAAA;AAE9E;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,GAAG,MAAM,EAAE,GAAG,GAAG,SAA+C,CAAA;AAExF,iCAAiC;AACjC,KAAK,SAAS,GAAG;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAA;IAC1C,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAA;CACzB,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAU,KAAK,MAAM,EAAE,OAAM,SAAc,iBAgBhE,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,GAAU,CAAC,EAAE,KAAK,MAAM,EAAE,MAAM,CAAC,EAAE,OAAM,SAAc,iBAgB3E,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,MAAM,IAAI,iBAMjD,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,EAAE,GAAI,QAAQ,SAAS,MAAM,CAAC,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,SAAS,MAAM,QAAQ,EAC1F,QAAQ;IACN,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,GAAG,CAAA;IAC1D,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,GAAG,CAAA;CAC5D,EACD,WAAW,CAAC,EACZ,UAAU,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,KACvC,CAAC,MAAM,IAAI,CAMb,CAAA;AAMD;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,eAAc,WAU7D,CAAA;AAED,2EAA2E;AAC3E,eAAO,MAAM,WAAW,GAAI,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,aAAY,EAAE,UAAK,WAU1D,CAAA;AAED,yCAAyC;AACzC,eAAO,MAAM,IAAI,GAAI,GAAG,MAAM,WACmD,CAAA;AAMjF,+DAA+D;AAC/D,eAAO,MAAM,GAAG,GACb,GAAG,MAAM,MACT,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,GAAG,MAAM,OAAO,EAAE,MACxB,CAAA;AAET,iEAAiE;AACjE,eAAO,MAAM,KAAK,GACf,GAAG,MAAM,EAAE,GAAG,GAAG,MACjB,IAAI,GAAG,EAAE,EAAE,GAAG,MAAM,OAAO,EAAE,YACjB,CAAA;AAEf,yEAAyE;AACzE,eAAO,MAAM,KAAK,GACf,GAAG,MAAM,EAAE,GAAG,GAAG,MACjB,IAAI,GAAG,EAAE,EAAE,GAAG,MAAM,OAAO,EAAE,YACjB,CAAA;AAEf,qFAAqF;AACrF,eAAO,MAAM,IAAI,GACd,QAAQ,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MACxB,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,YAcvC,CAAA;AAEH,yDAAyD;AACzD,eAAO,MAAM,EAAE,GACZ,CAAC,EAAE,GAAG,CAAC,MACP,GAAG,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,YAChB,CAAA;AAEX,2DAA2D;AAC3D,eAAO,MAAM,EAAE,GACZ,CAAC,EAAE,GAAG,CAAC,MACP,GAAG,CAAC,EAAE,GAAG,MAAM,OAAO,EAAE,YAChB,CAAA;AAEX,8DAA8D;AAC9D,eAAO,MAAM,IAAI,GACd,CAAC,EAAE,GAAG,MAAM,MACZ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KACjB,CAAC,CAAA;AAEb,gEAAgE;AAChE,eAAO,MAAM,KAAK,GACf,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,MAClC,GAAG,CAAC,KACsB,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAE7C,2DAA2D;AAC3D,eAAO,MAAM,MAAM,GAChB,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,GAAG,EAAE,GAAG,CAAC,MACrC,GAAG,CAAC,MACS,CAAA;AAEhB,8EAA8E;AAC9E,eAAO,MAAM,MAAM,GAChB,CAAC,EAAE,IAAI,QAAQ,CAAC,CAAC,CAAC,MAClB,GAAG,CAAC,YACuB,CAAA;AAM9B;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,SAQrE,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,CAAC,SAQnE,CAAA;AAMD;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAI,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,SAQ9D,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,SAQ5D,CAAA;AAMD;;;;;GAKG;AACH,eAAO,MAAM,WAAW,GAAI,QAAQ,MAAM,EAAE,KAAK,MAAM,qCACS,CAAA;AAEhE;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAI,KAAK,MAAM,WACgC,CAAA;AAMvE;;;;GAIG;AACH,eAAO,MAAM,UAAU,GAAI,QAAQ,WAAW,GAAG,UAAU,WAQ1D,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,4BAC6B,CAAA;AAMnE,eAAO,MAAM,WAAW,aAAoB,CAAA;AAE5C,eAAO,MAAM,WAAW,aAAoB,CAAA;AAE5C;;;;GAIG;AACH,eAAO,MAAM,MAAM,GAAU,MAAM,WAAW,GAAG,UAAU,KAAG,OAAO,CAAC,MAAM,CAI3E,CAAA"}
@@ -447,6 +447,20 @@ export const partition = (f, xs) => {
447
447
  }
448
448
  return [a, b];
449
449
  };
450
+ /**
451
+ * Keeps items based on predicate
452
+ * @param f - Whether to remove an item from the array
453
+ * @param xs - Array of items to filter
454
+ * @returns Filtered array
455
+ */
456
+ export const filter = (f, xs) => xs.filter(f);
457
+ /**
458
+ * Removes items based on predicate
459
+ * @param f - Whether to remove an item from the array
460
+ * @param xs - Array of items to filter
461
+ * @returns Filtered array
462
+ */
463
+ export const reject = (f, xs) => xs.filter(complement(f));
450
464
  /**
451
465
  * Returns array with duplicate elements removed
452
466
  * @param xs - Array with possible duplicates
@@ -752,6 +766,14 @@ export const deepMergeRight = (a, b) => {
752
766
  */
753
767
  export const switcher = (k, m) => m[k] === undefined ? m.default : m[k];
754
768
  // ----------------------------------------------------------------------------
769
+ // Maps
770
+ // ----------------------------------------------------------------------------
771
+ export const mapPop = (k, m) => {
772
+ const v = m.get(k);
773
+ m.delete(k);
774
+ return v;
775
+ };
776
+ // ----------------------------------------------------------------------------
755
777
  // Combinators
756
778
  // ----------------------------------------------------------------------------
757
779
  /** Returns a function that returns the boolean negation of the given function */
@@ -1137,8 +1159,8 @@ export const displayList = (xs, conj = "and", n = 6) => {
1137
1159
  }
1138
1160
  return `${xs.slice(0, -1).join(", ")}, ${conj} ${xs.slice(-1).join("")}`;
1139
1161
  };
1140
- /** Generates a hash string from input string */
1141
- export const hash = (s) => Math.abs(s.split("").reduce((a, b) => ((a << 5) - a + b.charCodeAt(0)) | 0, 0)).toString();
1162
+ /** Generates a hash from input string */
1163
+ export const hash = (s) => Math.abs(s.split("").reduce((a, b) => ((a << 5) - a + b.charCodeAt(0)) | 0, 0));
1142
1164
  // ----------------------------------------------------------------------------
1143
1165
  // Curried utilities for working with collections
1144
1166
  // ----------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"Tools.js","sourceRoot":"","sources":["../../../../lib/src/Tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tools.js","sourceRoot":"","sources":["../../../../lib/src/Tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ import EventEmitter from "events";
2
+ import { Filter } from "@welshman/util";
3
+ import { Repository } from "./repository";
4
+ import { RelayMessage, ClientMessage } from "./message.js";
5
+ import { Socket } from "./socket.js";
6
+ import { Unsubscriber } from "./util.js";
7
+ import { NetContext } from "./context.js";
8
+ export declare enum AdapterEvent {
9
+ Receive = "receive"
10
+ }
11
+ export type AdapterEvents = {
12
+ [AdapterEvent.Receive]: (message: RelayMessage, url: string) => void;
13
+ };
14
+ export declare abstract class AbstractAdapter extends EventEmitter {
15
+ _unsubscribers: Unsubscriber[];
16
+ abstract urls: string[];
17
+ abstract sockets: Socket[];
18
+ abstract send(message: ClientMessage): void;
19
+ cleanup(): void;
20
+ }
21
+ export declare class SocketAdapter extends AbstractAdapter {
22
+ readonly socket: Socket;
23
+ constructor(socket: Socket);
24
+ get sockets(): Socket[];
25
+ get urls(): string[];
26
+ send(message: ClientMessage): void;
27
+ }
28
+ export declare class LocalAdapter extends AbstractAdapter {
29
+ #private;
30
+ readonly repository: Repository;
31
+ subs: Map<string, Filter[]>;
32
+ constructor(repository: Repository);
33
+ get sockets(): never[];
34
+ get urls(): string[];
35
+ send(message: ClientMessage): void;
36
+ }
37
+ export declare class MockAdapter extends AbstractAdapter {
38
+ readonly url: string;
39
+ readonly send: (message: ClientMessage) => void;
40
+ constructor(url: string, send: (message: ClientMessage) => void);
41
+ get sockets(): never[];
42
+ get urls(): string[];
43
+ receive: (message: RelayMessage) => void;
44
+ }
45
+ export type AdapterContext = Partial<NetContext>;
46
+ export declare const getAdapter: (url: string, adapterContext?: AdapterContext) => any;
47
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../net/src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,QAAQ,CAAA;AAEjC,OAAO,EAA2B,MAAM,EAAC,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAkB,UAAU,EAAC,MAAM,cAAc,CAAA;AACxD,OAAO,EACL,YAAY,EAEZ,aAAa,EAKd,MAAM,cAAc,CAAA;AACrB,OAAO,EAAC,MAAM,EAAc,MAAM,aAAa,CAAA;AAC/C,OAAO,EAAC,YAAY,EAAC,MAAM,WAAW,CAAA;AACtC,OAAO,EAAa,UAAU,EAAC,MAAM,cAAc,CAAA;AAEnD,oBAAY,YAAY;IACtB,OAAO,YAAY;CACpB;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;CACrE,CAAA;AAED,8BAAsB,eAAgB,SAAQ,YAAY;IACxD,cAAc,EAAE,YAAY,EAAE,CAAK;IAEnC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAA;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAA;IAC1B,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAE3C,OAAO;CAIR;AAED,qBAAa,aAAc,SAAQ,eAAe;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM;gBAAd,MAAM,EAAE,MAAM;IAUnC,IAAI,OAAO,aAEV;IAED,IAAI,IAAI,aAEP;IAED,IAAI,CAAC,OAAO,EAAE,aAAa;CAG5B;AAED,qBAAa,YAAa,SAAQ,eAAe;;IAGnC,QAAQ,CAAC,UAAU,EAAE,UAAU;IAF3C,IAAI,wBAA8B;gBAEb,UAAU,EAAE,UAAU;IAgB3C,IAAI,OAAO,YAEV;IAED,IAAI,IAAI,aAEP;IAED,IAAI,CAAC,OAAO,EAAE,aAAa;CAsC5B;AAED,qBAAa,WAAY,SAAQ,eAAe;IAE5C,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI;gBADtC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI;IAKjD,IAAI,OAAO,YAEV;IAED,IAAI,IAAI,aAEP;IAED,OAAO,GAAI,SAAS,YAAY,UAE/B;CACF;AAED,MAAM,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;AAEhD,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,EAAE,iBAAgB,cAAmB,QAoB1E,CAAA"}
@@ -0,0 +1,126 @@
1
+ import EventEmitter from "events";
2
+ import { call, sleep, mergeRight, on } from "@welshman/lib";
3
+ import { isRelayUrl, matchFilters } from "@welshman/util";
4
+ import { LOCAL_RELAY_URL } from "./repository";
5
+ import { RelayMessageType, ClientMessageType, } from "./message.js";
6
+ import { SocketEvent } from "./socket.js";
7
+ import { netContext } from "./context.js";
8
+ export var AdapterEvent;
9
+ (function (AdapterEvent) {
10
+ AdapterEvent["Receive"] = "receive";
11
+ })(AdapterEvent || (AdapterEvent = {}));
12
+ export class AbstractAdapter extends EventEmitter {
13
+ _unsubscribers = [];
14
+ cleanup() {
15
+ this.removeAllListeners();
16
+ this._unsubscribers.splice(0).forEach(call);
17
+ }
18
+ }
19
+ export class SocketAdapter extends AbstractAdapter {
20
+ socket;
21
+ constructor(socket) {
22
+ super();
23
+ this.socket = socket;
24
+ this._unsubscribers.push(on(socket, SocketEvent.Receive, (message, url) => {
25
+ this.emit(AdapterEvent.Receive, message, url);
26
+ }));
27
+ }
28
+ get sockets() {
29
+ return [this.socket];
30
+ }
31
+ get urls() {
32
+ return [this.socket.url];
33
+ }
34
+ send(message) {
35
+ this.socket.send(message);
36
+ }
37
+ }
38
+ export class LocalAdapter extends AbstractAdapter {
39
+ repository;
40
+ subs = new Map();
41
+ constructor(repository) {
42
+ super();
43
+ this.repository = repository;
44
+ this._unsubscribers.push(on(repository, "update", ({ added }) => {
45
+ for (const [subId, filters] of this.subs.entries()) {
46
+ for (const event of added) {
47
+ if (matchFilters(filters, event)) {
48
+ this.#receive([RelayMessageType.Event, subId, event]);
49
+ }
50
+ }
51
+ }
52
+ }));
53
+ }
54
+ get sockets() {
55
+ return [];
56
+ }
57
+ get urls() {
58
+ return [LOCAL_RELAY_URL];
59
+ }
60
+ send(message) {
61
+ switch (message[0]) {
62
+ case ClientMessageType.Event:
63
+ return this.#handleEVENT(message);
64
+ case ClientMessageType.Close:
65
+ return this.#handleCLOSE(message);
66
+ case ClientMessageType.Req:
67
+ return this.#handleREQ(message);
68
+ }
69
+ }
70
+ #receive(message) {
71
+ this.emit(AdapterEvent.Receive, message, LOCAL_RELAY_URL);
72
+ }
73
+ #handleEVENT([_, event]) {
74
+ this.repository.publish(event);
75
+ // Callers generally expect async relays
76
+ sleep(1).then(() => this.#receive([RelayMessageType.Ok, event.id, true, ""]));
77
+ }
78
+ #handleCLOSE([_, subId]) {
79
+ this.subs.delete(subId);
80
+ }
81
+ #handleREQ([_, subId, ...filters]) {
82
+ this.subs.set(subId, filters);
83
+ // Callers generally expect async relays
84
+ sleep(1).then(() => {
85
+ for (const event of this.repository.query(filters)) {
86
+ this.#receive([RelayMessageType.Event, subId, event]);
87
+ }
88
+ this.#receive([RelayMessageType.Eose, subId]);
89
+ });
90
+ }
91
+ }
92
+ export class MockAdapter extends AbstractAdapter {
93
+ url;
94
+ send;
95
+ constructor(url, send) {
96
+ super();
97
+ this.url = url;
98
+ this.send = send;
99
+ }
100
+ get sockets() {
101
+ return [];
102
+ }
103
+ get urls() {
104
+ return [this.url];
105
+ }
106
+ receive = (message) => {
107
+ this.emit(AdapterEvent.Receive, message, this.url);
108
+ };
109
+ }
110
+ export const getAdapter = (url, adapterContext = {}) => {
111
+ const context = mergeRight(netContext, adapterContext);
112
+ if (context.getAdapter) {
113
+ const adapter = context.getAdapter(url, context);
114
+ if (adapter) {
115
+ return adapter;
116
+ }
117
+ }
118
+ if (url === LOCAL_RELAY_URL) {
119
+ return new LocalAdapter(context.repository);
120
+ }
121
+ if (isRelayUrl(url)) {
122
+ return new SocketAdapter(context.pool.get(url));
123
+ }
124
+ throw new Error(`Invalid relay url ${url}`);
125
+ };
126
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../net/src/adapter.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,QAAQ,CAAA;AACjC,OAAO,EAAC,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,EAAC,MAAM,eAAe,CAAA;AACzD,OAAO,EAAC,UAAU,EAAE,YAAY,EAAS,MAAM,gBAAgB,CAAA;AAC/D,OAAO,EAAC,eAAe,EAAa,MAAM,cAAc,CAAA;AACxD,OAAO,EAEL,gBAAgB,EAEhB,iBAAiB,GAIlB,MAAM,cAAc,CAAA;AACrB,OAAO,EAAS,WAAW,EAAC,MAAM,aAAa,CAAA;AAE/C,OAAO,EAAC,UAAU,EAAa,MAAM,cAAc,CAAA;AAEnD,MAAM,CAAN,IAAY,YAEX;AAFD,WAAY,YAAY;IACtB,mCAAmB,CAAA;AACrB,CAAC,EAFW,YAAY,KAAZ,YAAY,QAEvB;AAMD,MAAM,OAAgB,eAAgB,SAAQ,YAAY;IACxD,cAAc,GAAmB,EAAE,CAAA;IAMnC,OAAO;QACL,IAAI,CAAC,kBAAkB,EAAE,CAAA;QACzB,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC7C,CAAC;CACF;AAED,MAAM,OAAO,aAAc,SAAQ,eAAe;IAC3B;IAArB,YAAqB,MAAc;QACjC,KAAK,EAAE,CAAA;QADY,WAAM,GAAN,MAAM,CAAQ;QAGjC,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,OAAqB,EAAE,GAAW,EAAE,EAAE;YACrE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;QAC/C,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAED,IAAI,OAAO;QACT,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;IAED,IAAI,CAAC,OAAsB;QACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC3B,CAAC;CACF;AAED,MAAM,OAAO,YAAa,SAAQ,eAAe;IAG1B;IAFrB,IAAI,GAAG,IAAI,GAAG,EAAoB,CAAA;IAElC,YAAqB,UAAsB;QACzC,KAAK,EAAE,CAAA;QADY,eAAU,GAAV,UAAU,CAAY;QAGzC,IAAI,CAAC,cAAc,CAAC,IAAI,CACtB,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAC,EAAE,EAAE;YACnC,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;gBACnD,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC1B,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;wBACjC,IAAI,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;oBACvD,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CACH,CAAA;IACH,CAAC;IAED,IAAI,OAAO;QACT,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,IAAI;QACN,OAAO,CAAC,eAAe,CAAC,CAAA;IAC1B,CAAC;IAED,IAAI,CAAC,OAAsB;QACzB,QAAQ,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACnB,KAAK,iBAAiB,CAAC,KAAK;gBAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,OAAsB,CAAC,CAAA;YAClD,KAAK,iBAAiB,CAAC,KAAK;gBAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,OAAsB,CAAC,CAAA;YAClD,KAAK,iBAAiB,CAAC,GAAG;gBACxB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAoB,CAAC,CAAA;QAChD,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,OAAqB;QAC5B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,eAAe,CAAC,CAAA;IAC3D,CAAC;IAED,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,CAAc;QAClC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QAE9B,wCAAwC;QACxC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAA;IAC/E,CAAC;IAED,YAAY,CAAC,CAAC,CAAC,EAAE,KAAK,CAAc;QAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IACzB,CAAC;IAED,UAAU,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,OAAO,CAAY;QAC1C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;QAE7B,wCAAwC;QACxC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACjB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;gBACnD,IAAI,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAA;YACvD,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAA;QAC/C,CAAC,CAAC,CAAA;IACJ,CAAC;CACF;AAED,MAAM,OAAO,WAAY,SAAQ,eAAe;IAEnC;IACA;IAFX,YACW,GAAW,EACX,IAAsC;QAE/C,KAAK,EAAE,CAAA;QAHE,QAAG,GAAH,GAAG,CAAQ;QACX,SAAI,GAAJ,IAAI,CAAkC;IAGjD,CAAC;IAED,IAAI,OAAO;QACT,OAAO,EAAE,CAAA;IACX,CAAC;IAED,IAAI,IAAI;QACN,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IACnB,CAAC;IAED,OAAO,GAAG,CAAC,OAAqB,EAAE,EAAE;QAClC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;IACpD,CAAC,CAAA;CACF;AAID,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAW,EAAE,iBAAiC,EAAE,EAAE,EAAE;IAC7E,MAAM,OAAO,GAAG,UAAU,CAAC,UAAU,EAAE,cAAqB,CAAC,CAAA;IAE7D,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QAEhD,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,OAAO,CAAA;QAChB,CAAC;IACH,CAAC;IAED,IAAI,GAAG,KAAK,eAAe,EAAE,CAAC;QAC5B,OAAO,IAAI,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IACjD,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAA;AAC7C,CAAC,CAAA"}
@@ -0,0 +1,40 @@
1
+ import EventEmitter from "events";
2
+ import { SignedEvent, StampedEvent } from "@welshman/util";
3
+ import { Socket } from "./socket.js";
4
+ import { Unsubscriber } from "./util.js";
5
+ export declare enum AuthStatus {
6
+ None = "none",
7
+ Requested = "requested",
8
+ PendingSignature = "pending_signature",
9
+ DeniedSignature = "denied_signature",
10
+ PendingResponse = "pending_response",
11
+ Forbidden = "forbidden",
12
+ Ok = "ok"
13
+ }
14
+ export type AuthResult = {
15
+ ok: boolean;
16
+ reason?: string;
17
+ };
18
+ export declare enum AuthStateEvent {
19
+ Status = "auth:event:status"
20
+ }
21
+ export type AuthStateEvents = {
22
+ [AuthStateEvent.Status]: (status: AuthStatus) => void;
23
+ };
24
+ type Sign = (event: StampedEvent) => Promise<SignedEvent>;
25
+ export declare class AuthState extends EventEmitter {
26
+ readonly socket: Socket;
27
+ challenge: string | undefined;
28
+ request: string | undefined;
29
+ details: string | undefined;
30
+ status: AuthStatus;
31
+ _unsubscribers: Unsubscriber[];
32
+ constructor(socket: Socket);
33
+ setStatus(status: AuthStatus): void;
34
+ doAuth(sign: Sign): Promise<void>;
35
+ attemptAuth(sign: Sign): Promise<void>;
36
+ retryAuth(sign: Sign): Promise<void>;
37
+ cleanup(): void;
38
+ }
39
+ export {};
40
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../../net/src/auth.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,QAAQ,CAAA;AAEjC,OAAO,EAAC,WAAW,EAAE,YAAY,EAAC,MAAM,gBAAgB,CAAA;AAGxD,OAAO,EAAC,MAAM,EAA4B,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAC,YAAY,EAAC,MAAM,WAAW,CAAA;AAEtC,oBAAY,UAAU;IACpB,IAAI,SAAS;IACb,SAAS,cAAc;IACvB,gBAAgB,sBAAsB;IACtC,eAAe,qBAAqB;IACpC,eAAe,qBAAqB;IACpC,SAAS,cAAc;IACvB,EAAE,OAAO;CACV;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,EAAE,EAAE,OAAO,CAAA;IACX,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AAED,oBAAY,cAAc;IACxB,MAAM,sBAAsB;CAC7B;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,IAAI,CAAA;CACtD,CAAA;AAED,KAAK,IAAI,GAAG,CAAC,KAAK,EAAE,YAAY,KAAK,OAAO,CAAC,WAAW,CAAC,CAAA;AAEzD,qBAAa,SAAU,SAAQ,YAAY;IAO7B,QAAQ,CAAC,MAAM,EAAE,MAAM;IANnC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAA;IAC7B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,OAAO,EAAE,MAAM,GAAG,SAAS,CAAA;IAC3B,MAAM,aAAkB;IACxB,cAAc,EAAE,YAAY,EAAE,CAAK;gBAEd,MAAM,EAAE,MAAM;IAgDnC,SAAS,CAAC,MAAM,EAAE,UAAU;IAKtB,MAAM,CAAC,IAAI,EAAE,IAAI;IAsBjB,WAAW,CAAC,IAAI,EAAE,IAAI;IAoBtB,SAAS,CAAC,IAAI,EAAE,IAAI;IAU1B,OAAO;CAIR"}