@typed/async-data 0.11.0 → 0.13.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 (75) hide show
  1. package/.nvmrc +1 -0
  2. package/biome.json +36 -0
  3. package/dist/AsyncData.d.ts +196 -0
  4. package/dist/AsyncData.js +285 -0
  5. package/dist/AsyncData.js.map +1 -0
  6. package/dist/LazyRef.d.ts +21 -0
  7. package/dist/LazyRef.js +27 -0
  8. package/dist/LazyRef.js.map +1 -0
  9. package/dist/Progress.d.ts +25 -0
  10. package/dist/Progress.js +21 -0
  11. package/dist/Progress.js.map +1 -0
  12. package/dist/{dts/TypeId.d.ts → TypeId.d.ts} +0 -1
  13. package/dist/TypeId.js +8 -0
  14. package/dist/TypeId.js.map +1 -0
  15. package/dist/_internal.d.ts +16 -0
  16. package/dist/_internal.js +53 -0
  17. package/dist/_internal.js.map +1 -0
  18. package/dist/index.d.ts +4 -0
  19. package/dist/index.js +5 -0
  20. package/dist/index.js.map +1 -0
  21. package/package.json +31 -48
  22. package/readme.md +218 -0
  23. package/src/AsyncData.test.ts +89 -0
  24. package/src/AsyncData.ts +555 -595
  25. package/src/LazyRef.ts +87 -0
  26. package/src/Progress.ts +18 -65
  27. package/src/TypeId.ts +1 -1
  28. package/src/_internal.ts +114 -0
  29. package/src/index.ts +4 -0
  30. package/tsconfig.json +27 -0
  31. package/AsyncData/package.json +0 -6
  32. package/LICENSE +0 -21
  33. package/Progress/package.json +0 -6
  34. package/README.md +0 -5
  35. package/Schema/package.json +0 -6
  36. package/TypeId/package.json +0 -6
  37. package/dist/cjs/AsyncData.js +0 -399
  38. package/dist/cjs/AsyncData.js.map +0 -1
  39. package/dist/cjs/Progress.js +0 -62
  40. package/dist/cjs/Progress.js.map +0 -1
  41. package/dist/cjs/Schema.js +0 -538
  42. package/dist/cjs/Schema.js.map +0 -1
  43. package/dist/cjs/TypeId.js +0 -14
  44. package/dist/cjs/TypeId.js.map +0 -1
  45. package/dist/cjs/internal/async-data.js +0 -94
  46. package/dist/cjs/internal/async-data.js.map +0 -1
  47. package/dist/cjs/internal/tag.js +0 -12
  48. package/dist/cjs/internal/tag.js.map +0 -1
  49. package/dist/dts/AsyncData.d.ts +0 -386
  50. package/dist/dts/AsyncData.d.ts.map +0 -1
  51. package/dist/dts/Progress.d.ts +0 -43
  52. package/dist/dts/Progress.d.ts.map +0 -1
  53. package/dist/dts/Schema.d.ts +0 -78
  54. package/dist/dts/Schema.d.ts.map +0 -1
  55. package/dist/dts/TypeId.d.ts.map +0 -1
  56. package/dist/dts/internal/async-data.d.ts +0 -43
  57. package/dist/dts/internal/async-data.d.ts.map +0 -1
  58. package/dist/dts/internal/tag.d.ts +0 -6
  59. package/dist/dts/internal/tag.d.ts.map +0 -1
  60. package/dist/esm/AsyncData.js +0 -372
  61. package/dist/esm/AsyncData.js.map +0 -1
  62. package/dist/esm/Progress.js +0 -49
  63. package/dist/esm/Progress.js.map +0 -1
  64. package/dist/esm/Schema.js +0 -500
  65. package/dist/esm/Schema.js.map +0 -1
  66. package/dist/esm/TypeId.js +0 -8
  67. package/dist/esm/TypeId.js.map +0 -1
  68. package/dist/esm/internal/async-data.js +0 -91
  69. package/dist/esm/internal/async-data.js.map +0 -1
  70. package/dist/esm/internal/tag.js +0 -6
  71. package/dist/esm/internal/tag.js.map +0 -1
  72. package/dist/esm/package.json +0 -4
  73. package/src/Schema.ts +0 -750
  74. package/src/internal/async-data.ts +0 -114
  75. package/src/internal/tag.ts +0 -9
@@ -1,399 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.NoData = exports.Loading = void 0;
7
- exports.dataEqual = dataEqual;
8
- exports.flatMap = exports.failCause = exports.fail = exports.done = void 0;
9
- exports.fromEither = fromEither;
10
- exports.fromExit = fromExit;
11
- exports.success = exports.stopLoading = exports.startLoading = exports.optimistic = exports.noData = exports.match = exports.map = exports.loading = exports.isSuccess = exports.isRefreshing = exports.isOptimistic = exports.isNoData = exports.isLoadingOrRefreshing = exports.isLoading = exports.isFailure = exports.isExpired = exports.isAsyncData = exports.getSuccess = exports.getFailure = exports.getEquivalence = void 0;
12
- exports.toOption = toOption;
13
- exports.toOptionCause = toOptionCause;
14
- exports.toOptionError = toOptionError;
15
- var Cause = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Cause"));
16
- var Data = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Data"));
17
- var Duration = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Duration"));
18
- var Either = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Either"));
19
- var Equal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Equal"));
20
- var Equivalence = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Equivalence"));
21
- var Exit = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Exit"));
22
- var _Function = /*#__PURE__*/require("effect/Function");
23
- var Option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Option"));
24
- var Unify = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Unify"));
25
- var internal = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./internal/async-data.js"));
26
- var _tag = /*#__PURE__*/require("./internal/tag.js");
27
- var Progress = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("./Progress.js"));
28
- var _TypeId = /*#__PURE__*/require("./TypeId.js");
29
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
30
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
31
- /**
32
- * AsyncData represents a piece of data which is acquired asynchronously with loading, failure, and progress states
33
- * in addition to Option-like states of NoData and Success.
34
- *
35
- * @since 1.0.0
36
- */
37
-
38
- const getCurrentTimestamp = () => Date.now();
39
- /**
40
- * @since 1.0.0
41
- */
42
- class NoData extends Data.TaggedError(_tag.NO_DATA_TAG) {
43
- /**
44
- * @since 1.0.0
45
- */
46
- [_TypeId.AsyncDataTypeId] = _TypeId.AsyncDataTypeId;
47
- /**
48
- * @since 1.0.0
49
- */
50
- [Unify.typeSymbol];
51
- /**
52
- * @since 1.0.0
53
- */
54
- [Unify.unifySymbol];
55
- /**
56
- * @since 1.0.0
57
- */
58
- [Unify.ignoreSymbol];
59
- }
60
- /**
61
- * @since 1.0.0
62
- */
63
- exports.NoData = NoData;
64
- const noData = () => new NoData();
65
- /**
66
- * @since 1.0.0
67
- */
68
- exports.noData = noData;
69
- class Loading extends Data.TaggedError(_tag.LOADING_TAG) {
70
- /**
71
- * @since 1.0.0
72
- */
73
- [_TypeId.AsyncDataTypeId] = _TypeId.AsyncDataTypeId;
74
- /**
75
- * @since 1.0.0
76
- */
77
- [Unify.typeSymbol];
78
- /**
79
- * @since 1.0.0
80
- */
81
- [Unify.unifySymbol];
82
- /**
83
- * @since 1.0.0
84
- */
85
- [Unify.ignoreSymbol];
86
- }
87
- /**
88
- * @since 1.0.0
89
- */
90
- exports.Loading = Loading;
91
- const loading = options => new Loading({
92
- [_TypeId.AsyncDataTypeId]: _TypeId.AsyncDataTypeId,
93
- timestamp: options?.timestamp ?? getCurrentTimestamp(),
94
- progress: Option.fromNullable(options?.progress)
95
- });
96
- /**
97
- * @since 1.0.0
98
- */
99
- exports.loading = loading;
100
- const failCause = (cause, options) => new internal.FailureImpl(cause, options?.timestamp ?? getCurrentTimestamp(), Option.fromNullable(options?.refreshing));
101
- /**
102
- * @since 1.0.0
103
- */
104
- exports.failCause = failCause;
105
- const fail = (error, options) => failCause(Cause.fail(error), options);
106
- /**
107
- * @since 1.0.0
108
- */
109
- exports.fail = fail;
110
- const success = (value, options) => new internal.SuccessImpl(value, options?.timestamp ?? getCurrentTimestamp(), Option.fromNullable(options?.refreshing));
111
- exports.success = success;
112
- const isAsyncDataFirst = args => isAsyncData(args[0]);
113
- /**
114
- * @since 1.0.0
115
- */
116
- const optimistic = exports.optimistic = /*#__PURE__*/(0, _Function.dual)(args => args.length === 3 || isAsyncDataFirst(args), (previous, value, options) => new internal.OptimisticImpl(value, options?.timestamp ?? getCurrentTimestamp(),
117
- // We don't want to nest Optimistic values, so we unwrap the previous value if it's already optimistic
118
- previous._tag === "Optimistic" ? previous.previous : previous));
119
- /**
120
- * @since 1.0.0
121
- */
122
- const isSuccess = data => data._tag === _tag.SUCCESS_TAG;
123
- /**
124
- * @since 1.0.0
125
- */
126
- exports.isSuccess = isSuccess;
127
- const isOptimistic = data => data._tag === _tag.OPTIMISTIC_TAG;
128
- /**
129
- * @since 1.0.0
130
- */
131
- exports.isOptimistic = isOptimistic;
132
- const isFailure = data => data._tag === _tag.FAILURE_TAG;
133
- /**
134
- * @since 1.0.0
135
- */
136
- exports.isFailure = isFailure;
137
- const isLoading = data => data._tag === _tag.LOADING_TAG;
138
- /**
139
- * @since 1.0.0
140
- */
141
- exports.isLoading = isLoading;
142
- const isNoData = data => data._tag === _tag.NO_DATA_TAG;
143
- /**
144
- * @since 1.0.0
145
- */
146
- exports.isNoData = isNoData;
147
- const isRefreshing = data => isSuccess(data) || isFailure(data) ? Option.isSome(data.refreshing) : isOptimistic(data) ? isRefreshing(data.previous) : false;
148
- /**
149
- * @since 1.0.0
150
- */
151
- exports.isRefreshing = isRefreshing;
152
- const isLoadingOrRefreshing = data => isLoading(data) || isRefreshing(data) || isOptimistic(data) && isLoadingOrRefreshing(data.previous);
153
- /**
154
- * @since 1.0.0
155
- */
156
- exports.isLoadingOrRefreshing = isLoadingOrRefreshing;
157
- const match = exports.match = /*#__PURE__*/(0, _Function.dual)(2, (data, matchers) => {
158
- if (isSuccess(data)) {
159
- return matchers.Success(data.value, data);
160
- } else if (isFailure(data)) {
161
- return matchers.Failure(data.cause, data);
162
- } else if (isLoading(data)) {
163
- return matchers.Loading(data);
164
- } else if (isNoData(data)) {
165
- return matchers.NoData(data);
166
- } else {
167
- return matchers.Optimistic(data.value, data);
168
- }
169
- });
170
- /**
171
- * @since 1.0.0
172
- */
173
- const map = exports.map = /*#__PURE__*/(0, _Function.dual)(2, function map(data, f) {
174
- if (isSuccess(data)) {
175
- return success(f(data.value), {
176
- timestamp: data.timestamp,
177
- refreshing: Option.getOrUndefined(data.refreshing)
178
- });
179
- } else if (isOptimistic(data)) {
180
- return optimistic(map(data.previous, f), f(data.value), {
181
- timestamp: data.timestamp
182
- });
183
- } else {
184
- return data;
185
- }
186
- });
187
- /**
188
- * @since 1.0.0
189
- */
190
- const flatMap = exports.flatMap = /*#__PURE__*/(0, _Function.dual)(2, function (data, f) {
191
- if (isSuccess(data) || isOptimistic(data)) {
192
- return f(data.value, data);
193
- } else {
194
- return data;
195
- }
196
- });
197
- /**
198
- * @since 1.0.0
199
- */
200
- const startLoading = (data, options) => {
201
- if (isSuccess(data)) {
202
- return Option.isSome(data.refreshing) ? data : success(data.value, {
203
- ...data,
204
- refreshing: loading(options)
205
- });
206
- } else if (isFailure(data)) {
207
- return Option.isSome(data.refreshing) ? data : failCause(data.cause, {
208
- ...data,
209
- refreshing: loading(options)
210
- });
211
- } else if (isOptimistic(data)) {
212
- return optimistic(startLoading(data.previous, options), data.value, data);
213
- } else {
214
- return loading(options);
215
- }
216
- };
217
- /**
218
- * @since 1.0.0
219
- */
220
- exports.startLoading = startLoading;
221
- const stopLoading = data => {
222
- if (isSuccess(data)) {
223
- return Option.isSome(data.refreshing) ? success(data.value, {
224
- timestamp: data.timestamp
225
- }) : data;
226
- } else if (isFailure(data)) {
227
- return Option.isSome(data.refreshing) ? failCause(data.cause, {
228
- timestamp: data.timestamp
229
- }) : data;
230
- } else if (isOptimistic(data)) {
231
- return optimistic(stopLoading(data.previous), data.value, data);
232
- } else {
233
- return noData();
234
- }
235
- };
236
- /**
237
- * @since 1.0.0
238
- */
239
- exports.stopLoading = stopLoading;
240
- const isAsyncData = exports.isAsyncData = internal.isAsyncData;
241
- /**
242
- * @since 1.0.0
243
- */
244
- const done = exit => Exit.match(exit, {
245
- onFailure: cause => failCause(cause),
246
- onSuccess: value => success(value)
247
- });
248
- /**
249
- * @since 1.0.0
250
- */
251
- exports.done = done;
252
- const getFailure = data => isFailure(data) ? Cause.failureOption(data.cause) : Option.none();
253
- /**
254
- * @since 1.0.0
255
- */
256
- exports.getFailure = getFailure;
257
- const getSuccess = data => isSuccess(data) || isOptimistic(data) ? Option.some(data.value) : Option.none();
258
- exports.getSuccess = getSuccess;
259
- const optionProgressEq = /*#__PURE__*/Option.getEquivalence(Progress.equals);
260
- const loadingEquivalence = /*#__PURE__*/Equivalence.struct({
261
- _tag: Equivalence.string,
262
- timestamp: Equivalence.number,
263
- progress: optionProgressEq
264
- });
265
- const optionLoadingEq = /*#__PURE__*/Option.getEquivalence(loadingEquivalence);
266
- const failureEquivalence = /*#__PURE__*/Equivalence.struct({
267
- _tag: Equivalence.string,
268
- cause: Equal.equals,
269
- timestamp: Equivalence.number,
270
- refreshing: optionLoadingEq
271
- });
272
- const successEquivalence = valueEq => Equivalence.struct({
273
- _tag: Equivalence.string,
274
- value: valueEq,
275
- timestamp: Equivalence.number,
276
- refreshing: optionLoadingEq
277
- });
278
- const optimisticEquivalence = valueEq => {
279
- let previousEq;
280
- const get = () => {
281
- if (previousEq === undefined) {
282
- previousEq = getEquivalence(valueEq);
283
- }
284
- return previousEq;
285
- };
286
- return Equivalence.struct({
287
- _tag: Equivalence.string,
288
- value: valueEq,
289
- timestamp: Equivalence.number,
290
- previous: (a, b) => get()(a, b)
291
- });
292
- };
293
- /**
294
- * @since 1.0.0
295
- */
296
- const getEquivalence = (valueEq = Equal.equals) => {
297
- const successEq_ = successEquivalence(valueEq);
298
- const optimisticEq_ = optimisticEquivalence(valueEq);
299
- return (a, b) => {
300
- if (a === b) return true;
301
- return match(a, {
302
- NoData: () => isNoData(b),
303
- Loading: l1 => isLoading(b) ? loadingEquivalence(l1, b) : false,
304
- Failure: (_, f1) => isFailure(b) ? failureEquivalence(f1, b) : false,
305
- Success: (_, s1) => isSuccess(b) ? successEq_(s1, b) : false,
306
- Optimistic: (_, o1) => isOptimistic(b) ? optimisticEq_(o1, b) : false
307
- });
308
- };
309
- };
310
- /**
311
- * @since 1.0.0
312
- */
313
- exports.getEquivalence = getEquivalence;
314
- function fromExit(exit) {
315
- return Exit.match(exit, {
316
- onFailure: cause => failCause(cause),
317
- onSuccess: value => success(value)
318
- });
319
- }
320
- /**
321
- * @since 1.0.0
322
- */
323
- function fromEither(either) {
324
- return Either.match(either, {
325
- onLeft: e => fail(e),
326
- onRight: a => success(a)
327
- });
328
- }
329
- /**
330
- * @since 1.0.0
331
- */
332
- const isExpired = exports.isExpired = /*#__PURE__*/(0, _Function.dual)(isAsyncDataFirst, function isExpired(data, ttl, now = getCurrentTimestamp()) {
333
- return match(data, {
334
- NoData: () => true,
335
- Loading: ({
336
- timestamp
337
- }) => isPastTTL(timestamp, ttl, now),
338
- Failure: (_, f) => Option.isNone(f.refreshing) ? isPastTTL(f.timestamp, ttl, now) : isPastTTL(f.refreshing.value.timestamp, ttl, now),
339
- Success: (_, s) => Option.isNone(s.refreshing) ? isPastTTL(s.timestamp, ttl, now) : isPastTTL(s.refreshing.value.timestamp, ttl, now),
340
- Optimistic: (_, o) => isPastTTL(o.timestamp, ttl, now) || (o.previous._tag === _tag.NO_DATA_TAG ? false : isExpired(o.previous, ttl, now))
341
- });
342
- });
343
- function isPastTTL(timestamp, ttl, now) {
344
- const millis = Duration.toMillis(ttl);
345
- return now - timestamp >= millis;
346
- }
347
- const optionDataEqual = /*#__PURE__*/Option.getEquivalence(dataEqual);
348
- /**
349
- * Checks if two AsyncData are equal, disregarding the timestamps associated with them. Useful for testing
350
- * without needing to manage timestamps.
351
- *
352
- * @since 1.0.0
353
- */
354
- function dataEqual(first, second) {
355
- return match(first, {
356
- NoData: () => isNoData(second),
357
- Loading: l => isLoading(second) && Equal.equals(l.progress, second.progress),
358
- Failure: (_, f1) => isFailure(second) && Equal.equals(f1.cause, second.cause) && optionDataEqual(f1.refreshing, second.refreshing),
359
- Success: (_, s1) => isSuccess(second) && Equal.equals(s1.value, second.value) && optionDataEqual(s1.refreshing, second.refreshing),
360
- Optimistic: (_, o1) => isOptimistic(second) && Equal.equals(o1.value, second.value) && dataEqual(o1.previous, second.previous)
361
- });
362
- }
363
- /**
364
- * @since 1.0.0
365
- */
366
- function toOption(data) {
367
- return match(data, {
368
- NoData: Option.none,
369
- Loading: Option.none,
370
- Failure: Option.none,
371
- Success: Option.some,
372
- Optimistic: Option.some
373
- });
374
- }
375
- /**
376
- * @since 1.0.0
377
- */
378
- function toOptionCause(data) {
379
- return match(data, {
380
- NoData: Option.none,
381
- Loading: Option.none,
382
- Failure: Option.some,
383
- Success: Option.none,
384
- Optimistic: Option.none
385
- });
386
- }
387
- /**
388
- * @since 1.0.0
389
- */
390
- function toOptionError(data) {
391
- return match(data, {
392
- NoData: Option.none,
393
- Loading: Option.none,
394
- Failure: Cause.failureOption,
395
- Success: Option.none,
396
- Optimistic: Option.none
397
- });
398
- }
399
- //# sourceMappingURL=AsyncData.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AsyncData.js","names":["Cause","_interopRequireWildcard","require","Data","Duration","Either","Equal","Equivalence","Exit","_Function","Option","Unify","internal","_tag","Progress","_TypeId","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","getCurrentTimestamp","Date","now","NoData","TaggedError","NO_DATA_TAG","AsyncDataTypeId","typeSymbol","unifySymbol","ignoreSymbol","exports","noData","Loading","LOADING_TAG","loading","options","timestamp","progress","fromNullable","failCause","cause","FailureImpl","refreshing","fail","error","success","value","SuccessImpl","isAsyncDataFirst","args","isAsyncData","optimistic","dual","length","previous","OptimisticImpl","isSuccess","data","SUCCESS_TAG","isOptimistic","OPTIMISTIC_TAG","isFailure","FAILURE_TAG","isLoading","isNoData","isRefreshing","isSome","isLoadingOrRefreshing","match","matchers","Success","Failure","Optimistic","map","f","getOrUndefined","flatMap","startLoading","stopLoading","done","exit","onFailure","onSuccess","getFailure","failureOption","none","getSuccess","some","optionProgressEq","getEquivalence","equals","loadingEquivalence","struct","string","number","optionLoadingEq","failureEquivalence","successEquivalence","valueEq","optimisticEquivalence","previousEq","undefined","b","successEq_","optimisticEq_","l1","_","f1","s1","o1","fromExit","fromEither","either","onLeft","onRight","isExpired","ttl","isPastTTL","isNone","s","o","millis","toMillis","optionDataEqual","dataEqual","first","second","l","toOption","toOptionCause","toOptionError"],"sources":["../../src/AsyncData.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,62 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.Progress = Progress;
7
- exports.make = exports.equals = void 0;
8
- exports.pretty = pretty;
9
- exports.setTotal = exports.setLoaded = void 0;
10
- var Data = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Data"));
11
- var Equivalence = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Equivalence"));
12
- var _Function = /*#__PURE__*/require("effect/Function");
13
- var Option = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("effect/Option"));
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
- /**
17
- * @since 1.0.0
18
- */
19
-
20
- /**
21
- * @since 1.0.0
22
- */
23
- function Progress(loaded, total = Option.none()) {
24
- return Data.struct({
25
- loaded,
26
- total
27
- });
28
- }
29
- /**
30
- * @since 1.0.0
31
- */
32
- const make = (loaded, total) => Progress(loaded, Option.fromNullable(total));
33
- /**
34
- * @since 1.0.0
35
- */
36
- exports.make = make;
37
- const setLoaded = exports.setLoaded = /*#__PURE__*/(0, _Function.dual)(2, function setLoaded(progress, loaded) {
38
- return Progress(loaded, progress.total);
39
- });
40
- /**
41
- * @since 1.0.0
42
- */
43
- const setTotal = exports.setTotal = /*#__PURE__*/(0, _Function.dual)(2, function setTotal(progress, total) {
44
- return Progress(progress.loaded, Option.some(total));
45
- });
46
- /**
47
- * @since 1.0.0
48
- */
49
- const equals = exports.equals = /*#__PURE__*/Equivalence.struct({
50
- loaded: Equivalence.bigint,
51
- total: /*#__PURE__*/Option.getEquivalence(Equivalence.bigint)
52
- });
53
- /**
54
- * @since 1.0.0
55
- */
56
- function pretty(progress) {
57
- return `${progress.loaded}${Option.match(progress.total, {
58
- onNone: () => "",
59
- onSome: total => `/${total}`
60
- })}`;
61
- }
62
- //# sourceMappingURL=Progress.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Progress.js","names":["Data","_interopRequireWildcard","require","Equivalence","_Function","Option","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","Progress","loaded","total","none","struct","make","fromNullable","exports","setLoaded","dual","progress","setTotal","some","equals","bigint","getEquivalence","pretty","match","onNone","onSome"],"sources":["../../src/Progress.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}