Aktueller Stand

This commit is contained in:
2026-01-23 01:33:35 +01:00
parent 082dc5e110
commit 2766dd12c5
10109 changed files with 1578841 additions and 77685 deletions

View File

@@ -0,0 +1,44 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.isDone = exports.isContinue = exports.done = exports.continueWith = exports._continue = exports.OP_DONE = exports.OP_CONTINUE = void 0;
var Chunk = _interopRequireWildcard(require("../../Chunk.js"));
var Intervals = _interopRequireWildcard(require("../../ScheduleIntervals.js"));
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
/** @internal */
const OP_CONTINUE = exports.OP_CONTINUE = "Continue";
/** @internal */
const OP_DONE = exports.OP_DONE = "Done";
/** @internal */
const _continue = intervals => {
return {
_tag: OP_CONTINUE,
intervals
};
};
/** @internal */
exports._continue = _continue;
const continueWith = interval => {
return {
_tag: OP_CONTINUE,
intervals: Intervals.make(Chunk.of(interval))
};
};
/** @internal */
exports.continueWith = continueWith;
const done = exports.done = {
_tag: OP_DONE
};
/** @internal */
const isContinue = self => {
return self._tag === OP_CONTINUE;
};
/** @internal */
exports.isContinue = isContinue;
const isDone = self => {
return self._tag === OP_DONE;
};
exports.isDone = isDone;
//# sourceMappingURL=decision.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"decision.js","names":["Chunk","_interopRequireWildcard","require","Intervals","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","OP_CONTINUE","exports","OP_DONE","_continue","intervals","_tag","continueWith","interval","make","of","done","isContinue","self","isDone"],"sources":["../../../../src/internal/schedule/decision.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AAGA,IAAAC,SAAA,GAAAF,uBAAA,CAAAC,OAAA;AAAuD,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAEvD;AACO,MAAMkB,WAAW,GAAAC,OAAA,CAAAD,WAAA,GAAG,UAAmB;AAK9C;AACO,MAAME,OAAO,GAAAD,OAAA,CAAAC,OAAA,GAAG,MAAe;AAKtC;AACO,MAAMC,SAAS,GAAIC,SAA8B,IAAuC;EAC7F,OAAO;IACLC,IAAI,EAAEL,WAAW;IACjBI;GACD;AACH,CAAC;AAED;AAAAH,OAAA,CAAAE,SAAA,GAAAA,SAAA;AACO,MAAMG,YAAY,GAAIC,QAA2B,IAAuC;EAC7F,OAAO;IACLF,IAAI,EAAEL,WAAW;IACjBI,SAAS,EAAExB,SAAS,CAAC4B,IAAI,CAAC/B,KAAK,CAACgC,EAAE,CAACF,QAAQ,CAAC;GAC7C;AACH,CAAC;AAED;AAAAN,OAAA,CAAAK,YAAA,GAAAA,YAAA;AACO,MAAMI,IAAI,GAAAT,OAAA,CAAAS,IAAA,GAAsC;EACrDL,IAAI,EAAEH;CACP;AAED;AACO,MAAMS,UAAU,GAAIC,IAAuC,IAAuC;EACvG,OAAOA,IAAI,CAACP,IAAI,KAAKL,WAAW;AAClC,CAAC;AAED;AAAAC,OAAA,CAAAU,UAAA,GAAAA,UAAA;AACO,MAAME,MAAM,GAAID,IAAuC,IAAmC;EAC/F,OAAOA,IAAI,CAACP,IAAI,KAAKH,OAAO;AAC9B,CAAC;AAAAD,OAAA,CAAAY,MAAA,GAAAA,MAAA","ignoreList":[]}

View File

@@ -0,0 +1,83 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.union = exports.size = exports.min = exports.max = exports.make = exports.lessThan = exports.isNonEmpty = exports.isEmpty = exports.intersect = exports.empty = exports.before = exports.after = exports.IntervalTypeId = void 0;
var Duration = _interopRequireWildcard(require("../../Duration.js"));
var _Function = require("../../Function.js");
var Option = _interopRequireWildcard(require("../../Option.js"));
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
/** @internal */
const IntervalSymbolKey = "effect/ScheduleInterval";
/** @internal */
const IntervalTypeId = exports.IntervalTypeId = /*#__PURE__*/Symbol.for(IntervalSymbolKey);
/** @internal */
const empty = exports.empty = {
[IntervalTypeId]: IntervalTypeId,
startMillis: 0,
endMillis: 0
};
/** @internal */
const make = (startMillis, endMillis) => {
if (startMillis > endMillis) {
return empty;
}
return {
[IntervalTypeId]: IntervalTypeId,
startMillis,
endMillis
};
};
/** @internal */
exports.make = make;
const lessThan = exports.lessThan = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => min(self, that) === self);
/** @internal */
const min = exports.min = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => {
if (self.endMillis <= that.startMillis) return self;
if (that.endMillis <= self.startMillis) return that;
if (self.startMillis < that.startMillis) return self;
if (that.startMillis < self.startMillis) return that;
if (self.endMillis <= that.endMillis) return self;
return that;
});
/** @internal */
const max = exports.max = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => min(self, that) === self ? that : self);
/** @internal */
const isEmpty = self => {
return self.startMillis >= self.endMillis;
};
/** @internal */
exports.isEmpty = isEmpty;
const isNonEmpty = self => {
return !isEmpty(self);
};
/** @internal */
exports.isNonEmpty = isNonEmpty;
const intersect = exports.intersect = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => {
const start = Math.max(self.startMillis, that.startMillis);
const end = Math.min(self.endMillis, that.endMillis);
return make(start, end);
});
/** @internal */
const size = self => {
return Duration.millis(self.endMillis - self.startMillis);
};
/** @internal */
exports.size = size;
const union = exports.union = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => {
const start = Math.max(self.startMillis, that.startMillis);
const end = Math.min(self.endMillis, that.endMillis);
return start < end ? Option.none() : Option.some(make(start, end));
});
/** @internal */
const after = startMilliseconds => {
return make(startMilliseconds, Number.POSITIVE_INFINITY);
};
/** @internal */
exports.after = after;
const before = endMilliseconds => {
return make(Number.NEGATIVE_INFINITY, endMilliseconds);
};
exports.before = before;
//# sourceMappingURL=interval.js.map

View File

@@ -0,0 +1 @@
{"version":3,"file":"interval.js","names":["Duration","_interopRequireWildcard","require","_Function","Option","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","IntervalSymbolKey","IntervalTypeId","exports","Symbol","for","empty","startMillis","endMillis","make","lessThan","dual","self","that","min","max","isEmpty","isNonEmpty","intersect","start","Math","end","size","millis","union","none","some","after","startMilliseconds","Number","POSITIVE_INFINITY","before","endMilliseconds","NEGATIVE_INFINITY"],"sources":["../../../../src/internal/schedule/interval.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}

View File

@@ -0,0 +1,134 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.union = exports.start = exports.max = exports.make = exports.lessThan = exports.isNonEmpty = exports.intersect = exports.fromIterable = exports.end = exports.empty = exports.IntervalsTypeId = void 0;
var Chunk = _interopRequireWildcard(require("../../Chunk.js"));
var _Function = require("../../Function.js");
var Option = _interopRequireWildcard(require("../../Option.js"));
var Interval = _interopRequireWildcard(require("../../ScheduleInterval.js"));
var _errors = require("../errors.js");
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
/** @internal */
const IntervalsSymbolKey = "effect/ScheduleIntervals";
/** @internal */
const IntervalsTypeId = exports.IntervalsTypeId = /*#__PURE__*/Symbol.for(IntervalsSymbolKey);
/** @internal */
const make = intervals => {
return {
[IntervalsTypeId]: IntervalsTypeId,
intervals
};
};
/** @internal */
exports.make = make;
const empty = exports.empty = /*#__PURE__*/make(/*#__PURE__*/Chunk.empty());
/** @internal */
const fromIterable = intervals => Array.from(intervals).reduce((intervals, interval) => (0, _Function.pipe)(intervals, union(make(Chunk.of(interval)))), empty);
/** @internal */
exports.fromIterable = fromIterable;
const union = exports.union = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => {
if (!Chunk.isNonEmpty(that.intervals)) {
return self;
}
if (!Chunk.isNonEmpty(self.intervals)) {
return that;
}
if (Chunk.headNonEmpty(self.intervals).startMillis < Chunk.headNonEmpty(that.intervals).startMillis) {
return unionLoop(Chunk.tailNonEmpty(self.intervals), that.intervals, Chunk.headNonEmpty(self.intervals), Chunk.empty());
}
return unionLoop(self.intervals, Chunk.tailNonEmpty(that.intervals), Chunk.headNonEmpty(that.intervals), Chunk.empty());
});
/** @internal */
const unionLoop = (_self, _that, _interval, _acc) => {
let self = _self;
let that = _that;
let interval = _interval;
let acc = _acc;
while (Chunk.isNonEmpty(self) || Chunk.isNonEmpty(that)) {
if (!Chunk.isNonEmpty(self) && Chunk.isNonEmpty(that)) {
if (interval.endMillis < Chunk.headNonEmpty(that).startMillis) {
acc = (0, _Function.pipe)(acc, Chunk.prepend(interval));
interval = Chunk.headNonEmpty(that);
that = Chunk.tailNonEmpty(that);
self = Chunk.empty();
} else {
interval = Interval.make(interval.startMillis, Chunk.headNonEmpty(that).endMillis);
that = Chunk.tailNonEmpty(that);
self = Chunk.empty();
}
} else if (Chunk.isNonEmpty(self) && Chunk.isEmpty(that)) {
if (interval.endMillis < Chunk.headNonEmpty(self).startMillis) {
acc = (0, _Function.pipe)(acc, Chunk.prepend(interval));
interval = Chunk.headNonEmpty(self);
that = Chunk.empty();
self = Chunk.tailNonEmpty(self);
} else {
interval = Interval.make(interval.startMillis, Chunk.headNonEmpty(self).endMillis);
that = Chunk.empty();
self = Chunk.tailNonEmpty(self);
}
} else if (Chunk.isNonEmpty(self) && Chunk.isNonEmpty(that)) {
if (Chunk.headNonEmpty(self).startMillis < Chunk.headNonEmpty(that).startMillis) {
if (interval.endMillis < Chunk.headNonEmpty(self).startMillis) {
acc = (0, _Function.pipe)(acc, Chunk.prepend(interval));
interval = Chunk.headNonEmpty(self);
self = Chunk.tailNonEmpty(self);
} else {
interval = Interval.make(interval.startMillis, Chunk.headNonEmpty(self).endMillis);
self = Chunk.tailNonEmpty(self);
}
} else if (interval.endMillis < Chunk.headNonEmpty(that).startMillis) {
acc = (0, _Function.pipe)(acc, Chunk.prepend(interval));
interval = Chunk.headNonEmpty(that);
that = Chunk.tailNonEmpty(that);
} else {
interval = Interval.make(interval.startMillis, Chunk.headNonEmpty(that).endMillis);
that = Chunk.tailNonEmpty(that);
}
} else {
throw new Error((0, _errors.getBugErrorMessage)("Intervals.unionLoop"));
}
}
return make((0, _Function.pipe)(acc, Chunk.prepend(interval), Chunk.reverse));
};
/** @internal */
const intersect = exports.intersect = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => intersectLoop(self.intervals, that.intervals, Chunk.empty()));
/** @internal */
const intersectLoop = (_left, _right, _acc) => {
let left = _left;
let right = _right;
let acc = _acc;
while (Chunk.isNonEmpty(left) && Chunk.isNonEmpty(right)) {
const interval = (0, _Function.pipe)(Chunk.headNonEmpty(left), Interval.intersect(Chunk.headNonEmpty(right)));
const intervals = Interval.isEmpty(interval) ? acc : (0, _Function.pipe)(acc, Chunk.prepend(interval));
if ((0, _Function.pipe)(Chunk.headNonEmpty(left), Interval.lessThan(Chunk.headNonEmpty(right)))) {
left = Chunk.tailNonEmpty(left);
} else {
right = Chunk.tailNonEmpty(right);
}
acc = intervals;
}
return make(Chunk.reverse(acc));
};
/** @internal */
const start = self => {
return (0, _Function.pipe)(self.intervals, Chunk.head, Option.getOrElse(() => Interval.empty)).startMillis;
};
/** @internal */
exports.start = start;
const end = self => {
return (0, _Function.pipe)(self.intervals, Chunk.head, Option.getOrElse(() => Interval.empty)).endMillis;
};
/** @internal */
exports.end = end;
const lessThan = exports.lessThan = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => start(self) < start(that));
/** @internal */
const isNonEmpty = self => {
return Chunk.isNonEmpty(self.intervals);
};
/** @internal */
exports.isNonEmpty = isNonEmpty;
const max = exports.max = /*#__PURE__*/(0, _Function.dual)(2, (self, that) => lessThan(self, that) ? that : self);
//# sourceMappingURL=intervals.js.map

File diff suppressed because one or more lines are too long