@dereekb/util 10.0.4 → 10.0.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/fetch/CHANGELOG.md +8 -0
- package/fetch/package.json +3 -3
- package/index.cjs.d.ts +1 -0
- package/index.cjs.default.js +1 -0
- package/index.cjs.js +14375 -0
- package/index.cjs.mjs +2 -0
- package/index.esm.js +15743 -0
- package/package.json +17 -18
- package/src/lib/array/array.boolean.d.ts +2 -2
- package/src/lib/array/array.d.ts +1 -1
- package/src/lib/array/array.factory.d.ts +2 -2
- package/src/lib/array/array.filter.d.ts +2 -2
- package/src/lib/array/array.find.d.ts +1 -1
- package/src/lib/array/array.index.d.ts +2 -2
- package/src/lib/array/array.indexed.d.ts +3 -3
- package/src/lib/array/array.limit.d.ts +1 -1
- package/src/lib/array/array.make.d.ts +2 -2
- package/src/lib/array/array.map.d.ts +2 -2
- package/src/lib/array/array.number.d.ts +1 -1
- package/src/lib/array/array.random.d.ts +1 -1
- package/src/lib/array/array.string.d.ts +3 -3
- package/src/lib/array/array.unique.d.ts +2 -2
- package/src/lib/array/array.value.d.ts +1 -1
- package/src/lib/assertion/assert.error.d.ts +2 -2
- package/src/lib/assertion/assertion.d.ts +1 -1
- package/src/lib/assertion/assertion.generic.d.ts +2 -2
- package/src/lib/assertion/assertion.number.d.ts +1 -1
- package/src/lib/auth/auth.role.claims.d.ts +3 -3
- package/src/lib/auth/auth.role.d.ts +1 -1
- package/src/lib/boolean.d.ts +1 -1
- package/src/lib/contact/domain.d.ts +1 -1
- package/src/lib/contact/phone.d.ts +1 -1
- package/src/lib/contact/random.d.ts +6 -6
- package/src/lib/date/date.d.ts +8 -1
- package/src/lib/date/date.time.d.ts +1 -1
- package/src/lib/date/hour.d.ts +2 -2
- package/src/lib/date/week.d.ts +2 -2
- package/src/lib/error/error.d.ts +1 -1
- package/src/lib/error/error.server.d.ts +2 -2
- package/src/lib/filter/filter.d.ts +1 -1
- package/src/lib/function/function.forward.d.ts +2 -2
- package/src/lib/getter/getter.cache.d.ts +1 -1
- package/src/lib/getter/getter.d.ts +5 -5
- package/src/lib/getter/getter.map.d.ts +2 -2
- package/src/lib/getter/getter.util.d.ts +1 -1
- package/src/lib/getter/type.d.ts +1 -1
- package/src/lib/grouping.d.ts +5 -5
- package/src/lib/iterable/iterable.d.ts +3 -3
- package/src/lib/key.d.ts +3 -18
- package/src/lib/lifecycle.d.ts +1 -1
- package/src/lib/map/map.d.ts +2 -2
- package/src/lib/map/map.intersection.d.ts +1 -1
- package/src/lib/map/map.key.d.ts +3 -3
- package/src/lib/misc/host.d.ts +1 -1
- package/src/lib/model/id.batch.d.ts +4 -4
- package/src/lib/model/model.conversion.d.ts +5 -5
- package/src/lib/model/model.conversion.field.d.ts +1 -1
- package/src/lib/model/model.copy.d.ts +1 -1
- package/src/lib/model/model.d.ts +3 -3
- package/src/lib/model/model.modify.d.ts +4 -4
- package/src/lib/number/bitwise.dencoder.d.ts +1 -1
- package/src/lib/number/bound.d.ts +1 -1
- package/src/lib/number/dollar.d.ts +1 -1
- package/src/lib/number/factory.d.ts +1 -1
- package/src/lib/number/number.d.ts +3 -3
- package/src/lib/number/random.d.ts +2 -2
- package/src/lib/number/round.d.ts +3 -3
- package/src/lib/number/sort.d.ts +2 -2
- package/src/lib/number/transform.d.ts +3 -3
- package/src/lib/object/index.d.ts +1 -0
- package/src/lib/object/object.array.d.ts +1 -1
- package/src/lib/object/object.array.delta.d.ts +3 -3
- package/src/lib/object/object.d.ts +3 -3
- package/src/lib/object/object.empty.d.ts +1 -1
- package/src/lib/object/object.equal.d.ts +2 -2
- package/src/lib/object/object.filter.pojo.d.ts +3 -3
- package/src/lib/object/object.filter.tuple.d.ts +2 -2
- package/src/lib/object/object.key.d.ts +17 -0
- package/src/lib/object/object.map.d.ts +1 -1
- package/src/lib/page/page.calculator.d.ts +1 -1
- package/src/lib/page/page.d.ts +1 -1
- package/src/lib/page/page.filter.d.ts +3 -3
- package/src/lib/path/path.d.ts +4 -4
- package/src/lib/promise/callback.d.ts +1 -1
- package/src/lib/promise/map.d.ts +1 -1
- package/src/lib/promise/promise.d.ts +3 -3
- package/src/lib/promise/promise.loop.d.ts +2 -2
- package/src/lib/promise/use.d.ts +2 -2
- package/src/lib/relation/relation.d.ts +1 -1
- package/src/lib/service/handler.config.d.ts +4 -4
- package/src/lib/service/handler.d.ts +3 -3
- package/src/lib/service/typed.service.d.ts +1 -1
- package/src/lib/set/set.allowed.d.ts +2 -2
- package/src/lib/set/set.d.ts +6 -6
- package/src/lib/set/set.decision.d.ts +1 -1
- package/src/lib/set/set.delta.d.ts +1 -1
- package/src/lib/set/set.hashset.d.ts +2 -2
- package/src/lib/set/set.maybe.d.ts +2 -2
- package/src/lib/set/set.selection.d.ts +2 -2
- package/src/lib/sort.d.ts +2 -2
- package/src/lib/storage/storage.d.ts +1 -1
- package/src/lib/storage/storage.error.d.ts +1 -1
- package/src/lib/storage/storage.memory.d.ts +2 -2
- package/src/lib/storage/storage.object.d.ts +2 -2
- package/src/lib/string/char.d.ts +2 -2
- package/src/lib/string/dencoder.d.ts +2 -1
- package/src/lib/string/html.d.ts +2 -2
- package/src/lib/string/replace.d.ts +3 -3
- package/src/lib/string/search.d.ts +2 -2
- package/src/lib/string/sort.d.ts +2 -2
- package/src/lib/string/string.d.ts +2 -2
- package/src/lib/string/transform.d.ts +1 -1
- package/src/lib/string/url.d.ts +6 -6
- package/src/lib/tree/tree.array.d.ts +3 -3
- package/src/lib/tree/tree.expand.d.ts +2 -2
- package/src/lib/tree/tree.flatten.d.ts +1 -1
- package/src/lib/type.d.ts +2 -2
- package/src/lib/value/address.d.ts +1 -1
- package/src/lib/value/bound.d.ts +5 -5
- package/src/lib/value/build.d.ts +1 -1
- package/src/lib/value/comparator.d.ts +2 -2
- package/src/lib/value/cron.d.ts +1 -1
- package/src/lib/value/decision.d.ts +3 -3
- package/src/lib/value/equal.d.ts +2 -2
- package/src/lib/value/indexed.d.ts +6 -6
- package/src/lib/value/map.d.ts +3 -3
- package/src/lib/value/maybe.d.ts +1 -1
- package/src/lib/value/maybe.type.d.ts +1 -1
- package/src/lib/value/modifier.d.ts +2 -2
- package/src/lib/value/point.d.ts +3 -3
- package/src/lib/value/use.d.ts +4 -4
- package/src/lib/value/vector.d.ts +1 -1
- package/test/index.cjs.d.ts +1 -0
- package/test/index.cjs.default.js +1 -0
- package/test/index.cjs.js +555 -0
- package/test/index.cjs.mjs +2 -0
- package/test/index.esm.js +2796 -0
- package/test/package.json +11 -2
- package/CHANGELOG.md +0 -1793
- package/src/index.js +0 -5
- package/src/index.js.map +0 -1
- package/src/lib/array/array.boolean.js +0 -69
- package/src/lib/array/array.boolean.js.map +0 -1
- package/src/lib/array/array.factory.js +0 -25
- package/src/lib/array/array.factory.js.map +0 -1
- package/src/lib/array/array.filter.js +0 -107
- package/src/lib/array/array.filter.js.map +0 -1
- package/src/lib/array/array.find.js +0 -24
- package/src/lib/array/array.find.js.map +0 -1
- package/src/lib/array/array.index.js +0 -71
- package/src/lib/array/array.index.js.map +0 -1
- package/src/lib/array/array.indexed.js +0 -142
- package/src/lib/array/array.indexed.js.map +0 -1
- package/src/lib/array/array.js +0 -237
- package/src/lib/array/array.js.map +0 -1
- package/src/lib/array/array.limit.js +0 -19
- package/src/lib/array/array.limit.js.map +0 -1
- package/src/lib/array/array.make.js +0 -19
- package/src/lib/array/array.make.js.map +0 -1
- package/src/lib/array/array.map.js +0 -38
- package/src/lib/array/array.map.js.map +0 -1
- package/src/lib/array/array.number.js +0 -82
- package/src/lib/array/array.number.js.map +0 -1
- package/src/lib/array/array.random.js +0 -48
- package/src/lib/array/array.random.js.map +0 -1
- package/src/lib/array/array.set.js +0 -34
- package/src/lib/array/array.set.js.map +0 -1
- package/src/lib/array/array.string.js +0 -74
- package/src/lib/array/array.string.js.map +0 -1
- package/src/lib/array/array.unique.js +0 -75
- package/src/lib/array/array.unique.js.map +0 -1
- package/src/lib/array/array.value.js +0 -55
- package/src/lib/array/array.value.js.map +0 -1
- package/src/lib/array/index.js +0 -20
- package/src/lib/array/index.js.map +0 -1
- package/src/lib/assertion/assert.error.js +0 -43
- package/src/lib/assertion/assert.error.js.map +0 -1
- package/src/lib/assertion/assert.js +0 -3
- package/src/lib/assertion/assert.js.map +0 -1
- package/src/lib/assertion/assertion.generic.js +0 -10
- package/src/lib/assertion/assertion.generic.js.map +0 -1
- package/src/lib/assertion/assertion.js +0 -40
- package/src/lib/assertion/assertion.js.map +0 -1
- package/src/lib/assertion/assertion.number.js +0 -20
- package/src/lib/assertion/assertion.number.js.map +0 -1
- package/src/lib/assertion/index.js +0 -9
- package/src/lib/assertion/index.js.map +0 -1
- package/src/lib/auth/auth.role.claims.js +0 -111
- package/src/lib/auth/auth.role.claims.js.map +0 -1
- package/src/lib/auth/auth.role.js +0 -25
- package/src/lib/auth/auth.role.js.map +0 -1
- package/src/lib/auth/index.js +0 -6
- package/src/lib/auth/index.js.map +0 -1
- package/src/lib/boolean.js +0 -57
- package/src/lib/boolean.js.map +0 -1
- package/src/lib/contact/domain.js +0 -45
- package/src/lib/contact/domain.js.map +0 -1
- package/src/lib/contact/email.js +0 -32
- package/src/lib/contact/email.js.map +0 -1
- package/src/lib/contact/index.js +0 -8
- package/src/lib/contact/index.js.map +0 -1
- package/src/lib/contact/phone.js +0 -71
- package/src/lib/contact/phone.js.map +0 -1
- package/src/lib/contact/random.js +0 -50
- package/src/lib/contact/random.js.map +0 -1
- package/src/lib/date/date.js +0 -132
- package/src/lib/date/date.js.map +0 -1
- package/src/lib/date/date.time.js +0 -39
- package/src/lib/date/date.time.js.map +0 -1
- package/src/lib/date/hour.js +0 -44
- package/src/lib/date/hour.js.map +0 -1
- package/src/lib/date/index.js +0 -8
- package/src/lib/date/index.js.map +0 -1
- package/src/lib/date/week.js +0 -175
- package/src/lib/date/week.js.map +0 -1
- package/src/lib/error/error.js +0 -68
- package/src/lib/error/error.js.map +0 -1
- package/src/lib/error/error.server.js +0 -42
- package/src/lib/error/error.server.js.map +0 -1
- package/src/lib/error/index.js +0 -6
- package/src/lib/error/index.js.map +0 -1
- package/src/lib/file/index.js +0 -5
- package/src/lib/file/index.js.map +0 -1
- package/src/lib/file/xml.js +0 -3
- package/src/lib/file/xml.js.map +0 -1
- package/src/lib/filter/filter.js +0 -37
- package/src/lib/filter/filter.js.map +0 -1
- package/src/lib/filter/index.js +0 -5
- package/src/lib/filter/index.js.map +0 -1
- package/src/lib/function/function.boolean.js +0 -23
- package/src/lib/function/function.boolean.js.map +0 -1
- package/src/lib/function/function.forward.js +0 -24
- package/src/lib/function/function.forward.js.map +0 -1
- package/src/lib/function/function.js +0 -14
- package/src/lib/function/function.js.map +0 -1
- package/src/lib/function/index.js +0 -7
- package/src/lib/function/index.js.map +0 -1
- package/src/lib/getter/getter.cache.js +0 -23
- package/src/lib/getter/getter.cache.js.map +0 -1
- package/src/lib/getter/getter.js +0 -99
- package/src/lib/getter/getter.js.map +0 -1
- package/src/lib/getter/getter.map.js +0 -24
- package/src/lib/getter/getter.map.js.map +0 -1
- package/src/lib/getter/getter.util.js +0 -16
- package/src/lib/getter/getter.util.js.map +0 -1
- package/src/lib/getter/index.js +0 -9
- package/src/lib/getter/index.js.map +0 -1
- package/src/lib/getter/type.js +0 -3
- package/src/lib/getter/type.js.map +0 -1
- package/src/lib/grouping.js +0 -198
- package/src/lib/grouping.js.map +0 -1
- package/src/lib/hash.js +0 -21
- package/src/lib/hash.js.map +0 -1
- package/src/lib/index.js +0 -39
- package/src/lib/index.js.map +0 -1
- package/src/lib/iterable/index.js +0 -6
- package/src/lib/iterable/index.js.map +0 -1
- package/src/lib/iterable/iterable.js +0 -177
- package/src/lib/iterable/iterable.js.map +0 -1
- package/src/lib/iterable/iterable.map.js +0 -18
- package/src/lib/iterable/iterable.map.js.map +0 -1
- package/src/lib/iterate.js +0 -16
- package/src/lib/iterate.js.map +0 -1
- package/src/lib/key.js +0 -107
- package/src/lib/key.js.map +0 -1
- package/src/lib/lifecycle.js +0 -34
- package/src/lib/lifecycle.js.map +0 -1
- package/src/lib/map/index.js +0 -7
- package/src/lib/map/index.js.map +0 -1
- package/src/lib/map/map.intersection.js +0 -24
- package/src/lib/map/map.intersection.js.map +0 -1
- package/src/lib/map/map.js +0 -68
- package/src/lib/map/map.js.map +0 -1
- package/src/lib/map/map.key.js +0 -110
- package/src/lib/map/map.key.js.map +0 -1
- package/src/lib/misc/host.js +0 -13
- package/src/lib/misc/host.js.map +0 -1
- package/src/lib/misc/index.js +0 -5
- package/src/lib/misc/index.js.map +0 -1
- package/src/lib/model/id.batch.js +0 -58
- package/src/lib/model/id.batch.js.map +0 -1
- package/src/lib/model/index.js +0 -10
- package/src/lib/model/index.js.map +0 -1
- package/src/lib/model/model.conversion.field.js +0 -23
- package/src/lib/model/model.conversion.field.js.map +0 -1
- package/src/lib/model/model.conversion.js +0 -112
- package/src/lib/model/model.conversion.js.map +0 -1
- package/src/lib/model/model.copy.js +0 -20
- package/src/lib/model/model.copy.js.map +0 -1
- package/src/lib/model/model.js +0 -150
- package/src/lib/model/model.js.map +0 -1
- package/src/lib/model/model.modify.js +0 -51
- package/src/lib/model/model.modify.js.map +0 -1
- package/src/lib/nodejs/index.js +0 -5
- package/src/lib/nodejs/index.js.map +0 -1
- package/src/lib/nodejs/stream.js +0 -34
- package/src/lib/nodejs/stream.js.map +0 -1
- package/src/lib/number/bitwise.dencoder.js +0 -84
- package/src/lib/number/bitwise.dencoder.js.map +0 -1
- package/src/lib/number/bound.js +0 -60
- package/src/lib/number/bound.js.map +0 -1
- package/src/lib/number/dollar.js +0 -36
- package/src/lib/number/dollar.js.map +0 -1
- package/src/lib/number/factory.js +0 -22
- package/src/lib/number/factory.js.map +0 -1
- package/src/lib/number/index.js +0 -13
- package/src/lib/number/index.js.map +0 -1
- package/src/lib/number/number.js +0 -118
- package/src/lib/number/number.js.map +0 -1
- package/src/lib/number/pay.js +0 -3
- package/src/lib/number/pay.js.map +0 -1
- package/src/lib/number/random.js +0 -35
- package/src/lib/number/random.js.map +0 -1
- package/src/lib/number/round.js +0 -140
- package/src/lib/number/round.js.map +0 -1
- package/src/lib/number/sort.js +0 -16
- package/src/lib/number/sort.js.map +0 -1
- package/src/lib/number/transform.js +0 -21
- package/src/lib/number/transform.js.map +0 -1
- package/src/lib/object/index.js +0 -12
- package/src/lib/object/index.js.map +0 -1
- package/src/lib/object/object.array.delta.js +0 -87
- package/src/lib/object/object.array.delta.js.map +0 -1
- package/src/lib/object/object.array.js +0 -35
- package/src/lib/object/object.array.js.map +0 -1
- package/src/lib/object/object.empty.js +0 -27
- package/src/lib/object/object.empty.js.map +0 -1
- package/src/lib/object/object.equal.js +0 -47
- package/src/lib/object/object.equal.js.map +0 -1
- package/src/lib/object/object.filter.pojo.js +0 -260
- package/src/lib/object/object.filter.pojo.js.map +0 -1
- package/src/lib/object/object.filter.tuple.js +0 -124
- package/src/lib/object/object.filter.tuple.js.map +0 -1
- package/src/lib/object/object.js +0 -43
- package/src/lib/object/object.js.map +0 -1
- package/src/lib/object/object.map.js +0 -62
- package/src/lib/object/object.map.js.map +0 -1
- package/src/lib/page/index.js +0 -7
- package/src/lib/page/index.js.map +0 -1
- package/src/lib/page/page.calculator.js +0 -37
- package/src/lib/page/page.calculator.js.map +0 -1
- package/src/lib/page/page.filter.js +0 -50
- package/src/lib/page/page.filter.js.map +0 -1
- package/src/lib/page/page.js +0 -30
- package/src/lib/page/page.js.map +0 -1
- package/src/lib/path/index.js +0 -5
- package/src/lib/path/index.js.map +0 -1
- package/src/lib/path/path.js +0 -272
- package/src/lib/path/path.js.map +0 -1
- package/src/lib/promise/callback.js +0 -21
- package/src/lib/promise/callback.js.map +0 -1
- package/src/lib/promise/index.js +0 -14
- package/src/lib/promise/index.js.map +0 -1
- package/src/lib/promise/is.js +0 -20
- package/src/lib/promise/is.js.map +0 -1
- package/src/lib/promise/map.js +0 -14
- package/src/lib/promise/map.js.map +0 -1
- package/src/lib/promise/poll.js +0 -16
- package/src/lib/promise/poll.js.map +0 -1
- package/src/lib/promise/promise.js +0 -197
- package/src/lib/promise/promise.js.map +0 -1
- package/src/lib/promise/promise.loop.js +0 -59
- package/src/lib/promise/promise.loop.js.map +0 -1
- package/src/lib/promise/promise.ref.js +0 -19
- package/src/lib/promise/promise.ref.js.map +0 -1
- package/src/lib/promise/promise.type.js +0 -14
- package/src/lib/promise/promise.type.js.map +0 -1
- package/src/lib/promise/use.js +0 -16
- package/src/lib/promise/use.js.map +0 -1
- package/src/lib/promise/wait.js +0 -11
- package/src/lib/promise/wait.js.map +0 -1
- package/src/lib/relation/index.js +0 -5
- package/src/lib/relation/index.js.map +0 -1
- package/src/lib/relation/relation.js +0 -209
- package/src/lib/relation/relation.js.map +0 -1
- package/src/lib/service/handler.config.js +0 -61
- package/src/lib/service/handler.config.js.map +0 -1
- package/src/lib/service/handler.js +0 -55
- package/src/lib/service/handler.js.map +0 -1
- package/src/lib/service/index.js +0 -7
- package/src/lib/service/index.js.map +0 -1
- package/src/lib/service/typed.service.js +0 -41
- package/src/lib/service/typed.service.js.map +0 -1
- package/src/lib/set/index.js +0 -12
- package/src/lib/set/index.js.map +0 -1
- package/src/lib/set/set.allowed.js +0 -29
- package/src/lib/set/set.allowed.js.map +0 -1
- package/src/lib/set/set.decision.js +0 -15
- package/src/lib/set/set.decision.js.map +0 -1
- package/src/lib/set/set.delta.js +0 -91
- package/src/lib/set/set.delta.js.map +0 -1
- package/src/lib/set/set.hashset.js +0 -90
- package/src/lib/set/set.hashset.js.map +0 -1
- package/src/lib/set/set.js +0 -387
- package/src/lib/set/set.js.map +0 -1
- package/src/lib/set/set.maybe.js +0 -22
- package/src/lib/set/set.maybe.js.map +0 -1
- package/src/lib/set/set.mode.js +0 -3
- package/src/lib/set/set.mode.js.map +0 -1
- package/src/lib/set/set.selection.js +0 -21
- package/src/lib/set/set.selection.js.map +0 -1
- package/src/lib/sort.js +0 -92
- package/src/lib/sort.js.map +0 -1
- package/src/lib/storage/index.js +0 -8
- package/src/lib/storage/index.js.map +0 -1
- package/src/lib/storage/storage.error.js +0 -24
- package/src/lib/storage/storage.error.js.map +0 -1
- package/src/lib/storage/storage.js +0 -3
- package/src/lib/storage/storage.js.map +0 -1
- package/src/lib/storage/storage.memory.js +0 -48
- package/src/lib/storage/storage.memory.js.map +0 -1
- package/src/lib/storage/storage.object.js +0 -42
- package/src/lib/storage/storage.object.js.map +0 -1
- package/src/lib/string/char.js +0 -124
- package/src/lib/string/char.js.map +0 -1
- package/src/lib/string/dencoder.js +0 -106
- package/src/lib/string/dencoder.js.map +0 -1
- package/src/lib/string/html.js +0 -44
- package/src/lib/string/html.js.map +0 -1
- package/src/lib/string/index.js +0 -14
- package/src/lib/string/index.js.map +0 -1
- package/src/lib/string/password.js +0 -3
- package/src/lib/string/password.js.map +0 -1
- package/src/lib/string/replace.js +0 -181
- package/src/lib/string/replace.js.map +0 -1
- package/src/lib/string/search.js +0 -39
- package/src/lib/string/search.js.map +0 -1
- package/src/lib/string/sort.js +0 -16
- package/src/lib/string/sort.js.map +0 -1
- package/src/lib/string/string.js +0 -113
- package/src/lib/string/string.js.map +0 -1
- package/src/lib/string/transform.js +0 -79
- package/src/lib/string/transform.js.map +0 -1
- package/src/lib/string/url.js +0 -279
- package/src/lib/string/url.js.map +0 -1
- package/src/lib/tree/index.js +0 -8
- package/src/lib/tree/index.js.map +0 -1
- package/src/lib/tree/tree.array.js +0 -21
- package/src/lib/tree/tree.array.js.map +0 -1
- package/src/lib/tree/tree.expand.js +0 -35
- package/src/lib/tree/tree.expand.js.map +0 -1
- package/src/lib/tree/tree.flatten.js +0 -47
- package/src/lib/tree/tree.flatten.js.map +0 -1
- package/src/lib/tree/tree.js +0 -5
- package/src/lib/tree/tree.js.map +0 -1
- package/src/lib/type.js +0 -48
- package/src/lib/type.js.map +0 -1
- package/src/lib/value/address.js +0 -65
- package/src/lib/value/address.js.map +0 -1
- package/src/lib/value/bound.js +0 -280
- package/src/lib/value/bound.js.map +0 -1
- package/src/lib/value/build.js +0 -16
- package/src/lib/value/build.js.map +0 -1
- package/src/lib/value/comparator.js +0 -60
- package/src/lib/value/comparator.js.map +0 -1
- package/src/lib/value/cron.js +0 -29
- package/src/lib/value/cron.js.map +0 -1
- package/src/lib/value/decision.js +0 -34
- package/src/lib/value/decision.js.map +0 -1
- package/src/lib/value/equal.js +0 -56
- package/src/lib/value/equal.js.map +0 -1
- package/src/lib/value/index.js +0 -24
- package/src/lib/value/index.js.map +0 -1
- package/src/lib/value/indexed.js +0 -420
- package/src/lib/value/indexed.js.map +0 -1
- package/src/lib/value/label.js +0 -3
- package/src/lib/value/label.js.map +0 -1
- package/src/lib/value/map.js +0 -107
- package/src/lib/value/map.js.map +0 -1
- package/src/lib/value/maybe.js +0 -140
- package/src/lib/value/maybe.js.map +0 -1
- package/src/lib/value/maybe.type.js +0 -3
- package/src/lib/value/maybe.type.js.map +0 -1
- package/src/lib/value/modifier.js +0 -109
- package/src/lib/value/modifier.js.map +0 -1
- package/src/lib/value/pixel.js +0 -3
- package/src/lib/value/pixel.js.map +0 -1
- package/src/lib/value/point.js +0 -336
- package/src/lib/value/point.js.map +0 -1
- package/src/lib/value/sync.js +0 -18
- package/src/lib/value/sync.js.map +0 -1
- package/src/lib/value/url.js +0 -22
- package/src/lib/value/url.js.map +0 -1
- package/src/lib/value/use.js +0 -78
- package/src/lib/value/use.js.map +0 -1
- package/src/lib/value/vector.js +0 -70
- package/src/lib/value/vector.js.map +0 -1
- package/src/lib/value/zoom.js +0 -3
- package/src/lib/value/zoom.js.map +0 -1
- package/test/CHANGELOG.md +0 -1310
- package/test/src/index.js +0 -5
- package/test/src/index.js.map +0 -1
- package/test/src/lib/index.js +0 -8
- package/test/src/lib/index.js.map +0 -1
- package/test/src/lib/jest.fail.js +0 -191
- package/test/src/lib/jest.fail.js.map +0 -1
- package/test/src/lib/jest.function.js +0 -22
- package/test/src/lib/jest.function.js.map +0 -1
- package/test/src/lib/jest.js +0 -112
- package/test/src/lib/jest.js.map +0 -1
- package/test/src/lib/jest.wrap.js +0 -69
- package/test/src/lib/jest.wrap.js.map +0 -1
package/src/index.js
DELETED
package/src/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/util/src/index.ts"],"names":[],"mappings":";;;AAAA,gDAAsB"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BooleanStringKeyArrayUtilityInstance = exports.BooleanKeyArrayUtilityInstance = exports.removeByKeyFromBooleanKeyArray = exports.removeFromBooleanKeyArray = exports.insertIntoBooleanKeyArray = exports.isTrueBooleanKeyArray = exports.isFalseBooleanKeyArray = exports.readBooleanKeySafetyWrap = void 0;
|
|
4
|
-
const model_1 = require("../model/model");
|
|
5
|
-
function readBooleanKeySafetyWrap(readKey) {
|
|
6
|
-
return (value) => {
|
|
7
|
-
const key = readKey(value);
|
|
8
|
-
if (key === '') {
|
|
9
|
-
throw new Error('Cannot use "empty" string for BooleanKey.');
|
|
10
|
-
}
|
|
11
|
-
else {
|
|
12
|
-
return key;
|
|
13
|
-
}
|
|
14
|
-
};
|
|
15
|
-
}
|
|
16
|
-
exports.readBooleanKeySafetyWrap = readBooleanKeySafetyWrap;
|
|
17
|
-
function isFalseBooleanKeyArray(value) {
|
|
18
|
-
return !value || value.length <= 0;
|
|
19
|
-
}
|
|
20
|
-
exports.isFalseBooleanKeyArray = isFalseBooleanKeyArray;
|
|
21
|
-
function isTrueBooleanKeyArray(value) {
|
|
22
|
-
return !isFalseBooleanKeyArray(value);
|
|
23
|
-
}
|
|
24
|
-
exports.isTrueBooleanKeyArray = isTrueBooleanKeyArray;
|
|
25
|
-
function insertIntoBooleanKeyArray(array, value, readKey) {
|
|
26
|
-
return array ? [...(0, model_1.removeModelsWithSameKey)(array, value, readBooleanKeySafetyWrap(readKey)), value] : [value];
|
|
27
|
-
}
|
|
28
|
-
exports.insertIntoBooleanKeyArray = insertIntoBooleanKeyArray;
|
|
29
|
-
function removeFromBooleanKeyArray(array, value, readKey) {
|
|
30
|
-
return array ? (0, model_1.removeModelsWithSameKey)(array, value, readBooleanKeySafetyWrap(readKey)) : array;
|
|
31
|
-
}
|
|
32
|
-
exports.removeFromBooleanKeyArray = removeFromBooleanKeyArray;
|
|
33
|
-
function removeByKeyFromBooleanKeyArray(array, key, readKey) {
|
|
34
|
-
return array ? (0, model_1.removeModelsWithKey)(array, key, readBooleanKeySafetyWrap(readKey)) : array;
|
|
35
|
-
}
|
|
36
|
-
exports.removeByKeyFromBooleanKeyArray = removeByKeyFromBooleanKeyArray;
|
|
37
|
-
class BooleanKeyArrayUtilityInstance {
|
|
38
|
-
constructor(readKey) {
|
|
39
|
-
this.readKey = readKey;
|
|
40
|
-
}
|
|
41
|
-
isFalse(value) {
|
|
42
|
-
return isFalseBooleanKeyArray(value);
|
|
43
|
-
}
|
|
44
|
-
isTrue(value) {
|
|
45
|
-
return isTrueBooleanKeyArray(value);
|
|
46
|
-
}
|
|
47
|
-
set(array, value, enable = true) {
|
|
48
|
-
let result;
|
|
49
|
-
if (enable) {
|
|
50
|
-
result = this.insert(array, value);
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
result = this.remove(array, value);
|
|
54
|
-
}
|
|
55
|
-
return result;
|
|
56
|
-
}
|
|
57
|
-
insert(array, value) {
|
|
58
|
-
return insertIntoBooleanKeyArray(array, value, this.readKey);
|
|
59
|
-
}
|
|
60
|
-
remove(array, value) {
|
|
61
|
-
return removeFromBooleanKeyArray(array, value, this.readKey);
|
|
62
|
-
}
|
|
63
|
-
removeByKey(array, key) {
|
|
64
|
-
return removeByKeyFromBooleanKeyArray(array, key, this.readKey);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
exports.BooleanKeyArrayUtilityInstance = BooleanKeyArrayUtilityInstance;
|
|
68
|
-
exports.BooleanStringKeyArrayUtilityInstance = new BooleanKeyArrayUtilityInstance((x) => (x ? x : undefined));
|
|
69
|
-
//# sourceMappingURL=array.boolean.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"array.boolean.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.boolean.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.arrayInputFactory = exports.arrayFactory = void 0;
|
|
4
|
-
const getter_1 = require("../getter/getter");
|
|
5
|
-
/**
|
|
6
|
-
* Creates a new ArrayFactory.
|
|
7
|
-
*
|
|
8
|
-
* @param factory
|
|
9
|
-
* @returns
|
|
10
|
-
*/
|
|
11
|
-
function arrayFactory(factory) {
|
|
12
|
-
return (count) => (0, getter_1.makeWithFactory)(factory, count);
|
|
13
|
-
}
|
|
14
|
-
exports.arrayFactory = arrayFactory;
|
|
15
|
-
/**
|
|
16
|
-
* Creates a ArrayInputFactory.
|
|
17
|
-
*
|
|
18
|
-
* @param factory
|
|
19
|
-
* @returns
|
|
20
|
-
*/
|
|
21
|
-
function arrayInputFactory(factory) {
|
|
22
|
-
return (input) => (0, getter_1.makeWithFactoryInput)(factory, input);
|
|
23
|
-
}
|
|
24
|
-
exports.arrayInputFactory = arrayInputFactory;
|
|
25
|
-
//# sourceMappingURL=array.factory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"array.factory.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.factory.ts"],"names":[],"mappings":";;;AAAA,6CAA8H;AAuB9H;;;;;GAKG;AACH,SAAgB,YAAY,CAAI,OAAyC;IACvE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAA,wBAAe,EAAC,OAAO,EAAE,KAAK,CAAC,CAAC;AACpD,CAAC;AAFD,oCAEC;AAED;;;;;GAKG;AACH,SAAgB,iBAAiB,CAAO,OAAuC;IAC7E,OAAO,CAAC,KAAU,EAAE,EAAE,CAAC,IAAA,6BAAoB,EAAO,OAAO,EAAE,KAAK,CAAC,CAAC;AACpE,CAAC;AAFD,8CAEC"}
|
|
@@ -1,107 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.filterAndMapFunction = exports.applyBestFit = exports.makeBestFit = exports.filterValuesByDistanceNoOrder = exports.filterValuesByDistance = void 0;
|
|
4
|
-
const array_1 = require("./array");
|
|
5
|
-
const array_index_1 = require("./array.index");
|
|
6
|
-
const iterable_1 = require("../iterable/iterable");
|
|
7
|
-
/**
|
|
8
|
-
* Filters the input values by distance. The original order is retained.
|
|
9
|
-
*
|
|
10
|
-
* If order is irrelevant, use filterValuesByDistanceNoOrder().
|
|
11
|
-
*/
|
|
12
|
-
function filterValuesByDistance(input, minDistance, getValue) {
|
|
13
|
-
// TODO: Implement if needed.
|
|
14
|
-
throw new Error('Incomplete implementation!');
|
|
15
|
-
}
|
|
16
|
-
exports.filterValuesByDistance = filterValuesByDistance;
|
|
17
|
-
/**
|
|
18
|
-
* Filters the input values by an arbitrary "distance"/difference from eachother and returns the values sorted by their determined distance.
|
|
19
|
-
*
|
|
20
|
-
* This is useful in cases where many values are too "close" to eachother (Generally items that share the same time, or within seconds of eachother), and
|
|
21
|
-
* we are only interested in seeing one of those items.
|
|
22
|
-
*/
|
|
23
|
-
function filterValuesByDistanceNoOrder(input, minDistance, getValue) {
|
|
24
|
-
const values = input.map((x) => [x, getValue(x)]).filter((x) => x[1] != null);
|
|
25
|
-
return _filterValuesByDistance(values, minDistance, (x) => x[0]);
|
|
26
|
-
}
|
|
27
|
-
exports.filterValuesByDistanceNoOrder = filterValuesByDistanceNoOrder;
|
|
28
|
-
// TODO: Can add a "mergeValuesByDistance" too to merge together values that are too close together.
|
|
29
|
-
function _filterValuesByDistance(values, minDistance, toOutputValue) {
|
|
30
|
-
// Exit if nothing to do.
|
|
31
|
-
switch (values.length) {
|
|
32
|
-
case 0:
|
|
33
|
-
return [];
|
|
34
|
-
case 1:
|
|
35
|
-
return [toOutputValue(values[0])];
|
|
36
|
-
}
|
|
37
|
-
// Sort values
|
|
38
|
-
values.sort((a, b) => a[1] - b[1]);
|
|
39
|
-
let prev = values[0];
|
|
40
|
-
const filtered = [toOutputValue(prev)];
|
|
41
|
-
for (let i = 1, n = values.length; i < n; i += 1) {
|
|
42
|
-
const current = values[i];
|
|
43
|
-
const distance = Math.abs(current[1] - prev[1]);
|
|
44
|
-
if (distance > minDistance) {
|
|
45
|
-
filtered.push(toOutputValue(current));
|
|
46
|
-
prev = current;
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
return filtered;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Same as applyBestFit, but returns a new array, rather than modifying the existing array.
|
|
53
|
-
*
|
|
54
|
-
* @param input
|
|
55
|
-
* @param filter
|
|
56
|
-
* @param updateNonBestFit
|
|
57
|
-
*/
|
|
58
|
-
function makeBestFit(input, filter, compare, updateNonBestFit) {
|
|
59
|
-
return applyBestFit((0, array_1.copyArray)(input), filter, compare, updateNonBestFit);
|
|
60
|
-
}
|
|
61
|
-
exports.makeBestFit = makeBestFit;
|
|
62
|
-
/**
|
|
63
|
-
* Used for updating an array so that a single element becomes the "best fit" in whatever context is provided.
|
|
64
|
-
*
|
|
65
|
-
* For instance, if two items are selected but only one can be selected by design, this function can be used to
|
|
66
|
-
* pick the best fit, and update the input array.
|
|
67
|
-
*
|
|
68
|
-
* @param input
|
|
69
|
-
* @param filter
|
|
70
|
-
* @param updateNonBestFit
|
|
71
|
-
* @returns
|
|
72
|
-
*/
|
|
73
|
-
function applyBestFit(input, filter, compare, updateNonBestFit) {
|
|
74
|
-
const matchIndexSet = (0, array_index_1.findToIndexSet)(input, filter);
|
|
75
|
-
if (matchIndexSet.length > 1) {
|
|
76
|
-
const expansion = (0, array_index_1.expandIndexSet)(input, matchIndexSet);
|
|
77
|
-
const bestPair = (0, array_index_1.findBestIndexSetPair)(expansion, compare);
|
|
78
|
-
expansion.forEach(({ i, item }) => {
|
|
79
|
-
if (i !== bestPair.i) {
|
|
80
|
-
input[i] = updateNonBestFit(item); // Update value on input.
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
return input;
|
|
85
|
-
}
|
|
86
|
-
exports.applyBestFit = applyBestFit;
|
|
87
|
-
/**
|
|
88
|
-
* Filters the input values and maps all correct values to a new value.
|
|
89
|
-
*
|
|
90
|
-
* @param values
|
|
91
|
-
* @param decisionFunction
|
|
92
|
-
* @param mapFunction
|
|
93
|
-
* @returns
|
|
94
|
-
*/
|
|
95
|
-
function filterAndMapFunction(decisionFunction, mapFunction) {
|
|
96
|
-
return (values) => {
|
|
97
|
-
const result = [];
|
|
98
|
-
(0, iterable_1.forEachInIterable)(values, (x) => {
|
|
99
|
-
if (decisionFunction(x)) {
|
|
100
|
-
result.push(mapFunction(x));
|
|
101
|
-
}
|
|
102
|
-
});
|
|
103
|
-
return result;
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
|
-
exports.filterAndMapFunction = filterAndMapFunction;
|
|
107
|
-
//# sourceMappingURL=array.filter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"array.filter.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.arrayDecision = exports.arrayDecisionFunction = void 0;
|
|
4
|
-
const function_boolean_1 = require("../function/function.boolean");
|
|
5
|
-
/**
|
|
6
|
-
* Creates a ArrayDecisionFunction based on the input decision and mode.
|
|
7
|
-
*
|
|
8
|
-
* @param decision
|
|
9
|
-
* @param mode
|
|
10
|
-
* @returns
|
|
11
|
-
*/
|
|
12
|
-
function arrayDecisionFunction(decision, mode) {
|
|
13
|
-
const findFn = mode === 'all' ? (0, function_boolean_1.invertBooleanReturnFunction)(decision) : decision;
|
|
14
|
-
return (0, function_boolean_1.invertBooleanReturnFunction)((values) => values.findIndex(findFn) !== -1, mode === 'all');
|
|
15
|
-
}
|
|
16
|
-
exports.arrayDecisionFunction = arrayDecisionFunction;
|
|
17
|
-
/**
|
|
18
|
-
* Returns true based on the input values and find decision.
|
|
19
|
-
*/
|
|
20
|
-
function arrayDecision(values, decision, mode) {
|
|
21
|
-
return arrayDecisionFunction(decision, mode)(values);
|
|
22
|
-
}
|
|
23
|
-
exports.arrayDecision = arrayDecision;
|
|
24
|
-
//# sourceMappingURL=array.find.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"array.find.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.find.ts"],"names":[],"mappings":";;;AAAA,mEAA2E;AAa3E;;;;;;GAMG;AACH,SAAgB,qBAAqB,CAAI,QAAsC,EAAE,IAAqB;IACpG,MAAM,MAAM,GAAiC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAA,8CAA2B,EAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC/G,OAAO,IAAA,8CAA2B,EAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,KAAK,KAAK,CAAC,CAAC;AAClG,CAAC;AAHD,sDAGC;AAED;;GAEG;AACH,SAAgB,aAAa,CAAI,MAAW,EAAE,QAAsC,EAAE,IAAqB;IACzG,OAAO,qBAAqB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AACvD,CAAC;AAFD,sCAEC"}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.sliceIndexRangeFunction = exports.findBestIndexSetPair = exports.findBest = exports.expandIndexSet = exports.findToIndexSet = void 0;
|
|
4
|
-
const indexed_1 = require("../value/indexed");
|
|
5
|
-
/**
|
|
6
|
-
* Runs a filter on an array and returns an IndexSet for values that match.
|
|
7
|
-
*
|
|
8
|
-
* @param input
|
|
9
|
-
* @param filter
|
|
10
|
-
* @returns
|
|
11
|
-
*/
|
|
12
|
-
function findToIndexSet(input, filter) {
|
|
13
|
-
const filterIndexes = [];
|
|
14
|
-
input.forEach((x, i) => {
|
|
15
|
-
if (filter(x)) {
|
|
16
|
-
filterIndexes.push(i);
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
return filterIndexes;
|
|
20
|
-
}
|
|
21
|
-
exports.findToIndexSet = findToIndexSet;
|
|
22
|
-
function expandIndexSet(input, indexSet) {
|
|
23
|
-
return indexSet.map((i) => ({ i, item: input[i] }));
|
|
24
|
-
}
|
|
25
|
-
exports.expandIndexSet = expandIndexSet;
|
|
26
|
-
/**
|
|
27
|
-
* Finds the best item in the input array using the compare function, and returns an IndexSetPair value.
|
|
28
|
-
*
|
|
29
|
-
* @param input
|
|
30
|
-
* @param compare
|
|
31
|
-
*/
|
|
32
|
-
function findBest(input, compare) {
|
|
33
|
-
let bestIndex = 0;
|
|
34
|
-
let best = input[0];
|
|
35
|
-
for (let i = 1; i < input.length; i += 1) {
|
|
36
|
-
const next = input[i];
|
|
37
|
-
if (next != null && compare(best, next) < 0) {
|
|
38
|
-
bestIndex = i;
|
|
39
|
-
best = next;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return {
|
|
43
|
-
i: bestIndex,
|
|
44
|
-
item: best
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
exports.findBest = findBest;
|
|
48
|
-
/**
|
|
49
|
-
* Finds the best item in the input IndexSetPairSet, and returns it.
|
|
50
|
-
*
|
|
51
|
-
* @param input
|
|
52
|
-
* @param compare
|
|
53
|
-
* @returns
|
|
54
|
-
*/
|
|
55
|
-
function findBestIndexSetPair(input, compare) {
|
|
56
|
-
let best = input[0];
|
|
57
|
-
for (let i = 1; i < input.length; i += 1) {
|
|
58
|
-
const next = input[i];
|
|
59
|
-
if (best.item == null || (next.item != null && compare(best.item, next.item) < 0)) {
|
|
60
|
-
best = next;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
return best;
|
|
64
|
-
}
|
|
65
|
-
exports.findBestIndexSetPair = findBestIndexSetPair;
|
|
66
|
-
function sliceIndexRangeFunction(inputRange) {
|
|
67
|
-
const range = (0, indexed_1.indexRange)(inputRange);
|
|
68
|
-
return (input) => input.slice(range.minIndex, range.maxIndex);
|
|
69
|
-
}
|
|
70
|
-
exports.sliceIndexRangeFunction = sliceIndexRangeFunction;
|
|
71
|
-
//# sourceMappingURL=array.index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"array.index.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.index.ts"],"names":[],"mappings":";;;AAAA,8CAAsF;AAgBtF;;;;;;GAMG;AACH,SAAgB,cAAc,CAAI,KAAU,EAAE,MAA6B;IACzE,MAAM,aAAa,GAAkB,EAAE,CAAC;IAExC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACrB,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE;YACb,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACvB;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,aAAa,CAAC;AACvB,CAAC;AAVD,wCAUC;AAED,SAAgB,cAAc,CAAI,KAAU,EAAE,QAAkB;IAC9D,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACtD,CAAC;AAFD,wCAEC;AAED;;;;;GAKG;AACH,SAAgB,QAAQ,CAAI,KAAU,EAAE,OAA+B;IACrE,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;QACxC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEtB,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE;YAC3C,SAAS,GAAG,CAAC,CAAC;YACd,IAAI,GAAG,IAAI,CAAC;SACb;KACF;IAED,OAAO;QACL,CAAC,EAAE,SAAS;QACZ,IAAI,EAAE,IAAI;KACX,CAAC;AACJ,CAAC;AAjBD,4BAiBC;AAED;;;;;;GAMG;AACH,SAAgB,oBAAoB,CAAI,KAAyB,EAAE,OAA+B;IAChG,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;QACxC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QAEtB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;YACjF,IAAI,GAAG,IAAI,CAAC;SACb;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAZD,oDAYC;AAOD,SAAgB,uBAAuB,CAAI,UAA2B;IACpE,MAAM,KAAK,GAAG,IAAA,oBAAU,EAAC,UAAU,CAAC,CAAC;IACrC,OAAO,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;AACrE,CAAC;AAHD,0DAGC"}
|
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.rangedIndexedValuesArrayAccessorInfoFactory = exports.indexedValuesArrayAccessorFactory = exports.rangedIndexedValuesArrayAccessorFactory = exports.getArrayNextIndex = exports.findNext = exports.indexRangeForArray = void 0;
|
|
4
|
-
const indexed_1 = require("../value/indexed");
|
|
5
|
-
/**
|
|
6
|
-
* Creates an IndexRange for the input array.
|
|
7
|
-
*
|
|
8
|
-
* @param array
|
|
9
|
-
* @returns
|
|
10
|
-
*/
|
|
11
|
-
function indexRangeForArray(array) {
|
|
12
|
-
return { minIndex: 0, maxIndex: array.length };
|
|
13
|
-
}
|
|
14
|
-
exports.indexRangeForArray = indexRangeForArray;
|
|
15
|
-
/**
|
|
16
|
-
* Finds a value, then returns the next value, if applicable.
|
|
17
|
-
*
|
|
18
|
-
* @param array array to look in
|
|
19
|
-
* @param find find function
|
|
20
|
-
* @param wrapAround Whether or not to loop around to the front of the array if the value fonud is at the last index.
|
|
21
|
-
* @param steps
|
|
22
|
-
*/
|
|
23
|
-
function findNext(array, find, wrapAround = false, steps) {
|
|
24
|
-
let result;
|
|
25
|
-
if (array) {
|
|
26
|
-
const index = array.findIndex(find);
|
|
27
|
-
const nextIndex = getArrayNextIndex(array, index, wrapAround, steps);
|
|
28
|
-
if (nextIndex != null) {
|
|
29
|
-
result = array[nextIndex];
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
return result;
|
|
33
|
-
}
|
|
34
|
-
exports.findNext = findNext;
|
|
35
|
-
/**
|
|
36
|
-
* Returns the next index of an element in the input array based in the input index.
|
|
37
|
-
*
|
|
38
|
-
* Indexes less than 0 are considered to not exist.
|
|
39
|
-
*
|
|
40
|
-
* When wrapAround is true, indexes that are larger than the entire array will be used to find an index that is that many steps into the array.
|
|
41
|
-
*
|
|
42
|
-
* For instance, an index of 5 on an array of length 3 will return the index 1.
|
|
43
|
-
*
|
|
44
|
-
* @param array
|
|
45
|
-
* @param index
|
|
46
|
-
* @param wrapAround
|
|
47
|
-
* @param steps
|
|
48
|
-
*/
|
|
49
|
-
function getArrayNextIndex(array, index, wrapAround = false, steps = 1) {
|
|
50
|
-
let nextIndex;
|
|
51
|
-
const arrayLength = array.length;
|
|
52
|
-
if (index >= 0 && index <= arrayLength - 1) {
|
|
53
|
-
nextIndex = (0, indexed_1.stepsFromIndex)(indexRangeForArray(array), index, steps, wrapAround);
|
|
54
|
-
}
|
|
55
|
-
return nextIndex;
|
|
56
|
-
}
|
|
57
|
-
exports.getArrayNextIndex = getArrayNextIndex;
|
|
58
|
-
function rangedIndexedValuesArrayAccessorFactory(readIndexRange) {
|
|
59
|
-
const readInfoFactory = rangedIndexedValuesArrayAccessorInfoFactory({
|
|
60
|
-
readIndexRange
|
|
61
|
-
});
|
|
62
|
-
return (values) => {
|
|
63
|
-
const readInfo = readInfoFactory(values);
|
|
64
|
-
return (index) => {
|
|
65
|
-
const result = readInfo(index);
|
|
66
|
-
return result.match; // only return matches
|
|
67
|
-
};
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
exports.rangedIndexedValuesArrayAccessorFactory = rangedIndexedValuesArrayAccessorFactory;
|
|
71
|
-
function indexedValuesArrayAccessorFactory(readIndexRange) {
|
|
72
|
-
const readInfoFactory = rangedIndexedValuesArrayAccessorInfoFactory({
|
|
73
|
-
readIndexRange
|
|
74
|
-
});
|
|
75
|
-
return (values) => {
|
|
76
|
-
if (values.length === 0) {
|
|
77
|
-
throw new Error('Requires atleast one value to be defined.');
|
|
78
|
-
}
|
|
79
|
-
const readInfo = readInfoFactory(values);
|
|
80
|
-
return (index) => {
|
|
81
|
-
var _a, _b;
|
|
82
|
-
const result = readInfo(index);
|
|
83
|
-
// Return the exact match, otherwise return the previous value, otherwise return the next/final value.
|
|
84
|
-
return (_b = (_a = result.match) !== null && _a !== void 0 ? _a : result.prev) !== null && _b !== void 0 ? _b : result.next;
|
|
85
|
-
};
|
|
86
|
-
};
|
|
87
|
-
}
|
|
88
|
-
exports.indexedValuesArrayAccessorFactory = indexedValuesArrayAccessorFactory;
|
|
89
|
-
function rangedIndexedValuesArrayAccessorInfoFactory(config) {
|
|
90
|
-
const pairFactory = (0, indexed_1.indexRangeReaderPairFactory)(config.readIndexRange);
|
|
91
|
-
return (values) => {
|
|
92
|
-
if (values.length === 0) {
|
|
93
|
-
return () => ({}); // no pairs to match on
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
// pairs sorted in ascending order
|
|
97
|
-
const pairs = values.map(pairFactory).sort((0, indexed_1.sortByIndexRangeAscendingCompareFunction)((x) => x.range));
|
|
98
|
-
return (index) => {
|
|
99
|
-
var _a, _b, _c, _d, _e;
|
|
100
|
-
// find the first item that fits the
|
|
101
|
-
let matchIndex = -1;
|
|
102
|
-
let i;
|
|
103
|
-
for (i = 0; i < pairs.length; i += 1) {
|
|
104
|
-
const comparison = pairs[i];
|
|
105
|
-
if (comparison.range.minIndex <= index) {
|
|
106
|
-
if (comparison.range.maxIndex > index) {
|
|
107
|
-
matchIndex = i;
|
|
108
|
-
break;
|
|
109
|
-
}
|
|
110
|
-
// continue otherwise.
|
|
111
|
-
}
|
|
112
|
-
else {
|
|
113
|
-
break; // outside the min index, is not within these values at all
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
let match;
|
|
117
|
-
let prev;
|
|
118
|
-
let next;
|
|
119
|
-
if (matchIndex === -1) {
|
|
120
|
-
// no match
|
|
121
|
-
match = undefined;
|
|
122
|
-
// use i otherwise
|
|
123
|
-
prev = (_a = pairs[i - 1]) === null || _a === void 0 ? void 0 : _a.value;
|
|
124
|
-
next = (_b = pairs[i]) === null || _b === void 0 ? void 0 : _b.value;
|
|
125
|
-
}
|
|
126
|
-
else {
|
|
127
|
-
match = (_c = pairs[matchIndex]) === null || _c === void 0 ? void 0 : _c.value;
|
|
128
|
-
prev = (_d = pairs[matchIndex - 1]) === null || _d === void 0 ? void 0 : _d.value;
|
|
129
|
-
next = (_e = pairs[matchIndex + 1]) === null || _e === void 0 ? void 0 : _e.value;
|
|
130
|
-
}
|
|
131
|
-
const info = {
|
|
132
|
-
prev,
|
|
133
|
-
match,
|
|
134
|
-
next
|
|
135
|
-
};
|
|
136
|
-
return info;
|
|
137
|
-
};
|
|
138
|
-
}
|
|
139
|
-
};
|
|
140
|
-
}
|
|
141
|
-
exports.rangedIndexedValuesArrayAccessorInfoFactory = rangedIndexedValuesArrayAccessorInfoFactory;
|
|
142
|
-
//# sourceMappingURL=array.indexed.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"array.indexed.js","sourceRoot":"","sources":["../../../../../../packages/util/src/lib/array/array.indexed.ts"],"names":[],"mappings":"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"}
|