@zajno/common 2.3.17 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/api/call.js +61 -0
- package/cjs/api/call.js.map +1 -0
- package/cjs/api/endpoint.js.map +1 -0
- package/cjs/api/endpoint.types.js.map +1 -0
- package/cjs/api/error.js.map +1 -0
- package/cjs/api/helpers.js +29 -0
- package/cjs/api/helpers.js.map +1 -0
- package/cjs/api/index.js.map +1 -0
- package/cjs/api/logging.js.map +1 -0
- package/cjs/api/methods.js.map +1 -0
- package/cjs/api/processor.js.map +1 -0
- package/cjs/api/register.js +25 -0
- package/cjs/api/register.js.map +1 -0
- package/cjs/api/statusCodes.js.map +1 -0
- package/cjs/async/arrays.js +38 -0
- package/cjs/async/arrays.js.map +1 -0
- package/cjs/async/misc.js +26 -0
- package/cjs/async/misc.js.map +1 -0
- package/cjs/async/timeout.js +63 -0
- package/cjs/async/timeout.js.map +1 -0
- package/cjs/dates/calc.js +62 -0
- package/cjs/dates/calc.js.map +1 -0
- package/cjs/dates/calendarIndex.js +85 -0
- package/cjs/dates/calendarIndex.js.map +1 -0
- package/cjs/dates/convert.js +127 -0
- package/cjs/dates/convert.js.map +1 -0
- package/cjs/dates/datex.js +101 -0
- package/cjs/dates/datex.js.map +1 -0
- package/cjs/dates/decompose.js +43 -0
- package/cjs/dates/decompose.js.map +1 -0
- package/cjs/dates/format.js.map +1 -0
- package/cjs/dates/index.js.map +1 -0
- package/cjs/dates/parse.js +49 -0
- package/cjs/dates/parse.js.map +1 -0
- package/cjs/dates/period.js.map +1 -0
- package/cjs/dates/shift.js +96 -0
- package/cjs/dates/shift.js.map +1 -0
- package/cjs/dates/types.js.map +1 -0
- package/cjs/dates/tz.js.map +1 -0
- package/cjs/dates/yearDate.js.map +1 -0
- package/cjs/fields/filter.js +28 -0
- package/cjs/fields/filter.js.map +1 -0
- package/cjs/fields/index.js.map +1 -0
- package/cjs/fields/skip.js.map +1 -0
- package/cjs/fields/transfer.js +46 -0
- package/cjs/fields/transfer.js.map +1 -0
- package/cjs/fields/update.js +78 -0
- package/cjs/fields/update.js.map +1 -0
- package/cjs/functions/assert.js +20 -0
- package/cjs/functions/assert.js.map +1 -0
- package/cjs/functions/disposer.js +73 -0
- package/cjs/functions/disposer.js.map +1 -0
- package/cjs/functions/disposer.symbols.js +29 -0
- package/cjs/functions/disposer.symbols.js.map +1 -0
- package/cjs/functions/safe.js +7 -0
- package/cjs/functions/safe.js.map +1 -0
- package/cjs/functions/throttle.js.map +1 -0
- package/cjs/lazy/light.js +23 -0
- package/cjs/lazy/light.js.map +1 -0
- package/cjs/lazy/promise.js +72 -0
- package/cjs/lazy/promise.js.map +1 -0
- package/cjs/lazy/singleton.js +69 -0
- package/cjs/lazy/singleton.js.map +1 -0
- package/cjs/lazy/types.js.map +1 -0
- package/cjs/logger/abstractions.js.map +1 -0
- package/cjs/logger/batch.js +11 -0
- package/cjs/logger/batch.js.map +1 -0
- package/cjs/logger/console.js.map +1 -0
- package/cjs/logger/file.js.map +1 -0
- package/cjs/logger/index.js +28 -0
- package/cjs/logger/index.js.map +1 -0
- package/cjs/logger/manager.js +89 -0
- package/cjs/logger/manager.js.map +1 -0
- package/cjs/logger/named.js.map +1 -0
- package/cjs/logger/proxy.js.map +1 -0
- package/cjs/math/arrays.js +289 -0
- package/cjs/math/arrays.js.map +1 -0
- package/cjs/math/calc.js +84 -0
- package/cjs/math/calc.js.map +1 -0
- package/cjs/math/distribution.js +15 -0
- package/cjs/math/distribution.js.map +1 -0
- package/cjs/math/index.js +29 -0
- package/cjs/math/index.js.map +1 -0
- package/cjs/math/object/helpers.js +28 -0
- package/cjs/math/object/helpers.js.map +1 -0
- package/cjs/math/object/index.js.map +1 -0
- package/cjs/math/object/math.composite.js.map +1 -0
- package/cjs/math/object/math.js.map +1 -0
- package/cjs/math/object/ops.composite.js.map +1 -0
- package/cjs/math/object/ops.js.map +1 -0
- package/cjs/math/object/types.js.map +1 -0
- package/cjs/models/EntityWithStatus.js.map +1 -0
- package/cjs/models/File.js.map +1 -0
- package/cjs/models/Model.js.map +1 -0
- package/cjs/models/ValuesCollector.js.map +1 -0
- package/cjs/models/types.js.map +1 -0
- package/cjs/models/wrappers.js +79 -0
- package/cjs/models/wrappers.js.map +1 -0
- package/cjs/observing/event.js +99 -0
- package/cjs/observing/event.js.map +1 -0
- package/cjs/observing/event.late.js.map +1 -0
- package/cjs/observing/progressTracker.js.map +1 -0
- package/cjs/observing/throttledEvent.js.map +1 -0
- package/cjs/observing/timer.js.map +1 -0
- package/cjs/package.json +3 -0
- package/cjs/storage/index.js.map +1 -0
- package/cjs/storage/types.js.map +1 -0
- package/cjs/storage/wrappers.js.map +1 -0
- package/cjs/structures/expire.js +22 -0
- package/cjs/structures/expire.js.map +1 -0
- package/cjs/structures/helpers/enum.js.map +1 -0
- package/cjs/structures/helpers/name.js.map +1 -0
- package/cjs/structures/linkedList.js.map +1 -0
- package/cjs/structures/nameof.js +26 -0
- package/cjs/structures/nameof.js.map +1 -0
- package/cjs/structures/path/builder.js +170 -0
- package/cjs/structures/path/builder.js.map +1 -0
- package/cjs/structures/path/index.js.map +1 -0
- package/cjs/structures/path/types.js +3 -0
- package/cjs/structures/path/types.js.map +1 -0
- package/cjs/structures/path/utils.js +61 -0
- package/cjs/structures/path/utils.js.map +1 -0
- package/cjs/structures/pool.js.map +1 -0
- package/cjs/structures/promiseCache.js.map +1 -0
- package/cjs/structures/promiseExtended.js +195 -0
- package/cjs/structures/promiseExtended.js.map +1 -0
- package/cjs/structures/promiseProxy.js +92 -0
- package/cjs/structures/promiseProxy.js.map +1 -0
- package/cjs/structures/queue/parallel.js.map +1 -0
- package/cjs/structures/queue/tasks.js.map +1 -0
- package/cjs/structures/subscribersMap.js.map +1 -0
- package/cjs/structures/tempoCache.js +59 -0
- package/cjs/structures/tempoCache.js.map +1 -0
- package/cjs/types/arrays.js +11 -0
- package/cjs/types/arrays.js.map +1 -0
- package/cjs/types/comparator.js.map +1 -0
- package/cjs/types/deep.js.map +1 -0
- package/cjs/types/functions.js.map +1 -0
- package/cjs/types/getter.js +26 -0
- package/cjs/types/getter.js.map +1 -0
- package/cjs/types/ident.js.map +1 -0
- package/cjs/types/index.js.map +1 -0
- package/cjs/types/misc.js.map +1 -0
- package/cjs/validation/ValidationErrors.js.map +1 -0
- package/cjs/validation/creditCard.js.map +1 -0
- package/cjs/validation/emails.js +11 -0
- package/cjs/validation/emails.js.map +1 -0
- package/cjs/validation/helpers.js +77 -0
- package/cjs/validation/helpers.js.map +1 -0
- package/cjs/validation/index.js.map +1 -0
- package/cjs/validation/throwers.js +33 -0
- package/cjs/validation/throwers.js.map +1 -0
- package/cjs/validation/types.js.map +1 -0
- package/cjs/validation/validators.js.map +1 -0
- package/cjs/validation/wrappers.js.map +1 -0
- package/esm/api/call.js +58 -0
- package/esm/api/call.js.map +1 -0
- package/esm/api/endpoint.js +65 -0
- package/esm/api/endpoint.js.map +1 -0
- package/esm/api/endpoint.types.js +8 -0
- package/esm/api/endpoint.types.js.map +1 -0
- package/esm/api/error.js +31 -0
- package/esm/api/error.js.map +1 -0
- package/esm/api/helpers.js +22 -0
- package/esm/api/helpers.js.map +1 -0
- package/esm/api/index.js +7 -0
- package/esm/api/index.js.map +1 -0
- package/esm/api/logging.js +25 -0
- package/esm/api/logging.js.map +1 -0
- package/esm/api/methods.js +8 -0
- package/esm/api/methods.js.map +1 -0
- package/esm/api/processor.js +46 -0
- package/esm/api/processor.js.map +1 -0
- package/esm/api/register.js +19 -0
- package/esm/api/register.js.map +1 -0
- package/esm/api/statusCodes.js +18 -0
- package/esm/api/statusCodes.js.map +1 -0
- package/esm/async/arrays.js +32 -0
- package/esm/async/arrays.js.map +1 -0
- package/esm/async/misc.js +21 -0
- package/esm/async/misc.js.map +1 -0
- package/esm/async/timeout.js +58 -0
- package/esm/async/timeout.js.map +1 -0
- package/esm/dates/calc.js +53 -0
- package/esm/dates/calc.js.map +1 -0
- package/esm/dates/calendarIndex.js +79 -0
- package/esm/dates/calendarIndex.js.map +1 -0
- package/esm/dates/convert.js +115 -0
- package/esm/dates/convert.js.map +1 -0
- package/esm/dates/datex.js +97 -0
- package/esm/dates/datex.js.map +1 -0
- package/esm/dates/decompose.js +39 -0
- package/esm/dates/decompose.js.map +1 -0
- package/esm/dates/format.js +121 -0
- package/esm/dates/format.js.map +1 -0
- package/esm/dates/index.js +11 -0
- package/esm/dates/index.js.map +1 -0
- package/esm/dates/parse.js +44 -0
- package/esm/dates/parse.js.map +1 -0
- package/esm/dates/period.js +22 -0
- package/esm/dates/period.js.map +1 -0
- package/esm/dates/shift.js +88 -0
- package/esm/dates/shift.js.map +1 -0
- package/esm/dates/types.js +48 -0
- package/esm/dates/types.js.map +1 -0
- package/esm/dates/tz.js +49 -0
- package/esm/dates/tz.js.map +1 -0
- package/esm/dates/yearDate.js +35 -0
- package/esm/dates/yearDate.js.map +1 -0
- package/esm/fields/filter.js +25 -0
- package/esm/fields/filter.js.map +1 -0
- package/esm/fields/index.js +4 -0
- package/esm/fields/index.js.map +1 -0
- package/esm/fields/skip.js +29 -0
- package/esm/fields/skip.js.map +1 -0
- package/esm/fields/transfer.js +41 -0
- package/esm/fields/transfer.js.map +1 -0
- package/esm/fields/update.js +73 -0
- package/esm/fields/update.js.map +1 -0
- package/esm/functions/assert.js +16 -0
- package/esm/functions/assert.js.map +1 -0
- package/esm/functions/disposer.js +66 -0
- package/esm/functions/disposer.js.map +1 -0
- package/esm/functions/disposer.symbols.js +24 -0
- package/esm/functions/disposer.symbols.js.map +1 -0
- package/esm/functions/safe.js +4 -0
- package/esm/functions/safe.js.map +1 -0
- package/esm/functions/throttle.js +132 -0
- package/esm/functions/throttle.js.map +1 -0
- package/esm/lazy/light.js +20 -0
- package/esm/lazy/light.js.map +1 -0
- package/esm/lazy/promise.js +68 -0
- package/esm/lazy/promise.js.map +1 -0
- package/esm/lazy/singleton.js +65 -0
- package/esm/lazy/singleton.js.map +1 -0
- package/esm/lazy/types.js +2 -0
- package/esm/lazy/types.js.map +1 -0
- package/esm/logger/abstractions.js +2 -0
- package/esm/logger/abstractions.js.map +1 -0
- package/esm/logger/batch.js +8 -0
- package/esm/logger/batch.js.map +1 -0
- package/esm/logger/console.js +43 -0
- package/esm/logger/console.js.map +1 -0
- package/esm/logger/file.js +60 -0
- package/esm/logger/file.js.map +1 -0
- package/esm/logger/index.js +19 -0
- package/esm/logger/index.js.map +1 -0
- package/esm/logger/manager.js +85 -0
- package/esm/logger/manager.js.map +1 -0
- package/esm/logger/named.js +32 -0
- package/esm/logger/named.js.map +1 -0
- package/esm/logger/proxy.js +24 -0
- package/esm/logger/proxy.js.map +1 -0
- package/esm/math/arrays.js +262 -0
- package/esm/math/arrays.js.map +1 -0
- package/esm/math/calc.js +72 -0
- package/esm/math/calc.js.map +1 -0
- package/esm/math/distribution.js +12 -0
- package/esm/math/distribution.js.map +1 -0
- package/esm/math/index.js +24 -0
- package/esm/math/index.js.map +1 -0
- package/esm/math/object/helpers.js +23 -0
- package/esm/math/object/helpers.js.map +1 -0
- package/esm/math/object/index.js +6 -0
- package/esm/math/object/index.js.map +1 -0
- package/esm/math/object/math.composite.js +58 -0
- package/esm/math/object/math.composite.js.map +1 -0
- package/esm/math/object/math.js +120 -0
- package/esm/math/object/math.js.map +1 -0
- package/esm/math/object/ops.composite.js +46 -0
- package/esm/math/object/ops.composite.js.map +1 -0
- package/esm/math/object/ops.js +85 -0
- package/esm/math/object/ops.js.map +1 -0
- package/esm/math/object/types.js +2 -0
- package/esm/math/object/types.js.map +1 -0
- package/esm/models/EntityWithStatus.js +45 -0
- package/esm/models/EntityWithStatus.js.map +1 -0
- package/esm/models/File.js +2 -0
- package/esm/models/File.js.map +1 -0
- package/esm/models/Model.js +20 -0
- package/esm/models/Model.js.map +1 -0
- package/esm/models/ValuesCollector.js +45 -0
- package/esm/models/ValuesCollector.js.map +1 -0
- package/esm/models/types.js +2 -0
- package/esm/models/types.js.map +1 -0
- package/esm/models/wrappers.js +72 -0
- package/esm/models/wrappers.js.map +1 -0
- package/esm/observing/event.js +94 -0
- package/esm/observing/event.js.map +1 -0
- package/esm/observing/event.late.js +35 -0
- package/esm/observing/event.late.js.map +1 -0
- package/esm/observing/progressTracker.js +72 -0
- package/esm/observing/progressTracker.js.map +1 -0
- package/esm/observing/throttledEvent.js +16 -0
- package/esm/observing/throttledEvent.js.map +1 -0
- package/esm/observing/timer.js +81 -0
- package/esm/observing/timer.js.map +1 -0
- package/esm/package.json +3 -0
- package/esm/storage/index.js +3 -0
- package/esm/storage/index.js.map +1 -0
- package/esm/storage/types.js +2 -0
- package/esm/storage/types.js.map +1 -0
- package/esm/storage/wrappers.js +51 -0
- package/esm/storage/wrappers.js.map +1 -0
- package/esm/structures/expire.js +18 -0
- package/esm/structures/expire.js.map +1 -0
- package/esm/structures/helpers/enum.js +104 -0
- package/esm/structures/helpers/enum.js.map +1 -0
- package/esm/structures/helpers/name.js +42 -0
- package/esm/structures/helpers/name.js.map +1 -0
- package/esm/structures/linkedList.js +78 -0
- package/esm/structures/linkedList.js.map +1 -0
- package/esm/structures/nameof.js +23 -0
- package/esm/structures/nameof.js.map +1 -0
- package/esm/structures/path/builder.js +164 -0
- package/esm/structures/path/builder.js.map +1 -0
- package/esm/structures/path/index.js +3 -0
- package/esm/structures/path/index.js.map +1 -0
- package/esm/structures/path/types.js +2 -0
- package/esm/structures/path/types.js.map +1 -0
- package/esm/structures/path/utils.js +56 -0
- package/esm/structures/path/utils.js.map +1 -0
- package/esm/structures/pool.js +45 -0
- package/esm/structures/pool.js.map +1 -0
- package/esm/structures/promiseCache.js +266 -0
- package/esm/structures/promiseCache.js.map +1 -0
- package/esm/structures/promiseExtended.js +191 -0
- package/esm/structures/promiseExtended.js.map +1 -0
- package/esm/structures/promiseProxy.js +89 -0
- package/esm/structures/promiseProxy.js.map +1 -0
- package/esm/structures/queue/parallel.js +116 -0
- package/esm/structures/queue/parallel.js.map +1 -0
- package/esm/structures/queue/tasks.js +72 -0
- package/esm/structures/queue/tasks.js.map +1 -0
- package/esm/structures/subscribersMap.js +94 -0
- package/esm/structures/subscribersMap.js.map +1 -0
- package/esm/structures/tempoCache.js +55 -0
- package/esm/structures/tempoCache.js.map +1 -0
- package/esm/types/arrays.js +7 -0
- package/esm/types/arrays.js.map +1 -0
- package/esm/types/comparator.js +5 -0
- package/esm/types/comparator.js.map +1 -0
- package/esm/types/deep.js +2 -0
- package/esm/types/deep.js.map +1 -0
- package/esm/types/functions.js +2 -0
- package/esm/types/functions.js.map +1 -0
- package/esm/types/getter.js +23 -0
- package/esm/types/getter.js.map +1 -0
- package/esm/types/ident.js +2 -0
- package/esm/types/ident.js.map +1 -0
- package/esm/types/index.js +5 -0
- package/esm/types/index.js.map +1 -0
- package/esm/types/misc.js +2 -0
- package/esm/types/misc.js.map +1 -0
- package/esm/validation/ValidationErrors.js +30 -0
- package/esm/validation/ValidationErrors.js.map +1 -0
- package/esm/validation/creditCard.js +22 -0
- package/esm/validation/creditCard.js.map +1 -0
- package/esm/validation/emails.js +8 -0
- package/esm/validation/emails.js.map +1 -0
- package/esm/validation/helpers.js +68 -0
- package/esm/validation/helpers.js.map +1 -0
- package/esm/validation/index.js +9 -0
- package/esm/validation/index.js.map +1 -0
- package/esm/validation/throwers.js +28 -0
- package/esm/validation/throwers.js.map +1 -0
- package/esm/validation/types.js +8 -0
- package/esm/validation/types.js.map +1 -0
- package/esm/validation/validators.js +48 -0
- package/esm/validation/validators.js.map +1 -0
- package/esm/validation/wrappers.js +23 -0
- package/esm/validation/wrappers.js.map +1 -0
- package/package.json +80 -11
- package/tsconfig.cjs.tsbuildinfo +1 -0
- package/tsconfig.esm.tsbuildinfo +1 -0
- package/tsconfig.types.tsbuildinfo +1 -0
- package/types/api/call.d.ts +35 -0
- package/types/api/endpoint.d.ts +38 -0
- package/types/api/endpoint.types.d.ts +45 -0
- package/types/api/error.d.ts +17 -0
- package/types/api/helpers.d.ts +9 -0
- package/types/api/index.d.ts +8 -0
- package/types/api/logging.d.ts +13 -0
- package/types/api/methods.d.ts +6 -0
- package/types/api/processor.d.ts +7 -0
- package/types/api/register.d.ts +7 -0
- package/types/api/statusCodes.d.ts +16 -0
- package/types/async/arrays.d.ts +4 -0
- package/types/async/misc.d.ts +8 -0
- package/types/async/timeout.d.ts +8 -0
- package/types/dates/calc.d.ts +9 -0
- package/types/dates/calendarIndex.d.ts +47 -0
- package/types/dates/convert.d.ts +15 -0
- package/types/dates/datex.d.ts +23 -0
- package/types/dates/decompose.d.ts +4 -0
- package/types/dates/format.d.ts +22 -0
- package/types/dates/index.d.ts +10 -0
- package/types/dates/parse.d.ts +10 -0
- package/types/dates/period.d.ts +11 -0
- package/types/dates/shift.d.ts +8 -0
- package/types/dates/types.d.ts +9 -0
- package/types/dates/tz.d.ts +7 -0
- package/types/dates/yearDate.d.ts +12 -0
- package/types/fields/filter.d.ts +9 -0
- package/types/fields/index.d.ts +3 -0
- package/types/fields/skip.d.ts +16 -0
- package/types/fields/transfer.d.ts +14 -0
- package/types/fields/update.d.ts +27 -0
- package/types/functions/assert.d.ts +2 -0
- package/types/functions/disposer.d.ts +24 -0
- package/types/functions/disposer.symbols.d.ts +6 -0
- package/types/functions/safe.d.ts +1 -0
- package/types/functions/throttle.d.ts +38 -0
- package/types/lazy/light.d.ts +2 -0
- package/types/lazy/promise.d.ts +23 -0
- package/types/lazy/singleton.d.ts +21 -0
- package/types/lazy/types.d.ts +12 -0
- package/types/logger/abstractions.d.ts +10 -0
- package/types/logger/batch.d.ts +2 -0
- package/types/logger/console.d.ts +18 -0
- package/types/logger/file.d.ts +15 -0
- package/types/logger/index.d.ts +13 -0
- package/types/logger/manager.d.ts +22 -0
- package/types/logger/named.d.ts +13 -0
- package/types/logger/proxy.d.ts +9 -0
- package/types/math/arrays.d.ts +44 -0
- package/types/math/calc.d.ts +17 -0
- package/types/math/distribution.d.ts +5 -0
- package/types/math/index.d.ts +5 -0
- package/types/math/object/helpers.d.ts +7 -0
- package/types/math/object/index.d.ts +5 -0
- package/types/math/object/math.composite.d.ts +16 -0
- package/types/math/object/math.d.ts +17 -0
- package/types/math/object/ops.composite.d.ts +14 -0
- package/types/math/object/ops.d.ts +20 -0
- package/types/math/object/types.d.ts +36 -0
- package/types/models/EntityWithStatus.d.ts +17 -0
- package/types/models/File.d.ts +9 -0
- package/types/models/Model.d.ts +12 -0
- package/types/models/ValuesCollector.d.ts +25 -0
- package/types/models/types.d.ts +24 -0
- package/types/models/wrappers.d.ts +17 -0
- package/types/observing/event.d.ts +25 -0
- package/types/observing/event.late.d.ts +10 -0
- package/types/observing/progressTracker.d.ts +27 -0
- package/types/observing/throttledEvent.d.ts +7 -0
- package/types/observing/timer.d.ts +41 -0
- package/types/storage/index.d.ts +2 -0
- package/types/storage/types.d.ts +12 -0
- package/types/storage/wrappers.d.ts +10 -0
- package/types/structures/expire.d.ts +13 -0
- package/types/structures/helpers/enum.d.ts +36 -0
- package/types/structures/helpers/name.d.ts +15 -0
- package/types/structures/linkedList.d.ts +38 -0
- package/types/structures/nameof.d.ts +13 -0
- package/types/structures/path/builder.d.ts +15 -0
- package/types/structures/path/index.d.ts +2 -0
- package/types/structures/path/types.d.ts +61 -0
- package/types/structures/path/utils.d.ts +14 -0
- package/types/structures/pool.d.ts +16 -0
- package/types/structures/promiseCache.d.ts +85 -0
- package/types/structures/promiseExtended.d.ts +70 -0
- package/types/structures/promiseProxy.d.ts +29 -0
- package/types/structures/queue/parallel.d.ts +23 -0
- package/types/structures/queue/tasks.d.ts +16 -0
- package/types/structures/subscribersMap.d.ts +22 -0
- package/types/structures/tempoCache.d.ts +29 -0
- package/types/types/arrays.d.ts +3 -0
- package/types/types/comparator.d.ts +4 -0
- package/types/types/deep.d.ts +25 -0
- package/types/types/functions.d.ts +15 -0
- package/types/types/getter.d.ts +9 -0
- package/types/types/ident.d.ts +5 -0
- package/types/types/index.d.ts +4 -0
- package/types/types/misc.d.ts +37 -0
- package/types/validation/ValidationErrors.d.ts +25 -0
- package/types/validation/creditCard.d.ts +8 -0
- package/types/validation/emails.d.ts +3 -0
- package/types/validation/helpers.d.ts +10 -0
- package/types/validation/index.d.ts +5 -0
- package/types/validation/throwers.d.ts +14 -0
- package/types/validation/types.d.ts +18 -0
- package/types/validation/validators.d.ts +30 -0
- package/types/validation/wrappers.d.ts +6 -0
- package/api/call.d.ts +0 -36
- package/api/call.d.ts.map +0 -1
- package/api/call.js +0 -62
- package/api/call.js.map +0 -1
- package/api/endpoint.d.ts +0 -39
- package/api/endpoint.d.ts.map +0 -1
- package/api/endpoint.js.map +0 -1
- package/api/endpoint.types.d.ts +0 -46
- package/api/endpoint.types.d.ts.map +0 -1
- package/api/endpoint.types.js.map +0 -1
- package/api/error.d.ts +0 -18
- package/api/error.d.ts.map +0 -1
- package/api/error.js.map +0 -1
- package/api/helpers.d.ts +0 -10
- package/api/helpers.d.ts.map +0 -1
- package/api/helpers.js +0 -29
- package/api/helpers.js.map +0 -1
- package/api/index.d.ts +0 -9
- package/api/index.d.ts.map +0 -1
- package/api/index.js.map +0 -1
- package/api/logging.d.ts +0 -14
- package/api/logging.d.ts.map +0 -1
- package/api/logging.js.map +0 -1
- package/api/methods.d.ts +0 -7
- package/api/methods.d.ts.map +0 -1
- package/api/methods.js.map +0 -1
- package/api/processor.d.ts +0 -8
- package/api/processor.d.ts.map +0 -1
- package/api/processor.js.map +0 -1
- package/api/register.d.ts +0 -8
- package/api/register.d.ts.map +0 -1
- package/api/register.js +0 -25
- package/api/register.js.map +0 -1
- package/api/statusCodes.d.ts +0 -17
- package/api/statusCodes.d.ts.map +0 -1
- package/api/statusCodes.js.map +0 -1
- package/async/arrays.d.ts +0 -5
- package/async/arrays.d.ts.map +0 -1
- package/async/arrays.js +0 -39
- package/async/arrays.js.map +0 -1
- package/async/misc.d.ts +0 -9
- package/async/misc.d.ts.map +0 -1
- package/async/misc.js +0 -27
- package/async/misc.js.map +0 -1
- package/async/timeout.d.ts +0 -9
- package/async/timeout.d.ts.map +0 -1
- package/async/timeout.js +0 -64
- package/async/timeout.js.map +0 -1
- package/dates/calc.d.ts +0 -10
- package/dates/calc.d.ts.map +0 -1
- package/dates/calc.js +0 -63
- package/dates/calc.js.map +0 -1
- package/dates/calendarIndex.d.ts +0 -48
- package/dates/calendarIndex.d.ts.map +0 -1
- package/dates/calendarIndex.js +0 -85
- package/dates/calendarIndex.js.map +0 -1
- package/dates/convert.d.ts +0 -16
- package/dates/convert.d.ts.map +0 -1
- package/dates/convert.js +0 -128
- package/dates/convert.js.map +0 -1
- package/dates/datex.d.ts +0 -24
- package/dates/datex.d.ts.map +0 -1
- package/dates/datex.js +0 -101
- package/dates/datex.js.map +0 -1
- package/dates/decompose.d.ts +0 -5
- package/dates/decompose.d.ts.map +0 -1
- package/dates/decompose.js +0 -44
- package/dates/decompose.js.map +0 -1
- package/dates/format.d.ts +0 -23
- package/dates/format.d.ts.map +0 -1
- package/dates/format.js.map +0 -1
- package/dates/index.d.ts +0 -11
- package/dates/index.d.ts.map +0 -1
- package/dates/index.js.map +0 -1
- package/dates/parse.d.ts +0 -11
- package/dates/parse.d.ts.map +0 -1
- package/dates/parse.js +0 -49
- package/dates/parse.js.map +0 -1
- package/dates/period.d.ts +0 -12
- package/dates/period.d.ts.map +0 -1
- package/dates/period.js.map +0 -1
- package/dates/shift.d.ts +0 -9
- package/dates/shift.d.ts.map +0 -1
- package/dates/shift.js +0 -96
- package/dates/shift.js.map +0 -1
- package/dates/types.d.ts +0 -10
- package/dates/types.d.ts.map +0 -1
- package/dates/types.js.map +0 -1
- package/dates/tz.d.ts +0 -8
- package/dates/tz.d.ts.map +0 -1
- package/dates/tz.js.map +0 -1
- package/dates/yearDate.d.ts +0 -13
- package/dates/yearDate.d.ts.map +0 -1
- package/dates/yearDate.js.map +0 -1
- package/fields/filter.d.ts +0 -10
- package/fields/filter.d.ts.map +0 -1
- package/fields/filter.js +0 -29
- package/fields/filter.js.map +0 -1
- package/fields/index.d.ts +0 -4
- package/fields/index.d.ts.map +0 -1
- package/fields/index.js.map +0 -1
- package/fields/skip.d.ts +0 -17
- package/fields/skip.d.ts.map +0 -1
- package/fields/skip.js.map +0 -1
- package/fields/transfer.d.ts +0 -15
- package/fields/transfer.d.ts.map +0 -1
- package/fields/transfer.js +0 -47
- package/fields/transfer.js.map +0 -1
- package/fields/update.d.ts +0 -28
- package/fields/update.d.ts.map +0 -1
- package/fields/update.js +0 -79
- package/fields/update.js.map +0 -1
- package/functions/assert.d.ts +0 -3
- package/functions/assert.d.ts.map +0 -1
- package/functions/assert.js +0 -21
- package/functions/assert.js.map +0 -1
- package/functions/disposer.d.ts +0 -25
- package/functions/disposer.d.ts.map +0 -1
- package/functions/disposer.js +0 -73
- package/functions/disposer.js.map +0 -1
- package/functions/disposer.symbols.d.ts +0 -7
- package/functions/disposer.symbols.d.ts.map +0 -1
- package/functions/disposer.symbols.js +0 -29
- package/functions/disposer.symbols.js.map +0 -1
- package/functions/safe.d.ts +0 -2
- package/functions/safe.d.ts.map +0 -1
- package/functions/safe.js +0 -8
- package/functions/safe.js.map +0 -1
- package/functions/throttle.d.ts +0 -39
- package/functions/throttle.d.ts.map +0 -1
- package/functions/throttle.js.map +0 -1
- package/lazy/light.d.ts +0 -9
- package/lazy/light.d.ts.map +0 -1
- package/lazy/light.js +0 -23
- package/lazy/light.js.map +0 -1
- package/lazy/promise.d.ts +0 -24
- package/lazy/promise.d.ts.map +0 -1
- package/lazy/promise.js +0 -56
- package/lazy/promise.js.map +0 -1
- package/lazy/singleton.d.ts +0 -18
- package/lazy/singleton.d.ts.map +0 -1
- package/lazy/singleton.js +0 -44
- package/lazy/singleton.js.map +0 -1
- package/logger/abstractions.d.ts +0 -11
- package/logger/abstractions.d.ts.map +0 -1
- package/logger/abstractions.js.map +0 -1
- package/logger/batch.d.ts +0 -3
- package/logger/batch.d.ts.map +0 -1
- package/logger/batch.js +0 -12
- package/logger/batch.js.map +0 -1
- package/logger/console.d.ts +0 -19
- package/logger/console.d.ts.map +0 -1
- package/logger/console.js.map +0 -1
- package/logger/file.d.ts +0 -16
- package/logger/file.d.ts.map +0 -1
- package/logger/file.js.map +0 -1
- package/logger/index.d.ts +0 -16
- package/logger/index.d.ts.map +0 -1
- package/logger/index.js +0 -64
- package/logger/index.js.map +0 -1
- package/logger/named.d.ts +0 -14
- package/logger/named.d.ts.map +0 -1
- package/logger/named.js.map +0 -1
- package/logger/proxy.d.ts +0 -10
- package/logger/proxy.d.ts.map +0 -1
- package/logger/proxy.js.map +0 -1
- package/math/arrays.d.ts +0 -43
- package/math/arrays.d.ts.map +0 -1
- package/math/arrays.js +0 -273
- package/math/arrays.js.map +0 -1
- package/math/calc.d.ts +0 -18
- package/math/calc.d.ts.map +0 -1
- package/math/calc.js +0 -85
- package/math/calc.js.map +0 -1
- package/math/distribution.d.ts +0 -6
- package/math/distribution.d.ts.map +0 -1
- package/math/distribution.js +0 -16
- package/math/distribution.js.map +0 -1
- package/math/index.d.ts +0 -6
- package/math/index.d.ts.map +0 -1
- package/math/index.js +0 -30
- package/math/index.js.map +0 -1
- package/math/object/helpers.d.ts +0 -8
- package/math/object/helpers.d.ts.map +0 -1
- package/math/object/helpers.js +0 -29
- package/math/object/helpers.js.map +0 -1
- package/math/object/index.d.ts +0 -6
- package/math/object/index.d.ts.map +0 -1
- package/math/object/index.js.map +0 -1
- package/math/object/math.composite.d.ts +0 -17
- package/math/object/math.composite.d.ts.map +0 -1
- package/math/object/math.composite.js.map +0 -1
- package/math/object/math.d.ts +0 -18
- package/math/object/math.d.ts.map +0 -1
- package/math/object/math.js.map +0 -1
- package/math/object/ops.composite.d.ts +0 -15
- package/math/object/ops.composite.d.ts.map +0 -1
- package/math/object/ops.composite.js.map +0 -1
- package/math/object/ops.d.ts +0 -21
- package/math/object/ops.d.ts.map +0 -1
- package/math/object/ops.js.map +0 -1
- package/math/object/types.d.ts +0 -37
- package/math/object/types.d.ts.map +0 -1
- package/math/object/types.js.map +0 -1
- package/models/EntityWithStatus.d.ts +0 -18
- package/models/EntityWithStatus.d.ts.map +0 -1
- package/models/EntityWithStatus.js.map +0 -1
- package/models/File.d.ts +0 -10
- package/models/File.d.ts.map +0 -1
- package/models/File.js.map +0 -1
- package/models/Model.d.ts +0 -13
- package/models/Model.d.ts.map +0 -1
- package/models/Model.js.map +0 -1
- package/models/ValuesCollector.d.ts +0 -26
- package/models/ValuesCollector.d.ts.map +0 -1
- package/models/ValuesCollector.js.map +0 -1
- package/models/types.d.ts +0 -25
- package/models/types.d.ts.map +0 -1
- package/models/types.js.map +0 -1
- package/models/wrappers.d.ts +0 -18
- package/models/wrappers.d.ts.map +0 -1
- package/models/wrappers.js +0 -80
- package/models/wrappers.js.map +0 -1
- package/observing/event.d.ts +0 -26
- package/observing/event.d.ts.map +0 -1
- package/observing/event.js +0 -99
- package/observing/event.js.map +0 -1
- package/observing/event.late.d.ts +0 -11
- package/observing/event.late.d.ts.map +0 -1
- package/observing/event.late.js.map +0 -1
- package/observing/progressTracker.d.ts +0 -28
- package/observing/progressTracker.d.ts.map +0 -1
- package/observing/progressTracker.js.map +0 -1
- package/observing/throttledEvent.d.ts +0 -8
- package/observing/throttledEvent.d.ts.map +0 -1
- package/observing/throttledEvent.js.map +0 -1
- package/observing/timer.d.ts +0 -42
- package/observing/timer.d.ts.map +0 -1
- package/observing/timer.js.map +0 -1
- package/storage/index.d.ts +0 -3
- package/storage/index.d.ts.map +0 -1
- package/storage/index.js.map +0 -1
- package/storage/types.d.ts +0 -13
- package/storage/types.d.ts.map +0 -1
- package/storage/types.js.map +0 -1
- package/storage/wrappers.d.ts +0 -11
- package/storage/wrappers.d.ts.map +0 -1
- package/storage/wrappers.js.map +0 -1
- package/structures/helpers/enum.d.ts +0 -37
- package/structures/helpers/enum.d.ts.map +0 -1
- package/structures/helpers/enum.js.map +0 -1
- package/structures/helpers/name.d.ts +0 -16
- package/structures/helpers/name.d.ts.map +0 -1
- package/structures/helpers/name.js.map +0 -1
- package/structures/linkedList.d.ts +0 -39
- package/structures/linkedList.d.ts.map +0 -1
- package/structures/linkedList.js.map +0 -1
- package/structures/nameof.d.ts +0 -14
- package/structures/nameof.d.ts.map +0 -1
- package/structures/nameof.js +0 -27
- package/structures/nameof.js.map +0 -1
- package/structures/path/builder.d.ts +0 -16
- package/structures/path/builder.d.ts.map +0 -1
- package/structures/path/builder.js +0 -170
- package/structures/path/builder.js.map +0 -1
- package/structures/path/index.d.ts +0 -3
- package/structures/path/index.d.ts.map +0 -1
- package/structures/path/index.js.map +0 -1
- package/structures/path/types.d.ts +0 -62
- package/structures/path/types.d.ts.map +0 -1
- package/structures/path/types.js.map +0 -1
- package/structures/path/utils.d.ts +0 -15
- package/structures/path/utils.d.ts.map +0 -1
- package/structures/path/utils.js +0 -61
- package/structures/path/utils.js.map +0 -1
- package/structures/pool.d.ts +0 -17
- package/structures/pool.d.ts.map +0 -1
- package/structures/pool.js.map +0 -1
- package/structures/promiseCache.d.ts +0 -86
- package/structures/promiseCache.d.ts.map +0 -1
- package/structures/promiseCache.js.map +0 -1
- package/structures/promiseExtended.d.ts +0 -71
- package/structures/promiseExtended.d.ts.map +0 -1
- package/structures/promiseExtended.js +0 -193
- package/structures/promiseExtended.js.map +0 -1
- package/structures/promiseProxy.d.ts +0 -30
- package/structures/promiseProxy.d.ts.map +0 -1
- package/structures/promiseProxy.js +0 -93
- package/structures/promiseProxy.js.map +0 -1
- package/structures/queue/parallel.d.ts +0 -24
- package/structures/queue/parallel.d.ts.map +0 -1
- package/structures/queue/parallel.js.map +0 -1
- package/structures/queue/tasks.d.ts +0 -17
- package/structures/queue/tasks.d.ts.map +0 -1
- package/structures/queue/tasks.js.map +0 -1
- package/structures/subscribersMap.d.ts +0 -23
- package/structures/subscribersMap.d.ts.map +0 -1
- package/structures/subscribersMap.js.map +0 -1
- package/structures/tempoCache.d.ts +0 -10
- package/structures/tempoCache.d.ts.map +0 -1
- package/structures/tempoCache.js +0 -23
- package/structures/tempoCache.js.map +0 -1
- package/types/arrays.d.ts +0 -4
- package/types/arrays.d.ts.map +0 -1
- package/types/arrays.js +0 -12
- package/types/arrays.js.map +0 -1
- package/types/comparator.d.ts +0 -5
- package/types/comparator.d.ts.map +0 -1
- package/types/comparator.js.map +0 -1
- package/types/deep.d.ts +0 -26
- package/types/deep.d.ts.map +0 -1
- package/types/deep.js.map +0 -1
- package/types/functions.d.ts +0 -16
- package/types/functions.d.ts.map +0 -1
- package/types/functions.js.map +0 -1
- package/types/getter.d.ts +0 -5
- package/types/getter.d.ts.map +0 -1
- package/types/getter.js +0 -14
- package/types/getter.js.map +0 -1
- package/types/ident.d.ts +0 -6
- package/types/ident.d.ts.map +0 -1
- package/types/ident.js.map +0 -1
- package/types/index.d.ts +0 -5
- package/types/index.d.ts.map +0 -1
- package/types/index.js.map +0 -1
- package/types/misc.d.ts +0 -38
- package/types/misc.d.ts.map +0 -1
- package/types/misc.js.map +0 -1
- package/validation/ValidationErrors.d.ts +0 -26
- package/validation/ValidationErrors.d.ts.map +0 -1
- package/validation/ValidationErrors.js.map +0 -1
- package/validation/creditCard.d.ts +0 -9
- package/validation/creditCard.d.ts.map +0 -1
- package/validation/creditCard.js.map +0 -1
- package/validation/emails.d.ts +0 -4
- package/validation/emails.d.ts.map +0 -1
- package/validation/emails.js +0 -12
- package/validation/emails.js.map +0 -1
- package/validation/helpers.d.ts +0 -11
- package/validation/helpers.d.ts.map +0 -1
- package/validation/helpers.js +0 -78
- package/validation/helpers.js.map +0 -1
- package/validation/index.d.ts +0 -6
- package/validation/index.d.ts.map +0 -1
- package/validation/index.js.map +0 -1
- package/validation/throwers.d.ts +0 -14
- package/validation/throwers.d.ts.map +0 -1
- package/validation/throwers.js +0 -29
- package/validation/throwers.js.map +0 -1
- package/validation/types.d.ts +0 -19
- package/validation/types.d.ts.map +0 -1
- package/validation/types.js.map +0 -1
- package/validation/validators.d.ts +0 -31
- package/validation/validators.d.ts.map +0 -1
- package/validation/validators.js.map +0 -1
- package/validation/wrappers.d.ts +0 -7
- package/validation/wrappers.d.ts.map +0 -1
- package/validation/wrappers.js.map +0 -1
- /package/{api → cjs/api}/endpoint.js +0 -0
- /package/{api → cjs/api}/endpoint.types.js +0 -0
- /package/{api → cjs/api}/error.js +0 -0
- /package/{api → cjs/api}/index.js +0 -0
- /package/{api → cjs/api}/logging.js +0 -0
- /package/{api → cjs/api}/methods.js +0 -0
- /package/{api → cjs/api}/processor.js +0 -0
- /package/{api → cjs/api}/statusCodes.js +0 -0
- /package/{dates → cjs/dates}/format.js +0 -0
- /package/{dates → cjs/dates}/index.js +0 -0
- /package/{dates → cjs/dates}/period.js +0 -0
- /package/{dates → cjs/dates}/types.js +0 -0
- /package/{dates → cjs/dates}/tz.js +0 -0
- /package/{dates → cjs/dates}/yearDate.js +0 -0
- /package/{fields → cjs/fields}/index.js +0 -0
- /package/{fields → cjs/fields}/skip.js +0 -0
- /package/{functions → cjs/functions}/throttle.js +0 -0
- /package/{math/object → cjs/lazy}/types.js +0 -0
- /package/{logger → cjs/logger}/abstractions.js +0 -0
- /package/{logger → cjs/logger}/console.js +0 -0
- /package/{logger → cjs/logger}/file.js +0 -0
- /package/{logger → cjs/logger}/named.js +0 -0
- /package/{logger → cjs/logger}/proxy.js +0 -0
- /package/{math → cjs/math}/object/index.js +0 -0
- /package/{math → cjs/math}/object/math.composite.js +0 -0
- /package/{math → cjs/math}/object/math.js +0 -0
- /package/{math → cjs/math}/object/ops.composite.js +0 -0
- /package/{math → cjs/math}/object/ops.js +0 -0
- /package/{models → cjs/math/object}/types.js +0 -0
- /package/{models → cjs/models}/EntityWithStatus.js +0 -0
- /package/{models → cjs/models}/File.js +0 -0
- /package/{models → cjs/models}/Model.js +0 -0
- /package/{models → cjs/models}/ValuesCollector.js +0 -0
- /package/{storage → cjs/models}/types.js +0 -0
- /package/{observing → cjs/observing}/event.late.js +0 -0
- /package/{observing → cjs/observing}/progressTracker.js +0 -0
- /package/{observing → cjs/observing}/throttledEvent.js +0 -0
- /package/{observing → cjs/observing}/timer.js +0 -0
- /package/{storage → cjs/storage}/index.js +0 -0
- /package/{structures/path → cjs/storage}/types.js +0 -0
- /package/{storage → cjs/storage}/wrappers.js +0 -0
- /package/{structures → cjs/structures}/helpers/enum.js +0 -0
- /package/{structures → cjs/structures}/helpers/name.js +0 -0
- /package/{structures → cjs/structures}/linkedList.js +0 -0
- /package/{structures → cjs/structures}/path/index.js +0 -0
- /package/{structures → cjs/structures}/pool.js +0 -0
- /package/{structures → cjs/structures}/promiseCache.js +0 -0
- /package/{structures → cjs/structures}/queue/parallel.js +0 -0
- /package/{structures → cjs/structures}/queue/tasks.js +0 -0
- /package/{structures → cjs/structures}/subscribersMap.js +0 -0
- /package/{types → cjs/types}/comparator.js +0 -0
- /package/{types → cjs/types}/deep.js +0 -0
- /package/{types → cjs/types}/functions.js +0 -0
- /package/{types → cjs/types}/ident.js +0 -0
- /package/{types → cjs/types}/index.js +0 -0
- /package/{types → cjs/types}/misc.js +0 -0
- /package/{validation → cjs/validation}/ValidationErrors.js +0 -0
- /package/{validation → cjs/validation}/creditCard.js +0 -0
- /package/{validation → cjs/validation}/index.js +0 -0
- /package/{validation → cjs/validation}/types.js +0 -0
- /package/{validation → cjs/validation}/validators.js +0 -0
- /package/{validation → cjs/validation}/wrappers.js +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dates/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAQlC,MAAM,KAAW,WAAW,CAqD3B;AArDD,WAAiB,WAAW;IAUxB,IAAiB,QAAQ,CA0CxB;IA1CD,WAAiB,QAAQ;QAErB,SAAgB,IAAI,CAAC,CAAuB;YACxC,QAAQ,CAAC,EAAE,CAAC;gBACR,KAAK,aAAa,CAAC,CAAC,CAAC;oBACjB,OAAO,CAAC,CAAC;gBACb,CAAC;gBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACZ,OAAO,IAAI,CAAC;gBAChB,CAAC;gBACD,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACZ,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/B,CAAC;gBACD,KAAK,MAAM,CAAC,CAAC,CAAC;oBACV,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/B,CAAC;gBACD,KAAK,KAAK,CAAC,CAAC,CAAC;oBACT,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC7B,CAAC;gBACD,KAAK,MAAM,CAAC,CAAC,CAAC;oBACV,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;gBACD,OAAO,CAAC,CAAC,CAAC;oBACN,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;gBAC/C,CAAC;YACL,CAAC;QACL,CAAC;QAxBe,aAAI,OAwBnB,CAAA;QAED,SAAgB,OAAO,CAAC,MAAc,EAAE,CAAuB,EAAE,EAAwB;YACrF,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;YACtB,OAAO,EAAE,GAAG,IAAI,CAAC;QACrB,CAAC;QAJe,gBAAO,UAItB,CAAA;QAED,SAAgB,KAAK,CAAC,IAAmB,EAAE,MAAc,EAAE,WAAiC;YACxF,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YAC1B,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,GAAG,CAAC;YACf,CAAC;YAED,OAAO,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAChE,CAAC;QAPe,cAAK,QAOpB,CAAA;IACL,CAAC,EA1CgB,QAAQ,GAAR,oBAAQ,KAAR,oBAAQ,QA0CxB;AACL,CAAC,EArDgB,WAAW,KAAX,WAAW,QAqD3B"}
|
package/esm/dates/tz.js
ADDED
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/** This is experimental stuff, so no tests provided, see comments in the code */
|
|
2
|
+
export var Timezones;
|
|
3
|
+
(function (Timezones) {
|
|
4
|
+
Timezones.Current = Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
5
|
+
Timezones.CurrentOffset = new Date().getTimezoneOffset();
|
|
6
|
+
// https://stackoverflow.com/a/64262840/9053142
|
|
7
|
+
// tested locally, but it's hard to write tests since they are based on the local timezone, browser implementation and whether DST is active
|
|
8
|
+
// it's recommended to wrap with try/catch and don't rely it will always work
|
|
9
|
+
Timezones.getOffset = (timeZone) => {
|
|
10
|
+
const timeZoneName = Intl.DateTimeFormat('ia', {
|
|
11
|
+
timeZoneName: 'longOffset',
|
|
12
|
+
timeZone,
|
|
13
|
+
})
|
|
14
|
+
.formatToParts()
|
|
15
|
+
.find((i) => i.type === 'timeZoneName')
|
|
16
|
+
?.value;
|
|
17
|
+
const offset = timeZoneName?.slice(3);
|
|
18
|
+
if (!offset) {
|
|
19
|
+
return 0;
|
|
20
|
+
}
|
|
21
|
+
const matchData = offset.match(/([+-])(\d+)(?::(\d+))?/);
|
|
22
|
+
if (!matchData) {
|
|
23
|
+
throw new Error(`cannot parse timezone name: ${timeZoneName} given from ${timeZone}`);
|
|
24
|
+
}
|
|
25
|
+
const [, sign, hour, minute] = matchData;
|
|
26
|
+
let result = parseInt(hour, 10) * 60;
|
|
27
|
+
if (minute) {
|
|
28
|
+
result += parseInt(minute, 10);
|
|
29
|
+
}
|
|
30
|
+
if (sign === '+') {
|
|
31
|
+
result *= -1;
|
|
32
|
+
}
|
|
33
|
+
return result;
|
|
34
|
+
};
|
|
35
|
+
// Tests may look like this:
|
|
36
|
+
/*
|
|
37
|
+
expect(Timezones.getOffset('America/New_York')).toBe(240);
|
|
38
|
+
expect(Timezones.getOffset('Europe/Paris')).toBe(-120);
|
|
39
|
+
expect(Timezones.getOffset('Europe/Kiev')).toBe(-180);
|
|
40
|
+
expect(Timezones.getOffset('Asia/Kolkata')).toBe(-270);
|
|
41
|
+
*/
|
|
42
|
+
function shiftToTimeZone(date, tz) {
|
|
43
|
+
const offset = typeof tz === 'number' ? tz : Timezones.getOffset(tz);
|
|
44
|
+
const shifted = new Date(date.getTime() + offset * 60 * 1000);
|
|
45
|
+
return shifted;
|
|
46
|
+
}
|
|
47
|
+
Timezones.shiftToTimeZone = shiftToTimeZone;
|
|
48
|
+
})(Timezones || (Timezones = {}));
|
|
49
|
+
//# sourceMappingURL=tz.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tz.js","sourceRoot":"","sources":["../../../src/dates/tz.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,MAAM,KAAW,SAAS,CAoDzB;AApDD,WAAiB,SAAS;IAET,iBAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;IAC3D,uBAAa,GAAG,IAAI,IAAI,EAAE,CAAC,iBAAiB,EAAE,CAAC;IAE5D,+CAA+C;IAC/C,4IAA4I;IAC5I,6EAA6E;IAChE,mBAAS,GAAG,CAAC,QAAgB,EAAE,EAAE;QAC1C,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE;YAC3C,YAAY,EAAE,YAAY;YAC1B,QAAQ;SACX,CAAC;aACG,aAAa,EAAE;aACf,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC;YACvC,EAAE,KAAK,CAAC;QAEZ,MAAM,MAAM,GAAG,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO,CAAC,CAAC;QACb,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACzD,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,+BAA+B,YAAY,eAAe,QAAQ,EAAE,CAAC,CAAC;QAC1F,CAAC;QAED,MAAM,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;QACzC,IAAI,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC;QACrC,IAAI,MAAM,EAAE,CAAC;YACT,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,IAAI,CAAC,CAAC,CAAC;QACjB,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC,CAAC;IAEF,4BAA4B;IAC5B;;;;;MAKE;IAEF,SAAgB,eAAe,CAAC,IAAU,EAAE,EAAmB;QAC3D,MAAM,MAAM,GAAG,OAAO,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAA,SAAS,CAAC,EAAE,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAC9D,OAAO,OAAO,CAAC;IACnB,CAAC;IAJe,yBAAe,kBAI9B,CAAA;AACL,CAAC,EApDgB,SAAS,KAAT,SAAS,QAoDzB"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { getDate } from './parse';
|
|
2
|
+
export var YearDate;
|
|
3
|
+
(function (YearDate) {
|
|
4
|
+
function isValid(yd) {
|
|
5
|
+
return yd && typeof yd.day === 'number' && typeof yd.month === 'number';
|
|
6
|
+
}
|
|
7
|
+
YearDate.isValid = isValid;
|
|
8
|
+
function matches(yearDate, date, local = false) {
|
|
9
|
+
const d = getDate(date);
|
|
10
|
+
return local
|
|
11
|
+
? d.getMonth() === yearDate?.month && d.getDate() === yearDate?.day
|
|
12
|
+
: d.getUTCMonth() === yearDate?.month && d.getUTCDate() === yearDate?.day;
|
|
13
|
+
}
|
|
14
|
+
YearDate.matches = matches;
|
|
15
|
+
function toDate(yd, year = new Date().getUTCFullYear()) {
|
|
16
|
+
if (!yd) {
|
|
17
|
+
return null;
|
|
18
|
+
}
|
|
19
|
+
return new Date(Date.UTC(year, yd.month || 0, yd.day || 1, 12));
|
|
20
|
+
}
|
|
21
|
+
YearDate.toDate = toDate;
|
|
22
|
+
function fromDate(date) {
|
|
23
|
+
const d = getDate(date);
|
|
24
|
+
return {
|
|
25
|
+
month: d.getUTCMonth(),
|
|
26
|
+
day: d.getUTCDate(),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
YearDate.fromDate = fromDate;
|
|
30
|
+
function equals(yd1, yd2) {
|
|
31
|
+
return yd1?.month === yd2?.month && yd1?.day === yd1?.month;
|
|
32
|
+
}
|
|
33
|
+
YearDate.equals = equals;
|
|
34
|
+
})(YearDate || (YearDate = {}));
|
|
35
|
+
//# sourceMappingURL=yearDate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"yearDate.js","sourceRoot":"","sources":["../../../src/dates/yearDate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAKlC,MAAM,KAAW,QAAQ,CA8BxB;AA9BD,WAAiB,QAAQ;IACrB,SAAgB,OAAO,CAAC,EAAY;QAChC,OAAO,EAAE,IAAI,OAAO,EAAE,CAAC,GAAG,KAAK,QAAQ,IAAI,OAAO,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC;IAC5E,CAAC;IAFe,gBAAO,UAEtB,CAAA;IAED,SAAgB,OAAO,CAAC,QAAkB,EAAE,IAAmB,EAAE,KAAK,GAAG,KAAK;QAC1E,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACxB,OAAO,KAAK;YACR,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,CAAC,CAAC,OAAO,EAAE,KAAK,QAAQ,EAAE,GAAG;YACnE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,KAAK,QAAQ,EAAE,KAAK,IAAI,CAAC,CAAC,UAAU,EAAE,KAAK,QAAQ,EAAE,GAAG,CAAC;IAClF,CAAC;IALe,gBAAO,UAKtB,CAAA;IAED,SAAgB,MAAM,CAAC,EAAY,EAAE,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,cAAc,EAAE;QACnE,IAAI,CAAC,EAAE,EAAE,CAAC;YACN,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACpE,CAAC;IALe,eAAM,SAKrB,CAAA;IAED,SAAgB,QAAQ,CAAC,IAAmB;QACxC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACxB,OAAO;YACH,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE;YACtB,GAAG,EAAE,CAAC,CAAC,UAAU,EAAE;SACtB,CAAC;IACN,CAAC;IANe,iBAAQ,WAMvB,CAAA;IAED,SAAgB,MAAM,CAAC,GAAa,EAAE,GAAa;QAC/C,OAAO,GAAG,EAAE,KAAK,KAAK,GAAG,EAAE,KAAK,IAAI,GAAG,EAAE,GAAG,KAAK,GAAG,EAAE,KAAK,CAAC;IAChE,CAAC;IAFe,eAAM,SAErB,CAAA;AACL,CAAC,EA9BgB,QAAQ,KAAR,QAAQ,QA8BxB"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export function filterFields(source, ...fields) {
|
|
2
|
+
const res = {};
|
|
3
|
+
fields.forEach(k => {
|
|
4
|
+
if (typeof k === 'object') {
|
|
5
|
+
const v = source[k.key];
|
|
6
|
+
if (k.filter(v)) {
|
|
7
|
+
res[k.key] = v;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
else {
|
|
11
|
+
const v = source[k];
|
|
12
|
+
if (v) {
|
|
13
|
+
res[k] = v;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
});
|
|
17
|
+
return res;
|
|
18
|
+
}
|
|
19
|
+
(function (filterFields) {
|
|
20
|
+
function Truethy() { return (v) => !!v; }
|
|
21
|
+
filterFields.Truethy = Truethy;
|
|
22
|
+
function NotNull() { return v => v != null; }
|
|
23
|
+
filterFields.NotNull = NotNull;
|
|
24
|
+
})(filterFields || (filterFields = {}));
|
|
25
|
+
//# sourceMappingURL=filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../../src/fields/filter.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU,YAAY,CAAI,MAAkB,EAAE,GAAG,MAA+D;IAClH,MAAM,GAAG,GAAe,EAAG,CAAC;IAE5B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACf,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACxB,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;gBACd,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,EAAE,CAAC;gBACJ,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACf,CAAC;QACL,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACf,CAAC;AAED,WAAiB,YAAY;IACzB,SAAgB,OAAO,KAAwB,OAAO,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAAnD,oBAAO,UAA4C,CAAA;IACnE,SAAgB,OAAO,KAAwB,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;IAAvD,oBAAO,UAAgD,CAAA;AAC3E,CAAC,EAHgB,YAAY,KAAZ,YAAY,QAG5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/fields/index.ts"],"names":[],"mappings":"AACA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export var SkipOptions;
|
|
2
|
+
(function (SkipOptions) {
|
|
3
|
+
function shouldSkip(v, skip) {
|
|
4
|
+
if (v == null && skip === 'null') {
|
|
5
|
+
return true;
|
|
6
|
+
}
|
|
7
|
+
if (!v && (skip === 'falsy' || skip === true)) {
|
|
8
|
+
return true;
|
|
9
|
+
}
|
|
10
|
+
return false;
|
|
11
|
+
}
|
|
12
|
+
SkipOptions.shouldSkip = shouldSkip;
|
|
13
|
+
})(SkipOptions || (SkipOptions = {}));
|
|
14
|
+
export var SkipCondition;
|
|
15
|
+
(function (SkipCondition) {
|
|
16
|
+
function shouldSkip(condition, key, val) {
|
|
17
|
+
if (typeof condition === 'function') {
|
|
18
|
+
if (condition(key, val)) {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
else if (SkipOptions.shouldSkip(val, condition)) {
|
|
23
|
+
return true;
|
|
24
|
+
}
|
|
25
|
+
return false;
|
|
26
|
+
}
|
|
27
|
+
SkipCondition.shouldSkip = shouldSkip;
|
|
28
|
+
})(SkipCondition || (SkipCondition = {}));
|
|
29
|
+
//# sourceMappingURL=skip.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skip.js","sourceRoot":"","sources":["../../../src/fields/skip.ts"],"names":[],"mappings":"AAUA,MAAM,KAAW,WAAW,CAW3B;AAXD,WAAiB,WAAW;IACxB,SAAgB,UAAU,CAAU,CAAW,EAAE,IAAiB;QAC9D,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IATe,sBAAU,aASzB,CAAA;AACL,CAAC,EAXgB,WAAW,KAAX,WAAW,QAW3B;AAID,MAAM,KAAW,aAAa,CAY7B;AAZD,WAAiB,aAAa;IAC1B,SAAgB,UAAU,CAAoC,SAAiC,EAAE,GAAS,EAAE,GAAmB;QAC3H,IAAI,OAAO,SAAS,KAAK,UAAU,EAAE,CAAC;YAClC,IAAI,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;gBACtB,OAAO,IAAI,CAAC;YAChB,CAAC;QACL,CAAC;aAAM,IAAI,WAAW,CAAC,UAAU,CAAU,GAAG,EAAE,SAAS,CAAC,EAAE,CAAC;YACzD,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IAVe,wBAAU,aAUzB,CAAA;AACL,CAAC,EAZgB,aAAa,KAAb,aAAa,QAY7B"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
export function transferFields(source, predicate, destination, ...fields) {
|
|
2
|
+
let count = 0;
|
|
3
|
+
fields.forEach(f => {
|
|
4
|
+
const v = source[f];
|
|
5
|
+
if (!predicate || predicate(f, v)) {
|
|
6
|
+
destination[f] = v;
|
|
7
|
+
++count;
|
|
8
|
+
}
|
|
9
|
+
});
|
|
10
|
+
return count;
|
|
11
|
+
}
|
|
12
|
+
(function (transferFields) {
|
|
13
|
+
function truthy(source, destination, ...fields) {
|
|
14
|
+
return transferFields(source, (f, v) => !!v, destination, ...fields);
|
|
15
|
+
}
|
|
16
|
+
transferFields.truthy = truthy;
|
|
17
|
+
function notNull(source, destination, ...fields) {
|
|
18
|
+
return transferFields(source, (f, v) => v != null, destination, ...fields);
|
|
19
|
+
}
|
|
20
|
+
transferFields.notNull = notNull;
|
|
21
|
+
function defined(source, destination, ...fields) {
|
|
22
|
+
return transferFields(source, (f, v) => v !== undefined, destination, ...fields);
|
|
23
|
+
}
|
|
24
|
+
transferFields.defined = defined;
|
|
25
|
+
function changed(source, compare, destination, ...fields) {
|
|
26
|
+
return transferFields(source, (f, v) => v !== undefined && source[f] !== compare[f], destination, ...fields);
|
|
27
|
+
}
|
|
28
|
+
transferFields.changed = changed;
|
|
29
|
+
})(transferFields || (transferFields = {}));
|
|
30
|
+
export function hasChangedFields(left, right, ...fields) {
|
|
31
|
+
return fields.some(f => left[f] !== right[f]);
|
|
32
|
+
}
|
|
33
|
+
export function extractChangedFields(source, image, ...fields) {
|
|
34
|
+
const res = {};
|
|
35
|
+
const count = transferFields(source, (f, v) => v !== undefined && v !== image[f], res, ...fields);
|
|
36
|
+
return {
|
|
37
|
+
transferred: count,
|
|
38
|
+
result: res,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=transfer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transfer.js","sourceRoot":"","sources":["../../../src/fields/transfer.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,cAAc,CAC1B,MAAS,EACT,SAAiD,EACjD,WAAuB,EACvB,GAAG,MAAmB;IAEtB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACf,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAChC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACnB,EAAE,KAAK,CAAC;QACZ,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,WAAiB,cAAc;IAC3B,SAAgB,MAAM,CAClB,MAAS,EACT,WAAuB,EACvB,GAAG,MAAmB;QAEtB,OAAO,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,CAAC;IACzE,CAAC;IANe,qBAAM,SAMrB,CAAA;IAED,SAAgB,OAAO,CACnB,MAAS,EACT,WAAuB,EACvB,GAAG,MAAmB;QAEtB,OAAO,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,CAAC;IAC/E,CAAC;IANe,sBAAO,UAMtB,CAAA;IAED,SAAgB,OAAO,CACnB,MAAS,EACT,WAAuB,EACvB,GAAG,MAAmB;QAEtB,OAAO,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,CAAC;IACrF,CAAC;IANe,sBAAO,UAMtB,CAAA;IAED,SAAgB,OAAO,CACnB,MAAS,EACT,OAAU,EACV,WAAuB,EACvB,GAAG,MAAmB;QAEtB,OAAO,cAAc,CACjB,MAAM,EACN,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EACrD,WAAW,EACX,GAAG,MAAM,CACZ,CAAC;IACN,CAAC;IAZe,sBAAO,UAYtB,CAAA;AACL,CAAC,EAtCgB,cAAc,KAAd,cAAc,QAsC9B;AAED,MAAM,UAAU,gBAAgB,CAAI,IAAO,EAAE,KAAQ,EAAE,GAAG,MAAmB;IACzE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAClD,CAAC;AAOD,MAAM,UAAU,oBAAoB,CAChC,MAAkB,EAClB,KAAQ,EACR,GAAG,MAAmB;IAEtB,MAAM,GAAG,GAAe,EAAE,CAAC;IAC3B,MAAM,KAAK,GAAG,cAAc,CACxB,MAAM,EACN,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,EAC3C,GAAG,EACH,GAAG,MAAM,CACZ,CAAC;IACF,OAAO;QACH,WAAW,EAAE,KAAK;QAClB,MAAM,EAAE,GAAG;KACd,CAAC;AACN,CAAC"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
export function updateField(target, source, diff, key, hasChanged = null) {
|
|
2
|
+
return updateFieldExtended(target, source, diff, t => t[key], (t, v) => t[key] = v, hasChanged);
|
|
3
|
+
}
|
|
4
|
+
export function updateFieldExtended(target, source, diff, get, set, hasChanged = null) {
|
|
5
|
+
const _hasChanged = hasChanged ?? ((v1, v2) => (get(v1) !== get(v2)));
|
|
6
|
+
let changed = true;
|
|
7
|
+
if (get(source) !== undefined && _hasChanged(source, target)) {
|
|
8
|
+
changed = true;
|
|
9
|
+
set(diff, get(target));
|
|
10
|
+
set(target, get(source));
|
|
11
|
+
}
|
|
12
|
+
return changed;
|
|
13
|
+
}
|
|
14
|
+
const DefaultComparator = (v1, v2) => v1 === v2;
|
|
15
|
+
const DefaultUpdater = (v1, v2) => Object.assign(v1, v2);
|
|
16
|
+
export function updateArray(target, source, options) {
|
|
17
|
+
if (!source) {
|
|
18
|
+
return { changed: 0, result: target };
|
|
19
|
+
}
|
|
20
|
+
let changed = 0;
|
|
21
|
+
const result = Array.isArray(target)
|
|
22
|
+
? (options?.clone ? target.slice() : target)
|
|
23
|
+
: [];
|
|
24
|
+
const comparator = options?.comparator || DefaultComparator;
|
|
25
|
+
const updater = options?.updater || DefaultUpdater;
|
|
26
|
+
const onDeleted = options?.hooks?.onDeleted;
|
|
27
|
+
const onUpdate = options?.hooks?.onUpdated;
|
|
28
|
+
const onAdded = options?.hooks?.onAdded;
|
|
29
|
+
// remove all missing elements
|
|
30
|
+
if (!options?.additive) {
|
|
31
|
+
for (let i = 0; i < result.length; ++i) {
|
|
32
|
+
if (source.find(item => comparator(item, result[i])) == null) {
|
|
33
|
+
// DELETE
|
|
34
|
+
const removed = result.splice(i, 1);
|
|
35
|
+
onDeleted?.(removed[0], i);
|
|
36
|
+
++changed;
|
|
37
|
+
--i;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
const unshift = options?.unshift || false;
|
|
42
|
+
// add all new elements and update existing
|
|
43
|
+
source.forEach(item => {
|
|
44
|
+
const existingIndex = result.findIndex(i => comparator(item, i));
|
|
45
|
+
const existingItem = result[existingIndex];
|
|
46
|
+
if (existingIndex < 0) {
|
|
47
|
+
if (unshift) {
|
|
48
|
+
result.unshift(item);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
result.push(item);
|
|
52
|
+
}
|
|
53
|
+
onAdded?.(item, unshift ? 0 : result.length - 1);
|
|
54
|
+
++changed;
|
|
55
|
+
}
|
|
56
|
+
else if (typeof existingItem === 'object') {
|
|
57
|
+
const before = onUpdate != null ? { ...existingItem } : undefined;
|
|
58
|
+
result[existingIndex] = updater(existingItem, item);
|
|
59
|
+
if (onUpdate != null) {
|
|
60
|
+
onUpdate(before, result[existingIndex], existingIndex);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
const sorter = options?.sorter;
|
|
65
|
+
if (sorter !== null) {
|
|
66
|
+
result.sort(sorter || undefined);
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
result,
|
|
70
|
+
changed,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/fields/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Getter } from '../types';
|
|
2
|
+
import logger from '../logger';
|
|
3
|
+
export function assert(condition, error, objectToLog) {
|
|
4
|
+
if (condition) {
|
|
5
|
+
return;
|
|
6
|
+
}
|
|
7
|
+
const e = Getter.getValue(error);
|
|
8
|
+
if (objectToLog) {
|
|
9
|
+
logger.error('Assertion failed:', e, Getter.getValue(objectToLog));
|
|
10
|
+
}
|
|
11
|
+
if (typeof e === 'string') {
|
|
12
|
+
throw new Error(e);
|
|
13
|
+
}
|
|
14
|
+
throw e;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=assert.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assert.js","sourceRoot":"","sources":["../../../src/functions/assert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,MAAM,MAAM,WAAW,CAAC;AAE/B,MAAM,UAAU,MAAM,CAAC,SAAkB,EAAE,KAA6B,EAAE,WAAyB;IAC/F,IAAI,SAAS,EAAE,CAAC;QACZ,OAAO;IACX,CAAC;IAED,MAAM,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,WAAW,EAAE,CAAC;QACd,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IACvB,CAAC;IAED,MAAM,CAAC,CAAC;AACZ,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import logger from '../logger';
|
|
2
|
+
export class Disposer {
|
|
3
|
+
_disposers = [];
|
|
4
|
+
_map = new Map();
|
|
5
|
+
_loggerName = null;
|
|
6
|
+
constructor(loggerName = null) {
|
|
7
|
+
this._loggerName = loggerName;
|
|
8
|
+
}
|
|
9
|
+
setLoggerName(loggerName) {
|
|
10
|
+
this._loggerName = loggerName;
|
|
11
|
+
return this;
|
|
12
|
+
}
|
|
13
|
+
add(d, id) {
|
|
14
|
+
if (!d) {
|
|
15
|
+
return;
|
|
16
|
+
}
|
|
17
|
+
const dd = typeof d !== 'function'
|
|
18
|
+
? (() => d.dispose ? d.dispose() : null)
|
|
19
|
+
: d;
|
|
20
|
+
this._disposers.push(dd);
|
|
21
|
+
if (id) {
|
|
22
|
+
// dispose previous identified disposer
|
|
23
|
+
if (this._map.has(id)) {
|
|
24
|
+
this.execute(id);
|
|
25
|
+
}
|
|
26
|
+
this._map.set(id, dd);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
execute(id) {
|
|
30
|
+
const d = this._map.get(id);
|
|
31
|
+
if (!d) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
this._map.delete(id);
|
|
35
|
+
const i = this._disposers.indexOf(d);
|
|
36
|
+
if (i >= 0) {
|
|
37
|
+
this._disposers.splice(i, 1);
|
|
38
|
+
}
|
|
39
|
+
d();
|
|
40
|
+
}
|
|
41
|
+
dispose(log = false) {
|
|
42
|
+
if (log) {
|
|
43
|
+
logger.log(`[Disposer:${this._loggerName || '<unknown>'}] Disposing ${this._disposers.length} items including named ones:`, Array.from(this._map.entries()).map(e => e[0]));
|
|
44
|
+
}
|
|
45
|
+
const copy = this._disposers.slice().reverse();
|
|
46
|
+
this._disposers.length = 0;
|
|
47
|
+
this._map.clear();
|
|
48
|
+
// this should separate side effects
|
|
49
|
+
copy.forEach(d => d());
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
export function combineDisposers(...items) {
|
|
53
|
+
return () => items.forEach(i => i());
|
|
54
|
+
}
|
|
55
|
+
export class Disposable {
|
|
56
|
+
disposer;
|
|
57
|
+
_isDisposed = false;
|
|
58
|
+
constructor(loggerName = null) {
|
|
59
|
+
this.disposer = new Disposer(loggerName);
|
|
60
|
+
}
|
|
61
|
+
dispose = () => {
|
|
62
|
+
this._isDisposed = true;
|
|
63
|
+
this.disposer.dispose();
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=disposer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"disposer.js","sourceRoot":"","sources":["../../../src/functions/disposer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// Symbol.dispose ??= Symbol('Symbol.dispose');
|
|
2
|
+
if (!('dispose' in Symbol)) {
|
|
3
|
+
// @ts-expect-error polyfill for Symbol.dispose
|
|
4
|
+
Symbol.dispose = Symbol('Symbol.dispose');
|
|
5
|
+
}
|
|
6
|
+
// Symbol.asyncDispose ??= Symbol('Symbol.asyncDispose');
|
|
7
|
+
if (!('asyncDispose' in Symbol)) {
|
|
8
|
+
// @ts-expect-error polyfill for Symbol.asyncDispose
|
|
9
|
+
Symbol.asyncDispose = Symbol('Symbol.asyncDispose');
|
|
10
|
+
}
|
|
11
|
+
// for demonstration purposes, but use as base class if needed
|
|
12
|
+
export class SymbolDisposable {
|
|
13
|
+
[Symbol.dispose] = () => this.dispose();
|
|
14
|
+
}
|
|
15
|
+
export function makeSymbolDisposable(obj) {
|
|
16
|
+
const fn = () => obj.dispose();
|
|
17
|
+
Object.defineProperty(obj, Symbol.dispose, {
|
|
18
|
+
get() {
|
|
19
|
+
return fn;
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
return obj;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=disposer.symbols.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"disposer.symbols.js","sourceRoot":"","sources":["../../../src/functions/disposer.symbols.ts"],"names":[],"mappings":"AAEA,+CAA+C;AAC/C,IAAI,CAAC,CAAC,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC;IACzB,+CAA+C;IAC/C,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAC9C,CAAC;AAED,yDAAyD;AACzD,IAAI,CAAC,CAAC,cAAc,IAAI,MAAM,CAAC,EAAE,CAAC;IAC9B,oDAAoD;IACpD,MAAM,CAAC,YAAY,GAAG,MAAM,CAAC,qBAAqB,CAAC,CAAC;AACxD,CAAC;AAED,8DAA8D;AAC9D,MAAM,OAAgB,gBAAgB;IAElC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;CAG3C;AAGD,MAAM,UAAU,oBAAoB,CAAwB,GAAM;IAC9D,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;IAE/B,MAAM,CAAC,cAAc,CACjB,GAAG,EACH,MAAM,CAAC,OAAO,EACd;QACI,GAAG;YACC,OAAO,EAAE,CAAC;QACd,CAAC;KACJ,CACJ,CAAC;IAEF,OAAO,GAA2B,CAAC;AACvC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"safe.js","sourceRoot":"","sources":["../../../src/functions/safe.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,YAAY,CAAC,OAA4B,EAAE,EAAuB;IAC9E,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AACrD,CAAC"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { createManualPromise } from '../async/misc';
|
|
2
|
+
import { createLogger } from '../logger';
|
|
3
|
+
import { random } from '../math';
|
|
4
|
+
import { catchPromise } from './safe';
|
|
5
|
+
/** Runs a callback after a timeout, ignoring all consecutive calls until the first is processed. */
|
|
6
|
+
export class ThrottleAction {
|
|
7
|
+
timeout;
|
|
8
|
+
_timeoutRef = null;
|
|
9
|
+
_postponedCb = null;
|
|
10
|
+
_locked = false;
|
|
11
|
+
_logger = null;
|
|
12
|
+
/**
|
|
13
|
+
* In case previous action has started processing but not finished yet, and the following one is going to start,
|
|
14
|
+
* this flag allows to run the second in parallel.
|
|
15
|
+
*/
|
|
16
|
+
_allowParallelRuns = false;
|
|
17
|
+
_currentRun = null;
|
|
18
|
+
constructor(timeout = 1000) {
|
|
19
|
+
this.timeout = timeout;
|
|
20
|
+
}
|
|
21
|
+
useParallelRuns() {
|
|
22
|
+
this._allowParallelRuns = true;
|
|
23
|
+
return this;
|
|
24
|
+
}
|
|
25
|
+
useLogger(logger) {
|
|
26
|
+
if (typeof logger === 'string') {
|
|
27
|
+
this._logger = createLogger(logger);
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
this._logger = logger;
|
|
31
|
+
}
|
|
32
|
+
return this;
|
|
33
|
+
}
|
|
34
|
+
clear() {
|
|
35
|
+
if (this._timeoutRef) {
|
|
36
|
+
clearTimeout(this._timeoutRef);
|
|
37
|
+
}
|
|
38
|
+
this._timeoutRef = null;
|
|
39
|
+
this._postponedCb = null;
|
|
40
|
+
}
|
|
41
|
+
tryRun(cb, restartTimeout = false) {
|
|
42
|
+
if (!this._timeoutRef) { // start new timeout
|
|
43
|
+
if (!this._currentRun) {
|
|
44
|
+
this._currentRun = createManualPromise();
|
|
45
|
+
}
|
|
46
|
+
const result = this._currentRun.promise;
|
|
47
|
+
this._postponedCb = cb;
|
|
48
|
+
this._timeoutRef = setTimeout(() => catchPromise(this.forceRun()), this.timeout);
|
|
49
|
+
return result;
|
|
50
|
+
}
|
|
51
|
+
if (restartTimeout) {
|
|
52
|
+
this.clear();
|
|
53
|
+
return this.tryRun(cb, false);
|
|
54
|
+
}
|
|
55
|
+
return this.getPromise();
|
|
56
|
+
}
|
|
57
|
+
forceRun = async () => {
|
|
58
|
+
const cb = this._postponedCb;
|
|
59
|
+
const p = this._currentRun;
|
|
60
|
+
this._currentRun = null;
|
|
61
|
+
this.clear();
|
|
62
|
+
if (!this._allowParallelRuns && this._locked) {
|
|
63
|
+
// This happening when the previous call is still running, while the new one has finished its timeout and is willing to run.
|
|
64
|
+
// This is probably OK since the running call should cover the current one.
|
|
65
|
+
// TODO Maybe just don't start timeout if the lock is set?
|
|
66
|
+
// The reason for not doing that 👆 is there's still a valid case when previous is still working but it's legit to start a new one (e.g. some state has changed already)
|
|
67
|
+
this._logger?.warn('[ThrottleAction] THROTTLE LOCKED, but another call is forced. Skipping since the behavior is undefined.');
|
|
68
|
+
}
|
|
69
|
+
else if (cb) {
|
|
70
|
+
let result = undefined;
|
|
71
|
+
const lockId = random(1, 1_000_000);
|
|
72
|
+
try {
|
|
73
|
+
this._locked = lockId;
|
|
74
|
+
result = await cb();
|
|
75
|
+
p?.resolve(result);
|
|
76
|
+
return result;
|
|
77
|
+
}
|
|
78
|
+
catch (err) {
|
|
79
|
+
p?.reject(err);
|
|
80
|
+
return undefined;
|
|
81
|
+
}
|
|
82
|
+
finally {
|
|
83
|
+
if (this._locked === lockId) {
|
|
84
|
+
this._locked = false;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
getPromise() {
|
|
90
|
+
return this._currentRun?.promise || Promise.resolve(undefined);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
export class ThrottleProcessor {
|
|
94
|
+
process;
|
|
95
|
+
_queue = [];
|
|
96
|
+
_action;
|
|
97
|
+
_promise = null;
|
|
98
|
+
constructor(process, timeout = 1000) {
|
|
99
|
+
this.process = process;
|
|
100
|
+
if (!process) {
|
|
101
|
+
throw new Error('Arg0 expected: process');
|
|
102
|
+
}
|
|
103
|
+
this._action = new ThrottleAction(timeout)
|
|
104
|
+
.useParallelRuns();
|
|
105
|
+
}
|
|
106
|
+
useLogger(logger) {
|
|
107
|
+
this._action.useLogger(logger);
|
|
108
|
+
return this;
|
|
109
|
+
}
|
|
110
|
+
async push(data) {
|
|
111
|
+
const index = this._queue.push(data) - 1;
|
|
112
|
+
const res = await this._action.tryRun(this._process, true);
|
|
113
|
+
return {
|
|
114
|
+
result: res,
|
|
115
|
+
index,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
_process = async () => {
|
|
119
|
+
if (!this._queue.length) {
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
const objs = this._queue.slice();
|
|
123
|
+
this._queue.length = 0;
|
|
124
|
+
return this.process(objs);
|
|
125
|
+
};
|
|
126
|
+
clear() {
|
|
127
|
+
this._action.clear();
|
|
128
|
+
this._promise?.resolve(undefined);
|
|
129
|
+
this._promise = null;
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=throttle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"throttle.js","sourceRoot":"","sources":["../../../src/functions/throttle.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export function createLazy(factory) {
|
|
2
|
+
const _factory = factory;
|
|
3
|
+
let _instance = undefined;
|
|
4
|
+
const res = {
|
|
5
|
+
get value() {
|
|
6
|
+
if (_instance === undefined) {
|
|
7
|
+
_instance = _factory();
|
|
8
|
+
}
|
|
9
|
+
return _instance;
|
|
10
|
+
},
|
|
11
|
+
get currentValue() { return _instance; },
|
|
12
|
+
get hasValue() { return _instance !== undefined; },
|
|
13
|
+
reset: () => {
|
|
14
|
+
_instance = undefined;
|
|
15
|
+
},
|
|
16
|
+
dispose: () => res.reset(),
|
|
17
|
+
};
|
|
18
|
+
return res;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=light.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"light.js","sourceRoot":"","sources":["../../../src/lazy/light.ts"],"names":[],"mappings":"AAEA,MAAM,UAAU,UAAU,CAAI,OAAgB;IAC1C,MAAM,QAAQ,GAAG,OAAO,CAAC;IACzB,IAAI,SAAS,GAAkB,SAAS,CAAC;IAEzC,MAAM,GAAG,GAAa;QAClB,IAAI,KAAK;YACL,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC1B,SAAS,GAAG,QAAQ,EAAE,CAAC;YAC3B,CAAC;YACD,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,IAAI,YAAY,KAAK,OAAO,SAAS,CAAC,CAAC,CAAC;QACxC,IAAI,QAAQ,KAAK,OAAO,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC;QAClD,KAAK,EAAE,GAAG,EAAE;YACR,SAAS,GAAG,SAAS,CAAC;QAC1B,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,KAAK,EAAE;KAC7B,CAAC;IAEF,OAAO,GAAG,CAAC;AACf,CAAC"}
|