@duplojs/agents-kit 0.0.0-stage → 0.1.0-beta.6
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.
- package/README.md +73 -2
- package/dist/bin/index.d.ts +2 -0
- package/dist/bin/index.mjs +7 -0
- package/dist/bin/installSkill/index.d.ts +2 -0
- package/dist/bin/installSkill/index.mjs +25 -0
- package/dist/bin/installSkill/skill.d.ts +28 -0
- package/dist/bin/installSkill/skill.mjs +58 -0
- package/dist/bin/packagePath.d.ts +2 -0
- package/dist/bin/packagePath.mjs +12 -0
- package/dist/bin/setup/index.d.ts +12 -0
- package/dist/bin/setup/index.mjs +33 -0
- package/dist/bin/setup/instructions.d.ts +8 -0
- package/dist/bin/setup/instructions.mjs +27 -0
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.mjs +0 -0
- package/docs/API/10-lang/10-array/10-at.ts +65 -0
- package/docs/API/10-lang/10-array/10-chunk.ts +42 -0
- package/docs/API/10-lang/10-array/10-coalescing.ts +20 -0
- package/docs/API/10-lang/10-array/10-concat.ts +34 -0
- package/docs/API/10-lang/10-array/10-copyWithin.ts +34 -0
- package/docs/API/10-lang/10-array/10-every.ts +25 -0
- package/docs/API/10-lang/10-array/10-fill.ts +34 -0
- package/docs/API/10-lang/10-array/10-fillAll.ts +34 -0
- package/docs/API/10-lang/10-array/10-filter.ts +43 -0
- package/docs/API/10-lang/10-array/10-find.ts +33 -0
- package/docs/API/10-lang/10-array/10-findAndReplace.ts +35 -0
- package/docs/API/10-lang/10-array/10-findAndSpliceDelete.ts +35 -0
- package/docs/API/10-lang/10-array/10-findAndSpliceInsert.ts +35 -0
- package/docs/API/10-lang/10-array/10-findAndSpliceReplace.ts +24 -0
- package/docs/API/10-lang/10-array/10-findDuplicates.ts +19 -0
- package/docs/API/10-lang/10-array/10-findIndex.ts +25 -0
- package/docs/API/10-lang/10-array/10-findLast.ts +33 -0
- package/docs/API/10-lang/10-array/10-findLastIndex.ts +25 -0
- package/docs/API/10-lang/10-array/10-first.ts +21 -0
- package/docs/API/10-lang/10-array/10-flat.ts +22 -0
- package/docs/API/10-lang/10-array/10-flatMap.ts +24 -0
- package/docs/API/10-lang/10-array/10-from.ts +25 -0
- package/docs/API/10-lang/10-array/10-group.ts +27 -0
- package/docs/API/10-lang/10-array/10-groupOutput.ts +30 -0
- package/docs/API/10-lang/10-array/10-includes.ts +24 -0
- package/docs/API/10-lang/10-array/10-indexOf.ts +24 -0
- package/docs/API/10-lang/10-array/10-insert.ts +34 -0
- package/docs/API/10-lang/10-array/10-is.ts +29 -0
- package/docs/API/10-lang/10-array/10-isLastIndex.ts +24 -0
- package/docs/API/10-lang/10-array/10-last.ts +21 -0
- package/docs/API/10-lang/10-array/10-lastIndexOf.ts +24 -0
- package/docs/API/10-lang/10-array/10-length.ts +28 -0
- package/docs/API/10-lang/10-array/10-lengthEqual.ts +39 -0
- package/docs/API/10-lang/10-array/10-map.ts +34 -0
- package/docs/API/10-lang/10-array/10-maxElements.ts +44 -0
- package/docs/API/10-lang/10-array/10-minElements.ts +44 -0
- package/docs/API/10-lang/10-array/10-notIncludes.ts +24 -0
- package/docs/API/10-lang/10-array/10-pop.ts +23 -0
- package/docs/API/10-lang/10-array/10-prepend.ts +34 -0
- package/docs/API/10-lang/10-array/10-push.ts +34 -0
- package/docs/API/10-lang/10-array/10-reduce.ts +28 -0
- package/docs/API/10-lang/10-array/10-reduceFrom.ts +16 -0
- package/docs/API/10-lang/10-array/10-reduceRight.ts +28 -0
- package/docs/API/10-lang/10-array/10-reverse.ts +25 -0
- package/docs/API/10-lang/10-array/10-select.ts +26 -0
- package/docs/API/10-lang/10-array/10-set.ts +24 -0
- package/docs/API/10-lang/10-array/10-shift.ts +23 -0
- package/docs/API/10-lang/10-array/10-slice.ts +24 -0
- package/docs/API/10-lang/10-array/10-some.ts +25 -0
- package/docs/API/10-lang/10-array/10-sort.ts +34 -0
- package/docs/API/10-lang/10-array/10-spliceDelete.ts +34 -0
- package/docs/API/10-lang/10-array/10-spliceInsert.ts +34 -0
- package/docs/API/10-lang/10-array/10-spliceReplace.ts +24 -0
- package/docs/API/10-lang/10-array/10-unshift.ts +34 -0
- package/docs/API/10-lang/10-array/index.llms.md +220 -0
- package/docs/API/10-lang/10-array/index.md +3 -0
- package/docs/API/10-lang/10-chrono/10-addDays.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-addHours.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-addMilliseconds.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-addMinutes.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-addMonths.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-addSeconds.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-addTime.ts +38 -0
- package/docs/API/10-lang/10-chrono/10-addWeeks.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-addYears.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-applyTimezone.ts +29 -0
- package/docs/API/10-lang/10-chrono/10-betweenThanDate.ts +27 -0
- package/docs/API/10-lang/10-chrono/10-betweenThanOrEqualDate.ts +27 -0
- package/docs/API/10-lang/10-chrono/10-betweenThanOrEqualTime.ts +27 -0
- package/docs/API/10-lang/10-chrono/10-betweenThanTime.ts +27 -0
- package/docs/API/10-lang/10-chrono/10-closestTo.ts +45 -0
- package/docs/API/10-lang/10-chrono/10-computeTime.ts +35 -0
- package/docs/API/10-lang/10-chrono/10-createDate.ts +122 -0
- package/docs/API/10-lang/10-chrono/10-createDateOrThrow.ts +39 -0
- package/docs/API/10-lang/10-chrono/10-createTime.ts +86 -0
- package/docs/API/10-lang/10-chrono/10-createTimeOrThrow.ts +28 -0
- package/docs/API/10-lang/10-chrono/10-eachDate.ts +67 -0
- package/docs/API/10-lang/10-chrono/10-equalDate.ts +26 -0
- package/docs/API/10-lang/10-chrono/10-equalTime.ts +26 -0
- package/docs/API/10-lang/10-chrono/10-formatDate.ts +43 -0
- package/docs/API/10-lang/10-chrono/10-formatTime.ts +37 -0
- package/docs/API/10-lang/10-chrono/10-getDayOfMonth.ts +37 -0
- package/docs/API/10-lang/10-chrono/10-getDayOfWeek.ts +30 -0
- package/docs/API/10-lang/10-chrono/10-getDayOfYear.ts +28 -0
- package/docs/API/10-lang/10-chrono/10-getDifference.ts +29 -0
- package/docs/API/10-lang/10-chrono/10-getFirstDayOfMonth.ts +24 -0
- package/docs/API/10-lang/10-chrono/10-getFirstDayOfWeek.ts +24 -0
- package/docs/API/10-lang/10-chrono/10-getHour.ts +28 -0
- package/docs/API/10-lang/10-chrono/10-getLastDayOfMonth.ts +24 -0
- package/docs/API/10-lang/10-chrono/10-getLastDayOfWeek.ts +24 -0
- package/docs/API/10-lang/10-chrono/10-getMilliseconds.ts +24 -0
- package/docs/API/10-lang/10-chrono/10-getMinute.ts +27 -0
- package/docs/API/10-lang/10-chrono/10-getMonth.ts +27 -0
- package/docs/API/10-lang/10-chrono/10-getSecond.ts +27 -0
- package/docs/API/10-lang/10-chrono/10-getTimezoneOffset.ts +28 -0
- package/docs/API/10-lang/10-chrono/10-getWeekOfYear.ts +27 -0
- package/docs/API/10-lang/10-chrono/10-getYear.ts +27 -0
- package/docs/API/10-lang/10-chrono/10-greaterThanDate.ts +26 -0
- package/docs/API/10-lang/10-chrono/10-greaterThanOrEqualDate.ts +26 -0
- package/docs/API/10-lang/10-chrono/10-greaterThanOrEqualTime.ts +26 -0
- package/docs/API/10-lang/10-chrono/10-greaterThanTime.ts +26 -0
- package/docs/API/10-lang/10-chrono/10-isDate.ts +36 -0
- package/docs/API/10-lang/10-chrono/10-isSafeTimeValue.ts +19 -0
- package/docs/API/10-lang/10-chrono/10-isSafeTimestamp.ts +19 -0
- package/docs/API/10-lang/10-chrono/10-isSerializedTheDate.ts +41 -0
- package/docs/API/10-lang/10-chrono/10-isSerializedTheTime.ts +41 -0
- package/docs/API/10-lang/10-chrono/10-isTime.ts +36 -0
- package/docs/API/10-lang/10-chrono/10-lessThanDate.ts +26 -0
- package/docs/API/10-lang/10-chrono/10-lessThanOrEqualDate.ts +26 -0
- package/docs/API/10-lang/10-chrono/10-lessThanOrEqualTime.ts +26 -0
- package/docs/API/10-lang/10-chrono/10-lessThanTime.ts +26 -0
- package/docs/API/10-lang/10-chrono/10-makeSafeTimeValue.ts +19 -0
- package/docs/API/10-lang/10-chrono/10-makeSafeTimestamp.ts +19 -0
- package/docs/API/10-lang/10-chrono/10-maxDate.ts +19 -0
- package/docs/API/10-lang/10-chrono/10-maxTime.ts +19 -0
- package/docs/API/10-lang/10-chrono/10-minDate.ts +19 -0
- package/docs/API/10-lang/10-chrono/10-minTime.ts +19 -0
- package/docs/API/10-lang/10-chrono/10-now.ts +13 -0
- package/docs/API/10-lang/10-chrono/10-round.ts +41 -0
- package/docs/API/10-lang/10-chrono/10-serialize.ts +23 -0
- package/docs/API/10-lang/10-chrono/10-sortDates.ts +30 -0
- package/docs/API/10-lang/10-chrono/10-sortTimes.ts +29 -0
- package/docs/API/10-lang/10-chrono/10-subtractDays.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-subtractHours.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-subtractMilliseconds.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-subtractMinutes.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-subtractMonths.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-subtractSeconds.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-subtractTime.ts +38 -0
- package/docs/API/10-lang/10-chrono/10-subtractWeeks.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-subtractYears.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-toDateISOString.ts +17 -0
- package/docs/API/10-lang/10-chrono/10-toNative.ts +25 -0
- package/docs/API/10-lang/10-chrono/10-toTimeValue.ts +17 -0
- package/docs/API/10-lang/10-chrono/10-toTimestamp.ts +17 -0
- package/docs/API/10-lang/10-chrono/10-today.ts +13 -0
- package/docs/API/10-lang/10-chrono/10-tomorrow.ts +13 -0
- package/docs/API/10-lang/10-chrono/10-yesterday.ts +13 -0
- package/docs/API/10-lang/10-chrono/index.llms.md +332 -0
- package/docs/API/10-lang/10-chrono/index.md +3 -0
- package/docs/API/10-lang/10-common/10-and.ts +51 -0
- package/docs/API/10-lang/10-common/10-asserts.ts +13 -0
- package/docs/API/10-lang/10-common/10-asyncInnerPipe.ts +23 -0
- package/docs/API/10-lang/10-common/10-asyncLoop.ts +25 -0
- package/docs/API/10-lang/10-common/10-asyncPipe.ts +21 -0
- package/docs/API/10-lang/10-common/10-callThen.ts +22 -0
- package/docs/API/10-lang/10-common/10-cast.ts +16 -0
- package/docs/API/10-lang/10-common/10-clone.ts +12 -0
- package/docs/API/10-lang/10-common/10-createAsyncRetry.ts +34 -0
- package/docs/API/10-lang/10-common/10-createBuilder.ts +19 -0
- package/docs/API/10-lang/10-common/10-createEnum.ts +25 -0
- package/docs/API/10-lang/10-common/10-createExternalPromise.ts +13 -0
- package/docs/API/10-lang/10-common/10-createFormData.ts +16 -0
- package/docs/API/10-lang/10-common/10-createInterpolation.ts +12 -0
- package/docs/API/10-lang/10-common/10-createQueue.ts +17 -0
- package/docs/API/10-lang/10-common/10-createTransformer.ts +16 -0
- package/docs/API/10-lang/10-common/10-detachObjectMethod.ts +20 -0
- package/docs/API/10-lang/10-common/10-equal.ts +37 -0
- package/docs/API/10-lang/10-common/10-escapeRegExp.ts +11 -0
- package/docs/API/10-lang/10-common/10-falsy.ts +31 -0
- package/docs/API/10-lang/10-common/10-forward.ts +11 -0
- package/docs/API/10-lang/10-common/10-forwardAsserts.ts +17 -0
- package/docs/API/10-lang/10-common/10-forwardLog.ts +11 -0
- package/docs/API/10-lang/10-common/10-infer.ts +16 -0
- package/docs/API/10-lang/10-common/10-innerPipe.ts +23 -0
- package/docs/API/10-lang/10-common/10-instanceOf.ts +34 -0
- package/docs/API/10-lang/10-common/10-isType.ts +35 -0
- package/docs/API/10-lang/10-common/10-justExec.ts +28 -0
- package/docs/API/10-lang/10-common/10-justReturn.ts +19 -0
- package/docs/API/10-lang/10-common/10-loop.ts +20 -0
- package/docs/API/10-lang/10-common/10-memo.ts +12 -0
- package/docs/API/10-lang/10-common/10-memoObject.ts +11 -0
- package/docs/API/10-lang/10-common/10-memoPromise.ts +16 -0
- package/docs/API/10-lang/10-common/10-or.ts +43 -0
- package/docs/API/10-lang/10-common/10-pipe.ts +21 -0
- package/docs/API/10-lang/10-common/10-pipeCall.ts +20 -0
- package/docs/API/10-lang/10-common/10-prepareAsyncPipe.ts +20 -0
- package/docs/API/10-lang/10-common/10-preparePipe.ts +20 -0
- package/docs/API/10-lang/10-common/10-promiseAll.ts +16 -0
- package/docs/API/10-lang/10-common/10-promiseObject.ts +22 -0
- package/docs/API/10-lang/10-common/10-removeConstraint.ts +13 -0
- package/docs/API/10-lang/10-common/10-shameOnYou.ts +20 -0
- package/docs/API/10-lang/10-common/10-simpleClone.ts +12 -0
- package/docs/API/10-lang/10-common/10-stringToBytes.ts +16 -0
- package/docs/API/10-lang/10-common/10-stringToMillisecond.ts +17 -0
- package/docs/API/10-lang/10-common/10-tap.ts +28 -0
- package/docs/API/10-lang/10-common/10-timeout.ts +11 -0
- package/docs/API/10-lang/10-common/10-toCurriedPredicate.ts +28 -0
- package/docs/API/10-lang/10-common/10-toJSON.ts +15 -0
- package/docs/API/10-lang/10-common/10-toNative.ts +15 -0
- package/docs/API/10-lang/10-common/10-toRegExp.ts +17 -0
- package/docs/API/10-lang/10-common/10-transformer.ts +21 -0
- package/docs/API/10-lang/10-common/10-truthy.ts +31 -0
- package/docs/API/10-lang/10-common/10-useAsyncRetry.ts +31 -0
- package/docs/API/10-lang/10-common/10-when.ts +27 -0
- package/docs/API/10-lang/10-common/10-whenElse.ts +28 -0
- package/docs/API/10-lang/10-common/10-whenNot.ts +57 -0
- package/docs/API/10-lang/10-common/index.llms.md +232 -0
- package/docs/API/10-lang/10-common/index.md +3 -0
- package/docs/API/10-lang/10-dataStructure/10-absolutePath.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-allowedCharacters.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-array.ts +23 -0
- package/docs/API/10-lang/10-dataStructure/10-arrayLengthEqual.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-betweenThan.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-betweenThanOrEqual.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-bigint.ts +22 -0
- package/docs/API/10-lang/10-dataStructure/10-boolean.ts +22 -0
- package/docs/API/10-lang/10-dataStructure/10-createCodec.ts +45 -0
- package/docs/API/10-lang/10-dataStructure/10-createCodecs.ts +134 -0
- package/docs/API/10-lang/10-dataStructure/10-createErrorInterpreter.ts +74 -0
- package/docs/API/10-lang/10-dataStructure/10-date.ts +23 -0
- package/docs/API/10-lang/10-dataStructure/10-email.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-endsWith.ts +24 -0
- package/docs/API/10-lang/10-dataStructure/10-even.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-extend.ts +27 -0
- package/docs/API/10-lang/10-dataStructure/10-greaterThan.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-greaterThanOrEqual.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-include.ts +24 -0
- package/docs/API/10-lang/10-dataStructure/10-integer.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-isNullStructure.ts +12 -0
- package/docs/API/10-lang/10-dataStructure/10-isNullable.ts +12 -0
- package/docs/API/10-lang/10-dataStructure/10-isOptional.ts +12 -0
- package/docs/API/10-lang/10-dataStructure/10-isUndefinedStructure.ts +12 -0
- package/docs/API/10-lang/10-dataStructure/10-lazy.ts +23 -0
- package/docs/API/10-lang/10-dataStructure/10-lessThan.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-lessThanOrEqual.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-literal.ts +19 -0
- package/docs/API/10-lang/10-dataStructure/10-maxCharacters.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-maxElements.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-minCharacters.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-minElements.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-multipleOf.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-negative.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-notEmpty.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-notZero.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-null.ts +22 -0
- package/docs/API/10-lang/10-dataStructure/10-nullable.ts +19 -0
- package/docs/API/10-lang/10-dataStructure/10-number.ts +22 -0
- package/docs/API/10-lang/10-dataStructure/10-numberInString.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-object.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-odd.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-optional.ts +19 -0
- package/docs/API/10-lang/10-dataStructure/10-partial.ts +23 -0
- package/docs/API/10-lang/10-dataStructure/10-path.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-positive.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-record.ts +22 -0
- package/docs/API/10-lang/10-dataStructure/10-refine.ts +27 -0
- package/docs/API/10-lang/10-dataStructure/10-regex.ts +24 -0
- package/docs/API/10-lang/10-dataStructure/10-required.ts +21 -0
- package/docs/API/10-lang/10-dataStructure/10-safe.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-segmentPath.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-startsWith.ts +24 -0
- package/docs/API/10-lang/10-dataStructure/10-strictNegative.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-strictPositive.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-string.ts +22 -0
- package/docs/API/10-lang/10-dataStructure/10-stringLengthEqual.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-time.ts +23 -0
- package/docs/API/10-lang/10-dataStructure/10-trimmed.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-typeStructureIdentifier.ts +33 -0
- package/docs/API/10-lang/10-dataStructure/10-undefined.ts +22 -0
- package/docs/API/10-lang/10-dataStructure/10-union.ts +24 -0
- package/docs/API/10-lang/10-dataStructure/10-unwrapLazy.ts +17 -0
- package/docs/API/10-lang/10-dataStructure/10-url.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/10-uuid.ts +25 -0
- package/docs/API/10-lang/10-dataStructure/index.llms.md +264 -0
- package/docs/API/10-lang/10-dataStructure/index.md +3 -0
- package/docs/API/10-lang/10-either/10-asyncGroup.ts +44 -0
- package/docs/API/10-lang/10-either/10-asyncSafeCallback.ts +25 -0
- package/docs/API/10-lang/10-either/10-error.ts +12 -0
- package/docs/API/10-lang/10-either/10-expect.ts +13 -0
- package/docs/API/10-lang/10-either/10-extractErrorInLeft.ts +45 -0
- package/docs/API/10-lang/10-either/10-fail.ts +12 -0
- package/docs/API/10-lang/10-either/10-forwardAssertsSelection.ts +28 -0
- package/docs/API/10-lang/10-either/10-group.ts +58 -0
- package/docs/API/10-lang/10-either/10-hasInformation.ts +30 -0
- package/docs/API/10-lang/10-either/10-isLeft.ts +25 -0
- package/docs/API/10-lang/10-either/10-isRight.ts +25 -0
- package/docs/API/10-lang/10-either/10-isSelected.ts +41 -0
- package/docs/API/10-lang/10-either/10-keepAsRightByInformation.ts +29 -0
- package/docs/API/10-lang/10-either/10-keepAsRightSelection.ts +23 -0
- package/docs/API/10-lang/10-either/10-left.ts +13 -0
- package/docs/API/10-lang/10-either/10-matchInformation.ts +28 -0
- package/docs/API/10-lang/10-either/10-matchInformationCombination.ts +61 -0
- package/docs/API/10-lang/10-either/10-matchInformationCombinationOtherwise.ts +62 -0
- package/docs/API/10-lang/10-either/10-matchInformationOtherwise.ts +29 -0
- package/docs/API/10-lang/10-either/10-none.ts +12 -0
- package/docs/API/10-lang/10-either/10-ok.ts +12 -0
- package/docs/API/10-lang/10-either/10-result.ts +18 -0
- package/docs/API/10-lang/10-either/10-rewriteInformation.ts +24 -0
- package/docs/API/10-lang/10-either/10-right.ts +13 -0
- package/docs/API/10-lang/10-either/10-rightAsyncPipe.ts +70 -0
- package/docs/API/10-lang/10-either/10-rightPipe.ts +72 -0
- package/docs/API/10-lang/10-either/10-safeCallback.ts +29 -0
- package/docs/API/10-lang/10-either/10-some.ts +12 -0
- package/docs/API/10-lang/10-either/10-success.ts +12 -0
- package/docs/API/10-lang/10-either/10-toMaybe.ts +53 -0
- package/docs/API/10-lang/10-either/10-unwrapByInformation.ts +20 -0
- package/docs/API/10-lang/10-either/10-unwrapByInformationOrThrow.ts +19 -0
- package/docs/API/10-lang/10-either/10-unwrapLeft.ts +14 -0
- package/docs/API/10-lang/10-either/10-unwrapLeftOrThrow.ts +17 -0
- package/docs/API/10-lang/10-either/10-unwrapOr.ts +17 -0
- package/docs/API/10-lang/10-either/10-unwrapOtherwise.ts +20 -0
- package/docs/API/10-lang/10-either/10-unwrapRight.ts +14 -0
- package/docs/API/10-lang/10-either/10-unwrapRightOrThrow.ts +17 -0
- package/docs/API/10-lang/10-either/10-unwrapSelection.ts +26 -0
- package/docs/API/10-lang/10-either/10-unwrapSelectionOrThrow.ts +19 -0
- package/docs/API/10-lang/10-either/10-whenHasInformation.ts +36 -0
- package/docs/API/10-lang/10-either/10-whenHasInformationOtherwise.ts +29 -0
- package/docs/API/10-lang/10-either/10-whenIsLeft.ts +20 -0
- package/docs/API/10-lang/10-either/10-whenIsLeftOtherwise.ts +27 -0
- package/docs/API/10-lang/10-either/10-whenIsRight.ts +20 -0
- package/docs/API/10-lang/10-either/10-whenIsRightOtherwise.ts +26 -0
- package/docs/API/10-lang/10-either/10-whenIsSelected.ts +33 -0
- package/docs/API/10-lang/10-either/10-whenIsSelectedOtherwise.ts +35 -0
- package/docs/API/10-lang/10-either/index.llms.md +196 -0
- package/docs/API/10-lang/10-either/index.md +3 -0
- package/docs/API/10-lang/10-generator/10-asyncChunk.ts +55 -0
- package/docs/API/10-lang/10-generator/10-asyncConcat.ts +43 -0
- package/docs/API/10-lang/10-generator/10-asyncFilter.ts +41 -0
- package/docs/API/10-lang/10-generator/10-asyncFlat.ts +37 -0
- package/docs/API/10-lang/10-generator/10-asyncGroup.ts +65 -0
- package/docs/API/10-lang/10-generator/10-asyncLoop.ts +59 -0
- package/docs/API/10-lang/10-generator/10-asyncMap.ts +48 -0
- package/docs/API/10-lang/10-generator/10-asyncReduce.ts +63 -0
- package/docs/API/10-lang/10-generator/10-chunk.ts +44 -0
- package/docs/API/10-lang/10-generator/10-concat.ts +37 -0
- package/docs/API/10-lang/10-generator/10-createExternalAsyncGenerator.ts +29 -0
- package/docs/API/10-lang/10-generator/10-execute.ts +44 -0
- package/docs/API/10-lang/10-generator/10-filter.ts +35 -0
- package/docs/API/10-lang/10-generator/10-flat.ts +25 -0
- package/docs/API/10-lang/10-generator/10-group.ts +44 -0
- package/docs/API/10-lang/10-generator/10-groupOutput.ts +48 -0
- package/docs/API/10-lang/10-generator/10-loop.ts +55 -0
- package/docs/API/10-lang/10-generator/10-map.ts +35 -0
- package/docs/API/10-lang/10-generator/10-reduce.ts +51 -0
- package/docs/API/10-lang/10-generator/10-reduceFrom.ts +30 -0
- package/docs/API/10-lang/10-generator/index.llms.md +84 -0
- package/docs/API/10-lang/10-generator/index.md +3 -0
- package/docs/API/10-lang/10-number/10-betweenThan.ts +43 -0
- package/docs/API/10-lang/10-number/10-betweenThanOrEqual.ts +43 -0
- package/docs/API/10-lang/10-number/10-greaterThan.ts +35 -0
- package/docs/API/10-lang/10-number/10-greaterThanOrEqual.ts +35 -0
- package/docs/API/10-lang/10-number/10-isEven.ts +33 -0
- package/docs/API/10-lang/10-number/10-isInteger.ts +33 -0
- package/docs/API/10-lang/10-number/10-isMultipleOf.ts +35 -0
- package/docs/API/10-lang/10-number/10-isNegative.ts +33 -0
- package/docs/API/10-lang/10-number/10-isNotZero.ts +33 -0
- package/docs/API/10-lang/10-number/10-isOdd.ts +33 -0
- package/docs/API/10-lang/10-number/10-isPositive.ts +33 -0
- package/docs/API/10-lang/10-number/10-isSafe.ts +33 -0
- package/docs/API/10-lang/10-number/10-isStrictNegative.ts +34 -0
- package/docs/API/10-lang/10-number/10-isStrictPositive.ts +33 -0
- package/docs/API/10-lang/10-number/10-lessThan.ts +35 -0
- package/docs/API/10-lang/10-number/10-lessThanOrEqual.ts +35 -0
- package/docs/API/10-lang/10-number/10-max.ts +19 -0
- package/docs/API/10-lang/10-number/10-maxOf.ts +19 -0
- package/docs/API/10-lang/10-number/10-min.ts +19 -0
- package/docs/API/10-lang/10-number/10-minOf.ts +19 -0
- package/docs/API/10-lang/10-number/10-sort.ts +19 -0
- package/docs/API/10-lang/10-number/10-sum.ts +19 -0
- package/docs/API/10-lang/10-number/index.llms.md +92 -0
- package/docs/API/10-lang/10-number/index.md +3 -0
- package/docs/API/10-lang/10-object/10-assign.ts +41 -0
- package/docs/API/10-lang/10-object/10-countKeys.ts +15 -0
- package/docs/API/10-lang/10-object/10-deepDiscriminate.ts +63 -0
- package/docs/API/10-lang/10-object/10-deepOverride.ts +35 -0
- package/docs/API/10-lang/10-object/10-discriminate.ts +55 -0
- package/docs/API/10-lang/10-object/10-discriminateEntryKey.ts +43 -0
- package/docs/API/10-lang/10-object/10-discriminateEntryValue.ts +44 -0
- package/docs/API/10-lang/10-object/10-entries.ts +19 -0
- package/docs/API/10-lang/10-object/10-entry.ts +17 -0
- package/docs/API/10-lang/10-object/10-fromEntries.ts +23 -0
- package/docs/API/10-lang/10-object/10-getDeepProperty.ts +26 -0
- package/docs/API/10-lang/10-object/10-getProperty.ts +24 -0
- package/docs/API/10-lang/10-object/10-hasKeys.ts +43 -0
- package/docs/API/10-lang/10-object/10-isSimple.ts +38 -0
- package/docs/API/10-lang/10-object/10-keys.ts +19 -0
- package/docs/API/10-lang/10-object/10-omit.ts +39 -0
- package/docs/API/10-lang/10-object/10-override.ts +24 -0
- package/docs/API/10-lang/10-object/10-pick.ts +41 -0
- package/docs/API/10-lang/10-object/10-to.ts +40 -0
- package/docs/API/10-lang/10-object/10-transformProperties.ts +43 -0
- package/docs/API/10-lang/10-object/10-transformProperty.ts +39 -0
- package/docs/API/10-lang/10-object/10-values.ts +19 -0
- package/docs/API/10-lang/10-object/index.llms.md +92 -0
- package/docs/API/10-lang/10-object/index.md +3 -0
- package/docs/API/10-lang/10-path/10-computeRelative.ts +19 -0
- package/docs/API/10-lang/10-path/10-concatSegment.ts +28 -0
- package/docs/API/10-lang/10-path/10-create.ts +21 -0
- package/docs/API/10-lang/10-path/10-createAbsolute.ts +21 -0
- package/docs/API/10-lang/10-path/10-createAbsoluteOrThrow.ts +16 -0
- package/docs/API/10-lang/10-path/10-createMatcher.ts +50 -0
- package/docs/API/10-lang/10-path/10-createOrThrow.ts +16 -0
- package/docs/API/10-lang/10-path/10-createSegment.ts +26 -0
- package/docs/API/10-lang/10-path/10-createSegmentOrThrow.ts +16 -0
- package/docs/API/10-lang/10-path/10-declareAbsolutePath.ts +15 -0
- package/docs/API/10-lang/10-path/10-declarePath.ts +15 -0
- package/docs/API/10-lang/10-path/10-declareSegment.ts +15 -0
- package/docs/API/10-lang/10-path/10-getBaseName.ts +22 -0
- package/docs/API/10-lang/10-path/10-getExtensionName.ts +22 -0
- package/docs/API/10-lang/10-path/10-getParentFolderPath.ts +25 -0
- package/docs/API/10-lang/10-path/10-is.ts +46 -0
- package/docs/API/10-lang/10-path/10-isAbsolute.ts +46 -0
- package/docs/API/10-lang/10-path/10-isSegment.ts +42 -0
- package/docs/API/10-lang/10-path/10-normalize.ts +26 -0
- package/docs/API/10-lang/10-path/10-resolveFrom.ts +37 -0
- package/docs/API/10-lang/10-path/10-resolveRelative.ts +23 -0
- package/docs/API/10-lang/10-path/index.llms.md +88 -0
- package/docs/API/10-lang/10-path/index.md +3 -0
- package/docs/API/10-lang/10-pattern/10-exhaustive.ts +26 -0
- package/docs/API/10-lang/10-pattern/10-isMatch.ts +72 -0
- package/docs/API/10-lang/10-pattern/10-match.ts +133 -0
- package/docs/API/10-lang/10-pattern/10-matchWithEntity.ts +49 -0
- package/docs/API/10-lang/10-pattern/10-matchWithEntityOtherwise.ts +55 -0
- package/docs/API/10-lang/10-pattern/10-matchWithError.ts +45 -0
- package/docs/API/10-lang/10-pattern/10-matchWithErrorOtherwise.ts +48 -0
- package/docs/API/10-lang/10-pattern/10-matchWithFact.ts +49 -0
- package/docs/API/10-lang/10-pattern/10-matchWithFactOtherwise.ts +49 -0
- package/docs/API/10-lang/10-pattern/10-matchWithNumber.ts +33 -0
- package/docs/API/10-lang/10-pattern/10-matchWithNumberOtherwise.ts +37 -0
- package/docs/API/10-lang/10-pattern/10-matchWithString.ts +34 -0
- package/docs/API/10-lang/10-pattern/10-matchWithStringOtherwise.ts +35 -0
- package/docs/API/10-lang/10-pattern/10-matchWithTaggedObject.ts +43 -0
- package/docs/API/10-lang/10-pattern/10-matchWithTaggedObjectOtherwise.ts +49 -0
- package/docs/API/10-lang/10-pattern/10-otherwise.ts +28 -0
- package/docs/API/10-lang/10-pattern/10-union.ts +47 -0
- package/docs/API/10-lang/10-pattern/10-when.ts +46 -0
- package/docs/API/10-lang/10-pattern/10-whenNot.ts +123 -0
- package/docs/API/10-lang/10-pattern/index.llms.md +80 -0
- package/docs/API/10-lang/10-pattern/index.md +3 -0
- package/docs/API/10-lang/10-printer/10-bold.ts +12 -0
- package/docs/API/10-lang/10-printer/10-colorized.ts +18 -0
- package/docs/API/10-lang/10-printer/10-colorizedBold.ts +18 -0
- package/docs/API/10-lang/10-printer/10-indent.ts +20 -0
- package/docs/API/10-lang/10-printer/10-primitives.md +11 -0
- package/docs/API/10-lang/10-printer/10-render.ts +29 -0
- package/docs/API/10-lang/10-printer/10-renderLine.ts +12 -0
- package/docs/API/10-lang/10-printer/10-renderParagraph.ts +16 -0
- package/docs/API/10-lang/10-printer/index.llms.md +37 -0
- package/docs/API/10-lang/10-printer/index.md +3 -0
- package/docs/API/10-lang/10-string/10-at.ts +18 -0
- package/docs/API/10-lang/10-string/10-capitalize.ts +18 -0
- package/docs/API/10-lang/10-string/10-charAt.ts +18 -0
- package/docs/API/10-lang/10-string/10-concat.ts +18 -0
- package/docs/API/10-lang/10-string/10-endsWith.ts +33 -0
- package/docs/API/10-lang/10-string/10-extract.ts +18 -0
- package/docs/API/10-lang/10-string/10-extractAll.ts +18 -0
- package/docs/API/10-lang/10-string/10-first.ts +17 -0
- package/docs/API/10-lang/10-string/10-includes.ts +33 -0
- package/docs/API/10-lang/10-string/10-indexOf.ts +17 -0
- package/docs/API/10-lang/10-string/10-isComposedOf.ts +33 -0
- package/docs/API/10-lang/10-string/10-isEmail.ts +56 -0
- package/docs/API/10-lang/10-string/10-isIn.ts +34 -0
- package/docs/API/10-lang/10-string/10-isKeyof.ts +37 -0
- package/docs/API/10-lang/10-string/10-isNotEmpty.ts +32 -0
- package/docs/API/10-lang/10-string/10-isNumber.ts +32 -0
- package/docs/API/10-lang/10-string/10-isTrimmed.ts +33 -0
- package/docs/API/10-lang/10-string/10-isUrl.ts +31 -0
- package/docs/API/10-lang/10-string/10-isUuid.ts +31 -0
- package/docs/API/10-lang/10-string/10-join.ts +18 -0
- package/docs/API/10-lang/10-string/10-last.ts +17 -0
- package/docs/API/10-lang/10-string/10-lastIndexOf.ts +17 -0
- package/docs/API/10-lang/10-string/10-length.ts +18 -0
- package/docs/API/10-lang/10-string/10-lengthEqual.ts +33 -0
- package/docs/API/10-lang/10-string/10-maxCharacters.ts +33 -0
- package/docs/API/10-lang/10-string/10-minCharacters.ts +33 -0
- package/docs/API/10-lang/10-string/10-normalize.ts +17 -0
- package/docs/API/10-lang/10-string/10-padEnd.ts +17 -0
- package/docs/API/10-lang/10-string/10-padStart.ts +17 -0
- package/docs/API/10-lang/10-string/10-pop.ts +17 -0
- package/docs/API/10-lang/10-string/10-prepend.ts +17 -0
- package/docs/API/10-lang/10-string/10-repeat.ts +17 -0
- package/docs/API/10-lang/10-string/10-replace.ts +18 -0
- package/docs/API/10-lang/10-string/10-replaceAll.ts +17 -0
- package/docs/API/10-lang/10-string/10-search.ts +17 -0
- package/docs/API/10-lang/10-string/10-shift.ts +17 -0
- package/docs/API/10-lang/10-string/10-slice.ts +17 -0
- package/docs/API/10-lang/10-string/10-sort.ts +19 -0
- package/docs/API/10-lang/10-string/10-sortCompare.ts +17 -0
- package/docs/API/10-lang/10-string/10-split.ts +34 -0
- package/docs/API/10-lang/10-string/10-startsWith.ts +33 -0
- package/docs/API/10-lang/10-string/10-stringify.ts +11 -0
- package/docs/API/10-lang/10-string/10-substring.ts +17 -0
- package/docs/API/10-lang/10-string/10-test.ts +17 -0
- package/docs/API/10-lang/10-string/10-to.ts +11 -0
- package/docs/API/10-lang/10-string/10-toLowerCase.ts +17 -0
- package/docs/API/10-lang/10-string/10-toUpperCase.ts +17 -0
- package/docs/API/10-lang/10-string/10-trim.ts +17 -0
- package/docs/API/10-lang/10-string/10-trimEnd.ts +17 -0
- package/docs/API/10-lang/10-string/10-trimStart.ts +17 -0
- package/docs/API/10-lang/10-string/10-uncapitalize.ts +17 -0
- package/docs/API/10-lang/10-string/index.llms.md +208 -0
- package/docs/API/10-lang/10-string/index.md +3 -0
- package/docs/API/10-lang/10-tuple/10-from.ts +50 -0
- package/docs/API/10-lang/10-tuple/10-map.ts +37 -0
- package/docs/API/10-lang/10-tuple/index.llms.md +12 -0
- package/docs/API/10-lang/10-tuple/index.md +3 -0
- package/docs/API/10-lang/index.md +3 -0
- package/docs/API/40-json-web-token/10-tokenHandler/10-createTokenHandler.ts +160 -0
- package/docs/API/40-json-web-token/10-tokenHandler/index.llms.md +8 -0
- package/docs/API/40-json-web-token/10-tokenHandler/index.md +3 -0
- package/docs/API/40-json-web-token/20-signer/10-createHS256.ts +24 -0
- package/docs/API/40-json-web-token/20-signer/10-createHS512.ts +24 -0
- package/docs/API/40-json-web-token/20-signer/10-createRS256.ts +28 -0
- package/docs/API/40-json-web-token/20-signer/10-createRS512.ts +28 -0
- package/docs/API/40-json-web-token/20-signer/10-factory.ts +29 -0
- package/docs/API/40-json-web-token/20-signer/index.llms.md +24 -0
- package/docs/API/40-json-web-token/20-signer/index.md +3 -0
- package/docs/API/40-json-web-token/30-cipher/10-createRSAOAEP.ts +26 -0
- package/docs/API/40-json-web-token/30-cipher/10-createRSAOAEP256.ts +26 -0
- package/docs/API/40-json-web-token/30-cipher/10-factory.ts +29 -0
- package/docs/API/40-json-web-token/30-cipher/index.llms.md +16 -0
- package/docs/API/40-json-web-token/30-cipher/index.md +3 -0
- package/docs/API/40-json-web-token/40-utils/10-AES_GCM.decrypt.ts +17 -0
- package/docs/API/40-json-web-token/40-utils/10-AES_GCM.encrypt.ts +11 -0
- package/docs/API/40-json-web-token/40-utils/10-AES_GCM.generateInitializationVector.ts +9 -0
- package/docs/API/40-json-web-token/40-utils/10-HMAC.sign.ts +13 -0
- package/docs/API/40-json-web-token/40-utils/10-HMAC.verify.ts +11 -0
- package/docs/API/40-json-web-token/40-utils/10-RSA.sign.ts +14 -0
- package/docs/API/40-json-web-token/40-utils/10-RSA.verify.ts +13 -0
- package/docs/API/40-json-web-token/40-utils/10-RSA_OAEP.decrypt.ts +13 -0
- package/docs/API/40-json-web-token/40-utils/10-RSA_OAEP.encrypt.ts +10 -0
- package/docs/API/40-json-web-token/40-utils/10-decodeBase64.ts +9 -0
- package/docs/API/40-json-web-token/40-utils/10-decodeBase64Url.ts +9 -0
- package/docs/API/40-json-web-token/40-utils/10-decodeText.ts +9 -0
- package/docs/API/40-json-web-token/40-utils/10-encodeBase64.ts +9 -0
- package/docs/API/40-json-web-token/40-utils/10-encodeBase64Url.ts +9 -0
- package/docs/API/40-json-web-token/40-utils/10-encodeText.ts +9 -0
- package/docs/API/40-json-web-token/40-utils/10-isBase64Url.ts +11 -0
- package/docs/API/40-json-web-token/40-utils/10-jsonParse.ts +11 -0
- package/docs/API/40-json-web-token/40-utils/10-pemToBinary.ts +11 -0
- package/docs/API/40-json-web-token/40-utils/index.llms.md +76 -0
- package/docs/API/40-json-web-token/40-utils/index.md +3 -0
- package/docs/API/40-json-web-token/index.md +3 -0
- package/docs/API/50-form/10-vue/10-construction/10-createForm.ts +48 -0
- package/docs/API/50-form/10-vue/10-construction/10-createFormField.ts +66 -0
- package/docs/API/50-form/10-vue/10-construction/10-createGridTemplates.ts +39 -0
- package/docs/API/50-form/10-vue/10-construction/10-createInput.ts +46 -0
- package/docs/API/50-form/10-vue/10-construction/10-createTemplate.ts +36 -0
- package/docs/API/50-form/10-vue/10-construction/fixtures/AddressInput.vue +19 -0
- package/docs/API/50-form/10-vue/10-construction/index.llms.md +24 -0
- package/docs/API/50-form/10-vue/10-construction/index.md +3 -0
- package/docs/API/50-form/10-vue/20-layouts/10-useCheckLayout.ts +40 -0
- package/docs/API/50-form/10-vue/20-layouts/10-useDisabledLayout.ts +34 -0
- package/docs/API/50-form/10-vue/20-layouts/10-useMultiLayout.ts +32 -0
- package/docs/API/50-form/10-vue/20-layouts/10-useRepeatLayout.ts +34 -0
- package/docs/API/50-form/10-vue/20-layouts/10-useSectionLayout.ts +20 -0
- package/docs/API/50-form/10-vue/20-layouts/10-useSlotLayout.ts +37 -0
- package/docs/API/50-form/10-vue/20-layouts/10-useStepLayout.ts +31 -0
- package/docs/API/50-form/10-vue/20-layouts/10-useUnionLayout.ts +48 -0
- package/docs/API/50-form/10-vue/20-layouts/index.llms.md +36 -0
- package/docs/API/50-form/10-vue/20-layouts/index.md +3 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useCheckbox.ts +13 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useCheckboxPolicy.ts +18 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useDateInput.ts +20 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useDualRangeInput.ts +27 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useFileInput.ts +23 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useNumberInput.ts +18 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useRadioGroup.ts +31 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useRangeDateInput.ts +23 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useRangeInput.ts +18 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useRangeTimeInput.ts +23 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useSelectInput.ts +31 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useTextInput.ts +14 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useTextareaInput.ts +14 -0
- package/docs/API/50-form/10-vue/30-designSystem/10-useTimeInput.ts +20 -0
- package/docs/API/50-form/10-vue/30-designSystem/20-components.md +11 -0
- package/docs/API/50-form/10-vue/30-designSystem/index.llms.md +65 -0
- package/docs/API/50-form/10-vue/30-designSystem/index.md +3 -0
- package/docs/API/50-form/10-vue/fixtures/templates.ts +20 -0
- package/docs/API/50-form/10-vue/index.md +3 -0
- package/docs/API/50-form/index.md +3 -0
- package/docs/API/60-playwright/10-construction/10-createComponent.ts +47 -0
- package/docs/API/60-playwright/10-construction/10-createComponentInteraction.ts +28 -0
- package/docs/API/60-playwright/10-construction/10-createPage.ts +34 -0
- package/docs/API/60-playwright/10-construction/10-createStepWrapper.ts +23 -0
- package/docs/API/60-playwright/10-construction/10-createWebsite.ts +57 -0
- package/docs/API/60-playwright/10-construction/10-initClient.ts +38 -0
- package/docs/API/60-playwright/10-construction/index.llms.md +28 -0
- package/docs/API/60-playwright/10-construction/index.md +3 -0
- package/docs/API/60-playwright/20-actions/10-check.ts +9 -0
- package/docs/API/60-playwright/20-actions/10-clear.ts +9 -0
- package/docs/API/60-playwright/20-actions/10-click.ts +9 -0
- package/docs/API/60-playwright/20-actions/10-dragTo.ts +10 -0
- package/docs/API/60-playwright/20-actions/10-extractContent.ts +10 -0
- package/docs/API/60-playwright/20-actions/10-fill.ts +9 -0
- package/docs/API/60-playwright/20-actions/10-focus.ts +9 -0
- package/docs/API/60-playwright/20-actions/10-forceClick.ts +10 -0
- package/docs/API/60-playwright/20-actions/10-hover.ts +9 -0
- package/docs/API/60-playwright/20-actions/10-press.ts +9 -0
- package/docs/API/60-playwright/20-actions/10-selectOption.ts +10 -0
- package/docs/API/60-playwright/20-actions/10-type.ts +10 -0
- package/docs/API/60-playwright/20-actions/10-uncheck.ts +9 -0
- package/docs/API/60-playwright/20-actions/10-withStep.ts +10 -0
- package/docs/API/60-playwright/20-actions/index.llms.md +60 -0
- package/docs/API/60-playwright/20-actions/index.md +3 -0
- package/docs/API/60-playwright/30-assertions/10-toBeBusy.ts +10 -0
- package/docs/API/60-playwright/30-assertions/10-toBeChecked.ts +9 -0
- package/docs/API/60-playwright/30-assertions/10-toBeDisabled.ts +9 -0
- package/docs/API/60-playwright/30-assertions/10-toBeEnabled.ts +9 -0
- package/docs/API/60-playwright/30-assertions/10-toBeHidden.ts +9 -0
- package/docs/API/60-playwright/30-assertions/10-toBeNotBusy.ts +10 -0
- package/docs/API/60-playwright/30-assertions/10-toBeVisible.ts +10 -0
- package/docs/API/60-playwright/30-assertions/10-toContainText.ts +9 -0
- package/docs/API/60-playwright/30-assertions/10-toHaveAttribute.ts +12 -0
- package/docs/API/60-playwright/30-assertions/10-toHaveClass.ts +9 -0
- package/docs/API/60-playwright/30-assertions/10-toHaveNoText.ts +10 -0
- package/docs/API/60-playwright/30-assertions/10-toHaveQuantity.ts +20 -0
- package/docs/API/60-playwright/30-assertions/10-toHaveText.ts +9 -0
- package/docs/API/60-playwright/30-assertions/10-toHaveValue.ts +9 -0
- package/docs/API/60-playwright/30-assertions/10-withStep.ts +10 -0
- package/docs/API/60-playwright/30-assertions/index.llms.md +64 -0
- package/docs/API/60-playwright/30-assertions/index.md +3 -0
- package/docs/API/60-playwright/fixtures/component.ts +44 -0
- package/docs/API/60-playwright/index.md +3 -0
- package/docs/API/index.md +3 -0
- package/docs/API.llms.md +115 -0
- package/docs/concepts/01-fundamental/01-constraint/01-use.ts +22 -0
- package/docs/concepts/01-fundamental/01-constraint/10-built-in-constraint.ts +37 -0
- package/docs/concepts/01-fundamental/01-constraint/20-manipulation.ts +41 -0
- package/docs/concepts/01-fundamental/01-constraint/30-cast.ts +66 -0
- package/docs/concepts/01-fundamental/01-constraint/40-custom-constraint.ts +45 -0
- package/docs/concepts/01-fundamental/01-constraint/index.md +3 -0
- package/docs/concepts/01-fundamental/02-currying/01-use.ts +38 -0
- package/docs/concepts/01-fundamental/02-currying/10-built-in-function.ts +190 -0
- package/docs/concepts/01-fundamental/02-currying/20-inner-pipe.ts +48 -0
- package/docs/concepts/01-fundamental/02-currying/30-async-pipe.ts +51 -0
- package/docs/concepts/01-fundamental/02-currying/index.md +3 -0
- package/docs/concepts/01-fundamental/03-either/01-use.ts +21 -0
- package/docs/concepts/01-fundamental/03-either/10-discrimination.ts +90 -0
- package/docs/concepts/01-fundamental/03-either/20-exhaustive-handling.ts +90 -0
- package/docs/concepts/01-fundamental/03-either/30-composition.ts +80 -0
- package/docs/concepts/01-fundamental/03-either/40-result-adaptation.ts +46 -0
- package/docs/concepts/01-fundamental/03-either/50-external-results.ts +72 -0
- package/docs/concepts/01-fundamental/03-either/60-contextual-state.ts +40 -0
- package/docs/concepts/01-fundamental/03-either/index.md +3 -0
- package/docs/concepts/01-fundamental/04-data-structure/01-use.ts +22 -0
- package/docs/concepts/01-fundamental/04-data-structure/10-structure.ts +244 -0
- package/docs/concepts/01-fundamental/04-data-structure/20-constraint.ts +86 -0
- package/docs/concepts/01-fundamental/04-data-structure/30-validation.ts +104 -0
- package/docs/concepts/01-fundamental/04-data-structure/40-codecs.ts +162 -0
- package/docs/concepts/01-fundamental/04-data-structure/50-recursive.ts +57 -0
- package/docs/concepts/01-fundamental/04-data-structure/60-interpret-error.ts +123 -0
- package/docs/concepts/01-fundamental/04-data-structure/index.md +3 -0
- package/docs/concepts/01-fundamental/05-chrono/01-use.ts +14 -0
- package/docs/concepts/01-fundamental/05-chrono/10-creation.ts +85 -0
- package/docs/concepts/01-fundamental/05-chrono/20-manipulation.ts +110 -0
- package/docs/concepts/01-fundamental/05-chrono/30-serialized.ts +89 -0
- package/docs/concepts/01-fundamental/05-chrono/40-timezone.ts +85 -0
- package/docs/concepts/01-fundamental/05-chrono/index.md +3 -0
- package/docs/concepts/01-fundamental/06-modeling/10-new-type.ts +42 -0
- package/docs/concepts/01-fundamental/06-modeling/20-entity.ts +191 -0
- package/docs/concepts/01-fundamental/06-modeling/30-tagged-object.ts +204 -0
- package/docs/concepts/01-fundamental/06-modeling/40-entity-lifecycle.ts +272 -0
- package/docs/concepts/01-fundamental/06-modeling/50-evidence.ts +94 -0
- package/docs/concepts/01-fundamental/06-modeling/60-signed-function.ts +26 -0
- package/docs/concepts/01-fundamental/06-modeling/index.md +3 -0
- package/docs/concepts/01-fundamental/07-discrimination/10-entity.ts +136 -0
- package/docs/concepts/01-fundamental/07-discrimination/20-fact.ts +158 -0
- package/docs/concepts/01-fundamental/07-discrimination/30-tagged-object.ts +137 -0
- package/docs/concepts/01-fundamental/07-discrimination/40-error.ts +73 -0
- package/docs/concepts/01-fundamental/07-discrimination/50-literal.ts +106 -0
- package/docs/concepts/01-fundamental/07-discrimination/60-shape.ts +160 -0
- package/docs/concepts/01-fundamental/07-discrimination/70-predicate.ts +101 -0
- package/docs/concepts/01-fundamental/07-discrimination/index.md +3 -0
- package/docs/concepts/01-fundamental/08-kind/01-identity.md +7 -0
- package/docs/concepts/01-fundamental/08-kind/20-metadata.md +11 -0
- package/docs/concepts/01-fundamental/08-kind/30-transport.md +11 -0
- package/docs/concepts/01-fundamental/08-kind/index.md +3 -0
- package/docs/concepts/01-fundamental/index.md +1 -0
- package/docs/concepts/02-server/10-file/10-manipulation.ts +52 -0
- package/docs/concepts/02-server/10-file/20-path.ts +72 -0
- package/docs/concepts/02-server/10-file/index.md +3 -0
- package/docs/concepts/02-server/20-http/10-init.ts +23 -0
- package/docs/concepts/02-server/20-http/20-route.ts +182 -0
- package/docs/concepts/02-server/20-http/30-routine.ts +188 -0
- package/docs/concepts/02-server/20-http/40-jwt.ts +149 -0
- package/docs/concepts/02-server/20-http/50-open-api.ts +44 -0
- package/docs/concepts/02-server/20-http/index.md +3 -0
- package/docs/concepts/02-server/30-environment/10-platform.ts +47 -0
- package/docs/concepts/02-server/30-environment/20-variable.ts +47 -0
- package/docs/concepts/02-server/30-environment/index.md +3 -0
- package/docs/concepts/02-server/40-command/10-use.ts +112 -0
- package/docs/concepts/02-server/40-command/20-sub-command.ts +48 -0
- package/docs/concepts/02-server/40-command/index.md +3 -0
- package/docs/concepts/02-server/index.md +1 -0
- package/docs/concepts/03-client/10-http/10-init.ts +52 -0
- package/docs/concepts/03-client/10-http/20-request.ts +254 -0
- package/docs/concepts/03-client/10-http/30-hook.ts +139 -0
- package/docs/concepts/03-client/10-http/index.md +3 -0
- package/docs/concepts/03-client/20-form/10-init.ts +98 -0
- package/docs/concepts/03-client/20-form/20-input.ts +103 -0
- package/docs/concepts/03-client/20-form/30-layout.ts +155 -0
- package/docs/concepts/03-client/20-form/40-template.ts +94 -0
- package/docs/concepts/03-client/20-form/50-integration.md +11 -0
- package/docs/concepts/03-client/20-form/examples/postModeration/ThePage.vue +32 -0
- package/docs/concepts/03-client/20-form/examples/postModeration/usePostModeration.ts +80 -0
- package/docs/concepts/03-client/20-form/index.md +3 -0
- package/docs/concepts/03-client/index.md +1 -0
- package/docs/concepts/04-tests/01-unit/10-either.ts +136 -0
- package/docs/concepts/04-tests/01-unit/20-server-mocking.ts +53 -0
- package/docs/concepts/04-tests/01-unit/index.md +3 -0
- package/docs/concepts/04-tests/02-e2e/10-init.ts +80 -0
- package/docs/concepts/04-tests/02-e2e/20-architecture.ts +76 -0
- package/docs/concepts/04-tests/02-e2e/30-testing.ts +90 -0
- package/docs/concepts/04-tests/02-e2e/index.md +3 -0
- package/docs/concepts/04-tests/index.md +1 -0
- package/docs/concepts/05-type-driven-design/01-architecture/10-boundaries.md +44 -0
- package/docs/concepts/05-type-driven-design/01-architecture/index.md +3 -0
- package/docs/concepts/05-type-driven-design/02-domains/10-entities.md +50 -0
- package/docs/concepts/05-type-driven-design/02-domains/20-aggregates.md +65 -0
- package/docs/concepts/05-type-driven-design/02-domains/30-repositories.md +35 -0
- package/docs/concepts/05-type-driven-design/02-domains/40-refinements.md +30 -0
- package/docs/concepts/05-type-driven-design/02-domains/index.md +3 -0
- package/docs/concepts/05-type-driven-design/03-applications/10-use-case.md +62 -0
- package/docs/concepts/05-type-driven-design/03-applications/20-ports.md +49 -0
- package/docs/concepts/05-type-driven-design/03-applications/index.md +3 -0
- package/docs/concepts/05-type-driven-design/04-infrastructure/10-implementation.md +47 -0
- package/docs/concepts/05-type-driven-design/04-infrastructure/index.md +3 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/index.ts +2 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/ports/book.ts +10 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/ports/client.ts +10 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/ports/email.ts +7 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/ports/index.ts +4 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/ports/waitingListEntry.ts +17 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/useCases/clientGiveBackBook.ts +45 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/useCases/clientRentBook.ts +31 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/useCases/createBook.ts +32 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/useCases/index.ts +4 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/applications/useCases/withdrawBook.ts +32 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/aggregates/clientGiveBackBook.ts +74 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/aggregates/clientRentBook.ts +42 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/aggregates/createBook.ts +33 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/aggregates/index.ts +4 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/aggregates/withdrawBook.ts +37 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/book/facts/create.ts +33 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/book/facts/index.ts +5 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/book/facts/rental.ts +31 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/book/facts/reserve.ts +37 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/book/facts/returnBook.ts +32 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/book/facts/withdraw.ts +21 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/book/index.ts +118 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/client/facts/giveBackBook.ts +35 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/client/facts/index.ts +2 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/client/facts/rentBook.ts +32 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/client/index.ts +59 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/index.ts +3 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/waitingListEntry/facts/cancel.ts +26 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/waitingListEntry/facts/create.ts +33 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/waitingListEntry/facts/index.ts +3 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/waitingListEntry/facts/prepare.ts +23 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/entities/waitingListEntry/index.ts +79 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/index.ts +4 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/refinements/index.ts +1 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/refinements/refineLinkBetweenClientAndBorrowedBook.ts +34 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/repositories/book.ts +16 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/repositories/client.ts +7 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/repositories/email.ts +12 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/repositories/index.ts +4 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/domains/repositories/waitingListEntry.ts +19 -0
- package/docs/concepts/05-type-driven-design/fixtures/business/index.ts +2 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/command/clientRentBook.ts +62 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/command/index.ts +11 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/http/checkers/bookExist.ts +19 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/http/checkers/clientExist.ts +19 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/http/checkers/index.ts +2 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/http/main.ts +19 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/http/routes/clientGiveBackBook.ts +46 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/http/routes/clientRentBook.ts +45 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/http/routes/index.ts +2 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/ports/book.ts +25 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/ports/client.ts +7 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/ports/email.ts +10 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/ports/index.ts +4 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/ports/waitingListEntry.ts +17 -0
- package/docs/concepts/05-type-driven-design/fixtures/infrastructure/useCases/index.ts +13 -0
- package/docs/concepts/05-type-driven-design/index.md +3 -0
- package/docs/concepts.llms.md +521 -0
- package/instructions/coding-conventions.md +8 -0
- package/package.json +99 -3
- package/skills/command/SKILL.md +63 -0
- package/skills/command/references/examples/cli.ts +22 -0
- package/skills/command/references/examples/options-only.ts +27 -0
- package/skills/command/references/examples/preview-command.ts +57 -0
- package/skills/command/references/execution.md +31 -0
- package/skills/command/references/inputs.md +27 -0
- package/skills/fundamental/SKILL.md +80 -0
- package/skills/fundamental/references/composition.md +35 -0
- package/skills/fundamental/references/constraints-and-validation.md +61 -0
- package/skills/fundamental/references/examples/async-composition.ts +15 -0
- package/skills/fundamental/references/examples/cast.ts +18 -0
- package/skills/fundamental/references/examples/composition.ts +40 -0
- package/skills/fundamental/references/examples/environment-initialization.ts +19 -0
- package/skills/fundamental/references/examples/error-propagation.ts +24 -0
- package/skills/fundamental/references/examples/generic-inference.ts +31 -0
- package/skills/fundamental/references/examples/guaranteed-array-access.ts +31 -0
- package/skills/fundamental/references/examples/independent-inputs.ts +18 -0
- package/skills/fundamental/references/examples/infer.ts +21 -0
- package/skills/fundamental/references/examples/input-validation.ts +37 -0
- package/skills/fundamental/references/examples/safe-declarations.ts +25 -0
- package/skills/fundamental/references/results-and-errors.md +59 -0
- package/skills/http-client/SKILL.md +50 -0
- package/skills/http-client/references/configuration.md +11 -0
- package/skills/http-client/references/examples/client-expectations.ts +85 -0
- package/skills/http-client/references/examples/client-streams.ts +74 -0
- package/skills/http-client/references/examples/external-client.ts +78 -0
- package/skills/http-client/references/hooks.md +7 -0
- package/skills/http-client/references/responses.md +39 -0
- package/skills/http-client/references/streams.md +10 -0
- package/skills/http-server/SKILL.md +61 -0
- package/skills/http-server/references/examples/authentication.ts +42 -0
- package/skills/http-server/references/examples/contracts.ts +19 -0
- package/skills/http-server/references/examples/inferred-client.ts +54 -0
- package/skills/http-server/references/examples/initialize.ts +29 -0
- package/skills/http-server/references/examples/minimal-route.ts +17 -0
- package/skills/http-server/references/examples/protected-route.ts +29 -0
- package/skills/http-server/references/examples/rename-user-route.ts +52 -0
- package/skills/http-server/references/examples/user-checker.ts +26 -0
- package/skills/http-server/references/examples/user-route.ts +45 -0
- package/skills/http-server/references/initialization.md +33 -0
- package/skills/http-server/references/reusable-flows.md +40 -0
- package/skills/http-server/references/routes-and-floor.md +46 -0
- package/skills/modeling/SKILL.md +76 -0
- package/skills/modeling/references/domain.md +33 -0
- package/skills/modeling/references/orchestration.md +36 -0
- package/skills/server/SKILL.md +55 -0
- package/skills/server/references/environment.md +30 -0
- package/skills/server/references/examples/environment.ts +41 -0
- package/skills/server/references/examples/file-structure.ts +26 -0
- package/skills/server/references/examples/files.ts +52 -0
- package/skills/server/references/files.md +38 -0
- package/skills/server/references/structures.md +15 -0
- package/skills/test/SKILL.md +70 -0
- package/skills/test/references/examples/results.ts +95 -0
- package/skills/test/references/examples/server.ts +59 -0
- package/skills/test/references/results.md +21 -0
- package/skills/test/references/server.md +17 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.chunk
|
|
3
|
+
*
|
|
4
|
+
* Regrouper les valeurs d’un itérable en sous-itérables de taille bornée.
|
|
5
|
+
*/
|
|
6
|
+
import * as DArray from "@duplojs/lang/array";
|
|
7
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
8
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
9
|
+
|
|
10
|
+
const input: number[] = [1, 2, 3, 4, 5];
|
|
11
|
+
|
|
12
|
+
// Appel classique : les valeurs sont produites dans des groupes d’au plus deux éléments.
|
|
13
|
+
const result = DGenerator.chunk(input, 2);
|
|
14
|
+
|
|
15
|
+
// La sortie est un générateur qui produit [[1, 2], [3, 4], [5]].
|
|
16
|
+
type _CheckResult = DCommon.ExpectType<
|
|
17
|
+
typeof result,
|
|
18
|
+
Generator<
|
|
19
|
+
& readonly number[]
|
|
20
|
+
& DArray.MinElements<1>
|
|
21
|
+
& DArray.MaxElements<2>,
|
|
22
|
+
unknown,
|
|
23
|
+
unknown
|
|
24
|
+
>,
|
|
25
|
+
"strict"
|
|
26
|
+
>;
|
|
27
|
+
|
|
28
|
+
// Appel curifié : la taille est configurée dans l’étape du pipe.
|
|
29
|
+
const piped = DCommon.pipe(
|
|
30
|
+
input,
|
|
31
|
+
DGenerator.chunk(3),
|
|
32
|
+
DArray.from,
|
|
33
|
+
);
|
|
34
|
+
|
|
35
|
+
// La sortie vaut [[1, 2, 3], [4, 5]].
|
|
36
|
+
type _CheckPiped = DCommon.ExpectType<
|
|
37
|
+
typeof piped,
|
|
38
|
+
readonly (
|
|
39
|
+
& readonly number[]
|
|
40
|
+
& DArray.MinElements<1>
|
|
41
|
+
& DArray.MaxElements<3>
|
|
42
|
+
)[],
|
|
43
|
+
"strict"
|
|
44
|
+
>;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.concat
|
|
3
|
+
*
|
|
4
|
+
* Enchaîner plusieurs itérables dans un générateur synchrone.
|
|
5
|
+
*/
|
|
6
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DArray from "@duplojs/lang/array";
|
|
8
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
9
|
+
|
|
10
|
+
// Appel classique : les valeurs sont produites dans l’ordre [1, 2, 3, 4].
|
|
11
|
+
const result = DGenerator.concat(
|
|
12
|
+
[1, 2],
|
|
13
|
+
[3],
|
|
14
|
+
[4],
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
type _CheckResult = DCommon.ExpectType<
|
|
18
|
+
typeof result,
|
|
19
|
+
Generator<1 | 2 | 3 | 4, unknown, unknown>,
|
|
20
|
+
"strict"
|
|
21
|
+
>;
|
|
22
|
+
|
|
23
|
+
const tail: Iterable<number> = [3, 4];
|
|
24
|
+
|
|
25
|
+
// Appel curifié : les itérables ajoutés sont configurés dans l’étape du pipe.
|
|
26
|
+
const piped = DCommon.pipe(
|
|
27
|
+
[1, 2],
|
|
28
|
+
DGenerator.concat(tail),
|
|
29
|
+
DArray.from,
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
// La sortie vaut [1, 2, 3, 4].
|
|
33
|
+
type _CheckPiped = DCommon.ExpectType<
|
|
34
|
+
typeof piped,
|
|
35
|
+
readonly number[],
|
|
36
|
+
"strict"
|
|
37
|
+
>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.createExternalAsyncGenerator
|
|
3
|
+
*
|
|
4
|
+
* Créer un générateur asynchrone dont la prochaine valeur ou la fin sont déclenchées de l’extérieur.
|
|
5
|
+
*/
|
|
6
|
+
import type * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
8
|
+
|
|
9
|
+
const external = DGenerator.createExternalAsyncGenerator<number>();
|
|
10
|
+
|
|
11
|
+
// L’itérateur attend un appel à `next` et produira ensuite la valeur fournie.
|
|
12
|
+
const nextResult = external.next(12);
|
|
13
|
+
|
|
14
|
+
type _CheckNext = DCommon.ExpectType<typeof nextResult, undefined, "strict">;
|
|
15
|
+
|
|
16
|
+
// `exit` termine l’itérateur sans produire de valeur.
|
|
17
|
+
const exitResult = external.exit();
|
|
18
|
+
|
|
19
|
+
type _CheckExit = DCommon.ExpectType<typeof exitResult, undefined, "strict">;
|
|
20
|
+
|
|
21
|
+
type _CheckExternal = DCommon.ExpectType<
|
|
22
|
+
typeof external,
|
|
23
|
+
{
|
|
24
|
+
asyncGenerator: AsyncGenerator<number, void, unknown>;
|
|
25
|
+
next(item: number): undefined;
|
|
26
|
+
exit(): undefined;
|
|
27
|
+
},
|
|
28
|
+
"strict"
|
|
29
|
+
>;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.execute
|
|
3
|
+
*
|
|
4
|
+
* Consommer une génératrice jusqu’à sa fin, en retournant une promesse pour les génératrices asynchrones.
|
|
5
|
+
*/
|
|
6
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
8
|
+
|
|
9
|
+
// Appel synchrone : `loop` rappelle sa callback comme une boucle `while`,
|
|
10
|
+
// puis `map` traite chaque valeur avant qu’`execute` ne consomme la génératrice.
|
|
11
|
+
const result = DCommon.pipe(
|
|
12
|
+
DGenerator.loop(({ count, next, exit }: DGenerator.LoopParams<number>) => {
|
|
13
|
+
if (count === 3) {
|
|
14
|
+
return exit();
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
return next(count);
|
|
18
|
+
}),
|
|
19
|
+
DGenerator.map(DCommon.forwardLog),
|
|
20
|
+
DGenerator.execute,
|
|
21
|
+
);
|
|
22
|
+
|
|
23
|
+
// La génératrice est consommée jusqu’à sa fin et chaque valeur est transmise à `forwardLog`.
|
|
24
|
+
type _CheckResult = DCommon.ExpectType<typeof result, void, "strict">;
|
|
25
|
+
|
|
26
|
+
// Appel asynchrone : `asyncLoop` produit une génératrice asynchrone,
|
|
27
|
+
// et `execute` retourne une promesse résolue après le traitement de chaque valeur.
|
|
28
|
+
const asyncResult = DCommon.pipe(
|
|
29
|
+
DGenerator.asyncLoop(async({ count, next, exit }: DGenerator.LoopParams<number>) => {
|
|
30
|
+
await DCommon.timeout();
|
|
31
|
+
|
|
32
|
+
return count === 3
|
|
33
|
+
? exit()
|
|
34
|
+
: next(count);
|
|
35
|
+
}),
|
|
36
|
+
DGenerator.asyncMap(DCommon.forwardLog),
|
|
37
|
+
DGenerator.execute,
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
type _CheckAsyncResult = DCommon.ExpectType<
|
|
41
|
+
typeof asyncResult,
|
|
42
|
+
Promise<void>,
|
|
43
|
+
"strict"
|
|
44
|
+
>;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.filter
|
|
3
|
+
*
|
|
4
|
+
* Conserver dans un générateur les valeurs acceptées par un prédicat.
|
|
5
|
+
*/
|
|
6
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DArray from "@duplojs/lang/array";
|
|
8
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
9
|
+
import * as DNumber from "@duplojs/lang/number";
|
|
10
|
+
|
|
11
|
+
const input: number[] = [1, 2, 3, 4];
|
|
12
|
+
|
|
13
|
+
// Appel classique : seuls les nombres supérieurs à deux sont produits.
|
|
14
|
+
const result = DGenerator.filter(input, DNumber.greaterThan(2));
|
|
15
|
+
|
|
16
|
+
// La sortie est un générateur qui produit [3, 4] et conserve l’affinement du prédicat.
|
|
17
|
+
type _CheckResult = DCommon.ExpectType<
|
|
18
|
+
typeof result,
|
|
19
|
+
Generator<number & DNumber.GreaterThan<2>, unknown, unknown>,
|
|
20
|
+
"strict"
|
|
21
|
+
>;
|
|
22
|
+
|
|
23
|
+
// Appel curifié : le prédicat est configuré dans l’étape du pipe.
|
|
24
|
+
const piped = DCommon.pipe(
|
|
25
|
+
input,
|
|
26
|
+
DGenerator.filter(DNumber.isEven),
|
|
27
|
+
DArray.from,
|
|
28
|
+
);
|
|
29
|
+
|
|
30
|
+
// La sortie vaut [2, 4].
|
|
31
|
+
type _CheckPiped = DCommon.ExpectType<
|
|
32
|
+
typeof piped,
|
|
33
|
+
readonly (number & DNumber.Even)[],
|
|
34
|
+
"strict"
|
|
35
|
+
>;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.flat
|
|
3
|
+
*
|
|
4
|
+
* Aplatir récursivement les valeurs itérables jusqu’à une profondeur donnée.
|
|
5
|
+
*/
|
|
6
|
+
import type * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
8
|
+
|
|
9
|
+
// Profondeur par défaut : un seul niveau est aplati et la sortie contient [1, 2, 3].
|
|
10
|
+
const result = DGenerator.flat([[1, 2], [3]]);
|
|
11
|
+
|
|
12
|
+
type _CheckResult = DCommon.ExpectType<
|
|
13
|
+
typeof result,
|
|
14
|
+
Generator<1 | 2 | 3, void, unknown>,
|
|
15
|
+
"strict"
|
|
16
|
+
>;
|
|
17
|
+
|
|
18
|
+
// Une profondeur de deux aplati deux niveaux et produit également [1, 2, 3].
|
|
19
|
+
const deeplyFlattened = DGenerator.flat([[[1], [2]], [[3]]], 2);
|
|
20
|
+
|
|
21
|
+
type _CheckDeeplyFlattened = DCommon.ExpectType<
|
|
22
|
+
typeof deeplyFlattened,
|
|
23
|
+
Generator<1 | 2 | 3, void, unknown>,
|
|
24
|
+
"strict"
|
|
25
|
+
>;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.group
|
|
3
|
+
*
|
|
4
|
+
* Regrouper les valeurs d’un itérable selon les sorties nommées d’une callback.
|
|
5
|
+
*/
|
|
6
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
8
|
+
import * as DString from "@duplojs/lang/string";
|
|
9
|
+
|
|
10
|
+
const input: string[] = ["a", "bb", "c"];
|
|
11
|
+
|
|
12
|
+
// Appel classique : chaque valeur est ajoutée au groupe dont le nom dépend de sa longueur.
|
|
13
|
+
// Le ternaire porte sur la structure entière : `group` devient un discriminant littéral.
|
|
14
|
+
const result = DGenerator.group(
|
|
15
|
+
input,
|
|
16
|
+
(item, params) => DString.lengthEqual(item, 1)
|
|
17
|
+
? params.output("short", item)
|
|
18
|
+
: params.output("long", item),
|
|
19
|
+
);
|
|
20
|
+
|
|
21
|
+
// La sortie vaut { short: ["a", "c"], long: ["bb"] }.
|
|
22
|
+
type _CheckResult = DCommon.ExpectType<
|
|
23
|
+
typeof result,
|
|
24
|
+
{
|
|
25
|
+
readonly long?: readonly [string, ...string[]] | undefined;
|
|
26
|
+
readonly short?: readonly [string & DString.LengthEqual<1>, ...(string & DString.LengthEqual<1>)[]] | undefined;
|
|
27
|
+
},
|
|
28
|
+
"strict"
|
|
29
|
+
>;
|
|
30
|
+
|
|
31
|
+
// Appel curifié : le regroupement est configuré dans l’étape du pipe.
|
|
32
|
+
const piped = DCommon.pipe(
|
|
33
|
+
input,
|
|
34
|
+
DGenerator.group((item, params) => params.output("value", item)),
|
|
35
|
+
);
|
|
36
|
+
|
|
37
|
+
// La sortie vaut { value: ["a", "bb", "c"] }.
|
|
38
|
+
type _CheckPiped = DCommon.ExpectType<
|
|
39
|
+
typeof piped,
|
|
40
|
+
{
|
|
41
|
+
readonly value?: readonly [string, ...string[]] | undefined;
|
|
42
|
+
},
|
|
43
|
+
"strict"
|
|
44
|
+
>;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.groupOutput
|
|
3
|
+
*
|
|
4
|
+
* Construire une sortie nommée destinée à la fonction de regroupement.
|
|
5
|
+
*/
|
|
6
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
8
|
+
import * as DPattern from "@duplojs/lang/pattern";
|
|
9
|
+
import * as DString from "@duplojs/lang/string";
|
|
10
|
+
|
|
11
|
+
declare const value: number;
|
|
12
|
+
|
|
13
|
+
// Appel classique : associer directement la valeur au groupe `even`.
|
|
14
|
+
const result = DGenerator.groupOutput("even", value);
|
|
15
|
+
|
|
16
|
+
// La sortie associe le groupe `even` à la valeur fournie.
|
|
17
|
+
type _CheckResult = DCommon.ExpectType<
|
|
18
|
+
typeof result,
|
|
19
|
+
DGenerator.GroupOutputResult<"even", number>,
|
|
20
|
+
"strict"
|
|
21
|
+
>;
|
|
22
|
+
|
|
23
|
+
// Composition dans un pipe : le pattern `when` sélectionne le premier groupe,
|
|
24
|
+
// puis `otherwise` traite le reste sans ouvrir de callback intermédiaire.
|
|
25
|
+
const input: string[] = ["a", "bb", "c"];
|
|
26
|
+
|
|
27
|
+
const piped = DCommon.pipe(
|
|
28
|
+
input,
|
|
29
|
+
DGenerator.group(
|
|
30
|
+
DCommon.innerPipe(
|
|
31
|
+
DPattern.when(
|
|
32
|
+
DString.lengthEqual(1),
|
|
33
|
+
DGenerator.groupOutput("short"),
|
|
34
|
+
),
|
|
35
|
+
DPattern.otherwise(DGenerator.groupOutput("long")),
|
|
36
|
+
),
|
|
37
|
+
),
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
// La sortie vaut { short: ["a", "c"], long: ["bb"] }.
|
|
41
|
+
type _CheckPiped = DCommon.ExpectType<
|
|
42
|
+
typeof piped,
|
|
43
|
+
{
|
|
44
|
+
readonly long?: readonly [string, ...string[]] | undefined;
|
|
45
|
+
readonly short?: readonly [string & DString.LengthEqual<1>, ...(string & DString.LengthEqual<1>)[]] | undefined;
|
|
46
|
+
},
|
|
47
|
+
"strict"
|
|
48
|
+
>;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.loop
|
|
3
|
+
*
|
|
4
|
+
* Produire une séquence dans un pipe en distinguant l’arrêt avec ou sans dernière valeur émise.
|
|
5
|
+
*/
|
|
6
|
+
import * as DArray from "@duplojs/lang/array";
|
|
7
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
8
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
9
|
+
import * as DNumber from "@duplojs/lang/number";
|
|
10
|
+
|
|
11
|
+
// Arrêt sans dernière valeur : `exit()` termine la boucle sans émettre d’élément supplémentaire.
|
|
12
|
+
const withoutExitValue = DCommon.pipe(
|
|
13
|
+
DGenerator.loop(({ previousOutput, next, exit }: DGenerator.LoopParams<number>) => {
|
|
14
|
+
if (previousOutput === 3) {
|
|
15
|
+
return exit();
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
return next(
|
|
19
|
+
previousOutput === undefined
|
|
20
|
+
? 1
|
|
21
|
+
: DNumber.sum([previousOutput, 1]),
|
|
22
|
+
);
|
|
23
|
+
}),
|
|
24
|
+
DArray.from,
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
// La sortie vaut [1, 2, 3] : `next` émet les valeurs intermédiaires, mais `exit()` n’en émet aucune.
|
|
28
|
+
type _CheckWithoutExitValue = DCommon.ExpectType<
|
|
29
|
+
typeof withoutExitValue,
|
|
30
|
+
readonly number[],
|
|
31
|
+
"strict"
|
|
32
|
+
>;
|
|
33
|
+
|
|
34
|
+
// Arrêt avec dernière valeur : `exit(value)` termine la boucle en émettant cette valeur.
|
|
35
|
+
const withExitValue = DCommon.pipe(
|
|
36
|
+
DGenerator.loop(({ previousOutput, next, exit }: DGenerator.LoopParams<number>) => {
|
|
37
|
+
if (previousOutput === 3) {
|
|
38
|
+
return exit(4);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
return next(
|
|
42
|
+
previousOutput === undefined
|
|
43
|
+
? 1
|
|
44
|
+
: DNumber.sum([previousOutput, 1]),
|
|
45
|
+
);
|
|
46
|
+
}),
|
|
47
|
+
DArray.from,
|
|
48
|
+
);
|
|
49
|
+
|
|
50
|
+
// La sortie vaut [1, 2, 3, 4] : `exit(4)` ajoute la dernière valeur à la séquence.
|
|
51
|
+
type _CheckWithExitValue = DCommon.ExpectType<
|
|
52
|
+
typeof withExitValue,
|
|
53
|
+
readonly number[],
|
|
54
|
+
"strict"
|
|
55
|
+
>;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.map
|
|
3
|
+
*
|
|
4
|
+
* Transformer chaque valeur d’un itérable dans un générateur.
|
|
5
|
+
*/
|
|
6
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DArray from "@duplojs/lang/array";
|
|
8
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
9
|
+
import * as DNumber from "@duplojs/lang/number";
|
|
10
|
+
|
|
11
|
+
const input = [1, 2, 3];
|
|
12
|
+
|
|
13
|
+
// Appel classique : chaque nombre est doublé.
|
|
14
|
+
const result = DGenerator.map(input, (item) => DNumber.sum([item, item]));
|
|
15
|
+
|
|
16
|
+
// La sortie est un générateur qui produit [2, 4, 6].
|
|
17
|
+
type _CheckResult = DCommon.ExpectType<
|
|
18
|
+
typeof result,
|
|
19
|
+
Generator<number, unknown, unknown>,
|
|
20
|
+
"strict"
|
|
21
|
+
>;
|
|
22
|
+
|
|
23
|
+
// Appel curifié : la transformation est configurée dans l’étape du pipe.
|
|
24
|
+
const piped = DCommon.pipe(
|
|
25
|
+
input,
|
|
26
|
+
DGenerator.map((item) => DNumber.sum([item, item, item])),
|
|
27
|
+
DArray.from,
|
|
28
|
+
);
|
|
29
|
+
|
|
30
|
+
// La sortie vaut [3, 6, 9].
|
|
31
|
+
type _CheckPiped = DCommon.ExpectType<
|
|
32
|
+
typeof piped,
|
|
33
|
+
readonly number[],
|
|
34
|
+
"strict"
|
|
35
|
+
>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.reduce
|
|
3
|
+
*
|
|
4
|
+
* Réduire un itérable avec un accumulateur et des sorties next ou exit.
|
|
5
|
+
*/
|
|
6
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
8
|
+
import * as DNumber from "@duplojs/lang/number";
|
|
9
|
+
|
|
10
|
+
const input = [1, 2, 3];
|
|
11
|
+
|
|
12
|
+
// Appel classique : le nombre initial est directement inféré comme accumulateur numérique.
|
|
13
|
+
const result = DGenerator.reduce(
|
|
14
|
+
input,
|
|
15
|
+
0,
|
|
16
|
+
({ lastValue, item, next }) => next(DNumber.sum([lastValue, item])),
|
|
17
|
+
);
|
|
18
|
+
|
|
19
|
+
// La sortie vaut 6 et le type de l’accumulateur est inféré comme number.
|
|
20
|
+
type _CheckResult = DCommon.ExpectType<typeof result, number, "strict">;
|
|
21
|
+
|
|
22
|
+
type Accumulator =
|
|
23
|
+
| { total: number }
|
|
24
|
+
| { values: readonly number[] };
|
|
25
|
+
|
|
26
|
+
// Appel curifié : le générique porté par reduceFrom décrit une union sans utiliser `as`.
|
|
27
|
+
const piped = DCommon.pipe(
|
|
28
|
+
input,
|
|
29
|
+
DGenerator.reduce(
|
|
30
|
+
DGenerator.reduceFrom<Accumulator>({ total: 0 }),
|
|
31
|
+
({ lastValue, next }) => next(lastValue),
|
|
32
|
+
),
|
|
33
|
+
);
|
|
34
|
+
|
|
35
|
+
// La sortie conserve l’union { total: number } | { values: readonly number[] }.
|
|
36
|
+
type _CheckPiped = DCommon.ExpectType<typeof piped, Accumulator, "strict">;
|
|
37
|
+
|
|
38
|
+
// Une sortie exit interrompt la réduction : son type string est indépendant de l’accumulateur number.
|
|
39
|
+
const stopped = DGenerator.reduce(
|
|
40
|
+
input,
|
|
41
|
+
0,
|
|
42
|
+
({ item, lastValue, next, exit }) => item === 2
|
|
43
|
+
? exit("stop")
|
|
44
|
+
: next(DNumber.sum([lastValue, item])),
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
type _CheckStopped = DCommon.ExpectType<
|
|
48
|
+
typeof stopped,
|
|
49
|
+
number | string,
|
|
50
|
+
"strict"
|
|
51
|
+
>;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DGenerator.reduceFrom
|
|
3
|
+
*
|
|
4
|
+
* Marquer une valeur initiale, éventuellement élargie par un générique, pour une réduction.
|
|
5
|
+
*/
|
|
6
|
+
import type * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DGenerator from "@duplojs/lang/generator";
|
|
8
|
+
|
|
9
|
+
// Pour une valeur primitive, son type est inféré directement.
|
|
10
|
+
const numberInitial = DGenerator.reduceFrom(0);
|
|
11
|
+
|
|
12
|
+
type _CheckNumberInitial = DCommon.ExpectType<
|
|
13
|
+
typeof numberInitial,
|
|
14
|
+
DGenerator.ReduceFromResult<number>,
|
|
15
|
+
"strict"
|
|
16
|
+
>;
|
|
17
|
+
|
|
18
|
+
type Accumulator =
|
|
19
|
+
| { total: number }
|
|
20
|
+
| { values: readonly number[] };
|
|
21
|
+
|
|
22
|
+
// Pour une structure plus large, le générique de reduceFrom fixe la shape ou l’union sans utiliser `as`.
|
|
23
|
+
const result = DGenerator.reduce(
|
|
24
|
+
[1, 2, 3],
|
|
25
|
+
DGenerator.reduceFrom<Accumulator>({ total: 0 }),
|
|
26
|
+
({ lastValue, next }) => next(lastValue),
|
|
27
|
+
);
|
|
28
|
+
|
|
29
|
+
// La réduction désempaquette l’accumulateur et conserve l’union définie par reduceFrom.
|
|
30
|
+
type _CheckResult = DCommon.ExpectType<typeof result, Accumulator, "strict">;
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
## DGenerator
|
|
2
|
+
|
|
3
|
+
Création et composition de génératrices synchrones ou asynchrones pour produire, transformer, filtrer, réduire et consommer des séquences de valeurs.
|
|
4
|
+
|
|
5
|
+
### [DGenerator.asyncChunk](10-asyncChunk.ts)
|
|
6
|
+
|
|
7
|
+
Regrouper les valeurs d’un itérable asynchrone en sous-itérables de taille bornée.
|
|
8
|
+
|
|
9
|
+
### [DGenerator.asyncConcat](10-asyncConcat.ts)
|
|
10
|
+
|
|
11
|
+
Enchaîner plusieurs itérables synchrones ou asynchrones dans un générateur asynchrone.
|
|
12
|
+
|
|
13
|
+
### [DGenerator.asyncFilter](10-asyncFilter.ts)
|
|
14
|
+
|
|
15
|
+
Conserver dans un générateur asynchrone les valeurs acceptées par un prédicat.
|
|
16
|
+
|
|
17
|
+
### [DGenerator.asyncFlat](10-asyncFlat.ts)
|
|
18
|
+
|
|
19
|
+
Aplatir récursivement les valeurs itérables d’un générateur asynchrone jusqu’à une profondeur donnée.
|
|
20
|
+
|
|
21
|
+
### [DGenerator.asyncGroup](10-asyncGroup.ts)
|
|
22
|
+
|
|
23
|
+
Regrouper les valeurs d’un itérable asynchrone selon les sorties nommées d’une callback.
|
|
24
|
+
|
|
25
|
+
### [DGenerator.asyncLoop](10-asyncLoop.ts)
|
|
26
|
+
|
|
27
|
+
Produire une séquence asynchrone dans un pipe en distinguant l’arrêt avec ou sans dernière valeur émise.
|
|
28
|
+
|
|
29
|
+
### [DGenerator.asyncMap](10-asyncMap.ts)
|
|
30
|
+
|
|
31
|
+
Transformer chaque valeur dans un générateur asynchrone, en autorisant une callback synchrone ou asynchrone.
|
|
32
|
+
|
|
33
|
+
### [DGenerator.asyncReduce](10-asyncReduce.ts)
|
|
34
|
+
|
|
35
|
+
Réduire un itérable avec un accumulateur et des sorties next ou exit dans une promesse.
|
|
36
|
+
|
|
37
|
+
### [DGenerator.chunk](10-chunk.ts)
|
|
38
|
+
|
|
39
|
+
Regrouper les valeurs d’un itérable en sous-itérables de taille bornée.
|
|
40
|
+
|
|
41
|
+
### [DGenerator.concat](10-concat.ts)
|
|
42
|
+
|
|
43
|
+
Enchaîner plusieurs itérables dans un générateur synchrone.
|
|
44
|
+
|
|
45
|
+
### [DGenerator.createExternalAsyncGenerator](10-createExternalAsyncGenerator.ts)
|
|
46
|
+
|
|
47
|
+
Créer un générateur asynchrone dont la prochaine valeur ou la fin sont déclenchées de l’extérieur.
|
|
48
|
+
|
|
49
|
+
### [DGenerator.execute](10-execute.ts)
|
|
50
|
+
|
|
51
|
+
Consommer une génératrice jusqu’à sa fin, en retournant une promesse pour les génératrices asynchrones.
|
|
52
|
+
|
|
53
|
+
### [DGenerator.filter](10-filter.ts)
|
|
54
|
+
|
|
55
|
+
Conserver dans un générateur les valeurs acceptées par un prédicat.
|
|
56
|
+
|
|
57
|
+
### [DGenerator.flat](10-flat.ts)
|
|
58
|
+
|
|
59
|
+
Aplatir récursivement les valeurs itérables jusqu’à une profondeur donnée.
|
|
60
|
+
|
|
61
|
+
### [DGenerator.group](10-group.ts)
|
|
62
|
+
|
|
63
|
+
Regrouper les valeurs d’un itérable selon les sorties nommées d’une callback.
|
|
64
|
+
|
|
65
|
+
### [DGenerator.groupOutput](10-groupOutput.ts)
|
|
66
|
+
|
|
67
|
+
Construire une sortie nommée destinée à la fonction de regroupement.
|
|
68
|
+
|
|
69
|
+
### [DGenerator.loop](10-loop.ts)
|
|
70
|
+
|
|
71
|
+
Produire une séquence dans un pipe en distinguant l’arrêt avec ou sans dernière valeur émise.
|
|
72
|
+
|
|
73
|
+
### [DGenerator.map](10-map.ts)
|
|
74
|
+
|
|
75
|
+
Transformer chaque valeur d’un itérable dans un générateur.
|
|
76
|
+
|
|
77
|
+
### [DGenerator.reduce](10-reduce.ts)
|
|
78
|
+
|
|
79
|
+
Réduire un itérable avec un accumulateur et des sorties next ou exit.
|
|
80
|
+
|
|
81
|
+
### [DGenerator.reduceFrom](10-reduceFrom.ts)
|
|
82
|
+
|
|
83
|
+
Marquer une valeur initiale, éventuellement élargie par un générique, pour une réduction.
|
|
84
|
+
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DNumber.betweenThan
|
|
3
|
+
*
|
|
4
|
+
* Vérifier qu’un nombre est strictement compris entre deux bornes.
|
|
5
|
+
*/
|
|
6
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DNumber from "@duplojs/lang/number";
|
|
8
|
+
|
|
9
|
+
const result = DNumber.betweenThan(5, 1, 10);
|
|
10
|
+
// Appel classique : tester directement une valeur.
|
|
11
|
+
// La valeur obtenue est true, car 5 est strictement entre 1 et 10.
|
|
12
|
+
type _CheckResult = DCommon.ExpectType<typeof result, boolean, "strict">;
|
|
13
|
+
|
|
14
|
+
declare const value: number;
|
|
15
|
+
|
|
16
|
+
if (DNumber.betweenThan(value, 1, 10)) {
|
|
17
|
+
type _CheckIfValue = DCommon.ExpectType<
|
|
18
|
+
typeof value,
|
|
19
|
+
number & DNumber.GreaterThan<1> & DNumber.LessThan<10>,
|
|
20
|
+
"strict"
|
|
21
|
+
>;
|
|
22
|
+
const sum = DNumber.sum([value]);
|
|
23
|
+
type _CheckSum = DCommon.ExpectType<typeof sum, number, "strict">;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// Appel curifié : passer le predicate directement à DCommon.when.
|
|
27
|
+
const transformed = DCommon.pipe(
|
|
28
|
+
value,
|
|
29
|
+
DCommon.when(
|
|
30
|
+
DNumber.betweenThan(1, 10),
|
|
31
|
+
(value) => {
|
|
32
|
+
type _CheckValue = DCommon.ExpectType<
|
|
33
|
+
typeof value,
|
|
34
|
+
number & DNumber.GreaterThan<1> & DNumber.LessThan<10>,
|
|
35
|
+
"strict"
|
|
36
|
+
>;
|
|
37
|
+
|
|
38
|
+
return DNumber.sum([value]);
|
|
39
|
+
},
|
|
40
|
+
),
|
|
41
|
+
);
|
|
42
|
+
// La valeur est le nombre d’entrée lorsqu’il satisfait l’intervalle.
|
|
43
|
+
type _CheckTransformed = DCommon.ExpectType<typeof transformed, number, "strict">;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @title DNumber.betweenThanOrEqual
|
|
3
|
+
*
|
|
4
|
+
* Vérifier qu’un nombre appartient à un intervalle fermé.
|
|
5
|
+
*/
|
|
6
|
+
import * as DCommon from "@duplojs/lang/common";
|
|
7
|
+
import * as DNumber from "@duplojs/lang/number";
|
|
8
|
+
|
|
9
|
+
const result = DNumber.betweenThanOrEqual(5, 5, 10);
|
|
10
|
+
// Appel classique : tester directement une valeur.
|
|
11
|
+
// La valeur obtenue est true, car les bornes sont inclusives.
|
|
12
|
+
type _CheckResult = DCommon.ExpectType<typeof result, boolean, "strict">;
|
|
13
|
+
|
|
14
|
+
declare const value: number;
|
|
15
|
+
|
|
16
|
+
if (DNumber.betweenThanOrEqual(value, 5, 10)) {
|
|
17
|
+
type _CheckIfValue = DCommon.ExpectType<
|
|
18
|
+
typeof value,
|
|
19
|
+
number & DNumber.GreaterThanOrEqual<5> & DNumber.LessThanOrEqual<10>,
|
|
20
|
+
"strict"
|
|
21
|
+
>;
|
|
22
|
+
const sum = DNumber.sum([value]);
|
|
23
|
+
type _CheckSum = DCommon.ExpectType<typeof sum, number, "strict">;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
// Appel curifié : passer le predicate directement à DCommon.when.
|
|
27
|
+
const transformed = DCommon.pipe(
|
|
28
|
+
value,
|
|
29
|
+
DCommon.when(
|
|
30
|
+
DNumber.betweenThanOrEqual(5, 10),
|
|
31
|
+
(value) => {
|
|
32
|
+
type _CheckValue = DCommon.ExpectType<
|
|
33
|
+
typeof value,
|
|
34
|
+
number & DNumber.GreaterThanOrEqual<5> & DNumber.LessThanOrEqual<10>,
|
|
35
|
+
"strict"
|
|
36
|
+
>;
|
|
37
|
+
|
|
38
|
+
return DNumber.sum([value]);
|
|
39
|
+
},
|
|
40
|
+
),
|
|
41
|
+
);
|
|
42
|
+
// La valeur est le nombre d’entrée lorsqu’il satisfait l’intervalle.
|
|
43
|
+
type _CheckTransformed = DCommon.ExpectType<typeof transformed, number, "strict">;
|