@zajno/common 2.0.0-beta.1 → 2.0.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.
Files changed (201) hide show
  1. package/coverage/clover.xml +66 -21
  2. package/coverage/coverage-final.json +3 -2
  3. package/coverage/lcov-report/__tests__/helpers/expect.ts.html +1 -1
  4. package/coverage/lcov-report/__tests__/helpers/index.html +1 -1
  5. package/coverage/lcov-report/__tests__/helpers/main.ts.html +1 -1
  6. package/coverage/lcov-report/async/arrays.ts.html +1 -1
  7. package/coverage/lcov-report/async/index.html +1 -1
  8. package/coverage/lcov-report/async/timeout.ts.html +13 -13
  9. package/coverage/lcov-report/dates/calc.ts.html +1 -1
  10. package/coverage/lcov-report/dates/convert.ts.html +1 -1
  11. package/coverage/lcov-report/dates/datex.ts.html +1 -1
  12. package/coverage/lcov-report/dates/format.ts.html +1 -1
  13. package/coverage/lcov-report/dates/index.html +1 -1
  14. package/coverage/lcov-report/dates/index.ts.html +1 -1
  15. package/coverage/lcov-report/dates/parse.ts.html +1 -1
  16. package/coverage/lcov-report/dates/period.ts.html +1 -1
  17. package/coverage/lcov-report/dates/shift.ts.html +1 -1
  18. package/coverage/lcov-report/dates/types.ts.html +1 -1
  19. package/coverage/lcov-report/dates/yearDate.ts.html +1 -1
  20. package/coverage/lcov-report/fields/index.html +1 -1
  21. package/coverage/lcov-report/fields/update.ts.html +1 -1
  22. package/coverage/lcov-report/functions/index.html +17 -17
  23. package/coverage/lcov-report/functions/safeCall.ts.html +13 -13
  24. package/coverage/lcov-report/index.html +28 -28
  25. package/coverage/lcov-report/lazy/index.html +1 -1
  26. package/coverage/lcov-report/lazy/promise.ts.html +1 -1
  27. package/coverage/lcov-report/lazy/singleton.ts.html +1 -1
  28. package/coverage/lcov-report/logger/batch.ts.html +1 -1
  29. package/coverage/lcov-report/logger/console.ts.html +1 -1
  30. package/coverage/lcov-report/logger/index.html +1 -1
  31. package/coverage/lcov-report/logger/index.ts.html +1 -1
  32. package/coverage/lcov-report/logger/named.ts.html +1 -1
  33. package/coverage/lcov-report/logger/proxy.ts.html +1 -1
  34. package/coverage/lcov-report/math/arrays.ts.html +1 -1
  35. package/coverage/lcov-report/math/calc.ts.html +1 -1
  36. package/coverage/lcov-report/math/distribution.ts.html +1 -1
  37. package/coverage/lcov-report/math/index.html +1 -1
  38. package/coverage/lcov-report/math/index.ts.html +1 -1
  39. package/coverage/lcov-report/observing/event.ts.html +1 -1
  40. package/coverage/lcov-report/observing/index.html +1 -1
  41. package/coverage/lcov-report/queue/index.html +18 -18
  42. package/coverage/lcov-report/queue/tasks.ts.html +358 -0
  43. package/coverage/lcov-report/src/__tests__/helpers/expect.ts.html +1 -1
  44. package/coverage/lcov-report/src/__tests__/helpers/index.html +1 -1
  45. package/coverage/lcov-report/src/__tests__/helpers/main.ts.html +1 -1
  46. package/coverage/lcov-report/src/async/arrays.ts.html +1 -1
  47. package/coverage/lcov-report/src/async/index.html +36 -21
  48. package/coverage/lcov-report/src/async/timeout.ts.html +59 -59
  49. package/coverage/lcov-report/src/cache.ts.html +97 -97
  50. package/coverage/lcov-report/src/dates/calc.ts.html +1 -1
  51. package/coverage/lcov-report/src/dates/convert.ts.html +1 -1
  52. package/coverage/lcov-report/src/dates/datex.ts.html +1 -1
  53. package/coverage/lcov-report/src/dates/format.ts.html +1 -1
  54. package/coverage/lcov-report/src/dates/index.html +1 -1
  55. package/coverage/lcov-report/src/dates/index.ts.html +1 -1
  56. package/coverage/lcov-report/src/dates/parse.ts.html +1 -1
  57. package/coverage/lcov-report/src/dates/period.ts.html +1 -1
  58. package/coverage/lcov-report/src/dates/shift.ts.html +1 -1
  59. package/coverage/lcov-report/src/dates/types.ts.html +1 -1
  60. package/coverage/lcov-report/src/dates/yearDate.ts.html +1 -1
  61. package/coverage/lcov-report/src/disposer.ts.html +1 -1
  62. package/coverage/lcov-report/src/enumHelper.ts.html +1 -1
  63. package/coverage/lcov-report/src/event.ts.html +1 -1
  64. package/coverage/lcov-report/src/fields/index.html +1 -1
  65. package/coverage/lcov-report/src/fields/update.ts.html +1 -1
  66. package/coverage/lcov-report/src/functions.ts.html +13 -13
  67. package/coverage/lcov-report/src/index.html +155 -20
  68. package/coverage/lcov-report/src/lazy/index.html +1 -1
  69. package/coverage/lcov-report/src/lazy/light.ts.html +1 -1
  70. package/coverage/lcov-report/src/lazy/observable.ts.html +1 -1
  71. package/coverage/lcov-report/src/lazy/promise.ts.html +1 -1
  72. package/coverage/lcov-report/src/lazy/singleton.ts.html +1 -1
  73. package/coverage/lcov-report/src/logger/batch.ts.html +1 -1
  74. package/coverage/lcov-report/src/logger/console.ts.html +1 -1
  75. package/coverage/lcov-report/src/logger/index.html +1 -1
  76. package/coverage/lcov-report/src/logger/index.ts.html +1 -1
  77. package/coverage/lcov-report/src/logger/named.ts.html +1 -1
  78. package/coverage/lcov-report/src/logger/proxy.ts.html +1 -1
  79. package/coverage/lcov-report/src/math/arrays.ts.html +277 -316
  80. package/coverage/lcov-report/src/math/calc.ts.html +1 -1
  81. package/coverage/lcov-report/src/math/distribution.ts.html +1 -1
  82. package/coverage/lcov-report/src/math/index.html +66 -21
  83. package/coverage/lcov-report/src/math/index.ts.html +1 -1
  84. package/coverage/lcov-report/src/observersMap.ts.html +1 -1
  85. package/coverage/lcov-report/src/observingCache.ts.html +1 -1
  86. package/coverage/lcov-report/src/queue/index.html +24 -9
  87. package/coverage/lcov-report/src/queue/parallel.ts.html +1 -1
  88. package/coverage/lcov-report/src/queue/tasks.ts.html +358 -0
  89. package/coverage/lcov-report/src/tempoCache.ts.html +1 -1
  90. package/coverage/lcov-report/src/transitionObserver.ts.html +1 -1
  91. package/coverage/lcov-report/src/types.ts.html +1 -1
  92. package/coverage/lcov-report/src/validation/ValidationErrors.ts.html +1 -1
  93. package/coverage/lcov-report/src/validation/creditCard.ts.html +1 -1
  94. package/coverage/lcov-report/src/validation/helpers.ts.html +1 -1
  95. package/coverage/lcov-report/src/validation/index.html +1 -1
  96. package/coverage/lcov-report/src/validation/index.ts.html +1 -1
  97. package/coverage/lcov-report/src/validation/types.ts.html +1 -1
  98. package/coverage/lcov-report/src/validation/validators.ts.html +1 -1
  99. package/coverage/lcov-report/src/validation/wrappers.ts.html +1 -1
  100. package/coverage/lcov-report/src/viewModels/CommonModel.ts.html +1 -1
  101. package/coverage/lcov-report/src/viewModels/FlagModel.ts.html +1 -1
  102. package/coverage/lcov-report/src/viewModels/LoadingModel.ts.html +2 -5
  103. package/coverage/lcov-report/src/viewModels/MultiSelectModel.ts.html +1 -1
  104. package/coverage/lcov-report/src/viewModels/NumberModel.ts.html +1 -1
  105. package/coverage/lcov-report/src/viewModels/SelectModel.ts.html +1 -1
  106. package/coverage/lcov-report/src/viewModels/TextModel.ts.html +1 -1
  107. package/coverage/lcov-report/src/viewModels/Validatable.ts.html +1 -1
  108. package/coverage/lcov-report/src/viewModels/index.html +130 -10
  109. package/coverage/lcov-report/src/viewModels/wrappers.ts.html +1 -1
  110. package/coverage/lcov-report/structures/helpers/enum.ts.html +1 -1
  111. package/coverage/lcov-report/structures/helpers/index.html +1 -1
  112. package/coverage/lcov-report/structures/index.html +1 -1
  113. package/coverage/lcov-report/structures/queue/index.html +24 -9
  114. package/coverage/lcov-report/structures/queue/parallel.ts.html +1 -1
  115. package/coverage/lcov-report/structures/queue/tasks.ts.html +358 -0
  116. package/coverage/lcov-report/structures/tempoCache.ts.html +1 -1
  117. package/coverage/lcov-report/tasks.ts.html +355 -0
  118. package/coverage/lcov-report/types/comparator.ts.html +1 -1
  119. package/coverage/lcov-report/types/getter.ts.html +1 -1
  120. package/coverage/lcov-report/types/index.html +1 -1
  121. package/coverage/lcov-report/types/index.ts.html +26 -2
  122. package/coverage/lcov-report/validation/ValidationErrors.ts.html +1 -1
  123. package/coverage/lcov-report/validation/creditCard.ts.html +1 -1
  124. package/coverage/lcov-report/validation/helpers.ts.html +1 -1
  125. package/coverage/lcov-report/validation/index.html +1 -1
  126. package/coverage/lcov-report/validation/index.ts.html +1 -1
  127. package/coverage/lcov-report/validation/types.ts.html +1 -1
  128. package/coverage/lcov-report/validation/validators.ts.html +1 -1
  129. package/coverage/lcov-report/validation/wrappers.ts.html +1 -1
  130. package/coverage/lcov.info +112 -24
  131. package/lib/models/File.d.ts +10 -0
  132. package/lib/models/File.d.ts.map +1 -0
  133. package/lib/{web/breakpoints/types.js → models/File.js} +1 -1
  134. package/lib/models/File.js.map +1 -0
  135. package/lib/{abstractions/services/storage.d.ts → storage/abstractions.d.ts} +3 -2
  136. package/lib/storage/abstractions.d.ts.map +1 -0
  137. package/lib/{abstractions/services/storage.js → storage/abstractions.js} +1 -1
  138. package/lib/storage/abstractions.js.map +1 -0
  139. package/lib/storage/asyncWrapper.d.ts +10 -0
  140. package/lib/storage/asyncWrapper.d.ts.map +1 -0
  141. package/lib/storage/asyncWrapper.js +24 -0
  142. package/lib/storage/asyncWrapper.js.map +1 -0
  143. package/lib/storage/index.d.ts +1 -28
  144. package/lib/storage/index.d.ts.map +1 -1
  145. package/lib/storage/index.js +2 -53
  146. package/lib/storage/index.js.map +1 -1
  147. package/lib/storage/keyStorage.d.ts +21 -0
  148. package/lib/storage/keyStorage.d.ts.map +1 -0
  149. package/lib/storage/keyStorage.js +36 -0
  150. package/lib/storage/keyStorage.js.map +1 -0
  151. package/lib/structures/queue/tasks.d.ts +17 -0
  152. package/lib/structures/queue/tasks.d.ts.map +1 -0
  153. package/lib/structures/queue/tasks.js +76 -0
  154. package/lib/structures/queue/tasks.js.map +1 -0
  155. package/lib/types/index.d.ts +4 -0
  156. package/lib/types/index.d.ts.map +1 -1
  157. package/package.json +1 -1
  158. package/src/models/File.ts +14 -0
  159. package/src/{abstractions/services/storage.ts → storage/abstractions.ts} +3 -1
  160. package/src/storage/asyncWrapper.ts +24 -0
  161. package/src/storage/index.ts +1 -62
  162. package/src/storage/keyStorage.ts +40 -0
  163. package/src/structures/queue/__tests__/tasks.test.ts +87 -0
  164. package/src/structures/queue/tasks.ts +91 -0
  165. package/src/types/index.ts +8 -0
  166. package/lib/abstractions/services/storage.d.ts.map +0 -1
  167. package/lib/abstractions/services/storage.js.map +0 -1
  168. package/lib/storage/web/localStorage.d.ts +0 -13
  169. package/lib/storage/web/localStorage.d.ts.map +0 -1
  170. package/lib/storage/web/localStorage.js +0 -29
  171. package/lib/storage/web/localStorage.js.map +0 -1
  172. package/lib/storage/web/sessionStorage.d.ts +0 -13
  173. package/lib/storage/web/sessionStorage.d.ts.map +0 -1
  174. package/lib/storage/web/sessionStorage.js +0 -29
  175. package/lib/storage/web/sessionStorage.js.map +0 -1
  176. package/lib/storage/web/webStorage.d.ts +0 -9
  177. package/lib/storage/web/webStorage.d.ts.map +0 -1
  178. package/lib/storage/web/webStorage.js +0 -24
  179. package/lib/storage/web/webStorage.js.map +0 -1
  180. package/lib/web/breakpoints/index.d.ts +0 -3
  181. package/lib/web/breakpoints/index.d.ts.map +0 -1
  182. package/lib/web/breakpoints/index.js +0 -6
  183. package/lib/web/breakpoints/index.js.map +0 -1
  184. package/lib/web/breakpoints/manager.d.ts +0 -17
  185. package/lib/web/breakpoints/manager.d.ts.map +0 -1
  186. package/lib/web/breakpoints/manager.js +0 -56
  187. package/lib/web/breakpoints/manager.js.map +0 -1
  188. package/lib/web/breakpoints/rem.d.ts +0 -3
  189. package/lib/web/breakpoints/rem.d.ts.map +0 -1
  190. package/lib/web/breakpoints/rem.js +0 -22
  191. package/lib/web/breakpoints/rem.js.map +0 -1
  192. package/lib/web/breakpoints/types.d.ts +0 -22
  193. package/lib/web/breakpoints/types.d.ts.map +0 -1
  194. package/lib/web/breakpoints/types.js.map +0 -1
  195. package/src/storage/web/localStorage.ts +0 -35
  196. package/src/storage/web/sessionStorage.ts +0 -35
  197. package/src/storage/web/webStorage.ts +0 -29
  198. package/src/web/breakpoints/index.ts +0 -3
  199. package/src/web/breakpoints/manager.ts +0 -65
  200. package/src/web/breakpoints/rem.ts +0 -24
  201. package/src/web/breakpoints/types.ts +0 -26
@@ -86,9 +86,9 @@ FN:75,(anonymous_12)
86
86
  FN:79,(anonymous_13)
87
87
  FNF:14
88
88
  FNH:10
89
- FNDA:11,setTimeoutAsync
90
- FNDA:11,(anonymous_1)
91
- FNDA:11,(anonymous_2)
89
+ FNDA:15,setTimeoutAsync
90
+ FNDA:15,(anonymous_1)
91
+ FNDA:15,(anonymous_2)
92
92
  FNDA:0,(anonymous_3)
93
93
  FNDA:0,setTimeoutFramesAsync
94
94
  FNDA:0,(anonymous_5)
@@ -100,23 +100,23 @@ FNDA:4,(anonymous_10)
100
100
  FNDA:3,(anonymous_11)
101
101
  FNDA:1,(anonymous_12)
102
102
  FNDA:3,(anonymous_13)
103
- DA:2,4
104
- DA:3,11
105
- DA:6,11
106
- DA:7,11
107
- DA:8,11
108
- DA:9,11
109
- DA:10,11
110
- DA:11,11
111
- DA:16,11
103
+ DA:2,5
104
+ DA:3,15
105
+ DA:6,15
106
+ DA:7,15
107
+ DA:8,15
108
+ DA:9,15
109
+ DA:10,15
110
+ DA:11,15
111
+ DA:16,15
112
112
  DA:17,0
113
113
  DA:18,0
114
114
  DA:19,0
115
115
  DA:20,0
116
116
  DA:21,0
117
117
  DA:24,0
118
- DA:27,11
119
- DA:32,4
118
+ DA:27,15
119
+ DA:32,5
120
120
  DA:33,0
121
121
  DA:34,0
122
122
  DA:37,0
@@ -126,7 +126,7 @@ DA:41,0
126
126
  DA:42,0
127
127
  DA:44,0
128
128
  DA:48,0
129
- DA:52,4
129
+ DA:52,5
130
130
  DA:53,3
131
131
  DA:55,3
132
132
  DA:56,3
@@ -147,8 +147,8 @@ DA:80,3
147
147
  DA:81,3
148
148
  LF:45
149
149
  LH:30
150
- BRDA:2,0,0,11
151
- BRDA:10,1,0,11
150
+ BRDA:2,0,0,15
151
+ BRDA:10,1,0,15
152
152
  BRDA:16,2,0,0
153
153
  BRDA:20,3,0,0
154
154
  BRDA:33,4,0,0
@@ -1130,15 +1130,15 @@ SF:src/functions/safeCall.ts
1130
1130
  FN:2,safeCall
1131
1131
  FNF:1
1132
1132
  FNH:1
1133
- FNDA:17,safeCall
1134
- DA:2,1
1135
- DA:3,17
1136
- DA:4,0
1133
+ FNDA:21,safeCall
1134
+ DA:2,2
1135
+ DA:3,21
1136
+ DA:4,3
1137
1137
  LF:3
1138
- LH:2
1139
- BRDA:3,0,0,0
1138
+ LH:3
1139
+ BRDA:3,0,0,3
1140
1140
  BRF:1
1141
- BRH:0
1141
+ BRH:1
1142
1142
  end_of_record
1143
1143
  TN:
1144
1144
  SF:src/lazy/promise.ts
@@ -2352,6 +2352,94 @@ BRF:54
2352
2352
  BRH:24
2353
2353
  end_of_record
2354
2354
  TN:
2355
+ SF:src/structures/queue/tasks.ts
2356
+ FN:17,(anonymous_0)
2357
+ FN:64,(anonymous_1)
2358
+ FN:78,(anonymous_2)
2359
+ FN:23,(anonymous_3)
2360
+ FN:24,(anonymous_4)
2361
+ FN:26,(anonymous_5)
2362
+ FN:31,(anonymous_6)
2363
+ FN:44,(anonymous_7)
2364
+ FN:45,(anonymous_8)
2365
+ FNF:9
2366
+ FNH:8
2367
+ FNDA:6,(anonymous_0)
2368
+ FNDA:4,(anonymous_1)
2369
+ FNDA:4,(anonymous_2)
2370
+ FNDA:9,(anonymous_3)
2371
+ FNDA:6,(anonymous_4)
2372
+ FNDA:0,(anonymous_5)
2373
+ FNDA:5,(anonymous_6)
2374
+ FNDA:2,(anonymous_7)
2375
+ FNDA:2,(anonymous_8)
2376
+ DA:11,1
2377
+ DA:13,6
2378
+ DA:14,6
2379
+ DA:15,6
2380
+ DA:17,6
2381
+ DA:18,6
2382
+ DA:19,2
2383
+ DA:23,9
2384
+ DA:24,6
2385
+ DA:27,0
2386
+ DA:28,0
2387
+ DA:32,5
2388
+ DA:33,1
2389
+ DA:36,4
2390
+ DA:38,2
2391
+ DA:44,2
2392
+ DA:45,2
2393
+ DA:46,2
2394
+ DA:47,2
2395
+ DA:48,2
2396
+ DA:49,2
2397
+ DA:51,0
2398
+ DA:52,0
2399
+ DA:57,2
2400
+ DA:58,2
2401
+ DA:61,2
2402
+ DA:64,6
2403
+ DA:65,4
2404
+ DA:66,4
2405
+ DA:67,4
2406
+ DA:68,4
2407
+ DA:70,0
2408
+ DA:71,0
2409
+ DA:73,4
2410
+ DA:74,4
2411
+ DA:78,6
2412
+ DA:79,4
2413
+ DA:80,2
2414
+ DA:83,2
2415
+ DA:84,2
2416
+ DA:85,0
2417
+ DA:88,2
2418
+ LF:42
2419
+ LH:35
2420
+ BRDA:70,0,0,0
2421
+ BRDA:70,0,1,0
2422
+ BRDA:70,1,0,0
2423
+ BRDA:70,1,1,0
2424
+ BRDA:70,2,0,0
2425
+ BRDA:70,2,1,0
2426
+ BRDA:70,2,2,0
2427
+ BRDA:79,3,0,2
2428
+ BRDA:79,4,0,4
2429
+ BRDA:79,4,1,2
2430
+ BRDA:84,5,0,0
2431
+ BRDA:84,6,0,2
2432
+ BRDA:84,6,1,2
2433
+ BRDA:84,6,2,2
2434
+ BRDA:18,7,0,2
2435
+ BRDA:18,8,0,6
2436
+ BRDA:18,8,1,5
2437
+ BRDA:32,9,0,1
2438
+ BRDA:36,10,0,2
2439
+ BRF:19
2440
+ BRH:11
2441
+ end_of_record
2442
+ TN:
2355
2443
  SF:src/types/comparator.ts
2356
2444
  FN:4,(anonymous_0)
2357
2445
  FN:5,(anonymous_1)
@@ -0,0 +1,10 @@
1
+ export declare type FileMetadata = {
2
+ name: string;
3
+ /** size in bytes */
4
+ size: number;
5
+ /** refers to MIME type */
6
+ type: string;
7
+ format?: string;
8
+ lang?: string;
9
+ };
10
+ //# sourceMappingURL=File.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"File.d.ts","sourceRoot":"","sources":["../../src/models/File.ts"],"names":[],"mappings":"AACA,oBAAY,YAAY,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IAEb,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IAEb,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IAEb,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC"}
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types.js.map
3
+ //# sourceMappingURL=File.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"File.js","sourceRoot":"","sources":["../../src/models/File.ts"],"names":[],"mappings":""}
@@ -1,4 +1,4 @@
1
- export default interface IStorage {
1
+ export interface IStorage {
2
2
  getValue(key: string): Promise<string>;
3
3
  setValue(key: string, value: string): Promise<void>;
4
4
  hasValue(key: string): Promise<boolean>;
@@ -10,4 +10,5 @@ export interface IStorageSync {
10
10
  removeValue(key: string): boolean;
11
11
  hasValue(key: string): boolean;
12
12
  }
13
- //# sourceMappingURL=storage.d.ts.map
13
+ export default IStorage;
14
+ //# sourceMappingURL=abstractions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstractions.d.ts","sourceRoot":"","sources":["../../src/storage/abstractions.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,QAAQ;IACrB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEpD,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3C,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAClC;AAED,eAAe,QAAQ,CAAC"}
@@ -1,3 +1,3 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=storage.js.map
3
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstractions.js","sourceRoot":"","sources":["../../src/storage/abstractions.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ import { IStorage, IStorageSync } from './abstractions';
2
+ export declare class StorageAsyncWrapper implements IStorage {
3
+ readonly webStorage: IStorageSync;
4
+ constructor(webStorage: IStorageSync);
5
+ getValue(key: string): Promise<string>;
6
+ setValue(key: string, value: string): Promise<void>;
7
+ hasValue(key: string): Promise<boolean>;
8
+ remove(key: string): Promise<void>;
9
+ }
10
+ //# sourceMappingURL=asyncWrapper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asyncWrapper.d.ts","sourceRoot":"","sources":["../../src/storage/asyncWrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAExD,qBAAa,mBAAoB,YAAW,QAAQ;IAEpC,QAAQ,CAAC,UAAU,EAAE,YAAY;gBAAxB,UAAU,EAAE,YAAY;IAE7C,QAAQ,CAAC,GAAG,EAAE,MAAM;IAIpB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAKnC,QAAQ,CAAC,GAAG,EAAE,MAAM;IAIpB,MAAM,CAAC,GAAG,EAAE,MAAM;CAIrB"}
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.StorageAsyncWrapper = void 0;
4
+ class StorageAsyncWrapper {
5
+ constructor(webStorage) {
6
+ this.webStorage = webStorage;
7
+ }
8
+ getValue(key) {
9
+ return Promise.resolve(this.webStorage.getValue(key));
10
+ }
11
+ setValue(key, value) {
12
+ this.webStorage.setValue(key, value);
13
+ return Promise.resolve();
14
+ }
15
+ hasValue(key) {
16
+ return Promise.resolve(this.webStorage.hasValue(key));
17
+ }
18
+ remove(key) {
19
+ this.webStorage.removeValue(key);
20
+ return Promise.resolve();
21
+ }
22
+ }
23
+ exports.StorageAsyncWrapper = StorageAsyncWrapper;
24
+ //# sourceMappingURL=asyncWrapper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asyncWrapper.js","sourceRoot":"","sources":["../../src/storage/asyncWrapper.ts"],"names":[],"mappings":";;;AAEA,MAAa,mBAAmB;IAE5B,YAAqB,UAAwB;QAAxB,eAAU,GAAV,UAAU,CAAc;IAAI,CAAC;IAElD,QAAQ,CAAC,GAAW;QAChB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ,CAAC,GAAW,EAAE,KAAa;QAC/B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,QAAQ,CAAC,GAAW;QAChB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,GAAW;QACd,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;CACJ;AArBD,kDAqBC"}
@@ -1,29 +1,2 @@
1
- import IStorage, { IStorageSync } from '../abstractions/services/storage';
2
- export declare class StorageAsyncWrapper implements IStorage {
3
- readonly webStorage: IStorageSync;
4
- constructor(webStorage: IStorageSync);
5
- getValue(key: string): Promise<string>;
6
- setValue(key: string, value: string): Promise<void>;
7
- hasValue(key: string): Promise<boolean>;
8
- remove(key: string): Promise<void>;
9
- }
10
- export declare class KeyStorage {
11
- readonly storage: IStorageSync;
12
- readonly key: string;
13
- constructor(storage: IStorageSync, key: string);
14
- get value(): string;
15
- set value(v: string);
16
- clean(): void;
17
- getHasValue(): boolean;
18
- }
19
- export declare class KeyStorageConverted<T> {
20
- readonly input: (v: T) => string;
21
- readonly output: (s: string) => T;
22
- private readonly _storage;
23
- constructor(storage: IStorageSync, key: string, input?: (v: T) => string, output?: (s: string) => T);
24
- get value(): T;
25
- set value(v: T);
26
- clean(): void;
27
- getHasValue(): boolean;
28
- }
1
+ export * from './abstractions';
29
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,EAAE,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAE1E,qBAAa,mBAAoB,YAAW,QAAQ;IAEpC,QAAQ,CAAC,UAAU,EAAE,YAAY;gBAAxB,UAAU,EAAE,YAAY;IAE7C,QAAQ,CAAC,GAAG,EAAE,MAAM;IAIpB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAKnC,QAAQ,CAAC,GAAG,EAAE,MAAM;IAIpB,MAAM,CAAC,GAAG,EAAE,MAAM;CAIrB;AAED,qBAAa,UAAU;IACP,QAAQ,CAAC,OAAO,EAAE,YAAY;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM;gBAA3C,OAAO,EAAE,YAAY,EAAW,GAAG,EAAE,MAAM;IAEhE,IAAI,KAAK,IACI,MAAM,CADoC;IACvD,IAAI,KAAK,CAAC,CAAC,EAAE,MAAM,EAAyC;IAErD,KAAK;IAIL,WAAW;CAGrB;AAED,qBAAa,mBAAmB,CAAC,CAAC;IAM1B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM;IAChC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,CAAC;IANrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;gBAGzC,OAAO,EAAE,YAAY,EACrB,GAAG,EAAE,MAAM,EACF,KAAK,GAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAiC,EAClD,MAAM,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,CAAqC;IAKzE,IAAI,KAAK,IAAI,CAAC,CAA6C;IAC3D,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAA0C;IAEjD,KAAK;IAIL,WAAW;CAGrB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AACA,cAAc,gBAAgB,CAAC"}
@@ -1,56 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.KeyStorageConverted = exports.KeyStorage = exports.StorageAsyncWrapper = void 0;
4
- class StorageAsyncWrapper {
5
- constructor(webStorage) {
6
- this.webStorage = webStorage;
7
- }
8
- getValue(key) {
9
- return Promise.resolve(this.webStorage.getValue(key));
10
- }
11
- setValue(key, value) {
12
- this.webStorage.setValue(key, value);
13
- return Promise.resolve();
14
- }
15
- hasValue(key) {
16
- return Promise.resolve(this.webStorage.hasValue(key));
17
- }
18
- remove(key) {
19
- this.webStorage.removeValue(key);
20
- return Promise.resolve();
21
- }
22
- }
23
- exports.StorageAsyncWrapper = StorageAsyncWrapper;
24
- class KeyStorage {
25
- constructor(storage, key) {
26
- this.storage = storage;
27
- this.key = key;
28
- }
29
- get value() { return this.storage.getValue(this.key); }
30
- set value(v) { this.storage.setValue(this.key, v); }
31
- clean() {
32
- this.storage.removeValue(this.key);
33
- }
34
- getHasValue() {
35
- return this.storage.hasValue(this.key);
36
- }
37
- }
38
- exports.KeyStorage = KeyStorage;
39
- class KeyStorageConverted {
40
- constructor(storage, key, input = (v => JSON.stringify(v)), output = (s => JSON.parse(s || null))) {
41
- this.input = input;
42
- this.output = output;
43
- this._storage = null;
44
- this._storage = new KeyStorage(storage, key);
45
- }
46
- get value() { return this.output(this._storage.value); }
47
- set value(v) { this._storage.value = this.input(v); }
48
- clean() {
49
- this._storage.clean();
50
- }
51
- getHasValue() {
52
- return this._storage.getHasValue();
53
- }
54
- }
55
- exports.KeyStorageConverted = KeyStorageConverted;
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./abstractions"), exports);
56
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":";;;AAEA,MAAa,mBAAmB;IAE5B,YAAqB,UAAwB;QAAxB,eAAU,GAAV,UAAU,CAAc;IAAI,CAAC;IAElD,QAAQ,CAAC,GAAW;QAChB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,QAAQ,CAAC,GAAW,EAAE,KAAa;QAC/B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACrC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,QAAQ,CAAC,GAAW;QAChB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,CAAC,GAAW;QACd,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;CACJ;AArBD,kDAqBC;AAED,MAAa,UAAU;IACnB,YAAqB,OAAqB,EAAW,GAAW;QAA3C,YAAO,GAAP,OAAO,CAAc;QAAW,QAAG,GAAH,GAAG,CAAQ;IAAI,CAAC;IAErE,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACvD,IAAI,KAAK,CAAC,CAAS,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,KAAK;QACR,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;CACJ;AAbD,gCAaC;AAED,MAAa,mBAAmB;IAG5B,YACI,OAAqB,EACrB,GAAW,EACF,QAA0B,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAClD,SAA2B,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAM,CAAC;QAD5D,UAAK,GAAL,KAAK,CAA6C;QAClD,WAAM,GAAN,MAAM,CAAsD;QANxD,aAAQ,GAAe,IAAI,CAAC;QAQzC,IAAI,CAAC,QAAQ,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,KAAK,KAAQ,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,KAAK,CAAC,CAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjD,KAAK;QACR,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;CACJ;AAtBD,kDAsBC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":";;;AACA,yDAA+B"}
@@ -0,0 +1,21 @@
1
+ import { IStorageSync } from './abstractions';
2
+ export declare class KeyStorage {
3
+ readonly storage: IStorageSync;
4
+ readonly key: string;
5
+ constructor(storage: IStorageSync, key: string);
6
+ get value(): string;
7
+ set value(v: string);
8
+ clean(): void;
9
+ getHasValue(): boolean;
10
+ }
11
+ export declare class KeyStorageConverted<T> {
12
+ readonly input: (v: T) => string;
13
+ readonly output: (s: string) => T;
14
+ private readonly _storage;
15
+ constructor(storage: IStorageSync, key: string, input?: (v: T) => string, output?: (s: string) => T);
16
+ get value(): T;
17
+ set value(v: T);
18
+ clean(): void;
19
+ getHasValue(): boolean;
20
+ }
21
+ //# sourceMappingURL=keyStorage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyStorage.d.ts","sourceRoot":"","sources":["../../src/storage/keyStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,qBAAa,UAAU;IACP,QAAQ,CAAC,OAAO,EAAE,YAAY;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM;gBAA3C,OAAO,EAAE,YAAY,EAAW,GAAG,EAAE,MAAM;IAEhE,IAAI,KAAK,IACI,MAAM,CADoC;IACvD,IAAI,KAAK,CAAC,CAAC,EAAE,MAAM,EAAyC;IAErD,KAAK;IAIL,WAAW;CAGrB;AAED,qBAAa,mBAAmB,CAAC,CAAC;IAM1B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM;IAChC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,CAAC;IANrC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAoB;gBAGzC,OAAO,EAAE,YAAY,EACrB,GAAG,EAAE,MAAM,EACF,KAAK,GAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAiC,EAClD,MAAM,GAAE,CAAC,CAAC,EAAE,MAAM,KAAK,CAAqC;IAKzE,IAAI,KAAK,IAAI,CAAC,CAA6C;IAC3D,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAA0C;IAEjD,KAAK;IAIL,WAAW;CAGrB"}
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KeyStorageConverted = exports.KeyStorage = void 0;
4
+ class KeyStorage {
5
+ constructor(storage, key) {
6
+ this.storage = storage;
7
+ this.key = key;
8
+ }
9
+ get value() { return this.storage.getValue(this.key); }
10
+ set value(v) { this.storage.setValue(this.key, v); }
11
+ clean() {
12
+ this.storage.removeValue(this.key);
13
+ }
14
+ getHasValue() {
15
+ return this.storage.hasValue(this.key);
16
+ }
17
+ }
18
+ exports.KeyStorage = KeyStorage;
19
+ class KeyStorageConverted {
20
+ constructor(storage, key, input = (v => JSON.stringify(v)), output = (s => JSON.parse(s || null))) {
21
+ this.input = input;
22
+ this.output = output;
23
+ this._storage = null;
24
+ this._storage = new KeyStorage(storage, key);
25
+ }
26
+ get value() { return this.output(this._storage.value); }
27
+ set value(v) { this._storage.value = this.input(v); }
28
+ clean() {
29
+ this._storage.clean();
30
+ }
31
+ getHasValue() {
32
+ return this._storage.getHasValue();
33
+ }
34
+ }
35
+ exports.KeyStorageConverted = KeyStorageConverted;
36
+ //# sourceMappingURL=keyStorage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keyStorage.js","sourceRoot":"","sources":["../../src/storage/keyStorage.ts"],"names":[],"mappings":";;;AAEA,MAAa,UAAU;IACnB,YAAqB,OAAqB,EAAW,GAAW;QAA3C,YAAO,GAAP,OAAO,CAAc;QAAW,QAAG,GAAH,GAAG,CAAQ;IAAI,CAAC;IAErE,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACvD,IAAI,KAAK,CAAC,CAAS,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,KAAK;QACR,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvC,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;CACJ;AAbD,gCAaC;AAED,MAAa,mBAAmB;IAG5B,YACI,OAAqB,EACrB,GAAW,EACF,QAA0B,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAClD,SAA2B,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAM,CAAC;QAD5D,UAAK,GAAL,KAAK,CAA6C;QAClD,WAAM,GAAN,MAAM,CAAsD;QANxD,aAAQ,GAAe,IAAI,CAAC;QAQzC,IAAI,CAAC,QAAQ,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,KAAK,KAAQ,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3D,IAAI,KAAK,CAAC,CAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEjD,KAAK;QACR,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAEM,WAAW;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;CACJ;AAtBD,kDAsBC"}
@@ -0,0 +1,17 @@
1
+ import type { ILogger } from '../../logger';
2
+ declare type Factory<T> = () => Promise<T>;
3
+ export declare class TasksQueue<T> {
4
+ readonly limit: number;
5
+ private readonly _items;
6
+ private _running;
7
+ private _logger;
8
+ constructor(limit: number);
9
+ get isFull(): boolean;
10
+ get running(): number;
11
+ addLogger(logger: ILogger): this;
12
+ enqueue(factory: Factory<T>, name?: string): Promise<T>;
13
+ private _runFactory;
14
+ private _tryRunNext;
15
+ }
16
+ export {};
17
+ //# sourceMappingURL=tasks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../../src/structures/queue/tasks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,aAAK,OAAO,CAAC,CAAC,IAAI,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;AAQnC,qBAAa,UAAU,CAAC,CAAC;IAMT,QAAQ,CAAC,KAAK,EAAE,MAAM;IAJlC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,OAAO,CAAwB;gBAElB,KAAK,EAAE,MAAM;IAMlC,IAAW,MAAM,YAA0C;IAC3D,IAAW,OAAO,WAA4B;IAE9C,SAAS,CAAC,MAAM,EAAE,OAAO;IAKlB,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAiC9D,OAAO,CAAC,WAAW,CAYjB;IAEF,OAAO,CAAC,WAAW,CAWjB;CAEL"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TasksQueue = void 0;
4
+ class TasksQueue {
5
+ constructor(limit) {
6
+ this.limit = limit;
7
+ this._items = [];
8
+ this._running = 0;
9
+ this._logger = null;
10
+ this._runFactory = async (factory, name) => {
11
+ var _a;
12
+ this._running++;
13
+ try {
14
+ const result = await factory();
15
+ return result;
16
+ }
17
+ catch (err) {
18
+ (_a = this._logger) === null || _a === void 0 ? void 0 : _a.warn(`Factory "${name || factory.name || '<unknown>'}" thrown. Rethrowing...`);
19
+ throw err;
20
+ }
21
+ finally {
22
+ this._running--;
23
+ this._tryRunNext();
24
+ }
25
+ };
26
+ this._tryRunNext = async () => {
27
+ if (!this._items.length || this.isFull) {
28
+ return;
29
+ }
30
+ const next = this._items.shift();
31
+ if (!next || !next.finish || !next.factory) {
32
+ return;
33
+ }
34
+ await next.finish(this._runFactory(next.factory));
35
+ };
36
+ if (!limit || limit < 0) {
37
+ throw new Error('TasksQueue: limit should be a positive number');
38
+ }
39
+ }
40
+ get isFull() { return this._running >= this.limit; }
41
+ get running() { return this._running; }
42
+ addLogger(logger) {
43
+ this._logger = logger;
44
+ return this;
45
+ }
46
+ enqueue(factory, name) {
47
+ if (typeof factory !== 'function') {
48
+ throw new Error('Invalid arg: factory not a function');
49
+ }
50
+ if (this.isFull) {
51
+ const item = {
52
+ factory,
53
+ finish: undefined,
54
+ name,
55
+ };
56
+ const waitPromise = new Promise((resolve, reject) => {
57
+ item.finish = async (res) => {
58
+ try {
59
+ const rr = await res;
60
+ resolve(rr);
61
+ return rr;
62
+ }
63
+ catch (err) {
64
+ reject(err);
65
+ throw err;
66
+ }
67
+ };
68
+ });
69
+ this._items.push(item);
70
+ return waitPromise;
71
+ }
72
+ return this._runFactory(factory);
73
+ }
74
+ }
75
+ exports.TasksQueue = TasksQueue;
76
+ //# sourceMappingURL=tasks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../../src/structures/queue/tasks.ts"],"names":[],"mappings":";;;AAUA,MAAa,UAAU;IAMnB,YAAqB,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;QAJjB,WAAM,GAAmB,EAAE,CAAC;QACrC,aAAQ,GAAG,CAAC,CAAC;QACb,YAAO,GAAmB,IAAI,CAAC;QAiD/B,gBAAW,GAAG,KAAK,EAAE,OAAmB,EAAE,IAAa,EAAc,EAAE;;YAC3E,IAAI,CAAC,QAAQ,EAAE,CAAC;YAChB,IAAI;gBACA,MAAM,MAAM,GAAG,MAAM,OAAO,EAAE,CAAC;gBAC/B,OAAO,MAAM,CAAC;aACjB;YAAC,OAAO,GAAG,EAAE;gBACV,MAAA,IAAI,CAAC,OAAO,0CAAE,IAAI,CAAC,YAAY,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI,WAAW,yBAAyB,CAAC,CAAC;gBAC7F,MAAM,GAAG,CAAC;aACb;oBAAS;gBACN,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAChB,IAAI,CAAC,WAAW,EAAE,CAAC;aACtB;QACL,CAAC,CAAC;QAEM,gBAAW,GAAG,KAAK,IAAI,EAAE;YAC7B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE;gBACpC,OAAO;aACV;YAED,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;gBACxC,OAAO;aACV;YAED,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACtD,CAAC,CAAC;QAvEE,IAAI,CAAC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;SACpE;IACL,CAAC;IAED,IAAW,MAAM,KAAK,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,IAAW,OAAO,KAAK,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAE9C,SAAS,CAAC,MAAe;QACrB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,OAAO,CAAC,OAAmB,EAAE,IAAa;QAC7C,IAAI,OAAO,OAAO,KAAK,UAAU,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SAC1D;QAED,IAAI,IAAI,CAAC,MAAM,EAAE;YAEb,MAAM,IAAI,GAAiB;gBACvB,OAAO;gBACP,MAAM,EAAE,SAAS;gBACjB,IAAI;aACP,CAAC;YAEF,MAAM,WAAW,GAAG,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACnD,IAAI,CAAC,MAAM,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE;oBACxB,IAAI;wBACA,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC;wBACrB,OAAO,CAAC,EAAE,CAAC,CAAC;wBACZ,OAAO,EAAE,CAAC;qBACb;oBAAC,OAAO,GAAG,EAAE;wBACV,MAAM,CAAC,GAAG,CAAC,CAAC;wBACZ,MAAM,GAAG,CAAC;qBACb;gBACL,CAAC,CAAC;YACN,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvB,OAAO,WAAW,CAAC;SACtB;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;CA6BJ;AAhFD,gCAgFC"}
@@ -5,4 +5,8 @@ export declare type Predicate<T> = (value: T) => boolean;
5
5
  export declare type TypedKeys<T extends Object, K> = {
6
6
  [P in keyof T]: T[P] extends K ? P : never;
7
7
  }[keyof T];
8
+ export declare type ArrayTail<T> = T extends [any, ...infer P] ? [...P] : T;
9
+ export declare type NestedPick<T, K extends any[]> = K extends Array<never> ? T : {
10
+ [P in K[0]]: P extends keyof T ? NestedPick<T[P], ArrayTail<K>> : never;
11
+ };
8
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAE7B,oBAAY,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC;AAEjD,oBAAY,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,IAAI;KACxC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK;CAC7C,CAAC,MAAM,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAE7B,oBAAY,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,OAAO,CAAC;AAEjD,oBAAY,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,IAAI;KACxC,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK;CAC7C,CAAC,MAAM,CAAC,CAAC,CAAC;AAEX,oBAAY,SAAS,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;AAEpE,oBAAY,UAAU,CAAC,CAAC,EAAE,CAAC,SAAS,GAAG,EAAE,IAAI,CAAC,SAAS,KAAK,CAAC,KAAK,CAAC,GAC7D,CAAC,GACD;KACG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,MAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK;CAC1E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zajno/common",
3
- "version": "2.0.0-beta.1",
3
+ "version": "2.0.0",
4
4
  "description": "Zajno's re-usable utilities for JS/TS projects",
5
5
  "repository": {
6
6
  "type": "git",
@@ -0,0 +1,14 @@
1
+
2
+ export type FileMetadata = {
3
+ name: string;
4
+
5
+ /** size in bytes */
6
+ size: number;
7
+
8
+ /** refers to MIME type */
9
+ type: string;
10
+
11
+ format?: string;
12
+
13
+ lang?: string;
14
+ };
@@ -1,5 +1,5 @@
1
1
 
2
- export default interface IStorage {
2
+ export interface IStorage {
3
3
  getValue(key: string): Promise<string>;
4
4
  setValue(key: string, value: string): Promise<void>;
5
5
 
@@ -14,3 +14,5 @@ export interface IStorageSync {
14
14
  removeValue(key: string): boolean;
15
15
  hasValue(key: string): boolean;
16
16
  }
17
+
18
+ export default IStorage;
@@ -0,0 +1,24 @@
1
+ import { IStorage, IStorageSync } from './abstractions';
2
+
3
+ export class StorageAsyncWrapper implements IStorage {
4
+
5
+ constructor(readonly webStorage: IStorageSync) { }
6
+
7
+ getValue(key: string) {
8
+ return Promise.resolve(this.webStorage.getValue(key));
9
+ }
10
+
11
+ setValue(key: string, value: string) {
12
+ this.webStorage.setValue(key, value);
13
+ return Promise.resolve();
14
+ }
15
+
16
+ hasValue(key: string) {
17
+ return Promise.resolve(this.webStorage.hasValue(key));
18
+ }
19
+
20
+ remove(key: string) {
21
+ this.webStorage.removeValue(key);
22
+ return Promise.resolve();
23
+ }
24
+ }